/* Katsjiengville Restaurant Simulation — theme
   Purple/magenta brand (#be2be2/#c065ed) + appetite-warm accents (tomato, mustard). */
:root{
  --purple:#8e24aa; --purple-deep:#5e1470; --magenta:#be2be2; --magenta-soft:#c065ed;
  --tomato:#e8543f; --mustard:#e6a817; --cream:#fff8f0; --ink:#2d1b33;
  --ok:#2e9e5b; --card:#ffffff; --line:#eadcf2;
}
*{box-sizing:border-box}
body{margin:0;font-family:'Segoe UI',system-ui,-apple-system,sans-serif;background:
  linear-gradient(160deg,#faf3ff 0%,var(--cream) 60%);color:var(--ink);min-height:100vh}
.wrap{max-width:1060px;margin:0 auto;padding:24px 16px}
header.app{background:linear-gradient(135deg,var(--purple-deep),var(--magenta));color:#fff;
  padding:18px 16px;box-shadow:0 4px 18px rgba(94,20,112,.25)}
header.app .wrap{display:flex;align-items:center;justify-content:space-between;padding:0 16px}
header.app h1{font-size:1.15rem;margin:0;letter-spacing:.3px}
header.app .pin{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.35);
  padding:6px 12px;border-radius:999px;font-weight:600}
.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:22px;
  box-shadow:0 6px 24px rgba(94,20,112,.08);margin-bottom:18px}
.card h2{margin:0 0 6px;color:var(--purple-deep)}
.card h3{margin:18px 0 8px;color:var(--purple)}
.muted{color:#7a6a84;font-size:.92rem}
label{display:block;font-weight:600;margin:12px 0 4px}
input[type=text],input[type=email],input[type=password],input[type=number],select{
  width:100%;padding:11px 12px;border:2px solid var(--line);border-radius:10px;font-size:1rem;
  background:#fff;transition:border-color .15s}
input:focus,select:focus{outline:none;border-color:var(--magenta-soft)}
.btn{display:inline-block;border:0;border-radius:12px;padding:12px 22px;font-size:1rem;font-weight:700;
  cursor:pointer;transition:transform .08s,box-shadow .15s;text-decoration:none;text-align:center}
.btn:active{transform:scale(.98)}
.btn-primary{background:linear-gradient(135deg,var(--magenta),var(--purple));color:#fff;
  box-shadow:0 4px 14px rgba(190,43,226,.35)}
.btn-warm{background:linear-gradient(135deg,var(--tomato),var(--mustard));color:#fff;
  box-shadow:0 4px 14px rgba(232,84,63,.3)}
.btn-ghost{background:#fff;border:2px solid var(--magenta-soft);color:var(--purple-deep)}
.btn[disabled]{opacity:.45;cursor:not-allowed}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
@media(max-width:760px){.grid2,.grid3{grid-template-columns:1fr}}
.badge{display:inline-block;padding:4px 10px;border-radius:999px;font-size:.8rem;font-weight:700}
.badge-open{background:#ffe9d6;color:#a34d00}
.badge-sold{background:#e2f6e9;color:#166b38}
.badge-pending{background:#f0e6f6;color:#6b4d80}
.lot{border:2px solid var(--line);border-radius:14px;padding:16px;text-align:center;background:#fff}
.lot.current{border-color:var(--mustard);box-shadow:0 0 0 4px #f6e7bd}
.lot .price{font-size:1.5rem;font-weight:800;color:var(--purple-deep);margin:8px 0}
.bidlog{max-height:220px;overflow:auto;border:1px solid var(--line);border-radius:10px;padding:8px 12px;background:#fdfaff}
.bidlog div{padding:5px 0;border-bottom:1px dashed var(--line);font-size:.92rem}
.error{background:#fdeaea;color:#8f1d1d;border:1px solid #f3c1c1;border-radius:10px;padding:10px 14px;margin:10px 0;display:none}
.notice{background:#eef8f0;color:#14532d;border:1px solid #bfe3c7;border-radius:10px;padding:10px 14px;margin:10px 0}
footer.credit{text-align:center;padding:24px;color:#9a86a6;font-size:.85rem}
footer.credit a{color:var(--purple);text-decoration:none;font-weight:600}
.teamchip{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--line);
  border-radius:10px;background:#fff;margin-bottom:8px}
.teamchip .dot{width:10px;height:10px;border-radius:50%;background:var(--magenta-soft)}
.teamchip.owner .dot{background:var(--ok)}
h1.brand{color:var(--purple-deep);text-align:center;margin:8px 0 2px;font-size:1.7rem}
p.tag{color:var(--tomato);text-align:center;font-weight:700;margin:0 0 22px;letter-spacing:.4px}
