/* Agency interface: neutral actions, readable controls and explicit status. */
body:has(.agency-main){--agency-control:46px;--agency-muted:#b5b5b0;--agency-border:#454545;--agency-radius:8px;color-scheme:dark}
.agency-main,.agency-dialog{font-size:16px;line-height:1.6}
.agency-main:has(.agency-week-planner){padding:32px clamp(18px,3vw,48px) 56px}
.agency-main [hidden],.agency-dialog [hidden]{display:none!important}
.agency-main h1,.planner-intro h1{font-size:34px;line-height:1.2;letter-spacing:-1px}
.agency-main h2{line-height:1.35}.agency-main h3{line-height:1.4}
.agency-main .page-title{margin-bottom:28px}.agency-main .page-title p{color:var(--agency-muted)}
.agency-main .eyebrow{font-size:12px;line-height:1.5;color:#b5b5b0;letter-spacing:1.4px}
.agency-main .button,.agency-dialog .button,.agency-header>#agency-session-logout{min-height:var(--agency-control,46px);height:auto;padding:11px 16px;font-size:15px;line-height:1.4;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-align:center;white-space:normal;box-sizing:border-box}
.agency-main .button:not(.primary),.agency-dialog .button:not(.primary){background:#252525;border-color:var(--agency-border);color:#e0e0dc}
.agency-main .button:not(.primary):hover,.agency-dialog .button:not(.primary):hover{background:#343434;border-color:#777;color:#fff}
.agency-main .button.primary,.agency-dialog .button.primary{background:#e4e4df;border-color:#e4e4df;color:#171717;font-weight:650;box-shadow:none}
.agency-main .button.primary:hover,.agency-dialog .button.primary:hover{background:#fff;border-color:#fff;color:#111}
.agency-main .button:disabled,.agency-dialog .button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}
.agency-main .button.primary:disabled,.agency-dialog .button.primary:disabled{background:#2c2c2c;border-color:#484848;color:#999;opacity:1;box-shadow:none}
.agency-main .is-caution,.agency-dialog .is-caution{color:#f1b9b3!important}
.agency-main .button.is-caution:hover,.agency-dialog .button.is-caution:hover{border-color:#9f6a65;background:#352524}
.agency-main .field,.agency-dialog .field,.agency-main select.field,.agency-dialog select.field{min-height:46px;height:auto;font-size:16px;line-height:1.5;border-color:#4b4b4b;background-color:#232323;color:#eee;border-radius:7px}
.agency-main select.field,.agency-dialog select.field{padding-right:40px;background-position:right 14px center;background-size:13px;white-space:nowrap;text-overflow:ellipsis}
.agency-main form label,.agency-dialog label{font-size:15px;line-height:1.5;color:#d2d2ce}
.agency-main .muted-note,.agency-dialog .muted-note{font-size:14px;line-height:1.7;color:var(--agency-muted);overflow-wrap:anywhere}
.agency-main .form-error,.agency-dialog .form-error{font-size:15px;line-height:1.6;color:#ffc1ba;background:#352323;border:1px solid #78514c;border-radius:7px;padding:12px 14px}
.agency-main .tag{font-size:13px;line-height:1.4;padding:5px 9px;white-space:nowrap}
.agency-main .tag.paid{color:#bce0c7;border-color:#4b6754;background:#25352b}.agency-main .tag.draft{color:#c3c3bd;background:#2b2b2b;border-color:#505050}
.agency-main :is(button,a,summary,input,select,textarea):focus-visible,.agency-header :is(button,a):focus-visible,.agency-dialog :is(button,a,input,select,textarea):focus-visible{outline:2px solid #e4e4df;outline-offset:3px}
.agency-main input[type=checkbox],.agency-dialog input[type=checkbox]{accent-color:#ddd;cursor:pointer;flex-shrink:0}
.agency-main input:is([type=date],[type=time]),.agency-dialog input:is([type=date],[type=time]){color-scheme:dark;min-width:0}
.agency-main a[x-apple-data-detectors],.agency-dialog a[x-apple-data-detectors]{color:inherit!important;font:inherit!important;text-decoration:none!important;border:0!important;background:none!important}
.agency-skip-link{position:fixed;left:20px;top:-70px;z-index:150;padding:12px 18px;background:#eee;color:#111;border-radius:7px}.agency-skip-link:focus{top:12px}

/* Navigation stays in one row on desktop, then becomes a roomy mobile menu. */
.agency-header:has(.agency-header-menu){gap:18px;padding:18px clamp(18px,3vw,48px)}
.agency-header .agency-header-menu{flex-wrap:nowrap;gap:3px}
.agency-header .agency-header-menu a{font-size:15px;min-height:46px;padding:11px 12px;border-radius:7px;line-height:1.4}
.agency-header .agency-header-menu a[aria-current=page]{background:#303030;border-color:#5c5c5c;color:#fff}
.agency-header .agency-header-menu a>.icon{width:19px;height:19px;margin-right:7px}
.agency-header:has(.agency-header-menu)>#agency-session-logout{font-size:15px;min-height:46px}

/* Planner: dates and view choice first, then equally sized filters and actions. */
.planner-toolbar{display:flex;flex-direction:column;align-items:stretch;gap:16px;margin-bottom:22px}
.planner-navigation{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.agency-main .planner-week-controls .button{height:46px;min-height:46px;padding:10px 13px}
.agency-main .planner-week-controls .button:has(.icon){width:46px;padding:11px}
.planner-week-controls h2{font-size:18px;margin-left:10px}
.planner-view-toggle{padding:3px;gap:3px;border-radius:8px}
.agency-main .planner-view-toggle .button{height:38px;min-height:38px;padding:7px 14px;font-size:15px;background:transparent;border-color:transparent;color:#b9b9b4}
.agency-main .planner-view-toggle .button[aria-pressed=true]{background:#3a3a3a;border-color:#666;color:#fff}
.planner-tools{display:grid;grid-template-columns:minmax(220px,1fr) minmax(200px,1fr) auto auto;gap:12px;width:100%;align-items:stretch}
.agency-main .planner-tools .field,.agency-main .planner-tools .button{width:100%;max-width:none;min-width:0;min-height:46px;height:46px;font-size:15px;line-height:1.4;margin:0}
.agency-main .planner-tools .button{padding:10px 16px;white-space:nowrap}
.planner-tools .icon{width:18px;height:18px}
.planner-today-report{padding:17px 20px;min-width:0}.planner-today-report small{text-transform:none;color:#b5b5af;font-size:14px}
.planner-intro p{color:#b5b5af}.planner-hint{font-size:14px;line-height:1.65;color:#aaa}
.agency-main .planner-agenda-day-heading h2{font-size:18px;text-transform:none;line-height:1.5;min-width:0;gap:10px}
.planner-agenda-date{display:inline;min-width:0;color:inherit;font:inherit;text-decoration:none}
.planner-agenda-day-heading .planner-today-badge{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-height:26px;padding:3px 8px;font-size:12px;font-weight:600;letter-spacing:.3px}
.agency-main .planner-list-day-toggle{width:44px;min-width:44px;height:44px;min-height:44px;padding:10px}
.planner-agenda-day-heading{padding:15px 18px;gap:16px}.planner-agenda-group>h3{font-size:15px;color:#d0d0ca}.planner-agenda-group>h3>span{font-size:14px;color:#aaa}
.planner-agenda-copy>small{font-size:14px;color:#b5b5af}.planner-agenda-time{font-size:15px}.planner-agenda-time small{font-size:14px;color:#aaa}
.planner-agenda-item{min-height:44px}.planner-agenda-row.is-done .planner-agenda-copy strong{color:#a4a4a0}
.planner-agenda-empty{color:#aaa;font-size:15px}.planner-agenda-row.is-task>input{width:22px;height:22px}
.agency-main .planner-agenda-tasks>h3>[data-add-task]{min-height:42px;font-size:14px;padding:9px 13px}
.planner-task-copy{display:flex;align-items:center;min-height:44px}
.planner-task input{width:22px;height:22px}
.planner-task{gap:10px}
.planner-accordion .is-expanded .planner-task{align-items:center}
.planner-accordion .is-expanded .planner-task input{margin:0}
.planner-task-copy>span{font-size:16px}
.planner-add-task{font-size:15px;min-height:44px}
.planner-time-axis>span{font-size:12px;color:#b5b5af}.planner-day-heading>span{font-size:13px}
.agency-main .planner-day-toggle,.agency-main .planner-task-day-toggle{width:44px;height:44px;min-height:44px}
.planner-event-open strong{font-size:15px}.planner-event-open em{font-size:13px}
.agency-week-planner .planner-time-day.is-collapsed{overflow-x:clip}
.agency-week-planner .planner-event-marker{padding:0;min-width:0}
.agency-week-planner .planner-all-day-column.is-expanded{
  --planner-all-day-inset:10px;
  --planner-all-day-button-size:28px;
  padding-top:calc(var(--planner-all-day-inset) + var(--planner-all-day-button-size) + 8px);
}
.agency-week-planner .planner-all-day-column .planner-all-day-add{
  top:var(--planner-all-day-inset);
  right:var(--planner-all-day-inset);
  width:var(--planner-all-day-button-size);
  height:var(--planner-all-day-button-size);
  padding:0;
}
.agency-week-planner .planner-accordion .is-expanded .planner-event .planner-event-open{gap:14px}
.agency-week-planner .planner-agenda-row.is-event .planner-agenda-item{gap:14px}
.planner-person-badge.is-self{color:#dbffe9;background:#28593e;border-color:#8ce0aa;box-shadow:0 0 0 1px #8ce0aa40;font-weight:700}
.planner-accordion .is-expanded .planner-event.is-timed .planner-event-open strong{font-size:15px;line-height:1.35}.planner-accordion .is-expanded .planner-event.is-timed .planner-event-open em{font-size:13px;line-height:1.4}.planner-accordion .is-expanded .planner-event.is-short .planner-event-open strong{font-size:14px;line-height:1.3}
.planner-editor-heading{align-items:flex-start}.agency-dialog .planner-editor-heading h2,.agency-dialog>form>h2{font-size:25px;line-height:1.3}
.agency-dialog [data-close-planner],.agency-dialog .agency-post-close{height:44px;min-height:44px;min-width:44px;width:44px;padding:10px;flex-shrink:0}
.agency-dialog .planner-editor-actions{align-items:stretch;gap:12px;border-top:1px solid #444;padding-top:20px;margin-top:24px}
.agency-dialog .planner-editor-actions>.primary{order:2;margin-left:auto}.agency-dialog .planner-editor-actions>.is-caution{order:0;margin-right:auto}
.agency-dialog label.planner-person-choice{font-size:15px;min-height:48px;padding:10px 12px}.agency-dialog .planner-people-fieldset legend{font-size:15px;color:#d2d2ce}

/* Client cards separate identity from the two practical actions. */
.agency-client-grid{gap:20px;align-items:stretch}
.agency-main .agency-client-card{display:flex;flex-direction:column;align-items:stretch;gap:22px;padding:24px;min-width:0}
.agency-client-identity{display:flex;gap:15px;align-items:center;min-width:0;flex:1}.agency-client-identity>div:last-child{min-width:0;flex:1}
.agency-client-card h2{font-size:22px;line-height:1.35;overflow-wrap:anywhere}.agency-client-card p{font-size:15px;color:#b5b5af;margin-top:6px}.agency-client-avatar{width:52px;height:52px}
.agency-client-actions{display:grid;grid-template-columns:1fr 1.25fr;gap:12px;border-top:1px solid #353535;padding-top:18px}
.agency-client-actions>.button{margin:0;width:100%;font-size:15px;white-space:normal}
.agency-travel-origin .form-body{padding-top:8px}.agency-travel-origin h2{font-size:24px}
.agency-origin-fields{flex-wrap:wrap}.agency-origin-fields>.field{flex:1 1 300px}.agency-origin-fields>.button{white-space:nowrap}
.agency-travel-connection,.agency-travel-free-limit{font-size:14px}

/* Existing accounts come before creation, including in reading/keyboard order. */
.agency-account-grid{grid-template-columns:minmax(0,1.45fr) minmax(330px,1fr);gap:24px;align-items:start}
.agency-existing-accounts{grid-column:1;grid-row:1}.agency-new-account{grid-column:2;grid-row:1;scroll-margin-top:24px}
.agency-existing-accounts:has(+ .agency-new-account[hidden]){grid-column:1/-1}
.agency-existing-accounts .panel-head{align-items:center;gap:14px;flex-wrap:wrap}.agency-existing-accounts .panel-head .button{flex-shrink:0}
.agency-user-row{gap:12px;padding:22px 24px}.agency-user-row>.inline-actions{flex:0 0 100%;display:flex;justify-content:flex-start;margin-top:4px;gap:12px}
.agency-user-row .button{font-size:14px}.agency-user-row small{font-size:14px;color:#b5b5af}.agency-account-grid h2{font-size:22px;margin-top:0}
.agency-new-account h2{margin:10px 0 12px}.agency-account-grid form small{font-size:14px;color:#b5b5af}.agency-account-grid .field{min-height:46px}

/* Settings are two short, clearly labeled panels rather than a long page. */
.agency-settings-tabs{display:flex;gap:8px;margin-bottom:22px;flex-wrap:wrap}
.agency-main .agency-settings-tabs .button[aria-selected=true],.agency-main .agency-settings-tabs .button[aria-selected=true]:hover{background:#deded9;color:#171717;border-color:#deded9;font-weight:600}
.agency-settings>.agency-team-access{margin:0}.agency-settings .panel-head h2{font-size:23px}
.agency-team-member{gap:14px}.agency-team-member>div{min-width:0}.agency-team-member strong{overflow-wrap:anywhere;font-size:16px}.agency-team-member small{font-size:14px;color:#b5b5af}
.agency-team-member .tag{flex-shrink:0}.agency-team-session{font-size:14px;overflow-wrap:anywhere}
.agency-settings .agency-mail-panel{margin-top:0!important}.agency-mail-panel .inline-actions{gap:12px;display:flex;flex-wrap:wrap}.agency-mail-panel .inline-actions>.button{font-size:15px}
.agency-mail-summary{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.agency-mail-summary p{font-size:15px;color:#c5c5bf}
.agency-mail-facts{display:grid;grid-template-columns:1fr 1fr;gap:22px 30px;margin:26px 0;padding:24px 0;border-top:1px solid #383838;border-bottom:1px solid #383838}.agency-mail-facts dt{font-size:14px;color:#b5b5af;margin-bottom:7px}.agency-mail-facts dd{font-size:16px;line-height:1.6;margin:0;color:#e5e5df;overflow-wrap:anywhere}
.agency-mail-test-recipient{margin-top:12px}.agency-mail-activity{border-top:1px solid #383838;margin-top:24px;padding-top:12px;color:#b5b5af;font-size:14px}.agency-mail-activity>summary{cursor:pointer;min-height:44px;padding-block:10px}.agency-mail-activity>div{display:flex;gap:10px;flex-wrap:wrap;padding:10px 0}
.agency-signin-card .password-field button{top:0;bottom:0;right:8px;min-height:46px;padding:0 8px;font-size:14px}.agency-signin-card .agency-auth-help{color:#b5b5af;font-size:15px}.agency-signin-card .agency-auth-reset-link,.agency-signin-card .agency-client-return{font-size:15px;min-height:44px}
.agency-work-panel{margin-top:0}.agency-work-panel .panel-head h2{font-size:23px}.agency-work-panel .panel-head{align-items:center}.agency-work-item summary{min-height:64px}
.agency-work-detail .work-description{font-size:16px}

/* Travel amounts remain prominent; labels and actions share one type scale. */
.travel-ledger-tools .button{min-height:46px;font-size:15px}.agency-main .travel-refresh{width:46px;min-width:46px;padding:11px}
.travel-person-open h3{font-size:21px}.travel-person-state{font-size:13px}.travel-person-balance>span{font-size:14px;color:#b5b5af}
.travel-person-actions .travel-history-link,.travel-person-actions .button{font-size:15px;min-height:46px;line-height:1.4}
.travel-report>span,.travel-overview-heading h2{font-size:16px}.travel-help{font-size:14px}.travel-help>summary{min-height:44px;display:flex;align-items:center}
.travel-tabs{gap:22px}.travel-tabs>button{font-size:15px;min-height:48px}.travel-history-filters{gap:12px;align-items:stretch}
.agency-main .travel-history-filters .field{min-height:46px;font-size:15px}.travel-period-picker>summary{min-height:46px;font-size:15px}.travel-period-popover .field{font-size:16px}
.agency-main .travel-history-filters .button{min-height:46px;font-size:15px}.travel-export{white-space:nowrap!important}
.travel-empty p{font-size:15px;color:#b5b5af}.travel-empty>.button{font-size:15px;min-height:46px}
.travel-trip-title h3{font-size:17px}.travel-trip-title span:not(.agency-calendar-avatar){font-size:14px;color:#b5b5af}.travel-trip-date strong,.travel-trip-date>span,.travel-route-detail,.travel-route-detail>summary,.travel-route-detail a{font-size:14px}
.travel-trip-menu>summary{width:44px;height:44px}.travel-trip-menu>div{top:48px}.travel-trip-menu button{min-height:44px;font-size:15px}
.travel-cost-client strong{font-size:16px}.travel-cost-client small,.travel-cost-table-head{font-size:14px;color:#b5b5af}.travel-settlement summary small{font-size:14px}

@media(max-width:1250px){
 .agency-header:has(.agency-header-menu){flex-wrap:wrap;gap:12px}.agency-header:has(.agency-header-menu)>img{width:180px;max-width:calc(100% - 64px)}
 .agency-header .agency-menu-toggle:not([hidden]){display:flex;align-items:center;justify-content:center;width:46px;height:46px;min-width:46px;margin-left:auto;padding:11px;border:1px solid #4b4b4b;border-radius:7px;background:#242424;color:#ddd;order:2}
 .agency-header .agency-header-menu,.agency-header:has(.agency-header-menu)>#agency-session-logout{display:none}
 .agency-header.agency-menu-open .agency-header-menu{display:flex;order:3;flex:0 0 100%;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:5px;overflow:visible;padding:12px 0 0;margin:0;border-top:1px solid #383838}
 .agency-header.agency-menu-open .agency-header-menu a{justify-content:flex-start;min-height:48px;font-size:16px;padding:12px 14px}
 .agency-header.agency-menu-open>#agency-session-logout:not([hidden]){display:flex;order:4;width:100%;margin:0;min-height:46px}
}
@media(max-width:1000px){.planner-tools{grid-template-columns:1fr 1fr}.planner-tools .field{width:100%}.agency-account-grid{grid-template-columns:1fr}.agency-existing-accounts{grid-column:1;grid-row:1}.agency-new-account{grid-column:1;grid-row:2}.agency-client-grid{grid-template-columns:1fr 1fr}}
@media(max-width:800px){
 .agency-main:has(.agency-week-planner){padding:26px 18px 40px}.agency-main h1,.planner-intro h1{font-size:30px;line-height:1.25}.planner-intro{gap:18px;margin-bottom:24px}
 .planner-navigation{gap:12px}.planner-week-controls{width:100%;flex-wrap:wrap;gap:8px}.planner-week-controls h2{font-size:16px;margin-left:4px}.planner-view-toggle{display:none!important}
 .agency-main .planner-tools .field,.agency-main .planner-tools .button{height:46px;min-height:46px;font-size:14px}.agency-main .planner-tools .button{padding:10px 9px}
 .planner-tools{gap:10px}.planner-tools #refresh-agency-calendar .icon{display:none}.agency-main .planner-agenda-day-heading h2{font-size:16px;gap:8px}.planner-agenda-day-heading{padding:13px 12px;gap:10px}
 .agency-main .planner-list-day-toggle{width:44px;min-width:44px;height:44px;min-height:44px;padding:10px}.planner-agenda-date{max-width:100%;line-height:1.5}
 .planner-agenda-day-heading .planner-today-badge{font-size:11px;min-height:24px;padding:3px 7px}.planner-agenda-copy strong{font-size:16px}.planner-agenda-copy>small{font-size:14px}
 .planner-agenda-group>h3{font-size:15px}.planner-agenda-row.is-event{grid-template-columns:60px minmax(0,1fr);gap:10px}.planner-agenda-time,.planner-agenda-time small{font-size:14px}
 .planner-agenda-item .agency-calendar-avatar.compact,.planner-agenda-item .agency-calendar-avatar.compact img{width:30px;height:30px;min-width:30px}.planner-agenda-item{gap:10px}
 .agency-client-grid{grid-template-columns:1fr}.agency-main .agency-client-card{padding:21px;gap:18px}.agency-client-card h2{font-size:21px}.agency-client-actions{gap:10px}
 .agency-client-actions .button{font-size:14px;padding:10px}.agency-main .form-body{padding:22px 20px}
 .agency-main .agency-settings .panel-head{padding:22px 20px}.agency-team-members{padding-inline:20px}.agency-team-member{align-items:flex-start;flex-wrap:wrap}.agency-team-member .tag{margin-left:54px}
 .agency-settings-tabs{gap:10px}.agency-settings-tabs>.button{flex:1;font-size:15px;padding-inline:10px}.agency-mail-panel .inline-actions>.button{width:100%}
 .agency-mail-facts{grid-template-columns:1fr;gap:18px}.agency-mail-summary{gap:12px}
 .agency-user-row{padding:20px}.agency-user-row .inline-actions{display:grid;grid-template-columns:1.2fr 1fr;width:100%}.agency-user-row .inline-actions .button{width:100%;font-size:14px;padding:10px}
 .agency-dialog{max-height:92dvh;overflow-y:auto;padding:22px 18px}.agency-dialog .form-row{grid-template-columns:1fr;gap:0}.agency-dialog .planner-editor-actions>.primary{margin-left:0}.agency-dialog .planner-editor-actions>.button{flex:1 1 100%}
 .agency-dialog .planner-editor-actions>.is-caution{order:3;margin-right:0}.agency-dialog .planner-person-choice{flex:1;justify-content:center}.agency-dialog .planner-people-choices{gap:8px}
 .travel-ledger-intro{align-items:center;gap:12px;flex-wrap:wrap}.travel-title-lockup h1{font-size:30px}.travel-ledger-tools{margin-left:auto;gap:10px}.travel-ledger-tools .button{font-size:14px}
 .travel-person-actions>.travel-history-link,.travel-person-actions>.button{min-height:46px;font-size:15px}.travel-person-balance>span{font-size:14px}.travel-person-state{font-size:13px}
 .travel-report{padding:16px 14px}.travel-report>span{font-size:14px}.travel-report>strong{font-size:22px}.travel-overview-heading h2{font-size:17px}.travel-overview-heading{align-items:center;gap:12px;flex-wrap:wrap}
 .travel-tabs{gap:10px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.travel-tabs>button{font-size:14px;justify-content:center;gap:6px}.travel-tabs>button .icon{width:16px;height:16px}
 .travel-history-filters{display:grid;grid-template-columns:1fr 1fr;padding:14px;gap:12px}.agency-main .travel-history-filters .field{font-size:14px;min-width:0;max-width:100%;width:100%}
 .travel-history-filters .travel-period-picker{grid-column:1/-1;max-width:none}.travel-period-picker>summary{font-size:15px;min-height:46px}.travel-history-filters .travel-export{grid-column:2;grid-row:3;justify-self:stretch}.travel-history-filters .travel-reset{grid-column:1;grid-row:3;justify-self:stretch}
 .travel-empty{padding:24px 20px;gap:14px}.travel-empty>div{min-width:0;flex:1}.travel-empty p{font-size:15px}.travel-empty>.button{width:100%;margin-left:0;font-size:15px}
 .travel-help{font-size:14px}.travel-help>div{right:0;max-width:calc(100vw - 40px)}.travel-cost-number>small{font-size:13px;color:#b5b5af}
}
@media(max-width:370px){.agency-client-actions{grid-template-columns:1fr}.planner-tools{grid-template-columns:1fr}.planner-week-controls h2{flex-basis:100%;margin:5px 0 0}.travel-ledger-tools{width:100%;margin:0}.travel-ledger-tools>.primary{flex:1}.travel-tabs>button{font-size:14px;gap:4px}.travel-tabs>button .icon{display:none}}
@media(max-width:480px){.planner-tools{grid-template-columns:1fr 1fr}.agency-main .planner-tools .field{grid-column:1/-1;font-size:15px}.travel-history-filters #travel-person-filter,.travel-history-filters #travel-status-filter{grid-column:1/-1;font-size:15px}.agency-main .agency-client-card .button{min-height:46px}.agency-team-member .tag{margin-left:54px}}
@media(prefers-reduced-motion:reduce){.agency-main *{scroll-behavior:auto!important}}

/* Client profiles and accounts share a single section with the Settings tab pattern. */
.agency-clients{min-width:0}.agency-clients-tabs{margin-bottom:24px}.agency-client-actions [data-client-access]{flex:1 0 100%}.agency-access-filter{padding:18px 24px;border-bottom:1px solid #3c3c3c}.agency-access-filter>label{display:grid;gap:8px;font-size:15px;color:#c5c5c0;max-width:420px}.agency-access-filter .field{width:100%}.agency-access-client+.agency-access-client{border-top:1px solid #454545}.agency-access-client-heading{display:flex;align-items:center;gap:12px;padding:22px 24px 8px}.agency-access-client-heading h3{font-size:18px;font-weight:550;margin:0}.agency-access-client-heading p{color:#b5b5af;font-size:14px;margin:4px 0 0}.agency-access-client .agency-user-row{border-bottom:0}.agency-access-note{padding:18px 24px 22px;border-top:1px solid #3a3a3a}.agency-clients .agency-travel-origin{grid-column:1/-1}
@media(max-width:800px){.agency-clients-tabs{display:grid;grid-template-columns:1fr 1fr;gap:10px}.agency-clients-tabs>.button{width:100%;min-width:0}.agency-access-filter{padding:18px 20px}.agency-access-client-heading{padding:20px 20px 6px}.agency-access-note{padding:18px 20px}}

/* Agency directory: fiscal records are independent of client portals. */
.agency-directory-toolbar{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:8px 0 4px}.agency-directory-toolbar h2{font-size:21px;display:flex;align-items:center;gap:10px;margin:0 0 6px}.agency-directory-toolbar p{color:#aaa;margin:0;font-size:15px}.agency-directory-count{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:26px;background:#292929;border:1px solid #444;border-radius:8px;font-size:14px;font-weight:500;color:#ddd}.agency-directory-search{position:relative;display:flex;align-items:center;width:min(100%,340px);flex-shrink:0}.agency-directory-search>.icon{position:absolute;left:14px;color:#aaa;width:20px;height:20px;pointer-events:none}.agency-directory-search .field{padding-left:44px;width:100%;margin:0;font-size:16px}.agency-directory-card-top{display:flex;align-items:flex-start;gap:12px}.agency-directory-card-top .agency-client-identity{flex:1;min-width:0}.agency-directory-card-top .agency-client-identity>div:last-child{min-width:0}.agency-directory-card-top h2{overflow-wrap:anywhere;font-size:20px;line-height:1.3}.agency-directory-card-top .agency-client-avatar{flex-shrink:0}.agency-client-delete.button{width:44px;min-width:44px;height:44px;min-height:44px;padding:11px;border-color:transparent;background:transparent;color:#aaa;flex-shrink:0}.agency-client-delete.button:hover{background:#303030;border-color:#555;color:#fff}.agency-client-delete .icon{width:21px;height:21px}.agency-directory-legal{color:#aaa;font-size:15px;line-height:1.45;margin:0 0 16px 66px;overflow-wrap:anywhere}.agency-avatar-pending{align-self:flex-start;margin:0 0 18px 66px;font-size:13px;color:#b9b9b9;background:#292929;border-radius:6px;padding:4px 8px}.agency-directory-empty{grid-column:1/-1}.agency-client-card[hidden],.agency-directory-empty[hidden]{display:none!important}.agency-client-card .agency-client-actions{margin-top:auto}.agency-directory-profile{padding:8px 24px 24px}.agency-directory-profile-heading,.agency-directory-remove-context{display:flex;align-items:center;gap:14px;margin:8px 0 28px}.agency-directory-profile-heading .agency-calendar-avatar,.agency-directory-remove-context .agency-calendar-avatar{width:56px;height:56px;flex-shrink:0}.agency-directory-profile-heading>div{display:grid;gap:8px}.agency-directory-profile-heading small{color:#aaa;font-size:14px}.agency-directory-profile h3{font-size:18px;margin:0 0 16px}.agency-directory-details{margin:0 0 24px;display:grid;grid-template-columns:1fr 1fr;gap:18px 24px}.agency-directory-details>div{min-width:0}.agency-directory-details dt{font-size:14px;color:#aaa;margin-bottom:6px}.agency-directory-details dd{font-size:16px;line-height:1.5;margin:0;overflow-wrap:anywhere;white-space:pre-line}.agency-directory-instagram{display:inline-flex;align-items:center;gap:8px;overflow-wrap:anywhere}.agency-directory-source{margin-top:24px;padding-top:16px;border-top:1px solid #353535}.agency-directory-remove-context strong{font-size:19px;overflow-wrap:anywhere}.agency-directory-remove-confirm{background:#e4e4e4!important;color:#171717!important;border-color:#e4e4e4!important}
@media(max-width:800px){.agency-directory-toolbar{align-items:stretch;flex-direction:column;gap:16px}.agency-directory-search{width:100%}.agency-directory-card-top h2{font-size:19px}.agency-directory-legal{margin-left:0}.agency-avatar-pending{margin-left:0}.agency-directory-profile{padding:8px 18px 20px}.agency-directory-details{grid-template-columns:1fr}.agency-directory-profile-heading .agency-calendar-avatar{width:48px;height:48px}}
.agency-directory-instagram{display:flex;width:fit-content;max-width:100%;margin:12px 0}
.agency-client-actions>.button:only-child,.agency-client-actions>[data-client-access]{grid-column:1/-1;width:100%}
@media(min-width:1440px){.agency-client-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Shared client identity in agenda, tasks and agency records. */
.agency-calendar-avatar,.agency-client-avatar{box-shadow:0 0 0 2px var(--avatar-color,#777);isolation:isolate}.agency-calendar-avatar>img,.agency-client-avatar>img{border-radius:50%}
.planner-agenda-row{border-left:3px solid var(--planner-client,#999DA5)}
.planner-task>.agency-calendar-avatar.compact,.planner-task>.agency-calendar-avatar.compact img{width:25px;height:25px;min-width:25px;margin-top:0}
.planner-task.is-done>.agency-calendar-avatar{filter:grayscale(1);opacity:.65}

/* Clear section names and readable counters in both agenda views. */
.planner-agenda-group>h3{gap:10px;align-items:center;min-height:64px;padding-top:14px;padding-bottom:14px}
.planner-agenda-group>h3>.icon{flex:0 0 19px;width:19px;height:19px}
.planner-agenda-group>h3>.planner-group-title{display:flex;align-items:center;gap:10px;flex:1;min-width:0;margin:0;color:#dedede;font-size:16px;font-weight:600;line-height:1.4}
.planner-section-label{min-width:0}
.planner-group-title>.planner-section-count,.planner-week-section-title>.planner-section-count{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:30px;height:28px;padding:0 9px;border:1px solid #666;border-radius:999px;background:#3d3d3d;color:#f5f5f5;font-size:14px;font-weight:650;line-height:1;font-variant-numeric:tabular-nums;text-transform:none;letter-spacing:0;white-space:nowrap}
.planner-agenda-group>h3>.button{flex-shrink:0;margin-left:auto}
.planner-tasks-heading>.planner-section-rail{display:flex;align-items:center;justify-content:center}.planner-section-rail>.icon{width:20px;height:20px;color:#bdbdbd}
.planner-week-section-title{display:flex;align-items:center;justify-content:center;gap:10px;min-height:32px;text-transform:none}
.planner-week-section-title>span:first-child{font-size:15px;font-weight:550;line-height:1.4;color:#ddd;text-transform:none}
@media(max-width:800px){.planner-agenda-group>h3{padding:12px;gap:9px;min-height:68px}.planner-agenda-group>h3>.planner-group-title{font-size:15px;gap:8px}.planner-group-title>.planner-section-count{min-width:28px;height:26px;padding:0 7px;font-size:13px}.planner-agenda-group>h3>.button{padding:9px 11px;min-height:44px}}
.agency-workspace-modules{border:1px solid #444;border-radius:9px;padding:18px;display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:20px 0}.agency-workspace-modules legend{font-size:16px;padding:0 8px;color:#ddd}.agency-workspace-modules label,.agency-workspace-paid{display:flex!important;align-items:center;gap:10px!important;line-height:1.5!important;font-size:15px!important;margin:0!important}.agency-workspace-modules input,.agency-workspace-paid input{width:21px!important;height:21px!important;min-width:21px;margin:0!important;accent-color:#ddd}.agency-workspace-paid{margin:20px 0!important}.agency-workspace-drive{margin:24px 0;padding:20px;border:1px solid #444;border-radius:9px;background:#252525}.agency-workspace-drive h3{font-size:18px;margin:0 0 14px}.agency-workspace-drive>div{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.agency-workspace-drive>div .button{white-space:normal;justify-content:flex-start;text-align:left;font-size:14px}.agency-workspace-drive .muted-note{font-size:14px;line-height:1.6;margin-bottom:0}@media(max-width:600px){.agency-workspace-modules,.agency-workspace-drive>div{grid-template-columns:1fr}.agency-workspace-drive{padding:16px}}

/* The agency has an always visible route switcher and a separate mobile action sheet. */
html:has(.agency-main) { scroll-padding-top: calc(var(--agency-header-height,72px) + 12px); }
.agency-header:has(.agency-header-menu) {
  position: sticky;
  top: 0;
  z-index: 55;
  min-height: 72px;
  background: #151515;
  border-bottom: 1px solid #383838;
}
.agency-header:has(.agency-header-menu) > img { flex-shrink: 0; }
.agency-current-section, .agency-mobile-nav, .planner-mobile-create, .planner-date-short { display: none; }
.agency-mobile-nav[hidden], .agency-header [hidden] { display: none !important; }
.agency-more-dialog .agency-shortcuts {
  display: grid;
  gap: 10px;
  margin: 0 0 12px;
}
.agency-more-dialog .agency-shortcuts a {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
  min-height: 48px;
  margin: 0;
  padding: 10px 14px;
  background: #252525;
  border: 1px solid #494949;
  border-radius: 8px;
}
.agency-more-dialog > .button { width: 100%; }
.agency-more-dialog .agency-shortcuts a[aria-current=page] { background: #363636; }
.agency-main #agency-app h1:focus { outline: none; }
.agency-header a:focus-visible,
.agency-mobile-nav :is(a,button):focus-visible,
.agency-more-dialog a:focus-visible {
  outline: 2px solid #eee;
  outline-offset: -3px;
}
.planner-quick-tools, .planner-filter-fields, .planner-primary-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}
.planner-filters { flex: 1; min-width: 0; }
.planner-demo-links { margin: 0 0 14px; padding: 9px 12px; border: 1px solid #454545; border-radius: 8px; }
.planner-demo-links > summary { cursor: pointer; font-weight: 600; }
.planner-demo-links > .inline-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.planner-filter-fields > label { flex: 1; min-width: 0; }
.planner-filter-fields .field { width: 100%; margin: 0; }
.planner-primary-actions > .button { white-space: nowrap; }
.planner-primary-actions .planner-mobile-create { display: none; }
.planner-filters > summary,
.planner-past-days > summary,
.travel-filter-details > summary,
.travel-cost-overview > summary {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 46px;
  padding: 9px 12px;
  list-style: none;
  cursor: pointer;
  font-size: 14px;
  font-weight: 550;
  color: #eee;
}
:is(.planner-filters,.planner-past-days,.travel-filter-details,.travel-cost-overview) > summary::-webkit-details-marker { display: none; }
:is(.planner-filters,.planner-past-days,.travel-filter-details,.travel-cost-overview) > summary > .icon { width: 17px; height: 17px; flex-shrink: 0; }
:is(.planner-filters,.planner-past-days,.travel-filter-details,.travel-cost-overview) > summary > .icon:last-child { margin-left: auto; }
:is(.planner-filters,.planner-past-days,.travel-filter-details,.travel-cost-overview)[open] > summary > .icon:last-child { transform: rotate(90deg); }
.planner-filters > summary, .travel-filter-details > summary, .travel-cost-overview > summary { display: none; }
.planner-day-disclosure {
  display: flex;
  align-items: center;
  text-align: left;
  gap: 10px;
  width: 100%;
  min-height: 56px;
  padding: 8px 14px;
}
.planner-agenda-day-heading:has(.planner-day-disclosure) { padding: 0; }
.planner-agenda-day-heading:has(.planner-day-disclosure) h2 { display: block; width: 100%; margin: 0; }
.planner-day-disclosure time { min-width: 0; }
.planner-day-disclosure-count { margin-left: auto; flex-shrink: 0; }
.planner-day-expand-icon { display: flex; align-items: center; flex-shrink: 0; }
.planner-day-expand-icon .icon { width: 18px; height: 18px; }
.planner-check-target { display: grid; place-items: center; width: 44px; height: 44px; cursor: pointer; }
.planner-agenda-row.is-task:has(.planner-check-target) { grid-template-columns: 44px minmax(0,1fr); }
.planner-agenda-row .planner-check-target input { margin: 0; }
.planner-create-options, .agency-profile-quick-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.planner-create-options > .button { flex: 1 1 150px; gap: 9px; }
.agency-profile-quick-actions { margin-block: 16px; }
.agency-profile-quick-actions .button { white-space: normal; }
.agency-profile-quick-actions [data-profile-remove] { margin-left: auto; }
.agency-main .agency-new-account .inline-actions { margin-top: 14px; }
#travel-history, #accounting-view, .acc-tabs, #agency-new-account { scroll-margin-top: 0; }
.planner-sticky-days { top: var(--agency-header-height,72px); }

@media (max-width: 1000px) {
  html:has(.agency-main) { scroll-padding-bottom: calc(86px + env(safe-area-inset-bottom)); }
  .agency-header:has(.agency-header-menu) {
    min-height: 62px;
    flex-wrap: nowrap;
    justify-content: space-between;
    gap: 14px;
    padding: 10px 16px;
  }
  .agency-header:has(.agency-header-menu) > img { width: 148px; max-width: 53%; }
  .agency-current-section { display: block; min-width: 0; font-size: 13px; font-weight: 650; color: #c8c8c3; text-align: right; }
  .agency-header .agency-header-menu, .agency-header > #agency-session-logout { display: none !important; }
  .agency-mobile-nav:not([hidden]) {
    display: grid;
    grid-template-columns: repeat(5,minmax(0,1fr));
    position: fixed;
    inset: auto 0 0;
    z-index: 56;
    gap: 2px;
    margin: 0;
    padding: 6px 6px max(6px,env(safe-area-inset-bottom));
    border-top: 1px solid #414141;
    background: #181818;
  }
  .agency-mobile-nav :is(a,button) {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    min-width: 0;
    min-height: 48px;
    width: 100%;
    margin: 0;
    padding: 4px 1px;
    border: 1px solid transparent;
    border-radius: 8px;
    color: #c4c4bf;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.15;
  }
  .agency-mobile-nav .icon { width: 20px; height: 20px; margin: 0; }
  .agency-mobile-nav :is([aria-current=page],.is-current) { color: #fff; background: #303030; border-color: #565656; }
  .agency-main, .agency-main:has(.agency-week-planner) {
    padding: 22px 16px calc(88px + env(safe-area-inset-bottom));
  }
  .agency-main h1, .planner-intro h1 { font-size: clamp(24px,7vw,30px); }
  .agency-main .page-title { margin-bottom: 18px; }
  .agency-main .page-title p { margin-bottom: 0; }
  .agency-message { bottom: calc(74px + env(safe-area-inset-bottom)); z-index: 70; }
  .planner-intro { gap: 10px; margin-bottom: 14px; }
  .planner-intro .eyebrow, .planner-intro > div > p { display: none; }
  .planner-intro h1 { margin-bottom: 0; }
  .planner-today-report {
    width: 100%; min-width: 0;
    padding: 8px 12px; gap: 9px;
    display: flex; align-items: center;
    font-size: 14px;
  }
  .planner-today-report strong { font-size: 19px; }
  .planner-today-report small { display: none; }
  .planner-toolbar { gap: 9px; margin-bottom: 14px; }
  .planner-week-controls { width: 100%; gap: 6px; flex-wrap: nowrap; }
  .planner-week-controls h2 {
    font-size: 14px; flex: 1;
    min-width: 0; margin: 0 0 0 3px;
  }
  .agency-main .planner-week-controls .button { min-width: 44px; min-height: 44px; padding: 8px; }
  .agency-main .planner-week-controls .button:has(.icon) { width: 44px; }
  .planner-quick-tools { align-items: flex-start; flex-wrap: wrap; gap: 8px; }
  .planner-filters { flex: 1; border: 1px solid #454545; border-radius: 8px; background: #242424; }
  .planner-filters[open] { flex-basis: 100%; }
  .planner-filters > summary, .travel-filter-details > summary, .travel-cost-overview > summary { display: flex; }
  .planner-filter-fields { flex-wrap: wrap; padding: 10px; border-top: 1px solid #444; }
  .planner-filter-fields > label { flex: 1 1 200px; }
  .planner-primary-actions { margin-left: auto; gap: 8px; }
  .planner-primary-actions .planner-desktop-create { display: none; }
  .planner-primary-actions .planner-mobile-create { display: inline-flex; }
  .agency-main .planner-primary-actions #refresh-agency-calendar { min-width: 46px; padding: 9px; }
  #refresh-agency-calendar span { display: none; }
  .planner-past-days {
    margin-bottom: 12px;
    border: 1px solid #444;
    border-radius: 8px;
    background: #1c1c1c;
  }
  .planner-past-days > div { display: grid; gap: 8px; padding: 0 8px 8px; }
  .planner-date-long { display: none; }
  .planner-date-short { display: inline; text-transform: capitalize; }
  .planner-day-disclosure { gap: 7px; font-size: 15px; }
  .planner-day-disclosure-count .planner-section-count { font-size: 12px; }
  .planner-agenda-day { scroll-margin-top: 0; }
  .planner-agenda-row.is-task:has(.planner-check-target) { padding-left: 7px; gap: 8px; }
  .travel-ledger-intro { margin-bottom: 14px; }
  .travel-payments-heading { margin-bottom: 10px; }
  .travel-people-grid { grid-template-columns: 1fr; gap: 8px; }
  .travel-person-card {
    display: grid; grid-template-columns: minmax(0,1fr) auto;
    align-items: center; padding: 0; gap: 0;
  }
  .travel-person-card:before { top: 12px; bottom: 12px; }
  .travel-person-card .travel-person-open { padding: 10px 12px; min-height: 52px; grid-column: 1; }
  .travel-person-card .travel-person-open h3 { font-size: 16px; }
  .travel-person-card .travel-person-avatar { width: 32px; height: 32px; font-size: 14px; }
  .travel-person-card .travel-person-balance { padding: 7px 12px 7px 0; grid-column: 2; grid-row: 1; text-align: right; }
  .travel-person-card .travel-person-balance > strong { font-size: 18px; }
  .travel-person-card .travel-person-balance > span { font-size: 12px; }
  .travel-person-card .travel-person-actions {
    grid-column: 1 / -1; display: flex; justify-content: flex-end; padding: 7px 12px;
  }
  .travel-person-card .travel-person-actions:has(button:disabled), .travel-person-card .travel-history-link { display: none; }
  .travel-cost-overview { border: 1px solid #444; border-radius: 8px; padding: 0; margin-block: 16px; }
  .travel-cost-overview > summary > strong { color: #c9c9c4; font-size: 13px; margin-left: auto; }
  .travel-cost-overview > summary > .icon:last-child { margin-left: 0; }
  .travel-cost-overview > .travel-overview-heading { padding: 8px 12px 0; }
  .travel-cost-overview > .travel-report-grid { padding: 10px 12px 12px; }
  .travel-filter-details > summary { border-bottom: 1px solid #3d3d3d; }
  .travel-tabs > button { min-width: 0; font-size: 13px; }
  .travel-tabs > button > .icon { display: none; }

  .agency-directory-toolbar { gap: 10px; }
  .agency-client-grid { gap: 8px; grid-template-columns: minmax(0,1fr); }
  .agency-main .agency-client-card {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    align-items: center;
    gap: 7px;
    padding: 11px 12px;
  }
  .agency-client-card .agency-client-card-top { min-width: 0; }
  .agency-client-card .agency-client-identity { gap: 9px; min-width: 0; }
  .agency-client-card .agency-client-avatar { width: 34px; height: 34px; min-width: 34px; }
  .agency-client-card h2 { font-size: 16px; overflow-wrap: anywhere; }
  .agency-client-card .agency-client-identity p { font-size: 12px; margin-top: 3px; }
  .agency-client-card .agency-client-delete,
  .agency-client-card .agency-directory-legal,
  .agency-client-card .agency-avatar-pending,
  .agency-client-card .agency-client-actions > :not([data-directory-profile]) { display: none; }
  .agency-client-card .agency-client-actions { display: block; margin: 0; width: auto; }
  .agency-client-card .agency-client-actions [data-directory-profile] { white-space: nowrap; min-width: 70px; padding-inline: 8px; }
  .agency-profile-quick-actions [data-profile-remove] { margin-left: 0; }
  .agency-dialog {
    margin: auto 0 0;
    inset: auto 0 0;
    width: 100%;
    max-width: 100%;
    max-height: calc(100dvh - 24px);
    border-radius: 16px 16px 0 0;
    padding: 16px 16px calc(16px + env(safe-area-inset-bottom));
    overscroll-behavior: contain;
  }
  .agency-dialog .planner-editor-heading, .agency-dialog .agency-post-dialog-heading {
    position: sticky;
    top: -16px;
    z-index: 2;
    background: #1b1b1b;
    padding-block: 10px;
  }
  .agency-dialog :is(input,textarea,select) { scroll-margin-block: 80px 95px; }
  .agency-dialog .planner-editor-actions > .button { flex: 1 1 44%; }
}
@media (min-width: 1001px) {
  .agency-header:has(.agency-header-menu) { flex-wrap: nowrap; }
  .agency-header .agency-header-menu { gap: 3px; }
}
@media (max-width: 360px) {
  .agency-mobile-nav :is(a,button) { font-size: 11px; }
  .planner-day-disclosure { padding-inline: 10px; font-size: 14px; }
  .planner-day-disclosure-count { display: none; }
  .planner-day-expand-icon { margin-left: auto; }
  .agency-client-card .agency-client-actions [data-directory-profile] { min-width: 62px; }
}

@media (max-width: 1000px) {
  .agency-header:has(.agency-header-menu) { padding-top: max(10px, env(safe-area-inset-top)); }
}

.agency-main :is(.planner-past-days,.planner-filters,.travel-cost-overview,.travel-filter-details):not([open]) > :not(summary),
.agency-main :is(.acc-connection-panel,.acc-filter-panel,.acc-chart-data):not([open]) > :not(summary) {
  display: none;
}
@media (max-width: 1000px) {
  .agency-header:has(.agency-header-menu) > .agency-current-section {
    display: block;
  }
  .travel-ledger .travel-empty [data-empty-new-travel] { display: none; }
}

.agency-avatar-fallback {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
}
.agency-avatar-fallback[hidden] { display: none !important; }
.agency-avatar-fallback .icon { width: 55%; height: 55%; }
.agency-avatar-image.agency-avatar-group {
  display: inline-flex;
  width: 55px;
  min-width: 55px;
  gap: 0;
  overflow: visible;
  box-shadow: none;
  background: transparent;
  border: 0;
}
.agency-avatar-member {
  display: grid;
  place-items: center;
  width: 31px;
  height: 31px;
  flex-shrink: 0;
  overflow: hidden;
  border: 2px solid #191919;
  border-radius: 50%;
  background: #323232;
}
.agency-avatar-member + .agency-avatar-member { margin-left: -7px; }
.agency-payroll-mail {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
  padding:16px;
  margin-bottom:18px;
  border:1px solid #414141;
  border-radius:10px;
  background:#222;
}
.agency-payroll-mail > div { flex:1 1 210px; }
.agency-payroll-mail h3, .agency-payroll-mail p { margin:0; }
.agency-payroll-mail p { margin-top:4px; }
.agency-payroll-mail .button { min-height:44px; }
.agency-payroll-document {
  display:flex;
  align-items:center;
  gap:12px;
  padding:13px;
  margin:18px 0 14px;
  border:1px solid #494949;
  border-radius:8px;
  background:#252525;
  overflow-wrap:anywhere;
}
.agency-payroll-document > span {
  flex:none;
  padding:5px 7px;
  border:1px solid #5d5d5d;
  border-radius:5px;
  font-size:12px;
  font-weight:700;
}
.agency-payroll-actions { gap:8px; }
.agency-payroll-actions .button { min-height:46px; }
@media(max-width:480px) {
  .agency-payroll-mail .button, .agency-payroll-actions .button { width:100%; }
}

.agency-main #agency-app h1 {
  font-size: var(--tdb-page-size);
  line-height: var(--tdb-page-line);
  font-weight: 600;
}
.agency-main .panel-head h2, .agency-main .expense-tools h2 {
  font-size: var(--tdb-section-size);
  line-height: var(--tdb-section-line);
  font-weight: 600;
}
.agency-main :is([role="tab"],.expense-tabs .button) {
  font-size: var(--tdb-action-size);
  font-weight: 600;
  line-height: 1.45;
}
.planner-agenda-day-heading .planner-today-badge { font-size: .8125rem; }
.planner-person-badge { font-size: .75rem; }
.planner-event .planner-person-badge, .planner-agenda-entry .planner-person-badge { font-size: .75rem; }
.travel-ledger-tools { flex-wrap: wrap; }
.travel-origin-link { white-space: normal; }
@media (max-width: 800px) {
  .planner-editor:has(#planner-event-form) {
    scroll-padding-block: 5rem 5.5rem;
  }
  #planner-event-form .planner-editor-actions {
    position: sticky;
    bottom: -1rem;
    z-index: 2;
    background: #1b1b1b;
    padding-block: .625rem max(.75rem, env(safe-area-inset-bottom));
  }
}
