/*! tailwindcss v4.2.4 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-skyler:#c79797;--color-skyler-light:#e8d0d0;--color-skyler-faint:#f5ecec;--color-skyler-deep:#a87878;--color-zane:#3d574a;--color-zane-light:#5a7a6a;--color-zane-faint:#e8efeb;--color-zane-deep:#1f2b26;--color-paper:#faf6f3;--color-paper-warm:#f5ede6;--color-ink:#2c2420;--color-ink-soft:#6b5e56;--color-ink-faint:#a89890;--color-blush:#c7979714;--color-frost:#3d574a0f}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.flex-shrink{flex-shrink:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.break-all{word-break:break-all}.uppercase{text-transform:uppercase}.italic{font-style:italic}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;font-size:16px}body{background:var(--color-paper);color:var(--color-ink);min-height:100dvh;margin:0;padding:0;font-family:Merriweather,Noto Serif SC,Georgia,serif;overflow:hidden}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-skyler-light);border-radius:99px}::selection{background:var(--color-skyler-light);color:var(--color-zane-deep)}button,input,textarea,select{font-family:inherit;font-size:inherit;color:inherit;appearance:none}.app-shell{flex-direction:column;width:100vw;height:100dvh;display:flex;overflow:hidden}.app-main{-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden auto}.bottom-nav{-webkit-backdrop-filter:blur(16px);height:56px;padding:0 4px;padding-bottom:env(safe-area-inset-bottom,0);background:#faf6f3f2;border-top:1px solid #c797971f;flex-shrink:0;justify-content:space-around;align-items:center;display:flex}.nav-item{cursor:pointer;color:var(--color-ink-faint);letter-spacing:.02em;background:0 0;border:none;border-radius:10px;flex-direction:column;align-items:center;gap:1px;padding:6px 10px;font-family:inherit;font-size:10px;transition:all .2s;display:flex}.nav-item:hover{color:var(--color-skyler-deep);background:var(--color-blush)}.nav-item.active{color:var(--color-zane);background:var(--color-frost)}.nav-item svg{stroke-width:1.6px;width:20px;height:20px}.chat-container{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.chat-header{z-index:10;background:0 0;justify-content:space-between;align-items:center;padding:10px 8px;display:flex;position:absolute;top:0;left:0;right:0}.chat-header-side-btn{cursor:pointer;width:38px;height:38px;color:var(--color-ink-soft);background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s;display:flex}.chat-header-side-btn:hover{background:#c797971a}.chat-header-center{cursor:pointer;background:0 0;border:none;border-radius:10px;flex-direction:column;align-items:center;gap:2px;padding:4px 12px;transition:background .15s;display:flex;position:absolute;left:50%;transform:translate(-50%)}.chat-header-center:hover{background:#c7979714}.chat-header-avatar{color:#fff;background:linear-gradient(135deg,#3d574a,#5a7a66);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:17px;font-weight:700;display:flex}.chat-header-name{color:#2c2420;font-size:12px;font-weight:500;line-height:1}.chat-avatar{background:var(--color-zane);width:36px;height:36px;color:var(--color-paper);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:flex}.chat-header-info h2{color:var(--color-zane-deep);margin:0;font-size:15px;font-weight:600;line-height:1.2}.chat-header-info p{color:var(--color-ink-faint);margin:0;font-size:11px;line-height:1.3}.chat-messages{flex-direction:column;flex:1;gap:6px;min-height:0;padding:80px 12px 8px;display:flex;overflow-y:auto;-webkit-mask-image:linear-gradient(#0000 0,#000 120px);mask-image:linear-gradient(#0000 0,#000 120px)}.chat-messages::-webkit-scrollbar{width:3px}.msg-row{align-items:flex-end;gap:4px;display:flex}.msg-row-user{justify-content:flex-end}.msg-row-zane{justify-content:flex-start}.msg{white-space:pre-wrap;word-break:break-word;-webkit-user-select:text;user-select:text;border-radius:16px;max-width:78%;padding:6px 10px 4px;font-size:14px;line-height:1.65;animation:.25s ease-out msg-in;position:relative;overflow:hidden}@keyframes msg-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.msg-zane{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);color:var(--color-ink);background:#ffffffb8;border:1px solid #3d574a1a;border-radius:16px 16px 16px 3px}.msg-user{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);color:#fff;background:#c79797c7;border-radius:16px 16px 3px}.bubble-inner{display:block}.msg-text{white-space:pre-wrap;word-break:break-word;min-width:0}.msg-time{color:#888780;white-space:nowrap;align-items:center;gap:2px;padding-bottom:1px;font-size:11px;line-height:1.2;display:inline-flex}.msg-user .msg-time{color:#5a3a3a}.bubble-inner-inline{position:relative}.bubble-inner-rich{width:100%;display:block}.msg-text-inline{white-space:pre-wrap;word-break:break-word}.msg-time-spacer{vertical-align:baseline;height:1em;display:inline-block}.msg-meta-footer{justify-content:flex-end;align-items:center;min-height:14px;margin-top:1px;padding:0 1px;line-height:1;display:flex}.msg-meta-footer .msg-time{padding-bottom:0}.msg-toolbar{gap:16px;margin-left:34px;padding:3px 0 1px;display:flex}.msg-row-user .msg-toolbar{justify-content:flex-end;margin-left:0}.msg-toolbar-btn{color:#888780;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;align-items:center;gap:3px;padding:2px 4px;font-family:inherit;font-size:11px;display:flex}.date-separator{text-align:center;color:#888780;padding:12px 0 8px;font-size:12px}.os-pill-row{cursor:pointer;-webkit-tap-highlight-color:transparent;align-items:center;gap:4px;margin-bottom:5px;padding-bottom:5px;display:flex}.os-pill{color:#5f5e5a;letter-spacing:.5px;background:#e8e6e0;border-radius:6px;padding:1px 6px;font-size:9px;font-weight:500;line-height:1.6}.os-text{color:#888780;margin-bottom:5px;padding-bottom:5px;font-size:12px;line-height:1.4}.msg-actions{flex-shrink:0;gap:2px;padding-bottom:18px;display:none}@media (hover:hover){.msg-row:hover .msg-actions{display:flex}}.msg-action-btn{width:26px;height:26px;color:var(--color-ink-faint);cursor:pointer;background:#c7979714;border:none;border-radius:6px;justify-content:center;align-items:center;transition:all .15s;display:flex}.msg-action-btn:hover{color:var(--color-skyler-deep);background:#c797972e}.msg-quote{color:var(--color-ink-faint);border-left:2px solid var(--color-skyler-light);margin-bottom:6px;padding:2px 0 2px 8px;font-size:11px;line-height:1.4}.msg-user .msg-quote{color:#ffffffbf;border-left-color:#fff6}.reply-bar{background:var(--color-frost);border-left:3px solid var(--color-zane-light);border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:4px;padding:6px 12px;display:flex}.reply-bar-text{color:var(--color-ink-soft);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;font-size:12px;display:flex;overflow:hidden}.reply-bar-close{color:var(--color-ink-faint);cursor:pointer;background:0 0;border:none;align-items:center;padding:2px;display:flex}.reply-bar-close:hover{color:var(--color-ink)}.typing-indicator{gap:4px;padding:4px 0;display:flex}.typing-dot{background:var(--color-zane-light);border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite typing-bounce}.typing-dot:nth-child(2){animation-delay:.15s}.typing-dot:nth-child(3){animation-delay:.3s}@keyframes typing-bounce{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-6px)}}.chat-input-area{padding:8px 10px;padding-bottom:calc(6px + env(safe-area-inset-bottom,0));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#faf6f3f2;border-top:1px solid #c797971a;flex-shrink:0}.chat-input-row{align-items:flex-end;gap:8px;display:flex;overflow:visible}.chat-input{resize:none;color:var(--color-ink);background:#fff;border:1px solid #c7979733;border-radius:20px;outline:none;flex:1;max-height:120px;padding:9px 14px;font-family:inherit;font-size:14px;line-height:1.5;transition:border-color .2s}.chat-input:focus{border-color:var(--color-skyler)}.chat-input::placeholder{color:var(--color-ink-faint)}.chat-send-btn{background:var(--color-zane);color:#fff;cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;transition:all .2s;display:flex}.chat-send-btn:hover{background:var(--color-zane-deep);transform:scale(1.05)}.chat-send-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.chat-voice-btn{width:38px;height:38px;color:var(--color-ink-soft);cursor:pointer;background:#fff;border:1px solid #c7979740;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}.chat-voice-btn:hover{border-color:var(--color-skyler);color:var(--color-skyler-deep)}.msg-touchable{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.page-placeholder{height:100%;color:var(--color-ink-faint);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:40px;font-size:14px;display:flex}.page-placeholder-icon{opacity:.3;font-size:32px}@media (width>=768px){.app-shell{flex-direction:row}.bottom-nav{border-top:none;border-right:1px solid #c797971f;flex-direction:column;order:-1;justify-content:flex-start;gap:4px;width:72px;height:100dvh;padding:24px 0 16px}.nav-item{width:56px;padding:8px 4px}.nav-item svg{width:22px;height:22px}.app-main{flex:1}.chat-avatar{width:40px;height:40px;font-size:16px}.msg{max-width:65%}}.chat-avatar-small{background:var(--color-zane);width:28px;height:28px;color:var(--color-paper);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-bottom:18px;font-size:11px;font-weight:600;display:flex}.msg-row-user .msg-actions{order:-1}.chat-plus-btn,.chat-sticker-btn{width:36px;height:36px;color:var(--color-ink-soft);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:flex}.chat-plus-btn:hover,.chat-sticker-btn:hover{color:var(--color-skyler-deep);background:var(--color-blush)}.chat-input-wrap{background:#fff;border:1px solid #c7979733;border-radius:20px;flex:1;align-items:flex-end;gap:0;min-width:0;padding-right:4px;transition:border-color .2s;display:flex;overflow:visible}.chat-input-wrap:focus-within{border-color:var(--color-skyler)}.chat-input-wrap .chat-input{background:0 0;border:none;border-radius:20px 0 0 20px;min-width:0;padding:9px 4px 9px 14px}.chat-input-wrap .chat-input:focus{border-color:#0000}.model-pill{background:var(--color-frost);color:var(--color-zane);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;border:none;border-radius:12px;flex-shrink:0;align-items:center;gap:2px;max-width:80px;margin-bottom:6px;padding:4px 8px;font-family:inherit;font-size:10px;font-weight:500;transition:all .15s;display:flex;overflow:hidden}.model-pill:hover{background:#3d574a1f}.model-dropdown{z-index:100;background:#fff;border:1px solid #c7979726;border-radius:10px;min-width:120px;margin-bottom:4px;animation:.15s ease-out msg-in;position:absolute;bottom:100%;right:0;overflow:hidden;box-shadow:0 4px 20px #00000014}.model-option{width:100%;color:var(--color-ink);cursor:pointer;text-align:left;background:0 0;border:none;padding:8px 12px;font-family:inherit;font-size:12px;display:block}.model-option:hover{background:var(--color-frost)}.model-option.active{background:var(--color-frost);color:var(--color-zane);font-weight:600}.voice-bubble-content{flex-direction:column;gap:4px;min-width:80px;display:flex}.voice-main{align-items:center;gap:6px;display:flex}.voice-icon{font-size:18px}.voice-duration{opacity:.8;font-size:14px}.transcript-toggle{color:var(--color-zane);opacity:.75;cursor:pointer;text-align:left;background:0 0;border:none;margin-top:2px;padding:2px 0;font-family:inherit;font-size:12px;display:block}.transcript-toggle:hover{opacity:1}.transcript-text{opacity:.85;white-space:pre-wrap;word-break:break-word;border-top:1px solid #00000014;margin-top:4px;padding-top:4px;font-size:13px}.msg-user .transcript-toggle{color:#ffffffd9}.msg-user .transcript-text{border-top-color:#fff3}.recording-bar{height:38px;color:var(--color-ink-soft);-webkit-user-select:none;user-select:none;background:#dc32320f;border:1px solid #dc323226;border-radius:20px;flex:1;align-items:center;gap:10px;padding:0 12px;font-size:13px;display:flex}.recording-dot{background:#dc3232;border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:1s ease-in-out infinite recording-pulse}@keyframes recording-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}.recording-hint{opacity:.5;margin-left:auto;font-size:11px}.chat-voice-btn--recording{color:#dc3232!important;background:#dc32321a!important;border-color:#dc32324d!important}.chat-voice-btn{touch-action:none;-webkit-touch-callout:none}.sticker-panel{z-index:100;background:#fff;border:1px solid #c797971f;border-bottom:none;border-radius:14px 14px 0 0;margin-bottom:4px;animation:.15s ease-out msg-in;position:absolute;bottom:100%;left:0;right:0;box-shadow:0 -4px 20px #0000000f}.hold-to-talk-btn{height:42px;color:var(--color-ink-soft);cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:#3d574a0f;border:1px solid #c7979740;border-radius:21px;flex:1;justify-content:center;align-items:center;font-family:inherit;font-size:15px;transition:background .15s,color .15s,border-color .15s;display:flex}.hold-to-talk-btn.recording{background:var(--color-zane);color:#fff;border-color:var(--color-zane)}.hold-to-talk-btn.cancel-armed{color:#a32d2d;background:#a32d2d1a;border-color:#a32d2d66}.recording-overlay{color:var(--color-ink-soft);background:#dc32320f;border:1px solid #dc32321f;border-radius:12px;align-items:center;gap:8px;margin-bottom:6px;padding:6px 14px;font-size:13px;animation:.15s ease-out msg-in;display:flex}.short-toast{color:#fff;white-space:nowrap;pointer-events:none;z-index:200;background:#000000b3;border-radius:20px;margin-bottom:8px;padding:6px 16px;font-size:13px;animation:.15s ease-out msg-in;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.nav-center svg{width:26px!important;height:26px!important}.nav-center{padding:4px 8px}.placeholder-page{flex-direction:column;justify-content:center;align-items:center;gap:12px;height:100%;padding:40px 20px;font-family:Merriweather,Georgia,serif;display:flex;position:relative}.placeholder-title{color:var(--color-ink);letter-spacing:-.02em;font-size:32px;font-weight:700}.placeholder-sub{color:var(--color-ink-faint);letter-spacing:.06em;text-transform:uppercase;font-size:14px}.placeholder-back{top:calc(16px + env(safe-area-inset-top,0));background:var(--color-frost);cursor:pointer;color:var(--color-ink-soft);border:none;border-radius:10px;align-items:center;gap:4px;padding:6px 12px 6px 8px;font-family:inherit;font-size:13px;display:flex;position:absolute;left:16px}.placeholder-back:active{opacity:.7}.lobby-header{padding:calc(env(safe-area-inset-top,0) + 20px) 0 4px;justify-content:space-between;align-items:baseline;display:flex}.lobby-date{color:var(--color-ink-soft);font-family:Merriweather,Georgia,serif;font-size:13px;font-style:italic}.lobby-days{color:var(--color-skyler-deep);font-family:Merriweather,Georgia,serif;font-size:13px;font-weight:700}.lobby-mailbox-btn{top:calc(env(safe-area-inset-top,0) + 18px);background:var(--color-blush);cursor:pointer;width:36px;height:36px;color:var(--color-skyler-deep);border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;right:18px}.lobby-mailbox-btn:active{transform:scale(.93)}.lobby-mailbox-badge{background:var(--color-skyler);color:#fff;text-align:center;border-radius:8px;min-width:14px;padding:2px 4px;font-size:9px;font-weight:700;line-height:1;position:absolute;top:-4px;right:-4px}.lobby-card-area{justify-content:center;margin:28px 0 20px;display:flex}.daily-card{background:#fff9f4;border:1px solid #c797972e;border-radius:12px;width:100%;max-width:320px;padding:28px 24px 22px;transition:transform .3s;box-shadow:2px 4px 16px #2c242014}.daily-card-text{color:var(--color-ink);margin-bottom:16px;font-family:Noto Serif SC,Georgia,serif;font-size:15px;line-height:1.9}.daily-card-sig{color:var(--color-ink-soft);text-align:right;font-family:Merriweather,Georgia,serif;font-size:12px;font-style:italic}.envelope-card{width:100%;max-width:320px;transition:all .4s}.envelope-front{cursor:pointer;background:0 0;border:none;flex-direction:column;width:100%;padding:0;display:flex}.envelope-flap{border-top:80px solid #e8b4a0;border-left:160px solid #0000;border-right:160px solid #0000;border-radius:4px 4px 0 0;width:100%;height:0;transition:transform .5s}.envelope-card.open .envelope-flap{transform-origin:top;transform:rotateX(180deg)}.envelope-body{text-align:center;background:#f5e6dd;border:1px solid #e8b4a0;border-top:none;border-radius:0 0 8px 8px;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:120px;padding:20px 24px 24px;display:flex}.envelope-icon{font-size:28px}.envelope-title{color:var(--color-ink);font-family:Noto Serif SC,serif;font-size:14px;font-weight:500}.envelope-hint{color:var(--color-ink-faint);letter-spacing:.04em;font-size:11px}.letter-inner{background:#fffdf9;border:1px solid #c7979733;border-radius:8px;padding:28px 24px;box-shadow:1px 3px 12px #2c242012}.letter-heading{color:var(--color-ink);margin-bottom:4px;font-family:Noto Serif SC,serif;font-size:16px;font-weight:600}.letter-sub{color:var(--color-ink-faint);letter-spacing:.04em;margin-bottom:20px;font-size:11px}.letter-text{color:var(--color-ink-soft);white-space:pre-wrap;margin:0 0 24px;font-family:Noto Serif SC,Georgia,serif;font-size:14px;line-height:2}.letter-save-btn{background:var(--color-zane);color:#fff;cursor:pointer;border:none;border-radius:20px;margin:0 auto;padding:8px 24px;font-family:inherit;font-size:13px;display:block}.letter-save-btn:active{opacity:.85}.lobby-section-title{letter-spacing:.1em;text-transform:uppercase;color:var(--color-ink-faint);margin-bottom:10px;padding-left:2px;font-family:Merriweather,Georgia,serif;font-size:11px;font-weight:700}.lobby-reminders{flex-direction:column;gap:8px;display:flex}.reminder-row{background:#fff;border:1px solid #c797971f;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;transition:opacity .25s;display:flex}.reminder-row.urgent{background:#fff9f8;border-color:#dc503c40}.reminder-row.done{opacity:.4}.reminder-row.done .reminder-name{text-decoration:line-through}.reminder-emoji{flex-shrink:0;font-size:18px}.reminder-info{flex-direction:column;flex:1;gap:1px;display:flex}.reminder-row.urgent .reminder-note{color:#c44}.reminder-check-btn{cursor:pointer;width:26px;height:26px;color:var(--color-zane);background:0 0;border:1.5px solid #c7979766;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:flex}.reminder-row.done .reminder-check-btn{background:var(--color-zane);border-color:var(--color-zane);color:#fff}.check-empty{width:8px;height:8px;display:block}.quick-links{gap:12px;display:flex}.quick-link{cursor:pointer;background:#fff;border:1px solid #c797971f;border-radius:12px;flex-direction:column;flex:1;align-items:center;gap:6px;padding:14px 8px;transition:background .15s;display:flex}.quick-link:active{background:var(--color-blush)}.quick-link-icon{font-size:22px}.quick-link-label{color:var(--color-ink-soft);letter-spacing:.02em;font-size:11px}.mailbox-overlay{z-index:200;background:#0006;align-items:flex-end;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.mailbox-sheet{background:var(--color-paper);width:100%;padding-bottom:env(safe-area-inset-bottom,0);border-radius:20px 20px 0 0;flex-direction:column;max-height:60vh;animation:.25s slideUp;display:flex}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.mailbox-hdr{border-bottom:1px solid #00000012;justify-content:space-between;align-items:center;padding:16px 20px 12px;display:flex}.mailbox-hdr-title{color:var(--color-ink);font-size:15px;font-weight:600}.mailbox-close{cursor:pointer;color:var(--color-ink-faint);background:0 0;border:none;padding:4px;display:flex}.mailbox-list{flex-direction:column;gap:12px;padding:12px 20px 20px;display:flex;overflow-y:auto}.mailbox-item{background:#fff;border:1px solid #c797971f;border-radius:10px;padding:12px 14px}.mailbox-item-date{color:var(--color-ink-faint);margin-bottom:3px;font-size:10px}.mailbox-item-title{color:var(--color-ink);margin-bottom:4px;font-family:Noto Serif SC,serif;font-size:14px;font-weight:500}.mailbox-item-preview{color:var(--color-ink-soft);font-size:12px;line-height:1.5}.lobby-toast{bottom:calc(70px + env(safe-area-inset-bottom,0));color:#fff;white-space:nowrap;z-index:300;background:#2c2420e0;border-radius:20px;padding:8px 18px;font-size:13px;animation:.2s fadeIn;position:fixed;left:50%;transform:translate(-50%)}.lobby-page{background:radial-gradient(70% 45% at 20% 10%,#ebd0b938 0%,#0000 60%),radial-gradient(55% 55% at 82% 88%,#d4c0a829 0%,#0000 60%),#faf6f3;min-height:100%;padding:0 20px 32px;position:relative}.lobby-header{padding:calc(env(safe-area-inset-top,0) + 18px) 0 0}.lobby-card-area{justify-content:flex-start;margin:14px 0 28px;padding:8px 0 12px;display:flex;overflow:visible}.note-card{transform-origin:50%;will-change:transform;background:#fef9ee repeating-linear-gradient(#0000 0 22px,#b491640a 22px 23px);border-radius:14px 16px 15px 13px;width:calc(100% - 20px);max-width:300px;padding:22px 22px 18px 24px;position:relative;box-shadow:1px 2px #b4916426,2px 5px 12px #2c242017,0 1px 3px #2c24200f,inset 0 1px #ffffffb3}.note-card:after{content:"";filter:blur(4px);z-index:-1;background:#2c24200f;border-radius:50%;height:8px;position:absolute;bottom:-4px;left:6px;right:4px}.note-card-text{color:#3a2e28;letter-spacing:.01em;margin-bottom:14px;font-family:Noto Serif SC,Georgia,serif;font-size:15px;line-height:2}.note-card-sig{color:#a07060;text-align:right;letter-spacing:.02em;font-family:Caveat,cursive;font-size:18px;font-weight:600}.lobby-section:has(.reminders-list) .lobby-section-title{letter-spacing:.04em;text-transform:none;color:var(--color-ink-soft);margin-bottom:8px;font-family:Caveat,cursive;font-size:16px;font-weight:600}.reminders-list{background:#ffffffa6;border:1px solid #c797971f;border-radius:12px;overflow:hidden}.reminder-item{background:0 0;border-bottom:1px solid #c7979717;align-items:center;gap:10px;padding:9px 12px;transition:opacity .2s,background .15s;display:flex}.reminder-item:last-child{border-bottom:none}.reminder-item.done{opacity:.45}.reminder-item.done .reminder-name{text-decoration:line-through}.reminder-item.urgent{background:#dc3c320e}.reminder-emoji{text-align:center;flex-shrink:0;width:22px;font-size:16px}.reminder-info{flex:1;align-items:baseline;gap:6px;display:flex}.reminder-name{color:var(--color-ink);font-size:13px;font-weight:500}.reminder-note{color:var(--color-ink-faint);font-size:11px}.reminder-item.urgent .reminder-note{color:#b03030}.reminder-tick{cursor:pointer;color:#fff;background:0 0;border:1.5px solid #c7979773;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;transition:all .15s;display:flex}.reminder-item.done .reminder-tick{background:var(--color-zane);border-color:var(--color-zane)}.lobby-section:has(.quick-pills) .lobby-section-title{letter-spacing:.04em;text-transform:none;color:var(--color-ink-soft);margin-bottom:10px;font-family:Caveat,cursive;font-size:16px;font-weight:600}.quick-pills{gap:20px;padding:4px 2px;display:flex}.quick-pill{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;align-items:center;gap:7px;padding:0;transition:transform .15s;display:flex}.quick-pill:active{transform:scale(.87)}.quick-pill-circle{background:#c7979721;border-radius:50%;justify-content:center;align-items:center;line-height:1;transition:background .15s;display:flex}.quick-pill:active .quick-pill-circle{background:#c7979742}.quick-pill-label{color:var(--color-ink-soft);letter-spacing:.02em;font-family:inherit;font-size:11px}.lobby-section{margin-bottom:26px}.lobby-mailbox-btn{top:calc(env(safe-area-inset-top,0) + 15px)}.lc-page{--lc-card:#fdf8f0;--lc-border:#f0d9c0;--lc-rose:#993556;--lc-text:#2c2420;--lc-sub:#8a7268;--lc-faint:#b5a090;min-height:100%;padding:0 16px calc(28px + env(safe-area-inset-bottom,0));background:#fff8f2;flex-direction:column;gap:12px;display:flex}.lc-mailbox-btn:active{opacity:.65}.lc-card{background:var(--lc-card);border:.5px solid var(--lc-border);border-radius:14px;overflow:hidden}.lc-df-title{color:var(--lc-faint);letter-spacing:.02em;margin-bottom:12px;font-family:Caveat,cursive;font-size:14px;font-weight:600}.lc-meds-row{justify-content:center;gap:32px;padding-bottom:12px;display:flex}.lc-med-btn{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;align-items:center;gap:5px;padding:4px 8px;transition:transform .2s;display:flex}.lc-med-icon{opacity:.3;font-size:26px;transition:opacity .2s;display:block}.lc-med-btn.checked .lc-med-icon{opacity:1}.lc-med-btn.checked{transform:scale(1.08)}.lc-med-btn.disabled{opacity:.2;cursor:default;pointer-events:none}.lc-med-label{color:var(--lc-faint);letter-spacing:.04em;text-transform:lowercase;font-size:9px}.lc-schedule{flex-direction:column;gap:0;padding-top:10px;display:flex}.lc-task-row:last-child{border-bottom:none}.lc-task-emoji{text-align:center;flex-shrink:0;width:20px;font-size:15px}.lc-quick-card{cursor:pointer;color:var(--lc-sub);border:.5px solid var(--lc-border);background:var(--lc-card);-webkit-tap-highlight-color:transparent;border-radius:14px;flex-direction:column;flex:1;align-items:center;gap:7px;padding:16px 8px;transition:transform .15s,background .15s;display:flex}.lc-quick-card:active{background:#f5ede0;transform:scale(.93)}.lc-page{--lc-card:#fff;--lc-card2:#fdf8f0;--lc-border:#d2b9a08c;--lc-rose:#993556;--lc-text:#2c2420;--lc-sub:#8a7268;--lc-faint:#b5a090;min-height:100%;padding:0 16px calc(32px + env(safe-area-inset-bottom,0));background:#fff8f2;flex-direction:column;gap:11px;display:flex}.lc-header{text-align:center;padding:calc(env(safe-area-inset-top,0) + 28px) 0 4px;position:relative}.lc-day-num{color:var(--lc-rose);letter-spacing:-.01em;font-family:Caveat,cursive;font-size:42px;font-weight:700;line-height:1}.lc-date-row{color:var(--lc-sub);letter-spacing:.02em;margin-top:3px;font-size:12px}.lc-mailbox-btn{top:calc(env(safe-area-inset-top,0) + 26px);cursor:pointer;color:var(--lc-sub);background:0 0;border:none;align-items:center;padding:4px;display:flex;position:absolute;right:0}.lc-badge{background:var(--lc-rose);color:#fff;text-align:center;border-radius:8px;min-width:14px;padding:2px 4px;font-size:9px;font-weight:700;line-height:1;position:absolute;top:-3px;right:-5px}.lc-card{background:var(--lc-card);border:.5px solid var(--lc-border);border-radius:14px;overflow:hidden;box-shadow:0 1px 6px #2c24200f}.lc-msg-card{transform-origin:50%;padding:26px 22px 20px;transform:rotate(.6deg)}.lc-msg-text{color:var(--lc-text);letter-spacing:.01em;margin-bottom:14px;font-family:Caveat,cursive;font-size:20px;line-height:1.65}.lc-msg-sig{color:var(--lc-rose);text-align:right;font-family:Caveat,cursive;font-size:17px;font-weight:600}.lc-df-card{background:var(--lc-card2);border-color:#d2b9a073;padding:13px 16px;box-shadow:0 1px 4px #2c24200a}.lc-df-label{color:var(--lc-faint);letter-spacing:.02em;margin-bottom:10px;font-family:Caveat,cursive;font-size:13px;font-weight:600}.lc-meds-row{gap:8px;margin-bottom:11px;display:flex}.lc-med-pill{border:.5px solid var(--lc-border);cursor:pointer;color:var(--lc-faint);letter-spacing:.02em;-webkit-tap-highlight-color:transparent;background:#fff;border-radius:20px;align-items:center;gap:4px;padding:5px 12px;font-size:11px;transition:all .18s;display:inline-flex}.lc-med-pill.checked{background:var(--lc-rose);border-color:var(--lc-rose);color:#fff}.lc-med-pill.disabled{opacity:.3;cursor:default;pointer-events:none}.lc-thin-divider{background:#d2b9a080;height:.5px;margin:0 -16px 10px}.lc-schedule{flex-direction:column;display:flex}.lc-task-row{border-bottom:.5px solid #d2b9a04d;align-items:center;gap:8px;padding:6px 0;transition:opacity .2s;display:flex}.lc-task-row:last-child{border-bottom:none;padding-bottom:0}.lc-task-row.done{opacity:.32}.lc-task-row.done .lc-task-title{text-decoration:line-through}.lc-task-row.today .lc-task-title{color:var(--lc-rose);font-weight:600}.lc-task-row.today .lc-task-time{color:var(--lc-rose)}.lc-task-title{color:var(--lc-text);flex:1;font-size:13px}.lc-task-time{color:var(--lc-faint);flex-shrink:0;font-size:11px}.lc-task-check{border:.5px solid var(--lc-border);cursor:pointer;color:#fff;background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:17px;height:17px;margin-left:4px;transition:all .15s;display:flex}.lc-task-row.done .lc-task-check{background:var(--lc-rose);border-color:var(--lc-rose)}.lc-quick-section{flex-direction:column;gap:6px;display:flex}.lc-section-label{color:var(--lc-faint);letter-spacing:.03em;padding:0 2px;font-family:Caveat,cursive;font-size:15px;font-weight:600}.lc-quick-card{cursor:pointer;color:var(--lc-sub);background:var(--lc-card);border:.5px solid var(--lc-border);-webkit-tap-highlight-color:transparent;border-radius:14px;flex-direction:column;flex:1;align-items:center;gap:7px;padding:15px 8px;transition:transform .14s;display:flex;box-shadow:0 1px 5px #2c24200d}.lc-quick-card:active{transform:scale(.92)}.lc-env-front{cursor:pointer;background:0 0;border:none;flex-direction:column;width:100%;padding:0;display:flex}.lc-env-flap{border-top:60px solid #e8c9b0;border-left:calc(50vw - 16px) solid #0000;border-right:calc(50vw - 16px) solid #0000;width:100%;height:0}.lc-env-body{text-align:center;background:#f7ede0;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:100px;padding:20px 20px 24px;display:flex}.lc-env-icon{font-size:26px}.lc-env-title{color:var(--lc-text);font-family:Noto Serif SC,serif;font-size:14px;font-weight:500}.lc-env-hint{color:var(--lc-faint);letter-spacing:.04em;font-size:11px}.lc-letter{padding:22px 20px}.lc-letter-title{color:var(--lc-text);margin-bottom:3px;font-family:Noto Serif SC,serif;font-size:15px;font-weight:600}.lc-letter-sub{color:var(--lc-faint);margin-bottom:16px;font-size:11px}.lc-letter-text{color:var(--lc-sub);white-space:pre-wrap;margin:0 0 20px;font-family:Noto Serif SC,serif;font-size:14px;line-height:2}.lc-letter-save{background:var(--lc-rose);color:#fff;cursor:pointer;border:none;border-radius:20px;margin:0 auto;padding:7px 22px;font-family:inherit;font-size:13px;display:block}.lc-card,.lc-df-card{background:#fff}.lc-msg-card{margin-bottom:13px;padding:2rem 1.5rem}.lc-msg-text{font-family:Caveat,Noto Serif SC,cursive;font-size:22px}.lc-msg-sig{font-size:18px}.lc-df-card{padding:1rem 1.25rem}.lc-med-pill{color:#a09080;background:0 0;border:1px solid #d4c4b0}.lc-med-pill.checked{color:#fff;background:#d4c4b0;border-color:#d4c4b0}.lc-task-row{padding:8px 0}.lc-thin-divider{margin-bottom:8px;margin-left:-1.25rem;margin-right:-1.25rem}.lc-quick-section{flex-shrink:0;gap:0;padding:13px 16px;display:block}.lc-quick-section .lc-section-label{margin-bottom:12px;display:block}.lc-quick-row{gap:0;display:flex}.lc-quick-btn{cursor:pointer;color:var(--lc-sub);-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;flex:1;align-items:center;gap:7px;padding:10px 8px;transition:transform .14s;display:flex}.lc-quick-btn:active{transform:scale(.91)}.lc-quick-label{color:var(--lc-sub);letter-spacing:.02em;font-size:12px}.lc-day-num{font-size:56px;font-weight:600}.lc-msg-text{font-size:18px}.msg-col{flex-direction:column;align-items:flex-start;max-width:78%;display:flex}.msg-col-user{align-items:flex-end}.msg-col .msg{max-width:100%}@media (width>=768px){.msg-col{max-width:65%}}.ts-spacer{vertical-align:bottom;width:55px;height:1em;display:inline-block}.ts-spacer-user{vertical-align:bottom;width:70px;height:1em;display:inline-block}.msg-time-abs{white-space:nowrap;color:#888780;pointer-events:none;align-items:center;gap:2px;padding-bottom:0;font-size:11px;line-height:1;display:inline-flex;position:absolute;bottom:1px;right:0}.msg-user .msg-time-abs{color:#5a3a3a}.msg-col .msg-toolbar{gap:14px;margin-left:0;padding:4px 2px 0}.msg-toolbar-user{justify-content:flex-end}.msg-col .msg-toolbar-btn{color:#b4b2a9;font-size:0}.msg-error{cursor:pointer;opacity:.8}.msg-highlight{animation:2s ease-out highlight-flash}@keyframes highlight-flash{0%,20%{background:#c7979740;border-radius:12px}to{background:0 0}}.memory-page{box-sizing:border-box;color:#342f2b;background:#fff8f2;min-height:100vh;padding:18px 16px 104px}.memory-header{grid-template-columns:42px 1fr 42px;align-items:center;max-width:720px;margin:0 auto 18px;display:grid}.memory-header h1{margin:1px 0 0;font:600 26px/1.1 Noto Serif SC,serif}.memory-eyebrow{color:#a48e82;letter-spacing:.12em;text-transform:uppercase;font-size:11px}.memory-back,.memory-refresh{color:#5a514a;cursor:pointer;background:#fffc;border:0;border-radius:50%;place-items:center;width:38px;height:38px;padding:0;display:grid;box-shadow:0 2px 10px #47362d12}.memory-refresh{justify-self:end}.memory-refresh:disabled{opacity:.55}.is-spinning{animation:.8s linear infinite memory-spin}@keyframes memory-spin{to{transform:rotate(360deg)}}.memory-tabs{background:#efe5dc;border-radius:12px;grid-template-columns:repeat(3,1fr);max-width:720px;margin:0 auto 16px;padding:4px;display:grid}.memory-tabs button{color:#8c7c71;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:9px;padding:9px 12px;font-size:13px}.memory-tabs button.active{color:#3d574a;background:#fff;font-weight:600;box-shadow:0 2px 8px #43302614}.memory-content{gap:12px;max-width:720px;margin:0 auto;display:grid}.memory-card{background:#ffffffeb;border:1px solid #644d4012;border-radius:12px;padding:18px;box-shadow:0 5px 20px #4d382d0e}.memory-section-title{color:#76675e;letter-spacing:.08em;margin-bottom:15px;font-size:12px;font-weight:600}.memory-stat-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.memory-stat{flex-direction:column;gap:5px;min-width:0;display:flex}.memory-stat-value{color:#3d574a;font:600 25px/1 Noto Serif SC,serif}.memory-stat-label{color:#9b8b80;white-space:nowrap;font-size:11px}.memory-alerts{gap:8px;display:grid}.memory-alerts .memory-section-title{margin-bottom:5px}.memory-alert{border-radius:9px;align-items:center;gap:9px;padding:10px 12px;font-size:13px;display:flex}.memory-alert-warning,.memory-alert-critical{color:#8e5f62;background:#c797972b}.memory-alert-critical{box-shadow:inset 3px 0 #c79797}.memory-alert-info{color:#3d574a;background:#3d574a17}.memory-chart{align-items:stretch;gap:8px;height:150px;display:flex}.memory-chart-column{text-align:center;flex:1;grid-template-rows:18px 1fr 18px;gap:4px;min-width:0;display:grid}.memory-chart-value,.memory-chart-date{color:#a09187;font-size:10px}.memory-chart-track{background:#f5eee8;border-radius:6px 6px 2px 2px;align-items:flex-end;min-height:80px;display:flex;overflow:hidden}.memory-chart-bar{background:#c79797;border-radius:6px 6px 2px 2px;width:100%;min-height:2px;transition:height .25s}.memory-ratings{gap:11px;display:grid}.memory-rating-row{grid-template-columns:78px 1fr 72px;align-items:center;gap:9px;display:grid}.memory-stars{color:#c79797;letter-spacing:1px;white-space:nowrap;font-size:12px}.memory-rating-track{background:#f1eae4;border-radius:10px;height:7px;overflow:hidden}.memory-rating-track>div{border-radius:inherit;background:#3d574a;min-width:2px;height:100%}.memory-rating-count{color:#5d554f;text-align:right;font-size:12px}.memory-rating-count small{color:#a8998f}.memory-audit-list{display:grid}.memory-audit{color:#534b45;border-top:1px solid #f0e8e2;padding:12px 0;font-size:13px;line-height:1.7}.memory-audit:first-child{border-top:0;padding-top:0}.memory-audit:last-child{padding-bottom:0}.memory-audit time{color:#3d574a;font-weight:600;display:block}.memory-audit-sub,.memory-no-audit{color:#9a8b80;font-size:12px}.memory-error{color:#8e5f62;background:#c7979729;border-radius:10px;justify-content:space-between;align-items:center;max-width:720px;padding:12px 14px;font-size:13px;display:flex}.memory-error button{color:inherit;cursor:pointer;background:0 0;border:0;text-decoration:underline}.memory-empty{color:#9a8b80;text-align:center;flex-direction:column;justify-content:center;align-items:center;max-width:720px;min-height:180px;margin:0 auto;display:flex}.memory-empty h2{color:#5f554e;margin:10px 0 3px;font-size:16px}.memory-empty p{margin:0;font-size:12px}@media (width<=460px){.memory-stat-grid{grid-template-columns:repeat(2,1fr);gap:18px 10px}.memory-rating-row{grid-template-columns:72px 1fr 58px;gap:7px}.memory-card{padding:16px}}.ch-toast{z-index:40;color:#fff8f2;background:#3d574af0;border-radius:999px;padding:10px 14px;font-size:12px;position:fixed;bottom:88px;left:50%;transform:translate(-50%);box-shadow:0 10px 24px #3d574a2e}.ch-section-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;display:flex}.ch-card-list{gap:10px;display:grid}.ch-provider-card,.ch-route-card{background:#fffdfb;border:1px solid #76675e1f;border-radius:12px;padding:14px}.ch-provider-card.is-disabled{opacity:.62}.ch-provider-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.ch-provider-top h3{color:#534b45;margin:0 0 6px;font-size:15px}.ch-type{letter-spacing:.04em;text-transform:lowercase;border-radius:999px;align-items:center;padding:3px 8px;font-size:11px;display:inline-flex}.ch-type-transit{color:#3d574a;background:#3d574a1a}.ch-type-direct{color:#6b7c8a;background:#6b7c8a1f}.ch-type-local{color:#a48e82;background:#a48e821f}.ch-type-image{color:#9b7ea8;background:#9b7ea81f}.ch-meta-row{color:#76675e;word-break:break-all;margin-top:9px;font-size:12px;line-height:1.6}.ch-provider-foot{grid-template-columns:auto 1fr auto;align-items:center;gap:10px;margin-top:14px;display:grid}.ch-test-result{color:#9a8b80;min-height:18px;font-size:12px}.ch-test-result.is-success{color:#3d574a}.ch-test-result.is-error{color:#8e5f62}.ch-route-model{color:#76675e;font-size:12px}.ch-chip-row{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.ch-chip{color:#3d574a;background:#3d574a14;border-radius:999px;padding:5px 9px;font-size:11px}.ch-chip.is-disabled{opacity:.55;text-decoration:line-through}.ch-outline-btn,.ch-test-btn,.ch-icon-btn,.ch-icon-text,.ch-primary-btn,.ch-danger-btn{cursor:pointer;font:inherit;border:0}.ch-outline-btn,.ch-test-btn{color:#534b45;background:#f3ece6;border-radius:10px;align-items:center;gap:7px;padding:8px 12px;display:inline-flex}.ch-outline-btn{white-space:nowrap}.ch-test-btn:disabled,.ch-outline-btn:disabled,.ch-primary-btn:disabled,.ch-danger-btn:disabled{opacity:.55;cursor:default}.ch-icon-btn{color:#76675e;background:#ffffffd6;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.ch-icon-text{color:#76675e;background:0 0;align-items:center;gap:6px;padding:0;font-size:12px;display:inline-flex}.ch-toggle{cursor:pointer;background:#e0d6cd;border:0;border-radius:999px;width:46px;height:28px;padding:2px;transition:background .18s}.ch-toggle span{background:#fff;border-radius:50%;width:24px;height:24px;transition:transform .18s;display:block;box-shadow:0 2px 7px #4a382d24}.ch-toggle.is-on{background:#3d574a}.ch-toggle.is-on span{transform:translate(18px)}.ch-warning-inline{color:#8e5f62;align-items:center;gap:6px;font-size:12px;display:inline-flex}.ch-sheet-backdrop{z-index:50;background:#2e251f33;align-items:flex-end;display:flex;position:fixed;inset:0}.ch-sheet{background:#fff8f2;border-radius:24px 24px 0 0;width:100%;max-height:92vh;animation:.22s ease-out ch-sheet-rise;overflow-y:auto;box-shadow:0 -12px 28px #3f312729}@keyframes ch-sheet-rise{0%{opacity:.65;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.ch-sheet-grip{color:#b8aaa0;place-items:center;padding-top:8px;display:grid}.ch-sheet-head{justify-content:space-between;align-items:flex-start;gap:12px;padding:10px 18px 0;display:flex}.ch-sheet-head h2{color:#534b45;margin:-4px 0 0;font:600 24px/1.15 Noto Serif SC,serif}.ch-form{gap:14px;padding:18px;display:grid}.ch-field{gap:7px;display:grid}.ch-field>span{color:#76675e;letter-spacing:.04em;font-size:12px;font-weight:600}.ch-field input,.ch-field select{box-sizing:border-box;color:#534b45;width:100%;font:inherit;background:#ffffffeb;border:1px solid #76675e29;border-radius:12px;padding:12px 13px}.ch-field input:disabled{color:#9a8b80;background:#f2ece7}.ch-secret-wrap{grid-template-columns:1fr auto;align-items:center;gap:8px;display:grid}.ch-switch-row{color:#534b45;justify-content:space-between;align-items:center;padding:4px 0 0;font-size:14px;display:flex}.ch-sheet-actions{align-items:center;gap:10px;padding:0 18px 22px;display:flex}.ch-primary-btn{color:#fff8f2;background:#3d574a;border-radius:12px;flex:1;padding:12px 16px}.ch-danger-btn{color:#8e5f62;background:#8e5f621a;border-radius:12px;align-items:center;gap:6px;padding:12px 14px;display:inline-flex}.ch-provider-picks{gap:8px;display:grid}.ch-pick{color:#534b45;text-align:left;cursor:pointer;background:#fffc;border:1px solid #76675e24;border-radius:12px;padding:10px 12px}.ch-pick.is-active{background:#3d574a14;border-color:#3d574a47}.ch-pick small{color:#9a8b80;margin-top:3px;font-size:11px;display:block}.ch-order-list{gap:8px;margin-top:10px;display:grid}.ch-order-item{color:#534b45;background:#ffffffd1;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-size:13px;display:flex}.ch-order-actions{gap:6px;display:inline-flex}.ch-order-actions button{color:#76675e;cursor:pointer;background:#f3ece6;border:0;border-radius:8px;padding:6px 9px}@media (width<=460px){.ch-provider-foot{grid-template-columns:1fr auto}.ch-test-result{grid-column:1/-1;min-height:0}.ch-sheet-actions{flex-direction:column}.ch-danger-btn,.ch-primary-btn{justify-content:center;width:100%}}.backstage-page{padding-bottom:32px!important}.ch-loading{text-align:center;color:#9a8b80;max-width:720px;margin:40px auto;font-size:13px}.ch-section-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.ch-btn-add{color:#3d574a;cursor:pointer;background:0 0;border:1px solid #3d574a33;border-radius:8px;align-items:center;gap:4px;padding:5px 12px;font-size:12px;font-weight:500;display:inline-flex}.ch-btn-add:active{background:#3d574a0f}.ch-hint{color:#a8998f;font-weight:400}.backstage-page .memory-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}.pt-content{gap:12px;width:100%;max-width:720px;margin:0 auto;display:grid}.pt-selector{gap:8px;padding:4px 0;display:flex}.pt-selector button{color:#756860;min-width:72px;font:inherit;cursor:pointer;background:#ffffffb8;border:1px solid #3d574a29;border-radius:999px;padding:8px 18px;font-size:13px}.pt-selector button.active{color:#fff;background:#3d574a;border-color:#3d574a;font-weight:600}.pt-card{background:#fffffff0;border:1px solid #644d4014;border-radius:12px;overflow:hidden;box-shadow:0 5px 20px #4d382d0e}.pt-editor-card{padding:14px}.pt-editor{resize:vertical;color:#403a36;box-sizing:border-box;background:#fffcf9;border:1px solid #e8ded6;border-radius:9px;outline:none;width:100%;min-height:300px;padding:14px;font:13px/1.65 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;display:block}.pt-editor:focus{border-color:#3d574a80;box-shadow:0 0 0 3px #3d574a12}.pt-loading{color:#8f8177;justify-content:center;align-items:center;gap:8px;min-height:300px;font-size:13px;display:flex}.pt-editor-footer{color:#9b8b80;justify-content:space-between;align-items:center;padding-top:12px;font-size:12px;display:flex}.pt-save{color:#fff;min-width:84px;font:inherit;cursor:pointer;background:#3d574a;border:0;border-radius:9px;justify-content:center;align-items:center;gap:6px;padding:9px 18px;font-size:13px;font-weight:600;display:inline-flex}.pt-save:disabled{color:#99918c;cursor:default;background:#d8d3cf}.pt-error{color:#986969;background:#c7979724;border-radius:8px;margin-top:10px;padding:9px 11px;font-size:12px}.pt-fold-head{color:#574d47;width:100%;min-height:54px;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:0 16px;font-size:13px;font-weight:600;display:flex}.pt-fold-head>svg{color:#9b8b80;flex:none;margin-left:auto}.pt-fold-meta{color:#a2958d;margin-left:auto;font-size:11px;font-weight:400}.pt-fold-head .pt-fold-meta+svg{margin-left:0}.pt-fold-body{border-top:1px solid #f0e7e0;padding:8px 16px 16px}.pt-version{border-bottom:1px solid #f4ece6;justify-content:space-between;align-items:center;gap:12px;padding:11px 0;display:flex}.pt-version:last-child{border-bottom:0}.pt-version>div:first-child{gap:3px;min-width:0;display:grid}.pt-version strong{color:#625750;font-size:12px;font-weight:500}.pt-version span{color:#a2958d;font-size:11px}.pt-version-actions{gap:6px;display:flex}.pt-version-actions button{color:#655a53;font:inherit;cursor:pointer;background:#fff;border:1px solid #e2d8d1;border-radius:7px;padding:5px 10px;font-size:11px}.pt-version-actions button.danger{color:#a06d6d;border-color:#c7979766}.pt-empty{text-align:center;color:#a2958d;padding:20px 0 12px;font-size:12px}.pt-narrative{white-space:pre-wrap;overflow-wrap:anywhere;color:#574f49;background:#fff8f2;border-radius:9px;max-height:420px;margin:8px 0 12px;padding:14px;font:12px/1.7 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;overflow:auto}.pt-hint{color:#a2958d;font-size:11px}.pt-sheet-overlay{z-index:1000;background:#3027225c;justify-content:center;align-items:flex-end;padding:16px;display:flex;position:fixed;inset:0}.pt-sheet{background:#fffdfc;border-radius:18px 18px 12px 12px;width:min(720px,100%);max-height:86vh;padding:8px 16px 18px;box-shadow:0 -10px 40px #392a2229}.pt-sheet-handle{background:#d8cec7;border-radius:99px;width:38px;height:4px;margin:0 auto 10px}.pt-sheet-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.pt-sheet-head>div{gap:3px;display:grid}.pt-sheet-head strong{color:#544a44;font-size:14px}.pt-sheet-head span{color:#998c83;font-size:11px}.pt-sheet-head button{color:#74675f;cursor:pointer;background:#f2eae4;border:0;border-radius:50%;place-items:center;width:32px;height:32px;display:grid}.pt-sheet textarea{resize:vertical;box-sizing:border-box;color:#4e4641;background:#fff8f2;border:1px solid #e8ded6;border-radius:10px;width:100%;height:min(62vh,520px);padding:14px;font:12px/1.65 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.pt-toast{z-index:1100;color:#fff;white-space:nowrap;background:#3d574a;border-radius:999px;padding:10px 16px;font-size:12px;position:fixed;bottom:84px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #2a3e343d}@media (width<=520px){.backstage-page .memory-tabs button{min-width:0;padding:9px 4px;font-size:12px}.pt-selector button{flex:1;min-width:0;padding-inline:8px}.pt-editor-card{padding:11px}.pt-version{align-items:flex-start}.pt-sheet-overlay{padding:0}.pt-sheet{border-radius:18px 18px 0 0}}.ch-provider-list{gap:0;display:grid}.ch-provider-row{border-bottom:1px solid #f0e8e2;justify-content:space-between;align-items:center;gap:10px;padding:12px 0;display:flex}.ch-provider-row:last-child{border-bottom:0}.ch-provider-row.disabled{opacity:.5}.ch-provider-main{flex:1;min-width:0}.ch-provider-name{color:#342f2b;align-items:center;gap:7px;font-size:14px;font-weight:500;display:flex}.ch-provider-meta{color:#9a8b80;white-space:nowrap;text-overflow:ellipsis;max-width:200px;margin-top:2px;font-size:11px;overflow:hidden}.ch-provider-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.ch-type-tag{letter-spacing:.03em;white-space:nowrap;border-radius:4px;padding:1px 7px;font-size:10px;font-weight:600;display:inline-block}.ch-btn-test{color:#76675e;cursor:pointer;white-space:nowrap;background:#fdfaf7;border:1px solid #e8ded6;border-radius:7px;align-items:center;gap:4px;padding:4px 10px;font-size:11px;display:inline-flex}.ch-btn-test:active{background:#f5eee8}.ch-test-ok{color:#3d574a;font-weight:600}.ch-test-fail{color:#8e5f62;font-weight:600}.ch-toggle-sm{cursor:pointer;background:#d5cec7;border:0;border-radius:10px;width:36px;height:20px;transition:background .2s;position:relative}.ch-toggle-sm.on{background:#3d574a}.ch-toggle-sm .ch-toggle-knob{background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000026}.ch-toggle-sm.on .ch-toggle-knob{transform:translate(16px)}.ch-btn-icon{color:#9a8b80;cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;width:30px;height:30px;display:grid}.ch-btn-icon:active{background:#f0e8e2}.ch-section-toggle{cursor:pointer;color:#76675e;background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;padding:0;display:flex}.ch-route-list{gap:0;display:grid}.ch-route-row{border-bottom:1px solid #f0e8e2;padding:10px 0}.ch-route-row:last-child{border-bottom:0}.ch-route-main{color:#342f2b;flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;display:flex}.ch-route-alias{font-weight:600}.ch-route-arrow{color:#c1b5ab}.ch-route-model{color:#76675e;word-break:break-all}.ch-route-footer{justify-content:space-between;align-items:center;margin-top:6px;display:flex}.ch-route-pills{flex-wrap:wrap;gap:4px;display:flex}.ch-pill{color:#3d574a;background:#3d574a1a;border-radius:5px;padding:2px 8px;font-size:10px;font-weight:500}.ch-pill.off{opacity:.4;text-decoration:line-through}.ch-pill-warn{color:#8e5f62;background:#c7979733;border-radius:5px;padding:2px 8px;font-size:10px}.ch-sheet-overlay{z-index:1000;background:#342f2b66;justify-content:center;align-items:flex-end;animation:.2s ch-fade-in;display:flex;position:fixed;inset:0}@keyframes ch-fade-in{0%{opacity:0}}.ch-sheet{-webkit-overflow-scrolling:touch;background:#fff8f2;border-radius:18px 18px 0 0;width:100%;max-width:480px;max-height:88vh;padding:0 20px 28px;animation:.25s ch-slide-up;overflow-y:auto}@keyframes ch-slide-up{0%{transform:translateY(100%)}}.ch-sheet-handle{background:#d5cec7;border-radius:2px;width:36px;height:4px;margin:10px auto 14px}.ch-sheet-header{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.ch-sheet-label{color:#342f2b;font-size:18px;font-weight:600}.ch-sheet-close{color:#76675e;cursor:pointer;background:#efe5dc;border:0;border-radius:50%;place-items:center;width:32px;height:32px;display:grid}.ch-sheet-body{gap:16px;display:grid}.ch-field{flex-direction:column;gap:5px;display:flex}.ch-field>span{color:#76675e;font-size:12px;font-weight:600}.ch-field input,.ch-field select{color:#342f2b;-webkit-appearance:none;background:#fff;border:1px solid #e8ded6;border-radius:10px;outline:none;padding:10px 12px;font-size:14px}.ch-field input:focus,.ch-field select:focus{border-color:#3d574a}.ch-field input.ch-disabled{color:#9a8b80;background:#f5f0eb}.ch-field-row{flex-direction:row;justify-content:space-between;align-items:center}.ch-key-input{display:flex;position:relative}.ch-key-input input{flex:1;padding-right:40px}.ch-key-toggle{color:#9a8b80;cursor:pointer;background:0 0;border:0;place-items:center;width:32px;height:32px;display:grid;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.ch-toggle{cursor:pointer;background:#d5cec7;border:0;border-radius:12px;flex-shrink:0;width:44px;height:24px;transition:background .2s;position:relative}.ch-toggle.on{background:#3d574a}.ch-toggle .ch-toggle-knob{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000026}.ch-toggle.on .ch-toggle-knob{transform:translate(20px)}.ch-sheet-footer{gap:12px;margin-top:24px;display:grid}.ch-btn-primary{color:#fff;cursor:pointer;background:#3d574a;border:0;border-radius:12px;width:100%;padding:12px;font-size:15px;font-weight:600}.ch-btn-primary:active{background:#2e4238}.ch-btn-danger{color:#8e5f62;cursor:pointer;background:0 0;border:0;border-radius:10px;width:100%;padding:10px;font-size:13px}.ch-btn-danger:active{background:#c797971f}.ch-delete-confirm{color:#8e5f62;justify-content:center;align-items:center;gap:10px;font-size:13px;display:flex}.ch-btn-danger-sm,.ch-btn-cancel-sm{cursor:pointer;border:0;border-radius:7px;padding:5px 14px;font-size:12px;font-weight:600}.ch-btn-danger-sm{color:#fff;background:#c79797}.ch-btn-cancel-sm{color:#76675e;background:#efe5dc}.ch-fallback-list{gap:0;display:grid}.ch-fallback-item{cursor:pointer;border-bottom:1px solid #f0e8e2;border-radius:0;align-items:center;gap:10px;padding:10px 8px;transition:background .15s;display:flex}.ch-fallback-item:last-child{border-bottom:0}.ch-fallback-item:active{background:#3d574a0a}.ch-fallback-item.selected{background:#3d574a0f}.ch-fallback-check{color:#3d574a;border:1.5px solid #d5cec7;border-radius:5px;flex-shrink:0;place-items:center;width:20px;height:20px;display:grid}.ch-fallback-item.selected .ch-fallback-check{color:#fff;background:#3d574a;border-color:#3d574a}.ch-fallback-info{flex:1;align-items:center;gap:7px;min-width:0;display:flex}.ch-fallback-name{color:#342f2b;font-size:13px}.ch-fallback-order{flex-shrink:0;align-items:center;gap:4px;display:flex}.ch-fallback-rank{color:#3d574a;text-align:center;width:20px;font-size:11px;font-weight:600}.ch-fallback-order button{cursor:pointer;color:#76675e;background:#fff;border:1px solid #e8ded6;border-radius:5px;place-items:center;width:22px;height:22px;font-size:9px;display:grid}.ch-fallback-order button:disabled{opacity:.3}.ch-model-list{gap:0;display:grid}.ch-model-row{border-bottom:1px solid #f0e8e2;flex-wrap:wrap;align-items:center;gap:6px;padding:9px 0;font-size:13px;display:flex}.ch-model-row:last-child{border-bottom:0}.ch-model-label{color:#342f2b;font-weight:600}.ch-model-alias{color:#9a8b80;font-size:11px}.ch-model-route{color:#76675e;font-size:12px}.ch-model-actions{align-items:center;gap:3px;margin-left:auto;display:flex}.ch-model-actions button{cursor:pointer;color:#76675e;background:#fff;border:1px solid #e8ded6;border-radius:5px;place-items:center;width:22px;height:22px;font-size:9px;display:grid}.ch-model-actions button:disabled{opacity:.3}.ch-model-del{color:#8e5f62!important;border-color:#c797974d!important}.ch-model-add-form{background:#faf5f0;border-radius:10px;gap:8px;margin-top:10px;padding:12px;display:grid}.ch-model-add-form input{color:#342f2b;-webkit-appearance:none;background:#fff;border:1px solid #e8ded6;border-radius:8px;outline:none;padding:8px 10px;font-size:13px}.ch-model-add-form input:focus{border-color:#3d574a}.ch-whitelist{flex-wrap:wrap;gap:6px;display:flex}.ch-whitelist-item{color:#76675e;cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid #e8ded6;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;transition:all .15s;display:inline-flex}.ch-whitelist-item input{display:none}.ch-whitelist-check{border:1.5px solid #d5cec7;border-radius:4px;flex-shrink:0;place-items:center;width:16px;height:16px;font-size:10px;display:grid}.ch-whitelist-item.on{color:#3d574a;background:#3d574a14;border-color:#3d574a;font-weight:500}.ch-whitelist-item.on .ch-whitelist-check{color:#fff;background:#3d574a;border-color:#3d574a}.ch-perm-group{margin-bottom:16px}.ch-perm-group:last-child{margin-bottom:0}.ch-perm-label{color:#76675e;margin-bottom:8px;font-size:12px;font-weight:600}.arch-intro h2{color:#3d574a;margin:2px 0 8px;font:600 24px/1.2 Noto Serif SC,serif}.arch-intro p{color:#76675e;margin:0;font-size:13px;line-height:1.7}.arch-flow{gap:10px;display:grid}.arch-arrow{color:#a48e82;text-align:center;font-size:20px;line-height:1}.arch-card{padding:0;overflow:hidden}.arch-card-head{text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:flex-start;gap:12px;width:100%;padding:16px 18px;display:flex}.arch-card-title-wrap h3{color:#4f4742;margin:2px 0 6px;font-size:17px;line-height:1.35}.arch-card-kicker{color:#a48e82;letter-spacing:.08em;text-transform:uppercase;font-size:11px}.arch-card-summary{color:#7f7067;font-size:12px;line-height:1.65}.arch-card-chevron{color:#a48e82;flex:none;margin-top:6px;transition:transform .18s}.arch-card-chevron.is-open{transform:rotate(180deg)}.arch-card-body{border-top:1px solid #f0e8e2;padding:0 18px 18px}.arch-row{grid-template-columns:132px 1fr;align-items:start;gap:10px;padding-top:12px;display:grid}.arch-row-label{color:#8e8077;font-size:12px}.arch-row-value{color:#504842;word-break:break-word;font-size:13px;line-height:1.7}.arch-row-value.is-muted{color:#9a8b80}.arch-subsection{padding-top:14px}.arch-subtitle{color:#8e8077;letter-spacing:.04em;font-size:12px;font-weight:600}.arch-mini-list{gap:8px;margin-top:10px;display:grid}.arch-mini-item{background:#f8f4f0;border-radius:12px;gap:7px;padding:11px 12px;display:grid}.arch-mini-item strong{color:#4f4742;font-size:13px;display:block}.arch-mini-item span{color:#9a8b80;font-size:11px}.arch-mini-meta{flex-wrap:wrap;gap:8px 12px;display:flex}.arch-mini-meta span{color:#76675e}.arch-params{gap:10px;display:grid}.arch-param-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.arch-param-item{background:#f8f4f0;border-radius:12px;gap:5px;padding:12px 13px;display:grid}.arch-param-item span{color:#8e8077;font-size:11px}.arch-param-item strong{color:#3d574a;font-size:15px;line-height:1.4}.arch-param-wide{grid-column:1/-1}@media (width<=560px){.arch-card-head{padding:15px 16px}.arch-card-body{padding:0 16px 16px}.arch-row{grid-template-columns:1fr;gap:4px}.arch-param-grid{grid-template-columns:1fr}.arch-intro h2{font-size:21px}}.st-content{gap:14px;padding:14px 16px 96px;display:grid}.st-card{background:#fff;border:1px solid #f0e8e2;border-radius:8px;padding:16px;box-shadow:0 8px 24px #49382d0f}.st-card h2{color:#3d574a;margin:0 0 12px;font-size:16px;font-weight:650;line-height:1.35}.st-fields{gap:10px;display:grid}.st-row{grid-template-columns:minmax(0,1fr) minmax(96px,132px);align-items:center;gap:14px;min-height:58px;display:grid}.st-copy{gap:4px;min-width:0;display:grid}.st-copy span{color:#342f2b;font-size:14px;font-weight:600;line-height:1.35}.st-copy small{color:#8e8077;font-size:12px;line-height:1.5}.st-row input{color:#342f2b;-webkit-appearance:none;background:#fffcf8;border:1px solid #e8ded6;border-radius:8px;outline:none;width:100%;height:38px;padding:0 10px;font-size:14px}.st-row input:focus{border-color:#3d574a;box-shadow:0 0 0 3px #3d574a1c}.st-row input.invalid{border-color:#c79797;box-shadow:0 0 0 3px #c7979726}.st-toggle{cursor:pointer;background:#cfc8c1;border:0;border-radius:12px;justify-self:end;width:44px;height:24px;transition:background .2s;position:relative}.st-toggle.on{background:#3d574a}.st-toggle:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 4px #00000029}.st-toggle.on:after{transform:translate(20px)}.st-field-error{color:#c79797;margin-top:8px;font-size:12px;line-height:1.5}.st-error{color:#8e5f62;background:#c797971a;border:1px solid #c7979761;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-size:13px;display:flex}.st-error button{color:#3d574a;cursor:pointer;background:0 0;border:0;font-weight:650}.st-loading{color:#76675e;place-items:center;gap:8px;min-height:160px;font-size:13px;display:grid}.st-actions{justify-content:center;padding-top:2px;display:flex}.st-save{color:#fff;cursor:pointer;background:#3d574a;border:0;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-width:116px;height:40px;font-size:14px;font-weight:650;display:inline-flex;box-shadow:0 8px 22px #3d574a2e}.st-save:disabled{cursor:default;box-shadow:none;background:#d7d0ca}@media (width<=560px){.st-content{padding-inline:12px}.st-card{padding:15px 14px}.st-row{grid-template-columns:minmax(0,1fr) 98px;gap:10px}}.diary-page{min-height:100vh;padding:calc(env(safe-area-inset-top,0) + 14px) 20px calc(92px + env(safe-area-inset-bottom,0));color:#3d574a;background:#fff8f2}.diary-header{align-items:center;gap:12px;max-width:720px;margin:0 auto;padding:8px 0 22px;display:flex}.diary-header h1{color:#3d574a;margin:0;font-family:Caveat,cursive;font-size:28px;font-weight:500;line-height:1.1}.diary-back{color:#3d574a;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#ffffffa3;border:0;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex;box-shadow:0 1px 6px #3d574a14}.diary-list,.diary-reading,.diary-loading,.diary-empty{max-width:720px;margin:0 auto}.diary-group{margin-bottom:22px}.diary-date-group{color:#8b7d72;margin:0 0 9px;padding-left:2px;font-family:Caveat,cursive;font-size:22px;line-height:1.2}.diary-card{text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#ffffffd1;border:1px solid #c7979729;border-radius:8px;width:100%;margin:0 0 12px;padding:16px;display:block;box-shadow:0 2px 12px #49382d0f}.diary-card:active{background:#faf5ef}.diary-preview{-webkit-line-clamp:3;color:#5a4f46;white-space:normal;-webkit-box-orient:vertical;font-size:14px;line-height:1.7;display:-webkit-box;overflow:hidden}.diary-reading{padding:0 4px 12px}.diary-content{white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;color:#3d574a;margin:0;font-family:Inter,sans-serif;font-size:14px;line-height:1.8}.diary-loading{place-items:center;min-height:180px;display:grid}.diary-spinner{border:2px solid #3d574a2e;border-top-color:#3d574a;border-radius:50%;width:26px;height:26px;animation:.8s linear infinite diary-spin}.diary-empty{text-align:center;color:#8b7d72;padding:48px 8px;font-size:14px;line-height:1.6}@keyframes diary-spin{to{transform:rotate(360deg)}}@media (width<=430px){.diary-page{padding-inline:16px}.diary-header h1{font-size:26px}}.diary-ym-wrap{max-width:720px;margin:0 auto 16px;position:relative}.diary-ym-bar{background:#ffffffdb;border:1px solid #c7979724;border-radius:8px;align-items:stretch;display:flex;overflow:hidden;box-shadow:0 2px 12px #49382d0d}.diary-year-btn{color:#3d574a;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#f5efe8;border:0;border-right:1px solid #e8ddd4;flex-shrink:0;justify-content:center;align-items:center;gap:4px;min-width:82px;padding:10px 13px;font-size:15px;font-weight:650;display:flex}.diary-year-dropdown{z-index:20;background:#fff;border-radius:0 0 8px 8px;min-width:82px;position:absolute;top:100%;left:0;overflow:hidden;box-shadow:0 8px 24px #49382d24}.diary-year-dropdown button{color:#5a4f46;text-align:left;cursor:pointer;background:0 0;border:0;width:100%;padding:10px 14px;font-size:15px;display:block}.diary-year-dropdown button:hover{background:#faf5ef}.diary-year-dropdown button.active{color:#3d574a;font-weight:650}.diary-month-scroll{scrollbar-width:none;-ms-overflow-style:none;flex:1;gap:4px;min-width:0;padding:6px 8px;display:flex;overflow-x:auto}.diary-month-scroll::-webkit-scrollbar{display:none}.diary-month-btn{color:#8b7d72;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:16px;flex-shrink:0;min-width:38px;height:32px;padding:0 13px;font-size:14px;transition:background .15s,color .15s}.diary-month-btn.active{color:#fff;background:#3d574a}@media (width<=430px){.diary-year-btn{min-width:78px;padding-inline:11px}.diary-month-btn{min-width:34px;padding-inline:11px}}@media (hover:hover) and (pointer:fine){.msg-touchable{-webkit-user-select:text;user-select:text}}.mp-divider{background:#f0e8e2;height:1px;margin:6px 0}.mp-section{border-color:#3d574a1f}.mp-provider-list{gap:0;display:grid}.mp-provider-row{border-bottom:1px solid #f0e8e2;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.mp-provider-row:last-child{border-bottom:0}.mp-provider-row.disabled{opacity:.5}.mp-provider-main{flex:1;min-width:0}.mp-provider-name{color:#342f2b;align-items:center;gap:8px;font-weight:600;display:flex}.mp-provider-meta{color:#9a8b80;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:12px;overflow:hidden}.mp-model-groups{gap:18px;margin-top:14px;display:grid}.mp-model-group{gap:8px;display:grid}.mp-model-group-head{color:#76675e;justify-content:space-between;align-items:center;gap:10px;font-size:13px;font-weight:700;display:flex}.mp-model-row{border-bottom:1px solid #f0e8e2;grid-template-columns:minmax(0,1fr) auto 32px;align-items:center;gap:8px;padding:10px 0;display:grid}.mp-model-row:last-child{border-bottom:0}.mp-model-main{flex-wrap:wrap;align-items:center;gap:7px;min-width:0;display:flex}.mp-model-provider{color:#9a8b80;white-space:nowrap;font-size:12px}.mp-empty{color:#a8998f;padding:12px 0;font-size:13px}.fish-preview-section{border-color:#3d574a1f}.fish-preview-body{gap:12px;min-width:0;margin-top:12px;display:grid}.fish-preview-text textarea{resize:vertical;box-sizing:border-box;background:#fffdf9;border:1px solid #e1d5cc;border-radius:6px;outline:none;width:100%;min-height:74px;padding:9px 10px;font-size:13px;line-height:1.55}.fish-preview-text textarea:focus{border-color:#3d574a}.fish-preview-presets{flex-wrap:wrap;gap:6px;min-width:0;margin-top:-4px;display:flex}.fish-preview-preset{color:#76675e;cursor:pointer;white-space:nowrap;background:#fffdf9c7;border:1px solid #3d574a29;border-radius:6px;justify-content:center;align-items:center;max-width:100%;min-height:26px;padding:3px 9px;font-size:12px;line-height:1.3;display:inline-flex}.fish-preview-preset:active{background:#f0e8e2}.fish-preview-preset.active{color:#3d574a;background:#3d574a1a;border-color:#3d574a5c;font-weight:700}.fish-preview-controls{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;min-width:0;display:grid}.fish-preview-profile{min-width:0}.fish-preview-generate{white-space:nowrap;justify-content:center;align-items:center;gap:6px;min-height:34px;display:inline-flex}.fish-preview-generate:disabled{opacity:.55;cursor:not-allowed}.fish-preview-error{color:#a45f5f;font-size:12px;line-height:1.45}.fish-preview-result{gap:8px;min-width:0;display:grid}.fish-preview-audio{width:100%;max-width:100%;height:34px;display:block}.fish-preview-meta{flex-wrap:wrap;gap:6px;min-width:0;display:flex}.fish-preview-pill{color:#76675e;overflow-wrap:anywhere;background:#3d574a12;border-radius:6px;align-items:center;gap:5px;max-width:100%;padding:3px 8px;font-size:12px;line-height:1.35;display:inline-flex}.fish-preview-pill b{color:#3d574a;font-weight:700}@media (width<=430px){.fish-preview-controls{grid-template-columns:1fr}.fish-preview-generate{width:100%}}@media (width<=560px){.mp-provider-row{flex-direction:column;align-items:flex-start}.mp-model-row{grid-template-columns:minmax(0,1fr) 32px}.mp-model-provider{grid-column:1/-1}}.ps-card,.dm-card,.mb-card,.vb-card,.rv-card,.rv-empty{background:#fff;border:1px solid #e8ddd5;border-radius:8px;box-shadow:0 8px 22px #3d574a0f}.ps-toggle-list{gap:12px;display:grid}.ps-toggle-row{border-bottom:1px solid #f0e8e0;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;display:flex}.ps-toggle-row:last-child{border-bottom:0}.ps-label{color:#2d2d2d;font-weight:700}.ps-desc,.mb-tags,.rv-card-head span,.rv-text-block small{color:#8b8b8b;font-size:.86rem}.ps-grid,.mb-form-row,.mb-filter-row,.vb-controls,.dm-actions{gap:12px;display:grid}.ps-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px}.ps-actions{margin-top:14px}.dm-actions button,.mb-primary,.mb-search button,.mb-filter-row button,.mb-form-row button,.mb-item-actions button,.mb-pagination button,.vb-tabs button,.vb-search button,.vb-danger,.vb-pagination button,.rv-filters button,.rv-actions button,.rv-submit{color:#3d574a;background:#fff;border:1px solid #e8ddd5;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:38px;font-weight:700;display:inline-flex}.dm-actions button,.mb-primary,.rv-submit{color:#fff;background:#3d574a;border-color:#3d574a}.dm-actions button.is-muted{color:#8b8b8b;background:#f4f0ec;border-color:#e8ddd5}.mb-content,.vb-content,.rv-content{gap:14px;width:min(980px,100% - 28px);margin:0 auto;padding:14px 0 34px;display:grid}.mb-card,.vb-card,.rv-card,.rv-empty{padding:16px}.mb-card textarea,.mb-card input,.mb-card select,.vb-card input,.vb-card select,.rv-card textarea{color:#2d2d2d;background:#fffdfc;border:1px solid #e8ddd5;border-radius:8px;width:100%;padding:10px 11px;font-size:.95rem}.mb-card textarea,.rv-card textarea{resize:vertical}.mb-form-row{grid-template-columns:repeat(2,minmax(0,1fr))}.mb-search,.vb-search{grid-template-columns:1fr auto;gap:10px;display:grid}.mb-filter-row{grid-template-columns:repeat(4,minmax(0,1fr))}.mb-filter-row button.active,.vb-tabs button.active,.rv-filters button.active,.rv-actions button.active{color:#fff;background:#3d574a;border-color:#3d574a}.mb-item{border-bottom:1px solid #f0e8e0;padding:14px 0}.mb-item:last-child{border-bottom:0}.mb-item-meta,.rv-card-head{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px;display:flex}.mb-stars{color:#c4a05a;letter-spacing:0}.mb-item p,.rv-text-block p{color:#2d2d2d;white-space:pre-wrap;margin:0;line-height:1.55}.mb-item-actions,.mb-pagination,.vb-pagination,.rv-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.mb-item-actions button.danger,.vb-danger,.rv-actions button.danger{color:#c79797}.mb-pagination,.vb-pagination{justify-content:center;align-items:center}.vb-table{gap:0;display:grid}.vb-row{border-bottom:1px solid #f0e8e0;grid-template-columns:minmax(0,1fr) 120px 90px;align-items:center;gap:12px;padding:11px 0;display:grid}.vb-row.has-score{grid-template-columns:minmax(0,1fr) 120px 70px 90px}.vb-row span:first-child{overflow-wrap:anywhere;min-width:0}.vb-head{color:#3d574a;font-weight:800}.rv-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.rv-stats div,.rv-result{text-align:center;background:#fff;border:1px solid #e8ddd5;border-radius:8px;padding:14px}.rv-stats span{color:#3d574a;font-size:1.6rem;font-weight:800;display:block}.rv-stats small{color:#8b8b8b}.rv-filters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.rv-text-block{background:#fffdfc;border:1px solid #f0e8e0;border-radius:8px;margin-top:10px;padding:12px}.rv-text-block.is-new{background:#f8fcf9;border-color:#d9e6dc}.rv-actions button.muted{color:#8b8b8b}.rv-submit{min-height:46px;position:sticky;bottom:16px}@media (width<=720px){.ps-grid,.dm-actions,.mb-form-row,.mb-filter-row,.vb-controls,.rv-stats,.mb-search,.vb-search{grid-template-columns:1fr}.vb-row,.vb-row.has-score{grid-template-columns:1fr;gap:6px}}.dm-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.mb-compact,.vb-compact{gap:10px;width:min(760px,100% - 24px)}.mb-panel,.vb-panel{background:#fff;border:1px solid #e8ddd5;border-radius:8px;padding:12px}.mb-fold-title{color:#3d574a;background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:0;font-weight:800;display:flex}.mb-fold-title svg{transition:transform .16s}.mb-fold-title svg.is-open{transform:rotate(180deg)}.mb-fold-title span{color:#8b8b8b;margin-left:auto;font-size:.78rem;font-weight:600}.mb-write-body{gap:9px;margin-top:10px;display:grid}.mb-write-body textarea,.mb-write-body input,.mb-write-body select,.mb-filter-panel input,.mb-filter-panel select,.vb-panel input,.vb-panel select{color:#2d2d2d;background:#fffdfc;border:1px solid #e8ddd5;border-radius:8px;padding:9px 10px;font-size:.9rem}.mb-write-body textarea{resize:vertical}.mb-write-row{grid-template-columns:.7fr .7fr minmax(0,1.4fr);gap:8px;display:grid}.mb-primary-compact{width:fit-content;min-height:34px;padding:0 14px}.mb-search-line,.vb-search{grid-template-columns:1fr 40px;gap:8px;display:grid}.mb-search-line button,.vb-search button{color:#fff;background:#3d574a;border:1px solid #3d574a;border-radius:8px;min-height:38px}.mb-filter-line{grid-template-columns:minmax(0,1fr) 110px;gap:8px;margin-top:8px;display:grid}.mb-pill-group{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.mb-pill-group button,.vb-tabs button{color:#3d574a;background:#fff;border:1px solid #e8ddd5;border-radius:999px;min-height:34px;font-size:.86rem;font-weight:700}.mb-pill-group button.active,.vb-tabs button.active{color:#fff;background:#3d574a;border-color:#3d574a}.mb-date-line{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;align-items:center;gap:7px;margin-top:8px;display:grid}.mb-date-line span{color:#8b8b8b}.mb-date-line button{color:#3d574a;background:0 0;border:0;min-height:36px;font-weight:700}.mb-list,.vb-list{background:#fff;border:1px solid #e8ddd5;border-radius:8px;padding:0 12px}.mb-list-title{color:#3d574a;text-align:center;padding:12px 0 4px;font-weight:800}.mb-line-item,.vb-line-item{border-bottom:1px solid #e8ddd5;padding:12px 0}.mb-line-item:last-of-type,.vb-line-item:last-of-type{border-bottom:0}.mb-line-main,.vb-line-main{text-align:left;background:0 0;border:0;width:100%;padding:0}.mb-item-meta{color:#8b8b8b;font-size:.75rem;line-height:1.4}.mb-item-meta span{color:#c4a05a;letter-spacing:0}.mb-line-main p,.vb-line-main p{color:#2d2d2d;-webkit-box-orient:vertical;margin:5px 0 0;line-height:1.52;display:-webkit-box;overflow:hidden}.mb-line-main p{-webkit-line-clamp:3}.vb-line-main p{-webkit-line-clamp:2}.mb-line-main p.is-expanded,.vb-line-main p.is-expanded{display:block}.mb-line-foot,.vb-line-foot{color:#8b8b8b;justify-content:space-between;align-items:center;gap:10px;margin-top:7px;font-size:.75rem;display:flex}.mb-line-foot span,.vb-line-foot span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.mb-line-foot div{flex:none;gap:10px;display:flex}.mb-expand-hint,.vb-expand-hint{color:#8b8b8b;font-size:.75rem;line-height:1}.vb-expand-hint{text-align:left;flex:1}.mb-line-foot button,.vb-line-foot button{color:#3d574a;background:0 0;border:0;padding:0;font-size:.75rem;font-weight:700}.mb-line-foot button.danger,.vb-line-foot button{color:#c79797}.mb-simple-pagination,.vb-simple-pagination{color:#3d574a;justify-content:center;align-items:center;gap:12px;padding:12px 0;font-weight:800;display:flex}.mb-simple-pagination button,.vb-simple-pagination button{color:#3d574a;background:#fff;border:1px solid #e8ddd5;border-radius:999px;width:34px;height:34px}.vb-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.vb-controls{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:9px}.vb-controls label{color:#8b8b8b;align-items:center;gap:6px;font-size:.82rem;display:flex}.vb-controls select{width:auto;min-width:76px;padding:4px 8px;font-size:.82rem}@media (width<=520px){.mb-write-row{grid-template-columns:repeat(2,minmax(0,1fr))}.mb-write-row input{grid-column:1/-1}.dm-actions{grid-template-columns:1fr 1fr}}.lt-page{background:#fff8f2;flex-direction:column;min-height:100vh;display:flex}.lt-topbar{padding:calc(env(safe-area-inset-top,0px) + 12px) 16px 12px;z-index:10;background:#fff8f2;align-items:center;display:flex;position:sticky;top:0}.lt-back-btn{cursor:pointer;color:#3d574a;background:0 0;border:none;align-items:center;padding:4px;display:flex}.lt-topbar-title{text-align:center;color:#2c2420;flex:1;margin-right:28px;font-family:Caveat,cursive;font-size:22px}.lt-year-bar{scrollbar-width:none;border-bottom:1px solid #0000000f;gap:8px;margin-bottom:8px;padding:4px 16px 16px;display:flex;overflow-x:auto}.lt-year-bar::-webkit-scrollbar{display:none}.lt-year-pill{color:#2c2420;cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:transparent;background:0 0;border:1px solid #d4c4bc;border-radius:16px;flex-shrink:0;height:32px;padding:0 14px;font-family:Inter,sans-serif;font-size:13px;transition:transform .15s,box-shadow .15s;position:relative}.lt-year-pill--active,.lt-year-pill.active{color:#fff;background:#3d574a;border-color:#3d574a;font-weight:600;transform:scale(1.1);box-shadow:0 2px 8px #3d574a4d}.lt-pill-dot{background:#e05050;border:1.5px solid #fff8f2;border-radius:50%;width:7px;height:7px;position:absolute;top:3px;right:3px}.lt-grid{grid-template-columns:1fr 1fr;gap:20px;padding:12px 20px 100px;display:grid}.lt-env-wrap{cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;flex-direction:column;align-items:center;gap:10px;display:flex}.lt-envelope{aspect-ratio:4/3;background:#f5ede4;border-radius:4px;width:100%;transition:transform .2s;position:relative;overflow:hidden;box-shadow:0 2px 8px #00000014}.lt-envelope:before{content:"";clip-path:polygon(0 0,100% 0,50% 100%);z-index:1;background:#ede3d6;height:50%;position:absolute;top:0;left:0;right:0}.lt-envelope:after{content:"";clip-path:polygon(0 100%,100% 100%,50% 30%);z-index:1;background:#e8ddd0;height:55%;position:absolute;bottom:0;left:0;right:0}.lt-envelope--read{opacity:.72}.lt-envelope--unread{box-shadow:0 2px 12px #3d574a38,0 0 0 1.5px #3d574a1f}.lt-envelope--locked{filter:saturate(.3)brightness(1.05)}.lt-env-icon{z-index:2;pointer-events:none;font-size:20px;line-height:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.lt-env-check{z-index:2;color:#3d574a;font-size:14px;font-weight:700;position:absolute;bottom:10px;right:12px}.lt-env-unread-dot{z-index:3;background:#e05050;border:2px solid #fff8f2;border-radius:50%;width:9px;height:9px;position:absolute;top:6px;right:6px}.lt-env-label{color:#a89890;text-align:center;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:100%;font-family:Inter,sans-serif;font-size:11px;line-height:1.4;display:-webkit-box;overflow:hidden}.lt-env-label--title{color:#4a3a32;font-size:12px}.lt-wobble{animation:.4s lt-wobble}@keyframes lt-wobble{0%{transform:rotate(0)}25%{transform:rotate(-4deg)}50%{transform:rotate(3deg)}75%{transform:rotate(-2deg)}to{transform:rotate(0)}}.lt-toast{color:#fff;z-index:2000;white-space:nowrap;pointer-events:none;background:#3d574a;border-radius:20px;padding:12px 24px;font-family:Inter,sans-serif;font-size:14px;animation:2s forwards lt-toast-fade;position:fixed;top:45%;left:50%;transform:translate(-50%)}@keyframes lt-toast-fade{0%{opacity:0;transform:translate(-50%)translateY(10px)}15%{opacity:1;transform:translate(-50%)translateY(0)}75%{opacity:1}to{opacity:0}}.lt-anim-overlay{z-index:1000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lt-anim-bg{background:#322d28eb;animation:.4s forwards lt-fade-in;position:absolute;inset:0}@keyframes lt-fade-in{0%{opacity:0}to{opacity:1}}.lt-anim-bg--out{animation:.5s forwards lt-fade-out}@keyframes lt-fade-out{0%{opacity:1}to{opacity:0}}.lt-anim-scene{width:260px;height:310px;animation:.6s .3s both lt-envelope-enter;position:relative}@keyframes lt-envelope-enter{0%{opacity:0;transform:translateY(120px)scale(.8)}to{opacity:1;transform:translateY(0)scale(1)}}.lt-anim-envelope{z-index:3;perspective:600px;background:#f5ede4;border-radius:6px;height:180px;position:absolute;bottom:0;left:0;right:0;box-shadow:0 8px 32px #0000004d}.lt-anim-flap{clip-path:polygon(0 0,100% 0,50% 100%);transform-origin:top;background:#ede3d6;height:50%;animation:.6s 1s forwards lt-flap-open;position:absolute;top:0;left:0;right:0}@keyframes lt-flap-open{0%{transform:rotateX(0)}to{opacity:.3;transform:rotateX(-160deg)}}.lt-anim-paper{z-index:2;opacity:0;background:#fff repeating-linear-gradient(#0000,#0000 24px,#e8e4df 24px 25px) 0 10px;border-radius:4px;height:130px;animation:.6s 1.2s forwards lt-paper-rise;position:absolute;top:150px;left:10%;right:10%;box-shadow:0 2px 8px #0000001a}@keyframes lt-paper-rise{0%{opacity:1;transform:translateY(0)}to{opacity:1;transform:translateY(-80px)}}.lt-anim-from{text-align:center;z-index:2;animation:.5s .5s both lt-fade-in;position:absolute;top:60px;left:0;right:0}.lt-read-fullscreen{z-index:1001;transform-origin:50%;background:#fff8f2;padding:20px 24px 100px;animation:.55s cubic-bezier(.2,0,.2,1) forwards lt-paper-expand;position:fixed;inset:0;overflow-y:auto}@keyframes lt-paper-expand{0%{opacity:0;border-radius:8px;transform:scale(.1)}to{opacity:1;border-radius:0;transform:scale(1)}}.lt-read-close{top:calc(env(safe-area-inset-top,0px) + 16px);z-index:1002;color:#666;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#0000000f;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:20px;display:flex;position:fixed;left:16px}.lt-read-meta{text-align:center;color:#999;margin-top:50px;font-family:Inter,sans-serif;font-size:13px}.lt-read-title{text-align:center;color:#3d574a;margin:12px 0 28px;font-family:Caveat,cursive;font-size:22px;font-weight:500;line-height:1.4}.lt-read-content p{color:#4a4a4a;margin-bottom:16px;font-family:Inter,sans-serif;font-size:16px;line-height:1.8}.lt-fragments{margin-top:20px}.lt-divider{border:none;border-top:1px solid #e8ddd6;margin:0 0 14px}.lt-frag-toggle{color:#a89890;cursor:pointer;background:0 0;border:none;margin-bottom:10px;padding:0;font-family:Inter,sans-serif;font-size:13px}.lt-frag-list{flex-direction:column;gap:8px;display:flex}.lt-frag-card{background:#f5ede4;border-radius:8px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.lt-frag-icon{flex-shrink:0;font-size:16px;line-height:1.5}.lt-frag-text{color:#5a4a3a;font-family:Inter,sans-serif;font-size:13px;line-height:1.6}@media (width>=769px){.lt-grid{width:100%;max-width:480px;margin:0 auto}.lt-year-bar{max-width:480px;margin:0 auto;padding-left:0;padding-right:0}.lt-read-fullscreen{width:100%;max-width:640px;left:50%;right:auto;transform:translate(-50%)}}.gl-page{background:#fff8f2;min-height:100vh;padding-bottom:100px}.gl-header{align-items:center;gap:8px;padding:16px 16px 8px;display:flex}.gl-back{color:#3d574a;cursor:pointer;background:0 0;border:none;padding:4px}.gl-header-center{text-align:center;flex:1}.gl-title{color:#3d574a;margin:0;font-family:Caveat,cursive;font-size:26px;font-weight:600}.gl-subtitle{color:#b8a99a;margin:2px 0 0;font-size:12px}.gl-count{color:#b8a99a;white-space:nowrap;font-size:13px}.gl-upload-btn{color:#3d574a;cursor:pointer;background:0 0;border:none;padding:6px}.gl-loading,.gl-empty{color:#b8a99a;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:300px;display:flex}.gl-empty-hint{color:#c4b5a6;text-align:center;max-width:240px;font-size:12px}.gl-shelf{grid-template-columns:repeat(2,1fr);gap:24px 20px;padding:24px 28px;display:grid}.gl-album-card{cursor:pointer;text-align:center;transition:transform .15s}.gl-album-card:active{transform:scale(.96)}.gl-album-cover{aspect-ratio:3/4;background:#f0e8de;border:1px solid #3d574a14;border-radius:12px;width:100%;position:relative;overflow:hidden;box-shadow:0 2px 8px #0000000f}.gl-album-cover img{object-fit:cover;width:100%;height:100%}.gl-album-empty{color:#c4b5a6;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.gl-album-count-badge{color:#fff8f2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#3d574abf;border-radius:10px;padding:2px 8px;font-size:11px;position:absolute;bottom:8px;right:8px}.gl-album-info{justify-content:center;align-items:center;gap:4px;padding:8px 0 0;display:flex}.gl-album-name{color:#3d574a;font-size:14px;font-weight:500}.gl-album-add .gl-album-cover{background:0 0;border:2px dashed #d4c5b5}.gl-album-page{padding:12px 16px}.gl-photo-grid{grid-template-columns:repeat(3,1fr);gap:16px;padding:8px 0;display:grid}.gl-polaroid{background:#fff;border-radius:3px;padding:6px 6px 0;transition:transform .2s,box-shadow .2s;position:relative;box-shadow:0 2px 6px #00000014,0 1px 2px #0000000a}.gl-polaroid:active{box-shadow:0 4px 12px #0000001f}.gl-polaroid-img{aspect-ratio:1;cursor:pointer;background:#f5ede3;border-radius:1px;width:100%;overflow:hidden}.gl-polaroid-img img{object-fit:cover;width:100%;height:100%}.gl-polaroid-bottom{min-height:28px;padding:6px 2px 8px}.gl-caption-row{cursor:pointer;align-items:center;gap:4px;display:flex}.gl-caption-text{color:#8a7b6b;text-overflow:ellipsis;white-space:nowrap;flex:1;font-family:Caveat,cursive;font-size:12px;overflow:hidden}.gl-caption-edit-icon{color:#c4b5a6;opacity:0;flex-shrink:0;transition:opacity .15s}.gl-polaroid:hover .gl-caption-edit-icon,.gl-polaroid:active .gl-caption-edit-icon{opacity:1}.gl-caption-edit{align-items:center;gap:4px;display:flex}.gl-caption-input{color:#3d574a;background:0 0;border:none;border-bottom:1px solid #d4c5b5;outline:none;flex:1;padding:2px 0;font-family:Caveat,cursive;font-size:12px}.gl-caption-save{color:#3d574a;cursor:pointer;background:0 0;border:none;padding:2px}.gl-photo-actions{opacity:0;gap:2px;transition:opacity .15s;display:flex;position:absolute;top:4px;right:4px}.gl-polaroid:hover .gl-photo-actions,.gl-polaroid:active .gl-photo-actions{opacity:1}.gl-photo-action-btn{cursor:pointer;color:#3d574a;background:#fff8f2d9;border:none;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.gl-photo-delete{color:#c79797}.gl-uploading{text-align:center;color:#b8a99a;padding:16px 0;font-size:13px}.gl-lightbox{z-index:9999;background:#1e1c19f2;flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.gl-lb-close{color:#fff8f2;cursor:pointer;z-index:10;background:0 0;border:none;padding:8px;position:absolute;top:16px;right:16px}.gl-lb-img{object-fit:contain;border-radius:4px;max-width:92vw;max-height:75vh}.gl-lb-info{color:#d4c5b5;flex-direction:column;align-items:center;gap:4px;padding:16px 20px;display:flex}.gl-lb-date{font-family:Caveat,cursive;font-size:16px}.gl-lb-caption{color:#fff8f2;text-align:center;max-width:80vw;font-size:13px}.gl-lb-counter{color:#8a7b6b;font-size:11px}.gl-modal-overlay{z-index:9998;background:#1e1c1980;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.gl-modal{background:#fff8f2;border-radius:16px;width:100%;max-width:320px;padding:24px;box-shadow:0 8px 32px #00000026}.gl-modal h3{color:#3d574a;margin:0 0 16px;font-size:17px;font-weight:600}.gl-modal-input{color:#3d574a;box-sizing:border-box;background:#fff;border:1px solid #d4c5b5;border-radius:10px;outline:none;width:100%;padding:10px 14px;font-size:15px}.gl-modal-input:focus{border-color:#3d574a}.gl-modal-actions{gap:10px;margin-top:16px;display:flex}.gl-modal-btn{cursor:pointer;border:none;border-radius:10px;flex:1;padding:10px;font-size:14px}.gl-modal-cancel{color:#8a7b6b;background:#f0e8de}.gl-modal-confirm{color:#fff8f2;background:#3d574a}.gl-move-list{flex-direction:column;gap:6px;max-height:200px;margin-bottom:16px;display:flex;overflow-y:auto}.gl-move-item{text-align:left;color:#3d574a;cursor:pointer;background:#fff;border:1px solid #e8ddd0;border-radius:10px;padding:10px 14px;font-size:14px}.gl-move-item:active{background:#f0e8de}@media (width<=400px){.gl-shelf{gap:16px;padding:16px}.gl-photo-grid{gap:10px}.gl-polaroid{padding:4px 4px 0}.gl-caption-text{font-size:11px}}.gl-album-edit-btn{color:#c4b5a6;cursor:pointer;background:0 0;border:none;flex-shrink:0;align-items:center;padding:2px;display:flex}.gl-album-edit-btn:active{color:#3d574a}.msg-text-blocks{width:100%;min-width:0;display:block}.msg-text-run{white-space:pre-wrap;word-break:break-word;display:block}.code-card{color:#2c2420;background:#fffcf8e0;border:1px solid #3d574a1f;border-radius:8px;min-width:0;max-width:100%;margin:6px 0;overflow:hidden;box-shadow:inset 0 1px #ffffff8c}.code-card-user{color:#fff;background:#ffffff2e;border-color:#ffffff3d}.code-card-top{color:var(--color-ink-soft);border-bottom:1px solid #3d574a1a;justify-content:space-between;align-items:center;gap:8px;padding:6px 8px;font-size:11px;font-weight:600;display:flex}.code-card-user .code-card-top{color:#ffffffdb;border-bottom-color:#ffffff38}.code-card-actions{flex-shrink:0;align-items:center;gap:4px;display:inline-flex}.code-card-actions button,.code-card-expand{color:inherit;cursor:pointer;font:inherit;background:#3d574a14;border:none;border-radius:6px}.code-card-actions button{justify-content:center;align-items:center;width:26px;height:24px;padding:0;display:inline-flex}.code-card-user .code-card-actions button,.code-card-user .code-card-expand{background:#ffffff29}.code-card-body{box-sizing:border-box;touch-action:pan-x pan-y;white-space:pre;word-break:normal;overflow-wrap:normal;width:100%;min-width:0;max-width:100%;margin:0;padding:8px 10px;font:12px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;overflow:auto hidden}.code-card-body code{font:inherit;white-space:inherit}@media (hover:hover) and (pointer:fine){.code-card-body{scrollbar-width:thin;scrollbar-color:#3d574a57 #3d574a14}.code-card-body::-webkit-scrollbar{height:7px}.code-card-body::-webkit-scrollbar-track{background:#3d574a14;border-radius:999px}.code-card-body::-webkit-scrollbar-thumb{background:#3d574a57;border-radius:999px}.code-card-user .code-card-body{scrollbar-color:#ffffff6b #ffffff24}.code-card-user .code-card-body::-webkit-scrollbar-track{background:#ffffff24}.code-card-user .code-card-body::-webkit-scrollbar-thumb{background:#ffffff6b}}.code-card-expand{text-align:center;width:calc(100% - 16px);margin:0 8px 8px;padding:6px 8px;font-size:12px;display:block}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
