:root{--black:#050505;--paper:#f1ebe3;--white:#fff;--acid:#dcff00;--red:#ff3b30;--muted:#b9b5af;--line:3px solid var(--black)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--black);color:var(--paper);font-family:"DM Sans",Arial,sans-serif;line-height:1.5}
body:before{content:"";position:fixed;inset:0;z-index:10;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitchTiles'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
button,input,textarea{font:inherit}
button,a{touch-action:manipulation}
[hidden]{display:none!important}
.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px clamp(18px,5vw,56px);background:var(--paper);border-bottom:var(--line)}
.brand{color:var(--black);font-family:"Unbounded",sans-serif;font-weight:800;text-decoration:none;letter-spacing:-.055em;font-size:clamp(18px,3.3vw,30px);white-space:nowrap}.brand strong{color:var(--red)}
.back-link{padding:12px 15px;background:var(--black);box-shadow:4px 4px 0 var(--acid);color:#fff;font-family:"Bebas Neue",sans-serif;font-size:20px;letter-spacing:.04em;text-decoration:none;white-space:nowrap}
main{min-height:80vh}
.intro-panel,.quiz-shell,.gate-panel,.result-panel{width:min(100%,1100px);margin:auto}
.intro-panel{min-height:calc(100vh - 80px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(52px,9vw,110px) clamp(20px,6vw,72px);background:var(--black)}
.chapter-label{display:inline-block;margin:0 0 22px;padding:8px 12px;background:var(--acid);color:var(--black);font-family:"Bebas Neue",sans-serif;font-size:clamp(17px,2.2vw,23px);letter-spacing:.09em}
h1,h2,h3,h4,p{overflow-wrap:anywhere}
h1,h2,.section-heading h3{margin:0;font-family:"Unbounded",sans-serif;font-weight:800;letter-spacing:-.06em;line-height:.94;text-transform:uppercase}
h1{max-width:990px;font-size:clamp(42px,8.2vw,90px)}
h1 em,h2 em,.section-heading em{display:block;color:var(--red);font-family:"Fraunces",serif;font-weight:600;letter-spacing:-.035em;text-transform:none}
.lede{max-width:780px;margin:30px 0 24px;font-size:clamp(20px,2.6vw,29px);line-height:1.45}
.not-a-diagnosis{max-width:720px;margin-bottom:28px;padding:15px 17px;border:2px solid var(--paper);font-size:17px}.not-a-diagnosis strong{color:var(--acid);text-transform:uppercase}
.primary-button,.secondary-button,.text-button,.inline-action{border:0;cursor:pointer;font-weight:800}
.primary-button{min-height:58px;padding:15px 22px;background:var(--acid);box-shadow:6px 6px 0 var(--red);color:var(--black);font-family:"Unbounded",sans-serif;text-transform:uppercase}
.primary-button:disabled{opacity:.35;cursor:not-allowed;box-shadow:none}
.secondary-button{padding:13px 18px;border:2px solid currentColor;background:transparent;color:inherit}
.text-button,.inline-action{padding:12px 0;background:transparent;color:inherit;text-decoration:underline;text-underline-offset:5px}
.microcopy,.privacy-copy,.result-caveat{color:var(--muted);font-size:14px}
.quiz-shell{min-height:calc(100vh - 80px);padding:clamp(40px,7vw,80px) clamp(20px,6vw,72px)}
.progress-row{display:flex;align-items:center;gap:18px;margin-bottom:38px;font-family:"Bebas Neue",sans-serif;font-size:20px;letter-spacing:.06em}.progress-track{height:8px;flex:1;background:#353535}.progress-track span{display:block;width:12.5%;height:100%;background:var(--acid);transition:width .2s ease}
fieldset{min-width:0;margin:0;padding:0;border:0}legend{max-width:900px;margin-bottom:10px;font-family:"Unbounded",sans-serif;font-size:clamp(32px,6vw,62px);font-weight:800;letter-spacing:-.055em;line-height:1.02}.question-note{margin:0 0 28px;color:var(--muted);font-size:18px}
.answer-grid{display:grid;gap:12px}.answer-choice{position:relative;display:block}.answer-choice input{position:absolute;opacity:0;pointer-events:none}.answer-choice span{display:block;padding:20px 22px;border:2px solid var(--paper);background:#111;color:#fff;font-size:clamp(17px,2.2vw,21px);font-weight:700;transition:.15s}.answer-choice input:checked+span{border-color:var(--acid);background:var(--acid);box-shadow:6px 6px 0 var(--red);color:var(--black);transform:translate(-3px,-3px)}.answer-choice input:focus-visible+span{outline:3px solid var(--red);outline-offset:3px}
.quiz-actions{display:flex;align-items:center;justify-content:space-between;margin-top:30px}
.gate-panel{min-height:calc(100vh - 80px);padding:clamp(52px,8vw,90px) clamp(20px,6vw,72px);background:var(--red);color:var(--black)}.gate-panel h2{max-width:900px;font-size:clamp(40px,7.5vw,78px)}.gate-panel h2 em{color:var(--black)}.gate-panel>p{max-width:690px;font-size:20px}.gate-panel form{max-width:760px;margin-top:30px;padding:clamp(20px,4vw,36px);background:var(--paper);border:var(--line);box-shadow:8px 8px 0 var(--black)}.gate-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.gate-fields label{display:grid;gap:8px;font-weight:800}.gate-fields input{width:100%;padding:14px;border:2px solid var(--black);background:#fff}.gate-panel .privacy-copy{color:#46433f}.form-status{min-height:1.5em;font-weight:700}
.result-panel{background:var(--paper);color:var(--black)}.result-hero{padding:clamp(52px,8vw,90px) clamp(20px,6vw,72px);background:var(--black);color:#fff;border-bottom:5px solid var(--acid)}.result-hero h2{max-width:900px;font-size:clamp(46px,9vw,94px)}.result-hero>p:not(.chapter-label){max-width:790px;font-size:clamp(18px,2.2vw,24px)}
.tool-tabs{position:sticky;top:79px;z-index:9;display:grid;grid-template-columns:repeat(3,1fr);border-bottom:var(--line);background:var(--paper)}.tab-button{padding:17px 10px;border:0;border-right:2px solid var(--black);background:transparent;color:var(--black);font-family:"Bebas Neue",sans-serif;font-size:clamp(16px,2.3vw,23px);letter-spacing:.05em;cursor:pointer}.tab-button:last-child{border-right:0}.tab-button.active{background:var(--acid)}
.tool-panel{padding:clamp(36px,6vw,72px) clamp(18px,6vw,72px)}.editorial-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.paper-card{position:relative;min-height:350px;padding:28px;border:var(--line);background:#fff;box-shadow:8px 8px 0 var(--red)}.paper-card.acid-card{background:var(--acid);box-shadow:8px 8px 0 var(--black)}.paper-card h3{max-width:85%;margin:40px 0 20px;font-family:"Unbounded",sans-serif;font-size:clamp(34px,5vw,56px);letter-spacing:-.055em;text-transform:uppercase}.paper-card li{margin-bottom:12px;font-size:18px}.card-number{position:absolute;right:22px;top:18px;color:#aaa;font:700 34px/1 "Bebas Neue",sans-serif}.paper-card p{font-size:18px}.tool-panel>.secondary-button{margin-top:30px}
.section-heading{margin-bottom:28px}.section-heading h3{max-width:860px;font-size:clamp(38px,7vw,72px)}.section-heading p:last-child{max-width:700px;font-size:18px}.day-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;margin:28px 0}.day-button{aspect-ratio:1;border:2px solid var(--black);background:#fff;font-family:"Bebas Neue",sans-serif;font-size:20px;cursor:pointer}.day-button.saved:after{content:"•";display:block;color:var(--red);line-height:.2}.day-button.active{background:var(--acid);box-shadow:3px 3px 0 var(--black)}
.tracker-form{padding:clamp(18px,4vw,32px);border:var(--line);background:#fff}.tracker-meta{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:25px}.tracker-meta strong{font:800 clamp(28px,5vw,46px)/1 "Unbounded",sans-serif}.tracker-meta label{display:grid;gap:6px;font-weight:700}.tracker-meta input{padding:9px;border:2px solid var(--black)}.rating-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.rating-field{padding:15px;border:2px solid var(--black);background:var(--paper)}.rating-field>span{display:block;margin-bottom:10px;font-weight:800}.rating-options{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.rating-options label{position:relative}.rating-options input{position:absolute;opacity:0}.rating-options span{display:grid;place-items:center;min-height:42px;border:2px solid var(--black);background:#fff;font-weight:800}.rating-options input:checked+span{background:var(--acid)}.notes-field{display:grid;gap:8px;margin:20px 0;font-weight:800}.notes-field textarea{padding:13px;border:2px solid var(--black);resize:vertical}.tracker-summary{margin-top:42px}.tracker-summary h4{font:800 clamp(30px,5vw,50px)/1 "Unbounded",sans-serif;letter-spacing:-.05em;text-transform:uppercase}.summary-table-wrap{overflow-x:auto;border:2px solid var(--black)}table{width:100%;min-width:650px;border-collapse:collapse;background:#fff}th,td{padding:10px;border-bottom:1px solid #bbb;text-align:left}th{background:var(--black);color:#fff;font-family:"Bebas Neue",sans-serif;font-size:19px;letter-spacing:.04em}.tracker-summary .secondary-button{margin-top:16px}
.provider-list{display:grid;gap:12px;padding:0;counter-reset:provider}.provider-list li{list-style:none;position:relative;padding:20px 20px 20px 74px;border:var(--line);background:#fff;font-size:clamp(18px,2.3vw,23px);font-weight:700;counter-increment:provider}.provider-list li:before{content:counter(provider,decimal-leading-zero);position:absolute;left:18px;top:18px;color:var(--red);font:700 29px/1 "Bebas Neue",sans-serif}.print-note{margin-top:30px;padding:25px;background:var(--acid);border:var(--line)}.print-note strong{font:800 26px/1 "Unbounded",sans-serif;text-transform:uppercase}.download-link{display:inline-block;margin-top:28px;color:var(--black);font-weight:800;text-underline-offset:5px}
footer{display:flex;justify-content:space-between;gap:20px;padding:30px clamp(20px,6vw,72px);border-top:3px solid var(--acid);background:var(--black);color:#fff}footer p{margin:0}footer a{color:var(--acid)}
@media(max-width:700px){.site-header{padding:16px 14px}.back-link{font-size:16px;padding:10px}.intro-panel{min-height:auto}.gate-fields,.editorial-grid,.rating-grid{grid-template-columns:1fr}.tool-tabs{top:66px}.tab-button{font-size:15px;padding:14px 5px}.day-strip{grid-template-columns:repeat(7,1fr)}.day-button{font-size:17px}.tracker-meta{align-items:flex-start;flex-direction:column}.paper-card{min-height:0}.result-hero h2{font-size:clamp(40px,13vw,64px)}footer{flex-direction:column}}
@media(max-width:420px){.brand{font-size:16px}.back-link{font-size:14px}.intro-panel,.quiz-shell,.gate-panel{padding-left:16px;padding-right:16px}.progress-row{align-items:flex-start;flex-direction:column}.progress-track{width:100%;flex:none}.day-strip{gap:4px}.day-button{font-size:15px}.provider-list li{padding-left:62px}.result-hero h2{font-size:38px}}
@media print{body{background:#fff;color:#000}.site-header,.tool-tabs,.quiz-shell,.intro-panel,.gate-panel,footer,.primary-button,.secondary-button,.inline-action,.download-link,.result-caveat{display:none!important}.result-panel,.tool-panel{display:block!important;width:100%;padding:20px;background:#fff}.result-hero{padding:20px;background:#fff;color:#000;border-bottom:3px solid #000}.result-hero h2{font-size:48px}.editorial-grid{grid-template-columns:1fr 1fr}.paper-card{min-height:0;box-shadow:none}.tracker-form,.day-strip{display:none}.summary-table-wrap{overflow:visible}.print-note{display:none}.provider-list li{break-inside:avoid}.chapter-label{border:1px solid #000}.tool-panel{break-before:auto}}
