
:root{--ink:#171a18;--muted:#777d77;--border:#e6e9e4;--bg:#f7f8f5;--white:#fff;--lime:#d8fc5b;--green:#427b38;--red:#c34c4c;--yellow:#a16d15;--radius:17px}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:'DM Sans',system-ui,Arial,sans-serif;color:var(--ink);background:var(--bg)}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}.layout{display:flex;min-height:100vh}.sidebar{position:sticky;top:0;width:255px;flex-shrink:0;background:#fff;border-right:1px solid var(--border);height:100vh;display:flex;flex-direction:column}.sidebar-header{height:93px;display:flex;gap:12px;align-items:center;padding:26px 20px;border-bottom:1px solid var(--border)}.brand-mark{width:40px;height:40px;border-radius:11px;background:#171a18;color:var(--lime);font-weight:800;font-size:29px;display:grid;place-items:center;position:relative;letter-spacing:-4px;padding-right:4px}.brand-mark span{color:#fff;font-size:11px;position:absolute;right:0;bottom:2px;letter-spacing:0}.brand-name{font-weight:800;font-size:15px;letter-spacing:-.35px;line-height:1.2}.brand-name b{font-weight:800;background:var(--lime);border-radius:3px;padding:1px 3px}.brand-name small{display:block;font-size:9px;letter-spacing:1.6px;font-weight:800;color:#7d857e;margin-top:5px}.sidebar nav{padding:18px 12px;overflow:auto;flex:1}.nav-group{font-size:10px;letter-spacing:1.2px;font-weight:800;color:#abb0aa;margin:23px 12px 9px}.nav-link{display:flex;gap:13px;align-items:center;padding:11px 12px;border-radius:10px;font-size:13px;font-weight:700;color:#777d77;margin-bottom:3px;transition:background .15s}.nav-link:hover{background:#f4f6f1;color:#151715}.nav-link.active{background:#eef6d1;color:#273916}.nav-icon{font-size:19px;min-width:19px;font-weight:700;text-align:center}.sidebar-footer{font-size:10px;color:#888f88;padding:19px 18px;border-top:1px solid var(--border)}.live-dot{display:inline-block;background:var(--lime);border:2px solid #7b9b43;width:9px;height:9px;border-radius:50%;margin-right:5px}.main{flex:1;min-width:0}.topbar{height:93px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 42px}.breadcrumbs{font-size:11px;letter-spacing:1.4px;font-weight:800;color:#989e98;text-transform:uppercase}.breadcrumbs span{color:#ccd2c7;padding:0 9px}.topbar-right{display:flex;gap:12px;align-items:center}.today{font-size:12px;color:#9a9f99;margin-right:12px}.avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#1e211d;color:var(--lime);font-weight:800;font-size:12px}.topbar-user{font-size:12px;font-weight:800;line-height:1.4}.topbar-user small{font-size:10px;display:block;color:#a1a6a0;font-weight:500}.logout{margin-left:9px;border:1px solid var(--border);border-radius:9px;padding:7px 10px}.content{max-width:1580px;margin:auto;padding:39px 42px 0}.heading-row{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px}.heading-row h1{font-family:Manrope,system-ui,sans-serif;font-size:32px;letter-spacing:-1.4px;font-weight:800;margin:5px 0 6px}.subtitle{color:var(--muted);font-size:13px;margin:0}.eyebrow{font-weight:800;font-size:10px;letter-spacing:1.6px;color:#8b928a}.muted{color:var(--muted)}.actions{display:flex;gap:8px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:13px;background:white;border:1px solid var(--border);border-radius:9px;padding:12px 16px;font-size:12px;font-weight:800;white-space:nowrap;transition:transform .15s,background .15s}.btn:hover{transform:translateY(-1px)}.btn.primary{background:var(--lime);border-color:var(--lime);color:#182216}.btn.dark{background:#1c211b;color:white;border-color:#1c211b}.btn.dark span{color:var(--lime)}.btn.ghost{background:transparent}.btn.outline{background:white}.hero-banner{position:relative;min-height:214px;background:#1b201b;border-radius:18px;overflow:hidden;padding:32px 37px;color:#fff;display:flex;justify-content:space-between;margin-bottom:25px}.hero-banner .eyebrow{color:var(--lime)}.hero-banner h2{font:800 31px/1.15 Manrope,sans-serif;letter-spacing:-1.4px;margin:12px 0}.hero-banner p{font-size:12px;color:#bac1b8;margin-top:12px}.hero-decor{font-size:220px;position:absolute;right:45px;top:-80px;color:#d9fc56;opacity:.87;text-shadow:0 0 70px #d9fc5633;transform:rotate(-25deg)}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:24px}.kpi{background:white;border:1px solid var(--border);border-radius:15px;padding:22px 21px 20px;min-height:145px;position:relative}.kpi-title{display:block;font-size:12px;font-weight:700;color:#878d86}.kpi strong{display:block;font-size:39px;line-height:1.1;font-family:Manrope,sans-serif;letter-spacing:-2px;margin:12px 0 9px}.kpi-note{font-size:11px;color:#a0a69e}.kpi.warn strong{color:#ab791c}.kpi.bad strong{color:#bc524f}.kpi.good strong{color:#416f33}.card{background:white;border:1px solid var(--border);border-radius:16px;margin-bottom:24px;overflow:hidden;box-shadow:0 3px 10px #1a221a04}.card-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:24px 26px 19px}.card h2{font:800 16px Manrope,sans-serif;letter-spacing:-.45px;margin:0}.card-head p,.card p{color:#949b93;font-size:12px;margin:5px 0 0}.text-link,.row-link{font-size:12px;font-weight:800;color:#52752d}.row-link:hover,.text-link:hover{text-decoration:underline}.table-scroll{width:100%;overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{background:#fafbf8;color:#929a92;letter-spacing:.45px;text-transform:uppercase;font-size:10px;font-weight:800;padding:15px 20px;border-top:1px solid #f0f1ef;border-bottom:1px solid var(--border)}td{font-size:12px;color:#525851;border-bottom:1px solid #f0f2ee;padding:16px 20px}tr:last-child td{border-bottom:0}td b{font-weight:800;color:#242923}td small{display:block;color:#a2a8a0;font-size:11px;margin-top:5px}.mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px}.pill{display:inline-flex;align-items:center;border-radius:6px;font-size:10px;font-weight:800;padding:5px 8px;background:#f0f1ee;color:#777e75;max-width:240px;white-space:normal}.pill.good{background:#e9f7e7;color:#3a873d}.pill.warn{background:#fff5e2;color:#ad7923}.pill.bad{background:#fff0ef;color:#be4b4a}.pill.neutral{background:#f1f3f0;color:#687068}.empty{padding:60px 15px;text-align:center;color:#a8aea5}.info-strip{padding:19px 22px;border:1px solid #e8e9de;background:#f2f4eb;border-radius:12px;color:#697369;font-size:12px;margin:2px 0 24px}.info-strip b{color:#2c352b}.status-bullet{color:#b7a635;margin-right:6px}.list-toolbar{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;gap:20px;font-size:12px;color:#6e766b}.list-toolbar b{color:#242924}.search{display:flex;align-items:center;gap:6px}.search input{width:270px}.search button{border:none;background:#1e251c;color:#fff;padding:10px 12px;border-radius:7px;font-size:12px}.list-toolbar input{padding:10px 13px!important}.form-card{padding:28px;max-width:1010px}.form-card h2{margin-bottom:24px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 22px}.form-grid label,.stack label{display:flex;flex-direction:column;font-size:12px;font-weight:700;color:#5b615a;gap:9px}.form-grid label.full,.full{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea,.stack input{width:100%;background:#fff;border:1px solid #dee3dc;padding:12px 13px;border-radius:9px;outline:none;min-width:0;color:#1a1f18}.form-grid textarea{resize:vertical}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:#8da74a;box-shadow:0 0 0 3px #d8fc5b55}.form-grid .check-line{flex-direction:row;align-items:center;gap:10px;align-self:end;margin-bottom:10px}.check-line input,.weekday input{width:auto}.form-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:10px;margin-top:13px;padding-top:15px;border-top:1px solid var(--border)}.inline-actions{display:flex;align-items:center;gap:16px}.inline-actions button{border:0;background:none;padding:0;font-size:12px;font-weight:700}.text-danger{color:#c25a55}.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:21px}.section-pad{padding:26px}.section-pad p{margin:10px 0 20px;line-height:1.6}.stack{display:flex;flex-direction:column}.gap-md{gap:14px}.gap-lg{gap:20px}.code-line{background:#f6f7f4;border:1px solid var(--border);padding:11px 14px;border-radius:7px;font:12px ui-monospace,monospace!important;color:#4e5a48!important}.section-pad .text-link{display:inline-block;margin-top:14px}.weekday-row{display:flex;gap:9px;flex-wrap:wrap;margin-top:10px}.weekday{flex-direction:row!important;border:1px solid var(--border);padding:10px 12px;border-radius:8px}.full small{display:block;font-size:11px;color:#aaa;margin:8px 0}.alert{padding:15px 18px;border-radius:11px;margin-bottom:20px;font-size:12px;font-weight:700;display:flex;justify-content:space-between;gap:18px}.alert.success{background:#ecf8e8;color:#427e38;border:1px solid #cae5be}.alert.error{background:#fff0ee;color:#ab4e42;border:1px solid #f2d2cc}.alert button{border:0;background:transparent;font-size:20px;color:inherit;line-height:10px}.footer{padding:8px 0 26px;display:flex;justify-content:space-between;color:#a1a8a0;font-size:10px}.auth-page{display:grid;place-items:center;min-height:100vh;background:radial-gradient(circle at 90% 15%,#edf2dd 0%,#f7f8f5 50%);padding:16px}.auth-card{background:#fff;border:1px solid var(--border);border-radius:22px;box-shadow:0 30px 100px #252c2120;max-width:475px;width:100%;padding:43px}.auth-card .brand-mark{width:50px;height:50px;font-size:36px;margin-bottom:33px}.auth-card h1{font:800 29px/1.2 Manrope,sans-serif;letter-spacing:-1.3px;margin:8px 0 10px}.auth-card .muted{margin:0 0 35px;font-size:13px;line-height:1.6}.auth-card .stack{margin-bottom:25px}.auth-card .btn{padding:14px 18px;justify-content:space-between}.auth-card small{font-size:11px;color:#a4aaa2}.auth-card input{padding:14px}.auth-card label{color:#515c51}.auth-card .eyebrow{color:#758363}
@media(max-width:1100px){.sidebar{width:220px}.content{padding:32px 26px 0}.topbar{padding:0 26px}.hero-decor{right:8px}.kpis{grid-template-columns:repeat(2,1fr)}}@media(max-width:740px){.layout{display:block}.sidebar{position:relative;height:auto;width:100%;border-bottom:1px solid var(--border)}.sidebar-header{height:67px;padding:12px 18px}.sidebar nav{display:flex;overflow:auto;padding:7px}.nav-group,.sidebar-footer{display:none}.nav-link{font-size:11px;white-space:nowrap;padding:9px}.nav-icon{font-size:14px;min-width:auto}.topbar{height:65px;padding:0 16px}.topbar-user,.today{display:none}.content{padding:23px 15px 0}.heading-row{flex-wrap:wrap}.heading-row h1{font-size:26px}.heading-row .btn{max-width:100%}.hero-banner{min-height:180px;padding:25px}.hero-banner h2{font-size:24px}.hero-decor{font-size:130px;top:-17px;right:-10px;opacity:.3}.kpis{gap:9px}.kpi{padding:16px;min-height:125px}.kpi strong{font-size:30px}.form-grid,.split-grid{grid-template-columns:1fr}.form-card{padding:19px}.search input{width:150px}.list-toolbar{padding:14px;flex-wrap:wrap}.footer{display:block}.footer span{display:block;margin-bottom:5px}}

@media(max-width:960px){.sidebar{width:200px}.topbar{padding:0 18px}.content{padding:26px 18px}.kpis{grid-template-columns:repeat(2,1fr)}.split-grid{grid-template-columns:1fr}}@media(max-width:650px){.layout{display:block}.sidebar{position:static;height:auto;width:auto}.sidebar nav{display:flex;flex-wrap:wrap;padding:8px}.sidebar .nav-group,.sidebar-footer{display:none}.sidebar-header{height:65px}.nav-link{font-size:11px;padding:8px}.topbar{height:66px}.kpis{grid-template-columns:1fr 1fr}.heading-row{flex-wrap:wrap}.heading-row h1{font-size:25px}.form-grid{grid-template-columns:1fr}.hero-decor{display:none}.hero-banner{min-height:0}.content{padding:20px 12px}.today{display:none}}.btn.small{padding:7px 10px}.notice{border:1px solid #e4e8d8;border-radius:12px;background:#f2f5e6;padding:16px 18px;margin-bottom:20px;font-size:12px}.tiny{font-size:10px;color:#7f877a}.form-actions .btn{margin:2px}.action-inline{display:inline}.code-line{white-space:pre-wrap;word-break:break-word}.nav-icon{width:24px}.alert.error{color:#9d2323}button.link{color:#477333;background:none;border:0;font-weight:700;font-size:12px;padding:0}.form-grid .check-line{grid-column:1/-1}.kpi strong{font-size:34px}
