
#affairs-parent-report{--pr-bg:light-dark(#f5f6f3,#171b18);--pr-surface:light-dark(#fff,#222823);--pr-ink:light-dark(#23352d,#e9eee8);--pr-muted:light-dark(#66756c,#b2bdb4);--pr-line:light-dark(#dce3d9,#465048);--pr-brand:light-dark(#2e6048,#b4d5bc);--pr-onbrand:light-dark(#fff,#172a1c);--pr-soft:light-dark(#eaf1e8,#2c3f30);--pr-error:light-dark(#a63828,#ffb4a4);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif;font-size:14px;line-height:1.6;color:var(--pr-ink);max-width:736px;margin:auto}
#affairs-parent-report *{box-sizing:border-box}
#affairs-parent-report [hidden]{display:none!important}
#affairs-parent-report .pr-caption{font-size:12px;color:var(--pr-muted);padding:7px 95px 14px 0}
#affairs-parent-report .pr-page{background:var(--pr-bg);border:1px solid var(--pr-line);border-radius:12px;padding:24px}
#affairs-parent-report h1{font-size:23px;line-height:1.4;font-weight:500;margin:0 0 8px}
#affairs-parent-report h2{font-size:18px;font-weight:500;margin:0 0 10px}
#affairs-parent-report .pr-child{margin:0 0 20px;color:var(--pr-muted);font-size:13px}
#affairs-parent-report .pr-section{padding:18px;border:1px solid var(--pr-line);border-radius:8px;background:var(--pr-surface);margin-bottom:14px}
#affairs-parent-report fieldset{border:0;padding:0;margin:0;min-width:0}
#affairs-parent-report legend{font-size:14px;font-weight:500;padding:0;margin-bottom:10px}
#affairs-parent-report input,#affairs-parent-report textarea,#affairs-parent-report button{font:inherit;color:inherit;max-width:100%;min-width:0}
#affairs-parent-report input:focus-visible,#affairs-parent-report textarea:focus-visible,#affairs-parent-report button:focus-visible{outline:3px solid var(--pr-brand);outline-offset:3px}
#affairs-parent-report input[type=radio]{width:18px;height:18px;margin:0;accent-color:var(--pr-brand);flex:0 0 auto}
#affairs-parent-report .pr-types{display:flex;flex-wrap:wrap;gap:10px}
#affairs-parent-report .pr-choice{display:flex;align-items:center;gap:8px;min-height:44px;padding:10px 13px;border:1px solid var(--pr-line);border-radius:6px;background:var(--pr-surface)}
#affairs-parent-report .pr-choice:has(input:checked){background:var(--pr-soft);border-color:var(--pr-brand)}
#affairs-parent-report .pr-label{font-size:13px;font-weight:500}
#affairs-parent-report .pr-optional{font-size:12px;font-weight:400;color:var(--pr-muted)}
#affairs-parent-report .pr-dates{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}
#affairs-parent-report .pr-field{display:flex;flex-direction:column;gap:6px;min-width:0}
#affairs-parent-report input[type=date],#affairs-parent-report textarea{width:100%;min-height:44px;padding:8px 10px;border:1px solid var(--pr-line);border-radius:6px;background:var(--pr-surface)}
#affairs-parent-report textarea{resize:vertical;min-height:78px}
#affairs-parent-report textarea::placeholder{color:var(--pr-muted);opacity:1}
#affairs-parent-report .pr-half{margin-top:15px}
#affairs-parent-report .pr-half-options{display:flex;flex-wrap:wrap;gap:8px 20px}
#affairs-parent-report .pr-radio{display:inline-flex;gap:8px;align-items:center;min-height:44px}
#affairs-parent-report .pr-help{font-size:13px;color:var(--pr-muted);margin:10px 0 0;overflow-wrap:anywhere}
#affairs-parent-report .pr-interval{font-size:13px;background:var(--pr-soft);color:var(--pr-brand);border-radius:6px;padding:10px 12px;margin:14px 0 0}
#affairs-parent-report .pr-notes{display:grid;gap:16px}
#affairs-parent-report .pr-uploads{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
#affairs-parent-report .pr-upload{position:relative;display:inline-flex;align-items:center;gap:5px;min-height:44px;padding:8px 12px;border:1px solid var(--pr-line);border-radius:6px;font-size:13px}
#affairs-parent-report .pr-upload input{position:absolute;inset:0;width:100%;height:100%;opacity:0}
#affairs-parent-report .pr-upload:focus-within{outline:3px solid var(--pr-brand);outline-offset:3px}
#affairs-parent-report .pr-files{list-style:none;padding:0;margin:10px 0 0;font-size:12px;color:var(--pr-muted);overflow-wrap:anywhere}
#affairs-parent-report .pr-files li{margin-top:5px}
#affairs-parent-report .pr-submit{width:100%;background:var(--pr-brand);color:var(--pr-onbrand);border:1px solid var(--pr-brand);border-radius:6px;padding:11px 16px;min-height:46px;margin-top:16px}
#affairs-parent-report .pr-error{color:var(--pr-error);font-size:13px;margin:12px 0 0}
#affairs-parent-report .pr-receipt{padding:20px;border:1px solid var(--pr-line);border-radius:8px;background:var(--pr-surface)}
#affairs-parent-report .pr-success{color:var(--pr-brand);font-size:13px;margin:0 0 6px}
#affairs-parent-report .pr-record{margin:16px 0 0}
#affairs-parent-report .pr-record>div{display:grid;grid-template-columns:84px minmax(0,1fr);gap:10px;padding:10px 0;border-top:1px solid var(--pr-line)}
#affairs-parent-report dt{color:var(--pr-muted);font-size:13px}
#affairs-parent-report dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:520px){#affairs-parent-report .pr-page{padding:18px 14px}#affairs-parent-report h1{font-size:21px}#affairs-parent-report .pr-section{padding:15px 12px}#affairs-parent-report .pr-dates{grid-template-columns:minmax(0,1fr);gap:13px}#affairs-parent-report input[type=date],#affairs-parent-report textarea{font-size:16px}#affairs-parent-report .pr-choice:last-child{flex-basis:100%}#affairs-parent-report .pr-record>div{grid-template-columns:minmax(0,1fr);gap:4px}}


