:root{--t-navy:#183153;--t-green:#2d7b70;--t-mint:#eaf7f4;--t-cream:#fffaf0;--t-line:#d8e3e8;--t-ink:#22344c;--t-muted:#637489;--t-gold:#d7a93b}
.tutor-hero{background:linear-gradient(135deg,#f7fbfa 0%,#fffaf0 100%);padding:48px 0 32px;border-bottom:1px solid var(--t-line)}
.tutor-hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:34px;align-items:center}.tutor-hero h1{font-size:clamp(2.35rem,6vw,4.7rem);line-height:.96;letter-spacing:-.045em;margin:.2em 0}.tutor-hero h1 span{display:block;color:var(--t-green)}.tutor-hero p{font-size:1.08rem;max-width:720px;color:var(--t-muted)}
.tutor-promise{background:#fff;border:1px solid var(--t-line);border-radius:24px;padding:22px}.tutor-promise strong{display:block;color:var(--t-navy);font-size:1.15rem;margin-bottom:10px}.tutor-promise ul{margin:0;padding-left:20px;color:var(--t-muted)}
.tutor-shell{padding:28px 0 54px;background:#f6f8f9}.tutor-setup{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;background:#fff;border:1px solid var(--t-line);border-radius:22px;padding:18px;margin-bottom:18px}.tutor-setup label{font-weight:800;color:var(--t-navy);font-size:.86rem}.tutor-setup select{width:100%;margin-top:7px;border:1px solid #bdcdd6;border-radius:12px;padding:11px 12px;background:#fff;color:var(--t-ink);font:inherit}
.tutor-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(330px,.9fr);gap:18px;align-items:start}.tutor-panel{background:#fff;border:1px solid var(--t-line);border-radius:24px;overflow:hidden;min-width:0}.tutor-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid var(--t-line);background:#fbfdfd}.tutor-panel-head h2{font-size:1rem;margin:0;color:var(--t-navy)}.tutor-session-badge{font-size:.78rem;background:var(--t-mint);color:#245f58;border-radius:999px;padding:6px 9px;font-weight:800}
.tutor-mode-row{display:flex;gap:8px;flex-wrap:wrap;padding:12px 16px;border-bottom:1px solid var(--t-line);background:#fff}.tutor-mode{border:1px solid #c5d5dc;background:#fff;border-radius:999px;padding:8px 11px;font-weight:800;color:#40556e;cursor:pointer}.tutor-mode[aria-pressed="true"]{background:var(--t-navy);border-color:var(--t-navy);color:#fff}
.tutor-chat{height:470px;overflow:auto;padding:18px;scroll-behavior:smooth}.tutor-msg{max-width:86%;margin:0 0 12px;padding:12px 14px;border-radius:17px;line-height:1.48;white-space:pre-wrap}.tutor-msg.user{margin-left:auto;background:var(--t-navy);color:#fff;border-bottom-right-radius:5px}.tutor-msg.assistant{background:#eef7f5;color:var(--t-ink);border-bottom-left-radius:5px}.tutor-msg.system{max-width:100%;background:#fff7dc;border:1px solid #eed48d;color:#66501c;font-size:.9rem}.tutor-typing{opacity:.72;font-style:italic}
.tutor-composer{padding:14px;border-top:1px solid var(--t-line);background:#fbfdfd}.tutor-composer textarea{width:100%;min-height:74px;resize:vertical;border:1px solid #b9cad3;border-radius:14px;padding:12px;font:inherit;color:var(--t-ink)}.tutor-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:10px;align-items:center}.tutor-btn{appearance:none;border:1px solid #c3d2da;border-radius:12px;background:#fff;color:var(--t-navy);font-weight:850;padding:10px 13px;cursor:pointer;min-height:44px}.tutor-btn.primary{background:var(--t-green);border-color:var(--t-green);color:#fff}.tutor-btn.voice{background:var(--t-navy);border-color:var(--t-navy);color:#fff}.tutor-btn.live{background:#fff7dc;border-color:#e6c865;color:#6a531a}.tutor-btn:disabled{opacity:.55;cursor:not-allowed}.tutor-status{font-size:.86rem;color:var(--t-muted);margin:8px 2px 0}.tutor-limit{margin-left:auto;font-size:.8rem;font-weight:800;color:#62758a}
.tutor-side-stack{display:grid;gap:18px}.tutor-tabs{display:flex;border-bottom:1px solid var(--t-line);background:#fbfdfd}.tutor-tab{flex:1;border:0;background:transparent;padding:14px 10px;font-weight:850;color:#60748a;cursor:pointer}.tutor-tab[aria-selected="true"]{color:var(--t-navy);box-shadow:inset 0 -3px var(--t-green)}.tutor-tabpane{display:none;padding:14px}.tutor-tabpane.active{display:block}
.board-toolbar{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:10px}.board-tool{border:1px solid #c8d5dc;background:#fff;border-radius:10px;padding:8px 9px;min-height:38px;font-weight:800;color:#52677e;cursor:pointer}.board-tool.active{background:var(--t-navy);color:#fff;border-color:var(--t-navy)}.board-wrap{background:#fff;border:1px solid #bdcdd6;border-radius:14px;overflow:hidden;touch-action:none}.board-wrap canvas{width:100%;height:390px;display:block;background:#fff;touch-action:none}.board-note{font-size:.82rem;color:var(--t-muted);margin:8px 0}.board-actions{display:flex;gap:8px;flex-wrap:wrap}
.homework-drop{border:2px dashed #b7cbd3;border-radius:18px;padding:24px 16px;text-align:center;background:#fbfdfd}.homework-drop input{max-width:100%;margin-top:10px}.homework-preview{margin-top:12px;display:none}.homework-preview img{width:100%;max-height:310px;object-fit:contain;border:1px solid var(--t-line);border-radius:14px;background:#fff}.homework-preview.active{display:block}.privacy-mini{background:#f4f8fb;border:1px solid var(--t-line);border-radius:14px;padding:11px 12px;font-size:.83rem;color:#60738a;margin-top:12px}
.tutor-starters{display:flex;gap:8px;flex-wrap:wrap;padding:0 16px 14px}.starter{border:1px solid #d0dce2;background:#fff;border-radius:12px;padding:8px 10px;color:#52677c;cursor:pointer;font-size:.84rem}.starter:hover{border-color:#87b9ae;background:#f4fbf9}.voice-livebar{display:none;margin:12px 14px 0;padding:12px 14px;border-radius:14px;background:#eaf7f4;color:#215b53;font-weight:800;align-items:center;justify-content:space-between;gap:10px}.voice-livebar.active{display:flex}.live-dot{width:10px;height:10px;border-radius:50%;background:#29a36a;display:inline-block;margin-right:7px;box-shadow:0 0 0 4px rgba(41,163,106,.13)}.voice-count{font-variant-numeric:tabular-nums}.voice-disclosure{font-size:.76rem;color:var(--t-muted);padding:0 16px 12px}.tutor-audio{display:none}
.tutor-explainer{padding:54px 0}.tutor-explainer .compare{display:grid;grid-template-columns:1fr 1fr;gap:18px}.compare-card{border:1px solid var(--t-line);border-radius:20px;padding:20px;background:#fff}.compare-card.kindos{background:#eef8f5;border-color:#b8ddd5}.compare-label{font-size:.76rem;font-weight:900;letter-spacing:.08em;color:#6c7c8f}.tutor-legal-line{font-size:.82rem;color:#6a7b8e;margin-top:12px}.tutor-legal-line a{font-weight:800}
@media(max-width:900px){.tutor-hero-grid,.tutor-layout{grid-template-columns:1fr}.tutor-setup{grid-template-columns:1fr 1fr}.tutor-chat{height:420px}.board-wrap canvas{height:340px}}
@media(max-width:620px){.tutor-hero{padding-top:32px}.tutor-setup{grid-template-columns:1fr}.tutor-panel{border-radius:18px}.tutor-chat{height:390px;padding:13px}.tutor-msg{max-width:94%}.tutor-actions{display:grid;grid-template-columns:1fr 1fr}.tutor-btn{width:100%}.tutor-limit{grid-column:1/-1;margin-left:0}.board-wrap canvas{height:300px}.tutor-explainer .compare{grid-template-columns:1fr}.tutor-tabs{overflow:auto}.tutor-tab{min-width:100px}}
@media(prefers-reduced-motion:reduce){.tutor-chat{scroll-behavior:auto}}

/* Tutor production polish + homework overlay */
.tutor-shell .wrap{max-width:1240px}.tutor-layout{gap:20px}.tutor-panel{box-shadow:0 14px 36px rgba(24,49,83,.055)}
.board-wrap{position:relative;overflow:hidden;background:#fff;border:1px solid #bfd0da;border-radius:16px;min-height:390px}.board-wrap canvas{position:relative;z-index:2;display:block;width:100%;height:390px;touch-action:none;background:transparent}.board-wrap #tutor-board-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:none;z-index:0;background:#fff}.board-wrap.has-homework #tutor-board-bg{display:block}.board-wrap.has-homework canvas{background:transparent}.board-wrap.has-homework:after{content:'Homework overlay';position:absolute;left:10px;top:9px;z-index:4;padding:5px 8px;border-radius:999px;background:rgba(24,49,83,.82);color:#fff;font-size:.68rem;font-weight:850;pointer-events:none}
.tutor-overlay{position:absolute;inset:0;z-index:3;pointer-events:none}.tutor-mark{position:absolute;box-sizing:border-box}.tutor-mark.highlight{background:rgba(250,199,67,.27);border:2px solid rgba(219,158,0,.75);border-radius:8px}.tutor-mark.circle{border:4px solid #35a68e;border-radius:50%;box-shadow:0 0 0 3px rgba(255,255,255,.55)}.tutor-mark.arrow{border-top:4px solid #35a68e;transform-origin:left center}.tutor-mark.arrow:after{content:'';position:absolute;right:-3px;top:-7px;width:10px;height:10px;border-top:4px solid #35a68e;border-right:4px solid #35a68e;transform:rotate(45deg)}.tutor-mark-label{position:absolute;left:0;top:calc(100% + 5px);max-width:170px;padding:5px 8px;border-radius:9px;background:#183153;color:#fff;font-size:.7rem;font-weight:800;white-space:nowrap;box-shadow:0 6px 18px rgba(24,49,83,.18)}
.tutor-btn.visual{background:#eef8f5;border-color:#9fd0c5;color:#176b5f}.tutor-btn.visual:hover{background:#ddf3ed}.board-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.tutor-panel-head{background:linear-gradient(90deg,#fbfdfd,#fffaf0)}.tutor-chat{background:linear-gradient(180deg,#fff 0%,#fcfefd 100%)}
.tutor-msg.system.tutor-success{background:#edf9f5;border-color:#a8d9cd;color:#205e54}.tutor-btn.recording{background:#b4232f!important;border-color:#b4232f!important;box-shadow:0 0 0 5px rgba(180,35,47,.12)}
@media(max-width:900px){.board-wrap,.board-wrap canvas{min-height:340px;height:340px}}@media(max-width:620px){.board-actions{display:grid;grid-template-columns:1fr}.board-wrap,.board-wrap canvas{min-height:300px;height:300px}}

/* Tutor flagship visual-teaching polish */
.tutor-hero{background:radial-gradient(circle at 88% 10%,rgba(114,220,197,.16),transparent 28%),linear-gradient(135deg,#f7fbfa 0%,#fffaf0 100%)}
.tutor-promise{box-shadow:0 16px 38px rgba(24,49,83,.07)}
.tutor-btn.auto-visual{background:#fffaf0;border-color:#e3c96f;color:#6d5515}.tutor-btn.auto-visual.on{background:#eaf8f3;border-color:#9ed4c5;color:#176b5f}.tutor-btn.auto-visual.on:before{content:'● ';color:#29a36a}.visual-teach-note{margin:9px 2px 0;color:#62788e;font-size:.78rem;line-height:1.45}
.tutor-mark.underline{height:0!important;border-bottom:5px solid #35a68e;box-shadow:0 3px 0 rgba(255,255,255,.68)}.tutor-mark.box{border:4px solid #35a68e;border-radius:8px;box-shadow:0 0 0 3px rgba(255,255,255,.48)}
.board-wrap.has-homework:after{content:'Homework + whiteboard';background:rgba(24,49,83,.86)}
.tutor-panel-head h2{font-size:1.08rem}.tutor-session-badge{background:#edf8f5;color:#267465}.tutor-btn.voice{background:linear-gradient(135deg,#183153,#245e7e)}.tutor-btn.live{background:linear-gradient(135deg,#fff7dc,#fffaf0)}

.tutor-access-card{display:flex;justify-content:space-between;gap:18px;align-items:center;margin:0 0 18px;padding:14px 16px;border:1px solid #b9ddd4;border-radius:18px;background:linear-gradient(135deg,#eefaf6,#fffaf0);color:#26475b;box-shadow:0 10px 28px rgba(24,49,83,.04)}.tutor-access-card div{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.tutor-access-card strong{color:#176b5f;font-size:.92rem}.tutor-access-card span{font-size:.86rem;font-weight:750}.tutor-access-card small{max-width:420px;color:#67798b;line-height:1.35}.tutor-btn.share{border-color:#a8c9be;background:#f2faf7;color:#176b5f}.tutor-btn.share:hover{background:#e6f7f1}@media(max-width:760px){.tutor-access-card{display:block}.tutor-access-card small{display:block;margin-top:7px}.tutor-access-card span{font-size:.8rem}}

.tutor-family-value{background:#fff}.tutor-share-strip{margin-top:22px;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 20px;border-radius:20px;background:linear-gradient(135deg,#183153,#236c6a);color:#fff}.tutor-share-strip div{display:grid;gap:3px}.tutor-share-strip strong{font-size:1.08rem}.tutor-share-strip span{opacity:.86}.tutor-share-strip .k2-cta{border:0;white-space:nowrap}@media(max-width:700px){.tutor-share-strip{display:block}.tutor-share-strip .k2-cta{margin-top:14px;width:100%}}
