:root{--teal:#0D9B8E;--teal-d:#0A7A6F;--teal-l:#E6F5F3;--ink:#0C1219;--ink-mid:#2D3E4E;--ink-mute:#6B7E8F;--sand:#F5F0E8;--border:#DDE4EA;--card:#F9FAFB;--white:#FFFFFF}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'DM Sans',sans-serif;background:var(--white);color:var(--ink);overflow-x:hidden;-webkit-font-smoothing:antialiased}
nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;align-items:center;justify-content:space-between;padding:0 3rem;height:64px;background:rgba(255,255,255,0.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--border);transition:box-shadow .3s}
nav.scrolled{box-shadow:0 2px 20px rgba(0,0,0,.07)}
.nav-logo{font-family:'Playfair Display',serif;font-size:1.2rem;font-weight:600;color:var(--ink);cursor:pointer}
.nav-logo span{color:var(--teal)}
.nav-links{display:flex;gap:2rem;list-style:none;align-items:stretch}
.nav-links li{display:flex;align-items:stretch}
.nav-links a{display:inline-flex;align-items:center;min-height:64px;font-size:.875rem;color:var(--ink-mid);text-decoration:none;transition:color .2s;cursor:pointer;white-space:nowrap}
.nav-links a:hover,.nav-links a.active{color:var(--teal)}
.nav-ctas{display:flex;gap:.75rem;align-items:center}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:.55rem 1.25rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;border:none;font-family:'DM Sans',sans-serif}
.btn-ghost{background:transparent;color:var(--ink-mid);border:1px solid var(--border)}
.btn-ghost:hover{border-color:var(--teal);color:var(--teal)}
.btn-primary{background:var(--teal);color:var(--white)}
.btn-primary:hover{background:var(--teal-d)}
.btn-outline{background:transparent;color:var(--white);border:1.5px solid rgba(255,255,255,.55)}
.btn-outline:hover{background:rgba(255,255,255,.1);border-color:white}
.btn-white{background:var(--white);color:var(--teal);border:none}
.btn-white:hover{background:rgba(255,255,255,.9)}
.btn-lg{padding:.85rem 2rem;font-size:1rem;border-radius:8px}
.btn-teal-outline{background:transparent;color:var(--teal);border:1.5px solid var(--teal)}
.btn-teal-outline:hover{background:var(--teal-l)}
.page{display:none;padding-top:64px}
.page.active{display:block}
.sec{padding:5rem 4rem}
.eyebrow{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--teal);font-weight:500;margin-bottom:.85rem}
.sh{font-family:'Playfair Display',serif;font-size:clamp(1.8rem,3vw,2.6rem);font-weight:600;line-height:1.2;color:var(--ink);letter-spacing:-.02em}
.sh-white{color:var(--white)}
.sub{font-size:1rem;font-weight:300;line-height:1.8;color:var(--ink-mid);max-width:560px;margin-top:.85rem}
.sec-hd{margin-bottom:3rem}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .65s ease,transform .65s ease}
.reveal.vis{opacity:1;transform:translateY(0)}
.d1{transition-delay:.08s}.d2{transition-delay:.16s}.d3{transition-delay:.24s}.d4{transition-delay:.32s}
/* HERO */
.hero{min-height:calc(100vh - 64px);display:grid;grid-template-columns:1.05fr .95fr;overflow:hidden}
.hero-l{background:var(--ink);padding:5rem 3.5rem 5rem 4rem;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;position:relative;overflow:hidden}
.hero-l::before{content:'';position:absolute;top:-120px;right:-80px;width:400px;height:400px;background:var(--teal);border-radius:50%;opacity:.07}
.hero-l::after{content:'';position:absolute;bottom:-60px;left:-60px;width:260px;height:260px;background:var(--teal);border-radius:50%;opacity:.05}
.hero-ey{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--teal);font-weight:500;margin-bottom:1.5rem;animation:fu .7s .2s both}
.hero-h1{font-family:'Playfair Display',serif;font-size:clamp(2.4rem,4vw,3.4rem);font-weight:600;line-height:1.18;color:var(--white);letter-spacing:-.02em;margin-bottom:1.5rem;animation:fu .7s .35s both}
.hero-h1 em{font-style:italic;color:var(--teal)}
.hero-sub{font-size:1rem;font-weight:300;line-height:1.8;color:rgba(255,255,255,.68);max-width:560px;margin-bottom:2.5rem;animation:fu .7s .5s both}
.hero-ctas{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;animation:fu .7s .65s both}
.hero-note{margin-top:1rem;font-size:.75rem;color:rgba(255,255,255,.3);animation:fu .7s .8s both}
.hero-r{background:var(--sand);padding:4.5rem 3.5rem;display:flex;flex-direction:column;justify-content:center;border-left:1px solid var(--border)}
.hero-r-label{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:1rem;font-weight:500}
.quiz-pop{background:var(--white);border:1px solid var(--border);border-radius:14px;box-shadow:0 18px 46px rgba(12,18,25,.12);overflow:hidden;animation:fi .9s .5s both}
.quiz-pop-head{background:var(--ink);padding:1rem 1.2rem;display:flex;justify-content:space-between;align-items:center;gap:1rem}
.quiz-pop-k{font-size:.66rem;letter-spacing:.13em;text-transform:uppercase;color:var(--teal);font-weight:700}
.quiz-pop-count{font-size:.72rem;color:rgba(255,255,255,.54)}
.quiz-pop-body{padding:1.35rem}
.quiz-pop-title{font-family:'Playfair Display',serif;font-size:1.35rem;line-height:1.25;color:var(--ink);font-weight:600;margin-bottom:.6rem}
.quiz-pop-copy{font-size:.86rem;color:var(--ink-mid);line-height:1.65;margin-bottom:1rem}
.quiz-pop-question{border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:1rem 0;margin-bottom:1rem}
.quiz-pop-q-label{font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--teal);font-weight:700;margin-bottom:.45rem}
.quiz-pop-q{font-size:.92rem;color:var(--ink);font-weight:600;line-height:1.5;margin-bottom:.75rem}
.quiz-pop-options{display:grid;gap:.55rem}
.quiz-pop-option{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:.7rem .8rem;text-align:left;font-family:'DM Sans',sans-serif;font-size:.82rem;color:var(--ink-mid);cursor:pointer;transition:background .2s,border-color .2s,transform .2s}
.quiz-pop-option:hover{border-color:var(--teal);transform:translateY(-1px)}
.quiz-pop-option.selected{background:var(--teal-l);border-color:var(--teal);color:var(--teal-d)}
.quiz-pop-result{display:grid;grid-template-columns:auto 1fr;gap:.85rem;align-items:center;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:.9rem;margin-bottom:1rem}
.quiz-pop-ring{width:46px;height:46px;border-radius:50%;border:4px solid var(--teal);display:grid;place-items:center;font-size:.8rem;font-weight:800;color:var(--teal)}
.quiz-pop-result-title{font-size:.84rem;font-weight:700;color:var(--ink);margin-bottom:.2rem}
.quiz-pop-result-body{font-size:.75rem;color:var(--ink-mute);line-height:1.45}
.quiz-pop-actions{display:grid;grid-template-columns:1fr auto;gap:.65rem}
.quiz-pop-share{background:transparent;border:1px solid var(--border);color:var(--ink-mid);border-radius:8px;padding:.72rem .85rem;font-family:'DM Sans',sans-serif;font-size:.8rem;font-weight:700;cursor:pointer}
.quiz-pop-share:hover{border-color:var(--teal);color:var(--teal)}
.home-brief-section{background:var(--white);padding:4.25rem 4rem;border-bottom:1px solid var(--border)}
.home-brief-wrap{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:.75fr 1.25fr;gap:3rem;align-items:start}
.home-brief-label{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--teal);font-weight:700;margin-bottom:.85rem}
.home-brief-copy{font-size:.92rem;color:var(--ink-mid);line-height:1.75;margin-top:.85rem}
.home-brief-card{background:var(--card);border:1px solid var(--border);border-radius:12px;overflow:hidden}
/* BRIEF */
.brief-card{background:var(--white);border:1px solid var(--border);border-radius:14px;overflow:hidden;box-shadow:0 4px 24px rgba(0,0,0,.06);animation:fi .9s .5s both}
.bc-head{background:var(--ink);padding:.9rem 1.4rem;display:flex;align-items:center;justify-content:space-between}
.bc-dot{width:7px;height:7px;border-radius:50%;background:var(--teal)}
.bc-lbl{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.55);margin-left:.6rem}
.bc-date{font-size:.68rem;color:rgba(255,255,255,.3)}
.bc-body{padding:1.4rem}
.bc-title{font-family:'Playfair Display',serif;font-size:.98rem;font-weight:600;line-height:1.4;color:var(--ink);margin-bottom:1.1rem}
.bc-row{padding:.75rem 0;border-top:1px solid var(--border)}
.bc-row:first-child{border-top:none;padding-top:0}
.bc-rl{font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--teal);font-weight:500;margin-bottom:.3rem}
.bc-rt{font-size:.85rem;color:var(--ink-mid);line-height:1.6}
.bc-foot{padding:.75rem 1.4rem;border-top:1px solid var(--border);display:flex;gap:.6rem;flex-wrap:wrap}
.tag{font-size:.68rem;padding:.2rem .6rem;border-radius:20px;background:var(--teal-l);color:var(--teal);font-weight:500}
/* STATS */
.stats-band{background:var(--teal);padding:2rem 4rem;display:flex;align-items:center;gap:4rem}
.stats-band-lbl{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.65);white-space:nowrap;font-weight:500}
.stats-row{display:flex;gap:4rem;flex:1;justify-content:space-around}
.stat-item{text-align:center}
.stat-val{font-family:'Playfair Display',serif;font-size:2rem;font-weight:600;color:var(--white);line-height:1}
.stat-lbl{font-size:.78rem;color:rgba(255,255,255,.7);margin-top:.3rem;line-height:1.4}
/* PILLARS */
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.pillar{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:1.75rem;position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s;cursor:default}
.pillar:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(0,0,0,.08)}
.pillar::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--teal)}
.p-num{font-family:'Playfair Display',serif;font-size:1.7rem;font-weight:600;color:var(--teal);opacity:.3;margin-bottom:.4rem;line-height:1}
.p-title{font-size:1rem;font-weight:500;color:var(--ink);margin-bottom:.2rem}
.p-sub{font-size:.75rem;color:var(--teal);font-weight:500;margin-bottom:.75rem;font-style:italic}
.p-body{font-size:.875rem;color:var(--ink-mid);line-height:1.65}
/* STORY */
.story-sec{background:var(--ink);display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;padding:5rem 4rem}
.story-body{font-size:.92rem;line-height:1.85;color:rgba(255,255,255,.58);margin-bottom:1.1rem}
.story-r{border-left:1px solid rgba(255,255,255,.08);padding-left:3rem}
.quote{font-family:'Playfair Display',serif;font-size:1.25rem;font-style:italic;line-height:1.65;color:var(--white);margin-bottom:1.4rem;position:relative;padding-left:1rem}
.quote::before{content:'\201C';position:absolute;top:-.8rem;left:-.2rem;font-size:4rem;color:var(--teal);opacity:.25;font-family:'Playfair Display',serif;line-height:1}
.attrib{font-size:.78rem;color:rgba(255,255,255,.35);display:flex;align-items:center;gap:.75rem}
.attrib::before{content:'';display:block;width:2rem;height:1px;background:var(--teal)}
/* WHO */
.who-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
.who-card{background:var(--white);border:1px solid var(--border);border-radius:12px;padding:1.5rem;transition:border-color .2s,box-shadow .2s}
.who-card:hover{border-color:var(--teal);box-shadow:0 4px 20px rgba(13,155,142,.08)}
.who-title{font-size:.95rem;font-weight:500;color:var(--ink);margin-bottom:.4rem}
.who-body{font-size:.85rem;color:var(--ink-mid);line-height:1.65}
/* HOW GOVT */
.how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.how-grid-v{grid-template-columns:1fr;gap:.6rem}
.how-grid-v .how-card{display:grid;grid-template-columns:160px 1fr;grid-template-rows:auto 1fr;gap:.3rem 2rem;padding:1.25rem 1.5rem}
.how-grid-v .how-list{grid-column:2;grid-row:1/3;align-self:center}
.how-card{background:var(--white);border:1px solid var(--border);border-radius:12px;padding:1.75rem;transition:border-color .2s,box-shadow .2s;position:relative;overflow:hidden}
.how-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--teal)}
.how-card:hover{border-color:var(--teal);box-shadow:0 4px 20px rgba(13,155,142,.06)}
.how-level{font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;color:var(--teal);font-weight:500;margin-bottom:.5rem}
.how-title{font-family:'Playfair Display',serif;font-size:1.05rem;font-weight:600;color:var(--ink);margin-bottom:.65rem;line-height:1.3}
.how-list{list-style:none;display:grid;gap:.4rem}
.how-list li{font-size:.85rem;color:var(--ink-mid);padding:.3rem 0;border-bottom:1px solid var(--border);display:flex;align-items:flex-start;gap:.6rem;line-height:1.5}
.how-list li::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--teal);flex-shrink:0;margin-top:.45rem}
.how-list li:last-child{border-bottom:none}
/* CTA */
.cta-block{background:#0C1219;padding:5rem 4rem;text-align:center;position:relative;overflow:hidden}
.cta-block::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(13,155,142,.4),transparent)}
.cta-h{font-family:'Playfair Display',serif;font-size:clamp(2rem,3.5vw,2.8rem);font-weight:700;color:var(--white);line-height:1.15;margin-bottom:.75rem;letter-spacing:-.01em;position:relative;z-index:1}
.cta-sub{font-size:1rem;color:rgba(255,255,255,.5);max-width:480px;margin:0 auto 2.5rem;line-height:1.75;position:relative;z-index:1}
.cta-btns{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;position:relative;z-index:1}
.cta-note{margin-top:1rem;font-size:.75rem;color:rgba(255,255,255,.35);position:relative;z-index:1}
.cta-block .btn-white{background:var(--teal);background-image:linear-gradient(135deg,var(--teal) 0%,#1ab8a8 45%,var(--teal) 55%,var(--teal-d) 100%);background-size:300% 100%;color:#fff;border:none;font-family:'Playfair Display',serif;font-size:1.05rem;letter-spacing:.01em;animation:ctaShine 3s linear infinite}
.cta-block .btn-white:hover{color:#fff;opacity:.9}
.cta-block .btn-outline{border-color:rgba(255,255,255,.3);color:rgba(255,255,255,.75)}
.cta-block .btn-outline:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.6);color:#fff}
@keyframes ctaShine{0%{background-position:0% 0}100%{background-position:100% 0}}
/* FOOTER */
footer{background:#fff;border-top:1px solid var(--border);padding:2.5rem 4rem;display:flex;flex-direction:column;align-items:center;text-align:center;gap:1.25rem}
.foot-logo{font-family:'Playfair Display',serif;font-size:1.05rem;font-weight:600;color:var(--ink)}
.foot-logo span{color:var(--teal)}
.foot-org{font-size:.75rem;color:rgba(12,18,25,.45);margin-top:.3rem}
.foot-right{font-size:.75rem;color:rgba(12,18,25,.45);text-align:center;line-height:1.8}
.foot-links{display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap;margin-bottom:.5rem}
.foot-links a{font-size:.75rem;color:rgba(12,18,25,.55);text-decoration:none;cursor:pointer;font-weight:500}
.foot-links a:hover{color:var(--teal)}
/* PAGE HERO */
.page-hero{background:#07101a;background-image:radial-gradient(rgba(255,255,255,.042) 1px,transparent 1px),radial-gradient(ellipse 440px 360px at calc(100% + 80px) -120px,rgba(13,155,142,.16),transparent),radial-gradient(ellipse 180px 180px at 15% calc(100% + 50px),rgba(13,155,142,.07),transparent);background-size:24px 24px,auto,auto;padding:4rem 3.5rem 3.5rem;position:relative;overflow:hidden;text-align:center}
.page-hero::before{display:none}
.page-hero::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(13,155,142,.28) 40%,rgba(13,155,142,.28) 60%,transparent 100%)}
.ph-ey{font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:#0D9B8E;font-weight:700;margin-bottom:.85rem;display:flex;align-items:center;justify-content:center;gap:10px;position:relative;z-index:1}
.ph-ey::before{display:none}
.ph-h{font-family:'Cormorant Garamond',serif;font-size:clamp(2.4rem,4vw,3.2rem);font-weight:700;line-height:1.07;color:#fff;letter-spacing:-.01em;max-width:700px;margin:0 auto 1.1rem;position:relative;z-index:1}
.ph-sub{font-size:.95rem;font-weight:300;line-height:1.8;color:rgba(255,255,255,.48);max-width:600px;margin:0 auto 1.5rem;position:relative;z-index:1}
.act-hero-cta{display:inline-flex;align-items:center;gap:9px;background:var(--teal);color:#fff;border:none;border-radius:32px;padding:12px 24px;font-size:.88rem;font-weight:600;cursor:pointer;font-family:'DM Sans',sans-serif;position:relative;z-index:1;margin-top:.5rem;letter-spacing:.01em;transition:opacity .15s,transform .15s}
.act-hero-cta:hover{opacity:.88;transform:translateY(-1px)}
.act-hero-cta:active{transform:scale(.97)}
.act-hero-cta-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.9);animation:ctaDotPulse 2s ease-in-out infinite;flex-shrink:0}
@keyframes ctaDotPulse{0%,100%{opacity:.4;transform:scale(1)}50%{opacity:1;transform:scale(1.5)}}
.page-hero-center{text-align:center}
.page-hero-center .ph-ey{justify-content:center}
.page-hero-center .ph-h,.page-hero-center .ph-sub{margin-left:auto;margin-right:auto}
.page-hero-center::before{display:none}
.tool-visual-svg{overflow:visible;filter:drop-shadow(0 4px 24px rgba(13,155,142,.08))}
/* HUB */
.hub-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}
.hub-card{background:var(--white);border:1px solid var(--border);border-radius:14px;padding:2rem;transition:border-color .2s,box-shadow .2s}
.hub-card:hover{border-color:var(--teal);box-shadow:0 6px 24px rgba(13,155,142,.08)}
.hub-icon{width:42px;height:42px;border-radius:10px;background:var(--teal-l);display:flex;align-items:center;justify-content:center;margin-bottom:1rem}
.hub-icon svg{width:20px;height:20px;stroke:var(--teal);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.hub-title{font-size:1.05rem;font-weight:500;color:var(--ink);margin-bottom:.4rem}
.hub-body{font-size:.875rem;color:var(--ink-mid);line-height:1.65;margin-bottom:1.1rem}
/* NEWS */
.news-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:1.75rem;align-items:start}
.article-list{display:grid;gap:1.25rem;min-width:0}
.article-card{background:var(--white);border:1px solid var(--border);border-radius:12px;padding:1.5rem;transition:border-color .2s,box-shadow .2s;cursor:pointer}
.article-card:hover{border-color:var(--teal);box-shadow:0 4px 20px rgba(13,155,142,.06)}
.modal-overlay{display:none;position:fixed;inset:0;background:rgba(12,18,25,.75);z-index:300;backdrop-filter:blur(4px);align-items:flex-start;justify-content:center;padding:3rem 1.5rem;overflow-y:auto}
.modal-overlay.open{display:flex}
.modal{background:var(--white);border-radius:16px;max-width:720px;width:100%;position:relative;box-shadow:0 24px 80px rgba(0,0,0,.3)}
.modal-head{background:var(--ink);padding:2rem 2.5rem 1.75rem;border-radius:16px 16px 0 0}
.modal-close{position:absolute;top:1.25rem;right:1.25rem;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.12);border:none;color:white;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;line-height:1}
.modal-close:hover{background:rgba(255,255,255,.22)}
.modal-cat{font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;color:var(--teal);font-weight:500;margin-bottom:.65rem}
.modal-title{font-family:'Playfair Display',serif;font-size:1.5rem;font-weight:600;line-height:1.3;color:var(--white)}
.modal-date{font-size:.75rem;color:rgba(255,255,255,.35);margin-top:.6rem}
.modal-body{padding:2rem 2.5rem}
.brief-section{margin-bottom:1.75rem}
.brief-section:last-child{margin-bottom:0}
.brief-sec-label{font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;color:var(--teal);font-weight:500;margin-bottom:.5rem}
.brief-sec-text{font-size:.95rem;color:var(--ink-mid);line-height:1.85}
.brief-divider{border:none;border-top:1px solid var(--border);margin:1.5rem 0}
.modal-tags{display:flex;gap:.5rem;flex-wrap:wrap;padding:1.25rem 2.5rem;border-top:1px solid var(--border)}
.modal-source-link{font-size:.74rem;color:var(--teal);text-decoration:none;margin-left:auto;font-weight:700;display:inline-flex;align-items:center;gap:.25rem;border:1px solid rgba(13,155,142,.24);border-radius:999px;padding:.32rem .7rem;background:var(--teal-l)}
.modal-source-link:hover{color:var(--teal-d);border-color:var(--teal)}
.art-meta{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}
.art-cat{font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:var(--teal);font-weight:500}
.art-update{font-size:.68rem;color:var(--ink-mute);font-style:italic}
/* GLOSSARY TOOLTIPS */
.glossary-term{border-bottom:1px dashed var(--teal);cursor:pointer;color:inherit;position:relative}
.glossary-term:hover{color:var(--teal)}
.glossary-popup{position:absolute;bottom:calc(100% + 6px);left:0;min-width:220px;max-width:300px;background:var(--ink);color:rgba(255,255,255,.85);font-size:.78rem;line-height:1.6;padding:.75rem 1rem;border-radius:8px;z-index:500;box-shadow:0 8px 32px rgba(0,0,0,.25)}
.glossary-popup::after{content:'';position:absolute;top:100%;left:12px;border:5px solid transparent;border-top-color:var(--ink)}
.glossary-panel{display:none;margin:.75rem 2.5rem 0;background:var(--ink);color:rgba(255,255,255,.82);border-radius:10px;padding:1rem 1.15rem;font-size:.85rem;line-height:1.65}
.glossary-panel.show{display:block}
.gp-term{font-weight:600;color:var(--teal);margin-bottom:.3rem;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase}
.gp-def{color:rgba(255,255,255,.8)}
.art-title{font-family:'Playfair Display',serif;font-size:1.05rem;font-weight:600;line-height:1.4;color:var(--ink);margin-bottom:.5rem}
.art-excerpt{font-size:.875rem;color:var(--ink-mid);line-height:1.65;margin-bottom:1rem}
.art-tags{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}
.news-live-head{border:1px solid var(--border);background:linear-gradient(180deg,#fff,var(--card));border-radius:12px;padding:1rem 1.25rem;margin-bottom:1rem}
.news-console{border-radius:16px;padding:1.25rem;background:linear-gradient(180deg,#fff 0%,#F7FBFA 100%);box-shadow:0 18px 48px rgba(12,18,25,.07)}
.news-console-top{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.55rem}
.news-auto-state{font-size:.7rem;color:var(--teal-d);background:var(--teal-l);border:1px solid rgba(13,155,142,.18);border-radius:999px;padding:.32rem .66rem;white-space:nowrap;font-weight:700}
.news-live-title{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--teal);font-weight:700;margin-bottom:.35rem}
.news-live-note{font-size:.84rem;color:var(--ink-mid);line-height:1.6}
.news-topic-row{display:flex;gap:.5rem;flex-wrap:wrap;margin:1rem 0 1rem}
.news-topic{border:1px solid var(--border);background:var(--white);color:var(--ink-mid);border-radius:999px;padding:.42rem .72rem;font-size:.73rem;font-weight:700;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:.38rem}
.news-topic:hover,.news-topic.active{border-color:var(--teal);background:var(--teal-l);color:var(--teal-d)}
.news-topic-count{min-width:1.3rem;height:1.3rem;border-radius:999px;background:var(--card);border:1px solid var(--border);display:inline-flex;align-items:center;justify-content:center;font-size:.62rem;color:var(--ink-mute);font-weight:800}
.news-topic.active .news-topic-count{background:var(--teal);border-color:var(--teal);color:#fff}
.news-source-link{font-size:.76rem;color:var(--teal);font-weight:700;text-decoration:none}
.news-source-link:hover{color:var(--teal-d)}
.news-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem;margin-top:.9rem}
.news-search{width:100%;border:1px solid var(--border);background:var(--white);border-radius:9px;padding:.72rem .85rem;font-family:'DM Sans',sans-serif;font-size:.84rem;color:var(--ink);outline:none}
.news-search:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(13,155,142,.08)}
.news-refresh{border:1px solid var(--border);background:var(--white);color:var(--ink-mid);border-radius:9px;padding:.72rem .95rem;font-family:'DM Sans',sans-serif;font-size:.76rem;font-weight:700;cursor:pointer;text-transform:uppercase;letter-spacing:.06em}
.news-refresh:hover{border-color:var(--teal);color:var(--teal-d);background:var(--teal-l)}
.news-mode-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;border-top:1px solid var(--border);padding-top:.85rem;margin-top:.85rem}
.news-mode-tabs{display:inline-flex;background:var(--white);border:1px solid var(--border);border-radius:999px;padding:.18rem;gap:.15rem}
.news-mode{border:none;background:transparent;color:var(--ink-mute);border-radius:999px;padding:.42rem .78rem;font-family:'DM Sans',sans-serif;font-size:.72rem;font-weight:800;cursor:pointer}
.news-mode.active{background:var(--ink);color:#fff}
.news-update-stamp{font-size:.74rem;color:var(--ink-mute);text-align:right}
.news-live-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-top:.85rem}
.news-summary-card{background:var(--white);border:1px solid var(--border);border-radius:10px;padding:.75rem}
.news-summary-card strong{display:block;font-size:.9rem;color:var(--ink);margin-bottom:.15rem}
.news-summary-card span{font-size:.68rem;color:var(--ink-mute);letter-spacing:.07em;text-transform:uppercase}
.news-feed-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:.35rem 0 .2rem}
.news-feed-label{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute);font-weight:700}
.news-feed-meta{font-size:.76rem;color:var(--ink-mute);text-align:right}
.news-card{display:grid;gap:1rem}
.news-lead-card{padding:1.65rem;border-radius:16px;background:linear-gradient(180deg,#fff 0%,#F9FAFB 100%);box-shadow:0 14px 44px rgba(12,18,25,.08)}
.news-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}
.news-card-source{font-size:.68rem;color:var(--ink-mute);white-space:nowrap}
.news-card-lens{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:.75rem}
.news-lens-item span{display:block;font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:.2rem}
.news-lens-item strong{font-size:.78rem;color:var(--ink-mid);font-weight:500;line-height:1.35}
.news-card-actions{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}
.news-understand-btn{border:1px solid rgba(13,155,142,.25);background:var(--teal-l);color:var(--teal-d);border-radius:999px;padding:.38rem .8rem;font-family:'DM Sans',sans-serif;font-size:.74rem;font-weight:800;cursor:pointer}
.news-understand-btn:hover{border-color:var(--teal)}
.news-compact-stack{display:grid;gap:.72rem}
.news-compact-card{background:var(--white);border:1px solid var(--border);border-radius:12px;padding:1rem 1.1rem;cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .2s}
.news-compact-card:hover{border-color:var(--teal);box-shadow:0 8px 24px rgba(13,155,142,.07);transform:translateY(-1px)}
.news-compact-top{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:.55rem}
.news-compact-title{font-size:.94rem;color:var(--ink);line-height:1.42;font-weight:600}
.news-compact-source{font-size:.68rem;color:var(--ink-mute);white-space:nowrap}
.news-compact-summary{font-size:.8rem;line-height:1.55;color:var(--ink-mid);margin-bottom:.7rem}
.news-compact-foot{display:flex;align-items:center;justify-content:space-between;gap:.75rem;border-top:1px solid var(--border);padding-top:.65rem}
.news-mini-lens{display:flex;gap:.4rem;flex-wrap:wrap}
.news-mini-pill{font-size:.66rem;color:var(--ink-mute);border:1px solid var(--border);border-radius:999px;padding:.2rem .5rem;background:var(--card)}
.news-story-list-title{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute);font-weight:800;margin:.85rem 0 .2rem}
.news-loading,.news-empty{background:var(--white);border:1px solid var(--border);border-radius:12px;padding:1.25rem;color:var(--ink-mid);font-size:.85rem;line-height:1.65}
.news-loading{display:grid;gap:.75rem}
.news-skeleton{height:12px;border-radius:999px;background:linear-gradient(90deg,var(--border),rgba(13,155,142,.12),var(--border));background-size:220% 100%;animation:shine 1.2s linear infinite}
.news-skeleton.short{width:62%}
@keyframes shine{0%{background-position:0 0}100%{background-position:-220% 0}}
.news-side-topics{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.25rem}
.news-side-topic{border:1px solid var(--border);background:var(--white);border-radius:999px;color:var(--ink-mid);font-family:'DM Sans',sans-serif;font-size:.74rem;font-weight:700;padding:.38rem .72rem;cursor:pointer}
.news-side-topic:hover,.news-side-topic.active{border-color:var(--teal);background:var(--teal-l);color:var(--teal-d)}
.news-official-list{display:grid;gap:.45rem;margin-top:.65rem}
.news-official-list a{font-size:.78rem;color:var(--teal);text-decoration:none;font-weight:700}
.news-official-list a:hover{color:var(--teal-d)}
.news-sidebar-sticky{position:sticky;top:86px}
.news-toolbox{background:var(--ink);border-color:rgba(255,255,255,.08);color:rgba(255,255,255,.68)}
.news-toolbox .sw-title{color:var(--teal)}
.news-toolbox .sw-item{border-bottom-color:rgba(255,255,255,.08);color:rgba(255,255,255,.62)}
.news-toolbox .sw-item strong{color:#fff}
.news-page-v2{background:#fff}
.news-masthead{background:#08111b;background-image:radial-gradient(ellipse 540px 320px at 86% -120px,rgba(13,155,142,.18),transparent),linear-gradient(180deg,#0b1420 0%,#07101a 100%);padding:2.1rem 4rem 2rem;border-bottom:1px solid rgba(255,255,255,.08)}
.news-masthead-inner{max-width:1320px;margin:0 auto;display:flex;align-items:flex-start;justify-content:space-between;gap:2rem}
.news-masthead h1{font-family:'Playfair Display',serif;font-size:clamp(2.35rem,4vw,3.2rem);font-weight:700;line-height:1;color:#fff;letter-spacing:-.02em;margin-bottom:.55rem}
.news-masthead p{font-size:.95rem;color:rgba(255,255,255,.72);line-height:1.5}
.news-date-box{display:grid;gap:.25rem;text-align:left;color:#fff;min-width:220px;padding-top:.25rem}
.news-date-label{font-size:.84rem;font-weight:700;color:rgba(255,255,255,.92)}
.news-date-note{font-size:.78rem;color:rgba(255,255,255,.48)}
.news-process-strip{background:#f7fbfa;border-bottom:1px solid var(--border)}
.news-process-inner{max-width:1320px;margin:0 auto;display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:1.35rem;align-items:center;padding:1.75rem 4rem}
.news-flow-step{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1rem;align-items:center}
.news-flow-mark{width:58px;height:58px;border-radius:50%;background:#e6f1f0;border:1px solid rgba(13,155,142,.18);display:grid;place-items:center;color:var(--teal-d);font-size:.84rem;font-weight:800;position:relative}
.news-flow-mark span{position:absolute;right:-4px;top:-5px;width:22px;height:22px;border-radius:999px;background:var(--teal-d);color:#fff;display:grid;place-items:center;font-size:.68rem;border:2px solid #f7fbfa}
.news-flow-title{font-family:'Playfair Display',serif;font-size:1.17rem;color:var(--ink);font-weight:700;line-height:1.2;margin-bottom:.3rem}
.news-flow-copy{font-size:.82rem;color:var(--ink-mid);line-height:1.55;max-width:260px}
.news-flow-link{margin-top:.45rem;border:none;background:transparent;color:var(--teal-d);font-family:'DM Sans',sans-serif;font-size:.78rem;font-weight:800;cursor:pointer;padding:0}
.news-flow-arrow{height:1px;width:62px;background:rgba(12,18,25,.34);position:relative}
.news-flow-arrow::after{content:'';position:absolute;right:-1px;top:-4px;width:8px;height:8px;border-top:1px solid rgba(12,18,25,.5);border-right:1px solid rgba(12,18,25,.5);transform:rotate(45deg)}
.news-workspace{padding:0 3.4rem 1.35rem;background:#fff}
.news-workspace-inner{max-width:1320px;margin:0 auto}
.news-topic-shell{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;border-bottom:1px solid var(--border);padding:.9rem 0 0}
.news-topic-row{display:flex;gap:0;flex-wrap:wrap;margin:0}
.news-page-v2 .news-topic{border:none;background:transparent;border-radius:0;color:#38475a;padding:.68rem .92rem .9rem;font-size:.82rem;font-weight:600;position:relative}
.news-page-v2 .news-topic:hover,.news-page-v2 .news-topic.active{background:transparent;color:var(--teal-d)}
.news-page-v2 .news-topic:focus-visible{outline:2px solid rgba(13,155,142,.32);outline-offset:-2px;border-radius:4px}
.news-page-v2 .news-topic.active::after{content:'';position:absolute;left:.92rem;right:.92rem;bottom:-1px;height:2px;background:var(--teal)}
.news-page-v2 .news-topic-count{display:none}
.news-borough-select{border:none;background:transparent;color:var(--ink-mid);font-family:'DM Sans',sans-serif;font-size:.82rem;font-weight:600;outline:none;padding:.6rem .2rem;cursor:pointer}
.news-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.65rem;margin:1rem 0 .6rem;max-width:640px}
.news-search{border-radius:8px;padding:.68rem .78rem;font-size:.82rem}
.news-refresh{border-radius:8px;padding:.68rem .8rem;font-size:.68rem;letter-spacing:.07em}
.news-mode-row{border-top:0;padding-top:0;margin-top:.2rem}
.news-mode-tabs{border-radius:6px}
.news-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:1.55rem;padding:1rem 0 0}
.news-main-column{min-width:0}
.news-grid{grid-template-columns:minmax(0,1fr) 310px;gap:1.55rem}
.news-feed-head{margin:.85rem 0 .65rem}
.news-feed-label{font-size:.72rem;color:var(--teal-d)}
.news-lead-card{display:grid;grid-template-columns:minmax(0,.9fr) minmax(360px,.78fr);gap:1.4rem;align-items:center;border:none;border-radius:0;border-bottom:1px solid var(--border);padding:1.25rem 0 1.55rem;background:#fff;box-shadow:none;cursor:pointer}
.news-lead-card:hover{box-shadow:none;border-color:var(--border)}
.news-kicker{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--teal-d);font-weight:800;margin-bottom:.65rem}
.news-lead-title{font-family:'Playfair Display',serif;font-size:clamp(1.75rem,3vw,2.35rem);line-height:1.1;color:var(--ink);font-weight:700;letter-spacing:-.015em;margin-bottom:.75rem}
.news-lead-summary{font-size:.88rem;color:var(--ink-mid);line-height:1.65;max-width:560px;margin-bottom:1rem}
.news-source-actions{display:flex;align-items:center;gap:.85rem;flex-wrap:wrap;margin-top:.2rem}
.news-source-action,.news-official-action{font-size:.84rem;color:var(--teal-d);font-weight:800;text-decoration:none;display:inline-flex;align-items:center;gap:.4rem}
.news-source-action:hover{color:var(--teal)}
.news-official-action{border:1px solid rgba(13,155,142,.24);border-radius:999px;padding:.28rem .62rem;background:rgba(13,155,142,.07)}
.news-official-action:hover{border-color:var(--teal);color:var(--teal)}
.news-stage-panel{display:grid;gap:1rem}
.news-stage-rail{display:grid;grid-template-columns:repeat(5,1fr);gap:0;align-items:start;position:relative;padding-top:.2rem}
.news-stage-rail::before{content:'';position:absolute;left:8%;right:8%;top:1.72rem;height:1px;background:var(--border)}
.news-stage-point{display:grid;justify-items:center;gap:.45rem;position:relative;z-index:1}
.news-stage-label{font-size:.68rem;color:var(--ink-mid);white-space:nowrap}
.news-stage-dot{width:18px;height:18px;border-radius:50%;border:1.5px solid #aeb9c3;background:#fff}
.news-stage-point.done .news-stage-dot{background:var(--teal);border-color:var(--teal);box-shadow:0 0 0 3px #fff}
.news-stage-point.active .news-stage-dot{background:var(--teal-d);border-color:var(--teal-d);box-shadow:0 0 0 3px #fff}
.news-stage-point.done .news-stage-label,.news-stage-point.active .news-stage-label{color:var(--ink)}
.news-fact-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:.65rem 0 0}
.news-fact{display:grid;gap:.18rem;font-size:.78rem;color:var(--ink-mid);line-height:1.45}
.news-fact strong{font-size:.76rem;color:var(--ink)}
.news-story-list-title{font-size:.72rem;margin:.85rem 0 0;color:var(--ink-mute)}
.news-compact-stack{display:grid;gap:0}
.news-row-card{display:grid;grid-template-columns:142px minmax(0,1fr) minmax(260px,.72fr) 116px;gap:1.15rem;align-items:center;border-bottom:1px solid var(--border);padding:.75rem 0;cursor:pointer;transition:background .18s}
.news-row-card:hover{background:#fbfcfc}
.news-thumb{height:78px;border-radius:2px;background:#e8eeee;overflow:hidden;position:relative;display:flex;align-items:flex-end;padding:.55rem;color:#fff;font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;font-weight:800}
.news-thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.news-thumb::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(7,16,26,.1),rgba(7,16,26,.5))}
.news-thumb span{position:relative;z-index:1;text-shadow:0 1px 5px rgba(0,0,0,.35)}
.news-thumb-housing{--thumb-bg:#9f6f5f}
.news-thumb-economy{--thumb-bg:#778a86}
.news-thumb-election{--thumb-bg:#6f7f91}
.news-thumb-bills{--thumb-bg:#445164}
.news-thumb-tech{--thumb-bg:#577c86}
.news-thumb-cannabis{--thumb-bg:#52765e}
.news-thumb-rights{--thumb-bg:#6d6677}
.news-thumb-health{--thumb-bg:#876e78}
.news-thumb-transit{--thumb-bg:#718089}
.news-thumb-climate{--thumb-bg:#647965}
.news-thumb-default{--thumb-bg:#6f7f82}
.news-row-kicker{font-size:.63rem;letter-spacing:.12em;text-transform:uppercase;color:var(--teal-d);font-weight:800;margin-bottom:.3rem}
.news-row-title{font-family:'Playfair Display',serif;font-size:1.04rem;line-height:1.25;color:var(--ink);font-weight:700;margin-bottom:.22rem}
.news-row-summary{font-size:.78rem;color:var(--ink-mid);line-height:1.45;margin-bottom:.28rem}
.news-row-stage .news-stage-rail{padding-top:0}
.news-row-stage .news-stage-rail::before{top:1.28rem;left:9%;right:9%}
.news-row-stage .news-stage-label{font-size:.52rem}
.news-row-stage .news-stage-dot{width:14px;height:14px}
.news-row-actions{display:grid;justify-items:end;gap:.55rem;font-size:.75rem;color:var(--ink-mid)}
.news-location{font-size:.72rem;color:var(--ink-mid);line-height:1.3;text-align:right}
.news-follow{border:1px solid rgba(13,155,142,.45);background:#fff;color:var(--teal-d);border-radius:6px;padding:.42rem .72rem;font-family:'DM Sans',sans-serif;font-size:.72rem;font-weight:800;cursor:pointer}
.news-follow:hover{background:var(--teal-l)}
.news-sidebar-sticky{position:sticky;top:82px}
.news-power-panel{background:#fff;border-left:1px solid var(--border);padding:0 0 0 1.45rem}
.news-power-title{font-family:'Playfair Display',serif;font-size:1.45rem;color:var(--ink);font-weight:700;margin:.35rem 0 .3rem}
.news-power-copy{font-size:.84rem;color:var(--ink-mid);line-height:1.55;margin-bottom:1rem}
.news-power-list{display:grid;gap:1rem}
.news-power-item{display:grid;grid-template-columns:58px minmax(0,1fr);gap:.85rem;align-items:center;padding:.3rem 0}
.news-power-icon{width:58px;height:58px;border-radius:50%;background:#efefed;display:grid;place-items:center;color:var(--ink);font-size:.72rem;font-weight:800}
.news-power-name{font-size:.92rem;font-weight:800;color:var(--ink);margin-bottom:.25rem}
.news-power-body{font-size:.78rem;color:var(--ink-mid);line-height:1.48;margin-bottom:.3rem}
.news-power-link{font-size:.77rem;color:var(--teal-d);font-weight:800;text-decoration:none}
.news-brief-popup{background:#f8fbfa;border:1px solid rgba(13,155,142,.14);padding:1rem;margin-top:1.35rem}
.news-brief-popup-title{font-family:'Playfair Display',serif;font-size:1.1rem;color:var(--teal-d);font-weight:700;margin-bottom:.25rem}
.news-brief-popup-copy{font-size:.78rem;color:var(--ink-mid);line-height:1.45;margin-bottom:.8rem}
.news-brief-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0}
.news-brief-input{min-width:0;border:1px solid var(--border);border-right:0;background:#fff;border-radius:4px 0 0 4px;padding:.68rem .7rem;font-family:'DM Sans',sans-serif;font-size:.78rem;color:var(--ink);outline:none}
.news-brief-button{border:none;background:var(--teal);color:#fff;border-radius:0 4px 4px 0;padding:.68rem .86rem;font-family:'DM Sans',sans-serif;font-size:.76rem;font-weight:800;cursor:pointer;white-space:nowrap}
.news-brief-button:hover{background:var(--teal-d)}
.news-brief-thanks{display:none;font-size:.78rem;color:var(--teal-d);margin-top:.55rem;font-weight:700}
.news-note-line{font-size:.72rem;color:var(--ink-mute);margin-top:1.2rem}
.sidebar-widget{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:1.5rem;margin-bottom:1.25rem}
.sw-title{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute);font-weight:500;margin-bottom:1rem}
.sw-item{padding:.6rem 0;border-bottom:1px solid var(--border);font-size:.85rem;color:var(--ink-mid)}
.sw-item:last-child{border-bottom:none;padding-bottom:0}
.sw-item strong{color:var(--ink);font-weight:500}
/* ACT */
.proposal-steps{display:grid;gap:1.25rem}
.step-card{background:var(--white);border:1px solid var(--border);border-radius:12px;padding:1.75rem;display:grid;grid-template-columns:48px 1fr;gap:1.25rem;align-items:start}
.step-num{width:48px;height:48px;border-radius:50%;background:var(--teal);display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;font-size:1.2rem;font-weight:600;color:var(--white);flex-shrink:0}
.step-title{font-size:1rem;font-weight:500;color:var(--ink);margin-bottom:.4rem}
.step-body{font-size:.875rem;color:var(--ink-mid);line-height:1.65}
.tracker-wrap{background:var(--white);border:1px solid var(--border);border-radius:14px;overflow:hidden}
.tracker-head{background:var(--ink);padding:1.25rem 1.5rem;display:flex;justify-content:space-between;align-items:center}
.tracker-title{font-family:'Playfair Display',serif;font-size:.95rem;font-weight:600;color:var(--white)}
.tracker-status{font-size:.72rem;padding:.25rem .7rem;border-radius:20px;background:rgba(13,155,142,.25);color:var(--teal)}
.tracker-body{padding:1.5rem}
.ts{display:flex;align-items:flex-start;gap:1rem;padding:.6rem 0}
.ts-dot{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:.72rem;font-weight:600;margin-top:.1rem}
.ts-dot.done{background:var(--teal);color:var(--white)}
.ts-dot.active{background:var(--teal-l);border:2px solid var(--teal);color:var(--teal)}
.ts-dot.pending{background:var(--card);border:1px solid var(--border);color:var(--ink-mute)}
.ts-label{font-size:.88rem;font-weight:500;color:var(--ink)}
.ts-label.muted{color:var(--ink-mute)}
.ts-note{font-size:.78rem;color:var(--ink-mute);margin-top:.15rem}
.proposal-control-shell{max-width:1120px;margin:0 auto 1.25rem;background:var(--white);border:1px solid var(--border);border-radius:14px;padding:1.2rem 1.25rem;box-shadow:0 18px 42px rgba(12,18,25,.04)}
.proposal-control-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.25rem;align-items:end;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}
.proposal-control-title{font-family:'Playfair Display',serif;font-size:1.22rem;color:var(--ink);font-weight:600;line-height:1.25;margin-bottom:.35rem}
.proposal-control-copy{font-size:.84rem;color:var(--ink-mid);line-height:1.65;max-width:660px}
.proposal-official-link{border:1px solid var(--border);background:var(--ink);color:#fff;border-radius:8px;padding:.75rem 1rem;font-family:'DM Sans',sans-serif;font-size:.78rem;font-weight:800;text-decoration:none;white-space:nowrap;transition:background .2s,color .2s,border-color .2s}
.proposal-official-link:hover{background:var(--teal-d);border-color:var(--teal-d);color:#fff}
.proposal-toolbar{display:grid;grid-template-columns:1fr minmax(180px,240px);gap:.75rem;margin-bottom:1rem}
.quick-filters{display:flex;gap:.55rem;flex-wrap:wrap;margin-bottom:1rem}
.quick-filter{border:1px solid var(--border);background:var(--white);color:var(--ink-mid);font-family:'DM Sans',sans-serif;font-size:.75rem;font-weight:600;border-radius:999px;padding:.45rem .8rem;cursor:pointer;transition:all .2s}
.quick-filter:hover,.quick-filter.active{border-color:var(--teal);background:var(--teal-l);color:var(--teal-d)}
.proposal-search{width:100%;border:1.5px solid var(--border);border-radius:8px;padding:.85rem 1rem;font-family:'DM Sans',sans-serif;font-size:.9rem;color:var(--ink);outline:none;background:var(--white);transition:border-color .2s,box-shadow .2s}
.proposal-search:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(13,155,142,.1)}
.proposal-select{border:1.5px solid var(--border);border-radius:8px;padding:.85rem 1rem;font-family:'DM Sans',sans-serif;font-size:.85rem;color:var(--ink-mid);background:var(--white);outline:none}
.proposal-grid{display:grid;gap:1rem;max-width:1120px;margin:0 auto}
.proposal-card{background:var(--white);border:1px solid var(--border);border-radius:14px;padding:0;overflow:hidden;transition:border-color .2s,box-shadow .2s}
.proposal-card:hover{border-color:rgba(13,155,142,.45);box-shadow:0 14px 34px rgba(12,18,25,.06)}
.proposal-card-core{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:0}
.proposal-main{padding:1.25rem 1.35rem}
.proposal-aside{border-left:1px solid var(--border);background:var(--card);padding:1.1rem}
.proposal-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.65rem}
.proposal-id{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--teal);font-weight:800}
.proposal-status{font-size:.68rem;padding:.24rem .62rem;border-radius:20px;background:var(--teal-l);color:var(--teal-d);white-space:nowrap;font-weight:800}
.proposal-title{font-size:1rem;font-weight:700;color:var(--ink);line-height:1.35;margin-bottom:.5rem}
.proposal-body{font-size:.84rem;color:var(--ink-mid);line-height:1.68;margin-bottom:.85rem}
.proposal-meta{display:flex;flex-wrap:wrap;gap:.45rem}
.proposal-code-row{display:flex;align-items:flex-start;gap:.7rem;margin:.85rem 0 1rem;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:.75rem}
.proposal-code{font-family:'DM Sans',sans-serif;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;background:var(--ink);color:#fff;border-radius:6px;padding:.36rem .58rem;white-space:nowrap}
.proposal-lookup{font-size:.76rem;color:var(--ink-mute);line-height:1.55}
.proposal-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin:.85rem 0 0}
.proposal-info{border:1px solid var(--border);background:var(--card);border-radius:9px;padding:.75rem}
.proposal-info-label{font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute);font-weight:800;margin-bottom:.25rem}
.proposal-info-value{font-size:.78rem;color:var(--ink);line-height:1.45;font-weight:600}
.proposal-section-label{font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute);font-weight:800;margin-bottom:.55rem}
.proposal-record-panel{background:var(--white);border:1px solid var(--border);border-radius:11px;padding:.9rem;margin-bottom:.85rem}
.proposal-record-title{font-size:.86rem;color:var(--ink);font-weight:800;margin-bottom:.35rem;line-height:1.35}
.proposal-record-body{font-size:.75rem;color:var(--ink-mute);line-height:1.55;margin-bottom:.75rem}
.proposal-action-panel{background:var(--white);border:1px solid var(--border);border-radius:11px;padding:.9rem}
.proposal-evidence-links{display:grid;gap:.45rem}
.proposal-hint{font-size:.72rem;color:var(--ink-mute);line-height:1.55;margin-top:.65rem}
.proposal-actions{display:grid;gap:.5rem}
.proposal-action{border:1px solid var(--border);background:#fff;color:var(--ink-mid);border-radius:8px;padding:.55rem .7rem;font-family:'DM Sans',sans-serif;font-size:.74rem;font-weight:700;text-decoration:none;transition:all .2s;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;text-align:center}
.proposal-action.primary{background:var(--teal);border-color:var(--teal);color:#fff}
.proposal-action.following{background:var(--ink);border-color:var(--ink);color:#fff}
.proposal-action:hover{border-color:var(--teal);color:var(--teal);background:var(--teal-l)}
.proposal-action.primary:hover{background:var(--teal-d);border-color:var(--teal-d);color:#fff}
.proposal-action.following:hover{background:var(--ink-mid);border-color:var(--ink-mid);color:#fff}
.proposal-source{font-size:.76rem;color:var(--ink-mute);line-height:1.5;margin-top:.55rem}
.proposal-source strong{color:var(--ink-mid)}
.proposal-live{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:.2rem 0 0;color:var(--ink-mute);font-size:.78rem;border-top:1px solid var(--border);padding-top:.85rem}
.proposal-live-dot{width:8px;height:8px;border-radius:50%;background:var(--teal);display:inline-block;margin-right:.4rem}
.proposal-live-dot.loading{animation:dotPulse 1.2s ease-in-out infinite}
@keyframes dotPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.7)}}
.proposal-stage-bar{display:flex;gap:3px;align-items:center;margin:.75rem 0 .6rem}
.proposal-stage-pip{width:18px;height:4px;border-radius:99px;background:var(--border);flex-shrink:0;transition:background .2s}
.proposal-stage-pip.done{background:var(--teal)}
.proposal-stage-pip.active{background:var(--teal);opacity:.55}
.proposal-stage-label{font-size:.68rem;color:var(--ink-mute);margin-left:.5rem;font-weight:600}
.proposal-skeleton{background:var(--white);border:1px solid var(--border);border-radius:14px;padding:1.4rem;overflow:hidden;animation:skelShimmer 1.4s linear infinite;background:linear-gradient(90deg,#f3f3f0 25%,#e8e8e4 50%,#f3f3f0 75%);background-size:200% 100%}
@keyframes skelShimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
.proposal-skeleton-line{height:12px;border-radius:6px;background:rgba(13,13,13,.06);margin-bottom:.65rem}
.proposal-skeleton-line.wide{width:70%}
.proposal-skeleton-line.full{width:90%}
.proposal-skeleton-line.short{width:40%}
.proposal-code-copy{cursor:pointer;user-select:none;transition:opacity .15s}
.proposal-code-copy:hover{opacity:.75}
.proposal-code-copy.copied{background:var(--teal)!important}
.proposal-data-note{font-size:.68rem;color:var(--ink-mute);text-align:right;margin-top:.5rem}
.proposal-following{display:none;max-width:1120px;margin:0 auto 1rem;border:1px solid rgba(13,155,142,.22);background:var(--teal-l);border-radius:12px;padding:1rem 1.15rem;gap:.65rem}
.proposal-following.show{display:grid}
.proposal-following-head{display:flex;justify-content:space-between;align-items:center;gap:1rem}
.proposal-following-title{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--teal-d);font-weight:800}
.proposal-following-clear{border:none;background:transparent;color:var(--teal-d);font-family:'DM Sans',sans-serif;font-size:.72rem;font-weight:800;cursor:pointer}
.proposal-following-list{display:flex;flex-wrap:wrap;gap:.45rem}
.proposal-following-pill{border:1px solid rgba(13,155,142,.22);background:#fff;color:var(--teal-d);border-radius:999px;padding:.36rem .62rem;font-size:.72rem;font-weight:700}
.proposal-empty{display:none;max-width:1120px;margin:0 auto;background:var(--card);border:1px dashed var(--border);border-radius:10px;padding:1rem;text-align:center;font-size:.85rem;color:var(--ink-mute)}
.proposal-empty.show{display:block}

/* ── COMMAND CENTER ──────────────────────────────────────── */
.cmd-shell{max-width:1160px;margin:0 auto}
.cmd-live-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem;padding-bottom:.9rem;border-bottom:1px solid var(--border)}
.cmd-live-bar-left{display:flex;align-items:center;gap:.45rem;font-size:.78rem;color:var(--ink-mute)}
.cmd-legistar-link{font-size:.78rem;color:var(--teal);text-decoration:none;font-weight:700}
.cmd-legistar-link:hover{opacity:.72}
.cmd-layout{display:grid;grid-template-columns:214px 1fr;gap:1.75rem;align-items:start}
.cmd-sidebar{position:sticky;top:5.5rem;background:var(--white);border:1px solid var(--border);border-radius:14px;padding:0;display:flex;flex-direction:column;overflow:hidden}
.cmd-sidebar-search-wrap{padding:.85rem .9rem .8rem;border-bottom:1px solid var(--border)}
.cmd-sidebar-search{display:flex;align-items:center;gap:.5rem;border:1.5px solid var(--border);border-radius:9px;padding:.5rem .65rem;background:var(--card);transition:border-color .2s}
.cmd-sidebar-search:focus-within{border-color:var(--teal)}
.cmd-sidebar-search svg{flex-shrink:0;color:var(--ink-mute)}
.cmd-sidebar-search input{border:none;background:transparent;font-family:'DM Sans',sans-serif;font-size:.82rem;color:var(--ink);outline:none;width:100%}
.cmd-sidebar-search input::placeholder{color:var(--ink-mute)}
.cmd-following-sidebar{margin:.6rem .75rem .2rem;background:rgba(13,155,142,.06);border:1px solid rgba(13,155,142,.2);border-radius:9px;padding:.65rem .75rem;display:none}
.cmd-following-sidebar.show{display:block}
.cmd-following-sidebar-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:.35rem}
.cmd-following-sidebar-title{font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;color:var(--teal-d);font-weight:800}
.cmd-following-sidebar-clear{background:none;border:none;color:var(--teal-d);font-size:.64rem;font-weight:700;cursor:pointer;font-family:'DM Sans',sans-serif;padding:0}
.cmd-following-sidebar-item{display:block;font-size:.71rem;color:var(--teal-d);padding:.2rem 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-decoration:none;border-bottom:.5px solid rgba(13,155,142,.12)}
.cmd-following-sidebar-item:last-child{border-bottom:none}
.cmd-sidebar-section{font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute);font-weight:800;padding:.75rem .9rem .2rem}
.cmd-sf{padding:.4rem .9rem;font-size:.8rem;color:var(--ink-mid);cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:.4rem;transition:background .12s;border:none;background:transparent;width:100%;text-align:left;font-family:'DM Sans',sans-serif;line-height:1.35}
.cmd-sf:hover{background:var(--card)}
.cmd-sf.active{color:var(--teal-d);font-weight:700;background:var(--teal-l)}
.cmd-sf-count{font-size:.66rem;font-weight:400;color:var(--ink-mute);flex-shrink:0}
.cmd-sf.active .cmd-sf-count{color:var(--teal-d)}
.cmd-sf-stage-dot{width:6px;height:6px;border-radius:50%;background:var(--teal);display:inline-block;margin-right:.25rem;flex-shrink:0}
.cmd-sidebar-divider{height:.5px;background:var(--border);margin:.6rem 0}
.cmd-sidebar-ext{display:flex;align-items:center;gap:.4rem;font-size:.76rem;color:var(--teal);text-decoration:none;padding:.45rem .9rem .75rem;font-weight:700;transition:opacity .15s}
.cmd-sidebar-ext:hover{opacity:.72}
/* panel */
.cmd-panel{display:flex;flex-direction:column;gap:.6rem}
.cmd-panel-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-bottom:.8rem;border-bottom:1px solid var(--border)}
.cmd-panel-count{font-size:.82rem;color:var(--ink-mute);font-weight:600}
.cmd-panel-sort{display:flex;align-items:center;gap:.35rem;font-size:.78rem;color:var(--ink-mute)}
.cmd-panel-sort select{border:none;background:transparent;font-family:'DM Sans',sans-serif;font-size:.78rem;color:var(--ink-mid);cursor:pointer;outline:none}
.cmd-cards{display:flex;flex-direction:column;gap:.65rem}
/* compact command card */
.cmd-card{background:var(--white);border:1px solid var(--border);border-radius:12px;padding:1rem 1.1rem;display:grid;grid-template-columns:1fr 148px;gap:1rem;transition:border-color .18s,box-shadow .18s}
.cmd-card:hover{border-color:rgba(13,155,142,.4);box-shadow:0 6px 24px rgba(12,18,25,.06)}
.cmd-card.is-following{border-color:rgba(13,155,142,.3);background:rgba(13,155,142,.02)}
.cmd-card-id-row{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;margin-bottom:.18rem}
.cmd-card-id{font-size:.63rem;letter-spacing:.12em;text-transform:uppercase;color:var(--teal);font-weight:800}
.cmd-card-id-link{text-decoration:none;border-bottom:1px solid rgba(13,155,142,.28);transition:color .18s,border-color .18s}
.cmd-card-id-link:hover{color:var(--teal-d);border-color:var(--teal-d)}
.cmd-card-id-note{font-family:'DM Sans',sans-serif;font-size:.58rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);font-weight:800}
.cmd-card-title{font-size:.9rem;font-weight:700;color:var(--ink);line-height:1.35;margin-bottom:.4rem}
.cmd-card-body{font-size:.78rem;color:var(--ink-mid);line-height:1.65;margin-bottom:.5rem}
.cmd-card-meta{font-size:.7rem;color:var(--ink-mute);line-height:1.5}
.cmd-card-public{font-size:.7rem;color:var(--ink-mute);line-height:1.45;font-style:italic;margin-top:.3rem}
.cmd-card-actions{display:flex;flex-direction:column;gap:.38rem;align-items:stretch;padding-top:.1rem}
.cmd-stage-badge{font-size:.62rem;padding:.22rem .5rem;border-radius:20px;background:var(--teal-l);color:var(--teal-d);white-space:normal;font-weight:800;text-align:center;line-height:1.4}
.cmd-stage-badge.hearing{background:rgba(13,155,142,.2);color:var(--teal-d)}
.cmd-stage-badge.vote{background:rgba(13,155,142,.3);color:var(--teal-d)}
.cmd-open-link{display:block;background:var(--teal);color:#fff;border-radius:8px;padding:.42rem .6rem;font-family:'DM Sans',sans-serif;font-size:.72rem;font-weight:700;text-decoration:none;text-align:center;transition:background .18s}
.cmd-open-link:hover{background:var(--teal-d)}
.cmd-follow-btn{border:1px solid var(--border);background:transparent;color:var(--ink-mid);border-radius:8px;padding:.4rem .6rem;font-family:'DM Sans',sans-serif;font-size:.72rem;font-weight:700;cursor:pointer;transition:all .18s;text-align:center;width:100%}
.cmd-follow-btn:hover{border-color:var(--teal);color:var(--teal);background:var(--teal-l)}
.cmd-follow-btn.following{background:var(--ink);border-color:var(--ink);color:#fff}
.cmd-follow-btn.following:hover{background:var(--ink-mid);border-color:var(--ink-mid)}
.cmd-copy-btn{border:1px solid var(--border);background:var(--card);color:var(--ink-mute);border-radius:8px;padding:.32rem .6rem;font-family:'DM Sans',sans-serif;font-size:.64rem;font-weight:800;cursor:pointer;letter-spacing:.06em;text-transform:uppercase;transition:all .18s;text-align:center;width:100%}
.cmd-copy-btn:hover{border-color:var(--ink-mid);color:var(--ink-mid)}
.cmd-copy-btn.copied{background:var(--teal);border-color:var(--teal);color:#fff}
/* ── VOTE RECORD ──────────────────────────────────────── */
.vote-record{display:none;border-top:1px solid var(--border);margin-top:.75rem;padding-top:.75rem;grid-column:1/-1}
.vote-record.open{display:block}
.vote-toggle-btn{border:1px solid rgba(29,158,117,.3);background:transparent;color:var(--teal);border-radius:14px;padding:.3rem .75rem;font-family:'DM Sans',sans-serif;font-size:.7rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:.35rem;transition:all .18s;margin-top:.5rem}
.vote-toggle-btn:hover{background:var(--teal-l)}
.vote-toggle-btn svg{transition:transform .2s}
.vote-toggle-btn.open svg{transform:rotate(180deg)}
.vs-strip{display:flex;border:1px solid var(--border);border-radius:8px;overflow:hidden;margin-bottom:.55rem}
.vs-cell{flex:1;padding:.45rem .6rem;text-align:center;border-right:1px solid var(--border)}
.vs-cell:last-child{border-right:none}
.vs-num{font-size:1rem;font-weight:700;line-height:1}
.vs-num.aff{color:#0F6E56}
.vs-num.neg{color:#A32D2D}
.vs-num.abst{color:#854F0B}
.vs-num.absent{color:var(--ink-mute)}
.vs-lbl{font-size:.58rem;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-mute);margin-top:.18rem}
.vote-vis{height:6px;display:flex;border-radius:4px;overflow:hidden;margin-bottom:.55rem}
.vv-aff{background:#1D9E75}
.vv-neg{background:#E24B4A}
.vv-abst{background:#EF9F27;opacity:.85}
.vv-absent{background:var(--border)}

/* Percentage width utilities for generated vote bars */
.ca-width-0{width:0%}
.ca-width-1{width:1%}
.ca-width-2{width:2%}
.ca-width-3{width:3%}
.ca-width-4{width:4%}
.ca-width-5{width:5%}
.ca-width-6{width:6%}
.ca-width-7{width:7%}
.ca-width-8{width:8%}
.ca-width-9{width:9%}
.ca-width-10{width:10%}
.ca-width-11{width:11%}
.ca-width-12{width:12%}
.ca-width-13{width:13%}
.ca-width-14{width:14%}
.ca-width-15{width:15%}
.ca-width-16{width:16%}
.ca-width-17{width:17%}
.ca-width-18{width:18%}
.ca-width-19{width:19%}
.ca-width-20{width:20%}
.ca-width-21{width:21%}
.ca-width-22{width:22%}
.ca-width-23{width:23%}
.ca-width-24{width:24%}
.ca-width-25{width:25%}
.ca-width-26{width:26%}
.ca-width-27{width:27%}
.ca-width-28{width:28%}
.ca-width-29{width:29%}
.ca-width-30{width:30%}
.ca-width-31{width:31%}
.ca-width-32{width:32%}
.ca-width-33{width:33%}
.ca-width-34{width:34%}
.ca-width-35{width:35%}
.ca-width-36{width:36%}
.ca-width-37{width:37%}
.ca-width-38{width:38%}
.ca-width-39{width:39%}
.ca-width-40{width:40%}
.ca-width-41{width:41%}
.ca-width-42{width:42%}
.ca-width-43{width:43%}
.ca-width-44{width:44%}
.ca-width-45{width:45%}
.ca-width-46{width:46%}
.ca-width-47{width:47%}
.ca-width-48{width:48%}
.ca-width-49{width:49%}
.ca-width-50{width:50%}
.ca-width-51{width:51%}
.ca-width-52{width:52%}
.ca-width-53{width:53%}
.ca-width-54{width:54%}
.ca-width-55{width:55%}
.ca-width-56{width:56%}
.ca-width-57{width:57%}
.ca-width-58{width:58%}
.ca-width-59{width:59%}
.ca-width-60{width:60%}
.ca-width-61{width:61%}
.ca-width-62{width:62%}
.ca-width-63{width:63%}
.ca-width-64{width:64%}
.ca-width-65{width:65%}
.ca-width-66{width:66%}
.ca-width-67{width:67%}
.ca-width-68{width:68%}
.ca-width-69{width:69%}
.ca-width-70{width:70%}
.ca-width-71{width:71%}
.ca-width-72{width:72%}
.ca-width-73{width:73%}
.ca-width-74{width:74%}
.ca-width-75{width:75%}
.ca-width-76{width:76%}
.ca-width-77{width:77%}
.ca-width-78{width:78%}
.ca-width-79{width:79%}
.ca-width-80{width:80%}
.ca-width-81{width:81%}
.ca-width-82{width:82%}
.ca-width-83{width:83%}
.ca-width-84{width:84%}
.ca-width-85{width:85%}
.ca-width-86{width:86%}
.ca-width-87{width:87%}
.ca-width-88{width:88%}
.ca-width-89{width:89%}
.ca-width-90{width:90%}
.ca-width-91{width:91%}
.ca-width-92{width:92%}
.ca-width-93{width:93%}
.ca-width-94{width:94%}
.ca-width-95{width:95%}
.ca-width-96{width:96%}
.ca-width-97{width:97%}
.ca-width-98{width:98%}
.ca-width-99{width:99%}
.ca-width-100{width:100%}
/* End percentage width utilities */
.vote-tbl{width:100%;border-collapse:collapse;font-size:.76rem}
.vote-tbl th{color:var(--ink-mute);font-size:.6rem;letter-spacing:.08em;text-transform:uppercase;padding:.35rem .5rem;border-bottom:1px solid var(--border);text-align:left;font-weight:500}
.vote-tbl td{padding:.35rem .5rem;border-bottom:1px solid var(--border);color:var(--ink)}
.vote-tbl tr:last-child td{border-bottom:none}
.vote-tbl tr:hover td{background:var(--card)}
.vbadge{font-size:.67rem;font-weight:600;padding:2px 7px;border-radius:10px;display:inline-block}
.vb-aff{background:rgba(29,158,117,.1);color:#0F6E56}
.vb-neg{background:rgba(226,75,74,.1);color:#A32D2D}
.vb-abst{background:rgba(239,159,39,.1);color:#854F0B}
.vb-absent{background:var(--card);color:var(--ink-mute)}
.vb-med{background:rgba(24,95,165,.1);color:#0C447C}
.vote-msg{font-size:.76rem;color:var(--ink-mute);padding:.4rem 0;font-style:italic}
@media(max-width:800px){.cmd-layout{grid-template-columns:1fr}.cmd-sidebar{position:static}.cmd-card{grid-template-columns:1fr}.cmd-card-actions{flex-direction:row;flex-wrap:wrap;gap:.35rem;align-items:flex-start}}
/* ABOUT TOOL MAP */
.about-tools{max-width:860px;margin:0 auto}
.tool-map{display:flex;flex-direction:column;gap:1.25rem}
.tool-tabs{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center}
.tool-tab{border:.5px solid var(--border);background:var(--white);border-radius:20px;padding:.5rem 1.1rem;text-align:left;font-family:'DM Sans',sans-serif;cursor:pointer;transition:all .18s;display:flex;flex-direction:column;gap:2px;align-items:flex-start}
.tool-tab:hover{border-color:var(--teal);background:var(--teal-l)}
.tool-tab.active{border-color:#0C1219;background:#0C1219}
.tool-tab-k{font-size:.5rem;letter-spacing:.12em;text-transform:uppercase;color:var(--teal);font-weight:700}
.tool-tab.active .tool-tab-k{color:#5DCAA5}
.tool-tab-t{font-size:.76rem;font-weight:600;color:var(--ink);line-height:1.3}
.tool-tab.active .tool-tab-t{color:#fff}
.tool-stage{background:var(--white);border:1px solid var(--border);border-radius:14px;padding:2.5rem 2.75rem;display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:center;box-shadow:0 8px 40px rgba(12,18,25,.06)}
.tool-stage-k{font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--teal);font-weight:700;margin-bottom:.55rem}
.tool-stage-title{font-family:'Cormorant Garamond',serif;font-size:clamp(1.6rem,2.8vw,2.1rem);font-weight:700;line-height:1.1;color:var(--ink);margin-bottom:.85rem}
.tool-stage-copy{font-size:.88rem;color:var(--ink-mid);line-height:1.8;margin-bottom:1.35rem;font-weight:300}
.tool-stage-list{display:grid;gap:.5rem;margin-bottom:1.5rem}
.tool-stage-list p{font-size:.8rem;color:var(--ink-mid);line-height:1.6;padding:.3rem 0 .3rem 1.1rem;position:relative;border-bottom:.5px solid var(--border)}
.tool-stage-list p:before{content:"";position:absolute;left:0;top:.65rem;width:4px;height:4px;border-radius:50%;background:var(--teal)}
.tool-stage-actions{display:flex;gap:.65rem;flex-wrap:wrap}
.tool-stage-link{border:none;background:var(--teal);border-radius:8px;padding:.6rem 1.35rem;font-size:.78rem;font-weight:700;color:#fff;text-decoration:none;cursor:pointer;transition:background .2s;font-family:'DM Sans',sans-serif}
.tool-stage-link:hover{background:var(--teal-d);color:#fff}
.tool-orbit{display:flex;align-items:center;justify-content:center}
.tool-orbit svg{width:290px;height:290px}
.radar-svg{overflow:visible;filter:drop-shadow(0 4px 24px rgba(13,155,142,.08))}
/* CONNECT */
.mentor-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
.mentor-card{background:var(--white);border:1px solid var(--border);border-radius:12px;padding:1.5rem;transition:border-color .2s,box-shadow .2s}
.mentor-card:hover{border-color:var(--teal);box-shadow:0 4px 20px rgba(13,155,142,.08)}
.mentor-av{width:48px;height:48px;border-radius:50%;background:var(--teal-l);display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;font-size:1.1rem;font-weight:600;color:var(--teal);margin-bottom:.85rem}
.mentor-name{font-size:.95rem;font-weight:500;color:var(--ink);margin-bottom:.2rem}
.mentor-role{font-size:.78rem;color:var(--teal);margin-bottom:.6rem}
.mentor-bio{font-size:.82rem;color:var(--ink-mid);line-height:1.6;margin-bottom:.9rem}
.mentor-tags{display:flex;gap:.4rem;flex-wrap:wrap}
.mtag{font-size:.65rem;padding:.2rem .55rem;border-radius:20px;background:var(--card);border:1px solid var(--border);color:var(--ink-mid)}
/* ABOUT */
.mission-text{font-size:1rem;line-height:1.9;color:var(--ink-mid)}
.mission-text p{margin-bottom:1.25rem}
.mission-text p:last-child{margin-bottom:0}
/* REGISTER */
/* ── REGISTER PAGE — ENHANCED DARK GLASS ── */
.register-wrap{min-height:calc(100vh - 64px);display:grid;grid-template-columns:1fr 1fr;overflow:hidden;position:relative;background:#07101a}
.reg-left{padding:5rem 4rem;display:flex;flex-direction:column;justify-content:center;position:relative;z-index:1;border-right:1px solid rgba(255,255,255,.06)}
.reg-left::before{display:none}
.reg-right{padding:3.5rem 3rem;display:flex;flex-direction:column;justify-content:center;position:relative;z-index:1;overflow-y:auto}
/* Orb glows */
.reg-orb{position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none;z-index:0}
.reg-orb-1{width:440px;height:440px;background:radial-gradient(circle,rgba(13,155,142,.2) 0%,transparent 70%);top:-150px;left:-130px;animation:orbFloat1 9s ease-in-out infinite}
.reg-orb-2{width:320px;height:320px;background:radial-gradient(circle,rgba(13,155,142,.09) 0%,transparent 70%);bottom:-90px;right:28%;animation:orbFloat2 12s ease-in-out infinite}
@keyframes orbFloat1{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(35px,25px) scale(1.08)}}
@keyframes orbFloat2{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-25px,-18px) scale(.92)}}
/* Dot grid */
.reg-dots{position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,255,255,.052) 1px,transparent 1px);background-size:26px 26px;z-index:0;pointer-events:none}
/* Animated gradient headline */
.reg-headline-em{font-style:italic;background:linear-gradient(135deg,#0D9B8E 0%,#5DCAA5 50%,#0D9B8E 100%);background-size:200% 200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmerText 4s ease-in-out infinite}
@keyframes shimmerText{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
/* Glass registration card */
.reg-glass-card{background:rgba(255,255,255,.038);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.09);border-radius:16px;padding:1.75rem 1.75rem 1.5rem;margin-bottom:1rem}
.reg-card-label{font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#0D9B8E;margin:0 0 .3rem}
.reg-card-title{font-family:'Cormorant Garamond',serif;font-size:1.65rem;font-weight:700;color:#fff;margin:0 0 .2rem;line-height:1.1;letter-spacing:.01em}
.reg-card-sub{font-size:.8rem;color:rgba(255,255,255,.32);margin:0 0 1.4rem}
/* Glass box form fields */
.form-group{margin-bottom:.9rem}
.form-label{font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.28);margin-bottom:.45rem;display:block}
.form-input{width:100%;box-sizing:border-box;padding:.78rem 1rem;border:.5px solid rgba(255,255,255,.1);border-radius:9px;font-size:.9rem;font-family:'DM Sans',sans-serif;color:rgba(255,255,255,.82);background:rgba(255,255,255,.04);transition:border-color .2s,background .2s,box-shadow .2s;outline:none}
.form-input::placeholder{color:rgba(255,255,255,.18)}
.form-input:focus{border-color:rgba(13,155,142,.65);background:rgba(13,155,142,.04);box-shadow:0 0 0 3px rgba(13,155,142,.1)}
.form-select{width:100%;box-sizing:border-box;padding:.78rem 1rem;border:.5px solid rgba(255,255,255,.1);border-radius:9px;font-size:.9rem;font-family:'DM Sans',sans-serif;color:rgba(255,255,255,.3);background:rgba(255,255,255,.04);outline:none;cursor:pointer;appearance:none;transition:border-color .2s,box-shadow .2s}
.form-select:focus{border-color:rgba(13,155,142,.65);box-shadow:0 0 0 3px rgba(13,155,142,.1)}
.form-select option{background:#0d1b26;color:rgba(255,255,255,.8)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}
/* Shimmer CTA — subtle sheen, text always visible */
.form-submit{width:100%;padding:.88rem;border-radius:9px;background:var(--teal);color:#fff;font-size:.95rem;font-weight:600;font-family:'DM Sans',sans-serif;border:none;cursor:pointer;margin-top:.85rem;position:relative;overflow:hidden;display:block;transition:transform .15s,background .2s}
.form-submit:hover{background:var(--teal-d);transform:translateY(-1px)}
.form-submit:active{background:#086b61;transform:translateY(0);color:#fff}
.form-submit .btn-text{position:relative;z-index:1;pointer-events:none}
.form-submit::after{content:'';position:absolute;top:-60%;left:-80%;width:45%;height:220%;background:linear-gradient(105deg,transparent 25%,rgba(255,255,255,.22) 50%,transparent 75%);animation:shimBtn 2.2s ease-in-out infinite;z-index:0}
@keyframes shimBtn{0%{left:-80%}100%{left:130%}}
/* Animated gradient border partner card */
.reg-partner-border{position:relative;border-radius:14px;padding:1.5px;background:linear-gradient(135deg,rgba(13,155,142,.55) 0%,rgba(255,255,255,.05) 45%,rgba(13,155,142,.28) 100%);background-size:200% 200%;animation:borderShift 6s linear infinite;margin-bottom:.85rem}
@keyframes borderShift{0%,100%{background-position:0% 0%}50%{background-position:100% 100%}}
.reg-partner-inner{background:#0c1a24;border-radius:13px;padding:1.15rem 1.25rem}
/* Pulse dot */
.reg-pulse{width:8px;height:8px;border-radius:50%;background:#0D9B8E;flex-shrink:0;margin-top:3px;animation:pulseDot 2s ease-in-out infinite}
@keyframes pulseDot{0%,100%{box-shadow:0 0 0 0 rgba(13,155,142,.55)}50%{box-shadow:0 0 0 6px rgba(13,155,142,0)}}
/* Partner form fields */
.partner-field{width:100%;box-sizing:border-box;padding:.62rem .9rem;border:.5px solid rgba(255,255,255,.08);border-radius:8px;font-size:.84rem;font-family:'DM Sans',sans-serif;color:rgba(255,255,255,.7);background:rgba(255,255,255,.04);outline:none;margin-bottom:.65rem;transition:border-color .2s,box-shadow .2s;display:block}
.partner-field:focus{border-color:rgba(13,155,142,.5);box-shadow:0 0 0 3px rgba(13,155,142,.07)}
.partner-field::placeholder{color:rgba(255,255,255,.17)}
.partner-submit{width:100%;padding:.72rem;border-radius:8px;background:#0D9B8E;border:none;color:#fff;font-size:.88rem;font-weight:600;font-family:'DM Sans',sans-serif;cursor:pointer;margin-top:.3rem;position:relative;overflow:hidden;transition:background .2s,transform .15s;display:block}
.partner-submit:hover{background:var(--teal-d);transform:translateY(-1px)}
.partner-submit:active{background:#086b61;transform:translateY(0);color:#fff}
.partner-submit .btn-text{position:relative;z-index:1;pointer-events:none}
.partner-submit::after{content:'';position:absolute;top:-60%;left:-80%;width:45%;height:220%;background:linear-gradient(105deg,transparent 25%,rgba(255,255,255,.22) 50%,transparent 75%);animation:shimBtn 2.2s ease-in-out infinite 1.1s;z-index:0}
.form-divider{display:flex;align-items:center;gap:1rem;margin:2rem 0 1.25rem;color:rgba(255,255,255,.2);font-size:.82rem}
.form-divider::before,.form-divider::after{content:'';flex:1;height:1px;background:rgba(255,255,255,.08)}
/* Left panel elements */
.reg-benefits{margin-top:1.5rem;display:grid;gap:.75rem}
.reg-benefit{display:flex;align-items:flex-start;gap:.85rem}
.rb-icon{width:28px;height:28px;border-radius:7px;background:rgba(13,155,142,.12);border:1px solid rgba(13,155,142,.22);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.rb-icon svg{width:13px;height:13px;stroke:var(--teal);fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.rb-text{font-size:.9rem;color:rgba(255,255,255,.58);line-height:1.5;padding-top:.2rem}
.reg-quote{font-family:'Playfair Display',serif;font-size:1.05rem;font-style:italic;color:rgba(255,255,255,.78);line-height:1.7;margin-top:2rem;padding-top:1.75rem;border-top:1px solid rgba(255,255,255,.1)}
.reg-attrib{font-size:.8rem;color:rgba(255,255,255,.5);margin-top:.65rem;font-weight:500;letter-spacing:.02em}
.prereg-banner{background:var(--teal-l);border-bottom:1px solid rgba(13,155,142,.25);padding:.65rem 4rem;display:flex;align-items:center;justify-content:center;gap:1rem}
.prereg-banner p{font-size:.85rem;color:var(--teal-d);font-weight:500}
.prereg-tag{font-size:.72rem;color:var(--teal);padding:.2rem .75rem;border-radius:20px;background:var(--white);border:1px solid var(--teal);cursor:pointer}
@keyframes fu{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes fi{from{opacity:0}to{opacity:1}}

/* TWO AND THREE COL LAYOUT CLASSES */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start}
.three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}

/* ── REP FINDER ────────────────────────────────────────────── */
.rep-finder-wrap{background:var(--white);border:1px solid var(--border);border-radius:14px;overflow:hidden;margin-bottom:2.5rem}
.rf-head{background:var(--ink);padding:1.1rem 1.5rem;display:flex;align-items:center;gap:.75rem}
.rf-dot{width:8px;height:8px;border-radius:50%;background:var(--teal)}
.rf-lbl{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.5);font-weight:500}
.rf-body{padding:1.5rem}
.rf-search{display:flex;border:1.5px solid var(--border);border-radius:8px;overflow:hidden;transition:border-color .2s,box-shadow .2s}
.rf-search:focus-within{border-color:var(--teal);box-shadow:0 0 0 3px rgba(13,155,142,.1)}
.rf-input{flex:1;border:none;outline:none;padding:.75rem 1rem;font-family:'DM Sans',sans-serif;font-size:.9rem;color:var(--ink);background:transparent}
.rf-input::placeholder{color:var(--ink-mute)}
.rf-btn{border:none;cursor:pointer;background:var(--teal);color:var(--white);font-family:'DM Sans',sans-serif;font-size:.82rem;font-weight:600;padding:.75rem 1.25rem;transition:background .2s;white-space:nowrap}
.rf-btn:hover{background:var(--teal-d)}
.rf-btn:disabled{background:var(--ink-mute);cursor:not-allowed}
.rf-addr{display:none;align-items:center;gap:.6rem;padding:.65rem .9rem;background:var(--teal-l);border-radius:6px;margin:.85rem 0 0;font-size:.8rem;color:var(--teal-d)}
.rf-addr.show{display:flex}
.rf-error{display:none;padding:.65rem .9rem;background:#FEF2F2;border-radius:6px;margin:.85rem 0 0;font-size:.8rem;color:#991B1B}
.rf-error.show{display:block}
.rf-loading{display:none;align-items:center;gap:.75rem;padding:1.5rem 0;color:var(--ink-mute);font-size:.82rem}
.rf-loading.show{display:flex}
.rf-spin{width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--teal);border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}
@keyframes spin{to{transform:rotate(360deg)}}
.rf-results{display:none}
.rf-results.show{display:block}
.rf-level-lbl{font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute);font-weight:500;padding:.75rem 0 .5rem;border-bottom:1px solid var(--border);margin:.75rem 0 .75rem}
.rf-level-lbl:first-child{margin-top:.85rem}
.rep-card{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:1rem 1.25rem;margin-bottom:.6rem;display:grid;grid-template-columns:44px 1fr;gap:.85rem;align-items:start;transition:border-color .2s}
.rep-card:hover{border-color:var(--teal)}
.rep-av{width:44px;height:44px;border-radius:50%;background:var(--teal-l);display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;font-size:.9rem;font-weight:600;color:var(--teal);overflow:hidden;flex-shrink:0}
.rep-av img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.rep-name{font-size:.9rem;font-weight:500;color:var(--ink);margin-bottom:.15rem}
.rep-role{font-size:.75rem;color:var(--teal-d);margin-bottom:.4rem}
.rep-meta-row{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.5rem}
.rep-ptag{font-size:.65rem;padding:.18rem .5rem;border-radius:3px;font-weight:500}
.ptag-d{background:rgba(59,130,246,.1);color:#1D4ED8}
.ptag-r{background:rgba(239,68,68,.1);color:#B91C1C}
.ptag-i{background:rgba(139,92,246,.1);color:#6D28D9}
.ptag-def{background:var(--border);color:var(--ink-mute)}
.rep-dtag{font-size:.65rem;padding:.18rem .5rem;border-radius:3px;background:var(--card);border:1px solid var(--border);color:var(--ink-mute)}
.rep-links{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.rep-link{font-size:.75rem;color:var(--teal);text-decoration:none;font-weight:500}
.rep-link:hover{color:var(--teal-d);text-decoration:underline}
.rep-link-sep{color:var(--border);font-size:.65rem}
.rf-empty{padding:.85rem 1rem;background:var(--card);border:1px dashed var(--border);border-radius:8px;font-size:.8rem;color:var(--ink-mute);text-align:center}
.rf-note{margin-top:1rem;padding-top:.85rem;border-top:1px solid var(--border);font-size:.72rem;color:var(--ink-mute);line-height:1.6}
.rf-note a{color:var(--teal);text-decoration:none}
.rf-note a:hover{text-decoration:underline}
/* ── OFFICIALS REDESIGN ─────────────────────────────────── */
.off-shell{max-width:780px;margin:0 auto}
.off-zip-label{font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute);font-weight:500;margin-bottom:.7rem}
.off-zip-wrap{display:flex;align-items:center;border:1.5px solid var(--border);border-radius:var(--radius,10px);overflow:hidden;max-width:460px;transition:border-color .2s;background:var(--white)}
.off-zip-wrap:focus-within{border-color:var(--teal);box-shadow:0 0 0 3px rgba(13,155,142,.08)}
.off-zip-input{flex:1;border:none;outline:none;padding:.7rem .9rem;font-size:1.2rem;letter-spacing:.18em;color:var(--ink);background:transparent;font-family:'DM Sans',sans-serif;width:0}
.off-zip-input::placeholder{font-size:.88rem;letter-spacing:.02em;color:var(--ink-mute)}
.off-zip-btn{border:none;cursor:pointer;background:var(--teal);color:#fff;font-family:'DM Sans',sans-serif;font-size:.85rem;font-weight:600;padding:.75rem 1.4rem;transition:background .2s;white-space:nowrap;flex-shrink:0}
.off-zip-btn:hover{background:var(--teal-d)}
.off-zip-btn:disabled{background:var(--ink-mute);cursor:not-allowed}
.off-privacy-note{display:flex;align-items:center;gap:.45rem;margin-top:.7rem;font-size:.75rem;color:var(--ink-mute)}
.off-privacy-note svg{flex-shrink:0}
.off-accordion{border:1px solid var(--border);border-radius:14px;overflow:hidden;margin-top:1.5rem}
.off-layer{border-bottom:1px solid var(--border)}
.off-layer:last-child{border-bottom:none}
.off-layer-hd{width:100%;display:flex;align-items:center;gap:.9rem;padding:1.1rem 1.25rem;cursor:pointer;background:none;border:none;text-align:left;font-family:'DM Sans',sans-serif;transition:background .15s}
.off-layer-hd:hover{background:rgba(13,155,142,.03)}
.off-layer-icon{width:36px;height:36px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.off-icon-local{background:rgba(29,158,117,.13);color:var(--teal)}
.off-icon-state{background:rgba(15,110,86,.11);color:var(--teal-d)}
.off-icon-fed{background:rgba(8,80,65,.09);color:#085041}
.off-layer-title{font-size:.88rem;font-weight:600;color:var(--ink)}
.off-layer-sub{font-size:.74rem;color:var(--ink-mute);margin-top:1px}
.off-layer-count{display:inline-flex;align-items:center;justify-content:center;background:var(--teal-l);color:var(--teal-d);font-size:.68rem;font-weight:700;border-radius:20px;padding:2px 9px;margin-left:auto;flex-shrink:0}
.off-chevron{color:var(--ink-mute);margin-left:.4rem;flex-shrink:0;transition:transform .22s}
.off-chevron.open{transform:rotate(180deg)}
.off-layer-body{display:none;padding:.25rem 1.25rem 1.2rem}
.off-layer-body.open{display:block}
.off-controls-tag{display:inline-block;font-size:.7rem;color:var(--teal-d);background:var(--teal-l);border-radius:6px;padding:4px 11px;margin-bottom:.8rem;font-weight:500}
.off-rep-card{display:grid;grid-template-columns:42px 1fr auto;gap:.8rem;align-items:start;padding:.85rem 1rem;border:1px solid var(--border);border-radius:10px;margin-bottom:.55rem;background:var(--card);transition:border-color .18s,box-shadow .18s}
.off-rep-card:hover{border-color:rgba(29,158,117,.4);box-shadow:0 4px 16px rgba(12,18,25,.05)}
.off-rep-name{font-size:.88rem;font-weight:600;color:var(--ink)}
.off-rep-role{font-size:.74rem;color:var(--teal-d);margin-top:2px}
.off-rep-tags{display:flex;gap:.35rem;margin-top:.45rem;flex-wrap:wrap}
.off-ptag{font-size:.63rem;font-weight:600;border-radius:10px;padding:2px 8px}
.off-ptag-d{background:rgba(29,158,117,.1);color:var(--teal-d)}
.off-ptag-r{background:rgba(220,38,38,.08);color:#b91c1c}
.off-ptag-i{background:var(--border);color:var(--ink-mute)}
.off-dtag{font-size:.63rem;background:rgba(8,80,65,.07);color:#085041;border-radius:10px;padding:2px 8px;font-weight:600}
.off-elec-badge{font-size:.6rem;margin-top:.4rem;border-radius:6px;padding:3px 8px;font-weight:600;line-height:1.4;display:inline-block}
.off-elec-term{background:rgba(22,163,74,.1);color:#166534}
.off-elec-running{background:rgba(37,99,235,.08);color:#1e40af}
.off-elec-retiring{background:rgba(234,88,12,.1);color:#9a3412}
.off-elec-lost{background:rgba(220,38,38,.09);color:#991b1b}
.off-rep-acts{display:flex;flex-direction:column;gap:.35rem;align-items:flex-end;flex-shrink:0}
.off-contact-btn{background:var(--teal);color:#fff;border:none;border-radius:18px;padding:6px 13px;font-size:.7rem;font-weight:700;cursor:pointer;font-family:'DM Sans',sans-serif;white-space:nowrap;transition:background .15s}
.off-contact-btn:hover{background:var(--teal-d)}
.off-save-btn{background:transparent;border:1px solid var(--border);color:var(--ink-mute);border-radius:18px;padding:4px 11px;font-size:.68rem;cursor:pointer;font-family:'DM Sans',sans-serif;transition:border-color .15s,color .15s}
.off-save-btn:hover{border-color:var(--teal);color:var(--teal-d)}
.off-save-btn.saved{border-color:var(--teal);color:var(--teal-d)}
.off-rep-links{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.4rem}
.off-rep-link{font-size:.7rem;color:var(--teal);text-decoration:none;font-weight:500}
.off-rep-link:hover{color:var(--teal-d);text-decoration:underline}
.off-multi-notice{background:var(--teal-l);border:1px solid rgba(13,155,142,.28);border-radius:9px;padding:.8rem 1rem;margin-bottom:.75rem;font-size:.78rem;color:var(--teal-d);line-height:1.55}
.off-multi-notice strong{font-weight:700}
.off-empty{padding:.85rem;background:var(--card);border:1px dashed var(--border);border-radius:8px;font-size:.8rem;color:var(--ink-mute);text-align:center}
@media(max-width:600px){.off-rep-card{grid-template-columns:36px 1fr}.off-rep-acts{display:none}}
/* ── DISTRICT MAP (NYC Borough Map) ─────────────────────────── */
.dist-map-shell{margin-top:.25rem}
.dist-map-notice{display:flex;align-items:center;gap:.55rem;font-size:.8rem;font-weight:500;color:#0A6044;background:#D0EEE2;border:1px solid #7AC4A0;border-radius:9px;padding:.6rem .9rem;margin-bottom:.85rem;line-height:1.5}
.dist-map-notice strong{margin:0 2px}
.dist-map-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.1rem;align-items:start}
.dist-map-svg-wrap{display:flex;flex-direction:column;gap:.35rem}
.dist-map-svg,.nyc-borough-svg{width:100%;height:auto;display:block;border-radius:10px;box-shadow:0 2px 12px rgba(10,96,68,.12)}
.nyc-leaflet-wrap{width:100%;height:340px;border-radius:10px;overflow:hidden;box-shadow:0 2px 16px rgba(0,0,0,.14);border:1px solid #cdd8e0}
.nyc-dist-badge{background:none;border:none}
.nyc-dist-badge span{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#4a5acd;color:#fff;font-family:'DM Sans',sans-serif;font-size:9px;font-weight:700;box-shadow:0 1px 4px rgba(0,0,0,.35);pointer-events:none}
.leaflet-control-attribution{font-size:9px!important}
[data-dist-zone]{cursor:pointer;transition:fill .22s,fill-opacity .22s}
[data-dist-zone]:hover{fill-opacity:0.62!important}
.dist-map-caption{font-size:.65rem;color:#4A7A64;text-align:center;line-height:1.45;margin-top:.3rem}
.dist-panel{max-height:600px;overflow-y:auto;padding-right:.3rem}
.dist-cw-section{margin-bottom:.65rem}
.dist-cw-head{font-size:.68rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#0A6044;padding:.32rem .65rem;border-radius:5px;background:#C0EAD6;border-left:3px solid #0A6044;margin-bottom:.5rem}
.dist-officials-section{margin-bottom:.75rem}
.dist-officials-section-head{font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.35rem .65rem;border-radius:5px;background:#C0EAD6;margin-bottom:.55rem;color:#0A6044}
.dist-section-c0{border-left:3px solid #0A6044}
.dist-section-c1{border-left:3px solid #1A9E72}
.dist-section-c2{border-left:3px solid #4DC89A}
.dist-zone-section{display:none}
.dist-zone-section.active{display:block;animation:fadeSlide .25s ease}
@keyframes fadeSlide{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.dist-zone-prompt{display:flex;align-items:center;gap:.5rem;font-size:.78rem;color:#0A6044;padding:.5rem .8rem;border-radius:7px;background:#D0EEE2;border:1px dashed #7AC4A0;margin-bottom:.6rem}
.dist-zone-prompt.hidden{display:none}
.dist-privacy-row{display:flex;align-items:center;gap:.45rem;font-size:.68rem;color:#4A7A64;margin-top:.85rem;padding-top:.7rem;border-top:1px solid #A8D5BE}
.off-rep-desc{font-size:.72rem;color:var(--ink-mute);margin:.18rem 0 .3rem;line-height:1.45}
@media(max-width:640px){.dist-map-layout{grid-template-columns:1fr}.dist-panel{max-height:none}}

/* ── QUIZ EMBED ────────────────────────────────────────────── */
.quiz-wrap{background:var(--white);border:1px solid var(--border);border-radius:14px;overflow:hidden;margin-bottom:2.5rem}
.quiz-head{background:var(--ink);padding:1.1rem 1.5rem;display:flex;align-items:center;justify-content:space-between}
.qh-left{display:flex;align-items:center;gap:.75rem}
.qh-dot{width:8px;height:8px;border-radius:50%;background:var(--teal)}
.qh-lbl{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.5);font-weight:500}
.qh-tag{font-size:.65rem;padding:.2rem .65rem;border-radius:20px;background:rgba(13,155,142,.25);color:var(--teal)}
.quiz-body{padding:2rem 1.5rem}
.quiz-intro{font-size:.9rem;color:var(--ink-mid);line-height:1.7;margin-bottom:1.5rem;max-width:540px}
.quiz-start-btn{background:var(--teal);color:var(--white);border:none;padding:.75rem 1.75rem;border-radius:8px;font-family:'DM Sans',sans-serif;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .2s}
.quiz-start-btn:hover{background:var(--teal-d)}
.quiz-q-wrap{display:none}
.quiz-q-wrap.show{display:block}
.quiz-progress{height:3px;background:var(--border);border-radius:2px;margin-bottom:1.5rem;overflow:hidden}
.quiz-progress-bar{height:100%;background:var(--teal);border-radius:2px;transition:width .4s ease}
.quiz-topic-lbl{font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;color:var(--teal);font-weight:500;margin-bottom:.5rem}
.quiz-q-num{font-size:.75rem;color:var(--ink-mute);margin-bottom:.65rem}
.quiz-q-text{font-family:'Playfair Display',serif;font-size:1.05rem;font-weight:600;color:var(--ink);line-height:1.45;margin-bottom:1.25rem}
.quiz-options{display:grid;gap:.6rem;margin-bottom:1.5rem}
.quiz-opt{background:var(--card);border:1.5px solid var(--border);border-radius:8px;padding:.75rem 1rem;font-family:'DM Sans',sans-serif;font-size:.875rem;color:var(--ink);cursor:pointer;text-align:left;transition:all .2s}
.quiz-opt:hover{border-color:var(--teal);background:var(--teal-l)}
.quiz-opt.selected{border-color:var(--teal);background:var(--teal-l);color:var(--teal-d)}
.quiz-opt.correct{border-color:#16A34A;background:#F0FDF4;color:#166534}
.quiz-opt.wrong{border-color:#DC2626;background:#FEF2F2;color:#991B1B}
.quiz-feedback{display:none;padding:.85rem 1rem;border-radius:8px;font-size:.82rem;line-height:1.6;margin-bottom:1rem}
.quiz-feedback.show{display:block}
.quiz-feedback.correct{background:#F0FDF4;border:1px solid #BBF7D0;color:#166534}
.quiz-feedback.wrong{background:#FEF2F2;border:1px solid #FECACA;color:#991B1B}
.quiz-next-btn{background:var(--ink);color:var(--white);border:none;padding:.65rem 1.5rem;border-radius:8px;font-family:'DM Sans',sans-serif;font-size:.85rem;font-weight:500;cursor:pointer;transition:background .2s;display:none}
.quiz-next-btn.show{display:inline-flex}
.quiz-next-btn:hover{background:var(--ink-mid)}
.quiz-results{display:none}
.quiz-results.show{display:block}
.qr-score-ring{width:96px;height:96px;border-radius:50%;border:4px solid var(--teal);display:flex;align-items:center;justify-content:center;flex-direction:column;margin:0 auto 1.25rem}
.qr-score-num{font-family:'Playfair Display',serif;font-size:1.5rem;font-weight:600;color:var(--teal);line-height:1}
.qr-score-sub{font-size:.6rem;color:var(--ink-mute);text-transform:uppercase;letter-spacing:.08em;margin-top:.2rem}
.qr-title{font-family:'Playfair Display',serif;font-size:1.1rem;font-weight:600;color:var(--ink);text-align:center;margin-bottom:.5rem}
.qr-body{font-size:.82rem;color:var(--ink-mid);line-height:1.65;text-align:center;max-width:440px;margin:0 auto 1.5rem}
.qr-bars{display:grid;gap:.65rem;margin-bottom:1.5rem}
.qr-bar-row{display:grid;grid-template-columns:110px 1fr 36px;align-items:center;gap:.65rem}
.qr-bar-lbl{font-size:.72rem;color:var(--ink-mid);text-align:right}
.qr-bar-track{height:6px;background:var(--border);border-radius:3px;overflow:hidden}
.qr-bar-fill{height:100%;background:var(--teal);border-radius:3px;transition:width .8s ease}
.qr-bar-pct{font-size:.72rem;color:var(--ink-mute);text-align:right}
.qr-actions{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}
.qr-retry-btn{background:transparent;border:1.5px solid var(--teal);color:var(--teal);padding:.6rem 1.25rem;border-radius:8px;font-family:'DM Sans',sans-serif;font-size:.82rem;font-weight:500;cursor:pointer;transition:all .2s}
.qr-retry-btn:hover{background:var(--teal-l)}
.qr-join-btn{background:var(--teal);color:var(--white);border:none;padding:.6rem 1.25rem;border-radius:8px;font-family:'DM Sans',sans-serif;font-size:.82rem;font-weight:500;cursor:pointer;transition:background .2s}
.qr-join-btn:hover{background:var(--teal-d)}

/* ── LIVE DATA LAYER STATUS ────────────────────────────────── */
.data-status-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-bottom:2rem}
.ds-card{background:var(--white);border:1px solid var(--border);border-radius:12px;padding:1.25rem 1.5rem}
.ds-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:.65rem}
.ds-name{font-size:.75rem;font-weight:600;color:var(--ink);letter-spacing:.02em}
.ds-badge{font-size:.62rem;padding:.18rem .55rem;border-radius:20px;font-weight:500}
.badge-live{background:rgba(22,163,74,.12);color:#166534}
.badge-pending{background:rgba(200,151,58,.12);color:#92400E}
.badge-coming{background:var(--border);color:var(--ink-mute)}
.ds-detail{font-size:.78rem;color:var(--ink-mute);line-height:1.55}
.ds-api{font-size:.68rem;color:var(--teal);margin-top:.4rem;font-family:monospace}

/* ── MIDTERM TRACKER PAGE ──────────────────────────────────── */
.tracker-page-grid{display:grid;grid-template-columns:1fr 320px;gap:2rem;align-items:start}
.state-map-placeholder{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:2rem;text-align:center;aspect-ratio:16/9;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem}
.smp-lbl{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute);font-weight:500}
.smp-title{font-family:'Playfair Display',serif;font-size:1.15rem;color:var(--ink)}
.smp-sub{font-size:.8rem;color:var(--ink-mute);max-width:300px;line-height:1.55}
.race-list{display:grid;gap:.75rem}
.race-card{background:var(--white);border:1px solid var(--border);border-radius:10px;padding:1rem 1.25rem;transition:border-color .2s}
.race-card:hover{border-color:var(--teal)}
.race-card.hide{display:none}
.race-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:.4rem}
.race-state{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--teal);font-weight:600}
.race-type{font-size:.68rem;color:var(--ink-mute)}
.race-title{font-size:.9rem;font-weight:500;color:var(--ink);margin-bottom:.3rem}
.race-status{font-size:.72rem;padding:.18rem .55rem;border-radius:20px;display:inline-block}
.rs-competitive{background:rgba(200,151,58,.12);color:#92400E}
.rs-safe-d{background:rgba(59,130,246,.1);color:#1D4ED8}
.rs-safe-r{background:rgba(239,68,68,.1);color:#B91C1C}
.rs-tossup{background:rgba(139,92,246,.1);color:#6D28D9}
.race-candidates{display:flex;gap:.75rem;margin-top:.65rem;flex-wrap:wrap}
.candidate{font-size:.75rem;color:var(--ink-mid);display:flex;align-items:center;gap:.3rem}
.cand-d::before{content:'';display:inline-block;width:7px;height:7px;border-radius:50%;background:#3B82F6}
.cand-r::before{content:'';display:inline-block;width:7px;height:7px;border-radius:50%;background:#EF4444}
.tracker-sidebar .sidebar-widget{background:var(--white)}
/* ── TRACKER OPTION B REDESIGN ────────────────────────── */
.trk-outer{max-width:1100px;margin:0 auto;padding:3rem 2rem 2rem}
.trk-spine-wrap{position:relative;padding-left:2.75rem}
.trk-spine-wrap::before{content:'';position:absolute;left:9px;top:0;bottom:0;width:1.5px;background:rgba(29,158,117,.22)}
.trk-node{position:relative;margin-bottom:1.75rem}
.trk-dot{position:absolute;left:-2.75rem;top:1.35rem;width:18px;height:18px;border-radius:50%;background:var(--teal);border:3px solid var(--white);box-shadow:0 0 0 2px var(--teal);z-index:1}
.trk-dot.accent{background:var(--teal-d);box-shadow:0 0 0 2px var(--teal-d)}
.trk-card{background:var(--white);border:1px solid rgba(29,158,117,.22);border-radius:14px;padding:1.5rem 1.75rem;overflow:hidden}
.trk-node-label{font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--teal);font-weight:600;margin-bottom:.5rem;display:flex;align-items:center;gap:.5rem}
.trk-node-label::before{content:'';display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--teal);flex-shrink:0}
.trk-cd-units{display:grid;grid-template-columns:repeat(4,minmax(58px,1fr));gap:.75rem;flex:1 1 420px;min-width:0}
.trk-cd-unit{text-align:center;background:var(--teal-l);border:1px solid rgba(29,158,117,.14);border-radius:10px;padding:.75rem .45rem;min-width:0}
.trk-cd-num{font-size:clamp(1.35rem,4vw,2rem);font-weight:600;color:var(--teal-d);line-height:1;font-variant-numeric:tabular-nums;letter-spacing:0;white-space:nowrap}
.trk-cd-sub{font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;color:var(--teal);margin-top:.3rem}
.trk-countdown-wrap{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;flex-wrap:wrap}
.trk-meter{margin-bottom:1.1rem}
.trk-meter:last-of-type{margin-bottom:0}
.trk-meter-hd{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.45rem}
.trk-meter-lbl{font-size:.82rem;font-weight:500;color:var(--ink)}
.trk-meter-note{font-size:.7rem;color:var(--ink-mute)}
.trk-bar-wrap{height:10px;border-radius:8px;background:var(--card);position:relative;overflow:hidden;margin-bottom:.35rem}
.trk-bar-d{height:100%;background:#185FA5;border-radius:8px 0 0 8px;position:absolute;left:0;top:0;opacity:.75}
.trk-bar-r{height:100%;background:#B91C1C;border-radius:0 8px 8px 0;position:absolute;right:0;top:0;opacity:.7}
.trk-bar-tu{height:100%;background:var(--border);position:absolute}
.trk-threshold{width:2px;height:100%;background:var(--ink);position:absolute;top:0;opacity:.3}
.trk-meter-seats{display:flex;justify-content:space-between;font-size:.72rem}
.trk-seat-d{color:#185FA5;font-weight:500}
.trk-seat-r{color:#B91C1C;font-weight:500}
.trk-seat-tu{color:var(--ink-mute)}
.trk-lean-bar{height:6px;border-radius:4px;background:var(--card);position:relative;overflow:hidden;margin:.55rem 0}
.trk-lean-d{height:100%;background:#185FA5;opacity:.65;position:absolute;left:0;border-radius:4px 0 0 4px}
.trk-lean-r{height:100%;background:#B91C1C;opacity:.6;position:absolute;right:0;border-radius:0 4px 4px 0}
.trk-nyc{background:var(--teal-l);border:1px solid rgba(29,158,117,.25);border-radius:8px;padding:.7rem 1rem;margin-top:.65rem}
.trk-nyc-lbl{font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;color:var(--teal-d);font-weight:600;margin-bottom:.25rem}
.trk-nyc p{font-size:.78rem;color:var(--teal-d);line-height:1.55}
.trk-tl{position:relative;padding-left:1.1rem}
.trk-tl::before{content:'';position:absolute;left:4px;top:6px;bottom:6px;width:1.5px;background:rgba(29,158,117,.22)}
.trk-tl-item{position:relative;padding-bottom:.9rem}
.trk-tl-item:last-child{padding-bottom:0}
.trk-tl-dot{position:absolute;left:-1.1rem;top:5px;width:10px;height:10px;border-radius:50%;background:var(--teal);border:2px solid var(--white)}
.trk-tl-dot.future{background:var(--white);border:2px solid rgba(29,158,117,.4)}
.trk-tl-dot.election{background:var(--teal-d);border:2px solid var(--white);box-shadow:0 0 0 2px var(--teal)}
.trk-tl-date{font-size:.67rem;color:var(--teal);font-weight:600;margin-bottom:.12rem}
.trk-tl-event{font-size:.84rem;font-weight:500;color:var(--ink);margin-bottom:.12rem}
.trk-tl-note{font-size:.74rem;color:var(--ink-mute);line-height:1.5}
.trk-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.55rem;margin-top:1rem}
.trk-stat{background:var(--teal-l);border-radius:10px;padding:.7rem .5rem;text-align:center}
.trk-stat-num{font-size:1.25rem;font-weight:600;color:var(--teal-d);line-height:1}
.trk-stat-lbl{font-size:.58rem;letter-spacing:.06em;text-transform:uppercase;color:var(--teal);margin-top:.25rem;line-height:1.35}
.trk-how-icon{width:32px;height:32px;border-radius:8px;background:var(--teal-l);display:flex;align-items:center;justify-content:center;margin-bottom:.6rem}
.trk-how-icon svg{width:16px;height:16px;stroke:var(--teal-d);fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.rs-tossup{background:rgba(29,158,117,.1);color:var(--teal-d)}
@media(max-width:768px){
  .trk-outer{padding:2rem 1.25rem 1.5rem}
  .trk-spine-wrap{padding-left:2rem}
  .trk-card{padding:1.15rem}
  .trk-cd-units{grid-template-columns:repeat(4,minmax(48px,1fr));gap:.5rem;flex-basis:100%;width:100%}
  .trk-cd-unit{padding:.65rem .35rem;border-radius:8px}
  .trk-cd-num{font-size:1.35rem}
  .trk-cd-sub{font-size:.52rem;letter-spacing:.07em}
  .trk-stat-grid{grid-template-columns:repeat(2,1fr)}
  .trk-countdown-wrap{gap:1rem;align-items:stretch}
}

/* ── COHORT PORTAL ─────────────────────────────────────────── */
.portal-wrap{background:var(--card);border:1px solid var(--border);border-radius:14px;overflow:hidden}
.portal-head{background:var(--ink);padding:1.1rem 1.5rem;display:flex;align-items:center;justify-content:space-between}
.ph-lbl-sm{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.5);font-weight:500;display:flex;align-items:center;gap:.5rem}
.ph-dot{width:7px;height:7px;border-radius:50%;background:var(--teal)}
.portal-body{padding:1.5rem}
.portal-steps{display:grid;gap:.75rem}
.ps-row{display:flex;align-items:flex-start;gap:.85rem;padding:.75rem 0;border-bottom:1px solid var(--border)}
.ps-row:last-child{border-bottom:none}
.ps-num{width:28px;height:28px;border-radius:50%;background:var(--teal);display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:600;color:var(--white);flex-shrink:0;margin-top:.1rem}
.ps-num.pending{background:var(--border);color:var(--ink-mute)}
.ps-title{font-size:.875rem;font-weight:500;color:var(--ink);margin-bottom:.15rem}
.ps-detail{font-size:.78rem;color:var(--ink-mute);line-height:1.55}

@media(max-width:1080px){
  .proposal-card-core{grid-template-columns:1fr}
  .proposal-aside{border-left:0;border-top:1px solid var(--border)}
}

@media(max-width:768px){
  .data-status-grid{grid-template-columns:1fr}
  .tracker-page-grid{grid-template-columns:1fr}
  .rep-card{grid-template-columns:1fr}
  .rep-av{display:none}
}
/* Remove the old attribute selector since we now use classes */
.nav-hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:4px;background:none;border:none}
.nav-hamburger span{display:block;width:22px;height:2px;background:var(--ink);border-radius:2px;transition:all .3s}
.nav-hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-hamburger.open span:nth-child(2){opacity:0}
.nav-hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.nav-mobile{display:none;position:fixed;top:64px;left:0;right:0;background:var(--white);border-bottom:1px solid var(--border);z-index:199;padding:1.5rem 1.5rem 2rem;flex-direction:column;gap:0;box-shadow:0 8px 24px rgba(0,0,0,.08)}
.nav-mobile.open{display:flex}
.nav-mobile a{font-size:1rem;color:var(--ink-mid);padding:.85rem 0;border-bottom:1px solid var(--border);cursor:pointer;font-weight:400}
.nav-mobile a:last-child{border-bottom:none}
.nav-mobile a:hover{color:var(--teal)}
.nav-mobile-ctas{display:flex;gap:.75rem;margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--border)}
.nav-mobile-ctas .btn{flex:1;justify-content:center}

@media(max-width:1120px){
  nav{padding:0 1.5rem}
  .nav-links{display:none}
  .nav-ctas{display:none}
  .nav-hamburger{display:flex}
}

/* ── TABLET 1024px ──────────────────────────── */
@media(max-width:1024px){
  .sec{padding:4rem 2.5rem}
  .stats-band{padding:2rem 2.5rem;gap:2rem}
  .stats-row{gap:2rem}
  .pillars{grid-template-columns:1fr 1fr}
  .how-grid{grid-template-columns:1fr 1fr}
  .mentor-grid{grid-template-columns:1fr 1fr}
  .news-grid{grid-template-columns:1fr}
  .news-masthead{padding:2rem 2.5rem}
  .news-process-inner{grid-template-columns:1fr;gap:1rem;padding:1.5rem 2.5rem}
  .news-flow-arrow{display:none}
  .news-workspace{padding:0 2.5rem 1.25rem}
  .news-layout{grid-template-columns:1fr}
  .news-lead-card{grid-template-columns:1fr}
  .news-power-panel{border-left:0;border-top:1px solid var(--border);padding:1.25rem 0 0}
  .news-sidebar-sticky{position:static}
  .story-sec{grid-template-columns:1fr;gap:3rem;padding:4rem 2.5rem}
  .story-r{border-left:none;padding-left:0;border-top:1px solid rgba(255,255,255,.08);padding-top:2.5rem}
  footer{padding:2rem 2.5rem}
  .page-hero{padding:4rem 2.5rem}
  .register-wrap{grid-template-columns:1fr}
  .reg-left{padding:3rem 2.5rem;min-height:auto}
  .reg-right{padding:3rem 2.5rem}
  .hub-grid{grid-template-columns:1fr 1fr}
}

/* ── MOBILE 768px ───────────────────────────── */
@media(max-width:768px){
  /* Prevent horizontal overflow */
  html,body{overflow-x:hidden;width:100%}
  img,video,iframe,canvas{max-width:100%;height:auto}
  p,h1,h2,h3,h4,h5,h6,li,span{word-wrap:break-word;overflow-wrap:break-word}

  /* Nav */
  nav{padding:0 1.25rem}
  .nav-links{display:none}
  .nav-ctas{display:none}
  .nav-hamburger{display:flex}

  /* Pre-reg banner */
  .prereg-banner{padding:.65rem 1.25rem;flex-direction:column;gap:.5rem;text-align:center}

  /* Hero — stack vertically */
  .hero{grid-template-columns:1fr;min-height:auto;display:flex;flex-direction:column}
  .hero-l{padding:3.5rem 1.25rem 2.5rem}
  .hero-r{padding:2.5rem 1.25rem;border-left:none;border-top:1px solid var(--border)}
  .hero-h1{font-size:clamp(1.9rem,8vw,2.8rem)}
  .hero-sub{max-width:100%;font-size:.95rem}
  .hero-ctas{flex-direction:column}
  .hero-ctas .btn,.hero-ctas button{width:100%;justify-content:center;text-align:center;min-height:48px}
  .quiz-pop-actions{grid-template-columns:1fr}
  .home-brief-section{padding:3rem 1.25rem}
  .home-brief-wrap{grid-template-columns:1fr;gap:1.5rem}

  /* Stats */
  .stats-band{padding:2rem 1.25rem;flex-direction:column;gap:1.5rem;text-align:center}
  .stats-band-lbl{white-space:normal;text-align:center}
  .stats-row{flex-wrap:wrap;gap:1.25rem;justify-content:center}
  .stat-item{min-width:42%;flex:1}

  /* Sections */
  .sec{padding:3.5rem 1.25rem}
  .sec-hd{margin-bottom:2rem}

  /* All multi-col grids go single col */
  .pillars{grid-template-columns:1fr}
  .how-grid{grid-template-columns:1fr}
  .who-grid{grid-template-columns:1fr}
  .hub-grid{grid-template-columns:1fr}
  .mentor-grid{grid-template-columns:1fr}
  .news-grid{grid-template-columns:1fr}
  .news-masthead{padding:2.5rem 1.25rem 1.8rem}
  .news-masthead-inner{flex-direction:column}
  .news-date-box{min-width:0}
  .news-process-inner{padding:1.3rem 1.25rem}
  .news-flow-step{grid-template-columns:46px 1fr;gap:.85rem}
  .news-flow-mark{width:46px;height:46px;font-size:.72rem}
  .news-flow-title{font-size:1rem}
  .news-workspace{padding:0 1.25rem 1.25rem}
  .news-topic-shell{align-items:flex-start;flex-direction:column;gap:.4rem;overflow:hidden}
  .news-topic-row{width:100%;flex-wrap:nowrap;overflow-x:auto;padding-bottom:.1rem}
  .news-page-v2 .news-topic{white-space:nowrap;padding:.68rem .75rem .85rem}
  .news-page-v2 .news-topic.active::after{left:.75rem;right:.75rem}
  .news-search-row{grid-template-columns:1fr}
  .news-mode-row{align-items:flex-start;flex-direction:column}
  .news-row-card{grid-template-columns:1fr;gap:.7rem;padding:1rem 0}
  .news-thumb{height:96px}
  .news-row-stage{display:none}
  .news-row-actions{justify-items:start}
  .news-location{text-align:left}
  .news-stage-label{font-size:.58rem}
  .news-fact-row{grid-template-columns:1fr}
  .news-brief-form{grid-template-columns:1fr}
  .news-brief-input{border-right:1px solid var(--border);border-radius:4px;margin-bottom:.55rem}
  .news-brief-button{border-radius:4px}
  .two-col{grid-template-columns:1fr;gap:2.5rem}
  .three-col{grid-template-columns:1fr}

  /* Story */
  .story-sec{grid-template-columns:1fr;gap:2.5rem;padding:3.5rem 1.25rem;display:flex;flex-direction:column}
  .story-r{border-left:none;padding-left:0;border-top:1px solid rgba(255,255,255,.08);padding-top:2rem}
  .quote{font-size:1.05rem;padding-left:.75rem}

  /* Page hero */
  .page-hero{padding:3rem 1.25rem}
  .ph-h{font-size:clamp(1.7rem,7vw,2.4rem)}
  .ph-sub{font-size:.9rem}

  /* CTA */
  .cta-block{padding:4rem 1.25rem}
  .cta-btns{flex-direction:column;align-items:center}
  .cta-btns .btn,.cta-btns button{width:100%;max-width:320px;justify-content:center}

  /* Footer */
  footer{flex-direction:column;padding:2.5rem 1.25rem;text-align:center;gap:1.5rem;align-items:center}
  .foot-right{text-align:center}
  .foot-links{justify-content:center;flex-wrap:wrap;gap:1rem}

  /* Register */
  .register-wrap{grid-template-columns:1fr;display:flex;flex-direction:column}
  .reg-left{padding:3rem 1.25rem;min-height:auto}
  .reg-right{padding:3rem 1.25rem}
  .form-row{grid-template-columns:1fr}

  /* Modal — bottom sheet style */
  .modal-overlay{padding:.5rem;align-items:flex-end}
  .modal{border-radius:20px 20px 0 0;max-height:90vh;overflow-y:auto;-webkit-overflow-scrolling:touch}
  .modal-head{padding:1.5rem 1.25rem 1.25rem}
  .modal-title{font-size:1.15rem}
  .modal-body{padding:1.5rem 1.25rem}
  .modal-tags{padding:1rem 1.25rem}
  .modal-close{top:1rem;right:1rem}
  #brief-signup-hero{grid-template-columns:1fr!important;text-align:center}
  #brief-signup-hero>div{flex-direction:column}
  #brief-email-hero{min-width:0!important;width:100%}
  .news-search-row{grid-template-columns:1fr}
  .news-live-summary{grid-template-columns:1fr}
  .news-feed-head{display:grid;gap:.35rem}
  .news-feed-meta{text-align:left}
  .news-card-top{display:grid;gap:.4rem}
  .news-card-source{white-space:normal}
  .news-card-lens{grid-template-columns:1fr}

  /* Proposal steps */
  .step-card{grid-template-columns:40px 1fr;gap:1rem;padding:1.25rem}
  .proposal-control-shell{padding:1rem}
  .proposal-control-head{grid-template-columns:1fr;gap:.9rem}
  .proposal-official-link{width:100%;text-align:center}
  .proposal-toolbar{grid-template-columns:1fr}
  .proposal-top{align-items:flex-start;flex-direction:column;gap:.35rem}
  .proposal-info-grid{grid-template-columns:1fr}
  .proposal-code-row{display:grid}
  .proposal-action{width:100%}
  .tool-stage{grid-template-columns:1fr}
  .tool-orbit{justify-content:center}

  /* Bill tracker */
  .tracker-head{flex-direction:column;align-items:flex-start;gap:.5rem}

  /* Brief card */
  .bc-head{flex-wrap:wrap;gap:.5rem}
}

/* ── SMALL MOBILE 480px ─────────────────────── */
@media(max-width:480px){
  nav{padding:0 1rem}
  .prereg-banner{padding:.65rem 1rem}
  .sec{padding:3rem 1rem}
  .hero-l{padding:3rem 1rem 2.5rem}
  .hero-r{padding:2.5rem 1rem}
  .story-sec{padding:3rem 1rem}
  .page-hero{padding:2.5rem 1rem}
  .cta-block{padding:3.5rem 1rem}
  footer{padding:2rem 1rem}
  .reg-left,.reg-right{padding:2.5rem 1rem}
  .stats-row{gap:1rem}
  .stat-item{min-width:45%}
  .hero-h1{font-size:clamp(1.8rem,9vw,2.6rem)}
  .sh{font-size:clamp(1.5rem,6vw,2rem)}
  .trk-outer{padding:1.5rem 1rem}
  .trk-spine-wrap{padding-left:1.25rem}
  .trk-spine-wrap::before{left:4px}
  .trk-dot{left:-1.58rem;width:14px;height:14px;top:1.2rem}
  .trk-card{padding:1rem;border-radius:10px}
  .trk-cd-units{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}
  .trk-cd-unit{padding:.75rem .35rem}
  .trk-cd-num{font-size:1.55rem}
  .trk-countdown-wrap .ca-style-033{width:100%}
  .modal-overlay{padding:.5rem}
}

/* ── iOS SAFE AREA (notch / home bar) ───────── */
@supports(padding:max(0px)){
  nav{padding-left:max(1.25rem,env(safe-area-inset-left));padding-right:max(1.25rem,env(safe-area-inset-right))}
  .hero-l,.hero-r,.sec,.story-sec,.page-hero,.cta-block,footer,.reg-left,.reg-right,.prereg-banner{
    padding-left:max(1.25rem,env(safe-area-inset-left));
    padding-right:max(1.25rem,env(safe-area-inset-right))
  }
  footer{padding-bottom:max(2rem,env(safe-area-inset-bottom))}
  .nav-mobile{padding-left:max(1.5rem,env(safe-area-inset-left));padding-right:max(1.5rem,env(safe-area-inset-right))}
}

/* Assessment layout */

.aq-ref{
  --ink:#0d0d0d;--ink2:#3d3d3d;--ink3:#8a8580;
  --paper:#fafaf7;--line:rgba(0,0,0,0.07);--line2:rgba(0,0,0,0.13);
  --sage:#1D9E75;--sage-l:#e8f5f0;--sage-d:#0F6E56;
  --amber:#BA7517;
  --slate:#185FA5;
  --stone:#888780;
  --coral:#D85A30;
}
@media(prefers-color-scheme:dark){
  .aq-ref{
    --ink:#f0ece6;--ink2:#c4bfb8;--ink3:#706b64;
    --paper:#111110;--line:rgba(255,255,255,0.06);--line2:rgba(255,255,255,0.11);
    --sage:#5DCAA5;--sage-l:#0a2e1e;--sage-d:#9FE1CB;
    --amber:#EF9F27;
    --slate:#85B7EB;
    --stone:#9a9590;
  }
}

#page-assessment .aq-ref .app{max-width:none;padding:0}

#page-assessment .aq-ref .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}

#page-assessment .aq-ref .screen{display:none}
#page-assessment .aq-ref .screen.active{display:block}

/* ── Masthead ─────────────────────────────────────────── */
#page-assessment .aq-ref .masthead{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem;border-bottom:0.5px solid var(--line)}
#page-assessment .aq-ref .wordmark{font-family:'Cormorant Garamond',serif;font-size:21px;font-weight:500;color:var(--ink);letter-spacing:.01em}
#page-assessment .aq-ref .wordmark em{font-style:italic;color:var(--sage)}
#page-assessment .aq-ref .edition-pill{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink3);font-weight:400;border:0.5px solid var(--line2);padding:4px 10px;border-radius:20px}

/* ── Setup screen ─────────────────────────────────────── */
#page-assessment .aq-ref .hero-text{margin-bottom:1.75rem}
#page-assessment .aq-ref .hero-text h1{font-family:'Cormorant Garamond',serif;font-size:30px;font-weight:400;line-height:1.25;color:var(--ink);margin-bottom:.6rem}
#page-assessment .aq-ref .hero-text h1 em{font-style:italic;color:var(--sage)}
#page-assessment .aq-ref .hero-text p{font-size:13px;color:var(--ink3);line-height:1.75;font-weight:300;max-width:400px}

#page-assessment .aq-ref .meta-strip{display:flex;gap:0;margin-bottom:1.75rem;border-top:0.5px solid var(--line);border-bottom:0.5px solid var(--line)}
#page-assessment .aq-ref .meta-item{flex:1;padding:.9rem 0;border-right:0.5px solid var(--line)}
#page-assessment .aq-ref .meta-item:last-child{border-right:none}
#page-assessment .aq-ref .meta-item:not(:first-child){padding-left:1rem}
#page-assessment .aq-ref .meta-val{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:400;color:var(--ink)}
#page-assessment .aq-ref .meta-lbl{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink3);font-weight:300;margin-top:1px}

#page-assessment .aq-ref .invite-strip{border:0.5px solid var(--line2);border-radius:12px;padding:1rem 1.1rem;margin-bottom:1.5rem;background:linear-gradient(180deg,rgba(29,158,117,.08),rgba(29,158,117,.02));display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:center}
#page-assessment .aq-ref .invite-kicker{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--sage);font-weight:500;margin-bottom:.35rem}
#page-assessment .aq-ref .invite-title{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:400;line-height:1.2;color:var(--ink);margin-bottom:.35rem}
#page-assessment .aq-ref .invite-body{font-size:12px;color:var(--ink3);font-weight:300;line-height:1.65;max-width:360px}
#page-assessment .aq-ref .mini-orbit{width:118px;height:86px;border:0.5px solid var(--line2);border-radius:999px;position:relative;background:var(--paper)}
#page-assessment .aq-ref .mini-node{position:absolute;width:27px;height:27px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;color:var(--paper);background:var(--sage);font-weight:500}
#page-assessment .aq-ref .mini-node:nth-child(1){left:45px;top:29px;background:var(--ink)}
#page-assessment .aq-ref .mini-node:nth-child(2){left:14px;top:14px;background:var(--slate)}
#page-assessment .aq-ref .mini-node:nth-child(3){right:13px;top:18px;background:var(--amber)}
#page-assessment .aq-ref .mini-node:nth-child(4){left:24px;bottom:9px;background:var(--stone)}
#page-assessment .aq-ref .mini-node:nth-child(5){right:25px;bottom:8px;background:var(--sage)}

#page-assessment .aq-ref .preview-block{border-top:0.5px solid var(--line);border-bottom:0.5px solid var(--line);padding:1rem 0;margin-bottom:1.5rem}
#page-assessment .aq-ref .preview-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}
#page-assessment .aq-ref .preview-bubbles{display:flex;align-items:center;gap:6px}
#page-assessment .aq-ref .preview-bubble{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:0.5px solid var(--line2);font-size:11px;color:var(--ink2);background:var(--paper);font-family:'Cormorant Garamond',serif}
#page-assessment .aq-ref .preview-more{font-size:11px;color:var(--sage);font-weight:500;margin-left:2px}
#page-assessment .aq-ref .preview-copy{font-size:12px;color:var(--ink3);font-weight:300;line-height:1.65;text-align:right;max-width:245px}
#page-assessment .aq-ref .preview-copy strong{display:block;font-family:'Cormorant Garamond',serif;font-size:19px;font-weight:400;color:var(--ink);line-height:1.1;margin-bottom:.25rem}
#page-assessment .aq-ref .value-rows{display:grid;gap:.75rem}
#page-assessment .aq-ref .value-row{display:grid;grid-template-columns:34px 1fr;gap:.8rem;align-items:start;padding-top:.75rem;border-top:0.5px solid var(--line)}
#page-assessment .aq-ref .value-num{font-family:'Cormorant Garamond',serif;font-size:18px;color:var(--sage);font-weight:400}
#page-assessment .aq-ref .value-title{font-size:13px;color:var(--ink2);font-weight:400;margin-bottom:.2rem}
#page-assessment .aq-ref .value-copy{font-size:12px;color:var(--ink3);font-weight:300;line-height:1.6}

#page-assessment .aq-ref .field-block{margin-bottom:1.5rem}
#page-assessment .aq-ref .field-label{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink3);font-weight:400;margin-bottom:.5rem;display:block}
#page-assessment .aq-ref .field-input{width:100%;padding:11px 0;border:none;border-bottom:0.5px solid var(--line2);background:transparent;font-family:'DM Sans',sans-serif;font-size:15px;color:var(--ink);outline:none;font-weight:300;transition:border-color .2s}
#page-assessment .aq-ref .field-input:focus{border-bottom-color:var(--sage)}
#page-assessment .aq-ref .field-input::placeholder{color:var(--ink3)}
#page-assessment .aq-ref .form-msg{font-size:11px;color:var(--coral);line-height:1.5;min-height:16px;margin-top:-.65rem;margin-bottom:1rem}

#page-assessment .aq-ref .emoji-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:.6rem}
#page-assessment .aq-ref .emoji-tile{display:flex;flex-direction:column;align-items:center;gap:5px;padding:10px 6px 8px;border:0.5px solid var(--line2);border-radius:8px;cursor:pointer;transition:all .2s;background:transparent;position:relative}
#page-assessment .aq-ref .emoji-tile:hover{border-color:var(--sage);background:var(--sage-l)}
#page-assessment .aq-ref .emoji-tile.on{border-color:var(--sage);background:var(--sage-l)}
#page-assessment .aq-ref .emoji-tile.on::after{content:'';position:absolute;top:5px;right:5px;width:5px;height:5px;border-radius:50%;background:var(--sage)}
#page-assessment .aq-ref .emoji-char{font-size:22px;line-height:1}
#page-assessment .aq-ref .emoji-lbl{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink3);font-weight:400;text-align:center;line-height:1.2}
#page-assessment .aq-ref .emoji-tile.on .emoji-lbl{color:var(--sage-d)}

#page-assessment .aq-ref .topic-list{display:flex;flex-direction:column;margin-top:.5rem}
#page-assessment .aq-ref .topic-row{display:flex;align-items:center;justify-content:space-between;padding:11px 0;border-bottom:0.5px solid var(--line);cursor:pointer;transition:all .15s}
#page-assessment .aq-ref .topic-row:last-child{border-bottom:none}
#page-assessment .aq-ref .topic-left{display:flex;align-items:center;gap:10px}
#page-assessment .aq-ref .topic-em{font-size:16px;width:26px;text-align:center}
#page-assessment .aq-ref .topic-span{font-size:14px;color:var(--ink2);font-weight:300;transition:color .15s}
#page-assessment .aq-ref .topic-check{width:16px;height:16px;border-radius:50%;border:0.5px solid var(--line2);display:flex;align-items:center;justify-content:center;transition:all .15s;flex-shrink:0;font-size:9px;color:transparent}
#page-assessment .aq-ref .topic-row.on .topic-span{color:var(--sage)}
#page-assessment .aq-ref .topic-row.on .topic-check{background:var(--sage);border-color:var(--sage);color:#fff}

#page-assessment .aq-ref .begin-btn{width:100%;margin-top:2rem;padding:14px;background:var(--ink);color:var(--paper);border:none;border-radius:2px;font-family:'DM Sans',sans-serif;font-size:12px;font-weight:400;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:opacity .15s}
#page-assessment .aq-ref .begin-btn:hover{opacity:.8}

/* ── Quiz screen ──────────────────────────────────────── */
#page-assessment .aq-ref .q-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem;padding-bottom:.9rem;border-bottom:0.5px solid var(--line)}
#page-assessment .aq-ref .q-player{display:flex;align-items:center;gap:10px}
#page-assessment .aq-ref .q-badge-em{font-size:18px;width:34px;height:34px;border-radius:8px;border:0.5px solid var(--line2);display:flex;align-items:center;justify-content:center;background:var(--sage-l)}
#page-assessment .aq-ref .q-pname{font-size:13px;color:var(--ink2);font-weight:300}
#page-assessment .aq-ref .q-counter{font-size:11px;color:var(--ink3);font-weight:300;letter-spacing:.05em}

#page-assessment .aq-ref .prog-track{height:1px;background:var(--line);margin-bottom:1.75rem;overflow:hidden}
#page-assessment .aq-ref .prog-fill{height:100%;background:var(--sage);transition:width .5s ease}

#page-assessment .aq-ref .q-type-lbl{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink3);font-weight:300;margin-bottom:.9rem;display:flex;align-items:center;gap:8px}
#page-assessment .aq-ref .type-dot{width:5px;height:5px;border-radius:50%;flex-shrink:0}

#page-assessment .aq-ref .q-context{font-size:12px;color:var(--ink3);font-weight:300;line-height:1.7;margin-bottom:1.1rem;padding:10px 14px;border-left:1.5px solid var(--sage);background:var(--sage-l);border-radius:0 6px 6px 0;font-style:italic}
#page-assessment .aq-ref .q-text{font-family:'Cormorant Garamond',serif;font-size:21px;font-weight:400;line-height:1.4;color:var(--ink);margin-bottom:0}

#page-assessment .aq-ref .opt-list{display:flex;flex-direction:column;margin-top:1.25rem}
#page-assessment .aq-ref .opt-item{display:flex;align-items:flex-start;gap:14px;padding:12px 0;border-bottom:0.5px solid var(--line);cursor:pointer;transition:all .15s}
#page-assessment .aq-ref .opt-item:first-child{border-top:0.5px solid var(--line)}
#page-assessment .aq-ref .opt-letter{font-size:10px;color:var(--ink3);font-weight:400;letter-spacing:.08em;min-width:16px;margin-top:3px;transition:color .15s}
#page-assessment .aq-ref .opt-text{font-size:14px;color:var(--ink2);font-weight:300;line-height:1.5;transition:color .15s}
#page-assessment .aq-ref .opt-item:hover .opt-letter,#page-assessment .aq-ref .opt-item:hover .opt-text{color:var(--sage)}
#page-assessment .aq-ref .opt-item.correct .opt-letter,#page-assessment .aq-ref .opt-item.correct .opt-text{color:var(--sage)}
#page-assessment .aq-ref .opt-item.wrong .opt-letter,#page-assessment .aq-ref .opt-item.wrong .opt-text{color:var(--coral)}
#page-assessment .aq-ref .opt-item.sel .opt-letter,#page-assessment .aq-ref .opt-item.sel .opt-text{color:var(--sage)}
#page-assessment .aq-ref .opt-item.disabled{cursor:default}

#page-assessment .aq-ref .q-insight{margin-top:1.25rem;padding:1rem 0;border-top:0.5px solid var(--line);display:none}
#page-assessment .aq-ref .q-insight.show{display:block}
#page-assessment .aq-ref .insight-lbl{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink3);font-weight:300;margin-bottom:.4rem}
#page-assessment .aq-ref .insight-txt{font-size:13px;color:var(--ink2);font-weight:300;line-height:1.75}

#page-assessment .aq-ref .pts-flash{font-size:11px;color:var(--sage);font-weight:300;letter-spacing:.05em;margin-top:.6rem;display:none}
#page-assessment .aq-ref .pts-flash.show{display:block}

#page-assessment .aq-ref .cont-btn{width:100%;margin-top:1.25rem;padding:13px;background:transparent;border:0.5px solid var(--line2);color:var(--ink2);font-family:'DM Sans',sans-serif;font-size:11px;font-weight:400;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:all .15s;display:none;border-radius:2px}
#page-assessment .aq-ref .cont-btn.show{display:block}
#page-assessment .aq-ref .cont-btn:hover{border-color:var(--sage);color:var(--sage)}

/* ── Mid-quiz reveal (question 10) ───────────────────────── */
#page-assessment .aq-ref .mid-reveal{display:none}
#page-assessment .aq-ref .mid-reveal.show{display:block}
#page-assessment .aq-ref .mid-reveal-intro{font-size:13px;color:var(--ink3);font-weight:300;line-height:1.7;margin-bottom:1.1rem;text-align:center}
#page-assessment .aq-ref .mid-reveal-title{font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:400;text-align:center;margin-bottom:.5rem;color:var(--ink)}
#page-assessment .aq-ref .mid-reveal-title em{font-style:italic;color:var(--sage)}

/* ── Results screen ───────────────────────────────────── */
#page-assessment .aq-ref .res-head{margin-bottom:1.75rem;padding-bottom:1.25rem;border-bottom:0.5px solid var(--line)}
#page-assessment .aq-ref .res-name{font-family:'Cormorant Garamond',serif;font-size:30px;font-weight:400;color:var(--ink);line-height:1;display:flex;align-items:center;gap:12px}
#page-assessment .aq-ref .res-name-em{font-size:24px;width:44px;height:44px;border-radius:10px;border:0.5px solid var(--line2);display:flex;align-items:center;justify-content:center;background:var(--sage-l);flex-shrink:0}
#page-assessment .aq-ref .res-arch{font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:var(--ink3);font-weight:300;margin-top:.5rem}

#page-assessment .aq-ref .scores-row{display:flex;margin-bottom:1.75rem;border-top:0.5px solid var(--line);border-bottom:0.5px solid var(--line)}
#page-assessment .aq-ref .score-cell{flex:1;padding:.9rem 0;border-right:0.5px solid var(--line)}
#page-assessment .aq-ref .score-cell:last-child{border-right:none}
#page-assessment .aq-ref .score-cell:not(:first-child){padding-left:1rem}
#page-assessment .aq-ref .score-n{font-family:'Cormorant Garamond',serif;font-size:26px;font-weight:400;color:var(--ink)}
#page-assessment .aq-ref .score-n.sage{color:var(--sage)}#page-assessment .aq-ref .score-n.amber{color:var(--amber)}#page-assessment .aq-ref .score-n.stone{color:var(--stone)}#page-assessment .aq-ref .score-n.slate{color:var(--slate)}
#page-assessment .aq-ref .score-l{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink3);font-weight:300;margin-top:2px}

#page-assessment .aq-ref .circle-intro{font-size:13px;color:var(--ink3);font-weight:300;line-height:1.7;margin-bottom:1.1rem}

#page-assessment .aq-ref .canvas-wrap{position:relative;width:100%;margin-bottom:1rem}
#page-assessment .aq-ref canvas.orb{display:block;width:100%;height:340px}
#page-assessment .aq-ref .orb-tt{position:absolute;background:var(--paper);border:0.5px solid var(--line2);border-radius:6px;padding:10px 14px;font-size:12px;pointer-events:none;display:none;min-width:150px;z-index:10;box-shadow:0 4px 16px rgba(0,0,0,0.08)}
#page-assessment .aq-ref .ott-name{font-size:13px;font-weight:400;color:var(--ink);margin-bottom:5px;font-family:'Cormorant Garamond',serif}
#page-assessment .aq-ref .ott-row{display:flex;justify-content:space-between;gap:14px;color:var(--ink3);font-weight:300;margin-bottom:2px;font-size:12px}
#page-assessment .aq-ref .ott-val{color:var(--ink);font-weight:400}

#page-assessment .aq-ref .legend-row{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin-bottom:1.75rem}
#page-assessment .aq-ref .legend-item{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--ink3);font-weight:300}
#page-assessment .aq-ref .legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}

#page-assessment .aq-ref .section-lbl{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink3);font-weight:300;margin-bottom:.9rem;padding-bottom:.6rem;border-bottom:0.5px solid var(--line)}
#page-assessment .aq-ref .gap-row{display:flex;align-items:center;justify-content:space-between;padding:9px 0;border-bottom:0.5px solid var(--line);font-size:13px;font-weight:300}
#page-assessment .aq-ref .gap-row:last-child{border-bottom:none}
#page-assessment .aq-ref .gap-topic{color:var(--ink2)}
#page-assessment .aq-ref .gap-status{font-size:10px;letter-spacing:.06em;text-transform:uppercase;font-weight:400}
#page-assessment .aq-ref .gap-status.know{color:var(--sage)}#page-assessment .aq-ref .gap-status.grow{color:var(--ink3)}

#page-assessment .aq-ref .wl-block{padding:1.5rem 0;border-top:0.5px solid var(--line);border-bottom:0.5px solid var(--line);margin-bottom:1.75rem;margin-top:1.75rem}
#page-assessment .aq-ref .wl-hed{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:400;color:var(--ink);margin-bottom:.4rem}
#page-assessment .aq-ref .wl-sub{font-size:13px;color:var(--ink3);font-weight:300;line-height:1.7;margin-bottom:1.1rem}
#page-assessment .aq-ref .wl-row{display:flex;gap:10px}
#page-assessment .aq-ref .wl-input{flex:1;padding:10px 0;border:none;border-bottom:0.5px solid var(--line2);background:transparent;font-family:'DM Sans',sans-serif;font-size:14px;color:var(--ink);outline:none;font-weight:300}
#page-assessment .aq-ref .wl-input:focus{border-bottom-color:var(--sage)}
#page-assessment .aq-ref .wl-input::placeholder{color:var(--ink3)}
#page-assessment .aq-ref .wl-btn{padding:10px 20px;background:var(--ink);color:var(--paper);border:none;font-family:'DM Sans',sans-serif;font-size:11px;font-weight:400;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border-radius:2px;white-space:nowrap;transition:opacity .15s}
#page-assessment .aq-ref .wl-btn:hover{opacity:.8}

#page-assessment .aq-ref .act-pair{display:flex;gap:10px;margin-bottom:1.25rem}
#page-assessment .aq-ref .act-btn{flex:1;padding:12px;background:transparent;border:0.5px solid var(--line2);color:var(--ink2);font-family:'DM Sans',sans-serif;font-size:11px;font-weight:400;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:all .15s;border-radius:2px;text-align:center}
#page-assessment .aq-ref .act-btn:hover{border-color:var(--sage);color:var(--sage)}

#page-assessment .aq-ref .retake-lnk{text-align:center;font-size:12px;color:var(--ink3);cursor:pointer;font-weight:300;letter-spacing:.05em;text-decoration:underline;text-underline-offset:3px}

#page-assessment .aq-ref .note{text-align:center;font-size:11px;color:var(--ink3);font-weight:300;margin-top:.5rem;margin-bottom:1.5rem;line-height:1.6}

#page-assessment .aq-ref{background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-weight:300;min-height:calc(100vh - 64px)}
#page-assessment .aq-ref .app{max-width:none;padding:0}
#page-assessment .aq-ref .begin-btn,#page-assessment .aq-ref .wl-btn{background:var(--ink);color:var(--paper)}
@media(max-width:560px){
  #page-assessment .aq-ref .invite-strip{grid-template-columns:1fr}
  #page-assessment .aq-ref .mini-orbit{width:100%;height:82px}
  #page-assessment .aq-ref .preview-top{display:grid}
  #page-assessment .aq-ref .preview-copy{text-align:left;max-width:none}
}
/* — Accord orbit — */
#page-assessment .aq-ref .accord-orbit-block{margin-bottom:1.5rem;text-align:center}
#page-assessment .aq-ref .orbit-kicker{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--sage);font-weight:500;margin-bottom:.5rem}
#page-assessment .aq-ref .accord-orbit-canvas{width:100%;display:block}
#page-assessment .aq-ref .orbit-foot{font-size:11px;color:var(--ink3);font-weight:300;margin-top:.35rem;font-style:italic}
/* — Predict block — */
#page-assessment .aq-ref .predict-block{margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:0.5px solid var(--line)}
#page-assessment .aq-ref .predict-kicker{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--sage);font-weight:500;margin-bottom:.35rem}
#page-assessment .aq-ref .predict-h{font-family:'Cormorant Garamond',serif;font-size:19px;font-weight:400;line-height:1.35;color:var(--ink);margin-bottom:.25rem}
#page-assessment .aq-ref .predict-sub{font-size:12px;color:var(--ink3);font-weight:300;line-height:1.6;margin-bottom:.9rem}
#page-assessment .aq-ref .predict-score-row{display:flex;align-items:baseline;gap:.55rem;margin-bottom:1rem}
#page-assessment .aq-ref .predict-score-val{font-family:'Cormorant Garamond',serif;font-size:44px;font-weight:400;color:var(--ink);line-height:1;transition:color .3s}
#page-assessment .aq-ref .predict-tier-lbl{font-size:13px;color:var(--ink3);font-weight:300;transition:color .3s}
#page-assessment .aq-ref .predict-track-outer{position:relative;padding-top:52px;margin-bottom:.55rem;user-select:none}
#page-assessment .aq-ref .predict-bubble{position:absolute;top:0;transform:translateX(-50%);pointer-events:none;transition:left .12s cubic-bezier(.34,1.4,.64,1)}
#page-assessment .aq-ref .predict-bubble-inner{background:var(--ink);border-radius:8px;padding:.45rem .9rem;text-align:center;min-width:72px;transition:background .3s}
#page-assessment .aq-ref .predict-bubble-pct{font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:400;color:var(--paper);line-height:1;display:block}
#page-assessment .aq-ref .predict-bubble-lbl{font-size:9px;font-weight:300;color:rgba(250,250,247,0.65);display:block;margin-top:1px;white-space:nowrap}
#page-assessment .aq-ref .predict-bubble-arrow{width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid var(--ink);margin:0 auto;transition:border-top-color .3s}
#page-assessment .aq-ref .predict-track-hit{position:relative;height:28px;display:flex;align-items:center;cursor:pointer}
#page-assessment .aq-ref .predict-track-bg{position:absolute;left:0;right:0;height:3px;background:var(--line2);border-radius:2px;overflow:hidden}
#page-assessment .aq-ref .predict-track-fill{height:100%;border-radius:2px;background:var(--sage);transition:width .12s cubic-bezier(.34,1.4,.64,1),background .3s}
#page-assessment .aq-ref .predict-avg-pin{position:absolute;top:50%;transform:translateY(-50%);left:53%;width:1.5px;height:14px;background:var(--amber);border-radius:1px;pointer-events:none}
#page-assessment .aq-ref .predict-avg-lbl{position:absolute;bottom:-16px;left:50%;transform:translateX(-50%);font-size:8px;color:var(--amber);white-space:nowrap;font-weight:500}
#page-assessment .aq-ref .predict-thumb{position:absolute;top:50%;transform:translate(-50%,-50%);width:20px;height:20px;border-radius:50%;background:var(--paper);border:2px solid var(--sage);transition:left .12s cubic-bezier(.34,1.4,.64,1),border-color .3s;box-shadow:0 1px 5px rgba(0,0,0,0.15);pointer-events:none}
#page-assessment .aq-ref .predict-ticks{display:flex;margin-top:.55rem}
#page-assessment .aq-ref .predict-tick{flex:1;font-size:9px;color:rgba(13,13,13,0.2);font-weight:300;text-align:center;line-height:1.3;transition:color .25s}
#page-assessment .aq-ref .predict-tick.seen{color:var(--ink3)}
#page-assessment .aq-ref .predict-social{font-size:12px;color:var(--ink3);font-weight:300;margin-top:.6rem}
#page-assessment .aq-ref .nyc-pill{display:inline-block;font-size:9px;text-transform:uppercase;letter-spacing:.08em;background:var(--sage-l);color:var(--sage-d);border:0.5px solid var(--sage);border-radius:3px;padding:.15rem .4rem;margin-left:.3rem;vertical-align:middle}
/* — Result card — */
#page-assessment .aq-ref .res-card{background:var(--paper);border:0.5px solid rgba(0,0,0,0.09);border-radius:16px;padding:1.75rem 1.5rem;position:relative;overflow:hidden;margin-bottom:1.5rem}
#page-assessment .aq-ref .res-card-bg-arc{position:absolute;top:-80px;right:-80px;width:220px;height:220px;border-radius:50%;border:0.5px solid rgba(29,158,117,0.12);pointer-events:none}
#page-assessment .aq-ref .res-card-bg-arc2{position:absolute;top:-55px;right:-55px;width:160px;height:160px;border-radius:50%;border:0.5px solid rgba(29,158,117,0.08);pointer-events:none}
#page-assessment .aq-ref .res-card-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.4rem}
#page-assessment .aq-ref .res-card-wordmark{display:flex;flex-direction:column;gap:1px}
#page-assessment .aq-ref .res-card-logo-line{font-size:13px;font-weight:400;color:var(--ink);line-height:1}
#page-assessment .aq-ref .res-card-logo-line em{font-family:'Cormorant Garamond',serif;font-style:italic;color:var(--sage)}
#page-assessment .aq-ref .res-card-result-line{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink3);font-weight:300;margin-top:3px}
#page-assessment .aq-ref .res-card-tier-badge{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink3);font-weight:300;text-align:right;line-height:1.4;transition:color .3s}
#page-assessment .aq-ref .res-card-type{font-family:'Cormorant Garamond',serif;font-size:40px;font-weight:400;line-height:1.05;color:var(--ink);margin-bottom:1.1rem}
#page-assessment .aq-ref .res-quote-block{cursor:pointer;position:relative;margin-bottom:1.25rem;padding:.85rem 1rem;background:rgba(0,0,0,0.025);border-radius:8px;border:0.5px solid rgba(0,0,0,0.06);transition:background .15s}
#page-assessment .aq-ref .res-quote-block:hover{background:rgba(0,0,0,0.04)}
#page-assessment .aq-ref .res-quote-text{font-family:'Cormorant Garamond',serif;font-size:16px;font-weight:400;font-style:italic;line-height:1.55;color:var(--ink2);transition:opacity .2s}
#page-assessment .aq-ref .res-quote-dots{display:flex;gap:3px;margin-top:.4rem}
#page-assessment .aq-ref .res-quote-dot{width:4px;height:4px;border-radius:50%;background:rgba(0,0,0,0.12);transition:background .2s}
#page-assessment .aq-ref .res-quote-dot.active{background:var(--ink)}
#page-assessment .aq-ref .res-quote-hint{font-size:9px;color:var(--ink3);margin-top:.5rem;display:flex;align-items:center;gap:.3rem;font-weight:300}
#page-assessment .aq-ref .res-card-rule{height:0.5px;background:var(--line);margin-bottom:1.1rem}
#page-assessment .aq-ref .res-card-data{display:flex;align-items:center;margin-bottom:1.25rem}
#page-assessment .aq-ref .res-data-score{flex:0 0 auto;margin-right:1rem}
#page-assessment .aq-ref .res-score-num{font-family:'Cormorant Garamond',serif;font-size:52px;font-weight:400;line-height:1;transition:color .3s}
#page-assessment .aq-ref .res-score-lbl{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink3);font-weight:300;margin-top:2px}
#page-assessment .aq-ref .res-data-divider{width:0.5px;height:44px;background:rgba(0,0,0,0.08);margin-right:1rem;flex-shrink:0}
#page-assessment .aq-ref .res-data-gap{flex:1}
#page-assessment .aq-ref .res-gap-pred{font-size:11px;color:var(--ink3);font-weight:300;margin-bottom:.2rem}
#page-assessment .aq-ref .res-gap-delta{font-size:13px;font-weight:400;transition:color .3s}
#page-assessment .aq-ref .res-gap-note{font-size:10px;color:var(--ink3);font-weight:300}
#page-assessment .aq-ref .res-data-divider2{width:0.5px;height:44px;background:rgba(0,0,0,0.08);margin:0 1rem;flex-shrink:0}
#page-assessment .aq-ref .res-data-rank{text-align:right}
#page-assessment .aq-ref .res-rank-num{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:400;line-height:1;transition:color .3s}
#page-assessment .aq-ref .res-rank-lbl{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink3);font-weight:300;margin-top:2px;line-height:1.3}
#page-assessment .aq-ref .res-share-btn{width:100%;padding:.7rem;background:var(--ink);color:var(--paper);border:none;border-radius:8px;font-size:13px;font-family:'DM Sans',sans-serif;font-weight:400;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;letter-spacing:.01em}
#page-assessment .aq-ref .res-share-btn:hover{opacity:.88}
/* — Gap reveal — */
#page-assessment .aq-ref .gap-reveal{margin-bottom:1.5rem;padding:1.15rem 1.25rem;background:var(--paper);border:0.5px solid var(--line2);border-radius:14px}
#page-assessment .aq-ref .gap-reveal-kicker{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--sage);font-weight:500;margin-bottom:.5rem}
#page-assessment .aq-ref .gap-bar-row{margin-bottom:.5rem}
#page-assessment .aq-ref .gap-bar-meta{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.28rem}
#page-assessment .aq-ref .gap-bar-label{font-size:10px;color:var(--ink3);font-weight:300}
#page-assessment .aq-ref .gap-bar-val{font-family:'Cormorant Garamond',serif;font-size:14px;font-weight:400;transition:color .3s}
#page-assessment .aq-ref .gap-bar-track{height:7px;background:rgba(0,0,0,0.07);border-radius:4px;overflow:hidden}
#page-assessment .aq-ref .gap-bar-fill{height:100%;border-radius:4px;transition:width .65s cubic-bezier(.4,0,.2,1)}
#page-assessment .aq-ref .gap-rule{height:0.5px;background:var(--line);margin:.7rem 0}
#page-assessment .aq-ref .gap-bottom{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}
#page-assessment .aq-ref .gap-narr{font-family:'Cormorant Garamond',serif;font-size:18px;font-weight:400;line-height:1.3;color:var(--ink)}
#page-assessment .aq-ref .gap-narr-sub{font-size:11px;color:var(--ink3);font-weight:300;line-height:1.55;margin-top:.3rem}
#page-assessment .aq-ref .gap-delta-pill{flex-shrink:0;display:inline-flex;align-items:center;border-radius:4px;padding:.25rem .6rem;font-size:11px;font-weight:400;white-space:nowrap;margin-top:.15rem}
#page-assessment .aq-ref .gap-delta-pill.pos{background:#e8f5f0;color:#0F6E56}
#page-assessment .aq-ref .gap-delta-pill.neg{background:#faeeda;color:#633806}
#page-assessment .aq-ref .gap-delta-pill.zero{background:rgba(0,0,0,0.05);color:var(--ink2)}
/* — Comparison hook — */
#page-assessment .aq-ref .comp-block{margin-bottom:1.5rem}
#page-assessment .aq-ref .comp-kicker{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--sage);font-weight:500;margin-bottom:.4rem}
#page-assessment .aq-ref .comp-h{font-family:'Cormorant Garamond',serif;font-size:21px;font-weight:400;line-height:1.2;color:var(--ink);margin-bottom:.25rem}
#page-assessment .aq-ref .comp-sub{font-size:11px;color:var(--ink3);font-weight:300;line-height:1.5;margin-bottom:.85rem}
#page-assessment .aq-ref .comp-av-row{display:flex;gap:.45rem;margin-bottom:.85rem}
#page-assessment .aq-ref .comp-av{display:flex;flex-direction:column;align-items:center;gap:.28rem}
#page-assessment .aq-ref .comp-avc{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:400;flex-shrink:0}
#page-assessment .aq-ref .comp-avc.you{background:var(--sage);color:var(--paper);font-size:10px;font-weight:500}
#page-assessment .aq-ref .comp-avc.ghost{background:var(--paper);border:1.5px dashed rgba(0,0,0,0.2);color:rgba(0,0,0,0.22);font-size:15px}
#page-assessment .aq-ref .comp-av-nm{font-size:9px;color:var(--ink3);font-weight:300;max-width:42px;text-align:center;line-height:1.2}
#page-assessment .aq-ref .comp-av-sc{font-family:'Cormorant Garamond',serif;font-size:12px;font-weight:400;color:var(--ink)}
#page-assessment .aq-ref .comp-av-sc.sage{color:var(--sage)}
#page-assessment .aq-ref .comp-guess{background:rgba(0,0,0,0.025);border-radius:10px;border:0.5px solid rgba(0,0,0,0.07);padding:.8rem .85rem .75rem;margin-bottom:.85rem}
#page-assessment .aq-ref .comp-guess-kicker{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink3);font-weight:500;margin-bottom:.5rem}
#page-assessment .aq-ref .comp-name-input{width:100%;height:30px;font-size:12px;padding:0 .55rem;border-radius:6px;border:0.5px solid rgba(0,0,0,0.15);background:var(--paper);font-family:'DM Sans',sans-serif;color:var(--ink);margin-bottom:.6rem;outline:none}
#page-assessment .aq-ref .comp-name-input:focus{border-color:var(--sage)}
#page-assessment .aq-ref .comp-where{font-size:10px;color:var(--ink3);font-weight:300;margin-bottom:.35rem}
#page-assessment .aq-ref .comp-where em{color:var(--ink);font-style:normal;font-weight:400}
#page-assessment .aq-ref .comp-track-outer{position:relative;padding-top:36px;margin-bottom:.35rem;user-select:none}
#page-assessment .aq-ref .comp-bubble{position:absolute;top:0;pointer-events:none;transition:left .1s cubic-bezier(.34,1.4,.64,1)}
#page-assessment .aq-ref .comp-bubble-inner{background:var(--ink);border-radius:6px;padding:.28rem .6rem;text-align:center;min-width:54px;transition:background .3s}
#page-assessment .aq-ref .comp-bubble-pct{font-family:'Cormorant Garamond',serif;font-size:17px;font-weight:400;color:var(--paper);display:block;line-height:1}
#page-assessment .aq-ref .comp-bubble-lbl{font-size:8px;font-weight:300;color:rgba(250,250,247,0.6);display:block;margin-top:1px;white-space:nowrap}
#page-assessment .aq-ref .comp-bubble-arrow{width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid var(--ink);margin:0 auto;transition:border-top-color .3s}
#page-assessment .aq-ref .comp-track-hit{position:relative;height:22px;display:flex;align-items:center;cursor:pointer}
#page-assessment .aq-ref .comp-track-bg{position:absolute;left:0;right:0;height:3px;background:var(--line2);border-radius:2px;overflow:hidden}
#page-assessment .aq-ref .comp-track-fill{height:100%;background:var(--sage);border-radius:2px;transition:width .1s cubic-bezier(.34,1.4,.64,1),background .3s}
#page-assessment .aq-ref .comp-track-thumb{position:absolute;top:50%;transform:translate(-50%,-50%);width:14px;height:14px;border-radius:50%;background:var(--paper);border:2px solid var(--sage);pointer-events:none;transition:left .1s cubic-bezier(.34,1.4,.64,1),border-color .3s}
#page-assessment .aq-ref .comp-ticks{display:flex;margin-top:.35rem;margin-bottom:.75rem}
#page-assessment .aq-ref .comp-tick{flex:1;font-size:8px;color:rgba(13,13,13,0.2);font-weight:300;text-align:center;line-height:1.2;transition:color .2s}
#page-assessment .aq-ref .comp-tick.on{color:var(--ink3)}
#page-assessment .aq-ref .comp-cta{width:100%;display:flex;align-items:center;justify-content:center;gap:.4rem;background:var(--ink);color:var(--paper);border:none;border-radius:8px;padding:.62rem 1rem;font-size:12px;font-family:'DM Sans',sans-serif;font-weight:400;cursor:pointer;letter-spacing:.01em}
#page-assessment .aq-ref .comp-cta:hover{opacity:.88}
/* — Share modal — */
#page-assessment .share-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.55);z-index:9000;display:flex;align-items:center;justify-content:center;padding:1.25rem;opacity:0;pointer-events:none;transition:opacity .2s}
#page-assessment .share-modal-overlay.open{opacity:1;pointer-events:auto}
#page-assessment .share-modal{background:var(--paper,#fafaf7);border-radius:16px;padding:1.5rem;width:100%;max-width:360px;position:relative}
#page-assessment .share-modal-close{position:absolute;top:.9rem;right:.9rem;width:28px;height:28px;border-radius:50%;background:rgba(0,0,0,0.06);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--ink3,#8a8580);line-height:1}
#page-assessment .share-modal-close:hover{background:rgba(0,0,0,0.1)}
#page-assessment .share-modal-kicker{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--sage,#1D9E75);font-weight:500;margin-bottom:.55rem}
#page-assessment .share-preview-wrap{background:#eeecea;border-radius:10px;padding:.75rem;display:flex;justify-content:center;margin-bottom:1rem}
#page-assessment .share-preview-canvas{display:block;width:164px;height:291px;border-radius:7px}
#page-assessment .share-btn-group{display:flex;gap:.5rem;margin-bottom:.65rem}
#page-assessment .share-btn-group button{flex:1;padding:.6rem;border-radius:8px;font-size:12px;font-family:'DM Sans',sans-serif;font-weight:400;cursor:pointer;border:0.5px solid rgba(0,0,0,0.15);background:var(--paper,#fafaf7);color:var(--ink,#0d0d0d);transition:background .15s}
#page-assessment .share-btn-group button.primary{background:var(--ink,#0d0d0d);color:var(--paper,#fafaf7);border-color:var(--ink,#0d0d0d)}
#page-assessment .share-btn-group button:hover:not(.primary){background:rgba(0,0,0,0.05)}
#page-assessment .share-btn-group button.primary:hover{opacity:.88}
#page-assessment .share-modal-link{font-size:11px;color:var(--ink3,#8a8580);text-align:center;cursor:pointer;font-weight:300;text-decoration:underline;text-underline-offset:3px}

/* ══ FULL-WIDTH QUIZ LAYOUT ══════════════════════════════ */

/* Masthead — full width paper bar */
#page-assessment .aq-ref .masthead{display:flex;align-items:center;justify-content:space-between;padding:1.2rem 3rem;border-bottom:0.5px solid rgba(13,13,13,.07);background:var(--paper);margin-bottom:0}
#page-assessment .aq-ref .wordmark{font-family:'Cormorant Garamond',serif;font-size:21px;font-weight:500;color:var(--ink);letter-spacing:.01em}
#page-assessment .aq-ref .wordmark em{font-style:italic;color:var(--sage)}
#page-assessment .aq-ref .edition-pill{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink3);font-weight:400;border:0.5px solid rgba(13,13,13,.12);padding:4px 10px;border-radius:20px;background:transparent}

/* Setup screen — paper background, full height */
#page-assessment #s-setup{background:var(--paper);min-height:100vh;padding-bottom:5rem}

/* Hero text — large + centered */
#page-assessment #s-setup .hero-text{text-align:center;padding:4rem 2rem 1.5rem;max-width:860px;margin:0 auto}
#page-assessment #s-setup .hero-text h1{font-family:'Cormorant Garamond',serif;font-size:clamp(2.6rem,5vw,3.8rem);font-weight:400;line-height:1.08;color:var(--ink);margin-bottom:.85rem}
#page-assessment #s-setup .hero-text h1 em{font-style:italic;color:var(--sage)}
#page-assessment #s-setup .hero-text p{font-size:14px;color:var(--ink3);line-height:1.8;font-weight:300;max-width:460px;margin:0 auto}

/* Orbit canvas */
#page-assessment #s-setup .accord-orbit-block{margin:0 auto 1rem;text-align:center;max-width:520px;padding:0 2rem}
#page-assessment #s-setup .orbit-kicker{font-size:9px;text-transform:uppercase;letter-spacing:.15em;color:var(--sage);font-weight:500;margin-bottom:.65rem}
#page-assessment #s-setup .accord-orbit-canvas{width:100%;display:block}
#page-assessment #s-setup .orbit-foot{font-size:11px;color:var(--ink3);font-weight:300;margin-top:.5rem;font-style:italic}

/* Meta strip */
#page-assessment #s-setup .meta-strip{display:flex;gap:0;max-width:520px;margin:0 auto 2.5rem;border-top:0.5px solid rgba(13,13,13,.07);border-bottom:0.5px solid rgba(13,13,13,.07)}
#page-assessment #s-setup .meta-item{flex:1;padding:.9rem 0;border-right:0.5px solid rgba(13,13,13,.07);text-align:center}
#page-assessment #s-setup .meta-item:last-child{border-right:none}
#page-assessment #s-setup .meta-val{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:400;color:var(--ink)}
#page-assessment #s-setup .meta-lbl{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink3);font-weight:300;margin-top:2px}

/* Preview / predict block */
#page-assessment #s-setup .preview-block{max-width:520px;margin:0 auto 2rem;padding:0 2rem;border:none}
#page-assessment #s-setup .predict-block{padding-bottom:1.5rem;border-bottom:0.5px solid rgba(13,13,13,.07);margin-bottom:0}
#page-assessment #s-setup .predict-kicker{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--sage);font-weight:500;margin-bottom:.5rem}
#page-assessment #s-setup .predict-h{font-family:'Cormorant Garamond',serif;font-size:21px;font-weight:400;color:var(--ink);line-height:1.3;margin-bottom:.35rem}
#page-assessment #s-setup .predict-sub{font-size:12px;color:var(--ink3);font-weight:300;line-height:1.65;margin-bottom:.75rem}
#page-assessment #s-setup .predict-score-val{font-family:'Cormorant Garamond',serif;font-size:30px;font-weight:400;color:var(--ink)}
#page-assessment #s-setup .predict-tier-lbl{color:var(--sage)}
#page-assessment #s-setup .predict-track-bg{background:rgba(13,13,13,.06)}
#page-assessment #s-setup .predict-avg-lbl{color:var(--ink3)}
#page-assessment #s-setup .predict-tick{color:var(--ink3);font-size:10px}
#page-assessment #s-setup .predict-tick.seen{color:var(--ink2)}
#page-assessment #s-setup .predict-social{font-size:11px;color:var(--ink3);margin-top:.65rem}
#page-assessment #s-setup .value-rows{margin-top:1.5rem}
#page-assessment #s-setup .value-row{border-top-color:rgba(13,13,13,.06)}
#page-assessment #s-setup .value-num{color:var(--sage)}
#page-assessment #s-setup .value-title{color:var(--ink2);font-size:13px}
#page-assessment #s-setup .value-copy{color:var(--ink3);font-size:12px}

/* Form fields */
#page-assessment #s-setup .field-block{max-width:520px;margin:0 auto 1.5rem;padding:0 2rem}
#page-assessment #s-setup .field-label{color:var(--ink3)}
#page-assessment #s-setup .field-input{color:var(--ink);border-bottom-color:rgba(13,13,13,.12)}
#page-assessment #s-setup .field-input::placeholder{color:var(--ink3)}
#page-assessment #s-setup .field-input:focus{border-bottom-color:var(--sage)}
#page-assessment #s-setup .form-msg{max-width:520px;margin-left:auto;margin-right:auto;padding:0 2rem}
#page-assessment #s-setup .topic-row{border-bottom-color:rgba(13,13,13,.06)}
#page-assessment #s-setup .topic-span{color:var(--ink2)}
#page-assessment #s-setup .topic-check{border-color:rgba(13,13,13,.14)}
#page-assessment #s-setup .topic-em{opacity:.75}

/* Begin button */
#page-assessment #s-setup .begin-btn{display:block;max-width:480px;margin:2.5rem auto 0;padding:16px;background:var(--sage);color:#fff;border:none;border-radius:4px;font-family:'DM Sans',sans-serif;font-size:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:background .2s,transform .15s;width:calc(100% - 4rem)}
#page-assessment #s-setup .begin-btn:hover{background:var(--sage-d);transform:translateY(-1px)}

/* ── Quiz question screen ── */
#page-assessment #s-quiz{background:var(--paper);min-height:100vh}
#page-assessment #s-quiz .masthead{background:var(--paper);border-bottom:0.5px solid rgba(13,13,13,.07)}

/* Question area — wider, more dramatic */
#page-assessment #s-quiz #q-view{max-width:780px;margin:0 auto;padding:3rem 2rem 5rem}
#page-assessment #s-quiz .prog-track{height:3px;background:rgba(29,158,117,.1);border-radius:2px;margin-bottom:2.75rem;overflow:visible}

/* Big serif question */
#page-assessment #s-quiz .q-text{font-family:'Cormorant Garamond',serif;font-size:clamp(1.7rem,3.2vw,2.25rem);font-weight:400;line-height:1.32;color:var(--ink)}
#page-assessment #s-quiz .q-type-lbl{margin-bottom:1.4rem}

/* Options as bordered cards */
#page-assessment #s-quiz .opt-list{margin-top:2.25rem;display:grid;gap:.65rem;flex-direction:unset}
#page-assessment #s-quiz .opt-item{display:grid;grid-template-columns:28px 1fr;align-items:start;gap:14px;padding:1.1rem 1.25rem;border:0.5px solid var(--line2);border-radius:9px;cursor:pointer;transition:border-color .18s,background .18s,transform .15s;background:var(--paper)}
#page-assessment #s-quiz .opt-item:first-child{border-top:0.5px solid var(--line2)}
#page-assessment #s-quiz .opt-item:hover{border-color:var(--sage);background:var(--sage-l);transform:translateX(3px)}
#page-assessment #s-quiz .opt-item.sel{border-color:var(--sage);background:var(--sage-l)}
#page-assessment #s-quiz .opt-item.correct{border-color:var(--sage);background:var(--sage-l)}
#page-assessment #s-quiz .opt-item.wrong{border-color:var(--coral);background:rgba(216,90,48,.04)}
#page-assessment #s-quiz .opt-item.disabled{transform:none}
#page-assessment #s-quiz .opt-letter{width:26px;height:26px;border-radius:50%;border:0.5px solid var(--line2);display:flex;align-items:center;justify-content:center;font-size:9px;letter-spacing:.08em;color:var(--ink3);transition:all .18s;flex-shrink:0;padding-top:0;min-width:unset;margin-top:1px}
#page-assessment #s-quiz .opt-item:hover .opt-letter,#page-assessment #s-quiz .opt-item.sel .opt-letter{border-color:var(--sage);color:var(--sage)}
#page-assessment #s-quiz .opt-item.correct .opt-letter{border-color:var(--sage);color:var(--sage)}
#page-assessment #s-quiz .opt-item.wrong .opt-letter{border-color:var(--coral);color:var(--coral)}
#page-assessment #s-quiz .opt-text{font-size:15px;font-weight:300;line-height:1.55;padding-top:4px}
#page-assessment #s-quiz .cont-btn{margin-top:2rem;border-radius:4px;padding:14px;font-size:11px;letter-spacing:.1em}
#page-assessment #s-quiz .q-insight{border-radius:8px;background:var(--sage-l);padding:1rem 1.25rem;border-left:2.5px solid var(--sage);border-top:none;margin-top:1.25rem}

/* Mid-reveal area */
#page-assessment #s-quiz .mid-reveal{max-width:620px;margin:0 auto;padding:3rem 2rem}

/* Assessment layout */

.an-wrap{max-width:1080px;margin:0 auto}
.an-kicker{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--teal);font-weight:600;margin-bottom:.9rem}
.an-copy{max-width:760px;text-align:center;margin:0 auto 3rem}
.an-copy .sh{font-size:clamp(2rem,3.3vw,3rem)}
.an-copy .sub{max-width:720px;margin-left:auto;margin-right:auto}
.an-workspace{border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:2rem 0 2.25rem}
.an-input-top{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;margin-bottom:1rem}
.an-input-title{font-family:'Playfair Display',serif;font-size:1.25rem;font-weight:600;color:var(--ink)}
.an-input-note{font-size:.82rem;color:var(--ink-mute);line-height:1.6;max-width:420px;text-align:right}
.an-input-tabs{display:inline-flex;background:var(--card);border:1px solid var(--border);border-radius:999px;padding:.2rem;gap:.2rem}
.an-input-tab{border:none;background:transparent;border-radius:999px;padding:.38rem .85rem;font-family:'DM Sans',sans-serif;font-size:.78rem;font-weight:700;color:var(--ink-mute);cursor:pointer;transition:all .2s}
.an-input-tab.active{background:var(--ink);color:#fff}
.an-source-row{display:grid;grid-template-columns:1fr auto;gap:.75rem;margin-bottom:1rem}
.an-url-input{width:100%;background:var(--card);border:1px solid var(--border);border-radius:8px;padding:.82rem 1rem;font-family:'DM Sans',sans-serif;font-size:.9rem;color:var(--ink);outline:none;transition:border-color .2s,box-shadow .2s}
.an-url-input:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(13,155,142,.08)}
.an-fetch-btn{background:var(--ink);color:#fff;border:none;padding:.82rem 1.15rem;border-radius:8px;font-family:'DM Sans',sans-serif;font-size:.82rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:background .2s}
.an-fetch-btn:hover{background:var(--ink-mid)}
.an-fetch-btn:disabled{background:var(--ink-mute);cursor:not-allowed}
.an-source-card{display:none;border:1px solid var(--border);background:var(--card);border-radius:10px;padding:1rem 1.15rem;margin-bottom:1rem}
.an-source-card.show{display:block}
.an-source-card p{font-size:.82rem;color:var(--ink-mid);line-height:1.65;margin:.2rem 0}
.an-source-card strong{color:var(--ink)}
.an-input-area{width:100%;min-height:310px;background:var(--white);border:1px solid var(--border);border-radius:8px;padding:1.35rem 1.45rem;font-family:'DM Sans',sans-serif;font-size:.98rem;color:var(--ink);outline:none;resize:vertical;transition:border-color .2s,box-shadow .2s;line-height:1.85}
.an-input-area:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(13,155,142,.08)}
.an-actions{display:flex;align-items:center;gap:1rem;margin-top:1rem;flex-wrap:wrap}
.an-analyze-btn{background:var(--teal);color:#fff;border:none;padding:.82rem 1.45rem;border-radius:8px;font-family:'DM Sans',sans-serif;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .2s}
.an-analyze-btn:hover{background:var(--teal-d)}
.an-analyze-btn:disabled{background:var(--ink-mute);cursor:not-allowed}
.an-try-sample{background:transparent;border:none;color:var(--ink-mid);font-family:'DM Sans',sans-serif;font-size:.82rem;font-weight:500;cursor:pointer;text-decoration:underline;text-underline-offset:4px}
.an-status{font-size:.78rem;color:var(--ink-mute);margin-left:auto}
.an-result{display:none;margin-top:2rem}
.an-result.show{display:block}
.an-result-head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:2rem;align-items:start;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:1.35rem 0;margin-bottom:1.35rem}
.an-summary{font-family:'Playfair Display',serif;font-size:1.28rem;line-height:1.45;color:var(--ink);max-width:760px}
.an-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}
.an-metrics>div{border:1px solid var(--border);background:var(--card);border-radius:10px;padding:.85rem}
.an-metric-lbl{font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute);font-weight:600;margin-bottom:.35rem}
.an-metric-val{font-size:.98rem;color:var(--ink);font-weight:600}
.an-analysis-workbench{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);gap:1.35rem;align-items:start}
.an-article-pane,.an-insight-panel{min-width:0}
.an-article-pane{border:1px solid var(--border);border-radius:14px;background:var(--white);padding:1rem}
.an-pane-label{font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--teal);font-weight:700;margin-bottom:.9rem}
.an-pane-hint{font-size:.74rem;color:var(--ink-mute);line-height:1.55;margin-top:.8rem}
.an-highlighted-text{min-height:520px;max-height:min(72vh,760px);overflow:auto;border:1px solid var(--border);border-radius:10px;background:var(--card);padding:1.2rem 1.25rem;font-size:.92rem;line-height:1.85;color:var(--ink-mid);white-space:pre-wrap}
.an-hl{border-bottom:2px solid currentColor;border-radius:3px;padding:0 .06rem;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.an-hl-emotion{background:rgba(191,87,62,.13);color:#8c3525}
.an-hl-source{background:rgba(13,155,142,.12);color:#08786e}
.an-hl-claim{background:rgba(36,45,57,.08);color:var(--ink)}
.an-hl-selected{outline:1px solid currentColor;outline-offset:2px}
.an-hl-dismissed{background:transparent;border-bottom-color:transparent;color:inherit}
.an-insight-panel{position:sticky;top:84px;border:1px solid var(--border);border-radius:14px;background:var(--white);overflow:hidden;box-shadow:0 18px 42px rgba(12,18,25,.06)}
.an-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--border);background:var(--card)}
.an-tab-btn{border:0;border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:transparent;padding:.75rem .65rem;font-family:'DM Sans',sans-serif;font-size:.72rem;font-weight:800;color:var(--ink-mute);cursor:pointer;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:.4rem}
.an-tab-btn:nth-child(3n){border-right:0}
.an-tab-btn.active{background:var(--white);color:var(--teal-d)}
.an-tab-count{min-width:1.35rem;height:1.35rem;border-radius:999px;border:1px solid var(--border);display:inline-flex;align-items:center;justify-content:center;font-size:.62rem;color:var(--ink-mute);background:#fff}
.an-tab-btn.active .an-tab-count{background:var(--teal);border-color:var(--teal);color:#fff}
.an-tab-content{max-height:calc(100vh - 190px);overflow:auto;padding:1.15rem 1.2rem}
.an-tab-panel{display:none}
.an-tab-panel.active{display:block}
.an-panel-section{border-top:1px solid var(--border);padding-top:1rem;margin-top:1rem}
.an-panel-section:first-child{border-top:0;padding-top:0;margin-top:0}
.an-dimension-cards{display:grid;gap:0;border-bottom:1px solid var(--border)}
.an-dim-card{padding:1rem 0;border-top:1px solid var(--border)}
.an-dim-card:first-child{border-top:0;padding-top:0}
.an-dim-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.5rem}
.an-dim-title{font-size:.92rem;color:var(--ink);font-weight:700}
.an-dim-score{font-size:.72rem;color:var(--ink-mute);white-space:nowrap}
.an-dim-body{font-size:.84rem;color:var(--ink-mid);line-height:1.65}
.an-dim-body a{color:var(--teal);font-weight:700;text-decoration:none}
.an-dim-body a:hover{text-decoration:underline;text-underline-offset:3px}
.an-map{display:grid;gap:0;border-top:1px solid var(--border)}
.an-map-row{display:grid;gap:.75rem;padding:1rem 0;border-bottom:1px solid var(--border)}
.an-map-row:last-child{border-bottom:0}
.an-map-label{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--teal);font-weight:600}
.an-map-list{list-style:none;display:grid;gap:.65rem}
.an-map-list li{font-size:.86rem;color:var(--ink-mid);line-height:1.65;background:var(--card);border:1px solid var(--border);border-radius:9px;padding:.75rem .85rem}
.an-map-list a{color:var(--teal);font-weight:700;text-decoration:none}
.an-map-list a:hover{text-decoration:underline;text-underline-offset:3px}
.an-list-title{display:block;color:var(--ink);font-weight:700;margin-bottom:.18rem}
.an-list-meta{display:block;font-size:.82rem;color:var(--ink-mute);line-height:1.6}
.an-verify-panel{border:1px solid var(--border);border-radius:10px;background:var(--card);padding:1rem;margin-bottom:1rem}
.an-verify-top{display:grid;grid-template-columns:1fr;gap:1rem;margin-bottom:1rem}
.an-verify-title{font-size:1rem;color:var(--ink);font-weight:700;margin-bottom:.35rem}
.an-verify-copy{font-size:.84rem;color:var(--ink-mid);line-height:1.65;max-width:620px}
.an-verify-btn{background:var(--ink);color:#fff;border:none;border-radius:8px;padding:.78rem 1.05rem;font-family:'DM Sans',sans-serif;font-weight:700;font-size:.82rem;cursor:pointer;white-space:nowrap}
.an-verify-btn:hover{background:var(--ink-mid)}
.an-verify-btn:disabled{background:var(--ink-mute);cursor:not-allowed}
.an-verify-status{font-size:.78rem;color:var(--ink-mute);line-height:1.6;margin-bottom:.9rem}
.an-verify-list{display:grid;gap:.85rem}
.an-verified-card{background:var(--white);border:1px solid var(--border);border-radius:8px;padding:1rem}
.an-verified-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:.45rem}
.an-verified-claim{font-size:.9rem;font-weight:700;color:var(--ink);line-height:1.45}
.an-verdict{font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;font-weight:800;border-radius:999px;padding:.28rem .55rem;white-space:nowrap}
.an-verdict-supported,.an-verdict-confirmed,.an-verdict-likely_supported{color:#14634c;background:rgba(20,99,76,.12)}
.an-verdict-contradicted{color:#8c3525;background:rgba(191,87,62,.16)}
.an-verdict-mixed,.an-verdict-needs_context{color:#7a5a10;background:rgba(185,139,35,.16)}
.an-verdict-unverified,.an-verdict-not_checkable{color:var(--ink-mid);background:rgba(36,45,57,.1)}
.an-verified-body{font-size:.84rem;color:var(--ink-mid);line-height:1.65;margin-bottom:.55rem}
.an-verified-sources{display:flex;flex-wrap:wrap;gap:.45rem}
.an-verified-sources a{font-size:.76rem;color:var(--teal);font-weight:700;text-decoration:none;border:1px solid var(--border);background:var(--card);border-radius:999px;padding:.28rem .55rem}
.an-verified-sources a:hover{text-decoration:underline;text-underline-offset:3px}
.an-quiz-bridge{margin-top:0;background:var(--ink);border-radius:10px;padding:1.25rem;display:grid;grid-template-columns:1fr;align-items:center;gap:1rem}
.an-quiz-kicker{font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--teal);font-weight:600;margin-bottom:.55rem}
.an-quiz-title{font-family:'Playfair Display',serif;font-size:1.15rem;color:var(--white);line-height:1.35;margin-bottom:.45rem}
.an-quiz-body{font-size:.9rem;color:rgba(255,255,255,.62);line-height:1.7;max-width:560px}
.an-quiz-btn{background:var(--white);color:var(--ink);border:none;padding:.85rem 1.35rem;border-radius:8px;font-family:'DM Sans',sans-serif;font-size:.875rem;font-weight:600;cursor:pointer;white-space:nowrap}
.an-quiz-btn:hover{color:var(--teal)}
@media(max-width:1080px){.an-result-head,.an-analysis-workbench{grid-template-columns:1fr}.an-insight-panel{position:relative;top:auto}.an-tab-content{max-height:none}.an-highlighted-text{max-height:none}}
@media(max-width:768px){.an-input-top,.an-quiz-bridge,.an-verify-top{grid-template-columns:1fr;display:grid}.an-source-row{grid-template-columns:1fr}.an-input-note{text-align:left}.an-status{margin-left:0}.an-metrics{grid-template-columns:1fr}.an-tabs{grid-template-columns:repeat(2,1fr)}.an-tab-btn:nth-child(3n){border-right:1px solid var(--border)}.an-tab-btn:nth-child(2n){border-right:0}.an-input-area{min-height:240px}.an-highlighted-text{min-height:360px}.an-quiz-btn,.an-verify-btn{width:100%}.an-verified-head{display:grid}.an-verdict{width:max-content}}

/* CSP extracted inline declarations */
.ca-style-001{display:none}
.off-accordion.show{display:block}
.rf-note.show{display:block}
.off-layer-count.show{display:inline-flex}
.ca-style-002{margin-top:1.35rem}
.ca-style-003{box-shadow:none;border:none;border-radius:0}
.ca-style-004{display:flex;align-items:center}
.ca-style-005{background:var(--white)}
.ca-style-006{color:var(--teal)}
.ca-style-007{margin-bottom:1.5rem}
.ca-style-008{margin-top:1.5rem}
.ca-style-009{background:#F8F9FA}
.ca-style-010{margin-bottom:.85rem}
.ca-style-011{font-size:.9rem;color:var(--ink-mid);line-height:1.8;margin-bottom:1.75rem}
.ca-style-012{background:var(--border)}
.ca-style-013{background:rgba(13,155,142,.4)}
.ca-style-014{background:var(--teal-d)}
.ca-style-015{background:var(--ink)}
.ca-style-016{flex-shrink:0;margin-left:.9rem}
.ca-style-017{margin-top:1rem}
.ca-style-018{margin-top:.75rem}
.ca-style-019{flex:1}
.ca-style-020{display:none;position:fixed;inset:0;background:rgba(12,18,25,.7);z-index:400;align-items:center;justify-content:center;padding:1.5rem}
.ca-style-021{background:var(--white);border-radius:16px;max-width:440px;width:100%;padding:2.5rem;position:relative;box-shadow:0 24px 80px rgba(0,0,0,.25)}
.ca-style-022{position:absolute;top:1rem;right:1rem;width:32px;height:32px;border-radius:50%;background:var(--card);border:none;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;color:var(--ink-mute)}
.ca-style-023{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--teal);font-weight:500;margin-bottom:.65rem}
.ca-style-024{font-family:'Playfair Display',serif;font-size:1.4rem;font-weight:600;color:var(--ink);line-height:1.25;margin-bottom:.65rem}
.ca-style-025{font-size:.875rem;color:var(--ink-mid);line-height:1.65;margin-bottom:1.5rem}
.ca-style-026{display:flex;gap:.6rem}
.ca-style-027{flex:1;padding:.7rem 1rem;border:1.5px solid var(--border);border-radius:8px;font-family:'DM Sans',sans-serif;font-size:.9rem;color:var(--ink);outline:none;transition:border-color .2s}
.ca-style-028{background:var(--teal);color:white;border:none;padding:.7rem 1.25rem;border-radius:8px;font-family:'DM Sans',sans-serif;font-size:.875rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .2s}
.ca-style-029{display:none;font-size:.82rem;color:var(--teal-d);margin-top:.75rem;font-weight:500}
.ca-style-030{font-size:.72rem;color:var(--ink-mute);margin-top:.85rem;text-align:center}
.ca-style-031{display:flex;align-items:center;gap:.75rem;margin-top:1.1rem;flex-wrap:wrap}
.ca-style-032{background:transparent;border:1.5px solid rgba(255,255,255,.3);color:var(--white)}
.ca-style-033{text-align:right}
.ca-style-034{font-size:.9rem;font-weight:500;color:var(--ink)}
.ca-style-035{font-size:.78rem;color:var(--ink-mute);margin-top:.2rem}
.ca-style-036{margin-top:.6rem;background:var(--teal);color:#fff;border:none;border-radius:20px;padding:.45rem 1rem;font-family:'DM Sans',sans-serif;font-size:.75rem;font-weight:600;cursor:pointer;transition:background .2s}
.ca-style-037{font-family:'Playfair Display',serif;font-size:1.3rem;font-weight:600;color:var(--ink);line-height:1.3;margin-bottom:.4rem}
.ca-style-038{font-size:.85rem;color:var(--ink-mid);line-height:1.6;margin-bottom:1.25rem}
.ca-style-039{font-family:'Playfair Display',serif;font-size:1.15rem;font-weight:600;color:var(--ink);margin-bottom:1.1rem}
.ca-style-040{margin-top:0;margin-bottom:1.25rem}
.ca-style-041{width:49%}
.ca-style-042{width:46%}
.ca-style-043{left:49%;width:5%}
.ca-style-044{left:50%}
.ca-style-045{width:47%}
.ca-style-046{left:47%;width:6%}
.ca-style-047{left:51%}
.ca-style-048{font-size:.72rem;color:var(--ink-mute);margin-top:.85rem;font-style:italic}
.ca-style-049{gap:2rem;align-items:start}
.ca-style-050{margin-bottom:.75rem}
.ca-style-051{width:40%}
.ca-style-052{display:flex;justify-content:space-between;font-size:.72rem;margin-bottom:.5rem}
.ca-style-053{color:#185FA5;font-weight:500}
.ca-style-054{color:var(--ink-mute)}
.ca-style-055{color:#B91C1C;font-weight:500}
.ca-style-056{width:48%}
.ca-style-057{width:44%}
.ca-style-058{display:flex;justify-content:space-between;font-size:.72rem}
.ca-style-059{width:42%}
.ca-style-060{width:39%}
.ca-style-061{width:43%}
.ca-style-062{width:45%}
.ca-style-063{color:var(--teal-d);font-weight:700}
.ca-style-064{color:var(--teal-d)}
.ca-style-065{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid rgba(29,158,117,.15)}
.ca-style-066{margin-bottom:.65rem}
.ca-style-067{color:var(--sage)}
.ca-style-068{left:65%}
.ca-style-069{width:65%}
.ca-style-070{width:0%}
.ca-style-071{color:rgba(13,13,13,0.35)}
.ca-style-072{width:0%;background:rgba(0,0,0,0.18)}
.ca-style-073{color:rgba(0,0,0,0.18)}
.ca-style-074{left:55%}
.ca-style-075{width:55%}
.ca-style-076{background:#16A34A}
.ca-style-077{background:#1D9E75}
.ca-style-078{background:#89BFB5}
.ca-style-079{background:#C2DDD7}
.ca-style-080{margin-bottom:1.75rem}
.ca-style-081{font-size:.76rem;color:var(--ink-mute);margin-top:.5rem;line-height:1.55}
.ca-style-082{margin-bottom:2rem;text-align:center;max-width:820px;margin-left:auto;margin-right:auto}
.ca-style-083{font-size:clamp(2.4rem,4.5vw,3.2rem);margin:0 auto .85rem}
.ca-style-084{max-width:760px;margin-left:auto;margin-right:auto}
.ca-style-085{text-align:center}
.ca-style-086{margin-left:auto;margin-right:auto}
.ca-style-087{max-width:none;margin-left:0;margin-right:0}
.ca-style-088{margin-top:.5rem}
.ca-style-089{max-width:760px;margin:0 auto;text-align:center}
.ca-style-090{margin-bottom:1.75rem;margin-left:auto;margin-right:auto}
.ca-style-091{color:var(--ink);border:none;padding:1.75rem 2.25rem;background:rgba(13,155,142,.04);border-radius:12px;max-width:600px;margin:0 auto 0.65rem;font-size:1.05rem}
.ca-style-092{color:var(--ink-mute);justify-content:center;margin-bottom:2.5rem}
.ca-style-093{text-align:left}
.ca-style-094{font-size:3rem;margin-bottom:1.5rem}
.ca-style-095{color:var(--white)}
.ca-style-096{display:grid;gap:.85rem;margin-top:1rem}
.ca-style-097{padding:1rem 1.25rem;background:rgba(255,255,255,.05);border-radius:10px;border:1px solid rgba(255,255,255,.08);font-size:.9rem;color:rgba(255,255,255,.7);line-height:1.6}
.ca-style-098{color:var(--teal);animation:fu .7s .1s both;opacity:0}
.ca-style-099{font-family:'Playfair Display',serif;font-size:3rem;font-weight:700;line-height:1.1;color:#fff;letter-spacing:-.02em;margin-bottom:1.35rem;animation:fu .7s .25s both;opacity:0}
.ca-style-100{font-size:1rem;font-weight:300;line-height:1.8;color:rgba(255,255,255,.52);margin-bottom:2rem;animation:fu .7s .4s both;opacity:0;max-width:340px}
.ca-style-101{animation:fu .7s .55s both;opacity:0}
.ca-style-102{animation:fu .7s .7s both;opacity:0}
.ca-style-103{animation:fu .7s .85s both;opacity:0}
.ca-style-104{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}
.ca-style-105{font-family:'Cormorant Garamond',serif;font-size:1.2rem;font-weight:700;color:#0D9B8E;margin:0 0 .2rem;line-height:1.2;letter-spacing:.01em}
.ca-style-106{font-size:.75rem;color:rgba(255,255,255,.35);margin:0}
.ca-style-107{font-size:.75rem;color:rgba(255,255,255,.65);text-align:center;margin-top:.5rem;line-height:1.6}
.ca-style-108{display:none;position:fixed;bottom:2rem;right:2rem;background:var(--teal);color:white;padding:1rem 1.5rem;border-radius:10px;font-size:.9rem;font-weight:500;z-index:999;box-shadow:0 8px 32px rgba(0,0,0,.2)}
.ca-style-109{font-size:.6rem;color:rgba(13,110,86,.6);margin-top:.3rem}
.ca-style-110{width:42px;height:42px;border-radius:50%;object-fit:cover}
.ca-style-111{width:42px;height:42px;border-radius:50%;background:var(--teal-l);display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:600;color:var(--teal);flex-shrink:0}
.ca-style-112{color:var(--border)}
.ca-style-113{font-size:.65rem;color:var(--ink-mute);margin-top:.5rem}
/* End CSP extracted inline declarations */
