:root{font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;color:#363731;background:#f8f7f4;font-size:14px;line-height:1.65;font-synthesis:none;--ink:#363731;--muted:#92918a;--line:#eceae4;--accent:#d2984d;--green:#7c947c;--paper:#fff;--sidebar:216px}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0}button:disabled{opacity:.5;cursor:wait}button,a{transition:background .18s,color .18s,border-color .18s,transform .18s}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #e5bd80;outline-offset:3px}h1,h2,h3,p{margin:0}h1{font-size:29px;line-height:1.4;font-weight:650;letter-spacing:.1px}h2{font-size:18px;line-height:1.5;font-weight:600}h3{font-size:15px;font-weight:600}small{font-size:11px;color:var(--muted)}.icon{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.icon-sprite{position:absolute;width:0;height:0;overflow:hidden}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);background:#fffefb;border-right:1px solid var(--line);padding:35px 18px 20px;display:flex;flex-direction:column;z-index:30}.brand{display:flex;gap:11px;align-items:center;padding:0 12px;color:#363b2f;font-size:26px;font-weight:650;letter-spacing:1px;line-height:1.1}.brand small{display:block;font-size:10px;font-weight:400;letter-spacing:1.3px;margin-top:8px;color:#9b9c90}.brand-mark{position:relative;width:42px;height:42px;border-radius:14px;background:#edc780;display:grid;place-items:center;color:#66552d;transform:rotate(-5deg)}.brand-mark .icon{width:25px;height:25px;stroke-width:1.7}.brand-mark i{width:11px;height:7px;background:#8caa76;border-radius:2px 8px 2px 8px;position:absolute;right:-1px;top:-4px;transform:rotate(-25deg)}.nav-label{font-size:10px;letter-spacing:1.5px;color:#b1afa5;margin:49px 15px 13px}.bottom-nav{display:flex;flex-direction:column;gap:9px}.bottom-nav button{display:flex;align-items:center;gap:13px;min-height:48px;text-align:left;padding:0 17px;background:transparent;border-radius:11px;color:#8c8c82;font-size:13px;font-weight:500;position:relative}.bottom-nav button:hover{background:#f5f3ec;color:#595b50}.bottom-nav button.active{background:#f8eedc;color:#8e692e}.bottom-nav button.active .icon{stroke-width:1.9}.bottom-nav button.active i{width:5px;height:5px;background:#bf9553;border-radius:50%;margin-left:auto}.nav-count{font-size:10px!important;margin-left:auto;color:#a2a296;letter-spacing:.4px}.sidebar-note{margin:auto 10px 28px;padding-top:70px;color:#929580}.sidebar-note>.icon{color:#94a182;width:22px;height:22px;margin-bottom:13px}.sidebar-note p{font-size:12px;line-height:1.9;color:#878a79}.sidebar-note>span{display:block;font-size:10px;margin-top:8px;color:#b1b3a4}.family-link{display:flex;align-items:center;gap:10px;background:transparent;border-top:1px solid var(--line);padding:20px 3px 0;color:#6f7167;text-align:left;font-size:11px}.family-link small{display:block;font-size:10px;color:#aaa99e}.family-link>.icon{margin-left:auto;width:15px;height:15px;color:#a4a59b}.family-avatar{width:33px;height:33px;background:#eeeee5;color:#8a9176;display:grid;place-items:center;border-radius:11px;font-size:12px}.workspace{margin-left:var(--sidebar);min-height:100vh}.top{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 38px;border-bottom:1px solid var(--line);background:#fbfaf7}.breadcrumb{display:flex;align-items:center;gap:16px;font-size:11px;color:#aaa99f}.breadcrumb span{color:#d2d0c7}.breadcrumb strong{font-weight:400;color:#74786a}.top-right{display:flex;align-items:center;gap:24px;font-size:11px;color:#9f9d94}.student-avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:3px solid white;background:#e8e7d9;color:#8d937b;font-size:12px;box-shadow:0 0 0 1px #e8e6dd}main{max-width:1320px;margin:auto;padding:31px 38px 25px}.page{display:none}.page.active{display:block;animation:appear .22s ease-out}@keyframes appear{from{opacity:.5;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:27px}.eyebrow{font-size:12px;letter-spacing:1px;color:#9d9c90;margin-bottom:8px}.page-heading p{font-size:12px;color:#9b9a92;margin-top:9px}.heading-spark{font-size:28px;color:#dcb66d;display:inline-block;margin-left:8px;font-weight:400;vertical-align:1px}.semester-tag{display:flex;gap:8px;align-items:center;border:1px solid #e6e5dc;border-radius:20px;padding:7px 12px;color:#929582;font-size:10px;background:#fbfbf7}.semester-tag span{width:5px;height:5px;background:#a9b28f;border-radius:50%}.dashboard{display:grid;grid-template-columns:minmax(0,1fr) 264px;gap:24px}.dashboard-main,.dashboard-rail{min-width:0}.hero{background:#f6ecd8;border:1px solid #eee2cc;border-radius:20px;display:grid;grid-template-columns:minmax(0,1fr) 250px;min-height:268px;padding:28px 28px 25px;position:relative;overflow:hidden}.hero-copy{position:relative;z-index:2;min-width:0}.hero-label{display:inline-flex;align-items:center;gap:7px;font-size:10px;color:#9a8157;letter-spacing:.5px}.online-dot{width:5px;height:5px;background:#8a9c77;display:inline-block;border-radius:50%;flex-shrink:0}.hero h2{font-size:27px;line-height:1.48;letter-spacing:.4px;font-weight:650;margin-top:15px}.hero p{font-size:11px;color:#a49173;margin-top:11px;white-space:nowrap}.hero-actions{display:flex;align-items:center;gap:20px;margin-top:24px;white-space:nowrap}.hero-caption{display:block;color:#b5a384;font-size:9px;margin:9px 0 0 8px}.hero-visual{position:relative;display:flex;align-items:center;justify-content:center;margin:20px -28px -20px -10px;pointer-events:none}.hero-visual img{width:285px;max-width:120%;height:auto;object-fit:contain}.buddy-bubble{position:absolute;top:-7px;right:28px;border:1px solid #e8dcc6;background:#fffcf5;border-radius:10px 10px 10px 1px;font-size:10px;color:#9c8c70;transform:rotate(5deg);padding:6px 11px;box-shadow:0 3px 0 #eaddc750;white-space:nowrap}.primary,.secondary{border-radius:9px;padding:10px 16px;min-height:39px;font-weight:500;font-size:12px;display:inline-flex;align-items:center;justify-content:center;gap:9px;line-height:1.5}.primary{background:#3e4335;color:#fffdf8}.primary:hover{background:#292e22;transform:translateY(-1px)}.primary .icon{width:16px;height:16px}.secondary{background:#fffefb;border:1px solid #e6e4da;color:#7c7d71}.secondary:hover{background:#f4f1e8;border-color:#d8d5c8}.hero-text-button{display:flex;align-items:center;gap:9px;background:transparent;color:#8b7d65;font-size:11px;padding:4px 0}.hero-text-button .icon{width:15px;height:15px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:25px 0 15px}.section-title h2{font-size:16px}.section-title p{font-size:10px;color:#aaa79c;margin-top:3px}.quiet-tag{display:inline-block;white-space:nowrap;font-size:9px;border:1px solid #e6e3d9;color:#a7a397;padding:3px 7px;border-radius:5px;font-weight:400}.question-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.question-card{padding:19px 20px 16px;background:#fff;border:1px solid #ebe8df;border-radius:13px;text-align:left;color:var(--ink);min-width:0;display:grid;grid-template-columns:37px 1fr;column-gap:13px;row-gap:14px}.question-card:hover{border-color:#d3b98a;transform:translateY(-2px);box-shadow:0 5px 16px #735e1e07}.subject-icon{width:37px;height:37px;display:grid;place-items:center;border-radius:11px;background:#edf0e6;color:#96a781}.subject-icon .icon{width:22px;height:22px;stroke-width:1.5}.question-card:nth-child(4n+2) .subject-icon{background:#f1eaf2;color:#b59cba}.question-card:nth-child(4n+3) .subject-icon{background:#eaf0f3;color:#93a8b5}.question-card:nth-child(4n) .subject-icon{background:#f8efdf;color:#c6ad7b}.question-card h3{font-size:12px;font-weight:550;margin-top:1px}.question-card p{font-size:9px;color:#aaa79c;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.question-card>div{min-width:0}.question-card-footer{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #f3f1ec;padding-top:10px;font-size:9px;color:#b4b0a4}.question-card-footer .icon{width:15px;height:15px;color:#9fa28f}.library-banner{display:flex;align-items:center;text-align:left;padding:20px 22px;background:#eeefe6;border:1px solid #e5e7da;border-radius:13px;width:100%;margin-top:21px;gap:20px}.library-banner:hover{background:#e8ebde}.book-stack{display:flex;gap:3px;align-items:end;min-width:42px;height:35px;transform:rotate(-4deg)}.book-stack i{display:block;width:10px;height:32px;background:#bbc4a8;border-radius:3px;box-shadow:inset 0 -5px 0 #a7b49750;border-top:4px solid #d7ddc7}.book-stack i:nth-child(2){height:36px;background:#e3cda3;border-color:#efdfbe}.book-stack i:nth-child(3){height:29px;background:#bfccc6;border-color:#d6dfd8;transform:rotate(10deg);transform-origin:bottom}.library-banner-copy{min-width:0}.library-banner-copy strong{display:block;font-size:12px;color:#7a8369;font-weight:550}.library-banner-copy small{font-size:9px;color:#a1a68f;margin-top:3px;display:block}.banner-action{display:flex;align-items:center;gap:7px;margin-left:auto;white-space:nowrap;font-size:10px;color:#8d9679}.banner-action .icon{width:14px;height:14px}.rail-card{padding:23px 21px;background:#fffefb;border:1px solid #eae7df;border-radius:15px;margin-bottom:19px}.rail-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.rail-title h2{font-size:13px;font-weight:550}.rail-title>.icon{color:#afaf9b;width:16px;height:16px}.rail-subtitle{font-size:10px;color:#b1ac9f;margin-top:8px}.study-week{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin:23px 0 19px;text-align:center}.study-day{display:flex;flex-direction:column;align-items:center;gap:9px;font-size:10px;color:#c1bcaf}.study-day .day-label{font-size:9px;color:#aaa79a}.study-day .day-date{display:grid;place-items:center;width:24px;height:29px;border-radius:8px;color:#8d9082}.study-day.is-today .day-date{background:#efc276;color:#66522d;font-weight:600;box-shadow:0 2px 5px #e1c38a50}.study-day.has-practice .day-date:after{content:'';width:3px;height:3px;border-radius:50%;background:#829871;position:absolute;margin-top:38px}.week-foot{border-top:1px dashed #e9e5d9;padding-top:13px;display:flex;align-items:center;justify-content:space-between;font-size:9px;color:#a8a390}.week-foot i{width:4px;height:4px;background:#91a47f;display:inline-block;border-radius:50%;margin-right:5px}.review-card{background:#fbf8ed;border-color:#eee7d4;position:relative}.paperclip{height:24px;width:9px;border:1.5px solid #c0b292;border-radius:6px;transform:rotate(25deg);position:absolute;top:-9px;right:23px}.review-list{font-size:11px;color:#aba18b;line-height:1.9;padding:23px 0 22px;min-height:114px}.review-list .empty-review-icon{width:32px;height:32px;background:#f2ebd8;border-radius:50%;display:grid;place-items:center;color:#bfb18e;margin:0 auto 12px}.review-list .empty-review-icon .icon{width:17px;height:17px}.review-list .empty-review{text-align:center}.review-list p{margin-bottom:8px}.rail-link{width:100%;display:flex;align-items:center;justify-content:space-between;background:transparent;color:#a89978;font-size:10px;padding:12px 0 0;border-top:1px dashed #e4d9bf}.rail-link .icon{width:14px;height:14px}.companion-note{display:flex;gap:10px;padding:8px 13px;color:#a9a592}.tiny-spark{font-size:25px;line-height:1;color:#ccb27f}.companion-note h3{font-size:10px;color:#9f9b87;margin:2px 0 8px;font-weight:500}.companion-note p{font-size:10px;line-height:1.9;color:#b1ad9d}.workspace-footer{max-width:1320px;margin:4px auto 0;padding:20px 38px 26px;display:flex;align-items:center;gap:7px;font-size:9px;color:#b5b2a6}.workspace-footer .icon{width:13px;height:13px;color:#b6bfaa}.workspace-footer>span{margin-left:auto;color:#c5c1b5;letter-spacing:.5px}.tutor-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:24px;align-items:start}.chat-workspace{background:#fff;border:1px solid var(--line);border-radius:17px;min-width:0;overflow:visible}.chat-header{display:flex;align-items:center;gap:10px;padding:17px 21px;border-bottom:1px solid #f1eee6;position:relative}.chat-buddy{display:grid;place-items:center;background:#f6ecd7;width:42px;height:42px;border-radius:13px;overflow:hidden}.chat-buddy img{width:64px;margin-top:3px}.chat-header strong{font-size:13px;font-weight:550}.chat-header small{display:flex;align-items:center;gap:5px;font-size:9px;color:#b0ab9b}.tutor-settings{margin-left:auto;font-size:10px;color:#aaa695}.tutor-settings summary{display:flex;align-items:center;gap:6px;cursor:pointer;list-style:none}.tutor-settings summary .icon{width:14px;height:14px}.tutor-settings>div{position:absolute;z-index:10;right:18px;top:67px;background:#fffefa;border:1px solid var(--line);box-shadow:0 10px 25px #403d3015;padding:12px 18px 18px;border-radius:12px;width:280px}.messages{padding:27px 24px;display:flex;flex-direction:column;gap:22px;min-height:340px;max-height:58vh;overflow-y:auto;scroll-behavior:smooth}.message{max-width:94%;padding:18px 20px;background:#f8f7f1;border-radius:4px 15px 15px;white-space:pre-wrap;font-size:13px;overflow-wrap:anywhere;line-height:1.9;color:#77796b}.message.user{align-self:flex-end;background:#f6ebd9;border-radius:15px 4px 15px 15px;color:#8a7856}.message small{display:block;margin-bottom:7px;font-size:9px;color:#a9a68e;letter-spacing:1px}.message button{display:flex;align-items:center;gap:5px;color:#999d83;background:transparent;font-size:10px;padding:9px 0 0}.message .katex{white-space:normal}.message .katex-display{overflow-x:auto;overflow-y:hidden;padding:5px 0;max-width:100%}.composer{border:1px solid #e8e3d4;border-radius:12px;padding:14px 17px;margin:5px 20px 0;background:#fffefa;transition:border .15s}.composer:focus-within{border-color:#cbb88f;box-shadow:0 0 0 3px #f1e7ce40}.composer textarea{padding:0;border:0;box-shadow:none!important;background:transparent;width:100%;min-height:70px;font-size:12px;outline:0;resize:none}.composer textarea::placeholder{color:#bbb6a7}.composer-actions{display:flex;justify-content:space-between;align-items:center;gap:10px}.photo-button{display:flex;align-items:center;gap:7px;font-size:10px;color:#9a9a87;background:transparent;padding:7px 0}.photo-button .icon{width:16px;height:16px}.composer .primary{min-height:34px;padding:8px 14px;font-size:10px}.hint-line{display:flex;align-items:center;justify-content:center;gap:6px;margin:10px 0 16px;color:#b4af9e;font-size:9px}.hint-line .icon{width:12px;height:12px}.thinking-steps ol{list-style:none;padding:0;margin:25px 0 0;display:grid;gap:25px}.thinking-steps li{display:flex;gap:13px;position:relative}.thinking-steps li:not(:last-child):after{content:'';position:absolute;top:28px;bottom:-22px;left:12px;width:1px;background:#eee9dc}.thinking-steps li>span{height:27px;width:27px;border-radius:50%;display:grid;place-items:center;font-size:9px;background:#f6f1e5;color:#b2a482;flex-shrink:0}.thinking-steps strong{font-size:11px;font-weight:500;color:#858774}.thinking-steps p{font-size:9px;margin-top:3px;color:#b4b09f}.next-step summary,.media-options summary{font-size:12px;cursor:pointer;color:#93917c}.next-step label{font-size:10px}.next-step .secondary{width:100%;justify-content:space-between;font-size:10px}.next-step .secondary .icon{width:14px;height:14px}.next-step textarea{font-size:11px;background:#fbfaf5}.media-options{background:transparent;border-style:dashed}.media-options p,.media-options small{font-size:10px;display:block;line-height:1.8;margin-top:13px;color:#a5a08e}.media-options .button-row{align-items:stretch}.media-options select{font-size:10px;padding:8px;flex:1}.media-options .secondary{font-size:9px;padding:8px;flex:1}.library-overview{display:flex;align-items:center;gap:30px;border:1px solid #e9e4d7;background:#f7f2e7;border-radius:16px;padding:24px 30px;margin-bottom:24px}.library-illustration{display:flex;align-items:end;gap:5px}.library-illustration>span{display:grid;place-items:center;width:27px;height:67px;background:#bac9af;color:#f8fcf4;border-radius:4px;border-top:8px solid #dbe3cc;border-bottom:8px solid #a8bb9e;font-size:12px;font-weight:500}.library-illustration>span:nth-child(2){height:76px;background:#e4cba0;border-top-color:#efdfc2;border-bottom-color:#d0b786}.library-illustration>span:nth-child(3){height:61px;background:#c3cdd1;border-top-color:#d9e0e2;border-bottom-color:#aebdc5;transform:rotate(8deg);transform-origin:bottom}.library-illustration>i{font-style:normal;font-size:11px;line-height:1.9;color:#a6a38d;align-self:center;margin:0 25px 0 19px}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0}.stat{padding:22px 25px;background:#fffefb;border:1px solid #eae7dd;border-radius:14px}.stat strong{display:block;font-size:30px;line-height:1.2;font-weight:500;color:#767d65;letter-spacing:-1px;font-variant-numeric:tabular-nums}.stat span{font-size:10px;color:#aaa795;display:block;margin-top:9px}.library-overview .stats{flex:1;margin:0;gap:0}.library-overview .stat{border:0;border-left:1px solid #e5decd;border-radius:0;background:transparent;padding:5px 0 5px 36px}.library-overview .stat strong{font-size:29px;color:#7f8069}.library-panel{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}.filters{display:flex;gap:16px;padding:22px 24px 20px}.filters label{margin:0;flex:1;max-width:190px}.filters label.search{flex:2;max-width:none}.paper-list-heading{display:flex;justify-content:space-between;background:#fbfaf7;border-block:1px solid #f1eee6;color:#b1ad9c;font-size:9px;padding:11px 27px}.paper-list{display:flex;flex-direction:column}.paper{display:flex;align-items:center;padding:18px 25px;gap:15px;border-bottom:1px solid #f1eee8;transition:background .15s}.paper:last-child{border-bottom:0}.paper:hover{background:#fdfcf8}.paper-icon{height:43px;width:36px;flex-shrink:0;display:grid;place-items:center;font-size:10px;background:#eff1e6;color:#9ba989;border-radius:5px 9px 9px 5px;border-left:3px solid #ced6ba}.paper h3{font-size:12px;font-weight:500;color:#7f8171}.paper p{font-size:9px;margin-top:5px;color:#b5b0a0}.paper a{flex-shrink:0;margin-left:auto;font-size:10px;color:#a6997b;border:1px solid #eae4d5;border-radius:7px;padding:6px 11px;white-space:nowrap}.paper a:hover{background:#f9f0dd}.library-footnote{font-size:10px;color:#b1aa98;margin:17px 0}.growth-intro{display:flex;align-items:center;gap:19px;background:#f0f2e8;border:1px solid #e4e8d9;border-radius:16px;padding:24px}.growth-intro-icon{width:47px;height:47px;background:#e2e8d6;border-radius:14px;color:#a1b087;display:grid;place-items:center;flex-shrink:0}.growth-intro-icon .icon{width:25px;height:25px}.growth-intro h2{font-size:14px;color:#859175}.growth-intro p{font-size:10px;color:#a1aa91;margin-top:5px}.growth-intro>.quiet-tag{margin-left:auto;border-color:#dce3ce;color:#a0ad89}.memory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.memory-card{padding:24px;background:#fffefb;border:1px solid #eae6dc;border-radius:13px}.memory-card h3{font-size:13px;font-weight:550;color:#838777}.memory-card .badge{display:inline-block;font-size:9px;padding:3px 7px;border-radius:5px;background:#f3f1e8;color:#aca58d;margin:13px 0}.memory-card .badge.weak{color:#b4865c;background:#f9eee0}.memory-card .badge.strong{color:#82956f;background:#edf2e4}.memory-card p{font-size:11px;color:#aaa592;line-height:1.9}.evidence{margin-top:12px;font-size:10px;color:#9b9c85}.evidence summary{cursor:pointer}.evidence ul{padding-left:17px;line-height:1.9}.family-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:25px;align-items:start}.card{background:#fffefb;border:1px solid #eae7dd;border-radius:13px;padding:23px}.parent-settings summary{font-size:12px;color:#94917c;cursor:pointer;display:flex;align-items:center;gap:10px}.parent-settings summary:after{content:'+';margin-left:auto;color:#b9b39e;font-size:16px}.parent-settings[open] summary:after{content:'−'}.parent-settings summary .icon{width:16px;height:16px}.parent-settings form{margin-top:16px}.parent-settings small{font-size:10px;display:block;line-height:1.8;margin:12px 0}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px}label{display:grid;gap:7px;font-size:10px;color:#a3a08e;margin:14px 0}input,textarea,select{font:inherit;font-size:12px;color:#777965;background:#fdfcf8;border:1px solid #e9e4d7;border-radius:8px;max-width:100%;min-width:0;padding:10px 11px;line-height:1.7}input::placeholder,textarea::placeholder{color:#c0baaa}textarea{resize:vertical}select{padding-right:24px}form>.primary{margin-top:7px}.button-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:15px}.muted{color:#aaa594;font-size:11px}dialog{border:1px solid #e9e2d2;border-radius:20px;max-width:580px;width:calc(100% - 30px);padding:30px;color:inherit;box-shadow:0 25px 100px #4e3c2525;max-height:90dvh;overflow:auto;background:#fffefa}dialog::backdrop{background:#3f3c3155;backdrop-filter:blur(5px)}dialog .section-title{margin:0 0 8px}.close{width:30px;height:30px;border-radius:50%;background:#f2efe5;color:#b0a68d;font-size:21px;line-height:1}.practice-hints p{background:#f4f2e6;border-left:2px solid #d4c9a7;padding:14px;margin:10px 0;border-radius:3px 9px 9px 3px;font-size:12px;color:#95907a}#practice-stem{margin:20px 0 23px;font-size:21px;font-weight:500;color:#6e735e;line-height:1.7}#practice-result{padding:15px 0;white-space:pre-wrap;font-size:12px;color:#8d9279}#photo-preview{display:flex;align-items:center;gap:12px;margin-bottom:12px}#photo-preview img{max-width:160px;max-height:130px;border-radius:8px}#photo-preview button{color:#a49c84;background:#f2efe3;border-radius:7px;padding:7px;font-size:10px}#toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);max-width:calc(100% - 40px);background:#4c5141;color:#fffdf5;padding:12px 21px;border-radius:10px;z-index:100;font-size:12px;box-shadow:0 8px 25px #45443425}.empty{padding:30px;text-align:center;color:#b4ad99;font-size:12px}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-thumb{background:#e4e0d4;border-radius:5px}
@media(min-width:1500px){.hero{grid-template-columns:minmax(0,1fr) 290px;padding-left:34px}.hero h2{font-size:30px}.hero-visual img{width:325px}.hero p{font-size:12px}.hero-actions{margin-top:25px}}
@media(max-width:1250px){:root{--sidebar:192px}.sidebar{padding-inline:14px}.top{padding-inline:28px}main{padding:27px 28px}.dashboard{grid-template-columns:minmax(0,1fr) 238px;gap:19px}.hero{grid-template-columns:minmax(0,1fr) 190px;padding-left:23px}.hero h2{font-size:24px}.hero p{font-size:10px}.hero-visual img{width:242px}.buddy-bubble{right:6px;font-size:9px;top:0}.hero-actions{gap:14px}.hero-actions .primary{font-size:11px;padding-inline:12px}.rail-card{padding:20px 18px}.question-card{padding:17px 16px;column-gap:10px}.library-banner{gap:14px;padding:18px}.library-banner-copy strong{font-size:11px}.banner-action{font-size:9px}.tutor-layout{grid-template-columns:minmax(0,1fr) 250px;gap:20px}.library-illustration>i{display:none}.library-overview .stat{padding-left:25px}}
@media(max-width:1050px){:root{--sidebar:178px}.brand{font-size:24px;padding-inline:5px}.bottom-nav button{font-size:12px;padding-inline:12px;gap:10px}.nav-label{margin-left:10px}.top{padding-inline:22px}main{padding-inline:22px}.dashboard{grid-template-columns:minmax(0,1fr)}.dashboard-rail{display:grid;grid-template-columns:1fr 1fr;gap:18px}.companion-note{display:none}.hero{grid-template-columns:1fr 260px}.hero h2{font-size:28px}.hero-visual img{width:280px}.buddy-bubble{right:25px}.hero p{font-size:11px}.hero-actions .primary{font-size:12px}.rail-card{margin-bottom:0}.tutor-layout{grid-template-columns:1fr}.tutor-rail{display:grid;grid-template-columns:1fr 1fr;gap:15px}.tutor-rail .media-options{grid-column:1/-1}.library-overview{padding:22px}.library-overview .stat{padding-left:22px}.workspace-footer{padding-inline:22px}.workspace-footer>span{display:none}}
@media(max-width:700px){:root{--sidebar:0px}.sidebar{inset:auto 0 0;width:100%;padding:7px 12px max(8px,env(safe-area-inset-bottom));background:#fffefbf5;border:0;border-top:1px solid #ebe6da;backdrop-filter:blur(12px)}.sidebar>.brand,.nav-label,.sidebar-note,.family-link{display:none}.bottom-nav{flex-direction:row;gap:4px}.bottom-nav button{flex:1;flex-direction:column;gap:4px;justify-content:center;padding:7px 0;min-height:50px;font-size:9px;border-radius:10px}.bottom-nav .icon{width:19px;height:19px}.bottom-nav .nav-count,.bottom-nav button i{display:none}.top{height:60px;padding:0 22px}.breadcrumb{font-size:10px;gap:10px}.top-right{gap:9px}.top-right #today-date{display:none}.student-avatar{width:29px;height:29px}.workspace{margin-left:0}.workspace-footer{padding-bottom:100px}main{padding:23px 18px 10px}.page-heading{margin-bottom:22px;align-items:start}h1{font-size:24px}.heading-spark{font-size:23px;margin-left:3px}.eyebrow{font-size:10px}.page-heading p{font-size:10px;margin-top:7px}.semester-tag{display:none}.hero{grid-template-columns:1fr 100px;min-height:252px;padding:22px 20px}.hero h2{font-size:25px;position:relative;z-index:3;white-space:nowrap}.hero p{font-size:10px;white-space:normal;width:200px}.hero-visual{margin:25px -25px -35px -35px;align-items:start;padding-top:37px}.hero-visual img{width:175px;max-width:none}.buddy-bubble{font-size:8px;right:14px;top:27px;white-space:nowrap;padding:4px 7px;transform:rotate(7deg)}.hero-label{font-size:9px}.hero-actions{gap:15px;margin-top:22px;position:relative;z-index:4}.hero-actions .primary{font-size:10px;padding:9px 10px;gap:6px;white-space:nowrap}.hero-text-button{font-size:10px}.hero-caption{font-size:8px}.dashboard{gap:19px}.question-grid{gap:10px}.question-card{grid-template-columns:30px 1fr;padding:15px 13px 12px;gap:12px 9px}.subject-icon{width:30px;height:32px;border-radius:8px}.subject-icon .icon{width:19px;height:19px}.question-card h3{font-size:11px}.question-card p{font-size:8px}.question-card-footer{font-size:8px;padding-top:8px}.section-title{margin-top:23px}.section-title h2{font-size:15px}.section-title p{font-size:9px}.quiet-tag{font-size:8px}.library-banner{gap:11px;padding:17px 15px;margin-top:18px}.library-banner-copy strong{font-size:11px;line-height:1.8}.library-banner-copy small{font-size:8px}.banner-action{font-size:0;gap:0}.banner-action .icon{width:17px;height:17px}.book-stack{min-width:32px}.book-stack i{width:8px}.dashboard-rail{grid-template-columns:1fr;gap:16px}.rail-card{padding:20px}.week-card .rail-title h2,.review-card .rail-title h2{font-size:13px}.study-week{gap:9px;margin-top:20px}.study-day .day-date{width:31px;height:31px}.review-list{min-height:90px;padding:15px 0}.review-list .empty-review-icon{float:left;margin:10px 15px 10px 0}.review-list .empty-review{text-align:left;padding:10px 0}.tutor-layout{gap:18px}.page-heading>.secondary{font-size:9px;padding:8px 10px;min-height:33px;white-space:nowrap}.tutor-rail{grid-template-columns:1fr}.tutor-rail .media-options{grid-column:auto}.chat-header{padding:15px}.chat-header strong{font-size:12px}.tutor-settings>div{right:8px;width:260px}.messages{min-height:290px;max-height:none;padding:20px 14px}.message{padding:14px 16px;font-size:12px;max-width:98%}.composer{margin:4px 12px 0;padding:12px}.composer textarea{font-size:12px}.hint-line{font-size:8px}.stats{gap:9px;margin:19px 0}.stat{padding:18px 12px}.stat strong{font-size:26px}.stat span{font-size:9px}.library-overview{padding:20px 12px;gap:12px;margin-bottom:20px}.library-illustration{display:none}.library-overview .stat{padding:3px 12px}.library-overview .stat:first-child{border:0}.library-overview .stat strong{font-size:25px}.filters{padding:17px 15px;gap:12px;flex-wrap:wrap}.filters label{flex:1;max-width:none}.filters label.search{flex:1 1 100%}.paper{padding:17px 14px;gap:11px}.paper h3{font-size:10px;line-height:1.8}.paper p{font-size:8px}.paper-icon{width:28px;height:38px;font-size:9px}.paper a{font-size:8px;padding:6px;min-width:49px;text-align:center}.paper-list-heading{padding-inline:16px}.growth-intro{padding:20px 17px;gap:12px}.growth-intro>.quiet-tag{display:none}.growth-intro-icon{width:36px;height:40px;border-radius:11px}.growth-intro h2{font-size:12px}.growth-intro p{font-size:9px}.memory-grid,.family-settings-grid{grid-template-columns:1fr;gap:13px}.memory-card{padding:22px 20px}.memory-card h3{font-size:12px}.memory-card p{font-size:10px}.card{padding:20px}.library-footnote{font-size:9px;line-height:1.9}dialog{padding:24px}#practice-stem{font-size:18px}.primary,.secondary{font-size:11px}#toast{bottom:90px}.workspace-footer{font-size:9px;margin-top:0}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Clear reading hierarchy across the desktop workspace. */
:root{--muted:#858376}.page-heading h1{color:#34372f}.eyebrow{color:#8d8d7d}.page-heading p{color:#89877b;font-size:13px}.hero h2{color:#373b2f}.hero p{color:#8c7c60;font-size:12px}.hero-label{color:#96805c;font-size:11px}.hero-caption{color:#9f8f72;font-size:10px}.hero-text-button{font-size:12px;color:#827457}.section-title p{color:#949081;font-size:11px}.question-card h3{color:#555c49;font-size:14px}.question-card p{color:#999381;font-size:11px}.question-card-footer{font-size:10px;color:#9b9583}.rail-title h2{color:#62694f;font-size:14px}.rail-subtitle{font-size:11px;color:#a39b85}.study-day .day-label{font-size:10px;color:#99927d}.study-day .day-date{font-size:11px;color:#858a73}.week-foot{font-size:10px;color:#9f967d}.review-list{font-size:12px;color:#a39576}.rail-link{font-size:11px;color:#9a8a67}.library-banner-copy strong{font-size:13px;color:#76805f}.library-banner-copy small{font-size:10px;color:#9ba286}.banner-action{font-size:11px}.companion-note h3{font-size:11px}.companion-note p{font-size:11px;color:#a5a18d}.library-footnote{color:#9b9582;font-size:11px}.paper h3{font-size:13px;color:#667054}.paper p{font-size:10px;color:#a39c85}.paper a{font-size:11px;color:#92825e}.stat span{font-size:11px;color:#9c967f}.memory-card h3{font-size:14px;color:#707957}.memory-card p{font-size:12px;color:#999179}.memory-card .badge{font-size:10px}.thinking-steps strong{font-size:12px}.thinking-steps p{font-size:10px}.growth-intro p{font-size:11px}.message{font-size:14px;color:#687259}.message.user{color:#88724d}.message small{font-size:10px}.message button{font-size:11px}.composer textarea{font-size:13px}.photo-button{font-size:11px}.hint-line{font-size:10px}.filters label{font-size:11px}.family-link{font-size:12px}.bottom-nav button{color:#898a7c}.bottom-nav button.active{color:#956d2c}.quiet-tag{font-size:10px}.next-step summary,.media-options summary{font-size:13px;color:#85836b}
@media(min-width:1251px){.hero h2{font-size:30px}.hero-actions .primary{font-size:13px;min-height:42px}.question-card{min-height:126px}.hero{padding-top:31px;padding-bottom:25px;min-height:284px}.hero-visual img{width:290px}.hero-label{font-size:11px}}
@media(max-width:700px){.page-heading p{font-size:11px}.hero h2{font-size:25px}.hero p{font-size:10px}.hero-label{font-size:9px}.hero-caption{font-size:8px}.hero-text-button{font-size:10px}.question-card h3{font-size:12px}.question-card p{font-size:9px}.question-card-footer{font-size:9px}.section-title p{font-size:10px}.library-banner-copy strong{font-size:11px}.library-banner-copy small{font-size:9px}.banner-action{font-size:0}.paper h3{font-size:11px}.paper p{font-size:9px}.paper a{font-size:9px}.memory-card h3{font-size:13px}.memory-card p{font-size:11px}.stat span{font-size:9px}.quiet-tag{font-size:8px}.message{font-size:13px}.family-link{display:none}}
/* Account access follows the same warm, quiet visual language. */
.account-trigger,.text-button,.forgot-button{border:0;background:none;color:#827457;font-size:12px;cursor:pointer;padding:9px}.auth-dialog{width:min(800px,calc(100vw - 32px));max-width:800px;padding:0;overflow:hidden;border:1px solid #eee6d7;border-radius:24px}.auth-dialog[open]{display:grid;grid-template-columns:.85fr 1.15fr}.auth-welcome{background:#f7ecd5;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:32px 12px;color:#96805c;gap:20px;font-size:13px}.auth-welcome img{width:100%;max-width:270px}.auth-content{padding:36px 38px;max-height:90vh;overflow:auto}.auth-tabs{display:flex;gap:20px;margin-bottom:28px;border-bottom:1px solid #eee9df}.auth-tabs button{border:0;background:none;padding:0 4px 12px;color:#a49b88;cursor:pointer}.auth-tabs button.selected{color:#555f46;border-bottom:2px solid #798262;font-weight:700}.auth-content h2{font-size:22px;color:#3f4736;margin:0 0 10px}.auth-content>p,.account-dialog>p{font-size:12px;color:#8e897c;line-height:1.8}.auth-content form,.account-dialog form{display:grid;gap:15px;margin-top:24px}.auth-content label,.account-dialog label,.admin-dialog label{display:grid;gap:8px;font-size:12px;color:#777b68}.auth-content input,.account-dialog input,.admin-dialog input{width:100%;font-size:14px;padding:12px;border-radius:10px;border:1px solid #e3e3d7;background:#fff}.auth-submit{width:100%;min-height:44px;margin-top:8px}.auth-content small,.account-dialog small{font-size:11px;color:#99917f}.form-error{font-size:12px!important;color:#ae493f!important;line-height:1.7;margin:0}.auth-help{padding:12px;border-radius:9px;background:#f6f3ec}.account-dialog{width:min(440px,calc(100vw - 32px));padding:30px}.account-dialog h2{font-size:21px}.account-actions{display:grid;gap:12px;margin-top:24px}.admin-dialog{width:min(700px,calc(100vw - 32px));max-width:700px;max-height:85vh;padding:30px}.admin-dialog h2{font-size:22px;margin:0}.admin-dialog .section-title p{margin:8px 0 0;line-height:1.8}.admin-user{display:flex;justify-content:space-between;align-items:center;padding:18px 0;border-bottom:1px solid #eee9df;gap:16px}.admin-user strong{font-size:14px;color:#566247}.admin-user small{display:block;font-size:11px;color:#9d927d;margin-top:7px}#reset-result{display:grid;gap:14px;margin:20px 0}#reset-result[hidden]{display:none}#temporary-password{font-family:monospace;font-size:15px}button:disabled{opacity:.55;cursor:wait}#auth-confirm-label[hidden],#password-rule[hidden]{display:none}
@media(max-width:700px){.auth-dialog[open]{grid-template-columns:1fr}.auth-welcome{display:none}.auth-content{padding:28px 24px}.auth-content h2{font-size:21px}.auth-content input,.account-dialog input{font-size:16px}.account-trigger{font-size:10px;padding:5px}.top-right{gap:8px}.account-dialog,.admin-dialog{padding:24px}.admin-user button{font-size:11px}.auth-submit{font-size:14px}}
/* A conversation is the home screen. */
.sidebar-new{display:flex;align-items:center;gap:11px;width:100%;padding:13px 15px;border-radius:12px;background:#f5ecd9;color:#66593c;margin:36px 0 4px;font-size:14px;font-weight:550}.sidebar-new>span{margin-left:auto;font-size:20px;font-weight:400}.sidebar .nav-label{margin-top:22px}.history-heading{font-size:11px;color:#aaa496;padding:26px 15px 10px}.conversation-list{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:4px;margin-bottom:16px}.conversation-item{text-align:left;padding:10px 14px;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-height:39px;flex-shrink:0;border-radius:9px;background:transparent;color:#868374}.conversation-item:hover,.conversation-item.active{background:#f2efe7;color:#6d705d}.empty-history{font-size:11px;color:#b3ad9d;padding:10px 15px}.sidebar .family-link{margin-top:auto}.nav-toggle{display:none}.workspace:has(#tutor.active) main{padding:0;max-width:none}.workspace:has(#tutor.active) .workspace-footer{display:none}.chat-home{height:calc(100dvh - 72px);min-height:420px}.chat-home .chat-workspace{height:100%;display:flex;flex-direction:column;border:0;border-radius:0;background:transparent;overflow:hidden}.chat-home .chat-header{padding:18px 32px;border-bottom:0;gap:20px;flex-shrink:0}.agent-identity{display:flex;gap:12px;align-items:center}.agent-identity strong{font-size:18px;color:#444b3b}.agent-identity small{font-size:11px;color:#a6a18e}.new-chat-small{font-size:24px;color:#8b8b79;background:transparent;padding:0 8px;line-height:1.3}.chat-home .tutor-settings{font-size:12px}.chat-home .tutor-settings>div{top:58px}.chat-home .messages{flex:1;min-height:0;max-height:none;padding:26px max(32px,calc((100% - 880px)/2));gap:24px;scrollbar-gutter:stable}.chat-welcome{margin:auto;text-align:center;padding:30px 10px 65px;width:100%;color:#464c3d}.chat-welcome h1{font-size:31px;font-weight:600;letter-spacing:.5px}.chat-welcome p{font-size:13px;color:#aaa48f;margin-top:16px}.chat-home .message{font-size:15px;max-width:92%;background:#f0f1e9;color:#59634c}.chat-home .message.user{background:#f4ead5;color:#80704f}.chat-home .message small{font-size:10px}.chat-home .message button{font-size:11px}.composer-wrap{width:100%;max-width:940px;margin:0 auto;padding:0 28px 17px;flex-shrink:0}.chat-home .composer{margin:0;border-radius:20px;background:#fffefb;padding:18px 20px 14px;box-shadow:0 4px 25px #50483208;border:1px solid #e7e2d4}.chat-home .composer textarea{min-height:56px;font-size:15px;line-height:1.6}.chat-home .composer-actions{margin-top:9px;gap:12px}.attachment-actions{display:flex;align-items:center;gap:22px}.chat-home .photo-button{font-size:12px;gap:7px;color:#8f8b76;padding:7px 0}.chat-home .photo-button .icon{width:20px;height:20px}.attach-plus{font-size:24px;line-height:18px}.chat-home .composer .primary{border-radius:12px;min-height:38px;font-size:12px;padding:9px 15px;display:flex;gap:8px;align-items:center}.chat-home .composer .primary .icon{width:16px;height:16px}.chat-home .hint-line{font-size:10px;color:#b0aa99;margin:12px 0 0}.composer.dragging{border:2px dashed #bda36d!important;background:#fcf7e9}.chat-attachment{display:block;max-width:min(360px,100%);max-height:340px;object-fit:contain;border-radius:10px;margin-bottom:12px}.chat-home #photo-preview img{max-width:110px;max-height:90px}.chat-home #photo-preview{margin-bottom:15px}.chat-home #photo-preview button{font-size:11px}#camera-video{width:100%;max-height:55vh;object-fit:contain;border-radius:12px;background:#222;margin:12px 0}#camera-dialog .primary{margin-top:18px}.sidebar-scrim{display:none}.tutor-settings .text-button{display:block;padding:12px 0 0;font-size:12px;text-align:left}
@media(max-width:700px){.sidebar{inset:0 auto 0 0;width:min(82vw,300px);height:100dvh;padding:28px 18px 20px;transform:translateX(-100%);transition:transform .2s;background:#fffefb;border-right:1px solid #e8e3d8;z-index:60;backdrop-filter:none}.navigation-open .sidebar{transform:translateX(0)}.sidebar>.brand{display:flex}.sidebar .nav-label{display:block;font-size:11px}.sidebar .family-link{display:flex;flex-shrink:0;padding-top:17px}.sidebar-new{margin-top:30px;font-size:14px}.sidebar .bottom-nav{flex-direction:column;gap:5px}.sidebar .bottom-nav button{flex-direction:row;justify-content:flex-start;font-size:13px;padding:11px 13px;min-height:43px;gap:13px}.sidebar .bottom-nav .nav-count{display:inline}.sidebar-scrim{display:block;position:fixed;inset:0;background:#302d2540;z-index:50}.nav-toggle{display:block;color:#797965;background:transparent;font-size:23px;margin-right:12px;padding:0;line-height:1}.top{padding-inline:18px;height:60px;gap:0}.top .breadcrumb{font-size:11px}.top .breadcrumb>span,.top .breadcrumb>strong{display:none}.top-right{margin-left:auto}.chat-home{height:calc(100dvh - 60px);min-height:350px}.chat-home .chat-header{padding:13px 19px}.agent-identity strong{font-size:16px}.agent-identity small{display:none}.chat-home .tutor-settings{font-size:10px}.chat-home .messages{padding:18px 16px;gap:18px}.chat-home .message{font-size:14px;padding:14px 16px;max-width:97%}.chat-welcome{padding-bottom:42px}.chat-welcome h1{font-size:25px}.chat-welcome p{font-size:12px;line-height:1.8;max-width:260px;margin:14px auto 0}.composer-wrap{padding:0 12px max(12px,env(safe-area-inset-bottom))}.chat-home .composer{padding:14px 15px 11px;border-radius:19px;box-shadow:0 3px 12px #50483208}.chat-home .composer textarea{font-size:16px;min-height:49px}.chat-home .composer .primary{min-height:36px;padding:8px 12px;font-size:12px}.chat-home .hint-line{font-size:9px;margin-top:9px}.attachment-actions{gap:20px}.chat-home .photo-button{font-size:11px}.chat-home .composer-actions{margin-top:5px}.chat-attachment{max-height:260px}.workspace-footer{padding-bottom:24px}#toast{bottom:175px}}
/* Parent review keeps the original conversation and its attachments together. */
.family-connections{margin-bottom:24px}.family-connections>summary,.family-evidence>summary{cursor:pointer;font-weight:600;font-size:15px}.family-connections p{font-size:13px;line-height:1.9;margin:15px 0}.family-connections .family-settings-grid{margin-top:16px;gap:32px}.family-connections form{display:grid;gap:12px}.family-connections label,.family-toolbar label{display:grid;gap:8px;font-size:12px}.family-connections .secondary{margin:0 0 12px}.family-link-row{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;border-top:1px solid var(--line);padding-top:12px;margin-top:16px}.family-toolbar{display:flex;align-items:end;gap:20px;justify-content:space-between}.family-toolbar select{min-width:240px}.parent-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:20px;align-items:start}.parent-sessions,.parent-conversation{background:#fffefb;border:1px solid var(--line);border-radius:16px;padding:20px;min-width:0}.parent-sessions>h2,.parent-conversation>h2{font-size:16px;margin-bottom:16px;overflow-wrap:anywhere}.parent-sessions{max-height:650px;overflow:auto}.parent-session{display:block;width:100%;background:transparent;text-align:left;padding:14px 10px;border-radius:10px;margin:4px 0;overflow-wrap:anywhere}.parent-session.selected{background:#f5ecd9}.parent-session strong{display:block;font-size:13px;font-weight:500}.parent-session small{display:block;margin-top:6px;font-size:10px}.parent-messages{max-height:650px;overflow:auto;padding:0 6px}.parent-message{padding:18px 0;border-top:1px solid #efebe1}.parent-message>small{display:block;color:#8c8d7f;margin-bottom:12px}.parent-message-text{white-space:pre-wrap;font-size:14px;line-height:1.9;color:#59634c;overflow-wrap:anywhere}.parent-message.user .parent-message-text{color:#8a7043}.family-evidence{margin-top:24px}.family-topic{padding:18px 0;border-bottom:1px solid var(--line);font-size:13px}.family-topic p{margin-top:10px;line-height:1.8}.family-topic small{display:block;margin-top:8px}.family-evidence>.muted{margin-top:16px}.chat-home .messages .message{overflow-wrap:anywhere}.chat-home .tutor-settings{margin-left:auto}.chat-home .chat-header{justify-content:flex-start}.navigation-open{overflow:hidden}
@media(max-width:700px){.parent-layout{grid-template-columns:1fr;gap:14px}.parent-sessions{max-height:230px}.parent-messages{max-height:65dvh}.parent-conversation,.parent-sessions{padding:17px}.family-connections .family-settings-grid{grid-template-columns:1fr;gap:16px}.family-toolbar{align-items:start;flex-direction:column;gap:12px}.family-toolbar select{width:100%;min-width:0}.family-toolbar label{width:100%}.family-link-row{align-items:start}.family-connections input{font-size:16px}.family-connections p{font-size:12px}.parent-message-text{font-size:14px}.family-connections{padding:18px}.family-toolbar+.stats .stat strong{font-size:24px}}
/* Personal colors and backgrounds are scoped to the signed-in account. */
body{--personal-bg:#f8f7f4;--personal-panel:#fffefb;--personal-ink:#444b3b;--personal-muted:#858376;--personal-line:#e7e2d4;--personal-accent:#454b39;--personal-tint:#f4ead5;--personal-assistant:#f0f1e9;--wallpaper-wash:#f8f7f4cc;--pattern-ink:#a69c8130;background:var(--personal-bg);color:var(--personal-ink)}
body[data-theme="ocean"]{--personal-bg:#eff5fb;--personal-panel:#fbfdff;--personal-ink:#263f57;--personal-muted:#697f92;--personal-line:#d6e3ee;--personal-accent:#326184;--personal-tint:#dcecf9;--personal-assistant:#e8f0f7;--wallpaper-wash:#eff5fbcc;--pattern-ink:#6b9bb432}
body[data-theme="lilac"]{--personal-bg:#f5f1f9;--personal-panel:#fefbff;--personal-ink:#514264;--personal-muted:#877695;--personal-line:#e5dbef;--personal-accent:#76578b;--personal-tint:#eadef5;--personal-assistant:#f0eaf5;--wallpaper-wash:#f5f1f9cc;--pattern-ink:#ac85bd30}
body[data-theme="night"]{--personal-bg:#18212b;--personal-panel:#202c39;--personal-ink:#e2eaf2;--personal-muted:#a9b8c7;--personal-line:#394a5a;--personal-accent:#91b9d4;--personal-tint:#344c61;--personal-assistant:#263645;--wallpaper-wash:#18212bd9;--pattern-ink:#9fb8d32b}
body .sidebar,body .top,body dialog,body .card,body .parent-conversation,body .parent-sessions,body .memory-card,body .stat,body .library-panel{background:var(--personal-panel);border-color:var(--personal-line);color:var(--personal-ink)}
body h1,body h2,body h3,body .brand,body .agent-identity strong,body .chat-home .message,body .parent-message-text,body .page-heading h1,body .auth-content h2,body .memory-card h3,body .stat strong{color:var(--personal-ink)}
body .top,body .sidebar,body .family-link{border-color:var(--personal-line)}body .top-right,body .breadcrumb,body .breadcrumb strong,body .account-trigger,body .family-link,body .history-heading,body .bottom-nav button,body .page-heading p,body .chat-home .hint-line,body .empty-history,body .conversation-item,body .chat-header small,body .tutor-settings,body .muted,body small{color:var(--personal-muted)}
body .sidebar-new,body .bottom-nav button.active,body .conversation-item.active,body .conversation-item:hover,body .parent-session.selected{background:var(--personal-tint);color:var(--personal-ink)}
body .chat-home .composer,body input,body select,body textarea,body .tutor-settings>div{background:var(--personal-panel);color:var(--personal-ink);border-color:var(--personal-line)}body .chat-home .composer textarea{background:transparent}body .chat-home .message{background:var(--personal-assistant)}body .chat-home .message.user{background:var(--personal-tint);color:var(--personal-ink)}body .chat-home .photo-button,body .new-chat-small{color:var(--personal-muted)}body .primary{background:var(--personal-accent);color:var(--personal-panel)}body .secondary{background:var(--personal-panel);color:var(--personal-ink);border-color:var(--personal-line)}body .text-button,body .forgot-button,body label{color:var(--personal-muted)}
.chat-home .chat-workspace[data-background="dots"]{background-image:radial-gradient(var(--pattern-ink) 1px,transparent 1px);background-size:20px 20px}.chat-home .chat-workspace[data-background="grid"]{background-image:linear-gradient(var(--pattern-ink) 1px,transparent 1px),linear-gradient(90deg,var(--pattern-ink) 1px,transparent 1px);background-size:28px 28px}.chat-home .chat-workspace[data-background="custom"]{background-image:linear-gradient(var(--wallpaper-wash),var(--wallpaper-wash)),var(--wallpaper-image);background-size:cover;background-position:center}
body .student-avatar.has-custom-avatar{background-size:cover;background-position:center;color:transparent}.chat-home .new-chat-small{font-size:12px;white-space:nowrap;border:1px solid var(--personal-line);padding:7px 10px;border-radius:8px}.greeting-message{margin-top:clamp(20px,8vh,90px);line-height:2!important}.customize-dialog{width:min(600px,calc(100vw - 28px));max-width:600px}.customize-dialog .section-title{align-items:start}.customize-dialog .section-title p{font-size:12px;margin-top:8px;color:var(--personal-muted)}#customize-form{display:grid;gap:19px;margin-top:25px}#customize-form>label{display:grid;gap:8px;font-size:13px}.custom-avatar-row{display:flex;align-items:center;gap:20px}.custom-avatar-preview{width:74px;height:74px;flex-shrink:0;border-radius:50%;display:grid;place-items:center;background-color:var(--personal-tint);background-size:cover;background-position:center;font-size:24px}.custom-avatar-row small{display:block;margin-top:8px}.customize-dialog fieldset{margin:0;padding:0;border:0;min-width:0}.customize-dialog legend{font-size:13px;margin-bottom:10px;color:var(--personal-muted)}.theme-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.theme-options label{display:flex;align-items:center;gap:9px;padding:12px;border:1px solid var(--personal-line);border-radius:10px;font-size:13px;cursor:pointer}.theme-options label:has(:checked){border-color:var(--personal-accent);background:var(--personal-tint)}.theme-options input{width:auto;accent-color:var(--personal-accent);margin:0}#custom-rate{accent-color:var(--personal-accent);padding:0}.custom-wallpaper-row{display:flex;align-items:center;gap:10px}#custom-background-preview{max-width:100%;max-height:140px;object-fit:contain;border-radius:10px}#custom-save{margin:5px 0 0;min-height:43px}.customize-dialog #custom-error{color:#ba5555!important}
@media(max-width:700px){.chat-home .chat-header{gap:12px}.chat-home .new-chat-small{font-size:11px;padding:6px 8px}.greeting-message{margin-top:30px}.customize-dialog{padding:22px}.theme-options label{font-size:12px;padding:10px}.custom-avatar-preview{width:64px;height:64px}}
.custom-chat-avatar .message.user>small{display:flex;align-items:center;gap:8px}.custom-chat-avatar .message.user>small::before{content:"";display:inline-block;width:23px;height:23px;border-radius:50%;background-image:var(--user-avatar);background-size:cover;background-position:center}

/* Custom companion names stay within the mobile chat header. */
.agent-identity{min-width:0}.agent-identity strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agent-identity small,.chat-home .tutor-settings,.chat-home .new-chat-small{flex-shrink:0}.bottom-nav [data-page="tutor"] span{min-width:0;overflow-wrap:anywhere}
