:root{color-scheme:dark;--page-bg:#0b1421;--page-panel:#111e2e;--page-line:#2b4056;--page-muted:#b1c0d1;--page-accent:#59d0c9}
*{box-sizing:border-box}body.mentor-page{margin:0;background:var(--page-bg);color:#f0f4f8;font:15px/1.5 system-ui,sans-serif}button,input,textarea{font:inherit}button{cursor:pointer}button,a,input,textarea{outline-offset:3px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #f0c968}button{border:1px solid var(--page-line);border-radius:8px;background:#17263a;color:#f0f4f8;min-height:42px;padding:7px 13px}button:not(.caissa-board__square):hover{border-color:var(--page-accent);background:#203447}button:disabled{cursor:default;color:#a9b6c5;background:#142135}a{color:var(--page-accent);text-decoration:none}p,h1,h2{margin:0}.page-header{height:72px;display:flex;align-items:center;gap:42px;padding:0 4vw;border-bottom:1px solid var(--page-line)}.brand{display:flex;align-items:center;gap:10px;color:#f4f7fa;font-size:20px;letter-spacing:2px;font-weight:800}.brand span{color:var(--page-accent);font-size:30px}.brand small{font-size:10px;letter-spacing:3px;color:var(--page-muted)}nav{display:flex;gap:26px}nav a{color:var(--page-muted)}nav a[aria-current]{color:var(--page-accent)}.sign-in{margin-left:auto;font-size:13px}main{max-width:1480px;margin:auto;padding:25px 4vw 15px}.page-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px;gap:20px}.eyebrow{color:var(--page-accent);font-size:10px;font-weight:750;letter-spacing:1.7px}h1{font-size:30px;letter-spacing:-1px}h2{font-size:18px;font-weight:650}.page-title p:not(.eyebrow){color:var(--page-muted);font-size:13px;margin-top:4px}.mentor-workspace{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(370px,1fr);gap:28px;align-items:start}.board-region{min-width:0}.lesson-heading{display:flex;align-items:center;justify-content:space-between;padding-bottom:12px}.study-label{font-size:11px;color:var(--page-muted);border:1px solid var(--page-line);padding:4px 9px;border-radius:20px}#mentor-board{width:100%;aspect-ratio:1;max-width:calc(100dvh - 320px);min-width:350px;margin:auto;--light-square:#dce5e4;--dark-square:#57908c}.board-foot{max-width:calc(100dvh - 320px);min-width:350px;margin:auto}#lesson-notation{padding:12px 0;min-height:43px;color:#c9d6e2;display:flex;gap:8px;flex-wrap:wrap}#lesson-notation button{min-height:28px;padding:2px 7px;font-size:12px;background:transparent;border:0}#lesson-notation button[aria-current]{color:var(--page-accent);background:#203447}.board-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--page-line);padding-top:10px}.board-controls>div{display:flex;gap:6px}.lesson-step{display:flex;gap:12px;align-items:center;justify-content:space-between;padding-top:13px}.lesson-step p{color:var(--page-muted);font-size:13px}#practice{color:var(--page-accent);white-space:nowrap}#move-status{font-size:12px;color:var(--page-accent);min-height:20px;margin:7px 0}details{font-size:12px;color:var(--page-muted)}summary{cursor:pointer}#fen-form{display:grid;gap:7px;margin-top:10px}.right-workspace{height:calc(100dvh - 227px);min-height:580px;border:1px solid var(--page-line);border-radius:14px;background:var(--page-panel);display:flex;flex-direction:column;overflow:hidden}.workspace-head{padding:16px 20px 0;flex:none}.workspace-head [role=tablist]{display:flex;gap:3px;margin-top:10px}.workspace-head [role=tab]{border:0;border-bottom:3px solid transparent;border-radius:0;background:transparent;flex:1;padding:10px 5px;color:var(--page-muted)}.workspace-head [aria-selected=true]{border-color:var(--page-accent);color:var(--page-accent)}.workspace-body{display:flex;flex-direction:column;overflow-y:auto;min-height:0;flex:1}.topic-panel{padding:19px 20px 14px;border-top:1px solid var(--page-line);flex:none}.topic-panel[hidden]{display:none}.topic-panel h2{font-size:16px}.topic-panel p{font-size:12px;color:var(--page-muted);margin-top:5px}.topic-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.topic-actions button{font-size:12px;padding:7px 10px;min-height:35px;border-color:#36536a;background:#162b3b}.topic-actions span{color:var(--page-accent);padding-left:6px}[data-caissa-mentor-page-host]{display:contents}.mentor-page .caissa-mentor-shell--page{position:static;inset:auto;width:100%;border:0;border-radius:0;box-shadow:none;flex:1;min-height:360px;max-height:none;background:transparent;padding:0}.mentor-page .caissa-mentor-shell--page .caissa-mentor-shell__header{display:none}.mentor-page .caissa-mentor-shell__body{overflow:visible;padding:0 20px 15px;gap:9px}.mentor-page .caissa-mentor-shell__context{font-size:11px;color:var(--page-accent)}.mentor-page .caissa-mentor-shell__mode{font-size:11px;border:0;background:transparent;padding:0}.mentor-page .caissa-mentor-shell__messages{overflow:visible;min-height:90px;flex:1;padding:12px 0;scrollbar-gutter:auto}.mentor-page .caissa-mentor-shell__messages p{font-size:13px;background:#1a2b3e;padding:13px;border-radius:10px}.mentor-page .caissa-mentor-shell__welcome{color:#d6e1ed}.mentor-page .caissa-mentor-shell__form{position:sticky;bottom:0;background:var(--page-panel);padding:12px 0 4px;z-index:3;border-top:1px solid var(--page-line)}.mentor-page .caissa-mentor-shell__form label{font-size:12px}.mentor-page .caissa-mentor-shell__form textarea{min-height:70px;max-height:100px;resize:none;font-size:13px}.mentor-page .caissa-mentor-shell__form>button{min-height:40px}.mentor-page .caissa-mentor-shell__status{font-size:12px}.mentor-page .caissa-mentor-shell__local{border:0;background:transparent;padding:0;font-size:11px}.mentor-page .caissa-mentor-shell__local h3{font-size:12px}.mentor-page .caissa-mentor-shell__auth{font-size:11px}.mentor-page .caissa-mentor-shell__auth a{min-height:28px}#account-form{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}#account-form label{font-size:12px;align-self:center}input{min-width:0;border:1px solid #415970;border-radius:6px;background:#0b1725;color:#eef4fa;padding:8px;width:100%}#account-form button,#account-status{grid-column:1/-1}.source-note{padding-top:9px}.page-note{font-size:11px;color:var(--page-muted);margin-top:17px}dialog{background:var(--page-panel);color:#eef4fa;border:1px solid var(--page-line);border-radius:14px}dialog::backdrop{background:#0009}dialog>div{display:flex;gap:8px;margin:15px 0}
@media(min-width:1550px){#mentor-board,.board-foot{max-width:670px}}@media(max-width:1050px){main{padding-inline:22px}.mentor-workspace{gap:20px;grid-template-columns:minmax(0,1.1fr) minmax(330px,1fr)}#mentor-board,.board-foot{min-width:0}.page-header{gap:25px;padding-inline:22px}.right-workspace{min-height:570px}.lesson-step{align-items:start;flex-direction:column}}
@media(max-width:760px){.page-header{height:60px;padding:0 16px;gap:15px}.brand{font-size:16px}.brand small,nav{display:none}.sign-in{font-size:12px}main{padding:20px 16px}.page-title{align-items:start;margin-bottom:20px}.page-title h1{font-size:25px}.page-title p:not(.eyebrow){max-width:230px}.page-title button{font-size:11px;padding:5px 8px}.mentor-workspace{display:flex;flex-direction:column;gap:22px}.board-region,.right-workspace{width:100%}#mentor-board,.board-foot{max-width:100%;min-width:0}.right-workspace{height:660px;min-height:0}.lesson-step{flex-direction:row;align-items:center}.topic-panel{padding:15px}.workspace-head{padding-inline:15px}.mentor-page .caissa-mentor-shell__body{padding-inline:15px}.mentor-page .caissa-mentor-shell__form textarea{font-size:16px}.board-controls button{font-size:12px}.lesson-heading h2{font-size:17px}dialog>div{flex-wrap:wrap}}
.mentor-page-content{min-width:0}.mentor-page [data-caissa-standalone-sidebar] .main-navigation{gap:0}.mentor-page [data-caissa-standalone-sidebar] .nav-group-heading{margin:0}
.mentor-page>.skip-link{position:fixed;left:12px;top:12px;z-index:2000;padding:8px 12px;border-radius:6px;background:#0b1421;color:#59d0c9;transform:translateY(-200%)}.mentor-page>.skip-link:focus{transform:none}
@media(max-width:760px){.mentor-page [data-caissa-standalone-sidebar] nav{display:flex}}

/* The workspace body owns scrolling across all four panels. */
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
#panel-chat{display:flex;flex-direction:column;flex:1 0 auto;min-height:100%;border-top:1px solid var(--page-line)}
#panel-chat[hidden],[role=tabpanel][hidden],#chat-idea-indicator[hidden],#idea-plan[hidden]{display:none}
.chat-heading{padding:18px 20px 12px;flex:none}.chat-heading h2{font-size:18px}.chat-heading p{font-size:12px;color:var(--page-muted);margin-top:4px}#idea-plan{margin-top:10px;font-size:12px;color:var(--page-accent)}
.workspace-head [role=tab]{font-size:13px;white-space:nowrap;min-width:0}#chat-idea-indicator{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#f0c96825;filter:drop-shadow(0 0 4px #f0c96866);font-size:14px}
.mentor-page .caissa-mentor-shell--page{flex:1 0 auto;min-height:0;overflow:visible}
.mentor-page .caissa-mentor-shell__body{flex:1 0 auto;min-height:0}
.mentor-page .caissa-mentor-shell__body>*{flex-shrink:0}
.mentor-page .caissa-mentor-shell__messages{flex:1 0 auto;min-height:120px;overflow:visible}
.mentor-page .caissa-mentor-shell__messages p{flex-shrink:0;overflow-wrap:anywhere}
.mentor-page .caissa-mentor-shell__message--idea{border:1px solid #d9b65a;color:#f3dfad}
@media(max-width:760px){.chat-heading{padding-inline:15px}.workspace-head [role=tab]{font-size:12px;padding-inline:2px}}

/* Fixed chat FOOT is a sibling of the only scrolling BODY. */
.workspace-foot{flex:none;border-top:1px solid var(--page-line);padding:10px 20px 14px;background:var(--page-panel)}
.workspace-foot[hidden],.chat-suggestions[hidden]{display:none}
.mentor-page .workspace-foot .caissa-mentor-shell__form{position:static;border:0;padding:8px 0 0}
.workspace-foot .caissa-mentor-shell__mode,.workspace-foot .caissa-mentor-shell__auth{font-size:10px;line-height:1.4}
.workspace-foot .caissa-mentor-shell__mode{margin-bottom:4px}
.workspace-foot .caissa-mentor-shell__auth[hidden]{display:none}
.chat-suggestions{padding:0 20px 10px;flex:none}.chat-suggestions h3{margin:0;font-size:15px}.chat-suggestions p{margin:5px 0 12px;font-size:12px;color:var(--page-muted)}
#suggestion-actions{display:grid;gap:8px}#suggestion-actions button{text-align:left;font-size:13px;padding:10px 12px;background:#172c3e;border-color:#36536a}
.mentor-page .caissa-mentor-shell__welcome{background:transparent;padding:0;font-size:12px;color:var(--page-muted)}
@media(max-width:760px){.workspace-foot{padding:9px 15px 12px}.chat-suggestions{padding-inline:15px}}

/* My account contains only the Insight game-intake form. */
.insight-account h2{font-size:18px}.insight-account .insight-intro{padding:12px;border-left:3px solid var(--page-accent);background:#172c3e;border-radius:5px;margin:14px 0 18px}
.insight-account h3{font-size:14px;margin:0 0 12px}.import-source-options{display:flex;gap:6px;border-bottom:1px solid var(--page-line)}.import-source-options button{flex:1;min-width:0;font-size:12px;background:transparent;border:0;border-radius:0;border-bottom:2px solid transparent}.import-source-options [aria-pressed=true]{color:var(--page-accent);border-bottom-color:var(--page-accent)}
#account-form{display:flex;flex-direction:column;gap:18px;margin-top:18px}.account-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px 12px}.account-fields>div{min-width:0}#account-form label{display:block;font-size:11px;margin-bottom:6px;color:var(--page-muted)}
#account-form select,#account-form textarea{width:100%;min-width:0;border:1px solid #415970;border-radius:6px;background:#0b1725;color:#eef4fa;padding:9px;font:inherit;font-size:13px}#account-form textarea{resize:vertical;min-height:140px}#account-local input{margin-bottom:16px}#account-local[hidden],#account-online[hidden]{display:none}#account-import-submit{width:100%;font-size:13px}#account-status{font-size:11px}
@media(max-width:380px){.account-fields{grid-template-columns:1fr}}

.opening-search-label{display:block;font-size:11px;color:var(--page-muted);margin:15px 0 6px}#opening-status{font-size:11px;margin:10px 0}#opening-list h3{font-size:14px;margin:18px 0 10px}.opening-card{display:flex;flex-direction:column;gap:4px;width:100%;text-align:left;margin-bottom:8px;padding:11px 12px}.opening-card strong{font-size:13px;font-weight:600}.opening-card span{font-size:12px;color:var(--page-muted);overflow-wrap:anywhere}.opening-card small{font-size:11px}.opening-followups{padding:0 20px 12px;display:flex;gap:8px;flex-wrap:wrap}.opening-followups button{font-size:12px;color:var(--page-accent)}#opening-followups[hidden],#opening-more[hidden]{display:none}@media(max-width:760px){.opening-followups{padding-inline:15px}}

.account-position{border-top:1px solid var(--page-line);padding-top:16px;margin-top:18px}.account-position summary{font-size:13px;color:var(--page-accent)}#fen-status{font-size:11px;color:var(--page-muted);margin-top:8px}

#learn-game[hidden],#learn-lessons[hidden]{display:none}#learn-game label{display:block;font-size:11px;color:var(--page-muted);margin:14px 0 5px}#learn-game-select{width:100%;min-width:0;padding:8px;background:#0b1725;color:#eef4fa;border:1px solid #415970;border-radius:6px;font:inherit;font-size:12px}.learn-game-controls{display:flex;gap:7px;margin-top:14px}#learn-game-position{min-height:20px;font-size:11px;margin:10px 0}#learn-game-moves{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 18px}#learn-game-moves button{font-size:12px;min-height:32px;padding:4px 8px}#learn-game-moves [aria-current=step]{color:var(--page-accent);border-color:var(--page-accent)}#game-review{width:100%;color:var(--page-accent)}#learn-game .review-note{font-size:11px;margin-top:8px}

/* Account and credit information sits above the board, freeing chat space. */
.lesson-heading{gap:12px;flex-wrap:wrap}
.board-service-notice{flex:1 1 220px;max-width:340px;margin-left:auto;min-width:0;color:var(--page-muted)}
.mentor-page .board-service-notice .caissa-mentor-shell__mode,
.mentor-page .board-service-notice .caissa-mentor-shell__auth{font-size:11px;line-height:1.4;margin:0;overflow-wrap:anywhere}
.board-service-notice .caissa-mentor-shell__mode{padding-bottom:4px}
.board-service-notice .caissa-mentor-shell__auth[hidden]{display:none}
@media(max-width:760px){.board-service-notice{order:3;flex-basis:100%;max-width:none;margin-left:0}}

/* Board + one HEAD/BODY/FOOT workspace; controls belong to the right column. */
.mentor-workspace{grid-template-columns:minmax(0,1.55fr) minmax(360px,1fr);align-items:stretch}
#mentor-board{max-width:min(100%,calc(100dvh - 255px));min-width:0;margin-inline:auto}
.right-workspace{height:calc(100dvh - 205px);min-height:440px}
.workspace-head [role=tab]{min-width:0;font-size:13px;white-space:nowrap;padding-inline:3px}
#workspace-footer{flex:none}.study-footer{display:flex;align-items:center;gap:7px;padding-top:8px}
.study-footer>button{font-size:12px;padding-inline:9px}.move-navigation{margin-left:auto;display:flex;gap:4px}
.move-navigation button{min-width:35px;padding-inline:8px}
.learn-actions{display:flex;gap:6px;flex-wrap:wrap}.learn-actions button{font-size:12px;padding-inline:9px}
#learn-footer[hidden],#chat-footer[hidden]{display:none}
.mentor-page #chat-footer .caissa-mentor-shell__form{border-top:0;padding-top:0}
#panel-learn .lesson-step{padding-top:7px;display:block}#panel-learn #lesson-notation{min-height:0}
#learn-game-moves{display:block}.move-row{display:grid;grid-template-columns:36px minmax(0,1fr) minmax(0,1fr);gap:5px;align-items:center;padding:3px 0}
.move-row>span{color:var(--page-muted);font-size:12px}.move-row button{min-height:34px;text-align:left;border:0;border-radius:5px;background:transparent;padding:5px 10px;font-size:14px}
.move-row button[aria-current]{color:var(--page-accent);background:#243d4e}
.evaluation-chart{height:104px;margin:16px 0 8px;display:flex;align-items:stretch;position:relative;background:linear-gradient(to bottom,#152538 49.5%,#658090 49.5%,#658090 50.5%,#102030 50.5%);border:1px solid var(--page-line);border-radius:8px;overflow:hidden;font-size:12px;color:var(--page-muted);justify-content:center}
.evaluation-point{flex:1;min-width:0;min-height:0;padding:0;border:0;border-radius:0;background:transparent;position:relative}
.evaluation-point::before{content:'';position:absolute;bottom:50%;height:var(--evaluation-height,0%);left:0;right:0;background:#71c8b7}
.evaluation-point[data-side=black]::before{bottom:auto;top:50%;background:#7793b7}
.evaluation-point[data-side=neutral]::before{display:none}
.evaluation-point[aria-current]{outline:2px solid #f0c968;outline-offset:-2px;z-index:1}
.evaluation-point:disabled{background:transparent}.evaluation-point:disabled::before{display:none}
#engine-status{min-height:36px;font-size:11px;overflow-wrap:anywhere}#study-settings-dialog{max-width:min(420px,calc(100vw - 32px))}#study-settings-dialog label{display:block;margin-top:14px}#study-settings-dialog p{font-size:13px;margin:12px 0}
@media(min-width:1550px){#mentor-board{max-width:min(100%,calc(100dvh - 255px))}}
@media(max-width:1050px) and (min-width:761px){.mentor-workspace{grid-template-columns:minmax(0,1.4fr) minmax(340px,1fr);gap:18px}.workspace-head{padding-inline:12px}.workspace-head [role=tab]{font-size:12px}.workspace-foot{padding-inline:12px}}
@media(max-width:760px){#mentor-board{max-width:100%;min-width:0}.right-workspace{height:690px;min-height:0}.workspace-head [role=tab]{font-size:11px}.study-footer{gap:4px}.study-footer>button{padding-inline:7px}.move-navigation{gap:3px}.move-navigation button{min-width:32px;padding-inline:6px}}

/* Memory uses the existing BODY scroll owner and FOOT; no second board. */
.memory-training{margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid var(--page-line)}
.memory-training h3{margin:0 0 6px}.memory-training label{display:block;margin-top:12px;font-size:12px}.memory-training select{width:100%;margin-top:4px}
#memory-palette{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}#memory-palette[hidden],#memory-footer[hidden],#memory-recommendation[hidden]{display:none}
#memory-palette button{font-size:11px;min-height:36px;padding:5px 8px}#memory-palette [aria-pressed=true]{outline:2px solid var(--page-accent)}
#memory-feedback{padding-left:18px;font-size:12px}.memory-correct{color:#85e1b3}.memory-error{color:#ffb0a9}
.memory-actions{display:flex;gap:6px;flex-wrap:wrap;padding:8px 0}.memory-actions button{font-size:12px}
#memory-recommendation{font-size:12px;margin-top:8px;color:var(--page-accent)}
#chat-idea-indicator{filter:none;animation:none;transition:none}

.training-tabs{display:flex;gap:6px;margin:8px 0 16px}.training-tabs button{flex:1;padding:6px;font-size:12px;border-radius:5px}.training-tabs [aria-selected=true]{color:var(--page-accent);border-color:var(--page-accent)}
[role=tabpanel][hidden],#memory-start[hidden],#memory-panel[hidden]{display:none!important}
#memory-palette button{width:50px;height:50px;padding:4px;display:inline-flex;align-items:center;justify-content:center;background:#a1b9b5}#memory-palette img{width:40px;height:40px;object-fit:contain;pointer-events:none}
#memory-start{font-size:19px;min-width:42px}#memory-footer{padding:0;gap:6px}#memory-next:disabled,#memory-retry:disabled{opacity:.65}

.explorer-filters{display:flex;flex-wrap:wrap;gap:8px}.explorer-filters label{display:flex;align-items:center;gap:4px;font-size:12px}.explorer-filters input{width:auto}.explorer-table{width:100%;border-collapse:collapse;font-size:12px}.explorer-table caption{font-size:11px;text-align:left;margin:12px 0}.explorer-table th,.explorer-table td{padding:8px 4px;border-bottom:1px solid #294359;text-align:left}.explorer-results{display:flex;min-width:110px;overflow:hidden;border:1px solid #668391;border-radius:3px}.explorer-results span{width:var(--share);overflow:hidden;text-align:center;font-size:10px;min-height:18px}.explorer-white{background:#eef5f3;color:#142735}.explorer-draws{background:#8198a5;color:#0b1b28}.explorer-black{background:#172a3b;color:#eef5f3}#position-evaluation{font-size:11px;margin:0;color:#91c6c8}#settings-export{width:100%;box-sizing:border-box}#opening-explorer-body[hidden],#opening-eco-body[hidden]{display:none!important}

.study-footer{flex-wrap:wrap}.move-navigation{flex-shrink:0}

#memory-start{display:inline-flex;align-items:center;gap:5px;font-size:12px}#memory-start svg{flex:none}#opening-training-footer{display:flex;gap:6px;flex-wrap:wrap}#opening-training-footer[hidden]{display:none!important}#opening-training-notation{display:flex;flex-wrap:wrap;gap:5px;margin:12px 0}#opening-training-status[data-kind="correct"]{color:#78d4a7}#opening-training-status[data-kind="wrong"]{color:#ff9d9d}

#training-opening-body label{display:block;margin:12px 0 6px;font-size:12px;color:#bdd0dc}#opening-training-side{width:100%;box-sizing:border-box;padding:10px;background:#10283b;color:#eef5fa;border:1px solid #365367;border-radius:8px}#opening-training-start{margin-top:10px}

#memory-palette{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px}#memory-palette button{width:100%;max-width:50px;height:48px;padding:2px;justify-self:center}#memory-palette button img{width:36px;height:36px;max-width:100%;object-fit:contain}#memory-palette [data-memory-piece="erase"]{max-width:none;height:36px}

#chat-send-opening{width:100%;margin-top:7px;color:var(--page-accent)}#chat-send-opening[hidden],#training-opening-finder-host[hidden]{display:none!important}#chat-send-opening-status{font-size:12px;color:var(--page-muted)}#opening-eco-finder h2{margin-top:16px}#opening-eco-finder>p{margin:6px 0;color:var(--page-muted)}
