/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.start{inset-inline-start:var(--spacing)}.table{display:table}.resize{resize:both}}@font-face{font-family:Diary Script;src:url(/DancingScript.ttf)format("truetype");font-display:swap}:root{--ink:#263331;--faded-ink:#55615d;--paper:#e8dec4;--paper-light:#f1e9d3;--leather:#371f17;--leather-dark:#1b0d09;--gold:#aa8a4c}*{box-sizing:border-box}html,body{min-height:100%}body{color:var(--ink);background:#11100e;margin:0;font-family:Georgia,Times New Roman,serif;overflow-x:hidden}button,input,textarea{font:inherit}button{-webkit-tap-highlight-color:transparent}.scene{isolation:isolate;background:radial-gradient(circle at 50% 32%,#b292582e,#0000 31%),linear-gradient(150deg,#1c1a16 0%,#0c0b0a 48%,#171410 100%);place-items:center;min-height:100svh;padding:42px 22px 62px;display:grid;position:relative;overflow:hidden}.scene:before{content:"";z-index:-2;opacity:.22;background-image:repeating-linear-gradient(87deg,#0000 0 13px,#ffffff06 14px 15px),repeating-linear-gradient(4deg,#0000 0 19px,#00000029 20px 22px);position:absolute;inset:0}.dust{z-index:-1;pointer-events:none;opacity:.22;background-image:radial-gradient(circle at 18% 22%,#c3a76c 0 1px,#0000 1.4px),radial-gradient(circle at 72% 40%,#b39259 0 1px,#0000 1.5px),radial-gradient(circle at 48% 81%,#d0b77b 0 1px,#0000 1.5px);background-size:190px 170px,270px 230px,230px 210px;animation:20s linear infinite drift;position:fixed;inset:0}@keyframes drift{to{transform:translate(18px,-24px)}}.book{perspective:2200px;filter:drop-shadow(0 32px 38px #0009);width:min(91vw,760px);height:min(78svh,690px);min-height:540px;position:relative}.page-stack,.back-cover,.diary-page,.front-cover{border-radius:8px 18px 18px 8px;position:absolute;inset:0}.back-cover{background:radial-gradient(ellipse at 16% 28%, #ffffff0f, transparent 22%), repeating-linear-gradient(104deg, transparent 0 6px, #0000001f 7px 9px), var(--leather-dark);border:2px solid #160b08;transform:translate(11px,12px)}.page-stack{background:repeating-linear-gradient(#ded1b1 0 2px,#b8aa8c 3px,#eadfc6 4px 6px);border:1px solid #92846a;transform:translate(7px,8px)}.diary-page{z-index:2;background:radial-gradient(ellipse at 75% 13%, #ffffff94, transparent 36%), radial-gradient(ellipse at 5% 92%, #664c2517, transparent 32%), repeating-linear-gradient(94deg, transparent 0 25px, #47301405 26px 27px), var(--paper);border:1px solid #9e8e6d;flex-direction:column;padding:clamp(24px,5vw,52px) clamp(28px,7vw,76px) 28px;display:flex;overflow:hidden;box-shadow:inset 15px 0 28px #3b27111f,inset -4px 0 7px #ffffff73}.diary-page:after{content:"";pointer-events:none;opacity:.24;mix-blend-mode:multiply;background-image:radial-gradient(circle at 23% 71%,#462a0c40 0 1px,#0000 2px),radial-gradient(circle at 82% 19%,#462a0c33 0 1px,#0000 2px);background-size:120px 100px,150px 130px;position:absolute;inset:0}.page-header{border-bottom:1px solid #3430282b;justify-content:space-between;align-items:start;gap:20px;min-height:74px;display:flex}.bookplate{color:#51493d;text-align:left;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;gap:3px;padding:0;display:grid}.bookplate span:not(.bookplate-rule){font-size:.72rem;font-weight:700}.bookplate small{letter-spacing:.09em;opacity:.65;font-size:.56rem}.bookplate-rule{opacity:.42;background:currentColor;width:112px;height:1px}.date{color:#6c6252;white-space:nowrap;margin:2px 0 0;font-size:.76rem;font-style:italic}.paper-stage{flex:1;min-height:0;margin-top:20px;position:relative;overflow:hidden}.ruled-lines{pointer-events:none;opacity:.16;background-image:repeating-linear-gradient(#0000 0 43px,#766c58 44px,#0000 45px);position:absolute;inset:0}.handwriting-input,.ink-canvas,.user-ink,.diary-reply{z-index:1;color:var(--ink);font-family:Diary Script,cursive;position:relative}.handwriting-input{resize:none;caret-color:#3a2724;background:0 0;border:0;outline:0;width:100%;height:calc(100% - 42px);padding:0 4px;font-size:clamp(1.85rem,4vw,2.65rem);line-height:45px}.handwriting-input::placeholder{color:#3039355c}.ink-canvas{touch-action:none;cursor:crosshair;width:100%;height:calc(100% - 40px);display:block}.rest-hint{z-index:2;color:#736b5e;letter-spacing:.03em;opacity:0;margin:0;font-size:.69rem;font-style:italic;animation:.8s 1.2s forwards revealHint;position:absolute;bottom:7px;right:6px}@keyframes revealHint{to{opacity:.65}}.user-ink,.diary-reply{margin:0;padding:4px;font-size:clamp(1.95rem,4.3vw,2.8rem);line-height:1.45}.dissolving{animation:.92s ease-in forwards drinkInk}@keyframes drinkInk{0%{opacity:1;filter:blur();transform:translateY(0)}50%{opacity:.38;filter:blur(.5px)}to{opacity:0;filter:blur(3px);transform:translateY(3px)}}.thinking-mark{justify-content:center;align-items:center;gap:9px;height:100%;display:flex}.thinking-mark i{opacity:.18;background:#47443d;border-radius:50%;width:5px;height:5px;animation:1.4s ease-in-out infinite think}.thinking-mark i:nth-child(2){animation-delay:.18s}.thinking-mark i:nth-child(3){animation-delay:.36s}@keyframes think{50%{opacity:.72;transform:translateY(-3px)}}.reply-wrap{flex-direction:column;height:100%;display:flex}.diary-reply{color:#243333;text-shadow:.2px .2px #19232280}.pen-point{background:#2a3331;border-radius:50%;width:3px;height:26px;margin-left:2px;animation:.5s ease-in-out infinite alternate nib;display:inline-block;transform:rotate(28deg)translateY(5px)}@keyframes nib{to{opacity:.48;transform:rotate(20deg)translate(2px,2px)}}.turn-page{color:#5b554a;text-transform:uppercase;letter-spacing:.17em;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #2d302b6b;margin:auto auto 8px;font-size:.72rem}.page-tools{border-top:1px solid #34302821;justify-content:space-between;align-items:end;gap:20px;min-height:34px;display:flex}.mode-switch{padding-top:10px;display:flex}.mode-switch button,.close-book{color:#746b5d;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;padding:4px 8px;font-size:.62rem}.mode-switch button.active{color:#373b36;border-bottom:1px solid #4e5048}.close-book{padding-right:0}.front-cover{z-index:5;transform-origin:0;transform-style:preserve-3d;background:radial-gradient(ellipse at 26% 15%, #ffffff13, transparent 25%), radial-gradient(ellipse at 72% 72%, #00000038, transparent 38%), repeating-linear-gradient(108deg, transparent 0 5px, #0f050221 6px 8px), var(--leather);backface-visibility:hidden;border:3px solid #170b08;transition:transform 1.55s cubic-bezier(.2,.74,.16,1);box-shadow:inset 0 0 0 5px #4b2b20,inset 0 0 0 7px #21100c,inset 0 0 58px #00000080,7px 10px 20px #0000007a}.book.is-open .front-cover{pointer-events:none;transform:rotateY(-172deg)}.cover-inner{border:1px solid #b591506b;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:18px}.cover-border{border:1px solid #86653566;position:absolute;inset:8px;box-shadow:inset 0 0 18px #00000059}.corner{border-color:#af894773;width:47px;height:47px;position:absolute}.corner-tl{border-top:2px solid;border-left:2px solid;top:20px;left:20px}.corner-tr{border-top:2px solid;border-right:2px solid;top:20px;right:20px}.corner-bl{border-bottom:2px solid;border-left:2px solid;bottom:20px;left:20px}.corner-br{border-bottom:2px solid;border-right:2px solid;bottom:20px;right:20px}.cover-title{z-index:1;text-align:center;color:#b79a62;letter-spacing:.48em;text-indent:.48em;text-shadow:0 1px 1px #150a07,0 -1px #ffe8b226;font-size:clamp(.65rem,1.8vw,.86rem);line-height:1.8;display:grid;position:relative}.cover-title span:nth-child(2){letter-spacing:.33em;font-size:.7em}.cover-mark{z-index:1;aspect-ratio:1;color:#ad8744a3;letter-spacing:.14em;text-indent:.14em;width:clamp(110px,24vw,156px);box-shadow:inset 0 0 0 5px var(--leather), inset 0 0 0 6px #b18b4a54;border:1px solid #b18b4a85;border-radius:50%;place-items:center;margin:24px 0 30px;font-size:clamp(1.65rem,5vw,2.6rem);display:grid;position:relative}.name-form{z-index:2;text-align:center;gap:10px;width:min(78%,315px);display:grid;position:relative}.name-form label{color:#cbb17dab;text-transform:uppercase;letter-spacing:.22em;font-size:.61rem}.name-form input{color:#d8c18f;text-align:center;background:0 0;border:0;border-bottom:1px solid #b9965b85;outline:0;width:100%;padding:8px;font-family:Diary Script,cursive;font-size:1.75rem}.name-form input::placeholder{color:#d5b87e47}.name-form button{color:#c4a96f;text-transform:uppercase;letter-spacing:.15em;cursor:pointer;background:#16080547;border:1px solid #b38e4c73;border-radius:2px;justify-self:center;margin-top:3px;padding:9px 15px;font-size:.62rem}.name-form button:hover,.name-form button:focus-visible{background:#b4914e1a}.disclaimer{color:#ded2b96b;letter-spacing:.08em;text-align:center;width:max-content;max-width:90vw;margin:0;font-size:.62rem;position:fixed;bottom:18px;left:50%;transform:translate(-50%)}.memory-overlay{z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#070605c9;place-items:center;padding:25px;display:grid;position:fixed;inset:0}.memory-sheet{background:linear-gradient(90deg, #5a3f1a1a, transparent 8% 92%, #5a3f1a1a), var(--paper-light);border:1px solid #9f8f6e;width:min(640px,94vw);max-height:min(760px,88svh);padding:42px clamp(28px,7vw,60px);position:relative;overflow:hidden;box-shadow:0 30px 80px #0009}.memory-close{color:#4e493f;cursor:pointer;background:0 0;border:0;font-size:1.8rem;position:absolute;top:14px;right:20px}.memory-kicker{color:#726858;letter-spacing:.2em;text-transform:uppercase;margin:0 0 5px;font-size:.62rem}.memory-sheet h2{margin:0 0 26px;font-family:Diary Script,cursive;font-size:2.6rem;font-weight:500}.memory-list{max-height:58svh;padding-right:10px;overflow-y:auto}.memory-list article{border-top:1px solid #514a3a38;padding:19px 0}.memory-list time{color:#756b5c;font-size:.66rem;font-style:italic}.memory-user,.memory-reply{margin:8px 0}.memory-user{color:#595348;font-size:.88rem}.memory-reply{color:#263331;font-family:Diary Script,cursive;font-size:1.55rem;line-height:1.25}.empty-memory{color:#696052;font-style:italic}@media (width<=650px){.scene{padding:20px 12px 54px}.book{width:94vw;height:78svh;min-height:520px}.diary-page{padding:28px 24px 20px 30px}.date{font-size:.64rem}.cover-inner{inset:12px}.cover-mark{margin:16px 0 24px}.front-cover{transition-duration:1.1s}.book.is-open .front-cover{transform:rotateY(-178deg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
