.profile-heading{margin:20px 0}.profile-heading h2{font-size:28px;margin:0 0 8px}.profile-heading small{font-size:18px;color:#645f56}.profile-heading p{color:#645f56}.profile-notes{padding:16px 20px;background:#fff3ce;border-radius:12px;color:#66521e}.profile-notes p{white-space:pre-wrap;margin:8px 0 0}.records-filters{display:flex;align-items:end;gap:20px;flex-wrap:wrap;margin:28px 0 16px}.records-filters label{display:grid;gap:8px}.records-filters select{padding:10px;border:1px solid #aaa397;border-radius:8px;background:white;color:#37352f;font:inherit}.records-filters span{color:#645f56;font-size:14px}.student-history-row{padding:20px 0;border-bottom:1px solid #d9d4cb}.student-history-row>div{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.student-history-row p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}.student-history-row small{color:#645f56;display:block;margin-bottom:12px}.student-history-row time,.recurring-dates time{font-variant-numeric:tabular-nums}.recurring-toolbar{display:flex;gap:20px;align-items:center;justify-content:space-between}.recurring-toolbar p{line-height:1.6}.recurring-grants{margin:24px 0;padding:20px;background:#f4f1e9;border-radius:12px}.recurring-grants summary,.recurring-row summary{cursor:pointer;font-weight:600}.grant-list{display:flex;gap:16px 24px;flex-wrap:wrap}.grant-list label{padding:8px 0}.recurring-row{padding:28px 0;border-top:1px solid #d9d4cb}.recurring-row-heading{display:flex;justify-content:space-between;gap:20px}.recurring-row h2{font-size:20px;line-height:1.6;margin:12px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.recurring-actions{display:flex;gap:8px;align-items:start;flex-shrink:0}.recurring-dates{padding:0;list-style:none;max-width:560px}.recurring-dates li{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:8px 0;border-bottom:1px solid #e7e2d9}.recurring-error{color:#a22f24;line-height:1.6}.weekday-picker{display:flex;flex-wrap:wrap;gap:16px;padding:16px;border:1px solid #d9d4cb;border-radius:8px;margin-bottom:20px}.weekday-picker[hidden]{display:none}.weekday-picker label{padding:6px 0}.student-history-row .secondary{margin-top:4px}#student-records-view button:focus-visible,#recurring-view button:focus-visible{outline:3px solid #3d7753;outline-offset:3px}#recurring-view button:disabled{opacity:.55;cursor:wait}#student-records-view,#recurring-view{max-width:1100px}#student-records-view [data-profile-more]{margin-top:24px}#recurring-view .hint{color:#645f56}#recurring-view .text-btn{min-height:36px}
@media(max-width:650px){.recurring-toolbar,.recurring-row-heading{align-items:stretch;flex-direction:column}.recurring-actions{justify-content:flex-end}.records-filters{gap:16px}.records-filters label{flex:1;min-width:130px}.profile-heading h2{font-size:24px}.recurring-grants{padding:16px}.student-history-row>div{gap:8px}.recurring-dates li{gap:10px}}

#student-records-view,#recurring-view{font-size:15px;line-height:1.6}#student-records-view .hint,#recurring-view .hint{font-size:14px}#student-records-view .badge,#recurring-view .badge{font-size:13px;margin-right:6px}#recurring-button{gap:12px}#recurring-button svg{flex-shrink:0}
#student-records-view p,#recurring-view p{font-size:15px;color:#645f56}#student-records-view p.hint,#recurring-view p.hint{font-size:14px}#student-records-view .text-btn,#recurring-view .text-btn{font-size:14px}#student-records-view .student-history-row small{font-size:13px}#recurring-view p.recurring-error{color:#a22f24}

/* 學生查詢（LINE 選單入口） */
.lookup-results{display:grid;gap:8px;max-height:60vh;overflow:auto;margin-top:4px}
.lookup-row{display:grid;gap:3px;text-align:left;padding:12px 14px;border:1px solid #ecd7c4;border-radius:12px;background:#fff;color:#49362c}
.lookup-row strong{font-size:16px;font-weight:700}
.lookup-row span{font-size:13px;color:#786353}
.lookup-row small{font-size:13px;color:#a15324;white-space:pre-wrap;overflow-wrap:anywhere}
