:root{--navy: #152844;--teal: #009078;--teal-d: #00735f;--teal-l: #2fb89c;--teal-tint: #e4f4ef;--mint: #a8d8c8;--ok: #0a9a7d;--ok-tint: #e3f5ef;--warn: #e08a1e;--warn-tint: #fbf0db;--red: #ef5a6f;--red-tint: #fdebee;--info: #5b8def;--info-tint: #eaf1fe;--violet: #8b7cf0;--violet-tint: #efecfe;--t-teal-bg: #e4f4ef;--t-teal-fg: #00735f;--t-blue-bg: #eaf1fe;--t-blue-fg: #3a6fd8;--t-violet-bg: #efecfe;--t-violet-fg: #6a5ae0;--t-rose-bg: #fdeaf0;--t-rose-fg: #d94e74;--t-amber-bg: #fdf2dd;--t-amber-fg: #c47f12;--t-mint-bg: #e6f7ef;--t-mint-fg: #0a9a7d;--ink: #1a2740;--ink2: #6b7689;--ink3: #97a0b0;--bg: #f3f6f6;--surface: #ffffff;--surface-2: #f5f8f8;--line: #e8edec;--hair: #f1f5f4;--mono: "IBM Plex Mono", ui-monospace, monospace;--disp: "Plus Jakarta Sans", system-ui, sans-serif;--body: "Plus Jakarta Sans", system-ui, sans-serif;--radius: 18px;--radius-m: 14px;--radius-s: 11px;--shadow: 0 1px 2px rgba(21, 40, 68, .03), 0 12px 30px -18px rgba(21, 40, 68, .16);--shadow-soft: 0 8px 24px -16px rgba(21, 40, 68, .2);--shadow-pop: 0 28px 60px -28px rgba(0, 144, 120, .35);--ring: 0 0 0 3px rgba(0, 144, 120, .16);--nav-w: 246px}*{box-sizing:border-box;margin:0}html{scrollbar-gutter:stable}body{background:radial-gradient(1100px 600px at 100% -10%,rgba(0,144,120,.07),transparent 60%),radial-gradient(900px 520px at -5% 0%,rgba(91,141,239,.06),transparent 55%),var(--bg);color:var(--ink);font:14px/1.55 var(--body);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;letter-spacing:-.005em}::selection{background:var(--teal);color:#fff}a{color:inherit}.regmark{display:none}button{font:600 13px/1 var(--body);letter-spacing:0;background:var(--teal);color:#fff;border:1px solid var(--teal);padding:11px 18px;cursor:pointer;border-radius:999px;transition:background .15s,box-shadow .15s,transform .06s,border-color .15s;box-shadow:0 2px 8px -2px #00907866}button:hover:not(:disabled){background:var(--teal-d);border-color:var(--teal-d)}button:active:not(:disabled){transform:translateY(1px)}button:disabled{opacity:.45;cursor:default;box-shadow:none}button.ghost{background:var(--surface);color:var(--ink);border-color:var(--line);box-shadow:none}button.ghost:hover:not(:disabled){background:var(--surface-2);border-color:var(--teal-l);color:var(--teal-d)}button.dark{background:var(--navy);border-color:var(--navy);box-shadow:0 2px 8px -2px #15284466}button.dark:hover:not(:disabled){background:#0e1c32;border-color:#0e1c32}button.mini{padding:7px 12px;font-size:12px}button.danger{background:var(--surface);color:var(--red);border-color:color-mix(in srgb,var(--red) 40%,white);box-shadow:none}button.danger:hover:not(:disabled){background:var(--red);color:#fff;border-color:var(--red)}input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea{font:500 13px var(--body);background:var(--surface);border:1px solid var(--line);padding:10px 12px;color:var(--ink);outline:none;width:100%;border-radius:var(--radius-s);transition:border-color .15s,box-shadow .15s}input:not([type=checkbox]):not([type=radio]):not([type=file]):focus,select:focus,textarea:focus{border-color:var(--teal-l);box-shadow:var(--ring)}label.field{display:flex;flex-direction:column;gap:6px}label.field>span{font:600 10px var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--ink2)}.muted{color:var(--ink2)}.mono{font-family:var(--mono)}.err{color:var(--red);font:600 12px var(--body)}.ok{color:var(--ok)}.blueprint{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden;opacity:.11}.blueprint svg{width:100%;height:100%;display:block}.blueprint .bp-grid line{stroke:#1a2740;stroke-width:.5;opacity:.4}.blueprint .bp-axis line{stroke:#1a2740;stroke-width:.7;opacity:.5;fill:none;stroke-dasharray:8 3 1 3}.blueprint .bp-path{fill:none;stroke:#1a2740;stroke-width:1.3;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;opacity:0;animation:bp-draw 16s ease-in-out infinite}.blueprint .bp-text{fill:#1a2740;font:700 14px var(--mono);letter-spacing:.04em;opacity:0;animation:bp-text 16s ease-in-out infinite}@keyframes bp-draw{0%{stroke-dashoffset:1;opacity:0}4%{opacity:1}46%{stroke-dashoffset:0;opacity:1}88%{stroke-dashoffset:0;opacity:1}97%{stroke-dashoffset:0;opacity:0}to{stroke-dashoffset:1;opacity:0}}@keyframes bp-text{0%,30%{opacity:0}48%{opacity:1}88%{opacity:1}97%,to{opacity:0}}@media (prefers-reduced-motion: reduce){.blueprint .bp-path{animation:none;stroke-dashoffset:0;opacity:1}.blueprint .bp-text{animation:none;opacity:1}}.app{display:grid;grid-template-columns:var(--nav-w) 1fr;min-height:100vh;position:relative;z-index:1}.login-wrap{position:relative;z-index:1}.nav{background:var(--surface);border-right:1px solid var(--line);position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:6px}.nav .brand{padding:18px 16px 14px;display:flex;align-items:center;gap:11px}.nav .brand .logo{width:34px;height:34px;border-radius:10px;flex:none;background:linear-gradient(135deg,var(--teal),var(--teal-d));display:grid;place-items:center;color:#fff;font:800 17px var(--disp);box-shadow:0 6px 16px -6px #00907899}.nav .brand h1{font:800 18px/1 var(--disp);letter-spacing:-.02em}.nav .brand h1 i{font-style:normal;color:var(--teal)}.nav .brand .sub{font:600 8px/1 var(--mono);letter-spacing:.18em;color:var(--ink3);text-transform:uppercase;margin-top:4px;display:block}.brandlogo{width:100%;max-width:204px;height:auto;display:block}.login .lhead{justify-content:center}.nav .links{padding:6px;flex:1;overflow:auto;display:flex;flex-direction:column;gap:3px}.nav .navsection{font:700 9px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink3);padding:16px 12px 7px}.nav a.link{display:flex;align-items:center;gap:12px;text-decoration:none;border-radius:12px;padding:11px 12px;font:600 13.5px var(--body);color:var(--ink2);transition:all .13s}.nav a.link svg{width:19px;height:19px;flex:none;stroke:currentColor;stroke-width:1.8;fill:none;opacity:.9}.nav a.link:hover{color:var(--ink);background:var(--surface-2)}.nav a.link.active{color:#fff;background:linear-gradient(135deg,var(--teal),var(--teal-d));box-shadow:0 8px 18px -8px #00907899}.nav a.link.active svg{opacity:1}.nav .navfoot{padding:12px 16px;margin-top:auto;font:500 10px var(--mono);letter-spacing:.04em;color:var(--ink3);text-transform:uppercase}.main{min-width:0;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 30px;position:sticky;top:0;z-index:10;background:#f3f6f6d1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.topbar .crumb{font:800 22px var(--disp);letter-spacing:-.025em}.topbar .crumb small{display:block;font:500 12px var(--body);color:var(--ink2);letter-spacing:0;margin-top:2px}.topbar .pills{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.pill{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);background:var(--surface);padding:8px 13px;border-radius:999px;font:600 11.5px var(--body);color:var(--ink2);box-shadow:var(--shadow)}.pill .dot{width:7px;height:7px;border-radius:50%;background:var(--ink3)}.pill .dot.ok{background:var(--ok)}.pill .dot.warn{background:var(--warn)}.pill .dot.bad{background:var(--red)}.content{padding:8px 34px 48px;max-width:none}.zone{margin-bottom:30px}.zhead{display:flex;align-items:center;gap:12px;margin-bottom:18px}.znum{font:700 11px var(--mono);color:var(--teal-d);background:var(--teal-tint);padding:6px 10px;border-radius:9px}.ztitle{font:700 19px var(--disp);letter-spacing:-.02em}.ztitle small{font:500 12.5px var(--body);color:var(--ink2);letter-spacing:0;text-transform:none;margin-left:10px}.zhead .rule{flex:1;height:1px;background:var(--line)}.zhead .end{display:flex;gap:10px;align-items:center}.dims{display:flex;flex-wrap:wrap;gap:14px}.dim{flex:1 1 150px;padding:18px 20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);position:relative;overflow:hidden}.dim .k{font:600 10.5px var(--mono);letter-spacing:.07em;color:var(--ink2);text-transform:uppercase}.dim .v{font:800 30px/1.05 var(--disp);margin-top:8px;letter-spacing:-.03em}.dim .v small{font:500 12px var(--mono);color:var(--ink2);margin-left:4px}.dim.alert{background:var(--red-tint);border-color:color-mix(in srgb,var(--red) 22%,white)}.dim.alert .v{color:var(--t-rose-fg)}.dim.t-teal{background:var(--t-teal-bg);border-color:color-mix(in srgb,var(--teal) 18%,white)}.dim.t-teal .v{color:var(--t-teal-fg)}.dim.t-blue{background:var(--t-blue-bg);border-color:color-mix(in srgb,var(--info) 18%,white)}.dim.t-blue .v{color:var(--t-blue-fg)}.dim.t-violet{background:var(--t-violet-bg);border-color:color-mix(in srgb,var(--violet) 18%,white)}.dim.t-violet .v{color:var(--t-violet-fg)}.dim.t-rose{background:var(--t-rose-bg);border-color:color-mix(in srgb,var(--red) 18%,white)}.dim.t-rose .v{color:var(--t-rose-fg)}.dim.t-amber{background:var(--t-amber-bg);border-color:color-mix(in srgb,var(--warn) 18%,white)}.dim.t-amber .v{color:var(--t-amber-fg)}.dim .dimicon{position:absolute;top:14px;right:14px;width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:#1a28440f;color:var(--ink2)}.dim .dimicon svg{width:17px;height:17px;stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round}.dim .k{padding-right:40px;overflow-wrap:anywhere;line-height:1.3}.dim.t-teal .dimicon{background:color-mix(in srgb,var(--teal) 16%,white);color:var(--t-teal-fg)}.dim.t-blue .dimicon{background:color-mix(in srgb,var(--info) 16%,white);color:var(--t-blue-fg)}.dim.t-violet .dimicon{background:color-mix(in srgb,var(--violet) 16%,white);color:var(--t-violet-fg)}.dim.t-rose .dimicon{background:color-mix(in srgb,var(--red) 16%,white);color:var(--t-rose-fg)}.dim.t-amber .dimicon{background:color-mix(in srgb,var(--warn) 16%,white);color:var(--t-amber-fg)}.dim.alert .dimicon{background:color-mix(in srgb,var(--red) 16%,white);color:var(--t-rose-fg)}.tablewrap{border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);max-height:560px;overflow:auto;box-shadow:var(--shadow)}table{width:100%;border-collapse:collapse;font-size:13px}th{font:600 10px var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--ink2);text-align:left;padding:14px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--surface-2);z-index:2;white-space:nowrap}td{padding:13px 14px;border-bottom:1px solid var(--hair);white-space:nowrap;vertical-align:middle}tbody tr:last-child td{border-bottom:0}tbody tr:hover td{background:var(--teal-tint)}td.num,th.num{text-align:right;font-family:var(--mono);font-size:12.5px}td.desc{max-width:360px;overflow:hidden;text-overflow:ellipsis}.codecell{font:600 12.5px var(--mono);color:var(--teal-d)}tr.clickable{cursor:pointer}.stamp{display:inline-block;font:700 10.5px var(--body);letter-spacing:0;padding:5px 11px;border-radius:999px;text-transform:capitalize;color:var(--ink2);background:var(--surface-2);border:1px solid var(--line)}.st-auto,.st-completed{color:var(--t-mint-fg);background:var(--t-mint-bg);border-color:color-mix(in srgb,var(--ok) 22%,white)}.st-flagged,.st-running{color:var(--t-amber-fg);background:var(--t-amber-bg);border-color:color-mix(in srgb,var(--warn) 24%,white)}.st-needs_question,.st-failed{color:var(--t-rose-fg);background:var(--t-rose-bg);border-color:color-mix(in srgb,var(--red) 22%,white)}.st-confirmed,.st-manual{color:var(--t-blue-fg);background:var(--t-blue-bg);border-color:color-mix(in srgb,var(--info) 22%,white)}.confwrap{display:flex;align-items:center;gap:8px}.conf{width:56px;height:7px;background:var(--hair);position:relative;border-radius:999px;overflow:hidden}.conf i{position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:left;background:var(--ok);display:block}.conf.mid i{background:var(--warn)}.conf.low i{background:var(--red)}.confpct{font:500 10px var(--mono);color:var(--ink2);width:30px}.seg{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:4px;background:var(--surface);gap:3px;box-shadow:var(--shadow)}.seg button{border:0;background:transparent;color:var(--ink2);padding:8px 16px;border-radius:999px;box-shadow:none}.seg button:hover:not(.on){background:var(--surface-2);color:var(--ink)}.seg button.on{background:var(--teal);color:#fff}.seg button.on:hover{background:var(--teal-d)}.panel{border:1px solid var(--line);background:var(--surface);padding:22px 24px;border-radius:var(--radius);box-shadow:var(--shadow)}.grid{display:grid;gap:16px}.grid.cols2{grid-template-columns:1fr 1fr}.grid.cols3{grid-template-columns:repeat(3,1fr)}.badge{display:inline-block;font:700 9px var(--mono);letter-spacing:.05em;text-transform:uppercase;padding:3px 8px;border-radius:999px;background:var(--warn-tint);color:var(--t-amber-fg);border:1px solid color-mix(in srgb,var(--warn) 26%,white)}.editrow td{background:var(--teal-tint)!important}.cfgfield{padding:14px 0;border-bottom:1px solid var(--hair)}.cfgfield:last-child{border-bottom:0;padding-bottom:0}.cfgfield:first-child{padding-top:0}.cfghelp{font:400 11.5px/1.5 var(--body);color:var(--ink2);margin:5px 0 10px}.drop{border:2px dashed var(--line);padding:46px 24px;text-align:center;cursor:pointer;transition:all .18s;background:var(--surface);border-radius:var(--radius)}.drop:hover,.drop.over{border-color:var(--teal-l);background:var(--teal-tint)}.drop b{font:700 18px var(--disp)}.drop b u{color:var(--teal);text-decoration:none;border-bottom:2px solid var(--teal)}.drop p{font:500 11.5px var(--mono);color:var(--ink2);margin-top:10px;letter-spacing:.01em}.filelist{display:flex;flex-wrap:wrap;gap:9px;margin-top:16px;min-height:10px}.ftag{display:inline-flex;align-items:center;gap:9px;border:1px solid var(--line);background:var(--surface);padding:8px 12px;font:500 12px var(--mono);border-radius:999px;box-shadow:var(--shadow)}.ftag .ext{font:700 9px var(--body);letter-spacing:.03em;background:var(--navy);color:#fff;padding:3px 7px;border-radius:6px}.ftag .ext.IFC{background:var(--teal)}.ftag .ext.PDF{background:var(--red)}.plot{border:1px solid var(--line);background:var(--surface);padding:17px 20px;margin-top:16px;border-radius:var(--radius);box-shadow:var(--shadow)}.plot .ptxt{font:600 12px var(--mono);display:flex;justify-content:space-between;gap:10px;color:var(--ink2)}.ptrack{height:8px;background:var(--hair);margin-top:13px;position:relative;overflow:hidden;border-radius:999px}.pbar{position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:left;background:linear-gradient(90deg,var(--teal),var(--info));transition:transform .5s}.pbar.scan{animation:scan 1.5s ease-in-out infinite;width:32%;border-radius:999px}@keyframes scan{0%{left:-32%}to{left:100%}}.q{border:1px solid var(--line);border-left:3px solid var(--teal);background:var(--surface);padding:17px 19px;margin-bottom:12px;border-radius:var(--radius-m);box-shadow:var(--shadow)}.q.resolved{border-left-color:var(--ok);opacity:.72}.q .qid{font:700 10px var(--mono);letter-spacing:.04em;color:var(--teal-d);text-transform:uppercase}.q.resolved .qid{color:var(--ok)}.q .qmeta{font:500 10.5px var(--mono);color:var(--ink2);margin-left:10px}.q .qtext{margin:9px 0 0;font-weight:500}.q .opts{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px;align-items:center}.proto{font:500 12px/1.85 var(--mono);border:1px solid var(--line);background:var(--surface);padding:16px 19px;max-height:320px;overflow:auto;border-radius:var(--radius)}.proto div{color:var(--ink2)}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:24px}.login{width:100%;max-width:410px;background:var(--surface);border:1px solid var(--line);position:relative;box-shadow:var(--shadow-pop);border-radius:24px;overflow:hidden}.login .lhead{padding:30px 34px 8px;background:var(--surface);display:flex;align-items:center;gap:13px}.login .lhead .logo{width:44px;height:44px;border-radius:13px;background:linear-gradient(135deg,var(--teal),var(--teal-d));display:grid;place-items:center;color:#fff;font:800 22px var(--disp);box-shadow:0 8px 18px -6px #00907899}.login h1{font:800 26px/1 var(--disp);letter-spacing:-.03em}.login h1 i{font-style:normal;color:var(--teal)}.login .sub{font:600 9.5px var(--mono);letter-spacing:.14em;color:var(--ink2);text-transform:uppercase;margin-top:7px;display:block}.login form{padding:28px 34px 32px;display:flex;flex-direction:column;gap:18px}.login button{width:100%;padding:14px;font-size:14px}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.spread{justify-content:space-between}.stack{display:flex;flex-direction:column;gap:8px}.spin{display:inline-block;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.center-msg{padding:60px 20px;text-align:center;color:var(--ink2);font-family:var(--mono);font-size:12.5px}.verdict{display:flex;align-items:center;gap:14px;padding:20px 24px;border-radius:var(--radius);border:1px solid var(--line);box-shadow:var(--shadow)}.verdict .big{font:800 26px var(--disp);letter-spacing:-.02em}.verdict.up{background:var(--t-mint-bg);border-color:color-mix(in srgb,var(--ok) 22%,white)}.verdict.up .big{color:var(--t-mint-fg)}.verdict.down{background:var(--t-rose-bg);border-color:color-mix(in srgb,var(--red) 22%,white)}.verdict.down .big{color:var(--t-rose-fg)}.verdict.flat{background:var(--surface-2)}.verdict.flat .big{color:var(--ink2)}button.demobtn{display:inline-flex;align-items:center;gap:7px;background:var(--surface);color:var(--ink2);border-color:var(--line);box-shadow:var(--shadow)}button.demobtn:hover:not(:disabled){background:var(--surface-2);color:var(--ink);border-color:var(--teal-l)}button.demobtn .dot{width:7px;height:7px;border-radius:50%;background:var(--ink3)}button.demobtn.on{background:var(--teal);color:#fff;border-color:var(--teal)}button.demobtn.on:hover:not(:disabled){background:var(--teal-d);border-color:var(--teal-d)}button.demobtn.on .dot{background:#fff}.demobar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:2px 34px 0;padding:9px 16px;border-radius:var(--radius-m);background:var(--navy);color:#eaf1fe;box-shadow:var(--shadow)}.demobar .tagdot{width:8px;height:8px;border-radius:50%;background:var(--teal-l);flex:none}.demobar b{font:700 12px var(--body);color:#fff}.demobar small{font:500 11px var(--mono);color:#9fb0c9;letter-spacing:.02em}.langseg{box-shadow:none;padding:3px}.langseg button{padding:6px 11px;font-size:11px;font-family:var(--mono)}.code{font:500 12px/1.7 var(--mono);background:#0e1c32;color:#cfe7df;border-radius:var(--radius-s);padding:14px 16px;overflow-x:auto;white-space:pre;margin:0}.code .c-key{color:#6fd3bd}.code .c-cmt{color:#7d8aa0}.api-ep{display:flex;align-items:flex-start;gap:12px;padding:13px 0;border-bottom:1px solid var(--hair)}.api-ep:last-child{border-bottom:0}.method{flex:none;font:700 10px var(--mono);letter-spacing:.04em;padding:5px 8px;border-radius:7px;color:#fff;min-width:56px;text-align:center}.method.GET{background:var(--teal)}.method.POST{background:var(--info)}.method.PATCH{background:var(--warn)}.method.DELETE{background:var(--red)}.method.PUT{background:var(--violet)}.api-ep .path{font:600 12.5px var(--mono);color:var(--ink);word-break:break-all}.api-ep .desc{font-size:12px;color:var(--ink2);margin-top:3px;line-height:1.5}.api-ep .auth{display:inline-block;font:600 9px var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--ink2);border:1px solid var(--line);border-radius:6px;padding:2px 6px;margin-top:5px}@media (max-width: 860px){.app{grid-template-columns:1fr}.nav{position:static;height:auto}.grid.cols2,.grid.cols3{grid-template-columns:1fr}}
