.app-header[data-v-c668b52f]{display:flex;align-items:center;gap:12px;background:linear-gradient(180deg,#ffffff0f,#ffffff05);border:1px solid var(--border);border-radius:16px;padding:18px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);max-width:920px;margin:24px auto 0;width:calc(100% - 32px);position:relative;z-index:100}.title-wrap[data-v-c668b52f]{flex:1 1 auto}.title[data-v-c668b52f]{margin:0;font-size:20px;font-weight:650;letter-spacing:.2px}.subtitle[data-v-c668b52f]{margin:2px 0 0;color:var(--muted);font-size:13px}.desktop-nav[data-v-c668b52f]{display:flex;align-items:center;gap:12px}.status-pill[data-v-c668b52f]{padding:8px 12px;border-radius:999px;background:linear-gradient(180deg,#6b7cff2e,#6b7cff14);color:#dfe3ff;border:1px solid rgba(107,124,255,.35);box-shadow:0 0 0 3px #6b7cff1f inset,0 4px 15px #6b7cff40;font-size:12px;white-space:nowrap}.header-buttons[data-v-c668b52f]{display:flex;gap:8px}.icon-btn[data-v-c668b52f]{background:transparent;border:1px solid var(--border);color:#cbd1e1;padding:8px;border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .2s}.icon-btn[data-v-c668b52f]:hover{border-color:#445}.menu-toggle[data-v-c668b52f]{display:none;background:transparent;border:none;color:#fff;padding:4px;cursor:pointer}.sidebar-backdrop[data-v-c668b52f]{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1999}.sidebar[data-v-c668b52f]{position:fixed;top:0;left:0;bottom:0;width:280px;background:#1a1a24;z-index:2000;border-right:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;box-shadow:4px 0 24px #00000080}.fade-enter-active[data-v-c668b52f],.fade-leave-active[data-v-c668b52f]{transition:opacity .3s ease}.fade-enter-from[data-v-c668b52f],.fade-leave-to[data-v-c668b52f]{opacity:0}.slide-enter-active[data-v-c668b52f],.slide-leave-active[data-v-c668b52f]{transition:transform .3s cubic-bezier(.4,0,.2,1)}.slide-enter-from[data-v-c668b52f],.slide-leave-to[data-v-c668b52f]{transform:translate(-100%)}.sidebar-header[data-v-c668b52f]{padding:20px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar-header h2[data-v-c668b52f]{margin:0;font-size:18px;color:#fff}.close-btn[data-v-c668b52f]{background:transparent;border:none;color:var(--text-secondary);cursor:pointer}.sidebar-content[data-v-c668b52f]{padding:20px;display:flex;flex-direction:column;gap:16px}.sidebar-item[data-v-c668b52f]{display:flex;align-items:center;gap:12px;width:100%;padding:12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-size:16px;cursor:pointer;text-align:left}.sidebar-item[data-v-c668b52f]:active{background:#ffffff1a}.status-pill.mobile[data-v-c668b52f]{text-align:center;margin-bottom:12px}@media(max-width:768px){.desktop-nav[data-v-c668b52f]{display:none}.menu-toggle[data-v-c668b52f]{display:block}.app-header[data-v-c668b52f]{padding:12px 16px;margin:12px auto 0}.title[data-v-c668b52f]{font-size:18px}.subtitle[data-v-c668b52f]{display:none}}.mode-switch[data-v-2ba61e93]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px auto 12px;max-width:920px;width:calc(100% - 32px);flex-wrap:wrap}@media(max-width:600px){.mode-switch[data-v-2ba61e93]{justify-content:center}}.segmented[data-v-2ba61e93]{position:relative;display:inline-grid;grid-template-columns:repeat(4,auto);background:var(--card);border:1px solid var(--border);border-radius:999px;padding:4px;gap:4px;box-shadow:var(--shadow)}.segmented input[data-v-2ba61e93]{position:absolute;opacity:0;pointer-events:none}.segmented label[data-v-2ba61e93]{z-index:1;position:relative;padding:10px 14px;border-radius:999px;cursor:pointer;color:#cdd3e2;font-weight:560;font-size:13px;letter-spacing:.2px;-webkit-user-select:none;user-select:none}.segmented-thumb[data-v-2ba61e93]{position:absolute;top:4px;bottom:4px;width:calc((100% - 8px)/4);left:4px;background:linear-gradient(180deg,#ffffff17,#ffffff08);border:1px solid rgba(255,255,255,.12);border-radius:999px;box-shadow:0 6px 20px #00000059,0 0 0 3px #6b7cff26;transition:left .25s cubic-bezier(.22,.61,.36,1);pointer-events:none}.segmented[data-mode=onboarding] .segmented-thumb[data-v-2ba61e93]{left:calc((100% - 8px)/4 + 4px)}.segmented[data-mode=world-rules] .segmented-thumb[data-v-2ba61e93]{left:calc(.5*(100% - 8px) + 4px)}.segmented[data-mode=characters] .segmented-thumb[data-v-2ba61e93]{left:calc(.75*(100% - 8px) + 4px)}.session-tools[data-v-2ba61e93]{display:flex;gap:8px}.msg[data-v-5afb316e]{display:flex;gap:16px;animation:slideIn-5afb316e .3s cubic-bezier(.2,.8,.2,1);max-width:85%}.msg.user[data-v-5afb316e]{align-self:flex-end;flex-direction:row-reverse}.msg.assistant[data-v-5afb316e]{align-self:flex-start}@keyframes slideIn-5afb316e{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.avatar[data-v-5afb316e]{width:48px;height:48px;border-radius:50%;overflow:hidden;border:2px solid rgba(255,255,255,.15);box-shadow:0 0 20px #7000ff33;flex-shrink:0;transition:transform .3s ease,box-shadow .3s ease;display:grid;place-items:center;background:#111;font-size:12px}.avatar[data-v-5afb316e]:hover{transform:scale(1.05);box-shadow:0 0 25px #00c6ff66;border-color:#fff6}.avatar img[data-v-5afb316e]{width:100%;height:100%;object-fit:cover;cursor:pointer}.message-content[data-v-5afb316e]{flex:1;min-width:0}.bubble[data-v-5afb316e]{padding:18px 24px;border-radius:24px;font-size:.95rem;line-height:1.6;position:relative;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 8px 32px #0003;transition:transform .2s}.msg.user .bubble[data-v-5afb316e]{background:linear-gradient(135deg,#7000ff40,#7000ff26);color:#fff;border-bottom-right-radius:4px;border:1px solid rgba(255,255,255,.2);border-top:1px solid rgba(255,255,255,.3);box-shadow:inset 0 0 20px #ffffff1a,0 8px 32px #0003;text-shadow:0 1px 2px rgba(0,0,0,.2)}.msg.assistant .bubble[data-v-5afb316e]{background:linear-gradient(135deg,#ffffff1f,#ffffff0f);border:1px solid rgba(255,255,255,.15);border-top:1px solid rgba(255,255,255,.25);border-bottom-left-radius:4px;color:var(--text-primary);box-shadow:inset 0 0 20px #ffffff0d,0 8px 32px #0003}.msg.system .bubble[data-v-5afb316e]{background:#ffffff05;border:1px dashed rgba(255,255,255,.1);color:var(--text-secondary);font-size:.85rem;text-align:center;width:100%;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.message-text[data-v-5afb316e]{word-break:break-word;white-space:pre-wrap}.edit-container[data-v-5afb316e]{display:flex;flex-direction:column;gap:12px}.edit-textarea[data-v-5afb316e]{width:100%;padding:12px;background:#0000004d;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:12px;font-size:.95rem;font-family:inherit;resize:vertical;min-height:80px}.edit-textarea[data-v-5afb316e]:focus{outline:none;border-color:var(--accent-secondary);box-shadow:0 0 0 2px #00c6ff33}.edit-buttons[data-v-5afb316e]{display:flex;gap:8px;justify-content:flex-end}.edit-save-btn[data-v-5afb316e]{background:var(--accent-gradient);color:#fff;border:none;padding:6px 16px;border-radius:8px;font-weight:600;cursor:pointer}.edit-cancel-btn[data-v-5afb316e]{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.1);padding:6px 16px;border-radius:8px;cursor:pointer}.message-actions[data-v-5afb316e]{display:flex;gap:8px;margin-top:12px;justify-content:flex-end;opacity:0;transform:translateY(5px);transition:all .2s ease}.msg:hover .message-actions[data-v-5afb316e]{opacity:1;transform:translateY(0)}.action-btn[data-v-5afb316e]{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:var(--text-secondary);width:32px;height:32px;border-radius:8px;display:grid;place-items:center;cursor:pointer;transition:all .2s cubic-bezier(.34,1.56,.64,1);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.action-btn[data-v-5afb316e]:hover{background:#ffffff26;color:#fff;transform:scale(1.1);box-shadow:0 4px 12px #0003;border-color:#ffffff4d}.action-btn.delete-btn[data-v-5afb316e]:hover{background:#f053;border-color:#f056;color:#ff4d7d}.action-btn.edit-btn[data-v-5afb316e]:hover{background:#00c6ff33;border-color:#00c6ff66;color:#4dcbff}.action-btn.reroll-btn[data-v-5afb316e]:hover{background:#7000ff33;border-color:#7000ff66;color:#b366ff}.message-footer[data-v-5afb316e]{margin-top:8px;font-size:.8rem;color:var(--text-secondary);background:#0003;padding:8px 12px;border-radius:8px;border:1px solid rgba(255,255,255,.05);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.footer-section[data-v-5afb316e]{display:flex;gap:8px;align-items:center;margin-bottom:4px;flex-wrap:wrap}.guardian-status[data-v-5afb316e]{font-weight:600;text-transform:uppercase;font-size:.7rem;padding:2px 6px;border-radius:4px;background:#ffffff1a}.guardian-status.verified[data-v-5afb316e]{color:#4ade80;background:#4ade801a}.guardian-status.reworked[data-v-5afb316e]{color:#fbbf24;background:#fbbf241a}.guardian-status.warning[data-v-5afb316e]{color:#f59e0b;background:#f59e0b24}.guardian-status.reworked_failed[data-v-5afb316e]{color:#f87171;background:#f871711a}.guardian-reason[data-v-5afb316e]{font-style:italic;opacity:.8}.footer-notes[data-v-5afb316e]{display:flex;flex-direction:column;gap:2px}.debug-note[data-v-5afb316e]{display:flex;gap:6px}.note-phase[data-v-5afb316e]{font-weight:600;opacity:.7}.debug-note.info[data-v-5afb316e]{color:var(--text-secondary)}.debug-note.warn[data-v-5afb316e]{color:#fbbf24}.debug-note.error[data-v-5afb316e]{color:#f87171}.meta[data-v-5afb316e]{margin-top:6px;font-size:.75rem;color:var(--text-tertiary);text-align:right}.msg.assistant .meta[data-v-5afb316e]{text-align:left}.lightbox-backdrop{position:fixed;inset:0;background:#000000e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;display:grid;place-items:center;animation:fadeIn-5afb316e .3s ease}.lightbox-card{position:relative;max-width:90vw;max-height:90vh;animation:scaleIn-5afb316e .3s cubic-bezier(.34,1.56,.64,1)}.lightbox-card img{max-width:100%;max-height:90vh;border-radius:16px;box-shadow:0 0 50px #7000ff4d;border:1px solid rgba(255,255,255,.1)}.lightbox-close{position:absolute;top:-40px;right:0;background:transparent;border:none;color:#fff;font-size:1rem;cursor:pointer;opacity:.8}.lightbox-close:hover{opacity:1}@keyframes fadeIn-5afb316e{0%{opacity:0}to{opacity:1}}@keyframes scaleIn-5afb316e{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}@media(max-width:768px){.msg[data-v-5afb316e]{max-width:96%;gap:10px}.avatar[data-v-5afb316e]{width:36px;height:36px}.bubble[data-v-5afb316e]{padding:14px 18px;font-size:.9rem}.bubble[data-v-5afb316e]:has(.edit-container){backdrop-filter:none;-webkit-backdrop-filter:none;background:#141423f2!important}}.chat[data-v-63feaad9]{max-width:920px;width:calc(100% - 32px);flex:1;min-height:0;background:transparent;border:none;border-radius:0;padding:14px 0;box-shadow:none;overflow-y:auto;display:grid;gap:10px;margin:0 auto;align-content:flex-start}.typing-indicator[data-v-63feaad9]{display:flex;align-items:center;gap:8px;padding:12px 14px;background:linear-gradient(180deg,#1c2442f2,#1c2442bf);border:1px solid rgba(255,255,255,.12);border-radius:14px;width:fit-content}.typing-dot[data-v-63feaad9]{width:8px;height:8px;border-radius:50%;background:#7a9eff;animation:bounce-63feaad9 1.4s ease-in-out infinite}.typing-dot[data-v-63feaad9]:nth-child(1){animation-delay:-.32s}.typing-dot[data-v-63feaad9]:nth-child(2){animation-delay:-.16s}.typing-text[data-v-63feaad9]{font-size:12px;color:#a8d5ff;margin-left:4px}@keyframes bounce-63feaad9{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1);opacity:1}}.composer[data-v-a7dd1f02]{display:grid;grid-template-columns:1fr auto;gap:10px;margin:12px auto;max-width:920px;width:calc(100% - 32px);align-items:start}.input-wrapper[data-v-a7dd1f02]{position:relative;border-radius:12px;padding:2px;background:transparent;transition:all .3s ease}.input-wrapper.rainbow-active[data-v-a7dd1f02]{background:linear-gradient(90deg,red,#ff7f00,#ff0,#0f0,#00f,indigo,#8f00ff,red,#ff7f00,#ff0,#0f0,#00f,indigo,#8f00ff,red);background-size:200% 100%;animation:rainbow-a7dd1f02 4s linear infinite;box-shadow:0 0 15px #fff3}@keyframes rainbow-a7dd1f02{0%{background-position:0% 50%}to{background-position:100% 50%}}.input[data-v-a7dd1f02]{width:100%;padding:14px;background:var(--card);color:#e6e9ef;border:1px solid var(--border);border-radius:10px;font-size:15px;font-family:inherit;transition:border-color .2s,box-shadow .2s;display:block;resize:none;overflow-y:auto;max-height:200px;line-height:1.5}.input-wrapper.rainbow-active .input[data-v-a7dd1f02]{border-color:transparent;background:#1a1a1a}.input[data-v-a7dd1f02]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}.input[data-v-a7dd1f02]:disabled{opacity:.7;cursor:not-allowed;color:#ffffff80}.send-btn[data-v-a7dd1f02]{padding:14px 24px;background:var(--accent-gradient);color:#fff;border:none;border-radius:10px;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap;align-self:start}.send-btn[data-v-a7dd1f02]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #0003;filter:brightness(1.1)}.send-btn[data-v-a7dd1f02]:disabled{background:var(--muted);color:var(--text-tertiary);cursor:not-allowed;transform:none}.modal[data-v-d0707026]{position:fixed;inset:0;background:#000000b3;border:none;border-radius:16px;padding:0;max-width:500px;width:90%;max-height:90vh;margin:auto}.modal[data-v-d0707026]::backdrop{background:#00000080}.modal-card[data-v-d0707026]{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:24px;display:flex;flex-direction:column;gap:16px;height:100%}h2[data-v-d0707026]{margin:0;font-size:18px;font-weight:600}.field[data-v-d0707026]{display:flex;flex-direction:column;gap:8px}.field span[data-v-d0707026]{font-size:14px;color:#e6e9ef;font-weight:500}.field input[data-v-d0707026]{padding:10px 12px;background:#ffffff0d;color:#e6e9ef;border:1px solid var(--border);border-radius:8px;font-size:14px;font-family:inherit}.field input[data-v-d0707026]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}.field small[data-v-d0707026]{font-size:12px;color:#e6e9ef}menu[data-v-d0707026]{display:flex;gap:8px;justify-content:flex-end;margin:8px 0 0;padding:16px 0 0;border-top:1px solid var(--border)}.primary-btn[data-v-d0707026],.secondary-btn[data-v-d0707026]{padding:10px 16px;border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;transition:opacity .2s;border:1px solid transparent}.primary-btn[data-v-d0707026]{background:linear-gradient(180deg,var(--accent),var(--primary));color:#fff}.primary-btn[data-v-d0707026]:hover{opacity:.9}.secondary-btn[data-v-d0707026]{background:var(--card);color:#e6e9ef;border:1px solid var(--border)}.secondary-btn[data-v-d0707026]:hover{border-color:#445}.modal[data-v-6089de93]{position:fixed;inset:0;background:#000000b3;border:none;border-radius:16px;padding:0;max-width:500px;width:90%;max-height:90vh;margin:auto}.modal[data-v-6089de93]::backdrop{background:#00000080}.modal-card[data-v-6089de93]{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:24px;display:flex;flex-direction:column;gap:16px}.error-card h2[data-v-6089de93]{margin:0;font-size:18px;font-weight:600;color:#f99}.error-message[data-v-6089de93]{margin:0;font-size:14px;color:#e6e9ef}.error-details[data-v-6089de93]{background:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:12px;font-size:12px;overflow-y:auto;max-height:200px;color:#aeb7cb;font-family:Monaco,Menlo,monospace;white-space:pre-wrap;word-break:break-word}.trace-id[data-v-6089de93]{padding:8px 0;border-top:1px solid rgba(255,255,255,.1);color:#aeb7cb;font-size:12px}.trace-code[data-v-6089de93]{background:#0000004d;padding:2px 6px;border-radius:4px;font-family:Monaco,Menlo,monospace;cursor:pointer;transition:background .2s}.trace-code[data-v-6089de93]:hover{background:#00000080}menu[data-v-6089de93]{display:flex;gap:8px;justify-content:flex-end;margin:8px 0 0;padding:16px 0 0;border-top:1px solid var(--border)}.primary-btn[data-v-6089de93]{padding:10px 16px;background:linear-gradient(180deg,var(--accent),var(--primary));color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;transition:opacity .2s}.primary-btn[data-v-6089de93]:hover{opacity:.9}.toast-container[data-v-7bf13d32]{position:fixed;left:50%;bottom:24px;transform:translate(-50%);z-index:1000;pointer-events:none}.toast[data-v-7bf13d32]{position:absolute;left:50%;transform:translate(-50%);padding:10px 14px;background:#14182cf2;border:1px solid rgba(255,255,255,.15);border-radius:10px;box-shadow:0 8px 30px #00000059;color:#e6e9ef;font-size:14px;white-space:nowrap;cursor:pointer;pointer-events:auto;animation:slideUp-7bf13d32 .3s ease-out}.toast--success[data-v-7bf13d32]{border-color:#64c8644d;color:#a8ffaa}.toast--error[data-v-7bf13d32]{border-color:#ff64644d;color:#faa}.toast--warning[data-v-7bf13d32]{border-color:#ffc8644d;color:#fd9}.toast--info[data-v-7bf13d32]{border-color:#6496ff4d;color:#a8d5ff}@keyframes slideUp-7bf13d32{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.toast-list-enter-active[data-v-7bf13d32],.toast-list-leave-active[data-v-7bf13d32]{transition:all .3s ease}.toast-list-enter-from[data-v-7bf13d32],.toast-list-leave-to[data-v-7bf13d32]{opacity:0;transform:translate(-50%) translateY(20px)}.studio[data-v-737bc62d]{display:flex;flex-direction:column;flex:1;min-height:0}.studio-toolbar[data-v-737bc62d]{display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:920px;width:calc(100% - 32px);margin:0 auto;padding:6px 0}.toggle[data-v-737bc62d]{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#cdd3e2;cursor:pointer}.secondary-btn[data-v-737bc62d]{padding:8px 14px;background:var(--card);color:#e6e9ef;border:1px solid var(--border);border-radius:8px;font-weight:600;cursor:pointer}.secondary-btn[data-v-737bc62d]:disabled{opacity:.5;cursor:not-allowed}.conflict-alert[data-v-4f599ea5]{background:#ffbb0014;border:1px solid rgba(255,187,0,.4);border-radius:10px;padding:12px 14px;margin:8px 0;color:#ffd877;font-size:13px}.header[data-v-4f599ea5]{display:flex;align-items:center;gap:8px}.header strong[data-v-4f599ea5]{flex:1}.icon[data-v-4f599ea5]{font-size:16px}.dismiss[data-v-4f599ea5]{background:none;border:none;color:inherit;cursor:pointer;font-size:14px;padding:2px 6px}.candidates[data-v-4f599ea5]{list-style:none;padding:0;margin:8px 0 0;display:flex;flex-direction:column;gap:6px}.candidate[data-v-4f599ea5]{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding:6px 8px;background:#0003;border-radius:6px}.name[data-v-4f599ea5]{font-weight:600;color:#fff}.score[data-v-4f599ea5]{font-variant-numeric:tabular-nums;opacity:.8}.snippet[data-v-4f599ea5]{grid-column:1 / -1;opacity:.85;font-size:12px}.modal-overlay[data-v-1aeb320c]{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100}.modal-card[data-v-1aeb320c]{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:24px;width:min(520px,92vw);max-height:90vh;overflow-y:auto;display:flex;flex-direction:column;gap:14px}h2[data-v-1aeb320c]{margin:0;font-size:18px}.field[data-v-1aeb320c]{display:flex;flex-direction:column;gap:6px}.field span[data-v-1aeb320c]{font-size:13px;font-weight:500}.field input[data-v-1aeb320c],.field select[data-v-1aeb320c],.field textarea[data-v-1aeb320c]{padding:10px 12px;background:#ffffff0d;color:#e6e9ef;border:1px solid var(--border);border-radius:8px;font-family:inherit;font-size:14px}.field textarea[data-v-1aeb320c]{resize:vertical}.error[data-v-1aeb320c]{color:#ff8585;font-size:13px}menu[data-v-1aeb320c]{display:flex;justify-content:flex-end;gap:8px;margin:0;padding:14px 0 0;border-top:1px solid var(--border)}.primary-btn[data-v-1aeb320c],.secondary-btn[data-v-1aeb320c]{padding:10px 16px;border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;border:1px solid transparent}.primary-btn[data-v-1aeb320c]{background:linear-gradient(180deg,var(--accent),var(--primary));color:#fff}.primary-btn[data-v-1aeb320c]:disabled{opacity:.5;cursor:not-allowed}.secondary-btn[data-v-1aeb320c]{background:var(--card);color:#e6e9ef;border:1px solid var(--border)}.library[data-v-2c18d081]{display:flex;flex-direction:column;gap:12px;max-width:1100px;width:calc(100% - 32px);margin:12px auto}.toolbar[data-v-2c18d081]{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.search[data-v-2c18d081]{flex:1 1 240px}.toolbar input[data-v-2c18d081],.toolbar select[data-v-2c18d081]{padding:8px 10px;background:#ffffff0d;color:#e6e9ef;border:1px solid var(--border);border-radius:8px;font-size:14px;font-family:inherit}.primary-btn[data-v-2c18d081]{padding:8px 14px;background:linear-gradient(180deg,var(--accent),var(--primary));color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer}.empty-state[data-v-2c18d081]{padding:24px;text-align:center;color:var(--muted);background:var(--card);border:1px dashed var(--border);border-radius:12px}.empty-state.warning[data-v-2c18d081]{color:#ffd877;border-color:#fb06}.rules-table[data-v-2c18d081]{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--border);border-radius:12px;overflow:hidden}.rules-table th[data-v-2c18d081],.rules-table td[data-v-2c18d081]{padding:10px 12px;text-align:left;border-bottom:1px solid var(--border);font-size:13px}.rules-table th[data-v-2c18d081]{background:#ffffff08;font-weight:600}.summary-cell[data-v-2c18d081]{color:var(--muted)}.actions-col[data-v-2c18d081]{width:1%;white-space:nowrap}.actions[data-v-2c18d081]{display:flex;gap:8px}.link-btn[data-v-2c18d081]{background:none;border:none;color:var(--accent);cursor:pointer;font-size:13px;padding:4px 6px}.link-btn.danger[data-v-2c18d081]{color:#ff8585}.badge[data-v-2c18d081]{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600}.badge-normal[data-v-2c18d081]{background:#788cc833;color:#9bb1e0}.badge-high[data-v-2c18d081]{background:#ffaa3c33;color:#ffc36e}.badge-absolute[data-v-2c18d081]{background:#ff505033;color:#ff8585}.conflict-row td[data-v-2c18d081]{padding:0 12px 8px}.world-rules-view[data-v-99b14802]{display:flex;flex-direction:column;flex:1;min-height:0}.sub-tabs[data-v-99b14802]{display:flex;gap:6px;padding:6px 16px;max-width:920px;width:calc(100% - 32px);margin:0 auto}.sub-tab[data-v-99b14802]{padding:6px 14px;background:var(--card);color:#cdd3e2;border:1px solid var(--border);border-radius:999px;cursor:pointer;font-size:13px;font-weight:600}.sub-tab.active[data-v-99b14802]{background:linear-gradient(180deg,var(--accent),var(--primary));color:#fff;border-color:transparent}.modal-overlay[data-v-9fcf9395]{position:fixed;inset:0;background:#000000a3;display:flex;align-items:center;justify-content:center;z-index:100}.modal-card[data-v-9fcf9395]{width:min(880px,94vw);max-height:92vh;overflow-y:auto;background:var(--card);border:1px solid var(--border);border-radius:18px;padding:24px;display:flex;flex-direction:column;gap:16px}h2[data-v-9fcf9395]{margin:0;font-size:20px}.grid[data-v-9fcf9395]{display:grid;gap:12px}.two-col[data-v-9fcf9395]{grid-template-columns:repeat(2,minmax(0,1fr))}.two-col-span[data-v-9fcf9395]{grid-column:1 / -1}.field[data-v-9fcf9395]{display:flex;flex-direction:column;gap:6px}.field span[data-v-9fcf9395]{font-size:13px;font-weight:600}.field input[data-v-9fcf9395],.field textarea[data-v-9fcf9395]{width:100%;box-sizing:border-box;padding:10px 12px;background:#ffffff0d;color:#e6e9ef;border:1px solid var(--border);border-radius:10px;font-family:inherit;font-size:14px}.field textarea[data-v-9fcf9395]{resize:vertical}.error[data-v-9fcf9395]{color:#ff8585;font-size:13px}.warning-banner[data-v-9fcf9395]{color:#ffd877;font-size:13px;border:1px solid rgba(255,187,0,.4);border-radius:10px;padding:10px 12px;background:#ffbb0014}menu[data-v-9fcf9395]{display:flex;justify-content:flex-end;gap:8px;margin:0;padding:16px 0 0;border-top:1px solid var(--border)}.primary-btn[data-v-9fcf9395],.secondary-btn[data-v-9fcf9395]{padding:10px 16px;border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;border:1px solid transparent}.primary-btn[data-v-9fcf9395]{background:linear-gradient(180deg,var(--accent),var(--primary));color:#fff}.primary-btn[data-v-9fcf9395]:disabled,.secondary-btn[data-v-9fcf9395]:disabled{opacity:.5;cursor:not-allowed}.secondary-btn[data-v-9fcf9395]{background:var(--card);color:#e6e9ef;border-color:var(--border)}@media(max-width:720px){.two-col[data-v-9fcf9395]{grid-template-columns:1fr}}.library[data-v-4da25c4d]{display:flex;flex-direction:column;gap:12px;max-width:1100px;width:calc(100% - 32px);margin:12px auto 24px}.toolbar[data-v-4da25c4d]{display:flex;align-items:end;justify-content:space-between;gap:12px;flex-wrap:wrap}.toolbar h2[data-v-4da25c4d]{margin:0;font-size:24px}.toolbar p[data-v-4da25c4d]{margin:4px 0 0;color:var(--muted)}.primary-btn[data-v-4da25c4d]{padding:10px 16px;background:linear-gradient(180deg,var(--accent),var(--primary));color:#fff;border:none;border-radius:10px;font-weight:600;cursor:pointer}.empty-state[data-v-4da25c4d]{padding:24px;text-align:center;color:var(--muted);background:var(--card);border:1px dashed var(--border);border-radius:12px}.empty-state.warning[data-v-4da25c4d]{color:#ffd877;border-color:#fb06}.characters-table[data-v-4da25c4d]{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--border);border-radius:12px;overflow:hidden}.characters-table th[data-v-4da25c4d],.characters-table td[data-v-4da25c4d]{padding:12px;text-align:left;border-bottom:1px solid var(--border)}.characters-table th[data-v-4da25c4d]{background:#ffffff08;font-size:13px;font-weight:600}.actions-col[data-v-4da25c4d]{width:1%;white-space:nowrap}.actions[data-v-4da25c4d]{display:flex;gap:8px}.link-btn[data-v-4da25c4d]{background:none;border:none;color:var(--accent);cursor:pointer;padding:4px 6px}.link-btn.danger[data-v-4da25c4d]{color:#ff8585}.studio[data-v-9073ade8]{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto}.intro-card[data-v-9073ade8]{width:calc(100% - 32px);max-width:1100px;margin:12px auto 0;padding:22px 24px;background:radial-gradient(circle at top right,rgba(255,196,87,.18),transparent 34%),linear-gradient(135deg,#151a23fa,#1e2834eb);border:1px solid rgba(255,255,255,.08);border-radius:20px;box-shadow:var(--shadow)}.eyebrow[data-v-9073ade8]{margin:0 0 6px;color:#f0c96a;text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:700}h1[data-v-9073ade8]{margin:0;font-size:32px}.intro-card p[data-v-9073ade8]:last-child{margin-bottom:0;color:var(--muted);max-width:64ch}.character-view[data-v-ca775466]{display:flex;flex-direction:column;flex:1;min-height:0}.sub-tabs[data-v-ca775466]{display:flex;gap:6px;padding:6px 16px;max-width:920px;width:calc(100% - 32px);margin:0 auto}.sub-tab[data-v-ca775466]{padding:6px 14px;background:var(--card);color:#cdd3e2;border:1px solid var(--border);border-radius:999px;cursor:pointer;font-size:13px;font-weight:600}.sub-tab.active[data-v-ca775466]{background:linear-gradient(180deg,var(--accent),var(--primary));color:#fff;border-color:transparent}.chat-surface[data-v-ca775466]{display:flex;flex-direction:column;flex:1;min-height:0}.app[data-v-7896628d]{display:flex;flex-direction:column;height:var(--app-height, 100dvh);overflow:hidden}:root{--bg-deep: #050505;--accent-primary: #7000ff;--accent-secondary: #00c6ff;--accent-gradient: linear-gradient(135deg, #7000ff 0%, #00c6ff 100%);--glass-surface: rgba(20, 20, 30, .4);--glass-surface-hover: rgba(30, 30, 45, .5);--glass-border: rgba(255, 255, 255, .08);--glass-highlight: rgba(255, 255, 255, .15);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .5);--text-primary: #ffffff;--text-secondary: rgba(255, 255, 255, .65);--text-tertiary: rgba(255, 255, 255, .4);--success: #00f260;--error: #ff0055;--warning: #f7b733;--radius-xl: 24px;--radius-lg: 16px;--radius-md: 12px;--radius-sm: 8px;--font-sans: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box;outline-color:var(--accent-secondary)}html,body{height:100%;margin:0;padding:0;overflow:hidden}body{background-color:var(--bg-deep);background-image:radial-gradient(circle at 0% 0%,rgba(112,0,255,.15),transparent 40%),radial-gradient(circle at 100% 0%,rgba(0,198,255,.1),transparent 40%),radial-gradient(circle at 100% 100%,rgba(112,0,255,.1),transparent 40%),radial-gradient(circle at 0% 100%,rgba(0,198,255,.05),transparent 40%);background-attachment:fixed;color:var(--text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#fff3}#app{height:var(--app-height, 100dvh);display:flex;flex-direction:column;position:relative;z-index:1}.glass-panel{background:var(--glass-surface);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-top:1px solid var(--glass-highlight);box-shadow:var(--glass-shadow)}.app-header{margin:20px auto 0;width:calc(100% - 40px);max-width:1000px;padding:16px 24px;border-radius:var(--radius-lg);display:flex;align-items:center;gap:16px;background:#14141e99;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--glass-border);box-shadow:0 10px 40px #0003;z-index:10}.title-wrap{flex:1}.title{margin:0;font-size:1.25rem;font-weight:700;background:linear-gradient(to right,#fff,#ccc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-.02em}.subtitle{margin:4px 0 0;font-size:.85rem;color:var(--text-secondary)}.status-pill{padding:6px 12px;border-radius:100px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:var(--text-secondary);display:flex;align-items:center;gap:6px}.status-pill:before{content:"";display:block;width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor}.status-pill.thinking{color:var(--accent-secondary)}.status-pill.error{color:var(--error)}.status-pill.idle{color:var(--success)}.header-buttons{display:flex;gap:8px}.icon-btn{width:40px;height:40px;border-radius:12px;border:1px solid transparent;background:#ffffff0d;color:var(--text-primary);cursor:pointer;display:grid;place-items:center;transition:all .2s ease}.icon-btn:hover{background:#ffffff1a;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.mode-switch{margin:16px auto;width:calc(100% - 40px);max-width:1000px;display:flex;justify-content:space-between;align-items:center}.segmented{background:#0000004d;padding:4px;border-radius:100px;display:inline-flex;position:relative;border:1px solid var(--glass-border)}.segmented input{display:none}.segmented label{padding:8px 20px;cursor:pointer;font-size:.9rem;font-weight:500;color:var(--text-secondary);z-index:2;transition:color .3s}.segmented input:checked+label{color:#fff}.segmented-thumb{position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);background:var(--accent-gradient);border-radius:100px;z-index:1;transition:transform .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 10px #0000004d}.segmented input:nth-of-type(1):checked~.segmented-thumb{transform:translate(0)}.segmented input:nth-of-type(2):checked~.segmented-thumb{transform:translate(100%)}.chat{flex:1;margin:0 auto;width:calc(100% - 40px);max-width:1000px;border-radius:var(--radius-lg);padding:20px;overflow-y:auto;overflow-anchor:none;display:flex;flex-direction:column;gap:24px;background:#ffffff05;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--glass-border);box-shadow:inset 0 0 20px #0003}.msg{display:flex;gap:16px;animation:slideIn .3s cubic-bezier(.2,.8,.2,1);max-width:85%}.msg.user{align-self:flex-end;flex-direction:row-reverse}.msg.assistant{align-self:flex-start}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.avatar{width:48px;height:48px;border-radius:50%;overflow:hidden;border:2px solid rgba(255,255,255,.15);box-shadow:0 0 20px #7000ff33;flex-shrink:0;transition:transform .3s ease,box-shadow .3s ease}.avatar:hover{transform:scale(1.05);box-shadow:0 0 25px #00c6ff66;border-color:#fff6}.avatar img{width:100%;height:100%;object-fit:cover}.bubble{padding:18px 24px;border-radius:24px;font-size:.95rem;line-height:1.6;position:relative;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 8px 32px #00000026;transition:transform .2s}.msg.user .bubble{background:linear-gradient(135deg,#7000ff66,#00c6ff66);color:#fff;border-bottom-right-radius:4px;border:1px solid rgba(255,255,255,.2);border-top:1px solid rgba(255,255,255,.3);text-shadow:0 1px 2px rgba(0,0,0,.1)}.msg.assistant .bubble{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-top:1px solid rgba(255,255,255,.15);border-bottom-left-radius:4px;color:var(--text-primary)}.msg.system .bubble{background:#ffffff05;border:1px dashed rgba(255,255,255,.1);color:var(--text-secondary);font-size:.85rem;text-align:center;width:100%;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.meta{margin-top:6px;font-size:.75rem;color:var(--text-tertiary);text-align:right}.msg.assistant .meta{text-align:left}html[data-edit-mode=true][data-keyboard-open=true] .chat{height:var(--app-height, 100dvh);flex-shrink:0;transition:height .15s ease-out}@media(max-width:768px){.edit-textarea{scroll-margin-bottom:calc(var(--keyboard-inset, 0px) + 20px)}}.composer{margin:20px auto;width:calc(100% - 40px);max-width:1000px;display:flex;gap:12px;position:relative}.input{flex:1;background:#14141ecc;border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:16px 20px;color:#fff;font-size:1rem;font-family:inherit;transition:all .2s;box-shadow:0 4px 20px #0003}.input:focus{background:#1e1e2de6;border-color:var(--accent-secondary);box-shadow:0 0 0 4px #00c6ff26;outline:none}.send-btn{background:var(--accent-gradient);border:none;border-radius:var(--radius-md);padding:0 24px;color:#fff;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 4px 15px #7000ff4d}.send-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #7000ff66}.send-btn:disabled{opacity:.5;cursor:not-allowed;filter:grayscale(1)}.modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:grid;place-items:center;z-index:100;animation:fadeIn .2s ease}.modal-content{background:#191923e6;border:1px solid var(--glass-border);border-top:1px solid var(--glass-highlight);padding:32px;border-radius:var(--radius-xl);width:90%;max-width:500px;box-shadow:0 20px 50px #00000080;animation:scaleIn .3s cubic-bezier(.34,1.56,.64,1)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.modal-title{font-size:1.5rem;margin:0 0 24px;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:var(--text-secondary);font-size:.9rem}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:32px}.primary-btn{background:var(--accent-gradient);color:#fff;border:none;padding:10px 20px;border-radius:8px;font-weight:600;cursor:pointer;transition:transform .2s}.primary-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #7000ff4d}.secondary-btn{background:transparent;border:1px solid var(--glass-border);color:var(--text-secondary);padding:10px 20px;border-radius:8px;cursor:pointer;transition:all .2s}.secondary-btn:hover{background:#ffffff0d;color:#fff}.message-actions{display:flex;gap:8px;margin-top:12px;justify-content:flex-end;opacity:0;transform:translateY(5px);transition:all .2s ease}.msg:hover .message-actions{opacity:1;transform:translateY(0)}.action-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:var(--text-secondary);width:32px;height:32px;border-radius:8px;display:grid;place-items:center;cursor:pointer;transition:all .2s cubic-bezier(.34,1.56,.64,1);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.action-btn:hover{background:#ffffff26;color:#fff;transform:scale(1.1);box-shadow:0 4px 12px #0003;border-color:#ffffff4d}.action-btn.delete-btn:hover{background:#f053;border-color:#f056;color:#ff4d7d}.action-btn.edit-btn:hover{background:#00c6ff33;border-color:#00c6ff66;color:#4dcbff}.action-btn.reroll-btn:hover{background:#7000ff33;border-color:#7000ff66;color:#b366ff}.toast-container{position:fixed;bottom:24px;right:24px;display:flex;flex-direction:column;gap:10px;z-index:200}.toast{background:#14141ed9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--glass-border);padding:16px 20px;border-radius:var(--radius-md);color:#fff;box-shadow:0 10px 30px #0000004d;display:flex;align-items:center;gap:12px;min-width:300px;animation:slideLeft .3s ease;border-left:4px solid var(--accent-primary)}.toast.success{border-left-color:var(--success)}.toast.error{border-left-color:var(--error)}.toast.warning{border-left-color:var(--warning)}@keyframes slideLeft{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@media(max-width:768px){.app-header{margin:10px auto 0;padding:12px 16px}.chat{width:100%;border-radius:0;border-left:none;border-right:none}.composer{margin:0!important;padding:12px;background:#0006;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:100%!important;max-width:100%!important;border-top:1px solid rgba(255,255,255,.1);padding-bottom:max(12px,calc(env(safe-area-inset-bottom) + var(--keyboard-inset, 0px)));position:sticky;bottom:0;z-index:100}html[data-edit-mode=true] .chat{backdrop-filter:none;-webkit-backdrop-filter:none;background:#0a0a14f2}html[data-edit-mode=true] .composer{display:none}}
