/* ADSIN Workspace: final accessibility and responsive corrections. */
html{color-scheme:light}html[data-theme=dark]{color-scheme:dark}
input,select,textarea{box-sizing:border-box;min-width:0;max-width:100%}
input:is(:-webkit-autofill,:-webkit-autofill:hover,:-webkit-autofill:focus){-webkit-text-fill-color:var(--text);caret-color:var(--text);-webkit-box-shadow:0 0 0 1000px var(--card) inset;box-shadow:0 0 0 1000px var(--card) inset}
input:autofill{color:var(--text);background:var(--card)}
html[data-screen=login] .shell{grid-template-columns:minmax(300px,4fr) minmax(420px,7fr)}
html[data-screen=login] .login-brand{padding:32px;gap:24px}
html[data-screen=login] .brand-top{flex-wrap:wrap;gap:16px}
html[data-screen=login] .brand-message{padding:24px 0}
html[data-screen=login] .brand-message h2{font-size:44px}
html[data-screen=login] :is(.brand-top>span,.board-foot,.form-wrap .help){font-size:14px;line-height:1.6;letter-spacing:normal}
html[data-screen=login] .board-foot a{color:#fff;text-decoration:underline;text-underline-offset:4px}
html[data-screen=login] .board-foot{color:#e5dce1}
html[data-screen=login] .brand-top>span{color:#e5dce1}
html[data-screen=login] .form-wrap .help{color:var(--text-2)}
html[data-screen=login] .help a{color:var(--text);text-decoration:underline;text-underline-offset:3px}
html[data-screen=login] .form-wrap h1{font-size:28px;line-height:1.2}
html[data-theme=dark][data-screen=login] :is(.help,.sub){color:#d4c8cf}
.performance-mode{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.performance-mode [aria-pressed=true]{background:var(--raised);border-color:var(--mark)}
/* Attendance previously retained hard-coded light palette overrides. */
body:has(.att){background:var(--page)}
body[data-palette] .att :is(h1,h2,h3){color:var(--text)}
body[data-palette] .att :is(.panel,.scan-panel,.branch-tools,.register){background:var(--card);border-color:var(--line);color:var(--text)}
body[data-palette] .att .scan-panel{border-top:3px solid var(--mark)}
body[data-palette] .att .register header{background:var(--raised);color:var(--text)}
body[data-palette] .att :is(p,small,.hours){color:var(--text-2)}
body[data-palette] .att .primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}
body[data-palette] .att .choose-image{background:var(--card);color:var(--text);border-color:var(--line-strong)}
body[data-palette] .att .punch-status{background:var(--raised);color:var(--text)}
.att .register header label{margin:0;width:180px;min-width:0}.att #refreshAttendance{margin:0 0 16px}.att .register header{align-items:end}.att .register li{gap:16px}
.error-page{min-height:100dvh;display:grid;place-items:center;padding:24px;background:var(--page);color:var(--text)}.error-card{width:min(480px,100%);padding:32px;border:1px solid var(--line);border-radius:16px;background:var(--card)}.error-logo{background:#442931;padding:20px;width:144px;border-radius:8px;margin-bottom:28px}.error-card h1{font-size:32px;line-height:1.2;margin:12px 0}.error-card p{color:var(--text-2);line-height:1.6;margin-bottom:20px}.error-card .btn{display:inline-flex;text-decoration:none;min-height:44px}.error-help{display:block;margin-top:20px;color:var(--text);font-size:14px}
@media(max-width:820px){html[data-screen=login] .shell{display:flex;flex-direction:column}html[data-screen=login] .login-brand{padding:24px}html[data-screen=login] .brand-message{padding:16px 0}html[data-screen=login] .brand-message h2{font-size:28px}html[data-screen=login] .form-side{padding:24px 16px}html[data-screen=login] .form-wrap{padding:24px;width:min(440px,100%)}html[data-screen=login] .board-foot{display:none}}
@media(max-width:600px){
 .content,#page-content{min-width:0}.legacy-page .page-heading{gap:16px;margin-bottom:20px}.head{align-items:start}
 .report-filters,.legacy-page .report-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:end;margin:20px 0}
 .report-filters label,.legacy-page .report-filters label{width:auto;min-width:0;margin:0;font-size:13px;gap:8px}
 .report-filters label:has(select){grid-column:1/-1}
 .report-filters :is(input,select),.performance-toolbar :is(input,select),.monthly-report-filters :is(input,select),.legacy-page .report-filters>button{width:100%;height:44px;min-height:44px;padding:8px 10px;font-size:16px;line-height:normal;box-sizing:border-box}
 input[type=date],input[type=month]{display:block;min-width:0;width:100%;max-width:100%;min-height:44px;height:44px;text-align:left}
 input::-webkit-date-and-time-value{min-height:1.2em;text-align:left}input::-webkit-datetime-edit{padding:0;min-width:0}
 .performance-toolbar .performance-filters,.monthly-report-filters{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
 .performance-toolbar label,.monthly-report-filters label{width:100%;min-width:0;gap:8px;font-size:13px}.monthly-report-filters .btn{height:44px}
 .task-detail .modal-body :is(input:not([type=checkbox]):not([type=file]),select){height:44px;min-height:44px;font-size:16px;padding:8px 12px}
 .task-detail .modal-actions{gap:8px}.task-detail .modal-actions .btn{min-height:44px;padding:10px 12px;flex:1 1 128px}
 .legacy-page .heading-actions{display:flex;gap:8px;margin:0}.legacy-page .heading-actions button{min-height:44px;flex:1;padding:10px 12px}
 .page-toolbar{gap:8px;flex-wrap:wrap}.page-toolbar input{width:100%;flex-basis:100%;min-width:0;min-height:44px}.page-toolbar .btn{min-height:44px}
 .att .register header{display:flex;flex-wrap:wrap;gap:16px;align-items:end;padding:16px}.att .register header>div{flex:1 1 160px}.att .register header label{width:160px;max-width:100%;margin:0;gap:8px}.att .register li{padding:16px;gap:8px}.att section{padding:16px;margin:16px 0}.att .register{padding:0}.att .scan-actions{gap:8px}.att .scan-actions>button,.att .choose-image{min-height:44px;padding:10px 12px;margin:0}.att .scan-actions small{font-size:13px}
 .pdf-upload input[type=month]{height:44px}.pdf-upload input[type=file]{max-width:100%;font-size:14px}.performance-mode .btn{flex:1;min-height:44px}
 .task-detail[open]{display:block;overflow-y:auto}.task-detail>form,.task-detail>.modal-body{overflow:visible}.photo-settings{gap:12px}
}
@media(max-width:359px){.report-filters,.legacy-page .report-filters{grid-template-columns:minmax(0,1fr)}.report-filters label{grid-column:auto}html[data-screen=login] .form-wrap{padding:20px}.error-card{padding:24px}}
