/* Shared session controls; canvas and dock retain the common chapter.css skin. */
.practice-session{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:10px 14px;margin:14px 0;border:1px solid var(--line);border-radius:10px;background:var(--paper);font-size:12px;position:relative;z-index:45}.practice-session strong{font-size:14px}.ink-teacher-label{color:#7c3aed}.online-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#9baaaa;margin-right:5px}.online-dot.online{background:#168a3a}.practice-session label{display:flex;align-items:center;gap:6px}.practice-session input{accent-color:var(--teal)}#live-message{color:var(--muted)}
.practice-session [hidden],#kc-dock button[hidden]{display:none!important}

.ink-reading .practice-session{margin:0 0 22px;padding-right:180px;min-height:48px;background:#f6faf8;border-color:#d5e2dd}
.ink-reading #kc-account{position:absolute;top:8px;right:10px}
.ink-reading .kc-account-panel{position:absolute;right:0;z-index:100}
.ink-reading .practice-session #live-message{flex-basis:100%}
@media(max-width:600px){.ink-reading .practice-session{padding-right:14px;padding-top:56px;gap:9px}}
@media print{.practice-session,#kc-account,#kc-dock,#kc-ink-live{display:none!important}}

/* Keep wide reading content scrollable inside main so the mobile viewport and fixed ink controls agree. */
.ink-reading .kc-main{overflow-x:auto}
.membership-settings{display:flex;flex-wrap:wrap;align-items:center;gap:10px;flex-basis:100%;padding:10px 0}.membership-settings select,.membership-settings input{font:inherit;padding:8px;border:1px solid #c7ded3;border-radius:6px}.membership-settings .membership-message{flex-basis:100%;color:#873e31;overflow-wrap:anywhere}.membership-remaining{color:#22786f}.student-watermarked{position:relative}.student-watermarked:after{content:"";position:absolute;inset:0;z-index:44;background-image:var(--student-watermark);background-repeat:repeat;pointer-events:none}

/* Classroom controls sit above the existing page shell and annotation canvas. */
#lesson-bar{position:fixed;inset:0 0 auto;z-index:110;display:flex;align-items:center;flex-wrap:wrap;gap:9px;padding:9px 18px;background:#eef7f3;border-bottom:1px solid #a9cfc1;box-shadow:0 2px 8px #17343c12;color:#17343c;font:13px -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif}
#lesson-bar[hidden],#lesson-bar [hidden],#lesson-laser[hidden]{display:none!important}
#lesson-bar strong{margin-right:auto}#lesson-bar button,.lesson-dialog-content button,.lesson-board-tools button{border:1px solid #b7d3c8;border-radius:7px;background:#fff;color:#22786f;padding:7px 11px;font:inherit;cursor:pointer}#lesson-status{font-size:12px;color:#56746c}#lesson-end{color:#ad493e!important}
body.lesson-present{padding-top:var(--lesson-bar-height,54px)}body.lesson-present aside.kc-aside{top:var(--lesson-bar-height,54px)}body.lesson-present #kc-progress{top:var(--lesson-bar-height,54px)}body.lesson-present #whiteboard{top:var(--lesson-bar-height,54px)}body.lesson-present.board-open .board-toolbar{top:var(--lesson-bar-height,54px)}
#lesson-dialog{width:min(760px,90vw);max-height:80vh;padding:22px;border:1px solid #b7d3c8;border-radius:14px;color:#17343c;background:#fff}#lesson-dialog::backdrop{background:#17343c66}#lesson-dialog header{display:flex;align-items:center;justify-content:space-between;gap:15px}#lesson-dialog h2{margin:0;font-size:21px}#lesson-dialog header button{border:0;background:#edf4f0;border-radius:6px;padding:8px;cursor:pointer}.lesson-dialog-content{padding-top:18px}.lesson-dialog-content select{display:block;width:100%;font:inherit;padding:10px;margin-bottom:14px;border:1px solid #cadbd5;border-radius:7px}
.lesson-history-item{padding:14px 0;border-bottom:1px solid #dfebe5;font-size:13px}.lesson-history-item strong{display:block;line-height:1.7}.lesson-history-links{display:flex;flex-wrap:wrap;gap:9px;margin-top:10px}.lesson-history-links a{border:1px solid #c7ded3;border-radius:6px;padding:7px 10px;color:#22786f;text-decoration:none}.lesson-admin{flex-basis:100%}.lesson-admin summary{cursor:pointer;color:#22786f;padding:8px 0}.lesson-admin .lesson-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.lesson-admin .lesson-actions a{color:#22786f}
#lesson-laser{position:fixed;z-index:120;pointer-events:none;width:10px;height:10px;border-radius:50%;background:#ff2a2a;box-shadow:0 0 7px 4px #ff2a2a88;transform:translate(-50%,-50%)}
main.lesson-board-main{margin:0 auto;max-width:1150px;padding:26px 24px 90px}.lesson-board-tools{position:relative;z-index:45;display:flex;align-items:center;gap:16px;margin:14px 0}.lesson-board-tools a{margin-left:auto;color:#22786f}.lesson-board-main .writing-page{height:calc(100svh - 130px);min-height:450px;position:relative;margin:16px 0;padding:0;background:white}.lesson-board-main .writing-page:before{content:attr(data-page-label);position:absolute;top:14px;left:18px;color:#83998f;font-size:12px;pointer-events:none}
@media(max-width:600px){#lesson-bar{padding:8px 10px;gap:6px}#lesson-bar strong{width:100%}#lesson-bar button{padding:6px 8px}#lesson-presence,#lesson-status{font-size:11px}main.lesson-board-main{padding:20px 12px 80px}}
@media print{#lesson-bar,#lesson-dialog,#lesson-laser,.lesson-board-tools{display:none!important}body.lesson-present{padding-top:0}}
