@charset "UTF-8";
:root{--ink:#253a35;--muted:#74807b;--green:#2b5e50;--green-dark:#204d41;--line:#e6eae3;--canvas:#f7f8f4;--cream:#f0f1df;--soft:#edf3e9;--accent:#d6e3bb;--shadow:0 12px 36px #2b44340b;--radius:15px;font-family:'Segoe UI',Arial,sans-serif;color:var(--ink);background:var(--canvas);font-synthesis:none}*{box-sizing:border-box}body{margin:0;font-size:14px;line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:var(--green);text-decoration:none}a:hover{text-decoration:underline}button{color:inherit}button:focus-visible,a:focus-visible{outline:3px solid #90b5a2;outline-offset:3px}input:focus,select:focus,textarea:focus{outline:2px solid #8fac9e;outline-offset:1px}h1,h2,h3,h4,p{margin:0}h1{font-size:29px;letter-spacing:-.8px;font-weight:600;line-height:1.2}h2{font-size:18px;font-weight:600;letter-spacing:-.25px}h3{font-size:15px;font-weight:600}small{font-size:12px}.icon{width:20px;height:20px;flex-shrink:0;vertical-align:middle}.brand-symbol{width:39px;height:39px;color:var(--green)}.brand{display:flex;align-items:center;gap:12px}.brand-name{font-size:28px;line-height:1;font-weight:650;letter-spacing:-1px}.brand-name small{display:block;font-size:9px;letter-spacing:1.5px;color:var(--muted);font-weight:500;margin-top:7px}.shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}.sidebar{background:#fff;border-right:1px solid var(--line);padding:32px 18px 20px;position:fixed;width:248px;height:100vh;z-index:20;display:flex;flex-direction:column;overflow-y:auto}.sidebar .brand{padding:0 15px 27px}.school-label{display:flex;align-items:center;gap:10px;margin:0 10px 24px;background:#f7f8f3;border:1px solid var(--line);border-radius:9px;padding:10px;font-size:12px}.school-label .icon{color:#7a8c76;width:19px}.school-label span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-label{font-size:10px;letter-spacing:1.5px;color:#939b93;padding:0 16px;margin:12px 0 8px;font-weight:600}.nav-item{width:100%;border:0;background:none;display:flex;align-items:center;text-align:left;gap:12px;padding:10px 14px;margin:2px 0;border-radius:9px;color:#728078;font-size:13px;transition:.18s}.nav-item:hover{background:#f6f8f1;color:var(--green)}.nav-item.active{color:var(--green);background:#eaf0e2;font-weight:600}.nav-item.active .icon{stroke-width:1.9}.nav-count{margin-left:auto;font-size:10px;line-height:18px;min-width:18px;padding:0 4px;text-align:center;background:#dbe6c9;border-radius:5px}.sidebar-bottom{margin-top:auto;padding-top:18px}.help-card{padding:14px;background:#f6f7ef;border:1px solid #e9ecdd;border-radius:12px;margin:12px 6px 10px}.help-card p{font-size:11px;color:#7c8876;margin:4px 0 10px}.main-wrap{grid-column:2;min-width:0}.topbar{height:80px;border-bottom:1px solid var(--line);background:#ffffffad;display:flex;align-items:center;justify-content:space-between;padding:0 38px;gap:20px}.breadcrumb{font-size:12px;color:#8c9690;display:flex;align-items:center;gap:12px}.breadcrumb strong{color:#52665b;font-weight:500}.top-actions{display:flex;gap:20px;align-items:center}.top-date{font-size:11px;color:#809083}.icon-button{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);background:#fff;border-radius:9px}.icon-button:hover{background:var(--soft)}.profile{display:flex;align-items:center;gap:10px;border:0;background:none;text-align:left}.profile strong{font-size:12px;display:block}.profile small{font-size:10px;color:var(--muted);display:block}.avatar{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#e7ebd9;color:#6b7851;font-weight:600;flex-shrink:0;font-size:13px}.avatar.small{width:33px;height:33px;font-size:11px}.avatar.tone1{background:#e3ebe2;color:#6a826a}.avatar.tone2{background:#f4e8dc;color:#ac8461}.avatar.tone3{background:#e2eaec;color:#69838d}.avatar.tone4{background:#ede6ee;color:#957998}.avatar.tone5{background:#eae9d4;color:#8c9059}.page{max-width:1550px;padding:32px 38px 48px;margin:0 auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.page-heading p{font-size:13px;color:var(--muted);margin-top:8px}.eyebrow{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:#869579;font-weight:600;margin-bottom:10px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 17px;border:1px solid var(--green);background:var(--green);color:#fff;border-radius:8px;font-weight:500;font-size:12px;white-space:nowrap;transition:.18s;text-decoration:none}.button:hover{background:var(--green-dark);transform:translateY(-1px);text-decoration:none}.button .icon{width:16px;height:16px}.button.secondary{color:#56675b;border-color:#dfe5d9;background:#fff}.button.secondary:hover{background:#f2f5ed}.button.light{background:#eff3e4;color:var(--green);border-color:#dfe6cf}.button.ghost{background:transparent;border-color:transparent;color:var(--green);padding-left:0}.button.danger{background:#fff3f0;border-color:#f0d9d4;color:#a85749}.button.small{padding:6px 10px;font-size:11px}.button.block{width:100%}.hero{background:linear-gradient(115deg,#f0f1df,#edf1df);border:1px solid #e8ebd6;display:flex;align-items:center;justify-content:space-between;overflow:hidden;border-radius:var(--radius);padding:28px 33px;height:225px;margin-bottom:24px}.hero-text{max-width:480px;z-index:1}.hero .eyebrow{display:flex;align-items:center;gap:7px;font-size:9px;letter-spacing:1.6px;color:#748357}.hero h2{font-family:Georgia,'Times New Roman',serif;font-size:32px;font-weight:400;line-height:1.15;color:#344f3e;letter-spacing:-.8px}.hero h2 em{font-weight:400}.hero p{color:#7a876d;font-size:12px;line-height:1.8;margin:13px 0 17px;max-width:370px}.hero-art{width:315px;align-self:flex-end;height:223px;flex-shrink:0;margin-right:1%;margin-bottom:-28px}.hero-art svg{width:100%;height:100%}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin:0 0 27px}.stat{background:white;border:1px solid var(--line);border-radius:13px;padding:18px 20px;min-width:0;box-shadow:var(--shadow)}.stat-top{display:flex;align-items:center;justify-content:space-between;gap:7px;color:#7c887f;font-size:11px}.stat-icon{background:#f0f4e8;border-radius:9px;padding:7px;display:flex;color:#71875c}.stat-icon.blue{background:#edf2f5;color:#7c9ba6}.stat-icon.amber{background:#faf3e6;color:#c2a066}.stat-icon.purple{background:#f2edf6;color:#a191ac}.stat strong{font-size:29px;font-weight:500;line-height:1.3;display:block;letter-spacing:-1px;margin:5px 0 4px}.stat small{font-size:10px;color:#96a08f}.stat small.good{color:#789267}.columns{display:grid;grid-template-columns:minmax(0,1fr) 294px;gap:22px;align-items:start}.panel{border:1px solid var(--line);border-radius:13px;background:#fff;overflow:hidden;box-shadow:var(--shadow)}.panel+.panel{margin-top:22px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:21px 23px 15px}.panel-heading h2{font-size:16px}.panel-heading p{font-size:11px;color:#92998d;margin-top:5px}.panel-body{padding:20px 23px}.panel-body:first-child{padding-top:24px}.table-wrap{width:100%;overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}th{color:#8c988e;background:#fafbf8;font-weight:500;font-size:10px;letter-spacing:.2px;padding:11px 22px;border-top:1px solid #f1f2ed;border-bottom:1px solid #f1f2ed;white-space:nowrap}td{padding:17px 22px;border-bottom:1px solid #f0f2ec}tr:last-child td{border-bottom:0}tbody tr:hover{background:#fcfdf9}.student-cell{display:flex;align-items:center;gap:10px;min-width:165px}.student-cell strong{display:block;font-size:12px;font-weight:500}.student-cell small{display:block;font-size:10px;color:#919b91;margin-top:3px}.badge{font-size:10px;padding:4px 9px;border-radius:6px;background:#f0f3e9;color:#7b8f62;display:inline-flex;align-items:center;gap:5px;white-space:nowrap;line-height:1.6}.badge:before{content:'';width:4px;height:4px;background:currentColor;border-radius:50%}.badge.amber{background:#fbf4e5;color:#b7985f}.badge.blue{background:#eef3f5;color:#7a97a1}.badge.gray{background:#f0f1f0;color:#8c9790}.badge.red{background:#fcf0eb;color:#b47765}.badge.purple{background:#f2edf5;color:#9c87a7}.progress{height:5px;width:85px;background:#edf1e6;border-radius:6px;overflow:hidden}.progress span{height:100%;display:block;background:#adc294;border-radius:6px}.progress-label{font-size:10px;color:#91a07f;display:flex;align-items:center;gap:8px}.table-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:13px 22px;font-size:10px;color:#9aa28f}.quiet-link{border:0;background:none;padding:0;display:inline-flex;align-items:center;gap:7px;font-size:11px;color:#83966c;cursor:pointer}.quiet-link .icon{width:14px;height:14px}.task-list{padding:0 20px 13px}.task-row{display:flex;gap:11px;padding:15px 0;border-bottom:1px solid #eef0e7;align-items:flex-start}.task-row:last-child{border:0}.task-icon{padding:8px;display:flex;background:#f7f1e4;color:#ba9b67;border-radius:9px}.task-icon .icon{width:16px;height:16px}.task-row strong{font-size:11px;font-weight:500;display:block}.task-row small{font-size:10px;line-height:1.7;color:#99a18f;display:block;margin:4px 0 8px}.task-row .quiet-link{font-size:10px}.tiny-label{font-size:9px;display:inline-block;padding:2px 6px;background:#f5f2e6;color:#b19961;border-radius:4px}.journey{padding:0 23px 20px}.journey-row{display:flex;align-items:center;gap:10px;margin:17px 0}.journey-row>span{font-size:11px;color:#8c9887;min-width:81px}.journey-row .progress{flex:1;height:7px}.journey-row small{font-size:10px;color:#7d8c74;min-width:18px;text-align:right}.journey-caption{border-top:1px solid var(--line);padding-top:15px;font-size:10px;line-height:1.7;color:#99a18f}.activity-row{display:flex;align-items:flex-start;gap:11px;padding:12px 0;border-bottom:1px solid #f0f2e9}.activity-row:last-child{border:0}.activity-dot{width:7px;height:7px;border:2px solid #adbfa1;border-radius:50%;margin-top:5px;flex-shrink:0}.activity-row strong{font-size:11px;font-weight:500}.activity-row p{font-size:10px;color:#909c89;margin-top:3px}.activity-row time{margin-left:auto;font-size:9px;white-space:nowrap;color:#9aa68e}.tip-card{background:#edf1e5;border:1px solid #e3e9d7;border-radius:13px;margin-top:22px;padding:22px}.tip-card .icon{color:#8b9e71}.tip-card h3{font-family:Georgia,serif;font-weight:400;font-size:18px;color:#5c7350;line-height:1.4;margin:12px 0 8px}.tip-card p{font-size:11px;color:#889a79;line-height:1.8}.footer{font-size:10px;color:#a1aa98;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:27px}.footer .icon{width:13px;height:13px}.demo-strip{font-size:10px;background:#f3f0e3;color:#96865c;padding:6px 18px;text-align:center;border-bottom:1px solid #e8e3cd}.filters{padding:17px 21px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line);flex-wrap:wrap}.searchbox{position:relative;flex:1;min-width:180px}.searchbox .icon{position:absolute;left:12px;top:11px;width:17px;color:#9ca695}.searchbox input{padding-left:37px!important}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:16px;min-width:0}.field>label,.field-label{font-size:12px;font-weight:500;color:#607164}.field small,.hint{font-size:11px;color:#8c9886;line-height:1.65}.field input,.field select,.field textarea,input.control,select.control,textarea.control{width:100%;padding:10px 12px;border:1px solid #dfe5d8;border-radius:8px;background:#fff;color:#43584b;min-height:40px}.field textarea,textarea.control{resize:vertical;min-height:100px;line-height:1.7}.field input::placeholder,textarea::placeholder,input::placeholder{color:#a7ae9f}.filters select{max-width:190px}.filters .tabs{margin:0;border:0}.tabs{display:flex;gap:23px;overflow-x:auto;border-bottom:1px solid var(--line);margin-bottom:23px}.tab{border:0;background:none;padding:14px 0;font-size:12px;color:#8c9887;border-bottom:2px solid transparent;white-space:nowrap}.tab.active{color:var(--green);border-bottom-color:#708a53;font-weight:600}.empty{padding:50px 24px;text-align:center;max-width:550px;margin:auto;color:#8c9a87}.empty .icon{width:37px;height:37px;color:#b3c2a0;margin-bottom:14px}.empty h3{color:#6e8164;font-size:16px;margin-bottom:8px}.empty p{font-size:12px;line-height:1.8;margin:0 0 17px}.info-banner{border:1px solid #e5e9d3;background:#f5f7ed;border-radius:10px;padding:13px 16px;display:flex;align-items:flex-start;gap:11px;font-size:12px;color:#829365;margin-bottom:20px;line-height:1.7}.info-banner.warning{background:#fcf6e9;border-color:#eee4ca;color:#a28b53}.info-banner .icon{width:18px;margin-top:2px}.info-banner a{text-decoration:underline}.student-head{display:flex;gap:17px;align-items:center}.student-head .avatar{width:64px;height:64px;font-size:21px}.student-head h1{font-size:26px}.student-head p{margin:5px 0 0;font-size:12px;color:#899980}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.between{justify-content:space-between}.spacer{flex:1}.mt{margin-top:20px}.mb{margin-bottom:20px}.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:23px}.data-item{padding:13px 0;border-bottom:1px solid var(--line)}.data-item:last-child{border:0}.data-item small{font-size:10px;color:#9aa78b;display:block;margin-bottom:5px}.data-item strong{font-size:12px;font-weight:500;white-space:pre-wrap}.step-list{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:22px 0}.step-card{border:1px solid var(--line);background:white;border-radius:12px;padding:20px;position:relative}.step-card .step-number{font-size:12px;border:1px solid #dbe4cf;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#8fa070;margin-bottom:16px}.step-card.done .step-number{background:#e8eedb;border-color:transparent}.step-card h3{font-size:13px;margin-bottom:6px}.step-card p{font-size:11px;color:#94a087;line-height:1.7}.step-card button{margin-top:13px}.doc-card{padding:21px;border:1px solid var(--line);border-radius:12px;background:white;display:flex;flex-direction:column;gap:13px}.doc-card .doc-mark{width:38px;height:42px;border-radius:8px;background:#edf2e4;display:flex;align-items:center;justify-content:center;color:#8fa374}.doc-card h3{font-size:14px}.doc-card p{font-size:11px;color:#94a188}.doc-card .row:last-child{margin-top:auto}.notice-count{font-size:11px;background:#eff2e6;padding:2px 8px;border-radius:5px;color:#8b9b72}.modal-backdrop{position:fixed;inset:0;background:#213d355e;backdrop-filter:blur(5px);z-index:100;display:flex;align-items:center;justify-content:center;padding:24px}.modal{background:#fff;border-radius:18px;box-shadow:0 30px 100px #1631273d;width:100%;max-width:620px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.modal.wide{max-width:850px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:22px 25px;border-bottom:1px solid var(--line);gap:14px}.modal-header h2{font-size:19px}.modal-body{padding:24px 26px;overflow-y:auto}.modal-footer{border-top:1px solid var(--line);padding:17px 25px;display:flex;justify-content:flex-end;gap:10px;background:#fcfdf9}.modal .grid2{gap:0 17px}.modal p.description{font-size:12px;color:#8d9a82;line-height:1.8;margin-bottom:22px}.form-error{font-size:12px;color:#af6651;background:#fcf0e9;border:1px solid #f0ded3;border-radius:8px;padding:10px 13px;margin-bottom:16px}.hidden{display:none!important}.toast{position:fixed;bottom:26px;right:28px;background:#294e3d;color:#f0f6e6;max-width:430px;padding:15px 20px;box-shadow:0 8px 30px #173b3033;border-radius:11px;z-index:200;font-size:12px;animation:slide-in .2s ease-out}.toast.error{background:#8e5d46}.boot{display:flex;align-items:center;justify-content:center;gap:16px;min-height:80vh;color:#899c77}.loader{display:inline-block;width:24px;height:24px;border:2px solid #d5dfc3;border-top-color:#6a8652;border-radius:50%;animation:spin .7s linear infinite}.check-label{font-size:12px;color:#718261;display:flex;align-items:flex-start;gap:10px;margin:14px 0}.check-label input{accent-color:var(--green);width:16px;height:16px;flex-shrink:0}.login-page{min-height:100vh;display:grid;grid-template-columns:1.05fr 1fr}.login-story{background:#ecf0dd;padding:50px 65px;display:flex;flex-direction:column;position:relative;overflow:hidden}.login-story .brand{margin-bottom:45px}.login-story h1{font:normal 51px/1.13 Georgia,serif;letter-spacing:-1.9px;max-width:450px;color:#35563e}.login-story h1 em{color:#77905f}.login-story p{font-size:14px;line-height:1.9;color:#899c76;max-width:390px;margin-top:20px}.login-art{width:90%;max-width:420px;margin:auto auto 0}.login-art svg{width:100%;height:auto}.login-story footer{font-size:10px;color:#92a17f;letter-spacing:.6px;margin-top:25px}.login-form-area{display:flex;align-items:center;justify-content:center;padding:55px 45px;background:#fdfefa}.login-form{width:100%;max-width:365px}.login-form h2{font-size:28px;color:#3c5745;font-weight:500;letter-spacing:-.7px}.login-form>p{font-size:12px;color:#99a58e;line-height:1.8;margin:12px 0 27px}.login-form .field{margin-bottom:18px}.login-footer{margin-top:22px!important;text-align:center;font-size:10px!important}.demo-logins{margin-top:29px;padding-top:23px;border-top:1px solid #e6eadc}.demo-logins p{font-size:10px;color:#97a488;margin-bottom:12px}.demo-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}.demo-buttons button{font-size:10px;padding:8px}.auth-public{max-width:870px;margin:0 auto;padding:40px 25px}.auth-public>.brand{margin-bottom:28px}.auth-public .panel-body{padding:30px}.auth-public pre{white-space:pre-wrap;font:13px/1.8 'Segoe UI',sans-serif;color:#75876c}.form-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:26px;align-items:start}.form-steps{position:sticky;top:25px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 10px}.form-step{border:0;background:none;border-radius:8px;display:flex;align-items:center;gap:9px;width:100%;padding:12px;text-align:left;font-size:11px;color:#8c9d7e}.form-step.active{background:#eef3e4;color:#5e7b46}.form-step small{margin-left:auto;white-space:nowrap;color:#a1b090}.question{padding:22px 25px;border-bottom:1px solid var(--line)}.question:last-child{border:0}.question h3{font-size:13px;font-weight:500;line-height:1.6;margin-bottom:14px}.question h3 small{font-weight:400;color:#a9b69b;margin-right:7px}.question .required{color:#bd9f69;margin-left:5px}.option-group{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:12px}.option{display:flex;align-items:center;gap:7px;border:1px solid #e1e7d8;border-radius:7px;padding:9px 13px;font-size:11px;color:#90a07e;cursor:pointer}.option:has(input:checked){border-color:#95ad7d;background:#f0f5e5;color:#618447}.option input{accent-color:var(--green);margin:0;width:12px;height:12px}.question textarea{font-size:12px;min-height:60px;resize:vertical}.question .observation{min-height:37px;margin-top:3px}.form-toolbar{position:sticky;bottom:0;background:#fffef8f2;backdrop-filter:blur(8px);border:1px solid var(--line);box-shadow:0 -5px 20px #2b443406;padding:16px 22px;border-radius:11px;display:flex;align-items:center;gap:12px;margin-top:20px;z-index:10}.form-toolbar small{font-size:10px;color:#8fa078;margin-right:auto}.form-progress{height:5px;border-radius:6px;background:#ecf1e3;margin-bottom:25px}.form-progress span{display:block;height:100%;background:#8eab70;border-radius:6px;transition:width .2s}.repeat-row{background:#f9fbf3;border:1px solid #e5eadb;border-radius:9px;padding:14px;margin-bottom:12px}.repeat-row .field{margin-bottom:8px}.repeat-row .field>label{font-size:10px}.repeat-row .field input{font-size:11px}.document-grid{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:25px;align-items:start}.document-paper{background:#fff;box-shadow:var(--shadow);border:1px solid var(--line);padding:45px 50px;border-radius:12px}.paper-header{display:flex;align-items:center;gap:15px;padding-bottom:26px;margin-bottom:30px;border-bottom:1px solid var(--line)}.school-logo{max-width:95px;max-height:65px;object-fit:contain}.paper-header h2{font-size:17px}.paper-header p{font-size:10px;color:#92a180;margin-top:5px}.markdown{font-size:13px;line-height:1.9;color:#677b5d;overflow-wrap:anywhere}.markdown h2{font-size:17px;color:#3d5836;margin:29px 0 13px}.markdown h3{font-size:13px;margin:20px 0 9px;color:#6c8656}.markdown p{margin:0 0 14px;white-space:pre-wrap}.markdown ul{padding-left:20px;margin:8px 0}.markdown strong{font-weight:600}.markdown blockquote{border-left:3px solid #c2d3a3;padding-left:15px;margin:15px 0;color:#899c72}.document-editor{width:100%;min-height:520px;background:#fff;border:1px solid #dfe6d3;border-radius:10px;padding:22px;line-height:1.8;font-size:13px;color:#657b56;resize:vertical}.objective-editor{border:1px solid #e3e9d7;padding:18px;margin:14px 0;border-radius:10px;background:#fafcf5}.objective-editor .grid2{gap:0 13px}.signature{margin-top:25px;border-top:1px solid #dfe6d3;padding-top:18px;font-size:11px;color:#849971}.document-aside{position:sticky;top:25px}.document-aside .panel-body{padding:20px}.document-aside .button{width:100%;margin-top:10px}.doc-details{font-size:11px;color:#95a481;line-height:1.8}.library-item{border-bottom:1px solid var(--line);padding:16px 0;display:flex;align-items:center;gap:14px}.library-item h3{font-size:12px}.library-item p{font-size:10px;color:#92a27d;margin-top:5px}.library-item .icon{color:#91a66f}.library-item .button{margin-left:auto;flex-shrink:0}.audit-list .activity-row{padding:19px 0}.mobile-menu{display:none}.login-story .mobile-tag{display:none}.no-wrap{white-space:nowrap}.readonly-note{margin-bottom:18px}.field pre{max-height:320px;overflow:auto;white-space:pre-wrap;font-size:11px;color:#8ba171}.copy-link{font-size:12px;overflow-wrap:anywhere;padding:14px;border:1px solid #dfe8d3;background:#f7faf0;border-radius:9px;margin:15px 0}.catalog-preview{white-space:pre-wrap;font-size:12px;line-height:1.85;color:#7b9267;max-height:60vh;overflow:auto}.user-card{background:white;border:1px solid var(--line);border-radius:12px;padding:23px}.user-card h3{font-size:14px;margin:14px 0 4px}.user-card>p{font-size:11px;color:#9aaa86;margin-bottom:12px}.user-card .assignments{font-size:10px;color:#8eaa73;border-top:1px solid var(--line);padding-top:13px;margin-top:13px;min-height:52px}.assignment-line{display:grid;grid-template-columns:1fr 1fr 30px;gap:8px;margin-bottom:10px}.assignment-line select{font-size:11px}.source-count{color:#9aad8c;font-size:11px}.page-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.text-muted{color:var(--muted)}.danger-zone{margin-top:25px;padding-top:20px;border-top:1px solid #efded7}.danger-zone h3{color:#ac705a}.danger-zone p{font-size:11px;color:#b99b8b;margin:6px 0 15px}.source-document{white-space:pre-wrap;line-height:1.8;font-size:12px;color:#738b60}.print-root{display:none}@keyframes spin{to{transform:rotate(360deg)}}@keyframes slide-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(min-width:1600px){.page{padding-top:40px}.hero{height:240px}.hero-art{width:340px;height:240px}.hero h2{font-size:37px}}@media(max-width:1250px){.shell{grid-template-columns:215px minmax(0,1fr)}.sidebar{width:215px;padding:25px 13px}.nav-item{font-size:12px;padding:10px}.topbar{padding:0 25px}.page{padding:28px 25px}.columns{grid-template-columns:minmax(0,1fr) 270px;gap:16px}.hero-art{width:255px}.hero h2{font-size:28px}.stat{padding:15px}.stat-top{font-size:10px}td,th{padding:15px}.top-date{display:none}.detail-grid{grid-template-columns:minmax(0,1fr) 265px}.document-paper{padding:30px}.document-grid{grid-template-columns:minmax(0,1fr) 250px}.step-card{padding:15px}.step-list{gap:10px}}@media(max-width:1050px){.columns{grid-template-columns:1fr}.right-column{display:grid;grid-template-columns:1fr 1fr;gap:20px}.right-column .panel+.panel{margin-top:0}.right-column .tip-card{display:none}.stats{gap:12px}.hero-art{width:240px;margin-right:-25px}.hero-text{max-width:340px}.detail-grid{grid-template-columns:1fr}.document-grid{grid-template-columns:1fr}.document-aside{position:static}.form-layout{grid-template-columns:175px minmax(0,1fr);gap:15px}.grid3{grid-template-columns:1fr 1fr}.login-story{padding:45px 35px}.login-story h1{font-size:43px}.login-form-area{padding:35px}.step-list{grid-template-columns:1fr 1fr}}@media(max-width:760px){.shell{display:block}.sidebar{transform:translateX(-100%);transition:transform .2s;width:245px;box-shadow:10px 0 40px #29453524}.shell.menu-open .sidebar{transform:translateX(0)}.mobile-menu{display:inline-flex}.topbar{height:67px;padding:0 18px}.breadcrumb{gap:8px;font-size:10px}.breadcrumb>span{display:none}.top-actions{gap:10px}.profile>div:not(.avatar){display:none}.profile{padding:0}.profile .avatar{width:31px;height:31px;font-size:10px}.page{padding:25px 18px 35px}h1{font-size:25px}.page-heading{align-items:flex-start;gap:12px}.page-heading p{font-size:11px}.page-heading>.button{font-size:10px;padding:9px 11px}.hero{padding:22px;height:205px;position:relative}.hero-text{max-width:265px}.hero h2{font-size:28px}.hero p{font-size:11px;max-width:225px;margin:10px 0 12px}.hero-art{width:190px;position:absolute;right:-65px;bottom:0;margin:0;opacity:.45;z-index:0}.hero .eyebrow{font-size:8px}.hero .button{padding:7px 12px;font-size:10px}.stats{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:22px}.stat{padding:15px}.stat strong{font-size:26px}.stat-top{font-size:10px}.stat small{font-size:9px}.stat-icon{padding:6px}.stat-icon .icon{width:17px;height:17px}.columns{gap:20px}.right-column{grid-template-columns:1fr}.panel-heading{padding:18px}.panel-heading h2{font-size:14px}.panel-heading p{font-size:10px}td,th{padding:13px 16px}.student-cell strong{font-size:11px}.student-cell{gap:9px;min-width:140px}.student-cell .avatar{width:31px;height:31px;font-size:10px}.desktop-column{display:none}.footer{font-size:9px;align-items:flex-start;line-height:1.8}.footer span:last-child{max-width:150px;text-align:right}.grid2,.grid3{grid-template-columns:1fr}.student-head .avatar{width:47px;height:47px;font-size:16px}.student-head h1{font-size:21px}.student-head{gap:12px}.student-head p{font-size:10px}.page-actions{gap:6px}.page-actions .button{font-size:10px;padding:7px 10px}.page-heading:has(.student-head){flex-direction:column}.tabs{gap:20px}.tab{font-size:11px}.modal-backdrop{padding:10px}.modal{max-height:95vh;border-radius:13px}.modal-header{padding:17px 19px}.modal-header h2{font-size:17px}.modal-body{padding:19px}.modal-footer{padding:14px 19px}.modal .grid2{grid-template-columns:1fr 1fr;gap:0 12px}.modal .field>label{font-size:11px}.login-page{display:block}.login-story{padding:28px 25px 30px}.login-story .brand{margin-bottom:24px}.login-story h1{font-size:34px;max-width:330px}.login-story p{font-size:11px;margin-top:12px;max-width:295px}.login-art,.login-story footer{display:none}.login-form-area{padding:32px 25px 45px}.login-form{max-width:450px}.login-form h2{font-size:24px}.login-form>p{margin-bottom:22px}.form-layout{display:block}.form-steps{position:static;display:flex;overflow:auto;gap:4px;padding:8px;margin-bottom:18px}.form-step{flex-shrink:0;width:auto;max-width:210px;font-size:10px;padding:10px;white-space:nowrap}.form-step small{display:none}.question{padding:20px}.question h3{font-size:12px}.option{font-size:10px;padding:8px 10px}.form-toolbar{padding:12px;gap:7px;flex-wrap:wrap}.form-toolbar .button{font-size:10px;padding:8px 10px}.form-toolbar small{width:100%;margin-bottom:3px}.document-paper{padding:23px}.document-paper .markdown{font-size:12px}.document-paper .markdown h2{font-size:16px}.document-aside .panel-body{padding:20px}.step-card h3{font-size:12px}.step-card p{font-size:10px}.step-card{padding:16px}.step-number{margin-bottom:10px!important}.toast{left:18px;right:18px;bottom:18px;max-width:none}.repeat-row .grid2{grid-template-columns:1fr}.filters{padding:14px;gap:9px}.filters select{font-size:11px;flex:1;max-width:50%}.searchbox{width:100%;flex-basis:100%}.document-editor{min-height:420px}.auth-public{padding:25px 15px}.auth-public .panel-body{padding:22px}.topbar .icon-button{width:31px;height:31px}.source-count{display:none}.panel-body{padding:19px}.library-item{align-items:flex-start}.library-item h3{overflow-wrap:anywhere;font-size:11px}.library-item .button{font-size:9px}.demo-strip{font-size:9px;padding:6px 12px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}@media print{body{background:#fff!important}#app,#modal-root,#toast-root{display:none!important}.print-root{display:block!important;color:#263c31;padding:15mm}.print-root .markdown{color:#24372a}.print-root .markdown h2{break-after:avoid}.print-root .signature{color:#344d38}.print-root .paper-header{margin-bottom:12mm}a{color:inherit}@page{size:A4;margin:10mm}}

/* Contrast and readability refinement for daily classroom use. */
:root{--muted:#64766b}.hint,.field small{color:#65795c}.nav-item{color:#617467}.nav-label{color:#788b70}.school-label{color:#5c7052}.badge{color:#547439}.badge.amber{color:#927034}.badge.blue{color:#577887}.badge.purple{color:#80658d}.badge.gray{color:#66796c}.badge.red{color:#9f5949}.hero p{color:#64764f}.hero .eyebrow{color:#617949}.hero-text{max-width:620px}.stat-top{color:#6d7c64;font-size:12px}.stat small{color:#77866b;font-size:11px}.page-heading p,.panel-heading p{color:#738367}.panel-heading p{font-size:12px}.task-row strong{font-size:12px}.task-row small{color:#748568;font-size:11px}.task-row .quiet-link{font-size:11px}.quiet-link{color:#627e4c}.student-cell small{color:#788a6d;font-size:11px}.form-step{color:#637d51}.option{color:#657d52}.form-toolbar small{color:#657c54}.question h3{color:#425c37}.data-item small{color:#70855f}.step-card p{color:#74876a}.step-card .step-number{color:#657f4b}.footer{color:#788a69}.document-paper .markdown{color:#506a45}.library-item p{color:#748b60}.doc-card p{color:#73865e}.progress-label{color:#677f4c}.table-footer{color:#7c8c6b}.top-date{color:#6e8361}.sidebar{scrollbar-width:thin;scrollbar-color:#d9e1cf transparent}.login-story p{color:#6c8359}.login-form>p,.login-footer{color:#75896a}.field>label{color:#556d4c}.login-story h1{font-size:49px}.activity-row p{color:#778b67}.journey-row>span{color:#728760}.journey-caption{color:#778b65}.tip-card p{color:#70895c}.user-card>p{color:#758c63}.form-step small{color:#7f956c}.tabs{scrollbar-width:thin;scrollbar-color:#cad8b7 transparent}.readonly-note{color:#778e60}@media(max-width:760px){.hero h2{font-size:27px}.hero-text{max-width:265px}.hero{height:218px}.stat-top{font-size:11px}.stat small{font-size:10px}.login-story h1{font-size:34px}.breadcrumb strong{max-width:175px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.question .option{min-height:39px}.panel-heading p{font-size:11px}.table-footer{font-size:11px}.task-row small{font-size:12px}.footer{font-size:10px}}

/* Identidade NossoPEI: marca enviada pelo cliente, mantida apenas localmente até aprovação. */
.brand-logo-mark{display:block;width:43px;height:43px;flex:0 0 43px;border-radius:11px;background:#fff url("/assets/nosso-pei-logo.png") 50% 28%/235% auto no-repeat;box-shadow:0 4px 12px #0c4c6b18}.brand-name{color:#112c47;font-weight:700;letter-spacing:-1.35px}.brand-name span{color:#087fc0}.brand-name small{color:#168d73;letter-spacing:1.05px;font-size:7.5px;white-space:nowrap}.login-story .brand-logo-mark{width:56px;height:56px;flex-basis:56px;border-radius:14px}.login-story .brand-name{font-size:31px}.login-story .brand-name small{font-size:8.5px}.auth-public .brand-logo-mark{width:50px;height:50px;flex-basis:50px}.auth-public .brand-name{font-size:30px}@media(max-width:760px){.brand-logo-mark{width:39px;height:39px;flex-basis:39px}.brand-name{font-size:24px}.brand-name small{font-size:6.5px;letter-spacing:.7px}}

/* Direção visual aprovada localmente: painel azul e verde, inspirado na referência enviada. */
:root{--ink:#233447;--muted:#708096;--green:#0786dc;--green-dark:#066fbd;--line:#e4ebf3;--canvas:#f5f8fc;--cream:#eff8ff;--soft:#edf6ff;--accent:#d9efff;--shadow:0 5px 18px #27446612;--radius:11px;font-family:Inter,"Segoe UI",Arial,sans-serif}
body{background:var(--canvas);color:var(--ink)}
.shell{grid-template-columns:224px minmax(0,1fr)}
.sidebar{width:224px;padding:22px 12px 16px;background:#fff;border-right:1px solid #e6edf5;box-shadow:4px 0 18px #153b5710}
.sidebar .brand{padding:0 10px 23px;gap:9px}.brand-logo-mark{width:39px;height:39px;flex-basis:39px;border-radius:10px;box-shadow:none}.brand-name{font-size:25px;letter-spacing:-1.2px}.brand-name small{font-size:6.5px;color:#118b78;letter-spacing:.8px}
.school-label{margin:0 7px 17px;padding:9px 10px;background:#f5f9fd;border-color:#e2edf7;color:#446076}.nav-label{color:#8a99a9;font-size:9px;letter-spacing:1.15px;padding:0 12px;margin:12px 0 6px}.nav-item{padding:9px 12px;margin:2px 0;color:#597083;border-radius:8px;font-size:12px;gap:10px}.nav-item .icon{width:17px;height:17px}.nav-item:hover{background:#edf7ff;color:#087ed2}.nav-item.active{background:#0786dc;color:#fff;font-weight:600;box-shadow:0 4px 10px #0786dc31}.nav-count{background:#dff5ec;color:#168a66}.help-card{margin:10px 4px 7px;padding:13px;background:#f3fbf8;border-color:#dcefe8}.help-card h3{color:#23725f}.help-card p{color:#688a80}
.main-wrap{background:var(--canvas)}.topbar{height:72px;background:#fff;border-bottom:1px solid #e9eff6;padding:0 30px}.breadcrumb{color:#7e8e9d}.breadcrumb strong{color:#364d61}.top-date{color:#8290a0}.icon-button{border-color:#e3ebf3;background:#fff;color:#5e7589;border-radius:9px}.icon-button:hover{background:#eef7ff}.avatar{background:#e4f4ff;color:#087bc4}.avatar.tone1{background:#e3f6ef;color:#168a66}.avatar.tone2{background:#fff0dc;color:#dd8b24}.avatar.tone3{background:#e7f2ff;color:#2783c6}
.page{max-width:1600px;padding:25px 30px 36px}.page-heading{margin-bottom:20px}.page-heading h1{font-size:25px;color:#20374b;letter-spacing:-.8px}.page-heading p{margin-top:5px;color:#718398;font-size:12px}.eyebrow{color:#149879}.button{background:#0786dc;border-color:#0786dc;border-radius:8px;padding:9px 15px;box-shadow:0 3px 8px #0786dc21}.button:hover{background:#066fbd}.button.secondary{color:#36708f;border-color:#d7e6f2;background:#fff;box-shadow:none}.button.secondary:hover{background:#f0f8ff}.button.light{background:#e2f5ee;border-color:#d7eee5;color:#148a68}.button.ghost{color:#087ed2}.button.danger{color:#c75b57;background:#fff4f3;border-color:#f3dcd9}
.panel,.stat,.doc-card,.user-card{border-color:#e4ebf3;border-radius:11px;box-shadow:0 4px 15px #1c3b560c}.panel{background:#fff}.panel-heading{padding:17px 19px 12px}.panel-heading h2{font-size:15px;color:#2a4155}.panel-heading p{color:#7890a4;font-size:11px}.panel-body{padding:17px 19px}.stat{padding:15px 17px}.stats{gap:14px;margin-bottom:21px}.stat-top{color:#6b8194;font-size:11px}.stat strong{font-size:28px;color:#1d3d55;margin:3px 0}.stat small{color:#7890a4}.stat-icon{background:#e4f5ff;color:#0786dc;border-radius:9px}.stat-icon.blue{background:#e9f4ff;color:#0786dc}.stat-icon.amber{background:#fff4df;color:#e69a25}.stat-icon.purple{background:#edf0ff;color:#6576cf}
.hero{height:210px;padding:26px 29px;border-color:#dceaf7;background:linear-gradient(112deg,#e9f7ff,#f4fbff 68%,#e5f7f0);box-shadow:0 4px 14px #1b4b6f0c}.hero h2{font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:29px;font-weight:650;color:#23425b;letter-spacing:-1px}.hero h2 em{color:#0786dc}.hero p{color:#628096;line-height:1.7}.hero .eyebrow{color:#169579}.hero-art{opacity:.72}.columns{gap:18px}.right-column .panel+.panel{margin-top:18px}
th{background:#f7fafd;color:#698095;border-color:#edf1f6;padding:10px 18px}td{padding:14px 18px;border-color:#edf1f6}.badge{background:#e7f7ef;color:#138b67;border-radius:5px}.badge.blue{background:#e7f4ff;color:#087bc7}.badge.amber{background:#fff4df;color:#bf861e}.badge.gray{background:#f0f3f6;color:#647589}.badge.red{background:#fff0ef;color:#bd645e}.badge.purple{background:#f0efff;color:#7666a9}.progress{background:#e7eef4}.progress span{background:#2dca95}.progress-label{color:#4f876f}.task-icon{background:#e7f4ff;color:#0786dc}.tip-card{background:#effaff;border-color:#dceefa}.tip-card .icon{color:#0786dc}.tip-card h3{color:#2d5c79}.tip-card p{color:#6c8aa0}.activity-dot{border-color:#25bf8b}.activity-row time{color:#8a9aab}.footer{color:#778c9f}
.field>label,.field-label{color:#435d72}.field input,.field select,.field textarea,input.control,select.control,textarea.control{border-color:#dce7f0;color:#304c62;border-radius:8px}.field input:focus,.field select:focus,.field textarea:focus{outline-color:#7ec8f3}.info-banner{background:#edf8ff;border-color:#d9ebf8;color:#4b7794}.info-banner.warning{background:#fff8e9;border-color:#f2e5be;color:#9b7a36}.tabs{border-color:#e3ebf3}.tab{color:#718498}.tab.active{color:#0786dc;border-bottom-color:#0786dc}.filters{border-color:#e7edf4}.option{border-color:#dce8f1;color:#59758a}.option:has(input:checked){border-color:#62bce9;background:#edf8ff;color:#0874ba}.form-step{color:#59748a}.form-step.active{background:#e7f5ff;color:#087bc7}.form-toolbar{background:#fbfdff;border-color:#deebf4}.form-progress{background:#e4edf4}.form-progress span{background:#23c292}.document-paper{border-color:#e0eaf2}.markdown{color:#526d80}.markdown h2{color:#28546f}.markdown h3{color:#297c76}.paper-header{border-color:#e4edf4}.school-logo{border-radius:7px}
.login-story{background:linear-gradient(145deg,#e7f7ff,#edf8ff 55%,#e8f8f1)}.login-story h1{color:#214660}.login-story h1 em{color:#0786dc}.login-story p{color:#5c7d92}.login-story footer{color:#578199}.login-form-area{background:#fbfdff}.login-form h2{color:#274b65}.login-form>p,.login-footer{color:#698297}.demo-logins{border-color:#e3edf4}.demo-logins p{color:#7892a5}.demo-strip{background:#eef8ff;color:#44718e;border-color:#dbeefa}
.auth-public{background:var(--canvas);max-width:980px}.auth-public>.brand{padding:5px 0}.mobile-menu{color:#087bc7}@media(max-width:1250px){.shell{grid-template-columns:205px minmax(0,1fr)}.sidebar{width:205px}.page{padding:23px}.topbar{padding:0 23px}}@media(max-width:760px){.sidebar{width:238px}.page{padding:20px 16px 30px}.topbar{padding:0 16px}.hero{height:205px}.stats{gap:10px}.panel-heading{padding:16px}.panel-body{padding:16px}}

/* Tipografia Manrope, hospedada no próprio projeto. */
@font-face{font-family:"Manrope";src:url("/assets/fonts/Manrope-Regular.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"Manrope";src:url("/assets/fonts/Manrope-Medium.ttf") format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:"Manrope";src:url("/assets/fonts/Manrope-SemiBold.ttf") format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:"Manrope";src:url("/assets/fonts/Manrope-Bold.ttf") format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:"Manrope";src:url("/assets/fonts/Manrope-ExtraBold.ttf") format("truetype");font-weight:800;font-style:normal;font-display:swap}
:root,button,input,select,textarea{font-family:"Manrope","Segoe UI",Arial,sans-serif}body{font-weight:400}.page-heading h1,.login-story h1,.login-form h2,.auth-public h1{font-family:"Manrope","Segoe UI",Arial,sans-serif;font-weight:800;letter-spacing:-1.15px}.hero h2,.tip-card h3{font-family:"Manrope","Segoe UI",Arial,sans-serif;font-weight:700;letter-spacing:-.75px}.page-heading p,.panel-heading p,.login-form>p,.hint,.field small,.task-row small,.library-item p,.user-card>p{font-weight:400}.panel-heading h2,.field>label,.field-label,.stat-top,.breadcrumb strong,.profile strong,.school-label,.student-cell strong,.task-row strong,.library-item h3,.user-card h3{font-weight:600}.button,.nav-item,.tab,.form-step,.option,.quiet-link,.badge,.top-date,.role-select,.login-footer{font-weight:600}.stat strong{font-weight:800}.brand-name{font-family:"Manrope","Segoe UI",Arial,sans-serif;font-weight:800}.brand-name small,.nav-label,.eyebrow{font-family:"Manrope","Segoe UI",Arial,sans-serif;font-weight:600}

/* Logo horizontal oficial NossoPEI, com o detalhe azul sob a figura verde. */
.brand-full-logo{display:block;width:176px;height:64px;object-fit:contain;object-position:left center;flex:0 0 auto}.brand-logo-mark{display:none}.sidebar .brand{padding-bottom:22px}.login-story .brand-full-logo{width:224px;height:90px}.auth-public .brand-full-logo{width:205px;height:78px}@media(max-width:760px){.brand-full-logo{width:154px;height:55px}.login-story .brand-full-logo{width:184px;height:72px}}

/* Restauração da versão compacta da marca. */
.brand-full-logo{display:none}.brand-logo-mark{display:block;width:43px;height:43px;flex:0 0 43px;border-radius:11px;background:#fff url("/assets/nosso-pei-logo.png") 50% 28%/235% auto no-repeat;box-shadow:0 4px 12px #0c4c6b18}.login-story .brand-logo-mark{width:56px;height:56px;flex-basis:56px;border-radius:14px}.login-story .brand-name{font-size:31px}.auth-public .brand-logo-mark{width:50px;height:50px;flex-basis:50px}@media(max-width:760px){.brand-logo-mark{width:39px;height:39px;flex-basis:39px}.brand-name{font-size:24px}.brand-name small{font-size:6.5px;letter-spacing:.7px}}

/* Logo horizontal NossoPEI enviado pelo cliente. */
.brand-logo-mark{display:none}.brand-full-logo{display:block;width:178px;height:63px;object-fit:contain;object-position:left center;flex:0 0 auto}.sidebar .brand{padding-bottom:21px}.login-story .brand-full-logo{width:242px;height:86px}.auth-public .brand-full-logo{width:215px;height:76px}@media(max-width:760px){.brand-full-logo{width:158px;height:56px}.login-story .brand-full-logo{width:200px;height:71px}}

/* Tela inicial: direção "Cada trajetória importa". */
.welcome-page{min-height:100vh;grid-template-columns:minmax(0,1.16fr) minmax(390px,.84fr);background:#fff}.welcome-page .login-story{padding:46px 8vw 42px;justify-content:center;background:linear-gradient(115deg,#fff 54%,#f4faff);overflow:hidden}.welcome-page .login-story:before{content:"";position:absolute;width:270px;height:270px;right:-125px;top:8%;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fff5dc,#ffe4b6);opacity:.75}.welcome-page .login-story:after{content:"";position:absolute;width:380px;height:180px;left:-135px;bottom:-112px;border-radius:50%;background:#dff5f1}.welcome-brand{display:flex;align-items:center;justify-content:space-between;gap:18px;position:relative;z-index:1;margin-bottom:58px}.welcome-brand>span{font-size:9px;line-height:1.3;letter-spacing:1px;color:#5f819b;font-weight:700;max-width:155px;text-align:right}.welcome-page .login-story>.eyebrow{position:relative;z-index:1;color:#497087;margin-bottom:10px;letter-spacing:1.8px}.welcome-page .login-story h1{position:relative;z-index:1;max-width:660px;font-size:56px;line-height:1.04;color:#073765;letter-spacing:-2.6px;margin:0}.welcome-page .login-story h1 em{color:#087ed8;font-style:normal}.welcome-page .login-story h1 em:after{content:"";display:inline-block;width:9px;height:9px;border-radius:50%;background:#ff991a;margin:0 0 5px 4px}.welcome-page .login-story>p{position:relative;z-index:1;max-width:600px;color:#466780;font-size:15px;line-height:1.65;margin:17px 0 21px}.welcome-actions{position:relative;z-index:1;display:flex;gap:10px;flex-wrap:wrap}.welcome-actions .button{padding:11px 18px;border-radius:24px}.welcome-actions .button.secondary{background:#fff;border-color:#48a5dc;color:#0878c5}.welcome-pillars{position:relative;z-index:1;display:flex;gap:25px;flex-wrap:wrap;margin-top:30px;color:#668095;font-size:11px;font-weight:600}.welcome-pillars span{display:inline-flex;align-items:center;gap:7px}.welcome-pillars .icon{width:19px;height:19px;color:#0786dc}.welcome-page .login-story footer{position:relative;z-index:1;color:#3f6683;font-size:9px;font-weight:700;letter-spacing:1.1px;margin-top:42px}.welcome-page .login-form-area{background:#f7fbff;padding:34px 5vw;align-items:center;border-left:1px solid #e8f0f6}.welcome-page .login-form{max-width:390px;width:100%;padding:29px;border:1px solid #e0ebf4;border-radius:16px;background:#fff;box-shadow:0 12px 34px #12466b0c}.welcome-page .login-form h2{font-size:26px}.welcome-page .login-form>p{margin-bottom:24px}.welcome-page .demo-logins{margin-top:22px;padding-top:19px}.welcome-page .login-footer{margin-top:18px!important}
@media(max-width:900px){.welcome-page{grid-template-columns:1fr}.welcome-page .login-story{padding:34px 8vw}.welcome-page .login-form-area{border-left:0;border-top:1px solid #e8f0f6;padding:34px 8vw}.welcome-page .login-form{max-width:540px}.welcome-brand{margin-bottom:38px}}@media(max-width:560px){.welcome-page .login-story{padding:27px 25px 34px}.welcome-page .login-story h1{font-size:40px;letter-spacing:-1.8px}.welcome-page .login-story>p{font-size:13px}.welcome-brand{margin-bottom:31px}.welcome-brand>span{display:none}.welcome-pillars{gap:13px;font-size:10px;margin-top:24px}.welcome-page .login-form-area{padding:27px 18px 40px}.welcome-page .login-form{padding:22px}.welcome-page .login-story:before{width:160px;height:160px;right:-85px;top:12%}}

/* Explicação simples da plataforma na página inicial. */
.platform-explainer .description{font-size:15px;line-height:1.65;color:#40536d;margin:0}.explainer-list{display:grid;gap:10px;margin:20px 0 16px}.explainer-list>div{display:flex;align-items:flex-start;gap:12px;padding:14px;border:1px solid #dce9f4;border-radius:14px;background:#f7fbff}.explainer-list .icon{width:21px;height:21px;color:#1385d5;flex:0 0 auto;margin-top:2px}.explainer-list strong{display:block;color:#17365d;font-size:14px;font-weight:800}.explainer-list p{margin:3px 0 0;color:#5f7189;font-size:13px;line-height:1.45}.explainer-closing{display:block;line-height:1.55;color:#47617c}

/* Ajuste cromático solicitado: textos neutros e antigos acentos verdes em azul-claro. */
:root{--ink:#29323d;--muted:#687482;--green:#2398d4;--green-dark:#147fb9;--soft:#eff9ff;--accent:#dff3ff}
body,.breadcrumb strong,.page-heading h1,.panel-heading h2,.field>label,.field-label,.field input,.field select,.field textarea,input.control,select.control,textarea.control,.markdown,.markdown h2,.platform-explainer .description,.explainer-list strong{color:#29323d}
.eyebrow,.hero .eyebrow,.welcome-page .login-story>.eyebrow,.brand-name small,.help-card h3,.help-card p,.field small,.hint,.quiet-link,.badge,.badge.gray,.progress-label,.activity-row p,.activity-row time,.journey-row>span,.journey-caption,.tip-card h3,.tip-card p,.footer,.data-item small,.step-card p,.doc-card p,.form-step,.form-step small,.option,.form-toolbar small,.login-story p,.login-form>p,.login-footer,.login-story footer,.check-label{color:#4b5561}
.help-card{background:#eef8ff;border-color:#d9edf9}.avatar.tone1{background:#e3f4ff;color:#2587bd}.stat-icon,.stat-icon.blue,.badge,.progress{background:#e5f5ff}.badge{color:#3d596d}.badge.blue{background:#dff2ff;color:#39718f}.progress span{background:#70c8ef}.activity-dot{border-color:#75cdef}.button.light{background:#e6f6ff;border-color:#cfeafa;color:#3a5769}.info-banner{background:#edf8ff;border-color:#d5ebf9;color:#465d70}.form-step.active{background:#e5f5ff;color:#3c637b}.tab.active{border-bottom-color:#66c6ed}.option:has(input:checked){background:#e9f7ff;border-color:#83d0f1;color:#354f62}.check-label input{accent-color:#5dbfe9}.welcome-page .login-story:after{background:#dff3ff}

/* UX: atalhos diretos para a primeira ação, com menos navegação e menos leitura. */
.quick-start{border:1px solid #d9eaf5;border-radius:14px;background:#f8fcff;padding:20px;margin:0 0 20px}.quick-start-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.quick-start .eyebrow{margin-bottom:5px;color:#51606d}.quick-start h2{font-size:17px;color:#29323d}.quick-start p{margin-top:3px;color:#65717e;font-size:12px}.quick-start-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.quick-action{display:flex;align-items:center;gap:10px;width:100%;min-height:86px;padding:13px;border:1px solid #dcebf4;border-radius:11px;background:#fff;color:#344250;text-align:left;transition:.18s}.quick-action:hover{border-color:#7dc8ed;background:#f2fbff;transform:translateY(-1px);box-shadow:0 6px 16px #33779d12}.quick-action-icon{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:9px;background:#e4f5ff;color:#258fc5}.quick-action-icon .icon{width:18px;height:18px}.quick-action>span:nth-child(2){min-width:0;flex:1}.quick-action strong{display:block;font-size:12px;color:#2c3844}.quick-action small{display:block;margin-top:3px;color:#687583;font-size:10px;line-height:1.4}.quick-action>.icon{width:15px;height:15px;color:#6cbce4;flex:0 0 auto}@media(max-width:900px){.quick-start-actions{grid-template-columns:1fr}.quick-action{min-height:64px}}@media(max-width:560px){.quick-start{padding:16px}.quick-start h2{font-size:16px}.quick-action{padding:11px}.quick-action small{font-size:9px}}
.action-queue,.pei-readiness{margin:0 0 20px;border:1px solid #d9eaf5;border-radius:14px;background:#fff;padding:20px}.action-queue-heading,.pei-readiness-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.action-queue h2,.pei-readiness h2{margin:3px 0 0;font-size:17px;color:#29323d}.action-queue p,.pei-readiness p{margin-top:4px;color:#65717e;font-size:12px;line-height:1.5}.action-queue-list,.pei-readiness-list{display:grid;gap:8px}.action-queue-item,.pei-readiness-row{display:flex;align-items:center;gap:11px;width:100%;min-height:64px;padding:11px 12px;border:1px solid #e0edf5;border-radius:10px;background:#fafdff;color:#344250;text-align:left}.action-queue-item{cursor:pointer;transition:.18s}.action-queue-item:hover{background:#f0f9ff;border-color:#8bcdf0}.action-queue-item>span:nth-child(2),.pei-readiness-row>div{min-width:0;flex:1}.action-queue-item strong,.pei-readiness-row strong{display:block;font-size:12px;color:#2c3844}.action-queue-item small,.pei-readiness-row small{display:block;margin-top:3px;color:#6b7784;font-size:10px;line-height:1.4}.action-queue-item>.icon{width:15px;height:15px;color:#66b8e1;flex:0 0 auto}.action-queue-icon,.pei-readiness-state{display:grid;place-items:center;width:33px;height:33px;flex:0 0 auto;border-radius:9px;background:#e5f4ff;color:#258fc5}.action-queue-icon .icon,.pei-readiness-state .icon{width:17px;height:17px}.pei-readiness{background:#f8fcff}.pei-readiness-score{display:flex;flex-direction:column;align-items:flex-end;padding:6px 10px;border-radius:9px;background:#e4f5ff;color:#167aae;white-space:nowrap}.pei-readiness-score strong{font-size:16px}.pei-readiness-score small{font-size:9px}.pei-readiness-row{background:#fff}.pei-readiness-state.done{background:#e1f7ee;color:#15966d}.pei-readiness-state.waiting{background:#fff4da;color:#ba7a13}.action-queue-empty{display:flex;align-items:center;gap:8px;padding:12px;border-radius:10px;background:#f2fbf7;color:#33735d;font-size:12px}.action-queue-empty .icon{width:17px;height:17px}@media(max-width:560px){.action-queue,.pei-readiness{padding:16px}.action-queue-heading,.pei-readiness-heading{gap:10px}.action-queue h2,.pei-readiness h2{font-size:16px}.action-queue-item{min-height:60px}.pei-readiness-score{padding:5px 7px}}

/* Fluxos administrativos solicitados no perfil do gestor. */
.password-control{display:flex;align-items:stretch}.password-control input{min-width:0;flex:1;border-radius:8px 0 0 8px!important}.password-toggle{border:1px solid #dce7f0;border-left:0;background:#f5faff;color:#1977ad;border-radius:0 8px 8px 0;padding:0 12px;font-size:11px;font-weight:700}.password-toggle:hover{background:#e8f6ff}.contact-link{display:inline-flex;align-items:center;gap:5px;margin-top:8px}.contact-link .icon{width:14px;height:14px}.pending-summary{margin-bottom:20px}.pending-student{display:grid;grid-template-columns:minmax(170px,.35fr) 1fr;gap:18px;padding:14px 0;border-bottom:1px solid var(--line)}.pending-student:first-child{padding-top:0}.pending-student:last-child{padding-bottom:0;border-bottom:0}.pending-student>div:first-child strong,.pending-student>div:first-child small{display:block}.pending-student>div:first-child small{color:var(--muted);margin-top:3px}.pending-person{display:inline-flex;align-items:flex-start;gap:8px;margin:0 15px 9px 0}.pending-person .icon{width:16px;height:16px;color:#dc9020;margin-top:2px}.pending-person strong,.pending-person small{display:block}.pending-person strong{font-size:11px}.pending-person small{color:var(--muted);font-size:10px}.class-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.class-detail-grid section>h3{margin-bottom:12px}.class-person{width:100%;display:flex;align-items:center;gap:10px;padding:10px 0;border:0;border-bottom:1px solid var(--line);background:none;text-align:left}.class-person>span{min-width:0;flex:1}.class-person strong,.class-person small{display:block}.class-person small{color:var(--muted);margin-top:2px}.class-person>.icon{width:16px;height:16px;color:var(--muted)}@media(max-width:700px){.pending-student,.class-detail-grid{grid-template-columns:1fr}.pending-student{gap:10px}}

/* Administração da plataforma, isolada das áreas internas das escolas. */
.platform-page{min-height:100vh;background:var(--canvas)}.platform-top{min-height:82px;padding:14px max(28px,5vw);display:flex;align-items:center;justify-content:space-between;gap:20px;background:#fff;border-bottom:1px solid var(--line)}.platform-top .brand{max-width:190px}.platform-top .row>div strong,.platform-top .row>div small{display:block}.platform-top .row>div small{color:var(--muted);font-size:10px}.platform-page>.page{max-width:1280px}.platform-page .panel{margin-top:20px}@media(max-width:700px){.platform-top{align-items:flex-start;flex-direction:column}.platform-top .row{flex-wrap:wrap}.platform-page .stats{grid-template-columns:1fr}}

/* Navegação e biblioteca mais diretas para o uso diário. */
.sidebar{padding-top:18px}.sidebar .brand{padding-bottom:17px}.school-label{margin-bottom:13px}.nav-label{margin-top:15px}.nav-item{min-height:40px}.nav-item.active{box-shadow:none}.sidebar-bottom .help-card{display:none}.library-intro{display:flex;align-items:center;gap:14px;padding:17px 19px;margin:0 0 18px;border:1px solid #d9ebf6;border-radius:12px;background:linear-gradient(100deg,#f5fbff,#fff)}.library-intro>div:first-child{display:grid;place-items:center;width:39px;height:39px;border-radius:10px;background:#dff3ff;color:#218dc4}.library-intro>div:nth-child(2){min-width:0;flex:1}.library-intro strong{display:block;color:#2c3945;font-size:13px}.library-intro p{margin-top:3px;color:#667481;font-size:11px;line-height:1.5}.questionnaire-item{gap:12px}.questionnaire-item>div{min-width:0;flex:1}.questionnaire-meta{color:#698096;font-size:10px;font-weight:600}.questionnaire-item .button{flex-shrink:0}@media(max-width:760px){.library-intro{align-items:flex-start;flex-wrap:wrap;padding:15px}.library-intro .button{margin-left:53px}.questionnaire-item{align-items:flex-start;flex-wrap:wrap}.questionnaire-item .button{margin-left:50px}.questionnaire-item .button+.button{margin-left:0}}

/* Identidade NossoPEI: azul-marinho, azul vivo, azul-claro e coral do novo logotipo. */
:root{--ink:#082a54;--muted:#607490;--green:#258ff5;--green-dark:#126fd6;--line:#dce9f7;--canvas:#f6faff;--soft:#edf6ff;--accent:#dcefff;--coral:#ff805e;--coral-soft:#fff0eb}
.brand-full-logo{width:190px;height:auto;object-fit:contain}.sidebar .brand{padding-bottom:10px}.login-story .brand-full-logo{width:268px;height:auto}.auth-public .brand-full-logo{width:224px;height:auto}
.button{background:#258ff5;border-color:#258ff5}.button:hover{background:#126fd6}.nav-item.active{background:#258ff5}.nav-item:hover{background:#edf6ff;color:#126fd6}.eyebrow,.welcome-page .login-story>.eyebrow{color:#126fd6}.hero h2 em,.welcome-page .login-story h1 em{color:#258ff5}.welcome-page .login-story h1 em:after{background:#ff805e}.welcome-page .login-story:before{background:radial-gradient(circle at 35% 35%,#fff6f2,#ffd9cc)}.welcome-page .login-story:after{background:#dcefff}.stat-icon,.stat-icon.blue,.quick-action-icon{background:#e2f3ff;color:#187fdc}.stat-icon.amber,.badge.amber{background:#fff0eb;color:#d8664d}.badge{background:#e5f3ff;color:#315d83}.progress span{background:#4aa6f5}.activity-dot{border-color:#72bdf6}.button.danger{background:var(--coral-soft);border-color:#ffd8ce;color:#c95c47}.info-banner.warning{background:#fff6f2;border-color:#ffd9cc;color:#9b5b4b}.welcome-actions .button.secondary{border-color:#9ccdf5;color:#126fd6}.platform-explainer .description,.explainer-list strong{color:#082a54}.explainer-list .icon{color:#258ff5}.library-intro>div:first-child{background:#dcefff;color:#258ff5}.quick-action:hover{border-color:#8fc8f5;background:#f5fbff}@media(max-width:760px){.brand-full-logo{width:158px}.login-story .brand-full-logo{width:210px}.auth-public .brand-full-logo{width:190px}}

.login-mode-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:5px;margin:0 0 22px;border:1px solid #dce9f4;border-radius:11px;background:#f4f9fd}.login-mode{border:0;border-radius:8px;padding:9px 7px;background:transparent;color:#58718a;font-size:10px;line-height:1.3;font-weight:800}.login-mode:hover{color:#126fd6;background:#e8f4fe}.login-mode.active{background:#fff;color:#082a54;box-shadow:0 2px 7px #164d7217}.profile-access-link{margin-top:13px;color:#126fd6}.profile-access-link .icon{width:14px;height:14px}
@media(max-width:420px){.login-mode{font-size:9px;padding:9px 4px}}

.survey-choice-list{display:grid;gap:10px}.survey-choice{display:grid;grid-template-columns:minmax(150px,.75fr) minmax(200px,1.25fr);gap:4px 15px;align-items:center;padding:14px;border:1px solid #dce9f4;border-radius:12px;background:#f8fbff}.survey-choice strong{font-size:12px;color:#082a54}.survey-choice p,.survey-choice small{margin:2px 0 0;font-size:10px;color:#607490}.survey-choice small{grid-column:2;line-height:1.45}@media(max-width:560px){.survey-choice{grid-template-columns:1fr}.survey-choice small{grid-column:1}}

.catalog-workspace{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:18px;align-items:start}.catalog-menu,.catalog-reader{background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow)}.catalog-menu{max-height:720px;overflow:auto}.catalog-menu-heading{display:flex;align-items:center;justify-content:space-between;padding:19px 18px 13px;border-bottom:1px solid var(--line)}.catalog-menu-heading h2{font-size:15px}.catalog-model{display:grid;grid-template-columns:25px minmax(0,1fr) 16px;align-items:center;gap:10px;width:100%;padding:13px 15px;text-align:left;border:0;border-bottom:1px solid #edf2f7;background:#fff;color:#36506b}.catalog-model:hover{background:#f3f9ff}.catalog-model.active{background:#e8f4ff;color:#082a54}.catalog-model>span:first-child{color:#258ff5}.catalog-model strong,.catalog-model small{display:block}.catalog-model strong{font-size:11px;line-height:1.35}.catalog-model small{margin-top:3px;color:#6e849a;font-size:9px;line-height:1.35}.catalog-model .icon{width:15px;height:15px}.catalog-reader{padding:25px}.catalog-reader-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:18px;border-bottom:1px solid var(--line)}.catalog-reader-heading h2{font-size:19px;color:#082a54}.catalog-reader-heading p{margin-top:6px;color:#607490;font-size:12px;line-height:1.6}.question-preview-list{display:grid;gap:9px;padding-top:19px}.question-preview{display:grid;grid-template-columns:32px 1fr;gap:11px;padding:13px;border:1px solid #e1edf7;border-radius:11px;background:#fbfdff}.question-preview>span{font-size:10px;font-weight:800;color:#258ff5;padding-top:2px}.question-preview small{display:block;margin-bottom:4px;color:#607490;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.question-preview p{font-size:12px;line-height:1.55;color:#29323d}@media(max-width:860px){.catalog-workspace{grid-template-columns:1fr}.catalog-menu{max-height:330px}.catalog-reader{padding:18px}}@media(max-width:500px){.catalog-reader-heading{display:block}.catalog-reader-heading .button{margin-top:12px}}

/* Sondagens por competência: grade de marcação inspirada nos instrumentos pedagógicos. */
.form-section-heading{align-items:flex-start}.form-section-heading p{max-width:650px}.rating-table-wrap{overflow:auto;border-top:1px solid var(--line)}.rating-table{min-width:760px;border-collapse:separate;border-spacing:0;font-size:12px}.rating-table th,.rating-table td{padding:0;border-right:1px solid #dce7f2;border-bottom:1px solid #dce7f2;vertical-align:middle}.rating-table th:last-child,.rating-table td:last-child{border-right:0}.rating-table thead th{position:sticky;top:0;z-index:1;background:#226cad;color:#fff;border-color:#4984bc;padding:13px 12px;font-size:10px;font-weight:800;text-transform:none;letter-spacing:0;white-space:normal}.rating-table thead th:first-child{min-width:265px;text-align:left}.rating-head{min-width:112px;text-align:center}.rating-head span:last-child{display:block;margin-top:5px;font-size:9px;line-height:1.25}.rating-dot{display:inline-block;width:14px;height:14px;border-radius:50%;box-shadow:inset 0 1px 2px #0003,0 1px 2px #0002}.rating-head.red .rating-dot{background:linear-gradient(135deg,#ff6f77,#d81e46)}.rating-head.yellow .rating-dot{background:linear-gradient(135deg,#ffe581,#f2b72f)}.rating-head.green .rating-dot{background:linear-gradient(135deg,#88f0a3,#1caf74)}.rating-head.blue .rating-dot{background:linear-gradient(135deg,#8fd1ff,#2389e8)}.rating-table tbody tr:nth-child(even){background:#f6f9fc}.rating-table tbody tr:hover{background:#edf7ff}.rating-table tbody td:first-child{min-width:265px;padding:14px 15px;color:#26394e}.rating-table tbody td:first-child strong{font-size:12px;font-weight:600;line-height:1.45}.rating-number{display:inline-block;margin-right:8px;color:#298ce6;font-size:9px;font-weight:800;vertical-align:top;padding-top:2px}.rating-table .required{color:#ff805e;margin-left:4px}.rating-choice{width:112px;text-align:center;background:transparent}.rating-choice label{display:grid;place-items:center;min-height:55px;cursor:pointer}.rating-choice input{appearance:none;width:20px;height:20px;margin:0;border:2px solid #9bb5c9;border-radius:50%;background:#fff;cursor:pointer;transition:.15s}.rating-choice input:checked{border-color:#258ff5;box-shadow:inset 0 0 0 4px #fff;background:#258ff5}.rating-choice input:focus-visible{outline:3px solid #8bcaf7;outline-offset:3px}.rating-choice input:disabled{cursor:default;background:#f2f5f7}.rating-notes{display:block;width:100%;min-width:190px;min-height:58px;padding:9px 10px;border:0;background:transparent;color:#32475e;font:inherit;font-size:11px;line-height:1.45;resize:vertical}.rating-notes:focus{outline:2px solid #83c9f3;outline-offset:-2px;background:#fff}.rating-notes::placeholder{color:#91a1b0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:760px){.form-section-heading p{font-size:10px}.rating-table{min-width:670px}.rating-table thead th:first-child,.rating-table tbody td:first-child{min-width:210px}.rating-head,.rating-choice{min-width:82px;width:82px}.rating-head span:last-child{font-size:8px}.rating-notes{min-width:155px}.rating-table tbody td:first-child{padding:12px}.rating-table tbody td:first-child strong{font-size:11px}.rating-choice label{min-height:52px}}

.catalog-question-section{display:block;margin-bottom:4px;color:#587c9c;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.35px}

/* Orientação e legenda que acompanham o instrumento, antes do preenchimento. */
.questionnaire-guidance{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 22px;border-bottom:1px solid var(--line);background:#f8fbff}.questionnaire-guidance strong{display:block;color:#082a54;font-size:12px}.questionnaire-guidance p{margin:3px 0 0;color:#607490;font-size:11px;line-height:1.5;max-width:560px}.rating-legend{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.rating-legend span{display:inline-flex;align-items:center;gap:5px;color:#435d73;font-size:10px;font-weight:700;white-space:nowrap}.rating-legend i{width:10px;height:10px;border-radius:50%;display:inline-block}.rating-legend .red i{background:#e73358}.rating-legend .yellow i{background:#f1ba38}.rating-legend .green i{background:#27b373}.rating-legend .blue i{background:#258ff5}.catalog-reader .questionnaire-guidance{margin-top:16px;border:1px solid #dce9f7;border-radius:10px}.catalog-reader .questionnaire-guidance p{max-width:430px}@media(max-width:760px){.questionnaire-guidance{align-items:flex-start;flex-direction:column;padding:14px}.rating-legend{justify-content:flex-start}}

.preview-options {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 8px;
}
.preview-options li {
  display: flex;
  gap: 8px;
  align-items: flex-start;
  line-height: 1.4;
}

/* Logotipo da escola no menu e página de dados da escola. */
.sidebar-school-logo {
  width: 22px;
  height: 22px;
  object-fit: contain;
  border-radius: 4px;
  flex: 0 0 auto;
}
.school-profile {
  display: grid;
  gap: 18px;
}
.school-profile .school-logo {
  max-width: 180px;
  max-height: 90px;
  object-fit: contain;
}
.school-logo-empty {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--muted);
}

/* Logotipo no cadastro da escola (administração da plataforma). */
.platform-school-logo {
  display: block;
  max-width: 160px;
  max-height: 80px;
  object-fit: contain;
  margin-bottom: 16px;
}

/* Etapas oferecidas e contato da escola no cabeçalho dos documentos. */
.check-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.paper-contact {
  font-size: 12px;
  color: var(--muted);
  margin-top: 2px;
}
@media (max-width: 480px) {
  .check-grid {
    grid-template-columns: 1fr;
  }
}

/* Texto do termo aceito pela família. */
.consent-term {
  max-height: 320px;
  overflow: auto;
  white-space: pre-wrap;
  background: var(--soft);
  padding: 14px;
  border-radius: 8px;
  font-size: 13px;
  line-height: 1.5;
}
