/* Shared website finish, using Manage Teams as the visual reference.
   Scoped to the website shell so the native shell and 3D editor stay independent. */
body.site-theme {
  --kv-border:#304157;
  --kv-muted:#a4b4c8;
  --kv-accent:#68dfbb;
  --kv-panel:#182438;
  --kv-input:#111d2e;
  background:#0f172a;
  color:#f1f5f9;
  line-height:1.5;
}
.site-theme .content { max-width:1464px; margin:0 auto; padding:32px; }
.site-theme .top-nav { background:#172337; border-color:var(--kv-border); }
.site-theme .nav-links { min-width:0; }
.site-theme .nav-account,.site-theme .nav-lang,.site-theme .nav-brand { flex-shrink:0; }
@media(min-width:1025px) {
  .site-theme .nav-links { overflow-x:auto; scrollbar-width:thin; scrollbar-color:#41536c transparent; }
  .site-theme .nav-links a { flex-shrink:0; white-space:nowrap; }
}
.site-theme .nav-links a { color:#b4c3d6; }
.site-theme .nav-links a:hover { background:#263c55; color:#fff; }
.site-theme .nav-links a.active { background:#1d463f; color:#9cecd1; }
.site-theme .nav-links a.nav-viz { background:#16795e; color:#fff; }
.site-theme .nav-logout { background:#382534; border:1px solid #654052; color:#ffb7be; }
.site-theme .account-dropdown-menu { background:#172337; border-color:var(--kv-border); border-radius:12px; }
.site-theme :is(a,button,input,textarea,select,summary):focus-visible { outline:2px solid var(--kv-accent); outline-offset:3px; }
.site-theme .site-heading { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:12px 0 30px; }
.site-theme .site-eyebrow { color:#62d9b4; font-size:11px; font-weight:750; letter-spacing:1.8px; margin:0 0 12px; text-transform:uppercase; }
.site-theme :is(.site-heading h1,.section-title,.dash-hub>h2,.login-container>h2) { font-size:clamp(26px,3vw,36px); letter-spacing:-1px; line-height:1.15; color:#f1f5f9; background:none; -webkit-text-fill-color:currentColor; }
.site-theme .site-heading h1 { margin:0 0 9px; }
.site-theme .site-heading p:not(.site-eyebrow),.site-theme .dash-subtitle { margin:0; color:var(--kv-muted); font-size:14px; line-height:1.6; }
.site-theme .site-heading>.btn { flex-shrink:0; }
.site-theme .page-grid { grid-template-columns:276px minmax(0,1fr); gap:28px; align-items:start; }
.site-theme .page-grid>* { min-width:0; }
.site-theme .site-muted { color:var(--kv-muted); font-size:13px; line-height:1.65; margin:8px 0 18px; }
.site-theme .page-grid>div:first-child .panel :is(form>.btn,.panel>.btn) { width:100%; }
.site-theme .page-grid>div:first-child .panel>.btn { width:100%; }
.site-theme .page-grid>div:first-child .panel>h2 { border:0; padding-bottom:0; }
.site-theme :is(.panel,.login-card,.dash-card,.contact-card,.pricing-card,.news-article,.tutorial-card,.stat-card,.feedback-card,.news-admin-form) {
  background:linear-gradient(145deg,#1c2d40,#172337);
  border:1px solid var(--kv-border);
  border-radius:14px;
  box-shadow:0 8px 28px #020b161f;
}
.site-theme :is(.panel,.login-card,.dash-card,.contact-card,.news-article) { padding:24px; }
.site-theme :is(.panel h2,.login-card h2) { font-size:17px; color:#f1f5f9; margin:0 0 18px; border-color:var(--kv-border); letter-spacing:-.2px; }
.site-theme :is(.section-text,.dash-card-desc,.scenario-meta,.login-footer,.empty-state,.news-article-meta,.tutorial-card p) { color:var(--kv-muted); line-height:1.65; }
.site-theme .dash-cards { gap:22px; }
.site-theme .dash-card { text-decoration:none; transition:border-color .15s,background .15s; }
.site-theme .dash-card:hover { border-color:#68a991; background:#20364a; }
.site-theme .dash-card-icon { display:grid; place-items:center; width:44px; height:44px; font-size:23px; background:#1d463f; border-radius:12px; margin-bottom:20px; }
.site-theme .dash-card-meta { color:#83e6c6; margin:8px 0; }
.site-theme .dash-card-title { font-size:20px; color:#f0f6ff; letter-spacing:-.3px; }
.site-theme .dash-card-desc { font-size:13px; }
.site-theme :is(.btn,button.btn,.btn-sm) { border:1px solid transparent; border-radius:8px; font-weight:600; line-height:1.35; min-height:40px; padding:10px 15px; display:inline-flex; align-items:center; justify-content:center; gap:6px; text-decoration:none; }
.site-theme .btn-sm { min-height:34px; padding:7px 10px; font-size:12px; }
.site-theme :is(.btn-primary,.btn-success) { background:#16795e; border-color:#2b9c7c; color:#fff; }
.site-theme .btn-default { background:#263c55; border-color:#415775; color:#e3edf8; }
.site-theme .btn-indigo { background:#354b78; border-color:#536a93; color:#fff; }
.site-theme .btn-danger { background:#382534; border-color:#654052; color:#ffb7be; }
.site-theme button:disabled { opacity:.45; cursor:not-allowed; }
.site-theme .form-group { margin-bottom:16px; }
.site-theme .form-group label { font-size:12px; font-weight:600; color:#bccce0; margin-bottom:7px; }
.site-theme :is(input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=hidden]):not(.player-photo-input),textarea,select) {
  min-width:0; min-height:40px; background:var(--kv-input); color:#edf4fc; border:1px solid #3a4c65; border-radius:7px; padding:10px 12px; font-family:inherit;
}
.site-theme input::placeholder,.site-theme textarea::placeholder { color:#8b9db4; }
.site-theme input::file-selector-button { padding:7px 8px; margin-right:8px; border:0; border-radius:4px; background:#30465e; color:#edf4fc; cursor:pointer; }
.site-theme :is(input[type=checkbox],input[type=radio]) { accent-color:#16795e; }
.site-theme .scenario-card { padding:20px; border:1px solid var(--kv-border); border-radius:12px; background:#182438; margin:0 0 16px; }
.site-theme .scenario-name { color:#f0f6ff; font-size:17px; letter-spacing:-.2px; }
.site-theme .scenario-display { gap:18px; }
.site-theme .scenario-share-row { border-color:var(--kv-border); }
.site-theme .scenario-actions { flex-wrap:wrap; }
.site-theme .share-badge-public { background:#1d463f; color:#9cecd1; border-color:#356857; }
.site-theme .share-badge-private { background:#26364c; color:#c3d3e5; border-color:#41536c; }
.site-theme .search-result-card { border-color:var(--kv-border); background:#182438; border-radius:10px; }
.site-theme .search-result-name { color:#e8f2fc; }
.site-theme .content>.section { padding:12px 0 32px; }
.site-theme .section-inner { width:100%; }
.site-theme .login-container { min-height:0; width:100%; max-width:560px; padding:12px 0 32px; margin:0 auto; justify-content:flex-start; align-items:stretch; background:transparent; }
.site-theme .login-container .login-card { width:100%; max-width:none; }
.site-theme .login-container>h2 { margin-top:0; }
.site-theme .login-container p,.site-theme .login-card p { color:var(--kv-muted); }
.site-theme .login-card a:not(.btn) { color:var(--kv-accent) !important; }
.site-theme .login-card input:not([type=checkbox]):not([type=radio]) { border-color:#3a4c65 !important; }
.site-theme .pricing-header { background:linear-gradient(100deg,#21334b,#19283c) !important; border-bottom:1px solid var(--kv-border); border-radius:14px 14px 0 0; }
.site-theme .pricing-card[style] { border-color:#427b68 !important; }
.site-theme .pricing-save-badge { background:#16795e; color:#fff; }
.site-theme .contact-grid { gap:18px; }
.site-theme .contact-card a { color:var(--kv-accent); overflow-wrap:anywhere; }
.site-theme .contact-info { border-color:var(--kv-border); color:var(--kv-muted); }
.site-theme .news-article-title { color:#f0f6ff; }
.site-theme .tutorials-sidebar { border-color:var(--kv-border); background:#172337; border-radius:14px; }
.site-theme .tutorials-sidebar a.active { background:#1d463f; color:#9cecd1; }
.site-theme .tutorial-card:hover { border-color:#68a991; }
.site-theme :is(.tutorial-header h1,.tutorials-index h1) { font-size:clamp(26px,3vw,36px); color:#f1f5f9; letter-spacing:-1px; }
.site-theme :is(.tutorial-card-summary,.tutorials-index .subtitle,.stat-label,.feedback-email,.feedback-date) { color:var(--kv-muted); }
.site-theme .tutorial-body .tip { background:#1d3d38; border-color:#427b68; border-radius:10px; }
.site-theme .tutorial-body .tip strong { color:#9cecd1; }
.site-theme .stat-number { color:var(--kv-accent); }
.site-theme .tutorial-body :is(pre,blockquote),.site-theme .tutorial-callout { border-color:#41536c; border-radius:10px; }
.site-theme .public-footer { border-color:var(--kv-border); background:#172337; }
.site-theme .home-page { --home-accent:#68dfbb; }
.site-theme .home-step-number { background:#1d463f; border-color:#356857; }
.site-theme .home-page :is(.home-shot,.gallery-item,.video-card) { border-color:var(--kv-border); border-radius:14px; }
.site-theme table { border-color:var(--kv-border); }
.site-theme th { color:#bccce0; font-size:12px; font-weight:600; }
.site-theme td { border-color:var(--kv-border); }
@media(max-width:960px) {
  .site-theme .content { padding:24px; }
  .site-theme .page-grid { grid-template-columns:240px minmax(0,1fr); gap:20px; }
}
@media(max-width:700px) {
  .site-theme .content { padding:18px 14px; }
  .site-theme .page-grid { grid-template-columns:minmax(0,1fr); }
  .site-theme .site-heading { align-items:flex-start; flex-direction:column; gap:16px; padding:10px 0 24px; }
  .site-theme :is(.panel,.login-card,.dash-card,.contact-card,.news-article) { padding:20px; }
  .site-theme .scenario-display { flex-wrap:wrap; }
  .site-theme .scenario-actions { width:100%; }
  .site-theme .login-container { padding:10px 0 24px; }
  .site-theme .section-inner { padding-left:0; padding-right:0; }
}
@media(prefers-reduced-motion:reduce) { .site-theme .dash-card { transition:none; } }
