.arptc-ipd-wrap {
    --arptc-blue: #164d7d;
    --arptc-light: #eef4f9;
    --arptc-border: #c6d1dc;
    --arptc-text: #17202a;
    max-width: 1080px;
    margin: 24px auto;
    color: var(--arptc-text);
    font-family: Arial, Helvetica, sans-serif;
}
.arptc-ipd-wrap * { box-sizing: border-box; }
.arptc-ipd-header { display:flex; align-items:center; gap:18px; padding:20px; margin-bottom:18px; border:1px solid var(--arptc-border); border-top:6px solid var(--arptc-blue); background:#fff; }
.arptc-ipd-header h2 { margin:0 0 6px; font-size:24px; line-height:1.25; }
.arptc-ipd-header p { margin:0; color:#52606d; }
.arptc-ipd-brand { min-width:94px; padding:17px 12px; border-radius:8px; background:var(--arptc-blue); color:#fff; text-align:center; font-size:22px; font-weight:700; letter-spacing:1px; }
.arptc-ipd-alert { padding:13px 16px; margin:0 0 16px; border-left:5px solid; background:#fff; }
.arptc-ipd-success { border-color:#168247; background:#edf9f2; }
.arptc-ipd-error { border-color:#b42318; background:#fff1f0; }
.arptc-ipd-form { display:grid; gap:18px; }
.arptc-ipd-section { padding:20px; border:1px solid var(--arptc-border); border-radius:4px; background:#fff; }
.arptc-ipd-section h3 { margin:-20px -20px 20px; padding:11px 16px; background:var(--arptc-blue); color:#fff; font-size:18px; text-transform:uppercase; }
.arptc-ipd-section h4 { margin:22px 0 12px; padding:8px 10px; border-left:4px solid var(--arptc-blue); background:var(--arptc-light); font-size:16px; }
.arptc-ipd-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 18px; }
.arptc-ipd-field { display:flex; flex-direction:column; gap:7px; margin-bottom:14px; font-weight:600; }
.arptc-ipd-field-full { width:100%; }
.arptc-ipd-field input, .arptc-ipd-field textarea, .arptc-ipd-document-row input[type="file"] { width:100%; padding:10px 11px; border:1px solid #aebdca; border-radius:4px; background:#fff; color:#17202a; font:inherit; }
.arptc-ipd-field textarea { min-height:96px; resize:vertical; }
.arptc-ipd-required { color:#b42318; }
.arptc-ipd-label { display:block; margin:10px 0 8px; font-weight:700; }
.arptc-ipd-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px 14px; margin:8px 0 16px; }
.arptc-ipd-options-3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
.arptc-ipd-option { display:flex; align-items:flex-start; gap:8px; padding:9px 10px; border:1px solid #d5dee7; border-radius:4px; background:#fafcfe; font-weight:500; }
.arptc-ipd-option input { margin-top:3px; }
.arptc-ipd-yesno { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:18px; align-items:center; padding:12px 0; border-bottom:1px solid #e1e7ed; }
.arptc-ipd-yesno > div { display:flex; gap:18px; white-space:nowrap; }
.arptc-ipd-yesno label { font-weight:600; }
.arptc-ipd-help { margin:0 0 14px; padding:12px; background:#fff8e5; border-left:4px solid #d59a00; }
.arptc-ipd-documents { display:grid; gap:12px; }
.arptc-ipd-document-row { padding:13px; border:1px solid #d6e0e8; border-radius:5px; background:#f8fbfd; }
.arptc-ipd-document-row label { display:grid; grid-template-columns:minmax(260px,1fr) minmax(260px,1fr); gap:16px; align-items:center; }
.arptc-ipd-document-row input[type="file"] { padding:8px; font-weight:400; }
.arptc-ipd-certify { display:flex; gap:10px; align-items:flex-start; padding:14px; margin-top:10px; border:1px solid #b8cad9; background:var(--arptc-light); font-weight:600; }
.arptc-ipd-certify input { margin-top:4px; }
.arptc-ipd-actions { text-align:center; }
.arptc-ipd-actions button { min-width:260px; padding:14px 24px; border:0; border-radius:5px; background:var(--arptc-blue); color:#fff; font-size:16px; font-weight:700; cursor:pointer; }
.arptc-ipd-actions button:hover { filter:brightness(.92); }
@media (max-width:800px) {
    .arptc-ipd-header { align-items:flex-start; }
    .arptc-ipd-grid, .arptc-ipd-options, .arptc-ipd-options-3 { grid-template-columns:1fr; }
    .arptc-ipd-document-row label { grid-template-columns:1fr; }
    .arptc-ipd-yesno { grid-template-columns:1fr; }
}
@media (max-width:520px) {
    .arptc-ipd-header { flex-direction:column; }
    .arptc-ipd-section { padding:15px; }
    .arptc-ipd-section h3 { margin:-15px -15px 16px; }
    .arptc-ipd-actions button { width:100%; min-width:0; }
}
