/* PRACTICE02: score first; two compact original-control rows above a pinned piano. */
body.nr-site.player-layout:not(.stage-view):not(.note-reading-active){overflow:hidden;padding:0}
body.nr-site.player-layout:not(.stage-view):not(.note-reading-active) main{max-width:none;padding:0}
body.nr-site.player-layout:not(.stage-view):not(.note-reading-active) #player{
 position:fixed!important;inset:var(--practice-header-height,64px) 0 0!important;height:calc(100dvh - var(--practice-header-height,64px))!important;
 display:flex;flex-direction:column;min-height:0;max-width:none;padding:0!important;gap:0;overflow:hidden;
 border:0;border-radius:0;box-shadow:none;background:var(--nr-surface,var(--card));
}
body.nr-site.player-layout:not(.stage-view):not(.note-reading-active) .player-title{
 order:0;display:flex;align-items:center;flex-wrap:nowrap;gap:6px;min-height:52px;margin:0;padding:4px max(10px,env(safe-area-inset-right)) 4px max(10px,env(safe-area-inset-left));border-bottom:1px solid var(--nr-border,var(--line));
}
body.nr-site.player-layout .player-title>div{flex:1;min-width:0;max-width:none}
body.nr-site.player-layout .player-title h1{font-size:17px;line-height:1.5;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.nr-site.player-layout .player-title p{font-size:10px;line-height:1.5;margin:0;max-width:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.nr-site.player-layout .player-title>button{min-height:44px;min-width:44px;flex:none;margin:0;padding:6px 10px;border-radius:12px;font-size:12px}
body.nr-site.player-layout #player .player-title .stage-entry{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:44px;background:var(--soft);border:1px solid var(--nr-border,var(--line));color:var(--nr-primary,#176db0);white-space:nowrap}
body.nr-site.player-layout #player .player-title .stage-entry span{display:inline;font-size:12px;line-height:1.5}
body.nr-site.player-layout #player .practice-guide-entry{display:inline-flex;align-items:center;gap:5px;background:var(--soft);border:1px solid var(--nr-border,var(--line));color:var(--nr-primary,#176db0);white-space:nowrap}
body.nr-site.player-layout #player #readingLaunch{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:7px 12px;border-radius:12px;position:relative;overflow:hidden;isolation:isolate;border:1px solid #328ac8;background:linear-gradient(110deg,#0e548b,#278cca);color:#fff;box-shadow:inset 0 1px #ffffff24;animation:none}
body.nr-site.player-layout #player #readingLaunch .reading-motion{display:block!important;position:absolute;inset:0;z-index:0;background:repeating-linear-gradient(0deg,transparent 0 7px,#d5edff15 7px 8px,transparent 8px 12px);margin:0}
body.nr-site.player-layout #player #readingLaunch .reading-motion i{color:#d7efff;opacity:.23}
body.nr-site.player-layout #player #readingLaunch .reading-button-label{display:flex;position:relative;z-index:1;align-items:center;gap:5px;color:#fff!important;font:inherit;font-size:12px;margin:0;text-shadow:none}
body.nr-site.player-layout #player #readingLaunch .reading-button-label span{font:inherit;color:inherit;margin:0}
body.nr-site.player-layout:not(.stage-view):not(.note-reading-active) .score-tools{order:1;display:flex;align-items:center;flex-wrap:nowrap;min-height:44px;padding:0 10px;margin:0;gap:8px;border-bottom:1px solid var(--nr-border,var(--line))}
body.nr-site.player-layout .score-tools .time-readout{margin:0;margin-inline-end:auto;min-width:0;gap:2px;font-size:10px}
body.nr-site.player-layout .score-tools .page-control{gap:2px;direction:ltr;margin-inline-start:auto}
body.nr-site.player-layout .score-tools .page-control button{min-width:44px;min-height:44px;width:44px;height:44px}
body.nr-site.player-layout #previewNotice{order:2;font-size:11px;max-height:56px;margin:0!important;padding:3px 10px!important}
body.nr-site.player-layout:not(.stage-view):not(.note-reading-active) #scoreScroll{order:3;flex:1 1 0;min-height:0!important;height:auto!important;max-height:none;margin:0!important;padding:8px;border:0;border-radius:0;overflow:auto!important;background:#f2f5f8;overscroll-behavior:contain;scroll-behavior:auto!important;scrollbar-gutter:auto}
body.nr-site.player-layout:not(.stage-view):not(.note-reading-active) #paper{flex:none;max-width:none;margin:auto;background:#fff;border:0;box-shadow:0 2px 10px #102e4610}
body.nr-site.player-layout:not(.stage-view):not(.note-reading-active) #previewEnd{order:4;max-height:94px!important;margin:0!important;padding:6px 12px!important;border-radius:0;overflow:auto}
body.nr-site.player-layout #playerQuickControls{order:5;flex:none;min-height:48px;border-top:1px solid var(--nr-border,var(--line));background:var(--nr-surface,var(--card))}
body.nr-site.stage-view #playerQuickControls,body.nr-site.note-reading-active #playerQuickControls{display:none!important}
.nr-site .practice-control-row{display:flex;align-items:center;justify-content:center;flex-wrap:nowrap;gap:6px;padding:2px max(8px,env(safe-area-inset-right)) 2px max(8px,env(safe-area-inset-left));color:var(--nr-text,var(--text))}
.nr-site .practice-control-row button,.nr-site .practice-hand-chip{min-height:44px;min-width:44px;height:44px;padding:6px 10px;border:1px solid var(--nr-border,var(--line));border-radius:12px;background:var(--soft);color:var(--nr-text,var(--text));font-size:12px;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:5px;line-height:1.4}
.nr-site .practice-hand-chip{position:relative;cursor:pointer;overflow:hidden;user-select:none}
.nr-site .practice-hand-chip input{position:absolute;inset:0;z-index:1;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.nr-site .practice-hand-chip:has(input:checked),.nr-site .practice-control-row button[aria-pressed=true]{color:var(--nr-primary,#176db0);border-color:#2583c7;background:color-mix(in srgb,#268ed3 13%,var(--nr-surface,var(--card)))}
.nr-site .practice-hand-chip:has(input:focus-visible){outline:3px solid #e4a740;outline-offset:2px}
.nr-site .practice-chip-status{width:6px;height:6px;border-radius:50%;background:#9daebc;flex:none}
.nr-site .practice-hand-chip:has(input:checked) .practice-chip-status{background:#2583c7;box-shadow:0 0 0 2px #2583c715}
.nr-site #playerPedalControl{display:inline-flex}
.nr-site .practice-control-row #metro,.nr-site .practice-control-row #focusMetro{width:44px;min-width:44px;padding:8px;margin:0}
.nr-site .practice-control-row .coordination-toggle{padding:7px 10px;border-radius:12px;font-size:12px;gap:5px}
.nr-site .practice-control-row .coordination-toggle svg{width:22px;height:22px;fill:none;stroke:currentColor}
body.nr-site.player-layout:not(.stage-view):not(.note-reading-active) #playerDock{order:6;display:flex;position:relative;inset:auto;flex-wrap:nowrap;align-items:center;justify-content:center;gap:8px;min-height:50px;margin:0;padding:3px 10px;border:0;border-top:1px solid var(--nr-border,var(--line));border-radius:0;box-shadow:none;background:var(--nr-surface,var(--card));flex:none;z-index:4}
body.nr-site.player-layout #playerDock button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:44px;min-height:44px;width:auto;height:44px;padding:6px 12px;border:1px solid var(--nr-border,var(--line));border-radius:12px;font-size:12px;background:var(--soft)}
body.nr-site.player-layout #playerDock #play{min-width:50px;width:50px;min-height:44px;height:44px;border-radius:12px;box-shadow:none;background:#176db0;border-color:#176db0;color:#fff}
body.nr-site.player-layout #playerDock #stop{width:44px;padding:8px}
body.nr-site.player-layout #playerDock #playerSpeed{min-width:76px;direction:ltr}
body.nr-site.player-layout #playerDock #playerSettingsButton{min-width:92px}
body.nr-site.player-layout #playerDock .practice-pdf-direct{margin:0;min-width:44px;color:var(--nr-primary,#176db0)}
body.nr-site.player-layout #playerDock #seek[hidden]{display:none!important}
body.nr-site.practice-landscape-controls .score-tools{display:none!important}
body.nr-site.practice-landscape-controls #playerDock .time-readout{margin:0 4px;min-width:72px;gap:0;font-size:10px}
body.nr-site.practice-landscape-controls #playerDock .page-control{display:flex;gap:0;align-items:center;direction:ltr;font-size:10px}
body.nr-site.practice-landscape-controls #playerDock .page-control button{width:44px;min-width:44px;padding:6px}
body.nr-site.player-layout:not(.stage-view):not(.note-reading-active) #performancePiano{order:8;position:relative;inset:auto;transform:none;flex:none;width:100%;margin:0;min-height:0;padding:0 max(8px,env(safe-area-inset-right)) max(3px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));border:0;border-top:1px solid var(--nr-border,var(--line));border-radius:0;box-shadow:none;background:var(--nr-surface,var(--card))}
body.nr-site.player-layout:not(.stage-view):not(.note-reading-active) #performancePiano .nr-piano-keys{height:58px}
body.nr-site.player-layout #performancePiano .nr-piano-heading{min-height:44px;margin:0;padding:0;align-items:center}
body.nr-site.player-layout #performancePiano .nr-piano-heading button{min-height:44px!important;padding:3px 8px;font-size:10px;border-radius:9px}
body.nr-site.player-layout #performancePiano .nr-piano-heading small{font-size:10px}
/* Local touch policy only. No viewport zoom restrictions or page-wide prevention. */
body.nr-site.player-layout #scoreScroll,body.nr-site.player-layout #paper,body.nr-site.player-layout #notation{touch-action:none!important}
.nr-site #playerSettings{width:min(600px,calc(100vw - 24px));padding:16px;max-height:calc(100dvh - 24px)}
.nr-site #playerSettings .panel-content{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding-top:12px}
.nr-site #playerSettings .panel-content section{display:flex;flex-direction:column;gap:8px;min-width:0;margin:0;padding:12px;border:1px solid var(--nr-border,var(--line));border-radius:14px;background:var(--nr-bg,var(--bg))}
.nr-site #playerSettings h3{margin:0;font-size:12px;font-weight:600;color:var(--nr-text,var(--text))}
.nr-site #playerSettings #practiceDisplaySettings,.nr-site #playerSettings #practiceArrangementSettings{grid-column:1/-1}
.nr-site #playerSettings button,.nr-site #playerSettings label{min-height:44px}
.nr-site #playerSettings #playerViewSlot{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.nr-site #playerSettings .view-modes{flex:1;display:flex;flex-wrap:nowrap;margin:0;min-width:190px}
.nr-site #playerSettings .view-modes button{font-size:12px}
.nr-site #playerSettings #compactZoomSlot{margin:0;display:flex;gap:4px}
.nr-site #playerSettings #compactZoomSlot button{min-width:44px;width:44px;padding:8px}
.nr-site #playerSettings #fit{min-width:100px}
.nr-site #playerSettings #playerHandsSlot{display:flex;gap:8px;flex-wrap:wrap}
.nr-site #playerSettings #versionOptions{display:flex;gap:6px;flex-wrap:wrap;padding:0;margin:0;background:none}
.nr-site #playerSettings .version-chip{min-height:44px;flex:1 1 145px;padding:8px 10px;font-size:11px}
.nr-site #playerSettings #download,.nr-site #playerSettings #info{display:flex;justify-content:flex-start;align-items:center;gap:6px;padding:8px 10px;width:100%;font-size:12px;text-align:right;border:1px solid var(--nr-border,var(--line));border-radius:12px;background:var(--nr-surface,var(--card))}
.nr-site #playerSettings .score-like{position:static;display:flex;max-width:100%;width:100%;margin:0;box-shadow:none;font-size:11px;background:var(--nr-surface,var(--card));color:var(--nr-text,var(--text));justify-content:flex-start;border-radius:12px}
.nr-site .practice-panel-note{font-size:11px;line-height:1.8;color:var(--nr-muted,var(--muted));margin:0}
.nr-site #playerTempo button,.nr-site #stagePanel button,.nr-site #stageWelcome button{min-height:44px;min-width:44px}
.nr-site #stageWelcome .stage-welcome-option{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;margin:12px 0;font-size:12px;cursor:pointer}
.nr-site #stageWelcome .stage-welcome-option input{width:18px;height:18px;accent-color:#176db0}
/* Large performance keeps transport above piano, with the same moved hand controls. */
body.nr-site.stage-view #scoreScroll{order:1;flex:1;width:100%;margin:0!important;padding:8px;min-height:0!important;touch-action:none!important}
body.nr-site.stage-view #stageQuickControls{order:2;flex:none;min-height:48px;background:var(--nr-surface,var(--card));border-top:1px solid var(--nr-border,var(--line))}
body.nr-site.stage-view #stageRail{position:relative;inset:auto;order:3;display:flex;flex-direction:row;justify-content:center;align-items:center;gap:6px;min-height:50px;width:100%;padding:3px 8px;border:0;border-top:1px solid var(--nr-border,var(--line));background:var(--nr-surface,var(--card));z-index:4}
body.nr-site.stage-view #stageRail button{min-width:44px;min-height:44px;width:44px;height:44px;padding:6px;border-radius:12px;background:var(--soft);color:var(--nr-primary,#176db0);box-shadow:none;border:1px solid var(--nr-border,var(--line))}
body.nr-site.stage-view #stageRail #stagePlay{color:#fff;background:#176db0;border-color:#176db0}
body.nr-site.stage-view #stageRail #stageSpeed{writing-mode:horizontal-tb;direction:ltr;width:clamp(80px,20vw,160px);min-width:70px;height:30px;margin:0 2px;accent-color:#176db0}
body.nr-site.stage-view #stageRail #stageExitDirect{margin-inline-start:5px}
body.nr-site.stage-view #performancePiano{order:4;max-height:none;flex:none;padding:0 8px max(3px,env(safe-area-inset-bottom));border-radius:0;border-top:1px solid var(--nr-border,var(--line));background:var(--nr-surface,var(--card))}
body.nr-site.stage-view #performancePiano .nr-piano-keys{height:58px}
body.nr-site.stage-view #paper{margin:auto}
.nr-site #stagePanel .stage-settings section{padding:12px;border-radius:14px}
.nr-site #stagePanel #stageViewSlot .view-modes button,.nr-site #stagePanel .focus-zoom button{min-height:44px;min-width:44px}
.nr-site #stagePanel .stage-options label{min-height:44px;font-size:12px}
#stageQuickControls[hidden]{display:none!important}
@media(max-width:650px){
 body.nr-site.player-layout .player-title h1{font-size:14px}body.nr-site.player-layout .player-title p{font-size:9px}
 body.nr-site.player-layout .player-title>button{padding:6px 7px}
 body.nr-site.player-layout #player .player-title .stage-entry span{display:inline;font-size:10px}
 body.nr-site.player-layout #player .practice-guide-entry{width:44px;min-width:44px;padding:8px}body.nr-site.player-layout #player .practice-guide-entry span{display:none}
 body.nr-site.player-layout #player #readingLaunch{padding:6px 8px}body.nr-site.player-layout #player #readingLaunch .reading-button-label{font-size:11px;gap:4px}
 .nr-site .practice-control-row{gap:4px;padding-inline:6px}.nr-site .practice-control-row button,.nr-site .practice-hand-chip{padding:6px 8px;font-size:11px}
 .nr-site .practice-control-row .coordination-toggle{min-width:44px;width:44px;padding:8px}.nr-site .practice-control-row .coordination-toggle span{display:none}
 body.nr-site.player-layout #playerDock{gap:6px}body.nr-site.player-layout #playerDock #playerSettingsButton{min-width:80px}
 body.nr-site.player-layout #playerDock .practice-pdf-direct{width:44px;min-width:44px;padding:8px}body.nr-site.player-layout #playerDock .practice-pdf-direct span{display:none}
 body.nr-site.player-layout:not(.stage-view):not(.note-reading-active) #performancePiano .nr-piano-keys,body.nr-site.stage-view #performancePiano .nr-piano-keys{height:48px}
 .nr-site #playerSettings .panel-content{grid-template-columns:1fr}.nr-site #playerSettings .panel-content section{grid-column:1!important}
 .nr-site #stagePanel .stage-settings{grid-template-columns:1fr 1fr}
}
@media(max-width:380px){body.nr-site.player-layout .player-title{gap:4px;padding-inline:6px}body.nr-site.player-layout #player .player-title .stage-entry{gap:3px;padding:6px}body.nr-site.player-layout #player .player-title .stage-entry .ui-icon{width:17px;height:17px}body.nr-site.player-layout #player #readingLaunch{padding:6px}.nr-site .practice-hand-chip{padding:6px;font-size:10px}.nr-site .practice-control-row button{padding:6px}.nr-site #stageRail #stageSpeed{width:70px}}
@media(orientation:landscape) and (max-height:650px){
 body.nr-site.player-layout:not(.stage-view):not(.note-reading-active) .player-title{min-height:48px;padding-block:2px}body.nr-site.player-layout .player-title p{display:none}
 body.nr-site.player-layout:not(.stage-view):not(.note-reading-active) #scoreScroll{padding:4px}
 body.nr-site.player-layout:not(.stage-view):not(.note-reading-active) #performancePiano .nr-piano-keys,body.nr-site.stage-view #performancePiano .nr-piano-keys{height:36px}
 body.nr-site.player-layout #performancePiano .nr-piano-heading{min-height:44px}
 .nr-site #stagePanel .stage-settings{grid-template-columns:1.2fr 1fr 1fr}.nr-site #stagePanel .stage-options{grid-column:1/-1}
}
@media(orientation:landscape) and (min-width:650px) and (max-height:650px){
 body.nr-site.player-layout:not(.note-reading-active) #performancePiano{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:center;direction:rtl}
 body.nr-site.player-layout:not(.note-reading-active) #performancePiano .nr-piano-heading{max-width:215px;gap:3px;flex-wrap:nowrap}
 body.nr-site.player-layout:not(.note-reading-active) #performancePiano .nr-piano-heading>span,body.nr-site.player-layout:not(.note-reading-active) #performancePiano .nr-piano-heading small{display:none}
 body.nr-site.player-layout:not(.note-reading-active) #performancePiano .nr-piano-body{min-width:0;padding:2px}
 body.nr-site.player-layout:not(.note-reading-active) #performancePiano.compact-collapsed{display:flex;justify-content:center}
}
@media(prefers-reduced-motion:reduce){body.nr-site.player-layout #player #readingLaunch .reading-motion i{animation:none!important;transform:none;will-change:auto;opacity:.14}}

/* PLAYERUI01: approved frosted player composition. The same functional nodes are re-homed. */
body.nr-site.player-layout:not(.stage-view):not(.note-reading-active) #player>.player-title{
 min-height:54px!important;padding:3px max(8px,env(safe-area-inset-right)) 3px max(8px,env(safe-area-inset-left))!important;gap:4px!important;
 background:var(--pg-frost,rgba(238,248,253,.8))!important;border:0!important;
}
body.nr-site.player-layout #player>.player-title>div{flex:1 1 92px!important;min-width:58px!important;text-align:center}
body.nr-site.player-layout #player>.player-title h1{font-size:15px!important;line-height:1.35!important;font-weight:800;letter-spacing:-.015em}
body.nr-site.player-layout #player>.player-title h1.piece-title-tight{font-size:12px!important;letter-spacing:-.025em}
body.nr-site.player-layout #player>.player-title p{font-size:9px!important;text-align:center}
body.nr-site.player-layout #player>.player-title :is(.stage-entry,.practice-guide-entry,.practice-pdf-top){
 display:inline-flex!important;align-items:center!important;justify-content:center!important;flex-direction:column;gap:1px!important;
 min-width:60px!important;width:auto!important;height:46px!important;min-height:46px!important;padding:4px 7px!important;
 border:1px solid var(--pg-edge,rgba(114,161,184,.2))!important;border-radius:15px!important;
 background:linear-gradient(145deg,rgba(255,255,255,.66),rgba(220,241,251,.48))!important;
 color:var(--pg-ink,#23536e)!important;box-shadow:inset 0 1px rgba(255,255,255,.9),0 4px 14px rgba(36,94,124,.08)!important;
 backdrop-filter:blur(18px) saturate(1.2);-webkit-backdrop-filter:blur(18px) saturate(1.2);
}
body.nr-site.dark.player-layout #player>.player-title :is(.stage-entry,.practice-guide-entry,.practice-pdf-top){
 background:linear-gradient(145deg,rgba(65,105,128,.34),rgba(21,47,66,.54))!important;border-color:rgba(154,207,232,.18)!important;
 color:var(--pg-ink,#d6edf8)!important;box-shadow:inset 0 1px rgba(255,255,255,.1),0 4px 14px rgba(0,0,0,.14)!important;
}
body.nr-site.player-layout #player>.player-title :is(.stage-entry,.practice-guide-entry,.practice-pdf-top) .ui-icon{width:20px;height:20px}
body.nr-site.player-layout #player>.player-title :is(.stage-entry,.practice-guide-entry,.practice-pdf-top) span{display:inline!important;font-size:9px!important;line-height:1.2!important;white-space:nowrap}
body.nr-site.player-layout #player>.player-title .practice-pdf-top{min-width:50px!important;color:#145d89!important}
body.nr-site.dark.player-layout #player>.player-title .practice-pdf-top{color:#d7f3ff!important}
body.nr-site.player-layout #player>.player-title #scoreLike{
 position:relative!important;inset:auto!important;z-index:auto!important;display:flex;align-items:center;justify-content:center;
 width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important;margin:0!important;padding:8px!important;gap:0!important;
 border:1px solid var(--pg-edge,rgba(114,161,184,.2))!important;border-radius:50%!important;background:rgba(255,255,255,.46)!important;
 color:var(--pg-ink,#23536e)!important;box-shadow:inset 0 1px rgba(255,255,255,.78),0 3px 12px rgba(36,94,124,.07)!important;
}
body.nr-site.player-layout #player>.player-title #scoreLike[hidden]{display:none!important}
body.nr-site.player-layout #player>.player-title #scoreLike svg{width:22px;height:22px}
body.nr-site.player-layout #player>.player-title #scoreLike span{display:none!important}
body.nr-site.player-layout #player>.player-title #scoreLike strong{position:absolute;inset:auto -2px -4px auto;min-width:20px;padding:2px 4px;border-radius:10px;background:var(--nr-surface,#fff);font-size:8px;line-height:1;color:inherit;box-shadow:0 2px 7px rgba(20,69,96,.13)}
body.nr-site.dark.player-layout #player>.player-title #scoreLike{background:rgba(255,255,255,.07)!important}

body.nr-site.player-layout:not(.stage-view):not(.note-reading-active) #player>.score-tools{
 display:grid!important;grid-template-columns:minmax(74px,1fr) minmax(148px,clamp(148px,34vw,340px)) minmax(74px,1fr)!important;
 grid-template-areas:"pages reading meter";direction:ltr;order:2!important;align-items:center;gap:6px!important;min-height:44px!important;padding:2px 10px!important;
 background:var(--pg-frost,rgba(238,248,253,.8))!important;border:0!important;
}
body.nr-site.player-layout #player>.score-tools>.time-readout{grid-area:meter;justify-self:end!important;margin:0!important;direction:rtl;color:var(--pg-muted,#758994)}
body.nr-site.player-layout #player>.score-tools>.time-readout #timeNow{display:none}
body.nr-site.player-layout #player>.score-tools>.page-control{grid-area:pages;justify-self:start!important;margin:0!important;direction:ltr}
body.nr-site.player-layout #player>.score-tools #pageLabel{white-space:nowrap;flex:none}
body.nr-site.player-layout #player>.score-tools>#readingLaunch{
 grid-area:reading;display:inline-flex!important;align-items:center;justify-content:center;position:relative;isolation:isolate;overflow:hidden;
 width:100%!important;min-width:0!important;max-width:340px;height:40px;min-height:40px!important;margin:auto;padding:5px 16px!important;
 border:1px solid rgba(64,174,235,.72)!important;border-radius:22px!important;
 background:linear-gradient(115deg,#29aeea,#087ecf 55%,#159ee9)!important;color:#fff!important;
 box-shadow:inset 0 1px rgba(255,255,255,.55),0 5px 15px rgba(23,130,190,.23)!important;
}
body.nr-site.player-layout #player>.score-tools>#readingLaunch .reading-motion{display:block!important;position:absolute;inset:0;z-index:0;background:repeating-linear-gradient(0deg,transparent 0 7px,rgba(218,242,255,.12) 7px 8px,transparent 8px 12px);margin:0}
body.nr-site.player-layout #player>.score-tools>#readingLaunch .reading-motion i{color:#d8f2ff!important;opacity:.3}
body.nr-site.player-layout #player>.score-tools>#readingLaunch .reading-button-label{display:flex!important;position:relative;z-index:1;align-items:center;gap:7px;color:#fff!important;font-size:13px!important;font-weight:800;text-shadow:0 1px 8px rgba(0,83,135,.18)}
body.nr-site.player-layout #player>.score-tools>#readingLaunch .reading-button-label span{color:#fff!important;font:inherit}
body.nr-site.player-layout #player>.score-tools>#readingZoomSlot{display:none}

body.nr-site.player-layout #player>#previewNotice:not([hidden]){
 display:grid!important;order:1!important;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:8px;
 min-height:48px;max-height:none!important;margin:0!important;padding:5px max(10px,env(safe-area-inset-right)) 5px max(10px,env(safe-area-inset-left))!important;
 border:1px solid rgba(100,174,218,.26);border-radius:0;background:linear-gradient(105deg,rgba(224,243,255,.84),rgba(206,235,255,.68));
 color:#174b70;box-shadow:inset 0 1px rgba(255,255,255,.78);backdrop-filter:blur(18px) saturate(1.18);-webkit-backdrop-filter:blur(18px) saturate(1.18);
}
body.nr-site.dark.player-layout #player>#previewNotice:not([hidden]){background:linear-gradient(105deg,rgba(24,67,91,.9),rgba(27,59,85,.84));border-color:rgba(143,202,232,.18);color:#def4ff}
body.nr-site.player-layout #previewDismiss{display:grid;place-items:center;width:32px;height:32px;min-width:32px;min-height:32px;padding:0;border:0;border-radius:50%;background:transparent;color:inherit;font-size:24px;line-height:1}
body.nr-site.player-layout #previewText{min-width:0;text-align:center;font-size:11px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.nr-site.player-layout #previewAccount{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:6px 13px;border:1px solid rgba(255,255,255,.72);border-radius:18px;background:linear-gradient(120deg,#2cb4ef,#0786db);color:#fff!important;text-decoration:none!important;font-size:11px;font-weight:800;box-shadow:inset 0 1px rgba(255,255,255,.52),0 4px 12px rgba(17,125,189,.2)}
body.nr-site.player-layout #previewAccount::before{content:'♛';margin-inline-end:5px;font-size:13px}
body.nr-site.player-layout #player:has(.locked-page)>#previewNotice:not([hidden]){display:grid!important}

@media(max-width:650px){
 body.nr-site.player-layout #player>.player-title{gap:3px!important;padding-inline:6px!important}
 body.nr-site.player-layout #player>.player-title :is(.stage-entry,.practice-guide-entry){min-width:56px!important;padding-inline:5px!important}
 body.nr-site.player-layout #player>.player-title .practice-pdf-top{min-width:46px!important;padding-inline:4px!important}
 body.nr-site.player-layout #player>.player-title :is(.stage-entry,.practice-guide-entry,.practice-pdf-top) span{font-size:8.5px!important}
 body.nr-site.player-layout #player>.score-tools{grid-template-columns:minmax(88px,1fr) minmax(142px,42vw) minmax(88px,1fr)!important;padding-inline:7px!important;gap:3px!important}
 body.nr-site.player-layout #player>.score-tools .page-control button{min-width:30px!important;width:30px!important;padding-inline:4px!important}
 body.nr-site.player-layout #player>.score-tools>#readingLaunch{padding-inline:8px!important}
 body.nr-site.player-layout #player>.score-tools>#readingLaunch .reading-button-label{font-size:12px!important}
 body.nr-site.player-layout #previewText{font-size:10px}
 body.nr-site.player-layout #previewAccount{padding-inline:10px;font-size:10px}
}
@media(max-width:380px){
 body.nr-site.player-layout #player>.player-title :is(.stage-entry,.practice-guide-entry){min-width:52px!important}
 body.nr-site.player-layout #player>.player-title .practice-pdf-top{min-width:44px!important}
 body.nr-site.player-layout #player>.player-title #scoreLike{width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important;padding:7px!important}
 body.nr-site.player-layout #player>.score-tools{grid-template-columns:minmax(82px,1fr) minmax(136px,40vw) minmax(82px,1fr)!important;padding-inline:5px!important}
 body.nr-site.player-layout #previewText{font-size:9.5px}
 body.nr-site.player-layout #previewAccount{padding-inline:8px}
}
@media(orientation:landscape) and (min-width:650px) and (max-height:650px){
 body.nr-site.player-layout.practice-landscape-controls:not(.stage-view):not(.note-reading-active) #player>.score-tools{display:none!important}
 body.nr-site.practice-landscape-header #practiceHeaderActions :is(#readingLaunch,#focus,#guidePlayer,#download){min-width:40px!important;min-height:36px!important;height:36px!important;padding:5px 8px!important;border-radius:20px!important}
 body.nr-site.practice-landscape-header #practiceHeaderActions :is(#focus,#guidePlayer,#download) span{display:none!important}
 body.nr-site.practice-landscape-header #practiceHeaderActions #readingLaunch{width:40px!important;max-width:40px!important;padding-inline:7px!important}
 body.nr-site.practice-landscape-header #practiceHeaderActions #readingLaunch .reading-button-label{gap:0!important}
 body.nr-site.practice-landscape-header #practiceHeaderActions #readingLaunch .reading-button-label span{display:none!important}
}
@media(prefers-reduced-motion:reduce){body.nr-site.player-layout #player>.score-tools>#readingLaunch .reading-motion i{animation:none!important;transform:none!important;will-change:auto!important;opacity:.18}}

/* DESKTOP-FIT01: recover score height without changing mobile or performance mode. */
@media(min-width:1101px) and (min-height:651px){
 body.nr-site.player-layout:not(.stage-view):not(.note-reading-active) #player>.player-title{min-height:44px!important;padding-block:2px!important}
 body.nr-site.player-layout:not(.stage-view):not(.note-reading-active) #player>.player-title :is(.stage-entry,.practice-guide-entry,.practice-pdf-top){height:38px!important;min-height:38px!important}
 body.nr-site.player-layout:not(.stage-view):not(.note-reading-active) #player>.score-tools{min-height:36px!important;padding-block:1px!important}
 body.nr-site.player-layout:not(.stage-view):not(.note-reading-active) #player>.score-tools>#readingLaunch{height:32px;min-height:32px!important;max-width:280px}
 body.nr-site.player-layout:not(.stage-view):not(.note-reading-active) #player>#previewNotice:not([hidden]){min-height:36px;padding-block:1px!important}
 body.nr-site.player-layout:not(.stage-view):not(.note-reading-active) #previewAccount{min-height:30px;padding-block:3px}
 body.nr-site.player-layout:not(.stage-view):not(.note-reading-active) #practiceFooter{flex-direction:row;justify-content:center;align-items:center;gap:8px;min-height:48px;padding-block:1px}
 body.nr-site.player-layout:not(.stage-view):not(.note-reading-active) #playerQuickControls{padding:0;gap:3px}
 body.nr-site.player-layout:not(.stage-view):not(.note-reading-active) #playerDock{min-height:44px;gap:3px;padding:0 10px 0 0;border-inline-start:1px solid var(--pg-edge)}
}

/* DESKTOP-FIT02: use the vacant footer sides for the existing score actions. */
body.nr-site.player-layout.practice-desktop-footer:not(.stage-view):not(.note-reading-active) #player>.score-tools{display:none!important}
body.nr-site.player-layout.practice-desktop-footer:not(.stage-view):not(.note-reading-active) #player>.player-title{min-height:32px!important;padding-block:0!important}
body.nr-site.player-layout.practice-desktop-footer:not(.stage-view):not(.note-reading-active) #player>.player-title>button{height:30px!important;min-height:30px!important;min-width:32px!important;padding:4px!important}
body.nr-site.player-layout.practice-desktop-footer:not(.stage-view):not(.note-reading-active) #player>.player-title>div{display:flex;justify-content:center;align-items:baseline;gap:12px}
body.nr-site.player-layout.practice-desktop-footer:not(.stage-view):not(.note-reading-active) #player>.player-title h1{font-size:15px}
body.nr-site.player-layout.practice-desktop-footer:not(.stage-view):not(.note-reading-active) #practiceFooter{justify-content:space-between;gap:6px;padding-inline:12px;min-height:52px}
body.nr-site.player-layout.practice-desktop-footer:not(.stage-view):not(.note-reading-active) #desktopPracticeActions,
body.nr-site.player-layout.practice-desktop-footer:not(.stage-view):not(.note-reading-active) #desktopPracticePages{display:flex;align-items:center;gap:5px;flex:none}
body.nr-site.player-layout.practice-desktop-footer:not(.stage-view):not(.note-reading-active) #desktopPracticeActions>button{display:inline-flex!important;align-items:center;justify-content:center;gap:5px;position:relative!important;inset:auto!important;margin:0!important;min-width:38px!important;width:auto!important;height:38px!important;min-height:38px!important;padding:6px 9px!important;border-radius:14px!important;border:1px solid var(--pg-edge)!important;background:var(--pg-frost)!important;color:var(--pg-ink)!important;box-shadow:inset 0 1px #ffffff35!important}
body.nr-site.player-layout.practice-desktop-footer:not(.stage-view):not(.note-reading-active) #desktopPracticeActions>button[hidden]{display:none!important}
body.nr-site.player-layout.practice-desktop-footer:not(.stage-view):not(.note-reading-active) #desktopPracticeActions .ui-icon{width:19px;height:19px}
body.nr-site.player-layout.practice-desktop-footer:not(.stage-view):not(.note-reading-active) #desktopPracticeActions span{font-size:11px;white-space:nowrap}
body.nr-site.player-layout.practice-desktop-footer:not(.stage-view):not(.note-reading-active) #desktopPracticeActions #readingLaunch{min-width:114px!important;color:white!important;background:linear-gradient(120deg,#20ace4,#087ebd)!important}
body.nr-site.player-layout.practice-desktop-footer:not(.stage-view):not(.note-reading-active) #desktopPracticeActions #scoreLike span{display:none}
body.nr-site.player-layout.practice-desktop-footer:not(.stage-view):not(.note-reading-active) #desktopPracticeActions #scoreLike strong{font-size:10px}
body.nr-site.player-layout.practice-desktop-footer:not(.stage-view):not(.note-reading-active) #desktopPracticePages{flex-direction:column;gap:0;font-size:9px;min-width:110px}
body.nr-site.player-layout.practice-desktop-footer:not(.stage-view):not(.note-reading-active) #desktopPracticePages .time-readout{margin:0;font-size:9px}
body.nr-site.player-layout.practice-desktop-footer:not(.stage-view):not(.note-reading-active) #desktopPracticePages #timeNow{display:none}
body.nr-site.player-layout.practice-desktop-footer:not(.stage-view):not(.note-reading-active) #desktopPracticePages .page-control{direction:ltr;margin:0;gap:3px}
body.nr-site.player-layout.practice-desktop-footer:not(.stage-view):not(.note-reading-active) #desktopPracticePages button{height:28px;min-height:28px;width:28px;min-width:28px;padding:3px}
body.nr-site.player-layout.practice-desktop-footer:not(.stage-view):not(.note-reading-active) #playerDock{flex:none}
body.nr-site.player-layout.practice-desktop-footer #desktopPracticeActions #readingLaunch .reading-button-label,
body.nr-site.player-layout.practice-desktop-footer #desktopPracticeActions #readingLaunch .reading-button-label span{color:#fff!important}
body.nr-site.player-layout.practice-desktop-footer #desktopPracticeActions #scoreLike[aria-pressed="true"]{color:#d82957!important}

/* STAGEFIX01: one shallow desktop transport; existing controls and touch targets. */
@media(min-width:1101px){
 body.nr-site.player-layout.stage-view #stageFooter{flex-direction:row;justify-content:center;align-items:center;gap:clamp(16px,4vw,64px);min-height:56px;padding:3px 18px}
 body.nr-site.player-layout.stage-view #stageQuickControls{min-height:46px;flex:none;padding:0;border:0;background:none}
 body.nr-site.player-layout.stage-view #stageRail{min-height:46px;flex:none;width:auto;padding:0;border:0;gap:8px}
 body.nr-site.player-layout.stage-view #stageRail #stageSpeed{width:clamp(160px,22vw,350px);min-width:140px}
}
body.nr-site.player-layout.stage-view #paper.limited-preview::after,
body.nr-site.player-layout.panorama-view #paper.limited-preview::after{display:none!important}

body.nr-site.player-layout.panorama-view #paper.limited-preview #notation{-webkit-mask-image:none;mask-image:none}

/* WF-ENTRY-07: one responsive home for the two practice modes. */
body.nr-site.player-layout #practiceModePair{grid-area:reading;display:flex;align-items:center;justify-content:center;direction:rtl;gap:6px;position:relative;min-width:0;width:100%;max-width:340px;margin:auto;flex:none;z-index:3}
body.nr-site.player-layout #practiceModePair[hidden]{display:none!important}
body.nr-site.player-layout #player #practiceModePair>button{display:inline-flex;align-items:center;justify-content:center;flex:1 1 0;width:0;min-width:0;height:40px;min-height:40px!important;max-height:40px;margin:0!important;padding:4px 6px!important;border-radius:20px!important;white-space:nowrap;box-sizing:border-box}
body.nr-site.player-layout #player #practiceModePair #readingLaunch{background:linear-gradient(115deg,#29aeea,#087ecf 55%,#159ee9)!important;border:1px solid rgba(64,174,235,.72)!important;color:#fff!important;box-shadow:inset 0 1px rgba(255,255,255,.55),0 4px 13px rgba(23,130,190,.22)!important}
body.nr-site.player-layout #practiceModePair #readingLaunch .reading-button-label{font-size:11px!important;gap:4px!important;min-width:0}
body.nr-site.player-layout #practiceModePair #readingLaunch .ui-icon{width:16px;height:16px;flex:none}
body.nr-site.player-layout #player #practiceModePair #waterfallMode{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(120deg,#06121f,#123046 54%,#06121f)!important;border:1px solid #28748b!important;color:#effbff!important;box-shadow:inset 0 1px #7cecff55,0 4px 13px #06121f2c!important;font-weight:800;cursor:pointer;transition:filter .2s,box-shadow .2s}
body.nr-site.player-layout #practiceModePair #waterfallMode:hover{filter:brightness(1.12);box-shadow:inset 0 1px #b8f8ff88,0 5px 16px #08648255!important}
body.nr-site.player-layout #practiceModePair #waterfallMode:focus-visible,body.nr-site.player-layout #practiceModePair #readingLaunch:focus-visible{outline:3px solid #ffca6b;outline-offset:2px}
body.nr-site.player-layout #practiceModePair #waterfallMode[hidden]{display:none!important}
body.nr-site.player-layout #waterfallMode .wf-button-flow{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;background:repeating-linear-gradient(90deg,transparent 0 12px,#5bb7ce18 12px 13px)}
body.nr-site.player-layout #waterfallMode .wf-button-flow::after{content:'';position:absolute;inset:auto 0 0;height:5px;background:repeating-linear-gradient(90deg,#d9f7fb 0 8px,#102332 8px 11px,#c9e7eb 11px 19px,#102332 19px 22px);opacity:.55}
body.nr-site.player-layout #waterfallMode .wf-button-flow i{position:absolute;top:-15px;width:5px;height:12px;border-radius:2px;background:#11d7e6;box-shadow:0 0 5px #11d7e680;opacity:0;animation:wfEntryFall 2.5s linear infinite}
body.nr-site.player-layout #waterfallMode .wf-button-flow i:nth-child(1){left:12%;animation-delay:-.2s;height:10px}
body.nr-site.player-layout #waterfallMode .wf-button-flow i:nth-child(2){left:28%;animation-delay:-1.4s;background:#f7b544;box-shadow:0 0 5px #f7b54488}
body.nr-site.player-layout #waterfallMode .wf-button-flow i:nth-child(3){left:43%;animation-delay:-.9s;height:14px}
body.nr-site.player-layout #waterfallMode .wf-button-flow i:nth-child(4){left:61%;animation-delay:-2s;background:#f7b544;box-shadow:0 0 5px #f7b54488;height:10px}
body.nr-site.player-layout #waterfallMode .wf-button-flow i:nth-child(5){left:76%;animation-delay:-.5s;height:14px}
body.nr-site.player-layout #waterfallMode .wf-button-flow i:nth-child(6){left:89%;animation-delay:-1.8s;background:#f7b544;box-shadow:0 0 5px #f7b54488}
@keyframes wfEntryFall{0%{transform:translateY(0);opacity:0}16%{opacity:.65}78%{opacity:.65}100%{transform:translateY(56px);opacity:0}}
body.nr-site.player-layout #waterfallMode .wf-button-label{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:5px;font-size:11px!important;line-height:1.2;text-shadow:0 1px 4px #000,0 0 8px #06121f;pointer-events:none}
body.nr-site.player-layout #waterfallMode .wf-mini-glyph{display:flex;align-items:flex-end;justify-content:center;gap:2px;width:17px;height:17px;flex:none}
body.nr-site.player-layout #waterfallMode .wf-mini-glyph i{display:block;width:4px;height:11px;border-radius:2px;background:#11d7e6;box-shadow:0 0 4px #11d7e6a0}
body.nr-site.player-layout #waterfallMode .wf-mini-glyph i:nth-child(2){height:16px;background:#f7b544;box-shadow:0 0 4px #f7b544a0}
body.nr-site.player-layout #waterfallMode .wf-mini-glyph i:nth-child(3){height:8px}
body.nr-site.player-layout #practiceModePair #waterfallStatus:not([hidden]){position:absolute;z-index:30;bottom:calc(100% + 5px);left:50%;transform:translateX(-50%);width:max-content;max-width:min(86vw,300px);padding:7px 10px;border:1px solid #d6a25f;border-radius:10px;background:#fff9ed;color:#83491c;box-shadow:0 5px 18px #06121f40;text-align:center;white-space:normal;line-height:1.5}
body.nr-site.player-layout:not(.stage-view):not(.note-reading-active) #player>.score-tools{grid-template-columns:minmax(70px,1fr) minmax(174px,clamp(174px,46vw,340px)) minmax(70px,1fr)!important}
body.nr-site.player-layout.practice-desktop-footer:not(.stage-view):not(.note-reading-active) #desktopPracticeActions #practiceModePair{width:238px;max-width:none;margin:0}
body.nr-site.player-layout.practice-desktop-footer:not(.stage-view):not(.note-reading-active) #desktopPracticeActions #practiceModePair>button{height:38px;min-height:38px!important;max-height:38px}
body.nr-site.player-layout.practice-desktop-footer:not(.stage-view):not(.note-reading-active) #desktopPracticeActions #practiceModePair .wf-button-label,body.nr-site.player-layout.practice-desktop-footer:not(.stage-view):not(.note-reading-active) #desktopPracticeActions #practiceModePair .reading-button-label{font-size:11px!important}
@media(max-width:650px){body.nr-site.player-layout:not(.stage-view):not(.note-reading-active) #player>.score-tools{grid-template-columns:minmax(76px,1fr) minmax(174px,46vw) minmax(76px,1fr)!important}body.nr-site.player-layout #practiceModePair #readingLaunch .reading-button-label,body.nr-site.player-layout #waterfallMode .wf-button-label{font-size:10px!important;gap:3px!important}body.nr-site.player-layout #practiceModePair #readingLaunch .ui-icon{width:14px;height:14px}body.nr-site.player-layout #waterfallMode .wf-mini-glyph{width:14px;height:14px;gap:1px}}
@media(max-width:370px){body.nr-site.player-layout:not(.stage-view):not(.note-reading-active) #player>.score-tools{grid-template-columns:minmax(66px,1fr) minmax(158px,44vw) minmax(66px,1fr)!important;padding-inline:4px!important;gap:3px!important}body.nr-site.player-layout #practiceModePair{gap:4px}body.nr-site.player-layout #player #practiceModePair>button{padding-inline:2px!important}body.nr-site.player-layout #practiceModePair #readingLaunch .reading-button-label,body.nr-site.player-layout #waterfallMode .wf-button-label{font-size:9px!important;gap:2px!important}}
@media(orientation:landscape) and (min-width:650px) and (max-height:650px){body.nr-site.player-layout.practice-landscape-header .compact-search{display:none!important}body.nr-site.player-layout #practiceHeaderActions #practiceModePair{width:auto;max-width:none;margin:0;gap:5px}body.nr-site.player-layout #practiceHeaderActions #practiceModePair>button{flex:none;width:clamp(76px,11vw,96px)!important;min-width:76px!important;max-width:96px!important;height:36px!important;min-height:36px!important;max-height:36px!important;padding:4px!important;border-radius:18px!important}body.nr-site.player-layout #practiceHeaderActions #waterfallMode .wf-button-text,body.nr-site.player-layout #practiceHeaderActions #readingLaunch .reading-button-label span{display:inline!important}body.nr-site.player-layout #practiceHeaderActions #waterfallMode .wf-button-label,body.nr-site.player-layout #practiceHeaderActions #readingLaunch .reading-button-label{font-size:9px!important;gap:2px!important}body.nr-site.player-layout #practiceHeaderActions #waterfallMode .wf-mini-glyph,body.nr-site.player-layout #practiceHeaderActions #readingLaunch .ui-icon{width:13px;height:13px}}
@media(prefers-reduced-motion:reduce){body.nr-site.player-layout #waterfallMode .wf-button-flow i{animation:none;opacity:.35;transform:translateY(20px)}body.nr-site.player-layout #player #practiceModePair #waterfallMode{transition:none}}

/* The pair is moved into the compact header or desktop footer without cloning controls. */
body.nr-site.player-layout #practiceModePair #readingLaunch{background:linear-gradient(115deg,#29aeea,#087ecf 55%,#159ee9)!important;border:1px solid rgba(64,174,235,.72)!important;color:#fff!important;box-shadow:inset 0 1px rgba(255,255,255,.55),0 4px 13px rgba(23,130,190,.22)!important}
body.nr-site.player-layout #practiceModePair #readingLaunch .reading-button-label{color:#fff!important;text-shadow:0 1px 3px rgba(7,56,91,.7)}
body.nr-site.player-layout #practiceModePair #waterfallMode{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(120deg,#06121f,#123046 54%,#06121f)!important;border:1px solid #28748b!important;color:#effbff!important;box-shadow:inset 0 1px #7cecff55,0 4px 13px #06121f2c!important;font-weight:800;cursor:pointer}
body.nr-site.player-layout #practiceModePair #waterfallMode .wf-button-label{color:#effbff!important}
body.nr-site.player-layout.practice-landscape-header #practiceHeaderActions #practiceModePair #readingLaunch{background:linear-gradient(115deg,#29aeea,#087ecf 55%,#159ee9)!important;border-color:rgba(64,174,235,.72)!important;color:#fff!important}
body.nr-site.player-layout #player #practiceModePair #readingLaunch .reading-button-label{color:#fff!important}
