:root{font:16px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#263743;background:#f1f4f6;--accent:#4b7699;--line:#d7dfe7}*{box-sizing:border-box}body{margin:0}header,main{max-width:1200px;margin:auto;padding:24px}header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}h1{font-size:27px;margin:8px 0}h2{font-size:21px;margin:0 0 22px}small,p,label{color:#65798b}button,input,select{font:inherit;border-radius:10px;border:1px solid var(--line);padding:11px 14px;color:inherit;background:#ecf1f5}button{cursor:pointer;color:var(--accent)}button:hover{background:#dde8f1}button:disabled{opacity:.55;cursor:default}.primary,nav button[aria-current=true]{background:#dbe8f3;color:#315c7c}input,select{min-width:0}input{width:100%;margin-top:7px}label{display:block;margin:14px 0;font-size:14px}.card{background:#fafbfc;border:1px solid var(--line);border-radius:13px;padding:24px}#login{max-width:420px;margin:8vh auto}#notice{color:#a33935;white-space:pre-wrap}.bar,nav,footer{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 20px}.bar select{flex:1}nav button{flex:1;min-width:90px;background:transparent;border:0;border-bottom:2px solid transparent;border-radius:8px}nav button[aria-current=true]{border-bottom-color:var(--accent)}footer{justify-content:space-between;margin-top:18px;color:#65798b;font-size:14px}.fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 24px}.row{display:grid;grid-template-columns:minmax(130px,1fr) 85px 130px 110px;gap:12px;align-items:center;padding:9px 0;border-bottom:1px solid var(--line)}.row input{margin:0}.row strong{text-align:right}.table-head{font-size:13px;color:#65798b}.empty{padding:25px 0;color:#65798b}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #667c8d;outline-offset:3px}[hidden]{display:none!important}@media(max-width:650px){header,main{padding:16px}h1{font-size:23px}.card{padding:16px}.fields{grid-template-columns:1fr 1fr}.row{grid-template-columns:minmax(110px,1fr) 54px 82px;gap:7px}.row strong{grid-column:3;font-size:13px}nav{gap:2px}nav button{font-size:13px;min-width:50px;padding:10px 5px}.row input{padding:9px 6px}}
