:root{
  /* B1 brand tokens — cream dossier (Explore) + dark team */
  --cream:#F4F0E6;
  --ink:#111111;
  --oxblood:#8B1E1E;
  --teal:#0D9488;
  --teal-pkr:#0D9488;
  --graphite:#5C5C5C;
  --paper:#F4F0E6;
  --paper-line:#E4DFD2;
  --card:#FFFcf5;
  /* Lock Stock FUN — swagger gold accent (stamps/eyebrows only; brand tokens stay) */
  --gold-accent:#C9A227;
  --font-display:"Bebas Neue",Impact,Haettenschweiler,sans-serif;
  --font-ui:"Oswald",system-ui,-apple-system,"Segoe UI",sans-serif;
  --font-narrator:"Playfair Display",Georgia,"Times New Roman",serif;
  --font-stamp:"Special Elite",ui-monospace,Menlo,monospace;
  --font-data:var(--font-ui);
  --font-charter:var(--font-narrator);
  /* legacy aliases (team/dark) — --gold stays oxblood for warn/legacy */
  --gold:var(--oxblood);
  --muted:#6B6B6B;
  --line:var(--paper-line);
  font-family:var(--font-data);
  color:var(--ink);
  background:var(--cream);
  font-size:16px
}*{box-sizing:border-box}body{margin:0}header{padding:20px 4vw;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px}header>div{display:flex;align-items:center;gap:16px}.mark{display:block;width:48px;height:48px;border-radius:10px;padding:0;background:transparent;object-fit:cover;flex-shrink:0}.private,.eyebrow{font-size:12px;letter-spacing:.13em;color:var(--gold);font-weight:700}main{max-width:1440px;margin:auto;padding:28px 4vw}h1{font-size:36px;letter-spacing:-.04em;margin:5px 0}h2{font-size:21px;margin:0 0 20px}h3{font-size:18px}p{line-height:1.55}.heading,.sectionhead{display:flex;align-items:center;justify-content:space-between;gap:24px}.heading>div>p{margin:6px 0 18px}.muted,#connection,footer{color:var(--muted);font-size:14px;line-height:1.6}button,input,select{font:inherit;color:inherit;background:#202e38;border:1px solid #52616b;border-radius:5px;padding:10px 12px}button{cursor:pointer}button:hover{border-color:var(--teal)}button:focus-visible,a:focus-visible,input:focus,select:focus{outline:2px solid var(--teal);outline-offset:3px}label{font-size:14px;color:var(--muted);display:flex;flex-direction:column;gap:7px}nav{display:flex;gap:30px;margin:28px 0}nav a{color:var(--muted);text-decoration:none}nav a:hover{color:var(--teal)}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:24px 0}.metric,article{background:#19252e;border:1px solid var(--line);padding:24px;border-radius:8px}.metric strong{display:block;font-size:32px;margin:10px 0}.metric span{font-size:14px;color:var(--muted)}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.two{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.two,section{margin-bottom:28px}section{scroll-margin-top:20px}.ring{width:140px;height:140px;border-radius:50%;margin:14px auto;display:grid;place-items:center}.ring>div{width:108px;height:108px;border-radius:50%;background:#19252e;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:27px;font-weight:700}.ring small{font-size:12px;color:var(--muted);font-weight:400}.legend{display:flex;justify-content:space-between;gap:15px;line-height:1.7;font-size:14px}.good{color:var(--teal)}.warn{color:var(--gold)}.bad{color:#ffa5a5}.bar{height:8px;background:#35434c;border-radius:3px;overflow:hidden;margin:8px 0 18px}.bar i{display:block;height:100%;background:var(--teal)}.families{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.pill{font-size:12px;padding:6px 9px;border:1px solid var(--line);border-radius:4px;color:var(--muted)}.tablewrap{overflow:auto;max-height:440px;border:1px solid var(--line);border-radius:6px}table{width:100%;border-collapse:collapse;text-align:left;font-size:14px}th,td{padding:13px 16px;border-bottom:1px solid var(--line);vertical-align:top}th{background:#22313b;position:sticky;top:0;font-weight:600}td:nth-child(2){font-variant-numeric:tabular-nums}.filters{display:flex;gap:10px}.empty{padding:28px;background:#19252e;border:1px dashed #52616b;color:var(--muted);line-height:1.7;border-radius:6px}details{background:#19252e;border:1px solid var(--line);padding:15px;margin-bottom:8px}summary{cursor:pointer;line-height:1.7;font-size:14px}pre{overflow:auto;white-space:pre-wrap;word-break:break-word;font-size:13px;max-height:320px;background:#101920;padding:16px}footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:24px 0}#history p{margin:7px 0}.sectionhead h2{margin-bottom:5px}@media(max-width:1000px){.three{grid-template-columns:1fr}.metrics{grid-template-columns:repeat(2,1fr)}.heading,.sectionhead{align-items:flex-start;flex-direction:column}.filters{flex-wrap:wrap}}@media(max-width:600px){.two{grid-template-columns:1fr}header{align-items:flex-start}.private{display:none}h1{font-size:29px}.metric,article{padding:18px}nav{gap:16px;font-size:14px}footer{flex-direction:column}.filters select{max-width:240px}}

#member{border-top:3px solid var(--teal);padding-top:26px}.sourceLink{color:var(--teal);text-underline-offset:4px}.voteRow summary{display:flex;gap:20px;align-items:center;list-style:none}.voteRow summary:after{content:'＋';margin-left:auto}.voteRow[open] summary:after{content:'−'}.votePosition{min-width:60px;font-size:20px;font-weight:700;color:var(--gold)}.voteDetail{padding:10px 0 0 80px;line-height:1.65}.evidenceLinks{display:flex;gap:20px;flex-wrap:wrap}#voteSearch{min-width:300px}#member h2{font-size:28px}#member h2 span{display:block;margin-top:6px}@media(max-width:600px){.voteDetail{padding-left:0}#voteSearch{min-width:0;width:100%}.voteRow summary{gap:12px}nav{flex-wrap:wrap}}

#senatorSelect{max-width:500px;width:100%}#rollcallPanel{margin:24px 0;border-color:var(--teal)}#rollcallPanel[hidden]{display:none}.personLink{background:none;border:0;color:var(--teal);padding:0;text-align:left;text-decoration:underline;text-underline-offset:3px}.openRollcall{margin:10px 0 20px;border-color:var(--teal);color:var(--teal)}

