:root {
  color-scheme: dark;
  --bg: #09090a;
  --bg-soft: #111113;
  --panel: rgba(27, 27, 30, .84);
  --panel-solid: #1b1b1e;
  --panel-hover: #222225;
  --text: #f5f5f7;
  --muted: #a1a1a6;
  --faint: #6e6e73;
  --line: rgba(255,255,255,.11);
  --line-strong: rgba(255,255,255,.18);
  --orange: #f97316;
  --orange-bright: #ff8a2b;
  --orange-soft: rgba(249,115,22,.14);
  --success: #34c759;
  --warning: #ff9f0a;
  --danger: #ff453a;
  --shadow: 0 24px 80px rgba(0,0,0,.34);
  --radius: 24px;
}

[data-theme="light"] {
  color-scheme: light;
  --bg: #f5f5f7;
  --bg-soft: #ececee;
  --panel: rgba(255,255,255,.82);
  --panel-solid: #fff;
  --panel-hover: #f8f8fa;
  --text: #1d1d1f;
  --muted: #6e6e73;
  --faint: #86868b;
  --line: rgba(0,0,0,.09);
  --line-strong: rgba(0,0,0,.15);
  --orange-soft: rgba(249,115,22,.10);
  --shadow: 0 24px 80px rgba(0,0,0,.10);
}

* { box-sizing: border-box; }
.visually-hidden { position: absolute!important; width: 1px!important; height: 1px!important; padding: 0!important; margin: -1px!important; overflow: hidden!important; clip: rect(0,0,0,0)!important; white-space: nowrap!important; border: 0!important; }
.skip-link { position: fixed; z-index: 1000; top: 10px; left: 50%; border-radius: 12px; padding: 11px 15px; background: var(--panel-solid); color: var(--text); box-shadow: var(--shadow); text-decoration: none; transform: translate(-50%,-180%); transition: transform .18s; }
.skip-link:focus { transform: translate(-50%,0); }
html { min-height: 100%; background: var(--bg); scroll-behavior: smooth; }
body { display: flex; min-height: 100vh; flex-direction: column; margin: 0; background: var(--bg); color: var(--text); font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", sans-serif; -webkit-font-smoothing: antialiased; }
body::before { content: ""; position: fixed; z-index: -1; inset: -30vh -20vw auto; height: 70vh; background: radial-gradient(ellipse at 60% 0%, rgba(249,115,22,.12), transparent 58%); pointer-events: none; }
body > main { flex: 1 0 auto; }
a { color: inherit; }
button, input, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }

.site-header { position: sticky; z-index: 100; top: 0; display: flex; align-items: center; min-height: 68px; padding: 0 32px; gap: 30px; background: color-mix(in srgb, var(--bg) 78%, transparent); border-bottom: 1px solid var(--line); backdrop-filter: saturate(150%) blur(22px); }
.brand { display: inline-flex; align-items: center; gap: 10px; font-weight: 720; letter-spacing: -.03em; text-decoration: none; }
.brand-mark { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 9px; background: var(--orange); color: #fff; font-weight: 800; box-shadow: 0 8px 24px rgba(249,115,22,.28); }
.main-nav { display: flex; gap: 24px; }
.main-nav a { color: var(--muted); text-decoration: none; font-size: 14px; transition: color .2s; }
.main-nav a:hover { color: var(--text); }
.header-actions { margin-left: auto; display: flex; align-items: center; gap: 14px; }
.header-actions form { margin: 0; }
.guest-language-switch > div { display: grid; grid-template-columns: repeat(2,34px); gap: 2px; padding: 3px; border: 1px solid var(--line); border-radius: 999px; background: rgba(118,118,128,.14); box-shadow: inset 0 1px rgba(255,255,255,.035); }
.guest-language-switch button { display: grid; min-height: 28px; place-items: center; border: 0; border-radius: 999px; padding: 0; background: transparent; color: var(--muted); font-size: 10px; font-weight: 760; letter-spacing: .035em; cursor: pointer; transition: background .18s,color .18s,box-shadow .18s,transform .18s; }
.guest-language-switch button:hover { color: var(--text); }
.guest-language-switch button[aria-pressed="true"] { background: var(--panel-solid); color: var(--text); box-shadow: 0 1px 5px rgba(0,0,0,.24),inset 0 0 0 1px rgba(255,255,255,.035); }
.guest-language-switch button:active { transform: scale(.96); }
.guest-language-switch button:focus-visible { outline: 0; box-shadow: 0 0 0 3px var(--orange-soft); }
.user-name { color: var(--muted); max-width: 220px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; }
.theme-toggle { width: 42px; height: 30px; display: flex; align-items: center; justify-content: space-around; padding: 3px; border: 1px solid var(--line); border-radius: 999px; background: var(--panel-solid); color: var(--muted); cursor: pointer; }
.theme-toggle span { font-size: 14px; line-height: 1; }
[data-theme="dark"] .theme-toggle .moon, [data-theme="light"] .theme-toggle .sun { color: var(--orange); }
.text-button { border: 0; background: none; color: var(--muted); cursor: pointer; padding: 6px 0; }
.text-button:hover { color: var(--text); }

.eyebrow { display: block; margin-bottom: 12px; color: var(--orange); font-size: 12px; font-weight: 750; text-transform: uppercase; letter-spacing: .12em; }
.muted { color: var(--muted); }
.glass-card { background: var(--panel); border: 1px solid var(--line); box-shadow: var(--shadow); backdrop-filter: blur(30px) saturate(125%); }
.primary-button, .secondary-button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 46px; padding: 0 18px; border-radius: 14px; border: 1px solid transparent; text-decoration: none; font-weight: 680; font-size: 14px; cursor: pointer; transition: transform .2s, background .2s, box-shadow .2s; }
.primary-button { color: #fff; background: var(--orange); box-shadow: 0 10px 30px rgba(249,115,22,.22); }
.primary-button:hover { background: var(--orange-bright); transform: translateY(-1px); box-shadow: 0 14px 34px rgba(249,115,22,.28); }
.secondary-button { color: var(--text); background: var(--panel-solid); border-color: var(--line); }
.secondary-button:hover { background: var(--panel-hover); transform: translateY(-1px); }
.primary-button.wide { width: 100%; }
.subtle-link { color: var(--muted); text-decoration: none; font-size: 14px; }
.subtle-link:hover { color: var(--text); }

.messages { position: fixed; z-index: 200; top: 84px; left: 50%; transform: translateX(-50%); width: min(560px, calc(100% - 32px)); }
.message { padding: 13px 16px; border-radius: 14px; background: var(--panel-solid); border: 1px solid var(--line); box-shadow: var(--shadow); text-align: center; font-size: 14px; }
.message.success { border-color: rgba(52,199,89,.4); }
.message.warning { border-color: rgba(255,159,10,.4); }

.site-footer { flex: 0 0 auto; width: min(1240px,calc(100% - 48px)); margin: 0 auto; padding: 0 0 25px; }
.site-footer-inner { display: flex; align-items: center; justify-content: space-between; min-height: 54px; gap: 24px; border-top: 1px solid var(--line); padding: 13px 4px 0; color: var(--faint); font-size: 11px; }
.legal-footer-links { display: flex; align-items: center; justify-content: center; gap: 4px; }
.legal-footer-links a { min-height: 34px; display: inline-flex; align-items: center; border-radius: 9px; padding: 0 10px; color: var(--muted); text-decoration: none; font-size: 12px; font-weight: 600; transition: color .18s,background .18s; }
.legal-footer-links a:hover,.legal-footer-links a[aria-current="page"] { background: rgba(118,118,128,.1); color: var(--text); }
.legal-footer-links a:focus-visible { outline: 0; box-shadow: 0 0 0 3px var(--orange-soft); color: var(--text); }

.auth-shell { min-height: calc(100vh - 147px); width: min(1180px, calc(100% - 48px)); margin: 0 auto; display: grid; grid-template-columns: 1.08fr .78fr; align-items: center; gap: 90px; padding: 72px 0; }
.auth-copy h1 { max-width: 760px; margin: 0; font-size: clamp(46px, 6vw, 78px); line-height: .98; letter-spacing: -.065em; }
.auth-copy > p { max-width: 620px; margin: 28px 0 0; color: var(--muted); font-size: clamp(17px, 2vw, 21px); line-height: 1.55; }
.auth-card { border-radius: 30px; padding: 34px; }
.auth-card.compact, .create-card { width: min(560px, 100%); }
.auth-card h1, .auth-card h2 { margin: 0 0 10px; font-size: 30px; letter-spacing: -.045em; }
.auth-card > p { line-height: 1.5; }
.stack-form { display: grid; gap: 17px; margin-top: 26px; }
.stack-form label { display: grid; gap: 8px; color: var(--muted); font-size: 13px; font-weight: 620; }
.stack-form label small { font-weight: 400; color: var(--faint); }
.stack-form input, .stack-form textarea { width: 100%; border: 1px solid var(--line); border-radius: 14px; outline: 0; padding: 13px 14px; background: var(--bg-soft); color: var(--text); transition: border .2s, box-shadow .2s; resize: vertical; }
.stack-form input:focus, .stack-form textarea:focus { border-color: var(--orange); box-shadow: 0 0 0 4px var(--orange-soft); }
.auth-language-control { position: relative; display: flex; align-items: center; }
.auth-language-control select { width: 100%; min-height: 48px; appearance: none; -webkit-appearance: none; border: 1px solid var(--line); border-radius: 14px; outline: 0; padding: 0 43px; background: linear-gradient(180deg,rgba(255,255,255,.025),transparent),var(--bg-soft); color: var(--text); box-shadow: inset 0 1px 2px rgba(0,0,0,.16); font: 620 14px/1 -apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",sans-serif; cursor: pointer; transition: border-color .2s,box-shadow .2s,background .2s; }
.auth-language-control select:hover { border-color: var(--line-strong); background: linear-gradient(180deg,rgba(255,255,255,.04),transparent),var(--bg-soft); }
.auth-language-control select:focus-visible { border-color: var(--orange); box-shadow: 0 0 0 4px var(--orange-soft),inset 0 1px 2px rgba(0,0,0,.12); }
.auth-language-control select option { background: var(--panel-solid); color: var(--text); }
.auth-language-control svg { position: absolute; z-index: 1; pointer-events: none; stroke: currentColor; stroke-width: 1.55; stroke-linecap: round; stroke-linejoin: round; }
.auth-language-icon { left: 14px; width: 18px; height: 18px; color: var(--muted); }
.auth-language-chevron { right: 14px; width: 16px; height: 16px; color: var(--faint); }
.auth-language-control:focus-within .auth-language-icon,.auth-language-control:focus-within .auth-language-chevron { color: var(--orange); }
[data-theme="light"] .auth-language-control select { box-shadow: inset 0 1px rgba(255,255,255,.9); }
.stack-form .errorlist { margin: 0; padding: 0; list-style: none; color: var(--danger); font-weight: 500; }
.form-error { border-radius: 12px; padding: 12px; color: #fff; background: rgba(255,69,58,.78); font-size: 13px; }
.form-meta { text-align: right; margin-top: -5px; }
.form-meta a, .auth-switch a { color: var(--orange); text-decoration: none; }
.auth-switch { margin: 22px 0 0; text-align: center; color: var(--muted); font-size: 14px; }
.auth-guest-entry { margin-top: 24px; }
.auth-choice-divider { display: grid; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr); align-items: center; gap: 12px; color: var(--faint); font-size: 11px; font-weight: 650; text-transform: uppercase; letter-spacing: .09em; }
.auth-choice-divider::before,.auth-choice-divider::after { content: ""; height: 1px; background: var(--line); }
.auth-guest-form { display: grid; gap: 9px; margin-top: 16px; }
.auth-guest-button { width: 100%; border-color: rgba(249,115,22,.3); background: linear-gradient(145deg,rgba(249,115,22,.11),rgba(249,115,22,.035)),var(--panel-solid); color: var(--orange-bright); box-shadow: inset 0 1px rgba(255,255,255,.035); }
.auth-guest-button:hover { border-color: rgba(249,115,22,.55); background: var(--orange-soft); }
.auth-guest-button:focus-visible { outline: 0; border-color: var(--orange); box-shadow: 0 0 0 4px var(--orange-soft); }
.auth-guest-note { margin: 0; color: var(--muted); text-align: center; font-size: 12px; line-height: 1.55; }
.feature-pills { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 30px; }
.feature-pills span { padding: 9px 13px; border-radius: 999px; border: 1px solid var(--line); color: var(--muted); font-size: 13px; background: var(--panel); }
.auth-orbit { position: relative; display: grid; place-items: center; width: 240px; height: 120px; margin-top: 38px; }
.auth-orbit::after { content: ""; position: absolute; z-index: 0; width: 118px; height: 58px; border-radius: 50%; background: radial-gradient(ellipse,rgba(249,115,22,.18),transparent 68%); filter: blur(14px); opacity: .45; pointer-events: none; animation: auth-orbit-halo 5.6s ease-in-out infinite; }
.auth-orbit-ring { --orbit-size: 110px; --orbit-ratio: .455; --orbit-inverse-ratio: 2.198; --point-speed: 7s; --point-delay: -2.1s; --point-glow-delay: -2s; position: absolute; border: 1px solid var(--line); border-radius: 50%; }
.auth-orbit-ring-outer { --orbit-size: 220px; --orbit-ratio: .409; --orbit-inverse-ratio: 2.445; --point-speed: 12.5s; --point-delay: -4.6s; --point-glow-delay: -.4s; width: 220px; height: 90px; transform: rotate(-8deg); animation: auth-orbit-outer 26s linear infinite; }
.auth-orbit-ring-middle { --orbit-size: 170px; --orbit-ratio: .412; --orbit-inverse-ratio: 2.427; --point-speed: 9.2s; --point-delay: -1.8s; --point-glow-delay: -1.1s; width: 170px; height: 70px; transform: rotate(18deg); animation: auth-orbit-middle 19s linear infinite; }
.auth-orbit-ring-inner { width: 110px; height: 50px; animation: auth-orbit-inner 7.5s ease-in-out infinite; }
.auth-orbit-ring b { position: absolute; top: 50%; left: 50%; display: block; width: var(--orbit-size); height: var(--orbit-size); transform: translate(-50%,-50%) scaleY(var(--orbit-ratio)) rotate(0deg); transform-origin: center; animation: auth-orbit-point var(--point-speed) linear infinite; animation-delay: var(--point-delay); }
.auth-orbit-ring b::after { content: ""; position: absolute; top: 50%; right: -3px; width: 7px; height: 7px; border-radius: 50%; background: var(--orange); box-shadow: 0 0 15px var(--orange); transform: translateY(-50%) rotate(0deg) scaleY(var(--orbit-inverse-ratio)); animation: auth-orbit-point-counter var(--point-speed) linear infinite,auth-orbit-point-glow 2.8s ease-in-out infinite; animation-delay: var(--point-delay),var(--point-glow-delay); }
.auth-orbit-ring-middle b { animation-direction: reverse; }
.auth-orbit-ring-middle b::after { width: 6px; height: 6px; opacity: .84; animation-direction: reverse,normal; }
.auth-orbit-ring-inner b::after { width: 5px; height: 5px; opacity: .68; }
.auth-orbit span { position: relative; z-index: 1; display: grid; place-items: center; width: 48px; height: 48px; background: var(--orange); border-radius: 15px; color: white; box-shadow: 0 9px 25px rgba(249,115,22,.22); font-weight: 800; animation: auth-orbit-core 5.2s ease-in-out infinite; }
.auth-orbit::after,.auth-orbit-ring,.auth-orbit-ring b,.auth-orbit-ring b::after,.auth-orbit span { will-change: transform,opacity; }
@keyframes auth-orbit-outer { from { transform: rotate(-8deg); } to { transform: rotate(352deg); } }
@keyframes auth-orbit-middle { from { transform: rotate(18deg); } to { transform: rotate(-342deg); } }
@keyframes auth-orbit-inner { 0%,100% { opacity: .62; transform: scale(.98); } 50% { opacity: 1; transform: scale(1.035); } }
@keyframes auth-orbit-point { to { transform: translate(-50%,-50%) scaleY(var(--orbit-ratio)) rotate(360deg); } }
@keyframes auth-orbit-point-counter { from { transform: translateY(-50%) rotate(0deg) scaleY(var(--orbit-inverse-ratio)); } to { transform: translateY(-50%) rotate(-360deg) scaleY(var(--orbit-inverse-ratio)); } }
@keyframes auth-orbit-point-glow { 0%,100% { opacity: .55; box-shadow: 0 0 10px var(--orange); } 50% { opacity: 1; box-shadow: 0 0 20px var(--orange); } }
@keyframes auth-orbit-core { 0%,100% { transform: translateY(0) scale(1); box-shadow: 0 9px 25px rgba(249,115,22,.22); } 50% { transform: translateY(-3px) scale(1.025); box-shadow: 0 14px 34px rgba(249,115,22,.34); } }
@keyframes auth-orbit-halo { 0%,100% { opacity: .34; transform: scale(.9); } 50% { opacity: .68; transform: scale(1.12); } }

.center-shell { min-height: calc(100vh - 147px); display: grid; place-items: center; padding: 60px 24px; }
.state-card { width: min(580px,100%); padding: 42px; border-radius: 30px; text-align: center; }
.state-card h1 { margin: 8px 0 12px; font-size: clamp(32px,5vw,48px); letter-spacing: -.055em; }
.state-card p { margin: 0 auto 26px; max-width: 460px; color: var(--muted); line-height: 1.6; }
.state-card .primary-button { margin: 0 8px 12px; }
.state-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; }
.state-actions .primary-button,.state-actions .secondary-button { margin: 0; }
.state-icon { display: grid; place-items: center; width: 58px; height: 58px; margin: 0 auto 22px; border-radius: 18px; color: var(--orange); background: var(--orange-soft); font-size: 26px; }
.state-icon.warning { color: var(--warning); background: rgba(255,159,10,.12); }
.legal-shell { width: min(940px,calc(100% - 48px)); margin: 0 auto; padding: 70px 0 96px; }
.legal-hero { max-width: 760px; margin-bottom: 32px; }
.legal-hero h1 { margin: 0; font-size: clamp(46px,7vw,74px); line-height: .98; letter-spacing: -.06em; }
.legal-hero > p { max-width: 680px; margin: 22px 0 0; color: var(--muted); font-size: 18px; line-height: 1.55; }
.legal-hero time { display: inline-block; margin-top: 15px; color: var(--faint); font-size: 11px; font-weight: 620; }
.legal-demo-notice { display: grid; grid-template-columns: auto minmax(0,1fr); gap: 15px; margin-bottom: 20px; border: 1px solid rgba(255,159,10,.28); border-radius: 18px; padding: 17px 18px; background: rgba(255,159,10,.08); }
.legal-demo-icon { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 11px; background: rgba(255,159,10,.14); color: var(--warning); font-weight: 820; }
.legal-demo-notice strong { display: block; margin: 1px 0 5px; color: var(--text); font-size: 13px; }
.legal-demo-notice p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.55; }
.legal-document { overflow: hidden; border-radius: 28px; padding: 5px 42px; }
.legal-section { padding: 31px 0; scroll-margin-top: 92px; }
.legal-section + .legal-section { border-top: 1px solid var(--line); }
.legal-section h2 { margin: 0 0 15px; font-size: clamp(21px,3vw,27px); letter-spacing: -.035em; }
.legal-section p,.legal-section li,.legal-address,.legal-facts { color: var(--muted); font-size: 14px; line-height: 1.72; }
.legal-section p { margin: 0; }
.legal-section p + p { margin-top: 13px; }
.legal-section ul { display: grid; gap: 8px; margin: 16px 0 0; padding-left: 21px; }
.legal-section li::marker { color: var(--orange); }
.legal-section a { color: var(--orange-bright); overflow-wrap: anywhere; text-underline-offset: 3px; }
.legal-address { border-left: 2px solid var(--orange); margin-top: 16px; padding: 4px 0 4px 17px; font-style: normal; }
.legal-address strong { color: var(--text); }
.legal-table-wrap { margin: 18px 0; overflow-x: auto; border: 1px solid var(--line); border-radius: 16px; }
.legal-table { width: 100%; min-width: 680px; border-collapse: collapse; color: var(--muted); font-size: 13px; line-height: 1.55; }
.legal-table th,.legal-table td { padding: 13px 15px; text-align: left; vertical-align: top; }
.legal-table th { background: rgba(118,118,128,.09); color: var(--text); font-size: 11px; letter-spacing: .02em; }
.legal-table tbody tr + tr { border-top: 1px solid var(--line); }
.legal-table code { color: var(--text); font-size: 12px; }
.legal-facts { display: grid; gap: 0; margin: 2px 0 0; }
.legal-facts > div { display: grid; grid-template-columns: minmax(135px,.35fr) minmax(0,1fr); gap: 22px; padding: 11px 0; }
.legal-facts > div + div { border-top: 1px solid var(--line); }
.legal-facts dt { color: var(--faint); font-weight: 620; }
.legal-facts dd { margin: 0; color: var(--muted); }
.create-card { border-radius: 30px; padding: 40px; }
.create-card h1 { margin: 0; font-size: clamp(34px,5vw,50px); line-height: 1.05; letter-spacing: -.055em; }
.back-link { display: inline-block; margin-bottom: 38px; color: var(--muted); text-decoration: none; font-size: 14px; }
.form-actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 10px; }

