html.contact-route{scroll-behavior:auto}.contact-page{max-width:800px;padding-top:3rem;padding-bottom:max(3rem, env(safe-area-inset-bottom))}.contact-heading{margin-bottom:2rem}.contact-heading h1{letter-spacing:-.045em;max-width:none;margin-bottom:.75rem;font-size:clamp(2rem,5vw,3rem);line-height:1.15}.contact-heading p,.contact-help,.contact-form small,.contact-extension p{color:var(--muted)}.contact-form{border:1px solid var(--line);background:var(--surface);border-radius:1rem;padding:clamp(1rem,4vw,2rem)}.contact-form label{margin:1.2rem 0 .4rem;font-weight:600;display:block}.contact-form label span{color:var(--muted);font-weight:400}.contact-form input,.contact-form textarea,.contact-form select{border:1px solid var(--line);width:100%;min-width:0;min-height:44px;font:inherit;color:var(--ink);background:var(--canvas);border-radius:.45rem;padding:.65rem;display:block}.contact-form textarea{resize:vertical}.contact-form small{margin-top:.4rem;display:block}.contact-fields{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.contact-trap{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.contact-puzzle{border:0;border-top:1px solid var(--line);min-width:0;margin-top:2rem;padding:1rem 0 0}.contact-puzzle legend{padding-right:.7rem;font-weight:600}.contact-board{aspect-ratio:1;border:1px solid var(--line);grid-template-columns:repeat(8,1fr);max-width:440px;margin:1rem auto;display:grid}.contact-form .contact-square{aspect-ratio:1;cursor:pointer;color:#101828;border:0;border-radius:0;width:100%;min-width:0;min-height:0;padding:0;font-size:clamp(1.5rem,6vw,2.8rem);line-height:1;position:relative}.contact-square.square-light{background:#edf1f7}.contact-square.square-dark{background:#d8e0eb}.contact-square[aria-pressed=true]{box-shadow:inset 0 0 0 4px var(--focus)}.contact-square:focus-visible{z-index:1;outline-offset:-3px}.contact-move{color:var(--ink);margin-bottom:1rem}.contact-form button:not(.contact-square){border:1px solid var(--reader-dark);min-height:44px;font:inherit;background:var(--reader-dark);color:var(--umi-on-accent,white);cursor:pointer;border-radius:.45rem;padding:.7rem 1rem;font-weight:600}.contact-form button.contact-secondary{background:var(--surface);color:var(--ink);border-color:var(--line)}.contact-form button:disabled,.contact-form input:disabled,.contact-form textarea:disabled,.contact-form select:disabled{opacity:.65;cursor:default}.contact-actions{flex-wrap:wrap;gap:.75rem;margin-top:1rem;display:flex}.contact-form [hidden]{display:none}#contact-error,#contact-status{border:1px solid var(--line);border-inline-start:4px solid var(--focus);background:var(--surface-subtle);border-radius:.4rem;padding:1rem}.contact-extension{margin-top:2rem}.contact-extension h2{max-width:none;margin-bottom:.5rem;font-size:1.2rem;line-height:1.3}@media (max-width:480px){.contact-page{width:calc(100% - 1.5rem);padding-top:1.5rem}.contact-fields{grid-template-columns:1fr;gap:0}.contact-move{gap:.4rem}.contact-form{padding:.75rem}}.square-coordinate{font-size:.55rem;font-family:var(--notation);line-height:1;position:absolute;top:2px}.square-coordinate:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:3px}.square-coordinate:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:3px}.square-coordinate:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:3px}.square-coordinate:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:3px}.contact-puzzle p+p{margin-top:.4rem}.contact-family-footer{border-top:1px solid var(--line);background:var(--surface);color:var(--muted);padding:1.5rem 0}.contact-family-footer .footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.contact-family-footer nav{flex-wrap:wrap;gap:1rem;display:flex}.contact-family-footer a{min-height:44px;color:var(--muted);align-items:center;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-flex}.contact-family-footer a:hover{color:var(--ink);text-decoration:underline}.contact-board{touch-action:none;-webkit-user-select:none;user-select:none}.contact-square.is-dragging{opacity:.45}.contact-square.drag-target{box-shadow:inset 0 0 0 4px var(--focus)}.contact-drag-piece{z-index:20;pointer-events:none;color:#101828;text-shadow:0 2px 4px #fff;font-size:3rem;line-height:1;position:fixed;transform:translate(-50%,-50%)}.contact-promotion{margin-bottom:1rem}.contact-promotion-options{flex-wrap:wrap;gap:.5rem;display:flex}.contact-promotion-options button{text-transform:capitalize}.contact-form [data-promotion][aria-pressed=true]{border-color:var(--focus);box-shadow:inset 0 0 0 2px var(--focus)}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--canvas:#f5f6fa;--surface:#fff;--surface-subtle:#edf1f7;--ink:#101828;--muted:#536174;--line:#d8e0eb;--reader:#3858e9;--reader-dark:#243fb8;--reader-soft:#e8ecff;--tactics:#e44932;--tactics-dark:#ad2d1c;--tactics-soft:#ffe8e2;--analysis:#087d7e;--analysis-dark:#075f61;--analysis-soft:#dff5f1;--focus:#007f98;--display:"IBM Plex Sans Variable", "Segoe UI", sans-serif;--sans:"IBM Plex Sans Variable", "Segoe UI", sans-serif;--notation:"SFMono-Regular", Consolas, "Liberation Mono", monospace;--shadow-sm:0 14px 36px #1a28421a;--shadow-lg:0 28px 70px #1a284224}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;min-width:320px;scroll-padding-top:6rem}body{min-width:320px;color:var(--ink);background:radial-gradient(circle at 85% 5%, #3858e914, transparent 28rem), var(--canvas);font-family:var(--sans);text-rendering:optimizelegibility;margin:0;font-size:1rem;line-height:1.55}img{max-width:100%;height:auto;display:block}a{color:inherit;text-underline-offset:.2em}a:hover{text-decoration-thickness:.13em}:focus-visible{outline:3px solid var(--focus);outline-offset:4px}h1,h2,h3,p,figure,ul{margin-top:0}h1,h2,h3{font-family:var(--display);letter-spacing:-.045em;font-weight:620}h1,h2,h3,p{margin-bottom:0}.shell{width:min(1200px,100% - 3rem);margin-inline-start:auto;margin-inline-end:auto}.skip-link{z-index:100;color:#fff;background:var(--ink);border-radius:.5rem;padding:.7rem 1rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f5f6fae6;border-bottom:1px solid #d8e0ebdb;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:2rem;min-height:5rem;display:flex}.wordmark{color:var(--ink);letter-spacing:-.055em;flex:none;align-items:center;font-size:1.55rem;font-weight:650;line-height:1;text-decoration:none;display:inline-flex}.wordmark em{color:var(--reader);font-style:normal}.study-mark{background:var(--reader-soft);border-radius:.3rem;grid-template-columns:repeat(2,1fr);width:1.45rem;height:1.45rem;margin-right:.65rem;display:inline-grid;overflow:hidden;transform:rotate(-4deg)}.study-mark i:first-child,.study-mark i:nth-child(4){background:var(--reader)}nav{flex-wrap:wrap;align-items:center;gap:clamp(1rem,3vw,2rem);display:flex}nav a{min-height:44px;color:var(--muted);align-items:center;font-size:.94rem;font-weight:600;text-decoration:none;display:inline-flex}nav a:hover{color:var(--ink)}.hero{grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);align-items:center;gap:clamp(3rem,8vw,8rem);min-height:min(620px,100svh - 5rem);padding-block-start:clamp(5rem,11vw,8rem);padding-block-end:clamp(4rem,8vw,6.5rem);display:grid}.hero-copy{max-width:42rem}.eyebrow,.tool-kicker,.section-label,.tool-number{font-family:var(--notation);letter-spacing:.035em;text-transform:uppercase}.eyebrow{color:var(--muted);margin-bottom:1.6rem;font-size:.75rem;font-weight:700}.eyebrow:before{background:var(--reader);content:"";border-radius:.12rem;width:.5rem;height:.5rem;margin-right:.65rem;display:inline-block}h1{letter-spacing:-.08em;max-width:9ch;font-size:clamp(4rem,8.2vw,7.8rem);line-height:.9}.hero-lede{max-width:35rem;color:var(--muted);margin-top:2rem;font-size:clamp(1.08rem,1.7vw,1.3rem);line-height:1.5}.hero-lede--promise{color:var(--ink);font-weight:620}.hero-note{max-width:37rem;color:var(--muted);margin-top:1rem;font-size:.9rem;line-height:1.5}.hero-tools{gap:.85rem;display:grid}.hero-tool{border:1px solid var(--line);min-height:7.4rem;box-shadow:var(--shadow-sm);background:#ffffffc7;border-radius:1rem;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:1.35rem 1.3rem;text-decoration:none;transition:transform .16s,box-shadow .16s,border-color .16s;display:grid}.hero-tool:hover{box-shadow:var(--shadow-lg);border-color:currentColor;transform:translateY(-3px)}.hero-tool--reader{color:var(--reader-dark)}.hero-tool--tactics{color:var(--tactics-dark)}.hero-tool--analysis{color:var(--analysis-dark)}.tool-number{color:currentColor;font-size:.68rem;font-weight:700}.hero-tool-copy{gap:.2rem;display:grid}.hero-tool-copy strong{color:var(--ink);letter-spacing:-.025em;font-size:1.1rem}.hero-tool-copy small{color:var(--muted);font-size:.86rem}.arrow{font-size:1.35rem}.tools{gap:2rem;padding-bottom:7rem;display:grid}.tool-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-lg);border-radius:1.35rem;scroll-margin-top:.5rem;overflow:hidden}.tool-card--reader{--tool-color:var(--reader);--tool-dark:var(--reader-dark);--tool-soft:var(--reader-soft)}.tool-card--tactics{--tool-color:var(--tactics);--tool-dark:var(--tactics-dark);--tool-soft:var(--tactics-soft)}.tool-card--analysis{--tool-color:var(--analysis);--tool-dark:var(--analysis-dark);--tool-soft:var(--analysis-soft)}.tool-card-header{background:linear-gradient(120deg, var(--tool-soft), #ffffffb3 65%);justify-content:space-between;align-items:end;gap:2rem;padding:clamp(2rem,4vw,3.6rem);display:flex}.tool-card-header>div{max-width:43rem}.tool-kicker{color:var(--tool-dark);margin-bottom:1rem;font-size:.72rem;font-weight:700}.tool-kicker span{color:var(--tool-dark);margin-right:.8rem;display:inline-block}h2{max-width:13ch;font-size:clamp(2.6rem,5.5vw,5.4rem);line-height:.95}.tool-description{max-width:39rem;color:var(--muted);margin-top:1.35rem;font-size:1.08rem}.launch-button{min-height:3.3rem;color:var(--umi-on-accent);border:1px solid #0000;border-radius:.65rem;flex:none;justify-content:center;align-items:center;gap:.7rem;padding:.75rem 1rem;font-weight:650;text-decoration:none;transition:transform .16s,background-color .16s;display:inline-flex}.launch-button:hover{color:var(--umi-on-accent);transform:translateY(-2px)}.launch-button--reader{background:var(--reader-dark)}.launch-button--reader:hover{background:var(--reader)}.launch-button--tactics{background:var(--tactics-dark)}.launch-button--analysis{background:var(--analysis-dark)}.launch-button--analysis:hover,.launch-button--analysis-secondary{background:var(--analysis)}.launch-button--analysis-secondary:hover{background:var(--analysis-dark)}.analysis-actions{flex:none;justify-items:stretch;gap:.85rem;width:min(100%,15rem);display:grid}.analysis-actions .launch-button{width:100%}.tool-card-body{grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr);align-items:start;gap:clamp(2rem,4vw,4rem);padding:clamp(1.25rem,3vw,2.4rem);display:grid}.tool-screenshot{margin:0;position:sticky;top:6.5rem}.tool-screenshot picture{border:1px solid var(--line);background:var(--surface-subtle);box-shadow:var(--shadow-sm);border-radius:.85rem;display:block;overflow:hidden}.tool-screenshot img{width:100%}figcaption{color:var(--muted);font-family:var(--notation);letter-spacing:.02em;margin-top:.8rem;font-size:.7rem}.feature-panel-heading{justify-content:space-between;align-items:center;gap:1rem;min-height:2rem;margin-bottom:1.3rem;display:flex}.section-label{color:var(--tool-dark);margin-bottom:0;font-size:.7rem;font-weight:700}.local-badge{border:1px solid var(--tool-soft);color:var(--tool-dark);background:var(--tool-soft);white-space:nowrap;border-radius:999px;padding:.35rem .6rem;font-size:.72rem;font-weight:650}.feature-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;padding:0;list-style:none;display:grid}.feature-list li{border-top:1px solid var(--line);min-height:9.5rem;padding:1.25rem 1.2rem 1.35rem 1.55rem;position:relative}.feature-list li:before{background:var(--tool-color);content:"";border-radius:.12rem;width:.42rem;height:.42rem;position:absolute;top:1.55rem;left:0}.feature-list h3{letter-spacing:-.025em;margin-bottom:.35rem;font-size:1.03rem;line-height:1.15}.feature-qualifier{color:var(--muted);letter-spacing:-.02em;font-size:.8em;font-weight:600}.feature-list p{color:var(--muted);font-size:.88rem;line-height:1.45}@media (max-width:900px){.hero{grid-template-columns:1fr;gap:3rem;min-height:auto}h1{max-width:10ch}.tool-card-header{flex-direction:column;align-items:start}.analysis-actions{justify-items:stretch;width:100%}.tool-card-body{grid-template-columns:1fr}.tool-screenshot{max-width:48rem;position:static}}@media (max-width:620px){html{scroll-padding-top:8.25rem}.shell{width:min(100% - 1.5rem,1200px)}.header-inner{flex-direction:column;align-items:flex-start;gap:.7rem;min-height:0;padding-block-start:.75rem;padding-block-end:.75rem}.wordmark{font-size:1.35rem}.study-mark{width:1.25rem;height:1.25rem;margin-right:.5rem}nav{gap:.55rem 1rem;width:100%}nav a{font-size:.85rem}.hero{padding-block-start:4.5rem;padding-block-end:4rem}h1{font-size:clamp(3.5rem,17vw,5.5rem)}.hero-lede{margin-top:1.5rem;font-size:1.05rem}.hero-tool{min-height:6rem}.tools{gap:1.25rem;padding-bottom:4rem}.tool-card{border-radius:1rem}.tool-card-header{padding:1.6rem 1.25rem 1.5rem}h2{font-size:clamp(2.5rem,13vw,4rem)}.tool-description{font-size:1rem}.launch-button{width:100%}.analysis-actions{justify-items:stretch}.tool-card-body{padding:1rem 1.25rem 1.4rem}.feature-panel-heading{flex-direction:column;align-items:start;gap:.7rem}.feature-list{grid-template-columns:1fr}.feature-list li{min-height:auto;padding-block-start:1.1rem;padding-block-end:1.2rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important}}:root[data-theme=dark] .launch-button--analysis-secondary{background:color-mix(in srgb, var(--analysis) 92%, var(--umi-surface))}:root[data-theme=dark] .launch-button--analysis-secondary:hover{background:var(--analysis)}:root{--canvas:var(--umi-canvas);--surface:var(--umi-surface);--surface-subtle:var(--umi-surface-subtle);--ink:var(--umi-ink);--muted:var(--umi-muted);--line:var(--umi-line);--reader:var(--umi-reader);--reader-dark:var(--umi-reader-action);--reader-soft:var(--umi-reader-soft);--tactics:var(--umi-tactics);--tactics-dark:var(--umi-tactics-action);--tactics-soft:var(--umi-tactics-soft);--analysis:var(--umi-analysis);--analysis-dark:var(--umi-analysis-action);--analysis-soft:var(--umi-analysis-soft);--focus:var(--umi-focus);--display:var(--umi-font);--sans:var(--umi-font);--notation:var(--umi-mono);--shadow-sm:var(--umi-shadow-sm);--shadow-lg:var(--umi-shadow-lg)}.site-header{border-color:var(--line);background:var(--canvas);background:color-mix(in srgb, var(--canvas) 93%, transparent)}.header-inner{grid-template-columns:auto 1fr auto;gap:1.5rem;display:grid}.site-header nav{justify-content:end}.wordmark{color:var(--ink);text-decoration:none}.hero-tool{background:var(--surface)}.tool-card-header{background:linear-gradient(120deg, var(--tool-soft), var(--surface) 75%)}.launch-button,.launch-button:hover{color:var(--umi-on-accent)}.launch-button--tactics:hover{background:var(--umi-tactics)}.skip-link{color:var(--canvas)}.tool-screenshot picture{background:var(--surface-subtle)}.tool-screenshot img{color:var(--ink)}.site-header .umi-theme-control select{color:#0000}.site-header .umi-theme-control option{color:var(--ink)}@media (max-width:620px){.header-inner{grid-template-columns:1fr auto;align-items:center;gap:.35rem .75rem}.header-inner>.wordmark{grid-area:1/1}.header-inner>.umi-theme-control{grid-area:1/2}.site-header nav{grid-area:2/1/auto/-1;justify-content:start}}