.foldSection{padding:0;border:1px solid var(--line);border-radius:8px;overflow:hidden}.foldSection>summary{padding:18px 20px;font-size:20px;font-weight:600;background:#22313b}.foldSection>summary .muted{font-weight:400}.foldBody{padding:20px}.boundedList{max-height:min(560px,65vh);overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:4px 10px 4px 4px}.boundedList:focus-visible,.foldSection>summary:focus-visible{outline:2px solid var(--teal);outline-offset:-2px}#changes.boundedList{max-height:min(440px,60vh)}@media(max-width:600px){.foldBody{padding:12px}.foldSection>summary{padding:15px;font-size:18px}.foldSection>summary .muted{display:block;margin-left:18px}.boundedList{padding-right:6px}}

#loaderClock{margin:18px 0;border-left:4px solid var(--teal)}#loaderCountdown{font-size:clamp(1.2rem,3vw,1.8rem);font-variant-numeric:tabular-nums}#loaderNextTime{overflow-wrap:anywhere}

#chamber{border-top:3px solid var(--gold);padding-top:26px}.chamberLayout{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}.chamberLayout article{min-width:0}#chamberMap{position:relative;width:100%;aspect-ratio:1.9;margin:24px 0 10px}.chamberDot{position:absolute;transform:translate(-50%,-50%);border:1px solid #ffffff88;border-radius:50%;padding:0;width:2.8%;aspect-ratio:1;min-width:0;transition:opacity .15s}.denseChamber .chamberDot{width:1.6%}.partyD{background:#559de8}.partyR{background:#ed6b70}.partyI{background:#b7bec6}.partyOther{background:#d4b87e;border-radius:2px}.chamberDot:hover,.chamberDot:focus-visible{outline:3px solid white;outline-offset:2px;z-index:2}.dimDot{opacity:.18}#chamberHover{min-height:3em;color:var(--teal)}nav{flex-wrap:wrap}@media(max-width:900px){.chamberLayout{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.chamberDot{transition:none}}

[hidden]{display:none!important}body>nav{position:sticky;top:0;z-index:20;background:#101920f5;border-bottom:1px solid var(--line);margin:0;padding:12px 4vw;display:flex;flex-direction:column;gap:8px;backdrop-filter:blur(12px)}body>nav>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.navGroup{font-size:10px;letter-spacing:.1em;color:var(--gold);min-width:110px}nav a{padding:7px 10px;border-radius:5px;font-size:14px}nav a[aria-current=page]{background:#29483f;color:#bcf4df}#loaderClock{padding:14px 20px}#loaderClock h2{font-size:14px;margin:0 0 6px}#loaderCountdown{font-size:20px}#loaderClock p{margin:5px 0}.heading{margin-bottom:8px}dialog#rollcallDialog{background:#101920;color:#e9eef2;border:1px solid var(--teal);border-radius:12px;width:min(1050px,95vw);max-height:90vh;padding:12px}dialog::backdrop{background:#000a}.rollcallHolder{border:0;padding:0;margin:0}.rollcallHolder>summary{display:none}#rollcallDialog #rollcallPanel{margin:0}main>section{scroll-margin-top:140px}@media(max-width:600px){.navGroup{width:100%}body>nav{position:relative}main>section{scroll-margin-top:10px}}

.rollFilter[aria-pressed="true"]{background:#29483f;border-color:var(--teal);color:#bcf4df}.personLinkStyle{background:none;border:0;color:var(--teal);padding:0;text-align:left;text-decoration:underline}

.chamberSortGuide{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid var(--teal);color:var(--teal);font-size:1rem}.chamberSortGuide .sortArrow{flex:1;text-align:center}.chamberSortGuide span:last-child{text-align:right}

.memberHero{border-top:4px solid var(--teal);padding:24px 0}.memberHero h2{font-size:clamp(2rem,4vw,3.4rem);margin:12px 0}.memberIdentity{font-size:1.25rem}.profileMetrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin:24px 0}.profileMetrics span{padding:16px;border:1px solid #ffffff30;border-radius:10px}.profileMetrics strong{display:block;font-size:2rem;color:var(--teal)}.profileSections{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}#profile h3{scroll-margin-top:24px}

.memberSearchMethods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}.memberSearchMethods article{min-width:0;border-top:3px solid var(--teal)}.memberSearchMethods h3{font-size:1.4rem;margin:8px 0}.memberSearchMethods .filters{display:flex;flex-direction:column;align-items:stretch}.memberSearchMethods label{display:block}.memberSearchMethods input,.memberSearchMethods select{width:100%;min-width:0;box-sizing:border-box}.memberSearchMethods button{margin-top:10px}.searchCoverage{margin:20px 0}.memberSearchMethods #repAddressForm .muted{font-size:.875rem}@media(max-width:1050px){.memberSearchMethods{grid-template-columns:1fr}}

.memberPortrait{float:right;width:150px;margin:0 0 24px 28px;padding:8px;border:1px solid var(--teal);border-radius:18px;background:#172930;box-shadow:0 12px 28px #0004}.memberPortrait img{display:block;width:100%;border-radius:11px}.memberPortrait figcaption{font-size:.875rem;line-height:1.4;padding:8px 2px 0;color:var(--teal)}.portraitPlaceholder{aspect-ratio:3/4;display:grid;place-items:center;font-size:3rem;color:var(--teal)}.memberHero:after{content:'';display:block;clear:both}.memberFacet{padding:24px;margin:22px 0;border:1px solid var(--line);border-radius:12px;background:#111e26;scroll-margin-top:150px}.memberFacet>h3:first-child{font-size:1.5rem;color:var(--teal);margin-top:0}.profileMetrics{clear:both}@media(max-width:600px){.memberPortrait{float:none;margin:0 0 20px;width:120px}.memberFacet{padding:16px;scroll-margin-top:16px}}

.memberServiceSplit{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}.memberServiceSplit>div{min-width:0}.serviceTable th,.serviceTable td{padding:9px 6px}.serviceTable button{padding:5px 7px}.memberFacet table{width:100%;border-collapse:collapse}.memberFacet td{vertical-align:top}@media(max-width:1100px){.memberServiceSplit{grid-template-columns:1fr}}

.billExplorerLayout{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;margin-top:16px}.billMatchesTable{width:100%;border-collapse:collapse}.billMatchesTable td{padding:0}.billMatchesTable .openBill{display:block;width:100%;text-align:left;padding:14px;border:0;border-radius:0;background:transparent}.billMatchesTable .openBill:hover,.billMatchesTable .openBill[aria-current]{background:#234239}.billMatchesTable small{display:block;margin-top:5px;color:var(--teal)}#billSearchForm{display:flex;align-items:end;gap:12px;flex-wrap:wrap}#billSearchForm label{flex:1;min-width:220px}#billQuery{width:100%;box-sizing:border-box}#billDetail{min-width:0}

#billDetail .billAboutHeading{font-size:clamp(1.8rem,3vw,2.5rem);border-bottom:2px solid var(--teal);padding-bottom:16px;margin:0 0 22px}.billVotesTable{width:100%;border-collapse:collapse}.billVotesTable td{vertical-align:top}.billVotesTable tbody tr{cursor:pointer}.billVotesTable tbody tr:hover,.billVotesTable tbody tr:focus-within{background:#234239}
/* Mission Control: factual telemetry, no simulated activity. */
#mission{background:radial-gradient(ellipse at top,#15373e55,transparent 65%);padding:24px;border:1px solid #36525a;border-radius:14px}.mcIntro h2{font-size:clamp(28px,4vw,48px);margin:8px 0}.mcIntro{border-bottom:1px solid #36525a;padding-bottom:16px}.mcMetrics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0}.mcMetrics strong{display:block;font:600 28px ui-monospace,monospace;color:#82deca;margin:12px 0}.mcMetrics small,.mcRun small{display:block}.mcCommand{max-width:440px;margin:30px auto 0;text-align:center;border:1px solid #cfab65;border-radius:12px;padding:24px;background:#152029}.mcCommand h3{font-size:30px;margin:8px}.mcLine{height:35px;width:1px;background:#cfab65;margin:auto}.mcCaption{text-align:center;color:#afbdc3;font-size:12px;letter-spacing:1px}.mcWorkers,.mcPanels{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:20px 0}.mcWorker{border-top:3px solid #7cd7c5!important}.mcWorker h3{font-size:25px}.mcState{display:inline-block;padding:5px 12px;border:1px solid #799399;border-radius:30px;color:#c7eae4}.mcPanels .tablewrap{max-height:430px;overflow:auto}.mcPanels td small{display:block;max-width:320px;color:#9dafb6;margin-top:6px}.mcRun{display:grid;grid-template-columns:1fr auto;border-bottom:1px solid #36525a;padding:12px 0}.mcRun small{grid-column:1/-1;color:#aabac0;margin-top:5px}.mcReport pre{white-space:pre-wrap;font:14px/1.7 system-ui;max-height:500px;overflow:auto;padding:20px}.mcReport summary{cursor:pointer;padding:18px;background:#182b33}@media(max-width:800px){.mcMetrics,.mcWorkers,.mcPanels{grid-template-columns:1fr}#mission{padding:14px}}
[hidden]{display:none!important}


.mcProgress{color:#85decc;font-weight:600}.mcReviewText{white-space:pre-wrap;overflow-wrap:anywhere;max-height:400px;overflow:auto;font:14px/1.6 system-ui}

.atlasLayout{display:grid;grid-template-columns:minmax(240px,1fr) minmax(400px,2fr);gap:24px;margin-top:20px}#atlasTables{max-height:750px;overflow:auto}.atlasTile{display:block;width:100%;text-align:left;margin:5px 0;padding:12px}.atlasTile span{display:block}.atlasTile[aria-pressed=true]{outline:2px solid #78d4bc}.atlasBar{height:5px;background:#78d4bc;margin-top:8px}.atlasLinks>div{padding:10px;border-bottom:1px solid #40515a}@media(max-width:800px){.atlasLayout{grid-template-columns:1fr}}

.billFilters{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;width:100%}#billSearchForm{display:block}.billFilters label{display:flex;flex-direction:column;gap:6px}

/* Shared, bounded data tables */
.tableShell{min-width:0;margin:10px 0 18px}.tableTools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:7px}.tableTools .muted{margin-right:auto;font-size:12px}.tableTools button{font-size:12px;padding:6px 9px}.dataWindow{max-height:440px!important;padding:0!important;overscroll-behavior:contain}.dataWindow table{table-layout:fixed;min-width:560px}.dataWindow th,.dataWindow td{padding:6px 9px!important;font-size:13px;vertical-align:middle;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dataWindow th{z-index:1;background:#253743;border-bottom:2px solid #52616b}.dataWindow th button{border:0;background:none;padding:3px 0;font-size:12px;font-weight:700;text-align:left;max-width:100%;overflow:hidden;text-overflow:ellipsis}.dataWindow th input{display:block;width:100%;min-width:0;padding:3px 5px;font-size:12px;margin-top:3px}.dataWindow td button,.dataWindow td a{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:4px 6px;font-size:13px}.dataWindow td small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dataWindow td p{margin:2px 0}.dataWindow tr:hover td{background:#24343e}.dataWindow th[aria-sort=ascending] button:after{content:' ↑'}.dataWindow th[aria-sort=descending] button:after{content:' ↓'}.tableIsExpanded{overflow:hidden}.tableShell.tableExpanded{position:fixed;inset:12px;z-index:10000;background:#101920;padding:16px;margin:0;border:1px solid #78d6c0;border-radius:8px;display:flex;flex-direction:column;box-shadow:0 0 0 100vmax #000b}.tableExpanded .dataWindow{flex:1;max-height:none!important;min-height:0}.tableExpanded .tableTools{flex-shrink:0}

.tableFullText .dataWindow td,.tableFullText .dataWindow td button,.tableFullText .dataWindow td a,.tableFullText .dataWindow td small{white-space:normal;overflow-wrap:anywhere}

.yearCoverageRow{padding:8px 0;border-bottom:1px solid #35434c}.yearCoverageRow .legend{margin:0 0 5px}.yearCoverageRow small{display:block;margin-top:4px;color:var(--muted,#acbac3)}.yearCoverageRow .bar{height:9px}.olderYears{max-height:420px;overflow:auto}.yearCoverageRow strong{font-variant-numeric:tabular-nums}
#wholeYearCoverage{margin-top:24px}.coverageYear{border-bottom:1px solid #35434c;padding:10px 0}.coverageYear summary{cursor:pointer}.coverageYear summary span{float:right;color:#acbac3;font-size:.85em}.coverageGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}.coverageCell{padding:12px;background:#17252d;border-radius:8px;display:grid;gap:5px}.coverageCell small{color:#acbac3}.coverageCell .bar{height:8px}

.memberResultCard .searchPortrait{float:right;width:64px;height:80px;object-fit:cover;border-radius:8px;margin:0 0 10px 14px}.missingPortrait{display:grid;place-items:center;background:#253743;color:#9eafb8}.memberResultCard:after{content:"";display:block;clear:both}.profileSections button[aria-pressed="true"]{background:#28594e;border-color:#78d6c0}.memberFacet[hidden]{display:none!important}

.sponsorGrid{display:grid;grid-template-columns:90px repeat(3,minmax(90px,1fr));gap:8px;overflow:auto;margin:16px 0}.sponsorCell{padding:14px;text-align:center;border:1px solid #42545e;border-radius:8px}.sponsorCell b{display:block;font-size:22px}.sponsorCell small{display:block}

.unityBar{display:flex;gap:4px;margin:16px 0;flex-wrap:wrap}.unityBar button{min-width:140px;padding:20px 10px;background:#28594e}.unityBar button+button{background:#4d5268}
/* Compact raw-position chart: calendar year, stacked counts, record count. */
.voteYearRow{display:grid;grid-template-columns:96px minmax(0,1fr) 100px;align-items:center;gap:10px;margin:5px 0;min-height:28px;font-variant-numeric:tabular-nums}
.voteYearRow .voteYearLabel{padding:3px 5px;text-align:left;font-size:12px;min-height:24px}.voteYearBar{display:flex;height:24px;overflow:hidden;border-radius:4px;background:#293841}.voteYearBar span{min-width:0;overflow:hidden;white-space:nowrap;text-align:center;line-height:24px;font-size:12px;color:#fff}.voteYearCount{font-size:12px;text-align:right}.votePosition0{background:#287e70}.votePosition1{background:#a35b31}.votePosition2{background:#705999}.votePosition3{background:#586470}.votePosition4{background:#39434e}.voteYearLegend{display:flex;flex-wrap:wrap;gap:14px;font-size:12px;margin:8px 0}.voteYearLegend i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:5px}@media(max-width:600px){.voteYearRow{grid-template-columns:76px minmax(0,1fr) 78px;gap:5px}.voteYearCount{font-size:11px}}


/* Bill Explorer coverage honesty (Ticket 1 · Yoko) */
.billHonestyHead{font-size:14px;margin-bottom:10px;color:var(--gold)}
.covStrip{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 12px}
.covPill{font-size:12px;padding:6px 10px;border-radius:999px;border:1px solid var(--line);color:var(--muted);background:#17252d}
.covPill.covMissing{border-color:#c47b7b;color:#ffc9c9;background:#2a1c1c}
.covPill.covPartial{border-color:var(--gold);color:#f0d9a8;background:#2a2418}
.covPill.covOk{border-color:var(--teal);color:#bcf4df;background:#1a2e2a}
.covPill.covUnknown{border-color:#52616b}
.billSourcesChecks{margin:12px 0 0;background:#17252d}
.billChecksList{margin:10px 0 0;padding-left:18px;line-height:1.7;color:var(--muted);font-size:14px}
.billChecksList strong{color:#e9eef2}
.billDetailHonesty{font-size:14px}


/* Control Panel mission board (Ticket 4 · Yoko) — engaging, not cheesy */
.navTeam{margin-left:auto}
body.exploreMode .teamOnlyBadge{opacity:.55}
.cpMissionBanner{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding:22px 24px;border:1px solid #3a5560;border-radius:14px;background:radial-gradient(ellipse at top left,#1b3d4555,transparent 60%),#152029;margin-bottom:20px}
.cpMissionBanner.disarmed{border-color:#6a5a3a}
.cpMissionBanner h2{margin:6px 0 8px;font-size:clamp(1.6rem,3vw,2.2rem)}
.cpArmBadge{min-width:160px;text-align:center;padding:14px 16px;border-radius:12px;border:1px solid var(--gold);color:var(--gold);font-weight:700;letter-spacing:.04em}
.cpArmBadge small{display:block;margin-top:6px;font-weight:400;color:var(--muted);letter-spacing:0}
.cpGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.cpCard{border-top:3px solid var(--teal)}
.cpCard.cpWide{grid-column:1/-1;border-top-color:var(--gold)}
.cpBig{font-size:clamp(2rem,4vw,3rem);font-weight:700;font-variant-numeric:tabular-nums;margin:8px 0 12px;color:var(--teal)}
.cpBig.warnTone{color:var(--gold)}
.cpBig small{font-size:0.9rem;color:var(--muted);font-weight:500;margin-left:6px}
.cpPillRow{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.cpMeter{margin:12px 0}
.cpMeter.green .bar i{background:var(--teal)}
.cpMeter.amber .bar i{background:var(--gold)}
.cpMeter.red .bar i,.cpMeter.crit .bar i{background:#ffa5a5}
.cpMeter small{color:var(--muted);font-size:12px}
.cpQueue{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}
.cpAdvanced{margin-top:22px}
.cpAdvLinks{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px}
.cpAdvLinks a{color:var(--teal)}
@media(max-width:900px){.cpGrid{grid-template-columns:1fr}.cpMissionBanner{flex-direction:column}}

.cpMissionBanner.armed{border-color:var(--teal);box-shadow:0 0 0 1px #78d6c044 inset}
.cpMissionBanner.armed .cpArmBadge{border-color:var(--teal);color:#bcf4df;background:#1a2e2a}


.billCoveragePanel{margin:12px 0 18px;padding:0;background:transparent;border:0}
.cpStatusLine{margin:10px 0 14px;color:var(--muted);font-size:14px;line-height:1.55}


/* ========== B1 design tokens — Find Members + Bill Explorer ========== */
body.exploreMode{
  background:var(--cream);
  color:var(--ink);
  background-image:linear-gradient(rgba(17,17,17,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(17,17,17,.03) 1px,transparent 1px);
  background-size:24px 24px;
}
body.exploreMode header{
  background:var(--oxblood);
  border-bottom:0;
  color:#fff;
}
body.exploreMode header strong{color:#fff}
body.exploreMode .private,
body.exploreMode .eyebrow{
  color:#F4C7C7;
}
body.exploreMode .teamOnlyBadge{color:#F4C7C7;opacity:.85}
body.exploreMode header button{
  background:transparent;
  border-color:rgba(255,255,255,.35);
  color:#fff;
}
body.exploreMode header button:hover{border-color:var(--teal-pkr);color:#fff}
body.exploreMode > nav,
body.exploreMode nav{
  background:rgba(244,240,230,.94);
  border-bottom:1px solid var(--paper-line);
  backdrop-filter:blur(10px);
}
body.exploreMode nav a{color:var(--graphite)}
body.exploreMode nav a:hover,
body.exploreMode nav a[aria-current=page]{
  color:var(--ink);
  background:rgba(13,148,136,.12);
}
body.exploreMode nav a[aria-current=page]{border:1px solid rgba(13,148,136,.35)}
body.exploreMode .navGroup{color:var(--oxblood)}
body.exploreMode #viewCategory{color:var(--oxblood)}
body.exploreMode #viewTitle{color:var(--ink);letter-spacing:-.03em;font-weight:800}
body.exploreMode #connection,
body.exploreMode footer{color:var(--graphite);border-color:var(--paper-line)}
body.exploreMode .heading>div>p{
  font-family:var(--font-charter);
  font-style:italic;
  color:var(--graphite);
}

/* Dossier cards on Find Members + Bill Explorer */
#representatives,
#bills,
#profile{
  --surface:var(--card);
  --muted:var(--graphite);
  --line:var(--paper-line);
}
#representatives .memberSearchMethods article,
#bills #billMatches,
#bills #billDetail,
#profile .memberFacet,
#representatives .memberResultCard{
  background:var(--card);
  border:1px solid var(--paper-line);
  border-radius:2px;
  box-shadow:0 1px 0 rgba(17,17,17,.04);
}
#representatives .memberSearchMethods article{border-top:3px solid var(--teal-pkr)}
#representatives .eyebrow,
#bills .eyebrow,
#profile .eyebrow{color:var(--oxblood)}
#representatives h2,
#bills h2,
#profile h2,
#bills .billAboutHeading{color:var(--ink);font-weight:800}
#bills .billAboutHeading{border-bottom-color:var(--teal-pkr)}
#representatives button,
#bills button,
#profile button,
#representatives input,
#bills input,
#representatives select,
#bills select{
  background:#fff;
  color:var(--ink);
  border:1px solid #C9C3B5;
}
#representatives button:hover,
#bills button:hover,
#profile button:hover{border-color:var(--teal-pkr)}
#representatives .muted,
#bills .muted,
#profile .muted{color:var(--graphite)}
#representatives .empty,
#bills .empty,
#profile .empty{
  background:#F7F3EA;
  border:1px dashed #C9C3B5;
  color:var(--graphite);
}
#bills .billMatchesTable .openBill{color:var(--ink);background:transparent}
#bills .billMatchesTable .openBill:hover,
#bills .billMatchesTable .openBill[aria-current]{background:rgba(13,148,136,.1)}
#bills .billMatchesTable th{
  background:#EFEAE0;
  color:var(--ink);
  border-bottom:2px solid var(--ink);
}
#bills .billMatchesTable td{border-bottom-color:var(--paper-line)}
#bills .sourceLink,
#representatives .sourceLink,
#profile .sourceLink,
#profile .personLinkStyle{color:var(--teal-pkr)}
#profile .memberHero{border-top-color:var(--teal-pkr)}
#profile .profileMetrics strong{color:var(--teal-pkr)}
#profile .profileMetrics span{
  background:var(--card);
  border:1px solid var(--paper-line);
}
#profile .memberPortrait{
  background:var(--card);
  border-color:var(--teal-pkr);
  box-shadow:none;
}
.charterLine{
  font-family:var(--font-charter);
  font-style:italic;
  color:var(--graphite);
  font-size:15px;
}
.neutralityChip{
  display:inline-block;
  margin:8px 0 14px;
  padding:6px 12px;
  border-radius:999px;
  background:rgba(13,148,136,.12);
  color:var(--teal-pkr);
  font-size:12px;
  font-weight:700;
  letter-spacing:.04em;
}


/* ========== B2 DataTable — cream explore expand + soft chrome ========== */
body.exploreMode .tableShell.tableExpanded{
  background:var(--cream);
  color:var(--ink);
  border:1px solid var(--paper-line);
  box-shadow:0 0 0 100vmax rgba(17,17,17,.45);
}
body.exploreMode .tableExpanded .tableTools,
body.exploreMode .tableExpanded .tableTools .muted{color:var(--graphite)}
body.exploreMode .tableExpanded .tableTools button{
  background:#fff;
  color:var(--ink);
  border:1px solid #C9C3B5;
}
body.exploreMode .tableExpanded .dataWindow th{
  background:#EFEAE0;
  color:var(--ink);
  border-bottom:2px solid var(--ink);
}
body.exploreMode .tableExpanded .dataWindow th button{color:var(--ink)}
body.exploreMode .tableExpanded .dataWindow th input{
  background:#fff;
  color:var(--ink);
  border:1px solid #C9C3B5;
}
body.exploreMode .tableExpanded .dataWindow tr:hover td{background:rgba(13,148,136,.08)}
body.exploreMode .tableExpanded .dataWindow td{color:var(--ink);border-bottom-color:var(--paper-line)}

/* Soften DataTable th / filter inputs on Bill Explorer + explore surfaces */
body.exploreMode .dataWindow th,
#bills .dataWindow th{
  background:#EFEAE0;
  color:var(--ink);
  border-bottom:2px solid rgba(17,17,17,.55);
}
body.exploreMode .dataWindow th button,
#bills .dataWindow th button{color:var(--ink);font-weight:700}
body.exploreMode .dataWindow th input,
#bills .dataWindow th input{
  background:#fff;
  color:var(--ink);
  border:1px solid #C9C3B5;
}
body.exploreMode .dataWindow tr:hover td,
#bills .dataWindow tr:hover td{background:rgba(13,148,136,.08)}
body.exploreMode .dataWindow td,
#bills .dataWindow td{color:var(--ink);border-bottom-color:var(--paper-line)}
body.exploreMode .tableTools .muted,
#bills .tableTools .muted{color:var(--graphite)}
body.exploreMode .tableTools button,
#bills .tableTools button{
  background:#fff;
  color:var(--ink);
  border:1px solid #C9C3B5;
}
#bills .doorwayRow,
#representatives .doorwayRow,
#profile .doorwayRow,
.memberResultCard.doorwayRow{cursor:pointer}
#bills .doorwayRow:focus,
#representatives .doorwayRow:focus,
#profile .doorwayRow:focus,
.memberResultCard.doorwayRow:focus{outline:2px solid var(--teal-pkr);outline-offset:-2px}
#bills .tableHint{margin:0 0 10px;font-size:13px}

/* Team / Control Panel stays dark cockpit */
body.teamMode{
  background:#101920;
  color:#e9eef2;
  background-image:none;
}
body.teamMode header{
  background:#101920;
  border-bottom:1px solid #33424c;
  color:#e9eef2;
}
body.teamMode header strong{color:#e9eef2}
body.teamMode .private,
body.teamMode .eyebrow{color:#E8A0A0}
body.teamMode nav{
  background:#101920f5;
  border-bottom:1px solid #33424c;
}
body.teamMode nav a{color:#a7b6c0}
body.teamMode nav a:hover{color:#5eead4}
body.teamMode nav a[aria-current=page]{background:#134e4a;color:#ccfbf1;border:0}
body.teamMode .navGroup{color:#E8A0A0}
body.teamMode #viewTitle{color:#e9eef2}
body.teamMode #connection,
body.teamMode footer{color:#a7b6c0;border-color:#33424c}
#control,
#control .cpCard,
#control .cpMissionBanner{
  --teal:#0D9488;
}

/* Common user footer — need-to-know only */
.siteFooter{display:block;margin:2.5rem 0 1rem;padding:1.25rem 0 0;border-top:1px solid var(--line,#d8d2c6);text-align:center}
.siteFooter .footerCharter{font-family:var(--serif,Georgia,serif);font-style:italic;margin:0 0 .35rem;color:var(--ink,#111);font-size:1rem}
.siteFooter .footerMeta{margin:.15rem 0;font-size:.85rem;color:var(--graphite,#5C5C5C);line-height:1.45}
body.exploreMode .siteFooter{border-top-color:rgba(17,17,17,.12);color:inherit}
body.teamMode .siteFooter{display:none} /* Control Panel keeps its own ops chrome */
.connectionStatus{font-size:.85rem;color:var(--oxblood,#8B1E1E)}


/* C2 — public #account (cream dossier + cancel dialog) */
.headerActions{display:flex;align-items:center;gap:12px}
body.exploreMode a.headerAccount{
  color:rgba(255,255,255,.9);
  text-decoration:none;
  font-size:14px;
  padding:8px 10px;
  border:1px solid rgba(255,255,255,.35);
  border-radius:5px;
}
body.exploreMode a.headerAccount:hover{border-color:var(--teal-pkr);color:#fff}
body.teamMode a.headerAccount{color:#a7b6c0;text-decoration:none;font-size:14px;padding:8px 10px;border:1px solid #52616b;border-radius:5px}
.siteFooter .footerNav{margin:.55rem 0 .35rem}
.siteFooter .footerNav a{color:var(--ink);text-decoration:underline;text-underline-offset:3px;font-size:.9rem}
.siteFooter .footerNav a:hover{color:var(--teal-pkr)}

#account{
  --surface:var(--card);
  --muted:var(--graphite);
  --line:var(--paper-line);
}
#account .eyebrow{color:var(--oxblood)}
#account h2{color:var(--ink);font-weight:800}
#account .accountGrid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:16px;
  margin:18px 0 8px;
}
#account .accountGrid article,
#account .accountSessionCard,
#account .accountCancelBlock{
  background:var(--card);
  border:1px solid var(--paper-line);
  border-radius:2px;
  box-shadow:0 1px 0 rgba(17,17,17,.04);
  padding:22px;
}
#account .accountGrid article{border-top:3px solid var(--teal-pkr)}
#account .accountSessionCard{border-top:3px solid var(--teal-pkr);margin-bottom:16px}
#account .accountCancelBlock{border-top:3px solid var(--oxblood);margin-top:8px}
#account .accountForm{display:flex;flex-direction:column;gap:12px;margin-top:10px}
#account .accountForm button,
#account .accountSessionCard button,
#account input{
  background:#fff;
  color:var(--ink);
  border:1px solid #C9C3B5;
}
#account .accountForm button:hover,
#account .accountSessionCard button:hover{border-color:var(--teal-pkr)}
#account .accountWalkAway{
  font-family:var(--font-charter);
  font-style:italic;
  color:var(--graphite);
  margin:0 0 14px;
  line-height:1.5;
}
#account .btnDanger,
dialog.accountCancelDialog .btnDanger{
  background:var(--oxblood);
  color:#fff;
  border:1px solid var(--oxblood);
}
#account .btnDanger:hover,
dialog.accountCancelDialog .btnDanger:hover{
  border-color:#6e1515;
  background:#6e1515;
}
dialog.accountCancelDialog .btnSecondary{
  background:#fff;
  color:var(--ink);
  border:1px solid #C9C3B5;
}
dialog.accountCancelDialog .btnSecondary:hover{border-color:var(--teal-pkr)}
#account .accountStatus{
  font-size:14px;
  margin:10px 0 0;
  color:var(--graphite);
}
#account .accountStatus[data-tone=warn]{color:var(--oxblood)}
#account .accountStatus[data-tone=ok]{color:var(--teal-pkr)}
#account .accountSuccess{
  background:var(--card);
  border:1px solid var(--paper-line);
  border-left:3px solid var(--teal-pkr);
  padding:16px 18px;
  margin:12px 0 18px;
  color:var(--ink);
  font-family:var(--font-charter);
  font-style:italic;
}
dialog.accountCancelDialog{
  background:var(--card);
  color:var(--ink);
  border:1px solid var(--paper-line);
  border-radius:8px;
  width:min(440px,92vw);
  padding:0;
  box-shadow:0 12px 40px rgba(17,17,17,.18);
}
dialog.accountCancelDialog::backdrop{background:rgba(17,17,17,.45)}
.accountCancelDialogInner{padding:22px 24px 20px}
.accountCancelDialogInner h3{margin:0 0 10px;color:var(--ink);font-weight:800}
.accountCancelDialogInner p{margin:0 0 18px;color:var(--graphite);line-height:1.55}
.accountCancelActions{display:flex;flex-wrap:wrap;gap:10px}

/* Brand lockup — PORKER / PKR tile */
.brand{display:flex;align-items:center;gap:12px}
.brandText{display:flex;flex-direction:column;gap:2px;line-height:1.15}
.brandText .wordmark{font-size:1.15rem;letter-spacing:.06em;font-weight:800}
.brandText .tagline{font-size:.8rem;font-style:italic;font-weight:500;letter-spacing:0;opacity:.92;max-width:22rem}
body.exploreMode .brandText .tagline{color:#F4F0E6;opacity:.88}
body.teamMode .brandText .tagline{color:#a7b6c0}

/* Home landing — cinematic, need-to-know (dossier polish) */
a.brand{text-decoration:none;color:inherit}
a.brand:hover .wordmark{opacity:.92}
.homeLanding{padding:1.5rem 0 3rem;min-height:70vh;display:flex;flex-direction:column;justify-content:center}
.homeStage{
  text-align:center;
  padding:3rem 1.35rem 2.6rem;
  border:1px solid rgba(17,17,17,.16);
  border-radius:14px;
  background:
    repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(17,17,17,.012) 3px,rgba(17,17,17,.012) 4px),
    repeating-linear-gradient(90deg,transparent,transparent 4px,rgba(17,17,17,.01) 4px,rgba(17,17,17,.01) 5px),
    linear-gradient(168deg,#F4F0E6 0%,#ebe3d2 42%,#e2d5c0 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,252,245,.55),
    inset 0 0 80px rgba(17,17,17,.04),
    0 24px 56px rgba(17,17,17,.11);
  position:relative;
  overflow:hidden;
}
/* Deep vignette + quiet archival frame — no smoke/neon */
.homeStage:before{
  content:'';
  position:absolute;inset:0;
  background:
    radial-gradient(ellipse 90% 75% at 50% 38%,transparent 32%,rgba(17,17,17,.18) 100%),
    radial-gradient(ellipse 70% 45% at 50% 105%,rgba(139,30,30,.11),transparent 60%);
  pointer-events:none;z-index:0;
}
.homeStage:after{
  content:'';
  position:absolute;inset:11px;
  border:1px solid rgba(17,17,17,.07);
  border-radius:9px;
  pointer-events:none;z-index:0;
}
.homeStamp{
  position:relative;z-index:1;
  display:inline-block;
  margin:0 0 1.35rem;
  padding:.42rem .95rem;
  border:2.5px solid var(--oxblood);
  color:var(--oxblood);
  font-size:.66rem;
  letter-spacing:.24em;
  font-weight:800;
  border-radius:1px;
  transform:rotate(-2.5deg);
  box-shadow:inset 0 0 0 1px rgba(139,30,30,.4);
  text-shadow:0 0 .4px rgba(139,30,30,.45);
  opacity:.94;
  background:rgba(244,240,230,.35);
}
.homeMark{
  position:relative;z-index:1;
  display:block;
  margin:0 auto 1.15rem;
  width:112px;height:112px;
  border-radius:22px;
  box-shadow:0 10px 28px rgba(13,148,136,.28),0 0 0 1px rgba(13,148,136,.12);
}
.homeWord{
  position:relative;z-index:1;
  font-size:clamp(2.8rem,8vw,5.2rem);
  letter-spacing:.08em;
  margin:0 0 .55rem;
  font-weight:800;
  color:var(--ink);
}
.homeTag{
  position:relative;z-index:1;
  font-family:var(--font-charter),Georgia,serif;
  font-style:italic;
  font-size:clamp(1.25rem,3.2vw,1.85rem);
  line-height:1.35;
  margin:0 auto 1.3rem;
  max-width:22ch;
  color:var(--ink);
}
.homeChip{position:relative;z-index:1;display:inline-block;margin:0 auto}
.homeDoorways{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:1.85rem 0 .85rem}
.homeDoor{
  display:flex;flex-direction:column;gap:5px;
  padding:1.05rem 1.15rem;
  border:1px solid rgba(17,17,17,.12);
  border-radius:10px;
  background:rgba(255,254,249,.92);
  text-decoration:none;color:inherit;
  border-top:3px solid var(--teal-pkr);
  transition:border-color .15s,box-shadow .15s,background .15s;
}
.homeDoor:hover{
  border-color:rgba(17,17,17,.2);
  box-shadow:0 6px 18px rgba(17,17,17,.07);
  background:#fffef9;
}
.homeDoor:focus-visible{outline:2px solid var(--teal-pkr);outline-offset:3px}
.homeDoorNum{font-size:.68rem;letter-spacing:.16em;color:var(--oxblood);font-weight:800}
.homeDoor strong{font-size:1.02rem;letter-spacing:-.01em}
.homeDoor .muted{font-size:.86rem}
.homeDoorQuiet{
  border-top-color:rgba(17,17,17,.22);
  opacity:.78;
  background:rgba(255,254,249,.72);
}
.homeDoorQuiet:hover{
  opacity:.88;
  box-shadow:0 4px 12px rgba(17,17,17,.05);
}
.homeTrust{text-align:center;margin:.25rem 0 0;font-size:.85rem;letter-spacing:.01em}

/* —— Home beat C · Tour teaser (thin) —— */
.homeTour{
  margin:1.35rem 0 0;
  padding:1.35rem 1.15rem 1.25rem;
  border:1px solid rgba(17,17,17,.14);
  border-radius:12px;
  background:
    repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(17,17,17,.01) 3px,rgba(17,17,17,.01) 4px),
    linear-gradient(180deg,rgba(255,254,249,.96),rgba(244,240,230,.88));
  box-shadow:0 12px 32px rgba(17,17,17,.06);
}
.homeTourEyebrow{
  margin:0 0 1rem;
  font-family:var(--font-stamp);
  font-size:.72rem;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:var(--gold-accent);
  text-align:center;
}
.homeTeach{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin:0 0 1.15rem;
}
.homeTeachCard{
  margin:0;
  padding:.85rem .9rem .95rem;
  border:1px solid rgba(17,17,17,.1);
  border-radius:8px;
  background:rgba(255,254,249,.9);
  border-top:3px solid var(--teal-pkr);
}
.homeTeachCard strong{
  display:block;
  margin:.35rem 0 .25rem;
  font-family:var(--font-ui);
  font-size:.95rem;
  letter-spacing:.02em;
  text-transform:uppercase;
}
.homeTeachCard p{
  margin:0;
  font-size:.86rem;
  line-height:1.35;
  color:var(--graphite);
}
.homeTeachStamp{
  display:inline-block;
  font-family:var(--font-stamp);
  font-size:.62rem;
  letter-spacing:.2em;
  color:var(--gold-accent);
  border:1.5px solid var(--gold-accent);
  padding:.2rem .45rem;
  transform:rotate(-1.5deg);
  background:rgba(201,162,39,.08);
}
.homeAha{
  margin:0 0 1.15rem;
  padding:1.15rem 1rem 1rem;
  text-align:center;
  border:2px solid var(--gold-accent);
  border-radius:4px;
  background:
    radial-gradient(ellipse at 50% 0%,rgba(201,162,39,.1),transparent 55%),
    rgba(244,240,230,.55);
  box-shadow:inset 0 0 0 1px rgba(201,162,39,.28);
  position:relative;
}
.homeAhaStamp{
  display:inline-block;
  margin:0 0 .85rem;
  padding:.35rem .75rem;
  font-family:var(--font-stamp);
  font-size:.78rem;
  letter-spacing:.22em;
  color:var(--gold-accent);
  border:2px solid var(--gold-accent);
  transform:rotate(-3deg);
  background:rgba(244,240,230,.75);
  box-shadow:inset 0 0 0 1px rgba(201,162,39,.35);
}
.homeAhaPair{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:1rem;
  flex-wrap:wrap;
  margin:0 0 .65rem;
}
.homeAhaCell{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:2px;
  min-width:7.5rem;
}
.homeAhaLabel{
  font-family:var(--font-ui);
  font-size:.68rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--graphite);
}
.homeAhaMeter{
  font-family:var(--font-display);
  font-size:clamp(2.2rem,6vw,3.2rem);
  font-weight:400;
  letter-spacing:.04em;
  line-height:.9;
  color:var(--ink);
}
.homeAhaHint{font-size:.72rem}
.homeAhaArrow{
  font-family:var(--font-display);
  font-size:1.8rem;
  color:var(--gold-accent);
  line-height:1;
}
.homeAhaCharter{
  margin:0;
  font-size:.78rem;
  letter-spacing:.01em;
}
.homeAhaCharter strong{color:var(--ink);font-weight:700}
.homeFeatured{
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:1.25rem 1.2rem 1.15rem;
  text-decoration:none;
  color:inherit;
  border:1px solid rgba(17,17,17,.14);
  border-radius:10px;
  border-top:3px solid var(--teal-pkr);
  background:
    linear-gradient(165deg,rgba(13,148,136,.06),transparent 45%),
    rgba(255,254,249,.95);
  transition:border-color .15s,box-shadow .15s,background .15s;
}
.homeFeatured:hover{
  border-color:rgba(17,17,17,.22);
  box-shadow:0 10px 28px rgba(17,17,17,.08);
  background:
    linear-gradient(165deg,rgba(13,148,136,.1),transparent 45%),
    #fffef9;
}
.homeFeatured:focus-visible{outline:2px solid var(--teal-pkr);outline-offset:3px}
.homeFeaturedEp{
  font-family:var(--font-stamp);
  font-size:.66rem;
  letter-spacing:.22em;
  color:var(--gold-accent);
  text-transform:uppercase;
}
.homeFeaturedTitle{
  font-family:var(--font-display);
  font-size:clamp(1.85rem,4.5vw,2.6rem);
  font-weight:400;
  letter-spacing:.06em;
  line-height:.95;
  color:var(--ink);
}
.homeFeaturedMuted{
  font-size:.92rem;
  color:var(--graphite);
  max-width:42ch;
  line-height:1.35;
}
.homeFeaturedCta{
  margin-top:.35rem;
  font-family:var(--font-ui);
  font-size:.82rem;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--teal-pkr);
}
.homeSideLinks{
  text-align:center;
  margin:1rem 0 0;
  font-size:.88rem;
  letter-spacing:.01em;
}
.homeSideLinks a{color:inherit;opacity:.78;text-decoration:underline;text-underline-offset:3px}
.homeSideLinks a:hover{opacity:1;color:var(--teal-pkr)}

@media(max-width:800px){
  .homeDoorways{grid-template-columns:1fr}
  .homeTeach{grid-template-columns:1fr}
  .homeMark{width:88px;height:88px;border-radius:18px}
  .homeLanding{min-height:auto;padding:1rem 0 2rem}
  .homeStage{padding:2.1rem 1rem 1.85rem}
  .homeStage:after{inset:8px}
  .homeTour{padding:1.1rem .85rem 1rem}
  .homeAha{padding:1rem .75rem .9rem}
}
@media(prefers-reduced-motion:no-preference){
  .homeStage > *{animation:homeFadeRise .65s ease both}
  .homeStage > *:nth-child(1){animation-delay:.04s}
  .homeStage > *:nth-child(2){animation-delay:.1s}
  .homeStage > *:nth-child(3){animation-delay:.16s}
  .homeStage > *:nth-child(4){animation-delay:.22s}
  .homeStage > *:nth-child(5){animation-delay:.28s}
  .homeDoorways .homeDoor{animation:homeFadeRise .55s ease both}
  .homeDoorways .homeDoor:nth-child(1){animation-delay:.34s}
  .homeDoorways .homeDoor:nth-child(2){animation-delay:.4s}
  .homeDoorways .homeDoor:nth-child(3){animation-delay:.46s}
  .homeTrust{animation:homeFadeRise .5s ease both;animation-delay:.5s}
  .homeTour{animation:homeFadeRise .6s ease both;animation-delay:.32s}
  .homeSideLinks{animation:homeFadeRise .5s ease both;animation-delay:.48s}
  @keyframes homeFadeRise{
    from{opacity:0;transform:translateY(8px)}
    to{opacity:1;transform:translateY(0)}
  }
  .homeStamp{animation-name:homeStampIn}
  @keyframes homeStampIn{
    from{opacity:0;transform:rotate(-2.5deg) translateY(8px)}
    to{opacity:.94;transform:rotate(-2.5deg) translateY(0)}
  }
}
@media(prefers-reduced-motion:reduce){
  .homeDoor{transition:none}
}
body.exploreMode .homeStage{border-color:rgba(17,17,17,.18)}



/* ========== B4 — Bill + Member dossier shells ========== */
.stampEyebrow{
  display:inline-block;
  margin:0 0 10px;
  padding:4px 10px 3px;
  border:2px solid var(--oxblood);
  border-radius:2px;
  color:var(--oxblood)!important;
  font-size:11px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  background:rgba(139,30,30,.06);
}
#profile .stampEyebrow,
#bills .stampEyebrow{color:var(--oxblood)!important}

#repActivity.dossierPaper,
#repActivity .dossierPaper,
#profile .dossierShell,
#bills .dossierShell,
#bills #billDetail{
  background:var(--card);
  border:1px solid var(--ink);
  border-radius:2px;
  box-shadow:0 1px 0 rgba(17,17,17,.04);
}
#bills #billDetail{
  padding:22px 22px 28px;
}
#profile #repActivity{
  padding:8px 0 24px;
}
#profile .memberHero.dossierPaper{
  border:1px solid var(--ink);
  border-top:4px solid var(--oxblood);
  background:var(--card);
  padding:22px 22px 18px;
  margin:12px 0 18px;
  border-radius:2px;
}
#profile .memberHero h2{
  font-family:var(--font-data);
  letter-spacing:-.02em;
  color:var(--ink);
  margin:6px 0 8px;
}
#profile .memberIdentity{
  font-family:var(--font-charter);
  font-size:1.15rem;
  color:var(--ink);
}
#profile .memberHero .charterLine{margin:8px 0 14px}

/* RAP SHEET */
.rapSheet{
  margin:20px 0 8px;
  padding:16px 16px 12px;
  border:1px solid var(--ink);
  background:#FFFcf5;
}
.rapSheetTitle{
  margin:0 0 4px;
  font-size:13px;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--ink);
  border-bottom:2px solid var(--ink);
  padding-bottom:6px;
}
.rapSheetSub{margin:8px 0 12px;font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--oxblood)!important}
.rapSheetRows{display:flex;flex-direction:column;gap:0}
.rapSheetRow{
  display:grid;
  grid-template-columns:88px 1fr;
  gap:14px;
  align-items:start;
  padding:12px 0;
  border-bottom:1px dotted rgba(17,17,17,.28);
}
.rapSheetRow:last-child{border-bottom:0}
.rapSheetPairLabel{
  margin:10px 0 8px;
  font-size:11px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--graphite);
}
.rapSheetPair{
  display:grid;
  grid-template-columns:1fr 1px 1fr;
  gap:0 14px;
  align-items:start;
  padding:8px 0 4px;
}
.rapSheetPairRule{
  width:1px;
  align-self:stretch;
  background:rgba(17,17,17,.28);
  min-height:4.5rem;
}
.rapSheetCell{
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0;
}
.rapSheetMetric{
  font-size:clamp(1.8rem,3vw,2.4rem);
  font-weight:800;
  line-height:1;
  color:var(--ink);
  font-variant-numeric:tabular-nums;
}
.rapSheetSplit{
  display:block;
  margin-top:6px;
  font-size:12px;
  font-weight:600;
  letter-spacing:.02em;
  color:var(--graphite);
  font-variant-numeric:tabular-nums;
}
.rapSheetRow strong,
.rapSheetCell strong{
  display:block;
  font-size:12px;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--ink);
}
.rapSheetRow .muted,
.rapSheetCell .muted{margin:0;font-size:13px}
.rapSheetFoot{margin:10px 0 0;font-size:12px}
@media (max-width:640px){
  .rapSheetPair{grid-template-columns:1fr;gap:14px}
  .rapSheetPairRule{display:none}
  .rapSheetCell + .rapSheetCell,
  .rapSheetIntroduced{padding-top:12px;border-top:1px dotted rgba(17,17,17,.28)}
}

/* Portrait honesty */
#profile .noPhotoStamp{
  color:var(--oxblood);
  font-weight:800;
  letter-spacing:.08em;
  font-size:11px;
}
#profile .memberPortrait{
  border-radius:2px;
  border:1px solid var(--ink);
  background:#FFFcf5;
}
#profile .portraitPlaceholder{color:var(--graphite);font-size:2.2rem}
#profile .memberPortrait figcaption{color:var(--graphite)}

/* YOUR GUIDANCE — placeholder chrome only */
.yourGuidance{
  margin:0 0 18px;
  padding:16px 18px 14px;
  border:1px dashed #C9C3B5;
  background:rgba(244,240,230,.65);
  border-radius:2px;
}
.yourGuidance .stampEyebrow{
  border-style:dashed;
  opacity:.85;
}
.yourGuidance.isPlaceholder{opacity:.92}
.guidanceScales{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:14px;
  margin:12px 0 8px;
}
.guidanceScaleLabel{
  display:block;
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--graphite);
  margin-bottom:8px;
}
.guidanceTicks{display:flex;gap:6px;flex-wrap:wrap}
.guidanceTicks button{
  min-width:44px;
  padding:8px 10px;
  font-weight:700;
  color:var(--graphite)!important;
  background:#EFEAE0!important;
  border:1px solid #C9C3B5!important;
  cursor:not-allowed;
  opacity:.7;
}
.guidanceSoon{margin:0;font-size:12px}

/* Facets: paper cards, teal accents on headings */
#profile .memberFacet{
  border:1px solid var(--ink);
  border-radius:2px;
  background:var(--card);
  border-top:3px solid var(--teal-pkr);
}
#profile .memberFacet>h3:first-child{
  color:var(--ink);
  font-family:var(--font-data);
  letter-spacing:-.01em;
}
#profile .profileSections button[aria-pressed="true"]{
  background:rgba(13,148,136,.14);
  border-color:var(--teal-pkr);
  color:var(--ink);
}

/* Bill dossier */
#bills .billDossier .billAboutHeading{
  font-family:var(--font-data);
  letter-spacing:-.02em;
  border-bottom:2px solid var(--ink);
  margin-top:8px;
}
#bills .billDossier .billTitleLine{
  font-family:var(--font-charter);
  font-weight:600;
  color:var(--ink);
  font-size:1.25rem;
  margin:12px 0;
}
#bills .billDossier .billDetailHonesty{
  color:var(--graphite);
  background:transparent;
  border:0;
  padding:0;
  margin:8px 0 14px;
}
#bills .billVotesTable tbody tr:hover,
#bills .billVotesTable tbody tr:focus-within{
  background:rgba(13,148,136,.08);
}
#bills .dossierEmpty,
#profile .dossierEmpty{
  padding:22px 22px 26px;
  border:1px solid var(--ink);
  border-top:4px solid var(--oxblood);
  background:var(--card);
  box-shadow:0 1px 0 rgba(17,17,17,.04);
}
#bills .dossierEmpty .empty,
#profile .dossierEmpty .empty{
  margin:12px 0 0;
  border-style:dashed;
  border-color:rgba(17,17,17,.28);
  background:#FFFcf5;
  color:var(--ink);
  font-size:15px;
  line-height:1.55;
}

/* Soften dark leftovers inside explore dossier tables */
#profile .memberFacet table th{
  background:#EFEAE0;
  color:var(--ink);
  border-bottom:2px solid var(--ink);
}
#profile .memberFacet table td{
  color:var(--ink);
  border-bottom-color:var(--paper-line);
}


/* C3 — browse-first account (signed-out lead) */
#account .accountBrowseLead{
  background:var(--card);
  border:1px solid var(--paper-line);
  border-top:3px solid var(--teal-pkr);
  border-radius:2px;
  box-shadow:0 1px 0 rgba(17,17,17,.04);
  padding:22px 22px 18px;
  margin:14px 0 18px;
}
#account .accountLeadTitle{
  margin:4px 0 10px;
  color:var(--ink);
  font-weight:800;
  letter-spacing:-.01em;
}
#account .accountLeadBody{
  margin:0 0 10px;
  color:var(--ink);
  line-height:1.55;
  max-width:42rem;
}
#account .accountLeadBody.muted{color:var(--graphite)}
#account .accountKeepExploring{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 10px;
  margin:14px 0 0;
  font-size:.92rem;
}
#account .accountKeepLabel{
  font-style:italic;
  color:var(--graphite);
  margin-right:4px;
}
#account .accountKeepExploring a{
  color:var(--ink);
  text-decoration:underline;
  text-underline-offset:3px;
}
#account .accountKeepExploring a:hover{color:var(--teal-pkr)}
#account .accountKeepSep{color:var(--graphite);opacity:.7}
#account .accountOptionalTools{
  margin:8px 0 4px;
  border:1px solid var(--paper-line);
  border-radius:2px;
  background:rgba(244,240,230,.55);
  padding:0;
}
#account .accountOptionalTools > summary{
  cursor:pointer;
  list-style:none;
  padding:14px 18px;
  color:var(--graphite);
  font-size:.92rem;
  font-weight:600;
  letter-spacing:.02em;
}
#account .accountOptionalTools > summary::-webkit-details-marker{display:none}
#account .accountOptionalTools > summary::before{
  content:'▸ ';
  color:var(--teal-pkr);
  font-weight:800;
}
#account .accountOptionalTools[open] > summary::before{content:'▾ '}
#account .accountOptionalTools[open] > summary{border-bottom:1px solid var(--paper-line)}
#account .accountOptionalHint{margin:12px 18px 0;font-size:.88rem}
#account .accountOptionalTools .accountGrid{margin:12px 14px 16px}