.workspace-shell { width: min(1240px, calc(100% - 48px)); margin: 0 auto; padding: 68px 0 90px; }
.workspace-shell.narrow { max-width: 980px; }
.workspace-shell.billing-shell { max-width: 1180px; }
.workspace-hero { display: flex; align-items: flex-end; justify-content: space-between; gap: 32px; }
.workspace-hero h1 { margin: 0; font-size: clamp(42px,6vw,68px); line-height: 1; letter-spacing: -.06em; }
.workspace-hero p { margin: 17px 0 0; color: var(--muted); font-size: 18px; }
.workspace-hero-actions { display: flex; align-items: center; justify-content: flex-end; gap: 10px; flex: 0 0 auto; }
.ai-create-trigger { position: relative; min-height: 46px; background: linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.025)); }
.ai-create-trigger svg { width: 18px; height: 18px; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.ai-create-trigger:not(.is-locked) { border-color: rgba(249,115,22,.28); color: var(--orange-bright); box-shadow: inset 0 1px rgba(255,255,255,.06),0 10px 30px rgba(0,0,0,.12); }
.ai-create-trigger:not(.is-locked):hover { border-color: rgba(249,115,22,.52); background: var(--orange-soft); }
.ai-create-trigger.is-locked { color: var(--faint); opacity: .72; box-shadow: none; }
.ai-create-trigger.is-locked:hover { color: var(--muted); opacity: 1; transform: none; }
.ai-create-trigger.is-locked::after { content: attr(data-locked-label); position: absolute; z-index: 30; right: 0; bottom: calc(100% + 10px); width: max-content; max-width: min(260px,calc(100vw - 30px)); border: 1px solid var(--line-strong); border-radius: 10px; padding: 8px 10px; background: var(--panel-solid); color: var(--text); box-shadow: var(--shadow); opacity: 0; pointer-events: none; transform: translateY(4px); white-space: nowrap; font-size: 10px; font-weight: 620; transition: opacity .16s,transform .16s; }
.ai-create-trigger.is-locked:hover::after,.ai-create-trigger.is-locked:focus-visible::after { opacity: 1; transform: translateY(0); }
.ai-pro-badge { margin-left: 2px; border-radius: 999px; padding: 3px 6px; background: rgba(118,118,128,.17); color: var(--muted); font-size: 9px; font-weight: 760; line-height: 1; letter-spacing: .04em; text-transform: uppercase; }
.ai-create-dialog { width: min(720px,calc(100% - 32px)); max-height: min(860px,calc(100vh - 32px)); overflow: hidden; border: 1px solid var(--line-strong); border-radius: 30px; padding: 0; background: rgba(28,28,31,.97); color: var(--text); box-shadow: 0 40px 130px rgba(0,0,0,.62),inset 0 1px rgba(255,255,255,.06); backdrop-filter: blur(40px) saturate(145%); }
.ai-create-dialog[open] { animation: ai-dialog-in .24s cubic-bezier(.2,.8,.2,1); }
.ai-create-dialog::backdrop { background: rgba(0,0,0,.66); backdrop-filter: blur(20px) saturate(115%); animation: settings-backdrop-in .2s ease-out; }
[data-theme="light"] .ai-create-dialog { background: rgba(250,250,252,.97); box-shadow: 0 40px 110px rgba(0,0,0,.2),inset 0 1px rgba(255,255,255,.9); }
@keyframes ai-dialog-in { from { opacity: 0; transform: translateY(12px) scale(.98); } }
.ai-create-form { display: flex; max-height: min(860px,calc(100vh - 32px)); flex-direction: column; }
.ai-dialog-header { position: relative; display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: start; gap: 17px; padding: 30px 30px 23px; border-bottom: 1px solid var(--line); background: radial-gradient(circle at 10% 0%,rgba(249,115,22,.12),transparent 36%); }
.ai-dialog-icon { display: grid; place-items: center; width: 48px; height: 48px; border: 1px solid rgba(249,115,22,.2); border-radius: 15px; background: var(--orange-soft); color: var(--orange-bright); box-shadow: inset 0 1px rgba(255,255,255,.06); }
.ai-dialog-icon svg { width: 26px; height: 26px; stroke: currentColor; stroke-width: 1.55; stroke-linecap: round; stroke-linejoin: round; }
.ai-dialog-header .eyebrow { margin: 1px 0 7px; font-size: 10px; }
.ai-dialog-header h2 { margin: 0; font-size: 29px; line-height: 1.08; letter-spacing: -.045em; }
.ai-dialog-header p { max-width: 540px; margin: 9px 0 0; color: var(--muted); font-size: 13px; line-height: 1.52; }
.ai-dialog-close { display: grid; place-items: center; width: 36px; height: 36px; border: 1px solid var(--line); border-radius: 50%; padding: 0 0 2px; background: rgba(118,118,128,.14); color: var(--muted); font-size: 22px; line-height: 1; cursor: pointer; transition: background .18s,color .18s,transform .18s; }
.ai-dialog-close:hover { background: rgba(118,118,128,.25); color: var(--text); transform: scale(1.04); }
.ai-dialog-close:focus-visible { outline: 0; box-shadow: 0 0 0 4px var(--orange-soft); }
.ai-dialog-body { min-height: 0; overflow-y: auto; padding: 25px 30px 23px; scrollbar-width: thin; scrollbar-color: var(--line-strong) transparent; }
.ai-prompt-label { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin-bottom: 10px; color: var(--text); font-size: 13px; font-weight: 680; }
.ai-prompt-label small { color: var(--faint); font-size: 11px; font-weight: 450; }
.ai-prompt-wrap { position: relative; }
.ai-prompt-wrap textarea { display: block; width: 100%; min-height: 172px; resize: vertical; border: 1px solid var(--line); border-radius: 18px; outline: 0; padding: 17px 17px 34px; background: rgba(0,0,0,.23); color: var(--text); box-shadow: inset 0 1px 3px rgba(0,0,0,.16); font-size: 15px; line-height: 1.52; transition: border-color .2s,box-shadow .2s,background .2s; }
[data-theme="light"] .ai-prompt-wrap textarea { background: rgba(118,118,128,.07); box-shadow: none; }
.ai-prompt-wrap textarea:focus { border-color: rgba(249,115,22,.7); box-shadow: 0 0 0 4px rgba(249,115,22,.12),inset 0 1px 3px rgba(0,0,0,.12); }
.ai-prompt-wrap textarea::placeholder { color: var(--faint); }
.ai-prompt-count { position: absolute; right: 14px; bottom: 11px; color: var(--faint); font-size: 10px; font-variant-numeric: tabular-nums; }
.ai-prompt-examples { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 10px; }
.ai-prompt-examples button { border: 1px solid var(--line); border-radius: 999px; padding: 7px 10px; background: rgba(118,118,128,.09); color: var(--muted); font-size: 10px; font-weight: 620; cursor: pointer; transition: color .18s,background .18s,border-color .18s; }
.ai-prompt-examples button:hover { border-color: rgba(249,115,22,.32); background: var(--orange-soft); color: var(--text); }
.ai-prompt-examples button:focus-visible { outline: 0; box-shadow: 0 0 0 3px var(--orange-soft); }
.ai-web-search-option { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 22px; border: 1px solid var(--line); border-radius: 17px; padding: 14px 15px; background: rgba(118,118,128,.07); cursor: pointer; transition: border-color .18s,background .18s; }
.ai-web-search-option:hover { border-color: var(--line-strong); background: rgba(118,118,128,.11); }
.ai-web-search-copy { display: flex; align-items: center; min-width: 0; gap: 12px; }
.ai-web-search-copy > span:last-child { display: grid; min-width: 0; gap: 4px; }
.ai-web-search-copy strong { font-size: 13px; }
.ai-web-search-copy small { color: var(--muted); font-size: 11px; font-weight: 450; line-height: 1.4; }
.ai-option-icon { display: grid; flex: 0 0 auto; place-items: center; width: 34px; height: 34px; border-radius: 10px; background: var(--orange-soft); color: var(--orange); }
.ai-option-icon svg { width: 19px; height: 19px; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.ai-web-search-option input { position: absolute; opacity: 0; pointer-events: none; }
.ai-toggle { position: relative; flex: 0 0 auto; width: 46px; height: 28px; border-radius: 999px; background: rgba(120,120,128,.32); box-shadow: inset 0 0 0 1px rgba(255,255,255,.04); transition: background .2s; }
.ai-toggle i { position: absolute; top: 3px; left: 3px; width: 22px; height: 22px; border-radius: 50%; background: #fff; box-shadow: 0 2px 7px rgba(0,0,0,.28); transition: transform .2s cubic-bezier(.2,.8,.2,1); }
.ai-web-search-option input:checked + .ai-toggle { background: var(--orange); }
.ai-web-search-option input:checked + .ai-toggle i { transform: translateX(18px); }
.ai-web-search-option input:focus-visible + .ai-toggle { box-shadow: 0 0 0 4px var(--orange-soft); }
.ai-generation-status { display: flex; align-items: center; gap: 13px; margin-top: 18px; border: 1px solid rgba(249,115,22,.22); border-radius: 15px; padding: 13px 14px; background: var(--orange-soft); }
.ai-generation-status > span:last-child { display: grid; gap: 3px; }
.ai-generation-status strong { font-size: 12px; }
.ai-generation-status small { color: var(--muted); font-size: 10px; }
.ai-spinner { width: 20px; height: 20px; flex: 0 0 auto; border: 2px solid rgba(249,115,22,.25); border-top-color: var(--orange); border-radius: 50%; animation: ai-spin .75s linear infinite; }
.ai-generation-status.is-complete { border-color: rgba(52,199,89,.24); background: rgba(52,199,89,.1); }
.ai-generation-status.is-complete .ai-spinner { display: grid; place-items: center; border: 0; background: var(--success); color: #fff; animation: none; }
.ai-generation-status.is-complete .ai-spinner::after { content: "✓"; font-size: 12px; font-weight: 800; }
@keyframes ai-spin { to { transform: rotate(360deg); } }
.ai-generation-error { margin: 18px 0 0; border: 1px solid rgba(255,69,58,.25); border-radius: 14px; padding: 11px 13px; background: rgba(255,69,58,.1); color: #ff6961; font-size: 12px; line-height: 1.45; }
.ai-disclaimer { margin: 15px 1px 0; color: var(--faint); font-size: 10px; line-height: 1.4; }
.ai-dialog-footer { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 17px 30px; border-top: 1px solid var(--line); background: rgba(0,0,0,.13); }
[data-theme="light"] .ai-dialog-footer { background: rgba(118,118,128,.05); }
.ai-dialog-footer > div { display: flex; gap: 9px; }
.ai-dialog-footer .primary-button,.ai-dialog-footer .secondary-button { min-height: 44px; }
.ai-submit-button svg { width: 17px; height: 17px; stroke: currentColor; stroke-width: 1.7; }
.ai-key-hint { display: flex; align-items: center; gap: 5px; color: var(--faint); font-size: 10px; }
.ai-key-hint kbd { border: 1px solid var(--line-strong); border-bottom-width: 2px; border-radius: 6px; padding: 4px 6px; background: var(--panel-solid); color: var(--muted); font: 600 10px/1 -apple-system,BlinkMacSystemFont,"SF Pro Text",sans-serif; }
.ai-create-form.is-loading :is(textarea,input,.ai-prompt-examples button,.ai-dialog-close,[data-ai-create-cancel]) { pointer-events: none; opacity: .56; }
.ai-create-form.is-loading .ai-submit-button { pointer-events: none; opacity: .72; }
.workspace-stats { display: flex; gap: 1px; margin: 48px 0 62px; overflow: hidden; background: var(--line); border: 1px solid var(--line); border-radius: 20px; }
.workspace-stats > div { flex: 1; padding: 22px 25px; background: var(--panel); }
.workspace-stats strong { display: block; font-size: 24px; letter-spacing: -.04em; }
.workspace-stats strong small { color: var(--faint); font-size: 14px; }
.workspace-stats span { color: var(--muted); font-size: 12px; }
.section-heading { display: flex; align-items: baseline; justify-content: space-between; margin-bottom: 20px; }
.section-heading h2 { margin: 0; font-size: 24px; letter-spacing: -.035em; }
.section-heading > span { color: var(--faint); font-size: 13px; }
.assessment-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.assessment-card { position: relative; overflow: visible; border: 1px solid var(--line); border-radius: 22px; background: var(--panel); transition: transform .25s, border-color .25s, box-shadow .25s; }
.assessment-card:hover { transform: translateY(-3px); border-color: var(--line-strong); box-shadow: var(--shadow); }
.assessment-card:hover,.assessment-card:focus-within { z-index: 5; }
.card-main { display: block; padding: 22px 22px 18px; text-decoration: none; }
.card-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 26px; }
.assessment-icon { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: var(--orange-soft); color: var(--orange); font-size: 21px; }
.status { padding: 6px 9px; border-radius: 999px; background: var(--bg-soft); color: var(--faint); font-size: 11px; font-weight: 650; }
.status.live { color: var(--success); }
.status.expired { color: var(--warning); }
.status.expired i { display: inline-block; width: 6px; height: 6px; margin-right: 4px; border-radius: 50%; background: currentColor; }
.status.live i { display: inline-block; width: 6px; height: 6px; margin-right: 4px; border-radius: 50%; background: currentColor; box-shadow: 0 0 8px currentColor; }
.assessment-card h3 { margin: 0; font-size: 21px; letter-spacing: -.035em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.assessment-card p { min-height: 42px; margin: 9px 0 25px; color: var(--muted); font-size: 13px; line-height: 1.55; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.card-meta { display: flex; justify-content: space-between; gap: 12px; color: var(--faint); font-size: 11px; }
.card-footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 20px; border-top: 1px solid var(--line); }
.card-footer-actions { display: flex; align-items: center; justify-content: flex-end; gap: 2px; }
.card-share-button svg { width: 19px; height: 19px; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.card-share-button:hover { color: #2997ff; background: rgba(10,132,255,.1); }
.card-action-form { margin: 0; }
.card-icon-button { position: relative; display: grid; place-items: center; width: 38px; height: 38px; border: 1px solid transparent; border-radius: 11px; padding: 0; background: transparent; color: var(--muted); font-size: 19px; cursor: pointer; transition: color .18s,background .18s,border-color .18s; }
.card-icon-button:hover { color: var(--orange); background: var(--orange-soft); }
.card-icon-button:focus-visible { outline: 0; border-color: var(--orange); box-shadow: 0 0 0 3px var(--orange-soft); }
.card-icon-button::after { content: attr(data-tooltip); position: absolute; z-index: 20; right: 0; bottom: calc(100% + 9px); width: max-content; max-width: 220px; padding: 7px 10px; border: 1px solid var(--line-strong); border-radius: 9px; background: var(--panel-solid); color: var(--text); box-shadow: var(--shadow); opacity: 0; pointer-events: none; transform: translateY(4px); transition: opacity .16s,transform .16s; white-space: nowrap; font-size: 11px; font-weight: 600; line-height: 1.2; }
.card-icon-button:hover::after,.card-icon-button:focus-visible::after { opacity: 1; transform: translateY(0); }
.card-copy-button svg { width: 19px; height: 19px; stroke: currentColor; stroke-width: 1.8; }
.assessment-settings-dialog { width: min(620px,calc(100% - 32px)); max-height: min(820px,calc(100vh - 32px)); overflow: visible; border: 0!important; outline: 0!important; border-radius: 30px; padding: 0; background: transparent; color: var(--text); box-shadow: 0 34px 100px rgba(0,0,0,.52); }
.assessment-settings-dialog[open] { animation: settings-dialog-in .22s cubic-bezier(.2,.8,.2,1); }
.assessment-settings-dialog::backdrop { background: rgba(0,0,0,.6); backdrop-filter: blur(18px) saturate(120%); animation: settings-backdrop-in .2s ease-out; }
@keyframes settings-dialog-in { from { opacity: 0; transform: translateY(10px) scale(.985); } }
@keyframes settings-backdrop-in { from { opacity: 0; } }
.settings-dialog-panel { position: relative; overflow: hidden; padding: 66px 32px 28px; border: 1px solid rgba(255,255,255,.1); border-radius: 30px; background: linear-gradient(145deg,rgba(255,255,255,.045),transparent 38%),rgba(28,28,30,.96); box-shadow: inset 0 1px rgba(255,255,255,.06); backdrop-filter: blur(36px) saturate(145%); }
[data-theme="light"] .settings-dialog-panel { border-color: rgba(0,0,0,.08); background: linear-gradient(145deg,rgba(255,255,255,.88),rgba(248,248,250,.94)); box-shadow: inset 0 1px rgba(255,255,255,.9); }
.settings-dialog-close-form { position: absolute; z-index: 20; top: 18px; right: 18px; margin: 0; }
.settings-dialog-close { display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid var(--line); border-radius: 50%; padding: 0 0 2px; background: rgba(118,118,128,.16); color: var(--muted); box-shadow: inset 0 1px rgba(255,255,255,.06); font-size: 21px; line-height: 1; cursor: pointer; transition: color .18s,background .18s,transform .18s; }
.settings-dialog-close:hover { color: var(--text); background: rgba(118,118,128,.28); transform: scale(1.04); }
.settings-dialog-close:focus-visible { outline: 0; box-shadow: 0 0 0 4px var(--orange-soft); }
.settings-form { gap: 22px; margin-top: 0; }
.settings-form label { gap: 9px; color: var(--muted); font-size: 13px; font-weight: 650; }
.settings-form label small { margin-left: 5px; color: var(--faint); font-size: 12px; font-weight: 450; }
.settings-form input,.settings-form textarea { border-color: rgba(255,255,255,.1); border-radius: 16px; padding: 14px 15px; background: rgba(0,0,0,.22); font-size: 15px; line-height: 1.45; box-shadow: inset 0 1px 2px rgba(0,0,0,.14); }
[data-theme="light"] .settings-form input,[data-theme="light"] .settings-form textarea { border-color: rgba(0,0,0,.09); background: rgba(118,118,128,.07); box-shadow: none; }
.settings-form textarea { min-height: 124px; resize: vertical; }
.settings-form input:focus,.settings-form textarea:focus { border-color: rgba(249,115,22,.78); box-shadow: 0 0 0 4px rgba(249,115,22,.13); }
.settings-dialog-actions { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin: 28px -32px -28px; padding: 18px 32px; border-top: 1px solid var(--line); border-radius: 0 0 30px 30px; background: rgba(0,0,0,.12); }
[data-theme="light"] .settings-dialog-actions { background: rgba(118,118,128,.055); }
.settings-dialog-actions-left { display: flex; align-items: center; gap: 10px; }
.branding-settings-button { min-height: 46px; background: rgba(118,118,128,.12); box-shadow: none; }
.branding-settings-button.is-locked { border-color: rgba(249,115,22,.26); }
.settings-pro-badge { border-radius: 999px; padding: 3px 6px; background: var(--orange-soft); color: var(--orange); font-size: 9px; font-weight: 760; line-height: 1; letter-spacing: .04em; text-transform: uppercase; }
.publication-menu-wrap { position: relative; }
.publication-menu-button { border-color: var(--line); background: rgba(118,118,128,.12); box-shadow: none; }
.publication-menu-button:hover { background: rgba(118,118,128,.2); }
.publication-menu-button span { display: inline-block; margin-left: 3px; color: var(--faint); font-size: 13px; transition: transform .2s; }
.publication-menu-button[aria-expanded="true"] span { transform: rotate(180deg); }
.publication-menu { position: absolute; z-index: 15; left: 0; bottom: calc(100% + 12px); width: min(320px,calc(100vw - 70px)); padding: 14px; border: 1px solid var(--line-strong); border-radius: 18px; background: rgba(38,38,41,.96); box-shadow: 0 22px 60px rgba(0,0,0,.42),inset 0 1px rgba(255,255,255,.05); backdrop-filter: blur(30px) saturate(140%); animation: publication-menu-in .16s cubic-bezier(.2,.8,.2,1); }
[data-theme="light"] .publication-menu { background: rgba(252,252,253,.96); }
@keyframes publication-menu-in { from { opacity: 0; transform: translateY(5px) scale(.985); } }
.publication-status-row { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 12px; padding: 2px 2px 13px; border-bottom: 1px solid var(--line); color: var(--faint); font-size: 12px; }
.publication-status { color: var(--muted); font-size: 12px; white-space: nowrap; }
.publication-status.is-live { color: var(--success); }
.publication-status i { display: inline-block; width: 7px; height: 7px; margin-right: 5px; border-radius: 50%; background: currentColor; box-shadow: 0 0 8px currentColor; }
.publication-menu form,.delete-confirmation-actions form { margin: 0; }
.publication-menu form button { width: 100%; }
.publication-menu button:disabled { opacity: .48; cursor: not-allowed; transform: none; }
.publication-stop-button { color: var(--warning); }
.danger-button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 46px; flex: 0 0 auto; border: 1px solid rgba(255,69,58,.28); border-radius: 14px; padding: 0 18px; background: rgba(255,69,58,.12); color: #ff6961; box-shadow: none; font-size: 14px; font-weight: 680; cursor: pointer; transition: transform .18s,background .18s,border-color .18s; }
.danger-button:hover { border-color: rgba(255,69,58,.45); background: rgba(255,69,58,.19); transform: translateY(-1px); }
.danger-button:focus-visible { outline: 0; box-shadow: 0 0 0 4px rgba(255,69,58,.18); }
.delete-confirmation-actions .danger-button { border-color: var(--danger); background: var(--danger); color: #fff; }
.delete-confirmation-view { min-height: 288px; display: flex; flex-direction: column; justify-content: center; }
.delete-confirmation-copy h2 { margin: 0 0 9px; font-size: 30px; letter-spacing: -.045em; }
.delete-confirmation-copy p { margin: 0; color: var(--muted); line-height: 1.5; }
.delete-confirmation-actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 28px; }
.new-card { min-height: 286px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 9px; border: 1px dashed var(--line-strong); border-radius: 22px; color: var(--muted); text-decoration: none; transition: border .2s, background .2s; }
.new-card:hover { border-color: var(--orange); background: var(--orange-soft); color: var(--text); }
.new-card > span { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 15px; background: var(--panel-solid); color: var(--orange); font-size: 24px; }
.new-card small { color: var(--faint); }
.empty-state { margin-top: 60px; padding: 70px 30px; border-radius: 30px; text-align: center; }
.empty-state h2 { margin: 0; font-size: 36px; letter-spacing: -.05em; }
.empty-state p { max-width: 560px; margin: 14px auto 26px; color: var(--muted); line-height: 1.6; }
.empty-visual { width: 110px; height: 90px; display: grid; place-items: center; margin: 0 auto 28px; border: 1px solid var(--line); border-radius: 50%; transform: rotate(-8deg); }
.empty-visual span { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 16px; transform: rotate(8deg); background: var(--orange-soft); color: var(--orange); font-size: 25px; }

.plan-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 58px; }
.plan-grid-three { grid-template-columns: repeat(3,minmax(0,1fr)); margin-top: 30px; }
.billing-cycle-control { display: grid; justify-items: center; gap: 10px; margin-top: 30px; }
.billing-cycle-segments { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; border: 1px solid var(--line); border-radius: 16px; padding: 4px; background: var(--panel); box-shadow: 0 12px 38px rgba(0,0,0,.12); }
.billing-cycle-segments button { min-height: 42px; border: 0; border-radius: 12px; padding: 0 18px; background: transparent; color: var(--muted); font: 700 13px/1 inherit; cursor: pointer; transition: background .18s,color .18s,box-shadow .18s; }
.billing-cycle-segments button span { margin-left: 6px; color: var(--success); font-size: 10px; }
.billing-cycle-segments button.is-active { background: var(--bg-soft); color: var(--text); box-shadow: 0 2px 9px rgba(0,0,0,.16),inset 0 1px rgba(255,255,255,.05); }
.billing-cycle-segments button:focus-visible { outline: 0; box-shadow: 0 0 0 4px rgba(249,115,22,.18); }
.billing-cycle-control > p { margin: 0; color: var(--faint); font-size: 11px; }
.plan-card { position: relative; padding: 32px; border: 1px solid var(--line); border-radius: 28px; background: var(--panel); }
.plan-card.featured { border-color: rgba(249,115,22,.45); box-shadow: 0 20px 70px rgba(249,115,22,.10); }
.plan-card.current { box-shadow: inset 0 0 0 1px rgba(52,199,89,.35); }
.plan-label { color: var(--orange); font-size: 11px; font-weight: 750; text-transform: uppercase; letter-spacing: .1em; }
.plan-card h2 { margin: 15px 0 0; font-size: 28px; }
.price { margin: 10px 0 24px; font-size: 46px; font-weight: 750; letter-spacing: -.055em; }
.price small { color: var(--muted); font-size: 13px; font-weight: 500; }
.plan-pricing { min-height: 101px; }
.plan-pricing .price { margin-bottom: 8px; }
.yearly-saving { margin: 0 0 18px; color: var(--success); font-size: 11px; line-height: 1.4; }
.plan-pricing [hidden] { display: none; }
.plan-card ul { margin: 0 0 28px; padding: 0; list-style: none; }
.plan-card li { padding: 10px 0; color: var(--muted); border-bottom: 1px solid var(--line); font-size: 14px; }
.plan-card li::before { content: "✓"; margin-right: 9px; color: var(--orange); }
.plan-card button { width: 100%; min-height: 44px; border: 1px solid var(--line); border-radius: 13px; background: var(--bg-soft); color: var(--faint); }
.plan-card form { margin: 0; }
.plan-card .plan-action { color: var(--text); cursor: pointer; }
.plan-card .plan-action.primary { color: #fff; border-color: var(--orange); background: var(--orange); }
.subscription-summary { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 20px; margin-top: 42px; padding: 18px 22px; border: 1px solid var(--line); border-radius: 18px; background: var(--panel); color: var(--muted); font-size: 13px; }
.subscription-summary strong { color: var(--text); font-size: 18px; }
.billing-banner { margin-top: 30px; padding: 15px 18px; border: 1px solid rgba(255,159,10,.35); border-radius: 15px; background: rgba(255,159,10,.08); color: var(--muted); font-size: 14px; }
.billing-banner strong,.billing-banner span { display: block; }
.billing-banner strong { margin-bottom: 4px; color: var(--text); }
.billing-banner.success { border-color: rgba(52,199,89,.35); background: rgba(52,199,89,.08); }
.demo-billing-banner { border-color: rgba(249,115,22,.35); background: linear-gradient(120deg,rgba(249,115,22,.13),rgba(249,115,22,.045)); }
.subscription-ending { color: var(--warning); font-weight: 700; }
.billing-note { max-width: 760px; margin: 26px auto 0; color: var(--faint); text-align: center; font-size: 12px; line-height: 1.6; }
.subscription-management { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: end; gap: 40px; margin-top: 24px; border: 1px solid var(--line); border-radius: 24px; padding: 26px 28px; background: linear-gradient(135deg,rgba(255,255,255,.025),transparent 48%),var(--panel); }
.subscription-management h2 { margin: 9px 0 8px; font-size: 24px; letter-spacing: -.04em; }
.subscription-management p { max-width: 690px; margin: 0; color: var(--muted); font-size: 13px; line-height: 1.55; }
.subscription-management-actions { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 9px; }
.subscription-management-actions form { margin: 0; }
.subscription-management-actions :is(.primary-button,.secondary-button,.danger-button) { min-height: 43px; font-size: 12px; }
.billing-cancel-dialog { width: min(570px,calc(100% - 28px)); overflow: visible; border: 0; outline: 0; padding: 0; background: transparent; color: var(--text); }
.billing-cancel-dialog[open] { animation: settings-dialog-in .22s cubic-bezier(.2,.8,.2,1); }
.billing-cancel-dialog::backdrop { background: rgba(0,0,0,.68); backdrop-filter: blur(18px) saturate(115%); }
.billing-cancel-form { position: relative; overflow: hidden; border: 1px solid var(--line-strong); border-radius: 28px; padding: 32px; background: linear-gradient(145deg,rgba(255,69,58,.055),transparent 35%),rgba(28,28,30,.98); box-shadow: 0 36px 110px rgba(0,0,0,.58),inset 0 1px rgba(255,255,255,.055); }
[data-theme="light"] .billing-cancel-form { background: linear-gradient(145deg,rgba(255,69,58,.07),transparent 40%),rgba(250,250,252,.98); }
.billing-dialog-close { position: absolute; top: 18px; right: 18px; display: grid; place-items: center; width: 36px; height: 36px; border: 1px solid var(--line); border-radius: 50%; padding: 0 0 2px; background: rgba(118,118,128,.15); color: var(--muted); font-size: 22px; line-height: 1; cursor: pointer; }
.billing-dialog-close:hover { background: rgba(118,118,128,.26); color: var(--text); }
.billing-danger-icon { display: grid; place-items: center; width: 48px; height: 48px; margin-bottom: 23px; border: 1px solid rgba(255,69,58,.28); border-radius: 15px; background: rgba(255,69,58,.12); color: #ff6961; font-size: 23px; font-weight: 800; }
.billing-cancel-form h2 { margin: 10px 0 12px; font-size: 31px; letter-spacing: -.05em; }
.billing-cancel-form > p { margin: 0 0 24px; color: var(--muted); font-size: 13px; line-height: 1.6; }
.billing-confirm-label { display: block; margin-bottom: 9px; color: var(--muted); font-size: 12px; }
.billing-confirm-label strong { color: var(--text); }
.billing-cancel-form > input { box-sizing: border-box; width: 100%; height: 48px; border: 1px solid var(--line-strong); border-radius: 13px; outline: 0; padding: 0 14px; background: var(--bg-soft); color: var(--text); font: 650 14px/1 inherit; letter-spacing: .04em; }
.billing-cancel-form > input:focus { border-color: rgba(255,69,58,.68); box-shadow: 0 0 0 4px rgba(255,69,58,.12); }
.billing-cancel-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 28px -32px -32px; border-top: 1px solid var(--line); padding: 18px 32px 22px; background: rgba(0,0,0,.12); }
[data-theme="light"] .billing-cancel-actions { background: rgba(118,118,128,.055); }
.billing-cancel-actions :is(.secondary-button,.danger-button) { width: 100%; min-height: 46px; }
.billing-cancel-actions .danger-button { border-color: var(--danger); background: var(--danger); color: #fff; }
.billing-cancel-actions .danger-button:disabled { border-color: rgba(118,118,128,.18); background: rgba(118,118,128,.12); color: var(--faint); cursor: not-allowed; transform: none; }

.quiz-page { overflow-x: hidden; }
.quiz-page::after { content: ""; position: fixed; z-index: -1; right: -18vw; bottom: -30vh; width: 70vw; height: 70vh; background: radial-gradient(circle,rgba(249,115,22,.09),transparent 65%); }
.quiz-header { height: 72px; display: flex; align-items: center; justify-content: space-between; padding: 0 30px; border-bottom: 1px solid var(--line); }
.quiz-progress { position: fixed; z-index: 20; top: 71px; left: 0; width: 100%; height: 2px; background: var(--line); }
.quiz-progress i { display: block; width: 3%; height: 100%; background: var(--orange); box-shadow: 0 0 12px var(--orange); transition: width .5s cubic-bezier(.4,0,.2,1); }
.quiz-runtime { min-height: 0; display: grid; flex: 1 0 auto; place-items: center; padding: 54px 24px; }
.quiz-card { width: min(760px,100%); animation: quizIn .45s cubic-bezier(.2,.7,.2,1); }
@keyframes quizIn { from { opacity: 0; transform: translateY(12px) scale(.99); } }
.intro-card, .result-card { text-align: center; }
.intro-card h1 { margin: 0; font-size: clamp(46px,8vw,78px); line-height: .98; letter-spacing: -.065em; }
.intro-card > p { max-width: 620px; margin: 24px auto 0; color: var(--muted); font-size: 18px; line-height: 1.6; }
.quiz-facts { display: flex; justify-content: center; gap: 24px; margin: 28px 0; color: var(--faint); font-size: 13px; }
.quiz-start { min-height: 52px; padding: 0 22px; }
.intro-card > small { display: block; margin-top: 16px; color: var(--faint); }
.question-card { padding: 34px; border-radius: 30px; background: var(--panel); border: 1px solid var(--line); box-shadow: var(--shadow); backdrop-filter: blur(24px); }
.question-card[data-status="success"] { border-top-color: rgba(52,199,89,.5); }
.question-card[data-status="warning"] { border-top-color: rgba(255,159,10,.5); }
.question-card[data-status="danger"] { border-top-color: rgba(255,69,58,.5); }
.question-kicker { display: flex; justify-content: space-between; margin-bottom: 26px; color: var(--faint); font-size: 11px; text-transform: uppercase; letter-spacing: .09em; }
.question-image { overflow: hidden; margin: 0 0 24px; border: 1px solid var(--line); border-radius: 20px; background: var(--bg-soft); }
.question-image img { display: block; width: 100%; max-height: 420px; object-fit: contain; }
.result-image { width: min(620px,100%); margin: 0 auto 24px; }
.question-copy { font-size: clamp(24px,4vw,38px); line-height: 1.17; letter-spacing: -.045em; font-weight: 680; }
.question-copy p, .question-copy h1, .question-copy h2 { margin: 0 0 14px; }
.question-copy ul, .question-copy ol { font-size: .6em; line-height: 1.5; font-weight: 450; letter-spacing: 0; }
.question-copy a { color: var(--orange); }
.question-tooltip { color: var(--orange); border-bottom: 1px dashed currentColor; cursor: help; }
.answer-area { display: grid; gap: 11px; margin-top: 30px; }
.answer-button { min-height: 58px; display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 12px; padding: 13px 17px; border: 1px solid var(--line); border-radius: 16px; background: var(--bg-soft); color: var(--text); text-align: left; cursor: pointer; transition: transform .18s, border .18s, background .18s; }
.answer-button:hover { transform: translateY(-1px); border-color: rgba(249,115,22,.55); background: var(--orange-soft); }
.answer-button span { font-weight: 630; }
.answer-button small { grid-column: 1; color: var(--muted); }
.answer-button i { grid-column: 2; grid-row: 1 / span 2; color: var(--orange); font-style: normal; }
.number-answer { display: grid; grid-template-columns: 1fr auto; gap: 10px; }
.number-answer input { min-width: 0; border: 1px solid var(--line); border-radius: 14px; padding: 0 16px; background: var(--bg-soft); color: var(--text); outline: 0; }
.number-answer input:focus { border-color: var(--orange); box-shadow: 0 0 0 4px var(--orange-soft); }
.quiz-navigation { margin-top: 23px; }
.back-button { border: 0; background: none; color: var(--faint); padding: 5px 0; cursor: pointer; }
.back-button:hover { color: var(--text); }
.result-symbol { display: grid; place-items: center; width: 72px; height: 72px; margin: 0 auto 24px; border-radius: 22px; background: var(--orange-soft); color: var(--orange); font-size: 34px; }
.result-card[data-status="success"] .result-symbol { color: var(--success); background: rgba(52,199,89,.12); }
.result-card[data-status="warning"] .result-symbol { color: var(--warning); background: rgba(255,159,10,.12); }
.result-card[data-status="danger"] .result-symbol { color: var(--danger); background: rgba(255,69,58,.12); }
.result-card .question-copy { margin: 0 auto 30px; }
.quiz-footer { display: flex; min-height: 58px; align-items: center; justify-content: center; flex-wrap: wrap; gap: 5px 16px; border-top: 1px solid var(--line); padding: 7px 18px; color: var(--faint); text-align: center; font-size: 11px; }
.quiz-footer strong { color: var(--muted); }
.quiz-footer .legal-footer-links a { min-height: 32px; font-size: 11px; }
.runtime-tooltip { position: fixed; z-index: 100; width: min(340px,calc(100vw - 36px)); max-height: 260px; overflow: auto; padding: 15px; border: 1px solid var(--line-strong); border-radius: 15px; background: var(--panel-solid); color: var(--text); box-shadow: var(--shadow); font-size: 13px; line-height: 1.5; }
.response-save-status { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 20px 0 0; border-radius: 14px; padding: 12px 14px; background: rgba(118,118,128,.1); color: var(--muted); font-size: 13px; line-height: 1.4; }
.response-save-status.is-saved { background: rgba(48,209,88,.1); color: var(--success); }
.response-save-status.is-error { background: rgba(255,69,58,.1); color: #ff6961; }
.response-save-status button { flex: 0 0 auto; border: 1px solid currentColor; border-radius: 9px; padding: 7px 9px; background: transparent; color: inherit; font: 650 11px/1 inherit; cursor: pointer; }
.unavailable-runtime { place-items: center; }
.unavailable-card { text-align: center; }

.responses-shell { width: min(1180px,calc(100% - 40px)); margin: 0 auto; padding: 58px 0 100px; }
.responses-hero { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; margin-bottom: 30px; }
.responses-hero .back-link { display: inline-block; margin-bottom: 24px; color: var(--muted); text-decoration: none; font-size: 13px; font-weight: 650; }
.responses-hero .back-link:hover { color: var(--orange); }
.responses-hero h1 { margin: 7px 0 9px; font-size: clamp(34px,5vw,62px); letter-spacing: -.055em; }
.responses-hero p { margin: 0; color: var(--muted); }
.response-stats { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; margin-bottom: 28px; }
.response-stats div { display: grid; gap: 4px; border: 1px solid var(--line); border-radius: 18px; padding: 19px 20px; background: var(--panel); }
.response-stats strong { font-size: 27px; letter-spacing: -.04em; }
.response-stats span { color: var(--muted); font-size: 12px; }
.response-list { display: grid; gap: 10px; }
.response-item { overflow: hidden; border: 1px solid var(--line); border-radius: 18px; background: var(--panel); }
.response-item[open] { border-color: var(--line-strong); box-shadow: var(--shadow); }
.response-item summary { display: grid; grid-template-columns: minmax(0,1fr) minmax(140px,auto) auto; align-items: center; gap: 18px; padding: 18px 20px; list-style: none; cursor: pointer; }
.response-item summary::-webkit-details-marker { display: none; }
.response-person { display: grid; gap: 4px; min-width: 0; }
.response-person strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.response-person small { color: var(--muted); }
.response-result { justify-self: end; overflow: hidden; max-width: 340px; border-radius: 999px; padding: 7px 10px; background: rgba(118,118,128,.1); color: var(--muted); text-overflow: ellipsis; white-space: nowrap; font-size: 11px; font-weight: 700; }
.response-result.is-success { background: rgba(48,209,88,.1); color: var(--success); }
.response-result.is-warning { background: rgba(255,159,10,.1); color: var(--warning); }
.response-result.is-danger { background: rgba(255,69,58,.1); color: #ff6961; }
.response-detail { border-top: 1px solid var(--line); padding: 4px 20px 17px; background: rgba(0,0,0,.08); }
.response-detail dl { margin: 0; }
.response-detail dl div { display: grid; grid-template-columns: minmax(180px,1fr) minmax(180px,1fr); gap: 22px; padding: 15px 0; border-bottom: 1px solid var(--line); }
.response-detail dt { color: var(--muted); font-size: 12px; line-height: 1.45; }
.response-detail dd { margin: 0; font-size: 13px; font-weight: 650; line-height: 1.45; }
.response-detail footer { display: flex; justify-content: space-between; gap: 20px; padding-top: 14px; color: var(--faint); font-size: 10px; }
.response-empty { margin-top: 0; }
.invitation-overview { margin-top: 46px; }
.invitation-table-wrap { overflow-x: auto; border: 1px solid var(--line); border-radius: 18px; background: var(--panel); }
.invitation-table { width: 100%; border-collapse: collapse; font-size: 12px; }
.invitation-table th,.invitation-table td { padding: 13px 15px; border-bottom: 1px solid var(--line); text-align: left; white-space: nowrap; }
.invitation-table th { color: var(--faint); font-size: 10px; text-transform: uppercase; letter-spacing: .06em; }
.invitation-table tbody tr:last-child td { border-bottom: 0; }
.invite-error { color: #ff6961; font-weight: 700; }

.sr-only { position: absolute!important; width: 1px!important; height: 1px!important; padding: 0!important; margin: -1px!important; overflow: hidden!important; clip: rect(0,0,0,0)!important; white-space: nowrap!important; border: 0!important; }
.admin-shell { width: min(1480px,calc(100% - 48px)); margin: 0 auto; padding: 62px 0 100px; }
.admin-hero { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; }
.admin-hero h1 { margin: 0; font-size: clamp(46px,7vw,76px); line-height: .95; letter-spacing: -.065em; }
.admin-hero p { margin: 18px 0 0; color: var(--muted); font-size: 18px; }
.admin-access-pill { display: inline-flex; align-items: center; gap: 8px; border: 1px solid rgba(52,199,89,.18); border-radius: 999px; padding: 9px 13px; background: rgba(52,199,89,.08); color: var(--success); font-size: 12px; font-weight: 700; }
.admin-access-pill i { width: 7px; height: 7px; border-radius: 50%; background: currentColor; box-shadow: 0 0 10px currentColor; }
.admin-stats { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 12px; margin: 34px 0 30px; }
.admin-stats article { display: grid; min-width: 0; border: 1px solid var(--line); border-radius: 20px; padding: 20px; background: var(--panel); box-shadow: inset 0 1px rgba(255,255,255,.025); }
.admin-stats span { color: var(--muted); font-size: 11px; font-weight: 650; }
.admin-stats strong { margin: 8px 0 5px; font-size: 30px; line-height: 1; letter-spacing: -.045em; }
.admin-stats small { overflow: hidden; color: var(--faint); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.admin-directory { overflow: hidden; border: 1px solid var(--line); border-radius: 26px; background: var(--panel); box-shadow: var(--shadow); }
.admin-directory-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 26px; padding: 24px; border-bottom: 1px solid var(--line); }
.admin-directory-head h2 { margin: 0; font-size: 22px; letter-spacing: -.035em; }
.admin-directory-head p { margin: 5px 0 0; color: var(--faint); font-size: 11px; }
.admin-filters { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 8px; margin: 0; }
.admin-filters select,.admin-search { height: 42px; border: 1px solid var(--line); border-radius: 12px; background: var(--bg-soft); color: var(--text); }
.admin-filters select { min-width: 132px; padding: 0 34px 0 12px; outline: 0; cursor: pointer; font-size: 12px; }
.admin-search { display: flex; align-items: center; width: min(260px,30vw); padding: 0 12px; }
.admin-search > span:first-child { color: var(--faint); font-size: 20px; }
.admin-search input { min-width: 0; width: 100%; border: 0; outline: 0; padding: 0 0 0 8px; background: transparent; color: var(--text); font-size: 12px; }
.admin-search input::placeholder { color: var(--faint); }
.admin-filters .secondary-button { min-height: 42px; padding: 0 14px; border-radius: 12px; font-size: 12px; }
.admin-reset { color: var(--muted); padding: 0 4px; text-decoration: none; font-size: 11px; }
.admin-reset:hover { color: var(--text); }
.admin-table-wrap { overflow-x: auto; }
.admin-table { width: 100%; min-width: 1640px; border-collapse: collapse; font-size: 12px; }
.admin-table th { padding: 13px 16px; background: rgba(118,118,128,.055); color: var(--faint); text-align: left; text-transform: uppercase; letter-spacing: .06em; font-size: 9px; font-weight: 750; white-space: nowrap; }
.admin-table td { padding: 17px 16px; border-top: 1px solid var(--line); vertical-align: middle; }
.admin-table tbody tr { transition: background .16s; }
.admin-table tbody tr:hover { background: rgba(118,118,128,.045); }
.admin-customer { display: flex; align-items: center; gap: 11px; min-width: 230px; }
.admin-avatar { display: grid; place-items: center; flex: 0 0 auto; width: 36px; height: 36px; border-radius: 11px; background: var(--orange-soft); color: var(--orange); font-weight: 780; }
.admin-customer > span:last-child { display: grid; min-width: 0; gap: 4px; }
.admin-customer strong { max-width: 230px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; }
.admin-customer small { max-width: 230px; overflow: hidden; color: var(--faint); text-overflow: ellipsis; white-space: nowrap; font-size: 10px; }
.admin-role-form { display: flex; align-items: center; gap: 7px; margin: 0; }
.admin-role-form select { height: 34px; border: 1px solid var(--line); border-radius: 10px; outline: 0; padding: 0 27px 0 10px; background: var(--bg-soft); color: var(--text); font-size: 11px; font-weight: 650; }
.admin-role-form select:focus { border-color: var(--orange); box-shadow: 0 0 0 3px var(--orange-soft); }
.admin-role-form select:disabled { opacity: .72; }
.admin-role-form button { height: 34px; border: 0; border-radius: 10px; padding: 0 10px; background: var(--orange-soft); color: var(--orange); cursor: pointer; font-size: 10px; font-weight: 700; }
.admin-role-form button:hover { background: rgba(249,115,22,.22); }
.admin-you { border-radius: 999px; padding: 5px 8px; background: rgba(118,118,128,.1); color: var(--faint); font-size: 9px; font-weight: 700; }
.admin-plan-badge { display: inline-flex; border-radius: 999px; padding: 6px 9px; background: rgba(118,118,128,.11); color: var(--muted); font-size: 10px; font-weight: 700; }
.admin-plan-badge.is-paid { background: var(--orange-soft); color: var(--orange); }
.admin-cell-note { display: block; margin-top: 6px; max-width: 160px; overflow: hidden; color: var(--faint); text-overflow: ellipsis; white-space: nowrap; font-size: 9px; }
.admin-usage { display: grid; gap: 4px; min-width: 105px; color: var(--faint); font-size: 9px; }
.admin-usage strong { color: var(--muted); font-size: 10px; }
.admin-table time { display: grid; gap: 4px; color: var(--muted); white-space: nowrap; font-size: 11px; font-weight: 620; }
.admin-table time small { color: var(--faint); font-size: 9px; font-weight: 450; }
.admin-never { color: var(--faint); font-size: 10px; }
.admin-account-status { display: grid; gap: 5px; min-width: 86px; }
.admin-account-status > span { display: flex; align-items: center; gap: 6px; font-size: 10px; font-weight: 700; }
.admin-account-status i { width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.admin-account-status .is-ok { color: var(--success); }
.admin-account-status .is-off { color: var(--faint); }
.admin-account-status small { color: var(--faint); font-size: 9px; }
.admin-security-link { display: inline-flex; align-items: center; gap: 7px; height: 34px; border: 1px solid var(--line); border-radius: 10px; padding: 0 10px; background: rgba(118,118,128,.06); color: var(--muted); text-decoration: none; font-size: 10px; font-weight: 700; transition: border-color .18s,background .18s,color .18s; }
.admin-security-link svg { width: 16px; height: 16px; }
.admin-security-link:hover { border-color: rgba(249,115,22,.3); background: var(--orange-soft); color: var(--orange); }
.admin-pagination { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 20px; padding: 17px 22px; border-top: 1px solid var(--line); color: var(--faint); font-size: 10px; }
.admin-pagination a { color: var(--muted); text-decoration: none; font-weight: 650; }
.admin-pagination a:last-child { justify-self: end; }
.admin-pagination a:hover { color: var(--orange); }
.admin-empty { display: grid; place-items: center; padding: 70px 24px; text-align: center; }
.admin-empty > span { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 16px; background: var(--orange-soft); color: var(--orange); font-size: 26px; }
.admin-empty h3 { margin: 18px 0 6px; font-size: 20px; letter-spacing: -.03em; }
.admin-empty p { margin: 0; color: var(--muted); font-size: 12px; }

.admin-section-nav { display: inline-flex; align-items: center; gap: 4px; margin-top: 34px; border: 1px solid var(--line); border-radius: 15px; padding: 4px; background: rgba(118,118,128,.06); }
.admin-section-nav a { border-radius: 10px; padding: 9px 13px; color: var(--muted); text-decoration: none; font-size: 11px; font-weight: 680; transition: color .18s,background .18s,box-shadow .18s; }
.admin-section-nav a:hover { color: var(--text); background: rgba(118,118,128,.08); }
.admin-section-nav a.is-active { background: var(--panel-solid); color: var(--text); box-shadow: 0 3px 12px rgba(0,0,0,.14),inset 0 1px rgba(255,255,255,.04); }
.admin-hero-actions { align-items: center; }
.admin-stats-compact { grid-template-columns: repeat(2,minmax(0,220px)); }
.admin-company-form { display: grid; min-width: 230px; gap: 6px; margin: 0; }
.admin-company-form > div { display: flex; gap: 6px; }
.admin-company-form select { min-width: 0; height: 32px; border: 1px solid var(--line); border-radius: 9px; outline: 0; padding: 0 26px 0 9px; background: var(--bg-soft); color: var(--text); font-size: 10px; }
.admin-company-form > select { width: 100%; }
.admin-company-form > div select { flex: 1; }
.admin-company-form button { height: 32px; border: 0; border-radius: 9px; padding: 0 9px; background: var(--orange-soft); color: var(--orange); cursor: pointer; font-size: 9px; font-weight: 720; }
.admin-company-form > a { overflow: hidden; color: var(--faint); text-decoration: none; text-overflow: ellipsis; white-space: nowrap; font-size: 9px; }
.admin-company-form > a:hover { color: var(--orange); }
.admin-organization-grid { display: grid; }
.admin-organization-card { display: grid; grid-template-columns: auto minmax(250px,1fr) minmax(190px,280px) auto; align-items: center; gap: 18px; min-height: 112px; border-top: 1px solid var(--line); padding: 19px 23px; text-decoration: none; transition: background .18s; }
.admin-organization-card:first-child { border-top: 0; }
.admin-organization-card:hover { background: rgba(118,118,128,.055); }
.admin-company-mark { display: grid; place-items: center; width: 48px; height: 48px; border: 1px solid rgba(249,115,22,.16); border-radius: 15px; background: linear-gradient(145deg,var(--orange-soft),rgba(249,115,22,.05)); color: var(--orange); font-size: 18px; font-weight: 790; box-shadow: inset 0 1px rgba(255,255,255,.04); }
.admin-organization-copy { display: grid; min-width: 0; gap: 5px; }
.admin-organization-copy > strong { font-size: 14px; letter-spacing: -.02em; }
.admin-organization-copy > small { max-width: 720px; overflow: hidden; color: var(--muted); text-overflow: ellipsis; white-space: nowrap; font-size: 10px; line-height: 1.45; }
.admin-organization-copy > span { display: flex; align-items: center; gap: 5px; color: var(--faint); font-size: 9px; }
.admin-organization-copy b { color: var(--muted); }
.admin-organization-copy i { font-style: normal; }
.admin-organization-meta { display: grid; min-width: 0; justify-items: end; gap: 4px; text-align: right; }
.admin-organization-meta small,.admin-organization-meta time { color: var(--faint); font-size: 9px; }
.admin-organization-meta strong { max-width: 270px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 11px; }
.admin-card-arrow { color: var(--faint); font-size: 19px; transition: color .18s,transform .18s; }
.admin-organization-card:hover .admin-card-arrow { color: var(--orange); transform: translateX(3px); }
.admin-editor-shell { max-width: 1320px; padding-top: 38px; }
.admin-editor-shell > .admin-section-nav { margin-top: 0; }
.admin-editor-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin: 46px 0 28px; }
.admin-editor-head > div { min-width: 0; }
.admin-editor-head .eyebrow { margin-top: 24px; }
.admin-editor-head h1 { overflow-wrap: anywhere; margin: 0; font-size: clamp(40px,6vw,66px); line-height: .96; letter-spacing: -.06em; }
.admin-editor-head p { margin: 15px 0 0; color: var(--muted); font-size: 14px; }
.admin-back-link { color: var(--faint); text-decoration: none; font-size: 11px; font-weight: 650; }
.admin-back-link:hover { color: var(--orange); }
.admin-editor-grid { display: grid; grid-template-columns: minmax(340px,.83fr) minmax(500px,1.17fr); align-items: start; gap: 18px; }
.admin-editor-grid.is-single { grid-template-columns: minmax(0,720px); }
.admin-side-stack { display: grid; gap: 18px; }
.admin-form-card,.admin-info-card { overflow: hidden; border: 1px solid var(--line); border-radius: 25px; background: linear-gradient(145deg,rgba(255,255,255,.025),transparent 44%),var(--panel); box-shadow: inset 0 1px rgba(255,255,255,.025); }
.admin-form-card-head { display: flex; align-items: center; gap: 13px; border-bottom: 1px solid var(--line); padding: 20px 22px; }
.admin-form-card-head-action { justify-content: space-between; }
.admin-form-card-head > div { min-width: 0; }
.admin-form-card-head h2 { margin: 0; font-size: 18px; letter-spacing: -.035em; }
.admin-form-card-head p { margin: 5px 0 0; color: var(--muted); font-size: 10px; line-height: 1.45; }
.admin-form-icon { display: grid; flex: 0 0 auto; place-items: center; width: 38px; height: 38px; border-radius: 12px; background: var(--orange-soft); color: var(--orange); font-size: 17px; font-weight: 760; }
.secondary-button.compact { min-height: 36px; border-radius: 11px; padding: 0 12px; font-size: 10px; }
.admin-stacked-form { display: grid; gap: 19px; padding: 22px; }
.admin-stacked-form > label { display: grid; gap: 7px; color: var(--text); font-size: 11px; font-weight: 670; }
.admin-stacked-form > label > small { color: var(--faint); font-size: 9px; font-weight: 450; line-height: 1.45; }
.admin-stacked-form :is(input:not([type="checkbox"]),textarea,select),.admin-add-member select,.admin-member-row select { width: 100%; border: 1px solid var(--line); border-radius: 13px; outline: 0; padding: 12px 13px; background: var(--bg-soft); color: var(--text); font-size: 11px; transition: border-color .18s,box-shadow .18s; }
.admin-stacked-form textarea { min-height: 106px; resize: vertical; line-height: 1.5; }
.admin-stacked-form :is(input,textarea,select):focus,.admin-add-member select:focus,.admin-member-row select:focus { border-color: rgba(249,115,22,.68); box-shadow: 0 0 0 4px var(--orange-soft); }
.admin-stacked-form .errorlist { margin: 0; padding: 0; list-style: none; color: var(--danger); font-size: 10px; font-weight: 520; }
.form-errors { border: 1px solid rgba(255,69,58,.24); border-radius: 13px; padding: 11px 13px; background: rgba(255,69,58,.08); color: #ff6961; font-size: 10px; }
.admin-toggle-list { overflow: hidden; border: 1px solid var(--line); border-radius: 16px; }
.admin-toggle-row { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 14px; cursor: pointer; }
.admin-toggle-row + .admin-toggle-row { border-top: 1px solid var(--line); }
.admin-toggle-row > span { display: grid; gap: 4px; }
.admin-toggle-row strong { font-size: 10px; }
.admin-toggle-row small { color: var(--faint); font-size: 9px; font-weight: 450; line-height: 1.4; }
.admin-toggle-row input { position: relative; flex: 0 0 auto; appearance: none; width: 42px; height: 25px; border: 0; border-radius: 999px; background: rgba(120,120,128,.32); cursor: pointer; transition: background .2s; }
.admin-toggle-row input::after { content: ""; position: absolute; top: 3px; left: 3px; width: 19px; height: 19px; border-radius: 50%; background: #fff; box-shadow: 0 2px 7px rgba(0,0,0,.28); transition: transform .2s; }
.admin-toggle-row input:checked { background: var(--orange); }
.admin-toggle-row input:checked::after { transform: translateX(17px); }
.admin-form-actions { display: flex; justify-content: flex-end; gap: 9px; border-top: 1px solid var(--line); margin: 2px -22px -22px; padding: 16px 22px 20px; background: rgba(118,118,128,.035); }
.admin-member-list { display: grid; }
.admin-member-row { display: grid; grid-template-columns: auto minmax(150px,1fr) minmax(220px,auto) auto; align-items: center; gap: 10px; border-top: 1px solid var(--line); padding: 13px 18px; }
.admin-member-row:first-child { border-top: 0; }
.admin-member-identity { display: grid; min-width: 0; gap: 3px; }
.admin-member-identity strong,.admin-member-identity small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-member-identity strong { font-size: 11px; }
.admin-member-identity small { color: var(--faint); font-size: 9px; }
.admin-member-identity em { justify-self: start; border-radius: 999px; padding: 3px 6px; background: rgba(52,199,89,.09); color: var(--success); font-size: 8px; font-style: normal; font-weight: 720; }
.admin-member-row form { display: flex; align-items: center; gap: 6px; margin: 0; }
.admin-member-row select { min-width: 145px; height: 34px; padding: 0 28px 0 9px; border-radius: 9px; }
.admin-member-row form:nth-of-type(1) button { height: 34px; border: 0; border-radius: 9px; padding: 0 9px; background: var(--orange-soft); color: var(--orange); cursor: pointer; font-size: 9px; font-weight: 700; }
.admin-icon-danger { display: grid; place-items: center; width: 32px; height: 32px; border: 1px solid rgba(255,69,58,.18); border-radius: 9px; padding: 0 0 2px; background: rgba(255,69,58,.07); color: #ff6961; cursor: pointer; font-size: 18px; }
.admin-icon-danger:hover { background: rgba(255,69,58,.14); }
.admin-add-member { display: grid; grid-template-columns: minmax(180px,1fr) minmax(150px,.65fr) auto; align-items: end; gap: 8px; border-top: 1px solid var(--line); padding: 16px 18px 18px; }
.admin-add-member > div { display: grid; gap: 6px; }
.admin-add-member label { color: var(--faint); font-size: 9px; font-weight: 650; }
.admin-add-member select { height: 38px; padding: 0 28px 0 10px; border-radius: 10px; }
.admin-add-member .secondary-button { min-height: 38px; border-radius: 10px; font-size: 10px; }
.admin-inline-empty { padding: 25px 22px; color: var(--faint); font-size: 10px; }
.admin-invite-list { display: grid; }
.admin-invite-list > span { display: grid; gap: 4px; border-top: 1px solid var(--line); padding: 13px 20px; }
.admin-invite-list > span:first-child { border-top: 0; }
.admin-invite-list strong { font-size: 11px; }
.admin-invite-list small { color: var(--faint); font-size: 9px; }
.admin-organization-danger-card { border-color: rgba(255,69,58,.2); }
.admin-organization-danger-icon,.admin-organization-delete-icon { display: grid; flex: 0 0 auto; place-items: center; width: 38px; height: 38px; border-radius: 12px; background: rgba(255,69,58,.1); color: #ff6961; font-weight: 800; }
.admin-organization-danger-body { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 20px 22px; }
.admin-organization-danger-body p { margin: 0; color: var(--muted); font-size: 10px; line-height: 1.55; }
.admin-organization-danger-body .danger-button { min-height: 40px; border-radius: 12px; font-size: 11px; }
.admin-organization-delete-dialog { width: min(560px,calc(100% - 24px)); max-height: calc(100vh - 24px); overflow: auto; border: 0; outline: 0; padding: 0; background: transparent; color: var(--text); }
.admin-organization-delete-dialog[open] { animation: settings-dialog-in .22s cubic-bezier(.2,.8,.2,1); }
.admin-organization-delete-dialog::backdrop { background: rgba(0,0,0,.68); backdrop-filter: blur(18px) saturate(115%); animation: settings-backdrop-in .2s ease-out; }
.admin-organization-delete-form { position: relative; overflow: hidden; border: 1px solid var(--line-strong); border-radius: 28px; padding: 32px; background: linear-gradient(145deg,rgba(255,69,58,.055),transparent 35%),var(--panel-solid); box-shadow: 0 36px 110px rgba(0,0,0,.58),inset 0 1px rgba(255,255,255,.04); }
.admin-organization-delete-close { position: absolute; top: 18px; right: 18px; display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid var(--line); border-radius: 50%; padding: 0 0 2px; background: rgba(118,118,128,.14); color: var(--muted); cursor: pointer; font-size: 21px; line-height: 1; }
.admin-organization-delete-close:hover { background: rgba(118,118,128,.25); color: var(--text); }
.admin-organization-delete-close:focus-visible { outline: 0; box-shadow: 0 0 0 4px var(--orange-soft); }
.admin-organization-delete-form > h2 { margin: 23px 48px 9px 0; font-size: 29px; line-height: 1.08; letter-spacing: -.05em; }
.admin-organization-delete-form > p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.65; }
.admin-organization-delete-form > label { display: block; margin: 24px 0 8px; color: var(--muted); font-size: 11px; font-weight: 650; }
.admin-organization-delete-form > input { width: 100%; border: 1px solid var(--line); border-radius: 13px; outline: 0; padding: 12px 13px; background: var(--bg-soft); color: var(--text); font-size: 12px; transition: border-color .18s,box-shadow .18s; }
.admin-organization-delete-form > input:focus { border-color: rgba(255,69,58,.65); box-shadow: 0 0 0 4px rgba(255,69,58,.11); }
.admin-organization-delete-actions { display: grid; grid-template-columns: 1fr 1.25fr; gap: 10px; margin: 28px -32px -32px; border-top: 1px solid var(--line); padding: 18px 32px 22px; background: rgba(118,118,128,.035); }
.admin-organization-delete-actions :is(.secondary-button,.danger-button) { width: 100%; min-height: 43px; border-radius: 12px; font-size: 11px; }
.admin-organization-delete-actions .danger-button { border-color: var(--danger); background: var(--danger); color: #fff; }
.admin-organization-delete-actions .danger-button:disabled { border-color: rgba(118,118,128,.18); background: rgba(118,118,128,.12); color: var(--faint); cursor: not-allowed; opacity: .72; transform: none; }
.admin-invite-layout { display: grid; grid-template-columns: minmax(420px,700px) minmax(260px,360px); align-items: start; gap: 18px; }
.admin-info-card { padding: 24px; }
.admin-info-card > span { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: var(--orange-soft); color: var(--orange); font-size: 14px; font-weight: 750; }
.admin-info-card h2 { margin: 18px 0 10px; font-size: 18px; letter-spacing: -.035em; }
.admin-info-card p { margin: 10px 0 0; color: var(--muted); font-size: 11px; line-height: 1.6; }
.admin-security-shell { max-width: 1180px; }
.admin-security-head strong { color: var(--text); }
.admin-security-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); align-items: start; gap: 18px; }
.admin-security-card { min-height: 100%; }
.admin-security-card-body { display: grid; align-content: space-between; min-height: 230px; gap: 28px; padding: 22px; }
.admin-security-card-body p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.65; }
.admin-security-card-body p strong { color: var(--text); }
.admin-security-card-body .admin-security-warning { border: 1px solid rgba(255,159,10,.2); border-radius: 13px; padding: 11px 12px; background: rgba(255,159,10,.07); color: #ffb340; }
.admin-security-card-body form { margin: 0; }
.admin-security-card-body .primary-button { width: 100%; }
.admin-security-card-body .primary-button:disabled { cursor: not-allowed; filter: grayscale(.35); opacity: .45; }
.admin-password-note { margin: -4px 0 0; color: var(--faint); font-size: 9px; line-height: 1.55; }

/* Account menu and profile */
.account-menu { position: relative; }
.account-menu > summary { list-style: none; }
.account-menu > summary::-webkit-details-marker { display: none; }
.account-menu-trigger { display: flex; align-items: center; gap: 9px; min-height: 42px; border: 1px solid transparent; border-radius: 14px; padding: 4px 8px 4px 5px; color: var(--muted); cursor: pointer; transition: border-color .18s,background .18s,color .18s; }
.account-menu-trigger:hover,.account-menu[open] .account-menu-trigger { border-color: var(--line); background: rgba(118,118,128,.08); color: var(--text); }
.account-menu-trigger:focus-visible { outline: 0; border-color: rgba(249,115,22,.55); box-shadow: 0 0 0 4px var(--orange-soft); }
.account-menu-trigger-copy { max-width: 190px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; font-weight: 650; }
.account-menu-chevron { width: 14px; height: 14px; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; transition: transform .18s; }
.account-menu[open] .account-menu-chevron { transform: rotate(180deg); }
.account-avatar { position: relative; display: inline-grid; place-items: center; flex: 0 0 auto; overflow: hidden; width: 32px; height: 32px; border: 1px solid rgba(255,255,255,.1); border-radius: 50%; background: linear-gradient(145deg,var(--orange),#ff9f0a); color: #fff; box-shadow: inset 0 1px rgba(255,255,255,.18); font-size: 12px; font-weight: 790; }
[data-theme="light"] .account-avatar { border-color: rgba(0,0,0,.06); }
.account-avatar-fallback { position: relative; z-index: 0; }
.account-avatar img { position: absolute; z-index: 1; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.account-popover { position: absolute; z-index: 120; top: calc(100% + 11px); right: 0; width: min(318px,calc(100vw - 24px)); overflow: hidden; border: 1px solid var(--line-strong); border-radius: 21px; padding: 8px; background: color-mix(in srgb,var(--panel-solid) 92%,transparent); box-shadow: 0 28px 80px rgba(0,0,0,.42),inset 0 1px rgba(255,255,255,.055); backdrop-filter: blur(30px) saturate(140%); transform-origin: top right; animation: account-popover-in .18s cubic-bezier(.2,.8,.2,1); }
[data-theme="light"] .account-popover { box-shadow: 0 24px 70px rgba(0,0,0,.16),inset 0 1px rgba(255,255,255,.7); }
@keyframes account-popover-in { from { opacity: 0; transform: translateY(-5px) scale(.985); } }
.account-menu-identity { display: flex; align-items: center; gap: 12px; min-width: 0; border-bottom: 1px solid var(--line); padding: 11px 10px 15px; }
.account-menu-avatar-large { width: 43px; height: 43px; font-size: 16px; }
.account-menu-identity > span:last-child { display: grid; min-width: 0; gap: 4px; }
.account-menu-identity strong,.account-menu-identity small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.account-menu-identity strong { font-size: 12px; letter-spacing: -.015em; }
.account-menu-identity small { color: var(--faint); font-size: 10px; }
.account-menu-link { display: flex; align-items: center; gap: 11px; margin-top: 6px; border-radius: 13px; padding: 10px; color: var(--text); text-decoration: none; transition: background .16s; }
.account-menu-link:hover { background: rgba(118,118,128,.1); }
.account-menu-link:focus-visible,.account-menu-mobile-nav a:focus-visible,.account-menu-logout button:focus-visible { outline: 0; box-shadow: 0 0 0 3px var(--orange-soft); }
.account-menu-link > svg { flex: 0 0 auto; width: 20px; height: 20px; stroke: var(--orange); stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.account-menu-link > span { display: grid; gap: 3px; }
.account-menu-link strong { font-size: 11px; }
.account-menu-link small { color: var(--faint); font-size: 9px; }
.account-menu-logout { border-top: 1px solid var(--line); margin: 6px 0 0!important; padding-top: 6px; }
.account-menu-logout button { display: flex; align-items: center; gap: 11px; width: 100%; border: 0; border-radius: 13px; padding: 10px; background: transparent; color: #ff6961; cursor: pointer; text-align: left; font-size: 11px; font-weight: 650; transition: background .16s; }
.account-menu-logout button:hover { background: rgba(255,69,58,.09); }
.account-menu-logout svg { width: 20px; height: 20px; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.account-menu-mobile-nav { display: none; }

.profile-shell { width: min(1060px,calc(100% - 48px)); margin: 0 auto; padding: 62px 0 100px; }
.profile-hero { margin-bottom: 36px; }
.profile-hero h1 { margin: 0; font-size: clamp(48px,7vw,72px); line-height: .96; letter-spacing: -.065em; }
.profile-hero p { max-width: 680px; margin: 17px 0 0; color: var(--muted); font-size: 17px; line-height: 1.55; }
.profile-deletion-banner { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 15px; margin: -8px 0 25px; border: 1px solid rgba(255,159,10,.25); border-radius: 20px; padding: 16px 17px; background: linear-gradient(120deg,rgba(255,159,10,.11),rgba(255,159,10,.045)); box-shadow: inset 0 1px rgba(255,255,255,.035); }
.profile-deletion-banner-icon { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 12px; background: rgba(255,159,10,.14); color: var(--warning); font-size: 18px; font-weight: 800; }
.profile-deletion-banner > div { display: grid; gap: 4px; }
.profile-deletion-banner strong { font-size: 12px; }
.profile-deletion-banner div span { color: var(--muted); font-size: 10px; line-height: 1.5; }
.profile-deletion-banner .secondary-button { min-height: 39px; border-radius: 11px; font-size: 10px; }
.profile-layout { display: grid; grid-template-columns: minmax(210px,245px) minmax(0,1fr); align-items: start; gap: 22px; }
.profile-sidebar { position: sticky; top: 92px; overflow: hidden; border: 1px solid var(--line); border-radius: 23px; background: linear-gradient(145deg,rgba(255,255,255,.025),transparent 46%),var(--panel); box-shadow: inset 0 1px rgba(255,255,255,.025); }
.profile-sidebar-identity { display: flex; align-items: center; gap: 12px; min-width: 0; border-bottom: 1px solid var(--line); padding: 18px; }
.profile-sidebar-avatar { width: 46px; height: 46px; font-size: 17px; }
.profile-sidebar-identity > span:last-child { display: grid; min-width: 0; gap: 4px; }
.profile-sidebar-identity strong,.profile-sidebar-identity small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.profile-sidebar-identity strong { font-size: 11px; }
.profile-sidebar-identity small { color: var(--faint); font-size: 9px; }
.profile-section-nav { display: grid; gap: 3px; padding: 8px; }
.profile-section-nav a { border-radius: 12px; padding: 10px 11px; color: var(--muted); text-decoration: none; font-size: 10px; font-weight: 650; transition: background .16s,color .16s; }
.profile-section-nav a:hover { background: rgba(118,118,128,.09); color: var(--text); }
.profile-section-nav a:focus-visible { outline: 0; box-shadow: 0 0 0 3px var(--orange-soft); }
.profile-section-nav a.is-danger { color: #ff6961; }
.profile-content { display: grid; gap: 18px; min-width: 0; }
.profile-card { scroll-margin-top: 92px; overflow: hidden; border: 1px solid var(--line); border-radius: 27px; background: linear-gradient(145deg,rgba(255,255,255,.025),transparent 44%),var(--panel); box-shadow: inset 0 1px rgba(255,255,255,.025); }
.profile-card-header { display: flex; align-items: center; gap: 14px; border-bottom: 1px solid var(--line); padding: 21px 23px; }
.profile-card-header > div { min-width: 0; }
.profile-card-header h2 { margin: 0; font-size: 19px; letter-spacing: -.038em; }
.profile-card-header p { margin: 5px 0 0; color: var(--muted); font-size: 10px; line-height: 1.5; }
.profile-card-icon { display: grid; place-items: center; flex: 0 0 auto; width: 40px; height: 40px; border-radius: 13px; background: var(--orange-soft); color: var(--orange); font-size: 18px; font-weight: 800; }
.profile-card-icon svg { width: 21px; height: 21px; stroke: currentColor; stroke-width: 1.65; stroke-linecap: round; stroke-linejoin: round; }
.profile-card-body { padding: 23px; }
.profile-avatar-editor { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: 22px; border-bottom: 1px solid var(--line); margin: 0 -23px 23px; padding: 0 23px 23px; }
.profile-avatar-large { width: 104px; height: 104px; border: 3px solid rgba(255,255,255,.1); box-shadow: 0 15px 35px rgba(0,0,0,.2); font-size: 34px; }
[data-theme="light"] .profile-avatar-large { border-color: rgba(255,255,255,.8); box-shadow: 0 13px 30px rgba(0,0,0,.1); }
.profile-avatar-copy { min-width: 0; }
.profile-avatar-copy > strong { font-size: 13px; }
.profile-avatar-copy > p { max-width: 560px; margin: 6px 0 13px; color: var(--muted); font-size: 10px; line-height: 1.55; }
.profile-avatar-copy > small { display: block; margin-top: 8px; color: var(--faint); font-size: 9px; }
.profile-avatar-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.profile-avatar-actions form { margin: 0; }
.profile-upload-form { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.profile-file-field { display: flex; align-items: center; min-width: 0; gap: 8px; }
.profile-file-field input[type="file"] { position: absolute; width: 1px; height: 1px; overflow: hidden; margin: -1px; opacity: 0; }
.profile-file-field input[type="file"]:focus-visible + label { border-color: rgba(249,115,22,.65); box-shadow: 0 0 0 4px var(--orange-soft); }
.profile-file-field .secondary-button,.profile-upload-form > .primary-button { min-height: 38px; border-radius: 11px; padding: 0 13px; font-size: 10px; }
.profile-file-field > span { display: block; max-width: 150px; overflow: hidden; color: var(--faint); text-overflow: ellipsis; white-space: nowrap; font-size: 9px; }
.profile-file-field .errorlist { flex-basis: 100%; }
.profile-quiet-button { border: 0; border-radius: 10px; padding: 8px 9px; background: transparent; color: var(--muted); cursor: pointer; font-size: 10px; font-weight: 650; transition: background .16s,color .16s; }
.profile-quiet-button:hover { background: rgba(118,118,128,.08); color: var(--text); }
.profile-quiet-button:focus-visible { outline: 0; box-shadow: 0 0 0 3px var(--orange-soft); }
.profile-form { display: grid; gap: 18px; }
.profile-field { display: grid; gap: 7px; color: var(--text); font-size: 11px; font-weight: 670; }
.profile-field > span { display: flex; align-items: center; justify-content: space-between; }
.profile-field > small { color: var(--faint); font-size: 9px; font-weight: 450; line-height: 1.5; }
.profile-field :is(input:not([type="file"]),textarea,select) { width: 100%; border: 1px solid var(--line); border-radius: 14px; outline: 0; padding: 13px 14px; background: var(--bg-soft); color: var(--text); font-size: 12px; transition: border-color .18s,box-shadow .18s; }
.profile-field :is(input:not([type="file"]),textarea,select):focus { border-color: rgba(249,115,22,.7); box-shadow: 0 0 0 4px var(--orange-soft); }
.profile-field .errorlist,.profile-file-field .errorlist { margin: 0; padding: 0; list-style: none; color: #ff6961; font-size: 9px; font-weight: 520; }
.profile-form-errors { border: 1px solid rgba(255,69,58,.23); border-radius: 13px; padding: 11px 13px; background: rgba(255,69,58,.08); color: #ff6961; font-size: 10px; }
.profile-form-errors .errorlist { margin: 0; padding-left: 16px; }
.profile-form-note { margin: -3px 0 0; color: var(--faint); font-size: 9px; line-height: 1.55; }
.profile-form-actions { display: flex; justify-content: flex-end; border-top: 1px solid var(--line); margin: 3px -23px -23px; padding: 16px 23px 19px; background: rgba(118,118,128,.035); }
.profile-form-actions .primary-button { min-height: 41px; border-radius: 12px; font-size: 11px; }
.profile-current-value { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 5px 15px; border: 1px solid var(--line); border-radius: 15px; padding: 14px 15px; background: rgba(118,118,128,.045); }
.profile-current-value > span { grid-column: 1 / -1; color: var(--faint); font-size: 9px; font-weight: 650; text-transform: uppercase; letter-spacing: .055em; }
.profile-current-value strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; }
.profile-current-value small { display: inline-flex; align-items: center; gap: 5px; color: var(--success); font-size: 9px; font-weight: 650; }
.profile-current-value small i { width: 6px; height: 6px; border-radius: 50%; background: currentColor; box-shadow: 0 0 8px currentColor; }
.profile-current-value + .profile-form,.profile-current-value + .profile-pending-change { margin-top: 20px; }
.profile-pending-change { display: grid; grid-template-columns: auto minmax(0,1fr); gap: 12px; border: 1px solid rgba(255,159,10,.22); border-radius: 16px; padding: 15px; background: rgba(255,159,10,.07); }
.profile-pending-icon { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 11px; background: rgba(255,159,10,.13); color: var(--warning); font-weight: 750; }
.profile-pending-change strong { font-size: 11px; }
.profile-pending-change p { margin: 5px 0 0; color: var(--muted); font-size: 10px; line-height: 1.55; }
.profile-pending-change b { color: var(--text); }
.profile-inline-actions { display: flex; align-items: center; justify-content: flex-end; gap: 7px; margin-top: 14px; }
.profile-inline-actions form { margin: 0; }
.profile-inline-actions .secondary-button { min-height: 39px; border-radius: 11px; font-size: 10px; }
.profile-danger-card { border-color: rgba(255,69,58,.16); }
.profile-danger-card .profile-card-icon { background: rgba(255,69,58,.1); color: #ff6961; }
.profile-danger-body { display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.profile-danger-body > div { min-width: 0; }
.profile-danger-body > div > strong { font-size: 12px; }
.profile-danger-body > div > p { max-width: 600px; margin: 7px 0 0; color: var(--muted); font-size: 10px; line-height: 1.6; }
.profile-danger-body > form { flex: 0 0 auto; margin: 0; }
.profile-danger-body :is(.danger-button,.secondary-button) { min-height: 42px; border-radius: 12px; font-size: 11px; }
.profile-danger-body .danger-button:disabled { border-color: rgba(118,118,128,.16); background: rgba(118,118,128,.08); color: var(--faint); cursor: not-allowed; opacity: .7; transform: none; }
.profile-deletion-blockers { margin-top: 13px; border: 1px solid rgba(255,159,10,.19); border-radius: 13px; padding: 11px 12px; background: rgba(255,159,10,.055); }
.profile-deletion-blockers > strong { color: var(--warning); font-size: 9px; }
.profile-deletion-blockers ul { margin: 7px 0 0; padding-left: 17px; color: var(--muted); font-size: 9px; line-height: 1.55; }
.account-delete-dialog { width: min(540px,calc(100% - 24px)); max-height: calc(100vh - 24px); overflow: auto; border: 0; outline: 0; border-radius: 28px; padding: 0; background: transparent; color: var(--text); box-shadow: 0 34px 100px rgba(0,0,0,.5); }
.account-delete-dialog[open] { animation: settings-dialog-in .22s cubic-bezier(.2,.8,.2,1); }
.account-delete-dialog::backdrop { background: rgba(0,0,0,.62); backdrop-filter: blur(18px) saturate(120%); animation: settings-backdrop-in .2s ease-out; }
.account-delete-panel { position: relative; border: 1px solid var(--line-strong); border-radius: 28px; padding: 35px 31px 27px; background: linear-gradient(145deg,rgba(255,255,255,.04),transparent 42%),var(--panel-solid); box-shadow: inset 0 1px rgba(255,255,255,.045); }
.account-delete-close { position: absolute; top: 18px; right: 18px; display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid var(--line); border-radius: 50%; padding: 0 0 2px; background: rgba(118,118,128,.14); color: var(--muted); cursor: pointer; font-size: 21px; line-height: 1; }
.account-delete-close:hover { background: rgba(118,118,128,.25); color: var(--text); }
.account-delete-close:focus-visible { outline: 0; box-shadow: 0 0 0 4px var(--orange-soft); }
.account-delete-icon { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 15px; background: rgba(255,69,58,.11); color: #ff6961; font-size: 22px; font-weight: 800; }
.account-delete-panel > h2 { margin: 23px 50px 9px 0; font-size: 29px; line-height: 1.05; letter-spacing: -.05em; }
.account-delete-panel > p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.65; }
.account-delete-form { margin-top: 24px; }
.account-delete-actions { display: grid; grid-template-columns: 1fr 1.25fr; gap: 9px; border-top: 1px solid var(--line); margin: 5px -31px -27px; padding: 17px 31px 22px; background: rgba(118,118,128,.035); }
.account-delete-actions :is(.secondary-button,.danger-button) { width: 100%; min-height: 43px; border-radius: 12px; font-size: 11px; }
.account-delete-actions .danger-button { border-color: var(--danger); background: var(--danger); color: #fff; }
.email-change-result { position: relative; overflow: hidden; }
.email-change-result::before { content: ""; position: absolute; inset: 0 0 auto; height: 110px; background: radial-gradient(ellipse at 50% 0%,rgba(249,115,22,.13),transparent 72%); pointer-events: none; }
.email-change-result-icon.is-success { background: rgba(52,199,89,.12); color: var(--success); }

/* Company workspace */
.nav-count { display: inline-grid; place-items: center; min-width: 17px; height: 17px; margin-left: 5px; border-radius: 999px; padding: 0 5px; background: var(--orange); color: #fff; font-size: 9px; font-weight: 750; vertical-align: 1px; }
.company-shell { width: min(1320px,calc(100% - 48px)); margin: 0 auto; padding: 58px 0 100px; }
.company-hero,.company-page-heading,.company-assessment-hero { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; }
.company-hero > div,.company-page-heading > div,.company-assessment-hero > div { min-width: 0; }
.company-hero h1,.company-page-heading h1,.company-assessment-hero h1 { margin: 0; font-size: clamp(44px,7vw,76px); line-height: .96; letter-spacing: -.065em; }
.company-hero p,.company-page-heading p,.company-assessment-hero > div > p { max-width: 760px; margin: 18px 0 0; color: var(--muted); font-size: 17px; line-height: 1.55; }
.company-tabs { display: flex; align-items: center; gap: 5px; margin: 38px 0 28px; border: 1px solid var(--line); border-radius: 16px; padding: 5px; background: var(--panel); box-shadow: inset 0 1px rgba(255,255,255,.025); }
.company-tabs a { border-radius: 11px; padding: 10px 14px; color: var(--muted); text-decoration: none; font-size: 12px; font-weight: 650; transition: color .18s,background .18s,box-shadow .18s; }
.company-tabs a:hover { color: var(--text); background: rgba(118,118,128,.08); }
.company-tabs a.is-active { background: var(--bg-soft); color: var(--text); box-shadow: 0 2px 9px rgba(0,0,0,.15),inset 0 1px rgba(255,255,255,.04); }
.company-tabs a:last-child { margin-left: auto; }
.company-stats { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; overflow: hidden; margin-bottom: 54px; border: 1px solid var(--line); border-radius: 21px; background: var(--line); }
.company-stats article { display: grid; gap: 6px; padding: 22px 24px; background: var(--panel); }
.company-stats span { color: var(--muted); font-size: 11px; font-weight: 650; }
.company-stats strong { font-size: 28px; line-height: 1; letter-spacing: -.045em; }
.company-stats small { color: var(--faint); font-size: 10px; }
.company-section + .company-section { margin-top: 58px; }
.company-section-head { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 18px; }
.company-section-head .eyebrow { margin-bottom: 6px; font-size: 9px; }
.company-section-head h2 { margin: 0; font-size: 25px; letter-spacing: -.04em; }
.company-section-head > span { color: var(--faint); font-size: 11px; }
.company-assessment-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.company-assessment-card { overflow: hidden; border: 1px solid var(--line); border-radius: 22px; background: var(--panel); box-shadow: inset 0 1px rgba(255,255,255,.025); transition: transform .2s,border-color .2s,box-shadow .2s; }
.company-assessment-card:hover { transform: translateY(-3px); border-color: var(--line-strong); box-shadow: var(--shadow); }
.company-assessment-card > a { display: block; min-height: 250px; padding: 21px; color: inherit; text-decoration: none; }
.company-assessment-card header { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 31px; }
.company-assessment-icon { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 13px; background: var(--orange-soft); color: var(--orange); font-size: 20px; }
.company-assessment-card.is-shared .company-assessment-icon { background: rgba(10,132,255,.11); color: #2997ff; }
.company-access-badge { display: inline-flex; align-items: center; border-radius: 999px; padding: 6px 9px; background: rgba(118,118,128,.11); color: var(--muted); font-size: 9px; font-weight: 720; }
.company-access-badge.is-write,.company-access-badge.is-manage { background: var(--orange-soft); color: var(--orange); }
.company-access-badge.is-comment { background: rgba(10,132,255,.11); color: #2997ff; }
.company-assessment-card h3 { margin: 0; overflow: hidden; font-size: 21px; letter-spacing: -.035em; text-overflow: ellipsis; white-space: nowrap; }
.company-assessment-card p { min-height: 42px; margin: 9px 0 30px; overflow: hidden; color: var(--muted); font-size: 12px; line-height: 1.55; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.company-assessment-card footer { display: flex; align-items: center; justify-content: space-between; gap: 15px; color: var(--faint); font-size: 10px; }
.company-empty { display: grid; place-items: center; min-height: 270px; border: 1px dashed var(--line-strong); border-radius: 23px; padding: 30px; background: rgba(118,118,128,.025); text-align: center; }
.company-empty > span { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 17px; background: var(--orange-soft); color: var(--orange); font-size: 24px; }
.company-empty h3 { margin: 17px 0 6px; font-size: 19px; letter-spacing: -.03em; }
.company-empty p { margin: 0; color: var(--muted); font-size: 12px; }
.company-empty.is-compact { min-height: 190px; }

.company-onboarding-shell { width: min(1180px,calc(100% - 48px)); margin: 0 auto; padding: 70px 0 100px; }
.company-onboarding-card { display: grid; grid-template-columns: 1.12fr .88fr; overflow: hidden; border: 1px solid var(--line); border-radius: 32px; background: var(--panel); box-shadow: 0 35px 120px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.035); }
.company-onboarding-copy { position: relative; overflow: hidden; padding: 58px; background: radial-gradient(circle at 0 0,rgba(249,115,22,.17),transparent 43%),linear-gradient(145deg,rgba(255,255,255,.035),transparent 55%); }
.company-onboarding-copy::after { content: ""; position: absolute; right: -120px; bottom: -150px; width: 380px; height: 380px; border: 1px solid rgba(249,115,22,.13); border-radius: 50%; box-shadow: 0 0 0 55px rgba(249,115,22,.035),0 0 0 110px rgba(249,115,22,.018); pointer-events: none; }
.company-symbol { display: grid; place-items: center; width: 58px; height: 58px; margin-bottom: 48px; border-radius: 19px; background: linear-gradient(145deg,#ff9f0a,#f97316); color: #fff; box-shadow: 0 15px 38px rgba(249,115,22,.29); font-size: 26px; }
.company-onboarding-copy h1 { max-width: 650px; margin: 12px 0 20px; font-size: clamp(43px,5vw,67px); line-height: .98; letter-spacing: -.06em; }
.company-onboarding-copy > p { max-width: 590px; margin: 0; color: var(--muted); font-size: 16px; line-height: 1.6; }
.company-onboarding-copy ul { position: relative; z-index: 1; display: grid; gap: 12px; margin: 38px 0 0; padding: 0; list-style: none; color: var(--muted); font-size: 13px; }
.company-onboarding-copy li { display: flex; align-items: center; gap: 9px; }
.company-onboarding-copy li span { display: grid; place-items: center; width: 21px; height: 21px; border-radius: 50%; background: rgba(52,199,89,.13); color: var(--success); font-size: 10px; font-weight: 800; }
.company-onboarding-form-panel { display: flex; flex-direction: column; justify-content: center; border-left: 1px solid var(--line); padding: 52px 46px; background: rgba(0,0,0,.08); }
[data-theme="light"] .company-onboarding-form-panel { background: rgba(118,118,128,.035); }
.company-onboarding-form-panel h2 { margin: 8px 0 10px; font-size: 28px; letter-spacing: -.045em; }
.company-onboarding-form-panel > p { margin: 0 0 30px; color: var(--muted); font-size: 12px; line-height: 1.55; }
.company-form { display: grid; gap: 19px; }
.company-form label { display: grid; gap: 8px; color: var(--muted); font-size: 12px; font-weight: 650; }
.company-form label > span { display: flex; align-items: center; justify-content: space-between; }
.company-form label small { color: var(--faint); font-size: 10px; font-weight: 450; }
.company-form input,.company-form textarea,.company-form select { width: 100%; border: 1px solid var(--line); border-radius: 15px; outline: 0; padding: 13px 14px; background: rgba(0,0,0,.2); color: var(--text); box-shadow: inset 0 1px 2px rgba(0,0,0,.12); font-size: 14px; transition: border-color .18s,box-shadow .18s; }
[data-theme="light"] .company-form input,[data-theme="light"] .company-form textarea,[data-theme="light"] .company-form select { background: rgba(118,118,128,.06); box-shadow: none; }
.company-form input:focus,.company-form textarea:focus,.company-form select:focus { border-color: rgba(249,115,22,.72); box-shadow: 0 0 0 4px var(--orange-soft); }
.company-form textarea { min-height: 112px; resize: vertical; }
.company-form > .primary-button { width: 100%; margin-top: 4px; }
.company-form .errorlist,.company-invite-card .errorlist { margin: 0; padding: 0; color: #ff6961; list-style: none; font-size: 10px; font-weight: 650; }

.company-role-pill { display: inline-flex; align-items: center; gap: 8px; border: 1px solid rgba(52,199,89,.18); border-radius: 999px; padding: 9px 13px; background: rgba(52,199,89,.08); color: var(--success); font-size: 11px; font-weight: 700; }
.company-role-pill i { width: 7px; height: 7px; border-radius: 50%; background: currentColor; box-shadow: 0 0 9px currentColor; }
.company-settings-layout { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 16px; }
.company-settings-card,.company-billing-card,.company-invite-card,.company-directory-card,.company-comments { overflow: hidden; border: 1px solid var(--line); border-radius: 24px; background: var(--panel); box-shadow: inset 0 1px rgba(255,255,255,.025); }
.company-settings-card { padding: 25px; }
.company-settings-card > header,.company-invite-card > div:first-child { display: flex; align-items: center; gap: 13px; margin-bottom: 25px; }
.company-settings-card h2,.company-invite-card h2,.company-directory-card h2,.company-billing-card h2 { margin: 0; font-size: 19px; letter-spacing: -.035em; }
.company-settings-card header p,.company-invite-card > div:first-child p,.company-directory-card header p,.company-billing-card p { margin: 5px 0 0; color: var(--muted); font-size: 10px; line-height: 1.45; }
.company-settings-icon { display: grid; place-items: center; flex: 0 0 auto; width: 41px; height: 41px; border-radius: 13px; background: var(--orange-soft); color: var(--orange); font-size: 18px; }
.company-toggle-list { display: grid; gap: 1px; overflow: hidden; border: 1px solid var(--line); border-radius: 17px; background: var(--line); }
.company-toggle-row { display: flex; align-items: center; gap: 16px; padding: 16px; background: var(--bg-soft); cursor: pointer; }
.company-toggle-row > span { display: grid; flex: 1; gap: 5px; }
.company-toggle-row strong { font-size: 12px; }
.company-toggle-row small { color: var(--muted); font-size: 10px; font-weight: 450; line-height: 1.45; }
.company-toggle-row input { position: absolute; opacity: 0; pointer-events: none; }
.company-toggle-row > i { position: relative; flex: 0 0 auto; width: 44px; height: 27px; border-radius: 999px; background: rgba(120,120,128,.34); transition: background .18s; }
.company-toggle-row > i::after { content: ""; position: absolute; top: 3px; left: 3px; width: 21px; height: 21px; border-radius: 50%; background: #fff; box-shadow: 0 2px 7px rgba(0,0,0,.28); transition: transform .18s; }
.company-toggle-row input:checked + i { background: var(--orange); }
.company-toggle-row input:checked + i::after { transform: translateX(17px); }
.company-toggle-row input:focus-visible + i { box-shadow: 0 0 0 4px var(--orange-soft); }
.company-billing-card { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: 22px; padding: 23px 25px; background: linear-gradient(120deg,var(--orange-soft),var(--panel) 44%); }
.company-billing-card .eyebrow { margin-bottom: 7px; font-size: 9px; }
.company-settings-submit { grid-column: 1 / -1; display: flex; align-items: center; justify-content: flex-end; gap: 18px; padding-top: 4px; }
.company-settings-submit span { color: var(--faint); font-size: 10px; }

.company-invite-card { margin-bottom: 18px; padding: 25px; }
.company-invite-card > div:first-child { margin-bottom: 19px; }
.company-invite-form { display: grid; grid-template-columns: minmax(220px,1fr) 190px auto; align-items: end; gap: 10px; }
.company-invite-form label { display: grid; gap: 7px; color: var(--muted); font-size: 10px; font-weight: 650; }
.company-invite-form input,.company-invite-form select { height: 45px; width: 100%; border: 1px solid var(--line); border-radius: 13px; outline: 0; padding: 0 13px; background: var(--bg-soft); color: var(--text); }
.company-invite-form input:focus,.company-invite-form select:focus { border-color: var(--orange); box-shadow: 0 0 0 3px var(--orange-soft); }
.company-invite-form .primary-button { min-height: 45px; }
.company-directory-card + .company-directory-card { margin-top: 18px; }
.company-directory-card > header { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 20px 22px; border-bottom: 1px solid var(--line); }
.company-member-list { display: grid; }
.company-member-row { display: grid; grid-template-columns: auto minmax(180px,1fr) auto auto auto; align-items: center; gap: 13px; min-height: 72px; padding: 12px 17px; border-top: 1px solid var(--line); }
.company-member-row:first-child { border-top: 0; }
.company-member-avatar,.company-comment-avatar { display: grid; place-items: center; flex: 0 0 auto; width: 38px; height: 38px; border-radius: 12px; background: var(--orange-soft); color: var(--orange); font-size: 13px; font-weight: 780; }
.company-member-identity { display: grid; min-width: 0; gap: 4px; }
.company-member-identity strong,.company-member-identity small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.company-member-identity strong { font-size: 12px; }
.company-member-identity small { color: var(--faint); font-size: 10px; }
.company-member-badges { display: flex; align-items: center; flex-wrap: wrap; gap: 5px; }
.company-member-badges span,.company-role-label,.company-billing-owner-badge { border-radius: 999px; padding: 5px 8px; background: rgba(118,118,128,.11); color: var(--muted); font-size: 9px; font-weight: 680; white-space: nowrap; }
.company-billing-owner-badge { background: var(--orange-soft)!important; color: var(--orange)!important; }
.company-member-role-form { display: flex; align-items: center; gap: 6px; margin: 0; }
.company-member-role-form select { height: 35px; border: 1px solid var(--line); border-radius: 10px; outline: 0; padding: 0 26px 0 9px; background: var(--bg-soft); color: var(--text); font-size: 10px; }
.company-member-role-form button,.company-invite-action button { height: 35px; border: 0; border-radius: 10px; padding: 0 10px; background: var(--orange-soft); color: var(--orange); cursor: pointer; font-size: 9px; font-weight: 700; }
.company-member-remove-form { margin: 0; }
.company-member-remove-form button { display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid transparent; border-radius: 10px; padding: 0 0 2px; background: transparent; color: var(--faint); cursor: pointer; font-size: 19px; }
.company-member-remove-form button:hover { border-color: rgba(255,69,58,.22); background: rgba(255,69,58,.08); color: var(--danger); }
.company-delivery-status { display: grid; min-width: 130px; gap: 3px; }
.company-delivery-status strong { color: var(--success); font-size: 10px; }
.company-delivery-status small { max-width: 230px; overflow: hidden; color: var(--faint); text-overflow: ellipsis; white-space: nowrap; font-size: 9px; }
.company-delivery-status.is-failed strong { color: #ff6961; }

.company-detail-shell > .back-link { display: inline-flex; margin-bottom: 34px; }
.company-assessment-kicker { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; }
.company-assessment-kicker .eyebrow { margin: 0; }
.company-assessment-actions { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 9px; }
.company-share-button svg { width: 17px; height: 17px; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.company-assessment-facts { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1px; overflow: hidden; margin: 38px 0 24px; border: 1px solid var(--line); border-radius: 20px; background: var(--line); }
.company-assessment-facts > div { display: grid; gap: 7px; padding: 18px 20px; background: var(--panel); }
.company-assessment-facts span { color: var(--faint); font-size: 9px; text-transform: uppercase; letter-spacing: .05em; }
.company-assessment-facts strong { overflow: hidden; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.company-comments { padding: 0; }
.company-comments > header { display: flex; align-items: end; justify-content: space-between; gap: 20px; padding: 22px 24px; border-bottom: 1px solid var(--line); }
.company-comments > header .eyebrow { margin-bottom: 5px; font-size: 9px; }
.company-comments > header h2 { margin: 0; font-size: 23px; letter-spacing: -.04em; }
.company-comments > header > span { color: var(--faint); font-size: 10px; }
.company-comment-form { display: grid; gap: 9px; padding: 22px 24px; border-bottom: 1px solid var(--line); }
.company-comment-form > label { color: var(--muted); font-size: 11px; font-weight: 650; }
.company-comment-form textarea { min-height: 100px; resize: vertical; border: 1px solid var(--line); border-radius: 15px; outline: 0; padding: 13px 14px; background: var(--bg-soft); color: var(--text); line-height: 1.5; }
.company-comment-form textarea:focus { border-color: var(--orange); box-shadow: 0 0 0 4px var(--orange-soft); }
.company-comment-form > div { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.company-comment-form small { color: var(--faint); font-size: 9px; line-height: 1.4; }
.company-comment-form .primary-button { min-height: 40px; padding: 0 15px; font-size: 11px; }
.company-comment-list { display: grid; }
.company-comment { display: grid; grid-template-columns: auto minmax(0,1fr); gap: 13px; padding: 20px 24px; border-top: 1px solid var(--line); }
.company-comment:first-child { border-top: 0; }
.company-comment > div { min-width: 0; }
.company-comment > div > header { display: flex; align-items: baseline; flex-wrap: wrap; gap: 8px; }
.company-comment header strong { font-size: 11px; }
.company-comment header time { color: var(--faint); font-size: 9px; }
.company-comment p { margin: 8px 0 0; color: var(--muted); font-size: 12px; line-height: 1.58; overflow-wrap: anywhere; }
.company-comment footer { display: flex; gap: 8px; margin-top: 10px; }
.company-comment footer form { margin: 0; }
.company-comment footer button { border: 0; padding: 0; background: transparent; color: var(--faint); cursor: pointer; font-size: 9px; font-weight: 650; }
.company-comment footer button:hover { color: var(--text); }
.company-comment footer button.is-danger:hover { color: var(--danger); }
.company-feature-off { display: flex; align-items: center; gap: 13px; padding: 28px 24px; }
.company-feature-off > span { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 13px; background: rgba(118,118,128,.1); color: var(--faint); }
.company-feature-off strong { font-size: 12px; }
.company-feature-off p { margin: 4px 0 0; color: var(--muted); font-size: 10px; }

.company-invitation-shell { display: grid; place-items: center; min-height: calc(100vh - 147px); padding: 44px 20px; }
.company-invitation-card { width: min(520px,100%); border: 1px solid var(--line); border-radius: 30px; padding: 38px; background: linear-gradient(145deg,rgba(255,255,255,.035),transparent 42%),var(--panel); box-shadow: 0 35px 110px rgba(0,0,0,.32),inset 0 1px rgba(255,255,255,.035); text-align: center; }
.company-invitation-mark { display: grid; place-items: center; width: 55px; height: 55px; margin: 0 auto 27px; border-radius: 18px; background: linear-gradient(145deg,#ff9f0a,#f97316); color: #fff; box-shadow: 0 14px 34px rgba(249,115,22,.3); font-size: 24px; font-weight: 800; }
.company-invitation-card h1 { margin: 9px 0 13px; font-size: 34px; line-height: 1.08; letter-spacing: -.05em; }
.company-invitation-card > p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.6; }
.company-invitation-notice { display: grid; gap: 5px; margin: 28px 0 0; border: 1px solid rgba(52,199,89,.2); border-radius: 15px; padding: 13px; background: rgba(52,199,89,.08); text-align: left; }
.company-invitation-notice.is-warning { border-color: rgba(255,159,10,.22); background: rgba(255,159,10,.08); }
.company-invitation-notice strong { font-size: 11px; }
.company-invitation-notice span { color: var(--muted); font-size: 10px; line-height: 1.45; }
.company-invitation-actions { margin: 16px 0 0; }
.company-invitation-actions .primary-button,.company-invitation-actions .secondary-button { width: 100%; }
.company-invitation-divider { display: flex; align-items: center; gap: 12px; margin: 28px 0 20px; color: var(--faint); font-size: 9px; text-transform: uppercase; letter-spacing: .06em; }
.company-invitation-divider::before,.company-invitation-divider::after { content: ""; height: 1px; flex: 1; background: var(--line); }
.company-invitation-form { text-align: left; }
.company-invitation-form input:disabled { opacity: .68; }
.company-create-shell .create-card { width: min(680px,100%); }
.company-pending-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; margin-top: 38px; }
.company-pending-card { display: grid; grid-template-columns: auto minmax(0,1fr); gap: 18px; border: 1px solid var(--line); border-radius: 25px; padding: 25px; background: var(--panel); box-shadow: inset 0 1px rgba(255,255,255,.03); }
.company-pending-card .company-symbol { width: 48px; height: 48px; margin: 0; border-radius: 15px; font-size: 18px; }
.company-pending-card .eyebrow { margin-bottom: 7px; font-size: 9px; }
.company-pending-card h2 { margin: 0; font-size: 22px; letter-spacing: -.04em; }
.company-pending-card p { margin: 8px 0 0; color: var(--muted); font-size: 11px; line-height: 1.55; }
.company-pending-card footer { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 7px; border-top: 1px solid var(--line); padding-top: 17px; }
.company-pending-card footer > span { color: var(--faint); font-size: 9px; }
.company-pending-card .primary-button { min-height: 40px; padding: 0 14px; font-size: 11px; }

[hidden] { display: none!important; }

@media (max-width: 900px) {
  .auth-shell { grid-template-columns: 1fr; gap: 48px; padding-top: 50px; }
  .auth-copy { text-align: center; }
  .auth-copy > p { margin-left: auto; margin-right: auto; }
  .auth-orbit, .feature-pills { margin-left: auto; margin-right: auto; justify-content: center; }
  .auth-card { width: min(560px,100%); margin: 0 auto; }
  .assessment-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .admin-stats { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .admin-directory-head { align-items: stretch; flex-direction: column; }
  .admin-filters { justify-content: flex-start; }
  .admin-search { width: min(360px,100%); }
  .company-assessment-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .company-onboarding-card { grid-template-columns: 1fr; }
  .company-onboarding-form-panel { border-top: 1px solid var(--line); border-left: 0; }
  .company-settings-layout { grid-template-columns: 1fr; }
  .company-member-row { grid-template-columns: auto minmax(160px,1fr) auto; }
  .company-member-badges { justify-self: end; }
  .company-member-role-form,.company-delivery-status { grid-column: 2; }
  .company-member-remove-form { grid-column: 3; grid-row: 2; }
  .company-pending-grid { grid-template-columns: 1fr; }
  .profile-layout { grid-template-columns: 1fr; }
  .profile-sidebar { position: static; }
  .profile-sidebar-identity { padding-bottom: 14px; }
  .profile-section-nav { display: flex; overflow-x: auto; scrollbar-width: none; }
  .profile-section-nav::-webkit-scrollbar { display: none; }
  .profile-section-nav a { flex: 0 0 auto; }
}

@media (max-width: 640px) {
  .site-header { padding: 0 16px; gap: 12px; }
  .site-footer { width: min(100% - 28px,1240px); padding-bottom: 16px; }
  .site-footer-inner { align-items: flex-start; flex-direction: column; gap: 3px; padding-top: 13px; }
  .legal-footer-links { width: 100%; justify-content: flex-start; margin-left: -10px; }
  .main-nav, .user-name { display: none; }
  .header-actions { gap: 8px; }
  .account-menu-trigger { width: 42px; height: 42px; justify-content: center; padding: 4px; border-radius: 50%; }
  .account-menu-avatar { width: 32px; height: 32px; }
  .account-menu-trigger-copy,.account-menu-chevron { display: none; }
  .account-popover { position: fixed; top: 61px; right: 12px; width: min(330px,calc(100vw - 24px)); }
  .account-menu-mobile-nav { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 4px; border-bottom: 1px solid var(--line); padding: 6px 2px; }
  .account-menu-mobile-nav a { display: flex; align-items: center; justify-content: space-between; border-radius: 10px; padding: 9px 10px; color: var(--muted); text-decoration: none; font-size: 10px; font-weight: 650; }
  .account-menu-mobile-nav a:hover { background: rgba(118,118,128,.08); color: var(--text); }
  .account-menu-mobile-nav .nav-count { margin-left: 8px; }
  .workspace-shell { width: min(100% - 28px,1240px); padding-top: 42px; }
  .workspace-hero { align-items: flex-start; flex-direction: column; }
  .workspace-hero-actions { display: grid; grid-template-columns: 1fr; width: 100%; }
  .workspace-hero-actions > :is(a,button) { width: 100%; }
  .ai-create-dialog { width: calc(100% - 16px); max-height: calc(100vh - 16px); border-radius: 24px; }
  .ai-create-form { max-height: calc(100vh - 16px); }
  .ai-dialog-header { grid-template-columns: auto minmax(0,1fr) auto; gap: 12px; padding: 22px 18px 18px; }
  .ai-dialog-icon { width: 40px; height: 40px; border-radius: 12px; }
  .ai-dialog-header h2 { font-size: 23px; }
  .ai-dialog-header p { font-size: 12px; }
  .ai-dialog-body { padding: 20px 18px; }
  .ai-prompt-label { align-items: flex-start; flex-direction: column; gap: 4px; }
  .ai-prompt-wrap textarea { min-height: 160px; }
  .ai-web-search-option { align-items: flex-start; }
  .ai-option-icon { display: none; }
  .ai-dialog-footer { align-items: stretch; flex-direction: column; padding: 14px 18px 18px; }
  .ai-dialog-footer > div { display: grid; grid-template-columns: 1fr 1.25fr; }
  .ai-key-hint { display: none; }
  .workspace-stats { margin: 34px 0 46px; }
  .workspace-stats > div { padding: 17px 12px; }
  .workspace-stats strong { font-size: 18px; }
  .assessment-grid, .plan-grid, .plan-grid-three { grid-template-columns: 1fr; }
  .subscription-management { align-items: stretch; grid-template-columns: 1fr; gap: 22px; padding: 22px; }
  .subscription-management-actions { align-items: stretch; flex-direction: column; }
  .subscription-management-actions form,.subscription-management-actions :is(.primary-button,.secondary-button,.danger-button) { width: 100%; }
  .billing-cancel-form { padding: 27px 20px 20px; border-radius: 23px; }
  .billing-cancel-actions { margin: 25px -20px -20px; padding: 16px 20px 20px; }
  .assessment-settings-dialog { width: min(100% - 20px,620px); max-height: calc(100vh - 20px); }
  .settings-dialog-panel { padding: 62px 20px 20px; border-radius: 24px; }
  .settings-dialog-actions { align-items: stretch; flex-direction: column; }
  .settings-dialog-actions { margin: 26px -20px -20px; padding: 16px 20px 20px; border-radius: 0 0 24px 24px; }
  .settings-dialog-actions-left { display: grid; grid-template-columns: 1fr 1fr; }
  .settings-dialog-actions-left > :is(.danger-button,.branding-settings-button), .publication-menu-button, .settings-dialog-actions > .primary-button { width: 100%; }
  .publication-menu { width: min(330px,calc(100vw - 70px)); }
  .delete-confirmation-actions { flex-direction: column-reverse; }
  .delete-confirmation-actions form, .delete-confirmation-actions button { width: 100%; }
  .auth-shell { width: min(100% - 28px,1180px); }
  .auth-copy h1 { font-size: 45px; }
  .auth-card, .create-card, .state-card, .question-card { padding: 25px; border-radius: 22px; }
  .auth-guest-entry { margin-top: 21px; }
  .auth-choice-divider { gap: 10px; }
  .auth-guest-button { min-height: 48px; white-space: normal; }
  .legal-shell { width: min(100% - 28px,940px); padding: 44px 0 70px; }
  .legal-hero h1 { font-size: 46px; }
  .legal-hero > p { font-size: 15px; }
  .legal-demo-notice { padding: 15px; }
  .legal-document { border-radius: 22px; padding: 3px 20px; }
  .legal-section { padding: 25px 0; }
  .legal-section p,.legal-section li,.legal-address,.legal-facts { font-size: 13px; }
  .legal-facts > div { grid-template-columns: 1fr; gap: 2px; padding: 10px 0; }
  .quiz-header { padding: 0 16px; }
  .quiz-runtime { padding: 40px 14px; }
  .quiz-footer { align-items: center; flex-direction: column; gap: 0; padding: 9px 14px; }
  .quiz-footer .legal-footer-links { width: auto; margin-left: 0; }
  .quiz-facts { align-items: center; flex-direction: column; gap: 8px; }
  .number-answer { grid-template-columns: 1fr; }
  .number-answer input { height: 50px; }
  .responses-shell { width: min(100% - 24px,1180px); padding-top: 30px; }
  .responses-hero { align-items: stretch; flex-direction: column; }
  .response-stats { grid-template-columns: 1fr; }
  .response-item summary { grid-template-columns: minmax(0,1fr) auto; }
  .response-result { grid-column: 1; justify-self: start; }
  .response-item summary > span:last-child { grid-column: 2; grid-row: 1 / span 2; }
  .response-detail dl div { grid-template-columns: 1fr; gap: 7px; }
  .admin-shell { width: min(100% - 24px,1480px); padding-top: 36px; }
  .admin-hero { align-items: flex-start; flex-direction: column; }
  .admin-stats { grid-template-columns: 1fr 1fr; }
  .admin-stats article { padding: 16px; }
  .admin-filters label,.admin-filters select,.admin-filters .secondary-button { width: 100%; }
  .admin-search { max-width: none; }
  .company-shell,.company-onboarding-shell { width: min(100% - 24px,1320px); padding-top: 36px; }
  .company-hero,.company-page-heading,.company-assessment-hero { align-items: stretch; flex-direction: column; }
  .company-hero h1,.company-page-heading h1,.company-assessment-hero h1 { font-size: 45px; }
  .company-hero .primary-button,.company-page-heading > .secondary-button { width: 100%; }
  .company-tabs { overflow-x: auto; margin-top: 27px; scrollbar-width: none; }
  .company-tabs::-webkit-scrollbar { display: none; }
  .company-tabs a { flex: 0 0 auto; }
  .company-tabs a:last-child { margin-left: 0; }
  .company-stats { grid-template-columns: 1fr; }
  .company-assessment-grid { grid-template-columns: 1fr; }
  .company-onboarding-copy,.company-onboarding-form-panel { padding: 30px 22px; }
  .company-onboarding-copy h1 { font-size: 43px; }
  .company-symbol { margin-bottom: 32px; }
  .company-settings-card,.company-invite-card { padding: 20px; }
  .company-billing-card,.company-settings-submit,.company-comment-form > div { align-items: stretch; flex-direction: column; }
  .company-settings-submit .primary-button,.company-billing-card .secondary-button { width: 100%; }
  .company-invite-form { grid-template-columns: 1fr; }
  .company-invite-form .primary-button { width: 100%; }
  .company-member-row { grid-template-columns: auto minmax(0,1fr) auto; padding: 13px; }
  .company-member-badges { grid-column: 2; justify-self: start; }
  .company-member-role-form,.company-delivery-status { grid-column: 1 / -1; }
  .company-member-role-form select { flex: 1; }
  .company-member-remove-form { grid-column: 3; grid-row: 1; }
  .company-assessment-actions { display: grid; grid-template-columns: 1fr; }
  .company-assessment-actions a { width: 100%; }
  .company-assessment-facts { grid-template-columns: 1fr 1fr; }
  .company-comments > header,.company-comment-form,.company-comment { padding-right: 17px; padding-left: 17px; }
  .company-invitation-card { padding: 30px 21px; border-radius: 25px; }
  .company-pending-card footer { align-items: stretch; flex-direction: column; }
  .company-pending-card .primary-button { width: 100%; }
  .profile-shell { width: min(100% - 24px,1060px); padding: 38px 0 76px; }
  .profile-hero { margin-bottom: 27px; }
  .profile-hero h1 { font-size: 46px; }
  .profile-hero p { font-size: 14px; }
  .profile-deletion-banner { grid-template-columns: auto minmax(0,1fr); padding: 14px; }
  .profile-deletion-banner form { grid-column: 1 / -1; }
  .profile-deletion-banner .secondary-button { width: 100%; }
  .profile-sidebar-identity { padding: 15px; }
  .profile-card { border-radius: 23px; }
  .profile-card-header { align-items: flex-start; padding: 18px; }
  .profile-card-header h2 { font-size: 18px; }
  .profile-card-icon { width: 37px; height: 37px; border-radius: 12px; }
  .profile-card-body { padding: 18px; }
  .profile-avatar-editor { grid-template-columns: 1fr; justify-items: center; margin: 0 -18px 20px; padding: 0 18px 20px; text-align: center; }
  .profile-avatar-copy > p { margin-right: auto; margin-left: auto; }
  .profile-avatar-actions { justify-content: center; }
  .profile-upload-form { justify-content: center; }
  .profile-file-field > span { display: block; }
  .profile-form-actions { margin: 3px -18px -18px; padding: 15px 18px 18px; }
  .profile-form-actions .primary-button { width: 100%; }
  .profile-current-value { grid-template-columns: 1fr; }
  .profile-current-value small { justify-self: start; }
  .profile-inline-actions { align-items: stretch; flex-direction: column; }
  .profile-inline-actions form,.profile-inline-actions .secondary-button,.profile-inline-actions .profile-quiet-button { width: 100%; }
  .profile-danger-body { align-items: stretch; flex-direction: column; }
  .profile-danger-body > form,.profile-danger-body :is(.danger-button,.secondary-button) { width: 100%; }
  .account-delete-dialog { width: calc(100% - 16px); max-height: calc(100vh - 16px); border-radius: 23px; }
  .account-delete-panel { border-radius: 23px; padding: 30px 20px 20px; }
  .account-delete-panel > h2 { font-size: 26px; }
  .account-delete-actions { grid-template-columns: 1fr; margin: 4px -20px -20px; padding: 15px 20px 20px; }
}

@media (prefers-reduced-motion: reduce) {
  .auth-orbit::after,.auth-orbit-ring,.auth-orbit-ring b,.auth-orbit-ring b::after,.auth-orbit span { animation: none!important; will-change: auto; }
  *, *::before, *::after { scroll-behavior: auto!important; animation-duration: .01ms!important; transition-duration: .01ms!important; }
}

@media (max-width: 1050px) {
  .admin-editor-grid,.admin-invite-layout,.admin-security-grid { grid-template-columns: 1fr; }
  .admin-editor-grid.is-single { grid-template-columns: 1fr; }
}

@media (max-width: 720px) {
  .admin-section-nav { display: flex; overflow-x: auto; width: 100%; scrollbar-width: none; }
  .admin-section-nav::-webkit-scrollbar { display: none; }
  .admin-section-nav a { flex: 0 0 auto; }
  .admin-editor-head { align-items: flex-start; flex-direction: column; margin-top: 34px; }
  .admin-editor-head h1 { font-size: 43px; }
  .admin-organization-card { grid-template-columns: auto minmax(0,1fr) auto; padding: 17px; }
  .admin-organization-meta { display: none; }
  .admin-member-row { grid-template-columns: auto minmax(0,1fr) auto; }
  .admin-member-row form:first-of-type { grid-column: 2 / -1; }
  .admin-member-row form:first-of-type select { flex: 1; min-width: 0; }
  .admin-member-row form:last-of-type { grid-column: 3; grid-row: 1; }
  .admin-add-member { grid-template-columns: 1fr; }
  .admin-add-member .secondary-button { width: 100%; }
  .admin-form-card-head-action { align-items: stretch; flex-direction: column; }
  .admin-form-card-head-action .secondary-button { width: 100%; }
  .admin-form-actions { align-items: stretch; flex-direction: column-reverse; }
  .admin-form-actions :is(.primary-button,.secondary-button) { width: 100%; }
  .admin-organization-danger-body { align-items: stretch; flex-direction: column; }
  .admin-organization-danger-body .danger-button { width: 100%; }
  .admin-organization-delete-form { border-radius: 23px; padding: 30px 20px 20px; }
  .admin-organization-delete-form > h2 { font-size: 26px; }
  .admin-organization-delete-actions { grid-template-columns: 1fr; margin: 26px -20px -20px; padding: 15px 20px 20px; }
}
