:root {
  --sr-bg: #080a11;
  --sr-bg-2: #0d101a;
  --sr-surface: rgba(20, 23, 36, .92);
  --sr-surface-2: rgba(29, 34, 52, .96);
  --sr-text: #f4f5fb;
  --sr-muted: #a3a7ba;
  --sr-dim: #73798f;
  --sr-line: rgba(172, 182, 224, .16);
  --sr-violet: #825cf6;
  --sr-violet-2: #a383ff;
  --sr-cyan: #55e4ed;
  --sr-crimson: #d56a8f;
  --sr-shadow: 0 28px 70px rgba(0, 0, 0, .38);
}

html[data-stillroom-theme="sr-light"] {
  --sr-bg: #f3f5fa;
  --sr-bg-2: #ffffff;
  --sr-surface: rgba(255, 255, 255, .96);
  --sr-surface-2: rgba(244, 246, 253, .98);
  --sr-text: #121522;
  --sr-muted: #596174;
  --sr-dim: #778198;
  --sr-line: rgba(30, 41, 73, .14);
  --sr-violet: #6541e0;
  --sr-violet-2: #4e2dc4;
  --sr-cyan: #087f93;
  --sr-crimson: #a53b62;
  --sr-shadow: 0 28px 70px rgba(31, 44, 82, .14);
}

body.stillroom-clean-body {
  margin: 0 !important;
  min-width: 320px;
  color: var(--sr-text);
  background:
    radial-gradient(1000px 500px at 75% -10%, rgba(105, 69, 236, .22), transparent 60%),
    radial-gradient(700px 420px at 8% 34%, rgba(43, 205, 218, .08), transparent 66%),
    var(--sr-bg);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  line-height: 1.55;
}
body.stillroom-clean-body *, body.stillroom-clean-body *:before, body.stillroom-clean-body *:after { box-sizing: border-box; }
body.stillroom-clean-body a { color: inherit; }
body.stillroom-clean-body #page, body.stillroom-clean-body .site, body.stillroom-clean-body .site-content, body.stillroom-clean-body .entry-content { max-width: none !important; width: auto !important; padding: 0 !important; margin: 0 !important; }
body.stillroom-clean-body .site-header, body.stillroom-clean-body .site-footer, body.stillroom-clean-body .entry-header, body.stillroom-clean-body .wp-site-blocks > header, body.stillroom-clean-body .wp-site-blocks > footer { display: none !important; }
body.stillroom-clean-body .sr-app { overflow: hidden; min-height: 100vh; }
body.stillroom-clean-body .sr-container { width: min(1180px, calc(100% - 48px)); margin: 0 auto; }
body.stillroom-clean-body .sr-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

.sr-header { position: relative; z-index: 20; border-bottom: 1px solid var(--sr-line); background: color-mix(in srgb, var(--sr-bg) 84%, transparent); backdrop-filter: blur(14px); }
.sr-nav-wrap { min-height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 22px; }
.sr-brand { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; font-weight: 800; font-size: 13px; letter-spacing: .16em; white-space: nowrap; }
.sr-mark { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 29px; height: 31px; border: 1.5px solid var(--sr-cyan); border-radius: 9px 9px 7px 7px; box-shadow: 0 0 0 3px rgba(85, 228, 237, .07); }
.sr-mark:before { content:""; position:absolute; bottom: -1px; width: 16px; height: 10px; border: 1.5px solid var(--sr-cyan); border-top: 0; border-radius: 0 0 7px 7px; }
.sr-mark span { width: 2px; height: 10px; border-radius: 99px; background: var(--sr-violet-2); box-shadow: -5px 3px 0 var(--sr-violet-2), 5px -2px 0 var(--sr-violet-2); }
.sr-navigation { display: flex; gap: 20px; align-items: center; font-size: 14px; color: var(--sr-muted); }
.sr-navigation > a { text-decoration: none; transition: color .2s ease; }
.sr-navigation > a:hover, .sr-navigation > a.is-active { color: var(--sr-text); }
.sr-nav-cta { border: 1px solid rgba(130, 92, 246, .55); border-radius: 10px; padding: 10px 14px; color: var(--sr-text) !important; background: rgba(130, 92, 246, .13); }
.sr-theme-toggle { width: 34px; height: 34px; border: 1px solid var(--sr-line); background: transparent; color: var(--sr-text); border-radius: 50%; cursor: pointer; font-size: 17px; }
.sr-theme-toggle:hover { border-color: var(--sr-cyan); color: var(--sr-cyan); }
.sr-nav-toggle { display: none; width: 42px; height: 42px; background: transparent; border: 1px solid var(--sr-line); border-radius: 10px; cursor: pointer; padding: 9px; }
.sr-nav-toggle i { display:block; height: 2px; background: var(--sr-text); margin: 4px 0; border-radius: 99px; }

