
:root{
  --bg:#f7f7f5;--card:#fff;--ink:#171717;--muted:#6f6f6a;--line:#e7e6e2;
  --soft:#f0efeb;--dark:#191919;--accent:#b18b4a;--danger:#b54d4d;
  --green:#2f7356;--amber:#91651f;--violet:#6a5f91;
  --sans:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:var(--sans);background:var(--bg);color:var(--ink)}
button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}
#toast{position:fixed;right:20px;bottom:20px;z-index:9999}
.toast{background:#171717;color:#fff;padding:13px 15px;border-radius:12px;box-shadow:0 16px 45px #0002;min-width:260px;font-size:13px}
.login{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr;background:#111}
.login-left{background:#faf9f6;padding:70px;display:flex;flex-direction:column;justify-content:center}
.brand{font-size:28px;font-weight:760;letter-spacing:-.02em}.brand small{display:block;color:#8c8c86;font-size:11px;letter-spacing:.15em;margin-top:5px}
.login h1{font-size:46px;line-height:1.08;letter-spacing:-.035em;max-width:650px;margin:38px 0 15px}
.login p{font-size:16px;line-height:1.65;color:var(--muted);max-width:620px}
.login-card{margin-top:26px;max-width:470px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px}
.field{display:grid;gap:7px;margin-bottom:13px}.field label{font-size:12px;font-weight:700;color:#5d5d59}.field input,.field select,.field textarea{width:100%;border:1px solid #d9d8d3;border-radius:11px;padding:12px 13px;background:#fff;outline:0}.field input:focus,.field select:focus,.field textarea:focus{border-color:#9f824e;box-shadow:0 0 0 3px #b18b4a18}
.btn{border:1px solid #d9d8d3;background:#fff;border-radius:10px;padding:10px 14px;font-size:13px;font-weight:720}.btn-dark{background:#171717;color:#fff;border-color:#171717}.btn-accent{background:#b18b4a;color:#fff;border-color:#b18b4a}
.login-right{position:relative;overflow:hidden;background:radial-gradient(circle at 20% 20%,#4b3a2377,transparent 30%),linear-gradient(135deg,#101010,#23221f)}
.login-right:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#fff1 1px,transparent 1px),linear-gradient(90deg,#fff1 1px,transparent 1px);background-size:44px 44px;opacity:.25}
.showcase{position:absolute;inset:12%;color:#fff}.showcase h2{font-size:38px;letter-spacing:-.03em;max-width:560px;margin-top:16px}.glass{margin-top:55px;border:1px solid #ffffff22;background:#ffffff0f;backdrop-filter:blur(20px);border-radius:18px;padding:20px;max-width:520px}
.glass-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.glass-grid div{padding:16px;background:#ffffff0d;border-radius:12px}.glass-grid span{display:block;color:#b8b8b3;font-size:11px}.glass-grid b{display:block;font-size:28px;margin-top:5px}
.shell{display:grid;grid-template-columns:230px 1fr;min-height:100vh}.sidebar{background:#171717;color:#fff;padding:19px 13px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}
.sidebrand{padding:8px 10px 23px;font-size:20px;font-weight:780}.sidebrand span{display:block;font-size:9px;color:#81817d;letter-spacing:.14em;margin-top:3px}.nav{display:grid;gap:4px}.nav button{border:0;background:transparent;color:#9d9d98;text-align:left;padding:11px 12px;border-radius:10px;font-size:13px;font-weight:680}.nav button:hover,.nav button.active{background:#292929;color:#fff}.nav button.active{box-shadow:inset 3px 0 #c49a53}.sidebottom{margin-top:auto;display:grid;gap:8px}.sidebottom .btn{background:#222;color:#aaa;border-color:#333}
.main{min-width:0}.topbar{height:72px;display:flex;align-items:center;padding:0 26px;background:#faf9f7eF;backdrop-filter:blur(14px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.topbar h1{font-size:23px;margin:0;letter-spacing:-.02em}.topbar p{margin:4px 0 0;color:#888883;font-size:11px}.top-actions{margin-left:auto;display:flex;gap:8px;align-items:center}.userchip{border:1px solid var(--line);background:#fff;border-radius:11px;padding:7px 10px;text-align:left}.userchip b{display:block;font-size:11px}.userchip small{display:block;color:#898984;font-size:9px;margin-top:2px}
.content{padding:24px 26px 40px;max-width:1650px;margin:auto}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.kpi{background:#fff;border:1px solid var(--line);border-radius:15px;padding:17px;min-height:120px}.kpi span{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#858580;font-weight:800}.kpi b{display:block;font-size:38px;margin-top:11px}.kpi small{font-size:11px;color:#8e8e89}.kpi.danger b{color:var(--danger)}.kpi.dark{background:#191919;border-color:#191919;color:#fff}.kpi.dark b{color:#caa665}.kpi.dark span,.kpi.dark small{color:#999994}
.panel{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px;margin-top:14px}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px}.panel-head h2{font-size:18px;margin:0}.panel-head p{font-size:11px;color:#8b8b86;margin:4px 0 0}.toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.toolbar input,.toolbar select{border:1px solid #dddcd7;border-radius:9px;padding:9px 10px;font-size:12px;background:#fff}
.tablewrap{overflow:auto;border:1px solid var(--line);border-radius:12px}table{width:100%;border-collapse:collapse;min-width:850px}th{background:#f6f5f1;text-align:left;padding:10px;font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#777772}td{padding:11px 10px;border-top:1px solid #eeede9;font-size:12px}tr:hover td{background:#fffdf8}
.status{padding:4px 7px;border-radius:99px;font-size:9px;font-weight:800;display:inline-flex}.pending{background:#efefed;color:#666}.in_progress{background:#f7efdd;color:#8e6224}.waiting_for_update{background:#edf1f7;color:#526783}.blocked{background:#f7e7e6;color:#a34845}.awaiting_review{background:#efebf7;color:#695d8e}.needs_correction{background:#f8e8e6;color:#a34845}.completed{background:#e8f1ec;color:#327154}.cancelled{background:#eee;color:#777}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:15px}.card h3{font-size:14px;margin:0}.card p{font-size:11px;color:#8c8c86;margin:5px 0}.score{font-size:34px;font-weight:760;margin-top:14px}.muted{color:#8b8b86;font-size:11px}.empty{padding:34px;text-align:center;color:#92928d;font-size:12px}
.modalwrap{position:fixed;inset:0;background:#0006;display:grid;place-items:center;z-index:100;padding:20px}.modal{width:min(720px,96vw);max-height:92vh;overflow:auto;background:#fff;border-radius:17px;padding:19px;box-shadow:0 25px 80px #0003}.modal-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:14px}.modal-head h2{margin:0;font-size:20px}.close{border:0;background:#f0efeb;border-radius:8px;width:32px;height:32px;font-size:18px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.span2{grid-column:1/3}.actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px;padding-top:13px;border-top:1px solid var(--line)}
.detailgrid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.info{background:#f6f5f1;border-radius:10px;padding:10px}.info span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#858580}.info b{display:block;font-size:12px;margin-top:4px}.remark{padding:10px 0;border-bottom:1px solid #eee}.remark b{font-size:11px}.remark p{font-size:12px;margin:4px 0}.remark small{font-size:9px;color:#999}
@media(max-width:1000px){.login{grid-template-columns:1fr}.login-right{display:none}.shell{grid-template-columns:75px 1fr}.sidebrand{font-size:0}.sidebrand:before{content:"OS";font-size:18px}.sidebrand span{display:none}.nav button{font-size:0;text-align:center}.nav button:before{content:attr(data-short);font-size:12px}.kpis{grid-template-columns:repeat(2,1fr)}.cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.login-left{padding:30px 20px}.login h1{font-size:34px}.shell{display:block}.sidebar{position:fixed;left:0;right:0;top:auto;bottom:0;height:62px;z-index:50;padding:5px}.sidebrand,.sidebottom{display:none}.nav{grid-template-columns:repeat(8,1fr)}.nav button{padding:8px 2px}.main{padding-bottom:62px}.topbar{padding:0 12px}.topbar>div:first-child{display:none}.content{padding:14px 10px 28px}.kpis{gap:8px}.kpi{padding:12px;min-height:102px}.kpi b{font-size:31px}.cards{grid-template-columns:1fr}.formgrid{grid-template-columns:1fr}.span2{grid-column:1}.top-actions>.btn-accent{width:38px;font-size:0}.top-actions>.btn-accent:after{content:"+";font-size:18px}}
