/* Contrôles communs ; le thème Actuel conserve tous ses styles existants. */
.atlas-public { --apt-panel:#202329; --apt-ink:#f7f4ee; --apt-muted:#b8bbc5; --apt-line:#575b66; --apt-accent:#bd1830; }
.apt-button { display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto; gap:9px; min-height:44px; padding:10px 14px; border:1px solid var(--apt-line); border-radius:10px; background:var(--apt-panel); color:var(--apt-ink); font:600 13px/1.3 system-ui,sans-serif; cursor:pointer; }
.apt-button svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; }
.apt-icon-button { width:44px; height:44px; padding:10px; } .apt-icon-button>span { display:none; }
.apt-floating { position:fixed; top:calc(12px + env(safe-area-inset-top)); right:12px; z-index:10005; }
.ar-mobile-meta>.apt-button { align-self:stretch; }
.apt-dialog { width:min(490px,calc(100vw - 32px)); max-height:calc(100dvh - 32px); margin:auto; overflow:auto; padding:24px; border:1px solid var(--apt-line); border-radius:18px; background:var(--apt-panel); color:var(--apt-ink); font:14px/1.55 system-ui,sans-serif; box-shadow:0 24px 90px #0008; }
.apt-dialog:not([open]),.apt-backdrop[hidden] { display:none!important; }
.apt-dialog::backdrop,.apt-backdrop { background:#000a; }
.apt-backdrop { position:fixed; inset:0; z-index:2147483645; }
.apt-dialog-fallback { position:fixed; top:50%; left:50%; margin:0; transform:translate(-50%,-50%); z-index:2147483646; }
.atlas-public .apt-dialog h2 { margin:0 0 8px!important; color:var(--apt-ink)!important; font:700 24px/1.3 system-ui,sans-serif!important; letter-spacing:-.02em; }
.atlas-public .apt-dialog>p { color:var(--apt-muted)!important; margin:0 0 18px; }
.apt-choice { display:grid; grid-template-columns:64px minmax(0,1fr); gap:4px 16px; width:100%; margin:10px 0; padding:14px; text-align:left; border:1px solid var(--apt-line); border-radius:12px; background:transparent; color:var(--apt-ink); cursor:pointer; font:600 16px/1.5 system-ui,sans-serif; }
.apt-choice strong { color:inherit; } .apt-choice small { grid-column:2; color:var(--apt-muted); font:400 12px/1.5 system-ui,sans-serif; }
.apt-choice[aria-pressed=true] { border:2px solid var(--apt-accent); padding:13px; }
.apt-preview { grid-row:span 2; height:58px; border-radius:7px; border:1px solid #747782; background:linear-gradient(0deg,#ef293b 0 12%,transparent 12%),linear-gradient(90deg,#101113 0 24%,#24272d 24%); }
.apt-preview-studio { background:linear-gradient(0deg,#ab263f 0 8%,transparent 8%),linear-gradient(90deg,#090e17 0 24%,#1c2533 24%); }
.apt-preview-editorial { background:linear-gradient(0deg,#a31c37 0 8%,transparent 8%),linear-gradient(90deg,#e9e3d8 0 24%,#fffdf8 24%); }
.apt-close { display:block; min-height:44px; margin:18px 0 0 auto; border:1px solid var(--apt-line); border-radius:8px; padding:10px 18px; background:transparent; color:var(--apt-ink); cursor:pointer; }
.apt-button:focus-visible,.apt-dialog button:focus-visible { outline:3px solid #e25772; outline-offset:3px; }
@media(max-width:400px) { .atlas-public .ar-header-inner { gap:10px; } .atlas-public .ar-brand { min-width:0; } .atlas-public .ar-brand-copy strong { font-size:12px; } .atlas-public .ar-brand-logo { width:30px; height:30px; } .apt-dialog { padding:18px; } }
@media print { .apt-button,.apt-dialog,.apt-backdrop { display:none!important; } }

/* Palette et surfaces communes aux deux ambiances supplémentaires. */
html[data-atlas-public-theme="studio"] .atlas-public { --apt-bg:#0c111b; --apt-soft:#101825; --apt-panel:#182230; --apt-panel2:#202d3f; --apt-ink:#f1f4fa; --apt-muted:#b9c5d6; --apt-line:#455268; --apt-accent:#e36b82; --apt-button-accent:#b12442; --public-radius:9px; --public-width:1180px; --apt-hero-overlay:linear-gradient(90deg,#0c111bf5,#0c111bd4 50%,#0c111b66); color-scheme:dark; }
html[data-atlas-public-theme="editorial"] .atlas-public { --apt-bg:#f4f0e8; --apt-soft:#eae4d9; --apt-panel:#fffdf8; --apt-panel2:#eee8de; --apt-ink:#25242a; --apt-muted:#59565f; --apt-line:#bab2a7; --apt-accent:#a61c37; --apt-button-accent:#a61c37; --public-radius:6px; --public-width:1320px; --apt-hero-overlay:linear-gradient(90deg,#f4f0e8fa,#f4f0e8e8 50%,#f4f0e8a6); color-scheme:light; }
html:is([data-atlas-public-theme="studio"],[data-atlas-public-theme="editorial"]) body.atlas-public {
 --bg:var(--apt-bg); --pbg:var(--apt-bg); --p-bg:var(--apt-bg); --fx-bg:var(--apt-bg); --bg-soft:var(--apt-soft); --bg-panel:var(--apt-panel); --panel:var(--apt-panel); --p-panel:var(--apt-panel); --p-panel2:var(--apt-panel2); --fx-panel:var(--apt-panel); --line:var(--apt-line); --line2:var(--apt-line); --p-line:var(--apt-line); --p-line2:var(--apt-line); --fx-line:var(--apt-line); --fx-line2:var(--apt-line); --txt:var(--apt-ink); --text:var(--apt-ink); --ivory:var(--apt-ink); --p-white:var(--apt-ink); --fx-text:var(--apt-ink); --muted:var(--apt-muted); --p-muted:var(--apt-muted); --muted-dim:var(--apt-muted); --fx-muted:var(--apt-muted); --red:var(--apt-accent); --p-red:var(--apt-accent); --accent-red:var(--apt-accent); --fx-red:var(--apt-button-accent);
 background:var(--apt-bg)!important; color:var(--apt-ink)!important;
}
html:is([data-atlas-public-theme="studio"],[data-atlas-public-theme="editorial"]) .atlas-public :is(.ar-header,.ar-mobile-panel,.ar-mobile-topbar,.ar-dock-main,.ar-subdock,.ar-subdock .ar-dock-inner,.atlas-footer,.portal-footer,.footer,footer,.maintenance-stage,.ecosystem) { background:var(--apt-soft)!important; border-color:var(--apt-line)!important; }
html:is([data-atlas-public-theme="studio"],[data-atlas-public-theme="editorial"]) .atlas-public .ar-dock-inner { background:var(--apt-soft)!important; border-color:var(--apt-line)!important; }
html:is([data-atlas-public-theme="studio"],[data-atlas-public-theme="editorial"]) .atlas-public :is(.atlas-card,.portal-card,.bpmfinder-card,.atelier-card,.pres-card,.pricing-card,.partner-v6-card,.mix-distance-card,.booking-conditions-box,.news-card,.artist-card,.made-card,.release-card,.atlas-tool-home-card,.partner-home-card,.staff-card,.job-card,.mc-block,.hero-group-teaser,.adh-section-block,.adh-card,.calendar-nav,.mobile-slot,.mobile-closed-card,.booking-rules article,.pitch-box,.auth-shell,.auth-panel,.maintenance-panel,.extrait-card,.player-box,.next-date-card,.playlist-card,.card,.panel,.box,.tool-card,.atlas-tools-card,.share-player-bar,.footer-action,.bpmfinder-drop,.upload-zone,.drop-zone,.studio-modal-dialog,.portal-modal-card,.popup-box,.social-widget-accordion,.ecosystem-copy) { background:var(--apt-panel)!important; color:var(--apt-ink)!important; border-color:var(--apt-line)!important; border-radius:var(--public-radius)!important; box-shadow:none!important; }
html:is([data-atlas-public-theme="studio"],[data-atlas-public-theme="editorial"]) .atlas-public :is(.ar-mobile-link,.partner-v6-header,.ecosystem-tab,.studio-calendar thead th,.studio-calendar .time-cell,.mobile-day-panel>header>span,.public-rail-controls>button,.public-motion-control button,.mobile-day-tabs button,.nav-scroller a,.filter-btn,.auth-visual,.tour-topbar,.tour-info-panel) { background:var(--apt-panel2)!important; color:var(--apt-ink)!important; border-color:var(--apt-line)!important; }
html:is([data-atlas-public-theme="studio"],[data-atlas-public-theme="editorial"]) .atlas-public :is(.inner-section.alt,.studio-section:nth-of-type(even),.section.alt) { background:var(--apt-soft)!important; }
html:is([data-atlas-public-theme="studio"],[data-atlas-public-theme="editorial"]) .atlas-public :is(.inner-hero,.portal-hero,.bpmfinder-hero,.partner-hero-section,.cinematic-hero,.hero-mini) { background:var(--apt-soft)!important; }
html:is([data-atlas-public-theme="studio"],[data-atlas-public-theme="editorial"]) .atlas-public :is(.inner-hero,.portal-hero,.studio-hero,.hero-mini)::before { background:var(--apt-hero-overlay)!important; }
html:is([data-atlas-public-theme="studio"],[data-atlas-public-theme="editorial"]) .atlas-public .hero-media::after { background:linear-gradient(90deg,var(--apt-soft),transparent 80%),linear-gradient(0deg,var(--apt-soft),transparent 65%)!important; }
html:is([data-atlas-public-theme="studio"],[data-atlas-public-theme="editorial"]) .atlas-public :is(.studio-urgent-notice,.pricing-card.is-featured,.ecosystem-tab.active,.mobile-day-tabs button.is-active,.ar-mobile-link.active,.ar-nav-link.active) { background:var(--apt-panel2)!important; color:var(--apt-accent)!important; border-color:var(--apt-accent)!important; }
html:is([data-atlas-public-theme="studio"],[data-atlas-public-theme="editorial"]) .atlas-public :is(input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=submit]),select,textarea) { background:var(--apt-bg)!important; color:var(--apt-ink)!important; border-color:var(--apt-line)!important; }
html:is([data-atlas-public-theme="studio"],[data-atlas-public-theme="editorial"]) .atlas-public :is(input,textarea)::placeholder { color:var(--apt-muted)!important; }
html:is([data-atlas-public-theme="studio"],[data-atlas-public-theme="editorial"]) .atlas-public :is(.btn-red,.atlas-btn.primary,.portal-btn.primary,.member-button,.auth-tab.active,.pinned-tag) { background:var(--apt-button-accent)!important; color:#fff!important; border-color:var(--apt-button-accent)!important; }
html:is([data-atlas-public-theme="studio"],[data-atlas-public-theme="editorial"]) .atlas-public :is(.mobile-slot.is-recording,.mobile-slot.is-location) { color:#f7f4ee!important; } /* Les statuts conservent leur couleur et leur lisibilité. */
html:is([data-atlas-public-theme="studio"],[data-atlas-public-theme="editorial"]) .atlas-public .mobile-slot.is-recording { background:#59381f!important; }
html:is([data-atlas-public-theme="studio"],[data-atlas-public-theme="editorial"]) .atlas-public .mobile-slot.is-location { background:#263d67!important; }
html:is([data-atlas-public-theme="studio"],[data-atlas-public-theme="editorial"]) .atlas-public .mobile-slot:is(.is-recording,.is-location) :is(time,span,strong) { color:#fff!important; }

/* Studio : densité mesurée, angles sobres, titres plus compacts. */
html[data-atlas-public-theme="studio"] .atlas-public :is(.inner-section,.studio-section,.portal-section,main>.section,.bpmfinder-section) { padding-block:clamp(36px,4.5vw,66px); }
html[data-atlas-public-theme="studio"] .atlas-public :is(.inner-title,.portal-title,.studio-hero h1,.bpmfinder-title) { font-size:clamp(34px,5.2vw,74px); }
html[data-atlas-public-theme="studio"] .atlas-public :is(.card-content,.atelier-card,.prod-info,.job-card,.partner-v6-body,.mc-block) { padding:20px; }
html[data-atlas-public-theme="studio"] .atlas-public :is(.manifesto,.manifesto h2) { background:var(--apt-panel)!important; color:var(--apt-ink)!important; }
html[data-atlas-public-theme="studio"] .atlas-public :is(.manifesto h2 em,.manifesto-label) { color:var(--apt-accent)!important; }
html[data-atlas-public-theme="studio"] .atlas-public .manifesto-stream span { color:var(--apt-muted); }

/* Éditorial : papier chaud, titres de revue et panneaux clairs. */
html[data-atlas-public-theme="editorial"] .atlas-public { --f-display:Georgia,'Times New Roman',serif; --font-display:var(--f-display); }
html[data-atlas-public-theme="editorial"] .atlas-public :is(h1,h2,h3,h4,.card-title,.ar-brand-copy strong,.ar-mobile-link-copy strong,.hero-title,.inner-title,.portal-title,.studio-hero h1,.bpmfinder-title) { color:var(--apt-ink)!important; -webkit-text-stroke:0!important; text-shadow:none!important; }
html[data-atlas-public-theme="editorial"] .atlas-public :is(p,label,li,.bio,.hero-sub,.section-note,.card-copy,.card-excerpt,.partner-v6-desc,.tool-desc,.footer-signature,.tour-info-copy) { color:var(--apt-muted)!important; }
html[data-atlas-public-theme="editorial"] .atlas-public :is(.ar-nav-link,.ar-brand-copy,.ar-mobile-brand,.ar-mobile-link-copy,.ar-dock-item,.ar-dock-label,.ar-dock-icon,.hero-link,.footer-links a,.portal-footer-links a,.release-title,.release-artist,.staff-name,.partner-v6-title,.prod-title,.auth-tab,.auth-sub,.auth-field label,.nav-scroller a,.bpm-number,.hero-signals b,.hero-signals span) { color:var(--apt-ink)!important; }
html[data-atlas-public-theme="editorial"] .atlas-public .auth-link { color:var(--apt-accent)!important; }
html[data-atlas-public-theme="editorial"] .atlas-public .ar-dock-item :is(.ar-dock-short,.ar-dock-label) { color:var(--apt-ink)!important; }
html[data-atlas-public-theme="editorial"] .atlas-public .ar-dock-item:is(.active,.is-expanded) { background:var(--apt-panel2)!important; }
html[data-atlas-public-theme="editorial"] .atlas-public .ar-dock-icon img { filter:brightness(.25)!important; }
html[data-atlas-public-theme="editorial"] .atlas-public :is(.inner-title em,.portal-title em,.hero-title-accent,.studio-hero h1 em,.section-kicker,.inner-kicker,.portal-kicker,.manifesto h2 em,.manifesto-label) { color:var(--apt-accent)!important; }
html[data-atlas-public-theme="editorial"] .atlas-public :is(.atlas-btn,.btn,.portal-btn,.btn-neon,.filter-btn) { color:var(--apt-ink)!important; border-color:var(--apt-line)!important; }
html[data-atlas-public-theme="editorial"] .atlas-public :is(.btn-red,.atlas-btn.primary,.portal-btn.primary,.member-button,.auth-tab.active,.pinned-tag,.portal-band,.portal-copy span) { color:#fff!important; }
html[data-atlas-public-theme="editorial"] .atlas-public :is(.news-card,.made-card) { color:#fff!important; background:#1c2028!important; } /* Cartes photographiques : texte sur le dégradé sombre conservé. */
html[data-atlas-public-theme="editorial"] .atlas-public :is(.news-card,.made-card) :is(h2,h3,p,.card-title,.card-excerpt,.card-copy) { color:#fff!important; }
html[data-atlas-public-theme="editorial"] .atlas-public .hero-title { font-family:var(--f-display); letter-spacing:-.05em; font-size:clamp(25px,7.5vw,104px); }
html[data-atlas-public-theme="editorial"] .atlas-public :is(.inner-title,.portal-title,.studio-hero h1,.bpmfinder-title) { font-family:var(--f-display)!important; }
html[data-atlas-public-theme="editorial"] .atlas-public :is(.manifesto,.manifesto h2) { background:var(--apt-soft)!important; color:var(--apt-ink)!important; }
html[data-atlas-public-theme="editorial"] .atlas-public .artist-catalog-visual img { filter:none; }
html[data-atlas-public-theme="editorial"] .atlas-public .hero-video { opacity:.32; }
@media(max-width:720px) { html[data-atlas-public-theme="editorial"] .atlas-public .hero-title { font-size:clamp(25px,7.5vw,58px); } }
@media print { html:is([data-atlas-public-theme="studio"],[data-atlas-public-theme="editorial"]) body.atlas-public { background:#fff!important; color:#000!important; } }
