
/* September 2026: readable type, focused languages and family-service details. */
:root { --ink:#111111; --muted:#333333; }
body { color:#111; font-size:18px; font-weight:600; }
:where(p,li,dt,dd,label,input,select,textarea) { color:inherit; }
.hero-lead,.section-heading p,.page-hero p { color:#252525; font-size:19px; font-weight:600; }
.field > span,.field > label,.field label { color:#111; font-size:16px; font-weight:800; }
.field input,.field select,.field textarea,.admin-form-grid input,.admin-form-grid select,.admin-form-grid textarea { color:#111; font-size:18px; font-weight:700; line-height:1.6; min-height:50px; }
.field input::placeholder,.field textarea::placeholder { color:#4b4b4b; opacity:1; font-weight:600; }
.field small,.admin-readonly-grid dt { color:#333; font-size:14px; font-weight:650; }
.admin-readonly-grid dd,.detail-panel dd,.profile-summary-grid strong { color:#111; font-size:18px; font-weight:800; }
.detail-panel dt,.profile-summary-grid span { color:#252525; font-size:15px; font-weight:750; }
.admin-panel h2 { color:#111; font-size:22px; }
.admin-panel p,.admin-check small,.admin-answer-list dt,.admin-answer-list dd { font-size:15px; color:#222; }
.admin-form-grid,.admin-editor-main,.admin-editor-side { min-width:0; }
.site-footer { color:#111; background:linear-gradient(125deg,#eef3fb,#f5f0f7); border-top:1px solid #d8deea; }
.site-footer :is(p,a,small,h3,h4,strong,li,.footer-brand-copy,.footer-bottom) { color:#111; }
.site-footer p,.site-footer a { font-size:16px; font-weight:700; }
.site-footer h3,.site-footer h4 { font-size:21px; font-weight:850; }
.language-buttons.site-language-picker { display:inline-flex; flex-wrap:wrap; justify-content:center; gap:5px; padding:5px; border:1px solid #ccd6e6; border-radius:14px; background:#fff; direction:ltr; height:auto; }
.language-buttons button { border:0; border-radius:10px; background:transparent; color:#111; min-height:42px; padding:8px 15px; font:800 15px/1.6 var(--latin); cursor:pointer; transition:background .15s; }
.language-buttons button:is([lang="ur"],[lang="ps"],[lang="skr"],[lang="sd"]) { font-family:var(--nastaleeq); min-width:64px; line-height:1.7; }
.language-buttons button[aria-pressed="true"] { background:#113f79; color:#fff; box-shadow:0 4px 12px #16487d22; }
.language-buttons button:focus-visible,.copy-account:focus-visible { outline:3px solid #ebaa3b; outline-offset:3px; }
.language-callout.hero-language-panel { display:block; padding:24px; margin:26px 0; max-width:570px; border:2px solid #153e73; border-radius:22px; background:#fff; box-shadow:0 12px 32px #123c7110; }
.language-callout-heading { display:flex; align-items:center; gap:17px; }
.language-mark { display:flex; align-items:center; font:900 29px var(--latin); color:#153e73; }
.language-mark > span { font-family:var(--nastaleeq); color:#bb255b; margin-inline-start:5px; font-size:37px; }
.hero-language-panel .language-callout-heading strong { color:#080808; font:900 clamp(22px,2.1vw,28px)/1.3 var(--latin); display:block; }
.hero-language-panel .language-callout-heading div > span { display:block; font:800 23px/1.9 var(--nastaleeq); color:#111; margin:6px 0 0; }
.language-callout p { margin:12px 0; font:700 15px/1.6 var(--latin); color:#242424; }
.language-callout .language-buttons { display:flex; width:100%; border:0; padding:0; gap:12px; background:transparent; }
.language-callout .language-buttons button { flex:1 1 110px; border:1px solid #a9bad0; min-height:55px; font-size:19px; background:#edf3fa; color:#111; }
.language-callout .language-buttons button[aria-pressed="true"] { background:#113f79; color:#fff; border-color:#113f79; }
.profile-network-section { background:#fff; padding-block:65px; }
.profile-network-section .section-heading-row { align-items:end; gap:40px; margin-bottom:30px; }
.profile-network-section .section-heading-row > p { max-width:420px; font-size:18px; color:#303030; }
.network-stat-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.network-stat { padding:27px 25px 23px; border:1px solid #d7e1ef; border-radius:23px; background:#f3f7fe; position:relative; overflow:hidden; min-width:0; }
.network-stat-top { display:flex; align-items:center; justify-content:space-between; gap:10px; font-size:16px; font-weight:850; color:#111; }
.network-stat-top i { display:grid; place-items:center; width:39px; height:39px; border-radius:12px; background:#fff; color:#174a85; font-style:normal; font-size:24px; }
.network-stat > strong { display:block; margin:18px 0 7px; font:900 clamp(36px,4vw,54px)/1 var(--latin); color:#111; letter-spacing:-2px; }
.network-stat p { color:#303030; font-size:14px; font-weight:650; margin:14px 0 0; line-height:1.6; }
.network-stat-total { background:#123e73; border-color:#123e73; }
.network-stat-total :is(.network-stat-top,strong,p) { color:#fff; }
.network-stat-active { background:#eff8f2; border-color:#cbe7d5; }
.network-stat-active i { color:#116b42; }
.network-stat-progress { background:#fffaee; border-color:#efe0b8; }
.network-stat-progress i { color:#8e5910; }
.network-stat-inactive { background:#f8f0f5; border-color:#ead3e1; }
.network-stat-inactive i { color:#9b2855; }
.network-note { margin:16px 0 0; font-size:15px; color:#333; }
.payment-section { background:linear-gradient(135deg,#f0f7f4,#f3f5fc 55%,#fff8ed); }
.payment-section h2 { color:#111; }
.payment-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; max-width:1020px; margin:36px auto 0; }
.payment-card { background:#fff; border:1px solid #dce5e2; border-radius:26px; overflow:hidden; box-shadow:0 16px 44px #172e4310; padding:30px; border-top:5px solid #16804d; min-width:0; }
.payment-jazzcash { border-top-color:#bc2132; }
.payment-card-heading { display:flex; align-items:center; gap:15px; }
.wallet-mark { display:grid; place-items:center; width:60px; height:60px; border-radius:18px; background:#e6f6eb; color:#126d41; font:900 38px/1 var(--latin); }
.payment-jazzcash .wallet-mark { background:#fff0d6; color:#b41f2e; }
.payment-card-heading div > span,.payment-account > span,.payment-card-bottom div > span { display:block; color:#333; font-size:14px; font-weight:750; }
.payment-card-heading h3 { margin:2px 0 0; font-size:26px; font-weight:900; color:#111; }
.payment-arrow { margin-inline-start:auto; color:#444; font-size:28px; }
.payment-account { margin:25px 0; padding:22px 0; border-block:1px solid #e2e7eb; }
.payment-account strong { display:block; margin-top:6px; font:900 clamp(24px,3vw,34px)/1.4 var(--latin); color:#111; letter-spacing:1px; white-space:nowrap; }
.payment-card-bottom { display:flex; gap:14px; align-items:center; justify-content:space-between; flex-wrap:wrap; }
.payment-card-bottom strong { display:block; margin-top:4px; font-size:20px; font-weight:850; color:#111; }
.copy-account { background:#f1f5f7; color:#111; border:1px solid #d5dfe5; border-radius:12px; padding:12px 16px; font:800 14px var(--sans); cursor:pointer; }
.payment-help { max-width:1020px; margin:25px auto 0; display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
.payment-help-icon { display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:#e0eee5;color:#145e35; }
.payment-help p { flex:1;min-width:240px;font-size:15px;line-height:1.7;color:#252525; }
.payment-help .button { font-size:15px; }
.profile-photo-widget + .profile-photo-widget { border-top:2px solid #dce5ee; padding-top:25px; margin-top:28px; }
.photo-slot-heading { display:flex; align-items:center; justify-content:space-between; margin-bottom:12px; }
.photo-slot-heading strong { font-size:20px; font-weight:850; color:#111; }
.photo-slot-heading span { font-size:13px; color:#303030; background:#eff3f8; border-radius:8px; padding:5px 8px; }
.photo-strength-field { display:block; padding:15px 0; }
.photo-strength-field > span { display:flex; justify-content:space-between; font-size:15px; font-weight:800; color:#111; }
.photo-strength-field input[type="range"] { display:block; width:100%; min-height:36px; accent-color:#174b85; padding:0; border:0; }
.photo-strength-field small { display:block; font-size:12px; color:#333; }
.photo-sticker-tools { padding:15px; margin:10px 0; background:#f2f6fb; border:1px solid #d9e3ef; border-radius:13px; }
.photo-sticker-tools strong { display:block; color:#111; font-size:15px; }
.photo-sticker-palette { display:flex; gap:8px; flex-wrap:wrap; margin:10px 0; }
.photo-sticker-palette button { width:45px; height:45px; display:grid; place-items:center; background:#fff; border:1px solid #ccd8e6; border-radius:10px; cursor:pointer; }
.photo-sticker-palette img { width:33px; height:33px; }
.photo-sticker-tools p { font-size:13px; line-height:1.7; margin:8px 0; color:#252525; }
.photo-sticker-actions { display:flex; flex-wrap:wrap; gap:6px; }
.photo-editor-canvas { touch-action:none; max-width:100%; }
.photo-privacy-modes { display:grid; grid-template-columns:1fr; }
.photo-privacy-modes label { min-width:0; }
.photo-privacy-modes strong { font-size:14px; }
.photo-privacy-modes small { font-size:12px; }
.photo-editor-heading small,.photo-selection-status,.admin-photo-upload-note { font-size:13px; line-height:1.7; }
.profile-photo-gallery { position:relative; width:100%; }
.profile-photo-gallery figure { margin:0; }
.profile-photo-gallery figure[hidden] { display:none; }
.profile-photo-gallery img { display:block; width:100%; aspect-ratio:3/4; object-fit:cover; }
.profile-photo-gallery figcaption { padding:9px 12px; background:#fff; color:#111; font-size:14px; font-weight:800; }
.photo-gallery-controls { display:flex; gap:8px; background:#fff; padding:12px; }
.photo-gallery-controls button { flex:1; border:1px solid #c9d7e5; border-radius:9px; padding:9px; background:#f1f5fa; color:#111; font:800 14px var(--sans); cursor:pointer; }
.photo-gallery-controls button[aria-pressed="true"] { background:#133e75; color:#fff; }
html[data-language="ur"] body { font-size:19px; font-weight:700; }
html[data-language="ur"] :is(.field input,.field select,.field textarea,.desktop-nav a,.button) { font-size:18px !important; font-weight:750; line-height:1.95 !important; }
html[data-language="ur"] :is(.hero-lead,.section-heading p,.page-hero p,.site-footer p,.site-footer a) { font-size:19px !important; font-weight:750; line-height:2.2 !important; }
html[data-language="ur"] .site-footer h4 { font-size:24px !important; font-weight:800; }
html[data-language="ur"] .network-stat-top { font-size:18px; }
html[data-language="ur"] .network-stat p { font-size:16px; }
html[data-language="ur"] .payment-account strong,html[data-language="ur"] .network-stat > strong { font-family:var(--latin) !important; }
@media(max-width:1050px) { .network-stat-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .site-header .language-buttons button { padding:7px 10px; } }
@media(max-width:680px) {
  .profile-network-section .section-heading-row { display:block; }
  .network-stat-grid { gap:12px; }.network-stat { padding:19px 15px; border-radius:18px; }
  .network-stat-top { font-size:14px; }.network-stat-top i { width:29px;height:29px;font-size:20px;flex-shrink:0; }
  .network-stat p { font-size:13px; }.payment-grid { grid-template-columns:1fr; }.payment-card { padding:23px; }
  .payment-help .button { width:100%; }.hero-language-panel.language-callout { padding:20px; }
  .language-callout .language-buttons { flex-direction:row; }.hero-language-panel .language-callout-heading strong { font-size:22px; }
  .detail-panel dd { max-width:58%; font-size:17px; }.detail-panel dt { font-size:15px; }
}

/* Compact mobile header, readable Urdu controls and footer addresses. */
.hero-language-panel .language-mark { flex:0 0 44px; font:900 30px/1.1 var(--latin); color:#153e73; display:flex; }
.hero-language-panel .language-mark > span { font:800 34px/1.3 var(--nastaleeq); color:#bb255b; margin:0 0 0 5px; }
.hero-language-panel .language-buttons button[lang="ur"] { font-size:24px; font-weight:800; }
.site-footer :is(address,address span,.footer-bottom span) { color:#222; font-size:16px; font-weight:700; }
@media(max-width:900px) { .header-actions > .language-buttons { display:none; } }
@media(max-width:680px) { .header-actions > .button-primary { display:none; } .header-actions { gap:12px; } }

/* Clip decorative halos at the viewport in both reading directions. */
html, body { overflow-x:clip; }

/* Two-photo galleries use normal document flow, unlike single-image cards. */
.profile-detail-visual.has-profile-photo { height:auto; display:block; }
.profile-detail-visual .profile-photo-gallery img { position:static; inset:auto; z-index:auto; width:100%; height:auto; aspect-ratio:3/4; filter:none; transform:none; }
.profile-photo-gallery .photo-gallery-controls { position:relative; z-index:4; }
.profile-detail-visual.has-profile-photo > .profile-id { top:14px; bottom:auto; pointer-events:none; }
.profile-detail-visual.has-profile-photo > .verified-badge { pointer-events:none; }
.photo-editor-canvas[hidden] { display:none !important; }
.admin-panel .field > span,.admin-panel .field > label { font-size:16px; color:#111; font-weight:800; }
.admin-panel .field input,.admin-panel .field select,.admin-panel .field textarea { font-size:17px; color:#111; font-weight:700; }
.profile-photo-widget .photo-privacy-modes label > span strong { font-size:15px; color:#111; }
.profile-photo-widget .photo-privacy-modes label > span small { font-size:13px; color:#333; }
.profile-photo-widget .photo-editor-heading small,.profile-photo-widget .photo-selection-status { font-size:14px; color:#303030; }
.photo-privacy-modes input:focus-visible + span { outline:3px solid #d79825; outline-offset:2px; }

/* Maintain dark readable text in both the blue and rose themes. */
html[data-theme] { --ink:#111; --muted:#333; }
html[data-theme] .site-footer { background:linear-gradient(125deg,#eef3fb,#f5f0f7); color:#111; }
html[data-theme] .site-footer :is(p,a,small,h3,h4,strong,li,address,span) { color:#111; }
html[data-theme] .site-footer .footer-contact-pills a { background:#fff; color:#111; border-color:#cbd6e2; }
html[data-theme] .site-footer .footer-bottom { border-color:#cbd6e2; }

.footer-privacy-banner { display:flex; align-items:center; gap:14px; margin-top:28px; margin-bottom:25px; padding:15px 20px; border:1px solid #d7dfeb; border-radius:14px; background:#ffffffaa; }
.footer-privacy-banner > span { font-size:24px; }
.site-footer .footer-privacy-banner p { margin:0; font-size:16px; font-weight:700; }
html[data-language="ur"] .site-footer .footer-privacy-banner p { font-size:17px !important; line-height:1.9 !important; }
.site-footer .footer-offices address strong { font-size:15px; font-weight:850; }
.site-footer a[href^="https://"] { font-family:var(--latin); }