@charset "UTF-8";:root{--color-primary-50: #f5f3ff;--color-primary-100: #ede9fe;--color-primary-200: #ddd6fe;--color-primary-300: #c4b5fd;--color-primary-400: #a78bfa;--color-primary-500: #8b5cf6;--color-primary-600: #7c3aed;--color-primary-700: #6d28d9;--color-primary-800: #5b21b6;--color-primary-900: #4c1d95;--color-gray-50: #f9fafb;--color-gray-100: #f3f4f6;--color-gray-200: #e5e7eb;--color-gray-300: #d1d5db;--color-gray-400: #9ca3af;--color-gray-500: #6b7280;--color-gray-600: #4b5563;--color-gray-700: #374151;--color-gray-800: #1f2937;--color-gray-900: #111827;--color-success-500: #10b981;--color-danger-500: #ef4444;--color-warning-500: #f59e0b;--color-info-500: #3b82f6;--color-chat-bg: #18181b;--color-chat-text: #efeff1;--color-bg: var(--color-gray-50);--color-surface: #ffffff;--color-text-main: var(--color-gray-900);--color-text-muted: var(--color-gray-500);--color-border: var(--color-gray-200);--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 16px;--spacing-xl: 24px;--spacing-2xl: 32px;--spacing-3xl: 40px;--spacing-4xl: 56px;--border-radius-xs: 2px;--border-radius-sm: 4px;--border-radius-md: 8px;--border-radius-lg: 12px;--border-radius-xl: 16px;--border-radius-2xl: 20px;--border-radius-pill: 999px;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .06);--shadow-md: 0 4px 12px rgba(15, 23, 42, .08);--shadow-lg: 0 12px 24px rgba(15, 23, 42, .12);--shadow-xl: 0 24px 48px rgba(15, 23, 42, .18);--color-overlay: rgba(15, 23, 42, .55);--font-size-xs: 12px;--font-size-sm: 13px;--font-size-base: 14px;--font-size-lg: 16px;--font-size-xl: 20px;--font-size-2xl: 24px;--font-size-3xl: 32px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--transition-fast: .12s ease-out;--transition-base: .2s ease-out;--sidebar-width: 240px;--navbar-height: 64px;--z-index-navbar: 90;--z-index-sidebar: 100;--z-index-dialog: 8000;--z-index-toast: 9000;--duration-overlay-in: .22s;--duration-panel-in: .26s;--easing-panel-in: cubic-bezier(.22, 1, .36, 1)}*,*:before,*:after{box-sizing:border-box}:root{color-scheme:light}html,body{margin:0;padding:0;height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:var(--font-size-base);color:var(--color-text-main);background-color:var(--color-bg);line-height:1.45;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{margin:0;font-weight:var(--font-weight-semibold);color:var(--color-text-main)}button{font-family:inherit;cursor:pointer}a{color:var(--color-primary-600);text-decoration:none}a:hover{text-decoration:underline}textarea,input,select{font-family:inherit;font-size:inherit}input[type=checkbox],input[type=radio]{accent-color:var(--color-primary-600)}:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:2px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:1;border:1px solid transparent;border-radius:var(--border-radius-md);background-color:var(--color-surface);color:var(--color-text-main);transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background-color:var(--color-primary-600);color:#fff;border-color:var(--color-primary-600)}.btn--primary:hover:not(:disabled){background-color:var(--color-primary-700);border-color:var(--color-primary-700)}.btn--ghost{background-color:transparent;border-color:var(--color-border)}.btn--ghost:hover:not(:disabled){background-color:var(--color-gray-100)}.btn--danger{background-color:var(--color-danger-500);color:#fff;border-color:var(--color-danger-500)}.btn--danger:hover:not(:disabled){background-color:#dc2626;border-color:#dc2626}.btn--chip{padding:2px var(--spacing-md);border-radius:var(--border-radius-pill);background-color:var(--color-primary-100);color:var(--color-primary-700);font-size:var(--font-size-xs);font-family:SF Mono,Menlo,Consolas,monospace}.btn--chip:hover:not(:disabled){background-color:var(--color-primary-200)}.card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-sm)}.card__header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:var(--spacing-lg)}.card__header h2{font-size:var(--font-size-xl)}.label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-muted);margin-bottom:var(--spacing-sm)}.input{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--border-radius-md);background-color:var(--color-surface);color:var(--color-text-main);font-size:var(--font-size-sm);transition:border-color var(--transition-fast)}.input::placeholder{color:var(--color-text-muted)}.input:focus{outline:none;border-color:var(--color-primary-500);box-shadow:0 0 0 3px var(--color-primary-100)}.input:disabled{background-color:var(--color-gray-50);color:var(--color-text-muted);cursor:not-allowed}.ph{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-2xl)}.ph__eyebrow{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.ph__row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-xl)}.ph__heading{min-width:0}.ph__title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);letter-spacing:-.02em;line-height:1.2;margin:0}.ph__subtitle{color:var(--color-text-muted);font-size:var(--font-size-base);margin:var(--spacing-xs) 0 0;max-width:700px}.ph__actions{display:flex;gap:var(--spacing-sm);flex-shrink:0}.seg{display:inline-flex;gap:2px;padding:3px;background-color:var(--color-gray-100);border-radius:var(--border-radius-md)}.seg__item{border:none;background:transparent;padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-muted);border-radius:var(--border-radius-sm);cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast)}.seg__item--active{background-color:var(--color-surface);color:var(--color-text-main);box-shadow:var(--shadow-sm)}.var-chips{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.var-chip{font-family:SF Mono,Menlo,Consolas,monospace;font-size:var(--font-size-xs);background-color:var(--color-primary-50);color:var(--color-primary-700);padding:3px var(--spacing-sm);border-radius:var(--border-radius-pill);border:1px solid var(--color-primary-100);cursor:pointer;transition:background-color var(--transition-fast)}.var-chip:hover{background-color:var(--color-primary-100)}.preview-chat{background-color:var(--color-chat-bg);border-radius:var(--border-radius-lg);padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-sm);color:var(--color-chat-text);line-height:1.5;display:flex;flex-direction:column;gap:var(--spacing-xs)}.preview-chat__msg{display:flex;gap:var(--spacing-xs);align-items:flex-start;flex-wrap:wrap}.preview-chat__badge{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:18px;height:18px;border-radius:var(--border-radius-xs);font-size:9px;font-weight:var(--font-weight-bold);color:#fff}.preview-chat__badge--bot{background-color:var(--color-primary-500)}.preview-chat__user{font-weight:var(--font-weight-bold)}.preview-chat__user--bot{color:#a970ff}.preview-chat__text{color:var(--color-chat-text)}.preview-chat__announcement{border-left:3px solid var(--color-primary-500);padding:var(--spacing-sm) var(--spacing-md);background-color:#8b5cf61f;border-radius:0 var(--border-radius-md) var(--border-radius-md) 0}.preview-chat__caption{margin-top:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--color-text-muted);font-style:italic}.savebar{position:sticky;bottom:var(--spacing-lg);margin-top:var(--spacing-xl);display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-lg);padding:var(--spacing-md) var(--spacing-lg);background-color:var(--color-text-main);color:var(--color-bg);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg)}.savebar__msg{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.savebar__actions{display:flex;gap:var(--spacing-sm)}.savebar__btn{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);border-radius:var(--border-radius-md);border:1px solid rgba(255,255,255,.2);background:transparent;color:var(--color-bg);cursor:pointer;transition:background-color var(--transition-fast)}.savebar__btn:hover:not(:disabled){background-color:#ffffff1a}.savebar__btn:disabled{opacity:.5;cursor:not-allowed}.savebar__btn--primary{background-color:var(--color-primary-600);border-color:var(--color-primary-600);color:#fff}.savebar__btn--primary:hover:not(:disabled){background-color:var(--color-primary-700)}.app-shell{min-height:100vh;display:flex;background-color:var(--color-bg)}.app-shell__main{flex:1;min-width:0;display:flex;flex-direction:column;margin-left:var(--sidebar-width)}.app-shell__content{flex:1;overflow-y:auto;padding:var(--spacing-2xl) var(--spacing-xl)}.app-shell__content>*{max-width:1200px;margin-inline:auto}.modal-backdrop{background:var(--color-overlay);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:modal-backdrop-in var(--duration-overlay-in) ease-out}@keyframes modal-backdrop-in{0%{opacity:0}to{opacity:1}}.modal-panel,.modal-panel--confirm,.modal-panel--wide{display:flex;flex-direction:column;background:var(--color-surface);border-radius:var(--border-radius-2xl);box-shadow:var(--shadow-xl);border:1px solid var(--color-border);max-width:95vw;max-height:90vh;overflow:hidden;outline:none;animation:modal-panel-in var(--duration-panel-in) var(--easing-panel-in)}.modal-panel cdk-dialog-container,.modal-panel--confirm cdk-dialog-container,.modal-panel--wide cdk-dialog-container{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.modal-panel cdk-dialog-container>*,.modal-panel--confirm cdk-dialog-container>*,.modal-panel--wide cdk-dialog-container>*{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.modal-panel{width:520px}.modal-panel--confirm{width:440px}.modal-panel--wide{width:1100px}@keyframes modal-panel-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-title{display:block;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);padding:var(--spacing-xl) var(--spacing-2xl);color:var(--color-text-main);border-bottom:1px solid var(--color-border);flex-shrink:0}.modal-body{padding:var(--spacing-xl) var(--spacing-2xl);display:flex;flex-direction:column;gap:var(--spacing-md);overflow-y:auto;flex:1;min-height:0}.modal-text{margin:0;color:var(--color-text-muted);font-size:var(--font-size-sm);line-height:1.5}.modal-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-base);font-family:inherit;border:1px solid var(--color-border);border-radius:var(--border-radius-md);background-color:var(--color-surface);color:var(--color-text-main)}.modal-input:focus{outline:none;border-color:var(--color-primary-500);box-shadow:0 0 0 3px var(--color-primary-100)}.modal-input-hint{margin:0;font-size:var(--font-size-xs);color:var(--color-text-muted)}.modal-input-error{margin:0;font-size:var(--font-size-xs);color:var(--color-danger-500)}.modal-footer{padding:var(--spacing-lg) var(--spacing-2xl);background:var(--color-gray-50);border-top:1px solid var(--color-border);display:flex;justify-content:flex-end;align-items:center;gap:var(--spacing-sm);flex-shrink:0}
