/* GIRA industrial workspace: visual language for dense engineering work */
:root{--ui-canvas:#f6f5f4;--ui-surface:#fff;--ui-surface-subtle:#faf9f8;--ui-surface-hover:#f8f3ee;--ui-panel-header:#f4f3f2;--ui-text:#202328;--ui-text-secondary:#585e6b;--ui-text-muted:#7a756c;--ui-text-disabled:#b1aca3;--ui-border:#e0ddd9;--ui-border-strong:#c8c4bc;--ui-divider:#e9e7e4;--ui-primary:#e4551d;--ui-primary-hover:#c9461a;--ui-primary-subtle:#faf1ea;--ui-selection:#f8ece2;--ui-focus:#e4551d;--ui-success:#17824b;--ui-success-bg:#e8f6ee;--ui-warning:#a66300;--ui-warning-bg:#fff3dc;--ui-danger:#c73737;--ui-danger-bg:#fdeaea;--ui-info:#b23d15;--ui-info-bg:#f9efe7;--radius-control:6px;--radius-panel:8px;--control-height:40px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--shadow-popup:0 8px 24px #1b1e242e;--shadow-dialog:0 18px 50px #15181d40;--font-ui:Inter,"Segoe UI",Arial,sans-serif;--font-code:"JetBrains Mono",Consolas,monospace;--paper:var(--ui-canvas);--surface:var(--ui-surface);--surface2:var(--ui-surface-subtle);--ink:var(--ui-text);--ink2:var(--ui-text-secondary);--muted:var(--ui-text-muted);--line:var(--ui-border);--blue:var(--ui-primary);--green:var(--ui-success);--amber:var(--ui-warning);--red:var(--ui-danger);--shadow:0 1px 2px #1b1e250a}
html[data-theme=dark]{--ui-canvas:#17191d;--ui-surface:#202328;--ui-surface-subtle:#25282e;--ui-surface-hover:#2d3036;--ui-panel-header:#272a2f;--ui-text:#f1f0ee;--ui-text-secondary:#d0ccc5;--ui-text-muted:#a59f92;--ui-text-disabled:#686e7a;--ui-border:#3a3e47;--ui-border-strong:#505560;--ui-divider:#343840;--ui-primary:#f0762e;--ui-primary-hover:#f6a21c;--ui-primary-subtle:#2d333e;--ui-selection:#3f4655;--ui-focus:#f6a21c;--ui-success:#58c98c;--ui-success-bg:#173b29;--ui-warning:#e4ad55;--ui-warning-bg:#44341c;--ui-danger:#ef7777;--ui-danger-bg:#492526;--ui-info:#f6a21c;--ui-info-bg:#292e37}
body{font-family:var(--font-ui);background:var(--ui-canvas);font-size:14px}.wrap{width:min(1600px,calc(100% - 40px))}.content{padding-top:24px}.page-head{margin-bottom:16px}.page-head h1{margin:4px 0;font-size:27px;font-weight:650;letter-spacing:-.025em}.page-head>div:first-child>p:last-child{font-size:13px}.overline,.breadcrumbs{color:var(--ui-primary);font-size:10px;letter-spacing:.11em}
.topbar{background:var(--ui-surface);box-shadow:none}.top-main{height:64px}.product{width:136px;min-width:136px}.product img{width:126px;height:44px;object-fit:contain;object-position:left center}.navline{background:var(--ui-surface)}.navwrap{height:42px}.navwrap nav button{height:42px;padding-inline:12px;font-size:12px;font-weight:600}.navwrap nav button.active::after{inset:auto 10px -1px;height:2px}.context label{font-size:9px}.context select{font-size:12px}.top-actions>button{border-radius:var(--radius-control)}.health{border-radius:3px}.profile>b{border-radius:4px}.top-actions .profile{height:38px;border-radius:0 4px 4px 0}
.primary,.secondary,.icon-control{min-height:36px;border-radius:var(--radius-control);font-size:13px;font-weight:600;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.primary{background:var(--ui-primary)}.primary:hover{background:var(--ui-primary-hover)}.secondary{border-color:var(--ui-border-strong)}.secondary:hover{border-color:var(--ui-primary);background:var(--ui-primary-subtle);color:var(--ui-primary)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}
.panel,.table-panel,.upload-card,.analysis,.metrics article,.project-card{border-color:var(--ui-border);border-radius:var(--radius-panel);box-shadow:var(--shadow)}.panel{padding:16px}.panel h3{font-size:15px;font-weight:650}.panel-head{padding-bottom:10px;border-bottom:1px solid var(--ui-divider)}.metrics{gap:8px;margin:10px 0}.metrics article{padding:14px 16px}.metrics article:hover,.project-card:hover{transform:none;border-color:var(--ui-border-strong);box-shadow:var(--shadow)}.metrics article>i{width:36px;height:36px;border-radius:4px}.metrics strong{font-size:24px}.chip,.client-status{border-radius:3px}.chip.good{background:var(--ui-success-bg);color:var(--ui-success)}
.workbench-controls{min-height:40px;margin-top:7px;border-radius:var(--radius-panel);box-shadow:none}.engineering-state>span,.icon-control{font-size:11px}.icon-control{min-height:30px}.tabs{margin-bottom:8px;border-bottom:1px solid var(--ui-border)}.tabs button{min-height:38px;padding:8px 12px;border-bottom-width:2px;font-size:12px}.toolbar{top:107px;gap:6px;padding:7px;border-radius:var(--radius-panel);background:var(--ui-panel-header);backdrop-filter:none;box-shadow:none}.toolbar select,.searchfield{min-height:36px;border-radius:var(--radius-control);font-size:12px}
.table-panel{max-height:min(68vh,760px);border-radius:var(--radius-panel)}table{font-size:12px}thead{background:var(--ui-panel-header)}.table-panel th{padding:9px 12px;color:var(--ui-text-secondary);font-size:10px;letter-spacing:.06em}.table-panel td{height:42px;padding:8px 12px;border-color:var(--ui-divider);font-size:12px}.table-panel tbody tr:hover{background:var(--ui-surface-hover)}.table-panel td code,.tree-node,.inspector h3{font-family:var(--font-code)}
.workspace{grid-template-columns:minmax(0,1fr) 310px;gap:8px}.route-layout{gap:8px}.workspace>.panel,.route-layout>.panel,.route-layout>.canvas{min-height:500px}.tree,.inspector,#architecture .tree,#architecture .inspector{border-radius:var(--radius-panel)!important}.tree .panel-head,#architecture .tree>.panel-head{padding:14px 16px}.tree>div:last-child,#architecture .tree>div:last-child{padding:12px 14px;background:var(--ui-surface);min-height:440px}.controller-node{min-height:42px;margin:3px 0;border-radius:3px;box-shadow:none}.controller-node:hover{transform:none;background:var(--ui-surface-hover);box-shadow:none}.controller-node:has(.tree-node[aria-selected=true]){background:var(--ui-selection);box-shadow:inset 3px 0 var(--ui-primary)}.tree-node{padding:7px 9px;font-size:12px}.inspector{padding:16px!important;background:var(--ui-surface)}.inspector-heading{padding-bottom:12px}.inspector h3{font-size:15px}.inspector dl>div{padding:10px 0;font-size:12px}.selection-kind{border-radius:3px;background:var(--ui-primary-subtle);color:var(--ui-primary)}.canvas{border-radius:var(--radius-panel);background-image:radial-gradient(var(--ui-border-strong) .8px,transparent .8px);background-size:18px 18px}
dialog:not(#searchDialog){border-radius:8px;box-shadow:var(--shadow-dialog)}dialog::backdrop{background:#16181b9e;backdrop-filter:none}dialog:not(#searchDialog) .dialog-head{padding:17px 20px 14px;background:var(--ui-surface);backdrop-filter:none}.dialog-head h3{font-size:18px}.dialog-head button{width:32px;height:32px;border-radius:4px}dialog:not(#searchDialog) footer{padding:12px 20px;background:var(--ui-surface);backdrop-filter:none}dialog input,dialog select,dialog textarea,.team-form-body input,.team-form-body select{min-height:38px;border-radius:var(--radius-control);background:var(--ui-surface)}dialog input:focus,dialog select:focus,dialog textarea:focus{box-shadow:0 0 0 2px color-mix(in srgb,var(--ui-focus) 24%,transparent)}.popover{border-radius:6px;box-shadow:var(--shadow-popup)}.toast{border-radius:4px;box-shadow:var(--shadow-popup)}
@media(max-width:560px){.product{width:44px;min-width:44px}.product img{width:38px;height:38px}}
.engineering-output{position:fixed;right:0;bottom:0;left:0;z-index:18;display:none;height:210px;border-top:1px solid var(--ui-border-strong);background:var(--ui-surface);box-shadow:0 -8px 24px #1b1e2512;transform:translateY(100%);transition:transform .18s ease}.engineering-output.available{display:block}.engineering-output.open{transform:none}.engineering-output>header{display:flex;height:39px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--ui-border);background:var(--ui-panel-header)}.output-tabs,.output-tools{display:flex;height:100%;align-items:center}.output-tabs button{display:flex;height:100%;align-items:center;gap:7px;padding:0 14px;border:0;border-right:1px solid var(--ui-border);border-bottom:2px solid transparent;background:transparent;color:var(--ui-text-secondary);font-size:11px;font-weight:600}.output-tabs button.active{border-bottom-color:var(--ui-primary);background:var(--ui-surface);color:var(--ui-primary)}.output-tabs button b,.output-toggle b,.diagnostic-toolbar b{display:grid;min-width:18px;height:18px;place-items:center;border-radius:9px;background:var(--ui-surface-hover);font-size:9px}.output-tools>span{color:var(--ui-text-muted);font-size:10px}.output-tools button{display:grid;width:38px;height:38px;place-items:center;border:0;background:transparent;color:var(--ui-text-muted)}.output-body{height:171px;overflow:auto}.output-empty{display:flex;height:100%;align-items:center;justify-content:center;gap:10px;color:var(--ui-text-muted)}.output-empty>.ui-icon{width:22px}.output-empty span{display:grid;gap:2px}.output-empty b{color:var(--ui-text-secondary);font-size:12px}.output-empty small{font-size:10px}.diagnostic-toolbar{display:flex;height:36px;align-items:center;gap:3px;padding:3px 8px;border-bottom:1px solid var(--ui-divider)}.diagnostic-toolbar button{display:flex;align-items:center;gap:5px;padding:5px 8px;border:0;border-radius:3px;background:transparent;color:var(--ui-text-muted);font-size:10px}.diagnostic-toolbar button.active{background:var(--ui-surface-hover);color:var(--ui-text)}.diagnostic-toolbar+.output-empty{height:135px}.output-toggle{position:fixed;right:18px;bottom:12px;z-index:19;display:none;min-height:30px;align-items:center;gap:6px;padding:0 9px;border:1px solid var(--ui-border-strong);border-radius:3px;background:var(--ui-surface);color:var(--ui-text-secondary);box-shadow:var(--shadow-popup);font-size:10px}.output-toggle.visible{display:flex}.output-toggle .ui-icon{width:14px}.output-toggle b{min-width:16px;height:16px}body.output-open .content{padding-bottom:250px}body.output-open .output-toggle{display:none}
@media(max-width:900px){.wrap{width:min(100% - 24px,1600px)}.workspace{grid-template-columns:1fr}.toolbar{position:static}.engineering-output{height:240px}.output-body{height:201px}body.output-open .content{padding-bottom:275px}}
@media(max-width:639px){.page-head h1{font-size:24px}.panel{padding:14px}.navwrap{height:44px}.table-panel{margin-inline:-12px}.output-tools>span,.output-tabs button span{display:none}.engineering-output{bottom:66px}.output-toggle{bottom:78px}.output-empty{padding:20px;text-align:left}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}

/* UX/UI unificada: controles, lectura, jerarquía y respuesta */
body{line-height:1.45;color:var(--ui-text)}.content{min-height:calc(100vh - 106px)}
.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-4)}.page-head>div:first-child>p:last-child{max-width:760px;color:var(--ui-text-secondary)}
.navwrap nav button{position:relative;color:var(--ui-text-secondary);transition:color .15s ease,background-color .15s ease}.navwrap nav button:hover{background:var(--ui-surface-hover);color:var(--ui-text)}.navwrap nav button.active{color:var(--ui-primary)}
.primary,.secondary,.top-actions>button{min-height:var(--control-height);padding-inline:14px}.primary:disabled,.secondary:disabled,button:disabled{cursor:not-allowed;opacity:.52}.primary:active,.secondary:active{transform:translateY(1px)}
input:not([type=checkbox]):not([type=radio]),select,textarea,.searchfield{min-height:var(--control-height);border-color:var(--ui-border-strong)}input::placeholder,textarea::placeholder{color:var(--ui-text-muted);opacity:.9}label{font-weight:600}small,.muted{line-height:1.45}
.panel,.eng-panel,.table-panel{background:var(--ui-surface)}.panel-head{align-items:center}.panel-head>div:last-child{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}
.table-scroll{scrollbar-width:thin;scrollbar-color:var(--ui-border-strong) transparent}.table-scroll table{min-width:max-content}.table-scroll thead{position:sticky;top:0;z-index:2;box-shadow:0 1px var(--ui-border)}.table-scroll tbody tr{transition:background-color .12s ease}.table-scroll tbody tr:nth-child(even){background:color-mix(in srgb,var(--ui-canvas) 42%,transparent)}.table-scroll tbody tr:hover{background:var(--ui-surface-hover)}.table-scroll td,.table-scroll th{vertical-align:middle}.chip{font-weight:650;white-space:nowrap}
.eng-empty,.empty,.team-empty{display:grid;min-height:150px;place-content:center;gap:8px;padding:32px;text-align:center;color:var(--ui-text-secondary);border:1px dashed var(--ui-border-strong);border-radius:var(--radius-panel);background:var(--ui-surface-subtle)}.eng-empty::before,.team-empty::before{content:"○";display:grid;width:34px;height:34px;margin:auto;place-items:center;border:1px solid var(--ui-border-strong);border-radius:50%;color:var(--ui-primary);background:var(--ui-surface);font-size:20px}
dialog:not(#searchDialog){max-height:min(88vh,820px)}dialog:not(#searchDialog) .dialog-head{position:sticky;top:0;z-index:3}dialog:not(#searchDialog) footer{position:sticky;bottom:0;z-index:3;border-top:1px solid var(--ui-divider)}dialog button[aria-label],dialog .dialog-head button{min-width:40px;min-height:40px}
@media(max-width:900px){.page-head{align-items:flex-start;flex-direction:column}.panel-head{align-items:flex-start;flex-direction:column}.panel-head>div:last-child{justify-content:flex-start}}
@media(max-width:639px){.wrap{width:calc(100% - 24px)}.content{padding-top:18px}.page-head{margin-bottom:12px}.page-head h1{font-size:22px}.primary,.secondary{min-height:42px}dialog:not(#searchDialog){width:100vw!important;max-width:none!important;max-height:94vh;margin:auto 0 0;border-radius:12px 12px 0 0}dialog:not(#searchDialog) .dialog-head,dialog:not(#searchDialog) footer{padding-inline:16px}}

/* Flujo de trabajo: más contenido útil y menos cromo */
.workbench-controls{display:none!important}.context label:has(#globalController){display:none}.top-main{height:58px}.navwrap{height:40px}.navwrap nav button{height:40px}.content{padding-top:18px}.page-head{margin-bottom:12px}.page-head h1{font-size:24px}.breadcrumbs{font-size:9px}
#dashboard .hero{min-height:0;padding:24px 28px;border-radius:var(--radius-panel)}#dashboard .hero h2{margin:3px 0;font-size:27px}#dashboard .hero .hero-actions{margin-top:14px}.project-status-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;background:linear-gradient(115deg,#181b20,#2b3038)!important}.project-status-hero::after{display:none}.project-status-hero>div{min-width:0}.project-status-hero .project-health{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.project-status-hero .chip{padding:7px 10px;background:#ffffff12;color:#f5f2ed;border:1px solid #ffffff20}.project-status-hero .chip.good{color:#8be0b3;border-color:#58c98c55}.project-status-hero .chip.warn{color:#f2c277;border-color:#e4ad5555}
.finding-groups{display:grid;gap:8px}.finding-groups details{border:1px solid var(--ui-border);border-radius:var(--radius-panel);background:var(--ui-surface)}.finding-groups summary{display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer}.finding-groups summary>span{flex:1;color:var(--ui-text-muted);font-size:12px}.finding-groups details>.finding{padding-inline:12px}.data-disclosure{margin-top:14px;border-top:1px solid var(--ui-divider)}.data-disclosure>summary{padding:12px 2px;cursor:pointer;color:var(--ui-primary);font-weight:650;font-size:12px}
.topology-canvas{overflow:auto;border:1px solid var(--ui-border);border-radius:var(--radius-panel);background:var(--ui-canvas)}.topology-canvas svg{display:block;min-width:850px;width:100%;height:auto}.topology-lane{fill:var(--ui-surface);stroke:var(--ui-border)}.topology-zone{fill:var(--ui-text-muted);font:700 11px var(--font-ui)}.topology-edge{fill:none;stroke:var(--ui-primary);stroke-width:2;opacity:.72}.topology-canvas marker path{fill:var(--ui-primary)}.topology-side{fill:var(--ui-warning);font:800 12px var(--font-ui);text-anchor:middle}.topology-node{cursor:pointer;outline:none}.topology-node rect{fill:var(--ui-surface);stroke:var(--ui-border-strong);stroke-width:1.5}.topology-node:hover rect,.topology-node:focus rect{fill:var(--ui-primary-subtle);stroke:var(--ui-primary);stroke-width:2}.topology-node text{text-anchor:middle;pointer-events:none}.topology-role{fill:var(--ui-text-muted);font:700 9px var(--font-ui)}.topology-tag{fill:var(--ui-text);font:700 11px var(--font-code)}.topology-help{margin-bottom:0;font-size:11px}
.wizard-steps{display:flex;list-style:none;margin:0 0 18px;padding:0}.wizard-steps li{position:relative;display:flex;flex:1;align-items:center;gap:7px;color:var(--ui-text-muted);font-size:11px}.wizard-steps li:not(:last-child)::after{content:"";height:1px;flex:1;background:var(--ui-border)}.wizard-steps b{display:grid;width:25px;height:25px;place-items:center;border:1px solid var(--ui-border-strong);border-radius:50%;background:var(--ui-surface)}.wizard-steps .active{color:var(--ui-primary)}.wizard-steps .active b{border-color:var(--ui-primary);background:var(--ui-primary);color:#fff}.wizard-section{margin:12px 0;padding:14px;border:1px solid var(--ui-border);border-radius:var(--radius-panel);background:var(--ui-surface-subtle)}.wizard-section h4{margin:0 0 8px}.form-advanced{margin:14px 0;border:1px solid var(--ui-border);border-radius:var(--radius-panel)}.form-advanced>summary{padding:13px;cursor:pointer;font-weight:700}.form-advanced>div{padding:2px 13px 13px}
.route-card .eng-toolbar{padding:0;border:0;background:transparent}.route-card header>div:last-child{display:flex;flex-wrap:wrap;gap:5px}.artifact-list a{transition:border-color .12s ease,background-color .12s ease}.artifact-list a:hover{background:var(--ui-primary-subtle)}
@media(max-width:900px){.project-status-hero{align-items:flex-start;flex-direction:column}.project-status-hero .project-health{justify-content:flex-start}.top-main{height:56px}}
@media(max-width:767px){
  .page-head>div:first-child::after{content:attr(data-project);display:block;margin-top:4px;color:var(--ui-text-muted);font-size:11px}
  .engineering-output,.output-toggle{display:none!important}
  .eng-table{min-width:0!important}.eng-table thead{display:none}.eng-table,.eng-table tbody,.eng-table tr,.eng-table td{display:block;width:100%}.eng-table tr{margin:8px 0;padding:10px 12px;border:1px solid var(--ui-border);border-radius:var(--radius-panel);background:var(--ui-surface)!important}.eng-table td{height:auto!important;min-height:0;padding:4px 0!important;border:0!important;white-space:normal}.eng-table td::before{content:attr(data-label);display:inline-block;min-width:92px;color:var(--ui-text-muted);font-size:10px;font-weight:700;text-transform:uppercase}.eng-table .actions{text-align:left}.eng-table .actions button{min-height:38px;margin-top:4px}
  #dashboard .hero{padding:20px}.metrics{grid-template-columns:1fr 1fr}.dashgrid{grid-template-columns:minmax(0,1fr)}.dashgrid>*{min-width:0}.pipeline{max-width:100%}.project-status-hero .project-health{display:grid;grid-template-columns:1fr 1fr;width:100%}.project-status-hero .chip{display:block;text-align:center}.wizard-steps span{display:none}.slot-row{display:grid;grid-template-columns:28px minmax(0,1fr) 36px}.slot-row label{grid-row:2}.topology-canvas{margin-inline:-6px}
}
