@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@500;600;700&family=Manrope:wght@400;500;600;700&display=swap";:root{--paper: #f7f8fa;--ink: #14161c;--muted: #5b6172;--line: #e2e4ea;--signal: #5b4fe8;--signal-ink: #ffffff;--thread: #12a594;--error: #b3261e;--surface: #ffffff;--font-display: "JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--font-body: "Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;color-scheme:light dark;font-family:var(--font-body)}@media(prefers-color-scheme:dark){:root{--paper: #14161c;--ink: #edeef2;--muted: #9aa1ad;--line: #2b2e37;--signal: #8b82ff;--signal-ink: #14161c;--thread: #38d9c2;--error: #f2a09a;--surface: #1a1c23}}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink)}main{max-width:34rem;margin:0 auto;padding:4.5rem 1.5rem 5rem}.wordmark{margin:0 0 2rem;font-family:var(--font-display);font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--signal)}h1{margin:0 0 .5rem;font-family:var(--font-display);font-size:2rem;font-weight:700;letter-spacing:-.01em;line-height:1.15}.lede{margin:0 0 2.5rem;color:var(--muted);font-size:1.0625rem;line-height:1.5}label{display:block;margin-bottom:.625rem;font-size:.8125rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.shorten-row{display:flex;flex-wrap:wrap;gap:.625rem}input{flex:1 1 18rem;min-width:0;padding:.8rem 1rem;font:inherit;font-family:var(--font-display);font-size:.9375rem;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:10px;transition:border-color .15s ease,box-shadow .15s ease}input::placeholder{color:var(--muted);opacity:.75}input:hover{border-color:color-mix(in srgb,var(--signal) 35%,var(--line))}input:focus-visible,button:focus-visible{outline:2px solid var(--signal);outline-offset:2px}button{padding:.8rem 1.35rem;font:inherit;font-weight:700;font-size:.9375rem;color:var(--signal-ink);background:var(--signal);border:1px solid transparent;border-radius:10px;cursor:pointer;transition:transform .1s ease,opacity .15s ease}button:hover:not(:disabled){opacity:.92}button:active:not(:disabled){transform:scale(.97)}button:disabled{opacity:.55;cursor:progress}.copy-button{color:var(--ink);background:transparent;border-color:var(--line);font-weight:600}.copy-button:hover:not(:disabled){border-color:color-mix(in srgb,var(--signal) 45%,var(--line));opacity:1}.error{margin:1.25rem 0 0;padding:.75rem 1rem;color:var(--error);background:color-mix(in srgb,var(--error) 10%,transparent);border:1px solid color-mix(in srgb,var(--error) 30%,transparent);border-radius:10px;font-size:.9375rem}.result{margin-top:1.75rem;padding:1.25rem 1.25rem 1.375rem;background:var(--surface);border:1px solid var(--line);border-radius:14px}.result-row{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.result a{font-family:var(--font-display);font-size:1.0625rem;font-weight:600;color:var(--signal);text-decoration:none;overflow-wrap:anywhere}.result a:hover{text-decoration:underline}.target{flex-basis:100%;margin:1rem 0 0;padding-top:1rem;border-top:1px dashed var(--line);color:var(--muted);font-family:var(--font-display);font-size:.8125rem;overflow-wrap:anywhere}.target:before{content:"↳ "}.compression{margin-top:1.125rem;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.375rem .75rem;font-family:var(--font-display);font-size:.75rem;color:var(--muted)}.compression-label{white-space:nowrap}.compression-track{display:block;height:8px;background:color-mix(in srgb,var(--ink) 8%,transparent);border-radius:4px;overflow:hidden}.compression-bar{display:block;height:100%;border-radius:inherit;width:var(--bar-width, 0%);animation:grow-bar .5s ease-out both}.compression-bar.is-original{background:var(--muted)}.compression-bar.is-short{background:var(--thread)}.compression-count{text-align:right;font-variant-numeric:tabular-nums}.compression-delta{grid-column:1 / -1;margin-top:.125rem;color:var(--thread);font-weight:600}@keyframes grow-bar{0%{width:0%}}@media(prefers-reduced-motion:reduce){.compression-bar{animation:none}button,input{transition:none}}
