:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#16213b;background:#f7f9fc;font-synthesis:none;font-size:14px}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #99b6ff;outline-offset:2px}a{color:#2957cb;text-decoration:none}.app{display:flex;min-height:100vh}.sidebar{width:250px;background:#fff;border-right:1px solid #e8edf6;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;flex-shrink:0;padding:23px 15px}.brand{display:flex;align-items:center;gap:11px;padding:5px 13px 29px;font-size:19px;font-weight:800;letter-spacing:-.7px}.brand-logo{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#2859d7;color:#fff;font-weight:900;font-size:21px;box-shadow:0 8px 17px #3064d42b}.brand small{font-size:10px;font-weight:600;color:#9aa9bf;display:block;letter-spacing:1.9px}.section-kicker{font-size:10px;text-transform:uppercase;color:#a3acc2;font-weight:800;letter-spacing:1.7px;padding:15px 15px 10px}.navigation{display:grid;gap:3px}.nav-button{display:flex;align-items:center;gap:13px;padding:12px 14px;border:0;background:transparent;border-radius:11px;color:#65748e;text-align:left;font-weight:650;white-space:nowrap}.nav-button:hover{background:#f3f6fd}.nav-button.active{background:#ebf1ff;color:#2658d7}.nav-icon{font-size:18px;width:22px;text-align:center}.side-footer{margin-top:auto;padding:15px 12px 9px;border-top:1px solid #eef1f8}.side-user{display:flex;align-items:center;gap:10px;font-size:12px;color:#68758f;min-width:0}.avatar{width:35px;height:35px;display:grid;place-items:center;background:#eaf0fe;color:#2b57ce;border-radius:100%;font-weight:800}.side-user strong{display:block;overflow:hidden;text-overflow:ellipsis;max-width:140px;color:#1e2c45;font-size:12px}.link-button{border:0;background:transparent;color:#6f7f98;padding:12px 0 0 45px;text-align:left;font-size:12px}.main{width:100%;min-width:0}.topbar{height:85px;background:#fff;border-bottom:1px solid #e8edf5;display:flex;align-items:center;justify-content:space-between;padding:0 39px}.breadcrumbs{display:flex;align-items:center;gap:10px;font-size:12px;color:#97a5bc}.breadcrumbs strong{color:#34425e;font-weight:700}.top-actions{display:flex;align-items:center;gap:15px}.small-date{color:#9aabc2;font-size:12px}.online-indicator{display:flex;align-items:center;gap:6px;color:#527a66;font-size:12px}.dot{width:7px;height:7px;background:#41b988;border-radius:50%}.content{max-width:1330px;margin:0 auto;padding:34px 38px 110px}.heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:27px;flex-wrap:wrap}.eyebrow{font-size:11px;letter-spacing:2px;color:#6d90dc;text-transform:uppercase;font-weight:800;margin-bottom:8px}.heading h1{margin:0 0 7px;font-size:29px;line-height:1.16;letter-spacing:-1.1px}.subtitle{margin:0;color:#8a98af;line-height:1.5;font-size:13px}.primary,.secondary,.quiet,.danger{border:0;border-radius:10px;padding:11px 16px;font-weight:700;display:inline-flex;justify-content:center;align-items:center;gap:8px;white-space:nowrap}.primary{background:#2e5ede;color:white;box-shadow:0 6px 14px #2e5ede24}.primary:hover{background:#1e4cc6}.secondary{background:#edf3ff;color:#2857c6}.quiet{background:white;color:#465a7a;border:1px solid #e4eaf4}.danger{color:#b54045;background:#fff0f0}.small{font-size:12px;padding:8px 11px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}.stat-card{background:#fff;border:1px solid #edf0f7;border-radius:16px;padding:20px;min-height:137px;box-shadow:0 6px 25px #1e448009}.stat-top{display:flex;align-items:center;justify-content:space-between;color:#77869e;font-size:12px;font-weight:650}.stat-icon{width:35px;height:35px;background:#eff4ff;color:#4670d5;border-radius:10px;display:grid;place-items:center;font-size:18px}.stat-card.green .stat-icon{background:#e9f8f2;color:#35a476}.stat-card.orange .stat-icon{background:#fff4e6;color:#d79635}.stat-card.pink .stat-icon{background:#fff0f1;color:#ca6871}.stat-number{font-size:26px;font-weight:800;letter-spacing:-.9px;margin:18px 0 4px;color:#202c45;white-space:nowrap}.stat-sub{font-size:11px;color:#93a0b6}.two-col{display:grid;grid-template-columns:1.65fr 1fr;gap:18px}.panel{background:#fff;border:1px solid #ecf0f7;border-radius:16px;box-shadow:0 7px 28px #28518b08;min-width:0}.panel-head{display:flex;align-items:center;justify-content:space-between;padding:22px 24px 18px;gap:12px}.panel-head h2{margin:0;font-size:15px;letter-spacing:-.2px}.panel-head p{margin:4px 0 0;font-size:12px;color:#98a5b8}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:12px}th{text-align:left;background:#fbfcff;text-transform:uppercase;letter-spacing:.85px;font-size:10px;color:#9aa8c0;font-weight:800;padding:13px 22px;white-space:nowrap;border-bottom:1px solid #eef2f7}td{padding:17px 22px;border-bottom:1px solid #f0f3f8;color:#52627b;vertical-align:middle}tr:last-child td{border-bottom:0}.td-main{font-weight:750;color:#24324b}.td-sub{display:block;color:#9aa6b8;margin-top:5px;font-size:11px}.status{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;border-radius:20px;font-size:11px;font-weight:700;white-space:nowrap;background:#eff2f7;color:#68768b}.status.green{color:#26855e;background:#e5f7ec}.status.blue{color:#2c68c6;background:#e9f0ff}.status.orange{color:#b77b28;background:#fff4e1}.status.purple{color:#805ac3;background:#f2ecff}.status.red{color:#c05a64;background:#fff0f2}.panel-list{padding:0 24px 13px}.mini-row{padding:14px 0;border-bottom:1px solid #f0f2f8;display:flex;align-items:center;justify-content:space-between;gap:10px}.mini-row:last-child{border:0}.mini-label{font-weight:750;font-size:12px}.mini-hint{font-size:11px;color:#9ba8bd;padding-top:5px}.minor-tag{font-size:11px;font-weight:750;color:#61718d}.toolbar{display:flex;align-items:center;gap:11px;flex-wrap:wrap;margin-bottom:19px}.search{flex:1;min-width:210px;background:#fff;border:1px solid #e6ebf3;border-radius:11px;padding:10px 13px;color:#263751}.search:focus{border-color:#7c9de9}.filter{background:#fff;border:1px solid #e6ebf3;border-radius:11px;padding:11px 13px;color:#596985;min-height:42px}.empty{padding:50px 20px;text-align:center;color:#8392a8}.empty .empty-icon{font-size:34px;display:block;margin-bottom:10px}.empty strong{display:block;color:#34445e;font-size:15px;margin-bottom:7px}.empty p{font-size:12px;line-height:1.7;max-width:340px;margin:0 auto 17px}.text-action{background:transparent;border:0;color:#2d5dd7;font-weight:700;font-size:12px;padding:7px 0}.text-action:hover{text-decoration:underline}.modal-backdrop{position:fixed;inset:0;background:#1d2a4270;z-index:20;display:flex;justify-content:center;align-items:center;padding:16px;backdrop-filter:blur(3px)}.modal{width:min(570px,100%);max-height:min(740px,94vh);overflow:auto;background:#fff;border-radius:20px;box-shadow:0 30px 100px #14244045}.modal-head{padding:24px 26px 16px;display:flex;align-items:flex-start;justify-content:space-between;border-bottom:1px solid #eff2f8}.modal-head h2{margin:0 0 5px;font-size:20px}.modal-head p{margin:0;color:#9ba5b8;font-size:12px;line-height:1.5}.x{border:0;background:#eff2f8;color:#7b87a0;border-radius:9px;width:32px;height:32px;font-size:20px}.form-body{padding:23px 26px;display:grid;gap:15px}.field{display:grid;gap:6px}.field label{font-size:12px;font-weight:750;color:#52627e}.field input,.field select,.field textarea{width:100%;padding:11px 12px;border:1px solid #e2e8f1;border-radius:9px;color:#243551;background:#fff;outline:0}.field textarea{min-height:85px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:#4678e3;box-shadow:0 0 0 3px #4779e219}.fields-two{display:grid;grid-template-columns:1fr 1fr;gap:13px}.hint{font-size:11px;line-height:1.5;color:#97a4b7}.modal-foot{display:flex;justify-content:flex-end;gap:9px;padding:16px 26px 24px;border-top:1px solid #eff2f8}.notice{border-radius:11px;padding:12px 14px;font-size:12px;line-height:1.65;background:#edf4ff;color:#4e6fa6}.warning{background:#fff5e8;color:#9a692f}.config-page,.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 30% 10%,#e5edff,transparent 34%),radial-gradient(circle at 90% 80%,#e8f8f3,transparent 33%),#fafcff}.login-card{width:min(440px,100%);background:#fff;padding:32px;border-radius:22px;box-shadow:0 24px 72px #21427b18;border:1px solid #eff3fa}.login-card h1{font-size:25px;margin:16px 0 6px;letter-spacing:-.8px}.login-card p{color:#8795ad;line-height:1.65;font-size:13px;margin:0 0 24px}.login-card form{display:grid;gap:17px}.login-card .primary{width:100%;margin-top:4px;padding:13px}.login-foot{margin-top:21px;font-size:12px;color:#97a2b8;text-align:center;line-height:1.7}.divider{height:1px;background:#edf1f8;margin:14px 0}.key-value{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:15px 0;border-bottom:1px solid #edf1f7}.key-value:last-child{border:0}.kv-label{color:#6a7791;font-size:12px}.kv-number{font-weight:800;font-size:14px}.trend-bars{height:160px;display:flex;align-items:flex-end;gap:13px;padding:18px 25px 30px}.trend-col{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:8px;position:relative}.trend-bar{background:linear-gradient(#4776ea,#b7cbff);border-radius:6px 6px 0 0;width:min(38px,70%);min-height:3px}.trend-label{position:absolute;top:100%;font-size:10px;color:#91a0b5;padding-top:6px}.stacked-line{display:flex;height:9px;overflow:hidden;border-radius:10px;background:#f0f3f8}.stacked-line span{display:block}.report-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}.report-metric{padding:26px}.report-metric .label{font-size:12px;color:#8b98ae}.report-metric strong{font-size:26px;display:block;margin-top:14px}.report-metric small{font-size:11px;color:#91a0b6}.report-section{margin-top:20px}.info-list{list-style:none;margin:0;padding:0}.info-list li{margin:12px 0;font-size:12px;color:#78879e;line-height:1.6}.pill{display:inline-block;border-radius:12px;background:#eef3fd;color:#4664ad;padding:5px 9px;font-weight:700;font-size:10px}.boot{padding:100px;text-align:center;color:#657a9a}.toast{position:fixed;bottom:25px;right:25px;background:#243557;color:#fff;padding:14px 19px;border-radius:11px;box-shadow:0 12px 35px #26375833;font-size:12px;z-index:40;max-width:360px}.toast.error{background:#af4447}.mobile-nav{display:none}.cta-card{background:linear-gradient(126deg,#2b5cdb,#3e7ae7);color:white;border-radius:16px;padding:25px;display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:21px}.cta-card strong{font-size:16px;display:block;margin-bottom:6px}.cta-card p{color:#e3ebff;font-size:12px;margin:0;line-height:1.5}.cta-card .quiet{background:#fff;color:#2c56bb}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
@media(max-width:1130px){.stats{grid-template-columns:repeat(2,1fr)}.two-col{grid-template-columns:1fr}.content{padding:26px 22px 105px}.topbar{padding:0 22px}.sidebar{width:222px}.heading h1{font-size:26px}}
@media(max-width:720px){.sidebar{display:none}.topbar{height:62px;padding:0 18px}.top-actions .small-date{display:none}.content{padding:23px 16px 100px}.heading h1{font-size:25px}.stats{gap:10px}.stat-card{padding:15px;min-height:116px;border-radius:13px}.stat-number{font-size:21px;margin-top:14px}.stat-top{font-size:11px}.stat-icon{width:29px;height:29px}.panel-head{padding:19px 17px 14px}th,td{padding:14px 14px}.panel-list{padding:0 18px 12px}.mobile-nav{position:fixed;bottom:0;left:0;right:0;background:#ffffffed;backdrop-filter:blur(12px);border-top:1px solid #e8edf6;display:flex;justify-content:space-around;z-index:10;padding:9px 5px max(8px,env(safe-area-inset-bottom))}.mobile-nav button{border:0;background:transparent;color:#8b9ab0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:56px;padding:3px 4px;font-size:10px}.mobile-nav button.active{color:#2d5bd7;font-weight:800}.mobile-nav .nav-icon{font-size:19px}.modal-backdrop{padding:0;align-items:flex-end}.modal{max-height:93vh;border-radius:20px 20px 0 0;width:100%}.form-body{padding:18px}.modal-head{padding:20px 18px 15px}.modal-foot{padding:16px 18px max(25px,env(safe-area-inset-bottom))}.fields-two{grid-template-columns:1fr 1fr}.cta-card{padding:19px;align-items:flex-start;flex-direction:column}.report-grid{grid-template-columns:1fr 1fr}.report-metric{padding:18px}.report-metric strong{font-size:21px}}
@media(max-width:400px){.fields-two{grid-template-columns:1fr}.stat-number{font-size:18px}.status{font-size:10px}}
/* ALTARIUM V2: catalog and multi-product order editor */
.section-divider{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #edf1f8;padding-top:16px;margin-top:3px}.section-divider strong{font-size:13px;color:#263751}.order-lines{display:flex;flex-direction:column;gap:10px}.order-line{background:#f8fbff;border:1px solid #e7edf7;border-radius:13px;padding:12px;display:grid;grid-template-columns:minmax(0,2fr) minmax(90px,.72fr) auto auto;gap:10px;align-items:end}.order-line .field{min-width:0}.order-line .field label{font-size:11px}.order-line .line-price{font-weight:800;color:#263751;white-space:nowrap;font-size:12px;padding-bottom:12px;text-align:right}.order-line .quiet{margin-bottom:2px}.order-total{padding:14px 18px;background:#edf5ff;border:1px solid #dce9ff;border-radius:12px;display:grid;gap:8px}.order-total>div{display:flex;justify-content:space-between;gap:15px;font-size:12px;color:#536783}.order-total .big{padding-top:9px;border-top:1px solid #d8e3f5;font-size:17px;font-weight:800;color:#173862}.order-total .hint{margin:0}.modal:has(.order-lines){width:min(760px,100%)}
@media(max-width:720px){.order-line{grid-template-columns:minmax(0,1fr) 86px;gap:8px}.order-line .line-price{padding:6px 2px;text-align:left}.order-line .quiet{justify-self:end}.section-divider{flex-wrap:wrap}}
/* ALTARIUM V3: mobile-ready product grouping, accessible destructive actions */
.view-picker{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 17px}
.order-group{margin-bottom:17px}.order-group .panel-head h2{font-size:16px}
.row-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
button.danger{background:#fff0f0;border:1px solid #ffd0d3;border-radius:9px;color:#b43940;padding:9px 10px;font-weight:750;cursor:pointer}
button.danger:hover{background:#ffe4e5}
button.danger.small{font-size:11px;padding:7px 9px}
.order-line{grid-template-columns:minmax(0,1.65fr) 83px 118px auto auto}
.order-line .field input[name=line_price]{min-width:95px}
@media(max-width:720px){.order-line{grid-template-columns:minmax(0,1fr) 80px}.order-line .line-price{padding:0}.row-actions{min-width:120px}.modal .danger{flex-shrink:0}}
