/* Shared presentation for the current website; reference projects keep their assets. */
#ss-space.website-page { --bg:#03070d; --panel:#0a0e15; --panel-strong:#0c121c; --line:#38404d; --text:#f2f3f5; --muted:#bac2cf; --mint:#b5c9df; --accent:#b5c9df; --shadow:0 20px 70px #0005; overflow:visible; box-sizing:border-box; }
#ss-space.website-page > canvas { position:fixed; height:100vh; }
#ss-space.website-page main { flex:1; width:100%; padding:64px 0; margin:0; }
#ss-space.website-page .project-page,#ss-space.website-page .legal-panel { width:min(720px,100%); padding:32px; border:1px solid var(--line); border-radius:7px; background:var(--panel); box-shadow:var(--shadow); }
#ss-space.website-page .login-page { width:min(510px,100%); }
#ss-space.website-page h1 { margin:0 0 24px; color:var(--text); font:400 clamp(28px,4vw,42px)/1.15 Arial,Helvetica,sans-serif; letter-spacing:-.6px; overflow-wrap:anywhere; }
#ss-space.website-page h2 { font-size:24px; margin:28px 0 12px; }
#ss-space.website-page .eyebrow { margin-bottom:12px; font-size:12px; letter-spacing:1px; text-transform:uppercase; color:var(--muted); }
#ss-space.website-page .legal-copy a { text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; }
#ss-space.website-page .login-actions { display:flex; flex-wrap:wrap; gap:12px; }
#ss-space.website-page .button,#ss-space.website-page .primary-action { display:inline-flex; justify-content:center; align-items:center; min-height:44px; padding:10px 15px; border:1px solid #89929f; border-radius:4px; background:transparent; color:var(--text); font:400 14px/1.5 Arial,Helvetica,sans-serif; cursor:pointer; }
#ss-space.website-page .button.primary,#ss-space.website-page .primary-action { background:#e2e7ed; color:#10151d; border-color:#e2e7ed; }
#ss-space.website-page .button:hover { background:#1c2532; }
#ss-space.website-page .button.primary:hover,#ss-space.website-page .primary-action:hover { background:#fff; color:#10151d; }
#ss-space.website-page .portal-note { padding:12px; border:1px solid var(--line); border-radius:4px; }
#ss-space.website-page .login-account .account-menu-panel { position:static; width:100%; margin-top:12px; max-height:none; }
#ss-space.website-page .login-account summary { max-width:100%; }
#ss-space.website-page .ss-footer { flex-wrap:wrap; padding-top:20px; }
#ss-space.website-page .website-nav { flex-wrap:wrap; justify-content:flex-end; gap:18px; }
#ss-space.website-page .website-nav > a { min-height:36px; display:flex; align-items:center; }
#ss-space.website-page .website-nav details { position:relative; }
#ss-space.website-page .website-nav summary { cursor:pointer; min-height:36px; display:flex; align-items:center; border:1px solid #78808b; padding:6px 12px; border-radius:4px; }
#ss-space.website-page .website-nav .website-menu { position:absolute; right:0; top:calc(100% + 8px); width:min(290px,calc(100vw - 32px)); max-height:65vh; overflow:auto; padding:12px; border:1px solid #414c5e; border-radius:6px; background:#0c121c; box-shadow:0 15px 40px #0008; }
#ss-space.website-page .website-menu a { display:block; padding:10px 8px; }
#ss-space.website-page .website-menu a:hover { background:#1c2532; }
#ss-space.website-page :is(a,button,input,select,textarea,summary):focus-visible { outline:2px solid #b5d6ff; outline-offset:4px; }
#ss-space.website-page .admin-card { background:var(--panel); border-color:var(--line); }
#ss-space.website-page .user-admin { max-width:1400px; }
#ss-space.website-page .wrap { max-width:1480px; }
#ss-space.website-page .user-admin h1 { font-size:30px; }
#ss-space.website-page .admin-chip { background:#1c2532; color:#c8d6e8; }
#ss-space.website-page input { accent-color:#b5c9df; }
#ss-space.website-page .panel { background:#0a0e15; }
@media(max-width:760px) {
  #ss-space.website-page .ss-header { align-items:flex-start; flex-direction:column; gap:18px; }
  #ss-space.website-page .website-nav { justify-content:flex-start; gap:8px 18px; width:100%; font-size:13px; }
  #ss-space.website-page main { padding:36px 0; }
  #ss-space.website-page .project-page,#ss-space.website-page .legal-panel { padding:22px; }
  #ss-space.website-page .website-nav .website-menu { left:0; right:auto; width:min(260px,calc(100vw - 46px)); }
  #ss-space.website-page .website-nav details { position:static; }
  #ss-space.website-page .website-nav { position:relative; }
  #ss-space.website-page .login-actions { flex-direction:column; }
  #ss-space.website-page .login-actions .button { width:100%; }
  #ss-space.website-page .user-admin-head { display:block; }
}
