/* Acabamento visual: controles leves, bordas discretas e hierarquia consistente. */
button{appearance:none;border:0;background:transparent;color:inherit}

.panel,.metrics article,.summary-cards article,.form-metrics article,.permission-grid article,.template-row button,.form-template-grid>article{
  border-color:rgba(221,228,223,.88);border-radius:18px;box-shadow:0 10px 34px rgba(30,52,64,.05)
}
.metrics article:nth-child(3),.summary-cards article:nth-child(3){border-top-width:2px}
.table-panel{overflow:hidden;box-shadow:0 8px 26px rgba(30,52,64,.04)}
th{border-bottom:1px solid #e8ede9;background:#f5f7f5}
td{border-bottom-color:#edf1ee}

/* Controles segmentados */
.agenda-view-switch,.financial-tabs,.settings-tabs{
  gap:3px;padding:4px;border:1px solid #e1e7e3;border-radius:13px;background:#eef3f0;box-shadow:none
}
.agenda-view-switch button,.financial-tabs button,.settings-tabs button{
  border:0;border-radius:9px;background:transparent;color:#71807d;font-weight:750
}
.agenda-view-switch button:hover,.financial-tabs button:hover,.settings-tabs button:hover{background:rgba(255,255,255,.72);color:var(--teal)}
.agenda-view-switch button.active{background:linear-gradient(130deg,#4a9991,#357f78);color:#fff;box-shadow:0 5px 14px rgba(59,143,135,.2)}
.financial-tabs button.active,.settings-tabs button.active{background:#fff;color:#bf624b;box-shadow:0 3px 11px rgba(30,52,64,.07),inset 0 0 0 1px #efd8cf}

/* Agenda */
.agenda-controls{gap:16px;margin:2px 0 16px}
.agenda-view-switch button{min-width:76px;padding:9px 15px;font-size:11px}
.agenda-period-nav{display:flex;align-items:center;gap:8px;padding:4px;border:1px solid #e3e8e4;border-radius:13px;background:rgba(255,255,255,.82)}
.agenda-period-nav button{display:grid;min-width:36px;height:36px;padding:0 11px;border:0;border-radius:9px;background:#f3f6f3;color:#61716f;font-size:11px;font-weight:750;place-items:center}
.agenda-period-nav button:hover{background:#e8f2ef;color:var(--teal)}
.agenda-period-nav strong{min-width:190px;padding:0 7px;color:#405452;font-size:11px;font-weight:750}
#agenda-visual{margin-bottom:18px}
.day-view,.week-view,.month-view{border-color:#e1e7e3;border-radius:18px;background:rgba(255,255,255,.82);box-shadow:0 8px 26px rgba(36,75,72,.035)}
.day-view{display:grid;min-height:86px;gap:6px;padding:9px}
.day-view>button{display:grid;grid-template-columns:82px minmax(0,1fr) auto;align-items:center;width:100%;padding:14px 16px;border:1px solid transparent;border-radius:12px;background:#f8faf8;text-align:left}
.day-view>button:hover{border-color:#d7e5e0;background:#fff;box-shadow:0 7px 19px rgba(30,52,64,.055);transform:translateY(-1px)}
.day-view time{color:var(--coral);font-size:13px;font-weight:850;letter-spacing:.01em}
.day-view>button>strong{min-width:0;color:#25343e;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.day-view .badge{font-size:8px}
.week-view section{min-height:155px;border-right-color:#edf0ed}
.week-view section:last-child{border-right:0}
.week-view header{color:#74817f;font-size:9px;letter-spacing:.04em}
.week-view button{padding:8px;border:0;border-left:2px solid var(--coral);border-radius:7px;background:#fff7f3}
.week-view button:hover{background:#fff0e9;transform:translateY(-1px)}
.month-view section{min-height:96px;padding:8px;border-color:#edf0ed}
.month-view button{padding:5px 6px;border:0;border-radius:6px;background:#eaf5f2}
.month-view button:hover{background:#dcefeb}

/* Listas e cartões recorrentes */
.resource-line{padding:12px 8px;border:0;border-top:1px solid #edf0ed;border-radius:9px}
.resource-line:hover{padding-left:12px;background:#f5f9f7}
.series-line button{padding:6px 8px;border:0;border-radius:8px;background:#fff0ea}
.compact-list>div,.compact-list>button{border-top-color:#edf1ee;background:transparent}
.compact-list>button:hover{background:#f7faf8}
.approval-line{border-top-color:#edf1ee}
.plan-row>article,.finance-card-grid>article,.version-history>article{border-color:#e2e8e4;box-shadow:0 7px 22px rgba(30,52,64,.035)}
.quick button,.template-row button{box-shadow:0 6px 20px rgba(30,52,64,.03)}

@media(max-width:760px){
  .agenda-controls{gap:10px}.agenda-view-switch{display:grid;grid-template-columns:repeat(3,1fr);width:100%}.agenda-view-switch button{min-width:0;min-height:40px;padding-inline:8px}
  .agenda-period-nav{width:100%}.agenda-period-nav button{min-height:40px}.agenda-period-nav strong{min-width:0;flex:1}
  .financial-tabs button,.settings-tabs button{min-height:40px}
  .day-view>button{grid-template-columns:62px minmax(0,1fr);gap:3px 8px;padding:12px}.day-view .badge{grid-column:2;justify-self:start}
}

/* Acessibilidade transversal */
.skip-link{position:fixed;z-index:10000;top:10px;left:10px;padding:11px 16px;border-radius:10px;background:#102139;color:#fff;font-size:13px;font-weight:800;transform:translateY(-150%);transition:transform .16s}
.skip-link:focus{transform:none}
:where(button,a,[tabindex]):focus-visible{outline:2px solid rgba(235,128,93,.72);outline-offset:3px}
:where(input,select,textarea):focus-visible{outline:none;border-color:rgba(235,128,93,.7);box-shadow:0 0 0 3px rgba(235,128,93,.11)}
.topbar .search:focus-within{border-color:rgba(235,128,93,.55);box-shadow:0 0 0 3px rgba(235,128,93,.09)}
.topbar .search input:focus-visible,.bia-input input:focus-visible{outline:none;border-color:transparent;box-shadow:none}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
