.portal-sidebar { overflow-y:auto; }
.portal-logo { width:2.5rem;height:2.5rem;object-fit:contain;border-radius:.65rem;flex:none; }
.portal-brand-name { overflow-wrap:anywhere; }
.portal-card { padding:1.35rem;margin-bottom:1.2rem; }
.portal-card h2 { font-size:1.125rem;font-weight:650;margin-bottom:.45rem; }
.portal-card p + p { margin-top:.55rem; }
.portal-intro { margin-bottom:1.25rem; }
.portal-muted { color:#475467;font-size:.9rem;line-height:1.5; }
.dark .portal-muted { color:#b4bfd0; }
.portal-grid { display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(min(12rem,100%),1fr)); }
.portal-stat { font-weight:650;font-size:1.65rem;margin-top:.35rem; }
.portal-stat-icon { display:grid;place-items:center;width:2.75rem;height:2.75rem;background:#ecf3ff;color:#3641f5;border-radius:.7rem;margin-bottom:.85rem; }
.dark .portal-stat-icon { background:#161950;color:#9cb9ff; }
.portal-form { display:grid;gap:.8rem;grid-template-columns:repeat(auto-fit,minmax(min(13rem,100%),1fr));align-items:end;margin:1rem 0; }
.portal-form > div:last-child { min-width:0; }
.portal-field { display:grid;gap:.35rem;font-size:.875rem;font-weight:500; }
.portal-check { display:flex;align-items:center; }
.portal-textarea { min-height:5rem;padding-top:.5rem;resize:vertical; }
.portal-subheading { font-weight:650;margin-top:1.25rem; }
.portal-detail { border:1px solid #e4e7ec;border-radius:.75rem;padding:.65rem .85rem;margin:.7rem 0; }
.dark .portal-detail { border-color:#344054; }
.portal-detail summary { cursor:pointer;font-weight:550; }
.portal-code { font-size:.85rem;padding:.75rem;background:#f2f4f7;border-radius:.65rem;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;margin:.5rem 0 1rem; }
.dark .portal-code { background:#1d2939; }
.portal-table-wrap { overflow-x:auto;margin-top:1rem; }
.portal-table { width:100%;font-size:.875rem; }
.portal-table thead { background:#f2f4f7; }
.dark .portal-table thead { background:#1d2939; }
.portal-table td,.portal-table th { padding:.7rem .8rem; }
.portal-table tr + tr td { border-top:1px solid #e4e7ec; }
.dark .portal-table tr + tr td { border-color:#344054; }
.portal-table td small { white-space:nowrap; }
.portal-table .portal-form { display:block;margin:0; }
.portal-table .primary-btn { min-height:2rem;padding:.3rem .6rem; }
.portal-pagination { display:flex;gap:1rem;margin-top:1rem; }
.portal-message { white-space:pre-wrap;min-width:14rem;overflow-wrap:anywhere; }
.portal-qr { display:block;width:min(100%,17rem);border:1px solid #e4e7ec;border-radius:.75rem;margin:1rem 0; }
.portal-notice-text { white-space:pre-wrap;overflow-wrap:anywhere; }
.portal-notice-link { display:inline-block;margin-top:.85rem; }
.dark .swal2-popup { background:#101828;color:#f2f4f7; }
.dt-container .dt-search input,.dt-container .dt-length select { font:inherit; }
.portal-support { display:flex;flex-wrap:wrap;gap:.65rem;margin-top:.4rem; }
.portal-table .portal-detail { min-width:9rem; }
.portal-table .portal-detail[open] { min-width:14rem; }
.portal-table .portal-detail .portal-form { display:grid;margin-top:.65rem; }
.portal-target { max-width:38rem; }
.portal-target progress { width:100%;height:.8rem;accent-color:#465fff;display:block;margin:.65rem 0; }
.portal-api-form { margin-top:1rem; }
.portal-api-form .portal-textarea { min-height:8rem; }

.service-categories { margin: .4rem 0 1.35rem; }
.service-categories-header { display:flex; flex-wrap:wrap; align-items:end; justify-content:space-between; gap:.6rem 1rem; margin-bottom:.8rem; }
.service-categories-header h2 { font-size:1.25rem; font-weight:650; }
.service-category-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(min(10.5rem,100%),1fr)); gap:.8rem; }
.service-category-card { display:flex; flex-direction:column; align-items:center; text-align:center; gap:.45rem; padding:.9rem .65rem; color:inherit; text-decoration:none; transition:box-shadow .15s ease,border-color .15s ease; }
.service-category-card:hover,.service-category-card:focus-visible { border-color:#7a8aff; box-shadow:0 4px 14px #465fff22; }
.service-category-image { display:grid; place-items:center; height:4.35rem; width:6.75rem; padding:.35rem; border-radius:.7rem; background:#f5f7fd; }
.service-category-image img { display:block; width:100%; height:100%; max-height:3.65rem; object-fit:contain; }
.service-category-name { flex:1; font-weight:650; line-height:1.25; }
.service-category-action { color:#3447d4; font-size:.8rem; font-weight:600; }
.dark .service-category-image { background:#eaf0ff; }
.dark .service-category-action { color:#a7b8ff; }
.service-category-back { margin:.75rem 0; }
@media (max-width:460px) {
    .service-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:.55rem; }
    .service-category-name { font-size:.88rem; }
}
.portal-install-error { color:#a5282a;background:#fff0f0;border-radius:.6rem;padding:.7rem;margin:.65rem 0; }

.portal-install-layout { max-width:44rem;margin:0 auto; }
.portal-install-address { margin:.5rem 0 .85rem;overflow-wrap:anywhere; }

.portal-account-menu { position: relative; }
.portal-account-menu summary { display: flex; gap: .65rem; align-items: center; cursor: pointer; list-style: none; }
.portal-account-menu summary::-webkit-details-marker { display: none; }
.portal-account-menu .portal-logo { width: 36px; height: 36px; object-fit: contain; }
.portal-account-links { position: absolute; right: 0; top: calc(100% + .65rem); min-width: 11rem; display: grid; gap: .75rem; padding: 1rem; box-shadow: 0 10px 25px #10182822; }
.portal-profile-overview { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem; }
#change-password { scroll-margin-top: 6rem; }

.portal-document-preview { max-width: min(100%, 42rem); height: auto; margin: 1rem 0; }

.portal-service-tabs { display:flex; justify-content:space-between; gap:1rem; margin:1rem 0; }
.portal-service-tabs a { padding:.8rem 1.25rem; border:1px solid #98a2b3; border-radius:.65rem; }
.portal-provider-row { display:grid; gap:.75rem; grid-template-columns:repeat(2,minmax(0,1fr)); }
.portal-api-key { display:grid; gap:.35rem; align-content:start; }
.portal-api-key-status { display:flex; gap:.5rem; align-items:center; }
.portal-api-key-editor summary { cursor:pointer; font-weight:600; }
.portal-api-key-editor[open] summary { margin-bottom:.55rem; }
.portal-user-actions { display:flex; flex-wrap:wrap; gap:1rem; }
.portal-user-actions a { display:inline-flex; align-items:center; gap:.25rem; white-space:nowrap; }
.portal-user-facts { display:grid; grid-template-columns:repeat(auto-fit,minmax(12rem,1fr)); gap:1rem; padding:1rem 0; }
.portal-user-facts dt, .portal-print dt { font-weight:600; }
.portal-print { margin:2rem auto; max-width:56rem; padding:1.25rem; }
.portal-print h1 { font-size:1.5rem; font-weight:700; }
.portal-print dd { margin-bottom:.75rem; overflow-wrap:anywhere; }
@media(max-width:640px) { .portal-provider-row { grid-template-columns:1fr; } }
@media print { .portal-print button,.portal-print a { display:none; } }

.portal-service-workspace { margin-top:1.5rem; padding:1rem; scroll-margin-top:5.5rem; }
.portal-service-workspace .portal-card { margin-bottom:0; }
.portal-service-heading,.portal-print-actions { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:.75rem; }
.portal-service-heading h2 { font-weight:700; font-size:1.25rem; }
.portal-service-heading p { display:flex; align-items:center; gap:.75rem; }
.service-category-card[aria-current="true"],.portal-service-tabs a[aria-current="page"] { border-color:#6172f3; box-shadow:0 0 0 1px #6172f3; }
@media print { .portal-print-actions { display:none; } }

.service-catalog-heading { border-inline-start:3px solid #f6a516; padding-inline-start:.65rem; font-size:1.15rem; font-weight:700; margin:1.15rem 0 .8rem; }
.service-catalog-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; }
.service-tile { display:flex; flex-direction:column; min-width:0; overflow:hidden; border-radius:1rem; }
.service-tile:hover,.service-tile-selected { border-color:#668eb8; box-shadow:0 5px 15px #123b631c; }
.service-tile-art { position:relative; display:grid; place-items:center; min-height:7rem; padding:1.35rem .75rem 1rem; background:#f3f6fa; }
.service-tile-number,.service-mode-badge { position:absolute; top:.65rem; display:inline-flex; align-items:center; justify-content:center; color:#fff; font-weight:700; }
.service-tile-number { left:.65rem; background:#0d3557; border-radius:50%; min-width:1.6rem; height:1.6rem; font-size:.75rem; box-shadow:0 2px 6px #0d355749; }
.service-mode-badge { right:.65rem; gap:.15rem; padding:.24rem .55rem; border-radius:999px; background:#b84032; font-size:.68rem; text-transform:uppercase; letter-spacing:.03em; }
.service-mode-manual { background:#1c5178; }
.service-mode-badge svg { width:.8rem; height:.8rem; }
.service-tile-logo { display:grid; place-items:center; width:4.65rem; height:4rem; padding:.35rem; border-radius:1.15rem; background:#fff; box-shadow:0 6px 20px #304a841e; }
.service-tile-logo img { width:100%; height:100%; object-fit:contain; }
.service-tile-content { flex:1; display:flex; flex-direction:column; gap:.35rem; padding:.9rem; }
.service-tile-content h3 { display:flex; align-items:flex-start; gap:.35rem; font-size:1rem; line-height:1.25; font-weight:700; }
.service-tile-content h3 svg { flex:none; width:1rem; height:1rem; color:#af6200; }
.service-tile-content .portal-muted { font-size:.82rem; }
.service-tile-fee { margin-top:auto; padding-top:.25rem; font-size:.82rem; font-weight:650; }
.service-tile-actions { display:grid; grid-template-columns:1fr 1fr; gap:.45rem; margin-top:.35rem; }
.service-action { display:inline-flex; align-items:center; justify-content:center; gap:.3rem; padding:.55rem .65rem; min-height:2.45rem; border:1px solid transparent; border-radius:.55rem; font-size:.85rem; font-weight:650; text-decoration:none; }
.service-action svg { width:1rem; height:1rem; flex:none; }
.service-action-primary { background:#103c64; color:#fff; }
.service-action-primary:hover,.service-action-primary:focus-visible { background:#195483; }
.service-action-secondary { background:#f3f6fa; border-color:#dae3ef; color:#254c72; }
.service-action-secondary:hover,.service-action-secondary:focus-visible { border-color:#668eb8; }
.portal-service-workspace { padding:1.1rem 0 0; }
.portal-service-tabs .service-action { min-width:7rem; }
.service-workspace-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.15rem; }
.service-workspace-grid .portal-card { border-top:3px solid #123f67; min-width:0; container-type:inline-size; }

.service-workspace-grid .portal-form .primary-btn { width:100%; background:#103c64; }
.service-fee-note { padding:.75rem; border-left:3px solid #d38311; border-radius:.5rem; background:#fdf2df; color:#57350c; font-size:.88rem; margin:.75rem 0; }
.service-result-placeholder,.service-result-content { border-radius:.75rem; margin-top:.75rem; padding:1rem; background:#f3f6fa; overflow-wrap:anywhere; }
.service-result-placeholder { display:grid; place-items:center; align-content:center; gap:.65rem; min-height:13rem; text-align:center; border:1px dashed #d5deeb; }
.service-result-placeholder svg { width:2.75rem; height:2.75rem; color:#657f9d; }
.service-result-data { margin:.5rem 0; }
.service-result-data div { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.5fr); gap:.55rem; padding:.4rem 0; }
.service-result-data dt { font-weight:650; }
.dark .service-tile-art,.dark .service-result-placeholder,.dark .service-result-content { background:#18283a; }
.dark .service-action-secondary { background:#203449; border-color:#415a74; color:#dbeafa; }
.dark .service-fee-note { background:#352a19; color:#ffe3b5; }
.dark .service-tile-content h3 svg { color:#ffc173; }
@media(max-width:1250px) { .service-catalog-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:900px) { .service-catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:680px) { .service-workspace-grid { grid-template-columns:1fr; } }
@media(max-width:440px) { .service-catalog-grid { grid-template-columns:1fr; } }
.provider-balance-card { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:.75rem; padding:1rem 1.25rem; margin-bottom:1rem; border-inline-start:3px solid #1c5178; }
.provider-balance-card [data-provider-balance] { font-weight:650; overflow-wrap:anywhere; }
.portal-table th:first-child,.portal-serial { white-space:nowrap; }
.portal-page-disabled { color:#68778a; }
.dark .portal-page-disabled { color:#a0acba; }
.service-variant:not([hidden]) { display:grid; gap:.65rem; min-width:0; }
.service-result-data dd { min-width:0; overflow-wrap:anywhere; }
.service-result-data details .service-result-data div { display:block; }
.service-admin-name { display:flex; align-items:center; gap:.65rem; }
.service-admin-name img { object-fit:contain; flex:none; }
.service-document-images { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(13rem,100%),1fr)); gap:.75rem; margin:.75rem 0; }
.service-document-images figure { margin:0; min-width:0; }
.service-document-images img { display:block; max-width:100%; height:auto; margin-bottom:.35rem; }
.service-pdf-workspace { padding:1rem 1.2rem; margin:1rem 0; border-radius:.8rem; }
.service-pdf-workspace h2 { font-size:1.05rem; font-weight:700; }
.service-pdf-wide { grid-column:1/-1; }
.service-pdf-actions { display:flex; flex-wrap:wrap; gap:.65rem; align-items:center; }
.service-pdf-workspace .service-pdf-actions .primary-btn { width:auto; }
.service-pdf-error { color:#b42318; padding:.7rem .8rem; border:1px solid #fda29b; border-radius:.55rem; }
.dark .service-pdf-error { color:#fecdca; }
@media print { .service-pdf-workspace form,.service-pdf-workspace .service-action,.service-document-images a { display:none; } }
.service-copy-text { min-height:12rem; }
.service-copy-all { margin-inline-start:.5rem; }
.service-pdf-unavailable p { margin:.5rem 0 .8rem; }
.portal-print-back,.portal-print-actions .primary-btn,.service-pdf-actions .service-action,.service-pdf-actions .primary-btn { min-height:2.85rem; padding:.65rem 1rem; font-size:.92rem; }
.service-pdf-frame { display:block; width:100%; height:min(76vh,850px); min-height:390px; margin-top:1rem; border:1px solid #dbe4ee; border-radius:.65rem; background:#eef2f7; }
@media print { .service-copy-all,.service-pdf-unavailable,.service-pdf-frame { display:none; } }

.portal-kyc-dialog {
    width: min(92vw, 32rem);
    max-height: 90vh;
    margin: auto;
    padding: 1.5rem;
    border-radius: 1rem;
    overflow: auto;
}
.portal-kyc-dialog::backdrop { background: rgb(15 23 42 / 70%); }
.portal-kyc-dialog h2 { font-size: 1.35rem; font-weight: 700; }
.portal-kyc-dialog p, .portal-kyc-dialog form, .portal-kyc-dialog details { margin-top: .75rem; }

.pan-saved-images { display: flex; flex-wrap: wrap; gap: 1rem; margin-top: 1rem; }
.pan-saved-images img { max-width: 220px; max-height: 160px; object-fit: contain; }
@media print { .pan-upload-form { display: none !important; } }

.portal-kyc-swal { width: min(92vw, 34rem); border-radius: 1rem; padding: 1.25rem; }
.portal-kyc-swal-body { margin: 0 !important; text-align: start !important; }
.portal-kyc-content { text-align: start; }
.portal-kyc-content h2 { font-size: 1.4rem; font-weight: 700; margin-top: .5rem; }
.portal-kyc-content form, .portal-kyc-content details { margin-top: .85rem; }
.portal-kyc-step { color: #1d4ed8; font-size: .76rem; font-weight: 700; letter-spacing: .05em; }
.dark .portal-kyc-swal { background: #182234; color: #f8fafc; }
.dark .portal-kyc-step { color: #93c5fd; }

.fingerprint-print { max-width:64rem; margin:.5rem auto; padding:.85rem; }
.fingerprint-print dd { margin-bottom:.25rem; }
.fingerprint-pdf { margin:.6rem 0; padding:.8rem; }
.fingerprint-pdf .portal-form { gap:.4rem; }
.fingerprint-pdf-controls,.fingerprint-language-head,.fingerprint-language-row {
    display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.4rem .75rem; align-items:center;
}
.fingerprint-pdf-controls { grid-template-columns:repeat(2,minmax(0,1fr)) auto; margin-bottom:.4rem; }
.fingerprint-pdf-controls button { align-self:end; }
.fingerprint-language-head { margin-top:.4rem; }
.fingerprint-language-row { padding:.2rem 0; border-bottom:1px solid #dbe4ee; }
.fingerprint-language-row span { display:block; overflow-wrap:anywhere; font-size:.9rem; }
.fingerprint-language-row .portal-field { font-size:.8rem; gap:.15rem; }
.fingerprint-language-row .form-input { min-height:2.25rem; padding:.25rem .45rem; }
.fingerprint-pdf .service-pdf-frame { height:clamp(19rem,55vh,40rem); min-height:0; margin-top:.5rem; }
.fingerprint-pdf [data-document-output]:not(:empty) { margin-top:.5rem; }
@media (max-width:38rem) {
    .fingerprint-pdf-controls { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .fingerprint-pdf-controls button { grid-column:1/-1; justify-self:start; }
}

.pan-print-sheet {
    --pan-art-width:206.12%; --pan-art-height:106.04%; --pan-art-top:-3.02%;
    --pan-front-left:-1.93%; --pan-back-left:-104.35%;
    --pan-name-top:60.9%; --pan-guardian-top:74.3%; --pan-dob-top:90.6%;
    display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.4rem;
    width:100%; max-width:46rem; margin:1rem auto;
}
.pan-print-uti {
    --pan-art-width:220.69%; --pan-art-height:106.34%; --pan-art-top:-4.68%;
    --pan-front-left:-3.45%; --pan-back-left:-117.76%;
    --pan-name-top:60.4%; --pan-guardian-top:73.2%; --pan-dob-top:90.2%;
}
.pan-print-card {
    container-type:inline-size; position:relative; overflow:hidden; min-width:0;
    aspect-ratio:1.586; border-radius:.45rem; background:#b9dce8; color:#08172a;
}
.pan-print-background {
    position:absolute; top:var(--pan-art-top); left:var(--pan-front-left);
    width:var(--pan-art-width); height:var(--pan-art-height); max-width:none;
    pointer-events:none;
}
.pan-print-back .pan-print-background { left:var(--pan-back-left); }
.pan-print-body figure,.pan-print-fields { margin:0; }
.pan-print-body figure,.pan-print-number,.pan-print-fields>div { position:absolute; }
.pan-print-photo { top:25%; left:3.5%; width:19%; aspect-ratio:1; overflow:hidden; background:#fff; }
.pan-print-photo img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
.pan-print-placeholder { display:grid; height:100%; place-items:center; font-size:.5rem; font-size:2.2cqw; }
.pan-print-number { top:39.5%; left:27%; width:39%; text-align:center; line-height:1.1; }
.pan-print-number strong { font-size:.86rem; font-size:3.85cqw; }
.pan-print-number span,.pan-print-fields dt {
    position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap;
}
.pan-print-fields>div { left:4.35%; width:61%; }
.pan-print-field-name { top:var(--pan-name-top); }
.pan-print-field-guardian { top:var(--pan-guardian-top); }
.pan-print-fields>.pan-print-field-dob { top:var(--pan-dob-top); width:29%; }
.pan-print-fields dd {
    margin:0; overflow-wrap:anywhere;
    font-size:.58rem; font-size:2.85cqw; font-weight:700; line-height:1.1;
}
/* Keep wrapped names within the artwork's field rows. */
.pan-print-field-long dd { font-size:.48rem; font-size:2.25cqw; }
.pan-print-number strong,.pan-print-field-dob dd { font-variant-numeric:tabular-nums; }
.pan-print-qr {
    top:26.3%; left:66.2%; width:30.5%; aspect-ratio:1; background:#fff;
    text-align:center; line-height:1; font-size:.46rem; font-size:2cqw;
}
.pan-print-qr canvas { display:block; width:100%; height:100%; image-rendering:pixelated; }
.pan-print-qr canvas[hidden] { display:block; visibility:hidden; }
.pan-print-qr-status {
    position:absolute; inset:0; place-content:center; padding:.3em;
    color:#08172a; font-weight:650; overflow-wrap:anywhere;
}
.pan-print-qr-status:not([hidden]) { display:grid; }
.pan-print-signature { top:82%; left:29.5%; width:27%; height:9.5%; text-align:center; }
.pan-print-uti .pan-print-signature { top:84%; left:36%; width:28%; height:9%; }
.pan-print-signature img { display:block; width:100%; height:100%; object-fit:contain; }
.pan-print-signature figcaption {
    position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%);
}
@media screen and (max-width:40rem) {
    .pan-print-sheet { grid-template-columns:minmax(0,1fr); max-width:24rem; }
}
@page pan-card-print { size:A4 portrait; margin:10mm 12mm; }
@media print {
    .pan-print-sheet,.pan-print-card { break-inside:avoid; print-color-adjust:exact; }
    .pan-print-page { page:pan-card-print; margin:0; padding:0; max-width:none; }
    .pan-print-page> :not(.pan-print-sheet) { display:none !important; }
    .pan-print-sheet { grid-template-columns:repeat(2,85.6mm); width:173.2mm; max-width:100%; gap:2mm; margin:0 auto; }
}
@media (min-width:48rem) {
    .fingerprint-print [data-copy-details]>dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:.8rem; }
}

.service-catalog-search { max-width:26rem; margin:.6rem 0 1rem; }
.service-tile[hidden] { display:none; }

.portal-policy-links { margin-top:.45rem; }
.portal-policy-footer { margin-top:1.25rem; font-size:.85rem; }
.portal-policy-page { max-width:52rem; margin:0 auto; padding:1rem; }
.portal-policy-header { display:flex; flex-wrap:wrap; justify-content:space-between; gap:.75rem; margin-bottom:1rem; align-items:center; }
.portal-policy-content h1 { font-size:1.8rem; font-weight:700; }
.portal-policy-content section { margin-top:1rem; }
.portal-policy-content section h2 { font-weight:650; }
.portal-policy-content p { line-height:1.6; }
.portal-policy-address { white-space:pre-line; }

.service-workspace-grid.service-workspace-wide { grid-template-columns:minmax(0,1fr); }
.aadhaar-manual-grid,.aadhaar-manual-column { display:grid; gap:.65rem; grid-template-columns:repeat(2,minmax(0,1fr)); }
.aadhaar-manual-column { min-width:0; margin:0; padding:.8rem; border:1px solid #dce5ef; border-radius:.65rem; align-content:start; }
.dark .aadhaar-manual-column { border-color:#34465a; }
.aadhaar-manual-column legend { padding:0 .3rem; font-weight:650; }
.aadhaar-manual-column .portal-textarea { min-height:4rem; }
.aadhaar-manual-translate { display:flex; gap:.6rem; align-items:center; flex-wrap:wrap; }
@media (max-width:860px) { .aadhaar-manual-grid { grid-template-columns:minmax(0,1fr); } }
@media (max-width:475px) { .aadhaar-manual-column { grid-template-columns:minmax(0,1fr); } }

.auth-cover { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.auth-background-preview { width:7rem; height:5rem; object-fit:cover; border-radius:.35rem; }

.portal-notice-html { text-align:start; overflow-wrap:anywhere; }
.portal-notice-html :is(p,ul,ol,blockquote,pre,table) { margin:.65rem 0; }
.portal-notice-html :is(h2,h3,h4) { margin:.7rem 0 .35rem; font-weight:700; }
.portal-notice-html :is(ul,ol) { padding-inline-start:1.35rem; }
.portal-notice-html ul { list-style:disc; }
.portal-notice-html ol { list-style:decimal; }
.portal-notice-html a { color:#315dc9; text-decoration:underline; }
.dark .portal-notice-html a { color:#91adff; }
.portal-notice-html table { display:block; max-width:100%; overflow:auto; border-collapse:collapse; }
.portal-notice-html :is(th,td) { padding:.35rem .5rem; border:1px solid #acb7c7; }
.portal-notice-html :is(blockquote,pre) { padding:.35rem .65rem; border-inline-start:3px solid #acb7c7; }
.portal-notice-html pre { white-space:pre-wrap; }


.service-catalog-disclosure { margin:.65rem 0; }
.service-catalog-disclosure summary { cursor:pointer; color:#315dc9; font-weight:600; }
.dark .service-catalog-disclosure summary { color:#91adff; }
.portal-service-workspace { margin-top:.65rem; padding-top:.35rem; }
.portal-service-workspace .portal-card { padding:1rem; }
.portal-service-tabs { margin:.55rem 0 .75rem; }
.portal-service-tabs a { min-height:2.4rem; padding:.45rem .85rem; }
.service-workspace-grid { gap:.85rem; align-items:start; }
.service-workspace-grid .portal-card > .portal-form { gap:.6rem; margin:.65rem 0 .25rem; }
.service-workspace-grid .portal-card > .portal-form > :is(
    .service-variant, [data-aadhaar-capture], .service-pdf-wide,
    label:has(input[type="checkbox"]), label:has(textarea), div:has(>button[type="submit"])
) { grid-column:1/-1; }
@container (min-width:22rem) {
    .service-workspace-grid .portal-card > .portal-form,
    .service-workspace-grid .portal-card > .portal-form > .service-variant:not([hidden]) {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@container (max-width:21.99rem) {
    .service-workspace-grid .portal-card > .portal-form { grid-template-columns:minmax(0,1fr); }
}
.service-workspace-grid .portal-card > .portal-form .portal-textarea { min-height:4rem; }
.service-workspace-grid .service-fee-note { padding:.55rem .65rem; margin:.45rem 0; }
.service-workspace-grid .service-result-placeholder { min-height:8rem; gap:.4rem; padding:.75rem; }
.service-workspace-list .portal-table-wrap { margin-top:.6rem; }
.service-workspace-list .portal-table :is(th,td) { padding:.45rem .6rem; }
.service-workspace-list .portal-pagination { margin-top:.55rem; }
.service-print-page { margin:.65rem auto; padding:.85rem; }
.service-print-page .service-result-data > div,.service-result-content .service-result-data > div { padding:.23rem 0; }
.service-print-page .service-result-data dd { margin:0; }
.service-print-page .service-pdf-workspace { margin:.65rem 0; padding:.75rem .9rem; }
.service-print-page .service-pdf-workspace .portal-form { margin:.55rem 0; gap:.6rem; }
.service-print-page .service-application-photo { max-height:8rem; width:auto; margin:.5rem 0; }
@media screen and (min-width:860px) {
    .service-print-page [data-copy-details] > .service-result-data {
        display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:1rem;
    }
    .service-print-page [data-copy-details] > .service-result-data > div:has(details) { grid-column:1/-1; }
}
@media print {
    .service-print-page { margin:0; padding:0; }
    .service-print-page .service-result-data > div { break-inside:avoid; }
}
.captcha-refresh-form { margin:.4rem 0; }
.captcha-refresh-form:not(:has(>button)) { margin:0; }
.service-captcha { display:grid; gap:.4rem; }
.service-captcha-image { display:flex; align-items:center; gap:.5rem; }
.service-captcha-image img { max-width:min(100%,12rem); height:auto; }
.service-captcha-image button { min-height:2.3rem; padding:.4rem .55rem; }
.service-captcha [role="status"]:empty { display:none; }


.aadhaar-manual-print { max-width:70rem; }
.aadhaar-manual-print > h1 { margin-top:.75rem; }
.aadhaar-manual-print-controls .portal-form { display:grid; grid-template-columns:minmax(0,1fr); gap:.9rem; margin-top:.65rem; }
.aadhaar-manual-print-controls .portal-field { max-width:50rem; }
#aadhaar-pdf-preview { scroll-margin-top:1rem; }

.voter-review-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; margin:.85rem 0 0; }
.voter-review-column { display:grid; align-content:start; min-width:0; gap:.65rem; padding:.8rem; border:1px solid #dbe4ee; border-radius:.65rem; }
.voter-review-column legend { padding:0 .35rem; font-weight:700; }
.voter-review-column textarea { width:100%; resize:vertical; }
.dark .voter-review-column { border-color:#35465e; }
@media (max-width:40rem) { .voter-review-columns { grid-template-columns:minmax(0,1fr); } }

.portal-release-dialog { width:min(34rem,calc(100% - 2rem)); margin:auto; padding:1.5rem; }
.portal-release-dialog::backdrop { background:#111827a6; }
.portal-release-dialog h2 { font-size:1.25rem; font-weight:700; }
.portal-release-dialog p { white-space:pre-wrap; overflow-wrap:anywhere; max-height:45vh; overflow:auto; margin:.8rem 0 1.2rem; }
.portal-release-dialog form { display:flex; gap:.6rem; flex-wrap:wrap; }

.portal-release-dialog .portal-field { flex-basis:100%; }
