@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;--spacing:.25rem;--container-3xl:48rem;--container-6xl:72rem;--default-font-family:Arial, Helvetica, sans-serif;--default-mono-font-family:"SFMono-Regular", Consolas, "Liberation Mono", monospace}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.mt-12{margin-top:calc(var(--spacing) * 12)}.mt-14{margin-top:calc(var(--spacing) * 14)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.h-full{height:100%}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-full{width:100%}.max-w-3xl{max-width:var(--container-3xl)}.max-w-6xl{max-width:var(--container-6xl)}.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-col{flex-direction:column}.gap-4{gap:calc(var(--spacing) * 4)}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.px-5{padding-inline:calc(var(--spacing) * 5)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow\!{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a)!important;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)!important}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}@media (min-width:40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:px-8{padding-inline:calc(var(--spacing) * 8)}}@media (min-width:64rem){.lg\:px-10{padding-inline:calc(var(--spacing) * 10)}}}:root{--background:#123467;--foreground:#eaf2ff;--brown:#0b1220;--red:#ff6b5b;--line:#78beff47;--card:#16336b;--tan:#1d4c9e;--muted:#9fbbe4;--accent:#7ee63f;--accent-ink:#0b1220;--party-dem:#587a9e;--party-rep:#a65848;--party-ind:#6f8264;--party-vacant:#c9b8a3}*{box-sizing:border-box}html{background:var(--background);scroll-behavior:smooth}body,main{color:var(--foreground);background-color:#0000;background-image:linear-gradient(90deg,#ffffff0d 1px,#0000 1px),radial-gradient(120% 90% at 50% 0,#2f6fd0 0%,#1d4c9e 45%,#123467 100%);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:72px 72px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1px}::selection{color:var(--foreground);background:#f2cf63}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1.5rem;padding-bottom:1rem;display:flex}.site-mark{background:var(--accent);color:var(--accent-ink);letter-spacing:0;justify-content:center;align-items:center;width:2.4rem;height:2.4rem;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.78rem;font-weight:700;text-decoration:none;display:inline-flex}nav{flex-wrap:wrap;justify-content:flex-end;gap:1rem;display:flex}nav a,footer a{color:var(--muted);font-size:.95rem;text-decoration:none}nav a:hover,footer a:hover{color:var(--foreground);text-decoration:underline}h1,h2,h3,p{margin:0}.hero{border-bottom:1px solid var(--line);grid-template-columns:minmax(12rem,19rem) minmax(0,1fr);align-items:center;gap:clamp(1.5rem,5vw,4rem);padding:clamp(3rem,7vw,5.5rem) 0;display:grid}.project-hero{border-bottom:1px solid var(--line);padding:clamp(2.5rem,6vw,4rem) 0 2rem}.project-hero h1{max-width:12ch;font-size:clamp(2.7rem,7vw,5.4rem)}.portrait-frame{aspect-ratio:1;background:linear-gradient(#06102638, #06102638), url(/profile-picture.png) center 34% / cover no-repeat, var(--brown);border:1px solid var(--brown);width:100%;max-width:18rem;box-shadow:12px 12px #0610266b}h1{color:var(--foreground);letter-spacing:0;max-width:8ch;margin-top:.55rem;font-size:clamp(3.25rem,8vw,6.6rem);font-weight:760;line-height:.92}h2{color:var(--foreground);letter-spacing:0;font-size:clamp(1.65rem,3vw,2.65rem);font-weight:760;line-height:1.05}h3{color:var(--foreground);letter-spacing:0;font-size:1.18rem;font-weight:760;line-height:1.2}.eyebrow,.project-topline,.tag-row span{color:#5fe0f5;letter-spacing:0;text-transform:uppercase;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.74rem;font-weight:700}.lede{color:var(--muted);max-width:28rem;margin-top:1rem;font-size:clamp(1rem,1.6vw,1.18rem);line-height:1.55}.hero-links{gap:.75rem;margin-top:1.35rem;display:flex}.hero-links a{border:1px solid var(--brown);color:var(--foreground);padding:.62rem .8rem;font-weight:700;text-decoration:none}.hero-links a:hover{background:var(--brown);color:#eaf2ff}.section-block{border-bottom:1px solid var(--line);padding:3.25rem 0}.section-heading{gap:.45rem;margin-bottom:1.25rem;display:grid}.project-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,21rem),1fr));gap:1rem;display:grid}.project-card{background:var(--card);border:1px solid var(--line);color:inherit;flex-direction:column;gap:.95rem;min-height:14rem;padding:1.15rem;text-decoration:none;transition:border-color .16s,box-shadow .16s,transform .16s;display:flex;box-shadow:0 1px #06102638}a.project-card{cursor:pointer}.project-card-linked{border-color:var(--foreground)}a.project-card:hover,a.project-card:focus-visible{border-color:var(--foreground);outline:none;transform:translateY(-2px);box-shadow:8px 8px #06102673}.project-topline{color:#766e62;justify-content:space-between;gap:1rem;display:flex}.project-card p,.mini-section p,.mini-section li{color:var(--muted);font-size:.98rem;line-height:1.55}.tag-row{flex-wrap:wrap;gap:.45rem;margin-top:auto;display:flex}.tag-row span{background:var(--tan);border:1px solid var(--line);color:#eaf2ff;padding:.42rem .55rem}.project-link-cue{background:var(--brown);color:#eaf2ff;justify-content:center;align-items:center;width:fit-content;min-height:2.4rem;margin-top:.25rem;padding:0 .8rem;font-weight:800;display:inline-flex}.project-link-cue:after{content:"→";margin-left:.45rem}.details-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));gap:1rem;padding:3rem 0;display:grid}.single-detail{grid-template-columns:minmax(0,42rem)}.mini-section{background:var(--card);border:1px solid var(--line);padding:1.25rem;box-shadow:0 1px #06102638}.mini-section h2{max-width:28rem;margin-top:.55rem}.mini-section p{margin-top:.85rem}.mini-section ul{gap:.65rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}footer{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:1rem;padding:1.25rem 0 2rem;display:flex}.pulse-shell{padding:1.5rem 0 4rem}.pulse-controls{background:var(--brown);color:#eaf2ff;grid-template-columns:minmax(0,1fr) minmax(14rem,20rem);align-items:center;gap:1rem;padding:1rem;display:grid}.pulse-controls .eyebrow,.pulse-controls h2{color:#eaf2ff}.pulse-controls label{gap:.45rem;display:grid}.pulse-controls label span{text-transform:uppercase;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.74rem;font-weight:700}.pulse-controls select{appearance:none;background:var(--card);border:1px solid var(--line);color:var(--foreground);font:inherit;min-height:2.75rem;padding:0 .8rem;font-weight:700}.dashboard-grid{grid-template-columns:minmax(16rem,.75fr) minmax(0,1.25fr);gap:1rem;margin-top:1rem;display:grid}.dashboard-card,.recent-panel,.table-panel{background:var(--card);border:1px solid var(--line);padding:1.15rem;box-shadow:0 1px #06102638}.score-card{background:var(--brown);color:#eaf2ff}.score-card .eyebrow,.score-card h2,.score-card p{color:#eaf2ff}.score-header{justify-content:space-between;align-items:start;gap:1rem;display:flex}.rank-pill{background:var(--card);color:var(--foreground);padding:.45rem .55rem;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.9rem;font-weight:800}.score-number{color:#eaf2ff;letter-spacing:0;margin-top:.7rem;font-size:clamp(4.6rem,13vw,8rem);font-weight:850;line-height:.9}.score-bar{background:#fffaf03d;height:.72rem;margin:1rem 0;overflow:hidden}.score-bar span{background:var(--card);height:100%;display:block}.verdict-card h2{max-width:24ch;margin:.7rem 0 1rem;font-size:clamp(1.65rem,3vw,2.45rem)}.verdict-card p{color:var(--muted);max-width:46rem;line-height:1.55}.graph-card{grid-column:span 2}.form-graph{background:var(--tan);border:1px solid var(--line);margin-top:1rem;padding:.75rem}.form-graph svg{width:100%;height:auto;display:block}.graph-grid-line{stroke:#78beff47;stroke-width:1px}.graph-area{fill:#78beff2e}.graph-line{fill:none;stroke:var(--brown);stroke-linecap:round;stroke-linejoin:round;stroke-width:6px}.graph-dot{fill:var(--card);stroke:var(--brown);stroke-width:4px}.result-w-dot{fill:#eaf2ff}.result-d-dot{fill:#e0c9a9}.result-l-dot{fill:#d8a796}.graph-label{fill:var(--brown);font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:18px;font-weight:800}.graph-caption{color:var(--muted);text-transform:uppercase;justify-content:space-between;margin-top:.35rem;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.72rem;display:flex}.metrics-card{grid-column:span 2}.metric-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem;margin-top:1rem;display:grid}.metric-grid article{background:var(--tan);border:1px solid var(--line);padding:.9rem}.metric-grid span{color:var(--foreground);font-size:2rem;font-weight:850;line-height:1;display:block}.metric-grid p{color:var(--muted);margin-top:.45rem;font-size:.86rem;line-height:1.35}.lower-grid{grid-template-columns:minmax(0,1fr) minmax(18rem,.65fr);gap:1rem;margin-top:1rem;display:grid}.match-strip{grid-template-columns:repeat(5,minmax(0,1fr));gap:.65rem;display:grid}.match-card{border:1px solid var(--line);padding:.8rem}.match-card span{background:var(--brown);color:#eaf2ff;justify-content:center;align-items:center;width:1.8rem;height:1.8rem;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.78rem;font-weight:800;display:inline-flex}.match-card h3{margin-top:.7rem;font-size:1.45rem}.match-card p,.match-card small{color:var(--muted);margin-top:.35rem;line-height:1.35;display:block}.result-w{background:#f9f5e9}.result-d{background:var(--tan)}.result-l{background:#ead0c8}.pulse-table{gap:.35rem;display:grid}.pulse-table button{border:1px solid var(--line);color:var(--foreground);cursor:pointer;font:inherit;text-align:left;background:0 0;grid-template-columns:3rem minmax(0,1fr) 3rem;align-items:center;min-height:2.45rem;padding:0 .65rem;display:grid}.pulse-table button:hover,.pulse-table button.active{background:var(--brown);border-color:var(--foreground);color:#eaf2ff}.pulse-loading{background:linear-gradient(90deg, var(--tan), var(--card), var(--tan));border:1px solid var(--line);height:22rem;margin-top:1rem}.gddl-range-row{align-items:flex-end;gap:.65rem;display:flex}.gddl-range-row label{gap:.45rem;display:grid}.gddl-range-row input[type=number]{appearance:none;-moz-appearance:textfield;background:var(--card);border:1px solid var(--line);color:var(--foreground);font:inherit;width:5rem;min-height:2.75rem;padding:0 .7rem;font-weight:700}.gddl-range-row input[type=number]::-webkit-inner-spin-button{opacity:1}.gddl-range-row input[type=number]::-webkit-outer-spin-button{opacity:1}.gddl-start-btn{background:var(--card);border:1px solid var(--line);color:var(--foreground);cursor:pointer;font:inherit;align-self:flex-end;min-height:2.75rem;padding:0 1.1rem;font-weight:800;transition:opacity .12s}.gddl-start-btn:hover{opacity:.82}.gddl-ghost-btn{border:1px solid var(--brown);color:var(--foreground);cursor:pointer;font:inherit;background:0 0;min-height:2.4rem;padding:0 .9rem;font-weight:700;transition:opacity .12s}.gddl-ghost-btn:hover{opacity:.7}.gddl-error{color:var(--red);margin-top:.75rem}.gddl-arena{grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem;display:grid}.gddl-card{background:var(--card);border:2px solid var(--line);cursor:pointer;font:inherit;text-align:left;flex-direction:column;width:100%;padding:0;transition:border-color .14s,box-shadow .14s,transform .14s;display:flex}.gddl-card:hover:not(:disabled){border-color:var(--foreground);transform:translateY(-2px);box-shadow:6px 6px #06102673}.gddl-card:disabled{cursor:default}.gddl-card-thumb{aspect-ratio:16/9;background:var(--tan);object-fit:cover;width:100%;display:block}.gddl-card-body{padding:.9rem 1rem 1rem}.gddl-card-name{color:var(--foreground);margin:0;font-size:1.05rem;font-weight:760;line-height:1.2}.gddl-card-creator{color:var(--muted);margin:.3rem 0 0;font-size:.88rem;line-height:1.4}.gddl-card-tier{color:var(--foreground);margin:.6rem 0 0;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:1.15rem;font-weight:800}.gddl-card-harder{border-color:#2d7a2d;box-shadow:6px 6px #2d7a2d2e}.gddl-card-easier{border-color:#b81c1c;box-shadow:6px 6px #b81c1c26}.gddl-card-tied{border-color:#b07a00;box-shadow:6px 6px #b07a0026}.gddl-hint{color:var(--muted);text-transform:uppercase;margin-top:.75rem;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.74rem;font-weight:700}.gddl-result-score{color:var(--foreground);letter-spacing:0;margin:.5rem 0;font-size:clamp(5rem,16vw,9rem);font-weight:850;line-height:.9}.gddl-result-actions{gap:.65rem;margin-top:1.5rem;display:flex}.elections-page{width:100%;max-width:min(100%,92rem);margin:0 auto;padding:1rem 1.25rem 2rem}@media (min-width:640px){.elections-page{padding:1.25rem 1.75rem 2.5rem}}.elections-hero.project-hero{padding:1rem 0 .85rem}.elections-hero h1{max-width:none;margin-top:.35rem;font-size:clamp(2rem,4vw,3.25rem);line-height:1.05}.elections-hero .lede{max-width:40rem;margin-top:.4rem;font-size:.95rem}.elections-page .pulse-shell{padding:.75rem 0 2rem}.elections-controls{background:var(--brown);color:#eaf2ff;grid-template-columns:minmax(0,1fr) minmax(14rem,20rem);align-items:center;gap:1rem;padding:1rem;display:grid}.elections-controls .eyebrow,.elections-controls h2{color:#eaf2ff}.elections-input-row{align-items:flex-end;gap:.65rem;display:flex}.elections-input-row label{flex:1;gap:.45rem;display:grid}.elections-input-row label span{text-transform:uppercase;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.74rem;font-weight:700}.elections-input-row input{background:var(--card);border:1px solid var(--line);color:var(--foreground);font:inherit;letter-spacing:.08em;width:100%;min-height:2.75rem;padding:0 .8rem;font-weight:700}.elections-input-row button{background:var(--card);border:1px solid var(--line);color:var(--foreground);cursor:pointer;font:inherit;min-height:2.75rem;padding:0 1.1rem;font-weight:800;transition:opacity .12s}.elections-input-row button:hover:not(:disabled){opacity:.82}.elections-input-row button:disabled{cursor:wait;opacity:.6}.elections-status{background:var(--card);border:1px solid var(--line);gap:.6rem;margin-top:1rem;padding:1.15rem;display:grid;box-shadow:0 1px #06102638}.elections-status p{color:var(--muted);max-width:46rem;line-height:1.55}.elections-status .pulse-loading{height:10rem;margin-top:.25rem}.elections-error{color:var(--red)}.elections-date{color:var(--muted);text-transform:uppercase;margin-top:1rem;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.8rem;font-weight:700}.race-section{border-top:1px solid var(--line);margin-top:1.5rem;padding-top:1.5rem}.race-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,21rem),1fr));gap:1rem;display:grid}.race-card{background:var(--card);border:1px solid var(--line);padding:1.15rem;box-shadow:0 1px #06102638}.race-party{color:#5fe0f5;text-transform:uppercase;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.74rem;font-weight:700}.race-empty{color:var(--muted);margin-top:.85rem}.candidate-list{gap:.5rem;margin:.85rem 0 0;padding:0;list-style:none;display:grid}.candidate-row{border:1px solid var(--line)}.candidate-trigger,.candidate-row-static{color:inherit;font:inherit;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:1rem;width:100%;min-height:2.6rem;padding:.55rem .7rem;display:flex}.candidate-trigger{cursor:pointer}.candidate-trigger:hover,.candidate-trigger:focus-visible{background:var(--tan);outline:none}.candidate-identity{flex-wrap:wrap;align-items:center;display:flex}.candidate-row strong{color:var(--foreground);font-weight:760}.candidate-money{color:var(--foreground);white-space:nowrap;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.78rem}.candidate-nomoney{color:var(--muted);white-space:nowrap;font-size:.78rem}.candidate-detail{border-top:1px solid var(--line);gap:.85rem;padding:.75rem .7rem;display:flex}.candidate-photo{border:1px solid var(--line);flex:none;align-self:flex-start;width:4.5rem;height:auto}.candidate-facts{gap:.6rem;min-width:0;display:grid}.candidate-stats{flex-wrap:wrap;gap:.5rem 1.4rem;margin:0;display:flex}.candidate-stats dt{color:var(--muted);letter-spacing:.02em;text-transform:uppercase;font-size:.72rem}.candidate-stats dd{margin:.1rem 0 0;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.92rem}.candidate-currently{background:var(--tan);border-left:2px solid var(--brown);padding:.35rem .5rem;font-size:.82rem}.candidate-policy{font-size:.88rem;line-height:1.45}.candidate-policy-label{color:var(--muted);letter-spacing:.02em;text-transform:uppercase;font-size:.72rem}.candidate-caveat{color:var(--muted);margin-top:.15rem;font-size:.78rem;font-style:italic;display:block}.candidate-finance{border-top:1px dashed var(--line);padding-top:.6rem}.candidate-asof{color:var(--muted);margin-top:.4rem;font-size:.76rem}.candidate-links{flex-wrap:wrap;gap:.35rem 1rem;font-size:.86rem;display:flex}.candidate-links span{color:var(--muted)}.candidate-rest{margin-top:.5rem}.candidate-rest-trigger{color:var(--foreground);cursor:pointer;font:inherit;background:0 0;border:none;padding:.3rem 0;font-size:.82rem;font-weight:700;text-decoration:underline}.candidate-rest-trigger:focus-visible{outline:1px solid var(--brown)}.candidate-rest .candidate-list{margin-top:.45rem}.candidate-incumbent{background:var(--tan);border:1px solid var(--line);color:#eaf2ff;text-transform:uppercase;margin-left:.55rem;padding:.2rem .4rem;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.68rem;font-weight:700}.candidate-row a{color:var(--foreground);white-space:nowrap;font-weight:700}.race-accordion-list{gap:.5rem;margin-top:.75rem;display:grid}.race-accordion{background:var(--card);border:1px solid var(--line)}.race-accordion-trigger{color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:.75rem;width:100%;padding:.7rem .85rem;display:flex}.race-accordion-trigger:before{content:"";border:.3rem solid #0000;border-left:.42rem solid #7a3027;border-right-width:0;flex:none;width:0;height:0;transition:transform .14s}.race-accordion.is-open .race-accordion-trigger:before{transform:rotate(90deg)}.race-accordion-trigger:hover,.race-accordion-trigger:focus-visible{background:var(--tan);outline:none}.race-accordion-title{color:#5fe0f5;text-transform:uppercase;flex:1;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.74rem;font-weight:700}.race-accordion-meta{color:var(--muted);white-space:nowrap;font-size:.8rem}.race-accordion-body{border-top:1px solid var(--line);padding:.65rem .85rem .85rem}.race-accordion-body .candidate-list,.race-accordion-body .race-empty{margin-top:0}.map-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:1rem;margin-top:1rem;display:grid}.us-map{background:var(--card);border:1px solid var(--line);padding:.75rem;position:relative;box-shadow:0 1px #06102638}.us-map svg{width:100%;height:auto;max-height:78vh;display:block;overflow:hidden}.map-loading .pulse-loading{height:20rem;margin-top:0}.map-zoom{transition:transform .45s}.map-state{cursor:pointer;stroke:var(--card);stroke-width:.75px;transition:filter .12s}.map-state:hover,.map-state:focus-visible{filter:brightness(1.12);outline:none}.map-state.senate-race{stroke:var(--brown);stroke-width:1.1px}.map-state.backdrop{cursor:default;pointer-events:none;stroke:var(--line)}.map-state.selected{cursor:default;pointer-events:none;stroke:var(--brown)}.map-senate-badge{fill:var(--brown);pointer-events:none;stroke:var(--card);stroke-width:1px}.map-district{cursor:pointer;stroke:var(--card);stroke-width:1px;vector-effect:non-scaling-stroke;transition:filter .12s}.map-district:hover,.map-district:focus-visible{filter:brightness(1.15);outline:none}.map-district.highlighted{stroke:#fffaf0;stroke-dasharray:4 3;stroke-width:2px}.map-district.selected{stroke:var(--foreground);stroke-width:2.5px}.map-district-label{dominant-baseline:middle;fill:#eaf2ff;paint-order:stroke;pointer-events:none;stroke:#2a211c8c;stroke-width:.14em;text-anchor:middle;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-weight:700}.map-breadcrumb{z-index:2;align-items:baseline;gap:.65rem;display:flex;position:absolute;top:.8rem;left:.9rem}.map-breadcrumb button{color:var(--foreground);cursor:pointer;font:inherit;background:0 0;border:none;padding:0;font-weight:800;text-decoration:underline}.map-breadcrumb span{color:var(--muted);text-transform:uppercase;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.78rem;font-weight:700}.map-tooltip{background:var(--brown);color:#eaf2ff;pointer-events:none;z-index:3;gap:.15rem;max-width:16rem;padding:.55rem .7rem;font-size:.82rem;line-height:1.35;display:grid;position:absolute}.map-hint{color:var(--muted);margin-top:.5rem;font-size:.85rem}.map-zip-hint{color:var(--foreground);margin-top:.75rem;font-weight:700}.map-legend{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;align-items:center;gap:.4rem 1rem;margin-top:.75rem;padding-top:.75rem;font-size:.78rem;display:flex}.map-legend span{align-items:center;gap:.4rem;display:inline-flex}.map-legend i{border:1px solid var(--line);width:.85rem;height:.85rem;display:inline-block}.map-legend .legend-hatch{background:repeating-linear-gradient(45deg, var(--party-vacant), var(--party-vacant) 2px, var(--card) 2px, var(--card) 4px)}.map-legend .legend-badge{background:var(--brown);border-radius:50%}.map-legend p{flex-basis:100%;margin:0;line-height:1.45}.map-panels{gap:1rem;display:grid}.map-panel{background:var(--card);border:1px solid var(--line);padding:1.15rem;box-shadow:0 1px #06102638}.map-panel h3{color:var(--foreground);margin:.25rem 0 0;font-size:1.15rem}.map-panel-note{color:var(--muted);margin-top:.65rem;line-height:1.5}.map-panel .race-section{border-top:none;margin-top:.5rem;padding-top:0}.map-panel .race-section .section-heading h2{font-size:1rem}.senator-list{gap:.5rem;margin:.85rem 0 0;padding:0;list-style:none;display:grid}.senator-list li{border:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:.35rem .75rem;padding:.55rem .7rem;display:flex}.senator-photo{border:1px solid var(--line);flex:none;width:2.1rem;height:auto}.senator-name{gap:.1rem;display:grid}.senator-list li span{color:var(--muted);font-size:.85rem}.senator-name strong{color:var(--foreground)}.senator-list li a{color:var(--foreground);white-space:nowrap;margin-left:auto;font-weight:700}.voice-card{background:var(--card);border:1px solid var(--line);justify-items:start;gap:.6rem;margin-top:1.25rem;padding:1.15rem;display:grid;box-shadow:0 1px #06102638}.voice-card h3{color:var(--foreground);margin:0;font-size:1.15rem}.voice-card-note{color:var(--muted);max-width:46rem;line-height:1.55}.voice-number{color:var(--foreground);letter-spacing:.02em;font-size:1.55rem;font-weight:800;text-decoration:none}.voice-number:hover{text-decoration:underline}.voice-wake-btn{border:1px solid var(--brown);color:var(--foreground);cursor:pointer;font:inherit;background:0 0;min-height:2.4rem;padding:0 .9rem;font-weight:700;transition:opacity .12s}.voice-wake-btn:hover{opacity:.7}.voice-status{color:var(--muted);max-width:46rem;line-height:1.55}.voice-status-ready{color:var(--foreground);font-weight:700}.voice-card .pulse-loading{width:100%;height:3rem}.engine-prose p{color:var(--muted);max-width:42rem;margin-top:.9rem;font-size:.98rem;line-height:1.65}.engine-prose em{font-style:italic}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.engine-stage{aspect-ratio:16/10;background:var(--card);border:1px solid var(--line);max-height:70vh;margin-top:1rem;padding:.75rem;position:relative;box-shadow:0 1px #06102638}.engine-canvas{cursor:grab;touch-action:pan-y;width:100%;height:100%;display:block}.engine-canvas:focus-visible{outline:2px solid var(--brown);outline-offset:2px}.engine-explode-control input[type=range]{appearance:none;cursor:pointer;font:inherit;background:0 0;width:100%;min-height:2.75rem}.engine-explode-control input[type=range]::-webkit-slider-runnable-track{border:1px solid var(--line);background:#fffaf042;height:.5rem}.engine-explode-control input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--card);border:1px solid var(--line);width:1rem;height:1.5rem;margin-top:-.56rem}.engine-explode-control input[type=range]::-moz-range-track{border:1px solid var(--line);background:#fffaf042;height:.5rem}.engine-explode-control input[type=range]::-moz-range-thumb{background:var(--card);border:1px solid var(--line);border-radius:0;width:1rem;height:1.5rem}.engine-explode-control input[type=range]:focus-visible{outline-offset:3px;outline:2px solid #fffaf0}.engine-toolbar{flex-wrap:wrap;gap:.6rem;margin-top:.75rem;display:flex}.engine-ghost-btn{border:1px solid var(--brown);color:var(--foreground);cursor:pointer;font:inherit;background:0 0;min-height:2.6rem;padding:0 .9rem;font-weight:700}.engine-ghost-btn:hover:not(:disabled),.engine-ghost-btn[aria-pressed=true]{background:var(--brown);color:#eaf2ff}.engine-ghost-btn:disabled{cursor:default;opacity:.45}.engine-hero{padding-bottom:1.25rem}.engine-overlay{pointer-events:none;z-index:2;position:absolute;inset:.75rem}.engine-leader{width:100%;height:100%;position:absolute;top:0;left:0;overflow:visible}.engine-leader line{stroke:var(--brown);stroke-width:1.5px;transition:opacity .14s}.engine-leader circle{fill:#7a3027;transition:opacity .14s}.engine-callout{background:var(--card);border:1px solid var(--brown);width:max-content;max-width:min(21rem,70%);padding:.8rem .9rem;transition:opacity .14s;position:absolute;top:0;left:0;box-shadow:5px 5px #06102673}.engine-callout h3{margin-top:.35rem}.engine-callout-blurb{color:var(--muted);margin-top:.55rem;font-size:.9rem;line-height:1.5}.engine-layout{margin-top:1rem}.engine-note{border-top:1px solid var(--line);color:var(--muted);max-width:46rem;margin-top:1.5rem;padding-top:1rem;font-size:.9rem;line-height:1.6}.engine-note em{font-style:italic}.engine-part-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.engine-part-button{background:var(--card);border:1px solid var(--line);color:inherit;cursor:pointer;font:inherit;text-align:left;justify-content:space-between;align-items:center;gap:.75rem;width:100%;min-height:2.6rem;padding:.55rem .75rem;transition:background .14s,border-color .14s;display:flex}.engine-part-button:hover,.engine-part-button:focus-visible{background:var(--tan);border-color:var(--foreground);outline:none}.engine-part-button.selected{background:var(--brown);border-color:var(--foreground);color:#eaf2ff}.engine-part-name{font-weight:700}.engine-part-count{color:#5fe0f5;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.74rem;font-weight:700}.engine-part-button.selected .engine-part-count{color:#eaf2ff}.engine-detail{min-height:16rem}.engine-detail h3{margin-top:.4rem}.engine-detail-blurb{color:var(--muted);margin-top:.75rem;font-size:.98rem;line-height:1.6}.engine-spec{border-top:1px solid var(--line);gap:.5rem;margin:1rem 0 0;padding-top:.85rem;display:grid}.engine-spec div{justify-content:space-between;gap:1rem;display:flex}.engine-spec dt{color:#5fe0f5;text-transform:uppercase;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.74rem;font-weight:700}.engine-spec dd{color:var(--foreground);text-align:right;margin:0;font-weight:700}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.engine-part-button{transition:none}}@media (max-width:900px){.map-layout{grid-template-columns:1fr}.engine-stage{aspect-ratio:4/3}}.fdash-main{min-height:100vh}.fdash-page{flex-direction:column;gap:.75rem;width:100%;max-width:min(100%,100rem);height:100vh;margin:0 auto;padding:.85rem 1rem 1rem;display:flex}.fdash-header{border-bottom-color:#78beff47;flex:none;padding-bottom:.7rem}.fdash-header .site-mark{color:#0b1220;background:#7ee63f}.fdash-header nav a{color:#eaf2ffd1}.fdash-header nav a:hover{color:#7ee63f}.fdash-shell{flex:auto;min-height:0;display:flex}.fdash-canvas-wrap{background:#0b2a8a;border:2px solid #78beff8c;border-radius:4px;flex:auto;width:100%;min-height:0;line-height:0;position:relative;overflow:hidden;box-shadow:0 10px 30px #030e2473}.fdash-shell-full{width:100%;height:100%}.fdash-shell-full .fdash-canvas-wrap,.fdash-shell:fullscreen .fdash-canvas-wrap{border:0}.fdash-canvas{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;width:100%;height:100%;display:block}.fdash-overlay{text-align:center;background:#060e2cdb;flex-direction:column;justify-content:center;align-items:center;gap:.55rem;line-height:1.4;display:flex;position:absolute;inset:0}.fdash-over-eyebrow{color:#7ee63f;font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;font-size:.72rem}.fdash-over-title{color:#fff;letter-spacing:-.01em;font-size:clamp(1.6rem,4vw,2.6rem);font-weight:800}.fdash-over-note{color:#ffffffbf;font-size:.92rem}.fdash-over-keys{color:#ffffff80;font-family:var(--font-mono);margin-top:.4rem;font-size:.72rem}.fdash-name-row{gap:.5rem;margin-top:.4rem;display:flex}.fdash-pause-row{gap:.5rem;margin-top:.3rem;display:flex}.fdash-name-input{color:#fff;font:inherit;background:#ffffff1a;border:1px solid #fff6;width:12rem;min-height:2.6rem;padding:0 .75rem}.fdash-name-input::placeholder{color:#ffffff73}.fdash-btn{color:#0b1220;cursor:pointer;font:inherit;background:#7ee63f;border:0;min-height:2.6rem;padding:0 1.5rem;font-weight:800;transition:filter .14s,transform .14s}.fdash-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}.fdash-circle-row{gap:1.1rem;margin-top:.6rem;display:flex}.fdash-circle{aspect-ratio:1;color:#0b1220;cursor:pointer;background:#7ee63f;border:3px solid #0b1220;border-radius:50%;justify-content:center;align-items:center;width:4.2rem;padding:0;font-size:1.65rem;line-height:1;transition:transform .12s,filter .12s;display:inline-flex}.fdash-circle:hover{filter:brightness(1.12);transform:translateY(-2px)scale(1.04)}.fdash-circle-on{background:#5fe0f5}.fdash-controls{z-index:2;flex-wrap:wrap;gap:.35rem;display:flex;position:absolute;bottom:.6rem;left:.6rem}.fdash-ghost-btn{color:#ffffffe0;cursor:pointer;font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;background:#0b1220a8;border:1px solid #ffffff57;padding:.36rem .6rem;font-size:.7rem;transition:background-color .14s,border-color .14s}.fdash-ghost-btn:hover{background:#7ee63f47;border-color:#7ee63f}.fdash-ghost-btn[aria-pressed=true]{color:#0b1220;background:#7ee63f;border-color:#7ee63f}@media (max-width:620px){.fdash-controls{bottom:.4rem;left:.4rem}.site-header{flex-direction:column;align-items:flex-start}nav{justify-content:flex-start}.hero{grid-template-columns:1fr}.portrait-frame{max-width:16rem}h1{font-size:3.5rem}.pulse-controls,.elections-controls,.dashboard-grid,.lower-grid{grid-template-columns:1fr}.candidate-trigger,.candidate-row-static{flex-direction:column;align-items:flex-start;gap:.35rem}.candidate-detail{flex-direction:column}.metric-grid,.match-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.graph-card,.metrics-card{grid-column:auto}.gddl-arena{grid-template-columns:1fr}.gddl-range-row{flex-wrap:wrap}}.fdash-level-row{flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:14px;display:flex}.fdash-level-btn{letter-spacing:.04em;color:#cfe3ff;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff47;border-radius:4px;padding:6px 12px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.72rem}.fdash-level-btn:hover{background:#ffffff24}.fdash-level-btn-on{color:#0b1220;background:#7ee63f;border-color:#7ee63f;font-weight:700}.menu-main{position:relative;overflow-x:clip}.gd-bg{z-index:0;background:radial-gradient(120% 90% at 50% 0,#2f6fd0 0%,#1d4c9e 45%,#123467 100%);position:fixed;inset:0;overflow:hidden}.gd-streaks{pointer-events:none;background-image:repeating-linear-gradient(17deg,#03102838 0 3px,#0000 3px 173px),repeating-linear-gradient(74deg,#0310282e 0 2px,#0000 2px 241px),repeating-linear-gradient(112deg,#ffffff17 0 2px,#0000 2px 197px),repeating-linear-gradient(143deg,#03102833 0 3px,#0000 3px 313px),repeating-linear-gradient(96deg,#ffffff0f 0 2px,#0000 2px 269px);animation:34s linear infinite gd-drift-streaks;position:absolute;inset:-25%}@keyframes gd-drift-streaks{0%{background-position:0 0,0 0,0 0,0 0,0 0}to{background-position:173px 0,-241px 0,197px 0,-313px 0,269px 0}}.gd-vignette{pointer-events:none;background:radial-gradient(115% 80% at 50% 42%,#0000 30%,#020c209e 100%);position:absolute;inset:0}.gd-canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.gd-ground{pointer-events:none;background:linear-gradient(#16386c 0%,#0a1f3d 100%);height:16vh;position:absolute;bottom:0;left:0;right:0}.gd-ground:before{content:"";background:#ffd23f;height:3px;position:absolute;top:0;left:0;right:0;box-shadow:0 0 14px 2px #ffd23f99}.gd-ground-streaks{background-image:repeating-linear-gradient(28deg,#ffffff1a 0 3px,#0000 3px 131px),repeating-linear-gradient(152deg,#020c2047 0 3px,#0000 3px 167px);animation:8s linear infinite gd-drift-ground;position:absolute;inset:0}@keyframes gd-drift-ground{0%{background-position:0 0,0 0}to{background-position:-131px 0,167px 0}}.menu-screen{z-index:1;grid-template-columns:minmax(0,1.7fr) minmax(0,.85fr);align-content:center;gap:clamp(1.5rem,4vw,3rem);min-height:calc(100vh - 4rem);padding:clamp(1.5rem,4vw,3rem) 0;display:grid;position:relative}.menu-nav{background:#091c3adb;border:2px solid #78beff59;grid-area:1/2;align-self:center;padding:clamp(1rem,2vw,1.5rem)}.menu-identity{margin-bottom:clamp(1.25rem,3vw,2rem)}.menu-nav .eyebrow{color:#ffd23f}.menu-identity h1{color:#fff;text-shadow:0 3px #081a3473}.menu-item{color:#ffffffdb}.menu-item:hover,.menu-item:focus-visible,.menu-item.selected{color:#fff}.menu-item.selected{border-left-color:#ffd23f}.menu-arrow{color:#ffd23f}.menu-identity h1{margin-top:.35rem;font-size:clamp(2.2rem,4.5vw,3.4rem)}.menu-list{gap:.15rem;margin:0;padding:0;list-style:none;display:grid}.menu-item{color:var(--muted);cursor:pointer;font:inherit;text-align:left;background:0 0;border:none;border-left:2px solid #0000;align-items:center;gap:.5rem;width:100%;min-height:3rem;padding:.35rem .5rem;font-size:clamp(1.15rem,2.2vw,1.5rem);font-weight:760;transition:color .12s,border-color .12s;display:flex}.menu-item:hover,.menu-item:focus-visible{color:var(--foreground);outline:none}.menu-item.selected{border-left-color:var(--foreground);color:var(--foreground)}.menu-arrow{color:#5fe0f5;opacity:0;flex:none;width:1ch}.menu-item.selected .menu-arrow{opacity:1;animation:.9s ease-in-out infinite menu-arrow-nudge}@keyframes menu-arrow-nudge{0%,to{transform:translate(0)}50%{transform:translate(3px)}}.menu-panel{background:var(--card);border:1px solid var(--brown);grid-area:1/1;max-height:min(78vh,46rem);padding:clamp(1.25rem,3vw,2rem);overflow-y:auto;box-shadow:8px 8px #0610266b}.menu-section h2{margin-top:.4rem}.menu-blurb{color:var(--muted);max-width:38rem;margin-top:.85rem;font-size:.98rem;line-height:1.6}.menu-meta{color:#5fe0f5;text-transform:uppercase;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.72rem;font-weight:700}.about-body{grid-template-columns:9rem minmax(0,1fr);gap:1.25rem;margin-top:1.25rem;display:grid}.menu-portrait{aspect-ratio:1;background:linear-gradient(#06102638, #06102638), url(/profile-picture.png) center 34% / cover no-repeat, var(--brown);border:1px solid var(--brown);width:100%;box-shadow:6px 6px #0610266b}.resume-heading{border-bottom:1px solid var(--line);color:#5fe0f5;text-transform:uppercase;margin-top:1.75rem;padding-bottom:.4rem;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.74rem;font-weight:700}.resume-list,.project-list,.contact-list{gap:1.1rem;margin:.9rem 0 0;padding:0;list-style:none;display:grid}.resume-place{color:var(--foreground);margin-right:.6rem;font-weight:760}.resume-when{color:var(--muted);font-size:.86rem}.project-group{margin-top:.5rem}.project-row{border-left:2px solid var(--line);padding-left:1rem}.project-row-head{flex-wrap:wrap;align-items:baseline;gap:.75rem;display:flex}.project-row-name{color:var(--foreground);font-size:1.15rem;font-weight:760}.project-list .tag-row,.menu-section .tag-row{margin-top:.75rem}.contact-list li{gap:.25rem;display:grid}.contact-list a{font-weight:700}.menu-open{background:var(--brown);color:#eaf2ff;justify-content:center;align-items:center;min-height:2.75rem;margin-top:1rem;padding:0 1.1rem;font-weight:800;text-decoration:none;display:inline-flex}.menu-open:after{content:"→";margin-left:.5rem}.menu-open:hover,.menu-open:focus-visible{outline:none;box-shadow:5px 5px #06102673}.menu-locked{color:var(--muted);text-transform:uppercase;margin-top:1rem;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.72rem;font-weight:700}@media (max-width:900px){.menu-screen{grid-template-columns:1fr;min-height:0;padding-bottom:3rem}.menu-nav{grid-area:1/1}.menu-panel{grid-area:2/1;max-height:none;overflow-y:visible}.menu-list{grid-auto-columns:1fr;grid-auto-flow:column}.menu-item{justify-content:center;padding:.35rem .15rem;font-size:.95rem}.menu-arrow{display:none}.menu-item.selected{border-bottom:2px solid var(--brown);border-left-color:#0000}.about-body{grid-template-columns:1fr}.menu-portrait{max-width:9rem}}@media (prefers-reduced-motion:reduce){.menu-item.selected .menu-arrow,.gd-streaks,.gd-ground-streaks{animation:none}}.gd-credit{color:#ffffff9e;text-align:center;text-shadow:0 1px #031028b3;grid-column:1/-1;margin-top:1.25rem;font-size:.76rem;line-height:1.5}.gd-credit strong{color:#ffffffd9}.menu-panel{color:#fffc;background:#0f2f5c;border-color:#78beff73;box-shadow:8px 8px #030e2473}.menu-screen .eyebrow,.menu-screen .menu-meta,.menu-screen .resume-heading{color:#5fe0f5}.menu-screen h2,.menu-screen h3,.menu-screen .project-row-name,.menu-screen .resume-place{color:#fff}.menu-screen .menu-blurb,.menu-screen .resume-when{color:#ffffffc2}.menu-screen .resume-heading{border-bottom-color:#78beff4d}.menu-screen .project-row{border-left-color:#78beff59}.menu-screen .tag-row span{color:#9fe8f8;background:#091c3ad9;border:1px solid #78beff66}.menu-screen .menu-open{color:#0b1220;background:#7ee63f}.menu-screen .menu-open:hover,.menu-screen .menu-open:focus-visible{box-shadow:5px 5px #030e2473}.menu-screen .menu-locked{color:#ffffff80}.menu-screen .contact-list a{color:#9fe8f8}.menu-portrait{border-color:#78beff8c;box-shadow:6px 6px #030e2473}.fdash-coin-row{justify-content:center;gap:.5rem;margin-top:.9rem;display:flex}.fdash-coin{border:2px solid #ffffff73;border-radius:50%;width:1.1rem;height:1.1rem;display:inline-block}.fdash-coin-on{background:#ffd23f;border-color:#fff;box-shadow:0 0 10px #ffd23fa6}.phlem-shell{flex-direction:column;gap:.75rem;display:flex}.phlem-stage{border:1px solid var(--line);background:#f2f5f8;width:100%;height:min(78vh,46rem);position:relative;overflow:hidden;box-shadow:8px 8px #0610266b}.phlem-canvas{touch-action:none;cursor:crosshair;width:100%;height:100%;position:absolute;inset:0}.phlem-board{color:#e8eef7;white-space:nowrap;text-overflow:ellipsis;background:#0a101cc7;min-width:11rem;max-width:16rem;margin:0;padding:.6rem .85rem;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.72rem;line-height:1.7;list-style:none;position:absolute;top:.75rem;right:.75rem;overflow:hidden}.phlem-board li{text-overflow:ellipsis;overflow:hidden}.phlem-board .phlem-me{color:#7ee63f;font-weight:700}.phlem-feed{color:#0a101c8c;pointer-events:none;margin:0;padding:0;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.7rem;list-style:none;position:absolute;bottom:.75rem;left:.75rem}.phlem-split{border:1px solid var(--line);color:#e8eef7;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:none;background:#0a101cc7;padding:.7rem 1.1rem;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.8rem;display:none;position:absolute;bottom:.75rem;right:.75rem}@media (pointer:coarse){.phlem-split{display:block}}.phlem-overlay{text-align:center;color:#e8eef7;background:#0a101cd1;flex-direction:column;justify-content:center;align-items:center;gap:.9rem;padding:1.5rem;display:flex;position:absolute;inset:0}.phlem-overlay h2{margin:0;font-size:clamp(1.5rem,4vw,2.2rem)}.phlem-overlay .menu-blurb{max-width:34rem}.phlem-form{flex-wrap:wrap;justify-content:center;gap:.6rem;display:flex}.phlem-form input{border:1px solid var(--line);color:#e8eef7;background:#ffffff14;min-width:14rem;padding:.65rem .9rem;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.9rem}.phlem-quiet{opacity:.75}.phlem-hint{color:#e8eef799;max-width:30rem;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.72rem}::-webkit-scrollbar{width:13px;height:13px}::-webkit-scrollbar-track{background:#08090c}::-webkit-scrollbar-thumb{background:linear-gradient(#ffe98a 0%,#d9a521 55%,#8a6508 100%);border:2px solid #f5d431;border-radius:999px;box-shadow:inset 0 0 0 1px #0000008c}::-webkit-scrollbar-thumb:hover{background:linear-gradient(#fff3ae 0%,#e8b52e 55%,#9a7208 100%)}::-webkit-scrollbar-corner{background:#08090c}@supports not selector(::-webkit-scrollbar){html{scrollbar-color:#d9a521 #08090c}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
