/* R3.5.104 CANONICAL MOBILE CSS AUTHORITY: !important is reserved only for display/visibility/opacity state semantics; layout/spacing/typography use normal cascade specificity. */
/* GMC 2026 RC5 — authoritative mobile app density system. */
:root{--navy-950:#06142d;--navy-900:#08234a;--navy-800:#0c356d;--navy-700:#16508f;--blue-600:#2468c9;--blue-100:#edf4ff;--orange-600:#e96317;--orange-500:#f47b24;--orange-100:#fff2e8;--green-600:#12815a;--green-100:#e8f8f1;--red-600:#c43d4a;--surface:#ffffff;--surface-soft:#f7f9fc;--canvas:#f2f5f9;--ink:#0a1e3f;--muted:#62728b;--line:#dce5f0;--shadow:0 22px 70px rgba(6,20,45,.13);--radius:26px;--content:1180px;--visible-height:100dvh;--visible-top:0px;--footer-height:86px;color-scheme:light;--line-strong:#c8d6e7;--shadow-soft:0 10px 30px rgba(6,20,45,.08);--shadow-button:0 12px 24px rgba(233,99,23,.25);}html[data-theme="dark"]{--surface:#0b1f40;--surface-soft:#10294f;--canvas:#06142d;--ink:#f7f9ff;--muted:#aec0d7;--line:#284a75;--blue-100:#14335d;--orange-100:#3c261c;--green-100:#123c32;color-scheme:dark;--line-strong:#37608e;}*{box-sizing:border-box;}html{min-height:100%;scroll-behavior:smooth;background:var(--canvas);}body{margin:0;min-height:100%;background:
    radial-gradient(circle at 8% 0%,rgba(36,104,201,.075),transparent 28rem),
    radial-gradient(circle at 94% 8%,rgba(244,123,36,.07),transparent 24rem),
    var(--canvas);color:var(--ink);font:500 16px/1.58 Manrope,system-ui,-apple-system,"Segoe UI",sans-serif;overflow-x:hidden;}input{font:inherit;color:inherit;}select{font:inherit;color:inherit;}textarea{font:inherit;color:inherit;}a{touch-action:manipulation;}button{font:inherit;color:inherit;touch-action:manipulation;cursor:pointer;}img{display:block;max-width:100%;}.app{min-height:100vh;}.main{min-height:100vh;}.screen{display:none;min-height:100vh;padding:clamp(42px,5vw,74px) max(24px,calc((100vw - var(--content))/2));background:transparent;}.screen.active{display:block;}.card{background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 98%,#fff),var(--surface));border:1px solid color-mix(in srgb,var(--line) 82%,transparent);border-radius:var(--radius);box-shadow:var(--shadow);}.btn{min-height:54px;border:0;border-radius:16px;padding:0 24px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:800;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease;letter-spacing:-.01em;}.btn:hover{transform:translateY(-1px);}.rules-start:hover{transform:translateY(-1px);}.public-start:hover{transform:translateY(-1px);}.public-qualified:hover{transform:translateY(-1px);}.public-header-start:hover{transform:translateY(-1px);}.btn-primary{background:linear-gradient(135deg,var(--orange-500),var(--orange-600));color:#fff;box-shadow:var(--shadow-button);}.btn-secondary{background:color-mix(in srgb,var(--surface) 96%,transparent);color:var(--navy-900);border:1px solid var(--line-strong);box-shadow:0 6px 18px rgba(6,20,45,.045);}.btn:disabled{opacity:.48;cursor:not-allowed;transform:none;box-shadow:none;}.rules-start:disabled{opacity:.48;cursor:not-allowed;transform:none;box-shadow:none;}button[aria-disabled="true"]{opacity:.48;cursor:not-allowed;transform:none;box-shadow:none;}.field{display:grid;gap:8px;}.field label{font-size:12px;font-weight:800;color:var(--navy-800);letter-spacing:.025em;}.profile-edit-field label{font-size:12px;font-weight:800;color:var(--navy-800);letter-spacing:.025em;}html[data-theme="dark"] .field label{color:#bad0ef;}html[data-theme="dark"] .profile-edit-field label{color:#bad0ef;}.field input{width:100%;min-height:56px;border:1px solid var(--line-strong);border-radius:15px;background:var(--surface);padding:0 16px;outline:none;box-shadow:inset 0 1px 0 rgba(6,20,45,.015);transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;}.field select{width:100%;min-height:56px;border:1px solid var(--line-strong);border-radius:15px;background:var(--surface);padding:0 16px;outline:none;box-shadow:inset 0 1px 0 rgba(6,20,45,.015);transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;}.profile-edit-field input{width:100%;min-height:54px;border:1px solid var(--line-strong);border-radius:14px;background:var(--surface);padding:0 15px;outline:none;}.profile-edit-field select{width:100%;min-height:54px;border:1px solid var(--line-strong);border-radius:14px;background:var(--surface);padding:0 15px;outline:none;}.otp-boxes input{width:100%;min-height:58px;border:1px solid var(--line-strong);border-radius:15px;background:var(--surface);padding:0 14px;outline:none;}.field input:focus{border-color:var(--blue-600);box-shadow:0 0 0 4px rgba(36,104,201,.12),0 8px 20px rgba(6,20,45,.06);background:var(--surface);}.field select:focus{border-color:var(--blue-600);box-shadow:0 0 0 4px rgba(36,104,201,.12),0 8px 20px rgba(6,20,45,.06);background:var(--surface);}.profile-edit-field input:focus{border-color:var(--blue-600);box-shadow:0 0 0 4px rgba(36,104,201,.12);background:var(--surface);}.profile-edit-field select:focus{border-color:var(--blue-600);box-shadow:0 0 0 4px rgba(36,104,201,.12);background:var(--surface);}.otp-boxes input:focus{border-color:var(--orange-500);box-shadow:0 0 0 4px rgba(244,123,36,.13);background:var(--surface);}.recall-answer:focus{border-color:var(--orange-500);box-shadow:0 0 0 4px rgba(244,123,36,.13);background:var(--surface);}.public-landing{min-height:100vh;background:
    radial-gradient(circle at 78% 25%,rgba(39,113,214,.13),transparent 28rem),
    radial-gradient(circle at 22% 76%,rgba(244,123,36,.09),transparent 23rem),
    linear-gradient(180deg,#fbfcfe 0%,#f1f5fa 68%,#eef3f8 100%);color:#0a1e3f;}html[data-theme="dark"] .public-landing{background:
    radial-gradient(circle at 80% 20%,rgba(244,123,36,.14),transparent 30rem),
    radial-gradient(circle at 18% 82%,rgba(36,104,201,.18),transparent 25rem),
    linear-gradient(145deg,#06142d,#0a244b);color:#f5f8ff;}.public-header{height:88px;padding:0 clamp(22px,4.2vw,62px);display:grid;grid-template-columns:minmax(190px,auto) 1fr auto;align-items:center;gap:28px;border-bottom:1px solid rgba(141,161,188,.2);background:color-mix(in srgb,var(--surface) 93%,transparent);backdrop-filter:blur(22px) saturate(135%);position:sticky;top:0;z-index:100;box-shadow:0 8px 30px rgba(6,20,45,.055);}.public-header-brand{border:0;background:transparent;padding:0;}.public-header-brand img{width:168px;height:60px;object-fit:contain;object-position:left center;}.public-header-nav{display:flex;justify-content:center;gap:4px;}.public-header-nav button{border:0;background:transparent;border-radius:11px;padding:11px 14px;font-weight:750;color:var(--navy-900);font-size:13px;}.public-header-nav button:hover{background:var(--blue-100);color:var(--blue-600);}.public-header-actions{display:flex;align-items:center;gap:10px;position:relative;}.public-header-start{border:0;border-radius:15px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:800;transition:.18s;background:linear-gradient(135deg,var(--orange-500),var(--orange-600));color:#fff;box-shadow:var(--shadow-button);min-height:48px;padding:0 20px;}.public-theme-toggle{width:48px;height:48px;border-radius:15px;border:1px solid var(--line);background:var(--surface);display:grid;place-items:center;border-color:var(--line-strong);box-shadow:0 8px 20px rgba(6,20,45,.055);}.public-mobile-menu-toggle{width:48px;height:48px;border-radius:15px;border:1px solid var(--line);background:var(--surface);display:grid;place-items:center;border-color:var(--line-strong);box-shadow:0 8px 20px rgba(6,20,45,.055);}#welcomeLanguageButton{width:62px;height:48px;border-radius:15px;border:1px solid var(--line);background:var(--surface);display:flex;place-items:center;border-color:var(--line-strong);gap:6px;font-size:13px;font-weight:800;box-shadow:0 8px 20px rgba(6,20,45,.055);}.public-menu-lines{display:grid;gap:4px;}.public-menu-lines i{width:19px;height:2px;border-radius:99px;background:currentColor;}.welcome-language-control{position:relative;}#welcomeLanguageMenu{position:absolute;right:0;top:56px;min-width:158px;padding:8px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow);z-index:120;border-color:var(--line-strong);}#welcomeLanguageMenu button{width:100%;border:0;background:transparent;text-align:left;border-radius:9px;padding:9px 11px;}#welcomeLanguageMenu button:hover{background:var(--blue-100);}.public-mobile-menu{position:absolute;right:0;top:58px;width:min(270px,calc(100vw - 28px));padding:8px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:var(--shadow);}.public-mobile-menu button{border:0;background:transparent;text-align:left;padding:12px;border-radius:10px;font-weight:800;}.public-mobile-menu button:hover{background:var(--blue-100);}.public-shell{width:min(var(--content),calc(100% - 48px));margin:auto;padding:clamp(54px,6vw,86px) 0 38px;}.public-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(410px,.95fr);align-items:center;gap:clamp(34px,6vw,88px);}.public-copy{display:grid;justify-items:start;}.public-kicker{display:inline-flex;gap:9px;align-items:center;padding:9px 14px;border-radius:999px;background:var(--orange-100);color:var(--orange-600);font-size:11px;font-weight:900;letter-spacing:.1em;border:1px solid rgba(233,99,23,.16);box-shadow:0 8px 18px rgba(233,99,23,.08);}.public-title{margin:20px 0 0;font-family:Montserrat,Manrope,sans-serif;line-height:.9;letter-spacing:-.055em;margin-top:24px;}.public-title span{display:block;}.public-title-small{font-size:clamp(38px,4.6vw,66px);font-weight:800;}.public-title-memory{font-size:clamp(72px,8.8vw,128px);font-weight:900;color:var(--navy-900);text-shadow:0 12px 30px rgba(6,20,45,.08);}html[data-theme="dark"] .public-title-memory{color:#f5f8ff;}.public-title-bottom{font-size:clamp(30px,4.2vw,60px);font-weight:800;}.public-title-bottom em{font-style:normal;color:var(--orange-600);}.public-accent{width:90px;height:5px;border-radius:99px;background:var(--orange-500);margin:24px 0 21px;}.public-tagline{font-size:clamp(16px,1.55vw,21px);color:var(--muted);margin:0;max-width:610px;line-height:1.6;}.public-actions{display:flex;gap:13px;margin-top:30px;}.public-start{border:0;border-radius:17px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:800;transition:.18s;background:linear-gradient(135deg,var(--orange-500),var(--orange-600));color:#fff;box-shadow:var(--shadow-button);min-height:60px;padding:0 26px;}.public-qualified{border-radius:17px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:800;transition:.18s;background:var(--surface);color:var(--navy-800);border:1px solid var(--line);min-height:60px;padding:0 25px;border-color:var(--line-strong);box-shadow:0 10px 26px rgba(6,20,45,.065);}.public-action-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;}.public-visual{display:grid;place-items:center;position:relative;min-height:440px;}.public-brain-glow{position:absolute;width:84%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(36,104,201,.24),rgba(244,123,36,.07) 45%,transparent 70%);filter:blur(25px);}.public-brain-wrap{position:relative;width:min(100%,590px);}.public-brain{width:100%;filter:drop-shadow(0 34px 32px rgba(6,20,45,.22));}.public-partners{margin-top:48px;display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--line);border-radius:24px;overflow:hidden;background:var(--surface);box-shadow:var(--shadow-soft);}.public-partner{background:var(--surface);border:0;border-radius:0;padding:18px 16px;text-align:center;box-shadow:none;border-right:1px solid var(--line);}.public-partner-heading{font-size:10px;font-weight:900;letter-spacing:.09em;color:var(--navy-700);text-transform:uppercase;}.public-logo-box{height:68px;display:grid;place-items:center;margin-top:7px;}.public-logo-box img{max-height:52px;max-width:220px;object-fit:contain;}.public-mobile-links{display:none;}.public-integrated-page{position:fixed;inset:88px 0 0;background:
    radial-gradient(circle at 95% 0%,rgba(244,123,36,.07),transparent 23rem),
    var(--canvas);overflow:auto;padding:clamp(32px,4.5vw,58px) max(24px,calc((100vw - var(--content))/2));z-index:80;}.public-page-shell{max-width:var(--content);margin:auto;}.public-page-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:28px;}.public-page-heading{display:flex;gap:18px;align-items:center;}.public-page-icon{width:60px;height:60px;border-radius:18px;background:var(--orange-100);color:var(--orange-600);display:grid;place-items:center;font-size:23px;font-weight:900;border:1px solid rgba(233,99,23,.14);box-shadow:0 10px 25px rgba(233,99,23,.1);}.public-page-kicker{font-size:11px;letter-spacing:.1em;color:var(--orange-600);font-weight:900;}.public-page-head h2{font:800 clamp(28px,4vw,48px)/1 Montserrat,Manrope,sans-serif;margin:6px 0 9px;font-size:clamp(34px,4.2vw,54px);letter-spacing:-.04em;}.public-page-head p{margin:0;color:var(--muted);max-width:660px;font-size:16px;}.public-page-actions{display:flex;gap:10px;}.public-page-nav{min-height:50px;border-radius:15px;border:1px solid var(--line);padding:0 18px;background:var(--surface);font-weight:800;border-color:var(--line-strong);box-shadow:0 7px 20px rgba(6,20,45,.05);}.public-page-start{background:var(--orange-600);color:#fff;border-color:transparent;}.public-page-nav-icon svg{width:18px;height:18px;fill:currentColor;}.public-page-content{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}.information-card{display:grid;grid-template-columns:58px 1fr;gap:16px;background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:24px;min-height:154px;border-color:var(--line-strong);box-shadow:0 14px 36px rgba(6,20,45,.07);align-content:center;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;}.information-card>span{width:52px;height:52px;border-radius:16px;background:var(--blue-100);color:var(--blue-600);display:grid;place-items:center;font-weight:900;font-size:14px;border:1px solid rgba(36,104,201,.13);}.information-card h3{margin:0;font-size:18px;letter-spacing:-.02em;}.information-card p{margin:5px 0 0;color:var(--muted);margin-top:7px;line-height:1.55;}.support-card{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:16px;background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:22px 24px;border-color:var(--line-strong);box-shadow:0 14px 36px rgba(6,20,45,.07);}.support-card p{margin:3px 0 0;color:var(--muted);}.support-card button{min-height:52px;border:0;border-radius:15px;background:#1ea952;color:#fff;padding:0 20px;display:flex;align-items:center;gap:9px;font-weight:900;}.support-card img{width:26px;}.public-qualified-toolbar{display:grid;gap:12px;}.qualified-search-box{display:grid;}.qualified-search-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}.qualified-search-icon svg,.qualified-total-card svg,.verify-student svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}.public-qualified-layout{display:grid;gap:14px;}.public-qualified-table-wrap{background:var(--surface);border:1px solid var(--line-strong);border-radius:18px;overflow:hidden;}.public-qualified-table-wrap table{width:100%;border-collapse:collapse;}.public-qualified-empty{text-align:center;color:var(--muted);padding:20px;}.public-qualified-detail{background:var(--surface);border:1px solid var(--line-strong);border-radius:18px;overflow:hidden;}.qualified-avatar{display:grid;place-items:center;border-radius:50%;background:#edf3ff;color:#194d9c;font-weight:900;}.qualified-category-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:#eaf2ff;color:#2162c9;font-weight:800;}.qualified-category-badge.kids,.qualified-avatar.kids{background:#e7f8ef;color:#12844c;}.qualified-category-badge.adult,.qualified-avatar.adult{background:#fff1e6;color:#c65b0a;}.qualified-category-badge.senior,.qualified-avatar.senior{background:#f2ebff;color:#7147b8;}.verify-student{display:grid;place-items:center;border:1px solid var(--line-strong);background:#fff;color:#0e3975;}.qualified-table-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;}.qualified-pagination{display:flex;align-items:center;gap:6px;}.qualified-pagination button{border:0;background:transparent;}.qualified-pagination button.is-active{background:#0b326d;color:#fff;}.qualified-per-page{display:flex;align-items:center;gap:8px;}.qualified-recent-head,.qualified-detail-head{display:flex;align-items:center;justify-content:space-between;gap:10px;}.qualified-recent-head span,.qualified-live-pill{display:inline-flex;align-items:center;gap:6px;}.qualified-recent-head i,.qualified-live-pill i{width:8px;height:8px;border-radius:50%;background:#2bcf79;}.qualified-recent-list{display:grid;}.qualified-recent-row{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;text-align:left;border:0;background:#fff;}.qualified-recent-copy{display:grid;min-width:0;}.qualified-recent-note{display:flex;align-items:center;gap:10px;}.qualified-detail-grid{display:grid;}.qualified-detail-grid div{background:var(--surface-soft);}.app-header{position:fixed;z-index:1200;left:0;right:0;top:0;height:88px;padding:12px 16px 10px;display:grid;grid-template-columns:42px 46px minmax(0,1fr) 42px auto;align-items:center;gap:10px;background:color-mix(in srgb,var(--surface) 94%,transparent);color:var(--ink);box-shadow:0 10px 32px rgba(6,20,45,.09);border-bottom:1px solid var(--line);backdrop-filter:blur(22px) saturate(140%);}.app-theme{width:40px;height:40px;border-radius:13px;border:1px solid var(--line-strong);background:var(--surface-soft);color:var(--navy-900);}.app-back{width:40px;height:40px;border-radius:13px;border:1px solid var(--line-strong);background:var(--surface-soft);color:var(--navy-900);font-size:25px;}.app-brand img{width:46px;height:42px;object-fit:contain;}.app-heading{min-width:0;display:grid;line-height:1.15;}.app-heading small{font-size:8px;letter-spacing:.12em;color:var(--orange-600);font-weight:900;}.app-heading strong{font-size:16px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:Montserrat,Manrope,sans-serif;letter-spacing:-.025em;color:var(--navy-950);}.app-heading span{font-size:10px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.app-step{text-align:center;font-size:13px;font-weight:900;min-width:50px;padding:7px 8px;border-radius:12px;background:var(--navy-900);color:#fff;box-shadow:0 8px 20px rgba(6,20,45,.14);}.app-progress{position:absolute;left:0;right:0;bottom:0;height:3px;background:rgba(10,30,63,.08);}.app-progress span{display:block;height:100%;background:linear-gradient(90deg,var(--orange-500),#ff9a52);}.app-footer{position:fixed;z-index:1300;left:0;right:0;bottom:0;min-height:86px;padding:12px max(15px,env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) max(15px,env(safe-area-inset-left));display:grid;grid-template-columns:minmax(96px,.36fr) minmax(0,1fr);gap:11px;background:color-mix(in srgb,var(--surface) 96%,transparent);border-top:1px solid var(--line);backdrop-filter:blur(22px) saturate(140%);box-shadow:0 -14px 38px rgba(6,20,45,.11);}.app-footer.single-action{grid-template-columns:1fr;}.app-primary{min-height:56px;border-radius:16px;font-weight:900;border:0;background:linear-gradient(135deg,var(--orange-500),var(--orange-600));color:#fff;box-shadow:var(--shadow-button);}.app-secondary{min-height:56px;border-radius:16px;font-weight:850;border:1px solid var(--line-strong);background:var(--surface);color:var(--navy-900);}.app-dots{position:static;z-index:1310;left:50%;bottom:calc(var(--footer-height) + 7px);transform:translateX(-50%);display:flex;gap:6px;padding:6px 8px 0;border-radius:99px;background:transparent;border:0;justify-content:center;box-shadow:none;}.app-dots i{width:6px;height:6px;border-radius:50%;background:#c1cddd;}.app-dots i.active{width:24px;border-radius:99px;background:var(--orange-500);}.profile-shell{width:min(1050px,100%);margin:0 auto;}.device-root{width:min(1120px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(280px,.72fr) minmax(560px,1.28fr);gap:50px;align-items:start;}.rules-root-final{width:min(1120px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(280px,.68fr) minmax(600px,1.32fr);gap:48px;align-items:start;}.email-minimal-shell{width:min(1080px,100%);margin:0 auto;min-height:calc(100vh - 120px);display:grid;place-items:center;grid-template-columns:minmax(280px,.8fr) minmax(440px,1.2fr);gap:58px;align-items:center;}.otp-minimal-shell{width:min(1020px,100%);margin:0 auto;min-height:calc(100vh - 120px);display:grid;place-items:center;grid-template-columns:minmax(260px,.72fr) minmax(440px,1.28fr);gap:58px;align-items:center;}.email-minimal-brand{text-align:left;margin-bottom:16px;margin:0;align-self:center;}.otp-minimal-brand{text-align:left;margin-bottom:16px;margin:0;align-self:center;}.email-minimal-logo{margin:0 0 22px;object-fit:contain;object-position:left center;}.otp-minimal-logo{width:190px;height:68px;margin:0 0 22px;object-fit:contain;object-position:left center;}.email-minimal-kicker{font-size:11px;letter-spacing:.12em;font-weight:900;color:var(--orange-600);text-transform:uppercase;}.otp-minimal-kicker{font-size:11px;letter-spacing:.12em;font-weight:900;color:var(--orange-600);text-transform:uppercase;}.email-minimal-event{font-weight:800;max-width:390px;margin-top:8px;font:800 clamp(27px,3vw,44px)/1.08 Montserrat,Manrope,sans-serif;letter-spacing:-.045em;color:var(--navy-950);}.otp-minimal-event{font-weight:800;max-width:390px;margin-top:8px;font:800 clamp(27px,3vw,44px)/1.08 Montserrat,Manrope,sans-serif;letter-spacing:-.045em;color:var(--navy-950);}.email-minimal-card{background:var(--surface);border:1px solid var(--line);border-radius:30px;box-shadow:0 26px 80px rgba(6,20,45,.14);width:100%;padding:clamp(28px,4vw,44px);border-color:var(--line-strong);position:relative;overflow:hidden;}.otp-minimal-card{background:var(--surface);border:1px solid var(--line);border-radius:30px;box-shadow:0 26px 80px rgba(6,20,45,.14);width:100%;padding:clamp(28px,4vw,44px);border-color:var(--line-strong);position:relative;overflow:hidden;}.otp-progress{font-size:12px;font-weight:900;color:var(--orange-600);margin-bottom:22px;}.email-minimal-head h2{font:800 clamp(30px,3.5vw,44px)/1.08 Montserrat,Manrope,sans-serif;margin:0;letter-spacing:-.04em;}.otp-minimal-head h2{font:800 clamp(30px,3.5vw,44px)/1.08 Montserrat,Manrope,sans-serif;margin:0;letter-spacing:-.04em;}.selection-id-intro h2{font:800 clamp(34px,4vw,54px)/1.02 Montserrat,Manrope,sans-serif;margin:0;letter-spacing:-.045em;}.device-head h2{font:800 clamp(38px,4.6vw,58px)/.98 Montserrat,Manrope,sans-serif;margin:0;letter-spacing:-.055em;}.rules-head h2{font:800 clamp(38px,4.6vw,58px)/.98 Montserrat,Manrope,sans-serif;margin:0;letter-spacing:-.055em;}.email-minimal-head p{color:var(--muted);margin:8px 0 0;margin-top:10px;font-size:15px;line-height:1.6;}.otp-minimal-head p{color:var(--muted);margin:8px 0 0;margin-top:10px;font-size:15px;line-height:1.6;}.selection-id-intro p{color:var(--muted);margin:8px 0 0;margin-top:10px;font-size:16px;}.device-head p{color:var(--muted);margin:8px 0 0;margin-top:13px;font-size:16px;line-height:1.65;}.rules-head p{color:var(--muted);margin:8px 0 0;margin-top:13px;font-size:16px;line-height:1.65;}.email-minimal-fields{display:grid;gap:16px;margin-top:28px;}.email-minimal-action{margin-top:20px;}.email-minimal-action .btn{width:100%;}.email-minimal-note{text-align:center;color:var(--muted);font-size:12px;margin-top:16px;}.otp-minimal-secure{text-align:center;color:var(--muted);font-size:12px;margin-top:18px;}.resume-student{border:1px solid var(--line);background:linear-gradient(135deg,var(--blue-100),color-mix(in srgb,var(--surface) 82%,var(--blue-100)));border-radius:18px;padding:16px;margin:22px 0 2px;border-color:#c9d9ec;}.resume-student .actions{display:flex;gap:8px;margin-top:10px;}.otp-minimal-code{text-align:center;background:var(--blue-100);border-radius:15px;padding:12px 14px;margin:24px 0 18px;color:var(--blue-600);border:1px solid rgba(36,104,201,.12);}.otp-boxes{position:relative;display:grid;grid-template-columns:repeat(6,1fr);gap:10px;}.otp-mobile-cell{height:62px;border:1px solid var(--line);border-radius:15px;background:var(--surface);display:grid;place-items:center;font-size:25px;font-weight:900;border-color:var(--line-strong);}.otp-mobile-cell.is-filled{border-color:var(--blue-600);background:var(--blue-100);}.otp-mobile-cell.is-current{border-color:var(--orange-500);box-shadow:0 0 0 3px var(--orange-100);}.otp-mobile-native-input{position:absolute;inset:0;opacity:.01;width:100%;height:100%;z-index:2;border:0;background:transparent;color:transparent;}.otp-minimal-note{text-align:center;color:var(--muted);font-size:13px;margin:17px 0;}.otp-minimal-actions{display:flex;gap:9px;justify-content:center;flex-wrap:wrap;}.profile-card{background:var(--surface);border:1px solid var(--line);border-radius:30px;box-shadow:0 28px 85px rgba(6,20,45,.13);padding:0;border-color:var(--line-strong);overflow:hidden;}.profile-head{text-align:left;margin-bottom:26px;max-width:760px;}.profile-step{display:inline-flex;align-items:center;border-radius:99px;background:var(--orange-100);color:var(--orange-600);padding:7px 12px;font-size:11px;font-weight:900;letter-spacing:.08em;margin-bottom:13px;border:1px solid rgba(233,99,23,.13);}.selection-id-badge{display:inline-flex;align-items:center;border-radius:99px;background:var(--orange-100);color:var(--orange-600);padding:7px 11px;font-size:11px;font-weight:900;letter-spacing:.08em;margin-bottom:11px;border:1px solid rgba(18,129,90,.13);box-shadow:0 7px 18px rgba(18,129,90,.08);}.device-step{display:inline-flex;align-items:center;border-radius:99px;background:var(--orange-100);color:var(--orange-600);padding:7px 11px;font-size:11px;font-weight:900;letter-spacing:.08em;margin-bottom:14px;border:1px solid rgba(233,99,23,.13);}.rules-step{display:inline-flex;align-items:center;border-radius:99px;background:var(--orange-100);color:var(--orange-600);padding:7px 11px;font-size:11px;font-weight:900;letter-spacing:.08em;margin-bottom:14px;border:1px solid rgba(233,99,23,.13);}.profile-head h2{font:800 clamp(36px,4.6vw,56px)/1 Montserrat,Manrope,sans-serif;margin:0;letter-spacing:-.055em;}.profile-head p{color:var(--muted);margin:12px 0 0;max-width:690px;font-size:16px;}.profile-body{display:grid;padding:34px;}.profile-section-title{display:flex;align-items:center;gap:13px;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--line);}.profile-icon-badge{width:46px;height:46px;border-radius:14px;background:var(--navy-900);color:#fff;display:grid;place-items:center;box-shadow:0 10px 22px rgba(6,20,45,.15);}.profile-icon-badge svg{width:23px;height:23px;}.profile-section-title h3{margin:0;font-size:20px;letter-spacing:-.025em;}.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px;}.profile-photo-drop{display:grid;grid-template-columns:1fr;gap:24px;padding:26px;border:1.5px dashed #b7c9df;border-radius:22px;background:linear-gradient(145deg,#fbfdff,#f3f7fc);text-align:center;}.profile-photo-copy{text-align:center;align-content:center;}.profile-upload-icon{width:54px;height:54px;border-radius:16px;background:var(--navy-900);color:#fff;display:grid;place-items:center;margin:0 auto 14px;}.profile-upload-icon svg{width:27px;height:27px;}.profile-photo-btn{display:inline-flex;min-height:46px;align-items:center;padding:0 18px;border-radius:13px;background:var(--navy-900);color:#fff;font-weight:800;box-shadow:0 10px 22px rgba(6,20,45,.16);margin:0 auto;}.profile-file-input{position:absolute;opacity:0;pointer-events:none;}.profile-photo-preview-panel{display:grid;place-items:center;min-height:190px;border:1px solid var(--line);border-radius:18px;background:var(--surface);padding:10px;}.profile-photo-preview{width:100%;height:100%;border-radius:14px;object-fit:contain;background:#fff;border:1px solid var(--line);max-height:190px;}.profile-photo-placeholder{width:160px;height:190px;border-radius:16px;object-fit:contain;background:#fff;border:1px solid var(--line);display:grid;place-items:center;color:#9db0c8;}.profile-photo-placeholder svg{width:70px;}.profile-consents{display:grid;gap:10px;margin-top:18px;}.profile-consents .consent{display:flex;gap:10px;align-items:flex-start;color:var(--muted);font-size:13px;padding:14px 15px;border:1px solid var(--line);border-radius:15px;background:var(--surface-soft);}.profile-consents input{width:20px;height:20px;accent-color:var(--orange-600);}.profile-footer{margin-top:16px;padding-top:14px;border-top:1px solid var(--line);margin:0;padding:18px 28px;background:linear-gradient(180deg,#fbfcfe,#f4f7fb);}.profile-error{display:none;color:var(--red-600);font-weight:700;}.profile-error.show{display:block;}.save-status{display:none;}.save-status.show{display:block;color:var(--blue-600);}.selection-id-shell{width:min(1080px,100%);margin:0 auto;display:grid;gap:18px;}.selection-id-intro{text-align:left;margin-bottom:24px;}.selection-id-card{background:var(--surface);border:1px solid var(--line);border-radius:30px;box-shadow:0 30px 88px rgba(6,20,45,.16);display:grid;grid-template-columns:320px minmax(0,1fr);gap:0;padding:0;overflow:hidden;position:relative;border-color:var(--line-strong);}.selection-id-card::before{content:"";position:absolute;inset:0 0 auto;height:5px;background:linear-gradient(90deg,var(--navy-900) 0 68%,var(--orange-500) 68%);}.selection-id-media{display:grid;gap:18px;padding:36px 34px;background:linear-gradient(150deg,var(--navy-950),var(--navy-800));align-content:center;}.selection-id-photo-wrap{position:relative;}.selection-id-qr-wrap{position:relative;}.selection-id-photo-frame{aspect-ratio:1;border-radius:20px;background:#fff;border:0;padding:10px;display:grid;place-items:center;box-shadow:0 15px 35px rgba(0,0,0,.18);}.selection-id-qr-frame{aspect-ratio:1;border-radius:17px;background:#fff;border:0;padding:10px;display:grid;place-items:center;width:154px;justify-self:center;box-shadow:0 13px 30px rgba(0,0,0,.18);}.selection-id-photo-frame img{width:100%;height:100%;object-fit:contain;border-radius:14px;}.selection-id-qr-frame img{width:100%;height:100%;object-fit:contain;border-radius:10px;}.selection-id-verified{position:absolute;right:-4px;bottom:-4px;width:38px;height:38px;border-radius:50%;background:var(--green-600);color:#fff;border:4px solid var(--navy-800);display:grid;place-items:center;font-weight:900;}.selection-id-qr-label{border:0;background:var(--orange-100);color:#9a511d;border-radius:999px;font-size:10px;font-weight:900;padding:7px 11px;margin-top:8px;}.selection-id-details{display:grid;align-content:start;padding:42px 44px 34px;}.selection-id-kicker{font-weight:900;letter-spacing:.14em;color:var(--orange-600);font-size:10px;}.selection-id-id{font:900 clamp(26px,4vw,46px)/1.1 Montserrat,Manrope,sans-serif;color:var(--navy-800);word-break:break-word;margin:6px 0 24px;font-size:clamp(34px,4vw,54px);letter-spacing:-.035em;}.selection-id-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border:1px solid var(--line);border-radius:20px;overflow:hidden;}.selection-id-cell{background:linear-gradient(180deg,var(--surface),var(--surface-soft));border:0;border-radius:0;padding:20px;min-height:100px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;align-content:center;}.selection-id-footer-item{background:transparent;border:0;border-radius:0;padding:0;}.selection-id-cell small{display:block;font-size:10px;font-weight:900;letter-spacing:.08em;color:var(--muted);}.selection-id-footer-item small{display:block;font-size:10px;font-weight:900;letter-spacing:.08em;color:var(--muted);}.selection-id-cell strong{display:block;margin-top:4px;word-break:break-word;font-size:16px;}.selection-id-footer-item strong{display:block;margin-top:4px;word-break:break-word;}.selection-id-footer{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:18px;padding-top:17px;border-top:1px solid var(--line);}.selection-id-footer-logo img{height:38px;width:auto;margin-top:5px;}.selection-id-warning{display:flex;gap:8px;border:1px solid #f0c5a6;background:#fff8ec;border-radius:17px;padding:15px 18px;color:#8a481c;border-color:#f0c28e;}.selection-id-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;}.device-head{text-align:left;margin-bottom:22px;margin:32px 0 0;position:sticky;top:42px;}.rules-head{text-align:left;margin-bottom:22px;margin:32px 0 0;position:sticky;top:42px;}.device-panel{background:var(--surface);border:1px solid var(--line-strong);border-radius:30px;box-shadow:0 28px 80px rgba(6,20,45,.12);padding:30px;}.device-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;}.device-check{min-height:104px;border:1px solid var(--line);border-radius:18px;padding:17px;background:linear-gradient(145deg,var(--surface),var(--surface-soft));display:grid;grid-template-columns:46px 1fr;align-content:center;gap:5px 12px;}.device-check-icon{grid-row:1/3;width:46px;height:46px;border-radius:15px;background:var(--green-100);color:var(--green-600);display:grid;place-items:center;}.device-check.warn .device-check-icon{background:var(--orange-100);color:var(--orange-600);}.device-check-icon svg{width:24px;}.device-check span{font-size:12px;color:var(--muted);}.device-warning{margin-top:16px;border-radius:17px;background:#fff8ec;color:#8a481c;padding:14px 16px;border:1px solid #f0c28e;}.device-consents{display:grid;gap:10px;margin-top:14px;}.device-consent{display:flex;gap:10px;padding:14px 16px;border:1px solid var(--line);border-radius:15px;background:var(--surface);border-color:var(--line-strong);font-size:13px;box-shadow:0 5px 14px rgba(6,20,45,.035);}.device-consent input{width:20px;height:20px;accent-color:var(--orange-600);flex:0 0 auto;}.device-actions{display:flex;justify-content:flex-end;margin-top:18px;}.rules-tabs{display:flex;justify-content:flex-start;gap:9px;margin-bottom:14px;grid-column:2;margin:0 0 14px;}.rules-tab{min-height:46px;padding:0 20px;border:1px solid var(--line);border-radius:13px;background:var(--surface);font-weight:800;border-color:var(--line-strong);}.rules-tab.active{background:var(--navy-900);color:#fff;border-color:transparent;box-shadow:0 10px 24px rgba(6,20,45,.16);}.rules-board{background:var(--surface);border:1px solid var(--line-strong);border-radius:30px;box-shadow:0 28px 80px rgba(6,20,45,.12);padding:28px;grid-column:2;}.rules-pane{display:none;}.rules-pane.active{display:block;}.rules-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;}.rules-item{display:grid;grid-template-columns:44px 1fr;gap:14px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,var(--surface),var(--surface-soft));padding:18px;min-height:126px;border-color:var(--line);align-content:center;}.rules-number{width:42px;height:42px;border-radius:14px;background:var(--blue-100);color:var(--blue-600);display:grid;place-items:center;font-weight:900;font-size:14px;}.rules-copy{display:grid;}.rules-copy small{color:var(--muted);font-size:12px;margin-top:5px;line-height:1.5;}.rules-footer{width:min(1040px,100%);margin:14px 0 0;display:flex;align-items:center;justify-content:space-between;gap:18px;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:17px 18px;box-shadow:0 14px 36px rgba(6,20,45,.08);grid-column:2;border-color:var(--line-strong);}.rules-start{min-height:54px;border:0;border-radius:16px;padding:0 22px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:800;transition:.18s;background:linear-gradient(135deg,var(--orange-500),var(--orange-600));color:#fff;box-shadow:0 12px 24px rgba(237,106,28,.25);min-width:260px;}#screen-memorize{padding:18px;min-height:100vh;background:
    radial-gradient(circle at 84% 6%,rgba(244,123,36,.12),transparent 24rem),
    linear-gradient(145deg,#06142d,#0b2b58);color:#fff;}#screen-recall{padding:18px;min-height:100vh;background:
    radial-gradient(circle at 84% 6%,rgba(244,123,36,.12),transparent 24rem),
    linear-gradient(145deg,#06142d,#0b2b58);color:#fff;}.test-shell{width:min(1360px,100%);height:calc(100vh - 38px);margin:auto;display:grid;grid-template-rows:auto auto auto minmax(0,1fr) auto;gap:11px;}.stage-topbar{display:grid;grid-template-columns:1fr auto;align-items:center;gap:14px;padding:2px 2px 0;}.stage-brand{display:flex;align-items:center;}.stage-logo{width:82px;height:54px;object-fit:contain;}.stage-meta{display:flex;gap:10px;}.stage-clock{background:rgba(255,255,255,.095);border:1px solid rgba(255,255,255,.18);border-radius:16px;padding:9px 14px;text-align:center;min-width:145px;border-color:rgba(255,255,255,.18);box-shadow:0 12px 30px rgba(0,0,0,.13);}.timer-copy{display:flex;align-items:baseline;justify-content:center;gap:6px;}.stage-attempt-box{background:rgba(255,255,255,.095);border:1px solid rgba(255,255,255,.18);border-radius:16px;padding:9px 14px;text-align:center;min-width:105px;border-color:rgba(255,255,255,.18);}.stage-clock strong{font-size:29px;}.block-tabs{display:flex;justify-content:center;gap:10px;}.block-tab{min-width:130px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.085);color:#fff;border-radius:14px;padding:9px 14px;min-height:48px;border-color:rgba(255,255,255,.18);font-weight:800;}.block-tab.active{background:linear-gradient(135deg,var(--orange-500),var(--orange-600));border-color:transparent;box-shadow:0 12px 25px rgba(233,99,23,.25);}.block-tab span{display:block;}.block-tab small{display:block;}.stage-info{display:flex;justify-content:space-between;align-items:center;gap:14px;background:rgba(255,255,255,.085);border:1px solid rgba(255,255,255,.15);border-radius:16px;padding:11px 15px;min-height:56px;border-color:rgba(255,255,255,.15);}.stage-info-main{display:flex;gap:10px;align-items:center;}.stage-info-icon{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--orange-500);box-shadow:0 8px 18px rgba(233,99,23,.22);}.stage-info-line{display:block;}.stage-security{display:flex;gap:10px;color:#c8d8ed;font-size:11px;}.words-card{min-height:0;overflow:auto;padding:16px;background:#fff;color:#10213d;border-radius:22px;box-shadow:0 18px 55px rgba(0,0,0,.19);}.word-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 14px;}.word{display:grid;grid-template-columns:38px 1fr;align-items:center;min-height:42px;border:1px solid #dce5f1;border-radius:11px;padding:5px 10px;font-weight:800;}.idx{color:#70819b;font-weight:900;}.memory-desktop-rows{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}.memory-row{border:1px solid #dce5f1;border-radius:17px;padding:12px;border-color:#dce5f0;background:#fff;}.recall-row{border:1px solid #dce5f1;border-radius:17px;padding:12px;border-color:#dce5f0;background:#fff;}.memory-row header{text-align:center;margin-bottom:9px;}.recall-row header{text-align:center;margin-bottom:8px;}.memory-row-body{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;}.recall-row-body{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;}.memory-word{display:grid;grid-template-columns:28px 1fr;gap:6px;padding:5px;border-bottom:1px solid #edf1f6;min-height:38px;border-bottom-color:#edf1f6;}.recall-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;}.recall-item{display:grid;grid-template-columns:42px 1fr;gap:8px;}.recall-item .idx{display:grid;place-items:center;border-radius:10px;background:#edf3fb;}.recall-answer{width:100%;border:1px solid #d6e1ee;border-radius:12px;background:#f8fafc;outline:none;min-height:46px;resize:none;padding:10px 13px;}.stage-bottom{display:grid;grid-template-columns:repeat(3,1fr) minmax(220px,.8fr);gap:10px;}.stage-submit{background:rgba(255,255,255,.085);border:1px solid rgba(255,255,255,.16);border-radius:15px;padding:10px 12px;min-height:68px;border-color:rgba(255,255,255,.15);}.stage-bottom-item{background:rgba(255,255,255,.085);border:1px solid rgba(255,255,255,.16);border-radius:15px;padding:10px 12px;display:flex;gap:10px;align-items:center;min-height:68px;border-color:rgba(255,255,255,.15);}.stage-bottom-item small{display:block;color:#bcd0e8;}.stage-submit small{display:block;color:#bcd0e8;}.stage-submit .btn{width:100%;}.focus-wrap{position:fixed;inset:0;z-index:5000;background:radial-gradient(circle at 50% 42%,#17417a,#06142d 68%);display:grid;place-items:center;color:#fff;}.focus-content{text-align:center;}.focus-content h2{font:800 clamp(28px,7vw,52px)/1 Montserrat,Manrope,sans-serif;}.focus-wrap .count{width:min(54vw,230px);aspect-ratio:1;margin:auto;border-radius:50%;border:10px solid rgba(255,255,255,.13);font:900 min(28vw,180px)/1 Montserrat,Manrope,sans-serif;color:var(--orange-500);}.result-reference-shell{width:min(1080px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:18px;align-items:start;}.result-card{background:var(--surface);border:1px solid var(--line-strong);border-radius:26px;box-shadow:0 22px 65px rgba(6,20,45,.11);padding:24px;}.result-summary-card{grid-row:span 2;}.result-summary-top{display:grid;grid-template-columns:116px 1fr;gap:20px;align-items:center;}.result-photo img{width:116px;height:116px;border-radius:23px;object-fit:contain;background:var(--surface-soft);border:1px solid var(--line-strong);}.result-copy h2{font:800 34px/1.05 Montserrat,Manrope,sans-serif;margin:0;letter-spacing:-.04em;}.result-copy h3{margin:7px 0;font-size:22px;}.result-status-pill{display:inline-flex;border-radius:99px;padding:8px 12px;background:var(--orange-100);color:var(--orange-600);font-weight:900;font-size:12px;border:1px solid rgba(233,99,23,.13);}.result-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-top:22px;}.result-stat{border:1px solid var(--line);background:linear-gradient(145deg,var(--surface),var(--surface-soft));border-radius:17px;padding:15px;display:flex;align-items:center;gap:9px;min-height:86px;border-color:var(--line);}.result-stat.top{grid-column:span 3;min-height:96px;}.result-stat-icon{font-size:22px;}.result-stat small{display:block;color:var(--muted);}.result-stat strong{font-size:20px;}.result-actions-heading span{font-size:10px;letter-spacing:.1em;color:var(--orange-600);font-weight:900;}.result-actions-heading h3{margin:4px 0 14px;}.result-actions{display:grid;gap:9px;}.result-social-actions{display:grid;gap:9px;}.result-action{min-height:76px;border:1px solid var(--line);border-radius:17px;background:linear-gradient(145deg,var(--surface),var(--surface-soft));padding:12px 14px;display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;text-align:left;border-color:var(--line-strong);}.result-social-action{min-height:68px;border:1px solid var(--line);border-radius:16px;background:var(--surface-soft);padding:10px 13px;display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;text-align:left;border-color:var(--line-strong);}.result-action.primary{background:linear-gradient(135deg,var(--navy-900),var(--navy-700));color:#fff;box-shadow:0 13px 28px rgba(6,20,45,.18);}.result-action-icon{width:44px;height:44px;border-radius:14px;background:var(--blue-100);color:var(--blue-600);display:grid;place-items:center;}.result-social-icon{width:40px;height:40px;border-radius:12px;background:var(--blue-100);color:var(--blue-600);display:grid;place-items:center;}.result-action strong{display:block;}.result-action small{display:block;color:var(--muted);}.result-social-icon svg{width:22px;height:22px;fill:currentColor;}.result-recorded-head{display:flex;gap:11px;}.result-recorded-check{width:34px;height:34px;border-radius:50%;background:var(--green-100);color:var(--green-600);display:grid;place-items:center;}.result-recorded-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:14px;}.result-recorded-box{background:var(--surface-soft);border:1px solid var(--line);border-radius:14px;padding:11px;border-color:var(--line);}.result-recorded-box label{display:block;color:var(--muted);font-size:11px;}.app-dialog{position:fixed;inset:0;z-index:3000;background:rgba(3,13,32,.68);backdrop-filter:blur(8px);display:none;place-items:center;padding:18px;}.photo-change-modal{position:fixed;inset:0;z-index:3000;display:none;place-items:center;padding:18px;}.profile-edit-modal{position:fixed;inset:0;z-index:3000;background:rgba(3,13,32,.68);backdrop-filter:blur(8px);display:none;place-items:center;padding:18px;}.fairplay-overlay{position:fixed;inset:0;display:none;place-items:center;padding:18px;}.fullscreen-gate{position:fixed;inset:0;z-index:3000;background:rgba(3,13,32,.68);backdrop-filter:blur(8px);display:none;place-items:center;padding:18px;}.app-dialog.open{display:grid;}.photo-change-modal.open{display:grid;}.profile-edit-modal.open{display:grid;}.fullscreen-gate.open{display:grid;}.app-dialog-backdrop{position:absolute;inset:0;border:0;background:transparent;}.photo-change-backdrop{position:absolute;inset:0;border:0;background:transparent;}.profile-edit-backdrop{position:absolute;inset:0;border:0;background:transparent;}.app-dialog-card{position:relative;width:min(900px,100%);max-height:calc(100vh - 36px);overflow:auto;background:var(--surface);border:1px solid var(--line-strong);border-radius:28px;box-shadow:0 35px 100px rgba(6,20,45,.25);}.photo-change-card{position:relative;width:min(900px,100%);max-height:calc(100vh - 36px);overflow:auto;background:var(--surface);border:1px solid var(--line-strong);border-radius:28px;box-shadow:0 35px 100px rgba(6,20,45,.25);}.profile-edit-card{position:relative;width:min(900px,100%);max-height:calc(100vh - 36px);overflow:auto;background:var(--surface);border:1px solid var(--line-strong);border-radius:28px;box-shadow:0 35px 100px rgba(6,20,45,.25);}.app-dialog-header{padding:20px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px;}.photo-change-head{padding:20px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px;}.profile-edit-head{padding:20px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px;}.app-dialog-header h2{margin:0;}.photo-change-head h2{margin:0;}.profile-edit-head h2{margin:0;}.app-dialog-header p{margin:4px 0 0;color:var(--muted);}.photo-change-head p{margin:4px 0 0;color:var(--muted);}.profile-edit-head p{margin:4px 0 0;color:var(--muted);}.app-dialog-icon{width:44px;height:44px;border-radius:14px;background:var(--orange-100);color:var(--orange-600);display:grid;place-items:center;font-weight:900;}.app-dialog-close{margin-left:auto;width:40px;height:40px;border-radius:12px;border:1px solid var(--line);background:var(--surface-soft);}.photo-change-close{margin-left:auto;width:40px;height:40px;border-radius:12px;border:1px solid var(--line);background:var(--surface-soft);}.profile-edit-close{margin-left:auto;width:40px;height:40px;border-radius:12px;border:1px solid var(--line);background:var(--surface-soft);}.app-dialog-body{padding:20px;}.profile-edit-body{padding:20px;}.photo-change-body{padding:20px;display:grid;grid-template-columns:220px 1fr;gap:20px;}.photo-change-photo-ring img{width:200px;height:200px;object-fit:contain;border-radius:24px;background:var(--surface-soft);}.photo-change-upload{display:flex;gap:12px;padding:16px;border:1.5px dashed #9cb2cf;border-radius:18px;}.photo-change-actions{display:flex;justify-content:flex-end;gap:10px;padding:16px 20px;border-top:1px solid var(--line);}.profile-edit-actions{display:flex;justify-content:flex-end;gap:10px;padding:16px 20px;border-top:1px solid var(--line);}.profile-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}.profile-edit-field{display:grid;gap:7px;}.profile-edit-field.full{grid-column:1/-1;}.profile-edit-lock-note{display:flex;gap:9px;background:var(--blue-100);padding:12px;border-radius:14px;margin-bottom:14px;}.fairplay-card{position:relative;width:min(900px,100%);max-height:calc(100vh - 36px);overflow:auto;background:var(--surface);border:1px solid var(--line);border-radius:28px;box-shadow:0 35px 100px rgba(0,0,0,.35);padding:26px;text-align:center;}.fullscreen-card{position:relative;width:min(900px,100%);max-height:calc(100vh - 36px);overflow:auto;background:var(--surface);border:1px solid rgba(255,255,255,.15);border-radius:28px;box-shadow:0 35px 100px rgba(0,0,0,.35);padding:26px;text-align:center;}.toast{position:fixed;z-index:6000;left:50%;bottom:24px;transform:translate(-50%,20px);background:var(--navy-950);color:#fff;border-radius:99px;padding:11px 16px;opacity:0;pointer-events:none;transition:.2s;}.toast.show{opacity:1;transform:translate(-50%,0);}.test-watermark{position:fixed;inset:auto 10px 10px auto;z-index:2200;pointer-events:none;color:rgba(255,255,255,.25);font-size:10px;}.dialog-open{overflow:hidden;}body.welcome-gate #emailStage{display:none;}body:not(.welcome-gate) #entryGate{display:none;}[hidden]{display:none;}.stage-logo-dark{display:none;}body.test-mode .stage-logo-light{display:none;}body.test-mode .stage-logo-dark{display:block;}
.public-partner:last-child{border-right:0;}
.information-card:hover{transform:translateY(-3px);border-color:#b8cbe2;box-shadow:0 20px 45px rgba(6,20,45,.1);}
/* How It Works markup keeps the existing mobile card flow; desktop reveals the premium visual layers. */
.how-step-icon,.how-step-chevron,.how-journey-art{display:none;}.how-step-main{display:block;}.how-step-copy{padding:0;}.how-step-copy i{display:none;}
.email-minimal-card::before{content:"";position:absolute;inset:0 0 auto;height:5px;background:linear-gradient(90deg,var(--navy-800),var(--orange-500));}
.otp-minimal-card::before{content:"";position:absolute;inset:0 0 auto;height:5px;background:linear-gradient(90deg,var(--navy-800),var(--orange-500));}
.selection-id-cell:nth-child(2n){border-right:0;}
.selection-id-cell:nth-last-child(-n/**/+2){border-bottom:0;}
.selection-id-actions .btn{min-height:54px;}
.device-check strong{font-size:15px;letter-spacing:-.02em;}
.rules-copy strong{font-size:16px;letter-spacing:-.02em;}
.rules-consent-card{padding:15px 16px;border-radius:15px;border:1px solid var(--line-strong);background:var(--surface-soft);display:grid;grid-template-columns:22px minmax(0,1fr);gap:11px;align-items:start;width:100%;margin-top:14px;}
.screen[hidden],.screen:not(.active){display:none;}
.app-step strong{display:block;font-size:13px;line-height:1.05;letter-spacing:-.02em;}
.app-step small{display:block;margin-top:2px;font-size:7px;line-height:1;letter-spacing:.11em;opacity:.72;}
.secure-stage-footer{min-height:42px;border:1px solid rgba(255,255,255,.15);border-radius:14px;background:linear-gradient(90deg,rgba(3,21,52,.94),rgba(8,54,107,.94));display:flex;align-items:center;justify-content:center;gap:14px;padding:8px 14px;color:#fff;text-align:center;}
.secure-stage-footer strong{color:#ff7a00;font-size:13px;white-space:nowrap;}
.secure-stage-footer i{width:1px;height:18px;background:rgba(255,255,255,.65);}
.secure-stage-footer span{font-size:11px;white-space:nowrap;}
.result-attempt-summary{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;padding:12px;border:1px solid #d7e2ef;border-radius:14px;background:linear-gradient(145deg,#f8fbff,#eef4fb);}
.result-attempt-summary::before{content:"✓";width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#e8f2ff;color:#0a5db8;font-size:19px;font-weight:900;}
.result-attempt-summary strong,.result-attempt-summary small{grid-column:2;display:block;}
.result-attempt-summary strong{align-self:end;font-size:15px;line-height:1.25;}
.result-attempt-summary small{align-self:start;color:var(--muted);line-height:1.5;}
.public-theme-toggle .theme-sun{display:block;}
.public-theme-toggle .theme-moon{display:none;}
html[data-theme="dark"] .public-theme-toggle .theme-sun{display:none;}
html[data-theme="dark"] .public-theme-toggle .theme-moon{display:block;}
.result-social-heading{display:grid;gap:4px;margin-bottom:14px;}
.result-social-heading strong{display:block;}
.result-social-heading small{display:block;color:var(--muted);line-height:1.45;}
.result-recorded-head>div{display:grid;gap:3px;}
.result-recorded-head strong{display:block;}
.result-recorded-head small{display:block;color:var(--muted);line-height:1.45;}
.result-copy-btn{width:34px;height:34px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--navy-900);}
.result-social-action strong{display:block;}
.result-social-action small{display:block;color:var(--muted);margin-top:2px;}
.rules-consent-card input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--orange-600);}
.rules-consent-card span{display:grid;gap:3px;min-width:0;}
.rules-consent-card strong{display:block;}
.rules-consent-card small{display:block;color:var(--muted);line-height:1.45;}
.public-registration-home{display:none;}
@media (max-width:900px){
  :root{--visible-height:100dvh;--visible-top:0px;}
  #desktopProgress,.desktop-progress{display:none!important;}
  html,body{height:100%;overscroll-behavior:none;}
  body{background:#f6f8fb;}
  body.welcome-gate .screen{padding:0;height:var(--visible-height);min-height:0;overflow:hidden;}
  .app-header[hidden],.app-footer[hidden],.app-dots[hidden]{display:none;}
  body.app-flow,body.test-mode{height:var(--visible-height);overflow:hidden;}
  body.app-flow .app{height:var(--visible-height);min-height:0;overflow:hidden;}
  body.app-flow .main{position:fixed;min-height:0;overflow:hidden;padding:0;}
  body.app-flow .screen{height:100%;min-height:0;overflow:hidden;}
  body.app-flow .screen.active{display:flex;flex-direction:column;justify-content:center;}
  body.app-flow #screen-email.active{justify-content:center;overflow:hidden;}
  body.app-flow #screen-profile.active,body.app-flow #screen-id.active,body.app-flow #screen-device.active,body.app-flow #screen-rules.active,body.app-flow #screen-result.active{justify-content:center;}
  body.keyboard-open.app-flow .main{top:calc(var(--mobile-header-height) + var(--visible-top));height:calc(var(--visible-height) - var(--mobile-header-height) - var(--visible-top));overflow-y:auto;}
  body.keyboard-open.app-flow .screen.active{justify-content:flex-start;padding-top:8px;overflow:visible;}
  body.keyboard-open .app-footer,body.keyboard-open .app-dots{display:none;}
  .screen[hidden],.screen:not(.active){display:none;}

  /* Public mobile home: one viewport, approved GMC identity, no document scroll. */
  .public-landing{height:var(--visible-height);min-height:0;overflow:hidden;padding:0;background:#f8f9fb;color:#0a1e3f;}
  .public-header{height:72px;padding:0 12px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;position:relative;top:auto;z-index:180;background:#fff;border:0;border-bottom:1px solid #e4e8ef;border-radius:0;box-shadow:0 8px 22px rgba(3,16,40,.08);}
  .public-header-brand{justify-self:start;background:transparent;border:0;padding:0;box-shadow:none;}
  .public-header-brand .gmc-inline-wordmark{display:inline-flex!important;width:126px;height:44px;align-items:center;justify-content:flex-start;}
  .public-header-brand .gmc-inline-wordmark>img{display:block!important;width:126px;height:44px;object-fit:contain;object-position:left center;visibility:visible;opacity:1;}
  .public-header-nav,.public-header-start,.public-mobile-menu{display:none;}
  .public-registration-open{display:none!important;}
  .public-mobile-menu:not([hidden]){position:absolute;display:grid;right:0;top:52px;width:210px;padding:8px;gap:5px;border:1px solid #dce3ec;border-radius:15px;background:#fff;box-shadow:0 18px 44px rgba(5,24,55,.18);z-index:600;}
  .public-mobile-menu:not([hidden]) button{min-height:42px;padding:0 13px;border:0;border-radius:10px;background:#f7f9fc;color:#0a2b5d;text-align:left;font-size:12px;font-weight:800;}
  .public-mobile-menu:not([hidden]) button:active{background:#fff3e5;color:#a76100;}
  .public-mobile-menu-toggle{display:grid;width:46px;height:46px;border:1px solid #d9e2ee;border-radius:13px;background:#fff;color:#0a2b5d;box-shadow:0 5px 14px rgba(7,25,57,.05);}
  .public-header-actions{justify-self:end;display:flex;align-items:center;gap:6px;}
  #welcomeLanguageButton,.public-theme-toggle{height:46px;border:1px solid #d9e2ee;border-radius:13px;background:#fff;color:#0a2b5d;box-shadow:0 5px 14px rgba(7,25,57,.05);}
  #welcomeLanguageButton{width:68px;justify-content:center;font-size:14px;}
  .public-theme-toggle{width:46px;}
  #welcomeLanguageMenu{top:48px;right:0;border-radius:13px;min-width:145px;}
  .public-shell{width:100%;height:calc(var(--visible-height) - 72px);padding:6px 10px 8px;display:grid;grid-template-rows:minmax(0,1fr) 68px;gap:7px;overflow:hidden;background:radial-gradient(circle at 50% 72%,rgba(47,109,190,.09),transparent 17rem),linear-gradient(180deg,#fff,#f8faff 72%,#fff);}
  .public-hero{position:relative;display:flex;flex-direction:column;align-items:center;min-height:0;height:100%;padding:12px 13px 3px;border:0;border-radius:0;overflow:hidden;background:transparent;box-shadow:none;color:#0a2b5d;}
  .public-copy{position:relative;z-index:2;display:grid;justify-items:center;text-align:center;width:100%;}
  .public-kicker{padding:6px 11px;border:1px solid #e8c994;background:#fffaf2;color:#a86708;font-size:8px;letter-spacing:.09em;}
  .public-title{margin:10px 0 0;line-height:1;letter-spacing:-.04em;}
  .public-title span{display:block;}
  .public-title-small{font-size:31px;line-height:1.04;color:#0a2b5d;margin-bottom:3px;}
  .public-title-memory{font-size:59px;line-height:.94;color:#c88709;background:linear-gradient(180deg,#e8b83f,#a96500);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:none;margin-bottom:5px;}
  .public-title-bottom{font-size:29px;line-height:1.04;color:#0a2b5d;}
  .public-title-bottom em{color:#0a2b5d;}
  .public-accent{width:96px;height:3px;margin:11px 0 9px;background:linear-gradient(90deg,#c9880c 0 42%,transparent 42% 48%,#c9880c 48% 100%);}
  .public-tagline{font-size:13px;line-height:1.38;color:#4e6078;max-width:310px;}
  .public-actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px;}
  .public-start,.public-qualified,.public-registration-home{min-height:46px;border-radius:13px;padding:0 8px;font-size:10px;justify-content:center;gap:6px;white-space:nowrap;font-weight:800;}
  .public-qualified{display:inline-flex;grid-column:1;grid-row:1;background:#fff;color:#0a2b5d;border:1px solid #d9ae62;box-shadow:0 7px 18px rgba(6,24,58,.06);}
  .public-registration-home{display:inline-flex;grid-column:2;grid-row:1;align-items:center;background:#fff;color:#0a2b5d;border:1px solid #d9ae62;box-shadow:0 7px 18px rgba(6,24,58,.06);}
  .public-registration-home .public-registration-dot{width:7px;height:7px;border-radius:50%;background:#c88709;box-shadow:0 0 0 4px rgba(200,135,9,.11);}
  .public-start{display:inline-flex;grid-column:1/-1;grid-row:2;min-height:50px;font-size:12px;}
  .public-label-desktop{display:none;}
  .public-action-icon svg{width:18px;height:18px;}
  .public-visual{position:relative;z-index:1;min-height:0;margin:2px auto 0;flex:1;display:grid;place-items:center;overflow:visible;}
  .public-brain-wrap{display:grid;place-items:center;}
  .public-brain{object-fit:contain;transform-origin:center;filter:drop-shadow(0 14px 14px rgba(4,20,48,.22));}
  .public-brain-glow{width:100%;background:radial-gradient(circle,rgba(39,103,190,.12),transparent 67%);}
  .public-partners{height:68px;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:#fff;border:1px solid #dfe6ef;border-radius:18px;box-shadow:0 9px 22px rgba(7,25,57,.08);overflow:hidden;}
  .public-partner{min-width:0;padding:7px 5px;border:0;border-right:1px solid #e4e9f0;background:#fff;box-shadow:none;}
  .public-partner:last-child{border-right:0;}
  .public-partner-heading{font-size:6px;color:#33445f;}
  .public-logo-box{height:38px;margin-top:2px;}
  .public-logo-box img{max-height:31px;max-width:92px;}
  .public-mobile-links{display:none;}
  .public-mobile-links button{min-width:0;border:0;border-radius:9px;background:transparent;color:#66758c;display:grid;place-items:center;align-content:center;gap:1px;padding:3px 2px;font-size:15px;font-weight:800;}
  .public-mobile-links button small{max-width:100%;font-size:7px;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:800;}
  .public-mobile-links button.is-active{color:#f26e05;background:#fff2e7;}
  .public-integrated-page{position:fixed;inset:72px 0 0;overflow:auto;background:#f6f8fb;z-index:170;}
  .public-page-shell{max-width:none;}
  .public-page-head{display:grid;}
  .public-page-heading{display:grid;background:#fff;border:1px solid #e0e5ec;}
  .public-page-icon{background:#fff0e4;color:#f26e05;}
  .public-page-kicker{color:#f26e05;}
  
  
  .public-page-actions{display:grid;grid-template-columns:1fr 1fr;}
  
  .public-page-start{background:#f5740b;}
  .public-page-content{display:grid;grid-template-columns:1fr;}
  .information-card{border:1px solid #e1e6ed;background:#fff;transform:none;}
  .information-card>span{background:#fff0e4;color:#f26e05;}
  
  
  .support-card{display:grid;}
  .support-card button{min-height:40px;border-radius:11px;}
  .public-qualified-toolbar{display:grid;grid-template-columns:1fr;gap:7px;margin-bottom:8px;}
  .public-qualified-toolbar input{min-height:44px;border-radius:12px;padding:0 12px;}
  .public-qualified-toolbar strong{justify-self:start;padding:7px 10px;border-radius:10px;background:#fff0e4;color:#f26e05;}
  .public-qualified-layout{display:grid;grid-template-columns:1fr;gap:8px;}
  
  .public-qualified-table-wrap table,.public-qualified-table-wrap tbody{display:block;}
  
  .public-qualified-table-wrap tr{margin-bottom:7px;}
  .public-qualified-table-wrap td{grid-template-columns:96px 1fr;gap:6px;border:0;}
  .public-qualified-table-wrap td::before{font-size:8px;font-weight:900;color:#7a879a;text-transform:uppercase;letter-spacing:.04em;}
  .public-qualified-detail{padding:12px;border-radius:13px;}

  /* Compact application chrome shared by every app screen. */
  .app-header{color:#0a2b5d;border:0;backdrop-filter:none;}
  .app-security-badge{display:none;align-items:center;gap:6px;color:#0a2b5d;font-size:8px;line-height:1.1;white-space:nowrap;}
  .app-security-badge span{width:31px;height:31px;border:1px solid #d9e1eb;border-radius:10px;display:grid;place-items:center;font-size:18px;background:#f7f9fc;}
  
  
  
  .app-back,.app-theme{width:34px;height:34px;padding:0;border-radius:10px;border:1px solid #d9e1eb;background:#f8fafc;color:#0a2b5d;display:grid;place-items:center;line-height:1;}
  .app-brand{display:grid;place-items:center;}
  .app-brand img{background:transparent;border-radius:0;padding:0;}
  .app-heading small{display:none;}
  .app-heading strong{color:#0a2b5d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .app-heading span{color:#718096;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .app-step{color:#fff;box-shadow:none;}
  
  
  .app-progress{height:3px;background:#edf0f4;}
  .app-progress span{background:linear-gradient(90deg,#d18b0b,#efbd55);}
  .app-dots{position:fixed;z-index:1250;top:68px;left:0;right:0;bottom:auto;transform:none;height:14px;padding:3px;display:flex;justify-content:center;align-items:center;background:transparent;border:0;border-radius:0;box-shadow:none;pointer-events:none;}
  .app-dots i{width:5px;height:5px;border-radius:50%;background:#c5ceda;}
  .app-dots i.active{width:18px;border-radius:99px;background:#f5740b;}
  .app-footer{align-items:end;border-top:1px solid #dde4ee;}
  
  .app-primary{box-shadow:0 8px 18px rgba(243,106,0,.22);}
  .app-secondary{color:#0b2f63;}

  /* Verify and OTP retain the approved app identity while fitting smaller screens. */
  .email-minimal-shell,.otp-minimal-shell{min-height:auto;display:block;}
  .email-minimal-brand,.otp-minimal-brand{display:none;}
  .email-minimal-card,.otp-minimal-card,.profile-card,.device-panel,.rules-board,.result-card{width:100%;border:1px solid #e0e5ec;background:#fff;}
  .email-minimal-card{border:0;border-radius:0;background:transparent;box-shadow:none;}
  
  .email-minimal-card::before,.otp-minimal-card::before{height:4px;background:#f5740b;}
  .email-minimal-head h2{font-size:24px;line-height:1.08;text-align:center;color:#0a2b5d;}
  .otp-minimal-head h2{font-size:27px;line-height:1.08;text-align:center;color:#0a2b5d;}
  .email-minimal-head p{font-size:11px;line-height:1.38;text-align:center;color:#64748b;margin-top:5px;}
  .otp-minimal-head p{font-size:13px;line-height:1.45;text-align:center;color:#64748b;}
  
  .otp-minimal-actions,.profile-footer #saveProfileBtn,.selection-id-actions,.device-actions,.rules-footer .rules-start{display:none;}
  .email-minimal-action{display:block;}
  .field{gap:5px;}
  .field label,.profile-edit-field label{font-size:11px;color:#17345e;text-transform:none;}
  .field input,.field select,.profile-edit-field input,.profile-edit-field select,.otp-boxes input{min-height:46px;border-radius:12px;background:#fbfcfe;border-color:#d6dee9;padding:0 13px;font-size:14px;}
  .otp-minimal-progress{font-size:9px;}
  .otp-minimal-code{border-radius:10px;background:#fff2e7;color:#f26e05;}
  .otp-boxes{gap:4px;}
  .otp-mobile-cell{border-radius:10px;background:#f8f9fb;}
  .verify-mini-progress{display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;gap:6px;margin:0 0 7px;padding:6px 8px;border-radius:13px;background:#f8fafc;border:1px solid #e4e9f1;}
  .verify-mini-step{display:flex;align-items:center;gap:5px;color:#5d6f89;font-size:10px;font-weight:800;}
  .verify-mini-step b{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;border:2px solid #cdd7e5;background:#fff;color:#6f7f95;}
  .verify-mini-step.is-active{color:#092b5d;}
  .verify-mini-step.is-active b{border-color:#ff7a00;background:#ff7a00;color:#fff;box-shadow:0 5px 12px rgba(255,122,0,.2);}
  .verify-mini-progress>i{height:2px;background:#d8e0ea;border-radius:99px;}
  .verify-card-brand{display:grid;justify-items:center;text-align:center;margin-bottom:6px;}
  .verify-card-brand img{width:126px;height:47px;object-fit:contain;}
  .verify-card-brand span{font-size:8px;font-weight:900;letter-spacing:.11em;color:#ff7500;margin-top:3px;}
  .verify-field label{display:flex;align-items:center;gap:6px;}
  .verify-field label span{color:#ff7500;font-size:15px;line-height:1;}
  .verify-email-notice{display:grid;grid-template-columns:34px 1fr;gap:8px;align-items:center;margin-top:7px;border:1px solid #dce4ee;border-radius:12px;background:#f8fafc;color:#334a69;}
  .verify-email-notice-icon{width:35px;height:35px;border-radius:10px;display:grid;place-items:center;background:#eaf2ff;color:#0f57b8;font-size:18px;font-weight:900;}
  .verify-email-notice p{margin:0;line-height:1.42;}
  .email-minimal-action{margin-top:8px;}
  .email-minimal-action .btn{width:100%;min-height:46px;border-radius:12px;padding:0 13px;display:grid;grid-template-columns:28px 1fr 28px;font-size:13px;}
  .email-minimal-action .btn span,.email-minimal-action .btn b{font-size:18px;}
  .email-minimal-note{margin-top:6px;font-size:9px;color:#60708a;}
  .verify-trust-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-radius:12px;background:#f8fafc;border:1px solid #edf0f4;}
  .verify-trust-strip>div{min-width:0;display:grid;grid-template-columns:24px 1fr;gap:5px;align-items:center;padding:0 5px;border-right:1px solid #e0e6ee;}
  .verify-trust-strip>div:last-child{border-right:0;}
  .verify-trust-strip b{width:22px;height:22px;border-radius:7px;background:#eaf2ff;color:#155ab3;display:grid;place-items:center;}
  .verify-trust-strip span{min-width:0;display:grid;}
  .verify-trust-strip strong{font-size:8px;color:#17345e;}
  .verify-trust-strip small{font-size:6px;color:#6c7c92;line-height:1.2;}
  .resume-student{margin:8px 0 0;padding:10px 11px;border-radius:13px;}
  .resume-student>div:first-child{display:grid;gap:3px;min-width:0;}
  .resume-student>div:first-child strong{display:block;font-size:14px;line-height:1.25;}
  .resume-student>div:first-child small{display:block;font-size:10px;line-height:1.35;color:#4f627e;overflow-wrap:anywhere;}
  .resume-student .actions{margin-top:7px;display:grid;grid-template-columns:1fr;}
  .resume-student .actions .btn{min-height:40px;font-size:11px;}
  body[data-screen="email"].app-flow .main{overflow:hidden;}
  body[data-screen="email"].app-flow .screen{padding:4px 8px 6px;}

  /* Profile: three true app panels, four fields per detail panel, compact photo panel. */
  .profile-head,.selection-id-intro,.device-head,.rules-head{display:none;}
  .profile-shell,.selection-id-shell,.device-root,.rules-root-final{width:100%;height:100%;margin:0;}
  .profile-card{height:auto;max-height:100%;padding:0;overflow:hidden;display:flex;flex-direction:column;}
  .profile-body{flex:0 0 auto;min-height:0;display:block;}
  .profile-panel{height:auto;min-height:0;}
  .profile-panel[hidden]{display:none;}
  .profile-section{height:auto;display:flex;flex-direction:column;}
  .profile-section-title{flex:0 0 auto;display:grid;gap:10px;align-items:center;margin:0 0 12px;padding:0 0 10px;border-bottom:1px solid #e4e9f0;}
  .profile-icon-badge{background:#082f66;box-shadow:none;}
  .profile-icon-badge svg{width:19px;height:19px;}
  .profile-section-title small{display:block;letter-spacing:.09em;font-weight:900;color:#f26e05;margin-bottom:1px;}
  .profile-section-title h3{line-height:1.12;margin:0;}
  .profile-section-title p{line-height:1.35;margin:3px 0 0;color:#6c7b91;}
  .profile-grid{grid-template-columns:1fr;}
  
  
  .profile-photo-drop{align-items:center;gap:10px;border-radius:13px;text-align:left;background:#fafafa;}
  .profile-photo-copy{text-align:left;}
  .profile-upload-icon{width:34px;height:34px;margin:0 0 6px;border-radius:10px;background:#fff0e4;color:#f26e05;}
  .profile-upload-icon svg{width:18px;height:18px;}
  .profile-photo-copy h4{margin:0 0 2px;}
  .profile-photo-copy p{margin:0 0 7px;color:#6d7c91;}
  .profile-photo-btn{padding:0 12px;border-radius:10px;margin:0;}
  .profile-photo-preview-panel{border-radius:12px;padding:5px;overflow:hidden;}
  .profile-photo-preview{display:block;width:100%;height:100%;max-width:100%;max-height:100%;border-radius:9px;object-fit:contain;position:static;}
  .profile-photo-placeholder{width:100%;height:100%;border-radius:9px;}
  .profile-photo-placeholder svg{width:42px;}
  .profile-consents{gap:7px;margin-top:9px;}
  .profile-consents .consent{border-radius:11px;background:#f8f9fb;line-height:1.35;}
  .profile-consents input{width:17px;height:17px;}
  .profile-footer{flex:0 0 auto;margin:0;background:#f7f9fc;border-top:1px solid #e3e8ef;}
  .profile-required-note{display:flex;align-items:center;gap:7px;font-size:8px;color:#53647c;}
  .profile-note-icon{width:23px;height:23px;flex:0 0 23px;display:grid;place-items:center;color:#0b376f;}
  .profile-note-icon svg{width:20px;height:20px;}
  .profile-status-wrap{font-size:8px;}

  /* Selection ID: compact identity card with two-column metadata. */
  .selection-id-shell{display:flex;flex-direction:column;}
  .selection-id-card{display:flex;flex-direction:column;border:1px solid #dfe5ed;background:#fff;box-shadow:0 12px 30px rgba(7,25,57,.12);}
  .selection-id-media{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  .selection-id-photo-wrap,.selection-id-qr-wrap{min-width:0;}
  .selection-id-photo-frame,.selection-id-qr-frame{position:relative;background:#fff;overflow:hidden;box-shadow:none;}
  .selection-id-qr-frame{justify-self:stretch;}
  .selection-id-photo-frame img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;border-radius:9px;position:static;}
  .selection-id-qr-frame img{display:block;max-width:100%;max-height:100%;border-radius:9px;position:static;}
  .selection-id-verified{width:25px;height:25px;border-width:3px;font-size:11px;}
  .selection-id-qr-label{z-index:2;margin:0;white-space:nowrap;}
  .selection-id-details{flex:0 0 auto;min-height:0;flex-direction:column;}
  .selection-id-kicker{font-size:8px;color:#c17a05;}
  .selection-id-id{font-size:24px;margin:3px 0 9px;color:#0b2f63;}
  .selection-id-grid{grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid #e2e7ee;border-radius:11px;overflow:hidden;}
  .selection-id-cell{min-height:51px;padding:8px 9px;border-right:1px solid #e5e9ef;border-bottom:1px solid #e5e9ef;display:grid;gap:2px;}
  .selection-id-cell:nth-child(2n){border-right:0;}
  .selection-id-cell:nth-last-child(-n/**/+2){border-bottom:0;}
  .selection-id-cell small,.selection-id-footer-item small{font-size:7px;}
  
  .selection-id-footer{grid-template-columns:1fr 1fr 1.25fr;gap:7px;margin-top:8px;padding-top:8px;}
  .selection-id-footer-item{padding:0;min-width:0;}
  
  .selection-id-footer-logo{grid-column:auto;}
  .selection-id-footer-logo img{height:24px;margin-top:2px;}
  .selection-id-warning{flex:0 0 auto;border-radius:10px;}

  /* Device checks: two compact columns; confirmations remain a separate panel. */
  .device-panel{overflow:hidden;display:flex;flex-direction:column;}
  .device-panel-section{height:auto;min-height:0;}
  .device-panel-section[hidden]{display:none;}
  .device-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .device-check{gap:3px 9px;background:#fff;border:1px solid #e1e6ed;}
  
  
  .device-check strong{line-height:1.2;}
  .device-check span{line-height:1.25;}
  .device-panel-section[data-device-panel="2"]:not([hidden]){display:flex;flex-direction:column;}
  .device-warning{line-height:1.4;}
  .device-consents{margin:0;}
  .device-consent{line-height:1.4;}
  

  /* Rules: three cards per app panel, all visible without screen scrolling. */
  .rules-tabs{display:none;}
  .rules-board{overflow:hidden;}
  .rules-pane{height:auto;}
  .rules-panel-section[hidden]{display:none;}
  .rules-panel-heading{display:grid;gap:2px;margin:0 0 10px;padding:0 2px 9px;border-bottom:1px solid #e3e8ef;}
  .rules-panel-heading small{letter-spacing:.09em;font-weight:900;}
  .rules-panel-heading h3{margin:0;font-size:18px;line-height:1.15;color:#0a2b5d;}
  .rules-list{height:auto;grid-template-columns:1fr;}
  .rules-item{height:auto;background:#fff;border:1px solid #e1e6ed;align-content:center;}
  
  .rules-copy strong{line-height:1.2;}
  .rules-copy small{margin-top:3px;}
  .rules-footer{display:none;}
  .rules-consent-card{border-radius:11px;margin-top:9px;gap:9px;}
  
  
  .rules-consent-card small{line-height:1.35;}

  /* Results remain panel-based and compact. */
  .result-reference-shell{height:100%;grid-template-columns:1fr;gap:8px;}
  .result-card{height:100%;border-radius:17px;overflow:hidden;}
  .result-summary-top{gap:10px;}
  
  .result-copy h2{font-size:18px;}
  
  .result-status-pill{padding:5px 8px;}
  .result-stats{grid-template-columns:repeat(2,1fr);}
  .result-stat,.result-stat.top{grid-column:auto;border-radius:11px;}
  
  
  .result-action,.result-social-action{min-height:52px;border-radius:11px;padding:7px 9px;grid-template-columns:32px 1fr auto;}
  .result-action-icon,.result-social-icon{width:30px;height:30px;border-radius:9px;background:#fff0e4;color:#f26e05;}

  /* Secure competition stages. */
  body.test-mode .app{height:var(--visible-height);overflow:hidden;}
  body.test-mode .main{position:fixed;overflow:hidden;}
  body.test-mode .screen.active{display:block;height:100%;min-height:100%;background:linear-gradient(150deg,#06183a,#0a2f65);}
  .test-shell{height:calc(var(--visible-height) - 16px);grid-template-rows:auto auto auto minmax(0,1fr) auto auto;gap:6px;}
  .stage-topbar{grid-template-columns:1fr auto;}
  .stage-topbar{min-height:48px;padding:5px 8px;border:1px solid rgba(255,255,255,.15);border-radius:13px;background:rgba(3,22,52,.7);}
  .stage-logo{width:76px;height:38px;}
  .stage-attempt-box{display:none;}
  .stage-clock{min-width:110px;padding:6px 10px;border-radius:12px;}
  .stage-clock strong{font-size:20px;}
  .block-tabs{gap:6px;}
  .block-tab{min-width:0;flex:1;min-height:40px;padding:6px;border-radius:10px;font-size:10px;}
  .block-tab.active{background:#f5740b;box-shadow:0 8px 18px rgba(245,116,11,.23);}
  .stage-info{min-height:44px;padding:7px 9px;border-radius:11px;}
  .stage-info-main{font-size:9px;}
  .stage-security{display:none;}
  .words-card{padding:8px;border-radius:14px;}
  #screen-memorize .words-card{overflow:hidden;}
  #screen-memorize .word-grid{height:100%;gap:5px 7px;}
  #screen-memorize .word{min-height:0;padding:4px 8px;border-radius:9px;font-size:13px;grid-template-columns:28px 1fr;}
  #screen-memorize .word .idx{font-size:12px;}
  .memory-desktop-rows{display:none;}
  .recall-grid{grid-template-columns:1fr;gap:4px;}
  .recall-item{grid-template-columns:34px 1fr;gap:6px;}
  .recall-answer{min-height:38px;border-radius:9px;padding:7px 9px;font-size:11px;}
  .stage-bottom{grid-template-columns:1fr;gap:6px;}
  .stage-bottom-item{display:none;}
  .stage-submit{min-height:52px;padding:6px;border-radius:11px;}
  .stage-submit .btn{min-height:42px;border-radius:10px;font-size:11px;}
  .secure-stage-footer{min-height:34px;border-radius:10px;gap:9px;padding:5px 8px;}
  .secure-stage-footer strong{font-size:10px;}
  .secure-stage-footer i{height:15px;}
  .secure-stage-footer span{font-size:8px;}
  body.keyboard-open #screen-recall .stage-topbar,body.keyboard-open #screen-recall .block-tabs,body.keyboard-open #screen-recall .stage-info{display:none;}
  body.keyboard-open #screen-recall .test-shell{grid-template-rows:minmax(0,1fr) auto;height:var(--visible-height);}
  body.keyboard-open #screen-recall .words-card{grid-row:1;overflow-y:auto;}
  body.keyboard-open #screen-recall .stage-bottom{grid-row:2;}

  /* Mobile dialogs. */
  .app-dialog,.photo-change-modal,.profile-edit-modal{padding:8px;}
  .app-dialog-card,.photo-change-card,.profile-edit-card{max-height:calc(var(--visible-height) - 16px);border-radius:18px;}
  .photo-change-body,.profile-edit-grid{grid-template-columns:1fr;}
  .profile-edit-field.full{grid-column:auto;}
  html[data-theme="dark"] body.app-flow .main,
  html[data-theme="dark"] body.app-flow .screen{background:#07172f;}
  html[data-theme="dark"] .app-header{background:#091c39;border-bottom-color:#17355f;color:#fff;}
  html[data-theme="dark"] .app-heading strong,
  html[data-theme="dark"] .app-security-badge{color:#fff;}
  html[data-theme="dark"] .app-heading span{color:#b9cae1;}
  html[data-theme="dark"] .app-back,
  html[data-theme="dark"] .app-theme,
  html[data-theme="dark"] .app-security-badge span{background:#10294e;border-color:#27466f;color:#fff;}
}

/* PUBLIC-PREMIUM-ALIGNMENT-V7 — public information pages and stable mobile hero. */
.public-page-icon svg{width:31px;height:31px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.public-view-footer{min-height:72px;margin:28px 0 0;padding:0 24px;display:flex;align-items:center;justify-content:center;gap:16px;border-radius:20px 20px 0 0;background:linear-gradient(105deg,#062451,#07366f);color:#fff;box-shadow:0 -8px 22px rgba(5,24,55,.08);}
.public-view-footer strong{color:#ff7a00;font-weight:900;white-space:nowrap;}
.public-view-footer i{width:1px;height:24px;background:rgba(255,255,255,.65);}
.public-view-footer span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}

@media (max-width:900px){
  .public-start{background:linear-gradient(135deg,#ff8418,#ef6500);color:#fff;box-shadow:0 10px 22px rgba(239,101,0,.27);}
  .public-visual{width:min(92vw,360px);}
    
  .public-integrated-page{padding:14px 12px 0;}
  .public-page-head{gap:12px;margin-bottom:14px;}
  .public-page-heading{width:100%;grid-template-columns:54px minmax(0,1fr);gap:13px;align-items:center;padding:17px 16px;border-color:#d9e2ed;border-radius:19px;box-shadow:0 9px 24px rgba(7,25,57,.07);}
  .public-page-icon{width:52px;height:52px;border-radius:15px;font-size:18px;}
  .public-page-icon svg{width:28px;height:28px;}
  .public-page-kicker{font-size:8px;}
  .public-page-head h2{font-size:clamp(25px,7vw,32px);line-height:1.04;margin:3px 0 5px;}
  .public-page-head p{font-size:12px;line-height:1.45;}
  .public-page-actions{width:100%;gap:9px;}
  .public-page-nav{min-height:54px;border-radius:14px;padding:0 12px;font-size:12px;display:flex;align-items:center;justify-content:center;gap:7px;}
  .public-page-nav-icon{display:grid;place-items:center;}
  .public-page-nav-icon svg{width:20px;height:20px;}
  .public-page-content{gap:10px;}
  .information-card{min-height:86px;grid-template-columns:48px minmax(0,1fr);gap:12px;padding:14px;border-color:#dfe6ef;border-radius:16px;box-shadow:0 6px 18px rgba(7,25,57,.05);}
  .information-card>span{width:44px;height:44px;border-radius:12px;font-size:12px;}
  .information-card h3{font-size:16px;margin:0 0 3px;}
  .information-card p{font-size:12px;line-height:1.45;}
  .support-card{grid-template-columns:minmax(0,1fr) 78px;align-items:stretch;gap:12px;padding:14px;border-radius:17px;}
  .support-card>div{align-self:center;}
  .support-card strong{font-size:14px;line-height:1.35;}
  .support-card p{font-size:11px;line-height:1.45;}
  .support-card button.support-whatsapp{width:78px;min-height:92px;border-radius:14px;padding:9px 6px;display:grid;place-items:center;align-content:center;gap:5px;font-size:10px;line-height:1.1;}
  .support-card button.support-whatsapp img{width:30px;}
  .public-view-footer{min-height:62px;margin:16px -12px 0;padding:0 14px;border-radius:0;font-size:10px;gap:9px;}
  .public-view-footer i{height:20px;}
}

@media (max-width:900px) and (max-height:700px){
  }

/* SECURE-STAGE-FOOTER-V15 — one-minute resend feedback and balanced consent. */
.app-secondary.otp-cooldown,
#appSecondary.otp-cooldown{color:#65758a;border-color:#d8e0ea;background:#f5f7fa;}

@media (max-width:900px){
  #screen-profile [data-profile-panel="2"]:not([hidden]){
    
    
    
    gap:0;
  }
          #screen-profile [data-profile-panel="2"] + .profile-footer,
  #screen-profile .profile-footer{margin-top:0;}
}

@media (max-width:900px) and (max-height:700px){
        }

/* SECURE-RESULT-FLOW-V12
   Root corrections for the Selection ID hand-off, secure-stage exit lock,
   Mistake Review header and viewport-fitted Result Actions. */
.fairplay-overlay{
  z-index:2147483000;
  background:#020711;
  backdrop-filter:none;
}
.fairplay-overlay.show{display:grid;}
body.fairplay-locked #screen-memorize .test-shell,
body.fairplay-locked #screen-recall .test-shell,
body.fairplay-locked .focus-wrap{visibility:hidden;}
html body.fairplay-locked{background:#020711;}

.mistake-review-brand{flex:1 1 auto;}
.mistake-review-brand h2{white-space:nowrap;}
.mistake-review-top-actions{margin-left:auto;}

@media (max-width:900px){
  .mistake-review-topbar{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
  }
  .mistake-review-brand{gap:0;}
  
  
  

  html.gmc-result-active,
  body.gmc-result-active{
    width:100%;
    height:var(--visible-height,100dvh);
    min-height:0;
    overflow:hidden;
    overscroll-behavior:none;
  }
  body.gmc-result-active>.app,
  body.gmc-result-active>.app>main.main{
    min-height:0;
    overflow:hidden;
  }
  body.gmc-result-active #screen-result.active{
    height:100%;
    min-height:0;
    overflow:hidden;
    padding:8px 12px;
  }
  #screen-result .result-reference-shell{
    height:100%;
    min-height:0;
    overflow:hidden;
  }
  #screen-result .result-panel:not([hidden]){
    min-height:0;
    overflow:hidden;
  }

  body[data-result-panel="actions"] #screen-result .result-actions-card{
    align-self:stretch;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:12px 14px;
  }
  body[data-result-panel="actions"] #screen-result .result-actions-heading h3{
    font-size:clamp(21px,6.2vw,27px);
    line-height:1.08;
    margin:3px 0 9px;
  }
  body[data-result-panel="actions"] #screen-result .result-final-actions{gap:7px;}
  body[data-result-panel="actions"] #screen-result .result-attempt-summary{
    order:-1;
    min-height:58px;
    padding:8px 10px;
  }
  body[data-result-panel="actions"] #screen-result .result-attempt-summary strong{font-size:13px;}
  body[data-result-panel="actions"] #screen-result .result-attempt-summary small{
    font-size:9.5px;
    line-height:1.3;
    -webkit-line-clamp:2;
  }
  body[data-result-panel="actions"] #screen-result .result-action,
  body[data-result-panel="actions"] #screen-result .result-action.primary{
    min-height:56px;
    padding:7px 10px;
  }

  
  body[data-result-panel="share"] #screen-result .result-social-card{
    
    
    
    
    
    padding:13px 14px;
  }
  body[data-result-panel="share"] #screen-result .result-social-heading{margin-bottom:10px;}
  body[data-result-panel="share"] #screen-result .result-social-heading strong{
    
    line-height:1.15;
  }
  body[data-result-panel="share"] #screen-result .result-social-heading small{
    display:block;
    font-size:10px;
  }
  
  body[data-result-panel="share"] #screen-result .result-social-action{
    
    padding:8px 10px;
    grid-template-columns:36px minmax(0,1fr);
  }
  body[data-result-panel="share"] #screen-result .result-social-action strong{
    font-size:13px;
    line-height:1.2;
  }
  body[data-result-panel="share"] #screen-result .result-social-action small{
    font-size:9px;
    line-height:1.25;
  }
  body[data-result-panel="share"] #screen-result .result-recorded{
    
    padding:10px 12px;
  }
  body[data-result-panel="share"] #screen-result .result-recorded-head strong{
    font-size:13px;
    line-height:1.2;
    white-space:normal;
  }
  body[data-result-panel="share"] #screen-result .result-recorded-head small{
    
    font-size:9px;
  }
  body[data-result-panel="share"] #screen-result .result-recorded-meta{margin-top:8px;}
  body[data-result-panel="share"] #screen-result .result-recorded-box{min-height:44px;}
  body[data-result-panel="share"] #screen-result .result-recorded-box strong{font-size:11px;}
}

@media (max-width:900px) and (max-height:700px){
  body[data-result-panel="share"] #screen-result .result-social-heading small{display:none;}
  body[data-result-panel="share"] #screen-result .result-social-action{min-height:52px;}
  body[data-result-panel="share"] #screen-result .result-recorded-head small{display:none;}
}

@media (max-width:900px) and (max-height:620px){
  }

/* IDENTITY-CORRECTION-WORKFLOW-V8 — verified resume density and protected requests. */
.identity-correction-request{margin-top:18px;padding:17px;border:1px solid #bdd2ee;border-radius:17px;background:linear-gradient(145deg,#f7faff,#eef5ff);}
.identity-correction-request h3{margin:5px 0 4px;color:var(--navy-900);}
.identity-correction-request p{margin:0 0 14px;color:var(--muted);}
.identity-correction-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.identity-correction-grid label{display:grid;gap:7px;font-weight:800;}
.identity-correction-grid label.full{grid-column:1/-1;}
.identity-correction-grid input{min-height:48px;border:1px solid var(--line-strong);border-radius:12px;background:var(--surface);padding:0 13px;}
.identity-correction-grid small{font-weight:600;color:var(--muted);}
.identity-correction-request .btn{margin-top:13px;min-height:48px;}

@media (max-width:900px){
  body.gmc-email-remembered-mode #screen-email .email-minimal-card{grid-template-rows:auto minmax(218px,1fr) auto auto;align-content:stretch;}
  
  body.gmc-email-remembered-mode #screen-email .email-minimal-head p{margin-top:7px;}
  
  body.gmc-email-remembered-mode #screen-email .resume-student{flex-direction:column;border-radius:17px;}
  
  body.gmc-email-remembered-mode #screen-email .resume-student>div:first-child small{margin-top:5px;}
  
  body.gmc-email-remembered-mode #screen-email .resume-student .actions .btn{border-radius:14px;}
  body.gmc-email-remembered-mode #screen-email .verify-email-notice{margin:0;padding:12px;}
  body.gmc-email-remembered-mode #screen-email .verify-email-notice p{font-size:12px;line-height:1.45;}
  body.gmc-email-remembered-mode #screen-email .verify-trust-strip{margin:0;padding:9px 4px;}
  body.gmc-email-remembered-mode #screen-email .verify-trust-strip strong{font-size:10px;}
  body.gmc-email-remembered-mode #screen-email .verify-trust-strip small{font-size:8px;}
  .identity-correction-grid{grid-template-columns:1fr;}
  .identity-correction-grid label.full{grid-column:auto;}
}

@media (max-width:900px) and (max-height:720px){
  body.gmc-email-remembered-mode #screen-email .email-minimal-card{grid-template-rows:auto minmax(184px,1fr) auto auto;gap:7px;padding:10px 12px;}
  
  
  }
@media (max-width:540px){
  .public-title-memory{font-size:55px;}
  .public-title-small{font-size:29px;}
  .public-title-bottom{font-size:27px;}
  .selection-id-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .otp-boxes{grid-template-columns:repeat(6,minmax(0,1fr));}
}
@media (max-width:900px) and (max-height:700px){
  :root{--footer-height:58px;--mobile-header-height:62px;--mobile-content-top:75px;}
  .app-header{height:62px;padding-top:5px;padding-bottom:5px;}
  .app-dots{top:62px;height:13px;}
  .app-footer{min-height:58px;padding:4px 9px;}
  .app-primary,.app-secondary{min-height:42px;}
  body.app-flow .screen{padding:7px 9px 9px;}
  .profile-body,.device-panel,.rules-board{padding:9px;}
  .profile-section-title{margin-bottom:7px;padding-bottom:7px;}
  .profile-grid{gap:6px;}
  .profile-grid .field input,.profile-grid .field select{min-height:41px;}
  .device-grid,.rules-list{gap:5px;}
  .selection-id-media{flex-basis:114px;padding:9px;}
  .selection-id-photo-frame,.selection-id-qr-frame{height:94px;}
  .selection-id-details{padding:8px 10px;}
  .public-header{height:66px;}
  .public-shell{height:calc(var(--visible-height) - 66px);grid-template-rows:minmax(0,1fr) 62px;padding:7px;}
  .public-landing{padding:0;}
  .public-hero{padding-top:11px;}
  .public-title{margin-top:7px;}
  .public-title-memory{font-size:54px;}
  .public-title-small{font-size:29px;}
  .public-title-bottom{font-size:27px;}
  .public-tagline{font-size:11px;}
  .public-actions{margin-top:8px;}
  .public-start,.public-qualified{min-height:43px;}
  .public-visual{margin-top:4px;}
  .public-brain{max-height:225px;transform:scale(1.14);}
}
@media (max-width:900px) and (max-height:620px){
  :root{--footer-height:58px;--mobile-header-height:58px;--mobile-content-top:70px;}
  .app-header{height:58px;}
  .app-dots{top:58px;height:12px;}
  .app-footer{min-height:58px;}
  .app-primary,.app-secondary{min-height:40px;}
  .email-minimal-card,.otp-minimal-card{padding:12px 13px;}
  .email-minimal-head h2,.otp-minimal-head h2{font-size:23px;}
  .email-minimal-head p,.otp-minimal-head p{font-size:11px;margin-top:6px;}
  .verify-card-brand{margin-bottom:7px;}
  .verify-card-brand img{width:125px;height:46px;}
  .verify-mini-progress{margin-bottom:9px;padding:6px 8px;}
  .profile-section-title p{display:none;}
  .profile-body,.device-panel,.rules-board{padding:7px;}
  .profile-grid .field input,.profile-grid .field select{min-height:38px;}
  .profile-grid{gap:4px;}
  .profile-footer{padding:5px 9px;}
  .device-grid{grid-template-rows:repeat(2,88px);}
  .device-check{height:88px;padding:8px;}
  .device-consent{min-height:58px;padding:7px 9px;}
  .rules-item{min-height:65px;padding:7px 8px;}
  .selection-id-media{flex-basis:102px;padding:7px;}
  .selection-id-photo-frame,.selection-id-qr-frame{height:86px;}
  .selection-id-cell{min-height:40px;padding:5px 7px;}
  .selection-id-warning{padding:5px 7px;}
  .public-title-memory{font-size:49px;}
  .public-title-small{font-size:26px;}
  .public-title-bottom{font-size:24px;}
  .public-brain{max-height:180px;transform:scale(1.1);}
}

/* V4 interactive home illustration and post-rules language choice. */

.public-brain-gesture{
  position:relative;display:block;width:100%;height:auto;aspect-ratio:4/3;overflow:hidden;
  touch-action:pan-y;user-select:none;cursor:grab;isolation:isolate;perspective:1100px;
}
.public-brain-gesture.is-dragging{cursor:grabbing;}
.public-brain-slide{
  position:absolute;inset:0;display:grid;place-items:center;
  transform:translate3d(-112%,0,0);
  transition:transform .72s cubic-bezier(.22,.72,.24,1);
  pointer-events:none;will-change:transform;z-index:1;transform-style:preserve-3d;
}
.public-brain-slide.is-active{transform:translate3d(0,0,0);z-index:3;}
.public-brain-slide.is-enter-left{transform:translate3d(-112%,0,0);z-index:4;}
.public-brain-slide.is-enter-right{transform:translate3d(112%,0,0);z-index:4;}
.public-brain-slide.is-exit-right{transform:translate3d(112%,0,0);z-index:2;}
.public-brain-slide.is-exit-left{transform:translate3d(-112%,0,0);z-index:2;}
.public-brain-slide .public-brain{
  --brain-x:0px;--brain-y:0px;--brain-rx:0deg;--brain-ry:0deg;
  display:block;width:100%;height:100%;object-fit:contain;background:transparent;pointer-events:none;
  transform-origin:50% 52%;transform-style:preserve-3d;
  filter:drop-shadow(0 24px 24px rgba(6,20,45,.20));
  will-change:transform;
}
.public-brain-slide.is-active .public-brain{
  animation:gmcBrainCarouselOrbit 7s ease-in-out infinite;
}
@keyframes gmcBrainCarouselOrbit{
  0%,100%{transform:translate3d(calc(var(--brain-x) - 4px),calc(var(--brain-y) + 1px),2px) rotateX(calc(var(--brain-rx) - 2deg)) rotateY(calc(var(--brain-ry) - 5deg)) rotateZ(-.35deg) scale(1.005);}
  25%{transform:translate3d(calc(var(--brain-x) + 3px),calc(var(--brain-y) - 6px),12px) rotateX(calc(var(--brain-rx) + 3deg)) rotateY(calc(var(--brain-ry) + 4deg)) rotateZ(.25deg) scale(1.015);}
  50%{transform:translate3d(calc(var(--brain-x) + 6px),calc(var(--brain-y) + 1px),7px) rotateX(calc(var(--brain-rx) - 1deg)) rotateY(calc(var(--brain-ry) + 7deg)) rotateZ(.45deg) scale(1.01);}
  75%{transform:translate3d(calc(var(--brain-x) - 2px),calc(var(--brain-y) + 6px),10px) rotateX(calc(var(--brain-rx) + 4deg)) rotateY(calc(var(--brain-ry) - 3deg)) rotateZ(-.2deg) scale(1.012);}
}
.public-brain-dots{position:absolute;left:50%;bottom:-13px;z-index:9;display:flex;align-items:center;justify-content:center;gap:7px;transform:translateX(-50%);padding:5px 8px;border:1px solid rgba(13,47,92,.08);border-radius:999px;background:rgba(255,255,255,.72);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);}
.public-brain-dot{width:7px;height:7px;min-width:7px;min-height:7px;padding:0;border:0;border-radius:50%;background:#b8c0cb;cursor:pointer;transition:width .22s ease,background .22s ease;}
.public-brain-dot.is-active{width:20px;border-radius:999px;background:var(--blue-600);}
.public-brain-dot:focus-visible{outline:2px solid var(--blue-600);outline-offset:3px;}
.test-language-intro{padding:15px 16px;border-radius:16px;background:var(--surface-soft);color:var(--muted);}
.test-language-grid{margin-top:16px;}
.test-language-grid button{color:var(--navy-900);}
.test-language-grid button:hover,.test-language-grid button:focus-visible{outline:none;}
.test-language-grid button span{display:grid;gap:3px;}
.test-language-grid button span small{line-height:1.35;}
.test-language-grid button>i{font-style:normal;color:var(--orange-600);font-size:22px;}
.test-language-cancel{display:block;margin:14px auto 0;padding:8px 14px;}

@media (max-width:900px) and (min-height:621px){
  body.app-flow .screen.active{justify-content:stretch;}
  body.app-flow #screen-email.active{justify-content:flex-start;}
  #screen-email .email-stage{width:100%;height:100%;min-height:0;}
  #screen-email .email-minimal-shell,#screen-otp .otp-minimal-shell{width:100%;height:100%;min-height:0;}
  #screen-email .email-minimal-card,#screen-otp .otp-minimal-card{height:100%;min-height:0;display:flex;flex-direction:column;justify-content:space-evenly;}
  #screen-email .email-minimal-card{padding-top:10px;padding-bottom:10px;}
  #screen-email .email-minimal-head h2{font-size:clamp(24px,6.3vw,31px);}
  #screen-email .email-minimal-head p{font-size:clamp(11px,3vw,14px);}
  #screen-email .verify-mini-progress{margin-bottom:8px;}
  #screen-email .verify-card-brand img{width:clamp(126px,38vw,162px);height:auto;}
  #screen-email .field label{font-size:12px;}
  #screen-email .field input{min-height:50px;font-size:15px;}
  #screen-email .verify-email-notice p{font-size:11px;}
  #screen-email .verify-trust-strip strong{font-size:9px;}
  #screen-email .verify-trust-strip small{font-size:7px;}
  #screen-profile .profile-shell,#screen-profile .profile-card{height:100%;min-height:0;}
  #screen-profile .profile-card{max-height:none;}
  #screen-profile .profile-body{flex:1 1 auto;display:flex;padding:15px;min-height:0;}
  #screen-profile .profile-panel,#screen-profile .profile-section{flex:1 1 auto;width:100%;height:100%;min-height:0;}
  #screen-profile .profile-section{justify-content:flex-start;}
  #screen-profile .profile-grid{flex:1 1 auto;align-content:space-evenly;gap:12px;}
  #screen-profile .profile-grid .field label{font-size:13px;}
  #screen-profile .profile-grid .field input,#screen-profile .profile-grid .field select{min-height:52px;font-size:16px;}
  #screen-profile .profile-section-title h3{font-size:20px;}
  #screen-profile .profile-section-title p{font-size:10px;}
  #screen-profile .profile-photo-drop{min-height:150px;}
  #screen-profile .profile-photo-copy h4{font-size:15px;}
  #screen-profile .profile-photo-copy p{font-size:9px;}
  #screen-profile .profile-photo-btn{min-height:39px;font-size:11px;}
  #screen-profile .profile-consents{flex:1 1 auto;align-content:space-evenly;margin-top:10px;}
  #screen-profile .profile-consents .consent{min-height:66px;align-items:center;padding:12px;font-size:11px;line-height:1.45;}
  #screen-profile .profile-footer{padding:9px 13px;}
  #screen-profile .profile-required-note,#screen-profile .profile-status-wrap{font-size:9px;}
}

@media (max-width:900px){
  .public-visual{pointer-events:auto;}
  .public-brain-gesture{height:auto;min-height:100%;}
  .profile-photo-preview[hidden]{display:none;}
  .test-language-grid{gap:9px;}
  .test-language-grid button{border-radius:15px;padding:12px;grid-template-columns:44px 1fr auto;}
  .test-language-grid button>b{width:44px;height:44px;border-radius:12px;}
  .test-language-grid button span strong{font-size:16px;}
  .app-dialog-body{padding:15px;}
}

@media (prefers-reduced-motion:reduce){
  .public-brain-slide{transition:none;}
  .public-brain-slide.is-active .public-brain{animation:none;}
}

/* SECURE-RESULT-ALIGNMENT-V6 — canonical mobile composition.
   Home and the three secure competition stages are intentionally excluded. */
.app-brand-footer{position:fixed;z-index:1290;left:0;right:0;bottom:0;min-height:44px;padding:0 18px;display:flex;align-items:center;justify-content:center;gap:12px;background:linear-gradient(105deg,#062451,#07366f);color:#fff;font-size:12px;box-shadow:0 -8px 22px rgba(5,24,55,.08);}
.app-brand-footer[hidden]{display:none;}
.app-brand-footer strong{color:#ff7a00;font-weight:900;white-space:nowrap;}
.app-brand-footer i{width:1px;height:20px;background:rgba(255,255,255,.65);}
.app-brand-footer span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}

@media (max-width:900px){
  :root{--brand-footer-height:44px;--footer-height:66px;--mobile-header-height:76px;--mobile-content-top:76px;}
  body.app-flow .main{inset:calc(var(--visible-top) + var(--mobile-content-top)) 0 calc(var(--footer-height) + var(--brand-footer-height));background:#f7f9fc;}
  body.app-flow .screen{padding:7px 13px 8px;background:#f7f9fc;}
  body[data-screen="email"].app-flow .main{bottom:calc(var(--footer-height) + var(--brand-footer-height));}
  body.keyboard-open.app-flow .main{bottom:0;}
  body.keyboard-open .app-brand-footer{display:none;}

  .app-header{height:var(--mobile-header-height);padding:8px 13px;grid-template-columns:100px minmax(0,1fr) 42px 58px;gap:7px;background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:none;}
  body[data-screen="email"] .app-header{grid-template-columns:100px minmax(0,1fr) 42px 58px;}
  body[data-screen="email"] .app-brand,body[data-screen="email"] .app-theme,body[data-screen="email"] .app-step{display:grid;}
  body[data-screen="email"] .app-security-badge{display:none;}
  .app-theme{width:42px;height:42px;border-radius:12px;background:#fff;border:1px solid #d9e2ee;}
  .app-theme{font-size:18px;}
  .app-brand{justify-content:start;}
  .app-brand img{width:100px;height:52px;object-fit:contain;object-position:left center;}
  .app-heading strong{font-size:15px;line-height:1.15;font-weight:900;}
  .app-heading span{font-size:10px;line-height:1.25;margin-top:3px;}
  .app-step{min-width:58px;height:50px;padding:6px;border-radius:13px;background:linear-gradient(145deg,#0b3977,#062654);display:grid;align-content:center;}
  .app-step strong{font-size:13px;}
  .app-step small{font-size:8px;letter-spacing:.08em;}
  body.app-flow .app-progress,body.app-flow .app-dots{display:none;}
  .app-footer{bottom:var(--brand-footer-height);min-height:var(--footer-height);padding:7px 13px;grid-template-columns:minmax(112px,.4fr) 1fr;gap:10px;background:transparent;border:0;box-shadow:none;backdrop-filter:none;}
  .app-primary,.app-secondary{min-height:52px;border-radius:13px;font-size:14px;}
  .app-primary{background:linear-gradient(135deg,#ff8c0a,#ff6700);}
  .app-secondary{background:#fff;border:1px solid #d8e2ee;}
  .app-brand-footer{height:var(--brand-footer-height);min-height:var(--brand-footer-height);padding:0 14px;gap:10px;font-size:10px;}
  .app-brand-footer strong{font-size:11px;}
  .app-brand-footer i{height:18px;}

  /* Verify / OTP */
  .email-minimal-card,.otp-minimal-card,.profile-card,.device-panel,.rules-board,.result-card{border-radius:20px;border-color:#dde5ef;box-shadow:0 10px 28px rgba(7,35,73,.08);}
  .email-minimal-card{height:100%;padding:16px 14px 12px;display:flex;flex-direction:column;justify-content:flex-start;gap:13px;}
  .otp-minimal-card{height:100%;padding:20px 17px;display:flex;flex-direction:column;justify-content:center;}
  .email-minimal-card::before,.otp-minimal-card::before{display:none;}
  .verify-card-brand,.email-minimal-action{display:none;}
  .email-minimal-head h2,.otp-minimal-head h2{font-size:25px;}
  .email-minimal-head p,.otp-minimal-head p{font-size:12px;}
  .email-minimal-fields{gap:10px;margin-top:10px;}
  .field label{font-size:12px;}
  .field input,.field select{min-height:50px;font-size:15px;}
  .verify-email-notice{padding:10px;}
  .verify-email-notice p{font-size:11px;}
  .verify-trust-strip{padding:8px 4px;margin-top:0;}
  .gmc-email-remembered-mode .resume-student{margin:5px 0 0;}
  .gmc-email-remembered-mode .resume-student>div:first-child{gap:5px;}
  .gmc-email-remembered-mode .resume-student .actions{margin-top:12px;}
  .otp-mobile-cell{height:54px;font-size:22px;}
  .otp-minimal-code{padding:10px;margin:16px 0;}
  .otp-minimal-note{font-size:12px;}

  /* Profile */
  .profile-body{padding:15px;}
  .profile-section-title{grid-template-columns:46px 1fr;margin-bottom:14px;padding-bottom:12px;}
  .profile-icon-badge{width:46px;height:46px;border-radius:13px;}
  .profile-section-title small{font-size:8px;}
  .profile-section-title h3{font-size:20px;}
  .profile-section-title p{font-size:10px;}
  .profile-grid{gap:12px;}
  .profile-grid .field label{font-size:13px;}
  .profile-grid .field input,.profile-grid .field select{min-height:54px;font-size:16px;}
  .profile-photo-drop{grid-template-columns:minmax(0,1fr) 132px;min-height:154px;padding:13px;}
  .profile-photo-preview-panel{width:132px;height:132px;min-height:132px;}
  .profile-photo-copy h4{font-size:16px;}
  .profile-photo-copy p{font-size:10px;}
  .profile-photo-btn{min-height:40px;font-size:12px;}
  .profile-consents .consent{min-height:68px;padding:12px;font-size:11px;align-items:center;}
  .profile-footer{padding:9px 13px;}

  /* Selection identity */
  .selection-id-shell{gap:7px;justify-content:flex-start;}
  .selection-id-card{height:auto;flex:0 0 auto;min-height:0;border-radius:20px;padding:10px;gap:8px;overflow:hidden;}
  .selection-id-card::before{display:none;}
  .selection-id-media{display:block;flex:0 0 auto;padding:11px 12px 9px;border-radius:16px;background:linear-gradient(145deg,#0a58ac,#06387d 55%,#06275a);}
  .selection-id-media-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:center;}
  .selection-id-photo-frame,.selection-id-qr-frame{width:min(100%,130px);aspect-ratio:1;height:auto;padding:5px;border-radius:12px;justify-self:center;}
  .selection-id-photo-wrap,.selection-id-qr-wrap{display:grid;justify-items:center;align-items:center;}
  .selection-id-verified{display:none!important;}
  .selection-id-photo-frame img{object-fit:cover;object-position:center 18%;}
  .selection-id-qr-frame{display:grid;grid-template-rows:minmax(0,1fr) 23px;align-items:stretch;}
  .selection-id-qr-frame img{width:100%;height:100%;min-height:0;object-fit:contain;}
  .selection-id-qr-label{position:static;left:auto;right:auto;bottom:auto;transform:none;width:100%;display:grid;place-items:center;text-align:center;border-radius:0 0 8px 8px;font-size:7px;padding:2px 4px;box-shadow:none;}
  .selection-id-media-title{display:grid;justify-items:center;margin-top:7px;color:#fff;text-align:center;}
  .selection-id-media-title::before{content:attr(data-selection-id);display:block;min-height:26px;font:900 24px/1.08 Montserrat,Manrope,sans-serif;letter-spacing:.045em;color:#fff;overflow-wrap:anywhere;}
  .selection-id-media-title small{margin-top:3px;font-size:7px;letter-spacing:.07em;opacity:.86;}
  .selection-id-media-title strong{font-size:23px;letter-spacing:.05em;font-family:Montserrat,Manrope,sans-serif;}
  .selection-id-details{padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #e1e7ef;border-radius:13px;overflow:hidden;background:#fff;}
  .selection-id-details>.selection-id-kicker,.selection-id-details>.selection-id-id{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip-path:inset(50%);}
  .selection-id-grid,.selection-id-footer{display:contents;}
  .selection-id-grid>.selection-id-cell,
  .selection-id-footer>.selection-id-footer-item{display:grid;align-content:center;min-width:0;min-height:67px;padding:9px 6px;text-align:center;border:0;border-right:1px solid #e5e9ef;background:#fff;}
  .selection-id-grid>.selection-id-cell{border-bottom:1px solid #e5e9ef;}
  .selection-id-grid>.selection-id-cell:nth-child(3n),
  .selection-id-footer>.selection-id-footer-item:nth-child(3){border-right:0;}
  .selection-id-cell small{font-size:8.5px;line-height:1.25;}
  .selection-id-cell strong{font-size:11.5px;line-height:1.22;overflow-wrap:anywhere;word-break:normal;}
  .selection-id-footer-item small{font-size:8.5px;line-height:1.25;}
  .selection-id-footer-item strong{font-size:10.5px;line-height:1.22;overflow-wrap:anywhere;}
  .selection-id-warning{display:grid;grid-template-columns:29px minmax(0,1fr);align-items:center;gap:9px;min-height:58px;margin:0 0 2px;padding:9px 11px;font-size:10px;line-height:1.35;background:#f4f8ff;border-color:#b9d2fb;}
  .selection-id-warning strong{font-size:0;}
  .selection-id-warning strong::after{content:"i";width:27px;height:27px;border-radius:50%;background:#0a58b5;color:#fff;display:grid;place-items:center;font-size:14px;}
  .selection-id-warning-copy{display:block;min-width:0;color:#76532d;font-weight:650;font-size:clamp(8.5px,2.45vw,10.5px);line-height:1.3;}

  /* Device references */
  .device-panel{height:100%;max-height:none;padding:16px;border-radius:20px;}
  .reference-panel-heading{display:grid;gap:3px;margin-bottom:13px;padding:0 2px 12px;border-bottom:1px solid #dfe6ef;}
  .reference-panel-heading small{font-size:9px;letter-spacing:.1em;font-weight:900;color:#f06d00;}
  .reference-panel-heading h3{margin:0;font:800 25px/1.08 Montserrat,Manrope,sans-serif;color:#082d61;letter-spacing:-.03em;}
  .device-panel-section:not([hidden]){display:flex;flex-direction:column;height:100%;min-height:0;}
  .device-grid{flex:1 1 auto;min-height:0;grid-template-rows:repeat(2,minmax(0,1fr));height:auto;gap:10px;}
  .device-check{height:auto;min-height:0;padding:12px 8px;grid-template-columns:1fr;grid-template-rows:auto auto auto;text-align:center;place-items:center;align-content:space-evenly;border-radius:15px;}
  .device-check-icon{width:68px;height:68px;border-radius:50%;background:#edf8ef;color:#119544;}
  .device-check-icon svg{width:38px;height:38px;}
  .device-check.warn .device-check-icon{background:#fff2e6;color:#dc6e00;}
  .device-check strong{font-size:13px;}
  .device-check span{font-size:12px;font-weight:800;color:#119544;padding:4px 9px;border-radius:9px;background:#f0fbf2;}
  .device-check.warn span{color:#cf6500;background:#fff5ea;}
  .device-panel-section[data-device-panel="2"]:not([hidden]){justify-content:flex-start;}
  .device-warning{display:grid;grid-template-columns:38px 1fr;align-items:center;gap:11px;margin:0 0 12px;padding:12px;border-radius:13px;background:#f2f7ff;border-color:#b8d1fb;font-size:12px;}
  .device-warning b{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#dceaff;color:#0958b9;font-size:20px;}
  
  .device-consent{border-radius:14px;background:#fff;font-size:13px;font-weight:750;color:#092d61;}
  .device-consent-icon{width:54px;height:54px;border-radius:12px;background:linear-gradient(145deg,#1576dc,#0753b2);color:#fff;place-items:center;font-size:26px;}
  .device-consent:has(input:not(:checked)) .device-consent-icon{background:#edf2f8;color:#9bacc1;}
  

  /* Rules / Fair Play references */
  .rules-board{height:100%;max-height:none;padding:14px 16px;border-radius:20px;}
  .rules-panel-heading{margin-bottom:10px;padding-bottom:10px;}
  .rules-panel-heading small{font-size:9px;color:#f06d00;}
  .rules-panel-heading h3{font:800 25px/1.08 Montserrat,Manrope,sans-serif;}
  .rules-pane:not([hidden]){display:flex;flex-direction:column;height:100%;min-height:0;}
  .rules-list{flex:1 1 auto;min-height:0;grid-template-rows:repeat(3,minmax(0,1fr));gap:10px;}
  .rules-item{min-height:112px;padding:10px;grid-template-columns:88px 1fr;gap:13px;border-radius:15px;}
  .rules-visual{align-self:stretch;position:relative;display:grid;grid-template-rows:36px minmax(0,1fr);place-items:center;border-radius:13px;padding:6px;background:#eef6ff;color:#1672d1;}
  .rules-visual svg{width:48px;height:48px;margin:0;fill:none;stroke:currentColor;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round;}
  .rules-number{position:static;left:auto;top:auto;transform:none;width:34px;height:34px;border-radius:50%;background:#1478da;color:#fff;font-size:15px;z-index:1;}
  .tone-orange .rules-visual{background:#fff5e9;color:#dc7600;}
  .tone-orange .rules-number{background:#ee8200;}
  .tone-green .rules-visual{background:#eef9f0;color:#0a9347;}
  .tone-green .rules-number{background:#0b9a4c;}
  .rules-copy strong{font-size:16px;}
  .rules-copy small{font-size:12px;line-height:1.45;}
  .rules-consent-card{min-height:76px;padding:10px 13px;grid-template-columns:48px 1fr 24px;background:#f4f8ff;border-color:#abc9f4;}
  .rules-consent-card::before{content:"✓";width:46px;height:46px;border-radius:13px;background:linear-gradient(145deg,#1577db,#074b9e);color:#fff;display:grid;place-items:center;font-size:24px;}
  .rules-consent-card input{grid-column:3;width:23px;height:23px;grid-row:1;align-self:center;}
  .rules-consent-card span{grid-column:2;grid-row:1;}
  .rules-consent-card strong{font-size:13px;}
  .rules-consent-card small{font-size:10px;}
  #rule-fair-panel-2 .rules-list{flex:1 1 0;grid-template-rows:repeat(3,minmax(0,1fr));gap:7px;overflow:hidden;}
  #rule-fair-panel-2 .rules-item{min-height:0;padding:8px 10px;}
  #rule-fair-panel-2 .rules-visual{grid-template-rows:30px minmax(0,1fr);padding:4px;}
  #rule-fair-panel-2 .rules-visual svg{width:42px;height:42px;}
  #rule-fair-panel-2 .rules-number{width:30px;height:30px;font-size:13px;}
  #rule-fair-panel-2 .rules-consent-card{flex:0 0 68px;min-height:68px;margin-top:8px;padding:8px 11px;}
  #rule-fair-panel-2 .rules-consent-card::before{width:42px;height:42px;}

  /* Result references */
  .result-card{padding:14px;}
  .result-summary-card:not([hidden]){display:flex;flex-direction:column;}
  .result-reference-kicker{font-size:9px;letter-spacing:.1em;font-weight:900;color:#f06d00;}
  .result-reference-title{font:800 24px/1.08 Montserrat,Manrope,sans-serif;margin:5px 0 9px;color:#082d61;}
  .result-runtime-title{display:none;}
  .result-summary-top{grid-template-columns:64px 1fr;align-items:center;padding-bottom:9px;border-bottom:1px solid #dfe6ef;}
  .result-photo img{width:64px;height:64px;border-radius:50%;object-fit:cover;}
  .result-copy h3{font-size:17px;margin:4px 0;}
  .result-status-pill{font-size:10px;background:#eaf2ff;color:#2672d1;}
  .result-stats{gap:6px;margin-top:9px;}
  .result-stat,.result-stat.top{min-height:58px;padding:7px;grid-template-columns:36px 1fr;gap:6px;}
  .result-stat.best-row{grid-template-columns:36px 1fr auto;}
  .result-stat-icon{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#eaf3ff;color:#2075d2;}
  .result-stat-icon.green{background:#edf9ef;color:#159449;}
  .result-stat-icon.red{background:#fff0ee;color:#d93424;}
  .result-stat-icon.gold{background:#fff6e6;color:#d89400;}
  .result-stat-icon.violet{background:#f0efff;color:#6654c7;}
  .result-stat-icon svg,.result-action-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
  .result-stat small{font-size:8px;}
  .result-stat strong{font-size:16px;}
  .result-reference-note{display:grid;grid-template-columns:30px 1fr;gap:8px;align-items:center;margin-top:auto;padding:7px 9px;border:1px solid #b9d2fb;border-radius:11px;background:#f4f8ff;color:#425979;font-size:9px;}
  .result-reference-note b{width:28px;height:28px;border-radius:50%;background:#2676d5;color:#fff;display:grid;place-items:center;font-size:14px;}
  .result-actions-heading span{font-size:9px;}
  .result-actions-heading h3{font-size:27px;line-height:1.18;}
  .result-final-actions{gap:11px;}
  .result-action{min-height:78px;padding:10px 12px;grid-template-columns:56px 1fr auto;border-radius:14px;}
  .result-action-icon{width:54px;height:54px;border-radius:13px;background:#eaf4ff;color:#1975d1;}
  .result-action-icon.green{background:#edf9ef;color:#159449;}
  .result-action-icon.trophy{background:#0a438d;color:#fff;}
  .result-action.primary{min-height:86px;}
  .result-action strong{font-size:15px;}
  .result-action small{font-size:11px;}
  .result-attempt-summary{grid-template-columns:42px minmax(0,1fr);padding:11px 12px;gap:11px;}
  .result-attempt-summary::before{width:40px;height:40px;}
  .result-attempt-summary strong{font-size:14px;line-height:1.25;}
  .result-attempt-summary small{font-size:11px;line-height:1.5;}
  .result-social-heading{margin-bottom:12px;}
  .result-social-heading strong{font-size:20px;color:#082d61;}
  .result-social-heading small{font-size:12px;}

  /* Explicit exclusions: no normal-flow chrome in secure stages. */
  body.test-mode .app-brand-footer{display:none;}
}

@media (max-width:900px){
  .public-brain-wrap{width:min(92vw,360px);height:100%;max-height:min(31dvh,290px);}
  .public-brain{width:min(92vw,360px);height:auto;max-height:min(31dvh,290px);transform:none;}
}
@media (max-width:900px) and (max-height:700px){
  .public-brain-wrap,.public-brain{max-height:min(28dvh,225px);}
}
@media (max-width:900px) and (max-height:620px){
  .public-brain-wrap,.public-brain{max-height:min(25dvh,180px);}
}

/* PREMIUM-RESULT-MEMORY-LAYOUT-V9 — authoritative final mobile cascade. */
@media (max-width:900px){
  body.gmc-email-remembered-mode #screen-email .email-minimal-card{display:flex;flex-direction:column;gap:11px;padding:14px;}
  body.gmc-email-remembered-mode #screen-email .email-minimal-head{flex:0 0 auto;align-self:auto;text-align:center;}
  body.gmc-email-remembered-mode #screen-email .email-minimal-head p{margin:6px auto 0;max-width:34rem;line-height:1.42;}
  body.gmc-email-remembered-mode #screen-email .email-minimal-resume{flex:0 0 auto;min-height:0;}
  body.gmc-email-remembered-mode #screen-email .resume-student{margin:0;border-color:#bfd1e7;box-shadow:0 12px 28px rgba(7,39,82,.08);}
  body.gmc-email-remembered-mode #screen-email .resume-student>div:first-child{display:grid;gap:5px;}
  body.gmc-email-remembered-mode #screen-email .resume-student>div:first-child strong{font-size:19px;line-height:1.22;letter-spacing:-.025em;}
  body.gmc-email-remembered-mode #screen-email .resume-student>div:first-child small{font-size:12px;line-height:1.4;margin:0;}
  body.gmc-email-remembered-mode #screen-email .resume-student .actions{margin-top:15px;}
  body.gmc-email-remembered-mode #screen-email .resume-student .actions .btn{font-size:14px;}
  body.gmc-email-remembered-mode #screen-email .verify-email-notice,body.gmc-email-remembered-mode #screen-email .verify-trust-strip{flex:0 0 auto;margin:0;}
  body.test-mode .main{inset:0;}
  body.test-mode .screen.active{padding:0;}
  body.test-mode .test-shell{width:100%;max-width:none;}
  body.test-mode .stage-topbar{min-height:54px;padding:6px max(10px,env(safe-area-inset-right)) 6px max(10px,env(safe-area-inset-left));border-left:0;border-right:0;border-top:0;border-radius:0;background:linear-gradient(105deg,#031632,#07346b);box-shadow:0 8px 20px rgba(0,0,0,.14);}
  body.test-mode .secure-stage-footer{min-height:38px;padding:6px max(10px,env(safe-area-inset-right)) max(6px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));border-left:0;border-right:0;border-bottom:0;border-radius:0;background:linear-gradient(105deg,#031632,#07346b);}
  body.test-mode .block-tabs,body.test-mode .stage-info,body.test-mode .words-card,body.test-mode .stage-bottom{margin-left:8px;margin-right:8px;}
  #screen-memorize .word-grid{grid-auto-flow:column;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(10,minmax(0,1fr));}
  #screen-result .result-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;}
  #screen-result .result-stat,#screen-result .result-stat.top{min-height:56px;padding:7px 8px;}
  #screen-result .result-stat.best-row{grid-template-columns:34px minmax(0,1fr);}
  #screen-result .result-stat.best-row>strong{grid-column:2;margin-top:-2px;}
  #screen-result .result-best-label{display:grid;align-content:center;gap:0;min-width:0;}
  #screen-result .result-best-label small,#screen-result .result-best-label em{display:block;font-style:normal;line-height:1.18;}
  #screen-result .result-best-label em{color:var(--muted);font-size:8px;}
  
  #screen-result .result-actions-heading h3{margin-bottom:8px;line-height:1.12;}
  
  #screen-result .result-attempt-summary{grid-template-columns:34px minmax(0,1fr);gap:8px;}
  #screen-result .result-attempt-summary::before{width:32px;height:32px;font-size:16px;}
  #screen-result .result-attempt-summary strong{font-size:12px;line-height:1.18;}
  #screen-result .result-attempt-summary small{font-size:9px;line-height:1.35;}
  #screen-result .result-action{min-height:61px;padding:7px 10px;grid-template-columns:42px minmax(0,1fr) auto;gap:9px;}
  #screen-result .result-action.primary{min-height:66px;}
  #screen-result .result-action-icon{border-radius:11px;}
  #screen-result .result-action strong{font-size:13px;line-height:1.2;}
  #screen-result .result-action small{font-size:9px;line-height:1.3;}
}
@media (max-width:900px) and (max-height:720px){
  body.gmc-email-remembered-mode #screen-email .resume-student{min-height:180px;padding:13px 14px;}
  body.gmc-email-remembered-mode #screen-email .resume-student .actions{margin-top:10px;gap:7px;}
  body.gmc-email-remembered-mode #screen-email .resume-student .actions .btn{min-height:45px;}
  #screen-result .result-actions-heading h3{font-size:21px;}
  #screen-result .result-attempt-summary{min-height:55px;}
  #screen-result .result-action{min-height:54px;}
  #screen-result .result-action.primary{min-height:58px;}
}

/* RESULT-REVIEW-SHARE-V10 — review isolation, compact result actions and public record rows. */
.mistake-review-popup{font-family:Manrope,"Noto Sans Gujarati","Segoe UI",sans-serif;color:#102448;}
.mistake-review-backdrop{position:absolute;inset:0;background:rgba(3,16,40,.74);backdrop-filter:blur(9px);}
.mistake-review-panel{position:absolute;inset:clamp(10px,2vw,24px);z-index:1;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;background:#f5f8fc;border:1px solid rgba(255,255,255,.34);border-radius:24px;box-shadow:0 30px 90px rgba(0,0,0,.35);}
.mistake-review-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;background:linear-gradient(110deg,#031632,#07346b);color:#fff;border-bottom:3px solid #f4770b;}
.mistake-review-brand{display:flex;align-items:center;gap:12px;min-width:0;}
.mistake-review-brand-mark{width:58px;height:42px;display:grid;place-items:center;border-radius:12px;background:#fff;color:#07346b;font-weight:950;letter-spacing:-.04em;}
.mistake-review-brand h2{margin:0;font-size:22px;line-height:1.1;}
.mistake-review-brand p{margin:4px 0 0;color:#dbe8f8;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:52vw;}
.mistake-review-top-actions{display:flex;gap:8px;flex:0 0 auto;}
.mistake-review-top-actions .btn{min-height:42px;padding:0 16px;}
.mistake-review-content{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px;padding:14px;overflow:hidden;}
.mistake-review-summary-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;}
.mistake-review-summary-cards>div{display:grid;gap:3px;padding:10px 12px;background:#fff;border:1px solid #dce5f0;border-radius:13px;}
.mistake-review-summary-cards small{color:#6d7c92;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;}
.mistake-review-summary-cards strong{font-size:18px;color:#082d61;}
.mistake-review-table-wrap{min-height:0;overflow:auto;background:#fff;border:1px solid #d9e3ef;border-radius:15px;}
.mistake-review-table{width:100%;border-collapse:separate;border-spacing:0;}
.mistake-review-table th{position:sticky;top:0;z-index:1;padding:11px 12px;background:#eaf1f9;color:#183a68;text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.04em;}
.mistake-review-table td{padding:10px 12px;border-top:1px solid #e6ecf3;font-size:13px;}
.mistake-review-table tr.correct td{background:#f2fbf5;}.mistake-review-table tr.wrong td{background:#fff5f3;}.mistake-review-table tr.blank td{background:#fffbef;}
.mistake-review-table .status{display:inline-flex;padding:4px 8px;border-radius:99px;font-size:9px;font-weight:900;letter-spacing:.04em;}
.mistake-review-table .status.correct{background:#dcf7e5;color:#087a3b;}.mistake-review-table .status.wrong{background:#ffe1dd;color:#b52d2d;}.mistake-review-table .status.blank{background:#fff0c8;color:#8a6100;}
html.mistake-review-open,body.mistake-review-open{overflow:hidden;}


.public-page-heading h2 span{white-space:nowrap;}

@media (max-width:900px){
  .mistake-review-panel{inset:8px;border-radius:18px;}
  .mistake-review-topbar{padding:10px;gap:8px;}
  .mistake-review-brand-mark{width:46px;height:36px;font-size:12px;}
  .mistake-review-brand h2{font-size:17px;}
  .mistake-review-brand p{font-size:9px;max-width:42vw;}
  .mistake-review-top-actions .btn{min-height:38px;padding:0 10px;font-size:10px;}
  .mistake-review-content{padding:9px;gap:8px;}
  .mistake-review-summary-cards{grid-template-columns:repeat(5,minmax(58px,1fr));gap:5px;overflow-x:auto;}
  .mistake-review-summary-cards>div{padding:7px 8px;}
  .mistake-review-summary-cards small{font-size:7px;}.mistake-review-summary-cards strong{font-size:14px;}
  .mistake-review-table{min-width:590px;}
  .mistake-review-table th,.mistake-review-table td{padding:8px 9px;font-size:10px;}

  #screen-result .result-actions-card{padding:10px 12px;}
  #screen-result .result-actions-heading h3{font-size:21px;margin:2px 0 6px;}
  #screen-result .result-final-actions{gap:6px;}
  #screen-result .result-attempt-summary{min-height:52px;padding:7px 9px;}
  #screen-result .result-attempt-summary small{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
  #screen-result .result-action,#screen-result .result-action.primary{min-height:52px;padding:6px 9px;}
  #screen-result .result-action-icon{width:38px;height:38px;}
  #screen-result .result-action.achievement{display:grid;}
  #screen-result .result-social-card{padding:11px 13px;}
  #screen-result .result-social-heading{margin-bottom:7px;}
  #screen-result .result-social-heading strong{font-size:17px;}
  #screen-result .result-social-heading small{font-size:9px;line-height:1.3;}
  #screen-result .result-social-actions{gap:6px;}
  #screen-result .result-social-action{min-height:51px;padding:6px 9px;grid-template-columns:34px 1fr auto;}
  #screen-result .result-social-icon{width:32px;height:32px;}
  #screen-result .result-recorded{padding:9px 11px;}
  #screen-result .result-recorded-head{align-items:center;gap:8px;}
  #screen-result .result-recorded-check{width:28px;height:28px;flex:0 0 auto;}
  #screen-result .result-recorded-head>div{display:flex;align-items:baseline;gap:7px;min-width:0;}
  #screen-result .result-recorded-head strong{font-size:11px;white-space:nowrap;}
  #screen-result .result-recorded-head small{font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  #screen-result .result-recorded-meta{grid-template-columns:1fr 1fr;gap:6px;margin-top:7px;}
  #screen-result .result-recorded-box{min-height:42px;padding:6px 8px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:5px;}
  #screen-result .result-recorded-box label{font-size:8px;}
  #screen-result .result-recorded-box strong{font-size:10px;line-height:1.2;}
  #screen-result .result-copy-btn{width:28px;height:28px;}

  .public-qualified-table-wrap{padding:0;border-radius:13px;background:#fff;border:1px solid #dce4ed;box-shadow:0 8px 20px rgba(7,25,57,.05);overflow-x:auto;}
  .public-qualified-table-wrap table{display:table;min-width:760px;width:100%;border-collapse:collapse;}
  .public-qualified-table-wrap thead{display:table-header-group;}
  .public-qualified-table-wrap tbody{display:table-row-group;}
  .public-qualified-table-wrap tr{display:table-row;margin:0;padding:0;border:0;border-radius:0;background:#fff;box-shadow:none;}
  .public-qualified-table-wrap th{padding:8px 9px;font-size:8px;background:#eef4fb;}
  .public-qualified-table-wrap td{display:table-cell;padding:9px;border-bottom:1px solid #e5ebf2;white-space:nowrap;font-size:10px;}
  .public-qualified-table-wrap td::before{content:none;}
  .public-qualified-table-wrap .verify-student{padding:6px 9px;font-size:9px;}
}

@media (max-width:900px) and (max-height:700px){
  #screen-result .result-social-heading small{display:none;}
  #screen-result .result-social-action{min-height:46px;}
  #screen-result .result-recorded-head small{display:none;}
}

/* PROFILE-QUALIFIED-PORTAL-V11 — profile fit, explicit device checks and portal actions. */

@media (max-width:900px){
  /* Education panel: all four controls, including State, remain above the
     profile status strip inside the browser-visible height. */
  #screen-profile [data-profile-panel="1"] .profile-section-title{margin-bottom:8px;padding-bottom:8px;}
  #screen-profile [data-profile-panel="1"] .profile-icon-badge{width:40px;height:40px;}
  #screen-profile [data-profile-panel="1"] .profile-section-title h3{font-size:18px;}
  #screen-profile [data-profile-panel="1"] .profile-section-title p{font-size:9px;line-height:1.25;}
  #screen-profile [data-profile-panel="1"] .profile-grid{gap:7px;align-content:stretch;}
  #screen-profile [data-profile-panel="1"] .field{display:grid;gap:3px;}
  #screen-profile [data-profile-panel="1"] .field label{font-size:11px;line-height:1.15;}
  #screen-profile [data-profile-panel="1"] .field input,
  #screen-profile [data-profile-panel="1"] .field select{min-height:45px;height:45px;font-size:14px;padding-top:0;padding-bottom:0;}

  /* Photo action is contained by the dashed upload area and never overlaps
     either consent card. */
  #screen-profile [data-profile-panel="2"] .profile-section-title{margin-bottom:9px;padding-bottom:8px;}
  #screen-profile [data-profile-panel="2"] .profile-photo-drop{
    grid-template-columns:minmax(0,1fr) 118px;
    
    
    gap:10px;
    
    align-items:stretch;
    overflow:hidden;
  }
  #screen-profile [data-profile-panel="2"] .profile-photo-copy{
    min-width:0;
    display:grid;
    grid-template-rows:auto auto auto auto;
    align-content:center;
    justify-items:start;
    gap:3px;
  }
  #screen-profile [data-profile-panel="2"] .profile-upload-icon{width:34px;height:34px;margin:0 0 2px;}
  #screen-profile [data-profile-panel="2"] .profile-upload-icon svg{width:19px;height:19px;}
  #screen-profile [data-profile-panel="2"] .profile-photo-copy h4{font-size:14px;line-height:1.2;margin:0;}
  #screen-profile [data-profile-panel="2"] .profile-photo-copy p{font-size:8px;line-height:1.25;margin:0;}
  #screen-profile [data-profile-panel="2"] .profile-photo-btn{
    position:static;
    inset:auto;
    transform:none;
    width:auto;
    max-width:100%;
    min-height:34px;
    margin:3px 0 0;
    padding:0 12px;
    align-self:start;
    white-space:nowrap;
  }
  #screen-profile [data-profile-panel="2"] .profile-photo-preview-panel{
    width:118px;
    
    
    align-self:center;
    padding:5px;
  }
  
  

  /* The native square checkboxes are visible and the CTA remains tappable.
     An unticked CTA click is handled by deviceContinue with a clear message. */
  .device-panel-section[data-device-panel="2"] .device-warning{margin-bottom:9px;}
  .device-consents{gap:9px;}
  .device-consent{
    min-height:82px;
    padding:11px 12px;
    display:grid;
    grid-template-columns:34px minmax(0,1fr);
    gap:11px;
    align-items:center;
    cursor:pointer;
  }
  .device-consent-icon{display:none;}
  .device-consent input{
    position:static;
    opacity:1;
    pointer-events:auto;
    appearance:auto;
    width:28px;
    height:28px;
    margin:0;
    accent-color:#0a66bd;
    cursor:pointer;
  }
  .device-consent:has(input:checked){border-color:#93c4ee;background:#f2f8ff;box-shadow:0 6px 16px rgba(10,102,189,.08);}
  .app-primary.needs-confirmation{opacity:1;filter:saturate(.72);box-shadow:0 8px 18px rgba(237,106,28,.18);}
}

@media (max-width:900px) and (max-height:700px){
  #screen-profile [data-profile-panel="1"] .profile-section-title{margin-bottom:5px;padding-bottom:6px;}
  #screen-profile [data-profile-panel="1"] .profile-grid{gap:4px;}
  #screen-profile [data-profile-panel="1"] .field input,
  #screen-profile [data-profile-panel="1"] .field select{min-height:40px;height:40px;}
  
  
  
  .device-consent{min-height:68px;padding:8px 10px;}
}

/* SECURE-STAGE-FOOTER-V15 final cascade: these rules intentionally follow
   every legacy responsive block so older compact overrides cannot shrink the
   photograph area or redistribute the consent cards. */
@media (max-width:900px){
  #screen-profile [data-profile-panel="2"]:not([hidden]){
    display:grid;
    grid-template-rows:auto 170px auto;
    align-content:start;
  }
  #screen-profile [data-profile-panel="2"] .profile-photo-drop{
    min-height:170px;
    height:170px;
    padding:12px;
  }
  #screen-profile [data-profile-panel="2"] .profile-photo-preview-panel{
    height:144px;
    min-height:144px;
  }
  #screen-profile [data-profile-panel="2"] .profile-consents{
    flex:0 0 auto;
    align-content:start;
    margin-top:10px;
    gap:10px;
  }
  #screen-profile [data-profile-panel="2"] .profile-consents .consent{
    min-height:64px;
    padding:10px 12px;
  }
  #screen-profile .profile-footer{margin-top:0;}
}

@media (max-width:900px) and (max-height:700px){
  #screen-profile [data-profile-panel="2"]{grid-template-rows:auto 146px auto;}
  #screen-profile [data-profile-panel="2"] .profile-photo-drop{height:146px;min-height:146px;}
  #screen-profile [data-profile-panel="2"] .profile-photo-preview-panel{height:120px;min-height:120px;}
  #screen-profile [data-profile-panel="2"] .profile-consents{margin-top:7px;gap:7px;}
  #screen-profile [data-profile-panel="2"] .profile-consents .consent{min-height:54px;padding:8px 10px;}
}


/* SECURE-STAGE-FOOTER-V15 — final authoritative root cascade. */
.app-footer .app-secondary,
.app-footer .app-secondary:enabled,
.app-footer .app-secondary[aria-disabled="false"]{
  opacity:1;
  color:#0b2d5c;
  background:#ffffff;
  border:1.5px solid #9eb3cd;
  box-shadow:0 8px 20px rgba(5,31,69,.10);
  filter:none;
  font-weight:850;
}
html[data-theme="dark"] .app-footer .app-secondary,
html[data-theme="dark"] .app-footer .app-secondary:enabled{
  color:#f7fbff;
  background:#12335f;
  border-color:#6f93be;
  box-shadow:0 8px 22px rgba(0,0,0,.28);
}
.app-footer .app-secondary:disabled,
.app-footer .app-secondary[aria-disabled="true"]{opacity:.52;filter:grayscale(.15);}

/* Preserve official marks and fine rules in both themes. */
html[data-theme="dark"] .app-brand img,
html[data-theme="dark"] .public-header-brand img,
html[data-theme="dark"] .profile-brand img,
html[data-theme="dark"] .selection-brand img,
html[data-theme="dark"] .result-card img,
html[data-theme="dark"] .app-dialog img{
  opacity:1;
  visibility:visible;
  filter:none;
}
html[data-theme="dark"] .app-header,
html[data-theme="dark"] .app-footer,
html[data-theme="dark"] .app-brand-footer,
html[data-theme="dark"] .result-card,
html[data-theme="dark"] .app-dialog-card{border-color:#3f6794;}
html[data-theme="dark"] .result-actions-heading span,
html[data-theme="dark"] .result-reference-kicker,
html[data-theme="dark"] .app-kicker{color:#ffad64;}
html[data-theme="dark"] .result-action small,
html[data-theme="dark"] .result-social-action small,
html[data-theme="dark"] .result-recorded-box label{color:#c1d1e6;}

/* Premium test-language dialog. */
.app-dialog:has(.test-language-grid) .app-dialog-card{width:min(620px,calc(100vw - 24px));overflow:hidden;border-radius:28px;}
.app-dialog:has(.test-language-grid) .app-dialog-header{
  padding:22px 22px 18px;
  background:linear-gradient(135deg,#061b3f,#0b4d91);
  border-bottom:2px solid #f47b24;
  color:#fff;
}
.app-dialog:has(.test-language-grid) .app-dialog-header p{color:#d8e8fb;}
.app-dialog:has(.test-language-grid) .app-dialog-icon{background:#fff;color:#0b4d91;border:2px solid rgba(255,255,255,.65);}
.app-dialog:has(.test-language-grid) .app-dialog-close{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.28);color:#fff;}
.test-language-intro{display:grid;gap:5px;text-align:center;margin-bottom:16px;}
.test-language-intro strong{font-size:18px;color:var(--ink);}
.test-language-intro span{font-size:12px;color:var(--muted);}
.test-language-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.test-language-grid button{
  min-height:112px;border:1.5px solid var(--line-strong);border-radius:20px;background:linear-gradient(145deg,var(--surface),var(--surface-soft));
  padding:16px;display:grid;grid-template-columns:48px 1fr auto;gap:12px;align-items:center;text-align:left;box-shadow:0 12px 28px rgba(6,20,45,.08)
;}
.test-language-grid button>b{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:#eaf3ff;color:#0b5db1;font-size:18px;}
.test-language-grid button span strong{display:block;font-size:18px;}.test-language-grid button span small{display:block;margin-top:3px;color:var(--muted);font-size:11px;}
.test-language-grid button i{font-style:normal;font-size:23px;color:#f47b24;}.test-language-grid button:hover,.test-language-grid button:focus-visible{border-color:#f47b24;transform:translateY(-1px);box-shadow:0 16px 34px rgba(244,123,36,.15);}
.test-language-cancel{width:100%;min-height:48px;margin-top:14px;border:0;border-radius:14px;background:transparent;color:var(--muted);font-weight:800;}

/* Result surface reset: remove legacy opacity/overflow interference. */
@media (max-width:900px){
  #screen-result.result-root{overflow:auto;background:linear-gradient(180deg,var(--canvas),color-mix(in srgb,var(--canvas) 88%,#fff));}
  #screen-result .result-reference-shell{opacity:1;visibility:visible;filter:none;}
  #screen-result .result-card{overflow:visible;opacity:1;filter:none;}
  #resultInstagramAction,#resultAchievementAction,#resultDownloadCardAction{pointer-events:auto;position:relative;z-index:2;}
}

@media(max-width:900px){
 .app-dialog:has(.test-language-grid) .app-dialog-body{padding:18px;}
 .test-language-grid{grid-template-columns:1fr;}
 .test-language-grid button{min-height:92px;}
}


.result-desktop-next-title,.result-desktop-section-title,.result-follow-section{display:none;}
/* SECURE-STAGE-V16 — authoritative prepare-your-mind desktop experience. */
.focus-wrap{animation:none;transition:none;contain:layout paint;overflow:hidden;}
.focus-wrap .focus-content{display:grid;justify-items:center;gap:16px;position:relative;z-index:2;}
.focus-wrap .focus-content h2{margin:0;line-height:1.05;text-wrap:balance;}
.focus-wrap .count{overflow:hidden;line-height:1;text-align:center;display:grid;place-items:center;position:relative;z-index:2;}
.focus-wrap .count.start-label{
  width:min(70vw,260px);
  aspect-ratio:auto;
  min-height:88px;
  padding:0 24px;
  border-width:0;
  border-radius:18px;
  font-size:clamp(28px,7vw,54px);
  letter-spacing:.035em;
  color:#fff;
  background:linear-gradient(135deg,#ff8b16,#f15f0a);
  box-shadow:0 22px 60px rgba(242,104,12,.34);
}
.focus-wrap.preparing .count{
  width:min(56vw,220px);
  font-size:clamp(18px,5vw,28px);
  color:#fff;
}
.focus-wrap .preparing-label{font-weight:900;letter-spacing:.09em;text-transform:uppercase;color:#ff6b00;text-shadow:0 0 22px rgba(255,107,0,.28);font-size:.42em;}
.focus-ring-shell{position:relative;display:grid;place-items:center;width:min(72vw,420px);aspect-ratio:1;}
.focus-ring-svg{width:100%;height:100%;transform:rotate(-90deg);filter:drop-shadow(0 0 18px rgba(40,124,255,.28));}
.focus-ring-track{fill:none;stroke:rgba(94,143,211,.18);stroke-width:8;}
.focus-ring-progress{fill:none;stroke:#4ea2ff;stroke-width:8;stroke-linecap:round;}
.focus-ring-inner{fill:rgba(4,20,52,.62);stroke:rgba(82,140,223,.15);stroke-width:1.5;}
.focus-start-line{font-weight:500;letter-spacing:.01em;}
.focus-ambient{position:absolute;top:50%;width:40vw;max-width:520px;min-width:260px;height:180px;transform:translateY(-10%);pointer-events:none;opacity:.95;z-index:0;}
.focus-ambient-left{left:-3vw;}
.focus-ambient-right{right:-3vw;transform:translateY(-10%) scaleX(-1);}
.focus-ambient span{position:absolute;left:0;right:0;top:20px;bottom:20px;border-radius:50%;border-top:1px solid rgba(52,128,255,.62);border-bottom:1px solid transparent;filter:drop-shadow(0 0 8px rgba(41,126,255,.25));animation:focusWaveFloat 8s linear infinite;}
.focus-ambient span:nth-child(1){transform:translateY(0) scaleY(.46);opacity:.96;}
.focus-ambient span:nth-child(2){transform:translateY(22px) scaleY(.38);opacity:.62;animation-duration:10s;}
.focus-ambient span:nth-child(3){transform:translateY(44px) scaleY(.30);opacity:.42;animation-duration:12s;}
@keyframes focusWaveFloat{0%{background-position:0 0;opacity:.45;}50%{opacity:.95;}100%{background-position:160px 0;opacity:.45;}}

@media (max-width:900px){
  body.test-mode .test-shell{
    box-sizing:border-box;
    height:100dvh;
    min-height:0;
    overflow:hidden;
    grid-template-rows:54px 40px 44px minmax(0,1fr) 58px 38px;
    gap:5px;
  }
  body.test-mode .stage-topbar,
  body.test-mode .block-tabs,
  body.test-mode .stage-info,
  body.test-mode .words-card,
  body.test-mode .stage-bottom,
  body.test-mode .secure-stage-footer{min-height:0;max-height:100%;box-sizing:border-box;}
  body.test-mode .words-card{overflow:hidden;}
  body.test-mode .stage-bottom{height:58px;}
  body.test-mode .stage-submit{height:58px;min-height:0;padding:5px 7px;}
  body.test-mode .stage-submit .btn{min-height:37px;height:37px;}
  body.test-mode .stage-submit small{font-size:8px;line-height:1.1;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  body.test-mode .secure-stage-footer{
    display:flex;
    visibility:visible;
    opacity:1;
    height:38px;
    overflow:hidden;
    flex:0 0 38px;
    z-index:5;
  }
  #screen-memorize .word-grid{min-height:0;overflow:hidden;}
  #screen-recall .recall-grid{min-height:0;overflow-y:auto;overscroll-behavior:contain;}
}

@media (max-width:900px) and (max-height:700px){
  body.test-mode .test-shell{grid-template-rows:50px 38px 42px minmax(0,1fr) 54px 34px;gap:4px;}
  body.test-mode .stage-bottom{height:54px;}
  body.test-mode .stage-submit{height:54px;}
  body.test-mode .secure-stage-footer{height:34px;min-height:34px;flex-basis:34px;padding-top:4px;padding-bottom:max(4px,env(safe-area-inset-bottom));}
}


/* GMC V16 — authoritative secure footer + clipboard protection */
body.test-mode #screen-memorize,
body.test-mode #screen-recall{padding-bottom:44px;box-sizing:border-box;}
body.test-mode .secure-stage-footer{
  position:fixed;left:0;right:0;bottom:0;z-index:2400;
  width:100%;height:42px;min-height:42px;max-height:42px;
  margin:0;border-radius:0;border-left:0;border-right:0;border-bottom:0;
  display:flex;visibility:visible;opacity:1;
  padding:5px max(10px,env(safe-area-inset-right)) max(5px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));
  box-sizing:border-box;
}
body.test-mode #screen-memorize .test-shell,
body.test-mode #screen-recall .test-shell{height:calc(var(--visible-height,100dvh) - 42px);max-height:calc(var(--visible-height,100dvh) - 42px);}
body.test-mode #screen-memorize .words-card,
body.test-mode #screen-memorize .word-grid,
body.test-mode #screen-memorize .word,
body.test-mode #screen-recall .recall-grid{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;}
body.test-mode #screen-recall input,
body.test-mode #screen-recall textarea{user-select:text;-webkit-user-select:text;-webkit-touch-callout:none;}
@media(max-height:720px){body.test-mode .secure-stage-footer{height:36px;min-height:36px;max-height:36px;}body.test-mode #screen-memorize .test-shell,body.test-mode #screen-recall .test-shell{height:calc(var(--visible-height,100dvh) - 36px);max-height:calc(var(--visible-height,100dvh) - 36px);}}

/* LANGUAGE-SECURE-FOOTER-V16 */

/* FAIRPLAY-60S-LOCK-V19 — OTP transport/session recovery authority.
   Visual layout remains inherited from V16; this marker binds cache and audit
   checks to the root-level OTP delivery and verification correction. */


/* OTP-DEVICE-COMPAT-V20 — authoritative mobile compatibility and click safety. */
body:not(.dialog-open) .app-dialog:not(.open),
body:not(.photo-change-open) .photo-change-dialog:not(.open),
body:not(.profile-edit-open) .profile-edit-dialog:not(.open),
[hidden],.fairplay-overlay:not(.show),.fullscreen-overlay:not(.show){pointer-events:none;}
#screen-email button,#screen-otp button,.app-footer button{touch-action:manipulation;position:relative;z-index:5;}
body.gmc-otp-controller-busy #appPrimary,body.gmc-otp-controller-busy #screen-email button[type="submit"],body.gmc-otp-controller-busy #screen-otp .otp-verify-btn{opacity:.72;cursor:wait;}
.gmc-otp-live-status{margin:9px 0 0;padding:10px 12px;border-radius:12px;background:#eef5ff;color:#123a69;font-size:13px;font-weight:700;line-height:1.35;}
.gmc-otp-live-status[data-type="error"]{background:#fff0f0;color:#9a2730;}
@media(max-width:900px){
 body.gmc-mobile-footer-suppressed #appFooter{display:none!important;}
 body.gmc-mobile-footer-suppressed.app-flow .main{bottom:var(--brand-footer-height);}
 body.device-fit-small.app-flow .app-header{height:62px;min-height:62px;padding:6px 12px;}
 body.device-fit-small.app-flow{--mobile-content-top:74px;--footer-height:54px;}
 body.device-fit-small.app-flow .screen{padding:7px 9px 8px;}
 body.device-fit-small.app-flow .card{border-radius:20px;}
 body.device-fit-small.app-flow h1,body.device-fit-small.app-flow h2{font-size:clamp(24px,7vw,34px);line-height:1.04;}
 body.device-fit-small.app-flow .app-footer{min-height:54px;padding:6px 10px;gap:8px;}
 body.device-fit-small.app-flow .app-footer button{min-height:44px;padding:0 10px;font-size:clamp(12px,3.5vw,16px);white-space:normal;line-height:1.08;}
 body.device-fit-small.app-flow .app-brand-footer{height:42px;min-height:42px;font-size:10px;}
 body.device-fit-tiny.app-flow .app-header{height:56px;min-height:56px;}
 body.device-fit-tiny.app-flow{--mobile-content-top:66px;--footer-height:50px;}
 body.device-fit-tiny.app-flow .main{overflow-y:auto;overscroll-behavior:contain;}
 body.device-fit-tiny.app-flow .screen.active{justify-content:flex-start;min-height:100%;overflow:visible;padding-top:5px;}
 body.device-fit-tiny.app-flow .app-footer{min-height:50px;padding:4px 8px;}
 body.device-fit-tiny.app-flow .app-footer button{min-height:42px;font-size:12px;}
 body.device-fit-tiny.app-flow .app-brand-footer{display:none;}
 body.device-fit-tiny.app-flow #screen-device .device-grid,body.device-fit-tiny.app-flow #screen-rules .rules-list{gap:6px;}
 body.device-fit-tiny.app-flow #screen-device .device-card,body.device-fit-tiny.app-flow #screen-rules .rule-card{padding:8px;min-height:0;}
}

/* STUDENT-DELETE-FK-HARD-RESET-V22 — server-confirmed Selection ID and Admin repair workflow. */

/* MOBILE-VERIFICATION-AUTHORITY-V104 — one root implementation for Email,
   OTP and Verified states. Desktop selectors and layout remain untouched. */
@media (max-width:900px){
  body.app-flow:not(.test-mode) .app-header{
    
    align-items:center;
  }
  body.app-flow:not(.test-mode) .app-heading{display:none!important;}
  body.app-flow:not(.test-mode) .app-brand{align-self:center;justify-self:start;}
  body.app-flow:not(.test-mode) .app-brand img{width:108px;height:48px;object-fit:contain;object-position:left center;}
  body.app-flow:not(.test-mode) .app-theme{align-self:center;justify-self:center;}
  body.app-flow:not(.test-mode) .app-step{align-self:center;justify-self:end;}

  #screen-email .email-minimal-card,
  #screen-otp .otp-minimal-card{
    background:linear-gradient(155deg,#fff 0%,#fbfdff 56%,#f5f8fd 100%);
    border:1px solid #d8e3f0;
    box-shadow:0 14px 34px rgba(5,31,69,.10);
  }
  #screen-email .email-minimal-card{padding:11px 12px;gap:0;}
  #screen-email .email-minimal-head h2{font-size:25px;line-height:1.06;}
  #screen-email .email-minimal-head p{margin-top:5px;font-size:10.5px;line-height:1.35;}
  #screen-email .email-minimal-fields{gap:8px;margin-top:9px;}
  #screen-email .verify-field{gap:4px;}
  #screen-email .verify-field input{height:42px;min-height:42px;border-radius:11px;padding-inline:12px;}
  #screen-email .email-minimal-action{margin-top:8px;}
  #screen-email .email-minimal-action .btn{min-height:42px;border-radius:11px;}
  #screen-email .verify-field label{display:flex;align-items:center;gap:7px;}
  #screen-email .verify-field-icon{width:22px;height:22px;display:grid;place-items:center;color:#e36a13;}
  #screen-email .verify-field-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
  #screen-email .verify-email-notice{
    display:grid;align-items:center;
    border:1px solid #dce6f2;border-radius:15px;background:#f8fbff;
  }
  #screen-email .verify-email-notice{margin-top:8px;padding:8px 9px;grid-template-columns:34px minmax(0,1fr);gap:8px;}
  #screen-email .verify-email-notice p{font-size:9px;line-height:1.35;}
  #screen-email .verify-email-notice-icon{
    width:40px;height:40px;display:grid;place-items:center;border-radius:12px;
    background:#eaf2ff;color:#1e5dac;
  }
  #screen-email .verify-email-notice-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
  #screen-email .email-minimal-secure{display:inline-flex;align-items:center;justify-content:center;gap:7px;}
  #screen-email .email-minimal-secure svg{width:17px;height:17px;fill:none;stroke:#1d6a4e;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
  #screen-email .verify-trust-strip{
    display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #e1e8f1;
    border-radius:15px;background:#fff;overflow:hidden;
  }
  #screen-email .verify-trust-strip{margin-top:8px;}
  #screen-email .verify-trust-strip>div{min-width:0;display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:5px;padding:8px 6px;border-right:1px solid #e3eaf2;}
  #screen-email .verify-trust-strip>div:last-child{border-right:0;}
  #screen-email .verify-trust-strip b{width:28px;height:28px;display:grid;place-items:center;color:#103b76;}
  #screen-email .verify-trust-strip b svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
  #screen-email .verify-trust-strip b svg .accent,
  #screen-email .verify-trust-strip b svg .accent-check,
  #screen-email .verify-trust-strip b svg .accent-lock{stroke:#ef6c16;}
  #screen-email .verify-trust-strip span{display:grid;gap:1px;min-width:0;}
  #screen-email .verify-trust-strip strong{font-size:9px;line-height:1.15;color:#12335f;}
  #screen-email .verify-trust-strip small{font-size:7px;line-height:1.15;color:#708099;}
  #screen-email .email-minimal-note{margin:6px 0 0;font-size:8px;line-height:1.2;}

  body.gmc-email-remembered-mode #screen-email .resume-student{
    display:grid;grid-template-columns:48px minmax(0,1fr);grid-template-rows:auto auto;
    gap:10px 12px;align-content:center;justify-content:stretch;
    background:linear-gradient(145deg,#f5f9ff,#edf5ff);border:1px solid #b9d0eb;
  }
  body.gmc-email-remembered-mode #screen-email .email-resume-avatar{
    grid-column:1;grid-row:1;width:46px;height:46px;display:grid;place-items:center;border-radius:14px;
    background:#fff;color:#1259a8;border:1px solid #cfdef0;
  }
  body.gmc-email-remembered-mode #screen-email .email-resume-avatar svg{width:36px;height:36px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
  body.gmc-email-remembered-mode #screen-email .email-resume-copy{grid-column:2;grid-row:1;display:grid;gap:3px;min-width:0;}
  body.gmc-email-remembered-mode #screen-email .email-resume-kicker{font-size:8px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;color:#e56b17;}
  body.gmc-email-remembered-mode #screen-email #resumeStudentName{font-size:18px;line-height:1.2;color:#0a2e65;}
  body.gmc-email-remembered-mode #screen-email #resumeStudentEmail{display:block;font-size:11px;line-height:1.3;color:#546b8a;overflow-wrap:anywhere;}
  body.gmc-email-remembered-mode #screen-email #resumeStudentAttempts{display:inline-flex;width:max-content;margin-top:3px;padding:5px 8px;border-radius:999px;background:#e6f7ee;color:#15724a;font-size:9px;font-style:normal;font-weight:850;}
  body.gmc-email-remembered-mode #screen-email .resume-student .actions{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:1fr;gap:8px;margin:0;}
  body.gmc-email-remembered-mode #screen-email .resume-student .actions .btn{min-height:47px;}
  body.gmc-email-remembered-mode #screen-email .email-minimal-card{justify-content:flex-start;padding-top:10px;padding-bottom:10px;}
  body.gmc-email-remembered-mode #screen-email .email-minimal-head{padding-top:2px;}
  body.gmc-email-remembered-mode #screen-email .resume-student{min-height:0;height:auto;padding:12px;}
  body.gmc-email-remembered-mode #screen-email .verify-email-notice{margin-top:8px;}
  body.gmc-email-remembered-mode #screen-email .verify-trust-strip{margin-top:8px;}

  #screen-otp .otp-minimal-card{justify-content:flex-start;padding:19px 16px;gap:13px;}
  #screen-otp .otp-minimal-head{text-align:center;}
  #screen-otp .otp-minimal-head h2{font-size:26px;line-height:1.08;color:#0a2e65;}
  #screen-otp .otp-code-sent-line{margin:8px 0 0;color:#64758e;font-size:12px;}
  #screen-otp .otp-boxes{gap:6px;margin:2px 0 0;}
  #screen-otp .otp-mobile-cell{height:54px;border-radius:12px;background:#fff;border-color:#cbd8e7;}
  #screen-otp .otp-expiry-line{
    margin:0;padding:9px 11px;border:1px solid #e2e8f1;border-radius:11px;
    background:#f8faff;color:#536a89;font-size:11px;text-align:center;
  }
  #screen-otp .otp-minimal-actions{display:none!important;}
  #screen-otp .otp-resend-zone{
    display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;
    margin:0;padding:11px 12px;border:1px solid #e0e7f0;border-radius:12px;background:#fff;
  }
  #screen-otp .otp-resend-zone p{margin:0;font-size:11px;color:#5f7089;}
  #screen-otp .otp-resend-btn{
    min-height:34px;margin:0;padding:0 10px;border:1px solid #cfdae8;border-radius:9px;
    background:#f5f8fc;color:#174d91;font-size:10px;font-weight:850;
  }
  #screen-otp .otp-resend-btn.otp-cooldown{color:#6f7d91;opacity:1;}
  #screen-otp .otp-minimal-note{
    display:block!important;margin:0;padding:10px 12px;border-radius:12px;
    background:#fff8ef;border:1px solid #f2d8b6;color:#76532d;font-size:10px;line-height:1.4;text-align:center;
  }
  #screen-otp .otp-minimal-secure{
    margin:0;padding:10px 12px;border:1px solid #cfe0f2;border-radius:12px;
    background:#eef6ff;color:#173d70;display:flex;align-items:center;gap:9px;font-size:10px;line-height:1.35;text-align:left;
  }
  #screen-otp .otp-secure-icon{width:30px;height:30px;flex:0 0 30px;display:grid;place-items:center;border-radius:9px;background:#fff;color:#1b5ba6;}
  #screen-otp .otp-secure-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
}


.mobile-module-steps{display:none;}
@media (max-width:900px){
  :root{--module-step-height:44px;}
  body.mobile-step-nav.app-flow .main{
    top:calc(var(--visible-top) + var(--mobile-content-top) + var(--module-step-height));
  }
  body.mobile-step-nav.keyboard-open.app-flow .main{
    top:calc(var(--mobile-header-height) + var(--visible-top) + var(--module-step-height));
    height:calc(var(--visible-height) - var(--mobile-header-height) - var(--visible-top) - var(--module-step-height));
  }
  .mobile-module-steps{
    position:fixed;
    z-index:88;
    top:calc(var(--visible-top) + var(--mobile-header-height));
    left:0;
    right:0;
    height:var(--module-step-height);
    padding:4px 9px 5px;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:5px;
    background:#f7f9fc;
    border-bottom:0;
    box-shadow:none;
  }
  .mobile-module-steps[hidden]{display:none;}
  .mobile-module-steps-rules{grid-template-columns:repeat(4,minmax(0,1fr));}
  .mobile-module-steps button{
    min-width:0;
    height:35px;
    padding:3px 4px;
    border:1px solid #d9e2ee;
    border-radius:10px;
    background:#fff;
    color:#718096;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:4px;
    font-family:Manrope,Arial,sans-serif;
    font-weight:800;
    line-height:1;
    box-shadow:none;
  }
  .mobile-module-steps button b{
    width:19px;
    height:19px;
    flex:0 0 19px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#edf1f6;
    color:#687a92;
    font-size:9px;
  }
  .mobile-module-steps button span{
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:8px;
  }
  .mobile-module-steps button.is-current{
    border-color:#ff7a00;
    background:#fff7ef;
    color:#0a2b5d;
    box-shadow:0 4px 12px rgba(255,122,0,.12);
  }
  .mobile-module-steps button.is-current b{background:#ff7a00;color:#fff;}
  .mobile-module-steps button.is-complete{border-color:#bfe4cf;color:#166f48;background:#f2fbf6;}
  .mobile-module-steps button.is-complete b{background:#1c9b62;color:#fff;}
  .mobile-module-steps button.is-locked{opacity:.56;background:#f2f4f7;}
  .mobile-module-steps-rules button{gap:2px;padding-inline:2px;}
  .mobile-module-steps-rules button b{width:17px;height:17px;flex-basis:17px;font-size:8px;}
  .mobile-module-steps-rules button span{font-size:6.7px;}
  body.device-fit-small.mobile-step-nav{--module-step-height:44px;}
  body.device-fit-small .mobile-module-steps{padding-top:4px;padding-bottom:4px;}
  body.device-fit-small .mobile-module-steps button{height:35px;}
  body.device-fit-tiny.mobile-step-nav{--module-step-height:40px;}
  body.device-fit-tiny .mobile-module-steps{padding:3px 7px;}
  body.device-fit-tiny .mobile-module-steps button{height:33px;}
}

/* DESKTOP-PUBLIC-PREMIUM-V23 — desktop-only public landing and information pages.
   LOCK: no selectors in this block apply at 900px or below. */

/* DESKTOP-PUBLIC-SPACING-V24 — desktop-only header asset and footer separation.
   LOCK: no selector in this block applies at 900px or below. */


/* DESKTOP-PUBLIC-CONTROLS-V25 — desktop-only single-scroll and premium header controls.
   LOCK: no selector in this block applies at 900px or below. */


/* V26 DESKTOP LOGO INLINE HARD RESET — desktop only */




/* PROFILE-DESKTOP-INTERACTION-V28 — desktop-only profile interaction and inline logo hard reset.
   LOCK: no selector in this block applies at 900px or below. */
@media (max-width:900px){
  .profile-desktop-actions{display:none;}
}


/* V29 DESKTOP ONLY — selection ID, correction dialogs and qualified actions */


/* V30 DESKTOP ONLY — official logo, Selection ID and Device Check hard reset */
.gmc-inline-wordmark{max-width:100%;}
.gmc-inline-wordmark>img{max-width:100%;}
@media (max-width:900px){.device-desktop-actions{display:none;}}


/* V31 ROUTER-DOWNLOAD-MODAL-HARD-RESET
   Structural routing guard + desktop action repair + mobile logo restoration. */
main.main > section.screen:not(.active),
main.main > section.screen[hidden]{display:none!important;}
main.main > section.screen.active:not([hidden]){visibility:visible;pointer-events:auto;}

/* Official embedded logo must remain visible at every breakpoint. */
.gmc-inline-wordmark{display:inline-flex;align-items:center;justify-content:flex-start;line-height:0;overflow:visible;}
.gmc-inline-wordmark>img{display:block;visibility:visible;opacity:1;width:100%;height:100%;object-fit:contain;object-position:left center;}
.app-brand .app-brand-logo{width:78px;height:42px;min-width:78px;}
.public-header-brand .public-header-logo{width:188px;height:56px;}
.email-minimal-logo{width:250px;height:88px;}

@media (max-width:900px){
  .app-brand .app-brand-logo{width:82px;height:40px;min-width:82px;}
  .public-header-brand .public-header-logo{width:126px;height:44px;}
  .email-minimal-logo,.otp-minimal-logo{width:180px;height:58px;}
  .app-language-desktop{display:none;}
}


/* V95 ADMIN-VERIFICATION-POPUPS — authoritative root design for the two Admin verification dialogs.
   This replaces the superseded desktop photo-update styling; no external overlay stylesheet is used. */
.photo-change-modal{background:rgba(4,18,43,.76);backdrop-filter:blur(14px);}
.photo-change-modal .photo-change-card{isolation:isolate;overflow:hidden;background:#fff;color:#082653;border:1px solid rgba(220,229,240,.96);box-shadow:0 34px 110px rgba(0,18,48,.38);}
.photo-change-modal .photo-change-close{position:absolute;z-index:20;display:grid;place-items:center;border:1px solid #dce5f0;background:#fff;color:#071f46;font-weight:700;cursor:pointer;box-shadow:0 8px 22px rgba(9,31,67,.08);}
.photo-change-modal .photo-change-head{display:grid;align-items:center;background:#fff;border-bottom:1px solid #e5ebf3;}
.photo-change-modal .photo-change-step{display:inline-flex;align-items:center;gap:7px;width:max-content;border-radius:999px;background:#fff3eb;color:#f26c14;font-weight:900;letter-spacing:.045em;}
.photo-change-modal .photo-change-step svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.photo-change-modal .photo-change-identity-icon{display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#fff4ea,#fff);box-shadow:0 12px 28px rgba(246,109,20,.11);}
.photo-change-modal .photo-change-identity-icon svg{width:100%;height:100%;fill:none;stroke:#f36d15;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;}
.photo-change-modal .photo-change-identity-icon svg .accent{stroke:#ff7a00;}
.photo-change-modal .photo-change-title-copy h2{margin:0;color:#092653;font-family:Montserrat,Manrope,sans-serif;font-weight:800;letter-spacing:-.035em;}
.photo-change-modal .photo-change-title-copy p{margin:5px 0 0;color:#536b8f;}
.photo-change-modal .photo-change-body{display:grid;background:#fff;}
.photo-change-modal .photo-current-panel{display:grid;align-content:start;text-align:center;min-width:0;}
.photo-change-modal .photo-current-panel h3{margin:0;color:#0a2753;font-weight:800;}
.photo-change-modal .photo-change-photo-ring{overflow:hidden;border:1px solid #dce5f1;background:#fbfdff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.9);}
.photo-change-modal .photo-change-photo-ring img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 20%;background:#f4f8fc;}
.photo-change-modal .photo-current-status{display:flex;align-items:center;justify-content:center;gap:7px;color:#657d9f;}
.photo-change-modal .photo-current-status span{display:grid;place-items:center;border-radius:50%;background:#2565cf;color:#fff;font-weight:900;}
.photo-change-modal .photo-current-note{display:grid;grid-template-columns:auto 1fr;align-items:start;text-align:left;background:linear-gradient(120deg,#fff5ec,#fffaf7);color:#536b8f;}
.photo-change-modal .photo-current-note>span{display:grid;place-items:center;border-radius:50%;background:#ff7a00;color:#fff;font-weight:900;}
.photo-change-modal .photo-current-note p{margin:0;}
.photo-change-modal .photo-change-divider{width:1px;background:#dfe7f1;align-self:stretch;}
.photo-change-modal .photo-change-controls{display:grid;align-content:start;min-width:0;}
.photo-change-modal .photo-change-upload{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;border:1.5px dashed #4c82df;background:linear-gradient(120deg,#fbfdff,#f8faff);cursor:pointer;}
.photo-change-modal .photo-change-upload-icon{display:grid;place-items:center;}
.photo-change-modal .photo-change-upload-icon svg{width:100%;height:100%;fill:none;stroke:#0d3d83;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;}
.photo-change-modal .photo-change-upload-icon svg .accent{stroke:#ff7a00;}
.photo-change-modal .photo-change-upload strong{display:block;color:#092653;}
.photo-change-modal .photo-change-upload small{display:block;margin-top:3px;color:#647b9a;}
.photo-change-modal #photoChangeInput{width:100%;border:1px solid #dce5f1;background:#fff;color:#617795;}
.photo-change-modal #photoChangeInput::file-selector-button{border:1px solid #ced9e8;background:#fff;color:#17365e;font-weight:700;cursor:pointer;}
.photo-change-modal .photo-change-guidelines{display:grid;}
.photo-change-modal .photo-change-guidelines h3{display:flex;align-items:center;gap:8px;margin:0;color:#15355f;font-weight:800;}
.photo-change-modal .photo-change-guidelines h3 svg{width:18px;height:18px;fill:none;stroke:#15355f;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.photo-change-modal .photo-guideline-grid{display:grid;}
.photo-change-modal .photo-guideline-item{display:grid;grid-template-columns:auto 1fr;align-items:center;background:linear-gradient(120deg,#f5f6ff,#fafaff);color:#435a7e;}
.photo-change-modal .photo-guideline-icon{display:grid;place-items:center;background:linear-gradient(145deg,#071b5a,#1e2f91);color:#fff;}
.photo-change-modal .photo-guideline-icon svg{width:70%;height:70%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.photo-change-modal .photo-guideline-icon svg .accent{stroke:#ff7a00;}
.photo-change-modal .photo-change-error{color:#c53f34;min-height:1em;font-weight:700;}
.photo-change-modal .photo-change-actions{display:flex;justify-content:flex-end;align-items:center;border-top:0;background:#fff;}
.photo-change-modal .photo-change-actions .btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:800;}
.photo-change-modal .photo-change-actions .btn-secondary{background:#fff;border:1px solid #cbd7e7;color:#16345e;}
.photo-change-modal .photo-change-actions .btn-primary{background:linear-gradient(135deg,#ff6b00,#ff861c);border-color:#ff7310;color:#fff;box-shadow:0 12px 24px rgba(255,112,12,.2);}
.photo-change-modal .photo-change-actions .btn-primary:disabled{opacity:.55;box-shadow:none;}
.photo-change-modal .photo-change-security-note{display:none;color:#627795;text-align:center;}

.administrative-review-popup-theme.app-dialog{background:rgba(4,18,43,.76);backdrop-filter:blur(14px);}
.administrative-review-popup-theme .app-dialog-card{overflow:hidden;background:#fff;color:#092653;border:1px solid rgba(220,229,240,.96);box-shadow:0 34px 110px rgba(0,18,48,.38);}
.administrative-review-popup-theme .app-dialog-header{position:relative;display:grid;align-items:center;background:#fff;border-bottom:1px solid #e3eaf3;}
.administrative-review-popup-theme .app-dialog-icon{display:grid;place-items:center;background:linear-gradient(145deg,#fff4ea,#fff);color:#ff6c0d;border-radius:50%;box-shadow:0 12px 28px rgba(246,109,20,.12);}
.administrative-review-popup-theme .app-dialog-icon svg{width:80%;height:80%;fill:none;stroke:#ff6c0d;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;}
.administrative-review-popup-theme .app-dialog-icon svg .accent{stroke:#ff7a00;}
.administrative-review-popup-theme .app-dialog-header h2{margin:0;color:#092653;font-family:Montserrat,Manrope,sans-serif;font-weight:800;letter-spacing:-.035em;}
.administrative-review-popup-theme .app-dialog-header p{margin:5px 0 0;color:#536b8f;}
.administrative-review-popup-theme .app-dialog-close{position:absolute;display:grid;place-items:center;border:1px solid #dce5f0;background:#fff;color:#071f46;font-weight:700;cursor:pointer;box-shadow:0 8px 22px rgba(9,31,67,.08);}
.administrative-review-popup-theme .app-dialog-body{background:#fff;}
.administrative-review-popup{display:grid;}
.administrative-review-saved{display:flex;align-items:center;background:linear-gradient(120deg,#eef6ff,#f5f9ff);color:#183b69;}
.administrative-review-saved>span{color:#1478d4;font-weight:900;}
.administrative-review-contact{display:grid;align-items:start;}
.administrative-review-headset{display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#f3f7ff,#fff);}
.administrative-review-headset svg{width:72%;height:72%;fill:none;stroke:#0a2f6d;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;}
.administrative-review-headset svg .accent{stroke:#ff7a00;}
.administrative-review-copy h3{margin:0;color:#071f46;font-weight:800;}
.administrative-review-copy>p{margin:8px 0 0;color:#334f77;line-height:1.62;}
.administrative-review-note{display:grid;grid-template-columns:auto 1fr;align-items:start;background:linear-gradient(120deg,#fff5ec,#fffaf7);color:#3e587d;}
.administrative-review-note>span{display:grid;place-items:center;border-radius:50%;background:#ff7a00;color:#fff;font-weight:900;}
.administrative-review-note small{font-size:inherit;line-height:1.5;}
.administrative-review-actions{display:flex;justify-content:flex-end;align-items:center;}
.administrative-review-actions button{display:inline-flex;align-items:center;justify-content:center;font-weight:800;cursor:pointer;}
.administrative-review-actions .attempts-close-btn{border:1px solid #cad6e5;background:#fff;color:#16345e;}
.administrative-review-actions .attempts-support-btn{border:1px solid #083781;background:linear-gradient(135deg,#0b469d,#062d72);color:#fff;box-shadow:0 12px 24px rgba(7,52,124,.18);}
.administrative-review-actions .attempts-support-btn>span{color:#ff7a00;}


@media (max-width:900px){
  .photo-change-modal,.administrative-review-popup-theme{padding:12px;}
  .photo-change-modal .photo-change-card,.administrative-review-popup-theme .app-dialog-card{width:min(368px,calc(100vw - 24px));max-height:calc(var(--visible-height,100dvh) - 24px);border-radius:27px;overflow:auto;overscroll-behavior:contain;}
  .photo-change-modal .photo-change-close,.administrative-review-popup-theme .app-dialog-close{top:14px;right:14px;width:42px;height:42px;border-radius:50%;font-size:24px;box-shadow:0 9px 24px rgba(9,31,67,.1);}
  .photo-change-modal .photo-change-head{position:relative;grid-template-columns:64px minmax(0,1fr);gap:12px;padding:18px 20px 17px;text-align:left;}
  .photo-change-modal .photo-change-head::after{content:"";position:absolute;left:50%;bottom:-2px;width:48px;height:3px;border-radius:99px;background:#ff7411;transform:translateX(-50%);}
  .photo-change-modal .photo-change-step{grid-column:1/-1;padding:6px 11px;font-size:9px;}
  .photo-change-modal .photo-change-step svg{width:14px;height:14px;}
  .photo-change-modal .photo-change-identity-icon{width:60px;height:60px;}
  .photo-change-modal .photo-change-identity-icon svg circle,
  .photo-change-modal .photo-change-identity-icon svg path:nth-of-type(2){fill:#0a2f6d;stroke:#0a2f6d;}
  .photo-change-modal .photo-change-title-copy h2{padding-right:28px;font-size:20px;line-height:1.12;}
  .photo-change-modal .photo-change-title-copy p{font-size:10px;line-height:1.4;}
  .photo-change-modal .photo-change-body{grid-template-columns:1fr;gap:13px;padding:16px 20px 9px;}
  .photo-change-modal .photo-change-divider{display:none;}
  .photo-change-modal .photo-current-panel{justify-items:center;}
  .photo-change-modal .photo-current-panel h3{font-size:11px;margin-bottom:9px;}
  .photo-change-modal .photo-change-photo-ring{width:170px;height:112px;border-radius:11px;}
  .photo-change-modal .photo-current-status{margin-top:9px;font-size:9px;}
  .photo-change-modal .photo-current-status span{width:18px;height:18px;font-size:10px;}
  .photo-change-modal .photo-current-note{grid-template-columns:20px 1fr;gap:9px;margin-top:10px;padding:11px 12px;border-radius:11px;font-size:9.5px;line-height:1.42;width:100%;}
  .photo-change-modal .photo-current-note>span{width:18px;height:18px;font-size:9px;}
  .photo-change-modal .photo-change-controls{gap:9px;}
  .photo-change-modal .photo-change-upload{grid-template-columns:62px minmax(0,1fr);gap:11px;min-height:76px;border-radius:12px;padding:9px 12px;}
  .photo-change-modal .photo-change-upload-icon{width:56px;height:49px;}
  .photo-change-modal .photo-change-upload strong{font-size:12px;}
  .photo-change-modal .photo-change-upload small{font-size:9px;line-height:1.3;}
  .photo-change-modal #photoChangeInput{min-height:36px;border-radius:8px;padding:2px;font-size:9px;}
  .photo-change-modal #photoChangeInput::file-selector-button{margin-right:7px;border-radius:7px;padding:7px 9px;font-size:9px;}
  .photo-change-modal .photo-change-guidelines{gap:7px;}
  .photo-change-modal .photo-change-guidelines h3{font-size:11px;}
  .photo-change-modal .photo-change-guidelines h3 svg{width:16px;height:16px;}
  .photo-change-modal .photo-guideline-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;}
  .photo-change-modal .photo-guideline-item{grid-template-columns:30px minmax(0,1fr);gap:7px;min-height:45px;border-radius:9px;padding:5px 7px;font-size:8px;line-height:1.28;}
  .photo-change-modal .photo-guideline-icon{width:27px;height:27px;border-radius:7px;}
  .photo-change-modal .photo-change-error{font-size:9px;}
  .photo-change-modal .photo-change-actions{display:grid;grid-template-columns:1fr 1.55fr;gap:9px;padding:8px 20px 11px;}
  .photo-change-modal .photo-change-actions .btn{min-height:43px;border-radius:10px;padding:0 8px;font-size:10.5px;}
  .photo-change-modal .photo-change-security-note{display:block;padding:0 20px 12px;font-size:8px;}

  .administrative-review-popup-theme .app-dialog-card{height:min(800px,calc(var(--visible-height,100dvh) - 24px));overflow:auto;}
  .administrative-review-popup-theme .app-dialog-header{display:grid;grid-template-columns:1fr;justify-items:center;gap:10px;padding:24px 24px 18px;text-align:center;border-bottom:0;}
  .administrative-review-popup-theme .app-dialog-icon{width:82px;height:82px;}
  .administrative-review-popup-theme .app-dialog-icon svg circle,
  .administrative-review-popup-theme .app-dialog-icon svg path:nth-of-type(2){fill:#0a2f6d;stroke:#0a2f6d;}
  .administrative-review-popup-theme .app-dialog-header h2{padding:0 18px;font-size:25px;line-height:1.16;}
  .administrative-review-popup-theme .app-dialog-header p{font-size:13px;line-height:1.35;}
  .administrative-review-popup-theme .app-dialog-body{padding:0 26px 24px;}
  .administrative-review-popup{height:100%;align-content:start;gap:17px;}
  .administrative-review-saved{gap:13px;min-height:78px;border-radius:12px;padding:14px 17px;font-size:14px;line-height:1.5;}
  .administrative-review-saved strong{font-weight:600;}
  .administrative-review-saved>span{font-size:22px;}
  .administrative-review-contact{grid-template-columns:1fr;justify-items:center;gap:12px;text-align:center;}
  .administrative-review-headset{width:82px;height:82px;}
  .administrative-review-copy h3{font-size:19px;line-height:1.25;}
  .administrative-review-copy>p{font-size:13px;line-height:1.48;text-align:left;margin-top:9px;}
  .administrative-review-note{grid-template-columns:22px 1fr;gap:10px;margin-top:17px;padding:14px 15px;border-radius:12px;font-size:12px;text-align:left;}
  .administrative-review-note>span{width:20px;height:20px;font-size:11px;}
  .administrative-review-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:auto;}
  .administrative-review-actions button{min-height:49px;border-radius:10px;padding:0 14px;gap:9px;font-size:14px;}
  .administrative-review-actions button>span{display:inline-grid;place-items:center;min-width:16px;font-size:17px;line-height:1;}
  .administrative-review-actions .attempts-support-btn>span{display:none;}
  .administrative-review-actions .attempts-support-btn::before{content:"☎";display:inline-grid;place-items:center;color:#ff7a00;font-size:17px;line-height:1;}
  .administrative-review-actions .attempts-close-btn{order:1;}
  .administrative-review-actions .attempts-support-btn{order:2;}
}

@media (max-width:430px) and (max-height:720px){
  .photo-change-modal .photo-change-card,.administrative-review-popup-theme .app-dialog-card{max-height:calc(100dvh - 10px);}
  .photo-change-modal .photo-change-head{padding-top:12px;}
  .photo-change-modal .photo-change-photo-ring{width:150px;height:94px;}
  .photo-change-modal .photo-guideline-item{min-height:37px;}
  .administrative-review-popup-theme .app-dialog-icon{width:56px;height:56px;}
  .administrative-review-popup-theme .app-dialog-header h2{font-size:18px;}
  .administrative-review-popup-theme .app-dialog-body{padding-top:9px;}
}

/* V35 DESKTOP FLOW RESTORE — unified profile and complete 6+6 official rules.
   LOCK: no selector in this block applies at 900px or below. */
@media (max-width:900px){
  .profile-desktop-section-label,.rules-desktop-actions{display:none;}
}


.secure-stage-footer-desktop{display:none;}
/* V36 DESKTOP MEMORY / RECALL / RESULT / RULES — authoritative desktop-only cascade.
   LOCK: all mobile rules at 900px and below remain unchanged. */


/* V42 REFERENCE-MATCH DESKTOP SYSTEM
   Desktop only. The accepted mobile application at 900px and below is isolated. */


.profile-photo-brand{display:none;}

/* V45 desktop consolidated application flow */


/* MASTER-FLOW-FINAL-V46
   Authoritative desktop implementation of the approved master mockups.
   Mobile rules stay in the original mobile declarations above. */
.desktop-progress{display:none;}
#screen-email .email-resume-avatar,#screen-email .email-btn-mail{display:none;}
#screen-email .email-head-remembered,#screen-email .verify-notice-remembered{display:none;}



/* V69 desktop test-language dialog — GMC navy/orange theme. */



/* V57 DEVICE CHECK — authoritative desktop reference implementation.
   Root/original stylesheet only. This replaces the previous Device Check desktop block in place.
   LOCK: desktop Device Check content only; mobile, header, footer, shared progress rail and other pages are untouched. */
.device-head-icon{display:none;}

/* V51 DESKTOP ONLY — Selection ID reference-match redesign.
   Scope lock: #screen-id + min-width:901px only. Header, footer, mobile and other screens remain untouched. */

/* V51 short-height desktop compaction — still isolated to Selection ID only. */

/* V51 narrower desktop safety — keeps the same reference flow without crossing into mobile CSS. */

.rules-reference-icon{display:none;}
/* V80 IMPORTANT RULES — single authoritative desktop implementation.
   Root alignment refinement: card breathing room, inset action row, compact consent/action widths.
   Scope: desktop Important Rules only. Mobile <=900px, header, footer, progress rail and other pages remain untouched. */


/* V62 OTP — authoritative desktop reference implementation.
   Root/original stylesheet only. This replaces the V61 OTP desktop block in-place.
   LOCK: #screen-otp desktop content only; mobile, header, footer, shared progress rail and other screens are untouched. */

/* Desktop viewport-fit correction for browser-visible heights such as 720–780px.
   It scales only OTP internals; shared header/footer/left progress and mobile CSS are untouched. */

/* V65 PROFILE 3-ROW DESKTOP — SINGLE AUTHORITATIVE ROOT IMPLEMENTATION */
.profile-desktop-only-field{display:none!important;}
.profile-adult-optional{display:none;}

/* V83 RESULT PAGE TOTAL HARD RESET — one authoritative desktop Result layout.
   Root cause removed: the former generic visible-panel rule forced display:block
   with higher specificity than the summary-card display:grid declaration. */




@media (max-width:900px){
  .public-qualified-page .public-qualified-shell{display:grid;gap:10px;}
  .public-qualified-hero{display:grid;gap:9px;padding:12px;background:#fff;border:1px solid #e0e5ec;border-radius:15px;box-shadow:0 7px 18px rgba(7,25,57,.05);}
  .public-qualified-heading{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:10px;}
  .public-qualified-hero-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#fff0e4;color:#f26e05;border:1px solid #ffe0c5;}
  .public-qualified-hero-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;}
  .public-qualified-heading .public-page-kicker{font-size:7px;}
  .public-qualified-heading h2{margin:2px 0 3px;font-size:21px;line-height:1.08;color:#0a2b5d;}
  .public-qualified-heading h2 span{display:inline;}
  .public-qualified-heading p{margin:0;font-size:10px;line-height:1.4;color:#718096;}
  .public-qualified-hero-art{display:none;}
  .public-qualified-mobile-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;}
  .public-qualified-mobile-actions .public-page-nav{min-height:40px;border-radius:11px;padding:0 9px;font-size:10px;}
  .qualified-search-box{grid-template-columns:34px minmax(0,1fr);align-items:center;padding:0 10px;border:1px solid #dfe6ef;border-radius:12px;background:#fff;}
  .qualified-search-icon{width:28px;height:28px;display:grid;place-items:center;color:#1764d7;}
  .qualified-search-icon svg{width:19px;height:19px;}
  .qualified-search-box input{min-width:0;height:42px;border:0;outline:0;background:transparent;font-size:10px;}
  .qualified-search-button{display:none;}
  .qualified-total-card{display:flex;align-items:center;gap:8px;width:max-content;padding:7px 10px;border-radius:10px;background:#fff0e4;color:#f26e05;}
  .qualified-total-card>span{width:28px;height:28px;display:grid;place-items:center;}.qualified-total-card svg{width:22px;height:22px;}
  .qualified-total-card .qualified-total-copy{display:flex;align-items:baseline;gap:5px;}.qualified-total-card strong{font-size:15px;}.qualified-total-card small{font-size:9px;}.qualified-total-card .qualified-live-status{display:none;}
  .qualified-table-scroll{overflow-x:auto;}
  .qualified-table-footer{display:grid;grid-template-columns:1fr auto;gap:6px;padding:8px;font-size:8px;}
  .qualified-pagination{grid-column:1/-1;justify-content:center;}.qualified-pagination button{min-width:28px;height:28px;border-radius:8px;}
  .qualified-per-page{font-size:8px;}.qualified-per-page select{height:28px;}
  .qualified-recent-head,.qualified-detail-head{min-height:40px;padding:0 10px;background:#082b61;color:#fff;}
  .qualified-recent-head strong{font-size:10px;}.qualified-recent-head span,.qualified-live-pill{font-size:7px;}
  .qualified-recent-row{grid-template-columns:30px minmax(0,1fr) auto;gap:7px;padding:7px 9px;border-bottom:1px solid #e6ebf2;}
  .qualified-recent-row time{display:none;}.qualified-recent-copy strong{font-size:10px;}.qualified-recent-copy small{font-size:8px;}
  .qualified-recent-note{margin:8px;padding:10px;border:1px solid #e0e7ef;border-radius:11px;background:#f7faff;}
}

/* V89 QUALIFIED STUDENTS — authoritative desktop reference redesign. */


/* HELP-SUPPORT-V90 — single authoritative root-level desktop implementation.
   V88 help blocks were removed. This block is intentionally placed after the
   shared public-page spacing rules so generic shell/footer spacing cannot
   override the approved Help & Support geometry. */

/* HELP-SUPPORT-V90-SHORT-DESKTOP — reference flow fitted to the browser-visible
   720px class viewport without changing the shared header/footer design. */



/* TEST-RULES-V91 — single authoritative desktop no-scroll implementation.
   Supersedes V87 completely. Scoped to Test Rules only; no wrapper, overlay stylesheet or duplicate layout. */



/* PUBLIC-INTERNAL-CONTROLLER-V101 — one authoritative desktop controller for
   How It Works, Test Rules and Help. It synchronizes the fixed information
   canvas with the real shared header height, restores functional website
   language/theme controls, and contains no mobile selectors. */



/* V101 same-page registration eligibility notice beside the EN control. */
.public-registration-open{min-height:46px;padding:0 15px;border:1px solid #b9dfc5;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#f2fff6;color:#087b38;font:800 12px/1 Manrope,sans-serif;white-space:nowrap;box-shadow:0 7px 18px rgba(8,123,56,.08);}
.public-registration-open:hover{background:#e8faee;border-color:#83c99a;}
.public-registration-dot{width:8px;height:8px;border-radius:50%;background:#18a957;box-shadow:0 0 0 4px rgba(24,169,87,.12);}
.registration-info-dialog .app-dialog-card{width:min(680px,calc(100vw - 28px));overflow:hidden;border-radius:26px;}
.registration-info-dialog .app-dialog-header{background:linear-gradient(135deg,#07356d,#0c549a);color:#fff;}
.registration-info-dialog .app-dialog-header p{color:#d5e7fb;}
.registration-info-dialog .app-dialog-icon{background:#eafff0;color:#098540;}
.registration-info-dialog .app-dialog-close{color:#fff;border-color:rgba(255,255,255,.25);background:rgba(255,255,255,.1);}
.registration-info-dialog .app-dialog-body{display:grid;gap:16px;padding:22px;background:linear-gradient(180deg,#fff,#f5f9ff);}
.registration-info-summary{display:grid;gap:8px;text-align:center;}.registration-info-status{justify-self:center;padding:6px 12px;border-radius:99px;background:#e9fff0;color:#07823c;font-size:10px;font-weight:900;letter-spacing:.1em;}
.registration-info-summary h3{margin:0;color:#092f64;font:800 23px/1.15 Montserrat,Manrope,sans-serif;}.registration-info-summary p{max-width:560px;margin:0 auto;color:#536983;font-size:13px;line-height:1.55;}
.registration-info-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}.registration-info-steps>div{min-width:0;padding:13px;border:1px solid #dae5f1;border-radius:15px;background:#fff;display:flex;align-items:center;gap:10px;}
.registration-info-steps b{width:30px;height:30px;flex:0 0 30px;border-radius:9px;display:grid;place-items:center;background:#eaf3ff;color:#0b58aa;}.registration-info-steps strong,.registration-info-steps small{display:block;}.registration-info-steps strong{color:#0b315f;font-size:13px;}.registration-info-steps small{margin-top:3px;color:#6b7f97;font-size:10px;line-height:1.3;}
.registration-info-actions{display:flex;justify-content:center;gap:10px;}.registration-info-primary,.registration-info-secondary{min-height:46px;border-radius:13px;padding:0 18px;font-weight:850;}.registration-info-primary{border:0;background:linear-gradient(135deg,#f47a24,#f15d0b);color:#fff;box-shadow:0 10px 22px rgba(241,93,11,.2);}.registration-info-secondary{border:1px solid #d7e1ec;background:#fff;color:#17375f;}
@media (max-width:900px){.registration-info-dialog .app-dialog-body{padding:16px;gap:12px;}.registration-info-steps{grid-template-columns:1fr;}.registration-info-steps>div{padding:10px;}.registration-info-summary h3{font-size:20px;}}

/* R2.10.11 UNIFIED THEME + HEADER CONTROLS — one palette authority for the complete application.
   The saved html[data-theme] state controls Home, public pages and the full selection flow;
   approved layout geometry and test logic remain untouched. */
.app-language-menu{display:none;position:absolute;right:132px;top:58px;z-index:1605;min-width:176px;padding:7px;border:1px solid var(--line-strong);border-radius:14px;background:var(--surface);box-shadow:0 18px 44px rgba(6,20,45,.18);}
.app-language-menu:not([hidden]){display:grid;gap:4px;}
.app-language-menu button{width:100%;border:0;border-radius:9px;background:transparent;padding:9px 11px;text-align:left;font-size:13px;font-weight:800;color:var(--ink);}
.app-language-menu button:hover,.app-language-menu button.active{background:var(--blue-100);color:var(--blue-600);}

/* Stable icon state and hit area for the selection-flow header. */
.app-language-desktop,.app-theme{position:relative;z-index:2;pointer-events:auto;}
.app-language-menu{pointer-events:auto;}
.app-theme .theme-sun{display:block;}
.app-theme .theme-moon{display:none;}
html[data-theme="dark"] .app-theme .theme-sun{display:none;}
html[data-theme="dark"] .app-theme .theme-moon{display:block;}

/* Complete mobile Home/header dark palette. */
html[data-theme="dark"] body.welcome-gate .public-landing{background:#06142d;color:#f5f8ff;}
html[data-theme="dark"] body.welcome-gate .public-header{
  background:#071a36;border-bottom-color:#274a74;color:#f5f8ff;box-shadow:0 8px 24px rgba(0,0,0,.28);
}
html[data-theme="dark"] body.welcome-gate .public-header-brand .gmc-inline-wordmark,
html[data-theme="dark"] body.app-flow:not(.test-mode) .app-brand .gmc-inline-wordmark{
  display:flex!important;align-items:center;justify-content:flex-start;background:rgba(255,255,255,.97);
  border:1px solid rgba(255,255,255,.8);border-radius:10px;padding:3px 6px;box-sizing:border-box;
}
html[data-theme="dark"] body.welcome-gate :is(#welcomeLanguageButton,.public-theme-toggle,.public-mobile-menu-toggle){
  background:#10294f;border-color:#365a84;color:#f7f9ff;box-shadow:0 6px 16px rgba(0,0,0,.22);
}
html[data-theme="dark"] body.welcome-gate :is(#welcomeLanguageMenu,.public-mobile-menu){
  background:#10294f;border-color:#365a84;color:#f7f9ff;box-shadow:0 18px 40px rgba(0,0,0,.38);
}
html[data-theme="dark"] body.welcome-gate :is(#welcomeLanguageMenu,.public-mobile-menu) button{background:#0d274b;color:#f5f8ff;}
html[data-theme="dark"] body.welcome-gate .public-shell{
  background:radial-gradient(circle at 50% 72%,rgba(65,139,232,.17),transparent 17rem),linear-gradient(180deg,#071a36,#08234a 72%,#06142d);
}
html[data-theme="dark"] body.welcome-gate .public-hero{color:#f5f8ff;}
html[data-theme="dark"] body.welcome-gate :is(.public-title-small,.public-title-bottom,.public-title-bottom em){color:#f5f8ff;}
html[data-theme="dark"] body.welcome-gate .public-title-memory{
  color:#8fc1ff;background:linear-gradient(180deg,#b9d9ff,#69a9ef);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
html[data-theme="dark"] body.welcome-gate .public-kicker{background:#332719;border-color:#745133;color:#ffb77b;}
html[data-theme="dark"] body.welcome-gate .public-tagline{color:#c0d0e4;}
html[data-theme="dark"] body.welcome-gate :is(.public-qualified,.public-registration-home){
  background:#10294f;border-color:#426d9c;color:#f4f8ff;box-shadow:0 8px 20px rgba(0,0,0,.2);
}
html[data-theme="dark"] body.welcome-gate .public-partners{background:#0d274b;border-color:#31577f;box-shadow:0 9px 22px rgba(0,0,0,.25);}
html[data-theme="dark"] body.welcome-gate .public-partner{background:transparent;border-color:#31577f;}
html[data-theme="dark"] body.welcome-gate .public-partner-heading{color:#b9d1ee;}
html[data-theme="dark"] body.welcome-gate .public-logo-box{background:rgba(255,255,255,.97);border-radius:9px;padding:3px 5px;}

html[data-theme="dark"] body.app-flow:not(.test-mode) :is(.profile-footer,.profile-edit-actions,.photo-change-actions,.registration-info-dialog .app-dialog-body){
  background:#0b2345;border-color:#31577f;color:#f5f8ff;
}
html[data-theme="dark"] body.app-flow:not(.test-mode) :is(.profile-photo-drop,.profile-photo-preview-panel,.profile-photo-placeholder){
  background:#10294f;border-color:#365a84;color:#b8c9df;
}



html[data-theme="dark"] body:not(.test-mode){background:#06142d;color:#f5f8ff;}
html[data-theme="dark"] body.app-flow:not(.test-mode),html[data-theme="dark"] body.app-flow:not(.test-mode) .app,
html[data-theme="dark"] body.app-flow:not(.test-mode) .main,html[data-theme="dark"] body.app-flow:not(.test-mode) main.main>section.screen{
  background:linear-gradient(145deg,#06142d,#081d3b 58%,#0a2448);color:#f5f8ff;
}
html[data-theme="dark"] body.app-flow:not(.test-mode) .app-header{background:rgba(7,24,49,.98);border-bottom-color:#ff681c;box-shadow:0 8px 28px rgba(0,0,0,.28);color:#f5f8ff;}
html[data-theme="dark"] body.app-flow:not(.test-mode) .app-brand{border-right-color:#315274;}
html[data-theme="dark"] body.app-flow:not(.test-mode) .app-heading strong{color:#f7faff;}
html[data-theme="dark"] body.app-flow:not(.test-mode) .app-heading span{color:#aebfd5;}
html[data-theme="dark"] body.app-flow:not(.test-mode) .app-language-desktop,html[data-theme="dark"] body.app-flow:not(.test-mode) .app-theme{background:#10294f;border-color:#365a84;color:#f7f9ff;}
html[data-theme="dark"] .app-language-menu{background:#10294f;border-color:#365a84;box-shadow:0 20px 46px rgba(0,0,0,.38);}
html[data-theme="dark"] .app-language-menu button{color:#f5f8ff;}
html[data-theme="dark"] .app-language-menu button:hover,html[data-theme="dark"] .app-language-menu button.active{background:#173c6c;color:#fff;}

html[data-theme="dark"] body.app-flow:not(.test-mode) :is(.email-minimal-card,.otp-minimal-card,.profile-card,.profile-section,.selection-id-card,.selection-id-details,.selection-id-photo-frame,.selection-id-qr-frame,.device-panel,.device-panel-section,.device-consent,.rules-board,.rules-item,.rules-consent-card,.result-card,.result-stat,.result-follow-card,.result-final-action,.result-social-action,.app-dialog-card,.photo-change-card,.photo-current-panel,.photo-change-controls,.photo-guideline-item,.profile-edit-card,.profile-edit-lock-note,.identity-correction-request){background:#0d274b;border-color:#31577f;color:#f5f8ff;box-shadow:0 14px 34px rgba(0,0,0,.18);}
html[data-theme="dark"] body.app-flow:not(.test-mode) :is(.profile-head h2,.profile-section-title h3,.selection-id-kicker,.selection-id-id,.device-head h2,.reference-panel-heading h3,.rules-head h2,.rules-copy h3,.result-reference-title,.result-runtime-title,.result-actions-heading h3,.result-desktop-section-title,.app-dialog-header h2,.photo-change-title-copy h2,.photo-change-guidelines h3,.profile-edit-head h2,.identity-correction-request h3){color:#f7faff;}
html[data-theme="dark"] body.app-flow:not(.test-mode) :is(.profile-head p,.profile-section-title p,.selection-id-cell label,.selection-id-cell small,.device-head p,.reference-panel-heading p,.rules-copy p,.result-stat label,.result-action small,.result-social-heading small,.result-recorded-box label,.app-dialog-header p,.photo-change-title-copy p,.photo-current-status,.photo-current-note,.profile-edit-head p,.profile-edit-lock-note,.identity-correction-request p){color:#b8c9df;}
html[data-theme="dark"] body.app-flow:not(.test-mode) :is(.field input,.field select,.otp-boxes input,.profile-edit-field input,.profile-edit-field select,.identity-correction-grid input,.photo-change-card input[type="file"]){background:#10294f;border-color:#365a84;color:#f7faff;box-shadow:none;}
html[data-theme="dark"] body.app-flow:not(.test-mode) :is(input,textarea)::placeholder{color:#91a6c1;opacity:1;}
html[data-theme="dark"] body.app-flow:not(.test-mode) select option{background:#10294f;color:#f7faff;}
html[data-theme="dark"] body.app-flow:not(.test-mode) .selection-id-media{background:linear-gradient(180deg,#09295a,#071f45);}
html[data-theme="dark"] body.app-flow:not(.test-mode) .selection-id-warning{background:#102f50;border-color:#315b8d;color:#dbe9fb;}
html[data-theme="dark"] body.app-flow:not(.test-mode) .device-warning{background:#332719;border-color:#745133;color:#ffd8b5;}
html[data-theme="dark"] body.app-flow:not(.test-mode) .rules-tab{background:#10294f;border-color:#365a84;color:#e8f1ff;}
html[data-theme="dark"] body.app-flow:not(.test-mode) .rules-tab.active{background:linear-gradient(135deg,#f47b24,#e96317);color:#fff;border-color:#f47b24;}
html[data-theme="dark"] body.app-flow:not(.test-mode) .result-recorded{background:#123c32;border-color:#2d7a61;}
html[data-theme="dark"] body.app-flow:not(.test-mode) .result-recorded :is(strong,small,label){color:#ddfff1;}
html[data-theme="dark"] body.app-flow:not(.test-mode) .result-recorded-box{background:#0f302b;border-color:#2d6b5a;}
html[data-theme="dark"] body.app-flow:not(.test-mode) .result-follow-section{border-color:#31577f;}

html[data-theme="dark"] :is(.app-dialog,.photo-change-modal,.profile-edit-modal) :is(.app-dialog-backdrop,.photo-change-backdrop,.profile-edit-backdrop){background:rgba(1,8,20,.78);}

html[data-theme="dark"] #qualifiedView{background:linear-gradient(180deg,#07172f,#091f40);color:#f5f8ff;}
html[data-theme="dark"] #qualifiedView :is(.qualified-search-box,.qualified-total-card,.public-qualified-table-wrap,.public-qualified-detail,.qualified-recent-row,.qualified-recent-note){background:#0d274b;border-color:#31577f;color:#f5f8ff;}
html[data-theme="dark"] #qualifiedView :is(input,select){background:#10294f;border-color:#365a84;color:#f5f8ff;}
html[data-theme="dark"] #qualifiedView :is(th,td,.qualified-student-cell strong,.qualified-recent-copy strong,.qualified-detail-student h3,.qualified-detail-grid strong){color:#eef5ff;}
html[data-theme="dark"] #qualifiedView :is(.qualified-recent-copy small,.qualified-detail-student p,.qualified-detail-grid small,.qualified-table-footer){color:#b8c9df;}
html[data-theme="dark"] #qualifiedView .qualified-detail-grid div{background:#10294f;border-color:#365a84;}



/* Exact dark-theme coverage for the authoritative desktop application screens.
   These selectors only change palette; no approved geometry, spacing or flow is changed. */

/* V95 Admin-verification popups: palette-only dark mode. */
html[data-theme="dark"] .photo-change-modal .photo-change-card,
html[data-theme="dark"] .photo-change-modal .photo-change-head,
html[data-theme="dark"] .photo-change-modal .photo-change-body,
html[data-theme="dark"] .photo-change-modal .photo-change-actions,
html[data-theme="dark"] .administrative-review-popup-theme .app-dialog-card,
html[data-theme="dark"] .administrative-review-popup-theme .app-dialog-header,
html[data-theme="dark"] .administrative-review-popup-theme .app-dialog-body{background:#0d274b;color:#eef5ff;border-color:#31577f;}
html[data-theme="dark"] .photo-change-modal .photo-change-close,
html[data-theme="dark"] .administrative-review-popup-theme .app-dialog-close,
html[data-theme="dark"] .administrative-review-actions .attempts-close-btn{background:#10294f;color:#eef5ff;border-color:#4b72a6;}
html[data-theme="dark"] .photo-change-modal .photo-change-title-copy h2,
html[data-theme="dark"] .photo-change-modal .photo-current-panel h3,
html[data-theme="dark"] .photo-change-modal .photo-change-upload strong,
html[data-theme="dark"] .photo-change-modal .photo-change-guidelines h3,
html[data-theme="dark"] .administrative-review-popup-theme .app-dialog-header h2,
html[data-theme="dark"] .administrative-review-copy h3{color:#eef5ff;}
html[data-theme="dark"] .photo-change-modal .photo-change-title-copy p,
html[data-theme="dark"] .photo-change-modal .photo-current-status,
html[data-theme="dark"] .photo-change-modal .photo-change-upload small,
html[data-theme="dark"] .administrative-review-popup-theme .app-dialog-header p,
html[data-theme="dark"] .administrative-review-copy>p{color:#b8c9df;}
html[data-theme="dark"] .photo-change-modal .photo-change-photo-ring,
html[data-theme="dark"] .photo-change-modal #photoChangeInput,
html[data-theme="dark"] .photo-change-modal #photoChangeInput::file-selector-button{background:#10294f;color:#dceafb;border-color:#365a84;}
html[data-theme="dark"] .photo-change-modal .photo-change-upload{background:linear-gradient(120deg,#10294f,#0d274b);border-color:#5a8fe4;}
html[data-theme="dark"] .photo-change-modal .photo-guideline-item{background:linear-gradient(120deg,#122d55,#10294f);color:#d8e6f8;}
html[data-theme="dark"] .photo-change-modal .photo-current-note,
html[data-theme="dark"] .administrative-review-note{background:linear-gradient(120deg,#3a291e,#32251c);color:#ffd8bb;}
html[data-theme="dark"] .photo-change-modal .photo-change-divider{background:#31577f;}
html[data-theme="dark"] .administrative-review-saved{background:linear-gradient(120deg,#102f50,#10294f);color:#d9eaff;}
html[data-theme="dark"] .administrative-review-headset{background:linear-gradient(145deg,#10294f,#0d274b);}



/* Theme continuity through the secure timed stages. Geometry and fair-play black lock remain unchanged. */
html[data-theme="light"] body.test-mode #screen-memorize,
html[data-theme="light"] body.test-mode #screen-recall{
  background:radial-gradient(circle at 84% 6%,rgba(244,123,36,.08),transparent 24rem),linear-gradient(145deg,#f5f8fc,#eaf1f9);color:#0a1e3f;
}
html[data-theme="light"] body.test-mode .stage-logo-light{display:block;}
html[data-theme="light"] body.test-mode .stage-logo-dark{display:none;}
html[data-theme="dark"] body.test-mode .stage-logo-light{display:none;}
html[data-theme="dark"] body.test-mode .stage-logo-dark{display:block;}
html[data-theme="light"] body.test-mode :is(.stage-clock,.stage-attempt-box,.stage-info,.stage-bottom-item){background:#fff;border-color:#d3dfed;color:#0a2858;box-shadow:0 8px 22px rgba(7,35,76,.06);}
html[data-theme="light"] body.test-mode .stage-security,
html[data-theme="light"] body.test-mode :is(.stage-bottom-item small,.stage-submit small){color:#5d7190;}
html[data-theme="light"] body.test-mode :is(.words-card,.memory-row,.recall-row){background:#fff;color:#10213d;border-color:#dce5f0;}
html[data-theme="light"] body.test-mode :is(.memory-row header,.recall-row header){border-color:#e3eaf3;}
html[data-theme="light"] body.test-mode .recall-item .idx{background:#edf3fb;color:#566d8e;}
html[data-theme="light"] body.test-mode .recall-answer{background:#f8fafc;border-color:#d6e1ee;color:#10213d;}
html[data-theme="light"] .focus-wrap{
  background:radial-gradient(circle at 50% 42%,#eef5ff,#f8fbff 68%);color:#0a2858;
}
html[data-theme="light"] .focus-wrap .focus-content h2{color:#0a2858;}
html[data-theme="light"] .focus-wrap .focus-content p,
html[data-theme="light"] .focus-start-line{color:#5d7190;}
html[data-theme="light"] .focus-ring-inner{fill:rgba(236,244,255,.92);stroke:rgba(66,117,186,.17);}
html[data-theme="light"] .focus-ring-track{stroke:rgba(64,118,190,.17);}
html[data-theme="light"] .focus-secure-panel{background:rgba(255,255,255,.88);border-color:#d5e2f1;box-shadow:0 16px 36px rgba(8,35,74,.08);}
html[data-theme="light"] .focus-secure-panel-item{border-color:#dce6f2;}
html[data-theme="light"] .focus-secure-panel-item span,
html[data-theme="light"] .focus-secure-panel-item-env strong{color:#0a2858;}
html[data-theme="light"] .focus-secure-footer{color:#0a2858;border-color:#d7e2ee;}
html[data-theme="light"] .focus-secure-footer b{color:#0a2858;}

@media (max-width:900px){
  body.app-flow:not(.test-mode) .app-header{
    grid-template-columns:minmax(80px,1fr) 46px 42px 56px;gap:6px;
  }
  body.app-flow:not(.test-mode) .app-brand{grid-column:1;min-width:0;}
  body.app-flow:not(.test-mode) .app-language-desktop{
    display:flex!important;grid-column:2;width:46px;min-width:46px;height:42px;
    align-items:center;justify-content:center;gap:3px;padding:0 5px;font-size:10px;
  }
  body.app-flow:not(.test-mode) .app-theme{grid-column:3;width:42px;height:42px;}
  body.app-flow:not(.test-mode) .app-step{grid-column:4;width:56px;min-width:56px;}
  .app-language-menu[hidden]{display:none!important;}
  .app-language-menu:not([hidden]){
    display:grid!important;right:104px;top:56px;min-width:154px;max-width:calc(100vw - 20px);z-index:1705;
  }
}

/* MOBILE-PROFILE-EDITOR-V101 — authoritative compact editor.
   Desktop geometry and all non-editor mobile screens remain outside this scope. */
@media (max-width:900px){
  .profile-edit-modal{padding:8px;align-items:center;background:rgba(5,20,44,.76);backdrop-filter:blur(14px) saturate(120%);}
  .profile-edit-modal .profile-edit-card{
    width:min(376px,calc(100vw - 16px));height:auto;
    max-height:calc(var(--visible-height,100dvh) - 16px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;
    overflow:hidden;border:1px solid rgba(211,223,238,.98);border-radius:25px;background:#f8fbff;
    box-shadow:0 32px 90px rgba(0,18,48,.42)
  ;}
  .profile-edit-modal .profile-edit-close{
    position:absolute;top:16px;right:16px;z-index:20;width:40px;height:40px;display:grid;place-items:center;
    border:1px solid rgba(255,255,255,.24);border-radius:11px;background:rgba(2,25,60,.38);
    color:#fff;font-size:20px;box-shadow:none
  ;}
  .profile-edit-modal .profile-edit-head{
    min-height:142px;padding:25px 62px 20px 22px;display:grid;grid-template-columns:1fr;
    align-content:center;gap:7px;background:linear-gradient(145deg,#031b43 0%,#07376f 100%);
    border-bottom:3px solid #ff710b;color:#fff
  ;}
  .profile-edit-modal .profile-edit-step{
    display:inline-flex;align-items:center;width:max-content;padding:6px 10px;border-radius:999px;
    background:rgba(255,116,18,.16);color:#ffad68;font-size:8px;font-weight:900;letter-spacing:.085em
  ;}
  .profile-edit-modal .profile-edit-head h2{
    margin:0;color:#fff;font:800 25px/1.05 Montserrat,Manrope,sans-serif;letter-spacing:-.035em
  ;}
  .profile-edit-modal .profile-edit-head p{margin:0;color:#d5e4f6;font-size:10.5px;line-height:1.4;}
  .profile-edit-modal .profile-edit-body{min-height:0;overflow:auto;padding:14px 15px 12px;background:linear-gradient(180deg,#fbfdff,#f5f9fe);}
  .profile-edit-modal .profile-edit-lock-note,
  .profile-edit-modal .profile-edit-locked-field{display:none!important;}
  .profile-edit-modal .profile-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 9px;}
  .profile-edit-modal .profile-edit-field{min-width:0;display:grid;align-content:start;gap:5px;}
  .profile-edit-modal .profile-edit-field.full,
  .profile-edit-modal .profile-edit-mobile-wide{grid-column:1/-1;}
  .profile-edit-modal .profile-edit-field label{
    color:#183c6c;font-size:8.5px;line-height:1.2;font-weight:900;letter-spacing:.015em
  ;}
  .profile-edit-modal .profile-edit-field input,
  .profile-edit-modal .profile-edit-field select{
    width:100%;min-width:0;min-height:42px;padding:0 11px;border:1px solid #d8e3ef;border-radius:10px;
    background:#fff;color:#102f5f;font-size:11px;box-shadow:0 4px 12px rgba(8,38,80,.025)
  ;}
  .profile-edit-modal .identity-correction-request{
    margin-top:12px;padding:12px;border:1px solid #d9e5f2;border-radius:14px;
    background:linear-gradient(145deg,#f8fbff,#edf5ff);box-shadow:0 8px 22px rgba(8,38,80,.035)
  ;}
  .profile-edit-modal .identity-correction-request>div:first-child{display:grid;gap:3px;}
  .profile-edit-modal .identity-correction-request h3{
    margin:0;color:#0c3269;font:800 15px/1.15 Montserrat,Manrope,sans-serif
  ;}
  .profile-edit-modal .identity-correction-request p{margin:0 0 9px;color:#607796;font-size:9px;line-height:1.35;}
  .profile-edit-modal .identity-correction-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
  .profile-edit-modal .identity-correction-grid label{min-width:0;gap:4px;color:#173a69;font-size:8px;line-height:1.2;}
  .profile-edit-modal .identity-correction-grid label.full{grid-column:1/-1;}
  .profile-edit-modal .identity-correction-grid input{
    width:100%;min-width:0;min-height:38px;padding:5px 9px;border:1px solid #d5e2f0;border-radius:9px;
    background:#fff;color:#102f5f;font-size:10px
  ;}
  .profile-edit-modal .identity-correction-grid input[type="file"]{padding:6px;font-size:8px;}
  .profile-edit-modal .identity-correction-grid small{font-size:7.5px;line-height:1.3;color:#6b7f99;}
  .profile-edit-modal .identity-correction-request .btn{
    width:100%;min-height:38px;margin-top:9px;border-radius:10px;padding:0 10px;font-size:10px
  ;}
  .profile-edit-modal .profile-edit-error{margin-top:7px;font-size:9px;line-height:1.3;}
  .profile-edit-modal .profile-edit-actions{
    position:static;display:grid;grid-template-columns:.8fr 1.2fr;gap:9px;padding:11px 15px 13px;
    border-top:1px solid #dce5f0;background:rgba(255,255,255,.98)
  ;}
  .profile-edit-modal .profile-edit-actions .btn{min-height:44px;border-radius:11px;padding:0 10px;font-size:11px;}
}

@media (max-width:900px) and (max-height:650px){
  .profile-edit-modal .profile-edit-head{min-height:108px;padding:16px 56px 13px 16px;}
  .profile-edit-modal .profile-edit-head h2{font-size:20px;}
  .profile-edit-modal .profile-edit-head p{display:none;}
  .profile-edit-modal .profile-edit-body{padding:9px 11px;}
  .profile-edit-modal .profile-edit-grid{gap:7px;}
  .profile-edit-modal .profile-edit-field input{min-height:36px;}
  .profile-edit-modal .identity-correction-request{margin-top:8px;padding:9px;}
  .profile-edit-modal .profile-edit-actions{padding:8px 11px;}
}

/* MOBILE-RESULT-TWO-PANEL-V101 — Score + Stay Connected only.
   Existing desktop Result composition and all result actions remain intact. */
@media (max-width:900px){
  body[data-screen="result"] .mobile-module-steps-result{grid-template-columns:repeat(2,minmax(0,1fr));}

  body[data-result-panel="summary"] #screen-result .result-reference-shell{
    display:grid;grid-template-rows:auto auto;align-content:start;gap:8px
  ;}
  body[data-result-panel="summary"] #screen-result .result-summary-card{
    height:auto;min-height:0;padding:11px 12px
  ;}
  body[data-result-panel="summary"] #screen-result .result-stats{
    display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin-top:8px
  ;}
  body[data-result-panel="summary"] #screen-result .result-stat:nth-child(1),
  body[data-result-panel="summary"] #screen-result .result-stat:nth-child(2){grid-column:span 3;}
  body[data-result-panel="summary"] #screen-result .result-stat:nth-child(3),
  body[data-result-panel="summary"] #screen-result .result-stat:nth-child(4),
  body[data-result-panel="summary"] #screen-result .result-stat:nth-child(5){grid-column:span 2;}
  body[data-result-panel="summary"] #screen-result .result-stat:nth-child(n/**/+3):nth-child(-n/**/+5){
    min-height:52px;grid-template-columns:28px minmax(0,1fr);gap:5px;padding:6px
  ;}
  body[data-result-panel="summary"] #screen-result .result-stat:nth-child(n/**/+3):nth-child(-n/**/+5) .result-stat-icon{
    width:28px;height:28px
  ;}
  body[data-result-panel="summary"] #screen-result .result-stat:nth-child(n/**/+3):nth-child(-n/**/+5) .result-stat-icon svg{
    width:18px;height:18px
  ;}
  body[data-result-panel="summary"] #screen-result .result-stat:nth-child(n/**/+3):nth-child(-n/**/+5) small{font-size:7px;}
  body[data-result-panel="summary"] #screen-result .result-stat:nth-child(n/**/+3):nth-child(-n/**/+5) strong{font-size:13px;}
  body[data-result-panel="summary"] #screen-result .result-review-stat,
  body[data-result-panel="summary"] #screen-result .result-reference-note{display:none!important;}
  body[data-result-panel="summary"] #screen-result .result-complete-check{
    position:relative;width:25px;height:25px;display:inline-grid;place-items:center;font-size:0
  ;}
  body[data-result-panel="summary"] #screen-result .result-complete-check::before{
    content:"";width:7px;height:13px;border-right:2px solid #0b5a9f;border-bottom:2px solid #0b5a9f;
    transform:rotate(45deg) translate(-1px,-1px)
  ;}

  body[data-result-panel="summary"] #screen-result .result-right-column{display:block;min-height:0;}
  body[data-result-panel="summary"] #screen-result .result-actions-card{
    display:block;height:auto;min-height:0;padding:8px;border-radius:14px
  ;}
  body[data-result-panel="summary"] #screen-result .result-actions-heading,
  body[data-result-panel="summary"] #screen-result .result-attempt-summary,
  body[data-result-panel="summary"] #screen-result #tryAgainResultBtn,
  body[data-result-panel="summary"] #screen-result #resultRegistrationAction{display:none!important;}
  body[data-result-panel="summary"] #screen-result .result-final-actions{
    display:grid;grid-template-columns:1fr;gap:7px
  ;}
  body[data-result-panel="summary"] #screen-result #resultDownloadCardAction,
  body[data-result-panel="summary"] #screen-result #resultAchievementAction{
    display:grid!important;width:100%;min-width:0;min-height:54px;padding:7px 10px;
    grid-template-columns:30px minmax(0,1fr);gap:6px;border-radius:10px
  ;}
  body[data-result-panel="summary"] #screen-result #resultDownloadCardAction .result-action-icon,
  body[data-result-panel="summary"] #screen-result #resultAchievementAction .result-action-icon{
    width:30px;height:30px;border-radius:8px
  ;}
  body[data-result-panel="summary"] #screen-result #resultDownloadCardAction strong,
  body[data-result-panel="summary"] #screen-result #resultAchievementAction strong{
    font-size:9.5px;line-height:1.2;white-space:normal
  ;}
  body[data-result-panel="summary"] #screen-result #resultDownloadCardAction small,
  body[data-result-panel="summary"] #screen-result #resultAchievementAction small{display:none;}
  body[data-result-panel="summary"] #screen-result #resultAchievementAction:disabled{opacity:.56;filter:saturate(.65);}

  body[data-result-panel="share"] #screen-result .result-reference-shell{
    display:grid;grid-template-rows:auto auto;align-content:start;gap:8px
  ;}
  body[data-result-panel="share"] #screen-result .result-recorded{height:auto;min-height:0;}
  body[data-result-panel="share"] #screen-result .result-right-column{
    min-height:0;height:auto;display:flex;flex-direction:column;gap:8px
  ;}
  body[data-result-panel="share"] #screen-result .result-social-card{
    order:1;min-height:0;height:auto;display:flex;flex:0 0 auto;flex-direction:column;justify-content:flex-start
  ;}
  body[data-result-panel="share"] #screen-result .result-recorded-head small{display:none!important;}
  body[data-result-panel="share"] #screen-result .result-social-heading strong{font-size:19px;}
  body[data-result-panel="share"] #screen-result .result-social-actions{display:grid;gap:7px;}
  body[data-result-panel="share"] #screen-result .result-social-action{min-height:54px;}
  body[data-result-panel="share"] #screen-result .result-follow-section{display:none!important;}
  body[data-result-panel="share"] #screen-result .result-actions-card{
    order:2;display:block;height:auto;min-height:0;padding:0;border:0;background:transparent;box-shadow:none
  ;}
  body[data-result-panel="share"] #screen-result .result-actions-heading,
  body[data-result-panel="share"] #screen-result .result-attempt-summary,
  body[data-result-panel="share"] #screen-result #resultDownloadCardAction,
  body[data-result-panel="share"] #screen-result #resultAchievementAction,
  body[data-result-panel="share"] #screen-result #resultRegistrationAction{display:none!important;}
  body[data-result-panel="share"] #screen-result .result-final-actions{display:block;}
  body[data-result-panel="share"] #screen-result #tryAgainResultBtn:not([hidden]){
    display:grid;width:100%;min-height:62px;margin:0;padding:7px 14px;border-radius:12px
  ;}
  body[data-result-panel="share"] #screen-result .result-actions-card:has(#tryAgainResultBtn[hidden]){display:none;}
  body[data-result-panel="share"] #screen-result .result-recorded-check{
    position:relative;font-size:0
  ;}
  body[data-result-panel="share"] #screen-result .result-recorded-check::before{
    content:"";width:7px;height:13px;border-right:2px solid #159449;border-bottom:2px solid #159449;
    transform:rotate(45deg) translate(-1px,-1px)
  ;}
}

/* QUALIFICATION-POPUP-V97 — sole authoritative qualification-confirmed popup.
   Root rebuild: no wrapper page, no overlay stylesheet and no legacy popup geometry. */
.qualified-popup-theme{background:rgba(3,14,35,.72);backdrop-filter:blur(12px) saturate(120%);}
.qualified-popup-theme .app-dialog-card{
  width:min(920px,calc(100vw - 56px));max-height:calc(100vh - 44px);overflow:hidden;
  border:1px solid rgba(208,220,236,.96);border-radius:24px;background:#f8fbff;
  box-shadow:0 34px 100px rgba(0,20,55,.34)
;}
.qualified-popup-theme .app-dialog-header{background:linear-gradient(115deg,#061d45 0%,#07386f 100%);
  min-height:104px;padding:20px 24px;display:grid;grid-template-columns:54px minmax(0,1fr) 42px;
  align-items:center;gap:16px;
  border-bottom:3px solid #ff6a00;color:#fff
;}
.qualified-popup-theme .app-dialog-icon{
  width:52px;height:52px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(145deg,#ff8a17,#f16300);
  color:#fff;font:900 24px/1 Montserrat,Manrope,sans-serif;box-shadow:0 11px 26px rgba(241,99,0,.32)
;}
.qualified-popup-theme .app-dialog-header>div{min-width:0;}
.qualified-popup-theme .app-dialog-header h2{margin:0;color:#fff;font:800 24px/1.08 Montserrat,Manrope,sans-serif;letter-spacing:-.025em;}
.qualified-popup-theme .app-dialog-header p{margin:7px 0 0;color:#d8e6f7;font:500 13px/1.35 Manrope,Arial,sans-serif;}
.qualified-popup-theme .app-dialog-close{
  position:static;width:40px;height:40px;border-radius:12px;border:1px solid rgba(255,255,255,.22);
  background:rgba(255,255,255,.10);color:#fff;font-size:20px
;}
.qualified-popup-theme .app-dialog-body{padding:18px;background:linear-gradient(180deg,#fbfdff,#f4f8fd);}
.qualified-success-popup{display:grid;grid-template-rows:auto auto auto auto;gap:12px;}
.qualified-reference-main{
  display:grid;grid-template-columns:156px minmax(0,1fr);gap:22px;align-items:center;min-height:150px;padding:15px 18px;
  border:1px solid #dce6f2;border-radius:18px;background:#fff;box-shadow:0 7px 18px rgba(8,38,80,.035)
;}
.qualified-photo-wrap{position:relative;width:140px;justify-self:center;}
.qualified-photo{width:140px;height:112px;border-radius:16px;overflow:hidden;border:3px solid #ff7817;background:#eef4fb;box-shadow:0 10px 24px rgba(8,38,80,.14);}
.qualified-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 24%;}
.qualified-photo-badge{position:absolute;right:-7px;bottom:-7px;width:30px;height:30px;border:4px solid #fff;border-radius:50%;display:grid;place-items:center;background:#17b75d;color:#fff;font-weight:900;box-shadow:0 7px 16px rgba(23,183,93,.25);}
.qualified-message-copy{min-width:0;}
.qualified-congrats-kicker{margin-bottom:7px;color:#f16a00;font-size:9px;font-weight:900;letter-spacing:.105em;text-transform:uppercase;}
.qualified-message-copy h3{margin:0;color:#092b63;font:800 27px/1.08 Montserrat,Manrope,sans-serif;letter-spacing:-.03em;}
.qualified-student-name{color:#f06400;}
.qualified-attempt-line{display:flex;align-items:center;gap:9px;margin-top:12px;color:#173d70;font-size:14px;line-height:1.3;}
.qualified-attempt-line .ok{width:28px;height:28px;flex:0 0 auto;display:grid;place-items:center;border-radius:50%;background:#e5f8ec;color:#109147;font-weight:900;}
.qualified-note{margin:9px 0 0;color:#6c7e98;font-size:13px;line-height:1.4;}
.qualified-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
.qualified-info-card{
  min-width:0;min-height:64px;display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px 11px;
  border:1px solid #dce6f2;border-radius:14px;background:#fff
;}
.qualified-info-icon{width:36px;height:36px;border-radius:10px;background:#eaf3ff;color:#1269c4;display:grid;place-items:center;}
.qualified-info-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.qualified-info-copy{display:grid;min-width:0;gap:2px;}
.qualified-info-copy span{font-size:8px;color:#71839e;text-transform:uppercase;font-weight:900;letter-spacing:.04em;}
.qualified-info-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:#0b3269;}
.qualified-copy-btn{width:32px;height:32px;border:0;border-radius:9px;background:#edf4ff;color:#1267bd;display:grid;place-items:center;}
.qualified-copy-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.qualified-info-card.attempt,.qualified-info-card.status{grid-template-columns:38px minmax(0,1fr);}
.qualified-info-card.status .qualified-info-icon{background:#ebf9f0;color:#11934b;}
.qualified-info-card.status .qualified-info-copy strong{color:#0b8440;}
.qualified-actions-wrap{min-width:0;}
.qualified-popup-downloads{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;}
.qualified-popup-downloads .popup-action{
  min-width:0;min-height:52px;display:grid;grid-template-columns:34px minmax(0,1fr) 18px;align-items:center;gap:9px;padding:7px 11px;
  border:1px solid #d8e3ef;border-radius:13px;background:#fff;color:#10366a;text-align:left;font:800 13px/1.15 Manrope,Arial,sans-serif;
  box-shadow:0 5px 14px rgba(8,38,80,.025);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease
;}
.qualified-popup-downloads .popup-action:hover{transform:translateY(-1px);box-shadow:0 9px 22px rgba(8,38,80,.08);border-color:#b7cce5;}
.qualified-popup-downloads .popup-action>b{justify-self:end;color:#91a5c0;font-size:15px;}
.popup-action-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:9px;background:#eaf3ff;color:#126bc4;flex:0 0 auto;}
.popup-action-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.qualified-popup-downloads .popup-action.result-card{background:#eef9f2;color:#0a8542;border-color:#d6ecdf;}
.qualified-popup-downloads .popup-action.result-card .popup-action-icon{background:#daf4e4;color:#0b8b44;}
.qualified-popup-downloads .popup-action.edit-profile{background:#fff7ed;color:#a84c00;border-color:#f2dfca;}
.qualified-popup-downloads .popup-action.edit-profile .popup-action-icon{background:#ffead6;color:#d65f00;}
.qualified-secure-note{min-height:28px;display:flex;align-items:center;justify-content:center;gap:7px;color:#6a7d96;font-size:10px;text-align:center;}
.qualified-secure-note svg{width:17px;height:17px;fill:none;stroke:#14914b;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}


@media (max-width:900px){
  .qualified-popup-theme{padding:8px;align-items:center;background:rgba(5,20,44,.76);backdrop-filter:blur(14px) saturate(120%);}
  .qualified-popup-theme .app-dialog-card{
    width:min(376px,calc(100vw - 16px));height:min(834px,calc(var(--visible-height,100dvh) - 16px));
    max-height:calc(var(--visible-height,100dvh) - 16px);border-radius:25px;overflow:auto;
    overscroll-behavior:contain;background:#f8fbff;box-shadow:0 32px 90px rgba(0,18,48,.42)
  ;}
  .qualified-popup-theme .app-dialog-header{
    position:relative;min-height:156px;padding:25px 24px 18px;display:grid;
    grid-template-columns:1fr;justify-items:center;align-content:start;gap:13px;text-align:center;
    background:linear-gradient(145deg,#031b43 0%,#07376f 100%);border-bottom:3px solid #ff710b
  ;}
  .qualified-popup-theme .app-dialog-icon{
    width:54px;height:54px;border-radius:16px;font-size:0;
    box-shadow:0 13px 28px rgba(241,99,0,.38)
  ;}
  .qualified-popup-theme .app-dialog-icon::before{
    content:"";width:13px;height:23px;border-right:3px solid #fff;border-bottom:3px solid #fff;
    transform:rotate(45deg) translate(-2px,-2px)
  ;}
  .qualified-popup-theme .app-dialog-header>div{display:grid;justify-items:center;gap:5px;}
  .qualified-popup-theme .app-dialog-header h2{font-size:20px;line-height:1.15;}
  .qualified-popup-theme .app-dialog-header p{max-width:280px;margin:0;font-size:12.5px;line-height:1.45;}
  .qualified-popup-theme .app-dialog-close{
    position:absolute;top:17px;right:17px;width:40px;height:40px;border-radius:11px;
    font-size:20px;background:rgba(2,25,60,.42)
  ;}
  .qualified-popup-theme .app-dialog-body{padding:12px 16px 10px;}
  .qualified-success-popup{gap:8px;}
  .qualified-reference-main{
    min-height:0;padding:10px 13px 9px;display:grid;grid-template-columns:1fr;justify-items:center;
    gap:5px;border-radius:15px;text-align:center
  ;}
  .qualified-photo-wrap{width:148px;justify-self:center;}
  .qualified-photo{width:148px;height:110px;border-width:2px;border-radius:13px;}
  .qualified-photo-badge{display:none;}
  .qualified-message-copy{display:grid;justify-items:center;}
  .qualified-congrats-kicker{display:none;}
  .qualified-message-copy h3{font-size:18px;line-height:1.12;}
  .qualified-student-name{display:block;}
  .qualified-attempt-line{gap:7px;margin-top:7px;font-size:11px;line-height:1.3;}
  .qualified-attempt-line .ok{width:22px;height:22px;}
  .qualified-attempt-line .ok{position:relative;font-size:0;}
  .qualified-attempt-line .ok::before{
    content:"";width:6px;height:11px;border-right:2px solid #109147;border-bottom:2px solid #109147;
    transform:rotate(45deg) translate(-1px,-1px)
  ;}
  .qualified-note{max-width:270px;margin:5px 0 0;font-size:10.5px;line-height:1.35;}
  .qualified-info-grid{grid-template-columns:1fr;gap:6px;}
  .qualified-info-card{
    min-height:45px;grid-template-columns:34px minmax(0,1fr) 32px;gap:8px;
    padding:6px 9px;border-radius:11px
  ;}
  .qualified-info-icon{width:32px;height:32px;border-radius:9px;}
  .qualified-info-icon svg{width:18px;height:18px;}
  .qualified-info-copy{gap:1px;text-align:left;}
  .qualified-info-copy span{font-size:8px;letter-spacing:.035em;}
  .qualified-info-copy strong{font-size:12.5px;}
  .qualified-info-card .qualified-copy-btn{grid-column:auto;width:30px;height:30px;border-radius:8px;}
  .qualified-copy-btn svg{width:16px;height:16px;}
  .qualified-info-card.attempt,.qualified-info-card.status{grid-template-columns:34px minmax(0,1fr);}
  .qualified-popup-downloads{grid-template-columns:1fr;gap:6px;}
  .qualified-popup-downloads .popup-action{
    min-height:40px;grid-template-columns:31px minmax(0,1fr) 16px;gap:8px;
    padding:5px 9px;border-radius:10px;font-size:11.5px
  ;}
  .qualified-popup-downloads .popup-action>b{display:block;font-size:14px;}
  .popup-action-icon{width:30px;height:30px;border-radius:8px;}
  .popup-action-icon svg{width:17px;height:17px;}
  .qualified-secure-note{min-height:26px;padding-top:1px;font-size:9px;line-height:1.3;gap:6px;}
  .qualified-secure-note svg{width:16px;height:16px;}
}

@media (max-width:900px) and (max-height:650px){
  .qualified-popup-theme .app-dialog-card{max-height:calc(100dvh - 8px);}
  .qualified-popup-theme .app-dialog-header{min-height:130px;padding:19px 18px 13px;gap:8px;}
  .qualified-popup-theme .app-dialog-icon{width:42px;height:42px;font-size:21px;}
  .qualified-popup-theme .app-dialog-header h2{font-size:17px;}.qualified-popup-theme .app-dialog-header p{font-size:10px;}
  .qualified-popup-theme .app-dialog-body{padding:7px 10px 9px;}
  .qualified-reference-main{padding:7px;grid-template-columns:78px minmax(0,1fr);text-align:left;}
  .qualified-photo-wrap{width:72px;}.qualified-photo{width:72px;height:74px;}
  .qualified-message-copy{justify-items:start;}.qualified-message-copy h3{font-size:14px;}.qualified-note{display:none;}
  .qualified-info-card{min-height:42px;padding:4px 7px;}.qualified-popup-downloads .popup-action{min-height:35px;}
  .qualified-secure-note{display:none;}
}

html[data-theme="dark"] .qualified-popup-theme .app-dialog-card{background:#0c2344;border-color:#355980;}
html[data-theme="dark"] .qualified-popup-theme .app-dialog-body{background:linear-gradient(180deg,#0b1f3d,#0b2447);}
html[data-theme="dark"] .qualified-reference-main,html[data-theme="dark"] .qualified-info-card,html[data-theme="dark"] .qualified-popup-downloads .popup-action{background:#102b51;border-color:#365c87;color:#eef6ff;}
html[data-theme="dark"] .qualified-message-copy h3,html[data-theme="dark"] .qualified-info-copy strong{color:#f4f8ff;}
html[data-theme="dark"] .qualified-attempt-line,html[data-theme="dark"] .qualified-note,html[data-theme="dark"] .qualified-info-copy span,html[data-theme="dark"] .qualified-secure-note{color:#b8cce4;}
html[data-theme="dark"] .qualified-popup-downloads .popup-action.result-card{background:#12372f;border-color:#2e6b56;color:#98efbd;}
html[data-theme="dark"] .qualified-popup-downloads .popup-action.edit-profile{background:#3a2a1e;border-color:#6c4a2e;color:#ffc997;}

/* V101 MOBILE SECURE FLOW ROOT AUTHORITY
   Concentration, Memorization and Recall use this single mobile layout source. */
@media (max-width:900px){
  .focus-wrap{grid-template-rows:82px minmax(0,1fr) 42px;width:100vw;height:100dvh;overflow:hidden;}
  .focus-secure-head{display:flex;align-items:center;justify-content:center;padding:8px 10px 0;}
  .focus-secure-panel{width:min(100%,372px);min-width:0;display:grid;grid-template-columns:.82fr .82fr 1.36fr;align-items:stretch;overflow:hidden;border:1px solid rgba(83,141,221,.28);border-radius:14px;background:rgba(255,255,255,.88);box-shadow:0 10px 24px rgba(8,35,74,.08);}
  .focus-secure-panel-item{min-width:0;min-height:64px;padding:8px 6px;display:grid;align-content:center;justify-items:center;gap:4px;border-left:1px solid #dce6f2;text-align:center;}
  .focus-secure-panel-item:first-child{border-left:0;}
  .focus-secure-panel-item span{font-size:9px;line-height:1;letter-spacing:.05em;color:#5d7190;}
  .focus-secure-panel-item strong,.focus-secure-panel-item strong i{margin:0;color:#f16b10;font:800 12px/1.1 Montserrat,Manrope,sans-serif;font-style:normal;white-space:nowrap;}
  .focus-secure-panel-item-env{grid-template-columns:28px minmax(0,1fr);justify-items:start;align-items:center;column-gap:6px;padding-inline:7px;text-align:left;}
  .focus-secure-panel-item-env svg{width:26px;height:26px;max-width:26px;max-height:26px;min-width:26px;min-height:26px;fill:none;stroke:#176bc6;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
  .focus-secure-panel-item-env strong{color:#0a2858;font-size:10px;line-height:1.18;white-space:normal;}
  .focus-wrap .focus-content{width:100%;min-height:0;padding:8px 18px 4px;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;align-items:center;justify-items:center;gap:7px;text-align:center;}
  .focus-wrap .focus-content h2{margin:0;font-size:clamp(26px,7.3vw,31px);line-height:1.05;}
  .focus-wrap .focus-content p{margin:0;font-size:13px;line-height:1.25;}
  .focus-ring-shell{position:relative;width:min(58vw,224px);aspect-ratio:1;margin:4px auto;display:grid;place-items:center;}
  .focus-ring-shell .focus-ring-svg,.focus-wrap .focus-ring-shell .count{grid-area:1/1;}
  .focus-ring-shell .focus-ring-svg{width:100%;height:100%;max-width:100%;max-height:100%;}
  .focus-wrap .focus-ring-shell .count{position:relative;inset:auto;width:72%;height:72%;min-height:0;aspect-ratio:1;margin:0;padding:0;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;box-shadow:none;color:#f16b10;font:900 clamp(58px,18vw,76px)/1 Montserrat,Manrope,sans-serif;text-align:center;overflow:visible;}
  .focus-wrap .focus-ring-shell .count .preparing-label,.focus-wrap .focus-ring-shell .count.start-label{color:#f16b10;font:900 clamp(22px,6.5vw,27px)/1 Montserrat,Manrope,sans-serif;letter-spacing:.015em;white-space:nowrap;}
  .focus-wrap .focus-ring-shell .count.start-label{width:72%;height:72%;min-height:0;padding:0;border:0;border-radius:50%;background:transparent;box-shadow:none;}
  .focus-start-line{margin:0;font-size:12px;line-height:1.2;}
  .focus-secure-footer{min-width:0;padding:5px 10px max(5px,env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:center;border-top:1px solid #d7e2ee;color:#0a2858;font-size:10px;line-height:1.2;text-align:center;}
  .focus-secure-footer>span{display:none!important;}
  .focus-secure-footer>b{font-weight:600;color:#0a2858;}

  body.test-mode #screen-memorize,body.test-mode #screen-recall{padding:0 0 36px;overflow:hidden;}
  body.test-mode[data-screen="memorize"] #screen-memorize .test-shell,body.test-mode[data-screen="recall"] #screen-recall .test-shell{width:100%;height:calc(100dvh - 36px);max-height:calc(100dvh - 36px);padding:5px 8px 4px;display:grid;grid-template-rows:54px 42px 54px minmax(0,1fr) 50px;gap:5px;overflow:hidden;}
  body.test-mode[data-screen="memorize"] #screen-memorize .stage-topbar,body.test-mode[data-screen="recall"] #screen-recall .stage-topbar{grid-row:1;min-height:54px;padding:4px 7px;display:grid;grid-template-columns:minmax(78px,1fr) auto;align-items:center;gap:7px;border-radius:10px;}
  body.test-mode[data-screen="memorize"] #screen-memorize .stage-logo-pair,body.test-mode[data-screen="recall"] #screen-recall .stage-logo-pair{width:88px;height:42px;display:grid;place-items:center start;}
  body.test-mode[data-screen="memorize"] #screen-memorize .stage-logo,body.test-mode[data-screen="recall"] #screen-recall .stage-logo{width:88px;height:38px;max-width:88px;max-height:38px;object-fit:contain;object-position:left center;}
  html[data-theme] body.test-mode #screen-memorize .stage-logo-light,html[data-theme] body.test-mode #screen-recall .stage-logo-light{display:none!important;}
  html[data-theme] body.test-mode #screen-memorize .stage-logo-dark,html[data-theme] body.test-mode #screen-recall .stage-logo-dark{display:block!important;}
  body.test-mode[data-screen="memorize"] #screen-memorize .stage-meta,body.test-mode[data-screen="recall"] #screen-recall .stage-meta{height:44px;display:flex;align-items:stretch;gap:5px;}
  body.test-mode[data-screen="memorize"] #screen-memorize .stage-clock,body.test-mode[data-screen="recall"] #screen-recall .stage-clock{min-width:132px;height:44px;min-height:44px;padding:4px 8px;border-radius:10px;}
  body.test-mode[data-screen="memorize"] #screen-memorize .stage-attempt-box,body.test-mode[data-screen="recall"] #screen-recall .stage-attempt-box{min-width:54px;height:44px;min-height:44px;padding:4px 6px;border-radius:10px;}
  body.test-mode .timer-copy{height:100%;display:grid;grid-template-rows:auto 1fr;place-items:center;align-content:center;gap:2px;}
  body.test-mode .timer-copy small,body.test-mode .stage-attempt-box small{font-size:9px;line-height:1.05;}
  body.test-mode .stage-clock strong{font-size:22px;line-height:1;}
  body.test-mode .stage-attempt-box strong{font-size:10px;line-height:1.1;white-space:nowrap;}

  body.test-mode[data-screen="memorize"] #screen-memorize .block-tabs,body.test-mode[data-screen="recall"] #screen-recall .block-tabs{grid-row:2;width:auto;min-width:0;margin:0;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;overflow:visible;}
  body.test-mode[data-screen="memorize"] #screen-memorize .block-tab,body.test-mode[data-screen="recall"] #screen-recall .block-tab{width:100%;min-width:0;height:42px;min-height:42px;padding:3px 4px;border:1px solid #c9d7e8;border-radius:9px;background:linear-gradient(180deg,#fff,#f1f5fa);color:#0a2858;box-shadow:0 5px 13px rgba(7,35,76,.08);font-size:13px;line-height:1.05;font-weight:900;}
  body.test-mode[data-screen="memorize"] #screen-memorize .block-tab.active,body.test-mode[data-screen="recall"] #screen-recall .block-tab.active{border-color:#f5740b;background:linear-gradient(135deg,#ff7b12,#f16408);color:#fff;box-shadow:0 7px 16px rgba(241,100,8,.24);}
  body.test-mode .block-tab span,body.test-mode .block-tab small{display:block;white-space:nowrap;}
  body.test-mode .block-tab small{font-size:9px;margin-top:2px;font-weight:800;}
  body.test-mode[data-screen="memorize"] #screen-memorize .stage-info,body.test-mode[data-screen="recall"] #screen-recall .stage-info{grid-row:3;width:auto;min-width:0;height:54px;min-height:54px;margin:0;padding:6px 8px;gap:6px;border-radius:10px;overflow:hidden;}
  body.test-mode .stage-info-main{min-width:0;gap:6px;}
  body.test-mode .stage-info-icon{width:25px;height:25px;flex:0 0 25px;font-size:10px;}
  body.test-mode .stage-info-line{font-size:11.5px;line-height:1.18;}
  body.test-mode .stage-security{display:none!important;}

  body.test-mode[data-screen="memorize"] #screen-memorize .words-card,body.test-mode[data-screen="recall"] #screen-recall .words-card{grid-row:4;width:auto;min-width:0;height:100%;min-height:0;margin:0;padding:7px;border-radius:12px;overflow:hidden;}
  body.test-mode[data-screen="memorize"] #screen-memorize .word-grid,body.test-mode[data-screen="recall"] #screen-recall .recall-grid{width:100%;height:100%;min-height:0;margin:0;overflow-y:auto;overscroll-behavior:contain;}
  body.test-mode[data-screen="memorize"] #screen-memorize .word-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(10,minmax(36px,1fr));grid-auto-flow:column;gap:4px;}
  body.test-mode[data-screen="memorize"] #screen-memorize .word{min-width:0;min-height:36px;padding:2px 8px;grid-template-columns:27px minmax(0,1fr);gap:4px;border-radius:8px;font-size:16px;line-height:1.05;font-weight:850;}
  body.test-mode[data-screen="memorize"] #screen-memorize .word .idx{font-size:13px;font-weight:900;}
  body.test-mode[data-screen="recall"] #screen-recall .recall-grid{display:grid;gap:4px;}
  body.test-mode[data-screen="recall"] #screen-recall .recall-item{min-width:0;min-height:39px;grid-template-columns:32px minmax(0,1fr);gap:5px;}
  body.test-mode[data-screen="recall"] #screen-recall .recall-item .idx{min-height:39px;height:39px;font-size:14px;font-weight:900;}
  body.test-mode[data-screen="recall"] #screen-recall .recall-answer{min-height:39px;height:39px;padding:4px 10px;font-size:15px;line-height:1.1;}

  body.test-mode[data-screen="memorize"] #screen-memorize .stage-bottom,body.test-mode[data-screen="recall"] #screen-recall .stage-bottom{grid-row:5;width:auto;min-width:0;height:50px;min-height:50px;margin:0;display:block;}
  body.test-mode[data-screen="memorize"] #screen-memorize .stage-bottom-item,body.test-mode[data-screen="recall"] #screen-recall .stage-bottom-item{display:none!important;}
  body.test-mode[data-screen="memorize"] #screen-memorize .stage-submit,body.test-mode[data-screen="recall"] #screen-recall .stage-submit{position:static;width:100%;height:50px;min-height:50px;margin:0;padding:3px 0 0;border:0;background:transparent;}
  body.test-mode[data-screen="memorize"] #screen-memorize .stage-submit .btn,body.test-mode[data-screen="recall"] #screen-recall .stage-submit .btn{width:100%;height:43px;min-height:43px;margin:0;border-radius:10px;font-size:15px;line-height:1.05;}
  body.test-mode #screen-memorize .stage-submit small,body.test-mode #screen-recall .stage-submit small,body.test-mode #screen-recall #recallSubmitStatus{display:none!important;}
  body.test-mode #screen-memorize .memorize-cta .finish-line-1,body.test-mode #screen-memorize .memorize-cta .finish-line-2{display:inline;font-size:15px;}
  body.test-mode #screen-memorize .memorize-cta .finish-line-1::after{content:" ";}

  body.test-mode #screen-memorize .secure-stage-footer,body.test-mode #screen-recall .secure-stage-footer{position:fixed;left:0;right:0;bottom:0;width:100vw;height:36px;min-height:36px;max-height:36px;margin:0;padding:5px 8px max(5px,env(safe-area-inset-bottom));display:flex!important;align-items:center;justify-content:center;border-radius:0;z-index:2400;overflow:hidden;}
  body.test-mode #screen-memorize .secure-stage-footer>strong,body.test-mode #screen-memorize .secure-stage-footer>i,body.test-mode #screen-recall .secure-stage-footer>strong,body.test-mode #screen-recall .secure-stage-footer>i,body.test-mode #screen-memorize .secure-stage-footer-mobile,body.test-mode #screen-recall .secure-stage-footer-mobile{display:none!important;}
  body.test-mode #screen-memorize .secure-stage-footer-desktop,body.test-mode #screen-recall .secure-stage-footer-desktop{display:block!important;color:#fff;font-size:11px;line-height:1.15;white-space:nowrap;}
  body.test-mode #testWatermark,body[data-screen="result"] #testWatermark{display:none!important;}
}

/* GMC R2.4 authoritative Student Portal - mobile confirmed dashboard, receipt, Zoom and updates */
/* GMC R2.7 authoritative Student Portal — mobile app navigation + routed screens */
.portal-body{margin:0;min-height:100dvh;background:linear-gradient(180deg,#f5f8fc,#eef3f9);color:#10223e;font-family:Poppins,Montserrat,Arial,sans-serif;}.portal-body *{box-sizing:border-box;}
.portal-header{position:sticky;top:0;z-index:100;display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;min-height:58px;padding:8px 11px;background:rgba(245,245,247,.92);color:#1d1d1f;box-shadow:none;border-bottom:1px solid rgba(0,0,0,.06);}.portal-brand{display:flex;align-items:center;color:#1d1d1f;text-decoration:none;min-width:0;}.portal-brand-logo{display:block;width:122px;max-width:50vw;height:auto;object-fit:contain;}.portal-brand-mobile-copy{display:none;}.portal-brand b{font:800 14px/1.05 Montserrat,Poppins,sans-serif;}.portal-brand small{opacity:.72;font-size:7.5px;letter-spacing:.14em;text-transform:uppercase;margin-top:3px;}.portal-main-nav,.portal-account{display:none;}.portal-header.has-basic-menu .portal-account{display:flex;justify-self:end;}.portal-header.has-basic-menu .portal-account .portal-user{display:none;}.portal-header.has-basic-menu .portal-account button{border:1px solid #e8e8ed;background:#fff;color:#3a3a3c;border-radius:9px;padding:8px 10px;font:700 8px Poppins,sans-serif;}.portal-mobile-menu{display:block;position:relative;margin:0;}.portal-mobile-menu>summary{list-style:none;width:39px;height:39px;border-radius:11px;display:grid;place-items:center;cursor:pointer;border:1px solid #e8e8ed;background:#fff;color:#3a3a3c;font:800 24px/1 Arial,sans-serif;}.portal-mobile-menu>summary::-webkit-details-marker{display:none;}.portal-mobile-menu[open]>summary{background:#1d1d1f;color:#fff;}.portal-mobile-menu-popover{position:absolute;right:0;top:47px;width:min(285px,calc(100vw - 22px));padding:8px;background:#fff;border:1px solid #dce6f2;border-radius:15px;box-shadow:0 20px 55px rgba(3,25,59,.25);display:flex;flex-direction:column;gap:5px;}.portal-mobile-menu-popover>a{display:grid;grid-template-columns:30px 1fr;align-items:center;gap:9px;padding:10px 11px;border-radius:11px;text-decoration:none;color:#15365f;background:#f7f9fc;border:1px solid transparent;}.portal-mobile-menu-popover>a:active{background:#edf5ff;border-color:#cee0f4;}.portal-mobile-menu-popover>a span{width:27px;height:27px;border-radius:8px;display:grid;place-items:center;background:#eaf3ff;color:#0e5eaf;font-size:8px;font-weight:900;}.portal-mobile-menu-popover>a b{font-size:10px;}.portal-mobile-menu-popover form{margin:3px 0 0;padding-top:7px;border-top:1px solid #e7edf5;}.portal-mobile-menu-popover button{width:100%;border:0;border-radius:10px;padding:10px;background:#1d1d1f;color:#fff;font:750 10px Poppins,sans-serif;}
.portal-shell{width:calc(100% - 18px);margin:9px auto 14px;}.portal-app-shell{min-height:calc(100dvh - 105px);}
.portal-hero{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:11px;padding:16px;border-radius:17px;color:#fff;background:radial-gradient(circle at 88% 5%,#367bd3 0,#0e4a95 34%,#071d47 76%);box-shadow:0 12px 28px rgba(7,38,83,.18);overflow:hidden;}.portal-hero:after{content:"";position:absolute;width:190px;height:190px;border-radius:50%;right:-88px;top:-112px;border:1px solid rgba(255,255,255,.10);box-shadow:0 0 0 27px rgba(255,255,255,.03);}.portal-hero>div{position:relative;z-index:2;}.portal-hero-compact{min-height:0;}.portal-hero h1{font:800 22px/1.08 Montserrat,Poppins,sans-serif;margin:5px 0;}.portal-hero p{margin:0;color:#d7e6ff;font-size:8.5px;line-height:1.5;}.portal-eyebrow{font-size:7px;letter-spacing:.15em;font-weight:850;color:#ffad42;}.portal-status-card{padding:10px 12px;background:rgba(255,255,255,.98);border-radius:12px;color:#0a2c61;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:10px;}.portal-status-card small{font-size:6.5px;letter-spacing:.12em;color:#7b8799;font-weight:850;}.portal-status-card strong{font-size:11px;margin-left:auto;}.portal-status-card span{font-size:7px;color:#e56f10;font-weight:800;white-space:nowrap;}.portal-hero.is-confirmed .portal-status-card strong{color:#087143;}
.portal-latest-strip{display:grid;grid-template-columns:34px minmax(0,1fr);gap:9px;margin:8px 0;padding:10px 11px;border-radius:13px;background:#fff;border:1px solid #dce6f2;box-shadow:0 6px 18px rgba(8,42,90,.045);}.portal-latest-strip.has-update{border-left:3px solid #f47b13;}.portal-latest-icon{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:#fff3e7;color:#ea6f0b;font:850 15px Montserrat,sans-serif;}.portal-latest-copy{min-width:0;display:flex;flex-direction:column;}.portal-latest-copy span{font-size:6px;letter-spacing:.12em;font-weight:850;color:#e56f10;}.portal-latest-copy strong{font-size:10px;color:#123563;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.portal-latest-copy p{margin:2px 0 0;font-size:7px;line-height:1.4;color:#718097;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}.portal-latest-strip>a{grid-column:2;justify-self:start;color:#0d59aa;text-decoration:none;font-size:7.5px;font-weight:800;}
.portal-app-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:8px 0;}.portal-app-actions>a{display:grid;grid-template-columns:29px minmax(0,1fr) 12px;align-items:center;gap:7px;min-height:64px;padding:9px;background:#fff;border:1px solid #dce6f2;border-radius:13px;text-decoration:none;box-shadow:0 5px 16px rgba(8,42,90,.04);}.portal-action-index{width:28px;height:28px;border-radius:8px;background:#eaf3ff;color:#0f5eae;display:grid;place-items:center;font-size:7px;font-weight:900;}.portal-app-actions .is-success .portal-action-index{background:#e9f8f1;color:#087143;}.portal-app-actions div{display:flex;min-width:0;flex-direction:column;}.portal-app-actions small{font-size:5.8px;letter-spacing:.08em;color:#768399;font-weight:850;}.portal-app-actions strong{font-size:8.5px;color:#0b3470;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.portal-app-actions i{font-style:normal;font-size:18px;color:#a2afc0;}.portal-app-actions .is-success strong{color:#087143;}
.portal-dashboard-grid{display:grid;grid-template-columns:1fr;gap:7px;}.portal-dashboard-card{background:#fff;border:1px solid #dce6f2;border-radius:13px;padding:11px 12px;box-shadow:0 5px 16px rgba(8,42,90,.04);}.portal-dashboard-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:8px;}.portal-dashboard-head span{font-size:6px;letter-spacing:.12em;color:#0071e3;font-weight:850;}.portal-dashboard-head h2{font:800 13px/1.15 Montserrat,Poppins,sans-serif;color:#102f5c;margin:2px 0 0;}.portal-dashboard-head a{font-size:7px;color:#0d59aa;font-weight:800;text-decoration:none;}.portal-next-session-row{display:grid;grid-template-columns:42px 1fr;align-items:center;gap:9px;}.portal-next-session-row>div:last-child{display:flex;flex-direction:column;min-width:0;}.portal-next-session-row small{font-size:5.8px;color:#0071e3;font-weight:850;letter-spacing:.08em;}.portal-next-session-row strong{font-size:9px;color:#17365f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.portal-next-session-row span{font-size:7px;color:#748197;}.portal-soft-copy{font-size:8px;line-height:1.45;color:#718097;margin:4px 0 8px;}.portal-mini-cta{display:inline-block;text-decoration:none;padding:8px 10px;font-size:8px;}.portal-dashboard-status{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:7px;}.portal-dashboard-status article{display:flex;flex-direction:column;gap:2px;padding:8px;border-radius:10px;background:#f8fafd;border:1px solid #dfe7f2;min-width:0;}.portal-dashboard-status span{font-size:5.7px;letter-spacing:.06em;text-transform:uppercase;color:#7a8799;font-weight:850;}.portal-dashboard-status strong{font-size:7.5px;color:#123563;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.portal-dashboard-status article:nth-child(-n/**/+2) strong{color:#087143;}
.portal-page-head{display:flex;align-items:center;gap:9px;margin:0 0 8px;padding:11px 12px;background:#fff;border:1px solid #dce6f2;border-radius:13px;box-shadow:0 5px 16px rgba(8,42,90,.04);}.portal-page-head>a{width:31px;height:31px;border-radius:9px;display:grid;place-items:center;text-decoration:none;background:#eef5ff;color:#0d59aa;font-size:17px;flex:0 0 auto;}.portal-page-head>div{min-width:0;display:flex;flex-direction:column;}.portal-page-head span{font-size:5.8px;letter-spacing:.12em;color:#0071e3;font-weight:850;}.portal-page-head h1{font:800 16px/1.15 Montserrat,Poppins,sans-serif;color:#102f5c;margin:2px 0;}.portal-page-head p{margin:0;font-size:7px;line-height:1.35;color:#748197;}.portal-view-frame,.portal-payment-page{max-width:none;margin:0;}.portal-profile-grid{display:grid;grid-template-columns:1fr;gap:7px;}.portal-profile-access{position:static;}
.portal-panel{background:#fff;border:1px solid #dce5f2;border-radius:14px;padding:13px;box-shadow:0 6px 20px rgba(9,40,91,.045);margin-bottom:8px;}.portal-panel-head{display:flex;justify-content:space-between;gap:8px;align-items:flex-start;border-bottom:1px solid #e8edf5;padding-bottom:9px;margin-bottom:10px;}.portal-panel-head span{font-size:5.8px;font-weight:850;letter-spacing:.12em;color:#0071e3;}.portal-panel-head h2{font:800 14px/1.2 Montserrat,Poppins,sans-serif;margin:2px 0 0;color:#102c59;}.portal-panel-head>b{font-size:6px;color:#0d7a50;background:#e9f8f1;border:1px solid #c1e9d8;border-radius:999px;padding:4px 6px;white-space:nowrap;}.portal-identity{display:flex;gap:8px;align-items:center;padding:8px;background:#f5f8fd;border-radius:10px;margin-bottom:9px;}.portal-identity img{width:45px;height:45px;object-fit:cover;border-radius:10px;border:2px solid #fff;}.portal-identity div{display:flex;flex-direction:column;min-width:0;}.portal-identity strong{font-size:10px;}.portal-identity span{color:#1d5eb4;font-size:7px;font-weight:780;}.portal-identity small{color:#79869a;font-size:6.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.portal-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px;}.portal-summary-grid>div{display:flex;flex-direction:column;gap:2px;padding:8px;border-radius:9px;background:#f8fafd;border:1px solid #e3eaf3;min-width:0;}.portal-summary-grid>div.wide{grid-column:1/-1;}.portal-summary-grid span{font-size:5.5px;letter-spacing:.06em;text-transform:uppercase;color:#7b8798;font-weight:800;}.portal-summary-grid b{font-size:7.3px;color:#17365f;line-height:1.35;overflow-wrap:anywhere;}.portal-lock-note{display:flex;flex-direction:column;gap:2px;margin-top:7px;padding:8px;border-radius:9px;background:#edf6ff;border:1px solid #d0e3f7;}.portal-lock-note strong{font-size:7px;color:#185594;}.portal-lock-note span{font-size:6.5px;line-height:1.4;color:#647691;}
.portal-paid-mark{display:flex;flex-direction:column;align-items:center;text-align:center;padding:16px 10px;margin-bottom:10px;border-radius:12px;background:linear-gradient(150deg,#eafaf2,#f7fcfa);border:1px solid #cbead9;}.portal-paid-mark span{font-size:5.8px;font-weight:900;letter-spacing:.12em;color:#10834e;}.portal-paid-mark strong{font:850 25px/1.1 Montserrat,Poppins,sans-serif;color:#087143;margin:4px 0 2px;}.portal-paid-mark small{font-size:7px;color:#728478;}.portal-payment-summary{display:grid;gap:4px;}.portal-payment-summary div{display:flex;justify-content:space-between;gap:8px;padding:7px 0;border-bottom:1px solid #e8edf4;}.portal-payment-summary span{font-size:6.5px;color:#7b8798;}.portal-payment-summary b{font-size:7px;color:#17365f;text-align:right;overflow-wrap:anywhere;}.portal-receipt-download{display:block;text-decoration:none;text-align:center;margin-top:10px;font-size:8px;}.portal-receipt-help{text-align:center;font-size:6.3px;line-height:1.4;color:#8994a4;margin:6px 4px 0;}
.portal-session-list{display:flex;flex-direction:column;gap:6px;}.portal-session-list article{display:grid;grid-template-columns:41px minmax(0,1fr);align-items:center;gap:8px;padding:8px;border:1px solid #dfe7f2;border-radius:11px;background:#fff;}.portal-session-list article.is-live{border-color:#f0b06b;background:#fff8ee;}.portal-session-date{width:39px;height:41px;border-radius:9px;background:#0071e3;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;}.portal-session-date strong{font:800 14px/1 Montserrat,sans-serif;}.portal-session-date span{font-size:5.5px;letter-spacing:.08em;text-transform:uppercase;margin-top:2px;}.portal-session-copy{min-width:0;}.portal-session-copy>span{font-size:5px;letter-spacing:.1em;color:#0071e3;font-weight:850;}.portal-session-copy h3{font-size:8px;color:#163760;margin:2px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.portal-session-copy p,.portal-session-copy small{display:block;margin:0;color:#708097;font-size:6px;}.portal-session-copy small{color:#147050;font-weight:750;margin-top:2px;}.portal-session-list .portal-zoom-join,.portal-session-list .portal-session-status{grid-column:1/-1;text-align:center;}.portal-zoom-join{width:100%;text-decoration:none;padding:7px 8px;}.portal-session-status{font-size:6px;font-weight:800;color:#6f7d91;background:#e9eef5;border-radius:999px;padding:5px 7px;}.portal-zoom-rule{display:flex;flex-direction:column;gap:2px;margin-top:7px;padding:8px;border-radius:9px;background:#eef5ff;border:1px solid #cfe0f7;}.portal-zoom-rule strong{font-size:6.5px;color:#174f94;}.portal-zoom-rule span{font-size:6px;line-height:1.4;color:#5e718d;}
.portal-updates{display:grid;grid-template-columns:1fr;gap:6px;}.portal-updates article{padding:10px;border-radius:10px;background:#fff;border:1px solid #dfe6f0;}.portal-updates article.urgent{background:#fff1ee;border-color:#f2c6bd;}.portal-updates article.important{background:#fff8e9;border-color:#f1dab1;}.portal-updates article>span{font-size:5.3px;letter-spacing:.09em;color:#0071e3;font-weight:850;}.portal-updates h3{font-size:9px;margin:3px 0;color:#17365f;}.portal-updates p{font-size:7px;line-height:1.45;color:#53627a;}.portal-updates time{font-size:5.8px;color:#8792a3;}
.portal-active{display:flex;flex-direction:column;gap:10px;background:linear-gradient(150deg,#101114,#28292d);color:#fff;border-color:transparent;}.portal-active h2{margin:3px 0;font:800 15px Montserrat,sans-serif;}.portal-active p{margin:0;color:#d6e6fb;font-size:7px;}.portal-pin-form{display:grid;grid-template-columns:1fr;gap:6px;}.portal-pin-form label{font-size:6.5px;color:#d6e6fb;}.portal-pin-ready{display:flex;flex-direction:column;padding:8px 9px;border:1px solid rgba(255,255,255,.20);border-radius:9px;background:rgba(255,255,255,.08);}.portal-pin-ready strong{font-size:8px;color:#8ff0c2;}.portal-pin-ready span{font-size:6.5px;color:#d6e6fb;}
.portal-kpis{display:grid;grid-template-columns:1fr;gap:6px;margin:8px 0;}.portal-kpis article{padding:10px 11px;border:1px solid #dce5f2;border-radius:11px;background:#fff;display:flex;flex-direction:column;}.portal-kpis span{font-size:6px;text-transform:uppercase;letter-spacing:.08em;color:#738199;font-weight:800;}.portal-kpis strong{font-size:12px;color:#0b3470;margin:2px 0;}.portal-kpis small{font-size:6px;color:#8b97aa;}.portal-grid{display:grid;grid-template-columns:1fr;gap:0;}.portal-form{display:flex;flex-direction:column;gap:8px;}.portal-form-grid{display:grid;grid-template-columns:1fr;gap:7px;}.portal-form label{display:flex;flex-direction:column;gap:4px;color:#34445c;font-size:7px;font-weight:700;}.portal-form label.full{grid-column:auto;}.portal-form input,.portal-form select,.portal-form textarea,.portal-pin-form input{width:100%;border:1px solid #cfd9e8;background:#fbfcff;border-radius:8px;padding:8px 9px;color:#15243d;font:500 8px Poppins,Arial,sans-serif;outline:none;}.portal-primary{border:0;border-radius:9px;background:#0071e3;color:#fff;font:750 8px Poppins,sans-serif;padding:9px 10px;cursor:pointer;box-shadow:0 6px 13px rgba(237,113,23,.14);}.portal-primary:disabled{opacity:.45;}.portal-terms{padding:8px;border:1px solid #f1d6b7;background:#fffaf3;border-radius:9px;}.portal-terms label{display:flex;flex-direction:row;align-items:flex-start;margin:5px 0;}.portal-terms label input[type=checkbox]{width:13px;margin:1px 5px 0 0;}.portal-terms p{font-size:6px;line-height:1.4;}.portal-terms label:last-child{flex-direction:column;}.portal-upi-qr{display:block;width:min(100%,250px);margin:0 auto 9px;border-radius:10px;border:1px solid #dce4f1;}.portal-bank{display:grid;gap:5px;padding:9px;border-radius:9px;background:#f4f7fc;margin-bottom:9px;}.portal-bank div{display:flex;flex-direction:column;gap:1px;font-size:7px;}.portal-bank span{color:#748198;}.portal-bank b{color:#173866;}.portal-bank small{padding-top:5px;border-top:1px solid #dce4ef;color:#e16e12;font-size:6px;font-weight:800;}.portal-payment-state{display:flex;flex-direction:column;gap:2px;padding:8px;border-radius:8px;background:#eef7ff;border:1px solid #cadff4;margin-bottom:8px;font-size:7px;}.portal-empty{text-align:center;padding:20px 12px;}.portal-empty h2{font-size:14px;}.portal-empty p{font-size:7px;line-height:1.45;}
.portal-alert{width:100%;margin:0 auto 7px;padding:8px 9px;border-radius:9px;font-size:7px;font-weight:650;}.portal-alert.error{background:#fff0ee;border:1px solid #f2c5bd;color:#9b3327;}.portal-alert.success{background:#eaf9f2;border:1px solid #bde8d4;color:#176a49;}.portal-footer{padding:10px 8px;background:#f5f5f7;color:#929299;display:flex;flex-direction:column;text-align:center;gap:2px;font-size:5.8px;}
/* R3.3.11: obsolete pre-Apple Student Portal login theme removed from root source. */
/* R3.3.11: obsolete R2.8.15 navy/orange dashboard theme removed; unified Apple mobile source is authoritative. */


@media (max-width:380px){
  body.portal-view-dashboard .portal-shell{width:calc(100% - 18px);gap:11px;}
  body.portal-view-dashboard .portal-header{padding-inline:11px;}
  body.portal-view-dashboard .portal-hero{padding:18px 15px 16px;}
  body.portal-view-dashboard .portal-hero h1{font-size:26px;}
  body.portal-view-dashboard .portal-hero p{font-size:13px;}
  body.portal-view-dashboard .portal-latest-strip{padding:14px 12px 13px;grid-template-columns:42px minmax(0,1fr);gap:9px;}
  body.portal-view-dashboard .portal-latest-copy strong{font-size:15.5px;}
  body.portal-view-dashboard .portal-latest-copy p{font-size:12.5px;}
  body.portal-view-dashboard .portal-qualification-toolkit{padding:15px 12px 13px;}
  body.portal-view-dashboard .portal-toolkit-head h2{font-size:18.5px;}
  body.portal-view-dashboard .portal-toolkit-grid{gap:7px;}
  body.portal-view-dashboard .portal-toolkit-grid>a{min-height:96px;padding:11px 9px;grid-template-columns:34px minmax(0,1fr);gap:7px;}
  body.portal-view-dashboard .portal-toolkit-grid>a>span{width:33px;height:33px;font-size:9.5px;}
  body.portal-view-dashboard .portal-toolkit-grid a strong{font-size:12.75px;}
  body.portal-view-dashboard .portal-toolkit-grid a small{font-size:10.5px;}
  body.portal-view-dashboard .portal-app-actions>a:nth-child(2){min-height:72px;padding:11px;}
}

/* R2.7 Unified Candidate Identity — mobile login/PIN only */
@media (max-width:900px){
  .candidate-auth-switch-wrap{display:flex;justify-content:center;margin:7px 0 0;padding-bottom:1px;}
  .candidate-auth-switch{border:0;background:transparent;color:#1551a0;font:700 11px/1.35 inherit;text-align:center;padding:5px;cursor:pointer;text-decoration:underline;text-underline-offset:3px;}
  #candidatePinField input{letter-spacing:.2em;font-weight:800;}
  .registration-login-eligibility{margin:8px 0 0;padding:9px;border:1px solid #ffd7b5;border-radius:12px;background:#fff8f1;display:grid;grid-template-columns:27px 1fr;gap:8px;color:#63412a;}
  .registration-login-eligibility[hidden]{display:none!important;}.registration-login-eligibility-icon{width:27px;height:27px;border-radius:8px;background:#ff6f0a;color:#fff;display:grid;place-items:center;font-weight:900;}.registration-login-eligibility strong{display:block;color:#813b09;font-size:9px;}.registration-login-eligibility p{margin:2px 0 0;font-size:8px;line-height:1.4;}.registration-login-eligibility button{grid-column:1/-1;height:34px;border:1px solid #dce7f4;border-radius:9px;background:#fff;color:#0a3977;font-size:9px;font-weight:800;}
  .pin-setup-shell{min-height:100%;display:grid;align-items:center;padding:8px 10px;}
  .pin-setup-card{width:100%;padding:16px 14px;border-radius:18px;background:#fff;border:1px solid #dfe9f5;box-shadow:0 10px 28px rgba(8,43,86,.09);}
  .pin-setup-badge{display:inline-flex;padding:5px 8px;border-radius:999px;background:#eaf8f0;color:#11854e;font-size:8px;font-weight:900;letter-spacing:.1em;}
  .pin-setup-card h2{margin:9px 0 4px;color:#082e65;font-size:20px;line-height:1.08;}.pin-setup-card>p{margin:0 0 9px;color:#60748f;font-size:10px;line-height:1.4;}
  .pin-setup-identity{padding:8px 10px;border-radius:11px;background:#f5f9ff;border:1px solid #dce8f8;margin-bottom:7px;display:grid;gap:1px;}.pin-setup-identity span{font-weight:800;color:#0a3a78;font-size:10px;}.pin-setup-identity small{color:#78889e;font-size:8px;}
  .pin-setup-card label{display:block;color:#14365f;font-size:9px;font-weight:800;margin:7px 0 3px;}.pin-setup-card label input{width:100%;height:41px;border:1px solid #cad8eb;border-radius:10px;padding:0 11px;font:800 16px/1 inherit;letter-spacing:.24em;color:#062d64;background:#fbfdff;outline:none;}
  .pin-setup-note{margin:8px 0;padding:8px 9px;border-radius:11px;background:#fff8ee;border:1px solid #ffe0b3;display:grid;gap:2px;}.pin-setup-note strong{color:#984900;font-size:9px;}.pin-setup-note span{color:#6d6f79;font-size:8px;line-height:1.35;}
  .pin-setup-primary{width:100%;height:42px;border:0;border-radius:10px;background:linear-gradient(135deg,#ff8c18,#f35e05);color:#fff;font-weight:800;font-size:11px;}
}



/* R2.10.3 — mobile profile editor: reveal proof controls only for a DOB change. */
@media (max-width:900px){
  .profile-edit-modal .identity-correction-fields[hidden]{display:none!important;}
  .profile-edit-modal .identity-correction-summary{display:grid;grid-template-columns:1fr;gap:8px;}
  .profile-edit-modal .identity-correction-summary h3{display:flex;flex-wrap:wrap;gap:4px;}
  .profile-edit-modal .identity-correction-summary h3 strong{color:#1760b8;}
  .profile-edit-modal .identity-correction-summary p{margin:0;}
  .profile-edit-modal .identity-correction-toggle{width:100%;min-height:38px;margin:0;}
  .profile-edit-modal .identity-correction-fields{margin-top:9px;padding-top:9px;border-top:1px solid #d7e3f0;}
  .profile-edit-modal .profile-edit-error:not(:empty){padding:8px 9px;border:1px solid #f3c6b0;border-radius:9px;background:#fff4ee;color:#a63f0c;font-weight:800;}
}
html[data-theme="dark"] .profile-edit-modal .identity-correction-summary h3 strong{color:#8fc1ff;}
html[data-theme="dark"] .profile-edit-modal .identity-correction-fields{border-color:#31577f;}

/* R2.10.5 Legacy Profile Completion — mobile */
@media (max-width:900px){
 body.portal-view-complete-profile .portal-shell{width:calc(100% - 18px);margin:9px auto 16px;}
 body.portal-view-complete-profile .portal-main-nav{display:none;}
 .portal-completion-head{padding:14px 15px;border-left:4px solid #f47b13;margin-bottom:10px;}
 .portal-completion-head h1{font-size:20px;}.portal-completion-head p{font-size:9.5px;line-height:1.5;}
 .portal-completion-layout{display:flex;flex-direction:column;gap:0;}
 .portal-completion-summary,.portal-completion-form-card{width:100%;padding:15px;margin-bottom:10px;}
 .portal-completion-summary{position:static;}
 .portal-completion-avatar{display:grid;grid-template-columns:68px minmax(0,1fr);gap:11px;padding:11px;margin-bottom:11px;}
 .portal-completion-avatar img{width:68px;height:68px;border-radius:12px;}
 .portal-completion-avatar strong{font-size:13px;}.portal-completion-avatar span{font-size:9px;line-height:1.45;}
 .portal-completion-checklist{grid-template-columns:1fr 1fr;gap:6px;}
 .portal-completion-checklist>div{grid-template-columns:22px minmax(0,1fr);gap:7px;padding:8px 9px;}
 .portal-completion-checklist i{width:21px;height:21px;}.portal-completion-checklist span{font-size:8.8px;}.portal-completion-checklist b{display:none;}
 .portal-completion-note{margin-top:10px;padding:10px 11px;}.portal-completion-note strong{font-size:10px;}.portal-completion-note span{font-size:8.5px;}
 .portal-completion-form-card .portal-panel-head h2{font-size:17px;}
 .portal-completion-form{gap:11px;}.portal-completion-form-grid{grid-template-columns:1fr;}
 .portal-completion-form input,.portal-completion-form select{min-height:46px;font-size:15px;}
 .portal-completion-form label{font-size:11px;}
 .portal-completion-photo-drop{grid-template-columns:78px minmax(0,1fr);gap:11px;padding:11px;}
 .portal-completion-photo-drop img{width:78px;height:90px;}.portal-completion-photo-drop strong{font-size:10.5px;}.portal-completion-photo-drop small{font-size:8px;}.portal-completion-photo-drop em{font-size:8.5px;padding:6px 8px;}
 .portal-completion-consent span{font-size:9px;}
 .portal-completion-submit{min-height:48px;font-size:13px;width:100%;}
 .portal-completion-security{font-size:8px;}
}


/* R2.10.6 mobile QR recovery state. */
@media (max-width:900px){
 #screen-id .selection-id-qr-error{inset:5px 5px 27px;gap:3px;padding:5px;border-radius:8px;}
 #screen-id .selection-id-qr-error strong{font-size:7px;}
 #screen-id .selection-id-qr-error small{font-size:5px;line-height:1.25;}
 #screen-id .selection-id-qr-error button{min-height:22px;padding:0 7px;border-radius:6px;font-size:6px;}
}


/* R2.10.7 — QR eligibility/status alignment */
#screen-id #idQrStatus.is-active{color:#149334;}
#screen-id #idQrStatus.is-blocked{color:#c55316;}
.profile-edit-field.is-optional label::after{content:" · Optional for Adult";font-size:.72em;font-weight:650;color:#7d8da4;}


/* R2.10.9 — authoritative unified mobile copyright footer. */
.gmc-footer-copy-desktop{display:none!important;}
.gmc-footer-copy-mobile{display:inline!important;}
.gmc-unified-footer{align-items:center;justify-content:center;text-align:center;}
.gmc-unified-footer .gmc-footer-copy{margin:0;color:inherit;font-weight:700;letter-spacing:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;}
.public-view-footer.gmc-unified-footer,.secure-stage-footer.gmc-unified-footer,.focus-secure-footer.gmc-unified-footer{gap:0;}
body.test-mode #screen-memorize .secure-stage-footer.gmc-unified-footer .gmc-footer-copy-mobile,body.test-mode #screen-recall .secure-stage-footer.gmc-unified-footer .gmc-footer-copy-mobile{display:inline!important;color:#fff;font-size:9px;line-height:1.15;white-space:nowrap;}
.focus-secure-footer.gmc-unified-footer .gmc-footer-copy-mobile{display:inline!important;font-size:9px;line-height:1.2;}


/* R2.14.0 Email-first smart student login */
@media (max-width:900px){
  #screen-email .candidate-email-guidance{display:grid;gap:8px;margin:10px 0 1px;}
  #screen-email .candidate-guidance-item{display:grid;grid-template-columns:30px minmax(0,1fr);gap:9px;align-items:start;padding:11px 12px;border:1px solid var(--line);border-radius:13px;background:linear-gradient(145deg,var(--surface),var(--surface-soft));}
  #screen-email .candidate-guidance-item>span{width:29px;height:29px;border-radius:9px;display:grid;place-items:center;background:var(--blue-100);color:var(--blue-600);font-weight:900;font-size:12px;}
  #screen-email .candidate-guidance-item:nth-child(1)>span{background:var(--orange-100);color:var(--orange-600);}
  #screen-email .candidate-guidance-item strong{display:block;font-size:12px;color:var(--navy-950);}
  #screen-email .candidate-guidance-item p{margin:3px 0 0;color:var(--muted);font-size:10.5px;line-height:1.4;}
  #screen-email .candidate-route-message{margin:8px 0 0;padding:10px 11px;border-radius:12px;background:var(--blue-100);border:1px solid rgba(36,104,201,.18);color:var(--navy-800);font-size:11px;font-weight:750;line-height:1.4;}
  #screen-email .candidate-route-message[hidden],#screen-email .candidate-email-guidance[hidden],#screen-email #candidateAuthSwitchWrap[hidden],#screen-email #candidateNameField[hidden],#screen-email #candidatePinField[hidden]{display:none!important;}
  #screen-email .candidate-auth-switch-wrap{display:flex;justify-content:center;margin:8px 0 0;}
  #screen-email .candidate-auth-switch{width:100%;min-height:42px;padding:0 12px;border-radius:12px;border:1px solid var(--line-strong);background:var(--surface-soft);color:var(--blue-700);font-size:12px;font-weight:800;text-decoration:none;display:flex;align-items:center;justify-content:center;text-align:center;}
  body[data-gmc-candidate-auth-mode="email"] #screen-email .email-minimal-fields,body[data-gmc-candidate-auth-mode="pin"] #screen-email .email-minimal-fields,body[data-gmc-candidate-auth-mode="otp"] #screen-email .email-minimal-fields{grid-template-columns:1fr;}
}


/* R2.14.3 authoritative mobile returning-student PIN screen. */
@media (max-width:900px){
  #screen-login-pin{width:100%;height:100%;min-height:0;padding:0;}
  #screen-login-pin .email-stage{width:100%;place-items:start center;}
  #screen-login-pin .candidate-pin-login-shell{display:block;}
  #screen-login-pin .candidate-pin-login-card{position:relative;border-radius:21px;border:1px solid var(--line-strong);box-shadow:0 14px 34px rgba(6,20,45,.085);}
  #screen-login-pin .candidate-pin-login-card::before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--navy-800) 0 55%,var(--orange-600) 100%);}
  #screen-login-pin .candidate-pin-login-kicker{display:block;margin-bottom:4px;color:var(--orange-600);font-size:8.5px;font-weight:900;letter-spacing:.11em;text-align:center;}
  #screen-login-pin .candidate-pin-login-card .email-minimal-head{margin:0 0 11px;text-align:center;}
  #screen-login-pin .candidate-pin-login-card .email-minimal-head h2{margin:0 0 5px;font-size:clamp(26px,7.7vw,33px);line-height:1.06;letter-spacing:-.04em;}
  #screen-login-pin .candidate-pin-login-card .email-minimal-head p{max-width:520px;margin:0 auto;color:var(--muted);font-size:10px;line-height:1.4;}
  #screen-login-pin .candidate-pin-login-identity{display:grid;grid-template-columns:37px minmax(0,1fr);align-items:center;gap:9px;margin:0 0 11px;border:1px solid var(--line-strong);border-radius:13px;background:var(--surface-soft);}
  #screen-login-pin .candidate-pin-login-icon{width:35px;height:35px;display:grid;place-items:center;border-radius:10px;background:var(--blue-100);color:var(--blue-600);}
  #screen-login-pin .candidate-pin-login-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
  #screen-login-pin .candidate-pin-login-email-copy{display:grid;gap:1px;min-width:0;}
  #screen-login-pin .candidate-pin-login-identity small{font-size:7.5px;letter-spacing:.09em;font-weight:900;color:var(--muted);}
  #screen-login-pin .candidate-pin-login-identity strong{font-size:11.5px;color:var(--navy-900);overflow-wrap:anywhere;}
  #screen-login-pin .candidate-pin-change-email-inline{display:none;}
  #screen-login-pin .candidate-pin-change-email-mobile{display:inline-flex;}
  #screen-login-pin .candidate-pin-login-fields{display:grid!important;grid-template-columns:1fr;margin:0;padding:0;border:0;background:transparent;box-shadow:none;}
  #screen-login-pin .candidate-pin-login-fields .field{display:grid!important;gap:5px;}
  #screen-login-pin .candidate-pin-login-fields .field label{font-size:11.5px;}
  #screen-login-pin .candidate-pin-login-fields input{height:49px;min-height:49px;font-size:16px;letter-spacing:.16em;font-weight:800;border-radius:13px;}
  #screen-login-pin .email-minimal-action{display:none!important;}
  #screen-login-pin .candidate-pin-login-links{margin:8px 0 0;}
  #screen-login-pin .candidate-pin-login-links button{border:0;background:transparent;color:var(--blue-700);font:800 10px/1.3 Manrope,sans-serif;text-decoration:underline;text-underline-offset:3px;}
  #screen-login-pin .candidate-pin-login-notice{margin-top:8px;border-radius:12px;}
  
  #screen-login-pin .candidate-pin-login-notice p{font-size:8.5px;line-height:1.38;}
  body[data-screen="login-pin"] .app-footer,body[data-gmc-screen="login-pin"] .app-footer{padding-bottom:max(7px,env(safe-area-inset-bottom));}
  body[data-screen="login-pin"] .app-footer button,body[data-gmc-screen="login-pin"] .app-footer button{min-height:50px;}
  html[data-theme="dark"] #screen-login-pin .candidate-pin-login-identity{background:#0d2749;border-color:#31577f;}
  html[data-theme="dark"] #screen-login-pin .candidate-pin-login-identity strong{color:#f5f8ff;}
}

@media (max-width:900px) and (max-height:690px){
  #screen-login-pin .email-stage{padding-top:4px;}
  #screen-login-pin .candidate-pin-login-card{padding:13px 13px 9px;}
  #screen-login-pin .candidate-pin-login-card .email-minimal-head{margin-bottom:8px;}
  #screen-login-pin .candidate-pin-login-card .email-minimal-head h2{font-size:25px;}
  #screen-login-pin .candidate-pin-login-identity{margin-bottom:8px;padding:7px 9px;}
  #screen-login-pin .candidate-pin-login-fields input{height:45px;min-height:45px;}
  #screen-login-pin .candidate-pin-login-links{margin-top:5px;}
  #screen-login-pin .candidate-pin-login-notice{margin-top:5px;padding:6px 8px;}
}


/* R2.14.4 — authoritative Returning Student mobile alignment.
   The card is content-sized and centred; the security note remains above the
   fixed action bar even while the browser password assistant is open. */
@media (max-width:900px){
  #screen-login-pin{
    overflow:auto;
    overscroll-behavior:contain;
  }
  #screen-login-pin .email-stage{
    min-height:100%;
    height:auto;
    padding:10px 13px 16px;
    display:flex!important;
    align-items:center;
    justify-content:center;
    overflow:visible;
  }
  #screen-login-pin .candidate-pin-login-shell{
    width:100%;
    max-width:620px;
    height:auto;
    min-height:0;
    margin:auto;
  }
  #screen-login-pin .candidate-pin-login-card{
    width:100%;
    height:auto;
    min-height:0;
    max-height:none;
    overflow:visible;
    display:grid!important;
    grid-auto-rows:max-content;
    align-content:start;
    row-gap:12px;
    margin:0;
    padding:18px 16px 14px;
  }
  #screen-login-pin .candidate-pin-login-card .email-minimal-head,
  #screen-login-pin .candidate-pin-login-identity,
  #screen-login-pin .candidate-pin-login-fields,
  #screen-login-pin .candidate-pin-login-links,
  #screen-login-pin .candidate-pin-login-notice{
    margin:0;
  }
  #screen-login-pin .candidate-pin-login-card .email-minimal-head{
    padding:0 2px;
  }
  #screen-login-pin .candidate-pin-login-identity{
    padding:10px 11px;
  }
  #screen-login-pin .candidate-pin-login-fields{
    gap:6px;
  }
  #screen-login-pin .candidate-pin-login-links{
    display:grid!important;
    justify-items:center;
    gap:6px;
  }
  #screen-login-pin .candidate-pin-login-links button{
    padding:2px 3px;
    min-height:24px;
  }
  #screen-login-pin .candidate-pin-login-notice{
    display:grid!important;
    grid-template-columns:32px minmax(0,1fr);
    align-items:center;
    gap:9px;
    padding:9px 10px;
  }
  

  body[data-screen="login-pin"] .app-footer,
  body[data-gmc-screen="login-pin"] .app-footer{
    grid-template-columns:minmax(112px,.42fr) minmax(0,1fr);
    gap:12px;
    padding:7px 18px max(7px,env(safe-area-inset-bottom));
    align-items:center;
  }

  /* Password-manager bars can trigger keyboard-open without showing a full
     keyboard. Keep real content space reserved for the fixed buttons. */
  body[data-screen="login-pin"].keyboard-open.app-flow .main,
  body[data-gmc-screen="login-pin"].keyboard-open.app-flow .main{
    bottom:var(--footer-height);
  }
  body[data-screen="login-pin"].keyboard-open .app-footer,
  body[data-gmc-screen="login-pin"].keyboard-open .app-footer{
    bottom:0;
  }
  body[data-screen="login-pin"].keyboard-open #screen-login-pin .email-stage,
  body[data-gmc-screen="login-pin"].keyboard-open #screen-login-pin .email-stage{
    align-items:flex-start;
    padding-bottom:18px;
  }
}

@media (max-width:900px) and (max-height:720px){
  #screen-login-pin .email-stage{align-items:flex-start;padding-top:6px;}
  #screen-login-pin .candidate-pin-login-card{row-gap:8px;padding:13px 13px 10px;}
  #screen-login-pin .candidate-pin-login-card .email-minimal-head h2{font-size:25px;}
  #screen-login-pin .candidate-pin-login-card .email-minimal-head p{font-size:9.5px;}
  #screen-login-pin .candidate-pin-login-identity{padding:7px 9px;}
  #screen-login-pin .candidate-pin-login-fields input{height:45px;min-height:45px;}
  #screen-login-pin .candidate-pin-login-links{gap:2px;}
  #screen-login-pin .candidate-pin-login-notice{padding:7px 8px;}
}

/* R2.14.5 — Mobile Returning Student security-note SVG containment. */
@media (max-width:900px){
  #screen-login-pin .candidate-pin-login-notice{
    overflow:hidden;
    min-width:0;
  }
  #screen-login-pin .candidate-pin-login-notice .verify-email-notice-icon{
    width:32px;
    height:32px;
    min-width:32px;
    min-height:32px;
    display:grid!important;
    place-items:center;
    overflow:hidden;
    border-radius:10px;
    background:var(--blue-100);
    color:var(--blue-700);
  }
  #screen-login-pin .candidate-pin-login-notice .verify-email-notice-icon svg{
    display:block!important;
    width:20px;
    height:20px;
    min-width:20px;
    min-height:20px;
    max-width:20px;
    max-height:20px;
    overflow:visible;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
  }
  #screen-login-pin .candidate-pin-login-notice p{
    min-width:0;
    margin:0;
    overflow-wrap:anywhere;
  }
}

/* R3.1.2 staging payment mobile web-app shell */
@media(max-width:900px){
  body.staging-payment-body{height:100dvh;min-height:100dvh;overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr) auto;}
  body.staging-payment-body .staging-payment-header{position:relative;top:auto;display:flex;flex-wrap:wrap;min-height:auto;padding:10px 12px;gap:8px;}
  .staging-payment-header-badge{order:3;width:100%;text-align:center;padding:6px 10px;}
  .staging-payment-header .portal-account{display:flex;margin-left:auto;}.staging-payment-header .portal-user{display:none;}
  body.staging-payment-body .staging-payment-shell{width:100%;height:100%;min-height:0;margin:0;padding:9px;display:grid;grid-template-rows:auto minmax(0,1fr);gap:8px;overflow:hidden;}
  body.staging-payment-body .portal-footer{min-height:24px;padding:5px 8px;font-size:5.8px;overflow:hidden;}
  .staging-payment-overview{gap:7px;}
  .staging-safety-banner{flex-direction:column;gap:4px;padding:9px 11px;}.staging-safety-banner strong{font-size:9px;}.staging-safety-banner span{font-size:10px;line-height:1.35;}
  .staging-payment-hero{padding:13px 15px;align-items:flex-start;flex-direction:row;border-radius:16px;gap:12px;}.staging-payment-hero h1{font-size:21px;margin:4px 0 2px;}.staging-payment-hero p{font-size:8px;}.staging-payment-hero>div:last-child{text-align:right;margin-left:auto;}.staging-payment-hero>div:last-child strong{font-size:18px;}.staging-payment-hero span{font-size:8px;}.staging-payment-hero small{font-size:8px;}
  .staging-flow-steps{grid-template-columns:1fr 1fr;gap:6px;}.staging-flow-steps article{padding:8px 9px;border-radius:12px;}.staging-flow-steps i{width:27px;height:27px;flex-basis:27px;}.staging-flow-steps span{font-size:7px;}.staging-flow-steps b{font-size:9px;margin-top:1px;}
  .staging-payment-workspace{border-radius:16px;}.staging-payment-workspace-scroll{padding:9px 9px calc(13px + env(safe-area-inset-bottom));}
  .staging-action-card{align-items:stretch;flex-direction:column;}.staging-action-card .portal-primary{width:100%;}
  .staging-result-grid{grid-template-columns:1fr;}.staging-isolation-proof{grid-template-columns:1fr 1fr;gap:7px;padding:11px;}.staging-isolation-proof div{padding:9px;}.staging-isolation-proof span{font-size:7px;}.staging-isolation-proof b{font-size:8px;}.staging-isolation-proof h2{font-size:12px;}
  .staging-verify-card dl{grid-template-columns:1fr;}
  .staging-registration-card,.staging-payment-card,.staging-receipt-card,.staging-qr-card,.staging-action-card{padding:15px;}
  .staging-step-actions{padding-bottom:calc(2px + env(safe-area-inset-bottom));}.staging-step-actions .portal-primary{min-height:44px;font-size:10px;}
}
@media(max-width:520px){
  .staging-payment-header-badge{font-size:8px;}
  .staging-payment-hero{padding:11px 12px;}.staging-payment-hero h1{font-size:18px;}.staging-payment-hero p{max-width:230px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.staging-payment-hero>div:last-child strong{font-size:16px;}
  .staging-flow-steps{display:flex;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;padding:1px 1px 4px;scrollbar-width:none;}.staging-flow-steps::-webkit-scrollbar{display:none;}.staging-flow-steps article{min-width:72%;scroll-snap-align:center;}
  .staging-isolation-proof{grid-template-columns:1fr;}
  .staging-registration-card .portal-form-grid{grid-template-columns:1fr;}
  .staging-payment-warning{flex-direction:column;gap:4px;}
}

/* R3.1.4 mobile web-app policy block */
@media(max-width:700px){.portal-policy-version{grid-template-columns:1fr auto;gap:6px 10px;}.portal-policy-version span{grid-column:1/-1;}.portal-policy-version b{font-size:10px;}.portal-policy-version strong{font-size:15px;}.portal-policy-details summary{padding:11px 12px;font-size:11px;}.portal-policy-details p{padding:0 12px 11px;font-size:10px;}.portal-policy-details small{padding:9px 12px;}}


/* R3.3.11 LIVE — authoritative unified Apple mobile Student Portal.
   This replaces the old mobile Apple-desktop adaptation in-place. It is also
   allowed on coarse-pointer touch devices so a phone cannot accidentally fall
   back to the laptop sidebar shell when the browser reports a wide viewport. */
@media (max-width:900px), (hover:none) and (pointer:coarse){
body.portal-body:not(.portal-auth-page){
 --sp-bg:#f5f5f7;--sp-panel:#fff;--sp-text:#1d1d1f;--sp-muted:#6e6e73;--sp-line:#e8e8ed;--sp-blue:#0071e3;--sp-navy:#1d1d1f;--sp-orange:#ff7a00;--sp-green:#1f9d62;--sp-shadow:0 10px 28px rgba(0,0,0,.055);
 margin:0;width:100%;max-width:100%;height:100dvh;min-height:100dvh;overflow:hidden;background:var(--sp-bg);color:var(--sp-text);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Helvetica Neue",Arial,sans-serif;display:grid!important;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;
}
body.portal-body:not(.portal-auth-page) *{box-sizing:border-box;min-width:0;}
body.portal-body:not(.portal-auth-page) .portal-header{grid-column:1;grid-row:1;position:sticky;top:0;z-index:100;width:100%;height:auto;min-height:64px;padding:9px 13px;display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;background:rgba(245,245,247,.92);border:0;border-bottom:1px solid rgba(0,0,0,.06);box-shadow:none;color:var(--sp-text);backdrop-filter:saturate(180%) blur(24px);}
body.portal-body:not(.portal-auth-page) .portal-brand{color:var(--sp-text);text-decoration:none;min-width:0;display:flex!important;align-items:center;padding:0;}
body.portal-body:not(.portal-auth-page) .portal-brand-logo{display:block!important;width:128px;max-width:54vw;height:auto;object-fit:contain;}.portal-brand-mobile-copy{display:none!important;}
body.portal-body:not(.portal-auth-page) .portal-brand b{font:800 18px/1 -apple-system,BlinkMacSystemFont,"SF Pro Display","Helvetica Neue",Arial,sans-serif;letter-spacing:-.035em;color:var(--sp-text);}
body.portal-body:not(.portal-auth-page) .portal-brand small{margin-top:3px;color:var(--sp-muted);opacity:1!important;font-size:10px;font-weight:650;letter-spacing:.06em;text-transform:uppercase;}
body.portal-body:not(.portal-auth-page) .portal-main-nav,body.portal-body:not(.portal-auth-page) .portal-account{display:none!important;}
body.portal-body:not(.portal-auth-page) .portal-mobile-menu{display:block!important;position:relative;margin:0;justify-self:end;}
body.portal-body:not(.portal-auth-page) .portal-mobile-menu>summary{width:40px;height:40px;border:1px solid var(--sp-line);border-radius:10px;background:#fff;color:#3a3a3c;display:grid!important;place-items:center;font-size:24px;line-height:1;box-shadow:none;}
body.portal-body:not(.portal-auth-page) .portal-mobile-menu>summary::-webkit-details-marker{display:none!important;}
body.portal-body:not(.portal-auth-page) .portal-mobile-menu[open]>summary{background:#ececef;color:var(--sp-text);}
body.portal-body:not(.portal-auth-page) .portal-mobile-menu-popover{position:absolute;right:0;top:47px;width:min(286px,calc(100vw - 26px));max-height:min(70vh,520px);overflow-y:auto;padding:8px;border-radius:14px;background:#fff;border:1px solid var(--sp-line);box-shadow:0 20px 50px rgba(0,0,0,.13);color:var(--sp-text);}
body.portal-body:not(.portal-auth-page) .portal-mobile-menu-popover>a{display:grid!important;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;min-height:50px;padding:9px 11px;border-radius:11px;text-decoration:none;color:#15365f;background:#f7f7f9;border:1px solid transparent;}
body.portal-body:not(.portal-auth-page) .portal-mobile-menu-popover>a span{width:31px;height:31px;border-radius:9px;display:grid!important;place-items:center;background:#ececef;color:#555;font-size:9px;font-weight:900;}
body.portal-body:not(.portal-auth-page) .portal-mobile-menu-popover>a b{font-size:13px;line-height:1.25;}
body.portal-body:not(.portal-auth-page) .portal-mobile-menu-popover form{margin:3px 0 0;padding-top:7px;border-top:1px solid #e7edf5;}
body.portal-body:not(.portal-auth-page) .portal-mobile-menu-popover button{width:100%;min-height:44px;border:0;border-radius:10px;padding:10px;background:#1d1d1f;color:#fff;font:750 13px Poppins,sans-serif;}
body.portal-body:not(.portal-auth-page) .portal-topbar{display:none!important;}
body.portal-body:not(.portal-auth-page) .portal-shell{grid-column:1;grid-row:2;width:100%;max-width:100%;height:100%;min-height:0;overflow-y:auto;overflow-x:hidden;margin:0;padding:14px 12px calc(20px + env(safe-area-inset-bottom));scrollbar-gutter:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;}
body.portal-body:not(.portal-auth-page) .portal-app-shell{min-height:0;}
body.portal-body:not(.portal-auth-page) .portal-footer{grid-column:1;grid-row:3;height:auto;min-height:0;display:block!important;overflow:visible;padding:9px 12px calc(10px + env(safe-area-inset-bottom));color:#929299;background:var(--sp-bg);font-size:9.5px;line-height:1.4;text-align:center;border:0;border-top:1px solid #dce5ef;}
body.portal-body:not(.portal-auth-page) .portal-alert{border-radius:12px;margin-bottom:10px;}

body.portal-body:not(.portal-auth-page) .portal-dashboard-intro{margin:1px 2px 14px;}
body.portal-body:not(.portal-auth-page) .portal-dashboard-kicker,body.portal-body:not(.portal-auth-page) .portal-eyebrow{color:var(--sp-blue);font-size:10px;font-weight:850;letter-spacing:.11em;text-transform:uppercase;}
body.portal-body:not(.portal-auth-page) .portal-dashboard-intro h1{margin:6px 0 0;font:760 30px/1.06 -apple-system,BlinkMacSystemFont,"SF Pro Display","Helvetica Neue",Arial,sans-serif;letter-spacing:-.035em;color:var(--sp-text);overflow-wrap:anywhere;}
body.portal-body:not(.portal-auth-page) .portal-dashboard-intro p{margin:9px 0 0;color:var(--sp-muted);font-size:13px;line-height:1.48;}
body.portal-body:not(.portal-auth-page) .portal-apple-hero{margin:0;padding:16px;border-radius:16px;background:#fff;border:1px solid var(--sp-line);box-shadow:var(--sp-shadow);color:var(--sp-text);overflow:hidden;}
body.portal-body:not(.portal-auth-page) .portal-apple-hero-row{display:grid!important;grid-template-columns:minmax(0,1fr);gap:12px;align-items:start;}
body.portal-body:not(.portal-auth-page) .portal-apple-hero h2{font:750 21px/1.15 -apple-system,BlinkMacSystemFont,"SF Pro Display","Helvetica Neue",Arial,sans-serif;letter-spacing:-.025em;margin:0 0 6px;color:var(--sp-text);}
body.portal-body:not(.portal-auth-page) .portal-apple-hero p{margin:0;color:var(--sp-muted);font-size:12.5px;line-height:1.48;}
body.portal-body:not(.portal-auth-page) .portal-apple-status{justify-self:stretch;width:100%;padding:12px 13px;border-radius:12px;background:#f2f6fb;display:grid!important;grid-template-columns:1fr auto;gap:4px 10px;color:var(--sp-text);}
body.portal-body:not(.portal-auth-page) .portal-apple-status small{grid-column:1/-1;display:block!important;color:#7c899a;font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.10em;}
body.portal-body:not(.portal-auth-page) .portal-apple-status strong{display:block!important;margin:0;font-size:16px;line-height:1.3;letter-spacing:-.015em;color:#0d3c75;overflow-wrap:anywhere;}
body.portal-body:not(.portal-auth-page) .portal-apple-status span{display:block!important;margin:0;color:var(--sp-orange);font-weight:800;font-size:10px;text-align:right;overflow-wrap:anywhere;}
body.portal-body:not(.portal-auth-page) .portal-apple-hero.is-confirmed .portal-apple-status strong{color:var(--sp-green);}

body.portal-body:not(.portal-auth-page) .portal-choice-panel{margin:12px 0 0;padding:14px;border-radius:16px;}
body.portal-body:not(.portal-auth-page) .portal-choice-head h2{font-size:19px;line-height:1.2;}
body.portal-body:not(.portal-auth-page) .portal-choice-head p{font-size:12px;line-height:1.5;}
body.portal-body:not(.portal-auth-page) .portal-choice-grid{display:grid!important;grid-template-columns:minmax(0,1fr);gap:10px;}
body.portal-body:not(.portal-auth-page) .portal-choice-card{padding:14px;border-radius:13px;}
body.portal-body:not(.portal-auth-page) .portal-choice-card h3{font-size:16px;line-height:1.25;}
body.portal-body:not(.portal-auth-page) .portal-choice-card p{font-size:11.5px;line-height:1.48;}
body.portal-body:not(.portal-auth-page) .portal-choice-reminder{display:grid!important;grid-template-columns:1fr;gap:10px;padding:13px;border-radius:14px;}

body.portal-body:not(.portal-auth-page) .portal-apple-bento{display:grid!important;grid-template-columns:minmax(0,1fr);gap:10px;margin-top:10px;}
body.portal-body:not(.portal-auth-page) .portal-apple-card,body.portal-body:not(.portal-auth-page) .portal-span-4,body.portal-body:not(.portal-auth-page) .portal-span-8,body.portal-body:not(.portal-auth-page) .portal-span-12{grid-column:1;width:100%;min-width:0;background:#fff;border:1px solid var(--sp-line);border-radius:14px;padding:15px;box-shadow:0 6px 18px rgba(7,35,74,.045);color:var(--sp-text);text-decoration:none;}
body.portal-body:not(.portal-auth-page) .portal-apple-card h3{margin:0;font-size:16px;line-height:1.28;letter-spacing:-.015em;color:inherit;}
body.portal-body:not(.portal-auth-page) .portal-apple-card p{color:var(--sp-muted);font-size:11.5px;line-height:1.5;margin:6px 0 0;}
body.portal-body:not(.portal-auth-page) .portal-apple-label{font-size:8px;font-weight:850;color:#7e8b9d;text-transform:uppercase;letter-spacing:.10em;margin-bottom:8px;}
body.portal-body:not(.portal-auth-page) .portal-apple-next{background:linear-gradient(145deg,#111a28,#1b2e49);color:#fff;border-color:#1d3556;}
body.portal-body:not(.portal-auth-page) .portal-apple-next .portal-apple-label{color:#aab7c9;}
body.portal-body:not(.portal-auth-page) .portal-apple-next p{color:#c4cfdd;}
body.portal-body:not(.portal-auth-page) .portal-apple-action{display:inline-flex!important;align-items:center;justify-content:center;min-height:42px;margin-top:13px;background:#fff;color:#10233f;padding:9px 13px;border-radius:10px;font-weight:800;text-decoration:none;font-size:11px;}
body.portal-body:not(.portal-auth-page) .portal-apple-result{display:flex!important;align-items:center;gap:11px;}
body.portal-body:not(.portal-auth-page) .portal-apple-check{width:44px;height:44px;border-radius:12px;display:grid!important;place-items:center;flex:0 0 44px;background:#eaf7ef;color:var(--sp-green);font-size:20px;font-weight:900;}
body.portal-body:not(.portal-auth-page) .portal-apple-result strong{display:block!important;font-size:16px;line-height:1.25;}
body.portal-body:not(.portal-auth-page) .portal-apple-result div span{display:block!important;margin-top:3px;color:var(--sp-muted);font-size:10.5px;line-height:1.4;}
body.portal-body:not(.portal-auth-page) .portal-apple-softlink{display:inline-flex!important;min-height:38px;align-items:center;margin-top:11px;background:#eef4fb;color:#0d4f96;padding:8px 11px;border-radius:9px;font-weight:800;text-decoration:none;font-size:10.5px;}
body.portal-body:not(.portal-auth-page) .portal-apple-tools{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px;}
body.portal-body:not(.portal-auth-page) .portal-apple-tools>a{border:1px solid var(--sp-line);border-radius:11px;padding:11px;background:#f8fbff;color:var(--sp-text);text-decoration:none;min-width:0;}
body.portal-body:not(.portal-auth-page) .portal-apple-tools>a>span{color:var(--sp-blue);font-size:8px;font-weight:900;}
body.portal-body:not(.portal-auth-page) .portal-apple-tools strong{display:block!important;margin-top:8px;font-size:12px;line-height:1.3;overflow-wrap:anywhere;}
body.portal-body:not(.portal-auth-page) .portal-apple-tools small{display:block!important;margin-top:3px;color:var(--sp-muted);font-size:9px;line-height:1.35;}
body.portal-body:not(.portal-auth-page) .portal-apple-stat>strong{display:block!important;font-size:20px;line-height:1.2;letter-spacing:-.025em;font-weight:800;color:var(--sp-text);overflow-wrap:anywhere;}
body.portal-body:not(.portal-auth-page) .portal-apple-stat.is-success>strong{color:var(--sp-green);}

body.portal-body:not(.portal-auth-page) .portal-page-head{display:grid!important;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;margin:0 0 10px;padding:12px;background:#fff;border:1px solid var(--sp-line);border-radius:14px;box-shadow:0 5px 16px rgba(8,42,90,.045);}
body.portal-body:not(.portal-auth-page) .portal-page-head>a{order:0;width:36px;height:36px;border:0;border-radius:10px;padding:0;display:grid!important;place-items:center;background:#ececef;color:#3a3a3c;font-size:20px;font-weight:800;text-decoration:none;}
body.portal-body:not(.portal-auth-page) .portal-page-head>div{order:0;min-width:0;}
body.portal-body:not(.portal-auth-page) .portal-page-head span{color:var(--sp-blue);font-size:8px;font-weight:850;letter-spacing:.10em;}
body.portal-body:not(.portal-auth-page) .portal-page-head h1{margin:3px 0 0;font:750 20px/1.15 -apple-system,BlinkMacSystemFont,"SF Pro Display","Helvetica Neue",Arial,sans-serif;letter-spacing:-.025em;color:var(--sp-text);overflow-wrap:anywhere;}
body.portal-body:not(.portal-auth-page) .portal-page-head p{margin:5px 0 0;color:var(--sp-muted);font-size:10.5px;line-height:1.45;}
body.portal-body:not(.portal-auth-page) .portal-view-frame,body.portal-body:not(.portal-auth-page) .portal-payment-page{max-width:none;width:100%;margin:0;}
body.portal-body:not(.portal-auth-page) .portal-profile-grid{display:grid!important;grid-template-columns:minmax(0,1fr);gap:10px;width:100%;}
body.portal-body:not(.portal-auth-page) .portal-profile-access{position:static;top:auto;background:linear-gradient(150deg,#101114,#28292d);color:#fff;}
body.portal-body:not(.portal-auth-page) .portal-profile-access h2{color:#fff;}
body.portal-body:not(.portal-auth-page) .portal-profile-access p{color:#cbd6e4;}
body.portal-body:not(.portal-auth-page) .portal-profile-access .portal-eyebrow{color:#70b8ff;}
body.portal-body:not(.portal-auth-page) .portal-panel{width:100%;min-width:0;border-radius:14px;background:#fff;border:1px solid var(--sp-line);box-shadow:var(--sp-shadow);padding:13px;margin-bottom:0;color:var(--sp-text);}
body.portal-body:not(.portal-auth-page) .portal-panel-head{display:flex!important;justify-content:space-between;align-items:flex-start;gap:8px;padding-bottom:9px;margin-bottom:10px;border-bottom:1px solid #e8edf5;}
body.portal-body:not(.portal-auth-page) .portal-panel-head span{color:#7f8c9e;font-size:8px;letter-spacing:.10em;}
body.portal-body:not(.portal-auth-page) .portal-panel-head h2{font:750 18px/1.2 -apple-system,BlinkMacSystemFont,"SF Pro Display","Helvetica Neue",Arial,sans-serif;color:var(--sp-text);margin:2px 0 0;}
body.portal-body:not(.portal-auth-page) .portal-panel-head>b{flex:0 0 auto;border-radius:999px;font-size:8px;padding:5px 7px;}
body.portal-body:not(.portal-auth-page) .portal-identity{display:flex!important;align-items:center;gap:10px;padding:10px;border-radius:12px;background:#f4f7fb;border:0;margin-bottom:10px;}
body.portal-body:not(.portal-auth-page) .portal-identity img{width:54px;height:54px;flex:0 0 54px;object-fit:cover;border-radius:11px;border:2px solid #fff;}
body.portal-body:not(.portal-auth-page) .portal-identity strong{font-size:13px;line-height:1.3;overflow-wrap:anywhere;}
body.portal-body:not(.portal-auth-page) .portal-identity span,body.portal-body:not(.portal-auth-page) .portal-identity small{font-size:9.5px;line-height:1.4;overflow-wrap:anywhere;}
body.portal-body:not(.portal-auth-page) .portal-summary-grid{display:grid!important;grid-template-columns:minmax(0,1fr);gap:7px;}
body.portal-body:not(.portal-auth-page) .portal-summary-grid>div{border-radius:10px;background:#f8fafc;border:1px solid var(--sp-line);padding:10px;min-width:0;}
body.portal-body:not(.portal-auth-page) .portal-summary-grid>div.wide{grid-column:1;}
body.portal-body:not(.portal-auth-page) .portal-summary-grid span{font-size:8px;}
body.portal-body:not(.portal-auth-page) .portal-summary-grid b{font-size:11px;overflow-wrap:anywhere;}
body.portal-body:not(.portal-auth-page) .portal-lock-note{border-radius:11px;padding:11px;}
body.portal-body:not(.portal-auth-page) .portal-lock-note strong{font-size:11px;}
body.portal-body:not(.portal-auth-page) .portal-lock-note span{font-size:9.5px;line-height:1.45;}

body.portal-body:not(.portal-auth-page) .portal-kpis{display:grid!important;grid-template-columns:minmax(0,1fr);gap:8px;}
body.portal-body:not(.portal-auth-page) .portal-form-grid{display:grid!important;grid-template-columns:minmax(0,1fr);gap:9px;}
body.portal-body:not(.portal-auth-page) .portal-form input,body.portal-body:not(.portal-auth-page) .portal-form textarea,body.portal-body:not(.portal-auth-page) .portal-form select,body.portal-body:not(.portal-auth-page) .portal-pin-form input{width:100%;max-width:100%;font-size:16px;}
body.portal-body:not(.portal-auth-page) .portal-primary{width:100%;max-width:100%;min-height:44px;border-radius:10px;background:var(--sp-blue);box-shadow:none;}
body.portal-body:not(.portal-auth-page) .portal-secondary{width:100%;max-width:100%;min-height:44px;border-radius:10px;}
body.portal-body:not(.portal-auth-page) .portal-receipt-download{display:flex!important;align-items:center;justify-content:center;text-align:center;}
body.portal-body:not(.portal-auth-page) .portal-payment-summary,body.portal-body:not(.portal-auth-page) .portal-bank,body.portal-body:not(.portal-auth-page) .portal-session-list article{min-width:0;}
body.portal-body:not(.portal-auth-page) .portal-payment-summary{grid-template-columns:minmax(0,1fr);}
body.portal-body:not(.portal-auth-page) .portal-session-list article{grid-template-columns:auto minmax(0,1fr);gap:10px;}
body.portal-body:not(.portal-auth-page) .portal-session-list .portal-primary,body.portal-body:not(.portal-auth-page) .portal-session-status{grid-column:1/-1;width:100%;}
body.portal-body:not(.portal-auth-page) .portal-updates-page article{border-radius:13px;}
body.portal-body:not(.portal-auth-page) img{max-width:100%;height:auto;}
}
@media (max-width:520px){
 body.portal-body:not(.portal-auth-page) .portal-shell{padding-inline:10px;}
 body.portal-body:not(.portal-auth-page) .portal-dashboard-intro h1{font-size:27px;}
 body.portal-body:not(.portal-auth-page) .portal-apple-tools{grid-template-columns:minmax(0,1fr);}
 body.portal-body:not(.portal-auth-page) .portal-page-head h1{font-size:18px;}
 body.portal-body:not(.portal-auth-page) .portal-panel-head h2{font-size:16px;}
 body.portal-body:not(.portal-auth-page) .portal-apple-status{grid-template-columns:minmax(0,1fr);}
 body.portal-body:not(.portal-auth-page) .portal-apple-status span{text-align:left;}
}

/* MOBILE-SMART-AUTH-FLOW-V4.9.5 — root-level mobile verification state and tap guard.
   Keeps the existing mobile composition while making the email → OTP → PIN path
   use the same authoritative state machine as desktop. */
@media (max-width:900px){
  body[data-screen="email"] #appFooter,body[data-screen="otp"] #appFooter{pointer-events:auto;}
  body[data-screen="email"] #appPrimary,body[data-screen="otp"] #appPrimary{pointer-events:auto;touch-action:manipulation;}
  #screen-email #candidateNameField:not([hidden]){display:grid!important;}
  #screen-email .candidate-route-message:not([hidden]){display:block!important;}
}


/* LIVE-MOBILE-HOME-STATE-V499 — public Home is a hard navigation boundary.
   Never leak Selection verification progress into Home, and keep the public
   hero inside the visual viewport without the carousel pager creating overflow. */
@media (max-width:900px){
  body.welcome-gate{height:var(--visible-height);min-height:0;overflow:hidden;overscroll-behavior:none;}
  body.welcome-gate .app,
  body.welcome-gate .main,
  body.welcome-gate #screen-home,
  body.welcome-gate .public-landing{height:var(--visible-height);min-height:0;overflow:hidden;}
  body.welcome-gate #mobileModuleSteps,
  body.welcome-gate .mobile-module-steps,
  body.welcome-gate .app-progress,
  body.welcome-gate .app-dots{display:none!important;}
  body.welcome-gate .public-brain-dots{display:none!important;}
  body.welcome-gate .public-visual{overflow:hidden;}
}

/* GMC 2026 V4.9.10 — MOBILE SHARED HEADER PARITY ONLY.
   Scope lock: mobile selection flow header only. Home/public header, module-step rail,
   footer, screen content, OTP/PIN logic, test engine and secure timed-stage headers are untouched. */
@media (max-width:900px){
  body.app-flow:not(.test-mode):not(.gmc-recovery-entry){
    --mobile-header-height:72px;
    --mobile-content-top:72px;
  }
  body.app-flow:not(.test-mode):not(.gmc-recovery-entry) .app-header{
    height:72px;
    min-height:72px;
    padding:0 12px;
    grid-template-columns:minmax(0,1fr) 68px 46px 46px;
    gap:6px;
    align-items:center;
    background:#fff;
    border:0;
    border-bottom:1px solid #e4e8ef;
    box-shadow:0 8px 22px rgba(3,16,40,.08);
    backdrop-filter:none;
  }
  body.app-flow:not(.test-mode):not(.gmc-recovery-entry) .app-brand{
    grid-column:1;
    min-width:0;
    justify-content:start;
    place-items:center start;
  }
  body.app-flow:not(.test-mode):not(.gmc-recovery-entry) .app-brand .gmc-inline-wordmark{
    display:inline-flex!important;
    width:126px;
    height:44px;
    max-width:100%;
    align-items:center;
    justify-content:flex-start;
  }
  body.app-flow:not(.test-mode):not(.gmc-recovery-entry) .app-brand .gmc-inline-wordmark>img,
  body.app-flow:not(.test-mode):not(.gmc-recovery-entry) .app-brand img{
    width:126px;
    height:44px;
    max-width:100%;
    object-fit:contain;
    object-position:left center;
  }
  body.app-flow:not(.test-mode):not(.gmc-recovery-entry) .app-heading{
    display:none!important;
  }
  body.app-flow:not(.test-mode):not(.gmc-recovery-entry) .app-language-desktop{
    display:flex!important;
    grid-column:2;
    width:68px;
    min-width:68px;
    height:46px;
    min-height:46px;
    padding:0 8px;
    align-items:center;
    justify-content:center;
    gap:5px;
    border:1px solid #d9e2ee;
    border-radius:13px;
    background:#fff;
    color:#0a2b5d;
    box-shadow:0 5px 14px rgba(7,25,57,.05);
    font-size:14px;
    line-height:1;
  }
  body.app-flow:not(.test-mode):not(.gmc-recovery-entry) .app-theme{
    grid-column:3;
    width:46px;
    min-width:46px;
    height:46px;
    min-height:46px;
    border:1px solid #d9e2ee;
    border-radius:13px;
    background:#fff;
    color:#0a2b5d;
    box-shadow:0 5px 14px rgba(7,25,57,.05);
  }
  body.app-flow:not(.test-mode):not(.gmc-recovery-entry) .app-step{
    grid-column:4;
    width:46px;
    min-width:46px;
    height:46px;
    min-height:46px;
    padding:4px 3px;
    border-radius:13px;
    display:grid!important;
    place-content:center;
    text-align:center;
    background:linear-gradient(145deg,#0b3977,#062654);
    color:#fff;
    box-shadow:none;
    line-height:1;
  }
  body.app-flow:not(.test-mode):not(.gmc-recovery-entry) .app-step strong{
    font-size:12px;
    line-height:1.05;
  }
  body.app-flow:not(.test-mode):not(.gmc-recovery-entry) .app-step small{
    margin-top:3px;
    font-size:7px;
    line-height:1;
    letter-spacing:.06em;
  }
  body.app-flow:not(.test-mode):not(.gmc-recovery-entry) .app-progress{
    display:none!important;
  }
}

@media (max-width:390px){
  body.app-flow:not(.test-mode):not(.gmc-recovery-entry) .app-header{
    grid-template-columns:minmax(0,1fr) 62px 44px 44px;
    gap:5px;
    padding-inline:10px;
  }
  body.app-flow:not(.test-mode):not(.gmc-recovery-entry) .app-brand .gmc-inline-wordmark,
  body.app-flow:not(.test-mode):not(.gmc-recovery-entry) .app-brand .gmc-inline-wordmark>img,
  body.app-flow:not(.test-mode):not(.gmc-recovery-entry) .app-brand img{
    width:118px;
    height:42px;
  }
  body.app-flow:not(.test-mode):not(.gmc-recovery-entry) .app-language-desktop{
    width:62px;
    min-width:62px;
    height:44px;
    min-height:44px;
    font-size:13px;
  }
  body.app-flow:not(.test-mode):not(.gmc-recovery-entry) .app-theme,
  body.app-flow:not(.test-mode):not(.gmc-recovery-entry) .app-step{
    width:44px;
    min-width:44px;
    height:44px;
    min-height:44px;
  }
}

/* GMC 2026 V4.9.11 — MOBILE HEADER VERTICAL HEIGHT PARITY ONLY.
   Match the selection-flow header to the public Home header at the same viewport height.
   Control/tile geometry, module-step rail, content, footer, OTP/PIN logic and timed-stage UI are untouched. */
@media (max-width:900px) and (max-height:700px){
  body.app-flow:not(.test-mode):not(.gmc-recovery-entry){
    --mobile-header-height:66px;
    --mobile-content-top:66px;
  }
  body.app-flow:not(.test-mode):not(.gmc-recovery-entry) .app-header{
    height:66px;
    min-height:66px;
  }
}

/* R3.3.6 — Registration choice, championship package and live registration counter */
.public-registration-counter{margin:9px 13px 0;border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:10px 11px;display:grid;gap:6px;}.public-registration-counter-main{display:flex;align-items:baseline;gap:7px;color:var(--navy-900);}.public-registration-counter-main strong{font-size:20px;font-weight:900;}.public-registration-counter-main>span:last-child{font-size:11px;font-weight:800;}.public-registration-counter-dot{width:7px;height:7px;border-radius:50%;background:var(--orange-500);}.public-registration-counter-meta{display:flex;flex-wrap:wrap;gap:6px;color:var(--muted);font-size:9px;font-weight:700;}.public-registration-counter-meta i{display:none;}.portal-choice-panel,.portal-package-card,.portal-choice-reminder{margin:12px 0;border:1px solid var(--line);background:var(--surface);border-radius:9px;padding:14px;}.portal-choice-head>span,.portal-package-title>span,.portal-choice-kicker{font-size:9px;letter-spacing:.08em;font-weight:900;color:var(--orange-600);}.portal-choice-head h2,.portal-package-title h2{margin:6px 0 7px;font-size:19px;color:var(--navy-900);}.portal-choice-head p,.portal-package-title p{margin:0;color:var(--muted);font-size:12px;line-height:1.45;}.portal-choice-grid{display:grid;grid-template-columns:1fr;gap:9px;margin-top:12px;}.portal-choice-card{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:13px;display:flex;flex-direction:column;align-items:flex-start;text-align:left;}.portal-choice-card-primary{border-color:rgba(233,99,23,.35);}.portal-choice-card h3{margin:6px 0;font-size:16px;color:var(--navy-900);}.portal-choice-card p{margin:0 0 12px;font-size:11px;line-height:1.45;color:var(--muted);}.portal-secondary{min-height:42px;padding:0 13px;border-radius:7px;border:1px solid var(--line-strong);background:var(--surface);color:var(--navy-900);font-weight:850;}.portal-choice-reminder{display:grid;gap:10px;}.portal-choice-reminder div{display:grid;gap:3px;}.portal-choice-reminder span{font-size:11px;color:var(--muted);}.portal-package-grid{display:grid;grid-template-columns:1fr;gap:7px;margin-top:12px;}.portal-package-grid span{padding:9px 10px 9px 30px;border:1px solid var(--line);border-radius:7px;font-size:11px;color:var(--navy-800);position:relative;}.portal-package-grid span:before{content:"✓";position:absolute;left:10px;color:#1d7a4a;font-weight:900;}.portal-package-note{display:block;margin-top:10px;padding:10px;border-radius:7px;background:var(--blue-100);font-size:11px;color:var(--navy-900);}.portal-razorpay-card{border:1px solid var(--line);border-radius:8px;padding:13px;}.portal-razorpay-brand,.portal-razorpay-amount{display:flex;justify-content:space-between;align-items:center;gap:8px;}.portal-razorpay-brand span{font-size:9px;color:var(--muted);font-weight:900;}.portal-razorpay-amount{margin:12px 0;align-items:flex-end;flex-wrap:wrap;}.portal-razorpay-amount strong{font-size:24px;color:var(--navy-900);}.portal-razorpay-amount span,.portal-razorpay-amount small{font-size:10px;color:var(--muted);}.portal-razorpay-button{width:100%;}.portal-payment-help{font-size:10px;line-height:1.45;color:var(--muted);}.portal-manual-payment{margin-top:12px;border-top:1px solid var(--line);padding-top:10px;}.portal-policy-version{display:grid;gap:4px;padding:9px;border:1px solid var(--line);border-radius:7px;}.portal-policy-details{margin:9px 0;padding:9px;border:1px solid var(--line);border-radius:7px;}.portal-policy-details p{font-size:11px;line-height:1.45;}



/* R3.4.0 — Qualified journey / certificate / Training Batch mobile integration. */
.portal-discount-chip{display:inline-flex;align-items:center;min-height:25px;padding:0 9px;margin:0 0 9px;border:1px solid rgba(233,99,23,.28);border-radius:999px;background:var(--orange-100);color:var(--orange-700,#a8420c);font-size:10px;font-weight:900;}.portal-intro-slot-grid{display:grid;grid-template-columns:1fr;gap:9px;margin-top:12px;}.portal-slot-card{display:flex;flex-direction:column;align-items:flex-start;padding:13px;border:1px solid var(--line);border-radius:9px;background:var(--surface);}.portal-slot-card>span{font-size:9px;font-weight:900;letter-spacing:.08em;color:var(--orange-600);}.portal-slot-card h3{margin:6px 0;color:var(--navy-900);font-size:16px;}.portal-slot-card p{margin:0 0 11px;color:var(--muted);font-size:10px;line-height:1.45;}.portal-intro-confirmed{border-color:rgba(31,143,88,.28);background:rgba(31,143,88,.045);}.portal-intro-confirmed small{color:#1d7a4a;font-size:10px;font-weight:850;}.portal-choice-reminder-actions{display:grid;grid-template-columns:1fr;gap:8px;}.portal-choice-reminder-actions .portal-primary,.portal-choice-reminder-actions .portal-secondary{width:100%;text-align:center;}.portal-choice-reminder-actions form{margin:0;}
.portal-journey-grid{display:grid;grid-template-columns:1fr;gap:10px;margin:12px 0;}.portal-journey-grid>.portal-panel{margin:0;}.portal-certificate-card.is-unlocked{border-color:rgba(31,143,88,.28);}.portal-certificate-card>p,.portal-training-card>p{color:var(--muted);font-size:10px;line-height:1.45;}.portal-certificate-number{display:grid;gap:4px;margin:10px 0;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);}.portal-certificate-number span{color:var(--muted);font-size:9px;font-weight:800;}.portal-certificate-number strong{color:var(--navy-900);font-size:12px;letter-spacing:.03em;}.portal-certificate-preview{position:relative;overflow:hidden;display:grid;place-items:center;align-content:center;gap:2px;min-height:92px;margin:9px 0 10px;border:1px solid #ead2a0;border-radius:10px;background:#fffefa;box-shadow:inset 0 0 0 4px #fff,inset 0 0 0 5px rgba(199,143,45,.3);}.portal-certificate-preview-kicker{font:700 6px/1.2 Georgia,serif;color:#81501f;}.portal-certificate-preview strong{font:800 20px/1 Georgia,serif;letter-spacing:.06em;color:#0b2f63;}.portal-certificate-preview small{font:700 7px/1.2 Georgia,serif;color:#b4771a;letter-spacing:.1em;}.portal-certificate-preview i{width:52%;height:1px;margin-top:6px;background:#d6aa58;}.portal-certificate-download-form .portal-primary{width:100%;}.portal-unlock-rules{display:grid;grid-template-columns:1fr;gap:7px;margin-top:10px;}.portal-unlock-rules strong{padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--navy-900);font-size:10px;line-height:1.45;}.portal-unlock-rules>span{justify-self:center;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--navy-900);color:#fff;font-size:8px;font-weight:900;}.portal-training-confirmed{display:grid;gap:4px;margin:10px 0;padding:11px;border:1px solid rgba(31,143,88,.25);border-radius:8px;background:rgba(31,143,88,.05);}.portal-training-confirmed strong{color:var(--navy-900);font-size:13px;}.portal-training-confirmed span{color:var(--muted);font-size:10px;}.portal-training-confirmed b{color:#1d7a4a;font-size:10px;}.portal-training-form{display:grid;gap:10px;margin-top:10px;}.portal-training-options{display:grid;grid-template-columns:1fr;gap:8px;}.portal-training-options label{cursor:pointer;}.portal-training-options input{position:absolute;opacity:0;pointer-events:none;}.portal-training-options label>span{display:grid;gap:4px;padding:11px;border:1px solid var(--line);border-radius:8px;background:var(--surface);}.portal-training-options b{color:var(--navy-900);font-size:12px;}.portal-training-options small{color:var(--muted);font-size:10px;}.portal-training-options input:checked+span{border-color:var(--orange-500);background:var(--orange-100);}.portal-batch-warning{display:grid;gap:5px;padding:10px;border:1px solid rgba(198,132,20,.3);border-radius:8px;background:#fff8e8;}.portal-batch-warning strong,.portal-batch-warning span{font-size:10px;line-height:1.45;}.portal-batch-warning strong{color:#6d4807;}.portal-batch-warning span{color:#725b31;}.portal-lock-ack{display:flex;align-items:flex-start;gap:7px;color:var(--navy-800);font-size:10px;line-height:1.4;}.portal-lock-ack input{margin-top:1px;}.portal-fee-breakdown{display:grid;gap:7px;margin:11px 0;}.portal-fee-breakdown>div{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:9px 10px;border:1px solid var(--line);border-radius:7px;background:var(--surface);}.portal-fee-breakdown span{color:var(--muted);font-size:10px;font-weight:750;}.portal-fee-breakdown strong{color:var(--navy-900);font-size:12px;}.portal-fee-breakdown .is-discount{border-color:rgba(31,143,88,.23);background:rgba(31,143,88,.05);}.portal-fee-breakdown .is-discount strong{color:#1d7a4a;}.portal-fee-breakdown .is-final{border-color:rgba(233,99,23,.28);background:var(--orange-100);}.portal-fee-breakdown .is-final span,.portal-fee-breakdown .is-final strong{color:var(--navy-900);font-weight:900;}.portal-fee-breakdown .is-final strong{font-size:17px;}.portal-fee-final-confirm{display:flex;align-items:flex-start;gap:7px;margin:10px 0;padding:9px;border:1px solid var(--line);border-radius:7px;color:var(--navy-800);font-size:10px;line-height:1.4;}.portal-intro-confirmed-card{display:grid;gap:6px;margin-top:11px;padding:12px;border:1px solid rgba(31,143,88,.25);border-radius:8px;background:rgba(31,143,88,.05);}.portal-intro-confirmed-card>span{color:#1d7a4a;font-size:9px;font-weight:900;letter-spacing:.07em;}.portal-intro-confirmed-card h3{margin:0;color:var(--navy-900);font-size:15px;}.portal-intro-confirmed-card p{margin:0 0 6px;color:var(--muted);font-size:10px;line-height:1.45;}

/* Public certificate verification page. */
.certificate-verify-body{min-height:100dvh;margin:0;background:#f5f8fd;color:#102f5b;font-family:Inter,Arial,sans-serif;}.certificate-verify-shell{width:calc(100% - 24px);margin:0 auto;padding:24px 0 30px;}.certificate-verify-brand{display:flex;align-items:center;gap:11px;margin:0 3px 12px;}.certificate-verify-brand img{width:82px;height:auto;object-fit:contain;}.certificate-verify-brand div{display:grid;gap:2px;min-width:0;}.certificate-verify-brand span{font-size:8px;font-weight:850;letter-spacing:.05em;color:#718199;text-transform:uppercase;}.certificate-verify-brand strong{font-size:18px;color:#0b2d63;}.certificate-verify-card{overflow:hidden;border:1px solid #dce5ef;border-radius:14px;background:#fff;box-shadow:0 18px 48px rgba(7,35,75,.09);}.certificate-verify-card.is-valid{border-top:4px solid #1d9a60;}.certificate-verify-card.is-invalid{border-top:4px solid #b94a48;}.certificate-verify-status{display:flex;align-items:flex-start;gap:11px;padding:17px 15px;border-bottom:1px solid #e8eef5;}.certificate-verify-status>span{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:50%;background:#e9f8f0;color:#16824e;font-size:18px;font-weight:900;}.certificate-verify-card.is-invalid .certificate-verify-status>span{background:#fff0ef;color:#a53d39;}.certificate-verify-status small{font-size:8px;font-weight:900;letter-spacing:.08em;color:#718199;}.certificate-verify-status h1{margin:3px 0 4px;font-size:20px;line-height:1.1;color:#0b2d63;}.certificate-verify-status p{margin:0;color:#687b96;font-size:10px;line-height:1.45;}.certificate-verify-card dl{display:grid;grid-template-columns:1fr;margin:0;padding:6px 15px 13px;}.certificate-verify-card dl>div{padding:11px 0;border-bottom:1px solid #edf1f6;}.certificate-verify-card dt{font-size:8px;font-weight:900;letter-spacing:.07em;color:#7a8aa0;text-transform:uppercase;}.certificate-verify-card dd{margin:4px 0 0;color:#102f5b;font-size:12px;font-weight:850;overflow-wrap:anywhere;}.certificate-verify-privacy{display:grid;gap:4px;margin:0 15px 15px;padding:11px;border-radius:8px;background:#f3f7fc;}.certificate-verify-privacy strong{color:#0b2d63;font-size:10px;}.certificate-verify-privacy span{color:#6b7e98;font-size:9px;line-height:1.4;}.certificate-verify-foot{margin:11px 3px 0;color:#708198;font-size:9px;line-height:1.4;}
/* R3.4.5 locked HD JPG certificate preview */
.portal-certificate-preview-r345{display:block;min-height:0;aspect-ratio:3508/2480;padding:0;background:#fff;box-shadow:0 5px 16px rgba(14,37,73,.08);border-color:#e4c47f;}
.portal-certificate-preview-r345:before,.portal-certificate-preview-r345:after{display:none;}
.portal-certificate-preview-r345 img{display:block;width:100%;height:100%;object-fit:cover;}

/* R3.4.6 — direct HD JPG certificate download status */
.portal-certificate-download-status{}.portal-certificate-download-status.is-error{}.portal-certificate-download-form .portal-primary:disabled{opacity:.62;cursor:wait;}
/* R3.4.7 direct HD JPG user-gesture download */
.portal-certificate-download-form .portal-primary{display:flex;align-items:center;justify-content:center;text-decoration:none;}.portal-certificate-download-form .portal-primary[aria-disabled="true"]{opacity:.62;cursor:wait;pointer-events:none;}.portal-certificate-download-status{display:block;min-height:16px;margin-top:7px;color:var(--muted);font-size:10px;font-weight:750;line-height:1.4;}.portal-certificate-download-status.is-error{color:#a53d39;}





@media (max-width:900px), (hover:none) and (pointer:coarse){
  body.portal-auth-page,body.gmc-recovery-entry{
    --auth-page-bg:linear-gradient(180deg,#f9fbfe,#f4f8fc);--auth-head:#fffffff2;--auth-card:#fff;--auth-soft:#f6f9fd;
    --auth-text:#0d2245;--auth-muted:#65748c;--auth-line:#dce5f1;--auth-blue:#0868e8;--auth-orange:#ff8618;
    margin:0;width:100%;height:100dvh;min-height:100dvh;overflow:hidden;background:var(--auth-page-bg);color:var(--auth-text);
    font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Helvetica Neue",Arial,sans-serif;
  }
  html[data-theme="dark"] body.portal-auth-page,html[data-theme="dark"] body.gmc-recovery-entry{--auth-page-bg:linear-gradient(180deg,#07152a,#0a1930);--auth-head:#0b1a31f2;--auth-card:#0e203a;--auth-soft:#102742;--auth-text:#f3f7ff;--auth-muted:#a9b8cc;--auth-line:#28405f;--auth-blue:#68aaff;}
  body.portal-auth-page *,body.gmc-recovery-entry *{box-sizing:border-box;}

  body.portal-auth-page,body.gmc-recovery-entry .app{display:grid!important;grid-template-columns:1fr;grid-template-rows:64px minmax(0,1fr) 34px;width:100%;height:100dvh;min-height:100dvh;overflow:hidden;background:transparent;}
  body.portal-auth-page .portal-auth-header,body.gmc-recovery-entry .app-header.auth-premium-header{grid-row:1;grid-column:1;display:flex!important;position:relative;inset:auto;width:100%;height:64px;min-height:64px;margin:0;padding:0;background:var(--auth-head);border:0;border-bottom:1px solid var(--auth-line);box-shadow:none;z-index:120;}
  .auth-premium-header__inner{width:100%;height:100%;padding:0 14px;display:flex!important;align-items:center;justify-content:space-between;gap:10px;}.auth-premium-brand{display:flex!important;align-items:center;gap:9px;min-width:0;text-decoration:none;color:var(--auth-text);}.auth-premium-brand img{width:92px;max-width:92px;height:31px;object-fit:contain;object-position:left center;}html[data-theme="dark"] .auth-premium-brand img{content:url("mindwhiz_footer_logo_white.png");filter:none;opacity:1!important;}.auth-premium-brand>div{display:grid!important;gap:1px;min-width:0;}.auth-premium-brand strong{font:800 12px/1.05 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;color:var(--auth-text);white-space:nowrap;}.auth-premium-brand span{font:650 8px/1.1 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;color:var(--auth-muted);white-space:nowrap;}.auth-premium-controls{display:flex!important;align-items:center;gap:6px;margin-left:auto;}.auth-premium-language{position:relative;}
  .auth-premium-language>button,body.gmc-recovery-entry .auth-premium-language .app-language-desktop{display:flex!important;position:relative;inset:auto;align-items:center;justify-content:center;gap:5px;width:59px;height:36px;min-height:36px;margin:0;padding:0 8px;border:1px solid var(--auth-line);border-radius:9px;background:var(--auth-card);color:var(--auth-text);font:800 10px/1 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;box-shadow:none;}
  .auth-premium-language-menu,body.gmc-recovery-entry .app-language-menu.auth-premium-language-menu{position:absolute;top:41px;right:0;left:auto;z-index:220;width:128px;min-width:128px;margin:0;padding:5px;border:1px solid var(--auth-line);border-radius:10px;background:var(--auth-card);box-shadow:0 14px 30px rgba(15,45,85,.16);}.auth-premium-language-menu[hidden]{display:none!important;}.auth-premium-language-menu button{width:100%;min-height:34px;border:0;border-radius:7px;background:transparent;color:var(--auth-text);text-align:left;padding:0 9px;font-size:11px;font-weight:700;}.auth-premium-language-menu button.active{background:var(--auth-soft);color:var(--auth-blue);}
  .auth-premium-theme,body.gmc-recovery-entry .app-theme.auth-premium-theme{display:grid!important;position:relative;inset:auto;place-items:center;width:36px;height:36px;min-width:36px;min-height:36px;margin:0;padding:0;border:1px solid var(--auth-line);border-radius:9px;background:var(--auth-card);color:var(--auth-text);box-shadow:none;}.auth-premium-theme .theme-sun{display:block!important;}.auth-premium-theme .theme-moon{display:none!important;}html[data-theme="dark"] .auth-premium-theme .theme-sun{display:none!important;}html[data-theme="dark"] .auth-premium-theme .theme-moon{display:block!important;}

  body.portal-auth-page .portal-auth-footer,body.gmc-recovery-entry .app-brand-footer.auth-premium-footer{grid-row:3;grid-column:1;display:flex!important;align-items:center;justify-content:center;width:100%;height:34px;min-height:34px;margin:0;padding:0 10px;position:relative;inset:auto;background:var(--auth-head);border:0;border-top:1px solid var(--auth-line);color:var(--auth-muted);box-shadow:none;font-size:8px;font-weight:650;z-index:100;}
  body.portal-auth-page .portal-auth-main,body.gmc-recovery-entry main.main{grid-row:2;grid-column:1;position:relative;inset:auto;width:100%;max-width:none;height:100%;min-height:0;margin:0;padding:16px 14px;display:grid!important;place-items:center;overflow:auto;background:transparent;background-image:none;border:0;border-radius:0;box-shadow:none;outline:0;filter:none;}
  body.portal-auth-page .portal-auth-topbar{display:none!important;}body.gmc-recovery-entry .desktop-progress,body.gmc-recovery-entry #mobileModuleSteps,body.gmc-recovery-entry .app-dots,body.gmc-recovery-entry .app-footer,body.gmc-recovery-entry .app-progress{display:none!important;}
  body.gmc-recovery-entry #screen-email,body.gmc-recovery-entry #screen-email.screen,body.gmc-recovery-entry #screen-email.active,body.gmc-recovery-entry #screen-email.screen.active,body.gmc-recovery-entry #screen-email .email-stage,body.gmc-recovery-entry #screen-email .email-minimal-shell,body.gmc-recovery-entry #screen-email .email-verified-shell{position:relative;inset:auto;width:100%;max-width:none;height:auto;min-height:100%;margin:0;padding:0;display:grid!important;grid-template-columns:1fr;place-items:center;overflow:visible;background:transparent;background-image:none;border:0;border-radius:0;box-shadow:none;outline:0;filter:none;}
  body.gmc-recovery-entry #screen-email:before,body.gmc-recovery-entry #screen-email:after,body.gmc-recovery-entry #screen-email .email-stage:before,body.gmc-recovery-entry #screen-email .email-stage:after,body.gmc-recovery-entry #screen-email .email-minimal-shell:before,body.gmc-recovery-entry #screen-email .email-minimal-shell:after{display:none!important;content:none;}

  body.portal-auth-page .portal-auth-card,body.gmc-recovery-entry #screen-email .email-minimal-card,body.gmc-recovery-entry #screen-email .gmc-recovery-card{width:100%;max-width:440px;margin:auto;background:var(--auth-card);border:1px solid var(--auth-line);border-radius:16px;box-shadow:0 12px 28px rgba(18,49,91,.08);overflow:visible;}
  body.portal-auth-page .portal-auth-card{overflow:hidden;}body.portal-auth-page .portal-auth-card:before{display:none!important;}body.portal-auth-page .portal-auth-card__grid{display:block!important;padding:25px 20px 21px;}body.portal-auth-page .portal-auth-login-panel{padding:0;background:transparent;border:0;box-shadow:none;}body.portal-auth-page .portal-eyebrow{display:block!important;margin:0 0 9px;color:var(--auth-blue);font:800 9px/1 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;letter-spacing:.11em;text-transform:uppercase;}body.portal-auth-page .portal-auth-primary h1{margin:0 0 9px;color:var(--auth-text);font:780 31px/1.04 -apple-system,BlinkMacSystemFont,"SF Pro Display","Helvetica Neue",Arial,sans-serif;letter-spacing:-.04em;}body.portal-auth-page .portal-auth-login-panel>p{margin:0 0 17px;color:var(--auth-muted);font-size:12.5px;line-height:1.45;}body.portal-auth-page .portal-login-form{display:grid!important;gap:10px;}body.portal-auth-page .portal-login-form label{display:grid!important;gap:5px;}body.portal-auth-page .portal-login-form label>span{font-size:10.5px;font-weight:760;color:var(--auth-text);}body.portal-auth-page .portal-field-wrap{display:grid!important;grid-template-columns:44px minmax(0,1fr);align-items:center;height:50px;border:1px solid var(--auth-line);border-radius:10px;background:var(--auth-card);overflow:hidden;}body.portal-auth-page .portal-field-wrap i{display:grid!important;place-items:center;height:100%;color:var(--auth-muted);border-right:1px solid var(--auth-line);background:var(--auth-soft);font-style:normal;}body.portal-auth-page .portal-field-wrap i svg,body.portal-auth-page .portal-button-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;}body.portal-auth-page .portal-field-wrap input{width:100%;min-width:0;height:48px;border:0;outline:0;background:transparent;padding:0 12px;color:var(--auth-text);font:500 14px/1 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;}body.portal-auth-page .portal-primary{width:100%;height:50px;border:0;border-radius:10px;background:linear-gradient(100deg,#096ff1,#0748a8);color:#fff;display:flex!important;align-items:center;justify-content:center;gap:7px;box-shadow:none;font:780 12px/1 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;}body.portal-auth-page .portal-first-access{margin-top:13px;border:1px solid var(--auth-line);border-radius:10px;background:var(--auth-card);display:grid!important;grid-template-columns:34px minmax(0,1fr);gap:9px;padding:11px;align-items:center;}body.portal-auth-page .portal-first-access__icon{width:34px;height:34px;border-radius:9px;display:grid!important;place-items:center;background:var(--auth-soft);color:var(--auth-blue);font:850 16px/1 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;}body.portal-auth-page .portal-first-access strong{font-size:10.5px;color:var(--auth-text);}body.portal-auth-page .portal-first-access span{font-size:9px;line-height:1.35;color:var(--auth-muted);}body.portal-auth-page .portal-desktop-break{display:none!important;}body.portal-auth-page .portal-recover-button{grid-column:1/-1;height:40px;border:1px solid var(--auth-blue);border-radius:9px;background:var(--auth-card);color:var(--auth-blue);display:flex!important;align-items:center;justify-content:center;text-decoration:none;font:780 10.5px/1 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;}body.portal-auth-page .portal-auth-secondary{display:none!important;}

  body.gmc-recovery-entry #screen-email .email-minimal-card,body.gmc-recovery-entry #screen-email .gmc-recovery-card{height:auto;min-height:0;padding:26px 20px 21px;display:grid!important;grid-template-columns:1fr;row-gap:12px;}body.gmc-recovery-entry #screen-email .email-minimal-card:before,body.gmc-recovery-entry #screen-email .gmc-recovery-card:before{display:none!important;content:none;}body.gmc-recovery-entry #screen-email .email-minimal-head{display:grid!important;gap:6px;margin:0;padding:0 0 3px;text-align:left;}body.gmc-recovery-entry #screen-email .email-minimal-head:before{content:"SECURE RECOVERY";font:800 9px/1 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;letter-spacing:.11em;color:var(--auth-blue);text-transform:uppercase;}body.gmc-recovery-entry #screen-email .email-minimal-head h2{font-size:0;margin:0;line-height:1;}body.gmc-recovery-entry #screen-email .email-minimal-head h2:after{content:"Recover GMC PIN";display:block!important;font:780 32px/1.04 -apple-system,BlinkMacSystemFont,"SF Pro Display","Helvetica Neue",Arial,sans-serif;color:var(--auth-text);letter-spacing:-.04em;}body.gmc-recovery-entry #screen-email .email-head-fresh{margin:0;font-size:12px;line-height:1.45;color:var(--auth-muted);text-align:left;}body.gmc-recovery-entry #screen-email .email-head-remembered,body.gmc-recovery-entry #screen-email .email-minimal-resume,body.gmc-recovery-entry #screen-email .verify-email-notice,body.gmc-recovery-entry #screen-email .email-minimal-note,body.gmc-recovery-entry #screen-email .verify-trust-strip{display:none!important;}body.gmc-recovery-entry #screen-email .email-minimal-fields:not([hidden]){display:grid!important;grid-template-columns:1fr;gap:10px;margin:0;padding:0;border:0;background:transparent;}body.gmc-recovery-entry #screen-email .email-minimal-fields .candidate-pin-only{display:none!important;}body.gmc-recovery-entry #screen-email .email-minimal-fields .field{display:grid!important;gap:5px;min-width:0;margin:0;}body.gmc-recovery-entry #screen-email .email-minimal-fields .field label{font-size:10.5px;font-weight:760;color:var(--auth-text);display:flex!important;align-items:center;gap:6px;}body.gmc-recovery-entry #screen-email .email-minimal-fields .verify-field-icon{display:inline-grid!important;width:16px;height:16px;place-items:center;color:var(--auth-muted);}body.gmc-recovery-entry #screen-email .email-minimal-fields input{width:100%;height:50px;border:1px solid var(--auth-line);background:var(--auth-card);border-radius:10px;padding:0 12px;color:var(--auth-text);font:500 14px/1 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;outline:0;}body.gmc-recovery-entry #screen-email .email-minimal-action .btn{width:100%;height:50px;border:0;border-radius:10px;background:linear-gradient(100deg,#096ff1,#0748a8);color:#fff;display:flex!important;align-items:center;justify-content:center;gap:8px;box-shadow:none;padding:0 12px;}body.gmc-recovery-entry #screen-email .email-minimal-action .btn strong{font:780 12px/1 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;}body.gmc-recovery-entry #screen-email .candidate-auth-switch-wrap{display:flex!important;justify-content:flex-start;margin:0;min-height:26px;align-items:center;}body.gmc-recovery-entry #screen-email .candidate-auth-switch{color:var(--auth-blue);font:760 10.5px/1.3 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;text-decoration:none;padding:2px 0;}body.gmc-recovery-entry #screen-email .candidate-auth-switch:before{content:"←";margin-right:7px;font-size:14px;}body.gmc-recovery-entry #screen-email .registration-login-eligibility{display:grid!important;grid-template-columns:36px minmax(0,1fr);gap:9px;align-items:center;margin:0;padding:10px;border:1px solid #ffc987;border-radius:10px;background:#fff8ee;}body.gmc-recovery-entry #screen-email .registration-login-eligibility-icon{width:36px;height:36px;border-radius:9px;background:var(--auth-orange);color:#fff;display:grid!important;place-items:center;font-size:17px;font-weight:900;}body.gmc-recovery-entry #screen-email .registration-login-eligibility strong{font-size:10.5px;color:#a04b00;}body.gmc-recovery-entry #screen-email .registration-login-eligibility p{display:none!important;}body.gmc-recovery-entry #screen-email .registration-login-eligibility :is(button,.registration-start-link){grid-column:1/-1;width:100%;height:40px;border:1px solid #cbd7e7;border-radius:9px;background:#fff;color:#172640;font:760 10px/1 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;display:flex!important;align-items:center;justify-content:center;text-decoration:none;}

  
  body.portal-body:not(.portal-auth-page) .portal-terms .portal-digital-confirmation{display:grid!important;grid-template-columns:18px minmax(0,1fr);gap:8px;align-items:start;margin:8px 0 2px;padding:10px;border:1px solid #bcd6fa;border-radius:8px;background:#f5f9ff;}body.portal-body:not(.portal-auth-page) .portal-terms .portal-digital-confirmation>input{width:17px;height:17px;margin:1px 0 0;accent-color:#0868e8;}body.portal-body:not(.portal-auth-page) .portal-terms .portal-digital-confirmation>span{display:grid!important;gap:2px;}body.portal-body:not(.portal-auth-page) .portal-terms .portal-digital-confirmation strong{font-size:9px;color:#102f59;}body.portal-body:not(.portal-auth-page) .portal-terms .portal-digital-confirmation small{font-size:8px;line-height:1.35;color:#65748c;font-weight:600;}
}


/* R3.5.131 — Student Portal live seat availability on mobile. */
.portal-slot-card{padding:12px;border-radius:9px;background:linear-gradient(180deg,#fff,#fbfdff);}
.portal-slot-heading{display:grid;gap:2px;width:100%;margin-bottom:8px;}
.portal-slot-heading>span{color:#0b5d9c;font-size:9px;font-weight:900;letter-spacing:.05em;text-transform:uppercase;}
.portal-slot-heading>small{color:#687a91;font-size:9px;font-weight:750;}
.portal-slot-heading h3{margin:3px 0 0;color:var(--navy-900);font-size:17px;line-height:1.16;}
.portal-slot-live-seat{display:grid;gap:7px;width:100%;margin:0 0 8px;padding:10px;border-radius:8px;background:linear-gradient(135deg,#0b315d,#0f477e);color:#fff;}
.portal-slot-live-kicker{display:flex;align-items:center;gap:5px;color:#ffd36d;font-size:8px;font-weight:900;letter-spacing:.06em;}.portal-slot-live-kicker i{width:6px;height:6px;border-radius:50%;background:#ff7f32;box-shadow:0 0 0 3px rgba(255,127,50,.13);}
.portal-slot-live-numbers{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;}.portal-slot-live-numbers>div{display:grid;gap:2px;}.portal-slot-live-numbers>div:last-child{text-align:right;}.portal-slot-live-numbers small{color:#c9daed;font-size:8px;font-weight:850;}.portal-slot-live-numbers strong{color:#fff;font-size:24px;line-height:1;font-weight:950;}.portal-slot-live-numbers strong em{color:#d9e7f6;font-size:11px;font-style:normal;font-weight:850;}.portal-slot-live-numbers>div:last-child strong{font-size:19px;}
.portal-slot-live-progress{display:block;width:100%;height:5px;border:0;border-radius:999px;background:rgba(255,255,255,.18);appearance:none;-webkit-appearance:none;overflow:hidden;}.portal-slot-live-progress::-webkit-progress-bar{background:rgba(255,255,255,.18);border-radius:999px;}.portal-slot-live-progress::-webkit-progress-value{background:linear-gradient(90deg,#ffd15c,#ff7f32);border-radius:999px;}.portal-slot-live-progress::-moz-progress-bar{background:linear-gradient(90deg,#ffd15c,#ff7f32);border-radius:999px;}.portal-slot-live-foot{color:#dbe9f7;font-size:8px;font-weight:800;}
.portal-slot-live-seat.is-unavailable{background:linear-gradient(135deg,#34465e,#42546d);}.portal-slot-live-seat.is-unavailable>strong{font-size:13px;}.portal-slot-live-seat.is-unavailable>small{color:#dce5ef;font-size:9px;line-height:1.4;}
.portal-slot-note{margin:0 0 9px!important;color:#6b7d94!important;font-size:9px!important;line-height:1.4!important;}.portal-slot-card .portal-primary,.portal-slot-card .portal-secondary{width:100%;text-align:center;}.portal-slot-card button:disabled{opacity:.58;cursor:not-allowed;}.portal-slot-card.is-full{border-color:#e4c7c7;background:#fffafa;}.portal-slot-card.is-full .portal-slot-live-seat{background:linear-gradient(135deg,#4e2630,#713846);}

/* R3.5.145 — HOME MOBILE ACTION + LIVE STATUS BALANCE REPAIR.
   DESIGN/LAYOUT ONLY. Authoritative Home mobile surface after removal of the
   obsolete R3.3.6B and R3.5.138–R3.5.142 Home override stacks.
   R3.5.145 restores the two equal white action cards and rebalances the single-line Live Status plate.
   No Selection Test, registration, live-count, navigation or carousel logic changes. */
@media (max-width:900px){
  /* One visible viewport: header + Home content + official partner strip. */
  body.welcome-gate{
    height:var(--visible-height);min-height:0;overflow:hidden;overscroll-behavior:none;
  }
  body.welcome-gate .app,
  body.welcome-gate .main,
  body.welcome-gate #screen-home,
  body.welcome-gate .public-landing{
    height:var(--visible-height);min-height:0;overflow:hidden;
  }
  body.welcome-gate .public-shell{
    width:100%;height:calc(var(--visible-height) - 72px);min-height:0;
    padding:6px 10px 8px;display:grid;grid-template-rows:minmax(0,1fr) 68px;gap:6px;
    overflow:hidden;background:linear-gradient(180deg,#fff 0%,#fbfcff 72%,#fff 100%);
  }
  body.welcome-gate .public-hero{
    position:relative;width:100%;height:100%;min-height:0;padding:10px 13px 0;
    display:flex;flex-direction:column;align-items:center;overflow:hidden;background:transparent;
  }
  body.welcome-gate .public-copy{width:100%;flex:0 0 auto;}
  body.welcome-gate .public-actions{
    width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px;
  }
  body.welcome-gate .public-start,
  body.welcome-gate .public-registration-home{
    grid-column:auto;grid-row:auto;display:inline-flex;align-items:center;justify-content:center;
    min-width:0;min-height:46px;border-radius:13px;padding:0 8px;font-size:10px;font-weight:800;white-space:nowrap;gap:6px;
    background:#fff;color:#0a2b5d;border:1px solid #d9ae62;box-shadow:0 7px 18px rgba(6,24,58,.06);
  }
  body.welcome-gate .public-start .public-action-icon{color:#0a2b5d;}

  /* Single authoritative orange live-status plate. */
  body.welcome-gate .public-live-status{
    width:100%;flex:0 0 auto;margin-top:7px;padding:0;border:0;background:transparent;
    box-shadow:none;overflow:visible;perspective:760px;
  }
  body.welcome-gate .public-live-status-track{
    position:relative;width:100%;height:50px;min-height:50px;perspective:760px;transform-style:preserve-3d;
  }
  body.welcome-gate .public-live-status-card{
    position:absolute;inset:0;width:100%;height:50px;min-height:50px;margin:0;padding:5px 10px;
    border:1px solid rgba(181,79,0,.18);border-radius:14px;
    display:none;grid-template-columns:92px max-content minmax(0,1fr);align-items:center;gap:10px;text-align:left;
    background:linear-gradient(100deg,#ff982f 0%,#f77a0d 55%,#ef6d00 100%);color:#fff;
    box-shadow:0 7px 17px rgba(214,93,5,.16),inset 0 1px 0 rgba(255,255,255,.28);
    opacity:0;overflow:hidden;transform-origin:50% 50%;backface-visibility:hidden;
  }
  body.welcome-gate .public-live-status-card.is-active{
    display:grid;opacity:1;animation:gmcHomeLiveRoll145 .42s cubic-bezier(.2,.78,.25,1) both;
  }
  @keyframes gmcHomeLiveRoll145{
    from{opacity:.15;transform:rotateX(-64deg) translateY(-3px) scale(.99)}
    70%{opacity:1;transform:rotateX(5deg) translateY(0) scale(1)}
    to{opacity:1;transform:rotateX(0) translateY(0) scale(1)}
  }
  body.welcome-gate .public-live-status-pill{
    width:92px;height:34px;border-radius:11px;background:#fff;color:#d95e00;
    display:flex;align-items:center;justify-content:center;gap:3px;white-space:nowrap;
    box-shadow:inset 0 0 0 1px rgba(121,55,0,.08),0 2px 6px rgba(111,47,0,.08);
  }
  body.welcome-gate .public-live-status-pill b{
    display:block;font:900 10px/1 Montserrat,Manrope,sans-serif;letter-spacing:.045em;
    white-space:nowrap;color:#c85700;
  }
  body.welcome-gate .public-live-status-count{
    min-width:0;font:900 25px/1 Montserrat,Manrope,sans-serif;color:#fff8df;
    letter-spacing:-.045em;text-align:center;text-shadow:0 1px 0 rgba(112,44,0,.14);
  }
  body.welcome-gate .public-live-status-label{
    min-width:0;display:grid;align-content:center;gap:1px;line-height:1.04;padding-left:3px;
  }
  body.welcome-gate .public-live-status-label small{
    display:block;color:#fff;font-size:11.5px;font-weight:900;line-height:1.04;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  }
  body.welcome-gate .public-live-status-label em{
    display:block;color:rgba(255,255,255,.92);font-style:normal;font-size:8.5px;font-weight:780;line-height:1.04;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  }
  body.welcome-gate .public-live-status-dots{
    height:5px;margin-top:2px;display:flex;align-items:center;justify-content:center;gap:5px;
  }
  body.welcome-gate .public-live-status-dots i{width:4px;height:4px;border-radius:99px;background:#e2b177;}
  body.welcome-gate .public-live-status-dots i.is-active{width:14px;background:#f47a0b;}

  /* Brain is the only elastic Home element. No glow/panel/background/filter.
     It moves slightly upward and scales down before it can touch the partner strip. */
  body.welcome-gate .public-brain-glow{display:none;}
  body.welcome-gate .public-visual{
    position:relative;width:min(80vw,300px);max-width:100%;min-height:0;flex:1 1 0;
    margin:-5px auto 0;display:grid;place-items:center;align-self:stretch;overflow:hidden;
    background:transparent;border:0;box-shadow:none;filter:none;
  }
  body.welcome-gate .public-brain-wrap,
  body.welcome-gate .public-brain-gesture{
    position:relative;width:100%;height:100%;min-height:0;max-height:100%;aspect-ratio:auto;
    display:grid;place-items:center;overflow:hidden;background:transparent;border:0;box-shadow:none;filter:none;
  }
  body.welcome-gate .public-brain-slide{
    position:absolute;inset:0;display:grid;place-items:center;overflow:hidden;background:transparent;
    opacity:0;visibility:hidden;transform:none;transition:opacity .18s ease;z-index:1;
  }
  body.welcome-gate .public-brain-slide.is-active{
    opacity:1;visibility:visible;transform:none;z-index:3;transition:opacity .28s ease;
  }
  body.welcome-gate .public-brain-slide.is-enter-left,
  body.welcome-gate .public-brain-slide.is-enter-right,
  body.welcome-gate .public-brain-slide.is-exit-left,
  body.welcome-gate .public-brain-slide.is-exit-right{
    transform:none;
  }
  body.welcome-gate .public-brain-slide .public-brain,
  body.welcome-gate .public-brain-slide.is-active .public-brain{
    display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center top;
    margin:0;background:transparent;box-shadow:none;filter:none;animation:none;transform:translateY(-2px);
  }

  /* Exactly three official partner columns; no legacy registration-counter column. */
  body.welcome-gate .public-partners{
    height:68px;min-height:68px;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
    position:relative;z-index:5;overflow:hidden;
  }
  body.welcome-gate .public-registration-counter{display:none;}
}

@media (max-width:390px){
  body.welcome-gate .public-live-status-card{
    grid-template-columns:82px max-content minmax(0,1fr);gap:8px;padding:5px 9px;
  }
  body.welcome-gate .public-live-status-pill{width:82px;height:33px;}
  body.welcome-gate .public-live-status-pill b{font-size:8.7px;}
  body.welcome-gate .public-live-status-count{font-size:22px;}
  body.welcome-gate .public-live-status-label small{font-size:10.2px;}
  body.welcome-gate .public-live-status-label em{font-size:7.4px;}
  body.welcome-gate .public-visual{width:min(78vw,285px);}
}

@media (max-width:900px) and (max-height:700px){
  body.welcome-gate .public-shell{height:calc(var(--visible-height) - 66px);grid-template-rows:minmax(0,1fr) 62px;padding:5px 8px 6px;gap:5px;}
  body.welcome-gate .public-hero{padding:7px 10px 0;}
  body.welcome-gate .public-kicker{padding:5px 9px;font-size:7.2px;}
  body.welcome-gate .public-title{margin-top:5px;}
  body.welcome-gate .public-title-small{font-size:27px;}
  body.welcome-gate .public-title-memory{font-size:50px;}
  body.welcome-gate .public-title-bottom{font-size:25px;}
  body.welcome-gate .public-accent{margin:7px 0 6px;}
  body.welcome-gate .public-tagline{font-size:10.5px;line-height:1.25;}
  body.welcome-gate .public-actions{margin-top:7px;gap:6px;}
  body.welcome-gate .public-start,
  body.welcome-gate .public-registration-home{min-height:41px;font-size:9.4px;}
  body.welcome-gate .public-live-status{margin-top:5px;}
  body.welcome-gate .public-live-status-track,
  body.welcome-gate .public-live-status-card{height:46px;min-height:46px;}
  body.welcome-gate .public-live-status-card{grid-template-columns:78px max-content minmax(0,1fr);gap:7px;padding:4px 8px;}
  body.welcome-gate .public-live-status-pill{width:78px;height:31px;}
  body.welcome-gate .public-live-status-pill b{font-size:8px;}
  body.welcome-gate .public-live-status-count{font-size:21px;}
  body.welcome-gate .public-live-status-label small{font-size:9.4px;}
  body.welcome-gate .public-live-status-label em{font-size:6.9px;}
  body.welcome-gate .public-live-status-dots{height:4px;margin-top:1px;}
  body.welcome-gate .public-visual{width:min(72vw,260px);margin-top:-5px;}
  body.welcome-gate .public-partners{height:62px;min-height:62px;}
}

@media (max-width:900px) and (max-height:620px){
  body.welcome-gate .public-title-small{font-size:24px;}
  body.welcome-gate .public-title-memory{font-size:45px;}
  body.welcome-gate .public-title-bottom{font-size:22px;}
  body.welcome-gate .public-tagline{font-size:9.6px;}
  body.welcome-gate .public-live-status-track,
  body.welcome-gate .public-live-status-card{height:43px;min-height:43px;}
  body.welcome-gate .public-live-status-card{grid-template-columns:74px max-content minmax(0,1fr);gap:6px;padding-left:7px;padding-right:7px;}
  body.welcome-gate .public-live-status-pill{width:74px;height:29px;}
  body.welcome-gate .public-live-status-pill b{font-size:7.5px;}
  body.welcome-gate .public-live-status-count{font-size:19px;}
  body.welcome-gate .public-live-status-label small{font-size:8.6px;}
  body.welcome-gate .public-live-status-label em{font-size:6.3px;}
  body.welcome-gate .public-visual{width:min(68vw,235px);margin-top:-5px;}
}

html[data-theme="dark"] body.welcome-gate .public-live-status-card{
  background:linear-gradient(100deg,#ff982f 0%,#f77a0d 55%,#ef6d00 100%);border-color:rgba(255,184,109,.34);
}


