:root{color-scheme:light dark;--surface:#fff;--ink:#111820;--muted:#687581;--line:#dde3e8;--bg:#f2f4f5;--yellow:#ffdc00}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.45 Arial,sans-serif}main{max-width:1440px;margin:auto;padding:24px}.top,.heading,footer,.search{display:flex;align-items:center;justify-content:space-between;gap:12px}h1{font-size:26px;margin:3px 0}h2{font-size:21px;margin:0 0 16px}small,.muted{color:var(--muted)}td small{display:block;overflow-wrap:anywhere}.card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:22px;margin:20px 0}.login{max-width:480px;margin:8vh auto}button{min-height:44px;padding:10px 16px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);font:600 15px/1.2 Arial;cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #b6a000;outline-offset:2px}.yellow{background:var(--yellow);color:#111820;border-color:transparent}.square{width:44px;font-size:24px}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}.kpis>div{text-align:center;border:1px solid var(--line);border-radius:12px;padding:14px 8px;background:#d9b60012}.kpis>div:nth-child(2){background:#16845314}.kpis>div:nth-child(3){background:#b1454510}.kpis>div:nth-child(4){background:#5384bc14}.kpis strong{display:block;font-size:28px;margin-top:8px}.kpis span{font-size:14px}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}label{display:block;color:var(--muted);font-size:14px}input,select{display:block;width:100%;height:44px;min-width:0;font:16px Arial;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:9px;padding:9px 12px;margin-top:6px}.login label{margin:14px 0}.search{justify-content:flex-start;align-items:flex-end;margin:20px 0}.search label{width:min(100%,440px)}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;text-align:left;font-size:14px}th,td{border-bottom:1px solid var(--line);padding:12px;vertical-align:top}th{color:var(--muted)}tbody tr:nth-child(even){background:#8092a50b}code{overflow-wrap:anywhere}dialog{width:min(760px,calc(100% - 24px));max-height:calc(100dvh - 28px);padding:0;border:1px solid var(--line);border-radius:18px;color:var(--ink);background:var(--surface)}dialog::backdrop{background:#11182099}dialog form{padding:22px}dialog .heading{align-items:flex-start;margin-bottom:18px}dialog .heading button{width:44px;flex-shrink:0;font-size:22px}footer{justify-content:flex-end;margin-top:20px;position:sticky;bottom:0;background:var(--surface);padding-top:12px}.notice{background:#16845318;border-radius:10px;padding:14px}.error{background:#b1454518;color:#a13232}@media(max-width:600px){main{padding:12px}.card{padding:14px;margin:14px 0}.fields{grid-template-columns:1fr}.kpis{gap:5px}.kpis>div{padding:10px 4px}.kpis span{font-size:11px;overflow-wrap:anywhere}.kpis strong{font-size:22px}h1{font-size:23px}h2{font-size:19px}dialog form{padding:16px}}@media(prefers-color-scheme:dark){:root{--surface:#1c2630;--ink:#edf1f4;--muted:#b0bac5;--line:#3c4753;--bg:#111820}.error{color:#ffb4ab}}

@media(max-width:600px){.table-wrap{overflow:visible}table,tbody{display:block;width:100%}thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}tbody tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--line);border-radius:12px;margin:12px 0;padding:10px;gap:10px}tbody td{display:block;min-width:0;padding:0 0 8px;overflow-wrap:anywhere}tbody td:first-child{grid-column:1/-1}td[data-label]::before{content:attr(data-label);display:block;color:var(--muted);font-size:12px;margin-bottom:4px}td small{font-size:12px}td code{font-size:12px}.kpis>div{min-height:92px}}
.module-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;margin:18px 0 0;padding:16px;border:1px solid var(--line);border-radius:12px}.module-fields legend{padding:0 6px;font-weight:700}.module-fields label{display:flex;align-items:center;gap:9px;min-height:44px;color:var(--ink)}.module-fields input{width:22px;height:22px;margin:0;flex:0 0 auto}@media(max-width:600px){.module-fields{grid-template-columns:1fr}}
