
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,Arial,sans-serif;background:#f3f7f9;color:#132331}button,input{font:inherit}
.shell{display:grid;grid-template-columns:245px minmax(0,1fr);min-height:100vh}
.side{background:linear-gradient(180deg,#172b32,#203840);color:#eef7f6;padding:22px 14px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}
.side h2{font-size:23px;margin:4px 10px 0;color:#fff}.side>small{margin:3px 10px 25px;color:#b8c8cb}
.side nav{display:flex;flex-direction:column;gap:5px}.side a{color:#e4eeee;text-decoration:none;padding:13px 15px;border-radius:10px;transition:.15s}
.side a:hover{background:#0aa77e;color:#fff;transform:translateX(2px)}.side>a:last-child{margin-top:auto;border-top:1px solid #385057;border-radius:0}
main{padding:24px;min-width:0}main>h1{margin:4px 0 5px;font-size:29px}main>p{color:#73828c;margin-top:0}
.search{width:100%;height:48px;padding:0 16px;border:1px solid #d8e2e7;border-radius:11px;background:#fff;box-shadow:0 2px 8px #1b394508;margin:12px 0 18px;outline:none}
.search:focus{border-color:#079a75;box-shadow:0 0 0 3px #079a7515}
.pos{display:grid;grid-template-columns:minmax(0,1fr) 355px;gap:18px;align-items:start}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}
.product{position:relative;min-height:185px;background:#fff;border:1px solid #e1e8ec;border-radius:14px;padding:17px;text-align:left;display:flex;flex-direction:column;gap:8px;cursor:pointer;box-shadow:0 4px 15px #20343d0a;transition:.15s}
.product:hover{border-color:#079a75;transform:translateY(-2px);box-shadow:0 8px 22px #20343d15}
.product:before{content:"+";position:absolute;right:14px;bottom:14px;width:31px;height:31px;border-radius:8px;background:#079a75;color:#fff;display:grid;place-items:center;font-size:21px;font-weight:700}
.product small{display:inline-block;color:#697983;font-size:12px;background:#eef3f5;padding:5px 8px;border-radius:7px;align-self:flex-start}
.product b{font-size:15px;line-height:1.35;padding-right:4px}.product strong{color:#007b61;font-size:18px;margin-top:2px}.product span{color:#6f7f89;font-size:13px;margin-top:auto;padding-bottom:36px}
.cart{background:#fff;border:1px solid #e1e8ec;border-radius:15px;padding:20px;align-self:start;position:sticky;top:20px;box-shadow:0 5px 20px #20343d0d}
.cart h2{display:flex;justify-content:space-between;align-items:center;margin:2px 0 18px;font-size:21px}.cart h2 small{font-size:12px;color:#71818a;font-weight:500;background:#edf3f4;padding:5px 8px;border-radius:12px}
#items{min-height:250px;border-top:1px solid #edf1f3;border-bottom:1px solid #edf1f3;padding:6px 0;margin-bottom:16px}
#items>p{color:#8b989f;text-align:center;margin-top:90px}.line{display:flex;justify-content:space-between;gap:10px;align-items:center;border-bottom:1px solid #edf1f3;padding:12px 0}.line small{display:block;color:#73828b;margin-top:4px}.line button{width:28px;height:28px;border:1px solid #d9e1e5;background:#fff;border-radius:7px;cursor:pointer}
.cart label{font-size:12px;font-weight:700;color:#596a74}.cart>input{width:100%;height:42px;border:1px solid #d9e2e6;border-radius:9px;padding:0 11px;margin:7px 0 12px}
.cart>h2{padding-top:11px;border-top:1px solid #edf1f3}.cart>h2 b{color:#078467;font-size:25px}
.pay,.btn,.form button{border:0;background:linear-gradient(135deg,#079a75,#0a8168);color:#fff;border-radius:10px;padding:13px 16px;font-weight:700;cursor:pointer;box-shadow:0 4px 12px #07846724}.pay{width:100%;font-size:15px}.pay:hover,.btn:hover,.form button:hover{filter:brightness(.96)}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:20px 0}.stats>div,.panel{background:#fff;border:1px solid #e1e8ec;border-radius:14px;padding:20px;box-shadow:0 4px 14px #20343d09}.stats small{color:#72818a}.stats b{display:block;font-size:24px;margin-top:9px;color:#16313b}.panel{margin-top:16px}.form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.form input,.form select{width:100%;height:43px;padding:0 11px;border:1px solid #d9e2e6;border-radius:9px;background:#fff}
table{width:100%;border-collapse:collapse;background:#fff}th,td{text-align:left;padding:13px;border-bottom:1px solid #edf1f3}th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#6b7a83}
.box{max-width:500px;margin:10vh auto;background:#fff;padding:30px;border-radius:16px;box-shadow:0 10px 35px #0001}.box .btn{display:inline-block;text-decoration:none}
@media(max-width:1100px){.pos{grid-template-columns:1fr 320px}.grid{grid-template-columns:repeat(auto-fill,minmax(165px,1fr))}}
@media(max-width:850px){.shell{grid-template-columns:1fr}.side{height:auto;position:static;display:block}.side nav{display:flex;flex-direction:row;overflow:auto}.side>a:last-child{display:none}.pos{grid-template-columns:1fr}.cart{position:static}.stats,.form{grid-template-columns:1fr 1fr}}
@media(max-width:560px){main{padding:14px}.grid{grid-template-columns:1fr 1fr}.product{min-height:160px;padding:12px}.stats,.form{grid-template-columns:1fr}}
