:root{--font-sans:"IBM Plex Sans",system-ui,-apple-system,sans-serif;--font-mono:"IBM Plex Mono",ui-monospace,monospace;--font-display:"IBM Plex Sans",var(--font-sans);--primary:#2F6FE8;--primary-hover:#1F5BD0;--primary-tint:#E7EEFC;--primary-tint-subtle:#F2F6FE;--bg:#F4F5F7;--surface:#FFFFFF;--surface-2:#EEF1F6;--border:#DDE1E8;--border-hover:#C5CCD6;--divider:#ECEEF2;--grid-line:rgba(20,24,31,0.04);--text:#14181F;--text-muted:#4A5566;--text-subtle:#6B7686;--success:#198038;--success-bg:#E7F3EA;--success-text:#15643B;--warn:#B45309;--warn-bg:#FBF0D6;--warn-text:#7A4B00;--warn-accent:#F1C21B;--error:#DA1E28;--error-bg:#FBE9EA;--error-text:#9B1C1C;--info:#2F6FE8;--info-bg:#E7EEFC;--info-text:#1E3A8A;color-scheme:light}[data-theme=dark]{--primary:#4589FF;--primary-hover:#5B9BFF;--primary-tint:#2A3650;--primary-tint-subtle:#232C3E;--bg:#242A33;--surface:#313946;--surface-2:#394251;--border:#434D5C;--border-hover:#525D6E;--divider:#333C49;--grid-line:rgba(255,255,255,0.035);--text:#F1F4F8;--text-muted:#C4CCD8;--text-subtle:#919EAE;--success:#42BE65;--success-bg:#22392B;--success-text:#8FE3AD;--warn:#F1C21B;--warn-bg:#3A3320;--warn-text:#F3D98A;--warn-accent:#F1C21B;--error:#FA4D56;--error-bg:#3E2327;--error-text:#FFB0B5;--info:#4589FF;--info-bg:#25304A;--info-text:#B6CDFF;color-scheme:dark}*{box-sizing:border-box}body,html{padding:0;margin:0;height:100%}body{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;background:var(--bg);color:var(--text)}#__next,main{height:100%}.mono{font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.port-reg{overflow-x:auto}.port-reg table.reg{width:100%;border-collapse:separate;border-spacing:0;font-size:13px;table-layout:fixed}.port-reg thead th{position:-webkit-sticky;position:sticky;top:0;z-index:2;background:var(--surface-2);text-align:left;font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-subtle);padding:9px 14px;border-bottom:1px solid var(--border);white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.port-reg thead th.c{text-align:center}.port-reg tbody td{padding:11px 14px;border-bottom:1px solid var(--divider);vertical-align:middle;color:var(--text-muted)}.port-reg[data-density=compact] tbody td{padding:4px 14px}.port-reg[data-density=compact] tr.req td:first-child,.port-reg[data-density=compact] tr.t-contract td,.port-reg[data-density=compact] tr.t-object td{padding-left:14px}.port-reg tbody tr{transition:background .1s;cursor:pointer}.port-reg tbody tr.req:hover{background:var(--surface-2)}.port-reg tbody tr.row-move{background:var(--warn-bg)}.port-reg .col-hidden{display:none}.port-reg tr.t-company td{background:var(--surface);font-weight:600}.port-reg tr.t-contract td{padding-left:30px}.port-reg tr.t-object td{background:var(--surface);padding-left:46px}.port-reg tr.req td:first-child{padding-left:60px}.port-reg .indent-ico{width:14px;height:14px;color:var(--text-subtle);margin-right:4px;vertical-align:-2px}.port-reg .ob-name{font-weight:600;color:var(--text);font-size:12px}.port-reg .co-name{font-size:12px;font-weight:700;color:var(--text)}.port-reg .ct-code{font-family:var(--font-mono);font-weight:600;color:var(--primary);font-size:12px}.port-reg .ct-subject,.port-reg .ct-sum{color:var(--text-muted);font-size:12px}.port-reg .code,.port-reg .ct-sum{font-family:var(--font-mono);font-weight:600}.port-reg .code{font-size:12px;color:var(--primary);display:inline-flex;align-items:center;gap:7px}.port-reg .code,.port-reg tr.req td:first-child{white-space:nowrap}.port-reg .code .pin{width:6px;height:6px;border-radius:2px;background:var(--primary);flex:0 0 6px}.port-reg .cellbox{display:flex;flex-direction:column;gap:2px;min-width:0;overflow:hidden}.port-reg .subline{display:flex;align-items:center;gap:6px;min-width:0}.port-reg .subline .sub{color:var(--text-subtle);font-size:11.5px}.port-reg .subline .sub,.port-reg .zcode{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.port-reg .zcode{color:var(--text);font-weight:500;display:block}.port-reg .no-insp{color:var(--text-subtle);font-size:12px;font-style:italic}.port-reg .cell-person{display:flex;align-items:center;gap:8px;min-width:0}.port-reg .av-sm{width:24px;height:24px;border-radius:5px;flex:0 0 24px;display:grid;place-items:center;color:#fff;font-size:10px;font-weight:600;background:linear-gradient(135deg,var(--primary),var(--primary-hover))}.port-reg .cell-person .nm{color:var(--text-muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.port-reg .bar{width:84px;height:6px;border-radius:999px;background:var(--divider);overflow:hidden;display:inline-block;vertical-align:middle}.port-reg .bar>i{display:block;height:100%;border-radius:999px}.port-reg .bar-meta{color:var(--text-subtle);margin-left:7px;vertical-align:middle}.port-reg .bar-meta,.port-reg .dt{font-family:var(--font-mono);font-size:11px}.port-reg .dt{color:var(--text-muted);white-space:nowrap}.port-reg .dt .rel{margin-left:6px;font-weight:600}.port-reg .rel.soon{color:var(--warn-accent)}.port-reg .rel.over{color:var(--error)}.port-reg .rel.today{color:var(--info)}.port-reg .rel.ok{color:var(--text-subtle)}.port-reg .result{font-family:var(--font-mono);font-weight:700;font-size:14px}.port-reg .result.ok{color:var(--success)}.port-reg .result.no{color:var(--error)}.port-reg .result.na{color:var(--text-subtle)}.port-reg .move-badge{display:inline-flex;align-items:center;gap:5px;height:18px;padding:0 7px;border-radius:999px;font-size:10px;font-weight:700;color:var(--warn-text);background:var(--warn-bg);border:1px solid color-mix(in srgb,var(--warn-accent) 36%,transparent);white-space:nowrap;margin-left:6px}.port-reg .move-badge .d{width:5px;height:5px;border-radius:50%;background:var(--warn-accent);flex:0 0 5px}.port-reg .onsite-badge{height:18px;padding:0 7px;border-radius:999px;font-size:10px;font-weight:700;color:var(--info);background:var(--info-bg);border:1px solid color-mix(in srgb,var(--info) 36%,transparent);white-space:nowrap;margin-left:6px}.port-reg .on-site,.port-reg .onsite-badge{display:inline-flex;align-items:center;gap:5px}.port-reg .on-site{height:20px;padding:0 8px;border-radius:999px;font-size:11px;font-weight:600;color:var(--success);background:var(--success-bg);border:1px solid color-mix(in srgb,var(--success) 36%,transparent)}@keyframes ik-pulse-ring{0%{transform:scale(.6);opacity:.7}to{transform:scale(1.6);opacity:0}}.ik-pulse{position:relative}.ik-pulse:after{content:"";position:absolute;inset:-4px;border-radius:50%;border:1px solid var(--success);opacity:.5;animation:ik-pulse-ring 2.2s ease-out infinite}.ik-band.mini{min-height:0;padding:5px 44px 5px 10px;align-items:center;gap:3px}.ik-band .ik-ribcol{position:absolute;right:8px;bottom:6px;z-index:3}.ik-grp:last-child{border-right:0}.ik-grpbody{display:flex;gap:5px;flex:1 1;align-items:stretch}.ik-big:hover{background:var(--surface);border-color:var(--border)}.ik-big.primary{color:var(--primary-hover);background:var(--primary-tint);border-color:var(--primary)}.ik-big.primary .anticon{color:var(--primary)}.ik-big.primary:hover{background:var(--primary-tint)}.ik-col{display:flex;flex-direction:column;justify-content:center;gap:2px}.ik-sm:hover{background:var(--surface);border-color:var(--border)}.ik-mini.primary{color:var(--primary);background:var(--primary-tint)}.ik-mini .anticon{font-size:17px}.ik-mini:hover{background:var(--surface);border-color:var(--border)}.ik-mini.primary .anticon{color:var(--primary)}.ik-subnav{gap:3px;padding:8px 14px;background:var(--surface);border-bottom:1px solid var(--border);overflow:auto}.ik-snav,.ik-subnav{display:flex;align-items:center}.ik-snav{gap:8px;height:32px;padding:0 12px;border-radius:8px;color:var(--text-muted);font-weight:500;font-size:12.5px;white-space:nowrap;cursor:pointer;border:1px solid transparent}.ik-snav:hover{background:var(--surface-2)}.ik-snav.on{background:var(--primary-tint);color:var(--primary-hover);border-color:var(--primary)}.ik-snav .cnt{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);background:var(--surface-2);border-radius:20px;padding:0 7px}.ik-snav.on .cnt{background:var(--primary);color:#fff}.pf-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px;align-items:start}@media (max-width:1080px){.pf-grid{grid-template-columns:minmax(0,1fr)}}.pf-split{display:grid;grid-template-columns:236px minmax(0,1fr)}@media (max-width:620px){.pf-split{grid-template-columns:minmax(0,1fr)}.pf-aside{border-right:0!important;border-bottom:1px solid var(--divider)}}.pf-card{border:1px solid var(--border);border-radius:4px;background:var(--surface);overflow:hidden;display:flex;flex-direction:column;transition:border-color .14s ease,box-shadow .14s ease}.pf-card:hover{border-color:var(--border-hover);box-shadow:0 8px 22px -12px rgba(0,0,0,.35)}.pf-aside{padding:14px;border-right:1px solid var(--divider);display:flex;flex-direction:column;gap:12px}.pf-onm{font-weight:600;font-size:13.5px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pf-req{display:block;width:100%;text-align:left;font:inherit;color:inherit;background:transparent;border:0;border-bottom:1px solid var(--divider);border-left:2px solid transparent;padding:9px 13px;cursor:pointer}.pf-req:last-of-type{border-bottom:0}.pf-req:hover{background:var(--primary-tint-subtle)}.pf-req:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.pf-req.move{border-left-color:var(--warn-accent)}.pf-req.late{border-left-color:var(--error)}.pf-more{width:100%;height:32px;border:0;border-top:1px solid var(--divider);background:transparent;color:var(--primary);font:inherit;font-size:12px;font-weight:600;cursor:pointer}.pf-more:hover{background:var(--primary-tint-subtle)}@media (max-width:900px){.ik-2col{grid-template-columns:minmax(0,1fr)!important}}