/* Home and Schedule: shared spacing, theme surfaces and accessible controls. */
.layout-transfer #panel-home #home-add-view{width:100%;max-width:none;margin:0;padding:24px;box-sizing:border-box;}
.layout-transfer #panel-home .home-account-card{max-width:880px;width:100%;margin:0;padding:24px;background:var(--surface);border:1px solid var(--border);border-radius:20px;box-shadow:none;}
#panel-home .home-form-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin:0 0 24px;}
#panel-home .home-form-heading h2{font-size:20px;letter-spacing:-.4px;margin:0 0 8px;}
#panel-home .home-form-heading p{font-size:13px;line-height:1.6;color:var(--text2);max-width:420px;margin:0;}
#panel-home .home-form-chips{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex-shrink:0;}
#panel-home .home-form-chips span{background:var(--surface2);border:1px solid var(--border);border-radius:8px;padding:5px 8px;font-size:11px;color:var(--text2);}
#panel-home .home-quick-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
#panel-home .home-quick-fields>.home-field:first-child,#panel-home .home-password-field{grid-column:1/-1;}
#panel-home .home-field{display:grid;gap:7px;min-width:0;font-size:12px;color:var(--text2);}
#panel-home #home-account-form :is(input,select){width:100%;box-sizing:border-box;min-height:44px;border:1px solid var(--border);border-radius:10px;background:var(--surface2);color:var(--text);padding:10px 12px;font-size:14px;}
#panel-home .home-optional{margin-top:24px;border:0;border-top:1px solid var(--border);border-radius:0;padding:0;background:transparent;}
#panel-home .home-optional summary{padding:18px 0;cursor:pointer;font-weight:600;font-size:14px;}
#panel-home .home-optional summary span{font-weight:400;font-size:12px;color:var(--text2);margin-left:8px;}
#panel-home .home-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:0;}
#panel-home .home-calculation{margin-top:16px;padding:12px;border-radius:10px;background:var(--surface2);font-size:13px;line-height:1.5;}
#panel-home .home-form-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:20px;margin-top:8px;}
#panel-home #home-submit,#schedule-save{min-height:42px;padding:10px 20px;border-radius:10px;background:var(--accent,var(--blue));color:white;border:0;font-weight:600;cursor:pointer;}
#panel-home #home-form-status{font-size:13px;line-height:1.5;}
.layout-transfer #panel-schedule .schedule-body{max-width:none;margin:0;padding:24px;width:100%;}
#panel-schedule .schedule-toolbar{display:flex;align-items:flex-end;gap:10px;padding:16px;border:1px solid var(--border);border-radius:16px;background:var(--surface);}
#panel-schedule .schedule-toolbar label{max-width:220px;flex:1;}
#panel-schedule #schedule-refresh{margin-left:auto;}
#panel-schedule :is(.schedule-toolbar button,.schedule-toolbar input){min-height:40px;border-radius:10px;font-size:13px;}
#panel-schedule :is(#schedule-prev,#schedule-next){width:40px;padding:0;font-size:22px;}
#panel-schedule .schedule-help,#schedule-status{font-size:12px;line-height:1.6;color:var(--text2);margin:12px 0;}
#panel-schedule .schedule-totals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:20px 0;}
#panel-schedule .schedule-total{background:var(--surface);padding:18px;border:1px solid var(--border);border-radius:16px;box-shadow:none;}
#panel-schedule .schedule-total[data-staff=sasha]{border-top:3px solid #69b3d4;}
#panel-schedule .schedule-total[data-staff=max]{border-top:3px solid #ac9be6;}
#panel-schedule .schedule-total>strong{font-size:15px;color:var(--text);}
#panel-schedule .schedule-total-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px;}
#panel-schedule .schedule-total-metrics span{display:block;font-size:11px;color:var(--text2);margin-bottom:6px;}
#panel-schedule .schedule-total-metrics strong{font-size:22px;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums;}
#panel-schedule :is(.schedule-options,.schedule-history){background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:14px 16px;margin:16px 0;}
#panel-schedule summary{cursor:pointer;font-size:13px;font-weight:600;}
#panel-schedule .schedule-month-caption{font-size:19px;margin:24px 0 16px;text-transform:capitalize;}
#panel-schedule .schedule-day{background:var(--surface);border-color:var(--border);border-radius:12px;min-width:0;}
#panel-schedule .schedule-day h3{font-size:13px;color:var(--text2);}
#panel-schedule .schedule-day.is-today{border-color:var(--blue,#55a8ff);box-shadow:inset 0 0 0 1px var(--blue,#55a8ff);}
#panel-schedule .schedule-day.is-today h3{color:var(--blue,#55a8ff);}
#panel-schedule .schedule-calendar-legend{font-size:12px;color:var(--text2);line-height:1.6;}
#schedule-dialog{width:min(580px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:24px;border:1px solid var(--border);border-radius:20px;background:var(--surface);color:var(--text);box-sizing:border-box;}
#schedule-dialog::backdrop{background:rgba(10,18,28,.6);backdrop-filter:blur(4px);}
#schedule-dialog .schedule-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px;}
#schedule-dialog .schedule-dialog-head h2{font-size:20px;}
#schedule-dialog #schedule-close{width:32px;height:32px;min-height:32px;min-width:32px;flex-basis:32px;border-radius:9px;font-size:0;position:relative;background:var(--surface2);}
#schedule-close::before,#schedule-close::after{content:'';position:absolute;width:14px;height:1.5px;background:var(--text2);transform:rotate(45deg);}
#schedule-close::after{transform:rotate(-45deg);}
#schedule-dialog .schedule-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
#schedule-dialog .schedule-fields>label:first-child{grid-column:1/-1;}
#schedule-dialog :is(input:not([type=checkbox]),select,textarea){background:var(--surface2);border-radius:10px;min-height:42px;font-size:14px;width:100%;}
#schedule-dialog .schedule-attendance{background:var(--surface2);border-color:var(--border);color:var(--text);margin-top:6px;}
#schedule-dialog .schedule-payout{background:var(--surface2);margin:20px 0;}
#schedule-dialog .schedule-standard-shift{color:var(--text2)!important;}
#schedule-dialog .schedule-standard-shift[aria-pressed=true]{color:var(--text)!important;background:var(--surface2);border-color:var(--blue,#55a8ff);}
#schedule-dialog #schedule-save{width:100%;margin-top:18px;}
:root[data-theme=light] #panel-schedule .schedule-day button[data-staff=sasha]{background:#eaf4fa;color:#25546b;}
:root[data-theme=light] #panel-schedule .schedule-day button[data-staff=max]{background:#f0edfa;color:#584283;}
:root[data-theme=light] #panel-schedule .schedule-payment-state[data-paid=true]{color:#287453;}
:root[data-theme=light] #panel-schedule .schedule-neighbor{border-color:var(--border);color:var(--text2);}
:is(#home-account-form,#panel-schedule,#schedule-dialog) :is(input,select,button,summary,textarea):focus-visible{outline:2px solid var(--blue,#55a8ff);outline-offset:3px;}
@media(max-width:650px){
 .layout-transfer #panel-home #home-add-view,.layout-transfer #panel-schedule .schedule-body{padding:16px 12px calc(92px + env(safe-area-inset-bottom));}
 .layout-transfer #panel-home .home-account-card{padding:18px 16px;border-radius:16px;}
 #panel-home .home-form-heading{flex-direction:column;gap:14px;}#panel-home .home-form-chips{flex-direction:row;flex-wrap:wrap;}
 #panel-home .home-form-grid{grid-template-columns:1fr;}#panel-home .home-form-footer{flex-direction:column;align-items:stretch;}
 #panel-home #home-account-form :is(input,select),#schedule-dialog :is(input:not([type=checkbox]),select,textarea){font-size:16px;}
 #panel-schedule .schedule-toolbar{padding:12px;gap:6px;flex-wrap:wrap;}#panel-schedule .schedule-toolbar label{max-width:none;}#panel-schedule #schedule-refresh{flex-basis:100%;}
 #panel-schedule .schedule-totals{gap:10px;}#panel-schedule .schedule-total{padding:12px;}#panel-schedule .schedule-total-metrics{grid-template-columns:1fr;gap:8px;}
 #panel-schedule .schedule-total-metrics>div{display:flex;align-items:center;justify-content:space-between;gap:8px;}#panel-schedule .schedule-total-metrics span{margin:0;}#panel-schedule .schedule-total-metrics strong{font-size:18px;}
 #panel-schedule .schedule-day{border-radius:8px;}#schedule-dialog{padding:18px 16px;}#schedule-dialog .schedule-dialog-head h2{font-size:18px;}
}
#panel-schedule .schedule-total{border-left-width:1px;}
:root[data-theme=light] #panel-schedule .schedule-shift-full>span,:root[data-theme=light] #panel-schedule .schedule-shift-full small{color:#526174;}
:root[data-theme=light] #panel-schedule .schedule-weekday.is-weekend{color:#456c95;}
#schedule-dialog #schedule-save{background:#3075c5;color:#fff;}

/* Match the current QR Pay / Check Pay page hierarchy. */
.layout-transfer :is(#panel-home,#panel-schedule)>.panel-header{min-height:116px;padding:30px 32px 24px;}
.layout-transfer :is(#panel-home,#panel-schedule)>.panel-header .panel-title{font-size:32px;line-height:1.2;}
.layout-transfer #panel-home .home-account-card{max-width:none;background:transparent;border:0;padding:0;}
#panel-home .home-form-heading{align-items:center;margin-bottom:24px;}
#panel-home .home-form-heading h2{font-size:24px;}
#panel-home .home-form-chips{flex-direction:row;flex-wrap:wrap;gap:8px;}
#panel-home .home-form-chips span{padding:8px 10px;border-radius:10px;font-size:12px;}
#panel-home .home-entry-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:20px;align-items:start;}
#panel-home .home-entry-main,#panel-home .home-optional{border:1px solid var(--border);background:var(--surface);border-radius:20px;padding:24px;margin:0;}
#panel-home .home-entry-main h3{font-size:17px;margin:0 0 24px;}
#panel-home .home-optional summary{padding:0 0 24px;font-size:17px;}
#panel-home .home-optional:not([open]) summary{padding:0;}
#panel-home .home-optional summary span{font-size:12px;}
#panel-home .home-optional .home-form-grid{gap:18px;}
#panel-home .home-field{font-size:13px;}
#panel-home #home-account-form :is(input,select){min-height:46px;}
#panel-home .home-form-footer{margin:20px 0 0;padding:18px 0;border-top:1px solid var(--border);}
#panel-home #home-submit{background:#3075ce;min-height:46px;padding:12px 28px;}
.layout-transfer #panel-schedule .schedule-toolbar{border:0;padding:0;background:transparent;}
#panel-schedule .schedule-calendar-surface{padding:20px;background:var(--surface);border:1px solid var(--border);border-radius:20px;}
#panel-schedule .schedule-calendar-surface .schedule-month-caption{margin:0 0 16px;}
#panel-schedule .schedule-calendar{gap:0;margin:12px 0;border:1px solid var(--border);border-radius:12px;overflow:hidden;}
#panel-schedule .schedule-day{border:0;border-radius:0;border-top:1px solid var(--border);border-right:1px solid var(--border);min-height:110px;padding:10px;}
#panel-schedule .schedule-neighbor{border:0;border-top:1px solid var(--border);border-right:1px solid var(--border);border-radius:0;}
#panel-schedule .schedule-weekday{background:var(--surface2);padding:12px 0;}
#panel-schedule .schedule-options{background:transparent;border:0;padding:0 0 8px;margin:16px 0;}
#panel-schedule .schedule-total{padding:20px 24px;}
@media(max-width:1000px){#panel-home .home-entry-layout{grid-template-columns:1fr;}#panel-home .home-form-heading{align-items:flex-start;flex-direction:column;gap:16px;}}
@media(max-width:768px){
.layout-transfer :is(#panel-home,#panel-schedule)>.panel-header{min-height:86px;padding:16px 14px;}
.layout-transfer :is(#panel-home,#panel-schedule)>.panel-header .panel-title{font-size:25px;}
#panel-home .home-entry-main,#panel-home .home-optional{padding:18px 16px;border-radius:16px;}
#panel-home .home-form-heading h2{font-size:21px;}#panel-home .home-form-chips span{font-size:11px;}
#panel-schedule .schedule-calendar-surface{padding:12px 6px;border-radius:16px;}
#panel-schedule .schedule-day{min-height:76px;padding:6px 2px;}#panel-schedule .schedule-total{padding:14px;}
}
