:root{--bg:#0b0d0c;--panel:#151815;--panel2:#1b201b;--line:#31382f;--text:#f1efe7;--muted:#9d9c94;--green:#d8d2aa;--green2:#b4ad7f;--success:#98aa87;--blue:#78a7b6;--orange:#dda447;--red:#d86565;--purple:#b59bc8;--warm:#d9d2c2;--ink:#11130f;--shadow:0 16px 40px rgba(0,0,0,.24)}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Segoe UI,Arial,sans-serif;min-height:100%}body{min-height:100vh}a{color:inherit}.shell{display:grid;grid-template-columns:230px 1fr;min-height:100vh}.sidebar{border-right:1px solid var(--line);background:#101210;padding:20px 14px;position:sticky;top:0;height:100vh}.brand{display:flex;gap:10px;align-items:center;padding:8px 10px 22px}.logo{width:34px;height:34px;border-radius:10px;background:linear-gradient(145deg,#343226,#191914);border:1px solid #625f48;display:grid;place-items:center;color:var(--green);font-weight:800}.brand b{display:block;font-size:15px}.brand small{display:block;color:var(--muted);font-size:11px;margin-top:2px}.nav{display:flex;flex-direction:column;gap:5px}.nav a{padding:10px 11px;border-radius:8px;color:var(--muted);text-decoration:none;font-size:13px;display:flex;gap:9px;align-items:center}.nav a:hover,.nav a.active{background:#20211c;color:var(--text)}.nav a.active{box-shadow:inset 3px 0 var(--green)}.version{position:absolute;bottom:18px;left:24px;color:#74786d;font-size:11px}.main{padding:20px 24px 34px;min-width:0}.topbar{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px}.title h1{margin:0;font-size:22px}.title p{margin:4px 0 0;color:var(--muted);font-size:12px}.userbox{display:flex;align-items:center;gap:9px;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:7px 9px}.avatar{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#2b2b21;color:var(--green);font-weight:700}.userbox strong{font-size:12px}.userbox small{display:block;color:var(--muted);font-size:10px}.btn{border:1px solid var(--line);background:#171b16;color:var(--text);padding:9px 12px;border-radius:8px;cursor:pointer;font-size:12px}.btn:hover{border-color:#777258}.btn.primary{background:#c9c29a;border-color:#d8d2aa}.btn.warning{background:#66501d;border-color:#8c6c27}.btn.danger{background:#5f292b;border-color:#8b3d40}.btn.ghost{background:transparent}.filters{display:flex;gap:8px;flex-wrap:wrap;background:var(--panel);border:1px solid var(--line);padding:10px;border-radius:12px;margin-bottom:12px}.field{display:flex;flex-direction:column;gap:5px}.field label{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.field input,.field select,.field textarea{background:#111410;border:1px solid var(--line);color:var(--text);border-radius:7px;padding:9px 10px;min-height:38px;outline:none;font-size:12px}.field textarea{min-height:86px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:#8d8767}.grow{flex:1}.grid{display:grid;gap:12px}.kpis{grid-template-columns:repeat(6,minmax(0,1fr));margin-bottom:12px}.card{background:linear-gradient(180deg,#171a16,#121512);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);min-width:0}.kpi{padding:14px}.kpi .label{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.04em}.kpi .value{font-size:24px;font-weight:700;margin-top:8px}.kpi .sub{font-size:10px;color:var(--muted);margin-top:5px}.good{color:var(--success)}.warn{color:var(--orange)}.bad{color:var(--red)}.info{color:var(--blue)}.purple{color:var(--purple)}.two{grid-template-columns:1.35fr 1fr}.three{grid-template-columns:1fr 1fr 1fr}.cardhead{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:13px 14px;border-bottom:1px solid var(--line)}.cardhead h2{font-size:12px;margin:0;text-transform:uppercase;letter-spacing:.04em}.cardbody{padding:14px}.chart{height:230px;position:relative}.chart svg{width:100%;height:100%;overflow:visible}.legend{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:10px}.dot{width:7px;height:7px;border-radius:50%;display:inline-block;margin-right:5px}.tablewrap{overflow:auto;max-width:100%}table{width:100%;border-collapse:collapse;font-size:11px}th{color:var(--muted);font-weight:500;text-align:left;padding:9px 10px;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:9px 10px;border-bottom:1px solid #282e27;white-space:nowrap}tbody tr:hover{background:#1b201a}.num{text-align:right;font-variant-numeric:tabular-nums}.bar{height:6px;background:#2a3028;border-radius:999px;overflow:hidden}.bar>span{display:block;height:100%;background:var(--green);border-radius:999px}.badge{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:999px;padding:3px 7px;font-size:10px;color:var(--muted)}.badge.approved{color:var(--success);border-color:#66705a;background:#1d241a}.badge.pending{color:#ffcf66;border-color:#746024;background:#29220f}.badge.returned{color:var(--orange);border-color:#715321;background:#291b0d}.badge.rejected{color:#ff8c97;border-color:#73383b;background:#291516}.badge.draft{color:#a9b7b0}.formgrid{grid-template-columns:repeat(4,minmax(0,1fr))}.actions{display:flex;gap:8px;justify-content:flex-end;margin-top:14px;flex-wrap:wrap}.notice{padding:10px 12px;border-radius:9px;border:1px solid var(--line);background:#171a16;color:var(--muted);font-size:11px}.notice strong{color:var(--text)}.workflow{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.step{padding:11px;border:1px solid var(--line);border-radius:10px;background:#141713}.step b{font-size:11px}.step small{color:var(--muted);display:block;margin-top:4px;line-height:1.4}.login{min-height:100vh;display:grid;place-items:center;padding:20px}.loginbox{width:min(900px,96vw);display:grid;grid-template-columns:1.1fr 1fr;background:#131613;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.35)}.loginhero{padding:40px;background:radial-gradient(circle at 20% 20%,#363327 0,transparent 40%),linear-gradient(145deg,#131713,#0b0d0c)}.loginhero h1{font-size:34px;margin:0}.loginhero h1 span{color:var(--green)}.loginhero p{color:#aaa99e;line-height:1.6;max-width:480px}.rolecards{padding:30px;display:grid;gap:10px}.rolebtn{text-align:left;padding:14px;border-radius:11px;border:1px solid var(--line);background:#121511;color:var(--text);cursor:pointer}.rolebtn:hover{border-color:#777159;background:#1c1f1a}.rolebtn b{display:block}.rolebtn small{color:var(--muted);display:block;margin-top:4px}.empty{padding:32px;text-align:center;color:var(--muted)}.split{display:grid;grid-template-columns:360px 1fr;gap:12px}.queueitem{padding:12px;border-bottom:1px solid var(--line);cursor:pointer}.queueitem:hover,.queueitem.active{background:#1b201b}.queueitem strong{font-size:12px}.queueitem small{display:block;color:var(--muted);margin-top:4px}.reviewstats{grid-template-columns:repeat(4,1fr)}.hero-kpi{display:flex;align-items:baseline;gap:8px}.hero-kpi .big{font-size:34px;font-weight:800}.muted{color:var(--muted)}.mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.sectiontitle{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--green);margin:22px 0 10px}.printonly{display:none}@media(max-width:1200px){.kpis{grid-template-columns:repeat(3,1fr)}.three{grid-template-columns:1fr 1fr}.formgrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:850px){.shell{grid-template-columns:1fr}.sidebar{height:auto;position:static;border-right:0;border-bottom:1px solid var(--line)}.nav{flex-direction:row;overflow:auto}.version{display:none}.main{padding:15px}.two,.three,.split{grid-template-columns:1fr}.kpis{grid-template-columns:repeat(2,1fr)}.formgrid{grid-template-columns:1fr}.workflow{grid-template-columns:1fr 1fr}.loginbox{grid-template-columns:1fr}.loginhero{padding:28px}.rolecards{padding:20px}}@media print{.sidebar,.topbar .userbox,.filters,.noprint,.btn{display:none!important}.shell{display:block}.main{padding:0;background:white;color:#111}.card{box-shadow:none;background:white;border-color:#ddd}.cardhead{border-color:#ddd}.kpi .label,.kpi .sub,.muted,th{color:#666}.kpi .value,.cardhead h2,td{color:#111}.printonly{display:block}}
.loginform{display:grid;gap:10px;padding:12px 0}.demo-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.calc{color:var(--green)!important;font-weight:800}.warningbox{margin-top:12px;border-color:#756021;background:#2a2310;color:#d4c793}.warningbox ul{margin:7px 0 0;padding-left:18px}.progressline{height:8px;border-radius:999px;background:#2a2c27;overflow:hidden}.progressline span{height:100%;display:block;background:var(--green)}.riskrow.bad td{background:rgba(239,91,104,.04)}.riskrow.warn td{background:rgba(245,165,36,.04)}@media(max-width:650px){.demo-grid{grid-template-columns:1fr}}
.field select[multiple]{min-height:120px}.field select[multiple] option{padding:4px}table input{background:#101210;color:#fff;border:1px solid #31382f;padding:6px;border-radius:6px}

.importdrop{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.importdrop .field{min-width:260px}.importkpis{grid-template-columns:repeat(5,minmax(0,1fr));margin:12px 0}.importissues{max-width:360px;white-space:normal;color:var(--muted);line-height:1.4}.decision{background:#101210;color:var(--text);border:1px solid var(--line);padding:7px;border-radius:6px;min-width:170px}@media(max-width:900px){.importkpis{grid-template-columns:repeat(2,1fr)}}

/* v0.0.4 analytics */
.heatmap{display:grid;grid-template-columns:repeat(15,minmax(24px,1fr));gap:6px;align-items:center}.heatcell{height:34px;border:1px solid var(--line,#33342f);border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:10px;color:#92968a;background:#171b16}.heatcell.h1{background:#303129}.heatcell.h2{background:#494a38;color:#d8d3b5}.heatcell.h3{background:#68694d;color:#ece8d2}.heatcell.h4{background:#96946c;color:#fff}.btn.danger{border-color:#763838;color:#ffaaaa;background:#2b1717}@media(max-width:700px){.heatmap{grid-template-columns:repeat(10,minmax(24px,1fr))}.heatcell{height:30px}}

/* v0.0.7 import formula fix */
.badge.correction-pending{color:#ffcf66;border-color:#746024;background:#29220f}.badge.correction-returned{color:var(--orange);border-color:#715321;background:#291b0d}.badge.correction-rejected{color:#ff8c97;border-color:#73383b;background:#291516}.badge.correction-approved{color:var(--success);border-color:#66705a;background:#1d241a}.badge.correction-cancelled{color:#a9b7b0}.diff-table td.changed{background:rgba(245,165,36,.08);color:#ffd47e}.diff-table td.old{color:#b8c7c0}.correction-banner{border-color:#746024;background:#20190c}.correction-banner.applied{border-color:#66705a;background:#0f2419}.inline-actions{display:flex;gap:6px;flex-wrap:wrap}.report-stamp{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px;color:var(--muted);border:1px dashed var(--line);padding:8px 10px;border-radius:7px}.btn.small{padding:6px 8px;font-size:10px}


/* v0.0.9 — SK Favorit-inspired muted straw corporate theme */
body{background:radial-gradient(circle at 85% -10%,rgba(216,210,170,.035),transparent 28%),var(--bg)}
.sidebar{background:linear-gradient(180deg,#0d0f0d 0%,#11140f 100%);border-right-color:#2e342b}
.brand{border-bottom:1px solid rgba(216,210,170,.10);margin-bottom:12px;padding-bottom:18px}
.logo{background:var(--green);border-color:var(--green);color:var(--ink);border-radius:4px;box-shadow:none}
.brand b{letter-spacing:.015em}.brand small{color:#a7aa9f}
.nav a{border:1px solid transparent;border-radius:5px}.nav a:hover{background:#181c16;border-color:#30312b}.nav a.active{background:#1d1f1a;color:var(--text);border-color:#403f32;box-shadow:inset 3px 0 var(--green)}
.version{color:#6f746b}
.main{background:linear-gradient(180deg,rgba(255,255,255,.008),transparent 180px)}
.title h1{font-weight:750;letter-spacing:-.02em}.title p{color:#a3a59b}
.userbox{background:#121512;border-color:#2e352b;border-radius:6px}.avatar{background:#292a22;color:var(--green);border:1px solid #514f3b}
.btn{background:#171b16;border-color:#373e34;border-radius:5px;font-weight:650;letter-spacing:.01em}.btn:hover{border-color:#777159;background:#1d1f1a}.btn.primary{background:var(--green);border-color:var(--green);color:#11130f}.btn.primary:hover{background:#e5dfbd;border-color:#e5dfbd}.btn.warning{background:#4d3a15;border-color:#806124}.btn.danger{background:#4c2426;border-color:#774043}
.filters{background:#121512;border-color:#2e352b;border-radius:7px;box-shadow:none}.field input,.field select,.field textarea{background:#0e100e;border-color:#333a30;border-radius:4px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--green);box-shadow:0 0 0 2px rgba(216,210,170,.06)}
.card{background:linear-gradient(180deg,#171a16 0%,#121512 100%);border-color:#30362e;border-radius:7px;box-shadow:0 10px 28px rgba(0,0,0,.16)}
.cardhead{border-bottom-color:#2d332b}.cardhead h2{letter-spacing:.065em}.kpi{position:relative;overflow:hidden}.kpi:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:rgba(216,210,170,.32)}.kpi .label{color:#a5a79e}.kpi .value{letter-spacing:-.025em}
th{color:#a4a69d;text-transform:uppercase;letter-spacing:.045em;font-size:9px}td{border-bottom-color:#262c25}tbody tr:hover{background:#1c1e1a}
.bar,.progressline{background:#272d25}.bar>span,.progressline span{background:var(--green)}
.badge{border-radius:4px}.badge.approved{color:#b9c8aa;border-color:#5f6a54;background:#1c2319}.badge.pending{color:#e7c26d;border-color:#6f5920;background:#28200e}
.notice{background:#151815;border-color:#333a30;border-radius:5px}.sectiontitle{color:var(--green);letter-spacing:.09em;font-weight:800}
.step{background:#141713;border-color:#33342f;border-radius:5px}.workflow{gap:7px}
.login{background:radial-gradient(circle at 16% 18%,rgba(216,210,170,.06),transparent 28%),#0b0d0c}.loginbox{background:#111411;border-color:#31382f;border-radius:8px;box-shadow:0 30px 85px rgba(0,0,0,.45)}
.loginhero{position:relative;background:linear-gradient(145deg,#111510 0%,#0b0d0c 100%);border-right:1px solid #30362d}.loginhero:after{content:"";position:absolute;left:40px;right:40px;bottom:0;height:3px;background:var(--green)}.loginhero h1{font-weight:800;letter-spacing:-.035em}.loginhero h2{color:var(--green)}.loginhero p{color:#aaa99f}.rolecards{background:#141713}.rolebtn{background:#111410;border-color:#33342f;border-radius:5px}.rolebtn:hover{border-color:#777159;background:#191e16}
.queueitem:hover,.queueitem.active{background:#1c2119}.decision{background:#0e100e;border-color:#333a30;border-radius:4px}
.heatcell{background:#1c1e1a;border-color:#33342f;color:#989c91;border-radius:4px}.heatcell.h1{background:#303129}.heatcell.h2{background:#494a38;color:#d8d3b5}.heatcell.h3{background:#68694d;color:#ece8d2}.heatcell.h4{background:#96946c;color:#10120e}
.report-stamp{border-color:#454c40;border-radius:4px}
@media print{body{background:#fff}.card{border-radius:0}.kpi:before{background:#899528}.main{background:#fff}}

/* v0.0.11 — Operational Control UX */
:root{--chart-primary:#4ccf9c;--chart-secondary:#78a7b6;--chart-grid:#273028}
.date-age{display:block;color:#747d75;font-size:9px;margin-top:2px}.date-time{font-variant-numeric:tabular-nums}.chart-grid{stroke:var(--chart-grid);stroke-width:1}.chart-axis{fill:#7f8a82;font-size:10px}.chart-date{font-size:9px}.vols-chart{filter:none}.chart-note{position:absolute;right:8px;top:6px;color:#869187;font-size:10px;background:#101410cc;border:1px solid #283129;padding:4px 7px;border-radius:4px}.donut-layout{display:grid;grid-template-columns:190px 1fr;align-items:center;gap:14px;height:100%}.donut-layout .legend{flex-direction:column}.hbars{display:grid;gap:10px}.hbar-label{display:flex;justify-content:space-between;gap:10px;font-size:10px;color:var(--muted)}.hbar-label b{color:var(--text)}.hbar-track{height:7px;background:#232a24;border-radius:2px;overflow:hidden}.hbar-track span{display:block;height:100%;background:var(--chart-primary)}
.today-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-bottom:12px}.today-card{background:#111611;border:1px solid #27332b;padding:11px 12px;min-width:0}.today-card .tlabel{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:#7f8a82}.today-card .tvalue{font:700 18px/1.2 ui-monospace,SFMono-Regular,Consolas,monospace;color:#e9ece7;margin-top:5px}.today-card.good .tvalue{color:var(--chart-primary)}.today-card.warn .tvalue{color:var(--orange)}.today-card.bad .tvalue{color:var(--red)}
.delta{font-size:9px;margin-top:5px;color:#828c84}.delta.up{color:#8ebd9c}.delta.down{color:#d58c8c}.delta.flat{color:#7f8a82}.kpi .spark{height:22px;margin-top:7px}
.status-pill{display:inline-flex;align-items:center;padding:3px 6px;border-radius:3px;border:1px solid #394139;font-size:9px}.status-pill.ok{color:#9cc6aa;border-color:#4f6d58}.status-pill.warn{color:#e4bc6b;border-color:#66562a}.status-pill.bad{color:#e18b91;border-color:#694147}
.system-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.system-item{padding:13px;border:1px solid var(--line);background:#111511}.system-item small{display:block;color:var(--muted);font-size:9px;text-transform:uppercase}.system-item b{display:block;margin-top:6px;font-size:16px}.system-item .detail{font-size:9px;color:#7f8a82;margin-top:4px}
.toast-host{position:fixed;right:18px;bottom:18px;z-index:1000;display:grid;gap:8px;max-width:390px}.toast{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:start;background:#161a16;border:1px solid #343d35;padding:11px 12px;box-shadow:0 15px 45px rgba(0,0,0,.35);font-size:11px}.toast.good{border-left:3px solid var(--chart-primary)}.toast.bad{border-left:3px solid var(--red)}.toast.info{border-left:3px solid var(--blue)}.toast strong{font-size:10px}.toast span{color:#bec5bf;line-height:1.4}.toast button{border:0;background:transparent;color:#8b948d;font-size:16px;cursor:pointer;padding:0}
.modal-backdrop{position:fixed;inset:0;background:#000a;z-index:900;display:grid;place-items:center;padding:20px}.modal{width:min(720px,96vw);max-height:86vh;overflow:auto;background:#141814;border:1px solid #384039;padding:18px}.modal h3{margin:0 0 10px}.modal .actions{margin-top:16px}
.bulkbar{display:flex;align-items:center;gap:10px;padding:9px 11px;background:#111611;border:1px solid #29322b;margin:8px 0}.bulkbar .grow{flex:1}.clean-record{border-left:2px solid rgba(76,207,156,.45)}.record-warning{border-left:2px solid rgba(221,164,71,.55)}
.tablewrap table.sticky thead th{position:sticky;top:0;background:#151815;z-index:2}.tablewrap.dense td,.tablewrap.dense th{padding:7px 8px}.clickable{cursor:pointer}.clickable:hover td{background:#1b221c}.import-result{border-left:3px solid var(--chart-primary)}.import-result .result-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.downtime-list{display:grid;gap:7px}.downtime-item{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid #252b26;padding-bottom:6px}.downtime-item b{color:var(--text)}
@media(max-width:1200px){.today-strip{grid-template-columns:repeat(4,1fr)}.system-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.today-strip,.system-grid,.settings-grid{grid-template-columns:1fr 1fr}.donut-layout{grid-template-columns:140px 1fr}}@media(max-width:480px){.today-strip,.system-grid,.settings-grid{grid-template-columns:1fr}}
