.sme-atr{--navy:#153456;--brand:#165e92;--light:#eef5fb;--line:#d7e1ea;--ink:#23394e;color:var(--ink);max-width:1450px}
.sme-atr *, .sme-atr *:before, .sme-atr *:after{box-sizing:border-box}
.sme-top{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 22px;margin:15px 0 18px;border:1px solid #b7d0e3;border-radius:14px;background:linear-gradient(120deg,#153456,#19638d);color:white}
.sme-top h1,.sme-top h2{font-weight:720;line-height:1.2;margin:0 0 8px;color:#fff;font-size:25px}
.sme-top p{color:#e3f1fa;margin:0}.sme-tag{border-radius:20px;padding:7px 12px;background:#ffffff2d;color:white;font-size:12px;font-weight:700}
.sme-nav{display:flex;gap:7px;flex-wrap:wrap;background:white;border:1px solid var(--line);padding:10px;border-radius:12px;margin-bottom:18px}
.sme-nav a{color:var(--navy);text-decoration:none;padding:9px 11px;border-radius:8px;font-weight:600}
.sme-nav a.current,.sme-nav a:hover{background:#d9edf9;color:#064b79}
.sme-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:15px 0 22px}
.sme-stat{display:flex;flex-direction:column;gap:11px;background:white;text-decoration:none;border:1px solid var(--line);border-radius:13px;padding:18px;color:var(--ink);min-height:102px;box-shadow:0 2px 7px #17375409}
.sme-stat span{font-size:13px;font-weight:600;color:#586f84}.sme-stat strong{font-size:29px;color:#153456}.sme-stat.alert{border-left:5px solid #b42318;background:#fff9f8}
.sme-cols{display:grid;grid-template-columns:1fr 1fr;gap:18px}.sme-card{padding:20px;margin:18px 0;background:white;border:1px solid var(--line);border-radius:14px;box-shadow:0 2px 7px #17375409}
.sme-card h2,.sme-card h3{margin:0 0 17px;font-size:18px;color:var(--navy)}
.sme-bar{display:grid;grid-template-columns:minmax(70px,130px) 1fr 40px;align-items:center;gap:9px;margin:12px 0;font-size:13px}
.sme-bar>div{height:13px;border-radius:8px;background:#e8f1f8;overflow:hidden}.sme-bar i{display:block;height:100%;background:linear-gradient(90deg,#2b7fae,#56a9cc);border-radius:8px}
.sme-bar b{text-align:right}.sme-year,.sme-filters{display:flex;gap:11px;align-items:end;flex-wrap:wrap;margin:17px 0;padding:13px;background:#fff;border:1px solid var(--line);border-radius:9px}
.sme-filters label,.sme-year label,.sme-form-grid label{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:600}
.sme-filters input,.sme-filters select,.sme-year input,.sme-form-grid input,.sme-form-grid select,.sme-form-grid textarea{max-width:100%;min-width:150px;border:1px solid #c9d6e2;border-radius:6px;padding:8px}
.sme-table-wrap{overflow-x:auto;background:white;border:1px solid var(--line);border-radius:10px;margin:14px 0}
.sme-table th,.sme-view-table th{background:#eaf3fa;color:#183f60;white-space:nowrap;text-align:left}
.sme-table th,.sme-table td,.sme-view-table th,.sme-view-table td{padding:11px 12px;border-bottom:1px solid #e4ebf0;vertical-align:top;font-size:13px}
.sme-table td{max-width:220px;word-break:break-word}.sme-table tr:hover td,.sme-view-table tr:hover td{background:#f6fafd}
.sme-view-table{border-collapse:collapse;width:100%}.sme-warning{color:#a31712;background:#fde8e7;border-radius:5px;padding:4px 7px;font-weight:bold}
.sme-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:15px 0}
.sme-editor{margin-top:25px}.sme-editor p{margin:18px 0 2px}
.sme-tabs{padding:12px;background:#f2f6fa;border-radius:9px}.sme-tabs a{margin-right:9px}
.sme-foot{font-size:12px;color:#63778b;padding:10px 4px}.sme-portal{margin:22px auto;font-family:inherit}.sme-portal-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.sme-portal .sme-field{font-size:17px;overflow-wrap:anywhere}.sme-button{display:inline-block;padding:9px 15px;text-decoration:none;background:#165e92;color:#fff;border-radius:8px}
@media(max-width:1100px){.sme-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sme-portal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:750px){.sme-grid,.sme-cols,.sme-form-grid,.sme-portal-grid{grid-template-columns:1fr}.sme-top{align-items:start}.sme-bar{grid-template-columns:90px 1fr 30px}.sme-top h1,.sme-top h2{font-size:20px}}

/* Editor first: edit action has a visible destination and a safe cancel path. */
.sme-list-heading,.sme-editor-title{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.sme-list-heading{margin:6px 0 12px}.sme-list-heading h2,.sme-editor-title h2{margin:0}
.sme-editor{margin:14px 0 22px;border-left:5px solid #16689f;scroll-margin-top:55px}
.sme-editor:focus{outline:2px solid #b3d7ef;outline-offset:2px}
.sme-edit-context{background:#eef5fb;border-radius:7px;padding:11px 13px;margin-top:12px!important}
.sme-editor .button-primary{min-height:39px;padding:5px 16px}
@media (max-width:750px){.sme-list-heading,.sme-editor-title{align-items:flex-start;flex-direction:column}}

/* v0.1.7 — vínculo automático de professor, escola e sala/turma. */
.sme-staff-relations{grid-column:1/-1;border:1px solid #b8d3e6;border-radius:12px;background:#f4f9fd;padding:15px;margin:12px 0}
.sme-staff-context-card{background:#fff;border:1px solid #d9e5ec;border-radius:10px;padding:14px;margin-top:10px}
.sme-staff-context-card h3{font-size:16px;margin:0 0 10px}
.sme-staff-context-card h4{font-size:14px;margin:14px 0 7px}
.sme-staff-name{font-weight:700;font-size:14px;margin:0 0 10px!important}
.sme-staff-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.sme-staff-detail{display:flex;flex-direction:column;background:#f4f8fb;padding:10px;border-radius:8px;min-width:0;gap:3px}
.sme-staff-detail strong{font-size:12px;color:#315574}.sme-staff-detail span{overflow-wrap:anywhere;font-size:13px}
.sme-staff-warning{color:#92220c;background:#fff0e9;border-left:3px solid #c94c25;padding:9px 11px;border-radius:3px}
.sme-staff-muted{color:#526d82;font-size:12px}
.sme-staff-room-list{margin:0 0 4px;padding:0;list-style:none;display:grid;gap:8px}
.sme-staff-room{border:1px solid #d9e5ec;border-radius:8px;padding:9px 11px;display:flex;flex-wrap:wrap;gap:5px 10px;align-items:center;justify-content:space-between}
.sme-staff-room-title{font-weight:600;font-size:13px;flex:1 1 280px}.sme-staff-room small{color:#5b7385}
.sme-staff-room-actions{display:flex;flex-wrap:wrap;gap:5px}
@media(max-width:750px){.sme-staff-details{grid-template-columns:1fr}}

.sme-staff-room--return{border-left:4px solid #be3627;background:#fff4f2;color:#822016}
.sme-context-year{display:flex;align-items:center;gap:9px;font-weight:600;margin:8px 0}
.sme-context-year input{max-width:120px}

/* v0.1.8 – filtros dependentes (somente interface; gravação exige confirmação). */
.sme-assisted{border:1px solid #c4d2de;background:#f4f9fc;border-radius:10px;padding:16px;margin:14px 0}
.sme-assisted h3{margin:0 0 8px}.sme-assisted p{margin:7px 0 10px}
.sme-assisted-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}
.sme-assisted-grid label{display:block;font-weight:600}.sme-assisted-grid select{display:block;width:100%;max-width:100%;margin-top:4px}
.sme-assisted-status{font-size:13px;color:#476176}.sme-assisted-status.sme-alert{color:#ac2621;font-weight:bold}
.sme-assisted-note{font-size:12px;color:#547086}

/* v0.2.3: navegacao acessivel para as oito paginas Gutenberg/Hostinger. */
.sme-site-portal{margin:20px auto;width:100%;font-family:inherit}
.sme-site-nav{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 20px;padding:11px;border:1px solid #d7e1ea;border-radius:12px;background:#fff}
.sme-site-nav a{display:inline-flex;align-items:center;text-decoration:none;color:#153456;border-radius:8px;padding:9px 13px;font-weight:650;font-size:14px}
.sme-site-nav a:hover,.sme-site-nav a[aria-current="page"]{background:#e1f1fb;color:#114e79}
.sme-site-nav a:focus-visible,.sme-site-tile:focus-visible{outline:3px solid #1865a0;outline-offset:2px}
.sme-site-heading{background:linear-gradient(115deg,#153456,#17638a);color:#fff;padding:22px 24px;border-radius:14px;margin:12px 0 22px}
.sme-site-heading h2{color:white;margin:0 0 8px;font-size:26px;line-height:1.25}
.sme-site-heading p{color:#e4f4ff;margin:0;font-size:14px}
.sme-site-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:14px 0 22px}
.sme-site-tile{display:flex;flex-direction:column;gap:8px;border:1px solid #d7e1ea;border-radius:12px;padding:18px;color:#23394e;background:white;text-decoration:none;min-height:105px}
a.sme-site-tile:hover{border-color:#17638a;background:#f6fafc;color:#124f78}
.sme-site-tile strong{font-size:16px;line-height:1.3}.sme-site-tile span{font-size:13px;line-height:1.5;color:#536c80}
@media(max-width:900px){.sme-site-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.sme-site-grid{grid-template-columns:1fr}.sme-site-heading h2{font-size:21px}.sme-site-nav{gap:4px}.sme-site-nav a{padding:8px 10px}}

/* v0.2.4 — pagina inicial publica e pagina de acesso separada. */
.sme-home-hero{background:linear-gradient(120deg,#153456,#17648b);border-radius:18px;padding:34px 32px;color:#fff;margin:12px 0 24px}
.sme-home-hero h1{color:#fff;font-size:clamp(24px,3vw,36px);margin:11px 0;line-height:1.22;max-width:790px}
.sme-home-hero p{color:#eaf5fc;max-width:720px;font-size:15px;line-height:1.6}
.sme-home-eyebrow{font-weight:700;font-size:12px;letter-spacing:.12em;color:#d7edfc}
.sme-home-cta{display:inline-block;background:#fff;color:#143d5c!important;font-weight:750;padding:13px 20px;border-radius:9px;text-decoration:none;margin-top:12px}
.sme-home-cta:hover{background:#e8f4fc}
.sme-privacy-summary{border:1px solid #bed5e3;background:#f6f9fc;border-radius:12px;margin:22px 0;padding:20px}
.sme-privacy-summary h3{font-size:18px;color:#153456;margin:0 0 12px}
.sme-privacy-summary p{font-size:14px;line-height:1.65;margin:8px 0}
.sme-home-cta:focus-visible,.sme-privacy-summary a:focus-visible{outline:3px solid #edb343;outline-offset:3px}
@media(max-width:640px){.sme-home-hero{padding:24px 18px}}


/* v0.2.5 — login em Início e Acesso, inclusive se o tema omitir os blocos. */
.sme-atr .sme-login-shell{width:100%;max-width:560px;margin:16px auto 22px}
.sme-atr .sme-login-shell #sme-login-form{display:block;width:100%}
.sme-atr .sme-login-shell #sme-login-form p{display:block;margin:0 0 15px}
.sme-atr .sme-login-shell #sme-login-form label{display:block;font-weight:650;margin:0 0 5px}
.sme-atr .sme-login-shell #sme-login-form input[type=text],
.sme-atr .sme-login-shell #sme-login-form input[type=password]{display:block;width:100%;max-width:100%;min-height:44px;padding:10px 12px;border:1px solid #9fb6c9;border-radius:8px;background:#fff;color:#20384b;font-size:16px}
.sme-atr .sme-login-shell #sme-login-form input[type=submit]{display:inline-block;background:#165e92;border:0;border-radius:8px;color:#fff;padding:12px 22px;min-height:44px;font-weight:700;cursor:pointer}
.sme-atr .sme-login-shell #sme-login-form input:focus-visible{outline:3px solid #79bbec;outline-offset:1px}
.sme-atr .sme-login-help{font-size:13px;line-height:1.5}
.sme-atr .sme-login-switch{margin-left:15px}
.sme-home-login{padding:18px 20px;border-radius:14px;border:1px solid #d7e1ea;background:#f5f9fc;margin-top:18px}
.sme-home-login>h2{margin:2px 0 12px;color:#153456}
