:root{
  --bg0:#0b0c10;
  --bg1:#101218;
  --card:rgba(18,20,28,.78);
  --card2:rgba(255,255,255,.92);
  --text:#e9ecf1;
  --muted:#aab2c0;
  --red:#e11d2e;
  --red2:#b10f1d;
  --line:rgba(255,255,255,.10);
  --shadow:0 18px 45px rgba(0,0,0,.55);
  --radius:18px;
  --radius2:14px;
  --font: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:var(--font);
  color:var(--text);
  background:
    radial-gradient(1200px 600px at 20% 10%, rgba(225,29,46,.20), transparent 60%),
    radial-gradient(900px 500px at 80% 0%, rgba(225,29,46,.12), transparent 60%),
    linear-gradient(180deg, var(--bg0), var(--bg1));
}
a{color:inherit}
.container{max-width:1120px;margin:0 auto;padding:22px}
.topbar{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 16px;border:1px solid var(--line);
  background:rgba(0,0,0,.20);backdrop-filter:blur(10px);
  border-radius:16px;box-shadow:var(--shadow);
}
.brand{display:flex;align-items:center;gap:12px}
.logoWrap{
  width:54px;height:54px;border-radius:999px;
  background:rgba(0,0,0,.35);display:grid;place-items:center;
  border:1px solid rgba(255,255,255,.12);
}
.logoWrap img{width:44px;height:44px;object-fit:contain}
.brandText{line-height:1.05}
.brandText .name{font-weight:800;letter-spacing:.2px}
.brandText .since{font-size:12px;color:var(--muted);margin-top:3px}
.badge{font-size:12px;color:#fff;background:rgba(225,29,46,.20);border:1px solid rgba(225,29,46,.35);
  padding:6px 10px;border-radius:999px
}

.card{
  margin-top:18px;
  background:var(--card);
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  overflow:hidden;
}
.cardHeader{padding:18px 18px 0 18px}
.cardHeader h1{margin:0;font-size:20px}
.cardHeader p{margin:8px 0 0 0;color:var(--muted);font-size:13px}

.grid2{display:grid;grid-template-columns:1.05fr .95fr;gap:18px;padding:18px}
@media(max-width:920px){.grid2{grid-template-columns:1fr}}
.panel{
  background:rgba(0,0,0,.22);
  border:1px solid var(--line);
  border-radius:var(--radius2);
  padding:16px;
}
.field{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}
label{font-size:12px;color:var(--muted)}
input,select,textarea{
  padding:12px 12px;border-radius:12px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(0,0,0,.25);
  color:var(--text);
  outline:none;
}
textarea{min-height:88px;resize:vertical}
.row{display:flex;gap:10px}
.row > *{flex:1}

.btn{
  display:inline-flex;align-items:center;justify-content:center;
  gap:8px;
  padding:12px 14px;border-radius:14px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.06);
  color:var(--text);
  cursor:pointer;
  font-weight:700;
}
.btn:disabled{opacity:.45;cursor:not-allowed}
.btnPrimary{
  background:linear-gradient(180deg, var(--red), var(--red2));
  border:1px solid rgba(255,255,255,.10);
}
.btnGhost{background:transparent}
.notice{
  margin-top:12px;
  padding:12px 12px;
  border-radius:14px;
  border:1px solid rgba(225,29,46,.35);
  background:rgba(225,29,46,.10);
  color:#ffd6d9;
  font-size:13px;
}
.small{font-size:12px;color:var(--muted)}
.kbd{font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size:12px;padding:2px 7px;border-radius:10px;border:1px solid rgba(255,255,255,.14);background:rgba(0,0,0,.25);
}

/* Menu tablet layout */
.menuShell{padding:18px}
.menuGrid{display:grid;grid-template-columns:280px 1fr 320px;gap:16px}
@media(max-width:1100px){.menuGrid{grid-template-columns:1fr}}
.listBtn{
  width:100%;text-align:left;
  padding:11px 12px;border-radius:12px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(0,0,0,.18);
  color:var(--text);
  cursor:pointer;
  margin-bottom:10px;
}
.listBtn.active{
  border-color:rgba(225,29,46,.55);
  background:rgba(225,29,46,.12);
}
.itemsGrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:920px){.itemsGrid{grid-template-columns:1fr}}
.itemCard{
  background:rgba(0,0,0,.18);
  border:1px solid rgba(255,255,255,.12);
  border-radius:14px;
  padding:12px;
}
.itemTop{display:flex;justify-content:space-between;gap:10px}
.itemName{font-weight:800}
.itemPrice{font-weight:900}
.itemDesc{margin-top:6px;color:var(--muted);font-size:13px;line-height:1.25}
.pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:6px 10px;font-size:12px;
  border:1px solid rgba(255,255,255,.12);background:rgba(0,0,0,.18);color:var(--muted)
}
