:root{--bg: #fafaf7;--bg-alt: #f2f1ec;--panel: #ffffff;--border: #d9d6cc;--ink: #1a1a1a;--muted: #707070;--link: #1a5fb4;--link-visited: #6c3bbb;--broken: #c23b3b;--accent: #b6772c;--danger: #b43a3a;--radius: 4px;--serif: Charter, Georgia, "Noto Serif KR", "Nanum Myeongjo", ui-serif, serif;--sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans KR", "Malgun Gothic", Roboto, ui-sans-serif, sans-serif;--mono: "SF Mono", Menlo, Consolas, "Liberation Mono", monospace}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--serif);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}a:visited{color:var(--link-visited)}code,pre{font-family:var(--mono);font-size:.92em}pre{background:var(--bg-alt);border:1px solid var(--border);padding:.9rem 1rem;border-radius:var(--radius);overflow-x:auto}code{background:var(--bg-alt);padding:0 .25em;border-radius:3px}pre code{background:none;padding:0}.layout{display:grid;grid-template-columns:280px 1fr;height:100vh;height:100dvh}.main{display:flex;flex-direction:column;background:var(--panel);min-height:0;overflow:hidden}.main__content{flex:1 1 0;min-height:0;overflow-y:auto;display:block}.pad{padding:2.5rem 3rem;max-width:900px;margin:0 auto}@media (max-width: 900px){.pad{padding:1.5rem}}@media (max-width: 600px){.pad{padding:1rem .9rem}}.mobile-topbar{display:none}.layout__backdrop{display:none;border:none;padding:0;background:transparent;cursor:pointer}@media (max-width: 768px){.layout{grid-template-columns:1fr}.mobile-topbar{display:flex;align-items:center;gap:.4rem;padding:.5rem .6rem;background:var(--bg-alt);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:50}.mobile-topbar__brand{flex:1;text-align:center;font-family:var(--sans);font-weight:600;font-size:15px;letter-spacing:-.01em;color:var(--ink)}.mobile-topbar__btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid transparent;background:transparent;color:var(--ink);border-radius:8px;cursor:pointer;-webkit-tap-highlight-color:transparent}.mobile-topbar__btn:active{background:#00000014}.layout>.sidebar{position:fixed;top:0;bottom:0;left:0;width:86vw;max-width:320px;height:100vh;height:100dvh;transform:translate(-100%);transition:transform .22s ease-out;z-index:200;box-shadow:4px 0 24px #0000002e}.layout.is-drawer-open>.sidebar{transform:translate(0)}.layout__backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:150;opacity:0;pointer-events:none;transition:opacity .22s ease-out}.layout.is-drawer-open .layout__backdrop{opacity:1;pointer-events:auto}.sidebar__close{display:inline-flex!important}.sidebar__header-actions{display:inline-flex;gap:.25rem}.main{min-height:0}body,#root{overflow-x:hidden}input,textarea,select{font-size:16px}.btn{min-height:36px}.btn--icon,.btn--tiny{min-height:0}.chat-page__head{padding:.65rem .9rem;flex-wrap:wrap;gap:.4rem .55rem}.chat-page__head h1{font-size:1.05rem}.chat-page__bg-badge{margin-left:0}.chat-input{padding:.55rem .65rem calc(.55rem + env(safe-area-inset-bottom));gap:.4rem}.chat-input textarea{font-size:16px}.settings-page{padding:1rem .9rem 3rem}.settings-section{padding:.9rem .95rem 1rem}.settings-section h2{font-size:14px}.billing-packages__row{display:grid!important;grid-template-columns:repeat(2,1fr);gap:.45rem}.billing-packages__custom{flex-wrap:wrap}.billing-packages__custom>input{flex:1 1 100%}.onboarding__panel{padding:1.1rem 1rem 1.2rem}.onboarding__row{flex-wrap:wrap;gap:.5rem}.topup-modal{padding:.5rem}.topup-modal__inner{max-height:calc(100dvh - 1rem);padding:1rem}.panel-list{grid-template-columns:1fr!important}}@media (max-width: 380px){.sidebar__header,.sidebar__universe,.sidebar__cmdk{padding-left:.75rem;padding-right:.75rem}.sidebar__section{padding:.5rem .75rem}}.sidebar__close{display:none}.sidebar{background:var(--bg-alt);border-right:1px solid var(--border);display:flex;flex-direction:column;font-family:var(--sans);font-size:14px;overflow:hidden}.sidebar__header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1rem .5rem}.sidebar__universe{padding:0 1rem .6rem;border-bottom:1px solid var(--border);margin-bottom:.4rem}.sidebar__cmdk{display:flex;align-items:center;gap:.5rem;width:calc(100% - 2rem);margin:.25rem 1rem .5rem;padding:.4rem .6rem;background:var(--bg-soft, #f7f3ea);border:1px solid var(--border);border-radius:8px;color:var(--ink-soft, #6c6757);font-size:13px;cursor:pointer;transition:background .12s,border-color .12s}.sidebar__cmdk:hover{background:var(--bg-hover, #efe9da);border-color:var(--ink-soft)}.sidebar__cmdk>span{flex:1;text-align:left}.sidebar__cmdk kbd{font-family:var(--mono, ui-monospace, monospace);font-size:11px;padding:1px 6px;background:var(--bg, #fff);border:1px solid var(--border);border-bottom-width:2px;border-radius:4px;color:var(--ink-soft)}.cmdk{position:fixed;top:0;right:0;bottom:0;left:0;background:#1c181273;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding-top:12vh}.cmdk__panel{width:min(640px,92vw);max-height:70vh;background:var(--bg, #fefdf8);border:1px solid var(--border);border-radius:12px;box-shadow:0 20px 60px #00000040;display:flex;flex-direction:column;overflow:hidden}.cmdk__input-row{display:flex;align-items:center;gap:.6rem;padding:.8rem 1rem;border-bottom:1px solid var(--border);color:var(--ink-soft)}.cmdk__input{flex:1;border:none;outline:none;font-size:16px;font-family:inherit;background:transparent;color:var(--ink, #1f1c14)}.cmdk__hint{font-family:var(--mono, ui-monospace, monospace);font-size:11px;color:var(--ink-soft)}.cmdk__list{overflow-y:auto;padding:.35rem 0}.cmdk__row{display:grid;grid-template-columns:70px 1fr;grid-template-rows:auto auto;grid-template-areas:"cat title" "cat snippet" "cat fields";gap:2px 12px;width:100%;text-align:left;background:transparent;border:none;padding:.55rem 1rem;cursor:pointer;font:inherit;color:var(--ink);border-radius:0}.cmdk__row--selected{background:var(--bg-soft, #f3ecdc)}.cmdk__cat{grid-area:cat;align-self:start;font-size:11px;font-weight:600;text-transform:uppercase;color:var(--ink-soft);letter-spacing:.04em;padding-top:2px}.cmdk__title{grid-area:title;font-weight:600;font-size:14px}.cmdk__snippet{grid-area:snippet;font-size:12px;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cmdk__fields{grid-area:fields;font-size:10px;color:var(--ink-faint, #a59f8a);text-transform:uppercase;letter-spacing:.05em}.cmdk__empty{padding:1.5rem 1rem;text-align:center;color:var(--ink-soft);font-size:13px}.universe-switcher{position:relative;font-family:var(--sans)}.universe-switcher__trigger{display:flex;align-items:center;gap:.5rem;width:100%;padding:.45rem .65rem;background:var(--panel);border:1px solid var(--border);border-radius:6px;cursor:pointer;text-align:left;font-size:.85rem;color:var(--ink);transition:border-color .15s,background .15s}.universe-switcher__trigger:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}.universe-switcher__trigger.is-open{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 6%,var(--panel))}.universe-switcher__name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.universe-switcher__menu{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:50;background:var(--panel);border:1px solid var(--border);border-radius:6px;box-shadow:0 8px 24px #0000001f;overflow:hidden;max-height:70vh;display:flex;flex-direction:column}.universe-switcher__head{display:flex;align-items:center;justify-content:space-between;padding:.5rem .7rem .4rem;border-bottom:1px solid var(--border)}.universe-switcher__title{font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-weight:700}.universe-switcher__list{list-style:none;margin:0;padding:.25rem 0;overflow-y:auto;flex:1}.universe-switcher__item{display:flex;align-items:center;gap:.2rem;padding:0 .3rem}.universe-switcher__item:hover{background:var(--bg-alt)}.universe-switcher__item.is-active{background:color-mix(in srgb,var(--accent) 10%,transparent)}.universe-switcher__item-main{flex:1;display:flex;align-items:center;gap:.5rem;padding:.45rem .5rem;background:none;border:none;cursor:pointer;text-align:left;font-size:.85rem;color:var(--ink);font-family:inherit}.universe-switcher__item-main:disabled{cursor:default;opacity:.6}.universe-switcher__item-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.universe-switcher__item.is-active .universe-switcher__item-name{font-weight:600;color:var(--accent)}.universe-switcher__item-counts{font-family:var(--mono);font-size:.68rem;color:var(--muted)}.universe-switcher__item-gh{display:inline-flex;align-items:center;justify-content:center;color:var(--muted);opacity:.65;flex-shrink:0}.universe-switcher__item-main:hover .universe-switcher__item-gh,.universe-switcher__item.is-active .universe-switcher__item-gh{opacity:1;color:var(--accent)}.universe-switcher__check{color:var(--accent)}.universe-switcher__item-actions{display:inline-flex;align-items:center;gap:1px;opacity:0;transition:opacity .1s}.universe-switcher__item:hover .universe-switcher__item-actions{opacity:1}.universe-switcher__mini{background:none;border:none;cursor:pointer;padding:.3rem .35rem;color:var(--muted);display:inline-flex;align-items:center;justify-content:center;border-radius:3px}.universe-switcher__mini:hover{background:var(--border);color:var(--ink)}.universe-switcher__mini--danger:hover{color:var(--danger);background:color-mix(in srgb,var(--danger) 14%,transparent)}.universe-switcher__rename{flex:1;padding:.35rem .5rem;font-size:.85rem;border:1px solid var(--accent);border-radius:4px;background:var(--panel);color:var(--ink);margin:.1rem}.universe-switcher__new{display:flex;flex-direction:column;gap:.4rem;padding:.55rem .7rem .65rem;border-top:1px solid var(--border)}.universe-switcher__new-row{display:flex;gap:.3rem;align-items:center}.universe-switcher__new-input{flex:1;min-width:0;padding:.35rem .5rem;font-size:.85rem;border:1px solid var(--border);border-radius:4px;background:var(--panel);color:var(--ink)}.universe-switcher__new-input:focus{outline:none;border-color:var(--accent)}.universe-switcher__new-opt{display:inline-flex;align-items:center;gap:.35rem;font-size:.72rem;color:var(--ink-soft, var(--muted));cursor:pointer;-webkit-user-select:none;user-select:none}.universe-switcher__new-opt input{cursor:pointer}.universe-switcher__new-opt input:disabled{cursor:not-allowed}.universe-switcher__new-hint{font-size:.7rem;line-height:1.45}.universe-switcher__error{padding:.4rem .7rem;background:color-mix(in srgb,var(--danger) 10%,transparent);color:var(--danger);font-size:.75rem;border-top:1px solid var(--border)}.universe-switcher__hint{padding:.5rem .7rem;font-size:.7rem;border-top:1px solid var(--border);background:var(--bg-alt)}.universe-switcher__hint--warn{color:#e0b86a;border-top-color:#e0b86a4d;background:#e0b86a14}.universe-switcher__import{display:flex;align-items:center;gap:.5rem;width:100%;padding:.55rem .8rem;background:color-mix(in srgb,var(--accent) 8%,transparent);border:none;border-bottom:1px solid var(--border);cursor:pointer;font-family:inherit;font-size:.82rem;color:var(--ink);text-align:left}.universe-switcher__import:hover{background:color-mix(in srgb,var(--accent) 16%,transparent)}.universe-switcher__import-label{flex:1;font-weight:500}.universe-switcher__gh{border-top:1px solid var(--border);background:color-mix(in srgb,var(--accent) 4%,transparent);padding:.25rem 0 .35rem;display:flex;flex-direction:column;min-height:0}.universe-switcher__gh-head{display:flex;align-items:center;justify-content:space-between;padding:.35rem .7rem .25rem}.universe-switcher__gh-title{display:inline-flex;align-items:center;gap:.35rem;text-transform:uppercase;letter-spacing:.12em;font-size:.65rem;font-weight:700;color:var(--muted)}.universe-switcher__gh-count{background:var(--bg-alt);color:var(--muted);font-size:.6rem;padding:1px 5px;border-radius:99px;letter-spacing:0;font-weight:600}.universe-switcher__gh-status{padding:.35rem .8rem;font-size:.72rem;display:inline-flex;align-items:center;gap:.35rem}.universe-switcher__gh-status--error{color:var(--danger)}.universe-switcher__gh-list{list-style:none;margin:0;padding:0;max-height:30vh;overflow-y:auto}.universe-switcher__gh-item{padding:0 .3rem}.universe-switcher__gh-row{width:100%;display:flex;align-items:center;gap:.45rem;padding:.4rem .5rem;background:none;border:none;border-radius:4px;cursor:pointer;font-family:inherit;font-size:.8rem;color:var(--ink);text-align:left}.universe-switcher__gh-row:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 12%,transparent)}.universe-switcher__gh-row:disabled{cursor:default;opacity:.7}.universe-switcher__gh-row.is-busy{background:color-mix(in srgb,var(--accent) 8%,transparent)}.universe-switcher__gh-row.is-error{background:color-mix(in srgb,var(--danger) 8%,transparent)}.universe-switcher__gh-row-icon{flex-shrink:0;color:var(--muted)}.universe-switcher__gh-row:hover:not(:disabled) .universe-switcher__gh-row-icon{color:var(--accent)}.universe-switcher__gh-row-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.universe-switcher__gh-row-sub{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;font-family:var(--font-mono, ui-monospace, monospace);opacity:.7}.universe-switcher__gh-row-badge{font-size:.6rem;padding:1px 5px;border-radius:99px;background:color-mix(in srgb,var(--accent) 14%,transparent);color:color-mix(in srgb,var(--accent) 80%,var(--ink));text-transform:uppercase;letter-spacing:.04em;font-weight:600;flex-shrink:0}.universe-switcher__gh-row-status{display:inline-flex;align-items:center;gap:.2rem;font-size:.7rem;color:var(--muted);flex-shrink:0}.universe-switcher__gh-row-status--error{color:var(--danger)}.import-nudge{display:flex;align-items:center;gap:.75rem;padding:.7rem .9rem;margin-bottom:1rem;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));border-radius:6px;background:color-mix(in srgb,var(--accent) 8%,var(--panel))}.import-nudge__icon{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--panel);color:var(--ink)}.import-nudge__body{flex:1;font-size:.85rem;line-height:1.4;min-width:0}.import-nudge__actions{flex:0 0 auto;display:flex;align-items:center;gap:.35rem}@media (max-width: 600px){.import-nudge{flex-wrap:wrap}.import-nudge__body{flex:1 1 100%;order:2}.import-nudge__actions{order:3;margin-left:auto}}.gh-import{position:fixed;top:0;right:0;bottom:0;left:0;background:#14120e80;z-index:9300;display:flex;align-items:center;justify-content:center;padding:1rem;animation:toast-in .14s ease-out}.gh-import__inner{background:var(--panel, #fff);border:1px solid var(--border, #d9d6cc);border-radius:var(--radius, 4px);width:100%;max-width:560px;max-height:88vh;display:flex;flex-direction:column;box-shadow:0 22px 48px #00000047;font-family:var(--sans)}.gh-import__head{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;padding:1rem 1.1rem .6rem;border-bottom:1px solid var(--border)}.gh-import__head h3{margin:0 0 .25rem;font-size:16px;font-weight:600}.gh-import__sub{margin:0;font-size:.78rem;line-height:1.45}.gh-import__sub code{font-size:.82em;padding:0 .25em}.gh-import__body{flex:1 1 auto;overflow-y:auto;padding:.5rem 0}.gh-import__loading{display:flex;align-items:center;gap:.5rem;padding:1.5rem;justify-content:center;color:var(--muted);font-size:.85rem}.gh-import__error{margin:.8rem 1.1rem;padding:.7rem .9rem;border-radius:4px;background:color-mix(in srgb,var(--danger) 8%,transparent);color:var(--danger);font-size:.82rem;display:flex;align-items:center;gap:.5rem}.gh-import__error span{flex:1}.gh-import__empty{padding:1.2rem 1.2rem 1.5rem;font-size:.85rem}.gh-import__empty p{margin:0 0 .5rem;font-weight:500}.gh-import__empty-hints{margin:0;padding:0 0 0 1.1rem;font-size:.78rem;line-height:1.55}.gh-import__empty-hints li{margin-bottom:.35rem}.gh-import__empty-hints code{font-size:.85em;padding:0 .25em}.gh-import__retry-inline{margin-left:.35rem;vertical-align:baseline}.gh-import__list{list-style:none;margin:0;padding:0}.gh-import__item{display:flex;align-items:center;gap:.8rem;padding:.7rem 1.1rem;border-bottom:1px solid var(--border)}.gh-import__item:last-child{border-bottom:none}.gh-import__item-main{flex:1;min-width:0}.gh-import__item-line{display:flex;align-items:center;gap:.4rem;font-size:.88rem}.gh-import__item-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.gh-import__badge{font-size:.65rem;padding:1px 6px;border-radius:99px;background:var(--bg-alt);color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.gh-import__badge--private{background:color-mix(in srgb,var(--accent) 14%,transparent);color:color-mix(in srgb,var(--accent) 80%,var(--ink))}.gh-import__item-desc{font-size:.78rem;color:var(--muted);margin-top:.25rem;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.gh-import__item-meta{font-size:.72rem;color:var(--muted);margin-top:.2rem}.gh-import__foot{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.6rem 1rem;border-top:1px solid var(--border);background:var(--bg-alt)}.gh-import__foot-actions{display:flex;gap:.4rem;align-items:center}.gh-import__toolbar{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem 1.1rem;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg-alt) 60%,transparent);font-size:.8rem}.gh-import__select-all{display:flex;align-items:center;gap:.45rem;cursor:pointer;-webkit-user-select:none;user-select:none}.gh-import__select-all input{cursor:pointer}.gh-import__select-all input:disabled{cursor:not-allowed}.gh-import__toolbar-done{display:inline-flex;align-items:center;gap:.25rem;font-size:.75rem}.gh-import__row-check{display:flex;align-items:center;padding-right:.15rem;cursor:pointer}.gh-import__row-check input{cursor:pointer}.gh-import__row-check input:disabled{cursor:not-allowed}.gh-import__item-action{display:flex;align-items:center;gap:.35rem;flex-shrink:0}.gh-import__row-status{display:inline-flex;align-items:center;gap:.3rem;font-size:.76rem;color:var(--muted)}.gh-import__item-main{cursor:pointer}.gh-import__item.is-selected{background:color-mix(in srgb,var(--accent) 8%,transparent)}.gh-import__item.is-busy{background:color-mix(in srgb,var(--accent) 5%,transparent)}.gh-import__item.is-done{opacity:.7}.gh-import__item.is-done .gh-import__item-main{cursor:default}.gh-import__item.is-error{background:color-mix(in srgb,#d33 6%,transparent)}.gh-import__badge--done{display:inline-flex;align-items:center;gap:.15rem;background:color-mix(in srgb,#2a8 18%,transparent);color:color-mix(in srgb,#2a8 75%,var(--ink))}.gh-import__badge--error{background:color-mix(in srgb,#d33 18%,transparent);color:color-mix(in srgb,#d33 75%,var(--ink))}@media (max-width: 600px){.gh-import{padding:0}.gh-import__inner{max-width:100%;max-height:100dvh;height:100dvh;border-radius:0;border:none}.gh-import__toolbar{padding:.5rem .8rem}.gh-import__foot{flex-wrap:wrap}.gh-import__foot-actions{flex:1;justify-content:flex-end}}.brand{font-family:var(--serif);font-size:1.2rem;font-weight:700;color:var(--ink);letter-spacing:-.01em}.brand:hover{text-decoration:none}.sidebar__search{margin:0 1rem .5rem;padding:.45rem .6rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel)}.sidebar__search:focus{outline:2px solid var(--link);outline-offset:-1px}.sidebar__nav{padding:.25rem 0 1rem}.sidebar__section{padding:.5rem 1rem}.sidebar__section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.25rem}.sidebar__section-actions{display:inline-flex;gap:.2rem;align-items:center}.sidebar__section-actions .btn.btn--tiny{display:inline-flex;align-items:center;justify-content:center}.sidebar__cat{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.sidebar__empty{color:var(--muted);font-size:.82rem;font-style:italic;padding:.1rem 0 .3rem}.sidebar__list{list-style:none;margin:0;padding:0}.sidebar__item{display:block;padding:.2rem .4rem;border-radius:var(--radius);color:var(--ink);font-family:var(--serif)}.sidebar__item:hover{background:#0000000d;text-decoration:none}.sidebar__item.is-active{background:var(--ink);color:#fff}.sidebar__item--concept{display:flex;align-items:center;gap:6px}.sidebar__item--concept>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar__concept-thumb{flex:0 0 auto;width:18px;height:18px;border-radius:50%;object-fit:cover;background:var(--bg-alt, #f4efe6);border:1px solid var(--border);display:inline-block;vertical-align:middle}.sidebar__concept-thumb--empty{background:transparent;border:1px dashed var(--border);opacity:.5}.sidebar__item.is-active .sidebar__concept-thumb{border-color:#ffffff59}.sidebar__item.is-active .sidebar__concept-thumb--empty{border-color:#ffffff59;opacity:.6}.sidebar__concept-thumb-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex:0 0 auto}.sidebar__concept-thumb-wrap.is-busy:after{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:50%;border:2px solid var(--accent, #ff8c42);border-top-color:transparent;animation:noveltool-concept-spin 1s linear infinite;pointer-events:none}@keyframes noveltool-concept-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sidebar__concept-thumb-wrap.is-busy .sidebar__concept-thumb{filter:brightness(.9) saturate(.7)}.sidebar__footer{display:grid;grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:.25rem;padding:.6rem .6rem .75rem;border-top:1px solid var(--border);background:var(--bg-alt)}.sidebar__nav-link{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:.45rem .3rem;border-radius:var(--radius);text-decoration:none;color:var(--muted);font-family:var(--sans);font-size:.72rem;white-space:nowrap;transition:background-color .12s,color .12s}.sidebar__nav-link:hover{background:#0000000d;color:var(--ink)}.sidebar__nav-link.is-active{background:var(--ink);color:#fff}.sidebar__nav-label{font-size:.72rem;letter-spacing:-.01em}.sidebar__nav-link .icon{margin-bottom:1px}.icon{display:inline-block;vertical-align:-.15em;flex-shrink:0}.btn--icon{padding:.3rem;display:inline-flex;align-items:center;justify-content:center}.sidebar__new-chat{display:inline-flex!important;align-items:center;justify-content:center;gap:.4rem}.btn{border:1px solid var(--border);background:var(--panel);padding:.35rem .75rem;border-radius:var(--radius);cursor:pointer;font-family:var(--sans);font-size:.88rem;color:var(--ink)}.btn:hover{background:var(--bg-alt)}.btn--primary{background:var(--ink);color:#fff;border-color:var(--ink)}.btn--primary:hover{background:#000}.btn--danger{color:var(--danger);border-color:var(--danger)}.btn--danger:hover{background:var(--danger);color:#fff}.btn--ghost{background:transparent;border-color:transparent}.btn--ghost:hover{background:#0000000d}.btn--tiny{padding:.05rem .4rem;font-size:.9rem;line-height:1}.btn:disabled{opacity:.5;cursor:not-allowed}.entry__crumbs{display:flex;gap:.35rem;margin-bottom:.5rem;align-items:center;flex-wrap:wrap}.pill{display:inline-block;font-family:var(--sans);font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;padding:.1rem .45rem;background:var(--ink);color:#fff;border-radius:10px}.tag{font-family:var(--sans);font-size:.75rem;color:var(--muted)}.entry__title{font-family:var(--serif);font-size:2.4rem;line-height:1.15;margin:.2rem 0 .4rem;letter-spacing:-.015em}.entry__aliases{color:var(--muted);font-size:.9rem;margin:0 0 .4rem}.entry__meta{color:var(--muted);font-family:var(--sans);font-size:.8rem;margin-bottom:1.2rem}.slug{background:var(--bg-alt);padding:.05rem .35rem;border-radius:3px}.entry__actions{display:flex;gap:.4rem;margin-bottom:2rem;border-bottom:1px solid var(--border);padding-bottom:1.2rem}.entry__body{margin-bottom:3rem}.prose h1,.prose h2,.prose h3,.prose h4{font-family:var(--serif);line-height:1.25;margin-top:1.8em;margin-bottom:.4em}.prose h2{font-size:1.5rem;border-bottom:1px solid var(--border);padding-bottom:.2em}.prose h3{font-size:1.2rem}.prose p{margin:0 0 1em}.prose ul,.prose ol{padding-left:1.4em}.prose blockquote{border-left:3px solid var(--border);margin:1em 0;padding:.1em 1em;color:var(--muted);font-style:italic}.prose hr{border:0;border-top:1px solid var(--border);margin:2em 0}.prose--inline{display:inline}.prose--inline p{display:inline;margin:0}.prose--inline ul,.prose--inline ol{display:inline;padding:0;margin:0}.prose--inline blockquote{display:inline;border:none;padding:0;margin:0}.prose--inline code{font-size:.9em}.prose--inline h1,.prose--inline h2,.prose--inline h3,.prose--inline h4{display:inline;font-size:inherit;font-weight:inherit;border:none;padding:0;margin:0}.wikilink{color:var(--link);border-bottom:1px dotted transparent}.wikilink:hover{border-bottom-color:var(--link);text-decoration:none}.wikilink--missing{color:var(--broken)}.wikilink--missing:hover{border-bottom-color:var(--broken)}.wikilink--external{display:inline-flex;align-items:baseline;gap:.25rem;padding:0 .4rem;border-radius:4px;background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);text-decoration:none;cursor:default}.wikilink--external:before{content:"🌐";font-size:.78em;opacity:.85;margin-right:.1rem}.wikilink--external:hover{border-bottom-color:transparent}.wikilink--slug code{font-size:.85em;padding:1px 5px;border-radius:4px;background:var(--surface-alt, #f2efe6);border:1px solid var(--border);color:inherit}.wikilink--slug.wikilink--missing code{background:transparent}.backlinks{border-top:1px solid var(--border);padding-top:1.5rem}.backlinks h2{font-family:var(--sans);font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:0 0 1rem}.backlinks__cols{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.5rem}.backlinks__cols h3{font-family:var(--sans);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 .4rem}.backlinks ul{margin:0;padding-left:1rem}@media (max-width: 800px){.backlinks__cols{grid-template-columns:1fr}}.home h1{font-size:2.6rem;margin:0 0 .3rem;letter-spacing:-.02em}.home .lede{font-size:1.1rem;color:var(--muted);margin:0 0 2rem}.home__stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem}.home__stats>div{padding:1rem;border:1px solid var(--border);border-radius:var(--radius);font-family:var(--sans);font-size:.8rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.home__stats strong{display:block;font-family:var(--serif);font-size:2rem;color:var(--ink);font-weight:700;text-transform:none;letter-spacing:normal}.recent{list-style:none;padding:0}.recent li{padding:.3rem 0;border-bottom:1px solid var(--border)}.editor{display:flex;flex-direction:column;gap:1rem;font-family:var(--sans)}.editor label{display:flex;flex-direction:column;gap:.3rem}.editor label>span{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.editor input,.editor select,.editor textarea{padding:.5rem .65rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel)}.editor textarea{font-family:var(--mono);font-size:14px;line-height:1.55;resize:vertical;min-height:200px}.editor input:focus,.editor select:focus,.editor textarea:focus{outline:2px solid var(--link);outline-offset:-1px}.editor__row{display:grid;grid-template-columns:auto 1fr;gap:1rem}.editor__row .grow{flex:1}.editor__actions{display:flex;justify-content:flex-end;gap:.5rem;padding-top:.5rem;border-top:1px solid var(--border)}.page-title{font-size:2rem;margin:0 0 1.5rem;letter-spacing:-.015em}.error{padding:.6rem .8rem;border:1px solid var(--danger);background:#fdeaea;color:var(--danger);border-radius:var(--radius);font-family:var(--sans);font-size:.9rem}.muted{color:var(--muted)}.chat-page{display:flex;flex-direction:column;height:100%;min-height:0;background:var(--panel)}.chat-page__head{padding:.9rem 2rem;border-bottom:1px solid var(--border);background:var(--bg);display:flex;align-items:baseline;gap:.8rem}.chat-page__head h1{font-family:var(--serif);font-size:1.2rem;margin:0;letter-spacing:-.01em}.chat-page__meta{font-family:var(--sans);font-size:.8rem}.chat-page__bg-badge{margin-left:auto;display:inline-flex;align-items:center;gap:.4rem;font-size:.75rem;font-family:var(--sans);color:var(--accent, #5b8def);padding:.15rem .55rem;border:1px solid color-mix(in srgb,var(--accent, #5b8def) 35%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--accent, #5b8def) 10%,transparent)}.chat-page__bg-dot{width:8px;height:8px;border-radius:50%;background:var(--accent, #5b8def);animation:chat-bg-pulse 1.2s ease-in-out infinite}@keyframes chat-bg-pulse{0%,to{transform:scale(1);opacity:.55}50%{transform:scale(1.35);opacity:1}}.chat-page__tokens{display:inline-flex;align-items:center;gap:.25rem;font-size:11px;font-family:var(--mono, ui-monospace, monospace);padding:.15rem .55rem;border-radius:999px;border:1px solid var(--border);background:var(--bg-soft, #f3ecdc);color:var(--ink-soft, #6c6757);white-space:nowrap;cursor:help}.chat-page__tokens--cool{color:var(--ink-soft)}.chat-page__tokens--warm{color:#8a6d2c;border-color:color-mix(in srgb,#d4a64b 50%,var(--border));background:color-mix(in srgb,#f4d97e 22%,var(--bg-soft))}.chat-page__tokens--hot{color:#b14b3a;border-color:color-mix(in srgb,#d4634b 50%,var(--border));background:color-mix(in srgb,#d4634b 18%,var(--bg-soft))}.chat-page__tokens-credits{font-variant-numeric:tabular-nums;font-weight:600;color:var(--accent)}.chat-page__tokens--warm .chat-page__tokens-credits,.chat-page__tokens--hot .chat-page__tokens-credits{color:inherit}.ai-model-presets{display:flex;flex-wrap:wrap;gap:.35rem;margin:.6rem 0 .8rem}.ai-model-presets .btn{font-family:var(--mono, ui-monospace, monospace);font-size:12px;padding:.3rem .6rem}.orphan-preview{margin:.6rem 0;padding:.6rem .8rem;background:var(--bg-soft, #f3ecdc);border:1px solid var(--border);border-radius:8px}.orphan-list{list-style:none;padding:0;margin:0;font-size:12px;font-family:var(--mono, ui-monospace, monospace);max-height:240px;overflow-y:auto}.orphan-list li{padding:2px 0;color:var(--ink, #1f1c14)}.orphan-list code{background:transparent}.chat-scroll{flex:1;overflow-y:auto;scroll-behavior:smooth}.chat-inner{max-width:780px;margin:0 auto;padding:2rem 2rem 3rem;display:flex;flex-direction:column;gap:1.6rem}.msg{display:flex;flex-direction:column;gap:.3rem}.msg__role{font-family:var(--sans);font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.msg--user .msg__body{background:#eef3fb;border:1px solid #cfdef5;border-radius:var(--radius);padding:.7rem 1rem;font-family:var(--serif);font-size:1.02rem;white-space:pre-wrap}.msg--assistant .msg__body{font-family:var(--serif);font-size:1.02rem;line-height:1.65}.msg__text{margin-bottom:.6rem}.msg__text:last-child{margin-bottom:0}.msg__text .prose p:last-child{margin-bottom:0}.msg--pending{font-family:var(--sans);font-size:.9rem;color:var(--muted);font-style:italic;display:flex;align-items:center;gap:.5rem}.msg--pending__dot{width:8px;height:8px;border-radius:50%;background:var(--muted);animation:pulse-dot 1.2s ease-in-out infinite}@keyframes pulse-dot{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.15)}}.stream-caret{display:inline-block;margin-left:2px;color:var(--accent, #5b8def);animation:caret-blink 1s steps(2) infinite;font-weight:400}@keyframes caret-blink{0%,to{opacity:1}50%{opacity:0}}.tool-use{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-alt);margin:.5rem 0;font-family:var(--sans);font-size:.85rem;overflow:hidden}.tool-use--err{border-color:var(--danger)}.tool-use--streaming{border-color:var(--accent, #5b8def);background:#5b8def0f}.tool-use__summary--pending{color:var(--accent, #5b8def);font-style:italic}.tool-use__stream{border-top:1px dashed var(--border);padding:.55rem .75rem .7rem;background:color-mix(in srgb,var(--accent, #5b8def) 5%,transparent);display:flex;flex-direction:column;gap:.4rem;animation:toolStreamFade .18s ease-out}@keyframes toolStreamFade{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:none}}.tool-use__stream-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;font-size:.72rem}.tool-use__stream-tag{display:inline-flex;align-items:center;padding:.1rem .45rem;border:1px solid var(--border);border-radius:999px;background:var(--bg, transparent);color:var(--muted);font-family:var(--mono)}.tool-use__stream-tag code{font-family:inherit;font-size:.72rem;color:var(--accent, #5b8def)}.tool-use__stream-tag--title{color:var(--text);font-family:var(--serif);font-style:italic}.tool-use__stream-count{margin-left:auto;font-family:var(--mono);color:var(--muted);font-size:.72rem}.tool-use__stream-body{margin:0;padding:.6rem .7rem;max-height:260px;overflow-y:auto;background:var(--surface, rgba(0,0,0,.02));border:1px solid var(--border);border-radius:6px;font-family:var(--serif);font-size:.88rem;line-height:1.55;white-space:pre-wrap;word-break:break-word;color:var(--text);position:relative;mask-image:linear-gradient(to bottom,transparent 0,#000 16px,#000 calc(100% - 12px),transparent 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 16px,#000 calc(100% - 12px),transparent 100%);scroll-behavior:smooth}.tool-use__stream-body--raw{font-family:var(--mono);font-size:.75rem;color:var(--muted);max-height:120px}.tool-use__stream-body--reel{line-height:1.5}.tool-use__stream-body .stream-caret{display:inline-block;margin-left:2px;color:var(--accent, #5b8def);animation:caret-blink 1s steps(2,start) infinite}@keyframes caret-blink{50%{opacity:0}}.tool-use__head{display:flex;align-items:center;gap:.5rem;width:100%;padding:.45rem .75rem;background:none;border:none;cursor:pointer;text-align:left;color:var(--ink)}.tool-use__head:hover{background:#0000000a}.tool-use__icon{font-size:.95rem}.tool-use__name{font-family:var(--mono);background:var(--panel);padding:.05rem .4rem;border-radius:3px;font-size:.78rem;color:var(--link)}.tool-use__args{font-family:var(--mono);font-size:.8rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:280px;display:inline-flex;align-items:center}.tool-use__args-text{display:inline-block;overflow:hidden;text-overflow:ellipsis}.tool-use__slug{display:inline-flex;align-items:center}.tool-use__slug code{font-size:.78rem;padding:1px 5px}.tool-use__slug:hover{text-decoration:none}.tool-use__summary{margin-left:auto;color:var(--muted);font-size:.82rem}.tool-use__toggle{color:var(--muted)}.tool-use__body{padding:.5rem .8rem .8rem;border-top:1px solid var(--border);background:var(--panel);font-family:var(--mono);font-size:.78rem}.tool-use__section{margin-top:.5rem}.tool-use__section strong{display:block;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.05em;font-size:.7rem;margin-bottom:.2rem;font-family:var(--sans)}.tool-use__section pre{background:var(--bg-alt);border:1px solid var(--border);padding:.5rem;margin:0;white-space:pre-wrap;max-height:260px;overflow-y:auto;font-size:.76rem}.chat-input{border-top:1px solid var(--border);background:var(--bg);padding:.75rem 1rem;display:flex;gap:.6rem;align-items:flex-end;max-width:780px;width:100%;margin:0 auto}.chat-input textarea{flex:1;resize:none;padding:.6rem .75rem;font-family:var(--serif);font-size:1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);line-height:1.45}.chat-input textarea:focus{outline:2px solid var(--link);outline-offset:-1px}.chat-input{position:relative;flex-wrap:wrap}.chat-input.chat-input--drag{outline:2px dashed var(--link);outline-offset:-4px;background:color-mix(in srgb,var(--link) 6%,var(--bg))}.chat-input__attachments{flex:0 0 100%;display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.4rem}.chat-attach{position:relative;width:64px;height:64px;border-radius:8px;overflow:hidden;border:1px solid var(--border);background:var(--panel);box-shadow:0 1px 3px #00000014}.chat-attach img{width:100%;height:100%;object-fit:cover;display:block}.chat-attach__remove{position:absolute;top:2px;right:2px;width:18px;height:18px;border-radius:50%;border:none;background:#000000a6;color:#fff;font-size:14px;line-height:1;cursor:pointer;padding:0;display:grid;place-items:center}.chat-attach__remove:hover{background:#000000d9}.chat-attach__remove:disabled{opacity:.5;cursor:not-allowed}.chat-input__notice{flex:0 0 100%;color:#b93838;font-size:.78rem;margin-bottom:.35rem}.chat-input__drop-hint{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:color-mix(in srgb,var(--link) 14%,transparent);border-radius:var(--radius);pointer-events:none;font-weight:600;color:var(--link);letter-spacing:.02em}.msg__images{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.msg__image-link{display:block;line-height:0;border-radius:8px;overflow:hidden;border:1px solid var(--border);max-width:280px}.msg__image{display:block;max-width:100%;max-height:220px;object-fit:contain;background:var(--panel)}.tool-use__gallery{display:flex;flex-wrap:wrap;gap:.6rem;padding:.5rem .65rem .65rem;background:color-mix(in srgb,var(--panel) 65%,var(--bg));border-top:1px dashed var(--border)}.tool-use__gallery-item{margin:0;max-width:360px;display:flex;flex-direction:column;gap:.25rem}.tool-use__gallery-item a{display:block;line-height:0;border-radius:10px;overflow:hidden;border:1px solid var(--border);box-shadow:0 2px 8px #0000000f;background:var(--panel)}.tool-use__gallery-item img{display:block;max-width:100%;max-height:380px;object-fit:contain;background:#fafaf8}.tool-use__gallery-item figcaption{font-size:.76rem;color:var(--muted);padding:0 .15rem}.mention-picker{z-index:60;min-width:260px;max-width:480px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 12px 32px #0000002e;overflow:hidden;font-size:.88rem}.mention-picker__hint{padding:.35rem .6rem;font-size:.7rem;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--panel) 85%,transparent)}.mention-picker__list{list-style:none;margin:0;padding:.25rem 0;max-height:280px;overflow-y:auto}.mention-picker__item{display:grid;grid-template-columns:1.3rem 1fr auto auto;align-items:center;gap:.5rem;padding:.35rem .6rem;cursor:pointer;line-height:1.35}.mention-picker__item.is-external{background:color-mix(in srgb,var(--accent) 4%,transparent)}.mention-picker__item.is-external.is-active,.mention-picker__item.is-external:hover{background:color-mix(in srgb,var(--accent) 14%,transparent)}.mention-picker__universe{display:inline-flex;align-items:center;font-size:.68rem;font-weight:500;padding:.1rem .45rem;border-radius:999px;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);white-space:nowrap;max-width:8rem;overflow:hidden;text-overflow:ellipsis}.mention-picker__item.is-active,.mention-picker__item:hover{background:color-mix(in srgb,var(--link) 12%,transparent)}.mention-picker__cat{text-align:center;opacity:.8}.mention-picker__title{font-weight:500;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mention-picker__slug{font-family:var(--mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:.72rem;opacity:.7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:14rem}.mention-picker--empty .mention-picker__empty{padding:.6rem .75rem;font-size:.82rem}.chat-empty{padding:3rem 1rem;text-align:center;color:var(--ink)}.chat-empty h2{font-family:var(--serif);font-size:1.8rem;margin:0 0 .5rem;letter-spacing:-.015em}.chat-empty p{margin:0 auto 1.5rem;max-width:520px}.chat-empty__samples{list-style:none;padding:0;display:flex;flex-direction:column;gap:.5rem;max-width:520px;margin:0 auto}.chat-empty__samples .btn{width:100%;text-align:left;font-family:var(--serif)}.sidebar__tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:.25rem .75rem .5rem}.sidebar__tab{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.45rem .5rem;border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--muted);font-family:var(--sans);font-size:.82rem;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease}.sidebar__tab:hover{color:var(--ink);background:#00000008}.sidebar__tab.is-active{background:var(--ink);color:#fff;border-color:var(--ink)}.sidebar__tab-count{display:inline-block;min-width:1.3rem;padding:1px 5px;font-family:var(--mono);font-size:.68rem;line-height:1.2;border-radius:8px;background:#00000012;color:var(--muted);text-align:center}.sidebar__tab.is-active .sidebar__tab-count{background:#ffffff2e;color:#ffffffeb}.sidebar__tab-actions{display:flex;flex-direction:column;gap:.4rem;padding:0 1rem .5rem}.sidebar__tab-actions .sidebar__search{margin:0}.sidebar__pane{flex:1;min-height:0;overflow-y:auto;padding:0 0 .5rem}.sidebar__pane .sidebar__nav{padding-top:0}.sidebar__new-chat{width:100%}.sidebar__chat-item .sidebar__item{display:flex;align-items:center;justify-content:space-between;gap:.4rem}.sidebar__chat-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar__chat-del{background:none;border:none;color:inherit;opacity:0;cursor:pointer;padding:0 .3rem;font-size:1.1rem;line-height:1}.sidebar__chat-item:hover .sidebar__chat-del{opacity:.6}.sidebar__chat-item:hover .sidebar__chat-del:hover{opacity:1}.sidebar__chat-dot{flex-shrink:0;width:7px;height:7px;border-radius:50%;background:var(--accent, #5b8def);box-shadow:0 0 color-mix(in srgb,var(--accent, #5b8def) 60%,transparent);animation:sidebar-stream-pulse 1.2s ease-out infinite}@keyframes sidebar-stream-pulse{0%{box-shadow:0 0 color-mix(in srgb,var(--accent, #5b8def) 60%,transparent)}70%{box-shadow:0 0 0 6px color-mix(in srgb,var(--accent, #5b8def) 0%,transparent)}to{box-shadow:0 0 color-mix(in srgb,var(--accent, #5b8def) 0%,transparent)}}.sidebar__item.is-streaming .sidebar__chat-title{font-weight:500}.graph-page{display:flex;flex-direction:column;height:100%;min-height:0}.graph-page__head{padding:1.2rem 2rem .8rem;border-bottom:1px solid var(--border);background:var(--panel)}.graph-page__head h1{margin:0 0 .4rem;font-size:1.6rem;letter-spacing:-.015em}.graph-page__meta{margin-top:.3rem;font-family:var(--sans);font-size:.82rem}.graph-legend{display:flex;gap:1rem;flex-wrap:wrap;font-family:var(--sans);font-size:.85rem}.graph-legend__item{display:inline-flex;align-items:center;gap:.35rem}.graph-legend__dot{display:inline-block;width:10px;height:10px;border-radius:50%}.graph-canvas{position:relative;flex:1;overflow:hidden;background:radial-gradient(ellipse at center,#fbfaf3,#ece8dc)}.graph-canvas svg{display:block;width:100%;height:100%}.graph-page--obsidian .graph-node__core{transition:opacity .18s ease,r .15s ease}.graph-page--obsidian .graph-node__halo{transition:opacity .18s ease}.graph-page--obsidian .graph-links line{transition:stroke-opacity .18s ease,stroke .18s ease}.graph-page--obsidian .graph-labels text{transition:opacity .18s ease}.graph-page__tip{color:var(--muted)}.graph-inspect{position:absolute;top:1rem;right:1rem;width:260px;background:#ffffffeb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border);border-radius:8px;padding:.7rem .85rem;font-family:var(--sans);box-shadow:0 8px 24px #00000014;animation:graph-inspect-in .18s ease}@keyframes graph-inspect-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.graph-inspect__cat{display:inline-flex;align-items:center;gap:.35rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.graph-inspect__title{font-family:var(--serif);font-size:1.05rem;font-weight:600;margin:.2rem 0 .1rem;line-height:1.2}.graph-inspect__slug{font-family:var(--mono);font-size:.72rem;color:var(--muted);display:block;margin-bottom:.4rem}.graph-inspect__weight{display:flex;align-items:center;gap:.4rem;margin-bottom:.4rem;font-size:.78rem}.graph-inspect__weight-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:.7rem}.graph-inspect__weight-num{font-family:var(--mono);font-weight:600;color:var(--ink);margin-left:auto}.weight-bar{flex:1;position:relative;height:6px;background:var(--border);border-radius:3px;overflow:hidden}.weight-bar__fill{position:absolute;left:0;top:0;bottom:0;background:linear-gradient(90deg,#4a7bd4,#c24b86);border-radius:3px;transition:width .25s ease}.graph-inspect__stats{display:flex;gap:.6rem;flex-wrap:wrap;font-size:.78rem;font-family:var(--mono);color:var(--ink);margin-bottom:.4rem}.graph-inspect__stat-secondary{color:var(--muted);font-size:.72rem}.graph-inspect__tags{margin-bottom:.5rem}.graph-inspect__tags .tag{margin-right:.25rem;font-size:.72rem}.graph-inspect__actions{display:flex;gap:.35rem}.map-page{display:flex;flex-direction:column;height:100%;min-height:0}.map-page__head{padding:1rem 2rem .6rem;border-bottom:1px solid var(--border);background:var(--panel)}.map-page__head h1{font-size:1.5rem;margin:0 0 .3rem;letter-spacing:-.015em}.map-page__meta{font-family:var(--sans);font-size:.85rem}.map-page__tip{color:var(--muted)}.map-legend{display:flex;gap:1rem;flex-wrap:wrap;font-family:var(--sans);font-size:.82rem;margin-top:.3rem}.map-legend__item{display:inline-flex;align-items:center;gap:.3rem}.map-legend__dot{display:inline-block;width:10px;height:10px;border-radius:50%}.map-body{flex:1;display:grid;grid-template-columns:1fr 280px;min-height:0}.map-canvas{background:#f5f2ea;overflow:hidden;position:relative}.map-canvas svg{display:block;width:100%;height:100%;cursor:grab}.map-canvas svg:active{cursor:grabbing}.map-pin.is-active circle{stroke:var(--ink);stroke-width:3}.map-side{background:var(--bg-alt);border-left:1px solid var(--border);padding:.8rem 1rem;overflow-y:auto;font-family:var(--sans);font-size:.88rem}.map-side h3{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:1rem 0 .4rem}.map-side h3:first-child{margin-top:0}.map-side__list{list-style:none;margin:0;padding:0}.map-side__list li{display:grid;grid-template-columns:1fr auto;gap:.3rem .5rem;align-items:center;padding:.4rem .5rem;border-bottom:1px solid var(--border);cursor:pointer}.map-side__list li.is-active{background:var(--ink);color:#fff}.map-side__list li.is-active .muted,.map-side__list li.is-active .map-side__coords{color:#ffffffb3}.map-side__title{font-family:var(--serif);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.map-side__coords{grid-column:1 / -1;font-family:var(--mono);font-size:.75rem;color:var(--muted)}.map-side__radius{color:var(--accent, #5b8def);font-weight:600}.map-side__actions{grid-column:2;grid-row:1;display:flex;gap:.25rem}.map-region circle{transition:fill-opacity .15s ease,stroke-opacity .15s ease}.map-polygon{transition:fill-opacity .15s ease,stroke-opacity .15s ease}.map-line path{transition:stroke-opacity .15s ease}.map-side__shape{display:inline-block;font-family:var(--mono);font-size:.62rem;padding:1px 5px;margin-right:.35rem;border-radius:3px;background:var(--border);color:var(--ink);text-transform:lowercase;letter-spacing:.02em;vertical-align:1px}.map-side__shape--line{background:#e7dfc2}.map-side__shape--polygon{background:#d6e8d8}.map-side__shape--area{background:#dfe6f3}.map-side__shape--point{background:#eee}.map-side__list li.is-active .map-side__shape{background:#fff3;color:#fff}.map-pin__radius-handle circle{transition:r .1s ease}.map-pin__radius-handle:hover circle{r:7}.btn--icon-left{display:inline-flex!important;align-items:center;gap:.3rem}.entry__meta-link{display:inline-flex;align-items:center;gap:.25rem}.entry__meta-sep{margin-right:.15rem}.entry__shape-tag{font-family:var(--mono);font-size:.72rem;padding:0 4px;border-radius:3px;background:var(--border);margin-right:.25rem}.timeline-page{padding:1rem 2rem 4rem}.timeline-page__head h1{font-size:1.5rem;margin:0 0 .3rem}.timeline-page__meta{font-family:var(--sans);font-size:.85rem;margin-bottom:1rem}.timeline-issues{border:1px solid var(--danger, #c0392b);background:#c0392b0f;border-radius:var(--radius);padding:.75rem 1rem;margin-bottom:1.5rem;font-family:var(--sans);font-size:.88rem}.timeline-issues__head{font-weight:600;color:var(--danger, #c0392b);margin-bottom:.4rem}.timeline-issues ul{list-style:none;margin:0;padding:0}.timeline-issues__item{display:grid;grid-template-columns:auto 1fr auto;gap:.5rem;padding:.3rem 0;border-top:1px dashed rgba(192,57,43,.3)}.timeline-issues__item:first-child{border-top:none}.timeline-issues__item.severity-warn{opacity:.8}.timeline-issues__type{font-family:var(--mono);font-size:.75rem}.timeline-empty{padding:2rem;background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--radius);font-family:var(--sans)}.timeline-empty ul{margin:.4rem 0 0 1.2rem}.timeline-empty li{margin:.3rem 0;color:var(--muted)}.timeline-canvas{position:relative;background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.timeline-bars{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.timeline-span{position:absolute;width:3px;border-radius:2px;pointer-events:auto}.timeline-span--place{width:4px;background:#5b8def59}.timeline-span--place a{position:absolute;left:8px;top:0;font-family:var(--sans);font-size:.72rem;color:var(--muted);white-space:nowrap;text-decoration:none}.timeline-span--place a:hover{color:var(--ink)}.timeline-span--life{background:#e07a5f}.timeline-events{position:absolute;left:170px;right:16px;top:0;bottom:0}.timeline-event__dot{position:absolute;left:0;width:10px;height:10px;border-radius:50%;background:var(--ink);box-shadow:0 0 0 3px var(--bg-alt);z-index:2}.timeline-event__dot--err{background:var(--danger, #c0392b)}.timeline-event__leader{position:absolute;left:4px;width:2px;background:var(--border);z-index:1}.timeline-event{position:absolute;left:22px;right:0}.timeline-event__card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:.5rem .8rem;flex:1;max-width:700px;font-family:var(--sans);font-size:.88rem;box-shadow:0 1px 2px #0000000a}.timeline-event--err .timeline-event__card{border-color:var(--danger, #c0392b)}.timeline-event__head{display:flex;align-items:baseline;gap:.5rem;flex-wrap:wrap}.timeline-event__head strong{font-family:var(--serif);font-size:1rem}.timeline-event__t{font-family:var(--mono);font-size:.78rem}.timeline-event__refs{margin-top:.3rem;display:flex;gap:.75rem;flex-wrap:wrap;font-size:.82rem;color:var(--muted)}.timeline-event__refs a{color:inherit;text-decoration:none}.timeline-event__refs a:hover{color:var(--ink)}.timeline-event__err{margin-top:.3rem;padding:.3rem .5rem;background:#c0392b14;border-left:2px solid var(--danger, #c0392b);font-size:.8rem;color:var(--danger, #c0392b)}.history-page{display:grid;grid-template-columns:380px 1fr;height:100%;min-height:0}.history-list{border-right:1px solid var(--border);overflow-y:auto;background:var(--bg-alt);font-family:var(--sans)}.history-list__head{padding:1rem 1.2rem .6rem;border-bottom:1px solid var(--border);background:var(--panel);position:sticky;top:0;z-index:1}.history-list__head h1{font-family:var(--serif);font-size:1.4rem;margin:0;letter-spacing:-.01em}.history-group{padding:.5rem 0 .8rem}.history-group__day{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);padding:.5rem 1.2rem .25rem;margin:0}.history-list ul{list-style:none;margin:0;padding:0}.history-item{padding:.55rem 1.2rem;cursor:pointer;border-bottom:1px solid var(--border)}.history-item:hover{background:#00000008}.history-item.is-active{background:var(--ink);color:#fff}.history-item.is-active .muted,.history-item.is-active code{color:#ffffffb3}.history-item__top{display:flex;gap:.4rem;align-items:baseline;font-size:.88rem;margin-bottom:.2rem}.history-item__subject{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-item__meta{font-size:.76rem;color:var(--muted)}.history-item__meta code{background:#0000000f;padding:0 .3em;border-radius:3px;font-size:.92em}.verb{display:inline-block;font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;padding:.05rem .35rem;border-radius:3px;background:var(--border);color:var(--ink);font-weight:600}.verb--create{background:#2f8a49;color:#fff}.verb--update{background:#316ecf;color:#fff}.verb--delete{background:#b43a3a;color:#fff}.verb--rename{background:#8a6d2b;color:#fff}.verb--chore{background:#777;color:#fff}.history-detail{overflow-y:auto;background:var(--panel)}.commit__subject{font-family:var(--serif);font-size:1.6rem;letter-spacing:-.01em;margin:0 0 .4rem}.commit__meta{font-family:var(--sans);font-size:.85rem;margin-bottom:1rem}.commit__meta code{background:var(--bg-alt);padding:.05rem .35rem;border-radius:3px;font-size:.88em}.commit__body{background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--radius);padding:.8rem 1rem;font-family:var(--mono);font-size:13px;white-space:pre-wrap;margin:0 0 1.5rem}.commit__section{font-family:var(--sans);font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:1.5rem 0 .5rem}.commit__files{list-style:none;padding:0;margin:0 0 1.2rem;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;font-family:var(--sans);font-size:.88rem}.commit__files li{display:grid;grid-template-columns:1fr auto auto;gap:1rem;align-items:center;padding:.5rem .8rem;border-bottom:1px solid var(--border);cursor:pointer}.commit__files li:last-child{border-bottom:0}.commit__files li:hover{background:var(--bg-alt)}.commit__files li.is-active{background:var(--ink);color:#fff}.commit__files li.is-active .commit__file-open{color:#fff}.commit__file-name{font-family:var(--mono);font-size:.85rem}.commit__file-changes{font-family:var(--mono);font-size:.78rem;color:var(--muted)}.commit__file-open{font-size:.85rem}.diff{font-family:var(--mono);font-size:12.5px;line-height:1.55;background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--radius);padding:.6rem 0;overflow-x:auto;margin:0 0 2rem;min-height:180px;max-height:70vh;overflow-y:auto}.diff__line{display:block;padding:0 1rem;white-space:pre;min-width:max-content}.diff--add{background:#2f8a4924;color:#1f6a34}.diff--del{background:#b43a3a24;color:#8a2a2a}.diff--hunk{color:#6b5bbf;background:#6b5bbf14;margin:.3rem 0}.diff--meta{color:var(--muted)}.entry-history{border-top:1px solid var(--border);padding-top:1.5rem;margin-top:2rem}.entry-history h2{font-family:var(--sans);font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:0 0 .6rem}.entry-history ul{list-style:none;padding:0;margin:0 0 .8rem;font-family:var(--sans);font-size:.88rem}.entry-history li{padding:.2rem 0}.entry-history li code{background:var(--bg-alt);padding:0 .3em;border-radius:3px;font-size:.85em;margin-right:.5em}.entry-history__subject{color:var(--ink)}.table{width:100%;border-collapse:collapse;font-family:var(--sans);font-size:.92rem}.table th,.table td{padding:.55rem .6rem;border-bottom:1px solid var(--border);text-align:left}.table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.entry__body--note{margin-bottom:2rem;padding:1rem 1.25rem;background:var(--surface-alt, rgba(255,255,255,.02));border-left:3px solid var(--border);border-radius:4px;font-size:.94em;color:var(--text-soft, var(--text))}.entry__panels{margin-top:1.25rem;margin-bottom:3rem}.entry__panels-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:1rem;padding-bottom:.6rem;border-bottom:1px solid var(--border)}.entry__panels-head h2{display:inline-flex;align-items:center;gap:.5rem;margin:0;font-family:var(--serif);font-size:1.25rem}.panels{display:flex;flex-direction:column;gap:1rem;max-width:760px;margin:0 auto}.panels--empty{padding:2rem 1.25rem;border:1px dashed var(--border);border-radius:8px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.9rem}.panel{display:grid;grid-template-columns:2.25rem 1fr;gap:.75rem;align-items:stretch;position:relative}.panel__actions{position:absolute;top:6px;right:6px;display:flex;gap:2px;padding:3px;background:var(--panel, #fff);border:1px solid var(--border);border-radius:5px;box-shadow:0 2px 6px #00000014;opacity:0;transition:opacity .12s ease;z-index:4}.panel:hover>.panel__actions,.panel:focus-within>.panel__actions{opacity:1}.panel__action-btn{border:0;background:transparent;color:var(--ink);cursor:pointer;padding:4px 6px;border-radius:3px;font-size:12px;line-height:1;display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px}.panel__action-btn:hover:not(:disabled){background:var(--bg-alt, #f2f1ec)}.panel__action-btn:disabled{opacity:.35;cursor:not-allowed}.panel__action-btn--danger{color:var(--danger, #b43a3a)}.panel__action-btn--danger:hover:not(:disabled){background:#fdecec}.panel__action-btn--ai{color:var(--accent, #b6772c)}.panel__action-btn--ai:hover:not(:disabled){background:#fff4e2}.panel__action-btn--ai.is-active{background:#fff4e2;color:#8a5a1d;box-shadow:inset 0 0 0 1px #e6bc7a}.panel-ai{margin-top:.75rem;padding:.75rem .9rem .9rem;background:#fbf7ef;border:1px solid #e8d9b8;border-radius:var(--radius, 4px);font-family:var(--sans);font-size:14px;line-height:1.5;display:flex;flex-direction:column;gap:.6rem}.panel-ai__head{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.panel-ai__title{display:inline-flex;align-items:center;gap:.35rem;color:#8a5a1d}.panel-ai__title strong{font-weight:600}.panel-ai__hint{font-size:12px;flex:1;min-width:180px}.panel-ai__close{border:0;background:transparent;color:var(--muted);cursor:pointer;padding:2px 6px;border-radius:3px;display:inline-flex;align-items:center}.panel-ai__close:hover{background:#efe4cb;color:var(--ink)}.panels__toolbar{display:flex;align-items:center;gap:.6rem;padding:.35rem .25rem .65rem;flex-wrap:wrap;font-size:13px}.panels__toolbar-btn.is-active{background:color-mix(in srgb,var(--accent, #d4af7a) 18%,transparent);border-color:color-mix(in srgb,var(--accent, #d4af7a) 50%,transparent)}.panels-empty-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin:.5rem 0}.panel-gen{margin:0 0 1rem;padding:.85rem 1rem 1rem;border:1px solid color-mix(in srgb,var(--accent, #d4af7a) 40%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--accent, #d4af7a) 5%,transparent);display:flex;flex-direction:column;gap:.8rem}.panel-gen__head{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.panel-gen__title{display:inline-flex;align-items:center;gap:.35rem;color:#8a5a1d}.panel-gen__title strong{font-weight:600}.panel-gen__hint{font-size:12px;flex:1;min-width:200px}.panel-gen__form{display:flex;flex-direction:column;gap:.55rem}.panel-gen__row{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}.panel-gen__row--instruction{align-items:flex-start}.panel-gen__label{flex-shrink:0;width:5.5rem;font-size:13px;color:var(--muted);font-weight:500}.panel-gen__modes{display:inline-flex;gap:.35rem;flex-wrap:wrap}.panel-gen__mode{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .6rem;border:1px solid var(--border);border-radius:4px;font-size:13px;cursor:pointer;background:var(--surface, transparent)}.panel-gen__mode input{accent-color:var(--accent, #d4af7a)}.panel-gen__mode.is-active{border-color:color-mix(in srgb,var(--accent, #d4af7a) 70%,transparent);background:color-mix(in srgb,var(--accent, #d4af7a) 12%,transparent)}.panel-gen__mode--danger.is-active{border-color:color-mix(in srgb,#c45a5a 70%,transparent);background:color-mix(in srgb,#c45a5a 12%,transparent)}.panel-gen__select,.panel-gen__count{padding:.3rem .5rem;border:1px solid var(--border);border-radius:4px;background:var(--surface);font-size:13px;color:var(--text);font-family:inherit}.panel-gen__count{width:11rem}.panel-gen__count-hint{font-size:12px}.panel-gen__row--instruction .panel-ai__input{flex:1;min-width:200px}.panel-gen__warn{display:flex;align-items:center;gap:.35rem;padding:.4rem .65rem;background:color-mix(in srgb,#c45a5a 10%,transparent);border:1px solid color-mix(in srgb,#c45a5a 35%,transparent);border-radius:4px;font-size:12.5px;color:#8a3232}.panel-ai__error{display:flex;align-items:center;gap:.35rem;padding:.4rem .65rem;background:color-mix(in srgb,#c45a5a 8%,transparent);border:1px solid color-mix(in srgb,#c45a5a 35%,transparent);border-radius:4px;font-size:12.5px;color:#8a3232}.panel-gen__actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-size:12px}.panel-gen__preview{border-top:1px solid color-mix(in srgb,var(--accent, #d4af7a) 25%,var(--border));padding-top:.75rem;display:flex;flex-direction:column;gap:.55rem}.panel-gen__preview-head{display:flex;align-items:center;gap:.35rem;font-size:13px;color:#8a5a1d;flex-wrap:wrap}.panel-gen__preview-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem;max-height:50vh;overflow-y:auto}.panel-gen__preview-item{display:flex;gap:.55rem;align-items:flex-start;padding:.4rem .55rem;background:var(--surface, rgba(255,255,255,.04));border:1px solid var(--border);border-radius:4px;font-size:13px;line-height:1.4}.panel-gen__preview-num{flex-shrink:0;font-family:var(--mono);font-size:11.5px;padding:.1rem .35rem;border:1px solid var(--border);border-radius:3px;color:var(--muted);margin-top:.1rem}.panel-gen__preview-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.panel-gen__preview-tags{font-size:11.5px;color:var(--muted);font-family:var(--mono)}.panel-gen__preview-line{word-break:keep-all;white-space:pre-wrap;display:flex;gap:.4rem;align-items:baseline}.panel-gen__preview-line--dialogue{font-family:var(--serif);white-space:pre-line}.panel-gen__preview-key{flex-shrink:0;font-family:var(--mono);font-size:10.5px;padding:0 .3rem;border:1px solid var(--border);border-radius:3px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;line-height:1.4}.panel-gen__preview-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-size:12px}.panel-ai__reasoning{display:flex;align-items:flex-start;gap:.35rem;font-size:13px;color:#5a4b2a;background:#fff8e7;border:1px solid #eedfb4;padding:.4rem .55rem;border-radius:3px}.panel-ai__diffs{display:flex;flex-direction:column;gap:.6rem}.panel-ai__diff{background:var(--panel, #fff);border:1px solid var(--border, #d9d6cc);border-radius:3px;padding:.5rem .65rem .6rem}.panel-ai__diff-head{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:.35rem}.panel-ai__diff-body{white-space:pre-wrap;word-break:break-word;font-family:var(--serif);font-size:15px;line-height:1.65}.panel-ai__tok{border-radius:2px}.panel-ai__tok--eq{color:var(--ink)}.panel-ai__tok--del{background:#fde2e2;color:#a22a2a;text-decoration:line-through;text-decoration-color:#a22a2a8c;padding:0 1px}.panel-ai__tok--ins{background:#dff5de;color:#1d6a2a;padding:0 1px;box-shadow:inset 0 -1px #1d6a2a59}.panel-ai__diff-side{margin-top:.45rem}.panel-ai__diff-side>summary{cursor:pointer;font-size:12px;-webkit-user-select:none;user-select:none}.panel-ai__side{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-top:.35rem}.panel-ai__side-col{min-width:0}.panel-ai__side-label{font-size:11px;text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px}.panel-ai__side-text{font-family:var(--mono);font-size:12px;white-space:pre-wrap;word-break:break-word;background:var(--bg-alt, #f2f1ec);border:1px solid var(--border, #d9d6cc);border-radius:3px;padding:.45rem .55rem;margin:0;max-height:180px;overflow:auto}.panel-ai__actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.panel-ai__chain-hint{font-size:12px}.panel-ai__result--noop{display:flex;align-items:center;gap:.4rem;color:#1d6a2a;background:#edf7ec;border:1px solid #cae5c8;padding:.45rem .6rem;border-radius:3px;flex-wrap:wrap}.panel-ai__result--noop .panel-ai__reasoning{background:transparent;border:0;padding:0;width:100%}.panel-ai__form{display:flex;flex-direction:column;gap:.4rem}.panel-ai__input{width:100%;resize:vertical;min-height:42px;padding:.45rem .55rem;border:1px solid var(--border, #d9d6cc);border-radius:3px;background:var(--panel, #fff);font-family:var(--sans);font-size:14px;line-height:1.45}.panel-ai__input:focus{outline:2px solid var(--accent, #b6772c);outline-offset:-1px}.panel-ai__form-actions{display:flex;justify-content:flex-end}.panel-ai__presets{display:flex;flex-wrap:wrap;gap:.35rem}.panel-ai__preset{border:1px dashed #d9c79c;background:transparent;color:#6b5124;padding:2px 8px;border-radius:99px;font-size:12px;cursor:pointer}.panel-ai__preset:hover:not(:disabled){background:#fff4e2;border-style:solid}.panel-ai__preset:disabled{opacity:.5;cursor:not-allowed}.panel-ai__err{font-size:13px;color:var(--danger, #b43a3a);background:#fdecec;border:1px solid #e8c1c1;padding:.4rem .55rem;border-radius:3px}@media (max-width: 640px){.panel-ai__side{grid-template-columns:1fr}}.toast-stack{position:fixed;right:1rem;bottom:1rem;z-index:9000;display:flex;flex-direction:column;gap:.45rem;max-width:min(92vw,420px);pointer-events:none}.toast{pointer-events:auto;display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:.55rem;background:var(--panel, #fff);color:var(--ink);border:1px solid var(--border, #d9d6cc);border-left-width:4px;border-radius:var(--radius, 4px);padding:.55rem .65rem .55rem .75rem;box-shadow:0 6px 20px #0000001f;font-family:var(--sans);font-size:14px;line-height:1.45;cursor:pointer;animation:toast-in .18s ease-out}.toast--success{border-left-color:#2f8a3a}.toast--error{border-left-color:var(--danger, #b43a3a);background:#fff7f7}.toast--info{border-left-color:var(--accent, #b6772c)}.toast__icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;flex-shrink:0}.toast--success .toast__icon{background:#dff5de;color:#1d6a2a}.toast--error .toast__icon{background:#fde2e2;color:#a22a2a}.toast--info .toast__icon{background:#fff4e2;color:#8a5a1d}.toast__msg{white-space:pre-wrap;word-break:break-word;min-width:0}.toast__close{border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:14px;line-height:1;padding:2px 4px;border-radius:3px;align-self:start}.toast__close:hover{background:var(--bg-alt);color:var(--ink)}@keyframes toast-in{0%{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}.settings-page{max-width:720px;margin:0 auto;padding:2rem 1.5rem 4rem;font-family:var(--sans)}.settings-page__head h1{margin:0 0 .25rem;font-family:var(--sans);font-size:22px;letter-spacing:-.01em}.settings-page__head .muted{font-size:13.5px;line-height:1.55}.settings-section{margin-top:1.75rem;background:var(--panel, #fff);border:1px solid var(--border, #d9d6cc);border-radius:var(--radius, 4px);padding:1.1rem 1.2rem 1.25rem}.settings-section h2{margin:0 0 .4rem;font-size:15px;font-weight:600;display:inline-flex;align-items:center;gap:.4rem}.settings-section>p.muted{margin:0 0 1rem;font-size:13px}.settings-err{background:#fde2e2;border:1px solid #f1b4b4;color:#8b1d1d;padding:.5rem .7rem;border-radius:3px;font-size:13px}.settings-keys{display:flex;flex-direction:column;gap:1rem}.settings-key{border-top:1px solid var(--border, #d9d6cc);padding-top:1rem}.settings-key:first-child{border-top:0;padding-top:0}.settings-key__head{display:flex;justify-content:space-between;align-items:center;gap:.5rem;flex-wrap:wrap}.settings-key__title{display:inline-flex;align-items:center;gap:.5rem}.settings-key__label{font-weight:600;font-size:14px}.settings-key__link{font-size:12.5px;text-decoration:none}.settings-key__link:hover{text-decoration:underline}.settings-key__hint{font-size:12.5px;margin:.25rem 0 .55rem;line-height:1.45}.settings-key__status{font-size:13px;margin:0 0 .6rem;padding:.45rem .6rem;background:var(--bg-alt, #f6f3ea);border-radius:3px;word-break:break-all}.settings-key__preview{font-family:var(--mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:12.5px;padding:1px 4px;background:#fff;border:1px solid var(--border);border-radius:2px}.settings-key__form{display:flex;gap:.5rem;align-items:stretch;flex-wrap:wrap}.settings-key__input-wrap{position:relative;flex:1 1 260px;min-width:220px;display:flex}.settings-key__input{width:100%;font-family:var(--mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:13px;padding:.45rem 2rem .45rem .6rem;border:1px solid var(--border, #d9d6cc);border-radius:3px;background:#fff}.settings-key__input:focus{outline:none;border-color:var(--accent, #b6772c);box-shadow:0 0 0 2px #b6772c33}.settings-key__toggle{position:absolute;right:4px;top:50%;transform:translateY(-50%);background:transparent;border:0;color:var(--muted, #8a8476);cursor:pointer;padding:4px;border-radius:3px;display:inline-flex;align-items:center}.settings-key__toggle:hover{background:var(--bg-alt);color:var(--ink)}.settings-badge{display:inline-flex;align-items:center;padding:1px 7px;font-size:11px;font-weight:600;border-radius:999px;letter-spacing:.02em;white-space:nowrap;flex-shrink:0}.settings-badge--user{background:#e4ead4;color:#4d6321}.settings-badge--env{background:#e8e4d0;color:#665a2d}.settings-badge--none{background:#e9e5d8;color:#8a8476}.settings-github-card{margin-top:1rem;display:flex;align-items:center;gap:.85rem;padding:.8rem 1rem;border:1px solid var(--border, #d9d6cc);border-radius:var(--radius, 4px);background:var(--panel, #fff)}.settings-github-card--empty{background:var(--bg-alt, #f3eee2);border-style:dashed}.settings-github-card__avatar{width:48px;height:48px;border-radius:50%;object-fit:cover;border:1px solid var(--border)}.settings-github-card__body{flex:1;min-width:0}.settings-github-card__line{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;font-size:14px}.settings-github-card__actions{flex:0 0 auto}.sync-actions{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}.sync-auto-toggle{display:inline-flex;align-items:center;gap:.35rem;font-size:13px;color:var(--ink-soft, #6c6757);cursor:pointer;padding:0 .4rem}.sync-auto-toggle input{margin:0}.settings-section__head{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:.5rem;margin-bottom:.6rem}.settings-section__head h2{margin:0}.universe-sync-list{display:flex;flex-direction:column;gap:.6rem;margin-top:.4rem}.universe-sync-row{border:1px solid var(--border, #d9d6cc);border-radius:6px;background:var(--panel, #fff);overflow:hidden}.universe-sync-row.is-active{border-color:color-mix(in srgb,var(--accent, #b6772c) 50%,var(--border));box-shadow:0 0 0 2px color-mix(in srgb,var(--accent, #b6772c) 8%,transparent)}.universe-sync-row__head{display:flex;align-items:center;justify-content:space-between;padding:.55rem .85rem;background:var(--bg-alt, #f5f1e6);border-bottom:1px solid var(--border, #d9d6cc);gap:.5rem}.universe-sync-row__title{display:flex;align-items:center;gap:.4rem;min-width:0;font-size:14px}.universe-sync-row__name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:240px}.universe-sync-row__id{font-family:var(--mono);font-size:11.5px}.universe-sync-row__counts{font-family:var(--mono);font-size:11.5px;flex:0 0 auto}.universe-sync-row__body{padding:.75rem .9rem;font-size:13px;display:flex;flex-direction:column;gap:.5rem}.universe-sync-row__body--empty{display:flex;flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem}.universe-sync-row__repo{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem;font-size:14px;min-width:0}.universe-sync-row__repo-icon{flex-shrink:0;color:var(--muted)}.universe-sync-row__repo-link{font-weight:600;word-break:break-all;min-width:0}.universe-sync-row__meta{display:flex;flex-wrap:wrap;gap:.15rem .5rem;font-size:12px;line-height:1.5}.universe-sync-row__branch{white-space:nowrap}.universe-sync-row__branch code{font-size:11px;padding:0 .25em}.universe-sync-row__time{word-break:keep-all}.universe-sync-row__err{margin-top:2px}.universe-sync-row__actions{margin-top:.4rem;padding-top:.6rem;border-top:1px dashed var(--border, #d9d6cc);display:flex;flex-direction:column;gap:.55rem}.universe-sync-row__btns{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.universe-sync-row__btns .btn{flex:0 0 auto}.universe-sync-row__unlink{margin-left:auto}@media (max-width: 700px){.universe-sync-row__head{flex-wrap:wrap;align-items:flex-start}.universe-sync-row__name{max-width:100%}.universe-sync-row__id{display:none}.universe-sync-row__body--empty{flex-direction:column;align-items:stretch}.universe-sync-row__body--empty .sync-actions{justify-content:stretch}.universe-sync-row__body--empty .sync-actions .btn{flex:1 1 auto}.universe-sync-row__meta{flex-direction:column;gap:.1rem}.universe-sync-row__btns .btn:not(.universe-sync-row__unlink){flex:1 1 calc(50% - .2rem)}.universe-sync-row__unlink{margin-left:0;flex:1 1 100%}}.sync-recovery{margin-top:10px;padding:.7rem .9rem;border:1px solid var(--border, #d9d6cc);border-radius:6px;background:var(--bg-alt, #f5f1e6);font-size:13px;line-height:1.5}.sync-recovery--severe{border-color:color-mix(in srgb,var(--danger, #a64a3e) 45%,var(--border));background:color-mix(in srgb,var(--danger, #a64a3e) 6%,var(--panel))}.sync-recovery__head{font-weight:600;margin-bottom:.25rem}.sync-recovery--severe .sync-recovery__head{color:var(--danger, #a64a3e)}.sync-recovery__body{margin:0 0 .55rem;color:var(--ink-soft, #6c6757)}.confirm-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#14120e73;z-index:9100;display:flex;align-items:center;justify-content:center;padding:1rem;animation:toast-in .14s ease-out}.confirm-modal__inner{background:var(--panel, #fff);border:1px solid var(--border, #d9d6cc);border-radius:var(--radius, 4px);width:100%;max-width:460px;padding:1.1rem 1.2rem 1rem;box-shadow:0 18px 40px #00000040;font-family:var(--sans)}.confirm-modal__title{margin:0 0 .5rem;font-size:16px;font-weight:600;font-family:var(--sans)}.confirm-modal__body{font-size:14.5px;line-height:1.55}.confirm-modal__line{margin:0 0 .35rem}.confirm-modal__line:last-child{margin-bottom:0}.confirm-modal__foot{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem}.panel--editing>.panel__frame{outline:2px solid var(--accent, #b6772c);outline-offset:0;background:var(--panel, #fff)}.panel__editor{display:flex;flex-direction:column;gap:.7rem}.panel__editor-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding-bottom:.35rem;border-bottom:1px solid var(--border);font-size:.95rem}.panel__editor-head .muted{font-size:.72rem}.panel__editor-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.55rem}.panel__editor-field{display:flex;flex-direction:column;gap:.25rem;font-size:.8rem}.panel__editor-field>span{color:var(--muted);font-size:.72rem;font-weight:500;letter-spacing:.02em;text-transform:uppercase}.panel__editor-field>input,.panel__editor-field>textarea,.panel__editor-field>select{font-family:inherit;font-size:.9rem;padding:.42rem .55rem;border:1px solid var(--border);border-radius:4px;background:var(--bg, #fafaf7);color:var(--ink);width:100%;line-height:1.45}.panel__editor-field>textarea{resize:vertical;min-height:2.4rem;font-family:var(--serif);line-height:1.55}.panel__editor-field>input:focus,.panel__editor-field>textarea:focus,.panel__editor-field>select:focus{outline:2px solid var(--accent, #b6772c);outline-offset:-1px;border-color:transparent}.panel__editor-field--inline{flex-direction:column}.panel__editor-actions{display:flex;justify-content:flex-end;gap:.5rem;padding-top:.4rem;border-top:1px solid var(--border)}.panel__editor-warn{padding:.55rem .75rem;border:1px solid rgba(190,120,40,.45);background:#f0b45a1f;color:var(--ink);font-size:.82rem;border-radius:4px;line-height:1.4}.panel__editor-warn strong{color:#a85a1a;font-weight:700}.entry__save-status{position:sticky;top:6px;z-index:5;display:inline-block;margin-bottom:.6rem;padding:.3rem .7rem;font-size:.78rem;background:#000000b3;color:#fff;border-radius:4px;letter-spacing:.02em}.entry__save-status--err{background:#a13a3a}.entry__save-status--warn{background:#b07a1a;display:inline-flex;align-items:center}.pill--archived{background:#785a3226;color:#7a5a28;border:1px solid rgba(120,90,50,.35);font-weight:600}.pill--pinned{display:inline-flex;align-items:center;gap:4px;background:#dc961e24;color:#a36400;border:1px solid rgba(220,150,30,.45);font-weight:600}.pill--pinned svg{color:currentColor}.sidebar__pin-badge{color:#c98e1a;flex-shrink:0;margin-right:2px}.editor__pinned{display:flex;flex-direction:row;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--bg-alt, transparent)}.editor__pinned input[type=checkbox]{margin-top:4px;width:16px;height:16px;flex-shrink:0}.editor__pinned>span{display:block;line-height:1.5}.editor__pinned em{display:block;margin-left:0!important;margin-top:4px}.entry--archived .entry__title{text-decoration:line-through;text-decoration-color:#785a3273;text-decoration-thickness:2px}.entry--archived .entry__header,.entry--archived .entry__body,.entry--archived .entry__panels{opacity:.85}.entry__archived-banner{display:flex;align-items:center;gap:.5rem;padding:.6rem .85rem;margin:0 0 1rem;background:#b48c3c1a;border:1px solid rgba(180,140,60,.35);border-radius:var(--radius);font-size:.85rem;color:#6a4a1a}.sidebar__item--archived{opacity:.58;font-style:italic;display:inline-flex;align-items:center;gap:.3rem}.sidebar__item--archived:hover{opacity:.85}.sidebar__archive-toggle{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .55rem;margin-top:.3rem;border:1px dashed var(--border);background:transparent;color:var(--muted);font-size:.72rem;border-radius:var(--radius);cursor:pointer}.sidebar__archive-toggle:hover{background:var(--bg-alt);color:var(--ink)}.sidebar__archive-toggle.is-active{background:#b48c3c1f;border-style:solid;border-color:#b48c3c80;color:#6a4a1a}.sb-page__tabs{display:inline-flex;gap:.25rem;padding:.2rem;background:var(--bg-alt);border-radius:var(--radius);margin-right:.6rem}.sb-page__tab{display:inline-flex;align-items:center;gap:.3rem;padding:.35rem .75rem;background:transparent;border:none;color:var(--muted);font-size:.82rem;border-radius:calc(var(--radius) - 1px);cursor:pointer}.sb-page__tab:hover{color:var(--ink)}.sb-page__tab.is-active{background:var(--panel);color:var(--ink);box-shadow:0 1px 2px #00000014}.sb-page__tab-count{font-size:.7rem;padding:0 .35rem;border-radius:6px;background:#00000014;color:inherit}.sb-card--archived{opacity:.62;filter:grayscale(.35)}.sb-card--archived:hover{opacity:.9}.sb-card__archived{display:inline-block;padding:0 .4rem;margin-left:.5rem;font-size:.68rem;font-weight:600;background:#785a322e;color:#7a5a28;border-radius:3px;letter-spacing:.04em}@media print{.sidebar__archive-toggle,.sb-page__tabs,.entry__archived-banner{display:none!important}}.gallery-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#0000008c;display:flex;align-items:center;justify-content:center;padding:2rem}.gallery-modal__inner{background:var(--panel);border:1px solid var(--border);border-radius:6px;width:min(1100px,100%);max-height:90vh;display:flex;flex-direction:column;box-shadow:0 10px 40px #00000040}.gallery-modal__head{display:flex;align-items:center;gap:.75rem;padding:.8rem 1rem;border-bottom:1px solid var(--border)}.gallery-modal__head h3{margin:0;display:inline-flex;align-items:center;gap:.45rem;font-size:1rem;flex:1}.gallery-modal__count{font-size:.78rem;font-weight:400;color:var(--muted);margin-left:.4rem}.gallery-modal__filters{display:inline-flex;gap:.2rem;background:var(--bg-alt);border-radius:var(--radius);padding:.15rem}.gallery-modal__filter{border:none;background:transparent;padding:.3rem .65rem;font-size:.78rem;color:var(--muted);border-radius:calc(var(--radius) - 1px);cursor:pointer}.gallery-modal__filter.is-active{background:var(--panel);color:var(--ink);box-shadow:0 1px 2px #00000014}.gallery-modal__close{border:none;background:transparent;color:var(--muted);padding:.3rem;border-radius:var(--radius);cursor:pointer}.gallery-modal__close:hover{background:var(--bg-alt);color:var(--ink)}.gallery-modal__body{flex:1 1 auto;overflow:auto;padding:1rem}.gallery-modal__section{margin-bottom:1.5rem}.gallery-modal__section:last-child{margin-bottom:0}.gallery-modal__section h4{margin:0 0 .6rem;font-size:.82rem;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.gallery-modal__err{margin:.5rem 1rem;padding:.5rem .75rem;background:#b43a3a1a;color:#a13a3a;border:1px solid rgba(180,58,58,.35);border-radius:var(--radius);font-size:.82rem}.gallery-modal__foot{border-top:1px solid var(--border);padding:.5rem 1rem;font-size:.78rem;color:var(--muted)}.gallery-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem}.gallery-item{position:relative;background:var(--bg-alt);border:1px solid var(--border);border-radius:4px;overflow:hidden;display:flex;flex-direction:column;transition:transform .1s,box-shadow .15s}.gallery-item:hover{transform:translateY(-1px);box-shadow:0 2px 10px #0000001f}.gallery-item.is-current{border-color:var(--accent);box-shadow:0 0 0 2px #b6772c40}.gallery-item__pick{position:relative;display:block;width:100%;aspect-ratio:1 / 1;padding:0;border:none;background:#000;cursor:pointer;overflow:hidden}.gallery-item__pick img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .2s}.gallery-item__pick:hover img{transform:scale(1.04)}.gallery-item__pick:disabled{cursor:wait;opacity:.6}.gallery-item__badge{position:absolute;top:4px;left:4px;background:var(--accent);color:#fff;font-size:.65rem;font-weight:600;padding:.12rem .4rem;border-radius:3px;letter-spacing:.05em}.gallery-item__badge--used{background:#0009;color:#fff}.gallery-item__meta{display:flex;align-items:center;gap:.35rem;padding:.3rem .45rem;font-size:.68rem;color:var(--muted)}.gallery-item__origin{font-weight:600;color:var(--ink)}.gallery-item__date{flex:1 1 auto}.gallery-item__del{padding:.15rem .3rem;background:transparent;border:1px solid var(--border);border-radius:3px;color:var(--muted);cursor:pointer}.gallery-item__del:hover{background:#b43a3a1f;border-color:#b43a3a;color:#a13a3a}.panel__image-empty-actions{display:flex;flex-direction:column;align-items:center;gap:.4rem}.panel__image-btn--ghost{background:transparent;color:var(--muted);border:1px dashed var(--border)}.panel__image-btn--ghost:hover:not(:disabled){background:var(--bg-alt);color:var(--ink);border-style:solid}@media print{.gallery-modal{display:none!important}}.webtoon{background:#0b0b0b;color:#ddd;min-height:100%}.webtoon__head{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:.55rem 1rem;background:#0a0a0ae0;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:1px solid rgba(255,255,255,.08);font-size:.85rem}.webtoon__back{display:inline-flex;align-items:center;gap:.45rem;color:#ddd;text-decoration:none;padding:.3rem .55rem;border-radius:var(--radius)}.webtoon__back:hover{background:#ffffff14;color:#fff}.webtoon__titles{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap;min-width:0;padding-right:.75rem}.webtoon__title-chip{display:inline-flex;align-items:center;gap:.2rem}.webtoon__title-chip>a{color:#ddd;text-decoration:none;padding:.25rem .35rem;border-radius:var(--radius)}.webtoon__title-chip>a:hover{background:#ffffff14;color:#fff}.webtoon__chip-x{background:transparent;border:0;color:#999;font-size:.95rem;line-height:1;cursor:pointer;padding:0 .25rem;border-radius:3px}.webtoon__chip-x:hover{color:#fff;background:#ffffff1f}.webtoon__chip-sep{color:#555;margin:0 .15rem}.webtoon__head-right{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.webtoon__count{font-variant-numeric:tabular-nums;color:#999;font-size:.78rem}.webtoon__gap-btn{background:#ffffff0f;color:#ccc;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius);padding:.3rem .6rem;font-size:.78rem;cursor:pointer;font-family:inherit}.webtoon__gap-btn:hover{background:#ffffff1f;color:#fff}.webtoon__gap-btn--busy{background:#78aaff2e;border-color:#78aaff66;color:#dce8ff;cursor:pointer}.webtoon__gap-btn--busy:hover{background:#ff787833;border-color:#ff787880;color:#ffd0d0}.webtoon__gap-btn .icon,.webtoon__gap-btn--busy .icon{vertical-align:-2px;margin-right:4px}.webtoon__export-cancel{opacity:.6;margin-left:6px}select.webtoon__gap-btn option{background:#1a1a1a;color:#ddd}.webtoon__strip{max-width:720px;margin:0 auto;background:#000;display:flex;flex-direction:column;gap:var(--webtoon-gap, 36px);padding:var(--webtoon-gap, 36px) 0}.webtoon__strip img{display:block;width:100%;height:auto;margin:0;padding:0;border:0}.webtoon__panel{position:relative;display:block;margin:0 auto;width:100%;max-width:100%;background:#000;box-shadow:0 0 0 var(--webtoon-panel-border, 1px) #ffffff14;overflow:visible}.webtoon__panel>img{display:block;width:100%;height:auto;margin:0;padding:0;border:0}.webtoon__panel--full,.webtoon__panel--wide,.webtoon__panel--half{max-width:100%}.webtoon__panel--third{max-width:70%}.webtoon__panel--small{max-width:55%}.webtoon__panel--inset{max-width:65%;margin-right:0;margin-left:auto}.webtoon__panel--spacer-beat{margin-bottom:clamp(48px,10vh,120px)}.webtoon__panel--spacer-silence{margin-bottom:clamp(220px,50vh,600px)}.webtoon__panel--spacer-sceneBreak{margin-bottom:clamp(420px,95vh,1100px)}.webtoon__panel--spacer-silence:after,.webtoon__panel--spacer-sceneBreak:after{content:"";position:absolute;left:50%;pointer-events:none;border-radius:50%;background:#ffffff38}.webtoon__panel--spacer-silence:after{top:100%;width:6px;height:6px;transform:translate(-50%,clamp(110px,25vh,300px))}.webtoon__panel--spacer-sceneBreak:after{top:100%;width:5px;height:5px;background:#ffffff4d;box-shadow:0 -14px #ffffff4d,0 14px #ffffff4d;transform:translate(-50%,clamp(210px,47vh,550px))}@media (max-width: 720px){.webtoon__panel--spacer-beat{margin-bottom:clamp(40px,9vh,100px)}.webtoon__panel--spacer-silence{margin-bottom:clamp(180px,45vh,500px)}.webtoon__panel--spacer-sceneBreak{margin-bottom:clamp(340px,90vh,900px)}}.bubble-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.bubble{position:absolute;display:flex;align-items:center;justify-content:center;padding:clamp(4px,1.6%,12px) clamp(6px,2.4%,16px);font-family:Noto Sans KR,system-ui,-apple-system,Apple SD Gothic Neo,Malgun Gothic,sans-serif;font-weight:500;line-height:1.32;word-break:keep-all;overflow-wrap:anywhere;text-align:center;box-sizing:border-box;-webkit-user-select:text;user-select:text;container-type:inline-size}.bubble__text{font-size:calc(var(--bubble-fs, 1) * clamp(.95rem,6cqi,1.55rem));line-height:1.28;max-width:100%;white-space:pre-line}.bubble--speech{background:#fff;color:#111;border:2px solid #111;border-radius:18px;box-shadow:0 2px 6px #00000040}.bubble__tail{position:absolute;width:16px;height:16px;transform:translate(-50%,-2px) rotate(45deg);background:#fff;border-right:2px solid #111;border-bottom:2px solid #111;z-index:-1}.bubble--narration{background:#fdf6e3;color:#1a1410;border:1.5px solid #1a1410;border-radius:4px;font-weight:600;letter-spacing:-.005em}.bubble--sfx{background:transparent;color:#111;font-weight:900;letter-spacing:.02em;text-shadow:-2px -2px 0 #fff,2px -2px 0 #fff,-2px 2px 0 #fff,2px 2px 0 #fff,0 0 8px rgba(255,255,255,.6);font-family:Black Han Sans,Noto Sans KR,sans-serif;border:none;padding:0}.bubble--sfx .bubble__text{font-size:calc(var(--bubble-fs, 1) * clamp(1.4rem,11cqi,3.6rem))}.bubble--shout.bubble--speech{border-width:3px;border-radius:4px;font-weight:900}.bubble--whisper.bubble--speech{border-style:dashed;background:#ffffffd9;color:#444;font-style:italic}.bubble--whisper .bubble__tail{border-right-style:dashed;border-bottom-style:dashed;background:#ffffffd9}.bubble--thought{background:#fff;color:#111;border:2px dotted #111;border-radius:50%/40%;font-style:italic;box-shadow:0 2px 6px #00000040}.bubble--thought .bubble__tail{display:none}.bubble--fallback.bubble--speech,.bubble--fallback .bubble__tail{background:#ffffffeb}.bubble--legacy{opacity:.95}.bubble--legacy.bubble--speech,.bubble--legacy.bubble--narration{border-style:dashed}.bubble--legacy.bubble--speech .bubble__tail{border-right-style:dashed;border-bottom-style:dashed}.bubble-editor{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px}.bubble-editor__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000a6;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.bubble-editor__panel{position:relative;background:#16181d;color:#ddd;border-radius:8px;width:min(1200px,96vw);max-height:92vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 50px #00000080}.bubble-editor__head,.bubble-editor__foot{flex:0 0 auto;padding:.6rem .9rem;display:flex;align-items:center;gap:.7rem;border-bottom:1px solid #2a2d33}.bubble-editor__foot{border-bottom:none;border-top:1px solid #2a2d33;justify-content:space-between}.bubble-editor__close{margin-left:auto;background:transparent;border:none;color:#aaa;cursor:pointer;padding:4px;border-radius:4px}.bubble-editor__close:hover{color:#fff;background:#2a2d33}.bubble-editor__body{flex:1 1 auto;display:grid;grid-template-columns:1fr 320px;gap:12px;padding:12px;overflow:hidden;min-height:0}.bubble-editor__stage{position:relative;background:#0b0c10;border-radius:6px;overflow:visible;display:flex;align-items:center;justify-content:center;min-height:0;max-height:78vh;padding:12%;-webkit-user-select:none;user-select:none;touch-action:none}.bubble-editor__frame{position:relative;display:block}.bubble-editor__img{display:block;max-width:100%;max-height:60vh;width:auto;height:auto}.bubble-editor__stage[style*=aspect-ratio] .bubble-editor__frame,.bubble-editor__stage[style*=aspect-ratio] .bubble-editor__img{width:100%;height:100%}.bubble-editor__placeholder{color:#666;font-size:.85rem;padding:2rem}.bubble-editor__hits{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.bubble-editor__hit{position:absolute;cursor:move;pointer-events:auto;border:1px dashed transparent;box-sizing:border-box}.bubble-editor__hit:hover{border-color:#78c8ff80}.bubble-editor__hit.is-selected{border-color:#5cc8ff;box-shadow:0 0 0 2px #5cc8ff40}.bubble-editor__handle{position:absolute;width:14px;height:14px;background:#5cc8ff;border:2px solid #fff;border-radius:50%;cursor:nwse-resize}.bubble-editor__handle--se{right:-7px;bottom:-7px}.bubble-editor__handle--tail{left:50%;top:100%;transform:translate(-50%,-50%);background:#ffb86b;cursor:move}.bubble-editor__side{display:flex;flex-direction:column;gap:10px;overflow:auto;padding-right:4px}.bubble-editor__add{display:flex;flex-wrap:wrap;gap:4px;align-items:center;padding:6px;background:#1d1f25;border-radius:6px}.bubble-editor__btn{background:#2a2d33;border:1px solid #3a3e46;color:#ddd;padding:4px 8px;border-radius:4px;font-size:.78rem;cursor:pointer;display:inline-flex;align-items:center;gap:4px}.bubble-editor__btn:hover:not(:disabled){background:#34373d}.bubble-editor__btn:disabled{opacity:.4;cursor:not-allowed}.bubble-editor__btn--primary{background:#5cc8ff;color:#002033;border-color:#5cc8ff;font-weight:600}.bubble-editor__btn--primary:hover:not(:disabled){background:#7dd3ff}.bubble-editor__btn--ai{background:linear-gradient(135deg,#6366f1,#a855f7);color:#fff;border-color:transparent}.bubble-editor__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;max-height:30vh;overflow:auto}.bubble-editor__item{display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:4px;cursor:pointer;font-size:.82rem;background:#1d1f25}.bubble-editor__item:hover{background:#24272d}.bubble-editor__item.is-selected{background:#2c3a48;outline:1px solid #5cc8ff}.bubble-editor__kind{flex:0 0 auto;font-size:.7rem;background:#34373d;color:#ccc;padding:1px 6px;border-radius:3px}.bubble-editor__preview{flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#bbb}.bubble-editor__del{flex:0 0 auto;background:transparent;border:none;color:#888;cursor:pointer;font-size:1rem;padding:0 4px;border-radius:3px}.bubble-editor__del:hover{color:#ff8080;background:#ff64641a}.bubble-editor__form{display:flex;flex-direction:column;gap:8px;padding:10px;background:#1d1f25;border-radius:6px}.bubble-editor__field{display:flex;flex-direction:column;gap:4px;font-size:.8rem}.bubble-editor__field>span{color:#999;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em}.bubble-editor__field input,.bubble-editor__field select,.bubble-editor__field textarea{background:#0f1014;border:1px solid #3a3e46;color:#ddd;border-radius:4px;padding:6px 8px;font:inherit;font-size:.85rem;outline:none}.bubble-editor__field input[type=range]{padding:0}.bubble-editor__field textarea{resize:vertical;min-height:60px}.bubble-editor__row{display:grid;grid-template-columns:1fr 1fr;gap:6px}@media (max-width: 720px){.bubble-editor__body{grid-template-columns:1fr;grid-template-rows:1fr auto}.bubble-editor__side{max-height:38vh}}.webtoon__empty{padding:3rem 1rem;text-align:center}.webtoon__empty .muted{color:#888}.webtoon__segment{display:flex;flex-direction:column;gap:var(--webtoon-gap, 14px)}.webtoon__segment img{display:block;width:100%;height:auto;margin:0;padding:0;border:0}.webtoon__seg-error{padding:2rem 1rem;text-align:center;background:#111}.webtoon__ep-sep{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.1rem;padding:clamp(180px,60vh,700px) 1rem;text-align:center;color:#ffffff9e;letter-spacing:.16em;font-family:Noto Sans KR,system-ui,-apple-system,sans-serif}.webtoon__ep-sep__rule{width:56%;max-width:360px;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.45) 50%,transparent 100%)}.webtoon__ep-sep__mark{font-size:.78rem;font-weight:500;text-transform:uppercase;letter-spacing:.32em;color:#ffffff80}.webtoon__ep-sep__title{font-size:1.55rem;font-weight:700;letter-spacing:.04em;color:#ffffffe0;max-width:90%;word-break:keep-all;overflow-wrap:anywhere;line-height:1.35}.webtoon__ep-sep__sub{font-size:.82rem;color:#ffffff6b;letter-spacing:.08em}@media (max-width: 720px){.webtoon__ep-sep{padding:clamp(140px,50vh,500px) 1rem}.webtoon__ep-sep__title{font-size:1.25rem}}@media (max-width: 720px){.webtoon__head{flex-direction:column;align-items:stretch;gap:.4rem;padding:.45rem .65rem}.webtoon__titles{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;padding-right:0;-webkit-overflow-scrolling:touch;scrollbar-width:none}.webtoon__titles::-webkit-scrollbar{display:none}.webtoon__title-chip{flex-shrink:0}.webtoon__title-chip>a{display:inline-block;max-width:60vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-break:keep-all}.webtoon__head-right{gap:.4rem;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:0 -.65rem;padding:0 .65rem}.webtoon__head-right::-webkit-scrollbar{display:none}.webtoon__gap-btn{flex-shrink:0;padding:.32rem .55rem;font-size:.74rem}select.webtoon__gap-btn{max-width:8.5rem}}@media print{.webtoon__head{display:none!important}.webtoon,.webtoon__strip,.webtoon__segment{background:#fff!important}.webtoon__strip{max-width:100%!important;padding:0!important}.webtoon__segment img,.webtoon__panel{break-inside:avoid;page-break-inside:avoid}.webtoon__panel--spacer-beat,.webtoon__panel--spacer-silence,.webtoon__panel--spacer-sceneBreak{margin-bottom:0!important}.webtoon__ep-sep,.sidebar,.entry__save-status{display:none!important}.layout{display:block!important}.main{display:block!important;overflow:visible!important}.main__content{display:block!important;overflow:visible!important;flex:none!important}.mobile-topbar{display:none!important}}.panel__num{font-family:var(--mono);font-size:.78rem;font-weight:600;color:var(--muted);background:var(--surface-alt, rgba(255,255,255,.03));border:1px solid var(--border);border-radius:4px;display:flex;align-items:flex-start;justify-content:center;padding-top:.55rem;-webkit-user-select:none;user-select:none}.panel__frame{border:1px solid var(--border);border-radius:8px;padding:.9rem 1rem;background:var(--surface, rgba(255,255,255,.01));display:flex;flex-direction:column;gap:.6rem;position:relative}.panel--wide .panel__frame,.panel--full .panel__frame{min-height:5rem}.panel--small .panel__frame{padding:.6rem .8rem;background:var(--surface-alt, rgba(255,255,255,.03))}.panel--half .panel__frame:before,.panel--third .panel__frame:before,.panel--small .panel__frame:before,.panel--inset .panel__frame:before{content:attr(data-layout)}.panel--inset .panel__frame{border-style:dashed;opacity:.9}.panel__head{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.1rem;padding-right:9rem}.panel__tag{display:inline-flex;align-items:center;gap:.25rem;font-size:.7rem;padding:.15rem .5rem;border-radius:999px;border:1px solid var(--border);color:var(--muted);background:var(--surface-alt, rgba(255,255,255,.03));line-height:1.3;text-decoration:none;font-family:var(--mono);letter-spacing:.02em}.panel__tag--shot{color:var(--accent, #d4af7a);border-color:color-mix(in srgb,var(--accent, #d4af7a) 40%,var(--border))}.panel__tag--layout{color:var(--text-soft, var(--text))}.panel__tag--loc{color:var(--link, #8ab4f8)}.panel__tag--loc:hover{color:var(--link-hover, #aec7ff);border-color:color-mix(in srgb,var(--link, #8ab4f8) 50%,var(--border))}.panel__tag--mood{color:color-mix(in srgb,var(--accent, #d4af7a) 80%,#b98a8a);font-style:italic}.panel__narration{display:flex;align-items:flex-start;gap:.5rem;padding:.5rem .7rem;background:var(--surface-alt, rgba(255,255,255,.04));border-left:3px solid var(--muted);border-radius:3px;font-size:.92em;font-family:var(--serif);font-style:italic;color:var(--text-soft, var(--text))}.panel__subcuts{list-style:none;margin:.5rem 0 0;padding:0;display:flex;flex-direction:column;gap:.35rem;border-left:2px dashed color-mix(in srgb,var(--accent, #d4af7a) 40%,transparent);padding-left:.65rem}.panel__subcut{display:flex;gap:.5rem;align-items:flex-start;padding:.35rem 0}.panel__subcut+.panel__subcut{border-top:1px solid var(--border, rgba(255,255,255,.08))}.panel__subcut-mark{flex-shrink:0;font-family:var(--mono);font-size:.7rem;padding:.1rem .4rem;border:1px solid var(--border);border-radius:3px;color:color-mix(in srgb,var(--accent, #d4af7a) 70%,var(--muted));background:color-mix(in srgb,var(--accent, #d4af7a) 8%,transparent);margin-top:.1rem;letter-spacing:.03em;white-space:nowrap;min-width:4.5rem;text-align:center}.panel__subcuts-meta{font-size:.72rem;font-family:var(--mono);letter-spacing:.03em;padding:.15rem 0 .2rem;margin-bottom:.1rem;border-bottom:1px solid var(--border, rgba(255,255,255,.06));list-style:none}.panel__subcut-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:.35rem}.panel__subcut-mood{font-size:.85em;font-style:italic;color:color-mix(in srgb,var(--accent, #d4af7a) 80%,#b98a8a)}.panel__narration-mark{font-family:var(--mono);font-style:normal;font-size:.7rem;padding:.05rem .3rem;border:1px solid var(--border);border-radius:3px;color:var(--muted);flex-shrink:0;margin-top:.15rem}.panel__action{margin:0;font-size:.95em;line-height:1.55;color:var(--text)}.panel__dialogue{display:flex;flex-direction:column;gap:.25rem;padding:.5rem .75rem;background:color-mix(in srgb,var(--accent, #d4af7a) 8%,transparent);border-radius:6px;font-family:var(--serif)}.panel__line{display:flex;gap:.5rem;align-items:baseline;font-size:.94em;line-height:1.55}.panel__line--cont{padding-left:0}.panel__speaker{font-weight:600;color:var(--accent, #d4af7a);min-width:4.5rem;text-align:right;font-size:.85em;flex-shrink:0}.panel__text{flex:1;color:var(--text)}.panel__sfx{display:inline-flex;align-items:center;gap:.3rem;font-family:var(--mono);font-size:.78rem;font-weight:700;color:color-mix(in srgb,var(--accent, #d4af7a) 80%,#ffb347);letter-spacing:.05em;text-transform:uppercase;align-self:flex-start}.panel__foot{display:flex;flex-direction:column;gap:.3rem;margin-top:.2rem;padding-top:.5rem;border-top:1px dashed var(--border);font-size:.8rem}.panel__chars{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem;color:var(--muted)}.panel__sep{color:var(--muted)}.panel__chip{display:inline-flex;align-items:center;padding:.1rem .45rem;border-radius:999px;border:1px solid var(--border);color:var(--text-soft, var(--text));text-decoration:none;font-size:.75rem;font-family:var(--mono)}.panel__chip:hover{color:var(--link, #8ab4f8);border-color:color-mix(in srgb,var(--link, #8ab4f8) 50%,var(--border))}.panel__notes{color:var(--muted);font-style:italic}.panel__ref{color:var(--muted);font-family:var(--mono);font-size:.72rem}.sb-page__head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border);flex-wrap:wrap}.sb-page__head h1{display:inline-flex;align-items:center;gap:.5rem;margin:0 0 .25rem;font-family:var(--serif)}.sb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem}.sb-empty{padding:3rem 1.5rem;border:1px dashed var(--border);border-radius:10px;text-align:center}.sb-card{display:flex;flex-direction:column;gap:.6rem;padding:1rem 1.1rem;border:1px solid var(--border);border-radius:10px;background:var(--surface, rgba(255,255,255,.02));text-decoration:none;color:inherit;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;position:relative;font:inherit;text-align:inherit;cursor:pointer}.sb-card--selected{border-color:var(--accent, #d4af7a);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent, #d4af7a) 40%,transparent)}.sb-card__pick-order{position:absolute;top:.55rem;right:.6rem;width:1.6rem;height:1.6rem;border-radius:50%;background:var(--accent, #d4af7a);color:#000;font-weight:700;font-size:.8rem;display:inline-flex;align-items:center;justify-content:center;font-family:var(--mono)}.sb-page__select-hint{margin:-.5rem 0 1rem;font-size:.85rem}.sb-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent, #d4af7a) 40%,var(--border));box-shadow:0 6px 20px -10px color-mix(in srgb,var(--accent, #d4af7a) 50%,transparent)}.sb-card__head{display:grid;grid-template-columns:auto 1fr auto;align-items:baseline;gap:.6rem}.sb-card__ep{font-family:var(--mono);font-size:.75rem;padding:.15rem .5rem;border-radius:4px;background:color-mix(in srgb,var(--accent, #d4af7a) 18%,transparent);color:var(--accent, #d4af7a);letter-spacing:.05em;font-weight:600}.sb-card__title{margin:0;font-family:var(--serif);font-size:1.1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sb-card__count{color:var(--muted);font-size:.8rem;font-family:var(--mono)}.sb-card__source{display:inline-flex;align-items:center;gap:.3rem;font-family:var(--mono);font-size:.72rem;color:var(--muted)}.sb-card__strip{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem;margin-top:.2rem}.sb-card__empty{grid-column:1 / -1;padding:1rem;border:1px dashed var(--border);border-radius:6px;color:var(--muted);font-size:.8rem;text-align:center}.sb-card__more{grid-column:1 / -1;padding:.3rem;color:var(--muted);font-family:var(--mono);font-size:.72rem;text-align:center;border-top:1px dashed var(--border);margin-top:.2rem}.sb-thumb{position:relative;min-height:60px;padding:.45rem .5rem .4rem;border:1px solid var(--border);border-radius:4px;background:var(--surface-alt, rgba(255,255,255,.03));font-size:.7rem;line-height:1.35;overflow:hidden;display:flex;flex-direction:column;gap:.2rem}.sb-thumb--full,.sb-thumb--wide{grid-column:1 / -1;min-height:72px}.sb-thumb--half{grid-column:span 2}.sb-thumb__shot{position:absolute;top:.2rem;right:.35rem;font-family:var(--mono);font-size:.6rem;padding:.05rem .3rem;border-radius:3px;background:var(--bg, #0b0b0b);color:var(--muted);border:1px solid var(--border)}.sb-thumb__action{color:var(--text-soft, var(--text));display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:.72rem}.sb-thumb__dialogue{color:var(--accent, #d4af7a);font-family:var(--serif);font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sb-thumb__sfx{font-family:var(--mono);font-size:.6rem;color:color-mix(in srgb,var(--accent, #d4af7a) 80%,#ffb347);letter-spacing:.04em;text-transform:uppercase;align-self:flex-end}@media (max-width: 620px){.panel{grid-template-columns:1.8rem 1fr;gap:.5rem}.panel__speaker{min-width:3rem}}.print-page{background:var(--bg);min-height:100vh;padding:0}.print-toolbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem 1.2rem;background:var(--panel);border-bottom:1px solid var(--border);box-shadow:0 2px 6px #0000000a}.print-toolbar__title{display:flex;align-items:center;gap:.5rem;font-family:var(--sans);font-size:.9rem}.print-toolbar__title strong{font-weight:600}.print-toolbar__actions{display:flex;gap:.5rem;align-items:center}.print-doc{max-width:780px;margin:2rem auto 4rem;padding:2.5rem 3rem 3rem;background:#fff;border:1px solid var(--border);box-shadow:0 2px 14px #0000000d;font-family:var(--serif);color:var(--ink);line-height:1.7}.print-doc__cover{text-align:center;padding:2rem 0 2.5rem;border-bottom:1px solid var(--border);margin-bottom:2rem}.print-doc__brand{font-family:var(--sans);font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:0 0 1.5rem}.print-doc__title{font-family:var(--serif);font-size:2.4rem;line-height:1.2;margin:0 0 .6rem;letter-spacing:-.01em}.print-doc__subtitle{margin:0;color:var(--muted);font-style:italic}.print-doc__date{margin:1.2rem 0 0;font-family:var(--sans);font-size:.8rem;color:var(--muted)}.print-doc__toc{margin:0 0 2.5rem;padding:1.2rem 1.4rem;background:var(--bg-alt);border:1px solid var(--border);border-radius:4px}.print-doc__toc h2{margin:0 0 1rem;font-family:var(--sans);font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.print-doc__toc-cat{margin-bottom:1rem}.print-doc__toc-cat:last-child{margin-bottom:0}.print-doc__toc-cat h3{margin:0 0 .4rem;font-family:var(--sans);font-size:.85rem;color:var(--accent)}.print-doc__toc-cat ol{margin:0;padding-left:1.4rem;font-size:.9rem}.print-doc__toc-cat li{margin:.15rem 0}.print-doc__toc-cat code{font-size:.75rem}.print-doc__cat{margin:0 0 2rem}.print-doc__cat-title{font-family:var(--serif);font-size:1.5rem;padding:1rem 0 .5rem;border-bottom:2px solid var(--ink);margin:2.5rem 0 1.5rem;page-break-before:always}.print-doc__cat:first-child .print-doc__cat-title{page-break-before:auto;margin-top:0}.print-entry{margin:0 0 3rem;padding-bottom:2rem;border-bottom:1px solid var(--border);page-break-inside:avoid}.print-entry:last-child{border-bottom:none;margin-bottom:0}.print-entry__head{margin-bottom:1rem}.print-entry__crumbs{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.5rem}.print-entry__title{font-family:var(--serif);font-size:1.6rem;line-height:1.25;margin:0 0 .4rem;letter-spacing:-.01em}.print-entry__meta{font-family:var(--sans);font-size:.78rem;color:var(--muted)}.print-entry__body{font-family:var(--serif);font-size:1rem;line-height:1.75}.print-entry__body h2{font-size:1.2rem;margin-top:1.6rem;margin-bottom:.6rem;border-bottom:1px solid var(--border);padding-bottom:.25rem}.print-entry__body h3{font-size:1.05rem;margin-top:1.2rem;margin-bottom:.4rem}.print-entry__body p{margin:.7rem 0}.print-entry__body--note{font-style:italic;color:var(--muted);padding:.6rem .9rem;border-left:3px solid var(--border);background:var(--bg-alt);margin-bottom:1rem}.print-entry__panels{margin-top:1rem}.print-entry__portrait{margin:1rem 0 1.25rem;padding:0;display:block;break-inside:avoid;page-break-inside:avoid}.print-entry__portrait img{display:block;width:100%;max-width:100%;height:auto;border-radius:6px;background:#f4efe6;border:1px solid #e4e2db}.print-entry__portrait figcaption{margin-top:.45rem;font-size:.8rem;text-align:center}.panel__image.panel__image--print{background:transparent;margin:0 0 .4rem;border-radius:4px;overflow:hidden}.panel__image.panel__image--print img{max-height:none;background:#fff;border:1px solid #e4e2db;border-radius:4px}.print-entry__empty{font-style:italic;margin:0}@media print{@page{size:A4;margin:18mm 16mm}.layout>.sidebar,.no-print,.print-toolbar,.entry__actions,.backlinks,.entry-history{display:none!important}.layout,.main,.main__content,.print-page{display:block!important;background:#fff!important;min-height:0!important;overflow:visible!important;flex:none!important}.mobile-topbar{display:none!important}body{background:#fff!important;font-size:11pt;line-height:1.55;color:#000}.print-doc{max-width:none;margin:0;padding:0;border:none;box-shadow:none}.print-doc__cover{padding:0 0 1.5rem;page-break-after:always}.print-doc__toc{page-break-after:always;background:transparent;border:none;padding:0}.print-doc__cat-title{page-break-before:always}.print-doc__cat:first-child .print-doc__cat-title{page-break-before:auto}.print-entry{page-break-inside:avoid;break-inside:avoid}.print-entry .panels,.print-entry__body{page-break-inside:auto;break-inside:auto}.panel{page-break-inside:avoid;break-inside:avoid}h1,h2,h3{page-break-after:avoid}a,a:visited{color:#000!important;text-decoration:none!important}.panel,.panel__dialogue,.panel__tag,.panel__chip{background:transparent!important;color:#000!important}.print-entry,.print-entry__portrait,.print-entry__portrait img,.panel__image,.panel__image img{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.panel__image-actions,.panel__image-overlay,.panel__image-scan,.panel__image-ref,.panel__image-err,.panel__image-gen,.panel__image--empty{display:none!important}.panel__image{background:transparent!important;margin:0 0 .3rem!important;border-radius:4px;overflow:visible;page-break-inside:avoid;break-inside:avoid}.panel__image img{background:#fff!important;max-height:none!important;border:1px solid #c9c6be;border-radius:4px}.print-entry__portrait{page-break-inside:avoid;break-inside:avoid;margin:.6rem 0 1rem}.print-entry__portrait img{border:1px solid #c9c6be;background:#f4efe6!important;max-height:110mm;object-fit:contain}}.panel__image{margin:0 -.9rem .9rem;position:relative;background:var(--bg-muted, #0f1014);border-radius:6px 6px 0 0;overflow:hidden}.panel__image img{display:block;width:100%;height:auto;max-height:520px;object-fit:contain;background:#0b0c10}.panel__image-actions{position:absolute;bottom:8px;right:8px;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px;max-width:min(420px,80%);opacity:0;transition:opacity .12s ease}.panel__image:hover .panel__image-actions{opacity:1}.panel__image-btn{font-size:11px;padding:4px 8px;border-radius:4px;border:1px solid rgba(255,255,255,.25);background:#0000008c;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.panel__image-btn:hover:not(:disabled){background:#000000bf}.panel__image-btn:disabled{opacity:.6;cursor:progress}.panel__image-btn--danger{border-color:#dc505073;color:#ffb3b3}.panel__image--empty{background:repeating-linear-gradient(45deg,rgba(255,255,255,.02) 0 8px,transparent 8px 16px);border:1px dashed var(--border);padding:1.2rem;display:flex;justify-content:center;align-items:center;border-radius:6px;min-height:64px}.panel__image-gen{display:inline-flex;align-items:center;gap:6px;font-size:12px;padding:6px 12px;background:transparent;color:var(--muted);border:1px solid var(--border);border-radius:4px;cursor:pointer;transition:all .12s ease}.panel__image-gen:hover:not(:disabled){color:var(--text);border-color:var(--accent, #888);background:#ffffff08}.panel__image-gen:disabled{cursor:progress}.panel__image-gen .icon{animation:none}.panel__image-gen:disabled .icon{animation:spin 1.2s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.panel__image-err{position:absolute;left:8px;right:8px;bottom:8px;padding:6px 10px;font-size:11px;background:#dc2828d9;color:#fff;border-radius:4px;z-index:4}.panel__image--empty+.panel__image-err{position:static;margin-top:6px}.panel__image--busy img{filter:blur(2px) saturate(.6) brightness(.7);transform:scale(1.02);transition:filter .25s ease,transform .4s ease}.panel__image--busy{outline:2px solid rgba(120,180,255,.55);outline-offset:-2px;box-shadow:0 0 0 2px #78b4ff40,0 0 24px #508cff59 inset;animation:panelBusyPulse 1.8s ease-in-out infinite}@keyframes panelBusyPulse{0%,to{box-shadow:0 0 0 2px #78b4ff33,0 0 24px #508cff40 inset}50%{box-shadow:0 0 0 2px #78b4ff8c,0 0 48px #508cff8c inset}}.panel__image-scan{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;border-radius:inherit}.panel__image-scan:before{content:"";position:absolute;left:0;right:0;height:28%;top:-30%;background:linear-gradient(to bottom,transparent 0%,rgba(120,180,255,.12) 35%,rgba(160,220,255,.45) 50%,rgba(120,180,255,.12) 65%,transparent 100%);filter:blur(2px);animation:panelScan 1.6s linear infinite}@keyframes panelScan{0%{top:-30%}to{top:110%}}.panel__image-scan--empty:before{height:40%}.panel__image-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-end;justify-content:center;padding:0 0 14px;background:repeating-linear-gradient(135deg,#508cff0a 0,#508cff0a 10px,#508cff14 10px,#508cff14 20px),linear-gradient(to top,rgba(10,20,40,.7),rgba(10,20,40,.2) 60%,transparent 100%);animation:panelOverlayStripes 8s linear infinite;background-size:28px 28px,100% 100%;pointer-events:none;z-index:2}@keyframes panelOverlayStripes{to{background-position:-112px 0,0 0}}.panel__image-overlay-inner{display:inline-flex;align-items:center;gap:10px;padding:8px 14px;background:#0a1428d1;border:1px solid rgba(120,180,255,.4);border-radius:6px;color:#e6f0ff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:auto;box-shadow:0 4px 20px #0006}.panel__image-overlay-inner .icon{animation:spin 1.2s linear infinite;flex:0 0 auto}.panel__image-overlay-text{display:flex;flex-direction:column;line-height:1.2;gap:2px;text-align:left}.panel__image-overlay-text strong{font-size:12px;font-weight:600;color:#b8d4ff;letter-spacing:.04em}.panel__image-overlay-text span{font-size:11px;color:#e6f0ffb3}.panel__image--fadein img{animation:panelImgFadeIn .45s ease-out}@keyframes panelImgFadeIn{0%{opacity:0;transform:scale(1.04);filter:blur(6px)}60%{opacity:1;transform:scale(1.01);filter:blur(1px)}to{opacity:1;transform:scale(1);filter:blur(0)}}.prompt-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:9999;display:flex;align-items:center;justify-content:center;padding:3vh 3vw;animation:fadeIn .16s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.prompt-modal__inner{background:var(--panel, #ffffff);color:var(--ink);border:1px solid var(--border);border-radius:8px;width:min(1000px,100%);max-height:94vh;display:flex;flex-direction:column;box-shadow:0 24px 80px #00000059}.prompt-modal__head{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border)}.prompt-modal__head h3{margin:0;font-size:14px;font-weight:600;letter-spacing:.02em}.prompt-modal__close{background:transparent;border:1px solid transparent;color:var(--muted);font-size:16px;width:28px;height:28px;border-radius:4px;cursor:pointer;line-height:1}.prompt-modal__close:hover{color:var(--ink);background:var(--bg-alt, #f2f1ec)}.prompt-modal__diag{padding:10px 18px;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:6px;background:var(--bg-alt, #f2f1ec)}.prompt-modal__diag-item{font-size:12px;line-height:1.45;padding:4px 8px;border-radius:4px}.prompt-modal__diag-item--warn{color:#7a4a00;background:#fff3dd;border-left:2px solid #d89423}.prompt-modal__diag-item--info{color:var(--muted);border-left:2px solid var(--border)}.prompt-modal__body{padding:14px 18px 18px;overflow-y:auto;display:flex;flex-direction:column;gap:14px}.prompt-modal__section h4{margin:0 0 6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.prompt-modal__pre{margin:0;padding:12px 14px;font-family:JetBrains Mono,Consolas,monospace;font-size:11.5px;line-height:1.6;white-space:pre-wrap;word-break:break-word;border-radius:6px;border:1px solid var(--border);max-height:40vh;overflow-y:auto}.prompt-modal__pre--bible{background:var(--bg-alt, #f2f1ec);color:var(--ink)}.prompt-modal__pre--delta{background:#eef4ff;color:var(--ink);border-color:#c5d5ef}.portrait{margin:1.2rem 0 1.6rem;padding:1rem 1.1rem;border:1px solid var(--border);border-radius:8px;background:linear-gradient(180deg,rgba(255,255,255,.015),transparent)}.refs{position:relative;margin:1.2rem 0 0;padding:1rem 1.1rem;border:1px solid var(--border);border-radius:8px;background:linear-gradient(180deg,rgba(255,255,255,.015),transparent);outline:none}.refs.refs--drag{border-color:var(--link);background:color-mix(in srgb,var(--link) 6%,var(--panel))}.refs__head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:.7rem}.refs__head h2{margin:0;font-size:15px;display:flex;align-items:center;gap:6px}.refs__count{font-size:12px;font-weight:400;margin-left:4px}.refs__hint{font-size:12px;flex:1;min-width:200px}.refs__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.6rem}.refs__item{position:relative;margin:0;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--panel);box-shadow:0 1px 3px #0000000f;display:flex;flex-direction:column}.refs__thumb{display:block;aspect-ratio:1 / 1;line-height:0;background:#f2ecdf}.refs__thumb img{width:100%;height:100%;object-fit:cover;display:block}.refs__item figcaption{font-size:11px;color:var(--muted);padding:4px 6px;border-top:1px solid var(--border);line-height:1.35}.refs__remove{position:absolute;top:4px;right:4px;width:22px;height:22px;border-radius:50%;border:none;background:#000000a6;color:#fff;font-size:16px;line-height:1;cursor:pointer;padding:0;display:grid;place-items:center;opacity:0;transition:opacity .12s ease,background .12s ease}.refs__item:hover .refs__remove,.refs__item:focus-within .refs__remove{opacity:1}.refs__remove:hover{background:#000000d9}.refs__remove:disabled{opacity:.5;cursor:not-allowed}.refs__add{aspect-ratio:1 / 1;border:1.5px dashed var(--border);border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer;color:var(--muted);transition:border-color .12s,background .12s,color .12s;text-align:center;padding:.4rem}.refs__add small{font-size:10px}.refs__add:hover{border-color:var(--link);color:var(--link);background:color-mix(in srgb,var(--link) 5%,transparent)}.refs__add--busy{cursor:progress;opacity:.7}.refs__drop-hint{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:color-mix(in srgb,var(--link) 14%,transparent);border-radius:8px;pointer-events:none;font-weight:600;color:var(--link);letter-spacing:.02em}.refs__err{margin-top:.6rem;color:#b93838;font-size:12px}.ref-pages{position:relative;margin:.9rem 0 0;padding:.9rem 1.1rem;border:1px solid var(--border);border-radius:8px;background:linear-gradient(180deg,rgba(255,255,255,.015),transparent)}.ref-pages__head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:.6rem}.ref-pages__head h2{margin:0;font-size:15px;display:flex;align-items:center;gap:6px}.ref-pages__count{font-size:12px;font-weight:400;margin-left:4px}.ref-pages__hint{font-size:12px;flex:1;min-width:200px}.ref-pages__chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.ref-pages__chip{display:inline-flex;align-items:center;gap:6px;padding:3px 6px 3px 8px;border:1px solid var(--border);border-radius:999px;background:var(--panel);font-size:12.5px;line-height:1.3;max-width:100%}.ref-pages__chip-cat{font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;padding:1px 6px;border-radius:999px;background:color-mix(in srgb,var(--link) 8%,transparent)}.ref-pages__chip--character .ref-pages__chip-cat{background:color-mix(in srgb,#c97a4d 18%,transparent);color:#8a4a23}.ref-pages__chip--world .ref-pages__chip-cat{background:color-mix(in srgb,#4d8ec9 18%,transparent);color:#235e8a}.ref-pages__chip--glossary .ref-pages__chip-cat{background:color-mix(in srgb,#7e6abf 18%,transparent);color:#4a3a8a}.ref-pages__chip--event .ref-pages__chip-cat{background:color-mix(in srgb,#c94d8e 18%,transparent);color:#8a235e}.ref-pages__chip-title{color:var(--text);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:18ch}.ref-pages__chip-title:hover{text-decoration:underline}.ref-pages__chip-remove{border:none;background:transparent;color:var(--muted);font-size:16px;line-height:1;cursor:pointer;padding:0 2px;border-radius:999px}.ref-pages__chip-remove:hover{color:#b93838}.ref-pages__chip-remove:disabled{opacity:.5;cursor:not-allowed}.ref-pages__add{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border:1.5px dashed var(--border);border-radius:999px;background:transparent;color:var(--muted);cursor:pointer;font-size:12.5px;transition:border-color .12s,color .12s,background .12s}.ref-pages__add:hover{border-color:var(--link);color:var(--link);background:color-mix(in srgb,var(--link) 5%,transparent)}.ref-pages__add:disabled{opacity:.5;cursor:not-allowed}.ref-pages__picker{margin-top:.7rem;border:1px solid var(--border);border-radius:8px;background:var(--panel);overflow:hidden}.ref-pages__search{width:100%;border:none;border-bottom:1px solid var(--border);background:transparent;padding:8px 12px;font-size:13px;color:var(--text);outline:none}.ref-pages__search:focus{background:color-mix(in srgb,var(--link) 4%,transparent)}.ref-pages__results{max-height:260px;overflow-y:auto}.ref-pages__status{padding:12px;font-size:12.5px;text-align:center}.ref-pages__result{display:flex;align-items:center;gap:8px;width:100%;border:none;background:transparent;padding:7px 12px;font-size:13px;color:var(--text);text-align:left;cursor:pointer;border-bottom:1px solid color-mix(in srgb,var(--border) 50%,transparent)}.ref-pages__result:last-child{border-bottom:none}.ref-pages__result:hover{background:color-mix(in srgb,var(--link) 6%,transparent)}.ref-pages__result:disabled{opacity:.5;cursor:not-allowed}.ref-pages__result-cat{font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;padding:1px 6px;border-radius:999px;flex-shrink:0}.ref-pages__result-cat--character{background:color-mix(in srgb,#c97a4d 18%,transparent);color:#8a4a23}.ref-pages__result-cat--world{background:color-mix(in srgb,#4d8ec9 18%,transparent);color:#235e8a}.ref-pages__result-cat--glossary{background:color-mix(in srgb,#7e6abf 18%,transparent);color:#4a3a8a}.ref-pages__result-cat--event{background:color-mix(in srgb,#c94d8e 18%,transparent);color:#8a235e}.ref-pages__result-title{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ref-pages__result-portrait{flex-shrink:0;color:var(--muted);display:inline-flex;align-items:center}.ref-pages__err{margin-top:.6rem;color:#b93838;font-size:12px}.portrait__head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:.9rem}.portrait__head h2{margin:0;font-size:15px;display:flex;align-items:center;gap:6px}.portrait__hint{font-size:12px}.portrait__body{display:flex;flex-direction:column;gap:.8rem;align-items:stretch}.portrait__frame,.portrait__empty{width:100%;max-width:320px;align-self:center}.portrait__frame--wide,.portrait__empty--wide{max-width:720px}.portrait__frame{position:relative;border:1px solid var(--border);border-radius:6px;overflow:hidden;background:#0b0c10;aspect-ratio:1 / 1}.portrait__frame--wide{aspect-ratio:3 / 2}.portrait__frame img{display:block;width:100%;height:100%;object-fit:cover}.portrait__frame--wide img{object-fit:contain;background:#f4efe6}.portrait__frame--busy img{filter:blur(2px) brightness(.65)}.portrait__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:2rem 1rem;border:2px dashed var(--border);border-radius:6px;background:repeating-linear-gradient(45deg,rgba(255,255,255,.015) 0 8px,transparent 8px 16px);aspect-ratio:1 / 1;text-align:center}.portrait__empty--wide{aspect-ratio:3 / 2}.portrait__empty .icon{color:var(--muted);opacity:.6}.portrait__empty p{margin:0}.portrait__tip{font-size:11px;line-height:1.5}.portrait__tip code{font-size:11px;padding:1px 5px;background:var(--bg-muted, #1c1f27);border:1px solid var(--border);border-radius:3px}.portrait__actions{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px;padding-top:4px;justify-content:center}.portrait__actions .btn{justify-content:center}.portrait__actions>*{flex:0 1 auto}@media (max-width: 480px){.portrait__actions{flex-direction:column;align-items:stretch}.portrait__actions>*{flex:1 1 auto}}.portrait__err{font-size:12px;padding:8px 10px;background:#dc282824;color:#ffb3b3;border:1px solid rgba(220,40,40,.3);border-radius:4px}.portrait-gallery{display:flex;flex-direction:column;gap:6px}.portrait-gallery__toggle{justify-content:center;width:100%}.portrait-gallery__toggle .portrait-gallery__caret{margin-left:auto;font-size:10px}.portrait-gallery__panel{margin-top:4px;padding:10px;border:1px solid var(--border);border-radius:6px;background:#ffffff05;grid-column:1 / -1}.portrait-gallery__status{font-size:12px;display:inline-flex;align-items:center;gap:6px;padding:6px 2px}.portrait-gallery__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}.portrait-gallery__item{display:flex;flex-direction:column;gap:4px;margin:0;min-width:0}.portrait-gallery__thumb{position:relative;display:block;width:100%;aspect-ratio:1 / 1;padding:0;border:2px solid var(--border);border-radius:5px;overflow:hidden;background:#0000004d;cursor:pointer;transition:border-color .12s,transform .12s}.portrait-gallery__thumb:hover:not(:disabled){border-color:var(--accent, #7ab7ff);transform:scale(1.02)}.portrait-gallery__thumb:disabled{cursor:default}.portrait-gallery__thumb img{width:100%;height:100%;object-fit:cover;display:block}.portrait-gallery__item--active .portrait-gallery__thumb{border-color:var(--accent, #7ab7ff);box-shadow:0 0 0 2px #7ab7ff40;cursor:default}.portrait-gallery__badge{position:absolute;top:4px;left:4px;font-size:10px;font-weight:700;letter-spacing:.04em;padding:2px 6px;border-radius:10px;background:var(--accent, #7ab7ff);color:#0b1020}.portrait-gallery__item figcaption{display:flex;align-items:center;gap:4px;font-size:10px;line-height:1.2}.portrait-gallery__item figcaption .muted{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portrait-gallery__remove{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:1px solid var(--border);border-radius:4px;background:transparent;color:#ffb3b3;cursor:pointer;opacity:.6;transition:opacity .12s,background .12s}.portrait-gallery__remove:hover:not(:disabled){opacity:1;background:#dc282826}.portrait-gallery__remove:disabled{cursor:default;opacity:.3}.portrait-gallery__item--busy .portrait-gallery__thumb{opacity:.5}.portrait-gallery__err{margin-top:8px;font-size:12px;padding:6px 8px;background:#dc282824;color:#ffb3b3;border:1px solid rgba(220,40,40,.3);border-radius:4px}.panel__image-ref{position:absolute;top:8px;left:8px;display:inline-flex;align-items:center;gap:4px;font-size:10px;padding:3px 7px;border-radius:10px;background:#50b48c38;border:1px solid rgba(120,220,170,.5);color:#c6ffdd;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);letter-spacing:.04em;font-weight:600}.panel__image-ref .icon{flex:0 0 auto}.panel__image--stale>img{filter:saturate(.55) brightness(.75)}.panel__image--stale:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:repeating-linear-gradient(135deg,#dc8c280f 0,#dc8c280f 6px,#dc8c2824 6px,#dc8c2824 12px);border:2px solid rgba(220,140,40,.65);border-radius:inherit}.panel__image-stale{position:absolute;left:8px;right:8px;bottom:8px;display:flex;align-items:center;gap:10px;padding:7px 10px;background:#281808e0;border:1px solid rgba(255,180,80,.85);border-radius:6px;color:#ffe5b8;font-size:12px;line-height:1.25;box-shadow:0 2px 10px #0006;z-index:3;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.panel__image-stale strong{color:#ffcb6b;font-weight:700;white-space:nowrap}.panel__image-stale span{flex:1 1 auto;color:#f5e6ce}.panel__image-stale-btn{flex:0 0 auto;border:1px solid rgba(255,180,80,.9);background:#ffb45026;color:#fff2d0;padding:4px 10px;border-radius:4px;font-size:12px;font-weight:600;cursor:pointer}.panel__image-stale-btn:hover:not(:disabled){background:#ffb45059}.panel__image-stale-btn:disabled{opacity:.5;cursor:not-allowed}.panel__image-unverified{position:absolute;top:8px;left:8px;padding:2px 7px;border-radius:10px;background:#0000008c;color:#d6d0c2;font-size:10px;letter-spacing:.04em;cursor:help;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}@media print{.panel__image-stale,.panel__image-unverified{display:none!important}.panel__image--stale>img{filter:none!important}.panel__image--stale:after{display:none!important}}.entry__panel-gen{display:inline-flex;align-items:center;gap:8px;margin-left:auto}.entry__panel-gen-meta{font-size:12px;font-family:var(--mono)}.entry__panel-gen-err{font-size:12px;color:#e77}.tool-use__stream-silence{display:flex;align-items:center;gap:8px;padding:8px 12px;margin:6px 0 0;font-size:12px;color:var(--muted, #888);background:#ffb43c0f;border:1px solid rgba(255,180,60,.22);border-radius:4px;line-height:1.5}.tool-use__stream-silence-dot{color:#ffb43c;animation:pulse 1.4s ease-in-out infinite;font-size:10px}@keyframes pulse{0%,to{opacity:.3}50%{opacity:1}}.sb-thumb--has-image{padding:0;overflow:hidden;background:#0b0c10}.sb-thumb--has-image img{display:block;width:100%;height:100%;object-fit:cover}.auth-boot{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:var(--bg)}.auth-boot__spinner{width:36px;height:36px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:auth-spin .9s linear infinite}@keyframes auth-spin{to{transform:rotate(360deg)}}.auth-boot__error{max-width:420px;padding:24px 28px;border:1px solid var(--border);background:var(--panel);border-radius:var(--radius);text-align:center}.auth-boot__error h1{margin:0 0 8px;font-size:1.4rem}.auth-boot__error p{margin:6px 0}.auth-boot__hint{color:var(--muted);font-size:.9em}.auth-gate{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,var(--bg) 0%,var(--bg-alt) 100%);padding:24px}.landing{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-overflow-scrolling:touch}.landing>*,.landing__stage,.landing__topbar,.landing__topbar-inner,.landing__pitch,.landing__carousel,.landing__viewport,.landing__dots,.landing__footer{max-width:100%;min-width:0}.landing__pitch>*{max-width:100%}.landing img,.landing svg{max-width:100%}.landing__topbar{flex-shrink:0;background:var(--bg);border-bottom:1px solid var(--border)}.landing__topbar-inner{max-width:1080px;margin:0 auto;padding:12px 28px;display:flex;align-items:center;justify-content:space-between;gap:12px}.landing__brand{display:inline-flex;align-items:center;text-decoration:none;color:inherit}.landing__brand-img{display:block;height:40px;width:auto;max-width:180px;-webkit-user-select:none;user-select:none;mix-blend-mode:multiply}.landing__cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--border);background:#fff;color:var(--ink);border-radius:var(--radius);font-family:var(--sans);font-weight:500;cursor:pointer;transition:background .15s,border-color .15s,transform .05s;text-decoration:none}.landing__cta:hover:not(:disabled){background:var(--bg-alt);border-color:var(--ink)}.landing__cta:active:not(:disabled){transform:translateY(1px)}.landing__cta:disabled{opacity:.6;cursor:progress}.landing__cta--small{padding:7px 14px;font-size:.86rem}.landing__cta--primary{width:100%;max-width:360px;padding:14px 20px;font-size:1rem;font-weight:600;background:var(--ink);color:#fff;border-color:var(--ink);box-shadow:0 4px 16px #00000014}.landing__cta--primary:hover:not(:disabled){background:#000;border-color:#000;color:#fff}.landing__error{margin:14px auto 0;padding:8px 12px;background:#fef0f0;border:1px solid #f5c2c2;color:var(--danger);border-radius:var(--radius);font-size:.86rem;max-width:480px;width:100%;text-align:left}.landing__stage{display:flex;flex-direction:column;gap:28px;max-width:1280px;margin:0 auto;padding:32px 28px 24px;min-height:calc(100% - 56px)}.landing__pitch{text-align:center;display:block}.landing__eyebrow{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-weight:600;margin:0 0 14px;word-break:keep-all}.landing__headline{font-family:var(--serif);font-size:clamp(1.8rem,4.2vw,2.8rem);line-height:1.18;letter-spacing:-.02em;margin:0 auto 22px;font-weight:600;max-width:720px;word-break:keep-all}.landing__headline-em{display:inline-block;background:linear-gradient(110deg,var(--accent),#d89248);-webkit-background-clip:text;background-clip:text;color:transparent}.landing__pitch-cta{display:flex;flex-direction:column;align-items:center;gap:10px;width:100%;max-width:420px;margin:0 auto}.landing__pitch-hint{font-size:.78rem;color:var(--muted);text-align:center;word-break:keep-all;max-width:100%}.landing__carousel{position:relative;display:flex;align-items:stretch;gap:12px;flex:1;min-height:0;outline:none}.landing__carousel:focus-visible{outline:2px solid var(--accent);outline-offset:6px;border-radius:18px}.landing__viewport{flex:1;min-width:0;overflow:hidden;border-radius:16px;touch-action:pan-y;cursor:grab}.landing__viewport:active{cursor:grabbing}.landing__track{display:flex;height:100%;will-change:transform}.landing__slide{flex:0 0 100%;min-width:0;display:flex;-webkit-user-select:none;user-select:none}.landing__nav{flex-shrink:0;align-self:center;width:44px;height:44px;border-radius:50%;border:1px solid var(--border);background:var(--panel);color:var(--ink);font-size:1.6rem;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,border-color .15s,transform .05s;box-shadow:0 2px 8px #0000000a}.landing__nav:hover{background:var(--bg-alt);border-color:var(--ink)}.landing__nav:active{transform:translateY(1px)}.landing__nav--prev{padding-right:3px}.landing__nav--next{padding-left:3px}@media (max-width: 720px){.landing__nav{display:none}.landing__carousel{gap:0}}.landing__dots{display:flex;justify-content:center;gap:8px;padding:4px 0}.landing__dot{width:8px;height:8px;border-radius:50%;border:none;padding:0;background:var(--border);cursor:pointer;transition:width .25s,background .2s,border-radius .25s}.landing__dot:hover{background:var(--muted)}.landing__dot.is-active{width:22px;border-radius:4px;background:var(--accent)}.fcard{position:relative;display:flex;flex-direction:column;width:100%;text-align:left;background:var(--panel);border:1px solid var(--border);border-radius:16px;overflow:hidden;font:inherit;color:inherit;padding:0;box-shadow:0 18px 38px -18px #00000029,0 6px 16px -8px #00000014}.fcard.is-active{border-color:var(--accent)}.fcard.is-active:after{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:16px;pointer-events:none;background:linear-gradient(135deg,rgba(182,119,44,.08),transparent 55%)}.fcard__demo{position:relative;flex:1;min-height:0;background:var(--bg-alt);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:center;overflow:hidden;padding:24px}.fcard--video .fcard__demo{padding:0;background:#000}.fcard__video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;display:block;background:#000}.fcard--video .fcard__demo:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;box-shadow:inset 0 0 0 1px #ffffff0a}.fcard__meta{display:flex;align-items:flex-start;gap:14px;padding:18px 22px 22px;flex-shrink:0}.fcard__icon{flex-shrink:0;width:44px;height:44px;border-radius:10px;background:#b6772c1f;border:1px solid rgba(182,119,44,.45);display:flex;align-items:center;justify-content:center;color:var(--accent)}.fcard__text{min-width:0;flex:1}.fcard__title{font-family:var(--serif);font-size:1.2rem;line-height:1.3;font-weight:600;letter-spacing:-.01em;color:var(--ink)}.fcard__sub{font-size:.9rem;line-height:1.5;color:var(--muted);margin-top:4px}.fdemo{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.fdemo--ai{padding:16px 14px;align-items:center}.fdemo-paper{position:relative;width:88%;max-width:280px;background:linear-gradient(180deg,#fbf6ec,#f4ecda);border-radius:10px;padding:14px 16px 16px;box-shadow:0 18px 36px -22px #00000052,0 4px 10px -4px #00000014,inset 0 1px #fff9;border:1px solid rgba(0,0,0,.04);display:flex;flex-direction:column;gap:8px;transform:rotate(-1.4deg)}.fdemo-paper__glow{position:absolute;top:-16px;right:-16px;bottom:-16px;left:-16px;background:radial-gradient(ellipse at 50% 30%,rgba(216,146,72,.35),transparent 60%);filter:blur(14px);opacity:.6;z-index:-1;animation:fdemo-paper-breathe 4s ease-in-out infinite}@keyframes fdemo-paper-breathe{0%,to{opacity:.45;transform:scale(.95)}50%{opacity:.7;transform:scale(1.05)}}.fdemo-paper__line{display:flex;gap:4px;align-items:center;position:relative;clip-path:inset(0 100% 0 0);animation:fdemo-paper-reveal 6s cubic-bezier(.22,.7,.2,1) infinite both}.fdemo-paper__line--1{animation-delay:.2s}.fdemo-paper__line--2{animation-delay:1.7s}.fdemo-paper__line--3{animation-delay:3.2s}@keyframes fdemo-paper-reveal{0%{clip-path:inset(0 100% 0 0)}16%{clip-path:inset(0 0 0 0)}90%{clip-path:inset(0 0 0 0);opacity:1}to{clip-path:inset(0 0 0 0);opacity:1}}.fdemo-paper__line i{display:block;height:5px;border-radius:3px;background:#3a26126b}.fdemo-paper__token{position:relative;background:linear-gradient(90deg,#d89248,#b6772c)!important;box-shadow:0 0 #d8924800;animation:fdemo-paper-token 6s ease-in-out infinite both;animation-delay:2.4s}@keyframes fdemo-paper-token{0%,30%{box-shadow:0 0 #d8924800;transform:translateY(0)}35%{box-shadow:0 0 0 6px #d8924852;transform:translateY(-1px)}55%{box-shadow:0 0 0 12px #d8924800;transform:translateY(0)}to{box-shadow:0 0 #d8924800;transform:translateY(0)}}.fdemo-paper__caret{display:inline-block;width:2px;height:12px;background:var(--accent);margin-left:3px;border-radius:1px;animation:fdemo-caret .85s steps(2,end) infinite}@keyframes fdemo-caret{50%{opacity:0}}.fdemo-callout{position:absolute;top:22%;right:6%;background:var(--ink);color:#fff;border-radius:8px;padding:5px 9px 6px;font-family:var(--sans);display:flex;flex-direction:column;gap:2px;box-shadow:0 12px 24px -10px #00000073;opacity:0;transform:translateY(8px) scale(.92);animation:fdemo-callout-pop 6s cubic-bezier(.22,1.2,.4,1) infinite both;animation-delay:2.6s;pointer-events:none;z-index:2}@keyframes fdemo-callout-pop{0%,35%{opacity:0;transform:translateY(8px) scale(.92)}42%{opacity:1;transform:translateY(0) scale(1)}85%{opacity:1;transform:translateY(0) scale(1)}92%,to{opacity:0;transform:translateY(-4px) scale(.96)}}.fdemo-callout__cat{font-size:.5rem;letter-spacing:.14em;color:var(--accent);font-weight:700}.fdemo-callout__name{font-size:.74rem;font-weight:600;font-family:var(--serif)}.fdemo-callout__line{position:absolute;left:-22px;top:50%;width:22px;height:1px;background:linear-gradient(90deg,transparent,rgba(216,146,72,.7))}.fdemo--vault-cards{perspective:800px;align-items:center;justify-content:center}.fdemo-vc{position:relative;width:70%;max-width:240px;aspect-ratio:5 / 3.6;transform-style:preserve-3d}.fdemo-vc__card{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:14px 16px;display:flex;align-items:center;gap:12px;box-shadow:0 14px 30px -16px #00000047,0 4px 12px -6px #0000001a;backface-visibility:hidden;transform-origin:40% 100%}.fdemo-vc__card[data-cat=character]{border-left:3px solid #c24b86}.fdemo-vc__card[data-cat=world]{border-left:3px solid #4a7bd4}.fdemo-vc__card[data-cat=glossary]{border-left:3px solid #3f9b62}.fdemo-vc__card--1{z-index:3;animation:fdemo-vc-fan-1 5.5s cubic-bezier(.4,1.4,.4,1) infinite both}.fdemo-vc__card--2{z-index:2;animation:fdemo-vc-fan-2 5.5s cubic-bezier(.4,1.4,.4,1) infinite both}.fdemo-vc__card--3{z-index:1;animation:fdemo-vc-fan-3 5.5s cubic-bezier(.4,1.4,.4,1) infinite both}@keyframes fdemo-vc-fan-1{0%{transform:rotate(-14deg) translate(-22px,4px)}18%{transform:rotate(-3deg) translate(-2px,-8px)}35%{transform:rotate(-1deg) translateY(-4px)}60%{transform:rotate(-1deg) translateY(-4px)}75%{transform:rotate(-3deg) translate(-1px,-7px) scale(1.04)}to{transform:rotate(-14deg) translate(-22px,4px)}}@keyframes fdemo-vc-fan-2{0%{transform:rotate(0) translate(-2px,8px)}20%{transform:rotate(2deg) translate(4px,4px)}35%{transform:rotate(1.5deg) translate(3px)}60%{transform:rotate(1.5deg) translate(3px)}to{transform:rotate(0) translate(-2px,8px)}}@keyframes fdemo-vc-fan-3{0%{transform:rotate(12deg) translate(20px,12px)}22%{transform:rotate(5deg) translate(8px,6px)}35%{transform:rotate(4deg) translate(7px,4px)}60%{transform:rotate(4deg) translate(7px,4px)}to{transform:rotate(12deg) translate(20px,12px)}}.fdemo-vc__avatar{flex-shrink:0;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;position:relative;box-shadow:inset 0 0 0 1px #0000000f}.fdemo-vc__avatar--portrait{background:radial-gradient(circle at 35% 30%,#f7d29a,transparent 50%),linear-gradient(135deg,#d89248,#8a4f1c)}.fdemo-vc__avatar--portrait:after{content:"";position:absolute;top:7px;right:7px;bottom:7px;left:7px;border-radius:50%;background:radial-gradient(circle at 50% 35%,rgba(255,255,255,.4),transparent 50%)}.fdemo-vc__avatar--pin{background:linear-gradient(135deg,#5a86c8,#2c4d8a)}.fdemo-vc__avatar--pin:after{content:"";width:12px;height:14px;border-radius:50% 50% 50% 0;background:#fff;transform:rotate(-45deg);margin-bottom:2px}.fdemo-vc__avatar--gem{background:linear-gradient(135deg,#5fae7c,#2c6e48)}.fdemo-vc__avatar--gem:after{content:"";width:14px;height:14px;background:#fff;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}.fdemo-vc__meta{display:flex;flex-direction:column;gap:2px;min-width:0}.fdemo-vc__cat{font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:700;font-family:var(--mono)}.fdemo-vc__name{font-family:var(--serif);font-size:.92rem;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fdemo--timeline{align-items:center;padding:12px}.fdemo-tl{position:relative;width:92%;max-width:320px;height:100%;display:flex;align-items:center;justify-content:center}.fdemo-tl__axis{position:absolute;left:4%;right:4%;top:50%;height:2px;background:linear-gradient(90deg,#3c322626,#d8924873,#3c322626);border-radius:1px;transform:translateY(-50%)}.fdemo-tl__tick{position:absolute;top:-5px;bottom:-5px;width:1.5px;background:#3c322659;border-radius:1px}.fdemo-tl__years{position:absolute;left:4%;right:4%;top:calc(50% + 14px);height:16px;font-family:var(--mono);font-size:.6rem;color:var(--muted)}.fdemo-tl__years span{position:absolute;transform:translate(-50%)}.fdemo-tl__events{position:absolute;left:4%;right:4%;top:50%;height:0}.fdemo-tl__event{position:absolute;top:-4px;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:4px}.fdemo-tl__dot{width:12px;height:12px;border-radius:50%;background:var(--panel);border:2px solid var(--ink);box-shadow:0 0 #d8924800;transition:all .4s cubic-bezier(.3,1.4,.4,1);margin-top:-6px}.fdemo-tl__label{position:absolute;bottom:18px;white-space:nowrap;font-family:var(--serif);font-size:.76rem;font-weight:600;color:var(--ink);background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:3px 8px;box-shadow:0 4px 10px -4px #0000002e;opacity:0;transform:translateY(4px) scale(.94);transition:all .3s cubic-bezier(.3,1.2,.4,1)}.fdemo-tl__event--1{animation:fdemo-tl-event-1 6s ease-in-out infinite}.fdemo-tl__event--2{animation:fdemo-tl-event-2 6s ease-in-out infinite}.fdemo-tl__event--3{animation:fdemo-tl-event-3 6s ease-in-out infinite}@keyframes fdemo-tl-event-1{0%,8%{--on: 0}16%{--on: 1}to{--on: 1}}@keyframes fdemo-tl-event-2{0%,38%{--on: 0}46%{--on: 1}to{--on: 1}}@keyframes fdemo-tl-event-3{0%,70%{--on: 0}78%{--on: 1}to{--on: 1}}.fdemo-tl__event{--on: 0}.fdemo-tl__event[style] .fdemo-tl__dot{background:rgba(216,146,72,calc(var(--on) * 1));border-color:color-mix(in srgb,var(--accent) calc(var(--on) * 100%),var(--ink));box-shadow:0 0 0 calc(var(--on) * 6px) rgba(216,146,72,calc(var(--on) * .25))}.fdemo-tl__event[style] .fdemo-tl__label{opacity:var(--on);transform:translateY(calc((1 - var(--on)) * 4px)) scale(calc(.94 + var(--on) * .06))}.fdemo-tl__playhead{position:absolute;left:4%;top:calc(50% - 14px);width:2px;height:28px;background:var(--accent);border-radius:1px;box-shadow:0 0 12px 2px #d892488c;animation:fdemo-tl-playhead 6s ease-in-out infinite}@keyframes fdemo-tl-playhead{0%{left:4%;opacity:0}6%{left:4%;opacity:1}92%{left:96%;opacity:1}to{left:96%;opacity:0}}.fdemo--graph svg{width:100%;height:100%;max-height:100%}.fdemo-gl{stroke:#3c322647;stroke-width:1.4;fill:none;stroke-dasharray:120;stroke-dashoffset:120;animation:fdemo-graph-edge 5s ease-out infinite both}.fdemo-gl--1{animation-delay:.1s}.fdemo-gl--2{animation-delay:.3s}.fdemo-gl--3{animation-delay:.5s}.fdemo-gl--4{animation-delay:.7s}.fdemo-gl--5{animation-delay:.9s}@keyframes fdemo-graph-edge{0%{stroke-dashoffset:120;opacity:.2}20%{stroke-dashoffset:0;opacity:1}to{stroke-dashoffset:0;opacity:1}}.fdemo-gn{filter:drop-shadow(0 1.5px 2px rgba(0,0,0,.18));stroke:var(--panel);stroke-width:1.2}.fdemo-gn--character{fill:#c24b86}.fdemo-gn--world{fill:#4a7bd4}.fdemo-gn--glossary{fill:#3f9b62}.fdemo-gn--event{fill:#8f6bd1}.fdemo-gn--focal{fill:var(--accent);stroke:#fff;stroke-width:2;animation:fdemo-graph-breath 3s ease-in-out infinite}@keyframes fdemo-graph-breath{0%,to{r:8}50%{r:10}}.fdemo-gn-ring{fill:none;stroke:var(--accent);stroke-width:1.5;opacity:0;transform-origin:60px 40px;animation:fdemo-graph-ring 5s ease-out infinite}@keyframes fdemo-graph-ring{0%{opacity:0;transform:scale(1)}20%{opacity:.6}60%{opacity:0;transform:scale(2.6)}to{opacity:0;transform:scale(2.6)}}.fdemo-graph__legend{position:absolute;bottom:8px;left:50%;transform:translate(-50%);display:flex;gap:6px}.fdemo-graph__chip{font-size:.58rem;font-family:var(--mono);font-weight:700;padding:2px 7px;border-radius:999px;letter-spacing:.04em}.fdemo-graph__chip--character{background:#c24b861f;color:#8c2854;border:1px solid rgba(194,75,134,.4)}.fdemo-graph__chip--world{background:#4a7bd41f;color:#2c4f8e;border:1px solid rgba(74,123,212,.4)}.fdemo-graph__chip--event{background:#8f6bd11f;color:#5a3eb0;border:1px solid rgba(143,107,209,.4)}.fdemo--map svg{width:100%;height:100%;max-height:100%}.fdemo-map__land{fill:url(#fdemo-map-land);stroke:#3c322666;stroke-width:.8;filter:drop-shadow(0 4px 10px rgba(0,0,0,.12));animation:fdemo-map-land-in 6s cubic-bezier(.3,1.2,.4,1) infinite}@keyframes fdemo-map-land-in{0%{opacity:0;transform:scale(.9);transform-origin:center}10%{opacity:1;transform:scale(1)}to{opacity:1;transform:scale(1)}}.fdemo-map__topo{fill:none;stroke:#3c32262e;stroke-width:.4;stroke-dasharray:1 2}.fdemo-map__route{fill:none;stroke:var(--accent);stroke-width:1.4;stroke-linecap:round;stroke-dasharray:80;stroke-dashoffset:80;animation:fdemo-map-route 6s ease-out infinite;animation-delay:3.6s;filter:drop-shadow(0 0 4px rgba(216,146,72,.6))}@keyframes fdemo-map-route{0%,12%{stroke-dashoffset:80;opacity:0}20%{opacity:1}60%{stroke-dashoffset:0;opacity:1}88%{opacity:1}96%,to{opacity:0;stroke-dashoffset:0}}.fdemo-map__pin{opacity:1}.fdemo-map__pin-dot{fill:var(--accent);stroke:#fff;stroke-width:1.2;opacity:0;animation:fdemo-map-pin-drop 6s cubic-bezier(.3,1.6,.4,1) infinite}.fdemo-map__pin--1 .fdemo-map__pin-dot{animation-delay:.6s}.fdemo-map__pin--2 .fdemo-map__pin-dot{animation-delay:1.6s}.fdemo-map__pin--3 .fdemo-map__pin-dot{animation-delay:2.6s}@keyframes fdemo-map-pin-drop{0%{opacity:0;r:0}6%{opacity:1;r:4.2}12%{opacity:1;r:2.6}18%{opacity:1;r:3}to{opacity:1;r:3}}.fdemo-map__pin-pulse{fill:none;stroke:var(--accent);stroke-width:1.4;opacity:0;animation:fdemo-map-pin-pulse 2.4s ease-out infinite}.fdemo-map__pin--1 .fdemo-map__pin-pulse{animation-delay:.8s}.fdemo-map__pin--2 .fdemo-map__pin-pulse{animation-delay:1.8s}.fdemo-map__pin--3 .fdemo-map__pin-pulse{animation-delay:2.8s}@keyframes fdemo-map-pin-pulse{0%{opacity:0;r:3}20%{opacity:.7}to{opacity:0;r:12}}.fdemo-map__labels{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.fdemo-map__label{position:absolute;font-family:var(--serif);font-size:.66rem;font-weight:600;color:var(--ink);background:var(--panel);border:1px solid var(--border);border-radius:4px;padding:1px 6px;white-space:nowrap;box-shadow:0 2px 6px #0000001a;opacity:0;transform:translateY(2px)}.fdemo-map__label--1{top:60%;left:28%;animation:fdemo-map-label 6s ease-out infinite;animation-delay:.9s}.fdemo-map__label--2{top:32%;left:46%;animation:fdemo-map-label 6s ease-out infinite;animation-delay:1.9s}.fdemo-map__label--3{top:32%;left:70%;animation:fdemo-map-label 6s ease-out infinite;animation-delay:2.9s}@keyframes fdemo-map-label{0%{opacity:0;transform:translateY(4px)}6%{opacity:1;transform:translateY(0)}92%{opacity:1}to{opacity:0;transform:translateY(-2px)}}.fdemo--board{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;background:radial-gradient(circle at 25% 30%,rgba(216,146,72,.16),transparent 55%),radial-gradient(circle at 80% 75%,rgba(74,50,104,.14),transparent 55%),linear-gradient(135deg,#f3e7d4,#ece0c8 60%,#e3d3b6)}.fdemo-board__phone{position:relative;width:min(58%,200px);aspect-ratio:9 / 19;border-radius:22px;background:#1a1612;padding:7px;box-shadow:0 18px 38px -18px #00000073,0 6px 14px -6px #00000038;border:1px solid rgba(0,0,0,.55);display:flex;flex-direction:column;overflow:hidden}.fdemo-board__chrome{display:flex;align-items:center;gap:6px;padding:3px 6px 6px;flex-shrink:0}.fdemo-board__chip{font-size:.62rem;color:#ffffffe0;background:#ffffff14;border:1px solid rgba(255,255,255,.14);padding:3px 8px;border-radius:999px;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:0 1 auto;min-width:0}.fdemo-board__progress{position:relative;flex:1;height:3px;border-radius:999px;background:#ffffff14;overflow:hidden;max-width:50px}.fdemo-board__progress-bar{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,var(--accent),#ffd28a);transform-origin:left center;transform:scaleX(0);animation:fdemo-board-progress 22s linear infinite}@keyframes fdemo-board-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.fdemo-board__viewport{position:relative;flex:1;border-radius:12px;overflow:hidden;background:#0e0c0a;min-height:0}.fdemo-board__strip{display:flex;flex-direction:column;width:100%;animation:fdemo-board-strip 22s linear infinite;will-change:transform}.fdemo-board__pic{display:block;width:100%;height:auto;-webkit-user-select:none;user-select:none;pointer-events:none;background:#18130d;border-bottom:1px solid rgba(0,0,0,.85)}@keyframes fdemo-board-strip{0%{transform:translateY(0)}to{transform:translateY(-50%)}}.fdemo-board__fade{position:absolute;left:0;right:0;height:22px;pointer-events:none}.fdemo-board__fade--top{top:0;background:linear-gradient(180deg,#0e0c0a,transparent)}.fdemo-board__fade--bottom{bottom:0;background:linear-gradient(0deg,#0e0c0a,transparent)}.fdemo-board__pulse{position:absolute;right:10px;bottom:14px;display:flex;align-items:center;gap:7px;padding:6px 10px 6px 8px;border-radius:999px;background:#ffffffeb;border:1px solid var(--border);box-shadow:0 6px 14px -8px #0000002e;font-size:.7rem;color:var(--ink);max-width:calc(100% - 20px)}.fdemo-board__pulse-dot{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 #d8924899;animation:fdemo-board-pulse 1.4s ease-out infinite;flex-shrink:0}.fdemo-board__pulse-text{font-weight:500;letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@keyframes fdemo-board-pulse{0%{box-shadow:0 0 #d892488c;transform:scale(1)}60%{box-shadow:0 0 0 8px #d8924800;transform:scale(1.05)}to{box-shadow:0 0 #d8924800;transform:scale(1)}}@media (max-width: 380px){.fdemo-board__pulse{display:none}.fdemo-board__phone{width:64%}}@media (prefers-reduced-motion: reduce){.fdemo *,.fdemo *:before,.fdemo *:after{animation:none!important;transition:none!important}.fdemo-paper__line{clip-path:none}.fdemo-gl{stroke-dashoffset:0}.fdemo-board__strip{transform:translateY(0)!important}.fdemo-board__progress-bar{transform:scaleX(.4)!important}.fdemo-board__pulse-dot{box-shadow:none!important;transform:none!important}.fdemo-callout{opacity:1;transform:none}.fdemo-map__pin{opacity:1}.fdemo-map__route{stroke-dashoffset:0;opacity:1}.fdemo-map__label{opacity:1;transform:none}.fdemo-tl__playhead{display:none}.fdemo-tl__event{--on: 1}}.landing__footer{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding:14px 8px 4px;font-size:.78rem;color:var(--muted);margin-top:auto}.landing__footer a{color:var(--muted);text-decoration:none}.landing__footer a:hover{color:var(--ink);text-decoration:underline}.landing__footer-sep{color:var(--border)}.landing__footer-brand{font-weight:500}@media (max-width: 720px){.landing__topbar-inner{padding:10px max(14px,env(safe-area-inset-right)) 10px max(14px,env(safe-area-inset-left))}.landing__stage{padding:14px max(14px,env(safe-area-inset-right)) 14px max(14px,env(safe-area-inset-left));gap:18px;min-height:auto}.landing__pitch{gap:0}.landing__eyebrow{font-size:.66rem;letter-spacing:.16em;margin-bottom:8px}.landing__headline{margin:0 0 14px;font-size:clamp(1.45rem,6.2vw,1.85rem);line-height:1.22}.landing__pitch-cta{gap:8px;max-width:100%}.landing__pitch-hint{font-size:.74rem;padding:0 6px}.landing__cta--primary{padding:13px 18px;font-size:.95rem;max-width:100%}.landing__carousel{flex:0 0 auto;min-height:0}.landing__viewport{aspect-ratio:4 / 5;max-height:520px;max-height:65dvh;min-height:280px}.fcard{border-radius:14px;box-shadow:0 14px 28px -16px #0000002e,0 4px 12px -6px #00000014}.fcard__demo{flex:0 0 68%;padding:14px}.fcard__meta{flex:0 0 auto;padding:14px 16px;gap:12px;align-items:center}.fcard__icon{width:38px;height:38px;border-radius:9px}.fcard__icon svg{width:18px;height:18px}.fcard__title{font-size:1.02rem;line-height:1.25}.fcard__sub{font-size:.82rem;line-height:1.4;margin-top:3px}.fdemo--vault svg{max-height:100%}.fdemo--export{width:clamp(80px,32%,120px);height:clamp(100px,40%,150px)}.fdemo--ai{gap:6px;padding:6px 10px}.fdemo-bubble{max-width:78%}.fdemo--board{gap:5px;padding:6px}.landing__dots{gap:10px;padding:6px 0 2px}.landing__dot{position:relative}.landing__dot:before{content:"";position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px}.landing__footer{padding:10px 8px max(8px,env(safe-area-inset-bottom));font-size:.72rem;gap:6px}}@media (max-width: 720px) and (max-height: 640px){.landing__stage{padding-top:10px;gap:10px}.landing__eyebrow{display:none}.landing__headline{font-size:clamp(1.25rem,5.4vw,1.55rem);margin-bottom:8px}.landing__pitch-hint{display:none}.landing__viewport{aspect-ratio:auto;min-height:0;height:60dvh;max-height:320px}.fcard__demo{flex:1 1 auto}.fcard__meta{padding:10px 14px}.fcard__title{font-size:.95rem}.fcard__sub{font-size:.78rem}}@media (max-width: 460px){.landing__topbar-inner{padding:9px max(12px,env(safe-area-inset-right)) 9px max(12px,env(safe-area-inset-left))}.landing__brand-img{height:32px}.landing__cta--small{padding:6px 11px;font-size:.82rem}.landing__stage{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right));gap:14px}.landing__headline{font-size:clamp(1.35rem,6.4vw,1.65rem)}.landing__viewport{aspect-ratio:4 / 5.2;min-height:260px}.fcard__demo{padding:12px}.fcard__meta{padding:12px 14px;gap:10px}.fcard__icon{width:34px;height:34px;border-radius:8px}.fcard__title{font-size:.96rem}.fcard__sub{font-size:.78rem}}.auth-gate__card{width:100%;max-width:380px;padding:36px 32px 28px;background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 32px #0000000f;text-align:center}.auth-gate__title{margin:0 0 6px;font-size:1.8rem;letter-spacing:-.02em}.auth-gate__subtitle{margin:0 0 28px;color:var(--muted);font-size:.95rem;font-family:var(--sans)}.auth-gate__btn{display:inline-flex;align-items:center;justify-content:center;width:100%;padding:12px 16px;border:1px solid var(--border);background:#fff;color:var(--ink);border-radius:var(--radius);font-family:var(--sans);font-weight:500;cursor:pointer;transition:background .15s,border-color .15s}.auth-gate__btn:hover:not(:disabled){background:var(--bg-alt);border-color:var(--ink)}.auth-gate__btn:disabled{opacity:.6;cursor:progress}.auth-gate__error{margin-top:14px;padding:8px 10px;background:#fef0f0;border:1px solid #f5c2c2;color:var(--danger);border-radius:var(--radius);font-size:.88rem;text-align:left}.auth-gate__hint{margin-top:18px;font-size:.82rem;color:var(--muted);font-family:var(--sans)}.auth-gate__card--inapp{max-width:460px;text-align:left}.auth-gate__inapp-icon{font-size:36px;text-align:center;margin:4px 0 6px}.auth-gate__inapp-headline{font-size:1.05rem;font-weight:600;text-align:center;margin:0 0 10px;font-family:var(--sans);line-height:1.45}.auth-gate__inapp-body{font-size:.92rem;color:var(--ink-soft, #6c6757);line-height:1.6;margin:0 0 16px;font-family:var(--sans)}.auth-gate__inapp-body code{font-size:.85em;padding:1px 5px;background:#0000000f;border-radius:3px}.auth-gate__card--inapp .auth-gate__btn{display:block;text-align:center;text-decoration:none}.auth-gate__inapp-steps{margin:14px 0 0;padding-left:1.4rem;font-size:.86rem;line-height:1.65;color:var(--ink-soft, #6c6757);font-family:var(--sans)}.auth-gate__inapp-steps li{margin-bottom:4px}.auth-gate__inapp-url{margin-top:16px;padding:8px 10px;border:1px dashed var(--border, #d9d6cc);border-radius:4px;background:var(--bg-alt, #f5f1e6);font-size:.78rem;display:flex;flex-direction:column;gap:4px;word-break:break-all}.auth-gate__inapp-url code{font-size:.85em;color:var(--ink)}.sidebar__signout{background:transparent;border:none;cursor:pointer;text-align:left;font:inherit}.sidebar__signout:hover{background:var(--bg-alt)}.sidebar__signout-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-menu{position:relative;display:inline-flex}.user-menu__trigger{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;padding:.4rem .5rem;border-radius:var(--radius);background:transparent;border:none;cursor:pointer;font:inherit;color:var(--muted);font-family:var(--sans);font-size:.72rem;white-space:nowrap;transition:background-color .12s,color .12s}.user-menu__trigger:hover,.user-menu__trigger.is-open{background:#0000000d;color:var(--ink)}.user-menu__avatar{width:22px;height:22px;border-radius:50%;background:var(--ink);color:#fff;font-size:.72rem;font-weight:600;display:inline-flex;align-items:center;justify-content:center;letter-spacing:0;-webkit-user-select:none;user-select:none}.user-menu__avatar-img{width:22px;height:22px;border-radius:50%;object-fit:cover;display:inline-block}.user-menu__avatar--lg{width:36px;height:36px;font-size:1rem}.user-menu__avatar-img--lg{width:36px;height:36px}.user-menu__pop{position:absolute;bottom:calc(100% + 8px);left:0;min-width:240px;max-width:320px;background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:0 12px 32px -8px #0000002e,0 4px 12px -4px #0000001a;padding:6px;z-index:50;animation:user-menu-pop .12s ease-out}.user-menu__pop--portal{position:fixed;top:auto;right:auto;z-index:1000}@keyframes user-menu-pop{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.user-menu__head{display:flex;align-items:center;gap:10px;padding:8px 10px 10px;border-bottom:1px solid var(--border);margin-bottom:4px}.user-menu__head-text{min-width:0;flex:1;display:flex;flex-direction:column;gap:2px}.user-menu__email{font-size:.86rem;font-weight:500;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-menu__name{font-size:.74rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-menu__list{display:flex;flex-direction:column}.user-menu__item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:6px;background:transparent;border:none;cursor:pointer;font:inherit;font-size:.86rem;color:var(--ink);text-align:left;white-space:nowrap}.user-menu__item:hover{background:var(--bg-alt)}.user-menu__item .icon{color:var(--muted);flex-shrink:0}.user-menu__item:hover .icon,.user-menu__item--danger{color:var(--ink)}.user-menu__item--danger:hover{background:#fee2e2;color:#991b1b}.user-menu__item--danger:hover .icon{color:#991b1b}.user-menu__sep{height:1px;background:var(--border);margin:4px 0}.user-menu__credit{align-items:stretch;gap:10px;padding:10px;margin-bottom:2px;border:1px solid var(--border);background:var(--bg)}.user-menu__credit:hover{background:var(--bg-alt);border-color:var(--ink)}.user-menu__credit .icon{width:26px;height:26px;padding:5px;border-radius:50%;background:var(--ink);color:#fff;flex-shrink:0;align-self:center;box-sizing:content-box}.user-menu__credit:hover .icon{color:#fff}.user-menu__credit-body{display:flex;flex-direction:column;flex:1;min-width:0;line-height:1.25}.user-menu__credit-amount{font-size:.92rem;font-weight:700;letter-spacing:-.01em;color:var(--ink)}.user-menu__credit-unit{font-size:.72rem;font-weight:500;color:var(--muted);margin-left:2px}.user-menu__credit-sub{font-size:.72rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-menu__credit-cta{display:inline-flex;align-items:center;gap:3px;padding:4px 10px;border-radius:999px;background:var(--bg-alt);color:var(--muted);font-size:.74rem;font-weight:600;flex-shrink:0;align-self:center;transition:background-color .12s,color .12s}.user-menu__credit:hover .user-menu__credit-cta{background:var(--ink);color:#fff}.user-menu__credit--low{border-color:#c0392b;background:#c0392b0f}.user-menu__credit--low .icon{background:#c0392b}.user-menu__credit--low .user-menu__credit-sub{color:#c0392b;font-weight:600}.user-menu__trigger{position:relative}.user-menu__dot{position:absolute;top:4px;right:4px;width:8px;height:8px;border-radius:50%;background:#c0392b;border:1.5px solid var(--panel);box-shadow:0 0 0 1px #c0392b59}.user-menu__trigger-label.has-balance{font-variant-numeric:tabular-nums;font-weight:600;color:var(--ink)}.user-menu__trigger-label.is-low{color:#c0392b}.user-menu__trigger.is-low:hover .user-menu__trigger-label.is-low,.user-menu__trigger.is-low.is-open .user-menu__trigger-label.is-low{color:#a82c20}.onboarding{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,var(--bg) 0%,var(--bg-alt) 100%);padding:24px;overflow-y:auto}.onboarding__card{width:100%;max-width:540px;margin:auto;padding:36px 36px 28px;background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 32px #0000000f}.onboarding__steps{display:flex;align-items:center;gap:14px;list-style:none;margin:0 0 28px;padding:0;font-family:var(--sans);font-size:.85rem}.onboarding__step{display:flex;align-items:center;gap:6px;color:var(--muted)}.onboarding__step.is-active{color:var(--ink)}.onboarding__step:not(:last-child):after{content:"";flex:0 0 auto;width:32px;height:1px;background:var(--border);margin-left:8px}.onboarding__step-num{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:1px solid var(--border);border-radius:50%;background:var(--bg-alt);font-size:.78rem;font-weight:600}.onboarding__step.is-active .onboarding__step-num{background:var(--ink);color:#fff;border-color:var(--ink)}.onboarding__body{font-family:var(--sans)}.onboarding__title{margin:0 0 6px;font-size:1.5rem;font-family:var(--serif);letter-spacing:-.01em}.onboarding__subtitle{margin:0 0 20px;color:var(--muted);font-size:.95rem}.onboarding__features{margin:0 0 24px;padding:0;list-style:none;display:grid;gap:10px}.onboarding__features li{padding:10px 12px;background:var(--bg-alt);border-radius:var(--radius);font-size:.9rem;line-height:1.5}.onboarding__features strong{font-weight:600}.onboarding__note{display:grid;gap:4px;margin-bottom:20px;padding:12px 14px;background:var(--bg-alt);border-left:3px solid var(--accent);font-size:.88rem;line-height:1.5}.onboarding__note strong{font-weight:600}.onboarding__note span{color:var(--muted)}.onboarding__btn-primary,.onboarding__btn-secondary{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:var(--radius);font-family:var(--sans);font-weight:500;cursor:pointer;transition:background .15s,border-color .15s,opacity .15s}.onboarding__btn-primary{width:100%;border:1px solid var(--ink);background:var(--ink);color:#fff}.onboarding__btn-primary:hover:not(:disabled){background:#2c2c2c}.onboarding__btn-primary:disabled,.onboarding__btn-secondary:disabled{opacity:.55;cursor:progress}.onboarding__btn-secondary{border:1px solid var(--border);background:#fff;color:var(--ink)}.onboarding__btn-secondary:hover:not(:disabled){background:var(--bg-alt);border-color:var(--ink)}.onboarding__error{margin:14px 0 0;padding:8px 10px;background:#fef0f0;border:1px solid #f5c2c2;color:var(--danger);border-radius:var(--radius);font-size:.88rem}.onboarding__hint{margin-top:16px;font-size:.82rem;color:var(--muted)}.onboarding__loading{padding:32px 0;text-align:center;color:var(--muted);font-size:.9rem}.onboarding__cards{display:grid;gap:12px}.onboarding__choice{display:block;width:100%;text-align:left;padding:16px 18px;border:1px solid var(--border);background:#fff;border-radius:var(--radius);font-family:var(--sans);cursor:pointer;transition:border-color .15s,background .15s}.onboarding__choice:hover{border-color:var(--ink);background:var(--bg-alt)}.onboarding__choice-title{font-weight:600;margin-bottom:4px}.onboarding__choice-body{font-size:.88rem;color:var(--muted)}.onboarding__sub{display:grid;gap:12px}.onboarding__row{display:flex;gap:10px;align-items:center}.onboarding__row .onboarding__btn-primary{width:auto;flex:1}.onboarding__field{display:grid;gap:6px}.onboarding__field-label{font-size:.85rem;color:var(--muted)}.onboarding__input{padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius);background:#fff;font:inherit}.onboarding__input:focus{outline:2px solid var(--ink);outline-offset:-1px}.onboarding__check{display:flex;align-items:center;gap:8px;font-size:.9rem;color:var(--muted)}.onboarding__repolist{list-style:none;margin:0;padding:0;display:grid;gap:8px;max-height:260px;overflow-y:auto}.onboarding__repo{width:100%;text-align:left;padding:10px 12px;border:1px solid var(--border);background:#fff;border-radius:var(--radius);font-family:var(--mono);font-size:.86rem;cursor:pointer;display:flex;align-items:center;gap:10px;transition:border-color .15s,background .15s}.onboarding__repo:hover:not(:disabled){border-color:var(--ink);background:var(--bg-alt)}.onboarding__repo:disabled{cursor:progress;opacity:.65}.onboarding__repo-name{flex:1}.onboarding__repo-universe{color:var(--accent);font-family:var(--sans);font-size:.78rem;white-space:nowrap}.onboarding__repo-busy{color:var(--muted);font-family:var(--sans);font-size:.78rem}.billing-mode{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin:.6rem 0 1rem}.billing-mode__chip{display:inline-flex;align-items:center;gap:.35rem}.billing-wallet{display:flex;align-items:flex-start;gap:1.5rem;flex-wrap:wrap;padding:.9rem 1.1rem;border:1px solid var(--border, #d9d6cc);border-radius:var(--radius, 4px);background:var(--bg-alt, #f5f1e6);margin-bottom:.9rem}.billing-wallet__amount{flex:1 1 200px}.billing-wallet__credits{font-size:28px;font-weight:700;font-family:var(--sans);line-height:1.1;color:var(--ink)}.billing-wallet__unit{font-size:14px;font-weight:500;color:var(--muted)}.billing-wallet__krw{font-size:12.5px;margin-top:4px}.billing-wallet__stats{display:flex;flex-direction:column;gap:2px;font-size:12.5px;flex:0 0 auto}.billing-packages{margin-bottom:.9rem}.billing-packages__row{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:.5rem}.billing-package{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:.4rem .7rem;text-align:left;min-width:110px}.billing-package__krw{font-weight:600;font-size:13.5px}.billing-package__credits{font-size:11.5px}.billing-packages__custom{display:flex;gap:.45rem;align-items:center}.billing-packages__custom input{max-width:220px}.billing-txn{margin-top:.6rem;border-top:1px dashed var(--border, #d9d6cc);padding-top:.7rem}.billing-txn__head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.4rem;font-weight:600;font-size:13.5px}.billing-txn__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1px;max-height:280px;overflow-y:auto}.billing-txn__item{display:grid;grid-template-columns:80px 60px 1fr auto;gap:.6rem;align-items:center;padding:4px 6px;font-size:12.5px;border-radius:3px}.billing-txn__item:nth-child(odd){background:#00000006}.billing-txn__sign{font-family:var(--mono, ui-monospace, monospace);font-weight:600;text-align:right}.billing-txn__sign.pos{color:#2e6b35}.billing-txn__sign.neg{color:#a64a3e}.billing-txn__kind{font-size:11.5px}.billing-txn__meta{font-size:11.5px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.billing-txn__time{font-size:11px}.topup-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#14120e80;z-index:9200;display:flex;align-items:center;justify-content:center;padding:1rem;animation:toast-in .14s ease-out}.topup-modal__inner{background:var(--panel, #fff);border:1px solid var(--border, #d9d6cc);border-radius:var(--radius, 4px);width:100%;max-width:540px;max-height:92vh;overflow-y:auto;padding:1.1rem 1.25rem 1rem;box-shadow:0 22px 48px #00000047;font-family:var(--sans)}.topup-modal__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:.6rem}.topup-modal__head h3{margin:0;font-size:16px;font-weight:600}.topup-modal__summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem .9rem;border-radius:var(--radius, 4px);background:var(--bg-alt, #f5f1e6);margin-bottom:.7rem}.topup-modal__amount{font-size:22px;font-weight:700;line-height:1.1}.topup-modal__credits-val{font-size:16px;font-weight:600;color:#2e6b35}.topup-modal__loading{display:flex;align-items:center;gap:.4rem;padding:1.2rem 0;justify-content:center}.topup-modal__slot{min-height:1px;margin:.35rem 0}.topup-modal__method-card{display:flex;flex-direction:column;gap:.5rem;padding:.9rem 1rem;margin:.5rem 0 .2rem;border:1px solid var(--border, #d9d6cc);border-radius:var(--radius, 12px);background:var(--bg-alt, #fafaf6)}.topup-modal__method-row{display:flex;align-items:flex-start;gap:.75rem}.topup-modal__method-row>svg{flex-shrink:0;margin-top:2px;color:var(--accent, #b88a4f)}.topup-modal__method-title{font-weight:600;font-size:.95rem;color:var(--ink, #2c2a23);margin-bottom:2px}.topup-modal__foot{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.9rem}.topup-modal__legal{font-size:11.5px;margin-top:.7rem;line-height:1.55}.topup-modal__legal a{color:var(--ink-soft, #6c6757);text-decoration:underline}.payment-result{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:2rem}.payment-result__card{width:100%;max-width:440px;text-align:center;border:1px solid var(--border, #d9d6cc);border-radius:var(--radius, 4px);background:var(--panel, #fff);padding:2rem 1.5rem}.payment-result__card h2{margin:.8rem 0 .6rem;font-size:19px;font-weight:600}.payment-result__icon{width:64px;height:64px;border-radius:50%;margin:0 auto;display:flex;align-items:center;justify-content:center;background:var(--bg-alt, #f5f1e6)}.payment-result__icon--ok{background:#d8e8d2;color:#2e6b35}.payment-result__icon--err{background:#f1d6d0;color:#a64a3e}.payment-result__icon--info{background:#e0e6ec;color:#4a5868}.payment-result__actions{display:flex;gap:.5rem;justify-content:center;margin-top:1.2rem}.legal-page{max-width:760px;margin:2rem auto;padding:0 1.5rem;font-family:var(--sans);line-height:1.65}.legal-page h1{margin-bottom:1rem;font-size:22px}.legal-page h3{margin:1.4rem 0 .4rem;font-size:15px}.legal-page__body p,.legal-page__body ul{margin:.4rem 0;font-size:14px}.legal-page__body ul{padding-left:1.4rem}.legal-page__nav{margin-top:2rem;display:flex;gap:.6rem;font-size:12.5px;border-top:1px dashed var(--border);padding-top:1rem}.legal-page__nav a{color:var(--ink-soft, #6c6757)}.business-footer{margin-top:1.4rem;padding-top:.9rem;border-top:1px solid var(--border, #d9d6cc);font-size:12px;line-height:1.7;color:var(--ink-soft, #6c6757)}.business-footer--compact{margin-top:1rem;padding-top:.7rem;font-size:11.5px;line-height:1.55}.business-footer__row{display:block}.business-footer__nav{margin-top:.4rem}.business-footer__nav a{color:var(--ink-soft, #6c6757)}.business-footer__nav a:hover{text-decoration:underline}.business-footer--landing{margin:0 auto;padding:22px 16px max(18px,env(safe-area-inset-bottom));width:100%;max-width:880px;text-align:center;border-top:1px solid var(--border, #d9d6cc);font-size:12.5px;line-height:1.75;color:var(--muted, #6c6757)}.business-footer--landing .business-footer__row{display:block}.business-footer--landing .business-footer__nav{display:inline-flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-top:.6rem}.business-footer--landing strong{color:var(--ink, #2c2a23);font-weight:600}@media (max-width: 720px){.business-footer--landing{font-size:11.5px;padding:16px 12px max(14px,env(safe-area-inset-bottom))}}.gallery-page{padding:clamp(16px,3vw,28px);max-width:1280px;margin:0 auto}.gallery-page__head{margin-bottom:18px}.gallery-page__head h1{margin:0 0 6px;font-size:clamp(20px,2.4vw,26px)}.gallery-page__head p{margin:0;max-width:720px;line-height:1.5;font-size:.92rem}.gallery-page__error{margin:24px 0;padding:12px 14px;border-radius:8px;background:var(--danger-bg, #fdecec);color:var(--danger, #b53b3b);border:1px solid var(--danger-border, #f0c4c4)}.gallery-page__empty{margin:48px 0;padding:28px;text-align:center;border:1px dashed var(--border);border-radius:10px;color:var(--muted)}.gallery-page__stats{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.gallery-stat{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 14px;border:1px solid var(--border);border-radius:10px;background:var(--bg-alt, transparent);min-width:110px}.gallery-stat__value{font-size:1.35rem;font-weight:600;font-variant-numeric:tabular-nums}.gallery-stat__label{font-size:.78rem;color:var(--muted)}.gallery-page__filters{display:flex;flex-wrap:wrap;gap:12px 18px;margin-bottom:18px;align-items:flex-end}.gallery-filter{display:flex;flex-direction:column;gap:6px;min-width:0}.gallery-filter--search{flex:1 1 220px}.gallery-filter__label{font-size:.74rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.gallery-filter__chips{display:flex;flex-wrap:wrap;gap:6px}.gallery-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:transparent;color:var(--ink, inherit);font:inherit;font-size:.85rem;cursor:pointer;transition:background .12s,border-color .12s,color .12s}.gallery-chip:hover{background:var(--bg-alt)}.gallery-chip.is-active{background:var(--accent, #1f6feb);color:#fff;border-color:transparent}.gallery-chip__count{font-size:.72rem;opacity:.75;font-variant-numeric:tabular-nums}.gallery-search{width:100%;max-width:360px;padding:8px 12px;border:1px solid var(--border);border-radius:8px;background:var(--bg, #fff);font:inherit;font-size:.9rem}.gallery-page .gallery-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}.gallery-card{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:10px;background:var(--bg-alt, #fff);overflow:hidden;transition:transform .12s,box-shadow .15s,border-color .12s}.gallery-card:hover{transform:translateY(-1px);box-shadow:0 6px 18px #00000014}.gallery-card--archived{border-style:dashed;background:transparent}.gallery-card__thumb{position:relative;display:block;width:100%;aspect-ratio:1 / 1;background:#00000010;border:0;padding:0;cursor:zoom-in;overflow:hidden}.gallery-card__thumb img{width:100%;height:100%;object-fit:cover;display:block}.gallery-card--archived .gallery-card__thumb img{filter:saturate(.7) brightness(.95)}.gallery-card__badge{position:absolute;top:6px;right:6px;font-size:.68rem;padding:3px 7px;border-radius:999px;font-weight:600;letter-spacing:.02em;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.gallery-card__badge--active{background:#1f6febeb;color:#fff}.gallery-card__badge--archived{background:#1414148c;color:#fff}.gallery-card__meta{padding:8px 10px 10px;display:flex;flex-direction:column;gap:4px;min-width:0}.gallery-card__row{display:flex;align-items:center;flex-wrap:wrap;gap:4px;min-width:0}.gallery-card__row--meta{font-size:.74rem}.gallery-card__kind{font-size:.74rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--muted)}.gallery-card__sub{font-size:.74rem}.gallery-card__owner{display:flex;align-items:baseline;gap:6px;font-size:.85rem;color:var(--ink, inherit);text-decoration:none;min-width:0}.gallery-card__owner:hover{text-decoration:underline}.gallery-card__owner-cat{font-size:.7rem;padding:2px 6px;border-radius:4px;background:var(--bg, #ececec);color:var(--muted);flex-shrink:0}.gallery-card__owner-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.gallery-card__owner--orphan{font-size:.82rem;font-style:italic}.gallery-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;background:#0a0a0ad1;display:flex;align-items:center;justify-content:center;padding:24px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.gallery-lightbox__inner{position:relative;max-width:min(1100px,100%);max-height:100%;display:flex;flex-direction:column;gap:10px}.gallery-lightbox__inner img{max-width:100%;max-height:calc(100vh - 160px);object-fit:contain;border-radius:6px;background:#00000040}.gallery-lightbox__close{position:absolute;top:-40px;right:0;background:#ffffff1f;color:#fff;border:0;border-radius:999px;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.gallery-lightbox__close:hover{background:#ffffff38}.gallery-lightbox__meta{color:#f3f3f3;font-size:.85rem;display:flex;flex-direction:column;gap:6px}.gallery-lightbox__meta .gallery-card__owner{color:#fff}.gallery-lightbox__meta .muted{color:#c9c9c9}.gallery-lightbox__line{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.gallery-lightbox__path{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.8rem}.gallery-lightbox__path code{background:#ffffff14;padding:4px 8px;border-radius:4px;word-break:break-all;color:#fff}@media (max-width: 720px){.gallery-page__stats{gap:8px}.gallery-stat{min-width:92px;padding:8px 10px}.gallery-stat__value{font-size:1.15rem}.gallery-page .gallery-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.gallery-lightbox{padding:16px}.gallery-lightbox__close{top:-36px}}.credit-cost{display:inline-flex;align-items:center;gap:3px;padding:1px 6px;border-radius:999px;background:#ffc4001f;border:1px solid rgba(255,196,0,.25);color:#ffdc82f2;font-size:.72rem;font-weight:600;line-height:1.4;letter-spacing:.01em;white-space:nowrap;vertical-align:middle;-webkit-user-select:none;user-select:none}.credit-cost--md{padding:2px 8px;font-size:.78rem}.credit-cost--loading{opacity:.55;font-style:italic}.credit-cost__icon{font-size:.85em;line-height:1;transform:translateY(-.5px)}.credit-cost__value{font-variant-numeric:tabular-nums}.btn--primary .credit-cost,.btn-primary .credit-cost{background:#ffffff29;border-color:#ffffff38;color:#ffffffeb}.chat-input__send{display:inline-flex;align-items:center;gap:.4rem}.quality-select{display:inline-flex;align-items:center;gap:2px;padding:3px;border-radius:999px;background:var(--surface, rgba(0, 0, 0, .55));border:1px solid var(--border, rgba(255, 255, 255, .12));flex-wrap:nowrap;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 2px 8px #0000002e}.quality-select__opt{position:relative;display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;cursor:pointer;font-size:.74rem;font-weight:500;color:var(--muted, rgba(255, 255, 255, .7));border:1px solid transparent;transition:background .12s ease,color .12s ease,border-color .12s ease;-webkit-user-select:none;user-select:none;white-space:nowrap}.quality-select__opt:hover{color:var(--text, #fff);background:#ffffff0f}.quality-select__opt.is-checked{background:#4e8eff38;color:#e7efff;border-color:#4e8eff8c;font-weight:600}.quality-select__opt.is-disabled{opacity:.5;cursor:not-allowed}.quality-select__opt input[type=radio]{position:absolute;opacity:0;pointer-events:none;width:0;height:0}.quality-select__label{letter-spacing:.02em}.quality-select .credit-cost{padding:0 4px;background:transparent;border-color:transparent;color:#ffc86ee0;font-weight:600;font-size:.7rem}.quality-select__opt.is-checked .credit-cost{color:#ffd782}.panel__image-card{display:inline-flex;flex-direction:column;gap:6px;padding:8px 10px;border-radius:12px;background:#0f121ceb;border:1px solid rgba(255,255,255,.08);box-shadow:0 4px 16px #00000052;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);align-items:stretch}.panel__image-card .quality-select{background:#ffffff0d;border-color:#ffffff14;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;align-self:center}.panel__image-card .quality-select__opt{color:#dce2f0c7}.panel__image-card .quality-select__opt:hover{color:#fff;background:#ffffff14}.panel__image-card .quality-select__opt.is-checked{background:#4e8eff52;color:#fff;border-color:#4e8effb3}.portrait__actions .quality-select{background:#0000000a;border-color:#00000014;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;margin-right:4px}.portrait__actions .quality-select__opt{color:var(--muted, rgba(80, 90, 110, .85))}.portrait__actions .quality-select__opt:hover{color:var(--ink, #1a1f2e);background:#0000000f}.portrait__actions .quality-select__opt.is-checked{background:#4e8eff2e;color:#1f3a78;border-color:#4e8eff73}.panel__image>.panel__image-card{position:absolute;bottom:8px;right:8px;z-index:2;max-width:min(420px,80%);opacity:0;transform:translateY(4px);transition:opacity .14s ease,transform .14s ease;pointer-events:none}.panel__image:hover>.panel__image-card,.panel__image:focus-within>.panel__image-card,.panel__image--stale>.panel__image-card{opacity:1;transform:translateY(0);pointer-events:auto}.panel__image-card .panel__image-actions{position:static;opacity:1;transform:none;max-width:none;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px}.panel__image-btn--primary{background:#4e8eff38;border-color:#4e8eff8c;color:#e7efff;font-weight:600}.panel__image-btn--primary:hover:not(:disabled){background:#4e8eff52;border-color:#4e8effbf}.panel__image-card--empty{width:min(360px,100%);align-self:center;padding:10px 12px 12px;gap:10px}.panel__image-card-actions{display:flex;flex-direction:column;align-items:stretch;gap:6px}.panel__image-card--empty .panel__image-gen{width:100%;justify-content:center;padding:9px 14px;font-size:13px;font-weight:600;border-radius:8px;background:#4e8eff38;border:1px solid rgba(78,142,255,.55);color:#e7efff}.panel__image-card--empty .panel__image-gen:hover:not(:disabled){background:#4e8eff52;border-color:#4e8effbf;color:#fff}.panel__image-card--empty .panel__image-btn--ghost{background:transparent;border:1px solid transparent;color:#dce2f099;font-size:12px;padding:4px 8px;border-radius:6px;align-self:center}.panel__image-card--empty .panel__image-btn--ghost:hover:not(:disabled){color:#fff;background:#ffffff0f}.panel__image--empty{padding:14px 12px;min-height:220px;overflow:visible}.panel__image--empty>.panel__image-card,.panel__image--empty:hover>.panel__image-card,.panel__image--empty:focus-within>.panel__image-card{position:static;opacity:1;transform:none;pointer-events:auto;max-width:100%;margin:0 auto}.quality-select{flex-wrap:wrap;justify-content:center}@media (max-width: 540px){.quality-select{flex-wrap:wrap;justify-content:center}.quality-select__opt{padding:3px 8px;font-size:.7rem}.quality-select .credit-cost{font-size:.66rem}.panel__image>.panel__image-card{left:8px;right:8px;max-width:none}.panel__image-card-actions{align-items:stretch}}.panel--cover{margin-top:.25rem}.panel--cover .panel__num{background:linear-gradient(135deg,#ffffff0f,#ffffff05);color:var(--accent, #c8a96a);border-color:color-mix(in srgb,var(--accent, #c8a96a) 30%,var(--border));font-weight:700;letter-spacing:.04em}.panel--cover .panel__frame{background:linear-gradient(180deg,rgba(0,0,0,.04),transparent 30%);border-color:color-mix(in srgb,var(--accent, #c8a96a) 25%,var(--border));padding:1rem 1.1rem 1.1rem}.panel__cover-stage{position:relative;isolation:isolate;border-radius:10px;overflow:hidden;box-shadow:0 4px 24px #0000002e,0 1px 2px #0000001f}.panel__cover-stage>.panel__image:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,#0000002e,#0000 18%,#0000 48%,#0000008c 88%,#000000c7);z-index:1}.panel__cover-overlay{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:clamp(1rem,3.2vw,2.1rem) clamp(1.1rem,3.6vw,2.4rem);display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;color:#fff;pointer-events:none;max-width:min(92%,32rem)}.panel__cover-subtitle{display:inline-flex;align-items:center;gap:.55rem;font-family:var(--sans);font-size:clamp(.72rem,1.3vw,.9rem);letter-spacing:.22em;text-transform:uppercase;font-weight:700;color:var(--accent, #c8a96a);text-shadow:0 1px 3px rgba(0,0,0,.55)}.panel__cover-subtitle:before{content:"";display:inline-block;width:1.6rem;height:2px;background:currentColor;border-radius:1px;flex:none}.panel__cover-title{margin:0;font-family:var(--sans);font-size:clamp(1.55rem,4.6vw,2.9rem);font-weight:900;line-height:1.05;letter-spacing:-.015em;word-break:keep-all;text-shadow:0 1px 0 rgba(0,0,0,.6),0 2px 6px rgba(0,0,0,.55),0 8px 24px rgba(0,0,0,.35)}.panel__cover-title:not(:empty):after{content:"";display:block;width:2.4rem;height:3px;margin-top:.65rem;background:var(--accent, #c8a96a);border-radius:2px;box-shadow:0 1px 4px #0006}.panel__cover-stage:has(.panel__image--empty)>.panel__image:after{background:linear-gradient(180deg,transparent 60%,rgba(0,0,0,.1) 100%)}.panel__cover-stage:has(.panel__image--empty) .panel__cover-title{color:var(--text, #1a1a1a);text-shadow:0 1px 2px rgba(0,0,0,.08)}.panel__cover-stage:has(.panel__image--empty) .panel__cover-subtitle{text-shadow:none}.panel__tag--cover{background:color-mix(in srgb,var(--accent, #c8a96a) 18%,transparent);color:var(--accent, #c8a96a);border:1px solid color-mix(in srgb,var(--accent, #c8a96a) 40%,var(--border));font-weight:700;letter-spacing:.05em}.panel__editor-cover{border:1px dashed color-mix(in srgb,var(--accent, #c8a96a) 35%,var(--border));border-radius:6px;padding:.65rem .8rem .8rem;background:color-mix(in srgb,var(--accent, #c8a96a) 4%,transparent);margin-bottom:.8rem;display:flex;flex-direction:column;gap:.55rem}.panel__editor-cover-hint{font-size:.75rem}@media print{.panel__cover-stage>.panel__image:after{background:linear-gradient(180deg,transparent 70%,rgba(0,0,0,.1) 100%)}.panel__cover-overlay{color:var(--text, #1a1a1a);text-shadow:none}}.webtoon__panel--cover{overflow:hidden;border-radius:4px}.webtoon__panel--cover:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,#0000002e,#0000 18%,#0000 48%,#0000008c 88%,#000000c7);z-index:1}.webtoon__cover-overlay{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:clamp(1.1rem,3.4vw,2.2rem) clamp(1.2rem,3.8vw,2.6rem);display:flex;flex-direction:column;align-items:flex-start;gap:.55rem;color:#fff;pointer-events:none;max-width:min(92%,34rem)}.webtoon__cover-subtitle{display:inline-flex;align-items:center;gap:.55rem;font-family:var(--sans);font-size:clamp(.78rem,1.5vw,.95rem);letter-spacing:.22em;text-transform:uppercase;font-weight:700;color:var(--accent, #c8a96a);text-shadow:0 1px 3px rgba(0,0,0,.55)}.webtoon__cover-subtitle:before{content:"";display:inline-block;width:1.8rem;height:2px;background:currentColor;border-radius:1px;flex:none}.webtoon__cover-title{margin:0;font-family:var(--sans);font-size:clamp(1.7rem,5vw,3.1rem);font-weight:900;line-height:1.05;letter-spacing:-.015em;word-break:keep-all;text-shadow:0 1px 0 rgba(0,0,0,.6),0 2px 6px rgba(0,0,0,.55),0 8px 24px rgba(0,0,0,.35)}.webtoon__cover-title:not(:empty):after{content:"";display:block;width:2.6rem;height:3px;margin-top:.7rem;background:var(--accent, #c8a96a);border-radius:2px;box-shadow:0 1px 4px #0006}@media (hover: none),(max-width: 768px){.panel>.panel__actions{opacity:1!important;pointer-events:auto!important}.panel__image .panel__image-actions{opacity:1!important}.panel__image>.panel__image-card{opacity:1!important;transform:none!important;pointer-events:auto!important}.refs__item .refs__remove{opacity:.85!important}.universe-switcher__item .universe-switcher__item-actions{opacity:1!important}.sidebar__chat-item .sidebar__chat-del{opacity:.7!important}}@media (hover: none){button,a,[role=button],.btn,.panel__action-btn,.panel__image-btn,.universe-switcher__mini,.sidebar__nav-link{-webkit-tap-highlight-color:transparent}}@media (max-width: 768px),(hover: none){.btn{min-height:44px}.btn--icon{min-height:44px;min-width:44px}.btn--tiny{min-height:36px;padding:.35rem .6rem;font-size:.85rem}.mobile-topbar__btn{width:44px;height:44px}.sidebar__close{min-width:44px;min-height:44px}.sidebar__chat-del{padding:8px}.universe-switcher__mini{padding:.5rem .55rem}}@media (hover: none){.btn:not(:disabled):active{background:var(--bg-alt, rgba(0, 0, 0, .06));transform:translateY(1px)}.panel__action-btn:active,.panel__image-btn:active{background:#ffffff1f}}@media (max-width: 768px),(hover: none){.sidebar,.topup-modal__inner,.gallery-modal__inner,.prompt-modal__inner,.onboarding__panel{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}}@media (max-width: 768px){.sidebar{padding-bottom:env(safe-area-inset-bottom)}.topup-modal{padding-bottom:max(.5rem,env(safe-area-inset-bottom))}}@media (max-width: 600px){.entry .prose,.msg .prose,.panel__action .prose{font-size:15.5px;line-height:1.7}.entry .prose p,.msg .prose p{margin-block:.7em}.entry__title{font-size:1.45rem;line-height:1.25;word-break:keep-all;overflow-wrap:anywhere}}@media (max-width: 600px){.settings-section label,.onboarding__panel label{margin-block:.5rem .25rem;display:block}}@media (max-width: 768px){.prompt-modal__inner,.gallery-modal__inner{max-height:calc(100dvh - 1rem)}}@media (max-width: 768px),(hover: none){.layout{overscroll-behavior-y:contain}}@media (max-width: 768px){.sidebar__pane,.sidebar__list{-webkit-overflow-scrolling:touch}}@media (hover: none) and (max-width: 720px){.panel__image{overflow:visible}.panel__image>.panel__image-card{position:static;margin-top:8px;max-width:none;width:100%}}
