/* SHALIZ V35 — editorial design system. Built on the real V34 application. */
:root {
  --sp-bg: #f9f8f5;
  --sp-white: #fff;
  --sp-text: #1a2335;
  --sp-muted: #707988;
  --sp-soft: #f0efeb;
  --sp-line: #e9e7e2;
  --sp-violet: #6357da;
  --sp-focus: #4f44c3;
  --sp-shadow: 0 20px 70px rgba(32,37,58,.08);
}
body.studio-app, body.studio-app.day { background: var(--sp-bg)!important; }
body.studio-app .view, body.studio-app .hall-scene { background:var(--sp-bg)!important; }
body.studio-app .topbar {
  height:74px!important;min-height:74px!important;
  border-bottom:1px solid #ebe9e5!important;
  background:rgba(250,249,247,.95)!important;
  box-shadow:none!important;
}
body.studio-app .wordmark { gap:12px!important; }
.studio-brand-icon { width:41px;height:41px;border-radius:14px;background:linear-gradient(145deg,#5953aa,#8277d8);transform:rotate(-8deg);box-shadow:0 9px 23px #8174d037; }
body.studio-app .brand-text { font-size:24px!important;letter-spacing:-.6px; }
.brand-text small{letter-spacing:2.5px;font-size:8px;color:#888d9a}
body.studio-app .master-topnav { gap:17px!important; }
body.studio-app .master-topnav button { color:#4d5361!important;font-size:13px!important; }
body.studio-app .master-topnav button:hover{background:#f0edf9!important;color:#4d43ad!important}
body.studio-app .top-actions .iconbtn,body.studio-app .top-actions .toplink,body.studio-app #menuBtn {
  border-color:#e5e4e2!important;background:#fff!important;border-radius:13px!important;
  box-shadow:0 2px 9px #10182b05!important;
}
body.studio-app .top-actions .toplink{padding-inline:18px!important}
body.studio-app .view { padding-top:74px!important; }
body.studio-app .hall-scene{background:radial-gradient(ellipse 66% 37% at 18% 15%,#ece7ff77,transparent 78%),radial-gradient(ellipse 58% 50% at 96% 65%,#e9ebe877,transparent 70%),#f9f8f5!important}
.studio-shell{width:min(1270px,calc(100% - 68px));padding:75px 0 165px}
.hero-layout{grid-template-columns:1fr 1fr;gap:clamp(36px,5.5vw,90px);min-height:560px}
.hero-content{padding:15px 0 0}
.eyebrow{background:#fff!important;color:#57518a!important;border-color:#e3dfee!important;box-shadow:0 5px 22px #23274d06;padding:9px 16px}
body.studio-app .status-dot{background:#7667df!important;box-shadow:0 0 0 4px #e6e0ff!important}
.studio-hero-title{
  font-weight:700;font-size:clamp(54px,5.2vw,78px);line-height:1.52;
  letter-spacing:-2px;margin:20px 0 19px;color:#202639;
}
.studio-hero-title span{background:linear-gradient(98deg,#52479f,#9780d9 68%,#5858a0);-webkit-background-clip:text;background-clip:text}
.studio-hero-subtitle{font-size:15px;line-height:2.1;max-width:530px;color:#747c8a;margin-bottom:29px}
.studio-hero-actions{margin-bottom:27px;gap:11px}
body.studio-app .primary-action,body.studio-app .secondary-action{height:52px;border-radius:15px!important;padding:0 23px!important}
body.studio-app .primary-action{background:#514b9f!important;border-color:#514b9f!important;box-shadow:0 12px 25px #554ea02c!important}
body.studio-app .primary-action:hover{background:#433c8e!important}
body.studio-app .secondary-action{background:#fff!important;border-color:#e7e4df!important;color:#273348!important}
.studio-proof{gap:12px;color:#979ca5}
.studio-proof b{color:#232d3d;font-size:13px}
/* Bespoke visual editorial composition. All content remains HTML, never baked into a screenshot. */
.hero-visual{width:100%;height:540px;min-width:0;display:block;position:relative;transform:none!important;margin:0!important;overflow:visible}
.hero-gallery{position:absolute;inset:15px 45px 15px 45px;background:#141a2f;border-radius:32px;overflow:hidden;box-shadow:0 33px 64px #2a254a33,0 0 0 1px #191d3340;transform:rotate(-2deg);isolation:isolate}
.hero-gallery:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,#13192c88,transparent 25%,transparent 55%,#101526e6)}
.gallery-top{position:absolute;left:31px;right:31px;top:26px;z-index:3;display:flex;justify-content:space-between;align-items:center;color:#faf7fa;direction:ltr}
.gallery-kicker{font:600 10px/1.3 system-ui,sans-serif;letter-spacing:2.2px;opacity:.8}
.gallery-dot{font-size:29px;line-height:1;color:#d9b6ef}
.gallery-art{position:absolute;inset:0;overflow:hidden}
.gallery-art img{position:absolute;width:125%;height:125%;object-fit:cover;inset:-8% -8% auto auto;opacity:.87;mix-blend-mode:screen}
.gallery-glow{position:absolute;width:80%;height:85%;border-radius:50%;left:6%;top:5%;background:#9580ff38;filter:blur(72px)}
.gallery-caption{position:absolute;bottom:32px;left:33px;right:33px;z-index:2;display:flex;justify-content:space-between;align-items:end;gap:12px;direction:rtl;color:#fff}
.gallery-caption div{display:flex;flex-direction:column;gap:5px}
.gallery-caption small{font:500 10px system-ui,sans-serif;letter-spacing:2.1px;opacity:.7;direction:ltr;text-align:right}
.gallery-caption strong{font:650 29px/1.6 var(--sp-font)}
.gallery-count{font:600 12px system-ui,sans-serif;border:1px solid #ffffff65;border-radius:99px;padding:10px 12px;direction:ltr;white-space:nowrap}
.gallery-floating{position:absolute;z-index:4;left:-12px;bottom:60px;width:204px;min-height:128px;background:#fff;border:1px solid #e7e3eb;border-radius:23px;box-shadow:0 22px 57px #2c2a5033;display:flex;flex-direction:column;gap:9px;padding:23px 22px;transform:rotate(3deg)}
.gallery-floating-label{font:500 10px var(--sp-font);color:#858497}
.gallery-floating-quote{font:600 16px/1.85 var(--sp-font);color:#1b263c}
.gallery-floating-icon{position:absolute;top:13px;left:17px;font-size:20px;color:#8e7de0}
.gallery-satellite{position:absolute;z-index:3;right:5px;bottom:12px;width:117px;height:117px;border-radius:23px;overflow:hidden;border:6px solid #fff;box-shadow:0 16px 44px #252c5033;transform:rotate(8deg)}
.gallery-satellite img{width:100%;height:100%;object-fit:cover}
/* Two contemporary record features */
.curated-area{margin:42px 0 88px}
.curated-header{display:flex;justify-content:space-between;align-items:end;gap:18px;margin-bottom:24px}
.curated-header h2{font:700 clamp(26px,3vw,38px)/1.55 var(--sp-font);color:#21283b;letter-spacing:-.6px;margin:4px 0 3px}
.curated-header p{font:400 13px/1.9 var(--sp-font);color:#79818f;margin:0}
.curated-all{font:600 12px var(--sp-font);border:1px solid #e1dfe6;border-radius:15px;background:white;color:#4d468d;min-height:43px;padding:0 17px;white-space:nowrap;display:flex;align-items:center;gap:16px;transition:transform .2s,border-color .2s}
.curated-all:hover{transform:translateY(-2px);border-color:#c6bceb}
.curated-all span{font:19px system-ui;direction:ltr}
.curated-grid{display:grid;grid-template-columns:1fr 1fr;gap:19px}
.curated-album{position:relative;isolation:isolate;display:grid;grid-template-columns:43% 57%;height:245px;border:1px solid #e5e1df;border-radius:27px!important;overflow:hidden;box-shadow:0 10px 30px #202b390b;text-align:right;background:#fff;color:#1c2538;transition:transform .26s,box-shadow .26s}
.curated-album:hover{transform:translateY(-6px);box-shadow:0 21px 44px #202b3920}
.curated-art{position:relative;height:100%;overflow:hidden;display:block;background:#272e54}
.curated-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 55%,#fff3)}
.curated-art img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s}
.curated-album:hover .curated-art img{transform:scale(1.075)}
.curated-info{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:11px;padding:30px 30px 30px 17px}
.curated-number{font:700 9px/1.5 system-ui,sans-serif;letter-spacing:2px;direction:ltr;color:#807a9a}
.curated-info strong{font:650 clamp(20px,2.1vw,28px)/1.55 var(--sp-font);color:#283147}
.curated-sub{font:400 12px/1.9 var(--sp-font);color:#7a8190}
.curated-open{display:flex;gap:14px;align-items:center;font:600 12px var(--sp-font);color:#594fac;margin-top:8px}
.curated-open>span{font:20px system-ui;direction:ltr}
.curated-turkish .curated-number,.curated-turkish .curated-open{color:#2c737a}
/* Editorial collection cards: smaller, intentional, spacious. */
.explore-header{margin:0 0 27px}
.explore-header h2{font-size:clamp(29px,3.3vw,40px);font-weight:680}
body.studio-app #hallDoors.hall-doors{gap:20px!important}
body.studio-app #hallDoors .portal,body.studio-app #hallDoors .portal[data-go]{border-radius:27px!important;border-color:#ece9e4!important;box-shadow:0 9px 33px #1d29360a!important;background:#fff!important;transition:transform .25s,box-shadow .25s,border-color .25s!important}
body.studio-app #hallDoors .portal:hover,body.studio-app #hallDoors .portal:focus-visible{transform:translateY(-6px)!important;box-shadow:0 22px 49px #29354718!important;border-color:#cec5eb!important}
body.studio-app #hallDoors .portal:nth-child(-n+2){height:322px!important;min-height:322px!important;padding:27px 29px!important}
body.studio-app #hallDoors .portal:nth-child(n+3){height:235px!important;min-height:235px!important}
body.studio-app #hallDoors .card-music{background:linear-gradient(115deg,#e4e3fb,#f4f1fe 75%,#edeafa)!important;border-color:#e2def5!important}
body.studio-app #hallDoors .card-literature{background:linear-gradient(120deg,#f8eae0,#fdf7ee 78%,#f6ebdf)!important;border-color:#f1e6db!important}
body.studio-app #hallDoors .card-letters{background:linear-gradient(110deg,#f1f9fc,#fff)!important}
body.studio-app #hallDoors .card-reflection{background:linear-gradient(110deg,#eefaef,#fff)!important}
body.studio-app #hallDoors .card-guests{background:linear-gradient(110deg,#f8f1fa,#fff)!important}
body.studio-app #hallDoors .card-icon{border-radius:15px;background:#ffffffad!important;border:1px solid #ffffff80}
body.studio-app #hallDoors .card-arrow{border-radius:50%;background:#ffffffad}
body.studio-app #hallDoors .portal:hover .card-arrow{background:#514b9f;color:#fff}
body.studio-app #hallDoors .door-title{font-weight:650!important;letter-spacing:-.3px}
body.studio-app #hallDoors .door-note{color:#6e7685!important}
body.studio-app #hallDoors .card-footnote{color:#8b91a0!important}
body.studio-app #hallDoors .card-illustration{opacity:.74}
body.studio-app #hallDoors .card-music .card-illustration{background:radial-gradient(circle at 28% 39%,#6f63c422,transparent 38%)}
body.studio-app #hallDoors .card-literature .card-illustration{background:radial-gradient(circle at 26% 38%,#e6bd8f55,transparent 39%)}
body.studio-app #hallDoors .card-music .decor-vinyl{transform:rotate(-14deg) scale(1.07)}
body.studio-app #hallDoors .card-literature .decor-page{transform:rotate(-9deg) scale(1.05)}
.closing-line{margin-top:44px;border-color:#e8e4de}
/* Interior pages and editorial app components */
body.studio-app .room-hero{background:radial-gradient(circle at 78% 22%,#dcd9fb77,transparent 36%),linear-gradient(110deg,#f4f3f1,#eeedf3)!important;border-bottom-color:#e9e5e5!important}
body.studio-app .room-hero h2{font-weight:680!important;letter-spacing:-1px}
body.studio-app .room-hero p{color:#747d8d!important}
body.studio-app .back-door{border-color:#e6e1df!important;border-radius:13px!important}
body.studio-app .content-shell{max-width:1260px!important}
body.studio-app .album-card,body.studio-app .tracks-pane,body.studio-app .parchment,body.studio-app .manuscript-card{border-color:#e9e6e2!important;border-radius:24px!important;box-shadow:0 12px 40px #20283a0a!important}
body.studio-app .gold-btn{background:#514b9f!important;border-color:#514b9f!important;border-radius:13px!important}
body.studio-app .gold-btn:hover{background:#453c90!important;border-color:#453c90!important}
body.studio-app .playlist-picker{border-color:#e8e5ee!important;background:#faf9fd!important}
body.studio-app #player.player{left:clamp(15px,3vw,47px)!important;right:clamp(15px,3vw,47px)!important;bottom:18px!important;max-width:1420px!important;margin:auto!important;border-radius:21px!important;border-color:#e5e3e0!important;background:rgba(255,255,255,.975)!important;box-shadow:0 14px 48px #22243c21!important}
body.studio-app #player .player-buttons .play-circle{background:#514b9f!important;border-color:#514b9f!important}
body.studio-app #player input[type=range]{accent-color:#514b9f!important}
body.studio-app #player #playerVolume{accent-color:#514b9f!important}
body.studio-app .modal-body{border-radius:25px!important}
body.studio-app #modal{border-radius:25px!important}
/* Night preserves strong contrast while retaining the compositional hierarchy. */
body.studio-app.night{--sp-bg:#151922;--sp-text:#f0eff5;--sp-muted:#a7adba;--sp-line:#343947}
body.studio-app.night .hall-scene{background:radial-gradient(ellipse at 24% 25%,#32295766,transparent 66%),#151922!important}
body.studio-app.night .topbar{background:#1b202bed!important;border-bottom-color:#313744!important}
body.studio-app.night .studio-hero-title,body.studio-app.night .explore-header h2,body.studio-app.night .curated-header h2{color:#f3f0fb!important}
body.studio-app.night .curated-album{background:#222737!important;border-color:#343949!important;color:#eff1fa!important}
body.studio-app.night .curated-info strong{color:#f4f0fc!important}
body.studio-app.night .curated-info .curated-sub,.studio-app.night .curated-header p{color:#b4bbca!important}
body.studio-app.night .curated-all{background:#222737!important;border-color:#3a4054!important;color:#eee9ff!important}
body.studio-app.night #hallDoors .portal{background:#222839!important;border-color:#343949!important}
body.studio-app.night #hallDoors .card-music{background:linear-gradient(140deg,#34365b,#282a49)!important}
body.studio-app.night #hallDoors .card-literature{background:linear-gradient(140deg,#44372f,#302a2b)!important}
body.studio-app.night #hallDoors .card-letters,body.studio-app.night #hallDoors .card-reflection,body.studio-app.night #hallDoors .card-guests{background:#222839!important}
body.studio-app.night .studio-hero-subtitle{color:#b1bac8!important}
body.studio-app.night .gallery-floating{background:#242a3a;border-color:#353a49}
body.studio-app.night .gallery-floating-quote{color:#f3f1ff}
body.studio-app.night .gallery-floating-label{color:#bdc2d0}
body.studio-app.night .studio-proof b{color:#eaeaf8}
body.studio-app.night .room-hero{background:linear-gradient(120deg,#222735,#282a3b)!important;border-color:#343949!important}
body.studio-app.night #player.player{background:#202634f5!important;border-color:#394052!important}
/* Tablet */
@media(max-width:1120px){
  .hero-layout{gap:25px;min-height:495px}
  .hero-visual{height:470px;transform:none!important}
  .hero-gallery{inset:18px 25px 18px 45px}
  .gallery-floating{left:-12px;bottom:30px}
  .studio-hero-title{font-size:clamp(43px,5.5vw,65px)}
  .studio-shell{width:min(1170px,calc(100% - 46px))}
  .curated-info{padding-inline:23px 16px}
}
@media(max-width:850px){
  .studio-shell{padding-top:40px}
  .hero-layout{grid-template-columns:1fr 300px;gap:20px}
  .hero-visual{height:420px;transform:none!important;margin:0!important}
  .hero-gallery{inset:20px 8px 20px 15px}
  .gallery-floating{left:-3px;bottom:10px;width:165px;min-height:95px;padding:16px 14px}
  .gallery-floating-quote{font-size:12px}
  .gallery-caption{left:20px;right:20px;bottom:22px}
  .gallery-caption strong{font-size:20px}
  .gallery-satellite{right:-12px;width:86px;height:86px}
  .curated-grid{gap:12px}
  .curated-album{grid-template-columns:39% 61%;height:208px}
  .curated-info{padding:20px 16px}
  .curated-info strong{font-size:19px}
  .curated-sub{font-size:10px}
}
@media(max-width:700px){
  body.studio-app .view{padding-top:65px!important}
  body.studio-app .topbar{height:65px!important;min-height:65px!important}
  .studio-shell{width:calc(100% - 34px);padding:31px 0 178px}
  .hero-layout{display:flex!important;flex-direction:column!important;gap:0!important;min-height:0}
  .hero-content{width:100%;padding:5px 0!important}
  .studio-hero-title{font-size:clamp(36px,10vw,54px);line-height:1.55;letter-spacing:-1.3px;margin:17px 0 12px}
  .studio-hero-subtitle{font-size:13px;line-height:2.05;margin-bottom:20px}
  .studio-hero-actions{margin-bottom:18px}
  .hero-visual{transform:none!important;width:min(420px,100%);max-width:420px;height:390px;align-self:center;margin:8px auto 0!important}
  .hero-gallery{inset:16px 22px 22px 32px;border-radius:24px;transform:rotate(-2deg)}
  .gallery-top{left:22px;right:22px;top:17px}
  .gallery-kicker{font-size:8px;letter-spacing:1.4px}
  .gallery-caption{left:19px;right:19px;bottom:19px}
  .gallery-caption strong{font-size:20px}
  .gallery-caption small{font-size:8px}
  .gallery-count{font-size:10px;padding:7px}
  .gallery-floating{left:0;bottom:12px;width:151px;min-height:94px;padding:15px 14px;border-radius:17px}
  .gallery-floating-icon{font-size:16px}
  .gallery-floating-label{font-size:9px}
  .gallery-floating-quote{font-size:12px}
  .gallery-satellite{width:81px;height:81px;right:1px;bottom:4px;border-width:4px;border-radius:17px}
  .curated-area{margin:20px 0 66px}
  .curated-header{gap:8px;margin-bottom:17px;align-items:start}
  .curated-header h2{font-size:25px}
  .curated-header p{font-size:11px;line-height:1.9;max-width:255px}
  .curated-all{min-height:38px;padding:0 10px;font-size:10px;gap:6px}
  .curated-grid{grid-template-columns:1fr;gap:12px}
  .curated-album{grid-template-columns:39% 61%;height:177px;border-radius:19px!important}
  .curated-info{padding:15px 15px 15px 10px;gap:6px}
  .curated-info strong{font-size:19px}
  .curated-number{font-size:8px;letter-spacing:1.1px}
  .curated-sub{font-size:10px}
  .curated-open{margin-top:3px;font-size:10px}
  .explore-header{margin:0 0 18px}
  .explore-header h2{font-size:24px}
  body.studio-app #hallDoors.hall-doors{gap:11px!important}
  body.studio-app #hallDoors .portal,body.studio-app #hallDoors .portal[data-go]{border-radius:19px!important}
  body.studio-app #hallDoors .portal:nth-child(-n+2){height:221px!important;min-height:221px!important;padding:17px!important}
  body.studio-app #hallDoors .portal:nth-child(n+3){height:194px!important;min-height:194px!important;padding:14px!important}
  body.studio-app .room-hero{padding:42px 17px!important}
  body.studio-app #player.player{left:8px!important;right:8px!important;bottom:calc(61px + env(safe-area-inset-bottom))!important;border-radius:18px!important}
}
@media(max-width:370px){
  .hero-visual{height:320px}
  .hero-gallery{inset:10px 20px 20px 23px}
  .gallery-floating{width:128px;min-height:86px;padding:12px}
  .gallery-floating-quote{font-size:10px}
  .curated-header h2{font-size:22px}
  .curated-all{font-size:9px}
  .curated-album{height:158px}
  .curated-info strong{font-size:16px}
  .curated-sub{font-size:9px}
}
@media(prefers-reduced-motion:reduce){
  .curated-album,.curated-art img,.hero-gallery,.gallery-floating{transition:none!important;animation:none!important}
}
/* Last mobile tile is a deliberate full-width closing card. */
@media(max-width:700px){
  body.studio-app #hallDoors .portal:nth-child(5),
  body.studio-app #hallDoors .portal[data-go="guests"]{grid-column:span 2!important;height:175px!important;min-height:175px!important}
  body.studio-app #hallDoors .portal:nth-child(5) .card-illustration{opacity:.5}
  body.studio-app .top-actions button[data-go="guests"]{display:none!important}
  body.studio-app .top-actions .toplink svg{display:block!important;color:#4f5570!important;width:18px!important;height:18px!important}
}
@media(max-width:370px){
  body.studio-app .topbar{gap:6px!important;padding-inline:9px!important}
  body.studio-app .brand-text{font-size:16px!important}
  body.studio-app .top-actions{gap:4px!important}
  body.studio-app .top-actions .iconbtn,body.studio-app .top-actions .toplink,body.studio-app #menuBtn{width:35px!important;min-width:35px!important;height:35px!important}
  .studio-brand-icon{width:32px;height:32px;padding:7px}
}
/* The music library's album selectors share the same authored artwork. */
body.studio-app .studio-album-choice{border-radius:24px!important;min-height:190px;box-shadow:0 12px 34px #2426410d!important}
body.studio-app .studio-album-choice.chosen{border-color:#9a8ae6!important;box-shadow:0 0 0 2px #7567df2e,0 14px 34px #2925531b!important}
body.studio-app .studio-album-choice.album-second.chosen{border-color:#64b0a9!important;box-shadow:0 0 0 2px #64b0a938,0 14px 34px #20384019!important}
body.studio-app .studio-album-choice .choice-art{width:215px;height:215px;left:-31px;bottom:-74px;border:0!important;box-shadow:0 18px 35px #332c5418!important;background:url('assets/art-orbit.svg') center/cover;border-radius:27px;opacity:.75;transform:rotate(-13deg)}
body.studio-app .studio-album-choice .choice-art.art-two{background-image:url('assets/art-tide.svg');transform:rotate(13deg)}
body.studio-app.night .studio-album-choice{background:linear-gradient(110deg,#31314e,#242638)!important;border-color:#3c3b58!important}
body.studio-app.night .studio-album-choice.album-second{background:linear-gradient(110deg,#24404a,#223141)!important;border-color:#345361!important}
body.studio-app.night .studio-album-choice strong{color:#f6f4ff!important}
body.studio-app.night .studio-album-choice small{color:#bdc1d1!important}
body.studio-app.night .studio-album-choice em{color:#b5a6ff!important}
body.studio-app.night .studio-album-choice.album-second em{color:#8edfd0!important}

/* V35.2: hidden must override display declarations on styled buttons. */
[hidden]{display:none!important}

/* V35.3: ensure guest-only logout never appears, even with other display rules */
#guestSignOut[hidden]{display:none!important}
.password-success{text-align:center;padding:18px 4px 8px}
.password-success-icon{width:66px;height:66px;border-radius:50%;background:#eee5eb;color:#76506b;display:grid;place-items:center;margin:0 auto 20px;font-size:36px;font-weight:bold}
.password-success p{line-height:2;color:#6b6269;margin:16px auto 24px;max-width:390px}
