.shead .dw-choose { display:block; margin:16px 0 8px; width:100%; min-height:48px; }
.shead .dw-plan-links { display:flex; flex-wrap:wrap; gap:8px 18px; }
.shead .dw-plan-links .sh-edit { margin:0; padding:8px 0; border:0; background:none; font-size:11px; }
.dw-dialog { box-sizing:border-box; color-scheme:dark; color:#eceef5; background:#0b1019; border:1px solid #343c48; border-radius:22px; padding:0; width:min(600px,calc(100% - 24px)); max-width:600px; max-height:calc(100dvh - 32px); margin:auto; overflow:hidden; }
.dw-dialog[open] { display:flex; flex-direction:column; }
.dw-dialog::backdrop { background:rgba(2,4,10,.8); }
.dw-dialog * { box-sizing:border-box; min-width:0; }
.dw-head { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:20px; border-bottom:1px solid #282f3b; flex-shrink:0; }
.dw-head h2 { font:700 23px/1.25 system-ui,sans-serif; margin:3px 0 0; }
.dw-eyebrow,.dw-source { font:500 12px/1.5 system-ui,sans-serif; color:#aeb7c8; margin:0; overflow-wrap:anywhere; }
.dw-eyebrow { color:#ffbf28; text-transform:uppercase; letter-spacing:.08em; }
.dw-close { flex:0 0 44px; height:44px; border:1px solid #394353; border-radius:12px; color:inherit; background:#141c28; font:26px system-ui; }
.dw-filters { padding:12px 20px; display:flex; flex-wrap:wrap; gap:8px; flex-shrink:0; }
.dw-filters p { width:100%; margin:0 0 4px; color:#b6bdcb; font:14px/1.5 system-ui; }
.dw-filters input,.dw-filters select { width:100%; padding:11px 12px; min-height:44px; border:1px solid #394353; border-radius:10px; color:#edf0f7; background:#141c28; font:16px system-ui; }
.dw-scroll { min-height:0; overflow-y:auto; overscroll-behavior:contain; padding:0 20px 20px; }
.dw-count { margin:4px 0 10px; color:#aeb7c8; font:12px system-ui; }
.dw-card { display:flex; flex-direction:column; gap:6px; width:100%; text-align:left; padding:16px; margin-bottom:10px; border:1px solid #303b4a; border-radius:14px; background:#121a26; color:#e9edf5; font:13px/1.5 system-ui; overflow-wrap:anywhere; }
.dw-card strong { font-size:17px; }
.dw-card strong span { color:#ffbf28; }
.dw-card:hover { border-color:#ffbf28; }
.dw-back { min-height:44px; border:0; background:none; color:#ffbf28; padding:8px 0; font:14px system-ui; }
.dw-scroll h3 { font:700 22px/1.3 system-ui; margin:10px 0 18px; overflow-wrap:anywhere; }
.dw-exercises { padding-left:22px; margin:0; }
.dw-exercises li { padding:10px 0; border-bottom:1px solid #282f3b; font:14px/1.5 system-ui; overflow-wrap:anywhere; }
.dw-exercises strong,.dw-exercises span,.dw-exercises small { display:block; }
.dw-exercises span,.dw-exercises small { color:#b6bdcb; }
.dw-foot { padding:12px 20px max(16px,env(safe-area-inset-bottom)); border-top:1px solid #303b4a; flex-shrink:0; }
.dw-foot p,.dw-replace { font:13px/1.5 system-ui; color:#b6bdcb; margin:0 0 10px; }
.dw-replace { display:flex; align-items:center; gap:10px; min-height:44px; }
.dw-replace input { width:20px; height:20px; flex-shrink:0; }
.dw-foot .dw-error { color:#ffb1a8; }
.dw-error:empty { display:none; }
.dw-foot button { white-space:normal; min-height:48px; }
.dw-dialog :focus-visible { outline:2px solid #ffbf28; outline-offset:2px; }
.dw-sr { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.pk-day .dw-pick-session { grid-column:2/-1; justify-self:start; min-height:44px; color:#ffbf28; background:none; border:0; font:600 13px system-ui; text-align:left; }
@media(max-width:380px) { .dw-head,.dw-filters,.dw-foot { padding-left:14px; padding-right:14px; } .dw-scroll { padding-left:14px; padding-right:14px; } }
