/* Hide English + 5-at-a-time drill for the word sheets (screen only) */
.dr-bar{position:sticky;top:var(--dr-top,0px);z-index:25;background:var(--desk);border-bottom:1px solid var(--rule)}
.dr-bar .in{max-width:720px;margin:0 auto;padding:6px 20px;display:flex;gap:8px;align-items:center}
.dr-b{min-height:44px;padding:0 14px;border:1px solid var(--rule);border-radius:8px;background:var(--paper);color:var(--ink);font:600 15px/1 var(--sans);cursor:pointer;display:inline-flex;align-items:center;gap:6px;-webkit-tap-highlight-color:transparent}
.dr-b:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
.dr-b.on{background:var(--acc);border-color:var(--acc);color:var(--onacc,#141413)}
.dr-b.pri{background:var(--acc);border-color:var(--acc);color:var(--onacc,#141413)}
.dr-b.ok{background:#2f5d3a;border-color:#3f7a4c;color:#eaf5ec}
.dr-b.no{background:#6b2a22;border-color:#8a382e;color:#fbecea}
.dr-b.gh{background:transparent}
.dr-b[disabled]{opacity:.4;cursor:default}
.dr-bar .sp{flex:1}
.dr-bar .hint{font:13px/1.3 var(--sans);color:var(--muted)}
/* hidden English: a grey bar the size of the word */
table.w td.en{position:relative}
.dr-hide table.w tr:not(.dr-show):not(.dr-vis) td.en,table.w tr.dr-cov td.en{color:transparent!important;cursor:pointer}
.dr-hide table.w tr:not(.dr-show):not(.dr-vis) td.en small,table.w tr.dr-cov td.en small{color:transparent!important}
.dr-hide table.w tr:not(.dr-show):not(.dr-vis) td.en:after,table.w tr.dr-cov td.en:after{content:"";position:absolute;left:4px;right:10px;top:7px;bottom:7px;background:var(--rule);border-radius:4px}
.dr-hide table.w tr{cursor:pointer}
table.w tr.dr-cov.dr-act td.en:after{background:#5a4a2c;box-shadow:0 0 0 2px var(--acc)}
/* drill */
.dr-on table.w tr.dr-out{opacity:.28}
.dr-on table.w tr.dr-in td{background:rgba(200,150,62,.07)}
.dr-on table.w tr.dr-act td{background:rgba(200,150,62,.16)}
table.w tr.dr-ok td.n,table.w tr.dr-no td.n{position:relative}
table.w tr.dr-ok td.n:before,table.w tr.dr-no td.n:before{position:absolute;left:-14px;top:50%;transform:translateY(-50%);font:700 15px/1 var(--sans)}
table.w tr.dr-ok td.n:before{content:"✓";color:#6fbf7f}
table.w tr.dr-no td.n:before{content:"✗";color:#e07a6a}
.dr-on .step{scroll-margin-top:calc(var(--dr-top,0px) + 70px)}
.dr-on .mw-bar,.dr-on .mw-hint{display:none!important}
.dr-pan{position:fixed;left:50%;transform:translateX(-50%);bottom:max(10px,env(safe-area-inset-bottom));z-index:90;width:min(560px,calc(100% - 16px));background:var(--paper);color:var(--ink);border:1px solid var(--rule);border-radius:12px;box-shadow:0 8px 28px rgba(0,0,0,.55);padding:12px 14px;font:15px/1.4 var(--sans)}
.dr-pan[hidden]{display:none}
.dr-pan .pg{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px;margin-bottom:6px}
.dr-pan .pg b{color:var(--ink);font-weight:600}
.dr-pan .pg .x{margin-left:auto;min-height:36px;min-width:36px;border:0;background:none;color:var(--muted);font:600 13px var(--sans);cursor:pointer}
.dr-pan .msg{margin:2px 0 10px;color:var(--ink2)}
.dr-pan .msg .hw{font-size:24px;margin:0 2px}
.dr-pan .row{display:flex;gap:8px;flex-wrap:wrap}
.dr-pan .row .dr-b{flex:1;justify-content:center}
.dr-pan .row .dr-b.sm{flex:0 0 auto}
.dr-sp{height:170px}
@media print{.dr-bar,.dr-pan,.dr-sp{display:none!important}.dr-hide table.w td.en{color:var(--pen)!important}table.w td.en:after{content:none!important}}
@media(max-width:600px){.dr-bar .in{padding:6px 10px}.dr-b{padding:0 12px;font-size:14.5px}.dr-bar .hint{display:none}}

/* the English read-back line is covered too when English is hidden */
.dr-hide .punct:not(.dr-show),.dr-on .punct:not(.dr-show),.dr-write .punct:not(.dr-show){color:transparent;background:var(--rule) content-box;cursor:pointer;border-radius:3px}
.dr-hide .punct:not(.dr-show) a,.dr-on .punct:not(.dr-show) a,.dr-write .punct:not(.dr-show) a{color:var(--ink2)}
/* write mode */
.dw-in,.dw-key,.dw-ctl,.dw-step,.dw-mk{display:none}
.dr-write table.w td.en>.dw-ans{display:none}
.dr-write .dw-in{display:block;width:100%;min-height:44px;padding:8px 10px;border:1px solid var(--rule);border-radius:6px;background:var(--desk);color:var(--ink);font:400 17px/1.3 var(--hand);font-style:italic;-webkit-appearance:none;appearance:none}
.dr-write .dw-in:focus{outline:2px solid var(--acc);outline-offset:1px;border-color:var(--acc)}
.dr-write table.w td.en{padding:5px 6px 5px 4px;vertical-align:middle}
.dr-write table.w td.he{vertical-align:middle}
.dr-write tr.dw-c .dw-key{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:5px;font:14px/1.35 var(--sans);color:var(--muted)}
.dw-key b{font:italic 400 16px/1.3 var(--hand);color:var(--pen)}
.dr-write tr.dw-good .dw-in{border-color:#3f7a4c;background:rgba(63,122,76,.18)}
.dr-write tr.dw-ok .dw-in{border-color:#3f7a4c}
.dr-write tr.dw-bad .dw-in{border-color:#8a382e;background:rgba(138,56,46,.2)}
.dw-tick{font:700 14px var(--sans)}.dw-good .dw-tick,.dw-ok .dw-tick{color:#6fbf7f}.dw-bad .dw-tick{color:#e07a6a}
.dr-write tr.dw-c:not(.dw-good) .dw-mk{display:inline-flex;gap:6px;margin-left:auto}
.dw-mk button{min-height:36px;min-width:44px;border-radius:6px;border:1px solid var(--rule);background:var(--paper);color:var(--ink);font:600 14px var(--sans);cursor:pointer}
.dw-ok .dw-mk .y{background:#2f5d3a;border-color:#3f7a4c;color:#eaf5ec}.dw-bad .dw-mk .n{background:#6b2a22;border-color:#8a382e;color:#fbecea}
.dr-write tr.dw-ctl{display:table-row}.dr-write tr.dw-ctl td{border-bottom:1px solid var(--rule);padding:6px 4px;text-align:right}
.dr-write .dw-step{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;margin:8px 0 2px}
.dw-b{min-height:40px;padding:0 12px;border:1px solid var(--rule);border-radius:8px;background:var(--paper);color:var(--ink);font:600 14px/1 var(--sans);cursor:pointer}
.dw-b.pri{background:var(--acc);border-color:var(--acc);color:var(--onacc,#141413)}
.dw-sum{font:13px/40px var(--sans);color:var(--muted);margin-right:auto}
.top .nav .dw-pl{background:none;border:0;padding:0;font:14px var(--sans);color:var(--ink);text-decoration:underline;text-decoration-color:var(--uline,rgba(122,42,31,.45));text-underline-offset:3px;cursor:pointer;margin-right:14px;min-height:44px;min-width:44px}
/* blank sheet for paper */
@media print{
 .dw-print .snav,.dw-print .dr-bar,.dw-print .dr-pan,.dw-print .mw-bar,.dw-print .mw-hint,.dw-print .top .dafs,.dw-print .also,.dw-print .ts,.dw-print .foot{display:none!important}
 .dw-print .punct{color:transparent!important;background:none!important;border-left:0;border-bottom:1px solid #000;min-height:2.2em}
 .dw-print .punct a{display:none}
 .dw-print table.w td.en,.dw-print table.w td.en *{color:transparent!important;background:none!important;box-shadow:none!important}
 .dw-print table.w td.en{border-bottom:1px solid #000}
 .dw-print table.w td.en:after,.dw-print .dw-in,.dw-print .dw-key,.dw-print .dw-ctl,.dw-print .dw-step{display:none!important}
 .dw-print table.w td.en>.dw-ans{display:inline!important}
 .dw-print table.w td{padding:7px 4px 3px}
 .dw-print tr.dr-out{opacity:1!important}
 .dw-print table.w tr td{background:none!important}
 .dw-print table.w tr td.n:before,.dw-print table.w tr td.n:after{content:none!important}
}

.dr-write table.w td.en:after{content:none!important}
.dr-write table.w td.en>.dw-key b{color:var(--pen)!important}

/* print reveal: matches screen hide rules' specificity (Instinct review, Oct 26) */
@media print{
body:not(.dw-print).dr-hide table.w tr:not(.dr-show):not(.dr-vis) td.en,
body:not(.dw-print) table.w tr.dr-cov td.en{color:var(--pen)!important}
body:not(.dw-print).dr-hide table.w tr:not(.dr-show):not(.dr-vis) td.en small,
body:not(.dw-print) table.w tr.dr-cov td.en small{color:var(--pen)!important}
body:not(.dw-print).dr-hide table.w tr:not(.dr-show):not(.dr-vis) td.en:after,
body:not(.dw-print) table.w tr.dr-cov td.en:after{content:none!important}
}
