/* AVERA — teacher-only KTP introduction. No glass, no external assets. */
.av-ktp-tour[hidden]{display:none!important}
.av-ktp-tour{position:fixed;inset:0;z-index:2147481200;display:flex;align-items:center;justify-content:center;padding:12px 14px;background:rgba(11,25,32,.66);overscroll-behavior:contain}
.av-ktp-tour *{box-sizing:border-box}
.av-ktp-tour-card{--ti-bg:#f8fbfc;--ti-face:#fff;--ti-face2:#f0f6f8;--ti-ink:#18303b;--ti-muted:#647d88;--ti-stroke:#dce8ec;--ti-accent:#008b91;--ti-soft:#e0f2f2;--ti-shadow:0 22px 80px rgba(7,25,31,.24);position:relative;display:flex;flex-direction:column;width:min(100%,420px);height:min(720px,calc(100dvh - 24px));max-height:calc(100dvh - 24px);overflow:hidden;overscroll-behavior:contain;scrollbar-width:thin;border-radius:26px;background:var(--ti-bg);color:var(--ti-ink);border:1px solid var(--ti-stroke);box-shadow:var(--ti-shadow);font-family:var(--av-font-sans,'Commissioner',system-ui,-apple-system,Arial,sans-serif)}
html[data-theme="dark"] .av-ktp-tour-card{--ti-bg:#172630;--ti-face:#1d303b;--ti-face2:#233a46;--ti-ink:#ebf5f7;--ti-muted:#9eb4bf;--ti-stroke:#304a56;--ti-accent:#4bd1d0;--ti-soft:#203f47;--ti-shadow:0 22px 80px rgba(0,0,0,.55)}
.av-ktp-tour-header{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;padding:20px 20px 0;gap:12px}
.av-ktp-tour-brand{display:flex;gap:9px;align-items:center;min-width:0}.av-ktp-tour-mark{width:34px;height:34px;object-fit:cover;flex:0 0 34px;border-radius:10px}.av-ktp-tour-brand-text{min-width:0;display:flex;flex-direction:column;gap:1px}.av-ktp-tour-brand-text strong{font-size:15px;letter-spacing:.025em;line-height:1.1}.av-ktp-tour-brand-text small{font-size:9px;font-weight:800;letter-spacing:.115em;color:var(--ti-accent);text-transform:uppercase}
.av-ktp-tour-x{display:flex;align-items:center;justify-content:center;width:38px;height:38px;flex:0 0 38px;border-radius:12px;border:1px solid var(--ti-stroke);color:var(--ti-muted);background:var(--ti-face);cursor:pointer;font:inherit}.av-ktp-tour-x svg{width:18px;height:18px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round}
.av-ktp-tour-story{flex:0 0 auto;padding:15px 22px 0;min-height:0}.av-ktp-tour-kicker{font-size:10px;letter-spacing:.13em;font-weight:850;color:var(--ti-accent);text-transform:uppercase;margin:0 0 7px}.av-ktp-tour-story h2{font-size:clamp(24px,5.8vw,29px);font-weight:800;line-height:1.12;letter-spacing:-.04em;margin:0 0 9px}.av-ktp-tour-story p{font-size:13px;line-height:1.48;margin:0;color:var(--ti-muted)}
.av-ktp-tour-visual{flex:1 1 auto;min-height:100px;padding:13px 19px 3px;height:auto;max-height:365px;touch-action:pan-y pinch-zoom}.av-ktp-tour-phone{height:100%;border:1px solid var(--ti-stroke);background:var(--ti-face);border-radius:21px;overflow:hidden;box-shadow:0 8px 21px rgba(16,49,61,.06);position:relative}.av-ktp-tour-ui-header{height:41px;display:flex;align-items:center;gap:9px;padding:0 15px;background:var(--ti-face2);border-bottom:1px solid var(--ti-stroke)}.av-ktp-tour-ui-header span{font-size:11px;font-weight:750;letter-spacing:-.02em}.av-ktp-tour-ui-icon{width:17px;height:17px;stroke:var(--ti-accent);fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:none}
.av-ktp-tour-ui-main{padding:13px 14px 10px}.av-ktp-tour-ui-tabs{display:flex;background:var(--ti-face2);padding:3px;border-radius:10px;gap:3px;margin-bottom:14px}.av-ktp-tour-ui-tabs span{display:block;text-align:center;flex:1;padding:8px 4px;font-size:11px;font-weight:750;color:var(--ti-muted);border-radius:8px}.av-ktp-tour-ui-tabs .is-active{background:var(--ti-face);color:var(--ti-ink);box-shadow:0 2px 6px rgba(12,49,57,.08)}
.av-ktp-tour-label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.10em;font-weight:800;color:var(--ti-muted);margin:0 0 9px}.av-ktp-tour-card-row{border:1px solid var(--ti-stroke);border-radius:12px;padding:11px 12px;display:flex;gap:10px;align-items:center;margin-bottom:9px;min-height:59px;background:var(--ti-face)}.av-ktp-tour-code{background:var(--ti-soft);color:var(--ti-accent);font-size:11px;font-weight:850;padding:6px 7px;border-radius:7px;white-space:nowrap}.av-ktp-tour-row-main{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.av-ktp-tour-row-main b{font-size:12px;font-weight:780;line-height:1.18}.av-ktp-tour-row-main small{font-size:10px;color:var(--ti-muted);line-height:1.16}.av-ktp-tour-ui-plus{display:flex;justify-content:center;align-items:center;gap:7px;background:#008b91;color:white;border-radius:12px;font-size:12px;font-weight:800;height:39px;margin-top:14px}.av-ktp-tour-ui-plus svg{width:14px;height:14px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round}
.av-ktp-tour-progress{display:flex;justify-content:space-between;align-items:baseline;margin:10px 0}.av-ktp-tour-progress strong{font-size:22px;letter-spacing:-.05em}.av-ktp-tour-progress small{font-size:10px;color:var(--ti-muted)}.av-ktp-tour-meter{height:8px;background:var(--ti-face2);border-radius:8px;overflow:hidden;margin:8px 0 17px}.av-ktp-tour-meter span{display:block;width:47%;height:100%;background:linear-gradient(90deg,#00858e,#25b6a7);border-radius:8px}.av-ktp-tour-topic{display:flex;align-items:center;gap:9px;padding:9px 0;border-bottom:1px solid var(--ti-stroke)}.av-ktp-tour-num{width:24px;height:24px;display:grid;place-items:center;border-radius:8px;background:var(--ti-face2);color:var(--ti-muted);font-size:10px;font-weight:850}.av-ktp-tour-topic .av-ktp-tour-row-main small{font-size:10px}.av-ktp-tour-tick{color:var(--ti-accent);font-weight:850;font-size:14px}.av-ktp-tour-att-badge{padding:5px 7px;border-radius:8px;background:var(--ti-soft);color:var(--ti-accent);font-size:10px;font-weight:800;white-space:nowrap}
.av-ktp-tour-foot{flex:0 0 auto;padding:13px 20px 19px;background:var(--ti-bg);border-top:1px solid var(--ti-stroke)}.av-ktp-tour-pager{display:flex;justify-content:center;align-items:center;gap:10px;min-height:18px;margin-bottom:10px}.av-ktp-tour-dot{width:9px;height:9px;border:0;border-radius:99px;background:var(--ti-stroke);padding:0;cursor:pointer;transition:width .16s ease,background .16s ease}.av-ktp-tour-dot[aria-current="step"]{width:22px;background:var(--ti-accent)}.av-ktp-tour-actions{display:flex;gap:9px}.av-ktp-tour-btn{min-height:44px;flex:1;border:1px solid var(--ti-stroke);border-radius:12px;padding:10px 9px;background:var(--ti-face);color:var(--ti-muted);font-family:inherit;font-weight:750;font-size:12px;line-height:1.2;cursor:pointer}.av-ktp-tour-btn.is-primary{flex:1.55;background:#00858b;color:#fff;border-color:#00858b;font-weight:800}.av-ktp-tour-btn:focus-visible,.av-ktp-tour-x:focus-visible,.av-ktp-tour-dot:focus-visible{outline:none;outline-offset:3px}
.av-ktp-tour[aria-hidden="true"]{pointer-events:none}
@media(max-width:370px){.av-ktp-tour-card{border-radius:22px}.av-ktp-tour-header{padding:14px 15px 0}.av-ktp-tour-story{padding:11px 17px 0}.av-ktp-tour-story h2{font-size:24px}.av-ktp-tour-visual{padding:11px 14px 2px;height:292px}.av-ktp-tour-ui-main{padding:10px 11px 7px}.av-ktp-tour-foot{padding:12px 14px 16px}.av-ktp-tour-card-row{min-height:53px;padding:9px}}
@media(max-height:665px){.av-ktp-tour-visual{min-height:120px}.av-ktp-tour-story{min-height:88px;padding-top:9px}.av-ktp-tour-story h2{font-size:23px}.av-ktp-tour-header{padding-top:11px}.av-ktp-tour-foot{padding-top:9px}}
@media(prefers-reduced-motion:reduce){.av-ktp-tour *{transition:none!important;animation:none!important}}

body.av-ktp-tour-active{overflow:hidden!important}

/* Keep all illustrative rows readable within the miniature screen. */
.av-ktp-tour-visual{height:auto}
.av-ktp-tour-phone:has(.av-ktp-tour-att-badge) .av-ktp-tour-card-row{min-height:49px;padding:8px 10px;margin-bottom:6px}
.av-ktp-tour-phone:has(.av-ktp-tour-att-badge) .av-ktp-tour-ui-tabs{margin-bottom:10px}
.av-ktp-tour-phone:has(.av-ktp-tour-topic) .av-ktp-tour-topic{padding:7px 0}
@media(max-height:665px){.av-ktp-tour-visual{min-height:120px}.av-ktp-tour-ui-main{padding-top:9px}.av-ktp-tour-phone:has(.av-ktp-tour-att-badge) .av-ktp-tour-card-row{min-height:45px;padding:6px 9px;margin-bottom:5px}}
@media(max-width:370px) and (max-height:680px){
 .av-ktp-tour-header{padding-top:8px}
 .av-ktp-tour-story{min-height:0;padding-top:7px}
 .av-ktp-tour-story h2{font-size:21px;line-height:1.08;margin-bottom:6px}
 .av-ktp-tour-story p{font-size:11px;line-height:1.32}
 .av-ktp-tour-kicker{font-size:9px;margin-bottom:5px!important}
 .av-ktp-tour-visual{min-height:100px;padding-top:7px}
 .av-ktp-tour-foot{padding:7px 12px 12px}
 .av-ktp-tour-pager{margin-bottom:10px}
}

/* rev186: fixed actions in short Android viewports; never hide slide navigation. */
.av-ktp-tour-card{isolation:isolate}
.av-ktp-tour-visual{overflow:hidden}
.av-ktp-tour-phone{overflow:hidden}
.av-ktp-tour-foot{position:relative;z-index:1}
@media(max-height:690px){
 .av-ktp-tour-header{padding-top:10px}
 .av-ktp-tour-story{padding-top:8px}
 .av-ktp-tour-story h2{font-size:clamp(20px,5.1vw,25px);margin-bottom:5px;line-height:1.1}
 .av-ktp-tour-story p{font-size:11px;line-height:1.27}
 .av-ktp-tour-kicker{font-size:9px;margin-bottom:5px}
 .av-ktp-tour-visual{padding-top:7px;padding-bottom:3px}
 .av-ktp-tour-foot{padding-top:9px;padding-bottom:10px}
 .av-ktp-tour-pager{margin-bottom:7px}
}
@media(max-height:520px){
 .av-ktp-tour-visual{min-height:80px}
 .av-ktp-tour-ui-main{padding-top:7px}
 .av-ktp-tour-story h2{font-size:19px}
 .av-ktp-tour-story p{font-size:10px}
}
/* Student illustrations and adaptive slide navigation. */
.av-ktp-tour-student-lesson{align-items:flex-start;min-height:69px}
.av-ktp-tour-student-lesson .av-ktp-tour-num{flex:0 0 24px}
.av-ktp-tour-topic-hint{display:inline-flex;align-items:center;gap:4px;width:fit-content;margin-top:2px;border:1px solid var(--ti-stroke);background:var(--ti-soft);color:var(--ti-accent);font-weight:800;border-radius:7px;padding:4px 7px;font-size:10px;line-height:1.15}
.av-ktp-tour-preview-title{font-size:16px;display:block;margin:7px 0 10px}
.av-ktp-tour-student-topic{border:1px solid var(--ti-stroke);border-radius:12px;background:var(--ti-face2);padding:12px;display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.av-ktp-tour-student-topic strong{font-size:13px;line-height:1.26}
.av-ktp-tour-student-topic small{font-size:10px;line-height:1.25;color:var(--ti-muted)}
.av-ktp-tour-preview-note{margin:12px 0 0;font-size:11px;color:var(--ti-muted);line-height:1.36}
.av-ktp-tour-student-topic-short{padding:9px 12px}
.av-ktp-tour-card{min-height:0}
.av-ktp-tour-foot{flex-shrink:0}
.av-ktp-tour-visual{min-height:0!important;flex-shrink:1}
.av-ktp-tour-visual{touch-action:pan-y pinch-zoom}
@media(max-height:690px){.av-ktp-tour-student-lesson{min-height:58px;padding:8px 10px}.av-ktp-tour-student-topic{padding:8px;gap:4px}.av-ktp-tour-ui-main{padding:9px}.av-ktp-tour-visual{min-height:0!important}}

/* rev187: in the main AVERA page a global `footer { display:none }` hides
   generic footer elements. The tour actions use a role-neutral div instead.
   Keep the navigation inside the visible dialog and avoid a giant empty card. */
.av-ktp-tour-card{
  height:min(650px,calc(100dvh - 24px));
  max-height:calc(100dvh - 24px);
}
.av-ktp-tour-visual{
  max-height:none;
  min-height:0;
  flex:1 1 0;
}
.av-ktp-tour-foot{
  display:block;
  position:relative;
  flex:0 0 auto;
  margin-top:auto;
}
@media(max-height:520px){
 .av-ktp-tour-card{height:calc(100dvh - 12px);max-height:calc(100dvh - 12px)}
 .av-ktp-tour{padding:6px}
}

.av-ktp-tour-card:focus{outline:none}

/* Student cards mirror the real KTP overlay: LP/PZ are pill buttons, not 'Topic available' labels. */
.av-ktp-tour-subject-line{display:flex;align-items:center;gap:5px;flex-wrap:wrap;min-width:0}
.av-ktp-tour-subject-line .av-ktp-tour-code{font-size:10px;padding:4px 6px}
.av-ktp-tour-type-chip{display:inline-flex;align-items:center;justify-content:center;min-height:23px;border-radius:999px;border:1px solid var(--ti-stroke);padding:0 9px;font-size:10px;font-weight:800;letter-spacing:.025em;color:var(--ti-ink);background:var(--ti-face);white-space:nowrap}
.av-ktp-tour-type-pz{border-style:dashed;background:var(--ti-face2)}
.av-ktp-tour-student-popup{background:var(--ti-face);border:1px solid var(--ti-stroke);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:12px}
.av-ktp-tour-student-popup-head{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.av-ktp-tour-student-popup-head b{font-size:13px;line-height:1.25}
.av-ktp-tour-student-popup strong{font-size:14px;font-weight:750;line-height:1.35}
