body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.feature-lock{align-items:center;background:#ffffff08;background:var(--surface-2,#ffffff08);border:1px dashed #2a2a35;border:1px dashed var(--border-color,#2a2a35);border-radius:8px;color:#9a9aa8;color:var(--text-secondary,#9a9aa8);display:flex;font-size:.78rem;gap:6px;margin:6px 0;padding:6px 10px}.feature-lock__icon{font-size:.8rem;line-height:1}.feature-lock__text{flex:1 1}.feature-lock__link{color:#87ceeb;color:var(--accent,#87ceeb);text-decoration:underline;white-space:nowrap}.settings-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.settings-modal{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;display:flex;flex-direction:column;max-height:80vh;max-width:90vw;overflow:hidden;width:700px}.settings-tabs{border-bottom:1px solid #e0e0e0;display:flex;padding:0 20px}.settings-tab{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:flex;font-size:.95em;gap:8px;padding:12px 20px;position:relative;transition:color .2s}.settings-tab .material-symbols-outlined{font-size:20px}.settings-tab:hover{color:#333}.settings-tab.active{color:#007bff;font-weight:500}.settings-tab.active:after{background:#007bff;bottom:-1px;content:"";height:2px;left:0;position:absolute;right:0}.settings-modal-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px}.settings-modal-header h2{color:#333;font-size:1.5em;margin:0}.close-btn{align-items:center;background:none;border-radius:4px;color:#666;display:flex;font-size:1.5em;height:30px;justify-content:center;transition:background .2s;width:30px}.close-btn:hover{background:#f0f0f0}.settings-modal-content{flex:1 1;overflow-y:auto;padding:20px}.settings-section{margin-bottom:30px}.settings-section h3{color:#333;font-size:1.2em;margin:0 0 10px}.section-description{color:#666;font-size:.95em;margin:0 0 20px}.loading{color:#666;padding:40px;text-align:center}.model-list{display:flex;flex-direction:column;gap:10px}.model-option{align-items:flex-start;border:1px solid #e0e0e0;border-radius:6px;cursor:pointer;display:flex;gap:12px;padding:10px 15px;transition:all .2s}.model-option:hover{background:#f8f9fa;border-color:#007bff}.model-option.selected{background:#e7f3ff;border-color:#007bff}.model-radio{padding-top:2px}.model-radio input[type=radio]{cursor:pointer;height:18px;width:18px}.model-info{flex:1 1}.model-name{align-items:center;color:#333;display:flex;font-weight:600;gap:10px;margin-bottom:2px}.current-badge{background:#28a745;font-size:.85em}.cost-badge,.current-badge{color:#fff;font-weight:400;padding:2px 8px}.cost-badge{background:#6f42c1;border-radius:4px;font-size:.8em;margin-left:auto}.model-cost-indicator{align-items:center;display:inline-flex;gap:3px}.cost-label{color:#888;font-size:11px;margin-right:2px}.cost-pip{background:#ddd;border-radius:50%;flex-shrink:0;height:8px;width:8px}.cost-pip.filled{background:#555}.vision-badge{background:#17a2b8;border-radius:4px;color:#fff;font-size:.8em;font-weight:500;padding:2px 8px}.model-details{display:flex;flex-wrap:wrap;gap:15px}.model-details span{color:#666;font-size:.9em}.context-window{color:#007bff;font-weight:500}.model-description{display:flex;flex-direction:column;flex-shrink:0;justify-content:center;max-width:200px;text-align:right}.best-for{color:#6c757d;font-size:.85em}.model-features{color:#999;font-size:.8em;font-style:italic}.settings-modal-footer{background:#fff;border-top:1px solid #e0e0e0;display:flex;flex-shrink:0;gap:10px;justify-content:flex-end;padding:20px;position:relative;z-index:1}.save-btn{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.95em;padding:8px 20px;transition:background .2s}.save-btn:hover:not(:disabled){background:#0056b3}.save-btn:disabled{background:#ccc;cursor:not-allowed}.color-picker-section{display:flex;flex-direction:column;gap:20px}.color-presets{display:flex;flex-wrap:wrap;gap:12px}.color-preset{align-items:center;border:2px solid #0000;border-radius:8px;cursor:pointer;display:flex;height:48px;justify-content:center;transition:transform .15s,border-color .15s,box-shadow .15s;width:48px}.color-preset:hover{box-shadow:0 2px 8px #0003;transform:scale(1.1)}.color-preset.selected{border-color:#007bff;box-shadow:0 0 0 2px #007bff4d}.color-preset .check-icon{color:#fff;font-size:20px;text-shadow:0 1px 3px #00000080}.custom-color-row{align-items:center;display:flex;gap:12px}.custom-color-row label{color:#666;font-size:.95em;min-width:100px}.custom-color-input{align-items:center;display:flex;gap:10px}.custom-color-input input[type=color]{border:none;border-radius:6px;cursor:pointer;height:40px;padding:0;width:40px}.custom-color-input input[type=color]::-webkit-color-swatch-wrapper{padding:0}.custom-color-input input[type=color]::-webkit-color-swatch{border:1px solid #ddd;border-radius:4px}.custom-color-input input[type=text]{border:1px solid #ddd;border-radius:4px;font-family:monospace;font-size:.95em;padding:8px 12px;width:100px}.custom-color-input input[type=text]:focus{border-color:#007bff;outline:none}.color-preview{align-items:center;display:flex;gap:12px}.color-preview span{color:#666;font-size:.95em;min-width:100px}.preview-box{align-items:center;border:1px solid #ddd;border-radius:8px;display:flex;height:100px;justify-content:center;position:relative;width:200px}.preview-node{background:#2d3748;border-radius:6px;box-shadow:0 2px 4px #0000004d;color:#fff;font-size:.9em;padding:8px 16px}.entity-row-colors{display:flex;flex-direction:column;gap:16px}.row-color-setting{align-items:center;display:flex;gap:12px}.row-color-setting label{color:#666;font-size:.95em;min-width:100px}.entity-rows-preview{border:1px solid #ddd;border-radius:6px;overflow:hidden;width:200px}.entity-rows-preview .preview-row{border-bottom:1px solid #eee;color:#333;font-size:.9em;padding:10px 16px}.entity-rows-preview .preview-row:last-child{border-bottom:none}.model-option.disabled{cursor:not-allowed;opacity:.5}.model-option.disabled:hover{background:#0000;border-color:#e0e0e0}.model-option.disabled.selected:hover{background:#e7f3ff;border-color:#007bff}.access-denied-page{align-items:center;background:var(--bg-base);display:flex;justify-content:center;min-height:100vh;padding:var(--spacing-lg)}.access-denied-card{align-items:center;background:var(--card-background);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;max-width:440px;padding:var(--spacing-2xl) var(--spacing-xl);text-align:center;width:100%}.access-denied-icon{color:var(--text-secondary);font-size:40px;line-height:1;margin-bottom:var(--spacing-md)}.access-denied-heading{color:var(--text-primary);font-family:var(--font-heading);font-size:24px;font-weight:600;margin-bottom:var(--spacing-sm)}.access-denied-heading:focus,.access-denied-heading:focus-visible{border-radius:var(--radius-sm);outline:2px solid var(--ring);outline-offset:4px}.access-denied-explanation{color:var(--text-secondary);font-size:14px;line-height:1.5;margin-bottom:var(--spacing-xl)}.access-denied-live-region{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.access-denied-actions{display:flex;gap:var(--spacing-sm);width:100%}.access-denied-back,.access-denied-projects{border-radius:var(--radius-sm);cursor:pointer;flex:1 1;font-family:var(--font-primary);font-size:14px;font-weight:500;padding:var(--spacing-sm) var(--spacing-md);transition:var(--transition-fast)}.access-denied-back{background:#0000;border:1px solid var(--border-strong);color:var(--text-primary)}.access-denied-back:hover{background:var(--surface-1)}.access-denied-projects{background:var(--accent-primary);border:1px solid var(--accent-primary);color:var(--accent-primary-foreground)}.access-denied-projects:hover{background:var(--accent-primary-hover);border-color:var(--accent-primary-hover)}.access-denied-back:focus-visible,.access-denied-projects:focus-visible{outline:2px solid var(--ring);outline-offset:2px}@media (max-width:480px){.access-denied-actions{flex-direction:column}}.modal-content{background-color:var(--bg-panel);border-radius:var(--radius);border-radius:var(--radius-lg,var(--radius));box-shadow:0 20px 40px #00000080}.campaign-setup-modal{max-width:520px;padding:28px;width:100%}.entry-choice-header{margin-bottom:20px;padding-right:32px;position:relative}.entry-choice-header h2{color:var(--text-primary);font-size:20px;font-weight:600;margin:0 0 8px}.entry-choice-header p{color:var(--text-secondary);font-size:13px;line-height:1.6;margin:0}.entry-choice-header .modal-close{background:#0000;border:none;color:var(--text-secondary);cursor:pointer;font-size:22px;line-height:1;padding:4px 8px;position:absolute;right:0;top:-4px}.entry-choice-header .modal-close:hover{color:var(--text-primary)}.campaign-setup-form{display:flex;flex-direction:column;gap:16px}.campaign-setup-field{display:flex;flex-direction:column;gap:6px}.campaign-setup-label{color:var(--text-primary);font-size:13px;font-weight:600}.campaign-setup-label em{color:var(--text-muted);font-style:normal;font-weight:400}.campaign-setup-field input,.campaign-setup-field textarea{background-color:var(--bg-base);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-family:inherit;font-size:14px;padding:10px 12px;resize:vertical;width:100%}.campaign-setup-field input:focus,.campaign-setup-field textarea:focus{border-color:var(--accent);outline:none}.campaign-setup-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:6px}.user-menu{align-items:center;display:flex;position:relative}.user-menu-login-btn{background:#6366f1;background:var(--accent-color,#6366f1);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:background-color .2s}.user-menu-login-btn:hover{background:#4f46e5;background:var(--accent-hover,#4f46e5)}.user-menu-trigger{align-items:center;background:#0000;border:1px solid #3f3f46;border:1px solid var(--border-color,#3f3f46);border-radius:4px;color:#e4e4e7;color:var(--text-primary,#e4e4e7);cursor:pointer;display:flex;gap:.5rem;padding:.375rem .75rem;transition:all .2s}.user-menu-trigger:hover{background:#27272a;background:var(--bg-secondary,#27272a);border-color:#6366f1;border-color:var(--accent-color,#6366f1)}.user-avatar{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:.75rem;font-weight:600;height:28px;justify-content:center;overflow:hidden;width:28px}.user-avatar-img{border-radius:50%;height:100%;object-fit:cover;width:100%}.user-name{font-size:.875rem;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-arrow{font-size:.625rem;opacity:.7}.user-menu-dropdown{animation:userMenuFadeIn .15s ease-out;background:#27272a;background:var(--bg-secondary,#27272a);border:1px solid #3f3f46;border:1px solid var(--border-color,#3f3f46);border-radius:8px;box-shadow:0 4px 20px #0000004d;overflow:hidden;position:absolute;right:0;top:calc(100% + 8px);width:220px;z-index:1000}@keyframes userMenuFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.user-menu-header{background:#1f1f23;background:var(--bg-tertiary,#1f1f23);padding:.75rem 1rem}.user-menu-email{color:#a1a1aa;color:var(--text-secondary,#a1a1aa);font-size:.8125rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-badge{border-radius:4px;display:inline-block;font-size:.6875rem;font-weight:600;letter-spacing:.05em;margin-top:.375rem;padding:.125rem .5rem;text-transform:uppercase}.user-menu-badge.admin{background:#ef444433;color:#f87171}.user-menu-divider{background:#3f3f46;background:var(--border-color,#3f3f46);height:1px}.user-menu-item{align-items:center;background:#0000;border:none;color:#e4e4e7;color:var(--text-primary,#e4e4e7);cursor:pointer;display:flex;font-size:.875rem;gap:.75rem;padding:.625rem 1rem;text-align:left;transition:background-color .15s;width:100%}.user-menu-item:hover{background:#3f3f46;background:var(--bg-hover,#3f3f46)}.user-menu-item .material-symbols-outlined{color:#a1a1aa;color:var(--text-secondary,#a1a1aa);font-size:1.125rem}.user-menu-item.sign-out,.user-menu-item.sign-out .material-symbols-outlined{color:#f87171}.user-menu-item.sign-out:hover{background:#ef44441a}.annotator-overlay{background:#111;bottom:0;display:flex;flex-direction:column;left:0;position:fixed;right:0;top:0;z-index:10001}.annotator-toolbar{align-items:center;background:var(--bg-base);border-bottom:1px solid var(--bg-elevated);display:flex;flex-shrink:0;gap:12px;padding:10px 16px}.annotator-tool-btn,.annotator-tools{display:flex;gap:6px}.annotator-tool-btn{align-items:center;background:var(--bg-panel);border:1px solid var(--bg-elevated);border-radius:var(--radius);color:#aaa;cursor:pointer;font-size:13px;padding:7px 12px;transition:all .15s ease}.annotator-tool-btn:hover{background:#363636;color:var(--text-primary)}.annotator-tool-btn.active{background:#667eea33;border-color:#667eea;color:var(--text-primary)}.annotator-tool-btn .material-symbols-outlined{font-size:17px}.annotator-divider{background:var(--bg-elevated);flex-shrink:0;height:28px;width:1px}.annotator-colors{align-items:center;display:flex;gap:7px}.annotator-color-btn{border:2px solid #0000;border-radius:50%;cursor:pointer;flex-shrink:0;height:20px;padding:0;transition:all .15s ease;width:20px}.annotator-color-btn:hover{transform:scale(1.15)}.annotator-color-btn.active{border-color:var(--text-primary);box-shadow:0 0 0 1px #000;transform:scale(1.2)}.annotator-history{display:flex;gap:4px}.annotator-icon-btn{align-items:center;background:var(--bg-panel);border:1px solid var(--bg-elevated);border-radius:var(--radius);color:#aaa;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .15s ease;width:32px}.annotator-icon-btn:hover:not(:disabled){background:#363636;color:var(--text-primary)}.annotator-icon-btn:disabled{cursor:not-allowed;opacity:.35}.annotator-icon-btn .material-symbols-outlined{font-size:17px}.annotator-spacer{flex:1 1}.annotator-confirm{display:flex;gap:8px}.annotator-cancel-btn{background:#0000;border:1px solid var(--bg-elevated);border-radius:var(--radius);color:#aaa;cursor:pointer;font-size:13px;padding:7px 16px;transition:all .15s ease}.annotator-cancel-btn:hover{background:var(--bg-panel);color:var(--text-primary)}.annotator-done-btn{background:#667eea;border:none;border-radius:var(--radius);color:var(--text-primary);cursor:pointer;font-size:13px;font-weight:500;padding:7px 16px;transition:background .15s ease}.annotator-done-btn:hover{background:#5a6fd6}.annotator-canvas-area{align-items:center;display:flex;flex:1 1;justify-content:center;overflow:auto;padding:24px}.annotator-canvas{box-shadow:0 4px 24px #0009;cursor:crosshair;display:block}.bug-report-overlay{align-items:center;background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.bug-report-modal{background:var(--bg-base);border:1px solid var(--bg-elevated);border-radius:var(--radius);box-shadow:0 8px 32px #0006;max-height:90vh;max-width:90vw;overflow-y:auto;width:480px}.bug-report-header{align-items:center;border-bottom:1px solid var(--bg-elevated);display:flex;justify-content:space-between;padding:16px 20px}.bug-report-header h2{align-items:center;color:var(--text-primary);display:flex;font-size:18px;font-weight:600;gap:8px;margin:0}.bug-report-header h2 .material-symbols-outlined{color:var(--status-destructive);font-size:24px}.bug-report-close{align-items:center;background:none;border:none;border-radius:var(--radius);color:var(--text-muted);cursor:pointer;display:flex;justify-content:center;padding:4px;transition:all .2s ease}.bug-report-close:hover{background:var(--bg-elevated);color:var(--text-primary)}.bug-report-body{display:flex;flex-direction:column;gap:20px;padding:20px}.bug-report-field{display:flex;flex-direction:column;gap:8px}.bug-report-field label{color:#ccc;font-size:14px;font-weight:500}.bug-report-field textarea{background:var(--bg-panel);border:1px solid var(--bg-elevated);border-radius:var(--radius);color:var(--text-primary);font-family:inherit;font-size:14px;min-height:100px;padding:12px;resize:vertical;transition:border-color .2s ease}.bug-report-field textarea:focus{border-color:#667eea;outline:none}.bug-report-field textarea::placeholder{color:#666}.severity-options{display:flex;flex-direction:column;gap:8px}.severity-option{align-items:center;background:var(--bg-panel);border:1px solid var(--bg-elevated);border-radius:var(--radius);cursor:pointer;display:flex;gap:12px;padding:10px 12px;transition:all .2s ease}.severity-option:hover{background:#363636}.severity-option.selected{background:#667eea1a;border-color:#667eea}.severity-option input{display:none}.severity-dot{border-radius:50%;flex-shrink:0;height:12px;width:12px}.severity-dot.low{background:#4a9eff}.severity-dot.medium{background:#f5a623}.severity-dot.high{background:#f97316}.severity-dot.critical{background:#ef4444}.severity-label{display:flex;flex-direction:column;gap:2px}.severity-label strong{color:var(--text-primary);font-size:14px}.severity-label small{color:var(--text-muted);font-size:12px}.bug-report-info{align-items:center;background:#667eea1a;border:1px solid #667eea4d;border-radius:var(--radius);color:#a0b0ff;display:flex;font-size:13px;gap:8px;padding:12px}.bug-report-info .material-symbols-outlined{flex-shrink:0;font-size:18px}.bug-report-error{align-items:center;background:#ef44441a;border:1px solid #ef44444d;border-radius:var(--radius);color:#fca5a5;display:flex;font-size:13px;gap:8px;padding:12px}.bug-report-error .material-symbols-outlined{flex-shrink:0;font-size:18px}.bug-report-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:8px}.bug-report-cancel-btn{background:#0000;border:1px solid var(--bg-elevated);border-radius:var(--radius);color:#ccc;cursor:pointer;font-size:14px;padding:10px 20px;transition:all .2s ease}.bug-report-cancel-btn:hover:not(:disabled){background:var(--bg-elevated);color:var(--text-primary)}.bug-report-cancel-btn:disabled{cursor:not-allowed;opacity:.5}.bug-report-submit-btn{align-items:center;background:#667eea;border:none;border-radius:var(--radius);color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 20px;transition:all .2s ease}.bug-report-submit-btn:hover:not(:disabled){background:#5a6fd6}.bug-report-submit-btn:disabled{cursor:not-allowed;opacity:.5}.bug-report-submit-btn .material-symbols-outlined{font-size:18px}.bug-report-submit-btn .loading-spinner{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top:2px solid var(--text-primary);height:16px;width:16px}.bug-report-success{align-items:center;display:flex;flex-direction:column;gap:12px;padding:40px 20px;text-align:center}.bug-report-success .success-icon{color:#4ade80;font-size:48px}.bug-report-success h3{color:var(--text-primary);font-size:20px;margin:0}.bug-report-success p{color:var(--text-muted);font-size:14px;margin:0}.bug-report-success .issue-link{align-items:center;color:#667eea;display:flex;font-size:14px;gap:4px;margin-top:8px;text-decoration:none;transition:color .2s ease}.bug-report-success .issue-link:hover{color:#8b9bf4}.bug-report-success .issue-link .material-symbols-outlined{font-size:16px}.bug-report-done-btn{background:#667eea;border:none;border-radius:var(--radius);color:var(--text-primary);cursor:pointer;font-size:14px;font-weight:500;margin-top:16px;padding:10px 32px;transition:all .2s ease}.bug-report-done-btn:hover{background:#5a6fd6}.bug-report-validation-hint{color:#f97316;display:block;font-size:12px;margin-top:4px}.bug-report-screenshot-section{border:1px solid var(--bg-elevated);border-radius:var(--radius);display:flex;flex-direction:column;gap:8px;overflow:hidden}.bug-report-screenshot-header{align-items:center;background:#667eea14;color:#a0b0ff;display:flex;font-size:13px;gap:8px;padding:8px 12px}.bug-report-screenshot-header .material-symbols-outlined{flex-shrink:0;font-size:17px}.bug-report-screenshot-header span:nth-child(2){flex:1 1}.bug-report-annotate-btn{align-items:center;background:var(--bg-panel);border:1px solid var(--text-muted);border-radius:var(--radius);color:#ccc;cursor:pointer;display:flex;flex-shrink:0;font-size:12px;gap:5px;padding:5px 10px;transition:all .15s ease}.bug-report-annotate-btn:hover:not(:disabled){background:var(--bg-elevated);border-color:#667eea;color:var(--text-primary)}.bug-report-annotate-btn:disabled{cursor:not-allowed;opacity:.5}.bug-report-annotate-btn .material-symbols-outlined{font-size:15px}.bug-report-screenshot-preview{background:#111;display:block;max-height:180px;object-fit:contain;width:100%}.report-type-toggle{border:1px solid var(--bg-elevated);border-radius:var(--radius);display:flex;gap:0;overflow:hidden}.report-type-btn{align-items:center;background:var(--bg-panel);border:none;color:var(--text-muted);cursor:pointer;display:flex;flex:1 1;font-size:13px;font-weight:500;gap:7px;justify-content:center;padding:9px 12px;transition:all .15s ease}.report-type-btn:first-child{border-right:1px solid var(--bg-elevated)}.report-type-btn:hover:not(:disabled):not(.active){background:#363636;color:#ccc}.report-type-btn.active{background:#667eea26;color:var(--text-primary)}.report-type-btn .material-symbols-outlined{font-size:17px}.report-type-btn:disabled{cursor:not-allowed;opacity:.5}:root{--lw-coach-reserve:240px}.lw-coach{background:#1e1e2a;background:var(--bg-elevated,#1e1e2a);border:1px solid #ffffff1f;border:1px solid var(--border,#ffffff1f);border-radius:12px;bottom:18px;box-shadow:0 10px 34px #00000061;padding:14px;position:fixed;right:18px;width:268px;z-index:1100}.lw-coach--above-dock{bottom:372px}.lw-coach--beneath-narrator{z-index:850}.lw-coach-top{align-items:center;display:flex;justify-content:space-between}.lw-coach-top-actions{align-items:center;display:inline-flex;gap:2px}.lw-coach--inline{border-bottom:none;border-left:none;border-radius:0;border-right:none;bottom:auto;box-shadow:none;flex-shrink:0;position:static;right:auto;width:100%}.lw-coach--inline.lw-coach--above-dock{bottom:auto}.lw-coach--inline:not(.lw-coach--collapsed){max-height:42vh;overflow-y:auto}.lw-coach--inline.lw-coach--collapsed{padding:0}.lw-coach-collapsed-row{align-items:center;background:none;border:none;color:#e8e8ea;color:var(--text-primary,#e8e8ea);cursor:pointer;display:flex;font:inherit;gap:8px;padding:10px 14px;text-align:left;width:100%}.lw-coach-collapsed-row .material-symbols-outlined{color:#c9a76a;color:var(--accent,#c9a76a);flex-shrink:0;font-size:17px}.lw-coach-collapsed-row .material-symbols-outlined:last-child{color:#6a6a70;color:var(--text-muted,#6a6a70);margin-left:auto}.lw-coach-collapsed-text{flex:1 1;font-size:13px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lw-coach-phase{align-items:center;color:#6a6a70;color:var(--text-muted,#6a6a70);display:inline-flex;font-size:11px;gap:6px}.lw-coach-phase .material-symbols-outlined{font-size:15px}.lw-coach-x{background:none;border:none;color:#6a6a70;color:var(--text-muted,#6a6a70);cursor:pointer;line-height:1;padding:2px}.lw-coach-x .material-symbols-outlined{font-size:18px}.lw-coach-x:hover{color:#a0a0a6;color:var(--text-secondary,#a0a0a6)}.lw-coach-head{color:#e8e8ea;color:var(--text-primary,#e8e8ea);font-size:14px;font-weight:500;margin:8px 0 4px}.lw-coach-why{color:#a0a0a6;color:var(--text-secondary,#a0a0a6);font-size:12.5px;line-height:1.5;margin-bottom:11px}.lw-coach-btn{align-items:center;background:#c9a76a;background:var(--accent,#c9a76a);border:none;border-radius:8px;color:#16131c;cursor:pointer;display:inline-flex;font-size:13px;font-weight:500;gap:6px;padding:7px 12px}.lw-coach-btn .material-symbols-outlined{font-size:16px}.lw-coach-btn:hover{filter:brightness(1.06)}.lw-coach-more{align-items:center;background:none;border:none;color:#6a6a70;color:var(--text-muted,#6a6a70);cursor:pointer;display:inline-flex;font-size:12px;gap:6px;margin-top:11px;padding:0}.lw-coach-more .material-symbols-outlined{font-size:15px}.lw-coach-more:hover{color:#a0a0a6;color:var(--text-secondary,#a0a0a6)}.lw-coach-checklist{border-top:1px solid #ffffff1a;border-top:1px solid var(--border,#ffffff1a);margin-top:10px;padding-top:8px}.lw-coach-phaselabel{color:#6a6a70;color:var(--text-muted,#6a6a70);font-size:10.5px;margin:7px 0 2px}.lw-coach-step{align-items:center;border-radius:6px;color:#a0a0a6;color:var(--text-secondary,#a0a0a6);display:flex;font-size:12px;gap:7px;padding:3px 4px}.lw-coach-step .material-symbols-outlined{font-size:16px}.lw-coach-step.state-current{color:#c9a76a;color:var(--accent,#c9a76a)}.lw-coach-step.state-locked{color:#6a6a70;color:var(--text-muted,#6a6a70)}.lw-coach-step-name{flex:1 1}.lw-coach-step-state{font-size:10.5px;letter-spacing:.04em;opacity:.75;text-transform:uppercase;white-space:nowrap}.lw-coach-step.state-auto_filled .lw-coach-step-state{color:#7bc47f;opacity:.9}.ann-rail{display:flex;flex-direction:column;gap:10px;min-width:0}.ann-rail__head{align-items:center;display:flex;gap:8px;justify-content:space-between}.ann-rail__title{color:var(--text-muted);font-size:var(--label-size);letter-spacing:var(--tracking-label);text-transform:uppercase}.ann-rail__toggle{background:none;border:none;border-radius:4px;color:var(--text-muted);cursor:pointer;font-size:var(--content-size-sm);padding:2px 4px}.ann-rail__toggle:hover{background:var(--surface-hover);color:var(--text-primary)}.ann-rail__group-label{color:var(--text-muted);font-size:var(--content-size-sm);padding:2px 0}.ann-follow{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.ann-follow__label{color:var(--text-muted);font-size:var(--label-size)}.ann-follow__tiers{display:flex;gap:4px}.ann-follow__tier{background:none;border:1px solid var(--border-strong);border-radius:var(--radius-pill);color:var(--text-muted);cursor:pointer;font-size:var(--label-size);padding:2px 8px}.ann-follow__tier--active{background:var(--accent-tint);border-color:var(--accent);color:var(--accent)}.ann-follow__tier:disabled{cursor:default;opacity:.6}.ann-rail__empty{color:var(--text-muted);font-size:var(--content-size-sm);line-height:var(--leading-dense)}.ann-thread{background:var(--surface-1);border:1px solid var(--border-strong);border-radius:6px;display:flex;flex-direction:column;gap:6px;padding:8px 10px}.ann-thread--resolved{opacity:.6}.ann-thread--orphaned{border-left:2px solid var(--status-destructive)}.ann-thread__quote{border-left:2px solid var(--border-strong);color:var(--text-muted);font-size:var(--content-size-sm);font-style:italic;padding-left:8px}.ann-msg{display:flex;flex-direction:column;gap:2px}.ann-msg__meta{align-items:center;color:var(--text-muted);display:flex;font-size:var(--label-size);gap:6px}.ann-msg__body{color:var(--text-primary);font-size:var(--content-size);line-height:var(--leading-dense);white-space:pre-wrap;word-break:break-word}.ann-msg__body--deleted{color:var(--text-muted);font-style:italic}.ann-msg__replies{border-left:1px solid var(--border-strong);display:flex;flex-direction:column;gap:6px;padding-left:10px}.ann-badge{border:1px solid var(--border-strong);border-radius:var(--radius-pill);color:var(--text-muted);font-size:var(--label-size);letter-spacing:.06em;padding:1px 5px;text-transform:uppercase}.ann-badge--agent{border-color:var(--accent-dark);color:var(--accent)}.ann-badge--note{border-color:var(--status-neutral)}.ann-badge--orphaned{border-color:var(--status-destructive);color:var(--status-destructive)}.ann-thread__actions{display:flex;flex-wrap:wrap;gap:6px}.ann-action{background:none;border:none;border-radius:4px;color:var(--text-muted);cursor:pointer;font-size:var(--content-size-sm);padding:2px 4px}.ann-action:hover{background:var(--surface-hover);color:var(--text-primary)}.ann-action--danger:hover{color:var(--status-destructive)}.ann-composer{display:flex;flex-direction:column;gap:6px}.ann-composer__input{background:var(--bg-panel);border:1px solid var(--border-strong);border-radius:6px;color:var(--text-primary);font-family:inherit;font-size:var(--content-size);min-height:52px;padding:6px 8px;resize:vertical;width:100%}.ann-composer__input:focus{border-color:var(--accent-dark);outline:none}.ann-composer__row{align-items:center;display:flex;gap:8px;justify-content:space-between}.ann-composer__kinds{display:flex;gap:4px}.ann-composer__kind{background:none;border:1px solid var(--border-strong);border-radius:var(--radius-pill);color:var(--text-muted);cursor:pointer;font-size:var(--label-size);letter-spacing:.06em;padding:2px 8px;text-transform:uppercase}.ann-composer__kind--active{background:var(--accent-tint);border-color:var(--accent);color:var(--accent)}.ann-composer__submit{background:var(--accent);border:none;border-radius:4px;color:var(--accent-foreground);cursor:pointer;font-size:var(--content-size-sm);padding:4px 12px}.ann-composer__submit:disabled{cursor:default;opacity:.45}.ann-composer__hint{color:var(--text-muted);font-size:var(--label-size);line-height:var(--leading-dense)}.ann-mention{position:relative}.ann-mention__list{background:var(--bg-elevated);border:1px solid var(--border-strong);border-radius:6px;bottom:calc(100% + 4px);box-shadow:0 4px 12px #00000040;display:flex;flex-direction:column;left:0;max-height:200px;min-width:180px;overflow-y:auto;padding:4px;position:absolute;z-index:20}.ann-mention__item{background:none;border:none;border-radius:4px;color:var(--text-primary);cursor:pointer;font-size:var(--content-size-sm);padding:5px 8px;text-align:left}.ann-mention__item:hover{background:var(--surface-hover)}.ann-mention__note{padding:5px 8px}.ann-indicator,.ann-mention__note{color:var(--text-muted);font-size:var(--label-size)}.ann-indicator{align-items:center;background:var(--surface-2);border:none;border-radius:var(--radius-pill);cursor:pointer;display:inline-flex;gap:3px;line-height:1.6;padding:1px 6px}.ann-indicator:hover{background:var(--surface-hover);color:var(--text-primary)}.ann-indicator--empty{opacity:0}.ann-indicator--empty:focus-visible,:hover>.ann-indicator--empty{opacity:.6}.ann-node-badge{align-items:center;background:var(--surface-1);border:1px solid var(--border-strong);border-radius:var(--radius-pill);color:var(--text-muted);cursor:pointer;display:inline-flex;font-size:var(--label-size);gap:3px;line-height:1.4;padding:1px 6px;position:absolute;right:-9px;top:-9px;z-index:30}.ann-node-badge:hover{background:var(--surface-hover);color:var(--text-primary)}.ann-pin-layer{inset:0;overflow:hidden;pointer-events:none;position:absolute;z-index:6}.ann-pin-world{--ann-pin-inv:1;left:0;position:absolute;top:0;transform-origin:0 0}.ann-pin{align-items:center;background:var(--surface-1);border:1px solid var(--border-strong);border-radius:var(--radius-pill);box-shadow:0 2px 6px #00000059;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:var(--content-size-sm);gap:3px;line-height:1.5;padding:2px 8px;pointer-events:auto;position:absolute;transform:scale(var(--ann-pin-inv)) translate(-50%,-100%);transform-origin:0 0;white-space:nowrap}.ann-pin--open,.ann-pin:hover{color:var(--text-primary)}.ann-pin--open{border-color:#667eea;border-color:var(--accent-primary,#667eea)}.ann-pin__count{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ann-board-panel{background:#1a1a1f;background:var(--surface-0,#1a1a1f);border:1px solid var(--border-strong);border-radius:8px;bottom:16px;box-shadow:0 8px 24px #00000073;display:flex;flex-direction:column;gap:8px;overflow-y:auto;padding:12px;position:absolute;right:16px;top:64px;width:320px;z-index:40}.ann-board-panel__head{align-items:center;display:flex;gap:8px;justify-content:space-between}.ann-board-panel__label{color:var(--text-secondary);font-size:var(--content-size-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ann-board-panel__close{background:none;border:none;border-radius:4px;color:var(--text-muted);cursor:pointer;padding:2px 6px}.ann-board-panel__close:hover{background:var(--surface-hover);color:var(--text-primary)}.ann-queue{height:340px}.ann-queue__filters{align-items:center;border-bottom:1px solid var(--border);display:flex;flex-wrap:wrap;gap:8px;padding:8px 12px}.ann-queue__filters select{background:var(--surface-1);border:1px solid var(--border-strong);border-radius:4px;color:var(--text-primary);font-size:var(--content-size-sm);padding:3px 6px}.ann-queue__check{align-items:center;color:var(--text-muted);display:inline-flex;font-size:var(--content-size-sm);gap:5px}.ann-queue__note{color:var(--text-muted);font-size:var(--label-size);padding:4px 12px}.ann-queue__row{background:none;border:none;border-bottom:1px solid var(--border);cursor:pointer;display:flex;flex-direction:column;gap:3px;padding:8px 10px;text-align:left;width:100%}.ann-queue__row:hover{background:var(--surface-hover)}.ann-queue__row:disabled{cursor:default}.ann-queue__row-head{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.ann-queue__badge{background:var(--surface-2);border-radius:var(--radius-pill);color:var(--text-muted);font-size:var(--label-size);letter-spacing:var(--tracking-label);padding:0 6px;text-transform:uppercase}.ann-queue__target{color:var(--text-primary);font-size:var(--content-size-sm)}.ann-queue__orphan{color:var(--text-muted);font-size:var(--label-size);font-style:italic}.ann-queue__body{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-secondary);display:-webkit-box;font-size:var(--content-size-sm);line-height:var(--leading-dense);overflow:hidden}.ann-queue__meta{color:var(--text-muted);font-size:var(--label-size)}.request-state-live-region{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.request-state-empty,.request-state-loading{color:var(--semantic-text-secondary);font-size:.82rem;margin:0}.request-state-stale-banner{background:var(--surface-passive);border:1px solid var(--semantic-warning);border-radius:var(--radius);color:var(--semantic-text-secondary);font-size:.78rem;margin:0 0 8px;padding:6px 10px}.request-state-denied-message,.request-state-failed-message,.request-state-stale-failure{color:var(--semantic-text-primary);font-size:.82rem;margin:0 0 8px}.request-state-retrying-message{color:var(--semantic-text-secondary);font-size:.78rem;margin:6px 0 0}.request-state-retry{background:var(--surface-interactive);border:1px solid var(--semantic-border);border-radius:var(--radius);color:var(--semantic-text-primary);cursor:pointer;font-size:.8rem;padding:5px 12px}.request-state-retry[aria-disabled=true]{cursor:default;opacity:.6}.request-state-retry:not([aria-disabled=true]):hover{background:var(--surface-interactive-hover)}.request-state-inline-link{background:none;border:none;color:var(--action-primary);cursor:pointer;font:inherit;padding:0;text-decoration:underline}.notif-panel{height:380px}.notif-panel__bulk{gap:8px;padding:6px 12px}.notif-panel__bulk,.notif-row{border-bottom:1px solid var(--border);display:flex}.notif-row{align-items:stretch}.notif-row__main{background:none;border:none;cursor:pointer;display:flex;flex:1 1;flex-direction:column;gap:3px;min-width:0;padding:8px 10px;text-align:left}.notif-row__main:hover{background:var(--surface-hover)}.notif-row--unread .ann-queue__target{color:var(--text-primary);font-weight:600}.notif-row__dot{background:var(--accent);border-radius:50%;flex-shrink:0;height:6px;width:6px}.notif-row__done{align-self:center;margin-right:8px;white-space:nowrap}.interrupted-run-notice{align-items:center;background:#6366f11f;background:var(--accent-tint,#6366f11f);border:1px solid #6366f1;border:1px solid var(--accent,#6366f1);border-radius:6px;color:#e4e4e7;color:var(--text-primary,#e4e4e7);display:flex;font-size:.875rem;gap:.75rem;line-height:1.4;padding:.75rem 1rem}.interrupted-run-notice.banner{flex-shrink:0;margin:0 1.5rem;margin:0 var(--spacing-lg,1.5rem)}.interrupted-run-notice-icon{color:#6366f1;color:var(--accent,#6366f1);flex-shrink:0;font-size:1.25rem}.interrupted-run-notice-body{flex:1 1;min-width:0}.interrupted-run-notice-detail{color:#a1a1aa;color:var(--text-secondary,#a1a1aa)}.interrupted-run-notice-actions{align-items:center;display:flex;flex-shrink:0;gap:.5rem}.interrupted-run-notice-dismiss{background:#0000;border:none;color:#a1a1aa;color:var(--text-secondary,#a1a1aa);cursor:pointer;display:inline-flex;padding:2px}.interrupted-run-notice-dismiss .material-symbols-outlined{font-size:1rem}.interrupted-run-notice.compact{align-items:flex-start;flex-wrap:wrap;font-size:.75rem;gap:.375rem .5rem;margin-top:.375rem;padding:.5rem .625rem}.interrupted-run-notice.compact .interrupted-run-notice-icon{font-size:1rem}.interrupted-run-notice.compact .interrupted-run-notice-actions{flex-basis:100%;justify-content:flex-end}.interrupted-run-notice.compact .action-btn{font-size:.75rem;padding:.25rem .625rem}@media (max-width:640px){.interrupted-run-notice.banner{flex-wrap:wrap}.interrupted-run-notice.banner .interrupted-run-notice-actions{flex-basis:100%;justify-content:flex-end}}.operation-center{align-items:center;display:flex;position:relative}.operation-center-trigger{position:relative}.operation-center-trigger-label{font-size:12px;white-space:nowrap}.operation-center-trigger.is-active{color:#6366f1;color:var(--accent,#6366f1)}.operation-center-trigger.has-failure{color:#f87171}.operation-center-trigger .material-symbols-outlined.spin{animation:operationCenterSpin 1.4s linear infinite}@keyframes operationCenterSpin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.operation-center-badge{background:#6366f1;background:var(--accent,#6366f1);border-radius:999px;color:#fff;font-size:.625rem;font-weight:700;height:15px;line-height:15px;min-width:15px;padding:0 3px;position:absolute;right:0;text-align:center;top:0}.operation-center-trigger.has-failure .operation-center-badge{background:#ef4444}.operation-center-panel{background:#27272a;background:var(--bg-secondary,#27272a);border:1px solid #3f3f46;border:1px solid var(--border-color,#3f3f46);border-radius:8px;box-shadow:0 4px 20px #0000004d;max-height:420px;overflow-y:auto;position:absolute;right:0;top:calc(100% + 8px);width:320px;z-index:1000}.operation-center-panel-header{background:#1f1f23;background:var(--bg-tertiary,#1f1f23);font-weight:600;padding:.75rem 1rem;position:sticky;top:0}.operation-center-empty,.operation-center-panel-header{color:#a1a1aa;color:var(--text-secondary,#a1a1aa);font-size:.8125rem}.operation-center-empty{padding:1.25rem 1rem;text-align:center}.operation-center-list{list-style:none;margin:0;padding:0}.operation-center-item{align-items:flex-start;border-bottom:1px solid #3f3f46;border-bottom:1px solid var(--border-color,#3f3f46);display:flex;gap:.625rem;padding:.625rem 1rem}.operation-center-item:last-child{border-bottom:none}.operation-center-item-icon{color:#a1a1aa;color:var(--text-secondary,#a1a1aa);flex-shrink:0;font-size:1.1rem;margin-top:2px}.operation-center-item-body{flex:1 1;min-width:0}.operation-center-item-title-row{align-items:baseline;display:flex;gap:.5rem;justify-content:space-between}.operation-center-item-title{color:#e4e4e7;color:var(--text-primary,#e4e4e7);font-size:.8125rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.operation-center-item-status{color:#a1a1aa;color:var(--text-secondary,#a1a1aa);flex-shrink:0;font-size:.6875rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.operation-center-item-status.status-failed{color:#f87171}.operation-center-item-status.status-completed{color:#4ade80}.operation-center-item-status.status-interrupted,.operation-center-item-status.status-running{color:#6366f1;color:var(--accent,#6366f1)}.operation-center-item-project{background:#0000;border:none;color:#a1a1aa;color:var(--text-secondary,#a1a1aa);cursor:pointer;display:inline-block;font-size:.75rem;margin-top:.125rem;padding:0;text-decoration:underline;text-underline-offset:2px}.operation-center-item-project:hover{color:#6366f1;color:var(--accent,#6366f1)}.operation-center-progress-track{background:#1f1f23;background:var(--bg-tertiary,#1f1f23);border-radius:999px;height:4px;margin-top:.375rem;overflow:hidden}.operation-center-progress-fill{background:#6366f1;background:var(--accent,#6366f1);height:100%;transition:width .3s ease}.operation-center-item-step{color:#a1a1aa;color:var(--text-secondary,#a1a1aa);font-size:.75rem;margin-top:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.operation-center-item-error{color:#f87171;font-size:.75rem;margin-top:.25rem}.operation-center-dismiss{background:#0000;border:none;border-radius:4px;border-radius:var(--radius,4px);color:#a1a1aa;color:var(--text-secondary,#a1a1aa);cursor:pointer;display:inline-flex;flex-shrink:0;padding:2px}.operation-center-dismiss:hover{background:#3f3f46;background:var(--bg-hover,#3f3f46);color:#e4e4e7;color:var(--text-primary,#e4e4e7)}.operation-center-dismiss .material-symbols-outlined{font-size:1rem}.locale-switcher{display:inline-flex;position:relative}.locale-switcher-trigger{align-items:center;background:#0000;border:1px solid var(--border);border-radius:999px;border-radius:var(--radius-pill,999px);color:var(--text-secondary);cursor:pointer;display:inline-flex;font-family:inherit;font-size:12px;gap:4px;height:28px;padding:0 8px;transition:background .15s,color .15s,border-color .15s}.locale-switcher-trigger:hover{background:var(--bg-hover);color:var(--text-primary)}.locale-switcher-trigger.is-lensed{background:#c9a76a1a;background:var(--accent-tint,#c9a76a1a);border-color:var(--accent);color:var(--accent)}.locale-switcher-trigger .material-symbols-outlined{font-size:15px}.locale-switcher-caret{font-size:14px!important;opacity:.7}.locale-switcher-tag{font-weight:500;letter-spacing:.02em}.locale-switcher-trigger.locale-switcher-setup{gap:6px;text-decoration:none}.locale-switcher-trigger.locale-switcher-setup:hover{background:var(--bg-hover);color:var(--text-primary)}.locale-live-region{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.locale-switcher-menu{background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-md,8px);box-shadow:0 8px 24px #0006;box-shadow:var(--shadow-lg,0 8px 24px #0006);font-size:12px;min-width:280px;padding:6px;position:absolute;right:0;top:calc(100% + 6px);z-index:1000}.locale-row-wrap{border-radius:6px}.locale-row-wrap.is-active{background:var(--bg-hover)}.locale-row{align-items:center;background:#0000;border:none;border-radius:6px;color:var(--text-primary);cursor:pointer;display:flex;font-family:inherit;font-size:12px;gap:10px;justify-content:space-between;padding:7px 8px;text-align:left;width:100%}.locale-row.is-active,.locale-row:hover{background:var(--bg-hover)}.locale-row-name{flex:1 1}.locale-row-meta{align-items:center;color:var(--text-secondary);display:inline-flex;gap:8px}.locale-base-badge{color:var(--text-muted);font-size:11px}.locale-coverage{color:var(--text-secondary)}.locale-stale{color:#ef9f27;font-size:11px}.locale-check{color:var(--accent);font-size:14px!important}.locale-row-actions{display:flex;flex-wrap:wrap;gap:6px;padding:0 8px 7px}.locale-action{background:#0000;border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);cursor:pointer;font-family:inherit;font-size:11px;padding:3px 9px}.locale-action:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.locale-action:disabled{cursor:default;opacity:.6}.locale-menu-sep{background:var(--border);height:1px;margin:5px 4px}.locale-menu-action{align-items:center;background:#0000;border:none;border-radius:6px;color:var(--text-secondary);cursor:pointer;display:flex;font-family:inherit;font-size:12px;gap:6px;padding:7px 8px;text-align:left;width:100%}.locale-menu-action:hover{background:var(--bg-hover);color:var(--text-primary)}.locale-menu-action .material-symbols-outlined{font-size:15px}.locale-add-list{max-height:240px;overflow-y:auto;padding:2px}.locale-add-item{align-items:center;background:#0000;border:none;border-radius:6px;color:var(--text-primary);cursor:pointer;display:flex;font-family:inherit;font-size:12px;justify-content:space-between;padding:6px 8px;text-align:left;width:100%}.locale-add-item:hover{background:var(--bg-hover)}.locale-add-item:disabled{cursor:default;opacity:.6}.locale-add-tag{color:var(--text-muted);font-size:11px}.type-add-popover{background:var(--color-surface);background:var(--bg-elevated,var(--color-surface));border:1px solid var(--border,var(--color-border));border-radius:6px;border-radius:var(--radius,6px);box-shadow:0 8px 24px #0000004d;box-shadow:var(--shadow-lg,0 8px 24px #0000004d);cursor:default;left:20px;margin-top:2px;padding:10px 12px;position:absolute;top:100%;white-space:normal;width:260px;z-index:2000}.type-add-popover-title{color:var(--text-primary);font-size:12px;font-weight:700;margin-bottom:4px}.type-add-popover-basis{color:var(--text-secondary);font-size:11px;line-height:1.4;margin:0 0 10px}.type-add-popover-field{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.type-add-popover-field label{color:var(--text-secondary);font-size:11px}.type-add-popover-field input,.type-add-popover-field textarea{background:var(--color-background);background:var(--bg-primary,var(--color-background));border:1px solid var(--border,var(--color-border));border-radius:4px;color:var(--text-primary);font-family:inherit;font-size:12px;padding:6px 8px;resize:vertical}.type-add-popover-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;margin-top:4px}.type-add-popover-cancel,.type-add-popover-submit{border-radius:4px;cursor:pointer;font-size:12px;padding:5px 12px}.type-add-popover-cancel{background:#0000;border:1px solid var(--border,var(--color-border));color:var(--text-secondary)}.type-add-popover-submit{background:var(--accent);background:var(--color-primary,var(--accent));border:none;color:var(--text-primary);font-weight:600}.lw-button{align-items:center;border:1px solid #0000;border-radius:var(--radius-sm);display:inline-flex;font:inherit;font-size:var(--content-size);font-weight:650;gap:6px;justify-content:center;line-height:1.2;min-height:36px;padding:7px 12px;white-space:nowrap}.lw-control--compact{min-height:32px;padding:5px 9px}.lw-button--primary{background:var(--action-primary);color:var(--semantic-text-on-action)}.lw-button--primary:hover:not(:disabled){background:var(--action-primary-hover)}.lw-button--primary:active:not(:disabled){background:var(--action-primary-pressed)}.lw-button--secondary{background:var(--surface-interactive);border-color:var(--semantic-border);color:var(--semantic-text-primary)}.lw-button--ghost:hover:not(:disabled),.lw-button--secondary:hover:not(:disabled){background:var(--surface-interactive-hover)}.lw-button--ghost{background:#0000;color:var(--semantic-text-secondary)}.lw-button--danger{background:#0000;border-color:var(--semantic-danger);color:var(--semantic-danger)}.lw-button--danger:hover:not(:disabled){background:var(--surface-interactive-hover)}.lw-button:disabled{background:var(--surface-disabled);color:var(--semantic-text-disabled);cursor:not-allowed;opacity:.72}.lw-button__icon{display:inline-flex}.lw-icon-button{min-width:32px;padding:5px;width:32px}.lw-icon-button .lw-button__label{display:inline-flex}.lw-action-group{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.lw-field{grid-gap:5px;display:grid;gap:5px;min-width:0}.lw-field__label{color:var(--semantic-text-primary);font-size:var(--content-size-sm);font-weight:650}.lw-field__error,.lw-field__required{color:var(--semantic-danger)}.lw-field__error,.lw-field__hint{font-size:var(--content-size-sm);line-height:var(--leading-dense)}.lw-field__hint{color:var(--semantic-text-muted)}.lw-input,.lw-select{background:var(--surface-interactive);border:1px solid var(--semantic-border);border-radius:var(--radius-sm);color:var(--semantic-text-primary);font:inherit;font-size:var(--content-size);min-height:36px;padding:7px 10px;width:100%}.lw-input:hover:not(:disabled):not([readonly]),.lw-select:hover:not(:disabled){border-color:var(--semantic-border-strong)}.lw-field--invalid .lw-input,.lw-field--invalid .lw-select{border-color:var(--semantic-danger)}.lw-control--read-only{background:var(--surface-read-only);color:var(--semantic-text-secondary)}.lw-control--disabled,.lw-input:disabled,.lw-select:disabled{background:var(--surface-disabled);color:var(--semantic-text-disabled);cursor:not-allowed;opacity:.72}.lw-choice{align-items:flex-start;color:var(--semantic-text-primary);display:flex;font-size:var(--content-size);gap:8px}.lw-choice input{accent-color:var(--action-primary);flex:0 0 auto;margin-top:2px}.lw-choice label{cursor:pointer;font-weight:600}.lw-choice input[role=switch]{appearance:none;background:var(--surface-interactive);border:1px solid var(--semantic-border-strong);border-radius:var(--radius-pill);height:18px;margin-top:0;position:relative;width:32px}.lw-choice input[role=switch]:after{background:var(--semantic-text-secondary);border-radius:50%;content:"";height:12px;left:2px;position:absolute;top:2px;transition:transform var(--transition-fast);width:12px}.lw-choice input[role=switch]:checked{background:var(--selection-surface);border-color:var(--selection-border)}.lw-choice input[role=switch]:checked:after{background:var(--action-primary);transform:translateX(14px)}.lw-page-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;padding:16px 0}.lw-page-header__copy{max-width:72ch;min-width:0}.lw-page-header__eyebrow{color:var(--semantic-text-muted);font-size:var(--label-size);font-weight:700;letter-spacing:var(--tracking-label);margin-bottom:4px;text-transform:uppercase}.lw-page-header h1{color:var(--semantic-text-primary);font-size:22px;line-height:1.25;margin:0}.lw-page-header p{color:var(--semantic-text-secondary);font-size:var(--content-size);margin:5px 0 0}.lw-page-header__actions{flex:0 1 auto}.lw-local-nav,.lw-tabs{align-items:center;display:flex;gap:4px;overflow-x:auto}.lw-local-nav a,.lw-tabs [role=tab]{background:#0000;border:0;border-radius:var(--radius-sm);color:var(--semantic-text-secondary);font:inherit;font-size:var(--content-size);min-height:34px;padding:6px 10px;white-space:nowrap}.lw-local-nav a:hover,.lw-tabs [role=tab]:hover:not(:disabled){background:var(--surface-interactive-hover);color:var(--semantic-text-primary)}.lw-local-nav a[aria-current=page],.lw-tabs [aria-selected=true]{background:var(--selection-surface);box-shadow:inset 0 -2px 0 var(--selection-border);color:var(--semantic-text-primary)}.lw-card,.lw-drawer,.lw-table-frame{background:var(--surface-raised);border:1px solid var(--semantic-border);border-radius:var(--radius-md)}.lw-card{padding:14px}.lw-list-row{align-items:center;border-bottom:1px solid var(--semantic-border);color:var(--semantic-text-primary);display:flex;gap:12px;min-height:40px;padding:8px 10px}.lw-list-row--selected{background:var(--selection-surface);box-shadow:inset 2px 0 0 var(--selection-border)}.lw-list-row__content{flex:1 1;min-width:0}.lw-list-row__trailing{flex:0 0 auto}.lw-table-frame{max-width:100%;overflow:auto}.lw-table-frame table{border-collapse:collapse;font-size:var(--content-size);width:100%}.lw-table-frame td,.lw-table-frame th{border-bottom:1px solid var(--semantic-border);padding:8px 10px;text-align:left}.lw-table-frame th{background:var(--surface-panel);color:var(--semantic-text-muted);font-size:var(--label-size);letter-spacing:var(--tracking-label);text-transform:uppercase}.lw-chip{align-items:center;background:var(--surface-passive);border:1px solid var(--semantic-border);border-radius:var(--radius-pill);color:var(--semantic-text-secondary);display:inline-flex;font-size:var(--content-size-sm);font-weight:650;line-height:1.2;min-height:22px;padding:2px 8px}.lw-chip__marker{font-weight:800;margin-right:4px}.lw-chip--selected{background:var(--selection-surface);border-color:var(--selection-border);color:var(--semantic-text-primary)}.lw-chip--success{border-color:var(--semantic-success);color:var(--semantic-success)}.lw-chip--warning{border-color:var(--semantic-warning);color:var(--semantic-warning)}.lw-chip--danger{border-color:var(--semantic-danger);color:var(--semantic-danger)}.lw-drawer{box-shadow:var(--semantic-shadow);display:flex;flex-direction:column;max-height:100%;width:min(420px,100%)}.lw-drawer__footer,.lw-drawer__header{align-items:center;background:var(--surface-panel);display:flex;flex:0 0 auto;gap:8px;padding:10px 12px}.lw-drawer__header{border-bottom:1px solid var(--semantic-border)}.lw-drawer__footer{border-top:1px solid var(--semantic-border);justify-content:flex-end}.lw-drawer__header h2{color:var(--semantic-text-primary);flex:1 1;font-size:var(--title-size);margin:0}.lw-drawer__body{flex:1 1;min-height:0;overflow:auto;padding:12px}.lw-drawer__dirty{color:var(--semantic-warning);font-size:var(--content-size-sm)}@media (max-width:480px){.lw-page-header{grid-gap:12px;display:grid;gap:12px}.lw-page-header__actions,.lw-page-header__actions .lw-action-group{width:100%}.lw-page-header__actions .lw-button{flex:1 1 auto}.lw-drawer{border-radius:0;width:100%}}@media (forced-colors:active){.lw-button,.lw-card,.lw-chip,.lw-choice input,.lw-drawer,.lw-input,.lw-list-row,.lw-local-nav a,.lw-select,.lw-table-frame,.lw-tabs [role=tab]{border-color:CanvasText}.lw-button:focus-visible,.lw-choice input:focus-visible,.lw-input:focus-visible,.lw-local-nav a:focus-visible,.lw-select:focus-visible,.lw-tabs [role=tab]:focus-visible{outline-color:Highlight}.lw-button--primary,.lw-chip--selected,.lw-list-row--selected,.lw-tabs [aria-selected=true]{background:Highlight;color:HighlightText;forced-color-adjust:none}}.billed-hint{font-size:11px;margin-left:6px;opacity:.75;white-space:nowrap}.page-actions{flex:0 0 auto;position:relative}.page-actions__trigger .lw-button__icon .material-symbols-outlined{font-size:18px;line-height:1}.page-actions__menu{background:var(--surface-raised);border:1px solid var(--semantic-border-strong,var(--semantic-border));border-radius:10px;border-radius:var(--radius-lg,10px);box-shadow:var(--shadow-lg);max-height:min(70vh,520px);overflow-y:auto;padding:6px;position:absolute;right:0;top:calc(100% + 6px);width:min(320px,calc(100vw - 32px));z-index:60}.page-actions__group+.page-actions__group{border-top:1px solid var(--semantic-border);margin-top:4px;padding-top:4px}.page-actions__group-label{color:var(--semantic-text-secondary);font-size:11px;font-weight:600;letter-spacing:.08em;padding:8px 10px 4px;text-transform:uppercase}.page-actions__item{align-items:flex-start;background:#0000;border:0;border-radius:6px;border-radius:var(--radius-md,6px);color:var(--semantic-text-primary);cursor:pointer;display:flex;flex-direction:column;font:inherit;font-size:13px;gap:2px;padding:8px 10px;text-align:left;width:100%}.page-actions__item:focus-visible,.page-actions__item:hover{background:var(--surface-hover)}.page-actions__item:focus-visible{outline:2px solid var(--accent-primary);outline:2px solid var(--semantic-focus,var(--accent-primary));outline-offset:-2px}.page-actions__item-label{align-items:center;display:inline-flex;flex-wrap:wrap;gap:8px}.page-actions__item--gated .page-actions__item-label{color:var(--semantic-text-muted)}.page-actions__item[aria-disabled=true]{cursor:not-allowed}.page-actions__item-reason{color:var(--semantic-text-secondary);font-size:12px}.workspace-title-row{align-items:center;background:var(--surface-panel);border-bottom:1px solid var(--semantic-border);display:flex;flex-shrink:0;flex-wrap:wrap;gap:8px 12px;padding:.55rem .875rem}.desktop-layout:has(.consolidated-project-header) .workspace-title-row{background:#0000;border-bottom:0;padding:1rem 1.25rem .5rem}.desktop-layout .workspace-title-row>.workspace-heading{background:#0000;border-bottom:0;flex:1 1 auto;min-width:0;padding:0}@media (max-width:900px){.desktop-main:has(>.aux-panel-trigger) .content-panel>.workspace-slot>.workspace-title-row{padding-left:3.25rem}}.nd-dock{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-lg);color:var(--text-primary);display:flex;flex-direction:column;height:100%;min-height:0;padding:16px}.nd-head{align-items:baseline;display:flex;gap:10px;margin-bottom:12px}.nd-title{color:var(--text-primary);font-size:15px;font-weight:600}.nd-sub{color:var(--text-muted);font-size:12px;letter-spacing:.05em;text-transform:uppercase}.nd-transcript{display:flex;flex:1 1;flex-direction:column;gap:14px;margin-bottom:14px;min-height:0;overflow-y:auto;padding-right:6px}.nd-turn{display:flex;flex-direction:column;gap:4px}.nd-turn-who{color:var(--text-muted);font-size:11px;letter-spacing:.05em;text-transform:uppercase}.nd-turn-text{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);font-size:14px;line-height:1.6;margin:0;padding:9px 12px;white-space:pre-wrap;word-break:break-word}.nd-turn-user{align-items:flex-end}.nd-turn-user .nd-turn-who{align-self:flex-end}.nd-turn-user .nd-turn-text{background:var(--accent-tint)}.nd-turn-thinking{color:var(--text-muted);font-style:italic}.nd-preview{background:var(--bg-elevated);border:1px solid var(--border-strong);border-radius:var(--radius-md);padding:12px}.nd-preview-label{color:var(--accent);font-size:11px;letter-spacing:.05em;text-transform:uppercase}.nd-preview-summary{color:var(--text-primary);font-size:14px;font-weight:500;margin:6px 0 8px}.nd-preview-body{background:var(--bg-panel);border:1px solid var(--border);border-radius:6px;border-radius:var(--radius-sm,6px);color:var(--text-secondary);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;line-height:1.55;margin:0 0 10px;max-height:220px;overflow:auto;padding:8px 10px;white-space:pre-wrap;word-break:break-word}.nd-preview-actions{display:flex;gap:8px}.nd-approve,.nd-cancel,.nd-send{border-radius:var(--radius-md);cursor:pointer;font-size:14px;font-weight:500}.nd-approve{background:var(--accent);border:none;color:var(--accent-foreground);padding:8px 16px}.nd-cancel{background:#0000;border:1px solid var(--border);color:var(--text-secondary);padding:8px 16px}.nd-cancel:hover{border-color:var(--accent);color:var(--accent)}.nd-input-row{display:flex;gap:8px}.nd-input{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);flex:1 1;font-size:14px;height:40px;padding:0 12px}.nd-input:focus{border-color:var(--accent);outline:none}.nd-send{background:var(--accent);border:none;color:var(--accent-foreground);padding:0 16px}.nd-approve:disabled,.nd-cancel:disabled,.nd-send:disabled{cursor:not-allowed;opacity:.5}.nd-spend{color:var(--text-muted);font-size:11px;margin:8px 0 0;text-align:right}.nd-preview-details{color:#c9c9ce;color:var(--text-secondary,#c9c9ce);font-size:12.5px;line-height:1.5;margin:6px 0;padding-left:18px}.nd-preview-details li{margin:2px 0}.nd-preview-cost{color:var(--text-muted);font-size:12px;font-style:italic;margin:6px 0 2px}.nd-input{border-left:3px solid #c9a76a8c}.nd-input:focus{border-left-color:#c9a76a}.nd-error{background:#dc354514;border:1px solid #dc354573;border-radius:8px;color:#e58896;font-size:12.5px;line-height:1.4;margin:6px 0;padding:8px 10px}.global-narrator-window{background:var(--bg-panel);background:var(--surface-panel,var(--bg-panel));border:1px solid var(--semantic-border,var(--border));border-radius:10px;box-shadow:0 18px 50px #0000004d;display:flex;flex-direction:column;height:var(--narrator-height);left:var(--narrator-left);min-height:320px;min-width:360px;overflow:hidden;position:fixed;top:var(--narrator-top);width:var(--narrator-width);z-index:900}.global-narrator-window.is-minimized{height:auto;min-height:0;min-width:0;width:240px}.global-narrator-window.is-minimized .global-narrator-content,.global-narrator-window.is-minimized .global-narrator-resize-handle{display:none}.global-narrator-titlebar{border-bottom:1px solid var(--semantic-border,var(--border));cursor:move;display:flex;gap:12px;justify-content:space-between;padding:10px 12px;-webkit-user-select:none;user-select:none}.global-narrator-titlebar span,.global-narrator-titlebar strong{display:block}.global-narrator-titlebar strong{color:var(--text-primary);color:var(--semantic-text-primary,var(--text-primary))}.global-narrator-titlebar span{color:var(--text-muted);color:var(--semantic-text-muted,var(--text-muted));font-size:11px;margin-top:2px}.global-narrator-window-actions{align-items:start;display:flex;gap:4px}.global-narrator-window-actions button{background:#0000;border:0;color:var(--text-secondary);color:var(--semantic-text-secondary,var(--text-secondary));cursor:pointer;font-size:11px;padding:3px 5px}.global-narrator-window-actions button:focus-visible,.global-narrator-window-actions button:hover{color:var(--accent);color:var(--action-primary,var(--accent))}.global-narrator-content{flex:1 1;min-height:0;padding:8px}.global-narrator-content .nd-dock{border:0;padding:4px}.global-narrator-resize-handle{position:absolute;z-index:2}.handle-n,.handle-s{cursor:ns-resize;height:8px;left:10px;right:10px}.handle-n{top:-4px}.handle-s{bottom:-4px}.handle-e,.handle-w{bottom:10px;cursor:ew-resize;top:10px;width:8px}.handle-e{right:-4px}.handle-w{left:-4px}.handle-ne,.handle-sw{cursor:nesw-resize;height:14px;width:14px}.handle-ne{right:-4px;top:-4px}.handle-sw{bottom:-4px;left:-4px}.handle-nw,.handle-se{cursor:nwse-resize;height:14px;width:14px}.handle-se{bottom:-4px;right:-4px}.handle-nw{left:-4px;top:-4px}.global-narrator-launcher{align-items:center;background:#0000;border:1px solid #0000;color:inherit;cursor:pointer;display:inline-flex;gap:5px;position:relative}.global-narrator-state{font-size:10px}.global-narrator-unread{background:var(--accent);background:var(--action-primary,var(--accent));border-radius:50%;height:6px;width:6px}@media (max-width:700px){.global-narrator-window{border-radius:12px 12px 0 0;height:92vh;inset:auto 0 0;min-height:0;min-width:0;width:100%}.global-narrator-window.is-minimized{height:auto;left:12px;right:12px;width:auto}.global-narrator-launcher-label,.global-narrator-resize-handle{display:none}}.desktop-layout{background:var(--surface-base);color:var(--semantic-text-primary);display:flex;flex-direction:column;font-family:var(--font-primary);height:100vh;overflow:hidden}.skip-link{background:var(--action-primary);border-radius:0 0 var(--radius) 0;color:var(--semantic-text-on-action);font-size:13px;font-weight:600;left:0;padding:.5rem 1rem;position:fixed;top:0;transform:translateY(-120%);transition:transform .1s ease-out;z-index:5000}.skip-link:focus{transform:translateY(0)}.route-status-live-region{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.workspace-heading{color:var(--semantic-text-primary);font-size:15px;font-weight:600;margin:0;padding:.55rem .875rem}.desktop-menubar,.workspace-heading{background:var(--surface-panel);border-bottom:1px solid var(--semantic-border);flex-shrink:0}.desktop-menubar{align-items:center;display:flex;font-size:12px;height:36px;overflow:visible;padding:0 .5rem;scrollbar-width:none;-webkit-user-select:none;user-select:none;z-index:1000}.desktop-menubar::-webkit-scrollbar{display:none}.menubar-nav{height:100%;min-width:max-content}.menubar-logo,.menubar-nav{align-items:center;display:flex}.menubar-logo{border-radius:2px;height:18px;justify-content:center;margin-right:.625rem;opacity:.9;overflow:hidden;transition:opacity .2s;width:18px}.menubar-logo:hover{opacity:1}.menubar-logo img{filter:grayscale(1) brightness(1.08) contrast(1.08);height:18px;object-fit:cover;object-position:center top;transform:scale(1.18);transform-origin:center top;width:18px}.menu-item-wrapper{position:relative}.menu-item-wrapper,.menu-title{align-items:center;display:flex;height:100%}.menu-title{background:#0000;border:none;color:var(--semantic-text-secondary);cursor:pointer;font:inherit;font-size:13px;padding:0 .6rem;text-decoration:none;transition:background .1s,color .1s}.menu-item-wrapper.active .menu-title,.menu-title:hover{background:var(--surface-interactive-hover);color:var(--semantic-text-primary)}.menu-title.current-view{border-bottom:2px solid var(--selection-border);color:var(--semantic-text-primary)}.studio-phase-groups{display:contents}.menu-dropdown{background:var(--surface-raised);border:1px solid var(--semantic-border);border-radius:0 0 var(--radius) var(--radius);box-shadow:var(--semantic-shadow);display:none;left:0;min-width:220px;padding:.25rem 0;position:absolute;top:100%;z-index:2000}.menu-dropdown[data-open=true],.menu-item-wrapper:hover .menu-dropdown{display:block}.menu-action-btn{align-items:center;background:#0000;border:none;color:var(--semantic-text-secondary);cursor:pointer;display:flex;font:inherit;font-size:12px;justify-content:space-between;padding:.4rem 1rem;text-align:left;width:100%}.menu-action-btn:hover:not(:disabled){background:var(--surface-interactive-hover);color:var(--semantic-text-primary)}.menu-action-btn:disabled{color:var(--semantic-text-muted);cursor:default}.menu-separator{background:var(--semantic-border);height:1px;margin:.25rem 0}.project-header{background:var(--surface-base);border-bottom:1px solid var(--semantic-border);flex-shrink:0;height:44px;justify-content:space-between;padding:0 .875rem}.project-header,.project-title-section{align-items:center;display:flex;gap:.5rem}.project-title-section{flex:1 1 auto;min-width:0;overflow:hidden}.project-icon{flex-shrink:0;font-size:1.1rem}.project-name-display{color:var(--semantic-text-primary);font-size:13px;font-weight:600;letter-spacing:.01em;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-name-loading{color:var(--semantic-text-muted);font-style:italic;font-weight:400}.header-tools{align-items:center;display:flex;flex-shrink:0;gap:.4rem}.product-destination__label{min-width:0;overflow:hidden;text-overflow:ellipsis}.product-destination__status{align-items:center;color:var(--semantic-text-muted);display:inline-flex;flex:0 0 auto;font-size:var(--content-size-sm);gap:3px}.product-destination__status .material-symbols-outlined{font-size:15px}.product-destination__status .state-done{color:var(--semantic-success)}.product-destination__status .state-auto_filled,.product-destination__status .state-current{color:var(--status-progress)}.product-destination__status .state-locked{color:var(--semantic-warning)}.project-utility-slot{align-items:center;display:inline-flex;gap:.25rem}.utility-overflow{display:inline-flex;position:relative}.utility-overflow__menu{background:var(--surface-raised);border:1px solid var(--semantic-border);border-radius:var(--radius-sm);box-shadow:var(--semantic-shadow);min-width:220px;padding:4px;position:absolute;right:0;top:calc(100% + 6px);z-index:2200}.utility-overflow__menu[hidden]{display:none}.utility-overflow__menu a,.utility-overflow__menu button{align-items:center;background:#0000;border:0;border-radius:var(--radius-sm);color:var(--semantic-text-secondary);display:flex;font:inherit;font-size:var(--content-size);min-height:32px;padding:6px 9px;text-align:left;width:100%}.utility-overflow__menu a:hover,.utility-overflow__menu button:hover{background:var(--surface-interactive-hover);color:var(--semantic-text-primary)}.utility-overflow__menu button:disabled{background:var(--surface-disabled);color:var(--semantic-text-disabled);cursor:not-allowed}.utility-overflow__label{border-top:1px solid var(--semantic-border);color:var(--semantic-text-muted);font-size:var(--label-size);font-weight:700;letter-spacing:var(--tracking-label);margin:4px 5px 2px;padding-top:6px;text-transform:uppercase}.tool-btn{align-items:center;background:#0000;border:none;border-radius:var(--radius);color:var(--semantic-text-muted);cursor:pointer;display:inline-flex;justify-content:center;padding:4px}.tool-btn:hover{background:var(--surface-interactive-hover);color:var(--semantic-text-primary)}.tool-btn-badge--unavailable{background:var(--semantic-text-muted);border-radius:50%;display:inline-block;height:6px;margin-left:2px;vertical-align:super;width:6px}.tutorial-toggle-btn{align-items:center;background:#0000;border:1px solid var(--action-primary);border-radius:var(--radius-pill);color:var(--action-primary);cursor:pointer;display:inline-flex;font-size:.82rem;font-weight:600;gap:6px;margin-right:4px;padding:5px 12px;transition:background .15s,color .15s,border-color .15s}.tutorial-toggle-btn .material-symbols-outlined{font-size:1.05rem}.tutorial-toggle-btn.is-on,.tutorial-toggle-btn:hover:not(:disabled){background:var(--action-primary);color:var(--semantic-text-on-action)}.tutorial-toggle-btn.is-on{border-color:var(--action-primary)}.tutorial-toggle-btn:disabled{cursor:not-allowed;opacity:.6}.desktop-main{display:flex;flex:1 1;min-height:0;overflow:hidden}.desktop-sidebar-shell{display:flex;flex:0 0 240px;min-height:0;position:relative;transition:width var(--transition),flex-basis var(--transition);width:240px}.desktop-sidebar-shell.is-collapsed{flex-basis:18px;width:18px}.desktop-sidebar,.desktop-sidebar-shell.is-collapsed{background:var(--surface-panel);border-right:1px solid var(--semantic-border)}.desktop-sidebar{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden;width:100%}.aux-column-collapse-toggle{background:var(--surface-panel);border:1px solid var(--semantic-border);border-radius:0 8px 8px 0;box-shadow:3px 0 10px var(--shadow-color);color:var(--semantic-text-secondary);cursor:pointer;display:grid;height:42px;padding:0;place-items:center;position:absolute;right:-11px;top:50%;transform:translateY(-50%);width:22px;z-index:4}.aux-column-collapse-toggle:focus-visible,.aux-column-collapse-toggle:hover{background:var(--surface-interactive-hover);color:var(--semantic-text-primary)}.aux-column-collapse-toggle .material-symbols-outlined{font-size:17px}.aux-panel-trigger{align-items:center;background:var(--surface-panel);border:none;border-bottom:1px solid var(--semantic-border);border-right:1px solid var(--semantic-border);color:var(--semantic-text-secondary);cursor:pointer;display:flex;flex-shrink:0;font-size:12px;font-weight:600;gap:6px;letter-spacing:.04em;letter-spacing:var(--tracking-label,.04em);padding:.6rem .875rem;text-transform:uppercase}.aux-panel-trigger:focus-visible,.aux-panel-trigger:hover{background:var(--surface-interactive-hover);color:var(--semantic-text-primary)}.aux-panel-overlay{align-items:stretch;background:var(--semantic-overlay);display:flex;inset:0;position:fixed;z-index:1500}.aux-panel-sheet{animation:auxPanelSlideIn .15s ease-out;background:var(--surface-panel);border-right:1px solid var(--semantic-border-strong);box-shadow:var(--semantic-shadow);display:flex;flex-direction:column;max-width:300px;min-height:0;width:min(300px,86vw)}@keyframes auxPanelSlideIn{0%{opacity:.4;transform:translateX(-12px)}to{opacity:1;transform:translateX(0)}}.aux-panel-sheet-header{align-items:center;border-bottom:1px solid var(--semantic-border);display:flex;flex-shrink:0;justify-content:space-between;padding:.75rem .5rem .75rem .875rem}.aux-panel-sheet-header h3{color:var(--semantic-text-muted);font-size:var(--label-size);font-weight:600;letter-spacing:var(--tracking-label);margin:0;text-transform:uppercase}.aux-panel-sheet-close{align-items:center;background:#0000;border:none;border-radius:var(--radius);color:var(--semantic-text-muted);cursor:pointer;display:inline-flex;justify-content:center;padding:4px}.aux-panel-sheet-close:hover{background:var(--surface-interactive-hover);color:var(--semantic-text-primary)}.aux-panel-sheet-body{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow-y:auto}.sidebar-header{background:var(--surface-panel);padding:.75rem .875rem .5rem}.sidebar-header h3{color:var(--semantic-text-muted);font-size:var(--label-size);font-weight:600;letter-spacing:var(--tracking-label);margin:0;text-transform:uppercase}.content-panel{container-name:workspace;container-type:inline-size;overflow:hidden;padding:0;position:relative}.content-panel,.workspace-slot{display:flex;flex:1 1;flex-direction:column;min-height:0;min-width:0}.workspace-content{flex:1 1;min-height:0;min-width:0}.content-panel[data-workspace-mode=canvas] .workspace-content,.content-panel[data-workspace-mode=editor] .workspace-content,.content-panel[data-workspace-mode=focused] .workspace-content{height:100%;overflow:hidden}.content-panel[data-workspace-mode=document]{overflow-x:hidden;overflow-y:auto;padding-bottom:240px;padding-bottom:var(--lw-coach-reserve,240px)}.content-panel[data-workspace-mode=document] .workspace-content{height:auto;min-height:100%;overflow:visible}.content-panel[data-workspace-mode=document] .workspace-slot{flex:1 0 auto}.file-tree{flex:1 1;overflow-x:hidden;overflow-y:auto;padding:.25rem .5rem .5rem}.tree-node-wrapper{position:relative;-webkit-user-select:none;user-select:none}.tree-type-add-btn{align-items:center;background:#0000;border:none;border-radius:var(--radius);color:var(--semantic-text-secondary);cursor:pointer;display:inline-flex;height:18px;justify-content:center;margin-left:auto;min-width:18px;opacity:0;transition:opacity .1s;width:18px}.tree-node-wrapper:hover .tree-type-add-btn,.tree-type-add-btn:focus-visible{opacity:1}.tree-type-add-btn:hover{background:var(--surface-interactive-hover);color:var(--semantic-text-primary)}.tree-type-add-btn .material-symbols-outlined{font-size:15px}.tree-node{align-items:center;border-radius:var(--radius);color:var(--semantic-text-secondary);cursor:pointer;display:flex;font-size:12px;padding:.3rem .5rem;white-space:nowrap}.tree-node:hover{background:var(--surface-interactive-hover)}.tree-node.selected{background:var(--selection-surface);border-radius:0 var(--radius) var(--radius) 0;box-shadow:inset 2px 0 0 var(--selection-border);color:var(--semantic-text-primary)}.tree-expand{align-items:center;background:#0000;border:none;color:var(--semantic-text-muted);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:.625rem;height:16px;justify-content:center;margin-right:4px;min-width:16px;padding:0;width:16px}.tree-expand:hover{color:var(--semantic-text-secondary)}.tree-expand.collapsed,.tree-expand.expanded{transform:none}.tree-icon{flex-shrink:0;margin:0 .375rem}.tree-icon .material-symbols-outlined{font-size:16px;vertical-align:middle}.tree-node-wrapper[data-node-id=unassigned-beats-root]>.tree-node .tree-icon{color:var(--semantic-warning)}.tree-label{flex:1 1;overflow:hidden;text-overflow:ellipsis}.tree-children{position:relative}.schema-drag-handle{color:var(--semantic-text-muted);cursor:grab;flex-shrink:0;font-size:16px!important;margin-right:2px;opacity:0;transition:opacity .15s}.tree-node:hover .schema-drag-handle{opacity:1}.tree-node.schema-drag-source{opacity:.4}.tree-node.schema-drag-over{background:var(--selection-surface);border-top:2px solid var(--selection-border)}.tree-count{font-feature-settings:"tnum";color:var(--semantic-text-muted);flex-shrink:0;font-size:.7rem;font-variant-numeric:tabular-nums;margin-left:6px}.tree-hosts-bolt{color:var(--accent);flex-shrink:0;font-size:14px!important;margin-left:4px}.schema-type-search{margin:2px 0 4px;padding-right:8px}.schema-type-search-input{background:var(--surface-base);border:1px solid var(--semantic-border-strong);border-radius:var(--radius);box-sizing:border-box;color:var(--semantic-text-primary);font-size:.8rem;padding:4px 8px;width:100%}.explorer-sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.desktop-content{background:var(--surface-base);flex:1 1;min-height:0;min-width:0;overflow:hidden}.desktop-content,.issues-panel{display:flex;flex-direction:column}.issues-panel{animation:slideUp .2s ease-out;background:var(--surface-panel);border-top:1px solid var(--semantic-border-strong);bottom:0;height:200px;left:0;position:absolute;right:0;z-index:100}.issues-header{align-items:center;background:var(--surface-raised);border-bottom:1px solid var(--semantic-border);display:flex;justify-content:space-between;padding:.5rem 1rem}.issues-header h3{color:var(--semantic-text-primary);font-size:.875rem;margin:0}.issues-close{background:#0000;border:none;color:var(--semantic-text-muted);cursor:pointer;font-size:1.25rem;padding:0 .25rem}.issues-close:hover{color:var(--semantic-text-primary)}.issues-list{flex:1 1;overflow-y:auto;padding:.5rem}.no-issues{color:var(--semantic-text-muted);padding:2rem;text-align:center}.issue-item{align-items:center;border-radius:var(--radius);display:flex;font-size:.875rem;gap:.75rem;margin-bottom:.25rem;padding:.5rem}.issue-item:hover{background:var(--surface-interactive-hover)}.issue-error{border-left:3px solid var(--semantic-danger)}.issue-warning{border-left:3px solid var(--semantic-warning)}.issue-info{border-left:3px solid var(--status-progress)}.issue-icon{flex-shrink:0}.issue-text{flex:1 1}.issue-fix-btn{background:var(--action-primary);border:none;border-radius:var(--radius);color:var(--semantic-text-on-action);cursor:pointer;font-size:.75rem;font-weight:600;padding:.25rem .75rem}.issue-fix-btn:hover{background:var(--action-primary-hover)}::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:var(--semantic-border-strong);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--semantic-text-muted)}.menu-play-switcher-label{color:var(--semantic-text-muted);font-size:10px;letter-spacing:.05em;padding:.3rem 1rem .1rem;text-transform:uppercase}.menu-action-btn.menu-action-active{color:var(--selection-border);font-weight:600}.menu-badge{align-items:center;background:var(--action-primary);border-radius:8px;color:var(--semantic-text-on-action);display:inline-flex;font-size:10px;font-weight:700;height:16px;justify-content:center;line-height:1;min-width:16px;padding:0 4px}.studio-expand-glyph{font-size:16px!important;vertical-align:middle}.studio-collapse-toggle{padding-left:.5rem;padding-right:.5rem}.run-mode-exit-header{align-items:center;background:var(--surface-panel);border-bottom:1px solid var(--semantic-border);display:flex;justify-content:space-between;padding:.5rem 1rem}.run-mode-exit-btn{align-items:center;background:#0000;border:1px solid var(--semantic-border);border-radius:var(--radius);color:var(--semantic-text-primary);cursor:pointer;display:flex;font-size:13px;gap:.4rem;padding:.35rem .75rem}.run-mode-exit-btn:hover{background:var(--surface-interactive-hover);border-color:var(--semantic-focus)}.run-mode-exit-title{color:var(--semantic-text-secondary);font-size:13px;font-weight:600;margin:0}.run-mode-nav{margin-left:auto;position:relative}.run-mode-nav-toggle{align-items:center;background:#0000;border:1px solid var(--semantic-border);border-radius:var(--radius);color:var(--semantic-text-primary);cursor:pointer;display:flex;font-size:13px;gap:.35rem;padding:.35rem .75rem}.run-mode-nav-toggle:hover{background:var(--surface-interactive-hover);border-color:var(--semantic-focus)}.run-mode-nav-panel{left:auto;right:0}.board-lens{border-bottom:1px solid #ffffff0f;display:flex;gap:4px;padding:6px 12px}.board-lens-btn{background:var(--surface-interactive);border:1px solid var(--semantic-border-strong);border-radius:5px;color:inherit;cursor:pointer;flex:1 1;font-size:11px;padding:4px 6px}.board-lens-btn.active{background:#4169e1;background:var(--accent,#4169e1);border-color:#0000;color:var(--accent-foreground)}.labelled-utility{gap:.3rem;white-space:nowrap}.labelled-utility-text{font-size:12px}.consolidated-project-header{background:var(--surface-panel);border-bottom:1px solid var(--semantic-border);color:var(--semantic-text-primary);flex:0 0 54px;height:54px;min-height:54px;position:relative;z-index:1000}.consolidated-project-header__main{align-items:center;display:flex;gap:.375rem;height:100%;min-width:0;padding:0 .75rem;width:100%}.consolidated-project-header .menubar-logo{border-radius:4px;border-radius:var(--radius-sm,4px);flex:0 0 28px;height:28px;margin:0 .25rem 0 0;width:28px}.consolidated-project-header .menubar-logo img{height:22px;width:22px}.consolidated-project-header__identity{display:flex;flex:0 1 clamp(120px,18vw,250px);max-width:250px;min-width:0}.project-switcher{align-items:center;background:#0000;border:1px solid #0000;border-radius:4px;border-radius:var(--radius-sm,4px);color:var(--semantic-text-primary);cursor:pointer;display:inline-flex;font:inherit;font-size:13px;font-weight:600;gap:.2rem;height:36px;max-width:100%;min-width:0;padding:0 .4rem;text-align:left}.project-switcher:focus-visible,.project-switcher:hover{background:var(--surface-interactive-hover);border-color:var(--semantic-border)}.project-switcher .project-name-display{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-switcher-icon{flex:0 0 auto;font-size:18px}.project-switcher .material-symbols-outlined{color:var(--semantic-text-muted);flex:0 0 auto;font-size:17px}.consolidated-project-header__navigation{align-self:stretch;overflow:visible}.consolidated-project-header__navigation,.consolidated-project-header__wide{align-items:stretch;display:flex;flex:1 1 auto;min-width:0}.consolidated-project-header__wide>.menu-item-wrapper>.menu-title,.consolidated-project-header__wide>.menu-title{font-size:12px;height:100%;min-width:0;padding-inline:.55rem;white-space:nowrap}.consolidated-project-header__wide .menu-item-wrapper{flex:0 1 auto}.consolidated-project-header__compact .menu-dropdown,.consolidated-project-header__wide .menu-dropdown{max-height:min(70vh,520px);overflow-y:auto;top:calc(100% - 1px)}.consolidated-project-header .menu-dropdown{border-radius:0 0 4px 4px;border-radius:0 0 var(--radius-sm,4px) var(--radius-sm,4px)}.consolidated-project-header .product-destination{gap:.75rem;min-width:230px}.consolidated-project-header__compact{display:none;flex:1 1 auto;min-width:0}.consolidated-project-header__compact .menu-item-wrapper,.consolidated-project-header__compact .menu-title{max-width:100%;min-width:0}.consolidated-project-header__compact .menu-title{gap:.25rem;padding-inline:.5rem}.consolidated-project-header__compact .menu-title:first-line{text-overflow:ellipsis}.consolidated-project-header__compact .menu-dropdown{left:0;min-width:min(280px,calc(100vw - 1rem));right:auto}@media (max-width:560px){.consolidated-project-header__compact .menu-dropdown{left:.5rem;min-width:0;position:fixed;right:.5rem;top:53px;width:auto}}.consolidated-project-header .header-tools{flex:0 0 auto;gap:.2rem;margin-left:auto;min-width:max-content}.consolidated-project-header .global-narrator-launcher,.consolidated-project-header .tool-btn{min-height:32px;min-width:32px}.desktop-layout:has(.consolidated-project-header) .workspace-heading{background:#0000;border-bottom:0;padding:1rem 1.25rem .5rem}@media (max-width:900px){.consolidated-project-header__wide{display:none}.consolidated-project-header__compact{display:flex}.consolidated-project-header__identity{flex-basis:clamp(100px,28vw,190px);max-width:190px}}@media (max-width:560px){.consolidated-project-header__main{gap:.2rem;padding-inline:.4rem}.consolidated-project-header .menubar-logo{flex-basis:26px;margin-right:0;width:26px}.consolidated-project-header__identity{flex-basis:min(42vw,160px);max-width:160px}.consolidated-project-header .labelled-utility-text,.consolidated-project-header .operation-center-trigger-label,.consolidated-project-header .project-utility-slot[data-utility-slot=account] .user-menu-arrow,.consolidated-project-header .project-utility-slot[data-utility-slot=account] .user-name,.consolidated-project-header .project-utility-slot[data-utility-slot=notifications]{display:none}.consolidated-project-header .project-utility-slot[data-utility-slot=account] .user-menu-trigger{padding-inline:.25rem}}@media (max-width:360px){.consolidated-project-header__identity{flex-basis:min(34vw,116px);max-width:116px}.consolidated-project-header .header-tools{gap:.05rem}}@media (max-width:700px){.project-header{padding-inline:.45rem}.project-name-display{display:none}.header-tools{gap:.25rem}.product-shell-header .header-tools{gap:.1rem}.labelled-utility-text,.operation-center-trigger-label,.product-shell-header .project-utility-slot[data-utility-slot=notifications],.project-utility-slot[data-utility-slot=account] .user-menu-arrow,.project-utility-slot[data-utility-slot=account] .user-name{display:none}.project-utility-slot[data-utility-slot=account] .user-menu-trigger{padding:.25rem}.aux-panel-trigger{color:#0000;gap:0;height:38px;inset:0 auto auto 0;overflow:hidden;padding-inline:.55rem;position:absolute;width:42px;z-index:120}.aux-panel-trigger .material-symbols-outlined{color:var(--semantic-text-secondary);flex:0 0 auto}.desktop-main{position:relative}.desktop-main:has(>.aux-panel-trigger) .content-panel>.workspace-slot>.workspace-heading{padding-left:3.25rem}}.contextual-health-notice{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-left:3px solid var(--accent-primary);border-radius:8px;color:var(--text-secondary);display:flex;gap:16px;justify-content:space-between;margin:0 24px 12px;padding:10px 14px}.contextual-health-notice a{color:var(--accent-primary);white-space:nowrap}@media (max-width:600px){.contextual-health-notice{align-items:flex-start;flex-direction:column}}.pipeline-step-btn{align-items:center;display:flex;gap:8px}.pipeline-step-glyph{color:#6a6a70;color:var(--text-muted,#6a6a70);font-size:16px}.pipeline-step-glyph.state-current{color:#c9a76a;color:var(--accent,#c9a76a)}.pipeline-step-glyph.state-done{color:#a0a0a6;color:var(--text-secondary,#a0a0a6)}.pipeline-step-name{flex:1 1 auto}.pipeline-step-count{color:#6a6a70;color:var(--text-muted,#6a6a70);font-size:11px;margin-left:8px}.pipeline-step-btn:disabled{opacity:.55}.canvas-switcher{border-bottom:1px solid #ffffff14;border-bottom:1px solid var(--border,#ffffff14);padding:6px 8px 10px}.canvas-item{align-items:center;background:none;border:none;border-radius:6px;color:#a0a0a6;color:var(--text-secondary,#a0a0a6);cursor:pointer;display:flex;font-size:13px;gap:8px;padding:6px 8px;text-align:left;width:100%}.canvas-item:hover{background:#ffffff0d;background:var(--bg-hover,#ffffff0d)}.canvas-item.active{color:#c9a76a;color:var(--accent,#c9a76a)}.canvas-item .material-symbols-outlined{font-size:18px}.modal-overlay{animation:modalFadeIn .2s ease-out;background-color:#000000a6}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.modal-container{animation:slideUp .25s ease-out;background-color:var(--bg-panel);background-color:var(--card-background,var(--bg-panel));border:1px solid var(--border,var(--border));border-radius:var(--radius);box-shadow:0 20px 40px #00000080;box-sizing:border-box;display:flex;flex-direction:column;max-height:min(90vh,calc(100vh - 32px));max-width:calc(100vw - 32px);position:relative}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.modal-small{width:min(420px,calc(100vw - 32px))}.modal-medium{width:min(620px,calc(100vw - 32px))}.modal-large{width:min(920px,calc(100vw - 32px))}.modal-main-content{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}.modal-header{border-bottom:1px solid var(--border,var(--border));border-radius:var(--radius) 12px 0 0;flex-shrink:0;padding:18px 24px}.modal-title{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin:0}.modal-close-btn{align-items:center;background:#0000;border:none;border-radius:var(--radius);color:var(--text-secondary);color:var(--text-secondary,var(--text-secondary));cursor:pointer;display:flex;justify-content:center;padding:6px;transition:background .15s ease,color .15s ease}.modal-close-btn:hover{background-color:var(--bg-hover);background-color:var(--card-background-hover,var(--bg-hover));color:var(--text-primary);color:var(--text-primary,var(--text-primary))}.modal-body{background-color:var(--bg-panel);background-color:var(--card-background,var(--bg-panel));min-height:0;overflow-x:auto;padding:24px}.modal-description{font-size:.88rem;line-height:1.5;margin:0;padding:0 24px 12px}.modal-busy-notice,.modal-description{color:var(--text-secondary);color:var(--text-secondary,var(--text-secondary))}.modal-busy-notice{border-top:1px solid var(--border,var(--border));flex-shrink:0;font-size:.85rem;padding:8px 24px}.modal-discard-confirm{align-items:center;background-color:var(--bg-panel);background-color:var(--card-background,var(--bg-panel));border-radius:var(--radius);display:flex;flex-direction:column;gap:16px;inset:0;justify-content:center;padding:24px;position:absolute;text-align:center}.modal-discard-confirm p{color:var(--text-primary);font-size:.95rem;margin:0}.modal-discard-confirm-actions{display:flex;gap:12px}.modal-body .form-group{margin-bottom:20px}.modal-body label{color:var(--text-primary);color:var(--text-primary,var(--text-primary));display:block;font-size:.9rem;font-weight:500;margin-bottom:8px}.modal-body input,.modal-body select,.modal-body textarea{background-color:var(--bg-base);background-color:var(--background,var(--bg-base));border:1px solid var(--border,var(--border));border-radius:var(--radius);color:var(--text-primary);color:var(--text-primary,var(--text-primary));font-size:1rem;padding:10px 12px;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.modal-body input:focus-visible,.modal-body select:focus-visible,.modal-body textarea:focus-visible{border-color:var(--accent-primary,var(--accent));box-shadow:0 0 0 3px var(--accent-tint);outline:none}.modal-body .field-row{align-items:center;display:flex;gap:12px;margin-bottom:12px}.modal-body .field-row input{flex:1 1}.modal-body .field-row select{width:150px}.modal-body .checkbox-label{align-items:center;cursor:pointer;display:flex;gap:8px}.modal-body .checkbox-label input[type=checkbox]{margin:0;width:auto}.modal-footer{background-color:var(--surface-panel);border-radius:0 0 12px 12px;border-top:1px solid var(--border,var(--border));flex-shrink:0;gap:12px;padding:16px 24px}.modal-btn{border:none;border-radius:var(--radius);cursor:pointer;font-size:.92rem;font-weight:500;padding:9px 20px;transition:background .15s ease,transform .1s ease,box-shadow .15s ease}.modal-btn-primary{background-color:var(--accent);background-color:var(--accent-primary,var(--accent));color:var(--bg-base)}.modal-btn-primary:hover{background-color:var(--accent-hover);background-color:var(--accent-primary-hover,var(--accent-hover));box-shadow:0 4px 12px var(--accent-tint);transform:translateY(-1px)}.modal-btn-secondary{background-color:initial;border:1px solid var(--border,var(--border));color:var(--text-primary);color:var(--text-primary,var(--text-primary))}.modal-btn-secondary:hover{background-color:var(--bg-hover);background-color:var(--card-background-hover,var(--bg-hover))}.modal-btn-danger{background-color:#ef4444;background-color:var(--destructive,#ef4444);color:var(--text-primary)}.modal-btn-danger:hover{background-color:#dc2626;transform:translateY(-1px)}.field-editor{background-color:var(--surface-panel);border-radius:var(--radius);margin-bottom:16px;padding:16px}.field-editor-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.field-editor-title{color:var(--text-primary);color:var(--text-primary,var(--text-primary));font-size:1.1rem;font-weight:600}.field-add-btn{background-color:var(--accent);background-color:var(--accent-primary,var(--accent));border:none;border-radius:var(--radius);color:var(--bg-base);cursor:pointer;font-size:.9rem;padding:8px 16px;transition:background .15s ease,transform .1s ease}.field-add-btn:hover{background-color:var(--accent-hover);background-color:var(--accent-primary-hover,var(--accent-hover));transform:translateY(-1px)}.field-list{max-height:300px;overflow-y:auto}.field-item{align-items:center;background-color:var(--bg-panel);background-color:var(--card-background,var(--bg-panel));border:1px solid var(--border,var(--border));border-radius:var(--radius);display:flex;gap:12px;margin-bottom:8px;padding:12px}.field-item:hover{background-color:var(--bg-hover);background-color:var(--card-background-hover,var(--bg-hover))}.field-delete-btn{background-color:#ef4444;background-color:var(--destructive,#ef4444);border:none;border-radius:var(--radius);color:#fff;cursor:pointer;font-size:.85rem;padding:4px 8px}.field-delete-btn:hover{background-color:#dc2626}@media (max-width:768px){.modal-container{max-height:min(95vh,calc(100vh - 32px));width:min(95%,calc(100vw - 32px))}.modal-header{padding:14px 16px}.modal-body{padding:16px}.modal-footer{padding:12px 16px}}.delete-field-modal-content{display:flex;flex-direction:column;gap:16px}.delete-field-core-warning{align-items:flex-start;background-color:#ef44441a;border:1px solid #ef444466;border-radius:var(--radius);color:var(--text-primary);display:flex;font-size:.88rem;gap:12px;line-height:1.5;padding:12px 14px}.delete-field-core-warning .warning-icon{color:#ef4444;color:var(--color-error,#ef4444);flex-shrink:0;font-size:1.25rem;margin-top:1px}.delete-field-core-warning p{margin:0}.delete-field-warning{align-items:flex-start;background-color:#f59e0b1a;border:1px solid #f59e0b4d;border-radius:var(--radius);color:var(--text-primary);display:flex;font-size:.95rem;gap:12px;line-height:1.6;padding:14px 16px}.delete-field-warning .warning-icon{color:#f59e0b;color:var(--warning,#f59e0b);flex-shrink:0;font-size:1.25rem;margin-top:2px}.delete-field-warning p{margin:0}.delete-field-info{background-color:var(--surface-panel);border:1px solid var(--border-subtle,var(--border));border-radius:var(--radius);color:var(--text-primary);font-size:.92rem;padding:16px}.delete-field-info p{margin:0 0 10px}.delete-field-info ul{color:#c0c8d0;margin:0 0 12px;padding-left:20px}.delete-field-info li{margin-bottom:6px}.delete-field-permanent{color:#ef4444!important;color:var(--color-error,#ef4444)!important;font-weight:600;margin-bottom:0!important;margin-top:14px!important}.draft-nav-dialog-message{color:#a0a0a6;color:var(--text-secondary,#a0a0a6);font-size:.92rem;line-height:1.55;margin:0 0 8px}.draft-nav-dialog-error{color:var(--semantic-danger);font-size:.85rem;line-height:1.5;margin:8px 0 0}.draft-nav-dialog-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;width:100%}.draft-nav-dialog-discard,.draft-nav-dialog-keep,.draft-nav-dialog-save{border-radius:8px;cursor:pointer;font-size:.875rem;padding:8px 16px}.draft-nav-dialog-keep{background:#c9a76a;background:var(--accent,#c9a76a);border:none;color:#16131c;color:var(--accent-foreground,#16131c);font-weight:600}.draft-nav-dialog-keep:hover:not(:disabled){filter:brightness(1.06)}.draft-nav-dialog-discard{background:#0000;border:1px solid #dc354566;color:var(--semantic-danger)}.draft-nav-dialog-discard:hover:not(:disabled){border-color:var(--semantic-danger);color:var(--semantic-danger)}.draft-nav-dialog-save{background:#0000;border:1px solid #ffffff1f;border:1px solid var(--border,#ffffff1f);color:#a0a0a6;color:var(--text-secondary,#a0a0a6)}.draft-nav-dialog-save:hover:not(:disabled){border-color:#ffffff3d;border-color:var(--border-strong,#ffffff3d);color:#e8e8ea;color:var(--text-primary,#e8e8ea)}.draft-nav-dialog-discard:disabled,.draft-nav-dialog-keep:disabled,.draft-nav-dialog-save:disabled{cursor:not-allowed;opacity:.5}.confirm-modal-message{color:#a0a0a6;color:var(--text-secondary,#a0a0a6);font-size:.92rem;line-height:1.55;margin:0}.confirm-modal-actions{display:flex;gap:10px;justify-content:flex-end;width:100%}.confirm-modal-cancel{background:#0000;border:1px solid #ffffff1f;border:1px solid var(--border,#ffffff1f);border-radius:8px;color:#a0a0a6;color:var(--text-secondary,#a0a0a6);cursor:pointer;font-size:.875rem;padding:8px 16px}.confirm-modal-cancel:hover:not(:disabled){border-color:#ffffff3d;border-color:var(--border-strong,#ffffff3d);color:#e8e8ea;color:var(--text-primary,#e8e8ea)}.confirm-modal-confirm{background:#c9a76a;background:var(--accent,#c9a76a);border:none;border-radius:8px;color:#16131c;cursor:pointer;font-size:.875rem;font-weight:600;padding:8px 16px}.confirm-modal-confirm:hover:not(:disabled){filter:brightness(1.06)}.confirm-modal-confirm.destructive{background:#dc3545;color:#fff}.confirm-modal-cancel:disabled,.confirm-modal-confirm:disabled{cursor:not-allowed;opacity:.5}.share-modal-backdrop{align-items:center;background:#0000008c;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:1000}.share-modal{border:1px solid #ffffff1a;border:1px solid var(--border-color,#ffffff1a);border-radius:10px;border-radius:var(--radius,10px);box-shadow:0 20px 60px #00000073;color:#f4f4f5;color:var(--text-primary,#f4f4f5);max-height:86vh;overflow-y:auto;width:min(760px,100%)}.share-modal,.share-modal-header{background:#1e1e24;background:var(--bg-secondary,#1e1e24)}.share-modal-header{align-items:center;border-bottom:1px solid #ffffff1a;border-bottom:1px solid var(--border-color,#ffffff1a);display:flex;justify-content:space-between;padding:18px 22px;position:sticky;top:0;z-index:1}.share-modal-header h2{font-size:1.1rem;margin:0}.share-modal-close{background:none;border:none;color:#a1a1aa;color:var(--text-secondary,#a1a1aa);cursor:pointer;font-size:1.5rem;line-height:1;padding:0 4px}.share-modal-close:hover{color:#f4f4f5;color:var(--text-primary,#f4f4f5)}.share-invite{border-bottom:1px solid #ffffff1a;border-bottom:1px solid var(--border-color,#ffffff1a);display:flex;flex-direction:column;gap:12px;padding:20px 22px}.share-invite-row{display:flex;flex-wrap:wrap;gap:10px}.share-input{flex:1 1 240px;min-width:0;padding:9px 12px}.share-input,.share-select{background:#141418;background:var(--bg-primary,#141418);border:1px solid #ffffff26;border:1px solid var(--border-color,#ffffff26);border-radius:8px;border-radius:var(--radius,8px);color:#f4f4f5;color:var(--text-primary,#f4f4f5);font-size:.9rem}.share-select{padding:9px 10px}.share-select-sm{font-size:.8rem;padding:5px 8px}.share-btn-primary{background:#6c5ce7;background:var(--accent-color,#6c5ce7);border:none;border-radius:8px;border-radius:var(--radius,8px);color:#fff;cursor:pointer;font-size:.9rem;padding:9px 18px}.share-btn-primary:disabled{cursor:not-allowed;opacity:.5}.share-btn-danger{background:#0000;border:1px solid #dc143c73;border-radius:8px;border-radius:var(--radius,8px);color:#f87171;cursor:pointer;font-size:.78rem;padding:5px 12px;white-space:nowrap}.share-btn-danger:hover{background:#dc143c1f}.share-link-button{appearance:none;background:none;border:none;color:#6c5ce7;color:var(--accent-color,#6c5ce7);cursor:pointer;font-size:.82rem;font-weight:600;padding:0;text-align:left;width:fit-content}.share-link-button:hover{text-decoration:underline}.share-hint,.share-role-blurb{color:#a1a1aa;color:var(--text-secondary,#a1a1aa);font-size:.82rem;line-height:1.5;margin:0}.share-caps{border:1px solid #ffffff1f;border:1px solid var(--border-color,#ffffff1f);border-radius:8px;border-radius:var(--radius,8px);display:flex;flex-wrap:wrap;gap:14px;margin:0;padding:12px 14px}.share-caps legend{font-size:.8rem;padding:0 6px}.share-caps legend,.share-caps-hint{color:#a1a1aa;color:var(--text-secondary,#a1a1aa)}.share-caps-hint{font-size:.78rem;font-weight:400}.share-cap{align-items:center;cursor:pointer;display:flex;font-size:.84rem;gap:6px}.share-notice{background:#eab30814;border:1px solid #eab30866;border-radius:8px;border-radius:var(--radius,8px);line-height:1.5}.share-error,.share-notice{font-size:.84rem;padding:10px 12px}.share-error{background:#dc143c14;border:1px solid #dc143c66;border-radius:8px;border-radius:var(--radius,8px);color:#f87171}.share-list{padding:16px 22px 20px}.share-list h3{font-size:.9rem;font-weight:600;margin:0 0 12px}.share-empty,.share-list h3,.share-loading{color:#a1a1aa;color:var(--text-secondary,#a1a1aa)}.share-empty,.share-loading{font-size:.85rem;margin:0;padding:0 22px 18px}.share-list .share-empty{padding:0}.share-row{align-items:center;border-bottom:1px solid #ffffff12;border-bottom:1px solid var(--border-color,#ffffff12);display:flex;flex-wrap:wrap;gap:12px;padding:10px 0}.share-row:last-child{border-bottom:none}.share-row-pending{opacity:.78}.share-who{display:flex;flex:1 1 180px;flex-direction:column;gap:2px;min-width:0}.share-name{font-size:.9rem;overflow:hidden;text-overflow:ellipsis}.share-email{color:#a1a1aa;color:var(--text-secondary,#a1a1aa);font-size:.76rem}.share-row-caps{display:flex;flex-wrap:wrap;gap:5px}.share-cap-chip{background:#0000;border:1px solid #ffffff2e;border:1px solid var(--border-color,#ffffff2e);border-radius:999px;color:#a1a1aa;color:var(--text-secondary,#a1a1aa);cursor:pointer;font-size:.72rem;padding:3px 9px}.share-cap-chip.on{background:#6c5ce72e;border-color:#6c5ce7;border-color:var(--accent-color,#6c5ce7);color:#f4f4f5;color:var(--text-primary,#f4f4f5)}@media (max-width:640px){.share-modal{max-height:94vh}.share-row{align-items:flex-start}}.project-selection-new{background:var(--color-background);color:var(--color-text-primary);font-family:var(--font-primary);min-height:100vh}.selection-header{align-items:center;background:var(--bg-panel);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-md);display:flex;justify-content:space-between;padding:0}.header-content{align-items:center;display:flex;padding:.75rem 3rem .75rem 1rem}.header-branding{align-items:center;display:flex;gap:1rem}.project-logo-container{align-items:center;background:#0000;border:none;border-radius:0;box-shadow:none;display:flex;flex-shrink:0;height:36px;justify-content:flex-start;padding:0;width:188px}.project-header-logo{display:block;filter:none;height:100%;object-fit:contain;object-position:left center;width:100%}.header-text{display:flex;flex-direction:column;gap:.25rem;justify-content:center}.header-content h1{display:none}.loreweaver-title{-webkit-text-fill-color:tan!important;background:none!important;background-clip:initial!important;-webkit-background-clip:unset!important;color:tan!important}.header-content p{color:var(--color-text-secondary);font-size:.8rem;margin:0}.create-project-btn{background:var(--action-primary);border:1px solid var(--action-primary);border-radius:var(--radius-sm);box-shadow:none;color:var(--semantic-text-on-action);cursor:pointer;font-size:.875rem;font-weight:600;padding:.625rem 1.25rem;transition:var(--transition-fast)}.create-project-btn:hover{background:var(--action-primary-hover);border-color:var(--action-primary-hover);color:var(--semantic-text-on-action)}.projects-container{margin:0 auto;max-width:1400px;padding:3rem}.loading-container{align-items:center;color:var(--color-text-secondary);display:flex;flex-direction:column;justify-content:center;min-height:400px}.loading-spinner{border:3px solid var(--color-border);border-top-color:var(--text-muted)}.empty-state{min-height:400px}.empty-icon{align-items:center;display:flex;justify-content:center;margin-bottom:1rem}.empty-icon .material-symbols-outlined{font-size:4rem}.empty-state h2{color:var(--color-text-primary);font-size:1.5rem;margin:0 0 .5rem}.empty-state p{margin:0 0 1.5rem}.empty-create-btn{background:var(--action-primary);border:1px solid var(--action-primary);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);color:var(--semantic-text-on-action);cursor:pointer;font-size:.875rem;font-weight:600;padding:.75rem 1.5rem;transition:var(--transition-fast)}.empty-create-btn:hover{background:var(--action-primary-hover);border-color:var(--action-primary-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.empty-actions{gap:.75rem}.empty-sample-btn{background:#0000;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);cursor:pointer;font-size:.875rem;font-weight:600;padding:.75rem 1.5rem;transition:var(--transition-fast)}.empty-sample-btn:hover:not(:disabled){border-color:#00c2ff;border-color:var(--product-accent,#00c2ff);color:#00c2ff;color:var(--product-accent,#00c2ff);transform:translateY(-1px)}.empty-sample-btn:disabled{cursor:default;opacity:.6}.card-sample-badge{background:color-mix(in srgb,#00c2ff 12%,#0000);background:color-mix(in srgb,var(--product-accent,#00c2ff) 12%,#0000);border:1px solid #00c2ff;border:1px solid var(--product-accent,#00c2ff);border-radius:999px;color:#00c2ff;color:var(--product-accent,#00c2ff);display:inline-block;font-size:.62rem;font-weight:700;letter-spacing:.06em;margin-left:.5rem;padding:.05rem .45rem;text-transform:uppercase;vertical-align:middle}.projects-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.project-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);box-shadow:var(--shadow-sm);cursor:pointer;display:flex;flex-direction:column;overflow:hidden;transition:all var(--transition-normal)}.project-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.card-header{background:var(--color-background);justify-content:space-between;padding:1.5rem}.card-header,.card-icon{align-items:center;display:flex}.card-icon{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);height:56px;justify-content:center;width:56px}.project-card-icon-symbol{font-size:2rem}.card-delete{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;display:flex;font-size:1.5rem;height:32px;justify-content:center;opacity:0;padding:0;transition:var(--transition-fast);width:32px}.card-delete:focus-visible,.project-card:hover .card-delete{opacity:1}.card-delete:hover{background:var(--destructive);color:var(--color-text-primary)}.card-body{flex:1 1;padding:1.5rem}.card-body h3{color:var(--color-text-primary);font-size:1.25rem;font-weight:600;margin:0 0 .75rem}.card-description{color:var(--color-text-secondary);font-size:.875rem;line-height:1.5;margin:0 0 .75rem}.card-owner{color:var(--text-secondary);font-size:.75rem;letter-spacing:.01em;margin:0}.card-footer{background:var(--color-background);color:var(--color-text-muted);font-size:.75rem;justify-content:space-between;padding:.75rem 1.5rem}.card-footer,.card-status{align-items:center;display:flex}.card-status{gap:.75rem;margin:0 0 .75rem}.card-progress-chip{display:inline-flex;flex-shrink:0;gap:4px}.chip-dot{background:#0000;border:1.5px solid var(--color-border);border-radius:50%;box-sizing:border-box;height:9px;width:9px}.chip-dot--done{background:#39c46b;border-color:#39c46b}.chip-dot--current{border-color:#00c2ff;border-color:var(--product-accent,#00c2ff);box-shadow:0 0 0 2px color-mix(in srgb,#00c2ff 25%,#0000);box-shadow:0 0 0 2px color-mix(in srgb,var(--product-accent,#00c2ff) 25%,#0000)}.chip-dot--available{border-color:var(--color-text-muted)}.chip-dot--auto_filled{background:repeating-linear-gradient(45deg,#7bc47f,#7bc47f 2px,#0000 0,#0000 4px);border-color:#7bc47f;border-style:dashed}.chip-dot--locked{border-color:var(--color-border);opacity:.55}.card-status-lines{display:flex;flex-direction:column;font-size:.72rem;gap:.1rem;line-height:1.3;min-width:0}.card-status-scale{color:var(--color-text-secondary)}.card-status-next{color:var(--color-text-primary);font-weight:600}.play-chip{background:#ffffff14;background:var(--color-bg-hover,#ffffff14);color:var(--color-text-secondary)}.play-chip-warn{background:#f59e0b26;color:#f59e0b}.play-chip-info{background:#4cecb026;color:#4ecab0}.card-lastworked{color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-resume-btn{background:#0000;border:1px solid var(--color-border);border-radius:4px;color:#00c2ff;color:var(--product-accent,#00c2ff);cursor:pointer;flex-shrink:0;font-size:.72rem;font-weight:600;padding:.2rem .55rem;transition:background .15s,border-color .15s}.card-resume-btn:hover{background:color-mix(in srgb,#00c2ff 12%,#0000);background:color-mix(in srgb,var(--product-accent,#00c2ff) 12%,#0000);border-color:#00c2ff;border-color:var(--product-accent,#00c2ff)}.modal-overlay{animation:projectModalFadeIn .2s;background:var(--semantic-overlay)}@keyframes projectModalFadeIn{0%{opacity:0}to{opacity:1}}.project-selection-new .modal-content{animation:projectModalSlideIn .2s;background:var(--bg-base)!important;border:1px solid var(--border)!important;border-radius:var(--border-radius);box-shadow:var(--shadow-xl);max-height:90vh;overflow-y:auto;width:min(860px,calc(100vw - 2rem))}@keyframes projectModalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.project-selection-new .modal-header{align-items:flex-start;background:var(--surface-raised)!important;border-bottom:1px solid var(--border)!important;display:flex;justify-content:space-between;padding:1.5rem 1.5rem 1rem}.project-selection-new .modal-header h2{color:var(--text-primary)!important;font-size:1.5rem;font-weight:700;margin:0}.project-modal-heading{display:flex;flex-direction:column;gap:.5rem;max-width:560px}.project-modal-heading p{color:var(--text-secondary);font-size:.95rem;line-height:1.5;margin:0}.modal-close{align-items:center;border-radius:var(--radius-sm);color:var(--text-secondary);display:flex;height:32px;justify-content:center;transition:var(--transition-fast);width:32px}.modal-close:hover{background:#ef4444}.project-form{padding:1.25rem 1.5rem 1.5rem}.form-group{margin-bottom:1.25rem}.project-selection-new .form-group label{color:var(--text-primary)!important;display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.project-selection-new .form-group input,.project-selection-new .form-group textarea{background:var(--bg-panel)!important;border:1px solid var(--border)!important;border-radius:var(--radius-sm);box-sizing:border-box;color:var(--text-primary)!important;font-family:inherit;font-size:.875rem;padding:.875rem .95rem;transition:var(--transition-fast);width:100%}.project-selection-new .form-group input::placeholder,.project-selection-new .form-group textarea::placeholder{color:var(--text-muted)!important;opacity:1}.form-group input:focus,.form-group textarea:focus{border-color:var(--semantic-focus);box-shadow:0 0 0 3px var(--accent-tint);outline:none}.form-group textarea{min-height:108px;resize:vertical}.field-help{color:var(--semantic-text-secondary);font-size:.78rem;line-height:1.45;margin:.5rem 0 0}.project-form-grid{grid-gap:1.25rem;align-items:start;display:grid;gap:1.25rem;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr)}.project-form-main,.project-form-side{min-width:0}.project-meta-card{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:1rem;padding:1rem}.project-meta-label{color:var(--text-muted);display:block;font-size:.72rem;letter-spacing:.08em;margin-bottom:.5rem;text-transform:uppercase}.project-meta-card strong{color:var(--text-primary);display:block;font-size:1rem;margin-bottom:.25rem}.project-meta-card p{color:var(--text-secondary);font-size:.8rem;line-height:1.4;margin:0}.icon-group{margin-bottom:0}.project-icon-field{background:var(--surface-read-only);border:1px solid var(--border);border-radius:var(--radius);padding:.9rem}.project-icon-preview{align-items:center;display:flex;gap:.9rem;margin-bottom:.9rem}.project-icon-preview-badge{align-items:center;background:var(--surface-interactive);border:1px solid var(--border-strong);border-radius:var(--radius);color:var(--text-primary);display:flex;height:56px;justify-content:center;width:56px}.project-icon-preview-symbol{font-size:1.8rem}.project-icon-preview-copy{display:flex;flex-direction:column;gap:.2rem}.project-icon-preview-copy strong{color:var(--text-primary);font-size:.92rem}.project-icon-preview-copy span{color:var(--text-secondary);font-size:.82rem;text-transform:capitalize}.project-icon-search{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);box-sizing:border-box;color:var(--text-primary);font-size:.84rem;margin-bottom:.8rem;padding:.75rem .85rem;width:100%}.project-icon-search:focus{border-color:var(--semantic-focus);box-shadow:0 0 0 3px var(--accent-tint);outline:none}.project-color-row{align-items:center;display:flex;gap:.65rem;margin-bottom:.85rem}.project-color-swatches{display:flex;flex-wrap:wrap;gap:.4rem;vertical-align:middle}.project-color-swatch{align-items:center;border:1px solid var(--semantic-border-strong);border-radius:var(--radius-pill);box-sizing:border-box;cursor:pointer;display:inline-flex;height:18px;justify-content:center;min-width:18px;padding:0;position:relative;top:0;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;width:18px}.project-color-swatch:hover{transform:scale(1.08)}.project-color-swatch.selected{border-color:var(--semantic-text-primary);box-shadow:0 0 0 2px #f0ede12e}.project-color-custom{align-items:center;background:#d6d8dd;border:1px solid var(--semantic-border-strong);border-radius:var(--radius);box-sizing:border-box;cursor:pointer;display:inline-flex;height:18px;justify-content:center;min-width:18px;overflow:hidden;position:relative;top:0;width:18px}.project-color-custom:hover{background:#e2e4e8;border-color:var(--semantic-text-secondary);transform:scale(1.08)}.project-color-custom-icon{align-items:center;color:#111;display:flex;height:100%;justify-content:center;pointer-events:none;transform:none;width:100%}.project-color-custom input[type=color]{border:none;cursor:pointer;height:100%;inset:0;opacity:0;padding:0;position:absolute;width:100%}.project-icon-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(4,minmax(0,1fr))}.project-icon-option{align-items:center;background:var(--surface-interactive);border:1px solid var(--border);border-radius:var(--radius);color:var(--semantic-text-primary);cursor:pointer;display:flex;flex-direction:column;gap:.3rem;min-width:0;padding:.62rem .45rem;transition:var(--transition-fast)}.project-icon-option:hover{background:var(--surface-interactive-hover);border-color:var(--semantic-border-strong);transform:translateY(-1px)}.project-icon-option.selected{background:var(--selection-surface);border-color:var(--selection-border);box-shadow:0 0 0 1px var(--selection-border)}.project-icon-option-symbol{font-size:1.2rem}.project-icon-option-label{color:var(--text-secondary);font-size:.62rem;line-height:1.2;text-align:center;text-transform:capitalize}.project-selection-new .modal-actions{background:#0000!important;border-top:none!important;display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.25rem;padding:0}.btn-cancel{background:#0000;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;font-size:.875rem;padding:.625rem 1.25rem;transition:var(--transition-fast)}.btn-cancel:hover{background:var(--bg-panel);border-color:var(--border-strong);color:var(--text-primary)}.btn-create{background:var(--action-primary);border:1px solid var(--action-primary);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);color:var(--semantic-text-on-action);cursor:pointer;font-size:.875rem;font-weight:600;padding:.625rem 1.25rem;transition:var(--transition-fast)}.btn-create:hover:not(:disabled){background:var(--action-primary-hover);border-color:var(--action-primary-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-create:disabled{cursor:not-allowed;opacity:.5}.header-actions{padding-right:1rem}.view-toggle{background:var(--surface-interactive);border-radius:var(--radius-sm);display:flex;gap:.25rem;padding:.25rem}.view-btn{background:#0000;border:none;border-radius:3px;color:var(--color-text-secondary);cursor:pointer;font-size:1.125rem;opacity:.7;padding:.5rem .75rem;transition:var(--transition-fast)}.view-btn.active{background:var(--surface-raised);box-shadow:var(--shadow-sm);color:var(--text-primary);opacity:1}.view-btn:hover:not(.active){background:var(--surface-interactive-hover);color:var(--color-text-primary);opacity:1}.card-actions{align-items:center;display:flex;gap:.5rem}.card-action-btn{background:#0000;border:none;border-radius:3px;color:var(--color-text-muted);cursor:pointer;font-size:1.125rem;opacity:0;padding:.25rem .5rem;transition:var(--transition-fast)}.card-action-btn:focus-visible,.project-card:hover .card-action-btn{opacity:1}.card-action-btn:hover{background:var(--card-background-hover);color:var(--text-primary)}.project-card-new{align-items:center;background:#0000;border:2px dashed var(--color-border);display:flex;justify-content:center;min-height:200px}.project-card-new:hover{background:var(--surface-interactive);border-color:var(--border-strong);transform:translateY(-2px)}.project-card-new:hover .new-project-icon{border-color:var(--border-strong);color:var(--color-text-primary)}.new-project-content{align-items:center;display:flex;flex-direction:column;gap:.75rem;padding:2rem;text-align:center}.new-project-icon{align-items:center;border:2px dashed var(--color-border);border-radius:50%;color:var(--color-text-muted);display:flex;font-weight:300;height:52px;justify-content:center;line-height:1;padding-bottom:2px;transition:var(--transition-fast);width:52px}.new-project-icon .material-symbols-outlined{font-size:1.75rem}.new-project-title{color:var(--color-text-secondary);font-size:1rem;font-weight:600;margin:0}.new-project-desc{color:var(--color-text-muted);font-size:.8rem;margin:0}.project-card-new.list-view{flex-direction:row;min-height:80px}.project-card-new.list-view .new-project-content{flex-direction:row;gap:1rem;padding:1rem 1.5rem}.projects-list{display:flex;flex-direction:column;gap:1rem}.project-card.list-view{display:flex;flex-direction:row;max-width:none;width:100%}.project-card.list-view .card-body{flex:1 1}.project-card.list-view .card-header{flex-direction:column;width:auto}@media (max-width:768px){.selection-header{flex-direction:column;gap:1rem;padding:1.5rem;text-align:center}.projects-container{padding:1.5rem}.project-form-grid,.projects-grid{grid-template-columns:1fr}.project-selection-new .modal-content{max-height:calc(100vh - 1rem);width:min(100vw - 1rem,860px)}.view-toggle{display:none}.project-icon-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.studio-continue{align-items:center;background:#ffffff0a;background:var(--surface-raised,#ffffff0a);border:1px solid #ffffff24;border-left:3px solid #d4a72c;border:1px solid var(--border-subtle,#ffffff24);border-left:3px solid var(--accent-primary,#d4a72c);border-radius:10px;display:flex;gap:16px;justify-content:space-between;margin:24px auto 0;padding:14px 18px;width:min(1120px,calc(100% - 48px))}.studio-continue-copy{grid-gap:3px;display:grid;gap:3px;min-width:0}.studio-continue-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studio-continue-copy>span:last-child{color:#a9a9b2;color:var(--text-muted,#a9a9b2);font-size:.88rem}.studio-eyebrow{color:#d4a72c;color:var(--accent-primary,#d4a72c);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.studio-continue-action{background:var(--surface-interactive);border:1px solid var(--action-primary);border-radius:var(--radius-sm);color:var(--semantic-text-primary);cursor:pointer;flex:0 0 auto;font:inherit;font-weight:600;padding:.625rem 1.1rem;transition:var(--transition-fast)}.studio-continue-action:hover{background:var(--selection-surface)}.studio-create-menu{position:relative}.studio-create-menu>summary{background:var(--surface-interactive);border:1px solid var(--semantic-border);border-radius:var(--radius-sm);color:var(--semantic-text-secondary);cursor:pointer;list-style:none;padding:.625rem .8rem}.studio-create-menu>summary::-webkit-details-marker{display:none}.studio-create-menu__popover{background:var(--surface-raised);border:1px solid var(--semantic-border-strong);border-radius:8px;box-shadow:var(--semantic-shadow);min-width:180px;padding:6px;position:absolute;right:0;top:calc(100% + 6px);z-index:20}.studio-create-menu__popover button{background:#0000;border:0;border-radius:5px;color:var(--semantic-text-primary);display:block;padding:8px 10px;text-align:left;width:100%}.studio-create-menu__popover button:hover{background:var(--surface-interactive-hover)}.studio-project-list{grid-gap:8px;display:grid;gap:8px;grid-template-columns:minmax(0,1fr)}.studio-project-row{grid-column-gap:14px;grid-row-gap:6px;align-items:center;box-sizing:border-box;column-gap:14px;display:grid;grid-template-columns:48px minmax(0,1fr) minmax(190px,auto);grid-template-rows:auto auto;min-height:92px;padding:12px 14px;row-gap:6px;text-align:left;width:100%}.studio-project-row .card-header{display:contents}.studio-project-row .card-icon{grid-column:1;grid-row:1/3;height:44px;width:44px}.studio-project-row .project-card-icon-symbol{font-size:1.5rem}.studio-project-row .card-body{grid-column:2;grid-row:1/3;min-width:0;padding:0}.studio-project-row .card-body h3{margin:0}.studio-project-row .card-description{margin:3px 0 5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studio-project-row .card-status{display:inline-flex;margin:0 14px 0 0;vertical-align:top}.studio-project-row .card-status-lines{flex-direction:row;flex-wrap:wrap;gap:4px 12px}.studio-project-row .card-owner{display:inline;margin:0}.studio-project-row .card-actions{align-self:start;grid-column:3;grid-row:1;justify-self:end}.studio-project-row .card-footer{align-self:end;background:#0000;border:0;gap:12px;grid-column:3;grid-row:2;justify-self:stretch;min-width:0;padding:0}.studio-project-row .card-resume-btn{flex:0 0 auto}.studio-project-row .card-date,.studio-project-row .card-lastworked{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studio-project-row.project-card-new,.studio-project-row.studio-sample-row{color:var(--semantic-text-primary);display:block;min-height:72px;padding:0}.studio-project-row.project-card-new .new-project-content,.studio-project-row.studio-sample-row{align-items:center;box-sizing:border-box;gap:14px;grid-template-columns:44px minmax(0,1fr) auto;width:100%}.studio-project-row.project-card-new .new-project-content{display:grid;padding:12px 14px;text-align:left}.studio-project-row.studio-sample-row{display:grid;padding:12px 14px}.studio-project-row .studio-project-row__icon{grid-column:1}.studio-project-row__main{grid-gap:3px;display:grid;gap:3px;min-width:0}.studio-project-row__main>span{color:var(--semantic-text-secondary);font-size:.82rem}.studio-project-row__action{color:var(--accent-primary);font-size:.82rem;font-weight:700;white-space:nowrap}.studio-project-row.project-card-new .new-project-icon{height:40px;width:40px}.studio-project-row.project-card-new .new-project-title{color:var(--semantic-text-primary)}.studio-project-row.project-card-new .new-project-desc{margin:0}@media (max-width:640px){.header-content{flex:1 1;min-width:0;padding-right:.5rem}.header-branding{flex-wrap:wrap;gap:.5rem;min-width:0}.studio-continue{align-items:stretch;flex-direction:column;width:calc(100% - 24px)}.studio-continue-action{width:100%}.studio-project-row{grid-template-columns:44px minmax(0,1fr);grid-template-rows:auto auto auto}.studio-project-row .card-icon{grid-row:1/4}.studio-project-row .card-body{grid-column:2;grid-row:1}.studio-project-row .card-actions{grid-column:2;grid-row:2;justify-self:start}.studio-project-row .card-footer{flex-wrap:wrap;grid-column:2;grid-row:3;justify-content:flex-start;justify-self:start}.studio-project-row.project-card-new .new-project-content,.studio-project-row.studio-sample-row{grid-template-columns:40px minmax(0,1fr) auto}}.tour-btn{align-items:center;background:#0000;border:1px solid var(--border,var(--border));border-radius:var(--radius);color:var(--text-secondary);color:var(--text-secondary,var(--text-secondary));cursor:pointer;display:flex;height:36px;justify-content:center;transition:color .15s ease,background .15s ease,border-color .15s ease;width:36px}.tour-btn .material-symbols-outlined{font-size:20px}.tour-btn:hover{background:#ffffff0f;border-color:var(--text-secondary,var(--text-secondary));color:var(--text-primary);color:var(--text-primary,var(--text-primary))}.project-selection-new .project-modal{max-width:640px}.project-owner-line{color:var(--text-secondary);font-size:.85rem;margin:0 0 1rem}.project-owner-line strong{color:var(--text-primary)}.project-icon-disclosure{align-items:center;background:#0000;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:flex;font-size:.875rem;gap:6px;padding:.55rem .75rem;text-align:left;width:100%}.project-icon-disclosure:hover{border-color:var(--border-strong);color:var(--text-primary)}.project-icon-disclosure .material-symbols-outlined{font-size:18px}.project-icon-disclosure-preview{align-items:center;display:inline-flex;margin-left:auto}.project-icon-disclosure-preview .material-symbols-outlined{font-size:20px}.project-icon-disclosure[aria-expanded=true]{margin-bottom:.75rem}.version-display{bottom:12px;color:var(--semantic-text-secondary);cursor:pointer;font-family:SF Mono,Monaco,Inconsolata,monospace;font-family:var(--font-mono,"SF Mono","Monaco","Inconsolata",monospace);font-size:11px;left:12px;letter-spacing:.02em;opacity:.85;position:fixed;text-decoration:none;transition:opacity .15s ease,color .15s ease;-webkit-user-select:none;user-select:none;z-index:1000}.version-display:hover{color:var(--semantic-link);opacity:1;text-decoration:underline}.login-page{align-items:center;background:var(--bg-base);display:flex;justify-content:center;min-height:100vh;padding:32px}.login-shell{align-items:stretch;background:var(--bg-panel);border:1px solid var(--border);border-radius:20px;box-shadow:var(--semantic-shadow);display:grid;grid-template-columns:1fr 1fr;overflow:hidden;width:min(1120px,100%)}.login-brand-panel{background:var(--bg-panel);border-right:1px solid var(--border);display:flex;flex-direction:column;gap:28px;justify-content:space-between;padding:56px 52px}.login-brand-header{display:flex;flex-direction:column;gap:18px}.login-brand-logo{height:52px;object-fit:contain;object-position:left center;width:min(320px,100%)}.login-brand-lockup{align-items:center;display:flex;gap:12px}.login-brand-lockup .login-brand-logo{max-width:220px;width:auto}.login-brand-suffix{color:var(--text-primary);font-size:1.7rem;font-weight:600;letter-spacing:-.02em;line-height:1}.login-brand-kicker{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text-secondary);display:inline-flex;font-size:.76rem;letter-spacing:.08em;padding:6px 10px;text-transform:uppercase;width:fit-content}.login-brand-panel .login-brand-kicker{display:none}.login-brand-copy h2{color:var(--text-primary);font-size:clamp(2rem,3vw,3rem);letter-spacing:-.03em;line-height:1.05;margin:0 0 12px}.login-brand-copy p{color:var(--text-secondary);font-size:1rem;line-height:1.6;margin:0;max-width:48ch}.login-brand-list{grid-gap:12px;display:grid;gap:12px}.login-brand-item{background:#0000;border:0;border-radius:0;display:block;gap:16px;padding:8px 0}.login-brand-item-label{color:var(--text-primary);font-size:.88rem;font-weight:700}.login-brand-item-value{color:var(--text-secondary);display:none;font-size:.84rem;text-align:right}.login-container{width:100%}.login-card{display:flex;flex-direction:column;height:100%;overflow:hidden;width:100%}.login-card,.login-header{background:var(--bg-panel)}.login-header{border-bottom:1px solid var(--border);padding:36px 40px 18px}.login-mode-badge{background:var(--accent-tint);border-radius:var(--radius-pill);color:var(--accent);display:inline-flex;font-size:.74rem;font-weight:700;letter-spacing:.08em;margin-bottom:12px;padding:5px 9px;text-transform:uppercase}.login-header h1{color:var(--text-primary);font-size:2rem;line-height:1.05;margin:0 0 8px}.login-header p{color:var(--text-secondary);font-size:.95rem;margin:0}.login-form{padding:24px 40px 32px}.login-form .form-group{margin-bottom:18px}.login-form label{color:var(--text-primary);display:block;font-size:.84rem;font-weight:600;letter-spacing:.04em;margin-bottom:8px;text-transform:uppercase}.login-form input{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-size:1rem;padding:13px 14px;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;width:100%}.login-form input::placeholder{color:var(--text-muted)}.login-form input:focus{background:var(--bg-hover);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint);outline:none}.login-form input:disabled{background:var(--bg-base);cursor:not-allowed}.password-input{position:relative}.password-input input{padding-right:68px}.password-toggle{appearance:none;background:none;border:none;color:var(--accent);cursor:pointer;font:inherit;font-size:.74rem;font-weight:700;letter-spacing:.06em;padding:4px 8px;position:absolute;right:8px;text-transform:uppercase;top:50%;transform:translateY(-50%)}.password-toggle:hover:not(:disabled){color:var(--accent-hover)}.password-toggle:disabled{color:var(--text-muted);cursor:not-allowed}.password-strength{align-items:center;display:flex;gap:10px;margin-top:10px}.password-strength-bars{display:flex;flex:1 1;gap:4px}.password-strength-seg{border-radius:2px;flex:1 1;height:4px;transition:background .2s ease}.password-strength-label{font-size:.76rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.login-button{background:var(--accent);border:1px solid var(--accent);border-radius:var(--radius);color:var(--accent-foreground);cursor:pointer;font-size:.98rem;font-weight:700;margin-top:8px;padding:13px 16px;transition:background .2s ease,border-color .2s ease;width:100%}.login-button:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover);box-shadow:none;transform:none}.login-button:disabled{background:var(--text-muted);border-color:var(--text-muted);cursor:not-allowed;transform:none}.login-button-secondary{background:#0000;border:1px solid var(--accent);border-radius:var(--radius);color:var(--accent);cursor:pointer;font-size:.98rem;font-weight:700;margin-top:10px;padding:13px 16px;transition:background .2s ease,border-color .2s ease;width:100%}.login-button-secondary:hover:not(:disabled){background:var(--surface-interactive-hover);border-color:var(--accent-hover)}.login-button-secondary:disabled{border-color:var(--text-muted);color:var(--text-muted);cursor:not-allowed}.error-message,.success-message{border:1px solid #0000;border-radius:var(--radius);font-size:.9rem;margin-bottom:18px;padding:12px 14px}.error-message{background:#991b1b38;border-color:#ef44444d;color:color-mix(in srgb,var(--semantic-danger) 55%,var(--semantic-text-primary))}.success-message{background:#065f4638;border-color:#22c55e47;color:color-mix(in srgb,var(--semantic-success) 55%,var(--semantic-text-primary))}.login-footer{background:var(--bg-elevated);border-top:1px solid var(--border);margin-top:auto;padding:18px 40px 28px}.login-footer p{color:var(--text-secondary);font-size:.88rem;margin:8px 0}.login-link{appearance:none;background:none;border:none;color:var(--accent);cursor:pointer;font:inherit;font-weight:700;padding:0}.login-link:hover{color:var(--accent-hover);text-decoration:underline}.login-newuser{border-top:1px solid var(--border);margin-top:14px;padding-top:14px;text-align:center}.login-newuser-lead{color:var(--foreground);display:block;font-size:.9rem;font-weight:600;margin-bottom:8px}.login-signup-btn{background:color-mix(in srgb,var(--accent) 14%,#0000);border:1px solid var(--accent);border-radius:var(--radius);color:var(--accent);cursor:pointer;display:block;font-size:.95rem;font-weight:700;margin-bottom:10px;padding:11px;text-align:center;transition:background .15s,color .15s;width:100%}.login-signup-btn:hover{background:var(--accent);color:var(--accent-foreground)}.dev-mode-banner{align-items:flex-start;background:var(--accent-tint);border:1px solid var(--border);border-radius:var(--radius);display:flex;gap:14px;margin-bottom:18px;padding:14px}.dev-mode-icon{font-size:1.25rem}.dev-mode-banner strong{color:var(--text-primary);display:block;margin-bottom:4px}.dev-mode-banner p,.form-hint{color:var(--text-secondary);font-size:.82rem;margin:0}.form-hint{display:block;margin-top:6px}.button-loading{align-items:center;display:flex;gap:8px;justify-content:center}.spinner{animation:spin .8s linear infinite;border:2px solid var(--border-strong);border-radius:50%;border-top-color:var(--text-primary);height:16px;width:16px}@media (max-width:960px){.login-shell{grid-template-columns:1fr}.login-brand-panel{border-bottom:1px solid var(--border);border-right:none}}@media (max-width:640px){.login-page{padding:12px}.login-brand-panel{border-bottom:0;padding:18px 18px 8px}.login-container{padding:0}.login-brand-copy p,.login-brand-list{display:none}.login-brand-copy h2{font-size:1.8rem}.login-brand-item{flex-direction:column}.login-brand-item-value{text-align:left}.login-footer,.login-form,.login-header{padding-left:18px;padding-right:18px}}.field-required-error{color:var(--status-destructive);display:block;font-size:.82rem;margin-top:6px}.login-google{margin-bottom:4px}.login-google-btn{align-items:center;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:10px;justify-content:center;padding:12px 16px;transition:background .15s ease,border-color .15s ease;width:100%}.login-google-btn:hover:not(:disabled){background:var(--bg-panel);border-color:var(--text-secondary)}.login-google-btn:disabled{cursor:not-allowed;opacity:.6}.login-google-icon{flex:0 0 auto}.login-divider{align-items:center;color:var(--text-secondary);display:flex;font-size:.82rem;gap:12px;margin:16px 0 4px;text-align:center}.login-divider:after,.login-divider:before{background:var(--border);content:"";flex:1 1;height:1px}.finish-terms{align-items:flex-start;color:var(--text-secondary);cursor:pointer;display:flex;font-size:.9rem;font-weight:400;gap:10px;line-height:1.4}.finish-terms input[type=checkbox]{flex:0 0 auto;margin-top:2px}.finish-terms a{color:var(--text-primary);text-decoration:underline}.share-recap-list{display:flex;flex-direction:column;gap:20px;text-align:left}.share-recap-item h2{font-size:16px;margin:0 0 4px}.share-recap-body{color:var(--text-primary);font-family:inherit;font-size:14px;line-height:1.5;margin:8px 0 0;white-space:pre-wrap}.login-recovery-toggle{display:block;font-size:.85rem;margin:-8px 0 20px}.invitation-access-summary{grid-gap:8px 16px;color:var(--text-secondary);display:grid;font-size:.9rem;gap:8px 16px;grid-template-columns:minmax(120px,1fr) 1.4fr;margin:12px 0 18px}.invitation-access-summary dt{font-weight:600}.invitation-access-summary dd{color:var(--text-primary);margin:0}.invitation-decline-confirm{border:1px solid var(--border);border-radius:var(--radius);margin-top:16px;padding:14px}.invitation-decline-confirm p{color:var(--text-secondary);margin:8px 0 12px}.device-approval-shell{align-items:center;display:flex;justify-content:center;min-height:100vh}.device-approval-card{max-width:26rem}.device-approval-title{font-size:1.4rem;margin:0 0 .5rem}.device-approval-intro{font-size:.92rem;line-height:1.5;margin:0 0 1.25rem}.device-approval-info,.device-approval-intro{color:#a1a1aa;color:var(--semantic-text-secondary,#a1a1aa)}.device-approval-info{font-size:.9rem;margin:.75rem 0 0}.device-approval-details{margin-top:.5rem}.device-approval-client{font-size:.95rem;line-height:1.5;margin:0 0 .5rem}.device-approval-scope{color:#a1a1aa;color:var(--semantic-text-secondary,#a1a1aa);font-size:.85rem;margin:0 0 1rem}.device-approval-actions{display:flex;gap:.75rem}.device-approval-actions .login-button,.device-approval-actions .login-button-secondary{flex:1 1}.public-surface{background:var(--surface-base);color:var(--semantic-text-primary)}.public-surface .login-shell{width:min(100% - 2rem,46rem)}.public-surface .login-card{border:1px solid var(--semantic-border)}.public-surface .login-button{background:var(--action-primary);border-color:var(--action-primary);color:var(--semantic-text-on-action)}.public-surface .share-recap-list{grid-gap:1rem;display:grid;gap:1rem}.public-surface .share-recap-item{background:var(--surface-passive);border:1px solid var(--semantic-border);border-radius:.45rem;padding:1rem}.public-surface .share-recap-item h2{font-size:1.05rem;margin:0}.public-surface .share-recap-body{background:var(--surface-base);border-radius:.35rem;color:inherit;font:inherit;line-height:1.6;margin:1rem 0 0;overflow-wrap:anywhere;padding:1rem;white-space:pre-wrap}@media (max-width:520px){.public-surface .login-shell{width:min(100% - 1rem,46rem)}.public-surface .login-card{padding:1.1rem}}.pricing-page{color:#e8e8ef;color:var(--text-primary,#e8e8ef);margin:0 auto;max-width:1080px;padding:48px 24px 80px}.pricing-page--loading{color:#9a9aa8;color:var(--text-secondary,#9a9aa8);padding:80px 24px;text-align:center}.pricing-page__head h1{font-size:2rem;margin:0 0 12px}.pricing-page__head p{line-height:1.5;max-width:640px}.pricing-page__head p,.pricing-page__unavailable{color:#9a9aa8;color:var(--text-secondary,#9a9aa8)}.pricing-page__ladder{margin-top:40px}.pricing-page__ladder h2{font-size:1.3rem;margin-bottom:16px}.pricing-page__grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.pricing-card{background:#ffffff08;background:var(--surface-2,#ffffff08);border:1px solid #2a2a35;border:1px solid var(--border-color,#2a2a35);border-radius:12px;display:flex;flex-direction:column;gap:10px;padding:20px}.pricing-card--studio{border-style:dashed}.pricing-page__matrix{border:1px solid #2a2a35;border:1px solid var(--border-color,#2a2a35);border-radius:12px;display:flex;flex-direction:column;font-size:.82rem;margin-bottom:20px;overflow:hidden}.pricing-page__matrix-row{align-items:center;display:grid;grid-template-columns:1.6fr repeat(5,.8fr)}.pricing-page__matrix-row:nth-child(2n){background:#ffffff08;background:var(--surface-2,#ffffff08)}.pricing-page__matrix-row--head{background:#ffffff14;background:var(--surface-3,#ffffff14);font-weight:700}.pricing-page__matrix-row>span{color:#9a9aa8;color:var(--text-secondary,#9a9aa8);padding:8px 10px;text-align:center}.pricing-page__matrix-row>span:first-child{color:#e8e8ef;color:var(--text-primary,#e8e8ef);text-align:left}.pricing-card__name{font-size:1.1rem;font-weight:700}.pricing-card__price{font-size:1.4rem;font-weight:600}.pricing-card__annual{color:#70707e;color:var(--text-tertiary,#70707e);font-size:.75rem;margin-top:-6px}.pricing-card__list{color:#9a9aa8;color:var(--text-secondary,#9a9aa8);flex:1 1;font-size:.85rem;margin:0;padding-left:18px}.pricing-card__cta{background:#87ceeb;background:var(--accent,#87ceeb);border-radius:8px;color:#0b0b0f;display:inline-block;font-weight:600;padding:8px 12px;text-align:center;text-decoration:none}.pricing-card__cta--secondary{background:none;border:1px solid #87ceeb;border:1px solid var(--accent,#87ceeb);color:#87ceeb;color:var(--accent,#87ceeb)}.pricing-page__promises{margin-top:48px}.pricing-page__promises ol{color:#9a9aa8;color:var(--text-secondary,#9a9aa8);line-height:1.7;padding-left:20px}.pricing-page__foot{margin-top:48px}.pricing-page__foot a{color:#87ceeb;color:var(--accent,#87ceeb)}.legal-document-page{color:#e8e8ef;color:var(--text-primary,#e8e8ef);margin:0 auto;max-width:780px;padding:48px 24px 80px}.legal-document-page--loading{color:#9a9aa8;color:var(--text-secondary,#9a9aa8);padding:80px 24px;text-align:center}.legal-document-page__error,.legal-document-page__meta{color:#9a9aa8;color:var(--text-secondary,#9a9aa8);margin-bottom:16px}.legal-document-page__meta{display:flex;font-size:.85rem;gap:8px}.legal-document-page__draft-notice{background:#c9a76a1f;border:1px solid #c9a76a66;border-radius:8px;color:#c9a76a;color:var(--accent,#c9a76a);font-size:.9rem;margin-bottom:24px;padding:12px 14px}.legal-document-page__content{line-height:1.6}.legal-document-page__content h1{font-size:1.8rem;margin:0 0 16px}.legal-document-page__content h2{border-top:1px solid #2a2a35;border-top:1px solid var(--border-color,#2a2a35);font-size:1.3rem;margin:32px 0 12px;padding-top:24px}.legal-document-page__content h3{font-size:1.05rem;margin:20px 0 8px}.legal-document-page__content p{color:#c4c4cc;color:var(--text-secondary,#c4c4cc);margin:0 0 14px}.legal-document-page__content ol,.legal-document-page__content ul{color:#c4c4cc;color:var(--text-secondary,#c4c4cc);margin:0 0 14px;padding-left:24px}.legal-document-page__content table{border-collapse:collapse;font-size:.9rem;margin:0 0 20px;width:100%}.legal-document-page__content td,.legal-document-page__content th{border:1px solid #2a2a35;border:1px solid var(--border-color,#2a2a35);padding:8px 10px;text-align:left;vertical-align:top}.legal-document-page__content blockquote{border-left:3px solid #c9a76a;border-left:3px solid var(--accent,#c9a76a);color:#9a9aa8;color:var(--text-secondary,#9a9aa8);margin:0 0 16px;padding:4px 16px}.legal-document-page__content a{color:#c9a76a;color:var(--accent,#c9a76a)}.legal-document-page__content hr{border:none;margin:32px 0}.legal-document-page__content hr,.legal-document-page__foot{border-top:1px solid #2a2a35;border-top:1px solid var(--border-color,#2a2a35)}.legal-document-page__foot{margin-top:40px;padding-top:20px}.legal-document-page__foot a{color:#c9a76a;color:var(--accent,#c9a76a)}.page-taskbar{align-items:center;background:var(--bg-panel);border:1px solid var(--border-strong);border-radius:8px;display:flex;flex-wrap:wrap;font-size:.875rem;gap:6px 16px;margin-bottom:10px;padding:6px 8px 6px 12px}.page-taskbar__counts{color:var(--text-primary);margin:0}.page-taskbar__notice{color:var(--text-secondary);flex:1 1 18rem;margin:0;min-width:0;overflow-wrap:anywhere}.page-taskbar__notice:before{background:var(--warning);border-radius:50%;content:"";display:inline-block;height:8px;margin-right:8px;vertical-align:1px;width:8px}.page-taskbar__notice a{color:var(--accent-primary)}.page-taskbar__resolve{vertical-align:middle}.page-taskbar__notice .billed-hint{margin-left:6px}.page-taskbar__trailing{margin-left:auto}@media (max-width:640px){.page-taskbar{align-items:stretch;flex-direction:column}.page-taskbar__notice{flex-basis:auto}.page-taskbar__trailing{align-self:flex-start;margin-left:0}}.data-table-wrapper{background:var(--bg-base);border:1px solid var(--border);border-radius:var(--radius);overflow-x:auto;width:100%}.data-table{border-collapse:collapse;font-size:13px;width:100%}.data-table thead{background:var(--bg-panel);border-bottom:1px solid var(--border)}.data-table th{background:var(--bg-panel);color:var(--text-muted);font-size:var(--label-size);font-weight:700;letter-spacing:.1em;padding:7px 14px;position:sticky;text-align:left;text-transform:uppercase;top:0;white-space:nowrap;z-index:10}.data-table th.sortable{cursor:pointer;transition:background-color .2s;-webkit-user-select:none;user-select:none}.data-table th.sortable:hover{background:#354149;background:var(--card-background-hover,#354149)}.th-content{align-items:center;display:flex;gap:8px}.sort-indicator{color:#6b7278;color:var(--text-tertiary,#6b7278);font-size:10px}.actions-column{text-align:center!important;width:100px}.data-table tbody tr{border:none;transition:background-color .15s}.data-table td{border:none;border-bottom:1px solid var(--border-subtle);color:var(--text-primary);padding:8px 14px;vertical-align:middle}.data-table.striped tbody tr.even{background:var(--bg-base)}.data-table.striped tbody tr.odd{background:var(--bg-panel)}.data-table.hoverable tbody tr:hover{background:var(--bg-hover)!important}.data-table.compact td,.data-table.compact th{padding:8px 12px}.data-table.compact{font-size:13px}.empty-row td{color:#6b7278;color:var(--text-tertiary,#6b7278);font-style:italic;padding:48px 16px;text-align:center}.empty-message{align-items:center;display:flex;flex-direction:column;gap:8px;justify-content:center}.actions-cell{text-align:center!important}.action-buttons{display:flex;gap:8px;justify-content:center}.table-action-btn{background:none;border:none;border-radius:4px;cursor:pointer;font-size:16px;padding:4px 8px;transition:background-color .2s}.table-action-btn:hover{background:var(--bg-hover)}.table-action-btn.ai{color:var(--accent)}.table-action-btn.ai:disabled{color:var(--accent-dark);cursor:wait;opacity:.7}.table-action-btn.edit{color:var(--text-secondary)}.table-action-btn.delete{color:var(--status-destructive)}@media (max-width:768px){.data-table{font-size:12px}.data-table td,.data-table th{padding:8px 12px}}.truncate{display:inline-block;max-width:250px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.table-badge{border-radius:var(--radius-pill);display:inline-block;font-size:10px;font-weight:600;letter-spacing:.02em;padding:2px 8px}.checkbox-cell,.checkbox-column{padding:8px!important;text-align:center!important;width:40px!important}.checkbox-cell input[type=checkbox],.checkbox-column input[type=checkbox]{accent-color:var(--accent);cursor:pointer;height:16px;width:16px}.data-table tbody tr.selected{background:var(--accent-tint)}.data-table tbody tr.selected td:first-child{box-shadow:inset 2px 0 0 0 var(--accent)}.cim-overlay{align-items:center;background:#0000008c;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:1000}.cim-modal{background:#1e2230;background:var(--bg-panel,var(--color-surface,#1e2230));border:1px solid #333;border:1px solid var(--border,var(--color-border,#333));border-radius:10px;border-radius:var(--radius,10px);box-shadow:0 20px 60px #00000073;color:#e8e8ee;color:var(--text-primary,var(--color-text-primary,#e8e8ee));display:flex;flex-direction:column;max-height:85vh;max-width:560px;width:100%}.cim-header{align-items:center;border-bottom:1px solid #333;border-bottom:1px solid var(--border,var(--color-border,#333));display:flex;justify-content:space-between;padding:1rem 1.25rem}.cim-header h3{font-size:1.05rem;margin:0}.cim-close{background:none;border:none;color:#aaa;color:var(--text-secondary,#aaa);cursor:pointer;font-size:1.5rem;line-height:1}.cim-close:hover{color:#fff;color:var(--text-primary,#fff)}.cim-body{display:flex;flex-direction:column;gap:.85rem;overflow-y:auto;padding:1.25rem}.cim-muted{color:#9a9aa5;color:var(--text-muted,var(--text-secondary,#9a9aa5));font-size:.9rem}.cim-mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em}.cim-field{display:flex;flex-direction:column;font-size:.85rem;gap:.3rem}.cim-field>span{color:#b6b6c0;color:var(--text-secondary,#b6b6c0)}.cim-field input,.cim-field select{background:#14161f;background:var(--bg-base,var(--color-background,#14161f));border:1px solid #333;border:1px solid var(--border,var(--color-border,#333));border-radius:6px;border-radius:var(--radius-sm,6px);color:#e8e8ee;color:var(--text-primary,#e8e8ee);font-size:.9rem;padding:.5rem .6rem}.cim-field input:focus,.cim-field select:focus{border-color:#c9a24b;border-color:var(--accent,var(--color-primary,#c9a24b));outline:none}.cim-connbar{align-items:center;background:#ffffff0a;background:var(--bg-hover,#ffffff0a);border:1px solid #333;border:1px solid var(--border,var(--color-border,#333));border-radius:6px;border-radius:var(--radius-sm,6px);display:flex;font-size:.85rem;gap:.5rem;justify-content:space-between;padding:.5rem .7rem}.cim-link{background:none;border:none;color:#c9a24b;color:var(--accent,var(--color-primary,#c9a24b));cursor:pointer;font-size:.85rem;text-decoration:underline}.cim-pages{border:1px solid #333;border:1px solid var(--border,var(--color-border,#333));border-radius:6px;border-radius:var(--radius-sm,6px);overflow:hidden}.cim-pages-head{background:#ffffff0a;background:var(--bg-hover,#ffffff0a);border-bottom:1px solid #333;border-bottom:1px solid var(--border,var(--color-border,#333));font-size:.85rem;padding:.5rem .7rem}.cim-pages-list{max-height:240px;overflow-y:auto}.cim-checkrow{align-items:center;cursor:pointer;display:flex;font-size:.88rem;gap:.55rem;padding:.4rem .7rem}.cim-pages-list .cim-checkrow:hover{background:#ffffff0a;background:var(--bg-hover,#ffffff0a)}.cim-page-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cim-tree-row{align-items:center;display:flex;gap:.35rem;padding:.25rem .5rem}.cim-tree-row:hover{background:#ffffff0a;background:var(--bg-hover,#ffffff0a)}.cim-tree-toggle{background:none;border:none;color:#9a9aa5;color:var(--text-secondary,#9a9aa5);cursor:pointer;font-size:.75rem;min-width:18px;padding:0;text-align:center;width:18px}.cim-tree-label{align-items:center;cursor:pointer;display:flex;flex:1 1;font-size:.88rem;gap:.45rem;overflow:hidden}.cim-error,.cim-tree-icon{font-size:.85rem}.cim-error{background:#e06b6b1a;border:1px solid #e06b6b4d;border-radius:6px;border-radius:var(--radius-sm,6px);color:#e06b6b;color:var(--color-error,var(--status-destructive,#e06b6b));padding:.5rem .7rem}.cim-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:.25rem}.cim-btn{background:#14161f;background:var(--bg-base,var(--color-background,#14161f));border:1px solid #333;border:1px solid var(--border,var(--color-border,#333));border-radius:6px;border-radius:var(--radius-sm,6px);color:#e8e8ee;color:var(--text-primary,#e8e8ee);cursor:pointer;font-size:.88rem;padding:.5rem .9rem}.cim-btn:hover:not(:disabled){border-color:#c9a24b;border-color:var(--accent,var(--color-primary,#c9a24b))}.cim-btn:disabled{cursor:not-allowed;opacity:.5}.cim-primary{background:#c9a24b;background:var(--accent,var(--color-primary,#c9a24b));border-color:#c9a24b;border-color:var(--accent,var(--color-primary,#c9a24b));color:#1a1a1a;color:var(--accent-foreground,#1a1a1a);font-weight:600}.cim-primary:hover:not(:disabled){background:#d8b35e;background:var(--accent-hover,#d8b35e)}.rulebook-import-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.rulebook-import-modal{background:#1f2937;border-radius:10px;color:#f3f4f6;max-height:86vh;overflow-y:auto;padding:20px;width:min(720px,92vw)}.rulebook-import-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.rulebook-import-close{background:none;border:none;color:#f3f4f6;cursor:pointer;font-size:22px;line-height:1}.rulebook-import-body,.rulebook-import-upload{display:flex;flex-direction:column;gap:12px}.rulebook-import-status-row{align-items:center;color:#d1d5db;display:flex;font-size:.9rem;gap:16px}.rulebook-import-phase{background:#374151;border-radius:999px;padding:2px 8px;text-transform:capitalize}.rulebook-import-error-banner{background:#7f1d1d;border-radius:6px;padding:8px 12px}.rulebook-import-actions{display:flex;flex-wrap:wrap;gap:8px}.rulebook-import-tabs{border-bottom:1px solid #374151;display:flex;gap:4px}.rulebook-import-tabs button{background:none;border:none;color:#9ca3af;cursor:pointer;padding:6px 10px}.rulebook-import-tabs button.active{border-bottom:2px solid #2563eb;color:#f3f4f6}.rulebook-import-coverage-list,.rulebook-import-review-list,.rulebook-import-section-list{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;max-height:320px;overflow-y:auto;padding:0}.rulebook-import-review-list li,.rulebook-import-section-list li{align-items:center;background:#111827;border-radius:6px;display:flex;gap:10px;padding:6px 8px}.section-stream.procedures{color:#60a5fa}.section-stream.mechanical-content{color:#facc15}.section-stream.setting-lore{color:#34d399}.section-stream.error,.section-stream.pending,.section-stream.unclassified{color:#f87171}.rulebook-import-coverage-list li.coverage-found{color:#34d399}.rulebook-import-coverage-list li.coverage-partial{color:#facc15}.rulebook-import-coverage-list li.coverage-missing{color:#f87171}.btn-secondary{background:#374151;color:#f3f4f6}.lore-duplicate-dialog-content{display:flex;flex-direction:column;font-size:.9rem;gap:.75rem}.lore-duplicate-existing-facts{grid-gap:.25rem .75rem;background:#1e2230;background:var(--bg-panel,#1e2230);border:1px solid #333;border:1px solid var(--border,#333);border-radius:6px;border-radius:var(--radius-sm,6px);display:grid;gap:.25rem .75rem;grid-template-columns:auto 1fr;margin:0;padding:.6rem .75rem}.lore-duplicate-existing-facts dt{color:#9a9aa5;color:var(--text-secondary,#9a9aa5);font-weight:600}.lore-duplicate-existing-facts dd{margin:0}.lore-duplicate-help{color:#9a9aa5;color:var(--text-secondary,#9a9aa5);font-size:.85rem}.lore-view{color:var(--text-primary);display:flex;flex-direction:column;height:100%;padding:20px}.view-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:2rem}.view-header-text{min-width:0}.view-description{margin:0}.upload-section{margin-bottom:2rem}.upload-warning,.vision-warning{align-items:center;border-radius:6px;display:flex;font-size:.875rem;gap:.75rem;margin-bottom:1rem;padding:.75rem 1rem}.vision-warning{background:#ffc10726;border:1px solid #ffc1074d;color:var(--warning)}.upload-warning{background:#f4877126;border:1px solid #f487714d;color:var(--status-destructive)}.warning-icon{flex-shrink:0;font-size:1.25rem}.warning-dismiss{background:#0000;border:none;color:inherit;cursor:pointer;font-size:1.25rem;line-height:1;margin-left:auto;opacity:.7;padding:0}.warning-dismiss:hover{opacity:1}.dropzone{background:var(--bg-panel);border:2px dashed var(--border-strong);border-radius:8px;cursor:pointer;padding:3rem;text-align:center;transition:all .3s}.dropzone:hover{background:var(--bg-hover);border-color:var(--accent)}.dropzone.active{background:var(--accent-tint);border-color:var(--accent)}.dropzone.uploading{opacity:.6;pointer-events:none}.dropzone-content{align-items:center;display:flex;flex-direction:column;gap:.75rem}.dropzone-icon{font-size:3rem;opacity:.65}.dropzone-text{color:var(--text-primary);font-size:1rem;margin:0}.dropzone-hint{color:var(--text-muted);font-size:.75rem;margin:0}.upload-results{background:var(--bg-panel);border:1px solid var(--border-strong);border-radius:6px;margin-top:.75rem;overflow:hidden}.upload-results-header{align-items:center;border-bottom:1px solid var(--border-strong);color:var(--text-muted);display:flex;font-size:.75rem;font-weight:600;justify-content:space-between;letter-spacing:.05em;padding:.5rem .85rem;text-transform:uppercase}.upload-results-clear{background:#0000;border:none;color:var(--text-muted);cursor:pointer;font-size:.75rem;letter-spacing:normal;padding:0;text-transform:none}.upload-results-clear:hover{color:var(--text-primary);text-decoration:underline}.upload-results-list{list-style:none;margin:0;max-height:220px;overflow-y:auto;padding:0}.upload-result{align-items:center;border-bottom:1px solid var(--border);display:flex;font-size:.85rem;gap:.6rem;padding:.5rem .85rem}.upload-result:last-child{border-bottom:none}.upload-result-badge{flex-shrink:0}.upload-result-badge--failed,.upload-result-badge--rejected{background:var(--status-destructive);color:var(--bg-base)}.upload-result-badge--accepted,.upload-result-badge--processing{background:var(--warning);color:var(--bg-base)}.upload-result-badge--completed,.upload-result-badge--replaced{background:var(--status-success);color:var(--bg-base)}.upload-result-badge--duplicate{background:var(--warning);color:var(--bg-base)}.upload-result-badge--cancelled,.upload-result-badge--kept{background:var(--border);background:var(--bg-panel,var(--border));color:var(--text-primary)}.upload-result-filename{color:var(--text-primary);flex-shrink:0;font-weight:500;max-width:14rem}.upload-result-filename,.upload-result-reason{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-result-reason{color:var(--text-muted);color:var(--text-secondary,var(--text-muted));flex:1 1;font-size:.78rem}.upload-result-actions{align-items:center;display:flex;flex-shrink:0;gap:.5rem;margin-left:auto}.upload-result-retry{background:var(--accent-tint);border:1px solid var(--accent);border-radius:4px;color:var(--accent);cursor:pointer;font-size:.75rem;padding:.15rem .55rem}.upload-result-retry:hover{background:var(--accent);color:var(--bg-base)}.upload-result-retry:disabled{cursor:not-allowed;opacity:.5}.upload-result-resolve{background:var(--warning);border:1px solid var(--warning);border-radius:4px;color:var(--bg-base);cursor:pointer;font-size:.75rem;font-weight:600;padding:.15rem .55rem}.upload-result-resolve:hover{filter:brightness(1.1)}.upload-result-dismiss{background:#0000;border:none;color:var(--text-muted);cursor:pointer;font-size:1rem;line-height:1;opacity:.7;padding:0 .15rem}.upload-result-dismiss:hover{opacity:1}.upload-result-dismiss:disabled{cursor:not-allowed;opacity:.3}.files-section{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.section-header{margin-bottom:1rem}.section-header h3{color:var(--text-primary);font-size:1.25rem}.processing-indicator{animation:loreViewPulse 2s infinite;background:var(--warning);border-radius:12px;color:var(--bg-base);font-size:.75rem;font-weight:600;padding:.25rem .75rem}@keyframes loreViewPulse{0%,to{opacity:1}50%{opacity:.6}}.files-section .lore-file-table{flex:1 1;min-height:0;overflow:auto}.lore-file-table .data-table.compact td,.lore-file-table .data-table.compact th{padding:4px 12px}.lore-file-table .data-table tbody tr{-webkit-user-select:none;user-select:none}.lore-file-name-cell{align-items:center;display:flex;gap:.5rem;min-width:0}.lore-file-modality{flex-shrink:0;font-size:1rem;line-height:1}.lore-file-filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lore-status-cell{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.multi-select-hint{color:var(--text-muted);font-size:.75rem;margin:0 0 .75rem}.batch-action-bar{align-items:center;background:var(--bg-panel);border:1px solid var(--border);border-left:3px solid var(--status-success);border-radius:8px;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:.75rem;padding:.5rem .75rem}.batch-count{color:var(--text-primary);font-size:.85rem;font-weight:600}.batch-actions{display:flex;flex-wrap:wrap;gap:.5rem}.batch-btn{background:var(--bg-panel);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);cursor:pointer;font-size:.8rem;font-weight:600;padding:.35rem .75rem;transition:all .15s ease}.batch-btn:hover{transform:translateY(-1px)}.batch-btn.ready{border-color:var(--status-success);color:var(--status-success)}.batch-btn.ready:hover{background:var(--status-success);color:var(--bg-base)}.batch-btn.not-ready:hover{background:var(--border-strong);color:var(--text-primary)}.batch-btn.delete{border-color:var(--status-destructive);color:var(--status-destructive)}.batch-btn.delete:hover{background:var(--status-destructive);color:var(--bg-base)}.batch-btn.clear:hover{background:var(--border-strong)}.file-error{color:var(--status-destructive);font-size:.75rem;margin:0}.status-badge{border-radius:12px;display:inline-block;font-size:.625rem;font-weight:600;letter-spacing:.05em;padding:.125rem .5rem;text-transform:uppercase}.status-badge.pending{background:var(--border-strong);color:var(--text-muted)}.status-badge.processing{background:var(--warning);color:var(--bg-base)}.status-badge.completed{background:var(--status-success);color:var(--bg-base)}.status-badge.failed{background:var(--status-destructive);color:var(--bg-base)}.status-badge.ready{background:var(--status-success);color:var(--bg-base)}.status-badge.not-ready{background:var(--border-strong);color:var(--text-muted)}.status-badge.chunking{animation:loreViewPulse 1.5s infinite;background:#17a2b8;color:var(--text-primary);cursor:default}.status-badge.clickable{cursor:pointer;transition:all .2s ease}.status-badge.clickable:hover{box-shadow:0 2px 4px #0003;transform:scale(1.05)}.file-details{animation:loreViewSlideIn .2s ease-out;background:var(--bg-panel);border-left:1px solid var(--accent);bottom:0;box-shadow:-4px 0 12px #0000004d;display:flex;flex-direction:column;position:absolute;right:0;top:0;width:400px}@keyframes loreViewSlideIn{0%{transform:translateX(100%)}to{transform:translateX(0)}}.details-header{align-items:center;background:var(--bg-panel);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:1rem 1.5rem}.details-header h3{color:var(--text-primary);font-size:1.125rem;margin:0}.details-close{background:#0000;border:none;color:var(--text-muted);cursor:pointer;font-size:1.5rem;line-height:1;padding:0}.details-close:hover{color:var(--text-primary)}.details-content{flex:1 1;overflow-y:auto;padding:1.5rem}.detail-row{display:flex;margin-bottom:1rem}.detail-label{color:var(--text-muted);flex:0 0 100px;font-size:.875rem}.detail-value{color:var(--text-primary);flex:1 1;font-size:.875rem}.detail-section{margin-top:2rem}.detail-section h4{color:var(--text-primary);font-size:1rem;margin:0 0 1rem}.transcript-content{background:var(--bg-base);border:1px solid var(--border);border-radius:4px;font-size:.875rem;line-height:1.5;max-height:300px;overflow-y:auto;padding:1rem;white-space:pre-wrap}.process-btn{background:var(--accent);border:none;border-radius:4px;color:var(--accent-foreground);cursor:pointer;font-size:.875rem;margin-top:1rem;padding:.5rem 1rem;width:100%}.process-btn:hover{background:var(--accent-hover)}.proceed-btn{align-self:center;background:var(--accent);border:none;border-radius:6px;border-radius:var(--radius-sm,6px);color:var(--accent-foreground);cursor:pointer;flex-shrink:0;font-size:.8rem;font-weight:600;padding:.4rem .85rem;transition:background .15s ease,transform .15s ease;white-space:nowrap}.proceed-btn:hover{background:var(--accent-hover);transform:translateY(-1px)}.proceed-btn.proceed-btn--muted{background:#0000;border:1px solid #d0d7de;border:1px solid var(--border-color,#d0d7de);color:#6c757d;color:var(--text-secondary,#6c757d);font-weight:500}.proceed-btn.proceed-btn--muted:hover{background:#0000000a;background:var(--bg-hover,#0000000a);color:#2c3e50;color:var(--text-primary,#2c3e50);transform:none}.lore-lang-cell{align-items:center;display:inline-flex;flex-wrap:wrap;gap:8px}.lore-lang-cell--base{color:#ffffff59;font-size:12px}.lore-lang-badge{border-radius:3px;font-size:11px;font-weight:600;padding:2px 7px;white-space:nowrap}.lore-lang-badge--translated{background:#98d8c824;border:1px solid #98d8c84d;color:#98d8c8}.lore-lang-badge--failed{background:#dc143c24;border:1px solid #dc143c4d;color:#dc143c}.lore-lang-badge--skipped{background:#ffffff14;border:1px solid #ffffff26;color:#fff9}.lore-lang-rerun{background:none;border:1px solid #ffffff2e;border-radius:3px;color:#ffffffb3;cursor:pointer;font-size:11px;padding:2px 7px}.lore-lang-rerun:hover:not(:disabled){border-color:#fff6;color:#fff}.lore-lang-rerun:disabled{cursor:default;opacity:.5}@media (max-width:700px){.lore-view{padding:12px}.lore-view .proceed-btn{align-self:stretch;min-height:40px}.lore-view .dropzone{padding:1.5rem .75rem}}.sources-add-panel--populated{padding-top:12px}.sources-legacy-label{clip:rect(0 0 0 0);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.sources-add-panel--populated .dropzone{min-height:110px}.dropzone-browse{margin:.25rem 0}.sgm-modal{max-width:95vw;width:580px}.sgm-body{gap:20px;padding:20px 24px}.sgm-body,.sgm-section{display:flex;flex-direction:column}.sgm-section{gap:8px}.sgm-section-header{margin-bottom:2px}.sgm-section-title{color:var(--text-muted);font-size:.78rem;font-weight:600;letter-spacing:.06em;margin:0 0 4px;text-transform:uppercase}.sgm-section-desc{color:var(--text-muted);font-size:.82rem;line-height:1.4;margin:0}.sgm-type-list{background:var(--bg-tertiary);border:1px solid var(--border-secondary);border-radius:8px;gap:2px;padding:6px}.sgm-type-list,.sgm-type-row{display:flex;flex-direction:column}.sgm-type-row{border:1px solid #0000;border-radius:6px;gap:3px;padding:7px 10px;transition:background .12s ease,border-color .12s ease}.sgm-type-row:hover{background:var(--bg-hover)}.sgm-type-row--enabled{background:var(--bg-card);border-color:var(--accent-primary)}.sgm-type-label{align-items:center;cursor:pointer;display:flex;gap:10px;-webkit-user-select:none;user-select:none}.sgm-checkbox{accent-color:var(--accent-primary);cursor:pointer;flex-shrink:0;height:15px!important;margin:0!important;width:15px!important}.sgm-type-name{color:var(--text-primary);font-size:.9rem;font-weight:500}.sgm-type-desc-preview{color:var(--text-muted);font-size:.78rem;line-height:1.4;margin:0 0 0 25px}.sgm-description-editor{display:flex;flex-direction:column;gap:4px;margin-left:25px}.sgm-desc-textarea{background:var(--bg-primary)!important;border:1px solid var(--border-secondary)!important;border-radius:4px!important;box-sizing:border-box;color:var(--text-primary)!important;font-family:inherit!important;font-size:.82rem!important;line-height:1.4!important;min-height:48px;padding:6px 8px!important;resize:vertical;width:100%}.sgm-desc-textarea:focus{border-color:var(--accent-primary)!important;box-shadow:0 0 0 2px #5a9fd426;outline:none}.sgm-reset-btn{align-self:flex-end;background:#0000;border:1px solid var(--border-secondary);border-radius:3px;color:var(--text-muted);cursor:pointer;font-size:.73rem;padding:2px 8px;transition:all .12s ease}.sgm-reset-btn:hover{background:var(--bg-hover);border-color:var(--border-primary);color:var(--text-primary)}.sgm-additional-toggle{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-secondary);border-radius:6px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:.86rem;font-weight:500;gap:8px;padding:8px 12px;text-align:left;transition:background .12s ease,border-color .12s ease,color .12s ease;width:100%}.sgm-additional-toggle:hover{background:var(--bg-hover);border-color:var(--border-primary);color:var(--text-primary)}.sgm-additional-toggle-arrow{color:var(--text-muted);font-size:.65rem}.sgm-badge{background:var(--accent-primary);border-radius:10px;color:var(--accent-primary-foreground);font-size:.72rem;font-weight:600;margin-left:auto;padding:1px 9px}.sgm-additional-list{margin-top:4px}.sgm-options{border-top:1px solid var(--border-secondary);display:flex;flex-direction:column;gap:8px;padding-top:14px}.sgm-option-row{align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-secondary);border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:10px 12px;transition:background .12s ease,border-color .12s ease;-webkit-user-select:none;user-select:none}.sgm-option-row:hover{background:var(--bg-hover);border-color:var(--border-primary)}.sgm-option-row--active{background:var(--bg-card);border-color:var(--accent-primary)}.sgm-toggle{background:var(--border-primary);border-radius:10px;cursor:pointer;flex-shrink:0;height:20px;padding:2px;position:relative;transition:background .2s ease;width:36px}.sgm-toggle--on{background:var(--accent-primary)}.sgm-toggle-thumb{background:#fff;border-radius:50%;box-shadow:0 1px 3px #00000040;display:block;height:16px;left:2px;position:absolute;top:2px;transition:transform .2s ease;width:16px}.sgm-toggle--on .sgm-toggle-thumb{transform:translateX(16px)}.sgm-option-text{display:flex;flex-direction:column;gap:2px}.sgm-option-name{color:var(--text-primary);font-size:.88rem;font-weight:500}.sgm-option-desc{color:var(--text-muted);font-size:.78rem;line-height:1.3}.sgm-recommended{border:1px solid #98d8c866;border-radius:999px;color:#98d8c8;font-size:11px;font-weight:600;margin-left:8px;padding:1px 8px;vertical-align:middle}.type-icon-editor{background:var(--bg-base);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:0 8px 24px #00000080;display:flex;flex-direction:column;gap:8px;left:0;padding:12px;position:absolute;top:4px;width:360px;z-index:1000}.tie-section-label{color:#666;font-size:.65rem;font-weight:700;letter-spacing:.08em;margin-bottom:2px;text-transform:uppercase}.tie-icon-search{background:#2a2a2a;border:1px solid var(--border-strong);border-radius:var(--radius);box-sizing:border-box;color:var(--text-primary);font-size:.8rem;outline:none;padding:5px 8px;width:100%}.tie-icon-search:focus{border-color:var(--accent)}.tie-icon-grid{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(5,1fr);max-height:200px;overflow-y:auto;padding-right:2px}.tie-icon-grid::-webkit-scrollbar{width:4px}.tie-icon-grid::-webkit-scrollbar-track{background:var(--bg-base)}.tie-icon-grid::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:2px}.tie-icon-btn{align-items:center;background:#2a2a2a;border:1px solid #0000;border-radius:var(--radius);color:var(--text-primary);cursor:pointer;display:flex;flex-direction:column;gap:2px;min-width:0;padding:5px 2px;transition:border-color .1s,background .1s}.tie-icon-btn:hover{background:#333;border-color:var(--text-muted)}.tie-icon-btn.selected{background:#1a3a5c;border-color:var(--accent)}.tie-icon-btn .material-symbols-outlined{font-size:20px;line-height:1}.tie-icon-label{color:var(--text-muted);font-size:.55rem;max-width:56px;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%}.tie-no-results{color:#666;font-size:.8rem;grid-column:1/-1;padding:16px 0;text-align:center}.tie-divider{border:none;border-top:1px solid #2a2a2a;margin:2px 0}.tie-swatches{display:flex;flex-wrap:wrap;gap:6px}.tie-swatch{border:2px solid #0000;border-radius:50%;cursor:pointer;flex-shrink:0;height:22px;padding:0;transition:border-color .1s,transform .1s;width:22px}.tie-swatch:hover{transform:scale(1.15)}.tie-swatch.selected{border-color:var(--text-primary);box-shadow:0 0 0 1px var(--accent)}.tie-hex-row{align-items:center;display:flex;gap:8px}.tie-hex-label{color:var(--text-muted);font-size:.75rem;white-space:nowrap}.tie-hex-input{background:#2a2a2a;border:1px solid var(--border-strong);border-radius:var(--radius);color:var(--text-primary);flex:1 1;font-family:monospace;font-size:.8rem;outline:none;padding:4px 6px}.tie-hex-input:focus{border-color:var(--accent)}.tie-hex-preview{border:1px solid var(--border-strong);border-radius:var(--radius);flex-shrink:0;height:22px;width:22px}.schema-side-panel{background:var(--bg-panel);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);display:flex;flex-direction:column;min-width:0}.schema-side-panel.docked{align-self:flex-start;flex:0 0 clamp(300px,34%,420px);max-height:calc(100vh - 1.5rem);overflow-y:auto;position:sticky;top:.5rem}.schema-side-panel.drawer{border-radius:0;border-width:0 0 0 1px;bottom:0;box-shadow:-10px 0 30px #00000059;overflow-y:auto;position:fixed;right:0;top:54px;width:min(460px,100%);z-index:60}.ssp-header{align-items:flex-start;display:flex;gap:8px;justify-content:space-between;padding:12px 14px 8px}.ssp-title{min-width:0}.ssp-title h3{font-size:1.1rem;margin:0;overflow-wrap:anywhere}.ssp-subtitle{color:var(--text-muted);display:block;font-family:Consolas,Monaco,monospace;font-size:.78rem;margin-top:2px;overflow-wrap:anywhere}.ssp-close{background:#0000;border:none;border-radius:4px;color:var(--text-muted);cursor:pointer;flex-shrink:0;font-size:1.5rem;line-height:1;min-height:32px;min-width:32px}.ssp-close:hover{background:var(--bg-elevated);color:var(--text-primary)}.ssp-tabs{border-bottom:1px solid var(--border);display:flex;flex-wrap:wrap;gap:2px;padding:0 10px}.ssp-tab{background:#0000;border:none;border-bottom:2px solid #0000;color:var(--text-muted);cursor:pointer;font-size:.82rem;padding:8px 10px}.ssp-tab.active,.ssp-tab:hover{color:var(--text-primary)}.ssp-tab.active{border-bottom-color:var(--accent)}.ssp-body{padding:12px 14px 16px}.ssp-form,.ssp-subform{display:flex;flex-direction:column;gap:4px}.ssp-subform{margin-bottom:8px}.ssp-label{color:var(--text-muted);font-size:.72rem;font-weight:700;letter-spacing:.06em;margin-top:8px;text-transform:uppercase}.ssp-input{background:var(--bg-base);border:1px solid var(--border-strong);border-radius:4px;box-sizing:border-box;color:var(--text-primary);font-family:inherit;font-size:.85rem;padding:6px 8px;width:100%}.ssp-input[aria-invalid=true]{border-color:var(--status-destructive)}.ssp-textarea{min-height:3.5rem;resize:vertical}.ssp-readonly{font-weight:600;overflow-wrap:anywhere}.ssp-code,.ssp-stored-fields code{color:var(--warning);font-family:Consolas,Monaco,monospace;font-size:.82rem;overflow-wrap:anywhere}.ssp-check{align-items:center;display:flex;font-size:.85rem;gap:8px;margin-top:8px}.ssp-hint{color:var(--text-muted);font-size:.76rem;line-height:1.4;margin:2px 0 0}.ssp-note{background:var(--bg-base);border-left:3px solid var(--accent);border-radius:0 4px 4px 0;color:var(--text-secondary);font-size:.78rem;margin:8px 0 0;padding:6px 8px}.ssp-error{color:var(--status-destructive);font-size:.78rem;margin:6px 0 0;min-height:1.1em}.ssp-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.ssp-btn{background:#0000;border:1px solid var(--border-strong);border-radius:4px;color:var(--text-primary);cursor:pointer;font-size:.82rem;padding:6px 12px}.ssp-btn:disabled{cursor:not-allowed;opacity:.45}.ssp-btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-foreground)}.ssp-btn-primary:hover:not(:disabled){background:var(--accent-hover)}.ssp-btn-danger{color:var(--status-destructive)}.ssp-btn-danger:hover:not(:disabled){background:#f487711a}.ssp-icon-row{align-items:center;display:flex;gap:10px}.ssp-icon-anchor,.ssp-icon-row{position:relative}.ssp-icon-badge{align-items:center;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;height:36px;justify-content:center;width:36px}.ssp-count{font-size:.9rem;margin:2px 0 0}.ssp-links{font-size:.85rem;margin:4px 0 0;padding-left:1.1rem}.ssp-links a{color:var(--accent)}.ssp-stored-fields{display:flex;flex-direction:column;gap:2px;list-style:none;margin:2px 0 0;padding:0}.ssp-stored-fields li{display:flex;gap:8px;justify-content:space-between}.ssp-stored-type{color:var(--text-muted);font-family:Consolas,Monaco,monospace;font-size:.78rem}.ssp-danger-zone{border-top:1px solid var(--border);margin-top:18px;padding-top:12px}.schema-side-panel .type-icon-editor{max-width:100%;width:min(360px,calc(100vw - 2rem))}.schema-view{color:var(--text-primary);min-height:100%;padding:12px 16px;position:relative}.view-header{margin-bottom:1rem}.view-header h2{color:var(--text-primary);font-size:1.75rem;margin:0 0 .5rem}.view-description{font-size:.875rem}.schema-ruleset-hint,.view-description{color:var(--text-muted);margin:0 0 1rem}.schema-ruleset-hint{font-size:.8125rem}.schema-ruleset-link{background:none;border:none;color:var(--accent);cursor:pointer;font-family:inherit;font-size:inherit;margin:0;padding:0;text-decoration:underline}.schema-ruleset-link:hover{color:var(--accent-hover)}.schema-status{background:var(--border);border:1px solid var(--border-strong);border-radius:4px;color:var(--text-muted);display:inline-block;font-family:monospace;font-size:.875rem;margin:.5rem 0;padding:.25rem .75rem}.header-actions{flex-wrap:wrap;gap:1rem;row-gap:.5rem}.save-btn,.suggest-btn,.undo-btn{background:var(--accent);border:none;border-radius:4px;color:var(--accent-foreground);cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:background-color .2s}.save-btn:hover,.suggest-btn:hover,.undo-btn:hover{background:var(--accent-hover)}.suggest-btn:disabled{background:var(--border-strong);color:var(--text-muted);cursor:not-allowed}.generating-status{align-items:center;display:flex;gap:.5rem}.pulse-dot{animation:schemaViewPulse 1.5s infinite;background:var(--text-primary);border-radius:50%;height:8px;width:8px}@keyframes schemaViewPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.2)}}.undo-btn{background:var(--status-success);color:var(--bg-base)}.update-schema-btn{background:var(--warning);border:none;border-radius:4px;color:var(--bg-base);cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.update-schema-btn:hover{background:#e8e8b8;transform:translateY(-1px)}.undo-btn:hover{background:#3aa088}.save-btn{background:var(--status-success);color:var(--bg-base)}.save-btn:hover{background:#3aa088}.view-xml-btn{background:#569cd6;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:background-color .2s}.view-xml-btn:hover{background:#4178a8}.loading-state{gap:1rem;min-height:50vh}.loading-spinner{border-top:3px solid var(--border-strong);border:3px solid var(--border-strong);height:40px;width:40px}.suggested-schemas{background:var(--bg-panel);border:1px solid var(--border);border-radius:8px;margin-bottom:2rem;padding:1.5rem}.suggested-schemas h3{color:var(--text-primary);font-size:1.25rem;margin:0 0 1rem}.schemas-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.suggested-schema-card{background:var(--bg-panel);border:1px solid var(--border);border-radius:8px;padding:1rem;transition:all .2s}.suggested-schema-card:hover{border-color:var(--accent);box-shadow:0 4px 12px #0000004d;transform:translateY(-2px)}.schema-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.schema-header h4{color:var(--text-primary);font-size:1rem;margin:0}.schema-stats{background:var(--border-strong);border-radius:12px;color:var(--text-primary);font-size:.75rem;padding:.25rem .5rem}.schema-preview{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.entity-preview{align-items:center;background:var(--bg-base);border-radius:4px;display:flex;justify-content:space-between;padding:.5rem}.field-count{color:var(--text-muted);font-size:.75rem}.apply-schema-btn{background:var(--warning);border:none;border-radius:4px;color:var(--bg-base);cursor:pointer;font-weight:600;padding:.75rem;transition:background-color .2s;width:100%}.apply-schema-btn:hover{background:#b8b876}.change-diff-modal{align-items:center;background:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:var(--bg-panel);border:1px solid var(--border);border-radius:8px;display:flex;flex-direction:column;max-height:80vh;max-width:600px}.modal-header{background:var(--bg-panel);border-bottom:1px solid var(--border)}.modal-header h3{color:var(--text-primary)}.modal-close{background:#0000;border:none;color:var(--text-muted);cursor:pointer;font-size:1.5rem;line-height:1;padding:0}.modal-close:hover{color:var(--text-primary)}.modal-body{flex:1 1;overflow-y:auto;padding:1.5rem}.changes-list{display:flex;flex-direction:column;gap:.75rem;margin:1rem 0}.change-item{align-items:flex-start;background:var(--bg-base);border-left:3px solid #0000;border-radius:4px;display:flex;gap:.75rem;padding:.75rem}.change-item.safe{border-left-color:var(--status-success)}.change-item.destructive{border-left-color:var(--status-destructive)}.change-icon{flex-shrink:0;font-size:1.25rem}.change-details{flex:1 1}.change-description{color:var(--text-primary);font-weight:600;margin-bottom:.25rem}.change-impact{color:var(--status-destructive);font-size:.75rem}.migration-options{margin-top:1.5rem}.migration-options h4{color:var(--text-primary);font-size:1rem;margin:0 0 1rem}.migration-choice{display:flex;flex-direction:column;gap:.5rem}.migration-choice label{align-items:center;border-radius:4px;cursor:pointer;display:flex;gap:.5rem;padding:.5rem;transition:background-color .2s}.migration-choice label:hover{background:#ffffff0d}.migration-choice input[type=radio]{accent-color:var(--accent)}.modal-footer{background:var(--bg-panel);border-radius:0 0 8px 8px;border-top:1px solid var(--border);display:flex;gap:1rem;justify-content:flex-end;padding:1rem 1.5rem}.cancel-btn,.confirm-btn{border:none;border-radius:4px;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:background-color .2s}.cancel-btn{background:var(--border-strong);color:var(--text-primary)}.cancel-btn:hover{background:var(--text-muted)}.confirm-btn{background:var(--accent);color:var(--accent-foreground)}.confirm-btn:hover{background:var(--accent-hover)}.current-schema{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.current-schema h3{color:var(--text-primary);flex-shrink:0;font-size:1.1rem;margin:0 0 .5rem}.entities-list{flex:1 1;gap:.5rem;min-height:0;overflow-y:auto;padding-right:.5rem}.entities-list,.entity-card{display:flex;flex-direction:column}.entity-card{background:var(--bg-panel);border:1px solid var(--border);border-radius:8px;flex-shrink:0;transition:border-color .2s}.entity-card:hover{border-color:var(--accent)}.entity-card.focused{background:var(--accent-tint);border-color:var(--color-primary);box-shadow:0 0 0 2px var(--accent-tint)}.entity-header{align-items:center;background:var(--bg-panel);cursor:pointer;display:flex;justify-content:space-between;padding:.5rem .75rem;transition:background-color .2s}.entity-header:hover{background:var(--bg-elevated)}.entity-info{align-items:center;display:flex;gap:.5rem}.collapse-icon{font-size:.875rem;opacity:.7}.entity-name{color:var(--status-success);font-size:1rem;font-weight:600;margin:0}.entity-field-count{color:var(--text-muted);font-size:.75rem}.entity-header-actions{align-items:center;display:flex;gap:.5rem}.add-field-btn{background:var(--accent);border-radius:4px;color:var(--accent-foreground);font-size:.75rem;padding:.375rem .75rem;transition:background-color .2s}.add-field-btn:hover{background:var(--accent-hover)}.remove-entity-type-btn{background:#0000;border:none;border-radius:4px;color:var(--text-muted);cursor:pointer;font-size:.75rem;padding:.25rem .375rem;transition:all .2s}.remove-entity-type-btn:hover{background:#f487711a;color:var(--status-destructive)}.remove-entity-type-btn:disabled{cursor:not-allowed;opacity:.4}.hosts-actions-toggle{align-items:center;background:#0000;border:1px solid var(--border);border-radius:4px;color:var(--text-muted);cursor:pointer;display:inline-flex;font-size:.7rem;gap:.25rem;padding:.25rem .5rem;transition:all .2s}.hosts-actions-toggle .material-symbols-outlined{font-size:14px}.hosts-actions-toggle.on{background:#d8b0661a}.hosts-actions-toggle.on,.hosts-actions-toggle:hover{border-color:var(--accent);color:var(--accent)}.hosts-actions-toggle:disabled{cursor:not-allowed;opacity:.4}.entity-description{background:var(--bg-panel);border-left:3px solid #cda000;border-radius:0 4px 4px 0;color:var(--text-secondary);font-size:.85rem;font-style:italic;line-height:1.4;margin:0 .75rem .5rem;padding:8px 12px}.entity-fields{display:block;min-height:40px;padding:.25rem .75rem .5rem}.no-fields{color:var(--text-muted);font-style:italic;padding:1rem;text-align:center}.schema-view .field-row{align-items:center;background:var(--bg-base);border-left:3px solid var(--accent);border-radius:4px;display:flex!important;flex-wrap:wrap;justify-content:space-between;margin-bottom:.4rem;min-height:32px;opacity:1!important;padding:.4rem .6rem;transition:background .3s ease;visibility:visible!important}.schema-view .field-row.newly-added{animation:highlightNewField 3s ease-out;border-left-color:var(--status-success);border-left-width:4px}@keyframes highlightNewField{0%{background:#4ec9b066;box-shadow:0 0 20px #4ec9b099,inset 0 0 10px #4ec9b033;transform:scale(1.02)}20%{background:#4ec9b059;box-shadow:0 0 15px #4ec9b080;transform:scale(1.01)}to{background:var(--bg-base);box-shadow:none;transform:scale(1)}}.field-info{align-items:center;display:flex;flex:1 1;gap:.6rem}.field-name{color:var(--warning);font-weight:600}.field-name,.field-type{font-family:Consolas,Monaco,monospace}.field-type{background:var(--border-strong);border-radius:12px;color:var(--text-primary);font-size:.75rem;padding:.125rem .5rem}.field-desc{color:var(--text-muted);font-size:.875rem;font-style:italic;margin-left:1rem}.field-description{position:relative}.description-display{align-items:flex-start;display:flex;gap:.5rem;justify-content:space-between}.description-text{border-radius:4px;cursor:pointer;flex:1 1;line-height:1.4;padding:.25rem;transition:background-color .2s}.description-text:hover{background:#ffffff0d}.description-text.empty{color:var(--text-muted);font-style:italic}.field-actions{display:flex!important;flex-shrink:0;gap:.25rem;opacity:.7;transition:opacity .2s}.schema-view .field-row:hover .field-actions{opacity:1}.edit-description-btn,.edit-field-btn,.remove-field-btn{background:#0000;border:none;border-radius:4px;color:var(--text-muted);cursor:pointer;font-size:inherit;padding:.25rem;transition:all .2s}.edit-description-btn:hover{background:#007acc1a;color:var(--accent)}.remove-field-btn:hover{background:#f487711a;color:var(--status-destructive)}.edit-field-btn:hover{background:#cccccc1a;color:var(--text-primary)}.description-edit{display:flex;flex-direction:column;gap:.5rem}.description-edit textarea{background:var(--bg-panel);border:1px solid var(--accent);border-radius:4px;color:var(--text-primary);font-family:inherit;font-size:.875rem;min-height:60px;padding:.5rem;resize:vertical}.description-edit textarea:focus{border-color:var(--accent);outline:none}.edit-actions{gap:.5rem;justify-content:flex-end}.edit-actions button{background:var(--accent);border:none;border-radius:4px;color:var(--accent-foreground);cursor:pointer;font-size:.75rem;padding:.25rem .75rem;transition:background-color .2s}.edit-actions button:hover{background:var(--accent-hover)}.edit-actions button:last-child{background:var(--border-strong)}.edit-actions button:last-child:hover{background:var(--text-muted)}.add-field-form{background:var(--bg-panel);border-radius:4px;gap:.75rem;margin-top:1rem;padding:1rem}.add-field-form,.edit-field-form{display:flex;flex-direction:column}.edit-field-form{gap:.4rem;padding:.25rem 0;width:100%}.edit-field-form .field-description-input{max-height:72px;min-height:36px;resize:none}.edit-field-form .form-actions{justify-content:flex-start}.edit-field-form .form-actions button{font-size:.8rem;padding:.3rem .75rem}.form-row{gap:.75rem;width:100%}.field-input,.field-type-select{background:var(--bg-base);border:1px solid var(--border);border-radius:4px;color:var(--text-primary);font-size:.875rem;padding:.5rem}.field-input{flex:2 1}.field-type-select{flex:1 1}.field-input:focus,.field-type-select:focus{border-color:var(--accent);outline:none}.field-description-input{background:var(--bg-base);border:1px solid var(--border);border-radius:4px;color:var(--text-primary);font-family:inherit;font-size:.875rem;min-height:60px;padding:.5rem;resize:vertical}.field-description-input:focus{border-color:var(--accent);outline:none}.form-actions{gap:.75rem}.form-actions button{border:none;font-size:.875rem;padding:.5rem 1rem;transition:background-color .2s}.form-actions button:first-child{background:var(--accent);color:var(--accent-foreground)}.form-actions button:first-child:hover{background:var(--accent-hover)}.form-actions button:last-child{background:var(--border-strong);color:var(--text-primary)}.form-actions button:last-child:hover{background:var(--text-muted)}.empty-state{align-items:center;display:flex;flex-direction:column;gap:1rem;height:60%;justify-content:center}.empty-icon{font-size:4rem;opacity:.5}.empty-state h3{color:var(--text-primary);margin:0}.empty-state p{color:var(--text-muted);margin:0}.generation-progress{align-items:center;display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.progress-spinner{animation:spin 1s linear infinite;border-top:3px solid var(--border-strong);border:3px solid var(--border-strong);border-radius:50%;border-top-color:var(--accent);height:40px;width:40px}.generation-progress p{color:var(--accent);font-size:.9rem;margin:0}.empty-hint{color:var(--text-muted);font-size:.875rem;font-style:italic;margin-top:1rem}.suggest-btn.primary{background:var(--accent);border:none;border-radius:4px;color:var(--accent-foreground);cursor:pointer;font-size:1rem;padding:.75rem 1.5rem;transition:background-color .2s}.suggest-btn.primary:hover{background:var(--accent-hover)}.entities-list::-webkit-scrollbar{width:8px}.entities-list::-webkit-scrollbar-track{background:var(--bg-panel)}.entities-list::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:4px}.entities-list::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.xml-view{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.xml-view h3{color:var(--text-primary);font-size:1.25rem;margin:0 0 1rem}.xml-content{background:var(--bg-base);border:1px solid var(--border);border-radius:8px;flex:1 1;overflow:auto;padding:1rem;position:relative}.xml-code{color:var(--text-primary);font-family:Consolas,Monaco,Courier New,monospace;font-size:.875rem;line-height:1.5;margin:0;overflow-x:auto;padding:0;white-space:pre}.copy-xml-btn{background:var(--accent);border:none;border-radius:4px;color:var(--accent-foreground);cursor:pointer;font-size:.75rem;padding:.5rem 1rem;position:absolute;right:1rem;top:1rem;transition:background-color .2s}.copy-xml-btn:hover{background:var(--accent-hover)}.empty-schema-state{align-items:center;background:var(--bg-panel);border:2px dashed var(--border);border-radius:12px;display:flex;flex-direction:column;justify-content:center;margin:2rem 0;padding:4rem 2rem;text-align:center}.empty-schema-state .empty-icon{font-size:4rem;margin-bottom:1rem;opacity:.6}.empty-schema-state h3{color:var(--text-primary);font-size:1.5rem;margin:0 0 .75rem}.empty-schema-state p{color:var(--text-muted);line-height:1.6;margin:0 0 1.5rem;max-width:500px}.schema-note{background:var(--bg-panel);border:1px solid var(--status-destructive);border-radius:8px;margin-top:1rem;padding:1.5rem}.schema-note p{color:var(--text-primary);font-size:.875rem;line-height:1.6;margin:0 0 .5rem}.schema-note p:last-child{margin-bottom:0}.schema-generating-banner{align-items:center;animation:bannerPulse 2s ease-in-out infinite;background:#007acc26;border:1px solid #007acc66;border-radius:6px;color:#4fc3f7;display:flex;font-size:.875rem;gap:.75rem;margin-bottom:1rem;padding:.75rem 1rem}.generating-lock-icon{flex-shrink:0;font-size:1rem}@keyframes bannerPulse{0%,to{border-color:#007acc66}50%{border-color:#007accb3}}.current-schema.schema-locked .entities-list{opacity:.6;pointer-events:none;position:relative}.add-field-btn:disabled,.edit-field-btn:disabled,.remove-field-btn:disabled{cursor:not-allowed;opacity:.4}.form-actions button:disabled{background:var(--border-strong)!important;color:var(--text-muted)!important;cursor:not-allowed;opacity:.4}.schema-raw-content{background:var(--bg-base);border:1px solid var(--border);border-radius:8px;max-height:400px;overflow:auto;padding:1rem}.empty-schema-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-top:1rem}.action-btn.secondary{background:var(--border);border:1px solid var(--text-muted)}.action-btn.secondary:hover{background:var(--text-muted)}.schema-section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.schema-section-header h3{margin:0}.add-entity-type-btn{background:var(--surface-interactive);border:1px solid var(--semantic-border-strong);border-radius:4px;color:var(--semantic-text-primary);cursor:pointer;font-size:.8rem;padding:5px 12px;transition:background-color .2s}.add-entity-type-btn:hover{background:var(--surface-interactive-hover)}.add-entity-type-form{align-items:center;background:var(--bg-panel);border:1px solid var(--semantic-border-strong);border-radius:6px;display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;padding:10px 12px}.entity-type-desc-input,.entity-type-name-input{background:var(--bg-base);border:1px solid var(--border);border-radius:4px;color:var(--text-primary);font-size:.875rem;outline:none;padding:6px 10px}.entity-type-name-input{width:180px}.entity-type-desc-input{flex:1 1;min-width:200px}.entity-type-desc-input:focus,.entity-type-name-input:focus{border-color:var(--semantic-focus)}.add-entity-type-actions{display:flex;gap:.5rem}.add-entity-type-confirm{background:var(--action-primary);border:1px solid var(--action-primary);border-radius:4px;color:var(--semantic-text-on-action);cursor:pointer;font-size:.875rem;padding:6px 14px}.add-entity-type-confirm:hover{background:var(--action-primary-hover)}.add-entity-type-cancel{background:var(--border);border:1px solid var(--text-muted);border-radius:4px;color:var(--semantic-text-secondary);cursor:pointer;font-size:.875rem;padding:6px 14px}.add-entity-type-cancel:hover{background:var(--text-muted)}.entity-description.editable{cursor:pointer;transition:background-color .15s}.entity-description.editable:hover{background:var(--border-strong);border-left-color:#f0b800}.description-placeholder{color:var(--text-muted);font-style:italic}.description-edit-wrapper{margin:0 .75rem .5rem}.description-textarea{background:var(--bg-base);border:1px solid #4a7a9b;border-radius:4px;box-sizing:border-box;color:var(--text-primary);font-family:inherit;font-size:.85rem;outline:none;padding:8px 10px;resize:vertical;width:100%}.description-textarea:focus{border-color:#cda000}.description-edit-actions{display:flex;gap:.5rem;margin-top:4px}.desc-save-btn{background:#0e639c;border:none;border-radius:3px;color:var(--text-primary);cursor:pointer;font-size:.8rem;padding:4px 12px}.desc-save-btn:hover{background:#17b}.desc-cancel-btn{background:#0000;border:1px solid var(--text-muted);border-radius:3px;color:var(--text-muted);cursor:pointer;font-size:.8rem;padding:4px 12px}.desc-cancel-btn:hover{background:var(--border)}.schema-view .schema-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:.75rem 1rem;justify-content:space-between}.schema-view .schema-header-main{flex:1 1 18rem;min-width:0}.schema-view .schema-header .header-actions{flex-shrink:0;flex-wrap:nowrap;gap:.5rem}.schema-view .schema-header .add-entity-type-btn{font-size:.875rem;padding:.45rem .85rem}.schema-view .schema-header .add-entity-type-btn:disabled{cursor:not-allowed;opacity:.45}.schema-view .schema-workspace{align-items:flex-start;display:flex;gap:1rem}.schema-view .schema-main{flex:1 1;min-width:0}.schema-view .add-entity-type-rule{color:var(--text-muted);font-size:.76rem;margin:.25rem 0 .5rem}.schema-view .entity-header{cursor:default;position:relative}.schema-view .entity-name-btn{background:#0000;border:none;color:inherit;cursor:pointer;font:inherit;margin:0;padding:0;text-align:left}.schema-view .entity-name-btn:after{border-radius:8px 8px 0 0;content:"";inset:0;position:absolute}.schema-view .entity-header .entity-header-actions>*,.schema-view .entity-header .entity-icon-badge,.schema-view .entity-header .type-icon-editor{position:relative;z-index:1}.schema-view .field-row{flex-wrap:nowrap}.schema-view .field-row-main{align-self:stretch;background:#0000;border:none;border-radius:4px;color:inherit;cursor:pointer;flex-wrap:wrap;font:inherit;margin:0;min-width:0;padding:0;text-align:left}.schema-view .field-row-main:hover{background:#ffffff0a}.schema-view .field-row.open-in-panel{background:var(--accent-tint);border-left-color:var(--accent)}.schema-view .field-row .field-actions{align-self:center}@media (max-width:899px){.schema-view .schema-workspace{display:block}}.content-model-view{margin:0 auto;max-width:90rem}.content-model-view .view-header{align-items:start;gap:1rem}.content-model-view .view-header h2{margin-bottom:.35rem}.content-model-view .view-description{max-width:60rem}.content-model-view .schema-section-header{margin-top:1.5rem}.content-model-view .schemas-grid{gap:.75rem}@media (max-width:720px){.content-model-view{padding-inline:.75rem}.content-model-view .header-actions{display:flex;flex-wrap:wrap}}.lensed-text{position:relative}.lensed-text.is-untranslated{border-bottom:1px dotted var(--text-muted)}.lensed-chip{border-radius:999px;display:inline-block;font-size:10px;font-weight:500;letter-spacing:.02em;line-height:15px;margin-left:6px;padding:0 6px;vertical-align:middle}.lensed-chip--fallback{background:#ffffff12;color:var(--text-muted)}.lensed-chip--stale{background:#ef9f2721;color:#ef9f27}.lensed-basetext{color:var(--text-muted);display:block;font-size:11px;margin-top:3px}.lensed-prose{background:var(--bg-panel);border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-md,8px)}.lensed-prose-bar{align-items:center;border-bottom:1px solid var(--border);display:flex;font-size:11px;gap:8px;padding:7px 10px}.lensed-prose-locale{background:#c9a76a1a;background:var(--accent-tint,#c9a76a1a);border-radius:999px;color:var(--accent);font-weight:500;padding:1px 7px}.lensed-prose-state{color:var(--text-secondary)}.lensed-prose-state.is-untranslated{color:var(--text-muted)}.lensed-prose-state.is-stale{color:#ef9f27}.lensed-prose-actions{display:flex;gap:6px;margin-left:auto}.lensed-btn{align-items:center;background:#0000;border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-family:inherit;font-size:11px;gap:4px;padding:3px 9px}.lensed-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.lensed-btn:disabled{cursor:default;opacity:.6}.lensed-btn .material-symbols-outlined{font-size:14px}.lensed-btn.is-primary{background:var(--accent);border-color:var(--accent);color:#171511;color:var(--accent-fg,#171511);font-weight:500}.lensed-btn.is-primary:hover:not(:disabled){background:#d8b87f;background:var(--accent-hover,#d8b87f)}.lensed-prose-body{color:var(--text-primary);font-size:14px;line-height:1.65;padding:12px 14px;white-space:pre-wrap}.lensed-prose-basenote,.lensed-prose-body.is-untranslated{color:var(--text-secondary)}.lensed-prose-basenote{background:#ef9f270f;border-left:2px solid #ef9f27;font-size:12px;line-height:1.5;margin:0 10px 10px;padding:7px 10px}.lensed-prose-editor{padding:10px}.lensed-prose-textarea{background:var(--bg-base);border:1px solid var(--accent);border-radius:6px;box-sizing:border-box;color:var(--text-primary);font-family:inherit;font-size:14px;line-height:1.6;padding:10px 12px;resize:vertical;width:100%}.lensed-prose-editor-actions{display:flex;gap:6px;justify-content:flex-end;margin-top:8px}.lensed-prose-source{margin-top:10px}.lensed-prose-source summary{color:var(--text-muted);cursor:pointer;font-size:11px}.lensed-prose-source p{color:var(--text-secondary);font-size:13px;line-height:1.6;margin:6px 0 0}.entity-type-badge{border:1px solid #0000;border-radius:var(--radius-sm);display:inline-block;font-weight:600;letter-spacing:.01em;padding:2px 8px;transition:background-color var(--transition-fast);white-space:nowrap}.entity-type-badge--typed{color:color-mix(in srgb,var(--entity-type-color) 70%,var(--semantic-text-primary))}:root[data-theme=light] .entity-type-badge--typed{color:color-mix(in srgb,var(--entity-type-color) 35%,var(--semantic-text-primary))}.entity-type-badge--small{font-size:10px;padding:2px 7px}.entity-type-badge--medium{font-size:11px;padding:2px 8px}.entity-type-badge--large{font-size:12px;padding:3px 10px}.media-field-input{display:flex;flex-direction:column;gap:.75rem}.media-field-preview{align-items:center;background:#1f1f23;background:var(--color-surface,#1f1f23);border:1px solid #2b2b2f;border:1px solid var(--color-border,#2b2b2f);border-radius:8px;display:flex;justify-content:center;max-height:220px;overflow:hidden;padding:.75rem}.media-field-preview.image img{border-radius:4px;max-height:200px;max-width:100%;object-fit:contain}.media-field-preview.audio audio,.media-field-preview.video video{width:100%}.media-field-placeholder{border:1px dashed #2b2b2f;border:1px dashed var(--color-border,#2b2b2f);border-radius:8px;color:#9b9ba5;color:var(--color-muted,#9b9ba5);font-size:.95rem;padding:1rem;text-align:center}.media-field-controls{align-items:center;flex-wrap:wrap}.media-field-controls,.media-field-secondary-actions{display:flex;gap:.5rem}.media-field-btn{border:none;border-radius:6px;cursor:pointer;font-size:.9rem;padding:.55rem .85rem;transition:background .2s ease,color .2s ease,border-color .2s ease}.media-field-btn.primary{background:#5b6efd;background:var(--color-primary,#5b6efd);color:#fff}.media-field-btn.primary:disabled{background:#5b6efd8c;cursor:not-allowed}.media-field-btn.ghost{background:#0000;border:1px solid #2b2b2f;border:1px solid var(--color-border,#2b2b2f);color:#d8d8e3;color:var(--color-text,#d8d8e3)}.media-field-btn.ghost:hover:not(:disabled){border-color:#5b6efd;border-color:var(--color-primary,#5b6efd);color:#5b6efd;color:var(--color-primary,#5b6efd)}.media-field-error{color:#f87171;color:var(--color-danger,#f87171);font-size:.85rem}.media-delete-dialog-content{display:flex;flex-direction:column;font-size:.9rem;gap:.75rem}.media-delete-refs{margin:0;padding-left:1.25rem}.media-delete-recoverable{color:#666;color:var(--text-secondary,#666)}.media-delete-permanent{color:#c0392b;color:var(--danger-color,#c0392b)}.media-delete-permanent-ack{align-items:center;display:flex;font-weight:400;gap:.5rem}.media-delete-error{color:#c0392b;color:var(--danger-color,#c0392b)}.media-delete-undo-btn{align-self:flex-start}.entity-media-section{border-top:1px solid #2b2b2f;border-top:1px solid var(--border,#2b2b2f);margin:18px 0;padding-top:14px}.entity-media-empty{color:#9b9ba5;color:var(--text-muted,#9b9ba5);font-size:13px;margin:4px 0 12px}.entity-media-list{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:14px}.entity-media-item{background:#1f1f23;background:var(--bg-panel,#1f1f23);border:1px solid #2b2b2f;border:1px solid var(--border,#2b2b2f);border-radius:8px;display:flex;flex-direction:column;gap:6px;padding:8px;width:160px}.entity-media-thumb{border-radius:6px;height:110px;object-fit:cover;width:100%}.entity-media-audio{width:100%}.entity-media-failed,.entity-media-pending{align-items:center;background:#26262b;background:var(--bg-panel-alt,#26262b);border-radius:6px;display:flex;flex-direction:column;gap:4px;height:110px;justify-content:center;padding:6px;text-align:center}.entity-media-failed{border:1px dashed #c0392b;border:1px dashed var(--danger-color,#c0392b);height:auto;min-height:110px}.entity-media-failed-icon{color:#c0392b;color:var(--danger-color,#c0392b);font-size:22px}.entity-media-failed-text{color:#c8c8d0;color:var(--text-secondary,#c8c8d0);font-size:11px;margin:0}.entity-media-pending-label{color:#9b9ba5;color:var(--text-muted,#9b9ba5);font-size:11px}.entity-media-meta{display:flex;flex-direction:column;gap:6px}.entity-media-actions{display:flex;flex-wrap:wrap;gap:6px}.entity-media-delete-btn{color:#c0392b;color:var(--danger-color,#c0392b)}.entity-media-caption{color:#c8c8d0;color:var(--text-secondary,#c8c8d0);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entity-media-add{display:flex;flex-direction:column;gap:10px}.entity-media-add-meta{display:flex;gap:8px}.entity-media-add-meta .form-input{flex:1 1}.entity-media-add-controls{display:flex;flex-wrap:wrap;gap:8px}.entity-media-link-row{align-items:center;display:flex;gap:8px}.entity-media-link-row .form-input{flex:1 1}.entity-media-link-kind{background:#1f1f23;background:var(--bg-panel,#1f1f23);border:1px solid #2b2b2f;border:1px solid var(--border,#2b2b2f);border-radius:6px;color:#d8d8e3;color:var(--text-primary,#d8d8e3);font-size:.9rem;height:38px;padding:0 8px}.config-section{background:var(--bg-panel);border:1px solid var(--border);border-radius:8px;padding:1.5rem}.config-section h3{align-items:center;color:var(--text-primary);display:flex;font-size:1.125rem;font-weight:600;gap:.5rem;margin:0 0 1rem}.section-subtitle{color:var(--text-muted);font-size:.8125rem;margin:0 0 1rem}.action-btn{background:var(--accent);border-radius:4px;color:var(--accent-foreground);padding:.5rem 1rem;transition:background-color .2s}.action-btn:hover:not(:disabled){background:var(--accent-hover)}.action-btn.secondary,.action-btn:disabled{background:var(--border-strong)}.action-btn.secondary{color:var(--text-primary)}.action-btn.secondary:hover:not(:disabled){background:var(--border-strong)}.action-btn.primary{background:var(--accent);color:var(--accent-foreground)}.recipe-controls{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.recipe-controls select{background:var(--bg-base);border:1px solid var(--border);border-radius:4px;color:var(--text-primary);font-size:.875rem;padding:.4rem .6rem}.recipe-mode-choice{color:var(--text-primary);display:flex;font-size:.875rem;gap:.5rem}.recipe-mode-choice label{align-items:center;cursor:pointer;display:flex;gap:.25rem}.recipe-hint{color:var(--text-muted);font-size:.75rem}.recipe-error{color:var(--status-destructive);font-size:.875rem;margin:.5rem 0}.recipe-report{border:1px solid var(--border);border-radius:8px;margin-top:.75rem;overflow:hidden}.recipe-report-summary{align-items:center;background:var(--bg-base);border-bottom:1px solid var(--border);display:flex;font-size:.875rem;justify-content:space-between;padding:.75rem 1rem}.recipe-status-badge{border-radius:12px;font-size:.75rem;font-weight:600;letter-spacing:.03em;padding:.2rem .6rem;text-transform:uppercase}.recipe-status-badge.completed{background:var(--status-success);color:var(--bg-base)}.recipe-status-badge.stopped{background:var(--warning);color:var(--bg-base)}.recipe-status-badge.failed{background:var(--status-destructive);color:var(--bg-base)}.recipe-stop-reason{background:var(--bg-panel);border-bottom:1px solid var(--border);color:var(--text-primary);font-size:.8125rem;padding:.5rem 1rem}.recipe-pass-table{border-collapse:collapse;font-size:.8125rem;width:100%}.recipe-pass-table td,.recipe-pass-table th{border-bottom:1px solid var(--border);color:var(--text-primary);padding:.5rem 1rem;text-align:left}.recipe-pass-table th{color:var(--text-muted);font-size:.75rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.recipe-pass-outcome{font-weight:600}.recipe-pass-outcome.completed{color:var(--status-success)}.recipe-pass-outcome.failed,.recipe-pass-outcome.stopped{color:var(--status-destructive)}.recipe-pass-outcome.not-reached,.recipe-pass-outcome.skipped-by-resume{color:var(--text-muted)}.op-confirm-overlay{align-items:center;background:#0000008c;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.op-confirm-dialog{background:#1a1a1a;background:var(--surface-1,#1a1a1a);border:1px solid #ffffff24;border:1px solid var(--border-subtle,#ffffff24);border-radius:12px;box-shadow:0 20px 40px #0006;max-width:460px;padding:20px 22px;width:calc(100% - 40px)}.op-confirm-dialog h4{margin:0 0 8px}.op-confirm-plan{color:var(--text-muted);font-size:13px}.op-confirm-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:16px}.entity-generation-modal .modal-body{overscroll-behavior:contain;scrollbar-gutter:stable}.entity-generation-modal .generation-panel{margin-top:0!important;min-width:0}.entity-generation-modal .generation-rules table{min-width:620px}@media (max-height:500px),(max-width:600px){.entity-generation-modal .generation-panel{padding:10px!important}.entity-generation-modal .generation-controls{align-items:stretch!important}.entity-generation-modal .generation-controls>button,.entity-generation-modal .generation-controls>fieldset,.entity-generation-modal .generation-controls>select{flex:1 1 100%}.entity-generation-modal .generation-controls>fieldset>button{flex:1 1}.entity-generation-modal .generation-draft-row{flex-wrap:wrap}}.extraction-type-modal{display:flex;flex-direction:column;gap:16px;max-width:480px;min-width:320px}.extraction-type-description{color:var(--text-secondary);font-size:.875rem;line-height:1.5;margin:0}.extraction-type-actions{align-items:center;display:flex;font-size:.8125rem;gap:8px}.btn-link{background:none;border:none;color:var(--accent);color:var(--accent-primary,var(--accent));cursor:pointer;font-size:inherit;padding:0;text-decoration:underline}.btn-link:hover{opacity:.8}.extraction-type-divider{color:var(--text-muted)}.extraction-type-list{display:flex;flex-direction:column;gap:4px;max-height:300px;overflow-y:auto;padding:4px 0}.extraction-type-item{align-items:center;border-radius:var(--radius);cursor:pointer;display:flex;gap:10px;padding:6px 8px;transition:background .15s}.extraction-type-item:hover{background:var(--bg-hover);background:var(--card-background-hover,var(--bg-hover))}.extraction-type-item input[type=checkbox]{cursor:pointer;flex-shrink:0;height:16px;width:16px}.extraction-type-name{color:var(--text-primary);font-size:.9375rem}.extraction-policy-groups{border-top:1px solid var(--border,var(--border));display:flex;flex-direction:column;gap:12px;padding-top:4px}.extraction-policy-group{border:none;margin:0;padding:0}.extraction-policy-group legend{color:var(--text-primary);font-size:.8125rem;font-weight:600;padding:0 0 6px}.extraction-policy-options{display:flex;flex-wrap:wrap;gap:6px}.extraction-policy-option{align-items:center;border:1px solid var(--border,var(--border));border-radius:var(--radius);color:var(--text-secondary);cursor:pointer;display:flex;font-size:.8125rem;gap:6px;padding:6px 10px;transition:background .15s,border-color .15s,color .15s}.extraction-policy-option:hover{background:var(--bg-hover);background:var(--card-background-hover,var(--bg-hover))}.extraction-policy-option.selected{border-color:var(--accent-primary,var(--accent));color:var(--text-primary);font-weight:500}.extraction-policy-option input[type=radio]{cursor:pointer}.extraction-policy-description{color:var(--text-secondary);font-size:.78125rem;line-height:1.4;margin:6px 0 0}.extraction-policy-tie-disclosure{color:var(--text-muted);font-size:.75rem;font-style:italic;line-height:1.4;margin:0}.extraction-cost-preview{background:var(--bg-hover);background:var(--card-background-hover,var(--bg-hover));border-radius:var(--radius);display:flex;flex-direction:column;gap:6px;padding:10px 12px}.extraction-cost-headline,.extraction-cost-loading{color:var(--text-primary);font-size:.875rem;margin:0}.extraction-cost-hint{color:var(--text-muted);font-size:.75rem;line-height:1.4;margin:0}.extraction-cost-breakdown{color:var(--text-secondary);display:flex;flex-direction:column;font-size:.78125rem;gap:2px;margin:0;padding-left:18px}.extraction-type-footer{border-top:1px solid var(--border,var(--border));display:flex;gap:10px;justify-content:flex-end;margin-top:4px;padding-top:12px}.extraction-type-footer .btn{border:none;border-radius:var(--radius);cursor:pointer;font-size:.92rem;font-weight:500;padding:9px 20px;transition:background .15s ease,transform .1s ease}.extraction-type-footer .btn-secondary{background:#0000;border:1px solid var(--border,var(--border));color:var(--text-primary)}.extraction-type-footer .btn-secondary:hover{background:var(--bg-hover);background:var(--card-background-hover,var(--bg-hover))}.extraction-type-footer .btn-primary{background:var(--accent);background:var(--accent-primary,var(--accent));color:var(--bg-base)}.extraction-type-footer .btn-primary:hover:not(:disabled){background:var(--accent-hover);background:var(--accent-primary-hover,var(--accent-hover));transform:translateY(-1px)}.extraction-type-footer .btn-primary:disabled{cursor:not-allowed;opacity:.5;transform:none}.ec-create-form,.ec-form,.ec-picker{display:flex;flex-direction:column;gap:14px}.ec-row{align-items:flex-end;display:flex;flex-wrap:wrap;gap:12px}.ec-grow{flex:1 1 200px;min-width:0}.ec-field{border:0;display:flex;flex-direction:column;gap:6px;margin:0;min-width:0;padding:0}.ec-label,.ec-section-title{color:var(--text-primary);font-size:12px;font-weight:600;margin:0;padding:0}.ec-section-title{text-transform:none}.ec-input,.ec-textarea{background:var(--color-background);background:var(--bg-primary,var(--color-background));border:1px solid var(--border,var(--color-border));border-radius:6px;border-radius:var(--radius,6px);box-sizing:border-box;color:var(--text-primary);font-family:inherit;font-size:13px;padding:8px 10px;width:100%}.ec-textarea{resize:vertical}.ec-count{width:84px}.ec-hint{color:var(--text-secondary);line-height:1.4}.ec-error,.ec-hint{font-size:12px;margin:0}.ec-error{color:#c0392b;color:var(--color-error,var(--destructive,#c0392b))}.ec-section{border:1px solid var(--border,var(--color-border));border-radius:6px;border-radius:var(--radius,6px);display:flex;flex-direction:column;gap:8px;padding:10px 12px}.ec-link-btn{background:none;border:none;color:var(--accent);color:var(--color-primary,var(--accent));cursor:pointer;font-size:12px;font-weight:600;padding:0}.ec-link-btn:hover:not(:disabled){text-decoration:underline}.ec-link-btn:disabled{cursor:default;opacity:.5}.ec-check{align-items:center;color:var(--text-primary);cursor:pointer;display:inline-flex;font-size:13px;gap:8px}.ec-chips,.ec-choices,.ec-toggles{display:flex;flex-wrap:wrap;gap:8px}.ec-toggle{background:#0000;border:1px solid var(--border,var(--color-border));border-radius:999px;color:var(--text-primary);cursor:pointer;font-size:12px;padding:6px 12px}.ec-choice.is-on,.ec-toggle.is-on{background:#3c64782e;background:var(--accent-tint,#3c64782e);border-color:var(--accent,var(--color-primary));font-weight:600}.ec-choice{cursor:pointer;padding:6px 12px}.ec-chip,.ec-choice{align-items:center;border:1px solid var(--border,var(--color-border));border-radius:999px;color:var(--text-primary);display:inline-flex;font-size:12px;gap:6px}.ec-chip{background:#0000;background:var(--bg-panel,#0000);max-width:100%;padding:3px 4px 3px 10px}.ec-chip-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ec-chip-type{color:var(--text-secondary);font-size:11px}.ec-chip-remove{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:14px;line-height:1;padding:2px 6px}.ec-search{display:flex;flex-direction:column;gap:6px}.ec-results{border:1px solid var(--border,var(--color-border));border-radius:6px;border-radius:var(--radius,6px);list-style:none;margin:0;max-height:200px;overflow-y:auto;padding:4px}.ec-result{background:none;border:none;border-radius:4px;color:var(--text-primary);cursor:pointer;display:flex;font-size:13px;gap:12px;justify-content:space-between;padding:6px 8px;text-align:left;width:100%}.ec-result:hover{background:#ffffff0f;background:var(--bg-hover,#ffffff0f)}.ec-result-type{color:var(--text-secondary);font-size:11px}.ec-results-empty{color:var(--text-secondary);font-size:12px;padding:6px 8px}.ec-doc-list,.ec-passage-list,.ec-pin-list,.ec-saw-list{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;padding:0}.ec-doc-meta{color:var(--text-secondary);font-size:11px}.ec-doc-passages{margin:4px 0 0 26px}.ec-passage-list{margin-top:6px;max-height:180px;overflow-y:auto}.ec-cost{align-self:center;margin-right:auto}.ec-cost,.ec-grounding{color:var(--text-secondary);font-size:12px}.ec-grounding{margin:0}.ec-grounding-note{font-style:italic}.ec-strip-wrap{flex-shrink:0}.ec-strip{flex-wrap:wrap}.ec-strip-text{flex:1 1 240px}.ec-strip-actions{display:inline-flex;flex-wrap:wrap;gap:12px;margin-left:auto}.ec-strip-actions .semantic-banner-clear{margin-left:0}.ec-strip-actions .semantic-banner-clear:disabled{cursor:default;opacity:.5;text-decoration:none}.ec-strip-reason{background:#3c647814;margin:0;padding:4px 24px 6px;padding:4px var(--spacing-2xl,24px) 6px}.ec-saw,.ec-strip-reason{color:var(--text-secondary);font-size:12px}.ec-saw{background:#3c64780a;border-bottom:1px solid var(--color-border);padding:4px 24px 8px;padding:4px var(--spacing-2xl,24px) 8px}.ec-saw-line{margin:0}.ec-saw-lead{color:var(--text-primary);font-weight:600}.ec-saw-panel{display:flex;flex-direction:column;gap:12px;margin-top:8px;max-height:340px;overflow-y:auto}.ec-saw-layer h4{margin:0 0 4px}.ec-pin-row,.ec-saw-row{align-items:baseline;display:flex;flex-wrap:wrap;gap:10px}.ec-pin-name,.ec-saw-label{color:var(--text-primary)}.ec-saw-kind{font-size:11px}.ec-saw-actions{display:inline-flex;gap:10px;margin-left:auto}.ec-cap{border:1px solid var(--warning,var(--border));border-radius:6px;border-radius:var(--radius,6px);color:var(--text-primary);padding:8px 10px}.ec-cap p{margin:0 0 6px}.ec-canon{gap:12px}.ec-canon,.ec-canon-group{display:flex;flex-direction:column}.ec-canon-group{gap:4px}.ec-canon-panel h3{margin:0 0 6px}.ec-canon-panel{display:flex;flex-direction:column;gap:8px;margin-top:28px}.modal-body label.ec-check,.modal-body label.ec-choice,.modal-body label.ec-label{margin-bottom:0}.modal-body label.ec-check,.modal-body label.ec-choice{align-items:center;display:inline-flex;font-size:13px;font-weight:400;gap:8px}.modal-body label.ec-choice.is-on{font-weight:600}.modal-body .ec-check input,.modal-body .ec-choice input{flex:none;margin:0;padding:0;width:auto}.modal-body .ec-doc-list label.ec-check{display:flex}.modal-body .ec-count{width:84px}.rel-list-editor{display:flex;flex-direction:column;gap:6px;width:100%}.rel-list-row{align-items:center;display:flex;gap:6px}.rel-list-item-input{background:#1e1e2e;background:var(--bg-secondary,#1e1e2e);border:1px solid #3a3a5c;border:1px solid var(--border-color,#3a3a5c);border-radius:4px;color:#e0e0e0;color:var(--text-primary,#e0e0e0);flex:1 1;font-size:13px;padding:5px 8px}.rel-list-item-input:focus{border-color:#6366f1;border-color:var(--accent-primary,#6366f1);outline:none}.rel-list-remove-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:#888;color:var(--text-muted,#888);cursor:pointer;display:flex;flex-shrink:0;justify-content:center;padding:4px;transition:color .15s,background .15s}.rel-list-remove-btn:hover:not(:disabled){background:#ef44441a;color:#ef4444;color:var(--danger,#ef4444)}.rel-list-remove-btn .material-symbols-outlined{font-size:16px}.rel-list-add-row{display:flex;gap:6px}.rel-list-add-input{background:#1e1e2e;background:var(--bg-secondary,#1e1e2e);border:1px dashed #3a3a5c;border:1px dashed var(--border-color,#3a3a5c);border-radius:4px;color:#e0e0e0;color:var(--text-primary,#e0e0e0);flex:1 1;font-size:13px;padding:5px 8px}.rel-list-add-input:focus{border-color:#6366f1;border-color:var(--accent-primary,#6366f1);border-style:solid;outline:none}.rel-list-add-btn{background:#2a2a3e;background:var(--bg-tertiary,#2a2a3e);border:1px solid #3a3a5c;border:1px solid var(--border-color,#3a3a5c);border-radius:4px;color:#aaa;color:var(--text-secondary,#aaa);cursor:pointer;font-size:12px;padding:5px 12px;transition:background .15s,color .15s;white-space:nowrap}.rel-list-add-btn:hover:not(:disabled){background:#6366f1;background:var(--accent-primary,#6366f1);border-color:#6366f1;border-color:var(--accent-primary,#6366f1);color:#fff}.rel-list-add-btn:disabled{cursor:not-allowed;opacity:.4}.vp-editor{border-top:1px solid #2b2f36;border-top:1px solid var(--color-border,#2b2f36);margin-top:16px;padding-top:12px}.vp-head{gap:8px;justify-content:space-between;margin-bottom:8px}.vp-head,.vp-title{align-items:center;display:flex}.vp-title{font-size:13px;font-weight:600;gap:6px}.vp-actions{display:flex;flex-wrap:wrap;gap:6px}.dg-btn,.gr-btn,.vp-btn{align-items:center;background:#1c1f25;background:var(--color-background-secondary,#1c1f25);border:1px solid #2b2f36;border:1px solid var(--color-border,#2b2f36);border-radius:6px;color:#e6e6e6;color:var(--color-text,#e6e6e6);cursor:pointer;display:inline-flex;font-size:12px;gap:4px;padding:5px 10px}.dg-btn:hover,.gr-btn:hover,.vp-btn:hover{border-color:#39ff14;border-color:var(--color-primary,#39ff14)}.dg-btn:disabled,.gr-btn:disabled,.vp-btn:disabled{cursor:not-allowed;opacity:.5}.dg-btn--primary,.gr-btn--primary,.vp-btn--primary{background:#39ff14;background:var(--color-primary,#39ff14);border-color:#39ff14;border-color:var(--color-primary,#39ff14);color:#0a0a0a;font-weight:600}.vp-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr}.vp-field{display:flex;flex-direction:column;gap:3px}.vp-field.vp-wide{grid-column:1/-1}.vp-field label{font-size:11px;opacity:.75}.dg-row input,.dg-row select,.dg-row textarea,.gr-row input,.gr-row select,.gr-row textarea,.vp-field input,.vp-field textarea{background:#14171c;background:var(--color-background,#14171c);border:1px solid #2b2f36;border:1px solid var(--color-border,#2b2f36);border-radius:5px;box-sizing:border-box;color:#e6e6e6;color:var(--color-text,#e6e6e6);font-size:12px;padding:5px 7px;width:100%}.gr-row textarea,.vp-field textarea{min-height:38px;resize:vertical}.vp-canon{margin-top:10px}.vp-canon-line{align-items:center;display:flex;gap:6px;margin-bottom:4px}.vp-canon-line input{flex:1 1}.vp-canon-src{font-size:10px;opacity:.6;white-space:nowrap}.vp-icon-btn{background:#0000;border:none;color:#e6e6e6;color:var(--color-text,#e6e6e6);cursor:pointer;line-height:1;opacity:.7;padding:2px}.vp-icon-btn:hover{opacity:1}.vp-icon-btn .material-symbols-outlined{font-size:16px}.dg-note,.gr-note,.vp-note{font-size:11px;margin:6px 0;opacity:.7}.vp-status{font-size:11px;opacity:.7}.vp-lint{align-items:center;border-radius:10px;display:inline-flex;font-size:10px;gap:3px;padding:1px 6px;white-space:nowrap}.vp-lint--ok{background:#39ff141a;color:#39ff14;color:var(--color-primary,#39ff14)}.vp-lint--off{background:#ff6b6b1f;color:#ff6b6b}.vp-lint .material-symbols-outlined{font-size:13px}.dg-panel{background:#1c1f25;background:var(--color-background-secondary,#1c1f25);border:1px solid #2b2f36;border:1px solid var(--color-border,#2b2f36);border-radius:8px;margin-top:8px;padding:10px}.dg-row{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr;margin-bottom:8px}.dg-row .dg-wide{grid-column:1/-1}.dg-row label{display:block;font-size:11px;margin-bottom:2px;opacity:.75}.dg-candidates{display:flex;flex-direction:column;gap:6px;margin-top:8px}.dg-candidate{align-items:flex-start;background:#14171c;background:var(--color-background,#14171c);border:1px solid #2b2f36;border:1px solid var(--color-border,#2b2f36);border-radius:6px;display:flex;gap:8px;padding:7px 8px}.dg-candidate-text{flex:1 1;font-size:12px;line-height:1.4}.dg-candidate-meta{align-items:center;display:flex;font-size:10px;gap:8px;margin-top:3px;opacity:.6}.gr-view{color:#e6e6e6;color:var(--color-text,#e6e6e6);margin:0 auto;max-width:980px;padding:20px}.gr-view h1{font-size:20px;margin:0 0 4px}.gr-mode-toggle{display:flex;gap:6px;margin:4px 0 14px}.gr-mode-pill{background:#1c1f25;background:var(--color-background-secondary,#1c1f25);border:1px solid #2b2f36;border:1px solid var(--color-border,#2b2f36);border-radius:14px;color:#e6e6e6;color:var(--color-text,#e6e6e6);cursor:pointer;font-size:12px;padding:4px 12px}.gr-mode-pill--on{background:#39ff14;background:var(--color-primary,#39ff14);border-color:#39ff14;border-color:var(--color-primary,#39ff14);color:#0a0a0a;font-weight:600}.gr-setup{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1fr 1fr;margin:14px 0}.gr-setup .gr-wide{grid-column:1/-1}.gr-participants{display:flex;flex-wrap:wrap;gap:6px;max-height:180px;overflow:auto}.gr-chip{align-items:center;background:#1c1f25;background:var(--color-background-secondary,#1c1f25);border:1px solid #2b2f36;border:1px solid var(--color-border,#2b2f36);border-radius:14px;cursor:pointer;display:inline-flex;font-size:12px;gap:4px;padding:4px 9px}.gr-chip--on{background:#39ff14;background:var(--color-primary,#39ff14);border-color:#39ff14;border-color:var(--color-primary,#39ff14);color:#0a0a0a}.participant-toggle-group{display:flex;flex-direction:column;gap:4px}.participant-toggle-label{font-size:12px;margin:0;opacity:.75}.participant-toggle-instructions{font-size:11px;margin:0 0 2px;opacity:.7}.participant-toggle-mark{font-size:14px;line-height:1}.gr-meter{background:#1c1f25;background:var(--color-background-secondary,#1c1f25);border-radius:6px;display:flex;font-size:12px;gap:16px;margin:10px 0;padding:8px 12px}.gr-transcript{display:flex;flex-direction:column;gap:8px;margin-top:10px}.gr-turn{align-items:flex-start;border:1px solid #2b2f36;border:1px solid var(--color-border,#2b2f36);border-radius:6px;display:flex;gap:10px;padding:8px 10px}.gr-turn-speaker{font-size:12px;font-weight:600;min-width:110px}.gr-turn-text{flex:1 1;font-size:13px;line-height:1.45}.gr-turn--you{background:#39ff140f}.gr-turn--you .gr-turn-speaker{color:#39ff14;color:var(--color-primary,#39ff14)}.gr-composer{background:#1c1f25;background:var(--color-background-secondary,#1c1f25);border:1px solid #2b2f36;border:1px solid var(--color-border,#2b2f36);border-radius:8px;display:flex;flex-direction:column;gap:8px;margin:12px 0;padding:10px 12px}.gr-composer-row{align-items:flex-end;display:flex;flex-wrap:wrap;gap:8px}.gr-composer textarea{flex:1 1;min-height:38px;min-width:240px}.gr-respond-row{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.gr-respond-label{font-size:11px;margin-right:2px;opacity:.7}.gr-auto-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.gr-auto-row input{width:64px}.gr-spend{font-size:12px;margin-left:auto;opacity:.85}.vp-export-toggle{align-items:center;display:flex;flex-wrap:wrap;font-size:13px;gap:10px}.vp-export-toggle select{background:#14171c;background:var(--color-background,#14171c);border:1px solid #2b2f36;border:1px solid var(--color-border,#2b2f36);border-radius:5px;color:#e6e6e6;color:var(--color-text,#e6e6e6);padding:5px 8px}.gr-subtitle{color:var(--text-secondary);font-size:13px;margin:4px 0 14px}.gr-empty-character{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:18px}.term-hint{align-items:center;display:inline-flex;gap:4px;position:relative}.term-hint-trigger{align-items:center;background:#0000;border:1px solid;border-radius:50%;color:inherit;cursor:help;display:inline-flex;font-size:10px;font-weight:700;height:15px;justify-content:center;line-height:1;opacity:.55;padding:0;transition:opacity .15s;width:15px}.term-hint-trigger:focus-visible,.term-hint-trigger:hover{opacity:1}.term-hint-tip{background:#1f2937;background:var(--color-surface,#1f2937);border:1px solid #ffffff1f;border:1px solid var(--color-border,#ffffff1f);border-radius:6px;box-shadow:0 6px 20px #00000040;color:#f3f4f6;color:var(--color-text-primary,#f3f4f6);font-size:.78rem;font-weight:400;left:0;letter-spacing:normal;line-height:1.4;max-width:280px;opacity:0;padding:8px 10px;pointer-events:none;position:absolute;text-transform:none;top:calc(100% + 6px);transform:translateY(-2px);transition:opacity .12s,transform .12s;white-space:normal;width:max-content;z-index:50}.term-hint-tip.is-open{opacity:1;transform:translateY(0)}.entity-filters{flex:0 0 auto;position:relative}.entity-filters__trigger{align-items:center;background:var(--surface-raised);background:var(--surface-interactive,var(--surface-raised));border:1px solid var(--semantic-border);border-radius:6px;border-radius:var(--radius-md,6px);color:var(--semantic-text-primary);cursor:pointer;display:inline-flex;font:inherit;font-size:13px;font-weight:500;gap:6px;min-height:36px;padding:0 12px}.entity-filters__trigger:hover{background:var(--surface-hover);background:var(--surface-interactive-hover,var(--surface-hover))}.entity-filters__trigger .material-symbols-outlined{font-size:18px}.entity-filters__trigger--active{border-color:var(--accent-primary)}.entity-filters__count{align-items:center;background:var(--accent-primary);background:var(--action-primary,var(--accent-primary));border-radius:9px;color:var(--semantic-text-on-accent);color:var(--semantic-text-on-action,var(--semantic-text-on-accent));display:inline-flex;font-size:11px;font-weight:700;height:18px;justify-content:center;min-width:18px;padding:0 5px}.entity-filters__panel{background:var(--surface-raised);border:1px solid var(--semantic-border-strong,var(--semantic-border));border-radius:10px;border-radius:var(--radius-lg,10px);box-shadow:var(--shadow-lg);left:0;padding:12px;position:absolute;top:calc(100% + 6px);width:min(300px,calc(100vw - 32px));z-index:40}.entity-filters__panel--end{left:auto;right:0}.entity-filters__panel[hidden]{display:none}.entity-filters__heading{color:var(--semantic-text-secondary);font-size:11px;font-weight:600;letter-spacing:.08em;margin-bottom:8px;text-transform:uppercase}.entity-filters__option{align-items:flex-start;color:var(--semantic-text-primary);cursor:pointer;display:flex;font-size:13px;gap:10px}.entity-filters__option input{accent-color:var(--accent-primary);margin-top:2px}.entity-filters__option-text{display:flex;flex-direction:column;gap:2px}.entity-filters__option-hint{color:var(--semantic-text-secondary);font-size:12px}.selection-action-bar{align-items:center;background:#3c647814;border-bottom:1px solid var(--color-border);display:flex;flex-shrink:0;gap:12px;gap:var(--spacing-md,12px);padding:8px 24px;padding:8px var(--spacing-2xl,24px)}.selection-count{color:var(--color-text-primary);font-size:13px;white-space:nowrap}.selection-action-buttons{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.selection-action-btn{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);cursor:pointer;font-size:12px;padding:6px 12px}.selection-action-btn:hover:not(:disabled){background:#ffffff0f;background:var(--bg-hover,#ffffff0f)}.selection-action-btn:disabled{color:var(--color-text-secondary);cursor:not-allowed;opacity:.6}.selection-action-btn.danger{border-color:#dc3c3c66;color:#e57373}.selection-clear-btn{background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:12px;font-weight:600;margin-left:auto}.selection-clear-btn:hover{text-decoration:underline}.selection-dropdown-wrapper{position:relative}.selection-dropdown-trigger{background:#6c5ce7;background:var(--color-primary,#6c5ce7);border:none;border-radius:6px;color:var(--text-primary);cursor:pointer;font-size:13px;font-weight:600;padding:6px 14px;white-space:nowrap}.selection-dropdown-trigger:hover{opacity:.88}.selection-dropdown-menu{background:var(--bg-base);background:var(--color-surface,var(--bg-base));border:1px solid var(--color-border,var(--border));border-radius:8px;box-shadow:0 6px 20px #00000059;min-width:180px;overflow:hidden;position:absolute;right:0;top:calc(100% + 4px);z-index:200}.dropdown-item{background:none;border:none;color:var(--text-primary);color:var(--color-text-primary,var(--text-primary));cursor:pointer;display:block;font-size:13px;padding:9px 16px;text-align:left;white-space:nowrap;width:100%}.dropdown-item:hover{background:#ffffff12;background:var(--color-hover,#ffffff12)}.dropdown-item.danger{color:#e74c3c}.dropdown-item.danger:hover{background:#e74c3c1f}.dropdown-item.disabled{color:var(--text-muted);color:var(--color-text-muted,var(--text-muted));cursor:default;font-style:italic}.dropdown-divider{background:var(--border);background:var(--color-border,var(--border));height:1px;margin:4px 0}.entity-view{background:var(--color-background);color:var(--color-text-primary);display:flex;flex-direction:column;height:100vh}.entity-view .data-table td:nth-child(4),.entity-view .data-table th:nth-child(4){max-width:48px!important;min-width:48px!important;padding:0!important;text-align:center!important;vertical-align:middle!important;width:48px!important}.entity-view .entity-icon-cell{font-size:20px}.entity-icon-badge,.entity-view .entity-icon-cell{align-items:center;display:flex;justify-content:center}.entity-icon-badge{border:none;border-radius:6px;cursor:pointer;flex-shrink:0;height:30px;padding:0;transition:opacity .15s,transform .15s;width:30px}.entity-icon-badge:hover{opacity:.85;transform:scale(1.08)}.entity-icon-badge:disabled{cursor:not-allowed;opacity:.5}.entity-icon-badge .material-symbols-outlined{color:#000000bf;font-size:18px;line-height:1}.entity-view .data-table td:nth-child(5),.entity-view .data-table th:nth-child(5){padding-left:8px!important}.entity-view-header{align-items:flex-start;background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;flex-shrink:0;justify-content:space-between;padding:var(--spacing-lg) var(--spacing-2xl)}.header-content h1{color:var(--color-text-primary);font-size:2.5rem;font-weight:600;margin:0}.project-info{color:var(--color-text-secondary);font-size:1.125rem;margin:0}.header-actions{align-items:center;display:flex;gap:var(--spacing-md);margin-right:20px}.entity-view-toolbar{justify-content:space-between}.entity-search-bar,.entity-view-toolbar{align-items:center;background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;flex-shrink:0;padding:var(--spacing-md) var(--spacing-2xl)}.entity-search-bar{gap:var(--spacing-md)}.search-mode-toggle{border:2px solid var(--color-border);border-radius:var(--radius-sm);display:inline-flex;flex-shrink:0;overflow:hidden}.search-mode-btn{background:var(--color-surface);border:none;color:var(--color-text-secondary);cursor:pointer;font-size:13px;font-weight:600;padding:10px 16px;transition:background .2s ease,color .2s ease}.search-mode-btn+.search-mode-btn{border-left:1px solid var(--color-border)}.search-mode-btn.active{background:var(--color-primary);color:var(--accent-primary-foreground)}.semantic-search-form{align-items:center;display:flex;flex:1 1;gap:var(--spacing-sm)}.semantic-search-form .search-input{flex:1 1;width:auto}.semantic-clear-btn,.semantic-search-btn{flex-shrink:0;white-space:nowrap}.semantic-clear-btn{font-size:18px;line-height:1;padding:10px 14px}.semantic-results-banner{align-items:center;background:#3c647814;border-bottom:1px solid var(--color-border);color:var(--color-text-primary);display:flex;flex-shrink:0;font-size:13px;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-2xl)}.semantic-results-banner .material-symbols-outlined{color:var(--color-primary);font-size:18px}.semantic-banner-clear{background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:13px;font-weight:600;margin-left:auto}.semantic-banner-clear:hover{text-decoration:underline}.search-controls{flex:1 1;max-width:400px}.search-input{background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:14px;padding:12px 16px;transition:border-color .3s ease;width:100%}.search-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #3c64781a;outline:none}.filter-controls{align-items:center;display:flex;gap:var(--spacing-md)}.filter-select{background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:14px;min-width:160px;padding:10px 15px;transition:border-color .3s ease}.filter-select:focus{border-color:var(--color-primary);outline:none}.entity-view main{flex:1 1;overflow-y:auto;padding:var(--spacing-lg) var(--spacing-2xl)}.loading-state{align-items:center;color:var(--color-text-secondary);display:flex;flex-direction:column;justify-content:center;padding:80px 20px}.loading-state .spinner{animation:spin 1s linear infinite;border:4px solid var(--color-border);border-radius:50%;border-top-color:var(--color-primary);height:48px;margin-bottom:var(--spacing-md);width:48px}.empty-state{background:var(--color-surface);border:2px dashed var(--color-border);border-radius:var(--radius-md);margin:var(--spacing-2xl) 0;padding:80px 20px}.empty-state h3{font-size:1.5rem;margin:0 0 var(--spacing-md) 0}.empty-state p{color:var(--color-text-secondary);font-size:1.125rem;margin:0 0 var(--spacing-lg) 0;margin-left:auto;margin-right:auto;max-width:400px}.empty-actions{display:flex;flex-wrap:wrap;gap:var(--spacing-md);justify-content:center}.empty-state-hint{color:var(--color-text-secondary);font-size:.9rem;margin:var(--spacing-md) 0 0}.empty-state-link{background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:inherit;font-weight:600;padding:0}.empty-state-link:hover{text-decoration:underline}.action-btn{align-items:center;border:none;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);text-decoration:none;transition:all .3s ease}.action-btn.primary{background-color:var(--color-primary)!important;color:var(--text-primary)!important}.action-btn.primary:hover:not(:disabled){background-color:var(--color-primary-dark)!important;transform:translateY(-1px)}.action-btn.secondary{background-color:var(--color-surface);border:2px solid var(--color-border);color:var(--color-text-primary)}.action-btn.secondary:hover:not(:disabled){background-color:var(--accent-tint);border-color:var(--color-primary);transform:translateY(-1px)}.action-btn.danger{background-color:#c0392b;border:2px solid #c0392b;color:var(--text-primary)}.action-btn.danger:hover:not(:disabled){background-color:#a93226;border-color:#a93226;transform:translateY(-1px)}.action-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.action-btn.generate{background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;color:var(--text-primary);font-weight:600}.action-btn.generate:hover:not(:disabled){background:linear-gradient(135deg,#4f46e5,#7c3aed);box-shadow:0 4px 12px #6366f14d;transform:translateY(-1px)}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009}.entity-edit-modal,.extraction-modal{background:var(--bg-panel)!important;border:1px solid var(--border)!important;border-radius:8px;box-shadow:0 8px 32px #0006;display:flex;flex-direction:column;max-height:80vh;max-width:600px;overflow:hidden}.extraction-info{background:var(--bg-base);color:var(--text-primary);font-size:.9rem;margin-bottom:1.5rem;padding:1rem}.advanced-options,.extraction-info{border:1px solid var(--border-strong);border-radius:4px}.advanced-options{background:var(--bg-panel);margin-top:1.5rem;padding:.75rem}.advanced-options summary{color:var(--text-primary);font-weight:500;list-style:none;-webkit-user-select:none;user-select:none}.advanced-options summary::-webkit-details-marker{display:none}.modal-header{align-items:center;background:var(--bg-panel)!important;border-bottom:1px solid var(--border)!important;border-radius:8px 8px 0 0;display:flex;justify-content:space-between;padding:1rem 1.5rem}.modal-header h3{color:var(--text-primary)!important;font-size:1.125rem;font-weight:600;margin:0}.close-btn{background:#0000;border:none;color:var(--text-muted);cursor:pointer;font-size:1.5rem;line-height:1;padding:0}.close-btn:hover{color:var(--text-primary)}.modal-content{flex:1 1;overflow-y:auto;padding:1.5rem}.modal-actions,.modal-content{background:var(--bg-panel)!important}.modal-actions{border-radius:0 0 8px 8px;border-top:1px solid var(--border)!important;display:flex;gap:1rem;justify-content:flex-end;padding:1rem 1.5rem}.form-group{margin-bottom:var(--spacing-lg)}.form-group label{font-weight:600;margin-bottom:var(--spacing-sm)}.form-group label,.form-input,.form-textarea{color:var(--text-primary)!important;font-size:.875rem}.form-input,.form-textarea{background:var(--bg-base)!important;border:1px solid var(--border)!important;border-radius:4px;padding:12px;transition:border-color .3s ease;width:100%}select.form-input{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23fff' d='M6 9 1 4h10z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;color:var(--text-primary)!important;cursor:pointer;padding-right:36px}select.form-input option{background:var(--bg-base);color:var(--text-primary)}.form-input:focus,.form-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-tint);outline:none}.form-textarea{min-height:80px;resize:vertical}.fields-section{border-top:1px solid var(--color-border);margin-top:var(--spacing-lg);padding-top:var(--spacing-lg)}.fields-section h4{color:var(--color-text-primary);font-size:1rem;font-weight:600;margin:0 0 var(--spacing-md) 0}.add-field-row{align-items:center;display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.field-input{background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);flex:1 1;font-size:.875rem;padding:8px 12px}.add-field-btn{background:var(--color-primary);border:none;border-radius:var(--radius-sm);color:var(--color-surface);cursor:pointer;font-size:.875rem;font-weight:500;padding:8px 16px;transition:background-color .2s ease;white-space:nowrap}.add-field-btn:hover:not(:disabled){background:var(--color-primary-dark)}.add-field-btn:disabled{cursor:not-allowed;opacity:.6}.existing-fields{gap:var(--spacing-sm)}.existing-fields,.field-edit-row{display:flex;flex-direction:column}.field-edit-row{background:var(--bg-base);border:1px solid var(--border);border-radius:4px;gap:.5rem;margin-bottom:1rem;padding:1rem}.field-label{align-items:center;color:var(--text-primary)!important;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;margin-bottom:.25rem}.field-required{color:var(--status-destructive);font-size:.875rem;margin-left:.25rem}.field-input-group{align-items:flex-start;display:flex;gap:.5rem}.field-input-group .form-input,.field-input-group .form-textarea{flex:1 1}.field-input-group .form-textarea{min-height:100px;resize:vertical}.field-name{color:var(--color-text-secondary);font-size:.875rem;font-weight:500;min-width:100px}.remove-field-btn{background:none;border:none;border-radius:4px;color:var(--color-error);cursor:pointer;font-size:1rem;padding:4px;transition:background-color .2s ease}.remove-field-btn:hover{background:#dc26261a}.radio-group,.type-checkboxes{display:flex;flex-direction:column;gap:var(--spacing-sm)}.checkbox-option,.radio-option{align-items:center;border-radius:var(--radius-sm);cursor:pointer;display:flex;gap:var(--spacing-sm);padding:var(--spacing-sm);transition:background-color .2s ease}.checkbox-option:hover,.radio-option:hover{background:#3c64780d}.checkbox-option input,.radio-option input{cursor:pointer}.checkbox-option{background:var(--color-background);border:1px solid var(--color-border)}@media (max-width:768px){.entity-view-header{align-items:stretch;flex-direction:column;gap:var(--spacing-md)}.header-actions{flex-wrap:wrap;justify-content:center}.entity-view-toolbar{align-items:stretch;flex-direction:column;gap:var(--spacing-md)}.entity-edit-modal,.extraction-modal{max-height:90vh;width:95%}.add-field-row,.field-edit-row{flex-direction:column}.field-edit-row{align-items:stretch}.field-name{min-width:auto}}@media (max-width:480px){.entity-view main,.entity-view-header,.entity-view-toolbar{padding:var(--spacing-md)}.header-content h1{font-size:2rem}}.fields-section .fields-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.fields-section .fields-header h4{margin:0}.autofill-btn{align-items:center;background:var(--accent);border:1px solid var(--accent);border-radius:4px;color:var(--accent-foreground);cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:all .2s}.autofill-btn:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.autofill-btn:disabled{cursor:not-allowed;opacity:.6}.generate-field-btn{align-items:center;background:var(--bg-elevated);border:1px solid var(--border-strong);border-radius:4px;color:var(--text-primary);cursor:pointer;display:flex;flex-shrink:0;font-size:.75rem;font-weight:500;gap:.25rem;justify-content:center;padding:.375rem .75rem;transition:all .2s;white-space:nowrap}.generate-field-btn:hover:not(:disabled){background:var(--accent);border-color:var(--accent);color:var(--accent-foreground)}.generate-field-btn:disabled{animation:entityViewButtonPulse 1.5s infinite;cursor:not-allowed;opacity:.6}@keyframes entityViewButtonPulse{0%,to{opacity:.6}50%{opacity:1}}.ai-badge{animation:entityViewBadgeFadeIn .3s;font-size:.875rem;margin-left:.25rem;opacity:.8}@keyframes entityViewBadgeFadeIn{0%{opacity:0;transform:scale(.8)}to{opacity:.8;transform:scale(1)}}.entity-edit-view{flex:1 1;overflow-y:auto;padding:2rem;width:100%}.edit-header{align-items:flex-start;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1.5rem}.edit-header h2{color:var(--text-primary);font-size:1.75rem;margin:0 0 .5rem}.entity-type-label{align-items:center;color:var(--text-muted);display:flex;gap:.5rem;margin:0}.edit-actions{display:flex;gap:.75rem}.edit-content{display:flex;flex-direction:column;gap:2rem}.form-section{background:var(--bg-panel);border:1px solid var(--border);border-radius:8px;padding:1.5rem}.form-section h3{color:var(--text-primary);font-size:1.125rem;font-weight:600;margin:0 0 1.5rem}.section-header{margin-bottom:1.5rem}.fields-list{display:flex;flex-direction:column}.add-custom-field{border-top:1px solid var(--border);margin-top:1.5rem;padding-top:1.5rem}.add-custom-field h4{color:var(--text-primary);font-size:.875rem;font-weight:600;letter-spacing:.5px;margin:0 0 1rem;text-transform:uppercase}.custom-fields{border-top:1px solid var(--border);margin-top:1.5rem;padding-top:1.5rem}.custom-fields h4{color:var(--text-primary);font-size:.875rem;font-weight:600;letter-spacing:.5px;margin:0 0 1rem;text-transform:uppercase}.similar-entity-modal{background:var(--bg-panel)!important;border:1px solid var(--border)!important;border-radius:8px;box-shadow:0 8px 32px #0006;display:flex;flex-direction:column;max-height:80vh;max-width:520px;overflow:hidden}.similar-entity-overlay .modal-actions,.similar-entity-overlay .modal-header{background:var(--bg-panel)!important;border-color:var(--border)!important}.similar-entity-description{color:var(--text-primary);font-size:.95rem;margin:0 0 1.2rem}.similar-entity-modal .form-group label{color:var(--text-primary)!important;display:block;font-weight:600;margin-bottom:.5rem}.similar-entity-modal .form-input,.similar-entity-modal .form-textarea{background:var(--bg-base);border:1px solid var(--border);border-radius:4px;color:var(--text-primary);font-size:.95rem;padding:.75rem;width:100%}.similar-entity-modal .form-input:disabled,.similar-entity-modal .form-textarea:disabled{cursor:not-allowed;opacity:.6}.similar-entity-modal .form-textarea{min-height:120px;resize:vertical}.similar-entity-modal .modal-actions .action-btn.primary:disabled{cursor:not-allowed;opacity:.7}.extraction-progress{display:flex;flex:1 1;flex-direction:column;overflow-y:auto;padding:var(--spacing-2xl)}.extraction-header{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);display:flex;gap:var(--spacing-lg);margin-bottom:var(--spacing-2xl);padding:var(--spacing-xl)}.extraction-spinner{animation:spin 1s linear infinite;border:4px solid var(--color-border);border-radius:50%;border-top-color:var(--color-primary);height:48px;width:48px}.extraction-info h3{color:var(--color-text-primary);font-size:1.5rem;margin:0 0 var(--spacing-xs) 0}.extraction-status{color:var(--color-text-secondary);font-size:1rem;margin:0}.extracted-entities-grid{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.extracted-entity-card{align-items:center;animation:entityViewSlideIn .3s ease-out forwards;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex;gap:var(--spacing-md);opacity:0;padding:var(--spacing-md) var(--spacing-lg);transform:translateY(10px)}@keyframes entityViewSlideIn{to{opacity:1;transform:translateY(0)}}.extracted-entity-card .entity-icon{background:#3b82f61a;background:var(--color-primary-light,#3b82f61a);border-radius:var(--radius-md);color:var(--color-primary);font-size:2rem;padding:var(--spacing-sm)}.entity-card-info{display:flex;flex-direction:column;gap:var(--spacing-xs);min-width:0}.entity-card-name{color:var(--color-text-primary);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.extraction-waiting{align-items:center;color:var(--color-text-secondary);display:flex;flex-direction:column;justify-content:center;padding:var(--spacing-3xl)}.extraction-waiting p{font-size:1.125rem;margin-bottom:var(--spacing-lg)}.pulse-dots{display:flex;gap:var(--spacing-sm)}.pulse-dots span{animation:entityViewDotsPulse 1.4s ease-in-out infinite;background:var(--color-primary);border-radius:50%;height:12px;width:12px}.pulse-dots span:nth-child(2){animation-delay:.2s}.pulse-dots span:nth-child(3){animation-delay:.4s}@keyframes entityViewDotsPulse{0%,80%,to{opacity:.5;transform:scale(.6)}40%{opacity:1;transform:scale(1)}}.selection-actions{align-items:center;display:flex;gap:var(--spacing-md)}.selection-count{background:#4ade80;background:var(--color-primary,#4ade80);border-radius:var(--radius-sm);color:var(--text-primary);font-weight:600;padding:var(--spacing-xs) var(--spacing-md)}.selection-warning{color:var(--color-text-secondary);font-size:.875rem;font-style:italic}.merge-entity-modal{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:85vh;max-width:600px;width:90%}.merge-entity-modal .modal-header{align-items:center;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:var(--spacing-lg) var(--spacing-xl)}.merge-entity-modal .modal-header h3{color:var(--color-text-primary);font-size:1.25rem;font-weight:600;margin:0}.merge-info{background:#3b82f61a;background:var(--color-primary-light,#3b82f61a);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);padding:var(--spacing-md)}.merge-info p{color:var(--color-text-secondary);font-size:.875rem;line-height:1.5;margin:0}.merge-entities-modal .radio-group,.merge-entity-modal .radio-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.merge-entities-modal .radio-option,.merge-entity-modal .radio-option{align-items:flex-start;border-radius:var(--radius-sm);cursor:pointer;display:flex;gap:var(--spacing-sm);padding:var(--spacing-sm);transition:background .2s}.merge-entities-modal .radio-option:hover,.merge-entity-modal .radio-option:hover{background:var(--color-hover)}.merge-entities-modal .radio-option input[type=radio],.merge-entity-modal .radio-option input[type=radio]{accent-color:var(--color-primary);flex-shrink:0;margin-top:4px;width:auto}.merge-entities-modal .radio-option div,.merge-entity-modal .radio-option div{display:flex;flex-direction:column;gap:2px}.merge-entities-modal .radio-option strong,.merge-entity-modal .radio-option strong{color:var(--color-text-primary)}.radio-description{color:var(--color-text-secondary);font-size:.8rem}.merge-preview{border-top:1px solid var(--color-border);margin-top:var(--spacing-lg);padding-top:var(--spacing-lg)}.merge-preview h4{color:var(--color-text-secondary);font-size:.875rem;font-weight:600;letter-spacing:.5px;margin:0 0 var(--spacing-md);text-transform:uppercase}.merge-entity-list{display:flex;flex-direction:column;gap:var(--spacing-sm);list-style:none;margin:0;padding:0}.merge-entity-list li{align-items:center;background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-sm);display:flex;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md)}.merge-entity-list li.primary{background:#3b82f61a;background:var(--color-primary-light,#3b82f61a);border-color:var(--color-primary)}.merge-entity-list li.secondary{opacity:.8}.merge-entity-list .entity-name{color:var(--color-text-primary);flex:1 1;font-weight:500}.primary-badge{background:#fff;border-radius:4px;color:var(--color-primary);font-size:.7rem;font-weight:600;padding:2px 6px;text-transform:uppercase}.primary-select-row{align-items:center;display:flex;gap:var(--spacing-sm)}.primary-select-row select{flex:1 1}.select-oldest-btn{font-size:.875rem!important;padding:var(--spacing-sm) var(--spacing-md)!important;white-space:nowrap}.entity-extracting-banner{align-items:center;animation:entityBannerPulse 2s ease-in-out infinite;background:#007acc26;border:1px solid #007acc66;border-radius:6px;color:#4fc3f7;display:flex;flex-shrink:0;font-size:.875rem;gap:.75rem;margin:0 var(--spacing-lg);padding:.75rem 1rem}.entity-extracting-banner .generating-lock-icon{flex-shrink:0;font-size:1rem}.entity-chunk-error-banner{align-items:center;background:#ffc1071f;border:1px solid #ffc10773;border-radius:6px;color:#ffc107;display:flex;flex-shrink:0;font-size:.875rem;gap:.75rem;margin:0 var(--spacing-lg);padding:.75rem 1rem}.entity-chunk-error-banner .chunk-error-icon{flex-shrink:0;font-size:1rem}.entity-chunk-error-banner span{flex:1 1}.entity-chunk-error-banner .chunk-error-reason{font-style:italic;opacity:.8}.entity-chunk-error-banner button{flex-shrink:0}@keyframes entityBannerPulse{0%,to{border-color:#007acc66}50%{border-color:#007accb3}}.entity-history-controls{display:flex;flex-shrink:0;gap:4px;margin-left:auto}.entity-history-controls .history-btn{align-items:center;background:var(--bg-panel);background:var(--color-surface,var(--bg-panel));border:1px solid var(--color-border,var(--border));border-radius:var(--radius-sm);color:var(--text-secondary);color:var(--color-text-secondary,var(--text-secondary));cursor:pointer;display:flex;height:34px;justify-content:center;transition:border-color .15s ease,color .15s ease;width:34px}.entity-history-controls .history-btn:hover:not(:disabled){border-color:var(--color-primary);color:var(--text-primary);color:var(--color-text-primary,var(--text-primary))}.entity-history-controls .history-btn:disabled{cursor:not-allowed;opacity:.4}.entity-history-controls .history-btn .material-symbols-outlined{font-size:18px}.entity-content-area{display:flex;flex:1 1;min-height:0;overflow:hidden;position:relative}.entity-content-area>.data-table-wrapper,.entity-content-area>.empty-state,.entity-content-area>.loading-state{flex:1 1;min-width:0;overflow:auto}.entity-edit-drawer{background:var(--bg-panel);border-left:1px solid var(--border);bottom:0;box-shadow:-10px 0 30px #00000059;display:flex;flex-direction:column;position:absolute;right:0;top:0;width:min(460px,94%);z-index:40}@media (max-width:640px){.entity-edit-drawer{width:100%}}.entity-edit-drawer .entity-edit-view{display:flex;flex-direction:column;height:100%;overflow:hidden;padding:0}.entity-edit-drawer .drawer-header{align-items:flex-start;border-bottom:1px solid var(--border);display:flex;flex-shrink:0;gap:8px;justify-content:space-between;padding:14px 16px}.entity-edit-drawer .drawer-title{align-items:center;display:flex;flex-wrap:wrap;gap:8px;min-width:0}.entity-edit-drawer .drawer-title h2{color:var(--text-primary);font-size:1.15rem;margin:0;overflow-wrap:anywhere}.entity-edit-drawer .unsaved-dot{background:#d8b06624;background:var(--accent-tint,#d8b06624);border-radius:10px;color:#d8b066;color:var(--accent,#d8b066);font-size:11px;padding:2px 8px;white-space:nowrap}.entity-edit-drawer .drawer-header-actions{align-items:center;display:flex;flex-shrink:0;gap:4px}.entity-edit-drawer .drawer-close{background:#0000;border:none;color:var(--text-muted);cursor:pointer;flex-shrink:0;font-size:1.5rem;line-height:1;padding:0 4px}.entity-edit-drawer .drawer-close:hover{color:var(--text-primary)}.entity-edit-drawer .drawer-open-canvas{align-items:center;background:#0000;border:1px solid var(--border);border-radius:6px;color:var(--text-muted);cursor:pointer;display:flex;height:28px;justify-content:center;padding:0;width:28px}.entity-edit-drawer .drawer-open-canvas .material-symbols-outlined{font-size:18px}.entity-edit-drawer .drawer-open-canvas:hover{border-color:#d8b066;border-color:var(--accent,#d8b066);color:#d8b066;color:var(--accent,#d8b066)}.entity-edit-drawer .edit-content{flex:1 1;gap:0;overflow-y:auto;padding:8px 16px 16px}.entity-edit-drawer .fields-list{display:flex;flex-direction:column}.entity-edit-drawer .drawer-footer{align-items:center;border-top:1px solid var(--border);display:flex;flex-shrink:0;gap:10px;padding:12px 16px}.entity-edit-drawer .drawer-footer .footer-spacer{flex:1 1}.entity-edit-drawer .drawer-footer .action-btn.icon-only{line-height:1;padding:8px}.entity-edit-drawer .drawer-footer .action-btn.icon-only .material-symbols-outlined{font-size:18px}.entity-edit-drawer{--field-bg:#24242f;--field-border:#ffffff1a}.entity-edit-drawer .field-row,.entity-edit-drawer .field-row.block{align-items:stretch;background:none;border:none;display:flex;flex-direction:column;gap:6px;margin:0 0 13px;padding:0}.entity-edit-drawer .field-row .field-label,.entity-edit-drawer .field-row.block .field-label{align-items:center;color:var(--text-secondary)!important;display:flex;font-size:12px;font-weight:500;gap:4px;margin:0;width:auto}.entity-edit-drawer .field-row .field-required{color:var(--accent);margin-left:2px}.entity-edit-drawer .field-row .field-input-group{align-items:stretch;display:flex;flex:1 1;gap:6px;min-width:0}.entity-edit-drawer .field-row .form-input,.entity-edit-drawer .field-row .form-textarea{background:var(--field-bg)!important;border:1px solid var(--field-border)!important;border-radius:7px;flex:1 1;font-size:13px;padding:9px 11px}.entity-edit-drawer .field-row .form-input:hover,.entity-edit-drawer .field-row .form-textarea:hover{border-color:#ffffff2e!important}.entity-edit-drawer .field-row .form-input:focus,.entity-edit-drawer .field-row .form-textarea:focus{border-color:var(--accent)!important;box-shadow:0 0 0 3px var(--accent-tint)}.entity-edit-drawer .field-row .form-textarea{min-height:72px}.entity-edit-drawer .field-row .form-textarea:placeholder-shown{min-height:40px}.entity-edit-drawer .field-row .form-textarea:focus{min-height:88px}.entity-edit-drawer .autofill-card{align-items:center;background:var(--accent-tint);border:1px solid #c9a76a66;border-radius:8px;color:var(--text-primary);cursor:pointer;display:flex;gap:10px;margin:2px 0 12px;padding:10px 12px;text-align:left;transition:background .15s,border-color .15s;width:100%}.entity-edit-drawer .autofill-card:hover:not(:disabled){background:#c9a76a29;border-color:var(--accent)}.entity-edit-drawer .autofill-card:disabled{cursor:default;opacity:.7}.entity-edit-drawer .autofill-card .material-symbols-outlined{color:var(--accent);flex-shrink:0;font-size:20px}.entity-edit-drawer .autofill-card-text{display:flex;flex-direction:column;line-height:1.25;min-width:0}.entity-edit-drawer .autofill-card-title{font-size:13px;font-weight:600}.entity-edit-drawer .autofill-card-hint{color:var(--text-muted);font-size:10.5px}.entity-edit-drawer .fld-head{align-items:center;display:flex;gap:8px;justify-content:space-between}.entity-edit-drawer .fld-head .field-label{flex:1 1 auto;min-width:0}.entity-edit-drawer .fld-actions{align-items:center;display:flex;flex-shrink:0;gap:6px}.entity-edit-drawer .fld-gen-btn{align-items:center;background:var(--accent-tint);border:1px solid #c9a76a66;border-radius:6px;color:var(--accent);cursor:pointer;display:inline-flex;font-size:11.5px;font-weight:600;gap:4px;padding:3px 9px;transition:background .15s,border-color .15s,color .15s;white-space:nowrap}.entity-edit-drawer .fld-gen-btn:hover:not(:disabled){background:var(--accent);border-color:var(--accent);color:var(--accent-foreground)}.entity-edit-drawer .fld-gen-btn:disabled{cursor:default;opacity:.5}.entity-edit-drawer .fld-gen-btn .material-symbols-outlined{font-size:14px}.entity-edit-drawer .fld-regen-btn{align-items:center;background:#0000;border:none;border-radius:5px;color:var(--text-muted);cursor:pointer;display:inline-flex;justify-content:center;opacity:0;padding:2px;transition:opacity .15s,color .15s,background .15s}.entity-edit-drawer .field-row:hover .fld-regen-btn,.entity-edit-drawer .fld-regen-btn:focus-visible{opacity:.7}.entity-edit-drawer .fld-regen-btn:hover:not(:disabled){background:var(--accent-tint);color:var(--accent);opacity:1}.entity-edit-drawer .fld-regen-btn:disabled{cursor:default;opacity:0}.entity-edit-drawer .fld-regen-btn .material-symbols-outlined{font-size:16px}.entity-edit-drawer .ai-badge{align-items:center;animation:aiBadgeIn .2s ease-out;background:var(--accent-tint);border:1px solid #c9a76a66;border-radius:10px;color:var(--accent);display:inline-flex;font-size:10px;font-weight:700;gap:3px;letter-spacing:.04em;line-height:1.5;margin:0;opacity:1;padding:1px 7px 1px 5px}.entity-edit-drawer .ai-badge .material-symbols-outlined{font-size:12px}@keyframes aiBadgeIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.entity-edit-drawer .ai-spinner{animation:spin .7s linear infinite;border:2px solid #c9a76a40;border-radius:50%;border-top:2px solid var(--accent);flex-shrink:0;height:14px;width:14px}.entity-edit-drawer .form-input.ai-filled,.entity-edit-drawer .form-textarea.ai-filled{background:var(--accent-tint);border-color:#c9a76a73}.entity-view .proceed-btn{background:var(--accent);border:none;border-radius:6px;border-radius:var(--radius-sm,6px);color:var(--accent-foreground);cursor:pointer;flex-shrink:0;font-size:.8rem;font-weight:600;padding:.4rem .85rem;transition:background .15s ease,transform .15s ease;white-space:nowrap}.entity-view .proceed-btn:hover{background:var(--accent-hover);transform:translateY(-1px)}.offschema-repair{background:#fff8e6;background:var(--warning-bg,#fff8e6);border:1px solid #e6c07a;border:1px solid var(--warning-border,#e6c07a);border-radius:6px;border-radius:var(--radius-sm,6px);display:flex;flex-direction:column;gap:.65rem;margin-bottom:1rem;padding:.85rem}.offschema-repair-head{align-items:flex-start;display:flex;gap:.5rem}.offschema-repair-head .material-symbols-outlined{color:#b8860b;color:var(--warning-fg,#b8860b);font-size:20px}.offschema-repair-head p{font-size:.85rem;line-height:1.4;margin:0}.offschema-repair-row{display:flex;flex-direction:column;gap:.25rem}.offschema-add-type{align-self:flex-start}.type-select-empty-note{border:1px dashed #d0d7de;border:1px dashed var(--border-color,#d0d7de);border-radius:6px;border-radius:var(--radius-sm,6px);display:flex;flex-direction:column;gap:.5rem;padding:.75rem}.type-select-empty-note p{color:#6c757d;color:var(--text-secondary,#6c757d);font-size:.85rem;margin:0}.type-select-empty-note .action-btn{align-self:flex-start}.entity-name-link{align-items:center;background:none;border:none;color:inherit;cursor:pointer;display:inline-flex;font:inherit;font-weight:700;margin:0;padding:0;text-align:left}.entity-name-link:hover{text-decoration:underline}.entity-name-link:focus-visible{border-radius:2px;outline:2px solid #667eea;outline:2px solid var(--color-primary,#667eea);outline-offset:2px}.entity-match-lang{background:#ffffff14;border-radius:3px;color:#fff9;font-size:10px;font-weight:600;letter-spacing:.04em;margin-left:6px;padding:1px 5px;text-transform:uppercase;vertical-align:middle}.reference-derived-filter-btn{border:2px solid var(--color-border);border-radius:var(--radius-sm)}.reference-derived-filter-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:var(--accent-primary-foreground)}.reference-derived-badge{background:#ffffff1f;border:1px solid #ffffff2e;border-radius:3px;color:#ffffffb3;cursor:help;font-size:10px;font-weight:600;letter-spacing:.04em;padding:1px 5px;text-transform:uppercase}.entity-view .entity-search-bar{flex-wrap:wrap}.entity-search-field{align-items:center;background:var(--color-surface);background:var(--surface-input,var(--color-surface));border:1px solid var(--semantic-border);border-radius:8px;border-radius:var(--radius-md,8px);display:flex;flex:1 1 420px;gap:8px;gap:var(--spacing-sm,8px);min-height:38px;min-width:0;padding:3px 4px}.entity-search-field:focus-within{border-color:var(--accent-primary)}.entity-search-field .search-mode-toggle{background:#0000;background:var(--surface-inset,#0000);border:0;border-radius:6px;border-radius:var(--radius-sm,6px);padding:2px}.entity-search-field .search-mode-btn{background:#0000;border-radius:4px;border-radius:var(--radius-sm,4px);font-size:12px;padding:4px 10px}.entity-search-field .search-mode-btn+.search-mode-btn{border-left:0}.entity-search-field .search-mode-btn.active{background:var(--surface-hover);background:var(--selection-surface,var(--surface-hover));color:var(--accent-primary)}.entity-search-field .semantic-search-form .search-input,.entity-search-field>.search-input{background:#0000;border:0;box-shadow:none;flex:1 1;min-width:0;padding:6px 4px;width:auto}.entity-search-field .search-input:focus{box-shadow:none}.entity-search-field .semantic-search-form{min-width:0}.entity-search-field .semantic-search-btn{padding:6px 12px}.entity-view .entity-search-bar .entity-history-controls{margin-left:auto}.entity-active-filters{align-items:center;display:flex;flex-shrink:0;flex-wrap:wrap;font-size:13px;gap:8px;gap:var(--spacing-sm,8px);padding:8px 32px;padding:var(--spacing-sm,8px) var(--spacing-2xl,32px)}.entity-active-filters__label{color:var(--semantic-text-secondary)}.entity-active-filters__chip{align-items:center;background:#0000;background:var(--selection-surface,#0000);border:1px solid var(--accent-primary);border-radius:13px;color:var(--semantic-text-primary);cursor:pointer;display:inline-flex;font:inherit;font-size:12px;gap:4px;min-height:26px;padding:0 6px 0 10px}.entity-active-filters__chip .material-symbols-outlined{font-size:15px}.world-entities-view{color:var(--semantic-text-primary);margin:0 auto;max-width:90rem}.world-entities-view .entity-search-bar{gap:.65rem;padding:.75rem 1rem}@media (max-width:1060px){.world-entities-view .entity-search-bar{flex-wrap:wrap}}.world-entities-view .entity-content-area{border-radius:.5rem}.world-entities-view .empty-state{background:var(--surface-passive);border:1px solid var(--semantic-border);margin:2rem auto;max-width:44rem;padding:2.5rem 1.5rem;text-align:center}.world-entities-view .empty-actions{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center}@media (max-width:720px){.world-entities-view{padding-inline:.75rem}.world-entities-view .entity-search-bar{flex-wrap:wrap}}.graph-canvas{height:100%;overflow:hidden;position:relative;width:100%}.graph-canvas.mode-select{cursor:crosshair}.graph-canvas.is-loading,.graph-canvas.is-loading *{cursor:wait!important}.graph-canvas.mode-select:active{cursor:crosshair}.graph-canvas.mode-pan{cursor:grab}.graph-canvas.mode-pan:active{cursor:grabbing}.graph-background-text{color:rgba(15,23,42,.035);font-size:clamp(72px,18vw,220px);font-weight:700;left:50%;letter-spacing:.08em;pointer-events:none;position:absolute;text-transform:uppercase;top:50%;transform:translate(-50%,-50%);-webkit-user-select:none;user-select:none;white-space:nowrap;z-index:-1}.graph-content{height:100%;isolation:isolate;position:relative;width:100%;will-change:transform;z-index:1}.graph-connections-svg{height:100%;left:0;overflow:visible;pointer-events:none;position:absolute;top:0;width:100%}.graph-connection{cursor:pointer;pointer-events:all}.graph-connection path{transition:stroke-width .2s ease}.graph-connection:hover path{stroke-width:3;stroke:#94a3b8e6}.graph-connection-temp path{pointer-events:none;transition:none!important}.connection-label{pointer-events:none;-webkit-user-select:none;user-select:none}.connection-label-group{cursor:pointer;pointer-events:all}.connection-label-group rect{transition:fill .2s ease,stroke .2s ease,stroke-width .2s ease}.connection-label-group text{transition:fill .2s ease,font-weight .2s ease}.connection-label-group:hover rect{fill:#334155fa;stroke:#94a3b8cc;stroke-width:1.5}.connection-label-group:hover text{fill:#f1f5f9;font-weight:600}.graph-node{border-radius:12px;cursor:move;position:absolute;transition:box-shadow .15s ease;-webkit-user-select:none;user-select:none;z-index:5}.graph-node:hover{box-shadow:0 4px 12px #0000004d;z-index:10}.graph-node.selected{box-shadow:0 0 0 2px #667eeacc,0 6px 16px #0006;z-index:20}.port{background:#4a5568;border:2px solid #2d3748;border-radius:50%;cursor:pointer;height:14px;position:absolute;top:calc(50% - 7px);transition:all .2s ease;width:14px;z-index:40}.port:hover{background:#667eea;border-color:#667eea;transform:scale(1.2)}.port-in{left:-7px}.port-out{right:-7px}.graph-node.branch-node-container{overflow:visible}.selection-box{background:#667eea1a;border:2px dashed #667eeacc;border-radius:2px;contain:strict;left:0;pointer-events:none;position:absolute;top:0;will-change:transform,width,height;z-index:100}.resize-handle{background:#0000;border:none;height:16px;position:absolute;width:16px;z-index:30}.resize-nw{cursor:nwse-resize;left:-8px;top:-8px}.resize-ne{cursor:nesw-resize;right:-8px;top:-8px}.resize-sw{bottom:-8px;cursor:nesw-resize;left:-8px}.resize-se{bottom:-8px;cursor:nwse-resize;right:-8px}.resize-n{top:-6px}.resize-n,.resize-s{cursor:ns-resize;height:12px;left:16px;right:16px;width:auto}.resize-s{bottom:-6px}.resize-e{right:-6px}.resize-e,.resize-w{bottom:16px;cursor:ew-resize;height:auto;top:16px;width:12px}.resize-w{left:-6px}.rel-type-picker{position:relative;width:100%}.rel-type-input{background:#ffffff0f;background:var(--field-bg,#ffffff0f);border:1px solid #ffffff2e;border:1px solid var(--field-border,#ffffff2e);border-radius:6px;box-sizing:border-box;color:#f0f0f0;color:var(--text-primary,#f0f0f0);font-size:13px;padding:8px 10px;width:100%}.rel-type-input:focus{border-color:#667eea;outline:none}.rel-type-menu{background:#1e1e1e;border:1px solid #ffffff26;border-radius:6px;box-shadow:0 8px 24px #0006;left:0;max-height:220px;overflow-y:auto;padding:4px;position:absolute;right:0;top:calc(100% + 4px);z-index:50}.rel-type-add,.rel-type-option{background:#0000;border:none;border-radius:4px;color:#e0e0e0;cursor:pointer;display:block;font-size:13px;padding:7px 9px;text-align:left;width:100%}.rel-type-add:hover,.rel-type-option:hover{background:#667eea2e}.rel-type-add{border-top:1px solid #ffffff14;color:#98c0ff;margin-top:4px}.script-editor{font-family:JetBrains Mono,Fira Code,Cascadia Code,Consolas,monospace;font-size:13px;line-height:1.6;position:relative;width:100%}.script-editor-wrapper{background:#00000059;border:1px solid #ffffff26;border-radius:6px;overflow:hidden}.script-editor-wrapper:focus-within{border-color:#87ceeb80;box-shadow:0 0 0 2px #87ceeb26}.script-editor--disabled{opacity:.6;pointer-events:none}.cm-script-entity-ref{color:gold;cursor:pointer;-webkit-text-decoration:underline dotted #ffd70066;text-decoration:underline dotted #ffd70066}.cm-script-command{color:#87ceeb}.cm-script-variable{color:#ffd93d}.cm-script-dialogue{color:plum}.cm-script-number{color:#7fe0a0}.cm-script-comment{color:#95a5a6;font-style:italic}.cm-script-unknown{-webkit-text-decoration:underline wavy red;text-decoration:underline wavy red}.cm-entity-pill{background:#1a1b2e;border:1px solid #ffd70073;border-radius:3px;color:gold;cursor:pointer;display:inline-block;font-family:JetBrains Mono,Fira Code,Cascadia Code,Consolas,monospace;font-size:12px;line-height:1.5;max-width:180px;overflow:hidden;padding:1px 7px;position:relative;text-overflow:ellipsis;top:-1px;-webkit-user-select:none;user-select:none;vertical-align:middle;white-space:nowrap}.cm-entity-pill:hover{background:#252843;border-color:#ffd700bf}.script-format-label{align-items:center;color:#ffffff59;display:flex;flex-wrap:wrap;font-size:11px;gap:8px;margin-bottom:4px;-webkit-user-select:none;user-select:none}.script-nav-hint{color:#ffffff40;font-size:10px}.script-fetch-status{margin-left:auto}.sfs{border-radius:3px;font-family:JetBrains Mono,Fira Code,monospace;font-size:10px;padding:1px 5px}.sfs--loading{color:#fff6}.sfs--ok{background:#4caf501a;color:#4caf50}.sfs--warn{background:#ff98001a;color:#ff9800;cursor:help}.sfs--error{background:#f443361a;color:#f44336}.property-inspector{background:#2d2d30;border-left:1px solid #3e3e42;box-shadow:-2px 0 8px #0000004d;display:flex;flex-direction:column;height:100vh;overflow:hidden;position:fixed;right:-400px;top:0;transition:right .3s ease-in-out;width:400px;z-index:1000}.property-inspector.open{right:0}.inspector-header{align-items:center;background:#1e1e1e;border-bottom:1px solid #3e3e42;display:flex;flex-shrink:0;justify-content:space-between;padding:1rem}.inspector-title-group{align-items:center;display:flex;gap:.75rem}.inspector-icon{align-items:center;border-radius:8px;display:flex;flex-shrink:0;font-size:1.5rem;height:40px;justify-content:center;line-height:40px;text-align:center;width:40px}.inspector-header h3{color:#fff;font-size:1rem;font-weight:600;margin:0}.inspector-type{color:#9ba1a6;display:block;font-size:.75rem;margin-top:.125rem}.inspector-close-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:#9ba1a6;cursor:pointer;display:flex;justify-content:center;padding:.25rem;transition:all .2s}.inspector-close-btn:hover{background:#3c3c3c;color:#fff}.inspector-close-btn .material-symbols-outlined{font-size:1.25rem}.inspector-content{flex:1 1;overflow-y:auto;padding:1rem}.inspector-saving-indicator{align-items:center;animation:propertyInspectorPulse 1.5s ease-in-out infinite;background:#4caf5026;border:1px solid #4caf504d;border-radius:4px;color:#81c784;display:flex;font-size:.875rem;gap:.5rem;margin-bottom:1rem;padding:.5rem .75rem}.inspector-saving-indicator .material-symbols-outlined{animation:spin 1s linear infinite;font-size:1rem}@keyframes propertyInspectorPulse{0%,to{opacity:1}50%{opacity:.7}}.inspector-field{margin-bottom:1rem}.inspector-label{color:#ccc;display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.inspector-input,.inspector-textarea{background:#1e1e1e;border:1px solid #3e3e42;border-radius:4px;color:#ccc;font-family:inherit;font-size:.875rem;padding:.5rem .75rem;transition:all .2s;width:100%}.inspector-input:focus,.inspector-textarea:focus{background:#252526;border-color:#007acc;outline:none}.inspector-input:disabled{color:#6b7278;cursor:not-allowed;opacity:.5}.inspector-textarea{line-height:1.4;min-height:80px;resize:vertical}.inspector-content::-webkit-scrollbar{width:8px}.inspector-content::-webkit-scrollbar-track{background:#1e1e1e}.inspector-content::-webkit-scrollbar-thumb{background:#3e3e42;border-radius:4px}.inspector-content::-webkit-scrollbar-thumb:hover{background:#4e4e52}.rel-edit-list{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.rel-edit-row{align-items:center;background:#ffffff0d;border-radius:5px;display:flex;gap:8px;justify-content:space-between;padding:5px 8px}.rel-edit-text{color:#e0e0e0;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rel-edit-type{color:#98c0ff;font-weight:600}.rel-edit-arrow{color:#fff6}.rel-edit-del{background:none;border:none;color:#ff6b6b;cursor:pointer;flex-shrink:0;font-size:16px;line-height:1}.rel-edit-del:hover{color:#ff9a9a}.rel-edit-empty{color:#fff6;font-size:12px;padding:4px 2px}.rel-edit-add{border-top:1px solid #ffffff14;display:flex;flex-direction:column;gap:6px;padding-top:8px}.rel-edit-target-search{display:flex;flex-direction:column;gap:4px}.rel-edit-target-results{border:1px solid #ffffff1a;border-radius:6px;display:flex;flex-direction:column;max-height:220px;overflow-y:auto}.rel-edit-target-results button{background:#0000;border:0;color:inherit;cursor:pointer;font-size:13px;padding:6px 8px;text-align:left}.rel-edit-target-results button:hover{background:#667eea2e}.rel-edit-add-btn{align-self:flex-end;background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:6px 16px}.rel-edit-add-btn:disabled{cursor:not-allowed;opacity:.5}.rel-edit-add-btn:not(:disabled):hover{background:#5568d3}@media (max-width:768px){.property-inspector{right:-100%;width:100%}}.context-menu{animation:contextMenuSlideIn .15s ease-out;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 4px 12px #0006;min-width:180px;padding:.25rem 0;position:fixed;z-index:10000}@keyframes contextMenuSlideIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.context-menu-item{align-items:center;background:#0000;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:.875rem;gap:.75rem;padding:.5rem .75rem;text-align:left;transition:background .15s;width:100%}.context-menu-item:hover{background:var(--bg-elevated);color:var(--text-primary)}.context-menu-icon{color:var(--text-secondary);flex-shrink:0;font-size:1.125rem}.context-menu-item:hover .context-menu-icon{color:var(--text-primary)}.rel-modal-overlay{align-items:center;background:#0000008c;display:flex;inset:0;justify-content:center;position:fixed;z-index:200}.rel-modal{background:#18181cfa;border:1px solid #ffffff24;border-radius:10px;box-shadow:0 24px 60px #0009;display:flex;flex-direction:column;max-height:calc(100vh - 64px);overflow:hidden;width:min(640px,calc(100vw - 32px))}.rel-modal-header{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;padding:14px 18px}.rel-modal-title{color:#f0f0f0;font-size:15px;font-weight:700;margin:0}.rel-modal-close{background:none;border:none;color:#999;cursor:pointer;font-size:18px;line-height:1}.rel-modal-close:hover{color:#fff}.rel-modal-body{display:flex;flex-direction:column;gap:14px;overflow-y:auto;padding:16px 18px}.rel-modal-desc{color:#ffffffa6;font-size:13px;line-height:1.5;margin:0}.rel-modal-error{color:#ff9f9f;font-size:13px;margin:0}.rel-modal-footer{border-top:1px solid #ffffff1a;display:flex;gap:10px;justify-content:flex-end;padding:14px 18px}.rel-modal-btn{border:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px}.rel-modal-btn-primary{background:#667eea;color:#fff}.rel-modal-btn-primary:hover:not(:disabled){background:#5568d3}.rel-modal-btn-secondary{background:#0000;border:1px solid #fff3;color:#d8d8d8}.rel-modal-btn-secondary:hover:not(:disabled){border-color:#667eea;color:#fff}.rel-modal-btn-danger{background:#0000;border:1px solid #ff6b6b66;color:#ff6b6b}.rel-modal-btn-danger:hover:not(:disabled){background:#ff6b6b1f}.rel-modal-btn:disabled{cursor:not-allowed;opacity:.5}.rel-vocab-add-row{align-items:center;display:flex;gap:8px}.rel-modal-body input[type=text],.rel-vocab-input{background:#ffffff0f;border:1px solid #ffffff2e;border-radius:6px;color:#f0f0f0;flex:1 1;font-size:13px;padding:7px 10px}.rel-modal-body input[type=text]:focus,.rel-vocab-input:focus{border-color:#667eea;outline:none}.rel-vocab-list{display:flex;flex-direction:column;gap:2px;max-height:340px;overflow-y:auto}.rel-vocab-row{align-items:center;border-radius:6px;display:flex;gap:8px;padding:8px 6px}.rel-vocab-row:hover{background:#ffffff0a}.rel-vocab-tag{align-items:center;color:#f0f0f0;display:flex;flex:1 1;font-size:13px;gap:8px;min-width:0}.rel-vocab-tag-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rel-vocab-badge{background:#ffffff14;border-radius:4px;color:#ffffff8c;flex-shrink:0;font-size:10px;letter-spacing:.4px;padding:2px 6px;text-transform:uppercase}.rel-vocab-badge.pinned{background:#eab30829;color:#eab308}.rel-vocab-actions{display:flex;flex-shrink:0;gap:6px}.rel-vocab-icon-btn{align-items:center;background:none;border:none;border-radius:4px;color:#ffffff80;cursor:pointer;display:flex;padding:4px}.rel-vocab-icon-btn:hover{background:#ffffff14;color:#fff}.rel-vocab-icon-btn:disabled{cursor:not-allowed;opacity:.4}.rel-vocab-icon-btn.danger:hover{color:#ff6b6b}.rel-vocab-empty{color:#ffffff73;font-size:13px;padding:12px 4px}.rel-draft-summary{color:#fff9;font-size:12px}.rel-draft-table-wrap{border:1px solid #ffffff1a;border-radius:6px;max-height:360px;overflow-y:auto}.rel-draft-table{border-collapse:collapse;font-size:12.5px;width:100%}.rel-draft-table th{background:#18181cfa;border-bottom:1px solid #ffffff1a;color:#ffffff80;font-weight:600;padding:7px 10px;position:sticky;text-align:left;top:0}.rel-draft-table td{border-bottom:1px solid #ffffff0f;color:#e0e0e0;padding:7px 10px}.rel-draft-source-llm{color:#98c0ff}.rel-draft-source-deterministic{color:#ffffff80}.relationship-view-container{background:var(--bg-base);height:100%;overflow:hidden;position:relative;width:100%}.relationship-view-loading{align-items:center;color:var(--text-primary);display:flex;flex-direction:column;font-size:18px;height:100vh;justify-content:center}.loading-spinner{border:3px solid var(--border);border-top-color:var(--accent)}.relationship-node{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1e1e1ef2;border:2px solid #ffffff1a;border-radius:12px;display:flex;height:100%;justify-content:center;padding:12px;transition:all .2s ease;width:100%}.relationship-node.selected{border-color:#667eea;box-shadow:0 0 0 3px #667eea33}.node-header{width:100%}.node-icon{font-size:18px;height:32px;width:32px}.node-icon.material-symbols-outlined{font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 18}.relationship-view-container .node-title{color:#f0f0f0;display:block;font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.relationship-view-container .node-subtitle{color:#ffffff80;display:block;font-size:10px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.edge-editor{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#18181cfa;border:1px solid #ffffff24;border-radius:10px;box-shadow:0 12px 30px #00000080;left:50%;padding:14px;position:absolute;top:16px;transform:translateX(-50%);width:320px;z-index:40}.edge-editor-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:6px}.edge-editor-title{color:#f0f0f0;font-size:13px;font-weight:600}.edge-arrow{color:#98c0ff}.edge-editor-close{background:none;border:none;color:#999;cursor:pointer;font-size:18px;line-height:1}.edge-editor-close:hover{color:#fff}.edge-editor-label{color:#ffffff80;display:block;font-size:11px;letter-spacing:.4px;margin:10px 0 4px;text-transform:uppercase}.edge-editor-desc{background:#ffffff0f;border:1px solid #ffffff2e;border-radius:6px;box-sizing:border-box;color:#f0f0f0;font-family:inherit;font-size:13px;padding:8px 10px;resize:vertical;width:100%}.edge-editor-desc:focus{border-color:#667eea;outline:none}.edge-editor-actions{display:flex;justify-content:space-between;margin-top:14px}.edge-editor-delete,.edge-editor-save{border:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:600;padding:7px 16px}.edge-editor-save{background:#667eea;color:#fff}.edge-editor-save:hover{background:#5568d3}.edge-editor-delete{background:#0000;border:1px solid #ff6b6b66;color:#ff6b6b}.edge-editor-delete:hover{background:#ff6b6b1f}.edge-editor-left-actions{display:flex;gap:8px}.edge-editor-flip{background:#0000;border:1px solid #fff3;border-radius:6px;color:#d8d8d8;cursor:pointer;font-size:13px;font-weight:600;padding:7px 14px}.edge-editor-flip:hover{border-color:#667eea;color:#fff}.connect-bar{align-items:center;background:#18181cfa;border:1px solid #ffffff24;border-radius:999px;bottom:24px;box-shadow:0 12px 30px #00000080;display:flex;gap:12px;left:50%;padding:8px 8px 8px 16px;position:absolute;transform:translateX(-50%);z-index:40}.connect-bar-label{color:#f0f0f0;font-size:13px}.connect-bar-btn{background:#667eea;border:none;border-radius:999px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:6px 16px}.connect-bar-btn:hover{background:#5568d3}.bulk-edge-bar{align-items:center;background:#18181cfa;border:1px solid #ffffff24;border-radius:999px;bottom:24px;box-shadow:0 12px 30px #00000080;display:flex;gap:8px;left:50%;padding:8px 8px 8px 16px;position:absolute;transform:translateX(-50%);z-index:40}.bulk-edge-count{color:#f0f0f0;font-size:13px;margin-right:4px}.bulk-edge-btn{background:#667eea;border:none;border-radius:999px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:6px 14px}.bulk-edge-btn:hover{background:#5568d3}.bulk-edge-delete{background:#c0392b}.bulk-edge-delete:hover{background:#a93226}.bulk-edge-clear{background:#0000;border:none;border-radius:999px;color:#bbb;cursor:pointer;font-size:13px;padding:6px 12px}.bulk-edge-clear:hover{color:#fff}.rel-undo-toast{align-items:center;display:flex;gap:12px}.rel-undo-btn{background:#667eea;border:1px solid #667eea;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:4px 12px}.rel-undo-btn:hover{background:#5568d3}.rel-nav-controls{align-items:flex-start;display:flex;flex-wrap:wrap;gap:8px;left:12px;max-width:calc(100% - 24px);position:absolute;top:12px;z-index:35}.rel-nav-search{position:relative}.rel-nav-input{background:#18181cf5;border:1px solid #ffffff29;border-radius:6px;box-sizing:border-box;color:#f0f0f0;font-size:13px;padding:7px 10px;width:200px}.rel-nav-input:focus{border-color:#667eea;outline:none}.rel-nav-search-results{background:#1e1e1e;border:1px solid #ffffff26;border-radius:6px;box-shadow:0 8px 24px #00000073;left:0;max-height:260px;overflow-y:auto;padding:4px;position:absolute;right:0;top:calc(100% + 4px)}.rel-nav-search-item{align-items:center;background:#0000;border:none;border-radius:4px;color:#e0e0e0;cursor:pointer;display:flex;font-size:13px;gap:8px;justify-content:space-between;padding:7px 9px;text-align:left;width:100%}.rel-nav-search-item:hover{background:#667eea2e}.rel-nav-search-type{color:#fff6;font-size:10px;text-transform:uppercase}.rel-nav-search-empty{color:#ffffff73;font-size:12px;padding:8px 9px}.rel-nav-dropdown{position:relative}.rel-nav-reset,.rel-nav-seg-btn,.rel-nav-toggle{background:#18181cf5;border:1px solid #ffffff29;border-radius:6px;color:#d8d8d8;cursor:pointer;font-size:12px;font-weight:600;padding:7px 12px;white-space:nowrap}.rel-nav-toggle.active{background:#667eea38;border-color:#667eea;color:#fff}.rel-nav-reset:hover,.rel-nav-toggle:hover{border-color:#ffffff4d}.rel-nav-menu{background:#1e1e1e;border:1px solid #ffffff26;border-radius:6px;box-shadow:0 8px 24px #00000073;left:0;max-height:280px;min-width:180px;overflow-y:auto;padding:6px;position:absolute;top:calc(100% + 4px)}.rel-nav-check{align-items:center;border-radius:4px;color:#e0e0e0;cursor:pointer;display:flex;font-size:13px;gap:8px;padding:5px 6px}.rel-nav-check:hover{background:#ffffff0d}.rel-nav-seg{border:1px solid #ffffff29;border-radius:6px;display:inline-flex;overflow:hidden}.rel-nav-seg-btn{border:none;border-radius:0;border-right:1px solid #ffffff1f}.rel-nav-seg-btn:last-child{border-right:none}.rel-nav-seg-btn.active{background:#667eea4d;color:#fff}.rel-nav-view-row{align-items:center;border-radius:4px;display:flex;gap:4px;padding:2px}.rel-nav-view-row:hover{background:#ffffff0d}.rel-nav-view-name{color:#e0e0e0;flex:1 1;font-size:13px;overflow:hidden;padding:6px 8px;text-align:left;text-overflow:ellipsis;white-space:nowrap}.rel-nav-view-act,.rel-nav-view-name{background:none;border:none;cursor:pointer}.rel-nav-view-act{align-items:center;border-radius:4px;color:#ffffff73;display:flex;padding:4px}.rel-nav-view-act .material-symbols-outlined{font-size:16px}.rel-nav-view-act:hover{background:#ffffff14;color:#fff}.rel-nav-view-del:hover{color:#ff6b6b}.rel-nav-view-save{background:#0000;border:none;border-top:1px solid #ffffff14;color:#98c0ff;cursor:pointer;display:block;font-size:13px;margin-top:4px;padding:7px 9px;text-align:left;width:100%}.rel-nav-view-save:hover{background:#667eea2e}.relationship-view-container .proceed-btn{background:var(--accent);border:none;border-radius:6px;border-radius:var(--radius-sm,6px);color:var(--accent-foreground);cursor:pointer;flex-shrink:0;font-size:.8rem;font-weight:600;padding:.4rem .85rem;transition:background .15s ease,transform .15s ease;white-space:nowrap}.relationship-view-container .proceed-btn:hover{background:var(--accent-hover);transform:translateY(-1px)}@media (max-width:760px){.rel-nav-controls{flex-wrap:wrap;gap:8px;padding:8px 10px}.rel-nav-search{flex:1 1 100%;min-width:0}.rel-nav-dropdown,.rel-nav-seg{flex:0 0 auto}}.rel-empty-goto{background:var(--accent);border:none;border-radius:6px;border-radius:var(--radius-sm,6px);color:#fff;color:var(--accent-foreground,#fff);cursor:pointer;font-size:.85rem;font-weight:600;margin-top:.75rem;padding:.5rem 1rem}.rel-empty-goto:hover{background:var(--accent-hover)}.rel-interrupted-run{background:#27272a;background:var(--bg-elevated,#27272a);border-radius:6px;bottom:24px;box-shadow:0 4px 20px #0000004d;left:12px;position:absolute;width:min(380px,calc(100% - 24px));z-index:36}.rel-interrupted-run .interrupted-run-notice{margin-top:0}.field-selection-overlay{background:#0000;inset:0;position:fixed;z-index:999}.field-selection-popup{animation:field-popup-in .12s ease-out;background:#1e1e2e;border:1px solid #667eea80;border-radius:10px;box-shadow:0 8px 24px #00000080,0 0 0 1px #667eea33;overflow:hidden;padding:0;position:fixed;width:280px;z-index:1000}@keyframes field-popup-in{0%{opacity:0;transform:scale(.94) translateY(-4px)}to{opacity:1;transform:scale(1) translateY(0)}}.field-selection-header{align-items:center;border-bottom:1px solid #ffffff14;display:flex;justify-content:space-between;padding:10px 12px 8px}.field-selection-title{color:#a0aec0;flex:1 1;font-size:12px;font-weight:600;line-height:1.3;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.field-selection-close{align-items:center;background:none;border:none;border-radius:4px;color:#718096;cursor:pointer;display:flex;flex-shrink:0;padding:2px;transition:color .15s,background .15s}.field-selection-close:hover{background:#ffffff14;color:#e2e8f0}.field-selection-close .material-symbols-outlined{font-size:16px}.field-selection-label{color:#718096;font-size:11px;letter-spacing:.05em;padding:6px 12px 4px;text-transform:uppercase}.field-selection-list{display:flex;flex-direction:column;gap:4px;padding:4px 8px 8px}.field-selection-option{align-items:flex-start;background:#667eea14;border:1px solid #667eea33;border-radius:6px;cursor:pointer;display:flex;flex-direction:column;gap:2px;padding:8px 10px;text-align:left;transition:background .15s,border-color .15s;width:100%}.field-selection-option:hover{background:#667eea33;border-color:#667eea80}.field-option-name{color:#e2e8f0;font-size:13px;font-weight:600}.field-option-hint{color:#718096;font-size:11px}.cp{background:#ffffff05;border:1px solid #ffffff14;border-radius:8px;overflow:hidden}.cp-header{align-items:center;display:flex;gap:8px;padding:6px 8px}.cp-toggle{align-items:center;background:none;border:none;color:#fffc;cursor:pointer;display:inline-flex;font:inherit;font-size:13px;gap:4px;padding:2px 4px}.cp-toggle .material-symbols-outlined{font-size:18px}.cp-summary{align-items:center;display:inline-flex;gap:6px}.cp-chip{background:#ffffff14;border-radius:999px;color:#ffffffb3;font-size:11px;padding:1px 7px}.cp-chip--ok{background:#7fe0a02e;color:#7fe0a0}.cp-chip--error{background:#dc143c33;color:#ff8095}.cp-chip--warn{background:#ffc1072e;color:#ffce5a}.cp-status{align-items:center;color:#fff9;display:inline-flex;font-size:12px;gap:4px;margin-left:auto}.cp-status .material-symbols-outlined{font-size:16px}.cp-status--checking{color:#fff9}.cp-status--unchecked{color:#fff6}.cp-status--ready{color:#7fe0a0}.cp-status--needs-attention{color:#ff8095}.cp-rebuild-btn{align-items:center;background:none;border:1px solid #ffffff24;border-radius:6px;color:#ffffff8c;cursor:pointer;display:inline-flex;font:inherit;font-size:11px;padding:2px 8px}.cp-rebuild-btn:hover:not(:disabled){border-color:#ffffff4d;color:#ffffffd9}.cp-rebuild-btn:disabled{cursor:default;opacity:.5}.cp-spin{animation:cp-spin .9s linear infinite}@keyframes cp-spin{to{transform:rotate(1turn)}}.cp-body{border-top:1px solid #ffffff0f;display:flex;flex-direction:column;gap:6px;max-height:280px;overflow-y:auto;padding:6px 8px 8px}.cp-empty,.cp-fail{color:#ffffff73;font-size:12px;font-style:italic;padding:4px 2px}.cp-fail{color:#ff8095;font-style:normal}.cp-stmt{background:#ffffff05;border-left:2px solid #87ceeb66;border-radius:0 6px 6px 0;padding:4px 8px}.cp-stmt--error{border-left-color:#dc143c}.cp-stmt-head{align-items:center;display:flex;flex-wrap:wrap;font-size:12px;gap:8px}.cp-lineno{color:#ffffff4d;font-size:11px;min-width:22px}.cp-cmd{color:#87ceeb;font-family:JetBrains Mono,monospace}.cp-dialogue-tag{color:plum;font-size:11px;font-style:italic}.cp-subject{color:gold}.cp-ser{color:#7fe0a0;font-family:JetBrains Mono,monospace;font-size:11px;margin-left:auto}.cp-args,.cp-guards{display:flex;flex-wrap:wrap;gap:6px;margin-top:3px}.cp-arg,.cp-guard{background:#ffffff0d;border-radius:4px;color:#ffffffc7;font-family:JetBrains Mono,monospace;font-size:11px;padding:1px 6px}.cp-arg em{color:#ffffff73;font-style:normal}.cp-guard{background:#ffd93d1a;color:#ffd93d}.cp-unresolved{-webkit-text-decoration:underline wavy #ff8095cc;text-decoration:underline wavy #ff8095cc;text-underline-offset:2px}.cp-dialogue{color:plum;font-size:12px;margin-top:3px}.cp-note{align-items:center;border-radius:4px;display:flex;font-size:11.5px;gap:5px;margin-top:4px;padding:2px 6px}.cp-note .material-symbols-outlined{font-size:14px}.cp-note--error{background:#dc143c24;color:#ff8095}.cp-note--warning{background:#ffc1071f;color:#ffce5a}.dpp{background:var(--bg-panel);border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-md,8px);font-size:13px}.dpp-header{align-items:center;border-bottom:1px solid var(--border);display:flex;font-size:11px;gap:8px;padding:7px 10px}.dpp-locale{background:#c9a76a1a;background:var(--accent-tint,#c9a76a1a);border-radius:999px;color:var(--accent);font-weight:500;padding:1px 7px}.dpp-title{color:var(--text-primary);font-weight:500}.dpp-count{color:var(--text-muted)}.dpp-header-actions{display:flex;gap:6px;margin-left:auto}.dpp-empty{color:var(--text-muted);font-size:12px;padding:14px}.dpp-row{border-bottom:1px solid #ffffff0d;border-bottom:1px solid var(--border-subtle,#ffffff0d)}.dpp-row:last-of-type{border-bottom:none}.dpp-row.is-editing{background:var(--bg-hover)}.dpp-row-main{align-items:flex-start;display:flex;gap:8px;padding:8px 10px}.dpp-linenum{color:var(--text-muted);font-size:11px;min-width:22px;padding-top:2px}.dpp-speaker{background:#98fb981f;border-radius:999px;color:#98fb98;flex-shrink:0;font-size:11px;line-height:17px;padding:1px 8px;white-space:nowrap}.dpp-text{flex:1 1;min-width:0}.dpp-line{color:var(--text-primary);line-height:1.5}.dpp-line.is-untranslated{border-bottom:1px dotted var(--text-muted);color:var(--text-secondary);display:inline-block}.dpp-base{color:var(--text-muted);font-size:11px;line-height:1.45;margin-top:3px}.dpp-input{background:var(--bg-base);border:1px solid var(--accent);border-radius:6px;box-sizing:border-box;color:var(--text-primary);font-family:inherit;font-size:13px;line-height:1.5;padding:6px 9px;resize:vertical;width:100%}.dpp-chip{border-radius:999px;flex-shrink:0;font-size:10px;line-height:17px;padding:1px 8px;white-space:nowrap}.dpp-chip--proofed{background:#7dc98a1f;color:#7dc98a}.dpp-chip--machine{background:#378add26;color:#85b7eb}.dpp-chip--stale{background:#ef9f2721;color:#ef9f27}.dpp-chip--transcreated{background:#dda0dd21;color:plum}.dpp-chip--untranslated{background:#ffffff12;color:var(--text-muted)}.dpp-chip--orphaned{background:#e24b4a21;color:#e24b4a}.dpp-icon{background:#0000;border:none;color:var(--text-muted);cursor:pointer;flex-shrink:0;line-height:1;padding:2px}.dpp-icon:hover{color:var(--accent)}.dpp-icon .material-symbols-outlined{font-size:15px}.dpp-row-actions{display:flex;gap:6px;justify-content:flex-end;padding:0 10px 9px}.dpp-btn{align-items:center;background:#0000;border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-family:inherit;font-size:11px;gap:4px;padding:3px 10px}.dpp-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.dpp-btn:disabled{cursor:default;opacity:.6}.dpp-btn .material-symbols-outlined{font-size:14px}.dpp-btn.is-quiet{border-color:#0000;color:var(--text-muted)}.dpp-btn.is-primary{background:var(--accent);border-color:var(--accent);color:#171511;color:var(--accent-fg,#171511);font-weight:500}.dpp-btn.is-primary:hover:not(:disabled){background:#d8b87f;background:var(--accent-hover,#d8b87f)}.dpp-note{border-radius:0;font-size:11px;line-height:1.5;margin:0 10px 9px 40px;padding:7px 10px}.dpp-note.is-stale{background:#ef9f270f;border-left:2px solid #ef9f27;color:var(--text-secondary)}.dpp-note.is-drift{background:#c9a76a12;background:var(--accent-tint,#c9a76a12);border-left:2px solid var(--accent)}.dpp-note-text{align-items:flex-start;color:var(--accent);display:flex;gap:5px;margin-bottom:7px}.dpp-note-text .material-symbols-outlined{font-size:14px}.dpp-note-actions{display:flex;flex-wrap:wrap;gap:6px}.dpp-footer{align-items:center;border-top:1px solid var(--border);color:var(--text-muted);display:flex;font-size:11px;gap:5px;padding:7px 10px}.dpp-footer .material-symbols-outlined{font-size:13px}.action-editor{background:#1e1e2e;background:var(--bg-secondary,#1e1e2e);border-radius:12px;box-shadow:0 24px 64px #0009;color:#e0e0e0;color:var(--text-primary,#e0e0e0);display:flex;flex-direction:column;max-height:90vh;max-width:95vw;overflow:hidden;width:780px}.action-editor-header{align-items:center;background:#16162a;background:var(--bg-tertiary,#16162a);border-bottom:1px solid #ffffff14;border-bottom:1px solid var(--border-color,#ffffff14);display:flex;flex-shrink:0;gap:10px;padding:16px 20px}.action-editor-icon{color:#20b2aa;flex-shrink:0;font-size:22px}.action-editor-type-badge{background:#20b2aa26;border:1px solid #20b2aa4d;border-radius:4px;color:#20b2aa;flex-shrink:0;font-size:10px;font-weight:700;letter-spacing:.1em;padding:2px 7px;text-transform:uppercase}.action-editor-name{background:#0000;border:none;color:#e0e0e0;color:var(--text-primary,#e0e0e0);flex:1 1;font-size:18px;font-weight:600;min-width:0;outline:none}.action-editor-name:focus{background:#ffffff0a;border-radius:6px;padding:2px 6px}.action-editor-save-status{flex-shrink:0;font-size:12px;transition:color .2s}.save-status--saved{color:#4caf50}.save-status--saving{color:#888}.save-status--unsaved{color:#aaa}.save-status--error{color:#f44336}.action-editor-close{align-items:center;background:none;border:none;border-radius:6px;color:#888;color:var(--text-secondary,#888);cursor:pointer;display:flex;padding:4px;transition:background .15s,color .15s}.action-editor-close:hover{background:#ffffff14;color:#e0e0e0;color:var(--text-primary,#e0e0e0)}.action-editor-body{display:flex;flex:1 1;flex-direction:column;gap:0;overflow-y:auto}.action-editor-section{border-bottom:1px solid #ffffff0f;border-bottom:1px solid var(--border-color,#ffffff0f);padding:16px 20px}.action-editor-section:last-child{border-bottom:none}.action-editor-script-section{flex:1 1}.action-editor-label{color:#888;color:var(--text-secondary,#888);display:block;font-size:11px;font-weight:600;letter-spacing:.08em;margin-bottom:8px;text-transform:uppercase}.action-editor-description{background:#ffffff0d;background:var(--bg-input,#ffffff0d);border:1px solid #ffffff1a;border:1px solid var(--border-color,#ffffff1a);border-radius:8px;box-sizing:border-box;color:#e0e0e0;color:var(--text-primary,#e0e0e0);font-family:inherit;font-size:14px;padding:10px 12px;resize:vertical;transition:border-color .15s;width:100%}.action-editor-description:focus{border-color:#ffffff40;outline:none}.action-editor-cast-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.action-editor-cast-header .action-editor-label{margin-bottom:0}.action-editor-add-cast-btn{align-items:center;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:6px;color:#aaa;color:var(--text-secondary,#aaa);cursor:pointer;display:flex;font-size:12px;gap:4px;padding:4px 10px;transition:background .15s}.action-editor-add-cast-btn:hover{background:#ffffff1f;color:#e0e0e0;color:var(--text-primary,#e0e0e0)}.action-editor-add-cast-btn .material-symbols-outlined{font-size:16px}.action-editor-cast-list{display:flex;flex-wrap:wrap;gap:8px;min-height:28px}.action-editor-cast-empty{color:#666;color:var(--text-secondary,#666);font-size:13px;font-style:italic}.action-editor-cast-chip{align-items:center;background:#98fb981f;border:1px solid #98fb9840;border-radius:20px;color:#98fb98;display:inline-flex;font-size:13px;gap:4px;padding:4px 10px 4px 8px}.action-editor-cast-chip .material-symbols-outlined{font-size:15px}.action-editor-cast-remove{align-items:center;background:none;border:none;color:#98fb9880;cursor:pointer;display:flex;margin-left:2px;padding:0;transition:color .15s}.action-editor-cast-remove:hover{color:#98fb98}.action-editor-cast-remove .material-symbols-outlined{font-size:14px}.action-editor-cast-picker{background:#ffffff0a;border:1px solid #ffffff14;border-radius:8px;display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;padding:10px}.action-editor-cast-picker-item{align-items:center;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:20px;color:#aaa;color:var(--text-secondary,#aaa);cursor:pointer;display:inline-flex;font-size:13px;gap:4px;padding:4px 12px 4px 8px;transition:background .15s,color .15s}.action-editor-cast-picker-item:hover{background:#98fb981f;border-color:#98fb984d;color:#98fb98}.action-editor-cast-picker-item .material-symbols-outlined{font-size:15px}.action-editor-loading{align-items:center;color:#888;color:var(--text-secondary,#888);display:flex;font-size:14px;gap:10px;justify-content:center;padding:60px 20px}.spinning{animation:spin 1s linear infinite;display:inline-block}.action-card{background:#1e1e2e;background:var(--bg-secondary,#1e1e2e);border:1px solid #20b2aa47;border-radius:12px;box-sizing:border-box;color:#e0e0e0;color:var(--text-primary,#e0e0e0);display:flex;flex-direction:column;overflow:hidden}.action-card--awake{border-color:#20b2aa99;box-shadow:0 0 0 1px #20b2aa40}.action-card--sleeping{cursor:pointer}.action-card-header{align-items:center;background:#16162a;background:var(--bg-tertiary,#16162a);border-bottom:1px solid #ffffff14;border-bottom:1px solid var(--border-color,#ffffff14);cursor:move;display:flex;flex-shrink:0;gap:8px;padding:10px 12px}.action-card-icon{color:#20b2aa;flex-shrink:0;font-size:18px}.action-card-badge{background:#20b2aa26;border:1px solid #20b2aa4d;border-radius:4px;color:#20b2aa;flex-shrink:0;font-size:9px;font-weight:700;letter-spacing:.1em;padding:2px 6px;text-transform:uppercase}.action-card-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.action-card-name,.action-card-name-input{color:#e0e0e0;color:var(--text-primary,#e0e0e0);flex:1 1;font-size:14px;font-weight:600;min-width:0}.action-card-name-input{background:#0000;border:none;cursor:text;outline:none}.action-card-name-input:focus{background:#ffffff0d;border-radius:5px;padding:1px 5px}.action-card-save{flex-shrink:0;font-size:10px}.action-card-modal-btn{align-items:center;background:none;border:none;border-radius:5px;color:#888;color:var(--text-secondary,#888);cursor:pointer;display:flex;flex-shrink:0;padding:2px}.action-card-modal-btn:hover{background:#ffffff14;color:#e0e0e0;color:var(--text-primary,#e0e0e0)}.action-card-modal-btn .material-symbols-outlined{font-size:15px}.action-card-body{display:flex;flex-direction:column;-webkit-user-select:text;user-select:text}.action-card--manual{height:100%}.action-card--manual .action-card-body{flex:1 1;min-height:0;overflow-y:auto}.action-card-section{border-bottom:1px solid #ffffff0d;border-bottom:1px solid var(--border-color,#ffffff0d);padding:10px 12px}.action-card-section:last-child{border-bottom:none}.action-card-label{color:#888;color:var(--text-secondary,#888);display:block;font-size:10px;font-weight:600;letter-spacing:.08em;margin-bottom:6px;text-transform:uppercase}.action-card-desc{color:#d8d8d8;color:var(--text-primary,#d8d8d8);font-size:13px;margin:0;white-space:pre-wrap;word-break:break-word}.action-card-desc--empty{color:#666;color:var(--text-secondary,#666);font-style:italic}.action-card-script{background:#00000040}.action-card-script-empty{color:#ffffff4d;font-size:12px;font-style:italic}.action-card-desc-input{background:#ffffff0d;background:var(--bg-input,#ffffff0d);border:1px solid #ffffff1a;border:1px solid var(--border-color,#ffffff1a);border-radius:6px;box-sizing:border-box;color:#e0e0e0;color:var(--text-primary,#e0e0e0);font-family:inherit;font-size:13px;max-height:220px;min-height:64px;overflow-y:auto;padding:8px 10px;resize:none;width:100%}.action-card-desc-input:focus{border-color:#20b2aa80;outline:none}.action-card-footer{align-items:center;display:flex;flex-wrap:wrap;gap:6px;padding:10px 12px}.action-card-footer-spacer{flex:1 1}.action-card-chip{background:#ffffff14;border-radius:10px;color:#ffffffb3;font-size:10px;padding:2px 7px}.action-card-chip--ok{background:#4caf5026;color:#6bc46f}.action-card-chip--error{background:#f4433626;color:#ef6a60}.action-card-chip--warn{background:#ff980026;color:#ffae42}.action-card-cast-head{align-items:center;display:flex;justify-content:space-between;margin-bottom:6px}.action-card-cast-head .action-card-label{margin-bottom:0}.action-card-cast-add{align-items:center;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:5px;color:#aaa;color:var(--text-secondary,#aaa);cursor:pointer;display:flex;font-size:11px;gap:3px;padding:3px 8px}.action-card-cast-add:hover{background:#ffffff1f;color:#e0e0e0;color:var(--text-primary,#e0e0e0)}.action-card-cast-add .material-symbols-outlined{font-size:14px}.action-card-cast-list{display:flex;flex-wrap:wrap;gap:6px}.action-card-cast-empty{color:#666;color:var(--text-secondary,#666);font-size:12px;font-style:italic}.action-card-cast-chip{align-items:center;background:#98fb981f;border:1px solid #98fb9840;border-radius:14px;color:#98fb98;display:inline-flex;font-size:12px;gap:3px;padding:2px 8px 2px 6px}.action-card-cast-chip .material-symbols-outlined{font-size:13px}.action-card-cast-remove{align-items:center;background:none;border:none;color:#98fb9880;cursor:pointer;display:flex;padding:0}.action-card-cast-remove:hover{color:#98fb98}.action-card-cast-remove .material-symbols-outlined{font-size:13px}.action-card-cast-picker{background:#ffffff0a;border:1px solid #ffffff14;border-radius:6px;display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;padding:8px}.action-card-cast-picker-item{align-items:center;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:14px;color:#aaa;color:var(--text-secondary,#aaa);cursor:pointer;display:inline-flex;font-size:12px;gap:3px;padding:2px 10px 2px 6px}.action-card-cast-picker-item:hover{background:#98fb981f;border-color:#98fb984d;color:#98fb98}.action-card-cast-picker-item .material-symbols-outlined,.bss-line{font-size:13px}.bss-line{color:#ffffffd9;font-family:JetBrains Mono,Fira Code,Cascadia Code,Consolas,monospace;line-height:1.6;white-space:pre-wrap;word-break:break-word}.bss-line--empty{min-height:20.8px}.bss-dialogue--untranslated{border-bottom:1px dotted #ffffff59;opacity:.72}.bss-dialogue--stale{border-bottom:1px dashed #ffc107a6}.action-cast-choice-intro{color:#444;color:var(--text-secondary,#444);font-size:14px;line-height:1.5;margin:0 0 16px}.action-cast-choice-buttons{display:flex;gap:10px;justify-content:flex-end}.cast-choice-btn{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;padding:9px 16px;transition:background .15s ease}.cast-choice-btn:disabled{cursor:not-allowed;opacity:.6}.cast-choice-btn.secondary{background:#f0f0f0;color:#444}.cast-choice-btn.secondary:hover:not(:disabled){background:#e0e0e0}.cast-choice-btn.primary{background:#667eea;color:#fff}.cast-choice-btn.primary:hover:not(:disabled){background:#5a6fd6}.action-cast-choice-list{border:1px solid #0000001a;border-radius:8px;list-style:none;margin:0 0 16px;max-height:240px;overflow-y:auto;padding:0}.action-cast-choice-item{align-items:center;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:8px 12px}.action-cast-choice-item:hover{background:#667eea0f}.expression-builder{position:relative}.expr-error{color:#e0555f;color:var(--error-color,#e0555f);font-size:11px;margin:2px 0 6px}.condition-row.invalid .value-input,.condition-row.invalid .variable-button{border-color:#e0555f;border-color:var(--error-color,#e0555f)}.logical-connector span{border:1px solid #444;border:1px solid var(--border-color,#444);border-radius:4px;color:#aaa;color:var(--text-secondary,#aaa);display:inline-block;font-size:10px;letter-spacing:.08em;margin:4px 0;padding:2px 6px}.mode-toggle{display:flex;gap:4px;margin-bottom:12px}.mode-toggle button{align-items:center;background:#0000;border:1px solid #444;border:1px solid var(--border-color,#444);border-radius:6px;color:#aaa;color:var(--text-secondary,#aaa);cursor:pointer;display:flex;font-size:12px;gap:6px;padding:6px 12px;transition:all .15s ease}.mode-toggle button:hover{background:#333;background:var(--bg-hover,#333);color:#fff;color:var(--text-primary,#fff)}.mode-toggle button.active{background:#4a90e2;background:var(--accent-color,#4a90e2);border-color:#4a90e2;border-color:var(--accent-color,#4a90e2);color:#fff}.mode-toggle button .material-symbols-outlined{font-size:16px}.text-mode input{background:#1a1a1a;background:var(--bg-primary,#1a1a1a);border:1px solid #444;border:1px solid var(--border-color,#444);border-radius:6px;color:#fff;color:var(--text-primary,#fff);font-family:Courier New,monospace;font-size:13px;padding:10px 14px;width:100%}.text-mode input:focus{border-color:#4a90e2;border-color:var(--accent-color,#4a90e2);outline:none}.syntax-hint{color:#666;color:var(--text-tertiary,#666);font-size:11px;margin:8px 0 0}.syntax-hint code{background:#333;background:var(--bg-hover,#333);border-radius:3px;color:#aaa;color:var(--text-secondary,#aaa);font-family:Courier New,monospace;padding:2px 6px}.visual-mode{gap:8px}.empty-condition,.visual-mode{display:flex;flex-direction:column}.empty-condition{align-items:center;border:2px dashed #444;border:2px dashed var(--border-color,#444);border-radius:8px;color:#aaa;color:var(--text-secondary,#aaa);gap:12px;padding:20px}.empty-condition p{font-size:13px;margin:0}.empty-condition button{align-items:center;background:#4a90e2;background:var(--accent-color,#4a90e2);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:13px;gap:6px;padding:8px 14px;transition:background .15s ease}.empty-condition button:hover{background:#5a9ff2;background:var(--accent-hover,#5a9ff2)}.condition-row{align-items:center;background:#1a1a1a;background:var(--bg-primary,#1a1a1a);border:1px solid #444;border:1px solid var(--border-color,#444);border-radius:6px;display:flex;gap:8px;padding:8px}.variable-picker-container{flex:1 1;min-width:120px;position:relative}.variable-button{align-items:center;background:#1e1e1e;background:var(--bg-secondary,#1e1e1e);border:1px solid #444;border:1px solid var(--border-color,#444);border-radius:6px;color:#fff;color:var(--text-primary,#fff);cursor:pointer;display:flex;font-size:13px;justify-content:space-between;padding:8px 10px;transition:all .15s ease;width:100%}.variable-button:hover{border-color:#4a90e2;border-color:var(--accent-color,#4a90e2)}.variable-button .material-symbols-outlined{color:#aaa;color:var(--text-secondary,#aaa);font-size:18px}.variable-dropdown{background:#1e1e1e;background:var(--bg-secondary,#1e1e1e);border:1px solid #444;border:1px solid var(--border-color,#444);border-radius:6px;box-shadow:0 4px 12px #0000004d;left:0;margin-top:4px;max-height:200px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:100}.variable-dropdown button{align-items:center;background:#0000;border:none;color:#fff;color:var(--text-primary,#fff);cursor:pointer;display:flex;font-size:13px;gap:8px;padding:10px 12px;text-align:left;transition:background .15s ease;width:100%}.variable-dropdown button:hover{background:#333;background:var(--bg-hover,#333)}.variable-dropdown .type-icon{font-size:16px}.variable-dropdown .type-icon.boolean{color:#4caf50}.variable-dropdown .type-icon.integer{color:#2196f3}.variable-dropdown .type-icon.float{color:#9c27b0}.variable-dropdown .type-icon.string{color:#ff9800}.no-variables{color:#666;color:var(--text-tertiary,#666);font-size:12px;padding:16px;text-align:center}.operator-select{background:#1e1e1e;background:var(--bg-secondary,#1e1e1e);border:1px solid #444;border:1px solid var(--border-color,#444);border-radius:6px;color:#fff;color:var(--text-primary,#fff);cursor:pointer;font-size:13px;padding:8px;width:100px}.operator-select:focus{border-color:#4a90e2;border-color:var(--accent-color,#4a90e2);outline:none}.value-input{background:#1e1e1e;background:var(--bg-secondary,#1e1e1e);border:1px solid #444;border:1px solid var(--border-color,#444);border-radius:6px;color:#fff;color:var(--text-primary,#fff);flex:1 1;font-family:Courier New,monospace;font-size:13px;min-width:80px;padding:8px 10px}.value-input:focus{border-color:#4a90e2;border-color:var(--accent-color,#4a90e2);outline:none}.remove-condition{align-items:center;background:#0000;border:none;border-radius:4px;color:#666;color:var(--text-tertiary,#666);cursor:pointer;display:flex;height:28px;justify-content:center;padding:0;transition:all .15s ease;width:28px}.remove-condition:hover{background:#f4433626;color:#f44336}.remove-condition .material-symbols-outlined{font-size:18px}.logical-connector{display:flex;justify-content:center;padding:4px 0}.logical-connector select{background:#252525;background:var(--bg-tertiary,#252525);border:1px solid #444;border:1px solid var(--border-color,#444);border-radius:12px;color:#aaa;color:var(--text-secondary,#aaa);cursor:pointer;font-size:11px;font-weight:600;padding:4px 12px;text-transform:uppercase}.logical-connector select:focus{border-color:#4a90e2;border-color:var(--accent-color,#4a90e2);outline:none}.add-condition-button{align-items:center;background:#0000;border:1px dashed #444;border:1px dashed var(--border-color,#444);border-radius:6px;color:#aaa;color:var(--text-secondary,#aaa);cursor:pointer;display:flex;font-size:12px;gap:6px;justify-content:center;padding:8px;transition:all .15s ease}.add-condition-button:hover{border-color:#4a90e2;border-color:var(--accent-color,#4a90e2);color:#4a90e2;color:var(--accent-color,#4a90e2)}.add-condition-button .material-symbols-outlined{font-size:16px}.dropdown-backdrop{bottom:0;left:0;position:fixed;right:0;top:0;z-index:99}.branch-node-editor{background:#1a1a1a;background:var(--bg-primary,#1a1a1a);border-radius:12px;box-shadow:0 8px 32px #00000080;display:flex;flex-direction:column;max-height:85vh;max-width:600px;overflow:hidden;width:100%}.branch-node-editor.loading{align-items:center;color:#aaa;color:var(--text-secondary,#aaa);display:flex;justify-content:center;min-height:200px}.editor-header{background:#1e1e1e;background:var(--bg-secondary,#1e1e1e);border-bottom:1px solid #333;border-bottom:1px solid var(--border-color,#333);gap:12px;padding:16px 20px}.editor-header,.header-icon{align-items:center;display:flex}.header-icon{background:linear-gradient(135deg,#ff9800,#ff5722);border-radius:10px;height:40px;justify-content:center;width:40px}.header-icon .material-symbols-outlined{color:#fff;font-size:24px}.editor-header h2{color:#fff;color:var(--text-primary,#fff);flex:1 1;font-size:18px;font-weight:600;margin:0}.editor-content{flex:1 1;overflow-y:auto;padding:20px}.form-section{margin-bottom:20px}.form-section label{color:#aaa;color:var(--text-secondary,#aaa);display:block;font-size:13px;font-weight:500;margin-bottom:8px}.form-section input,.form-section select,.form-section textarea{background:#1e1e1e;background:var(--bg-secondary,#1e1e1e);border:1px solid #444;border:1px solid var(--border-color,#444);border-radius:8px;color:#fff;color:var(--text-primary,#fff);font-size:14px;padding:10px 14px;width:100%}.form-section input:focus,.form-section select:focus,.form-section textarea:focus{border-color:#4a90e2;border-color:var(--accent-color,#4a90e2);outline:none}.branches-section{margin-top:24px}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.section-header h3{color:#fff;color:var(--text-primary,#fff);font-size:15px;font-weight:600;margin:0}.add-branch-button{align-items:center;background:#0000;border:1px dashed #4a90e2;border:1px dashed var(--accent-color,#4a90e2);border-radius:6px;color:#4a90e2;color:var(--accent-color,#4a90e2);cursor:pointer;display:flex;font-size:13px;gap:6px;padding:6px 14px;transition:all .15s ease}.add-branch-button:hover{background:#4a90e21a}.add-branch-button .material-symbols-outlined{font-size:16px}.branches-list{display:flex;flex-direction:column;gap:12px}.branch-item{background:#1e1e1e;background:var(--bg-secondary,#1e1e1e);border:1px solid #444;border:1px solid var(--border-color,#444);border-left-width:4px;border-radius:8px;overflow:hidden;transition:border-color .15s ease}.branch-item.editing{border-color:#4a90e2;border-color:var(--accent-color,#4a90e2)}.branch-header{align-items:center;display:flex;gap:10px;padding:12px 14px}.branch-color{border-radius:3px;height:12px;width:12px}.branch-label{background:#0000;border:none;color:#fff;color:var(--text-primary,#fff);flex:1 1;font-size:14px;font-weight:500;padding:4px 8px}.branch-label:focus{background:#252525;background:var(--bg-hover,#252525);border-radius:4px;outline:none}.branch-actions{display:flex;gap:4px}.branch-actions button{align-items:center;background:#0000;border:none;border-radius:4px;color:#aaa;color:var(--text-secondary,#aaa);cursor:pointer;display:flex;height:28px;justify-content:center;padding:0;transition:all .15s ease;width:28px}.branch-actions button:hover:not(:disabled){background:#333;background:var(--bg-hover,#333);color:#fff;color:var(--text-primary,#fff)}.branch-actions button:disabled{cursor:not-allowed;opacity:.3}.branch-actions button.delete-button:hover{background:#f4433626;color:#f44336}.branch-actions button .material-symbols-outlined{font-size:18px}.branch-details{background:#252525;background:var(--bg-tertiary,#252525);border-top:1px solid #333;border-top:1px solid var(--border-color,#333);padding:16px}.color-picker{margin-bottom:16px}.color-picker label{color:#aaa;color:var(--text-secondary,#aaa);display:block;font-size:12px;margin-bottom:8px}.color-options{display:flex;gap:8px}.color-option{border:2px solid #0000;border-radius:4px;cursor:pointer;height:24px;transition:all .15s ease;width:24px}.color-option:hover{transform:scale(1.1)}.color-option.selected{border-color:#fff;box-shadow:0 0 0 2px #1a1a1a;box-shadow:0 0 0 2px var(--bg-primary,#1a1a1a)}.condition-section,.target-section{margin-top:16px}.condition-section label,.target-section label{color:#aaa;color:var(--text-secondary,#aaa);display:block;font-size:12px;margin-bottom:8px}.target-section select{background:#1a1a1a;background:var(--bg-primary,#1a1a1a);border:1px solid #444;border:1px solid var(--border-color,#444);border-radius:6px;color:#fff;color:var(--text-primary,#fff);font-size:13px;padding:8px 12px;width:100%}.evaluation-note{align-items:flex-start;background:#2196f31a;border:1px solid #2196f333;border-radius:8px;display:flex;gap:10px;margin-top:16px;padding:12px}.evaluation-note .material-symbols-outlined{color:#2196f3;font-size:18px}.evaluation-note p{color:#aaa;color:var(--text-secondary,#aaa);font-size:12px;line-height:1.5;margin:0}.editor-footer{background:#1e1e1e;background:var(--bg-secondary,#1e1e1e);border-top:1px solid #333;border-top:1px solid var(--border-color,#333);display:flex;gap:12px;justify-content:flex-end;padding:16px 20px}.cancel-button,.save-button{border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .15s ease}.cancel-button{background:#0000;border:1px solid #444;border:1px solid var(--border-color,#444);color:#fff;color:var(--text-primary,#fff)}.cancel-button:hover{background:#333;background:var(--bg-hover,#333)}.save-button{background:#4a90e2;background:var(--accent-color,#4a90e2);border:none;color:#fff}.save-button:hover:not(:disabled){background:#5a9ff2;background:var(--accent-hover,#5a9ff2)}.save-button:disabled{cursor:not-allowed;opacity:.5}.branch-condition{border-top:1px solid #333;border-top:1px solid var(--border-color,#333);margin:8px 0 4px;padding:8px 10px 4px}.branch-condition-label{color:#999;color:var(--text-secondary,#999);display:block;font-size:11px;letter-spacing:.06em;margin-bottom:6px;text-transform:uppercase}.cne-branch-color-btn{border:2px solid #fff3;border-radius:4px;cursor:pointer;flex-shrink:0;height:18px;padding:0;transition:border-color .15s,transform .1s;width:18px}.cne-branch-color-btn:hover{border-color:#fff9;transform:scale(1.1)}.cne-color-popover{background:#1e1e1e;border:1px solid #3a3a3a;border-radius:8px;box-shadow:0 8px 24px #0000008c;display:flex;flex-direction:column;gap:8px;padding:10px;position:fixed;width:210px;z-index:9999}.cne-color-swatches{display:flex;flex-wrap:wrap;gap:6px}.cne-color-swatch{border:2px solid #0000;border-radius:50%;cursor:pointer;flex-shrink:0;height:22px;padding:0;transition:border-color .1s,transform .1s;width:22px}.cne-color-swatch:hover{transform:scale(1.15)}.cne-color-swatch.selected{border-color:#fff;box-shadow:0 0 0 1px #007acc}.cne-hex-row{align-items:center;display:flex;gap:8px;margin-top:2px}.cne-hex-label{color:#888;font-size:.75rem;white-space:nowrap}.cne-hex-input{background:#2a2a2a;border:1px solid #3a3a3a;border-radius:4px;color:#ccc;font-family:monospace;font-size:.8rem;outline:none;padding:4px 6px;width:72px}.cne-hex-input:focus{border-color:#007acc}.condition-warning-banner{align-items:flex-start;background:#f0ad4e1f;border:1px solid #f0ad4e80;border-radius:6px;color:#f0ad4e;display:flex;font-size:.82rem;gap:10px;line-height:1.4;margin:0 16px 10px;padding:10px 12px}.condition-warning-banner .material-symbols-outlined{flex-shrink:0;font-size:20px;margin-top:1px}.condition-warning-body strong{color:#f5c274;display:block;margin-bottom:4px}.condition-warning-body ul{margin:0 0 4px;padding-left:18px}.condition-warning-body li{color:#e0c9a6;margin:2px 0}.condition-warning-body li b{color:#f5c274}.condition-warning-hint{color:#b89a6f;font-size:.76rem}.realize-button{align-items:center;background:#6c5ce726;border:1px solid #6c5ce78c;border-radius:6px;color:#b8aef0;cursor:pointer;display:inline-flex;font-size:.85rem;gap:6px;margin-right:auto;padding:8px 12px;transition:background .15s,border-color .15s}.realize-button:hover:not(:disabled){background:#6c5ce747;border-color:#6c5ce7cc}.realize-button:disabled{cursor:default;opacity:.5}.realize-receipt{align-items:flex-start;background:#6c5ce71f;border:1px solid #6c5ce780;border-radius:6px;color:#b8aef0;display:flex;font-size:.82rem;gap:10px;line-height:1.4;margin:0 16px 10px;padding:10px 12px}.realize-receipt .material-symbols-outlined{flex-shrink:0;font-size:20px;margin-top:1px}.realize-receipt-body strong{color:#cfc6f5;display:block;margin-bottom:4px}.realize-receipt-body ul{margin:0 0 4px;padding-left:18px}.realize-receipt-body li{color:#c3b9ea;margin:2px 0}.realize-receipt-hint{color:#9a8fc4;font-size:.76rem}.variables-panel{background:#1e1e1e;background:var(--bg-secondary,#1e1e1e);border-radius:8px;display:flex;flex-direction:column;height:100%;overflow:hidden}.variables-panel.compact{max-height:300px}.variables-header{align-items:center;background:#252525;background:var(--bg-tertiary,#252525);border-bottom:1px solid #333;border-bottom:1px solid var(--border-color,#333);display:flex;justify-content:space-between;padding:12px 16px}.variables-header h3{align-items:center;color:#fff;color:var(--text-primary,#fff);display:flex;font-size:14px;font-weight:600;gap:8px;margin:0}.variables-header h3 .material-symbols-outlined{color:#4a90e2;color:var(--accent-color,#4a90e2);font-size:18px}.variables-actions{display:flex;gap:4px}.icon-button{align-items:center;background:#0000;border:none;border-radius:4px;color:#aaa;color:var(--text-secondary,#aaa);cursor:pointer;display:flex;height:28px;justify-content:center;padding:0;transition:all .15s ease;width:28px}.icon-button:hover{background:#333;background:var(--bg-hover,#333);color:#fff;color:var(--text-primary,#fff)}.icon-button.primary{background:#4a90e2;background:var(--accent-color,#4a90e2);color:#fff}.icon-button.primary:hover{background:#5a9ff2;background:var(--accent-hover,#5a9ff2)}.icon-button .material-symbols-outlined{font-size:18px}.category-filter{border-bottom:1px solid #333;border-bottom:1px solid var(--border-color,#333);display:flex;flex-wrap:wrap;gap:6px;padding:8px 12px}.category-chip{background:#0000;border:1px solid #444;border:1px solid var(--border-color,#444);border-radius:12px;color:#aaa;color:var(--text-secondary,#aaa);cursor:pointer;font-size:12px;padding:4px 10px;transition:all .15s ease}.category-chip:hover{color:#fff;color:var(--text-primary,#fff)}.category-chip.active,.category-chip:hover{border-color:#4a90e2;border-color:var(--accent-color,#4a90e2)}.category-chip.active{background:#4a90e2;background:var(--accent-color,#4a90e2);color:#fff}.variable-create-form{background:#252525;background:var(--bg-tertiary,#252525);border-bottom:1px solid #333;border-bottom:1px solid var(--border-color,#333);padding:12px}.form-row{display:flex;gap:8px;margin-bottom:8px}.form-row:last-of-type{margin-bottom:12px}.form-row label{align-items:center;color:#aaa;color:var(--text-secondary,#aaa);display:flex;font-size:12px;min-width:60px}.form-row input,.form-row select{background:#1a1a1a;background:var(--bg-primary,#1a1a1a);border:1px solid #444;border:1px solid var(--border-color,#444);border-radius:4px;color:#fff;color:var(--text-primary,#fff);flex:1 1;font-size:13px;padding:6px 10px}.form-row input:focus,.form-row select:focus{border-color:#4a90e2;border-color:var(--accent-color,#4a90e2);outline:none}.form-actions{gap:8px;justify-content:flex-end}.form-actions button{background:#0000;border:1px solid #444;border:1px solid var(--border-color,#444);border-radius:4px;color:#fff;color:var(--text-primary,#fff);cursor:pointer;font-size:12px;padding:6px 14px;transition:all .15s ease}.form-actions button:hover{background:#333;background:var(--bg-hover,#333)}.form-actions button.primary{background:#4a90e2;background:var(--accent-color,#4a90e2);border-color:#4a90e2;border-color:var(--accent-color,#4a90e2)}.form-actions button.primary:hover{background:#5a9ff2;background:var(--accent-hover,#5a9ff2)}.variables-list{flex:1 1;overflow-y:auto;padding:8px}.empty-state,.loading{align-items:center;color:#aaa;color:var(--text-secondary,#aaa);display:flex;flex-direction:column;justify-content:center;padding:32px 16px;text-align:center}.empty-state .material-symbols-outlined{font-size:48px;margin-bottom:12px;opacity:.3}.empty-state p{margin:4px 0}.empty-state .hint{font-size:12px;opacity:.6}.variable-group{margin-bottom:16px}.group-header{color:#666;color:var(--text-tertiary,#666);font-size:11px;font-weight:600;letter-spacing:.5px;padding:6px 8px;text-transform:uppercase}.variable-item{align-items:center;border:1px solid #0000;border-radius:6px;cursor:pointer;display:flex;gap:8px;padding:6px 8px;transition:all .15s ease}.variable-item.draggable{cursor:grab}.variable-item.draggable:active{cursor:grabbing}.variable-item:hover{background:#2a2a2a;background:var(--bg-hover,#2a2a2a);border-color:#444;border-color:var(--border-color,#444)}.variable-item.selected{background:var(--surface-interactive-hover);border-color:var(--action-primary)}.variable-select-button{align-items:center;background:#0000;border:0;color:inherit;cursor:pointer;display:flex;flex:1 1;gap:8px;min-width:0;padding:0;text-align:left}.variable-select-button.is-selected{color:var(--semantic-text-primary)}.variable-select-button:focus-visible{border-radius:4px;outline:2px solid var(--action-primary);outline-offset:3px}.drag-handle{align-items:center;color:#555;color:var(--text-tertiary,#555);display:flex;opacity:0;transition:opacity .15s ease}.variable-item:hover .drag-handle{opacity:1}.type-icon{align-items:center;border-radius:4px;display:flex;flex-shrink:0;height:24px;justify-content:center;width:24px}.type-icon .material-symbols-outlined{font-size:14px}.type-icon.boolean{background:#4caf5026;color:#4caf50}.type-icon.integer{background:#2196f326;color:#2196f3}.type-icon.float{background:#9c27b026;color:#9c27b0}.type-icon.string{background:#ff980026;color:#ff9800}.variable-name{color:#fff;color:var(--text-primary,#fff);flex:1 1;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:12px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.variable-checkbox{align-items:center;color:#aaa;color:var(--text-secondary,#aaa);cursor:pointer;display:flex;font-size:12px;gap:6px}.variable-checkbox.inline{padding:6px 0}.variable-checkbox input[type=checkbox]{accent-color:#4a90e2;accent-color:var(--accent-color,#4a90e2);height:16px;width:16px}.delete-button{align-items:center;background:#0000;border:none;border-radius:4px;color:#555;color:var(--text-tertiary,#555);cursor:pointer;display:flex;flex-shrink:0;height:20px;justify-content:center;opacity:0;padding:0;transition:all .15s ease;width:20px}.variable-item:hover .delete-button{opacity:1}.delete-button:hover{background:#f4433626;color:#f44336}.delete-button .material-symbols-outlined{font-size:14px}.variable-modal-overlay{align-items:center;background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.variable-modal{background:#1e1e1e;background:var(--bg-secondary,#1e1e1e);border:1px solid #333;border:1px solid var(--border-color,#333);border-radius:12px;box-shadow:0 8px 32px #0006;display:flex;flex-direction:column;max-height:85vh;max-width:90vw;overflow:hidden;width:420px}.variable-modal-header{align-items:center;background:#252525;background:var(--bg-tertiary,#252525);border-bottom:1px solid #333;border-bottom:1px solid var(--border-color,#333);display:flex;justify-content:space-between;padding:16px 20px}.variable-modal-header h4{align-items:center;color:#fff;color:var(--text-primary,#fff);display:flex;font-size:16px;font-weight:600;gap:10px;margin:0}.variable-modal-header h4 .material-symbols-outlined{color:#4a90e2;color:var(--accent-color,#4a90e2);font-size:22px}.variable-modal-content{flex:1 1;overflow-y:auto;padding:20px}.form-group{margin-bottom:16px}.form-group:last-child{margin-bottom:0}.form-group label{color:#aaa;color:var(--text-secondary,#aaa);display:block;font-size:12px;font-weight:500;margin-bottom:6px}.form-group input,.form-group select{background:#1a1a1a;background:var(--bg-primary,#1a1a1a);border:1px solid #444;border:1px solid var(--border-color,#444);border-radius:6px;color:#fff;color:var(--text-primary,#fff);font-size:14px;padding:10px 12px;transition:border-color .15s ease;width:100%}.form-group input:focus,.form-group select:focus{border-color:#4a90e2;border-color:var(--accent-color,#4a90e2);outline:none}.form-group input::placeholder{color:#666;color:var(--text-tertiary,#666)}.variable-modal-actions{background:#252525;background:var(--bg-tertiary,#252525);border-top:1px solid #333;border-top:1px solid var(--border-color,#333);display:flex;gap:10px;justify-content:flex-end;padding:16px 20px}.variable-modal-actions button{background:#0000;border:1px solid #444;border:1px solid var(--border-color,#444);border-radius:6px;color:#fff;color:var(--text-primary,#fff);cursor:pointer;font-size:14px;padding:10px 20px;transition:all .15s ease}.variable-modal-actions button:hover{background:#333;background:var(--bg-hover,#333)}.variable-modal-actions button:disabled{cursor:not-allowed;opacity:.5}.variable-modal-actions button.primary{background:#4a90e2;background:var(--accent-color,#4a90e2);border-color:#4a90e2;border-color:var(--accent-color,#4a90e2)}.variable-modal-actions button.primary:hover:not(:disabled){background:#5a9ff2;background:var(--accent-hover,#5a9ff2)}.presets-dialog-overlay{align-items:center;background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.presets-dialog{background:#1e1e1e;background:var(--bg-secondary,#1e1e1e);border:1px solid #333;border:1px solid var(--border-color,#333);border-radius:12px;box-shadow:0 8px 32px #0006;display:flex;flex-direction:column;max-height:80vh;max-width:90vw;overflow:hidden;width:480px}.presets-dialog-header{align-items:center;background:#252525;background:var(--bg-tertiary,#252525);border-bottom:1px solid #333;border-bottom:1px solid var(--border-color,#333);display:flex;justify-content:space-between;padding:16px 20px}.presets-dialog-header h4{align-items:center;color:#fff;color:var(--text-primary,#fff);display:flex;font-size:16px;font-weight:600;gap:10px;margin:0}.presets-dialog-header h4 .material-symbols-outlined{color:#ffc107;font-size:22px}.presets-dialog-header .close-button{align-items:center;background:#0000;border:none;border-radius:4px;color:#aaa;color:var(--text-secondary,#aaa);cursor:pointer;display:flex;height:28px;justify-content:center;padding:0;transition:all .15s ease;width:28px}.presets-dialog-header .close-button:hover{background:#333;background:var(--bg-hover,#333);color:#fff;color:var(--text-primary,#fff)}.presets-dialog-header .close-button:disabled{cursor:not-allowed;opacity:.5}.presets-dialog-content{flex:1 1;overflow-y:auto;padding:16px 20px}.presets-description{color:#aaa;color:var(--text-secondary,#aaa);font-size:13px;line-height:1.5;margin:0 0 16px}.presets-categories{display:flex;flex-direction:column;gap:16px}.preset-category{background:#252525;background:var(--bg-tertiary,#252525);border-radius:8px;overflow:hidden}.preset-category-header{background:#4a90e21a;border-bottom:1px solid #333;border-bottom:1px solid var(--border-color,#333);color:#4a90e2;color:var(--accent-color,#4a90e2);font-size:12px;font-weight:600;letter-spacing:.5px;padding:10px 14px;text-transform:uppercase}.preset-list{list-style:none;margin:0;padding:8px}.preset-list li{align-items:center;border-radius:4px;display:flex;font-size:12px;gap:10px;padding:6px 8px}.preset-list li.exists{cursor:not-allowed;opacity:.5}.preset-list li:not(.exists){cursor:pointer}.preset-list li:not(.exists):hover{background:#333;background:var(--bg-hover,#333)}.preset-list li.selected{background:#4a90e226}.preset-checkbox{accent-color:#4a90e2;accent-color:var(--accent-color,#4a90e2);cursor:pointer;flex-shrink:0;height:16px;width:16px}.preset-checkbox:disabled{cursor:not-allowed;opacity:.4}.presets-select-actions{display:flex;gap:8px;margin-bottom:12px}.select-all-btn{background:#0000;border:1px solid #444;border:1px solid var(--border-color,#444);border-radius:4px;color:#aaa;color:var(--text-secondary,#aaa);cursor:pointer;font-size:12px;padding:6px 12px;transition:all .15s ease}.select-all-btn:hover{background:#333;background:var(--bg-hover,#333);color:#fff;color:var(--text-primary,#fff)}.select-all-btn:disabled{cursor:not-allowed;opacity:.5}.preset-name{color:#fff;color:var(--text-primary,#fff);flex:1 1;font-family:SF Mono,Fira Code,monospace}.preset-type{background:#333;background:var(--bg-hover,#333);color:#aaa;color:var(--text-secondary,#aaa);text-transform:uppercase}.exists-badge,.preset-type{border-radius:3px;font-size:10px;padding:2px 6px}.exists-badge{background:#ff980026;color:#ff9800}.presets-dialog-actions{background:#252525;background:var(--bg-tertiary,#252525);border-top:1px solid #333;border-top:1px solid var(--border-color,#333);display:flex;gap:10px;justify-content:flex-end;padding:16px 20px}.presets-dialog-actions button{background:#0000;border:1px solid #444;border:1px solid var(--border-color,#444);border-radius:6px;color:#fff;color:var(--text-primary,#fff);cursor:pointer;font-size:13px;padding:8px 18px;transition:all .15s ease}.presets-dialog-actions button:hover{background:#333;background:var(--bg-hover,#333)}.presets-dialog-actions button:disabled{cursor:not-allowed;opacity:.5}.presets-dialog-actions button.primary{background:#4a90e2;background:var(--accent-color,#4a90e2);border-color:#4a90e2;border-color:var(--accent-color,#4a90e2)}.presets-dialog-actions button.primary:hover:not(:disabled){background:#5a9ff2;background:var(--accent-hover,#5a9ff2)}.variable-save-error{color:#e5484d;color:var(--semantic-danger,var(--danger-color,#e5484d));font-size:12px;line-height:1.4;margin:6px 0 0}.media-panel{background:#1a1a1a;background:var(--bg-primary,#1a1a1a);border-radius:8px;display:flex;flex-direction:column;height:100%;overflow:hidden}.media-panel.compact{font-size:12px}.media-panel-header{align-items:center;background:#1e1e1e;background:var(--bg-secondary,#1e1e1e);border-bottom:1px solid #333;border-bottom:1px solid var(--border-color,#333);display:flex;justify-content:space-between;padding:12px 14px}.media-panel-header h3{align-items:center;color:#fff;color:var(--text-primary,#fff);display:flex;font-size:14px;font-weight:600;gap:8px;margin:0}.media-panel-header h3 .material-symbols-outlined{color:#4a90e2;color:var(--accent-color,#4a90e2);font-size:18px}.media-actions{display:flex;gap:6px}.media-actions .icon-button{align-items:center;background:#0000;border:1px solid #444;border:1px solid var(--border-color,#444);border-radius:6px;color:#aaa;color:var(--text-secondary,#aaa);cursor:pointer;display:flex;height:28px;justify-content:center;padding:0;transition:all .15s ease;width:28px}.media-actions .icon-button:hover:not(:disabled){background:#333;background:var(--bg-hover,#333);color:#fff;color:var(--text-primary,#fff)}.media-actions .icon-button:disabled{cursor:not-allowed;opacity:.5}.media-actions .icon-button.primary{background:#4a90e2;background:var(--accent-color,#4a90e2);border-color:#4a90e2;border-color:var(--accent-color,#4a90e2);color:#fff}.media-actions .icon-button.primary:hover:not(:disabled){background:#5a9ff2;background:var(--accent-hover,#5a9ff2)}.media-actions .icon-button .material-symbols-outlined{font-size:16px}.upload-button{cursor:pointer}.media-list{flex:1 1;overflow-y:auto;padding:8px}.media-list .loading{color:#aaa;color:var(--text-secondary,#aaa);font-size:13px;padding:20px;text-align:center}.media-list .empty-state{align-items:center;color:#666;color:var(--text-tertiary,#666);display:flex;flex-direction:column;justify-content:center;padding:40px 20px;text-align:center}.media-list .empty-state .material-symbols-outlined{font-size:48px;margin-bottom:12px;opacity:.5}.media-list .empty-state p{font-size:13px;margin:4px 0}.media-list .empty-state .hint{color:#555;color:var(--text-tertiary,#555);font-size:11px}.media-group{margin-bottom:8px}.media-group .group-header{align-items:center;background:#1e1e1e;background:var(--bg-secondary,#1e1e1e);border:none;border-radius:6px;color:#fff;color:var(--text-primary,#fff);cursor:pointer;display:flex;font-size:12px;font-weight:600;gap:6px;padding:8px 10px;transition:background .15s ease;width:100%}.media-group .group-header:hover{background:#2a2a2a;background:var(--bg-hover,#2a2a2a)}.group-header .expand-icon{color:#666;color:var(--text-tertiary,#666);font-size:18px}.group-header .group-icon{color:#4caf50;font-size:16px}.group-header .group-icon.sound{color:#2196f3}.group-header .group-name{flex:1 1;text-align:left}.group-header .group-count{background:#333;background:var(--bg-hover,#333);border-radius:10px;color:#aaa;color:var(--text-secondary,#aaa);font-size:11px;font-weight:500;padding:2px 8px}.group-content{padding:4px 0 4px 8px}.group-empty{color:#666;color:var(--text-tertiary,#666);font-size:12px;font-style:italic;padding:12px 16px}.media-item{align-items:center;border:1px solid #0000;border-radius:6px;cursor:pointer;display:flex;gap:8px;padding:6px 8px;transition:all .15s ease}.media-item.draggable{cursor:grab}.media-item.draggable:active{cursor:grabbing}.media-item:hover{background:#2a2a2a;background:var(--bg-hover,#2a2a2a);border-color:#444;border-color:var(--border-color,#444)}.media-item .drag-handle{align-items:center;color:#555;color:var(--text-tertiary,#555);display:flex;opacity:0;transition:opacity .15s ease}.media-item:hover .drag-handle{opacity:1}.drag-handle .material-symbols-outlined{font-size:16px}.media-thumbnail{align-items:center;border-radius:4px;display:flex;flex-shrink:0;height:32px;justify-content:center;overflow:hidden;width:32px}.media-thumbnail.image-thumbnail{background:#252525;background:var(--bg-tertiary,#252525)}.media-thumbnail.image-thumbnail img{height:100%;object-fit:cover;width:100%}.media-thumbnail.sound-thumbnail{background:#2196f326;color:#2196f3}.media-thumbnail.sound-thumbnail .material-symbols-outlined{font-size:18px}.media-info{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.media-name{color:#fff;color:var(--text-primary,#fff);font-size:12px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-size{color:#666;color:var(--text-tertiary,#666);font-size:10px}.media-item.unusable{cursor:not-allowed;opacity:.7}.media-status-badge{border-radius:8px;font-size:10px;padding:1px 6px;width:fit-content}.media-status-badge.pending{background:#ffc10726;color:#ffc107}.media-status-badge.failed{background:#f4433626;color:#f44336}.media-item .delete-button{align-items:center;background:#0000;border:none;border-radius:4px;color:#555;color:var(--text-tertiary,#555);cursor:pointer;display:flex;flex-shrink:0;height:20px;justify-content:center;opacity:0;padding:0;transition:all .15s ease;width:20px}.media-item:hover .delete-button{opacity:1}.media-item .delete-button:hover{background:#f4433626;color:#f44336}.media-item .delete-button .material-symbols-outlined{font-size:14px}.media-list::-webkit-scrollbar{width:6px}.media-list::-webkit-scrollbar-track{background:#0000}.media-list::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}.media-list::-webkit-scrollbar-thumb:hover{background:#ffffff40}.entity-mention-dropdown{background:#fff;border:1px solid #0000001a;border-radius:10px;box-shadow:0 4px 20px #00000026;font-family:inherit;max-width:360px;min-width:280px;overflow:hidden;position:fixed;z-index:1000}.mention-dropdown-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #00000014;display:flex;justify-content:space-between;padding:10px 14px}.mention-dropdown-title{color:#333;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.mention-dropdown-hint{color:#888;font-size:11px}.mention-dropdown-list{max-height:240px;overflow-y:auto;padding:6px}.mention-dropdown-empty{color:#888;font-size:13px;padding:16px;text-align:center}.mention-dropdown-item{align-items:center;border-radius:6px;cursor:pointer;display:flex;gap:10px;padding:8px 10px;transition:background-color .15s ease}.mention-dropdown-item.selected,.mention-dropdown-item:hover{background:#667eea1a}.mention-dropdown-item.selected{background:#667eea26}.mention-item-icon{align-items:center;border-radius:6px;display:flex;flex-shrink:0;font-size:14px;font-weight:600;height:28px;justify-content:center;width:28px}.mention-item-content{display:flex;flex:1 1;flex-direction:column;gap:1px;min-width:0}.mention-item-name{color:#1a1a1a;font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mention-item-type{color:#888;font-size:11px;text-transform:capitalize}.mention-dropdown-footer{background:#f8f9fa;border-top:1px solid #00000014;padding:8px 12px}.mention-footer-hint{align-items:center;color:#888;display:flex;font-size:11px;gap:8px}.mention-footer-hint kbd{align-items:center;background:#fff;border:1px solid #ddd;border-radius:3px;color:#666;display:inline-flex;font-family:inherit;font-size:10px;height:18px;justify-content:center;margin-right:2px;min-width:18px;padding:0 4px}.mention-dropdown-list::-webkit-scrollbar{width:6px}.mention-dropdown-list::-webkit-scrollbar-track{background:#0000}.mention-dropdown-list::-webkit-scrollbar-thumb{background:#00000026;border-radius:3px}.mention-dropdown-list::-webkit-scrollbar-thumb:hover{background:#00000040}.node-link-dropdown{background:#1e1e1e;border:1px solid #333;border-radius:10px;box-shadow:0 4px 20px #0006;font-family:inherit;max-width:400px;min-width:300px;overflow:hidden;position:fixed;z-index:1000}.node-link-dropdown-header{align-items:center;background:#252525;border-bottom:1px solid #333;display:flex;justify-content:space-between;padding:10px 14px}.node-link-dropdown-title{align-items:center;color:#fff;display:flex;font-size:12px;font-weight:600;gap:6px;letter-spacing:.5px;text-transform:uppercase}.node-link-dropdown-title .material-symbols-outlined{color:#9370db;font-size:16px}.node-link-dropdown-hint{color:#888;font-size:11px}.node-link-dropdown-list{max-height:300px;overflow-y:auto;padding:6px}.node-link-dropdown-empty{color:#888;font-size:13px;padding:16px;text-align:center}.node-link-scene-group{margin-bottom:8px}.node-link-scene-group:last-child{margin-bottom:0}.node-link-scene-header{align-items:center;color:#888;display:flex;font-size:11px;font-weight:600;gap:6px;letter-spacing:.5px;padding:6px 10px;text-transform:uppercase}.node-link-scene-header .material-symbols-outlined{color:#666;font-size:14px}.node-link-scene-header.current,.node-link-scene-header.current .material-symbols-outlined{color:#9370db}.current-badge{background:#9370db33;border-radius:4px;color:#9370db;font-size:9px;font-weight:600;margin-left:auto;padding:2px 6px;text-transform:uppercase}.node-link-dropdown-item{align-items:center;border-radius:6px;cursor:pointer;display:flex;gap:10px;margin-left:10px;padding:8px 10px;transition:background-color .15s ease}.node-link-dropdown-item.selected,.node-link-dropdown-item:hover{background:#9370db26}.node-link-dropdown-item.selected{background:#9370db33}.node-link-item-icon{align-items:center;border-radius:6px;display:flex;flex-shrink:0;height:28px;justify-content:center;width:28px}.node-link-item-icon .material-symbols-outlined{font-size:16px}.node-link-item-content{display:flex;flex:1 1;flex-direction:column;gap:1px;min-width:0}.node-link-item-name{color:#fff;font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-link-item-type{color:#888;font-size:11px;text-transform:capitalize}.node-link-dropdown-footer{background:#252525;border-top:1px solid #333;padding:8px 12px}.node-link-footer-hint{align-items:center;color:#888;display:flex;font-size:11px;gap:8px}.node-link-footer-hint kbd{align-items:center;background:#333;border:1px solid #444;border-radius:3px;color:#aaa;display:inline-flex;font-family:inherit;font-size:10px;height:18px;justify-content:center;margin-right:2px;min-width:18px;padding:0 4px}.node-link-dropdown-list::-webkit-scrollbar{width:6px}.node-link-dropdown-list::-webkit-scrollbar-track{background:#0000}.node-link-dropdown-list::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}.node-link-dropdown-list::-webkit-scrollbar-thumb:hover{background:#ffffff40}.node-sounds-panel{border-top:1px solid #00000014;display:flex;flex-direction:column;flex-shrink:0;gap:4px;margin-top:8px;padding-top:8px}.sound-entry{align-items:center;background:#0000000a;border-radius:4px;cursor:pointer;display:flex;gap:6px;padding:4px 8px;transition:background-color .15s ease;-webkit-user-select:none;user-select:none}.sound-entry:hover{background:#00000014}.sound-entry:active{background:#0000001f}.sound-icon{color:#00000080;flex-shrink:0;font-size:16px}.sound-filename{color:#000000b3;flex:1 1;font-size:11px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sound-popup{background:#2d3748;border-radius:12px;box-shadow:0 8px 32px #0006;color:#e2e8f0;font-size:14px;max-width:400px;min-width:340px;overflow:hidden;position:fixed;z-index:1000}.sound-popup-header{align-items:center;border-bottom:1px solid #ffffff14;display:flex;justify-content:space-between;padding:16px 16px 12px}.sound-popup-filename{color:#fff;flex:1 1;font-size:15px;font-weight:500;margin-right:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sound-popup-close{align-items:center;background:none;border:none;border-radius:4px;color:#a0aec0;cursor:pointer;display:flex;justify-content:center;padding:4px;transition:all .15s ease}.sound-popup-close:hover{background:#ffffff1a;color:#fff}.sound-popup-close .material-symbols-outlined{font-size:20px}.sound-popup-player{align-items:center;border-bottom:1px solid #ffffff14;display:flex;gap:12px;padding:16px}.play-button{align-items:center;background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;justify-content:center;padding:4px;transition:all .15s ease}.play-button:hover{background:#ffffff1a}.play-button .material-symbols-outlined{font-size:28px}.play-button:disabled{cursor:not-allowed;opacity:.6}.sound-popup-error{background:#f4433626;border-radius:4px;color:#f44336;font-size:12px;margin:0 16px 12px;padding:6px 10px}.time-display{font-feature-settings:"tnum";color:#a0aec0;flex-shrink:0;font-size:13px;font-variant-numeric:tabular-nums;min-width:36px}.seek-slider{appearance:none;background:#4a5568;border-radius:2px;cursor:pointer;flex:1 1;height:4px}.seek-slider::-webkit-slider-thumb{appearance:none;background:#fff;border-radius:50%;cursor:pointer;height:12px;-webkit-transition:transform .15s ease;transition:transform .15s ease;width:12px}.seek-slider::-webkit-slider-thumb:hover{transform:scale(1.2)}.seek-slider::-moz-range-thumb{background:#fff;border:none;border-radius:50%;cursor:pointer;height:12px;width:12px}.sound-popup-section{border-bottom:1px solid #ffffff14;padding:16px}.sound-popup-section:last-child{border-bottom:none}.section-label{color:#718096;font-size:11px;font-weight:600;letter-spacing:.5px;margin-bottom:12px;text-transform:uppercase}.play-mode-options{display:flex;flex-direction:column;gap:8px}.play-mode-option{align-items:center;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:8px 12px;transition:background-color .15s ease}.play-mode-option:hover{background:#ffffff0d}.play-mode-option input[type=radio]{appearance:none;border:2px solid #4a5568;border-radius:50%;cursor:pointer;flex-shrink:0;height:18px;margin:0;position:relative;transition:all .15s ease;width:18px}.play-mode-option input[type=radio]:checked{background:#ed8936;border-color:#ed8936}.play-mode-option input[type=radio]:checked:after{background:#2d3748;border-radius:50%;content:"";height:6px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:6px}.play-mode-icon{color:#a0aec0;flex-shrink:0;font-size:18px}.play-mode-label{color:#e2e8f0;font-size:14px}.delay-section{align-items:center;display:flex;gap:12px}.delay-label{color:#718096;font-size:14px}.delay-input{background:#1a202c;border:1px solid #4a5568;border-radius:6px;color:#fff;font-size:14px;outline:none;padding:8px 12px;text-align:center;transition:border-color .15s ease;width:80px}.delay-input:focus{border-color:#667eea}.delay-input::-webkit-inner-spin-button,.delay-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.delay-input[type=number]{-moz-appearance:textfield}.delay-unit{color:#718096;font-size:14px}.narrative-board-container{background:#e0e0e0;height:100%;overflow:hidden;position:relative;width:100%}.board-vocab-hint{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#00000073;border-radius:8px;color:#e8e5d8;display:inline-flex;font-size:.78rem;font-weight:600;gap:6px;left:16px;padding:4px 10px;position:absolute;top:12px;z-index:11}.board-vocab-sep{opacity:.5}.scene-title-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#00000073;border-radius:8px;flex-direction:column;left:50%;max-width:600px;padding:6px 16px;pointer-events:none;position:absolute;top:12px;transform:translateX(-50%);white-space:nowrap;z-index:10}.breadcrumb,.scene-title-overlay{align-items:center;display:flex;gap:4px}.breadcrumb{color:#fffffff2;pointer-events:auto}.breadcrumb,.breadcrumb-link{font-size:14px;font-weight:600}.breadcrumb-link{background:none;border:none;color:#87ceebe6;cursor:pointer;padding:0;text-decoration:underline;text-underline-offset:2px}.breadcrumb-link:hover{color:#87ceeb}.breadcrumb-separator{align-items:center;color:#ffffff80;display:flex;font-size:16px}.breadcrumb-separator .material-symbols-outlined{font-size:16px}.breadcrumb-current{color:#fffffff2}.canvas-hint{color:#fff6;font-size:11px;pointer-events:none}.scene-color-picker{align-items:center;background:#ffffffe6;border-radius:6px;box-shadow:0 2px 8px #00000026;cursor:pointer;display:flex;height:36px;justify-content:center;pointer-events:auto;position:absolute;right:12px;top:12px;transition:all .2s;width:36px}.scene-color-picker:hover{background:#fff;box-shadow:0 3px 12px #0003;transform:scale(1.05)}.scene-color-picker input[type=color]{cursor:pointer;height:100%;opacity:0;position:absolute;width:100%}.scene-color-picker .material-symbols-outlined{color:#666;font-size:20px;pointer-events:none}.scene-color-picker:hover .material-symbols-outlined{color:#333}.narrative-board-container .graph-content{background:#0000}.narrative-board-loading{align-items:center;color:#fff;display:flex;flex-direction:column;font-size:18px;height:100vh;justify-content:center}.loading-spinner{animation:spin 1s linear infinite;border:3px solid #ffffff1a;border-radius:50%;border-top-color:#667eea;height:48px;margin-bottom:1rem;width:48px}.narrative-node{background:#fff;border:2px solid #0000001a;border-radius:12px;box-shadow:0 2px 8px #0000001a;box-sizing:border-box;display:flex;flex-direction:column;height:100%;padding:12px;position:relative;transition:all .2s ease;width:100%}.narrative-node.selected{border-color:#667eea;box-shadow:0 0 0 3px #667eea33,0 2px 8px #0000001a}.narrative-node.pending-node{border-style:dashed;opacity:.65;pointer-events:none}.node-icon.pending-spinner{animation:spin 1s linear infinite}.node-header{display:flex;gap:10px;margin-bottom:8px}.node-header,.node-icon{align-items:center;flex-shrink:0}.node-icon{border-radius:8px;display:flex!important;font-size:20px;height:36px;justify-content:center;line-height:1;position:relative;width:36px}.node-icon.material-symbols-outlined{font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 20}.node-title-group{flex:1 1;min-width:0}.narrative-board-container .node-title{color:#1a1a1a;display:block;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.narrative-board-container .node-subtitle{color:#00000080;display:block;font-size:11px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.node-body{display:flex;flex-direction:column;margin-top:8px;min-height:0;overflow:hidden}.narrative-board-container .node-description{word-wrap:break-word;color:#000000b3;cursor:text;font-size:12px;line-height:1.5;margin:0;overflow:hidden;overflow-wrap:break-word}.narrative-board-container .node-description:empty:before,.narrative-board-container .node-description:not(:empty){cursor:text}.node-title-input{background:#fff;border:1px solid #667eea;border-radius:4px;box-sizing:border-box;color:#1a1a1a;font-size:14px;font-weight:600;outline:none;padding:2px 6px;width:100%}.node-title-input:focus{box-shadow:0 0 0 2px #667eea33}.node-description-input{background:#fff;border:1px solid #667eea;border-radius:4px;box-sizing:border-box;color:#000000b3;font-family:inherit;font-size:12px;line-height:1.5;min-height:40px;outline:none;padding:6px 8px;resize:vertical;width:100%}.node-description-input:focus{box-shadow:0 0 0 2px #667eea33}.node-actions-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.node-action-btn{align-items:center;background:#00000008;border:1px solid #0000001f;border-radius:6px;color:#000000a6;cursor:pointer;display:inline-flex;font-size:11px;font-weight:500;gap:4px;padding:3px 8px}.node-action-btn:hover{background:#667eea1a;border-color:#667eea4d;color:#4c5fd5}.node-action-btn:focus-visible{outline:2px solid #667eea;outline-offset:1px}.node-action-btn .material-symbols-outlined{font-size:14px}.node-body--editing-description{overflow:visible}.beat-desc-editor{background:#fff;border-radius:8px;box-shadow:0 4px 16px #00000026;display:flex;flex-direction:column;gap:4px;padding:4px}.beat-desc-label{color:#00000073;display:block;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.beat-desc-input{max-height:200px;overflow-y:auto;resize:none}.beat-desc-footer{align-items:center;display:flex;gap:8px;padding:2px 2px 0}.beat-desc-save{color:#00000080;font-size:10px}.beat-desc-save.save-status--saving{color:#f0ad4e}.beat-desc-save.save-status--saved{color:#2ea34e}.beat-desc-save.save-status--unsaved{color:#00000080}.beat-desc-save.save-status--error{color:#d9534f;font-weight:600}.beat-desc-done,.beat-desc-retry{border:none;border-radius:5px;cursor:pointer;font-size:11px;padding:3px 10px}.beat-desc-retry{background:#d9534f1f;color:#d9534f}.beat-desc-retry:hover{background:#d9534f33}.beat-desc-done{background:#667eea1f;color:#4c5fd5;margin-left:auto}.beat-desc-done:hover{background:#667eea33}.entity-mention-link{border-radius:2px;color:#d97706;cursor:pointer;font-weight:500;margin:0 -2px;padding:0 2px;transition:color .15s ease,background-color .15s ease}.entity-mention-link:hover{background-color:#d977061a;color:#b45309;text-decoration:underline}.node-hyperlink{border-radius:2px;color:#2563eb;cursor:pointer;font-weight:500;margin:0 -2px;padding:0 2px;text-decoration:underline;transition:color .15s ease,background-color .15s ease}.node-hyperlink:hover{background-color:#2563eb1a;color:#1d4ed8}.node-link{border-bottom:1px dashed #9370db;border-radius:2px;color:#9370db;cursor:pointer;font-weight:500;margin:0 -2px;padding:0 2px;text-decoration:none;transition:color .15s ease,background-color .15s ease}.node-link:hover{background-color:#9370db26;border-bottom-style:solid;color:#7b68ee}.node-image-container{background:#f5f5f5;border-radius:6px;flex-shrink:0;margin-bottom:8px;overflow:hidden;width:100%}.node-image{display:block;height:auto;max-height:150px;object-fit:cover;width:100%}.narrative-node.arc-node .node-image-container{margin-left:auto;margin-right:auto;max-width:250px}.narrative-node.arc-node .node-image{max-height:120px}.node-image-container.selected{outline:2px solid #667eea;outline-offset:-2px}.node-image-container:hover{cursor:pointer}.narrative-node.image-drop-target{background:#667eea0d;border:3px dashed #667eea;box-shadow:0 0 0 4px #667eea26,0 2px 8px #0000001a}.narrative-node.image-drop-target:after{background:#667eeae6;border-radius:6px;color:#fff;content:"Drop file here";font-size:12px;font-weight:500;left:50%;padding:8px 16px;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:10}.canvas-mode-toggle{background:#fff;border-radius:10px;box-shadow:0 2px 8px #00000026;display:flex;gap:4px;left:12px;padding:4px;position:absolute;top:12px;z-index:100}.canvas-mode-toggle .mode-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:#666;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s ease;width:36px}.canvas-mode-toggle .mode-btn:hover{background:#0000000d;color:#333}.canvas-mode-toggle .mode-btn.active{background:#667eea;color:#fff}.canvas-mode-toggle .mode-btn .material-symbols-outlined{font-size:20px}.variables-toggle{align-items:center;background:#fff;border:none;border-radius:10px;box-shadow:0 2px 8px #00000026;color:#666;cursor:pointer;display:flex;height:40px;justify-content:center;position:absolute;right:12px;top:12px;transition:all .2s ease;width:40px;z-index:100}.variables-toggle:hover{box-shadow:0 4px 12px #0003;color:#333}.variables-toggle.active{background:#667eea;color:#fff}.variables-toggle .material-symbols-outlined{font-size:22px}.variables-panel-container{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;max-height:calc(100vh - 100px);overflow:hidden;position:absolute;right:12px;top:60px;width:320px;z-index:99}.media-toggle{align-items:center;background:#fff;border:none;border-radius:10px;box-shadow:0 2px 8px #00000026;color:#666;cursor:pointer;display:flex;height:40px;justify-content:center;left:12px;position:absolute;top:12px;transition:all .2s ease;width:40px;z-index:100}.media-toggle:hover{box-shadow:0 4px 12px #0003;color:#333}.media-toggle.active{background:#4caf50;color:#fff}.media-toggle .material-symbols-outlined{font-size:22px}.media-panel-container{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;left:12px;max-height:calc(100vh - 100px);overflow:hidden;position:absolute;top:60px;width:280px;z-index:99}.narrative-node.branch-node{background:linear-gradient(135deg,#fff9e6,#fff5cc);border-color:#ff98004d;box-sizing:border-box;height:100%;overflow:visible;padding:0}.narrative-node.branch-node.selected{border-color:#ff9800;box-shadow:0 0 0 3px #ff980033,0 2px 8px #0000001a}.narrative-node.branch-node .branch-header{border-bottom:1px solid #ff980033;box-sizing:border-box;height:50px;margin-bottom:0;padding:10px 12px}.narrative-node.branch-node .branch-outputs{display:flex;flex-direction:column;gap:0;margin-top:0;padding:0}.branch-output-row{align-items:center;background:#fff9;border-bottom:1px solid #ff98001a;border-left:4px solid #ccc;box-sizing:border-box;display:flex;height:36px;justify-content:space-between;padding:8px 12px;position:relative}.branch-output-row:last-child{border-bottom:none;border-radius:0 0 10px 10px}.branch-output-content{flex:1 1;min-width:0;padding-right:8px}.branch-output-content .branch-label{color:#333;display:block;font-size:12px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.branch-output-content .branch-condition{color:#666;display:block;font-family:Courier New,monospace;font-size:10px;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{max-height:90vh;max-width:90vw;overflow:auto}.connection-editor-modal{max-width:90vw;width:400px}.connection-editor{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;padding:24px}.connection-editor h3{color:#1a1a1a;font-size:18px;font-weight:600;margin:0 0 20px}.connection-editor-field{margin-bottom:16px}.connection-editor-field label{color:#666;display:block;font-size:13px;font-weight:500;margin-bottom:6px}.connection-editor-field input{border:1px solid #ddd;border-radius:8px;box-sizing:border-box;font-size:14px;outline:none;padding:10px 12px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.connection-editor-field input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea26}.connection-editor-info{align-items:center;border-bottom:1px solid #eee;display:flex;gap:8px;padding:8px 0}.connection-editor-info:last-of-type{margin-bottom:20px}.connection-info-label{color:#999;font-size:12px;font-weight:500;min-width:40px}.connection-info-value{color:#333;font-size:13px;font-weight:500}.connection-editor-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.connection-editor-actions button{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 18px;transition:all .2s ease}.btn-secondary{background:#f0f0f0;color:#666}.btn-secondary:hover{background:#e0e0e0}.btn-primary{background:#667eea}.btn-primary:hover{background:#5a6fd6}.btn-danger{background:#ff4d4f;color:#fff}.btn-danger:hover{background:#e04346}.undo-redo-controls{background:#fff;border-radius:10px;bottom:16px;box-shadow:0 2px 8px #00000026;display:flex;gap:4px;padding:4px;position:absolute;right:16px;z-index:100}.undo-redo-controls .undo-redo-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:#666;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s ease;width:36px}.undo-redo-controls .undo-redo-btn:hover:not(:disabled){background:#0000000d;color:#333}.undo-redo-controls .undo-redo-btn:disabled{color:#ccc;cursor:not-allowed}.undo-redo-controls .undo-redo-btn .material-symbols-outlined{font-size:20px}.ai-generation-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:1000}.ai-generation-modal{align-items:center;background:#2d2d30;border:1px solid #4a4a4a;border-radius:8px;display:flex;flex-direction:column;gap:12px;padding:24px 32px;text-align:center}.ai-generation-modal p{color:#fff;font-size:14px;margin:0}.ai-generation-modal .subtitle{color:#888;font-size:12px}.ai-generation-modal .loading-spinner{animation:spin 1s linear infinite;border:3px solid #4a4a4a;border-radius:50%;border-top-color:#667eea;height:32px;width:32px}@keyframes spin{to{transform:rotate(1turn)}}.story-board-title .scene-title-overlay-text{align-items:center;background:linear-gradient(135deg,#667eea26,#764ba226);border:1px solid #667eea4d;color:#667eea;display:flex}.branch-draft-modal{background:#1e1e1e;border:1px solid #3a3a3a;border-radius:10px;box-shadow:0 12px 40px #0009;color:#ddd;max-height:80vh;max-width:92vw;overflow-y:auto;padding:20px;width:460px}.branch-draft-modal h3{font-size:1.05rem;margin:0 0 6px}.branch-draft-sub{color:#9a9a9a;font-size:.82rem;margin:0 0 14px}.branch-draft-list{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0 0 16px;padding:0}.branch-draft-list li{align-items:flex-start;background:#262626;border:1px solid #333;border-radius:6px;display:flex;gap:10px;padding:8px 10px}.branch-draft-list .bd-swatch{border-radius:3px;flex-shrink:0;height:12px;margin-top:3px;width:12px}.branch-draft-list .bd-label{color:#eee;font-size:.9rem}.branch-draft-list .bd-arrow{color:#888;font-size:.82rem}.branch-draft-list .bd-cond{color:#bbb;font-size:.8rem;margin-top:2px}.branch-draft-list .bd-cond code{background:#1a1a1a;border:1px solid #333;border-radius:4px;color:#9ecbff;font-family:monospace;padding:1px 5px}.branch-draft-list .bd-cond em{color:#888}.branch-draft-actions{display:flex;gap:10px;justify-content:flex-end}.narrative-board-container .nb-proceed.proceed-btn{background:var(--accent);border:none;border-radius:10px;bottom:16px;box-shadow:0 2px 8px #00000026;color:var(--accent-foreground);cursor:pointer;font-size:.82rem;font-weight:600;left:16px;padding:.5rem .95rem;position:absolute;transition:background .15s ease,transform .15s ease,box-shadow .2s ease;white-space:nowrap;z-index:100}.narrative-board-container .nb-proceed.proceed-btn:hover{background:var(--accent-hover);box-shadow:0 4px 12px #0003;transform:translateY(-1px)}@media (max-width:720px){.narrative-board-container .media-toggle,.narrative-board-container .variables-toggle{min-height:40px;min-width:40px}}.action-canvas-empty-state{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#14141eb8;border-radius:14px;box-shadow:0 8px 24px #00000040;display:flex;flex-direction:column;gap:12px;left:50%;max-width:360px;padding:28px 32px;pointer-events:auto;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%);z-index:20}.action-canvas-empty-state .material-symbols-outlined{color:#ffffff8c;font-size:32px}.action-canvas-empty-state h3{color:#ffffffeb;font-size:15px;font-weight:600;margin:0}.action-canvas-empty-state p{color:#fff9;font-size:13px;margin:0}.action-canvas-empty-state-actions{display:flex;gap:10px;margin-top:4px}.action-canvas-empty-state-actions button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:6px;padding:8px 14px;transition:background .15s ease,transform .15s ease}.action-canvas-empty-state-actions .empty-state-add-btn{background:#ffffff1f;color:#ffffffeb}.action-canvas-empty-state-actions .empty-state-add-btn:hover{background:#fff3;transform:translateY(-1px)}.action-canvas-empty-state-actions .empty-state-generate-btn{background:var(--accent);color:var(--accent-foreground)}.action-canvas-empty-state-actions .empty-state-generate-btn:hover{background:var(--accent-hover);transform:translateY(-1px)}.story-map-view{background:var(--surface-base);color:var(--text-primary);display:flex;flex-direction:column;height:100%;min-height:0;width:100%}.story-map-toolbar{align-items:center;background:var(--surface-panel);border-bottom:1px solid var(--border);display:flex;flex:0 0 auto;gap:16px;padding:8px 16px}.story-map-title{color:var(--text-primary);font-size:14px;font-weight:600}.story-map-hint{color:var(--text-secondary);flex:1 1 auto;font-size:12px}.story-map-actions{display:flex;flex:0 0 auto;gap:8px}.story-map-keyboard-alt{align-items:center;display:flex;flex:0 0 auto;gap:10px}.story-map-keyboard-alt label{align-items:center;color:var(--text-secondary);display:flex;font-size:11px;gap:4px;white-space:nowrap}.story-map-keyboard-alt select{max-width:140px;padding:3px 6px}.sm-btn,.story-map-keyboard-alt select{background:var(--surface-interactive);border:1px solid var(--border-strong);border-radius:4px;color:var(--text-primary);font-size:12px}.sm-btn{cursor:pointer;padding:4px 10px}.sm-btn:hover{background:var(--surface-interactive-hover)}.sm-btn-danger{border-color:var(--status-destructive);color:var(--status-destructive)}.sm-btn-danger:hover{background:var(--surface-interactive-hover)}.sm-btn-primary{border-color:var(--status-success);color:var(--status-success)}.sm-btn-primary.active,.sm-btn-primary:hover{background:var(--surface-interactive-hover)}.sm-btn:disabled{cursor:default;opacity:.5}.story-map-canvas{flex:1 1 auto;min-height:0;overflow:hidden;position:relative}@media (max-width:820px){.story-map-toolbar{flex-wrap:wrap;gap:8px;padding:8px 10px}.story-map-hint{flex-basis:100%;order:3}.story-map-actions,.story-map-keyboard-alt{flex-wrap:wrap}}@media (max-width:480px){.story-map-keyboard-alt{flex-basis:100%}.story-map-keyboard-alt label{flex:1 1 120px}.story-map-keyboard-alt select{max-width:none;min-width:0}.story-map-actions{flex-basis:100%}}.sm-node{background:#24243c;border:2px solid #3a3a55;border-radius:8px;box-sizing:border-box;display:flex;flex-direction:column;gap:6px;height:100%;overflow:hidden;padding:8px 10px;-webkit-user-select:none;user-select:none;width:100%}.sm-node.selected{box-shadow:0 0 0 2px #4ec9b0}.sm-node-header{align-items:center;display:flex;gap:8px}.sm-node-icon{align-items:center;border-radius:6px;display:inline-flex;flex:0 0 auto;font-size:18px;height:28px;justify-content:center;width:28px}.sm-cond-icon{background:#ff980033;color:#ff9800}.sm-node-title{color:#fff;font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sm-node-desc{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:#9a9ab0;display:-webkit-box;font-size:11px;line-height:1.3;overflow:hidden}.sm-conditional{border-color:#ff9800}.sm-node-branches{display:flex;flex-direction:column;gap:4px}.sm-branch{background:#ffffff0a;border-left:3px solid #9e9e9e;border-radius:2px;color:#d0d0e0;font-size:11px;overflow:hidden;padding:2px 6px;text-overflow:ellipsis;white-space:nowrap}.sm-geo-banner{align-items:center;background:#14142af0;border:1px solid #2a2a40;border-radius:8px;box-shadow:0 4px 16px #00000059;display:flex;gap:10px;left:50%;padding:8px 12px;position:absolute;top:12px;transform:translateX(-50%);z-index:25}.sm-geo-msg{color:#e0e0e0;font-size:12px}.sm-geo-warn{color:#f0c674}.sm-validation-panel{background:#14142a;border-left:1px solid #2a2a40;bottom:0;box-shadow:-8px 0 24px #00000059;display:flex;flex-direction:column;max-width:92%;position:absolute;right:0;top:0;width:380px;z-index:20}.sm-vp-header{align-items:center;border-bottom:1px solid #2a2a40;display:flex;flex:0 0 auto;gap:10px;padding:10px 14px}.sm-vp-title{color:#fff;flex:1 1 auto;font-size:14px;font-weight:600}.sm-verdict{border-radius:10px;font-size:11px;font-weight:700;letter-spacing:.5px;padding:2px 8px}.sm-verdict.ok{background:#4ec9b02e;color:#6fe3cd}.sm-verdict.fail{background:#dc143c33;color:#ff8a98}.sm-vp-close{background:none;border:none;color:#8a8aa0;cursor:pointer;font-size:20px;line-height:1;padding:0 4px}.sm-vp-close:hover{color:#fff}.sm-vp-run{border-bottom:1px solid #2a2a40;display:flex;flex:0 0 auto;flex-direction:column;gap:8px;padding:12px 14px}.sm-vp-run label{color:#9a9ab0;display:flex;flex-direction:column;font-size:11px;gap:3px}.sm-vp-run select{background:#1f1f38;border:1px solid #3a3a55;border-radius:4px;color:#e0e0e0;font-size:12px;padding:4px 6px}.sm-vp-run select:disabled{opacity:.5}.sm-vp-run-btn{align-self:flex-start;margin-top:2px}.sm-vp-body{flex:1 1 auto;min-height:0;overflow-y:auto;padding:12px 14px}.sm-vp-hint{color:#8a8aa0;font-size:12px;line-height:1.4;margin:0}.sm-vp-summary{display:flex;font-size:12px;font-weight:600;gap:14px;margin-bottom:10px}.sm-vp-check{background:#181830;border:1px solid #2a2a40;border-radius:6px;margin-bottom:8px;padding:8px 10px}.sm-vp-check.status-fail{border-color:#5a2230}.sm-vp-check-head{align-items:center;display:flex;gap:8px;margin-bottom:4px}.sm-vp-check-title{color:#e6e6f0;flex:1 1 auto;font-size:12px;font-weight:600}.sm-vp-status{border-radius:8px;font-size:10px;letter-spacing:.5px;padding:1px 6px;text-transform:uppercase}.sm-status-pass{background:#4ec9b029;color:#6fe3cd}.sm-status-fail{background:#dc143c2e;color:#ff8a98}.sm-status-skipped{background:#9696aa29;color:#b0b0c4}.sm-vp-counts{display:flex;font-size:11px;font-weight:700;gap:8px}.sm-vp-meta,.sm-vp-reason{color:#9a9ab0;font-size:11px;margin-bottom:4px}.sm-vp-finding{align-items:baseline;color:#c8c8da;display:flex;font-size:11px;gap:8px;line-height:1.35;padding:3px 0}.sm-dot{border-radius:50%;flex:0 0 auto;height:8px;margin-top:4px;width:8px}.sm-vp-msg{flex:1 1 auto}.sm-vp-line{color:#7a7a92}.sm-locate{background:none;border:1px solid #3a3a55;border-radius:3px;color:#8fb7ff;cursor:pointer;flex:0 0 auto;font-size:10px;padding:1px 6px}.sm-locate:hover{background:#20203a}.sm-sev-error{color:#ff8a98}.sm-sev-warning{color:#f0c674}.sm-sev-info{color:#8fb7ff}.sm-dot.sm-sev-error{background:#dc143c}.sm-dot.sm-sev-warning{background:#e0a800}.sm-dot.sm-sev-info{background:#3a7bd5}.sm-vocab-body input,.sm-vocab-body select,.sm-vocab-body textarea,.sm-vp-run input,.sm-vp-run select,.sm-vp-run textarea{background:#1f1f38;border:1px solid #3a3a55;border-radius:4px;color:#e0e0e0;font-family:inherit;font-size:12px;padding:4px 6px}.sm-readiness{background:#181830;border:1px solid #2a2a40;border-radius:6px;margin-bottom:10px;padding:8px 10px}.sm-readiness.not-ready{border-color:#5a2230}.sm-readiness-head{color:#e6e6f0;font-size:12px;font-weight:600;margin-bottom:4px}.sm-vp-finding-group{margin-bottom:2px}.sm-readiness-details{border-left:2px solid #2a2a40;list-style:none;margin:0 0 4px 16px;padding:0}.sm-readiness-detail{color:#c8c8da;display:block;font-size:11px;line-height:1.4;min-width:0;overflow-wrap:anywhere;padding:2px 0 2px 10px}.sm-readiness-detail-fallback{color:#a8a8c0}.sm-readiness-what{color:#c8c8da}.sm-readiness-do,.sm-readiness-where{color:#7a7a92}.sm-readiness-fallback-field+.sm-readiness-fallback-field{margin-left:2px}.sm-readiness-token,.sm-readiness-token-wrap{overflow-wrap:anywhere;word-break:break-word}.sm-readiness-token{background:#14142a;border-radius:3px;color:#b8d4ff;padding:0 3px}.sm-readiness-expand{background:none;border:1px solid #3a3a55;border-radius:3px;color:#8fb7ff;cursor:pointer;font-size:10px;margin-left:4px;padding:0 5px}.sm-readiness-expand:hover{background:#20203a}.sm-correct,.sm-readiness-action{color:#8fb7ff;text-decoration:none}.sm-correct:hover,.sm-readiness-action:hover{text-decoration:underline}.sm-readiness-action-gone{color:#9a9ab0;font-style:italic}.sm-readiness-generic-action{margin-left:4px}.sm-trace-step{border-bottom:1px solid #22223a;display:flex;gap:8px;padding:6px 0}.sm-trace-step:last-child{border-bottom:none}.sm-trace-icon{color:#6fe3cd;flex:0 0 auto;font-size:16px;margin-top:1px}.sm-trace-body{flex:1 1 auto;min-width:0}.sm-trace-label{color:#e0e0e0;font-size:12px;font-weight:600}.sm-trace-effects{color:#9a9ab0;font-size:11px;margin-top:2px}.sm-trace-dialogue{color:#c8c8da;font-size:11px;font-style:italic;margin-top:2px}.sm-trace-gate{border-radius:8px;display:inline-block;font-size:10px;margin-top:2px;padding:1px 6px}.sm-trace-gate.guaranteed{background:#4ec9b029;color:#6fe3cd}.sm-trace-gate.luck_dependent{background:#e0a80029;color:#f0c674}.sm-trace-gate.impossible{background:#dc143c2e;color:#ff8a98}.sm-vocab-section{border-top:1px solid #2a2a40;margin-top:14px;padding-top:10px}.sm-vocab-toggle{text-align:left;width:100%}.sm-vocab-body{display:flex;flex-direction:column;gap:8px;margin-top:10px}.sm-vocab-body label{color:#9a9ab0;display:flex;flex-direction:column;font-size:11px;gap:3px}.sm-vocab-source{align-items:center;border-bottom:1px solid #22223a;display:flex;font-size:11px;gap:8px;padding:4px 0}.sm-vocab-source-name{color:#e0e0e0;flex:0 0 auto;font-weight:600}.sm-verdict.warn{background:#e0a8002e;color:#f0c674}.sm-uq-summary{color:#9a9ab0;display:flex;flex-direction:column;font-size:11px;gap:2px}.sm-uq-gate-list,.sm-uq-summary{margin-bottom:10px}.sm-uq-families{margin-top:6px}.sm-uq-judge-note,.sm-uq-unmeasured-with-reason{border-top:1px solid #2a2a40;margin-top:10px;padding-top:10px}.xw{color:var(--text-primary);margin:0 auto;max-width:1000px;max-width:1120px;padding:24px 28px 64px}.xw-header{margin-bottom:18px}.xw-quick .xw-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.xw-more{flex:0 0 auto;position:relative}.xw-more-menu{background:var(--surface-raised);border:1px solid var(--semantic-border-strong);border-radius:6px;box-shadow:var(--semantic-shadow);min-width:220px;padding:5px;position:absolute;right:0;top:calc(100% + 6px);z-index:5}.xw-more-item{background:#0000;border:0;border-radius:4px;color:var(--text-primary);cursor:pointer;display:block;font:inherit;font-size:12px;padding:9px 11px;text-align:left;width:100%}.xw-more-item:focus-visible,.xw-more-item:hover{background:var(--surface-interactive-hover)}.xw-header h2{font-size:22px;letter-spacing:-.01em}.xw-hero{padding:16px 18px}.xw-hero,.xw-panel,.xw-section,.xw-table-scroll{border-radius:8px}.xw-btn.primary{background:var(--accent-primary)}.xw-custom-template{grid-gap:12px;background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:8px;display:grid;gap:12px;margin-top:14px;padding:14px 16px}.xw-custom-template input,.xw-custom-template select,.xw-custom-template textarea{background:var(--surface-input);border:1px solid var(--border-subtle);border-radius:5px;box-sizing:border-box;color:inherit;font:inherit;padding:8px 10px;width:100%}.xw-custom-template textarea{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;resize:vertical}.xw-custom-template-fields{grid-gap:12px;display:grid;gap:12px;grid-template-columns:minmax(120px,.35fr) minmax(180px,1fr)}.xw-custom-template-fields label{grid-gap:5px;display:grid;gap:5px}.xw-custom-template-fields label,.xw-help{color:var(--text-secondary);font-size:12px}.xw-help{margin:0}@media (max-width:640px){.xw{padding:18px 14px 48px}.xw-quick .xw-header{align-items:stretch;flex-direction:column}.xw-more{align-self:flex-start}.xw-more-menu{left:0;right:auto}.xw-hero{padding:14px}.xw-pills{flex-wrap:nowrap;overflow-x:auto;padding-bottom:3px}.xw-pill{flex:0 0 auto}}.xw-header h2{font-size:20px;font-weight:650;margin:0 0 4px}.xw-sub{color:var(--text-tertiary);font-size:13px;margin:0 0 18px}.xw code,.xw-sub code{color:var(--text-secondary);font-family:monospace;font-family:var(--font-mono,monospace);font-size:11.5px}.xw-hero{grid-gap:20px;align-items:center;background:linear-gradient(135deg,var(--accent-tint),#0000 55%);border:1px solid var(--border);border-radius:10px;display:grid;gap:20px;grid-template-columns:1fr auto;padding:20px 22px}.xw-hero-main h3{font-size:15px;font-weight:650;margin:0 0 6px}.xw-hero-sum{color:#a0a0a6;color:var(--text-secondary,#a0a0a6);font-size:12.5px;margin:0 0 10px}.xw-hero-sum b{color:#e8e8ea;color:var(--text-primary,#e8e8ea)}.xw-hero-actions{align-items:stretch;display:flex;flex-direction:column;gap:8px}@container workspace (max-width: 640px){.xw-hero{grid-template-columns:1fr}.xw-hero-actions{flex-direction:row;flex-wrap:wrap}.xw-hero-actions .xw-btn{flex:1 1 auto}}.xw-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.xw-chip{align-items:center;border-radius:999px;display:inline-flex;font-size:11px;gap:6px;padding:3px 10px}.xw-chip.ok{background:#7fa88424;color:#7fa884;color:var(--status-success,#7fa884)}.xw-chip.warn{background:#d49a4b24;color:#d49a4b;color:var(--warning,#d49a4b)}.xw-chip.bad{background:#c98b8b24;color:#c98b8b;color:var(--status-destructive,#c98b8b)}.xw-chip.info{background:#ffffff0f;color:#a0a0a6;color:var(--text-secondary,#a0a0a6)}.xw-pills{display:flex;flex-wrap:wrap;gap:8px}.xw-pill{background:#1e1e2a;background:var(--bg-elevated,#1e1e2a);border:1px solid #ffffff14;border:1px solid var(--border,#ffffff14);border-radius:999px;color:#a0a0a6;color:var(--text-secondary,#a0a0a6);cursor:pointer;font-size:11.5px;padding:6px 14px;transition:border-color .15s,color .15s}.xw-pill:hover{border-color:#ffffff24;border-color:var(--border-strong,#ffffff24);color:#e8e8ea;color:var(--text-primary,#e8e8ea)}.xw-pill.on{background:#c9a76a1a;background:var(--accent-tint,#c9a76a1a);border-color:#c9a76a;border-color:var(--accent,#c9a76a);color:#c9a76a;color:var(--accent,#c9a76a);font-weight:600}.xw-pill.unavailable,.xw-pill:disabled{cursor:not-allowed;opacity:.5}.xw-pill-unavailable-badge{color:#c98b8b;color:var(--status-destructive,#c98b8b);font-size:10px}.xw-btn{align-items:center;border:1px solid #0000;border-radius:4px;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:7px;justify-content:center;padding:10px 20px}.xw-btn.sm{font-size:11.5px;padding:5px 13px}.xw-btn.primary{background:#c9a76a;background:var(--accent,#c9a76a);color:#171511;color:var(--accent-foreground,#171511)}.xw-btn.primary:disabled{cursor:default;opacity:.6}.xw-btn.ghost{background:#0000;border-color:#ffffff24;border-color:var(--border-strong,#ffffff24);color:#a0a0a6;color:var(--text-secondary,#a0a0a6)}.xw-modal-overlay{align-items:center;background:#0000008c;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.xw-modal{background:#1c1a17;background:var(--bg-panel,#1c1a17);border:1px solid #ffffff24;border:1px solid var(--border-strong,#ffffff24);border-radius:10px;box-shadow:0 18px 40px #0006;max-height:calc(100vh - 40px);overflow-y:auto;padding:20px;width:min(420px,calc(100vw - 40px))}.xw-modal-title{color:#eee;color:var(--text-primary,#eee);font-size:15px;margin:0 0 4px}.xw-modal-sub{color:#a0a0a6;color:var(--text-secondary,#a0a0a6);font-size:12.5px;margin:0 0 14px}.xw-modal-input{background:#00000040;background:var(--bg-inset,#00000040);border:1px solid #ffffff24;border:1px solid var(--border-strong,#ffffff24);border-radius:7px;box-sizing:border-box;color:#eee;color:var(--text-primary,#eee);font-size:13.5px;padding:9px 12px;width:100%}.xw-modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.xw-error{background:#c98b8b14;border:1px solid #c98b8b59;border-radius:6px;color:#c98b8b;color:var(--status-destructive,#c98b8b);font-size:12.5px;margin:12px 0;padding:10px 14px}.xw-outcomes{display:flex;flex-direction:column;gap:6px;margin:12px 0}.xw-outcome{align-items:center;background:#c98b8b0f;border:1px solid #c98b8b4d;border-radius:6px;display:flex;flex-wrap:wrap;font-size:12.5px;gap:10px;padding:9px 14px}.xw-outcome--blocked{background:#d49a4b14;border-color:#d49a4b59}.xw-outcome--evicted,.xw-outcome--unavailable{background:#ffffff0a;border-color:#a0a0a64d}.xw-outcome-badge{background:#c98b8b24;border-radius:999px;color:#c98b8b;color:var(--status-destructive,#c98b8b);flex:none;font-size:9.5px;font-weight:700;letter-spacing:.06em;padding:2px 8px;text-transform:uppercase}.xw-outcome-badge--blocked{background:#d49a4b24;color:#d49a4b;color:var(--warning,#d49a4b)}.xw-outcome-badge--evicted,.xw-outcome-badge--unavailable{background:#ffffff14;color:#a0a0a6;color:var(--text-secondary,#a0a0a6)}.xw-outcome-message{color:#a0a0a6;color:var(--text-secondary,#a0a0a6);flex:1 1 auto}.xw-outcome-actions{align-items:center;display:flex;gap:10px;margin-left:auto}.xw-outcome-dismiss{background:none;border:none;color:#6a6a70;color:var(--text-tertiary,#6a6a70);cursor:pointer;font-size:15px;line-height:1;padding:0 2px}.xw-outcome-dismiss:hover{color:#e8e8ea;color:var(--text-primary,#e8e8ea)}.xw-note{font-size:12.5px;padding:14px 0}.xw-muted,.xw-note{color:#6a6a70;color:var(--text-tertiary,#6a6a70)}.xw-muted{font-size:11px}.xw-options{background:#1e1e2a;background:var(--bg-elevated,#1e1e2a);border:1px solid #ffffff14;border:1px solid var(--border,#ffffff14);border-radius:8px;display:flex;flex-wrap:wrap;gap:20px;margin:14px 0;padding:12px 16px}.xw-toggle{align-items:center;color:#a0a0a6;color:var(--text-secondary,#a0a0a6);display:inline-flex;font-size:12.5px;gap:8px}.xw-readiness{display:flex;flex-direction:column;gap:6px;margin:14px 0}.xw-finding{align-items:baseline;color:#a0a0a6;color:var(--text-secondary,#a0a0a6);display:flex;font-size:12px;gap:8px}.xw-finding .ic{flex:none}.xw-finding.error .ic{color:#c98b8b;color:var(--status-destructive,#c98b8b)}.xw-finding.warning .ic{color:#d49a4b;color:var(--warning,#d49a4b)}.xw-preview{background:#1e1e2a;background:var(--bg-elevated,#1e1e2a);border:1px solid #ffffff14;border:1px solid var(--border,#ffffff14);border-radius:8px;margin:16px 0;overflow:hidden}.xw-preview-head{align-items:center;border-bottom:1px solid #ffffff0d;border-bottom:1px solid var(--border-subtle,#ffffff0d);color:#a0a0a6;color:var(--text-secondary,#a0a0a6);display:flex;font-size:11.5px;gap:10px;padding:9px 14px}.xw-preview-head .fn{color:#e8e8ea;color:var(--text-primary,#e8e8ea);font-family:monospace;font-family:var(--font-mono,monospace)}.xw-preview-head .bounds{color:#6a6a70;color:var(--text-tertiary,#6a6a70);margin-left:auto}.live{align-items:center;color:#7fa884;color:var(--status-success,#7fa884);display:inline-flex;font-size:10px;font-weight:600;gap:6px;letter-spacing:.06em;text-transform:uppercase}.live i{background:#7fa884;background:var(--status-success,#7fa884);border-radius:50%;display:block;height:7px;width:7px}.xw-code{font-family:monospace;font-family:var(--font-mono,monospace);font-size:11px;line-height:1.55;margin:0;max-height:420px;overflow:auto;padding:14px 16px;white-space:pre}.xw-code,.xw-lastrun{color:#a0a0a6;color:var(--text-secondary,#a0a0a6)}.xw-lastrun{align-items:center;border:1px solid #ffffff0d;border:1px solid var(--border-subtle,#ffffff0d);border-radius:8px;display:flex;flex-wrap:wrap;font-size:12px;gap:12px;margin-top:18px;padding:10px 14px}.xw-lastrun .lbl{color:#6a6a70;color:var(--text-tertiary,#6a6a70);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.xw-lastrun .fn{color:#e8e8ea;color:var(--text-primary,#e8e8ea);font-family:monospace;font-family:var(--font-mono,monospace);min-width:0;overflow-wrap:anywhere}.xw-link{background:none;border:none;color:#c9a76a;color:var(--accent,#c9a76a);cursor:pointer;font-size:11.5px;margin-left:auto;padding:0}.xw-table-scroll{overflow-x:auto}.xw-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.xw-table{border-collapse:collapse;font-size:12px;min-width:560px;width:100%}.xw-table th{color:#6a6a70;color:var(--text-tertiary,#6a6a70);font-size:9.5px;font-weight:600;letter-spacing:.1em;padding:8px 12px;text-align:left;text-transform:uppercase}.xw-table td,.xw-table th{border-bottom:1px solid #ffffff0d;border-bottom:1px solid var(--border-subtle,#ffffff0d)}.xw-table td{color:#a0a0a6;color:var(--text-secondary,#a0a0a6);padding:9px 12px}.xw-empty{color:#6a6a70;color:var(--text-tertiary,#6a6a70)}.xw-setup-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.xw-setup-card{background:#1e1e2a;background:var(--bg-elevated,#1e1e2a);border:1px solid #ffffff14;border:1px solid var(--border,#ffffff14);border-radius:8px;display:flex;flex-direction:column;gap:8px;padding:15px 16px}.xw-setup-card .nm{color:#e8e8ea;color:var(--text-primary,#e8e8ea);font-size:13px;font-weight:650}.xw-setup-card .ds{color:#6a6a70;color:var(--text-tertiary,#6a6a70);flex:1 1;font-size:11px}.xw-setup-card .row{display:flex;gap:8px}.xw-target-bar{align-items:center;color:#a0a0a6;color:var(--text-secondary,#a0a0a6);display:flex;flex-wrap:wrap;font-size:12.5px;gap:10px;margin-bottom:16px}.xw-target-bar select{background:#15151e;background:var(--app-bg,#15151e);border:1px solid #ffffff24;border:1px solid var(--border-strong,#ffffff24);border-radius:4px;color:#e8e8ea;color:var(--text-primary,#e8e8ea);font-size:12px;padding:6px 10px}.xw-engine-delivery{align-items:center;background:#1e1e2a;background:var(--bg-elevated,#1e1e2a);border:1px solid #ffffff14;border:1px solid var(--border,#ffffff14);border-radius:8px;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin:0 0 16px;padding:12px 14px}.xw-engine-delivery h3{color:#e8e8ea;color:var(--text-primary,#e8e8ea);font-size:13px;margin:0 0 4px}.xw-engine-delivery p{margin:0}.xw-engine-delivery-action{align-items:flex-end;display:flex;flex-wrap:wrap;gap:8px}.xw-engine-delivery-message{color:#7fa884;color:var(--status-success,#7fa884);font-size:12px}.xw-engine-delivery-destination{align-items:center;color:#a0a0a6;color:var(--text-secondary,#a0a0a6);display:flex;font-size:12px;gap:8px;margin-top:8px}.xw-engine-delivery-destination select{background:#15151e;background:var(--app-bg,#15151e);border:1px solid #ffffff24;border:1px solid var(--border-strong,#ffffff24);border-radius:4px;color:#e8e8ea;color:var(--text-primary,#e8e8ea);font-size:12px;padding:5px 8px}.xw-pipeline{border-bottom:1px solid #ffffff14;border-bottom:1px solid var(--border,#ffffff14);display:flex;flex-wrap:wrap;gap:4px;margin-bottom:18px}.xw-stage{background:none;border:none;border-bottom:2px solid #0000;color:#6a6a70;color:var(--text-tertiary,#6a6a70);cursor:pointer;font-size:12.5px;padding:9px 15px}.xw-stage:hover{color:#a0a0a6;color:var(--text-secondary,#a0a0a6)}.xw-stage.on{border-bottom-color:#c9a76a;border-bottom-color:var(--accent,#c9a76a);color:#c9a76a;color:var(--accent,#c9a76a);font-weight:600}.xw-stage-body{min-height:200px}.xw-rail{display:flex;flex-direction:column;gap:2px}.xw-rail .xw-rail-item{align-items:center;background:none;border:none;border-radius:6px;color:#a0a0a6;color:var(--text-secondary,#a0a0a6);cursor:pointer;display:flex;font-size:12.5px;gap:8px;padding:8px 10px;text-align:left;width:100%}.xw-rail .xw-rail-item:hover{background:hsla(0,0%,100%,.035);background:var(--surface-1,hsla(0,0%,100%,.035))}.xw-rail .xw-rail-item.active{background:#c9a76a1a;background:var(--accent-tint,#c9a76a1a);color:#c9a76a;color:var(--accent,#c9a76a);font-weight:600}.xw-dim{color:#ffffff73;font-size:11px;margin-left:4px}.fieldmap-panel{display:flex;flex-direction:column;gap:12px}.fm-toolbar{gap:10px;justify-content:space-between}.fm-targets,.fm-toolbar{align-items:center;display:flex;flex-wrap:wrap}.fm-targets{gap:8px}.fm-field-row select,.fm-targets select,.fm-type-head select{background:#1e1e28;background:var(--input-bg,#1e1e28);padding:5px 8px}.fm-btn,.fm-field-row select,.fm-targets select,.fm-type-head select{border:1px solid #3a3a4a;border:1px solid var(--border-color,#3a3a4a);border-radius:6px;color:#e8e8ef;color:var(--text-color,#e8e8ef);font-size:13px}.fm-btn{background:#2a2a38;background:var(--button-bg,#2a2a38);cursor:pointer;padding:6px 12px}.fm-btn:hover:not(:disabled){background:#34344a;background:var(--button-hover-bg,#34344a)}.fm-btn:disabled{cursor:not-allowed;opacity:.5}.fm-btn.primary{background:#6c5ce7;background:var(--accent-color,#6c5ce7);border-color:#6c5ce7;border-color:var(--accent-color,#6c5ce7);color:#fff}.fm-actions{align-items:center;border-top:1px solid #2a2a38;border-top:1px solid var(--border-color,#2a2a38);display:flex;flex-wrap:wrap;gap:8px;padding:8px 0}.fm-hint{color:#9a9ab0;color:var(--text-muted,#9a9ab0);font-size:12px}.fm-upload{background:#181820;background:var(--panel-bg,#181820);border:1px solid #3a3a4a;border:1px solid var(--border-color,#3a3a4a);border-radius:8px;display:flex;flex-direction:column;gap:8px;padding:12px}.fm-upload-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.fm-upload input[type=text],.fm-upload textarea{background:#1e1e28;background:var(--input-bg,#1e1e28);border:1px solid #3a3a4a;border:1px solid var(--border-color,#3a3a4a);border-radius:6px;box-sizing:border-box;color:#e8e8ef;color:var(--text-color,#e8e8ef);font-size:13px;padding:6px 8px;width:100%}.fm-upload input[type=text]{max-width:280px}.fm-upload textarea{font-family:monospace}.fm-gap-banner{background:#6c5ce71f;border:1px solid #6c5ce766;border-radius:6px;color:#e8e8ef;color:var(--text-color,#e8e8ef);font-size:12px;padding:6px 10px}.fm-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.fm-type{background:#181820;background:var(--panel-bg,#181820);border:1px solid #2a2a38;border:1px solid var(--border-color,#2a2a38);border-radius:8px;padding:10px}.fm-type-head{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.fm-source-type{color:#e8e8ef;color:var(--text-color,#e8e8ef);font-weight:600}.fm-arrow{color:#777;color:var(--text-muted,#777)}.fm-fields{display:flex;flex-direction:column;gap:5px;margin-top:8px}.fm-field-row{grid-gap:6px;align-items:center;display:grid;gap:6px;grid-template-columns:1fr auto 1fr auto}.fm-source-field{color:#b8b8c8;color:var(--text-muted,#b8b8c8);font-size:13px}.fm-altitude{font-size:12px}.fm-links{border-top:1px dashed #2a2a38;border-top:1px dashed var(--border-color,#2a2a38);display:flex;flex-direction:column;gap:5px;margin-top:10px;padding-top:8px}.fm-links-head{align-items:center;display:flex;gap:8px;justify-content:space-between}.fm-links-title{color:#b8b8c8;color:var(--text-muted,#b8b8c8);font-size:12px;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.fm-link-row{grid-gap:6px;align-items:center;display:grid;gap:6px;grid-template-columns:1fr auto 1fr auto auto}.fm-link-row select{background:#1e1e28;background:var(--input-bg,#1e1e28);border:1px solid #3a3a4a;border:1px solid var(--border-color,#3a3a4a);border-radius:6px;color:#e8e8ef;color:var(--text-color,#e8e8ef);font-size:13px;padding:5px 8px}.fm-cardinality{font-size:12px}.fm-links-empty{margin:2px 0 0}.fm-btn.tiny{font-size:12px;line-height:1.2;padding:3px 8px}.fm-link-findings{font-size:12px;margin:4px 0 0;padding-left:18px}.fm-link-findings li{margin:2px 0}.fm-nested{border-top:1px dashed #2a2a38;border-top:1px dashed var(--border-color,#2a2a38);display:flex;flex-direction:column;gap:8px;margin-top:10px;padding-top:8px}.fm-nested-head{align-items:center;display:flex;gap:8px;justify-content:space-between}.fm-nested-title{color:#b8b8c8;color:var(--text-muted,#b8b8c8);font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.fm-nested-block{border:1px solid #2a2a38;border:1px solid var(--border-color,#2a2a38);border-radius:6px;display:flex;flex-direction:column;gap:6px;padding:6px 8px}.fm-nested-row{grid-gap:6px;align-items:center;display:grid;gap:6px;grid-template-columns:1fr auto 1fr auto auto}.fm-nested-row input,.fm-nested-row select,.fm-nested-subrow input{background:#1e1e28;background:var(--input-bg,#1e1e28);border:1px solid #3a3a4a;border:1px solid var(--border-color,#3a3a4a);border-radius:6px;color:#e8e8ef;color:var(--text-color,#e8e8ef);font-size:13px;padding:5px 8px}.fm-nested-subfields{border-left:2px solid #2a2a38;border-left:2px solid var(--border-color,#2a2a38);display:flex;flex-direction:column;gap:4px;padding-left:14px}.fm-nested-subrow{grid-gap:6px;align-items:center;display:grid;gap:6px;grid-template-columns:1fr auto 1fr auto}.fm-nested-empty{margin:2px 0 0}.fm-nested-behavior{align-items:center;color:#b8b8c8;color:var(--text-muted,#b8b8c8);display:flex;font-size:12px;gap:8px}.fm-nested-behavior input{background:#1e1e28;background:var(--input-bg,#1e1e28);border:1px solid #3a3a4a;border:1px solid var(--border-color,#3a3a4a);border-radius:6px;color:#e8e8ef;color:var(--text-color,#e8e8ef);font-size:12px;padding:4px 8px}.fm-nested-behavior-hint{margin:0 0 2px;padding-left:14px}.fm-dialogue{color:#b8b8c8;color:var(--text-muted,#b8b8c8);font-size:13px;margin:6px 0}.fm-dialogue select{margin-left:4px}.fm-warn{color:#ffb454;font-size:11px}.fieldmap-panel>.fm-empty,.fm-empty{color:#9a9ab0;color:var(--text-muted,#9a9ab0);font-size:13px;padding:8px 0}.fm-export{background:#181820;background:var(--panel-bg,#181820);border:1px solid #3a3a4a;border:1px solid var(--border-color,#3a3a4a);border-radius:8px;display:flex;flex-direction:column;gap:8px;margin-top:8px;padding:12px}.fm-export-title{color:#e8e8ef;color:var(--text-color,#e8e8ef);font-size:14px;margin:0}.fm-export-types{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.fm-export-label{color:#b8b8c8;color:var(--text-muted,#b8b8c8);font-size:13px}.fm-export-chk{align-items:center;color:#e8e8ef;color:var(--text-color,#e8e8ef);display:inline-flex;font-size:13px;gap:5px}.fm-export-entities summary{color:#b8b8c8;color:var(--text-muted,#b8b8c8);cursor:pointer;font-size:13px}.fm-export-entity-tools{display:flex;gap:6px;padding:8px 0 4px}.fm-export-entity-list{grid-gap:4px 12px;display:grid;gap:4px 12px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));max-height:220px;overflow-y:auto;padding:4px 2px}.fm-export-summary{color:#e8e8ef;color:var(--text-color,#e8e8ef);display:flex;flex-direction:column;font-size:13px;gap:6px}.fm-muted{color:#777;color:var(--text-muted,#777);font-size:12px}.fm-pkg-root{align-items:center;color:#999;color:var(--text-muted,#999);cursor:pointer;display:inline-flex;font-size:12px;gap:4px;margin-left:8px}.fm-pkg-root.active{color:#87ceeb;color:var(--accent-color,#87ceeb);font-weight:600}.fm-export-pkg-opts{align-items:center;display:flex;flex-wrap:wrap;font-size:13px;gap:16px;margin:6px 0}.fm-export-pkg-opts input[type=text]{color:#e8e8ef;color:var(--text-color,#e8e8ef);width:140px}.fm-export-package,.fm-export-pkg-opts input[type=text]{background:#1e1e28;background:var(--input-bg,#1e1e28);border:1px solid #3a3a4a;border:1px solid var(--border-color,#3a3a4a);border-radius:6px;font-size:13px;padding:4px 8px}.fm-export-package code{color:#aaa;color:var(--text-muted,#aaa);font-size:12px}.fm-nested-edge{background:#1e1e28;background:var(--input-bg,#1e1e28);border-left:2px solid #6c5ce7;border-left:2px solid var(--accent-color,#6c5ce7);border-radius:4px;display:flex;flex-direction:column;gap:6px;margin-top:6px;padding:6px 8px}.fm-nested-edge-row{align-items:center;display:flex;flex-wrap:wrap;font-size:12px;gap:14px}.fm-nested-edge-fields input,.fm-nested-edge-row input{background:#15151d;background:var(--bg-color,#15151d);border:1px solid #3a3a4a;border:1px solid var(--border-color,#3a3a4a);border-radius:5px;color:#e8e8ef;color:var(--text-color,#e8e8ef);font-size:12px;padding:3px 6px}.fm-edge-tag{width:84px}.fm-nested-edge-fields{gap:3px}.fm-nested-edge-fields,.pt-panel{display:flex;flex-direction:column}.pt-panel{gap:12px}.pt-note{font-size:11px;margin:4px 0;opacity:.7}.pt-resume{border:1px solid #2b2f36;border:1px solid var(--color-border,#2b2f36);border-radius:8px;padding:10px 12px}.pt-resume-label{font-size:11px;margin-bottom:6px;opacity:.75}.pt-resume-list{display:flex;flex-wrap:wrap;gap:6px}.pt-setup-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.pt-field{display:flex;flex-direction:column;gap:3px}.pt-field.pt-wide{grid-column:1/-1}.pt-field label{font-size:11px;opacity:.75}.pt-field input,.pt-field select{background:#14171c;background:var(--color-background,#14171c);border:1px solid #2b2f36;border:1px solid var(--color-border,#2b2f36);border-radius:5px;color:#e6e6e6;color:var(--color-text,#e6e6e6);font-size:12px;padding:6px 8px}.pt-readiness{border-radius:6px;font-size:12px;padding:8px 10px}.pt-readiness--ok{background:#39ff1414;color:#39ff14;color:var(--color-primary,#39ff14)}.pt-readiness--blocked{background:#ef9f271a;color:#f0b95c}.pt-assist{border:1px solid #2b2f36;border:1px solid var(--color-border,#2b2f36);border-radius:8px;display:flex;flex-direction:column;gap:6px;padding:10px 12px}.pt-assist-label{font-size:11px;opacity:.75}.pt-assist-item{font-size:12px}.pt-actions,.pt-assist-item{align-items:center;display:flex;gap:8px}.pt-session-bar{align-items:center;background:#1c1f25;background:var(--color-background-secondary,#1c1f25);border-radius:6px;display:flex;gap:12px;justify-content:space-between;padding:8px 12px}.pt-session-title{font-size:13px;font-weight:600}.pt-session-actions{align-items:center;display:flex;gap:10px}.pt-transcript{gap:8px}.pt-transcript,.pt-turn{display:flex;flex-direction:column}.pt-turn{border:1px solid #2b2f36;border:1px solid var(--color-border,#2b2f36);border-radius:6px;gap:6px;padding:8px 10px}.pt-turn-input{align-items:baseline;display:flex;font-size:12px;gap:6px;opacity:.85}.pt-turn-narration{font-size:13px;line-height:1.45}.pt-turn-footer{display:flex;gap:12px}.pt-badge{background:#87ceeb29;border-radius:10px;color:#87ceeb;font-size:10px;padding:1px 7px;text-transform:uppercase}.pt-badge--done{background:#39ff141a;color:#39ff14;color:var(--color-primary,#39ff14);text-transform:none}.pt-check-strip{background:#39ff140f;border:1px solid #39ff144d;border-radius:5px;color:#a8ffa0;font-family:monospace;font-size:11px;padding:4px 8px}.pt-spoken{font-size:11px;font-style:italic;margin-top:2px;opacity:.6}.pt-link{background:none;border:none;color:inherit;cursor:pointer;font-size:11px;opacity:.75;padding:0;text-decoration:underline}.pt-link:hover{opacity:1}.pt-provenance{background:#14171c;background:var(--color-background,#14171c);border-radius:5px;font-size:10px;max-height:240px;overflow:auto;padding:8px}.pt-discoveries{display:flex;flex-direction:column;gap:4px;margin-top:4px}.pt-discovery{align-items:center;background:#dda0dd0f;border:1px solid #dda0dd59;border-radius:5px;display:flex;font-size:11px;gap:8px;justify-content:space-between;padding:5px 8px}.pt-composer{background:#1c1f25;background:var(--color-background-secondary,#1c1f25);border-radius:8px;display:flex;flex-direction:column;gap:8px;padding:10px 12px}.pt-mode-row{display:flex;gap:5px}.pt-mode-btn{background:#0000;border:1px solid #2b2f36;border:1px solid var(--color-border,#2b2f36);border-radius:12px;color:#e6e6e6;color:var(--color-text,#e6e6e6);cursor:pointer;font-size:11px;padding:3px 12px;text-transform:capitalize}.pt-mode-btn--on{background:#39ff14;background:var(--color-primary,#39ff14);border-color:#39ff14;border-color:var(--color-primary,#39ff14);color:#0a0a0a}.pt-composer-row{align-items:flex-end;display:flex;gap:8px}.pt-composer textarea{background:#14171c;background:var(--color-background,#14171c);border:1px solid #2b2f36;border:1px solid var(--color-border,#2b2f36);border-radius:5px;color:#e6e6e6;color:var(--color-text,#e6e6e6);flex:1 1;font-size:12px;min-height:38px;padding:6px 8px}.pt-report-head{align-items:center;display:flex;font-size:14px;font-weight:600;justify-content:space-between}.pt-pill{border:1px solid #2b2f36;border:1px solid var(--color-border,#2b2f36);border-radius:12px;font-size:11px;opacity:.85;padding:3px 9px}.pt-report-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr))}.pt-metric{background:#1c1f25;background:var(--color-background-secondary,#1c1f25);border-radius:6px;font-size:11px;padding:8px 10px}.pt-metric strong{display:block;font-size:16px;margin-top:3px}.pt-finding-row{border:1px solid #2b2f36;border:1px solid var(--color-border,#2b2f36);border-radius:6px;font-size:12px;gap:8px;justify-content:space-between;padding:6px 8px}.pt-finding-row,.sed-backdrop{align-items:center;display:flex}.sed-backdrop{background:#0a0a0eb8;inset:0;justify-content:center;padding:24px;position:fixed;z-index:2000}.sed{background:var(--bg-elevated);border:1px solid #ffffff24;border:1px solid var(--border-strong,#ffffff24);border-radius:12px;border-radius:var(--radius-lg,12px);box-shadow:0 16px 48px #00000080;box-shadow:var(--shadow-lg,0 16px 48px #00000080);max-height:90vh;overflow:auto;width:min(860px,100%)}.sed-head{align-items:center;border-bottom:1px solid var(--border);display:flex;gap:8px;padding:12px 14px}.sed-head .material-symbols-outlined{color:var(--accent);font-size:17px}.sed-title{color:var(--text-primary);font-size:14px;font-weight:500}.sed-sub{font-size:11px}.sed-close,.sed-sub{color:var(--text-muted)}.sed-close{background:#0000;border:none;cursor:pointer;line-height:1;margin-left:auto}.sed-close:hover{color:var(--text-primary)}.sed-body{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));padding:14px}.sed-pane{min-width:0}.sed-label{align-items:center;color:var(--text-secondary);display:flex;font-size:11px;gap:7px;margin-bottom:6px}.sed-canon{background:#c9a76a1a;background:var(--accent-tint,#c9a76a1a);color:var(--accent)}.sed-canon,.sed-readonly{border-radius:999px;font-size:10px;padding:1px 7px}.sed-readonly{background:#ffffff0f;color:var(--text-muted)}.sed-textarea{background:var(--bg-base);border:1px solid var(--accent);border-radius:6px;box-sizing:border-box;color:var(--text-primary);font-family:inherit;resize:vertical;width:100%}.sed-reference,.sed-textarea{font-size:14px;line-height:1.6;padding:10px 12px}.sed-reference{background:var(--bg-panel);border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);min-height:120px;white-space:pre-wrap}.sed-warning{align-items:flex-start;background:#ef9f270f;border-left:2px solid #ef9f27;color:var(--text-secondary);display:flex;font-size:12px;gap:7px;line-height:1.5;margin:0 14px 12px;padding:9px 11px}.sed-warning .material-symbols-outlined{color:#ef9f27;font-size:15px}.sed-actions{border-top:1px solid var(--border);display:flex;gap:8px;justify-content:flex-end;padding:12px 14px}.sed-btn{background:#0000;border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);cursor:pointer;font-family:inherit;font-size:12px;padding:5px 14px}.sed-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.sed-btn:disabled{cursor:default;opacity:.5}.sed-btn.is-primary{background:var(--accent);border-color:var(--accent);color:#171511;color:var(--accent-fg,#171511);font-weight:500}.sed-btn.is-primary:hover:not(:disabled){background:#d8b87f;background:var(--accent-hover,#d8b87f)}.draft-status-line{align-items:center;display:inline-flex;font-size:.8rem;gap:6px}.draft-status-glyph{font-size:.85em;line-height:1}.draft-status-line-dirty .draft-status-glyph,.draft-status-line-dirty .draft-status-label,.draft-status-line-saving .draft-status-glyph,.draft-status-line-saving .draft-status-label{color:#a0a0a6;color:var(--text-secondary,#a0a0a6)}.draft-status-line-saved .draft-status-glyph,.draft-status-line-saved .draft-status-label{color:var(--semantic-success)}.draft-status-line-failed .draft-status-glyph,.draft-status-line-failed .draft-status-label{color:var(--semantic-danger)}.draft-status-line-recovered .draft-status-glyph,.draft-status-line-recovered .draft-status-label{color:#c9a76a;color:var(--accent,#c9a76a)}.draft-status-retry{background:#0000;border:1px solid;border-radius:6px;color:inherit;cursor:pointer;font-size:.78rem;padding:2px 8px}.draft-status-retry:disabled{cursor:not-allowed;opacity:.5}.draft-status-live-region{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.draft-conflict-banner{background:#c9a76a14;border:1px solid #c9a76a;border:1px solid var(--accent,#c9a76a);border-radius:8px;margin:8px 0;padding:12px 14px}.draft-conflict-banner-message{color:#e8e8ea;color:var(--text-primary,#e8e8ea);font-size:.85rem;line-height:1.5;margin:0 0 10px}.draft-conflict-banner-actions{display:flex;flex-wrap:wrap;gap:8px}.draft-conflict-banner-copy,.draft-conflict-banner-discard,.draft-conflict-banner-restore{background:#0000;border-radius:6px;cursor:pointer;font-size:.8rem;padding:6px 12px}.draft-conflict-banner-restore{border:1px solid #c9a76a;border:1px solid var(--accent,#c9a76a);color:#c9a76a;color:var(--accent,#c9a76a);font-weight:600}.draft-conflict-banner-copy{border:1px solid #ffffff1f;border:1px solid var(--border,#ffffff1f);color:#a0a0a6;color:var(--text-secondary,#a0a0a6)}.draft-conflict-banner-discard{border:1px solid #dc354566;color:var(--semantic-danger)}.draft-conflict-banner-copy-error{color:var(--semantic-danger);font-size:.78rem;margin:8px 0 0}.draft-conflict-banner-preview{background:var(--surface-interactive);border-radius:6px;font-size:.82rem;margin-top:10px;max-height:240px;overflow-y:auto;padding:10px;white-space:pre-wrap}.bible-pane-head{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:8px}.bible-pane-head .wiki-overview-title{margin-bottom:0}.bible-pane-intro{max-width:640px}.bible-onboarding-hint{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-lg);margin:8px 0 24px;padding:14px 16px}.bible-sections{display:flex;flex-direction:column;gap:22px;margin-top:8px;max-width:720px}.bible-section-label{color:var(--text-primary);display:block;font-size:14px;font-weight:600;margin-bottom:2px}.bible-section-hint{color:var(--text-muted);font-size:12px;margin:0 0 8px}.bible-section-input{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-md);box-sizing:border-box;color:var(--text-primary);font-family:inherit;font-size:14px;line-height:1.6;padding:10px 12px;resize:vertical;width:100%}.bible-section-input:focus{border-color:var(--accent);outline:none}.bible-seed{background:var(--accent-tint);border:1px dashed var(--accent);border-radius:var(--radius-md);margin-bottom:8px;padding:10px 12px}.bible-seed-label{color:var(--accent);display:block;font-size:11px;letter-spacing:.05em;margin-bottom:4px;text-transform:uppercase}.bible-seed-text{color:var(--text-primary);font-size:14px;margin:0 0 8px;white-space:pre-wrap}.bible-pane-actions{align-items:center;display:flex;gap:12px;margin-top:26px;padding-bottom:24px}.bible-unsaved-hint{color:var(--text-muted);font-size:13px;font-style:italic}.rules-vocab-hub .wiki-back{margin-bottom:12px}.vocab-category{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:16px;max-width:640px;padding:16px 18px}.vocab-category-title{color:var(--text-primary);font-size:15px;font-weight:600;margin:0 0 6px}.vocab-category-body{color:var(--text-secondary);font-size:14px;line-height:1.5;margin:0 0 10px}.vocab-import-row{align-items:center;display:flex;gap:10px;margin-top:6px}.vocab-import-select{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);flex:1 1;font-size:14px;height:36px;padding:0 10px}.vocab-import-error{color:#dc3545;color:var(--danger,#dc3545);font-size:13px;margin-top:8px}.vocab-import-result{background:var(--accent-tint);border-radius:var(--radius-md);margin-top:12px;padding:10px 12px}.vocab-import-result-title{color:var(--accent);font-size:12px;letter-spacing:.05em;margin:0 0 6px;text-transform:uppercase}.vocab-import-result-list{color:var(--text-primary);font-size:13px;margin:0;padding-left:18px}.manual-event-form{gap:14px}.manual-event-form,.mef-field{display:flex;flex-direction:column}.mef-field{gap:4px}.mef-field-row{display:flex;gap:12px}.mef-field-narrow{flex:0 0 160px}.mef-field-row>.mef-field:first-child{flex:1 1}.mef-label{color:var(--text-secondary);font-size:13px;font-weight:500}.mef-input{background:var(--bg-panel);background:var(--bg-input,var(--bg-panel));border:1px solid var(--border);border-radius:var(--radius-sm);box-sizing:border-box;color:var(--text-primary);font-size:14px;padding:8px 10px;width:100%}.mef-participant-row{display:flex;gap:8px}.mef-role-input{flex:0 0 140px}.mef-participant-list{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:8px 0 0;padding:0}.mef-participant-chip{align-items:center;background:var(--accent-tint);border-radius:var(--radius-pill);color:var(--accent);display:flex;font-size:13px;gap:6px;padding:3px 6px 3px 10px}.mef-chip-remove{background:none;border:none;color:var(--accent);cursor:pointer;font-size:14px;line-height:1;padding:0 2px}.mef-error{color:#d64545;color:var(--danger,#d64545);font-size:13px;margin:0}.mef-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:6px}.mef-btn-primary,.mef-btn-secondary{border-radius:var(--radius-sm);cursor:pointer;font-size:14px;padding:8px 16px}.mef-btn-primary{background:var(--accent);border:none;color:var(--bg-panel)}.mef-btn-primary:disabled,.mef-btn-secondary:disabled{cursor:not-allowed;opacity:.6}.mef-btn-secondary{background:none;border:1px solid var(--border);color:var(--text-primary)}.capture-review{display:flex;flex-direction:column;gap:12px}.capture-review-intro{color:var(--text-secondary);font-size:13px;margin:0}.capture-review-textarea{background:var(--bg-panel);background:var(--bg-input,var(--bg-panel));border:1px solid var(--border);border-radius:var(--radius-sm);box-sizing:border-box;color:var(--text-primary);font-size:14px;padding:10px;resize:vertical;width:100%}.capture-review-actions-row{display:flex;justify-content:flex-end}.capture-review-results{border-top:1px solid var(--border);padding-top:12px}.capture-proposal-list{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;max-height:320px;overflow-y:auto;padding:0}.capture-proposal-item{border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px}.capture-proposal-head{align-items:center;cursor:pointer;display:flex;gap:8px}.capture-proposal-verb{color:var(--text-primary);font-weight:500}.capture-proposal-badge{border-radius:var(--radius-pill);font-size:11px;padding:2px 8px}.capture-proposal-badge.invalid{background:#fdf0d5;background:var(--warning-tint,#fdf0d5);color:#9a6700;color:var(--warning,#9a6700)}.capture-proposal-badge.applied{background:#dcf5e5;background:var(--success-tint,#dcf5e5);color:#1a7f37;color:var(--success,#1a7f37)}.capture-proposal-badge.failed{background:#fbe4e4;background:var(--danger-tint,#fbe4e4);color:#d64545;color:var(--danger,#d64545)}.capture-proposal-how{color:var(--text-secondary);font-size:13px;margin:4px 0 0}.capture-proposal-participants{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.capture-proposal-participant{background:var(--accent-tint);border-radius:var(--radius-pill);color:var(--accent);font-size:11px;padding:2px 8px}.capture-proposal-issues{color:#9a6700;color:var(--warning,#9a6700);font-size:12px;margin:6px 0 0;padding-left:18px}.capture-proposal-fail-detail{color:#d64545;color:var(--danger,#d64545);font-size:12px;margin:6px 0 0}.capture-review-footer{display:flex;gap:10px;justify-content:flex-end}.timeline-pane-head{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.timeline-pane-actions{display:flex;gap:8px}.timeline-order-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin:14px 0}.timeline-order-toggle{border:1px solid var(--border);border-radius:var(--radius-pill);display:inline-flex;overflow:hidden}.timeline-order-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:13px;padding:6px 14px}.timeline-order-btn:disabled{cursor:not-allowed;opacity:.5}.timeline-order-btn.active{background:var(--accent-tint);color:var(--accent);font-weight:500}.timeline-order-hint{color:var(--text-muted);font-size:12px}.timeline-recent{border:1px solid var(--accent);border-radius:var(--radius-lg);margin-bottom:16px;padding:10px 14px}.timeline-recent-title{color:var(--accent);font-size:12px;letter-spacing:.05em;margin-bottom:8px;text-transform:uppercase}.timeline-entry-list{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0}.timeline-entry{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-md);padding:10px 14px}.timeline-entry-head{align-items:baseline;display:flex;gap:8px;justify-content:space-between}.timeline-entry-verb{color:var(--text-primary);font-weight:500}.timeline-entry-source{color:var(--text-muted);font-size:11px;text-transform:uppercase}.timeline-entry-how{color:var(--text-secondary);font-size:13px;margin:4px 0 0}.timeline-entry-meta{color:var(--text-muted);display:flex;flex-wrap:wrap;font-size:12px;gap:10px;margin-top:6px}.timeline-entry-inworld{font-style:italic}.timeline-entry-participants{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.timeline-entry-participant{background:var(--accent-tint);border-radius:var(--radius-pill);color:var(--accent);font-size:11px;padding:2px 8px}.timeline-unordered-group{margin-top:18px}.timeline-unordered-label{color:var(--text-muted);font-size:12px;letter-spacing:.05em;margin-bottom:8px;text-transform:uppercase}.timeline-empty,.timeline-error{padding:18px 0}.timeline-pagination{align-items:center;display:flex;gap:14px;justify-content:center;margin-top:18px}.timeline-pagination-status{color:var(--text-muted);font-size:12px}.entity-history-section{margin-top:0}.entity-history-toggle{align-items:center;background:none;border:none;color:inherit;cursor:pointer;display:flex;font:inherit;justify-content:space-between;padding:0;text-align:left;width:100%}.entity-history-title{margin-bottom:0}.entity-history-caret{color:var(--text-muted);flex:none;font-size:11px}.entity-history-body{margin-top:8px}.entity-history-error{align-items:center;display:flex;gap:10px}.entity-history-list{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0}.entity-history-item{border-top:1px solid var(--border);padding-top:8px}.entity-history-item:first-child{border-top:none;padding-top:0}.entity-history-verb{color:var(--text-primary);font-size:14px;font-weight:500}.entity-history-how{color:var(--text-secondary);font-size:13px;margin:2px 0 0}.entity-history-meta{color:var(--text-muted);display:flex;flex-wrap:wrap;font-size:12px;gap:8px;margin-top:4px}.entity-history-inworld{font-style:italic}.entity-history-participants{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.entity-history-participant{background:var(--accent-tint);border-radius:var(--radius-pill);color:var(--accent);font-size:11px;padding:2px 8px}.wiki-container{container-name:wiki;container-type:inline-size;min-width:0;width:100%}.wiki-shell{grid-gap:20px;color:var(--text-primary);display:grid;gap:20px;grid-template-columns:280px minmax(0,1fr) 360px;height:calc(100vh - 110px);margin:0 auto;max-width:1600px;min-height:420px;padding:20px 20px 16px}.wiki-col-center,.wiki-col-left,.wiki-col-right{min-height:0}.wiki-col-left{border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;padding-right:18px}.wiki-col-center{overflow-y:auto;padding:0 8px}.wiki-col-right{display:flex;flex-direction:column;gap:16px;min-width:0}.wiki-empty,.wiki-loading{color:var(--text-secondary);padding:24px 0}.wiki-empty-hint{color:var(--text-muted);font-size:14px;margin-top:6px}.wiki-empty-actions{align-items:center;display:flex;gap:10px;margin-top:16px}.wiki-h1{font-size:24px;font-weight:600;margin:0}.wiki-body,.wiki-h1{color:var(--text-primary)}.wiki-body{font-size:16px;line-height:1.7;margin:0 0 18px;white-space:pre-wrap}.wiki-body-empty{color:var(--text-muted);font-style:italic}.wiki-nav-head{margin-bottom:12px}.wiki-nav-title{color:var(--text-primary);font-size:18px;font-weight:600;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wiki-sample-badge{background:#00c2ff1a;border:1px solid #00c2ff80;border-radius:999px;color:#00c2ff;display:inline-block;font-size:10px;font-weight:700;letter-spacing:.06em;margin-left:8px;padding:1px 7px;text-transform:uppercase;vertical-align:middle}.wiki-nav-sub{color:var(--text-muted);font-size:13px;margin:2px 0 0}.wiki-shell{gap:16px;grid-template-columns:240px minmax(0,1fr) 280px}.wiki-col-left{border-right-color:color-mix(in srgb,var(--border) 70%,#0000);padding-right:14px}.wiki-nav-head{margin-bottom:10px}.wiki-nav-title{font-size:16px}.wiki-nav-item{padding:7px 9px}.wiki-nav-group{margin-bottom:12px}.wiki-search{height:34px}.wiki-box{background:#0000;border-radius:6px;border-width:1px 0 0;padding:12px 0}@media (max-width:900px){.wiki-shell{grid-template-columns:220px minmax(0,1fr)}.wiki-col-right{grid-column:1/-1;max-height:360px;overflow-y:auto}}.wiki-pinned-nav{display:flex;flex-direction:column;gap:2px;margin-bottom:14px}.wiki-pinned-item{font-weight:500}.wiki-search-row{align-items:center;display:flex;gap:10px;margin-bottom:8px}.wiki-search{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);flex:1 1;font-size:14px;height:36px;min-width:0;padding:0 12px}.wiki-search:focus{border-color:var(--accent);outline:none}.wiki-search-hint{color:var(--text-muted);font-size:13px}.wiki-chip{background:var(--accent-tint);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--accent);cursor:pointer;font-size:13px;padding:4px 12px;white-space:nowrap}.wiki-nav-groups{flex:1 1;margin-top:8px;min-height:0;overflow-y:auto;padding-right:4px}.wiki-nav-empty{color:var(--text-muted);font-size:14px;padding:12px 0}.wiki-nav-group{margin-bottom:16px}.wiki-nav-group-head{align-items:center;background:none;border:0;border-radius:var(--radius-sm);color:inherit;cursor:pointer;display:flex;gap:8px;margin:0 0 6px;padding:3px 2px;text-align:left;width:100%}.wiki-nav-group-head:hover{background:var(--bg-hover)}.wiki-nav-group-head:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.wiki-nav-group.collapsed .wiki-nav-group-head{margin-bottom:0}.wiki-group-disclosure{color:var(--text-muted);font-size:10px;line-height:1;transform:rotate(0deg);transform-origin:center;transition:transform var(--transition);width:10px}.wiki-nav-group.collapsed .wiki-group-disclosure{transform:rotate(-90deg)}.wiki-group-dot{border-radius:50%;flex:none;height:9px;width:9px}.wiki-nav-group-title{color:var(--text-secondary);font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.wiki-group-count{color:var(--text-muted);font-size:12px}.wiki-nav-item{background:none;border:none;border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;display:block;font-size:14px;padding:6px 10px;text-align:left;transition:var(--transition);width:100%}.wiki-nav-item:hover{background:var(--bg-hover)}.wiki-nav-item.selected{background:var(--accent-tint);color:var(--accent);font-weight:500}.wiki-nav-item-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wiki-overview{max-width:760px;padding:12px 4px 40px}.wiki-overview-title{font-size:28px;font-weight:600}.wiki-overview-title,.wiki-thesis{color:var(--text-primary);margin:0 0 18px}.wiki-thesis{font-size:18px;line-height:1.7;white-space:pre-wrap}.wiki-tension{color:var(--text-secondary);font-size:15px;line-height:1.6;margin:0 0 18px}.wiki-tension-label{color:var(--text-muted);display:block;font-size:11px;letter-spacing:.06em;margin-bottom:4px;text-transform:uppercase}.wiki-overview-fallback{margin-bottom:18px}.wiki-nudge{font-style:italic}.wiki-overview-hint{color:var(--text-muted);font-size:13px;margin-top:24px}.wiki-article{max-width:760px;padding:8px 4px 40px}.wiki-back{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:14px;margin-bottom:14px;padding:0}.wiki-back:hover{color:var(--accent)}.wiki-title-row{align-items:center;display:flex;gap:12px;margin-bottom:16px}.wiki-description-section{margin-bottom:22px}.wiki-prose-fallback{min-height:42px}.wiki-article-fields,.wiki-legacy-fields{display:flex;flex-direction:column;gap:18px;margin:8px 0 24px}.wiki-article-field{min-width:0}.wiki-article-field-label{color:var(--text-primary);display:block;font-size:13px;font-weight:600;margin:0 0 5px}.wiki-field-required{color:var(--text-muted);font-size:11px;font-weight:500;margin-left:6px}.wiki-article-field-help,.wiki-schema-state{color:var(--text-muted);font-size:12px;line-height:1.45;margin:0 0 7px}.wiki-article-field-value{color:var(--text-primary);font-size:15px;line-height:1.65;overflow-wrap:anywhere;white-space:pre-wrap}.wiki-article-field-control{box-sizing:border-box;max-width:100%;width:100%}.wiki-article-field textarea{min-height:76px;resize:vertical}.wiki-field-actions,.wiki-structured-save-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.wiki-structured-save-row{background:var(--bg-base);bottom:0;padding:9px 0;position:sticky;z-index:1}.wiki-field-conflict{border:1px solid #cda75d;border:1px solid var(--warning,#cda75d);border-radius:var(--radius-md);color:var(--text-secondary);display:flex;flex-direction:column;font-size:13px;gap:7px;padding:10px 12px}.wiki-btn:disabled,.wiki-chip:disabled{cursor:not-allowed;opacity:.5}.wiki-media{align-items:flex-start;display:flex;flex-wrap:wrap;gap:14px;margin-bottom:18px}.wiki-media-thumb{border:1px solid var(--border);border-radius:var(--radius-md);height:120px;object-fit:cover;width:120px}.wiki-media-figure{margin:0}.wiki-media-caption{color:var(--text-muted);display:block;font-size:12px;margin-top:4px;max-width:160px}.wiki-media-audio-wrap{display:flex;flex-direction:column;gap:4px;min-width:220px}.wiki-media-audio{width:100%}.wiki-media-failed{align-items:center;background:#26262b;background:var(--bg-panel-alt,#26262b);border:1px dashed #c0392b;border:1px dashed var(--danger-color,#c0392b);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:4px;justify-content:center;min-height:120px;padding:6px;text-align:center;width:120px}.wiki-media-failed-text,.wiki-media-pending-label{color:var(--text-muted);font-size:11px}.wiki-media-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.wiki-media-action-btn{background:#1f1f23;background:var(--bg-panel,#1f1f23);border:1px solid var(--border);border-radius:4px;border-radius:var(--radius-sm,4px);color:var(--text-secondary);cursor:pointer;font-size:11px;padding:3px 8px}.wiki-media-action-btn:hover{background:#26262b;background:var(--bg-panel-alt,#26262b)}.wiki-media-delete-btn{color:#c0392b;color:var(--danger-color,#c0392b)}.wiki-edit-row{margin-top:8px}.wiki-btn{background:var(--accent);border:none;border-radius:var(--radius-md);color:var(--accent-foreground);cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px}.wiki-btn:hover{background:var(--accent-hover)}.wiki-detail-scroll{display:flex;flex:1 1;flex-direction:column;gap:14px;min-height:0;overflow-y:auto;padding-right:4px}.wiki-box{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px 16px}.wiki-box-title{color:var(--text-secondary);font-size:12px;letter-spacing:.05em;margin-bottom:10px;text-transform:uppercase}.wiki-infobox{border-collapse:collapse;width:100%}.wiki-infobox td{font-size:14px;padding:5px 0;vertical-align:top}.wiki-info-k{color:var(--text-muted);padding-right:12px;text-transform:capitalize;white-space:nowrap}.wiki-info-v{color:var(--text-primary);text-align:right}.wiki-conn-group{margin-bottom:10px}.wiki-conn-type{color:var(--text-muted);font-size:12px;margin-bottom:4px;text-transform:capitalize}.wiki-link-row{align-items:center;background:none;border:none;border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;gap:8px;padding:5px 4px;text-align:left;width:100%}.wiki-link-row:hover{background:var(--bg-hover)}.wiki-dot{border-radius:50%;flex:none;height:8px;width:8px}.wiki-link-name{color:var(--accent);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wiki-link-row:hover .wiki-link-name{text-decoration:underline}.wiki-rel-kind{color:var(--text-muted);font-size:12px;margin-left:auto;text-transform:capitalize}.wiki-stat-total{color:var(--text-primary);font-size:14px;margin:0 0 12px}.wiki-stat-row{align-items:center;display:flex;font-size:14px;gap:8px;padding:4px 0}.wiki-stat-type{color:var(--text-secondary)}.wiki-stat-count{color:var(--text-muted);margin-left:auto}.wiki-title-actions{align-items:center;display:flex;gap:12px;margin-left:auto}.wiki-zoom-controls{align-items:center;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-md);display:flex;gap:2px;padding:2px}.wiki-zoom-btn{background:none;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;font-size:12px;font-weight:600;line-height:1;padding:5px 8px;transition:var(--transition)}.wiki-zoom-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.wiki-zoom-btn:disabled{cursor:default;opacity:.4}.wiki-zoom-reset{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-width:44px;text-align:center}@container wiki (max-width: 1139px){.wiki-shell{gap:16px;grid-template-columns:240px minmax(280px,1fr) 300px;padding:16px 16px 12px}}@container wiki (max-width: 899px){.wiki-shell{grid-template-columns:minmax(0,1fr);height:auto;min-height:0}.wiki-col-left{border-bottom:1px solid var(--border);border-right:none;max-height:50vh;padding-bottom:16px;padding-right:0}.wiki-col-center,.wiki-detail-scroll{overflow-y:visible}.wiki-article{max-width:100%}.wiki-title-row{align-items:flex-start;flex-wrap:wrap}.wiki-title-actions{margin-left:0;width:100%}}@container wiki (max-width: 420px){.wiki-shell{padding:12px}.wiki-col-center{padding:0}.wiki-structured-save-row{justify-content:stretch}.wiki-structured-save-row .wiki-btn,.wiki-structured-save-row .wiki-chip{flex:1 1}}@supports not (container-type:inline-size){.wiki-container[data-layout=compact] .wiki-shell{gap:16px;grid-template-columns:240px minmax(280px,1fr) 300px;padding:16px 16px 12px}.wiki-container[data-layout=stacked] .wiki-shell{grid-template-columns:minmax(0,1fr);height:auto;min-height:0}.wiki-container[data-layout=stacked] .wiki-col-left{border-bottom:1px solid var(--border);border-right:none;max-height:50vh;padding-bottom:16px;padding-right:0}.wiki-container[data-layout=stacked] .wiki-col-center,.wiki-container[data-layout=stacked] .wiki-detail-scroll{overflow-y:visible}}.collab-markdown-editor .cm-entity-link{border-bottom:1px solid color-mix(in srgb,var(--semantic-link) 40%,#0000);color:var(--semantic-link);cursor:pointer}.collab-markdown-editor .cm-entity-link:hover{border-bottom-color:var(--semantic-link)}.collab-markdown-editor .cm-entity-link-auto{border-bottom-style:dashed;color:var(--semantic-link)}.wiki-lens-row{align-items:center;display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.wiki-lens-btn{background:#0000;border:1px solid var(--border);border-radius:var(--radius);color:var(--text-secondary);cursor:pointer;font-size:12px;padding:4px 10px}.wiki-lens-btn.selected{background:var(--accent);border-color:var(--accent);color:var(--bg-base)}.wiki-lens-campaign-select{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-size:12px;padding:4px 6px}.wiki-lens-facts{margin-top:16px}.wiki-lens-fact-row{border-bottom:1px solid var(--border-subtle,var(--border));color:var(--text-primary);font-size:13px;padding:6px 0}.wiki-lens-fact-row:last-child{border-bottom:none}.history-view{color:var(--text-primary);margin:0 auto;max-width:960px;padding:24px 20px 48px}.history-view__header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:20px}.history-view__header h1,.history-view__header h2{margin:0 0 4px}.history-view__header h1{font-size:1.8rem}.history-view__subtitle{color:var(--text-secondary);font-size:.9rem;margin:0}.history-view__controls{align-items:center;display:flex;flex-wrap:wrap;gap:8px;row-gap:6px}.history-view__controls label{color:var(--text-secondary);font-size:.85rem}.history-entry__actions button,.history-view__controls button,.history-view__controls select{background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);cursor:pointer;font-size:.85rem;padding:6px 12px}.history-entry__actions button:disabled,.history-view__controls button:disabled{cursor:not-allowed;opacity:.5}.history-view__empty{color:var(--text-secondary);line-height:1.5;max-width:52ch;padding:32px 0}.history-view__timeline{border-left:2px solid var(--border);list-style:none;margin:0;padding:0}.history-entry{grid-gap:12px;align-items:center;border-bottom:1px solid var(--border);display:grid;gap:12px;grid-template-columns:minmax(0,1fr) auto;padding:12px 12px 12px 20px;position:relative}.history-entry--checkpoint{background:color-mix(in srgb,#4169e1 6%,#0000);background:color-mix(in srgb,var(--accent,#4169e1) 6%,#0000);border-left:3px solid #4169e1;border-left:3px solid var(--accent,#4169e1);margin-left:-2px}.history-entry--export{background:color-mix(in srgb,#7fa884 6%,#0000);background:color-mix(in srgb,var(--status-success,#7fa884) 6%,#0000);border-left:3px solid #7fa884;border-left:3px solid var(--status-success,#7fa884);margin-left:-2px}.history-entry__main{align-items:baseline;display:flex;flex-wrap:wrap;gap:8px;min-width:0}.history-entry__icon{color:#4169e1;color:var(--accent,#4169e1)}.history-entry__title{font-weight:600}.history-entry__meta{color:var(--text-secondary);font-size:.85rem}.history-entry__disclose{background:none;border:1px solid var(--border);border-radius:4px;color:var(--text-secondary);cursor:pointer;height:22px;line-height:1;width:22px}.history-entry__danger{border-color:#dc3545!important;border-color:var(--danger,#dc3545)!important;color:#dc3545!important;color:var(--danger,#dc3545)!important}.history-entry__changes-scroll{grid-column:1/-1;margin-top:8px;overflow-x:auto;width:100%}.history-entry__changes{border-collapse:collapse;font-size:.85rem;min-width:420px;width:100%}.history-entry__changes td{border-top:1px solid var(--border);padding:4px 8px;vertical-align:top;word-break:break-word}.history-entry__before{color:var(--text-secondary);text-decoration:line-through}.history-entry__after{color:var(--text-primary)}.history-confirm__reassure{color:var(--text-secondary);font-size:.85rem}.history-confirm__actions{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.history-confirm__actions button{background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);cursor:pointer;padding:8px 14px}.history-view button:focus-visible,.history-view input:focus,.history-view select:focus{outline:2px solid var(--accent);outline-offset:2px}@media (max-width:640px){.history-view{padding:20px 16px 36px}.history-entry{align-items:start;grid-template-columns:1fr}.history-entry__actions{display:flex;flex-wrap:wrap;gap:8px}.history-view__controls{width:100%}.history-view__controls button,.history-view__controls select{flex:1 1}}.record-history{border-top:1px solid var(--border);margin-top:16px;padding-top:12px}.record-history__row{align-items:baseline;display:flex;flex-wrap:wrap;font-size:.85rem;gap:8px;padding:4px 0}.record-history__field{font-weight:600}.record-history__who{color:var(--text-secondary)}.history-view-redesign{color:var(--semantic-text-primary);margin:0 auto;max-width:76rem}.history-view-redesign .history-view__header{align-items:end;gap:1rem}.history-view-redesign .history-entry{border-color:var(--semantic-border);box-shadow:none}.history-view-redesign .history-entry__title{font-weight:650}.history-view-redesign .history-entry__meta{color:var(--semantic-text-muted)}@media (max-width:700px){.history-view-redesign{padding-inline:.75rem}.history-view-redesign .history-view__header{display:block}}.wb-view{color:var(--text-primary);margin:0 auto;max-width:1100px;padding:22px 32px 60px}.wb-preview-tag{background:var(--accent-tint);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--accent);display:inline-block;font-size:12px;margin-bottom:18px;padding:4px 12px}.wb-grid{grid-gap:28px;display:grid;gap:28px;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr)}@media (max-width:860px){.wb-grid{grid-template-columns:1fr}}.wb-h1{color:var(--text-primary);font-size:24px;font-weight:600;margin:0 0 16px}.wb-transcript{display:flex;flex-direction:column;gap:16px;margin-bottom:18px;max-height:56vh;overflow-y:auto;padding-right:6px}.wb-turn-thinking{color:var(--text-muted);font-style:italic}.wb-turn{display:flex;flex-direction:column;gap:4px}.wb-turn-who{color:var(--text-muted);font-size:12px;letter-spacing:.05em;text-transform:uppercase}.wb-turn-text{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);font-size:15px;line-height:1.65;margin:0;padding:10px 14px}.wb-turn-you{align-items:flex-end}.wb-turn-you .wb-turn-who{align-self:flex-end}.wb-turn-you .wb-turn-text{background:var(--accent-tint)}.wb-error{background:#dc354514;border:1px solid #dc354573;border-radius:8px;color:#e58896;font-size:13.5px;line-height:1.4;margin:6px 0 10px;padding:10px 12px}.wb-input-row{display:flex;gap:10px}.wb-input{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);flex:1 1;font-size:15px;height:42px;min-width:0;padding:0 14px}.wb-input:focus{border-color:var(--accent);outline:none}.wb-build,.wb-send,.wb-skip{border-radius:var(--radius-md);cursor:pointer;font-size:14px;font-weight:500}.wb-send{background:var(--accent);border:none;color:var(--accent-foreground);padding:0 18px}.wb-build:disabled,.wb-send:disabled{cursor:not-allowed;opacity:.5}.wb-aside{display:flex;flex-direction:column;gap:14px}.wb-box{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px}.wb-box-title{font-size:12px;letter-spacing:.05em;margin-bottom:6px;text-transform:uppercase}.wb-box-note,.wb-box-title{color:var(--text-secondary)}.wb-box-note{font-size:11.5px;line-height:1.45;margin:0 0 14px}.wb-sec{margin-bottom:12px}.wb-sec:last-child{margin-bottom:0}.wb-sec-label{color:var(--text-muted);font-size:12px}.wb-sec-heading{align-items:center;display:flex;gap:8px;justify-content:space-between}.wb-seed-field{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-md);box-sizing:border-box;color:var(--text-primary);display:block;font:inherit;line-height:1.4;margin-top:4px;padding:7px 9px;resize:vertical;width:100%}.wb-seed-field:focus{outline:2px solid var(--accent);outline-offset:1px}.wb-seed-field:disabled{cursor:not-allowed;opacity:.7}.wb-seed-list{grid-gap:10px;display:grid;gap:10px;margin-top:5px}.wb-seed-item{grid-gap:4px;border:1px solid var(--border);border-radius:var(--radius-md);display:grid;gap:4px;padding:8px}.wb-inline-action,.wb-remove-action{background:#0000;border:0;color:var(--accent);cursor:pointer;font:inherit;font-size:12px;padding:2px 0}.wb-remove-action{color:var(--text-secondary);justify-self:start}.wb-inline-action:disabled,.wb-remove-action:disabled{cursor:not-allowed;opacity:.55}.wb-validation,.wb-validation-summary{color:#d26a6a;color:var(--semantic-text-danger,#d26a6a);font-size:12px;line-height:1.4;margin:2px 0 0}.wb-validation-summary{margin-top:10px}.wb-inline-action:focus-visible,.wb-remove-action:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.wb-sec-body{color:var(--text-primary);line-height:1.55}.wb-sec-body,.wb-sec-empty{font-size:14px;margin:4px 0 0}.wb-sec-empty{color:var(--text-muted);font-style:italic}.wb-list{color:var(--text-primary);font-size:14px;margin:4px 0 0;padding-left:18px}.wb-list li{margin:2px 0}.wb-build{background:var(--accent);border:none;color:var(--accent-foreground);padding:10px 16px}.wb-skip{background:#0000;border:1px solid var(--border);color:var(--text-secondary);padding:9px 16px}.wb-skip:hover{border-color:var(--accent);color:var(--accent)}.wb-skip:disabled{cursor:not-allowed;opacity:.5}.wb-build-hint{color:var(--text-muted);font-size:12px;margin:2px 0 0;text-align:center}.world-builder-view{margin:0 auto;max-width:86rem}.world-builder-view .wb-h1{letter-spacing:-.01em}.world-builder-view .wb-input-row{background:var(--surface-base);bottom:0;padding-top:.75rem;position:sticky;z-index:2}.world-builder-view .wb-build{font-weight:650}@media (max-width:720px){.world-builder-view{padding-inline:.75rem}.world-builder-view .wb-grid{display:flex;flex-direction:column}.world-builder-view .wb-aside{order:-1}}.project-home{color:var(--semantic-text-primary);margin:0 auto;padding:18px clamp(16px,3vw,36px) 48px;width:min(1180px,100%)}.project-home--loading{color:var(--semantic-text-muted)}.project-home__orientation{max-width:900px;padding:8px 0 18px}.project-home__eyebrow,.project-home__section-label{color:var(--semantic-text-muted);font-size:var(--label-size);font-weight:750;letter-spacing:var(--tracking-label);text-transform:uppercase}.project-home__orientation h2{font-size:clamp(20px,2.2vw,28px);line-height:1.28;margin:5px 0 7px;max-width:34ch}.project-home__tension{color:var(--semantic-text-secondary);line-height:1.5;margin:0;max-width:72ch}.project-home__facts{color:var(--semantic-text-muted);font-size:var(--content-size-sm);margin:12px 0 0}.project-home__continue{align-items:center;background:var(--selection-surface);border:1px solid var(--selection-border);border-radius:var(--radius-md);display:flex;gap:18px;justify-content:space-between;padding:14px 16px}.project-home__continue>div{grid-gap:3px;display:grid;gap:3px;min-width:0}.project-home__continue strong{font-size:15px}.project-home__continue div>span:last-child{color:var(--semantic-text-secondary);font-size:var(--content-size-sm)}.project-home__columns{grid-gap:clamp(28px,5vw,64px);display:grid;gap:clamp(28px,5vw,64px);grid-template-columns:minmax(0,1fr) minmax(240px,300px);margin-top:28px}.project-home__main{grid-gap:30px;display:grid;gap:30px}.project-home__section-heading{align-items:baseline;display:flex;gap:14px;justify-content:space-between;margin-bottom:8px}.project-home__rail h2,.project-home__section-heading h2{font-size:15px;margin:0}.project-home__section-heading a,.project-home__section-heading>span{color:var(--semantic-text-muted);font-size:var(--content-size-sm)}.project-home__section-heading a{color:var(--semantic-link)}.project-home__map{border-top:1px solid var(--semantic-border)}.project-home__map>a{align-items:center;border-bottom:1px solid var(--semantic-border);color:inherit;display:flex;gap:16px;justify-content:space-between;min-height:58px;padding:10px 4px;text-decoration:none}.project-home__map>a:hover{background:var(--surface-interactive-hover)}.project-home__map>a>span:first-child{grid-gap:3px;display:grid;gap:3px}.project-home__map small{color:var(--semantic-text-muted)}.project-home__map>a>span:last-child{color:var(--semantic-text-secondary);font-size:var(--content-size-sm);white-space:nowrap}.project-home__map b{color:var(--action-primary)}.project-home__attention{grid-gap:6px;display:grid;gap:6px}.project-home__attention a,.project-home__attention p{background:var(--surface-passive);border-left:2px solid var(--semantic-warning);color:var(--semantic-text-primary);margin:0;padding:10px 12px;text-decoration:none}.project-home__attention a{display:flex;justify-content:space-between}.project-home__attention a span{color:var(--semantic-link)}.project-home__activity{border-top:1px solid var(--semantic-border);list-style:none;margin:0;padding:0}.project-home__activity li{border-bottom:1px solid var(--semantic-border);display:flex;gap:16px;justify-content:space-between;padding:10px 4px}.project-home__activity time{color:var(--semantic-text-muted);font-size:var(--content-size-sm);white-space:nowrap}.project-home__rail{grid-gap:18px;align-content:start;display:grid;gap:18px}.project-home__rail section{background:var(--surface-raised);border:1px solid var(--semantic-border);border-radius:var(--radius-md);padding:14px}.project-home__rail p{color:var(--semantic-text-secondary);font-size:var(--content-size-sm);line-height:1.45}.project-home__notice{background:var(--surface-raised);border:1px solid var(--semantic-danger);border-radius:var(--radius-md);max-width:620px;padding:20px}.project-home__notice h2{margin-top:0}@media (max-width:760px){.project-home{padding:14px 14px 36px}.project-home__continue{align-items:stretch;flex-direction:column}.project-home__continue .lw-button{align-self:flex-start}.project-home__columns{gap:30px;grid-template-columns:1fr}.project-home__rail{grid-row:2;grid-template-columns:1fr}}@media (max-width:420px){.project-home__map>a{align-items:flex-start}.project-home__map>a>span:last-child{text-align:right;white-space:normal}.project-home__section-heading{align-items:flex-start;flex-direction:column;gap:3px}}.project-health{box-sizing:border-box;color:var(--text-primary);margin:0 auto;max-width:1120px;overflow-wrap:anywhere;padding:28px 32px 64px;width:100%}.project-health__intro,.project-health__more,.project-health__section-head{align-items:flex-start;display:flex;gap:24px;justify-content:space-between}.project-health__intro p{color:var(--text-secondary);margin:0 0 6px}.project-health__summary{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr);margin:28px 0}.project-health__clean,.project-health__failure,.project-health__section,.project-health__summary div{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;min-width:0;padding:18px}.project-health__summary dt{color:var(--text-secondary);font-size:13px}.project-health__summary dd{font-size:28px;font-weight:700;margin:8px 0 0}.project-health__summary .is-warning dd{color:#d5ad63;color:var(--warning-color,#d5ad63)}.project-health__section{border-left:3px solid #d5ad63;border-left:3px solid var(--accent-primary,#d5ad63);margin-top:20px}.project-health__section--warning{border-left-color:#d5ad63;border-left-color:var(--warning-color,#d5ad63)}.project-health__clean h2,.project-health__failure h2,.project-health__section h2{font-size:20px;margin:0 0 6px}.project-health__section p{color:var(--text-secondary)}.project-health__section nav{display:flex;flex-wrap:wrap;gap:14px}.project-health a{color:#d5ad63;color:var(--accent-primary,#d5ad63);text-underline-offset:3px}.project-health__source{border-top:1px solid var(--border-color);box-sizing:border-box;max-width:100%;min-width:0;padding:13px 0;width:100%}.project-health__source h3,.project-health__source p{margin:0;max-width:100%;min-width:0;overflow-wrap:anywhere;word-break:break-word}.project-health__references{list-style:none;margin:14px 0 0;padding:0}.project-health__references li{border-top:1px solid var(--border-color);display:flex;gap:20px;justify-content:space-between;padding:13px 0}.project-health__references span{color:var(--text-secondary);display:block;margin-top:3px}.project-health__technical{border-top:1px solid var(--border-color);margin-top:20px;padding:16px 0}.project-health__technical summary{cursor:pointer;font-weight:650}.project-health__technical li{overflow-wrap:anywhere}.project-health__technical h2{font-size:15px;margin-top:18px}.project-health__notice{color:var(--text-secondary)}@media (max-width:700px){.project-health{padding:20px 16px 48px}.project-health__summary{grid-template-columns:1fr}.project-health__intro,.project-health__more,.project-health__references li,.project-health__section-head{flex-direction:column;gap:10px}.project-health__section nav{align-items:flex-start}}@media (min-width:701px) and (max-width:900px){.project-health{padding-inline:24px}.project-health__summary{grid-template-columns:repeat(3,minmax(0,1fr))}}.world-home{color:var(--semantic-text-primary);margin:0 auto;padding:18px clamp(16px,3vw,36px) 48px;width:min(1180px,100%)}.world-home-error,.world-home-loading{padding:24px}.world-home__header{align-items:flex-start;display:flex;gap:24px;justify-content:space-between;padding:4px 0 22px}.world-home__header p{color:var(--semantic-text-secondary);font-size:16px;line-height:1.5;margin:0 0 8px;max-width:68ch}.world-home__header small{color:var(--semantic-text-muted)}.world-home__actions{display:flex;gap:8px}.world-home__button{align-items:center;background:var(--surface-interactive);border:1px solid var(--semantic-border);border-radius:var(--radius-sm);color:var(--semantic-text-primary);display:inline-flex;font-size:var(--content-size);font-weight:650;justify-content:center;min-height:34px;padding:7px 12px;text-decoration:none;white-space:nowrap}.world-home__button.is-primary{background:var(--action-primary);border-color:var(--action-primary);color:var(--semantic-text-on-action)}.world-home__columns{grid-gap:clamp(28px,5vw,62px);display:grid;gap:clamp(28px,5vw,62px);grid-template-columns:minmax(0,1fr) minmax(230px,290px)}.world-home__columns main{grid-gap:30px;display:grid;gap:30px}.world-home__section-title{align-items:baseline;display:flex;gap:12px;justify-content:space-between;margin-bottom:8px}.world-home__attention h2,.world-home__rail h2,.world-home__section-title h2{font-size:15px;margin:0}.world-home__rail a,.world-home__section-title a{color:var(--semantic-link);font-size:var(--content-size-sm)}.world-home__destinations{border-top:1px solid var(--semantic-border)}.world-home__destinations>a{align-items:center;border-bottom:1px solid var(--semantic-border);color:inherit;display:flex;gap:18px;justify-content:space-between;min-height:58px;padding:10px 4px;text-decoration:none}.world-home__destinations>a:hover{background:var(--surface-interactive-hover)}.world-home__destinations>a>span:first-child{grid-gap:3px;display:grid;gap:3px}.world-home__destinations small{color:var(--semantic-text-muted)}.world-home__destinations>a>span:last-child{color:var(--semantic-text-secondary);font-size:var(--content-size-sm);white-space:nowrap}.world-home__types{border-top:1px solid var(--semantic-border);display:grid;grid-template-columns:repeat(3,1fr)}.world-home__types a{border-bottom:1px solid var(--semantic-border);color:var(--semantic-text-primary);display:flex;gap:8px;justify-content:space-between;padding:9px 8px;text-decoration:none}.world-home__types span{overflow:hidden;text-overflow:ellipsis}.world-home__types strong{color:var(--semantic-text-muted)}.world-home__recent{border-top:1px solid var(--semantic-border);list-style:none;margin:0;padding:0}.world-home__recent li{border-bottom:1px solid var(--semantic-border);display:flex;gap:12px;justify-content:space-between;padding:9px 4px}.world-home__recent time{color:var(--semantic-text-muted);white-space:nowrap}.world-home__attention{background:var(--surface-passive);border-left:2px solid var(--semantic-warning);padding:12px}.world-home__attention p{color:var(--semantic-text-secondary);margin-bottom:0}.world-home__rail{grid-gap:18px;align-content:start;display:grid;gap:18px}.world-home__rail section{grid-gap:8px;background:var(--surface-raised);border:1px solid var(--semantic-border);border-radius:var(--radius-md);display:grid;gap:8px;padding:14px}.world-home__rail p,.world-home__rail small{color:var(--semantic-text-secondary);margin:0}.world-home__empty{background:var(--selection-surface);border:1px solid var(--selection-border);border-radius:var(--radius-md);margin-bottom:28px;padding:18px}.world-home__empty h2{margin-top:0}.world-home__empty div{align-items:center;display:flex;gap:12px}.world-home__empty.is-processing a{color:var(--semantic-link);font-size:var(--content-size-sm)}@media (max-width:760px){.world-home{padding:14px 14px 36px}.world-home__header{flex-direction:column}.world-home__columns{grid-template-columns:1fr}.world-home__rail{grid-row:2}.world-home__types{grid-template-columns:repeat(2,1fr)}}@media (max-width:420px){.world-home__actions{flex-wrap:wrap}.world-home__destinations>a{align-items:flex-start}.world-home__destinations>a>span:last-child{text-align:right;white-space:normal}}.story-home{color:#202631;color:var(--text-primary,#202631);min-height:100%;padding:1rem clamp(1rem,3vw,2.5rem) 3rem}.story-home__header{align-items:end;display:flex;gap:1.5rem;justify-content:space-between;padding:2rem 0}.story-home h1,.story-home h2,.story-home p{margin-top:0}.story-home__header h1{margin-bottom:.35rem}.story-home__header p{margin-bottom:.5rem}.story-home__header p,.story-home__header small,.story-home__rail span,.story-home__rows span,.story-home__rows time{color:#5c6675;color:var(--text-muted,#5c6675)}.story-home__actions{display:flex;flex-wrap:wrap;gap:.6rem}.story-home button,.story-home__button{background:#0000;border:1px solid #d8dce3;border:1px solid var(--border-subtle,#d8dce3);border-radius:.35rem;color:inherit;cursor:pointer;display:inline-block;padding:.6rem .8rem;text-decoration:none}.story-home button,.story-home__button.is-primary{background:var(--action-primary);border-color:var(--action-primary);color:var(--semantic-text-on-action)}.story-home__columns{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:minmax(0,1fr) 18rem}.story-home section{margin-bottom:2rem}.story-home__section-title{align-items:baseline;display:flex;gap:1rem;justify-content:space-between}.story-home__empty a:last-child,.story-home__rail a,.story-home__section-title a{color:#5b4bd8;color:var(--accent,#5b4bd8)}.story-home__rail ul,.story-home__rows{list-style:none;margin:0;padding:0}.story-home__rows li{border-top:1px solid #d8dce3;border-top:1px solid var(--border-subtle,#d8dce3)}.story-home__rows li a{grid-gap:1rem;align-items:center;color:inherit;display:grid;gap:1rem;grid-template-columns:1fr auto auto;padding:.85rem 0;text-decoration:none}.story-home__rail section{background:#f5f6f8;background:var(--surface-subtle,#f5f6f8);border-radius:.45rem;padding:1rem}.story-home__rail li{grid-gap:.25rem;border-top:1px solid #d8dce3;border-top:1px solid var(--border-subtle,#d8dce3);display:grid;gap:.25rem;padding:.65rem 0}.story-home__rail section:last-child a{display:block;margin:.5rem 0}.story-home__empty{background:#f5f6f8;background:var(--surface-subtle,#f5f6f8);border-radius:.45rem;padding:1.5rem}.story-home__empty a{margin-right:.75rem}.story-home__muted{color:#5c6675;color:var(--text-muted,#5c6675)}.story-home__error{padding:3rem 0}.story-home__skeleton{background:linear-gradient(90deg,var(--surface-passive),var(--surface-interactive-hover),var(--surface-passive));border-radius:.45rem;height:8rem;margin:1rem 0}@media (max-width:760px){.story-home__columns,.story-home__header{display:block}.story-home__actions{margin-top:1rem}.story-home__rail{margin-top:1.5rem}.story-home__rows li a{grid-template-columns:1fr auto}.story-home__rows time{grid-column:2;grid-row:1}}.evaluate-workspace{color:#f4f1e8;color:var(--semantic-text-primary,#f4f1e8);margin:0 auto;max-width:1180px;padding:20px 26px 64px}.evaluate-header{align-items:flex-start;display:flex;gap:20px;justify-content:space-between;margin-bottom:14px}.evaluate-header p{color:#aaa7a0;color:var(--semantic-text-secondary,#aaa7a0);margin:0}.evaluate-eyebrow{color:#f4f1e8!important;color:var(--semantic-text-primary,#f4f1e8)!important;font-weight:650;margin-bottom:5px!important}.evaluate-facts span,.evaluate-readonly{color:#85827b;color:var(--semantic-text-muted,#85827b);font-size:12px}.evaluate-tabs{border-bottom:1px solid #302f35;border-bottom:1px solid var(--semantic-border-subtle,#302f35);display:flex;gap:22px;margin-bottom:26px}.evaluate-tabs button{background:#0000;border:0;border-bottom:2px solid #0000;color:#aaa7a0;color:var(--semantic-text-secondary,#aaa7a0);padding:9px 2px}.evaluate-tabs button.is-active{border-color:#c9a45f;border-color:var(--semantic-accent-primary,#c9a45f);color:#fff;color:var(--semantic-text-primary,#fff)}.evaluate-grid{grid-gap:42px;display:grid;gap:42px;grid-template-columns:minmax(250px,.75fr) minmax(420px,1.55fr)}.evaluate-results,.evaluate-setup{min-width:0}.evaluate-results h2,.evaluate-setup h2{font-size:18px;margin:0 0 8px}.evaluate-empty,.evaluate-setup>p{color:#aaa7a0;color:var(--semantic-text-secondary,#aaa7a0);line-height:1.55}.evaluate-setup label{grid-gap:6px;display:grid;font-size:13px;font-weight:600;gap:6px;margin:16px 0}.evaluate-setup select{border:1px solid #45434a;border:1px solid var(--semantic-border-default,#45434a);border-radius:7px;min-height:38px;padding:7px 10px;width:100%}.evaluate-setup select,.evaluate-setup select option{background:#25242b;background:var(--semantic-surface-interactive,#25242b);color:#f4f1e8;color:var(--semantic-text-primary,#f4f1e8)}.evaluate-actions,.evaluate-facts{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.evaluate-facts span+span:before{content:"·";margin-right:10px}.evaluate-primary,.evaluate-secondary{border:1px solid #4c4942;border:1px solid var(--semantic-border-default,#4c4942);border-radius:7px;font-weight:650;min-height:36px;padding:7px 13px}.evaluate-primary{background:#c9a45f;background:var(--semantic-accent-primary,#c9a45f);color:#17140f;color:var(--semantic-text-on-accent,#17140f)}.evaluate-secondary{background:#25242b;background:var(--semantic-surface-interactive,#25242b);color:inherit}.evaluate-primary:disabled,.evaluate-secondary:disabled{opacity:.5}.evaluate-rubric{grid-gap:7px;border-bottom:1px solid #302f35;border-bottom:1px solid var(--semantic-border-subtle,#302f35);border-top:1px solid #302f35;border-top:1px solid var(--semantic-border-subtle,#302f35);display:grid;gap:7px;margin-bottom:16px;padding:14px 0}.evaluate-rubric span{color:#aaa7a0;color:var(--semantic-text-secondary,#aaa7a0);font-size:13px}.evaluate-rubric button{background:none;border:0;color:#c9a45f;color:var(--semantic-accent-primary,#c9a45f);padding:2px 0;width:max-content}.evaluate-error{background:#1b1a20;background:var(--semantic-surface-inset,#1b1a20);border-left:3px solid #d47676;border-left:3px solid var(--semantic-status-danger,#d47676);margin-bottom:16px;padding:10px 12px}.evaluate-request-state{color:#aaa7a0;color:var(--semantic-text-secondary,#aaa7a0);margin:10px 0}.evaluate-verdict{align-items:baseline;border-bottom:1px solid #302f35;border-bottom:1px solid var(--semantic-border-subtle,#302f35);border-top:2px solid #4c4942;border-top:2px solid var(--semantic-border-default,#4c4942);display:flex;gap:20px;justify-content:space-between;padding:13px 0}.evaluate-verdict.is-good{border-top-color:#74b98a;border-top-color:var(--semantic-status-success,#74b98a)}.evaluate-verdict.is-warning{border-top-color:#c9a45f;border-top-color:var(--semantic-status-warning,#c9a45f)}.evaluate-verdict span{color:#aaa7a0;color:var(--semantic-text-secondary,#aaa7a0);font-size:13px}.evaluate-family-list article,.evaluate-finding-list article{grid-gap:16px;border-bottom:1px solid #302f35;border-bottom:1px solid var(--semantic-border-subtle,#302f35);display:grid;gap:16px;grid-template-columns:1fr auto;padding:12px 0}.evaluate-finding-list strong{font-size:13px;font-weight:500}.evaluate-finding-list a,.evaluate-setup a{color:#c9a45f;color:var(--semantic-accent-primary,#c9a45f)}.evaluate-family-list span,.evaluate-trace span{color:#aaa7a0;color:var(--semantic-text-secondary,#aaa7a0);font-size:13px}.evaluate-trace{margin:12px 0 0;padding-left:24px}.evaluate-trace li{padding:8px 0}.evaluate-trace li span,.evaluate-trace li strong{display:block}@media (max-width:820px){.evaluate-grid{gap:28px;grid-template-columns:1fr}}@media (max-width:520px){.evaluate-workspace{padding:16px 14px 48px}.evaluate-header{display:block}.evaluate-readonly{display:inline-block;margin-top:8px}.evaluate-family-list article,.evaluate-finding-list article{gap:6px;grid-template-columns:1fr}}.gameplay-local-navigation{align-items:center;border-bottom:1px solid var(--semantic-border,var(--border));display:flex;gap:4px;overflow-x:auto}.gameplay-local-navigation a{border-bottom:2px solid #0000;color:var(--text-secondary);color:var(--semantic-text-secondary,var(--text-secondary));flex:0 0 auto;font-size:13px;padding:8px 12px;text-decoration:none}.gameplay-local-navigation a.active,.gameplay-local-navigation a:hover{background:var(--bg-elevated);background:var(--surface-interactive-hover,var(--bg-elevated));color:var(--text-primary);color:var(--semantic-text-primary,var(--text-primary))}.gameplay-local-navigation a.active{border-bottom-color:var(--action-primary,var(--accent))}.gameplay-local-navigation-note{color:var(--text-muted);color:var(--semantic-text-muted,var(--text-muted));font-size:10px}.gameplay-state-view{color:var(--semantic-text-primary);min-height:100%;padding:20px 24px 32px}.gameplay-state-header{align-items:start;display:flex;gap:20px;justify-content:space-between;margin-bottom:16px}.gameplay-state-header h1{font-size:24px;margin:0}.gameplay-state-header p{color:var(--semantic-text-secondary);margin:5px 0 0}.gameplay-state-actions{display:flex;flex-wrap:wrap;gap:8px}.gameplay-state-actions a{border-radius:6px;font-size:13px;padding:8px 12px;text-decoration:none}.gameplay-state-primary{background:var(--action-primary);color:var(--semantic-text-on-action)}.gameplay-state-secondary{border:1px solid var(--semantic-border);color:var(--semantic-text-primary)}.gameplay-state-teaching{background:var(--bg-elevated);background:var(--surface-inset,var(--bg-elevated));border-left:3px solid var(--action-primary,var(--accent));color:var(--text-secondary);color:var(--semantic-text-secondary,var(--text-secondary));font-size:13px;line-height:1.5;margin:16px 0;padding:12px 14px}.gameplay-state-workspace{grid-gap:20px;align-items:start;display:grid;gap:20px;grid-template-columns:minmax(0,1fr) minmax(240px,.42fr)}.gameplay-state-registry{min-width:0}.gameplay-state-inspector{background:var(--bg-elevated);background:var(--surface-panel,var(--bg-elevated));border:1px solid var(--semantic-border);border-radius:8px;min-width:0;padding:18px}.gameplay-state-inspector-eyebrow{color:var(--semantic-text-muted);font-size:12px;letter-spacing:.06em;margin:0 0 6px;text-transform:uppercase}.gameplay-state-inspector h2{font-size:18px;margin:0 0 14px;overflow-wrap:anywhere}.gameplay-state-inspector-identifier{font-size:12px;margin:-8px 0 16px}.gameplay-state-inspector dd code,.gameplay-state-inspector-identifier code{color:var(--semantic-text-muted);font-family:monospace;font-size:.9em}.gameplay-state-inspector dl{grid-gap:10px;display:grid;gap:10px;margin:0 0 16px}.gameplay-state-inspector dl div{border-bottom:1px solid var(--semantic-border-subtle);display:flex;gap:12px;justify-content:space-between;padding-bottom:8px}.gameplay-state-inspector dt{color:var(--semantic-text-secondary)}.gameplay-state-inspector dd{margin:0;overflow-wrap:anywhere;text-align:right}.gameplay-state-inspector p{color:var(--semantic-text-secondary);line-height:1.5}.gameplay-state-inspector-note{font-size:13px}.gameplay-state-error{padding:24px}@media (max-width:760px){.gameplay-state-view{padding:16px 12px 24px}.gameplay-state-header{display:block}.gameplay-state-actions{margin-top:14px}.gameplay-state-workspace{grid-template-columns:1fr}.gameplay-state-inspector{order:-1}}.gameplay-state-restricted{background:var(--bg-elevated);background:var(--surface-inset,var(--bg-elevated));border-left:3px solid var(--semantic-border-strong,var(--semantic-border));color:var(--text-secondary);color:var(--semantic-text-secondary,var(--text-secondary));font-size:13px;line-height:1.5;margin:12px 0 0;padding:10px 14px}.gameplay-actions-view{color:var(--semantic-text-primary);min-height:100%;padding:20px 24px 32px}.gameplay-actions-header{align-items:start;display:flex;gap:20px;justify-content:space-between;margin-bottom:16px}.gameplay-actions-header h2{font-size:22px;margin:0}.gameplay-actions-header p{color:var(--semantic-text-secondary);margin:5px 0 0}.gameplay-actions-actions{display:flex;gap:8px}.gameplay-actions-actions button{background:var(--action-primary);border:1px solid var(--semantic-border);border-radius:6px;color:var(--semantic-text-on-action);padding:8px 12px}.gameplay-actions-teaching{background:var(--surface-inset);border-left:3px solid var(--action-primary);color:var(--semantic-text-secondary);font-size:13px;margin:16px 0;padding:12px 14px}.gameplay-actions-workspace{grid-gap:16px;display:grid;gap:16px;grid-template-columns:160px minmax(260px,1fr) minmax(220px,.8fr)}.gameplay-actions-categories{display:flex;flex-direction:column;gap:3px}.gameplay-actions-categories button{background:#0000;border:0;border-left:3px solid #0000;color:inherit;cursor:pointer;padding:8px;text-align:left}.gameplay-actions-categories button.active,.gameplay-actions-categories button:hover{background:var(--surface-interactive-hover);border-left-color:var(--action-primary)}.gameplay-actions-categories span{color:var(--semantic-text-muted);float:right}.gameplay-actions-registry label{display:block;font-size:12px;margin-bottom:5px}.gameplay-actions-registry input{background:var(--surface-editable);border:1px solid var(--semantic-border);border-radius:5px;box-sizing:border-box;color:inherit;padding:9px;width:100%}.gameplay-actions-registry ul{list-style:none;margin:12px 0;padding:0}.gameplay-actions-registry li+li{margin-top:5px}.gameplay-actions-registry li button{grid-gap:3px;background:#0000;border:1px solid var(--semantic-border);border-radius:5px;color:inherit;cursor:pointer;display:grid;gap:3px;padding:10px;text-align:left;width:100%}.gameplay-actions-registry li button:focus-visible,.gameplay-actions-registry li button:hover{background:var(--surface-interactive-hover);border-color:var(--action-primary)}.gameplay-actions-registry small{color:var(--semantic-text-muted)}.gameplay-actions-inspector{border-left:1px solid var(--semantic-border);padding-left:16px}.gameplay-actions-inspector h2{margin-top:0}.gameplay-actions-inspector h3{font-size:12px;margin-bottom:4px}.gameplay-actions-inspector ol{padding-left:20px}.gameplay-actions-inspector code{font-size:12px}.gameplay-actions-error{padding:24px}@media (max-width:760px){.gameplay-actions-view{padding:16px 12px 24px}.gameplay-actions-header{display:block}.gameplay-actions-actions{flex-wrap:wrap;margin-top:14px}.gameplay-actions-workspace{display:block}.gameplay-actions-categories{flex-direction:row;margin-bottom:12px;overflow-x:auto}.gameplay-actions-categories button{border-bottom:2px solid #0000;border-left:0;white-space:nowrap}.gameplay-actions-categories button.active{border-bottom-color:var(--action-primary,var(--accent))}.gameplay-actions-inspector{border-left:0;border-top:1px solid var(--semantic-border,var(--border));margin-top:16px;padding:16px 0 0}}.gameplay-action-form{grid-gap:14px;display:grid;gap:14px}.gameplay-action-form>label{grid-gap:6px;display:grid;font-weight:600;gap:6px}.gameplay-action-form input,.gameplay-action-form select,.gameplay-action-form textarea{background:var(--bg-panel);background:var(--surface-editable,var(--bg-panel));border:1px solid var(--semantic-border,var(--border));border-radius:6px;box-sizing:border-box;color:inherit;padding:8px 10px;width:100%}.gameplay-action-form small{color:var(--text-muted);color:var(--semantic-text-muted,var(--text-muted));font-weight:400}.gameplay-action-form fieldset{border:1px solid var(--semantic-border,var(--border));border-radius:7px;padding:12px}.gameplay-action-input-row{grid-gap:8px;align-items:center;display:grid;gap:8px;grid-template-columns:1fr 150px auto auto;margin-bottom:8px}.gameplay-action-input-row label{align-items:center;display:flex;gap:5px;white-space:nowrap}.gameplay-action-input-row label input{width:auto}@media (max-width:620px){.gameplay-action-input-row{grid-template-columns:1fr}}.gameplay-engine{color:var(--text-primary);min-height:100%;padding:1rem clamp(1rem,3vw,2.5rem) 3rem}.gameplay-engine__header{align-items:end;display:flex;gap:1rem;justify-content:space-between;padding:2rem 0}.gameplay-engine h1,.gameplay-engine h2,.gameplay-engine h3,.gameplay-engine p{margin-top:0}.gameplay-engine__header p{color:var(--text-muted)}.gameplay-engine button,.gameplay-engine__button{background:#0000;border:1px solid var(--border-subtle);border-radius:.35rem;color:inherit;cursor:pointer;display:inline-block;padding:.55rem .75rem;text-decoration:none}.gameplay-engine__error button,.gameplay-engine__header .gameplay-engine__button{background:var(--action-primary);border-color:var(--action-primary);color:var(--semantic-text-on-action)}.gameplay-engine__layout{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:10rem minmax(0,1fr)}.gameplay-engine__sections{display:flex;flex-direction:column;gap:.25rem}.gameplay-engine__sections button{border:0;text-align:left}.gameplay-engine__sections button.is-active{background:var(--surface-subtle);font-weight:600}.gameplay-engine__sections span{color:var(--text-muted);display:block;font-size:.72rem;text-transform:uppercase}.gameplay-engine__main{max-width:60rem}.gameplay-engine__main section{margin-bottom:2rem}.gameplay-engine__summary{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(4,1fr)}.gameplay-engine__empty,.gameplay-engine__source,.gameplay-engine__summary strong{background:var(--surface-subtle);border-radius:.4rem;padding:1rem}.gameplay-engine__summary strong{font-size:.95rem}.gameplay-engine__summary small{color:var(--text-muted);display:block;font-size:.72rem;font-weight:500;margin-bottom:.3rem}.gameplay-engine__catalogue-summary code{display:block;overflow-wrap:anywhere}.gameplay-engine__catalogue-list{grid-gap:.75rem;display:grid;gap:.75rem}.gameplay-engine__catalogue-capability{background:var(--surface-subtle);border:1px solid var(--border-subtle);border-radius:.4rem;padding:1rem}.gameplay-engine__catalogue-capability>div{align-items:center;display:flex;gap:.75rem;justify-content:space-between}.gameplay-engine__catalogue-capability code{color:var(--text-muted);display:block;margin:.35rem 0;overflow-wrap:anywhere}.gameplay-engine__catalogue-capability small{color:var(--text-muted)}.gameplay-engine__catalogue-capability details{margin-top:.65rem}.gameplay-engine__orphan{background:color-mix(in srgb,var(--semantic-warning) 18%,#0000);border-radius:99px;color:var(--text-primary);font-size:.78rem;padding:.2rem .45rem}.gameplay-engine__diff{background:var(--surface-subtle);border-left:3px solid var(--accent);margin-top:.75rem;padding:.75rem}.gameplay-engine__section-heading{display:flex;justify-content:space-between}.gameplay-engine__facts{list-style:none;margin:0;padding:0}.gameplay-engine__facts li{grid-gap:.25rem;border-top:1px solid var(--border-subtle);display:grid;gap:.25rem;padding:.7rem 0}.gameplay-engine__facts span,.gameplay-engine__muted,.gameplay-engine__source small{color:var(--text-muted)}.gameplay-engine__facts a{color:var(--accent)}.gameplay-engine__label{display:block;font-weight:600;margin-bottom:.35rem}.gameplay-engine select{margin-bottom:1rem;min-width:16rem;padding:.5rem}.gameplay-engine__table{overflow-x:auto}.gameplay-engine__table>div{grid-gap:1rem;border-top:1px solid var(--border-subtle);display:grid;gap:1rem;grid-template-columns:1fr 1fr 7rem;padding:.65rem 0}.gameplay-engine__table small{color:var(--text-muted);display:block;overflow-wrap:anywhere}.gameplay-engine__source{margin-bottom:.75rem}.gameplay-engine__composer{border:1px solid var(--border-subtle);border-radius:.4rem;margin-top:1.5rem;padding:1rem}.gameplay-engine__form-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr));margin:.75rem 0}.gameplay-engine__composer>label,.gameplay-engine__form-grid label{grid-gap:.3rem;display:grid;font-weight:600;gap:.3rem}.gameplay-engine__composer input,.gameplay-engine__composer select{box-sizing:border-box;min-width:0;padding:.5rem;width:100%}.gameplay-engine__composer small{color:var(--text-muted);font-weight:400;overflow-wrap:anywhere}.gameplay-engine__buttons{display:flex;gap:.5rem;margin-top:.75rem}.gameplay-engine__buttons button:last-child{background:var(--action-primary);border-color:var(--action-primary);color:var(--semantic-text-on-action)}.gameplay-engine__operations{padding-left:1.25rem}.gameplay-engine__operations li{display:flex;gap:.75rem;justify-content:space-between;margin:.4rem 0}.gameplay-engine__preview{background:color-mix(in srgb,var(--semantic-warning) 12%,#0000);border:1px solid var(--semantic-warning);margin-top:.75rem;padding:.75rem}.gameplay-engine__preview.is-ready{background:color-mix(in srgb,var(--semantic-success) 12%,#0000);border-color:var(--semantic-success)}.gameplay-engine__details{grid-gap:.6rem 1rem;display:grid;gap:.6rem 1rem;grid-template-columns:minmax(10rem,16rem) 1fr}.gameplay-engine__details dd{font-family:monospace;margin:0;overflow-wrap:anywhere}.gameplay-engine pre{background:var(--surface-read-only);max-height:28rem;overflow:auto;padding:1rem}.gameplay-engine__skeleton{background:var(--surface-passive);border-radius:.4rem;height:9rem;margin:1rem 0}.gameplay-engine__error{padding:3rem 0}.gameplay-engine__partial{background:color-mix(in srgb,var(--semantic-warning) 12%,#0000);border:1px solid var(--semantic-warning);padding:.75rem 1rem}@media (max-width:760px){.gameplay-engine__header,.gameplay-engine__layout{display:block}.gameplay-engine__header .gameplay-engine__button{margin-top:1rem}.gameplay-engine__sections{flex-direction:row;margin-bottom:1.5rem;overflow-x:auto}.gameplay-engine__sections button{white-space:nowrap}.gameplay-engine__form-grid,.gameplay-engine__summary{grid-template-columns:1fr}.gameplay-engine__table>div{min-width:30rem}}.play-view{color:var(--text-primary);margin:0 auto;max-width:1100px;max-width:1080px;padding:24px}.play-view>h1{letter-spacing:-.01em}.play-two-col{align-items:start;grid-template-columns:minmax(0,1.45fr) minmax(220px,.75fr)}.play-two-col>.play-card:first-child{border-color:var(--accent);border-width:1px 1px 1px 3px}.play-card{background:#0000;border-radius:8px;margin-bottom:12px;padding:16px}.play-card h2{letter-spacing:.01em}.play-primary-action{background:var(--accent-primary,var(--accent))}.play-timeline-row{padding:9px 0}@media (max-width:640px){.play-view{padding:18px 14px}.play-two-col{grid-template-columns:1fr}.play-secondary-action{margin-left:4px}}.play-view h1{font-size:22px;margin:0 0 4px}.play-view .play-subtitle{color:var(--text-secondary);font-size:13px;margin:0 0 20px}.play-card{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);border-radius:var(--radius-lg,var(--radius));margin-bottom:16px;padding:18px}.play-card h2{color:var(--text-primary);font-size:15px;margin:0 0 12px}.play-chip{align-items:center;background:var(--bg-hover);border-radius:999px;color:var(--text-secondary);display:inline-flex;font-size:11px;font-weight:600;gap:4px;letter-spacing:.03em;padding:2px 10px;text-transform:uppercase}.play-chip-warn{background:color-mix(in srgb,var(--warning) 15%,#0000);color:var(--warning)}.play-chip-info{background:color-mix(in srgb,var(--status-success) 15%,#0000);color:var(--status-success)}.play-two-col{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1.3fr 1fr}@media (max-width:860px){.play-two-col{grid-template-columns:1fr}}.play-primary-action{background:var(--accent);border:none;border-radius:var(--radius);color:var(--bg-base);cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px}.play-primary-action:hover{opacity:.9}.play-secondary-action{background:#0000;border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);cursor:pointer;font-size:13px;margin-left:8px;padding:8px 16px}.play-state-list{list-style:none;margin:0;padding:0}.play-state-list li{border-bottom:1px solid var(--border-subtle,var(--border));display:flex;font-size:13px;justify-content:space-between;padding:6px 0}.play-state-list li:last-child{border-bottom:none}.play-state-list .play-state-label{color:var(--text-secondary)}.play-timeline{list-style:none;margin:0;padding:0}.play-timeline-row{align-items:center;border-bottom:1px solid var(--border-subtle,var(--border));display:flex;flex-wrap:wrap;justify-content:space-between;padding:10px 0;row-gap:6px}.play-timeline-row:last-child{border-bottom:none}.play-timeline-meta{display:flex;flex-direction:column;gap:2px}.play-timeline-title{font-size:13px;font-weight:600}.play-timeline-sub{color:var(--text-muted);font-size:12px}.prep-section{margin-bottom:18px}.prep-section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.prep-section-title{font-size:14px;font-weight:700}.prep-item{align-items:flex-start;border:1px solid var(--border-subtle,var(--border));border-radius:var(--radius);display:flex;flex-wrap:wrap;font-size:13px;gap:10px;justify-content:space-between;margin-bottom:6px;padding:8px 10px;row-gap:6px}.prep-reveal-slot{flex-basis:100%;margin-top:6px}.prep-reveal-status{align-items:center;display:flex;gap:8px}.prep-reveal-form{border-top:1px solid var(--border-subtle,var(--border));padding-top:8px}.prep-item-trimmed{opacity:.4;text-decoration:line-through}.prep-item-accepted{border-color:var(--accent)}.prep-item-text{flex:1 1}.prep-item-actions{display:flex;flex-shrink:0;gap:6px}.prep-item-btn{background:#0000;border:1px solid var(--border);border-radius:var(--radius);color:var(--text-secondary);cursor:pointer;font-size:11px;padding:3px 8px}.prep-item-btn:hover{border-color:var(--accent);color:var(--text-primary)}.prep-mechanical-badge{background:#c77dff2e;border-radius:999px;color:#c77dff;display:inline-block;font-size:10px;margin-right:6px;padding:1px 6px}.prep-carry-over-banner{background:#4cecb014;border:1px dashed var(--accent);border-radius:var(--radius);font-size:13px;margin-bottom:14px;padding:10px}.run-mode-cols{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1fr 1fr 1fr;padding:16px}@media (max-width:1000px){.run-mode-cols{grid-template-columns:1fr}}.run-col{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);max-height:calc(100vh - 120px);overflow-y:auto;padding:14px}.run-col h3{color:var(--text-muted);font-size:13px;letter-spacing:.04em;margin:0 0 10px;text-transform:uppercase}.run-entity-card{border:1px solid var(--border);border-radius:var(--radius);margin-bottom:10px;padding:10px}.run-entity-card-name{font-size:13px;font-weight:700;margin-bottom:6px}.run-party-section{background:#4cecb014;margin-bottom:6px}.run-gm-section,.run-party-section{border-radius:var(--radius);font-size:12px;padding:6px 8px}.run-gm-section{background:#ef444414}.run-gm-section-label{color:var(--status-destructive)}.run-gm-section-label,.run-party-section-label{font-size:10px;font-weight:700;text-transform:uppercase}.run-party-section-label{color:var(--status-success)}.run-capture-btn,.run-reveal-btn,.run-tick-btn{background:#0000;border:1px solid var(--border);border-radius:var(--radius);color:var(--text-secondary);cursor:pointer;font-size:11px;padding:3px 8px}.run-capture-btn:hover,.run-reveal-btn:hover,.run-tick-btn:hover{border-color:var(--accent);color:var(--text-primary)}.run-reveal-card{background:color-mix(in srgb,var(--status-destructive) 6%,#0000);border:1px solid var(--status-destructive)}.run-reveal-audience{color:var(--text-secondary);font-size:11px;margin:4px 0}.run-reveal-consequence{color:var(--text-muted);font-size:11px;margin-bottom:8px}.run-reveal-already{color:var(--status-success);font-size:11px;font-weight:700;text-transform:uppercase}.run-privacy-toggle{background:#0000;border:1px solid var(--border);border-radius:var(--radius);color:var(--text-secondary);cursor:pointer;font-size:11px;margin-bottom:8px;padding:3px 8px}.run-privacy-collapsed{border:1px dashed var(--border);border-radius:var(--radius);color:var(--text-muted);font-size:12px;padding:20px 8px;text-align:center}.run-state-panel{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);border-radius:var(--radius-lg,var(--radius));margin:48px auto;max-width:480px;padding:20px;text-align:center}.run-state-panel h2{font-size:15px;margin:0 0 8px}.players-mismatch-panel{padding:12px;text-align:center}.debrief-step-nav{display:flex;gap:8px;margin-bottom:16px}.debrief-step-chip{background:var(--bg-hover);border-radius:999px;color:var(--text-muted);font-size:12px;font-weight:600;padding:4px 12px}.debrief-step-chip.active{background:var(--accent);color:var(--bg-base)}.debrief-row{align-items:flex-start;border:1px solid var(--border-subtle,var(--border));border-radius:var(--radius);display:flex;flex-wrap:wrap;font-size:13px;gap:10px;justify-content:space-between;margin-bottom:8px;padding:10px;row-gap:6px}.debrief-conflict-row{background:color-mix(in srgb,var(--warning) 6%,#0000);border-color:var(--warning)}.players-mode-toggle{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px;row-gap:8px}.players-mode-active{background:var(--accent);color:var(--bg-base)}.players-pc-select{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-size:13px;padding:6px 8px}.players-why-visible{background:var(--bg-hover);border-radius:var(--radius);color:var(--text-secondary);display:flex;flex-direction:column;font-size:12px;gap:2px;margin-top:6px;padding:8px 10px;width:100%}.players-recap-status{align-items:center;display:flex;gap:8px;margin-bottom:10px}.players-recap-textarea{background:var(--bg-base);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-family:inherit;font-size:13px;min-height:180px;padding:10px;resize:vertical;width:100%}.players-fresh-token{color:var(--text-secondary);font-size:12px;word-break:break-all}.prep-header-row{align-items:start;display:flex;gap:20px;justify-content:space-between}.prep-header-row h1{margin:0}.prep-header-actions{display:flex;flex-wrap:wrap;gap:8px}.prep-boundary-line{background:var(--bg-elevated);border-left:3px solid var(--action-primary,var(--accent));color:var(--text-secondary);font-size:13px;margin:8px 0 18px;padding:9px 12px}.prep-section-disclosure{background:#0000;border:0;color:inherit;cursor:pointer;padding:0;text-align:left}.prep-section-disclosure:focus-visible{outline:2px solid var(--accent);outline:2px solid var(--action-primary,var(--accent));outline-offset:2px}@media (max-width:640px){.prep-header-row{display:block}.prep-header-actions{margin-top:12px}}.debrief-view{max-width:68rem}.debrief-step-nav{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(3,minmax(0,1fr));margin:1.25rem 0}.debrief-step-chip{border:1px solid #d8dce3;border:1px solid var(--border-subtle,#d8dce3);border-radius:.4rem;color:#5c6675;color:var(--text-muted,#5c6675);display:block;padding:.7rem .8rem}.debrief-step-chip.active{border-color:#5b4bd8;border-color:var(--accent,#5b4bd8);box-shadow:inset 0 -2px #5b4bd8;box-shadow:inset 0 -2px var(--accent,#5b4bd8);color:#202631;color:var(--text-primary,#202631)}.debrief-step-chip small{display:block;font-size:.8rem;margin-top:.2rem}.debrief-view .play-card{max-width:54rem}.debrief-cost-note{color:#5c6675;color:var(--text-muted,#5c6675);display:block;flex-basis:100%;font-size:.8rem}@media (max-width:600px){.debrief-step-nav{display:flex;overflow-x:auto}.debrief-step-chip{min-width:9rem}}.players-view{max-width:76rem}.players-view .players-boundary-note{max-width:58rem}.players-view .players-mode-toggle{border:1px solid #d8dce3;border:1px solid var(--border-subtle,#d8dce3);border-radius:.4rem;padding:.8rem}.players-view .play-card{min-width:0}.players-view .players-recap-status{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.players-view .players-fresh-token{overflow-wrap:anywhere}@media (min-width:1000px){.players-view{grid-gap:1rem 1.5rem;display:grid;gap:1rem 1.5rem;grid-template-columns:minmax(0,1.35fr) minmax(18rem,.8fr)}.players-view>.play-subtitle:last-child,.players-view>.players-boundary-note,.players-view>.players-fresh-token,.players-view>.players-mode-toggle,.players-view>h1{grid-column:1/-1}.players-view>.play-card:first-of-type,.players-view>.play-card:nth-of-type(2){grid-column:1}.players-view>.play-card:nth-of-type(4),.players-view>.play-card[data-testid=players-recap-card]{grid-column:2}}.ruleset-panel{max-width:720px;padding:24px}.ruleset-section{display:flex;flex-direction:column;gap:12px}.ruleset-fiction-only-note{color:#6b7280;font-style:italic}.ruleset-checkbox-row{gap:8px}.ruleset-checkbox-row,.ruleset-stance-row{align-items:center;display:flex;flex-wrap:wrap;row-gap:6px}.ruleset-stance-row{gap:12px}.ruleset-coverage-list{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));list-style:none;padding:0}.ruleset-coverage-list li.covered{color:#15803d}.ruleset-coverage-list li.uncovered{color:#b91c1c}.ruleset-merge-preview{border:1px solid #d1d5db;border-radius:8px;margin-top:8px;padding:12px}.ruleset-collision-row{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;flex-wrap:wrap;gap:12px;padding:6px 0;row-gap:6px}.btn-primary,.btn-secondary{border:none;border-radius:6px;cursor:pointer;padding:8px 16px;width:fit-content}.btn-primary{background:#2563eb;color:#fff}.btn-primary:disabled,.btn-secondary:disabled{cursor:not-allowed;opacity:.5}.btn-secondary{background:#e5e7eb;color:#111827}.pls-root{color:var(--text-primary);margin:0 auto;max-width:760px;padding:24px 20px 64px}.pls-heading{font-size:20px;font-weight:600;margin:0 0 4px}.pls-back{font-size:13px;margin:0 0 20px}.pls-back a,.pls-status{color:var(--text-secondary)}.pls-status{padding:24px 0}.pls-status-error{color:var(--text-primary)}.pls-section{border-bottom:1px solid var(--border);margin:0 0 28px;padding-bottom:20px}.pls-section:last-of-type{border-bottom:none}.pls-section-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;margin-bottom:10px}.pls-h2{font-size:15px;font-weight:600;margin:0 0 8px}.pls-section-header .pls-h2{margin:0}.pls-h3{font-size:13px;font-weight:600;margin:16px 0 6px}.pls-authority-line,.pls-base-line,.pls-empty,.pls-fallback-line,.pls-hint{color:var(--text-secondary);font-size:13px;line-height:1.5}.pls-base-line strong{color:var(--text-primary)}.pls-run-notice{background:var(--bg-hover);border-radius:6px;font-size:13px;margin:0 0 12px;padding:8px 10px}.pls-draft-target-list,.pls-target-list{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;padding:0}.pls-target-row{align-items:center;border:1px solid var(--border);border-radius:8px;display:flex;flex-wrap:wrap;gap:8px 16px;padding:10px 12px}.pls-target-name{align-items:baseline;display:flex;flex:1 1 160px;font-weight:500;gap:6px;min-width:140px;unicode-bidi:isolate}.pls-target-tag{color:var(--text-secondary);color:var(--text-muted,var(--text-secondary));font-size:11px;font-weight:400}.pls-target-coverage{color:var(--text-secondary);flex:0 0 auto;font-size:12px;white-space:nowrap}.pls-stale{color:#ef9f27}.pls-target-actions{display:flex;flex:1 1 100%;flex-wrap:wrap;gap:6px}.pls-retained{margin-top:20px}.pls-draft{gap:18px}.pls-draft,.pls-field{display:flex;flex-direction:column}.pls-field{font-size:13px;font-weight:500;gap:6px}.pls-field select{background:var(--bg-primary);background:var(--bg-elevated,var(--bg-primary));color:var(--text-primary);font-size:13px;max-width:100%;padding:6px 8px}.pls-draft-target-row,.pls-field select{border:1px solid var(--border);border-radius:6px}.pls-draft-target-row{justify-content:space-between;padding:6px 10px;unicode-bidi:isolate}.pls-add-row,.pls-draft-target-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.pls-draft-actions{display:flex;gap:8px}.pls-sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.pls-btn{background:#0000;border:1px solid var(--border);border-radius:6px;color:var(--text-primary);cursor:pointer;font-family:inherit;font-size:13px;padding:7px 14px}.pls-btn:hover:not(:disabled){background:var(--bg-hover)}.pls-btn:disabled{cursor:default;opacity:.6}.pls-btn-primary{background:var(--accent);border-color:var(--accent);color:#0c0c0c;color:var(--bg-primary,#0c0c0c);font-weight:600}.pls-btn-primary:hover:not(:disabled){filter:brightness(1.08)}.pls-btn-danger{background:#c0392b;border-color:#c0392b;color:#fff;font-weight:600}.pls-action{background:#0000;border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);cursor:pointer;font-family:inherit;font-size:12px;padding:4px 10px}.pls-action:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.pls-action-danger{border-color:#c0392b44;color:#c0392b}.pls-action-danger:hover,.pls-error-summary{background:#c0392b14}.pls-error-summary{border:1px solid #c0392b;border-radius:8px;display:flex;flex-direction:column;font-size:13px;gap:8px;padding:10px 12px}.pls-error-summary:focus{outline-offset:2px}.pls-confirm-list{grid-gap:6px 12px;display:grid;font-size:13px;gap:6px 12px;grid-template-columns:minmax(110px,auto) 1fr;margin:0}.pls-confirm-list dt{color:var(--text-secondary);font-weight:600}.pls-confirm-list dd{margin:0}@media (max-width:420px){.pls-confirm-list{grid-template-columns:1fr}.pls-confirm-list dt{margin-top:8px}}.project-localization-settings{color:var(--semantic-text-primary)}.project-localization-settings .settings-card{border-color:var(--semantic-border);box-shadow:none}.project-localization-settings .primary-action,.project-localization-settings button.primary{background:var(--action-primary);color:var(--semantic-text-on-action)}@media (max-width:700px){.project-localization-settings{padding-inline:.75rem}}.withdrawal-consent-modal__body{display:flex;flex-direction:column;gap:14px}.withdrawal-consent-modal__wording{color:#e8e8ea;color:var(--text-primary,#e8e8ea);font-size:.92rem;font-weight:500;line-height:1.55;margin:0}.withdrawal-consent-modal__loading{color:#a0a0a6;color:var(--text-secondary,#a0a0a6);font-size:.875rem;margin:0}.withdrawal-consent-modal__error{background:#dc35451f;border:1px solid #dc354566;border-radius:8px;color:#dc3545;font-size:.85rem;line-height:1.45;margin:0;padding:10px 12px}.withdrawal-consent-modal__checkbox-row{align-items:flex-start;color:#e8e8ea;color:var(--text-primary,#e8e8ea);cursor:pointer;display:flex;font-size:.9rem;gap:10px}.withdrawal-consent-modal__checkbox-row input[type=checkbox]{cursor:pointer;flex-shrink:0;height:16px;margin-top:3px;width:16px}.withdrawal-consent-modal__links{color:#a0a0a6;color:var(--text-secondary,#a0a0a6);font-size:.8rem;margin:0}.withdrawal-consent-modal__links a{color:#c9a76a;color:var(--accent,#c9a76a);text-decoration:underline}.stripe-payment-form{background:#fff;border-radius:12px;overflow:hidden}.payment-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:16px 20px}.payment-header h3{color:#1f2937;flex:1 1;font-size:1.1rem;font-weight:600;margin:0;text-align:center}.payment-header .back-btn,.payment-header .close-btn{align-items:center;background:none;border:none;border-radius:6px;color:#6b7280;cursor:pointer;display:flex;justify-content:center;padding:6px}.payment-header .back-btn:hover,.payment-header .close-btn:hover{background:#f3f4f6;color:#1f2937}.payment-header .back-btn{margin-right:auto}.payment-header .close-btn{margin-left:auto}.amount-section{padding:20px}.amount-section label{color:#374151;display:block;font-size:.9rem;font-weight:500;margin-bottom:8px}.amount-input-wrapper{align-items:center;border:2px solid #e5e7eb;border-radius:10px;display:flex;overflow:hidden;transition:border-color .2s}.amount-input-wrapper:focus-within{border-color:#6366f1}.currency-symbol{background:#f9fafb;border-right:1px solid #e5e7eb;color:#6b7280;font-size:.9rem;font-weight:600;padding:14px 16px}.amount-input-wrapper input{background:#0000;border:none;color:#1f2937;flex:1 1;font-size:1.5rem;font-weight:700;outline:none;padding:14px 16px}.amount-input-wrapper input::placeholder{color:#d1d5db}.min-hint{color:#9ca3af;display:block;font-size:.8rem;margin-top:6px}.preview-breakdown{background:#f9fafb;border-radius:10px;margin:0 20px 20px;padding:16px}.breakdown-row{color:#6b7280;display:flex;font-size:.9rem;justify-content:space-between;padding:8px 0}.breakdown-row.highlight{color:#1f2937;font-weight:500}.breakdown-row .credits-value{color:#059669;font-weight:600}.breakdown-row.total{border-top:1px solid #e5e7eb;color:#1f2937;font-weight:600;margin-top:8px;padding-top:12px}.calculating{color:#6b7280;font-size:.9rem;padding:16px;text-align:center}.form-actions{display:flex;gap:12px;padding:0 20px 20px}.cancel-btn{background:#f3f4f6;border:none;border-radius:8px;color:#374151;cursor:pointer;flex:1 1;font-size:1rem;font-weight:500;padding:14px;transition:background .2s}.cancel-btn:hover{background:#e5e7eb}.pay-btn,.proceed-btn{background:#6366f1;border:none;border-radius:8px;color:#fff;cursor:pointer;flex:2 1;font-size:1rem;font-weight:600;padding:14px;transition:background .2s}.pay-btn:hover:not(:disabled),.proceed-btn:hover:not(:disabled){background:#4f46e5}.pay-btn:disabled,.proceed-btn:disabled{background:#9ca3af;cursor:not-allowed}.checkout-form{padding:20px}.payment-summary{background:#f9fafb;border-radius:10px;margin-bottom:20px;padding:16px}.payment-summary .summary-row{color:#374151;display:flex;font-size:.9rem;justify-content:space-between;padding:6px 0}.payment-summary .summary-row.fee{color:#6b7280;font-size:.85rem}.payment-summary .credits-value{color:#059669;font-weight:600}.payment-element-container{margin-bottom:20px}.payment-error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:.9rem;margin-bottom:16px;padding:12px 16px}.checkout-actions{display:flex;gap:12px}.checkout-actions .cancel-btn{flex:1 1}.checkout-actions .pay-btn{flex:2 1}.loading-state{color:#6b7280;padding:60px 20px;text-align:center}@media (max-width:480px){.amount-input-wrapper input{font-size:1.25rem}.checkout-actions,.form-actions{flex-direction:column}.cancel-btn,.pay-btn,.proceed-btn{flex:none}}.usage-gauge{background:#ffffff08;background:var(--surface-2,#ffffff08);border:1px solid #2a2a35;border:1px solid var(--border-color,#2a2a35);border-radius:10px;display:flex;flex-direction:column;gap:6px;min-width:220px;padding:12px 14px}.usage-gauge__head{align-items:center;display:flex;justify-content:space-between}.usage-gauge__tier{color:#e8e8ef;color:var(--text-primary,#e8e8ef);font-size:.9rem;font-weight:600}.usage-gauge__boost{background:#87ceeb;background:var(--accent,#87ceeb);border-radius:999px;color:#0b0b0f;font-size:.7rem;font-weight:600;padding:1px 7px}.usage-gauge__bar{background:#ffffff14;background:var(--surface-3,#ffffff14);border-radius:999px;height:8px;overflow:hidden;position:relative}.usage-gauge__fill{background:linear-gradient(90deg,#4169e1,#87ceeb);border-radius:999px;height:100%;inset:0 auto 0 0;position:absolute;transition:width .35s ease}.usage-gauge--limited .usage-gauge__fill{background:linear-gradient(90deg,#dc143c,#ffa07a)}.usage-gauge__label{color:#9a9aa8;color:var(--text-secondary,#9a9aa8);font-size:.8rem}.usage-gauge__limited-text{color:#dc143c;color:var(--danger,#dc143c);font-weight:600}.usage-gauge__reset{color:#70707e;color:var(--text-tertiary,#70707e)}.usage-meter{background:#ffffff08;background:var(--surface-2,#ffffff08);border:1px solid #2a2a35;border:1px solid var(--border-color,#2a2a35);border-radius:10px;display:flex;flex-direction:column;gap:6px;min-width:220px;padding:12px 14px}.usage-meter__head{align-items:center;display:flex;justify-content:space-between}.usage-meter__plan{color:#e8e8ef;color:var(--text-primary,#e8e8ef);font-size:.9rem;font-weight:600}.usage-meter__full-flag{background:#dc143c;background:var(--danger,#dc143c);border-radius:999px;color:#0b0b0f;font-size:.7rem;font-weight:600;padding:1px 7px}.usage-meter__bar{background:#ffffff14;background:var(--surface-3,#ffffff14);border-radius:999px;height:8px;overflow:hidden;position:relative}.usage-meter__fill{background:linear-gradient(90deg,#4169e1,#87ceeb);border-radius:999px;height:100%;inset:0 auto 0 0;position:absolute;transition:width .35s ease}.usage-meter__bar--full .usage-meter__fill{background:linear-gradient(90deg,#dc143c,#ffa07a)}.usage-meter__label{color:#9a9aa8;color:var(--text-secondary,#9a9aa8);font-size:.8rem}.usage-meter__reset{color:#70707e;color:var(--text-tertiary,#70707e)}.usage-meter__credits{border-top:1px solid #2a2a35;border-top:1px solid var(--border-color,#2a2a35);display:flex;flex-direction:column;gap:6px;margin-top:8px;padding-top:8px}.usage-meter__credits-off{align-items:center;color:#9a9aa8;color:var(--text-secondary,#9a9aa8);display:flex;font-size:.8rem;justify-content:space-between}.usage-meter__credits-on{display:flex;flex-direction:column;gap:5px}.usage-meter__credits-head{align-items:center;color:#e8e8ef;color:var(--text-primary,#e8e8ef);display:flex;font-size:.85rem;font-weight:600;justify-content:space-between}.usage-meter__toggle{cursor:pointer;display:inline-flex;font-size:.75rem;font-weight:400;gap:4px}.usage-meter__credits-row,.usage-meter__toggle{align-items:center;color:#9a9aa8;color:var(--text-secondary,#9a9aa8)}.usage-meter__credits-row{display:flex;font-size:.8rem;justify-content:space-between}.usage-meter__credits-limit input{background:#ffffff14;background:var(--surface-3,#ffffff14);border:1px solid #2a2a35;border:1px solid var(--border-color,#2a2a35);border-radius:6px;color:#e8e8ef;color:var(--text-primary,#e8e8ef);padding:2px 6px;width:70px}.usage-meter__link-btn{background:none;border:none;color:#87ceeb;color:var(--accent,#87ceeb);cursor:pointer;font-size:.78rem;padding:0;text-decoration:underline}.usage-meter__link-btn:disabled{cursor:default;opacity:.7}.usage-meter__buy-btn{align-self:flex-start;background:#ffffff14;background:var(--surface-3,#ffffff14);border:1px solid #2a2a35;border:1px solid var(--border-color,#2a2a35);border-radius:6px;color:#e8e8ef;color:var(--text-primary,#e8e8ef);cursor:pointer;font-size:.78rem;margin-top:2px;padding:5px 10px}.usage-meter__buy-btn:hover{background:#87ceeb;background:var(--accent,#87ceeb);color:#0b0b0f}.usage-meter__credits-error{color:#dc143c;color:var(--danger,#dc143c);font-size:.78rem;margin:0}.plan-picker{display:flex;flex-direction:column;gap:10px;margin-top:12px}.plan-picker__head{align-items:baseline;display:flex;flex-wrap:wrap;gap:6px;justify-content:space-between}.plan-picker__title{color:#e8e8ef;color:var(--text-primary,#e8e8ef);font-size:.95rem;font-weight:600}.plan-picker__portal-link{background:none;border:none;color:#87ceeb;color:var(--accent,#87ceeb);cursor:pointer;font-size:.8rem;padding:0;text-decoration:underline}.plan-picker__portal-link:disabled{cursor:default;opacity:.7}.plan-picker__card-allowance,.plan-picker__card-note{color:#70707e;color:var(--text-tertiary,#70707e);font-size:.75rem}.plan-picker__card-note{font-style:italic;text-align:center}.plan-picker__grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.plan-picker__card{align-items:center;background:#ffffff08;background:var(--surface-2,#ffffff08);border:1px solid #2a2a35;border:1px solid var(--border-color,#2a2a35);border-radius:10px;display:flex;flex-direction:column;gap:8px;padding:14px 10px}.plan-picker__card--current{border-color:#87ceeb;border-color:var(--accent,#87ceeb)}.plan-picker__card-name{color:#e8e8ef;color:var(--text-primary,#e8e8ef);font-size:.9rem;font-weight:600}.plan-picker__card-price{color:#9a9aa8;color:var(--text-secondary,#9a9aa8);font-size:.8rem}.plan-picker__card-button{background:#ffffff14;background:var(--surface-3,#ffffff14);border:1px solid #2a2a35;border:1px solid var(--border-color,#2a2a35);border-radius:6px;color:#e8e8ef;color:var(--text-primary,#e8e8ef);cursor:pointer;font-size:.8rem;padding:6px 8px;width:100%}.plan-picker__card-button:disabled{cursor:default;opacity:.7}.plan-picker__card-button:not(:disabled):hover{background:#87ceeb;background:var(--accent,#87ceeb);color:#0b0b0f}.plan-picker__error{color:#dc143c;color:var(--danger,#dc143c);font-size:.8rem}.plan-picker__interval-toggle{border:1px solid #2a2a35;border:1px solid var(--border-color,#2a2a35);border-radius:999px;display:inline-flex;overflow:hidden}.plan-picker__interval-toggle button{background:none;border:none;color:#9a9aa8;color:var(--text-secondary,#9a9aa8);cursor:pointer;font-size:.75rem;padding:3px 10px}.plan-picker__interval-toggle button[aria-pressed=true]{background:#87ceeb;background:var(--accent,#87ceeb);color:#0b0b0f;cursor:default}.plan-picker__legacy-notice{background:#ffffff08;background:var(--surface-2,#ffffff08);border-radius:8px;color:#9a9aa8;color:var(--text-secondary,#9a9aa8);font-size:.8rem;margin:0;padding:8px 10px}.plan-picker__card--contract{border-style:dashed}.plan-picker-v3__matrix{border:1px solid #2a2a35;border:1px solid var(--border-color,#2a2a35);border-radius:10px;display:flex;flex-direction:column;font-size:.78rem;overflow:hidden}.plan-picker-v3__matrix-row{align-items:center;display:grid;grid-template-columns:1.6fr repeat(5,.8fr)}.plan-picker-v3__matrix-row:nth-child(2n){background:#ffffff08;background:var(--surface-2,#ffffff08)}.plan-picker-v3__matrix-row--head{background:#ffffff14;background:var(--surface-3,#ffffff14);color:#e8e8ef;color:var(--text-primary,#e8e8ef);font-weight:600}.plan-picker-v3__matrix-row>span{color:#9a9aa8;color:var(--text-secondary,#9a9aa8);padding:5px 8px;text-align:center}.plan-picker-v3__matrix-row>span:first-child{color:#e8e8ef;color:var(--text-primary,#e8e8ef);text-align:left}.plan-picker-v3__addons{color:#70707e;color:var(--text-tertiary,#70707e);font-size:.72rem;list-style:none;margin:0;padding:0;text-align:center}.plan-picker__card-button--contact{display:block;text-align:center;text-decoration:none}.plan-and-usage{display:flex;flex-direction:column;gap:14px;margin-top:12px}.plan-and-usage__card{background:#ffffff08;background:var(--surface-2,#ffffff08);border:1px solid #2a2a35;border:1px solid var(--border-color,#2a2a35);border-radius:10px;display:flex;flex-direction:column;gap:8px;padding:14px}.plan-and-usage__card-head{align-items:baseline;display:flex;gap:8px;justify-content:space-between}.plan-and-usage__plan-name{color:#e8e8ef;color:var(--text-primary,#e8e8ef);font-size:1.05rem;font-weight:700}.plan-and-usage__plan-price{color:#9a9aa8;color:var(--text-secondary,#9a9aa8);font-size:.85rem}.plan-and-usage__legacy{color:#9a9aa8;color:var(--text-secondary,#9a9aa8);font-size:.8rem;margin:0}.plan-and-usage__renewal{color:#70707e;color:var(--text-tertiary,#70707e);font-size:.75rem;margin:0}.plan-and-usage__features{color:#9a9aa8;color:var(--text-secondary,#9a9aa8);font-size:.8rem;margin:4px 0 0;padding-left:18px}.plan-and-usage__limits{display:flex;flex-direction:column;gap:4px}.plan-and-usage__limit-row{border-bottom:1px solid #2a2a35;border-bottom:1px solid var(--border-color,#2a2a35);color:#9a9aa8;color:var(--text-secondary,#9a9aa8);display:flex;font-size:.8rem;justify-content:space-between;padding:3px 0}.plan-and-usage__limit-name{color:#70707e;color:var(--text-tertiary,#70707e)}.plan-and-usage__paused-banner{background:#c9973b1a;background:var(--warning-bg,#c9973b1a);border:1px solid #c9973b;border:1px solid var(--warning-color,#c9973b);border-radius:10px;color:#e8e8ef;color:var(--text-primary,#e8e8ef);font-size:.85rem;margin:0;padding:10px 14px}.plan-and-usage__seats{border:1px solid #2a2a35;border:1px solid var(--border-color,#2a2a35);border-radius:10px;display:flex;flex-direction:column;gap:6px;padding:12px 14px}.plan-and-usage__seats-head{color:#e8e8ef;color:var(--text-primary,#e8e8ef);display:flex;font-size:.85rem;font-weight:600;justify-content:space-between}.plan-and-usage__seat-row{color:#9a9aa8;color:var(--text-secondary,#9a9aa8);display:flex;font-size:.8rem;justify-content:space-between;padding:2px 0}.plan-and-usage__seat-kind{color:#70707e;color:var(--text-tertiary,#70707e)}.plan-and-usage__co-writers{color:#9a9aa8;color:var(--text-secondary,#9a9aa8);font-size:.8rem;margin:0}.plan-and-usage__pause{border:1px solid #2a2a35;border:1px solid var(--border-color,#2a2a35);border-radius:10px;display:flex;flex-direction:column;gap:8px;padding:12px 14px}.plan-and-usage__pause-label{align-items:center;color:#9a9aa8;color:var(--text-secondary,#9a9aa8);display:flex;font-size:.8rem;gap:8px}.plan-and-usage__pause-note{color:#70707e;color:var(--text-tertiary,#70707e);font-size:.75rem;margin:0}.plan-and-usage__pause-error{color:#e05a5a;color:var(--error-color,#e05a5a);font-size:.8rem;margin:0}.redeem-beta-card{background:#ffffff08;background:var(--surface-2,#ffffff08);border:1px solid #2a2a35;border:1px solid var(--border-color,#2a2a35);border-radius:10px;display:flex;flex-direction:column;gap:8px;margin-top:14px;padding:14px}.redeem-beta-card__title{color:#e8e8ef;color:var(--text-primary,#e8e8ef);font-size:.9rem;margin:0}.redeem-beta-card__hint{color:#9a9aa8;color:var(--text-secondary,#9a9aa8);font-size:.8rem;margin:0}.redeem-beta-card__row{display:flex;gap:8px}.redeem-beta-card__input{background:#ffffff05;background:var(--surface-1,#ffffff05);flex:1 1;font-size:.85rem;padding:6px 10px}.redeem-beta-card__button,.redeem-beta-card__input{border:1px solid #2a2a35;border:1px solid var(--border-color,#2a2a35);border-radius:6px;color:#e8e8ef;color:var(--text-primary,#e8e8ef)}.redeem-beta-card__button{background:#ffffff14;background:var(--surface-3,#ffffff14);cursor:pointer;font-size:.8rem;padding:6px 14px}.redeem-beta-card__button:disabled{cursor:default;opacity:.7}.redeem-beta-card__button:not(:disabled):hover{background:#87ceeb;background:var(--accent,#87ceeb);color:#0b0b0f}.redeem-beta-card__success{color:#98fb98;color:var(--success,#98fb98);font-size:.85rem;margin:0}.redeem-beta-card__error{color:#dc143c;color:var(--danger,#dc143c);font-size:.8rem;margin:0}.rotation-step{display:flex;flex-direction:column;gap:14px}.rotation-step-lede{color:var(--text-primary);font-size:.88rem;line-height:1.55;margin:0}.rotation-muted{color:var(--text-secondary);font-size:.82rem;margin:0}.rotation-carry-summary h4,.rotation-verify-evidence h4{color:var(--text-secondary);font-size:.85rem;margin:0 0 8px}.rotation-carry-list{display:flex;gap:20px;margin:0 0 10px}.rotation-carry-list dt{color:var(--text-secondary);font-size:.78rem}.rotation-carry-list dd{color:var(--text-primary);font-size:.9rem;font-weight:600;margin:0}.rotation-grants-table{border-collapse:collapse;font-size:.8rem;width:100%}.rotation-grants-table th{color:var(--text-secondary);font-weight:600;text-align:left}.rotation-grants-table td,.rotation-grants-table th{border-bottom:1px solid var(--border);padding:6px 8px}.rotation-grants-table td{color:var(--text-primary)}.rotation-cli-check{display:flex;flex-direction:column;gap:6px}.rotation-cli-check p{color:var(--text-secondary);font-size:.82rem;margin:0}.rotation-cli-check-code,.rotation-cli-check-hint code{background:var(--bg-base);border-radius:4px;color:var(--text-primary);display:block;font-family:monospace;font-size:.82rem;margin-top:4px;padding:8px 10px;word-break:break-all}.rotation-cli-check-hint{color:var(--text-secondary);font-size:.8rem;margin:0}.rotation-announcement,.rotation-onetime-note{color:var(--text-secondary);font-size:.82rem;margin:0;min-height:1.2em}.rotation-verify-evidence{border:1px solid var(--border);border-radius:var(--radius);display:flex;flex-direction:column;gap:8px;padding:12px}.rotation-verify-evidence p{color:var(--text-primary);font-size:.85rem;margin:0}.rotation-grace-notice{color:var(--text-secondary);font-size:.82rem;font-style:italic;margin:0}.rotation-footer{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.api-keys-panel .profile-edit-body{gap:16px}.api-keys-intro{color:var(--text-secondary);font-size:.85rem;line-height:1.5;margin:0}.api-key-create-form{display:flex;flex-direction:column;gap:12px}.api-key-scope-choice{display:flex;gap:20px}.api-key-scope-option{align-items:center;color:var(--text-primary);cursor:pointer;display:flex;font-size:.85rem;gap:6px}.api-key-secret-box{background:#eab30814;border:1px solid #eab30866;border-radius:var(--radius);display:flex;flex-direction:column;gap:10px;padding:14px}.api-key-secret-warning{color:#eab308;font-size:.82rem;font-weight:600;margin:0}.api-key-secret-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.api-key-secret-value{background:var(--bg-base);border-radius:4px;color:var(--text-primary);flex:1 1;font-family:monospace;font-size:.9rem;min-width:200px;padding:6px 10px;word-break:break-all}.api-keys-list{margin-top:4px}.api-keys-table{border-collapse:collapse;font-size:.82rem;width:100%}.api-keys-table th{color:var(--text-secondary);font-weight:600;text-align:left}.api-keys-table td,.api-keys-table th{border-bottom:1px solid var(--border);padding:8px 10px}.api-keys-table td{color:var(--text-primary)}.api-key-prefix{color:var(--text-secondary);font-family:monospace}.api-key-rotation-badge{color:var(--text-secondary);display:block;font-size:.76rem;white-space:normal}.api-keys-row-actions{gap:6px}.api-keys-row-actions,.upgrade-hint{align-items:center;display:flex;flex-wrap:wrap}.upgrade-hint{background:#87ceeb14;background:var(--surface-2,#87ceeb14);border:1px solid #87ceeb;border:1px solid var(--accent,#87ceeb);border-radius:8px;font-size:.8rem;gap:8px;padding:8px 12px}.upgrade-hint__detail{color:#e8e8ef;color:var(--text-primary,#e8e8ef)}.upgrade-hint__hint{color:#9a9aa8;color:var(--text-secondary,#9a9aa8)}.upgrade-hint__action{background:none;border:1px solid #87ceeb;border:1px solid var(--accent,#87ceeb);border-radius:6px;color:#87ceeb;color:var(--accent,#87ceeb);cursor:pointer;font-size:.75rem;margin-left:auto;padding:3px 10px}.upgrade-hint__action:hover{background:#87ceeb;background:var(--accent,#87ceeb);color:#0b0b0f}.studio-panel{display:flex;flex-direction:column;gap:22px}.studio-loading{color:#a1a1aa;color:var(--text-secondary,#a1a1aa);font-size:.88rem;line-height:1.5;margin:0}.studio-switcher{display:flex;flex-wrap:wrap;gap:8px}.studio-tab{background:#0000;border:1px solid #ffffff26;border:1px solid var(--border-color,#ffffff26);border-radius:999px;color:#a1a1aa;color:var(--text-secondary,#a1a1aa);cursor:pointer;font-size:.84rem;padding:6px 14px}.studio-tab.active{background:#6c5ce729;border-color:#6c5ce7;border-color:var(--accent-color,#6c5ce7);color:#f4f4f5;color:var(--text-primary,#f4f4f5)}.studio-hint,.studio-intro{color:#a1a1aa;color:var(--text-secondary,#a1a1aa);font-size:.83rem;line-height:1.55;margin:0}.studio-hint-muted{font-style:italic;opacity:.85}.studio-link-button{appearance:none;background:none;border:none;color:#6c5ce7;color:var(--accent-color,#6c5ce7);cursor:pointer;font-size:.82rem;font-weight:600;margin-top:8px;padding:0;text-align:left;width:fit-content}.studio-link-button:hover{text-decoration:underline}.studio-hint-inline{color:#a1a1aa;color:var(--text-secondary,#a1a1aa);font-size:.78rem;font-weight:400}.studio-block{display:flex;flex-direction:column;gap:10px}.studio-block h3{font-size:1rem;margin:0}.studio-block h4{font-size:.86rem;font-weight:600;margin:6px 0 0}.studio-block h4,.studio-facts{color:#a1a1aa;color:var(--text-secondary,#a1a1aa)}.studio-facts{display:flex;flex-wrap:wrap;font-size:.84rem;gap:18px}.studio-input,.studio-select{background:#141418;background:var(--bg-primary,#141418);border:1px solid #ffffff26;border:1px solid var(--border-color,#ffffff26);border-radius:8px;border-radius:var(--radius,8px);color:#f4f4f5;color:var(--text-primary,#f4f4f5);font-size:.88rem;padding:8px 11px}.studio-input:disabled,.studio-select:disabled{cursor:not-allowed;opacity:.6}.studio-select-sm{font-size:.8rem;padding:5px 8px}.studio-add-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.studio-input{flex:1 1 220px;min-width:0}.studio-seat-toggle{align-items:center;color:#a1a1aa;color:var(--text-secondary,#a1a1aa);cursor:pointer;display:flex;font-size:.82rem;gap:6px;white-space:nowrap}.studio-btn-primary{background:#6c5ce7;background:var(--accent-color,#6c5ce7);border:none;border-radius:8px;border-radius:var(--radius,8px);color:#fff;cursor:pointer;font-size:.88rem;padding:8px 18px}.studio-btn-primary:disabled{cursor:not-allowed;opacity:.5}.studio-btn-danger{background:#0000;border:1px solid #dc143c73;border-radius:8px;border-radius:var(--radius,8px);color:#f87171;cursor:pointer;font-size:.78rem;padding:5px 12px;white-space:nowrap}.studio-btn-danger:hover{background:#dc143c1f}.studio-notice{background:#eab30814;border:1px solid #eab30866;border-radius:8px;border-radius:var(--radius,8px);line-height:1.5}.studio-error,.studio-notice{font-size:.83rem;padding:10px 12px}.studio-error{background:#dc143c14;border:1px solid #dc143c66;border-radius:8px;border-radius:var(--radius,8px);color:#f87171}.studio-row{align-items:center;border-bottom:1px solid #ffffff12;border-bottom:1px solid var(--border-color,#ffffff12);display:flex;flex-wrap:wrap;gap:12px;padding:9px 0}.studio-row:last-child{border-bottom:none}.studio-row-pending{opacity:.78}.studio-who{display:flex;flex:1 1 180px;flex-direction:column;gap:2px;min-width:0}.studio-name{font-size:.88rem;overflow:hidden;text-overflow:ellipsis}.studio-email{color:#a1a1aa;color:var(--text-secondary,#a1a1aa);font-size:.75rem}.studio-seat-kind-badge{background:#87ceeb;background:var(--accent,#87ceeb);border-radius:999px;color:#0b0b0f;font-size:.7rem;font-weight:600;padding:2px 8px}.studio-burndown-table{border-collapse:collapse;font-size:.8rem;width:100%}.studio-burndown-table td,.studio-burndown-table th{border-bottom:1px solid #2a2a35;border-bottom:1px solid var(--border-color,#2a2a35);padding:4px 8px;text-align:left}.recovery-codes-guidance{color:var(--text-secondary);font-size:.9rem;line-height:1.5;margin:0 0 16px}.recovery-codes-list{grid-gap:8px;background:var(--bg-base);border:1px solid var(--border);border-radius:var(--radius);display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));list-style:none;margin:0 0 16px;padding:14px}.recovery-codes-item code{color:var(--text-primary);display:block;font-family:monospace;font-size:.92rem;-webkit-user-select:all;user-select:all;word-break:break-all}.recovery-codes-actions{display:flex;gap:10px;margin-bottom:10px}.recovery-codes-copy-status{color:var(--text-secondary);font-size:.82rem;margin:0 0 12px;min-height:1.2em}.recovery-codes-onetime-note{background:var(--accent-tint);border-radius:var(--radius);color:var(--text-secondary);font-size:.82rem;line-height:1.5;margin:0;padding:10px 12px}.recovery-codes-footer{align-items:center;display:flex;gap:16px;justify-content:space-between;width:100%}.recovery-codes-confirm-row{align-items:center;color:var(--text-primary);cursor:pointer;display:flex;font-size:.88rem;gap:8px}@media (max-width:480px){.recovery-codes-list{grid-template-columns:1fr}.recovery-codes-footer{align-items:stretch;flex-direction:column}}.theme-selector{grid-gap:12px;display:grid;gap:12px}.theme-choice-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,minmax(180px,1fr))}.theme-choice{grid-gap:10px;align-items:center;background:var(--surface-passive);border:1px solid var(--semantic-border);border-radius:8px;cursor:pointer;display:grid;gap:10px;grid-template-columns:auto auto 1fr;padding:12px}.theme-choice.is-selected{background:var(--selection-surface);border-color:var(--selection-border)}.theme-choice>span:last-child{grid-gap:3px;display:grid;gap:3px}.theme-choice small{color:var(--semantic-text-secondary);line-height:1.35}.theme-swatches{border:1px solid var(--semantic-border-strong);border-radius:5px;display:flex;height:28px;overflow:hidden;width:50px}.theme-swatches i{flex:1 1}.theme-scope-note{color:var(--semantic-text-secondary);font-size:13px;margin:0}@media (max-width:620px){.theme-choice-grid{grid-template-columns:1fr}}.theme-effective{color:inherit;color:var(--semantic-text-primary,inherit);font-size:14px;line-height:1.45;margin:0}.theme-save-state{color:var(--semantic-text-secondary);font-size:13px;margin:0;min-height:1.2em}.theme-choice input:disabled+span{opacity:.7}.profile-branded-bar{align-items:center;background:var(--bg-panel);border-bottom:1px solid var(--bg-base);display:flex;flex-shrink:0;height:40px;justify-content:space-between;padding:0 1rem;position:sticky;top:0;z-index:100}.profile-bar-left{align-items:center;display:flex;gap:8px;text-decoration:none}.profile-back-btn{align-items:center;background:#0000;border:none;border-radius:var(--radius);color:var(--text-secondary);cursor:pointer;display:flex;flex-shrink:0;height:28px;justify-content:center;transition:background .15s ease,color .15s ease;width:28px}.profile-back-btn .material-symbols-outlined{font-size:20px}.profile-back-btn:hover{background:var(--surface-hover);color:var(--text-primary)}.profile-bar-logo{filter:grayscale(1) brightness(1.08) contrast(1.08);height:18px;object-fit:cover;object-position:center top;width:18px}.profile-bar-title{color:var(--text-primary);font-size:13px;font-weight:600;letter-spacing:.01em}.profile-bar-right{align-items:center;display:flex;gap:6px}.profile-bar-btn{align-items:center;background:#0000;border:none;border-radius:var(--radius);color:var(--text-secondary);cursor:pointer;display:flex;height:28px;justify-content:center;transition:background .15s ease,color .15s ease;width:28px}.profile-bar-btn .material-symbols-outlined{font-size:18px}.profile-bar-btn:hover{background:var(--surface-hover);color:var(--text-primary)}.user-profile-page{background:var(--bg-base);min-height:100vh;padding:0}.profile-page-container{margin:0 auto;max-width:1180px;padding:20px 24px 32px}.profile-page-shell{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 18px 40px #00000047;overflow:hidden}.profile-page-header{align-items:flex-end;background:var(--bg-panel);border-bottom:1px solid var(--border);display:flex;gap:24px;justify-content:space-between;padding:18px 24px}.profile-heading-block{display:flex;flex-direction:column;gap:6px}.profile-back-link{align-items:center;color:var(--text-secondary);display:inline-flex;font-size:.84rem;gap:8px;letter-spacing:.06em;text-decoration:none;text-transform:uppercase;transition:color .15s ease-out;transition:color var(--transition-fast,.15s ease-out);width:fit-content}.profile-back-link:hover{color:var(--text-primary)}.profile-back-link .material-symbols-outlined{font-size:16px}.profile-page-title{color:var(--text-primary);font-size:1.75rem;letter-spacing:-.02em;line-height:1.1;margin:0}.profile-page-subtitle{color:var(--text-secondary);font-size:.92rem;margin:0;max-width:620px}.profile-balance-hero{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);min-width:240px;padding:14px 16px}.profile-balance-label{color:var(--text-secondary);display:block;font-size:.72rem;letter-spacing:.08em;margin-bottom:4px;text-transform:uppercase}.profile-balance-value{color:var(--text-primary);display:block;font-size:1.45rem;line-height:1.1}.profile-page-tabs{background:var(--bg-panel);border-bottom:1px solid var(--border);display:flex;gap:1px;overflow-x:auto;padding:0 16px}.profile-page-tab{align-items:center;background:var(--bg-panel);border:none;border-left:1px solid var(--bg-panel);border-radius:0;border-right:1px solid var(--bg-panel);border-top:2px solid #0000;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:600;gap:12px;min-width:220px;padding:12px 16px 11px;text-align:left;transition:color .15s ease-out,background .15s ease-out,border-color .15s ease-out;transition:color var(--transition-fast,.15s ease-out),background var(--transition-fast,.15s ease-out),border-color var(--transition-fast,.15s ease-out)}.profile-page-tab:hover{background:var(--border-strong);color:var(--text-primary)}.profile-page-tab.active{background:var(--bg-base);border-left-color:var(--border);border-right-color:var(--border);border-top-color:var(--accent);color:var(--text-primary)}.profile-page-tab-icon{align-items:center;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);color:var(--semantic-text-secondary);display:inline-flex;flex-shrink:0;height:28px;justify-content:center;width:28px}.profile-page-tab.active .profile-page-tab-icon{background:var(--accent-tint);border-color:var(--accent);color:var(--text-primary)}.profile-page-tab .material-symbols-outlined{font-size:16px}.profile-page-tab-copy{display:flex;flex-direction:column;gap:1px;min-width:0}.profile-page-tab-label{color:inherit;font-size:.9rem;font-weight:600;line-height:1.15}.profile-page-tab-meta{color:var(--text-muted);font-size:.74rem;line-height:1.25}.profile-page-tab.active .profile-page-tab-meta{color:var(--semantic-text-secondary)}.profile-page-content{background:var(--bg-base);padding:16px}.profile-page-loading{color:var(--text-secondary);color:var(--text-secondary,var(--text-secondary));padding:80px 24px;text-align:center}.credits-section,.profile-section,.usage-section{display:flex;flex-direction:column;gap:24px}.profile-overview-layout{grid-gap:16px;align-items:start;display:grid;gap:16px;grid-template-columns:minmax(0,1.8fr) minmax(280px,.8fr)}.profile-main-column{display:flex;flex-direction:column;gap:16px}.action-card,.balance-card,.profile-info-card,.transactions-section,.usage-breakdown,.usage-summary-card{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:none}.profile-info-card{align-items:center;display:flex;gap:20px;padding:20px}.profile-side-panel{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.profile-side-panel-header{background:var(--bg-panel);border-bottom:1px solid var(--border);padding:16px}.profile-side-panel-header h3{color:var(--text-primary);font-size:.92rem;font-weight:700;margin:0 0 4px}.profile-side-panel-header p{color:var(--text-secondary);font-size:.82rem;line-height:1.4;margin:0}.profile-side-list{padding:10px 0}.profile-side-item{border-bottom:1px solid var(--semantic-border);display:flex;gap:12px;justify-content:space-between;padding:10px 16px}.profile-side-item:last-child{border-bottom:none}.profile-side-label{color:var(--text-secondary);font-size:.76rem;letter-spacing:.08em;text-transform:uppercase}.profile-side-value{color:var(--text-primary);font-size:.86rem;font-weight:600;text-align:right}.profile-side-actions{grid-gap:8px;background:var(--bg-elevated);border-top:1px solid var(--border);display:grid;gap:8px;padding:16px}.profile-side-action{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);cursor:pointer;font-size:.86rem;font-weight:600;padding:10px 12px;text-align:left;transition:background .15s ease-out,border-color .15s ease-out;transition:background var(--transition-fast,.15s ease-out),border-color var(--transition-fast,.15s ease-out);width:100%}.profile-side-action:hover{background:var(--border-strong);border-color:var(--accent);color:var(--text-primary)}.profile-avatar-large{align-items:center;background:linear-gradient(135deg,var(--accent),#5b9bd5);border:1px solid var(--semantic-border);border-radius:var(--radius);color:var(--text-primary);display:flex;flex-shrink:0;font-size:28px;font-weight:700;height:72px;justify-content:center;letter-spacing:.04em;width:72px}.profile-details{min-width:0}.profile-details h3{color:var(--text-primary);font-size:1.2rem;margin:0 0 6px}.profile-email{color:var(--text-secondary);font-size:.9rem;margin:0;word-break:break-word}.profile-badge-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.admin-badge,.status-badge{align-items:center;border-radius:var(--radius-pill);display:inline-flex;font-size:.74rem;font-weight:700;letter-spacing:.06em;padding:6px 10px;text-transform:uppercase}.admin-badge{background:#d4ac0d29;border:1px solid #d4ac0d3d;color:var(--accent)}.status-badge.active{background:var(--accent-tint);border:1px solid var(--accent-tint);color:var(--semantic-success)}.status-badge.inactive{background:#ef444424;border:1px solid #ef44443d;color:var(--semantic-danger)}.profile-stats{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr))}.stat-item{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);display:flex;flex-direction:column;gap:6px;padding:16px}.stat-label{color:var(--text-secondary);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase}.stat-value{color:var(--text-primary);font-size:1.05rem;font-weight:700}.profile-edit-card{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.profile-edit-header{background:var(--bg-panel);border-bottom:1px solid var(--border);padding:14px 20px}.profile-edit-header h4{color:var(--text-primary);font-size:.9rem;font-weight:700;margin:0}.profile-edit-body{display:flex;flex-direction:column;gap:16px;padding:20px}.profile-edit-field{display:flex;flex-direction:column;gap:6px}.profile-edit-field label{color:var(--text-secondary);font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.profile-edit-field input{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-size:.92rem;outline:none;padding:9px 12px;transition:border-color .15s ease}.profile-edit-field input:focus{border-color:var(--accent)}.profile-edit-error{color:var(--semantic-danger);font-size:.84rem;margin:0}.profile-edit-success{color:var(--semantic-success);font-size:.84rem;margin:0}.profile-edit-actions{display:flex;justify-content:flex-end}.profile-save-btn{background:var(--accent);border:1px solid var(--accent);border-radius:var(--radius);color:var(--accent-foreground);cursor:pointer;font-size:.88rem;font-weight:700;padding:9px 20px;transition:background .15s ease}.profile-save-btn:hover:not(:disabled){background:var(--accent-hover)}.profile-save-btn:disabled{cursor:not-allowed;opacity:.55}.profile-danger-zone{background:var(--bg-panel);border:1px solid #ef44444d;border-radius:var(--radius);overflow:hidden}.danger-zone-header{align-items:center;background:#ef44440f;border-bottom:1px solid #ef444433;display:flex;gap:8px;padding:14px 20px}.danger-zone-header .material-symbols-outlined{color:var(--semantic-danger);font-size:18px}.danger-zone-header h4{color:var(--semantic-danger);font-size:.9rem;font-weight:700;margin:0}.danger-zone-body{padding:20px}.danger-zone-item{align-items:center;display:flex;gap:24px;justify-content:space-between}.danger-zone-item strong{color:var(--text-primary);display:block;font-size:.9rem;margin-bottom:4px}.danger-zone-item p{color:var(--text-secondary);font-size:.82rem;line-height:1.5;margin:0}.danger-btn{background:#0000;border:1px solid #ef444480;border-radius:var(--radius);color:var(--semantic-danger);cursor:pointer;flex-shrink:0;font-size:.86rem;font-weight:700;padding:9px 16px;transition:background .15s ease,border-color .15s ease;white-space:nowrap}.danger-btn:hover{background:#ef44441f;border-color:#ef4444b3}.delete-modal-overlay{align-items:center;background:var(--semantic-overlay);display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.delete-modal{background:var(--bg-panel);border:1px solid #ef444466;border-radius:var(--radius);box-shadow:0 24px 60px #0009;overflow:hidden;width:min(480px,calc(100vw - 32px))}.delete-modal-header{align-items:center;background:var(--bg-panel);border-bottom:1px solid var(--border);display:flex;gap:10px;padding:18px 20px}.delete-modal-icon{color:var(--semantic-danger);font-size:22px}.delete-modal-header h3{color:var(--text-primary);font-size:1rem;font-weight:700;margin:0}.delete-modal-body{display:flex;flex-direction:column;gap:16px;padding:20px}.delete-modal-warning{color:var(--text-secondary);font-size:.88rem;line-height:1.6;margin:0}.delete-modal-warning strong{color:var(--semantic-danger)}.delete-modal-footer{background:var(--bg-panel);border-top:1px solid var(--border);display:flex;gap:10px;justify-content:flex-end;padding:16px 20px}.delete-modal-cancel{background:#0000;border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);cursor:pointer;font-size:.88rem;font-weight:600;padding:9px 18px;transition:background .15s ease}.delete-modal-cancel:hover:not(:disabled){background:var(--border-strong)}.delete-modal-cancel:disabled{cursor:not-allowed;opacity:.55}.delete-modal-confirm{background:#ef444424;border:1px solid #ef444499;border-radius:var(--radius);color:var(--semantic-danger);cursor:pointer;font-size:.88rem;font-weight:700;padding:9px 18px;transition:background .15s ease}.delete-modal-confirm:hover:not(:disabled){background:#ef44443d}.delete-modal-confirm:disabled{cursor:not-allowed;opacity:.45}.transactions-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:16px}.transactions-header h3{color:var(--text-primary);font-size:.96rem;font-weight:700;margin:0}.print-transactions-btn{align-items:center;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:.82rem;font-weight:600;gap:6px;padding:6px 12px;transition:color .15s ease,border-color .15s ease,background .15s ease}.print-transactions-btn:hover{background:var(--border-strong);border-color:var(--accent);color:var(--text-primary)}.print-transactions-btn .material-symbols-outlined{font-size:16px}.credits-overview-grid{grid-gap:24px;align-items:start;display:grid;gap:24px;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr)}.balance-card{padding:24px}.balance-amount{align-items:baseline;display:flex;gap:10px}.balance-amount .amount{color:var(--text-primary);font-size:clamp(2rem,5vw,2.8rem);font-weight:700;line-height:1}.balance-subtitle{color:var(--text-secondary);font-size:.88rem;margin-top:10px}.balance-error,.balance-loading,.no-transactions,.transactions-loading,.usage-error,.usage-loading{color:var(--text-secondary);padding:28px;text-align:center}.credits-actions{display:flex}.action-card{cursor:pointer;padding:20px;transition:border-color .15s ease-out,background .15s ease-out;transition:border-color var(--transition-fast,.15s ease-out),background var(--transition-fast,.15s ease-out);width:100%}.action-card:hover{background:var(--bg-hover);border-color:var(--accent)}.action-header{margin-bottom:18px}.action-title{color:var(--text-primary);display:block;font-size:.98rem;font-weight:700;margin-bottom:8px}.action-description{color:var(--text-secondary);font-size:.86rem;line-height:1.5;margin:0}.add-credits-btn{background:var(--accent);border:1px solid var(--accent);border-radius:var(--radius);color:var(--accent-foreground);cursor:pointer;font-size:.92rem;font-weight:700;padding:12px 14px;transition:background .15s ease-out;transition:background var(--transition-fast,.15s ease-out);width:100%}.add-credits-btn:hover{background:var(--accent-hover)}.view-usage-link{align-items:center;background:none;border:none;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:.84rem;justify-content:center;margin-top:10px;padding:10px 16px 0;width:100%}.view-usage-link:hover{color:var(--text-primary)}.transactions-section,.usage-breakdown{padding:20px}.usage-breakdown h3,.usage-summary-card h3{color:var(--text-primary);font-size:.96rem;font-weight:700;margin:0 0 16px}.table-card{border-top:1px solid var(--border)}.table-scroll{overflow-x:auto}.transactions-table,.usage-table{border-collapse:collapse;width:100%}.transactions-table td,.transactions-table th,.usage-table td,.usage-table th{border-bottom:1px solid var(--semantic-border);padding:12px 8px;text-align:left}.transactions-table th,.usage-table th{color:var(--text-secondary);font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.transactions-table td,.usage-table td{color:var(--text-primary);font-size:.94rem}.tx-type{text-transform:capitalize}.tx-amount.positive{color:var(--semantic-success);font-weight:700}.tx-amount.negative{color:var(--semantic-danger);font-weight:700}.usage-summary-card{padding:20px}.usage-stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}.usage-stat{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:16px;text-align:center}.usage-stat .stat-value{display:block;font-size:1.65rem;line-height:1.1}.usage-stat .stat-label{display:block;margin-top:8px}.usage-table .model-name{font-family:monospace;font-family:var(--font-mono,monospace);font-size:.88rem}@media (max-width:960px){.profile-page-header{align-items:flex-start;flex-direction:column}.profile-balance-hero{width:100%}.credits-overview-grid,.profile-overview-layout{grid-template-columns:1fr}}@media (max-width:720px){.user-profile-page{padding:12px 12px 20px}.profile-page-shell{border-radius:var(--radius)}.profile-page-header{padding:16px}.profile-page-tabs{padding:0 8px}.profile-page-content{padding:16px}.profile-page-tab{min-width:200px;padding:12px 14px 10px}.profile-info-card{align-items:flex-start;flex-direction:column}.profile-stats,.usage-stats-grid{grid-template-columns:1fr}.action-card,.balance-card,.transactions-section,.usage-breakdown,.usage-summary-card{padding:18px}.transactions-table,.usage-table{min-width:560px}}.profile-avatar-clickable{cursor:pointer;overflow:hidden;position:relative}.profile-avatar-clickable:hover .avatar-edit-hint{opacity:1}.avatar-edit-hint{align-items:center;background:#00000080;color:var(--text-primary);display:flex;font-size:20px;inset:0;justify-content:center;opacity:0;position:absolute;transition:opacity .15s ease}.profile-avatar-img{border-radius:var(--radius);height:100%;object-fit:cover;width:100%}.avatar-uploading-overlay{align-items:center;background:#0009;color:var(--text-primary);display:flex;font-size:.7rem;inset:0;justify-content:center;position:absolute}.twofa-status-row{align-items:center;display:flex;gap:12px;margin-bottom:12px}.twofa-enabled-badge{align-items:center;background:var(--accent-tint);border:1px solid var(--accent-tint);border-radius:var(--radius-pill);color:var(--semantic-success);display:inline-flex;font-size:.78rem;font-weight:700;letter-spacing:.06em;padding:5px 12px;text-transform:uppercase}.twofa-setup{display:flex;flex-direction:column;gap:12px}.twofa-instruction{color:var(--text-secondary);font-size:.88rem;line-height:1.5;margin:0}.twofa-qr-image{background:var(--text-primary);border:2px solid var(--border);border-radius:var(--radius);height:180px;width:180px}.twofa-secret-label{color:var(--text-secondary);font-size:.82rem;margin:0}.twofa-secret{background:var(--bg-base);border:1px solid var(--border);border-radius:3px;color:var(--text-primary);font-family:monospace;font-size:.88rem;padding:2px 6px;word-break:break-all}.twofa-disable-form{display:flex;flex-direction:column;gap:12px}.profile-toggle-switch{display:inline-block;flex-shrink:0;height:24px;margin-top:2px;position:relative;width:44px}.profile-toggle-switch input{height:0;opacity:0;width:0}.toggle-slider{background:var(--border);border-radius:24px;cursor:pointer;inset:0;position:absolute;transition:background .2s ease}.toggle-slider:before{background:var(--text-primary);border-radius:50%;bottom:3px;content:"";height:18px;left:3px;position:absolute;transition:transform .2s ease;width:18px}.profile-toggle-switch input:checked+.toggle-slider{background:var(--accent)}.profile-toggle-switch input:checked+.toggle-slider:before{transform:translateX(20px)}.auto-topup-card{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px;padding:20px}.auto-topup-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.auto-topup-header h3{color:var(--text-primary);font-size:1rem;margin:0}.auto-topup-desc{color:var(--text-secondary);font-size:.85rem;line-height:1.4;margin:0 0 14px}.auto-topup-fields{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-bottom:12px}.profile-login-history{border-top:1px solid var(--border);padding:14px 16px}.login-history-title{color:var(--semantic-text-secondary);font-size:.86rem;font-weight:700;letter-spacing:.06em;margin:0 0 12px;text-transform:uppercase}.login-history-empty,.login-history-loading{color:var(--text-secondary);font-size:.82rem;margin:0}.login-history-list{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;padding:0}.login-history-item{align-items:flex-start;display:flex;gap:8px}.login-history-icon{color:var(--text-secondary);flex-shrink:0;font-size:16px;margin-top:1px}.login-history-info{display:flex;flex-direction:column;gap:2px;min-width:0}.login-history-browser{color:var(--text-primary);font-size:.82rem;font-weight:600}.login-history-detail{color:var(--text-muted);font-size:.76rem;word-break:break-all}.transactions-header-actions{align-items:center;display:flex;gap:8px}.profile-danger-btn-sm{background:#0000;border:1px solid #ef444480;border-radius:var(--radius);color:var(--semantic-danger);cursor:pointer;font-size:.82rem;font-weight:600;padding:8px 14px;transition:background .15s ease,border-color .15s ease;white-space:nowrap}.profile-danger-btn-sm:hover{background:#ef44441a;border-color:#ef4444b3}.profile-danger-btn-sm:disabled{cursor:not-allowed;opacity:.5}.profile-cancel-btn{background:#0000;border:1px solid var(--border);border-radius:var(--radius);color:var(--text-secondary);cursor:pointer;font-size:.82rem;font-weight:600;padding:8px 14px;transition:background .15s ease,color .15s ease}.profile-cancel-btn:hover{background:var(--border-strong);color:var(--text-primary)}.appearance-section{display:flex;flex-direction:column;gap:32px;padding:24px}.appearance-group h3{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0 0 4px}.appearance-description{color:var(--text-secondary);font-size:.88rem;margin:0 0 16px}.appearance-section .color-presets{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.appearance-section .color-preset{align-items:center;border:2px solid #0000;border-radius:var(--radius);cursor:pointer;display:flex;height:32px;justify-content:center;transition:border-color .15s ease,transform .1s ease;width:32px}.appearance-section .color-preset:hover{border-color:#fff6;transform:scale(1.1)}.appearance-section .color-preset.selected{border-color:var(--accent-primary,var(--accent))}.appearance-section .color-preset .check-icon{color:var(--text-primary);font-size:16px;text-shadow:0 0 4px #000c}.appearance-section .custom-color-row{align-items:center;color:var(--text-secondary);display:flex;font-size:.88rem;gap:10px;margin-bottom:12px}.appearance-section .custom-color-input{align-items:center;display:flex;gap:8px}.appearance-section .custom-color-input input[type=color]{background:#0000;border:none;border-radius:var(--radius);cursor:pointer;height:32px;padding:2px;width:32px}.appearance-section .custom-color-input input[type=text]{background:var(--bg-base);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-family:monospace;font-size:.88rem;padding:6px 8px;width:90px}.appearance-section .color-preview{align-items:center;color:var(--text-secondary);display:flex;font-size:.88rem;gap:12px}.appearance-section .preview-box{align-items:center;border:1px solid #ffffff14;border-radius:var(--radius);display:flex;height:80px;justify-content:center;width:160px}.appearance-section .preview-node{border-radius:var(--radius);color:#e2e8f0;font-size:.78rem;padding:4px 10px}.appearance-section .entity-row-colors{display:flex;flex-direction:column;gap:10px;margin-bottom:12px}.appearance-section .row-color-setting{align-items:center;color:var(--text-secondary);display:flex;font-size:.88rem;gap:12px}.appearance-section .row-color-setting label{width:70px}.appearance-section .entity-rows-preview{border:1px solid #ffffff14;border-radius:var(--radius);min-width:120px;overflow:hidden}.appearance-section .preview-row{color:#333;font-size:.8rem;padding:6px 12px}.appearance-footer{border-top:1px solid var(--border);padding-top:8px}.appearance-save-btn{background:var(--accent);background:var(--accent-primary,var(--accent));border:none;border-radius:var(--radius);color:var(--bg-base);cursor:pointer;font-size:.92rem;font-weight:600;padding:9px 22px;transition:background .15s ease,transform .1s ease}.appearance-save-btn:hover:not(:disabled){background:var(--accent-hover);background:var(--accent-primary-hover,var(--accent-hover));transform:translateY(-1px)}.appearance-save-btn:disabled{cursor:default;opacity:.5}.twofa-recovery-hint{color:var(--text-secondary);font-size:.82rem;line-height:1.5;margin:0 0 12px}.account-settings-workspace{color:var(--semantic-text-primary)}.account-settings-workspace .profile-page-shell{max-width:76rem}.account-settings-workspace .profile-page-tabs{gap:.35rem}.account-settings-workspace .profile-page-tab{border-radius:.35rem}.account-settings-workspace .profile-section{max-width:54rem}.account-settings-workspace .profile-edit-card,.account-settings-workspace .profile-info-card{border-color:var(--semantic-border);box-shadow:none}.account-settings-workspace .profile-save-btn{background:var(--action-primary);color:var(--semantic-text-on-action)}@media (max-width:700px){.account-settings-workspace .profile-page-tabs{overflow-x:auto}.account-settings-workspace .profile-page-tab{flex:0 0 auto}}.project-settings{color:#eee;color:var(--text-primary,#eee);margin:0 auto;max-width:1180px;padding:32px 28px 64px}.settings-heading{border-bottom:1px solid #ffffff24;border-bottom:1px solid var(--border,#ffffff24);padding-bottom:22px}.settings-heading h1{font-size:1.8rem;margin:4px 0 6px}.settings-heading p,.settings-intro{color:#aaa;color:var(--text-secondary,#aaa);margin:0 0 22px}.settings-eyebrow,.settings-nav .active{color:#d4a72c;color:var(--accent-primary,#d4a72c)}.settings-eyebrow{font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.settings-layout{grid-gap:42px;display:grid;gap:42px;grid-template-columns:210px minmax(0,760px);padding-top:28px}.settings-nav{grid-gap:3px;align-content:start;display:grid;gap:3px}.settings-nav button{background:#0000;border:0;border-left:2px solid #0000;color:#aaa;color:var(--text-secondary,#aaa);cursor:pointer;font:inherit;padding:10px 12px;text-align:left}.settings-nav button:focus-visible,.settings-nav button:hover{background:#ffffff0d;color:#fff;color:var(--text-primary,#fff)}.settings-nav button.active{border-left-color:#d4a72c;border-left-color:var(--accent-primary,#d4a72c);font-weight:700}.settings-content h2{font-size:1.25rem;margin:0 0 8px}.settings-content label{grid-gap:7px;display:grid;font-weight:600;gap:7px;margin:18px 0}.settings-content input,.settings-content textarea{background:#0000002e;background:var(--surface-input,#0000002e);border:1px solid #fff3;border:1px solid var(--border,#fff3);border-radius:6px;box-sizing:border-box;color:inherit;font:inherit;padding:10px;width:100%}.settings-content button:focus-visible,.settings-content input:focus-visible,.settings-content textarea:focus-visible,.settings-nav button:focus-visible{outline:2px solid #d4a72c;outline:2px solid var(--accent-primary,#d4a72c);outline-offset:2px}.settings-content details{border-bottom:1px solid #ffffff24;border-bottom:1px solid var(--border,#ffffff24);border-top:1px solid #ffffff24;border-top:1px solid var(--border,#ffffff24);padding:14px 0}.settings-content summary{cursor:pointer;font-weight:600}.settings-inline-fields{grid-gap:18px;display:grid;gap:18px;grid-template-columns:1fr 1fr}.settings-readonly{color:#aaa;color:var(--text-secondary,#aaa);font-size:.9rem}.settings-primary{background:#d4a72c;background:var(--accent-primary,#d4a72c);border:0;border-radius:6px;color:#161616;cursor:pointer;display:inline-block;font:inherit;font-weight:700;padding:10px 16px;text-decoration:none}.settings-primary:disabled{cursor:not-allowed;opacity:.55}.settings-link{margin-top:4px}.settings-check{align-items:center;display:flex!important;gap:10px!important;grid-template-columns:auto 1fr}.settings-check input{width:auto}.settings-divider{border-top:1px solid #ffffff24;border-top:1px solid var(--border,#ffffff24);margin:34px 0 28px}.settings-alert,.settings-placeholder{border:1px solid #ffffff29;border:1px solid var(--border,#ffffff29);border-radius:8px;color:#aaa;color:var(--text-secondary,#aaa);padding:16px}.settings-alert{align-items:center;display:flex;gap:14px}.settings-alert button{margin-left:auto}.settings-facts{grid-gap:0;border-top:1px solid #ffffff24;border-top:1px solid var(--border,#ffffff24);display:grid;gap:0}.settings-facts div{border-bottom:1px solid #ffffff24;border-bottom:1px solid var(--border,#ffffff24);display:flex;justify-content:space-between;padding:12px 0}.settings-facts dt{color:#aaa;color:var(--text-secondary,#aaa)}.settings-facts dd{margin:0}.settings-danger{border:1px solid #a44;border-radius:8px;margin-top:34px;padding:18px}.settings-danger h3{margin:0 0 7px}.settings-danger p{color:#aaa;color:var(--text-secondary,#aaa)}.settings-danger-button{background:#0000;border:1px solid #d66;border-radius:6px;color:#f5b0b0;cursor:pointer;font:inherit;padding:9px 14px}.settings-skeleton{background:linear-gradient(90deg,#ffffff0a,#ffffff1a,#ffffff0a);border-radius:8px;height:240px;margin-top:28px}@media (max-width:700px){.project-settings{padding:22px 16px 48px}.settings-layout{display:block;padding-top:18px}.settings-nav{border-bottom:1px solid #ffffff24;border-bottom:1px solid var(--border,#ffffff24);display:flex;margin-bottom:28px;overflow-x:auto}.settings-nav button{border-bottom:2px solid #0000;border-left:0;white-space:nowrap}.settings-nav button.active{border-bottom-color:#d4a72c;border-bottom-color:var(--accent-primary,#d4a72c)}.settings-inline-fields{gap:0;grid-template-columns:1fr}}.settings-live-tools{margin-top:28px}.settings-live-tools h3{margin:0 0 7px}.project-settings-redesign{color:var(--semantic-text-primary)}.project-settings-redesign .settings-layout{gap:1.25rem}.project-settings-redesign .settings-nav{background:var(--surface-passive);border-color:var(--semantic-border)}.project-settings-redesign .settings-nav button.active{background:var(--action-primary);color:var(--semantic-text-on-action)}.project-settings-redesign .settings-content{max-width:54rem}.project-settings-redesign .settings-primary{background:var(--action-primary);color:var(--semantic-text-on-action)}.settings-section-picker{display:none}@media (max-width:700px){.project-settings-redesign .settings-layout{display:block}.project-settings-redesign .settings-section-picker{grid-gap:.4rem;display:grid;font-weight:600;gap:.4rem;margin-bottom:1rem}.project-settings-redesign .settings-section-picker select{padding:.6rem;width:100%}}.onboarding-overlay{align-items:center;animation:onboarding-fade-in .25s ease-out;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#000000b8;display:flex;inset:0;justify-content:center;position:fixed;z-index:2000}@keyframes onboarding-fade-in{0%{opacity:0}to{opacity:1}}.onboarding-modal{animation:onboarding-slide-up .3s cubic-bezier(.16,1,.3,1);background:var(--bg-panel);background:var(--card-background,var(--bg-panel));border:1px solid var(--border,var(--border));border-radius:var(--radius);box-shadow:0 24px 64px #0009;display:flex;flex-direction:column;max-height:calc(100vh - 48px);max-width:calc(100vw - 32px);overflow:hidden;width:540px}.onboarding-modal--with-screenshot{width:720px}@keyframes onboarding-slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.onboarding-header{align-items:center;background:var(--surface-panel);border-bottom:1px solid var(--border,var(--border));display:flex;flex-shrink:0;justify-content:space-between;padding:16px 20px 12px}.onboarding-scroll-area{flex:1 1 auto;min-height:0;overflow-y:auto}.onboarding-step-label{font-size:.78rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.onboarding-skip-btn,.onboarding-step-label{color:var(--text-secondary);color:var(--text-secondary,var(--text-secondary))}.onboarding-skip-btn{background:#0000;border:none;border-radius:var(--radius);cursor:pointer;font-size:.85rem;padding:4px 8px;transition:color .15s ease,background .15s ease}.onboarding-skip-btn:hover{background:var(--surface-hover);color:var(--text-primary);color:var(--text-primary,var(--text-primary))}.onboarding-screenshot-wrap{align-items:center;background:#111820;border-bottom:1px solid var(--border,var(--border));display:flex;height:320px;justify-content:center;overflow:hidden;width:100%}.onboarding-screenshot{display:block;height:100%;object-fit:cover;object-position:top left;transition:opacity .2s ease;width:100%}.onboarding-body{align-items:center;display:flex;flex-direction:column;gap:12px;padding:24px 28px 16px;text-align:center}.onboarding-modal:not(.onboarding-modal--with-screenshot) .onboarding-body{padding-top:32px}.onboarding-icon{align-items:center;background:var(--accent-tint);border:1px solid var(--accent-tint);border-radius:50%;display:flex;height:68px;justify-content:center;margin-bottom:4px;width:68px}.onboarding-icon .material-symbols-outlined{color:var(--accent);color:var(--accent-primary,var(--accent));font-size:34px}.onboarding-title{color:var(--text-primary);color:var(--text-primary,var(--text-primary));font-size:1.35rem;font-weight:700;line-height:1.3;margin:0}.onboarding-description{color:var(--text-secondary);color:var(--text-secondary,var(--text-secondary));font-size:.97rem;line-height:1.65;margin:0;max-width:440px}.onboarding-tip{align-items:flex-start;background:var(--accent-tint);border:1px solid var(--accent-tint);border-radius:var(--radius);color:var(--semantic-text-primary);display:flex;font-size:.85rem;gap:8px;line-height:1.5;margin-top:4px;padding:10px 14px;text-align:left}.onboarding-tip-icon{color:var(--accent);color:var(--accent-primary,var(--accent));flex-shrink:0;font-size:17px;margin-top:1px}.onboarding-dots{align-items:center;display:flex;flex-shrink:0;gap:8px;justify-content:center;padding:4px 0 16px}.onboarding-dot{background:var(--border);background:var(--border,var(--border));border:none;border-radius:50%;cursor:pointer;height:8px;padding:0;transition:background .2s ease,transform .15s ease,width .2s ease;width:8px}.onboarding-dot.visited{background:var(--accent-tint)}.onboarding-dot.active{background:var(--accent);background:var(--accent-primary,var(--accent));border-radius:var(--radius);width:22px}.onboarding-dot:hover:not(.active){background:var(--text-secondary);background:var(--text-secondary,var(--text-secondary));transform:scale(1.2)}.onboarding-footer{align-items:center;background:var(--surface-panel);border-top:1px solid var(--border,var(--border));display:flex;flex-shrink:0;justify-content:space-between;padding:16px 24px}.onboarding-btn{border:none;border-radius:var(--radius);cursor:pointer;font-size:.92rem;font-weight:600;padding:9px 22px;transition:background .15s ease,transform .1s ease,opacity .15s ease}.onboarding-btn:disabled{cursor:default;opacity:.35;transform:none!important}.onboarding-btn-secondary{background:#0000;border:1px solid var(--border,var(--border));color:var(--text-secondary);color:var(--text-secondary,var(--text-secondary))}.onboarding-btn-secondary:hover:not(:disabled){background:var(--surface-interactive-hover);color:var(--text-primary);color:var(--text-primary,var(--text-primary))}.onboarding-btn-primary{background:var(--accent);background:var(--accent-primary,var(--accent));color:var(--bg-base)}.onboarding-btn-primary:hover{background:var(--accent-hover);background:var(--accent-primary-hover,var(--accent-hover));box-shadow:0 4px 14px var(--accent-tint);transform:translateY(-1px)}@media (max-width:760px){.onboarding-modal--with-screenshot{width:calc(100vw - 32px)}.onboarding-screenshot-wrap{height:200px}}@media (max-width:580px){.onboarding-modal{border-radius:var(--radius)}.onboarding-body{padding:20px 16px 14px}.onboarding-title{font-size:1.15rem}.onboarding-screenshot-wrap{height:160px}}@media (max-height:820px){.onboarding-screenshot-wrap{height:220px}}:root{--bg-base:#15151e;--bg-panel:#1a1a25;--bg-elevated:#1e1e2a;--bg-hover:#24242f;--surface-1:hsla(0,0%,100%,.035);--surface-2:#ffffff0f;--surface-hover:#ffffff17;--border-strong:#ffffff24;--text-muted:#6a6a70;--accent:#c9a76a;--accent-hover:#d8b87f;--accent-dark:#b8965c;--accent-foreground:#171511;--accent-tint:#c9a76a1a;--status-success:#7fa884;--status-progress:#c9a76a;--status-neutral:#8b8b91;--status-destructive:#c98b8b;--product-accent:#00c2ff;--surface-canvas:var(--bg-base);--surface-base:var(--bg-base);--surface-panel:var(--bg-panel);--surface-raised:var(--bg-elevated);--surface-passive:var(--surface-1);--surface-interactive:var(--surface-1);--surface-interactive-hover:var(--surface-hover);--surface-read-only:var(--bg-panel);--surface-disabled:var(--surface-1);--semantic-border:#ffffff14;--semantic-border-strong:var(--border-strong);--semantic-focus:var(--accent);--semantic-text-primary:#e8e8ea;--semantic-text-secondary:#a0a0a6;--semantic-text-muted:var(--text-muted);--semantic-text-on-action:var(--accent-foreground);--semantic-text-disabled:var(--text-muted);--action-primary:var(--accent);--action-primary-hover:var(--accent-hover);--action-primary-pressed:var(--accent-dark);--selection-surface:var(--accent-tint);--selection-border:var(--accent);--semantic-success:var(--status-success);--semantic-warning:#d49a4b;--semantic-danger:var(--status-destructive);--semantic-shadow-low:var(--shadow-sm);--semantic-shadow:var(--shadow-lg);--semantic-overlay:#00000073;--label-size:10px;--content-size-sm:11px;--content-size:12px;--title-size:16px;--tracking-label:0.13em;--leading-dense:1.4;--radius-pill:999px;--background:var(--surface-base);--color-background:var(--surface-base);--sidebar-background:var(--surface-panel);--card-background:var(--surface-raised);--card-background-hover:var(--surface-interactive-hover);--color-surface:var(--surface-raised);--text-primary:var(--semantic-text-primary);--color-text-primary:var(--semantic-text-primary);--text-secondary:var(--semantic-text-secondary);--color-text-secondary:var(--semantic-text-secondary);--text-tertiary:var(--semantic-text-muted);--color-text-muted:var(--semantic-text-muted);--accent-primary:var(--action-primary);--accent-primary-hover:var(--action-primary-hover);--accent-primary-foreground:var(--semantic-text-on-action);--color-accent:var(--accent);--color-accent-dark:var(--accent-dark);--color-accent-light:var(--accent-hover);--color-primary:var(--accent);--color-primary-dark:var(--accent-dark);--color-primary-light:var(--accent-hover);--color-secondary:var(--bg-elevated);--color-secondary-dark:var(--bg-panel);--color-secondary-light:var(--bg-hover);--success:var(--semantic-success);--success-foreground:var(--bg-base);--color-success:var(--status-success);--color-success-light:#97c09a;--destructive:var(--semantic-danger);--destructive-foreground:var(--bg-base);--color-error:var(--status-destructive);--color-error-light:#d9a3a3;--warning:var(--semantic-warning);--warning-foreground:var(--bg-base);--color-warning:var(--semantic-warning);--color-warning-light:#e0b06a;--border:var(--semantic-border);--border-subtle:#ffffff0d;--color-border:var(--semantic-border);--color-border-dark:var(--semantic-border-strong);--ring:var(--semantic-focus);--focus-color:var(--semantic-focus);--focus-width:2px;--focus-style:solid;--focus-offset:2px;--chart-primary:#8b8b91;--chart-secondary:#6a6a70;--chart-tertiary:var(--accent);--toggle-background:var(--bg-elevated);--toggle-foreground:var(--text-primary);--font-primary:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-heading:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-sans:"Inter",ui-sans-serif,system-ui,sans-serif;--font-serif:Georgia,serif;--font-mono:"Fira Code",Menlo,Monaco,Consolas,monospace;--spacing-unit:8px;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-2xl:48px;--spacing-3xl:64px;--radius:8px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:9999px;--border-radius:8px;--spacing:0.25rem;--shadow-color:#0000004d;--shadow-sm:0 1px 2px 0 #00000040;--shadow-md:0 4px 6px -1px #0000004d,0 2px 4px -2px #0003;--shadow-lg:0 10px 15px -3px #0000004d,0 4px 6px -4px #0003;--shadow-xl:0 20px 25px -5px #0006,0 10px 10px -5px #0000004d;--transition-fast:0.15s ease-out;--transition-normal:0.3s ease-out;--transition-slow:0.5s ease-out;--transition:all 0.3s ease-out;--app-bg:var(--surface-canvas);--bg-primary:var(--surface-base);--bg-secondary:var(--surface-panel);--bg-tertiary:var(--surface-raised);--bg-card:var(--surface-raised);--bg-panel-alt:var(--surface-passive);--bg-input:var(--surface-interactive);--bg-inset:var(--surface-read-only);--panel-bg:var(--surface-panel);--surface:var(--surface-raised);--surface-0:var(--surface-base);--surface-3:var(--surface-raised);--surface-subtle:var(--surface-passive);--surface-inset:var(--surface-read-only);--surface-input:var(--surface-interactive);--surface-editable:var(--surface-interactive);--field-bg:var(--surface-interactive);--input-bg:var(--surface-interactive);--code-bg:var(--surface-read-only);--button-bg:var(--surface-interactive);--button-hover-bg:var(--surface-interactive-hover);--border-subtle:var(--semantic-border);--border-color:var(--semantic-border);--border-light:var(--semantic-border);--border-primary:var(--semantic-border-strong);--border-secondary:var(--semantic-border);--field-border:var(--semantic-border-strong);--semantic-border-subtle:var(--semantic-border);--semantic-border-default:var(--semantic-border-strong);--text:var(--semantic-text-primary);--text-color:var(--semantic-text-primary);--color-text:var(--semantic-text-primary);--text-light:var(--semantic-text-secondary);--color-muted:var(--semantic-text-muted);--foreground:var(--semantic-text-primary);--white:var(--semantic-text-primary);--primary-cream:var(--semantic-text-primary);--secondary-charcoal:var(--surface-panel);--accent-color:var(--action-primary);--accent-gold:var(--action-primary);--accent-mustard:var(--action-primary);--accent-fg:var(--semantic-text-on-action);--primary-color:var(--action-primary);--primary-color-dark:var(--action-primary-pressed);--semantic-accent-primary:var(--action-primary);--semantic-text-on-accent:var(--semantic-text-on-action);--semantic-surface-interactive:var(--surface-interactive);--semantic-surface-inset:var(--surface-read-only);--semantic-link:var(--action-primary);--semantic-status-success:var(--semantic-success);--semantic-status-warning:var(--semantic-warning);--semantic-status-danger:var(--semantic-danger);--danger:var(--semantic-danger);--danger-color:var(--semantic-danger);--error-color:var(--semantic-danger);--color-danger:var(--semantic-danger)}:root[data-theme=light]{--bg-base:#f4efe4;--bg-panel:#ebe4d7;--bg-elevated:#dfd6c7;--bg-hover:#d4c8b6;--surface-1:rgba(55,43,28,.045);--surface-2:rgba(55,43,28,.075);--surface-hover:#372b1c1c;--border-strong:#32281c38;--text-muted:#81786b;--semantic-text-primary:#29251f;--semantic-text-secondary:#655e54;--semantic-border:#32281c24;--accent:#7a5418;--accent-hover:#6b4915;--accent-dark:#80581c;--accent-foreground:#fffaf0;--accent-tint:#7a54181f;--status-success:#557b5b;--status-neutral:#746d63;--status-destructive:#a25454;--semantic-warning:#8a5a12;--product-accent:#005f82;--semantic-overlay:#201b1561;--shadow-color:#2f261b2e}:root[data-theme=dark]{--bg-base:#171717;--bg-panel:#202020;--bg-elevated:#292929;--bg-hover:#343434;--surface-1:hsla(0,0%,100%,.035);--surface-2:#ffffff0f;--surface-hover:#ffffff17;--semantic-text-primary:#ededed;--semantic-text-secondary:#aaa7a2;--text-muted:#76736f;--accent:#c7a363;--accent-hover:#d4b374;--accent-dark:#a8874e;--accent-tint:#c7a3631a}:root[data-theme=midnight-blue]{--bg-base:#0c1628;--bg-panel:#111e34;--bg-elevated:#172743;--bg-hover:#213555;--surface-1:rgba(161,190,229,.045);--surface-2:rgba(161,190,229,.075);--surface-hover:#a1bee51f;--border-strong:#aec5e433;--semantic-border:#aec5e41f;--semantic-text-primary:#edf2fb;--semantic-text-secondary:#aabbd2;--text-muted:#7186a2;--accent:#d1ad62;--accent-hover:#dfbd75;--accent-dark:#b3904d;--accent-foreground:#111827;--accent-tint:#d1ad621c;--semantic-overlay:#0309148f}:root[data-theme=light] .login-brand-logo,:root[data-theme=light] .project-header-logo{filter:invert(.85)}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#15151e;background-color:var(--color-background);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--font-primary);font-size:13px;line-height:1.5}body,h1,h2,h3,h4,h5,h6{color:#e8e8ea;color:var(--color-text-primary)}h1,h2,h3,h4,h5,h6{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--font-heading);font-weight:600;line-height:1.3;margin-bottom:16px;margin-bottom:var(--spacing-md)}h1{font-size:2.5rem;font-weight:700}h2{font-size:2rem}h2,h3{font-weight:600}h3{font-size:1.5rem}h4{font-size:1.25rem}h4,h5{font-weight:500}h5{font-size:1.125rem}h6{font-size:1rem;font-weight:500}p{color:#a0a0a6;color:var(--color-text-secondary);margin-bottom:16px;margin-bottom:var(--spacing-md)}a{color:#c9a76a;color:var(--color-accent);text-decoration:none;transition:color .15s ease-out;transition:color var(--transition-fast)}a:hover{color:#d8b87f;color:var(--color-accent-light)}button{border:none;cursor:pointer}button,input,select,textarea{font-family:inherit;outline:none;transition:all .15s ease-out;transition:all var(--transition-fast)}input,select,textarea{background-color:hsla(0,0%,100%,.035);background-color:var(--surface-1);border:1px solid #ffffff14;border:1px solid var(--color-border);border-radius:6px;border-radius:var(--radius-sm);color:#e8e8ea;color:var(--color-text-primary);font-size:16px;padding:8px 16px;padding:var(--spacing-sm) var(--spacing-md)}input:focus,select:focus,textarea:focus{border-color:#c9a76a;border-color:var(--color-accent);box-shadow:0 0 0 3px #c9a76a1a;box-shadow:0 0 0 3px var(--accent-tint)}input::placeholder,textarea::placeholder{color:#6a6a70;color:var(--color-text-muted)}.container{margin:0 auto;max-width:1200px}.container,.navbar{padding:0 24px;padding:0 var(--spacing-lg)}.navbar{align-items:center;background-color:#1a1a25;background-color:var(--sidebar-background);border-bottom:1px solid #ffffff14;border-bottom:1px solid var(--color-border);box-shadow:0 4px 6px -1px #0000004d,0 2px 4px -2px #0003;box-shadow:var(--shadow-md);display:flex;height:60px;justify-content:space-between}.navbar,.navbar a{color:#e8e8ea;color:var(--color-text-primary)}.navbar a:hover{color:#c9a76a;color:var(--color-accent)}.grid-container{grid-gap:24px;grid-gap:var(--spacing-lg);display:grid;gap:24px;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin:24px 0;margin:var(--spacing-lg) 0}.grid-item{background-color:#1e1e2a;background-color:var(--color-surface);border:1px solid #ffffff14;border:1px solid var(--color-border);border-radius:8px;border-radius:var(--border-radius);padding:24px;padding:var(--spacing-lg);transition:all .3s ease-out;transition:all var(--transition-normal)}.grid-item:hover{background-color:#ffffff17;background-color:var(--card-background-hover);border-color:#ffffff24;border-color:var(--border-strong)}.card{background-color:#1e1e2a;background-color:var(--color-surface);border:1px solid #ffffff14;border:1px solid var(--color-border);border-radius:8px;border-radius:var(--border-radius);box-shadow:0 1px 2px 0 #00000040;box-shadow:var(--shadow-sm);padding:24px;padding:var(--spacing-lg);transition:all .3s ease-out;transition:all var(--transition-normal)}.card:hover{border-color:#ffffff24;border-color:var(--border-strong)}.card-header{border-bottom:1px solid #ffffff14;border-bottom:1px solid var(--color-border);margin-bottom:16px;margin-bottom:var(--spacing-md);padding-bottom:16px;padding-bottom:var(--spacing-md)}.card-body{padding:16px;padding:var(--spacing-md)}.card-footer{border-top:1px solid #ffffff14;border-top:1px solid var(--color-border);margin-top:16px;margin-top:var(--spacing-md);padding-top:16px;padding-top:var(--spacing-md)}.btn{align-items:center;border:none;border-radius:6px;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;font-size:1rem;font-weight:500;gap:8px;gap:var(--spacing-sm);justify-content:center;min-height:40px;padding:8px 24px;padding:var(--spacing-sm) var(--spacing-lg);text-decoration:none;transition:all .15s ease-out;transition:all var(--transition-fast)}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background-color:#c9a76a;background-color:var(--color-accent);color:#171511;color:var(--accent-primary-foreground)}.btn-primary:hover:not(:disabled){background-color:#d8b87f;background-color:var(--color-accent-light);box-shadow:0 1px 2px 0 #00000040;box-shadow:var(--shadow-sm)}.btn-secondary{background-color:#1e1e2a;background-color:var(--color-secondary);color:#e8e8ea;color:var(--color-text-primary)}.btn-secondary:hover:not(:disabled){background-color:#24242f;background-color:var(--color-secondary-light);box-shadow:0 1px 2px 0 #00000040;box-shadow:var(--shadow-sm)}.btn-accent{background-color:#c9a76a;background-color:var(--color-accent);color:#171511;color:var(--accent-primary-foreground)}.btn-accent:hover:not(:disabled){background-color:#b8965c;background-color:var(--color-accent-dark);box-shadow:0 1px 2px 0 #00000040;box-shadow:var(--shadow-sm)}.btn-outline{background-color:initial;border:2px solid #c9a76a;border:2px solid var(--color-accent);color:#c9a76a;color:var(--color-accent)}.btn-outline:hover:not(:disabled){background-color:#c9a76a;background-color:var(--color-accent);box-shadow:0 1px 2px 0 #00000040;box-shadow:var(--shadow-sm);color:#171511;color:var(--accent-primary-foreground)}.btn-ghost{background-color:initial;color:#e8e8ea;color:var(--color-text-primary)}.btn-ghost:hover:not(:disabled){background-color:#24242f;background-color:var(--bg-hover)}.btn-lg{font-size:1.125rem;min-height:48px;padding:16px 32px;padding:var(--spacing-md) var(--spacing-xl)}.btn-sm{font-size:.875rem;min-height:32px;padding:4px 16px;padding:var(--spacing-xs) var(--spacing-md)}.badge{align-items:center;border-radius:999px;border-radius:var(--radius-pill);display:inline-flex;font-size:.75rem;font-weight:600;letter-spacing:.02em;padding:4px 8px;padding:var(--spacing-xs) var(--spacing-sm)}.badge-primary{background-color:#c9a76a;background-color:var(--color-accent);color:#171511;color:var(--accent-primary-foreground)}.badge-secondary{background-color:#1e1e2a;background-color:var(--color-secondary);color:#e8e8ea;color:var(--color-text-primary)}.badge-success{background-color:#7fa884;background-color:var(--color-success);color:#15151e;color:var(--success-foreground)}.badge-warning{background-color:#d49a4b;background-color:var(--color-warning);color:#15151e;color:var(--warning-foreground)}.badge-error{background-color:#c98b8b;background-color:var(--color-error);color:#15151e;color:var(--destructive-foreground)}.alert{border:1px solid;border-radius:8px;border-radius:var(--border-radius);margin-bottom:16px;margin-bottom:var(--spacing-md);padding:16px;padding:var(--spacing-md)}.alert-info{background-color:#c9a76a1a;background-color:var(--accent-tint);border-color:#c9a76a;border-color:var(--color-accent);color:#d8b87f;color:var(--color-accent-light)}.alert-success{background-color:#22c55e26;border-color:#7fa884;border-color:var(--color-success);color:#97c09a;color:var(--color-success-light)}.alert-warning{background-color:#f59e0b26;border-color:#d49a4b;border-color:var(--color-warning);color:#e0b06a;color:var(--color-warning-light)}.alert-error{background-color:#ef444426;border-color:#c98b8b;border-color:var(--color-error);color:#d9a3a3;color:var(--color-error-light)}table{background-color:#1e1e2a;background-color:var(--color-surface);border-collapse:collapse;width:100%}th{background-color:#1a1a25;background-color:var(--sidebar-background);border-bottom:2px solid #ffffff14;border-bottom:2px solid var(--color-border);color:#e8e8ea;color:var(--color-text-primary);font-weight:600;text-align:left}td,th{padding:16px;padding:var(--spacing-md)}td{border-bottom:1px solid #ffffff14;border-bottom:1px solid var(--color-border);color:#a0a0a6;color:var(--color-text-secondary)}tr:hover{background-color:#ffffff17;background-color:var(--card-background-hover)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-primary{color:#e8e8ea;color:var(--color-text-primary)}.text-secondary{color:#a0a0a6;color:var(--color-text-secondary)}.text-muted{color:#6a6a70;color:var(--color-text-muted)}.text-accent{color:#c9a76a;color:var(--color-accent)}.text-success{color:#7fa884;color:var(--color-success)}.text-warning{color:#d49a4b;color:var(--color-warning)}.text-error{color:#c98b8b;color:var(--color-error)}.bg-primary{background-color:#c9a76a;background-color:var(--color-accent)}.bg-secondary{background-color:#1e1e2a;background-color:var(--color-secondary)}.bg-accent{background-color:#c9a76a;background-color:var(--color-accent)}.bg-surface{background-color:#1e1e2a;background-color:var(--color-surface)}.bg-background{background-color:#15151e;background-color:var(--color-background)}.m-0{margin:0}.m-xs{margin:4px;margin:var(--spacing-xs)}.m-sm{margin:8px;margin:var(--spacing-sm)}.m-md{margin:16px;margin:var(--spacing-md)}.m-lg{margin:24px;margin:var(--spacing-lg)}.m-xl{margin:32px;margin:var(--spacing-xl)}.mt-0{margin-top:0}.mt-xs{margin-top:4px;margin-top:var(--spacing-xs)}.mt-sm{margin-top:8px;margin-top:var(--spacing-sm)}.mt-md{margin-top:16px;margin-top:var(--spacing-md)}.mt-lg{margin-top:24px;margin-top:var(--spacing-lg)}.mt-xl{margin-top:32px;margin-top:var(--spacing-xl)}.mb-0{margin-bottom:0}.mb-xs{margin-bottom:4px;margin-bottom:var(--spacing-xs)}.mb-sm{margin-bottom:8px;margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:16px;margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:24px;margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:32px;margin-bottom:var(--spacing-xl)}.p-0{padding:0}.p-xs{padding:4px;padding:var(--spacing-xs)}.p-sm{padding:8px;padding:var(--spacing-sm)}.p-md{padding:16px;padding:var(--spacing-md)}.p-lg{padding:24px;padding:var(--spacing-lg)}.p-xl{padding:32px;padding:var(--spacing-xl)}.d-none{display:none}.d-block{display:block}.d-inline{display:inline}.d-inline-block{display:inline-block}.d-flex{display:flex}.d-inline-flex{display:inline-flex}.d-grid{display:grid}.flex-row{flex-direction:row}.flex-column{flex-direction:column}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.align-start{align-items:flex-start}.align-center{align-items:center}.align-end{align-items:flex-end}.flex-wrap{flex-wrap:wrap}.flex-1{flex:1 1}.gap-xs{gap:4px;gap:var(--spacing-xs)}.gap-sm{gap:8px;gap:var(--spacing-sm)}.gap-md{gap:16px;gap:var(--spacing-md)}.gap-lg{gap:24px;gap:var(--spacing-lg)}.loading{color:#a0a0a6;color:var(--color-text-secondary)}.error,.loading{align-items:center;display:flex;font-size:1.125rem;justify-content:center;padding:48px;padding:var(--spacing-2xl)}.error{color:#c98b8b;color:var(--color-error)}.empty-state{color:#a0a0a6;color:var(--color-text-secondary);padding:64px 24px;padding:var(--spacing-3xl) var(--spacing-lg);text-align:center}.empty-state h3{color:#e8e8ea;color:var(--color-text-primary);margin-bottom:16px;margin-bottom:var(--spacing-md)}@keyframes globalFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes globalSlideIn{0%{transform:translateX(-100%)}to{transform:translateX(0)}}@keyframes globalPulse{0%,to{opacity:1}50%{opacity:.5}}.animate-fadeIn{animation:globalFadeIn ease-out .3s ease-out;animation:globalFadeIn var(--transition-normal) ease-out}.animate-slideIn{animation:globalSlideIn ease-out .3s ease-out;animation:globalSlideIn var(--transition-normal) ease-out}.animate-pulse{animation:globalPulse 2s ease-in-out infinite}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#15151e;background:var(--color-background)}::-webkit-scrollbar-thumb{background:#ffffff14;background:var(--color-border);border-radius:9999px;border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:#6a6a70;background:var(--color-text-muted)}:focus-visible,html body :focus-visible:focus-visible{outline:2px solid #c9a76a;outline:var(--focus-width) var(--focus-style) var(--focus-color);outline-offset:2px;outline-offset:var(--focus-offset)}@media (forced-colors:active){:focus-visible,html body :focus-visible:focus-visible{outline-color:Highlight;outline-style:solid;outline-width:2px;outline-width:var(--focus-width)}}::selection{background-color:#c9a76a4d;color:#e8e8ea;color:var(--color-text-primary)}*{transition:var(--transition)}body{background-color:var(--surface-base);color:var(--semantic-text-primary)}.card,.step-card{background-color:var(--surface-raised);border-color:var(--semantic-border);box-shadow:var(--semantic-shadow-low)}.btn-primary{background-color:var(--action-primary);border-color:var(--action-primary);color:var(--semantic-text-on-action)}.btn-primary:hover{background-color:var(--action-primary-hover);border-color:var(--action-primary-hover)}.form-control,.form-select,input,textarea{background-color:var(--surface-interactive);border-color:var(--semantic-border);color:var(--semantic-text-primary)}.form-control:focus,.form-select:focus,input:focus,textarea:focus{background-color:var(--surface-interactive);border-color:var(--semantic-focus);color:var(--semantic-text-primary)}.navbar{background-color:var(--surface-panel)!important;border-bottom-color:var(--semantic-border)}.table{background-color:var(--surface-raised)}.table,.table th{color:var(--semantic-text-primary)}.table th{background-color:var(--surface-panel)}.modal-content,.table td,.table th{border-color:var(--semantic-border)}.modal-content{background-color:var(--surface-raised);color:var(--semantic-text-primary)}.modal-header{background-color:var(--surface-panel);border-bottom-color:var(--semantic-border)}.list-group-item{background-color:var(--surface-raised);border-color:var(--semantic-border);color:var(--semantic-text-primary)}.list-group-item:hover{background-color:var(--surface-interactive-hover)}.alert{background-color:var(--surface-passive);border-color:var(--semantic-border);color:var(--semantic-text-primary)}.App{background-color:var(--color-background);color:var(--color-text-primary);font-family:var(--font-primary);min-height:100vh}