/* EVARIA OS shared interface contract. Load after role-specific styles. */
:root{--status-pending:#fce8e5;--status-doing:#e5f0fa;--status-done:#e2f1e7;--status-ink:#29332f}
#app .panelhead{min-height:64px!important;padding:16px 18px!important;align-items:center!important}
#app .panelhead h2,#app .panelhead h3,#app .ops-shell .main .panelhead h2,.team-shell section>h2,.guest-shell section>h2{font-size:22px!important;font-weight:600!important;line-height:1.35!important}
#app .panelbody{padding-left:18px!important;padding-right:18px!important}
#app .cl-dashboard>h2,#app .cl-fichaje h2,#app .polish-clock-history h2,#app .polish-driver h2{font-size:22px!important;font-weight:600!important;line-height:1.35}
#app .panelhead .section-filter{margin-left:auto}
#app .building-header{min-height:64px!important;padding:14px 18px!important;align-items:center!important}
#app .building-header strong,#app .building-header a,.dashboard-building-link{font-weight:600;text-decoration:none!important}
#app .building-header .chevron,#app .building-header>.icon:last-child{display:none!important}
#app .building-header .section-filter{margin-left:auto}
#app .kpi-strip,#app .main .polish-summary-block{background:#edf3ed!important}
#app .reference-summary .kpi-strip{background:transparent!important}
/* One tab appearance. No underline, border, pill, or selected background. */
#app [role=tablist],#app .chat-tabs,#app .driver-service-tabs,#app .batch-notice-tabs,.team-tabs{display:flex;align-items:center;gap:22px!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important}
#app [role=tab],#app .chat-tabs button,#app .driver-service-tabs button,#app .batch-notice-tabs button,.team-tabs [role=tab]{background:transparent!important;border:0!important;border-bottom:0!important;border-radius:0!important;box-shadow:none!important;text-decoration:none!important;color:#829087!important;padding:12px 0!important;font-weight:400!important}
#app [role=tab][aria-selected=true],#app .chat-tabs .active,#app .batch-notice-tabs .active,.team-tabs [aria-selected=true]{color:#26372e!important;font-weight:600!important}
#app [role=tab]::after,#app .chat-tabs button::after,#app .batch-notice-tabs button::after,.team-tabs [role=tab]::after{content:none!important;display:none!important}
.team-auth-shell .team-tabs [aria-selected=true]{color:white!important}
#app .period-compact{gap:14px!important;flex-wrap:nowrap!important;min-height:44px}
#app .period-view-tabs{gap:14px!important;flex:none}
#app .period-view-tabs button{font-size:12px!important;text-transform:uppercase}
#app .period-today{font-size:12px!important;text-transform:uppercase;background:#e3ece5!important}
#app .period-current{margin-left:auto;font-size:13px!important;white-space:nowrap;min-width:0}
#app .period-picker{margin-left:0!important;flex-shrink:0}
/* Uniform cleanup states in all roles, including the former cleaner trial. */
#app .pc-status,#app .polish-status,#app .status,.team-status{border:0!important;border-radius:999px!important;min-height:28px!important;padding:5px 11px!important;line-height:18px!important;font-size:12px!important;font-weight:500!important;color:var(--status-ink)!important;display:inline-flex!important;align-items:center;justify-content:center}
#app .pc-status,#app .polish-status[data-status=pending],#app[data-environment=personal] .polish-status[data-status=pending],.team-status{background:var(--status-pending)!important}
#app .pc-status.doing,#app .polish-status[data-status=doing],#app[data-environment=personal] .polish-status[data-status=doing],.team-status.doing{background:var(--status-doing)!important}
#app .pc-status.done,#app .polish-status[data-status=done],#app[data-environment=personal] .polish-status[data-status=done],.team-status.done{background:var(--status-done)!important}
#app[data-environment] .polish-status[data-status],#app .cl-card .pc-status{color:var(--status-ink)!important;text-transform:none!important}
#app [role=tablist] [role=tab][aria-selected]{border:0!important;box-shadow:none!important;background:transparent!important;text-decoration:none!important;color:#829087!important}
#app [role=tablist] [role=tab][aria-selected=true]{color:#26372e!important;font-weight:600!important}
#app [role=tablist] [role=tab][aria-selected]::after{content:none!important}
#app .cl-inline-alert-head{display:flex;gap:10px;align-items:center;margin-bottom:6px}
#app .cl-inline-alert .cl-alert-label{display:inline!important;background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;font-size:11px!important;white-space:nowrap}
#app .cl-inline-alert-title{font-size:14px!important;margin:0!important}
.team-status.hold{background:#eee8f3!important}
#app .cl-clock,#app .cl-fichaje,#app .polish-clock-history,#app .pc-staff-profile,#app .cl-vacations,#app .cl-vacations-section{background:transparent!important;border:0!important;box-shadow:none!important}
#app .cl-clock{padding:10px 0!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;flex-wrap:wrap}
#app .cl-clock-info{background:transparent!important}
#app .cl-clock-actions{display:flex;gap:10px}
#app .cl-fichaje{padding:0!important}
#app .cl-clock button{border:0!important}
#app .pc-staff-profile{padding:0!important}
#app .pc-staff-top{padding:12px 0 22px!important}
#app .pc-staff-profile h3{font-size:22px;font-weight:600;margin:28px 0 16px}
#app .pc-staff-fields{background:transparent!important;border:0!important;gap:20px!important;padding:0!important}
#app .pc-staff-document{padding:14px 0!important;border:0!important;border-bottom:1px solid #e7ece7!important;display:grid!important;grid-template-columns:20px 1fr!important;gap:5px 12px!important;background:transparent!important}
#app .pc-staff-document .icon{width:18px;height:18px;grid-row:1/3}
#app .pc-staff-document small{grid-column:2;color:#829087;font-size:12px}
#app .pc-staff-document span{font-size:14px}
#app .cl-vacations-head{align-items:center;gap:12px;flex-wrap:wrap}
#app .cl-vacation-item{padding:18px 0!important;border:0!important;border-bottom:1px solid #e7ece7!important}
#app .batch-notice{padding:15px 16px!important;position:relative}
#app .batch-notice-meta{padding-right:26px;gap:8px!important;font-size:12px!important}
#app .batch-notice [data-polish-dismiss]{position:absolute;top:10px;right:10px}
#app .batch-notice p{margin:6px 0 12px!important;font-size:14px!important;line-height:1.5}
#app .polish-read-button{background:#d3e4d8!important;color:#243b2d!important;padding:8px 12px!important;font-size:12px!important}
#app button,#app input,#app textarea,#app select{border:0}
#app .pc-card-worker{display:flex;align-items:center;gap:9px;margin:10px 0;font-size:14px}
#app .pc-card-worker .pc-profile-avatar{width:26px;height:26px}
#app .pc-card-address{font-size:13px;color:#7a877e;line-height:1.4;margin:8px 0}
#app .chat-tabs::after,#app .batch-notice-tabs::after,#app [role=tablist]::after{display:none!important;content:none!important}
@media(max-width:700px){
 #app .period-compact{gap:9px!important}
 #app .period-view-tabs{gap:11px!important}
 #app .period-view-tabs button,#app .period-today{font-size:11px!important}
 #app .period-current{font-size:11px!important;max-width:92px}
 #app .panelhead{padding:16px!important}
 #app .panelbody{padding-left:16px!important;padding-right:16px!important}
 #app .cl-clock-info{flex:1 0 100%}
 #app .cl-clock-actions{width:100%;justify-content:flex-start}
 #app [role=tablist]{gap:20px!important}
 #app .period-view-tabs[role=tablist]{gap:10px!important}
}
