:root{--navy-950:#07111f;--navy-900:#0c1b2e;--navy-800:#12304d;--navy-700:#1a4268;--gold-500:#d4a017;--gold-400:#e3b651;--gold-100:#fbecc6;--bg:#f4f6fa;--surface:#fff;--line:#e4eaf2;--text:#122033;--muted:#5d6b7e;--info:#1d4e89;--info-bg:#e8f1fb;--ok:#0f7a4a;--ok-bg:#e5f6ee;--warn:#9a6700;--warn-bg:#fff4d6;--bad:#b42318;--bad-bg:#fdeceb;--paid:#5b3cc4;--paid-bg:#efeaff;--shadow:0 10px 30px rgba(18,48,77,.08);--sidebar:248px;--radius:14px}*{box-sizing:border-box}#__nuxt,body,html{margin:0;min-height:100%}body{background:var(--bg);color:var(--text);font-family:Inter,Segoe UI,system-ui,sans-serif;font-size:14px}a{color:inherit;text-decoration:none}button,input,select,textarea{color:inherit;font:inherit}h1,h2,h3,p{margin:0}.shell{display:flex;min-height:100vh}.sidebar{background:linear-gradient(180deg,var(--navy-950),var(--navy-800));color:#fff;display:flex;flex-direction:column;gap:22px;height:100vh;padding:22px 16px;position:sticky;top:0;width:var(--sidebar)}.brand{align-items:center;display:flex;gap:12px;padding:0 8px}.mark{background:var(--gold-500);border-radius:10px;color:var(--navy-950);display:grid;font-weight:800;height:38px;place-items:center;width:38px}.brand small{color:#b7c6d8;display:block;letter-spacing:.04em}.nav{flex-direction:column;gap:4px}.nav,.nav a{display:flex}.nav a{align-items:center;border-radius:10px;color:#d5e2ef;justify-content:space-between;padding:10px 12px}.nav a.router-link-active,.nav a:hover{background:#ffffff14;color:#fff}.badge{background:var(--gold-500);border-radius:999px;color:var(--navy-950);display:inline-grid;font-size:12px;font-weight:700;height:20px;min-width:20px;padding:0 6px;place-items:center}.sidebar-foot{margin-top:auto}.sidebar .user{background:#ffffff0f;border-radius:12px;display:block;padding:12px}.sidebar .user.router-link-active,.sidebar .user:hover{background:#ffffff1f}.sidebar .user span,.sidebar .user strong{display:block}.sidebar .user span{color:#b7c6d8;font-size:12px;margin-top:2px}.identity{align-items:center;display:flex;gap:14px}.avatar{background:var(--navy-800);border-radius:16px;color:#fff;display:grid;font-weight:700;height:56px;letter-spacing:.04em;place-items:center;width:56px}.linkish{background:none;border:0;color:var(--gold-400);cursor:pointer;margin-top:10px;padding:0}.workspace{flex:1;min-width:0}.topbar{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffe6;border-bottom:1px solid var(--line);display:flex;height:68px;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:5}.topbar p{color:var(--muted);margin-top:2px}.page{padding:24px 28px 40px}.stats{display:grid;gap:14px;grid-template-columns:repeat(4,1fr)}.card,.stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.stat{padding:16px 18px}.stat span{color:var(--muted)}.stat strong{display:block;font-size:28px;letter-spacing:-.03em;margin-top:6px}.card{padding:18px}.row-actions,.section-head,.split,.toolbar{align-items:center;display:flex;gap:12px;justify-content:space-between}.section-head{margin:22px 0 12px}.request-head{background:var(--navy-800);border-radius:var(--radius);box-shadow:var(--shadow);color:#fff;gap:12px;justify-content:space-between;padding:14px 18px;position:sticky;top:68px;z-index:4}.request-head,.request-number{align-items:center;display:flex}.request-number{gap:8px;margin:0}.request-number button{background:transparent;border:1px solid hsla(0,0%,100%,.35);border-radius:999px;color:#fff;cursor:pointer;font-size:12px;padding:2px 8px}.request-number button:hover{background:#ffffff1f}.request-head h2 span{font-weight:500}.request-head .muted,.request-head h2{color:#fff}.request-head .muted{opacity:.78}.request-head .pill,.request-head .pill.bad,.request-head .pill.info,.request-head .pill.ok,.request-head .pill.paid,.request-head .pill.warn{background:#ffffff29;color:#fff}.toolbar{flex-wrap:wrap;margin-bottom:14px}.tabs{display:flex;flex-wrap:wrap;gap:6px}.btn,.tabs button{background:#fff;border:1px solid var(--line);border-radius:10px;cursor:pointer;padding:8px 12px}.btn-primary,.tabs button.active{background:var(--navy-800);border-color:var(--navy-800);color:#fff}.btn-gold{background:var(--gold-500);border-color:var(--gold-500);color:var(--navy-950);font-weight:700}.btn-danger{background:var(--bad-bg);border-color:transparent;color:var(--bad)}.btn-ghost{background:transparent}.btn:disabled{cursor:default;opacity:.55}.grow{flex:1;min-width:180px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%}td,th{border-bottom:1px solid var(--line);padding:12px 10px;text-align:left;vertical-align:top}th{color:var(--muted);font-size:12px;font-weight:600;letter-spacing:.03em;text-transform:uppercase}tr.clickable{cursor:pointer}tr.clickable:hover{background:#f8fbff}.muted{color:var(--muted)}.pill,.strong{font-weight:650}.pill{align-items:center;background:#eef2f6;border-radius:999px;color:var(--muted);display:inline-flex;font-size:12px;padding:3px 8px}.pill.main{display:flex;flex-direction:column;gap:4px;margin-top:8px;width:-moz-fit-content;width:fit-content}.pill.info{background:var(--info-bg);color:var(--info)}.pill.ok{background:var(--ok-bg);color:var(--ok)}.pill.warn{background:var(--warn-bg);color:var(--warn)}.pill.bad{background:var(--bad-bg);color:var(--bad)}.pill.paid{background:var(--paid-bg);color:var(--paid)}.board{align-items:start;display:grid;gap:12px;grid-template-columns:repeat(4,1fr)}.column{background:#eef2f7;border-radius:14px;min-height:180px;padding:10px}.column h3{display:flex;font-size:13px;justify-content:space-between;margin-bottom:8px}.ticket{background:#fff;border:1px solid #fff;border-radius:12px;display:block;margin-bottom:8px;padding:12px}.ticket:hover{border-color:var(--gold-400)}.ticket b{display:block;margin:6px 0}.grid-2{display:grid;gap:16px;grid-template-columns:1.4fr .8fr}.form-grid{display:grid;gap:12px 14px;grid-template-columns:1fr 1fr}.form-grid>.wide{grid-column:1/-1}.field{display:flex;flex-direction:column;gap:6px}.field.wide{grid-column:1/-1}.field span{font-weight:650}.field a{color:var(--info);font-size:13px;text-decoration:underline;width:-moz-fit-content;width:fit-content}input,select,textarea{background:#fff;border:1px solid #d5deea;border-radius:10px;padding:10px 12px;width:100%}textarea{min-height:90px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--gold-500);outline:2px solid rgba(212,160,23,.35)}.check{align-items:center;flex-direction:row;gap:8px}.check input{width:auto}.steps{display:flex;flex-direction:column;gap:10px}.step{gap:10px;grid-template-columns:28px 1fr}.dot,.step{display:grid}.dot{background:#e8eef5;border-radius:50%;color:var(--muted);font-size:12px;font-weight:700;height:28px;place-items:center;width:28px}.step.current .dot{background:var(--gold-500);color:var(--navy-950)}.step.approved .dot{background:var(--ok);color:#fff}.step.rejected .dot,.step.revision .dot{background:var(--bad);color:#fff}.step.revision .dot{background:var(--warn)}.timeline{display:flex;flex-direction:column;gap:12px;margin-top:8px}.timeline article{border-left:2px solid var(--line);padding-left:12px}.files{display:flex;flex-direction:column;gap:8px;margin-top:8px}.files button{text-align:left}.login-page{background:radial-gradient(ellipse 70% 55% at 8% 92%,rgba(212,160,23,.28),transparent 58%),radial-gradient(ellipse 55% 45% at 88% 8%,rgba(26,66,104,.95),transparent 62%),linear-gradient(155deg,#07111f,#0e2742 46%,#12304d);color:#fff;display:grid;grid-template-columns:1.1fr .9fr;min-height:100vh}.login-hero{display:flex;flex-direction:column;justify-content:flex-end;padding:64px}.login-hero h1{font-size:42px;letter-spacing:-.04em;max-width:560px}.login-hero p{color:#c5d3e2;margin-top:12px;max-width:460px}.login-card{background:#fff;border-radius:20px;box-shadow:0 24px 60px #07111f47;color:var(--text);gap:16px;margin:auto;padding:28px;width:min(420px,calc(100% - 48px))}.login-card,.login-head{display:flex;flex-direction:column}.login-head{gap:4px}.login-card h2{font-size:24px}.login-card .field{gap:8px}.login-card input{border-radius:12px;height:44px;padding:0 14px}.login-card .btn{border-radius:12px;height:44px;width:100%}.login-timer{color:var(--navy-800);font-size:32px;font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:.04em;margin:0}.login-version{color:#9aa8b8;font-size:11px;letter-spacing:.02em;line-height:1.2;margin:4px 0 0;text-align:center}.login-card .demo{color:var(--muted);font-size:13px;margin-top:0;position:relative}.login-card .demo>span{border-bottom:1px dashed #c5d0dc;cursor:default}.login-card .demo ul{background:#f7f9fc;border-radius:12px;display:none;line-height:1.45;list-style:none;margin:8px 0 0;padding:10px 12px}.login-card .demo:focus-within ul,.login-card .demo:hover ul{display:grid;gap:6px}.login-card .demo em{color:var(--navy-800);font-style:normal}.demo{color:var(--muted);font-size:12px;line-height:1.5;margin-top:16px}.hover-note{cursor:help;display:inline-flex;outline:none;width:-moz-fit-content;width:fit-content}.hover-note-box{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 40px #07111f2e;color:var(--text);padding:12px 14px;position:fixed;width:min(340px,calc(100vw - 24px));z-index:40}.hover-note-box.flip{transform:translateY(-100%)}.hover-note-box p,.hover-note-box strong{display:block}.hover-note-box p{color:var(--bad);margin-top:4px}.error{background:var(--bad-bg);border-radius:10px;color:var(--bad);padding:10px 12px}.empty{color:var(--muted);padding:28px;text-align:center}.modal-back{background:#07111f7a;display:grid;inset:0;padding:24px;place-items:center;position:fixed;z-index:30}.modal{background:#fff;border-radius:16px;box-shadow:var(--shadow);max-height:calc(100vh - 48px);overflow:auto;padding:20px;width:min(640px,100%)}.stack{display:flex;flex-direction:column;gap:14px}.mt{margin-top:14px}.mb{margin-bottom:14px}.org,.org ul{list-style:none;margin:0;padding:0}.org ul{border-left:1px solid var(--line);margin-left:14px;padding-left:12px}.org-row{align-items:center;display:flex;gap:8px;min-height:32px}.org-toggle{background:#eef2f7;border:0;border-radius:6px;color:var(--navy-800);cursor:pointer;flex:0 0 22px;font-weight:700;height:22px;width:22px}.org-toggle-empty{background:transparent;cursor:default}.user-list{max-height:70vh;overflow:auto}.user-open{background:transparent;border:0;color:inherit;cursor:pointer;display:flex;flex-direction:column;font:inherit;gap:2px;padding:0;text-align:left;width:100%}.user-open:hover .strong{text-decoration:underline}.user-list tbody tr:hover{background:#f7f9fc}.party-table table{min-width:1180px}.party-table td{max-width:280px}.party-row{cursor:pointer}.party-row:hover .strong{text-decoration:underline}.party-row:focus-visible{outline:2px solid rgba(212,160,23,.55);outline-offset:-2px}.party-dialog{display:flex;flex-direction:column;overflow:hidden;padding:0;width:min(680px,100%)}.party-foot,.party-head{flex:0 0 auto;padding:16px 20px}.party-head{align-items:flex-start;border-bottom:1px solid var(--line);display:flex;gap:12px;justify-content:space-between}.party-head h2{font-size:18px;margin:0}.party-head p{margin-top:4px}.party-pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.party-close{background:transparent;border:0;border-radius:8px;color:var(--muted);cursor:pointer;flex:0 0 32px;font-size:22px;height:32px;line-height:1;width:32px}.party-close:hover{background:#f4f6fa;color:var(--text)}.party-close:focus-visible{outline:2px solid rgba(212,160,23,.55)}.party-body{min-height:0;overflow:auto;padding:4px 20px 8px}.party-note{margin:14px 0 0}.party-section{border-top:1px solid var(--line);padding:14px 0}.party-section:first-child{border-top:0}.party-section h3{font-size:14px;margin:0 0 10px}.party-facts{display:grid;gap:12px 20px;grid-template-columns:1fr 1fr;margin:0}.party-facts .wide{grid-column:1/-1}.party-facts>div{min-width:0}.party-facts dt{color:var(--muted);font-size:12px}.party-facts dd{margin:2px 0 0}.party-value{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.party-value button{background:transparent;border:0;color:var(--navy-700);cursor:pointer;font:inherit;font-size:12px;padding:0}.party-value button:hover{text-decoration:underline}.party-list{line-height:1.45;margin:0;padding-left:18px}.party-alert{background:var(--bad-bg);border-radius:12px;color:var(--bad);margin-top:14px;padding:12px 14px}.party-alert ul{margin:8px 0 0;padding-left:18px}.party-foot{align-items:center;gap:12px;justify-content:space-between}.file-card,.party-foot{border-top:1px solid var(--line);display:flex}.file-card{flex-direction:column;gap:8px;padding:10px 0}.file-card:first-child{border-top:0;padding-top:0}.file-copies{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;padding:0}.file-copies li{align-items:baseline;display:flex;flex-wrap:wrap;gap:6px 10px}.file-copies button{background:transparent;border:0;color:var(--navy-700);cursor:pointer;font:inherit;padding:0;text-align:left}.file-copies button:hover{text-decoration:underline}.bad-text{color:var(--bad)}.ok-text{color:var(--ok);font-weight:600}.trust-banner{align-items:flex-start;background:var(--warn-bg);border-radius:12px;color:var(--warn);display:flex;gap:12px;margin-top:8px;padding:10px 12px}.trust-banner.ok{background:var(--ok-bg);color:var(--ok)}.trust-banner.bad{background:var(--bad-bg);color:var(--bad)}.trust-banner p{line-height:1.4;margin:0}.trust-banner strong{display:block;margin-bottom:2px}.orbit{flex:0 0 28px;height:28px;position:relative;width:28px}.orbit span,.orbit:after,.orbit:before{animation:orbit .9s linear infinite;border-bottom:2px solid transparent;border-left:2px solid transparent;border-radius:50%;border-right:2px solid transparent;border-right-color:var(--gold-500);border-top:2px solid transparent;border-top-color:var(--navy-800);content:"";inset:0;position:absolute}.orbit:before{animation-direction:reverse;animation-duration:1.3s;border-right-color:var(--navy-700);border-top-color:var(--gold-500);inset:4px}.orbit:after{animation-duration:.7s;inset:9px}@keyframes orbit{to{transform:rotate(1turn)}}.chain{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.chain b{background:#eef2f7;border-radius:999px;font-weight:650;padding:4px 10px}.findings{color:var(--bad);font-size:13px;line-height:1.45;margin:4px 0 0;padding-left:18px}.route-card{border:1px solid var(--line);border-radius:12px;padding:12px}.route-card.default{border-color:var(--gold-400)}.route-card.off{opacity:.72}.route-head{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.route-title{align-items:center;display:flex;flex-wrap:wrap;gap:8px;min-width:0}.route-actions{display:flex;flex:0 0 auto;gap:8px}.pick-list{display:flex;flex-direction:column;gap:4px}.pick-list button{background:#f7f9fc;border:0;border-radius:8px;cursor:pointer;padding:6px 8px;text-align:left}.pick-list button.on{background:var(--gold-100)}.page:has(>.route-desk){box-sizing:border-box;display:flex;flex-direction:column;height:calc(100vh - 68px);overflow:hidden;padding-bottom:16px}.route-desk{display:grid;flex:1;gap:16px;grid-template-columns:320px minmax(0,1fr);grid-template-rows:minmax(0,1fr);min-height:0}.route-main,.route-rail{display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:0}.route-main-head,.route-rail-head{border-bottom:1px solid var(--line);padding:16px 16px 12px}.route-filters,.route-rail-head input{margin-top:10px}.route-filters{display:flex;gap:6px}.route-filters button{flex:1;font-size:12px;padding:6px 4px;white-space:nowrap}.route-main-body,.route-rail-list{min-height:0;overflow:auto;padding:8px}.route-main-body{display:flex;flex:1;flex-direction:column;gap:14px;overflow:hidden;padding:16px}.route-main .btn{white-space:nowrap}.co-item{align-items:start;background:transparent;border:0;border-radius:10px;cursor:pointer;display:grid;gap:8px;grid-template-columns:10px 1fr;padding:8px 10px;text-align:left;width:100%}.co-item:hover{background:#f7f9fc}.co-item.on{background:var(--gold-100)}.co-item small,.co-item strong{display:block}.co-item small{color:var(--muted);margin-top:2px}.co-dot{background:#c5d0dc;border-radius:50%;height:8px;margin-top:6px;width:8px}.co-dot.warn{background:var(--gold-500)}.co-dot.ok{background:var(--ok)}.role-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.role-card{background:#f8fafc;border:1px solid var(--line);border-radius:12px;display:flex;flex-direction:column;gap:8px;min-width:0;padding:12px}.role-card strong{display:block}.role-sheet{background:#fff;border:1px solid var(--line);border-radius:12px;display:flex;flex:1 1 0;flex-direction:column;min-height:0;overflow:hidden}.role-sheet-head{align-items:flex-start;display:flex;flex:0 0 auto;gap:12px;justify-content:space-between;padding:14px 16px}.role-sheet-body{flex:1 1 auto;min-height:0;overflow:auto}.sheet-roles{background:#d4e4f6;border-color:#b7cfea}.sheet-roles .role-sheet-head{background:#c3d8f2}.sheet-routes{background:#ffe8b8;border-color:#e6cc86}.sheet-routes .role-sheet-head{background:#ffd98a}.route-rail{background:#e7eef6}.route-rail-head{background:#d9e4f0}.role-sheet .role-line,.role-sheet .route-row{background:#fff;border:1px solid rgba(18,32,51,.08);border-radius:10px;margin:8px 10px}.role-sheet .role-line:last-child,.role-sheet .route-row:last-child{margin-bottom:10px}.role-sheet-head p{margin-top:4px}.role-line{align-items:center;border-top:1px solid var(--line);display:grid;gap:12px;grid-template-columns:minmax(140px,220px) minmax(0,1fr) auto;padding:12px 16px}.role-line>span{font-weight:650}.role-line .who{min-width:0}.role-line .who small,.role-line .who strong{display:block}.role-line .who small{color:var(--muted);font-weight:500;margin-top:2px}.route-row{border-top:1px solid var(--line);display:flex;flex-direction:column;gap:8px;padding:14px 16px}.route-row.off{opacity:.72}.modal.wide{width:min(820px,100%)}.modal-head{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.modal-head h2{font-size:18px;margin:0}.modal.warn .findings,.modal.warn h2{color:var(--bad)}.modal-head p{margin-top:4px}.kind-picks{display:flex;flex-wrap:wrap;gap:6px}.kind-picks button.active{background:var(--navy-800);border-color:var(--navy-800);color:#fff}.step-editor{background:#f8fafc}@media(max-width:980px){.board,.form-grid,.grid-2,.login-page,.role-grid,.stats{grid-template-columns:1fr}.login-hero,.sidebar{display:none}.page,.topbar{padding-left:16px;padding-right:16px}.page:has(>.route-desk){height:auto;overflow:visible}.route-desk{grid-template-columns:1fr;grid-template-rows:none}.role-sheet,.route-main-body{overflow:visible}.role-sheet{flex:none}.role-sheet-body{overflow:visible}.route-rail{max-height:320px}.party-facts,.role-line{grid-template-columns:1fr}.party-facts .wide{grid-column:auto}}
