.arc-nav{padding:var(--space-3);background:var(--color-surface-2, rgba(255, 255, 255, .04));border-radius:var(--radius-md, 8px);border:1px solid var(--color-border, rgba(255, 255, 255, .08));font-size:12px;color:var(--color-text-muted)}.arc-nav__header{display:flex;align-items:center;gap:6px;margin-bottom:8px;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.arc-nav__progress-text{margin-left:auto;font-variant-numeric:tabular-nums}.arc-nav__over-target{margin-left:4px;color:var(--color-warning, #f59e0b);font-size:10px;font-weight:600;white-space:nowrap;cursor:default}.arc-nav__bar-wrap{height:4px;background:var(--color-surface-3, rgba(255, 255, 255, .08));border-radius:2px;position:relative;overflow:visible}.arc-nav__bar-wrap--full{margin-bottom:12px}.arc-nav__bar-fill{height:100%;background:var(--color-accent, #7c3aed);border-radius:2px;transition:width .4s ease}.arc-nav__marker{position:absolute;top:-2px;width:2px;height:8px;background:var(--color-text-muted);border-radius:1px;transform:translate(-50%);opacity:.5}.arc-nav--compact{padding:var(--space-2) var(--space-3);display:flex;align-items:center;gap:8px;background:transparent;border:none}.arc-nav--compact .arc-nav__bar-wrap{flex:1}.arc-nav__compact-label{font-size:11px;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.arc-nav__milestones{display:flex;flex-direction:column;gap:6px}.arc-nav__milestone{display:flex;align-items:flex-start;gap:8px;padding:4px 0;opacity:.5;transition:opacity .2s}.arc-nav__milestone--current{opacity:1}.arc-nav__milestone--done{opacity:.4}.arc-nav__milestone-dot{flex-shrink:0;width:16px;text-align:center;font-size:10px;margin-top:1px;color:var(--color-accent, #7c3aed)}.arc-nav__milestone--current .arc-nav__milestone-dot{color:var(--color-accent, #7c3aed)}.arc-nav__milestone-info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.arc-nav__milestone-title{font-size:12px;font-weight:500;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.arc-nav__milestone--current .arc-nav__milestone-title{color:var(--color-accent, #7c3aed)}.arc-nav__milestone-range{font-size:10px;color:var(--color-text-muted)}.arc-nav__milestone-emotion{font-size:10px;color:var(--color-text-muted);font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.arc-nav__next{margin-top:8px;padding-top:8px;border-top:1px solid var(--color-border, rgba(255, 255, 255, .08));display:flex;align-items:center;gap:4px;font-size:11px;color:var(--color-text-muted)}.arc-nav__next strong{color:var(--color-text)}.arc-nav__next-range{margin-left:auto;font-variant-numeric:tabular-nums}.arc-nav__empty{display:flex;align-items:center;gap:6px;font-size:11px;font-style:italic;opacity:.6}.theme-picker{display:grid;gap:8px}.theme-picker--settings{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.theme-picker--sidebar{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.theme-picker__option{min-width:0;min-height:44px;display:grid;grid-template-columns:auto minmax(0,1fr) 22px;align-items:center;gap:12px;padding:12px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-1, var(--color-surface));color:var(--color-text-primary);text-align:left;cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast)}.theme-picker__option:hover{border-color:var(--color-border-strong);background:var(--color-bg-hover)}.theme-picker__option:focus-visible{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-muted)}.theme-picker__option.is-selected{border-color:var(--color-accent);background:var(--color-accent-muted)}.theme-picker__preview{width:42px;height:32px;display:grid;grid-template-columns:repeat(3,1fr);overflow:hidden;border:1px solid var(--color-border-strong);border-radius:8px}.theme-picker__preview span{display:block}.theme-picker__copy{min-width:0;display:grid;gap:3px}.theme-picker__name{display:flex;align-items:center;gap:7px;color:var(--color-text-heading, var(--color-text-primary));font-size:var(--text-sm);font-weight:var(--weight-semibold)}.theme-picker__description{color:var(--color-text-secondary);font-size:var(--text-xs);line-height:1.45}.theme-picker__check{width:22px;height:22px;display:grid;place-items:center;border-radius:var(--radius-full);color:#fff;background:transparent}.theme-picker__option.is-selected .theme-picker__check{background:var(--color-accent-fill, var(--color-accent))}.theme-picker--sidebar .theme-picker__option{min-height:72px;grid-template-columns:minmax(0,1fr) 16px;align-content:start;gap:6px;padding:7px;border-radius:var(--radius-md)}.theme-picker--sidebar .theme-picker__preview{width:100%;height:20px;grid-column:1 / -1}.theme-picker--sidebar .theme-picker__name{align-items:flex-start;gap:4px;font-size:11px;line-height:1.2}.theme-picker--sidebar .theme-picker__name svg{width:12px;height:12px;flex:0 0 auto}.theme-picker--sidebar .theme-picker__description{display:none}.theme-picker--sidebar .theme-picker__check{width:16px;height:16px}.theme-picker--sidebar .theme-picker__check svg{width:12px;height:12px}.theme-picker--sheet{gap:18px;padding:14px 16px calc(18px + env(safe-area-inset-bottom,0px))}.theme-picker__group{display:grid;gap:8px}.theme-picker__group-title{margin:0;color:var(--color-text-secondary);font-size:var(--text-xs);font-weight:var(--weight-bold)}.theme-picker__group-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.theme-picker--sheet .theme-picker__option{min-height:76px;grid-template-columns:minmax(0,1fr) 18px;align-content:start;gap:7px;padding:8px;border-radius:10px}.theme-picker--sheet .theme-picker__preview{width:100%;height:24px;grid-column:1 / -1}.theme-picker--sheet .theme-picker__name{align-items:flex-start;font-size:12px;line-height:1.2}.theme-picker--sheet .theme-picker__description{display:none}.theme-picker--sheet .theme-picker__check{width:18px;height:18px}@media(max-width:360px){.theme-picker__group-grid{gap:6px}.theme-picker--sheet .theme-picker__option{padding:7px}}@media(prefers-reduced-motion:reduce){.theme-picker__option{transition:none}}.sidebar{width:var(--sidebar-width);height:100vh;background:var(--color-bg-sidebar, var(--color-bg-secondary));border-right:1px solid var(--color-border);display:flex;flex-direction:column;position:relative;z-index:var(--z-sidebar);overflow:hidden;flex-shrink:0}.sidebar--collapsed{width:var(--sidebar-collapsed-width)}.sidebar--auto-collapsed .sidebar-logo{justify-content:center}.sidebar-logo{display:flex;align-items:center;gap:10px;padding:10px var(--space-4);height:var(--topbar-height);border-bottom:1px solid var(--color-border)}.sidebar-logo-image{width:40px;height:40px;flex:0 0 40px;display:block;object-fit:contain}.sidebar-logo-text{font-size:var(--text-md);font-weight:var(--weight-bold);color:var(--color-text-heading, var(--color-text-primary));white-space:nowrap}.sidebar-toggle{margin-left:auto;min-width:32px;min-height:32px;flex-shrink:0}.sidebar--collapsed .sidebar-toggle{margin-left:auto}.sidebar--collapsed .sidebar-logo{gap:0;padding-inline:4px}.sidebar--collapsed .sidebar-logo-image{width:40px;height:40px;flex-basis:40px}.sidebar--collapsed:not(.sidebar--auto-collapsed) .sidebar-logo-image{display:none}.sidebar--collapsed .sidebar-toggle{width:44px;min-width:44px;min-height:44px;margin:0}.sidebar-project-container{border-bottom:1px solid var(--color-border);background:var(--color-bg-tertiary, rgba(0, 0, 0, .2))}.sidebar-project{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--text-xs);color:var(--color-accent);cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast)}.sidebar-project:hover{background:var(--color-bg-hover)}.sidebar-nav{flex:1;padding:var(--space-2);display:flex;flex-direction:column;gap:2px;overflow-y:auto}.sidebar-divider{height:1px;background:var(--color-border);margin:var(--space-2) var(--space-2)}.sidebar-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-secondary);background:none;border:none;border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast),opacity var(--transition-fast);position:relative;width:100%;text-align:left;height:38px}.sidebar-item:hover:not(.sidebar-item--disabled){background:var(--color-bg-hover);color:var(--color-text-primary)}.sidebar-item--active{background:var(--color-accent-muted);color:var(--color-accent)}.sidebar-item--active:hover{background:var(--color-accent-muted)!important;color:var(--color-accent)!important}.sidebar-item--disabled{color:var(--color-text-muted);background:color-mix(in srgb,#000 24%,transparent);opacity:.58;cursor:help}.sidebar-item--disabled:hover,.sidebar-item--disabled:focus-visible{color:var(--color-text-secondary);background:color-mix(in srgb,#000 32%,var(--color-bg-hover));opacity:.78}.sidebar-item--disabled:focus-visible{outline:2px solid color-mix(in srgb,var(--color-accent) 72%,transparent);outline-offset:-2px}.sidebar-project-context{margin:4px var(--space-3) 2px;color:var(--color-text-secondary);font-size:var(--text-xs);line-height:1.45}.sidebar-project-gate{display:grid;gap:8px;margin:0 var(--space-2) var(--space-2);padding:10px;border:1px solid color-mix(in srgb,var(--color-accent) 30%,var(--color-border));border-radius:var(--radius-md);background:var(--color-bg-elevated);color:var(--color-text-secondary)}.sidebar-project-gate--collapsed{position:fixed;left:calc(var(--sidebar-collapsed-width) + 8px);bottom:12px;z-index:var(--z-dropdown);width:270px;margin:0}.sidebar-project-gate__heading,.sidebar-project-gate__actions{display:flex;align-items:center;gap:7px}.sidebar-project-gate__heading{color:var(--color-text-primary);font-size:var(--text-sm)}.sidebar-project-gate p{margin:0;font-size:var(--text-xs);line-height:1.45}.sidebar-project-gate__actions{flex-wrap:wrap}.sidebar-item--primary:not(.sidebar-item--disabled){color:var(--color-accent)}.sidebar-item-indicator{position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:20px;background:var(--color-accent);border-radius:0 var(--radius-full) var(--radius-full) 0}.sidebar--collapsed .sidebar-item{justify-content:center;padding:var(--space-2)}@media(max-width:1100px){.sidebar{width:var(--sidebar-collapsed-width)}.sidebar-logo{gap:0;padding-inline:4px}}@media(pointer:coarse){.sidebar-item,.sidebar-theme-trigger,.sidebar-toggle{min-height:44px}}.sidebar-footer{padding:var(--space-3);border-top:1px solid var(--color-border);display:flex;justify-content:center}.sidebar-theme-trigger{width:100%;min-height:42px;display:flex;align-items:center;gap:10px;padding:7px 10px;border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--color-text-secondary);font:inherit;text-align:left;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.sidebar-theme-trigger:hover,.sidebar-theme-trigger[aria-expanded=true]{border-color:var(--color-border);background:var(--color-bg-hover);color:var(--color-text-primary)}.sidebar-theme-trigger:focus-visible{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-muted)}.sidebar-theme-trigger--collapsed{width:40px;justify-content:center;padding:7px}.sidebar-theme-trigger__copy{min-width:0;display:grid;gap:1px;font-size:var(--text-xs);font-weight:var(--weight-semibold)}.sidebar-theme-trigger__copy small{overflow:hidden;color:var(--color-text-tertiary);font-size:10px;font-weight:var(--weight-medium);text-overflow:ellipsis;white-space:nowrap}.sidebar-theme-popover{position:fixed;left:12px;bottom:66px;z-index:var(--z-dropdown);width:calc(var(--sidebar-width) - 24px);padding:10px;border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-bg-modal, var(--color-bg-elevated));box-shadow:0 6px 8px #0000002e}.sidebar-theme-popover--collapsed{left:calc(var(--sidebar-collapsed-width) + 8px);bottom:12px;width:240px}.sidebar-theme-popover__header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:2px 2px 9px;color:var(--color-text-heading, var(--color-text-primary));font-size:var(--text-sm)}.sidebar-theme-popover__header span{color:var(--color-text-secondary);font-size:var(--text-xs)}.sidebar-item--coming-soon{opacity:.5}.sidebar-item--coming-soon:hover{opacity:.7}.sidebar-soon-badge{margin-left:auto;font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-accent2, var(--color-accent));background:var(--color-accent-muted, rgba(139, 92, 246, .12));padding:1px 6px;border-radius:var(--radius-full, 9999px);flex-shrink:0}@media(prefers-reduced-motion:reduce){.sidebar,.sidebar-theme-trigger{transition:none}}.job-toast-stack{position:fixed;top:16px;right:16px;display:flex;flex-direction:column;gap:8px;z-index:var(--z-toast);width:min(340px,calc(100vw - 24px))}.job-toast{border:1px solid var(--color-border);border-left:4px solid var(--color-accent2);border-radius:var(--radius-md);background:var(--color-bg-secondary);box-shadow:var(--shadow-md);padding:10px 12px;display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.job-toast--success{border-left-color:var(--color-success)}.job-toast--warning{border-left-color:var(--color-warning)}.job-toast--error{border-left-color:var(--color-danger)}.job-toast__content strong{display:block;font-size:var(--text-sm);color:var(--color-text-primary)}.job-toast__content p{margin-top:4px;font-size:var(--text-xs);color:var(--color-text-secondary)}.job-toast__dismiss{border:0;background:transparent;color:var(--color-text-secondary);cursor:pointer;font-size:var(--text-xs)}.job-queue-panel{position:fixed;right:18px;bottom:18px;width:min(360px,calc(100vw - 24px));max-height:calc(100vh - 36px);display:flex;flex-direction:column;gap:12px;padding:14px;border-radius:var(--radius-lg);z-index:var(--z-topbar);overflow:auto}.job-queue-panel__header{display:flex;align-items:center;justify-content:space-between;gap:8px}.job-queue-panel__actions{display:flex;align-items:center;gap:8px}.job-queue-panel__header h3{font-size:var(--text-md)}.job-queue-panel__header button{border:1px solid var(--color-border);background:var(--color-bg-secondary);color:var(--color-text-secondary);border-radius:var(--radius-md);padding:6px 10px;cursor:pointer}.job-queue-launcher{position:fixed;right:18px;bottom:18px;display:grid;gap:2px;padding:10px 12px;border-radius:var(--radius-lg);z-index:var(--z-topbar);border:1px solid var(--color-border);background:var(--color-bg-secondary);color:var(--color-text-primary);cursor:pointer;min-width:152px;text-align:left}.job-queue-launcher span{font-size:var(--text-xs);color:var(--color-text-secondary)}.job-queue-panel__section{display:flex;flex-direction:column;gap:8px}.job-queue-panel__section h4{font-size:var(--text-sm);color:var(--color-text-secondary)}.job-queue-card{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:10px;background:var(--color-bg-secondary);display:flex;flex-direction:column;gap:8px}.job-queue-card__header{display:flex;align-items:center;justify-content:space-between;gap:8px}.job-queue-card__title{font-size:var(--text-sm);color:var(--color-text-primary);overflow-wrap:anywhere}.job-queue-card__meta{font-size:var(--text-xs);color:var(--color-text-secondary)}.job-queue-card__cancel{border:1px solid var(--color-border);background:transparent;color:var(--color-danger);border-radius:var(--radius-md);padding:6px 10px;width:fit-content;cursor:pointer}.job-queue-status{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary)}.job-queue-status--running{color:var(--color-info)}.job-queue-status--pending{color:var(--color-warning)}.job-queue-status--completed{color:var(--color-success)}.job-queue-status--failed{color:var(--color-danger)}.job-queue-status--cancelled{color:var(--color-text-secondary)}.job-queue-progress{height:6px;background:var(--color-bg-tertiary);border-radius:var(--radius-full);overflow:hidden}.job-queue-progress__fill{height:100%;background:linear-gradient(90deg,var(--color-accent2),var(--color-accent));transition:width var(--transition-normal)}.job-queue-history{list-style:none;display:flex;flex-direction:column;gap:6px}.job-queue-history li{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:var(--text-xs);color:var(--color-text-secondary)}.job-queue-empty{font-size:var(--text-xs);color:var(--color-text-tertiary)}@media(max-width:768px){.job-queue-panel{width:calc(100vw - 16px);right:8px;bottom:8px;max-height:45vh}.job-queue-launcher{right:8px;bottom:8px}}.persistent-translator-host{position:relative;width:100%;min-height:0}.persistent-translator-host.is-active{position:relative;width:100%;height:100%;min-height:0;z-index:2;background:var(--color-bg-primary, #050912)}.persistent-translator-host.is-background{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;height:100dvh;overflow:hidden;opacity:0;visibility:hidden;pointer-events:none;contain:layout style paint}.persistent-translator-host__frame{width:100%;height:100%;border:0;display:block;background:var(--color-bg-primary, #050912)}.persistent-translator-host.is-active .persistent-translator-host__frame{min-height:100%}.persistent-translator-host.is-background .persistent-translator-host__frame{width:100%;height:100%}.persistent-translator-host__adult-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:8;display:grid;place-items:center;padding:clamp(18px,4vw,40px);background:#030712c2;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.persistent-translator-host__adult-dialog{width:min(520px,100%);display:grid;gap:12px;padding:clamp(20px,3vw,28px);border:1px solid var(--color-border-strong, rgba(255, 255, 255, .16));border-radius:16px;background:var(--color-bg-modal, var(--color-bg-elevated, #101827));color:var(--color-text-primary, #f8fafc);box-shadow:var(--shadow-xl, 0 12px 28px rgba(0, 0, 0, .4))}.persistent-translator-host__adult-kicker{width:fit-content;padding:5px 10px;border-radius:999px;background:color-mix(in srgb,var(--color-accent, #818cf8) 18%,transparent);color:color-mix(in srgb,var(--color-accent, #a5b4fc) 82%,white);font-size:.78rem;font-weight:800}.persistent-translator-host__adult-dialog h2,.persistent-translator-host__adult-dialog p{margin:0}.persistent-translator-host__adult-dialog h2{font-size:clamp(1.28rem,3vw,1.75rem);line-height:1.15}.persistent-translator-host__adult-dialog p{color:var(--color-text-secondary, #cbd5e1);line-height:1.58}.persistent-translator-host__adult-note,.persistent-translator-host__adult-error{padding:12px 13px;border-radius:14px}[data-theme=light] .persistent-translator-host__adult-backdrop,[data-theme=cream] .persistent-translator-host__adult-backdrop{background:#2a201861}[data-theme=cream] .persistent-translator-host__adult-kicker{color:var(--color-accent-hover)}[data-theme=light] .persistent-translator-host__adult-error,[data-theme=cream] .persistent-translator-host__adult-error{color:var(--color-danger)}.persistent-translator-host__adult-note{border:1px solid rgba(148,163,184,.22);background:#94a3b814}.persistent-translator-host__adult-error{border:1px solid color-mix(in srgb,#ef4444 46%,transparent);background:color-mix(in srgb,#ef4444 12%,transparent);color:#fecaca;line-height:1.5}.persistent-translator-host__adult-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}@media(max-width:560px){.persistent-translator-host__adult-actions{flex-direction:column-reverse}.persistent-translator-host__adult-actions .btn{width:100%;justify-content:center}}.access-gate{width:min(520px,100%);display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;padding:16px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-elevated);box-shadow:0 12px 34px #0000000f}.access-gate--compact{width:100%;padding:14px}.access-gate__icon{display:grid;place-items:center;width:42px;height:42px;border-radius:8px;background:color-mix(in srgb,var(--color-accent) 12%,transparent);color:var(--color-accent)}.access-gate__copy{min-width:0}.access-gate__copy h2,.access-gate__copy p{margin:0}.access-gate__status{display:inline-flex;margin-bottom:5px;color:var(--color-accent);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:0}.access-gate__copy h2{font-size:1.05rem;line-height:1.25}.access-gate__copy p{margin-top:6px;color:var(--color-text-secondary);line-height:1.5}.access-gate__actions{grid-column:2;display:flex;flex-wrap:wrap;gap:8px}@media(max-width:520px){.access-gate{grid-template-columns:1fr}.access-gate__actions{grid-column:1}}.cloudflare-preview-banner{position:sticky;top:0;z-index:var(--z-toast);display:flex;width:min(760px,calc(100% - 24px));gap:10px;align-items:flex-start;margin:12px auto 0;padding:10px 14px;border:1px solid color-mix(in srgb,var(--color-warning) 55%,transparent);border-radius:10px;color:var(--color-text-primary);background:color-mix(in srgb,var(--color-bg-secondary) 94%,var(--color-warning));box-shadow:var(--shadow-lg, 0 16px 40px rgba(0, 0, 0, .24));pointer-events:none}.cloudflare-preview-banner svg{flex:0 0 auto;margin-top:1px;color:var(--color-warning)}.cloudflare-preview-banner div{display:grid;gap:2px}.cloudflare-preview-banner strong,.cloudflare-preview-banner span{line-height:1.35}.cloudflare-preview-banner span{color:var(--color-text-secondary);font-size:.82rem}@media(max-width:600px){.cloudflare-preview-banner{width:calc(100% - 16px);margin-top:8px;padding:9px 11px}}.app-layout{display:flex;width:100vw;height:100vh;min-height:0;overflow:hidden}.app-main{flex:1;min-width:0;min-height:0;overflow-y:auto;overflow-x:hidden;position:relative}.translator-shell{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;height:100dvh;overflow:hidden;opacity:0;visibility:hidden;pointer-events:none;contain:layout style paint}.translator-shell.is-active{display:flex;flex-direction:column;position:relative;top:auto;left:auto;width:100%;height:100%;min-height:100%;overflow:visible;opacity:1;visibility:visible;pointer-events:auto;contain:none}.translator-shell__mobile-back{display:none}.translator-shell__host{position:relative;flex:1;min-height:0}.translator-access-gate{min-height:100%;display:grid;place-items:center;padding:24px;background:var(--color-bg-primary)}.translator-access-gate__panel{width:min(460px,100%);display:grid;gap:14px;padding:24px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-secondary);box-shadow:var(--shadow-lg, 0 18px 50px rgba(0, 0, 0, .26))}.translator-access-gate__eyebrow{width:max-content;padding:3px 9px;border-radius:999px;color:var(--color-accent);background:var(--color-accent-muted);font-size:11px;font-weight:700;letter-spacing:0}.translator-access-gate__panel h2{margin:0;font-size:1.25rem}.translator-access-gate__panel p{margin:0;color:var(--color-text-secondary);line-height:1.55}.translator-access-gate__actions{display:flex;flex-wrap:wrap;gap:10px}.translator-background-status{position:fixed;right:18px;bottom:18px;z-index:var(--z-toast);min-height:44px;max-width:min(360px,calc(100vw - 36px));display:inline-flex;align-items:center;gap:9px;padding:10px 13px;border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-bg-elevated);color:var(--color-text-primary);box-shadow:var(--shadow-md);cursor:pointer;font:inherit}.translator-background-status:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.translator-background-status__dot{width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:var(--color-success)}.translator-background-status.is-paused .translator-background-status__dot{background:var(--color-warning)}.translator-background-status.is-failed .translator-background-status__dot{background:var(--color-danger)}.translator-background-status__progress{color:var(--color-text-secondary);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.app-main--translator-active{display:flex;flex-direction:column;overflow:hidden}.app-main--translator-active .translator-shell.is-active{flex:1;height:auto;min-height:0}.app-layout--mobile{display:block;height:100%;min-height:100%}.app-layout--mobile .app-main{height:100%;min-height:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.app-layout--mobile.app-layout--project-route .app-main{overflow:hidden}.app-layout--mobile.app-layout--chat{position:fixed;top:var(--mobile-viewport-top, 0px);left:0;height:var(--mobile-viewport-height, 100dvh);min-height:0;contain:layout}.app-layout--mobile.app-layout--chat .app-main{display:flex;flex-direction:column;overflow:hidden}.app-layout--mobile.app-layout--chat .app-main>.project-chat-page,.app-layout--mobile.app-layout--chat .app-main>.project-mobile-shell{flex:1 1 auto;height:auto;min-height:0}.app-layout--mobile .translator-shell.is-active{height:100vh;min-height:100vh;height:100svh;min-height:100svh;height:100dvh;min-height:100dvh}.app-layout--mobile .app-main--translator-active .translator-shell.is-active{height:auto;min-height:0}.app-layout--mobile .translator-shell__mobile-back{display:flex;padding:10px 12px;border-bottom:1px solid var(--color-border);background:var(--color-bg-primary);z-index:3}.route-state{width:100%;min-height:min(420px,70vh);display:grid;place-items:center;padding:24px;color:var(--color-text-secondary)}.route-state--loading{align-content:center;gap:12px}.route-state__skeleton{width:min(760px,100%);min-height:260px;display:grid;align-content:start;gap:18px;padding:28px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-secondary)}.route-state__skeleton-title{width:min(280px,60%);height:30px}.route-state__skeleton-row{width:100%;height:48px}.route-state__skeleton-row--short{width:72%}.route-state__panel{width:min(520px,100%);display:grid;gap:14px;padding:24px;border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-bg-secondary)}.route-state__panel h1,.route-state__panel p{margin:0}.route-state__panel h1{color:var(--color-text-primary);font-size:var(--text-2xl)}.route-state__panel p{max-width:62ch;line-height:1.6}.route-state__panel .btn{width:fit-content;min-height:44px}.confirm-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal-overlay);display:grid;place-items:center;padding:20px;background:#030712b8}.confirm-dialog{z-index:var(--z-modal);width:min(460px,100%);display:grid;gap:14px;padding:24px;border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-bg-modal);color:var(--color-text-primary);box-shadow:var(--shadow-lg)}.confirm-dialog h2,.confirm-dialog p{margin:0}.confirm-dialog h2{font-size:var(--text-xl)}.confirm-dialog p{color:var(--color-text-secondary);line-height:1.6}.confirm-dialog__actions{display:flex;justify-content:flex-end;gap:10px}.confirm-dialog__actions .btn{min-height:44px}@media(max-width:520px){.confirm-dialog__actions{flex-direction:column-reverse}.confirm-dialog__actions .btn{width:100%;justify-content:center}}.site-announcement-launcher{position:fixed;left:calc(var(--sidebar-width, 260px) + 18px);bottom:18px;z-index:var(--z-topbar);width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--color-border-strong);border-radius:8px;background:color-mix(in srgb,var(--color-bg-elevated) 94%,transparent);color:var(--color-accent);box-shadow:var(--shadow-lg);cursor:pointer}.site-announcement-launcher:hover{border-color:var(--color-accent);background:var(--color-bg-hover)}.site-announcement-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal-overlay);display:grid;place-items:center;padding:18px;background:#0307129e}.site-announcement-dialog{width:min(520px,100%);display:grid;gap:16px;padding:20px;border:1px solid var(--color-border-strong);border-radius:8px;background:var(--color-bg-secondary);color:var(--color-text-primary);box-shadow:var(--shadow-xl)}.site-announcement-dialog header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:12px}.site-announcement-dialog__icon{width:40px;height:40px;display:grid;place-items:center;border-radius:8px;background:var(--color-accent-muted);color:var(--color-accent)}.site-announcement-dialog h2,.site-announcement-dialog p{margin:0}.site-announcement-dialog h2{font-size:1.32rem;line-height:1.2}.site-announcement-dialog header p{margin-top:4px;color:var(--color-text-secondary);font-size:var(--text-sm)}.site-announcement-dialog__close{width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--color-border);border-radius:8px;background:transparent;color:var(--color-text-secondary);cursor:pointer}.site-announcement-dialog__close:hover{color:var(--color-text-primary);background:var(--color-bg-hover)}.site-announcement-dialog__body{color:var(--color-text-secondary);line-height:1.62;white-space:pre-wrap}.site-announcement-dialog footer{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.site-announcement-dialog__backup{color:var(--color-text-primary);background:transparent}.site-announcement-dialog__backup:hover{color:var(--color-text-primary);background:var(--color-bg-hover)}@media(max-width:1100px)and (min-width:901px){.site-announcement-launcher{left:calc(var(--sidebar-collapsed-width, 64px) + 14px)}}@media(max-width:900px){.site-announcement-launcher{left:max(12px,env(safe-area-inset-left));bottom:calc(76px + env(safe-area-inset-bottom,0px))}.site-announcement-dialog{padding:16px}.site-announcement-dialog footer .btn{width:100%;justify-content:center}}@media(prefers-reduced-motion:reduce){.site-announcement-launcher,.site-announcement-dialog__close{transition:none}}[data-theme-family=paper] .app-main,[data-theme-family=paper] .project-mobile-shell{background:var(--color-bg-primary)}[data-theme-family=paper] .mobile-sheet,[data-theme-family=paper] .mobile-sheet-footer{background:var(--color-bg-modal)}[data-theme-family=paper] .project-mobile-topbar{background:var(--color-bg-sidebar);-webkit-backdrop-filter:none;backdrop-filter:none}[data-theme-family=paper] .sidebar-item{color:var(--color-text-primary);font-weight:550}[data-theme-family=paper] .sidebar-theme-trigger{color:var(--color-text-secondary)}[data-theme-family=paper] .sidebar-item--active,[data-theme-family=paper] .sidebar-item--primary:not(.sidebar-item--disabled){color:var(--color-accent);font-weight:var(--weight-semibold)}[data-theme-family=paper] .sidebar-item--disabled{color:var(--color-text-muted);font-weight:var(--weight-medium);opacity:1}[data-theme-family=paper] .sidebar-item--coming-soon:not(.sidebar-item--disabled){opacity:.78}[data-theme-family=paper] .sidebar-theme-trigger__copy small{color:var(--color-text-muted)}[data-theme-family=paper] .modal-overlay,[data-theme-family=paper] .codex-modal-overlay,[data-theme-family=paper] .project-chat-drawer-backdrop{background:#211c175c}[data-theme-family=paper] .codex-modal{background:var(--color-bg-modal)}[data-theme-family=paper] .select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2362564a' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:12px 12px}[data-theme-family=paper] .chapter-list,[data-theme-family=paper] .chapter-list-header{background:var(--writing-bg-panel, #f5eee2)}[data-theme-family=paper] .chapter-list-tree{background:var(--writing-bg-elevated, #f7f3ec)}[data-theme-family=paper] .ai-sidebar,[data-theme-family=paper] .ai-bottom-dock{background:var(--writing-bg-panel, #f5eee2)}[data-theme-family=paper] .ai-quick-actions,[data-theme-family=paper] .codex-panel-body{background:var(--writing-bg-elevated, #f7f3ec)}[data-theme-family=paper] .ai-guidance-panel{background:var(--writing-bg-panel-alt, #ebe5dc)}[data-theme-family=paper] .ai-guidance-input,[data-theme-family=paper] .ai-prompt-input{background:var(--writing-bg-elevated, #f7f3ec)}[data-theme-family=paper] .story-editor-wrapper{background:var(--color-bg-primary)}[data-theme-family=paper] .story-editor-content{min-height:calc(100% - 12px);padding:clamp(28px,4vw,48px);border:1px solid var(--color-border);border-radius:12px;background:var(--color-bg-editor);color:var(--color-text-primary);box-shadow:0 2px 6px #342d2714}[data-theme-family=paper] .story-editor-content p.is-editor-empty:first-child:before,[data-theme-family=paper] .story-editor-scene-title::placeholder,[data-theme-family=paper] .chapter-outline-edit-textarea::placeholder{color:var(--color-text-muted);opacity:1}[data-theme-family=paper] .story-editor-ai-draft{background:var(--color-bg-editor);box-shadow:0 2px 6px #342d2714}[data-theme-family=paper] .story-editor-header,[data-theme-family=paper] .story-editor-footer,[data-theme-family=paper] .chapter-outline-panel{background:var(--color-bg-secondary)}[data-theme-family=paper] .scene-detail-backdrop{background:#211c1757}[data-theme-family=paper] .scene-detail-panel{border-color:var(--color-border-strong);border-radius:16px;background:var(--color-bg-modal);color:var(--color-text-primary);box-shadow:0 6px 8px #342d2724}[data-theme-family=paper] .scene-detail-header{border-bottom-color:var(--color-border);background:var(--color-bg-secondary)}[data-theme-family=paper] .scene-detail-kicker,[data-theme-family=paper] .scene-detail-scene-name,[data-theme-family=paper] .scene-detail-section-note,[data-theme-family=paper] .scene-detail-label,[data-theme-family=paper] .scene-detail-char-role{color:var(--color-text-secondary)}[data-theme-family=paper] .scene-detail-title,[data-theme-family=paper] .scene-detail-section-title,[data-theme-family=paper] .scene-detail-char-item,[data-theme-family=paper] .scene-detail-tag{color:var(--color-text-heading)}[data-theme-family=paper] .scene-detail-pill,[data-theme-family=paper] .scene-detail-section,[data-theme-family=paper] .scene-detail-char-item,[data-theme-family=paper] .scene-detail-tag{border-color:var(--color-border);background:var(--color-surface-1)}[data-theme-family=paper] .scene-detail-section{border-radius:12px;box-shadow:none}[data-theme-family=paper] .scene-detail-textarea,[data-theme-family=paper] .scene-detail-select,[data-theme-family=paper] .scene-detail-tag-input input{border-color:var(--color-border);background:var(--color-surface-2);color:var(--color-text-primary)}[data-theme-family=paper] .scene-detail-textarea::placeholder,[data-theme-family=paper] .scene-detail-tag-input input::placeholder{color:var(--color-text-muted)}[data-theme-family=paper] .scene-detail-textarea:focus,[data-theme-family=paper] .scene-detail-select:focus,[data-theme-family=paper] .scene-detail-tag-input input:focus{border-color:var(--color-accent);background:var(--color-bg-editor);box-shadow:0 0 0 3px var(--color-accent-muted)}[data-theme-family=paper] .scene-detail-char-item:hover,[data-theme-family=paper] .scene-detail-char-item--active{border-color:var(--color-accent);background:var(--color-accent-muted);box-shadow:none}[data-theme-family=paper] .scene-detail-char-item input[type=checkbox]{accent-color:var(--color-accent-fill)}[data-theme-family=paper] .scene-detail-tag-remove{background:var(--color-bg-active)}[data-theme-family=paper] .scene-detail-tag--danger{border-color:color-mix(in srgb,var(--color-danger) 36%,var(--color-border));background:var(--color-danger-muted);color:var(--color-danger)}[data-theme-family=paper] .scene-detail-tag--warn{border-color:color-mix(in srgb,var(--color-warning) 36%,var(--color-border));background:var(--color-warning-muted);color:var(--color-warning)}[data-theme-family=paper] .narrative-lab{background:var(--color-bg-primary);color:var(--color-text-primary)}[data-theme-family=paper] .lab-sidebar,[data-theme-family=paper] .chat-input-bar{border-color:var(--color-border);background:var(--color-bg-sidebar)}[data-theme-family=paper] .lab-sidebar h3,[data-theme-family=paper] .thinking-header{color:var(--color-accent)}[data-theme-family=paper] .setting-group label,[data-theme-family=paper] .welcome-msg,[data-theme-family=paper] .message-label,[data-theme-family=paper] .message-meta,[data-theme-family=paper] .thinking-text,[data-theme-family=paper] .debug-content{color:var(--color-text-secondary)}[data-theme-family=paper] .toggle-buttons,[data-theme-family=paper] .setting-group select,[data-theme-family=paper] .chat-input-bar textarea,[data-theme-family=paper] .system-debug{border-color:var(--color-border);background:var(--color-surface-2);color:var(--color-text-primary)}[data-theme-family=paper] .toggle-buttons button{color:var(--color-text-secondary)}[data-theme-family=paper] .toggle-buttons button.active,[data-theme-family=paper] .user .message-bubble,[data-theme-family=paper] .chat-input-bar button{background:var(--color-accent-fill);color:#fff}[data-theme-family=paper] .assistant .message-bubble{border-color:var(--color-border);background:var(--color-bg-editor);color:var(--color-text-primary)}[data-theme-family=paper] .thinking-block{border:1px solid var(--color-border-accent);background:var(--color-accent-muted)}[data-theme-family=paper] .priming-promo{border-color:var(--color-border-accent);background:var(--color-accent-muted)}[data-theme-family=paper] .su-that-page__priority-panel,[data-theme-family=paper] .bible-canon-stat{background:var(--color-surface-1)}[data-theme-family=paper] .su-that-page__panel-icon,[data-theme-family=paper] .su-that-page__panel-count{background:var(--color-surface-2)}[data-theme-family=paper] .su-that-page__compact-list,[data-theme-family=paper] .su-that-page__compact-item,[data-theme-family=paper] .su-that-page__state-panel-footer{border-color:var(--color-border)}[data-theme-family=paper] .su-that-page__panel-count--warning{color:var(--color-warning);background:var(--color-warning-muted)}[data-theme-family=paper] .su-that-page__panel-count--danger{color:var(--color-danger);background:var(--color-danger-muted)}[data-theme-family=paper] .su-that-page__panel-count--accent{color:var(--color-accent);background:var(--color-accent-muted)}[data-theme-family=paper] .project-cover-model-menu{border-color:var(--color-border-strong);background:var(--color-bg-modal);box-shadow:0 6px 8px #342d2721}[data-theme-family=paper] .project-chat-page .card,[data-theme-family=paper] .project-chat-empty.card{border-color:var(--color-border-strong);background:var(--color-surface-1);box-shadow:0 2px 6px #342d2714}[data-theme-family=paper] .project-chat-sidebar__hint{border-color:var(--color-border);background:var(--color-surface-2);color:var(--color-text-secondary)}[data-theme-family=paper] :is(.project-chat-sidebar__kicker,.project-chat-topbar__kicker,.project-chat-drawer__kicker,.project-chat-thread__meta,.project-chat-message__author){color:var(--color-text-tertiary)}[data-theme-family=paper] .project-chat-statusbar__item--live,[data-theme-family=paper] .project-chat-message__chip--live{color:var(--color-accent)}[data-theme-family=paper] .project-chat-composer__input,[data-theme-family=paper] .project-chat-attachment-scope-toggle,[data-theme-family=paper] .project-chat-paste-chip,[data-theme-family=paper] .project-chat-paste-chip__preview,[data-theme-family=paper] .project-chat-image-preview-card,[data-theme-family=paper] .project-chat-message-image img,[data-theme-family=paper] .project-chat-attachment-row,[data-theme-family=paper] .project-chat-attachment-row__status,[data-theme-family=paper] .project-chat-drawer,[data-theme-family=paper] .project-chat-drawer__source{background:var(--color-bg-modal)}[data-theme-family=paper] .project-chat-composer__input{border-color:var(--color-border-strong);box-shadow:0 2px 6px #342d2714;-webkit-backdrop-filter:none;backdrop-filter:none}[data-theme-family=paper] .project-chat-composer__input .textarea{background:var(--color-surface-2);color:var(--color-text-primary)}[data-theme-family=paper] .project-chat-paste-chip{background:var(--color-accent-muted)}[data-theme-family=paper] .arc-modal-overlay{--bg-backdrop: rgba(33, 28, 23, .36);--bg-content: var(--color-bg-modal);--bg-panel: var(--color-bg-secondary);--bg-input: var(--color-surface-2);--bg-hover: var(--color-bg-hover);--border-color: var(--color-border)}[data-theme-family=paper] .arc-modal{box-shadow:0 6px 8px #342d2724}[data-theme-family=paper] .analysis-viewer{background:var(--color-bg-primary);color:var(--color-text-primary)}[data-theme-family=paper] .analysis-utility-panel{box-shadow:-4px 0 8px #342d2714}[data-theme-family=paper] .analysis-viewer :is(.search-panel,.filter-panel,.selection-panel,.knowledge-section,.knowledge-card,.event-card,.incident-card,.mindmap-toolbar,.mindmap-container,.mindmap-context-menu,.timeline-view,.timeline-header,.timeline-overview,.timeline-stage-main,.timeline-detail,.character-graph,.graph-toolbar,.graph-container,.graph-tooltip,.graph-node-info,.compare-panel,.adapt-panel-container,.annotation-editor,.event-edit-modal,.export-modal,.link-project-modal){border-color:var(--color-border);background:var(--color-surface-1);color:var(--color-text-primary)}[data-theme-family=paper] .analysis-viewer :is(.search-input,.filter-group select,.quick-select-btn,.selected-item,.event-action-btn,.incident-btn,.mindmap-toolbar button,.graph-reset-btn,.timeline-zoom button,.analysis-input,textarea,select){border-color:var(--color-border);background:var(--color-surface-2);color:var(--color-text-primary)}[data-theme-family=paper] .analysis-viewer :is(.event-card-description,.event-card-meta,.incident-location,.node-intensity,.timeline-subtitle,.graph-legend,.graph-node-info .info-row){color:var(--color-text-secondary)}[data-theme-family=paper] .analysis-viewer .search-input::placeholder{color:var(--color-text-muted);opacity:1}[data-theme-family=paper] .analysis-viewer :is(.mindmap-node,.event-preview,.timeline-event){border-color:var(--color-border);background:var(--color-bg-editor);color:var(--color-text-primary)}[data-theme-family=paper] .suggestion-card,[data-theme-family=paper] .suggestion-group,[data-theme-family=paper] .suggestion-inbox-empty,[data-theme-family=paper] .suggestion-evidence{border-color:var(--color-border);background:var(--color-surface-1)}[data-theme-family=paper] .suggestion-evidence{color:var(--color-text-secondary)}@media(max-width:900px){[data-theme-family=paper] .story-editor-wrapper{padding-inline:0}[data-theme-family=paper] .story-editor-content{min-height:100%;max-width:100%;padding:18px 16px 28px;border:0;border-radius:0;box-shadow:none}[data-theme-family=paper] .scene-detail-panel{border-radius:16px 0 0 16px}}@media(max-width:640px){[data-theme-family=paper] .scene-detail-panel{border-radius:16px 16px 0 0}}@media(prefers-reduced-motion:reduce){[data-theme-family=paper] .scene-detail-backdrop,[data-theme-family=paper] .scene-detail-panel{animation:none}}@font-face{font-family:Inter;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/inter-vietnamese-300-700.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/inter-latin-300-700.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lora;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/lora-vietnamese-400-700.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Lora;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/lora-latin-400-700.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lora;font-style:italic;font-weight:400 500;font-display:swap;src:url(/fonts/lora-italic-vietnamese-400-500.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Lora;font-style:italic;font-weight:400 500;font-display:swap;src:url(/fonts/lora-italic-latin-400-500.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}@media(pointer:coarse){[role=dialog] button,[role=dialog] a,[role=dialog] input,[role=dialog] select{min-height:44px}[role=dialog] .btn-icon{min-width:44px}}:root{color-scheme:dark;--color-bg-primary: #0a0e1a;--color-bg-secondary: #111827;--color-bg-tertiary: #1a2035;--color-bg-elevated: #1e2640;--color-bg-hover: #252f4a;--color-bg-active: #2a3555;--color-bg-sidebar: var(--color-bg-secondary);--color-bg-modal: var(--color-bg-secondary);--color-bg-editor: transparent;--color-bg: var(--color-bg-primary);--color-glass: rgba(17, 24, 39, .72);--color-glass-border: rgba(255, 255, 255, .06);--color-glass-hover: rgba(30, 38, 64, .85);--color-surface: #151c2e;--color-surface-raised: #1a2340;--color-surface-overlay: rgba(10, 14, 26, .92);--color-surface-1: var(--color-surface);--color-surface-2: var(--color-surface-raised);--color-surface-3: var(--color-bg-elevated);--color-text-primary: #e8ecf4;--color-text-heading: var(--color-text-primary);--color-text-secondary: #94a3b8;--color-text-tertiary: #94a3b8;--color-text-muted: #8493a7;--color-text-inverse: #0a0e1a;--color-text: var(--color-text-primary);--color-text-dim: var(--color-text-muted);--color-accent: #8b5cf6;--color-accent-fill: var(--color-accent);--color-primary: var(--color-accent-fill);--color-accent-rgb: 139, 92, 246;--color-accent-subtle: var(--color-accent-muted);--color-accent-hover: #a78bfa;--color-accent-muted: rgba(139, 92, 246, .15);--color-accent-glow: rgba(139, 92, 246, .3);--color-accent2: #06b6d4;--color-accent2-muted: rgba(6, 182, 212, .15);--color-decorative: var(--color-accent2);--color-success: #10b981;--color-success-muted: rgba(16, 185, 129, .15);--color-warning: #f59e0b;--color-warning-muted: rgba(245, 158, 11, .15);--color-danger: #ef4444;--color-danger-muted: rgba(239, 68, 68, .15);--color-error: var(--color-danger);--color-info: #3b82f6;--color-info-muted: rgba(59, 130, 246, .15);--color-border: rgba(255, 255, 255, .08);--color-border-strong: rgba(255, 255, 255, .14);--color-border-accent: rgba(139, 92, 246, .4);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 24px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .5);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .6);--shadow-glow: 0 0 20px rgba(139, 92, 246, .2);--shadow-glow-strong: 0 0 40px rgba(139, 92, 246, .35);--font-ui: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-prose: "Lora", "Georgia", "Times New Roman", serif;--font-mono: "JetBrains Mono", "Fira Code", "Consolas", monospace;--text-xs: .75rem;--text-sm: .8125rem;--text-base: .875rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--leading-tight: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.75;--weight-light: 300;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--z-sidebar: 100;--z-topbar: 200;--z-dropdown: 300;--z-modal-overlay: 400;--z-modal: 500;--z-toast: 600;--sidebar-width: 260px;--sidebar-collapsed-width: 64px;--topbar-height: 52px;--right-panel-width: 340px;--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .4s ease;--transition-spring: .3s cubic-bezier(.34, 1.56, .64, 1)}[data-theme=light]{color-scheme:light;--color-bg-primary: #f5f7fb;--color-bg-secondary: #ffffff;--color-bg-tertiary: #edf0f6;--color-bg-elevated: #ffffff;--color-bg-hover: #e9edf5;--color-bg-active: #dfe4ef;--color-bg-sidebar: #eef1f7;--color-bg-modal: #ffffff;--color-bg-editor: #ffffff;--color-bg: var(--color-bg-primary);--color-glass: rgba(255, 255, 255, .9);--color-glass-border: rgba(35, 42, 61, .09);--color-glass-hover: rgba(248, 249, 252, .96);--color-surface: #ffffff;--color-surface-raised: #f8f9fc;--color-surface-overlay: rgba(245, 247, 251, .96);--color-surface-1: var(--color-surface);--color-surface-2: var(--color-surface-raised);--color-surface-3: var(--color-bg-tertiary);--color-text-primary: #242a3d;--color-text-heading: #171a2b;--color-text-secondary: #4d5870;--color-text-tertiary: #5c6880;--color-text-muted: #657087;--color-accent: #6546c7;--color-accent-fill: #6546c7;--color-primary: var(--color-accent-fill);--color-accent-rgb: 101, 70, 199;--color-accent-hover: #5638b5;--color-accent-muted: rgba(101, 70, 199, .12);--color-accent-glow: rgba(101, 70, 199, .2);--color-border: rgba(35, 42, 61, .11);--color-border-strong: rgba(35, 42, 61, .19);--color-border-accent: rgba(101, 70, 199, .34);--shadow-sm: 0 1px 2px rgba(35, 42, 61, .06);--shadow-md: 0 4px 12px rgba(35, 42, 61, .08);--shadow-lg: 0 8px 24px rgba(35, 42, 61, .1);--shadow-xl: 0 16px 48px rgba(35, 42, 61, .12)}[data-theme=cream]{color-scheme:light;--color-bg-primary: #f7f5f0;--color-bg-secondary: #fffdfa;--color-bg-tertiary: #f6f2eb;--color-bg-elevated: #ffffff;--color-bg-hover: #eee8df;--color-bg-active: #e5dacb;--color-bg-sidebar: #f2eee7;--color-bg-modal: #ffffff;--color-bg-editor: #fffaf2;--color-bg: var(--color-bg-primary);--color-glass: #ffffff;--color-glass-border: rgba(59, 48, 39, .12);--color-glass-hover: #fffcf7;--color-surface: #fffdfa;--color-surface-raised: #f6f2eb;--color-surface-overlay: rgba(255, 255, 255, .98);--color-surface-1: #fffdfa;--color-surface-2: #f6f2eb;--color-surface-3: #ffffff;--color-text-heading: #211c17;--color-text-primary: #342d27;--color-text-secondary: #4f453c;--color-text-tertiary: #62564a;--color-text-muted: #6f6256;--color-text-inverse: #ffffff;--color-text: var(--color-text-primary);--color-text-dim: var(--color-text-muted);--color-accent: #98420b;--color-accent-fill: #a94b08;--color-primary: var(--color-accent-fill);--color-accent-rgb: 152, 66, 11;--color-accent-subtle: var(--color-accent-muted);--color-accent-hover: #7f3508;--color-accent-muted: #f3e6d8;--color-accent-glow: rgba(169, 75, 8, .16);--color-accent2: #715334;--color-accent2-muted: #eee6dc;--color-decorative: #9b8062;--color-success: #047857;--color-success-muted: rgba(4, 120, 87, .12);--color-warning: #854d0e;--color-warning-muted: rgba(133, 77, 14, .13);--color-danger: #b91c1c;--color-danger-muted: rgba(185, 28, 28, .11);--color-error: var(--color-danger);--color-info: #1d4ed8;--color-info-muted: rgba(29, 78, 216, .11);--color-border: rgba(59, 48, 39, .12);--color-border-strong: rgba(59, 48, 39, .2);--color-border-accent: rgba(152, 66, 11, .32);--shadow-sm: 0 1px 2px rgba(52, 45, 39, .06);--shadow-md: 0 2px 6px rgba(52, 45, 39, .08);--shadow-lg: 0 6px 12px rgba(52, 45, 39, .1);--shadow-xl: 0 12px 24px rgba(52, 45, 39, .13);--shadow-glow: 0 0 0 3px rgba(169, 75, 8, .12);--shadow-glow-strong: 0 0 0 4px rgba(169, 75, 8, .17);--writing-bg-panel: #f5eee2;--writing-bg-panel-alt: #ebe5dc;--writing-bg-elevated: #f7f3ec}[data-theme=soft-cream]{color-scheme:light;--color-bg-primary: #ebe5dc;--color-bg-secondary: #f3ede5;--color-bg-tertiary: #e7dfd5;--color-bg-elevated: #f8f3eb;--color-bg-hover: #e2d8cc;--color-bg-active: #d8c9b9;--color-bg-sidebar: #e9e2d8;--color-bg-modal: #f7f1e9;--color-bg-editor: #f5eee2;--color-bg: var(--color-bg-primary);--color-glass: #f3ede5;--color-glass-border: #d4c8bb;--color-glass-hover: #f8f3eb;--color-surface: #f3ede5;--color-surface-raised: #e7dfd5;--color-surface-overlay: #f7f1e9;--color-surface-1: #f3ede5;--color-surface-2: #e7dfd5;--color-surface-3: #f8f3eb;--color-text-heading: #2f2822;--color-text-primary: #382f28;--color-text-secondary: #5a4d42;--color-text-tertiary: #65574b;--color-text-muted: #625449;--color-text-inverse: #ffffff;--color-text: var(--color-text-primary);--color-text-dim: var(--color-text-muted);--color-accent: #8f4921;--color-accent-fill: #98502a;--color-primary: var(--color-accent-fill);--color-accent-rgb: 143, 73, 33;--color-accent-subtle: var(--color-accent-muted);--color-accent-hover: #743817;--color-accent-muted: #e8dacd;--color-accent-glow: rgba(143, 73, 33, .16);--color-accent2: #8f4921;--color-accent2-muted: #e8dacd;--color-decorative: #8f4921;--color-success: #2d765f;--color-success-muted: #dbe8e2;--color-warning: #835019;--color-warning-muted: #eadfce;--color-danger: #a33a32;--color-danger-muted: #edd8d4;--color-error: var(--color-danger);--color-info: #42658b;--color-info-muted: #d9e1ea;--color-border: #d4c8bb;--color-border-strong: #c4b4a3;--color-border-accent: #bd8d70;--shadow-sm: 0 1px 2px rgba(48, 42, 36, .05);--shadow-md: 0 2px 6px rgba(48, 42, 36, .08);--shadow-lg: 0 6px 12px rgba(48, 42, 36, .11);--shadow-xl: 0 12px 24px rgba(48, 42, 36, .14);--shadow-glow: 0 0 0 3px rgba(143, 73, 33, .12);--shadow-glow-strong: 0 0 0 4px rgba(143, 73, 33, .17);--writing-bg-panel: #f3ede5;--writing-bg-panel-alt: #e7dfd5;--writing-bg-elevated: #f8f3eb}[data-theme=sepia]{color-scheme:light;--color-bg-primary: #ded2bd;--color-bg-secondary: #eadfc9;--color-bg-tertiary: #d8c9af;--color-bg-elevated: #f4e9d5;--color-bg-hover: #d2c0a3;--color-bg-active: #c5ae8c;--color-bg-sidebar: #ddd0b8;--color-bg-modal: #f2e6d1;--color-bg-editor: #f0e3cb;--color-bg: var(--color-bg-primary);--color-glass: #eadfc9;--color-glass-border: #cdbb9d;--color-glass-hover: #f4e9d5;--color-surface: #eadfc9;--color-surface-raised: #d8c9af;--color-surface-overlay: #f2e6d1;--color-surface-1: #eadfc9;--color-surface-2: #d8c9af;--color-surface-3: #f4e9d5;--color-text-heading: #33291f;--color-text-primary: #3d3228;--color-text-secondary: #5f4f40;--color-text-tertiary: #685745;--color-text-muted: #5f4f3f;--color-text-inverse: #ffffff;--color-text: var(--color-text-primary);--color-text-dim: var(--color-text-muted);--color-accent: #8a4b24;--color-accent-fill: #96532a;--color-primary: var(--color-accent-fill);--color-accent-rgb: 138, 75, 36;--color-accent-subtle: var(--color-accent-muted);--color-accent-hover: #6f3918;--color-accent-muted: #ddc8b5;--color-accent-glow: rgba(138, 75, 36, .16);--color-accent2: #8a4b24;--color-accent2-muted: #ddc8b5;--color-decorative: #8a4b24;--color-success: #356f5a;--color-success-muted: #d2dfd7;--color-warning: #7b4a14;--color-warning-muted: #e3d4bb;--color-danger: #9b3830;--color-danger-muted: #e7cbc4;--color-error: var(--color-danger);--color-info: #45627e;--color-info-muted: #d1d9df;--color-border: #cdbb9d;--color-border-strong: #bca583;--color-border-accent: #b4825f;--shadow-sm: 0 1px 2px rgba(48, 42, 36, .05);--shadow-md: 0 2px 6px rgba(48, 42, 36, .08);--shadow-lg: 0 6px 12px rgba(48, 42, 36, .11);--shadow-xl: 0 12px 24px rgba(48, 42, 36, .14);--shadow-glow: 0 0 0 3px rgba(138, 75, 36, .12);--shadow-glow-strong: 0 0 0 4px rgba(138, 75, 36, .17);--writing-bg-panel: #eadfc9;--writing-bg-panel-alt: #d8c9af;--writing-bg-elevated: #f4e9d5}[data-theme=sage-paper]{color-scheme:light;--color-bg-primary: #dbe3d8;--color-bg-secondary: #e6ece2;--color-bg-tertiary: #d3ddd0;--color-bg-elevated: #f0f3ed;--color-bg-hover: #ccd7c9;--color-bg-active: #bdcbbc;--color-bg-sidebar: #d9e1d6;--color-bg-modal: #edf1e9;--color-bg-editor: #edf1e9;--color-bg: var(--color-bg-primary);--color-glass: #e6ece2;--color-glass-border: #c1ccc0;--color-glass-hover: #f0f3ed;--color-surface: #e6ece2;--color-surface-raised: #d3ddd0;--color-surface-overlay: #edf1e9;--color-surface-1: #e6ece2;--color-surface-2: #d3ddd0;--color-surface-3: #f0f3ed;--color-text-heading: #283129;--color-text-primary: #303a32;--color-text-secondary: #4e5c51;--color-text-tertiary: #58675c;--color-text-muted: #526057;--color-text-inverse: #ffffff;--color-text: var(--color-text-primary);--color-text-dim: var(--color-text-muted);--color-accent: #8c4f2d;--color-accent-fill: #965735;--color-primary: var(--color-accent-fill);--color-accent-rgb: 140, 79, 45;--color-accent-subtle: var(--color-accent-muted);--color-accent-hover: #703b21;--color-accent-muted: #dfd2c8;--color-accent-glow: rgba(140, 79, 45, .16);--color-accent2: #8c4f2d;--color-accent2-muted: #dfd2c8;--color-decorative: #8c4f2d;--color-success: #2f7059;--color-success-muted: #cfdfd6;--color-warning: #775016;--color-warning-muted: #e2dac5;--color-danger: #963f38;--color-danger-muted: #e5d1cd;--color-error: var(--color-danger);--color-info: #426779;--color-info-muted: #d3e0e3;--color-border: #c1ccc0;--color-border-strong: #acbbab;--color-border-accent: #b48770;--shadow-sm: 0 1px 2px rgba(43, 52, 44, .05);--shadow-md: 0 2px 6px rgba(43, 52, 44, .08);--shadow-lg: 0 6px 12px rgba(43, 52, 44, .11);--shadow-xl: 0 12px 24px rgba(43, 52, 44, .14);--shadow-glow: 0 0 0 3px rgba(140, 79, 45, .12);--shadow-glow-strong: 0 0 0 4px rgba(140, 79, 45, .17);--writing-bg-panel: #e6ece2;--writing-bg-panel-alt: #d3ddd0;--writing-bg-elevated: #f0f3ed}[data-theme=mist]{color-scheme:light;--color-bg-primary: #dde2e5;--color-bg-secondary: #e8ecee;--color-bg-tertiary: #d4dbdf;--color-bg-elevated: #f2f4f5;--color-bg-hover: #cbd4d8;--color-bg-active: #bec9ce;--color-bg-sidebar: #dce1e4;--color-bg-modal: #f0f2f3;--color-bg-editor: #f0f2f3;--color-bg: var(--color-bg-primary);--color-glass: #e8ecee;--color-glass-border: #c8d0d4;--color-glass-hover: #f2f4f5;--color-surface: #e8ecee;--color-surface-raised: #d4dbdf;--color-surface-overlay: #f0f2f3;--color-surface-1: #e8ecee;--color-surface-2: #d4dbdf;--color-surface-3: #f2f4f5;--color-text-heading: #292f33;--color-text-primary: #30373c;--color-text-secondary: #4f5a61;--color-text-tertiary: #59666e;--color-text-muted: #536069;--color-text-inverse: #ffffff;--color-text: var(--color-text-primary);--color-text-dim: var(--color-text-muted);--color-accent: #8d4b31;--color-accent-fill: #99563a;--color-primary: var(--color-accent-fill);--color-accent-rgb: 141, 75, 49;--color-accent-subtle: var(--color-accent-muted);--color-accent-hover: #703824;--color-accent-muted: #e1d3cd;--color-accent-glow: rgba(141, 75, 49, .16);--color-accent2: #8d4b31;--color-accent2-muted: #e1d3cd;--color-decorative: #8d4b31;--color-success: #2f715d;--color-success-muted: #d1dfd9;--color-warning: #79531d;--color-warning-muted: #e4dccb;--color-danger: #98413a;--color-danger-muted: #e7d3d0;--color-error: var(--color-danger);--color-info: #416982;--color-info-muted: #d3e0e7;--color-border: #c8d0d4;--color-border-strong: #b4c0c5;--color-border-accent: #b58b79;--shadow-sm: 0 1px 2px rgba(45, 53, 58, .05);--shadow-md: 0 2px 6px rgba(45, 53, 58, .08);--shadow-lg: 0 6px 12px rgba(45, 53, 58, .11);--shadow-xl: 0 12px 24px rgba(45, 53, 58, .14);--shadow-glow: 0 0 0 3px rgba(141, 75, 49, .12);--shadow-glow-strong: 0 0 0 4px rgba(141, 75, 49, .17);--writing-bg-panel: #e8ecee;--writing-bg-panel-alt: #d4dbdf;--writing-bg-elevated: #f2f4f5}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-ui);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text-primary);background-color:var(--color-bg-primary);overflow:hidden}h1,h2,h3,h4,h5,h6{color:var(--color-text-heading, var(--color-text-primary))}#root{width:100vw;height:100vh;overflow:hidden}@media(max-width:900px){#root{height:100vh;height:100svh;height:100dvh}}a{color:var(--color-accent);text-decoration:none}a:hover{color:var(--color-accent-hover)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-text-muted);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}::selection{background:var(--color-accent-muted);color:var(--color-accent-hover)}.glass{background:var(--color-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--color-glass-border)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleUp{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes glow{0%,to{box-shadow:0 0 8px var(--color-accent-glow)}50%{box-shadow:0 0 20px var(--color-accent-glow)}}.animate-fade-in{animation:fadeIn .3s ease}.animate-slide-up{animation:slideInUp .3s ease}.animate-slide-left{animation:slideInLeft .3s ease}.animate-scale-up{animation:scaleUp .25s cubic-bezier(.34,1.56,.64,1)}.animate-pulse{animation:pulse 2s ease infinite}.animate-glow{animation:glow 2s ease infinite}.animate-spin{animation:spin 1s linear infinite}.skeleton{background:linear-gradient(90deg,var(--color-bg-tertiary) 25%,var(--color-bg-hover) 50%,var(--color-bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s ease infinite;border-radius:var(--radius-md)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.skeleton{background:var(--color-bg-tertiary)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-family:var(--font-ui);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:1;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;white-space:nowrap;height:36px}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn svg{width:16px;height:16px}.btn-primary{background:var(--color-accent-fill, var(--color-accent));color:#fff;border-color:var(--color-accent-fill, var(--color-accent))}.btn-primary:hover:not(:disabled){background:var(--color-accent-hover);box-shadow:var(--shadow-glow)}.btn-secondary{background:var(--color-bg-elevated);color:var(--color-text-primary);border-color:var(--color-border-strong)}.btn-secondary:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-accent)}.btn-ghost{background:transparent;color:var(--color-text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--color-bg-hover);color:var(--color-text-primary)}.btn-danger{background:var(--color-danger-muted);color:var(--color-danger);border-color:transparent}.btn-danger:hover:not(:disabled){background:var(--color-danger);color:#fff}.btn-accent{background:var(--color-accent-muted);color:var(--color-accent);border-color:transparent}.btn-accent:hover:not(:disabled){background:var(--color-accent);color:#fff;box-shadow:var(--shadow-glow)}.btn-sm{height:30px;padding:var(--space-1) var(--space-3);font-size:var(--text-xs)}.btn-lg{height:42px;padding:var(--space-3) var(--space-6);font-size:var(--text-md)}.btn-icon{width:36px;padding:0}.btn-icon.btn-sm{width:30px}.input,.textarea,.select{width:100%;padding:var(--space-2) var(--space-3);font-family:var(--font-ui);font-size:var(--text-sm);color:var(--color-text-primary);background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-md);outline:none;transition:all var(--transition-fast)}.input:focus,.textarea:focus,.select:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-muted)}.input::placeholder,.textarea::placeholder{color:var(--color-text-muted)}.input{height:36px}.textarea{min-height:80px;resize:vertical;line-height:var(--leading-normal)}.auto-resize-textarea{resize:none;overflow-y:hidden}.select{height:36px;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:32px}.select option{background:var(--color-bg-elevated);color:var(--color-text-primary)}.form-group{display:flex;flex-direction:column;gap:var(--space-1)}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.form-group>label:not(.form-label){color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.form-label{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);transition:all var(--transition-normal)}.card:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-md)}.card-glass{background:var(--color-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--color-glass-border);border-radius:var(--radius-lg);padding:var(--space-5);transition:all var(--transition-normal)}.card-glass:hover{background:var(--color-glass-hover);border-color:var(--color-border-accent);box-shadow:var(--shadow-glow);transform:translateY(-2px)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-overlay);animation:fadeIn .2s ease}.modal{background:var(--color-bg-modal, var(--color-bg-secondary));border:1px solid var(--color-border-strong);border-radius:var(--radius-xl);padding:var(--space-8);width:90%;max-width:520px;max-height:85vh;overflow-y:auto;box-shadow:var(--shadow-xl);z-index:var(--z-modal);animation:scaleUp .25s cubic-bezier(.34,1.56,.64,1)}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-6)}.modal-title{font-size:var(--text-xl);font-weight:var(--weight-bold)}.modal-actions{display:flex;gap:var(--space-3);justify-content:flex-end;margin-top:var(--space-6)}.codex-header{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-6);flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.codex-header::-webkit-scrollbar{display:none}.codex-header-left{display:flex;align-items:center;gap:var(--space-3);flex:0 0 auto;min-width:max-content}.codex-header-left h2{display:flex;align-items:center;gap:var(--space-2);margin:0;color:var(--color-text-heading);font-size:var(--text-xl);font-weight:var(--weight-bold);white-space:nowrap}.codex-count{flex:0 0 auto;padding:2px 10px;border-radius:var(--radius-full);background:var(--color-surface-2);color:var(--color-text-muted);font-size:var(--text-sm);white-space:nowrap}.codex-tabs{display:flex;flex:0 0 auto;gap:var(--space-1);padding:3px;border-radius:var(--radius-lg);background:var(--color-surface-2)}.codex-tab{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border:0;border-radius:var(--radius-md);background:transparent;color:var(--color-text-muted);font:inherit;font-size:var(--text-sm);cursor:pointer;transition:color var(--transition-fast),background var(--transition-fast)}.codex-tab:hover{color:var(--color-text-primary)}.codex-tab--active{background:var(--color-surface-3);color:var(--color-accent);font-weight:var(--weight-semibold)}.codex-tab-badge{padding:0 6px;border-radius:var(--radius-full);background:var(--color-warning);color:var(--color-text-inverse);font-size:11px;font-weight:var(--weight-bold)}.codex-header-actions{display:flex;align-items:center;gap:var(--space-2);flex:0 0 auto;flex-wrap:nowrap}.bulk-selection-action{border-color:var(--color-border-strong);background:var(--color-bg-tertiary)}.bulk-selection-action:hover:not(:disabled){border-color:var(--color-border-accent);background:var(--color-bg-hover)}.codex-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:#03060ebd;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:var(--z-modal-overlay);animation:fadeIn .2s ease}.codex-modal{position:relative;isolation:isolate;z-index:var(--z-modal);display:flex;flex-direction:column;width:min(90vw,700px);max-height:85vh;overflow:hidden;border:1px solid var(--color-border-strong);border-radius:var(--radius-xl);background:var(--color-bg-modal);animation:slideUp .25s ease}.codex-modal--sm{max-width:500px}.codex-modal--character{width:min(90vw,820px);max-width:820px}.codex-modal--lg{max-width:800px;max-height:90vh}.codex-modal-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border)}.codex-modal-header h3{min-width:0;margin:0;color:var(--color-text-heading);font-size:var(--text-lg);overflow-wrap:anywhere}.codex-modal-body{flex:1;min-height:0;padding:var(--space-4) var(--space-5);overflow-y:auto}.codex-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-top:1px solid var(--color-border);background:var(--color-bg-modal)}@media(max-width:640px){.form-row{grid-template-columns:minmax(0,1fr)}.codex-modal-overlay{padding:0}}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px var(--space-2);font-size:var(--text-xs);font-weight:var(--weight-medium);border-radius:var(--radius-full);line-height:1.4}.badge-accent{background:var(--color-accent-muted);color:var(--color-accent)}.badge-success{background:var(--color-success-muted);color:var(--color-success)}.badge-warning{background:var(--color-warning-muted);color:var(--color-warning)}.badge-danger{background:var(--color-danger-muted);color:var(--color-danger)}.badge-sm{font-size:10px;padding:1px 6px}.spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.tabs{display:flex;gap:var(--space-1);border-bottom:1px solid var(--color-border);padding-bottom:0}.tab{padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-tertiary);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all var(--transition-fast);margin-bottom:-1px}.tab:hover{color:var(--color-text-primary)}.tab-active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.toast-container{position:fixed;bottom:var(--space-6);right:var(--space-6);z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--space-2)}.toast{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--color-text-primary);background:var(--color-bg-elevated);border:1px solid var(--color-border-strong);box-shadow:var(--shadow-lg);animation:slideInRight .3s var(--transition-spring);min-width:260px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--space-16) var(--space-8);color:var(--color-text-tertiary);gap:var(--space-4)}.empty-state svg{width:48px;height:48px;opacity:.4}.empty-state h3{font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--color-text-secondary)}.empty-state p{font-size:var(--text-sm);max-width:320px}.context-menu{position:absolute;background:var(--color-bg-elevated);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);padding:var(--space-1);min-width:160px;box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);animation:scaleUp .15s ease}.context-menu-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--color-text-secondary);border:none;background:none;border-radius:var(--radius-sm);cursor:pointer;width:100%;transition:all var(--transition-fast)}.context-menu-item:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.context-menu-item.danger:hover{background:var(--color-danger-muted);color:var(--color-danger)}.context-menu-divider{height:1px;background:var(--color-border);margin:var(--space-1) 0}
