/* Shared inner-room system: listen · teach · locale */
body.room-listen,body.room-teach,body.room-locale{
  --bg:#091323;--panel:rgba(18,33,59,.74);--panel-2:rgba(11,23,43,.82);
  --cream:#f4f7ff;--ink:#f4f7ff;--soft:rgba(232,239,255,.72);--faint:rgba(214,225,250,.48);
  --line:rgba(195,211,255,.14);--gold:#d7b271;--sage-dark:#aebff0;
  color:var(--cream)!important;background:radial-gradient(circle at 18% 8%,rgba(76,112,173,.38),transparent 34%),radial-gradient(circle at 84% 76%,rgba(106,76,146,.3),transparent 40%),linear-gradient(135deg,#07101d,#101d35 53%,#091323)!important;
}
body.room-listen,body.room-locale{background-attachment:fixed!important;}

/* Listen */
body.room-listen .top{background:rgba(7,16,29,.72);border:0;box-shadow:0 10px 30px rgba(0,0,0,.16);}
body.room-listen .brand-orb{width:20px;height:20px;box-shadow:0 0 20px rgba(185,203,255,.42);}
body.room-listen .brand-name{font-size:1.1rem;}
body.room-listen .tabs{border:0;gap:18px;margin-bottom:2.2rem;}
body.room-listen .tab{padding:7px 0;border:0!important;margin:0;color:var(--faint);}
body.room-listen .tab[aria-selected="true"]{color:var(--cream);box-shadow:inset 0 -2px #d7b271;}
body.room-listen .install-nudge,body.room-listen .card{border:0;background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.035));box-shadow:0 16px 40px rgba(0,0,0,.2);}
body.room-listen .stations{gap:20px;}
body.room-listen .st-cover{border-radius:15px;box-shadow:0 14px 30px rgba(0,0,0,.32);}
body.room-listen .tracks,body.room-listen .tr{border:0;}
body.room-listen .tr{border-radius:10px;padding:12px 10px;}
body.room-listen .tr:hover{background:rgba(255,255,255,.06);}
body.room-listen .player{border:0;background:rgba(7,16,29,.84);box-shadow:0 -14px 34px rgba(0,0,0,.2);}