.sr-main { min-height: 70vh; }
.sr-hero { position: relative; padding: clamp(70px, 11vw, 148px) 0 clamp(72px, 9vw, 120px); isolation: isolate; }
.sr-hero:before { content:""; position:absolute; z-index:-1; left: -10%; top: 5%; width: 70%; height: 80%; background-image: radial-gradient(rgba(149, 133, 255, .16) 1px, transparent 1px); background-size: 13px 13px; mask-image: radial-gradient(circle at center, #000 18%, transparent 70%); opacity: .42; pointer-events:none; }
.sr-hero-grid { display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; gap: clamp(42px, 7vw, 110px); }
.sr-eyebrow { margin: 0 0 16px; color: var(--sr-cyan); font-size: 11px; text-transform: uppercase; font-weight: 800; letter-spacing: .16em; }
.sr-hero h1, .sr-section-heading h1 { margin: 0; font-size: clamp(48px, 6.1vw, 84px); line-height: .98; letter-spacing: -.065em; font-weight: 720; text-wrap: balance; }
.sr-lead { max-width: 610px; margin: 26px 0 0; font-size: clamp(17px, 1.6vw, 20px); line-height: 1.65; color: var(--sr-muted); }
.sr-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.sr-button { display: inline-flex; min-height: 47px; align-items: center; justify-content: center; gap: 10px; padding: 12px 18px; border-radius: 10px; border: 1px solid transparent; text-decoration: none; font: inherit; font-weight: 750; cursor: pointer; transition: transform .2s ease, box-shadow .2s ease, border .2s ease, background .2s ease; }
.sr-button:hover { transform: translateY(-2px); }
.sr-button-primary { color: #fff !important; background: linear-gradient(135deg, #6540da, #8b66f6 58%, #66e0e9); box-shadow: 0 12px 36px rgba(100, 64, 218, .34); }
.sr-button-primary:hover { box-shadow: 0 16px 42px rgba(100, 64, 218, .46); }
.sr-button-ghost { color: var(--sr-text) !important; background: rgba(255,255,255,.035); border-color: var(--sr-line); }
.sr-button-ghost:hover { border-color: rgba(85,228,237,.65); background: rgba(85,228,237,.08); }
.sr-privacy-line { display: flex; align-items: center; gap: 9px; margin-top: 28px; color: var(--sr-dim); font-size: 13px; }
.sr-lock { font-size: 16px; color: var(--sr-cyan); }

.sr-hero-panel { padding: 22px; border: 1px solid rgba(171, 170, 255, .18); min-height: 350px; border-radius: 20px; background: linear-gradient(145deg, rgba(18, 20, 33, .98), rgba(12, 21, 30, .94)); box-shadow: var(--sr-shadow), inset 0 1px 0 rgba(255,255,255,.04); position:relative; overflow:hidden; }
.sr-hero-panel:after { content:""; position:absolute; inset:0; pointer-events:none; opacity:.3; background-image: linear-gradient(rgba(255,255,255,.022) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.02) 1px, transparent 1px); background-size: 6px 6px; mix-blend-mode: screen; }
.sr-panel-top, .sr-panel-foot { position:relative; z-index:1; display:flex; gap:10px; align-items:center; font-size: 10px; font-weight: 750; letter-spacing: .13em; color: #d8d8e4; }
.sr-live-dot { width: 8px; height: 8px; border-radius:50%; background: var(--sr-cyan); box-shadow: 0 0 0 4px rgba(85,228,237,.13); animation: sr-pulse 2s infinite; }
.sr-panel-private { margin-left:auto; padding: 5px 8px; border: 1px solid rgba(85,228,237,.32); border-radius:99px; color:var(--sr-cyan); }
.sr-wave { position: relative; z-index:1; height: 90px; margin: 45px 0 20px; display:flex; align-items:center; justify-content:center; gap: 6px; }
.sr-wave i { width: 5px; min-height: 9px; background: linear-gradient(var(--sr-cyan), var(--sr-violet-2)); border-radius: 99px; opacity:.9; animation: sr-wave 1.4s ease-in-out infinite alternate; }
.sr-wave i:nth-child(1){height:19px;animation-delay:-.7s}.sr-wave i:nth-child(2){height:42px;animation-delay:-.2s}.sr-wave i:nth-child(3){height:68px;animation-delay:-.9s}.sr-wave i:nth-child(4){height:35px;animation-delay:-.35s}.sr-wave i:nth-child(5){height:76px;animation-delay:-.55s}.sr-wave i:nth-child(6){height:48px;animation-delay:-.1s}.sr-wave i:nth-child(7){height:28px;animation-delay:-.8s}.sr-wave i:nth-child(8){height:57px;animation-delay:-.25s}.sr-wave i:nth-child(9){height:74px;animation-delay:-.6s}.sr-wave i:nth-child(10){height:37px;animation-delay:-.5s}.sr-wave i:nth-child(11){height:62px;animation-delay:-.15s}.sr-wave i:nth-child(12){height:23px;animation-delay:-.95s}
.sr-panel-prompt { position:relative; z-index:1; max-width:390px; margin:0; font-size: clamp(21px, 2.6vw, 31px); line-height:1.18; letter-spacing:-.04em; font-weight:650; }
.sr-panel-actions { position:relative; z-index:1; display:flex; flex-wrap:wrap; gap:8px; margin-top:22px; }
.sr-panel-actions span { border-radius: 99px; padding: 7px 9px; border:1px solid rgba(255,255,255,.11); color:#aeb0c3; font-size: 11px; }
.sr-panel-foot { margin-top: 30px; padding-top: 15px; border-top:1px solid rgba(255,255,255,.08); color:#8c91a6; letter-spacing:0; font-weight:500; }
.sr-panel-status { margin-left:auto; color: var(--sr-cyan); }

.sr-section { padding: clamp(64px, 8vw, 112px) 0; }
.sr-soft-section { background: linear-gradient(180deg, rgba(144, 119, 238, .045), rgba(85, 228, 237, .02)); border-block: 1px solid var(--sr-line); }
.sr-feature-grid { display:grid; grid-template-columns: repeat(4,1fr); gap: 16px; }
.sr-feature, .sr-content-card, .sr-download-card, .sr-auth-card, .sr-lobby-card { padding: 26px; border: 1px solid var(--sr-line); border-radius: 16px; background: var(--sr-surface); box-shadow: inset 0 1px 0 rgba(255,255,255,.03); }
.sr-feature:hover, .sr-content-card:hover { border-color: rgba(130, 92, 246, .36); }
.sr-feature-icon { display:flex; align-items:center; justify-content:center; width:40px; height:40px; border-radius:12px; color:var(--sr-cyan); background:rgba(85,228,237,.08); font-weight:800; font-size:21px; }
.sr-feature h2, .sr-content-card h3 { margin:18px 0 8px; font-size:18px; letter-spacing:-.03em; }
.sr-feature p, .sr-content-card p { margin:0; color:var(--sr-muted); font-size:14px; }
.sr-story-grid { display:grid; grid-template-columns: .9fr 1.1fr; gap: clamp(52px, 10vw, 150px); align-items:start; }
.sr-story-grid h2, .sr-callout h2, .sr-two-up h2, .sr-safety-grid h2, .sr-download-card h2, .sr-auth-card h2, .sr-lobby-card h2, .sr-policy-content h2 { margin:0; font-size:clamp(32px, 3.3vw, 48px); line-height:1.08; letter-spacing:-.05em; }
.sr-story-grid > div > p:not(.sr-eyebrow), .sr-callout p:not(.sr-eyebrow), .sr-safety-grid p, .sr-download-card p, .sr-auth-card p, .sr-lobby-card p { color:var(--sr-muted); font-size:17px; line-height:1.7; }
.sr-text-link { display:inline-flex; gap:7px; margin-top:22px; color:var(--sr-cyan); text-decoration:none; font-weight:700; }
.sr-text-link:hover { text-decoration:underline; }
.sr-steps { padding:0; margin:0; list-style:none; counter-reset: steps; border-top:1px solid var(--sr-line); }
.sr-steps li { display:grid; grid-template-columns: 70px 1fr; gap:14px; padding:22px 0; border-bottom:1px solid var(--sr-line); }
.sr-steps span, .sr-timeline span { color:var(--sr-violet-2); font-weight:800; letter-spacing:.08em; }
.sr-steps h3 { margin:0; font-size:18px; }
.sr-steps p { margin:6px 0 0; color:var(--sr-muted); }
.sr-callout-section { padding-block: clamp(70px, 9vw, 120px); }
.sr-callout { display:flex; align-items:center; justify-content:space-between; gap:32px; padding:clamp(32px, 5vw, 62px); border:1px solid rgba(130,92,246,.26); border-radius:22px; background:radial-gradient(circle at 100% 0%, rgba(130,92,246,.22), transparent 44%), var(--sr-surface); box-shadow:var(--sr-shadow); }
.sr-callout .sr-actions { margin-top:0; }

.sr-page-hero { padding: clamp(65px, 10vw, 120px) 0 54px; border-bottom:1px solid var(--sr-line); background: radial-gradient(650px 340px at 84% -20%, rgba(85,228,237,.13), transparent 60%); }
.sr-section-heading { max-width: 800px; }
.sr-section-heading h1 { font-size:clamp(42px,5.7vw,72px); }
.sr-section-heading > p:last-child { margin:22px 0 0; font-size:18px; color:var(--sr-muted); max-width:700px; }
.sr-timeline { display:grid; grid-template-columns: repeat(2, 1fr); gap:16px; }
.sr-timeline > div { padding:28px; border-radius:16px; border:1px solid var(--sr-line); background:var(--sr-surface); }
.sr-timeline h2 { margin:16px 0 8px; font-size:23px; letter-spacing:-.04em; }
.sr-timeline p { margin:0; color:var(--sr-muted); }
.sr-two-up, .sr-safety-grid, .sr-contact-wrap, .sr-register-grid, .sr-download-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:28px; }
.sr-check-list { list-style:none; padding:0; margin:24px 0 0; }
.sr-check-list li { position:relative; padding-left:29px; margin:14px 0; color:var(--sr-muted); }
.sr-check-list li:before { content:""; position:absolute; left:0; top:.45em; width:11px; height:6px; border-left:2px solid var(--sr-cyan); border-bottom:2px solid var(--sr-cyan); transform:rotate(-45deg); }
.sr-subhead { margin:0 0 24px; font-size:28px; letter-spacing:-.04em; }
.sr-card-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.sr-policy-content { max-width:860px; }
.sr-policy-content > p { font-size:17px; line-height:1.75; color:var(--sr-muted); }
.sr-policy-content h2:not(.sr-policy-box h2) { font-size:30px; margin-top:44px; }
.sr-policy-box { margin-top:40px; padding:28px; border:1px solid rgba(130,92,246,.3); border-radius:16px; background:linear-gradient(135deg, rgba(130,92,246,.12), rgba(85,228,237,.04)); }
.sr-policy-box h2 { font-size:24px; }
.sr-policy-box p { color:var(--sr-muted); margin-bottom:0; }
.sr-crisis-box { border-color:rgba(213,106,143,.45); background:linear-gradient(135deg, rgba(213,106,143,.12), rgba(130,92,246,.05)); }

.sr-contact-wrap { align-items:start; }
.sr-contact-copy { padding:10px 0; }
.sr-contact-copy h2 { margin:0; font-size:36px; letter-spacing:-.05em; }
.sr-contact-copy p { font-size:17px; color:var(--sr-muted); }
.sr-form { display:grid; gap:15px; padding:28px; border-radius:16px; background:var(--sr-surface); border:1px solid var(--sr-line); }
.sr-form label { color:var(--sr-text); font-size:13px; font-weight:700; }
.sr-form input, .sr-form textarea { display:block; width:100%; margin-top:7px; padding:12px 13px; border-radius:9px; border:1px solid var(--sr-line); color:var(--sr-text); background:rgba(255,255,255,.025); font:inherit; }
.sr-form input:focus, .sr-form textarea:focus { outline:2px solid var(--sr-cyan); outline-offset:2px; border-color:transparent; }
.sr-success, .sr-error { padding:12px 14px; border-radius:9px; font-size:14px; }
.sr-success { color:#aef5cc; background:rgba(51,159,103,.17); border:1px solid rgba(90,220,145,.32); }
.sr-error { color:#ffd0dd; background:rgba(186,47,89,.18); border:1px solid rgba(244,105,150,.35); }

.sr-download-grid { align-items:stretch; }
.sr-download-card { min-height:280px; display:flex; flex-direction:column; }
.sr-download-card .sr-button { align-self:flex-start; margin-top:auto; }
.sr-download-links { display:flex; flex-wrap:wrap; gap:10px; margin-top:auto; }
.sr-small, .sr-muted { color:var(--sr-dim) !important; font-size:13px !important; }
.sr-auth-wrap { max-width:590px; }
.sr-auth-card { max-width:590px; }
.sr-auth-card form { margin-top:24px; }
.sr-auth-card p.login-username, .sr-auth-card p.login-password, .sr-auth-card p.login-remember { margin:0 0 16px; }
.sr-auth-card label { display:block; font-size:13px; font-weight:700; }
.sr-auth-card input[type="text"], .sr-auth-card input[type="password"] { display:block; width:100%; margin-top:7px; padding:12px 13px; border-radius:9px; border:1px solid var(--sr-line); color:var(--sr-text); background:rgba(255,255,255,.025); font:inherit; }
.sr-auth-card input[type="submit"] { min-height:46px; padding:12px 18px; border:0; border-radius:10px; font:inherit; font-weight:750; cursor:pointer; color:#fff; background:linear-gradient(135deg,#6540da,#8b66f6 58%,#66e0e9); }
.sr-auth-card input:focus { outline:2px solid var(--sr-cyan); outline-offset:2px; }
.sr-lobby-wrap { max-width:880px; }
.sr-lobby-card { min-height:270px; }
.sr-intentions { display:flex; flex-wrap:wrap; gap:10px; margin-top:24px; }
.sr-intentions button { padding:13px 15px; border:1px solid var(--sr-line); border-radius:10px; background:rgba(255,255,255,.02); color:var(--sr-text); font:inherit; cursor:not-allowed; opacity:.68; }

.sr-footer { border-top:1px solid var(--sr-line); padding:60px 0 24px; background:rgba(0,0,0,.10); }
.sr-footer-grid { display:grid; grid-template-columns:1fr auto; gap:42px; }
.sr-footer p { max-width:430px; color:var(--sr-muted); font-size:14px; }
.sr-footer-links { display:grid; grid-template-columns:repeat(2,minmax(130px,1fr)); gap:10px 28px; align-content:start; }
.sr-footer-links a { color:var(--sr-muted); text-decoration:none; font-size:14px; }
.sr-footer-links a:hover { color:var(--sr-cyan); }
.sr-footer-bottom { display:flex; justify-content:space-between; gap:20px; margin-top:42px; padding-top:20px; border-top:1px solid var(--sr-line); color:var(--sr-dim); font-size:12px; }

.stillroom-admin-wrap .stillroom-admin-grid { display:grid; grid-template-columns:repeat(3,minmax(220px,1fr)); gap:16px; max-width:1100px; margin:22px 0; }
.stillroom-admin-wrap .stillroom-card { background:#fff; border:1px solid #dcdcde; border-radius:8px; padding:18px; }
.stillroom-admin-wrap .stillroom-card h2 { margin-top:0; }

@keyframes sr-pulse { 0%,100% { box-shadow: 0 0 0 4px rgba(85,228,237,.13); } 50% { box-shadow: 0 0 0 9px rgba(85,228,237,0); } }
@keyframes sr-wave { from { transform:scaleY(.45); opacity:.48; } to { transform:scaleY(1.1); opacity:1; } }

@media (max-width: 980px) {
  .sr-navigation { gap:13px; font-size:13px; }
  .sr-feature-grid { grid-template-columns:repeat(2,1fr); }
  .sr-hero-grid, .sr-story-grid { grid-template-columns:1fr; }
  .sr-hero-panel { max-width:650px; }
}
@media (max-width: 760px) {
  body.stillroom-clean-body .sr-container { width:min(100% - 32px, 1180px); }
  .sr-nav-wrap { min-height:72px; }
  .sr-nav-toggle { display:block; }
  .sr-navigation { position:absolute; top:calc(100% + 1px); left:0; right:0; display:none; padding:16px; border-bottom:1px solid var(--sr-line); background:var(--sr-bg); box-shadow:var(--sr-shadow); }
  .sr-navigation.is-open { display:flex; flex-direction:column; align-items:stretch; gap:2px; }
  .sr-navigation > a, .sr-theme-toggle { padding:12px 8px; min-height:42px; }
  .sr-theme-toggle { width:100%; text-align:left; border-radius:8px; }
  .sr-nav-cta { padding:12px 10px !important; }
  .sr-hero { padding-top:74px; }
  .sr-hero h1, .sr-section-heading h1 { font-size:clamp(44px, 13vw, 65px); }
  .sr-lead { font-size:17px; }
  .sr-feature-grid, .sr-timeline, .sr-two-up, .sr-safety-grid, .sr-contact-wrap, .sr-register-grid, .sr-download-grid, .sr-card-grid { grid-template-columns:1fr; }
  .sr-callout, .sr-footer-grid, .sr-footer-bottom { flex-direction:column; display:flex; align-items:flex-start; }
  .sr-footer-links { grid-template-columns:1fr 1fr; width:100%; }
  .sr-story-grid { gap:42px; }
  .sr-panel-foot { font-size:10px; }
  .sr-panel-status { display:none; }
  .stillroom-admin-wrap .stillroom-admin-grid { grid-template-columns:1fr; }
}
@media (max-width: 430px) {
  .sr-brand { font-size:11px; }
  .sr-hero-panel { padding:18px; border-radius:15px; }
  .sr-wave { margin-top:32px; }
  .sr-feature, .sr-content-card, .sr-download-card, .sr-auth-card, .sr-lobby-card, .sr-timeline > div { padding:21px; }
  .sr-actions .sr-button { width:100%; }
  .sr-footer-links { grid-template-columns:1fr; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; scroll-behavior:auto !important; transition-duration:.01ms !important; }
}
