/* Student directory: approachable imagery around a clear, practical workspace. */
.students-page{container-type:inline-size;color:#183553}
.students-intro{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(240px,.85fr);gap:32px;align-items:center;padding:23px 28px;border:1px solid #dce6f2;background:#edf3fc;border-radius:23px;overflow:hidden}
.students-intro .eyebrow{font-size:.75rem;color:#3f648b;letter-spacing:.105em}
.students-intro h1{font-size:clamp(1.8rem,2.4vw,2.4rem);line-height:1.18;letter-spacing:-.045em;font-weight:800;margin:12px 0 13px}
.students-intro h1 em{font-style:normal;color:#245bdd}
.students-intro-copy>p{max-width:475px;font-size:1rem;line-height:1.7;color:#526983;margin:0}
.students-intro .students-create{font-size:.875rem;min-height:48px;margin-top:19px;padding:12px 18px;border-radius:11px;box-shadow:0 6px 14px #245bdd17}
.students-intro-art{position:relative;margin:0;border:5px solid #fff;background:#fff;border-radius:20px;overflow:hidden;transform:rotate(1deg);box-shadow:0 15px 30px -25px #234e84}
.students-intro-art img{display:block;width:100%;height:175px;object-fit:cover;object-position:center 20%}
.students-intro-art figcaption{display:flex;align-items:center;justify-content:center;gap:8px;color:#2e675c;font-size:.8125rem;font-weight:650;padding:11px 8px;background:#fff}
.students-intro-art figcaption svg{width:17px;height:17px;flex-shrink:0}
.students-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:23px 0 26px;margin-bottom:31px;border-bottom:1px solid #dae4ef;gap:20px}
.students-overview>div{display:flex;align-items:center;gap:14px;padding:0 20px;border-right:1px solid #dae4ef;min-width:0}
.students-overview>div:first-child{padding-left:0}.students-overview>div:last-child{border-right:0;padding-right:0}
.students-overview-icon{height:44px;width:44px;border-radius:13px;display:grid;place-items:center;flex-shrink:0}
.students-overview-icon svg{width:21px;height:21px}.students-overview-icon.blue{background:#e4edff;color:#2e62cb}.students-overview-icon.amber{background:#fff0dc;color:#9b6317}.students-overview-icon.green{background:#e0f1eb;color:#1a7b63}
.students-overview>div>span:last-child{display:flex;flex-direction:column;gap:4px}
.students-overview strong{font-size:1.65rem;line-height:1.1;font-weight:800;color:#173957;letter-spacing:-.04em}
.students-overview small{font-size:.8125rem;line-height:1.5;color:#546c87}
.students-directory-head{display:flex;align-items:center;justify-content:space-between;gap:24px}
.students-directory-head .eyebrow{font-size:.75rem;letter-spacing:.1em;color:#627d9c}
.students-directory-head h2{font-size:1.5rem;letter-spacing:-.035em;font-weight:800;margin:8px 0 0;line-height:1.35}
.students-search{position:relative;display:flex;align-items:center;width:42%;max-width:420px;min-width:260px}
.students-search>svg{position:absolute;left:16px;width:20px;height:20px;color:#6f86a1;pointer-events:none}
.students-search #student-search{width:100%;min-width:0;min-height:51px;padding:12px 14px 12px 47px;border:1px solid #d5e1ef;border-radius:12px;font-size:.9375rem;line-height:1.5;color:#24435e;background:#fff;box-shadow:0 3px 9px #23426203}
.students-search #student-search::placeholder{color:#718399;opacity:1}
.students-search #student-search:focus-visible{outline:3px solid #245be0;outline-offset:3px;border-color:#245be0}
.students-demo-note{display:flex;align-items:center;gap:8px;font-size:.75rem;line-height:1.6;color:#617891;margin-top:15px}.students-demo-note>svg{width:16px;height:16px;flex-shrink:0;color:#6483a9}
.students-results-head{display:flex;align-items:center;justify-content:space-between;min-height:62px;gap:15px;font-size:.8125rem;color:#5d7690}
.students-results-head p{margin:0}.students-results-head strong{color:#244565}.students-results-head>span{font-size:.75rem;color:#6a8199}
.students-clear{display:flex;gap:7px;align-items:center;min-height:44px;padding:9px 0;background:transparent;border:0;color:#245bb5;font-size:.8125rem;font-weight:650}.students-clear svg{width:16px;height:16px}
.students-page .students-visual-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.students-page .student-profile-card{background:#fff;border:1px solid #dce5ef;box-shadow:0 6px 19px #17395704;border-radius:20px;padding:25px;min-width:0;display:flex;flex-direction:column;transition:box-shadow .2s,border-color .2s}
.students-page .student-profile-card:hover,.students-page .student-profile-card:focus-within{border-color:#b7cbe2;box-shadow:0 12px 27px -19px #143b6b66}
.student-profile-top{display:flex;align-items:center;gap:13px;margin-bottom:18px;min-width:0}
.student-portrait{display:block;width:76px;height:76px;border:4px solid #fff;border-radius:50%;background-image:url('./assets/students/estudantes-avatares.jpg');background-size:300% 200%;box-shadow:0 0 0 1px #dce5ef;flex-shrink:0}
.student-portrait.portrait-1{background-position:0 0}.student-portrait.portrait-2{background-position:50% 0}.student-portrait.portrait-3{background-position:100% 0}.student-portrait.portrait-4{background-position:0 100%}.student-portrait.portrait-5{background-position:50% 100%}.student-portrait.portrait-6{background-position:100% 100%}
.student-portrait.initials-portrait{background-image:none;display:grid;place-items:center;background:#e9f0ff}
.student-profile-card .initials-portrait .avatar{background:none;width:100%;height:100%;font-size:1.25rem;color:#355eaa}
.student-grade{display:flex;align-items:center;gap:6px;padding:7px 9px;border:1px solid #e6edf5;border-radius:7px;color:#466581;background:#f7f9fc;font-size:.8125rem;font-weight:600;line-height:1.4;overflow-wrap:anywhere}
.student-grade svg{width:16px;height:16px;flex-shrink:0;color:#6482a7}
.student-profile-top .student-edit{margin-left:auto;flex-shrink:0;align-self:flex-start;color:#6f849c;border:0;background:transparent;min-width:44px;min-height:44px;width:44px;height:44px}
.student-profile-top .student-edit:hover{color:#245be0;background:#edf3ff}
.student-identity h3{font-size:1.35rem;font-weight:800;line-height:1.35;letter-spacing:-.03em;margin:0 0 6px;overflow-wrap:anywhere;color:#183b59}
.student-identity p{font-size:.875rem;line-height:1.6;color:#637a91;margin:0;display:flex;gap:9px;flex-wrap:wrap}
.student-guardian{display:flex;gap:10px;align-items:center;margin:19px 0 22px;font-size:.875rem;color:#526d88}
.student-guardian>svg{width:18px;height:18px;flex-shrink:0;color:#7590ac}.student-guardian>span{display:flex;flex-direction:column;gap:3px;min-width:0}
.student-guardian small{font-size:.75rem;color:#6a8096}.student-guardian strong{font-size:.875rem;font-weight:600;color:#3b5873;overflow-wrap:anywhere}
.student-connection{display:flex;gap:10px;padding:15px;border:1px solid #e3ebf4;background:#f4f7fc;border-radius:11px;margin-top:auto;min-height:112px;color:#3b648e}
.student-connection-icon{padding-top:1px;flex-shrink:0}.student-connection-icon svg{width:18px;height:18px}
.student-connection>div{min-width:0}.student-connection small{display:block;font-size:.75rem;font-weight:650;line-height:1.4;margin-bottom:5px;color:#5b7690}
.student-connection strong{display:block;font-size:.875rem;font-weight:750;line-height:1.5;color:#284c71}.student-connection p{font-size:.8125rem;line-height:1.5;margin:4px 0 0;color:#617990;overflow-wrap:anywhere}
.student-connection.waiting{background:#fff9ee;border-color:#f2e8d4;color:#ae7a27}.student-connection.waiting strong{color:#855c1d}.student-connection.waiting small,.student-connection.waiting p{color:#876f4d}
.student-connection.scheduled{background:#eef8f3;border-color:#dceee5;color:#277a62}.student-connection.scheduled strong{color:#216c57}.student-connection.scheduled small,.student-connection.scheduled p{color:#537766}
.student-connection.recorded{background:#f2f5fc;border-color:#e3eaf5}
.students-page .student-actions{display:grid;grid-template-columns:1.1fr 1fr;gap:10px;padding-top:19px;margin-top:19px;border-top:1px solid #e6edf5}
.students-page .student-actions .btn{display:flex;justify-content:center;align-items:center;gap:7px;font-size:.875rem;line-height:1.45;min-height:46px;border-radius:9px;padding:10px;box-shadow:none;min-width:0}
.students-page .student-actions .btn svg{width:17px;height:17px;flex-shrink:0}
.students-page .student-actions .btn.secondary{background:#fff;border:1px solid #d7e3f1;color:#3b5f82}.students-page .student-actions .btn.secondary:hover{background:#f1f6fd;border-color:#aac1dc}
.students-page .empty-state{padding:42px 25px;background:#fff;border:1px dashed #c6d7e8;border-radius:20px}.students-page .empty-state h3{font-size:1.45rem}.students-page .empty-state p{font-size:1rem;line-height:1.7}
@container(min-width:1150px){.students-page .students-visual-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@container(max-width:720px){.students-intro{grid-template-columns:1fr;position:relative;padding:25px;gap:24px}.students-intro-copy{position:relative}.students-intro h1{font-size:2rem}.students-intro-art{max-width:420px;width:100%;transform:none}.students-intro-art img{height:175px;object-position:center 45%}.students-overview{gap:12px}.students-overview>div{padding:0 10px;gap:9px}.students-overview-icon{width:34px;height:34px;border-radius:10px}.students-overview-icon svg{width:18px;height:18px}.students-overview strong{font-size:1.45rem}.students-overview small{font-size:.75rem}.students-directory-head{align-items:flex-start;flex-direction:column;gap:18px}.students-search{width:100%;max-width:none;min-width:0}.students-page .students-visual-grid{gap:17px}.students-page .student-profile-card{padding:21px}.student-profile-top{gap:10px}.student-portrait{height:64px;width:64px}.student-grade{font-size:.75rem;padding:6px}.student-profile-top .student-edit{margin-left:auto}.students-page .student-actions{grid-template-columns:1fr}.students-page .student-actions .btn{font-size:.875rem}.students-results-head>span{display:none}}
@container(max-width:570px){.students-page .students-visual-grid{grid-template-columns:1fr}.students-intro{padding:22px;gap:20px}.students-intro h1{font-size:1.9rem}.students-intro .eyebrow{font-size:.75rem}.students-intro-copy>p{font-size:.9375rem}.students-intro-art{display:none}.students-overview{padding:21px 0;gap:13px;margin-bottom:27px}.students-overview>div{display:block;padding:0 10px}.students-overview-icon{width:33px;height:33px;margin-bottom:10px}.students-overview>div>span:last-child{gap:6px}.students-overview strong{font-size:1.5rem}.students-overview small{font-size:.75rem;line-height:1.5}.students-directory-head h2{font-size:1.4rem}.students-directory-head .eyebrow{font-size:.75rem}.students-demo-note{font-size:.75rem;align-items:flex-start}.students-demo-note>svg{margin-top:2px}.students-page .student-profile-card{padding:23px}.student-portrait{width:78px;height:78px}.student-grade{font-size:.8125rem;padding:7px 9px}.students-page .student-actions{grid-template-columns:1.1fr 1fr}.student-identity h3{font-size:1.375rem}.student-connection{min-height:0;padding:16px}.student-connection p{font-size:.875rem}.student-connection strong{font-size:.9375rem}.students-results-head{font-size:.875rem}.students-clear{font-size:.8125rem}}
@container(max-width:330px){.students-overview{grid-template-columns:1fr;gap:14px;padding:19px 0}.students-overview>div,.students-overview>div:first-child,.students-overview>div:last-child{display:flex;align-items:center;gap:12px;padding:0;border:0}.students-overview-icon{margin:0}.students-overview>div>span:last-child{flex:1;flex-direction:row;align-items:center;gap:12px;min-width:0}.students-overview strong{min-width:24px}.students-overview small{font-size:.8125rem}.students-page .student-actions{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.students-page *{transition:none!important}}
.high-contrast .students-intro,.high-contrast .students-page .student-profile-card,.high-contrast .students-page .empty-state{background:#132034;border-color:#667c96}
.high-contrast .students-page,.high-contrast .students-intro h1,.high-contrast .student-identity h3,.high-contrast .students-overview strong,.high-contrast .students-results-head strong{color:#fff}.high-contrast .students-intro h1 em{color:#ffe26a}
.high-contrast .students-intro-copy>p,.high-contrast .students-overview small,.high-contrast .students-demo-note,.high-contrast .students-results-head,.high-contrast .student-identity p,.high-contrast .student-guardian strong,.high-contrast .student-guardian small,.high-contrast .students-directory-head .eyebrow,.high-contrast .students-intro .eyebrow{color:#d7e4f3}
.high-contrast .students-search #student-search,.high-contrast .student-grade,.high-contrast .student-connection,.high-contrast .students-page .student-actions .btn.secondary{background:#0b1422;border-color:#6e829a;color:#fff}.high-contrast .students-search #student-search::placeholder{color:#c9d8eb}.high-contrast .students-search #student-search:focus-visible{outline-color:#ffe26a;border-color:#ffe26a}
.high-contrast .student-connection small,.high-contrast .student-connection strong,.high-contrast .student-connection p,.high-contrast .student-connection-icon,.high-contrast .student-profile-top .student-edit{color:#fff}.high-contrast .students-clear{color:#ffe26a}
.high-contrast .student-profile-top .student-edit:hover{background:#233c5b;color:#ffe26a}
.high-contrast .students-page .student-actions .btn:not(.secondary),.high-contrast .students-create{background:#ffe26a;color:#101723}.high-contrast .students-page .student-actions .btn.secondary:hover{background:#233c5b;color:#ffe26a}
@media print{.students-intro .students-create,.students-search,.student-edit,.student-actions{display:none!important}.students-page .student-profile-card{break-inside:avoid}.students-intro-art{display:none}.students-intro{display:block}.students-page .students-visual-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
