.access-panel{width:min(440px,calc(100% - 32px));margin:clamp(24px,10vh,100px) auto;display:flex;flex-direction:column;gap:22px}.access-panel .brand{padding:0 0 16px}.access-panel h1{font-size:30px}.access-panel>p{color:var(--muted)}.access-panel form{display:flex;flex-direction:column;gap:18px}.access-panel label{display:flex;flex-direction:column;gap:7px;font-size:14px;font-weight:600}.access-panel .input{width:100%;min-height:48px}.access-panel .btn{min-height:48px}.access-message:empty{display:none}.access-message{font-size:14px;color:#a1342a}.access-loading{margin:60px 24px}
.dashboard-sourcebar{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:10px}.source-status{font-size:12px;color:var(--muted);min-height:44px;text-align:left}.source-status:hover{text-decoration:underline}.mobile-menu{display:none}.import-file{display:flex;flex-direction:column;gap:10px;font-size:14px}.import-file .input{max-width:100%;min-height:44px}.import-preview{display:flex;flex-direction:column;gap:16px}.drawer-head h2{overflow-wrap:anywhere}#dialog .card{margin-bottom:16px}
@media(max-width:900px){.mobile-menu{display:inline-flex}.topbar{flex-wrap:wrap}.topbar .crumb{font-size:12px}.topbar .filterbar{min-width:0;max-width:100%}.topbar .select{max-width:190px}.side:not(.is-open){display:none}.side.is-open{display:flex;position:static;height:auto}.side.is-open nav{display:flex;flex-wrap:wrap;gap:4px}.side.is-open .brand{display:none}.side.is-open .foot{display:none}.side.is-open .navbtn{display:flex;width:auto;min-height:44px}.side.is-open .navbtn span{display:inline}.dashboard-sourcebar{justify-content:space-between}.source-status{max-width:70%}}
.import-options{display:grid;gap:12px;margin:16px 0}
.import-options>label{display:grid;gap:6px}
.import-options .input{min-height:44px}
.import-options>.import-checkbox{display:flex;align-items:center;gap:10px;min-height:44px}
.import-checkbox input{width:20px;height:20px;flex-shrink:0}
#dialog [data-import-apply]{min-height:44px}
.report-mapping-confirm{display:flex;align-items:center;gap:10px;min-height:44px;font-size:13px}
.report-mapping-confirm input{width:20px;height:20px;flex-shrink:0}
.report-mapping-candidate{overflow-wrap:anywhere}

/* Existing drawer/card language, with usable form targets and bounded long history text. */
[data-finance-form],[data-followup-form]{display:grid;gap:14px}
[data-finance-form] label,[data-followup-form] label{display:grid;gap:6px;font-size:13px}
[data-finance-form] .input,[data-followup-form] .input,#finance-year{min-height:44px;width:100%}
[data-finance-form] textarea,[data-followup-form] textarea{resize:vertical;min-height:120px}
.finance-totals{grid-template-columns:repeat(2,minmax(0,1fr))}
.finance-totals .val{font-size:clamp(18px,2vw,28px);overflow-wrap:anywhere}
.followup-history{overflow-wrap:anywhere}
@media(max-width:540px){.finance-totals{grid-template-columns:1fr}}
[data-finance-open],[data-finance-status],[data-finance-delete],
[data-finance-form] button,[data-followup-form] button,[data-workflow-confirm] button{min-height:44px}
