/* AutoHDR presentation component extraction — source commit 4bf80ae45e8d19ecc1762061b711ff6cdd6dd0ce.
   Source files + source URLs: site-source/provenance.json. Tailwind utilities
   below are mechanically extracted, namespaced, and aliased; component rules
   translate original utility classes into ordinary CSS. All measures are the
   source website's CSS px at design scale, not presentation px. Use a parent
   zoom:2 to render at 1920x1080. No production source is modified. */
@font-face {font-family:Geist;src:url('./site-source/assets/fonts/Geist-site-latin.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
@font-face {font-family:Geist;src:url('./site-source/assets/fonts/Geist-Italic.ttf') format('truetype');font-weight:400;font-style:italic;font-display:swap}
@font-face {font-family:Geist;src:url('./site-source/assets/fonts/Geist-BoldItalic.ttf') format('truetype');font-weight:700;font-style:italic;font-display:swap}
:root {
 --ah-black:#000;--ah-black-alt:#0a0a0a;--ah-white:#fff;--ah-teal:#1a2f33;--ah-blue:#96effe;--ah-mint:#30d4f1;--ah-grey-blue:#31464a;--ah-grey:#909090;--ah-red:#f13030;--ah-super-light-blue:#f1fbff;
 --ah-heading-gradient:linear-gradient(152deg,rgba(172,190,193,.5) 28.52%,#fff 54.84%);
 --ah-ease-pop:cubic-bezier(.16,1,.3,1);--ah-ease-back:cubic-bezier(.175,.885,.32,1.275);
   --glass-shadow-1:
      inset 8px -8px 10px -9px rgba(255, 255, 255, 0.08),
      inset -8px 8px 10px -6px rgba(0, 0, 0, 0.25);
   --glass-shadow-2:
      inset 8px 8px 10px -6px rgba(0, 0, 0, 0.25),
      inset -8px -8px 10px -6px rgba(255, 255, 255, 0.08);
   --glass-shadow-3:
      inset 8px 8px 10px -6px rgba(255, 255, 255, 0.25),
      inset -8px -8px 6px -6px rgba(0, 0, 0, 0.45);
   --glass-shadow-4:
      inset 8px 1px 10px -6px rgba(0, 0, 0, 0.25),
      inset -8px -1px 10px -9px rgba(255, 255, 255, 0.5);
   --glass-shadow-5:
      inset 5px 8px 5px -2px rgba(0, 0, 0, 0.5), inset -5px -8px 5px -2px rgba(255, 255, 255, 0.3);
   --glass-shadow-6:
      inset 8px -3px 10px -6px rgba(255, 255, 255, 0.12),
      inset -8px 3px 10px -5px rgba(0, 0, 0, 0.4);
   --glass-shadow-7:
      inset 6px 6px 6px -5px rgba(0, 0, 0, 0.35), inset -6px -6px 6px -5px rgba(255, 255, 255, 0.08);

}
@property --angle {syntax:"<angle>";inherits:true;initial-value:0deg}
@keyframes ah-angle-spin{from{--angle:0deg}to{--angle:360deg}}
.ah-ui {font-family:Geist,Arial,sans-serif;color:#fff;-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.5}
.ah-ui *, .ah-ui *::before, .ah-ui *::after {box-sizing:border-box}
.ah-ui :where(button,input,select,textarea){font:inherit;color:inherit}
.ah-ui :where(button){border:0;cursor:pointer}
.ah-ui :where(h1,h2,h3,h4,p,ul,ol){margin:0}
.ah-heading {font-family:Geist,Arial,sans-serif;font-size:60px;font-weight:500;line-height:1.06;letter-spacing:-.04em;background:var(--ah-heading-gradient);background-repeat:no-repeat;background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;padding-bottom:.12em}
.ah-body{font-size:18px;line-height:1.33333;font-weight:400;color:rgba(255,255,255,.72)}
.ah-muted{color:rgba(255,255,255,.5)} .ah-mint{color:var(--ah-mint)}
/* Whole-heading gradient: never restart the gradient on individual words or lines. */

.ah-grad-border, .ah-glass-button, .ah-glass-pill, .ah-tabs, .ah-tabs-inner, .ah-segments, .ah-segment.active, .ah-card, .ah-modal, .ah-selected-card, .ah-badge, .ah-icon-button, .ah-toggle, .ah-timeline, .ah-timeline-node, .ah-timeline-dot, .ah-upload {
   position: relative;
   isolation: isolate;
   &::before {
      content: "";
      position: absolute;
      inset: 0;
      z-index: 1;
      border-radius: inherit;
      padding: 1px;
      background: var(--gradient);
      -webkit-mask:
         linear-gradient(#fff 0 0) content-box,
         linear-gradient(#fff 0 0);
      mask:
         linear-gradient(#fff 0 0) content-box,
         linear-gradient(#fff 0 0);
      -webkit-mask-composite: xor;
      mask-composite: exclude;
      pointer-events: none;
      transition: opacity 0.3s;
   }
}

.ah-grad-white-1, .ah-glass-button.outline {
   --angle: 180deg;
   &::before {
      --gradient: linear-gradient(var(--angle), rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.2));
   }
}

.ah-grad-white-2 {
   --angle: 60deg;
   --stop: 25%;
   &::before {
      --gradient:
         linear-gradient(
            var(--angle),
            rgba(255, 255, 255, 1) 0%,
            rgba(255, 255, 255, 0) var(--stop),
            rgba(255, 255, 255, 0) calc(100% - var(--stop)),
            rgba(255, 255, 255, 1) 100%
         ),
         linear-gradient(rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 0.5));
   }
}

.ah-grad-white-3, .ah-glass-button.primary {
   --angle: 135deg;
   &::before {
      --gradient: linear-gradient(var(--angle), rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.04));
   }
}

.ah-grad-white-4 {
   --angle: 40deg;
   &::before {
      --gradient: linear-gradient(
         var(--angle),
         rgba(255, 255, 255, 1) 0%,
         rgba(255, 255, 255, 0.08) 50%,
         rgba(255, 255, 255, 1) 100%
      );
   }
}

.ah-grad-white-5, .ah-glass-button.grey-blue, .ah-timeline-dot {
   --angle: 45deg;
   --stop: 30%;
   &::before {
      --gradient: linear-gradient(
         var(--angle),
         rgba(255, 255, 255, 1) 0%,
         rgba(255, 255, 255, 0) var(--stop),
         rgba(255, 255, 255, 0) calc(100% - var(--stop)),
         rgba(255, 255, 255, 1) 100%
      );
   }
}

.ah-grad-white-6, .ah-modal, .ah-icon-button {
   --angle: 45deg;
   --stop: 30%;
   &::before {
      --gradient:
         linear-gradient(
            var(--angle),
            rgba(255, 255, 255, 1) 0%,
            rgba(255, 255, 255, 0) var(--stop),
            rgba(255, 255, 255, 0) calc(100% - var(--stop)),
            rgba(255, 255, 255, 1) 100%
         ),
         linear-gradient(rgba(255, 255, 255, 0.4), rgba(255, 255, 255, 0.4));
   }
}

.ah-grad-white-7 {
   --angle: 45deg;
   --stop: 15%;
   &::before {
      --gradient: linear-gradient(
         var(--angle),
         rgba(255, 255, 255, 1) 0%,
         rgba(255, 255, 255, 0) var(--stop),
         rgba(255, 255, 255, 0) calc(100% - var(--stop)),
         rgba(255, 255, 255, 1) 100%
      );
   }
}

.ah-grad-white-8 {
   --angle: 150deg;
   --stop: 20%;
   &::before {
      --gradient: linear-gradient(
         var(--angle),
         rgba(255, 255, 255, 1) 0%,
         rgba(255, 255, 255, 0) var(--stop)
      );
   }
}

.ah-grad-white-9, .ah-timeline {
   --angle: 65deg;
   --stop: 15%;
   &::before {
      --gradient: linear-gradient(
         var(--angle),
         rgba(255, 255, 255, 1) 0%,
         rgba(255, 255, 255, 1) calc(var(--stop) - 10%),
         rgba(0, 0, 0, 0.4) calc(var(--stop) + 10%),
         rgba(0, 0, 0, 0.4) calc(100% - var(--stop) - 10%),
         rgba(255, 255, 255, 1) calc(100% - var(--stop) + 10%),
         rgba(255, 255, 255, 1) 100%
      );
   }
}

.ah-grad-mint-1 {
   --angle: 55deg;
   --stop: 25%;
   &::before {
      --gradient: linear-gradient(
         var(--angle, 55deg),
         rgba(48, 212, 241, 0.8) 0%,
         rgba(255, 255, 255, 0) var(--stop),
         rgba(255, 255, 255, 0) calc(100% - var(--stop)),
         rgba(48, 212, 241, 1) 100%
      );
   }
}

.ah-grad-mint-2 {
   --angle: 90deg;
   &::before {
      --gradient: linear-gradient(
         var(--angle),
         rgba(48, 212, 241, 1) 0%,
         rgba(150, 239, 254, 1) 100%
      );
   }
}

.ah-grad-mint-3 {
   --angle: 230deg;
   --stop: 40%;
   &::before {
      --gradient:
         linear-gradient(
            var(--angle, 20deg),
            rgba(48, 212, 241, 1) 0%,
            rgba(48, 212, 241, 0) var(--stop)
         ),
         linear-gradient(rgba(48, 212, 241, 0.2), rgba(48, 212, 241, 0.2));
   }
}

.ah-grad-mint-4 {
   --angle: 45deg;
   --stop: 45%;
   &::before {
      --gradient:
         linear-gradient(
            var(--angle, 45deg),
            rgba(48, 212, 241, 1) 0%,
            rgba(48, 212, 241, 0) var(--stop),
            rgba(48, 212, 241, 0) calc(100% - var(--stop)),
            rgba(48, 212, 241, 1) 100%
         ),
         rgba(48, 212, 241, 0.16);
   }
}

.ah-grad-mint-5 {
   --angle: 20deg;
   --stop: 15%;
   &::before {
      --gradient:
         linear-gradient(
            var(--angle, 20deg),
            rgba(48, 212, 241, 0.5) 0%,
            rgba(48, 212, 241, 0) var(--stop),
            rgba(48, 212, 241, 0) calc(100% - var(--stop)),
            rgba(48, 212, 241, 1) 100%
         ),
         rgba(48, 212, 241, 0.12);
   }
}

.ah-grad-mint-6 {
   --angle: 45deg;
   --stop: 15%;

   &::before {
      --gradient:
         linear-gradient(
            var(--angle, 45deg),
            rgba(48, 212, 241, 1) 0%,
            rgba(48, 212, 241, 0) var(--stop),
            rgba(48, 212, 241, 0) calc(100% - var(--stop)),
            rgba(48, 212, 241, 1) 100%
         ),
         rgba(48, 212, 241, 0.16);
   }
}

.ah-grad-mint-7 {
   --angle: 90deg;
   &::before {
      --gradient: linear-gradient(
         var(--angle, 90deg),
         rgba(48, 212, 241, 1) 0%,
         rgba(48, 212, 241, 0.2) 100%
      );
   }
}

.ah-grad-glass-1, .ah-tabs-inner {
   --angle: 30deg;
   &::before {
      --gradient:
         linear-gradient(
            0,
            rgba(255, 255, 255, 0.45) 7%,
            rgba(255, 255, 255, 0) 15%,
            rgba(255, 255, 255, 0) 85%,
            rgba(255, 255, 255, 0.45) 93%
         ),
         linear-gradient(
            var(--angle),
            rgba(255, 255, 255, 1) 3%,
            rgba(255, 255, 255, 0) 7%,
            rgba(255, 255, 255, 0) 93%,
            rgba(255, 255, 255, 1) 97%
         );
   }
}

.ah-grad-glass-2, .ah-glass-pill, .ah-timeline-node, .ah-selected-card {
   --angle: 30deg;
   &::before {
      --gradient:
         linear-gradient(
            0deg,
            rgba(255, 255, 255, 0.5) 3%,
            rgba(255, 255, 255, 0) 10%,
            rgba(255, 255, 255, 0) 90%,
            rgba(255, 255, 255, 0.5) 97%
         ),
         linear-gradient(
            var(--angle),
            rgba(255, 255, 255, 1) 7%,
            rgba(255, 255, 255, 0) 15%,
            rgba(255, 255, 255, 0) 85%,
            rgba(255, 255, 255, 1) 93%
         );
   }
}

.ah-grad-glass-3, .ah-segments.mint .ah-segment.active {
   --angle: 40deg;
   &::before {
      --gradient:
         linear-gradient(
            calc(var(--angle) + 20deg),
            rgba(48, 212, 241, 0) 88%,
            rgba(48, 212, 241, 0.7) 94%
         ),
         linear-gradient(
            calc(var(--angle) + 50deg),
            rgba(48, 212, 241, 0) 88%,
            rgba(48, 212, 241, 0.12) 92%
         ),
         linear-gradient(
            0deg,
            rgba(255, 255, 255, 0.15) 0%,
            rgba(255, 255, 255, 0.15) 2%,
            rgba(255, 255, 255, 0) 4%,
            rgba(255, 255, 255, 0) 96%,
            rgba(255, 255, 255, 0.15) 98%,
            rgba(255, 255, 255, 0.15) 100%
         ),
         linear-gradient(
            var(--angle),
            rgba(255, 255, 255, 0.5) 5%,
            rgba(255, 255, 255, 0) 20%,
            rgba(255, 255, 255, 0) 80%,
            rgba(255, 255, 255, 0.5) 95%
         );
   }
}

.ah-grad-glass-4, .ah-segment.active, .ah-toggle, .ah-card {
   --angle: 55deg;
   &::before {
      --gradient:
         linear-gradient(
            0deg,
            rgba(255, 255, 255, 0.25) 0%,
            rgba(255, 255, 255, 0.25) 3%,
            rgba(255, 255, 255, 0) 4%,
            rgba(255, 255, 255, 0) 96%,
            rgba(255, 255, 255, 0.25) 97%,
            rgba(255, 255, 255, 0.25) 100%
         ),
         linear-gradient(
            var(--angle),
            rgba(255, 255, 255, 1) 5%,
            rgba(255, 255, 255, 0) 20%,
            rgba(255, 255, 255, 0) 80%,
            rgba(255, 255, 255, 1) 95%
         );
   }
}

.ah-grad-glass-5, .ah-segments {
   --angle: 50deg;
   &::before {
      --gradient:
         linear-gradient(
            0,
            rgba(255, 255, 255, 0.2) 0%,
            rgba(255, 255, 255, 0.2) 1%,
            rgba(255, 255, 255, 0) 3%,
            rgba(255, 255, 255, 0) 97%,
            rgba(255, 255, 255, 0.2) 99%,
            rgba(255, 255, 255, 0.2) 100%
         ),
         linear-gradient(
            var(--angle),
            rgba(255, 255, 255, 1) 0%,
            rgba(255, 255, 255, 0) 10%,
            rgba(255, 255, 255, 0) 90%,
            rgba(255, 255, 255, 1) 100%
         );
   }
}

.ah-grad-glass-7, .ah-glass-button.secondary, .ah-badge {
   --angle: 30deg;
   &::before {
      --gradient:
         linear-gradient(
            0deg,
            rgba(255, 255, 255, 0.5) 7%,
            rgba(255, 255, 255, 0) 15%,
            rgba(255, 255, 255, 0) 85%,
            rgba(255, 255, 255, 0.5) 93%
         ),
         linear-gradient(
            var(--angle),
            rgba(255, 255, 255, 1) 13%,
            rgba(255, 255, 255, 0) 17%,
            rgba(255, 255, 255, 0) 83%,
            rgba(255, 255, 255, 1) 87%
         );
   }
}

/* Button.tsx — primary=dark, secondary=glass, other source variant names retained. */
.ah-glass-button {display:inline-flex;align-items:center;justify-content:center;gap:12px;white-space:nowrap;transition:opacity 150ms ease,outline 150ms ease,color 150ms ease,border 150ms ease,background 150ms ease,transform 150ms ease;border-radius:32px;font-weight:500;height:52px;padding:8px 24px;font-size:18px;line-height:24px;color:white;border:0}
.ah-glass-button:active{transform:scale(.97)}
.ah-glass-button.primary{background:linear-gradient(150deg,rgba(255,255,255,.2),rgba(0,0,0,0) 70%),black;filter:drop-shadow(-1px 0 2px rgba(255,255,255,.3))}
.ah-glass-button.primary::before{--angle:160deg;padding:2px;opacity:1}
.ah-glass-button.secondary{--angle:-50deg;background:linear-gradient(rgba(255,255,255,.04),rgba(255,255,255,.04)),linear-gradient(-7deg,rgba(255,255,255,.06) 5%,rgba(0,0,0,.04));box-shadow:var(--glass-shadow-2)}
.ah-glass-button.secondary::before{opacity:.35}
.ah-glass-button.secondary:hover{background-color:rgba(255,255,255,.06)}
.ah-glass-button.outline{background:rgba(255,255,255,.04)}
.ah-glass-button.outline::before{padding:2px;opacity:.2}
.ah-glass-button.outline:hover{background:rgba(255,255,255,.12)}
.ah-glass-button.white{background:#fff;color:#000}
.ah-glass-button.white:hover{color:var(--ah-mint)}
.ah-glass-button.grey-blue{background:rgba(49,70,74,.24)}
.ah-glass-button.grey-blue::before{opacity:.2}
.ah-glass-button.grey-blue::after{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background:rgba(255,255,255,.06)}
.ah-glass-button.big{height:56px}.ah-glass-button.md{height:48px;font-size:16px;line-height:20px}.ah-glass-button.sm{height:44px;font-size:14px;line-height:20px;letter-spacing:-.02em}.ah-glass-button.xs{height:36px;font-size:14px;line-height:20px;letter-spacing:-.02em}
.ah-glass-button:disabled,.ah-glass-button.disabled{opacity:.5;pointer-events:none}
.ah-glass-button.white:disabled{opacity:.32}
.ah-glass-button .ah-button-divider{height:24px;width:1px;background:linear-gradient(transparent,rgba(255,255,255,.2),transparent)}
.ah-glass-button .ah-button-detail{color:rgba(255,255,255,.5);font-weight:400}

/* GlassPill.tsx + GlassBadge. The blur acts on actual artwork behind the tag. */
.ah-glass-pill{display:inline-flex;align-items:center;justify-content:center;height:32px;min-width:80px;padding:0 16px;border-radius:20px;font-size:14px;line-height:20px;font-weight:500;letter-spacing:-.02em;color:#fff;background:rgba(255,255,255,.04);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:inset 4px 4px 8px -2px rgba(0,0,0,.1),inset -4px -4px 8px -3px rgba(255,255,255,.15);outline:1px solid rgba(255,255,255,.08);outline-offset:0;--angle:50deg}
.ah-glass-pill::before{opacity:.5}
.ah-glass-pill.blue{background:rgba(48,212,241,.2);outline-color:rgba(48,212,241,.4);box-shadow:inset 4px 4px 8px -2px rgba(0,0,0,.1),inset -4px -4px 8px -3px rgba(48,212,241,.25)}
.ah-glass-pill.dark{height:40px;padding:0 18px;border-radius:40px;font-size:16px;background:rgba(0,0,0,.24);box-shadow:var(--glass-shadow-5);backdrop-filter:blur(6px);outline:0;--angle:30deg}
.ah-badge{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:6.4px 12.8px;border-radius:999px;white-space:nowrap;font-size:11.2px;font-weight:400;line-height:1.42;letter-spacing:-.224px;color:#fff;box-shadow:var(--glass-shadow-3);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.ah-badge::before{opacity:.4}
.ah-badge.micro{padding:1px 6px;font-size:10px;line-height:12px;letter-spacing:.1em;background:rgba(255,255,255,.04)}
.ah-badge.micro.mint{color:var(--ah-mint);outline:1px solid rgba(48,212,241,.4)}
.ah-icon-button{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;background:rgba(48,212,241,.04);backdrop-filter:blur(10px)}
.ah-icon-button::before{opacity:.4}.ah-icon-button svg{width:25.6px;height:25.6px}.ah-icon-button.sm{width:32px;height:32px;border-radius:8px}.ah-icon-button.sm svg{width:17.06px;height:17.06px}

/* Tabs.tsx. Recommended DOM adds .ah-tabs-inner; direct children are supported. */
.ah-tabs{display:inline-flex;max-width:100%;padding:4px;border-radius:32px;background:rgba(255,255,255,.04) url('./site-source/repo/public/images/glass/tabs.png') center/cover;overflow:hidden}
.ah-tabs::before{display:none}
.ah-tabs-inner{display:flex;align-items:center;height:44px;padding:0 8px;border-radius:32px;background:rgba(255,255,255,.04);box-shadow:var(--glass-shadow-1);overflow:hidden}
.ah-tabs-inner::before{opacity:.4}
.ah-tab{position:relative;flex:1;display:flex;align-items:center;justify-content:center;height:44px;padding:12px 16px;font-size:16px;line-height:20px;font-weight:400;white-space:nowrap;background:transparent;color:rgba(255,255,255,.6)}
.ah-tab:hover{color:rgba(255,255,255,.8)}.ah-tab.active{color:#fff}
.ah-tab.active::after{content:"";position:absolute;bottom:0;left:50%;height:2px;width:50%;transform:translateX(-50%);background:var(--ah-mint);box-shadow:0 0 6px 1px var(--ah-mint)}
.ah-tab-divider{width:1px;height:16px;flex:none;background:rgba(255,255,255,.1)}
/* GlassTabs.tsx. Monthly in PricingScreen uses .mint.monthly. */
.ah-segments{display:inline-flex;flex-shrink:0;padding:2px;border-radius:999px;overflow:hidden;background:rgba(255,255,255,.06);user-select:none}
.ah-segments::before{opacity:.6}
.ah-segment{position:relative;z-index:1;flex:1;padding:6px 8px;min-height:32px;border-radius:40px;font-size:14px;line-height:20px;letter-spacing:-.02em;white-space:nowrap;color:rgba(255,255,255,.5);background:transparent;transition:color 300ms,background 300ms}
.ah-segment:hover{color:rgba(255,255,255,.72)}
.ah-segment.active{color:#fff;background:rgba(255,255,255,.1);box-shadow:var(--glass-shadow-6)}
.ah-segment.active::before{opacity:.5}
.ah-segments.mint .ah-segment.active{background:rgba(48,212,241,.08)}
.ah-segments.mint .ah-segment.active::before{opacity:1}
.ah-segments.monthly{padding:4px}.ah-segments.monthly .ah-segment{padding-left:12px;padding-right:12px}
.ah-segments.grey-blue{background:transparent}.ah-segments.grey-blue .ah-segment.active{background:rgba(49,70,74,.24)}
.ah-segments.grey-blue .ah-segment.active::after{content:"";pointer-events:none;position:absolute;bottom:0;left:-8px;width:48px;height:16px;border-radius:999px;background:#f1fbff;mix-blend-mode:overlay;filter:blur(24px)}

/* Glass cards / native modal primitive. Actual native-modal panel has no blur;
   backdrop blur is 12px. .window is ModalContainer's distinct 16px treatment. */
.ah-card{position:relative;border-radius:16px;background:rgba(49,70,74,.24);backdrop-filter:blur(30px);padding:16px;box-shadow:var(--glass-shadow-6)}
.ah-card::before{opacity:.3}
.ah-modal{position:relative;border-radius:32px;background:rgba(48,212,241,.02);padding:16px;overflow:hidden}
.ah-modal::before{opacity:.2}
.ah-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.2);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.ah-modal.window{background:rgba(255,255,255,.02);backdrop-filter:blur(16px)}
.ah-modal.window::before{opacity:1;--gradient:linear-gradient(200deg,rgba(255,255,255,.2),transparent)}
.ah-selected-card{border-radius:16px;background:rgba(48,212,241,.05);box-shadow:var(--glass-shadow-2);outline:2px solid var(--ah-mint);outline-offset:-2px;filter:drop-shadow(0 2px 10px rgba(48,212,241,.18))}
.ah-selected-card::before{opacity:.3}
.ah-upload{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:16px;padding:50px 16px;background:rgba(255,255,255,.06);transition:background 150ms}
.ah-upload::before{--gradient:linear-gradient(135deg,transparent 20%,#30d4f1,transparent 80%)}
.ah-upload:hover{background:rgba(255,255,255,.12)}

/* Switch.tsx (spring motion implemented by the consuming application). */
.ah-toggle{display:inline-flex;align-items:center;width:40px;height:20px;border-radius:32px;background:rgba(255,255,255,.04);box-shadow:var(--glass-shadow-6);backdrop-filter:blur(10px);transition:filter 300ms,opacity 300ms}
.ah-toggle::before{opacity:.4}
.ah-toggle-thumb{width:16px;height:16px;border-radius:999px;background:#fff;transform:translateX(2px);transition:transform 300ms var(--ah-ease-back),background 300ms;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1)}
.ah-toggle[aria-checked=true]{filter:drop-shadow(0 1px 1px rgba(48,212,241,.8)) drop-shadow(1px 2px 2px rgba(48,212,241,.09)) drop-shadow(2px 5px 3px rgba(48,212,241,.05)) drop-shadow(3px 9px 4px rgba(48,212,241,.01))}
.ah-toggle[aria-checked=true] .ah-toggle-thumb{transform:translateX(22px);background:var(--ah-mint)}
.ah-toggle[aria-disabled=true]{opacity:.5;pointer-events:none}
.ah-range{--value:50%;position:relative;height:2px;background:linear-gradient(90deg,#082429 0%,#30d4f1 calc(var(--value)*.5),#c2f6ff var(--value),rgba(255,255,255,.12) var(--value));margin:6px 0}
.ah-range::after{content:"";position:absolute;top:50%;left:var(--value);width:12px;height:12px;border-radius:50%;background:#fff;transform:translate(-50%,-50%)}
.ah-field-label{display:flex;justify-content:space-between;font-size:14px;line-height:20px;font-weight:500;margin-bottom:12px}.ah-field-value{font-size:12px;line-height:16px;color:#909090;font-weight:400}

/* ProgressBar.tsx / ProgressLine.module.scss, including duplicate blurred fill. */
.ah-progress{--progress:50%;position:relative;height:6px;border-radius:4px;background:rgba(255,255,255,.12)}
.ah-progress::before,.ah-progress::after{content:"";position:absolute;top:0;left:0;width:var(--progress);height:100%;border-radius:4px;background:linear-gradient(90deg,#30d4f1,#96effe)}
.ah-progress::after{filter:blur(10px)}
.ah-progress-sweep{position:absolute;inset:0;pointer-events:none}
.ah-progress-sweep::after{content:"";position:absolute;top:50%;width:34%;height:10px;min-height:6px;transform:translateY(-50%);border-radius:999px;background:radial-gradient(closest-side,rgba(48,212,241,.5),rgba(48,212,241,0) 80%);filter:blur(4px);animation:ah-progress-sweep 3.9s linear infinite}
@keyframes ah-progress-sweep{0%{left:0%;opacity:0}20%,80%{opacity:1}100%{left:70%;opacity:0}}
.ah-shimmer{position:absolute;inset:-20% auto -20% 0;width:55%;background:linear-gradient(100deg,transparent,rgba(150,239,254,.16) 40%,rgba(255,255,255,.42) 50%,rgba(150,239,254,.16) 60%,transparent);animation:ah-shimmer 1.15s ease-in-out infinite}
@keyframes ah-shimmer{0%{transform:translateX(-160%) skewX(-12deg)}100%{transform:translateX(230%) skewX(-12deg)}}
/* TraceBorder.module.scss: two opposing highlight corners, NOT a conic comet. */
.ah-trace{position:absolute;inset:0;z-index:2;border-radius:inherit;overflow:visible;pointer-events:none;opacity:0;transition:opacity .3s;filter:drop-shadow(0 0 6px rgba(48,212,241,.9)) drop-shadow(0 0 16px rgba(48,212,241,.55))}
.ah-trace.active{opacity:1}.ah-trace-ring{position:absolute;inset:0;border-radius:inherit;padding:1.5px;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;background:linear-gradient(var(--angle,0deg),#30d4f1 0%,rgba(48,212,241,0) 25%,rgba(48,212,241,0) 75%,#30d4f1 100%);animation:ah-angle-spin 8s linear infinite}
.ah-trace.once{animation:ah-trace-once .65s ease-out forwards}.ah-trace.hold{animation:ah-trace-hold .3s ease-out forwards}.ah-trace.once .ah-trace-ring,.ah-trace.hold .ah-trace-ring{animation:none;background:rgba(48,212,241,.95)}
@keyframes ah-trace-once{0%{opacity:0}15%,40%{opacity:.6}100%{opacity:0}}@keyframes ah-trace-hold{from{opacity:0}to{opacity:1}}

/* RootLayout + StarRising: exact two radial lanes. Canvas is initialized by
   initAutoHDRBackground() in site-components.js; this is not a texture image. */
.ah-background{position:absolute;inset:0;overflow:hidden;pointer-events:none;background:#000;isolation:isolate}
.ah-background::before,.ah-background::after{content:"";position:absolute;left:50%;width:500px;max-width:100%;height:100%;transform:translateX(-50%);z-index:0}
.ah-background::before{top:0;background:radial-gradient(at 50% 0%,rgba(26,47,51,.9),transparent 60%)}
.ah-background::after{bottom:0;background:radial-gradient(at 50% 90%,rgba(26,47,51,.9),transparent 60%)}
.ah-background canvas{position:absolute;inset:0 auto 0 50%;transform:translateX(-50%);width:600px;max-width:100%;height:100%;z-index:1}

/* HistorySidebar/HistoryItem.tsx. Each node supplies --step: index/(count-1). */
.ah-timeline{display:flex;flex-direction:column;gap:8px;border-radius:12px;background:rgba(255,255,255,.04);padding:10px}
.ah-timeline::before{opacity:.2}
.ah-timeline-node{--step:1;position:relative;display:flex;align-items:center;gap:12px;padding:6px 16px 6px 6px;border-radius:16px;background:rgba(48,212,241,calc(var(--step)/20));box-shadow:var(--glass-shadow-2);filter:drop-shadow(0 2px 10px rgba(48,212,241,.18));outline:2px solid transparent;outline-offset:-2px;transition:outline-color 300ms}
.ah-timeline-node::before{opacity:.3;backdrop-filter:blur(40px)}
.ah-timeline-node.first{--step:0;background:rgba(255,255,255,.02)}
.ah-timeline-node.selected{outline-color:rgba(48,212,241,.6)}.ah-timeline-node.open{outline-color:#30d4f1}.ah-timeline-node.dimmed{opacity:.3;pointer-events:none}
.ah-timeline-spine{position:absolute;top:-4px;bottom:-4px;left:-9px;width:1px;transform:translateX(-50%);z-index:-30;background:linear-gradient(180deg,#30d4f1,#99f0ff);opacity:.8}
.ah-timeline-node.first .ah-timeline-spine{top:50%}.ah-timeline-node.last .ah-timeline-spine{bottom:50%}
.ah-timeline-spine::before{content:"";position:absolute;inset:-.5px;z-index:-40;background:linear-gradient(180deg,#3a48e0 -5%,#99daff);filter:blur(10px)}
.ah-timeline-dot{position:absolute;left:-14px;top:50%;transform:translateY(-50%);z-index:10;width:10px;height:10px;border-radius:50%;background:rgba(48,212,241,var(--step));box-shadow:var(--glass-shadow-2);backdrop-filter:blur(40px);filter:drop-shadow(0 0 6px rgba(255,255,255,.4))}
.ah-timeline-node.first .ah-timeline-dot{background:rgba(255,255,255,.08);filter:none}.ah-timeline-node.last .ah-timeline-dot::before{opacity:0}
.ah-timeline-glow{pointer-events:none;position:absolute;inset:0;z-index:0;overflow:hidden;border-radius:inherit}
.ah-timeline-glow::after{content:"";position:absolute;bottom:-8px;left:-8px;width:48px;height:16px;border-radius:999px;background:#f1fbff;mix-blend-mode:overlay;filter:blur(16px);opacity:var(--step)}
.ah-timeline-underlight{position:absolute;bottom:4px;left:50%;transform:translateX(-50%);z-index:-20;height:4px;width:90%;background:#30d4f1;filter:blur(12px);opacity:var(--step)}
.ah-timeline-node img{position:relative;z-index:1;width:96px;height:64px;object-fit:cover;object-position:center;border-radius:12px;flex:none}
.ah-timeline-content{position:relative;z-index:1;display:flex;flex:1;flex-direction:column;gap:2px;overflow:hidden}
.ah-timeline-title{font-size:14px;line-height:20px;font-weight:500;letter-spacing:-.02em;color:#fff}.ah-timeline-node.first .ah-timeline-title{color:rgba(255,255,255,.8)}
.ah-timeline-description{font-size:12px;line-height:20px;letter-spacing:-.02em;color:rgba(255,255,255,.5)}

/* Landing Workflow: exact marker, title, label, and connector art. The four
   100vw pinned stages become a reusable .ah-workflow arrangement in slides. */
.ah-workflow{position:relative;isolation:isolate;background:#000}
.ah-workflow-step{position:relative;display:flex;align-items:flex-end;gap:26px;z-index:2}
.ah-workflow-step.reversal{align-items:flex-start}.ah-workflow-step.reversal .ah-workflow-marker{flex-direction:column-reverse}
.ah-workflow-marker{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;flex:none}
.ah-workflow-marker::before{content:"";width:11px;height:11px;border-radius:50%;background:#fff;box-shadow:0 0 11px rgba(255,255,255,.5)}
.ah-workflow-marker::after{content:"";height:18px;width:2px;background:#30d4f1}
.ah-workflow-marker i{display:block;width:1px;height:9px;background:#30d4f1;opacity:.5}
.ah-workflow-content{display:flex;flex-direction:column;gap:20px;max-width:290px;width:fit-content}
.ah-workflow-label{position:relative;display:inline-flex;align-self:flex-start;padding:6.4px 12.8px;border-radius:76.8px;background:rgba(255,255,255,.04);color:rgba(255,255,255,.5);font-size:11.2px;font-weight:400;line-height:1.42857;letter-spacing:-.224px}
.ah-workflow-label::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:radial-gradient(ellipse 55% 70% at 0 100%,rgba(255,255,255,.3),transparent 100%),radial-gradient(ellipse 55% 70% at 100% 0,rgba(255,255,255,.3),transparent 100%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;scale:-1 1}
.ah-workflow-text{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.ah-workflow-title{font-size:24px;font-weight:500;line-height:1.2;letter-spacing:-.24px;color:#fff}
.ah-workflow-description{font-size:18px;font-weight:400;line-height:1.33333;letter-spacing:-.18px;color:rgba(255,255,255,.72)}
.ah-workflow-lines{position:absolute;inset:auto 0 0;width:100%;height:490px;pointer-events:none;z-index:0;opacity:.95}
.ah-workflow-lines svg{width:100%;height:100%;display:block;overflow:hidden}.ah-workflow-lines path{shape-rendering:geometricPrecision}
@media(prefers-reduced-motion:reduce){.ah-trace-ring,.ah-trace.once,.ah-progress-sweep::after,.ah-shimmer{animation:none}.ah-trace.once,.ah-progress-sweep::after{opacity:0}}

/* Select.tsx — glass field and selected option recipes. */
.ah-select{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:space-between;gap:8px;height:40px;padding:8px 16px;border-radius:12px;background:rgba(255,255,255,.04);box-shadow:var(--glass-shadow-1);font-size:14px;line-height:20px;color:#fff}
.ah-select::before{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit;padding:1px;background:linear-gradient(0deg,rgba(255,255,255,.45) 7%,transparent 15%,transparent 85%,rgba(255,255,255,.45) 93%),linear-gradient(65deg,#fff 3%,transparent 7%,transparent 93%,#fff 97%);opacity:.5;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.ah-select.studio{height:auto;min-height:45px;gap:4px;padding:5px 12px;box-shadow:none}.ah-select.studio::before{opacity:0}.ah-select.studio.open{background:rgba(255,255,255,.16)}.ah-select.studio.open::before{opacity:.4}
.ah-select-label{display:block;font-size:12px;line-height:16px;color:rgba(255,255,255,.4)}
.ah-dropdown{display:flex;flex-direction:column;padding:8px;border-radius:12px;background:rgba(0,0,0,.04);backdrop-filter:blur(10px);box-shadow:0 2px 2px rgba(10,10,10,.5)}
.ah-option{padding:8px;border-radius:12px;font-size:14px;line-height:20px;color:rgba(255,255,255,.6);background:transparent}.ah-option.active{background:rgba(255,255,255,.12);color:#fff;box-shadow:var(--glass-shadow-6)}
/* SectionTextWrap aligns its flex children to start, so the original heading
   box hugs its text. Preserve that box width, or a short title remains gray. */
.ah-heading{width:fit-content;max-width:100%}
