@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_next/static/media/bricolage-grotesque-vietnamese-wght-normal.96a5d80f.woff2) format("woff2-variations");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_next/static/media/bricolage-grotesque-latin-ext-wght-normal.232ded7b.woff2) format("woff2-variations");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_next/static/media/bricolage-grotesque-latin-wght-normal.3e340e57.woff2) format("woff2-variations");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/geist-cyrillic-ext-wght-normal.8bbfa6e0.woff2) format("woff2-variations");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/geist-cyrillic-wght-normal.12b57c6b.woff2) format("woff2-variations");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/geist-vietnamese-wght-normal.c6a3f4e5.woff2) format("woff2-variations");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/geist-latin-ext-wght-normal.b921df26.woff2) format("woff2-variations");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/geist-latin-wght-normal.9ff55a8a.woff2) format("woff2-variations");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/geist-mono-cyrillic-ext-wght-normal.85d55428.woff2) format("woff2-variations");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/geist-mono-cyrillic-wght-normal.33900800.woff2) format("woff2-variations");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/geist-mono-symbols2-wght-normal.b6529aae.woff2) format("woff2-variations");unicode-range:u+2000-2001,u+2004-2008,u+200a,u+23b8-23bd,u+2500-259f}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/geist-mono-vietnamese-wght-normal.55bad67b.woff2) format("woff2-variations");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/geist-mono-latin-ext-wght-normal.3d379059.woff2) format("woff2-variations");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/geist-mono-latin-wght-normal.125b055e.woff2) format("woff2-variations");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:"Instrument Serif";font-style:italic;font-display:swap;font-weight:400;src:url(/_next/static/media/instrument-serif-latin-ext-400-italic.62f67739.woff2) format("woff2"),url(/_next/static/media/instrument-serif-latin-ext-400-italic.8586994d.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:"Instrument Serif";font-style:italic;font-display:swap;font-weight:400;src:url(/_next/static/media/instrument-serif-latin-400-italic.7cb8e1b9.woff2) format("woff2"),url(/_next/static/media/instrument-serif-latin-400-italic.4acb39b8.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}:root{--ink:#0a1a14;--forest:#0f3d2e;--forest-deep:#0a2a20;--forest-soft:#17513e;--pine:#21765b;--signal:#c8f560;--signal-strong:#b2e33a;--signal-wash:#eef9cf;--maple:#e32636;--maple-light:#ff7882;--maple-ink:#b51d2b;--maple-wash:#fce7e9;--sun:#f4b740;--sun-wash:#fdf0cf;--paper:#f6f2ea;--paper-deep:#ece5d6;--card:#fffdf8;--white:#fff;--line:#e1d9c8;--line-strong:#cbc0a9;--line-dark:#ffffff1f;--text:#14221b;--muted:#5a685f;--faint:#667269;--on-dark:#f1f5ec;--on-dark-muted:#a8bcae;--ok:#1c6b4f;--ok-wash:#dff3e6;--bad:#b23a1b;--bad-wash:#fde6dc;--level-a1:#9dbcab;--level-a2:#6fa98b;--level-b1:#3f8f6b;--level-b2:#1c6b4f;--level-c1:#f0a531;--level-c2:var(--maple);--font-display:"Bricolage Grotesque Variable","Bricolage Grotesque",ui-sans-serif,system-ui,sans-serif;--font-text:"Geist Variable",Geist,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--font-mono:"Geist Mono Variable","Geist Mono",ui-monospace,"SFMono-Regular",Menlo,monospace;--font-serif:"Instrument Serif","Iowan Old Style",Georgia,serif;--radius-xs:8px;--radius-sm:12px;--radius:18px;--radius-lg:28px;--radius-xl:40px;--pill:999px;--shadow-soft:0 1px 2px #0a1a140a,0 8px 24px #0a1a140f;--shadow-lift:0 2px 4px #0a1a140f,0 24px 48px #0a1a1424;--shadow-dark:0 30px 80px #00000059;--wrap:1240px;--gutter:clamp(20px,4vw,48px);--header-height:76px;--ease:cubic-bezier(0.2,0.7,0.2,1);--fast:160ms;--slow:520ms}*,:after,:before{box-sizing:border-box}html{text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 24px)}body{min-height:100dvh;background:var(--paper);color:var(--text);font-family:var(--font-text);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}blockquote,body,dd,dl,figure,h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-family:var(--font-display);font-weight:650;line-height:1.05;letter-spacing:-.035em;text-wrap:balance}p{text-wrap:pretty}ol,ul{margin:0;padding:0;list-style:none}a{color:inherit;text-decoration:none}img,svg,video{display:block;max-width:100%}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}::selection{background:var(--signal);color:var(--ink)}:is(a,button,summary,input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--pine);outline-offset:3px;border-radius:6px}.on-dark :is(a,button,summary,input,select,textarea):focus-visible{outline-color:var(--signal)}.on-dark{color:var(--on-dark)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.container{width:min(var(--wrap),100% - 2 * var(--gutter));margin-inline:auto}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:0 22px;border:1.5px solid transparent;border-radius:var(--pill);background:var(--ink);color:var(--paper);font-family:var(--font-text);font-size:15px;font-weight:600;line-height:1.1;letter-spacing:-.005em;white-space:nowrap;transition:background var(--fast) var(--ease),border-color var(--fast) var(--ease),color var(--fast) var(--ease),transform var(--fast) var(--ease),box-shadow var(--fast) var(--ease)}.button svg{flex:none;width:18px;height:18px;transition:transform var(--fast) var(--ease)}.button:hover:not(:disabled){background:var(--forest);transform:translateY(-1px);box-shadow:0 10px 24px #0a1a1426}.button:hover:not(:disabled) svg:last-child:not(:only-child){transform:translateX(3px)}.button:active:not(:disabled){transform:translateY(0);box-shadow:none}.button:disabled{opacity:.45}.button[aria-busy=true]{cursor:progress}.button-large{min-height:56px;padding:0 28px;font-size:16px}.button-small{min-height:38px;padding:0 16px;gap:8px;font-size:14px}.button-small svg{width:16px;height:16px}.button-signal{background:var(--signal);color:var(--ink)}.button-signal:hover:not(:disabled){background:var(--signal-strong);box-shadow:0 10px 28px #c8f56040}.button-outline{border-color:var(--line-strong);background:transparent;color:var(--text)}.button-outline:hover:not(:disabled){border-color:var(--ink);background:var(--card);box-shadow:none}.button-ghost{background:transparent;color:var(--text)}.button-ghost:hover:not(:disabled){background:var(--paper-deep);box-shadow:none;transform:none}.button-light{background:var(--paper);color:var(--ink)}.button-light:hover:not(:disabled){background:var(--white)}.button-danger{background:var(--maple);color:var(--white)}.button-danger:hover:not(:disabled){background:var(--maple-ink)}.on-dark .button-outline{border-color:#ffffff3d;color:var(--on-dark)}.on-dark .button-outline:hover:not(:disabled){border-color:var(--on-dark);background:#ffffff14}.on-dark .button-ghost{color:var(--on-dark)}.on-dark .button-ghost:hover:not(:disabled){background:#ffffff14}.ui-field{display:grid;grid-gap:8px;gap:8px;font-size:14px;font-weight:600}.ui-field>span{color:var(--text)}.ui-field small{color:var(--muted);font-size:13px;font-weight:400}.ui-input{width:100%;min-height:48px;padding:11px 14px;border:1.5px solid var(--line-strong);border-radius:14px;background:var(--card);color:var(--text);font-size:16px;font-weight:400;line-height:1.4;transition:border-color var(--fast) var(--ease),box-shadow var(--fast) var(--ease)}textarea.ui-input{min-height:140px;resize:vertical}select.ui-input{padding-right:40px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%235a685f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}.ui-input::placeholder{color:var(--faint)}.ui-input:hover{border-color:var(--muted)}.ui-input:focus-visible{outline:none;border-color:var(--pine);box-shadow:0 0 0 4px #c8f56073}.ui-badge,.ui-input:disabled{background:var(--paper-deep);color:var(--muted)}.ui-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--pill);font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.ui-badge-success{background:var(--ok-wash);color:var(--ok)}.ui-badge-warning{background:var(--sun-wash);color:#8a5a00}.empty-state,.query-state{display:grid;justify-items:center;grid-gap:14px;gap:14px;padding:56px 24px;color:var(--muted);text-align:center}.query-state svg{width:26px;height:26px;color:var(--pine)}.query-state h1{color:var(--text);font-size:28px}.query-state[role=alert] p{max-width:46ch;color:var(--bad)}.empty-state{border:1.5px dashed var(--line-strong);border-radius:var(--radius)}.logo{display:inline-flex;align-items:center;gap:10px;color:var(--ink);line-height:1}.logo-mark{flex:none;width:38px;height:38px}.logo-ring{stroke:var(--pine)}.logo-check{stroke:var(--forest-deep)}.logo-leaf{fill:var(--maple)}.logo-mark--light .logo-ring{stroke:var(--signal)}.logo-mark--light .logo-check{stroke:var(--on-dark)}.logo-mark--light .logo-leaf{fill:var(--maple-light)}.logo-word{display:inline-flex;align-items:baseline;gap:.28em;font-family:var(--font-display);font-size:19px;font-weight:700;letter-spacing:-.04em;white-space:nowrap}.logo-word em{text-decoration:underline;-webkit-text-decoration-color:var(--maple);text-decoration-color:var(--maple);text-decoration-thickness:2px;text-underline-offset:.18em;color:var(--pine);font-family:var(--font-serif);font-size:1.22em;font-style:italic;font-weight:400;letter-spacing:-.02em}.logo--sm .logo-mark{width:30px;height:30px}.logo--sm .logo-word{font-size:16px}.logo--lg .logo-mark{width:52px;height:52px}.logo--lg .logo-word{font-size:26px}.logo--light{color:var(--on-dark)}.logo--light .logo-word em{color:var(--signal);-webkit-text-decoration-color:var(--maple-light);text-decoration-color:var(--maple-light)}.ws-bar[data-level=A1] i,:is(.r-level,.ws-level,.r-ladder-bar i,.r-meter i)[data-level=A1]{background:var(--level-a1)}.ws-bar[data-level=A2] i,:is(.r-level,.ws-level,.r-ladder-bar i,.r-meter i)[data-level=A2]{background:var(--level-a2)}.ws-bar[data-level=B1] i,:is(.r-level,.ws-level,.r-ladder-bar i,.r-meter i)[data-level=B1]{background:var(--level-b1)}.ws-bar[data-level=B2] i,:is(.r-level,.ws-level,.r-ladder-bar i,.r-meter i)[data-level=B2]{background:var(--level-b2)}.ws-bar[data-level=C1] i,:is(.r-level,.ws-level,.r-ladder-bar i,.r-meter i)[data-level=C1]{background:var(--level-c1)}.ws-bar[data-level=C2] i,:is(.r-level,.ws-level,.r-ladder-bar i,.r-meter i)[data-level=C2]{background:var(--level-c2)}:is(.r-level,.ws-level):is([data-level=A1],[data-level=A2],[data-level=C1]){color:var(--ink)}:is(.r-level,.ws-level):is([data-level=B1],[data-level=B2],[data-level=C2]){color:var(--white)}.locale-picker{position:relative}.locale-trigger{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 12px;border:1.5px solid var(--line-strong);border-radius:var(--pill);background:transparent;font-size:13px;font-weight:600;transition:border-color var(--fast) var(--ease),background var(--fast) var(--ease)}.locale-trigger:hover{border-color:var(--ink)}.locale-trigger>svg{width:14px;height:14px;transition:transform var(--fast) var(--ease)}.locale-trigger[aria-expanded=true]>svg{transform:rotate(180deg)}.locale-label{white-space:nowrap}.locale-flag{flex:none;width:20px;height:14px;border-radius:3px;object-fit:cover;box-shadow:0 0 0 1px #0a1a141f}.locale-popover{position:absolute;top:calc(100% + 8px);right:0;z-index:60;display:grid;grid-gap:2px;gap:2px;min-width:200px;padding:8px;border:1px solid var(--line);border-radius:var(--radius);background:var(--card);color:var(--text);box-shadow:var(--shadow-lift)}.locale-popover p{padding:6px 10px 4px;color:var(--muted);font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase}.locale-option{display:flex;align-items:center;gap:10px;padding:10px;border-radius:10px;font-size:14px;font-weight:500}a.locale-option:hover{background:var(--paper)}.locale-option svg{width:16px;height:16px;margin-left:auto;color:var(--pine)}.locale-option-current{font-weight:650}.locale-picker--footer .locale-trigger,.on-dark .locale-trigger{border-color:#ffffff33;color:var(--on-dark)}.locale-picker--footer .locale-trigger:hover,.on-dark .locale-trigger:hover{border-color:var(--on-dark)}.locale-picker--footer .locale-popover{top:auto;right:auto;bottom:calc(100% + 8px);left:0}.locale-picker--floating{position:fixed;top:18px;right:18px;z-index:70}.locale-picker--floating .locale-trigger{background:var(--card);box-shadow:var(--shadow-soft)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}}