:root{--color-bg-primary:#f9f8f6;--color-bg-primary-pressed:#d9d8d6;--color-bg-secondary:#fcfcfc;--color-bg-card:#fdfdfd;--color-bg-card-dark:#f2f0ef;--color-bg-elevated:#fff;--color-bg-overlay:#00000073;--color-bg-o:#fffc;--color-bg-desktop:#e8e8ed;--color-text-primary:#111;--color-text-secondary:#636366;--color-text-tertiary:#8e8e93;--color-text-inverse:#fff;--color-text-on-dark:#f5f5f7;--color-text-on-image:#fff;--color-text-on-light-segment:#1c1c1e;--color-editor-comment:#ffe16a;--color-text-on-editor-comment:#3f3200;--color-accent:#000;--color-accent-light:#444;--color-accent-dark:#000;--color-accent-border:#5f5f5f;--color-border:#d7d3cc;--color-border-light:#f5f5f7;--color-handle:#e5e8eb;--color-divider:#efebe7;--color-success:#34c759;--color-warning:#ff9f0a;--color-error:#ff3b30;--color-info:#14ade5;--shadow-wrapper:0 0 24px #0006;--shadow-sm:0 2px 8px #0000000d;--shadow-md:0 8px 24px #00000014;--shadow-lg:0 12px 32px #0000001f;--shadow-xl:0 18px 48px #00000026;--shadow-card:0 2px 10px #0000005c;--shadow-card-hover:0 12px 24px #0003;--font-ui:"LINESeedKR", "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-body:var(--font-ui);--font-heading:var(--font-ui);--font-display:var(--font-ui);--font-sans:var(--font-ui);--text-xs:.6875rem;--text-sm:.8125rem;--text-base:.9375rem;--text-md:1rem;--text-lg:1.0625rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:2rem;--text-4xl:2.5rem;--text-5xl:3.5rem;--text-6xl:5rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:20px;--radius-2xl:24px;--radius-full:999px;--transition-fast:.2s cubic-bezier(.16, 1, .3, 1);--transition-base:.4s cubic-bezier(.16, 1, .3, 1);--transition-slow:.6s cubic-bezier(.16, 1, .3, 1);--transition-spring:.8s cubic-bezier(.175, .885, .32, 1.275);--z-base:1;--z-card:10;--z-nav:100;--z-coach:150;--z-modal:200;--z-splash:400;--z-overlay:500;--z-toast:600;--mobile-max-width:100%;--mobile-min-width:320px;--card-max-width:94%;--card-aspect-ratio:3.1 / 4.8;--nav-height:50px;--safe-area-top:env(safe-area-inset-top,0px);--safe-area-bottom:env(safe-area-inset-bottom,0px);--card-scale:1;--card-w:100%;--card-h:auto}@media (width>=600px){:root{--mobile-max-width:420px}}:root:lang(ko){--font-ui:"LINESeedKR", "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-body:var(--font-ui);--font-heading:var(--font-ui);--font-display:var(--font-ui);--font-sans:var(--font-ui)}:root:lang(en),:root:lang(es){--font-ui:"LINESeedEN", "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-body:var(--font-ui);--font-heading:var(--font-ui);--font-display:var(--font-ui);--font-sans:var(--font-ui)}:root:lang(ja){--font-ui:"LINESeedJP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", "Meiryo", "Noto Sans JP", system-ui, -apple-system, sans-serif;--font-body:var(--font-ui);--font-heading:var(--font-ui);--font-display:var(--font-ui);--font-sans:var(--font-ui)}:root:lang(zh){--font-ui:-apple-system, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", system-ui, sans-serif;--font-body:var(--font-ui);--font-heading:var(--font-ui);--font-display:var(--font-ui);--font-sans:var(--font-ui)}[data-theme=dark]{--color-bg-primary:#1c1c1e;--color-bg-primary-pressed:#4b4b4f;--color-bg-secondary:#323235;--color-bg-card:#363639;--color-bg-card-dark:#29292b;--color-bg-elevated:#303036;--color-bg-overlay:#000000a6;--color-bg-desktop:#000;--color-text-primary:#f5f5f7;--color-text-secondary:#aeaeb2;--color-text-tertiary:#636366;--color-text-inverse:#111;--color-editor-comment:#f5d34a;--color-text-on-editor-comment:#2a2200;--color-accent:#fff;--color-accent-light:#ccc;--color-accent-dark:#fff;--color-accent-border:#646269;--color-border:#3a3a3c;--color-border-light:#2c2c2e;--color-divider:#313133;--color-handle:#ffffff2e;--shadow-sm:0 2px 8px #00000080;--shadow-md:0 8px 24px #0009;--shadow-lg:0 16px 48px #000000b3;--shadow-xl:0 24px 64px #000c;--shadow-card:0 2px 8px #0006;--shadow-card-hover:0 4px 16px #0009;--shadow-wrapper:0 0 48px #ada79538}[data-font-size=small]{--text-xs:.625rem;--text-sm:.75rem;--text-base:.8125rem;--text-md:.875rem;--text-lg:.9375rem;--text-xl:1.125rem;--text-2xl:1.375rem}[data-font-size=large]{--text-xs:.75rem;--text-sm:.875rem;--text-base:1.0625rem;--text-md:1.125rem;--text-lg:1.1875rem;--text-xl:1.375rem;--text-2xl:1.625rem}*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;width:100%;font-size:16px;overflow-x:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important}html{scroll-behavior:auto!important}}body{-webkit-user-select:none;user-select:none;min-height:100dvh;font-family:var(--font-ui);background-color:var(--color-bg-primary);color:var(--color-text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;justify-content:center;width:100%;line-height:1.6;display:flex;overflow-x:hidden}.mobile-wrapper{width:100%;max-width:var(--mobile-max-width);background-color:var(--color-bg-primary);min-height:100dvh;margin:0 auto;position:relative;overflow:hidden}@media (width>=600px){body{background-color:var(--color-bg-desktop)}.mobile-wrapper{box-shadow:var(--shadow-wrapper)}[data-theme=dark] .mobile-wrapper{box-shadow:none}}a{color:inherit;text-decoration:none}button{font-family:inherit;font-size:inherit;cursor:pointer;color:inherit;background:0 0;border:none;outline:none}button,a,[role=button],[role=link],input[type=button],input[type=submit],input[type=reset],input[type=checkbox],input[type=radio],label,summary,.card,.flip-container,.flipper,.history-card-front,.history-card-back,.history-card-mini,.card-action-btn,.card-detail-shortcut-btn,.back-editor-btn,.bookmark-btn,.nav-item,.btn,.btn-icon,.list-item,.theme-option,.view-mode-option,.widget-theme-option,.calendar-toggle-btn,.calendar-month-arrow,.wheel-item,.cal-cell,.detail-action-btn,.detail-sheet-close,.search-result-item,.editor-stat,.editor-lang-tab,.editor-calendar-cell,.mystory-form-actions button,.ms-image-upload-area,.profile-edit-btn{touch-action:manipulation;-webkit-tap-highlight-color:transparent}input,textarea,select{font-family:inherit;font-size:inherit;color:inherit;background:0 0;border:none;outline:none}img{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;max-width:100%;height:auto;display:block}ul,ol{list-style:none}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full)}:is(.app-container:has(.page-header),.app-container:has(.page-header-with-back),.app-container:has(.editor-new-header)){padding-top:calc(env(safe-area-inset-top,0px) + 48px)}::selection{background:var(--color-accent);color:var(--color-text-inverse)}.app-container{width:100%;min-width:var(--mobile-min-width);height:100dvh;padding-top:env(safe-area-inset-top,0px);padding-bottom:calc(var(--nav-height) + var(--safe-area-bottom));flex-direction:column;display:flex;position:relative;overflow:hidden}.app-container.no-nav{padding-bottom:0}.app-container.has-ad-banner{padding-bottom:calc(var(--nav-height) + var(--safe-area-bottom) + var(--ad-banner-height,0px))}.app-container.has-ad-banner.no-nav{padding-bottom:var(--ad-banner-height,0px)}.status-bar-spacer{width:100%;max-width:var(--mobile-max-width);height:env(safe-area-inset-top,0px);background:var(--color-bg-primary);z-index:101;position:fixed;top:0;left:50%;transform:translate(-50%)}.page-container{background:var(--color-bg-primary);min-width:var(--mobile-min-width);flex-direction:column;flex:1;padding-bottom:0;display:flex;position:relative;overflow:hidden auto}.app-container.no-nav .page-container{padding-bottom:var(--safe-area-bottom)}.page{flex:1 0 auto;width:100%;animation:.4s pageEnter}.page:has(.page-header-with-back){animation:none}.page:has(.page-header-with-back)>:not(.page-header){animation:.2s ease-out pageEnter}@keyframes pageEnter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pageEnterFromRight{0%{opacity:0;transform:translate(28px)}to{opacity:1;transform:translate(0)}}@keyframes pageEnterFromLeft{0%{opacity:0;transform:translate(-28px)}to{opacity:1;transform:translate(0)}}.page[data-enter=from-right]{animation-name:pageEnterFromRight}.page[data-enter=from-left]{animation-name:pageEnterFromLeft}.splash-screen{z-index:var(--z-splash);background:var(--color-bg-primary);justify-content:center;align-items:center;width:100%;height:100dvh;transition:opacity .6s,visibility .6s;display:flex;position:absolute;top:0;left:0}.splash-version{left:0;right:0;bottom:calc(env(safe-area-inset-bottom,0px) + var(--space-5));font-family:var(--font-ui);font-size:var(--text-xs);color:var(--color-text-tertiary);letter-spacing:.04em;text-align:center;pointer-events:none;position:absolute}.splash-screen.hide{opacity:0;visibility:hidden}.splash-content{text-align:center}.splash-icon{width:130px;height:130px;margin:0 auto var(--space-6);background-image:url(/daystory_icon_light.png);background-position:50%;background-repeat:no-repeat;background-size:contain;animation:2.2s cubic-bezier(.4,0,.2,1) infinite splashPulse;display:block}@media (prefers-color-scheme:dark){.splash-icon{background-image:url(/daystory_icon_dark.png)}}[data-theme=dark] .splash-icon{background-image:url(/daystory_icon_dark.png)}@keyframes splashPulse{0%,to{opacity:1;filter:drop-shadow(0 0 #fff0);transform:scale(1)}50%{opacity:.92;filter:drop-shadow(0 0 8px #ffffff1a);transform:scale(1.04)}}.splash-title{font-family:var(--font-sans);font-size:var(--text-5xl);color:var(--color-text-primary);letter-spacing:-.04em;margin-bottom:var(--space-2);font-weight:600}.splash-subtitle{font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text-secondary);letter-spacing:.1em}.splash-loader{border-radius:var(--radius-full);width:120px;height:2px;margin:var(--space-8) auto 0;background:0 0;overflow:hidden}.splash-loader-bar{background:linear-gradient(90deg, var(--color-accent), var(--color-accent-light));border-radius:var(--radius-full);width:0%;height:100%;animation:1.5s ease-in-out forwards splashLoad}@keyframes splashLoad{0%{width:0%}50%{width:70%}to{width:100%}}.bottom-nav{border-top:1px solid var(--color-border-light);z-index:var(--z-nav);width:100%;max-width:var(--mobile-max-width);min-width:var(--mobile-min-width);height:calc(var(--nav-height) + var(--safe-area-bottom));padding:0 var(--space-10) 0;padding-bottom:calc(var(--space-1) + var(--safe-area-bottom));background:var(--color-bg-primary);justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.nav-item{color:var(--color-text-tertiary);align-items:center;transition:all .4s;display:flex;position:relative}.nav-item:active{background:var(--color-bg-primary-pressed);transition:all .1s;transform:scale(.92)}.bottom-nav.redesigned-nav .nav-item{padding:var(--space-2) var(--space-5);border-radius:var(--radius-full);justify-content:center;width:auto;height:auto}.bottom-nav.redesigned-nav .nav-icon-wrap{flex-shrink:0;width:28px;height:28px;position:relative}.bottom-nav.redesigned-nav .nav-icon{stroke-width:1.5px;width:28px;height:28px;position:absolute;top:0;left:0}.bottom-nav.redesigned-nav .nav-item.active .nav-icon{color:var(--color-accent)}.bottom-nav.redesigned-nav .nav-icon-active{opacity:0}.bottom-nav.redesigned-nav .nav-icon-default{opacity:1}.bottom-nav.redesigned-nav .nav-item.active .nav-icon-default{opacity:0}.bottom-nav.redesigned-nav .nav-item.active .nav-icon-active{opacity:1}.toast-container{bottom:calc(var(--nav-height) + var(--safe-area-bottom) + var(--space-3));z-index:var(--z-toast);width:100%;max-width:var(--mobile-max-width);padding:0 var(--space-4);align-items:center;gap:var(--space-2);pointer-events:none;flex-direction:column;display:flex;position:fixed;left:50%;transform:translate(-50%)}.toast{padding:var(--space-2) var(--space-5);border:1px solid var(--color-text-tertiary);box-shadow:var(--shadow-md);font-size:var(--text-sm);pointer-events:auto;text-align:center;max-width:90vw;color:var(--color-text-primary);background:var(--color-bg-secondary);transform:translateY(var(--space-4)) scale(.95);border-radius:2px;font-weight:500;animation:.25s ease-out forwards toastIn}[data-theme=dark] .toast{box-shadow:0 6px 18px #00000080}.toast.success{border-color:var(--color-success)}.toast.error{border-color:var(--color-error)}.toast.warning{border-color:var(--color-warning)}.toast.hide{animation:.5s forwards toastOut}@keyframes toastIn{0%{opacity:0;transform:translateY(var(--space-4)) scale(1)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes toastOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(var(--space-4))}}:lang(ko) .back-body,:lang(ko) .card-image-title,:lang(ko) .detail-body{word-break:break-all}:lang(ja) .back-body,:lang(zh) .back-body,:lang(ja) .card-image-title,:lang(zh) .card-image-title,:lang(ja) .detail-body,:lang(zh) .detail-body{word-break:break-all;overflow-wrap:break-word}:lang(en) .back-body,:lang(es) .back-body,:lang(en) .card-image-title,:lang(es) .card-image-title,:lang(en) .detail-body,:lang(es) .detail-body{word-break:normal;overflow-wrap:break-word}@keyframes ms-spin{to{transform:rotate(360deg)}}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-radius:var(--radius-full);font-family:var(--font-ui);font-size:var(--text-sm);transition:all var(--transition-fast);cursor:pointer;white-space:nowrap;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:none;font-weight:600;display:inline-flex}.btn-primary{background:var(--color-accent);color:var(--color-text-inverse)}.btn-primary:active{background:var(--color-accent-dark);transform:scale(.97)}.btn-secondary{background:var(--color-bg-secondary);color:var(--color-text-primary);border:1px solid var(--color-border)}.btn-secondary:active{background:var(--color-border);transform:scale(.97)}.btn-ghost{color:var(--color-text-secondary);background:0 0}.btn-ghost:active{background:var(--color-bg-primary-pressed)}.btn-full{width:100%}.btn-large{padding:var(--space-3) var(--space-8);font-size:var(--text-base)}.btn-icon{border-radius:var(--radius-full);justify-content:center;align-items:center;width:44px;height:44px;padding:0;display:flex}.btn-icon svg{width:20px;height:20px}.input-group{flex-direction:column;display:flex}.input-label{font-size:var(--text-sm);color:var(--color-text-secondary);padding-left:var(--space-1);font-weight:500}.input-field{width:100%;height:44px;padding:var(--space-3) var(--space-4);background:var(--color-bg-secondary);border:1.5px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--text-base);color:var(--color-text-primary);transition:border-color var(--transition-fast)}.input-field:focus{border-color:var(--color-accent)}.input-field::placeholder{color:var(--color-text-tertiary)}.input-field[type=date]{appearance:none;text-align:left;min-width:0}.input-field[type=date]::-webkit-date-and-time-value{text-align:left;margin:0}.input-field[type=date]::-webkit-calendar-picker-indicator{margin-left:auto}.input-error{font-size:var(--text-xs);color:var(--color-error)}.flip-container{perspective:2200px;width:100%;min-width:0;margin:0 auto;position:relative}.card-admin-edit-float{z-index:20;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);width:34px;height:34px;color:var(--color-text-secondary);box-shadow:var(--shadow-sm);cursor:pointer;opacity:.7;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:-42px;right:2px}.card-admin-edit-float:active{transition:transform .15s;transform:scale(.94)}.card-admin-edit-float svg{width:18px;height:18px}.flipper{width:100%;min-width:0;height:100%;transform-style:preserve-3d;cursor:pointer;box-shadow:var(--shadow-card);touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:scale .3s cubic-bezier(.25,.8,.25,1);position:relative}.flipper.is-flipping{transition:transform .5s ease-in-out 50ms,scale .2s;pointer-events:none!important}.flipper.is-pressed{transition:scale .1s ease-out;scale:.98}.flipper.flipped{transition:transform .5s ease-in-out 50ms,scale .2s;transform:rotateY(180deg)}.front,.back{backface-visibility:hidden;width:100%;height:100%;box-shadow:var(--shadow-card), var(--shadow-card-hover);flex-direction:column;display:flex;position:absolute;top:0;left:0}.history-card-front{padding:calc(var(--space-4) * var(--card-scale));background:var(--color-bg-card);flex-direction:column;align-items:center;display:flex;overflow:hidden}.history-card-top{padding:var(--space-2) 0 var(--space-2) 0;justify-content:space-between;align-self:stretch;align-items:center;display:flex}.card-top-left{gap:var(--space-1);flex-direction:column;display:flex}.card-detail-shortcut-btn{padding:var(--space-2) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-secondary);color:var(--color-text-primary);font-family:var(--font-ui);font-size:var(--text-sm);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;font-weight:600;line-height:1;transition:transform .2s,background .2s,border-color .2s}.card-detail-shortcut-btn:active{background:var(--color-bg-card-dark);transform:scale(.97)}.card-detail-shortcut-btn:disabled{opacity:.55;cursor:default}[data-theme=dark] .card-detail-shortcut-btn{color:var(--color-accent);border-color:var(--color-accent)}.card-year{font-family:var(--font-body);font-size:clamp(1.2rem, calc(1.75rem * var(--card-scale)), 2.1rem);letter-spacing:-.02em;color:var(--color-text-primary);font-weight:600;line-height:1}.card-date{font-family:var(--font-body);font-size:clamp(2.4rem, calc(3.55rem * var(--card-scale)), 4.2rem);letter-spacing:-.04em;color:var(--color-text-primary);font-weight:600;line-height:.9}.card-top-right{justify-content:space-between;align-items:flex-end;gap:var(--space-2);flex-direction:column;align-self:stretch;display:flex}.card-actions{justify-content:flex-end;gap:var(--space-4);width:100%;height:auto;color:var(--color-text-tertiary);display:flex}[data-theme=dark] .card-actions{color:var(--color-accent)}.card-action-btn{padding:var(--space-2);cursor:pointer;border-radius:var(--radius-md);touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;justify-content:center;align-items:center;margin:-6px;transition:transform .2s,background .2s;display:flex}.card-action-btn:active{background:var(--color-bg-primary-pressed);color:var(--color-text-primary);transition:transform .2s,background .2s;transform:scale(.9)}.card-actions svg{width:calc(22px * var(--card-scale));height:calc(22px * var(--card-scale))}.card-meta{text-align:right;color:var(--color-text-secondary);font-size:.8em;font-weight:400;line-height:1.5}.history-card-image-wrap{flex:1;align-self:stretch;min-height:0;position:relative;overflow:hidden}.history-card-image-wrap img{object-fit:cover;width:100%;height:100%}.history-card-image-wrap:after{content:"";pointer-events:none;position:absolute;inset:0}.card-image-title{padding:calc(var(--space-8) * var(--card-scale)) calc(var(--space-5) * var(--card-scale)) calc(var(--space-5) * var(--card-scale));color:#fff;font-family:var(--font-sans);font-size:clamp(1.9rem, calc(2.8rem * var(--card-scale)), 3.4rem);letter-spacing:-.02em;word-break:keep-all;text-shadow:0 2px 10px #0009;pointer-events:none;background:linear-gradient(#0000 0%,#0006 50%,#000000b3 100%);font-weight:600;line-height:1.1;position:absolute;bottom:0;left:0;right:0}.history-card-back{padding:calc(var(--space-4) * var(--card-scale)) calc(var(--space-6) * var(--card-scale));background:var(--color-bg-card);color:var(--color-text-primary);overflow:hidden;transform:rotateY(180deg)}.back-title{font-family:var(--font-sans);font-size:clamp(1rem, calc(1.25rem * var(--card-scale)), 1.5rem);text-align:center;font-weight:600}.back-divider{background:var(--color-border);height:1px;margin:var(--space-2) 0 var(--space-2) 0;border:none}.back-body{min-height:0;font-family:var(--font-body);font-size:clamp(.875rem, calc(1rem * var(--card-scale)), 1.15rem);letter-spacing:-.016em;color:var(--color-text-secondary);flex:1;line-height:1.8;overflow-y:auto}.back-body p:has(>br:only-child){line-height:1.1}.back-footer{padding-top:var(--space-2);margin-top:var(--space-2);border-top:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;display:flex;position:relative}.back-date{font-family:var(--font-sans);text-align:right;color:var(--color-text-secondary);font-size:.8rem;font-weight:400}.back-date-actions{align-items:flex-end;gap:var(--space-2);flex-direction:column;display:flex}.back-editor-btn{border:1px solid var(--color-border);background:var(--color-bg-secondary);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:46px;height:46px;padding:0;transition:transform .2s,box-shadow .2s;display:flex;position:relative;overflow:visible}.back-editor-btn:before{content:"";z-index:1;border-radius:50%;position:absolute;inset:-12px}.back-editor-btn:active{transform:scale(.98)}.back-editor-btn.unread:after{content:"";background:var(--color-error);border:1.5px solid var(--color-bg-card,var(--color-bg-primary));z-index:2;pointer-events:none;border-radius:50%;width:9px;height:9px;transition:opacity .2s,transform .2s;position:absolute;top:1px;right:1px}.back-editor-avatar{object-fit:cover;outline:1px solid var(--color-accent-light);border-radius:50%;width:100%;height:100%}.back-editor-avatar-fallback{justify-content:center;align-items:center;width:100%;height:100%;font-size:.85rem;display:flex}.editor-comment-bubble{box-sizing:border-box;background:var(--color-bg-secondary);color:var(--color-text-primary);font-size:var(--text-sm);padding:var(--space-4);border:2px solid var(--color-accent-light);border-radius:var(--radius-sm);white-space:normal;word-break:normal;overflow-wrap:anywhere;line-break:auto;text-align:left;z-index:10;pointer-events:auto;flex-direction:column;min-width:230px;max-width:330px;line-height:1.4rem;animation:.25s editorBubbleIn;display:flex;position:absolute;bottom:calc(100% + 12px);left:-2px;box-shadow:0 1px 4px #0009}.editor-comment-bubble:after{content:"";border-left:12px solid #0000;border-right:12px solid #0000;border-top:8px solid var(--color-accent-light);width:0;height:0;position:absolute;bottom:-8px;left:8px}.editor-comment-name{font-weight:400;font-size:var(--text-sm);color:var(--color-text-secondary);text-align:right;padding-top:var(--space-1);display:block}@keyframes editorBubbleIn{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}.history-card-mini{background:var(--color-bg-card);width:100%;box-shadow:var(--shadow-md);cursor:pointer;transition:var(--transition-spring);aspect-ratio:var(--card-aspect-ratio);touch-action:manipulation;-webkit-tap-highlight-color:transparent;flex-direction:column;display:flex;position:relative;overflow:hidden}.history-card-mini:active{transition:var(--transition-fast);box-shadow:var(--shadow-card-hover);transform:scale(.95)}.mini-card-top{background:var(--color-bg-card);color:var(--color-text-primary);justify-content:space-between;align-items:flex-start;padding:.9rem .6rem .45rem;display:flex}.mini-top-left{flex-direction:column;display:flex}.mini-year{font-family:var(--font-body);letter-spacing:-.02em;font-size:.75rem;font-weight:600;line-height:1.1}.mini-date{font-family:var(--font-body);letter-spacing:-.04em;margin-top:2px;font-size:1.7rem;font-weight:600;line-height:.9}.mini-top-right{text-align:right;color:var(--color-text-secondary);flex-direction:column;justify-content:space-between;align-items:flex-end;height:100%;margin-top:0;font-size:.45rem;font-weight:400;line-height:1.5;display:flex}.mini-bookmark-btn{cursor:pointer;color:var(--color-text-secondary);background:0 0;border:none;padding:0;line-height:0}.mini-bookmark-btn svg{width:.65rem;height:.65rem}.mini-top-text{text-align:right}.my-story-mini .card-action-btn{color:var(--color-text-secondary);background:0 0;border:none;margin:0;padding:0;line-height:0}.my-story-mini .card-action-btn svg{width:.65rem;height:.65rem}.mini-card-image-wrap{flex:1;width:auto;min-height:0;margin:0 .5rem .5rem;position:relative}.mini-card-image-wrap img{object-fit:cover;width:100%;height:100%;display:block}.mini-card-overlay{color:#fff;text-shadow:0 1px 3px #0009;line-clamp:2;-webkit-line-clamp:2;background:linear-gradient(#0000,#0006);-webkit-box-orient:vertical;padding:1.5rem .6rem .6rem;font-size:1rem;font-weight:600;line-height:1.2;display:-webkit-box;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.history-card-mini.locked{opacity:.35;filter:grayscale()}.history-card-mini.locked:after{content:"🔒";font-size:1.5rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.page-header{top:env(safe-area-inset-top,0px);width:100%;max-width:var(--mobile-max-width);z-index:50;height:48px;padding:0 var(--space-4) 0 var(--space-4);background:var(--color-bg-primary);min-width:var(--mobile-min-width);border-bottom:1px solid var(--color-border-light);justify-content:space-between;align-items:center;display:flex;position:fixed;left:50%;transform:translate(-50%)}.page-header-title{font-family:var(--font-ui);font-size:var(--text-lg);font-weight:600;line-height:1;transform:translateY(1px)}.page-header-back{border-radius:var(--radius-full);justify-content:center;align-items:center;width:36px;height:36px;transition:all .4s;display:flex;position:relative}.page-header-back:before{content:"";border-radius:var(--radius-full);position:absolute;inset:-4px}.page-header-back:active{background:var(--color-bg-primary-pressed);transition:all .1s}.page-header-back svg{width:20px;height:20px}.section{padding:52px var(--space-6) var(--space-8)}.section-title{font-family:var(--font-sans);font-size:var(--text-base);color:var(--color-text-secondary);margin-bottom:var(--space-4);letter-spacing:.02em;font-weight:600}.list-item{align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-divider);cursor:pointer;transition:background .4s;display:flex}.list-item:active{background:var(--color-bg-primary-pressed);transition:background .1s}.list-item-icon{border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.list-item-icon svg{stroke-width:2px;width:24px;height:24px}.list-item-content{flex:1;min-width:0}.list-item-title{text-align:left;font-size:var(--text-base);font-weight:500}.list-item-subtitle{font-size:var(--text-sm);color:var(--color-text-tertiary);margin-top:2px}.list-item-action{width:24px;height:24px;color:var(--color-text-tertiary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.toggle{border-radius:var(--radius-full);background:var(--color-border);cursor:pointer;width:48px;height:28px;transition:background var(--transition-fast);position:relative}.toggle.active{background:var(--color-success)}.toggle:after{content:"";width:22px;height:22px;transition:transform var(--transition-fast);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.toggle.active:after{transform:translate(20px)}.empty-state{width:100%;padding:var(--space-16) var(--space-8);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-state-icon{margin-bottom:var(--space-4);opacity:.5;font-size:3rem}.empty-state-title{font-family:var(--font-sans);font-size:var(--text-lg);margin-bottom:var(--space-2);font-weight:600}.empty-state-desc{font-size:var(--text-sm);color:var(--color-text-tertiary);max-width:260px}.modal-overlay{background:var(--color-bg-overlay);z-index:var(--z-modal);touch-action:none;justify-content:center;align-items:flex-end;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.modal-sheet{width:100%;max-width:var(--mobile-max-width);background:var(--color-bg-primary);border-radius:var(--radius-2xl) var(--radius-2xl) 0 0;max-height:85vh;padding:0 var(--space-6);padding-bottom:calc(var(--space-6) + env(safe-area-inset-bottom,0px));overscroll-behavior:contain;animation:slideUp .3s var(--transition-spring);overflow-y:auto}.notification-settings-overlay{width:100%;max-width:var(--mobile-max-width);background:var(--color-bg-primary);height:100dvh;z-index:var(--z-modal);padding-top:env(safe-area-inset-top,0px);box-shadow:var(--shadow-lg);flex-direction:column;transition:transform .6s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;top:0;left:50%;overflow:hidden;transform:translate(-50%)translate(100%)}.notification-settings-overlay.visible{transform:translate(-50%)translate(0)}.notification-settings-sheet{overscroll-behavior:contain;touch-action:pan-y;min-height:0;padding-bottom:calc(var(--space-5) + env(safe-area-inset-bottom,0px));flex-direction:column;flex:1;display:flex;overflow-y:auto}.modal-handle{border-radius:var(--radius-full);background:var(--color-border);width:42px;height:4px;margin:var(--space-5) auto var(--space-5)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.update-sheet-overlay{opacity:0;transition:opacity .25s;animation:none}.update-sheet-overlay.is-visible{opacity:1}.update-sheet-overlay .update-sheet{transition:transform .32s var(--transition-spring);will-change:transform;animation:none;transform:translateY(100%)}.update-sheet-overlay.is-visible .update-sheet{transform:translateY(0)}.update-sheet-overlay .update-sheet.is-dragging{transition:none}.update-sheet-handle-area{padding:var(--space-10) var(--space-6) var(--space-6);margin:calc(-1 * var(--space-6)) calc(-1 * var(--space-6)) 0;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;display:flex}.update-sheet-handle-area:active{cursor:grabbing}.update-sheet-handle-area .modal-handle{margin:0}.update-sheet{text-align:center}.update-sheet-icon{width:64px;height:64px;margin:0 auto var(--space-4);background:var(--color-bg-secondary);color:var(--color-accent);border-radius:50%;justify-content:center;align-items:center;display:flex}.update-sheet-title{font-family:var(--font-body);font-size:var(--text-lg);color:var(--color-text-primary);margin:0 0 var(--space-2);letter-spacing:-.01em;font-weight:600}.update-sheet-message{font-family:var(--font-sans);font-size:var(--text-sm);color:var(--color-text-secondary);margin:0 0 var(--space-5);padding:0 var(--space-6);word-break:keep-all;line-height:1.5}.update-sheet-versions{gap:var(--space-2);background:var(--color-bg-secondary);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-5);flex-direction:column;display:flex}.update-sheet-version-row{font-family:var(--font-sans);font-size:var(--text-sm);justify-content:space-between;align-items:center;display:flex}.update-sheet-version-label{color:var(--color-text-secondary)}.update-sheet-version-value{color:var(--color-text-primary);font-variant-numeric:tabular-nums;font-weight:600}.update-sheet-version-row.is-latest .update-sheet-version-value{color:var(--color-accent)}.update-sheet-actions{gap:var(--space-3);display:flex}.update-sheet-actions .btn{flex:1}.bookmark-btn.active svg{fill:var(--color-text-secondary);stroke:var(--color-text-secondary)}[data-theme=dark] .bookmark-btn.active svg{fill:var(--color-accent);stroke:var(--color-accent)}.divider{background:var(--color-divider);height:1px;margin:var(--space-4) 0}.badge{padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--text-xs);align-items:center;gap:var(--space-1);font-weight:600;display:inline-flex}.badge-accent{color:var(--color-accent);background:#c4a26526}.badge-draft{background:var(--color-bg-secondary);color:var(--color-text-secondary)}.badge-scheduled{color:var(--color-info);background:#14ade524}.badge-archived{background:var(--color-border);color:var(--color-text-tertiary)}.badge-success{color:var(--color-success);background:#4caf5026}.wheel-item.disabled{opacity:.25;pointer-events:none;scroll-snap-align:none;background-color:var(--color-divider)}.crop-modal-overlay{z-index:var(--z-overlay);width:100%;max-width:var(--mobile-max-width);background:var(--color-bg-primary);opacity:0;touch-action:none;flex-direction:column;height:100dvh;transition:opacity .2s;display:flex;position:fixed;top:0;left:50%;transform:translate(-50%)}.crop-modal-header{height:calc(60px + var(--safe-area-top));padding-top:var(--safe-area-top);font-size:var(--text-lg);color:var(--color-text-primary);border-bottom:1px solid var(--color-divider);flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:flex;position:relative}.crop-modal-back-btn{left:var(--space-4);top:calc(var(--safe-area-top) + 30px);cursor:pointer;width:36px;height:36px;color:var(--color-text-primary);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;transform:translateY(-50%)}.crop-modal-body{background:var(--color-bg-overlay);flex:1;min-height:0;overflow:hidden}.crop-modal-footer{height:80px;padding:0 var(--space-4);padding-bottom:env(safe-area-inset-bottom,0);border-top:1px solid var(--color-divider);background:var(--color-bg-primary);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.btn-rotate{align-items:center;gap:var(--space-2);padding:var(--space-2);color:var(--color-text-primary);cursor:pointer;background:0 0;border:none;display:flex}.btn-rotate svg{width:20px;height:20px}.btn-crop-confirm{padding:var(--space-2) var(--space-4);font-size:var(--text-base);color:var(--color-text-inverse);background:var(--color-accent);border-radius:var(--radius-full);cursor:pointer;border:none;font-weight:600}.btn-crop-confirm:disabled{opacity:.5}.cropper-bg{background-color:var(--color-bg-overlay);background-image:none!important}.cropper-container,.cropper-wrap-box,.cropper-canvas,.cropper-drag-box,.cropper-crop-box,.cropper-modal,.cropper-view-box,.cropper-face,.cropper-dashed,.cropper-center,.cropper-line,.cropper-line.line-e,.cropper-line.line-n,.cropper-line.line-w,.cropper-line.line-s,.cropper-point,.cropper-point.point-e,.cropper-point.point-n,.cropper-point.point-w,.cropper-point.point-s,.cropper-point.point-ne,.cropper-point.point-nw,.cropper-point.point-sw,.cropper-point.point-se,.cropper-center:before,.cropper-center:after,.cropper-point.point-se:before{box-sizing:content-box;margin:0;padding:0}.page-header-centered{text-align:center;justify-content:center}.page-header-with-back{top:env(safe-area-inset-top,0px);width:100%;max-width:var(--mobile-max-width);z-index:50;justify-content:space-between;align-items:center;display:flex;position:fixed;left:50%;transform:translate(-50%)}.page-header-centered .page-header-title,.page-header-with-back .page-header-title{text-align:center;flex:1;min-width:0}.page-header-spacer{flex-shrink:0;width:36px}.page-header-actions{gap:var(--space-3)}.confirm-dialog-overlay{z-index:var(--z-overlay);opacity:0;padding:var(--space-4);touch-action:none;background:#00000073;justify-content:center;align-items:center;transition:opacity .18s;display:flex;position:fixed;inset:0}.confirm-dialog-overlay.visible{opacity:1}.confirm-dialog{background:var(--color-bg-card);color:var(--color-text-primary);border-radius:var(--radius-lg);width:min(320px,100%);padding:var(--space-5);transition:transform .18s;transform:scale(.96);box-shadow:0 12px 32px #0000002e}.confirm-dialog-overlay.visible .confirm-dialog{transform:scale(1)}.confirm-dialog-title{font-size:var(--text-md);margin-bottom:var(--space-2);font-weight:700}.confirm-dialog-message{font-size:var(--text-sm);color:var(--color-text-secondary);margin-bottom:var(--space-5);line-height:1.5}.confirm-dialog-line{margin:0}.confirm-dialog-line+.confirm-dialog-line{margin-top:var(--space-1)}.confirm-dialog-actions{gap:var(--space-2);justify-content:flex-end;display:flex}.confirm-dialog-btn{padding:var(--space-3) var(--space-4);font-size:var(--text-sm);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg-secondary);color:var(--color-text-primary);cursor:pointer;flex:1;font-weight:600;transition:background .15s}.confirm-dialog-btn:active{opacity:.6;transition:transform .2s;transform:scale(.95)}.confirm-dialog-confirm{background:var(--color-accent);color:var(--color-text-inverse);border-color:#0000}.confirm-dialog-confirm.is-danger{background:var(--color-error,#d33);color:var(--color-text-on-image)}.confirm-dialog-status{font-size:var(--text-xs);color:var(--color-error,#d33);background:#ff3b301a;background:color-mix(in srgb, var(--color-error,#d33) 10%, transparent);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-3);text-align:center;font-weight:600;line-height:1.4}.confirm-dialog-confirm.has-hold{-webkit-user-select:none;user-select:none;touch-action:none;position:relative;overflow:hidden}.confirm-dialog-confirm-fill{transform-origin:0;pointer-events:none;will-change:transform;background:#ffffff47;position:absolute;inset:0;transform:scaleX(0)}.confirm-dialog-confirm.has-hold .confirm-dialog-confirm-label{z-index:1;position:relative}.confirm-dialog-confirm.is-holding{transform:scale(.98)}.share-choice-dialog{width:min(360px,100%)}.share-choice-dialog .confirm-dialog-title{text-align:center;margin-bottom:var(--space-4)}.share-choice-options{gap:var(--space-2);margin-bottom:var(--space-3);flex-direction:column;display:flex}.share-choice-option{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-secondary);color:var(--color-text-primary);text-align:left;cursor:pointer;transition:background .15s;display:flex}.share-choice-option:active{opacity:.6;transition:transform .2s;transform:scale(.98)}.share-choice-icon{border-radius:var(--radius-md);background:var(--color-bg-card);width:40px;height:40px;color:var(--color-text-primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.share-choice-text{flex-direction:column;gap:2px;display:flex}.share-choice-label{font-size:var(--text-sm);font-weight:700}.share-choice-desc{font-size:var(--text-xs);color:var(--color-text-secondary)}.share-choice-cancel{width:100%}.notification-settings-sheet .page-header{z-index:auto;max-width:none;position:sticky;top:0;left:auto;transform:none}.notification-settings-icon svg{width:20px;height:20px}.notification-settings-list{margin-bottom:var(--space-5);flex-direction:column;display:flex}.notification-settings-row{align-items:center;gap:var(--space-3);min-height:96px;padding:var(--space-4);border-bottom:1px solid var(--color-border-light);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"copy toggle""time time";display:grid}.notification-settings-copy{grid-area:copy;min-width:0}.notification-settings-row-title{font-size:var(--text-base);color:var(--color-text-primary);font-weight:600}.notification-settings-row-subtitle{font-size:var(--text-sm);color:var(--color-text-tertiary);margin-top:2px}.notification-settings-row .toggle{grid-area:toggle}.notification-settings-time-control{gap:var(--space-2);grid-area:time;grid-template-columns:1fr 1fr 1fr;width:100%;min-width:0;display:grid}.notification-settings-time-select{width:100%;min-width:0;padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-secondary);color:var(--color-text-primary);font-family:var(--font-ui);font-size:var(--text-sm);line-height:1.2}.notification-settings-time-select:focus{border-color:var(--color-accent);outline:none}.view-mode-check{width:18px;height:18px;color:var(--color-accent);display:none}.view-mode-option.active .view-mode-check{display:block}.widget-theme-option-group{margin:0 var(--space-5) var(--space-4);flex-direction:column;align-items:center;gap:14px;display:flex}.widget-theme-option{align-items:center;gap:var(--space-3);border:2px solid var(--color-border);background:var(--color-bg-secondary);cursor:pointer;width:100%;max-width:360px;color:var(--color-text-secondary);border-radius:24px;flex-direction:column;padding:14px;transition:border-color .18s,transform .18s,box-shadow .18s;display:flex}.widget-theme-option.active{border-color:var(--color-accent);color:var(--color-text-primary);box-shadow:0 0 0 3px #0000000f}.widget-theme-option:not(.active):active{transform:scale(.97)}.widget-theme-preview{aspect-ratio:1;color:#000;background:#fff;border:8px solid #e2e2e2;border-radius:32px;flex-direction:column;justify-content:space-between;align-items:center;width:min(312px,100%);padding:32px;display:flex;position:relative;box-shadow:0 14px 17.8px -9px #00000069}.widget-preview-top{justify-content:space-between;align-items:flex-start;gap:16px;width:100%;display:flex}.widget-preview-date{flex-direction:column;align-items:flex-start;min-width:0;display:flex}.widget-preview-weekday{letter-spacing:.04em;font-size:28px;font-weight:600;line-height:1}.widget-preview-day{margin-top:10px;font-size:76px;font-weight:600;line-height:.9}.widget-preview-month{color:#333;letter-spacing:.01em;white-space:nowrap;margin-top:22px;font-size:20px;font-weight:600;line-height:1}.widget-preview-envelope{color:#000;flex:none;justify-content:flex-end;align-items:flex-start;width:36px;height:36px;display:inline-flex;position:relative}.widget-preview-envelope-icon{width:34px;height:34px}.widget-preview-dot{background:#ff5a5f;border-radius:50%;width:9px;height:9px;position:absolute;top:-5px;right:-4px}.widget-preview-pen-button{color:#000;background:#fff;border:2px solid #d8d8d8;border-radius:18px;justify-content:center;align-items:center;width:100%;height:72px;display:flex}.widget-preview-pen-icon{width:32px;height:32px}.widget-theme-preview-light{color:#000;background:#fff;border-color:#e2e2e2}.widget-theme-preview-dark{color:#f3f3f4;background:#1b1b1d;border-color:#303036}.widget-theme-preview-dark .widget-preview-month{color:#b7b7bc}.widget-theme-preview-dark .widget-preview-envelope,.widget-theme-preview-dark .widget-preview-pen-button{color:#f3f3f4}.widget-theme-preview-dark .widget-preview-pen-button{background:#242428;border-color:#3a3a40}.widget-theme-sheet-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:4px 0 16px;display:grid}.widget-theme-settings-sheet .widget-theme-option{border-radius:16px;gap:8px;max-width:none;padding:10px}.widget-theme-settings-sheet .widget-theme-preview{border-width:4px;border-radius:20px;width:min(132px,100%);padding:12px;box-shadow:0 10px 13px -10px #0000005c}.widget-theme-settings-sheet .widget-preview-top{gap:8px}.widget-theme-settings-sheet .widget-preview-weekday{font-size:13px}.widget-theme-settings-sheet .widget-preview-day{margin-top:4px;font-size:38px}.widget-theme-settings-sheet .widget-preview-month{margin-top:10px;font-size:9px}.widget-theme-settings-sheet .widget-preview-envelope{width:20px;height:20px}.widget-theme-settings-sheet .widget-preview-envelope-icon{width:18px;height:18px}.widget-theme-settings-sheet .widget-preview-dot{width:5px;height:5px;top:-2px;right:-2px}.widget-theme-settings-sheet .widget-preview-pen-button{border-width:1px;border-radius:10px;height:30px}.widget-theme-settings-sheet .widget-preview-pen-icon{width:16px;height:16px}.card-img-fade{opacity:0;transition:opacity .25s}.card-img-fade.img-loaded{opacity:1}.intro-sheet{flex-direction:column;padding:0;display:flex;position:relative;overflow:hidden}.intro-sheet-handle-area{touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;flex-shrink:0;justify-content:center;align-items:center;padding:14px 0 10px;display:flex}.intro-sheet-handle-area:active{cursor:grabbing}.intro-sheet-handle{border-radius:var(--radius-full);background:var(--color-handle);flex-shrink:0;width:40px;height:5px}.intro-sheet-scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:0;padding:0 var(--space-6) calc(var(--space-8) + env(safe-area-inset-bottom,0px));text-align:center;flex:1;overflow-y:auto}.intro-sheet-close{top:var(--space-2);right:var(--space-3);z-index:1;width:36px;height:36px;color:var(--color-text-tertiary);border-radius:var(--radius-full);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute}.intro-sheet-icon{margin:var(--space-3) 0 var(--space-4);color:var(--color-text-primary);justify-content:center;align-items:center;font-size:2.75rem;line-height:1;display:flex}.intro-sheet-title{font-family:var(--font-ui);font-size:var(--text-xl);color:var(--color-text-primary);margin:0 0 var(--space-3);font-weight:700}.intro-sheet-body{margin:0 auto var(--space-12)}.intro-sheet-line{font-size:var(--text-md);color:var(--color-text-secondary);margin:0 0 var(--space-2);line-height:1.6}.intro-sheet-cta{margin-top:var(--space-2)}.intro-sheet-overlay{opacity:0;transition:opacity .28s;animation:none}.intro-sheet-overlay .intro-sheet{will-change:transform;transition:transform .34s cubic-bezier(.16,1,.3,1);animation:none;transform:translateY(100%)}.intro-sheet-overlay.visible{opacity:1}.intro-sheet-overlay.visible .intro-sheet{transform:translateY(0)}.intro-sheet-overlay .intro-sheet.is-dragging{transition:none}.inquiry-sheet-overlay{opacity:0;z-index:calc(var(--z-overlay) + 1);transition:opacity .28s;animation:none}.inquiry-sheet-overlay .inquiry-sheet{will-change:transform;transition:transform .34s cubic-bezier(.16,1,.3,1);animation:none;transform:translateY(100%)}.inquiry-sheet-overlay.visible{opacity:1}.inquiry-sheet-overlay.visible .inquiry-sheet{transform:translateY(0)}.inquiry-sheet-overlay .inquiry-sheet.is-dragging{transition:none}.inquiry-sheet{flex-direction:column;padding:0;display:flex;position:relative;overflow:hidden}.inquiry-sheet-handle-area{touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;flex-shrink:0;justify-content:center;align-items:center;padding:14px 0 10px;display:flex}.inquiry-sheet-handle-area:active{cursor:grabbing}.inquiry-sheet-handle{border-radius:var(--radius-full);background:var(--color-handle);flex-shrink:0;width:40px;height:5px}.inquiry-sheet-scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:0;padding:0 var(--space-6) calc(var(--space-8) + env(safe-area-inset-bottom,0px));flex:1;overflow-y:auto}.inquiry-sheet-close{top:var(--space-2);right:var(--space-3);z-index:1;width:36px;height:36px;color:var(--color-text-tertiary);border-radius:var(--radius-full);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute}.inquiry-sheet-title{font-family:var(--font-ui);font-size:var(--text-xl);color:var(--color-text-primary);margin:var(--space-2) 0 var(--space-6);font-weight:700}.inquiry-field{margin-bottom:var(--space-5)}.inquiry-label{font-size:var(--text-sm);color:var(--color-text-secondary);margin-bottom:var(--space-2);font-weight:600;display:block}.inquiry-select-wrap{position:relative}.inquiry-custom-select{width:100%;padding:var(--space-3);background:var(--color-bg-secondary);border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-base);color:var(--color-text-primary);cursor:pointer;-webkit-user-select:none;user-select:none;transition:border-color var(--transition-fast);box-sizing:border-box;justify-content:space-between;align-items:center;display:flex}.inquiry-custom-select:focus,.inquiry-custom-select.open{border-color:var(--color-accent);outline:none}.inquiry-custom-select-label{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.inquiry-select-chevron{width:18px;height:18px;color:var(--color-text-tertiary);pointer-events:none;flex-shrink:0;transition:transform .2s}.inquiry-custom-select.open .inquiry-select-chevron{transform:rotate(180deg)}.inquiry-select-options{z-index:calc(var(--z-overlay) + 10);background:var(--color-bg-elevated,var(--color-bg-secondary));border:1.5px solid var(--color-border);border-radius:var(--radius-md);animation:.16s inquiryDropdownIn;position:fixed;overflow:hidden;box-shadow:0 4px 24px #0000002e}@keyframes inquiryDropdownIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.inquiry-select-option{padding:var(--space-3) var(--space-4);font-size:var(--text-base);color:var(--color-text-primary);cursor:pointer;align-items:center;gap:var(--space-2);transition:background var(--transition-fast);display:flex}.inquiry-select-option:hover,.inquiry-select-option:focus{background:var(--color-bg-hover,var(--color-bg-tertiary))}.inquiry-select-option.selected{color:var(--color-accent);font-weight:600}.inquiry-textarea{margin-bottom:0}.inquiry-notice{font-size:var(--text-sm);color:var(--color-text-tertiary);margin:0 0 var(--space-5);line-height:1.5}.inquiry-submit{margin-top:var(--space-2)}.coach-mark{z-index:var(--z-coach);align-items:center;gap:var(--space-2);pointer-events:none;opacity:0;flex-direction:column;transition:opacity .3s,transform .3s;display:flex;position:absolute;bottom:14%;left:50%;transform:translate(-50%)translateY(8px)}.coach-mark.is-visible{opacity:1;transform:translate(-50%)translateY(0)}.coach-pulse{border-radius:var(--radius-full);background:var(--color-accent);width:14px;height:14px;box-shadow:0 0 0 0 var(--color-accent);animation:1.8s ease-out infinite coachPulse;position:relative}@keyframes coachPulse{0%{box-shadow:0 0 #00000059}70%{box-shadow:0 0 0 16px #0000}to{box-shadow:0 0 #0000}}[data-theme=dark] .coach-pulse{animation-name:coachPulseDark}@keyframes coachPulseDark{0%{box-shadow:0 0 #fff6}70%{box-shadow:0 0 0 16px #fff0}to{box-shadow:0 0 #fff0}}.coach-tooltip{background:var(--color-text-primary);color:var(--color-bg-primary);font-size:var(--text-sm);padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);box-shadow:var(--shadow-md);white-space:nowrap;font-weight:600}.nav-item{position:relative}.nav-badge{min-width:16px;height:16px;color:var(--color-text-on-image);background:var(--color-error);border-radius:var(--radius-full);box-shadow:var(--shadow-md);pointer-events:none;justify-content:center;align-items:center;padding:0 4px;font-size:10px;font-weight:700;line-height:1;display:flex;position:absolute;top:4px;right:calc(50% - 22px)}.notif-bell-btn{position:relative}.notif-bell-dot{border-radius:var(--radius-full);background:var(--color-error);width:8px;height:8px;box-shadow:0 0 0 2px var(--color-bg-primary);pointer-events:none;position:absolute;top:6px;right:6px}.notif-center-tabs{gap:var(--space-2);padding:var(--space-2) var(--space-5) var(--space-3);flex-shrink:0;display:flex}.notif-tab{padding:var(--space-3) 0;background:var(--color-bg-secondary);color:var(--color-text-secondary);font-family:var(--font-ui);font-size:var(--text-sm);border-radius:var(--radius-lg);cursor:pointer;border:none;flex:1;font-weight:600;transition:background .2s,color .2s}.notif-tab.active{background:var(--color-accent);color:var(--color-bg-primary)}.notif-center-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:1;min-height:0;overflow-y:auto}.notif-center-list{gap:var(--space-2);padding:0 var(--space-5) var(--space-6);flex-direction:column;display:flex}.notif-center-list[hidden]{display:none}.notif-item{align-items:flex-start;gap:var(--space-3);text-align:left;width:100%;padding:var(--space-4);border:1px solid var(--color-border);background:var(--color-bg-primary);border-radius:var(--radius-lg);cursor:pointer;transition:background .15s;display:flex}.notif-item:active{background:var(--color-bg-secondary)}.notif-item-main{flex:1;min-width:0}.notif-item-title{font-family:var(--font-ui);font-size:var(--text-md);color:var(--color-text-primary);margin-bottom:var(--space-1);align-items:center;gap:var(--space-2);font-weight:600;display:flex}.notif-item-preview{font-size:var(--text-sm);color:var(--color-text-secondary);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;line-height:1.5;display:-webkit-box;overflow:hidden}.notif-item-time{font-size:var(--text-xs);color:var(--color-text-tertiary);flex-shrink:0}.notif-status{font-size:var(--text-xs);padding:2px var(--space-2);border-radius:var(--radius-full);font-weight:600}.notif-status-answered{background:var(--color-accent);color:var(--color-bg-primary)}.notif-item-answer{margin-top:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-bg-secondary);border-radius:var(--radius-md);font-size:var(--text-sm);line-height:1.5}.notif-item-answer-label{color:var(--color-text-primary);margin-bottom:2px;font-weight:700;display:block}.notif-item-answer-text{color:var(--color-text-secondary)}.notif-empty,.notif-loading{text-align:center;padding:var(--space-10) var(--space-5);color:var(--color-text-tertiary);font-size:var(--text-sm)}.notif-load-more{margin:var(--space-3) auto 0;padding:var(--space-3) var(--space-6);border:1px solid var(--color-border);background:var(--color-bg-primary);color:var(--color-text-secondary);font-family:var(--font-ui);font-size:var(--text-sm);border-radius:var(--radius-full);cursor:pointer;font-weight:600}.notif-detail-overlay{opacity:0;transition:opacity .28s;animation:none}.notif-detail-overlay .notif-detail-sheet{will-change:transform;flex-direction:column;padding:0;transition:transform .34s cubic-bezier(.16,1,.3,1);animation:none;display:flex;position:relative;overflow:hidden;transform:translateY(100%)}.notif-detail-overlay.visible{opacity:1}.notif-detail-overlay.visible .notif-detail-sheet{transform:translateY(0)}.notif-detail-overlay .notif-detail-sheet.is-dragging{transition:none}.notif-detail-handle-area{touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;flex-shrink:0;justify-content:center;align-items:center;padding:14px 0 10px;display:flex}.notif-detail-handle-area:active{cursor:grabbing}.notif-detail-handle{border-radius:var(--radius-full);background:var(--color-handle);width:40px;height:5px}.notif-detail-close{top:var(--space-2);right:var(--space-3);z-index:1;width:36px;height:36px;color:var(--color-text-tertiary);border-radius:var(--radius-full);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute}.notif-detail-scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:0;padding:0 var(--space-6) calc(var(--space-8) + env(safe-area-inset-bottom,0px));flex:1;overflow-y:auto}.notif-detail-title{font-family:var(--font-ui);font-size:var(--text-xl);color:var(--color-text-primary);margin:var(--space-2) 0 var(--space-2);font-weight:700}.notif-detail-meta{font-size:var(--text-xs);color:var(--color-text-tertiary);margin-bottom:var(--space-4)}.notif-detail-body{font-size:var(--text-md);color:var(--color-text-secondary);white-space:pre-wrap;word-break:break-word;line-height:1.7}.notif-detail-info{gap:var(--space-2);margin:var(--space-5) 0 0;padding:var(--space-4);background:var(--color-bg-secondary);border-radius:var(--radius-lg);display:grid}.notif-detail-info-row{gap:var(--space-3);grid-template-columns:minmax(92px,.38fr) minmax(0,1fr);align-items:start;display:grid}.notif-detail-info-label{color:var(--color-text-tertiary);font-family:var(--font-ui);font-size:var(--text-xs);margin:0;font-weight:700}.notif-detail-info-value{color:var(--color-text-secondary);font-size:var(--text-sm);word-break:break-word;margin:0;line-height:1.45}.notif-detail-answer{margin-top:var(--space-6);padding:var(--space-4);background:var(--color-bg-secondary);border-radius:var(--radius-lg)}.notif-detail-answer-label{font-family:var(--font-ui);color:var(--color-text-primary);margin-bottom:var(--space-2);font-weight:700}.notif-detail-answer-text{font-size:var(--text-md);color:var(--color-text-secondary);white-space:pre-wrap;word-break:break-word;line-height:1.7}.auth-page{padding:0 var(--space-6);background:var(--color-bg-primary);flex-direction:column;justify-content:center;display:flex;position:relative}.close-auth-btn{top:var(--space-6);right:var(--space-6);width:40px;height:40px;color:var(--color-text-secondary);transition:background var(--transition-fast);z-index:10;background:0 0;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute}.close-auth-btn:active{background:var(--color-bg-primary-pressed)}.auth-logo{text-align:center;margin-top:var(--space-6);margin-bottom:var(--space-12)}.auth-logo-icon{margin-bottom:var(--space-3);font-size:2.5rem}.auth-logo-title{font-family:var(--font-display);font-size:var(--text-4xl);letter-spacing:-.02em;margin:0;font-weight:600}.auth-logo-subtitle{font-family:var(--font-body);font-size:var(--text-md);color:var(--color-text-tertiary);margin-top:var(--space-1)}.auth-form{gap:var(--space-4);flex-direction:column;display:flex}.auth-divider{align-items:center;gap:var(--space-4);margin:var(--space-4) 0;color:var(--color-text-tertiary);font-size:var(--text-sm);display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--color-divider);flex:1;height:1px}.auth-social-btn{justify-content:center;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1.5px solid var(--color-border);background:var(--color-bg-card);transition:background var(--transition-fast), border-color var(--transition-fast);font-weight:500;display:flex}.auth-social-btn:active{background:var(--color-bg-secondary);border-color:var(--color-accent)}.auth-social-btn svg{width:20px;height:20px}.auth-social-btn--apple{color:#fff;background:#000}.auth-social-btn--apple:active{background:#1a1a1a;border-color:#000}[data-theme=dark] .auth-social-btn--apple{color:#000;background:#fff;border-color:#fff}[data-theme=dark] .auth-social-btn--apple:active{background:#e6e6e6}.auth-footer{text-align:center;font-size:var(--text-sm);color:var(--color-text-tertiary);margin-top:var(--space-6)}.auth-version-block{margin-top:var(--space-4)}.auth-footer a,.auth-footer button{color:var(--color-accent);font-weight:600}.editorstory-page,.mystory-page{flex-direction:column;flex:1;height:100%;padding:0;display:flex;overflow:hidden}.editorstory-header{display:none}.editorstory-title{font-family:var(--font-sans);letter-spacing:-.02em;color:var(--color-accent);font-size:1.6rem;font-weight:600}.wheel-pickers-container{background:var(--color-bg-primary);box-shadow:var(--shadow-md);gap:var(--space-1);flex-direction:column;display:flex}.editorstory-page .wheel-pickers-container,.mystory-page .wheel-pickers-container{animation:wheelPickerStatic}@keyframes wheelPickerStatic{0%{transform:translateY(0)}to{transform:translateY(0)}}.wheel-year-label{text-align:center;font-size:var(--text-xs);color:var(--color-text-tertiary);letter-spacing:.08em;pointer-events:none;font-weight:600;line-height:1}.wheel-picker-wrapper{height:40px;position:relative}.wheel-selection-box{background:var(--color-bg-card-dark);pointer-events:none;z-index:1;width:40px;height:32px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}[data-theme=dark] .wheel-selection-box{border:1px solid var(--color-border)}.modern-wheel-scroll{scroll-snap-type:x mandatory;scrollbar-width:none;background-color:var(--color-bg-card);align-items:center;height:100%;padding:0 calc(50% - 20px);display:flex;overflow-x:auto}.modern-wheel-scroll::-webkit-scrollbar{display:none}.wheel-item{scroll-snap-align:center;width:40px;height:32px;font-family:var(--font-body);color:var(--color-text-tertiary);transition:all var(--transition-fast);z-index:2;cursor:pointer;white-space:nowrap;background:0 0;flex-shrink:0;justify-content:center;align-items:center;font-size:.92rem;display:flex}.wheel-item.active{color:var(--color-text-primary);font-weight:600;transform:scale(1)}.wheel-item:active{background:var(--color-bg-card-dark);transform:scale(.9)}.wheel-item.is-read{opacity:.4}.wheel-item.is-read.active{opacity:.65}.editorstory-card-area{padding:var(--space-3) var(--space-3);z-index:10;flex:1;grid-template:"stack"100%/100%;place-items:center;min-height:0;display:grid;position:relative}.empty-story-card{text-align:center;background:var(--color-bg-primary);width:100%;height:100%;color:var(--color-text-primary);flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-story-day-circle{border-radius:var(--radius-full);border:1px dashed var(--color-text-tertiary);width:80px;height:80px;font-family:var(--font-sans);color:var(--color-text-secondary);justify-content:center;align-items:center;font-size:2.2rem;font-weight:400;display:flex}.empty-story-title{font-family:var(--font-sans);font-size:var(--text-lg);color:var(--color-text-secondary);margin-top:var(--space-4);margin-bottom:var(--space-1);letter-spacing:-.01em;font-weight:500}.empty-story-date{font-family:var(--font-sans);font-size:var(--text-xs);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.15em;font-weight:600}.card-swiper{min-width:0;width:var(--card-w);height:var(--card-h);aspect-ratio:var(--card-aspect-ratio);touch-action:pan-y;overscroll-behavior-x:contain;grid-area:stack;max-width:100%;max-height:100%;margin:0 auto}.swiper.card-swiper{overflow:visible}.card-swiper .swiper-slide{justify-content:center;align-items:stretch;height:100%;display:flex}.card-swiper .swiper-slide-active,.card-swiper .swiper-slide-next,.card-swiper .swiper-slide-prev{will-change:transform;backface-visibility:hidden}.card-swiper .swiper-slide-active .flipper,.card-swiper .swiper-slide-next .flipper,.card-swiper .swiper-slide-prev .flipper{will-change:transform}.card-swiper .swiper-slide .flip-container{aspect-ratio:auto;width:100%;min-width:0;max-width:100%;height:100%;margin:0}.card-swiper .swiper-slide .front,.card-swiper .swiper-slide .back{box-shadow:none}.card-swiper .swiper-slide .flipper{width:100%;height:100%;min-height:0}.editorstory-stats{justify-content:center;gap:var(--space-8);margin:var(--space-6) 0;padding:var(--space-4) 0;display:flex}.editorstory-stat{text-align:center}.editorstory-stat-value{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--color-accent);font-weight:600}.editorstory-stat-label{font-size:var(--text-xs);color:var(--color-text-tertiary);margin-top:var(--space-1)}.editorstory-recent-title{font-size:var(--text-base);color:var(--color-text-secondary);margin-bottom:var(--space-4);justify-content:space-between;align-items:center;font-weight:600;display:flex}.editorstory-recent-grid{gap:var(--space-3);grid-template-columns:repeat(3,1fr);display:grid}.detail-page{z-index:var(--z-overlay);pointer-events:none;--detail-backdrop-opacity:1;background:0 0;animation:none;position:fixed;inset:0}.detail-sheet-backdrop{opacity:0;pointer-events:none;background:var(--color-bg-overlay);width:100%;height:100%;transition:opacity var(--transition-base);border:0;position:fixed;inset:0}.detail-page.is-open .detail-sheet-backdrop{opacity:var(--detail-backdrop-opacity);pointer-events:auto}.detail-sheet{top:env(safe-area-inset-top,0px);width:min(100%, var(--mobile-max-width));pointer-events:auto;background:var(--color-bg-primary);border-radius:var(--radius-xl) var(--radius-xl) 0 0;height:auto;box-shadow:var(--shadow-wrapper);transition:transform var(--transition-base);will-change:transform;flex-direction:column;margin:0 auto;display:flex;position:fixed;bottom:0;left:0;right:0;overflow:hidden;transform:translateY(100%)}.detail-page.is-open .detail-sheet{transform:translateY(0)}.detail-sheet.is-dragging{transition:none}.detail-sheet-drag-zone{min-height:48px;padding:var(--space-4) var(--space-4) var(--space-2);cursor:grab;touch-action:none;background:var(--color-bg-primary);box-shadow:var(--shadow-md);flex-shrink:0;position:relative}.detail-sheet-handle{border-radius:var(--radius-full);background:var(--color-border);width:38px;height:4px;margin:0 auto}.detail-sheet-close{top:4px;left:var(--space-4);width:40px;height:40px;color:var(--color-text-secondary);border-radius:var(--radius-full);transition:color var(--transition-fast), background var(--transition-fast), transform var(--transition-fast);justify-content:center;align-items:center;display:flex;position:absolute}.detail-sheet-close:active{color:var(--color-text-primary);background:var(--color-bg-primary-pressed);transform:scale(.96)}.detail-sheet-close svg{width:20px;height:20px}.detail-sheet-scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:1;min-height:0;overflow-y:auto}.detail-loading{justify-content:center;align-items:center;min-height:60vh;display:flex}.detail-hero{aspect-ratio:1;width:100%;position:relative;overflow:hidden}.detail-hero img{object-fit:cover;width:100%;height:100%}.detail-hero-overlay{padding:var(--space-8) var(--space-5) var(--space-5);color:#fff;background:linear-gradient(#0000 0%,#000000d9 100%);position:absolute;bottom:0;left:0;right:0}.detail-hero-year{font-family:var(--font-display);font-size:var(--text-3xl);letter-spacing:-.03em;font-weight:900;line-height:1}.detail-hero-monthday{font-family:var(--font-display);font-size:var(--text-5xl);letter-spacing:-.04em;font-weight:900;line-height:.9}.detail-content{padding:var(--space-6) var(--space-5)}.detail-title-row{justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-5);display:flex}.detail-title-row .detail-figure-name{flex:1;min-width:0;margin-bottom:0}.detail-title-actions{gap:var(--space-1);flex-shrink:0;display:flex}.detail-figure-name{font-family:var(--font-heading);font-size:var(--text-2xl);margin-bottom:var(--space-5);align-self:center;font-weight:600;line-height:1.3}.detail-body{font-family:var(--font-body);font-size:var(--text-base);letter-spacing:-.01em;color:var(--color-text-primary);word-break:keep-all;line-height:1.75}.detail-body p{margin-bottom:var(--space-5)}.detail-historical-date{text-align:right;font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text-tertiary);margin-top:var(--space-8);padding-top:var(--space-4);border-top:1px solid var(--color-divider)}.detail-editor-note{margin-top:var(--space-6);padding:var(--space-5);border:1px solid var(--color-divider);border-radius:var(--radius-xl);background:var(--color-bg-secondary)}.detail-editor-note-label{border-radius:var(--radius-full);background:var(--color-editor-comment);color:var(--color-text-on-editor-comment);font-size:var(--text-xs);letter-spacing:.02em;align-items:center;padding:6px 10px;font-weight:600;display:inline-flex}.detail-editor-note-header{align-items:center;gap:var(--space-3);display:flex}.detail-editor-avatar-wrap{background:#0000000f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex;overflow:hidden}.detail-editor-avatar{object-fit:cover;width:100%;height:100%}.detail-editor-avatar-fallback{font-size:1rem;line-height:1}.detail-editor-name{font-size:var(--text-sm);color:var(--color-text-primary);font-weight:600}.detail-editor-note-text{margin-top:var(--space-4);font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text-primary);word-break:keep-all;line-height:1.75}.detail-sources{margin-top:var(--space-6);padding:var(--space-5);background:var(--color-bg-secondary);border-radius:var(--radius-lg)}.detail-sources-title{font-size:var(--text-sm);color:var(--color-text-secondary);margin-bottom:var(--space-3);font-weight:600}.detail-source-item{align-items:center;gap:var(--space-3);padding:var(--space-2) 0;font-size:var(--text-sm);color:var(--color-accent);display:flex}.detail-actions-bar{padding:var(--space-4) var(--space-5);border-top:1px solid var(--color-divider);margin-top:var(--space-4);justify-content:space-around;align-items:center;display:flex}.detail-action-btn{align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--color-text-tertiary);transition:color var(--transition-fast);flex-direction:column;margin:-8px -16px;padding:8px 16px;display:flex}.detail-action-btn svg{width:22px;height:22px}.detail-action-btn.active{color:var(--color-accent)}.detail-action-btn:active{transform:scale(1.1)}.archive-page{padding:var(--space-4) var(--space-4) 82px;gap:var(--space-4);flex-direction:column;display:flex}.archive-search{margin-bottom:0}.archive-section-header{align-items:center;gap:var(--space-4);width:100%;display:flex}.archive-section-header .archive-toggle{flex:1;width:auto;min-width:0;margin-bottom:0}.archive-toggle .calendar-toggle-btn svg{width:var(--space-5);height:var(--space-5);flex:none}.archive-section-header .archive-search{min-width:0;padding:var(--space-3) var(--space-3);box-sizing:border-box;flex:1.6;margin-bottom:0}.archive-section-header .archive-search svg{width:15px;height:15px}.archive-section-header .archive-search input{font-size:var(--text-sm);width:100%}.mini-card-no-image{background:var(--color-bg-secondary);width:100%;height:100%}.search-bar .search-clear{background:var(--color-text-tertiary);width:18px;height:18px;color:var(--color-bg-secondary);border-radius:var(--radius-full);cursor:pointer;transition:opacity var(--transition-fast);border:none;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex}.search-bar .search-clear[hidden]{display:none}.search-bar .search-clear:hover,.search-bar .search-clear:focus-visible{opacity:.85;outline:none}.search-bar .search-clear svg{width:12px;height:12px;color:inherit;flex-shrink:0}.archive-grid{gap:var(--space-4);width:100%;padding-bottom:var(--space-8);grid-template-columns:repeat(2,1fr);display:grid}.archive-month-header{font-family:var(--font-display);font-size:var(--text-lg);padding:var(--space-4) 0 var(--space-2);color:var(--color-text-secondary);grid-column:1/-1;font-weight:600}.search-page{padding:var(--space-5)}.search-bar{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--color-bg-secondary);border-radius:var(--radius-full);border:1.5px solid var(--color-border);margin-bottom:var(--space-5);transition:border-color var(--transition-fast);display:flex;overflow:hidden}.search-bar:focus-within{border-color:var(--color-accent)}.search-bar svg{width:18px;height:18px;color:var(--color-text-tertiary);flex-shrink:0}.search-bar input{font-size:var(--text-base);flex:1}.search-results{gap:var(--space-3);flex-direction:column;display:flex}.search-result-item{gap:var(--space-4);padding:var(--space-3);border-radius:var(--radius-md);transition:background var(--transition-fast);cursor:pointer;display:flex}.search-result-item:active{background:var(--color-bg-primary-pressed)}.search-result-thumb{border-radius:var(--radius-md);flex-shrink:0;width:72px;height:72px;overflow:hidden}.search-result-thumb img{object-fit:cover;width:100%;height:100%}.search-result-info{flex-direction:column;flex:1;justify-content:center;min-width:0;display:flex}.search-result-date{font-family:var(--font-display);font-size:var(--text-xs);color:var(--color-text-tertiary);margin-bottom:var(--space-1);font-weight:600}.search-result-title{font-size:var(--text-base);margin-bottom:var(--space-1);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-weight:600;display:-webkit-box;overflow:hidden}.search-result-summary{font-size:var(--text-sm);color:var(--color-text-tertiary);-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.settings-page{flex:1;padding-bottom:0}.settings-user-info{padding:var(--space-8) var(--space-3) var(--space-6) var(--space-6)}.settings-user-row{align-items:center;gap:var(--space-4);min-width:0;display:flex}.profile-avatar-wrap{width:56px;height:56px;color:var(--color-text-tertiary);background:var(--color-bg-secondary);border-radius:50%;flex:0 0 56px;justify-content:center;align-items:center;display:flex;overflow:hidden}.profile-avatar-wrap img{object-fit:cover;width:100%;height:100%}.profile-avatar-wrap svg{flex:0 0 32px;width:32px;height:32px}.settings-user-meta{flex:1;min-width:0}.settings-user-name{align-items:center;gap:var(--space-2);min-width:0;font-size:var(--text-base);color:var(--color-text-primary);font-weight:600;display:flex}.settings-user-email{color:var(--color-text-secondary);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;overflow:hidden}.settings-user-badge{height:20px;padding:0 var(--space-2);color:var(--color-text-inverse);background:var(--color-accent);border-radius:var(--radius-full);font-size:var(--text-xs);align-items:center;font-weight:600;display:inline-flex}.settings-user-cta{width:100%;margin-top:var(--space-4)}.settings-section{margin-bottom:var(--space-4)}.settings-section-title{padding:var(--space-4) var(--space-5) 0;font-family:var(--font-sans);font-size:var(--text-sm);color:var(--color-accent);text-transform:uppercase;letter-spacing:.1em;font-weight:600}.theme-option-group{margin:var(--space-4) var(--space-5);background:var(--color-bg-card-dark);border:1px solid var(--color-border);border-radius:var(--radius-lg);gap:4px;padding:4px;display:flex;position:relative}.theme-option{justify-content:center;align-items:center;gap:var(--space-1);padding:var(--space-3) 0;border-radius:calc(var(--radius-lg) - 2px);cursor:pointer;color:var(--color-text-tertiary);z-index:2;background:0 0;border:0;flex-direction:column;flex:1;font-size:small;font-weight:600;transition:all .4s;display:flex;position:relative}.theme-option svg{stroke-width:2px;width:20px;height:20px}.theme-option:not(.lang-option) .theme-option-label{display:none}.theme-option.active{color:var(--color-text-on-light-segment)}.theme-option:not(.active):active{background:var(--color-bg-primary-pressed);color:var(--color-accent);transition:all .1s;transform:scale(.96)}.theme-option-thumb{border-radius:calc(var(--radius-lg) - 2px);z-index:1;background:#fff;width:calc(33.3333% - 5.33333px);transition:transform .25s cubic-bezier(.4,0,.2,1);display:block;position:absolute;top:4px;bottom:4px;left:4px;box-shadow:0 1px 3px #0000002e,0 .5px #0000000f}.theme-option-group[data-active="1"] .theme-option-thumb{transform:translate(calc(100% + 4px))}.theme-option-group[data-active="2"] .theme-option-thumb{transform:translate(calc(200% + 8px))}.theme-option-group--disabled{opacity:.4;pointer-events:none}.report-page{padding:var(--space-6) var(--space-5)}.report-category-group{gap:var(--space-2);margin-bottom:var(--space-5);flex-direction:column;display:flex}.report-category{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1.5px solid var(--color-border);cursor:pointer;transition:all var(--transition-fast);display:flex}.report-category.selected{border-color:var(--color-accent);background:#c4a2650f}.report-category-radio{border:2px solid var(--color-border);width:20px;height:20px;transition:all var(--transition-fast);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.report-category.selected .report-category-radio{border-color:var(--color-accent)}.report-category.selected .report-category-radio:after{content:"";background:var(--color-accent);border-radius:50%;width:10px;height:10px}.report-textarea{width:100%;min-height:120px;padding:var(--space-4);background:var(--color-bg-secondary);border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-base);resize:none;transition:border-color var(--transition-fast);line-height:1.6}.report-textarea:focus{border-color:var(--color-accent)}.editor-page{padding:var(--space-3) var(--space-4) var(--space-6);gap:var(--space-2);flex-direction:column;display:flex}.editor-calendar-title-row{align-items:center;gap:var(--space-2);grid-template-columns:36px minmax(0,1fr) 36px;width:100%;display:grid}.editor-stats{border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-bg-secondary);align-self:center;width:min(100%,340px);margin:0;padding:4px;display:inline-flex}.editor-stat{text-align:center;min-height:32px;color:var(--color-text-secondary);border-radius:var(--radius-full);cursor:pointer;transition:color var(--transition-fast), background var(--transition-fast);font:inherit;background:0 0;border:0;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:2px 4px;display:inline-flex}.editor-stat.active{color:var(--color-bg-primary);background:var(--color-accent)}.editor-stat-value{font-family:var(--font-sans);font-size:var(--text-xs);color:currentColor;letter-spacing:0;font-weight:600}.editor-stat-label{font-size:var(--text-xs);color:currentColor;margin-top:0;font-weight:600}.editor-month-nav{margin-top:var(--space-1)}.editor-batch-bar{margin-top:var(--space-2);justify-content:center;display:flex}.editor-batch-bar[hidden]{display:none}.editor-batch-btn{width:min(100%,340px);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);justify-content:center;align-items:center;gap:8px;margin:0;display:inline-flex}.editor-batch-btn:disabled{opacity:.5;cursor:not-allowed}.editor-batch-btn.is-running{opacity:.85;cursor:progress}.editor-batch-btn.is-running:after{content:"";opacity:.75;border:2px solid;border-top-color:#0000;border-radius:50%;flex:none;width:14px;height:14px;animation:.7s linear infinite spin}.editor-calendar-grid{grid-template-columns:repeat(7,1fr);gap:0;padding:0;display:grid}.editor-calendar-cell{aspect-ratio:3/4;background:var(--color-bg-card);border:1px solid var(--color-border);color:var(--color-text-primary);cursor:pointer;border-radius:0;flex-direction:column;padding:4px 4px 0;display:flex;position:relative;overflow:hidden}.editor-calendar-grid .cal-cell{aspect-ratio:2/3.8;flex-direction:column;display:flex}.editor-calendar-cell:not(.editor-calendar-cell-blank):active{transform:scale(.96)}.editor-calendar-cell-blank{cursor:default;background:0 0;border:0}.editor-calendar-cell-empty{background:var(--color-bg-card)}.editor-calendar-cell.cal-cell .cal-cell-day.cal-cell-day-translated{color:var(--color-success)}.editor-calendar-stories{flex-direction:column;gap:3px;min-height:0;margin-top:4px;display:flex}.editor-calendar-story{min-width:0;color:inherit;text-align:left;cursor:pointer;font:inherit;background:0 0;border:0;grid-template-columns:1fr;gap:2px;padding:0;display:grid}.editor-calendar-thumb{aspect-ratio:4/3;background:var(--color-bg-secondary);justify-content:center;align-items:center;width:100%;display:flex;overflow:hidden}.editor-calendar-thumb img{object-fit:cover;width:100%;height:100%;display:block}.editor-calendar-story-title{white-space:nowrap;text-overflow:ellipsis;font-size:.6rem;font-weight:600;line-height:1.15;overflow:hidden}.editor-calendar-story-meta{color:var(--color-text-tertiary);white-space:nowrap;text-overflow:ellipsis;font-size:.62rem;line-height:1;overflow:hidden}.editor-calendar-story .badge{width:fit-content;padding:1px 5px;font-size:.58rem;line-height:1.2}.editor-calendar-actions{display:none}.editor-new-page{z-index:var(--z-modal);width:100%;height:100%;margin-top:48px;margin-bottom:calc(env(safe-area-inset-bottom,0px) + var(--space-2));background:var(--color-bg-primary);animation:.35s ease-out editorFadeIn;position:absolute;inset:0}@keyframes editorFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.editor-new-header{z-index:var(--z-nav);width:min(100%, var(--mobile-max-width));box-sizing:border-box;padding:calc(env(safe-area-inset-top,0px) + var(--space-2)) var(--space-4) var(--space-2);background:var(--color-bg-primary);border-bottom:1px solid var(--color-border-light);align-items:center;display:flex;position:fixed;top:0}.story-form{gap:var(--space-3);padding:0 var(--space-4) var(--space-4);flex-direction:column;display:flex}.editor-form-section{padding-bottom:calc(9rem + env(safe-area-inset-bottom,0px))}.editor-lang-tabs{gap:var(--space-1);margin:var(--space-1) 0;flex-wrap:wrap;display:flex}.editor-lang-tab{min-width:0;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-bg-secondary);color:var(--color-text-secondary);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast);flex:1 1 0;font-weight:500}.editor-lang-tab:active{transform:scale(.97)}.editor-lang-tab.active{background:var(--color-accent);color:var(--color-text-inverse);border-color:var(--color-accent)}.editor-lang-hint{font-size:var(--text-xs);color:var(--color-text-tertiary);margin-bottom:var(--space-3);padding:0 var(--space-1)}.editor-preview-section{padding:var(--space-4) var(--space-6);justify-content:center;align-items:center;display:flex;position:relative}.preview-scale-wrapper{width:252px;max-width:100%;box-shadow:var(--shadow-card);overflow:hidden}.preview-scale-wrapper .flip-container{aspect-ratio:var(--card-aspect-ratio);zoom:.7;width:360px!important;max-width:360px!important}.preview-scale-wrapper .flipper:active,.preview-scale-wrapper .flipper.flipped:active{transform:none}.preview-scale-wrapper .flipper.flipped:active{transform:rotateY(180deg)}.skeleton-card{width:100%;aspect-ratio:var(--card-aspect-ratio);background:var(--color-bg-card);box-shadow:var(--shadow-card);animation:1.5s ease-in-out infinite pulse;position:relative;overflow:hidden}@keyframes pulse{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}.editorstory-card-area>.skeleton-card{width:var(--card-w);height:var(--card-h);grid-area:stack;max-width:100%;max-height:100%;margin:0 auto}.skeleton-card.is-hiding{opacity:0;pointer-events:none;transition:opacity .3s;animation:none}.loading-spinner{border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.btn-translating{align-items:center;gap:8px;display:inline-flex}.btn-spinner{opacity:.75;border:2px solid;border-top-color:#0000;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite spin;display:inline-block}.mystory-write-btn{font-size:var(--text-md);margin-top:var(--space-10);padding:var(--space-4) var(--space-8);border-radius:var(--radius-full)}.mystory-empty-hint{margin-top:var(--space-6);font-size:var(--text-sm);color:var(--color-text-secondary);font-weight:600}.mystory-empty-hint+.mystory-write-btn{margin-top:var(--space-3)}.mystory-write-btn.is-pulsing{animation:1.9s ease-out infinite writeBtnPulse}@keyframes writeBtnPulse{0%{box-shadow:0 0 #00000040}70%{box-shadow:0 0 0 12px #0000}to{box-shadow:0 0 #0000}}[data-theme=dark] .mystory-write-btn.is-pulsing{animation-name:writeBtnPulseDark}@keyframes writeBtnPulseDark{0%{box-shadow:0 0 #ffffff4d}70%{box-shadow:0 0 0 12px #fff0}to{box-shadow:0 0 #fff0}}.mystory-flipper .front,.mystory-flipper .back{background:var(--color-bg-card);overflow:hidden}.mystory-card-year{font-size:var(--text-2xl)}.mystory-form-delete-btn{color:var(--color-error);border-color:#dc354552}.mystory-form-delete-btn:active{background:#dc35451a}.mystory-form-inline-actions{margin-top:var(--space-2);justify-content:flex-end;display:flex}.mystory-form-section{padding-top:var(--space-4);padding-bottom:calc(220px + env(safe-area-inset-bottom,0px))}.ms-image-upload-area{aspect-ratio:3/4;border:1px dashed var(--color-border);cursor:pointer;background:var(--color-bg-primary);width:100%;transition:border-color var(--transition-fast), background var(--transition-fast);-webkit-tap-highlight-color:transparent;box-shadow:var(--shadow-card);border-radius:2px;align-self:center;position:relative;overflow:hidden}.ms-image-upload-area:active{border-color:var(--color-border);background:var(--color-bg-card)}.ms-image-upload-placeholder{justify-content:center;align-items:center;gap:var(--space-3);height:100%;color:var(--color-text-tertiary);pointer-events:none;flex-direction:column;display:flex}.ms-image-upload-placeholder svg{opacity:.45}.ms-image-upload-placeholder span{font-size:var(--text-sm);letter-spacing:.01em;font-weight:500}.ms-image-upload-preview{object-fit:cover;pointer-events:none;width:100%;height:100%;display:block}.mystory-form-actions{z-index:var(--z-nav);gap:var(--space-3);width:min(100%, var(--mobile-max-width));box-sizing:border-box;padding:var(--space-2) var(--space-8);padding-bottom:env(safe-area-inset-bottom,0px);background:var(--color-bg-primary);border-top:1px solid var(--color-divider);flex-direction:column;margin:0 auto;display:flex;position:fixed;bottom:0;left:0;right:0}.mystory-form-actions #ms-save-btn{font-size:var(--text-md);justify-content:center;align-items:center;gap:var(--space-2);display:flex}.editor-form-actions{z-index:var(--z-nav);gap:var(--space-3);width:min(100%, var(--mobile-max-width));box-sizing:border-box;padding:var(--space-2) var(--space-5);padding-bottom:calc(env(safe-area-inset-bottom,0px) + var(--space-2));background:var(--color-bg-primary);border-top:1px solid var(--color-divider);margin:0 auto;display:flex;position:fixed;bottom:0;left:0;right:0}.editor-form-actions-row{gap:var(--space-3);display:flex}.profile-edit-btn{width:40px;height:40px;color:var(--color-text-tertiary);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:all .4s;display:flex}.profile-edit-btn:active{background:var(--color-bg-primary-pressed);transition:all .1s}.profile-edit-overlay{z-index:var(--z-overlay);padding:var(--space-4);background:var(--color-bg-overlay);opacity:0;touch-action:none;overscroll-behavior:contain;box-sizing:border-box;justify-content:center;align-items:center;transition:opacity .18s;display:flex;position:fixed;inset:0}.profile-edit-overlay.visible{opacity:1}.profile-edit-modal{width:100%;max-width:360px;max-height:calc(100dvh - var(--space-8));background:var(--color-bg-primary);border-radius:var(--radius-lg);flex-direction:column;transition:transform .18s cubic-bezier(.16,1,.3,1);display:flex;overflow:hidden;transform:scale(.96);box-shadow:0 12px 32px #0000002e}.profile-edit-overlay.visible .profile-edit-modal{transform:scale(1)}.profile-edit-header{padding:var(--space-2) var(--space-4) var(--space-2) var(--space-5);border-bottom:1px solid var(--color-divider);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.profile-edit-title{font-size:var(--text-md);color:var(--color-text-primary);font-weight:600}.profile-edit-close{width:32px;height:32px;color:var(--color-text-secondary);cursor:pointer;transition:background var(--transition-fast);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex}.profile-edit-close:active{background:var(--color-bg-primary-pressed)}.profile-edit-body{overscroll-behavior:contain;flex:auto;overflow-y:auto}.profile-edit-actions{gap:var(--space-4);padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-divider);flex-shrink:0;display:flex}.profile-edit-cancel,.profile-edit-save{padding:var(--space-3) var(--space-4);font-size:var(--text-sm);border-radius:var(--radius-md);cursor:pointer;transition:opacity var(--transition-fast), background var(--transition-fast);flex:1;font-weight:600}.profile-edit-cancel{color:var(--color-text-primary);background:var(--color-bg-secondary);border:1px solid var(--color-border)}.profile-edit-cancel:active{background:var(--color-border)}.profile-edit-save{color:var(--color-bg-primary);background:var(--color-accent);border:1px solid #0000}.profile-edit-save:disabled{opacity:.5;cursor:default}.profile-edit-avatar-section{padding:var(--space-5) 0 var(--space-4);flex-direction:column;align-items:center;display:flex}.profile-edit-avatar{width:100px;height:100px;color:var(--color-text-tertiary);background:var(--color-bg-secondary);border-radius:50%;justify-content:center;align-items:center;display:flex;overflow:hidden}.profile-edit-avatar img{object-fit:cover;width:100%;height:100%}.profile-edit-avatar svg{width:40px;height:40px}.profile-edit-avatar-wrap{display:inline-flex;position:relative}.profile-edit-photo-icon{background:var(--color-bg-primary);width:28px;height:28px;color:var(--color-text-primary);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;bottom:2px;right:2px;box-shadow:0 0 6px #0006}.profile-edit-photo-icon:active{background:var(--color-bg-primary-pressed)}.profile-edit-field{padding:0 var(--space-4) var(--space-4);gap:var(--space-2)}.profile-edit-label{margin-bottom:var(--space-2);font-size:var(--text-sm);color:var(--color-text-secondary);font-weight:600;display:block}.profile-edit-input{width:100%;padding:var(--space-3) var(--space-4);font-size:var(--text-base);color:var(--color-text-primary);background:var(--color-bg-secondary);border:1.5px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition-fast);outline:none;display:block}.profile-edit-input:focus{border-color:var(--color-accent)}.profile-edit-hint{margin-top:var(--space-1);font-size:var(--text-xs);color:var(--color-text-tertiary)}.profile-logout-btn{width:auto;min-width:120px;margin:auto;margin-top:var(--space-6);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);color:var(--color-error);border:1.5px solid var(--color-error);border-radius:var(--radius-md);cursor:pointer;transition:opacity var(--transition-fast), background var(--transition-fast);background:0 0;font-weight:600;display:block}.profile-logout-btn:active{opacity:.5}.calendar-page{padding:var(--space-3) var(--space-3) var(--space-6);gap:var(--space-3);flex-direction:column;display:flex}.calendar-header{align-items:center;gap:var(--space-3);flex-direction:column;display:flex}.calendar-title{font-family:var(--font-display,var(--font-sans));font-size:var(--text-xl);letter-spacing:-.02em;text-align:center;width:100%;margin:0;font-weight:600}.calendar-toggle{background:var(--color-bg-card-dark);border:1px solid var(--color-border);border-radius:var(--radius-full);align-self:center;gap:4px;width:min(100%,240px);padding:4px;display:inline-flex;position:relative}.calendar-toggle-btn{z-index:2;padding:var(--space-2) 0;border-radius:var(--radius-full);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--color-text-tertiary);text-align:enter;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex:1 1 0;justify-content:center;align-items:center;font-weight:600;transition:all .4s;display:flex;position:relative}.calendar-toggle-btn.active{color:var(--color-text-on-light-segment);border-radius:var(--radius-full)}.calendar-toggle-btn:not(.active):active{background:var(--color-bg-primary-pressed);transition:all .1s;transform:scale(.96)}.calendar-toggle-thumb{border-radius:var(--radius-full);z-index:1;background:#fff;width:calc(50% - 6px);transition:transform .25s cubic-bezier(.4,0,.2,1);display:block;position:absolute;top:4px;bottom:4px;left:4px;box-shadow:0 1px 3px #0000002e,0 .5px #0000000f}.calendar-toggle[data-mode=mine] .calendar-toggle-thumb{transform:translate(calc(100% + 4px))}.calendar-month-nav{justify-content:center;align-items:center;gap:var(--space-4);padding:var(--space-1) 0;display:flex}.calendar-month-arrow{width:36px;height:36px;color:var(--color-text-primary);border-radius:var(--radius-full);cursor:pointer;transition:background var(--transition-fast), opacity var(--transition-fast);background:0 0;border:0;justify-content:center;align-items:center;display:flex}.calendar-month-arrow:active{background:var(--color-bg-primary-pressed)}.calendar-month-arrow:disabled,.calendar-month-arrow.disabled{opacity:.3;cursor:default;pointer-events:none}.calendar-month-label{text-align:center;min-width:9rem;font-family:var(--font-sans);font-size:var(--text-lg);letter-spacing:-.01em;font-weight:700}.calendar-weekdays{text-align:center;font-size:var(--text-xs);color:var(--color-text-tertiary);letter-spacing:.04em;grid-template-columns:repeat(7,1fr);font-weight:600;display:grid}.calendar-weekday{padding:4px 0}.calendar-weekday.sun{color:var(--color-sunday)}.calendar-weekday.sat{color:var(--color-saturday)}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:1px;display:grid}.calendar-grid-loading{padding:var(--space-8);grid-column:1/-1;justify-content:center;display:flex}.cal-cell{aspect-ratio:1/1.5;background-color:var(--color-bg-card);cursor:pointer;text-align:left;font:inherit;color:var(--color-text-primary);transition:transform var(--transition-fast), border-color var(--transition-fast);border:2px solid #0000;flex-direction:column;align-items:stretch;gap:2px;padding:2px;display:flex;position:relative;overflow:hidden}.cal-cell:not(:disabled):active{transform:scale(.96)}.cal-cell-blank{cursor:default;background:var(--color-bg-card-dark);border:0;transform:scale(1)}.cal-cell-empty{cursor:default}.cal-cell-mine-write{cursor:pointer}.cal-cell-has-story{border-color:var(--color-border-light);box-shadow:var(--shadow-sm)}.cal-cell-future .cal-cell-day{opacity:.35}.cal-cell.is-read .cal-cell-day{opacity:.5}.cal-cell.is-read .cal-cell-peek-img,.cal-cell.is-read .cal-cell-peek-title{opacity:.55}.cal-cell-today{border:2px solid var(--color-text-secondary)}.cal-cell-write-prompt{opacity:.35;flex:1;justify-content:center;align-items:center;display:flex}.cal-cell-write-prompt svg{width:20px;height:20px;color:var(--color-text-primary)}.cal-cell-day{z-index:2;font-family:var(--font-body,var(--font-sans));color:var(--color-text-primary);font-size:var(--text-xs);min-height:var(--text-xs);padding:1px 2px 0;font-weight:600;line-height:1}.cal-cell.sun .cal-cell-day,.cal-cell.sat .cal-cell-day{color:var(--color-text-primary)}.cal-cell-peek{aspect-ratio:4/5;background:var(--color-bg-card-dark);pointer-events:none;flex:none;width:100%;display:block;position:relative;overflow:hidden}.cal-cell-peek-img{object-fit:contain;object-position:center;width:100%;height:100%;display:block}.cal-cell-peek-title{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.calendar-card-popup{z-index:var(--z-modal,200);padding:var(--space-5);padding-top:calc(var(--space-5) + var(--safe-area-top));padding-bottom:calc(var(--space-5) + env(safe-area-inset-bottom,0px));background:var(--color-bg-overlay);-webkit-backdrop-filter:blur(4px);opacity:0;pointer-events:none;touch-action:none;justify-content:center;align-items:center;transition:all .2s ease-in-out;display:flex;position:fixed;inset:0}.calendar-card-popup.open{opacity:1;pointer-events:auto;transition:all .2s ease-in}.calendar-card-popup-inner{align-items:center;gap:var(--space-3);flex-direction:column;width:100%;max-width:400px;min-height:0;max-height:100%;transition:transform .5s;display:flex;position:relative;transform:translateY(24px)scale(.9)}.calendar-card-popup.open .calendar-card-popup-inner{transform:translateY(0)scale(1)}.calendar-card-popup-close{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);width:36px;height:36px;transition:background var(--transition-fast);background:#ffffff1f;border:0;border-radius:50%;justify-content:center;align-self:flex-end;align-items:center;display:flex}.calendar-card-popup-close:active{background:#ffffff38}.calendar-card-popup-stage{flex:auto;justify-content:center;align-items:center;width:100%;min-height:0;transition:opacity .18s ease-in;display:flex}.calendar-card-popup-stage.popup-card-fading{opacity:0;transition:all 50ms}.calendar-card-popup-stage .flip-container{min-width:0;width:var(--card-w);height:var(--card-h);aspect-ratio:var(--card-aspect-ratio);max-width:100%;max-height:100%}.calendar-card-popup .back-footer{justify-content:flex-end}.calendar-card-popup .back-date-actions{align-items:flex-end;max-width:58%;margin-left:auto}.calendar-card-popup .card-detail-shortcut-btn{max-width:100%}.calendar-card-popup-hint{font-size:var(--text-xs);color:#ffffffbf;letter-spacing:.02em}.calendar-card-popup-nav{font-size:var(--text-xs);color:#ffffff80;letter-spacing:.04em;text-align:center;min-height:1em}.cal-cell-locked-overlay{z-index:3;pointer-events:none;background:#00000073;position:absolute;inset:0}.cal-cell-peek--locked{filter:grayscale()}.card-locked-overlay{z-index:5;border-radius:inherit;pointer-events:none;background:#00000059;position:absolute;inset:0}.card-collect-bar{padding:var(--space-2) var(--space-3) var(--space-1);justify-content:center;display:flex}.collect-btn{background:var(--color-accent);color:var(--color-text-inverse);border-radius:var(--radius-full);padding:var(--space-2) var(--space-5);font-size:var(--text-sm);cursor:pointer;letter-spacing:.03em;border:none;font-weight:600;transition:transform .16s,background .16s}.collect-btn:active:not(:disabled){transform:scale(.95)}.collect-btn--done{background:var(--color-success);cursor:default;color:var(--color-text-on-image)}.collect-btn:disabled{opacity:.85}.settings-main-header{text-align:center;padding:var(--space-4) var(--space-5) var(--space-2);justify-content:center}.settings-main-header .page-header-title{font-size:var(--text-2xl);margin:0;font-weight:600}.settings-page .page-header{height:48px;padding-top:0;padding-bottom:0;padding-left:var(--space-4);padding-right:var(--space-4)}.settings-page .page-header-title{margin:0;line-height:1}.settings-row-danger{color:var(--color-error)}.settings-row-muted{color:var(--color-text-tertiary)}.settings-privacy-link{margin-top:var(--space-2);text-align:center;margin-bottom:var(--space-2)}.settings-privacy-link a{color:var(--color-text-tertiary);font-size:var(--text-xs);opacity:.8;text-decoration:underline}.settings-version{color:var(--color-text-tertiary);font-size:var(--text-xs);text-align:center;padding-bottom:var(--space-1)}.settings-subsection-title{font-size:var(--text-xs);color:var(--color-text-tertiary);margin:var(--space-3) var(--space-5) var(--space-2);letter-spacing:.04em;font-weight:600}.detail-attribution{margin-top:var(--space-6);gap:var(--space-3);flex-direction:column;display:flex}.detail-license,.detail-sources{padding:var(--space-5);background:var(--color-bg-secondary);border-radius:var(--radius-lg)}.detail-attribution .detail-sources{margin-top:0}.detail-license-text,.detail-source-text{font-size:var(--text-sm);color:var(--color-text-secondary);word-break:break-word;line-height:1.6}.detail-source-text{align-items:center;gap:var(--space-3);padding:var(--space-2) 0;display:flex}.detail-license-value{font-size:var(--text-xs);opacity:.8}.btn-crop-cancel{left:var(--space-2);width:40px;height:40px;padding:var(--space-2);color:var(--color-text-primary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.btn-crop-cancel svg{width:24px;height:24px}.about-page{padding-bottom:var(--space-10);padding-top:48px}.about-page .page-header{padding:var(--space-3) var(--space-5)}.about-article{padding:var(--space-4) var(--space-4) var(--space-12);align-items:center;gap:var(--space-5);text-align:center;flex-direction:column;max-width:32rem;margin:0 auto;display:flex}.about-article-title{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--color-text-primary);letter-spacing:-.01em;text-align:center;margin:0;font-weight:600;line-height:1.3}.about-article-body{gap:var(--space-3);color:var(--color-text-primary);font-size:var(--text-sm);text-align:center;flex-direction:column;width:100%;line-height:1.25;display:flex}.about-article-body p{margin:0}.about-article-signature{margin-top:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--color-divider);color:var(--color-text-secondary);font-size:var(--text-sm);text-align:center;width:100%}.view-toggle-btn{background:var(--color-accent-dark);border-radius:var(--radius-md);width:52px;height:42px;box-shadow:var(--shadow-md);cursor:pointer;z-index:10;color:var(--color-text-inverse);-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;transition:all .4s;display:flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.view-toggle-btn:active{background:var(--color-accent-light);transition:all .1s;transform:translateY(-50%)scale(.88)}.page-calendar-view{padding:var(--space-1) var(--space-3) var(--space-6);gap:var(--space-1);flex-direction:column;flex:1;display:flex;overflow-y:auto}.calendar-page-title{font-size:var(--text-sm);color:var(--color-text-primary);margin-top:var(--space-1);text-align:center;font-weight:400}@keyframes viewEnter{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes viewExit{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-6px)}}.view-enter{animation:.22s forwards viewEnter}.view-exit{animation:.18s forwards viewExit}@font-face{font-family:swiper-icons;src:url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA");font-weight:400;font-style:normal}:root{--swiper-theme-color:#007aff}:host{z-index:1;margin-left:auto;margin-right:auto;display:block;position:relative}.swiper{z-index:1;margin-left:auto;margin-right:auto;padding:0;list-style:none;display:block;position:relative;overflow:hidden}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{z-index:1;width:100%;height:100%;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function,initial);box-sizing:content-box;display:flex;position:relative}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translate(0,0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;transition-property:transform;display:block;position:relative}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{backface-visibility:hidden;transform:translateZ(0)}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-slide,.swiper-3d .swiper-cube-shadow{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{scrollbar-width:none;-ms-overflow-style:none;overflow:auto}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom{pointer-events:none;z-index:10;width:100%;height:100%;position:absolute;top:0;left:0}.swiper-3d .swiper-slide-shadow{background:#00000026}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(270deg,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(90deg,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(#0000,#00000080)}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(#00000080,#0000)}.swiper-lazy-preloader{z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-top-color:#0000;border-radius:50%;width:42px;height:42px;margin-top:-21px;margin-left:-21px;position:absolute;top:50%;left:50%}.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader{animation:1s linear infinite swiper-preloader-spin}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.swiper-virtual .swiper-slide{-webkit-backface-visibility:hidden;transform:translateZ(0)}.swiper-virtual.swiper-css-mode .swiper-wrapper:after{content:"";pointer-events:none;position:absolute;top:0;left:0}.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper:after{height:1px;width:var(--swiper-virtual-size)}.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper:after{width:1px;height:var(--swiper-virtual-size)}
