.sidebar-end{padding-top:24px}.sidebar-end p{font-size:15px;margin-top:14px}.heading-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.workspace-tabs{display:flex;gap:28px;margin-bottom:28px;border-bottom:1px solid var(--line);overflow-x:auto}.workspace-tabs a{padding:15px 0;font-size:13px;white-space:nowrap;color:var(--muted);border-bottom:2px solid transparent}.workspace-tabs a.selected{border-color:var(--orange);color:var(--ink)}.checkbox-label{display:flex;align-items:center;flex-direction:row;gap:10px;line-height:1.6}.checkbox-label input{width:16px;height:16px;accent-color:#4b5a40}.subject-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.subject-card{border:1px solid var(--line);padding:25px 25px 0;background:#fff}.subject-number{font:24px var(--serif);color:#66645a}.subject-card h2{font-size:20px;min-height:70px;margin:20px 0}.subject-glyph{font:52px var(--serif);display:flex;align-items:center;justify-content:center;width:100px;height:100px;border-radius:70px 70px 0 0;background:#e8e6d8;color:#5c6750;margin-top:30px}.subject-card:nth-child(3n+2) .subject-glyph{color:#965334;background:#eee0cd}.subject-card:nth-child(3n) .subject-glyph{color:#726249;background:#e6e0d3}.subject-offerings{display:flex;gap:6px;flex-wrap:wrap;max-width:350px}.subject-card .subject-offerings{min-height:50px}.subject-checks{border:1px solid var(--line);padding:22px;margin:0 0 25px;display:flex;flex-wrap:wrap;gap:12px 25px}.subject-checks legend{font-size:12px;padding:0 10px;color:var(--muted)}.subject-checks label{margin:0}.link-button{background:none;border:0;padding:0;color:var(--orange);font-size:12px;cursor:pointer;line-height:1.7}.link-button:hover{text-decoration:underline}.filter-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 20px}.register-filters{margin-bottom:25px}.register-filters label{font-size:12px}.register-filters .secondary{padding:10px 16px}.attendance-summary{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);margin:25px 0;background:#fff}.attendance-summary>div{padding:20px 25px;border-right:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.attendance-summary>div:last-child{border:0}.attendance-summary span{font-size:12px;color:var(--muted)}.attendance-summary strong{font:32px var(--serif)}.attendance-status{font-size:12px;display:inline-block;padding:6px 10px;background:#e9e7de}.status-present{background:#e5eadf;color:#4c6542}.status-absent{background:#f1ded3;color:#9a4b31}.status-late{background:#f0e6cc;color:#786032}.lesson-notice{display:flex;align-items:center;gap:18px;background:#f1f3fc;border:1px solid #e0e4f1;padding:22px 26px;margin-bottom:25px}.notice-icon{font:34px var(--serif);color:#5c6850}.lesson-notice>div{flex:1}.lesson-notice strong{font-size:13px;font-weight:500}.lesson-notice p{font-size:12px;line-height:1.8;color:#626757;margin:7px 0 0}.history-grid{display:grid;grid-template-columns:280px minmax(0,1fr);gap:24px;margin-top:28px;align-items:start}.calendar-panel{padding:24px 20px}.calendar-panel h2{font-size:19px}.calendar-panel>.eyebrow{font-size:11px}.calendar-navigation{display:flex;gap:12px}.calendar-navigation a{font-size:17px;color:var(--orange)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px 2px;text-align:center;margin:20px 0}.calendar-day-label{font-size:11px;color:var(--muted);padding:7px}.calendar-day{font-size:12px;min-height:35px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}.calendar-day:hover{background:#eeeadf}.calendar-day.chosen{background:#3e4a3b;color:white}.calendar-day i{width:3px;height:3px;border-radius:50%;background:transparent}.calendar-day.has-records i{background:var(--orange)}.calendar-panel>small{font-size:11px}.history-panel{padding:24px 0;min-width:0}.history-panel>.section-head,.history-panel>.toolbar,.history-panel>.pagination{margin-left:24px;margin-right:24px}.history-panel .toolbar{align-items:flex-end;gap:8px}.history-panel .toolbar label{font-size:11px;margin:0;max-width:150px;flex:1}.history-panel .toolbar input{width:100%;padding:9px;font-size:12px}.history-panel .toolbar button{padding:10px}.history-panel th,.history-panel td{padding:13px 16px;font-size:12px}.history-panel th{font-size:11px}.history-panel td>small{font-size:11px}.history-panel details{min-width:90px}.history-panel summary{font-size:11px;cursor:pointer;color:var(--orange)}.revision-entry{margin:12px 0;line-height:1.7;font-size:11px}.revision-entry small{font-size:11px}.pagination{display:flex;align-items:center;justify-content:space-between;margin-top:20px;font-size:12px}.empty-state{text-align:center;padding:40px;color:var(--muted);line-height:1.8}.empty-state h2{color:var(--ink)}.timetable-scroll{overflow:auto}.weekly-grid{display:grid;grid-template-columns:repeat(5,minmax(160px,1fr));gap:13px;min-width:850px}.weekday-heading{border-bottom:1px solid var(--line);padding:13px 4px;margin-bottom:14px;display:flex;justify-content:space-between;align-items:center}.weekday-heading>span{font-family:var(--serif);font-size:20px}.weekday-heading small{font-size:11px;letter-spacing:1px}.weekday-column.is-today .weekday-heading{border-color:var(--orange)}.weekday-column.is-today .weekday-heading small{color:var(--orange)}.period-card{border:1px solid var(--line);padding:17px 15px;margin-bottom:12px;background:#fff;border-top:2px solid #b9bda7}.period-card:nth-child(3n){border-top-color:#cba37d}.period-card h3{font-family:var(--serif);font-size:18px;margin:15px 0 10px}.period-time{font-size:11px;margin:0;color:var(--orange)}.period-card>span{font-size:12px}.period-card>small{font-size:11px;margin-top:7px}.period-card .text-link{font-size:11px}.period-actions{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-top:18px;padding-top:12px;font-size:11px}.period-actions .link-button{font-size:11px}.empty-day{font-family:var(--serif);font-size:18px;color:#65655b;text-align:center;padding:30px 0}.availability-result{padding:15px;border:1px solid var(--line);background:#f2eee4;font-size:12px;margin-bottom:22px;line-height:1.8}.availability-result.available{background:#e6ecdf;color:#4f6740}.availability-result.unavailable{background:#f2e3d7;color:#955137}.lesson-agenda{display:flex;flex-direction:column;gap:18px}.agenda-card{display:flex;align-items:center;gap:30px;background:#fff;border:1px solid var(--line);padding:28px}.agenda-time{width:90px;flex-shrink:0;border-right:1px solid var(--line);padding-right:24px}.agenda-time strong{font:30px var(--serif)}.agenda-time small{font-size:12px;margin-top:7px}.agenda-detail{flex:1}.agenda-detail h2{font-size:20px;margin-bottom:10px}.agenda-detail .eyebrow{font-size:11px;color:var(--orange);margin-bottom:12px}.agenda-detail p:not(.eyebrow){font-size:12px;line-height:1.9;color:var(--muted);margin:0}.agenda-action{display:flex;flex-direction:column;align-items:flex-end;gap:14px}.agenda-action .primary{font-size:12px;padding:12px 16px}.reminder-note{padding:20px 0;font-size:12px;color:var(--muted);line-height:1.8}.scanner-layout{display:grid;grid-template-columns:1.25fr 1fr;gap:24px;align-items:start}.scanner-camera{padding:26px}.scanner-camera .eyebrow{font-size:11px}.scanner-camera h2{font-size:20px}.camera-frame{position:relative;aspect-ratio:4/3;background:#2c3656;overflow:hidden}.camera-frame video{width:100%;height:100%;object-fit:cover}.camera-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#65645a;background:radial-gradient(ellipse at bottom,#55628a,#303957)}.camera-placeholder>span{font:80px var(--serif);color:#676454;line-height:1.2}.camera-placeholder>p{font-family:var(--serif);font-size:20px;text-align:center;line-height:1.4;margin:18px 0}.camera-frame:after{content:'';position:absolute;inset:17%;border:1px solid #d0c6a680;pointer-events:none;border-radius:4px}.camera-buttons{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0 15px}.camera-buttons .primary,.camera-buttons .secondary{padding:12px 15px;font-size:12px}.image-scan-label{cursor:pointer;position:relative;margin:0;overflow:hidden;display:flex;flex-direction:row}.image-scan-label input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.scanner-help{font-size:12px;color:var(--muted);line-height:1.9;margin:15px 0 0}.scanner-side{display:flex;flex-direction:column;gap:20px}.scanner-side h2{font-size:20px}.scan-result{padding:16px;background:#eee9de;font-size:12px;line-height:1.8;margin-top:22px;border-left:2px solid #b8ad94;overflow-wrap:anywhere}.scan-result strong{display:block;font-size:15px;margin-bottom:5px;font-weight:500}.scan-result.scan-success{background:#e6ecdf;border-color:#73845d}.scan-result.scan-error{background:#f3e1d5;border-color:#b5683b}.camera-overlay{position:absolute;inset:0;z-index:3;background:#564aa7ef;color:#f2eddf;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:30px}.camera-overlay>span{font:60px var(--serif);width:80px;height:80px;border:1px solid #c9ceb6;border-radius:50%;margin-bottom:20px}.camera-overlay strong{font-family:var(--serif);font-size:20px;font-weight:400}.camera-overlay small{color:#62655b;margin-top:12px;line-height:1.8;font-size:12px}.scan-recent{list-style:none;padding:0;margin:0;max-height:300px;overflow:auto}.scan-recent li{padding:15px 0;border-top:1px solid var(--line)}.scan-recent strong{font-size:13px;font-weight:500}.scan-recent small{font-size:11px;margin-top:5px}.qr-card-grid{gap:30px}.card-sheet-item{max-width:470px;min-width:0}.card-select{font-size:12px;color:var(--muted);margin-bottom:12px}.qr-card-grid .id-card{width:100%;max-width:470px}.qr-card-grid .id-body{gap:13px;padding:17px}.qr-card-grid .id-body>.avatar{width:55px;height:75px}.id-person{flex:1;min-width:0}.qr-card-grid .id-body h3{font-size:22px;overflow-wrap:anywhere}.qr-card-grid .id-body p{font-size:11px;line-height:1.6}.qr-card-grid .id-body code{font-size:11px;letter-spacing:1px}.qr-code{width:82px;height:82px;flex-shrink:0;background:white;display:flex;align-items:center;justify-content:center;color:#111;font-size:11px}.qr-code svg{display:block;width:100%;height:100%}.card-tools{display:flex;align-items:center;gap:15px;flex-wrap:wrap;padding:14px 2px}.card-tools .link-button{font-size:11px}.card-guidance{font-size:12px;line-height:1.9;margin-bottom:25px}.copy-status{font-size:13px;overflow-wrap:anywhere;margin-top:24px}.register .save-bar .heading-actions .secondary,.register .save-bar .heading-actions .primary{padding:12px 15px;font-size:12px}.register .save-bar>span{max-width:230px;line-height:1.8}.register td input[type=time]{min-width:110px;font-size:12px}.register .section-head .eyebrow{margin-bottom:10px}.content:has(.scanner-layout),.content:has(.weekly-grid){max-width:1550px}@media(max-width:1300px){.history-grid{grid-template-columns:1fr}.calendar-panel{max-width:400px}.history-panel{width:100%}.qr-card-grid{grid-template-columns:1fr 1fr}.qr-card-grid .id-body h3{font-size:19px}.qr-card-grid .id-body{gap:10px;padding:15px}.qr-code{width:65px;height:65px}.qr-card-grid .id-body>.avatar{width:45px;height:65px}.subject-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:1100px){.scanner-layout{grid-template-columns:1fr}.scanner-side{display:grid;grid-template-columns:1fr 1fr}.qr-card-grid{grid-template-columns:1fr}.qr-card-grid .id-body h3{font-size:19px}.qr-card-grid .qr-code{width:80px;height:80px}.qr-card-grid .id-body>.avatar{width:60px;height:80px}.filter-grid{grid-template-columns:repeat(2,1fr)}.agenda-card{gap:20px;padding:23px}.agenda-time{width:75px}.agenda-detail h2{font-size:20px}.agenda-action .primary{padding:10px;white-space:nowrap}.agenda-action{max-width:110px}.register .save-bar{flex-direction:column;align-items:stretch}.register .save-bar>span{max-width:none}}@media(max-width:800px){.heading-actions .primary,.heading-actions .secondary{padding:12px 15px;font-size:12px}.subject-grid{grid-template-columns:repeat(2,1fr)}.attendance-summary>div{padding:18px 14px}.qr-card-grid{grid-template-columns:1fr 1fr}.qr-card-grid .id-body h3{font-size:20px}.qr-card-grid .qr-code{width:64px;height:64px}.qr-card-grid .id-body>.avatar{width:40px;height:60px}.qr-card-grid .id-body{gap:9px;padding:13px}.agenda-time strong{font-size:20px}}@media(max-width:600px){.subject-grid,.scanner-side,.qr-card-grid{grid-template-columns:1fr}.subject-card h2{min-height:0}.subject-card .subject-offerings{min-height:0}.subject-card .subject-glyph{margin-top:20px}.subject-card{padding:24px 24px 0}.filter-grid{gap:0 12px}.filter-grid label{font-size:11px}.filter-grid input,.filter-grid select{font-size:12px;padding:10px}.attendance-summary>div{flex-direction:column;gap:9px}.attendance-summary strong{font-size:29px}.attendance-summary span{font-size:11px}.lesson-notice{flex-wrap:wrap;padding:20px;gap:12px}.lesson-notice .notice-icon{font-size:20px}.lesson-notice>div{min-width:190px}.lesson-notice .secondary{margin-left:40px;font-size:12px;padding:10px 12px}.agenda-card{flex-wrap:wrap;gap:18px;padding:22px}.agenda-detail{min-width:180px}.agenda-time{width:68px;padding-right:15px}.agenda-action{max-width:none;width:100%;flex-direction:row;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:15px}.agenda-detail h2{font-size:20px}.scanner-camera{padding:20px}.camera-placeholder>p{font-size:18px}.camera-placeholder>span{font-size:60px}.camera-buttons .primary,.camera-buttons .secondary{padding:10px 12px;font-size:11px}.scanner-camera .section-head{align-items:flex-start}.scanner-camera .section-head .pill{font-size:11px}.scanner-camera h2{font-size:20px}.camera-overlay strong{font-size:20px}.history-panel>.section-head{align-items:flex-start}.history-panel h2{font-size:18px}.history-panel .section-head .eyebrow{font-size:11px}.qr-card-grid .id-body h3{font-size:22px}.qr-card-grid .id-body>.avatar{width:50px;height:74px}.qr-card-grid .qr-code{width:75px;height:75px}.qr-card-grid .id-body{gap:12px;padding:16px}.workspace-tabs{gap:24px}.workspace-tabs a{font-size:12px}.history-panel>.toolbar{flex-wrap:nowrap}.history-panel>.toolbar label{min-width:0}.calendar-panel{max-width:none}.subject-checks{padding:18px;gap:10px 20px}.subject-checks label{font-size:12px}.register-filters{padding:20px}.heading-actions{gap:8px}.qr-card-grid .id-person h3{font-size:21px}.reminder-note{font-size:12px}}
@media print{.card-select,.card-tools,.card-guidance,.copy-status{display:none!important}.qr-card-grid{display:grid!important;grid-template-columns:85.6mm 85.6mm!important;gap:8mm!important}.card-sheet-item{width:85.6mm;break-inside:avoid}.card-sheet-item.skip-print,.card-sheet-item[hidden]{display:none!important}.qr-card-grid .id-card{width:85.6mm;height:54mm;max-width:none}.qr-card-grid .id-body{height:30mm;padding:3mm 4mm;gap:3mm}.qr-card-grid .id-body>.avatar{width:14mm;height:22mm}.qr-card-grid .id-body h3{font-size:17px}.qr-card-grid .id-body p{font-size:7px;line-height:1.5}.qr-card-grid .id-body code{font-size:8px}.qr-card-grid .qr-code{width:21mm;height:21mm}.qr-card-grid .id-body .eyebrow{font-size:6px}.qr-card-grid .id-bottom{font-size:6px}}
/* Consistent readable workflow components. */
.workspace-tabs{gap:25px;margin-bottom:23px}.workspace-tabs a{font-size:13px;font-weight:500;padding:12px 0}.workspace-tabs a.selected{color:var(--accent);border-color:var(--accent)}.heading-actions{gap:10px}.heading-actions .primary,.heading-actions .secondary{font-size:12px;min-height:40px}.section-head h2{font-size:18px;font-weight:600}.section-head .eyebrow{font-size:11px;letter-spacing:.4px}.subject-card{border-radius:10px;padding:22px 22px 0}.subject-card h2{font-size:18px;min-height:45px;margin:21px 0 13px;font-weight:600}.subject-card .subject-number{font-size:14px;color:#5f6470;font-weight:500}.subject-glyph{width:62px;height:62px;border-radius:13px!important;font:500 28px var(--serif);margin-top:17px;background:#e8e5f8!important;color:#695e86!important}.subject-card:nth-child(3n+2) .subject-glyph{background:#fbe9d8!important;color:#7a6048!important}.subject-card:nth-child(3n) .subject-glyph{background:#dff2ea!important;color:#4d6a5e!important}.subject-card .card-top .eyebrow{font-size:11px;letter-spacing:.3px;color:#5c6376}.subject-card .subject-offerings{min-height:54px}.subject-offerings .pill{font-size:10px}.subject-card .card-footer{font-size:10px}.subject-card .card-footer span{color:#61656d}.subject-checks{border-radius:7px}.subject-checks legend{font-size:12px}.checkbox-label{font-size:13px;font-weight:400}.checkbox-label input{accent-color:var(--accent)}.filter-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 18px}.register-filters label{font-size:12px}.register-filters{padding:21px 24px}.register-filters .secondary{font-size:12px;padding:8px 15px}.attendance-summary{border-radius:9px;background:white;margin:22px 0;overflow:hidden}.attendance-summary>div{padding:18px 24px;justify-content:flex-start;gap:14px;position:relative}.attendance-summary>div:before{content:'';width:8px;height:8px;border-radius:50%;background:#a1cfb8}.attendance-summary>div:nth-child(2):before{background:#dea8aa}.attendance-summary>div:nth-child(3):before{background:#e4c58e}.attendance-summary>div:nth-child(4):before{background:#bfc5d5}.attendance-summary span{font-size:12px;color:#5c6578}.attendance-summary strong{font:600 26px var(--serif);margin-left:auto;color:#4e5870}.attendance-status{border-radius:5px;font-size:12px;padding:5px 9px}.status-present{background:#e8f5ee;color:#336f56}.status-absent{background:#fcebed;color:#915358}.status-late{background:#fff4db;color:#7a6132}.lesson-notice{border-radius:9px;padding:20px 24px;background:#f0f0fc;border-color:#e0e0f5}.lesson-notice strong{font-size:13px;font-weight:550;color:#656183}.lesson-notice p{font-size:12px;line-height:1.8;color:#656278}.lesson-notice .notice-icon{color:#646277}.lesson-notice .secondary{font-size:12px}.register .save-bar>span{max-width:260px;font-size:11px}.register .save-bar .heading-actions .primary,.register .save-bar .heading-actions .secondary{font-size:12px;padding:10px 14px}.register td input[type=time]{font-size:12px}.register .section-head .eyebrow{font-size:11px;color:#676175}.register td>small{font-size:11px;margin-top:4px}.history-grid{grid-template-columns:280px minmax(0,1fr);gap:23px}.calendar-panel{border-radius:9px;padding:23px 20px}.calendar-panel h2{font-size:17px;font-weight:600}.calendar-panel>.eyebrow{font-size:10px;color:#60656e}.calendar-day-label{font-size:10px}.calendar-day{font-size:12px;min-height:34px;border-radius:6px}.calendar-day.chosen{background:var(--accent)}.calendar-day.has-records i{background:#beafe4}.calendar-panel>small{font-size:11px;color:#5f6570}.history-panel{border-radius:9px;overflow:hidden}.history-panel .section-head .eyebrow{display:none}.history-panel h2{font-size:18px}.history-panel th{font-size:10px}.history-panel td{font-size:12px}.history-panel td>small,.revision-entry small{font-size:10px}.history-panel summary{font-size:11px}.history-panel .toolbar input{font-size:11px}.history-panel .toolbar label{font-size:11px}.history-panel .toolbar button{font-size:12px}.pagination{font-size:12px}.period-card{border-radius:7px;border-top-width:3px;border-top-color:#c1b4e5}.period-card:nth-child(3n){border-top-color:#efcaac}.period-card h3{font-size:16px;font-weight:550;line-height:1.5;margin:11px 0 9px}.period-time{font-size:11px;color:#6d5e85}.period-card>span{font-size:12px}.period-card>small{font-size:11px}.period-actions,.period-actions .link-button{font-size:10px}.weekday-heading>span{font:600 15px var(--serif)}.weekday-heading small{font-size:9px}.weekday-heading{padding:13px 8px}.empty-day{font-size:12px}.availability-result{border-radius:7px;background:#f4f3fa;font-size:12px}.agenda-card{border-radius:9px;padding:23px;gap:25px}.agenda-time strong{font:600 22px var(--serif)}.agenda-time small{font-size:11px}.agenda-detail h2{font-size:18px;font-weight:600}.agenda-detail .eyebrow{font-size:11px;color:#6c5e7e;letter-spacing:.3px}.agenda-detail p:not(.eyebrow){font-size:12px}.agenda-action .primary{font-size:12px}.reminder-note{font-size:12px}.scanner-camera .eyebrow{font-size:11px;letter-spacing:.4px;color:#6a5f7e}.scanner-camera h2{font-size:18px}.camera-frame{border-radius:9px}.camera-placeholder{color:#d7dced}.camera-placeholder>span{font:500 65px var(--serif);color:#5d6375}.camera-placeholder>p{font-size:18px;line-height:1.7;font-weight:450;color:#d5dcf0}.camera-buttons .primary,.camera-buttons .secondary{font-size:12px;padding:10px 14px}.scanner-help{font-size:12px;line-height:1.9;color:#5e6574}.scanner-side h2{font-size:18px}.scan-result{border-radius:6px;background:#f4f2fb;border-left-color:#b3a5d8;color:#686178;font-size:12px}.scan-result strong{font-size:14px}.scan-result.scan-success{background:#edf8f1;color:#4b6b58;border-color:#93c7a7}.scan-result.scan-error{background:#fff0ef;color:#835a56;border-color:#dcaaa3}.camera-overlay strong{font-size:24px;font-weight:550}.camera-overlay small{font-size:12px;color:#e2dcf3}.scan-recent strong{font-size:13px}.scan-recent small{font-size:11px}.qr-card-grid .id-card{border-radius:10px;background:#fbfaff}.qr-card-grid .id-body h3{font-size:17px;font-weight:600}.qr-card-grid .id-body p{font-size:10px}.qr-card-grid .id-body code{font-size:10px}.qr-card-grid .id-body .eyebrow{font-size:9px}.qr-card-grid .id-bottom{font-size:7px}.qr-card-grid .id-top{background:#7661ad}.card-select{font-size:12px}.card-tools .link-button{font-size:11px}.card-guidance{font-size:12px}.qr-card-grid{gap:26px}.empty-state{font-size:13px}.empty-state h2{font-size:18px}.form-grid{min-width:0}.content:has(.scanner-layout),.content:has(.weekly-grid){max-width:1640px}
@media(max-width:1300px){.history-grid{grid-template-columns:1fr}.calendar-panel{max-width:400px}.history-panel{width:100%}.qr-card-grid{grid-template-columns:1fr 1fr}.qr-card-grid .id-body h3{font-size:16px}}@media(max-width:1100px){.qr-card-grid{grid-template-columns:1fr}.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.register .save-bar{flex-direction:column;align-items:stretch}.register .save-bar>span{max-width:none}.scanner-layout{grid-template-columns:1fr}.scanner-side{display:grid;grid-template-columns:1fr 1fr}}@media(max-width:760px){.qr-card-grid{grid-template-columns:1fr 1fr}.history-grid{gap:20px}.agenda-detail h2{font-size:18px}.heading-actions .primary,.heading-actions .secondary{font-size:12px;padding:9px 13px}.agenda-time strong{font-size:21px}}@media(max-width:600px){.subject-grid,.scanner-side,.qr-card-grid{grid-template-columns:1fr}.subject-card h2{font-size:18px;min-height:0}.subject-card .subject-offerings{min-height:0}.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 13px}.filter-grid label{font-size:12px}.filter-grid input,.filter-grid select{font-size:12px;padding:9px;min-height:40px}.attendance-summary>div{padding:15px 8px;gap:6px;align-items:center;flex-direction:column}.attendance-summary>div:before{position:absolute;top:14px;right:10px;width:5px;height:5px}.attendance-summary span{font-size:10px}.attendance-summary strong{font:600 22px var(--serif);margin:0}.attendance-summary{margin:20px 0}.lesson-notice{padding:19px}.lesson-notice strong{font-size:13px}.lesson-notice p{font-size:12px}.calendar-panel{max-width:none}.history-panel .section-head .pill{font-size:10px}.history-panel>.toolbar label{max-width:none}.history-panel .toolbar input{font-size:11px;padding:8px}.agenda-card{padding:20px;gap:17px}.agenda-detail{min-width:170px}.agenda-detail .eyebrow{font-size:10px}.agenda-detail p:not(.eyebrow){font-size:11px}.agenda-action .primary{font-size:12px}.camera-buttons .primary,.camera-buttons .secondary{font-size:11px;padding:9px 11px}.camera-placeholder>p{font-size:17px}.scanner-camera h2,.scanner-side h2{font-size:18px}.scanner-camera .section-head .pill{font-size:9px}.scanner-help{font-size:12px}.scanner-camera .eyebrow{font-size:10px}.qr-card-grid .id-body h3{font-size:17px}.card-tools .link-button{font-size:11px}.subject-checks label{font-size:12px}.heading-actions{gap:8px}.register .save-bar .heading-actions{justify-content:flex-end}.register .save-bar .heading-actions .primary,.register .save-bar .heading-actions .secondary{font-size:11px;padding:9px 12px}.history-panel td{font-size:11px}.card-guidance{font-size:12px}.calendar-panel>small{font-size:11px}}
/* Legible text takes precedence over decorative pastel colors. */
.module-tile strong{font-size:14px;color:#354058}.module-tile small{font-size:12px;color:#5d6574}.home-welcome p,.home-date,.section-heading>span,.class-card-top p,.class-meta span,.attendance-overview>p,.schedule-item p,.schedule-item small,.home-help p,.home-help a,.home-community .person-row small,.schedule-empty p,.today-panel-heading p{color:#5b6576}.class-card h3{font-size:15px}.class-card-top p,.class-meta span,.class-card-footer{font-size:12px}.home-community .person-row strong{font-size:13px}.home-community .person-row small{font-size:12px}.home-attendance-stats>div>span:not(.stat-dot),.attendance-overview>p{font-size:12px;color:#5b6473}.section-heading>span{font-size:12px}.home-help p,.home-help a{font-size:12px}.home-help h3{font-size:14px;color:#6e5d85}.home-welcome p{font-size:13px}.home-date{font-size:12px}.today-panel-heading p,.schedule-item p{font-size:11px}.schedule-item h3{font-size:13px;color:#4e5b73}.schedule-item small{font-size:11px}.schedule-view-all{font-size:12px;color:#6c5e84}.nav-link{font-size:13px;color:#5a6579}.nav-group-label{font-size:11px;color:#5f6571}.header-location{font-size:12px}.school-switcher strong{font-size:12px}.school-switcher small{font-size:11px}.sidebar-owner strong{font-size:11px}.header-person{font-size:12px}.header-person small{font-size:10px}.class-card-footer{color:#6b5e82}.agenda-detail p:not(.eyebrow),.lesson-notice p,.card-guidance{color:#5b6476}.scan-result{color:#6d5f7d}.scan-result.scan-success{color:#346f51}.scan-result.scan-error{color:#93524d}.history-panel .section-head .eyebrow{display:none}.camera-placeholder p{color:#e4e9f7}.home-help a{color:#73598e}.today-panel-heading h2{font-size:15px}.home-community .pill{font-size:10px}.module-tile:hover strong{color:var(--accent)}
@media(max-width:1250px){.module-tile strong{font-size:13px}.module-tile small{font-size:11px}.class-card h3{font-size:14px}.class-card-top p,.class-meta span{font-size:11px}}@media(max-width:540px){.module-tile strong{font-size:13px}.module-tile small{font-size:11px}.class-card h3{font-size:15px}.class-card-top p,.class-meta span,.class-card-footer{font-size:12px}.home-welcome p{font-size:12px}.home-date{font-size:11px}.home-attendance-stats>div>span:not(.stat-dot){font-size:11px}.home-attendance-stats{gap:8px}.home-attendance-stats>div{gap:5px}.home-help p,.home-help a{font-size:12px}.home-community .person-row small{font-size:11px}.nav-link{font-size:13px}}
@media print{@page{size:A4;margin:12mm}.app-sidebar,.app-header,.page-heading,.toolbar,.main-footer,.card-guidance,.copy-status,.mobile-backdrop{display:none!important}body{background:white}.shell{margin:0}.content{padding:0;max-width:none}.qr-card-grid{grid-template-columns:85.6mm 85.6mm!important;gap:8mm!important}.card-sheet-item{width:85.6mm;break-inside:avoid}.qr-card-grid .id-card{width:85.6mm;height:54mm;max-width:none;border-radius:2mm;print-color-adjust:exact;-webkit-print-color-adjust:exact}.qr-card-grid .id-top{height:15mm;padding:3mm 4mm}.qr-card-grid .id-top>strong{font-size:24px}.qr-card-grid .id-body{height:30mm;padding:3mm 4mm;gap:3mm}.qr-card-grid .id-body>.avatar{width:14mm;height:22mm;border-radius:1mm}.qr-card-grid .id-body h3{font-size:14px;line-height:1.3}.qr-card-grid .id-body p{font-size:7px;line-height:1.5}.qr-card-grid .id-body code{font-size:8px}.qr-card-grid .qr-code{width:21mm;height:21mm}.qr-card-grid .id-body .eyebrow{font-size:6px}.qr-card-grid .id-bottom{height:9mm;padding:2mm 4mm;font-size:6px}}
select.mark[data-status=present]{color:#287152;background-color:#f3fbf6;border-color:#c9e7d6}select.mark[data-status=absent]{color:#984e58;background-color:#fff7f7;border-color:#efd8dc}select.mark[data-status=late]{color:#7a6129;background-color:#fffbef;border-color:#ecdfba}select.mark[data-status=on-leave]{color:#6c5b93;background-color:#f9f6ff;border-color:#e3dbee}
