.chat[data-v-da820c83]{background:var(--surface);flex-direction:column;min-height:0;display:flex}.chat-head[data-v-da820c83]{border-bottom:1px solid var(--border);padding:8px 10px;padding-top:max(8px, env(safe-area-inset-top));align-items:center;gap:6px;display:flex}.chat-title[data-v-da820c83]{flex:1;min-width:0;line-height:1.2;display:grid}.chat-title strong[data-v-da820c83]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.notice[data-v-da820c83]{margin:10px 12px 0}.messages[data-v-da820c83]{overscroll-behavior:contain;flex-direction:column;flex:1;gap:10px;padding:14px 12px;display:flex;overflow-y:auto}.intro[data-v-da820c83]{text-align:center;gap:10px;margin:auto 0;display:grid}.suggest[data-v-da820c83]{gap:6px;display:grid}.suggest .btn[data-v-da820c83]{white-space:normal;text-align:center;height:auto;padding:6px 10px}.msg[data-v-da820c83]{overflow-wrap:anywhere;border-radius:14px;max-width:92%;padding:8px 12px}.msg.user[data-v-da820c83]{background:var(--accent);color:var(--accent-text);white-space:pre-wrap;border-bottom-right-radius:4px;align-self:flex-end}.msg.assistant[data-v-da820c83]{background:var(--surface-2);border-bottom-left-radius:4px;align-self:flex-start}.md[data-v-da820c83] p,.md[data-v-da820c83] ul,.md[data-v-da820c83] ol{margin:0 0 8px}.md[data-v-da820c83]>:last-child{margin-bottom:0}.md[data-v-da820c83] ul,.md[data-v-da820c83] ol{padding-left:20px}.md[data-v-da820c83] h4{margin:4px 0;font-size:.95rem}.md[data-v-da820c83] code{font-family:var(--mono);background:var(--surface-3);border-radius:4px;padding:1px 4px;font-size:.85em}.note[data-v-da820c83]{background:var(--success-soft);color:var(--success);text-align:center;border-radius:999px;align-self:center;align-items:center;gap:6px;padding:4px 10px;font-size:.82rem;font-weight:600;display:inline-flex}.typing[data-v-da820c83]{background:var(--surface-2);border-radius:14px;align-self:flex-start;gap:4px;padding:12px 14px;display:flex}.typing span[data-v-da820c83]{background:var(--faint);border-radius:50%;width:6px;height:6px;animation:1.2s infinite blink-da820c83}.typing span[data-v-da820c83]:nth-child(2){animation-delay:.2s}.typing span[data-v-da820c83]:nth-child(3){animation-delay:.4s}@keyframes blink-da820c83{0%,80%,to{opacity:.3}40%{opacity:1}}.composer[data-v-da820c83]{padding:10px 12px;padding-bottom:max(10px, env(safe-area-inset-bottom));border-top:1px solid var(--border);align-items:flex-end;gap:8px;display:flex}.composer textarea[data-v-da820c83]{resize:none;min-height:40px;max-height:160px;line-height:1.4}.composer .btn[data-v-da820c83]{height:40px}.history[data-v-da820c83]{flex:1;overflow-y:auto}.history ul[data-v-da820c83]{margin:0;padding:6px;list-style:none}.history li[data-v-da820c83]{border-radius:var(--radius-sm);align-items:center;gap:4px;display:flex}.history li.active[data-v-da820c83],.history li[data-v-da820c83]:hover{background:var(--surface-2)}.conv[data-v-da820c83]{min-width:0;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;gap:1px;padding:8px 10px;display:grid}.conv-title[data-v-da820c83]{text-overflow:ellipsis;white-space:nowrap;font-weight:550;overflow:hidden}.shell[data-v-086ffb37]{grid-template-rows:var(--header-h) 1fr;grid-template-columns:minmax(0,1fr);grid-template-areas:"top""main";min-height:100dvh;display:grid}.topbar[data-v-086ffb37]{z-index:20;background:var(--bar-bg);border-bottom:2px solid var(--trim);color:var(--bar-text);grid-area:top;align-items:center;gap:16px;padding:0 16px;display:flex;position:sticky;top:0;box-shadow:0 2px 10px #00000059}.brand[data-v-086ffb37]{color:var(--bar-active);font-family:var(--font-display);letter-spacing:.03em;text-shadow:0 1px #000;align-items:center;gap:8px;font-size:1.15rem;font-weight:700;text-decoration:none;display:flex}.topnav[data-v-086ffb37]{gap:2px;display:flex}.navlink[data-v-086ffb37]{border-radius:var(--radius-sm);color:var(--bar-muted);font-family:var(--font-display);letter-spacing:.02em;padding:6px 12px;font-weight:600;text-decoration:none}.navlink[data-v-086ffb37]:hover{color:var(--bar-text);background:var(--bar-hover)}.navlink.router-link-exact-active[data-v-086ffb37]{color:var(--bar-active);background:var(--bar-hover);box-shadow:0 -2px 0 var(--bar-active) inset}.top-actions .btn-ghost[data-v-086ffb37]{color:var(--bar-text)}.top-actions .btn-ghost[data-v-086ffb37]:hover{background:var(--bar-hover)}.top-actions[data-v-086ffb37]{gap:6px;margin-left:auto;display:flex}.main[data-v-086ffb37]{grid-area:main;min-width:0}.chat-panel[data-v-086ffb37]{z-index:40;position:fixed;inset:0}@media (width>=1100px){.shell.chat-open[data-v-086ffb37]{grid-template-columns:minmax(0, 1fr) var(--chat-w);grid-template-areas:"top top""main chat"}.chat-panel[data-v-086ffb37]{top:var(--header-h);height:calc(100dvh - var(--header-h));z-index:10;border-left:1px solid var(--border);grid-area:chat;position:sticky}}.chat-scrim[data-v-086ffb37]{display:none}@media (width>=720px) and (width<=1099px){.chat-scrim[data-v-086ffb37]{z-index:35;background:#00000059;display:block;position:fixed;inset:0}.chat-panel[data-v-086ffb37]{width:min(440px,90vw);box-shadow:var(--shadow-lg);border-left:1px solid var(--border);left:auto}}.tabbar[data-v-086ffb37]{display:none}@media (width<=719px){.topnav[data-v-086ffb37],.hide-sm[data-v-086ffb37]{display:none}.main[data-v-086ffb37]{padding-bottom:calc(64px + env(safe-area-inset-bottom))}.tabbar[data-v-086ffb37]{z-index:30;padding-bottom:env(safe-area-inset-bottom);background:var(--bar-bg);border-top:2px solid var(--trim);grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.tab[data-v-086ffb37]{color:var(--bar-muted);justify-items:center;gap:2px;padding:8px 0 6px;font-size:.72rem;font-weight:600;text-decoration:none;display:grid}.tab.router-link-exact-active[data-v-086ffb37]{color:var(--bar-active)}}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cinzel-latin-ext-600-normal-BEFdM_VE.woff2)format("woff2"),url(/assets/cinzel-latin-ext-600-normal-BY9Mq9iK.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cinzel-latin-600-normal-Dd5YO2UX.woff2)format("woff2"),url(/assets/cinzel-latin-600-normal-CH_LB4su.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/cinzel-latin-ext-700-normal-C24KFjuG.woff2)format("woff2"),url(/assets/cinzel-latin-ext-700-normal-CORa-yIv.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/cinzel-latin-700-normal-Dkw14w9r.woff2)format("woff2"),url(/assets/cinzel-latin-700-normal-C-gK7hA8.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#e6d6b0;--bg-texture:radial-gradient(ellipse at top, #fff8e199, transparent 60%), radial-gradient(ellipse at bottom, #78551e2e, transparent 70%);--surface:#f7eed8;--surface-2:#eee1c1;--surface-3:#e2d0a5;--text:#2a1d0c;--muted:#6b5531;--faint:#9a845c;--border:#d3bd8c;--border-strong:#a8874a;--trim:#b88a35;--accent:#8a5a10;--accent-strong:#6c4508;--accent-soft:#f2dea8;--accent-text:#fff8e6;--heading:#5a3a08;--level:#7a4e00;--success:#2f6b2a;--success-soft:#dcebc9;--danger:#9e2418;--danger-soft:#f6d8cf;--info-soft:#ece3cc;--focus:#1f5fbf;--shadow:0 1px 0 #ffffff80 inset, 0 2px 8px #462d0a24;--shadow-lg:0 10px 40px #28190559;--bar-bg:linear-gradient(180deg, #2b2113 0%, #17110a 100%);--bar-text:#e9dcb8;--bar-muted:#b29d6d;--bar-active:#f2c75c;--bar-hover:#f2c75c1f;--btn-gold:linear-gradient(180deg, #f3cf6b 0%, #d6a336 48%, #b07a1c 100%);--btn-gold-hover:linear-gradient(180deg, #f8db86 0%, #e0b048 48%, #bd8624 100%);--btn-gold-border:#6f4a0e;--btn-gold-text:#2a1a03;--xp-fill:linear-gradient(180deg, #e9c45a 0%, #c4902a 100%);--xp-done:linear-gradient(180deg, #7cc256 0%, #4a8f2c 100%);--radius:8px;--radius-sm:6px;--gap:16px;--header-h:56px;--chat-w:400px;--font:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-display:"Cinzel", "Trajan Pro", Georgia, serif;--mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#0c1116;--bg-texture:radial-gradient(ellipse at top, #3c505f59, transparent 55%), radial-gradient(ellipse at bottom right, #7855191f, transparent 60%);--surface:#16202a;--surface-2:#1d2a35;--surface-3:#263643;--text:#ece4cf;--muted:#a9a28c;--faint:#7c7765;--border:#2e3d49;--border-strong:#4a5a66;--trim:#8c6b2c;--accent:#e3b145;--accent-strong:#f5cd6a;--accent-soft:#3a2f16;--accent-text:#1c1404;--heading:#edc55c;--level:#ffcf3f;--success:#6fc25a;--success-soft:#1b3320;--danger:#f07a6a;--danger-soft:#3d1d1a;--info-soft:#1d2a35;--focus:#7aa7ff;--shadow:0 1px 0 #ffffff0a inset, 0 3px 12px #00000059;--shadow-lg:0 10px 40px #0009;--bar-bg:linear-gradient(180deg, #1d2833 0%, #0e151c 100%);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg-texture), var(--bg);color:var(--text);font:15px/1.5 var(--font);-webkit-font-smoothing:antialiased;background-attachment:fixed;margin:0}h1,h2,h3{line-height:1.25;font-family:var(--font-display);letter-spacing:.01em;color:var(--heading);margin:0;font-weight:700}h1{font-size:1.45rem}h2{font-size:1.1rem}h3{font-size:.95rem}p{margin:0}a{color:var(--accent)}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.muted{color:var(--muted)}.small{font-size:.85rem}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.page{gap:20px;max-width:1080px;margin:0 auto;padding:20px 16px 48px;display:grid}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.card{background:var(--surface);border:1px solid var(--trim);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px;position:relative}.card:before{content:"";border:1px solid color-mix(in srgb, var(--trim) 35%, transparent);border-radius:calc(var(--radius) - 3px);pointer-events:none;position:absolute;inset:3px}.card-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.btn{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);min-height:38px;color:var(--text);font:inherit;cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-weight:550;text-decoration:none;transition:background .12s,border-color .12s;display:inline-flex}.btn:hover:not(:disabled){background:var(--surface-2)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--btn-gold);border-color:var(--btn-gold-border);color:var(--btn-gold-text);text-shadow:0 1px #fff0c873;font-weight:700;box-shadow:inset 0 1px #ffffff59,0 1px 2px #0000004d}.btn-primary:hover:not(:disabled){background:var(--btn-gold-hover)}.btn-danger{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 45%, var(--border))}.btn-danger:hover:not(:disabled){background:var(--danger-soft)}.btn-ghost{background:0 0;border-color:#0000}.btn-sm{min-height:32px;padding:0 10px;font-size:.875rem}.btn-icon{min-width:36px;padding:0 8px}.field{gap:4px;display:grid}.field>span{color:var(--muted);font-size:.85rem;font-weight:550}.input,select.input,textarea.input{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);width:100%;min-height:40px;color:var(--text);font:inherit;padding:8px 10px}textarea.input{resize:vertical}.input:focus{outline:2px solid var(--focus);outline-offset:-1px;border-color:#0000}.checkbox{width:22px;height:22px;accent-color:var(--accent);cursor:pointer;flex:none;margin:0}.alert{border-radius:var(--radius-sm);background:var(--danger-soft);color:var(--danger);padding:10px 12px;font-size:.9rem}.alert-info{background:var(--info-soft);color:var(--text)}.badge{background:var(--surface-2);color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:1px 8px;font-size:.78rem;font-weight:600;display:inline-flex}.badge-accent{background:var(--accent-soft);color:var(--accent-strong)}.badge-success{background:var(--success-soft);color:var(--success)}.progress{background:color-mix(in srgb, var(--surface-3) 70%, #000 30%);border:1px solid var(--trim);border-radius:3px;height:10px;overflow:hidden;box-shadow:inset 0 1px 2px #00000059}.progress>div{background:var(--xp-fill);height:100%;transition:width .3s;box-shadow:inset 0 1px #ffffff59}.progress.done>div{background:var(--xp-done)}.empty{text-align:center;color:var(--muted);padding:24px}dialog.modal{border:1px solid var(--trim);border-radius:var(--radius);background:var(--surface);width:min(520px,100vw - 24px);max-height:calc(100dvh - 24px);color:var(--text);box-shadow:var(--shadow-lg);padding:0}dialog.modal::backdrop{background:#00000073}.modal-body{gap:14px;padding:18px;display:grid}.modal-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
