*{box-sizing:border-box}html{--pine:#133f34;--deep:#0c3129;--sand:#f6f4ed;--ink:#19261f;--muted:#54645a;--line:#d9ded5;--gold:#987025;font:16px/1.45 -apple-system,BlinkMacSystemFont,"Segoe UI","Khmer Sangam MN",sans-serif;color:var(--ink);background:var(--sand)}html[data-size=Small]{font-size:15px}html[data-size=Large]{font-size:18px}body{margin:0}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;color:var(--pine);background:white;border:1px solid #c6d1c7;border-radius:8px;min-height:42px;padding:.48rem .85rem;font-weight:620}button:hover{background:#f0f5ed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #be8b36;outline-offset:2px}button:disabled{opacity:.5;cursor:default}a{color:var(--pine)}.primary,.chip.chosen{background:var(--pine);color:#fff;border-color:var(--pine)}.primary:hover,.chip.chosen:hover{background:#0b3227}.chips,.actions{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.actions{margin:.55rem 0}.skip{position:fixed;left:8px;top:-100px;background:#fff;padding:10px;z-index:20}.skip:focus{top:8px}
.boot,.login{min-height:100vh;display:grid;align-content:center;justify-content:center;padding:24px}.boot img,.login img{width:54px;height:54px;object-fit:contain}.login{background:linear-gradient(140deg,#e9eddf,#f8f5ec 66%)}.login-box{max-width:420px;min-width:min(360px,80vw);background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px;box-shadow:0 14px 45px #17382b12}.login-box h1{margin:.55rem 0}.eyebrow{font-size:.73rem;letter-spacing:.12em;font-weight:750;color:var(--gold);margin:0 0 .28rem}.hint,.muted,small{font-size:.875rem;color:var(--muted)}.error{color:#902e29;font-weight:600;white-space:pre-wrap}.error:empty,.hint:empty{display:none}
header{height:61px;background:var(--deep);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 max(18px,calc((100vw - 1600px)/2));border-bottom:3px solid #bd9148}header img{width:38px;height:38px;object-fit:contain}.account{display:flex;align-items:center;gap:.75rem}.account small{color:#e3e9de}.account button{min-height:35px;background:transparent;color:white;border-color:#839b90;font-size:.84rem}
.layout{max-width:1600px;margin:auto;display:grid;grid-template-columns:205px minmax(0,1fr);min-height:calc(100vh - 61px)}aside{border-right:1px solid var(--line);background:#eef1e9;padding:25px 10px}.nav-title{color:var(--muted);font-size:.72rem;letter-spacing:.12em;padding:0 10px;font-weight:700}nav{display:flex;flex-direction:column;gap:4px}nav button{text-align:left;background:transparent;border-color:transparent}nav button.active{background:var(--pine);color:white}main.workspace{min-width:0;padding:clamp(16px,2.1vw,36px)}.topline,.between{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.topline{margin-bottom:.9rem}h1,h2,h3{color:var(--pine);line-height:1.18;margin:0}h1{font-size:clamp(1.45rem,2.4vw,2.15rem)}h2{font-size:1.12rem}h3{font-size:1rem}.panel{background:#fff;border:1px solid var(--line);border-radius:13px;margin:.7rem 0;padding:.95rem;overflow-wrap:anywhere}.panel>h2{margin-bottom:.55rem}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.stat{display:grid;align-content:start;gap:.12rem;background:#fff;border:1px solid var(--line);border-top:3px solid #bb914b;border-radius:9px;padding:.68rem}.stat strong{font-size:1.45rem;color:var(--pine);font-variant-numeric:tabular-nums}.stat span{font-size:.8rem;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.grid>.panel{margin:.3rem 0}.status{font-size:.8rem;color:var(--muted)}.tag{display:inline-flex;background:#e9efe9;color:#294c3e;font-size:.8rem;font-weight:650;border-radius:6px;padding:.2rem .48rem;white-space:nowrap}.Hot{background:#ffe4db;color:#94341d}.Warm{background:#fff3d7;color:#775609}.Cold{background:#e5edf7;color:#254666}.Fail{background:#f4dddd;color:#803333}.row{border-top:1px solid #e1e5df;display:flex;justify-content:space-between;align-items:center;gap:.6rem;padding:.5rem .1rem}.row:first-child{border:0}.row small,.who small{display:block}.linkbtn{background:none;border:0;text-align:left;padding:.15rem 0;min-height:38px;text-decoration:underline;text-decoration-color:#a2b6a9;text-underline-offset:3px}.row .right{text-align:right}.scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.89rem}th,td{text-align:left;padding:.52rem .6rem;border-bottom:1px solid var(--line);vertical-align:top}th{background:var(--pine);color:white;font-weight:600}tr:nth-child(even) td{background:#f4f7f1}tbody td{font-variant-numeric:tabular-nums}.details,dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.6rem}dt{color:var(--muted);font-size:.78rem}dd{margin:0;white-space:pre-wrap}label.field{display:grid;gap:.28rem;margin:.55rem 0}label.field>span{color:#345444;font-size:.89rem;font-weight:650}input:not([type=checkbox]),textarea,select{width:100%;min-height:44px;padding:.48rem .65rem;border:1px solid #a6b6aa;border-radius:8px;background:#fff;color:var(--ink)}textarea{min-height:84px}.checks{display:flex;gap:.6rem;flex-wrap:wrap}.checks label{padding:.35rem}.filters{display:flex;align-items:end;gap:.6rem;flex-wrap:wrap}.filters label{min-width:140px;flex:1}details>summary{cursor:pointer;color:var(--pine);font-weight:650;padding:.5rem 0;min-height:40px}.listbox details{border-top:1px solid var(--line)}dialog{width:min(550px,94vw);border:1px solid var(--line);border-top:4px solid var(--gold);border-radius:13px;padding:1.1rem;max-height:88dvh;color:var(--ink)}dialog::backdrop{background:#0c271ecc}dialog fieldset{border:0;margin:0;padding:0}dialog img{max-width:100%;max-height:65dvh;object-fit:contain}.rightalign{text-align:right}.form-actions{display:flex;justify-content:end;gap:8px;margin-top:1rem}.report-badge{margin:.5rem 0}.note{white-space:pre-wrap}#notice{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);z-index:5;max-width:90vw;background:var(--deep);color:white;padding:.5rem .9rem;border-radius:8px}#notice:empty,#paper,[hidden]{display:none!important}.net{padding:.5rem .8rem;background:#fff3d7;border-radius:7px;margin:.5rem 0;font-size:.85rem}
@media(max-width:850px){.layout{grid-template-columns:1fr}aside{padding:5px 12px;border-right:0;border-bottom:1px solid var(--line)}.nav-title{display:none}nav{flex-direction:row;overflow:auto}nav button{flex:none;font-size:.84rem;min-height:40px}.account{gap:.35rem}header{padding:0 12px}.grid{grid-template-columns:1fr}}
@media(max-width:520px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stat{padding:.5rem}main.workspace{padding:12px}.panel{padding:.72rem}.account small{display:none}.filters label{min-width:115px}input,textarea,select{font-size:max(16px,1rem)}}
@page{size:letter landscape;margin:7mm}@media print{body>*:not(#paper){display:none!important}body.printing #paper{display:block!important;font:7.5pt/1.35 -apple-system,"Khmer Sangam MN",sans-serif;color:#15251b}#paper table{font:inherit;table-layout:fixed;margin-top:1mm}#paper th,#paper td{padding:.7mm .5mm;border:.4pt solid #91a397;white-space:pre-wrap;overflow-wrap:anywhere}#paper th{background:#174733;color:white}#paper tr{break-inside:avoid}#paper thead{display:table-header-group}#paper h1{font-size:14pt}#paper h2{margin-top:3mm;font-size:10pt}#paper footer{display:flex;justify-content:space-between;margin-top:5mm}#paper .total,#paper .group{font-weight:700;background:#e8eee4}#paper .summary{width:75%}}