/* Locale */
body.room-locale .nav{background:rgba(7,16,29,.72);border:0;box-shadow:0 10px 30px rgba(0,0,0,.16);}
body.room-locale .logo{font-size:1.2rem;color:var(--cream);}
body.room-locale .logo em{color:var(--gold);}
body.room-locale .nav-links a{color:var(--soft);}
body.room-locale .nav-links a:hover{background:rgba(255,255,255,.08);color:var(--cream);}
body.room-locale .eyebrow,body.room-locale .card-rate{color:var(--gold);}
body.room-locale h1,body.room-locale h2,body.room-locale .card-name,body.room-locale .done h3{color:var(--cream);}
body.room-locale h1 em{color:#c8d5ff;}
body.room-locale .lede,body.room-locale .sub-copy{color:var(--soft);}
body.room-locale .controls{position:relative;top:auto;border:0;background:rgba(12,25,47,.62);box-shadow:0 16px 42px rgba(0,0,0,.2);}
body.room-locale .controls input[type=search],body.room-locale .controls select,body.room-locale .field input,body.room-locale .field select,body.room-locale .field textarea{background:rgba(3,12,27,.42);border:0;color:var(--cream);box-shadow:inset 0 1px rgba(255,255,255,.08);}
body.room-locale .chip-filter{border:0;background:rgba(255,255,255,.06);color:var(--soft);}
body.room-locale .chip-filter.on{background:rgba(181,201,255,.2);color:var(--cream);}
body.room-locale .card,body.room-locale .form,body.room-locale .done{border:0;background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.035));box-shadow:0 16px 42px rgba(0,0,0,.22);}
body.room-locale .card-loc,body.room-locale .card-vibe,body.room-locale .field label,body.room-locale .check label{color:var(--soft);}
body.room-locale .card-own{border:0;background:rgba(181,201,255,.15);color:#dce5ff;}
body.room-locale .card-links a{color:#d7b271;}
body.room-locale .send{width:auto;border:0;background:transparent;color:#f4f7ff;padding:10px 0;box-shadow:inset 0 -1px #d7b271;}
body.room-locale footer,body.room-locale .submit-wrap{border:0;background:transparent;}

/* Teach */
body.room-teach{background:radial-gradient(circle at 16% 12%,rgba(143,53,79,.42),transparent 35%),radial-gradient(circle at 84% 76%,rgba(102,34,58,.32),transparent 42%),linear-gradient(135deg,#210b16,#3a1022 53%,#1d0913)!important;}
body.room-teach .st-rail{display:none!important;}
body.room-teach{padding:0!important;}
body.room-teach .st-topbar{display:none!important;}
body.room-teach .st-top-class,body.room-teach .st-top-right{color:var(--soft);}
body.room-teach .st-rail-item.on{background:rgba(181,201,255,.18);color:#f4f7ff;}
body.room-teach .dash-h{color:var(--cream)!important;font-size:clamp(1.65rem,3.8vw,2.45rem)!important;}
body.room-teach .dash-sub,body.room-teach .cl-head{color:var(--soft)!important;}
body.room-teach .dash-card{border:0;background:linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.04));box-shadow:0 18px 46px rgba(0,0,0,.28);}
body.room-teach .dash-card:hover{box-shadow:0 22px 54px rgba(0,0,0,.36);}
body.room-teach .dash-actions button{border:0!important;background:rgba(255,255,255,.06)!important;color:#dce5ff!important;}
/* Keep the Studio landing page as a quiet choice of three, not a dashboard collage. */
body.room-teach .dash-head{padding:1rem 0 1.5rem;max-width:680px;}
body.room-teach .dash-eye{font-size:8px;letter-spacing:.15em;margin-bottom:.45rem;}
body.room-teach .dash-h{font-size:clamp(1.45rem,3vw,2.15rem)!important;line-height:1.18!important;}
body.room-teach .dash-sub{max-width:58ch;margin-top:.6rem;font-size:9px;}
body.room-teach .dash-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:720px;margin-bottom:1.4rem;}
body.room-teach .dash-card{min-height:0;padding:16px!important;border-radius:12px!important;background:rgba(255,255,255,.045)!important;box-shadow:none!important;gap:6px;}
body.room-teach .dash-card::before,body.room-teach .dash-card::after{display:none!important;}
body.room-teach .dash-card:hover{transform:none!important;background:rgba(255,255,255,.08)!important;box-shadow:none!important;}
body.room-teach .dash-card .dc-eye{font-size:7px;letter-spacing:.15em;color:#d7b271;}
body.room-teach .dash-card .dc-h{font-size:1.05rem!important;line-height:1.25!important;color:#f4f7ff;}
body.room-teach .dash-card .dc-copy{font-size:8px;line-height:1.65;color:rgba(232,239,255,.66);}
body.room-teach .dash-card .dc-status{display:none;}
body.room-teach .dash-card .dc-cta{margin-top:5px;font-size:8px;color:#d7b271;}
body.room-teach .dash-actions{display:none!important;}
body.room-teach #classLib:has(.cl-empty){display:none!important;}
body.room-teach .wrap{max-width:760px!important;margin:0 auto!important;padding:clamp(3rem,9vh,6rem) 28px!important;}
body.room-teach .studio-begin-again{position:absolute;top:24px;left:28px;display:inline-flex;align-items:center;gap:7px;font:10px 'IBM Plex Mono',monospace;letter-spacing:.06em;color:rgba(255,239,232,.8);text-decoration:none!important;z-index:2;}
body.room-teach .studio-begin-again span{font-size:15px;line-height:1;color:#e7bb83;}
body.room-teach .studio-begin-again:hover{color:#fff5ef;}
body.room-teach .dash-head{max-width:760px;padding:0 0 2.8rem!important;text-align:center;}
body.room-teach .studio-brand{display:block;width:max-content;margin:0 auto clamp(3rem,8vh,5rem);font:400 clamp(2rem,4vw,3rem) 'Cormorant Garamond',Georgia,serif!important;line-height:1;color:#fff5ef;text-decoration:none!important;letter-spacing:-.04em;}
body.room-teach .studio-brand em{font-family:'Cormorant Garamond',Georgia,serif!important;font-style:italic!important;color:#e7bb83;}
body.room-teach .studio-kicker{font:9px 'IBM Plex Mono',monospace;letter-spacing:.16em;text-transform:lowercase;color:#e7bb83;margin-bottom:12px;}
body.room-teach .dash-h{font-size:clamp(2rem,4.2vw,3.2rem)!important;color:#fff5ef!important;}
/* The Studio signup action must stay visibly actionable despite global button rules. */
#roomModal #rm-send{display:block!important;width:100%!important;background:#5b1624!important;color:#fffaf7!important;border:0!important;opacity:1!important;text-decoration:none!important;}
body.room-teach .studio-question{margin:17px 0 0;font:11px 'IBM Plex Mono',monospace;letter-spacing:.05em;color:rgba(255,239,232,.76);}
body.room-teach .dash-cards{display:flex;flex-direction:column;gap:0;max-width:760px;margin:0!important;}
body.room-teach .studio-choice{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 1.35rem;gap:7px 22px;width:100%;padding:25px 0!important;background:transparent!important;border:0!important;border-bottom:0!important;border-radius:0!important;box-shadow:none!important;color:#fff5ef!important;text-align:left;}
body.room-teach .studio-choice:hover{background:transparent!important;transform:none!important;box-shadow:none!important;}
body.room-teach .studio-choice-title{font:400 clamp(1.15rem,2.4vw,1.65rem) 'IBM Plex Mono',monospace;letter-spacing:-.035em;}
body.room-teach .studio-choice-copy{grid-column:1;font:9px/1.8 'IBM Plex Mono',monospace;letter-spacing:.04em;color:rgba(255,239,232,.68);}
body.room-teach .studio-choice-arrow{grid-column:2;grid-row:1/3;align-self:center;font-size:1.4rem;color:#e7bb83;}
body.room-teach .st-rail-item{border:0!important;border-bottom:0!important;box-shadow:none!important;}
body.room-teach .st-rail-ico{display:none!important;}
body.room-teach .st-rail-item[data-v="classes"],body.room-teach .st-rail-item[data-v="resources"]{display:none!important;}
@media(max-width:820px){body.room-teach .st-rail{height:58px!important;padding:0 12px!important;}body.room-teach .st-rail-nav{gap:8px!important;}body.room-teach .st-rail-item{font-size:9px!important;letter-spacing:.06em!important;padding:10px 6px!important;min-width:0!important;}.st-rail-item[data-v="room"]{display:none!important;}}
@media(max-width:760px){body.room-teach .dash-cards{grid-template-columns:1fr;gap:8px;}body.room-teach .dash-card{padding:15px 16px!important;}}
@media(max-width:820px){body.room-teach .st-rail{box-shadow:0 -10px 28px rgba(0,0,0,.2);}}
@media(max-width:640px){body.room-listen .wrap,body.room-locale .wrap{padding:1.5rem 16px 5rem;}body.room-locale .nav-links a{padding:.35rem .42rem;font-size:.52rem;}}
@media(max-width:640px){body.room-teach .studio-begin-again{top:18px;left:18px;}}
