:root{--teal: #0f766e;--teal-dark: #0b5a54;--amber: #f59e0b;--bg: #f4f6f8;--card: #ffffff;--text: #1f2937;--muted: #6b7280;--border: #d9dee3;--danger: #b91c1c;--radius: 10px;--maxw: 1100px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--text);background:var(--bg);font-size:16px;-webkit-text-size-adjust:100%}a{color:var(--teal)}.app-header{background:var(--teal);color:#fff;padding:env(safe-area-inset-top) 16px 0;position:sticky;top:0;z-index:10}.app-header .bar{display:flex;align-items:center;justify-content:space-between;height:56px;max-width:var(--maxw);margin:0 auto}.app-header .brand{font-weight:700;font-size:1.05rem;letter-spacing:.2px}.app-header .who{font-size:.85rem;opacity:.9;display:flex;gap:10px;align-items:center}.main{max-width:var(--maxw);margin:0 auto;padding:16px}button,.btn{font:inherit;cursor:pointer;min-height:44px;padding:10px 16px;border-radius:var(--radius);border:1px solid var(--teal);background:var(--teal);color:#fff}button.secondary,.btn.secondary{background:#fff;color:var(--teal)}button.ghost{background:transparent;color:#fff;border-color:#fff9}button.danger{background:var(--danger);border-color:var(--danger)}button:disabled{opacity:.5;cursor:not-allowed}label{display:block;font-size:.85rem;color:var(--muted);margin:10px 0 4px}input,select,textarea{font:inherit;width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius);background:#fff;color:var(--text)}input:focus,select:focus,textarea:focus{outline:2px solid var(--teal);outline-offset:1px}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:14px;margin-bottom:12px}.product-card{display:grid;grid-template-columns:64px 1fr auto;gap:12px;align-items:center}.product-card img{width:64px;height:64px;object-fit:cover;border-radius:8px;background:#eef1f3}.product-card .pname{font-weight:600}.product-card .psub{color:var(--muted);font-size:.85rem}.price{font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}.badge{display:inline-block;font-size:.72rem;padding:2px 8px;border-radius:999px}.badge.review{background:#fef3c7;color:#92400e}.badge.off{background:#fee2e2;color:#991b1b}.badge.on{background:#dcfce7;color:#166534}.row{display:flex;gap:12px;flex-wrap:wrap}.row>*{flex:1 1 100%}.stack>*+*{margin-top:12px}.spread{display:flex;align-items:center;justify-content:space-between;gap:12px}.muted{color:var(--muted)}.error{color:var(--danger);font-size:.9rem}.center{text-align:center}.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}.auth-wrap{min-height:70vh;display:flex;align-items:center;justify-content:center;padding:16px}.auth-card{width:100%;max-width:380px}.thumbs{display:flex;gap:10px;flex-wrap:wrap}.thumb{position:relative}.thumb img{width:84px;height:84px;object-fit:cover;border-radius:8px;border:1px solid var(--border)}.thumb button{position:absolute;top:-8px;right:-8px;min-height:28px;height:28px;width:28px;padding:0;border-radius:999px}@media (min-width: 680px){.row>.half{flex:1 1 calc(50% - 6px)}.product-card{grid-template-columns:72px 1fr auto auto}}@media (min-width: 900px){.main{padding:24px}}.spinner{text-align:center;color:var(--muted);padding:40px 0}
