.chat-main{height:100dvh;display:flex;flex-direction:column}.chat-main .app-top{flex-shrink:0;height:74px}.conversation{flex:1;overflow:auto;overscroll-behavior:contain;padding:30px 30px 10px;scroll-behavior:smooth}.chat-welcome{max-width:780px;margin:6vh auto 30px;text-align:center}.welcome-spark{width:65px;height:65px;margin:0 auto 25px;display:grid;place-items:center;background:#e5edd9;color:var(--green);border-radius:23px;font-size:45px}.chat-welcome h1{font-size:clamp(30px,3.5vw,46px);line-height:1.22;margin:17px auto;max-width:650px}.chat-welcome>p{font-size:15px;color:#73806a;max-width:570px;margin:0 auto 28px}.chat-suggestions{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;text-align:left}.chat-suggestions button{background:var(--paper);border:1px solid var(--line);border-radius:17px;padding:18px 20px;text-align:left;color:var(--ink);line-height:1.5;font-size:14px}.chat-suggestions button:hover{background:#eaf0df;border-color:#afc497}.chat-suggestions strong{display:block;font-size:14px;margin-bottom:5px}.chat-suggestions span{font-size:12px;color:#7d8973}.welcome-hint{font-size:12px;color:#8b967f;margin-top:24px}.chat-messages{max-width:850px;margin:auto}.message{margin:0 0 28px;min-width:0;overflow-wrap:anywhere}.message.user{display:flex;flex-direction:column;align-items:flex-end}.user .message-body{background:#e8eedf;padding:14px 20px;border-radius:22px 22px 5px 22px;max-width:85%;white-space:pre-wrap}.message-body{font-size:15px;line-height:1.9}.message-body h2{font-size:23px;margin:20px 0 12px}.message-body h3{font-size:18px;margin:18px 0 10px}.message-body p{margin:8px 0 14px;white-space:pre-wrap}.message-body ul,.message-body ol{padding-left:25px}.message-label{display:flex;gap:8px;align-items:center;font-size:12px;font-weight:700;margin-bottom:12px;color:#547346}.message-label img{width:24px;height:24px}.message-actions{display:flex;flex-wrap:wrap;gap:5px;margin-top:15px}.message-actions button{border:1px solid var(--line);border-radius:9px;background:transparent;color:#6a7f5a;font-size:11px;padding:7px 11px}.message-actions button:hover{background:#e9efdf}.message-image{max-height:170px;max-width:240px;border-radius:12px;margin:8px 0}.table-scroll{overflow:auto;margin:16px 0;border:1px solid var(--line);border-radius:12px}.message-body table{border-collapse:collapse;width:100%;font-size:13px;min-width:400px}.message-body td,.message-body th{padding:10px 12px;border:1px solid var(--line);text-align:left;vertical-align:top}.message-body th{background:#eaf0df}.message-body pre{white-space:pre-wrap;background:#eaf0df;border-radius:12px;padding:15px}.composer-dock{flex-shrink:0;padding:10px 30px 15px;max-width:910px;width:100%;margin:auto}.chat-composer{background:#fffefb;border:1px solid #d6dfca;border-radius:25px;padding:15px 18px 12px;box-shadow:0 8px 30px #344d2310}.chat-composer:focus-within{border-color:#92af79;box-shadow:0 0 0 3px #a9c68c19}.chat-composer textarea{border:0;background:transparent;outline:none;margin:0;resize:none;min-height:50px;max-height:180px;padding:6px 5px;font-size:16px;color:#2c4232;line-height:1.7;display:block}.chat-toolbar{display:flex;gap:12px;align-items:center;margin-top:5px}.chat-toolbar button,.chat-attach{border:0;background:none;color:#758569;font-size:12px;padding:7px 6px;margin:0;display:flex;align-items:center;gap:7px;cursor:pointer}.chat-toolbar .send-message{margin-left:auto;background:var(--green);color:white;font-size:25px;width:41px;height:41px;border-radius:15px;justify-content:center;padding:0}.chat-toolbar .recording{color:#bd4b43;background:#f9e4df;border-radius:9px}.chat-footnote{text-align:center;font-size:10px;color:#9aa68c;margin:9px 0 0}#chat-status{font-size:12px;color:#8b694f;margin:5px 8px 0}#chat-status:empty{display:none}.chat-attachment{display:flex;align-items:center;gap:12px;padding:6px;margin-bottom:7px;font-size:12px}.chat-attachment img{width:48px;height:48px;object-fit:cover;border-radius:10px}.chat-attachment button{border:0;background:none;font-size:23px;margin-left:auto}.chat-page .side-footer{order:5;margin-top:auto}.chat-history{margin-top:24px;overflow:auto;min-height:0}.history-label{font-size:9px;letter-spacing:.1em;color:#8fa181;margin:0 12px 12px}#chat-list button{display:block;width:100%;padding:10px 12px;background:transparent;color:#afc09e;border:0;border-radius:10px;text-align:left;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:12px}#chat-list button.active,#chat-list button:hover{background:#3b5340;color:#eef5e2}.history-note{font-size:9px;color:#8fa181;padding:16px 12px;margin:0}.thinking{color:#7c9270;padding:15px 0;font-size:14px}.thinking:before{content:'✧';display:inline-block;margin-right:10px;animation:spin 2s linear infinite}.chat-page [hidden]{display:none!important}@media(max-width:700px){.chat-main .app-top{height:62px}.conversation{padding:22px 18px 0}.chat-welcome{margin:3vh auto 20px}.chat-welcome h1{font-size:31px}.chat-welcome>p{font-size:13px}.welcome-spark{height:50px;width:50px;font-size:35px;margin-bottom:17px}.chat-suggestions{gap:9px}.chat-suggestions button{padding:14px 12px;border-radius:14px}.chat-suggestions strong{font-size:12px}.chat-suggestions span{font-size:11px}.welcome-hint{font-size:11px}.composer-dock{padding:8px 12px max(10px,env(safe-area-inset-bottom))}.chat-composer{border-radius:21px;padding:12px 13px 9px}.chat-footnote{font-size:9px}.message-body{font-size:15px}.user .message-body{max-width:92%}.message-actions button{padding:8px 10px}.chat-toolbar{gap:8px}.chat-welcome .eyebrow{font-size:9px}}@media(max-height:600px){.chat-welcome{margin-top:0}.welcome-spark,.welcome-hint{display:none}.chat-welcome h1{font-size:26px}.chat-suggestions span{display:none}.chat-welcome>p{margin-bottom:12px}}
/* Прокрутка переписки не вытесняет поле ввода за экран. */
.chat-main .conversation{min-height:0}.chat-page{overflow:hidden}.chat-main .app-top>div:nth-child(2){font-size:16px;font-weight:600}.chat-main .app-top small{font-size:10px;font-weight:400}
.chat-main{min-width:0;max-width:100%}.chat-main .conversation,.chat-main .composer-dock{width:100%;min-width:0}.chat-suggestions{grid-template-columns:repeat(2,minmax(0,1fr))}.chat-suggestions button{min-width:0;overflow-wrap:anywhere}.chat-welcome,.chat-messages{width:100%;min-width:0}.chat-main .app-top>div:nth-child(2){min-width:0}.chat-main .app-top small{white-space:normal}@media(max-width:700px){.chat-welcome h1{font-size:29px}.chat-welcome>p{overflow-wrap:anywhere}}
.generated-image{max-width:640px;margin:14px 0}.generated-image>a:first-child{display:block}.generated-image img{width:100%;max-height:600px;object-fit:contain;border-radius:18px;background:#e9eedf}.generated-image .button{margin-top:10px;font-size:12px}#image-mode.active{background:#e3edcf;color:#305b43;border-radius:10px}#image-mode{font-size:11px}@media(max-width:430px){.chat-toolbar{gap:3px;flex-wrap:wrap}.chat-toolbar button,.chat-attach{font-size:10px;padding:7px 5px}.chat-toolbar .send-message{width:36px;height:36px}.generated-image img{max-height:420px}}
.chat-quota-note{font-size:10px;text-align:center;color:#7e8c72;margin:8px 0 0}@media(max-width:700px){.chat-quota-note{font-size:9px;line-height:1.5}}
/* История и персональное рабочее место. */
.chat-page .sidebar{width:270px}.chat-page .app-main{margin-left:270px}.chat-page .chat-history{flex:1;margin-top:22px;overflow:auto;scrollbar-width:thin}.history-label{display:flex;align-items:center;justify-content:space-between;gap:12px}.history-label small{font-size:10px;background:#3d5640;border-radius:7px;padding:1px 7px;color:#c1d5af}.history-search{margin:8px 4px 15px}.history-search input{width:100%;background:#344d3b;border:1px solid #476147;color:#e3ecd9;font-size:12px;border-radius:11px;padding:10px 12px;margin:0}.history-search input::placeholder{color:#9eb58e}.chat-date-group{font-size:9px;color:#8ba47d;margin:19px 12px 7px;letter-spacing:.02em}.history-row{display:flex;align-items:center;border-radius:11px;margin:2px 0;min-width:0;gap:2px}.history-row.active,.history-row:hover{background:#3b5340}#chat-list .history-open{flex:1;min-width:0;font-size:12px;padding:11px 12px;background:transparent!important;color:#c0d2af}#chat-list .history-more{width:33px;flex-shrink:0;padding:7px 3px;color:#9fb88b;font-size:21px;background:transparent!important;text-align:center;line-height:1}.history-empty{font-size:11px;color:#9bb18b;line-height:1.8;padding:10px 12px}.history-sync{font-size:9px;line-height:1.7;color:#91aa80;padding:12px 10px 17px;display:flex;align-items:center;gap:8px}.history-sync [data-state=saved]:before{content:'✓ ';color:#b5d296}.history-sync [data-state=offline],.history-sync [data-state=auth]{color:#d1ba90}.history-sync button{font-size:9px;border:0;background:transparent;color:#d3e4be;text-decoration:underline;padding:4px}.chat-page .account-box{margin-top:0}.chat-page .side-footer{margin-top:0}.chat-main .app-top .chat-options{display:block;border:1px solid #d9e2cd;background:#fffef8;color:#678154;border-radius:12px;font-size:23px;width:36px;height:36px;flex-shrink:0;margin-left:auto;line-height:1}.chat-main .app-top .lang{margin-left:0}.chat-main .app-top>div:nth-child(2){flex:1;overflow:hidden}.chat-main #active-title{display:block;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-main #active-subtitle{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.welcome-date{font-size:10px;color:#93a581;text-transform:capitalize;letter-spacing:.03em;margin:0 0 19px}.chat-welcome{margin-top:3vh}.chat-welcome .welcome-spark{background:linear-gradient(145deg,#edf4df,#dcebc8);box-shadow:0 12px 40px #7b9f5420;animation:welcome-breathe 6s ease-in-out infinite}.chat-welcome h1{max-width:650px;font-size:clamp(28px,3vw,40px)}.welcome-tools{display:flex;justify-content:center;gap:10px;margin:20px 0;flex-wrap:wrap}.welcome-tools button{border:1px solid #dce5cf;background:transparent;border-radius:22px;color:#7c9467;padding:8px 14px;font-size:11px}.welcome-tools button:hover{background:#e8efdc}.resume-chat{width:100%;margin:20px auto 5px;padding:18px 47px 18px 20px;text-align:left;border:1px solid #d4e1c2;border-radius:18px;background:linear-gradient(120deg,#edf3e3,#f7f9f1);position:relative;color:#355b3e;display:block}.resume-chat>span{display:block;font-size:9px;letter-spacing:.04em;color:#8b9f75;margin-bottom:6px}.resume-chat strong{font-size:13px;font-weight:600;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resume-chat small{display:block;font-size:10px;color:#92a181;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin-top:5px}.resume-chat>b{position:absolute;right:20px;top:40%;font-weight:400;font-size:20px;color:#819b64}.refine-actions{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 28px}.refine-actions button{padding:8px 13px;background:#edf2e5;border:1px solid #dce6cf;border-radius:18px;font-size:11px;color:#6b8456}.jump-latest{position:absolute;right:28px;bottom:230px;width:38px;height:38px;border:1px solid #d7e2c9;border-radius:50%;background:#fffef9;color:#527141;box-shadow:0 5px 20px #21371416;font-size:21px;z-index:10}.manage-chat{border:1px solid #dae4cd;border-radius:22px;max-width:440px;width:calc(100% - 32px);padding:25px;background:#fffefb;color:#2e4933;box-shadow:0 20px 100px #18311c33}.manage-chat::backdrop{background:#1c302457;backdrop-filter:blur(4px)}.manage-title{display:flex;align-items:center;gap:15px;justify-content:space-between}.manage-title h2{font-size:23px;margin:0}.manage-title button{background:none;border:0;color:#8fa17b;font-size:27px;line-height:1}.manage-chat label{font-size:12px}.manage-chat input{font-size:16px}.pin-option{display:flex;gap:9px;align-items:center}.pin-option input{width:17px;height:17px;margin:0;accent-color:#305b43}.manage-buttons{display:flex;gap:9px;margin:22px 0}.manage-buttons .button{font-size:12px;flex:1}.manage-danger{border-top:1px solid #e5e8dc;padding-top:15px}.manage-danger>button{background:none;border:0;color:#b8755f;padding:0;font-size:12px}.manage-danger p{font-size:12px;color:#a58066;margin-top:14px}.manage-danger #delete-confirm button{background:#f6e8df;border:1px solid #e6cec0;color:#9d5b45;border-radius:9px;padding:8px 12px;font-size:12px;margin-right:8px}.manage-danger #cancel-delete{background:transparent!important;color:#8b967e!important;border-color:#dfe4d6!important}.message{animation:message-in .2s ease-out}.chat-page .chat-welcome>p{color:#7f9072}@keyframes message-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@keyframes welcome-breathe{0%,100%{box-shadow:0 12px 35px #7b9f5415}50%{box-shadow:0 12px 45px #7b9f5430}}@media(max-width:950px){.chat-page .sidebar{width:280px}.chat-page .app-main{margin-left:0}}@media(max-width:700px){.chat-main .app-top{gap:10px;padding:0 15px}.chat-main #active-title{font-size:12px}.chat-main .app-top .chat-options{width:30px;height:30px;font-size:20px}.chat-main #active-subtitle{font-size:8px}.chat-welcome{margin-top:1vh}.chat-welcome h1{font-size:28px}.welcome-date{font-size:9px;margin-bottom:14px}.resume-chat{padding:15px 40px 15px 16px}.resume-chat strong{font-size:12px}.welcome-tools{gap:7px}.welcome-tools button{font-size:10px;padding:8px 11px}.manage-chat{padding:22px}.jump-latest{right:18px;bottom:220px}.refine-actions button{padding:9px 13px;font-size:12px}.chat-page .history-search input{font-size:16px}.chat-welcome .welcome-hint{font-size:11px}.chat-page #sidebar-close{right:12px}}@media(prefers-reduced-motion:reduce){.chat-welcome .welcome-spark,.message{animation:none}}
.quiz-chat-card{padding:25px;background:linear-gradient(120deg,#e4efd6,#f0f5e7);border:1px solid #cddfba;border-radius:19px;max-width:560px;margin:18px 0;position:relative;overflow:hidden}.quiz-chat-card:after{content:'✦';font-size:100px;position:absolute;right:-5px;top:0;color:#c4d8ab55;pointer-events:none}.quiz-chat-card small{font-size:8px;letter-spacing:.08em;color:#8da577}.quiz-chat-card h3{font-size:24px;color:#41673c;margin:13px 0 8px;position:relative;z-index:1}.quiz-chat-card p{font-size:12px;color:#8ca079}.quiz-chat-card .button{font-size:12px;margin-top:5px;position:relative;z-index:1}#game-mode.active{background:#e2eace;color:#45683a;border-radius:10px}.chat-toolbar #game-mode{font-size:11px}@media(max-width:700px){.quiz-chat-card{padding:20px}.quiz-chat-card h3{font-size:21px}.chat-toolbar{flex-wrap:wrap}.chat-toolbar #game-mode{font-size:10px}}
/* Спокойное рабочее пространство: читабельность, глубина и ясный фокус. */
.chat-page{--ink:#243c35;--green:#285f4b;--paper:#fffefa;--line:#dfe7df;background:#f7f9f5;color:var(--ink)}
.chat-page .sidebar{background:linear-gradient(165deg,#203e34,#18332e);border-right:1px solid #345047;padding-top:28px}
.chat-page .brand{margin-bottom:30px}.chat-page .new-chat{border:1px solid #759a82;background:#dcebd7;color:#234835;box-shadow:0 5px 16px #102b2826;border-radius:13px;min-height:45px;font-weight:600}
.chat-page .new-chat:hover{background:#eaf3e4;transform:translateY(-1px)}
.chat-main{background:radial-gradient(ellipse at 75% 0%,#eaf1e784,transparent 55%),#f8faf7}
.chat-main .app-top{background:#f8faf7e8;border-bottom:1px solid #e4ebe3;backdrop-filter:blur(18px)}
.chat-main #active-title{font-size:15px;color:#29483c}.chat-main #active-subtitle{font-size:11px;color:#75877b;margin-top:4px}
.chat-welcome{max-width:760px;margin-top:clamp(16px,4vh,48px)}
.chat-welcome .welcome-date{color:#6e8375;font-size:11px}.chat-welcome .eyebrow{font-size:10px;letter-spacing:.16em;color:#66866d}
.chat-welcome h1{font-size:clamp(30px,3.3vw,44px);letter-spacing:-.045em;font-weight:650;line-height:1.2;max-width:660px;text-wrap:balance}
.chat-page .chat-welcome>p{color:#63786d;font-size:15px;line-height:1.8;max-width:560px}
.chat-welcome .welcome-spark{background:linear-gradient(145deg,#e7f0dc,#d2e5cd);color:#3e7156;border:1px solid #d3e1ca;border-radius:24px;width:62px;height:62px}
.chat-suggestions{gap:12px;margin-top:27px}.chat-suggestions button{position:relative;background:#ffffffd9;border:1px solid #e0e8de;border-radius:17px;padding:21px 22px;box-shadow:0 3px 9px #294e3410;transition:transform .18s,box-shadow .18s,border-color .18s}
.chat-suggestions button:hover{transform:translateY(-3px);background:#fff;border-color:#96b6a0;box-shadow:0 10px 24px #294e3412}.chat-suggestions strong{font-size:15px;color:#315843}.chat-suggestions span{color:#718076;font-size:12px;line-height:1.7}
.welcome-hint{color:#718476;line-height:1.7;max-width:570px;margin:20px auto 0}.welcome-tools button{background:#edf3e9;color:#426b53;border-color:transparent;font-size:12px;padding:10px 15px}.welcome-tools button:hover{background:#e0ebd9;border-color:#c6d9c0}
.chat-messages{max-width:800px;padding-top:12px}.message{margin-bottom:36px}.message-body{font-size:16px;line-height:1.85;letter-spacing:.002em;color:#2d4239}.message-body h2{font-size:23px;line-height:1.4;letter-spacing:-.025em}.message-body h3{line-height:1.5}.message-body li{margin:7px 0}.message-label{font-size:12px;color:#3b6b50;margin-bottom:15px;gap:9px}.message-label img{width:29px;height:29px;padding:4px;background:#e7efe1;border-radius:10px}.user .message-body{background:#e6eee3;border:1px solid #dce6d8;padding:15px 21px;border-radius:22px 22px 6px 22px;color:#304b3c}
.message-actions{gap:6px}.message-actions button{font-size:11px;border-color:transparent;color:#718477;padding:8px 10px;border-radius:8px}.message-actions button:hover{background:#e8f0e4;color:#315b43}
.composer-dock{max-width:880px;padding-top:14px;padding-bottom:max(13px,env(safe-area-inset-bottom));background:linear-gradient(0deg,#f8faf7 85%,#f8faf700)}
.chat-composer{background:#fff;border:1px solid #cfddcf;border-radius:24px;padding:16px 18px 12px;box-shadow:0 8px 35px #254c3610,0 1px 4px #254c3608;transition:box-shadow .2s,border-color .2s}.chat-composer:focus-within{border-color:#78a087;box-shadow:0 0 0 3px #4e886a10,0 10px 35px #254c3610}.chat-composer textarea{font-size:16px;min-height:55px;line-height:1.65;color:#294b38}.chat-composer textarea::placeholder{color:#8c9a8e}.chat-toolbar{gap:7px}.chat-toolbar button,.chat-attach{border-radius:9px;color:#617b68;padding:8px;font-size:12px}.chat-toolbar button:hover,.chat-attach:hover{background:#eef4eb}.chat-toolbar .send-message{width:43px;height:43px;background:#2c624c;border-radius:14px;box-shadow:0 3px 9px #2c624c22}.chat-toolbar .send-message:hover{background:#214e3b}.chat-toolbar .send-message:disabled{opacity:.45;cursor:wait}.chat-toolbar #stop-answer{background:#eef1e9;border:1px solid #d6e0d1;color:#4e6656}.chat-quota-note{font-size:10px;color:#7a8c7c}.chat-footnote{color:#829183;font-size:10px}.thinking{color:#52765d;font-size:14px}.stream-state{font-size:10px;font-weight:400;color:#7a9080;margin-left:5px}.stream-text{white-space:pre-wrap}.stream-text:after{content:'';display:inline-block;width:7px;height:17px;background:#5b8565;margin-left:4px;vertical-align:-2px;border-radius:2px;animation:stream-caret 1s steps(2) infinite}.interrupted-note{font-size:12px;color:#956c41;background:#f5eee3;padding:9px 12px;border-radius:9px;width:fit-content}
:where(.chat-page button,.chat-page a):focus-visible{outline:3px solid #95bb9c;outline-offset:3px}.chat-main .conversation{scrollbar-width:thin;scrollbar-color:#c8d7c8 transparent}
@keyframes stream-caret{50%{opacity:0}}
@media(min-width:1400px){.conversation{padding-top:45px}.chat-welcome{margin-top:5vh}}
@media(max-width:700px){.chat-main .app-top{height:65px}.conversation{padding:20px 17px 5px}.chat-welcome{margin-top:10px}.chat-welcome h1{font-size:29px;letter-spacing:-.035em}.chat-page .chat-welcome>p{font-size:14px}.chat-suggestions button{padding:16px 14px}.chat-suggestions strong{font-size:13px}.chat-suggestions span{font-size:11px}.chat-welcome .welcome-spark{width:49px;height:49px;border-radius:18px}.welcome-tools{gap:6px}.welcome-tools button{padding:9px 11px;font-size:11px}.composer-dock{padding:9px 10px max(10px,env(safe-area-inset-bottom))}.chat-composer{padding:12px 12px 9px;border-radius:21px}.chat-composer textarea{min-height:46px}.message{margin-bottom:28px}.message-body{font-size:16px;line-height:1.8}.chat-toolbar{gap:3px}.chat-toolbar button,.chat-attach{font-size:11px;padding:8px 5px}.chat-toolbar .send-message{width:38px;height:38px}.chat-quota-note{font-size:9px}.chat-footnote{display:none}.message-actions button{min-height:36px}.chat-main #active-subtitle{font-size:9px}.chat-main #active-title{font-size:13px}}
@media(prefers-reduced-motion:reduce){.stream-text:after{animation:none}.chat-suggestions button,.chat-composer{transition:none}.chat-suggestions button:hover,.chat-page .new-chat:hover{transform:none}}
/* Профиль и учебные документы в едином чате. */
.teacher-profile-button{order:4;text-align:left;background:#345346;border:1px solid #4a6a53;color:#c9ddbb;border-radius:11px;padding:12px;margin:10px 0;font-size:11px;cursor:pointer}.teacher-profile-button.configured:before{content:'✓ ';color:#b9d99c}.teacher-profile-button:hover{background:#3f614d}.teacher-profile-dialog{border:1px solid #d9e4d1;border-radius:23px;padding:28px;max-width:510px;width:calc(100% - 28px);background:#fffefa;color:#2e4935;box-shadow:0 24px 90px #1b3a3230}.teacher-profile-dialog::backdrop{background:#18332966;backdrop-filter:blur(4px)}.profile-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.profile-heading h2{font-size:24px;margin:0}.profile-heading button{font-size:28px;border:0;background:transparent;color:#78906c;padding:0 5px}.teacher-profile-dialog p{font-size:12px;line-height:1.8;color:#7d8b70}.teacher-profile-dialog label{font-size:12px;display:block;color:#5e7857}.teacher-profile-dialog input,.teacher-profile-dialog select{width:100%;font:inherit;font-size:16px;border:1px solid #d7e3cb;border-radius:10px;padding:12px;background:white;color:#365132;margin:7px 0 15px}.teacher-profile-dialog fieldset{border:0;padding:0;margin:0 0 20px}.teacher-profile-dialog legend{font-size:12px;color:#5e7857;margin-bottom:9px}#profile-grades{display:grid;grid-template-columns:repeat(6,1fr);gap:7px}#profile-grades label{position:relative;text-align:center}#profile-grades input{position:absolute;opacity:0;width:1px;height:1px;margin:0}#profile-grades span{display:block;border:1px solid #d9e3ce;border-radius:9px;padding:8px;background:#f6f8f0;color:#6f8660}#profile-grades input:checked+span{background:#dfeccb;color:#365d31;border-color:#86a669}#profile-grades input:focus-visible+span{outline:3px solid #90ad77;outline-offset:2px}.profile-actions{display:flex;gap:10px;align-items:center}.profile-actions button{font:inherit;font-size:12px;padding:11px 15px;border-radius:11px;border:1px solid #cfddc2;cursor:pointer}#reset-profile{background:transparent;color:#788d67}.teacher-profile-dialog small{font-size:10px;line-height:1.7;color:#8a9b7d}.chat-attachment strong{font-size:30px;color:#668957}.chat-attachment span{overflow-wrap:anywhere}.document-note{display:block;color:#7d9271;font-size:11px;margin-top:9px}.message-actions .review-answer{background:#e9f0e2;border:1px solid #d6e3c8;color:#4a6e3c}.message-actions .review-answer:disabled{opacity:.6;cursor:default}.review-result{background:#f0f5e9;border:1px solid #d7e5c9;padding:19px 22px;border-radius:16px;margin-top:20px;line-height:1.8;font-size:14px}.review-result>strong{font-size:11px;color:#608047;display:block;border-bottom:1px solid #dae6cd;padding-bottom:10px;margin-bottom:12px}.review-result h2{font-size:19px}.review-result h3{font-size:16px}.chat-toolbar{flex-wrap:wrap}.chat-toolbar .send-message{flex-shrink:0}@media(max-width:700px){.teacher-profile-dialog{padding:22px}.profile-heading h2{font-size:21px}.review-result{padding:15px;font-size:14px}.chat-toolbar .document-attach{font-size:10px}}
/* Единое прикрепление вместо отдельных режимов. */
.chat-toolbar .unified-attach{font-size:16px;min-width:40px;min-height:40px;justify-content:center}.chat-toolbar .unified-attach span{font-size:11px}.chat-toolbar #image-mode,.chat-toolbar #game-mode{display:none!important}
.agent-status{font-size:10px;line-height:1.6;color:#68895b;margin:8px 0 0;letter-spacing:.015em}.agent-status:before{content:'✦ ';color:#7a9e5d}

.chat-suggestions .more-tasks{grid-column:1/-1;text-align:center;box-shadow:none;background:transparent;border:1px dashed #cdddc8;padding:10px 16px;font-size:12px;color:#5e7e65}.chat-suggestions .more-tasks:hover{transform:none;background:#edf4e8}
/* Файл презентации в ответе */
.presentation-card{margin:18px 0;padding:24px;border:1px solid #cdddc4;border-radius:20px;background:linear-gradient(125deg,#eef5e6,#fafcf7);max-width:560px}.presentation-card>small{font-size:10px;letter-spacing:.14em;color:#6b8660}.presentation-card h3{font-size:22px;line-height:1.4;color:#31553b;margin:12px 0 8px}.presentation-card p{font-size:12px;color:#6e8567;line-height:1.7;margin:0 0 16px}.presentation-card a{display:inline-flex;padding:13px 20px;border-radius:12px;font-size:13px}@media(max-width:600px){.presentation-card{padding:19px}.presentation-card h3{font-size:19px}.presentation-card a{width:100%;justify-content:center}}
/* Квадратные превью: крупное фото, номер и отдельное удаление. */
.chat-attachment:has(.photo-list){display:block;padding:2px 3px 12px;border-bottom:1px solid #e6ede2;margin-bottom:12px}.photo-count{display:block;font-size:11px;color:#7c8f77;margin:0 0 12px;line-height:1.5}.photo-list{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.photo-preview{position:relative;width:94px;height:94px;flex:0 0 94px;border:1px solid #d6e2d0;border-radius:15px;background:#edf2e8;box-shadow:0 2px 6px #27462c09;min-width:0}.chat-attachment .photo-open{display:block;width:100%;height:100%;border:0;background:none;padding:5px;margin:0;border-radius:14px;cursor:zoom-in;overflow:hidden}.chat-attachment .photo-open img{display:block;width:100%;height:100%;object-fit:contain;border-radius:10px}.photo-preview .photo-number{position:absolute;left:6px;bottom:6px;pointer-events:none;width:20px;height:20px;display:grid;place-items:center;border-radius:7px;background:#244c3de6;color:#fff;font-size:10px;font-weight:650;box-shadow:0 1px 4px #16302320}.chat-attachment .photo-preview .photo-remove{position:absolute;right:-7px;top:-7px;display:grid;place-items:center;border:2px solid #fff;width:29px;height:29px;min-width:29px;padding:0;margin:0;background:#34584a;color:#fff;border-radius:50%;font-size:20px;line-height:1;box-shadow:0 2px 7px #173f2b20}.photo-remove:hover{background:#254637!important}.chat-attachment .photo-add{width:56px;height:76px;display:grid;place-items:center;border:1px dashed #bccfb3;border-radius:13px;background:#f7faf2;color:#739567;padding:0;margin:0;font-size:28px}.photo-add:hover{background:#eaf2e2}.photo-viewer{max-width:94vw;width:auto;max-height:90dvh;border:0;border-radius:18px;background:#f6f9f2;padding:36px 12px 12px;box-shadow:0 20px 70px #102c3a40}.photo-viewer::backdrop{background:#112a24b3;backdrop-filter:blur(5px)}.photo-viewer img{display:block;width:auto;max-width:86vw;height:auto;max-height:76dvh;object-fit:contain;border-radius:9px}.photo-viewer>button{position:absolute;right:8px;top:3px;border:0;background:transparent;color:#42644d;font-size:28px;width:32px;height:32px;padding:0}.photo-list button:focus-visible{outline:3px solid #8fb77c;outline-offset:3px}@media(max-width:600px){.photo-list{gap:11px}.photo-preview{width:76px;height:76px;flex-basis:76px;border-radius:13px}.chat-attachment .photo-open{padding:4px;border-radius:12px}.chat-attachment .photo-preview .photo-remove{width:28px;height:28px;min-width:28px;right:-6px;top:-6px}.chat-attachment .photo-add{width:43px;height:64px}.photo-count{font-size:10px;margin-bottom:11px}}
/* Более крупные фото с одинаковой геометрией на любом экране. */
.chat-attachment:has(.photo-list){padding:5px 3px 15px;margin-bottom:13px}.photo-count{font-size:11px;margin-bottom:14px;letter-spacing:.01em}.photo-list{display:grid;grid-template-columns:repeat(3,minmax(0,112px));gap:14px;align-items:center}.photo-preview{width:100%;height:auto;aspect-ratio:1;min-width:0;max-width:none;flex:none;border-radius:17px;background:linear-gradient(145deg,#f2f6ed,#e9f0e2);border-color:#d2dfc9;box-shadow:0 3px 10px #244d3010;transition:border-color .18s,box-shadow .18s}.photo-preview:hover{border-color:#96b786;box-shadow:0 5px 16px #244d3018}.chat-attachment .photo-open{padding:5px;border-radius:16px;position:absolute;inset:0;width:100%;height:100%}.chat-attachment .photo-open img{border-radius:11px}.photo-preview .photo-number{left:7px;bottom:7px;width:23px;height:23px;font-size:11px;border:1px solid #ffffff35;border-radius:8px}.chat-attachment .photo-preview .photo-remove{width:31px;height:31px;min-width:31px;right:-7px;top:-7px;font-size:22px;box-shadow:0 2px 8px #173f2b25}.chat-attachment .photo-add{width:100%;height:auto;aspect-ratio:1;max-width:112px;border-radius:17px;font-size:31px;background:#f7faf3;border-color:#c3d5b9}.chat-attachment .photo-add:after{content:'+';font-size:31px}.chat-attachment .photo-add{font-size:0}@media(max-width:600px){.photo-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:min(100%,330px)}.photo-preview{border-radius:15px}.chat-attachment .photo-open{padding:4px;border-radius:14px}.chat-attachment .photo-preview .photo-remove{width:30px;height:30px;min-width:30px;right:-5px;top:-6px}.photo-count{font-size:11px;margin-bottom:13px}.chat-attachment .photo-add{max-width:none;border-radius:15px}.photo-preview .photo-number{width:22px;height:22px;left:6px;bottom:6px}}@media(prefers-reduced-motion:reduce){.photo-preview{transition:none}}
