/* Locked CSP Artist Dashboard production presentation.
   Presentation continuity comes from csp-platform/artist-dashboard.html.
   CSP OS remains the authority for identity, lifecycle, strategy, consultation, proposal and future client state. */

body.csp-artist-dashboard-active{background:#050505;color:#fff;overflow-x:hidden}
body.csp-artist-dashboard-active .app-shell{display:block;min-height:100vh;background:#050505}
body.csp-artist-dashboard-active .app-shell>.sidebar{display:none!important}
body.csp-artist-dashboard-active .main{display:block;min-width:0;min-height:100vh;background:#050505}
body.csp-artist-dashboard-active .main>.topbar{display:none!important}
body.csp-artist-dashboard-active #signed-out{display:none!important}
body.csp-artist-dashboard-active #content{display:block;width:100%;max-width:none;margin:0;padding:0;background:#050505}
body.csp-artist-dashboard-active #toast{z-index:1000}

.csp-dashboard-loading{min-height:100vh;display:grid;place-items:center;background:#050505;color:#999;font-size:.95rem}
.csp-locked-dashboard{--dash-red:#d71920;--dash-red-light:#ef3338;--dash-bg:#050505;--dash-panel:#0c0c0c;--dash-panel-soft:#101010;--dash-border:rgba(255,255,255,.09);--dash-muted:#8b8b8b;--dash-text:#f4f4f4;min-height:100vh;background:var(--dash-bg);color:var(--dash-text);font-family:Inter,Arial,sans-serif;line-height:1.5}
.csp-locked-dashboard *{box-sizing:border-box}
.csp-locked-dashboard button,.csp-locked-dashboard a{font:inherit}
.csp-locked-dashboard button{cursor:pointer}

.csp-dashboard-top{position:sticky;top:0;z-index:80;height:78px;padding:0 32px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--dash-border);background:rgba(7,7,7,.95);backdrop-filter:blur(18px)}
.csp-dashboard-brand{display:flex;align-items:center;gap:10px;padding:0;border:0;background:transparent;color:#fff;text-align:left}
.csp-dashboard-brand__mark{display:grid;place-items:center;width:58px;height:35px;border:1px solid rgba(255,255,255,.16);border-radius:7px;background:#0d0d0d;color:#fff;font-weight:950;letter-spacing:.09em;box-shadow:inset 0 -2px 0 rgba(215,25,32,.75)}
.csp-dashboard-brand__name{font-size:.78rem;text-transform:uppercase;letter-spacing:.14em;color:#bdbdbd;font-weight:800}
.csp-dashboard-account{display:flex;align-items:center;gap:13px}.csp-dashboard-account>div{text-align:right;display:grid}.csp-dashboard-account small{color:#777;font-size:.66rem;letter-spacing:.12em;text-transform:uppercase}.csp-dashboard-account strong{font-size:.9rem}
.csp-dashboard-avatar,.csp-dashboard-profile__avatar{display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#d72a30,#761217);color:#fff;font-weight:900;box-shadow:0 10px 30px rgba(215,25,32,.2)}
.csp-dashboard-avatar{width:42px;height:42px;font-size:.78rem}.csp-dashboard-profile__avatar{width:64px;height:64px;flex:0 0 auto}

.csp-dashboard-shell{width:min(1480px,100%);margin:0 auto;display:grid;grid-template-columns:250px minmax(0,1fr);min-height:calc(100vh - 78px)}
.csp-dashboard-side{position:sticky;top:78px;height:calc(100vh - 78px);padding:26px 20px 24px;border-right:1px solid var(--dash-border);background:#080808;display:flex;flex-direction:column;justify-content:space-between;gap:22px}
.csp-dashboard-nav{display:grid;gap:6px}.csp-dashboard-nav__item{position:relative;width:100%;padding:11px 13px;border:1px solid transparent;border-radius:9px;background:transparent;color:#a5a5a5;text-align:left;font-size:.78rem;font-weight:800;transition:.2s ease}
.csp-dashboard-nav__item:hover{color:#fff;background:#111;border-color:rgba(255,255,255,.08)}
.csp-dashboard-nav__item.is-active{color:#fff;background:linear-gradient(90deg,rgba(215,25,32,.34),rgba(215,25,32,.08));border-color:rgba(215,25,32,.46)}
.csp-dashboard-nav__item.is-locked{color:#5e5e5e;cursor:not-allowed}.csp-dashboard-nav__item.is-locked::after{content:'Locked';float:right;color:#565656;font-size:.58rem;letter-spacing:.08em;text-transform:uppercase}
.csp-dashboard-side__status{padding:16px;border:1px solid var(--dash-border);border-radius:10px;background:#0d0d0d}.csp-dashboard-side__status small{display:block;color:#696969;font-size:.62rem;text-transform:uppercase;letter-spacing:.1em}.csp-dashboard-side__status strong{display:block;margin:7px 0 6px;font-size:.88rem}.csp-dashboard-side__status p{margin:0;color:#797979;font-size:.72rem;line-height:1.5}

.csp-dashboard-main{min-width:0;padding:0 28px 64px;background:#070707}
.csp-dashboard-hero{position:relative;min-height:300px;margin:0 -28px;padding:42px 50px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(270px,.55fr);gap:36px;align-items:center;overflow:hidden;background:radial-gradient(circle at 82% 45%,rgba(215,25,32,.23),transparent 18%),radial-gradient(circle at 72% 65%,rgba(255,255,255,.06),transparent 24%),linear-gradient(112deg,#050505 0%,#080808 55%,#151515 100%)}
.csp-dashboard-hero::after{content:'';position:absolute;right:-80px;top:-60px;width:430px;height:430px;border:1px solid rgba(215,25,32,.12);border-radius:50%;box-shadow:0 0 0 55px rgba(215,25,32,.025),0 0 0 110px rgba(255,255,255,.012)}
.csp-dashboard-hero__copy{position:relative;z-index:2;max-width:760px}.csp-dashboard-kicker,.csp-dashboard-eyebrow{margin:0;color:var(--dash-red-light);font-size:.68rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.csp-dashboard-hero h1{max-width:760px;margin:6px 0 14px;font-family:Impact,'Arial Narrow',sans-serif;font-size:clamp(3.1rem,5.3vw,5.4rem);line-height:.91;letter-spacing:-.015em;text-transform:uppercase}.csp-dashboard-lead{max-width:680px;margin:0;color:#b0b0b0;font-size:.94rem;line-height:1.7}
.csp-dashboard-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:23px}.csp-dashboard-btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 16px;border:1px solid transparent;border-radius:9px;text-decoration:none;font-size:.78rem;font-weight:900;transition:.2s ease}.csp-dashboard-btn:hover{transform:translateY(-2px)}.csp-dashboard-btn--primary{background:var(--dash-red);color:#fff}.csp-dashboard-btn--secondary{border-color:rgba(255,255,255,.18);background:rgba(8,8,8,.72);color:#fff}
.csp-dashboard-hero__stats{position:relative;z-index:2;padding:17px 20px;border:1px solid rgba(255,255,255,.12);border-radius:11px;background:rgba(10,10,10,.88);backdrop-filter:blur(12px)}
.csp-dashboard-stat{padding:10px 0;border-bottom:1px solid rgba(255,255,255,.075)}.csp-dashboard-stat:last-child{border-bottom:0}.csp-dashboard-stat small{display:block;color:#747474;font-size:.6rem;letter-spacing:.09em;text-transform:uppercase}.csp-dashboard-stat strong{display:block;margin-top:3px;font-size:.84rem}

.csp-dashboard-divider{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;margin:0 -1px}.csp-dashboard-divider span{height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.16),transparent)}.csp-dashboard-divider strong{display:grid;place-items:center;width:70px;height:42px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:#090909;color:#ddd;font-size:.62rem;letter-spacing:.12em;box-shadow:inset 0 -2px 0 rgba(215,25,32,.55)}
.csp-dashboard-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:12px;margin-top:14px}.csp-dashboard-primary{min-width:0;display:grid;gap:10px}.csp-dashboard-rail{align-self:start;display:grid;gap:10px;position:sticky;top:90px}

.csp-dashboard-panel{padding:20px;border:1px solid var(--dash-border);border-radius:10px;background:linear-gradient(145deg,#0e0e0e,#090909);overflow:hidden}.csp-dashboard-panel h2{margin:6px 0 10px;font-family:Impact,'Arial Narrow',sans-serif;font-size:clamp(1.75rem,3vw,2.85rem);font-weight:500;line-height:1;text-transform:uppercase}.csp-dashboard-panel>p:not(.csp-dashboard-eyebrow){margin:0;color:#969696;font-size:.84rem;line-height:1.62}
.csp-dashboard-blueprint{padding:25px;border-color:rgba(215,25,32,.43);background:radial-gradient(circle at 0 0,rgba(215,25,32,.13),transparent 34%),#0d0d0d}.csp-dashboard-blueprint h2{font-size:clamp(2rem,3.4vw,3.15rem)}.csp-dashboard-blueprint__meta{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:17px}.csp-dashboard-blueprint__meta .csp-dashboard-stat{padding:13px;border:1px solid rgba(255,255,255,.065);border-radius:8px;background:#090909}.csp-dashboard-blueprint__actions{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:18px}.csp-dashboard-blueprint__actions span{color:#666;font-size:.68rem}
.csp-dashboard-text-link,.csp-dashboard-card-link{padding:0;border:0;background:transparent;color:#fff;text-decoration:none;font-size:.75rem;font-weight:900}.csp-dashboard-text-link:hover,.csp-dashboard-card-link:hover{color:var(--dash-red-light)}

.csp-dashboard-journey{padding-bottom:18px;border-color:rgba(215,25,32,.22)}.csp-dashboard-three,.csp-dashboard-four{display:grid;gap:8px;margin-top:14px}.csp-dashboard-three{grid-template-columns:repeat(3,1fr)}.csp-dashboard-four{grid-template-columns:repeat(4,1fr)}
.csp-dashboard-mini-card{min-height:152px;padding:17px;border:1px solid rgba(255,255,255,.07);border-radius:8px;background:#090909;display:flex;flex-direction:column}.csp-dashboard-mini-card .csp-dashboard-number{color:var(--dash-red-light);font-family:Impact,'Arial Narrow',sans-serif;font-size:1.7rem;line-height:1}.csp-dashboard-mini-card strong{display:block;margin:9px 0 6px;font-size:.88rem}.csp-dashboard-mini-card p{margin:0 0 13px;color:#7f7f7f;font-size:.72rem;line-height:1.48}.csp-dashboard-mini-card .csp-dashboard-card-link,.csp-dashboard-mini-card .csp-dashboard-state{margin-top:auto;width:max-content;max-width:100%}
.csp-dashboard-state{display:inline-flex;padding:5px 8px;border:1px solid rgba(215,25,32,.23);border-radius:7px;background:rgba(215,25,32,.08);color:#d8878a;font-size:.58rem;font-weight:900;letter-spacing:.055em;text-transform:uppercase}

.csp-dashboard-split{display:grid;grid-template-columns:1.2fr .8fr;gap:10px}.csp-dashboard-readiness{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:13px}.csp-dashboard-readiness .csp-dashboard-stat{padding:12px;border:1px solid rgba(255,255,255,.065);border-radius:8px;background:#090909}.csp-dashboard-bottleneck{border-color:rgba(215,25,32,.35);background:linear-gradient(145deg,rgba(215,25,32,.1),#0d0d0d)}.csp-dashboard-bottleneck h2{font-family:Inter,Arial,sans-serif;font-size:1.12rem;text-transform:none;font-weight:800}

.csp-dashboard-learning{padding-bottom:18px}.csp-dashboard-learning .csp-dashboard-three{margin-top:15px}.csp-dashboard-learning-card{min-height:165px;padding:17px;border:1px solid rgba(255,255,255,.075);border-radius:8px;background:#0a0a0a;color:#fff;text-decoration:none;display:flex;flex-direction:column;transition:.2s ease}.csp-dashboard-learning-card:hover{transform:translateY(-2px);border-color:rgba(215,25,32,.55);box-shadow:0 12px 30px rgba(215,25,32,.08)}.csp-dashboard-learning-card small{color:var(--dash-red-light);font-size:.6rem;letter-spacing:.08em;text-transform:uppercase}.csp-dashboard-learning-card strong{margin:10px 0 7px;font-size:.88rem;line-height:1.32}.csp-dashboard-learning-card p{margin:0;color:#777;font-size:.69rem;line-height:1.45}.csp-dashboard-learning-card span{margin-top:auto;padding-top:15px;color:#aaa;font-size:.68rem;font-weight:800}
.csp-dashboard-proposal__row{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.csp-dashboard-proposal__row p{max-width:720px;margin:0;color:#919191;font-size:.8rem;line-height:1.55}
.csp-dashboard-locked{background:linear-gradient(145deg,rgba(255,255,255,.02),#0d0d0d)}.csp-dashboard-four div{padding:13px;border:1px solid rgba(255,255,255,.055);border-radius:8px;background:#090909;opacity:.7}.csp-dashboard-four strong{display:block;font-size:.76rem}.csp-dashboard-four span{display:block;margin-top:4px;color:#626262;font-size:.62rem}
.csp-dashboard-next{padding-bottom:18px}
.csp-dashboard-profile{display:flex;align-items:center;gap:14px;padding:17px 3px}.csp-dashboard-profile small{display:block;color:#6f6f6f;font-size:.6rem;letter-spacing:.1em;text-transform:uppercase}.csp-dashboard-profile strong{display:block;margin-top:3px;font-size:.86rem}.csp-dashboard-profile p{margin:3px 0 0;color:#696969;font-size:.67rem;line-height:1.45}
.csp-dashboard-rail-card{padding:21px}.csp-dashboard-rail-card h2{font-family:Inter,Arial,sans-serif;font-size:1.04rem;text-transform:none;font-weight:800}.csp-dashboard-rail-card .csp-dashboard-state,.csp-dashboard-rail-card .csp-dashboard-card-link{margin-top:13px}

.csp-locked-dashboard section[id]{scroll-margin-top:92px}

@media(max-width:1180px){.csp-dashboard-layout{grid-template-columns:1fr}.csp-dashboard-rail{position:static;grid-template-columns:1fr 1fr}}
@media(max-width:980px){.csp-dashboard-shell{grid-template-columns:1fr}.csp-dashboard-side{position:static;height:auto;border-right:0;border-bottom:1px solid var(--dash-border);padding:12px 18px}.csp-dashboard-nav{display:flex;overflow-x:auto;gap:5px}.csp-dashboard-nav__item{width:auto;white-space:nowrap}.csp-dashboard-nav__item.is-locked{display:none}.csp-dashboard-side__status{display:none}.csp-dashboard-main{padding:0 20px 50px}.csp-dashboard-hero{margin:0 -20px;padding:36px 28px}.csp-dashboard-three{grid-template-columns:1fr}.csp-dashboard-four{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.csp-dashboard-top{height:68px;padding:0 18px}.csp-dashboard-shell{min-height:calc(100vh - 68px)}.csp-dashboard-account>div{display:none}.csp-dashboard-hero{grid-template-columns:1fr;gap:22px}.csp-dashboard-hero h1{font-size:clamp(2.7rem,13vw,4.3rem)}.csp-dashboard-hero__stats{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.csp-dashboard-blueprint__meta,.csp-dashboard-readiness,.csp-dashboard-split{grid-template-columns:1fr}.csp-dashboard-proposal__row{display:grid}.csp-dashboard-rail{grid-template-columns:1fr}}
@media(max-width:520px){.csp-dashboard-main{padding:0 14px 42px}.csp-dashboard-hero{margin:0 -14px;padding:30px 20px}.csp-dashboard-brand__name{display:none}.csp-dashboard-four{grid-template-columns:1fr}.csp-dashboard-blueprint__actions{align-items:flex-start;flex-direction:column}.csp-dashboard-hero__stats{grid-template-columns:1fr}.csp-dashboard-divider strong{width:56px;height:36px}.csp-dashboard-panel{padding:17px}}
