/* 2026-09-18 晚自习：页面控件适配手机，学生牌面由student-cards.css统一维护。 */
.evening-tool{max-width:1100px;margin:auto;color:var(--t1)}
/* 2026-09-22 三节选择：直接点缺席节次，保留右侧私人备注与足够大的触控区域。 */
.evening-tool .evening-cards{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.evening-student{min-width:0;padding:10px}.evening-student>strong{font-size:14px}.evening-student>small{display:block;color:var(--t4);line-height:1.6}
.evening-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin-top:8px}
.evening-tool .evening-slot{padding:6px 1px;display:flex;flex-direction:column;align-items:center;gap:3px;font-size:12px;min-height:48px;border-radius:7px}
.evening-slot small{font-size:10px;color:inherit}.evening-tool .evening-slot.is-yes{color:var(--grn);border-color:var(--grn);background:color-mix(in srgb,var(--grn) 10%,var(--panel))}.evening-tool .evening-slot.is-no{color:var(--amb);border-color:var(--amb);background:color-mix(in srgb,var(--amb) 15%,var(--panel))}
.evening-tool .evening-all{font-size:11px;padding:3px 8px;margin-top:5px;min-height:32px;background:transparent;color:var(--t4)}
@media(max-width:600px){.evening-tool .evening-cards{grid-template-columns:minmax(0,1fr)}}
.evening-tool>[data-evening="back"]{display:none}
.evening-tool button,.evening-tool input,.evening-tool select{font:inherit;font-size:14px;color:var(--t1);background:var(--panel);border:1px solid var(--l14);border-radius:10px;padding:10px 14px;min-height:44px;box-sizing:border-box}
.evening-tool button{cursor:pointer}.evening-tool button:focus-visible{outline:3px solid var(--cy);outline-offset:3px}.evening-tool button:disabled{cursor:default}
.evening-tool h1{font-size:26px;margin:18px 0 6px}.evening-tool header p,.evening-receipt,.evening-actions>span{font-size:13px;color:var(--t4);line-height:1.7}
.evening-controls,.evening-actions,.evening-summary{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:16px 0}.evening-tool label{display:flex;gap:6px;flex-direction:column;font-size:13px}.evening-controls select{max-width:100%}.evening-controls>button{align-self:flex-end}.evening-summary{justify-content:space-between}.evening-summary h2{margin:0;font-size:19px}.evening-summary>span{font-size:14px;font-weight:600}.evening-tool .evening-primary{background:#207965;color:white;font-weight:700;border-color:transparent}.evening-tool .evening-actions button:disabled{opacity:.6}
.evening-error,.evening-notice{border:1px solid var(--amb);background:color-mix(in srgb,var(--amb) 8%,var(--panel));padding:12px;border-radius:10px;line-height:1.8}.evening-message{color:var(--grn)}.evening-unconfirmed{display:flex;gap:12px;flex-wrap:wrap;padding:16px;background:var(--panel);border-radius:12px}.evening-empty{color:var(--t4)}
@media(max-width:600px){.evening-tool h1{font-size:22px;margin-top:0}.evening-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.evening-controls label{min-width:0}.evening-controls label:first-child{grid-column:1/-1;flex-direction:row;align-items:center;gap:12px}.evening-tool input,.evening-tool select{font-size:16px;width:100%;min-width:0}.evening-tool #evening-date{width:190px}.evening-actions>span{width:100%}.evening-summary{gap:8px}.evening-summary>span{font-size:13px}}
