.srDash,.srPublicHost,.srForm,.srConfirm{width:100%;max-width:100%;min-width:0;color:#fff}
.srDash h2,.srPublicHost h2,.srForm h1{margin:4px 0 6px;font-size:34px;line-height:1.05;font-weight:760;letter-spacing:-.03em}
.srDash h3,.srPublicHost h3{margin:0;font-size:18px;line-height:1.2}
.srKicker{margin:0;color:#c084fc;font-size:11px;font-weight:800;letter-spacing:.16em}
.srSub,.srMuted{margin:0;color:#bdb2cd;font-size:15px;line-height:1.45}
.srHead{margin-bottom:16px;min-width:0}
.srSection{margin-top:18px;min-width:0}
.srSection>h3{margin-bottom:8px}
.srSurface{
  background:#120d1a;
  border:1px solid rgba(150,90,220,.28);
  border-radius:18px;
  padding:18px;
  min-width:0;
}
.srSummary{display:grid;grid-template-columns:minmax(180px,240px) minmax(0,1fr);gap:14px;min-width:0}
.srOverallScore{font-size:56px;line-height:.9;font-weight:760;letter-spacing:-.04em}
.srCount{display:block;margin-top:8px;color:#d7c4ef;font-weight:750}
.srStars{color:#f2b65e;letter-spacing:.08em;font-size:18px;line-height:1}
.srNull{color:#bdb2cd;font-weight:650}
.srCats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;min-width:0}
.srCat{
  min-width:0;
  padding:12px;
  border-radius:14px;
  background:#171022;
  border:1px solid rgba(255,255,255,.06);
}
.srCatLabel{display:block;color:#d7c4ef;font-size:13px;font-weight:750}
.srCatValue{display:block;margin-top:6px;min-width:0}
.srDist{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px}
.srDistRow{display:grid;grid-template-columns:72px minmax(0,1fr) 2ch;gap:8px;align-items:center;min-width:0}
.srDistLabel{color:#efe8f8;font-size:14px;font-weight:700}
.srDistTrack{height:10px;border-radius:999px;background:#241833;overflow:hidden}
.srDistFill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#f2b65e,#e652d6)}
.srDistCount{text-align:right;font-variant-numeric:tabular-nums;color:#efe8f8}
.srList{display:grid;gap:12px;min-width:0}
.srCard{
  min-width:0;
  padding:16px;
  border-radius:18px;
  background:linear-gradient(180deg,#171222,#100c18);
  border:1px solid rgba(150,90,220,.28);
}
.srCardTop{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;min-width:0}
.srName{font-size:16px;font-weight:760}
.srMeta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:6px;color:#bdb2cd;min-width:0}
.srChip{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:800;
  letter-spacing:.02em;
}
.srChip-parent{color:#ffd4df;background:rgba(236,98,132,.18);border:1px solid rgba(255,168,186,.55)}
.srChip-dancer{color:#d6f4ff;background:rgba(56,196,255,.18);border:1px solid rgba(120,220,255,.55)}
.srText{margin:12px 0 0;color:#efe8f8;font-size:15px;line-height:1.5;overflow-wrap:anywhere}
.srCardCats{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:6px}
.srCardCats li{display:flex;justify-content:space-between;gap:12px;min-width:0;color:#d7c4ef}
.srCardCats span:last-child{color:#fff;white-space:nowrap}
.srDate{margin:10px 0 0;color:#8d829f;font-size:13px}
.srEmpty{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:8px 0 2px;min-width:0}
.srEmptyMark{
  width:72px;height:72px;border-radius:22px;display:grid;place-items:center;
  background:linear-gradient(160deg,#3a2168,#24143f);color:#e7d7ff
}
.srEmpty h3{margin:0;font-size:28px;letter-spacing:-.03em}
.srEmpty p{margin:0;max-width:46ch;color:#bdb2cd;line-height:1.45}
.srWriteRow{margin:0 0 14px}
.srRoleNote{margin:0 0 14px;color:#d7c4ef;line-height:1.45}
.srError{color:#ffb7c6;font-weight:700}
.srForm{
  max-width:1040px;
  margin:20px auto 36px;
  padding:28px 32px 24px;
  border:1px solid rgba(150,90,220,.38);
  border-radius:24px;
  background:
    radial-gradient(120% 80% at 100% 0%,rgba(120,50,220,.2),transparent 42%),
    linear-gradient(180deg,#161222 0%,#0c0912 100%);
  box-shadow:0 28px 70px rgba(0,0,0,.32);
}
.srForm h2{margin:0 0 8px;font-size:clamp(26px,3vw,36px);letter-spacing:-.04em;line-height:1.12}
.srLead{margin:0 0 18px;color:#d4c6e6;font-size:17px;line-height:1.5}
.srProgress{margin:4px 0 12px}
.srProgMeta{display:flex;justify-content:space-between;gap:12px;margin:0 0 12px}
.srStep{color:#f2b65e;font-size:12px;font-weight:800;letter-spacing:.08em}
.srProgName{font-weight:750}
.srTracker{display:flex;list-style:none;margin:0;padding:0;position:relative}
.srTracker::before{
  content:"";
  position:absolute;
  left:calc(100% / 14);
  right:calc(100% / 14);
  top:15px;
  height:2px;
  background:linear-gradient(90deg,#b45cff 0%,#b45cff calc(var(--sr-fill,0) * 100%),#322444 calc(var(--sr-fill,0) * 100%),#322444 100%);
}
.srTrackItem{position:relative;z-index:1;flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}
.srNode{
  width:30px;height:30px;border-radius:999px;display:grid;place-items:center;
  border:2px solid #3d2c56;background:#120b1c;box-shadow:0 0 0 4px #120e1a
}
.srTrackItem.is-done .srNode{border-color:#d2a6ff;background:linear-gradient(180deg,#b06bff,#7a2cff)}
.srTrackItem.is-current .srNode{border-color:#f6c56e;box-shadow:0 0 0 4px #120e1a,0 0 0 7px rgba(242,182,94,.32)}
.srNodeLabel{max-width:100%;color:#a898c0;font-size:12px;font-weight:700;line-height:1.2}
.srTrackItem.is-current .srNodeLabel,.srTrackItem.is-done .srNodeLabel{color:#fff}
.srPerspectiveGrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.srPerspective{
  display:grid;grid-template-columns:64px minmax(0,1fr) 34px;gap:14px;align-items:center;
  width:100%;min-height:148px;padding:18px;text-align:left;color:#fff;cursor:pointer;border-radius:22px
}
.srTone-parent{border:1px solid rgba(236,98,132,.42);background:linear-gradient(180deg,rgba(236,98,132,.13),#140c12 72%)}
.srTone-dancer{border:1px solid rgba(56,196,255,.42);background:linear-gradient(180deg,rgba(56,196,255,.13),#0c121c 72%)}
.srPerspective.is-selected.srTone-parent{box-shadow:0 0 0 1px rgba(242,168,188,.75),0 18px 40px rgba(236,98,132,.26)}
.srPerspective.is-selected.srTone-dancer{box-shadow:0 0 0 1px rgba(122,223,255,.75),0 18px 40px rgba(56,196,255,.26)}
.srPerspectiveIcon,.srPersIcon{width:64px;height:64px;border-radius:20px;display:grid;place-items:center}
.srTone-parent .srPerspectiveIcon,.srTone-parent .srPersIcon{color:#ffd4df;background:rgba(236,98,132,.2);border:1px solid rgba(255,168,186,.72)}
.srTone-dancer .srPerspectiveIcon,.srTone-dancer .srPersIcon{color:#d6f4ff;background:rgba(56,196,255,.2);border:1px solid rgba(120,220,255,.74)}
.srPerspectiveCopy{display:grid;gap:4px;min-width:0}
.srPerspectiveCopy b{font-size:18px}
.srPerspectiveCopy span,.srIdentity span{color:#d4c6e6;line-height:1.4}
.srPerspectiveCheck{width:28px;height:28px;border-radius:999px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.2)}
.srIdentity{display:flex;gap:12px;align-items:center;margin:0 0 16px;padding:12px 14px;border-radius:16px}
.srIdentityCopy{display:flex;flex-direction:column;gap:2px;min-width:0}
@media(min-width:801px){
  .srProgName{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
}
.srIdentity.srTone-parent{background:rgba(236,98,132,.08)}
.srIdentity.srTone-dancer{background:rgba(56,196,255,.08)}
.srIdentity .srPersIcon{width:44px;height:44px;border-radius:14px}
.srYear select,.srForm textarea,.srForm .input{width:100%;max-width:100%}
.srStarPick{display:flex;flex-wrap:wrap;gap:8px}
.srStarBtn{
  width:52px;height:52px;border-radius:14px;border:1px solid #3d2c56;background:#120b1c;color:#f2b65e;
  font-size:26px;line-height:1;cursor:pointer
}
.srStarBtn.is-filled{background:#2a1c0c;border-color:rgba(242,182,94,.7)}
.srStarPickHero .srStarBtn{width:58px;height:58px;font-size:30px}
.srOverallReadout,.srRateReadout{margin:10px 0 0;color:#d7c4ef;font-weight:700}
.srCatList{display:grid;gap:10px}
.srCatRow{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;
  padding:12px;border-radius:16px;background:#14101c;border:1px solid rgba(255,255,255,.06);min-width:0
}
.srCatRow p{margin:4px 0 0;color:#bdb2cd;font-size:13px}
.srClear{margin-top:6px}
.srWriteMeta{display:flex;justify-content:space-between;gap:12px;color:#bdb2cd;font-size:13px}
.srLock{
  margin:14px 0;
  padding:12px 14px;
  border-radius:14px;
  background:rgba(242,182,94,.1);
  border:1px solid rgba(242,182,94,.35);
  color:#ffe7b8;
  line-height:1.45
}
.srFormActions{display:flex;justify-content:space-between;gap:12px;margin-top:18px}
.srConfirm{max-width:760px;margin:20px auto}
.srAdminModes{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.srAdminMode{min-height:44px}
.srAdminMode[aria-selected="true"]{box-shadow:inset 0 0 0 2px #f2b65e}
.srAdminToolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:16px}
.srAdminToolbar .btn,.srAdminToolbar .input,.srAdminToolbar select{width:100%;min-width:0}
.srFamilyError{padding:16px;border-radius:16px;background:rgba(255,104,130,.08);border:1px solid rgba(255,104,130,.35)}
.srFamilyError p{margin:0 0 12px;line-height:1.45}
.srCatList .srStarPick{flex-wrap:nowrap;width:max-content;max-width:100%}
.srStarBtn:focus-visible,.srPerspective:focus-visible,.srAdminMode:focus-visible,.srForm .btn:focus-visible,.srDash .btn:focus-visible,.srPublicHost .btn:focus-visible,.srConfirm .btn:focus-visible,.srClear:focus-visible{
  outline:3px solid #f2b65e;outline-offset:2px
}
@media(max-width:800px){
  .srDash h2,.srPublicHost h2,.srForm h1{font-size:30px}
  .srSummary,.srPerspectiveGrid,.srCats,.srAdminToolbar{grid-template-columns:1fr}
  .srCardTop,.srFormActions,.srWriteMeta{flex-direction:column;align-items:stretch}
  .srFormActions .btn{width:100%}
  .srForm{padding:20px 14px 18px}
  .srNodeLabel{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
  .srCatRow{grid-template-columns:1fr}
  .srStarBtn{width:48px;height:48px}
  .srEmpty h3{font-size:24px}
}
@media(max-width:800px){
  .srCatList .srStarPick{gap:6px;width:100%;max-width:100%}
  .srCatList .srStarBtn{flex:1 1 44px;width:auto;min-width:44px;max-width:48px;height:44px;font-size:22px}
}
@media(max-width:360px){
  .srForm{padding:16px 10px}
  .srCatRow{padding:10px 8px}
  .srCatList .srStarPick{gap:4px}
  .srCatList .srStarBtn{flex:0 0 44px;width:44px;min-width:44px;max-width:44px;height:44px;font-size:20px}
  .srOverallScore{font-size:44px}
  .srStarBtn,.srStarPickHero .srStarBtn{width:42px;height:42px;font-size:22px}
  .srPerspective{grid-template-columns:48px minmax(0,1fr) 28px;min-height:0;padding:14px}
  .srPerspectiveIcon{width:48px;height:48px}
  .srDistRow{grid-template-columns:64px minmax(0,1fr) 2ch}
}
