:root{
  font-family:"Inter","Segoe UI",Arial,sans-serif;
  color:#f4f6ff;
  background:
    radial-gradient(circle at 10% 10%, rgba(255, 138, 0, 0.2), transparent 45%),
    radial-gradient(circle at 85% 0%, rgba(80, 56, 255, 0.2), transparent 40%),
    #0b1020;
  --surface:#141a2e;
  --surface-soft:#1b2440;
  --line:#2b3557;
  --text-muted:#a9b4d6;
  --accent:#ff8a00;
  --accent-2:#6f62ff;
  --ok:#37d67a;
  --warn:#ff5f6d;
  --info:#6f62ff;
}

*{box-sizing:border-box}
body{margin:0;min-height:100vh}
.container{max-width:1040px;margin:0 auto;padding:1.2rem}

.hero,.card{
  background:linear-gradient(160deg, rgba(28,38,66,.94), rgba(20,27,49,.94));
  border:1px solid var(--line);
  border-radius:14px;
  padding:1.1rem;
  margin-bottom:1rem;
  box-shadow:0 14px 32px rgba(3,7,19,.34);
}

.hero{
  background:
    linear-gradient(165deg, rgba(255,138,0,.24), rgba(111,98,255,.12) 48%, rgba(15,20,35,.9)),
    linear-gradient(160deg, rgba(28,38,66,.94), rgba(20,27,49,.94));
}

.hero-logo{
  display:block;
  max-height:90px;
  width:auto;
  margin:0 0 .75rem;
}

h1,h2,h3{margin:.2rem 0 .8rem;color:#fff;letter-spacing:.2px}

a{color:#9bb3ff;text-underline-offset:2px}
a:hover{color:#d6e0ff}

label{display:block;margin:.6rem 0;color:#e9edff}
input,select,button,textarea{
  width:100%;
  padding:.72rem;
  border-radius:10px;
  border:1px solid #3a4469;
  background:#0f152b;
  color:#f3f6ff;
}

input::placeholder,textarea::placeholder{color:#8996be}
input:focus,select:focus,button:focus,textarea:focus{
  outline:none;
  border-color:var(--accent);
  box-shadow:0 0 0 3px rgba(255,138,0,.25);
}

button{
  background:linear-gradient(135deg,var(--accent),#ff6a00);
  color:#fff;
  border:0;
  font-weight:700;
  cursor:pointer;
  transition:transform .12s ease, box-shadow .12s ease, filter .12s ease;
}
button:hover{transform:translateY(-1px);filter:brightness(1.06);box-shadow:0 10px 18px rgba(255,138,0,.28)}
button:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}

.supplier-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.7rem}
.supplier-card{
  border:1px solid #39466d;
  border-radius:11px;
  padding:.75rem;
  background:linear-gradient(160deg,#111832,#161f3d);
  display:grid;
  gap:.45rem;
}

.notice{padding:.74rem;border-radius:9px;border:1px solid transparent}
.success{background:rgba(55,214,122,.12);border-color:rgba(55,214,122,.35)}
.error{background:rgba(255,95,109,.12);border-color:rgba(255,95,109,.34)}
.info{background:rgba(111,98,255,.12);border-color:rgba(111,98,255,.34)}

.muted{font-size:.9rem;color:var(--text-muted)}
.inline{display:grid;grid-template-columns:1fr auto;gap:.4rem}
.check{display:flex;align-items:center;gap:.6rem}
.check input{width:auto}
.danger{background:linear-gradient(135deg,#d61545,#9c0f2a)}

table{width:100%;border-collapse:collapse;background:#0f152b;border-radius:10px;overflow:hidden}
th,td{text-align:left;padding:.58rem;border-bottom:1px solid #2e395d}
th{color:#dbe4ff;background:#171f3b}
.leading{background:rgba(111,98,255,.2)}
.settings-time-table th[scope="row"]{background:#121a34}
.settings-time-table td{min-width:160px}
.settings-time-table input{margin:0}

@media (max-width:700px){
  th,td{font-size:.88rem;padding:.42rem}
  .container{padding:.65rem}
}


.dish-size{display:inline-block;padding:.2rem .5rem;border-radius:999px;background:rgba(255,138,0,.22);border:1px solid rgba(255,138,0,.55);color:#ffd9a1;font-size:.82rem;font-weight:600}

.admin-link-bottom{
  margin:1.2rem 0 0;
  display:flex;
  justify-content:center;
  align-items:flex-start;
  flex-wrap:wrap;
  gap:.6rem;
}
.admin-link-button{
  display:inline-block;
  padding:.72rem 1.1rem;
  border-radius:10px;
  border:1px solid #3a4469;
  background:#0f152b;
  color:#f3f6ff;
  text-decoration:none;
  font-weight:700;
}
.admin-link-button:hover{
  color:#fff;
  border-color:var(--accent);
  box-shadow:0 0 0 3px rgba(255,138,0,.25);
}
.privacy-card p{
  margin:0;
}

.admin-sections{display:flex;gap:.6rem;flex-wrap:wrap}
.admin-section-link{
  display:inline-block;
  padding:.5rem .8rem;
  border:1px solid #3a4469;
  border-radius:999px;
  text-decoration:none;
  color:#dbe4ff;
  background:#0f152b;
}
.admin-section-link.active{
  border-color:var(--accent);
  background:rgba(255,138,0,.22);
  color:#fff;
}
