:root{
  --bg:#f7f7fb;
  --card:#fff;
  --accent:#2b6cb0;
  --muted:#666;
}
*{box-sizing:border-box;font-family:Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif}
body{margin:0;background:linear-gradient(180deg,#f7f9fc 0%,#ffffff 100%);color:#0f1724}
.container{max-width:1000px;margin:36px auto;padding:20px}
h1{margin:8px 0 20px;font-weight:600;color:var(--accent);text-align:center}
form{background:var(--card);padding:22px;border-radius:12px;box-shadow:0 10px 30px rgba(18,38,63,0.08);border:1px solid rgba(43,108,176,0.06)}
/* Section cards */
section{margin-bottom:18px;padding:14px;border-radius:10px;background:linear-gradient(180deg,rgba(255,255,255,0.6),rgba(255,255,255,0.9));box-shadow:inset 0 1px 0 rgba(255,255,255,0.6)}
h2{font-size:0.98rem;margin:0 0 12px;color:#123a63}
/* Two column layout for wider screens */
section.two-col{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;align-items:start}
section.two-col > h2{grid-column:1/-1}
/* Make headings full width */
section > h2{grid-column:1/-1}
label{display:block;margin:6px 0;color:var(--muted);font-size:0.95rem}
label .label-text{display:block;margin-bottom:6px;color:#0b1220;font-weight:500}
input[type='text'],input[type='email'],input[type='tel'],input[type='number'],input[type='date'],select,textarea{width:100%;padding:10px;border:1px solid #e6eef8;border-radius:8px;background:#fbfdff;transition:box-shadow .15s ease,border-color .15s ease}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 4px 18px rgba(43,108,176,0.12)}
/* File inputs: custom style */
.file-row{display:flex;gap:10px;align-items:center}
.file-row input[type=file]{display:none}
.file-label{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;background:linear-gradient(90deg,#eef6ff,#f8fbff);border:1px dashed rgba(18,58,99,0.06);cursor:pointer;color:#123a63}
.file-name{font-size:0.9rem;color:var(--muted)}
.checkbox-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px}
.inline{display:inline-block;margin-right:10px}
.sizes label{display:inline-block;margin-right:8px}
footer{display:flex;justify-content:flex-end;margin-top:10px}
button{background:linear-gradient(90deg,#1e6fb8,#2b8dd8);color:#fff;padding:12px 18px;border:none;border-radius:10px;cursor:pointer;font-weight:600;box-shadow:0 8px 24px rgba(43,108,176,0.18)}
button:hover{transform:translateY(-1px)}
/* Responsive adjustments */
@media(max-width:900px){section.two-col{grid-template-columns:1fr}.container{padding:16px}}

