#practice-dialog{position:fixed;inset:0;margin:auto;width:min(640px,calc(100vw - 28px));max-height:calc(100dvh - 28px);box-sizing:border-box;border:1px solid #9cb69e;border-radius:22px;padding:26px;background:#fffdf4;color:#293f34;overflow:auto}
#practice-dialog::backdrop{background:#172d28a8}
.practice-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.practice-heading h2{margin:8px 0;font-size:24px}
#practice-dialog p{line-height:1.7;overflow-wrap:anywhere}#practice-intro{font-size:17px;margin:16px 0 8px}
.practice-note,.practice-source{font-size:13px;color:#53654f}.practice-source{border-top:1px solid #d3decc;padding-top:16px;margin-bottom:0}
.practice-stage{text-align:center;background:#edf3e7;border:1px solid #cfdec9;border-radius:20px;padding:30px 20px 18px;margin:20px 0}
#practice-orb{margin:12px auto 25px;width:112px;height:112px;border-radius:50%;background:#c3dab7;box-shadow:0 0 0 12px #deead5;display:grid;place-items:center;transition:transform .2s linear}
#practice-orb span{font-size:46px;color:#3a6042}#practice-cue{font-size:22px;font-weight:700;margin:12px 0 6px}#practice-phase{min-height:3.4em;font-size:14px;margin:0 0 12px}
#practice-left{display:block;font-size:28px;font-variant-numeric:tabular-nums;font-weight:650}#practice-progress{width:min(320px,100%);height:9px;margin-top:12px;accent-color:#487052}
.practice-actions{display:flex;flex-wrap:wrap;gap:8px}.practice-actions .btn{flex:1;width:auto;min-height:48px}.practice-heading .btn{width:auto;flex-shrink:0;min-height:44px}
#practice-dialog :focus-visible{outline:3px solid #93671c;outline-offset:3px}.daily-quick{margin:8px 0 18px}
:root[data-camp-theme="night"] #practice-dialog{background:#222f2a;color:#f1eddf;border-color:#84947b}
:root[data-camp-theme="night"] #practice-dialog .practice-stage{background:#2e4036;border-color:#71876b}
:root[data-camp-theme="night"] #practice-dialog :is(.practice-note,.practice-source,.adventure-kicker){color:#d5dcc6}
:root[data-camp-theme="night"] #practice-dialog .practice-source{border-color:#71876b}
:root[data-camp-theme="night"] #practice-orb{background:#5f7d5b;box-shadow:0 0 0 12px #3d5840}
:root[data-camp-theme="night"] #practice-orb span{color:#f3e8c2}
:root[data-camp-theme="night"] #practice-dialog .btn.ghost{color:#f1eddf;border-color:#8aa281;background:#31483a}
:root[data-camp-theme="night"] #practice-progress{accent-color:#9ebc89}
:root[data-camp-theme="night"] #practice-dialog :focus-visible{outline-color:#d2b975}
@media(max-width:480px){#practice-dialog{padding:18px}.practice-heading h2{font-size:21px}.practice-stage{padding:22px 12px 16px}#practice-orb{width:88px;height:88px}#practice-intro{font-size:16px}.practice-actions{flex-direction:column}}
@media(prefers-reduced-motion:reduce){#practice-orb{transition:none}}
