:root {
  --short-bg: #0b0b0c;
  --short-panel: #151516;
  --short-panel-2: #1d1d1f;
  --short-elevated: #242426;
  --short-line: rgba(255,255,255,.1);
  --short-line-strong: rgba(255,255,255,.17);
  --short-text: #f6f3ed;
  --short-muted: #a7a39c;
  --short-gold: #edc36e;
  --short-gold-strong: #f4d188;
  --short-danger: #ff7e78;
  --short-success: #8dd478;
  --short-radius: 18px;
  --short-shadow: 0 24px 70px rgba(0,0,0,.34);
  color-scheme: dark;
}

html { background: var(--short-bg); }
body { background: var(--short-bg); color: var(--short-text); }
body, button, input, textarea, select { font-family: Manrope, Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
a { color: inherit; }
button, a, input, textarea, select { -webkit-tap-highlight-color: transparent; }
button, .button { min-height: 44px; }
input, textarea, select {
  background: #202022;
  color: var(--short-text);
  border: 1px solid var(--short-line-strong);
  border-radius: 12px;
}
input:focus, textarea:focus, select:focus {
  border-color: var(--short-gold);
  outline: 3px solid rgba(237,195,110,.14);
}

/* Public landing */
.landing { min-height: 100svh !important; background: radial-gradient(circle at 82% 18%,#29251e 0,transparent 33%),var(--short-bg) !important; }
.land-nav { height: 68px !important; background: rgba(11,11,12,.82); border-color: var(--short-line) !important; backdrop-filter: blur(18px); }
.land-nav strong { letter-spacing: .18em; }
.land-nav a { border-color: var(--short-line-strong) !important; border-radius: 12px !important; }
.land-nav .primary { background: var(--short-gold) !important; color: #17130d !important; border-color: var(--short-gold) !important; }
.land-hero { min-height: calc(100svh - 68px) !important; max-width: 1440px; margin: 0 auto; }
.land-copy h1 { letter-spacing: -.055em; }
.land-copy span { color: var(--short-gold) !important; }
.land-copy p { color: var(--short-muted) !important; }
.land-actions .primary { background: var(--short-gold) !important; color: #17130d !important; }
.director-demo { border: 1px solid var(--short-line); box-shadow: 0 35px 100px rgba(0,0,0,.55) !important; }

/* Authentication and account lifecycle */
.auth-page {
  min-height: 100svh;
  display: grid;
  place-items: center;
  padding: max(24px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));
  background: radial-gradient(circle at 50% 0,#28241d 0,transparent 34%),var(--short-bg) !important;
}
.auth-card {
  width: min(100%,460px) !important;
  margin: 0 !important;
  padding: 28px !important;
  border: 1px solid var(--short-line) !important;
  border-radius: 24px !important;
  background: rgba(24,24,25,.96) !important;
  box-shadow: var(--short-shadow) !important;
  color: var(--short-text) !important;
}
.auth-card .brand-mark { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 13px; background: var(--short-gold); color: #17130d; font-weight: 900; }
.auth-card .eyebrow { color: var(--short-gold) !important; letter-spacing: .14em; }
.auth-card h1 { color: var(--short-text) !important; font-size: clamp(30px,7vw,42px) !important; letter-spacing: -.04em; }
.auth-card .muted, .auth-card small { color: var(--short-muted) !important; }
.auth-card .stack { display: grid; gap: 16px; }
.auth-card label { display: grid; gap: 7px; color: #d8d4cd !important; font-size: 13px !important; }
.auth-card input { width: 100% !important; min-height: 48px; padding: 11px 13px; box-sizing: border-box; }
.auth-card .button.primary { display: inline-flex; justify-content: center; align-items: center; border: 0; border-radius: 13px; background: var(--short-gold) !important; color: #17130d !important; font-weight: 850; }
.auth-card .back-link { color: var(--short-muted) !important; }
.auth-card .auth-switch a, .account-secondary-link { color: var(--short-gold) !important; }
.auth-card .notice, .account-success { border-radius: 13px !important; background: var(--short-panel-2) !important; border: 1px solid var(--short-line) !important; color: var(--short-text) !important; }

/* Shared creator workspace */
.s2-shell { min-height: 100svh; background: var(--short-bg) !important; color: var(--short-text); }
.s2-sidebar { background: #101011 !important; border-color: var(--short-line) !important; }
.s2-brand { color: var(--short-text) !important; }
.s2-mark { background: var(--short-gold) !important; color: #17130d !important; border-radius: 11px !important; }
.s2-brand small, .s2-account, .s2-top p, .s2-section-head p { color: var(--short-muted) !important; }
.s2-create, .s2-btn:not(.secondary) { background: var(--short-gold) !important; color: #17130d !important; border-color: var(--short-gold) !important; }
.s2-nav a, .s2-nav button { color: var(--short-muted) !important; border-radius: 12px !important; }
.s2-nav a:hover, .s2-nav button:hover, .s2-nav .active { background: var(--short-panel-2) !important; color: var(--short-text) !important; }
.s2-main { background: radial-gradient(circle at 72% 0,#1f1d19 0,transparent 30%),var(--short-bg) !important; }
.s2-card, .create-shape, .create-card { background: var(--short-panel) !important; border: 1px solid var(--short-line) !important; border-radius: var(--short-radius) !important; color: var(--short-text) !important; box-shadow: none !important; }
.s2-hero { overflow: hidden; background: linear-gradient(125deg,#1d1b18,#171719 68%) !important; }
.s2-pill, .create-head .s2-pill { color: var(--short-gold) !important; }
.s2-search, .ps-search { background: var(--short-panel) !important; border: 1px solid var(--short-line) !important; }
.s2-filter, .ps-media-tabs { background: var(--short-panel) !important; border: 1px solid var(--short-line) !important; }
.s2-filter button.active, .ps-media-tabs button.is-active { background: var(--short-elevated) !important; color: var(--short-gold) !important; }
.s2-project-grid > *, .s2-empty { background: var(--short-panel) !important; border-color: var(--short-line) !important; color: var(--short-text) !important; }

/* Create flow */
.create-wrap { width: min(100%,980px) !important; margin-inline: auto; }
.create-card { padding: clamp(18px,3vw,34px) !important; }
.create-head h1 { letter-spacing: -.04em; color: var(--short-text) !important; }
.create-head p, .status-line, .create-mode-card small, .visual-mode-card small { color: var(--short-muted) !important; }
.create-mode-card, .visual-mode-card, .director-options button {
  background: var(--short-panel-2) !important;
  border: 1px solid var(--short-line) !important;
  color: var(--short-text) !important;
  border-radius: 14px !important;
}
.create-mode-card.selected, .visual-mode-card.selected, .director-options button.selected {
  border-color: var(--short-gold) !important;
  background: linear-gradient(145deg,rgba(237,195,110,.16),var(--short-panel-2)) !important;
}
.create-more-options { border-color: var(--short-line) !important; }

/* First-short chooser */
.first-short-page { min-height: 100svh; background: var(--short-bg) !important; color: var(--short-text) !important; }
.first-short-nav { background: rgba(11,11,12,.86) !important; border-color: var(--short-line) !important; backdrop-filter: blur(18px); }
.first-short-main { width: min(100%,1000px); }
.first-short-eyebrow { color: var(--short-gold) !important; }
.first-short-intro h1 { color: var(--short-text) !important; letter-spacing: -.045em; }
.first-short-intro p, .choice-copy small, .first-short-note { color: var(--short-muted) !important; }
.first-short-choice { background: var(--short-panel) !important; border: 1px solid var(--short-line) !important; color: var(--short-text) !important; border-radius: 18px !important; box-shadow: none !important; }
.first-short-choice:hover { border-color: var(--short-gold) !important; transform: translateY(-2px); }
.choice-icon { color: var(--short-gold) !important; }

/* Media library */
.ps-simple-page { min-height: 100svh; background: var(--short-bg) !important; color: var(--short-text) !important; }
.ps-topbar { background: rgba(11,11,12,.9) !important; border-color: var(--short-line) !important; backdrop-filter: blur(18px); }
.ps-brand-mark, .ps-upload-button { background: var(--short-gold) !important; color: #17130d !important; }
.ps-media-page { width: min(100%,1440px); }
.ps-media-heading h1 { color: var(--short-text) !important; letter-spacing: -.04em; }
.ps-media-heading p, .ps-eyebrow { color: var(--short-muted) !important; }
.ps-media-grid > *, .ps-empty, .ps-user-panel { background: var(--short-panel) !important; border-color: var(--short-line) !important; color: var(--short-text) !important; }

/* Plans */
.short-billing { min-height: 100svh; background: radial-gradient(circle at 50% 0,#262219 0,transparent 30%),var(--short-bg) !important; color: var(--short-text) !important; }
.short-billing main { width: min(100% - 32px,1200px) !important; }
.short-billing header h1, .billing-card h2, .billing-addon h2 { color: var(--short-text) !important; letter-spacing: -.04em; }
.short-billing header span, .billing-card p, .billing-card li, .billing-foot, .billing-addon p { color: var(--short-muted) !important; }
.current-plan, .billing-card, .billing-addon, .billing-setup { background: var(--short-panel) !important; border: 1px solid var(--short-line) !important; color: var(--short-text) !important; border-radius: 18px !important; box-shadow: none !important; }
.billing-card.is-featured { border-color: var(--short-gold) !important; box-shadow: 0 0 0 1px rgba(237,195,110,.18) !important; }
.billing-card button, .current-plan button { border-radius: 12px !important; }
.billing-card:not(.is-featured) button:not(.is-current), .current-plan button { background: var(--short-elevated) !important; color: var(--short-text) !important; border: 1px solid var(--short-line) !important; }
.billing-card.is-featured button { background: var(--short-gold) !important; color: #17130d !important; }

@media (max-width: 760px) {
  .land-nav { padding-inline: 16px !important; }
  .land-nav div a:first-child { display: none; }
  .land-hero { padding: 48px 20px 90px !important; align-items: start !important; }
  .land-copy h1 { font-size: clamp(44px,15vw,68px) !important; }
  .land-copy p { font-size: 16px !important; }
  .land-actions { flex-direction: column; }
  .land-actions a { text-align: center; min-height: 48px; display: grid; place-items: center; }
  .auth-page { place-items: start center; }
  .auth-card { border-radius: 20px !important; padding: 22px 18px !important; }
  .s2-shell { display: block !important; }
  .s2-sidebar { position: fixed !important; z-index: 50; left: 0; right: 0; bottom: 0; top: auto !important; width: auto !important; min-height: 70px; padding: 7px max(10px,env(safe-area-inset-right)) max(7px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left)) !important; border-top: 1px solid var(--short-line); }
  .s2-sidebar .s2-brand, .s2-sidebar .s2-account, .s2-sidebar .s2-spacer { display: none !important; }
  .s2-sidebar .s2-create { position: fixed; right: 16px; bottom: calc(82px + env(safe-area-inset-bottom)); width: 52px; height: 52px; padding: 0 !important; border-radius: 50% !important; display: grid; place-items: center; font-size: 24px; box-shadow: 0 12px 30px rgba(0,0,0,.4); }
  .s2-sidebar .s2-create span { display: none; }
  .s2-nav { display: flex !important; justify-content: space-around; gap: 4px; }
  .s2-nav a, .s2-nav button { min-width: 64px; padding: 7px 8px !important; display: grid !important; justify-items: center; font-size: 10px !important; }
  .s2-nav i { font-size: 20px; }
  .s2-main { min-height: 100svh; padding: 20px 16px calc(102px + env(safe-area-inset-bottom)) !important; }
  .s2-top { align-items: start !important; gap: 16px !important; }
  .s2-search { width: 100% !important; }
  .s2-hero { padding: 22px !important; }
  .s2-section-head { align-items: start !important; }
  .create-card { padding: 18px !important; }
  .create-mode-chooser, .visual-mode-options { grid-template-columns: 1fr !important; }
  .first-short-main { padding: 30px 16px 70px !important; }
  .first-short-grid { grid-template-columns: 1fr !important; }
  .ps-topbar { padding-inline: 14px !important; }
  .ps-user-name, .ps-text-link { display: none; }
  .ps-media-page { padding: 24px 14px 90px !important; }
  .ps-media-heading, .ps-media-toolbar { align-items: stretch !important; flex-direction: column !important; }
  .ps-upload-button { justify-content: center; }
  .ps-media-tabs { overflow-x: auto; }
  .short-billing main { width: min(100% - 24px,1200px) !important; padding-bottom: calc(24px + env(safe-area-inset-bottom)); }
  .short-billing header { align-items: flex-start !important; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
