@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700&family=IBM+Plex+Sans:wght@400;500;600&family=IBM+Plex+Mono:wght@400;500&family=JetBrains+Mono:wght@400;500&display=swap";:root,html[data-theme=light]{--neutral-99: oklch(.99 .005 50);--neutral-97: oklch(.97 .008 50);--neutral-95: oklch(.96 .01 50);--neutral-90: oklch(.92 .01 50);--neutral-85: oklch(.86 .012 50);--neutral-75: oklch(.76 .014 50);--neutral-55: oklch(.55 .018 50);--neutral-35: oklch(.36 .02 50);--neutral-25: oklch(.28 .02 50);--neutral-15: oklch(.18 .02 50);--brand-primary: oklch(.55 .14 65);--brand-primary-hover: oklch(.5 .15 65);--brand-primary-active: oklch(.45 .15 65);--brand-primary-bg: oklch(.55 .14 65 / .12);--brand-secondary: oklch(.35 .08 140);--brand-secondary-hover: oklch(.32 .09 140);--status-error: oklch(.58 .18 25);--status-error-bg: oklch(.58 .18 25 / .12);--status-warning: oklch(.72 .15 75);--status-warning-bg: oklch(.72 .15 75 / .12);--status-success: oklch(.62 .13 145);--status-success-bg: oklch(.62 .13 145 / .12);--status-info: oklch(.55 .1 220);--status-info-bg: oklch(.55 .1 220 / .12);--bg-0: var(--neutral-95);--bg-1: var(--neutral-90);--bg-2: var(--neutral-85);--bg-elev: var(--neutral-97);--bg-grid: var(--neutral-90);--fg-0: var(--neutral-15);--fg-1: var(--neutral-25);--fg-2: var(--neutral-35);--fg-3: var(--neutral-55);--border: var(--neutral-85);--border-strong: var(--neutral-75);--accent: var(--brand-primary);--accent-hover: var(--brand-primary-hover);--accent-bg: var(--brand-primary-bg);--scroll-track: var(--neutral-90);--scroll-thumb: var(--neutral-75);--scroll-thumb-hover: var(--neutral-55)}html[data-theme=dark]{--neutral-99: oklch(.99 .005 50);--neutral-97: oklch(.2 .018 50);--neutral-95: oklch(.17 .018 50);--neutral-90: oklch(.22 .018 50);--neutral-85: oklch(.28 .02 50);--neutral-75: oklch(.36 .022 50);--neutral-55: oklch(.55 .018 50);--neutral-35: oklch(.7 .014 50);--neutral-25: oklch(.85 .012 50);--neutral-15: oklch(.93 .01 50);--brand-primary: oklch(.65 .15 65);--brand-primary-hover: oklch(.7 .15 65);--brand-primary-active: oklch(.6 .15 65);--brand-primary-bg: oklch(.65 .15 65 / .15);--brand-secondary: oklch(.55 .1 140);--brand-secondary-hover: oklch(.6 .1 140);--status-error: oklch(.65 .17 25);--status-error-bg: oklch(.65 .17 25 / .18);--status-warning: oklch(.78 .15 75);--status-warning-bg: oklch(.78 .15 75 / .18);--status-success: oklch(.7 .13 145);--status-success-bg: oklch(.7 .13 145 / .18);--status-info: oklch(.65 .1 220);--status-info-bg: oklch(.65 .1 220 / .18);--bg-0: var(--neutral-95);--bg-1: var(--neutral-90);--bg-2: var(--neutral-85);--bg-elev: var(--neutral-97);--bg-grid: var(--neutral-90);--fg-0: var(--neutral-15);--fg-1: var(--neutral-25);--fg-2: var(--neutral-35);--fg-3: var(--neutral-55);--border: var(--neutral-85);--border-strong: var(--neutral-75);--accent: var(--brand-primary);--accent-hover: var(--brand-primary-hover);--accent-bg: var(--brand-primary-bg);--scroll-track: var(--neutral-95);--scroll-thumb: var(--neutral-85);--scroll-thumb-hover: var(--neutral-75)}:root{--space-0: 0;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--space-9: 96px;--space-10: 128px;--radius-sm: 2px;--radius-md: 4px;--radius-lg: 6px;--radius-xl: 10px;--ease: cubic-bezier(.2, 0, 0, 1);--ease-out: cubic-bezier(.2, 0, 0, 1);--ease-in: cubic-bezier(1, 0, .8, 0);--dur-fast: .1s;--dur-mid: .18s;--dur-slow: .32s;--shadow-1: 0 1px 0 oklch(.18 .02 50 / .08);--shadow-2: 0 2px 6px oklch(.18 .02 50 / .1);--shadow-3: 0 8px 24px oklch(.18 .02 50 / .18)}:root{--font-display: "Plus Jakarta Sans", "Cabinet Grotesk", "Albert Sans", system-ui, sans-serif;--font-body: "IBM Plex Sans", "Plus Jakarta Sans", system-ui, sans-serif;--font-mono: "JetBrains Mono", "IBM Plex Mono", "Cascadia Code", Consolas, monospace;--text-xs: 12px;--text-sm: 13px;--text-base: 15px;--text-md: 18px;--text-lg: 22px;--text-xl: 28px;--text-2xl: 36px;--text-3xl: 48px;--leading-tight: 1.2;--leading-snug: 1.3;--leading-normal: 1.5;--leading-relaxed: 1.625;--tracking-tight: -.02em;--tracking-normal: 0;--tracking-wide: .04em;--tracking-caps: .08em}body{font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--fg-0);background:var(--bg-0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"ss01","cv11","kern";text-rendering:optimizeLegibility}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);letter-spacing:var(--tracking-tight);font-weight:600;line-height:var(--leading-tight);color:var(--fg-0)}h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}h4{font-size:var(--text-lg)}h5{font-size:var(--text-md)}h6{font-size:var(--text-base);text-transform:uppercase;letter-spacing:var(--tracking-caps)}code,pre,kbd,samp{font-family:var(--font-mono);font-variant-ligatures:contextual}.vex-eyebrow{font-family:var(--font-display);font-size:var(--text-xs);font-weight:600;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--fg-2)}.vex-mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;height:100%;color-scheme:light dark}body{min-height:100vh}img,svg,video,canvas{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:transparent;border:0;padding:0}a{color:var(--accent);text-decoration:none;transition:color var(--dur-fast) var(--ease)}a:hover{color:var(--accent-hover)}::selection{background:var(--brand-primary-bg);color:var(--fg-0)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--scroll-track)}::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border-radius:var(--radius-md)}::-webkit-scrollbar-thumb:hover{background:var(--scroll-thumb-hover)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}body{background:var(--bg-0);color:var(--fg-0);font-family:var(--font-body);min-height:100vh}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:12px 24px;font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;border-radius:var(--radius-sm);border:1px solid transparent;cursor:pointer;transition:background .12s ease,border-color .12s ease,transform 60ms ease;letter-spacing:var(--tracking-tight)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn:active:not(:disabled){transform:translateY(1px)}.btn-sm{padding:8px 14px;font-size:var(--text-xs)}.btn-primary{background:var(--accent);color:var(--bg-0)}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-ghost{background:transparent;color:var(--fg-1);border-color:var(--border-strong)}.btn-ghost:hover:not(:disabled){color:var(--fg-0);border-color:var(--accent)}.link{color:var(--accent);text-decoration:none;font-weight:500}.link:hover{text-decoration:underline}.alert{padding:12px 16px;border-radius:var(--radius-sm);font-size:var(--text-sm);border:1px solid}.alert-error{background:var(--status-error-bg);border-color:var(--status-error);color:var(--status-error)}.alert-info{background:var(--status-info-bg);border-color:var(--status-info);color:var(--status-info)}.alert-warn{background:var(--status-warning-bg);border-color:var(--status-warning);color:var(--status-warning)}.alert-success{background:var(--status-success-bg);border-color:var(--status-success);color:var(--status-success)}.invite-form{display:flex;gap:var(--space-2);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border)}.invite-form input{flex:1;padding:8px 12px;background:var(--bg-2);border:1px solid var(--border);border-radius:4px;color:var(--fg-0);font-family:var(--font-body);font-size:var(--text-sm)}.invite-form input:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:var(--accent)}.btn-sm{padding:6px 14px!important;font-size:var(--text-sm)!important}.link-danger{color:var(--status-error);cursor:pointer;background:none;border:none;padding:0;font-size:var(--text-xs)}.link-danger:hover{text-decoration:underline}.link-danger:disabled{opacity:.5;cursor:wait}.coupon-row{display:flex;gap:var(--space-2)}.coupon-row input{flex:1;padding:10px 12px;background:var(--bg-2);border:1px solid var(--border);border-radius:4px;color:var(--fg-0);font-family:var(--font-mono);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.05em}.coupon-applied{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:var(--status-success-bg);border:1px solid var(--status-success);border-radius:4px;color:var(--status-success);font-size:var(--text-sm)}.coupon-msg-error{color:var(--status-error);font-size:var(--text-xs);margin-top:4px;display:block}.checkout-strike{text-decoration:line-through;color:var(--fg-3);font-size:.7em;margin-right:8px;font-weight:400}.field{display:flex;flex-direction:column;gap:6px}.field>span{font-size:var(--text-xs);color:var(--fg-2);font-weight:500;letter-spacing:var(--tracking-wide);text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.field input,.field select{background:var(--bg-2);border:1px solid var(--border-strong);color:var(--fg-0);padding:10px 12px;border-radius:var(--radius-md, var(--radius-sm));font-family:var(--font-body);font-size:var(--text-sm);line-height:1.4;transition:border-color .12s ease,background-color .12s ease}.field input::placeholder{color:var(--fg-3)}.field input:hover:not(:focus),.field select:hover:not(:focus){border-color:var(--border-stronger, var(--border-strong))}.field input:focus,.field select:focus{outline:none;border-color:var(--accent);background:var(--bg-1);box-shadow:0 0 0 3px color-mix(in oklch,var(--accent) 18%,transparent)}.auth-shell{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-5);background:radial-gradient(ellipse 600px 400px at 30% 20%,var(--brand-primary-bg),transparent 60%),var(--bg-0)}.auth-card{width:100%;max-width:440px;background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-6) var(--space-5)}.auth-brand{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-display);font-weight:700;font-size:var(--text-sm);color:var(--fg-1);margin-bottom:var(--space-5)}.auth-brand-mark{width:26px;height:26px;background:var(--accent);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:12px;color:var(--bg-0);font-weight:700}.auth-title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:700;letter-spacing:var(--tracking-tighter);margin:0 0 8px;color:var(--fg-0)}.auth-sub{font-size:var(--text-sm);color:var(--fg-2);margin:0 0 var(--space-5);line-height:1.5}.auth-form{display:flex;flex-direction:column;gap:var(--space-3)}.auth-form .btn-primary{margin-top:var(--space-2)}.auth-links{display:flex;justify-content:space-between;margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--border);font-size:var(--text-xs)}.auth-links-center{justify-content:center}.auth-links a{color:var(--fg-2);cursor:pointer}.auth-links a:hover{color:var(--accent)}.auth-success-icon{display:flex;justify-content:center;margin-bottom:var(--space-3);color:var(--accent)}.auth-hint{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 14px;font-size:var(--text-xs);color:var(--fg-2);display:flex;flex-direction:column;gap:4px;line-height:1.5;margin:var(--space-3) 0}.auth-hint-label{color:var(--fg-0);font-weight:600}.auth-divider{height:1px;background:var(--border);margin:var(--space-4) 0 var(--space-3)}.auth-foot{margin-top:var(--space-5);display:flex;gap:var(--space-2);align-items:center;font-size:var(--text-xs);color:var(--fg-3)}.auth-foot a{color:var(--fg-2);text-decoration:none}.auth-foot a:hover{color:var(--accent)}.dash-shell{min-height:100vh;display:flex;flex-direction:column}.dash-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--border);background:var(--bg-1)}.dash-brand{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-display);font-weight:700;font-size:var(--text-md);color:var(--fg-0)}.dash-brand-mark{width:28px;height:28px;background:var(--accent);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:13px;color:var(--bg-0);font-weight:700}.dash-user{display:flex;align-items:center;gap:var(--space-3)}.dash-user-info{text-align:right;line-height:1.2}.dash-user-name{font-size:var(--text-sm);font-weight:600;color:var(--fg-0)}.dash-user-email{font-size:var(--text-xs);color:var(--fg-3)}.dash-main{flex:1;max-width:960px;width:100%;margin:0 auto;padding:var(--space-6) var(--space-5);display:flex;flex-direction:column;gap:var(--space-5)}.dash-foot{border-top:1px solid var(--border);padding:var(--space-3) var(--space-5);text-align:center;font-size:var(--text-xs);color:var(--fg-3)}.dash-foot a{color:var(--fg-2);margin-left:6px}.loading{text-align:center;padding:var(--space-5);color:var(--fg-2);font-size:var(--text-sm)}.card{background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.card-eyebrow{font-size:var(--text-xs);color:var(--fg-3);text-transform:uppercase;letter-spacing:var(--tracking-wide);margin-bottom:6px;font-weight:600}.card-title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:700;margin:0;letter-spacing:var(--tracking-tight);color:var(--fg-0)}.card-title-sub{font-family:var(--font-body);font-size:var(--text-sm);font-weight:400;color:var(--fg-2)}.card-text{font-size:var(--text-sm);color:var(--fg-1);line-height:1.6;margin:0;max-width:60ch}.card-fine{font-size:var(--text-xs);color:var(--fg-3);margin:0;line-height:1.5}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)}.card-grid-2{grid-template-columns:repeat(2,1fr)}.stat-block{padding:var(--space-3);background:var(--bg-2);border-radius:var(--radius-sm)}.stat-label{font-size:var(--text-xs);color:var(--fg-2);text-transform:uppercase;letter-spacing:var(--tracking-wide);margin-bottom:4px}.stat-value{font-family:var(--font-mono);font-size:var(--text-lg);color:var(--fg-0);font-weight:500}.features{display:flex;flex-wrap:wrap;gap:6px}.feature-chip{font-family:var(--font-mono);font-size:11px;background:var(--bg-2);color:var(--fg-1);padding:4px 10px;border-radius:999px;border:1px solid var(--border)}.card-actions{display:flex;gap:var(--space-2);margin-top:var(--space-2)}.badge{font-size:var(--text-xs);font-family:var(--font-mono);padding:4px 10px;border-radius:999px;white-space:nowrap;font-weight:500;text-transform:lowercase}.badge-trial{background:var(--status-warning-bg);color:var(--status-warning);border:1px solid var(--status-warning)}.badge-solo,.badge-team,.badge-pro{background:var(--status-success-bg);color:var(--status-success);border:1px solid var(--status-success)}.badge-perpetual{background:var(--accent-bg);color:var(--accent);border:1px solid var(--accent)}.badge-basic,.badge-enterprise{background:var(--bg-2);color:var(--fg-1);border:1px solid var(--border)}.badge-status-active{background:var(--status-success-bg);color:var(--status-success);border:1px solid var(--status-success)}.badge-status-pending{background:var(--status-warning-bg);color:var(--status-warning);border:1px solid var(--status-warning)}.badge-status-overdue{background:var(--status-error-bg);color:var(--status-error);border:1px solid var(--status-error)}.badge-status-cancelled,.badge-status-expired{background:var(--bg-2);color:var(--fg-2);border:1px solid var(--border)}.pay-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.pay-table th{text-align:left;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--fg-3);font-weight:600;padding:8px 12px;border-bottom:1px solid var(--border)}.pay-table td{padding:12px;border-bottom:1px solid var(--border);color:var(--fg-1)}.pay-status{font-family:var(--font-mono);font-size:11px;padding:2px 8px;border-radius:999px}.pay-status-confirmed,.pay-status-received{background:var(--status-success-bg);color:var(--status-success)}.pay-status-pending{background:var(--status-warning-bg);color:var(--status-warning)}.pay-status-overdue{background:var(--status-error-bg);color:var(--status-error)}.pay-status-deleted,.pay-status-refunded{background:var(--bg-2);color:var(--fg-2)}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)}.plan-card{position:relative;background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-4);text-align:left;cursor:pointer;font-family:inherit;color:inherit;transition:border-color .12s ease,background .12s ease,transform 60ms ease;display:flex;flex-direction:column;gap:6px}.plan-card:hover{border-color:var(--border-strong)}.plan-card.active{border-color:var(--accent);background:var(--accent-bg)}.plan-card:active{transform:translateY(1px)}.plan-name{font-family:var(--font-display);font-size:var(--text-lg);font-weight:700;color:var(--fg-0);letter-spacing:var(--tracking-tight)}.plan-desc{font-size:var(--text-xs);color:var(--fg-2);line-height:1.4;margin-bottom:6px}.plan-price{display:flex;align-items:baseline;gap:4px;margin-top:4px}.plan-price-amount{font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;color:var(--fg-0)}.plan-price-period{font-size:var(--text-xs);color:var(--fg-2)}.plan-meta{font-family:var(--font-mono);font-size:11px;color:var(--fg-3);line-height:1.4;margin-top:4px}.plan-badge{position:absolute;top:-10px;right:12px;background:var(--accent);color:var(--bg-0);font-size:11px;font-weight:600;padding:3px 10px;border-radius:999px;letter-spacing:var(--tracking-wide)}.cycle-toggle{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.cycle-opt{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-4);cursor:pointer;text-align:left;transition:border-color .12s ease,background .12s ease;position:relative;font-family:inherit;color:inherit}.cycle-opt:hover{border-color:var(--border-strong)}.cycle-opt.active{border-color:var(--accent);background:var(--accent-bg)}.cycle-opt-label{font-size:var(--text-sm);color:var(--fg-2);margin-bottom:8px;font-weight:500}.cycle-opt-price{font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;color:var(--fg-0)}.cycle-opt-price span{font-family:var(--font-body);font-size:var(--text-sm);font-weight:400;color:var(--fg-2);margin-left:4px}.cycle-opt-tag{position:absolute;top:-10px;right:12px;background:var(--accent);color:var(--bg-0);font-size:11px;font-weight:600;padding:3px 10px;border-radius:999px;letter-spacing:var(--tracking-wide)}.checkout-summary{display:flex;align-items:center;justify-content:space-between;padding-top:var(--space-3);border-top:1px solid var(--border);margin-top:var(--space-2)}.checkout-summary-label{font-size:var(--text-xs);color:var(--fg-2);text-transform:uppercase;letter-spacing:var(--tracking-wide)}.checkout-summary-value{font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;color:var(--fg-0)}.checkout-summary-note{font-size:var(--text-xs);color:var(--fg-3);margin-top:4px}@media (max-width: 720px){.card-grid,.card-grid-2,.cycle-toggle,.plan-grid{grid-template-columns:1fr}.dash-header{flex-direction:column;gap:var(--space-3);align-items:stretch}.dash-user-info{text-align:left}.pay-table{font-size:var(--text-xs)}.pay-table th,.pay-table td{padding:8px}}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-7) var(--space-5);gap:var(--space-2);color:var(--fg-2, var(--text-muted))}.empty-state svg{color:var(--fg-3, var(--text-muted));opacity:.7;margin-bottom:var(--space-2)}.empty-state-title{color:var(--fg-1, var(--text-strong));font-weight:600;font-size:var(--text-md, 15px);letter-spacing:-.01em}.empty-state-body{color:var(--fg-2, var(--text-muted));font-size:var(--text-sm, 13px);line-height:1.55;max-width:380px}.empty-state strong{color:var(--fg-1, var(--text-strong));font-weight:600}.devices-skeleton{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4) 0 var(--space-2)}.skeleton-row{display:grid;grid-template-columns:2fr 1.5fr 1.5fr 80px;gap:var(--space-3);align-items:center;padding:var(--space-2) var(--space-1)}.skeleton{height:12px;border-radius:var(--radius-sm, 3px);background:linear-gradient(90deg,var(--bg-1, #1c1816) 0%,var(--bg-2, #25201d) 50%,var(--bg-1, #1c1816) 100%);background-size:200% 100%;animation:skeleton-shimmer 1.4s ease-in-out infinite}.skeleton-name{height:14px;width:70%}.skeleton-meta{height:12px;width:80%}.skeleton-btn{height:26px;width:100%;border-radius:var(--radius-md, 4px)}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion: reduce){.skeleton{animation:none}}
