/*! tailwindcss v4.2.4 | MIT License | https://tailwindcss.com */@import "https://fonts.googleapis.com/css2?family=Geist:wght@300;400;500;600;700&family=Geist+Mono:wght@400;500;600&display=swap";:host,:root{--color-perry-bg:var(--color-perry-bg);--color-perry-surface:var(--color-perry-surface);--color-perry-surface-2:var(--color-perry-surface-2);--color-perry-border:var(--color-perry-border);--color-perry-fg:var(--color-perry-fg);--color-perry-muted:var(--color-perry-muted)}:root{--color-perry-bg:oklch(98.5% .002 220);--color-perry-surface:oklch(100% 0 0);--color-perry-surface-2:oklch(97.5% .003 220);--color-perry-border:oklch(92% .004 220);--color-perry-border-strong:oklch(86% .006 220);--color-perry-fg:oklch(18% .01 240);--color-perry-fg-muted:oklch(42% .012 240);--color-perry-muted:oklch(62% .01 240);--color-perry-accent:oklch(62% .13 188);--color-perry-accent-fg:oklch(98% .01 188);--color-perry-accent-soft:oklch(94% .03 188);--color-perry-success:oklch(62% .14 155);--color-perry-success-soft:oklch(94% .04 155);--color-perry-warning:oklch(72% .14 75);--color-perry-warning-soft:oklch(95% .05 75);--color-perry-danger:oklch(58% .2 27);--color-perry-danger-soft:oklch(95% .04 27);--color-perry-info:oklch(60% .13 250);--color-perry-info-soft:oklch(95% .03 250);--shadow-sm:0 1px 0 oklch(18% .01 240/.04),0 1px 2px oklch(18% .01 240/.04);--shadow-md:0 1px 0 oklch(18% .01 240/.04),0 4px 12px oklch(18% .01 240/.06);--shadow-lg:0 1px 0 oklch(18% .01 240/.04),0 12px 32px oklch(18% .01 240/.08)}[data-theme=dark]{--color-perry-bg:oklch(16% .01 230);--color-perry-surface:oklch(19.5% .012 230);--color-perry-surface-2:oklch(22.5% .014 230);--color-perry-border:oklch(27% .012 230);--color-perry-border-strong:oklch(34% .014 230);--color-perry-fg:oklch(96% .005 230);--color-perry-fg-muted:oklch(72% .012 230);--color-perry-muted:oklch(55% .012 230);--color-perry-accent:oklch(78% .12 180);--color-perry-accent-fg:oklch(16% .04 180);--color-perry-accent-soft:oklch(30% .06 180);--color-perry-success:oklch(74% .14 155);--color-perry-success-soft:oklch(28% .05 155);--color-perry-warning:oklch(80% .14 75);--color-perry-warning-soft:oklch(30% .06 75);--color-perry-danger:oklch(72% .18 27);--color-perry-danger-soft:oklch(30% .08 27);--color-perry-info:oklch(74% .12 250);--color-perry-info-soft:oklch(28% .05 250);--shadow-sm:0 1px 0 oklch(0% 0 0/.3),0 1px 2px oklch(0% 0 0/.4);--shadow-md:0 1px 0 oklch(0% 0 0/.3),0 4px 12px oklch(0% 0 0/.4);--shadow-lg:0 1px 0 oklch(0% 0 0/.3),0 12px 32px oklch(0% 0 0/.5)}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--color-perry-bg);color:var(--color-perry-fg);-webkit-font-smoothing:antialiased;font-feature-settings:"cv11","ss01","ss03";letter-spacing:-.005em;font-family:Geist,ui-sans-serif,system-ui,-apple-system,sans-serif;font-size:13px;line-height:1.45}.mono{font-feature-settings:"tnum","zero";font-family:Geist Mono,ui-monospace,SF Mono,monospace}.tabular{font-variant-numeric:tabular-nums;font-feature-settings:"tnum","zero"}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-perry-border-strong);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-perry-muted)}:focus{outline:none}:focus-visible{outline:2px solid var(--color-perry-accent);outline-offset:2px;border-radius:3px}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none;padding:0}a{color:inherit;text-decoration:none}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.block{display:block}.hidden{display:none}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.flex-wrap{flex-wrap:wrap}.gap-1{gap:4px}.gap-1\.5{gap:6px}.gap-2{gap:8px}.gap-2\.5{gap:10px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-5{gap:20px}.gap-6{gap:24px}.gap-8{gap:32px}.gap-10{gap:40px}.gap-12{gap:48px}.w-full{width:100%}.h-full{height:100%}.min-h-screen{min-height:100vh}.h-screen{height:100vh}.w-screen{width:100vw}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.inset-0{inset:0}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-auto{overflow-x:auto}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;user-select:none}.pointer-events-none{pointer-events:none}.truncate{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.p-0{padding:0}.p-1{padding:4px}.p-1\.5{padding:6px}.p-2{padding:8px}.p-2\.5{padding:10px}.p-3{padding:12px}.p-4{padding:16px}.p-5{padding:20px}.p-6{padding:24px}.p-8{padding:32px}.p-10{padding:40px}.p-12{padding:48px}.px-1{padding-left:4px;padding-right:4px}.px-1\.5{padding-left:6px;padding-right:6px}.px-2{padding-left:8px;padding-right:8px}.px-2\.5{padding-left:10px;padding-right:10px}.px-3{padding-left:12px;padding-right:12px}.px-4{padding-left:16px;padding-right:16px}.px-5{padding-left:20px;padding-right:20px}.px-6{padding-left:24px;padding-right:24px}.px-8{padding-left:32px;padding-right:32px}.px-10{padding-left:40px;padding-right:40px}.px-12{padding-left:48px;padding-right:48px}.py-1{padding-top:4px;padding-bottom:4px}.py-1\.5{padding-top:6px;padding-bottom:6px}.py-2{padding-top:8px;padding-bottom:8px}.py-2\.5{padding-top:10px;padding-bottom:10px}.py-3{padding-top:12px;padding-bottom:12px}.py-4{padding-top:16px;padding-bottom:16px}.py-5{padding-top:20px;padding-bottom:20px}.py-6{padding-top:24px;padding-bottom:24px}.py-8{padding-top:32px;padding-bottom:32px}.py-10{padding-top:40px;padding-bottom:40px}.py-12{padding-top:48px;padding-bottom:48px}.py-16{padding-top:64px;padding-bottom:64px}.py-20{padding-top:80px;padding-bottom:80px}.py-24{padding-top:96px;padding-bottom:96px}.pt-1{padding-top:4px}.pt-2{padding-top:8px}.pt-3{padding-top:12px}.pt-4{padding-top:16px}.pt-6{padding-top:24px}.pt-8{padding-top:32px}.pb-1{padding-bottom:4px}.pb-2{padding-bottom:8px}.pb-3{padding-bottom:12px}.pb-4{padding-bottom:16px}.pb-6{padding-bottom:24px}.pb-8{padding-bottom:32px}.pl-2{padding-left:8px}.pl-3{padding-left:12px}.pl-4{padding-left:16px}.pl-6{padding-left:24px}.pl-8{padding-left:32px}.pr-2{padding-right:8px}.pr-3{padding-right:12px}.pr-4{padding-right:16px}.pr-6{padding-right:24px}.pr-8{padding-right:32px}.m-0{margin:0}.mx-auto{margin-left:auto;margin-right:auto}.mt-0\.5{margin-top:2px}.mt-1{margin-top:4px}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.mt-8{margin-top:32px}.mt-12{margin-top:48px}.mb-1{margin-bottom:4px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.mb-4{margin-bottom:16px}.mb-6{margin-bottom:24px}.mb-8{margin-bottom:32px}.ml-1{margin-left:4px}.ml-2{margin-left:8px}.ml-auto{margin-left:auto}.mr-1{margin-right:4px}.mr-2{margin-right:8px}.border{border:1px solid var(--color-perry-border)}.border-t{border-top:1px solid var(--color-perry-border)}.border-b{border-bottom:1px solid var(--color-perry-border)}.border-l{border-left:1px solid var(--color-perry-border)}.border-r{border-right:1px solid var(--color-perry-border)}.border-strong{border-color:var(--color-perry-border-strong)}.border-accent{border-color:var(--color-perry-accent)}.rounded{border-radius:4px}.rounded-md{border-radius:6px}.rounded-lg{border-radius:8px}.rounded-xl{border-radius:10px}.rounded-full{border-radius:9999px}.rounded-none{border-radius:0}.bg-bg{background:var(--color-perry-bg)}.bg-surface{background:var(--color-perry-surface)}.bg-surface-2{background:var(--color-perry-surface-2)}.bg-accent{background:var(--color-perry-accent)}.bg-accent-soft{background:var(--color-perry-accent-soft)}.bg-success-soft{background:var(--color-perry-success-soft)}.bg-warning-soft{background:var(--color-perry-warning-soft)}.bg-danger-soft{background:var(--color-perry-danger-soft)}.bg-info-soft{background:var(--color-perry-info-soft)}.bg-success\/10{background:var(--color-perry-success)}@supports (color:color-mix(in lab,red,red)){.bg-success\/10{background:color-mix(in oklch,var(--color-perry-success) 10%,transparent)}}.bg-success\/15{background:var(--color-perry-success)}@supports (color:color-mix(in lab,red,red)){.bg-success\/15{background:color-mix(in oklch,var(--color-perry-success) 15%,transparent)}}.bg-warning\/10{background:var(--color-perry-warning)}@supports (color:color-mix(in lab,red,red)){.bg-warning\/10{background:color-mix(in oklch,var(--color-perry-warning) 10%,transparent)}}.bg-warning\/15{background:var(--color-perry-warning)}@supports (color:color-mix(in lab,red,red)){.bg-warning\/15{background:color-mix(in oklch,var(--color-perry-warning) 15%,transparent)}}.bg-danger\/10{background:var(--color-perry-danger)}@supports (color:color-mix(in lab,red,red)){.bg-danger\/10{background:color-mix(in oklch,var(--color-perry-danger) 10%,transparent)}}.bg-danger\/15{background:var(--color-perry-danger)}@supports (color:color-mix(in lab,red,red)){.bg-danger\/15{background:color-mix(in oklch,var(--color-perry-danger) 15%,transparent)}}.bg-info\/10{background:var(--color-perry-info)}@supports (color:color-mix(in lab,red,red)){.bg-info\/10{background:color-mix(in oklch,var(--color-perry-info) 10%,transparent)}}.bg-info\/15{background:var(--color-perry-info)}@supports (color:color-mix(in lab,red,red)){.bg-info\/15{background:color-mix(in oklch,var(--color-perry-info) 15%,transparent)}}.border-danger\/40{border-color:var(--color-perry-danger)}@supports (color:color-mix(in lab,red,red)){.border-danger\/40{border-color:color-mix(in oklch,var(--color-perry-danger) 40%,transparent)}}.border-success\/40{border-color:var(--color-perry-success)}@supports (color:color-mix(in lab,red,red)){.border-success\/40{border-color:color-mix(in oklch,var(--color-perry-success) 40%,transparent)}}.border-warning\/40{border-color:var(--color-perry-warning)}@supports (color:color-mix(in lab,red,red)){.border-warning\/40{border-color:color-mix(in oklch,var(--color-perry-warning) 40%,transparent)}}.text-fg{color:var(--color-perry-fg)}.text-muted{color:var(--color-perry-fg-muted)}.text-faint{color:var(--color-perry-muted)}.text-accent{color:var(--color-perry-accent)}.text-success{color:var(--color-perry-success)}.text-warning{color:var(--color-perry-warning)}.text-danger{color:var(--color-perry-danger)}.text-info{color:var(--color-perry-info)}.text-on-accent{color:var(--color-perry-accent-fg)}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-xs{font-size:12px}.text-sm{font-size:13px}.text-base{font-size:14px}.text-md{font-size:15px}.text-lg{font-size:17px}.text-xl{font-size:20px}.text-2xl{font-size:24px}.text-3xl{font-size:30px}.text-4xl{font-size:36px}.text-5xl{font-size:48px}.text-6xl{font-size:60px}.text-7xl{font-size:76px}.font-light{font-weight:300}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.uppercase{text-transform:uppercase}.tracking-tight{letter-spacing:-.015em}.tracking-tighter{letter-spacing:-.025em}.tracking-wide{letter-spacing:.04em}.tracking-widest{letter-spacing:.12em}.leading-none{line-height:1}.leading-tight{line-height:1.15}.leading-snug{line-height:1.3}.leading-normal{line-height:1.5}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.transition{transition:all .15s cubic-bezier(.4,0,.2,1)}.transition-fast{transition:all 80ms cubic-bezier(.4,0,.2,1)}.transition-slow{transition:all .3s cubic-bezier(.4,0,.2,1)}.hover\:bg-surface-2:hover{background:var(--color-perry-surface-2)}.hover\:text-fg:hover{color:var(--color-perry-fg)}.hover\:text-accent:hover{color:var(--color-perry-accent)}.hover\:border-strong:hover{border-color:var(--color-perry-border-strong)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}@keyframes stripe-shift{0%{background-position:0 0}to{background-position:28px 0}}.animated-stripe{background-image:linear-gradient(45deg,var(--color-perry-accent-soft) 25%,transparent 25%,transparent 50%,var(--color-perry-accent-soft) 50%,var(--color-perry-accent-soft) 75%,transparent 75%,transparent);background-size:14px 14px;animation:stripe-shift 1.2s linear infinite}@media (prefers-reduced-motion:reduce){.animated-stripe{animation:none}}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}.pulse-dot{animation:pulse-dot 1.6s ease-in-out infinite}@media (prefers-reduced-motion:reduce){.pulse-dot{animation:none}}@keyframes ticker-slide{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:ticker-slide .24s cubic-bezier(.2,.7,.3,1) both}@media (prefers-reduced-motion:reduce){.fade-in{animation:none}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.shimmer{background:linear-gradient(90deg,transparent 0,var(--color-perry-accent-soft) 50%,transparent 100%);background-size:200% 100%;animation:shimmer 1.8s linear infinite}@media (prefers-reduced-motion:reduce){.shimmer{animation:none}}.input{background:var(--color-perry-surface);border:1px solid var(--color-perry-border-strong);width:100%;color:var(--color-perry-fg);border-radius:6px;padding:8px 10px;font-size:13px;transition:border-color 80ms,box-shadow 80ms;display:block}.input:focus{border-color:var(--color-perry-accent);box-shadow:0 0 0 3px var(--color-perry-accent-soft);outline:none}.input::placeholder{color:var(--color-perry-muted)}.btn{white-space:nowrap;letter-spacing:-.005em;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:6px 12px;font-size:12.5px;font-weight:500;transition:all 80ms;display:inline-flex}.btn-primary{background:var(--color-perry-accent);color:var(--color-perry-accent-fg);border-color:var(--color-perry-accent)}.btn-primary:hover{filter:brightness(1.05)}.btn-secondary{background:var(--color-perry-surface);color:var(--color-perry-fg);border-color:var(--color-perry-border-strong)}.btn-secondary:hover{background:var(--color-perry-surface-2)}.btn-ghost{color:var(--color-perry-fg-muted);background:0 0}.btn-ghost:hover{background:var(--color-perry-surface-2);color:var(--color-perry-fg)}.btn-sm{padding:4px 8px;font-size:11.5px}.btn-lg{padding:9px 16px;font-size:13.5px}.pill{letter-spacing:0;white-space:nowrap;border-radius:4px;align-items:center;gap:4px;height:18px;padding:1px 7px;font-size:11px;font-weight:500;line-height:1;display:inline-flex}.pill-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.hr-faint{background:var(--color-perry-border);border:none;height:1px;margin:0}.bg-grid{background-image:linear-gradient(to right,var(--color-perry-border) 1px,transparent 1px),linear-gradient(to bottom,var(--color-perry-border) 1px,transparent 1px);background-size:32px 32px}.nav-active{background:var(--color-perry-surface-2);color:var(--color-perry-fg)}.nav-active:before{content:"";background:var(--color-perry-accent);border-radius:0 2px 2px 0;width:2px;position:absolute;top:6px;bottom:6px;left:0}.carrier-step{letter-spacing:-.01em;font-family:Geist Mono,ui-monospace,monospace;font-size:11px}.cheapest-glow{box-shadow:0 0 0 1px var(--color-perry-accent),0 0 0 4px var(--color-perry-accent-soft),var(--shadow-md)}@media (prefers-reduced-motion:reduce){*,:after,:before{transition-duration:.001ms!important;animation-duration:.001ms!important}}.kbd,kbd{background:var(--color-perry-surface);min-width:18px;height:18px;color:var(--color-perry-fg-muted);border:solid var(--color-perry-border-strong);border-width:1px 1px 2px;border-radius:4px;justify-content:center;align-items:center;padding:0 4px;font-family:Geist Mono,monospace;font-size:10.5px;display:inline-flex}.text-pretty{text-wrap:pretty}.text-balance{text-wrap:balance}@media (max-width:768px){aside[data-perry-sidebar]{width:56px!important}aside[data-perry-sidebar] [data-perry-sidebar-label]{display:none}.grid[style*="1fr 1fr"],.grid[style*="1fr 360px"],.grid[style*="2fr 1fr 1fr"],.grid[style*=repeat\(2],.grid[style*=repeat\(3]{grid-template-columns:1fr!important}.px-6{padding-left:16px!important;padding-right:16px!important}.py-8{padding-top:20px!important;padding-bottom:20px!important}[data-perry-topbar]{white-space:nowrap;overflow-x:auto}}@media (min-width:768px) and (max-width:1023px){aside[data-perry-sidebar]{width:64px}aside[data-perry-sidebar] [data-perry-sidebar-label]{display:none}}