:root{--navy:#0d1f2d;--navy2:#142f43;--teal:#16a394;--teal2:#0d7f75;--gold:#f0b44d;--bg:#f3f6f8;--card:#fff;--text:#1d2a33;--muted:#6d7b85;--line:#dfe6ea;--danger:#c33c54;--success:#16805f;--shadow:0 12px 35px rgba(16,42,58,.08)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.app{min-height:100vh;display:grid;grid-template-columns:245px 1fr}.sidebar{background:var(--navy);color:#dbe8ee;padding:24px 16px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:11px;padding:0 10px 24px;font-weight:800;font-size:18px;color:#fff}.brand-mark{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,var(--gold),var(--teal));display:grid;place-items:center;color:var(--navy);font-weight:900}.nav{display:grid;gap:6px}.nav a{padding:11px 12px;border-radius:10px;display:flex;gap:10px;align-items:center}.nav a:hover,.nav a.active{background:var(--navy2);color:#fff}.nav .icon{width:21px;text-align:center}.userbox{margin-top:auto;border-top:1px solid #274052;padding:16px 8px 0}.userbox small{color:#91a6b4}.logout{background:none;border:0;color:#ffb7c1;padding:8px 0;cursor:pointer}.main{min-width:0}.topbar{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 30px}.topbar h1{font-size:21px;margin:0}.topbar .date{color:var(--muted)}.content{padding:26px 30px 44px}.grid{display:grid;gap:18px}.stats{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:22px}.stat{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:19px;box-shadow:var(--shadow)}.stat .label{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.06em}.stat .value{font-size:25px;font-weight:800;margin-top:8px}.stat .hint{font-size:12px;color:var(--muted);margin-top:5px}.card{background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);overflow:hidden}.card-head{padding:18px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.card-head h2,.card-head h3{font-size:16px;margin:0}.card-body{padding:20px}.split{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(330px,.7fr);gap:20px}.two{grid-template-columns:repeat(2,minmax(0,1fr))}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.btn{border:0;border-radius:10px;padding:10px 14px;background:var(--teal);color:#fff;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:7px}.btn:hover{background:var(--teal2)}.btn.secondary{background:#edf3f5;color:var(--text)}.btn.danger{background:var(--danger)}.btn.small{padding:7px 10px;font-size:12px}.btn.full{width:100%}.field{display:grid;gap:6px}.field label{font-weight:700;font-size:12px}.field input,.field select,.field textarea,.input{width:100%;border:1px solid #cfdbe1;background:#fff;border-radius:9px;padding:10px 11px;outline:none}.field input:focus,.field select:focus,.field textarea:focus,.input:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(22,163,148,.12)}.field textarea{min-height:78px;resize:vertical}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.span-2{grid-column:span 2}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);white-space:nowrap}th{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;background:#f9fbfc}tr:last-child td{border-bottom:0}.badge{display:inline-flex;padding:4px 8px;border-radius:999px;background:#e8f7f4;color:var(--teal2);font-size:11px;font-weight:800}.badge.warn{background:#fff4df;color:#9a6509}.badge.danger{background:#ffe9ed;color:var(--danger)}.muted{color:var(--muted)}.text-success{color:var(--success)}.text-danger{color:var(--danger)}.flash{padding:12px 15px;border-radius:11px;margin-bottom:16px;font-weight:650}.flash.success{background:#ddf6ec;color:#17694f}.flash.error{background:#ffe5e9;color:#982b3e}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.toolbar .search{min-width:220px}.empty{padding:34px;text-align:center;color:var(--muted)}.catalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.catalog-item{border:1px solid var(--line);border-radius:12px;padding:14px;background:#fff;cursor:pointer;text-align:left}.catalog-item:hover{border-color:var(--teal);box-shadow:0 8px 20px rgba(22,163,148,.1)}.catalog-item strong{display:block;margin-bottom:5px}.catalog-item small{color:var(--muted)}.catalog-item .price{margin-top:10px;font-weight:800;color:var(--teal2)}.cart-row{padding:12px 0;border-bottom:1px solid var(--line)}.cart-row:last-child{border-bottom:0}.cart-top{display:flex;justify-content:space-between;gap:8px}.cart-controls{display:grid;grid-template-columns:70px 1fr 1fr 32px;gap:7px;margin-top:9px;align-items:center}.cart-controls input{min-width:0;border:1px solid var(--line);border-radius:8px;padding:7px}.icon-btn{border:0;background:#ffe9ed;color:var(--danger);height:30px;border-radius:8px;cursor:pointer}.totals{margin-top:15px;padding-top:14px;border-top:2px solid var(--navy);display:grid;gap:8px}.total-line{display:flex;justify-content:space-between}.total-line.grand{font-size:18px;font-weight:900}.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 20%,#1a6b69 0,transparent 35%),linear-gradient(135deg,#071621,#15384b)}.login-card{width:min(430px,calc(100% - 30px));background:#fff;border-radius:20px;padding:30px;box-shadow:0 30px 80px rgba(0,0,0,.25)}.login-card .brand{color:var(--navy);padding:0 0 24px}.login-card h1{font-size:24px;margin:0 0 7px}.login-card p{color:var(--muted);margin:0 0 22px}.login-card form{display:grid;gap:14px}.notice{background:#edf8f7;border:1px solid #c6ebe6;border-radius:11px;padding:12px;color:#28665f}.section-title{font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:18px 0 10px}.profit{font-weight:800;color:var(--success)}.loss{font-weight:800;color:var(--danger)}.receipt{max-width:850px;margin:auto}.receipt-header{display:flex;justify-content:space-between;border-bottom:2px solid var(--navy);padding-bottom:20px;margin-bottom:20px}.receipt h2{margin:0}.print-only{display:none}.mobile-menu{display:none}.modal{position:fixed;inset:0;background:rgba(4,18,27,.58);display:none;place-items:center;padding:18px;z-index:20}.modal.open{display:grid}.modal-box{width:min(600px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:16px;box-shadow:0 30px 70px rgba(0,0,0,.25)}
.cart-controls.no-cost{grid-template-columns:90px 1fr 32px}
@media(max-width:1050px){.stats{grid-template-columns:repeat(2,1fr)}.split{grid-template-columns:1fr}.catalog{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.app{display:block}.sidebar{position:fixed;z-index:30;left:-260px;width:245px;transition:.2s}.sidebar.open{left:0}.mobile-menu{display:inline-flex}.topbar{padding:0 16px}.topbar .date{display:none}.content{padding:18px 14px 35px}.stats,.two,.three,.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.catalog{grid-template-columns:1fr}.cart-controls{grid-template-columns:60px 1fr 1fr 32px}}
@media print{.sidebar,.topbar,.no-print,.flash{display:none!important}.app{display:block}.content{padding:0}.card{border:0;box-shadow:none}.print-only{display:block}body{background:#fff}}
