:root{--ink:#0b1220;--ink2:#172235;--muted:#6b778c;--line:#e5e9f0;--bg:#f4f7fb;--white:#fff;--blue:#2563eb;--blue2:#1d4ed8;--green:#059669;--danger:#dc2626;--shadow:0 18px 55px rgba(15,23,42,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink);min-height:100vh;overflow-x:hidden}button,input,select,textarea{font:inherit}.ambient{position:fixed;pointer-events:none;z-index:-1;border-radius:50%;filter:blur(70px);opacity:.35}.ambient-a{width:320px;height:320px;background:#dbeafe;top:-100px;right:-90px}.ambient-b{width:280px;height:280px;background:#e0e7ff;bottom:-100px;left:-90px}.app-shell{width:min(780px,100%);margin:auto;padding:18px 18px 30px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{display:flex;align-items:center;gap:10px}.brand-mark{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:var(--ink);color:#fff;font-weight:950;box-shadow:0 8px 22px rgba(11,18,32,.18)}.brand strong{display:block;font-size:13px;letter-spacing:.08em}.brand small{display:block;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.13em;margin-top:1px}.secure-pill{display:flex;align-items:center;gap:6px;padding:8px 11px;border:1px solid #dbe3ef;border-radius:999px;background:rgba(255,255,255,.8);color:#536176;font-size:10px;font-weight:850}.secure-pill i{width:7px;height:7px;border-radius:50%;background:#10b981;box-shadow:0 0 0 4px #d1fae5}.hero{padding:40px 4px 25px}.eyebrow,.section-kicker,.modal-kicker{font-size:10px;font-weight:950;letter-spacing:.16em;color:#64748b}.hero h1{font-size:42px;line-height:1.02;letter-spacing:-.045em;margin:9px 0 12px}.hero h1 span{background:linear-gradient(90deg,#1d4ed8,#0f766e);-webkit-background-clip:text;background-clip:text;color:transparent}.hero p{max-width:620px;margin:0;color:var(--muted);font-size:14px;line-height:1.65}.steps{display:grid;grid-template-columns:1fr 36px 1fr 36px 1fr;align-items:center;margin:0 0 14px;padding:0 3px}.step{display:flex;align-items:center;gap:7px;color:#9aa5b5;font-size:10px;font-weight:850}.step span{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:#e8edf4;color:#7a8799;font-size:11px;transition:.3s}.step.active,.step.done{color:var(--ink)}.step.active span,.step.done span{background:var(--ink);color:#fff;box-shadow:0 6px 18px rgba(11,18,32,.2)}.step.done span{background:#059669}.step-line{height:1px;background:#dce3ed}.card{background:rgba(255,255,255,.96);border:1px solid rgba(221,228,238,.95);border-radius:26px;box-shadow:var(--shadow);backdrop-filter:blur(10px)}.main-card{padding:22px}.card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:17px}.card-heading h2{margin:4px 0 4px;font-size:21px;letter-spacing:-.02em}.card-heading p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.ai-status{display:flex;align-items:center;gap:6px;padding:8px 10px;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-size:10px;font-weight:900;white-space:nowrap}.pulse-dot{width:7px;height:7px;border-radius:50%;background:#2563eb;box-shadow:0 0 0 0 rgba(37,99,235,.4);animation:pulse 1.6s infinite}.ai-status.working{background:#fff7ed;color:#c2410c}.ai-status.working .pulse-dot{background:#f59e0b}.ai-status.success{background:#ecfdf5;color:#047857}.ai-status.success .pulse-dot{background:#10b981}.ai-status.warning{background:#fff7ed;color:#a16207}.camera-frame{height:310px;border-radius:20px;overflow:hidden;position:relative;background:#0c1422;border:1px solid #1c2a3d;display:flex;align-items:center;justify-content:center}.camera-frame:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 45%,rgba(37,99,235,.12),transparent 58%);pointer-events:none}.camera-frame #ktpPreview{width:100%;height:100%;object-fit:contain;display:none;background:#0c1422}.camera-frame.active #ktpPreview{display:block}.scan-overlay{position:absolute;inset:0;display:grid;place-items:center;color:#fff;text-align:center}.empty-camera{display:grid;justify-items:center;gap:6px;padding:20px}.camera-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:18px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);font-size:26px;margin-bottom:4px}.empty-camera b{font-size:13px}.empty-camera small{color:#aeb8c8;font-size:10px}.scan-overlay.hidden{display:none}.camera-guide{position:absolute;inset:14% 6%;border:1px solid rgba(255,255,255,.22);border-radius:14px;pointer-events:none}.camera-guide span{position:absolute;width:24px;height:24px;border-color:#fff;border-style:solid}.camera-guide span:nth-child(1){left:-1px;top:-1px;border-width:3px 0 0 3px;border-radius:9px 0 0 0}.camera-guide span:nth-child(2){right:-1px;top:-1px;border-width:3px 3px 0 0;border-radius:0 9px 0 0}.camera-guide span:nth-child(3){left:-1px;bottom:-1px;border-width:0 0 3px 3px;border-radius:0 0 0 9px}.camera-guide span:nth-child(4){right:-1px;bottom:-1px;border-width:0 3px 3px 0;border-radius:0 0 9px 0}.scan-badge{position:absolute;top:12px;left:12px;padding:6px 9px;border-radius:999px;background:rgba(5,12,25,.62);border:1px solid rgba(255,255,255,.16);color:#e8eef8;font-size:9px;font-weight:900;letter-spacing:.1em}.scanner-line{position:absolute;left:8%;right:8%;height:2px;top:12%;display:none;background:linear-gradient(90deg,transparent,#38bdf8,#fff,#38bdf8,transparent);box-shadow:0 0 18px rgba(56,189,248,.9)}.scanner-line.running{display:block;animation:scan 1.7s ease-in-out infinite}@keyframes scan{0%{top:12%}50%{top:88%}100%{top:12%}}.scan-actions{display:grid;grid-template-columns:1fr 110px;gap:10px;margin-top:12px}.scan-actions input{display:none}.button{border:0;border-radius:14px;min-height:48px;padding:13px 16px;display:flex;align-items:center;justify-content:center;gap:8px;text-align:center;font-weight:900;font-size:12px;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease;user-select:none}.button:hover{transform:translateY(-1px)}.button:active{transform:translateY(1px) scale(.99)}.button.primary{background:linear-gradient(135deg,#111827,#1f2937);color:#fff;box-shadow:0 10px 25px rgba(11,18,32,.16)}.button.primary:hover{box-shadow:0 13px 30px rgba(11,18,32,.22)}.button.light{background:#edf2f7;color:#263245}.btn-icon{font-size:15px}.ai-note{display:flex;gap:10px;align-items:center;padding:12px 13px;margin-top:12px;border-radius:15px;background:#f8fbff;border:1px solid #e2ecfa}.sparkle{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:#e0edff;color:#2563eb}.ai-note b{display:block;font-size:11px}.ai-note small{display:block;margin-top:2px;color:var(--muted);font-size:10px}.data-section{margin-top:27px;padding-top:22px;border-top:1px solid var(--line)}.section-title{display:flex;align-items:end;justify-content:space-between;gap:10px;margin-bottom:15px}.section-title h3{margin:4px 0 0;font-size:17px}.edit-note{font-size:10px;color:#8a95a7}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}label{display:block;color:#243146;font-size:11px;font-weight:850;margin-bottom:13px}input,select,textarea{width:100%;margin-top:6px;border:1px solid #d9e0ea;border-radius:12px;padding:12px 13px;background:#fff;color:var(--ink);font-size:13px;transition:.2s;outline:none}input:focus,select:focus,textarea:focus{border-color:#7aa2ee;box-shadow:0 0 0 4px rgba(37,99,235,.08)}textarea{resize:vertical;min-height:65px}.full{grid-column:1/-1}.consent-row{display:flex;gap:9px;align-items:flex-start;margin:5px 0 14px}.consent-row input{width:17px;height:17px;margin:0;accent-color:#111827;flex:0 0 auto}.consent-row label{margin:1px 0 0;color:#657186;font-size:10px;font-weight:650;line-height:1.45}.continue-btn{width:100%;background:linear-gradient(135deg,#0b1220,#1b2b45);color:#fff}.continue-btn:disabled{opacity:.4;cursor:not-allowed;filter:grayscale(.3);transform:none}.footer{text-align:center;color:#8a95a7;font-size:9px;margin:18px 0}body.modal-open{overflow:hidden;overscroll-behavior:none}
/* 1.7.2 agreement flow: each modal is a true layer; the active modal is always on top. */
.modal{isolation:isolate!important;}
.modal.show{display:flex!important;visibility:visible!important;opacity:1!important;}
.modal.show .modal-backdrop{position:absolute!important;inset:0!important;z-index:0!important;}
.modal.show .modal-card{position:relative!important;z-index:2!important;}
.agreement-card{z-index:10002!important;}

.modal-open .modal{overscroll-behavior:contain}
.modal-card.center{text-align:center}.modal-close{position:absolute;right:13px;top:9px;width:36px;height:36px;border:0;background:#f1f5f9;border-radius:50%;font-size:24px;color:#64748b;cursor:pointer}.modal-icon{font-size:42px;margin-bottom:4px}.modal-icon.blue{color:#2563eb}.modal-card h2{margin:6px 0 8px;font-size:23px;letter-spacing:-.025em}.modal-card p{color:#68758a;line-height:1.55;font-size:12px}.modal-label{display:block;text-align:left;margin-top:18px}.modal-error{min-height:20px;color:#dc2626;font-size:11px;margin:6px 0}.modal-button{width:100%;margin-top:8px}.modal-footnote{display:block;margin-top:13px;color:#8994a5;font-size:9px}.security-card{padding:30px 24px}.security-icon{width:74px;height:74px;border-radius:24px;display:grid;place-items:center;margin:0 auto 13px;background:#fff7ed;font-size:37px;animation:float 2.3s ease-in-out infinite}.security-card p{margin-bottom:21px}.loading-card{padding:34px 25px}.loader-orbit{position:relative;width:64px;height:64px;margin:0 auto 16px}.loader-orbit:before,.loader-orbit:after,.loader-orbit i{content:"";position:absolute;border-radius:50%;inset:5px;border:2px solid transparent;border-top-color:#2563eb;animation:spin .9s linear infinite}.loader-orbit:after{inset:12px;border-top-color:#10b981;animation-duration:1.3s;animation-direction:reverse}.loader-orbit i{inset:19px;border-top-color:#111827;animation-duration:.7s}.loading-bar{height:5px;border-radius:99px;background:#edf1f6;overflow:hidden;margin-top:18px}.loading-bar span{display:block;height:100%;width:35%;border-radius:99px;background:linear-gradient(90deg,#2563eb,#10b981);animation:load 1.3s ease-in-out infinite}@keyframes load{0%{transform:translateX(-120%)}100%{transform:translateX(310%)}}.success-card{padding:30px 23px}.success-check{width:70px;height:70px;display:grid;place-items:center;margin:0 auto 12px;border-radius:24px;background:linear-gradient(135deg,#dcfce7,#d1fae5);color:#059669;font-size:42px;font-weight:950;animation:pop .55s cubic-bezier(.2,.9,.25,1.3) both}.success-kicker{color:#059669}.success-copy{margin-bottom:4px}.limit{font-size:39px;font-weight:950;letter-spacing:-.045em;margin:2px 0 12px}.tenor-title{display:flex;justify-content:space-between;align-items:center;text-align:left;margin:16px 0 9px;font-size:10px;font-weight:950;letter-spacing:.12em}.tenor-title small{font-size:9px;letter-spacing:0;color:#8b95a5;font-weight:750}.tenor-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.tenor-option{border:1px solid #dce3ec;background:#f8fafc;border-radius:13px;min-height:62px;display:grid;place-items:center;align-content:center;gap:1px;cursor:pointer;color:#526076;transition:.18s;position:relative}.tenor-option b{font-size:18px;line-height:1}.tenor-option span{font-size:9px}.tenor-option:hover{border-color:#9db7e8;transform:translateY(-2px)}.tenor-option.selected{border-color:#2563eb;background:#eff6ff;color:#1d4ed8;box-shadow:0 7px 20px rgba(37,99,235,.13);transform:translateY(-2px)}.tenor-option.selected:after{content:"✓";position:absolute;right:5px;top:4px;font-size:9px;font-weight:950}.selected-tenor{min-height:32px;display:grid;place-items:center;margin:10px 0 2px;border-radius:10px;background:#f8fafc;color:#7a8799;font-size:10px;font-weight:800}.selected-tenor.active{background:#ecfdf5;color:#047857}.apply-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.reveal{animation:reveal .65s cubic-bezier(.2,.7,.2,1) both}.delay-1{animation-delay:.08s}.delay-2{animation-delay:.15s}.delay-3{animation-delay:.22s}.delay-4{animation-delay:.3s}@keyframes reveal{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes pulse{70%{box-shadow:0 0 0 7px rgba(37,99,235,0)}100%{box-shadow:0 0 0 0 rgba(37,99,235,0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes float{50%{transform:translateY(-5px)}}@keyframes pop{from{opacity:0;transform:scale(.65)}to{opacity:1;transform:scale(1)}}

/* Floating primary action: remains visible while reviewing long KTP forms. */
.floating-cta-wrap{position:fixed!important;left:50%!important;bottom:max(14px,env(safe-area-inset-bottom))!important;transform:translateX(-50%)!important;width:min(680px,calc(100vw - 28px))!important;z-index:2147483000!important;display:grid!important;gap:5px!important;pointer-events:none!important;}
.floating-action{position:relative!important;left:auto!important;bottom:auto!important;transform:none!important;width:100%!important;z-index:2147483001!important;pointer-events:auto!important;box-shadow:0 18px 42px rgba(11,18,32,.28),0 4px 14px rgba(11,18,32,.14)!important;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease!important;}
.floating-action:hover:not(:disabled){transform:translateY(-3px)!important;box-shadow:0 22px 48px rgba(11,18,32,.32),0 6px 18px rgba(11,18,32,.16)!important;}
.floating-action:disabled{opacity:.52;cursor:not-allowed;box-shadow:0 10px 25px rgba(11,18,32,.12)!important;}
.floating-cta-hint{display:block;text-align:center;font-size:9px;font-weight:800;color:#64748b;background:rgba(255,255,255,.94);border:1px solid #dce3ed;border-radius:999px;padding:5px 9px;box-shadow:0 5px 18px rgba(11,18,32,.08);pointer-events:none;}
body{padding-bottom:112px;}
@media(max-width:560px){
  .floating-cta-wrap{width:calc(100vw - 26px)!important;bottom:max(10px,env(safe-area-inset-bottom))!important}
  body{padding-bottom:116px}
}
@media(max-width:560px){.app-shell{padding:13px 13px 26px}.secure-pill{font-size:9px;padding:7px 8px}.hero{padding:31px 3px 22px}.hero h1{font-size:34px}.hero p{font-size:12px}.steps{grid-template-columns:1fr 22px 1fr 22px 1fr}.step{gap:5px;font-size:8px}.step span{width:25px;height:25px}.main-card{padding:15px;border-radius:22px}.card-heading{align-items:center}.card-heading h2{font-size:19px}.card-heading p{font-size:10px}.ai-status{padding:7px 8px;font-size:8px}.camera-frame{height:235px;border-radius:17px}.camera-guide{inset:16% 5%}.scan-actions{grid-template-columns:1fr 86px}.button{min-height:45px;padding:11px 10px;font-size:10px}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.data-section{margin-top:22px;padding-top:18px}.tenor-grid{grid-template-columns:repeat(4,1fr)}.modal-card{border-radius:24px;padding:22px 17px}.success-card{padding:25px 17px}.limit{font-size:36px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition:none!important}}
/* AKAY Secure entry gate */
.entry-gate-card{padding:30px 24px}.entry-shield{width:82px;height:82px;border-radius:28px;margin:0 auto 14px;display:grid;place-items:center;background:linear-gradient(145deg,#0b1220,#1e3a5f);box-shadow:0 18px 40px rgba(11,18,32,.24);animation:shieldFloat 2.2s ease-in-out infinite}.entry-shield span{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#059669;font-size:25px;font-weight:950;box-shadow:0 8px 20px rgba(0,0,0,.15)}.device-checks{display:grid;gap:8px;text-align:left;margin:18px 0}.device-checks>div{display:grid;grid-template-columns:16px 1fr auto;align-items:center;gap:7px;padding:10px 11px;border:1px solid #e4eaf2;border-radius:12px;background:#f8fafc}.device-checks span{font-size:10px;color:#2563eb;animation:pulse 1.4s infinite}.device-checks b{font-size:10px;color:#243146}.device-checks small{font-size:9px;color:#7b8798;max-width:160px;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entry-gate-modal.ready .entry-shield{background:linear-gradient(145deg,#047857,#10b981)}.entry-gate-modal.ready .device-checks span{color:#10b981}.entry-gate-modal.error .entry-shield{background:linear-gradient(145deg,#991b1b,#dc2626)}.entry-gate-modal.error .device-checks span{color:#dc2626}@keyframes shieldFloat{50%{transform:translateY(-5px) rotate(1deg)}}
@media(max-width:560px){.entry-gate-card{padding:25px 17px}.device-checks small{max-width:125px}.device-checks>div{padding:9px}}

/* Milestone 1.5.6 — loan calculation UI */
.interest-rule{margin:10px 0 16px;padding:10px 12px;border:1px solid #dbe6f7;border-radius:12px;background:#f7fbff;color:#52647d;font-size:12px;text-align:center}.interest-rule b{color:#122033}.tenor-option{min-height:112px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px}.tenor-option .tenor-interest{font-size:10px;font-weight:700;color:#52647d}.tenor-option .tenor-total{font-size:10px;font-weight:800;color:#122033}.tenor-option.selected .tenor-interest,.tenor-option.selected .tenor-total{color:inherit}.repayment-summary{margin:10px 0 14px;padding:11px 12px;border-radius:12px;background:#f4f7fb;border:1px solid #e0e7f0;color:#52647d;font-size:12px;text-align:center;line-height:1.5}.repayment-summary b{color:#122033}

/* Milestone 1.5.7 — selfie + email + member credentials */
.steps.steps-4{grid-template-columns:1fr 20px 1fr 20px 1fr 20px 1fr}
.selfie-section{margin-top:20px;padding:18px;border:1px solid #dce7f5;border-radius:20px;background:linear-gradient(180deg,#fbfdff,#f6f9fd);animation:reveal .5s ease both}
.selfie-heading{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:12px}
.selfie-heading h3{margin:4px 0;font-size:18px;letter-spacing:-.02em}
.selfie-heading p{margin:0;color:var(--muted);font-size:11px;line-height:1.5}
.mini-status{display:flex;align-items:center;gap:6px;padding:7px 9px;border-radius:999px;background:#f1f5f9;color:#64748b;font-size:9px;font-weight:900;white-space:nowrap}
.mini-status i{width:7px;height:7px;border-radius:50%;background:#94a3b8}
.mini-status.working{background:#fff7ed;color:#c2410c}.mini-status.working i{background:#f59e0b;animation:pulse 1.3s infinite}
.mini-status.success{background:#ecfdf5;color:#047857}.mini-status.success i{background:#10b981}
.mini-status.warning{background:#fff7ed;color:#a16207}.mini-status.warning i{background:#f59e0b}
.selfie-preview{height:285px;position:relative;overflow:hidden;border-radius:18px;background:#0b1220;border:1px solid #1d2b40;display:grid;place-items:center}
.selfie-preview img{width:100%;height:100%;object-fit:cover;display:none}.selfie-preview.active img{display:block}.selfie-preview.active .selfie-placeholder{display:none}
.selfie-placeholder{color:#fff;text-align:center;display:grid;justify-items:center;gap:6px;padding:25px}.selfie-placeholder span{width:56px;height:56px;display:grid;place-items:center;border-radius:18px;background:rgba(255,255,255,.1);font-size:25px}.selfie-placeholder b{font-size:13px}.selfie-placeholder small{font-size:10px;color:#aeb8c8;max-width:300px}
.selfie-scan-line{position:absolute;left:8%;right:8%;top:12%;height:2px;display:none;background:linear-gradient(90deg,transparent,#38bdf8,#fff,#38bdf8,transparent);box-shadow:0 0 18px rgba(56,189,248,.9)}.selfie-scan-line.running{display:block;animation:scan 1.6s ease-in-out infinite}
.selfie-upload{width:100%;margin-top:10px}.selfie-upload input{display:none}
.selfie-tip{margin-top:9px;padding:9px 11px;border-radius:12px;background:#eef6ff;color:#5f718b;font-size:9px;line-height:1.5}.selfie-tip b{color:#294c7d}
.email-hint{font-size:9px;color:#8994a5;line-height:1.45;margin:-1px 0 7px;text-align:left}
.member-credentials{margin:12px 0 14px;padding:13px;border:1px solid #d7e7df;border-radius:15px;background:linear-gradient(180deg,#f3fff8,#ecfdf5);text-align:left;animation:reveal .45s ease both}
.credential-head{display:flex;gap:9px;align-items:center;margin-bottom:9px}.credential-head>span{width:30px;height:30px;display:grid;place-items:center;border-radius:10px;background:#d1fae5}.credential-head b{display:block;font-size:11px;color:#065f46}.credential-head small{display:block;margin-top:2px;color:#6b7d78;font-size:9px}
.credential-row{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-top:1px dashed #cce5d9;font-size:10px}.credential-row span{color:#6b7d78}.credential-row strong{color:#0f3d2e;word-break:break-all;text-align:right}.credential-note{margin-top:7px;color:#688078;font-size:8.5px;line-height:1.45}
@media(max-width:560px){.steps.steps-4{grid-template-columns:1fr 10px 1fr 10px 1fr 10px 1fr}.step{font-size:7px}.selfie-section{padding:14px;border-radius:18px}.selfie-heading{display:block}.mini-status{margin-top:8px;display:inline-flex}.selfie-preview{height:300px}.member-credentials{padding:11px}.credential-row{font-size:9px}}

/* Milestone 1.5.8 — member email delivery status */
.credential-email-notice{margin:8px 0 6px;padding:8px 10px;border-radius:10px;background:#eff6ff;color:#35557d;border:1px solid #dbeafe;font-size:9px;line-height:1.45;font-weight:800;text-align:left}
.credential-email-notice.sent{background:#ecfdf5;color:#047857;border-color:#bbf7d0}
.credential-email-notice.failed{background:#fff7ed;color:#a16207;border-color:#fed7aa}

/* Milestone 1.6.5 — compact success / tenor UI */
.success-card{padding:22px 18px;max-height:calc(100vh - 28px);overflow:auto;scrollbar-width:thin}
.success-check{width:58px;height:58px;border-radius:20px;font-size:34px;margin-bottom:8px}
.success-card h2{font-size:21px;margin:4px 0 4px}
.success-copy{font-size:11px!important;margin:0 0 1px!important}
.limit{font-size:34px;margin:0 0 8px}
.interest-rule{margin:7px 0 9px;padding:7px 9px;font-size:10px}
.member-credentials.compact{padding:9px 10px;margin:8px 0 9px;border-radius:13px}
.member-credentials.compact .credential-head{gap:8px;margin-bottom:6px}
.member-credentials.compact .credential-head>span{width:26px;height:26px;font-size:14px}
.member-credentials.compact .credential-head b{font-size:10px}
.member-credentials.compact .credential-head small{font-size:8px;margin-top:1px}
.member-credentials.compact .credential-row{padding:3px 0;font-size:9px}
.member-credentials.compact .credential-row strong{font-size:9px}
.member-credentials.compact .credential-email-notice{margin-top:5px;padding:5px 7px;border-radius:8px;font-size:8px;line-height:1.25}
.tenor-title{margin:9px 0 6px;font-size:9px}
.tenor-grid{gap:5px}
.tenor-option{min-height:68px!important;height:68px;border-radius:11px;gap:1px;padding:4px 2px}
.tenor-option b{font-size:17px}
.tenor-option span{font-size:8px}
.tenor-option .tenor-interest{font-size:8px!important;line-height:1.1}
.tenor-option .tenor-total{font-size:9px!important;line-height:1.1}
.repayment-summary.compact-summary{margin:7px 0 7px;padding:7px 8px;border-radius:9px;font-size:9px;line-height:1.3;min-height:29px;display:grid;place-items:center}
.success-card .apply-btn{margin-top:5px;min-height:42px;font-size:11px;position:sticky;bottom:0;z-index:3;box-shadow:0 8px 20px rgba(11,18,32,.22)}
.success-card .modal-footnote{margin-top:6px;font-size:8px}
@media(max-width:560px){
 .success-card{padding:18px 13px;max-height:calc(100vh - 18px)}
 .success-check{width:50px;height:50px;border-radius:17px;font-size:29px}
 .success-card h2{font-size:19px}
 .limit{font-size:31px}
 .interest-rule{font-size:9px;padding:6px 8px}
 .member-credentials.compact{margin:6px 0 7px;padding:8px 9px}
 .tenor-grid{gap:4px}
 .tenor-option{min-height:62px!important;height:62px}
 .tenor-option b{font-size:16px}
 .tenor-option .tenor-interest{font-size:7.5px!important}
 .tenor-option .tenor-total{font-size:8.5px!important}
 .repayment-summary.compact-summary{font-size:8.5px;padding:6px 7px}
 .success-card .apply-btn{min-height:40px}
}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Milestone 1.6.6 — regional limit note */
.limit-region{margin:-3px 0 8px;color:#64748b;font-size:8.5px;text-align:center;font-weight:750}

/* Milestone 1.6.7 — region fields are AI-verified and not user-editable */
#regency[readonly],#province[readonly]{background:#f3f6fa;color:#526076;font-weight:800;cursor:not-allowed;border-color:#d8e0ea}


/* Milestone 1.6.7 UI/UX — logo, theme dongle, automatic system theme */
.brand-logo-link{display:flex;align-items:center;text-decoration:none;min-width:0}
.brand-logo{display:block;width:166px;height:54px;object-fit:contain;object-position:left center;border-radius:0}.brand-logo-dark{display:none!important}html[data-theme="dark"] .brand-logo-light{display:none!important}html[data-theme="dark"] .brand-logo-dark{display:block!important}
.topbar{position:relative;z-index:20!important;display:flex;align-items:center;justify-content:space-between;gap:12px}.topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;position:relative;z-index:21!important;padding-right:72px}
.theme-toggle{position:fixed!important;top:max(12px,env(safe-area-inset-top))!important;right:max(12px,env(safe-area-inset-right))!important;z-index:2147483647!important;pointer-events:auto!important;touch-action:manipulation;-webkit-tap-highlight-color:transparent;height:34px;min-width:78px;padding:4px 7px;border:1px solid var(--theme-border,#dbe3ef);background:var(--theme-control-bg,rgba(255,255,255,.82));color:var(--ink);border-radius:999px;display:inline-flex;align-items:center;justify-content:space-between;gap:4px;cursor:pointer;box-shadow:0 5px 16px rgba(15,23,42,.06);transition:.22s ease}
.theme-toggle:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(15,23,42,.1)}
.theme-icon{font-size:12px;line-height:1;opacity:.7}.theme-icon.sun{color:#f59e0b}.theme-icon.moon{color:#64748b}
.theme-switch{width:30px;height:18px;border-radius:999px;background:#dce5f0;padding:2px;display:flex;align-items:center;transition:.2s}.theme-switch i{width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.18);transform:translateX(0);transition:.22s}
html[data-theme="dark"] .theme-switch{background:#334155}html[data-theme="dark"] .theme-switch i{transform:translateX(12px);background:#0f172a}html[data-theme="dark"] .theme-icon.sun{opacity:.35}html[data-theme="dark"] .theme-icon.moon{opacity:1;color:#e2e8f0}
html[data-theme="light"] .theme-icon.sun{opacity:1}

@media (max-width:560px){.app-shell{padding-top:12px}.brand-logo{width:142px;height:46px}.topbar-actions{gap:6px;padding-right:72px}.secure-pill{padding:7px 9px;font-size:9px;white-space:nowrap}.theme-toggle{min-width:70px;height:32px}}

/* Dark palette */
html[data-theme="dark"]{color-scheme:dark}
html[data-theme="dark"]{--modal-bg:#0f1724;--ink:#f3f6fb;--ink2:#e2e8f0;--muted:#94a3b8;--line:#273449;--bg:#070c14;--white:#0f1724;--blue:#60a5fa;--blue2:#3b82f6;--green:#34d399;--danger:#f87171;--shadow:0 18px 55px rgba(0,0,0,.35);--theme-border:#334155;--theme-control-bg:rgba(15,23,36,.9)}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]){color-scheme:dark}}
html[data-theme="dark"] body{background:radial-gradient(circle at 100% 0%,rgba(37,99,235,.12),transparent 30%),radial-gradient(circle at 0% 40%,rgba(14,116,144,.09),transparent 28%),var(--bg)}
html[data-theme="dark"] .ambient-a{background:#172554}html[data-theme="dark"] .ambient-b{background:#0f3b4d}
html[data-theme="dark"] .card{background:rgba(15,23,36,.94);border-color:#263449;box-shadow:var(--shadow)}
html[data-theme="dark"] .secure-pill{background:rgba(15,23,36,.82);border-color:#334155;color:#cbd5e1}
html[data-theme="dark"] .step-line{background:#273449}.step.active,html[data-theme="dark"] .step.done{color:var(--ink)}
html[data-theme="dark"] .step span{background:#1e293b;color:#94a3b8}html[data-theme="dark"] .step.active span,html[data-theme="dark"] .step.done span{background:#e2e8f0;color:#0b1220}
html[data-theme="dark"] .ai-status{background:#172554;color:#93c5fd}html[data-theme="dark"] .ai-status.success{background:#052e24;color:#6ee7b7}html[data-theme="dark"] .ai-status.warning,html[data-theme="dark"] .ai-status.working{background:#3a260d;color:#fbbf24}
html[data-theme="dark"] .ai-note{background:#0d1726;border-color:#263449}.ai-note b,html[data-theme="dark"] .ai-note b{color:var(--ink)}html[data-theme="dark"] .ai-note small{color:#94a3b8}
html[data-theme="dark"] input,html[data-theme="dark"] select,html[data-theme="dark"] textarea{background:#0b1320;color:#e5edf7;border-color:#334155}html[data-theme="dark"] input:focus,html[data-theme="dark"] select:focus,html[data-theme="dark"] textarea:focus{border-color:#60a5fa;box-shadow:0 0 0 4px rgba(96,165,250,.12)}
html[data-theme="dark"] label{color:#d6deea}.consent-row label{color:#94a3b8!important}.consent-row input{accent-color:#60a5fa}
html[data-theme="dark"] .button.light{background:#1e293b;color:#e2e8f0}html[data-theme="dark"] .button.primary{background:linear-gradient(135deg,#e2e8f0,#cbd5e1);color:#0b1220;box-shadow:0 10px 25px rgba(0,0,0,.24)}
html[data-theme="dark"] .floating-action{background:linear-gradient(135deg,#e2e8f0,#cbd5e1);color:#0b1220}
html[data-theme="dark"] .selfie-tip{background:#0d1c2d;color:#9fb0c7;border-color:#223a55}html[data-theme="dark"] .selfie-tip b{color:#bfdbfe}
html[data-theme="dark"] #regency[readonly],html[data-theme="dark"] #province[readonly]{background:#172131;color:#aebdd0;border-color:#334155}
html[data-theme="dark"] .footer{color:#64748b}.hero p,.card-heading p{color:var(--muted)}
html[data-theme="dark"] .modal-backdrop{background:rgba(0,0,0,.78)!important}html[data-theme="dark"] .modal-card{background:#0f1724!important;color:#edf3fa!important;border:1px solid #273449}
html[data-theme="dark"] .modal-card p{color:#94a3b8}.modal-close{color:var(--ink)}
html[data-theme="dark"] .member-credentials{background:linear-gradient(180deg,#0d2a20,#0b221b);border-color:#1d5946}html[data-theme="dark"] .member-credentials.compact .credential-row{border-color:#1d473b}html[data-theme="dark"] .credential-head b{color:#86efac}html[data-theme="dark"] .credential-head small,html[data-theme="dark"] .credential-row span,html[data-theme="dark"] .credential-note{color:#8fa99f}html[data-theme="dark"] .credential-row strong{color:#d1fae5}
html[data-theme="dark"] .credential-email-notice.sent{background:#063d2e;color:#86efac;border-color:#166534}html[data-theme="dark"] .credential-email-notice.failed{background:#3b2410;color:#fbbf24;border-color:#92400e}
html[data-theme="dark"] .tenor-option{background:#111c2c;border-color:#304158;color:#e2e8f0}html[data-theme="dark"] .tenor-option.selected{background:#172f4f;border-color:#60a5fa}html[data-theme="dark"] .repayment-summary{background:#101c2d;color:#cbd5e1;border-color:#2c3e56}
html[data-theme="dark"] .limit-region{color:#94a3b8}
html[data-theme="dark"] .modal-card input,html[data-theme="dark"] .modal-card select,html[data-theme="dark"] .modal-card textarea{background:#0b1320;color:#e5edf7;border-color:#334155}

/* =========================================================
   DAPINKU 1.6.9 — PINK / WHITE + PINK / BLACK NEON UI
   ========================================================= */
:root{
  --pink:#ec4899;
  --pink-deep:#db2777;
  --pink-soft:#fdf2f8;
  --pink-line:#fbcfe8;
  --pink-glow:rgba(236,72,153,.28);
  --bg:#fff7fb;
  --ink:#18111a;
  --ink2:#2a1727;
  --muted:#766875;
  --line:#f3dce9;
  --white:#fff;
  --blue:var(--pink);
  --blue2:var(--pink-deep);
  --green:#059669;
  --danger:#dc2626;
  --shadow:0 18px 55px rgba(219,39,119,.10);
  --theme-border:#f3b5d4;
  --theme-control-bg:rgba(255,255,255,.94);
}

html[data-theme="light"]{color-scheme:light}
html[data-theme="light"] body,
html:not([data-theme="dark"]) body{
  background:
    radial-gradient(circle at 100% 0%,rgba(236,72,153,.12),transparent 27%),
    radial-gradient(circle at 0% 45%,rgba(244,114,182,.08),transparent 25%),
    linear-gradient(180deg,#fff 0%,#fff7fb 100%);
  color:var(--ink);
}
html[data-theme="light"] .ambient-a,
html:not([data-theme="dark"]) .ambient-a{background:#f9a8d4}
html[data-theme="light"] .ambient-b,
html:not([data-theme="dark"]) .ambient-b{background:#fbcfe8}

/* Light clean pink accents */
html[data-theme="light"] .hero h1 span,
html:not([data-theme="dark"]) .hero h1 span{background:linear-gradient(90deg,#db2777,#ec4899,#f472b6);-webkit-background-clip:text;background-clip:text;color:transparent}
html[data-theme="light"] .eyebrow,
html[data-theme="light"] .section-kicker,
html:not([data-theme="dark"]) .eyebrow,
html:not([data-theme="dark"]) .section-kicker{color:#db2777}
html[data-theme="light"] .card,
html:not([data-theme="dark"]) .card{background:rgba(255,255,255,.96);border-color:#f5d5e6;box-shadow:0 20px 60px rgba(219,39,119,.09)}
html[data-theme="light"] .step.active span,
html[data-theme="light"] .step.done span,
html:not([data-theme="dark"]) .step.active span,
html:not([data-theme="dark"]) .step.done span{background:linear-gradient(135deg,#ec4899,#db2777);color:#fff;box-shadow:0 8px 22px rgba(236,72,153,.28)}
html[data-theme="light"] .step.done span,
html:not([data-theme="dark"]) .step.done span{background:linear-gradient(135deg,#f472b6,#db2777)}
html[data-theme="light"] .step-line,
html:not([data-theme="dark"]) .step-line{background:#f3d3e3}
html[data-theme="light"] .ai-status,
html:not([data-theme="dark"]) .ai-status{background:#fdf2f8;color:#be185d;border:1px solid #fbcfe8}
html[data-theme="light"] .pulse-dot,
html:not([data-theme="dark"]) .pulse-dot{background:#ec4899;box-shadow:0 0 0 0 rgba(236,72,153,.42)}
html[data-theme="light"] .ai-status.working,
html:not([data-theme="dark"]) .ai-status.working{background:#fff1f7;color:#be185d}
html[data-theme="light"] .ai-status.success,
html:not([data-theme="dark"]) .ai-status.success{background:#ecfdf5;color:#047857;border-color:#bbf7d0}
html[data-theme="light"] .ai-note,
html:not([data-theme="dark"]) .ai-note{background:linear-gradient(135deg,#fff,#fff5fa);border-color:#f5d5e6}
html[data-theme="light"] .sparkle,
html:not([data-theme="dark"]) .sparkle{background:#fce7f3;color:#db2777;box-shadow:0 0 18px rgba(236,72,153,.16)}
html[data-theme="light"] input:focus,
html[data-theme="light"] select:focus,
html[data-theme="light"] textarea:focus,
html:not([data-theme="dark"]) input:focus,
html:not([data-theme="dark"]) select:focus,
html:not([data-theme="dark"]) textarea:focus{border-color:#ec4899;box-shadow:0 0 0 4px rgba(236,72,153,.10)}
html[data-theme="light"] .consent-row input,
html:not([data-theme="dark"]) .consent-row input{accent-color:#ec4899}
html[data-theme="light"] .button.primary,
html:not([data-theme="dark"]) .button.primary,
html[data-theme="light"] .continue-btn,
html:not([data-theme="dark"]) .continue-btn{background:linear-gradient(135deg,#ec4899 0%,#db2777 55%,#be185d 100%);color:#fff;box-shadow:0 12px 28px rgba(219,39,119,.25)}
html[data-theme="light"] .button.primary:hover,
html:not([data-theme="dark"]) .button.primary:hover{box-shadow:0 16px 34px rgba(219,39,119,.32)}
html[data-theme="light"] .button.light,
html:not([data-theme="dark"]) .button.light{background:#fdf2f8;color:#9d174d;border:1px solid #fbcfe8}
html[data-theme="light"] .floating-action,
html:not([data-theme="dark"]) .floating-action{background:linear-gradient(135deg,#ec4899,#db2777,#be185d)!important;color:#fff!important;box-shadow:0 18px 42px rgba(219,39,119,.28),0 0 22px rgba(236,72,153,.14)!important}
html[data-theme="light"] .floating-cta-hint,
html:not([data-theme="dark"]) .floating-cta-hint{background:rgba(255,255,255,.96);border-color:#f3d3e3;color:#8b5a72}

/* Dark mode: true black + neon pink */
html[data-theme="dark"]{
  --pink:#ff4fa3;
  --pink-deep:#ff2f92;
  --pink-soft:#210814;
  --pink-line:#5b123b;
  --pink-glow:rgba(255,47,146,.42);
  --bg:#050507;
  --ink:#fff4fa;
  --ink2:#fce7f3;
  --muted:#b9a8b4;
  --line:#2a1824;
  --white:#0b090c;
  --blue:#ff4fa3;
  --blue2:#ff2f92;
  --shadow:0 22px 70px rgba(0,0,0,.55),0 0 32px rgba(255,47,146,.07);
  --theme-border:#63133f;
  --theme-control-bg:rgba(12,8,11,.94);
  --modal-bg:#0a080b;
}
html[data-theme="dark"] body{
  background:
    radial-gradient(circle at 100% 0%,rgba(255,47,146,.18),transparent 28%),
    radial-gradient(circle at 0% 35%,rgba(236,72,153,.10),transparent 25%),
    linear-gradient(180deg,#050507 0%,#08060a 48%,#050507 100%);
  color:var(--ink);
}
html[data-theme="dark"] body:before{
  content:"";position:fixed;inset:-20%;pointer-events:none;z-index:-2;
  background:radial-gradient(circle at 50% 0%,rgba(255,47,146,.07),transparent 38%);
  animation:pinkBreath 5s ease-in-out infinite alternate;
}
html[data-theme="dark"] .ambient-a{background:#7d174f;opacity:.28;filter:blur(90px)}
html[data-theme="dark"] .ambient-b{background:#4a0d30;opacity:.25;filter:blur(90px)}
html[data-theme="dark"] .hero h1 span{background:linear-gradient(90deg,#ff75b7,#ff2f92,#ff9dce);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 28px rgba(255,47,146,.18)}
html[data-theme="dark"] .eyebrow,
html[data-theme="dark"] .section-kicker,
html[data-theme="dark"] .modal-kicker{color:#ff6eb2}
html[data-theme="dark"] .card{background:linear-gradient(180deg,rgba(13,9,13,.97),rgba(8,7,10,.96));border-color:#351528;box-shadow:0 24px 75px rgba(0,0,0,.55),0 0 28px rgba(255,47,146,.055)}
html[data-theme="dark"] .card:hover{border-color:#5b1b40}
html[data-theme="dark"] .step-line{background:#351528}
html[data-theme="dark"] .step span{background:#191016;color:#a996a3;border:1px solid #351528}
html[data-theme="dark"] .step.active span,
html[data-theme="dark"] .step.done span{background:linear-gradient(135deg,#ff65ae,#ff2f92);color:#fff;border-color:#ff4fa3;box-shadow:0 0 20px rgba(255,47,146,.42),0 8px 24px rgba(255,47,146,.22)}
html[data-theme="dark"] .step.active,
html[data-theme="dark"] .step.done{color:#ffe8f4}
html[data-theme="dark"] .ai-status{background:#210814;color:#ff83bd;border-color:#5b123b;box-shadow:0 0 18px rgba(255,47,146,.10)}
html[data-theme="dark"] .ai-status.working{background:#210814;color:#ff83bd}
html[data-theme="dark"] .ai-status.success{background:#081b14;color:#6ee7b7;border-color:#164e3b;box-shadow:none}
html[data-theme="dark"] .pulse-dot{background:#ff3c98;box-shadow:0 0 12px rgba(255,47,146,.9)}
html[data-theme="dark"] .ai-note{background:linear-gradient(135deg,#110b10,#0b080c);border-color:#351528;box-shadow:inset 0 0 24px rgba(255,47,146,.025)}
html[data-theme="dark"] .sparkle{background:#2a0b1b;color:#ff65ae;box-shadow:0 0 18px rgba(255,47,146,.22)}
html[data-theme="dark"] input,
html[data-theme="dark"] select,
html[data-theme="dark"] textarea{background:#0a080b;color:#fff0f7;border-color:#3a1d2d}
html[data-theme="dark"] input:focus,
html[data-theme="dark"] select:focus,
html[data-theme="dark"] textarea:focus{border-color:#ff4fa3;box-shadow:0 0 0 4px rgba(255,47,146,.11),0 0 18px rgba(255,47,146,.08)}
html[data-theme="dark"] label{color:#f6dce8}
html[data-theme="dark"] .consent-row label{color:#bca9b6!important}
html[data-theme="dark"] .consent-row input{accent-color:#ff3f99}
html[data-theme="dark"] .button.primary,
html[data-theme="dark"] .continue-btn{background:linear-gradient(135deg,#ff65ae 0%,#ff2f92 55%,#d91473 100%);color:#fff;box-shadow:0 14px 34px rgba(255,47,146,.24),0 0 22px rgba(255,47,146,.16)}
html[data-theme="dark"] .button.primary:hover,
html[data-theme="dark"] .continue-btn:hover:not(:disabled){box-shadow:0 18px 42px rgba(255,47,146,.32),0 0 30px rgba(255,47,146,.24)}
html[data-theme="dark"] .button.light{background:#170d13;color:#ffd9e9;border-color:#54203b}
html[data-theme="dark"] .floating-action{background:linear-gradient(135deg,#ff65ae,#ff2f92,#d91473)!important;color:#fff!important;box-shadow:0 18px 45px rgba(255,47,146,.30),0 0 30px rgba(255,47,146,.20)!important}
html[data-theme="dark"] .floating-cta-hint{background:rgba(9,7,10,.94);border-color:#4b1c35;color:#bda8b6;box-shadow:0 0 18px rgba(255,47,146,.07)}
html[data-theme="dark"] .secure-pill{background:rgba(13,8,12,.90);border-color:#3f1b2f;color:#e5c9d8;box-shadow:0 0 16px rgba(255,47,146,.06)}
html[data-theme="dark"] .secure-pill i{background:#ff3f99;box-shadow:0 0 0 4px rgba(255,47,146,.12),0 0 12px rgba(255,47,146,.65)}
html[data-theme="dark"] .modal-card{background:linear-gradient(180deg,#0d090d,#070609)!important;border-color:#46172f!important;box-shadow:0 30px 100px rgba(0,0,0,.70),0 0 45px rgba(255,47,146,.09)!important}
html[data-theme="dark"] .modal-close{background:#1b0e16;color:#ffb3d3;border:1px solid #4b1c35}
html[data-theme="dark"] .modal-card input,
html[data-theme="dark"] .modal-card select,
html[data-theme="dark"] .modal-card textarea{background:#0a080b;color:#fff0f7;border-color:#3a1d2d}
html[data-theme="dark"] .entry-shield{background:linear-gradient(145deg,#4d0c31,#ff2f92);box-shadow:0 0 36px rgba(255,47,146,.25)}
html[data-theme="dark"] .entry-shield span{color:#ff3d99;box-shadow:0 0 24px rgba(255,47,146,.22)}
html[data-theme="dark"] .device-checks>div{background:#0d090d;border-color:#321526}
html[data-theme="dark"] .device-checks span{color:#ff4fa3;text-shadow:0 0 8px rgba(255,47,146,.7)}
html[data-theme="dark"] .tenor-option{background:#0e090d;border-color:#3a1d2d;color:#f8dce9;box-shadow:inset 0 0 18px rgba(255,47,146,.02)}
html[data-theme="dark"] .tenor-option.selected{background:#260c1a;border-color:#ff3f99;color:#fff;box-shadow:0 0 22px rgba(255,47,146,.20)}
html[data-theme="dark"] .repayment-summary{background:#110a0f;border-color:#3a1d2d;color:#f1d5e2}
html[data-theme="dark"] .selfie-tip{background:#10090e;color:#c7b2be;border-color:#38182a}
html[data-theme="dark"] .selfie-tip b{color:#ff8fc3}
html[data-theme="dark"] #regency[readonly],
html[data-theme="dark"] #province[readonly]{background:#120b10;color:#c8aeba;border-color:#3a1d2d}
html[data-theme="dark"] .footer{color:#806b78}

/* Neon motion */
@keyframes pinkBreath{from{transform:scale(1);opacity:.55}to{transform:scale(1.08);opacity:1}}
@keyframes neonPulse{0%,100%{box-shadow:0 0 0 rgba(255,47,146,0)}50%{box-shadow:0 0 24px rgba(255,47,146,.28)}}
html[data-theme="dark"] .theme-toggle{animation:neonPulse 3s ease-in-out infinite}
html[data-theme="dark"] .theme-switch{background:#3a1028;box-shadow:inset 0 0 10px rgba(255,47,146,.15)}
html[data-theme="dark"] .theme-switch i{background:#ff4fa3;box-shadow:0 0 12px rgba(255,47,146,.9)}
html[data-theme="dark"] .theme-icon.moon{color:#ff72b7;text-shadow:0 0 10px rgba(255,47,146,.8)}
html[data-theme="dark"] .scanner-line{background:linear-gradient(90deg,transparent,#ff2f92,#fff,#ff2f92,transparent);box-shadow:0 0 22px rgba(255,47,146,.95)}
html[data-theme="dark"] .camera-frame:before{background:radial-gradient(circle at 50% 45%,rgba(255,47,146,.16),transparent 58%)}

/* Keep dark-mode transitions smooth without making the page sluggish. */
body,.card,.button,input,select,textarea,.secure-pill,.ai-note,.ai-status,.floating-cta-hint,.modal-card,.theme-toggle{transition:background-color .25s ease,color .25s ease,border-color .25s ease,box-shadow .25s ease}
/* Milestone 1.7.0 — Digital Agreement + E-Sign */
.agreement-card{max-width:720px!important;width:min(720px,calc(100vw - 24px));max-height:calc(100vh - 24px);overflow:auto;padding:24px 22px!important;text-align:left}
.agreement-card h2{margin:5px 0 7px}.agreement-meta{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 12px}.agreement-meta span{font-size:9px;font-weight:850;letter-spacing:.04em;padding:6px 9px;border-radius:999px;background:#fff0f7;color:#d61f76;border:1px solid #ffd0e5}.agreement-paper{background:#fff;border:1px solid #ece3e8;border-radius:15px;padding:18px;white-space:pre-wrap;font:11px/1.7 Arial,sans-serif;color:#2a2430;max-height:330px;overflow:auto;box-shadow:inset 0 0 25px rgba(255,47,146,.025)}.agreement-consent{margin:14px 0}.agreement-consent label{display:flex;gap:9px;align-items:flex-start;font-size:11px;line-height:1.5;font-weight:750;color:#4f4550}.agreement-consent input{width:18px;height:18px;accent-color:#ff2f92;flex:0 0 auto}.signature-title{display:flex;justify-content:space-between;gap:12px;align-items:flex-end;margin:13px 0 7px}.signature-title b{font-size:11px}.signature-title small{font-size:9px;color:#8b7d87}.signature-box{position:relative;border:1.5px dashed #ff9bc7;background:#fff;border-radius:15px;overflow:hidden;box-shadow:inset 0 0 24px rgba(255,47,146,.035)}.signature-box canvas{display:block;width:100%;height:150px;touch-action:none;cursor:crosshair}.signature-clear{position:absolute;right:8px;top:8px;border:0;border-radius:999px;background:#fff0f7;color:#d61f76;font-size:9px;font-weight:850;padding:7px 10px;cursor:pointer}.agreement-error{min-height:18px;margin:6px 0;color:#dc2626;font-size:10px;font-weight:700}.agreement-success-card{max-width:430px!important}.agreement-number-box{padding:12px;border:1px solid #ffd0e5;background:#fff5fa;border-radius:13px;margin:14px 0}.agreement-number-box small{display:block;color:#9a7185;font-size:9px}.agreement-number-box b{display:block;color:#d61f76;font-size:16px;margin-top:3px;letter-spacing:.04em}
html[data-theme="dark"] .agreement-card{background:linear-gradient(180deg,#0d090d,#070609)!important;border-color:#4a1732!important}html[data-theme="dark"] .agreement-paper{background:#09070a;border-color:#462039;color:#f6e9f0;box-shadow:inset 0 0 30px rgba(255,47,146,.05)}html[data-theme="dark"] .agreement-consent label{color:#e7d5df}html[data-theme="dark"] .agreement-meta span{background:#260b19;color:#ff8cc2;border-color:#652343}html[data-theme="dark"] .signature-box{background:#fff;border-color:#ff3f99;box-shadow:0 0 24px rgba(255,47,146,.12)}html[data-theme="dark"] .agreement-number-box{background:#210a17;border-color:#60203e}html[data-theme="dark"] .agreement-number-box b{color:#ff73b5}
@media(max-width:560px){.agreement-card{width:calc(100vw - 14px);max-height:calc(100vh - 14px);padding:19px 14px!important;border-radius:22px!important}.agreement-paper{max-height:300px;font-size:10px;line-height:1.6;padding:14px}.signature-box canvas{height:135px}.signature-title{display:block}.signature-title small{display:block;margin-top:3px}.agreement-card .modal-button{font-size:10px}}

/* DAPINKU 1.7.1 — Identity document picker / balanced header / SIM support */
.document-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 12px}
.document-choice{border:1px solid var(--pink-line,#fbcfe8);background:#fff;border-radius:15px;padding:11px 7px 10px;color:var(--ink);cursor:pointer;text-align:center;display:grid;justify-items:center;gap:3px;transition:.2s ease;box-shadow:0 5px 18px rgba(236,72,153,.05)}
.document-choice span{font-size:19px;line-height:1}.document-choice b{font-size:11px}.document-choice small{font-size:8px;color:var(--muted)}.document-choice:hover{transform:translateY(-1px);border-color:#f472b6}.document-choice.selected{border-color:#ec4899;background:linear-gradient(180deg,#fff,#fdf2f8);box-shadow:0 0 0 2px rgba(236,72,153,.10),0 10px 24px rgba(236,72,153,.10);color:#be185d}.document-choice.selected span{filter:drop-shadow(0 0 7px rgba(236,72,153,.35))}
.topbar{min-height:58px}.secure-pill{max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.theme-toggle{font-size:11px}
html[data-theme="dark"] .document-choice{background:#0c080b;border-color:#3d1a2e;color:#f8dce9;box-shadow:inset 0 0 20px rgba(255,47,146,.025)}html[data-theme="dark"] .document-choice small{color:#bda9b5}html[data-theme="dark"] .document-choice.selected{background:#240b18;border-color:#ff3f99;box-shadow:0 0 0 2px rgba(255,47,146,.12),0 0 26px rgba(255,47,146,.18)}
html[data-theme="dark"] .secure-pill{border-color:#5a2140!important;color:#f4d9e7!important;box-shadow:0 0 18px rgba(255,47,146,.08)}
html[data-theme="dark"] .secure-pill i{background:#ff3f99!important}
html[data-theme="light"] .secure-pill{background:#fff;border-color:#f6c6df;color:#8b3b63;box-shadow:0 6px 18px rgba(236,72,153,.07)}html[data-theme="light"] .secure-pill i{background:#ec4899;box-shadow:0 0 0 4px #fce7f3}
@media(max-width:560px){.document-picker{gap:6px}.document-choice{padding:9px 4px}.document-choice b{font-size:10px}.document-choice small{font-size:7.5px}.topbar{padding-right:0}.topbar-actions{padding-right:76px}.secure-pill{font-size:8.5px;max-width:155px}}

/* DAPINKU 1.7.3 — Tenor is a normal page step, agreement is the only document modal */
.tenor-step-screen{display:none!important;width:100%;padding:18px 0 110px;position:relative;z-index:5;box-sizing:border-box}
.tenor-step-screen.show{display:block!important;animation:tenorStepIn .28s ease both}
.tenor-step-card{width:min(720px,100%);margin:0 auto;background:var(--white,#fff);border:1px solid rgba(236,72,153,.20);border-radius:28px;padding:24px;box-shadow:0 20px 60px rgba(236,72,153,.12);box-sizing:border-box}
.tenor-step-screen .success-card{max-height:none;overflow:visible}
body.tenor-active .floating-cta-wrap{display:none!important}
@keyframes tenorStepIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
/* Agreement must always be the only front document layer */
#agreementModal{z-index:50000!important}
#agreementModal .modal-card{z-index:50002!important}
#agreementSuccessModal{z-index:50000!important}
#agreementSuccessModal .modal-card{z-index:50002!important}
@media(max-width:560px){.tenor-step-screen{padding:8px 0 95px}.tenor-step-card{border-radius:22px;padding:18px 13px}}

/* 1.7.4 interaction hardening: agreement is the only interactive layer. */
#agreementModal.show{z-index:2147482000!important;pointer-events:auto!important;}
#agreementModal.show .modal-backdrop{z-index:0!important;pointer-events:auto!important;}
#agreementModal.show .agreement-card{z-index:3!important;pointer-events:auto!important;touch-action:auto!important;}
#agreementModal.show .agreement-card *{pointer-events:auto;}
#agreementModal.show .signature-box,#agreementModal.show #signatureCanvas{pointer-events:auto!important;touch-action:none!important;}
#agreementModal.show #signAgreementBtn{pointer-events:auto!important;position:relative;z-index:10;}
#agreementModal.show ~ .floating-cta-wrap{display:none!important;pointer-events:none!important;}
body.agreement-active .floating-cta-wrap{display:none!important;pointer-events:none!important;}
#agreementSuccessModal.show{z-index:2147482000!important;pointer-events:auto!important;}
#agreementSuccessModal.show .modal-card{z-index:3!important;pointer-events:auto!important;}

/* Auto identity detection */
.identity-detected{display:flex;align-items:center;gap:10px;margin:12px 0 14px;padding:11px 13px;border:1px solid rgba(236,72,153,.28);border-radius:14px;background:rgba(236,72,153,.07)}
.identity-detected[hidden]{display:none!important}
.identity-detected-icon{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#ff4fa3,#d91578);color:#fff;font-weight:900;box-shadow:0 0 18px rgba(236,72,153,.3)}
.identity-detected small{display:block;font-size:9px;letter-spacing:.12em;font-weight:900;color:#db2777;margin-bottom:2px}
.identity-detected b{display:block;font-size:13px}
[data-theme="dark"] .identity-detected{background:rgba(236,72,153,.1);border-color:rgba(255,72,164,.4);box-shadow:0 0 24px rgba(236,72,153,.08)}

/* Resume draft notice */
.resume-notice{position:fixed;left:50%;bottom:92px;transform:translateX(-50%) translateY(16px);width:min(92vw,560px);display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 15px;border:1px solid rgba(236,72,153,.28);border-radius:16px;background:rgba(255,255,255,.96);box-shadow:0 16px 50px rgba(15,23,42,.18);backdrop-filter:blur(16px);z-index:2147482000;opacity:0;pointer-events:none;transition:.25s ease}
.resume-notice.show{opacity:1;transform:translateX(-50%) translateY(0);pointer-events:auto}
.resume-notice b{display:block;font-size:13px;color:#17121d}.resume-notice small{display:block;margin-top:3px;color:#697386;font-size:11px}
.resume-notice button{border:0;border-radius:999px;padding:9px 13px;font-weight:800;font-size:11px;background:#fce7f3;color:#be185d;cursor:pointer;white-space:nowrap}
[data-theme="dark"] .resume-notice{background:rgba(10,10,12,.96);border-color:rgba(255,78,174,.45);box-shadow:0 0 32px rgba(255,45,160,.18)}
[data-theme="dark"] .resume-notice b{color:#fff}.resume-notice small{color:#a9a3b0}
@media(max-width:560px){.resume-notice{bottom:82px;padding:12px;width:calc(100vw - 24px)}.resume-notice small{max-width:250px}}
.resume-actions{display:flex;gap:7px;align-items:center}.resume-actions button:first-child{background:#ec4899;color:#fff}.resume-actions button:last-child{background:#fce7f3;color:#be185d}
[data-theme="dark"] .resume-actions button:first-child{background:#ff3fa4;color:#09070b;box-shadow:0 0 18px rgba(255,63,164,.28)}
[data-theme="dark"] .resume-actions button:last-child{background:#26121f;color:#ff8bc6}
