:root{--bg: #FAF8F5;--bg-secondary: #F3F0EB;--text: #2D2D2D;--text-secondary: #6B6B6B;--border: #D4D0C8;--accent: #ED4F35;--noise-opacity: .03}[data-theme=dark]{--bg: #1A1918;--bg-secondary: #252321;--text: #E8E6E3;--text-secondary: #9C9A97;--border: #3D3B38;--accent: #F0825F;--noise-opacity: .02}:root{--code-bg: #1E1E1E;--code-divider: #333}*{margin:0;padding:0;box-sizing:border-box}html,body{min-height:100dvh;background:var(--bg);font-family:Instrument Sans,sans-serif;color:var(--text);transition:background .2s ease,color .2s ease}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:var(--noise-opacity);z-index:9999;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E")}.accent-bar{position:fixed;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#ed4f35,#f59e0b,#ed4f35);background-size:200% 100%;animation:shimmer 8s ease-in-out infinite;z-index:1000}@keyframes shimmer{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.page{max-width:820px;margin:0 auto;padding:0 1.5rem;min-height:100dvh;display:flex;flex-direction:column}header{padding:1rem 0 0;padding-top:calc(1rem + 3px)}.back-link{font-family:Instrument Sans,sans-serif;font-size:.8125rem;color:var(--text-secondary);text-decoration:none;transition:color .15s ease;padding:.5rem 0}.back-arrow{display:inline-block;transition:transform .15s ease}@media(hover:hover)and (pointer:fine){.back-link:hover{color:var(--accent)}.back-link:hover .back-arrow{transform:translate(-2px)}}@media(prefers-reduced-motion:reduce){.back-arrow{transition:none}}.content{flex:1;display:flex;flex-direction:column;justify-content:center;gap:1.5rem;padding-bottom:4rem}.swoop-title{font-family:"Instrument Serif",serif;font-size:3.5rem;font-weight:400;line-height:1;letter-spacing:-.02em;color:var(--accent)}.swoop-description{font-size:.9375rem;color:var(--text-secondary);margin-top:.25rem;line-height:1.5}.install-row{display:flex;align-items:center;gap:.75rem;margin-top:.75rem}.proof{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--code-divider);border-radius:6px;overflow:hidden;box-shadow:0 1px 2px #2d2d2d0f,0 8px 24px #2d2d2d14}[data-theme=dark] .proof{box-shadow:none;outline:1px solid rgba(255,255,255,.07);outline-offset:-1px}.proof-panel{background:var(--code-bg);padding:1.5rem;font-family:Space Mono,monospace;font-size:.875rem;line-height:1.7;color:#d4d4d4}.proof-label{font-size:.6875rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#6a9955;margin-bottom:1rem}.proof-code{margin:0;font-family:inherit;font-size:inherit;line-height:inherit;white-space:pre}.kw{color:#569cd6}.fn{color:#dcdcaa}.str{color:#ce9178}.proof-result{animation:fadeUp .4s ease-out both}@media(prefers-reduced-motion:reduce){.proof-result{animation:none}}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.route-header{color:#9cdcfe;font-size:.75rem;margin-bottom:.5rem;letter-spacing:.02em}.flight{padding:.25rem 0;border-bottom:1px solid #2E2E2E;display:flex;justify-content:space-between;align-items:baseline}.flight:last-child{border-bottom:none}.flight-carrier{color:#d4d4d4}.flight-time{color:gray;font-size:.75rem;margin-left:.25rem}.flight-price{color:#f0825f;font-weight:700;font-size:.875rem}.action-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.install-pill{display:inline-flex;align-items:center;gap:.25rem;font-family:Space Mono,monospace;font-size:.875rem;color:var(--text);background:var(--bg-secondary);padding:.625rem 1rem;border-radius:4px;border:1px dashed var(--border);cursor:pointer;transition:border-color .15s ease;line-height:1;min-height:44px}.install-pill:active{transform:scale(.97)}@media(hover:hover)and (pointer:fine){.install-pill:hover{border-color:var(--accent)}.install-pill:hover .install-clipboard{color:var(--accent)}}.install-pill:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.install-dollar{color:var(--accent)}.install-clipboard{width:14px;height:14px;color:var(--text-secondary);margin-left:.25rem;transition:color .15s ease}.install-copied{font-size:.75rem;color:var(--accent);font-weight:600;font-family:Instrument Sans,sans-serif;margin-left:.25rem}.action-btn{display:inline-flex;align-items:center;font-family:Instrument Sans,sans-serif;font-size:.875rem;font-weight:600;color:var(--text);text-decoration:none;padding:.625rem 1rem;border-radius:4px;border:1px solid var(--border);transition:border-color .15s ease,color .15s ease;min-height:44px}.action-btn:active{transform:scale(.97)}.action-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(hover:hover)and (pointer:fine){.action-btn:hover{border-color:var(--accent);color:var(--accent)}}.btn-arrow{margin-left:.35rem;display:inline-block;transition:transform .15s ease}@media(hover:hover)and (pointer:fine){.action-btn:hover .btn-arrow{transform:translate(2px)}}@media(prefers-reduced-motion:reduce){.btn-arrow{transition:none}}.gh-icon{width:16px;height:16px;flex-shrink:0}.action-btn-primary{background:var(--text);border-color:var(--text);color:var(--bg);gap:.375rem}@media(hover:hover)and (pointer:fine){.action-btn-primary:hover{background:var(--accent);border-color:var(--accent);color:#fff}}footer{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-top:1px dashed var(--border);font-size:.6875rem;color:var(--text-secondary)}.footer-links{display:flex;gap:1rem}.footer-links a{color:var(--text-secondary);padding:.5rem 0;text-decoration:none;transition:color .15s ease}@media(hover:hover)and (pointer:fine){.footer-links a:hover{color:var(--accent)}}@media(max-width:640px){.swoop-title{font-size:2.5rem}.proof{grid-template-columns:1fr}.proof-panel{padding:.75rem 1rem;font-size:.75rem}.content{padding-bottom:1rem;gap:1rem}.action-row{gap:.375rem}.install-row{margin-top:.5rem}}@media(max-height:640px){.content{padding-bottom:.5rem;gap:.75rem}.proof-panel{padding:.5rem .75rem}}
