:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#252a26;font-synthesis:none;text-rendering:optimizelegibility;--paper:#f4f0e7;--sheet:#fffdf7;--ink:#252a26;--subtle:#6e756e;--line:#ddd7ca;--accent:#315c48;--accent-ink:#fff;--wash:#e7eee8;--danger:#9b3f36;--sticker-outline:#3b374b;--sticker-pink:#ff627c;--sticker-heading:#a92f4c;--sticker-coral:#ff927d;--sticker-mint:#a8e6d7;--sticker-lilac:#c9acf1;--sticker-yellow:#f5d270;--sticker-purple-paper:#eee5ff;--sticker-mint-paper:#dff5ed;background:#f4f0e7;font-family:Inter,Noto Sans JP,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:var(--paper);min-width:320px;min-height:100vh;color:var(--ink);margin:0}button,input,textarea{font:inherit}input,select,textarea{font-size:max(1em,16px)}button{color:inherit}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 45%, transparent);outline-offset:3px}h1,h2,h3,p{margin-top:0}h1,h2,.editor-date{font-family:Yu Mincho,Hiragino Mincho ProN,Georgia,serif;font-weight:400}h1{letter-spacing:.015em;font-size:clamp(2rem,4vw,3.15rem);line-height:1.2}h2{font-size:1.35rem}.button,.text-button,.nav-button,.icon-button,.calendar-day,.memory-row,.bottom-nav button{cursor:pointer;border:0}.button{border-radius:9px;justify-content:center;align-items:center;min-height:44px;padding:.72rem 1.05rem;transition:transform .16s,background .16s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{cursor:wait;opacity:.55}.button-primary{background:var(--accent);color:var(--accent-ink)}.button-secondary{border:1px solid var(--line);background:0 0}.button-apple{color:#fff;background:#000;gap:.55rem}.apple-mark{color:inherit;font-family:-apple-system,BlinkMacSystemFont,sans-serif;font-size:1.2rem;line-height:1}.auth-provider-secondary{margin-top:.7rem}.button-danger{background:var(--danger);color:#fff}.button-danger-secondary{border:1px solid var(--danger);color:var(--danger);background:0 0}.button-full{width:100%}.text-button{color:var(--accent);text-underline-offset:3px;background:0 0;padding:.3rem;text-decoration:underline}.danger-text{color:var(--danger)}.brand-logo{width:210px;max-width:100%;height:auto;display:block}.eyebrow{color:var(--accent);letter-spacing:.17em;margin-bottom:.55rem;font-size:.76rem;font-weight:650}.subtle{color:var(--subtle)}.notice{border:1px solid color-mix(in srgb, var(--accent) 35%, var(--line));background:var(--wash);border-radius:9px;padding:.85rem 1rem;line-height:1.5}.center-message{min-height:60vh;color:var(--subtle);place-items:center;display:grid}.auth-shell{min-height:100vh;padding:max(4rem, calc(env(safe-area-inset-top) + 2rem)) max(1.25rem, env(safe-area-inset-right)) max(4rem, calc(env(safe-area-inset-bottom) + 2rem)) max(1.25rem, env(safe-area-inset-left));background-color:#fff4f7;background-image:radial-gradient(circle, color-mix(in srgb, var(--sticker-pink) 27%, transparent) 1.35px, transparent 1.45px);background-size:24px 24px;place-items:center;display:grid;position:relative}.auth-card{border:3px solid var(--sticker-outline);background:var(--sheet);width:min(100%,720px);box-shadow:.7rem .7rem 0 var(--sticker-mint);border-radius:0;margin:0 .7rem .7rem 0;padding:clamp(2rem,6vw,3.5rem);position:relative}.auth-card:before{content:"";background:color-mix(in srgb, var(--sticker-lilac) 88%, transparent);clip-path:polygon(2% 4%,98% 1%,100% 91%,3% 98%,0 53%);width:7.5rem;height:1.7rem;position:absolute;top:-.9rem;left:50%;transform:translate(-50%)rotate(2deg)}.auth-card>.brand-logo{width:245px;margin-bottom:2.5rem}.auth-brand{align-items:center;gap:.65rem;margin-bottom:2.5rem;display:flex}.auth-card .auth-brand .brand-logo{width:min(245px,100% - 72px)}.auth-mascot{object-fit:contain;width:62px;height:62px}.auth-card h1{color:var(--sticker-heading);font-size:2.1rem}.auth-intro{color:var(--subtle);text-align:center;white-space:pre-line;margin-bottom:2rem;line-height:1.8}.auth-guardian-note{color:var(--subtle);margin:0 0 1.25rem;font-size:.82rem;line-height:1.6}@media (width>=760px){html[lang=ja] .auth-card h1{white-space:nowrap}}.divider{color:var(--subtle);align-items:center;gap:.8rem;margin:1.3rem 0;font-size:.75rem;display:flex}.divider:before,.divider:after{content:"";background:var(--line);flex:1;height:1px}.auth-form{gap:1rem;display:grid}.auth-form label{color:var(--subtle);gap:.45rem;font-size:.82rem;display:grid}.auth-form input{border:2px solid var(--sticker-outline);background:var(--sheet);width:100%;color:var(--ink);border-radius:0;padding:.8rem}.auth-card .button{border-radius:0}.auth-card .button-primary{border:2px solid var(--sticker-outline);background:var(--sticker-coral);color:#392d36;box-shadow:.3rem .3rem 0 var(--sticker-outline)}.auth-card .button-secondary{border:2px solid var(--sticker-outline);background:var(--sheet);box-shadow:.25rem .25rem 0 var(--sticker-lilac)}.form-error{color:var(--danger);margin:0;font-size:.85rem}.form-notice{color:var(--accent);margin:0;font-size:.85rem;line-height:1.5}.auth-switch{margin:1rem auto 0;display:block}.verification-actions{gap:.75rem;margin-top:1.25rem;display:grid}.private-note{text-align:center;color:var(--subtle);margin:2.3rem 0 0;font-size:.78rem}.consent-note{color:var(--subtle);text-align:center;margin:1.4rem 0 0;font-size:.72rem;line-height:1.6}.legal-links{flex-wrap:wrap;gap:.65rem 1rem;display:flex}.auth-card>.legal-links{justify-content:center;margin-top:1rem;font-size:.75rem}.app-shell{background-color:#fff4f7;background-image:radial-gradient(circle, color-mix(in srgb, var(--sticker-pink) 27%, transparent) 1.35px, transparent 1.45px);background-size:24px 24px;min-height:100vh}.desktop-header{z-index:20;border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--sheet) 94%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky;top:0}.desktop-header-inner{grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:clamp(.75rem,2vw,1.75rem);width:min(100%,1440px);min-height:76px;margin:0 auto;padding:.75rem clamp(1.25rem,3vw,2.5rem);display:grid}.brand-home{cursor:pointer;background:0 0;border:0;padding:0}.brand-home .brand-logo{width:145px}.desktop-brand{align-items:center;gap:.55rem;display:flex}.brand-mascot{object-fit:contain;width:52px;height:52px}.desktop-nav{justify-content:center;align-items:center;gap:.2rem;display:flex}.nav-button{min-height:42px;color:var(--subtle);white-space:nowrap;background:0 0;border-radius:8px;padding:.65rem .85rem}.nav-button.active{background:var(--wash);color:var(--ink)}.desktop-write{white-space:nowrap}.account-menu{min-width:5rem;position:relative}.account-menu summary{max-width:8rem;color:var(--ink);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;border-radius:8px;padding:.65rem .75rem;list-style:none;overflow:hidden}.account-menu summary::-webkit-details-marker{display:none}.account-menu summary:hover,.account-menu[open] summary{background:var(--wash)}.account-menu>div{border:1px solid var(--line);background:var(--sheet);width:170px;box-shadow:0 14px 35px color-mix(in srgb, var(--ink) 14%, transparent);border-radius:10px;gap:.35rem;padding:.8rem;display:grid;position:absolute;top:calc(100% + .65rem);right:0}.account-menu>div span{color:var(--subtle);padding:.25rem .3rem;font-size:.75rem}.account-menu .text-button{justify-self:start}.content{width:min(100%,1360px);margin:0 auto;padding:3.2rem clamp(1.5rem,4vw,3rem) 6rem}.mobile-header,.bottom-nav{display:none}.page-heading{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:2rem;display:flex}.page-heading h1{margin-bottom:.25rem}.home-date-heading{grid-template-columns:48px minmax(0,max-content) 48px;justify-content:start;align-items:center;column-gap:clamp(.75rem,2vw,1.4rem);display:grid}.home-date-heading>div{min-width:0}.home-date-heading .icon-button{border:3px solid var(--sticker-outline);background:var(--sheet);width:48px;height:48px;color:var(--sticker-outline);box-shadow:.3rem .3rem 0 var(--sticker-mint);align-self:center}.home-date-heading .icon-button svg{stroke-width:3px;width:1.65rem;height:1.65rem}.home-date-heading .icon-button:hover:not(:disabled){background:var(--sticker-mint-paper);transform:translateY(-1px)}.home-date-heading .icon-button:disabled{border-color:color-mix(in srgb, var(--sticker-outline) 50%, var(--sheet));background:var(--sheet);color:var(--subtle);box-shadow:.25rem .25rem 0 color-mix(in srgb, var(--sticker-lilac) 55%, var(--sheet));opacity:.72}.home-today{grid-column:1/-1;justify-self:center;margin-top:.6rem}.home-page{width:min(100%,920px);margin:0 auto}.panel.diary-panel{border:3px solid var(--sticker-outline);background:var(--sheet);box-shadow:.7rem .7rem 0 var(--sticker-mint);border-radius:0;margin:0 .7rem .7rem 0;position:relative}.diary-panel:before{content:"";background:color-mix(in srgb, var(--sticker-lilac) 88%, transparent);clip-path:polygon(2% 4%,98% 1%,100% 91%,3% 98%,0 53%);width:7.5rem;height:1.7rem;position:absolute;top:-.9rem;left:50%;transform:translate(-50%)rotate(2deg)}.diary-panel>h2{color:var(--sticker-heading);margin-bottom:1.2rem}.diary-current{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:1.5rem;display:grid}.diary-current h3{color:var(--sticker-heading);margin-bottom:.5rem;font-family:Yu Mincho,Hiragino Mincho ProN,Georgia,serif;font-size:1.45rem;font-weight:400}.diary-current p{color:var(--subtle);white-space:pre-wrap;margin:0;line-height:1.7}.diary-current .button-primary{border:2px solid var(--sticker-outline);background:var(--sticker-coral);color:#392d36;box-shadow:.3rem .3rem 0 var(--sticker-outline);border-radius:0}.diary-memories{border:2px solid var(--sticker-outline);background:var(--sticker-purple-paper);box-shadow:.35rem .4rem 0 color-mix(in srgb, var(--sticker-outline) 15%, transparent);margin-top:2.2rem;padding:1.4rem 1.2rem 1rem;position:relative;transform:rotate(.25deg)}.diary-memories:before{content:"";background:color-mix(in srgb, var(--sticker-yellow) 90%, transparent);width:3.5rem;height:1.15rem;position:absolute;top:-.65rem;left:1.2rem;transform:rotate(-5deg)}.diary-memories .panel-heading{margin-bottom:.2rem}.diary-memories h3{color:#7959ae;font-size:1.05rem}.entry-photo-preview{flex-wrap:wrap;gap:.65rem;min-height:1px;margin-top:1rem;display:flex}.entry-photo-preview:empty{margin-top:0}.entry-photo-preview>button{cursor:zoom-in;background:0 0;border:0;border-radius:9px;padding:0}.entry-photo-preview img{border:1px solid var(--line);background:var(--wash);object-fit:cover;border-radius:9px;width:clamp(76px,12vw,120px);height:clamp(76px,12vw,120px);display:block}.entry-photo-preview.prominent{gap:.75rem;width:100%;margin:0 0 1.25rem;display:grid}.entry-photo-preview.prominent>button,.entry-photo-preview.prominent img{width:100%}.entry-photo-preview.prominent img{aspect-ratio:1;height:auto}.entry-photo-preview.prominent.single img{aspect-ratio:16/9}.home-grid{grid-template-columns:1fr;gap:1.8rem;display:grid}.panel.month-summary{border:2px solid var(--sticker-outline);background:var(--sticker-mint-paper);box-shadow:.45rem .5rem 0 color-mix(in srgb, var(--sticker-outline) 15%, transparent);border-radius:0;align-self:start;margin:0 .5rem .5rem 0;position:relative;transform:rotate(-.2deg)}.month-summary:before{content:"";background:color-mix(in srgb, var(--sticker-yellow) 90%, transparent);width:3.5rem;height:1.15rem;position:absolute;top:-.65rem;left:1.2rem;transform:rotate(-4deg)}.month-summary>h2{color:var(--accent)}.panel,.calendar-card{border:1px solid var(--line);background:var(--sheet);border-radius:14px;padding:1.5rem}.calendar-page,.search-page,.settings-page{width:min(100%,920px);margin:0 auto}.calendar-page .page-heading h1,.search-page .page-heading h1,.settings-page .page-heading h1{color:var(--sticker-heading)}.calendar-page .button-primary,.search-page .button-primary,.settings-page .button-primary{border:2px solid var(--sticker-outline);background:var(--sticker-coral);color:#392d36;box-shadow:.25rem .25rem 0 var(--sticker-outline);border-radius:0}.panel-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.memory-row{border-top:1px solid var(--line);text-align:left;background:0 0;width:100%;padding:1rem 0;display:grid}.memory-row-main{color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:4rem 1fr;gap:.8rem;padding:0;display:grid}.memory-row-main small{color:var(--subtle);white-space:pre-wrap;margin-top:.4rem;line-height:1.55;display:block}.memory-row>.entry-photo-preview{margin-left:4.8rem}.memory-year{color:var(--accent);font-family:Georgia,serif;font-size:1.05rem}.empty-state{color:var(--subtle);line-height:1.7}.month-summary>strong{margin:1rem 0 .45rem;font-family:Georgia,serif;font-size:1.8rem;font-weight:400;display:block}.month-summary>p{color:var(--subtle);line-height:1.7}.month-dots{grid-template-columns:repeat(7,1fr);gap:.45rem;width:min(100%,32rem);margin:1.5rem auto 0;display:grid}.month-dots button{aspect-ratio:1;background:var(--wash);color:var(--subtle);cursor:pointer;border:0;border-radius:50%;place-items:center;padding:0;font-size:clamp(.58rem,1.5vw,.72rem);display:grid}.month-dots button:hover:not(:disabled){outline:2px solid color-mix(in srgb, var(--accent) 45%, transparent)}.month-dots button.filled{background:var(--accent);color:#fff}.month-dots button.is-today{outline:2px solid var(--accent);outline-offset:2px}.month-dots button:disabled{cursor:default;opacity:.35}.error-banner{border-color:color-mix(in srgb, var(--danger) 45%, var(--line));justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.month-navigation{grid-template-columns:42px minmax(0,1fr) 42px;align-items:center;gap:.7rem;margin:1rem 0 1.3rem;display:grid}.month-picker{min-height:42px;color:var(--ink);cursor:pointer;border-radius:8px;place-items:center;font-family:Yu Mincho,Hiragino Mincho ProN,Georgia,serif;font-size:1.15rem;display:grid;position:relative}.month-picker:hover{background:var(--wash)}.month-picker:has(input:focus-visible){outline:3px solid color-mix(in srgb, var(--accent) 45%, transparent);outline-offset:2px}.month-picker input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.month-current{grid-column:1/-1;justify-self:center}.icon-button{background:0 0;border-radius:50%;width:42px;height:42px}.icon-button:hover{background:var(--wash)}.icon-button:disabled{cursor:default;opacity:.3}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:.45rem;display:grid}.weekday{color:var(--subtle);text-align:center;padding:.5rem;font-size:.75rem}.calendar-day{border:1px solid var(--line);background:var(--sheet);text-align:left;border-radius:9px;min-height:72px;padding:.65rem;position:relative}.calendar-day:hover:not(:disabled){border-color:var(--accent);background:var(--wash)}.calendar-day:disabled{opacity:.35;cursor:default;border-color:#0000}.calendar-day.is-today{border-color:var(--accent);background:var(--wash)}.calendar-day i{background:var(--accent);border-radius:50%;width:6px;height:6px;position:absolute;bottom:.65rem;left:.65rem}.calendar-card>.empty-state{text-align:center;margin:1.5rem 0 0}.calendar-page .calendar-card{border:3px solid var(--sticker-outline);background:var(--sticker-purple-paper);box-shadow:.6rem .6rem 0 var(--sticker-lilac);border-radius:0;margin:0 .6rem .6rem 0;position:relative}.calendar-page .calendar-card:before,.search-page .search-form:before{content:"";background:color-mix(in srgb, var(--sticker-yellow) 90%, transparent);width:4.5rem;height:1.25rem;position:absolute;top:-.7rem;left:1.5rem;transform:rotate(-4deg)}.calendar-page .calendar-day{background:var(--sheet);border-radius:0}.memory-list{gap:1.5rem;display:grid}.memory-article{border-top:1px solid var(--line);grid-template-columns:5rem 1fr;gap:1.5rem;padding:1.6rem 0;display:grid}.memory-article p{color:var(--subtle);white-space:pre-wrap;line-height:1.8}.memory-article .button{margin-top:1rem}.search-form{gap:1rem;display:grid}.search-form label{color:var(--subtle);gap:.4rem;font-size:.8rem;display:grid}.search-form input,.search-form select{border:1px solid var(--line);background:var(--paper);width:100%;min-height:44px;color:var(--ink);border-radius:8px;padding:.7rem .8rem}.search-form input[type=date]{appearance:none;min-width:0}.search-query input{font-size:1rem}.search-filters{grid-template-columns:1fr 1fr 1fr auto;align-items:end;gap:.8rem;display:grid}.search-results{border-top:1px solid var(--line);margin-top:1.5rem;display:grid}.search-result{border-bottom:1px solid var(--line);width:100%;color:var(--ink);text-align:left;gap:.45rem;padding:1.25rem .25rem;display:grid}.search-result:hover{background:var(--wash)}.search-result-main{color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;gap:.45rem;padding:0;display:grid}.search-result-main time{color:var(--accent);font-size:.78rem}.search-result-main strong{font-family:Yu Mincho,Hiragino Mincho ProN,Georgia,serif;font-size:1.15rem;font-weight:400}.search-result-main span{color:var(--subtle);line-height:1.65}.search-status{margin-top:1.5rem}.search-more{justify-content:center;padding-top:1.5rem;display:flex}.search-page .search-form{border:2px solid var(--sticker-outline);background:var(--sticker-mint-paper);box-shadow:.45rem .5rem 0 var(--sticker-mint);border-radius:0;margin:0 .5rem .5rem 0;position:relative}.search-page .search-form input,.search-page .search-form select{border:2px solid var(--sticker-outline);background:var(--sheet);border-radius:0}.search-page .search-results{border-top:0;gap:1rem}.search-page .search-result{border:2px solid var(--sticker-outline);background:var(--sheet);box-shadow:.3rem .3rem 0 var(--sticker-lilac);padding:1.25rem}.settings-list{gap:1.35rem;display:grid}.settings-page .settings-section{border:2px solid var(--sticker-outline);box-shadow:.35rem .35rem 0 var(--sticker-lilac);border-radius:0;margin:0 .35rem .35rem 0}.settings-page .settings-section:nth-child(3n+1){background:var(--sticker-mint-paper);box-shadow:.35rem .35rem 0 var(--sticker-mint)}.settings-page .settings-section:nth-child(3n+2){background:var(--sticker-purple-paper);box-shadow:.35rem .35rem 0 var(--sticker-lilac)}.settings-page .settings-section:nth-child(3n){background:var(--sheet);box-shadow:.35rem .35rem 0 var(--sticker-yellow)}.settings-page .settings-section h2{color:var(--accent)}.settings-section p{color:var(--subtle);line-height:1.7}.storage-meter{background:var(--wash);border-radius:999px;height:8px;margin:1.1rem 0 .65rem;overflow:hidden}.storage-meter i{border-radius:inherit;background:var(--accent);height:100%;display:block}.storage-amount{color:var(--subtle);font-size:.82rem;font-weight:500}.export-options{flex-wrap:wrap;gap:.75rem 1.5rem;margin-bottom:1rem;display:flex}.export-options label{cursor:pointer}.export-options input{accent-color:var(--accent)}.export-range{flex-wrap:wrap;gap:.8rem;margin-bottom:1rem;display:flex}.export-range label{color:var(--subtle);gap:.4rem;font-size:.8rem;display:grid}.export-range input{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:8px;padding:.7rem}.danger-zone{border-color:color-mix(in srgb, var(--danger) 40%, var(--line))}.delete-confirmation{border-top:1px solid var(--line);gap:1rem;margin-top:1rem;padding-top:1rem;display:grid}.delete-confirmation label{color:var(--subtle);gap:.5rem;font-size:.85rem;display:grid}.delete-confirmation input{border:1px solid var(--line);background:var(--paper);width:min(100%,22rem);color:var(--ink);border-radius:8px;padding:.75rem}.dialog-actions{flex-wrap:wrap;gap:.75rem;display:flex}.trash-list{display:grid}.trash-row{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1rem 0;display:grid}.trash-row>div:first-child{gap:.35rem;min-width:0;display:grid}.trash-row strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.trash-row span{color:var(--subtle);font-size:.8rem}.trash-confirm{text-align:right;justify-items:end;gap:.55rem;max-width:23rem;display:grid}.legal-shell{background-color:#fff4f7;background-image:radial-gradient(circle, color-mix(in srgb, var(--sticker-pink) 20%, transparent) 1.2px, transparent 1.3px);background-size:24px 24px;min-height:100vh;padding:clamp(1rem,5vw,4rem)}.legal-paper{border:2px solid var(--sticker-outline);background:var(--sheet);width:min(100%,780px);box-shadow:.45rem .45rem 0 color-mix(in srgb, var(--sticker-mint) 70%, var(--sheet));margin:auto;padding:clamp(1.5rem,6vw,4.5rem)}.legal-paper .brand-logo{margin:2rem 0 3rem}.legal-intro,.legal-paper section p{color:var(--subtle);line-height:1.9}.legal-paper section{margin-top:2.2rem}.legal-paper section h2{margin-bottom:.65rem;font-size:1.18rem}.legal-paper a{color:var(--accent)}.legal-date{color:var(--subtle);margin:3rem 0 0;font-size:.82rem}.fatal-message{text-align:center;padding:2rem}.fatal-message p{max-width:38rem;line-height:1.7}.inline-editor{margin:1rem 0}.inline-editor .editor-paper{width:100%;min-height:0;box-shadow:none;padding:1rem}.inline-editor .editor-header{width:100%;margin-bottom:1rem}.inline-editor .body-input{min-height:16rem}.diary-year{color:var(--accent);margin:1.5rem 0 1rem}.diary-body{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.editor-header{justify-content:space-between;align-items:center;width:min(100%,760px);margin:0 auto 2rem;display:flex}.save-state{color:var(--subtle);font-size:.78rem}.save-error{max-width:25rem;color:var(--danger);text-align:right}.editor-paper{border:2px solid var(--sticker-outline);background:var(--sheet);width:min(100%,760px);min-height:calc(100vh - 8rem);box-shadow:.45rem .45rem 0 color-mix(in srgb, var(--sticker-mint) 70%, var(--sheet));margin:auto;padding:clamp(1.5rem,5vw,4rem)}.editor-date{text-align:center;margin:0;font-size:clamp(1.2rem,3vw,1.8rem)}.title-input{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);background:0 0;padding:.75rem 0 1rem;font-family:Yu Mincho,Georgia,serif;font-size:1.3rem}.body-input{resize:vertical;background:repeating-linear-gradient(transparent, transparent 35px, color-mix(in srgb, var(--line) 40%, transparent) 36px);width:100%;min-height:55vh;color:var(--ink);border:0;padding:1.2rem 0;font-family:Yu Mincho,Georgia,serif;font-size:1.08rem;line-height:36px}.photo-section{gap:.75rem;padding:1rem 0 0;display:grid}.photo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;display:grid}.photo-grid figure{aspect-ratio:4/3;background:var(--wash);border-radius:9px;margin:0;position:relative;overflow:hidden}.photo-grid img{object-fit:cover;width:100%;height:100%}.photo-zoom{cursor:zoom-in;background:0 0;border:0;width:100%;height:100%;padding:0}.image-lightbox{z-index:1000;cursor:zoom-out;background:#0f1210e0;place-items:center;padding:clamp(1rem,5vw,4rem);display:grid;position:fixed;inset:0}.image-lightbox img{object-fit:contain;cursor:default;border-radius:8px;width:auto;max-width:100%;height:auto;max-height:90vh;display:block}.image-lightbox-close{z-index:1;color:#fff;cursor:pointer;background:#00000073;border:1px solid #ffffff73;border-radius:50%;width:48px;height:48px;font-size:2rem;line-height:1;position:fixed;top:1rem;right:1rem}.image-lightbox-arrow{z-index:1;color:#fff;cursor:pointer;background:#00000073;border:1px solid #ffffff73;border-radius:50%;width:52px;height:52px;font-size:1.5rem;position:fixed;top:50%;transform:translateY(-50%)}.image-lightbox-arrow:disabled{cursor:default;opacity:.25}.image-lightbox-previous{left:1rem}.image-lightbox-next{right:1rem}.image-lightbox-position{color:#fff;background:#0000008c;border-radius:999px;padding:.35rem .75rem;font-size:.85rem;position:fixed;bottom:1rem;left:50%;transform:translate(-50%)}.photo-delete{color:#fff;cursor:pointer;background:#000000b3;border:0;border-radius:50%;width:32px;height:32px;position:absolute;top:.4rem;right:.4rem}.photo-add{justify-self:start;position:relative;overflow:hidden}.photo-add.disabled{cursor:wait;opacity:.55}.photo-add input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.photo-section small{color:var(--subtle);line-height:1.5}.title-input:focus,.body-input:focus{outline:none}.editor-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding-top:1rem;display:flex}.editor-finish{align-items:center;gap:1rem;display:flex}.delete-entry-confirm{border:1px solid color-mix(in srgb, var(--danger) 40%, var(--line));background:color-mix(in srgb, var(--danger) 5%, var(--sheet));border-radius:9px;justify-content:space-between;align-items:end;gap:1rem;margin-top:1.25rem;padding:1rem;display:flex}.delete-entry-confirm p{color:var(--subtle);margin:.35rem 0 0;font-size:.85rem}.character-count{color:var(--subtle);font-size:.75rem}@media (width<=820px){.app-shell{display:block}.desktop-header{display:none}.mobile-header{padding:calc(1.2rem + env(safe-area-inset-top)) calc(1.3rem + env(safe-area-inset-right)) 1.2rem calc(1.3rem + env(safe-area-inset-left));border-bottom:1px solid var(--line);background:var(--sheet);justify-content:space-between;align-items:center;gap:.75rem;display:flex}.mobile-brand{align-items:center;gap:.4rem;min-width:0;display:flex}.mobile-header .brand-logo{width:160px}.mobile-mascot{object-fit:contain;flex:none;width:40px;height:40px}.mobile-header>div:last-child{flex:none;gap:.25rem;display:flex}.content{padding:2.2rem 1.15rem 7rem}.bottom-nav{z-index:5;padding:.4rem .35rem max(.65rem, env(safe-area-inset-bottom));border-top:1px solid var(--line);background:color-mix(in srgb, var(--sheet) 94%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-nav button{min-height:52px;color:var(--subtle);background:0 0;align-content:center;justify-items:center;gap:.25rem;padding:.35rem .15rem;font-size:.68rem;display:grid}.bottom-nav button svg{stroke-width:2px;width:1.35rem;height:1.35rem}.bottom-nav .nav-today{--nav-icon:#24715b;--nav-active:#dff5ed}.bottom-nav .nav-calendar{--nav-icon:#3579bd;--nav-active:#e4f1fb}.bottom-nav .nav-search{--nav-icon:#7950ba;--nav-active:#eee5ff}.bottom-nav .nav-write{--nav-icon:#c94d3b}.bottom-nav .nav-memories{--nav-icon:#8b681b;--nav-active:#fff3cf}.bottom-nav button svg{color:var(--nav-icon)}.bottom-nav button.active{background:var(--nav-active);color:var(--ink);font-weight:650;transform:rotate(-1deg)}.calendar-day{min-height:52px;padding:.45rem}.page-heading{align-items:start}.editor-header{padding:0 1rem}.inline-editor .editor-paper{min-height:0;padding:.7rem}.trash-row{grid-template-columns:1fr;align-items:start}.trash-confirm{text-align:left;justify-items:start}.delete-entry-confirm{flex-direction:column;align-items:stretch}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.image-lightbox{padding:4rem 1rem}.image-lightbox-arrow{top:auto;bottom:1rem;transform:none}.search-filters{grid-template-columns:1fr 1fr}}@media (width<=520px){.diary-current{grid-template-columns:1fr}.diary-current .button{width:100%}.calendar-card{padding:.7rem}.calendar-grid{gap:.2rem}.weekday{padding:.35rem .1rem}.calendar-day{border-radius:6px;min-height:44px;font-size:.78rem}.memory-article{grid-template-columns:3.4rem 1fr;gap:.8rem}.search-filters{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}.auth-language-row{justify-content:flex-end;min-height:44px;margin-bottom:1.5rem;display:flex}.tutorial-tour{width:100%;max-width:none;height:100%;max-height:none;color:var(--ink);background:0 0;border:0;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}.tutorial-tour::backdrop{background:0 0}.tutorial-spotlight{border:3px solid var(--sticker-coral);pointer-events:none;position:fixed;box-shadow:0 0 0 9999px #1e1928a6}.tutorial-bubble{background:var(--sheet);border:2px solid var(--sticker-outline);width:min(380px,100vw - 24px);box-shadow:5px 5px 0 var(--sticker-lilac);padding:20px;position:fixed}.tutorial-bubble:before{content:"";left:var(--tour-arrow);background:var(--sheet);border:2px solid var(--sticker-outline);width:18px;height:18px;position:absolute;transform:rotate(45deg)}.tutorial-bubble.below:before{border-bottom:0;border-right:0;top:-11px}.tutorial-bubble.above:before{border-top:0;border-left:0;bottom:-11px}.tutorial-bubble p{line-height:1.7}.tutorial-bubble h2{font-size:1.3rem}.tutorial-bubble .dialog-actions{flex-wrap:wrap;margin-top:16px}.registration-card>h1{margin-top:2rem;font-size:clamp(1.6rem,5vw,2.5rem)}.registration-card fieldset{border:0;margin:0;padding:0}.auth-card .registration-check{flex-direction:row;align-items:flex-start;gap:.75rem;margin:1rem 0;display:flex}.auth-card .registration-check input{flex:0 0 1.25rem;width:1.25rem;height:1.25rem;margin-top:.25rem;padding:0}.registration-notice{overflow-wrap:anywhere;margin:1.5rem 0;line-height:1.8}.registration-notice h2{font-size:1.35rem}.registration-actions{flex-direction:column;align-items:stretch;gap:1rem;margin-top:2rem;display:flex}.registration-card a,.registration-notice a{color:var(--accent);text-underline-offset:.2em}
