:root{
  --bg:#0f1115;
  --card:#0f1720;
  --muted:#9aa4b2;
  --accent:#7b61ff;
  --glass: rgba(255,255,255,0.03);
  --glass-2: rgba(255,255,255,0.02);
}
*{box-sizing:border-box}
body{
  background: linear-gradient(180deg,#07070a 0%, #0b0d11 100%);
  color:#e6eef8;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
  margin:0;
  -webkit-font-smoothing:antialiased;
}
.nav{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px 28px;
  background:transparent;
  border-bottom:1px solid rgba(255,255,255,0.03);
}
.brand{font-weight:700; font-size:20px; letter-spacing:0.6px}
.nav-links a{ color:var(--muted); margin-left:14px; text-decoration:none; font-size:14px }
.container{width:100%; margin:36px 0; padding:0 28px}
.hero{ text-align:center; padding:56px 18px; background:linear-gradient(90deg, rgba(123,97,255,0.08), rgba(0,0,0,0)); border-radius:12px; margin-bottom:18px}
.hero h1{ font-size:36px; margin:0 0 8px }
.hero p{ color:var(--muted); margin:0 0 18px }
.hero-ctas .btn{ margin-right:8px }

.card{
  background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));
  border-radius:12px;
  padding:18px;
  margin-bottom:18px;
  box-shadow: 0 6px 18px rgba(8,10,15,0.6);
  border:1px solid rgba(255,255,255,0.03);
}
.card h2{ margin:0 0 10px }
.card h3{ margin:0 0 8px; font-size:18px }

label{ display:block; margin:8px 0 4px; color:var(--muted); font-size:13px }
input, textarea, select{
  width:100%;
  padding:10px 12px;
  border-radius:8px;
  background:var(--glass);
  border:1px solid rgba(255,255,255,0.03);
  color: #e6eef8;
  font-size:14px;
}
textarea{font-family:inherit; resize:vertical}
.btn{
  display:inline-block;
  padding:10px 14px;
  border-radius:10px;
  background:linear-gradient(90deg,var(--accent), #5e9fff);
  border:none;
  color:white;
  text-decoration:none;
  cursor:pointer;
  font-weight:600;
}
.btn.ghost{ background:transparent; border:1px solid rgba(255,255,255,0.04); color:var(--muted) }
.btn.tiny{ padding:6px 8px; font-size:13px; border-radius:8px; }

.orders{ width:100%; border-collapse:collapse; margin-top:8px; }
.orders th, .orders td{ text-align:left; padding:8px 10px; border-bottom:1px dashed rgba(255,255,255,0.02); font-size:13px; color:var(--muted) }
.orders thead th{ color:var(--muted); font-weight:600; font-size:12px }

.flash-wrapper{ margin-bottom:12px }
.flash{ padding:10px 12px; border-radius:8px; margin-bottom:8px; }
.flash.success{ background:rgba(34,197,94,0.12); color:#bff0c9; }
.flash.danger{ background:rgba(255,77,77,0.08); color:#ffc1c1; }
.flash.warning{ background:rgba(255,165,0,0.07); color:#ffdca8; }
.flash.info{ background:rgba(96,165,250,0.06); color:#cfe6ff; }

.footer{ text-align:center; padding:18px; color:var(--muted); font-size:13px }
.content-wrap{
  display:flex;
  flex-direction:column;
  min-height: calc(100vh - 64px); /* leave room for nav/footer */
}

html, body {
  height: 100%;
}

body {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

.container {
  flex: 1; /* keep compatibility with existing layouts */
}

