/* Disabled controls retain their dimmed appearance without a forbidden cursor. */
:disabled,:disabled *,[aria-disabled="true"],[aria-disabled="true"] *{cursor:default!important}
input:disabled::-webkit-slider-thumb{cursor:default!important}
input:disabled::-moz-range-thumb{cursor:default!important}

/* Paint each track once. Neither colored segment sits on top of another color. */
.dice-target-control{position:relative;width:100%;height:34px;margin:8px 0}
.dice-slider-track{position:absolute;left:0;right:0;top:13px;height:8px;border:0;border-radius:999px;background:linear-gradient(to right,#44f286 0 var(--range-progress),#f94f68 var(--range-progress) 100%);pointer-events:none}
.game-dice #dice-target{position:relative;display:block;z-index:1;width:100%;height:34px;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;outline-offset:3px}
.game-dice #dice-target:focus-visible{outline:2px solid #ffffff99;border-radius:8px}
.game-dice #dice-target::-webkit-slider-runnable-track{height:8px;border:0;border-radius:0;background:transparent;box-shadow:none}
.game-dice #dice-target::-moz-range-track{height:8px;border:0;border-radius:0;background:transparent;box-shadow:none}
.game-dice #dice-target::-moz-range-progress{height:8px;border:0;border-radius:0;background:transparent;box-shadow:none}
.dice-target-control:has(:disabled) .dice-slider-track{opacity:.55}
.dice-room .number-range{border:0;background:transparent;box-shadow:none}
.number-range-track{position:absolute;inset:0;border:0;border-radius:inherit;background:linear-gradient(to right,#f94f68 0 var(--range-target),#44f286 var(--range-target) 100%);pointer-events:none}

.crash-heading{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:10px}
.crash-heading>.instrument-tag{grid-column:2;text-align:center}
.crash-heading>.energy-status{grid-column:3;justify-self:end}

/* The existing progress panel now opens a read-only overview of every rank. */
button.level-panel{display:block;width:100%;text-align:left;background:transparent;color:inherit;border-radius:0}
.level-panel-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:13px}
.level-panel-heading>span{display:flex;align-items:center;gap:7px;color:var(--rank)}
.level-panel-heading>b{display:flex;align-items:center;gap:7px;white-space:nowrap}
.level-panel-heading>b>.icon{width:13px;height:13px;color:#9eb2c5}
.level-panel .xp-track{display:block}
.level-panel-progress{font-size:10px;color:#9eb2c5;margin-top:10px;display:flex;justify-content:space-between;gap:10px}
.level-panel:focus-visible{outline-color:var(--rank);outline-offset:-2px;border-radius:5px}
.stats-grid>div:last-child:nth-child(odd){grid-column:1/-1}
.rank-overview-summary{display:flex;align-items:center;gap:18px;padding:10px 0 26px}
.rank-overview-emblem{display:grid;place-items:center;width:70px;height:70px;border:1px solid color-mix(in srgb,var(--rank) 55%,transparent);border-radius:18px;color:var(--rank);background:radial-gradient(ellipse at 40% 20%,color-mix(in srgb,var(--rank) 18%,transparent),#0c1925)}
.rank-overview-emblem>.icon{width:42px;height:42px}
.rank-overview-summary>div>span{font-size:10px;letter-spacing:.16em;color:#a4b7c5}
.rank-overview-summary h3{font-size:25px;color:var(--rank);margin:3px 0 5px}
.rank-overview-summary h3 small{display:inline-block;font-family:'DM Sans',sans-serif;font-weight:500;font-size:13px;color:#e9f1f5;margin-left:12px;letter-spacing:0}
.rank-overview-summary p{font-size:12px;color:#a4b7c5;margin:0}
.rank-roadmap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.rank-step{min-width:0;border:1px solid #354957;border-radius:13px;padding:20px;background:linear-gradient(135deg,#1a2e3e,#11212e);position:relative;overflow:hidden}
.rank-step.is-current{border-color:var(--rank);box-shadow:inset 0 -3px var(--rank),0 0 22px color-mix(in srgb,var(--rank) 8%,transparent);background:linear-gradient(135deg,color-mix(in srgb,var(--rank) 12%,#142735),#11212e)}
.rank-step-top{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:20px}
.rank-symbol{display:grid;place-items:center;width:46px;height:46px;color:var(--rank);border-radius:12px;background:color-mix(in srgb,var(--rank) 9%,transparent)}
.rank-symbol>.icon{width:30px;height:30px}
.rank-state{display:flex;align-items:center;gap:5px;font-size:11px;color:#b6c9d5}
.is-current .rank-state{color:var(--rank)}
.rank-state>.icon{width:13px;height:13px}
.rank-step h3{font-size:19px;color:var(--rank);margin:0 0 6px}
.rank-step p{font-size:12px;color:#b6c9d5;margin:0}
.rank-step.is-locked{filter:grayscale(1);opacity:.5;background:#11202b}
.rank-overview-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:24px;border-top:1px solid #354957;padding-top:20px}
.rank-overview-footer>span{font-size:12px;color:#a4b7c5}
.rank-overview-footer>.text-button{font-size:12px;flex-shrink:0}
@media(max-width:760px){.rank-roadmap{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.rank-step{padding:15px}.rank-step-top{gap:5px;margin-bottom:15px}.rank-state{font-size:10px}.rank-symbol{width:35px;height:35px}.rank-symbol>.icon{width:26px;height:26px}.rank-overview-footer{flex-direction:column;align-items:flex-start;gap:13px}.crash-heading{gap:5px}.crash-heading>.energy-status{font-size:8px;gap:4px;letter-spacing:.06em}}
@media(max-width:390px){.rank-step-top{flex-direction:column;align-items:flex-start;gap:10px}.rank-overview-summary{gap:12px}.rank-overview-summary h3{font-size:22px}.rank-overview-summary h3 small{font-size:12px;margin-left:8px}.rank-overview-emblem{width:54px;height:54px;flex-shrink:0}.crash-heading{grid-template-columns:1fr;row-gap:9px}.crash-heading>.instrument-tag,.crash-heading>.energy-status{grid-column:1;justify-self:center}}
