@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/150f724d70372c02-s.1ljbalzvxyif7.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/750c737482d9de2f-s.3ex3j6ahhvjry.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/5f402bd2d8eef81a-s.p.40bho2kviej2o.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Newsreader Fallback;src:local(Times New Roman);ascent-override:69.68%;descent-override:25.12%;line-gap-override:0.0%;size-adjust:105.48%}.newsreader_3a0ec8c8-module__VIGUKq__className{font-family:Newsreader,Newsreader Fallback;font-style:normal}.newsreader_3a0ec8c8-module__VIGUKq__variable{--font-newsreader:"Newsreader", "Newsreader Fallback"}
@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.2y65deuc30pmy.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.2qt3tdwt-y9x_.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.3cvcemwuzoywn.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.02z5rrbg5nt92.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.2rixgazldzomk.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.0wiir8udbzjvx.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.2y65deuc30pmy.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.2qt3tdwt-y9x_.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.3cvcemwuzoywn.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.02z5rrbg5nt92.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.2rixgazldzomk.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.0wiir8udbzjvx.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Fallback;src:local(Arial);ascent-override:101.32%;descent-override:27.18%;line-gap-override:0.0%;size-adjust:101.17%}.ibm_plex_sans_ccce65bd-module__Jd6mzq__className{font-family:IBM Plex Sans,IBM Plex Sans Fallback;font-style:normal}.ibm_plex_sans_ccce65bd-module__Jd6mzq__variable{--font-plex-sans:"IBM Plex Sans", "IBM Plex Sans Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5-s.0rgnxg2b64rzs.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/59b15b4bcd7b1eb5-s.2vemzm0itqzfy.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e532fa1b9921e1cd-s.3cb5lpr2l6xud.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2fe89d53234c61d4-s.1u30mmyq6lnsd.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/99e609270109b47d-s.p.40sczeszzbjw1.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5e05ae5b48faa55e-s.1yd4_i3e35931.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a7afbb44bec2bb18-s.1qc6dx89jd2qv.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/02263ebadd758ea4-s.29yke99gs9qpn.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/68757d6cddeff913-s.1i-sca43-qwng.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/effe91970fc4db64-s.p.0oace-s_gkfks.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/6ff74e33ebd7bca3-s.352ti9pm7m6qh.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1a69062cfe6f77f8-s.0o-3_g79811ob.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9a4838fcda0d1bca-s.0ngr-xkgqz1kf.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2e95a7d252b9825a-s.15orukf5wyxb5.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/23b7a97ae3b5c134-s.p.226pwps5o-gq_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.ibm_plex_mono_f99a6eaf-module__t5LniG__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.ibm_plex_mono_f99a6eaf-module__t5LniG__variable{--font-plex-mono:"IBM Plex Mono", "IBM Plex Mono Fallback"}
:root{--font-display:var(--font-newsreader), ui-serif, Georgia, serif;--font-body:var(--font-plex-sans), ui-sans-serif, system-ui, sans-serif;--font-catalog:var(--font-plex-mono), ui-monospace, monospace;--text-xs:.75rem;--text-sm:.8125rem;--text-base:1rem;--text-md:1.25rem;--text-lg:1.5625rem;--text-xl:1.9531rem;--text-2xl:2.4414rem;--text-3xl:3.0518rem;--text-display-s:clamp(2.25rem, 3.4vw + 1rem, 3.4rem);--text-display:clamp(2.75rem, 5vw + 1rem, 5.25rem);--color-paper:#f3ece1;--color-paper-2:#faf6ef;--color-paper-3:#e7dccf;--color-ink:#1e1613;--color-ink-2:#49403c;--color-muted:#675e5a;--color-rule:#c2b9af;--color-rule-2:#dad3ca;--color-edge:#90847a;--color-accent:#9b2822;--color-accent-ink:#faf6ef;--color-focus:#b00d10;--space-3xs:.125rem;--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2.5rem;--space-2xl:4rem;--space-3xl:6rem;--space-4xl:9rem;--page-gutter:clamp(1.25rem, 4vw, 3rem);--measure:62ch;--control-h:3rem;--radius-none:0;--radius-sm:2px;--rule-hair:1px;--rule-thick:2px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-micro:.12s;--dur-short:.22s;--dur-long:.42s;--z-base:1;--z-raised:10;--z-sticky:200}@supports (color:lab(0% 0 0)){:root{--color-paper:lab(93.6567% 1.14486 6.01797);--color-paper-2:lab(97.1364% .512809 4.17373);--color-paper-3:lab(88.4266% 2.02197 7.79351);--color-ink:lab(8.27414% 3.72089 3.88179);--color-ink-2:lab(28.0038% 3.39793 3.86028);--color-muted:lab(40.7844% 2.85748 3.86239);--color-rule:lab(75.6541% 1.81961 6.23757);--color-rule-2:lab(84.9393% 1.31923 5.17554);--color-edge:lab(55.8781% 3.47519 6.73016);--color-accent:lab(35.8764% 47.5036 33.5632);--color-accent-ink:lab(97.1364% .512809 4.17373);--color-focus:lab(37.7844% 59.765 46.3921)}}
*,:before,:after{box-sizing:border-box}html,body{overflow-x:clip}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{color:var(--color-ink);background:var(--color-paper);font-family:var(--font-body);font-size:var(--text-base);margin:0;line-height:1.6}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.015em;overflow-wrap:anywhere;min-width:0;margin-top:0;font-style:normal;font-weight:700;line-height:1.12}h1{font-size:var(--text-display-s);letter-spacing:-.025em;line-height:1.04}h2{font-size:var(--text-xl)}h3{font-size:var(--text-md);font-weight:600}p{margin-top:0}a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:from-font}a:hover{-webkit-text-decoration-color:var(--color-accent);text-decoration-color:var(--color-accent)}button,input,select,textarea{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}:where(button,a,input,summary,[tabindex]):focus-visible,label:focus-within{outline:var(--rule-thick) solid var(--color-focus);outline-offset:3px}::selection{color:var(--color-accent-ink);background:var(--color-accent)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.catalog-label{color:var(--color-muted);font-family:var(--font-catalog);font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;font-variant-numeric:tabular-nums;margin:0;font-weight:500}.stamp{padding:var(--space-2xs) var(--space-xs);color:var(--color-accent);font-family:var(--font-catalog);font-size:var(--text-xs);letter-spacing:.16em;text-transform:uppercase;font-variant-numeric:tabular-nums;border:var(--rule-thick) solid var(--color-accent);font-weight:600;display:inline-block;rotate:-1.5deg}.rule-double{border:0;border-top:var(--rule-hair) solid var(--color-ink);border-bottom:var(--rule-hair) solid var(--color-ink);height:3px;margin:0}.catalog-label+h1,.catalog-label+h2{margin-top:var(--space-sm)}.wordmark{font-family:var(--font-display);letter-spacing:-.03em;font-weight:600;text-decoration:none}.shell{width:100%;max-width:74rem;margin-inline:auto}.primary-button,.secondary-button,.small-button{min-height:var(--control-h);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);white-space:nowrap;cursor:pointer;transition:background-color var(--dur-micro) var(--ease-out), color var(--dur-micro) var(--ease-out), border-color var(--dur-micro) var(--ease-out), translate var(--dur-micro) var(--ease-out);justify-content:center;align-items:center;font-weight:600;display:inline-flex}.primary-button{color:var(--color-paper-2);background:var(--color-ink);border:var(--rule-hair) solid var(--color-ink)}.primary-button:hover{background:var(--color-ink-2);border-color:var(--color-ink-2)}.primary-button:active{translate:0 1px}.secondary-button,.small-button{color:var(--color-ink);border:var(--rule-hair) solid var(--color-edge);background:0 0}.secondary-button:hover,.small-button:hover{background:var(--color-paper-3);border-color:var(--color-ink)}.secondary-button:active,.small-button:active{translate:0 1px}.small-button{min-height:2.5rem;padding:var(--space-xs) var(--space-sm);font-size:var(--text-sm)}.small-button.selected{color:var(--color-accent-ink);background:var(--color-accent);border-color:var(--color-accent)}.small-button.selected:hover{background:var(--color-accent);border-color:var(--color-ink)}.primary-button:disabled,.secondary-button:disabled,.small-button:disabled{cursor:not-allowed;opacity:.45;translate:none}.button-link{text-decoration:none}.text-link{padding-block:var(--space-2xs);white-space:nowrap;text-decoration:underline;-webkit-text-decoration-color:var(--color-edge);text-decoration-color:var(--color-edge);align-self:center;font-weight:500;text-decoration-thickness:1px}.text-link:hover{-webkit-text-decoration-color:var(--color-accent);text-decoration-color:var(--color-accent)}.field-input{width:100%;min-height:var(--control-h);padding:var(--space-sm) var(--space-md);color:var(--color-ink);background:var(--color-paper-2);border:var(--rule-hair) solid var(--color-edge);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--text-base);letter-spacing:normal;text-transform:none;transition:border-color var(--dur-micro) var(--ease-out);font-weight:400}.field-input:hover{border-color:var(--color-ink-2)}.field-input::placeholder{color:var(--color-muted)}.field-input:disabled{cursor:not-allowed;opacity:.45;background:var(--color-paper-3)}.field-label,.auth-card label{margin-bottom:var(--space-xs);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--color-ink-2);font-weight:600;display:block}.form-error{gap:var(--space-xs);min-height:1lh;margin:var(--space-md) 0 0;color:var(--color-accent);font-size:var(--text-sm);font-weight:500;display:flex}.form-error:before{content:"!";font-weight:700}.form-error:empty:before{content:none}.masthead{gap:var(--space-2xs);padding-block:var(--space-md) 0;text-align:center;display:grid}.masthead .wordmark{font-size:clamp(2rem,6vw,3.25rem);line-height:1}.masthead-nav{gap:var(--space-md);margin-block:var(--space-2xs) var(--space-sm);justify-content:center;display:flex}.masthead-nav a{font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;font-weight:600}.app-header{gap:var(--space-md);width:100%;max-width:74rem;min-height:4.25rem;padding-inline:var(--page-gutter);align-items:center;margin-inline:auto;display:flex}.app-header .wordmark{font-size:var(--text-md)}.app-header nav{gap:var(--space-md);margin-inline-start:auto;display:flex}.app-header nav a{font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;color:var(--color-ink-2);font-weight:600}.app-header nav a:hover{color:var(--color-ink)}.app-bar-rule{width:100%;max-width:74rem;padding-inline:var(--page-gutter);margin-inline:auto}.user-chip{width:2.25rem;height:2.25rem;color:var(--color-ink);background:var(--color-paper-3);border:var(--rule-hair) solid var(--color-edge);font-family:var(--font-catalog);font-size:var(--text-sm);flex:none;place-items:center;font-weight:600;display:grid}.landing-page{padding-inline:var(--page-gutter)}.landing-hero{gap:var(--space-xl);padding-block:var(--space-2xl) var(--space-3xl);align-items:start;display:grid}.landing-hero>div{min-width:0}.landing-lede{max-width:46ch;margin-block:var(--space-lg) 0;color:var(--color-ink-2);font-size:var(--text-md);line-height:1.55}.landing-actions{gap:var(--space-md);margin-top:var(--space-xl);flex-wrap:wrap;align-items:center;display:flex}.specimen{margin:0}.specimen-card{padding:var(--space-lg);background:var(--color-paper-2);border:var(--rule-hair) solid var(--color-edge);box-shadow:var(--space-2xs) var(--space-2xs) 0 var(--color-paper-3)}.specimen-call{padding-bottom:var(--space-sm);border-bottom:var(--rule-hair) solid var(--color-rule)}.specimen-title{margin:var(--space-md) 0 var(--space-3xs);font-family:var(--font-display);overflow-wrap:anywhere;font-weight:600;font-size:var(--text-lg);letter-spacing:-.02em;line-height:1.15}.specimen-author{color:var(--color-muted);font-family:var(--font-catalog);font-size:var(--text-sm);margin:0}.ruled-reasons{margin:var(--space-md) 0;color:var(--color-ink-2);font-size:var(--text-sm);padding:0;list-style:none}.ruled-reasons li{padding-block:var(--space-2xs);border-bottom:var(--rule-hair) solid var(--color-rule-2)}.specimen-foot{padding-top:var(--space-sm);justify-content:flex-end;margin:0;display:flex}.specimen figcaption{margin-top:var(--space-sm);color:var(--color-muted);font-family:var(--font-catalog);font-size:var(--text-xs)}.stages{--stage-indent:2.75rem;padding:0 0 var(--space-3xl);counter-reset:stage;margin:0;list-style:none}.stages>li{padding-block:var(--space-xl) var(--space-lg);border-top:var(--rule-hair) solid var(--color-rule);counter-increment:stage}.stages>li:first-child{border-top-width:var(--rule-thick);border-top-color:var(--color-ink)}.stage-head{gap:var(--space-md);margin:0 0 var(--space-xs);align-items:baseline;display:flex}.stage-head:before{content:counter(stage, decimal-leading-zero);width:calc(var(--stage-indent) - var(--space-md));color:var(--color-muted);font-family:var(--font-catalog);font-size:var(--text-sm);font-variant-numeric:tabular-nums;flex:none;font-weight:500}.stages p{max-width:var(--measure);color:var(--color-ink-2);margin:0;padding-inline-start:var(--stage-indent)}.colophon{padding-block:var(--space-lg) var(--space-2xl);border-top:var(--rule-hair) solid var(--color-rule)}.colophon p{max-width:72ch;color:var(--color-muted);font-family:var(--font-catalog);font-size:var(--text-xs);margin:0;line-height:1.9}.colophon a{white-space:nowrap}.app-page{min-height:100dvh}.scanner-shell,.taste-shell{width:100%;max-width:68rem;padding:var(--space-2xl) var(--page-gutter) var(--space-3xl);margin-inline:auto}.intro-copy{max-width:var(--measure)}.intro-copy>p:last-child,.section-heading p{margin:var(--space-md) 0 0;color:var(--color-ink-2)}.section-heading{align-items:flex-start;gap:var(--space-lg);margin-bottom:var(--space-xl);flex-direction:column;display:flex}.section-heading>div{max-width:var(--measure)}.capture-panel{max-width:42rem;margin-top:var(--space-xl);padding:var(--space-md);background:var(--color-paper-2);border:var(--rule-hair) solid var(--color-edge)}.capture-target{min-height:15rem;padding:var(--space-xl) var(--space-md);border:var(--rule-hair) dashed var(--color-edge);cursor:pointer;text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.capture-target:hover{background:var(--color-paper)}.capture-target strong{margin:var(--space-sm) 0 var(--space-3xs);font-family:var(--font-display);font-size:var(--text-md);overflow-wrap:anywhere;font-weight:600}.capture-target>span:last-child{color:var(--color-muted);font-size:var(--text-sm)}.camera-mark{background-repeat:no-repeat;background-image:linear-gradient(var(--color-ink) 0 0), linear-gradient(var(--color-ink) 0 0), linear-gradient(var(--color-ink) 0 0), linear-gradient(var(--color-ink) 0 0), linear-gradient(var(--color-ink) 0 0), linear-gradient(var(--color-ink) 0 0), linear-gradient(var(--color-ink) 0 0), linear-gradient(var(--color-ink) 0 0);background-size:.75rem var(--rule-thick), var(--rule-thick) .75rem, .75rem var(--rule-thick), var(--rule-thick) .75rem, .75rem var(--rule-thick), var(--rule-thick) .75rem, .75rem var(--rule-thick), var(--rule-thick) .75rem;background-position:0 0,0 0,100% 0,100% 0,0 100%,0 100%,100% 100%,100% 100%;width:2.75rem;height:2.75rem}.capture-panel>.primary-button{width:100%;margin-top:var(--space-md)}.scan-progress{gap:var(--space-xs);margin:var(--space-md) 0 0;color:var(--color-muted);font-size:var(--text-xs);text-align:center;justify-content:center;align-items:center;display:flex}.scan-progress span,.page-loading span{background:var(--color-accent);flex:none;width:.7rem;height:.7rem;animation:1s infinite alternate pulse}.photo-tips{gap:var(--space-md);margin-top:var(--space-md);color:var(--color-muted);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;flex-wrap:wrap;font-weight:600;display:flex}.recommendation-list,.catalog-results{gap:var(--space-md);margin:0;padding:0;list-style:none;display:grid}.recommendation-card{background:var(--color-paper-2);border:var(--rule-hair) solid var(--color-edge);grid-template-columns:3.25rem minmax(0,1fr);display:grid;overflow:hidden}.book-spine{padding-block:var(--space-md);color:var(--color-ink);background:var(--color-paper-3);border-inline-end:var(--rule-hair) solid var(--color-edge);font-family:var(--font-catalog);font-size:var(--text-md);font-variant-numeric:tabular-nums;letter-spacing:.08em;writing-mode:vertical-rl;place-items:center;font-weight:600;display:grid}.recommendation-copy{padding:var(--space-lg)}.recommendation-copy h2{margin:var(--space-sm) 0 var(--space-3xs);font-size:var(--text-lg)}.result-meta{gap:var(--space-2xs) var(--space-md);color:var(--color-ink-2);font-family:var(--font-catalog);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;font-variant-numeric:tabular-nums;flex-wrap:wrap;line-height:1.4;display:flex}.byline{color:var(--color-muted);font-family:var(--font-catalog);font-size:var(--text-sm);margin:0}.feedback-row,.rating-buttons{gap:var(--space-xs);flex-wrap:wrap;display:flex}.unmatched-result,.empty-state{padding:var(--space-lg);background:var(--color-paper-3);border:var(--rule-hair) dashed var(--color-edge)}.unmatched-result h2,.empty-state h2{margin:var(--space-xs) 0;font-size:var(--text-md)}.unmatched-result p:last-child,.empty-state p:last-child{color:var(--color-ink-2);margin:0}.taste-count{gap:var(--space-3xs);flex-direction:column;display:flex}.taste-count strong{font-family:var(--font-catalog);font-size:var(--text-2xl);font-variant-numeric:tabular-nums;font-weight:600;line-height:1}.taste-count span{color:var(--color-muted);font-family:var(--font-catalog);font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase}.library-import{margin:0 0 var(--space-2xl);padding-block:var(--space-lg);border-block:var(--rule-hair) solid var(--color-rule)}.library-import-copy{max-width:var(--measure)}.library-import-copy h2{margin-bottom:var(--space-xs)}.library-import-copy>p:last-child,.import-services p,.generic-import-help p,.file-help,.import-result p{color:var(--color-ink-2)}.import-services{margin:var(--space-lg) 0;border-top:var(--rule-hair) solid var(--color-rule);gap:0;display:grid}.import-services article{padding-block:var(--space-sm);border-bottom:var(--rule-hair) solid var(--color-rule)}.import-services h3{margin-bottom:var(--space-3xs);font-family:var(--font-body);font-size:var(--text-sm);font-weight:600}.import-services p{font-size:var(--text-sm);margin:0}.generic-import-help{margin-bottom:var(--space-lg)}.generic-import-help summary,.import-result summary{cursor:pointer;font-weight:600}.generic-import-help p{margin:var(--space-sm) 0 0;max-width:var(--measure);font-size:var(--text-sm)}.import-form{gap:var(--space-xs);max-width:40rem;display:grid}.import-form input[type=file]{width:100%;padding:var(--space-sm);background:var(--color-paper-2);border:var(--rule-hair) solid var(--color-edge);border-radius:var(--radius-sm);font-size:var(--text-sm)}.import-form .primary-button{margin-top:var(--space-xs);justify-self:start}.file-help{font-size:var(--text-xs);margin:0}.import-result{margin-top:var(--space-md);padding:var(--space-md);background:var(--color-paper-2);border:var(--rule-hair) solid var(--color-edge)}.import-result h3{margin-bottom:var(--space-2xs);font-family:var(--font-display);font-size:var(--text-md);font-weight:600}.import-result p{margin-bottom:var(--space-xs);font-size:var(--text-sm)}.import-result ul{padding-left:var(--space-md);font-size:var(--text-sm);margin-bottom:0}.catalog-search{max-width:42rem;margin-bottom:var(--space-xl)}.catalog-search>div{gap:var(--space-xs);flex-wrap:wrap;display:flex}.catalog-search .field-input{flex:14rem}.catalog-results>li{gap:var(--space-md);padding:var(--space-md) 0;border-bottom:var(--rule-hair) solid var(--color-rule);flex-direction:column;justify-content:space-between;display:flex}.catalog-results>li>div{min-width:0}.catalog-results h2{margin-bottom:var(--space-3xs);font-size:var(--text-md)}.catalog-results p{margin-bottom:var(--space-3xs);color:var(--color-muted);font-family:var(--font-catalog);font-size:var(--text-sm)}.catalog-results>li span{color:var(--color-muted);font-family:var(--font-catalog);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase}.empty-note{color:var(--color-ink-2)}.auth-page{min-height:100dvh;padding:var(--space-lg) var(--page-gutter);place-items:center;display:grid}.auth-card{width:min(100%,27rem);padding:var(--space-xl);background:var(--color-paper-2);border:var(--rule-hair) solid var(--color-edge);box-shadow:var(--space-2xs) var(--space-2xs) 0 var(--color-paper-3)}.auth-card h1{font-size:var(--text-2xl)}.auth-card>p{color:var(--color-ink-2)}.auth-card label{margin-top:var(--space-lg);margin-bottom:var(--space-2xs)}.google-auth-button{gap:var(--space-sm);width:100%;min-height:var(--control-h);margin-top:var(--space-lg);padding:var(--space-sm) var(--space-md);color:var(--color-ink);background:var(--color-paper);border:var(--rule-hair) solid var(--color-edge);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;transition:background-color var(--dur-micro) var(--ease-out), border-color var(--dur-micro) var(--ease-out);justify-content:center;align-items:center;font-weight:600;display:flex}.google-auth-button:hover{background:var(--color-paper-3);border-color:var(--color-ink)}.google-auth-button:active{translate:0 1px}.google-auth-button:disabled{cursor:not-allowed;opacity:.45;translate:none}.google-auth-button svg{flex:none;width:1.15rem;height:1.15rem}.auth-divider{gap:var(--space-sm);margin:var(--space-lg) 0 var(--space-2xs);color:var(--color-muted);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;align-items:center;font-weight:600;display:flex}.auth-divider:before,.auth-divider:after{height:var(--rule-hair);background:var(--color-rule);content:"";flex:1}.auth-divider span{white-space:nowrap}.auth-card>.primary-button,.auth-card>.button-link{width:100%;margin-top:var(--space-md)}.auth-switch{margin:var(--space-md) 0 0;color:var(--color-muted);font-size:var(--text-sm);text-align:center}.auth-switch a{white-space:nowrap}.page-loading,.error-page{min-height:100dvh;padding:var(--space-xl) var(--page-gutter);place-content:center;justify-items:start;gap:var(--space-md);display:grid}.error-page p{max-width:var(--measure);color:var(--color-ink-2);margin:0}@keyframes pulse{to{opacity:.25;scale:.7}}.reveal{opacity:0;animation:reveal var(--dur-long) var(--ease-out) forwards;animation-delay:calc(var(--i,0) * 70ms);translate:0 8px}@keyframes reveal{to{opacity:1;translate:none}}@media (min-width:48rem){.landing-hero{gap:var(--space-3xl);padding-block:var(--space-2xl) var(--space-3xl);grid-template-columns:minmax(0,7fr) minmax(0,5fr)}.stages{--stage-indent:3.75rem}.section-heading{justify-content:space-between;align-items:flex-start;gap:var(--space-xl);flex-direction:row}.recommendation-card{grid-template-columns:4rem minmax(0,1fr)}.catalog-results>li{flex-direction:row;align-items:center}.import-services{column-gap:var(--space-xl);grid-template-columns:repeat(2,minmax(0,1fr))}.stages>li{padding-block:var(--space-2xl) var(--space-xl)}}@media (pointer:coarse){.small-button{min-height:44px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{opacity:1;animation:none;translate:none}.scan-progress span,.page-loading span{animation:1.4s infinite alternate pulse!important}}.andesprit-footer-link{min-height:44px;color:inherit;text-transform:none;text-underline-offset:4px;align-items:center;gap:8px;margin-block:6px;font-size:14px;text-decoration:underline;display:inline-flex}.andesprit-footer-link:focus-visible{outline-offset:4px;outline:2px solid}.andesprit-footer-logo{flex:0 0 24px;width:24px;height:24px;display:block}
