:root{color-scheme:light;--bg:#fff;--ink:#1a1a1a;--muted:#626873;--band:#f9fafb;--line:#e5e7eb;--button:#000;--on-button:#fff;--accent:#2563eb}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 system-ui,sans-serif}body.dark{color-scheme:dark;--bg:#151617;--ink:#f3f4f6;--muted:#b1b5be;--band:#202225;--line:#383b41;--button:#fff;--on-button:#111}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button,.button{border:1px solid var(--line);border-radius:8px;padding:12px 20px;background:var(--bg);color:var(--ink);min-height:44px}button:hover,.button:hover{transform:translateY(-1px)}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}header{position:sticky;top:0;z-index:5;background:var(--bg);border-bottom:1px solid var(--line)}nav,.wrap,footer{max-width:1280px;margin:auto;padding-left:24px;padding-right:24px}nav{height:80px;display:flex;align-items:center;gap:16px}.brand{font-weight:750;font-size:20px;letter-spacing:-.5px;margin-right:auto;display:flex;align-items:center;gap:12px}.brand img{width:32px;height:32px;object-fit:contain}#menu{display:flex;gap:24px;align-items:center}#menu a{padding:10px 0}a[aria-current]{text-decoration:underline;text-underline-offset:8px}#hamburger{display:none}.hero{text-align:center;max-width:1280px;margin:auto;padding:120px 24px}.hero h1{font-size:clamp(48px,6vw,72px);line-height:1.1;letter-spacing:-3px;margin:0 0 32px}.hero>p{font-size:20px;margin-bottom:40px}p{color:var(--muted)}.actions{display:flex;justify-content:center;gap:16px;margin-top:28px}.button{display:inline-block;padding:16px 32px;background:var(--button);color:var(--on-button);font-weight:500}.secondary{background:var(--bg);color:var(--ink)}.band{background:var(--band)}section.wrap,.band,.information{padding-top:96px;padding-bottom:96px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px}.icon{display:grid;place-items:center;width:48px;height:48px;background:var(--line);border-radius:8px;font-size:24px}.feature h2{font-size:20px}.card{padding:24px;border:1px solid var(--line);border-radius:8px}.card:hover{border-color:var(--muted)}h2{line-height:1.3;font-size:24px}.information{text-align:center;max-width:768px;margin:auto;padding-left:24px;padding-right:24px}.information h2{font-size:36px}.information a{text-decoration:underline;font-weight:700}.lower{display:grid;grid-template-columns:2fr 1fr;gap:64px}.lower section{margin-bottom:64px}aside{border-left:1px solid var(--line);padding-left:32px}aside h2{font-size:18px}textarea{width:100%;min-height:100px}footer{padding-top:48px;padding-bottom:48px;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:var(--muted);font-size:14px}footer div{display:flex;gap:32px}.page{padding-top:64px;padding-bottom:96px;min-height:75vh}.page h1{font-size:48px;letter-spacing:-2px}.page .grid{margin:48px 0}.placeholder{height:180px;background:var(--band);border:1px solid var(--line);border-radius:8px}.search{max-width:560px;margin:24px auto;text-align:left}.search label{display:block;font-size:14px;margin-bottom:8px}.search>div:first-of-type{display:flex;gap:8px}input,select,textarea{background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:6px;padding:12px;min-width:0}input{width:100%}select{margin:8px 16px 16px 8px}.skip{position:fixed;top:-100px;background:var(--bg);padding:12px;z-index:10}.skip:focus{top:8px}.notice{padding:16px;background:var(--band)}@media(max-width:767px){#hamburger{display:block}#menu{display:none;position:absolute;top:80px;left:0;right:0;background:var(--bg);padding:24px;border-bottom:1px solid var(--line)}#menu.open{display:flex;flex-direction:column;align-items:stretch}.grid,.lower{grid-template-columns:1fr;gap:32px}.hero{padding:80px 24px}.actions{flex-direction:column}.actions a{width:100%}section.wrap,.band,.information{padding-top:64px;padding-bottom:64px}aside{border-left:0;border-top:1px solid var(--line);padding:24px 0}.page h1{font-size:40px}footer{flex-direction:column;gap:24px}nav{gap:8px}.brand{font-size:18px}nav button{padding:8px 12px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;transform:none!important}}
