:root{--ink: #333333;--ink-soft: #5c5c5c;--yellow: #ffe602;--paper: #f4f4f2;--surface: #ffffff;--line: #d9d9d5;--danger: #b3261e;font-family:DM Sans,system-ui,sans-serif;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}body{margin:0;min-height:100vh;font-size:16px;line-height:1.5}h1,h2{margin:0;font-family:Outfit,system-ui,sans-serif;letter-spacing:-.01em;line-height:1.15}h1{font-size:2rem}h2{font-size:1.375rem}p{margin:0}a{color:var(--ink);text-underline-offset:3px}.muted{color:var(--ink-soft)}.error{color:var(--danger);font-weight:500}.center{min-height:100vh;display:grid;place-items:center;padding:16px}.login{background:linear-gradient(var(--yellow),var(--yellow)) bottom / 100% 8px no-repeat,var(--paper)}.card{background:var(--surface);border:1px solid var(--line);padding:28px;display:flex;flex-direction:column;gap:20px}.narrow{width:100%;max-width:400px}.logo{width:150px;height:auto}label{display:flex;flex-direction:column;gap:6px;font-size:.875rem;font-weight:500}input,select{font:inherit;color:inherit;min-height:44px;padding:8px 12px;border:1px solid #8a8a86;border-radius:0;background:var(--surface)}input:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid var(--ink);outline-offset:2px}button{font:inherit;font-weight:700;min-height:44px;padding:8px 20px;border:0;background:var(--yellow);color:var(--ink);cursor:pointer}button:hover{background:#f2da00}button:disabled{opacity:.6;cursor:progress}button.ghost{background:transparent;color:#fff;border:1px solid #ffffff;font-weight:500}button.ghost:hover{background:#ffffff1f}.topbar{background:var(--ink);color:#fff;padding:12px 24px;display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;justify-content:space-between}.brand,.who{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px}.brand img{height:24px;width:auto}.brand span{font-family:Outfit,system-ui,sans-serif;font-weight:600}.brand .tag{background:var(--yellow);color:var(--ink);padding:2px 10px;font-size:.875rem}.who{font-size:.875rem}.content{max-width:1080px;margin:0 auto;padding:24px 16px 64px;display:flex;flex-direction:column;gap:24px}.table-wrap{overflow-x:auto;position:relative}table{width:100%;border-collapse:collapse;font-size:.9375rem}th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);white-space:nowrap}th{font-size:.8125rem;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);border-bottom-color:var(--ink)}.num{text-align:right;font-variant-numeric:tabular-nums}.row{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;align-items:end;padding-top:20px;border-top:1px solid var(--line)}h3{margin:0;font-family:Outfit,system-ui,sans-serif;font-size:1.0625rem}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.tabs{background:var(--surface);border-bottom:1px solid var(--line);padding:0 24px;display:flex;gap:4px;overflow-x:auto}.tabs a{padding:14px 14px 11px;border-bottom:3px solid transparent;text-decoration:none;font-weight:500;white-space:nowrap;color:var(--ink-soft)}.tabs a:hover{color:var(--ink)}.tabs a[aria-current=page]{color:var(--ink);border-bottom-color:var(--yellow)}.card-head{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between}.actions{display:flex;flex-wrap:wrap;gap:12px;align-items:end}.stack{display:flex;flex-direction:column;gap:16px}.divider{padding-top:20px;border-top:1px solid var(--line)}label.inline{flex-direction:row;align-items:center;gap:8px}.narrow-field{max-width:320px}button.secondary{background:var(--surface);border:1px solid var(--ink);font-weight:500}button.secondary:hover{background:var(--paper)}button.link{background:none;min-height:44px;padding:0 4px;font-weight:500;text-decoration:underline;text-underline-offset:3px}button.link:hover{background:none;text-decoration-thickness:2px}fieldset{border:0;margin:0;padding:20px 0 0;border-top:1px solid var(--line);min-width:0;display:flex;flex-direction:column;gap:16px}fieldset.plain{border-top:0;padding-top:0}legend{padding:0;font-family:Outfit,system-ui,sans-serif;font-weight:600;font-size:1.0625rem;float:left;width:100%}fieldset.plain legend{font-family:inherit;font-size:.875rem;font-weight:500}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;clear:both}.span-2{grid-column:span 2}.span-3{grid-column:1 / -1}@media(max-width:720px){.grid{grid-template-columns:minmax(0,1fr)}.span-2{grid-column:auto}}textarea{font:inherit;color:inherit;padding:10px 12px;border:1px solid #8a8a86;border-radius:0;resize:vertical}textarea:focus-visible{outline:3px solid var(--ink);outline-offset:2px}input[aria-invalid=true]{border-color:var(--danger)}:disabled{cursor:default}fieldset:disabled input,fieldset:disabled select,fieldset:disabled textarea{background:var(--paper)}.hint{font-weight:400;color:var(--ink-soft)}.checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:2px 16px;clear:both}label.check{flex-direction:row;align-items:center;gap:10px;min-height:36px;font-weight:400;font-size:.9375rem}label.check input{min-height:0;width:18px;height:18px;accent-color:var(--ink)}td.wrap{white-space:normal;min-width:220px}td.code{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;letter-spacing:.04em}td select{min-height:36px;padding:4px 8px}.badge{display:inline-block;padding:2px 10px;font-size:.8125rem;font-weight:700;border:1px solid var(--ink)}.badge.abierta{background:var(--yellow)}.badge.pausada{background:var(--surface)}.badge.cubierta{background:var(--ink);color:#fff}.badge.cancelada{background:var(--paper);color:var(--ink-soft);border-color:var(--ink-soft);text-decoration:line-through}td .primary{display:block;font-weight:500}td .sub{display:block;font-size:.875rem;color:var(--ink-soft)}.primary{display:block;font-weight:500}.sub{display:block;font-size:.875rem;color:var(--ink-soft)}.board{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(190px,1fr);gap:12px;overflow-x:auto;padding-bottom:12px;align-items:start}.column{background:var(--paper);padding:10px;display:flex;flex-direction:column;gap:8px;min-height:140px}.column-head{display:flex;justify-content:space-between;gap:8px;font-size:.8125rem;font-weight:700;padding:2px 2px 8px;border-bottom:2px solid var(--ink)}.column-head .step{color:var(--ink-soft);font-variant-numeric:tabular-nums}.column-head .count{align-self:flex-start;background:var(--ink);color:#fff;min-width:22px;padding:0 6px;text-align:center;font-variant-numeric:tabular-nums}button.person{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--yellow);padding:10px 12px;text-align:left;font-weight:400;display:flex;flex-direction:column;gap:2px}button.person:hover{background:var(--surface);border-color:var(--ink);border-left-color:var(--yellow)}.facts{margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px 24px}.facts dt{font-size:.8125rem;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);margin-bottom:4px}.facts dd{margin:0;overflow-wrap:anywhere}.facts .badge{margin-bottom:4px}.grow{flex:1 1 260px}.plain-list{list-style:none;margin:0;padding:0;clear:both}.timeline{list-style:none;margin:0;padding:0;clear:both;display:flex;flex-direction:column}.timeline li{padding:12px 0 12px 16px;border-left:2px solid var(--line);position:relative}.timeline li:before{content:"";position:absolute;left:-6px;top:18px;width:10px;height:10px;background:var(--yellow);border:1px solid var(--ink)}.timeline .note{display:block;margin:2px 0}.content.wide{max-width:1680px}select{max-width:100%}label.inline{max-width:100%;min-width:0}label.inline select{min-width:0;flex:1 1 auto}.card-head>*,.actions{min-width:0;max-width:100%}
