@font-face{font-family:Switzer;src:url(/fonts/Switzer-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Geist;src:url(/fonts/Geist-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Geist;src:url(/fonts/Geist-SemiBold.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono;src:url(/fonts/GeistMono-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}:root{--font-display: "Switzer", ui-serif, Georgia, serif;--font-body: "Geist", system-ui, sans-serif;--font-mono: "Geist Mono", ui-monospace, Consolas, monospace;--fs-caption: .75rem;--fs-body: .95rem;--fs-body-lg: 1.02rem;--fs-title: 1.06rem;--fs-h3: 1.25rem;--fs-h2: 1.6rem;--fs-h1: 2.1rem;--fs-display: 2.6rem;--lh-snug: 1.35;--lh-body: 1.6;--tracking-display: -.02em;--tracking-caps: .07em;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-7: 32px;--sp-8: 48px;--brand: #760031;--critical: #d51c39;--accent: #ff6060;--highlight: #feec41;--surface: #faf7f6;--panel: #ffffff;--sunken: #f5f0ef;--line: #ead9dd;--hairline: #f3e7ea;--ink: #23161a;--ink-2: #6b5960;--ink-3: #9a888e;--on-brand: #fdf2f4;--radius: 10px;--shadow-card: 0 1px 2px rgba(118, 0, 49, .06)}*{box-sizing:border-box}body{margin:0;background:var(--surface);color:var(--ink);font-family:var(--font-body);font-size:var(--fs-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-display);font-weight:700;line-height:var(--lh-snug);margin:0}h1{font-size:var(--fs-h1);letter-spacing:var(--tracking-display)}h2{font-size:var(--fs-h3)}h3{font-size:var(--fs-title)}a{color:var(--brand);text-decoration-color:var(--line)}a:hover{text-decoration-color:currentColor}.layout{display:grid;grid-template-columns:236px 1fr;min-height:100vh}.sidebar{background:var(--brand);color:var(--on-brand);padding:var(--sp-6) var(--sp-4);display:flex;flex-direction:column;gap:2px}.brand{font-family:var(--font-display);font-size:var(--fs-title);letter-spacing:var(--tracking-display);margin-bottom:var(--sp-5)}.brand small{display:block;margin-top:4px;font-family:var(--font-body);font-size:10.5px;font-weight:400;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:#fdf2f49e}.navlink{padding:8px 11px;border-radius:8px;text-decoration:none;color:#fdf2f4c7;font-size:var(--fs-body);display:flex;justify-content:space-between;align-items:center}.navlink:hover{background:#ffffff17;color:var(--on-brand)}.navlink.active{background:#ffffff26;color:#fff;font-weight:600}.sidebar .spacer{flex:1}.who{font-size:var(--fs-caption);color:#fdf2f49e;padding:0 11px}.sidebar button{background:#ffffff1a;border-color:#fff3;color:var(--on-brand)}.sidebar button:hover{background:#ffffff2e}.main{padding:var(--sp-6) var(--sp-7) var(--sp-8);max-width:1180px}.head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-4);margin-bottom:var(--sp-5)}.sub{color:var(--ink-2);font-size:var(--fs-caption);line-height:var(--lh-snug);margin-top:4px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:var(--sp-5);box-shadow:var(--shadow-card)}.panel+.panel{margin-top:var(--sp-4)}.grid{display:grid;gap:var(--sp-3)}.g4{grid-template-columns:repeat(4,1fr)}.g2{grid-template-columns:1fr 1fr}@media(max-width:980px){.g4,.g2,.layout{grid-template-columns:1fr}}.tile{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:var(--sp-4);box-shadow:var(--shadow-card)}.tile .label{font-size:11px;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--ink-3)}.tile .value{font-family:var(--font-display);font-weight:700;font-size:var(--fs-h2);letter-spacing:var(--tracking-display);margin-top:6px;font-variant-numeric:tabular-nums}.tile .foot{font-size:var(--fs-caption);color:var(--ink-2);margin-top:2px}.tile.alert{border-color:#f3c6ce}.tile.alert .value{color:var(--critical)}table{width:100%;border-collapse:collapse;font-size:var(--fs-caption)}th{text-align:left;font-size:11px;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--ink-3);font-weight:600;padding:0 10px 8px;border-bottom:1px solid var(--line)}td{padding:9px 10px;border-bottom:1px solid var(--hairline);vertical-align:top}tr:last-child td{border-bottom:0}tbody tr:hover{background:var(--sunken)}.num,.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.num{text-align:right}.badge{display:inline-flex;align-items:center;gap:5px;font-family:var(--font-body);font-size:11px;font-weight:600;padding:2px 8px;border-radius:999px;border:1px solid;white-space:nowrap}.badge.open{color:#a8102a;border-color:#f3c6ce;background:#fdeef1}.badge.review{color:#6b5300;border-color:#ecd96a;background:#fefad9}.badge.done,.badge.flat{color:var(--ink-2);border-color:var(--line);background:var(--sunken)}.bars{display:flex;flex-direction:column;gap:9px}.bar-row{display:grid;grid-template-columns:190px 1fr 44px;align-items:center;gap:10px;font-size:var(--fs-caption)}.bar-track{background:var(--sunken);border-radius:4px;height:14px}.bar-fill{background:var(--critical);height:14px;border-radius:0 4px 4px 0;min-width:3px}.bar-row .num{color:var(--ink-2);font-weight:600}label{display:block;font-size:var(--fs-caption);color:var(--ink-2);margin-bottom:4px}input,select,textarea{width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-family:var(--font-body);font-size:var(--fs-body)}input[inputmode=decimal],input[type=date]{font-family:var(--font-mono)}input:focus,select:focus,textarea:focus{outline:2px solid rgba(213,28,57,.25);border-color:var(--critical)}.field{margin-bottom:var(--sp-3)}.row{display:grid;gap:var(--sp-3);grid-template-columns:repeat(4,1fr)}@media(max-width:760px){.row{grid-template-columns:1fr 1fr}}button{font-family:var(--font-body);font-size:var(--fs-caption);font-weight:600;padding:8px 15px;border-radius:8px;border:1px solid var(--line);background:#fff;color:var(--ink);cursor:pointer}button:hover{background:var(--sunken)}button.primary{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}button.primary:hover{background:#8d0a3f}button:disabled{opacity:.45;cursor:not-allowed}.err{color:var(--critical);font-size:var(--fs-caption);margin:10px 0}.ok{color:var(--brand);font-size:var(--fs-caption);margin:10px 0}.empty{color:var(--ink-3);font-size:var(--fs-caption);padding:var(--sp-3) 2px}.login{min-height:100vh;display:grid;place-items:center;background:var(--brand)}.login .panel{width:356px}.doc-cols{display:grid;grid-template-columns:repeat(4,1fr);gap:0;font-size:var(--fs-caption)}.doc-cols>div{padding:10px 12px;border-left:1px solid var(--line)}.doc-cols>div:first-child{border-left:0}.doc-head{font-size:11px;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--ink-3);margin-bottom:8px}.kv{display:flex;justify-content:space-between;gap:8px;padding:3px 0}.kv span:last-child{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.kv.diff span:last-child{color:var(--critical);font-weight:600}.evidence{width:100%;border-radius:8px;border:1px solid var(--line);margin-top:8px}.hint{font-size:var(--fs-caption);color:var(--ink-3);margin-top:6px}.blind{background:#fefad9;border:1px solid #ecd96a;color:#5c4800;padding:10px 12px;border-radius:8px;font-size:var(--fs-caption);margin-bottom:var(--sp-3)}.pw-wrap{position:relative;display:flex;align-items:center}.pw-wrap>input{width:100%;padding-right:62px}.pw-reveal{position:absolute;right:6px;padding:4px 8px;border:0;background:transparent;color:var(--ink-3);font-size:var(--fs-caption);cursor:pointer;border-radius:6px}.pw-reveal:hover{background:var(--sunken);color:var(--ink-2)}.linkish{border:0;background:transparent;padding:0;color:var(--ink-2);font-size:var(--fs-caption);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.linkish:hover{color:var(--brand)}:where(a,button,input,select,textarea):focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:6px}*{scrollbar-width:thin;scrollbar-color:var(--line) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--line);border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:var(--ink-3)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.handover-block{margin:8px 0;padding:10px 12px;background:#fff9;border:1px solid #ecd96a;border-radius:8px;font-size:var(--fs-caption);line-height:var(--lh-body);white-space:pre-wrap;overflow-x:auto}.danger{border-color:var(--critical);color:var(--critical)}.danger:hover{background:var(--critical);color:#fff}.sidebar{height:100vh;overflow:hidden}.sidebar-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.sidebar-foot{flex:0 0 auto;margin-top:var(--sp-4);padding-top:var(--sp-3);border-top:1px solid rgba(255,255,255,.16)}.side-profile-wrap{display:flex;align-items:center;gap:2px}.side-profile{position:relative;flex:1 1 auto;min-width:0}.side-profile-card{display:flex;align-items:center;gap:9px;width:100%;padding:6px 7px;border-radius:var(--radius);border:1px solid transparent;background:transparent;color:inherit;cursor:pointer;text-align:left}.side-profile-card:hover{background:#ffffff1f}.side-profile.open>.side-profile-card{background:#ffffff29}.side-avatar{flex:0 0 auto;width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--critical));color:#fff;font-weight:700;font-size:var(--fs-caption);display:flex;align-items:center;justify-content:center}.side-profile-id{min-width:0;flex:1 1 auto;display:flex;flex-direction:column}.side-profile-name{font-size:var(--fs-caption);font-weight:600;color:var(--on-brand);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.side-profile-sub{font-size:11px;color:#fdf2f49e;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.side-caret{flex:0 0 auto;font-size:10px;color:#fdf2f49e}.sidebar .sidebar-collapse-btn{flex:0 0 auto;width:32px;height:32px;padding:0;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;color:#fdf2f49e;border-radius:var(--radius)}.sidebar .sidebar-collapse-btn:hover{background:#ffffff1f;color:var(--on-brand)}.navmenu-up{position:absolute;bottom:calc(100% + 8px);left:0;min-width:214px;max-width:100%;background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 12px 32px #23161a38;padding:6px;z-index:40;animation:menuUp .15s cubic-bezier(.16,1,.3,1)}@keyframes menuUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.navmenu-up a,.navmenu-up .navlogout{display:block;width:100%;text-align:left;padding:8px 10px;border-radius:7px;font-size:var(--fs-caption);color:var(--ink);text-decoration:none;background:transparent;border:0;cursor:pointer}.navmenu-up a:hover,.navmenu-up .navlogout:hover{background:var(--sunken)}.navmenu-up .navlogout{color:var(--critical);font-weight:600}.navmenu-sep{height:1px;background:var(--hairline);margin:5px 2px}.layout.nav-collapsed{grid-template-columns:66px 1fr}.layout.nav-collapsed .sidebar{padding-left:var(--sp-3);padding-right:var(--sp-3)}.layout.nav-collapsed .brand small,.layout.nav-collapsed .nav-label{display:none}.layout.nav-collapsed .brand{font-size:var(--fs-body);text-align:center}.layout.nav-collapsed .navlink{justify-content:center;padding:9px 0}.layout.nav-collapsed .side-profile-wrap{flex-direction:column-reverse;gap:6px}.layout.nav-collapsed .side-profile-card{justify-content:center;padding:6px 0}.layout.nav-collapsed .navmenu-up{left:0;min-width:200px}.sel{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding:8px 30px 8px 10px;border:1px solid var(--line);border-radius:var(--radius);background-color:var(--panel);color:var(--ink);font:inherit;cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239a888e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='m6 9 6 6 6-6'/></svg>");background-repeat:no-repeat;background-position:right 10px center}.sel:hover{border-color:var(--ink-3)}.sel:disabled{background-color:var(--sunken);color:var(--ink-3);cursor:not-allowed}
