.form-page { min-height: 75vh; padding: 54px 0 72px; background: var(--canvas); }
[hidden] { display: none !important; }
.narrow { max-width: 840px; }
.page-heading { margin-bottom: 28px; }
.page-heading .dark { color: var(--brand); }
.page-heading h1 { max-width: 700px; margin: 8px 0 10px; color: var(--ink); font-size: clamp(2rem,5vw,3rem); }
.page-heading p { margin: 0; color: var(--muted); font-size: 1.05rem; }
.data-form { display: grid; gap: 18px; }
.form-section { padding: 26px; background: #fff; border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow); }
.form-section h2 { margin: 0 0 20px; font-size: 1.2rem; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.form-grid label { color: #3f524d; font-size: .82rem; font-weight: 750; }
.form-grid .full { grid-column: 1 / -1; }
.form-grid input,.form-grid select,.form-grid textarea { margin-top: 7px; }
.form-grid textarea { width: 100%; padding: 12px 13px; resize: vertical; color: var(--ink); background: #f8fbfa; border: 1px solid #cfdedb; border-radius: 10px; font: inherit; outline: 0; }
.form-grid textarea:focus { border-color: var(--brand); box-shadow: 0 0 0 3px rgba(8,127,109,.14); }
.consent { display: flex; gap: 10px; align-items: start; color: var(--muted); font-size: .87rem; }
.consent input { width: 18px; height: 18px; flex: 0 0 auto; }
.primary-wide { min-height: 52px; padding: 12px 22px; color: #fff; background: var(--brand); border: 0; border-radius: 10px; font-weight: 850; cursor: pointer; }
.primary-wide:disabled { opacity: .65; cursor: wait; }
.form-status { margin: 0; padding: 0; }
.form-status.success,.form-status.error { padding: 14px; border-radius: 10px; }
.form-status.success { color: #075e54; background: #dff5ef; }
.form-status.error { color: #8a2525; background: #fde8e8; }
.honeypot { position: absolute; left: -9999px; }
.admin-toolbar { display:flex; gap:10px; margin-bottom:18px; }
.admin-toolbar input { flex: 1; }
.admin-list { display:grid; gap:14px; }
.admin-card { padding:20px; background:#fff; border:1px solid var(--line); border-radius:14px; }
.admin-card h3 { margin:0 0 4px; }.admin-card p { margin:4px 0; color:var(--muted); }.admin-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }
.admin-actions button { padding:8px 12px; border:0; border-radius:8px; font-weight:750; cursor:pointer; }.approve{color:#fff;background:var(--brand)}.reject{color:#8a2525;background:#fde8e8}.delete{color:#fff;background:#842626}.edit{color:var(--brand-dark);background:var(--brand-soft)}
.panel-actions,.admin-filters,.dialog-actions,.dialog-head{display:flex;gap:10px;align-items:center;justify-content:space-between}.panel-actions{margin-bottom:18px}.panel-actions .primary-wide{width:auto}.admin-filters{margin:18px 0}.admin-filters input{flex:1}.admin-filters select{max-width:240px}dialog{width:min(760px,calc(100% - 24px));max-height:90vh;padding:0;color:var(--ink);background:#fff;border:0;border-radius:16px;box-shadow:0 24px 80px rgba(0,0,0,.35)}dialog::backdrop{background:rgba(5,25,22,.72)}.dialog-form{padding:24px;overflow:auto}.dialog-head{margin-bottom:20px}.dialog-head h2{margin:0}.dialog-head button{color:var(--muted);background:transparent;border:0;font-size:2rem;cursor:pointer}.dialog-actions{justify-content:flex-end;margin-top:20px}.dialog-actions button{height:44px}
.detail-card { padding:30px; background:#fff; border:1px solid var(--line); border-radius:var(--radius); box-shadow:var(--shadow); }.detail-card h1 { color:var(--ink); font-size:clamp(1.8rem,5vw,2.8rem); }.detail-description { white-space:pre-wrap; }.apply-box { margin-top:25px; padding:20px; background:var(--brand-soft); border-radius:12px; }
@media(max-width:620px){.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.form-section{padding:18px}.admin-toolbar,.admin-filters{flex-direction:column}.admin-filters select{max-width:none}.panel-actions{align-items:stretch;flex-direction:column}}
