/* Shared theme and responsive shell for standalone bioIQ pages. */
:root{color-scheme:dark}
html,body{min-height:100%;margin:0}
body{padding:0!important;background:radial-gradient(circle at 8% 0%,rgba(91,188,255,.14),transparent 28%),radial-gradient(circle at 92% 8%,rgba(255,143,47,.14),transparent 24%),linear-gradient(180deg,#040913 0%,#07111f 48%,#091a2f 100%);color:#e9f1ff}
.contact-container,.copyright-container,.issue-container,.policy-container,.guide-container{width:100%;max-width:1400px;min-height:100vh;margin:0 auto;padding:clamp(1.25rem,3vw,3.5rem) clamp(1rem,4vw,4.5rem);border:0;border-radius:0;background:linear-gradient(180deg,rgba(13,27,45,.96),rgba(7,17,31,.96));box-shadow:none}
.contact-header,.copyright-header,.issue-header,.policy-header,.guide-header{border-bottom-color:rgba(184,205,235,.14)}
.brand,.brand strong,h1,h2,h3,.contact-card strong,.faq-item .faq-q{color:#f3f7ff}
.brand strong span,h2:before,a,.footer-note a,.contact-card a{color:#ff8f2f}
.brand small,[class$="-meta"],p,li,.footer-note,.contact-card span,.faq-item .faq-a{color:#b5c4d7}
.subhead,.contact-form,.contact-card,.issue-form,.warning-box,.highlight-box,.guide-card,.toc{background:rgba(255,255,255,.045)}
.subhead{border-left-color:#ff8f2f}.highlight-box,.warning-box{border-left-color:#ff8f2f}
.footer-note{border-top-color:rgba(184,205,235,.14)}
.btn-secondary,.social-link,.back-home{background:rgba(255,255,255,.07);color:#dce8fb}
.form-group input,.form-group select,.form-group textarea,.issue-form input,.issue-form select,.issue-form textarea{background:rgba(4,9,19,.55)!important;border-color:rgba(184,205,235,.2)!important;color:#e9f1ff!important}
.form-group input::placeholder,.form-group textarea::placeholder,.issue-form input::placeholder,.issue-form textarea::placeholder{color:#8fa3bc!important}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.issue-form input:focus,.issue-form select:focus,.issue-form textarea:focus{border-color:#ff8f2f;box-shadow:0 0 0 4px rgba(255,143,47,.12)}
.btn-primary{background:linear-gradient(135deg,#ff8f2f,#e96b0e)}
.contact-container p,.contact-container li,.copyright-container p,.copyright-container li,.issue-container p,.issue-container li,.policy-container p,.policy-container li,.guide-container p,.guide-container li,.contact-container label,.issue-container label,.contact-container .helper-text,.issue-container .helper-text{color:#d6e2f2!important}
.contact-container h1,.contact-container h2,.contact-container h3,.copyright-container h1,.copyright-container h2,.copyright-container h3,.issue-container h1,.issue-container h2,.issue-container h3,.policy-container h1,.policy-container h2,.policy-container h3,.guide-container h1,.guide-container h2,.guide-container h3{color:#f3f7ff!important}
.contact-container .brand,.contact-container .brand strong,.copyright-container .brand,.copyright-container .brand strong,.issue-container .brand,.issue-container .brand strong,.policy-container .brand,.policy-container .brand strong,.guide-container .brand,.guide-container .brand strong{color:#f3f7ff!important}
.contact-container .brand small,.contact-container .contact-meta,.copyright-container .brand small,.copyright-container .copyright-meta,.issue-container .brand small,.issue-container .issue-meta,.policy-container .brand small,.policy-container .policy-meta,.guide-container .brand small,.guide-container .guide-meta{color:#b5c4d7!important}
.guide-container .subhead,.guide-container .toc,.guide-container .toc h3,.guide-container .toc-grid a,.guide-container .feature-card,.guide-container .feature-card strong,.guide-container .feature-card span,.guide-container .tip-box,.guide-container .warning-box,.guide-container .keyboard-shortcuts,.guide-container .shortcut{color:#d6e2f2!important}
.guide-container .toc-grid a{color:#d6e2f2!important}.guide-container .toc-grid a:hover{color:#ffb268!important}.guide-container .toc h3{color:#ffb268!important}
.page-theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:40px;padding:.55rem .9rem;border:1px solid rgba(184,205,235,.2);border-radius:999px;background:rgba(255,255,255,.07);color:#e9f1ff;font:inherit;font-size:.86rem;font-weight:700;cursor:pointer;transition:.2s ease}
.page-theme-toggle:hover{border-color:rgba(255,143,47,.65);background:rgba(255,143,47,.14);transform:translateY(-1px)}
html.theme-light{color-scheme:light}
html.theme-light body{background:linear-gradient(180deg,#f6fbff 0%,#edf4fb 55%,#e7eef7 100%);color:#10233f}
html.theme-light .contact-container,html.theme-light .copyright-container,html.theme-light .issue-container,html.theme-light .policy-container,html.theme-light .guide-container{background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(241,247,255,.98));border-color:rgba(43,75,122,.14);color:#173150}
html.theme-light .contact-header,html.theme-light .copyright-header,html.theme-light .issue-header,html.theme-light .policy-header,html.theme-light .guide-header,html.theme-light .footer-note{border-color:rgba(43,75,122,.14)}
html.theme-light .brand,html.theme-light .brand strong,html.theme-light h1,html.theme-light h2,html.theme-light h3,html.theme-light .contact-card strong,html.theme-light .faq-item .faq-q{color:#10233f}
html.theme-light .brand strong span,html.theme-light h2:before,html.theme-light a,html.theme-light .footer-note a,html.theme-light .contact-card a{color:#e96b0e}
html.theme-light .brand small,html.theme-light [class$="-meta"],html.theme-light p,html.theme-light li,html.theme-light .footer-note,html.theme-light .contact-card span,html.theme-light .faq-item .faq-a{color:#425a77!important}
html.theme-light .subhead,html.theme-light .contact-form,html.theme-light .contact-card,html.theme-light .issue-form,html.theme-light .warning-box,html.theme-light .highlight-box,html.theme-light .guide-card,html.theme-light .toc{background:rgba(20,99,216,.05);border-color:rgba(43,75,122,.14)}
html.theme-light .subhead,html.theme-light .highlight-box,html.theme-light .warning-box{border-left-color:#e96b0e}
html.theme-light .btn-secondary,html.theme-light .social-link,html.theme-light .back-home,html.theme-light .page-theme-toggle{background:rgba(20,99,216,.06);border-color:rgba(43,75,122,.16);color:#173150}
html.theme-light .form-group input,html.theme-light .form-group select,html.theme-light .form-group textarea,html.theme-light .issue-form input,html.theme-light .issue-form select,html.theme-light .issue-form textarea{background:#fff!important;border-color:rgba(43,75,122,.18)!important;color:#10233f!important}
html.theme-light .form-group input::placeholder,html.theme-light .form-group textarea::placeholder,html.theme-light .issue-form input::placeholder,html.theme-light .issue-form textarea::placeholder{color:#6a7d95!important}
html.theme-light .page-theme-toggle:hover{background:rgba(255,143,47,.12);border-color:rgba(233,107,14,.45)}
@media(max-width:700px){.contact-container,.copyright-container,.issue-container,.policy-container,.guide-container{padding:1rem .9rem 5rem}.contact-header,.copyright-header,.issue-header,.policy-header,.guide-header{align-items:flex-start;gap:.8rem}.contact-header,.copyright-header,.issue-header,.policy-header,.guide-header{flex-direction:column}.contact-grid,.form-row{grid-template-columns:1fr}.contact-form,.issue-form{padding:1rem}.social-links{flex-direction:column}.social-link{justify-content:center}.page-theme-toggle{width:100%}h1{font-size:clamp(1.7rem,7vw,2.2rem)}h2{font-size:1.25rem}.footer-note{flex-direction:column;align-items:flex-start}}
@media(max-width:420px){body{font-size:.94rem}.contact-container,.copyright-container,.issue-container,.policy-container,.guide-container{padding-left:.75rem;padding-right:.75rem}.brand strong{font-size:1.5rem}.subhead{padding:.7rem .85rem}.contact-card{padding:1.1rem .9rem}}

/* These final rules intentionally win over each page's legacy inline styles. */
html.theme-light body{background:linear-gradient(180deg,#f6fbff 0%,#edf4fb 55%,#e7eef7 100%)!important;color:#10233f!important}
html.theme-light .contact-container,html.theme-light .copyright-container,html.theme-light .issue-container,html.theme-light .policy-container,html.theme-light .guide-container{background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(241,247,255,.98))!important;color:#173150!important}
html.theme-light .brand,html.theme-light .brand strong,html.theme-light h1,html.theme-light h2,html.theme-light h3,html.theme-light .contact-card strong,html.theme-light .faq-item .faq-q{color:#10233f!important}
html.theme-light .brand small,html.theme-light [class$="-meta"],html.theme-light p,html.theme-light li,html.theme-light label,html.theme-light .footer-note,html.theme-light .contact-card span,html.theme-light .faq-item .faq-a,html.theme-light .helper-text{color:#425a77!important}
html.theme-light .brand strong span,html.theme-light h2:before,html.theme-light a,html.theme-light .footer-note a,html.theme-light .contact-card a{color:#e96b0e!important}
html.theme-light .subhead,html.theme-light .contact-form,html.theme-light .contact-card,html.theme-light .issue-form,html.theme-light .warning-box,html.theme-light .highlight-box,html.theme-light .guide-card,html.theme-light .toc{background:rgba(20,99,216,.05)!important;color:#173150!important}
html.theme-light .btn-secondary,html.theme-light .social-link,html.theme-light .back-home{background:rgba(20,99,216,.06)!important;color:#173150!important}
html.theme-light .guide-container .subhead,html.theme-light .guide-container .toc,html.theme-light .guide-container .toc h3,html.theme-light .guide-container .toc-grid a,html.theme-light .guide-container .feature-card,html.theme-light .guide-container .feature-card strong,html.theme-light .guide-container .feature-card span,html.theme-light .guide-container .tip-box,html.theme-light .guide-container .warning-box,html.theme-light .guide-container .keyboard-shortcuts,html.theme-light .guide-container .shortcut{color:#173150!important}
html.theme-light .guide-container .toc-grid a:hover{color:#e96b0e!important}.guide-container .subhead span{color:#fff!important}
html.theme-light .success-message{background:rgba(11,155,92,.1)!important;color:#145c3a!important;border-left-color:#0b9b5c!important}
html.theme-light .success-message h3,html.theme-light .success-message p{color:#145c3a!important}
html.theme-light .response-time{background:rgba(11,155,92,.1)!important;color:#17663f!important}
html.theme-light .issue-type-chip{background:rgba(20,99,216,.06)!important;border-color:rgba(43,75,122,.16)!important;color:#173150!important}
html.theme-light .issue-type-chip.active{background:linear-gradient(135deg,#1463d8,#e96b0e)!important;color:#fff!important}

/* Blueprint page layout */
.blueprint-page{--bp-bg:#f8fafc;--bp-ink:#0b0b0b;--bp-muted:rgba(11,11,11,.62);--bp-border:#e5e7eb;background:var(--bp-bg);color:var(--bp-ink);font-family:Inter,sans-serif;line-height:1.65}
.blueprint-page .topnav{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px max(18px,calc((100% - 1180px)/2));background:rgba(248,250,252,.94);border-bottom:1px solid var(--bp-border);backdrop-filter:blur(14px)}
.blueprint-page .brand{color:var(--bp-ink);text-decoration:none;font-weight:900}.blueprint-page .brand-wordmark span{color:#ff7a00}.blueprint-page .brand-wordmark strong{color:#2563eb}.blueprint-page .nav-right,.blueprint-page .hero-chips{display:flex;gap:8px;flex-wrap:wrap}.blueprint-page .reading-progress-pill,.blueprint-page .hp-pill,.blueprint-page .chip{border:1px solid var(--bp-border);border-radius:999px;padding:5px 10px;font-size:.75rem;font-weight:700;background:#fff}
.blueprint-page .hero{padding:72px 18px 58px;background:linear-gradient(135deg,#fff7ef,#f0f6ff);border-bottom:1px solid var(--bp-border)}.blueprint-page .hero-inner,.blueprint-page .section-shell{width:min(1180px,100%);margin:auto}.blueprint-page .hero-inner{display:grid;gap:18px}.blueprint-page .hero h1{font-size:clamp(2.5rem,7vw,6rem);line-height:.95;letter-spacing:-.07em}.blueprint-page .hero h1 .line2{color:#2563eb}.blueprint-page .hero-sub{max-width:780px;color:var(--bp-muted);font-size:1.08rem}.blueprint-page .hero-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.blueprint-page .hero-stat,.blueprint-page .class-card,.blueprint-page .start-btn,.blueprint-page .glass-card,.blueprint-page .tt-card,.blueprint-page .phase-card{padding:16px;border:1px solid var(--bp-border);border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(25,55,90,.06)}.blueprint-page .hero-stat b{display:block;font-size:1.35rem}.blueprint-page .hero-stat span,.blueprint-page .class-card p,.blueprint-page .glass-card p,.blueprint-page .tt-card p,.blueprint-page .phase-card p{color:var(--bp-muted);font-size:.86rem}.blueprint-page .section-shell{padding:28px 18px 80px}.blueprint-page .war{padding:42px 0;border-bottom:1px solid var(--bp-border)}.blueprint-page .war-tag,.blueprint-page .eyebrow{font:700 .75rem 'IBM Plex Mono',monospace;letter-spacing:.1em;text-transform:uppercase;color:#ff7a00}.blueprint-page h2{margin:8px 0;font-size:clamp(1.65rem,3vw,2.65rem);letter-spacing:-.05em}.blueprint-page .lede{max-width:760px;color:var(--bp-muted)}.blueprint-page .class-grid,.blueprint-page .start-grid,.blueprint-page .tt-grid,.blueprint-page .grid-2,.blueprint-page .phase-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px}.blueprint-page .class-card,.blueprint-page .start-btn,.blueprint-page .subject-tab{cursor:pointer;transition:.2s ease}.blueprint-page .class-card:hover,.blueprint-page .start-btn:hover,.blueprint-page .subject-tab:hover{transform:translateY(-2px);border-color:#ff7a00}.blueprint-page .class-card.active,.blueprint-page .start-btn.active,.blueprint-page .subject-tab.active{border-color:#ff7a00;background:#fff7ef}.blueprint-page .cc-badge{font:700 .68rem 'IBM Plex Mono',monospace;color:#2563eb}.blueprint-page .class-card h4,.blueprint-page .glass-card h4{margin:8px 0 4px}.blueprint-page .box{margin-top:20px;padding:17px;border:1px solid var(--bp-border);border-left:4px solid #ff7a00;border-radius:16px;background:#fff}.blueprint-page .subject-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0 12px}.blueprint-page .subject-tab{padding:9px 14px;border:1px solid var(--bp-border);border-radius:999px;background:#fff;font-weight:800}.blueprint-page .chapter-accordion{display:grid;gap:9px}.blueprint-page .chapter-item{border:1px solid var(--bp-border);border-radius:14px;background:#fff;overflow:hidden}.blueprint-page .chapter-head{display:flex;justify-content:space-between;gap:12px;padding:13px 15px;cursor:pointer;font-weight:800}.blueprint-page .checkpoint-grid{display:none;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;padding:0 15px 15px}.blueprint-page .chapter-item.open .checkpoint-grid{display:grid}.blueprint-page .checkpoint{padding:8px;border:1px solid var(--bp-border);border-radius:9px;background:#f8fafc;color:var(--bp-muted);font-size:.72rem;cursor:pointer}.blueprint-page .checkpoint.done{background:#e9f8ef;border-color:#82d49d;color:#16733c}.blueprint-page .war-progress-track{height:12px;border-radius:99px;background:#e9eef5;overflow:hidden}.blueprint-page .war-progress-fill{height:100%;width:0;background:linear-gradient(90deg,#ff7a00,#2563eb);transition:width .3s ease}.blueprint-page .timer-card{margin-top:18px;padding:20px;border-radius:18px;background:linear-gradient(135deg,#111827,#18345b);color:#fff}.blueprint-page .timer-inner{display:flex;justify-content:space-between;gap:16px;align-items:center}.blueprint-page .timer-num{font-size:2.4rem;font-weight:900}.blueprint-page #progress-bar{position:fixed;top:0;left:0;z-index:100;width:0;height:4px;background:linear-gradient(90deg,#ff7a00,#2563eb)}
@media(max-width:760px){.blueprint-page .hero{padding:48px 14px}.blueprint-page .section-shell{padding-inline:14px}.blueprint-page .hero-stats,.blueprint-page .class-grid,.blueprint-page .start-grid,.blueprint-page .tt-grid,.blueprint-page .grid-2,.blueprint-page .phase-grid{grid-template-columns:1fr 1fr}.blueprint-page .checkpoint-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.blueprint-page .timer-inner{align-items:flex-start;flex-direction:column}}@media(max-width:480px){.blueprint-page .hero-stats,.blueprint-page .class-grid,.blueprint-page .start-grid,.blueprint-page .tt-grid,.blueprint-page .grid-2,.blueprint-page .phase-grid{grid-template-columns:1fr}.blueprint-page .topnav{align-items:flex-start;flex-direction:column}}
