/* Scoped additions to the established DAS bilingual school interface. */
.f-notification-button[hidden]{display:none!important}.f-academic-only .f-side-bottom>a{display:none}
.tp-welcome{background:linear-gradient(120deg,#12143f,#232666);border:1px solid #23265c}
.tp-welcome h2{color:#fff}.tp-welcome p{color:#d6d7e7}
.tp-welcome button,.f-content button[data-nav],.f-content button[data-action^="tp-"],.tp-attendance-choices button,.f-content button[data-action="mark-absent"]{border:1px solid #cdcede;border-radius:8px;background:#f2f2f8;color:#191c4e;padding:10px 15px;font:inherit;cursor:pointer;line-height:1.4}
.tp-welcome button:hover,.f-content button[data-action^="tp-"]:hover{background:#dedfeb;border-color:#8082a6}
.tp-welcome button:focus-visible,.f-content button[data-action^="tp-"]:focus-visible{outline:3px solid #c3bb70;outline-offset:3px}
.f-content>.f-panel{margin-bottom:20px}.f-content .f-panel>h3{margin:22px 0 12px}
.tp-welcome h2{max-width:680px}.tp-welcome .f-toolbar{margin-top:20px}
.tp-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:end}
.tp-filter .f-form{margin:0}.tp-filter .f-form-actions{margin-top:16px}
.tp-list-item{padding:16px 0;border-bottom:1px solid #dfdfe8}.tp-list-item:last-child{border-bottom:0}.tp-list-item small{display:block;color:#636478;margin-top:7px}
.f-panel progress{width:100%;height:10px;accent-color:#282c70}
.tp-sheet-dialog{width:min(1200px,96vw)!important;max-width:96vw}.tp-sheet-dialog .f-dialog-body{padding:20px}
.tp-marks-roster{margin-top:18px;max-height:45vh;overflow:auto;border:1px solid #d9dae5;border-radius:10px}
.tp-marks-roster table{min-width:730px}.tp-marks-roster th{position:sticky;top:0;background:#ededf3;z-index:1}.tp-marks-roster td{padding:9px 12px}
.tp-marks-roster input{min-width:80px;width:100%;margin:3px 0}.tp-marks-roster input[data-score]{width:100px}
.tp-marks-roster [aria-invalid=true]{border-color:#a14f35;background:#fff5f1}.tp-marks-roster [data-score-summary]{white-space:nowrap;font-variant-numeric:tabular-nums}
.tp-attendance-choices{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}.tp-attendance-choices button{font-size:11px;padding:8px 9px;min-height:36px}
.tp-attendance-choices [aria-pressed=true]{background:#1c1f62;color:#fff;border-color:#1c1f62}.tp-attendance-choices [data-status=Absent][aria-pressed=true]{background:#a4513d;border-color:#a4513d}
.f-sidebar nav{overflow:auto;min-height:0;flex:1}.f-sidebar{display:flex;flex-direction:column}.f-side-bottom{flex:none}
@media(max-width:1050px){.tp-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.tp-filter-grid{grid-template-columns:1fr}.tp-sheet-dialog{max-width:98vw;width:98vw!important}.tp-attendance-choices button{min-height:44px;padding:10px}.tp-marks-roster{max-height:55vh}.tp-marks-roster input{font-size:16px}.tp-filter .f-form-actions button{width:100%}}
@media print{.tp-filter,.tp-attendance-choices,.tp-welcome .f-toolbar{display:none!important}.tp-marks-roster{max-height:none;overflow:visible}}
