/* Minimal clean, neutral styling (no brand assets) */
:root {
  --fg:#111; --muted:#666; --bg:#fafafa; --card:#fff; --accent:#1a73e8;
  --ok:#0a7d33; --warn:#a35b00; --err:#b00020; --border:#e5e7eb;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--fg);font:16px/1.4 system-ui,Segoe UI,Roboto,Arial,sans-serif}
a{color:var(--accent)}
h1,h2,h3{line-height:1.2}
.sr{position:absolute;left:-9999px}
.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-link:focus{left:1rem;top:1rem;width:auto;height:auto;background:#000;color:#fff;padding:.5rem 1rem;border-radius:.5rem}
.nav{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#fff;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:10}
.brand{font-weight:700}
.auth-box form{display:flex;gap:.5rem;align-items:center}
input,button,select{font:inherit;padding:.5rem .6rem;border:1px solid var(--border);border-radius:.6rem;background:#fff}
button{cursor:pointer}
button[disabled]{opacity:.6;cursor:not-allowed}
.stack{display:flex;flex-direction:column;gap:.5rem;margin:1rem 0}
.hstack{display:flex;gap:.5rem;align-items:center}
.gap{gap:.75rem}
.section{padding:1rem}
.card-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem}
.card-grid>li>article{background:var(--card);border:1px solid var(--border);border-radius:1rem;padding:1rem;display:flex;flex-direction:column;gap:.25rem}
.muted{color:var(--muted)}
.table{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--border)}
.table th,.table td{border-bottom:1px solid var(--border);padding:.5rem .75rem;text-align:left}
footer{padding:1rem;color:var(--muted)}
.cart{position:fixed;right:1rem;bottom:1rem;width:320px;background:#fff;border:1px solid var(--border);border-radius:1rem;padding:1rem;box-shadow:0 10px 20px rgba(0,0,0,.08)}
.cart .row{display:flex;justify-content:space-between;padding:.25rem 0}
.cart .total{font-weight:700;border-top:1px solid var(--border);margin-top:.5rem;padding-top:.5rem}
.cart-list{max-height:220px;overflow:auto;border:1px dashed var(--border);border-radius:.5rem;padding:.5rem;margin:.5rem 0}
.banner{position:fixed;left:1rem;bottom:1rem;padding:.6rem 1rem;border-radius:.6rem;background:#fff;border:1px solid var(--border);box-shadow:0 8px 16px rgba(0,0,0,.08)}
.status{min-height:1.25rem;margin-top:.5rem}
.tabs{display:flex;gap:.5rem;border-bottom:1px solid var(--border);padding:0 1rem}
.tab{background:#fff;border:1px solid var(--border);border-bottom:none;border-radius:.6rem .6rem 0 0;padding:.5rem .75rem}
.tab.active{background:#f5f7ff;border-color:#c9d6ff}
.center{max-width:720px;margin:3rem auto;padding:1rem;background:#fff;border:1px solid var(--border);border-radius:1rem}
.help{font-size:.875rem;color:var(--muted);margin-top:.25rem}
.badge{display:inline-block;padding:.1rem .5rem;border:1px solid var(--border);border-radius:.6rem;font-size:.75rem}
.action-row{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.5rem}
