.public-form-body{
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
    background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);
    color: #0f172a;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    padding: 3rem 1rem;
}
.public-form-card{
    max-width: 860px;
    margin: 0 auto;
    background: #ffffff;
    border-radius: 12px;
    box-shadow: 0 6px 20px rgba(2,6,23,0.06);
    padding: 28px;
    border: 1px solid #e6edf3;
}
.public-form-header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    margin-bottom:18px;
}
.public-form-title{
    font-size:1.375rem;
    font-weight:700;
    color:#0f172a;
    margin:0;
}
.public-form-sub{
    color:#475569;
    font-size:0.95rem;
}
.public-form-row{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    margin-bottom:12px;
}
.public-form-field{
    flex:1 1 320px;
    display:flex;
    flex-direction:column;
}
.public-form-field label{
    font-weight:600;
    color:#0f172a;
    margin-bottom:6px;
    font-size:0.95rem;
}
.public-form-field input[type="text"],
.public-form-field textarea,
.public-form-field select,
.public-form-field input[type="file"]{
    border:1px solid #e6edf3;
    background:#fbfdff;
    padding:10px 12px;
    border-radius:8px;
    font-size:0.95rem;
    color:#0f172a;
    outline:none;
}
.public-form-field textarea{ min-height:120px; resize:vertical; }
.public-form-actions{
    display:flex;
    gap:12px;
    justify-content:flex-end;
    margin-top:18px;
}
.btn-primary{
    background: linear-gradient(90deg,#0ea5a4,#06b6d4);
    color:#fff;
    padding:10px 16px;
    border-radius:10px;
    border:none;
    cursor:pointer;
    font-weight:700;
    box-shadow: 0 6px 18px rgba(6,95,70,0.08);
}
.btn-secondary{
    background:transparent;
    border:1px solid #c7d2fe;
    color:#3730a3;
    padding:10px 14px;
    border-radius:10px;
    cursor:pointer;
}
.field-required{ color:#dc2626; margin-left:6px; font-weight:700; }
.helper-text{ color:#64748b; font-size:0.85rem; margin-top:6px; }
.footer-note{ color:#94a3b8; font-size:0.9rem; margin-top:12px; text-align:center; }

