@font-face{font-family:Inter;src:url(/fonts/inter-variable.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/ibm-plex-mono-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/ibm-plex-mono-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/ibm-plex-mono-SemiBold.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}:root{--brand: #01417c;--brand-hover: #013568;--brand-press: #01264e;--brand-tint: #e8f0f8;--brand-tint-2: #d3e2f1;--chrome-1: #01264e;--chrome-2: #013568;--chrome-line: rgba(255, 255, 255, .08);--chrome-text: #c9d6e6;--chrome-text-strong: #ffffff;--canvas: #f3f5f8;--grid-line: rgba(1, 65, 124, .045);--card: #ffffff;--card-sub: #f8fafc;--border: #d8dee6;--border-strong: #c3ccd8;--text: #0f172a;--text-2: #334155;--muted: #64748b;--input-bg: #ffffff;--input-border: #c3ccd8;--row-hover: #f5f8fb;--ok: #16a34a;--ok-bg: #e8f6ec;--ok-text: #166534;--wait: #d97706;--wait-bg: #fdf3e1;--wait-text: #92400e;--plan: #2563eb;--plan-bg: #e8effd;--plan-text: #1e40af;--fault: #dc2626;--fault-bg: #fdecec;--fault-text: #991b1b;--draft: #94a3b8;--draft-bg: #eef1f5;--draft-text: #475569;--radius-sm: 6px;--radius: 10px;--radius-lg: 12px;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .05);--shadow: 0 1px 2px rgba(15, 23, 42, .04), 0 4px 14px rgba(15, 23, 42, .05);--shadow-lg: 0 8px 30px rgba(1, 38, 78, .14);--focus: 0 0 0 3px rgba(1, 65, 124, .28);--focus-ring: 2px solid #2f7fd0;--font: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;--mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--sidebar-w: 248px;--topbar-h: 60px}[data-mantine-color-scheme=dark]{--canvas: #0b1524;--grid-line: rgba(140, 180, 230, .045);--card: #111e30;--card-sub: #0e1a2b;--border: #22324a;--border-strong: #2c3f5c;--text: #e6edf6;--text-2: #c3cfdf;--muted: #8ea0b8;--input-bg: #0d1828;--input-border: #2c3f5c;--row-hover: #15253b;--brand-tint: #12304f;--brand-tint-2: #1a3d63;--ok-bg: rgba(22, 163, 74, .16);--ok-text: #6ee7a0;--wait-bg: rgba(217, 119, 6, .18);--wait-text: #fcc56b;--plan-bg: rgba(37, 99, 235, .2);--plan-text: #9dbbff;--fault-bg: rgba(220, 38, 38, .2);--fault-text: #fca5a5;--draft-bg: rgba(148, 163, 184, .16);--draft-text: #cbd5e1;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 4px 14px rgba(0, 0, 0, .25)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font);font-size:14px;line-height:1.5;color:var(--text);background-color:var(--canvas);background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:32px 32px;-webkit-font-smoothing:antialiased;font-feature-settings:"cv11","ss01"}a{color:var(--brand);text-decoration:none}[data-mantine-color-scheme=dark] a{color:#7db3ea}a:hover{text-decoration:underline}h1,h2,h3,h4{margin:0;color:var(--text);letter-spacing:-.01em}p{margin:0}.mono,code{font-family:var(--mono);font-size:.92em;letter-spacing:0}.muted{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}:focus-visible{outline:var(--focus-ring);outline-offset:2px}svg.i{width:18px;height:18px;flex:none;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}svg.i.sm{width:16px;height:16px}svg.i.xs{width:14px;height:14px}.skip-link{position:absolute;left:8px;top:-40px;z-index:100;background:var(--brand);color:#fff;padding:8px 12px;border-radius:6px}.skip-link:focus{top:8px}.app{display:grid;grid-template-columns:var(--sidebar-w) 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,var(--chrome-1) 0%,#012a57 60%,var(--chrome-1) 100%);color:var(--chrome-text);display:flex;flex-direction:column;border-right:1px solid #001a38;z-index:40}.sb-brand{display:flex;align-items:center;gap:10px;height:var(--topbar-h);padding:0 18px;border-bottom:1px solid var(--chrome-line)}.sb-brand img{height:40px;margin-left:-6px;width:auto}.sb-brand .t1{color:#fff;font-weight:800;font-size:13.5px;letter-spacing:.04em;line-height:1.1}.sb-brand .t2{color:#8fb4dc;font-weight:700;font-size:11px;letter-spacing:.16em}.sb-section{padding:16px 12px 4px}.sb-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.12em;color:#7d97b8;padding:0 10px 8px;font-weight:600}.sb-nav{list-style:none;margin:0;padding:0;display:grid;gap:2px}.sb-nav a{display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:8px;color:var(--chrome-text);font-weight:500;font-size:14px;position:relative}.sb-nav a:hover{background:#ffffff0f;color:#fff;text-decoration:none}.sb-nav a[aria-current=page]{background:#ffffff1a;color:#fff;font-weight:600;box-shadow:inset 0 0 0 1px #ffffff0f}.sb-nav a[aria-current=page]:before{content:"";position:absolute;left:-12px;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:#5fa8f0}.sb-nav .count{margin-left:auto;font-family:var(--mono);font-size:11px;background:#ffffff1a;color:#dce7f3;padding:1px 7px;border-radius:999px}.sb-nav a.soon{opacity:.6}.sb-foot{margin-top:auto;padding:12px;border-top:1px solid var(--chrome-line)}.sb-sys{display:flex;align-items:center;gap:8px;font-size:12px;color:#9db3ce;padding:8px 10px}.sb-sys .dot{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 3px #22c55e2e}.main-wrap{min-width:0;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:30;height:var(--topbar-h);background:var(--chrome-2);color:#fff;display:flex;align-items:center;gap:14px;padding:0 24px;border-bottom:1px solid #012a57;box-shadow:0 1px #ffffff0a inset}.topbar .tb-menu{display:none}.tb-search{flex:1;max-width:520px;position:relative}.tb-search input{width:100%;height:38px;border-radius:8px;border:1px solid rgba(255,255,255,.14);background:#ffffff12;color:#fff;padding:0 64px 0 38px;font:inherit;font-size:13.5px}.tb-search input::placeholder{color:#a9bfd9}.tb-search input:focus{outline:none;background:#ffffff1f;border-color:#7db3ea;box-shadow:0 0 0 3px #7db3ea4d}.tb-search .i{position:absolute;left:12px;top:10px;color:#a9bfd9}.tb-search kbd{position:absolute;right:10px;top:9px;font-family:var(--mono);font-size:11px;color:#c9d6e6;border:1px solid rgba(255,255,255,.2);border-radius:4px;padding:0 6px}.tb-right{margin-left:auto;display:flex;align-items:center;gap:6px}.tb-btn{width:38px;height:38px;display:inline-grid;place-items:center;border-radius:8px;color:#dce7f3;background:transparent;border:0;cursor:pointer;position:relative}.tb-btn:hover{background:#ffffff14;color:#fff}.tb-btn .badge{position:absolute;top:7px;right:7px;width:8px;height:8px;border-radius:50%;background:#ef4444;box-shadow:0 0 0 2px var(--chrome-2)}.tb-user{display:flex;align-items:center;gap:10px;padding:4px 8px 4px 4px;border-radius:10px;margin-left:6px;border:1px solid transparent}.tb-user:hover{background:#ffffff0f}.avatar{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;font-weight:700;font-size:12.5px;color:#fff;background:linear-gradient(135deg,#2f7fd0,#01417c);letter-spacing:.02em}.tb-user .n{font-size:13px;font-weight:600;line-height:1.15;color:#fff}.tb-user .r{font-size:11.5px;color:#a9bfd9}.sb-backdrop{display:none}main.content{padding:24px 28px 48px;max-width:1440px;width:100%}main.content.has-savebar{padding-bottom:110px}.crumbs{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--muted);margin-bottom:8px;flex-wrap:wrap}.crumbs a{color:var(--muted)}.crumbs a:hover{color:var(--brand)}.crumbs .sep{opacity:.6}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:20px;flex-wrap:wrap}.page-head h1{font-size:24px;font-weight:700;line-height:1.2}.page-head .sub{color:var(--muted);margin-top:4px}.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:38px;padding:0 14px;border-radius:8px;font:inherit;font-weight:600;font-size:13.5px;white-space:nowrap;border:1px solid var(--border-strong);background:var(--card);color:var(--text);cursor:pointer;transition:background .12s,border-color .12s,box-shadow .12s,transform .05s;text-decoration:none!important}.btn:hover{background:var(--card-sub);border-color:#aeb9c7}.btn:active{transform:translateY(1px)}.btn:focus-visible{outline:none;box-shadow:var(--focus);border-color:var(--brand)}.btn-primary{background:var(--brand);border-color:var(--brand);color:#fff!important;box-shadow:0 1px 2px #01264e40,inset 0 1px #ffffff1f}.btn-primary:hover{background:var(--brand-hover);border-color:var(--brand-hover)}.btn-primary:active{background:var(--brand-press)}.btn-lg{height:44px;padding:0 20px;font-size:14.5px;border-radius:9px}.btn-sm{height:32px;padding:0 10px;font-size:12.5px;border-radius:7px}.btn-ghost{background:transparent;border-color:transparent;color:var(--text-2)}.btn-ghost:hover{background:var(--brand-tint);border-color:transparent;color:var(--brand)}.btn-danger{color:var(--fault-text);border-color:#f1b7b7;background:var(--card)}.btn-danger:hover{background:var(--fault-bg);border-color:var(--fault)}.btn-icon{width:38px;padding:0}.btn-block{width:100%}.kbd{font-family:var(--mono);font-size:11px;padding:0 5px;border-radius:4px;border:1px solid rgba(255,255,255,.35);opacity:.85}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--border)}.card-head h2,.card-head h3{font-size:15px;font-weight:650;display:flex;align-items:center;gap:8px}.card-head .meta{font-size:12.5px;color:var(--muted)}.card-body{padding:18px}.card-foot{padding:12px 18px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--muted)}.card.flush .card-body{padding:0}.grid{display:grid;gap:16px}.g-2{grid-template-columns:repeat(2,minmax(0,1fr))}.g-3{grid-template-columns:repeat(3,minmax(0,1fr))}.g-4{grid-template-columns:repeat(4,minmax(0,1fr))}.g-main{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.g-main>.card{align-self:start}.stack{display:grid;gap:16px;align-content:start}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.kpi{padding:16px 18px;position:relative;overflow:hidden}.kpi .k-top{display:flex;align-items:center;justify-content:space-between}.kpi .k-label{font-size:12.5px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.kpi .k-icon{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:var(--brand-tint);color:var(--brand)}[data-mantine-color-scheme=dark] .kpi .k-icon{color:#9cc6f2}.kpi .k-value{font-size:30px;font-weight:750;letter-spacing:-.02em;margin-top:6px;line-height:1.1;font-variant-numeric:tabular-nums}.kpi .k-foot{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--muted);margin-top:6px}.kpi .trend-up{color:var(--ok-text);font-weight:600}.kpi .trend-down{color:var(--fault-text);font-weight:600}.kpi:after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--accent, transparent)}.kpi.k-ok{--accent: var(--ok)}.kpi.k-wait{--accent: var(--wait)}.kpi.k-plan{--accent: var(--plan)}.kpi.k-fault{--accent: var(--fault)}.kpi.compact{display:flex;align-items:center;gap:14px}.kpi.compact .k-value{font-size:22px;margin:0}.kpi .bar{height:6px;border-radius:999px;background:var(--card-sub);border:1px solid var(--border);margin-top:10px;overflow:hidden}.kpi .bar>span{display:block;height:100%;background:var(--brand);border-radius:inherit}.lamp{display:inline-flex;align-items:center;gap:7px;height:24px;padding:0 10px 0 8px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap;background:var(--draft-bg);color:var(--draft-text)}.lamp:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--draft);box-shadow:0 0 0 3px color-mix(in srgb,var(--draft) 22%,transparent)}.lamp.ok{background:var(--ok-bg);color:var(--ok-text)}.lamp.ok:before{background:var(--ok);box-shadow:0 0 0 3px #16a34a33,0 0 6px #16a34a99}.lamp.done{background:var(--ok-bg);color:var(--ok-text)}.lamp.done:before{background:var(--ok);box-shadow:0 0 0 3px #16a34a33}.lamp.wait{background:var(--wait-bg);color:var(--wait-text)}.lamp.wait:before{background:var(--wait);box-shadow:0 0 0 3px #d9770633,0 0 6px #d9770680}.lamp.plan{background:var(--plan-bg);color:var(--plan-text)}.lamp.plan:before{background:var(--plan);box-shadow:0 0 0 3px #2563eb33}.lamp.fault{background:var(--fault-bg);color:var(--fault-text)}.lamp.fault:before{background:var(--fault);box-shadow:0 0 0 3px #dc262633,0 0 6px #dc26268c}.lamp.draft{background:var(--draft-bg);color:var(--draft-text)}.lamp.cancel{background:var(--draft-bg);color:var(--draft-text);text-decoration:line-through;text-decoration-thickness:1px}.lamp.lg{height:30px;font-size:13px;padding:0 12px 0 10px}.dot-only{width:9px;height:9px;border-radius:50%;display:inline-block;background:var(--draft)}.dot-only.ok{background:var(--ok)}.dot-only.wait{background:var(--wait)}.dot-only.plan{background:var(--plan)}.dot-only.fault{background:var(--fault)}.tag{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 8px;border-radius:6px;font-size:12px;font-weight:500;background:var(--card-sub);border:1px solid var(--border);color:var(--text-2);white-space:nowrap}.prio-high{color:var(--fault-text);font-weight:600}.code{white-space:nowrap;font-family:var(--mono);font-weight:500;font-size:12.8px;color:var(--text);letter-spacing:-.01em}a.code{color:var(--brand)}[data-mantine-color-scheme=dark] a.code{color:#7db3ea}.table-wrap{overflow-x:auto}table.table{width:100%;border-collapse:separate;border-spacing:0;font-size:13.5px}.table th{text-align:left;font-weight:600;font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);background:var(--card-sub);padding:10px 16px;border-bottom:1px solid var(--border);white-space:nowrap;position:sticky;top:0}.table th.sortable{cursor:pointer}.table th .i{vertical-align:-3px;opacity:.6}.table td{padding:13px 16px;border-bottom:1px solid var(--border);vertical-align:middle}.table tbody tr{transition:background .1s}.table tbody tr:hover td{background:var(--row-hover)}.table tbody tr:last-child td{border-bottom:0}.table td.num,.table th.num{text-align:right;font-variant-numeric:tabular-nums}.table .cell-main{font-weight:600;color:var(--text)}.table .cell-sub{font-size:12.5px;color:var(--muted)}.table .row-actions{text-align:right;white-space:nowrap}.table.compact td,.table.compact th{padding:7px 16px}.table.compact .cell-sub{display:none}.table input[type=checkbox]{width:16px;height:16px;accent-color:var(--brand)}.ent{display:flex;align-items:center;gap:12px}.ent-ico{width:36px;height:36px;border-radius:9px;display:grid;place-items:center;font-weight:700;font-size:13px;color:var(--brand);background:var(--brand-tint);border:1px solid var(--brand-tint-2);flex:none}[data-mantine-color-scheme=dark] .ent-ico{color:#9cc6f2}.table.compact .ent-ico{width:28px;height:28px;font-size:11px;border-radius:7px}.toolbar{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--border);flex-wrap:wrap}.search{position:relative;flex:1 1 260px;max-width:380px}.search input{padding-left:36px}.search .i{position:absolute;left:11px;top:10px;color:var(--muted)}.seg{display:inline-flex;padding:3px;border-radius:9px;background:var(--card-sub);border:1px solid var(--border);gap:2px}.seg button{height:30px;padding:0 10px;border:0;background:transparent;border-radius:6px;font:inherit;font-size:12.5px;font-weight:600;color:var(--muted);cursor:pointer;display:inline-flex;align-items:center;gap:6px}.seg button[aria-pressed=true]{background:var(--card);color:var(--text);box-shadow:var(--shadow-sm),0 0 0 1px var(--border)}.seg button:focus-visible{outline:none;box-shadow:var(--focus)}.chip{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border-radius:999px;border:1px solid var(--border-strong);background:var(--card);font:inherit;font-size:12.5px;font-weight:600;color:var(--text-2);cursor:pointer}.chip:hover{border-color:var(--brand);color:var(--brand)}.chip[aria-pressed=true]{background:var(--brand-tint);border-color:var(--brand);color:var(--brand)}[data-mantine-color-scheme=dark] .chip[aria-pressed=true]{color:#9cc6f2}.chip .n{font-family:var(--mono);font-size:11px;color:var(--muted)}.spacer{flex:1}.pager{display:flex;align-items:center;gap:6px}.pager .btn{height:30px;min-width:30px;padding:0 8px;font-size:12.5px}.pager .btn[aria-current=page]{background:var(--brand);color:#fff;border-color:var(--brand)}.field{display:grid;gap:6px;align-content:start}.field label,.label{font-size:13px;font-weight:600;color:var(--text-2)}.req{color:var(--fault);margin-left:2px;font-weight:700}.hint{font-size:12px;color:var(--muted)}.err{font-size:12px;color:var(--fault-text);display:flex;gap:6px;align-items:center}.input,.select,.textarea,.search input{width:100%;height:40px;padding:0 12px;font:inherit;font-size:14px;color:var(--text);background:var(--input-bg);border:1px solid var(--input-border);border-radius:8px;transition:border-color .12s,box-shadow .12s}.input::placeholder,.textarea::placeholder,.search input::placeholder{color:#94a3b8}.input:hover,.select:hover,.textarea:hover{border-color:#9aa8b9}.input:focus,.select:focus,.textarea:focus,.search input:focus{outline:none;border-color:var(--brand);box-shadow:var(--focus)}.input.is-invalid{border-color:var(--fault)}.input.mono{font-family:var(--mono);font-size:13.5px}.input[readonly]{background:var(--card-sub);color:var(--muted)}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:36px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%2364748B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.textarea{height:auto;min-height:110px;padding:10px 12px;resize:vertical;line-height:1.5}.input-group{display:flex}.input-group .addon{display:inline-flex;align-items:center;padding:0 12px;border:1px solid var(--input-border);background:var(--card-sub);color:var(--muted);font-size:13px;font-family:var(--mono)}.input-group .addon:first-child{border-right:0;border-radius:8px 0 0 8px}.input-group .addon:last-child{border-left:0;border-radius:0 8px 8px 0}.input-group .input{border-radius:0}.input-group .input:first-child{border-radius:8px 0 0 8px}.input-group .input:last-child{border-radius:0 8px 8px 0}.input-icon{position:relative}.input-icon>.i{position:absolute;left:12px;top:11px;color:var(--muted);pointer-events:none}.input-icon .input{padding-left:38px}.check{display:flex;align-items:center;gap:9px;font-size:13.5px;color:var(--text-2);cursor:pointer}.check input{width:17px;height:17px;accent-color:var(--brand);margin:0}.fgrid{display:grid;gap:16px 18px;grid-template-columns:repeat(12,minmax(0,1fr))}.span-12{grid-column:span 12}.span-8{grid-column:span 8}.span-6{grid-column:span 6}.span-4{grid-column:span 4}.span-3{grid-column:span 3}.span-9{grid-column:span 9}.form-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;align-items:start}.form-sections{display:grid;gap:16px}.fsec .card-head{padding:16px 20px}.fsec .card-body{padding:20px}.fsec-title{display:flex;align-items:center;gap:12px}.fsec-num{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:var(--brand);color:#fff;font-family:var(--mono);font-size:12.5px;font-weight:600;flex:none}.fsec-title h2{font-size:15.5px;font-weight:650}.fsec-title p{font-size:12.5px;color:var(--muted);margin-top:1px}.form-aside{position:sticky;top:calc(var(--topbar-h) + 20px);display:grid;gap:16px}.toc{list-style:none;margin:0;padding:6px;display:grid;gap:2px}.toc a{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:7px;color:var(--text-2);font-size:13.5px;font-weight:500}.toc a:hover{background:var(--brand-tint);text-decoration:none;color:var(--brand)}.toc .st{margin-left:auto}.toc .ok-ico{color:var(--ok)}.toc .todo-ico{width:14px;height:14px;border-radius:50%;border:1.5px solid var(--border-strong)}.radio-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.rcard{position:relative;display:grid;gap:4px;padding:14px;border:1px solid var(--input-border);border-radius:10px;cursor:pointer;background:var(--input-bg);transition:border-color .12s,box-shadow .12s,background .12s}.rcard:hover{border-color:#9aa8b9}.rcard input{position:absolute;opacity:0;pointer-events:none}.rcard .rc-ico{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;background:var(--card-sub);color:var(--muted);border:1px solid var(--border);margin-bottom:6px}.rcard .rc-t{font-weight:650;font-size:13.5px}.rcard .rc-d{font-size:12px;color:var(--muted)}.rcard:has(input:checked){border-color:var(--brand);background:var(--brand-tint);box-shadow:0 0 0 1px var(--brand)}.rcard:has(input:checked) .rc-ico{background:var(--brand);color:#fff;border-color:var(--brand)}.rcard:has(input:focus-visible){box-shadow:var(--focus)}.rcard .rc-check{position:absolute;top:10px;right:10px;width:18px;height:18px;border-radius:50%;border:1.5px solid var(--border-strong)}.rcard:has(input:checked) .rc-check{border-color:var(--brand);background:var(--brand) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 8.5l2.5 2.5L12 5.5'/%3E%3C/svg%3E") center/12px no-repeat}.picked{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--card-sub)}.picked .ent-ico{background:var(--card)}.picked .grow{flex:1;min-width:0}.picked .t{font-weight:650}.picked .s{font-size:12.5px;color:var(--muted)}.savebar{position:fixed;left:var(--sidebar-w);right:0;bottom:0;z-index:25;background:color-mix(in srgb,var(--card) 94%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--border);box-shadow:0 -6px 20px #0f172a0f}.savebar-inner{max-width:1440px;padding:12px 28px;display:flex;align-items:center;gap:12px}.savebar .state{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}.savebar .state .dot-only{background:var(--wait)}.savebar .actions{margin-left:auto}.callout{display:flex;gap:12px;padding:12px 14px;border-radius:10px;font-size:13px;border:1px solid var(--brand-tint-2);background:var(--brand-tint);color:var(--text-2)}.callout .i{color:var(--brand);margin-top:1px}[data-mantine-color-scheme=dark] .callout .i{color:#9cc6f2}.callout.warn{background:var(--wait-bg);border-color:#f5d9a8}.callout.warn .i{color:var(--wait)}.entity{padding:20px 22px;display:flex;gap:18px;align-items:flex-start;flex-wrap:wrap}.entity .e-ico{width:60px;height:60px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,var(--brand),var(--chrome-1));color:#fff;font-weight:750;font-size:20px;flex:none;box-shadow:inset 0 1px #ffffff26}.entity .e-main{flex:1;min-width:260px}.entity h1{font-size:23px;font-weight:700;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.entity .e-meta{display:flex;gap:6px 18px;flex-wrap:wrap;margin-top:8px;font-size:13px;color:var(--muted)}.entity .e-meta span{display:inline-flex;align-items:center;gap:6px}.entity .actions{align-self:center}.entity-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--border)}.entity-stats>div{padding:12px 22px;border-right:1px solid var(--border)}.entity-stats>div:last-child{border-right:0}.entity-stats .l{font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600}.entity-stats .v{font-size:17px;font-weight:700;margin-top:2px;font-variant-numeric:tabular-nums}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--border);padding:0 14px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none}.tabs::-webkit-scrollbar{display:none;height:0;width:0}.tab{flex:none;display:inline-flex;align-items:center;gap:8px;height:46px;padding:0 12px;border:0;background:transparent;font:inherit;font-size:13.5px;font-weight:600;color:var(--muted);cursor:pointer;position:relative;border-radius:6px 6px 0 0}.tab:hover{color:var(--text)}.tab .n{font-family:var(--mono);font-size:11px;padding:0 6px;border-radius:999px;background:var(--card-sub);border:1px solid var(--border);color:var(--muted);line-height:17px}.tab[aria-selected=true]{color:var(--brand)}[data-mantine-color-scheme=dark] .tab[aria-selected=true]{color:#9cc6f2}.tab[aria-selected=true]:after{content:"";position:absolute;left:8px;right:8px;bottom:-1px;height:2.5px;border-radius:2px 2px 0 0;background:var(--brand)}.tab[aria-selected=true] .n{background:var(--brand-tint);border-color:var(--brand-tint-2);color:var(--brand)}.tab:focus-visible{outline:none;box-shadow:inset var(--focus)}.tab-panel[hidden]{display:none}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:20px 0 12px;flex-wrap:wrap}.panel-head h2{font-size:17px;font-weight:650}.panel-head p{font-size:13px;color:var(--muted);margin-top:2px}.dl{display:grid;grid-template-columns:150px 1fr;gap:10px 16px;margin:0;font-size:13.5px}.dl dt{color:var(--muted)}.dl dd{margin:0;font-weight:500;color:var(--text)}.dl.wide{grid-template-columns:180px 1fr}.list{list-style:none;margin:0;padding:0}.list>li{display:flex;gap:12px;padding:12px 18px;border-bottom:1px solid var(--border);align-items:flex-start}.list>li:last-child{border-bottom:0}.date-tile{width:46px;flex:none;text-align:center;border:1px solid var(--border);border-radius:9px;overflow:hidden;background:var(--card)}.date-tile .m{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;background:var(--brand);color:#fff;padding:2px 0}.date-tile .d{font-size:17px;font-weight:750;padding:2px 0 3px;font-variant-numeric:tabular-nums}.li-main{flex:1;min-width:0}.li-main .t{font-weight:600;font-size:13.5px}.li-main .s{font-size:12.5px;color:var(--muted);margin-top:2px}.act-ico{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;flex:none;background:var(--card-sub);border:1px solid var(--border);color:var(--muted)}.act-ico.ok{color:var(--ok);background:var(--ok-bg);border-color:transparent}.act-ico.plan{color:var(--plan);background:var(--plan-bg);border-color:transparent}.act-ico.wait{color:var(--wait);background:var(--wait-bg);border-color:transparent}.act-ico.fault{color:var(--fault);background:var(--fault-bg);border-color:transparent}.time{font-size:12px;color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}.timeline{list-style:none;margin:0;padding:4px 0 0;position:relative}.timeline li{position:relative;padding:0 0 20px 34px}.timeline li:before{content:"";position:absolute;left:10px;top:22px;bottom:0;width:2px;background:var(--border)}.timeline li:last-child:before{display:none}.timeline .node{position:absolute;left:0;top:0;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--card);border:2px solid var(--border-strong)}.timeline li.done .node{background:var(--ok);border-color:var(--ok);color:#fff}.timeline li.current .node{background:var(--plan);border-color:var(--plan);box-shadow:0 0 0 4px var(--plan-bg)}.timeline li.current .node:after{content:"";width:8px;height:8px;border-radius:50%;background:#fff}.timeline li.done:before{background:var(--ok)}.timeline .tl-t{font-weight:650;font-size:13.5px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.timeline .tl-s{font-size:12.5px;color:var(--muted);margin-top:2px}.timeline li.todo .tl-t{color:var(--muted);font-weight:500}.rail{display:grid;grid-template-columns:repeat(5,1fr);gap:0;padding:18px 22px 20px;border-top:1px solid var(--border)}.rail .st{position:relative;text-align:center;font-size:12px;color:var(--muted);font-weight:600}.rail .st .b{width:26px;height:26px;border-radius:50%;margin:0 auto 8px;display:grid;place-items:center;background:var(--card);border:2px solid var(--border-strong);position:relative;z-index:1}.rail .st:before{content:"";position:absolute;top:12px;left:-50%;right:50%;height:2px;background:var(--border)}.rail .st:first-child:before{display:none}.rail .st.done .b{background:var(--ok);border-color:var(--ok);color:#fff}.rail .st.done:before,.rail .st.current:before{background:var(--ok)}.rail .st.current .b{background:var(--plan);border-color:var(--plan);box-shadow:0 0 0 5px var(--plan-bg)}.rail .st.current .b:after{content:"";width:8px;height:8px;border-radius:50%;background:#fff}.rail .st.current{color:var(--plan-text)}.rail .st.done{color:var(--text-2)}.doc{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--card)}.doc .ft{width:38px;height:44px;border-radius:6px;display:grid;place-items:center;font-family:var(--mono);font-size:10.5px;font-weight:600;color:#fff;background:#b91c1c;flex:none}.doc .ft.dwg{background:#0e7490}.doc .ft.xls{background:#15803d}.doc .ft.jpg{background:#6d28d9}.doc .grow{flex:1;min-width:0}.doc .t{font-weight:600;font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc .s{font-size:12px;color:var(--muted)}.dropzone{border:1.5px dashed var(--border-strong);border-radius:12px;padding:22px;text-align:center;color:var(--muted);background:var(--card-sub);font-size:13px}.dropzone strong{color:var(--brand)}.plate{border-radius:10px;padding:14px 16px;background:linear-gradient(135deg,#e9edf2,#d5dce5);border:1px solid #b9c3cf;box-shadow:inset 0 1px #fff,inset 0 -1px #0000000f;color:#1e293b;position:relative}[data-mantine-color-scheme=dark] .plate{background:linear-gradient(135deg,#1b2a40,#142236);border-color:#2c3f5c;color:var(--text);box-shadow:none}.plate:before,.plate:after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fff,#8a97a8);top:8px}.plate:before{left:8px}.plate:after{right:8px}.plate .pl-row{display:flex;justify-content:space-between;gap:12px;font-size:12px;padding:4px 6px;border-bottom:1px dashed rgba(30,41,59,.18)}.plate .pl-row:last-child{border-bottom:0}.plate .pl-row span:first-child{text-transform:uppercase;letter-spacing:.08em;font-size:10.5px;font-weight:600;opacity:.7;padding-top:2px}.plate .pl-row span:last-child{font-family:var(--mono);font-weight:600}.plate .pl-title{text-align:center;font-weight:800;letter-spacing:.14em;font-size:11px;margin:2px 0 8px;opacity:.75}.m-cards{display:none;gap:10px;padding:12px}.m-card{border:1px solid var(--border);border-radius:10px;padding:12px 14px;background:var(--card);display:grid;gap:6px}.m-card .r1{display:flex;justify-content:space-between;align-items:center;gap:8px}.m-card .r2{font-weight:600}.m-card .r3{font-size:12.5px;color:var(--muted);display:flex;gap:12px;flex-wrap:wrap}.concept-note{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.empty{text-align:center;padding:36px 20px;color:var(--muted)}.empty .e-i{width:48px;height:48px;border-radius:12px;margin:0 auto 10px;display:grid;place-items:center;background:var(--brand-tint);color:var(--brand)}.map{height:150px;border-radius:10px;border:1px solid var(--border);position:relative;overflow:hidden;background:radial-gradient(circle at 62% 46%,rgba(1,65,124,.18) 0 22px,transparent 23px),linear-gradient(115deg,transparent 47%,rgba(148,163,184,.35) 47% 49%,transparent 49%),linear-gradient(25deg,transparent 60%,rgba(148,163,184,.25) 60% 61.5%,transparent 61.5%),repeating-linear-gradient(0deg,rgba(100,116,139,.08) 0 1px,transparent 1px 22px),repeating-linear-gradient(90deg,rgba(100,116,139,.08) 0 1px,transparent 1px 22px),#eaf0f5}[data-mantine-color-scheme=dark] .map{background-color:#13233a}.map .pin{position:absolute;left:62%;top:46%;transform:translate(-50%,-100%);color:var(--brand)}.map .pin .i{width:28px;height:28px;fill:var(--brand);stroke:#fff}.login{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.login-brand:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:32px 32px;-webkit-mask-image:linear-gradient(180deg,#000 0%,transparent 85%);mask-image:linear-gradient(180deg,#000 0%,transparent 85%)}.login-brand>*{position:relative}.login-brand .lb-hero h1{color:#fff;font-size:44px;font-weight:800;letter-spacing:-.025em;line-height:1.08}.login-brand .lb-hero p{font-size:19px;color:#bbd0e8;margin-top:14px;font-weight:500}.lb-feats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:36px;max-width:620px}.lb-feat{border:1px solid rgba(255,255,255,.12);background:#ffffff0d;border-radius:12px;padding:14px}.lb-feat .i{color:#7db3ea}.lb-feat .t{font-weight:650;font-size:13.5px;margin-top:8px}.lb-feat .s{font-size:12px;color:#a9bfd9;margin-top:2px}.lb-foot{display:flex;justify-content:space-between;font-size:12px;color:#8fa9c8;gap:12px;flex-wrap:wrap}.login-side{position:relative;display:flex;align-items:center;justify-content:center;padding:80px 32px 40px}.login-tools .seg button{height:28px;padding:0 9px;font-size:12px}.login-card{width:100%;max-width:400px;padding:28px 28px 24px}.login-card .lc-logo{display:none}.login-card h2{font-size:22px;font-weight:700}.login-card .row{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:13px}.pw-wrap .input{padding-right:44px}.pw-wrap button{position:absolute;right:4px;top:4px;width:32px;height:32px;border:0;background:transparent;border-radius:6px;color:var(--muted);cursor:pointer;display:grid;place-items:center}.pw-wrap button:hover{background:var(--card-sub);color:var(--text)}.login-card .lc-foot{margin-top:18px;padding-top:14px;border-top:1px solid var(--border);font-size:12.5px;color:var(--muted);display:flex;align-items:center;gap:8px}.icon-toggle{width:34px;height:34px;border-radius:8px;border:1px solid var(--border);background:var(--card);color:var(--text-2);display:grid;place-items:center;cursor:pointer}.icon-toggle:hover{border-color:var(--brand);color:var(--brand)}@media(max-width:1200px){.g-4{grid-template-columns:repeat(2,minmax(0,1fr))}.form-layout{grid-template-columns:minmax(0,1fr)}.form-aside{position:static}.radio-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:1024px){.g-main,.g-3{grid-template-columns:minmax(0,1fr)}.login{grid-template-columns:1fr 1fr}.lb-feats{grid-template-columns:1fr}.login-brand .lb-hero h1{font-size:34px}}@media(max-width:768px){.app{grid-template-columns:1fr}.sidebar{position:fixed;left:0;top:0;bottom:0;width:280px;transform:translate(-100%);transition:transform .2s ease;box-shadow:var(--shadow-lg)}.app.nav-open .sidebar{transform:none}.app.nav-open .sb-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#01142880;z-index:35}.topbar .tb-menu{display:inline-grid}.topbar{padding:0 12px;gap:8px}.tb-search kbd,.tb-user .meta,.tb-hide-m{display:none}main.content{padding:16px 14px 40px}.g-2,.g-4,.g-3{grid-template-columns:minmax(0,1fr)}.g-4.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-head{align-items:stretch}.page-head .actions{width:100%}.page-head .actions .btn-primary{flex:1}.fgrid>[class*=span-]{grid-column:span 12}.savebar{left:0}.savebar-inner{padding:10px 14px}.savebar .state{display:none}.savebar .actions{width:100%}.savebar .actions .btn{flex:1}.entity-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.entity-stats>div:nth-child(2){border-right:0}.entity-stats>div:nth-child(-n+2){border-bottom:1px solid var(--border)}.dl,.dl.wide{grid-template-columns:1fr;gap:2px 0}.dl dd{margin-bottom:8px}.radio-cards{grid-template-columns:1fr}.rail{grid-template-columns:repeat(5,minmax(56px,1fr));padding:14px 8px;font-size:11px}.table.stack-m thead{display:none}.table.stack-m,.table.stack-m tbody{display:block}.table.stack-m tr{display:grid;grid-template-columns:1fr 1fr;gap:8px 14px;padding:14px 16px;border-bottom:1px solid var(--border)}.table.stack-m tbody tr:last-child{border-bottom:0}.table.stack-m td{display:block;padding:0;border:0;min-width:0}.table.stack-m td:before{content:attr(data-label);display:block;font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:2px}.table.stack-m td.td-primary{grid-column:1 / -1}.table.stack-m td.td-primary:before,.table.stack-m td.row-actions:before{display:none}.table.stack-m td.td-check{display:none}.table.stack-m td.row-actions{grid-column:1 / -1;text-align:left;border-top:1px dashed var(--border);padding-top:8px}.table.stack-m td.num{text-align:left}.table.stack-m tbody tr:hover td{background:transparent}.table.stack-m .cell-sub{display:block}.tabs{mask-image:linear-gradient(90deg,#000 82%,transparent);-webkit-mask-image:linear-gradient(90deg,#000 82%,transparent);padding-right:40px}.entity{padding:16px;gap:12px}.entity .e-ico{width:44px;height:44px;font-size:15px;border-radius:10px}.entity .e-main{min-width:0;flex-basis:calc(100% - 60px)}.entity h1{font-size:20px}.entity .e-meta{flex-direction:column;gap:4px}.entity .actions{width:100%}.entity .actions .btn-primary{flex:1}.entity-stats>div{padding:10px 16px}.toolbar .seg,.toolbar .select{flex:none}.search{max-width:none}.picked{flex-wrap:wrap}.picked .select{width:100%!important}.hide-m{display:none!important}.m-cards{display:grid}.table-wrap.m-swap{display:none}.login{grid-template-columns:1fr}.login-brand{display:none}.login-card .lc-logo{display:block;margin-bottom:16px}.login-card .lc-logo img{height:56px}.login-side{padding:72px 16px 24px;align-items:flex-start}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}:root{--v2-brand: var(--brand);--v2-brand-hover: var(--brand-hover);--v2-chrome: var(--chrome-1);--v2-top: var(--chrome-2);--v2-canvas: var(--canvas);--v2-grid: var(--grid-line);--v2-card: var(--card);--v2-border: var(--border);--v2-border-strong: var(--border-strong);--v2-muted: var(--muted);--v2-ok: var(--ok);--v2-ok-bg: var(--ok-bg);--v2-ok-text: var(--ok-text);--v2-wait: var(--wait);--v2-wait-bg: var(--wait-bg);--v2-wait-text: var(--wait-text);--v2-plan: var(--plan);--v2-plan-bg: var(--plan-bg);--v2-plan-text: var(--plan-text);--v2-fault: var(--fault);--v2-fault-bg: var(--fault-bg);--v2-fault-text: var(--fault-text);--v2-draft: var(--draft);--v2-draft-bg: var(--draft-bg);--v2-draft-text: var(--draft-text);--sr-font-mono: var(--mono)}.mantine-Notifications-root,.mantine-Modal-root,.mantine-Popover-dropdown,.mantine-Menu-dropdown{z-index:400}.btn.mantine-Button-root,.btn.mantine-ActionIcon-root{--button-height: auto;--button-padding-x: 0;--button-bg: transparent;--button-hover: transparent;--button-color: inherit;--ai-size: auto;--ai-bg: transparent;--ai-hover: transparent;--ai-color: inherit;min-height:0;min-width:0}.btn.mantine-Button-root{height:38px;padding:0 14px}.btn.btn-lg.mantine-Button-root{height:44px;padding:0 20px}.btn.btn-sm.mantine-Button-root,.btn.btn-sm.mantine-ActionIcon-root{height:32px;padding:0 10px;min-width:32px}.btn.btn-icon.mantine-ActionIcon-root,.btn.btn-icon.mantine-Button-root{width:38px;height:38px;padding:0}.btn.btn-icon.btn-sm.mantine-ActionIcon-root{width:32px;height:32px}.btn.btn-block{width:100%}.btn:disabled,.btn[data-disabled]{opacity:.55;cursor:not-allowed;transform:none}.btn.btn-primary.btn-primary-danger{background:var(--fault);border-color:var(--fault)}.btn.btn-primary.btn-primary-danger:hover{background:#b91c1c;border-color:#b91c1c}.mantine-Input-input,.mantine-TextInput-input,.mantine-Textarea-input,.mantine-NativeSelect-input,.mantine-Select-input,.mantine-PasswordInput-input,.mantine-DatePickerInput-input{height:40px;min-height:40px;padding:0 12px;font:inherit;font-size:14px;color:var(--text);background:var(--input-bg);border:1px solid var(--input-border);border-radius:8px;box-shadow:none}.mantine-Textarea-input{height:auto;min-height:110px;padding:10px 12px}.mantine-Input-input:focus,.mantine-TextInput-input:focus,.mantine-Textarea-input:focus,.mantine-NativeSelect-input:focus,.mantine-Select-input:focus,.mantine-DatePickerInput-input:focus{border-color:var(--brand);box-shadow:var(--focus)}.mantine-InputWrapper-label,.mantine-Input-label{font-size:13px;font-weight:600;color:var(--text-2);margin-bottom:6px}.mantine-InputWrapper-required{color:var(--fault)}.mantine-Checkbox-input{width:17px;height:17px;accent-color:var(--brand)}.mantine-Paper-root.surface-card,.mantine-Paper-root.card,.mantine-Card-root.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.app{display:grid;grid-template-columns:var(--sidebar-w) 1fr;min-height:100vh;background:linear-gradient(90deg,var(--chrome-1) 0 calc(var(--sidebar-w) - 1px),#001a38 calc(var(--sidebar-w) - 1px) var(--sidebar-w),transparent var(--sidebar-w)) no-repeat}.app.sb-collapsed{--sidebar-w: 76px;grid-template-columns:76px 1fr}.app.sb-collapsed .sb-word,.app.sb-collapsed .sb-label,.app.sb-collapsed .sb-text,.app.sb-collapsed .count,.app.sb-collapsed .sb-sys-text{display:none}.app.sb-collapsed .sb-brand{justify-content:center;padding:0}.app.sb-collapsed .sb-brand img{margin-left:0}.app.sb-collapsed .sb-nav a{justify-content:center;padding-inline:0}.app.sb-collapsed .sb-sys{justify-content:center}.app.sb-collapsed .sb-collapse{margin-left:0}.sb-brand{text-decoration:none!important}.sb-collapse{margin-left:auto;width:28px;height:28px;display:inline-grid;place-items:center;border:0;border-radius:6px;background:transparent;color:#9db3ce;cursor:pointer}.sb-collapse:hover{background:#ffffff14;color:#fff}.sb-nav a.soon{cursor:default;pointer-events:none}.sb-nav a[aria-current=page]:before{left:-12px}.tb-search{flex:1;max-width:520px}.tb-search-btn{width:100%;height:38px;border-radius:8px;border:1px solid rgba(255,255,255,.14);background:#ffffff12;color:#fff;padding:0 64px 0 38px;font:inherit;font-size:13.5px;display:flex;align-items:center;position:relative;cursor:pointer;text-align:left}.tb-search-btn .i{position:absolute;left:12px;top:10px;color:#a9bfd9}.tb-search-ph{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#a9bfd9}.tb-search-btn kbd{position:absolute;right:10px;top:9px;font-family:var(--mono);font-size:11px;color:#c9d6e6;border:1px solid rgba(255,255,255,.2);border-radius:4px;padding:0 6px}.tb-user{text-decoration:none!important;color:inherit;background:transparent;border:1px solid transparent;cursor:pointer;font:inherit}.role-pills{display:flex;gap:6px;flex-wrap:wrap;padding:0 12px 8px}.theme-dark-icon,[data-mantine-color-scheme=dark] .theme-light-icon{display:none}[data-mantine-color-scheme=dark] .theme-dark-icon{display:contents}.login-screen{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.login-panel{position:relative;display:flex;align-items:center;justify-content:center;padding:80px 32px 40px;background-color:var(--canvas);background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:32px 32px}.login-tools{position:absolute;top:20px;right:24px;display:flex;gap:8px;align-items:center}.login-card.card{width:100%;max-width:400px;padding:28px 28px 24px}.login-card form{display:grid;gap:14px;margin-top:20px}.login-card .lc-sub{color:var(--muted);margin-top:4px;font-size:13.5px}.login-card .lc-logo{display:none;margin-bottom:16px}.login-card .lc-logo img{height:56px;width:auto}.login-brand{position:relative;overflow:hidden;color:#fff;padding:44px 56px;display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(1200px 600px at -10% 110%,rgba(47,127,208,.35),transparent 60%),radial-gradient(800px 500px at 110% -10%,rgba(1,65,124,.9),transparent 60%),linear-gradient(160deg,#013568,#01264e 55%,#011b39)}.login-brand>*{position:relative;z-index:1}.login-brand-pattern{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:32px 32px;-webkit-mask-image:linear-gradient(180deg,#000 0%,transparent 85%);mask-image:linear-gradient(180deg,#000 0%,transparent 85%)}.login-brand .lb-logo img{height:92px;width:auto}.pw-wrap{position:relative}.pw-wrap .mantine-TextInput-section[data-position=right]{width:40px}.savebar .actions{display:flex;gap:8px;align-items:center}.app.sb-collapsed .savebar{left:76px}main.content:has(.savebar){padding-bottom:110px}.order-no,.code,.code-num{font-family:var(--mono);font-weight:500;font-size:12.8px;letter-spacing:-.01em;white-space:nowrap}.file-row{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--card)}.file-type{width:38px;height:44px;flex:none;display:grid;place-items:center;border-radius:6px;font-family:var(--mono);font-size:10.5px;font-weight:600;color:#fff;background:#b91c1c}.file-type[data-tone=image]{background:#6d28d9}.file-type[data-tone=sheet]{background:#15803d}.file-type[data-tone=doc]{background:var(--brand)}.file-type[data-tone=mail]{background:#0e7490}.file-text{flex:1;min-width:0}.file-name{overflow:hidden;font-size:13.5px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.file-meta{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--muted)}.work-lines th{font-size:11.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);white-space:nowrap}.work-lines .num{text-align:right;font-variant-numeric:tabular-nums}.work-lines .mono{font-family:var(--mono);font-size:12.5px}.work-lines .row-actions{width:1%;text-align:right;white-space:nowrap}html[data-density=compact] .table.compactible td,html[data-density=compact] .data-table td,html[data-density=compact] .table.compactible th,html[data-density=compact] .data-table th{padding:7px 16px}.rail.status-track{grid-template-columns:repeat(var(--rail-n, 5),minmax(0,1fr));list-style:none;margin:0}.rail.status-track:focus-visible{outline-offset:-2px}@media(max-width:768px){.app{grid-template-columns:1fr;background:none}.app .sidebar{position:fixed;left:0;top:0;bottom:0;width:280px;transform:translate(-100%);transition:transform .2s ease;box-shadow:var(--shadow-lg);z-index:40}.app.nav-open .sidebar{transform:none}.app.nav-open .sb-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#01142880;z-index:35}.sticky-save,.savebar{left:0}.rail.status-track{grid-template-columns:repeat(var(--rail-n, 5),minmax(56px,1fr));overflow-x:auto}.login-screen{grid-template-columns:1fr}.login-brand{display:none}.login-card .lc-logo{display:block}.login-panel{padding:72px 16px 24px;align-items:flex-start}}.stat-link,.m-card,.activity-link{color:inherit;text-decoration:none!important}.stat-link{display:block}.stat-link:hover .kpi{border-color:var(--brand-tint-2)}.stat-link:focus-visible{outline:none}.stat-link:focus-visible .kpi{box-shadow:var(--focus)}.kpi .stat-spark{color:var(--brand)}.search .mantine-TextInput-root{width:100%}.search .mantine-TextInput-input{padding-left:36px}.search>.i{z-index:1;pointer-events:none}.toolbar .mantine-NativeSelect-root,.toolbar .mantine-Select-root{width:auto}.toolbar .mantine-NativeSelect-input{padding-right:36px}.toolbar .date-compact{width:150px}.mb-12{margin-bottom:12px}.table th .sort-button{all:unset;display:inline-flex;align-items:center;gap:4px;cursor:pointer;font:inherit;text-transform:inherit;letter-spacing:inherit;color:inherit}.table th .sort-button:focus-visible{border-radius:4px;box-shadow:var(--focus)}.table th[aria-sort=ascending] .sort-button,.table th[aria-sort=descending] .sort-button{color:var(--brand)}html[data-density=compact] .table.compactible .cell-sub{display:none}.tb-user .meta{display:grid;text-align:left}.tb-show-m{display:none}@media(max-width:768px){.tb-user .meta,.tb-search kbd,.tb-hide-m{display:none}.tb-show-m{display:inline}.tb-search{min-width:0;flex:1 1 auto}}.table td.mono,.table .cell-sub.mono{white-space:nowrap}.table td>.mono{white-space:nowrap}.mantine-Input-input[data-with-left-section],.mantine-Input-wrapper[data-with-left-section]>.mantine-Input-input{padding-left:38px}.mantine-Input-input[data-with-right-section],.mantine-Input-wrapper[data-with-right-section]>.mantine-Input-input{padding-right:40px}.mantine-Input-section{color:var(--muted)}.input-addon .mantine-Input-section[data-position=right]{width:40px;border-left:1px solid var(--input-border);background:var(--card-sub);border-radius:0 8px 8px 0;inset-block:1px;right:1px;height:auto}.addon{font-family:var(--mono);font-size:13px;color:var(--muted)}.mantine-InputWrapper-description{font-size:12px;color:var(--muted);margin-top:6px}.bare-fieldset{border:0;padding:0;margin:0;min-width:0}.bare-fieldset>legend{padding:0;margin-bottom:6px}.picked .mantine-NativeSelect-root{flex:none}.entity .e-title{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.entity .e-meta a{color:var(--brand)}.code-chip{display:inline-flex;align-items:center;gap:6px}.copy-code{border:0;background:transparent;color:var(--muted);cursor:pointer;padding:2px;border-radius:4px;display:inline-grid;place-items:center}.copy-code:hover{color:var(--brand);background:var(--brand-tint)}.report-title{display:flex;align-items:center;gap:8px}[data-mantine-color-scheme=dark] .entity .e-meta a,[data-mantine-color-scheme=dark] .table th[aria-sort=ascending] .sort-button,[data-mantine-color-scheme=dark] .table th[aria-sort=descending] .sort-button,[data-mantine-color-scheme=dark] .copy-code:hover{color:#7db3ea}.mantine-InputPlaceholder-placeholder{color:var(--muted)}.stack{grid-template-columns:minmax(0,1fr)}.tabs .tab[aria-selected=true]:after{bottom:0}.savebar .state .dot-only.ok{background:var(--ok)}.li-main .t{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list li>.lamp{flex:none}.plan-nav{display:inline-flex;align-items:center;gap:6px}.plan-nav .btn[aria-pressed=true]{border-color:var(--brand);color:var(--brand);background:var(--brand-tint)}[data-mantine-color-scheme=dark] .plan-nav .btn[aria-pressed=true]{color:#9cc6f2}.plan-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}@media(min-width:1440px){.plan-layout{grid-template-columns:minmax(0,1fr) 300px}.plan-backlog{position:sticky;top:calc(var(--topbar-h) + 16px)}}@media(max-width:1439px){.backlog-list{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));max-height:none}}.plan-readonly{margin:0;padding:10px 18px;border-bottom:1px solid var(--border)}.plan-empty{margin:0;padding:24px 18px;color:var(--muted)}.plan-scroll{overflow-x:auto}.plan-grid{width:100%;min-width:760px;border-collapse:separate;border-spacing:0;table-layout:fixed}.plan-grid.with-weekend{min-width:980px}.plan-grid th,.plan-grid td{border-bottom:1px solid var(--border);border-left:1px solid var(--border);vertical-align:top;text-align:left}.plan-grid tr>:first-child{border-left:0}.plan-grid tbody tr:last-child>*{border-bottom:0}.plan-grid thead th{padding:10px 12px;background:var(--card-sub);font-size:12px;font-weight:600;color:var(--text-2)}.plan-grid thead th .d-name{display:block;text-transform:capitalize}.plan-grid thead th .d-date{display:block;font-size:12px;color:var(--muted);font-weight:500}.plan-grid thead th.is-today{background:var(--brand-tint);color:var(--brand);box-shadow:inset 0 -2px 0 var(--brand)}[data-mantine-color-scheme=dark] .plan-grid thead th.is-today{color:#9cc6f2}.plan-grid thead th.is-today .d-date{color:inherit}.plan-grid .plan-tech-head{width:150px}.plan-grid .plan-tech{padding:12px;font-size:13px;font-weight:600;color:var(--text);background:var(--card)}.plan-tech .who{display:flex;align-items:center;gap:8px;line-height:1.25}.plan-tech .avatar{flex:none;width:28px;height:28px;font-size:11px}.plan-grid td{padding:8px;height:84px}.plan-grid td.is-today{background:color-mix(in srgb,var(--brand-tint) 45%,transparent)}.plan-grid td.is-weekend,.plan-grid thead th.is-weekend:not(.is-today){background:var(--card-sub)}.plan-free{display:block;color:var(--border-strong);font-size:13px;padding:4px}.plan-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.plan-block{display:grid;gap:1px;width:100%;padding:7px 8px 8px 9px;border:1px solid var(--border);border-left:3px solid var(--brand);border-radius:8px;background:var(--card);box-shadow:var(--shadow-sm);color:var(--text);font:inherit;font-size:12.5px;line-height:1.35;text-align:left;text-decoration:none;cursor:pointer;min-width:0}.plan-block:hover{border-color:var(--brand);border-left-color:var(--brand);background:var(--row-hover)}.plan-block:focus-visible{outline:var(--focus-ring);outline-offset:2px}.plan-block .pb-top{display:flex;align-items:center;justify-content:space-between;gap:6px}.plan-block .pb-time{font-family:var(--font);font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:0;text-decoration:none;color:var(--brand)}[data-mantine-color-scheme=dark] .plan-block .pb-time{color:#9cc6f2}.plan-block .order-no{font-size:11px;white-space:normal}.plan-block .pb-cust{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-block .pb-mach,.plan-block .pb-people{font-size:11.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-block .dot-only{flex:none}.dot-only.done{background:var(--ok)}.plan-backlog .count-pill{font-family:var(--mono);font-size:12px;font-weight:600;min-width:26px;height:22px;padding:0 8px;border-radius:999px;display:inline-grid;place-items:center;background:var(--brand-tint);color:var(--brand)}[data-mantine-color-scheme=dark] .plan-backlog .count-pill{color:#9cc6f2}.backlog-list{list-style:none;margin:0;padding:8px;display:grid;gap:6px;max-height:640px;overflow-y:auto}.backlog-item{display:grid;gap:3px;width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--card);color:var(--text);font:inherit;font-size:13px;text-align:left;text-decoration:none;cursor:pointer}.backlog-item:hover{border-color:var(--brand);background:var(--row-hover)}.backlog-item:focus-visible{outline:var(--focus-ring);outline-offset:2px}.backlog-item .bl-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.backlog-item .lamp{height:20px;font-size:11px}.backlog-item .bl-cust{font-weight:600}.backlog-item .bl-meta{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:12px;color:var(--muted)}.plan-days{display:grid}.plan-day{padding:12px 14px 14px;border-bottom:1px solid var(--border)}.plan-day:last-child{border-bottom:0}.plan-day h3{margin:0 0 8px;font-size:13.5px;font-weight:650;display:flex;align-items:center;gap:6px}.plan-day h3 .cap{text-transform:capitalize}.plan-day h3 .mono{color:var(--muted);font-weight:500}.plan-day.is-today h3{color:var(--brand)}[data-mantine-color-scheme=dark] .plan-day.is-today h3{color:#9cc6f2}.today-tag{font-size:11px;font-weight:600;padding:1px 8px;border-radius:999px;background:var(--brand);color:#fff}.plan-day .plan-free{padding:0;color:var(--muted)}.schedule-modal{background:var(--card)}.schedule-form{display:grid;gap:16px}.schedule-order{display:grid;gap:4px;padding:12px 14px;border:1px solid var(--border);border-left:3px solid var(--brand);border-radius:10px;background:var(--card-sub);font-size:13px}.schedule-order .r1{display:flex;align-items:center;justify-content:space-between;gap:8px}.schedule-order .r2{display:flex;align-items:center;flex-wrap:wrap;gap:4px;font-weight:600}.schedule-order .r3{color:var(--muted)}.schedule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 12px;align-items:start}.schedule-grid .span-2{grid-column:1 / -1}.schedule-members{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:6px}.schedule-end{grid-column:1 / -1;margin:0;display:flex;align-items:center;gap:6px;min-height:20px}.schedule-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding-top:14px;border-top:1px solid var(--border)}.schedule-actions .grow{flex:1}@media(max-width:768px){.schedule-grid{grid-template-columns:minmax(0,1fr)}.page-head .actions:has(.plan-nav){width:100%;justify-content:space-between}}.stock-qty{display:inline-flex;align-items:center;gap:6px;justify-content:flex-end;white-space:nowrap}.stock-qty.attention .mono{font-weight:600}.uom{color:var(--muted);font-size:12px}.parts-table tr.is-inactive td{color:var(--muted)}.parts-table tr.is-inactive .cell-main{text-decoration:none;color:var(--text-2)}.parts-table .row-actions{text-align:right;width:1%;white-space:nowrap}.card-note{margin:0;padding:10px 18px 0;font-size:13px}.pre-wrap{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.small{font-size:12px}.input-unit{color:var(--muted);font-size:12px;font-family:var(--mono);padding-right:4px}.num-input{text-align:right}@media(max-width:768px){.stock-qty{justify-content:flex-start}.parts-table .row-actions{width:auto;text-align:left}}.parts-table .cell-main,.parts-table .cell-sub,.part-page .table .cell-sub{display:block}.parts-table .cell-main{white-space:nowrap}
