:root{--navy-950:#050d24;--navy-900:#0a1a40;--navy-800:#0f2a63;--navy-700:#153a85;--navy-600:#1e4bb0;--navy-500:#3469d8;--navy-400:#5b8cf0;--navy-300:#8fb0f7;--navy-200:#c3d5fb;--navy-100:#e4ecfd;--navy-50:#f1f5fe;--font-sans:"Inter", "Segoe UI Variable Text", "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;--font-display:"Inter", "Segoe UI Variable Display", "Segoe UI", system-ui, sans-serif;--font-mono:"Cascadia Code", "SF Mono", Consolas, monospace;--fs-xs:.75rem;--fs-sm:.8125rem;--fs-md:.9375rem;--fs-lg:1.0625rem;--fs-xl:1.375rem;--fs-2xl:1.75rem;--fs-3xl:2.25rem;--lh-tight:1.2;--lh-normal:1.5;--sp-1:.25rem;--sp-2:.5rem;--sp-3:.75rem;--sp-4:1rem;--sp-5:1.25rem;--sp-6:1.5rem;--sp-8:2rem;--sp-10:2.5rem;--sp-12:3rem;--r-sm:8px;--r-md:12px;--r-lg:18px;--r-xl:26px;--r-pill:999px;--ease:cubic-bezier(.2, .7, .2, 1);--t-fast:.12s;--t-med:.22s;--sidebar-w:264px;--sidebar-w-collapsed:76px;--header-h:68px;--success:#138a5b;--success-bg:#e3f6ed;--warning:#a86500;--warning-bg:#fff2d9;--danger:#c0302f;--danger-bg:#fde8e8;--info:#1e4bb0;--info-bg:#e4ecfd;--neutral-bg:#e9edf5}:root,[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#eef2f9;--bg-grad-1:#3469d829;--bg-grad-2:#0f2a631a;--surface:#fff;--surface-2:#f6f8fc;--surface-3:#edf1f8;--glass:#ffffffa8;--glass-strong:#ffffffd1;--glass-border:#ffffffb3;--glass-hi:#ffffffe6;--border:#0a1a401a;--border-strong:#0a1a4033;--text:#0b1530;--text-2:#3b4866;--text-muted:#5f6c89;--text-on-primary:#fff;--primary:var(--navy-800);--primary-hover:var(--navy-700);--primary-soft:var(--navy-100);--primary-text:var(--navy-700);--accent:var(--navy-500);--focus:var(--navy-500);--shadow-sm:0 1px 2px #0a1a400f, 0 1px 1px #0a1a400a;--shadow-md:0 8px 24px -8px #0a1a402e, 0 2px 6px #0a1a400f;--shadow-lg:0 24px 60px -16px #0a1a404d, 0 6px 16px #0a1a4014;--overlay:#050d2473;--chart-1:#1e4bb0;--chart-2:#5b8cf0;--chart-3:#0f2a63;--chart-4:#138a5b;--chart-5:#a86500;--chart-grid:#0a1a4014}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#060b1c;--bg-grad-1:#3469d838;--bg-grad-2:#5b8cf014;--surface:#0e1733;--surface-2:#121d3f;--surface-3:#18254d;--glass:#121d3f94;--glass-strong:#0e1733d1;--glass-border:#8fb0f729;--glass-hi:#ffffff12;--border:#8fb0f724;--border-strong:#8fb0f747;--text:#eaf0ff;--text-2:#bcc8e6;--text-muted:#94a3c8;--text-on-primary:#fff;--primary:var(--navy-500);--primary-hover:var(--navy-400);--primary-soft:#5b8cf029;--primary-text:var(--navy-300);--accent:var(--navy-400);--focus:var(--navy-300);--shadow-sm:0 1px 2px #0006;--shadow-md:0 10px 30px -10px #0009, 0 2px 6px #0000004d;--shadow-lg:0 28px 70px -18px #000000bf, 0 6px 18px #00000059;--overlay:#020510a6;--success:#4fd6a0;--success-bg:#4fd6a024;--warning:#f2b44d;--warning-bg:#f2b44d24;--danger:#ff8a88;--danger-bg:#ff8a8824;--info:#8fb0f7;--info-bg:#5b8cf029;--neutral-bg:#8fb0f71a;--chart-1:#5b8cf0;--chart-2:#8fb0f7;--chart-3:#3469d8;--chart-4:#4fd6a0;--chart-5:#f2b44d;--chart-grid:#8fb0f71f}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);font-size:var(--fs-md);line-height:var(--lh-normal);color:var(--text);background:var(--bg);background-image:radial-gradient(60rem 40rem at 8% -10%, var(--bg-grad-1), transparent 60%), radial-gradient(48rem 36rem at 105% 0%, var(--bg-grad-2), transparent 55%);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background-attachment:fixed;min-height:100vh;margin:0}h1,h2,h3,h4{font-family:var(--font-display);line-height:var(--lh-tight);letter-spacing:-.015em;margin:0}p{margin:0}a{color:var(--primary-text);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}img,svg{max-width:100%;display:block}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:6px}::selection{background:var(--primary-soft)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{left:var(--sp-4);z-index:1000;background:var(--primary);color:var(--text-on-primary);padding:var(--sp-2) var(--sp-4);border-radius:var(--r-sm);position:fixed;top:-100px}.skip-link:focus{top:var(--sp-4)}.muted{color:var(--text-muted)}.small{font-size:var(--fs-sm)}.xs{font-size:var(--fs-xs)}.mono{font-family:var(--font-mono)}.row{align-items:center;gap:var(--sp-3);flex-wrap:wrap;display:flex}.row.between{justify-content:space-between}.stack{gap:var(--sp-4);flex-direction:column;display:flex}.stack-sm{gap:var(--sp-2);flex-direction:column;display:flex}.grow{flex:auto;min-width:0}.grid{gap:var(--sp-4);display:grid}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid.auto{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}@media (width<=1100px){.grid.cols-4,.grid.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.grid.cols-4,.grid.cols-3,.grid.cols-2{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@media print{body{color:#000!important;background:#fff!important}.no-print,.sidebar,.app-header,.toast-region{display:none!important}.app-main{margin:0!important;padding:0!important}.card{box-shadow:none!important;background:#fff!important;border:1px solid #ccc!important}}.glass{background:var(--glass);-webkit-backdrop-filter:blur(20px)saturate(150%);backdrop-filter:blur(20px)saturate(150%);border:1px solid var(--glass-border);box-shadow:inset 0 1px 0 var(--glass-hi), var(--shadow-md)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.glass{background:var(--glass-strong)}}.btn{justify-content:center;align-items:center;gap:var(--sp-2);min-height:38px;padding:0 var(--sp-4);border-radius:var(--r-md);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font-weight:550;font-size:var(--fs-sm);transition:transform var(--t-fast) var(--ease), background var(--t-fast), border-color var(--t-fast), box-shadow var(--t-fast);white-space:nowrap;display:inline-flex}.btn:hover:not(:disabled){background:var(--surface-2);border-color:var(--primary-text)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:linear-gradient(180deg, var(--navy-600), var(--navy-800));color:var(--text-on-primary);border-color:#0000;box-shadow:inset 0 1px #ffffff40,0 6px 16px -6px #0f2a638c}[data-theme=dark] .btn.primary{background:linear-gradient(180deg, var(--navy-500), var(--navy-700))}.btn.primary:hover:not(:disabled){background:linear-gradient(180deg, var(--navy-500), var(--navy-700));border-color:#0000}.btn.ghost{background:0 0;border-color:#0000}.btn.ghost:hover:not(:disabled){background:var(--primary-soft);border-color:#0000}.btn.danger{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 40%, transparent)}.btn.danger:hover:not(:disabled){background:var(--danger-bg);border-color:var(--danger)}.btn.danger.solid{background:var(--danger);color:#fff;border-color:#0000}.btn.sm{min-height:32px;padding:0 var(--sp-3);border-radius:var(--r-sm)}.btn.icon{width:38px;padding:0}.btn.icon.sm{width:32px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);padding:var(--sp-5)}.card.glass{background:var(--glass)}.card-title{font-size:var(--fs-lg);margin-bottom:var(--sp-3);font-weight:650}.card-head{justify-content:space-between;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-4);display:flex}.card-head h2,.card-head h3{font-size:var(--fs-lg);font-weight:650}.stat{gap:var(--sp-1);flex-direction:column;display:flex;position:relative;overflow:hidden}.stat .stat-label{font-size:var(--fs-sm);color:var(--text-muted);align-items:center;gap:var(--sp-2);display:flex}.stat .stat-value{font-size:var(--fs-2xl);letter-spacing:-.03em;font-weight:700}.stat .stat-hint{font-size:var(--fs-xs);color:var(--text-muted)}.stat.link{color:inherit;transition:transform var(--t-med) var(--ease), box-shadow var(--t-med);text-decoration:none}.stat.link:hover{box-shadow:var(--shadow-md);text-decoration:none;transform:translateY(-2px)}.stat.alert .stat-value{color:var(--danger)}.badge{height:22px;padding:0 var(--sp-2);border-radius:var(--r-pill);font-size:var(--fs-xs);background:var(--neutral-bg);color:var(--text-2);white-space:nowrap;align-items:center;gap:6px;font-weight:600;display:inline-flex}.badge.info{background:var(--info-bg);color:var(--info)}.badge.success{background:var(--success-bg);color:var(--success)}.badge.warning{background:var(--warning-bg);color:var(--warning)}.badge.danger{background:var(--danger-bg);color:var(--danger)}.badge.demo{background:repeating-linear-gradient(45deg, var(--warning-bg), var(--warning-bg) 6px, transparent 6px, transparent 12px);color:var(--warning);border:1px dashed var(--warning)}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field>label,.field>.label{font-size:var(--fs-sm);color:var(--text-2);font-weight:600}.field .req{color:var(--danger);margin-left:2px}.field .help{font-size:var(--fs-xs);color:var(--text-muted)}.field .error-msg{font-size:var(--fs-xs);color:var(--danger);font-weight:550}.input,.select,.textarea{border-radius:var(--r-md);border:1px solid var(--border-strong);background:var(--surface);width:100%;min-height:40px;transition:border-color var(--t-fast), box-shadow var(--t-fast);padding:8px 12px}.textarea{resize:vertical;min-height:92px}.input:hover,.select:hover,.textarea:hover{border-color:var(--primary-text)}.input:focus,.select:focus,.textarea:focus{border-color:var(--focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--focus) 28%, transparent);outline:none}.input[aria-invalid=true],.select[aria-invalid=true],.textarea[aria-invalid=true]{border-color:var(--danger)}.checkbox{gap:var(--sp-2);font-size:var(--fs-sm);align-items:center;display:flex}.checkbox input{width:18px;height:18px;accent-color:var(--primary)}.form-grid{gap:var(--sp-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.form-grid .wide{grid-column:1/-1}@media (width<=640px){.form-grid{grid-template-columns:minmax(0,1fr)}}.form-section-title{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--primary-text);padding-top:var(--sp-2);border-top:1px solid var(--border);grid-column:1/-1;font-weight:700}.form-section-title:first-child{border-top:0;padding-top:0}.tags-input{border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface);flex-wrap:wrap;align-items:center;gap:6px;min-height:40px;padding:6px 8px;display:flex}.tags-input input{background:0 0;border:0;outline:0;flex:1;min-width:100px}.tag-chip{background:var(--primary-soft);color:var(--primary-text);border-radius:var(--r-pill);font-size:var(--fs-xs);align-items:center;gap:4px;padding:2px 4px 2px 10px;font-weight:600;display:inline-flex}.tag-chip button{width:18px;height:18px;color:inherit;background:0 0;border:0;border-radius:50%;line-height:1}.tag-chip button:hover{background:color-mix(in srgb, var(--primary-text) 20%, transparent)}.table-wrap{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);overflow-x:auto}table.table{border-collapse:collapse;width:100%;font-size:var(--fs-sm)}.table th{text-align:left;font-weight:650;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);background:var(--surface-2);border-bottom:1px solid var(--border);white-space:nowrap;padding:12px 14px}.table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:12px 14px}.table tbody tr:last-child td{border-bottom:0}.table tbody tr{transition:background var(--t-fast)}.table tbody tr:hover{background:var(--surface-2)}.table .actions{text-align:right;white-space:nowrap}.table .title-cell{text-overflow:ellipsis;max-width:320px;font-weight:600;overflow:hidden}.link-btn{color:var(--primary-text);text-align:left;background:0 0;border:0;padding:0;font-weight:600}.link-btn:hover{text-decoration:underline}.tabs{gap:var(--sp-1);border-bottom:1px solid var(--border);scrollbar-width:thin;display:flex;overflow-x:auto}.tab{font-size:var(--fs-sm);color:var(--text-muted);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 14px;font-weight:600}.tab:hover{color:var(--text)}.tab[aria-selected=true]{color:var(--primary-text);border-bottom-color:var(--primary-text)}.segmented{background:var(--surface-3);border-radius:var(--r-md);gap:2px;padding:3px;display:inline-flex}.segmented button{border-radius:var(--r-sm);font-size:var(--fs-sm);color:var(--text-muted);background:0 0;border:0;padding:6px 12px;font-weight:600}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.overlay{z-index:200;background:var(--overlay);padding:var(--sp-4);animation:fade-in var(--t-med) var(--ease);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.overlay.drawer-wrap{justify-content:flex-end;align-items:stretch;padding:0}.modal{border-radius:var(--r-xl);background:var(--glass-strong);-webkit-backdrop-filter:blur(24px)saturate(160%);backdrop-filter:blur(24px)saturate(160%);border:1px solid var(--glass-border);width:min(760px,100%);max-height:min(92vh,900px);box-shadow:inset 0 1px 0 var(--glass-hi), var(--shadow-lg);animation:pop-in var(--t-med) var(--ease);flex-direction:column;display:flex}.modal.sm{width:min(460px,100%)}.modal.lg{width:min(980px,100%)}.modal.drawer{border-radius:var(--r-xl) 0 0 var(--r-xl);width:min(560px,100%);height:100vh;max-height:100vh;animation:slide-in var(--t-med) var(--ease)}.modal-head{padding:var(--sp-5) var(--sp-6) var(--sp-3);justify-content:space-between;align-items:flex-start;gap:var(--sp-3);display:flex}.modal-head h2{font-size:var(--fs-xl)}.modal-body{padding:var(--sp-2) var(--sp-6) var(--sp-5);overflow-y:auto}.modal-foot{padding:var(--sp-4) var(--sp-6);border-top:1px solid var(--border);justify-content:flex-end;gap:var(--sp-2);flex-wrap:wrap;display:flex}@keyframes fade-in{0%{opacity:0}}@keyframes pop-in{0%{opacity:0;transform:translateY(8px)scale(.985)}}@keyframes slide-in{0%{opacity:0;transform:translate(32px)}}.state{text-align:center;align-items:center;gap:var(--sp-3);padding:var(--sp-10) var(--sp-5);color:var(--text-muted);flex-direction:column;display:flex}.state h3{color:var(--text);font-size:var(--fs-lg)}.state .state-icon{background:var(--primary-soft);width:52px;height:52px;color:var(--primary-text);border-radius:16px;place-items:center;display:grid}.state.error .state-icon{background:var(--danger-bg);color:var(--danger)}.spinner{border:3px solid var(--primary-soft);border-top-color:var(--primary-text);border-radius:50%;width:22px;height:22px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{background:linear-gradient(90deg, var(--surface-3), var(--surface-2), var(--surface-3));border-radius:var(--r-sm);background-size:200% 100%;animation:1.4s linear infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}.banner{gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);background:var(--info-bg);color:var(--text);border:1px solid color-mix(in srgb, var(--info) 30%, transparent);font-size:var(--fs-sm);align-items:flex-start;display:flex}.banner.warning{background:var(--warning-bg);border-color:color-mix(in srgb, var(--warning) 40%, transparent)}.banner.danger{background:var(--danger-bg);border-color:color-mix(in srgb, var(--danger) 40%, transparent)}.banner.success{background:var(--success-bg);border-color:color-mix(in srgb, var(--success) 40%, transparent)}.banner svg{flex:none;margin-top:2px}.toast-region{right:var(--sp-4);bottom:var(--sp-4);gap:var(--sp-2);z-index:400;flex-direction:column;max-width:min(380px,100vw - 2rem);display:flex;position:fixed}.toast{padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);background:var(--glass-strong);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid var(--glass-border);box-shadow:var(--shadow-lg);font-size:var(--fs-sm);gap:var(--sp-3);animation:pop-in var(--t-med) var(--ease);align-items:flex-start;display:flex}.toast.success{border-left:4px solid var(--success)}.toast.error{border-left:4px solid var(--danger)}.toast.info{border-left:4px solid var(--info)}.kanban{gap:var(--sp-4);padding-bottom:var(--sp-3);grid-auto-columns:minmax(270px,1fr);grid-auto-flow:column;align-items:start;display:grid;overflow-x:auto}.kanban-col{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-3);min-height:140px}.kanban-col.over{outline:2px dashed var(--primary-text);background:var(--primary-soft)}.kanban-col h3{font-size:var(--fs-sm);padding:var(--sp-1) var(--sp-2) var(--sp-3);justify-content:space-between;align-items:center;display:flex}.kanban-col-tools{justify-content:space-between;align-items:center;gap:var(--sp-2);padding:0 var(--sp-2) var(--sp-2);display:flex}.kanban-card.kanban-card-new{border-color:var(--info);box-shadow:0 0 0 1px var(--info), var(--shadow-sm)}.leads-new-banner{align-items:center;gap:var(--sp-2);border-radius:var(--r-md);background:var(--info-bg);color:var(--info);font-size:var(--fs-sm);flex-wrap:wrap;padding:4px 6px 4px 10px;display:flex}.kanban-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--sp-3);margin-bottom:var(--sp-2);box-shadow:var(--shadow-sm);cursor:grab;gap:var(--sp-2);transition:box-shadow var(--t-fast), transform var(--t-fast);flex-direction:column;display:flex}.kanban-card:hover{box-shadow:var(--shadow-md)}.kanban-card.dragging{opacity:.5}.kanban-card .kc-title{font-weight:600;font-size:var(--fs-sm);text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.kanban-card .kc-move{align-items:center;gap:4px;display:flex}.kanban-card select{font-size:var(--fs-xs);border:1px solid var(--border);background:var(--surface-2);border-radius:6px;max-width:100%;padding:2px 4px}.page-head{justify-content:space-between;align-items:flex-end;gap:var(--sp-4);margin-bottom:var(--sp-6);flex-wrap:wrap;display:flex}.page-head h1{font-size:var(--fs-2xl);letter-spacing:-.03em;font-weight:750}.page-head .subtitle{color:var(--text-muted);margin-top:var(--sp-1);max-width:62ch}.toolbar{gap:var(--sp-2);margin-bottom:var(--sp-4);flex-wrap:wrap;align-items:center;display:flex}.toolbar .search{flex:240px;max-width:360px;position:relative}.toolbar .search svg{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.toolbar .search .input{padding-left:36px}.toolbar .select{width:auto;min-width:140px}.app-shell{min-height:100vh;display:flex}.sidebar{inset:var(--sp-3) auto var(--sp-3) var(--sp-3);width:var(--sidebar-w);border-radius:var(--r-xl);padding:var(--sp-4) var(--sp-3);z-index:100;transition:width var(--t-med) var(--ease), transform var(--t-med) var(--ease);flex-direction:column;display:flex;position:fixed;overflow:hidden}.sidebar.glass{background:color-mix(in srgb, var(--navy-900) 88%, transparent);color:#e6edff;border-color:#8fb0f733}[data-theme=dark] .sidebar.glass{background:color-mix(in srgb, var(--navy-950) 70%, transparent)}.sidebar .brand{align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-2) var(--sp-4);color:#fff;text-decoration:none;display:flex}.sidebar .brand:hover{text-decoration:none}.brand-mark{background:linear-gradient(145deg,#4a7df0,#1e4bb0 60%,#0f2a63);border-radius:12px;flex:none;place-items:center;width:38px;height:38px;font-weight:800;display:grid;box-shadow:inset 0 1px #fff6,0 6px 14px -4px #3469d8b3}.brand-name{letter-spacing:-.02em;font-weight:750;font-size:var(--fs-lg);white-space:nowrap}.brand-name small{font-weight:500;font-size:var(--fs-xs);opacity:.65;letter-spacing:.04em;display:block}.nav{scrollbar-width:thin;scrollbar-color:#8fb0f74d transparent;flex-direction:column;flex:1;gap:2px;padding-right:2px;display:flex;overflow-y:auto}.nav-group{text-transform:uppercase;letter-spacing:.1em;opacity:.5;padding:var(--sp-3) var(--sp-3) var(--sp-1);white-space:nowrap;font-size:.6875rem}.nav a{align-items:center;gap:var(--sp-3);padding:9px var(--sp-3);border-radius:var(--r-md);color:#c9d6f5;font-size:var(--fs-sm);white-space:nowrap;transition:background var(--t-fast), color var(--t-fast);font-weight:550;display:flex}.nav a:hover{color:#fff;background:#8fb0f71f;text-decoration:none}.nav a.active{color:#fff;background:linear-gradient(135deg,#5b8cf066,#3469d838);box-shadow:inset 0 1px #ffffff2e}.nav a svg{flex:none}.nav .badge-count{background:var(--danger);color:#fff;border-radius:var(--r-pill);margin-left:auto;padding:1px 7px;font-size:.6875rem;font-weight:700}.sidebar-foot{padding-top:var(--sp-3);gap:var(--sp-2);border-top:1px solid #8fb0f72e;flex-direction:column;display:flex}.sidebar .btn.ghost{color:#c9d6f5;justify-content:flex-start}.sidebar .btn.ghost:hover:not(:disabled){color:#fff;background:#8fb0f724}.app-shell.collapsed .sidebar{width:var(--sidebar-w-collapsed)}.app-shell.collapsed .brand-name,.app-shell.collapsed .nav-group,.app-shell.collapsed .nav a span,.app-shell.collapsed .nav .badge-count,.app-shell.collapsed .sidebar-foot .label{display:none}.app-shell.collapsed .nav a{justify-content:center}.app-main{min-width:0;margin-left:calc(var(--sidebar-w) + var(--sp-6));transition:margin-left var(--t-med) var(--ease);flex-direction:column;flex:1;display:flex}.app-shell.collapsed .app-main{margin-left:calc(var(--sidebar-w-collapsed) + var(--sp-6))}.app-header{top:var(--sp-3);z-index:90;margin:var(--sp-3) var(--sp-4) 0 0;min-height:var(--header-h);border-radius:var(--r-xl);align-items:center;gap:var(--sp-3);padding:0 var(--sp-4);flex-wrap:wrap;display:flex;position:sticky}.app-header .global-search{flex:260px;max-width:460px;position:relative}.app-header .global-search svg{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.app-header .global-search .input{background:color-mix(in srgb, var(--surface) 70%, transparent);border-radius:var(--r-pill);padding-left:38px}.search-results{background:var(--glass-strong);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border:1px solid var(--glass-border);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);padding:var(--sp-2);z-index:120;max-height:60vh;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow-y:auto}.search-results a{justify-content:space-between;gap:var(--sp-3);border-radius:var(--r-sm);color:var(--text);font-size:var(--fs-sm);padding:8px 10px;display:flex}.search-results a:hover,.search-results a:focus-visible{background:var(--primary-soft);text-decoration:none}.header-actions{align-items:center;gap:var(--sp-2);margin-left:auto;display:flex}.app-content{padding:var(--sp-6) var(--sp-4) var(--sp-12) 0;width:100%;max-width:1480px}.menu-btn{display:none}.popover{background:var(--glass-strong);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border:1px solid var(--glass-border);border-radius:var(--r-lg);min-width:300px;max-width:92vw;box-shadow:var(--shadow-lg);padding:var(--sp-2);z-index:130;max-height:70vh;position:absolute;top:calc(100% + 8px);right:0;overflow-y:auto}.popover .item{border-radius:var(--r-sm);color:var(--text);font-size:var(--fs-sm);text-align:left;background:0 0;border:0;width:100%;padding:10px 12px;display:block}.popover .item:hover{background:var(--primary-soft);text-decoration:none}.avatar{background:linear-gradient(145deg, var(--navy-500), var(--navy-800));color:#fff;width:34px;height:34px;font-weight:700;font-size:var(--fs-sm);border-radius:50%;flex:none;place-items:center;display:grid}.env-banner{margin:var(--sp-3) var(--sp-4) 0 0}.rel{position:relative}.notif-dot{border-radius:var(--r-pill);background:var(--danger);color:#fff;place-items:center;min-width:17px;height:17px;padding:0 4px;font-size:.6rem;font-weight:700;display:grid;position:absolute;top:4px;right:4px}@media (width<=960px){.sidebar{width:min(300px,86vw);transform:translate(-120%)}.app-shell.mobile-open .sidebar{transform:none}.app-main,.app-shell.collapsed .app-main{margin-left:0}.app-header{margin:var(--sp-2)}.app-content{padding:var(--sp-4) var(--sp-3) var(--sp-10)}.env-banner{margin:var(--sp-2)}.menu-btn{display:inline-flex}.app-shell.collapsed .nav a span,.app-shell.collapsed .brand-name,.app-shell.collapsed .nav-group,.app-shell.collapsed .nav .badge-count,.app-shell.collapsed .sidebar-foot .label{display:revert}.scrim{background:var(--overlay);z-index:95;position:fixed;inset:0}}.auth-page{min-height:100vh;padding:var(--sp-4);place-items:center;display:grid}.auth-card{border-radius:var(--r-xl);width:min(460px,100%);padding:var(--sp-8)}.auth-card h1{font-size:var(--fs-2xl);margin:var(--sp-4) 0 var(--sp-1)}.cal-grid{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);grid-template-columns:repeat(7,minmax(0,1fr));display:grid;overflow:hidden}.cal-dow{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);background:var(--surface-2);border-bottom:1px solid var(--border);padding:8px;font-weight:700}.cal-cell{border-right:1px solid var(--border);border-bottom:1px solid var(--border);flex-direction:column;gap:3px;min-width:0;min-height:112px;padding:6px;display:flex}.cal-cell:nth-child(7n+7){border-right:0}.cal-cell.outside{background:var(--surface-2);opacity:.65}.cal-cell.today .cal-day{background:var(--primary);color:#fff}.cal-cell.over{background:var(--primary-soft)}.cal-day{width:24px;height:24px;font-size:var(--fs-xs);border-radius:50%;place-items:center;font-weight:650;display:grid}.cal-chip{text-align:left;background:var(--primary-soft);color:var(--primary-text);text-overflow:ellipsis;white-space:nowrap;cursor:grab;border:0;border-left:3px solid var(--accent);border-radius:6px;padding:3px 6px;font-size:.6875rem;font-weight:600;overflow:hidden}.cal-chip.published{border-left-color:var(--success)}.cal-chip.pending{border-left-color:var(--warning)}.cal-chip.error{border-left-color:var(--danger)}.cal-week{gap:var(--sp-2);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.cal-week .cal-cell{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);min-height:260px}@media (width<=900px){.cal-week{grid-template-columns:minmax(0,1fr)}.cal-week .cal-cell{min-height:80px}.cal-cell{min-height:74px}}.chart-box{width:100%;height:260px}.legend-dot{border-radius:50%;width:10px;height:10px;display:inline-block}.kv{gap:var(--sp-2) var(--sp-4);font-size:var(--fs-sm);grid-template-columns:170px 1fr;display:grid}.kv dt{color:var(--text-muted);font-weight:600}.kv dd{white-space:pre-wrap;word-break:break-word;margin:0}@media (width<=640px){.kv{grid-template-columns:1fr}}.timeline{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.timeline li{gap:var(--sp-3);padding:var(--sp-3) 0;border-bottom:1px solid var(--border);font-size:var(--fs-sm);display:flex}.timeline li:last-child{border-bottom:0}.timeline .dot{background:var(--accent);border-radius:50%;flex:none;width:8px;height:8px;margin-top:7px}.progress{border-radius:var(--r-pill);background:var(--surface-3);height:8px;overflow:hidden}.progress>div{background:linear-gradient(90deg, var(--navy-500), var(--navy-700));border-radius:inherit;height:100%}.matrix td,.matrix th{text-align:center}.matrix td:first-child,.matrix th:first-child{text-align:left}.code-box{font-family:var(--font-mono);font-size:var(--fs-xs);padding:var(--sp-3);border-radius:var(--r-md);background:var(--surface-3);border:1px solid var(--border);word-break:break-all;-webkit-user-select:all;user-select:all}.report-section{border-top:1px solid var(--border);padding:var(--sp-4) 0}.report-section h3{margin-bottom:var(--sp-2)}.report-section ul{margin:0;padding-left:1.2em}.report-section.insufficient{color:var(--text-muted)}
