.delivery-dialog{width:min(880px,96vw);max-width:880px;max-height:90svh;padding:28px;overflow:auto}
.delivery-dialog form{display:grid;gap:22px}.delivery-dialog fieldset{margin:0;padding:20px;border:1px solid var(--line);border-radius:var(--radius);min-width:0}
.delivery-dialog legend{font-weight:600;padding:0 8px}.delivery-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.delivery-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:16px 0}.delivery-wide{grid-column:1/-1}
.delivery-component{padding:22px;margin:16px 0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);display:grid;gap:14px;overflow-wrap:anywhere;min-width:0}
.delivery-component h3{font-size:14px}.delivery-component .delivery-fields{margin:0}.delivery-component details summary{cursor:pointer;color:var(--muted);padding:10px 0}
.delivery-binding{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;background:var(--bg);padding:16px;margin:10px 0;border:1px solid var(--line);border-radius:8px}
.delivery-issues{font-size:12px;color:#8d6130;padding-left:20px;margin:0;line-height:1.7}#delivery-list{margin-top:18px}.delivery-component .detail{font-size:12px;color:var(--muted)}
.delivery-comparison{display:grid;gap:12px;min-width:0}.delivery-table-scroll{overflow-x:auto}.delivery-comparison table{width:100%;border-collapse:collapse;font-size:12px}.delivery-comparison th,.delivery-comparison td{text-align:left;padding:10px;border-bottom:1px solid var(--line);vertical-align:top}.delivery-comparison input[type=checkbox]{width:18px;height:18px;accent-color:var(--ink)}
@media(max-width:680px){.delivery-fields,.delivery-binding{grid-template-columns:minmax(0,1fr)}.delivery-dialog{padding:16px}.delivery-component{padding:16px}.delivery-heading .primary{width:100%}}

/* Mesmo sistema visual: superfícies neutras, violeta da marca, SVG de traço. */
.delivery-icon{flex-shrink:0;vertical-align:middle}.delivery-dialog button,.delivery-repo-row button{display:inline-flex;align-items:center;justify-content:center;gap:8px}
.delivery-subtitle{font-size:13px;color:var(--muted);line-height:1.6;margin-top:8px}.delivery-chips{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0 24px}.delivery-provider{display:inline-flex;align-items:center;gap:7px;font-size:11px;border:1px solid var(--line);border-radius:20px;padding:7px 11px;color:var(--muted);background:var(--surface)}.delivery-provider .delivery-icon{width:14px;height:14px}.delivery-provider.connected .delivery-icon{color:#39754b}
.delivery-repo-panel{padding:22px;background:var(--surface);border:1px solid var(--line);border-radius:14px;margin-bottom:32px;box-shadow:0 3px 14px #17171703}.delivery-repo-panel h3{font-size:14px;display:flex;gap:10px;align-items:center}.delivery-search{width:min(360px,100%)}
.delivery-repo-row{display:flex;align-items:center;gap:16px;padding:16px 0;border-top:1px solid var(--line)}.delivery-mark{width:38px;height:38px;border:1px solid var(--line);border-radius:10px;background:var(--bg);display:grid;place-items:center;color:var(--muted);flex-shrink:0}.delivery-repo-body{min-width:0;flex:1}.delivery-repo-body h4{font-size:13px;margin:0 0 6px;overflow-wrap:anywhere;font-weight:550}.delivery-repo-body .detail{font-size:11px;color:var(--muted)}.delivery-repo-row button{font-size:12px}.delivery-repo-row .primary{background:var(--brand-soft);color:var(--brand)}.delivery-repo-row .primary:hover{background:#e7def8}
.delivery-repo-banner{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--brand-soft);color:var(--brand);border:1px solid #e3daf4;border-radius:10px;padding:15px;overflow-wrap:anywhere}.delivery-repo-banner strong{font-size:13px;min-width:0}.delivery-repo-banner .status{margin-left:auto;background:#fff8;color:var(--brand)}
.delivery-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;border-bottom:1px solid var(--line);padding-bottom:18px}.delivery-step-button{padding:12px 8px;background:var(--bg);color:var(--muted);border-radius:8px;font-size:12px}.delivery-step-button.selected{background:var(--brand-soft);color:var(--brand);font-weight:600}.delivery-step{min-width:0;outline:none}.delivery-step h3{font-size:15px}
.delivery-dialog input:not([type=checkbox]),.delivery-dialog select,.delivery-search input{min-height:46px;border:1px solid #e0e0e5;border-radius:9px;background:#fff;padding:12px 14px;box-shadow:0 1px 2px #17171704;transition:border-color .15s,box-shadow .15s}.delivery-dialog input:hover,.delivery-dialog select:hover,.delivery-search input:hover{border-color:#bcb3cf}.delivery-dialog input:focus,.delivery-dialog select:focus,.delivery-search input:focus{border-color:var(--brand);box-shadow:0 0 0 3px #4a21bb12}.delivery-dialog input:user-invalid{border-color:#ad2541}.delivery-dialog label{color:#4f4f58;font-size:12px;gap:8px}.delivery-dialog input[type=checkbox]{min-height:18px;padding:0;box-shadow:none}
.delivery-advanced{border-top:1px solid var(--line);padding-top:6px;color:var(--muted)}.delivery-advanced>summary{font-size:12px;padding:9px 0}.delivery-advanced>summary .delivery-icon{width:16px;height:16px;margin-right:8px}.delivery-advanced .delivery-fields{margin:14px 0}.delivery-config-summary{font-size:11px;color:var(--muted);line-height:1.6}.delivery-kind-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0}.delivery-dialog .delivery-kind-button{display:grid;grid-template-columns:24px 1fr;gap:6px 10px;text-align:left;justify-content:start;border:1px dashed #d8d4e1;border-radius:10px;background:var(--surface);padding:16px;color:var(--text);font-size:13px}.delivery-kind-button small{grid-column:2;font-size:11px;font-weight:400}.delivery-kind-button:hover{border-color:var(--brand);background:var(--brand-soft)}.delivery-kind-button .delivery-icon{color:var(--brand);grid-row:span 2}
.delivery-footer{position:sticky;bottom:-28px;background:var(--surface);padding:18px 0 0;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px;box-shadow:0 -8px 18px #fff}.delivery-footer p{max-width:300px;line-height:1.6}.delivery-dialog .delivery-footer button{white-space:nowrap}.delivery-review-card{padding:18px;border:1px solid var(--line);border-radius:10px;display:grid;gap:10px;margin-top:14px}.delivery-review-card .delivery-heading{justify-content:flex-start}.delivery-callout{background:var(--brand-soft);border-radius:9px;padding:14px;color:var(--brand);font-size:12px;line-height:1.7;margin-top:18px}.delivery-empty{display:grid;justify-items:center;gap:12px;padding:30px;background:var(--surface);border:1px dashed var(--line);border-radius:12px}.delivery-empty .delivery-icon{color:var(--muted)}.delivery-empty h3{font-size:14px;font-weight:500}.delivery-empty .detail{font-size:12px;color:var(--muted)}.delivery-service-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:14px;background:var(--bg);border-radius:8px;font-size:12px}.delivery-service-line>.delivery-icon{color:var(--brand)}.delivery-target-chip{font-size:11px;border:1px solid var(--line);padding:6px 9px;border-radius:6px;background:var(--surface)}
.delivery-comparison table{white-space:normal}.delivery-comparison td,.delivery-comparison th{overflow-wrap:anywhere}.delivery-binding>.detail{font-size:11px;color:var(--muted);line-height:1.6}.delivery-dialog .delivery-heading .quiet{font-size:11px}.delivery-dialog .delivery-issues{line-height:1.7}.delivery-review-card .detail{font-size:12px;color:var(--muted);overflow-wrap:anywhere}#delivery-review>h3{margin-top:20px}
@media(max-width:680px){.delivery-repo-panel{padding:16px}.delivery-repo-row{flex-wrap:wrap;gap:10px}.delivery-repo-row .delivery-repo-body{flex-basis:calc(100% - 55px)}.delivery-repo-row>.status{margin-left:48px}.delivery-repo-row>button{margin-left:auto}.delivery-kind-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.delivery-footer{bottom:-16px;align-items:stretch;flex-direction:column}.delivery-footer>.delivery-heading{justify-content:flex-end}.delivery-footer .primary{width:auto}.delivery-step-button{font-size:11px}.delivery-step-button .delivery-icon{width:16px;height:16px}}
@media(prefers-reduced-motion:reduce){.delivery-dialog input,.delivery-dialog select,.delivery-dialog button{transition:none}}
/* Cards, navegação e formulários não podem ampliar a largura da página. */
.resource-panel,.resource-fact,.easy-settings,.easy-settings form,.delivery-repo-panel,.deploy-card,.deploy-head,.deploy-project-actions{min-width:0}
.deploy-card>header{flex-wrap:wrap}.deploy-project-actions{flex-wrap:wrap}.deploy-links{max-width:100%;flex-wrap:wrap}.deploy-links .detail{white-space:normal}
.delivery-dialog .delivery-footer{bottom:0}.delivery-table-scroll{max-width:100%;overscroll-behavior-x:contain}
@media(max-width:1100px) and (min-width:901px){#easypanel-inventory.deploy-grid{grid-template-columns:1fr}.resource-panel .resource-facts{grid-template-columns:1fr}}
@media(max-width:680px){
 #view-resource .resource-tabs{flex-wrap:nowrap;overflow-x:auto;max-width:100%;gap:8px;padding:3px 2px 12px;overscroll-behavior-x:contain}
 #view-resource .resource-tabs button{flex:0 0 auto;white-space:nowrap;min-height:44px}
 .easy-actions>button{flex:1 1 130px;min-height:44px}.easy-settings summary{padding-block:10px}
 .delivery-dialog input:not([type=checkbox]),.delivery-dialog select,.delivery-search input,.deploy-filters input,.deploy-filters select,.easy-settings textarea{font-size:16px}
 .delivery-dialog .delivery-footer{position:static;box-shadow:none}.delivery-dialog fieldset{padding:12px}.delivery-dialog legend{max-width:100%;overflow-wrap:anywhere}
 .delivery-dialog .delivery-footer button{white-space:normal;min-height:44px}.delivery-dialog .delivery-footer>.delivery-heading{display:flex;flex-wrap:wrap}
 #view-deploys .deploy-project-actions{white-space:normal}#view-deploys .deploy-project-actions .secondary{min-height:44px}
 .delivery-kind-picker{grid-template-columns:1fr}.delivery-dialog .delivery-kind-button{min-height:64px}
}
@media(max-width:400px){.delivery-dialog .delivery-kind-picker{grid-template-columns:1fr}.delivery-dialog .delivery-steps{grid-template-columns:1fr}.delivery-dialog .delivery-step-button{text-align:left;min-height:44px}}
/* Deploys: um projeto por card; histórico sob demanda. */
.easy-actions{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 28px}.easy-danger{color:#a42b42;border-color:#e4b9c2}.easy-settings{border-top:1px solid var(--line);padding:16px 0}.easy-settings summary{font-size:13px;color:var(--text)}.easy-settings form{display:grid;gap:16px;max-width:640px;margin-top:20px}.easy-settings textarea{width:100%;padding:14px;font:12px/1.6 monospace;border:1px solid var(--line);border-radius:8px;resize:vertical}.easy-settings textarea:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.easy-warning{color:#8a5216;line-height:1.7}.easy-logs{white-space:pre-wrap;overflow-wrap:anywhere;max-height:480px;overflow:auto;background:#19181e;color:#e6e3ed;padding:20px;border-radius:10px;font:12px/1.7 monospace;margin-top:16px}.easy-confirm .detail{line-height:1.7;font-size:13px}.easy-confirm{width:520px}.resource-panel>h3{margin-top:18px}
/* Foco no mesmo perímetro da borda: sem segundo anel separado. */
#view-deploys :is(input,select,button,summary):focus-visible,
#view-resource button:focus-visible,
.delivery-dialog :is(input,select):focus-visible,
.delivery-search input:focus-visible{outline:2px solid var(--brand);outline-offset:-2px;box-shadow:none}
#view-deploys :is(input,select):hover:not(:focus-visible){border-color:#bcb3cf}
.delivery-dialog input:focus,.delivery-dialog select:focus,.delivery-search input:focus{outline:2px solid var(--brand);outline-offset:-2px;box-shadow:none}
.deploy-intro h2{font-size:19px;letter-spacing:-.4px}.deploy-intro p{margin-top:8px;color:var(--muted);font-size:13px;line-height:1.6}.deploy-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:24px 0}.deploy-summary article{padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:0 3px 12px #20163803}.deploy-summary article>span{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--muted)}.deploy-summary .delivery-icon{width:17px;height:17px;color:var(--brand)}.deploy-summary strong{display:block;font-size:28px;font-weight:550;margin-top:16px;font-variant-numeric:tabular-nums}.deploy-filters{display:flex;gap:16px;align-items:end;margin:26px 0 20px}.deploy-filters label{width:240px;max-width:100%;font-size:11px;color:var(--muted)}.deploy-filters .deploy-search{width:360px}.deploy-filters input,.deploy-filters select{font-size:13px;border-radius:9px}.deploy-filters>#deploy-results{margin-left:auto;white-space:nowrap;padding-bottom:14px}#deploys-list .deploy-card{border-radius:14px;box-shadow:0 4px 16px #20163804}#deploys-list .deploy-card>header{border-bottom:0;padding:20px 24px}.deploy-project-mark{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--line);background:var(--bg);border-radius:10px;color:var(--brand)}.deploy-project-actions{display:flex;align-items:center;gap:16px}.deploy-project-actions .secondary{font-size:12px}.deploy-row>div:first-child{min-width:0;flex:1}.deploy-source{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px;color:var(--muted);font-size:12px;overflow-wrap:anywhere}.deploy-source>span{display:inline-flex;align-items:center;gap:6px;min-width:0}.deploy-source .delivery-icon{width:14px;height:14px;flex-shrink:0}.deploy-source code{font-size:11px;padding:3px 6px;border-radius:5px;background:#efeff2;color:#55515f}.deploy-latest{font-size:10px;color:var(--muted);margin-left:auto}.status.building{color:#8b621a;background:#fcf4df}.deploy-row .deploy-message{margin-top:10px;line-height:1.6}.deploy-row .secondary{font-size:12px}.deploy-history{border-top:1px solid var(--line)}.deploy-history>summary{padding:14px 24px;margin:0;font-size:12px;color:var(--muted)}.deploy-history[open]>summary{border-bottom:1px solid var(--line)}.deploy-infra-heading{margin-top:40px}#easypanel-inventory{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}#easypanel-inventory .deploy-card>.secondary{margin:12px;max-width:calc(100% - 24px);overflow-wrap:anywhere;text-align:left}.deploy-summary strong,.deploy-project-actions{white-space:nowrap}#deploys-list h3{overflow-wrap:anywhere}
@media(max-width:1000px){.deploy-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.deploy-filters{flex-wrap:wrap}.deploy-filters>#deploy-results{margin-left:0}.deploy-project-actions{gap:8px}.deploy-project-actions .ecosystem-category{display:none}}@media(max-width:680px){.deploy-filters label,.deploy-filters .deploy-search{width:100%}.deploy-filters>#deploy-results{padding-bottom:0}.deploy-summary article{padding:16px}.deploy-summary article>span{font-size:11px}.deploy-summary strong{font-size:24px}#easypanel-inventory{grid-template-columns:1fr}#deploys-list .deploy-card>header{padding:16px;align-items:start}.deploy-project-mark{display:none}.deploy-project-actions .secondary{padding:8px;font-size:11px}.deploy-latest{margin-left:0}.deploy-row{padding:16px}.deploy-links{width:100%;justify-content:space-between}.deploy-source{gap:8px}}
.resource-heading,.resource-tabs{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:20px}.resource-heading button,.resource-tabs button,.deploy-card .secondary{display:inline-flex;align-items:center;gap:8px}.resource-tabs{margin-top:28px;padding-bottom:14px;border-bottom:1px solid var(--line)}.resource-tabs [aria-current=page]{background:var(--brand-soft);border-color:var(--brand);color:var(--brand)}.resource-panel{padding:26px;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:0 4px 18px #20163805}.resource-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:24px 0}.resource-fact dt{font-size:12px;color:var(--muted);margin-bottom:8px}.resource-fact dd{font-size:14px;margin:0;overflow-wrap:anywhere}.resource-panel .delivery-component{margin-top:16px;overflow-wrap:anywhere}.resource-selected{outline:2px solid var(--brand)}.resource-footnote{border-top:1px solid var(--line);padding-top:18px;margin-top:28px;font-size:12px;color:var(--muted);line-height:1.7}.resource-panel>.detail{line-height:1.7}.deploy-card>.secondary{margin:8px 8px 8px 0}#view-resource>h2{overflow-wrap:anywhere}@media(max-width:680px){.resource-facts{grid-template-columns:1fr}.resource-panel{padding:18px}.resource-tabs{gap:8px}.resource-tabs button{font-size:12px}}