/* ========== C3 soft socio / citizen snapshot prompt ========== */
.softPromptRoot{
  position:fixed;inset:0;z-index:80;
  display:flex;align-items:flex-end;justify-content:center;
  pointer-events:auto;
}
.softPromptRoot[hidden]{display:none!important}
.softPromptBackdrop{
  position:absolute;inset:0;
  background:rgba(17,17,17,.35);
}
.softPromptSheet{
  position:relative;z-index:1;
  width:min(560px,100%);
  max-height:min(88vh,920px);
  overflow:auto;
  background:var(--cream,#F4F0E6);
  color:var(--ink,#111);
  border:1px solid var(--paper-line,#C9C3B5);
  border-radius:12px 12px 0 0;
  box-shadow:0 -12px 40px rgba(17,17,17,.18);
  padding:18px 20px 22px;
  overscroll-behavior:contain;
}
@media(min-width:720px){
  .softPromptRoot{align-items:center;padding:24px}
  .softPromptSheet{border-radius:10px;max-height:min(86vh,860px)}
}
.softPromptChrome{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.softPromptEyebrow{margin:0;color:var(--oxblood,#8B1E1E)}
.softPromptClose{
  background:transparent;border:0;color:var(--ink,#111);
  font-size:1.6rem;line-height:1;padding:2px 8px;cursor:pointer;
}
.softPromptClose:hover{color:var(--oxblood,#8B1E1E)}
.softPromptTitle{margin:8px 0 6px;font-size:1.35rem;font-weight:800;color:var(--ink,#111)}
.softPromptLead{margin:0 0 10px;color:var(--graphite,#4A5560);line-height:1.5}
.softPromptPrivacy,
.softAccountPrivacy{
  margin:0 0 14px;padding:10px 12px;
  border-left:3px solid var(--teal-pkr,#0D9488);
  background:rgba(13,148,136,.08);
  color:var(--ink,#111);font-size:.88rem;line-height:1.45;
}
.softPromptForm{display:flex;flex-direction:column;gap:12px;margin-bottom:14px}
.softField{
  margin:0;padding:12px 14px;
  border:1px solid var(--paper-line,#C9C3B5);
  border-radius:6px;background:#fff;
}
.softField legend{font-weight:700;color:var(--ink,#111);padding:0 4px}
.softHint{margin:4px 0 8px;font-size:.82rem}
.softChoices{display:flex;flex-direction:column;gap:6px}
.softChoice,.softPrefer{
  display:flex;align-items:flex-start;gap:8px;
  font-size:.92rem;color:var(--ink,#111);cursor:pointer;
}
.softChoice input,.softPrefer input{margin-top:3px;accent-color:var(--teal-pkr,#0D9488)}
.softLeanRow{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:6px 0 8px}
.softLean{flex:1;min-width:120px;accent-color:var(--teal-pkr,#0D9488)}
.softLeanEdge{font-size:.8rem;color:var(--graphite,#4A5560)}
.softLeanOut{min-width:2ch;font-variant-numeric:tabular-nums;font-weight:700}
.softPromptActions,.softAccountActions,.softPriorityActions{
  display:flex;flex-wrap:wrap;gap:8px;margin-top:4px;
}
.softBtnPrimary{
  background:var(--teal-pkr,#0D9488);color:#fff;border:1px solid var(--teal-pkr,#0D9488);
  border-radius:5px;padding:10px 14px;cursor:pointer;font:inherit;
}
.softBtnPrimary:hover{background:#0b7f75;border-color:#0b7f75}
.softBtnGhost{
  background:#fff;color:var(--ink,#111);border:1px solid #C9C3B5;
  border-radius:5px;padding:10px 14px;cursor:pointer;font:inherit;
}
.softBtnGhost:hover{border-color:var(--teal-pkr,#0D9488)}
.softPrioritiesStub{
  margin-top:16px;background:#fff;border:1px solid var(--paper-line,#C9C3B5);
  border-radius:6px;padding:10px 12px;
}
.softPrioritiesStub > summary{cursor:pointer;font-weight:600;color:var(--ink,#111)}
.softPrioritiesNote{margin:8px 0;font-size:.88rem}
.softPriorityList{display:flex;flex-direction:column;gap:6px;margin:8px 0}
body.softPromptOpen{overflow:hidden}

#account .accountCitizenSnapshot{
  background:var(--card,#fff);
  border:1px solid var(--paper-line,#C9C3B5);
  border-radius:2px;
  border-top:3px solid var(--teal-pkr,#0D9488);
  box-shadow:0 1px 0 rgba(17,17,17,.04);
  padding:22px;
  margin:18px 0 8px;
}
#account .accountCitizenSnapshot h3{margin:6px 0 8px;color:var(--ink,#111);font-weight:800}
#account .softAccountList{list-style:none;margin:10px 0 14px;padding:0}
#account .softAccountList li{
  display:flex;justify-content:space-between;gap:12px;
  padding:7px 0;border-bottom:1px solid var(--paper-line,#C9C3B5);
  font-size:.92rem;
}
#account .softAccountLabel{color:var(--graphite,#4A5560)}
#account .softAccountValue{color:var(--ink,#111);font-weight:600;text-align:right}
#account .softAccountStatus{margin:8px 0 10px}
#account .softAccountActions .softBtnPrimary,
#account .softAccountActions .softBtnGhost,
#account .softPriorityActions .softBtnGhost{
  background:#fff;color:var(--ink,#111);border:1px solid #C9C3B5;
}
#account .softAccountActions .softBtnPrimary{
  background:var(--teal-pkr,#0D9488);color:#fff;border-color:var(--teal-pkr,#0D9488);
}
#account .softAccountPriorities{margin-top:14px}

#account .accountAuthTitle{margin:.25rem 0 .75rem;font-size:1.25rem}
#account .accountOptionalTools{margin-top:1.25rem;padding-top:1rem;border-top:1px solid rgba(17,17,17,.12)}

/* ——— C4 Watchlists ——— */
.dossierWatchBar{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin:14px 0 6px;
  padding:10px 0 0;
  border-top:1px dotted rgba(17,17,17,.22);
}
.dossierWatchLabel{
  font-size:11px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--graphite,#4A5560)!important;
}
.watchToggle{
  min-width:7.5rem;
  padding:8px 14px;
  font-weight:700;
  letter-spacing:.02em;
  border-radius:2px;
  border:1px solid var(--ink,#111)!important;
  background:#FFFcf5!important;
  color:var(--ink,#111)!important;
  cursor:pointer;
}
.watchToggle:hover{
  border-color:var(--teal-pkr,#0D9488)!important;
  color:var(--teal-pkr,#0D9488)!important;
}
.watchToggle.isWatching{
  background:var(--teal-pkr,#0D9488)!important;
  border-color:var(--teal-pkr,#0D9488)!important;
  color:#fff!important;
}
.watchToggle.isWatching:hover{
  background:var(--oxblood,#8B1E1E)!important;
  border-color:var(--oxblood,#8B1E1E)!important;
  color:#fff!important;
}
.watchToggle:disabled{opacity:.55;cursor:wait}
.watchToggleCompact{min-width:auto;padding:4px 10px;font-size:12px}

/* ——— YOUR BEAT · watchlists Explore scene ——— */
#watchlists .watchBeatLead{margin:.35rem 0 0;max-width:52ch}
#watchlists .dossierShell,
#watchlists .watchlistsPage,
#watchlists .watchlistsEmpty,
#watchlists .watchBeat{
  background:
    repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(17,17,17,.012) 3px,rgba(17,17,17,.012) 4px),
    linear-gradient(180deg,rgba(255,254,249,.98),rgba(244,240,230,.92));
  border:1px solid rgba(17,17,17,.16);
  border-radius:10px;
  border-top:3px solid var(--oxblood,#8B1E1E);
  padding:1.35rem 1.25rem 1.45rem;
  margin-top:12px;
  box-shadow:0 12px 32px rgba(17,17,17,.06);
}
#watchlists .watchBeatTitle{
  margin:.35rem 0 .55rem;
  font-family:var(--font-display);
  font-size:clamp(2rem,5vw,2.85rem);
  font-weight:400;
  letter-spacing:.06em;
  line-height:.92;
  text-transform:uppercase;
  color:var(--ink,#111);
}
#watchlists .watchBeatPunch{
  margin:0 0 .65rem;
  max-width:46ch;
  font-family:var(--font-narrator),Georgia,serif;
  font-style:italic;
  font-size:1.05rem;
  line-height:1.4;
  color:var(--ink,#111);
}
#watchlists .watchBeatSide{
  margin:0 0 1.1rem;
  font-size:.86rem;
  max-width:52ch;
}
#watchlists .watchBeatDoors{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:0 0 .85rem;
}
#watchlists .watchBeatDoor{
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:1.05rem 1rem 1rem;
  text-decoration:none;
  color:inherit;
  border:1px solid rgba(17,17,17,.14);
  border-radius:10px;
  border-top:3px solid var(--teal-pkr,#0D9488);
  background:
    linear-gradient(165deg,rgba(13,148,136,.07),transparent 45%),
    rgba(255,254,249,.96);
  transition:border-color .15s,box-shadow .15s,background .15s;
}
#watchlists .watchBeatDoor:hover{
  border-color:rgba(17,17,17,.22);
  box-shadow:0 10px 28px rgba(17,17,17,.08);
  background:
    linear-gradient(165deg,rgba(13,148,136,.12),transparent 45%),
    #fffef9;
}
#watchlists .watchBeatDoor:focus-visible{outline:2px solid var(--teal-pkr,#0D9488);outline-offset:3px}
#watchlists .watchBeatEp{
  font-family:var(--font-stamp);
  font-size:.66rem;
  letter-spacing:.22em;
  color:var(--gold-accent);
  text-transform:uppercase;
}
#watchlists .watchBeatDoorTitle{
  font-family:var(--font-display);
  font-size:clamp(1.45rem,3.5vw,1.95rem);
  font-weight:400;
  letter-spacing:.05em;
  line-height:.95;
  color:var(--ink,#111);
}
#watchlists .watchBeatDoorMuted{
  font-size:.88rem;
  color:var(--graphite,#4A5560);
  line-height:1.35;
  max-width:36ch;
}
#watchlists .watchBeatDoorCta{
  margin-top:.25rem;
  font-family:var(--font-ui);
  font-size:.78rem;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--teal-pkr,#0D9488);
}
#watchlists .watchlistGroup{margin:1.35rem 0 .5rem}
#watchlists .watchlistGroupEp{
  margin:0 0 .35rem;
  font-family:var(--font-stamp);
  font-size:.66rem;
  letter-spacing:.22em;
  color:var(--gold-accent);
  text-transform:uppercase;
}
#watchlists .watchlistGroup h3{
  margin:0 0 12px;
  font-family:var(--font-ui);
  font-size:1.02rem;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--ink,#111);
  border-bottom:2px solid var(--ink,#111);
  padding-bottom:6px;
}
#watchlists .watchlistCount{font-weight:500;opacity:.7}
.watchlistRows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.watchlistRow,
.watchBeatRow{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  gap:10px 14px;
  align-items:center;
  padding:14px 14px 12px;
  border:1px solid rgba(17,17,17,.12);
  border-radius:8px;
  border-left:3px solid var(--teal-pkr,#0D9488);
  background:rgba(255,254,249,.95);
  cursor:pointer;
  transition:border-color .15s,box-shadow .15s;
}
.watchlistRow:hover,
.watchBeatRow:hover{
  border-color:rgba(17,17,17,.22);
  box-shadow:0 8px 22px rgba(17,17,17,.07);
}
.watchlistRow:last-child{border-bottom:1px solid rgba(17,17,17,.12)}
.watchBeatRowEp{
  grid-column:1 / -1;
  font-family:var(--font-stamp);
  font-size:.62rem;
  letter-spacing:.2em;
  color:var(--gold-accent);
  text-transform:uppercase;
}
.watchlistOpen{
  text-align:left;
  background:transparent!important;
  border:0!important;
  color:var(--ink,#111)!important;
  font-family:var(--font-ui);
  font-size:1rem;
  font-weight:600;
  letter-spacing:.02em;
  padding:0!important;
  cursor:pointer;
  text-decoration:underline;
  text-decoration-color:var(--teal-pkr,#0D9488);
  text-underline-offset:3px;
}
.watchlistOpen:hover{color:var(--teal-pkr,#0D9488)!important}
.watchlistMeta{font-size:12px;font-variant-numeric:tabular-nums}
.watchAlertsNote{font-size:12px;margin-top:8px}
#watchlists .watchBeatMore{margin:1.1rem 0 0;font-size:.88rem}
#watchlists .watchBeatMore a{color:var(--teal-pkr,#0D9488);font-weight:600}
@media(max-width:800px){
  #watchlists .watchBeatDoors{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:no-preference){
  #watchlists .watchBeatEmpty .watchBeatDoor,
  #watchlists .watchBeatLive .watchBeatRow{
    animation:homeFadeRise .55s ease both;
  }
  #watchlists .watchBeatEmpty .watchBeatDoor:nth-child(1){animation-delay:.08s}
  #watchlists .watchBeatEmpty .watchBeatDoor:nth-child(2){animation-delay:.16s}
  #watchlists .watchBeatLive .watchBeatRow:nth-child(1){animation-delay:.06s}
  #watchlists .watchBeatLive .watchBeatRow:nth-child(2){animation-delay:.12s}
  #watchlists .watchBeatLive .watchBeatRow:nth-child(3){animation-delay:.18s}
}

.watchSoftGate{
  position:fixed;
  z-index:80;
  left:50%;
  bottom:28px;
  transform:translateX(-50%);
  max-width:min(520px,92vw);
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:14px 16px;
  background:var(--card,#FFFcf5);
  border:1px solid var(--ink,#111);
  border-left:4px solid var(--teal-pkr,#0D9488);
  box-shadow:0 8px 28px rgba(17,17,17,.12);
  border-radius:2px;
}
.watchSoftGate[hidden]{display:none!important}
.watchSoftGate p{margin:0;flex:1;color:var(--ink,#111);font-size:.95rem}
.watchSoftGate a{color:var(--teal-pkr,#0D9488);font-weight:700}
.watchSoftGateDismiss{
  border:0!important;
  background:transparent!important;
  color:var(--graphite,#4A5560)!important;
  font-size:1.25rem;
  line-height:1;
  padding:0 4px!important;
  cursor:pointer;
}
body.exploreMode .watchToggle{font-family:inherit}
@media(max-width:600px){
  .watchlistRow,
  .watchBeatRow{
    grid-template-columns:1fr;
    gap:6px;
  }
  .watchBeatRow .watchToggle{justify-self:start}
}


/* ========== C5 — Conviction 2×2 (bill dossier YOUR GUIDANCE) ========== */
#bills .yourGuidance.convictionPanel,
.yourGuidance.convictionPanel{
  margin:16px 0 20px;
  padding:16px 18px 14px;
  border:1px solid var(--ink,#111);
  border-left:4px solid var(--oxblood,#8B1E3F);
  background:var(--card,#FFFcf5);
  border-radius:2px;
  opacity:1;
}
.convictionPanel .stampEyebrow{
  border-style:solid;
  opacity:1;
  color:var(--oxblood,#8B1E3F);
}
.convictionHonesty{margin:4px 0 10px;font-size:12px}
.convictionAxes{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:14px;
  margin:10px 0 8px;
}
.convictionTicks{display:flex;gap:8px;flex-wrap:wrap}
.convictionPick{
  min-width:120px;
  padding:8px 12px;
  font-weight:700;
  font-size:13px;
  color:var(--ink,#111)!important;
  background:#EFEAE0!important;
  border:1px solid #C9C3B5!important;
  cursor:pointer;
  border-radius:2px;
}
.convictionPick:hover{
  border-color:var(--ink,#111)!important;
  background:#E8E2D4!important;
}
.convictionPick.isOn{
  background:rgba(13,148,136,.16)!important;
  border-color:var(--teal-pkr,#0D9488)!important;
  color:var(--ink,#111)!important;
  box-shadow:inset 0 0 0 1px rgba(13,148,136,.35);
}
.convictionPick:disabled{opacity:.55;cursor:wait}
.convictionOwn{
  margin:8px 0 12px;
  font-weight:700;
  font-size:.95rem;
  color:var(--ink,#111);
}
.convictionGrid{
  display:grid;
  grid-template-columns:minmax(110px,auto) 1fr 1fr;
  gap:6px;
  margin:8px 0 10px;
  align-items:stretch;
}
.convictionGridHead{
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--graphite,#4A5560);
  text-align:center;
  padding:4px 6px;
}
.convictionGridRowLabel{
  font-size:12px;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:var(--graphite,#4A5560);
  display:flex;
  align-items:center;
  padding-right:6px;
}
.convictionCell{
  border:1px solid rgba(17,17,17,.28);
  background:rgba(244,240,230,.75);
  border-radius:2px;
  padding:12px 10px;
  text-align:center;
  min-height:64px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:4px;
}
.convictionCell.isYours{
  border-color:var(--teal-pkr,#0D9488);
  background:rgba(13,148,136,.12);
  box-shadow:inset 0 0 0 1px rgba(13,148,136,.4);
}
.convictionCount{
  font-family:var(--font-data,ui-monospace,Menlo,monospace);
  font-size:1.45rem;
  font-weight:800;
  font-variant-numeric:tabular-nums;
  color:var(--ink,#111);
  line-height:1;
}
.convictionCellHint{
  font-size:10px;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--graphite,#4A5560);
}
.convictionCharterChip{
  display:inline-flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin:0 0 10px;
  padding:6px 10px;
  border:1px dashed var(--graphite,#4A5560);
  border-radius:2px;
  font-size:12px;
  background:rgba(244,240,230,.9);
  color:var(--ink,#111);
}
.convictionCharterChip.isTinyN{
  border-color:var(--oxblood,#8B1E3F);
  border-style:solid;
}
.convictionCharterN{
  font-family:var(--font-data,ui-monospace,Menlo,monospace);
  font-weight:800;
  font-variant-numeric:tabular-nums;
}
.convictionActions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px;
  margin:4px 0 6px;
}
.convictionClear{
  padding:6px 12px;
  font-size:12px;
  font-weight:700;
  background:transparent!important;
  border:1px solid var(--graphite,#4A5560)!important;
  color:var(--graphite,#4A5560)!important;
  cursor:pointer;
  border-radius:2px;
}
.convictionClear:hover{
  border-color:var(--oxblood,#8B1E3F)!important;
  color:var(--oxblood,#8B1E3F)!important;
}
.convictionStatus{font-size:12px}
@media(max-width:560px){
  .convictionGrid{grid-template-columns:minmax(90px,auto) 1fr 1fr;gap:4px}
  .convictionCount{font-size:1.2rem}
  .convictionPick{min-width:0;flex:1}
}

/* C1.5 — after ?confirmed=1, nudge Sign in */
#account .accountCardHighlight{
  outline:2px solid var(--teal, #0D9488);
  outline-offset:2px;
  box-shadow:0 0 0 1px rgba(13,148,136,.25);
}


/* FUN-LOCK — Lock Stock thin (fonts · light grain · swagger accents) */
body.exploreMode{
  font-family:var(--font-ui);
}
/* Subtle film grain — light, not cheesy smoke */
body.exploreMode:before{
  content:"";
  pointer-events:none;
  position:fixed;inset:0;z-index:9999;
  opacity:.045;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  mix-blend-mode:multiply;
}
@media(prefers-reduced-motion:reduce){
  body.exploreMode:before{opacity:.02}
}
body.exploreMode .wordmark,
body.exploreMode .homeWord,
body.exploreMode #viewTitle,
#profile .memberHero h2,
#bills .billAboutHeading,
.rapSheetTitle{
  font-family:var(--font-display);
  letter-spacing:.04em;
  font-weight:400;
}
body.exploreMode .homeWord{
  font-size:clamp(3.2rem,9vw,5.8rem);
  letter-spacing:.06em;
  line-height:.9;
}
.homeStamp,
.stampEyebrow,
#profile .noPhotoStamp,
.rapSheetSub{
  font-family:var(--font-stamp)!important;
  font-weight:400!important;
  letter-spacing:.18em!important;
}
.homeStamp{
  border-color:var(--gold-accent);
  color:var(--gold-accent);
  box-shadow:inset 0 0 0 1px rgba(201,162,39,.35);
  text-shadow:none;
  background:rgba(244,240,230,.45);
}
.stampEyebrow{
  border-color:var(--gold-accent);
  color:var(--gold-accent)!important;
  background:rgba(201,162,39,.08);
}
#profile .stampEyebrow,
#bills .stampEyebrow{color:var(--gold-accent)!important}
.homeNarrator{
  position:relative;z-index:1;
  font-family:var(--font-narrator);
  font-style:italic;
  font-size:clamp(1.05rem,2.4vw,1.35rem);
  line-height:1.45;
  max-width:36ch;
  margin:0 auto 1.15rem;
  color:var(--ink);
  opacity:.88;
}
body.exploreMode .charterLine,
body.exploreMode .homeTag,
.yourGuidance .charterLine,
.convictionPanel .charterLine{
  font-family:var(--font-narrator);
  font-style:italic;
}
.rapSheetTitle{
  letter-spacing:.18em;
  border-bottom-color:var(--ink);
}
.homeDoorNum{
  font-family:var(--font-stamp);
  letter-spacing:.2em;
  color:var(--gold-accent);
}
body.teamMode:before{display:none} /* no grain on dark cockpit */

/* —— Yoko · honest PROTOTYPE chip (thin; homeStamp energy, not carnival) —— */
.homeProto{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:.55rem .85rem;
  margin:1.05rem 0 0;
  padding:.45rem .75rem;
  text-align:center;
}
.protoStamp{
  display:inline-block;
  margin:0;
  padding:.32rem .72rem;
  border:2px solid var(--oxblood);
  color:var(--oxblood);
  font-family:var(--font-stamp);
  font-size:.62rem;
  letter-spacing:.22em;
  font-weight:400;
  border-radius:1px;
  transform:rotate(-1.8deg);
  box-shadow:inset 0 0 0 1px rgba(139,30,30,.28);
  background:rgba(244,240,230,.55);
  text-transform:uppercase;
}
.protoCalm{
  margin:0;
  font-size:.82rem;
  letter-spacing:.02em;
  color:var(--graphite);
  line-height:1.35;
}
body.exploreMode .protoStamp{
  border-color:var(--gold-accent);
  color:var(--gold-accent);
  box-shadow:inset 0 0 0 1px rgba(201,162,39,.32);
  background:rgba(244,240,230,.5);
}

/* Slim site-wide chip · header near Account */
.headerProto{
  display:inline-flex;
  align-items:center;
  opacity:.92;
}
.headerProtoStamp{
  display:inline-block;
  padding:.22rem .5rem;
  border:1.5px solid rgba(201,162,39,.75);
  color:var(--gold-accent);
  font-family:var(--font-stamp);
  font-size:.55rem;
  letter-spacing:.18em;
  border-radius:1px;
  background:rgba(244,240,230,.2);
  text-transform:uppercase;
  transform:rotate(-1.2deg);
  white-space:nowrap;
}
body.exploreMode .headerProtoStamp{
  border-color:rgba(201,162,39,.7);
  color:var(--gold-accent);
  background:rgba(17,17,17,.25);
}
body.teamMode .headerProtoStamp{
  border-color:#c9a22788;
  color:#d4b87e;
  background:#19252e;
}

/* Register invite hint · coordinated vocab */
#account .accountInviteHint{
  margin:.15rem 0 .35rem;
  font-size:.88rem;
  line-height:1.45;
}
