:root{
  --bg:#0f1218;
  --card:#141922;
  --muted:#8b95a7;
  --text:#e8edf4;
  --accent:#1e88e5;
  --accent-2:#22c55e;
  --border:rgba(255,255,255,0.08);
  --shadow:0 10px 30px rgba(0,0,0,0.35);
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:"Kanit",system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";
  color:var(--text);
  background: radial-gradient(1200px 600px at 10% -10%, #1b2340 0%, transparent 60%), 
              radial-gradient(900px 500px at 110% 10%, #12324a 0%, transparent 60%),
              var(--bg);
}

/* Header */
.site-header{
  display:flex;align-items:center;justify-content:space-between;
  max-width:1200px;margin:24px auto 0;padding:0 16px 12px;border-bottom:1px solid var(--border)
}
.brand{display:flex;align-items:center;gap:12px}
.logo{font-size:28px}
.title h1{margin:0;font-size:22px}
.title p{margin:2px 0 0;color:var(--muted);font-size:14px}

.back-home-btn{
  display:inline-block;background:var(--accent);color:#fff;text-decoration:none;
  padding:10px 14px;border-radius:10px;font-weight:600;transition:.2s box-shadow, .2s transform
}
.back-home-btn:hover{box-shadow:0 10px 20px rgba(30,136,229,.35);transform:translateY(-1px)}

/* Layout */
.container{
  max-width:1200px;margin:20px auto;padding:16px;display:grid;grid-template-columns: 1.15fr .85fr;gap:16px
}
.panel{
  background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0) 40%), var(--card);
  border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);
  padding:18px
}
.panel-title{margin:0 0 12px;font-size:18px}
.subhead{margin:12px 0 10px 0;font-size:16px;color:#cfe0ff}

/* Fields */
.field{margin-bottom:14px}
.field label{display:block;margin-bottom:6px;font-weight:600}
.field input[type="text"],
.field input[type="email"],
.field input[type="file"],
.field textarea,
.field select{
  width:100%;background:#0e131b;color:var(--text);border:1px solid var(--border);
  border-radius:10px;padding:10px 12px;outline:none;font-size:15px
}
.field input[type="range"]{width:100%}
.hint{margin-top:6px;color:var(--muted);font-size:12px}
.checkbox{margin-left:8px;color:var(--muted);user-select:none}

/* Grid helpers */
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.row{display:flex;align-items:center}
.gap{gap:10px}
.spacer{flex:1}
.hidden{display:none}
.divider{border:0;border-top:1px solid var(--border);margin:14px 0}

/* Buttons */
.btn{
  --btn-bg:#243041;
  background:var(--btn-bg);color:#fff;border:1px solid var(--border);border-radius:12px;
  padding:10px 14px;font-weight:600;cursor:pointer;transition:.2s transform,.2s box-shadow
}
.btn:hover{transform:translateY(-1px)}
.btn.primary{--btn-bg:linear-gradient(135deg,#2b85ff,#6fa8ff)}
.btn.secondary{--btn-bg:#303a4a}
.btn.ghost{background:transparent;border:1px dashed var(--border);color:var(--muted)}
.btn.success{--btn-bg:linear-gradient(135deg,#22c55e,#52e28a)}
.btn.success-outline{background:transparent;border:1px solid #22c55e;color:#22c55e}

/* Sticky action row (keeps buttons visible on tall forms) */
.sticky-actions{
  position:sticky;bottom:0;background:linear-gradient(180deg, transparent, rgba(20,25,34,.85) 40%);
  padding-top:8px;border-top:1px solid var(--border)
}

/* Preview */
.preview .qr-wrap{
  display:flex;align-items:center;justify-content:center;
  min-height:360px;background:#0c1117;border:1px dashed var(--border);
  border-radius:16px
}
.tip{color:var(--muted);text-align:center;margin-top:12px}

/* Responsive */
@media (max-width: 980px){
  .container{grid-template-columns: 1fr}
  .sticky-actions{position:static;background:none;border:0}
}
