:root{color-scheme:only light;--ink:#243e3a;--muted:#63756b;--line:#e0e9e2;--paper:#fff;--green:#187869;--green-soft:#eaf5ef;--warm:#f7f9f8;--purple:#7967a4}
body{background:var(--warm);color:var(--ink);font-family:'Segoe UI','Noto Sans','DejaVu Sans',sans-serif;line-height:1.6}
a{color:var(--green);text-underline-offset:3px}h1{font-size:clamp(32px,3.8vw,48px);font-weight:750;letter-spacing:-1.6px;line-height:1.2}h2{font-size:23px;letter-spacing:-.5px;line-height:1.35}h3{font-size:17px;letter-spacing:-.2px}.lead{font-size:17px;color:var(--muted);line-height:1.75}.muted{color:var(--muted)}.eyebrow{font-size:11px;letter-spacing:1.7px;color:#5e8a77}.small{font-size:12px}.card{background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:28px;box-shadow:0 3px 0 #263f3503}.notice{background:#f0f7df;border-color:#d5e3b6;color:#485c2d;border-radius:16px}.pill{border-radius:12px;font-size:12px;padding:8px 13px;background:#eaf4e8;color:#4b7053}.warm{background:#fff0d7;color:#8b6839}
button,.button{background:var(--green);font-family:inherit;border-radius:12px;min-height:44px;padding:12px 19px;font-size:13px;transition:background .15s,transform .15s}button:hover,.button:hover{filter:none;background:#106859}button:active,.button:active{transform:translateY(1px)}button:disabled{opacity:.5;cursor:default}.secondary{background:#e9f3ed;color:#256952}.secondary:hover{background:#dcece2}.quiet{background:#f1f4ef;color:#597168;padding:8px 12px;min-height:38px}.quiet:hover{background:#e5ece4}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #c39b54;outline-offset:3px}
input,select,textarea{border:1px solid #d9e4db;border-radius:11px;padding:12px 14px;background:#fdfefa;font-weight:400;line-height:1.5;min-height:46px}input:focus,select:focus,textarea:focus{outline:3px solid #dfeee1;border-color:#6f9e89}input[type=checkbox]{min-height:0;accent-color:var(--green)}label{color:#4d655b;font-size:13px;font-weight:600}input::placeholder,textarea::placeholder{color:#7b877d;font-size:13px}select{padding-right:26px}details summary{line-height:1.6;min-height:40px;padding:10px 0}.check-label{color:var(--ink)}
.app-header{max-width:none;display:flex;align-items:center;gap:24px;padding:18px max(24px,calc((100vw - 1160px)/2));background:#ffffffed;border-bottom:1px solid var(--line);min-height:87px}.brand{display:flex;gap:10px;align-items:center;flex:none;color:var(--ink);letter-spacing:-.7px;font-weight:750;font-size:21px}.brand span{margin:0;color:inherit}.brand .brand-mark{display:grid;place-items:center;background:var(--green);color:#fff;width:40px;height:44px;border-radius:13px 13px 5px 13px;font-size:30px;line-height:1}.brand .brand-word{font-size:21px;line-height:1.25;font-weight:750}.brand-word small{display:block;font-size:10px;font-weight:450;color:#839487;letter-spacing:.15px;margin-top:4px}.main-nav{display:flex;justify-content:center;gap:7px;flex:1;flex-wrap:wrap}.main-nav a{text-decoration:none;color:#7b8b81;font-size:13px;padding:10px 14px;border-radius:11px;font-weight:600}.main-nav a:hover,.main-nav a.current{background:var(--green-soft);color:#246d56}.account-menu{position:relative;flex:none}.account-menu>summary{display:flex;gap:9px;align-items:center;cursor:pointer;list-style:none;padding:0;min-height:42px;font-weight:450}.account-menu summary::-webkit-details-marker{display:none}.avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#f2e9d6;color:#8a7046;font-weight:700}.account-name{font-size:12px;max-width:155px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-name small{display:block;font-size:10px;color:#839487}.account-popover{position:absolute;right:0;top:50px;z-index:50;min-width:220px;max-width:85vw;border:1px solid var(--line);border-radius:15px;padding:16px;background:#fff;box-shadow:0 12px 40px #344a3520}.account-popover p{font-size:13px;overflow-wrap:anywhere;margin:0 0 12px}.header-note{font-size:12px;color:var(--muted)}main{max-width:1160px;padding-top:36px;padding-bottom:70px}.skip-link{position:fixed;left:12px;top:-100px;z-index:100;background:#fff;border:2px solid var(--green);padding:12px}.skip-link:focus{top:12px}footer{max-width:1160px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-color:var(--line);font-size:11px;color:#8a988c}.footer-brand{text-decoration:none;color:#7c8f7f;font-weight:650}
.page-intro{display:flex;align-items:center;justify-content:space-between;gap:24px}.page-intro h1{margin:8px 0 12px}.page-intro .lead{margin:0;max-width:720px}.page-intro .button{white-space:nowrap}.subject-tabs{gap:10px;margin:26px 0 20px}.subject-tabs a{background:#edf0e9;color:#6e7e6a;border:1px solid transparent;border-radius:13px;padding:10px 18px;font-size:13px;font-weight:550}.subject-tabs a.selected{background:#fff;color:var(--green);border-color:#97b5a1;box-shadow:0 2px 4px #233d3010}.workspace-tabs{display:flex;gap:24px;border-bottom:1px solid var(--line);margin:24px 0 25px;padding:0 2px;align-items:stretch;flex-wrap:wrap}.workspace-tabs a{position:relative;display:flex;align-items:center;padding:12px 2px;text-decoration:none;color:#8b998b;font-size:13px;font-weight:550;min-height:48px}.workspace-tabs a.selected{color:var(--green);font-weight:700}.workspace-tabs a.selected:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:3px;border-radius:3px;background:var(--green)}.workspace-panel{scroll-margin-top:22px}.stats{gap:14px}.stats .card{padding:18px 20px;border-radius:17px;margin-bottom:22px}.stats span{font-size:11px;color:#65765d}.stats strong{font-size:32px;margin-top:5px;color:#325c49;font-weight:650}.stats .card:nth-child(2){background:#edf5f7;border-color:#e0edf0}.stats .card:nth-child(3){background:#edf5e8;border-color:#e0eacf}.stats .card:nth-child(4){background:#fcf2e2;border-color:#f2e7d0}.stats .card:nth-child(2) strong{color:#4f8a97}.stats .card:nth-child(4) strong{color:#aa8b50}.report{padding:0}.report h2{margin:0}.report-content .section-heading p{margin:8px 0 0}.live-label{font-size:10px;color:#64745b;display:flex;align-items:center;gap:7px}.live-label>span{width:6px;height:6px;background:#7ba264;border-radius:50%}.date-form{gap:12px}.date-form label{min-width:140px}.date-form button{min-height:46px}.report th{background:#f5f8f1;color:#82927c;font-size:10px;letter-spacing:.25px;padding:13px 10px}.report td{padding:15px 10px;border-color:#edf1e8;font-size:12px}.report td small{color:#9aa791}.report td strong{color:#4f6654}.badge{font-size:10px;line-height:1.5;padding:6px 10px;border-radius:8px}.badge.absent{background:#f4eee3;color:#ab916b}.badge.active{background:#e9f1fa;color:#718caa}.badge.done{background:#e6f1df;color:#75995f}.empty{padding:36px 16px!important;color:#6e7b64;line-height:1.9}.share-card{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 26px;border-radius:18px;background:#edf3e6;border:1px solid #e0e8d7}.share-card strong{font-size:14px;color:#58704b}.share-card p{margin:6px 0}.share-card .public-link{display:inline-block;font-size:12px;overflow-wrap:anywhere;max-width:100%}.share-card>div{min-width:0}.share-card button{flex:none;background:#dce9d0;color:#5d7d45}
.step-heading{display:flex;align-items:flex-start;gap:13px;padding-top:25px;margin:24px 0 20px;border-top:1px solid #edf1e8}.step-heading>span{display:grid;place-items:center;flex:none;width:32px;height:32px;background:#eaf2e3;border-radius:11px;color:#6a8b50;font-size:13px;font-weight:700}.step-heading h3{margin:0;color:#4c654b}.step-heading p{font-size:12px;color:#70805e;margin:5px 0 0}.audience-picker{justify-content:flex-start;align-items:end;background:#f7f9f4;border-radius:14px;padding:16px}.audience-picker label{min-width:240px;flex:1;max-width:560px;margin:0}.audience-picker button{min-height:46px}.form-grid{gap:18px}.gentle-note{border-radius:13px;padding:14px 18px;background:#f8f5e9;color:#998654;font-size:12px;line-height:1.8}.course-note{font-size:12px;color:#69765c;margin:8px 0 16px}.course-note summary{font-weight:500}.topic-intro{font-size:13px;line-height:1.8}.topic-tools{padding:16px;background:#f4f7ef;border-radius:15px;margin:20px 0;gap:14px}.topic-tools>div{display:flex;flex-wrap:wrap;gap:6px}.topic-tools .quiet{background:#e8eee1;color:#748963;font-size:11px;white-space:normal}.topic-tools input{background:#fff}.topic-catalog .grade-block{border:1px solid #dee7d6;border-radius:15px;padding:0;margin:14px 0;background:#fff;overflow:hidden}.topic-catalog .grade-block>.grade-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 19px;margin:0;border:0;background:#f6f9f1;min-height:64px;list-style:none;cursor:pointer}.grade-heading::-webkit-details-marker{display:none}.grade-heading:after{content:'⌄';color:#687d56;font-size:17px}.grade-heading .check-label{margin:0;padding:0;flex:1;min-width:0;gap:11px;pointer-events:auto}.grade-heading .check-label strong{font-size:13px;color:#5d754f}.grade-heading .grade-count{font-size:10px;color:#64754d;white-space:nowrap}.grade-block[open]>.grade-heading{border-bottom:1px solid #e3ebda}.topic-catalog .grade-block>details{border:0;border-radius:0;margin:0;padding:8px 19px 12px}.topic-catalog .grade-block>details>summary{font-size:12px;padding:10px 0;color:#8c9a7c;font-weight:500}.topic-list{gap:3px 18px}.topic-row{border-bottom:1px solid #edf1e5;padding:4px 7px;min-height:55px}.topic-row label{font-size:12px;color:#687b5a}.topic-row:has(input:checked){background:#f1f6e9;border-radius:9px}.topic-row label:after{display:none}.topic-row a{font-size:10px;color:#70835f;white-space:nowrap}.assignment-save{display:flex;gap:20px;align-items:center;justify-content:space-between;position:sticky;bottom:16px;z-index:5;border:1px solid #dce5d1;background:#ffffffed;box-shadow:0 5px 30px #405f3210;backdrop-filter:blur(12px);border-radius:16px;padding:15px 20px;margin:28px 0 12px}.assignment-save>div{display:grid;gap:4px}.assignment-save strong{font-size:12px;color:#69814e}.assignment-save .small{font-size:10px}.assignment-save .unsaved{color:#ad8d43}.save-explanation{font-size:11px}.bank-types{gap:7px}.bank-type{background:#f2f7ec;border-color:#e1ead7;color:#788e62}.bank-type.unavailable{background:#f5f4ef;color:#b7b9a8;border-color:#eaece2}.bank-type span{color:#9da98e}
.welcome-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:38px 44px;background:#f0f3e6;border:1px solid #e5e9d9;border-radius:28px;margin-bottom:34px;overflow:hidden}.welcome-hero h1{font-size:clamp(31px,4vw,46px);color:#465d3d}.welcome-hero .lead{max-width:530px;font-size:15px;color:#69765c}.welcome-hero .pill{background:#e3ebd6;color:#869770;font-size:11px}.hero-art{position:relative;width:230px;height:190px;flex:none}.art-tile{position:absolute;display:grid;place-items:center;width:105px;height:115px;border-radius:20px;font-size:59px;font-weight:500;box-shadow:0 12px 30px #4b643510}.art-math{background:#e5dff3;color:#9680b7;left:14px;top:20px;transform:rotate(-12deg)}.art-code{background:#f7dfac;color:#c49b4f;right:0;bottom:0;transform:rotate(12deg);font-size:37px}.art-star{position:absolute;right:8px;top:0;font-size:38px;color:#baa777}.art-note{position:absolute;bottom:0;left:0;color:#a5b08f;font-size:10px;letter-spacing:1px}.subject-grid{gap:20px;margin-bottom:30px}.subject-card{border-radius:23px;padding:28px 30px;margin:0;box-shadow:none}.subject-card h2{font-size:26px;letter-spacing:-.8px}.subject-card p{font-size:13px;line-height:1.85;min-height:72px;color:#68745f}.subject-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;gap:12px}.subject-icon{margin:0;width:52px;height:55px;background:#f6ecd5;color:#b99a5c;font-size:30px;border-radius:16px}.subject-card.math .subject-icon{background:#eee7f7;color:#9d86bc}.subject-tag{font-size:10px;color:#6f7d5f;background:#f1f5e9;border-radius:9px;padding:6px 9px}.card-action{display:flex;align-items:center;justify-content:space-between;color:#829a66;font-size:12px;font-weight:650;padding-top:15px;border-top:1px solid #edf2e5}.subject-card:hover{border-color:#afc397;transform:translateY(-2px);box-shadow:0 8px 25px #3b57300a}.how-it-works{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin:32px 0}.how-it-works>div{position:relative;padding-left:38px}.how-it-works span{position:absolute;left:0;top:0;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;font-size:11px;background:#eef2e5;color:#98a783}.how-it-works h3{font-size:13px;margin:0;color:#849671}.how-it-works p{font-size:11px;color:#71825e;margin:6px 0}.achievement-row{margin:16px 0}.student main>h1{font-size:40px}.student main>.lead{font-size:16px;margin-bottom:12px}.student main>.muted{font-size:13px;max-width:740px}.start{margin-top:28px;padding:30px;background:#fff;border-color:#dfe9d4}.start h2{color:#6a8753}.start p{font-size:14px;color:#677952;max-width:600px}.start button{margin-top:6px}.progress-card{background:#f0f5e8;border-color:#e1e9d6;margin:26px 0;padding:20px 24px}.progress-card strong{font-size:12px;color:#7e9267}.progress-card p{font-size:11px}.progress-card .toolbar span{font-size:12px;color:#92a17f}progress{height:8px;background:#dfe8d3}progress::-webkit-progress-bar{background:#e0ead4}progress::-webkit-progress-value{background:#91ac70}.task{padding:27px 30px;margin:18px 0;border-radius:20px}.task .eyebrow{letter-spacing:.5px;font-size:11px;color:#71865c}.task h2{font-size:18px;color:#627551;line-height:1.8;font-weight:500;letter-spacing:0}.task input{font-size:17px;background:#f8faf4;max-width:300px;border-color:#dde7d1}.task label{font-size:11px;color:#687d56;max-width:300px}.bank-prompt{font-size:16px;line-height:1.9;color:var(--ink)}.result{background:#eaf2e0;border:1px solid #dce8ce;color:#729057;border-radius:20px}.result span{font-size:13px;line-height:1.9}.result strong{font-weight:600}.solution{background:#f3f7ed;border:1px solid #e6eddc;color:#6d815c}.solution h3{color:#839a6b}.solution li{font-size:14px}.correct{color:#7c9e57;font-size:13px}.incorrect{color:#ac9967;font-size:13px}.submit-dock{padding:14px 0;background:#f7f9f8ee}.submit-dock span{font-size:11px}.student details.card>summary{font-size:14px;color:#90a177}.history .card{background:#fff;padding:18px 24px;border-color:#e8ecdf}.history strong{font-size:22px;color:#92a775}.history span{color:#acb69e}.skill-row{border-color:#eaf0e2}.skill-row strong{font-size:12px;color:#8d9f76}.skill-row .small{font-size:10px;color:#7a8668}.skill-row.closed{opacity:.7}
.login-grid{gap:70px;padding:50px 0 55px}.login-grid h1{font-size:clamp(34px,4.3vw,53px);color:#536e43;line-height:1.25}.login-grid .lead{font-size:16px;color:#69765a;max-width:490px}.login{box-shadow:0 12px 50px #57734208;padding:34px}.login h2{font-size:25px;color:#7f9664}.login .muted{font-size:13px;color:#71825e}.login button{width:100%;margin-top:8px}.login-wave{display:inline-block;color:#bcad72;font-size:35px;line-height:1;margin-bottom:24px}.login-help{font-size:11px;line-height:1.8;color:#6d7a5a;margin:20px 0 0}.login-benefits{display:grid;gap:12px;color:#63794c;font-size:13px;margin-top:28px}.ui-message{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);max-width:calc(100vw - 32px);width:max-content;border:1px solid #d7e4c9;background:#f5faee;box-shadow:0 6px 30px #3c502820;padding:14px 22px;border-radius:15px;z-index:100;color:#6b8552;font-size:13px}.library-grid h2{font-size:20px}.library-grid .card{padding:24px}.library-grid .eyebrow{font-size:10px}.library-grid p{font-size:12px}.audit-list small{font-size:10px;color:#aab89a}.audit-list p{font-size:12px;color:#8a9e76}.roster-list{display:grid;gap:8px}.roster-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;background:#f6f9f1;border-radius:12px;font-size:13px}.roster-item small{display:block;color:#6e7f59}.roster-item a{font-size:12px}
@media(max-width:1000px){.app-header{padding:16px 22px;gap:18px}.main-nav{gap:2px}.main-nav a{padding:9px 10px;font-size:12px}.account-name{max-width:110px}.brand-word small{display:none}.hero-art{width:180px;height:170px}.art-tile{width:85px;height:100px}.login-grid{gap:35px}.workspace-tabs{gap:22px}.topic-list{grid-template-columns:1fr}}
@media(max-width:700px){.app-header{flex-wrap:wrap;gap:12px;justify-content:space-between;padding:14px 18px}.brand .brand-word{font-size:20px}.brand .brand-mark{width:34px;height:37px;font-size:26px;border-radius:11px 11px 4px 11px}.account-menu{order:1}.main-nav{order:2;width:100%;flex:auto;justify-content:flex-start;gap:8px;border-top:1px solid #edf1e7;padding-top:10px}.main-nav a{padding:8px 12px;min-height:39px;font-size:12px}.account-name{max-width:120px;font-size:11px}.header-note{display:none}.account-name small{font-size:9px}.account-menu .avatar{width:31px;height:31px;font-size:12px}.app-header>.brand{margin-right:auto}.page-intro{align-items:flex-start}.page-intro .button{font-size:11px;padding:10px 12px;white-space:normal;max-width:140px}.page-intro h1{font-size:32px}.page-intro .lead{font-size:13px}.workspace-tabs{gap:18px;flex-wrap:nowrap;overflow:auto;scrollbar-width:thin;margin:20px 0}.workspace-tabs a{white-space:nowrap;flex:none;font-size:12px;min-height:48px}.welcome-hero{padding:28px;border-radius:23px}.welcome-hero h1{font-size:34px}.hero-art{display:none}.welcome-hero .lead{font-size:14px}.subject-top{margin-bottom:18px}.subject-card{padding:25px}.subject-card h2{font-size:24px}.how-it-works{gap:24px;grid-template-columns:1fr}.how-it-works>div{padding-left:40px}.how-it-works h3{font-size:14px}.how-it-works p{font-size:12px}.share-card{padding:20px;align-items:stretch;flex-direction:column}.share-card button{width:100%}.date-form label{min-width:0}.live-label{font-size:9px}.stats span{font-size:10px}.stats strong{font-size:28px}.stats .card{padding:16px;margin-bottom:10px}.card{padding:21px;border-radius:18px}.report-content{padding:18px}.section-heading{gap:12px}.report-content .section-heading p{font-size:11px}.topic-tools{padding:13px}.topic-tools>div{gap:5px}.topic-tools .quiet{font-size:10px;padding:9px}.step-heading{margin:24px 0 18px}.step-heading p{font-size:11px}.step-heading h3{font-size:16px}.audience-picker{gap:12px;padding:14px}.audience-picker label{min-width:0;max-width:none;flex-basis:100%}.audience-picker button{width:100%}.form-grid{gap:0}.gentle-note{font-size:11px}.topic-catalog .grade-block>.grade-heading{padding:14px;flex-direction:row;flex-wrap:wrap;gap:8px}.grade-heading .check-label{flex-basis:calc(100% - 25px)}.grade-heading:after{position:absolute;right:14px;top:14px}.grade-heading{position:relative}.grade-heading .grade-count{margin-left:31px}.topic-catalog .grade-block>details{padding:6px 12px 12px}.topic-row{padding:6px 3px}.topic-row label{font-size:12px}.topic-row a{font-size:10px}.assignment-save{padding:13px;gap:12px;bottom:8px;border-radius:14px;flex-wrap:wrap}.assignment-save>div{flex:1;min-width:150px}.assignment-save strong{font-size:11px}.assignment-save button{width:100%;min-height:46px;font-size:13px}.assignment-save .small{font-size:10px}.save-explanation{font-size:10px}.task{padding:21px}.task h2{font-size:17px}.task label,.task input{max-width:none}.student main>h1{font-size:34px}.student main>.lead{font-size:14px}.progress-card{padding:18px}.progress-card .toolbar{gap:12px}.result{align-items:flex-start;flex-direction:column;gap:8px;padding:22px}.result span{font-size:12px}.result strong{font-size:36px}.report tr{border-color:#e5ecdb;background:#fff}.report td{border-color:#edf2e6;font-size:12px}.report td:before{color:#6c7f57;font-size:10px}.report td:first-child{font-size:15px}.login-grid{padding:15px 0 25px;gap:24px;grid-template-columns:1fr}.login-grid h1{font-size:36px}.login-grid .lead{font-size:14px}.login-benefits{font-size:12px;gap:8px;margin:20px 0}.login{max-width:none;padding:26px}.login-wave{margin-bottom:14px}.login h2{font-size:24px}.library-grid{grid-template-columns:1fr}.skill-row{gap:8px}footer{font-size:10px;padding-top:24px}.check-label{font-size:12px}.ui-message{bottom:14px;font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media print{.app-header,.workspace-tabs,.main-nav,.assignment-save,.share-card,.ui-message,.skip-link{display:none!important}.workspace-panel[hidden]{display:block!important}.card{box-shadow:none}body{background:#fff;color:#000}}

.topic-row label{font-size:14px;color:#4c6242}.topic-row a{font-size:11px}.topic-intro{font-size:14px}.subject-card p{font-size:14px}.step-heading p{font-size:12px}.login-help{font-size:12px}.login-benefits{color:#63784f}.card-action{color:#4f733a;font-size:13px}.subject-tag{color:#667b4e}.small{line-height:1.7}

@media(max-width:700px){.workspace-tabs{flex-wrap:wrap;overflow:visible;gap:0 16px}.workspace-tabs a{font-size:12px;white-space:normal;min-height:46px}}

/* Знак платформы: общий для всех учебных предметов. */
.app-header .brand-logo{display:block;width:44px;height:44px;object-fit:contain;flex:none}
@media(max-width:700px){.app-header .brand-logo{width:36px;height:36px}}
