
:root{--black:#050505;--panel:#111214;--panel2:#17181b;--line:#292b30;--white:#fff;--text:#f5f5f5;--muted:#999da5;--soft:#d9d9d9;--accent:#fff;--danger:#ff6b6b;--radius:14px}
*{box-sizing:border-box}html{background:var(--black)}body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;background:#0b0c0e;color:var(--text)}
a{color:inherit}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:245px;background:#000;border-right:1px solid var(--line);padding:24px 18px;display:flex;flex-direction:column;z-index:10}
.logo-wrap{display:block;background:#000;border:1px solid #202124;border-radius:10px;overflow:hidden}.logo-wrap img{display:block;width:100%;height:auto}.system-name{padding:20px 8px 16px;border-bottom:1px solid var(--line)}.system-name strong{display:block;font-size:24px;letter-spacing:.12em}.system-name span{display:block;color:var(--muted);font-size:10px;line-height:1.45;text-transform:uppercase;letter-spacing:.08em;margin-top:5px}
nav{padding-top:12px}nav a{display:block;text-decoration:none;padding:10px 12px;margin:2px 0;border-radius:8px;color:#d8d8d8;font-size:13px;font-weight:700}nav a:hover{background:#1c1d20;color:#fff}.nav-label{font-size:9px;letter-spacing:.18em;color:#6f737b;text-transform:uppercase;padding:16px 12px 5px}.sidebar-tagline{margin-top:auto;padding:14px 8px 2px;font-family:Georgia,serif;color:#b7b7b7;font-size:11px;letter-spacing:.08em}
.page{margin-left:245px;min-height:100vh}header{height:64px;padding:0 3vw;background:rgba(10,10,11,.94);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:.1em;position:sticky;top:0;z-index:5;backdrop-filter:blur(12px)}.mobile-brand{display:none}.env-pill{border:1px solid #34363b;padding:7px 10px;border-radius:99px;color:#bfc1c6;font-size:9px}
main{min-height:calc(100vh - 120px);padding:36px clamp(20px,4vw,58px);display:block}footer{padding:20px 4vw;border-top:1px solid var(--line);font-size:11px;color:#777b82}
.hero,.card,.results,.wide{width:min(1100px,100%);background:linear-gradient(145deg,#151619,#0f1012);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(26px,4vw,48px);box-shadow:0 18px 60px #0006;margin:0 auto 24px}.wide{width:100%}.narrow{max-width:560px;margin:3vh auto}
h1{font-size:clamp(34px,5vw,62px);line-height:1;margin:.18em 0 .35em;letter-spacing:-.045em;text-transform:uppercase}h2{font-size:clamp(21px,2.5vw,32px);letter-spacing:-.025em}h3{letter-spacing:-.02em}p{line-height:1.65;color:#c6c8cc}.eyebrow{font-size:10px;font-weight:900;letter-spacing:.18em;color:#fff;text-transform:uppercase}.muted{color:var(--muted);font-size:12px}
.grid{display:grid;gap:12px}.five,.cats{grid-template-columns:repeat(5,1fr);margin:28px 0}.five span,.cats div{background:#1a1b1e;border:1px solid #2b2d31;padding:16px;border-radius:10px;font-weight:700}.cats b{display:block;color:#a7aab0;font-size:10px;min-height:34px;text-transform:uppercase;letter-spacing:.08em}.cats strong{font-size:26px}
.progress{height:5px;background:#26272b;border-radius:99px;overflow:hidden;margin-bottom:28px}.progress i{display:block;height:100%;background:#fff}.choice{display:block;margin:10px 0}.choice input{position:absolute;opacity:0}.choice span{display:flex;gap:16px;padding:17px;border:1px solid #303238;background:#151619;border-radius:10px;cursor:pointer;line-height:1.4}.choice span:hover{border-color:#6d7077}.choice input:checked+span{border-color:#fff;background:#222327}.choice b{display:grid;place-items:center;min-width:27px;height:27px;border-radius:7px;background:#fff;color:#000}
button,.button,.button-link,.secondary{border:1px solid #fff;border-radius:8px;padding:13px 18px;font-weight:900;text-decoration:none;display:inline-block;cursor:pointer;letter-spacing:.035em}button,.button,.button-link{background:#fff;color:#000}.secondary{background:transparent;color:#fff;border-color:#3d4046}button:hover,.button:hover,.button-link:hover{opacity:.86}.actions{display:flex;justify-content:space-between;margin-top:28px}
.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.formgrid label,label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#c8c9cd}.formgrid input,.formgrid textarea,.formgrid select,input,textarea,select{width:100%;margin-top:7px;padding:13px;background:#0d0e10;border:1px solid #34363b;color:#fff;border-radius:8px;font:inherit}.formgrid textarea,textarea{min-height:105px}.full{grid-column:1/-1}.check{display:flex;gap:10px;align-items:flex-start;font-weight:400!important}.check input{width:auto}
.score{font-size:clamp(76px,12vw,128px);font-weight:950;letter-spacing:-.075em;line-height:.9;margin:25px 0}.score small{font-size:24px;color:#7e8188}.moves{padding:0;list-style:none;counter-reset:m}.moves li{counter-increment:m;display:grid;grid-template-columns:180px 1fr;gap:18px;padding:18px 0;border-bottom:1px solid #292b30}.moves li b{color:#fff}.moves li span{color:#b7bac0}
.toolbar{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:20px}.toolbar h1{font-size:clamp(30px,4vw,48px)}.grid.two{grid-template-columns:1fr 1fr}.table-wrap{overflow:auto;background:#121315;border-radius:12px;border:1px solid var(--line)}table{width:100%;border-collapse:collapse;font-size:12px}th,td{padding:13px;border-bottom:1px solid #292b30;text-align:left;vertical-align:top}th{background:#050505;color:#aeb1b6;text-transform:uppercase;letter-spacing:.08em;font-size:9px}td{color:#e5e6e8}tr:hover td{background:#17181b}.alert{padding:12px;background:#2a1718;border:1px solid #613438;border-radius:9px;margin:1rem 0}.score-box{display:flex;flex-direction:column;padding:1rem;background:#191a1d;border:1px solid #303238;border-radius:12px;margin:1rem 0}.score-box span{font-size:2rem;font-weight:900}.verified-card{border:1px solid #fff}.center{text-align:center}dl{display:grid;grid-template-columns:140px 1fr;gap:.5rem}dt{font-weight:800}
.card h2:first-child{margin-top:0}.card strong{color:#fff}
@media(max-width:900px){.sidebar{position:static;width:100%;height:auto}.sidebar nav,.sidebar-tagline,.system-name span{display:none}.logo-wrap{width:180px}.system-name{border:0;padding:10px}.app-shell{display:block}.page{margin-left:0}.desktop-brand{display:none}.mobile-brand{display:inline}.five,.cats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.five,.cats,.formgrid,.grid.two{grid-template-columns:1fr}.moves li{grid-template-columns:1fr}.hero,.card,.results{padding:25px 18px}h1{font-size:36px}.toolbar{flex-direction:column}table{min-width:760px}.env-pill{display:none}}

/* Build 2.2 public/staff experience separation */
.artist-experience .sidebar{background:linear-gradient(180deg,#000 0%,#080808 100%)}
.artist-experience .system-name strong{letter-spacing:.16em}
.artist-experience nav a{font-size:12px}
.artist-experience .page{background:radial-gradient(circle at 90% 0%,#1a1b1e 0,transparent 34%),#0b0c0e}
.public-info{margin-top:22px}
.public-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:24px}
.public-steps>div{background:#0c0d0f;border:1px solid #292b30;border-radius:12px;padding:22px}
.public-steps b{display:block;color:#73777e;font-size:12px;letter-spacing:.12em;margin-bottom:12px}
.public-steps strong{display:block;font-size:19px;text-transform:uppercase;margin-bottom:5px}
.public-steps p{font-size:13px;margin-bottom:0}
.footer-staff{float:right}
.footer-staff a{color:#73777e;text-decoration:none}
.footer-staff a:hover{color:#fff}
.staff-experience .sidebar{box-shadow:12px 0 30px #0003}
@media(max-width:900px){.artist-experience .sidebar nav{display:block}.artist-experience .sidebar{padding-bottom:14px}.artist-experience .sidebar .logo-wrap{width:150px}.artist-experience .system-name{display:none}.artist-experience nav{display:flex;gap:6px;flex-wrap:wrap;padding-top:10px}.artist-experience .nav-label{display:none}.artist-experience nav a{padding:8px 10px;border:1px solid #292b30}.public-steps{grid-template-columns:1fr}.footer-staff{float:none;display:block;margin-top:8px}}

/* Build 2.2.1 locked staff navigation before authentication */
.nav-locked{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;margin:2px 0;border-radius:8px;color:#5d6066;font-size:13px;font-weight:700;cursor:not-allowed;user-select:none;border:1px solid transparent}
.nav-locked i{font-style:normal;font-size:8px;letter-spacing:.12em;color:#45484e;border:1px solid #2b2d31;border-radius:99px;padding:3px 5px}
.staff-locked .sidebar{opacity:.92}
.staff-locked .logo-wrap{pointer-events:none}
.staff-locked .system-name{opacity:.78}
.staff-locked .sidebar-tagline{opacity:.55}
.staff-locked nav a{pointer-events:none}

/* Build 2.3 role-based access experience */
.staff-role-card{margin:4px 0 18px;padding:12px;border:1px solid #292b30;border-radius:10px;background:#0c0d0f}
.staff-role-card span{display:block;font-size:8px;letter-spacing:.14em;color:#777b82;margin-bottom:5px}
.staff-role-card strong{display:block;font-size:14px;letter-spacing:.08em;color:#fff}
.staff-role-card small{display:block;font-size:10px;color:#777b82;margin-top:3px}

.role-shortcuts{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.role-shortcuts a{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#ddd;text-decoration:none;border:1px solid #292b30;border-radius:7px;padding:7px 9px}
.role-shortcuts a:hover{border-color:#666;color:#fff}

/* Build 2.3.1 — unmistakable role-restricted navigation state */
.active-nav .nav-locked{
  color:#62656b !important;
  background:#101114 !important;
  border:1px solid #202226 !important;
  opacity:.58 !important;
  cursor:not-allowed !important;
  pointer-events:none !important;
  user-select:none !important;
  text-decoration:none !important;
  filter:grayscale(1);
}
.active-nav .nav-locked i{
  color:#6c7077 !important;
  background:#141519 !important;
  border-color:#2a2c31 !important;
}
.active-nav .nav-locked:hover,
.active-nav .nav-locked:focus,
.active-nav .nav-locked:active{
  color:#62656b !important;
  background:#101114 !important;
  border-color:#202226 !important;
  outline:none !important;
  box-shadow:none !important;
  transform:none !important;
}

/* Build 2.3.2 persistent staff sign-out */
.header-actions{display:flex;align-items:center;gap:10px}
.signout-form{margin:0}
.signout-button{
  appearance:none;
  background:#111214;
  color:#d9d9dc;
  border:1px solid #353840;
  border-radius:8px;
  padding:8px 12px;
  font-size:10px;
  letter-spacing:.09em;
  text-transform:uppercase;
  cursor:pointer;
}
.signout-button:hover,.signout-button:focus{
  color:#fff;
  border-color:#777b82;
  background:#17181b;
}
@media (max-width:760px){
  .header-actions{gap:6px}
  .signout-button{padding:7px 9px;font-size:9px}
}

/* Build 2.3.4 assessment completion workflow */
.completion-confirmation{
  display:flex;flex-direction:column;gap:5px;
  margin:0 0 22px;padding:16px 18px;
  border:1px solid #4b4f56;border-radius:10px;background:#111318;
}
.completion-confirmation strong{
  font-size:11px;letter-spacing:.13em;color:#fff;
}
.completion-confirmation span{color:#c9cbd0;font-size:13px}
.queue-new{
  display:inline-block;margin:0 7px 5px 0;padding:3px 7px;
  border:1px solid #777b82;border-radius:999px;
  font-size:9px;font-weight:700;letter-spacing:.12em;color:#fff;
  vertical-align:middle;
}

/* Build 2.3.4 final-prep next-step confirmation */
.next-step-confirmation{max-width:860px;margin:0 auto}
.next-step-card{padding:34px}
.next-step-card h1{margin-bottom:18px}
.next-step-message{font-size:16px;line-height:1.65;max-width:760px}
.next-step-email-summary{
  display:flex;flex-direction:column;gap:5px;margin:24px 0;padding:15px 17px;
  border:1px solid #31343a;border-radius:9px;background:#0d0e10
}
.next-step-email-summary span{
  color:#85888e;font-size:9px;letter-spacing:.12em;text-transform:uppercase
}
.next-step-email-summary strong{font-size:13px;color:#fff}
/* RIE 1.0 artist results experience */
.rie-score-row{display:grid;grid-template-columns:280px 1fr;gap:42px;align-items:center}.rie-stage-copy{border-left:1px solid var(--line);padding-left:34px}.rie-stage-copy>span,.rie-snapshot span{display:block;font-size:9px;letter-spacing:.14em;color:#858991;text-transform:uppercase}.rie-stage-copy>strong{display:block;font-size:25px;line-height:1.2;margin:9px 0}.rie-snapshot{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0}.rie-snapshot>div{padding:20px;border:1px solid var(--line);border-radius:10px;background:#0d0e10}.rie-snapshot strong{display:block;margin:8px 0}.rie-snapshot small{color:#aeb1b6}.rie-buttons{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.move-tag{display:inline-block;font-style:normal;font-size:9px;letter-spacing:.12em;border:1px solid #555a62;border-radius:99px;padding:4px 7px;margin:0 8px 7px 0}.rie-moves li>div b{display:block}.rie-path{border-color:#444850}.rie-results .cats strong{font-size:22px}@media(max-width:800px){.rie-score-row,.rie-snapshot{grid-template-columns:1fr}.rie-stage-copy{border-left:0;border-top:1px solid var(--line);padding:24px 0 0}.rie-score-row{gap:20px}}

/* RIE 2.4.1 — approved Stage 1 Foundation artist experience */
.foundation-approved{padding-bottom:28px}.foundation-score-layout{display:grid;grid-template-columns:220px 1fr;gap:34px;align-items:center;margin:20px 0 26px}.foundation-score-ring{--score:0;width:190px;height:190px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#b7ff22 calc(var(--score)*1%),#25282d 0);position:relative}.foundation-score-ring:before{content:"";position:absolute;inset:12px;border-radius:50%;background:#101114}.foundation-score-ring>div{position:relative;text-align:center}.foundation-score-ring strong{font-size:64px;line-height:.85}.foundation-score-ring span{display:block;color:#94989f;font-weight:800;margin-top:8px}.foundation-score-copy h1{font-size:clamp(42px,7vw,72px);margin:0 0 12px}.foundation-score-copy p{max-width:760px;font-size:16px;line-height:1.6}.foundation-path-strip{display:grid;grid-template-columns:190px 1fr;gap:20px;align-items:center;background:#5a2a86;border:1px solid #8750b6;border-radius:10px;padding:16px 18px;margin:18px 0 24px}.foundation-path-strip span{font-size:9px;letter-spacing:.14em;font-weight:900}.foundation-path-strip strong{font-size:15px}.foundation-path-strip b{color:#b7ff22;padding:0 8px}.foundation-domains{margin-top:10px}.foundation-confirm{border-color:#4b4f56}.foundation-no-strength{display:flex;flex-direction:column;gap:5px;padding:16px 18px;margin:18px 0;border-left:4px solid #b7ff22;background:#141618}.foundation-no-strength strong{font-size:16px}.foundation-no-strength span{color:#b9bdc3;font-size:13px;line-height:1.5}.foundation-gap-list{display:grid;gap:9px;margin:20px 0}.foundation-gap-list article{display:grid;grid-template-columns:220px 1fr 54px;gap:18px;align-items:center;padding:15px 16px;background:#0d0e10;border:1px solid #2c2f34;border-radius:9px}.foundation-gap-list article>div{display:flex;flex-direction:column;gap:5px}.foundation-gap-list em{font-style:normal;font-size:8px;letter-spacing:.12em;color:#b7ff22}.foundation-gap-list strong{font-size:13px}.foundation-gap-list span{color:#b8bbc1;font-size:12px;line-height:1.45}.foundation-gap-list small{text-align:right;font-size:16px;font-weight:900}.foundation-confirm-question{font-weight:800;color:#fff;margin-top:22px}.foundation-yes{background:#b7ff22!important;border-color:#b7ff22!important;color:#050505!important}.foundation-moves .rie-moves li{grid-template-columns:42px 190px 1fr;align-items:center}.move-number{width:34px;height:34px;border:1px solid #555a62;border-radius:50%;display:grid;place-items:center;font-weight:900}.move-meta b{display:block}.move-tag.fix{border-color:#ff6b6b;color:#ff9b9b}.move-tag.build{border-color:#b7ff22;color:#b7ff22}.move-tag.leverage{border-color:#8e7dff;color:#b8afff}.foundation-development{border:1px solid #b7ff22;background:linear-gradient(135deg,#101510,#111214)}.foundation-development h2{font-size:34px}@media(max-width:800px){.foundation-score-layout{grid-template-columns:1fr}.foundation-score-ring{width:160px;height:160px}.foundation-score-ring strong{font-size:52px}.foundation-path-strip{grid-template-columns:1fr}.foundation-gap-list article{grid-template-columns:1fr}.foundation-gap-list small{text-align:left}.foundation-moves .rie-moves li{grid-template-columns:42px 1fr}.foundation-moves .rie-moves li>span{grid-column:1/-1;padding-left:52px}}
