:root{--bg: #0d1422;--surface: #1f2937;--surface-2: #26334a;--surface-3: #2d3b55;--border: rgba(96, 118, 156, .28);--border-strong: #46536b;--text: #f9fafb;--dim: #a3abb8;--primary: #3b82f6;--primary-2: #60a5fa;--accent: #8b5cf6;--accent-2: #a78bfa;--success: #42be65;--warning: #fbbf24;--error: #f87171;--radius: 16px;--radius-sm: 10px;--shadow: 0 4px 20px rgba(2, 6, 14, .35);--shadow-lift: 0 16px 40px rgba(2, 6, 14, .5);--grad-primary: linear-gradient(180deg, #4189f8 0%, #2d6cdf 100%);--grad-brand: linear-gradient(90deg, #60a5fa, #8b5cf6);--font: "Clash Grotesk", "Segoe UI", system-ui, -apple-system, sans-serif;--font-num: "Segoe UI", system-ui, -apple-system, sans-serif;--glass: linear-gradient(165deg, rgba(44, 58, 84, .6) 0%, rgba(26, 35, 51, .78) 100%);--edge-light: inset 0 1px 0 rgba(255, 255, 255, .06);--thead-bg: #212d43;--zebra: rgba(13, 20, 34, .22);--inset-bg: rgba(13, 20, 34, .55);--input-bg: rgba(13, 20, 34, .65);--input-bg-focus: rgba(13, 20, 34, .9);--sidebar-grad: linear-gradient(180deg, rgba(28, 38, 55, .88) 0%, rgba(19, 26, 39, .94) 100%);--modal-grad: linear-gradient(170deg, #2a374f 0%, var(--surface) 55%, #1b2536 100%);--toast-grad: linear-gradient(180deg, #2a3650, var(--surface));--overlay: rgba(5, 9, 16, .7);--dot: rgba(148, 175, 220, .055);--aur-a: rgba(139, 92, 246, .16);--aur-b: rgba(59, 130, 246, .17);--aur-c: rgba(59, 130, 246, .08);--fs-xs: 11px;--fs-sm: 12.5px;--fs-md: 14.5px;--fs-lg: 16px;--fs-xl: 20px;--fs-2xl: 27px;--lh-tight: 1.18;--lh-body: 1.5;--fw-med: 500;--fw-bold: 600;--font-body: 14.5px;--pad: 20px;--row-h: 40px;--pad-sm: calc(var(--pad) * .6);--cell-pad-y: 10px;--cell-pad-x: 12px;--tile-pad: 17px 16px;--modal-pad: 26px;--gap: 12px;--t-neutral-fg: #cbd5e1;--t-neutral-bg: rgba(148, 163, 184, .13);--t-neutral-bd: rgba(148, 163, 184, .3);--t-info-fg: #93c5fd;--t-info-bg: rgba(96, 165, 250, .14);--t-info-bd: rgba(96, 165, 250, .32);--t-good-fg: #6ee7a0;--t-good-bg: rgba(66, 190, 101, .15);--t-good-bd: rgba(66, 190, 101, .32);--t-warn-fg: #fcd34d;--t-warn-bg: rgba(251, 191, 36, .14);--t-warn-bd: rgba(251, 191, 36, .32);--t-bad-fg: #fca5a5;--t-bad-bg: rgba(248, 113, 113, .14);--t-bad-bd: rgba(248, 113, 113, .32);--t-accent-fg: #c4b5fd;--t-accent-bg: rgba(167, 139, 250, .15);--t-accent-bd: rgba(167, 139, 250, .34);--shadow-sm: 0 3px 10px rgba(2, 6, 14, .28);--shadow-menu: 0 24px 60px rgba(2, 6, 14, .42);--shadow-modal: 0 28px 70px rgba(2, 6, 14, .42);--border-hover: #5b6779;--scroll-thumb-hover: #5f6b7d;--hover: rgba(59, 130, 246, .09);--hover-strong: rgba(59, 130, 246, .16);--code-bg: rgba(0, 0, 0, .22);--ring: 0 0 0 3px rgba(59, 130, 246, .35);--link: #93c5fd;color-scheme:dark}:root[data-theme=light]{--bg: #eef1f7;--surface: #ffffff;--surface-2: #f1f5f9;--surface-3: #e2e8f0;--border: rgba(100, 116, 139, .34);--border-strong: #8494a8;--text: #1f2937;--dim: #475569;--primary: #2f6fe0;--primary-2: #3b82f6;--accent: #7c3aed;--accent-2: #8b5cf6;--success: #24a148;--warning: #d97706;--error: #dc2626;--shadow: 0 4px 20px rgba(15, 23, 42, .07);--shadow-lift: 0 16px 40px rgba(15, 23, 42, .13);--glass: linear-gradient(165deg, rgba(255, 255, 255, .86) 0%, rgba(246, 249, 253, .94) 100%);--edge-light: inset 0 1px 0 rgba(255, 255, 255, .85);--thead-bg: #e8edf6;--zebra: rgba(148, 163, 184, .09);--inset-bg: rgba(226, 232, 240, .55);--input-bg: rgba(255, 255, 255, .75);--input-bg-focus: #ffffff;--sidebar-grad: linear-gradient(180deg, rgba(255, 255, 255, .92) 0%, rgba(241, 245, 251, .96) 100%);--modal-grad: linear-gradient(170deg, #ffffff 0%, #f6f9fd 100%);--toast-grad: linear-gradient(180deg, #ffffff, #f4f7fc);--overlay: rgba(30, 41, 59, .4);--dot: rgba(30, 58, 110, .06);--aur-a: rgba(139, 92, 246, .1);--aur-b: rgba(59, 130, 246, .1);--aur-c: rgba(59, 130, 246, .05);--t-neutral-fg: #475569;--t-neutral-bg: rgba(100, 116, 139, .11);--t-neutral-bd: rgba(100, 116, 139, .28);--t-info-fg: #1d4ed8;--t-info-bg: rgba(59, 130, 246, .11);--t-info-bd: rgba(59, 130, 246, .32);--t-good-fg: #166534;--t-good-bg: rgba(22, 163, 74, .11);--t-good-bd: rgba(22, 163, 74, .3);--t-warn-fg: #92400e;--t-warn-bg: rgba(217, 119, 6, .12);--t-warn-bd: rgba(217, 119, 6, .32);--t-bad-fg: #b91c1c;--t-bad-bg: rgba(220, 38, 38, .1);--t-bad-bd: rgba(220, 38, 38, .3);--t-accent-fg: #6d28d9;--t-accent-bg: rgba(124, 58, 237, .1);--t-accent-bd: rgba(124, 58, 237, .3);--shadow-sm: 0 3px 10px rgba(15, 23, 42, .1);--shadow-menu: 0 20px 48px rgba(15, 23, 42, .16);--shadow-modal: 0 24px 60px rgba(15, 23, 42, .18);--border-hover: #94a3b8;--scroll-thumb-hover: #94a3b8;--hover: rgba(37, 99, 235, .07);--hover-strong: rgba(37, 99, 235, .13);--code-bg: rgba(15, 23, 42, .06);--ring: 0 0 0 3px rgba(37, 99, 235, .28);--link: #1d4ed8;color-scheme:light}:root[data-density=compact]{--font-body: 13px;--pad: 13px;--row-h: 30px;--cell-pad-y: 5px;--cell-pad-x: 9px;--tile-pad: 11px 13px;--modal-pad: 18px;--gap: 9px;--fs-2xl: 23px;--fs-xl: 18px;--fs-lg: 15px;--fs-md: 13px}*{box-sizing:border-box}html{scrollbar-color:var(--border-strong) transparent;scroll-behavior:smooth}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:5px;border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:var(--scroll-thumb-hover);border:2px solid transparent;background-clip:content-box}::selection{background:#60a5fa59}body{margin:0;font-family:var(--font);background:var(--bg);color:var(--text);font-size:var(--font-body);letter-spacing:.1px;min-height:100vh;-webkit-font-smoothing:antialiased;overflow-x:clip}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:-1;background:radial-gradient(1200px 560px at 85% -12%,var(--aur-a),transparent 60%),radial-gradient(1000px 560px at -12% -2%,var(--aur-b),transparent 55%),radial-gradient(800px 800px at 50% 118%,var(--aur-c),transparent 60%)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background-image:radial-gradient(var(--dot) 1px,transparent 1px);background-size:26px 26px;mask-image:radial-gradient(900px 600px at 30% 0%,#000,transparent 75%);-webkit-mask-image:radial-gradient(900px 600px at 30% 0%,#000,transparent 75%)}#root{position:relative;z-index:1}@keyframes pageIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes modalIn{0%{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}@keyframes overlayIn{0%{opacity:0}to{opacity:1}}@keyframes toastIn{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:none}}@keyframes pulseGlow{0%,to{box-shadow:0 0 #3b82f659}50%{box-shadow:0 0 34px 6px #3b82f638}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes netbar{0%{transform:translate(-100%)}to{transform:translate(250%)}}@keyframes cardinalPerch{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes auroraDrift{0%,to{transform:translate(0) scale(1)}50%{transform:translate(40px,24px) scale(1.08)}}@keyframes blink{0%,to{opacity:1}50%{opacity:.35}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}html{scroll-behavior:auto}}#net-bar{position:fixed;top:0;left:0;right:0;height:3px;z-index:300;pointer-events:none;overflow:hidden;opacity:0;transition:opacity .2s}#net-bar.active{opacity:1}#net-bar:before{content:"";display:block;height:100%;width:38%;background:var(--grad-brand);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 20%,#000 80%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,#000 20%,#000 80%,transparent 100%);animation:netbar 1.9s cubic-bezier(.45,.05,.55,.95) infinite}@media (prefers-reduced-motion: reduce){#net-bar:before{animation:none!important;width:100%;-webkit-mask-image:none;mask-image:none;opacity:.7}}#toasts{position:fixed;right:18px;bottom:18px;z-index:400;display:flex;flex-direction:column;gap:10px;max-width:360px}.toast{display:flex;align-items:center;gap:10px;background:var(--toast-grad);border:1px solid var(--border-strong);border-left:3px solid var(--primary);border-radius:12px;padding:12px 16px;box-shadow:var(--shadow-lift),var(--edge-light);font-size:13.5px;line-height:1.45;animation:toastIn .22s ease-out}.toast.success{border-left-color:var(--success)}.toast.error{border-left-color:var(--error)}.toast .t-ico{font-size:15px}.toast.success .t-ico{color:var(--success)}.toast.error .t-ico{color:var(--error)}.toast.leaving{opacity:0;transform:translate(24px);transition:opacity .25s,transform .25s}.app{display:flex;min-height:100vh}.fav-order{display:flex;flex-direction:column;gap:4px}.fav-row{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:9px;border:1px solid var(--border);background:var(--surface-2);font-size:13.5px}.fav-row+.fav-row{margin-top:4px}.fav-row .grip{cursor:grab;color:var(--dim);letter-spacing:-1px}.fav-row .ico{width:20px;text-align:center;opacity:.85}.fav-row.dragging{opacity:.45;border-style:dashed}.section-head{font-size:10.5px;font-weight:600;letter-spacing:1.6px;text-transform:uppercase;color:var(--dim);padding:6px 2px 4px}.kbd{display:inline-block;padding:1px 6px;border-radius:5px;background:var(--surface-2);border:1px solid var(--border-strong);border-bottom-width:2px;font-size:11px;font-family:var(--font-num);color:var(--dim);line-height:1.5}.content{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:12px;padding:10px 26px;background:var(--sidebar-grad);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--border)}.topbar .grow{flex:1}.topbar .crumb{display:flex;align-items:baseline;gap:8px;font-size:14px;min-width:0}.topbar .crumb .sec{color:var(--dim);font-size:11px;text-transform:uppercase;letter-spacing:1.4px;font-weight:600}.topbar .crumb .sep{color:var(--dim);opacity:.5}.topbar .crumb .cur{font-weight:600;letter-spacing:.2px;white-space:nowrap}.icon-btn{width:34px;height:34px;padding:0;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:var(--inset-bg);color:var(--dim);border:1px solid var(--border);border-radius:9px;font-size:15px;box-shadow:none}.icon-btn:hover{color:var(--text);filter:none;transform:none;border-color:#60a5fa80;box-shadow:0 3px 10px #3b82f626}.notif{position:relative}.notif .icon-btn{overflow:visible}.notif-badge{position:absolute;top:-5px;right:-5px;min-width:24px;height:16px;padding:0 4px;border-radius:8px;background:var(--error);color:#fff;font-size:10px;font-weight:700;line-height:16px;text-align:center;font-family:var(--font-num);box-shadow:0 0 0 2px var(--bg)}.notif-panel{position:absolute;right:0;top:42px;width:340px;z-index:120;background:var(--modal-grad);border:1px solid var(--border-strong);border-radius:14px;overflow:hidden;box-shadow:var(--shadow-menu),var(--edge-light);animation:modalIn .16s ease-out}.notif-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--border);font-size:14px}.link-btn{background:none;border:none;box-shadow:none;color:var(--link);font-size:12px;padding:0;font-weight:var(--fw-bold)}.link-btn:hover{filter:none;transform:none;box-shadow:none;text-decoration:underline}.notif-list{max-height:380px;overflow-y:auto}.notif-empty{padding:30px 16px;text-align:center;color:var(--dim);font-size:13px}.notif-item{display:flex;gap:11px;padding:11px 14px;cursor:pointer;border-bottom:1px solid var(--border);transition:background .12s}.notif-item:hover{background:var(--hover)}.notif-item.unread{background:#3b82f612}.notif-item.unread .notif-title{font-weight:600}.notif-item.unread:before{content:"";width:6px;height:6px;border-radius:50%;margin-top:6px;background:var(--primary-2);flex-shrink:0}.notif-ico{font-size:15px;width:18px;text-align:center;flex-shrink:0}.notif-ico.warning{color:var(--warning)}.notif-text{min-width:0}.notif-title{font-size:13px;line-height:1.35}.notif-body{color:var(--dim);font-size:12px;margin-top:2px;line-height:1.4}.client-pick-top{display:flex;align-items:center;gap:8px}.client-pick-top.pinned{padding:3px 8px;border-radius:10px;background:#8b5cf61f;border:1px solid rgba(167,139,250,.4)}.client-pick-top.pinned .lbl{color:var(--accent-2)}.icon-btn.sm{width:26px;height:26px;font-size:13px;border-radius:7px}.cmdk-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cmdk-sub{color:var(--dim);font-size:12px}.client-pick-top .lbl{font-size:10.5px;letter-spacing:1.2px;text-transform:uppercase;color:var(--link);font-weight:var(--fw-bold)}.client-pick-top select{width:auto;max-width:210px;font-size:12.5px;padding:6px 9px}.client-pick-top .client-select{width:210px}.client-pick-top .client-select-input{font-size:12.5px;padding:6px 24px 6px 9px}.timer-chip{display:inline-flex;align-items:center;gap:9px;font-family:var(--font-num);font-variant-numeric:tabular-nums}.timer-chip.running{padding:4px 6px 4px 12px;background:#3b82f61a;border:1px solid rgba(96,165,250,.45);border-radius:10px;font-size:13px;animation:pulseGlow 2.4s ease-in-out infinite}.timer-chip.running .dot{width:8px;height:8px;border-radius:50%;background:var(--error);animation:blink 1.3s ease-in-out infinite}.timer-chip.running .t{font-weight:700;cursor:pointer;letter-spacing:.5px}.timer-chip.running .c{color:var(--dim);font-size:12px;cursor:pointer;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font)}.timer-chip.idle{font-family:var(--font)}@media (max-width: 1200px){.timer-chip.running .c,.client-pick-top .lbl{display:none}}@media (max-width: 900px){.topbar{padding:8px 14px;gap:8px}.topbar .crumb .sec,.topbar .crumb .sep,.client-pick-top{display:none}}.main{flex:1;padding:26px 34px 48px;min-width:0}.main>div{animation:pageIn .28s ease-out}@media (max-width: 1200px){.main{padding:20px 16px 40px}}h1{font-size:var(--fs-2xl);font-weight:var(--fw-bold);margin:0 0 6px;letter-spacing:.2px;line-height:var(--lh-tight);text-wrap:balance}.subtitle{color:var(--dim);font-size:var(--fs-sm);margin:0 0 22px;line-height:var(--lh-body);max-width:92ch}h1+.toolbar,h1+.panel,h1+.tiles,h1+.tabs{margin-top:16px}h2{font-size:var(--fs-lg);font-weight:var(--fw-bold);margin:26px 0 12px;color:var(--text);line-height:var(--lh-tight);display:flex;align-items:center;gap:9px;letter-spacing:.3px;text-wrap:balance}h2:before{content:"";width:4px;height:17px;border-radius:2px;flex:none;background:var(--grad-brand);box-shadow:0 0 10px #8b5cf680}h3{font-size:var(--fs-md);font-weight:var(--fw-bold);margin:18px 0 9px;line-height:var(--lh-tight);letter-spacing:.2px;text-wrap:balance}h4{font-size:var(--fs-sm);font-weight:var(--fw-bold);margin:14px 0 7px;line-height:var(--lh-tight)}.num,.tabular{font-variant-numeric:tabular-nums}button,.btn{background:var(--grad-primary);color:#fff;border:none;border-radius:var(--radius-sm);padding:8px 16px;font-size:13.5px;font-weight:600;font-family:inherit;letter-spacing:.2px;cursor:pointer;transition:filter .12s,transform .1s,box-shadow .12s;box-shadow:0 2px 10px #3b82f64d,var(--edge-light);position:relative;overflow:hidden}button:hover{filter:brightness(1.12);box-shadow:0 5px 18px #3b82f673,var(--edge-light);transform:translateY(-1px)}button:active{transform:translateY(0);filter:brightness(.98)}button:focus-visible{outline:2px solid var(--primary-2);outline-offset:2px}button.secondary{background:var(--surface-2);border:1px solid var(--border-strong);color:var(--text);box-shadow:var(--edge-light)}button.secondary:hover{background:var(--surface-3);filter:none;box-shadow:var(--shadow-sm),var(--edge-light)}button.danger{background:linear-gradient(180deg,#ef4444,#dc2626);box-shadow:0 2px 8px #ef444447,var(--edge-light)}button.danger:hover{box-shadow:0 5px 14px #ef444466}button:disabled{opacity:.45;cursor:default;transform:none!important;filter:none!important;box-shadow:none!important}button.small{padding:4px 11px;font-size:12.5px;border-radius:7px}input,select,textarea{background:var(--input-bg);border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text);padding:8px 11px;font-size:13.5px;font-family:inherit;width:100%;transition:border-color .12s,box-shadow .12s,background .12s}input:hover,select:hover,textarea:hover{border-color:var(--border-hover)}select option{background:var(--surface);color:var(--text)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);background:var(--input-bg-focus);box-shadow:0 0 0 3px #3b82f62e}input:disabled{opacity:.55}input[type=number]{font-family:var(--font-num);font-variant-numeric:tabular-nums}input[type=search]{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2.4'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:10px center;padding-left:32px}label{display:block;font-size:var(--fs-xs);color:var(--dim);margin-bottom:5px;font-weight:var(--fw-bold);letter-spacing:.8px;text-transform:uppercase}.field{margin-bottom:13px}.client-select{position:relative;width:100%}.client-select-input{width:100%;padding-right:26px}.client-select.disabled{opacity:.55;pointer-events:none}.client-select-caret{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:var(--dim);font-size:11px;pointer-events:none}.client-select-menu{z-index:200;max-height:300px;overflow-y:auto;padding:5px;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);box-shadow:var(--shadow-lift)}.client-select-opt{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:7px;font-size:13px;cursor:pointer;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-select-opt.active{background:var(--grad-primary);color:#fff}.client-select-opt.empty-opt{color:var(--dim);font-style:italic}.client-select-opt.active.empty-opt{color:#fff}.client-select-check{margin-left:auto;font-size:12px;opacity:.9}.client-select-empty{padding:16px;text-align:center;color:var(--dim);font-size:12.5px}.sheet-grid{border-collapse:collapse;font-size:12.5px;font-family:var(--font-num)}.sheet-grid th,.sheet-grid td{border:1px solid var(--border);padding:3px 8px;min-width:72px;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;height:24px}.sheet-grid thead th{position:sticky;top:0;z-index:3;background:var(--surface-2);color:var(--dim);font-weight:600;text-align:center;min-width:72px}.sheet-grid .rowhdr{position:sticky;left:0;z-index:2;background:var(--surface-2);color:var(--dim);text-align:center;min-width:44px;font-weight:600}.sheet-grid thead th.rowhdr{z-index:4}.sheet-grid th.hl,.sheet-grid td.rowhdr.hl{background:var(--surface-3);color:var(--text)}.sheet-grid td{cursor:cell;background:var(--input-bg)}.sheet-grid td.num{text-align:right;font-variant-numeric:tabular-nums}.sheet-grid td.fx{color:var(--primary-2)}.sheet-grid td.sel{outline:2px solid var(--primary);outline-offset:-2px;background:var(--input-bg-focus)}.sheet-grid td input{border:none;background:transparent;padding:0;margin:0;width:100%;height:100%;font:inherit;color:inherit;box-shadow:none!important;outline:none}.doc-surface{background:#fff;color:#1a1a1a;width:100%;max-width:830px;min-height:60vh;padding:60px 70px;border-radius:4px;box-shadow:var(--shadow);font-family:Georgia,Times New Roman,serif;font-size:15px;line-height:1.55;outline:none}.doc-surface h1{font-size:26px;margin:18px 0 10px;color:#111}.doc-surface h2{font-size:21px;margin:16px 0 8px;color:#111}.doc-surface h3{font-size:17px;margin:14px 0 7px;color:#111}.doc-surface p{margin:0 0 10px}.doc-surface table{border-collapse:collapse;margin:10px 0;width:100%}.doc-surface td,.doc-surface th{border:1px solid #999;padding:4px 8px}.doc-surface blockquote{border-left:3px solid #bbb;margin:10px 0;padding:2px 14px;color:#444;font-style:italic}.doc-surface ul,.doc-surface ol{margin:0 0 10px 22px}.doc-surface a{color:#1a56db}.row{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.row>*{flex:1;min-width:130px}.row>.fit{flex:0 0 auto;min-width:0}.toolbar{display:flex;gap:10px;margin-bottom:16px;align-items:center;flex-wrap:wrap}.toolbar input[type=search],.toolbar input[type=text]{max-width:270px}.toolbar select{max-width:220px;width:auto}.toolbar .grow{flex:1}.pager{display:flex;align-items:center;gap:8px;padding:12px 4px 2px;border-top:1px solid var(--border);margin-top:8px}.pager-info{color:var(--dim);font-size:12.5px;font-family:var(--font-num)}.quick-actions{display:flex;gap:9px;flex-wrap:wrap;margin:-6px 0 20px}.quick-actions button{font-weight:500}.panel{background:var(--glass);isolation:isolate;border:1px solid var(--border);border-radius:var(--radius);padding:var(--pad);margin-bottom:18px;box-shadow:var(--shadow),var(--edge-light)}.table-wrap,.tablewrap{overflow:auto;margin:-4px;padding:4px;max-height:68vh}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:var(--cell-pad-y) var(--cell-pad-x);border-bottom:1px solid var(--border);white-space:nowrap}tbody td{height:var(--row-h)}.matrix tbody td,.sheet-grid tbody td,.doc-surface tbody td,.msg .md tbody td{height:auto}thead th{position:sticky;top:-4px;z-index:2;background:var(--thead-bg);color:var(--dim);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:1px;-webkit-user-select:none;user-select:none;font-weight:var(--fw-bold);height:auto}thead th:first-child{border-top-left-radius:8px}thead th:last-child{border-top-right-radius:8px}th.sortable{cursor:pointer}th.sortable:hover{color:var(--text)}tbody tr{transition:background .1s}tbody tr:nth-child(2n){background:var(--zebra)}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--hover)}tbody tr.clickable{cursor:pointer}td.num,th.num{text-align:right;font-family:var(--font-num);font-variant-numeric:tabular-nums}.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:14px;margin-bottom:8px}.tile{background:var(--glass);border:1px solid var(--border);border-radius:var(--radius);padding:var(--tile-pad);box-shadow:var(--shadow),var(--edge-light);display:flex;gap:13px;align-items:center;transition:transform .16s,box-shadow .16s,border-color .16s;position:relative;overflow:hidden}.tile:after{content:"";position:absolute;inset:0 0 auto;height:2px;opacity:.9;background:var(--grad-brand)}.tile.good:after{background:linear-gradient(90deg,#42be65,#86efac)}.tile.warn:after{background:linear-gradient(90deg,#fbbf24,#fde68a)}.tile.bad:after{background:linear-gradient(90deg,#f87171,#fca5a5)}.tile.purple:after{background:linear-gradient(90deg,#8b5cf6,#c4b5fd)}.tile:hover{transform:translateY(-4px);box-shadow:var(--shadow-lift);border-color:#60a5fa80}.tile-clickable{cursor:pointer}.tile-clickable:hover{border-color:#60a5fabf}.tile-arrow{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:22px;color:var(--dim);opacity:0;transition:opacity .16s,transform .16s}.tile-clickable:hover .tile-arrow{opacity:.8;transform:translateY(-50%) translate(3px)}.tile .icon{width:46px;height:46px;border-radius:13px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:20px;background:var(--t-info-bg);border:1px solid var(--t-info-bd);color:var(--t-info-fg)}.tile.good .icon{background:var(--t-good-bg);border-color:var(--t-good-bd);color:var(--t-good-fg)}.tile.warn .icon{background:var(--t-warn-bg);border-color:var(--t-warn-bd);color:var(--t-warn-fg)}.tile.bad .icon{background:var(--t-bad-bg);border-color:var(--t-bad-bd);color:var(--t-bad-fg)}.tile.purple .icon{background:var(--t-accent-bg);border-color:var(--t-accent-bd);color:var(--t-accent-fg)}.tile:not(:has(>.icon)){flex-direction:column;align-items:stretch;justify-content:center;gap:0}.tile>*{min-width:0}.tile .label{color:var(--dim);font-size:var(--fs-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.9px}.tile .sub{color:var(--dim);font-size:var(--fs-xs);margin-top:3px;line-height:1.35}.tile .value{font-size:26px;font-weight:600;margin-top:2px;font-family:var(--font-num);font-variant-numeric:tabular-nums;letter-spacing:-.3px}.tile.warn .value{color:var(--t-warn-fg)}.tile.bad .value{color:var(--t-bad-fg)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:flex-start;justify-content:center;padding:6vh 16px;z-index:100;overflow-y:auto;animation:overlayIn .16s ease-out}.modal{background:var(--modal-grad);border:1px solid var(--border-strong);border-radius:18px;padding:var(--modal-pad);width:100%;max-width:620px;box-shadow:var(--shadow-modal),var(--edge-light);animation:modalIn .2s ease-out}.modal h3{margin:0 0 18px;font-size:var(--fs-xl);font-weight:var(--fw-bold);line-height:var(--lh-tight);letter-spacing:.2px}.modal .actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.modal.wide{max-width:880px}.modal.xl{max-width:min(1380px,96vw);min-height:82vh;display:flex;flex-direction:column}.modal.xl>*:last-child{flex:1}.modal.xl>.toolbar:last-child{flex:0 0 auto}.modal.xl>.actions:last-child{flex:0 0 auto;margin-top:auto;padding-top:18px}.acct-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}.books-pick{display:inline-flex;align-items:center;gap:8px;background:var(--glass);border:1px solid var(--border-strong);border-radius:12px;padding:5px 12px;box-shadow:var(--edge-light)}.books-pick .lbl{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--dim)}.books-pick select{border:none;background:transparent;padding:4px 6px;font-weight:600;box-shadow:none}.acct-body{display:flex;gap:18px;align-items:flex-start}.acct-subnav{width:194px;flex-shrink:0;position:sticky;top:12px;background:var(--glass);border:1px solid var(--border);border-radius:var(--radius);padding:10px 8px;box-shadow:var(--shadow),var(--edge-light)}.acct-navsection{font-size:10.5px;text-transform:uppercase;letter-spacing:.6px;color:var(--dim);padding:4px 10px;margin-top:10px}.acct-navitem{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:none;background:transparent;cursor:pointer;color:var(--dim);font-size:13.5px;text-align:left;border-radius:10px;transition:background .14s,color .14s}.acct-navitem:hover{background:var(--hover);color:var(--text)}.acct-navitem.active{background:var(--hover-strong);color:var(--text);font-weight:var(--fw-bold)}.acct-navitem .ico{width:18px;text-align:center;font-size:15px;opacity:.9}.acct-main{flex:1;min-width:0}@media (max-width: 900px){.acct-body{flex-direction:column}.acct-subnav{width:100%;position:static;display:flex;flex-wrap:wrap;gap:4px}.acct-subnav>div{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.acct-navsection{width:100%;margin-top:4px}.acct-navitem{width:auto}}.matrix{border-collapse:collapse;width:100%}.matrix th,.matrix td{padding:7px 10px;border-bottom:1px solid var(--border);font-size:12.5px}.matrix thead th{position:sticky;top:0;background:var(--bg);border-bottom:1px solid var(--border-strong);font-weight:600}.matrix th.focus,.matrix .matrix-cell.focus{background:#3b82f61f}.matrix .matrix-cat{font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:var(--link);background:var(--inset-bg);font-weight:var(--fw-bold);padding:6px 10px}.matrix .matrix-cell{font-size:14px}.tabs{display:inline-flex;gap:3px;flex-wrap:wrap;background:var(--inset-bg);border:1px solid var(--border);border-radius:12px;padding:4px;margin-bottom:18px;box-shadow:var(--edge-light)}.tabs button{background:transparent;color:var(--dim);border:none;border-radius:9px;padding:7px 15px;font-weight:500;font-size:13.5px;box-shadow:none;overflow:visible}.tabs button:hover{color:var(--text);background:var(--hover);filter:none;box-shadow:none;transform:none}.tabs button.active{background:var(--grad-primary);font-weight:600;color:#fff;box-shadow:0 2px 12px #3b82f666,var(--edge-light)}.cmdk-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:250;display:flex;align-items:flex-start;justify-content:center;padding:14vh 16px 16px;animation:overlayIn .14s ease-out}.cmdk{width:100%;max-width:560px;background:var(--modal-grad);border:1px solid rgba(96,165,250,.35);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-modal),0 0 0 4px #3b82f614,var(--edge-light);animation:modalIn .18s ease-out}.cmdk input{border:none;border-bottom:1px solid var(--border);border-radius:0;background:transparent;padding:15px 18px;font-size:15px}.cmdk input:focus{box-shadow:none;background:transparent}.cmdk-list{max-height:330px;overflow-y:auto;padding:8px}.cmdk-item{display:flex;align-items:center;gap:11px;padding:9px 12px;border-radius:10px;cursor:pointer;color:var(--dim);font-size:13.5px}.cmdk-item .ico{width:22px;text-align:center;font-size:15px}.cmdk-item .sec{margin-left:auto;font-size:11px;text-transform:uppercase;letter-spacing:1px;opacity:.55}.cmdk-item.active{background:var(--grad-primary);color:#fff;box-shadow:0 2px 12px #3b82f659}.cmdk-item.active .sec{opacity:.8}.cmdk-empty{padding:26px;text-align:center;color:var(--dim);font-size:13px}.cmdk-foot{display:flex;gap:14px;padding:9px 16px;border-top:1px solid var(--border);color:var(--dim);font-size:11.5px}.error{color:var(--error);font-size:13px;margin:8px 0}.empty{color:var(--dim);padding:30px 20px;text-align:center;font-size:13px}.empty:before{content:"◇";display:block;font-size:26px;margin-bottom:8px;opacity:.4}.drop-target{outline:2px dashed var(--primary);outline-offset:-8px;border-radius:var(--radius);background:#3b82f60d}.dropzone{border:2px dashed var(--border-strong);border-radius:var(--radius);padding:38px 20px;text-align:center;color:var(--dim);background:var(--inset-bg);cursor:pointer;transition:border-color .15s,background .15s,color .15s}.dropzone:hover,.dropzone.over{border-color:var(--primary);color:var(--text);background:#3b82f612}.dropzone .big{font-size:30px;display:block;margin-bottom:8px;opacity:.7}@keyframes shimmer{0%{background-position:-200px 0}to{background-position:200px 0}}.skel{height:13px;min-width:60px}.spinner{display:inline-block;width:16px;height:16px;border:2px solid currentColor;opacity:.8;border-top-color:transparent;border-radius:50%;animation:spin .7s linear infinite;vertical-align:-3px}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.login-wrap:before,.login-wrap:after{content:"";position:absolute;border-radius:50%;filter:blur(80px);opacity:.38;pointer-events:none;animation:auroraDrift 14s ease-in-out infinite}.login-wrap:before{width:460px;height:460px;background:#3b82f6;top:-130px;left:-110px}.login-wrap:after{width:420px;height:420px;background:#8b5cf6;bottom:-130px;right:-90px;animation-delay:-7s}.login-card{width:392px;padding:34px 32px;position:relative;z-index:1;color:var(--text)}.login-card .brand{display:flex;flex-direction:column;align-items:center;gap:12px;margin-bottom:24px}.login-card .brand svg{animation:cardinalPerch 5s ease-in-out infinite;filter:drop-shadow(0 4px 18px rgba(212,42,60,.45))}.login-card .wordmark{font-size:26px;font-weight:600;letter-spacing:6px}.login-card .wordmark span{color:var(--primary-2)}.login-card .tagline{color:var(--dim);font-size:12.5px;letter-spacing:.4px;margin-top:-6px}.kanban{display:flex;gap:14px;overflow-x:auto;align-items:flex-start;padding-bottom:8px}.kanban .col{background:var(--glass);border:1px solid var(--border);border-radius:var(--radius);padding:14px;min-width:252px;flex:1;box-shadow:var(--shadow),var(--edge-light)}.kanban .col h4{margin:0 0 12px;color:var(--dim);font-size:11.5px;text-transform:uppercase;letter-spacing:1px;display:flex;align-items:center;gap:7px}.kanban .col h4:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--primary-2);box-shadow:0 0 8px #60a5facc}.kanban .card{background:var(--surface-2);border:1px solid var(--border);border-radius:11px;padding:11px;margin-bottom:9px;transition:transform .13s,border-color .13s,box-shadow .13s}.kanban .card:hover{transform:translateY(-2px);border-color:#60a5fa80;box-shadow:var(--shadow-sm)}.kanban .card .meta{color:var(--dim);font-size:12px;margin-top:4px}.cal-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px}.cal-month{font-size:15px;font-weight:600;margin:0 6px 0 0;min-width:148px}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:var(--border);border:1px solid var(--border);border-radius:11px;overflow:hidden}.cal-dow{background:var(--surface-2);color:var(--dim);font-size:11px;text-transform:uppercase;letter-spacing:1px;padding:7px 8px;text-align:center}.cal-day{background:var(--surface);min-height:108px;padding:5px 6px 8px;display:flex;flex-direction:column;gap:3px}.cal-day.outside{background:var(--surface-2);opacity:.55}.cal-daynum{font-size:11.5px;color:var(--dim);align-self:flex-start;font-variant-numeric:tabular-nums;padding:1px 6px;border-radius:999px}.cal-day.today .cal-daynum{background:var(--primary);color:#fff;font-weight:var(--fw-bold)}.cal-chip{display:block;width:100%;text-align:left;cursor:pointer;font-size:11.5px;font-weight:500;line-height:1.35;letter-spacing:0;padding:3px 6px;border-radius:7px;box-shadow:none;border:1px solid transparent;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:var(--t-info-bg);color:var(--t-info-fg)}.cal-chip:hover{filter:brightness(1.12);transform:none;box-shadow:none}.cal-chip.done{background:var(--t-good-bg);color:var(--t-good-fg)}.cal-chip.late{background:var(--t-warn-bg);color:var(--t-warn-fg)}.cal-chip.deadline{background:transparent;color:var(--t-bad-fg);border-color:var(--t-bad-bd)}.cal-more{font-size:11px;font-weight:500;letter-spacing:0;color:var(--dim);background:none;border:none;box-shadow:none;padding:1px 6px;cursor:pointer;text-align:left}.cal-more:hover{color:var(--text);box-shadow:none;transform:none;filter:none}.cal-legend{display:flex;gap:14px;flex-wrap:wrap;margin-top:10px;color:var(--dim);font-size:11.5px;align-items:center}.cal-legend i{width:10px;height:10px;border-radius:3px;display:inline-block;margin-right:5px;vertical-align:-1px}.time-day{position:relative}.time-day-head{display:flex;align-items:center;gap:6px;margin-bottom:1px}.time-day-total{margin-left:auto;font-size:11.5px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--text);background:var(--surface-2);border-radius:999px;padding:1px 7px}.cal-day.outside .time-day-total{opacity:.7}.cal-chip.firm{background:var(--t-accent-bg);color:var(--t-accent-fg)}.time-chip-h{display:inline-block;min-width:20px;margin-right:5px;font-variant-numeric:tabular-nums;font-weight:600;opacity:.85}.time-day-add{position:absolute;right:4px;bottom:4px;width:20px;height:20px;padding:0;line-height:1;border-radius:6px;font-size:14px;font-weight:600;background:var(--surface-2);color:var(--dim);box-shadow:none;border:1px solid var(--border);opacity:0;transition:opacity .12s}.time-day:hover .time-day-add,.time-day-add:focus-visible{opacity:1}.time-day-add:hover{color:#fff;background:var(--grad-primary);border-color:transparent;transform:none;filter:none}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:14px}.page-head h1{margin:0}.page-sub{color:var(--dim);font-size:var(--fs-sm);margin-top:5px;font-variant-numeric:tabular-nums}.page-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.more-menu{position:relative}.more-menu-panel{position:absolute;right:0;top:42px;min-width:262px;z-index:120;background:var(--modal-grad);border:1px solid var(--border-strong);border-radius:14px;padding:6px;box-shadow:var(--shadow-menu),var(--edge-light);animation:modalIn .16s ease-out}.more-menu-item{display:block;width:100%;text-align:left;background:none;border:none;box-shadow:none;padding:9px 12px;border-radius:9px;color:var(--text);font-weight:500;font-size:13.5px;letter-spacing:0}.more-menu-item:hover{background:var(--hover);transform:none;filter:none;box-shadow:none}.more-menu-item .hint{display:block;color:var(--dim);font-size:11.5px;font-weight:400;margin-top:1px}.more-menu-item.active{color:var(--link)}.more-menu-item.danger{color:var(--error)}.more-menu-item.danger:hover{background:#ef44441a}.more-menu-section{font-size:10.5px;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:var(--dim);opacity:.8;padding:9px 12px 3px}.more-menu-section:first-child{padding-top:4px}.more-menu-kebab{min-width:0;padding:3px 9px;font-size:16px;line-height:1.1;letter-spacing:0}.more-menu.kebab .more-menu-panel{top:32px;min-width:250px}.msg .md p{margin:0 0 8px}.msg .md p:last-child,.msg .md ul:last-child,.msg .md ol:last-child,.msg .md table:last-child,.msg .md pre:last-child{margin-bottom:0}.msg .md ul,.msg .md ol{margin:4px 0 8px 20px;padding:0}.msg .md li{margin:2px 0}.msg .md h1,.msg .md h2,.msg .md h3{font-size:14px;font-weight:600;margin:10px 0 4px}.msg .md h1:first-child,.msg .md h2:first-child,.msg .md h3:first-child{margin-top:0}.msg .md code{font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:12.5px;background:var(--code-bg);padding:1px 5px;border-radius:5px}.msg .md pre{background:var(--code-bg);padding:8px 10px;border-radius:8px;overflow:auto;margin:6px 0 8px}.msg .md pre code{background:none;padding:0;font-size:12.5px}.msg .md table{border-collapse:collapse;margin:6px 0 8px}.msg .md th,.msg .md td{border:1px solid var(--border);padding:3px 8px;font-size:12.5px;text-align:left}.msg .md a{color:var(--link)}.proj-tiles{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px}.proj-tiles .tile{padding:13px 14px}.proj-tiles .tile .icon{width:38px;height:38px;font-size:16px;border-radius:11px}.proj-tiles .tile .value{font-size:22px}.tile.active{border-color:var(--primary-2);box-shadow:0 0 0 1px #60a5fa59,var(--shadow)}.tile.good .value{color:var(--t-good-fg)}.rt-strip{gap:6px;margin-top:-4px}.chip-dim{opacity:.6;font-weight:400}.filter-chips{display:flex;gap:6px;flex-wrap:wrap}.filter-chips .chip{cursor:pointer}.proj-table td{padding:8px 12px;vertical-align:middle}.cell-2{line-height:1.3}.cell-main{font-weight:600}.cell-sub{color:var(--dim);font-size:12px;margin-top:2px}.cell-sub.over{color:var(--error)}.progress-cell{display:flex;align-items:center;gap:7px;font-variant-numeric:tabular-nums}.mini-bar{display:inline-block;width:60px;height:6px;border-radius:999px;background:var(--surface-2);overflow:hidden;flex-shrink:0}.mini-bar>i{display:block;height:100%;border-radius:999px;background:var(--grad-primary);transition:width .2s}.mini-bar.done>i{background:linear-gradient(90deg,#42be65,#86efac)}.flags{display:flex;gap:5px;flex-wrap:wrap}.timer-card{text-align:center;padding:30px 18px}.timer-display{font-size:62px;font-weight:600;font-family:var(--font-num);font-variant-numeric:tabular-nums;letter-spacing:2px;background:var(--grad-brand);-webkit-background-clip:text;background-clip:text;color:transparent;transition:filter .3s}.timer-card.running{animation:pulseGlow 2.2s ease-in-out infinite;border-color:#60a5fa8c}.timer-card.running .timer-display{filter:drop-shadow(0 0 14px rgba(96,165,250,.45))}.chat{display:flex;flex-direction:column;gap:10px}.chat .msg{padding:11px 15px;border-radius:14px;max-width:85%;white-space:pre-wrap;line-height:1.5;animation:pageIn .18s ease-out}.chat .msg.user{background:linear-gradient(135deg,var(--primary),#2f6fe0);color:#fff;align-self:flex-end;border-bottom-right-radius:4px;box-shadow:0 3px 12px #3b82f64d}.chat .msg.ai{background:var(--surface-2);border:1px solid var(--border);border-bottom-left-radius:4px}.model-card{display:flex;align-items:center;gap:14px;background:var(--surface-2);border:1px solid var(--border);border-radius:12px;padding:14px;margin-bottom:10px;transition:border-color .13s,transform .13s,box-shadow .13s}.model-card:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.model-card.selected{border-color:var(--primary);box-shadow:0 0 0 3px #3b82f626}.model-card .info{flex:1;min-width:0}.model-card .name{font-weight:600}.model-card .desc{color:var(--dim);font-size:12.5px;margin-top:2px}.progress-track{height:8px;border-radius:4px;background:var(--inset-bg);border:1px solid var(--border);overflow:hidden;margin-top:10px}.progress-fill{height:100%;border-radius:4px;background:var(--grad-brand);transition:width .25s}.sig-doc{width:100%;height:min(46vh,460px);border:1px solid var(--border);border-radius:var(--radius);background:#fff;display:block}.sigpad{width:100%;height:120px;touch-action:none;cursor:crosshair;background:#fff;border:1px dashed var(--border-strong);border-radius:var(--radius);display:block}.sig-typed{font-family:Segoe Script,Brush Script MT,cursive;font-size:22px}.consent{display:flex;gap:9px;align-items:flex-start;margin-top:12px;font-size:12.5px;color:var(--dim);line-height:1.5;cursor:pointer;text-transform:none;letter-spacing:normal;font-weight:400}.consent span{text-transform:none;letter-spacing:normal}.consent input{width:auto;margin:2px 0 0;flex:none}.kanban .col h4 .grow{flex:1}.pipeline .col{min-width:224px;transition:background .15s,border-color .15s}.pipeline .col.drop-over{border-color:var(--primary);background:#3b82f617}.pipeline .card{cursor:grab}.pipeline .card:active{cursor:grabbing}.pipeline .card b{font-size:13px}.pipeline .col-empty{border:1px dashed var(--border-strong);border-radius:11px;padding:14px 10px;text-align:center;color:var(--dim);font-size:12px;opacity:.6}.pipeline .chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.pipeline .chips .badge{font-size:10.5px;padding:1px 6px}.pipeline .card.dragging{opacity:.45}.pipeline .card.blocked{border-left:3px solid var(--accent-2);background-image:repeating-linear-gradient(135deg,transparent 0 6px,rgba(167,139,250,.05) 6px 12px)}.bulk-bar{position:sticky;top:62px;z-index:20;display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:9px 12px;margin-bottom:10px;border-radius:var(--radius);background:var(--glass);border:1px solid rgba(96,165,250,.5);box-shadow:var(--shadow),var(--edge-light);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}tr.selected>td{background:var(--hover-strong)}.chip,.badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;background:var(--t-neutral-bg);color:var(--t-neutral-fg);border:1px solid var(--t-neutral-bd);font-size:var(--fs-sm);font-weight:var(--fw-med);line-height:1.45;letter-spacing:.1px;white-space:nowrap;box-shadow:none}.chip:not(.chip-neutral,.chip-info,.chip-good,.chip-warn,.chip-bad,.chip-accent):hover{color:var(--text);filter:none;transform:none;border-color:#60a5fa80}.chip.active{background:var(--hover-strong);color:var(--text);border-color:#60a5fab3}.badge{font-weight:var(--fw-bold)}.chip-sm,.chip.chip-sm{padding:1px 7px;font-size:var(--fs-xs);gap:4px}.chip-dot:before,.badge:before{content:"";width:6px;height:6px;border-radius:50%;flex:none;background:currentColor;opacity:.9}.chip-sm.chip-dot:before{width:5px;height:5px}.chip-neutral,.badge.gray{background:var(--t-neutral-bg);color:var(--t-neutral-fg);border-color:var(--t-neutral-bd)}.chip-info,.badge.blue{background:var(--t-info-bg);color:var(--t-info-fg);border-color:var(--t-info-bd)}.chip-good,.badge.green{background:var(--t-good-bg);color:var(--t-good-fg);border-color:var(--t-good-bd)}.chip-warn,.badge.amber{background:var(--t-warn-bg);color:var(--t-warn-fg);border-color:var(--t-warn-bd)}.chip-bad,.badge.red{background:var(--t-bad-bg);color:var(--t-bad-fg);border-color:var(--t-bad-bd)}.chip-accent,.badge.purple{background:var(--t-accent-bg);color:var(--t-accent-fg);border-color:var(--t-accent-bd)}.chip-x{opacity:0;font-size:10px;margin-left:-2px}.chip:hover .chip-x{opacity:.55}.chip .chip-x:hover{opacity:1;color:var(--error)}.next-step{display:flex;align-items:center;gap:12px;margin:10px 0 0;padding:10px 14px;border:1px solid var(--t-neutral-bd);border-left-width:3px;border-radius:var(--radius, 8px);background:var(--t-neutral-bg);color:var(--text);text-decoration:none;transition:background .12s ease}.next-step:hover{background:var(--hover-strong)}.next-step-who{flex:none;width:22px;text-align:center;font-size:15px;opacity:.85}.next-step-body{min-width:0;flex:1;line-height:1.35}.next-step-what{display:block;font-weight:var(--fw-med);font-size:13.5px}.next-step-label{text-transform:uppercase;letter-spacing:.7px;font-size:var(--fs-xs, 10.5px);font-weight:600;color:var(--dim);margin-right:8px}.next-step-why{display:block;color:var(--dim);font-size:12px;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.next-step-go{flex:none;color:var(--dim);font-size:17px}.next-step-info{border-left-color:var(--t-info-fg)}.next-step-good{border-left-color:var(--t-good-fg)}.next-step-warn{border-left-color:var(--t-warn-fg)}.next-step-bad{border-left-color:var(--t-bad-fg)}.next-step-accent{border-left-color:var(--t-accent-fg)}.next-step-neutral{border-left-color:var(--t-neutral-fg)}.next-step-skeleton{border-left-color:var(--t-neutral-bd);pointer-events:none}.next-step-chip{max-width:100%;overflow:hidden;text-overflow:ellipsis;text-decoration:none}a.next-step-chip:hover{filter:brightness(1.08)}.next-cell{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}.next-cell .next-step-chip{max-width:250px}.next-cell .next-step-action{flex:none;padding:2px 9px}@media (max-width: 640px){.next-step{gap:8px;padding:9px 11px}.next-step-why{display:none}}.skeleton,.skel,.skeleton-line,.skeleton-block{background:linear-gradient(90deg,var(--surface-2) 25%,var(--surface-3) 50%,var(--surface-2) 75%);background-size:400px 100%;animation:shimmer 1.3s linear infinite;border-radius:6px}.skeleton-line{height:.85em;width:var(--w, 100%);margin:.25em 0;display:block}.skeleton-line+.skeleton-line{margin-top:.5em}.skeleton-block{height:var(--h, 120px);width:100%;border-radius:var(--radius-sm);display:block}@media (prefers-reduced-motion: reduce){.skeleton,.skel,.skeleton-line,.skeleton-block{animation:none!important;background:var(--surface-2)}}.action-card{margin:6px 0 6px 28px;padding:11px 14px;border-radius:12px;background:#8b5cf614;border:1px solid rgba(139,92,246,.4);max-width:78%}.action-card.done{background:#42be6517;border-color:#42be6573}.action-card.dismissed{opacity:.55}.action-head{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--t-accent-fg)}.action-card.done .action-head{color:var(--t-good-fg)}.action-summary{margin-top:4px;font-size:14px}.ai-steps{margin:2px 0 6px 28px;font-size:11.5px;color:var(--dim);font-style:italic}.mic-wrap{position:relative;display:flex}.mic-btn{background:var(--surface-2);border:1px solid var(--border);color:var(--text);padding:0 12px;min-width:42px;display:inline-flex;align-items:center;justify-content:center}.mic-btn:hover:not(:disabled){border-color:var(--primary)}.mic-btn.small{min-width:36px;padding:0 9px;font-size:13px}.mic-btn.live{background:var(--error);border-color:var(--error);color:#fff;animation:micPulse 1.5s ease-in-out infinite}@keyframes micPulse{0%,to{box-shadow:0 0 #ef44448c}50%{box-shadow:0 0 0 7px #ef444400}}.mic-caption{position:absolute;bottom:calc(100% + 8px);right:0;min-width:180px;max-width:320px;z-index:30;background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:7px 11px;font-size:12.5px;line-height:1.4;color:var(--dim);box-shadow:var(--shadow-sm)}.mic-caption.err{color:var(--error);border-color:var(--error)}.ai-bubble{position:fixed;right:22px;bottom:22px;z-index:60;width:52px;height:52px;padding:0;border-radius:50%;font-size:21px;line-height:1;border:none;color:#fff;background:linear-gradient(135deg,var(--primary),#2f6fe0);box-shadow:0 6px 20px #3b82f66b;transition:transform .14s,box-shadow .14s}.ai-bubble:hover{transform:translateY(-2px) scale(1.04);box-shadow:0 9px 26px #3b82f680}.ai-bubble.open{background:var(--surface-2);color:var(--text);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.mini-ai{position:fixed;right:22px;bottom:86px;z-index:60;width:min(400px,calc(100vw - 44px));max-height:min(560px,calc(100vh - 128px));display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:14px;box-shadow:var(--shadow-menu);animation:pageIn .16s ease-out}.mini-ai-head{display:flex;align-items:center;gap:8px;padding-bottom:10px;border-bottom:1px solid var(--border);margin-bottom:10px;font-size:14px}.mini-ai-head .ico{color:var(--t-accent-fg)}.mini-ai-head a{font-size:12px;color:var(--dim)}.mini-ai-head a:hover{color:var(--primary)}.mini-ai-empty{color:var(--dim);font-size:13px;line-height:1.55;padding:10px 2px}.mini-ai .chat{flex:1;overflow-y:auto;min-height:0}.mini-ai .msg{max-width:92%;font-size:13.5px;padding:9px 12px}.mini-ai .empty{font-size:12.5px}@media (max-width: 640px){.mini-ai{right:12px;left:12px;width:auto;bottom:78px}.ai-bubble{right:14px;bottom:14px;width:46px;height:46px}}.tour-dock{position:fixed;right:86px;bottom:22px;z-index:59;width:min(420px,calc(100vw - 120px));max-height:min(640px,calc(100vh - 100px));display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-menu);animation:pageIn .16s ease-out}.tour-head{display:flex;align-items:center;gap:8px;padding:12px 14px 8px}.tour-step{font-size:11px;color:var(--dim);white-space:nowrap;font-family:var(--font-num);letter-spacing:.04em}.tour-title{font-size:14px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tour-progress{height:3px;margin:0 14px;border-radius:999px;background:var(--inset-bg);overflow:hidden}.tour-progress>i{display:block;height:100%;border-radius:999px;background:var(--primary);transition:width .2s}.tour-body{flex:1;min-height:0;overflow-y:auto;padding:10px 14px 4px;font-size:13.5px;line-height:1.55}.tour-open{margin-bottom:10px}.tour-summary{margin:0 0 8px;color:var(--text)}.tour-sub{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--dim);margin:10px 0 4px}.tour-features{margin:0;padding-left:18px;color:var(--text)}.tour-features li{margin-bottom:3px}.tour-proc{border:1px solid var(--border);border-radius:var(--radius-sm);margin-bottom:6px;background:var(--zebra)}.tour-proc>summary{cursor:pointer;padding:7px 10px;font-weight:600;font-size:13px;list-style:none;display:flex;gap:8px;align-items:center}.tour-proc>summary::-webkit-details-marker{display:none}.tour-proc>summary:before{content:"▸";color:var(--dim);font-size:11px}.tour-proc[open]>summary:before{content:"▾"}.tour-proc ol{margin:0;padding:0 12px 10px 30px}.tour-proc li{margin-bottom:4px}.tour-more{display:inline-block;margin:6px 0 8px;font-size:12.5px;color:var(--dim)}.tour-more:hover{color:var(--primary)}.tour-foot{display:flex;align-items:center;gap:8px;padding:10px 14px 12px;border-top:1px solid var(--border)}.tour-foot select{flex:1;min-width:0;font-size:12.5px}@media (max-width: 640px){.tour-dock{right:12px;left:12px;width:auto;bottom:78px;max-height:calc(100vh - 150px)}}.wiz-steps{display:flex;gap:8px;flex-wrap:wrap;margin:-4px 0 18px}.wiz-step{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--dim);padding:5px 12px 5px 6px;border-radius:999px;border:1px solid transparent}.wiz-step .wiz-dot{width:20px;height:20px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;background:var(--surface-2);color:var(--dim);flex:0 0 auto}.wiz-step.current{color:var(--text);border-color:var(--border);background:var(--surface-2)}.wiz-step.current .wiz-dot{background:linear-gradient(180deg,#8b5cf6,#7c3aed);color:#fff}.wiz-step.done{color:var(--t-good-fg)}.wiz-step.done .wiz-dot{background:var(--t-good-bg);color:var(--t-good-fg)}.wiz-choices{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.wiz-choice{display:block;text-align:left;width:100%;background:var(--surface);color:var(--text);font:inherit;border:1px solid var(--border);border-radius:12px;padding:14px 16px;cursor:pointer;transition:border-color .15s,transform .15s,box-shadow .15s}.wiz-choice:hover:not(:disabled){border-color:var(--border-strong);transform:translateY(-2px);box-shadow:var(--shadow-lift)}.wiz-choice.selected{border-color:#8b5cf6d9;box-shadow:0 0 0 1px #8b5cf673 inset}.wiz-choice:disabled{opacity:.55;cursor:not-allowed;transform:none}.wiz-choice-head{display:flex;align-items:center;gap:8px;margin-bottom:6px}.wiz-choice-head b{font-size:14.5px}.wiz-choice p{color:var(--dim);font-size:12.5px;margin:0 0 8px;line-height:1.5}.wiz-choice ul{margin:0;padding-left:17px;color:var(--dim);font-size:12px;line-height:1.65}.wiz-tabs{display:flex;gap:6px;margin-bottom:14px;border-bottom:1px solid var(--border)}.wiz-tabs button{background:none;border:none;border-bottom:2px solid transparent;border-radius:0;color:var(--dim);font:inherit;font-size:13px;padding:8px 12px;cursor:pointer;box-shadow:none}.wiz-tabs button:hover{color:var(--text);transform:none}.wiz-tabs button.active{color:var(--text);font-weight:600;border-bottom-color:var(--accent-2, #a78bfa)}.wiz-note{border:1px solid var(--border);border-left:3px solid var(--accent-2, #a78bfa);border-radius:8px;background:var(--inset-bg);padding:11px 14px;font-size:12.5px;line-height:1.6;color:var(--dim);margin:14px 0}.wiz-note b{color:var(--text)}.season-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12.5px;color:var(--dim);margin:2px 0 14px}.season-line .num{font-variant-numeric:tabular-nums;color:var(--text)}.season-line .good{color:var(--t-good-fg);font-variant-numeric:tabular-nums}.season-line .bad{color:var(--t-bad-fg);font-variant-numeric:tabular-nums}.season-line .dim{color:var(--dim);font-variant-numeric:tabular-nums}.season-line.skel{height:16px;border-radius:4px}.row-link{display:block;width:100%;height:100%;cursor:pointer}.draft-facts{display:flex;flex-direction:column;gap:3px;border:1px solid var(--border);border-radius:8px;padding:8px 10px;background:var(--bg);max-height:220px;overflow-y:auto}.draft-fact{display:flex;gap:10px;align-items:baseline;font-size:12.5px;padding:2px 4px;border-radius:4px}.draft-fact.used{background:var(--hover, rgba(127, 127, 127, .1))}.draft-fact-label{color:var(--dim);flex:0 0 40%}.draft-fact-value{color:var(--text);white-space:pre-wrap;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.draft-for-me{margin-top:4px}.ai-chips{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0 2px}.ai-chips .chip{cursor:pointer}.ai-view-link{display:inline-block;margin:4px 0 2px;font-size:12.5px}.mini-ai-thread{font-size:11.5px;color:var(--dim)}.rail{width:248px;flex-shrink:0;background:var(--sidebar-grad);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-right:1px solid var(--border);padding:var(--pad) calc(var(--pad) * .6) 14px;display:flex;flex-direction:column;gap:4px;position:sticky;top:0;height:100vh;overflow-y:auto;font-size:var(--font-body)}.rail>*{flex-shrink:0}.rail.collapsed{width:64px;padding-left:8px;padding-right:8px}.rail-brand{display:flex;align-items:center;gap:10px;padding:4px 6px 14px;color:var(--text)}.rail-brand svg{flex-shrink:0;filter:drop-shadow(0 2px 10px rgba(212,42,60,.4))}.rail-word{font-size:17px;font-weight:600;letter-spacing:3.2px;color:var(--text);white-space:nowrap;overflow:hidden}.rail-ws{display:flex;flex-direction:column;gap:2px;padding-bottom:8px;margin-bottom:6px;border-bottom:1px solid var(--border)}.rail.collapsed .rail-ws{align-items:center}.rail-ws-btn{display:flex;align-items:center;gap:10px;background:none;border:none;box-shadow:none;border-radius:10px;padding:8px 10px;color:var(--dim);font:inherit;font-weight:600;font-size:var(--fs-sm);letter-spacing:.2px;text-align:left;cursor:pointer;width:100%;transition:background .13s,color .13s}.rail.collapsed .rail-ws-btn{width:auto;justify-content:center;padding:8px}.rail-ws-btn .ico{width:18px;text-align:center;font-size:15px;flex-shrink:0}.rail-ws-btn:hover{background:var(--hover);color:var(--text)}.rail-ws-btn.active{background:var(--grad-primary);color:#fff;box-shadow:0 4px 14px #3b82f659,var(--edge-light)}.rail-collapse-toggle{background:none;border:none;box-shadow:none;color:var(--dim);font-size:11.5px;font-weight:500;padding:3px 8px 8px;text-align:left;cursor:pointer;width:100%}.rail.collapsed .rail-collapse-toggle{text-align:center}.rail-collapse-toggle:hover{color:var(--text)}.rail-items{display:flex;flex-direction:column;gap:2px}.rail-group+.rail-group{margin-top:10px}.rail-group-title{font-size:var(--fs-xs);font-weight:600;letter-spacing:1.4px;text-transform:uppercase;color:var(--dim);opacity:.75;padding:8px 10px 4px}.rail-item{position:relative}.rail-item>a{display:flex;align-items:center;gap:10px;color:var(--dim);text-decoration:none;padding:calc(var(--row-h) * .24) 10px;border-radius:10px;font-weight:500;min-height:var(--row-h);transition:background .13s,color .13s}.rail.collapsed .rail-item>a{justify-content:center;padding:9px 0}.rail-item .ico{width:20px;text-align:center;font-size:15px;opacity:.85;flex-shrink:0}.rail-item>a:hover{background:var(--hover);color:var(--text)}.rail-item>a.active{background:var(--grad-primary);color:#fff;box-shadow:0 4px 18px #3b82f66b,var(--edge-light)}.rail-item.anchor{padding-bottom:6px;margin-bottom:4px;border-bottom:1px solid var(--border)}.rail-pin{position:absolute;right:4px;top:50%;transform:translateY(-50%);background:none;border:none;box-shadow:none;padding:2px 5px;border-radius:7px;cursor:pointer;color:var(--dim);font-size:13px;line-height:1;opacity:0;transition:opacity .13s,color .13s,background .13s}.rail-item:hover .rail-pin,.rail-pin:focus-visible{opacity:1}.rail-pin:hover{background:var(--hover-strong);color:var(--primary-2)}.rail-item.pinned .rail-pin{opacity:.7;color:var(--primary-2)}.rail-item:has(a.active) .rail-pin{color:#ffffffd9}.rail-item:has(a.active) .rail-pin:hover{background:#ffffff2e;color:#fff}.rail-spacer{flex:1}.rail-customise{margin:8px 4px 0;padding:7px 10px;background:none;border:1px dashed var(--border);border-radius:10px;box-shadow:none;color:var(--dim);font-size:var(--fs-sm);font-weight:500;text-align:left;white-space:nowrap;cursor:pointer;transition:border-color .13s,color .13s}.rail.collapsed .rail-customise{text-align:center}.rail-customise:hover{border-color:#60a5fa8c;color:var(--text);background:var(--hover)}.rail-cmdk{display:flex;align-items:center;justify-content:space-between;margin:8px 4px 0;padding:8px 10px;background:var(--inset-bg);border:1px solid var(--border);border-radius:10px;color:var(--dim);font-size:var(--fs-sm);cursor:pointer;transition:border-color .13s,color .13s}.rail-cmdk:hover{border-color:#60a5fa80;color:var(--text)}.rail-user{display:flex;align-items:center;gap:10px;margin-top:10px;padding:10px;background:var(--surface-2);border:1px solid var(--border);border-radius:12px;box-shadow:var(--edge-light)}.rail.collapsed .rail-user{justify-content:center;padding:8px}.rail-avatar{width:32px;height:32px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--primary),var(--accent));display:flex;align-items:center;justify-content:center;font-weight:600;color:#fff;font-size:12.5px;box-shadow:0 3px 10px #8b5cf659}.rail-who{font-size:var(--fs-sm);line-height:1.35;min-width:0}.rail-who b{display:block;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rail-who a{padding:0;color:var(--primary-2);font-size:var(--fs-xs)}.rail-who a:hover{background:none;text-decoration:underline}.rail-item>a:focus-visible,.rail-ws-btn:focus-visible,.rail-collapse-toggle:focus-visible,.rail-customise:focus-visible,.rail-cmdk:focus-visible{outline:2px solid var(--primary-2);outline-offset:2px}a:focus-visible,button:focus-visible,summary:focus-visible,[role=button]:focus-visible,[role=tab]:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--primary-2);outline-offset:2px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--primary-2);outline-offset:1px}tbody tr:focus-visible,tbody tr.row-active>td{outline:2px solid var(--primary-2);outline-offset:-2px}tbody tr.row-active{background:var(--hover-strong)}:root[data-density=compact] .main{padding:16px 22px 34px}:root[data-density=compact] .topbar{padding:6px 18px}:root[data-density=compact] .panel{margin-bottom:12px}:root[data-density=compact] h1{margin-bottom:4px}:root[data-density=compact] h2{margin:18px 0 9px}:root[data-density=compact] .subtitle{margin-bottom:14px}:root[data-density=compact] .toolbar{gap:8px;margin-bottom:11px}:root[data-density=compact] .tiles{gap:10px}:where(:root[data-density=compact]) button,:where(:root[data-density=compact]) .btn{padding:6px 13px}:where(:root[data-density=compact]) button.small{padding:3px 9px}:where(:root[data-density=compact]) input,:where(:root[data-density=compact]) select,:where(:root[data-density=compact]) textarea{padding-top:6px;padding-bottom:6px}:root[data-density=compact] .tabs{padding:3px;margin-bottom:12px}:root[data-density=compact] .tabs button{padding:5px 12px}:root[data-density=compact] .modal .actions{margin-top:12px}:where(:root[data-density=compact]) .chip,:where(:root[data-density=compact]) .badge{padding:2px 8px}@media (max-width: 900px){.main{padding:16px 14px 36px}.tiles{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}.proj-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.row>*{min-width:0;flex-basis:100%}.row>.fit{flex-basis:auto}.toolbar{gap:8px}.toolbar input[type=search],.toolbar input[type=text]{max-width:none;flex:1 1 170px}.toolbar select{max-width:none;flex:1 1 150px}.page-head{align-items:flex-start}.table-wrap,.tablewrap{max-height:none}.modal.xl{min-height:0}.notif-panel{width:min(340px,calc(100vw - 24px))}}@media (max-width: 900px){.table-wrap.sticky-first th:first-child,.table-wrap.sticky-first td:first-child{position:sticky;left:0;z-index:1;background:var(--surface);box-shadow:1px 0 0 var(--border)}.table-wrap.sticky-first thead th:first-child{z-index:3;background:var(--thead-bg)}.table-wrap.sticky-first tbody tr:nth-child(2n) td:first-child{background:var(--surface-2)}}@media (max-width: 640px){.main{padding:12px 10px 30px}.topbar{padding:6px 10px;gap:6px}.proj-tiles,.tiles{grid-template-columns:1fr}.modal-overlay{padding:0;align-items:stretch}.modal,.modal.wide,.modal.xl{max-width:100%;min-height:100vh;border-radius:0;border-left:none;border-right:none;padding:16px 13px}.modal .actions{flex-wrap:wrap}.quick-actions{gap:6px}h1{font-size:calc(var(--fs-2xl) * .82)}#toasts{left:10px;right:10px;max-width:none}}@media (prefers-reduced-motion: reduce){.timer-chip.running,.timer-card.running,.timer-chip.running .dot,.mic-btn.live,.login-card .brand svg,.login-wrap:before,.login-wrap:after,.main>div,.chat .msg,.notif-panel,.more-menu-panel,.cmdk,.modal,.modal-overlay,.toast,.mini-ai,.tour-dock{animation:none!important}.timer-chip.running{box-shadow:0 0 0 1px #60a5fab3}.timer-card.running{border-color:#60a5fab3}.timer-chip.running .dot{opacity:1}.mic-btn.live{box-shadow:0 0 0 3px #ef444466}.spinner{animation:none!important;border-top-color:currentColor;opacity:.45}.tile:hover,.kanban .card:hover,.model-card:hover,.wiz-choice:hover,.ai-bubble:hover,.rail-item>a:hover,button:hover{transform:none!important}}.proj-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;column-gap:24px;margin-bottom:0}.proj-head>.proj-facts{grid-column:1 / -1}.proj-crumb{display:flex;align-items:center;gap:10px;margin-bottom:6px;min-height:24px;font-size:12.5px}.proj-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.proj-facts{display:flex;flex-wrap:wrap;gap:4px 22px;margin-top:12px;min-height:20px}.proj-fact{display:flex;align-items:baseline;gap:6px;font-size:13px;min-width:0}.proj-fact-label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.6px;color:var(--dim);font-weight:var(--fw-med)}.proj-fact-value{font-variant-numeric:tabular-nums;display:inline-flex;align-items:baseline}.proj-page .next-step{margin-top:14px}.proj-facts .inline-ctl{padding:1px 6px;margin:-1px -6px;font-size:13px}.proj-facts .inline-date[data-empty=true]:before{left:0}.proj-facts select.inline-ctl{padding-right:18px;margin-right:-18px}.inline-budget input{width:56px;text-align:right;-moz-appearance:textfield}.inline-budget input::-webkit-outer-spin-button,.inline-budget input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.inline-ctl.tone-bad{color:var(--t-bad-fg);font-weight:var(--fw-med)}.inline-ctl.tone-warn{color:var(--t-warn-fg);font-weight:var(--fw-med)}.proj-side{display:flex;flex-direction:column;align-items:flex-end;gap:12px}.stage-track{display:flex;align-items:flex-start;gap:0;margin:0;padding:0;list-style:none}.stage-step{position:relative;display:flex;flex-direction:column;align-items:center;gap:5px;min-width:64px;padding:0 2px;font-size:10.5px;color:var(--dim);white-space:nowrap}.stage-step:before{content:"";position:absolute;top:5px;left:-50%;width:100%;height:2px;background:var(--border)}.stage-step:first-child:before{display:none}.stage-step.past:before,.stage-step.now:before{background:var(--primary);opacity:.7}.stage-dot{position:relative;z-index:1;width:11px;height:11px;border-radius:50%;border:2px solid var(--border);background:var(--surface);box-sizing:border-box}.stage-step.past .stage-dot{background:var(--primary);border-color:var(--primary);opacity:.7}.stage-step.now .stage-dot{background:var(--primary);border-color:var(--primary);box-shadow:0 0 0 3px #3b82f640}.stage-step.now{color:var(--text);font-weight:var(--fw-bold)}.stage-step.past{color:var(--text);opacity:.75}.ptabs{display:flex;flex-wrap:wrap;align-items:flex-end;gap:4px 18px;margin:16px 0 18px;border-bottom:1px solid var(--border)}.ptab-group{display:flex;flex-direction:column;gap:2px}.ptab-group-label{font-size:10px;text-transform:uppercase;letter-spacing:.9px;color:var(--dim);padding-left:9px;font-weight:var(--fw-bold);opacity:.8}.ptab-buttons{display:flex;gap:2px}.ptab-buttons button{background:transparent;color:var(--dim);border:none;border-bottom:2px solid transparent;border-radius:0;padding:7px 9px 9px;margin-bottom:-1px;font-weight:500;font-size:13.5px;box-shadow:none;display:inline-flex;align-items:center;gap:6px}.ptab-buttons button:hover{color:var(--text);background:transparent;filter:none;box-shadow:none;transform:none;border-bottom-color:var(--border-hover)}.ptab-buttons button.active{color:var(--text);font-weight:var(--fw-bold);border-bottom-color:var(--primary);background:transparent}.ptab-count{font-size:10.5px;font-weight:var(--fw-bold);line-height:1;padding:3px 6px;border-radius:999px;background:var(--t-neutral-bg);color:var(--t-neutral-fg);border:1px solid var(--t-neutral-bd);font-variant-numeric:tabular-nums}.ptab-count-warn{background:var(--t-warn-bg);color:var(--t-warn-fg);border-color:var(--t-warn-bd)}.task-toolbar{margin-bottom:10px;min-height:30px}.task-progress{display:flex;align-items:center;gap:9px;font-size:12.5px;color:var(--dim);font-variant-numeric:tabular-nums}.task-progress .mini-bar{width:110px}.task-table th:first-child,.task-table td:first-child{width:34px;padding-right:0}.task-table td{white-space:nowrap}.task-table th:nth-child(2),.task-table td:nth-child(2){width:100%;white-space:normal}.task-table input[type=checkbox]{width:16px;height:16px;margin:0;vertical-align:middle}.task-desc.done{text-decoration:line-through;opacity:.5}.task-add{margin-top:12px}.inline-ctl{width:auto;min-width:0;background:transparent;border-color:transparent;padding:4px 8px;font-size:13px;border-radius:6px;color:var(--text);cursor:pointer;font-variant-numeric:tabular-nums}.inline-ctl:hover{background:var(--input-bg);border-color:var(--border-strong)}.inline-ctl:focus{background:var(--input-bg-focus);border-color:var(--primary)}.inline-ctl[data-empty=true]{color:var(--dim)}select.inline-ctl{padding-right:20px}.inline-ctl[type=date]::-webkit-calendar-picker-indicator{display:none}.inline-date{position:relative;display:inline-block}.inline-date[data-empty=true] input,.inline-date[data-empty=true] input::-webkit-datetime-edit{color:transparent}.inline-date[data-empty=true]:before{content:"—";position:absolute;left:8px;top:50%;transform:translateY(-50%);color:var(--dim);pointer-events:none;font-size:13px}.inline-date[data-empty=true]:hover input,.inline-date[data-empty=true]:hover input::-webkit-datetime-edit,.inline-date[data-empty=true] input:focus,.inline-date[data-empty=true] input:focus::-webkit-datetime-edit{color:var(--dim)}.inline-date[data-empty=true]:hover:before,.inline-date[data-empty=true]:focus-within:before{content:none}:root[data-density=compact] .ptab-buttons button{padding:5px 9px 7px;font-size:13px}:root[data-density=compact] .ptabs{margin:12px 0}@media (max-width: 900px){.ptabs{gap:2px 14px}.proj-facts{gap:4px 16px}.proj-head{grid-template-columns:minmax(0,1fr)}.proj-side{align-items:flex-start}.stage-step{min-width:22px}.stage-step:not(.now) .stage-label{display:none}}.board-note{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:2px 0 10px;font-size:12.5px;color:var(--dim)}.board-note .dim{color:var(--dim)}.kanban .col h4 .col-link{text-transform:none;letter-spacing:0;font-size:11.5px;font-weight:500;color:var(--primary);margin-right:8px;white-space:nowrap}.kanban .col h4 .col-link:hover{text-decoration:underline}.filter-chips .chip-link{display:inline-flex;align-items:center;font-size:var(--fs-xs);color:var(--primary);padding:1px 4px;white-space:nowrap;text-decoration:none}.filter-chips .chip-link:hover{text-decoration:underline}.proj-board.at-filing .col{max-width:420px}.quick-create .create-preview{border:1px solid var(--border);border-radius:10px;padding:10px 12px;margin:2px 0 12px;background:var(--surface-2);font-size:13px;line-height:1.6}.quick-create .create-preview.warn{border-color:var(--warn, #d97706);background:#d9770614}.quick-create .create-preview .dim{color:var(--dim)}.quick-create .create-preview-line{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.quick-create .actions{display:flex;align-items:center;gap:8px;margin-top:4px}.wp-group table,.wp-group th:first-child,.wp-group td:first-child{width:100%}.wp-group th:not(:first-child),.wp-group td:not(:first-child){white-space:nowrap}.wp-group td:first-child{white-space:normal}.wp-group td:first-child>span{flex-wrap:wrap;overflow-wrap:anywhere}.wrap-first table{width:100%}.wrap-first td:first-child{white-space:normal;width:100%}.wrap-first th:not(:first-child),.wrap-first td:not(:first-child){white-space:nowrap;vertical-align:top}.wrap-first td:not(:first-child) input[type=number]{padding:4px 6px}
