/* Parte 2: densidade, alinhamento, seleções pesquisáveis e conexão. */
:root{--field-h:38px}main{padding-top:20px}section,.panel,.card{padding:16px;margin:12px 0}h1{margin:4px 0 9px}h2{margin:8px 0 10px}p{margin:8px 0;line-height:1.45}.toolbar{margin-bottom:12px}.form-grid{gap:6px 14px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}label{gap:5px;margin:5px 0}input,select,textarea,button,.button{min-height:var(--field-h)}input,select,textarea{padding:8px}.actions{gap:6px}.section-tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}.section-tabs button,.tabs button{white-space:nowrap}.contract-sheet{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px 18px;margin:10px 0}.contract-field{min-width:0;border-bottom:1px solid var(--line);padding:6px 0}.contract-field small{display:block}.contract-field strong{display:block;overflow-wrap:anywhere;margin-top:3px}.contract-field.wide{grid-column:1/-1}
.smart-native{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}.smart-select{position:relative;min-width:0}.smart-select>input{width:100%;padding-right:38px}.smart-clear{position:absolute;right:2px;top:2px;width:34px;min-height:34px;padding:0;background:transparent;color:#637b90;border:0;font-size:20px}.smart-options{position:absolute;z-index:500;top:calc(100% + 3px);left:0;right:0;max-height:260px;overflow:auto;background:#fff;border:1px solid #b9cada;border-radius:6px;box-shadow:0 12px 28px #17364c2a;padding:4px}.smart-option{display:block;width:100%;text-align:left;background:#fff;color:var(--ink);border:0;border-radius:4px;padding:8px;min-height:34px}.smart-option:hover,.smart-option:focus,.smart-option.selected{background:#eaf4fb;color:#086fa8}.smart-empty{display:block;padding:10px;color:var(--muted)}
#connection-status{position:fixed;z-index:10000;left:50%;top:10px;transform:translateX(-50%);background:#8a5b12;color:#fff;padding:9px 14px;border-radius:6px;box-shadow:0 5px 20px #0003;max-width:min(680px,94vw);text-align:center}
#toast{z-index:10000!important;box-shadow:0 8px 28px #0004;border-left:4px solid #8eb7d2}#toast[data-kind="success"]{background:#176c55;border-left-color:#7dd3b0}#toast[data-kind="error"]{background:#8e2f3a;border-left-color:#f2a3ab}#toast[data-kind="progress"]{background:#284d67;border-left-color:#8ec8ef}button[aria-busy="true"]{cursor:progress}.operation-feedback{margin:0;padding:10px 22px;background:#edf5fb;color:#294f6e;border-bottom:1px solid var(--line)}.operation-feedback[data-kind="error"]{background:#fff0f1;color:#9b303a}.operation-feedback[hidden]{display:none!important}
.entry-line{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:6px}.entry-duration{font-size:inherit;color:inherit;white-space:nowrap}.entry-meta{display:none}
.empty-block>h3{border-radius:inherit}.record-page-open{overflow:hidden}.record-page{position:fixed;z-index:850;inset:0 0 0 225px;background:var(--bg);overflow:auto;padding:18px 26px}.record-page-head{position:sticky;z-index:2;top:-18px;margin:-18px -26px 14px;padding:13px 26px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.record-page form{max-width:1180px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:8px;padding:16px}.record-page .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.lookup-button{margin-top:3px;align-self:flex-start}.lookup-status{display:block;color:var(--muted)}.lookup-status.error{color:#a04b35}.contract-browser{display:grid;gap:8px}.contract-list{display:grid;gap:4px;max-height:320px;overflow:auto}.contract-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;text-align:left;align-items:center;background:#fff;color:var(--ink);border:1px solid var(--line);padding:9px 11px}.contract-row span:first-child{display:grid;gap:2px}.contract-row small{color:var(--muted)}.contract-row.active{border-color:var(--primary);background:#edf7fd}.reprocess-choices{display:grid;gap:8px}.reprocess-choices button{text-align:left;justify-content:flex-start}
@media(max-width:900px){main{padding:14px}.workspace header{padding:12px 14px;gap:8px}.form-grid{grid-template-columns:1fr}section,.panel,.card{padding:12px}.toolbar,.actions{align-items:stretch}.toolbar>*,.actions>button,.actions>.button{max-width:100%}.contract-sheet{grid-template-columns:1fr 1fr}.section-tabs{margin-left:-12px;margin-right:-12px;padding:0 12px}.smart-options{position:fixed;left:10px;right:10px;top:20vh;max-height:60vh}.smart-select.open:before{content:'';position:fixed;inset:0;background:#17364c55;z-index:499}.record-page{inset:0;padding:12px}.record-page-head{top:-12px;margin:-12px -12px 12px;padding:10px 12px}.record-page .form-grid{grid-template-columns:1fr}}
@media(max-width:520px){.contract-sheet{grid-template-columns:1fr}.contract-row{grid-template-columns:1fr}.top,.toolbar{display:flex;flex-direction:column;align-items:stretch}.filters{display:grid!important;grid-template-columns:1fr!important}.actions>button,.actions>.button{flex:1 1 auto}.page-path{overflow-x:auto;white-space:nowrap}}

/* R21.8.1: realce global de opções sob o ponteiro, foco e seleção. */
:root{--choice-hover:#e5f1f7;--choice-hover-border:#87b7ca;--choice-selected:#cce4ed;--choice-selected-border:#287d78}
body[data-muzik-page]{--choice-hover:#e8eff7;--choice-hover-border:#9eb6cd;--choice-selected:#d3dfe9;--choice-selected-border:#214d78}
.smart-option{border:1px solid transparent;transition:background-color .1s,border-color .1s,color .1s}
.smart-option:hover,.smart-option:focus-visible,.smart-option.highlighted{background:var(--choice-hover);border-color:var(--choice-hover-border);color:#18556d;outline:0}
.smart-option.selected,.smart-option[aria-selected="true"]{background:var(--choice-selected);border-color:var(--choice-selected-border);color:#174744;font-weight:600}
.smart-option.selected:hover,.smart-option.selected.highlighted,.smart-option[aria-selected="true"]:hover,.smart-option[aria-selected="true"].highlighted{background:#badbe6}
.smart-select.disabled{opacity:.58}.smart-select.disabled input,.smart-select.disabled button{cursor:not-allowed}
.contract-row,.library-tab,.section-tabs button,.tabs button,.model-slot,.rotation-list li,.media-card,.catalog-list-item,.catalog-icon-item{transition:background-color .1s,border-color .1s,box-shadow .1s}
.contract-row:focus-visible,.library-tab:focus-visible,.section-tabs button:focus-visible,.tabs button:focus-visible,.model-slot:focus-visible,.catalog-list-item:focus-visible,.catalog-icon-item:focus-visible{outline:2px solid var(--choice-hover-border);outline-offset:1px}
@media(hover:hover) and (pointer:fine){
 button[data-action]:not(:disabled):not(.active):hover,.button[href]:hover{box-shadow:0 0 0 2px color-mix(in srgb,var(--choice-hover-border) 55%,transparent);filter:none}
 .contract-row:not(.active):hover,.library-tab:not(.active):hover,.section-tabs button:not(.active):hover,.tabs button:not(.active):hover,[data-selectable]:not([aria-disabled="true"]):hover,[data-open-track]:hover{background:var(--choice-hover);border-color:var(--choice-hover-border)}
 label:has(>input[type="checkbox"]):hover,label:has(>input[type="radio"]):hover{color:var(--ink)}
 select option:hover{background:var(--choice-hover);color:var(--ink)}
 .smart-select:not(.disabled):hover>input{border-color:var(--choice-hover-border)}
}
@media(hover:none){button[data-action]:not(:disabled):active,.contract-row:active,.library-tab:active,.section-tabs button:active,.tabs button:active,.model-slot:active,.catalog-list-item:active,.catalog-icon-item:active{background:var(--choice-hover);border-color:var(--choice-hover-border)}}

/* Calendário de modelos: associação direta e compacta entre rótulo e controle. */
.model-calendar-form{display:grid;gap:12px}.model-calendar-head{margin:0}.model-calendar-head p{margin-bottom:0}.model-calendar-grid{display:grid;grid-template-columns:minmax(320px,.85fr) minmax(420px,1.15fr);gap:12px;align-items:start}.calendar-group{min-width:0;margin:0;padding:10px 12px 12px;border:1px solid var(--line);border-radius:7px}.calendar-group legend{padding:0 5px;font-weight:700}.model-week-rows,.model-date-rows{display:grid;gap:4px}.model-week-row{display:grid;grid-template-columns:128px minmax(0,1fr);align-items:center;gap:8px;margin:0;padding:3px 5px;border:1px solid transparent;border-radius:5px}.model-week-row>span{font-weight:600}.model-week-row .smart-select,.model-week-row select{min-width:0}.model-date-row{display:grid;grid-template-columns:minmax(138px,.7fr) minmax(190px,1.3fr) auto;align-items:end;gap:7px;padding:5px;border:1px solid transparent;border-radius:5px}.model-date-row label{margin:0}.model-date-row label>span{display:block;margin-bottom:4px}.model-date-empty{padding:8px;margin:0}.model-calendar-form>button[type="submit"]{justify-self:start}
.library-tab.active,.section-tabs button.active,.tabs button.active,[aria-pressed="true"],.contract-row.active,[data-selectable].selected,[data-open-track].selected,[data-open-track][aria-selected="true"]{background:var(--choice-selected);border-color:var(--choice-selected-border);color:#174744}
[data-open-track].selected>td,[data-open-track][aria-selected="true"]>td{background:var(--choice-selected)!important}
[data-open-track]:focus-visible{outline:2px solid var(--choice-hover-border);outline-offset:-2px}
button:disabled,.button[aria-disabled="true"],[data-selectable][aria-disabled="true"]{opacity:.55;cursor:not-allowed;box-shadow:none!important}
.model-week-row:focus-within,.model-date-row:focus-within{background:var(--choice-hover);border-color:var(--choice-hover-border)}
.form-grid>label,.form-grid>fieldset{margin-block:2px}.form-grid label>small{margin-top:1px}.form-grid input,.form-grid select,.form-grid textarea{margin-top:0}
@media(max-width:900px){.model-calendar-grid{grid-template-columns:1fr}.model-calendar-head{align-items:stretch}.model-calendar-head button{align-self:flex-start}}
@media(max-width:560px){.model-week-row{grid-template-columns:1fr;gap:2px;padding:5px}.model-date-row{grid-template-columns:1fr}.model-date-row>button{justify-self:start}.calendar-group{padding:8px}}

/* R21.8.2: densidade operacional compartilhada sem reduzir as áreas de toque móveis. */
@media(min-width:901px){:root{--field-h:36px}main{padding-top:18px}section,.panel,.card{padding:14px;margin:10px 0}.toolbar{margin-bottom:10px}.form-grid{gap:5px 12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}label{gap:4px;margin:4px 0}input,select,textarea{padding:7px 8px}.actions{gap:5px}}
.compact-checks{display:flex;align-items:center;gap:8px 16px;flex-wrap:wrap;padding:3px 0}.compact-checks label,.form-grid label:has(>input[type="checkbox"]),.form-grid label:has(>input[type="radio"]),.weekday-choices label{display:inline-flex;flex-direction:row;align-items:center;gap:6px;margin:2px 0;color:var(--ink);justify-self:start;width:max-content;max-width:100%}.compact-checks input,.form-grid label>input[type="checkbox"],.form-grid label>input[type="radio"]{flex:0 0 auto;margin:0}.compact-form{align-items:end}.danger-outline{color:#9b303a!important;border-color:#d7a4aa!important;background:#fff!important}.danger-outline:hover{background:#fff0f1!important}.model-slot{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.model-slot-main{min-width:0}.model-slot-main strong,.model-slot-main small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-slot-main small{float:none;margin-top:2px}.model-slot-actions{flex-wrap:nowrap}.model-slot-actions button{white-space:nowrap}
@media(max-width:560px){.model-slot{grid-template-columns:minmax(0,1fr)}.model-slot-actions{overflow-x:auto;padding-bottom:2px}.compact-checks{display:grid;gap:5px}}

/* R21.8.3: alinhamento único para controles, auxiliares e condicionais. */
.form-grid{align-items:start}.form-grid>label{align-content:start;min-width:0}.form-grid>label>input:not([type="checkbox"]):not([type="radio"]),.form-grid>label>select,.form-grid>label>.smart-select{width:100%}.form-grid>label>small{display:block;line-height:1.3;margin-top:1px;min-height:0}.smart-select>input{height:var(--field-h);min-height:var(--field-h)}.conditional-toggle{display:flex!important;align-self:end;justify-content:flex-start;min-height:var(--field-h);padding:5px 7px;margin:2px 0;border:1px solid var(--line);border-radius:4px;background:#f8fafb;color:var(--ink)}.conditional-toggle>label,.check-option>label{display:inline-flex;flex-direction:row;align-items:center;gap:6px;width:max-content;max-width:100%;margin:0;color:var(--ink)}.conditional-toggle input,.check-option input{margin:0;flex:0 0 auto}.check-option{display:grid;justify-items:start;gap:4px;padding:5px 0}.check-option>span{font-size:12px;color:#617a91}.check-option>small{display:block;line-height:1.3}#record-form>.actions{margin-top:10px;padding-top:9px;border-top:1px solid var(--line);justify-content:flex-start}#record-form>.actions button{flex:0 0 auto}

/* R22: ações do upload/assistente são uma barra real, fora da grade de campos. */
.upload-actions,.campaign-actions{display:flex;align-items:center;justify-content:flex-start;gap:6px;flex-wrap:wrap;margin-top:10px;padding-top:10px;border-top:1px solid var(--line);min-width:0}.upload-actions>button,.campaign-actions>button{flex:0 1 auto;min-width:max-content;max-width:100%;white-space:nowrap}.campaign-audio-panel{margin:10px 0 0;padding:10px;border:1px solid var(--line);border-radius:6px;background:#f8fafb}.campaign-audio-head,.campaign-audio-item{display:flex;align-items:center;justify-content:space-between;gap:10px}.campaign-audio-head{padding-bottom:7px;border-bottom:1px solid var(--line)}.campaign-audio-list{display:grid;gap:3px;margin-top:5px}.campaign-audio-item{padding:6px 2px}.campaign-audio-item>span{display:block;min-width:0;flex:1}.campaign-audio-item strong,.campaign-audio-item small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.campaign-audio-item .actions{flex:0 0 auto;flex-wrap:nowrap}
@media(max-width:560px){.upload-actions,.campaign-actions{display:grid;grid-template-columns:1fr}.upload-actions>button,.campaign-actions>button{width:100%;min-width:0}.campaign-audio-item{align-items:flex-start}.campaign-audio-item .actions{flex-wrap:wrap;justify-content:flex-end}}

[data-audio-key][data-audio-state="playing"],[data-audio-key][data-audio-state="loading"]{background:var(--choice-selected);border-color:var(--choice-selected-border);color:#174744}[data-audio-key].is-loading{cursor:progress}#player[data-audio-state="error"]{border:1px solid #b94a55}#player-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* R22: checkbox compacto; a área clicável acompanha apenas controle + texto. */
input[type="checkbox"],input[type="radio"]{box-sizing:border-box;width:18px;height:18px;min-width:18px;min-height:18px;padding:0;flex:0 0 18px;accent-color:var(--blue)}
.checkbox-control,.boolean-control,.compact-checks label,.weekday-choices label,.select-list label,.column-chooser label,.form-grid label:has(>input[type="checkbox"]),.form-grid label:has(>input[type="radio"]){display:inline-flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:6px;width:max-content;max-width:100%;min-width:0;margin:2px 0;padding:2px;color:var(--ink);cursor:pointer;line-height:1.3}
.checkbox-control>label{display:inline-flex;align-items:center;width:auto;max-width:100%;min-width:0;margin:0;padding:2px 3px;cursor:pointer;color:var(--ink);line-height:1.3}
.checkbox-control>input{margin:0}.check-option>.checkbox-control{justify-self:start}
input[type="checkbox"]:focus-visible,input[type="radio"]:focus-visible{outline:2px solid var(--choice-hover-border);outline-offset:2px}
@media(max-width:900px){input[type="checkbox"],input[type="radio"]{width:20px;height:20px;min-width:20px;min-height:20px;flex-basis:20px}.checkbox-control,.boolean-control,.compact-checks label,.weekday-choices label,.select-list label,.column-chooser label,.form-grid label:has(>input[type="checkbox"]),.form-grid label:has(>input[type="radio"]){min-height:36px;padding:5px 4px}}

/* HF3 */
dialog.coala-confirm{width:min(520px,calc(100vw - 32px));max-width:520px}dialog.coala-confirm>form{padding:16px 18px;display:grid;gap:10px}dialog.coala-confirm h2,dialog.coala-confirm p{margin:0}
