*,*:before,*:after{box-sizing:border-box}*{margin:0}button{color:inherit;font:inherit}button,[role=button]{cursor:pointer}img,svg{display:block}img,video{max-width:100%;height:auto}:root{color-scheme:light dark;--bg: #f6f7f9;--bg-glow: #e6e9f5;--surface: #ffffff;--surface-sunken: #f3f4f7;--border: #e2e4ea;--border-strong: #cfd3dd;--text: #16181d;--text-muted: #6b7280;--text-faint: #9aa0ac;--accent: #4f46e5;--accent-hover: #4338ca;--accent-soft: #eef0ff;--accent-contrast: #ffffff;--danger: #b42318;--radius: 10px;--radius-lg: 14px;--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--sans: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji";--shadow: 0 1px 2px rgba(16, 18, 24, .04), 0 12px 32px -12px rgba(16, 18, 24, .14)}@media(prefers-color-scheme:dark){:root{--bg: #0e1014;--bg-glow: #171b26;--surface: #16181e;--surface-sunken: #101216;--border: #262a33;--border-strong: #363b47;--text: #eceef2;--text-muted: #9aa1ae;--text-faint: #6d747f;--accent: #7c74ff;--accent-hover: #918bff;--accent-soft: #1c1e33;--accent-contrast: #0e1014;--danger: #ff8a7a;--shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 16px 40px -16px rgba(0, 0, 0, .7)}}html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:var(--sans)}body{min-height:100vh;color:var(--text);background-color:var(--bg);background-image:radial-gradient(80rem 40rem at 50% -18rem,var(--bg-glow),transparent 70%);-webkit-font-smoothing:antialiased}code,kbd{font-family:var(--mono);font-size:.9em}kbd{padding:.1em .4em;border:1px solid var(--border-strong);border-bottom-width:2px;border-radius:5px;background:var(--surface-sunken);font-size:.8em;color:var(--text-muted)}.page{display:flex;flex-direction:column;min-height:100vh}main{width:100%;max-width:56rem;margin:0 auto;padding:4.5rem 1.25rem 3rem;flex:1}header{text-align:center;margin-bottom:2.5rem}.tagline{margin-top:.6rem;color:var(--text-muted);font-size:1.0625rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:hidden}.card-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;border-bottom:1px solid var(--border);background:var(--surface-sunken)}.card-title{font-size:.8125rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.card-foot{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;border-top:1px solid var(--border);background:var(--surface-sunken)}.stack-input{display:block;width:100%;min-height:20rem;padding:1rem 1.125rem;border:0;background:transparent;color:var(--text);font-family:var(--mono);font-size:.8125rem;line-height:1.7;tab-size:2;resize:vertical}.stack-input::placeholder{color:var(--text-faint)}.stack-input:focus{outline:0}.card:focus-within{border-color:var(--border-strong)}.meta{color:var(--text-faint);font-size:.8125rem;font-variant-numeric:tabular-nums}.notice{padding:.75rem 1rem;border-top:1px solid var(--border);color:var(--danger);font-size:.8125rem}.btn{display:inline-flex;align-items:center;gap:.45rem;padding:.4rem .8rem;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);color:var(--text);font-size:.8125rem;font-weight:500;white-space:nowrap;transition:background-color .15s,border-color .15s,color .15s}.btn:hover:not(:disabled){background:var(--surface-sunken);border-color:var(--text-faint)}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{border-color:transparent;background:var(--accent);color:var(--accent-contrast)}.btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:transparent}.btn-ghost{border-color:transparent;background:transparent;color:var(--text-muted)}.btn-row{display:flex;align-items:center;gap:.5rem}.btn svg{width:14px;height:14px}.hint{margin-top:1.25rem;text-align:center;color:var(--text-faint);font-size:.8125rem}@media(max-width:34rem){main{padding-top:2.5rem}.card-foot{flex-direction:column;align-items:stretch}.card-foot .btn-row{justify-content:space-between}}
