:root{--ink:#172a26;--ink-2:#29433d;--accent:#e2643d;--accent-dark:#c44d2b;--bg:#edf1ef;--surface:#fff;--line:#d7dfdc;--muted:#6d7b77;--success:#227052;--danger:#b43a32;--radius:12px;--shadow:0 10px 32px rgba(23,42,38,.07)}*{box-sizing:border-box}html{font-family:"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--bg)}body{margin:0;min-height:100dvh}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.sidebar{position:fixed;inset:0 auto 0 0;width:244px;background:var(--ink);color:#dbe5e1;padding:26px 18px 18px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:12px;padding:0 8px 28px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.32);border-radius:10px;font-weight:800;letter-spacing:-.08em;color:#fff}.brand-mark.large{width:58px;height:58px;font-size:22px}.brand>span:last-child,.login-wordmark>span:last-child{display:flex;flex-direction:column}.brand strong,.login-wordmark strong{color:#fff;font-size:18px}.brand small,.login-wordmark small{font-size:11px;color:#91a59f;margin-top:2px}.sidebar nav{display:grid;gap:3px}.sidebar nav a{padding:11px 13px;border-radius:9px;color:#adc0ba;font-size:14px;font-weight:600}.sidebar nav a:hover,.sidebar nav a.active{background:#29433d;color:#fff}.sidebar nav a.active{box-shadow:inset 3px 0 var(--accent)}.sidebar-foot{margin-top:auto;border-top:1px solid rgba(255,255,255,.12);padding:18px 6px 0;display:grid;grid-template-columns:34px 1fr 28px;align-items:center;gap:9px}.sidebar-foot span:nth-child(2){display:flex;flex-direction:column;font-size:12px}.sidebar-foot small{color:#8ba099}.avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--accent);color:white;font-weight:800}.icon-button{border:0;background:transparent;color:inherit;padding:6px}.main{margin-left:244px;padding:34px 36px 60px;max-width:1680px}.mobile-head{display:none}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:26px}.page-head h1{font-size:32px;letter-spacing:-.04em;margin:3px 0 6px}.page-head p{margin:0;color:var(--muted)}.kicker{font-size:11px!important;letter-spacing:.13em;font-weight:800;color:var(--accent)!important;text-transform:uppercase}.actions{display:flex;gap:9px;align-items:center}.button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 16px;border:1px solid transparent;border-radius:9px;font-weight:750;font-size:13px;white-space:nowrap}.button:active{transform:translateY(1px)}.button.primary{background:var(--accent);color:#fff}.button.primary:hover{background:var(--accent-dark)}.button.secondary{background:var(--surface);border-color:var(--line)}.button.ghost{background:transparent;border-color:var(--line)}.button.danger{background:var(--danger);color:white}.button.full{width:100%}.metrics-grid{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:12px;margin-bottom:16px}.metric{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px;min-height:128px;display:flex;flex-direction:column;justify-content:space-between}.metric span{font-size:12px;font-weight:700;color:var(--muted)}.metric strong{font-size:30px;letter-spacing:-.045em}.metric small{color:var(--muted)}.metric.hero-metric{background:var(--ink);border-color:var(--ink);color:white}.metric.hero-metric span,.metric.hero-metric small{color:#aec0bb}.metric.money{border-bottom:3px solid var(--accent)}.metrics-grid.compact{grid-template-columns:repeat(4,1fr)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);gap:16px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow)}.panel.wide{grid-column:1/-1}.panel h2{margin:0 0 4px;font-size:17px;letter-spacing:-.02em}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}.panel-head p{margin:0;color:var(--muted);font-size:12px}.panel-head>a{font-size:12px;font-weight:750;color:var(--accent-dark)}.stock-bars{display:grid;gap:19px}.stock-row{display:grid;grid-template-columns:150px minmax(80px,1fr) 28px;gap:12px;align-items:center}.stock-row>div:first-child{display:flex;flex-direction:column}.stock-row small{color:var(--muted);font-size:10px}.bar{height:7px;background:#e7ecea;border-radius:99px;overflow:hidden}.bar i{display:block;height:100%;background:var(--accent);border-radius:99px}.billing dl{margin:16px 0 0}.billing dl>div{display:flex;justify-content:space-between;padding:10px 0;font-size:13px}.billing dt{color:var(--muted)}.billing dd{margin:0;font-weight:750}.billing .total{border-top:1px solid var(--line);margin-top:8px;padding-top:16px}.billing .total dt,.billing .total dd{color:var(--ink);font-size:16px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em;padding:10px 12px;border-bottom:1px solid var(--line)}td{padding:13px 12px;border-bottom:1px solid #e9eeec;white-space:nowrap}td a{color:var(--accent-dark);font-weight:700}.type,.state{display:inline-flex;border-radius:99px;padding:4px 8px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.type.in{background:#e5f2ed;color:#216c51}.type.out{background:#fbe9e2;color:#a83d23}.state.confirmed,.state.available,.state.closed{background:#e5f2ed;color:#216c51}.state.annulled{background:#f7e5e3;color:#a83730}.state.depleted{background:#e8eceb;color:#65736f}.empty{text-align:center;color:var(--muted);padding:35px}.flash{padding:12px 15px;border-radius:9px;margin-bottom:18px;font-size:13px;font-weight:650}.flash.success{background:#dff1e9;color:#165b42}.flash.error{background:#fae5e2;color:#973129}.search{border:1px solid var(--line);border-radius:8px;padding:8px 11px;min-width:220px}.form-layout{display:grid;gap:16px}.form-section>h2{margin-bottom:18px}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}label{display:grid;gap:7px;font-size:12px;font-weight:700;color:var(--ink-2)}input,select,textarea{width:100%;border:1px solid #cbd5d2;border-radius:8px;padding:10px 11px;background:#fff;color:var(--ink);outline:none}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(226,100,61,.13)}textarea{resize:vertical}.product-inputs{display:grid;gap:4px}.product-inputs label{display:grid;grid-template-columns:1fr 100px;align-items:center;padding:12px 0;border-bottom:1px solid #e8edeb}.product-inputs label>span{display:flex;flex-direction:column}.product-inputs small{color:var(--muted);font-weight:400}.file-field{margin-top:14px;border:1px dashed #aab9b4;border-radius:10px;padding:16px}.file-field input{display:none}.file-field span{color:var(--accent-dark)}.form-actions{display:flex;align-items:center;justify-content:space-between;padding:14px 0}.form-actions p{color:var(--muted);font-size:12px;margin:0}.tabs{display:flex;gap:3px;margin-bottom:10px}.tabs button{border:0;border-radius:8px;padding:10px 14px;background:transparent;color:var(--muted);font-weight:750}.tabs button.active{background:var(--ink);color:white}.hidden{display:none!important}.text-danger{border:0;background:none;color:var(--danger);font-weight:700}dialog{border:0;border-radius:14px;padding:0;box-shadow:0 25px 80px rgba(0,0,0,.25);width:min(480px,90vw)}dialog::backdrop{background:rgba(12,25,22,.55)}dialog form{padding:26px;display:grid;gap:18px}.period-filter{display:flex;align-items:end;gap:15px;margin-bottom:16px}.period-filter label{width:190px}.daily-chart{height:210px;display:flex;gap:5px;align-items:end;border-bottom:1px solid var(--line);padding-top:20px}.daily-chart i{flex:1;background:var(--accent);min-height:2px;border-radius:4px 4px 0 0;opacity:.8}.daily-chart i:hover{opacity:1}.chart-axis{display:flex;justify-content:space-between;color:var(--muted);font-size:11px;padding-top:8px}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(280px,1fr));gap:16px;margin-bottom:16px}.stack{display:grid;gap:13px;margin-top:18px}code{font-size:10px;white-space:normal}.auth-body{background:#10201d}.login-shell{min-height:100dvh;display:grid;grid-template-columns:1.1fr .9fr}.login-art{background:var(--ink);color:white;padding:52px clamp(30px,6vw,90px);display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.login-art:after{content:"";position:absolute;width:420px;height:420px;border:80px solid rgba(226,100,61,.09);border-radius:50%;right:-180px;bottom:-170px}.login-wordmark{display:flex;align-items:center;gap:13px}.login-art h1{font-size:clamp(42px,5vw,72px);line-height:.98;letter-spacing:-.055em;margin:10px 0 22px}.login-art>div:nth-child(2)>p:last-child{color:#9fb3ad;max-width:480px;line-height:1.6}.legal{color:#748a84;font-size:11px}.login-panel{background:#f4f7f6;display:grid;place-items:center;padding:30px}.login-form{width:min(380px,100%);display:grid;gap:19px}.login-form h2{font-size:30px;letter-spacing:-.04em;margin:5px 0}.muted{color:var(--muted);margin:0}.online-note{text-align:center;color:var(--muted);font-size:11px}.online-note span{display:inline-block;width:7px;height:7px;background:#28a673;border-radius:50%;margin-right:5px}
@media(max-width:1100px){.metrics-grid{grid-template-columns:repeat(3,1fr)}.dashboard-grid{grid-template-columns:1fr}.panel.wide{grid-column:auto}.form-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.sidebar{transform:translateX(-100%);transition:transform .2s}.sidebar.open{transform:translateX(0)}.mobile-head{display:flex;position:sticky;top:0;z-index:15;height:56px;background:var(--ink);color:white;align-items:center;justify-content:space-between;padding:0 15px}.status-dot{font-size:10px;color:#8ee2bd}.main{margin:0;padding:22px 14px 50px}.page-head{align-items:flex-start;flex-direction:column}.page-head h1{font-size:27px}.actions{width:100%;flex-wrap:wrap}.actions .button{flex:1}.metrics-grid,.metrics-grid.compact{grid-template-columns:repeat(2,1fr)}.metric{min-height:112px;padding:15px}.metric strong{font-size:25px}.panel{padding:16px}.form-grid,.settings-grid{grid-template-columns:1fr}.form-actions{align-items:stretch;flex-direction:column;gap:15px}.stock-row{grid-template-columns:120px 1fr 25px}.login-shell{grid-template-columns:1fr}.login-art{display:none}.login-panel{min-height:100dvh}.product-inputs label{grid-template-columns:1fr 76px}}@media(max-width:420px){.metrics-grid,.metrics-grid.compact{grid-template-columns:1fr 1fr}.metric.money{grid-column:1/-1}.metric span{font-size:10px}}
.cost-detail-trigger{margin-top:16px}.cost-dialog{width:min(620px,calc(100vw - 28px));max-height:min(760px,calc(100dvh - 28px));padding:0;overflow:auto}.cost-dialog[open]{animation:dialog-in .18s cubic-bezier(.22,1,.36,1)}.cost-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px 24px 18px;border-bottom:1px solid var(--line)}.cost-dialog-head h2{margin:0 0 4px;font-size:21px}.cost-dialog-head p{margin:0;color:var(--muted);font-size:13px}.dialog-close{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--line);border-radius:8px;background:white;color:var(--ink);font-size:24px;line-height:1}.dialog-close:hover{background:var(--bg)}.cost-explanation{padding:18px 24px;background:#f4f7f6}.cost-explanation p,.cost-note{margin:0;line-height:1.55;color:var(--ink-2);font-size:13px}.cost-breakdown{margin:0;padding:8px 24px}.cost-breakdown>div{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid #e9eeec}.cost-breakdown dt{display:flex;flex-direction:column;gap:3px}.cost-breakdown dt small{color:var(--muted);font-size:11px}.cost-breakdown dd{margin:0;font-weight:800;white-space:nowrap}.cost-breakdown .cost-total{border-bottom:0;padding-top:18px}.cost-total strong,.cost-total dd{font-size:17px}.cost-dialog>.cost-note{margin:0 24px 18px;padding-top:14px;border-top:1px solid var(--line)}.cost-dialog>.button{width:calc(100% - 48px);margin:0 24px 24px}@keyframes dialog-in{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.cost-dialog[open]{animation:none}}@media(max-width:520px){.cost-dialog-head{padding:20px 18px 16px}.cost-explanation{padding:16px 18px}.cost-breakdown{padding:6px 18px}.cost-breakdown>div{align-items:flex-start}.cost-breakdown dt small{max-width:210px}.cost-dialog>.cost-note{margin:0 18px 16px}.cost-dialog>.button{width:calc(100% - 36px);margin:0 18px 18px}}
