/* Administração Portal TIC — nova identidade visual, sem alteração do JavaScript. */
body.portal-admin-page{font-family:'Segoe UI',Inter,Arial,sans-serif;background:#f0f8fa url('branding/dashboard-lines.svg') repeat!important;background-size:850px 550px!important;color:#0b2334}
.portal-admin-page .admin-header{background:rgba(255,255,255,.97);border-bottom:1px solid #d7e8ec;box-shadow:0 4px 18px rgba(12,51,68,.04)}
.portal-admin-page .portal-global-topbar{max-width:1460px;padding:12px 25px}.portal-admin-page .portal-school-copy h1{font-size:1.35rem;font-weight:800}.portal-admin-page .portal-label{color:#008d8c}
.portal-admin-page main{max-width:1450px;margin:24px auto;padding:0 25px 42px}
.portal-admin-page .admin-layout{grid-template-columns:215px minmax(0,1fr);gap:16px;align-items:start}
.portal-admin-page .admin-menu{background:linear-gradient(155deg,#073749,#052636);border:1px solid #165362;border-radius:15px;padding:11px;box-shadow:0 12px 26px rgba(3,34,48,.10)}
.portal-admin-page .admin-menu button{border:1px solid transparent;border-radius:8px;color:#edf9fb;background:transparent;font-weight:680;padding:11px 12px}
.portal-admin-page .admin-menu button:hover{background:#175464}.portal-admin-page .admin-menu button.primary{background:#006b71;border:1px solid #1dcabf;color:#fff}
.portal-admin-page .admin-menu a{background:rgba(26,117,131,.3)!important;color:#d5fcfc!important;border:1px solid #2c7b88!important}
.portal-admin-page .admin-panel,.portal-admin-page .login-box{border:1px solid #d5e8ed;border-radius:16px;box-shadow:0 8px 28px rgba(13,48,61,.06);background:#fff}
.portal-admin-page .admin-panel{padding:24px 27px}.portal-admin-page .private-head{background:#fff;border-radius:14px;padding:13px 18px;margin-bottom:20px;border:1px solid #e0ecee;box-shadow:0 3px 14px rgba(11,42,55,.03)}
.portal-admin-page button.primary{background:#006e74;border-color:#006e74}.portal-admin-page button:hover{border-color:#13a89f}
.portal-admin-page input:focus,.portal-admin-page select:focus,.portal-admin-page textarea:focus{outline:2px solid #37c5c0;outline-offset:1px}
.portal-admin-page .site-footer-rich{padding:0 24px 18px}.portal-admin-page .footer-inner{max-width:1400px;background:rgba(255,255,255,.85);box-shadow:none;border:1px solid #dce8ec}
@media(max-width:760px){.portal-admin-page .admin-layout{display:block}.portal-admin-page .admin-menu{position:static;display:flex;flex-wrap:wrap;gap:5px;margin-bottom:12px}.portal-admin-page .admin-menu button{width:auto;flex:1}.portal-admin-page .admin-panel{padding:17px}.portal-admin-page main{padding:0 13px 30px}.portal-admin-page .portal-global-topbar{padding:12px}}

/* Modalidade de atribuição: turma inteira ou aluno(s) específico(s). */
.target-students-box{margin:9px 0 17px;padding:14px;border:1px solid #c5dbe2;border-radius:12px;background:#f5fafb}
.target-students-box>p{margin:0 0 9px}
.target-students-box input[type=search]{width:100%;box-sizing:border-box;margin:2px 0 10px}
.target-students-list{max-height:218px;overflow:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:6px;padding:2px}
.target-students-list .target-student{display:flex;align-items:center;gap:9px;border:1px solid #d7e7e9;border-radius:8px;padding:8px 9px;background:#fff;font-size:.84rem;cursor:pointer;margin:0}
.target-students-list .target-student input{width:16px;height:16px;flex:none;margin:0}
.target-students-list .target-student:has(input:checked){background:#e5faf4;border-color:#0a988d}
.target-students-list .target-student small{color:#657f89}
@media(max-width:640px){.target-students-list{grid-template-columns:1fr;max-height:185px}}

/* Consulta de alunos e acessos — apenas área privada de administração. */
.portal-admin-page .students-list-header{align-items:center}
.portal-admin-page .students-tools{display:flex;align-items:end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:15px 0 13px}
.portal-admin-page .students-tools>div{flex:1;min-width:240px;max-width:490px}
.portal-admin-page .students-tools label{display:block;margin-bottom:6px;font-weight:650}
.portal-admin-page .students-tools input{width:100%;box-sizing:border-box;margin:0}
.portal-admin-page .students-counter{white-space:nowrap;font-weight:650;color:#28636e;margin:0 0 7px}
.portal-admin-page .student-logins-table{width:100%;border-collapse:collapse;font-size:.91rem}
.portal-admin-page .student-logins-table thead{background:#eaf5f7}
.portal-admin-page .student-logins-table th,.portal-admin-page .student-logins-table td{text-align:left;padding:12px 13px;border-bottom:1px solid #e2ecee;vertical-align:middle}
.portal-admin-page .student-logins-table th{color:#174354;font-weight:750;white-space:nowrap}
.portal-admin-page .student-logins-table tbody tr:hover{background:#f3fafb}
.portal-admin-page .student-logins-table td code{background:#e7f3f5;color:#074c5e;border:1px solid #d4e7eb;padding:4px 8px;border-radius:7px;font:700 .87rem/1.4 ui-monospace,SFMono-Regular,Consolas,monospace}
.portal-admin-page .students-note{margin:14px 0 0;color:#597580}
.portal-admin-page .students-empty,.portal-admin-page .students-loading{padding:16px;margin:0}
.portal-admin-page .never-signed-in{color:#697d85;font-style:italic}
@media(max-width:650px){.portal-admin-page .student-logins-table{min-width:520px}.portal-admin-page .students-list-header{flex-wrap:wrap}}
