:root{--brand: #0f766e;--brand-2: #115e59;--brand-soft: #ccfbf1;--accent: #f59e0b;--bg: #f6f7f9;--card: #ffffff;--text: #17202a;--muted: #64748b;--line: #e5e7eb;--danger: #dc2626;--ok: #16a34a;--radius: 14px;--shadow: 0 1px 2px rgba(16, 24, 40, .06), 0 4px 16px rgba(16, 24, 40, .06);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--text);background:var(--bg)}*{box-sizing:border-box}body{margin:0;background:var(--bg)}a{color:var(--brand);text-decoration:none}h1,h2,h3{margin:0 0 .5rem;line-height:1.2}h1{font-size:1.5rem}h2{font-size:1.15rem}h3{font-size:1rem}small,.muted{color:var(--muted)}img{max-width:100%}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border:1px solid var(--line);background:#fff;color:var(--text);padding:.55rem .95rem;border-radius:10px;font:inherit;font-weight:600;cursor:pointer;white-space:nowrap}.btn:hover{border-color:#cbd5e1}.btn.primary{background:var(--brand);border-color:var(--brand);color:#fff}.btn.primary:hover{background:var(--brand-2)}.btn.danger{color:var(--danger)}.btn.small{padding:.3rem .6rem;font-size:.85rem}.btn.block{width:100%}.btn:disabled{opacity:.55;cursor:not-allowed}input,select,textarea{width:100%;padding:.6rem .75rem;border:1px solid var(--line);border-radius:10px;font:inherit;background:#fff;color:var(--text)}input:focus,select:focus,textarea:focus{outline:2px solid var(--brand-soft);border-color:var(--brand)}textarea{min-height:90px;resize:vertical}label.field{display:block;margin-bottom:.9rem}label.field>span{display:block;font-weight:600;font-size:.9rem;margin-bottom:.3rem}label.field>small{display:block;margin-top:.25rem}.row{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center}.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0 1rem}.switch{display:inline-flex;align-items:center;gap:.55rem;cursor:pointer;-webkit-user-select:none;user-select:none}.switch input{display:none}.switch i{width:40px;height:22px;border-radius:22px;background:#cbd5e1;position:relative;transition:.2s;flex:none}.switch i:after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:#fff;top:2px;left:2px;transition:.2s}.switch input:checked+i{background:var(--brand)}.switch input:checked+i:after{left:20px}.badge{display:inline-block;padding:.12rem .5rem;border-radius:999px;font-size:.75rem;font-weight:700;background:#eef2f7;color:var(--muted)}.badge.ok{background:#dcfce7;color:#166534}.badge.warn{background:#fef3c7;color:#92400e}.badge.bad{background:#fee2e2;color:#991b1b}.badge.info{background:var(--brand-soft);color:var(--brand-2)}.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.1rem 1.2rem;margin-bottom:1rem}.card>header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.8rem;flex-wrap:wrap}.card p.help{margin:-.3rem 0 1rem;color:var(--muted);font-size:.9rem}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:.6rem .5rem;border-bottom:1px solid var(--line);vertical-align:middle}.table th{font-size:.78rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.table-wrap{overflow-x:auto}.empty{text-align:center;padding:2rem 1rem;color:var(--muted)}.error{background:#fee2e2;color:#991b1b;padding:.6rem .8rem;border-radius:10px;margin-bottom:.8rem}.toast{position:fixed;bottom:18px;left:50%;transform:translate(-50%);background:#111827;color:#fff;padding:.7rem 1.1rem;border-radius:10px;z-index:100;box-shadow:var(--shadow)}.thumb{width:44px;height:44px;border-radius:8px;object-fit:cover;background:#eef2f7;flex:none;display:grid;place-items:center;color:var(--muted);font-size:1.1rem}.tabs{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:1rem}.tabs button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:.35rem .85rem;font:inherit;cursor:pointer}.tabs button.on{background:var(--brand);color:#fff;border-color:var(--brand)}.admin{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.side{background:#0b1f1d;color:#cbd5e1;padding:1rem .8rem;position:sticky;top:0;height:100vh;overflow-y:auto}.side .brand{display:flex;align-items:center;gap:.55rem;color:#fff;font-weight:800;font-size:1.15rem;padding:.3rem .5rem 1rem}.logo-mark{width:30px;height:30px;border-radius:8px;background:var(--brand);display:grid;place-items:center;color:#fff;font-size:.8rem;font-weight:800}.side .biz{padding:.6rem;background:#ffffff0f;border-radius:10px;margin-bottom:1rem;font-size:.85rem}.side .biz b{color:#fff;display:block}.side h4{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#7c8b9a;margin:1rem .5rem .35rem}.side a{display:block;color:#cbd5e1;padding:.45rem .6rem;border-radius:8px;font-size:.93rem}.side a:hover{background:#ffffff0f;color:#fff}.side a.active{background:var(--brand);color:#fff}.main{padding:1.4rem 1.6rem 3rem;max-width:1100px;width:100%}.topbar{display:none}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.page-head p{margin:.2rem 0 0;color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.8rem;margin-bottom:1rem}.stat{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:1rem}.stat b{font-size:1.5rem;display:block}.stat span{color:var(--muted);font-size:.85rem}.bars{display:flex;align-items:flex-end;gap:6px;height:90px}.bars div{flex:1;background:var(--brand-soft);border-radius:6px 6px 0 0;position:relative;min-height:3px}.bars div span{position:absolute;bottom:-18px;left:0;right:0;text-align:center;font-size:.7rem;color:var(--muted)}.login{min-height:100vh;display:grid;place-items:center;padding:1rem;background:linear-gradient(160deg,#0b1f1d,#0f766e)}.login .card{width:100%;max-width:400px}.img-pick{display:flex;gap:.6rem;flex-wrap:wrap}.img-pick .slot{width:96px;height:96px;border-radius:10px;border:2px dashed var(--line);display:grid;place-items:center;overflow:hidden;position:relative;cursor:pointer;color:var(--muted);font-size:.8rem;text-align:center;background:#fafafa}.img-pick .slot img{width:100%;height:100%;object-fit:cover}.img-pick .slot button{position:absolute;top:3px;right:3px;border:0;background:#0009;color:#fff;border-radius:50%;width:22px;height:22px;cursor:pointer}.chat-log{max-height:420px;overflow-y:auto;display:flex;flex-direction:column;gap:.5rem}@media (max-width: 860px){.admin{grid-template-columns:1fr}.side{position:fixed;z-index:50;left:0;top:0;width:260px;transform:translate(-100%);transition:.25s}.side.open{transform:none}.topbar{display:flex;align-items:center;gap:.6rem;padding:.7rem 1rem;background:#0b1f1d;color:#fff;position:sticky;top:0;z-index:40}.topbar button{background:none;border:0;color:#fff;font-size:1.4rem;cursor:pointer}.main{padding:1rem 1rem 3rem}}.store{max-width:1080px;margin:0 auto;padding-bottom:6rem}.hero{position:relative;background:linear-gradient(135deg,#0b1f1d,var(--brand));color:#fff;padding:1.6rem 1.2rem 1.3rem;border-radius:0 0 22px 22px;background-size:cover;background-position:center}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#0514128c;border-radius:inherit}.hero>*{position:relative}.hero .top{display:flex;gap:1rem;align-items:center}.hero .logo{width:72px;height:72px;border-radius:18px;background:#fff;object-fit:cover;flex:none;display:grid;place-items:center;color:var(--brand);font-weight:800;font-size:1.6rem}.hero h1{font-size:1.45rem;margin:0 0 .2rem}.hero p{margin:.5rem 0 0;opacity:.92;max-width:640px}.hero .meta{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.8rem}.pill{background:#ffffff29;padding:.25rem .65rem;border-radius:999px;font-size:.82rem;color:#fff}.pill.open{background:#16a34a}.pill.closed{background:#b91c1c}.toolbar{position:sticky;top:0;z-index:20;background:var(--bg);padding:.8rem 1rem .4rem}.toolbar .row{flex-wrap:nowrap}.toolbar select{width:auto}.cats{display:flex;gap:.4rem;overflow-x:auto;padding:.6rem 0 .2rem;scrollbar-width:none}.cats button{flex:none;border:1px solid var(--line);background:#fff;border-radius:999px;padding:.4rem .85rem;font:inherit;cursor:pointer}.cats button.on{background:var(--brand);color:#fff;border-color:var(--brand)}.section{padding:0 1rem}.section h2{margin:1.2rem 0 .7rem}.products{display:grid;grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:.8rem}.pcard{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;display:flex;flex-direction:column;cursor:pointer;transition:transform .15s}.pcard:hover{transform:translateY(-2px)}.pcard .ph{aspect-ratio:1;background:linear-gradient(135deg,#e6f4f1,#f1f5f9);display:grid;place-items:center;font-size:2.2rem;position:relative}.pcard .ph img{width:100%;height:100%;object-fit:cover}.pcard .ph .badge{position:absolute;top:8px;left:8px}.pcard .body{padding:.65rem .75rem .8rem;display:flex;flex-direction:column;gap:.3rem;flex:1}.pcard .name{font-weight:600;font-size:.93rem;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.price{font-weight:800;color:var(--brand-2)}.price s{color:var(--muted);font-weight:500;font-size:.85em;margin-left:.3rem}.pcard .btn{margin-top:auto}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;z-index:60;display:flex;justify-content:flex-end}.overlay.center{justify-content:center;align-items:center;padding:1rem}.drawer{background:#fff;width:min(440px,100%);height:100%;overflow-y:auto;padding:1.1rem;display:flex;flex-direction:column}.modal{background:#fff;width:min(560px,100%);max-height:92vh;overflow-y:auto;border-radius:18px}.modal .mbody{padding:1rem 1.2rem 1.2rem}.modal .mimg{aspect-ratio:16/10;background:linear-gradient(135deg,#e6f4f1,#f1f5f9);display:grid;place-items:center;font-size:3rem}.modal .mimg img{width:100%;height:100%;object-fit:contain;background:#fff}.x{border:0;background:#f1f5f9;width:34px;height:34px;border-radius:50%;font-size:1.1rem;cursor:pointer;flex:none}.qty{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:10px;overflow:hidden}.qty button{border:0;background:#f8fafc;width:32px;height:32px;font-size:1.1rem;cursor:pointer}.qty span{min-width:32px;text-align:center;font-weight:700}.cart-line{display:flex;gap:.7rem;align-items:center;padding:.7rem 0;border-bottom:1px solid var(--line)}.cart-fab{position:fixed;bottom:18px;left:50%;transform:translate(-50%);z-index:30;box-shadow:0 8px 24px #0f766e59;padding:.8rem 1.3rem;border-radius:999px}.footer{text-align:center;color:var(--muted);font-size:.85rem;padding:2rem 1rem}.footer .row{justify-content:center}.chat-btn{position:fixed;right:18px;bottom:18px;z-index:35;width:58px;height:58px;border-radius:50%;border:0;background:var(--accent);color:#fff;font-size:1.6rem;cursor:pointer;box-shadow:0 8px 24px #f59e0b73}.chat-btn .dot{position:absolute;top:4px;right:4px;width:12px;height:12px;border-radius:50%;background:#16a34a;border:2px solid #fff}.chat{position:fixed;right:18px;bottom:88px;width:min(380px,calc(100vw - 24px));height:min(560px,calc(100vh - 120px));background:#fff;border-radius:18px;box-shadow:0 20px 50px #0f172a40;z-index:70;display:flex;flex-direction:column;overflow:hidden}.chat header{background:var(--brand);color:#fff;padding:.8rem 1rem;display:flex;align-items:center;gap:.6rem}.chat header .x{background:#ffffff2e;color:#fff;margin-left:auto}.chat .msgs{flex:1;overflow-y:auto;padding:.8rem;display:flex;flex-direction:column;gap:.55rem;background:#f8fafc}.msg{max-width:88%;padding:.55rem .75rem;border-radius:14px;font-size:.93rem;line-height:1.4;white-space:pre-wrap}.msg.user{align-self:flex-end;background:var(--brand);color:#fff;border-bottom-right-radius:4px}.msg.assistant{align-self:flex-start;background:#fff;border:1px solid var(--line);border-bottom-left-radius:4px}.msg .mini{display:flex;gap:.55rem;align-items:center;border:1px solid var(--line);border-radius:10px;padding:.4rem;margin:.35rem 0;background:#fff;color:var(--text);white-space:normal}.msg .mini .thumb{width:46px;height:46px}.msg .mini .n{font-weight:600;font-size:.85rem;line-height:1.2}.chat form{display:flex;gap:.4rem;padding:.6rem;border-top:1px solid var(--line)}.chat .typing{color:var(--muted);font-size:.85rem;padding:0 .3rem}.chips{display:flex;gap:.35rem;flex-wrap:wrap}.chips button{border:1px solid var(--brand);color:var(--brand);background:#fff;border-radius:999px;padding:.25rem .65rem;font:inherit;font-size:.82rem;cursor:pointer}@media (max-width: 520px){.chat{right:0;bottom:0;width:100vw;height:100dvh;border-radius:0}}