#affairs-parent-records{--pc-bg:light-dark(#f5f6f3,#171b18);--pc-surface:light-dark(#fff,#222823);--pc-ink:light-dark(#23352d,#e9eee8);--pc-muted:light-dark(#66756c,#b2bdb4);--pc-line:light-dark(#dce3d9,#465048);--pc-brand:light-dark(#2e6048,#b4d5bc);--pc-onbrand:light-dark(#fff,#172a1c);--pc-soft:light-dark(#eaf1e8,#2c3f30);--pc-red:light-dark(#b32d25,#ffaba3);--pc-red-bg:light-dark(#fff0ee,#3e2523);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif;font-size:14px;line-height:1.6;color:var(--pc-ink);max-width:736px;margin:auto}
#affairs-parent-records *{box-sizing:border-box}
#affairs-parent-records [hidden]{display:none!important}
#affairs-parent-records .pc-caption{font-size:12px;color:var(--pc-muted);padding:7px 95px 10px 0}
#affairs-parent-records .pc-preview{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:14px;color:var(--pc-muted);font-size:13px}
#affairs-parent-records .pc-preview select{width:auto}
#affairs-parent-records .pc-page{background:var(--pc-bg);border:1px solid var(--pc-line);border-radius:12px;padding:24px}
#affairs-parent-records h1{font-size:23px;font-weight:500;line-height:1.4;margin:0 0 8px}
#affairs-parent-records h2{font-size:18px;font-weight:500;margin:0}
#affairs-parent-records h3{font-size:15px;font-weight:500;margin:0 0 10px}
#affairs-parent-records button,#affairs-parent-records input,#affairs-parent-records select{font:inherit;color:inherit;min-width:0;max-width:100%}
#affairs-parent-records button{min-height:44px;border:1px solid var(--pc-line);border-radius:6px;padding:8px 12px;background:var(--pc-surface)}
#affairs-parent-records .pc-primary{background:var(--pc-brand);color:var(--pc-onbrand);border-color:var(--pc-brand)}
#affairs-parent-records button:focus-visible,#affairs-parent-records input:focus-visible,#affairs-parent-records select:focus-visible,#affairs-parent-records summary:focus-visible{outline:3px solid var(--pc-brand);outline-offset:3px}
#affairs-parent-records input[type=date],#affairs-parent-records select{border:1px solid var(--pc-line);background:var(--pc-surface);border-radius:6px;padding:8px 10px;min-height:44px}
#affairs-parent-records input[type=date]{width:100%}
#affairs-parent-records .pc-meta{font-size:13px;color:var(--pc-muted);margin:0 0 20px}
#affairs-parent-records .pc-card{padding:18px;background:var(--pc-surface);border:1px solid var(--pc-line);border-radius:8px;margin-top:12px}
#affairs-parent-records .pc-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
#affairs-parent-records .pc-status{font-size:12px;color:var(--pc-brand);background:var(--pc-soft);border-radius:4px;padding:3px 8px}
#affairs-parent-records .pc-date{margin:12px 0 6px;overflow-wrap:anywhere}
#affairs-parent-records .pc-small{font-size:12px;color:var(--pc-muted);margin:6px 0;overflow-wrap:anywhere}
#affairs-parent-records .pc-card-footer{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap;margin-top:12px}
#affairs-parent-records .pc-help{font-size:13px;color:var(--pc-muted);margin:15px 0 0;overflow-wrap:anywhere}
#affairs-parent-records .pc-back{background:transparent;border-color:transparent;color:var(--pc-brand);padding:0 4px;margin:0 0 12px}
#affairs-parent-records .pc-fields{margin:16px 0 0}
#affairs-parent-records .pc-fields>div{display:grid;grid-template-columns:100px minmax(0,1fr);gap:12px;padding:12px 0;border-top:1px solid var(--pc-line)}
#affairs-parent-records dt{font-size:13px;color:var(--pc-muted)}
#affairs-parent-records dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
#affairs-parent-records .pc-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:16px}
#affairs-parent-records .pc-action-panel{margin-top:16px;padding:16px;border:1px solid var(--pc-line);background:var(--pc-bg);border-radius:8px}
#affairs-parent-records .pc-field{display:flex;flex-direction:column;gap:7px;margin:12px 0;font-size:13px;font-weight:500}
#affairs-parent-records .pc-impact{background:var(--pc-soft);padding:11px 12px;border-radius:6px;font-size:13px;white-space:pre-wrap;margin:12px 0;color:var(--pc-brand);overflow-wrap:anywhere}
#affairs-parent-records .pc-warning{color:var(--pc-red);background:var(--pc-red-bg);padding:12px;border-radius:6px;font-weight:500;margin:12px 0;overflow-wrap:anywhere}
#affairs-parent-records .pc-error{font-size:13px;color:var(--pc-red);margin:10px 0}
#affairs-parent-records .pc-history{margin-top:18px;border-top:1px solid var(--pc-line);padding-top:12px}
#affairs-parent-records .pc-history summary{min-height:44px;display:list-item;padding-top:8px}
#affairs-parent-records .pc-history ol{margin:0;padding:0 0 0 22px}
#affairs-parent-records .pc-history li{padding:10px 0;overflow-wrap:anywhere}
#affairs-parent-records .pc-live{font-size:13px;color:var(--pc-brand);margin:14px 0 0}
@media(max-width:520px){#affairs-parent-records .pc-page{padding:18px 14px}#affairs-parent-records h1{font-size:21px}#affairs-parent-records .pc-card{padding:15px 12px}#affairs-parent-records .pc-fields>div{grid-template-columns:minmax(0,1fr);gap:5px}#affairs-parent-records .pc-action-panel{padding:13px 11px}#affairs-parent-records input[type=date],#affairs-parent-records select{font-size:16px}#affairs-parent-records .pc-preview{align-items:stretch;flex-direction:column}#affairs-parent-records .pc-preview select{width:100%}}


#affairs-attendance-lunch{--al-bg:light-dark(#f5f6f3,#171b18);--al-paper:light-dark(#fff,#222823);--al-ink:light-dark(#23352d,#e9eee8);--al-muted:light-dark(#5f7066,#b6c1b8);--al-line:light-dark(#dce3d9,#465048);--al-brand:light-dark(#2e6048,#b4d5bc);--al-onbrand:light-dark(#fff,#172a1c);--al-soft:light-dark(#eaf1e8,#2c3f30);--al-warn:light-dark(#984222,#ffb494);--al-warnbg:light-dark(#fff3eb,#3c2a22);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif;font-size:14px;line-height:1.6;color:var(--al-ink);max-width:736px;margin:auto}
#affairs-attendance-lunch *{box-sizing:border-box}
#affairs-attendance-lunch [hidden]{display:none!important}
#affairs-attendance-lunch .al-preview{font-size:12px;color:var(--al-muted);padding:7px 95px 14px 0}
#affairs-attendance-lunch .al-page{padding:24px;border:1px solid var(--al-line);border-radius:12px;background:var(--al-bg)}
#affairs-attendance-lunch h1{font-size:23px;font-weight:500;margin:0 0 6px;line-height:1.4}
#affairs-attendance-lunch h2{font-size:18px;font-weight:500;margin:0 0 6px}
#affairs-attendance-lunch p{margin:0}
#affairs-attendance-lunch .al-meta{font-size:13px;color:var(--al-muted)}
#affairs-attendance-lunch .al-status{font-size:13px;color:var(--al-brand);margin-top:8px}
#affairs-attendance-lunch button,#affairs-attendance-lunch input,#affairs-attendance-lunch select,#affairs-attendance-lunch textarea{font:inherit;color:inherit;max-width:100%;min-width:0}
#affairs-attendance-lunch button,#affairs-attendance-lunch select{min-height:44px;padding:8px 10px;border:1px solid var(--al-line);border-radius:6px;background:var(--al-paper)}
#affairs-attendance-lunch button:disabled{opacity:.5}
#affairs-attendance-lunch .al-primary{background:var(--al-brand);color:var(--al-onbrand);border-color:var(--al-brand)}
#affairs-attendance-lunch :is(button,input,select,textarea):focus-visible{outline:3px solid var(--al-brand);outline-offset:3px}
#affairs-attendance-lunch input[type=checkbox]{width:18px;height:18px;margin:0;accent-color:var(--al-brand);flex:0 0 auto}
#affairs-attendance-lunch .al-check{display:inline-flex;gap:8px;align-items:center;min-height:44px}
#affairs-attendance-lunch .al-rule{padding:11px 13px;background:var(--al-soft);border-radius:6px;font-size:13px;margin:18px 0 12px}
#affairs-attendance-lunch .al-summary{display:flex;flex-wrap:wrap;gap:5px 18px;margin:14px 0 4px;font-size:13px}
#affairs-attendance-lunch .al-meal-total{font-weight:500;color:var(--al-brand)}
#affairs-attendance-lunch .al-toolbar{display:flex;align-items:center;gap:16px;margin-bottom:6px}
#affairs-attendance-lunch .al-selected{font-size:13px;color:var(--al-muted)}
#affairs-attendance-lunch .al-batch{display:flex;align-items:end;gap:10px;flex-wrap:wrap;background:var(--al-soft);border-radius:7px;padding:12px;margin:0 0 12px}
#affairs-attendance-lunch .al-field{display:flex;flex-direction:column;gap:5px;min-width:0;font-size:13px;flex:1 1 150px}
#affairs-attendance-lunch .al-list{border:1px solid var(--al-line);border-radius:8px;background:var(--al-paper);overflow:hidden}
#affairs-attendance-lunch .al-row{padding:12px 14px}
#affairs-attendance-lunch .al-row+.al-row{border-top:1px solid var(--al-line)}
#affairs-attendance-lunch .al-main{display:grid;grid-template-columns:minmax(90px,1fr) minmax(150px,1.6fr) auto auto;gap:8px 12px;align-items:center}
#affairs-attendance-lunch .al-person{font-weight:500;overflow-wrap:anywhere}
#affairs-attendance-lunch .al-lunch{font-size:13px;white-space:nowrap}
#affairs-attendance-lunch .al-details-button{font-size:13px;padding:8px 4px;color:var(--al-brand);border-color:transparent;background:transparent}
#affairs-attendance-lunch .al-origin{font-size:12px;color:var(--al-muted);margin-top:5px;overflow-wrap:anywhere}
#affairs-attendance-lunch .al-attention{color:var(--al-warn);background:var(--al-warnbg);border-radius:5px;padding:7px 10px;margin-top:7px;font-size:13px}
#affairs-attendance-lunch .al-details{border-top:1px solid var(--al-line);padding-top:12px;margin-top:10px}
#affairs-attendance-lunch .al-details .al-field{margin-top:12px}
#affairs-attendance-lunch .al-details textarea{width:100%;min-height:68px;resize:vertical;padding:8px 10px;background:var(--al-paper);border:1px solid var(--al-line);border-radius:6px}
#affairs-attendance-lunch textarea::placeholder{color:var(--al-muted);opacity:1}
#affairs-attendance-lunch :is(select,textarea,input):disabled{color:var(--al-ink);opacity:1}
#affairs-attendance-lunch .al-uploads{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
#affairs-attendance-lunch .al-upload{position:relative;display:inline-flex;align-items:center;min-height:44px;border:1px solid var(--al-line);border-radius:6px;padding:8px 11px;font-size:13px}
#affairs-attendance-lunch .al-upload input{position:absolute;inset:0;width:100%;height:100%;opacity:0}
#affairs-attendance-lunch .al-upload:focus-within{outline:3px solid var(--al-brand);outline-offset:3px}
#affairs-attendance-lunch .al-files{list-style:none;padding:0;margin:6px 0;color:var(--al-muted);font-size:12px;overflow-wrap:anywhere}
#affairs-attendance-lunch .al-help{font-size:13px;color:var(--al-muted);margin:10px 0;overflow-wrap:anywhere}
#affairs-attendance-lunch .al-footer{margin-top:16px}
#affairs-attendance-lunch .al-submit{width:100%}
#affairs-attendance-lunch .al-error{color:var(--al-warn);font-size:13px;margin:10px 0}
#affairs-attendance-lunch .al-receipt{background:var(--al-soft);padding:16px;border-radius:8px;margin:18px 0 10px}
#affairs-attendance-lunch .al-receipt p{margin:7px 0 12px}
#affairs-attendance-lunch .al-live{font-size:12px;color:var(--al-muted);min-height:20px;margin-top:8px}
@media(max-width:560px){#affairs-attendance-lunch .al-page{padding:18px 14px}#affairs-attendance-lunch h1{font-size:21px}#affairs-attendance-lunch .al-row{padding:10px}#affairs-attendance-lunch .al-main{grid-template-columns:minmax(0,1fr) auto;gap:4px 10px}#affairs-attendance-lunch .al-person{grid-row:1;grid-column:1}#affairs-attendance-lunch .al-details-button{grid-row:1;grid-column:2;justify-self:end}#affairs-attendance-lunch .al-result{grid-row:2;grid-column:1;width:100%}#affairs-attendance-lunch .al-lunch{grid-row:2;grid-column:2}#affairs-attendance-lunch :is(select,textarea){font-size:16px}#affairs-attendance-lunch .al-batch .al-field{flex-basis:100%}#affairs-attendance-lunch .al-batch button{width:100%}}


#affairs-attendance-record{--ar-bg:light-dark(#f5f6f3,#171b18);--ar-paper:light-dark(#fff,#222823);--ar-ink:light-dark(#23352d,#e9eee8);--ar-muted:light-dark(#5f7066,#b6c1b8);--ar-line:light-dark(#dce3d9,#465048);--ar-brand:light-dark(#2e6048,#b4d5bc);--ar-onbrand:light-dark(#fff,#172a1c);--ar-soft:light-dark(#eaf1e8,#2c3f30);--ar-red:light-dark(#ae302b,#ffaaa5);--ar-redbg:light-dark(#fff0ed,#3e2524);--ar-notice:light-dark(#89512a,#efc69e);--ar-noticebg:light-dark(#fff5e7,#372e23);font:14px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif;color:var(--ar-ink);max-width:736px;margin:auto}
#affairs-attendance-record *{box-sizing:border-box}
#affairs-attendance-record [hidden]{display:none!important}
#affairs-attendance-record .ar-preview{padding:8px 95px 10px 0;color:var(--ar-muted);font-size:12px}
#affairs-attendance-record .ar-demo{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 8px}
#affairs-attendance-record .ar-demo select{max-width:100%;min-width:0;font-size:13px}
#affairs-attendance-record .ar-demo-note{font-size:12px;color:var(--ar-muted);margin:0 0 14px}
#affairs-attendance-record .ar-page{background:var(--ar-bg);border:1px solid var(--ar-line);border-radius:12px;padding:24px}
#affairs-attendance-record h1{font-size:23px;font-weight:500;line-height:1.4;margin:0 0 6px}
#affairs-attendance-record h2{font-size:17px;font-weight:500;margin:0 0 10px}
#affairs-attendance-record p{margin:0}
#affairs-attendance-record .ar-meta{font-size:13px;color:var(--ar-muted)}
#affairs-attendance-record button,#affairs-attendance-record select,#affairs-attendance-record textarea,#affairs-attendance-record input{font:inherit;color:inherit;max-width:100%;min-width:0}
#affairs-attendance-record button,#affairs-attendance-record select{min-height:44px;background:var(--ar-paper);border:1px solid var(--ar-line);border-radius:6px;padding:8px 11px}
#affairs-attendance-record .ar-primary{background:var(--ar-brand);color:var(--ar-onbrand);border-color:var(--ar-brand)}
#affairs-attendance-record :is(button,input,select,textarea):focus-visible{outline:3px solid var(--ar-brand);outline-offset:3px}
#affairs-attendance-record .ar-state{display:flex;gap:8px 16px;flex-wrap:wrap;margin:14px 0 6px;font-weight:500}
#affairs-attendance-record .ar-good{color:var(--ar-brand)}
#affairs-attendance-record .ar-red{color:var(--ar-red)}
#affairs-attendance-record .ar-lock{background:var(--ar-redbg);color:var(--ar-red);padding:10px 12px;border-radius:6px;font-size:13px;margin:12px 0}
#affairs-attendance-record .ar-notice{background:var(--ar-noticebg);color:var(--ar-notice);padding:11px 13px;border-radius:6px;font-size:13px;margin:16px 0}
#affairs-attendance-record .ar-summary{display:flex;gap:6px 16px;flex-wrap:wrap;margin:16px 0 10px;font-size:13px}
#affairs-attendance-record .ar-count{color:var(--ar-brand);font-weight:500}
#affairs-attendance-record .ar-help{font-size:13px;color:var(--ar-muted);margin:10px 0}
#affairs-attendance-record .ar-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
#affairs-attendance-record .ar-actions button{flex:1 1 160px}
#affairs-attendance-record .ar-table{width:100%;border-collapse:collapse;font-size:13px;background:var(--ar-paper)}
#affairs-attendance-record .ar-table th{text-align:left;font-weight:500;color:var(--ar-muted);background:var(--ar-soft)}
#affairs-attendance-record .ar-table th,#affairs-attendance-record .ar-table td{padding:10px 11px;border-bottom:1px solid var(--ar-line);overflow-wrap:anywhere}
#affairs-attendance-record .ar-table td:last-child{text-align:right}
#affairs-attendance-record .ar-link{padding:5px 7px;background:transparent;border-color:transparent;color:var(--ar-brand);font-size:13px}
#affairs-attendance-record .ar-detail{padding:10px 12px;background:var(--ar-soft);font-size:13px;margin:10px 0;overflow-wrap:anywhere}
#affairs-attendance-record .ar-detail p+p{margin-top:6px}
#affairs-attendance-record .ar-history{border-top:1px solid var(--ar-line);margin-top:20px;padding-top:14px}
#affairs-attendance-record .ar-history-list{list-style:none;margin:0;padding:0}
#affairs-attendance-record .ar-history-list li{display:flex;gap:8px;align-items:center;justify-content:space-between;flex-wrap:wrap;border-bottom:1px solid var(--ar-line);padding:7px 0;font-size:13px}
#affairs-attendance-record .ar-history-list p{color:var(--ar-muted);font-size:12px}
#affairs-attendance-record .ar-selected-version{color:var(--ar-brand);font-size:13px;margin:10px 0}
#affairs-attendance-record .ar-empty{padding:20px 0;color:var(--ar-muted)}
#affairs-attendance-record .ar-receipt{background:var(--ar-soft);padding:12px;border-radius:6px;margin:12px 0;font-size:13px}
#affairs-attendance-record .ar-form{margin-top:16px}
#affairs-attendance-record .ar-bulk{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:8px 0 12px;font-size:13px}
#affairs-attendance-record .ar-bulk-fields{display:flex;flex-wrap:wrap;gap:8px;width:100%;padding:10px;background:var(--ar-soft);border-radius:6px}
#affairs-attendance-record .ar-bulk-fields label{display:flex;flex-direction:column;gap:4px;flex:1 1 150px;min-width:0}
#affairs-attendance-record .ar-bulk-fields button{align-self:end}
#affairs-attendance-record .ar-rows{border:1px solid var(--ar-line);border-radius:7px;background:var(--ar-paper);overflow:hidden}
#affairs-attendance-record .ar-row{padding:10px 12px}
#affairs-attendance-record .ar-row+.ar-row{border-top:1px solid var(--ar-line)}
#affairs-attendance-record .ar-row-head{display:grid;grid-template-columns:minmax(65px,1fr) minmax(145px,1.8fr) auto auto;gap:6px 10px;align-items:center}
#affairs-attendance-record .ar-check{display:inline-flex;align-items:center;gap:7px;min-height:44px;font-size:13px;white-space:nowrap}
#affairs-attendance-record input[type=checkbox]{width:18px;height:18px;accent-color:var(--ar-brand);margin:0}
#affairs-attendance-record .ar-field{display:flex;flex-direction:column;gap:5px;font-size:13px;margin-top:10px}
#affairs-attendance-record textarea{min-height:66px;width:100%;border:1px solid var(--ar-line);border-radius:6px;background:var(--ar-paper);padding:8px 10px;resize:vertical}
#affairs-attendance-record textarea::placeholder{color:var(--ar-muted);opacity:1}
#affairs-attendance-record .ar-uploads{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 6px}
#affairs-attendance-record .ar-upload{position:relative;display:inline-flex;align-items:center;border:1px solid var(--ar-line);border-radius:6px;padding:8px 10px;min-height:44px;font-size:13px}
#affairs-attendance-record .ar-upload input{position:absolute;inset:0;width:100%;height:100%;opacity:0}
#affairs-attendance-record .ar-upload:focus-within{outline:3px solid var(--ar-brand);outline-offset:3px}
#affairs-attendance-record .ar-files{list-style:none;padding:0;margin:6px 0;font-size:12px;color:var(--ar-muted);overflow-wrap:anywhere}
#affairs-attendance-record .ar-live{min-height:20px;color:var(--ar-muted);font-size:12px;margin-top:10px}
@media(max-width:560px){#affairs-attendance-record .ar-page{padding:18px 14px}#affairs-attendance-record h1{font-size:21px}#affairs-attendance-record .ar-table th,#affairs-attendance-record .ar-table td{padding:8px 5px}#affairs-attendance-record .ar-row-head{grid-template-columns:minmax(0,1fr) auto}#affairs-attendance-record .ar-person{grid-row:1;grid-column:1}#affairs-attendance-record .ar-row-head .ar-link{grid-row:1;grid-column:2;justify-self:end}#affairs-attendance-record .ar-row-head select{grid-row:2;grid-column:1;width:100%}#affairs-attendance-record .ar-row-head .ar-check:not(.ar-person){grid-row:2;grid-column:2}#affairs-attendance-record :is(select,textarea){font-size:16px}#affairs-attendance-record .ar-actions button{flex-basis:100%}}
@media(max-width:380px){#affairs-attendance-record .ar-row-head select{grid-column:1/-1}#affairs-attendance-record .ar-row-head .ar-check:not(.ar-person){grid-row:3;grid-column:1/-1}}


#affairs-kitchen-lunch{--kl-bg:light-dark(#f5f6f3,#171b18);--kl-paper:light-dark(#fff,#222823);--kl-ink:light-dark(#23352d,#e9eee8);--kl-muted:light-dark(#5f7066,#b6c1b8);--kl-line:light-dark(#dce3d9,#465048);--kl-brand:light-dark(#2e6048,#b4d5bc);--kl-soft:light-dark(#eaf1e8,#2c3f30);--kl-red:light-dark(#ab302c,#ffaaa5);--kl-redbg:light-dark(#fff0ed,#3e2524);--kl-warn:light-dark(#805022,#efc69e);--kl-warnbg:light-dark(#fff5e7,#372e23);font:14px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif;color:var(--kl-ink);max-width:736px;margin:auto}
#affairs-kitchen-lunch *{box-sizing:border-box}
#affairs-kitchen-lunch [hidden]{display:none!important}
#affairs-kitchen-lunch .kl-preview{font-size:12px;color:var(--kl-muted);padding:8px 95px 12px 0}
#affairs-kitchen-lunch .kl-scenario{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px}
#affairs-kitchen-lunch select,#affairs-kitchen-lunch button{font:inherit;color:inherit;background:var(--kl-paper);min-height:44px;border:1px solid var(--kl-line);border-radius:6px;padding:8px 11px;max-width:100%;min-width:0}
#affairs-kitchen-lunch :is(select,button):focus-visible{outline:3px solid var(--kl-brand);outline-offset:3px}
#affairs-kitchen-lunch .kl-demo-note{font-size:12px;color:var(--kl-muted);margin:8px 0 14px}
#affairs-kitchen-lunch .kl-page{padding:24px;border:1px solid var(--kl-line);border-radius:12px;background:var(--kl-bg)}
#affairs-kitchen-lunch h1{font-size:23px;line-height:1.4;font-weight:500;margin:0 0 6px}
#affairs-kitchen-lunch h2{font-size:17px;font-weight:500;margin:0}
#affairs-kitchen-lunch p{margin:0}
#affairs-kitchen-lunch .kl-meta{font-size:13px;color:var(--kl-muted)}
#affairs-kitchen-lunch .kl-time{margin:8px 0 0;font-size:13px;color:var(--kl-muted)}
#affairs-kitchen-lunch .kl-overview{margin:20px 0 14px;padding:16px;background:var(--kl-soft);border-radius:8px}
#affairs-kitchen-lunch .kl-overview-main{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:4px 16px}
#affairs-kitchen-lunch .kl-number{font-size:30px;font-weight:500;color:var(--kl-brand);font-variant-numeric:tabular-nums}
#affairs-kitchen-lunch .kl-number small{font-size:14px;font-weight:400;margin-left:6px}
#affairs-kitchen-lunch .kl-progress{font-size:13px;margin:5px 0}
#affairs-kitchen-lunch .kl-pending{font-size:13px;color:var(--kl-warn);margin-top:6px}
#affairs-kitchen-lunch .kl-red{color:var(--kl-red)}
#affairs-kitchen-lunch .kl-alert{padding:11px 13px;background:var(--kl-warnbg);color:var(--kl-warn);border-radius:6px;margin:14px 0;font-size:13px}
#affairs-kitchen-lunch .kl-alert.kl-alert-late{background:var(--kl-redbg);color:var(--kl-red)}
#affairs-kitchen-lunch .kl-list-title{margin:20px 0 10px;display:flex;justify-content:space-between;align-items:center;gap:8px}
#affairs-kitchen-lunch .kl-list{border:1px solid var(--kl-line);border-radius:8px;background:var(--kl-paper);overflow:hidden}
#affairs-kitchen-lunch .kl-class{padding:15px}
#affairs-kitchen-lunch .kl-class+.kl-class{border-top:1px solid var(--kl-line)}
#affairs-kitchen-lunch .kl-class-main{display:flex;align-items:center;justify-content:space-between;gap:10px}
#affairs-kitchen-lunch .kl-class-name{font-weight:500;font-size:16px}
#affairs-kitchen-lunch .kl-class-count{font-weight:500;font-size:18px;color:var(--kl-brand);font-variant-numeric:tabular-nums}
#affairs-kitchen-lunch .kl-class-missing{font-size:14px;font-weight:500;color:var(--kl-warn)}
#affairs-kitchen-lunch .kl-class-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 12px;margin-top:5px}
#affairs-kitchen-lunch .kl-update{font-size:13px;color:var(--kl-muted)}
#affairs-kitchen-lunch .kl-update.kl-red{color:var(--kl-red)}
#affairs-kitchen-lunch .kl-change{font-size:13px;font-weight:500;color:var(--kl-brand);margin-top:5px}
#affairs-kitchen-lunch .kl-change.kl-red{color:var(--kl-red)}
#affairs-kitchen-lunch .kl-history-button{font-size:13px;min-height:44px;border-color:transparent;background:transparent;color:var(--kl-brand);padding:6px 0}
#affairs-kitchen-lunch .kl-history{margin:10px 0 0;padding:10px 12px;background:var(--kl-soft);border-radius:5px;list-style:none;font-size:13px}
#affairs-kitchen-lunch .kl-history li+li{border-top:1px solid var(--kl-line);margin-top:9px;padding-top:9px}
#affairs-kitchen-lunch .kl-history p{font-size:12px;color:var(--kl-muted);margin-top:3px}
#affairs-kitchen-lunch .kl-help{font-size:13px;color:var(--kl-muted);margin-top:14px}
@media(max-width:520px){#affairs-kitchen-lunch .kl-page{padding:18px 14px}#affairs-kitchen-lunch h1{font-size:21px}#affairs-kitchen-lunch .kl-overview{padding:13px}#affairs-kitchen-lunch .kl-class{padding:13px}#affairs-kitchen-lunch .kl-scenario select{font-size:16px}#affairs-kitchen-lunch .kl-overview-main{align-items:center}#affairs-kitchen-lunch .kl-overview-main h2{flex-basis:100%}}

/* Runtime fields retain the confirmed attendance pages and their responsive width. */
:is(#affairs-attendance-lunch,#affairs-attendance-record) .attendance-fields{display:flex;flex-wrap:wrap;gap:12px;margin:10px 0}
:is(#affairs-attendance-lunch,#affairs-attendance-record) .attendance-fields>label{flex:1 1 130px;min-width:0}
:is(#affairs-attendance-lunch,#affairs-attendance-record) :is(input,select,textarea){max-width:100%}
:is(#affairs-attendance-lunch,#affairs-attendance-record) :is(details,fieldset){min-width:0;overflow-wrap:anywhere}
:is(#affairs-attendance-lunch,#affairs-attendance-record) .rs-camera{width:min(600px,94vw);border:1px solid #bbb;border-radius:8px}
:is(#affairs-attendance-lunch,#affairs-attendance-record) .rs-camera video{width:100%;max-height:65vh}

#affairs-kitchen-lunch :is(h3,details,p){overflow-wrap:anywhere}
#affairs-kitchen-lunch .kl-time{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
#affairs-kitchen-lunch [data-refresh]{min-height:44px}
