/* Interaction and semantic colors, adapted from the supplied flujo project. */
:root{--action:#1d6fa5;--action-on:#fff;--action-hover:#185f90;--good:#16794a;--bad:#b63443;--purple:#7254a6;--amber:#9b6c1b;--cyan:#177b88;--soft-blue:#eaf3f9;--soft-good:#e9f5ed;--soft-purple:#f2edf8;--soft-amber:#fbf3e3;--soft-bad:#fbecef;--soft-cyan:#e8f5f5}
:root[data-theme=dark]{--action:#a3d2f4;--action-on:#102a3c;--action-hover:#c1e3fa;--good:#8cdbad;--bad:#ffadb4;--purple:#cbb4f0;--amber:#efd092;--cyan:#92dce0;--soft-blue:#203649;--soft-good:#203a30;--soft-purple:#332b44;--soft-amber:#3c3426;--soft-bad:#422a31;--soft-cyan:#203a40;--barra:#e6edf5;--barra-2:#d4dfeb;--barra-ink:#142b42;--barra-tenue:#3e536c}
.theme-icon,.top-actions .theme-icon{display:inline-grid;place-items:center;flex:0 0 40px;width:40px;height:40px;padding:9px;border-radius:12px;white-space:normal;transition:background 200ms,color 200ms,transform 180ms var(--ease-out)}.theme-icon svg{width:21px;height:21px;stroke-width:1.8}.theme-icon:hover{transform:rotate(12deg)}.theme-icon:active{transform:scale(.9) rotate(-8deg)}.login-card>.theme-icon{align-self:flex-end}
.topbar,.sidebar{color:var(--barra-ink);background:var(--barra);border-color:var(--barra-2)}.sidebar .brand strong,.sidebar .side-user b,.sidebar .workspace-text b{color:var(--barra-ink)}.brand-mark{background:var(--barra-2);color:var(--barra-ink);border-color:color-mix(in srgb,var(--barra-ink) 20%,transparent)}.sidebar .workspace-pill,.sidebar .sidebar-help{background:var(--barra-2);border-color:color-mix(in srgb,var(--barra-ink) 14%,transparent)}.top-actions .btn{border-color:color-mix(in srgb,var(--barra-ink) 20%,transparent);color:var(--barra-ink)}.top-actions .btn:hover,.nav-item:hover{background:color-mix(in srgb,var(--barra-ink) 10%,transparent);color:var(--barra-ink)}.nav-item.active{color:var(--ink);box-shadow:0 2px 8px #0001}.side-user{border-color:color-mix(in srgb,var(--barra-ink) 20%,transparent)}.breadcrumb>span:first-child,.crumb-separator{color:var(--barra-tenue)}
.btn.primary{background:var(--action);border-color:var(--action);color:var(--action-on);box-shadow:0 3px 8px color-mix(in srgb,var(--action) 18%,transparent)}.btn.primary:hover{background:var(--action-hover);border-color:var(--action-hover);box-shadow:0 6px 18px color-mix(in srgb,var(--action) 22%,transparent);transform:translateY(-1px)}.btn{transition:background-color 180ms,color 180ms,border-color 180ms,box-shadow 180ms,transform 150ms var(--ease-out)}.btn[data-act^="edit:"]{background:var(--soft-purple);color:var(--purple);border-color:color-mix(in srgb,var(--purple) 22%,var(--line))}.btn[data-act^="detail:"]{background:var(--soft-blue);color:var(--action);border-color:color-mix(in srgb,var(--action) 22%,var(--line))}.btn[data-act^="delete:"],.btn[data-act^="toggle:"]{background:var(--soft-bad);color:var(--bad);border-color:color-mix(in srgb,var(--bad) 25%,var(--line))}.btn[data-act^="csv:"],.btn[data-act^="download:"],.btn[data-act=backup]{background:var(--soft-good);color:var(--good);border-color:color-mix(in srgb,var(--good) 25%,var(--line))}.top-actions .btn[data-act=compliance]{background:var(--soft-cyan);color:var(--cyan);border-color:color-mix(in srgb,var(--cyan) 30%,var(--line))}.top-actions #newRequestTop{background:var(--action);color:var(--action-on);border-color:var(--action)}.btn:active{transform:scale(.965);box-shadow:none}.btn:focus-visible,.theme-icon:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.request-tile{--tile:var(--action);--tile-bg:var(--soft-blue);position:relative;overflow:hidden;animation:softEnter 320ms var(--ease-out) both;animation-delay:calc(var(--i,0)*35ms)}.request-tile[data-act="new:payroll"]{--tile:var(--purple);--tile-bg:var(--soft-purple)}.request-tile[data-act="new:overtime"]{--tile:var(--amber);--tile-bg:var(--soft-amber)}.request-tile[data-act="new:equipment"]{--tile:var(--cyan);--tile-bg:var(--soft-cyan)}.request-tile[data-act="new:badge"]{--tile:var(--good);--tile-bg:var(--soft-good)}.request-tile .tile-symbol{color:var(--tile);background:var(--tile-bg);transition:transform 220ms var(--ease-out),background 200ms}.request-tile:hover{border-color:color-mix(in srgb,var(--tile) 45%,var(--line));background:color-mix(in srgb,var(--tile-bg) 50%,var(--surface));transform:translateY(-3px);box-shadow:0 8px 20px -10px color-mix(in srgb,var(--tile) 40%,transparent)}.request-tile:hover .tile-symbol{transform:translateY(-2px) rotate(-5deg)}.request-tile:active{transform:scale(.98)}
.blue-icon{background:var(--soft-blue);color:var(--action)}.green-icon{background:var(--soft-good);color:var(--good)}.orange-icon{background:var(--soft-amber);color:var(--amber)}.purple-icon{background:var(--soft-purple);color:var(--purple)}.status.pending{background:var(--soft-amber);color:var(--amber)}.status.in-progress{background:var(--soft-blue);color:var(--action)}.status.approved,.status.resolved{background:var(--soft-good);color:var(--good)}.status.rejected{background:var(--soft-bad);color:var(--bad)}.workspace-avatar,.side-avatar{background:var(--soft-blue);color:var(--action)}
.login-story{background:radial-gradient(ellipse at 10% 0%,#1d507d 0%,transparent 55%),radial-gradient(ellipse at 100% 100%,#292248 0%,transparent 45%),#0e2842;transition:background 200ms,color 200ms}:root[data-theme=dark] .login-story{background:radial-gradient(ellipse at 0% 0%,#d0e5f5 0%,transparent 60%),radial-gradient(ellipse at 100% 100%,#e5def2 0%,transparent 60%),#edf3f9;color:#142b42}:root[data-theme=dark] .login-story .eyebrow,:root[data-theme=dark] .login-story>p,:root[data-theme=dark] .login-story>small,:root[data-theme=dark] .login-art small{color:#415b74}:root[data-theme=dark] .login-art{background:#ffffff70;border-color:#b9cadb;color:#142b42}:root[data-theme=dark] .login-art span{color:#87611e}.segmented button.selected{background:var(--soft-blue);color:var(--action)}.live-pill{background:var(--soft-good);color:var(--good)}.live-pill i{background:var(--good);box-shadow:none}
.tema-cambiando::view-transition-old(root),.tema-cambiando::view-transition-new(root){animation:none;mix-blend-mode:normal}.tema-cambiando::view-transition-new(root){z-index:2}.tema-cambiando::view-transition-old(root){z-index:1}.tema-cambiando::view-transition-group(root){animation-duration:0s}
@keyframes softEnter{from{opacity:0;transform:translateY(9px) scale(.985)}to{opacity:1;transform:none}}
.command-button{gap:8px}.command-button kbd{font:10px var(--f-mono);border:1px solid currentColor;opacity:.65;padding:1px 4px;border-radius:4px}.command-result{width:100%;display:grid;grid-template-columns:1fr auto;text-align:left;padding:13px;border:1px solid transparent;border-bottom-color:var(--line);color:var(--ink);background:var(--surface);border-radius:10px}.command-result small{grid-column:1;color:var(--muted)}.command-result span{grid-column:2;grid-row:1/3;color:var(--muted);align-self:center}.command-result:hover,.command-result:focus{background:var(--soft-blue);border-color:var(--action);outline:0}#commandResults{max-height:45vh;overflow:auto;margin-top:16px}.shortcut-list kbd{font-family:var(--f-mono);display:inline-block;min-width:60px;color:var(--accent)}
.kanban{display:grid;grid-template-columns:repeat(5,minmax(200px,1fr));gap:14px;overflow:auto;padding:4px 3px 20px}.board-column{background:var(--surface-2);border:1px solid var(--line);border-radius:18px;padding:14px;min-height:300px;transition:background 180ms,border-color 180ms}.board-column>h3{display:flex;justify-content:space-between;align-items:center;margin:0 0 16px}.board-card{background:var(--surface);border:1px solid var(--line);border-radius:13px;padding:16px;margin:10px 0;box-shadow:var(--sombra);animation:softEnter 260ms var(--ease-out) both;transition:transform 180ms var(--ease-out),border-color 180ms}.board-card[draggable=true]{cursor:grab}.board-card:hover{transform:translateY(-2px);border-color:var(--line-2)}.board-card.dragging{opacity:.4;transform:scale(.97)}.board-column.drag-over{background:var(--soft-blue);border-color:var(--action)}.board-card small,.board-card p,.board-empty{color:var(--muted);font-size:12px}.board-title{display:block;text-align:left;color:var(--ink);font-size:15px;font-weight:600;background:none;border:0;padding:7px 0}.board-card select{margin-top:12px;width:100%;background:var(--surface-2);color:var(--ink);border:1px solid var(--line);padding:8px;border-radius:9px}.report-history{border-top:1px solid var(--line);margin-top:20px}.report-history p{border-left:2px solid var(--accent);padding-left:12px;font-size:13px}.report-history small{color:var(--muted)}
#toasts{position:fixed;right:24px;bottom:24px;z-index:100;display:grid;gap:10px;max-width:min(440px,calc(100vw - 32px))}.toast-i{display:flex;align-items:center;gap:12px;background:var(--surface);color:var(--ink);border:1px solid var(--line);box-shadow:var(--sombra-alta);border-radius:15px;padding:15px 17px;opacity:0;transform:translateY(12px) scale(.98);transition:opacity 200ms,transform 260ms var(--ease-out);font-size:13.5px}.toast-i.visible{opacity:1;transform:none}.toast-i.saliendo{opacity:0;transform:translateX(15px) scale(.98)}.ti-punto{width:8px;height:8px;border-radius:50%;background:var(--good);flex-shrink:0}.toast-i.error .ti-punto{background:var(--bad)}.ti-txt{flex:1}.ti-cerrar,.ti-accion{background:none;border:0;color:var(--muted);padding:5px;cursor:pointer}.ti-accion{color:var(--accent);font-weight:600}.ti-cerrar svg{width:14px;height:14px}.toast-i.error{border-color:var(--bad)}
@media(max-width:1100px){.command-button kbd,.command-button span{display:none}.top-actions .command-button{width:36px}.top-actions{flex-wrap:wrap}}@media(max-width:790px){.kanban{grid-template-columns:repeat(5,minmax(240px,1fr));max-width:100%}.theme-icon,.top-actions .theme-icon{width:36px;height:36px;flex-basis:36px}.top-actions .btn{padding:8px}.login-story{min-height:auto}.board-column{min-height:260px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
:root[data-theme=dark] .sidebar .nav-item.active{background:#c3d6e8;color:#173651}:root[data-theme=dark] .sidebar .nav-item.active .nav-glyph{color:#173651}
.kanban{align-items:start}.board-column{max-height:calc(100vh - 260px);overflow-y:auto;min-height:330px;scroll-margin-top:110px}.board-column>h3{position:sticky;top:-14px;background:var(--surface-2);padding:8px 0;z-index:1}.board-card{scroll-margin-top:110px}
@media(max-width:790px){.board-column{max-height:65vh;min-height:320px}}
