:root{color-scheme:light dark;--font-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: ui-monospace, "Cascadia Code", "Segoe UI Mono", monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 2rem;--text-4xl: clamp(2.25rem, 4vw, 3rem);--leading-tight: 1.25;--leading-normal: 1.5;--leading-display: 1.05;--tracking-tight: -.02em;--weight-display: 700;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--radius-2xl: 28px;--radius-full: 9999px;--duration-fast: .12s;--duration-normal: .2s;--duration-slow: .48s;--ease-standard: cubic-bezier(.2, 0, 0, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--focus-ring-width: 2px;--focus-ring-offset: 2px;--color-focus-ring: var(--color-focus);--focus-ring-offset-color: var(--color-surface);--focus-ring-shadow: 0 0 0 var(--focus-ring-offset) var(--focus-ring-offset-color), 0 0 0 calc(var(--focus-ring-offset) + var(--focus-ring-width)) var(--color-focus-ring);--color-bg: #080b10;--color-surface: #0f1419;--color-surface-elevated: #151c26;--color-surface-raised: #1b2330;--color-border: #303a49;--color-border-subtle: #1d2634;--color-text: #f3f7fb;--color-text-secondary: #c7d0dc;--color-text-muted: #8d99aa;--color-accent: #74b8ff;--color-accent-hover: #9bcfff;--color-accent-text: #07111d;--color-success: #6ce9a6;--color-warning: #fdb022;--color-danger: #fda29b;--color-focus: #9bcfff;--color-link: #a7ccff;--glow-accent: color-mix(in srgb, var(--color-accent) 54%, transparent);--hero-scrim: color-mix(in srgb, var(--color-bg) 58%, transparent);--gradient-hero: radial-gradient( circle at 74% 16%, color-mix(in srgb, var(--color-accent) 24%, transparent) 0, transparent 34rem ), radial-gradient( circle at 18% 82%, color-mix(in srgb, var(--color-accent) 14%, transparent) 0, transparent 24rem ), linear-gradient(145deg, #080b10 0%, #0d1219 44%, #111923 100%);--grain-opacity: .055;--shadow-sm: 0 1px 2px rgb(0 0 0 / 38%);--shadow-md: 0 8px 24px rgb(0 0 0 / 44%);--shadow-lg: 0 18px 60px rgb(0 0 0 / 58%);--shadow-glow: 0 18px 64px color-mix(in srgb, var(--glow-accent) 70%, transparent)}:root[data-theme=light]{color-scheme:light;--color-bg: #f4f7fb;--color-surface: #ffffff;--color-surface-elevated: #f9fbfe;--color-surface-raised: #ffffff;--color-border: #cfd8e6;--color-border-subtle: #e4eaf2;--color-text: #172130;--color-text-secondary: #445066;--color-text-muted: #69758a;--color-accent: #2563eb;--color-accent-hover: #1d4ed8;--color-accent-text: #ffffff;--color-success: #067647;--color-warning: #b54708;--color-danger: #b42318;--color-focus: #2563eb;--color-link: #1d4ed8;--glow-accent: color-mix(in srgb, var(--color-accent) 26%, transparent);--hero-scrim: color-mix(in srgb, var(--color-bg) 74%, transparent);--gradient-hero: radial-gradient( circle at 74% 16%, color-mix(in srgb, var(--color-accent) 20%, transparent) 0, transparent 34rem ), linear-gradient(145deg, #f4f7fb 0%, #ecf2fb 52%, #e3ecf8 100%);--grain-opacity: .035;--shadow-sm: 0 1px 2px rgb(16 24 40 / 6%);--shadow-md: 0 8px 24px rgb(16 24 40 / 9%);--shadow-lg: 0 18px 48px rgb(16 24 40 / 13%);--shadow-glow: 0 14px 44px color-mix(in srgb, var(--glow-accent) 78%, transparent)}:root[data-theme=dark]{color-scheme:dark}@media(prefers-reduced-motion:reduce){:root{--duration-fast: 0ms;--duration-normal: 0ms}}*,*:before,*:after{box-sizing:border-box}html{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body{margin:0;min-height:100vh;background:var(--gradient-hero),var(--color-bg);color:var(--color-text)}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:var(--grain-opacity);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:180px 180px}.skip-link{position:absolute;left:var(--space-4);top:var(--space-4);z-index:1000;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-accent);color:var(--color-accent-text);font-weight:600;font-size:var(--text-sm);text-decoration:none;transform:translateY(calc(-100% - var(--space-4)));transition:transform var(--duration-fast) var(--ease-standard)}.skip-link:focus{transform:translateY(0);outline:var(--focus-ring-width) solid var(--color-focus-ring);outline-offset:var(--focus-ring-offset);box-shadow:var(--focus-ring-shadow)}#main:focus:not(:focus-visible){outline:none}img,svg{display:block;max-width:100%}a{color:var(--color-link);text-decoration-thickness:1px;text-underline-offset:2px}a:hover{text-decoration:underline}:where(a,button,input,textarea,select,summary,[role=button],[tabindex]:not([tabindex="-1"])):focus:not(:focus-visible){outline:none}:where(a,button,input,textarea,select,summary,[role=button],[tabindex]:not([tabindex="-1"])):focus-visible{outline:var(--focus-ring-width) solid var(--color-focus-ring);outline-offset:var(--focus-ring-offset);box-shadow:var(--focus-ring-shadow)}h1,h2,h3,h4{line-height:var(--leading-tight);margin:0 0 var(--space-4);font-weight:600}h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}p{margin:0 0 var(--space-4);color:var(--color-text-secondary)}.container{width:min(1080px,100% - var(--space-8));margin-inline:auto}.stack{display:flex;flex-direction:column;gap:var(--space-4)}.card{background:color-mix(in srgb,var(--color-surface) 86%,transparent);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:var(--shadow-md);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.card--disabled{opacity:.65}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:44px;padding:var(--space-2) var(--space-5);border-radius:var(--radius-md);border:1px solid transparent;font:inherit;font-weight:600;cursor:pointer;text-decoration:none;transition:background var(--duration-normal) var(--ease-standard),border-color var(--duration-normal) var(--ease-standard),color var(--duration-normal) var(--ease-standard),transform var(--duration-slow) var(--ease-out),box-shadow var(--duration-slow) var(--ease-out)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--color-accent);color:var(--color-accent-text);box-shadow:0 0 0 1px color-mix(in srgb,var(--color-accent) 20%,transparent),var(--shadow-glow)}.btn-primary:hover:not(:disabled){background:var(--color-accent-hover);transform:translateY(-1px)}.btn-secondary{background:color-mix(in srgb,var(--color-surface-elevated) 52%,transparent);border-color:var(--color-border);color:var(--color-text)}.btn-secondary:hover:not(:disabled){background:color-mix(in srgb,var(--color-surface-raised) 78%,transparent)}.btn-danger{background:color-mix(in srgb,var(--color-danger) 8%,transparent);border-color:var(--color-danger);color:var(--color-danger)}.btn-danger:hover:not(:disabled){background:color-mix(in srgb,var(--color-danger) 14%,transparent)}.field{display:flex;flex-direction:column;gap:var(--space-2)}.field label{font-size:var(--text-sm);font-weight:600;color:var(--color-text)}.field input,.field textarea,.field select{min-height:44px;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border);background:color-mix(in srgb,var(--color-bg) 62%,var(--color-surface-elevated));color:var(--color-text);font:inherit}.field input::placeholder,.field textarea::placeholder{color:var(--color-text-muted)}.field input:focus-visible,.field textarea:focus-visible,.field select:focus-visible,.field__toggle:focus-visible{outline:var(--focus-ring-width) solid var(--color-focus-ring);outline-offset:0;border-color:var(--color-focus-ring);box-shadow:0 0 0 calc(var(--focus-ring-offset) + var(--focus-ring-width)) color-mix(in srgb,var(--color-focus-ring) 45%,transparent)}.field__control{display:flex;gap:var(--space-2);align-items:stretch}.field__control input{flex:1;min-width:0}.field__toggle{flex-shrink:0;min-height:44px;padding:var(--space-2) var(--space-3);font-size:var(--text-sm)}.field__error{margin:0;font-size:var(--text-xs);color:var(--color-danger)}.field input[aria-invalid=true]{border-color:color-mix(in srgb,var(--color-danger) 55%,var(--color-border))}.alert{padding:var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border);background:color-mix(in srgb,var(--color-surface-elevated) 78%,transparent);color:var(--color-text-secondary);font-size:var(--text-sm)}.alert-error{border-color:color-mix(in srgb,var(--color-danger) 40%,var(--color-border));color:var(--color-danger)}.alert-success{border-color:color-mix(in srgb,var(--color-success) 40%,var(--color-border));color:var(--color-success)}.site-header{border-bottom:1px solid var(--color-border-subtle);background:color-mix(in srgb,var(--color-bg) 76%,transparent);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);min-height:64px}.brand{display:inline-flex;align-items:center;gap:var(--space-3);font-weight:700;font-size:var(--text-lg);color:var(--color-text);text-decoration:none}.brand__mark{width:.8rem;height:.8rem;border-radius:var(--radius-full);background:var(--color-accent);box-shadow:0 0 28px var(--glow-accent)}.brand__text{display:flex;flex-direction:column;gap:.05rem;line-height:1.1}.brand__name{letter-spacing:.01em}.brand__descriptor{font-size:var(--text-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.nav{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}.nav a{color:var(--color-text-secondary);text-decoration:none;font-size:var(--text-sm);font-weight:500;transition:color var(--duration-normal) var(--ease-standard)}.nav a:hover{color:var(--color-text)}.site-footer{margin-top:var(--space-16);padding:var(--space-10) 0;border-top:1px solid var(--color-border-subtle);color:var(--color-text-muted);font-size:var(--text-sm)}.site-footer__inner{display:grid;gap:var(--space-6)}.site-footer__brand,.site-footer__meta{display:flex;flex-direction:column;gap:var(--space-2)}.site-footer__brand p,.site-footer__meta p{margin:0}.site-footer__name{font-weight:700;color:var(--color-text)}.site-footer nav{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-bottom:var(--space-4)}.hero{padding:var(--space-12) 0 var(--space-8)}.hero__title{max-width:18ch}.hero__lede{font-size:var(--text-lg);max-width:52ch}.grid-2{display:grid;gap:var(--space-6)}@media(min-width:768px){.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skeleton{display:block;border-radius:var(--radius-md);background:linear-gradient(90deg,color-mix(in srgb,var(--color-border-subtle) 85%,transparent),color-mix(in srgb,var(--color-border) 55%,transparent),color-mix(in srgb,var(--color-border-subtle) 85%,transparent));background-size:200% 100%;animation:skeleton-shimmer var(--duration-slow) var(--ease-out) infinite}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.skeleton{animation:none}}.skeleton-text{height:1em;width:100%}.skeleton-text--title{height:1.75rem;width:min(14rem,70%)}.skeleton-text--subtitle{height:1em;width:min(12rem,55%)}.skeleton-text--line{height:.875rem;width:min(20rem,90%)}.skeleton-card{min-height:4.5rem;width:100%}.skeleton-btn{min-height:44px;width:7rem;border-radius:var(--radius-md)}.dashboard-empty{padding:var(--space-6);border-radius:var(--radius-md);border:1px dashed var(--color-border);background:color-mix(in srgb,var(--color-surface-elevated) 52%,transparent);text-align:center}.dashboard-empty p{margin:0;color:var(--color-text-secondary)}.device-row__confirm{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-2)}.device-row__confirm-text{flex:1 1 100%;margin:0;font-size:var(--text-sm);color:var(--color-text-secondary);text-align:right}.device-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.device-table caption{caption-side:top;padding:0 0 var(--space-3);text-align:left;font-size:var(--text-sm);color:var(--color-text-secondary)}.device-table th{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border-subtle);font-size:var(--text-xs);font-weight:600;letter-spacing:.02em;text-transform:uppercase;text-align:left;color:var(--color-text-muted)}.device-table td{padding:var(--space-3);border-bottom:1px solid var(--color-border-subtle);vertical-align:middle;color:var(--color-text-secondary)}.device-table tbody tr{transition:background var(--duration-normal) var(--ease-standard)}.device-table tbody tr:hover{background:color-mix(in srgb,var(--color-surface-elevated) 36%,transparent)}.device-table tbody tr:last-child td{border-bottom:0}.device-table__name{font-weight:600;color:var(--color-text)}.device-table__actions{text-align:right;white-space:nowrap}.dashboard-live{margin:0}.account-subheading{margin:0;font-size:var(--text-lg);font-weight:600;color:var(--color-text)}.account-password,.account-security{gap:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border-subtle)}.account-security p{margin:0;font-size:var(--text-sm)}@media(min-width:480px){.device-row__confirm-text{flex:1 1 auto;text-align:left}}.auth-layout,.dashboard-layout,.authorize-layout{position:relative}.auth-layout:before,.dashboard-layout:before,.authorize-layout:before{content:"";position:absolute;inset:var(--space-4) auto auto 50%;z-index:-1;width:min(42rem,92vw);height:min(42rem,92vw);border-radius:var(--radius-full);background:radial-gradient(circle,color-mix(in srgb,var(--color-accent) 18%,transparent),transparent 64%);transform:translate(-50%);filter:blur(16px)}.auth-shell{position:relative;overflow:hidden;padding:var(--space-8)}.auth-shell:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,transparent,var(--color-accent),transparent)}.auth-form{gap:var(--space-5)}.auth-form__eyebrow,.account-eyebrow{margin:0;font-size:var(--text-xs);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent)}.auth-form h1,.account-hero h1,.authorize-shell h1{margin-bottom:0;font-size:var(--text-4xl);line-height:var(--leading-display);letter-spacing:var(--tracking-tight);font-weight:var(--weight-display)}.auth-form__lede,.account-hero__lede,.authorize-lede{margin:0;color:var(--color-text-secondary)}.auth-form__notice{display:grid;gap:var(--space-2);margin:0;padding:var(--space-4);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-surface-elevated) 54%,transparent);color:var(--color-text-secondary);font-size:var(--text-sm)}.auth-form__notice strong{color:var(--color-text)}.auth-form__links{display:grid;gap:var(--space-2)}.auth-form__links p{margin:0}.account-hero{display:grid;gap:var(--space-5);padding:var(--space-8)}.account-hero__topline{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:center;justify-content:space-between}.account-hero__identity{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}.account-email{margin:0;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-subtle);border-radius:var(--radius-full);background:color-mix(in srgb,var(--color-surface-elevated) 58%,transparent);color:var(--color-text-secondary);font-size:var(--text-sm)}.account-panel{padding:var(--space-6)}.account-panel__header{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:flex-start;justify-content:space-between}.account-panel__header h2,.account-panel__header p{margin:0}.account-metrics{display:grid;gap:var(--space-4)}.account-metric{padding:var(--space-4);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--color-surface-elevated) 48%,transparent)}.account-metric__label{margin:0 0 var(--space-1);font-size:var(--text-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.account-metric__value{margin:0;font-size:var(--text-2xl);font-weight:700;color:var(--color-text)}.account-pill,.device-status{display:inline-flex;align-items:center;gap:var(--space-2);width:fit-content;padding:var(--space-1) var(--space-3);border:1px solid var(--color-border-subtle);border-radius:var(--radius-full);background:color-mix(in srgb,var(--color-surface-elevated) 54%,transparent);color:var(--color-text-secondary);font-size:var(--text-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase}.account-pill:before,.device-status:before{content:"";width:.45rem;height:.45rem;border-radius:var(--radius-full);background:var(--color-accent);box-shadow:0 0 18px var(--glow-accent)}.device-status--revoked:before{background:var(--color-text-muted);box-shadow:none}.account-note{margin:0;font-size:var(--text-sm)}@media(min-width:640px){.site-footer__inner,.account-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer__meta{align-items:flex-end;text-align:right}}@media(prefers-reduced-motion:reduce){.btn-primary:hover:not(:disabled){transform:none}}
