/* Company settings share the work portal's calm, compact visual language. */
.settings-page { display:grid; gap:20px; padding-bottom:64px; }
.settings-page .settings-main-grid,
.settings-page .settings-management-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; align-items:start; }
.settings-page .settings-card { min-width:0; background:var(--white); border:1px solid var(--line); border-radius:12px; box-shadow:var(--work-shadow,0 2px 8px #233a2507); overflow:hidden; }
.settings-page section.settings-card { padding:22px; }
.settings-page .settings-card-heading { display:flex; align-items:flex-start; gap:12px; margin-bottom:20px; }
.settings-page .settings-card-heading>div { flex:1; min-width:0; }
.settings-page .settings-card-heading h2 { color:var(--green); font-size:var(--fs-md); line-height:1.4; margin:0; letter-spacing:-.2px; }
.settings-page .settings-card-heading p,
.settings-page .settings-copy { font-size:var(--fs-xs); line-height:1.65; color:var(--muted); margin:5px 0 0; }
.settings-page .settings-card-heading>.btn { align-self:center; flex-shrink:0; padding:6px 0 6px 8px; min-height:34px; }
.settings-page .settings-section-icon { display:grid; place-items:center; flex-shrink:0; height:34px; width:34px; background:var(--cream); border:1px solid var(--line); border-radius:10px; color:var(--green-hover); }
.settings-page .settings-section-icon>.icon { height:17px; width:17px; }
.settings-page .form-grid { gap:14px 16px; }
.settings-page .field input,
.settings-page .field select { min-height:42px; }
.settings-page .settings-details { border:1px solid var(--line); border-radius:9px; background:var(--surface-subtle); margin-top:18px; }
.settings-page .settings-details>summary { display:flex; align-items:center; gap:12px; list-style:none; cursor:pointer; padding:13px 15px; color:var(--green); }
.settings-page .settings-details>summary::-webkit-details-marker { display:none; }
.settings-page .settings-details>summary>span { flex:1; min-width:0; }
.settings-page .settings-details>summary strong { display:block; font-size:var(--fs-xs); font-weight:600; line-height:1.5; }
.settings-page .settings-details>summary small { display:block; color:var(--muted); font-size:var(--fs-xs); line-height:1.6; margin-top:2px; }
.settings-page .settings-details>summary>.icon:last-child { flex-shrink:0; height:15px; width:15px; color:var(--muted); transition:transform .15s ease; }
.settings-page .settings-details[open]>summary>.icon:last-child { transform:rotate(90deg); }
.settings-page .settings-details[open]>summary { border-bottom:1px solid var(--line); }
.settings-page .settings-details-body { padding:16px; }
.settings-page .settings-details>summary:focus-visible { outline:2px solid var(--work-focus,#567b32); outline-offset:3px; border-radius:8px; }
.settings-page .settings-cycle { display:grid; gap:9px; background:var(--surface-subtle); border:1px solid var(--line); border-radius:9px; padding:14px; }
.settings-page .settings-cycle>div { display:grid; grid-template-columns:86px minmax(0,1fr); gap:10px; font-size:var(--fs-xs); color:var(--muted); line-height:1.6; }
.settings-page .settings-cycle strong { color:var(--green); font-weight:550; }
.settings-page .settings-days { border:0; padding:0; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px 8px; margin:20px 0; min-width:0; }
.settings-page .settings-days legend { font-size:var(--fs-xs); font-weight:600; color:var(--green); padding:0; margin-bottom:12px; }
.settings-page .settings-days .checkbox-label { gap:7px; }
.settings-page .settings-days input { accent-color:var(--green-hover); }
.settings-page .settings-policy-note { margin-top:16px; padding-top:14px; border-top:1px solid var(--line); }
.settings-page .settings-portal-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(250px,.85fr); gap:22px 30px; align-items:start; }
.settings-page .settings-portal-layout .settings-card-heading { margin-bottom:0; }
.settings-page .settings-content-link { display:inline-flex; align-items:center; gap:7px; margin:10px 0 0 46px; font-size:var(--fs-xs); color:var(--green-hover); font-weight:550; text-decoration:underline; text-underline-offset:3px; }
.settings-page .settings-content-link>.icon { width:14px; height:14px; }
.settings-page .settings-management-grid .settings-card-heading { margin-bottom:10px; }
.settings-page .settings-summary-list { border-top:1px solid var(--line); margin-top:12px; }
.settings-page .settings-summary-list>div { gap:15px; padding:10px 0; border-bottom:1px solid var(--line); line-height:1.5; }
.settings-page .settings-summary-list strong { font-weight:550; color:var(--text); }
.settings-page .settings-summary-list span { color:var(--muted); text-align:right; }
.settings-page .settings-summary-list>p { margin:12px 0 0; color:var(--muted); font-size:var(--fs-xs); }
.settings-page .settings-financial { margin-top:0; background:var(--white); }
.settings-page .settings-financial>summary { padding:18px 22px; }
.settings-page .settings-financial>summary>.settings-section-icon { flex:0 0 34px; }
.settings-page .settings-financial>summary strong { font-size:var(--fs-md); }
.settings-page .settings-financial .settings-details-body { padding:22px; }
.settings-page .settings-financial .form-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.settings-page .settings-financial .settings-invoice-mail { grid-column:1/-1; }
.settings-page .form-error { margin:0; }
@media(max-width:1100px) {
  .settings-page .settings-main-grid { grid-template-columns:1fr; }
  .settings-page .settings-days { grid-template-columns:repeat(7,minmax(0,1fr)); }
}
@media(max-width:760px) {
  .settings-page { gap:16px; }
  .settings-page .settings-main-grid,
  .settings-page .settings-management-grid { gap:16px; }
  .settings-page .settings-portal-layout { grid-template-columns:1fr; gap:18px; }
  .settings-page .settings-days { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .settings-page section.settings-card { padding:18px; }
  .settings-page .settings-financial>summary { padding:16px 18px; }
  .settings-page .settings-financial .settings-details-body { padding:18px; }
}
@media(max-width:540px) {
  .settings-page .settings-management-grid,
  .settings-page .form-grid,
  .settings-page .settings-financial .form-grid { grid-template-columns:1fr; }
  .settings-page .settings-card-heading { gap:10px; margin-bottom:17px; }
  .settings-page .settings-section-icon { width:31px; height:31px; border-radius:9px; }
  .settings-page .settings-content-link { margin-left:41px; }
  .settings-page .settings-details-body { padding:14px; }
  .settings-page .settings-cycle>div { grid-template-columns:76px minmax(0,1fr); gap:8px; }
  .settings-page .settings-card-heading>.btn { gap:5px; }
  .settings-page .settings-days { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(prefers-reduced-motion:reduce) {
  .settings-page .settings-details>summary>.icon:last-child { transition:none; }
}
