@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');
:root{--ink:#152a43;--accent:#1465e8;--surface:#fff;--bg:#f4f7fc;--border:#dce5f0}*{box-sizing:border-box}html{font-size:16px}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.55}.site-header{background:#102c50;color:white;box-shadow:0 2px 14px #11294c18}.brand{font-size:1.22rem;font-weight:800;line-height:1.2;color:white;text-decoration:none}.brand:hover,.header-link:hover{color:#c9e1ff}.brand-sub{display:block;font-size:.7rem;font-weight:500;color:#b9d4f7;letter-spacing:.02em}.header-link{color:white;text-decoration:none;font-size:.9rem}.page-main{padding-top:clamp(24px,5vw,48px);padding-bottom:48px;min-height:calc(100vh - 165px)}.content-wrap{max-width:1000px;margin:auto}h1{font-size:clamp(1.65rem,4vw,2.4rem);font-weight:800;letter-spacing:-.035em;margin-bottom:1rem}h2{font-weight:700}.card{border:1px solid var(--border);border-radius:18px;box-shadow:0 7px 25px #193b6410}.card-body{padding:clamp(18px,3vw,28px)}.btn{font-weight:600;border-radius:12px;padding:.7rem 1.1rem;min-height:44px}.btn-sm{padding:.5rem .7rem;min-height:38px}.form-control,.form-select{border-radius:11px;min-height:46px;border-color:#d4dfeb}.form-control:focus,.form-select:focus{border-color:#5297fc;box-shadow:0 0 0 .2rem #267df322}label{font-weight:600}label .form-control,label .form-select{margin-top:6px;font-weight:400}.table-responsive{border-radius:14px;border:1px solid var(--border);background:#fff}.table{margin-bottom:0}.table td,.table th{padding:14px 12px;vertical-align:middle}.site-footer{color:#64748b;text-align:center;font-size:.82rem;padding:18px}.hero{background:linear-gradient(125deg,#102c50,#205fae);border-radius:24px;padding:clamp(25px,5vw,55px);color:#fff}.hero h1{color:#fff}.hero p{color:#dbeaff;max-width:560px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-actions .btn{min-width:145px}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:20px}.feature-card{background:#fff;border:1px solid var(--border);padding:22px;border-radius:16px}.feature-card strong{display:block;margin-bottom:5px}.feature-card p{font-size:.9rem;margin:0;color:#61738b}.status-pill{display:inline-block;padding:.3rem .6rem;border-radius:50px;background:#e9f1ff;font-size:.8rem;font-weight:700}.student-card{padding:16px;background:#fff;border:1px solid var(--border);border-radius:16px;margin-bottom:12px}.student-actions{display:flex;gap:7px;flex-wrap:wrap}.muted{color:#64748b}.message-card{overflow-wrap:anywhere}.card p{overflow-wrap:anywhere}@media(max-width:767px){.page-main{padding-top:22px}.feature-grid{grid-template-columns:1fr}.hero-actions{flex-direction:column}.hero-actions .btn{width:100%}.btn{white-space:normal}.student-actions .btn{flex:1 1 42%}.table-responsive{font-size:.9rem}textarea{min-height:110px}}@media(min-width:768px){.feature-grid{grid-template-columns:repeat(3,1fr)}}

.auth-wrap{max-width:480px;margin:0 auto}.hero-simple{max-width:760px;margin:5vh auto;padding-block:clamp(45px,8vw,85px)}.hero-simple p{margin-bottom:0}.auth-wrap small{display:block;margin-top:5px}

/* v1.6 — navegação centralizada e página inicial escura */
.site-header{background:#0c1421;border-bottom:1px solid #253348;box-shadow:none}
.site-header .nav-link{color:#c3cfdd;font-weight:600;border-radius:10px;padding:.65rem 1rem;min-height:44px;display:flex;align-items:center;justify-content:center}
.site-header .nav-link:hover,.site-header .nav-link:focus-visible{color:#f4fff9;background:#203348}
.site-header .nav-link.active{color:#a8f2c7;background:#163a32;box-shadow:inset 0 -2px 0 #78dba8}
.home-page{background:#0c1421;color:#f0f5fa;min-height:100vh}
.home-page .page-main{min-height:calc(100vh - 160px);display:flex;align-items:center;justify-content:center}
.home-page .content-wrap{width:100%}
.home-intro{max-width:660px;margin:auto;padding:clamp(32px,8vw,88px) 12px}
.home-mark{font-size:3rem;font-weight:800;color:#9be5b9;margin-bottom:12px}
.home-intro h1{color:#f4f8fd;font-size:clamp(2rem,6vw,3.5rem);line-height:1.15}
.home-intro p{color:#b5c5d7;font-size:clamp(1rem,2.4vw,1.16rem)}
.btn-home{background:#9be5b9;color:#0c1421;min-width:160px}
.btn-home:hover,.btn-home:focus-visible{background:#c4f5d6;color:#0c1421}
.home-page .site-footer{color:#8396ab}
@media(max-width:390px){.site-header .nav{gap:0!important}.site-header .nav-link{padding:.6rem .65rem;font-size:.88rem}}

/* v1.12: identidade escura consistente */
:root{color-scheme:dark;--ink:#eef4fc;--accent:#82d6ac;--surface:#18293c;--bg:#0c1421;--border:#304459}
body{background:#0c1421!important;color:#eef4fc!important}
.card,.student-card,.feature-card,.table-responsive,.list-group-item{background:#17283b!important;color:#eef4fc!important;border-color:#304459!important}
.card p,.feature-card p,.muted,.text-secondary,.form-text{color:#b9c9da!important}
h1,h2,h3,h4,h5,h6,.form-label,label{color:#f0f6fd}
.form-control,.form-select,textarea{background:#0f2032!important;color:#f0f6fd!important;border-color:#3b526a!important}
.form-control::placeholder,textarea::placeholder{color:#a8b9ca!important}
.form-control:focus,.form-select:focus{background:#142b40!important;color:#fff!important}
.form-select option{background:#102235;color:#f0f6fd}
a{color:#8ec7ff}a:hover{color:#b6deff}
.site-footer{color:#9eb0c3}
.btn-outline-secondary{color:#d1deeb;border-color:#5b7088}.btn-outline-secondary:hover{color:#fff}
.table{--bs-table-bg:#17283b;--bs-table-color:#eef4fc;--bs-table-border-color:#304459}
.list-group-item-action:hover{background:#20354c!important;color:white!important}
.account-card{max-width:760px}.choice-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}

/* v1.14: navegação e atalhos compactos, sem quebra no smartphone */
.site-header .nav{flex-wrap:nowrap!important;gap:clamp(0px,1vw,10px)!important}
.site-header .nav-link{padding:.45rem clamp(.45rem,1.7vw,.85rem);min-height:38px;font-size:clamp(.78rem,2.9vw,1rem);white-space:nowrap}
@media(max-width:575px){.site-header .container{padding-top:.5rem!important;padding-bottom:.5rem!important}.site-header .nav-link{padding:.42rem .48rem;min-height:36px}}
.account-card .choice-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(5px,1.4vw,10px)}
.account-card .choice-links .btn{min-width:0;padding:.48rem .25rem;font-size:clamp(.73rem,2.8vw,.95rem);white-space:nowrap;line-height:1.25}

/* Contadores de mensagens em todos os perfis */
.jx-global-nav a:has(.jx-message-count){display:inline-flex;align-items:center;justify-content:center;gap:3px;white-space:nowrap}
.jx-message-count,.jx-unread{margin-left:2px;vertical-align:middle;font-variant-numeric:tabular-nums}
.jx-private-list .list-group-item{display:flex;align-items:center;justify-content:space-between;gap:.6rem}
.jx-private-list .list-group-item .jx-private-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
