.pkpm-admin .pkpm-lab,.pkpm-admin .pkpm-cross{--lab-ink:#172347;--lab-yellow:#ffcb05;--lab-outline:#cbd4e4;color:var(--lab-ink);max-width:1100px}
.pkpm-admin .pkpm-lab__header{padding:clamp(20px,3vw,32px);background:linear-gradient(130deg,#253362,#111b3e);border-radius:18px;color:#fff;margin:4px 0 18px}
.pkpm-admin .pkpm-lab__header h2{font-size:clamp(23px,3vw,32px);color:white;margin:10px 0}
.pkpm-admin .pkpm-lab__header p{color:#ebf1ff;max-width:850px;line-height:1.6;font-size:15px}
.pkpm-admin .pkpm-lab__controls,.pkpm-admin .pkpm-cross__controls{background:white;border:1px solid var(--lab-outline);border-radius:12px;padding:16px;margin-bottom:17px}
.pkpm-admin .pkpm-lab__controls form,.pkpm-admin .pkpm-cross__controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.pkpm-admin .pkpm-lab__controls label,.pkpm-admin .pkpm-cross__controls label{font-weight:750}
.pkpm-admin .pkpm-lab__controls select,.pkpm-admin .pkpm-cross__controls select{min-height:42px;max-width:100%}
.pkpm-admin .pkpm-lab button,.pkpm-admin .pkpm-cross button{cursor:pointer}
.pkpm-admin .pkpm-lab__controls button,.pkpm-admin .pkpm-cross__controls button,.pkpm-admin .pkpm-lab__actions button,.pkpm-admin .pkpm-cross__actions button{background:#253362;border:1px solid #253362;color:white;padding:10px 16px;min-height:43px;border-radius:10px;font-weight:700}
.pkpm-admin .pkpm-lab button:disabled,.pkpm-admin .pkpm-cross button:disabled{cursor:not-allowed;opacity:.45}
.pkpm-admin .pkpm-lab__game,.pkpm-admin .pkpm-lab__result{border:1px solid var(--lab-outline);border-radius:16px;background:white;padding:clamp(18px,3vw,30px)}
.pkpm-admin .pkpm-lab__progress{display:flex;flex-wrap:wrap;align-items:center;gap:12px;color:#45506c}
.pkpm-admin .pkpm-lab__track{height:9px;border-radius:10px;background:#eef0f5;overflow:hidden;flex:1;min-width:90px}
.pkpm-admin .pkpm-lab__track span{display:block;height:100%;background:#ffcb05;transition:width .2s}
.pkpm-admin .pkpm-lab__game h3{font-size:clamp(20px,2.4vw,27px);line-height:1.35;margin:25px 0 20px;color:#182447}
.pkpm-admin .pkpm-lab__answers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.pkpm-admin .pkpm-lab__choice{font-size:16px;text-align:left;line-height:1.4;padding:16px 18px;border:2px solid #dce2ef;border-radius:13px;background:#f9fbff;color:#1b2545;min-height:62px}
.pkpm-admin .pkpm-lab__choice[aria-pressed=true]{border-color:#996c00;background:#fff2b5;box-shadow:inset 0 0 0 1px #bd9800}
.pkpm-admin .pkpm-lab__message{color:#56617b;margin:15px 0;min-height:24px}
.pkpm-admin .pkpm-lab__actions{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.pkpm-admin .pkpm-lab__review-item{padding:13px 0;border-bottom:1px solid #e0e4ed}.pkpm-admin .pkpm-lab__review-item p{line-height:1.65;margin:7px 0 3px}
.pkpm-admin .pkpm-lab__result [data-score]{font-size:25px;font-weight:800}
.pkpm-admin .pkpm-lab__disclaimer{color:#626f83;font-size:13px;margin:18px 0;line-height:1.65}
.pkpm-admin [data-pkpm-quiz-lab] [hidden],.pkpm-admin [data-pkpm-cross] [hidden]{display:none!important}
.pkpm-admin .pkpm-cross__layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(240px,.8fr);gap:16px;align-items:start}
.pkpm-admin .pkpm-cross__grid-scroll{max-width:100%;overflow:auto;border:1px solid #dae1ed;padding:10px;background:white;border-radius:13px}
.pkpm-admin .pkpm-cross__grid{display:grid;grid-template-columns:repeat(var(--cw-cols),minmax(30px,38px));grid-auto-rows:38px;gap:2px;width:max-content}
.pkpm-admin .pkpm-cross__box{width:100%;height:100%;background:#ebedf2;border-radius:3px}.pkpm-admin .pkpm-cross__box.is-empty{background:#f2f4f8}
.pkpm-admin .pkpm-cross__box input{box-sizing:border-box;border:1px solid #aab8d3;border-radius:3px;width:100%;height:100%;padding:0;text-align:center;text-transform:uppercase;font-size:18px;font-weight:800;color:#182343;background:white}
.pkpm-admin .pkpm-cross__box input.is-correct{background:#d7f5e6;border-color:#127347}.pkpm-admin .pkpm-cross__box input.is-wrong{background:#fce4e0;border-color:#b52828}
.pkpm-admin .pkpm-cross__box input:focus-visible,.pkpm-admin .pkpm-lab button:focus-visible,.pkpm-admin .pkpm-cross button:focus-visible{outline:3px solid #2877cd;outline-offset:2px;position:relative;z-index:1}
.pkpm-admin .pkpm-cross__clues{border:1px solid #dae1ed;background:white;border-radius:13px;padding:15px;max-height:650px;overflow:auto}.pkpm-admin .pkpm-cross__clues h4{font-size:17px;margin:8px 0}
.pkpm-admin .pkpm-cross__clue{width:100%;display:block;text-align:left;border:1px solid #e5e9f1;background:#f9fbfe;padding:9px 10px;border-radius:7px;margin:4px 0;line-height:1.5;color:#24304d}
.pkpm-admin .pkpm-cross__clue:hover{background:#fff1ba}
.pkpm-admin .pkpm-cross__actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:16px}
.pkpm-admin .pkpm-cross__actions span{flex-basis:100%;padding:8px 0;color:#45506c}
@media(max-width:800px){.pkpm-admin .pkpm-cross__layout{grid-template-columns:1fr}.pkpm-admin .pkpm-cross__clues{max-height:none}}
@media(max-width:560px){.pkpm-admin .pkpm-lab__answers{grid-template-columns:1fr}.pkpm-admin .pkpm-cross__grid{grid-template-columns:repeat(var(--cw-cols),32px);grid-auto-rows:32px}.pkpm-admin .pkpm-cross__box input{font-size:16px}.pkpm-admin .pkpm-lab__controls select{width:100%}}
@media(prefers-reduced-motion:reduce){.pkpm-admin .pkpm-lab__track span{transition:none}}

.pkpm-admin .pkpm-cross__box{position:relative}.pkpm-admin .pkpm-cross__number{position:absolute;top:1px;left:3px;z-index:1;font-size:9px;font-weight:900;line-height:1;color:#334155;pointer-events:none}.pkpm-admin .pkpm-cross__box input{padding-top:6px}
/* PokeDoku LAB — scoped strictly to the minigames admin wrapper */
.pkpm-admin .pkpm-doku{max-width:1100px;color:#172347}
.pkpm-admin .pkpm-doku__controls{display:flex;flex-wrap:wrap;align-items:center;gap:12px;background:white;border:1px solid #cbd4e4;padding:15px;border-radius:12px;margin-bottom:16px}
.pkpm-admin .pkpm-doku__controls select,.pkpm-admin .pkpm-doku__controls button{min-height:42px}
.pkpm-admin .pkpm-doku__controls strong{margin-left:auto}
.pkpm-admin .pkpm-doku__layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(240px,.6fr);gap:16px}
.pkpm-admin .pkpm-doku__main,.pkpm-admin .pkpm-doku__aside{background:white;border:1px solid #cbd4e4;border-radius:15px;padding:clamp(12px,2vw,22px)}
.pkpm-admin .pkpm-doku__grid{display:grid;grid-template-columns:minmax(75px,1fr) repeat(3,minmax(0,1.15fr));gap:5px}
.pkpm-admin .pkpm-doku__header{display:flex;align-items:center;justify-content:center;text-align:center;background:#edf2fa;border-radius:7px;min-height:54px;padding:5px;font-size:12px;font-weight:800;overflow-wrap:anywhere}
.pkpm-admin .pkpm-doku__cell{display:flex;align-items:center;justify-content:center;min-width:0;aspect-ratio:1/1;border-radius:9px;border:2px solid #c2cee2;background:#fafcff;color:#283657;font-weight:750;cursor:pointer;padding:4px;overflow-wrap:anywhere;font-size:clamp(10px,1vw,14px)}
.pkpm-admin .pkpm-doku__cell[aria-pressed=true]{border-color:#f0b800;box-shadow:inset 0 0 0 1px #f0b800}
.pkpm-admin .pkpm-doku__cell.is-correct{background:#dbf4e5;color:#145932;border-color:#72c899}
.pkpm-admin .pkpm-doku__cell:disabled{cursor:default}
.pkpm-admin .pkpm-doku__cell:focus-visible,.pkpm-admin .pkpm-doku button:focus-visible{outline:3px solid #2268d0;outline-offset:2px}
.pkpm-admin .pkpm-doku__input{position:relative;margin-top:18px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.pkpm-admin .pkpm-doku__input label{flex-basis:100%;font-weight:750}
.pkpm-admin .pkpm-doku__input input{flex:1 1 200px;max-width:100%;min-height:43px}
.pkpm-admin .pkpm-doku__input>button,.pkpm-admin .pkpm-doku__controls button{border:0;border-radius:9px;padding:10px 14px;background:#253362;color:white;font-weight:750;cursor:pointer}
.pkpm-admin .pkpm-doku__suggestions{flex-basis:100%;order:4;display:flex;flex-wrap:wrap;gap:5px;max-height:125px;overflow:auto}
.pkpm-admin .pkpm-doku__suggestions button{background:#f6f8fe;border:1px solid #ccd5e5;border-radius:7px;padding:7px 10px;color:#253362;cursor:pointer}
.pkpm-admin .pkpm-doku__message{margin-top:12px;min-height:30px;line-height:1.5}
.pkpm-admin .pkpm-doku__aside p{line-height:1.6}
.pkpm-admin .pkpm-doku__aside h3{margin-top:0}
.pkpm-admin [data-pkpm-doku] [hidden]{display:none!important}
@media(max-width:780px){.pkpm-admin .pkpm-doku__layout{grid-template-columns:1fr}}
@media(max-width:540px){.pkpm-admin .pkpm-doku__header{font-size:10px;min-height:42px}.pkpm-admin .pkpm-doku__grid{grid-template-columns:minmax(55px,1fr) repeat(3,minmax(0,1.05fr));gap:3px}.pkpm-admin .pkpm-doku__cell{font-size:10px}.pkpm-admin .pkpm-doku__controls strong{margin-left:0}}
.pkpm-admin .pkpm-lab__map{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0}
.pkpm-admin .pkpm-lab__map-button{border:1px solid #b9c4d8;border-radius:7px;background:#fff;color:#24324e;min-width:37px;min-height:37px;padding:4px;font-weight:700;cursor:pointer}
.pkpm-admin .pkpm-lab__map-button.is-answered{background:#daf4e6;border-color:#6aba90}
.pkpm-admin .pkpm-lab__map-button[aria-current=step]{outline:3px solid #e9b900;outline-offset:1px}
.pkpm-admin .pkpm-cross__completion{display:flex;align-items:center;gap:12px;margin:14px 0;max-width:500px}
.pkpm-admin .pkpm-cross__completion .pkpm-lab__track{min-width:120px}
.pkpm-admin .pkpm-cross__box.is-active-word{background:#ffe9a5}
.pkpm-admin .pkpm-cross__box.is-active-word input:not(.is-correct):not(.is-wrong){background:#fff4cf;border-color:#bd9a14}
.pkpm-admin .pkpm-cross__clue[aria-pressed=true]{background:#ffedaa;border-color:#ce9b00}

/* 0.7: admin-only enhancements; all selectors remain inside .pkpm-admin */
.pkpm-admin .pkpm-cross__controls select[data-level]{max-width:290px}
.pkpm-admin .pkpm-cross__actions [data-word-check]{background:#e8f0ff;border:1px solid #a9c0e8;color:#1d3766}
.pkpm-admin .pkpm-cross__actions [hidden]{display:none!important}
.pkpm-admin .pkpm-doku__selected{padding:11px 13px;background:#fff7d6;border-left:4px solid #e0ac00;border-radius:7px;font-weight:750;margin-top:12px;font-size:14px}
.pkpm-admin .pkpm-doku__assist{display:flex;gap:9px;align-items:center;width:100%;font-weight:600;font-size:13px;line-height:1.5}
.pkpm-admin .pkpm-doku__assist input{width:17px;height:17px;flex-shrink:0}
.pkpm-admin .pkpm-doku__suggestions button{line-height:1.45;text-align:left}
.pkpm-admin .pkpm-doku__suggestions button:focus-visible{outline:3px solid #2268d0;outline-offset:2px}
@media(max-width:600px){.pkpm-admin .pkpm-cross__controls select[data-level]{max-width:100%;width:100%}.pkpm-admin .pkpm-cross__actions button{flex:1 1 140px}.pkpm-admin .pkpm-doku__suggestions button{width:100%}}
/* 0.9.0 admin quiz stats isolated from the theme */
.pkpm-admin .pkpm-quiz-stats{background:#f7faff;border:1px solid #dce5f3;border-radius:14px;margin:20px 0;padding:22px}
.pkpm-admin .pkpm-stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.pkpm-admin .pkpm-stats-grid>div{background:#fff;padding:12px;border-radius:10px;text-align:center;border:1px solid #e0e6f1}
.pkpm-admin .pkpm-stats-grid strong{display:block;font-size:25px;color:#1b2f64}.pkpm-admin .pkpm-stats-grid span{font-size:13px}
.pkpm-admin .pkpm-quiz-stats [hidden]{display:none!important}
@media(max-width:520px){.pkpm-admin .pkpm-stats-grid{grid-template-columns:1fr}}
