:root{--brand-1:#3157f6;--brand-2:#7b4dff;--bg:#f4f6fb;--surface:#fff;--surface-2:#f1f4f9;--surface-3:#e7ecf4;--text:#121a2c;--text-2:#3a4660;--muted:#65728a;--border:#e1e6ef;--border-strong:#cdd5e2;--primary:#3157f6;--primary-hover:#2546d6;--primary-soft:#e9eeff;--primary-text:#fff;--focus:#3157f659;--accent:#ffb020;--ok:#0e7a4b;--ok-bg:#e4f6ed;--warn:#8f5a00;--warn-bg:#fff3d6;--bad:#c0262d;--bad-bg:#fde9ea;--info:#2546d6;--info-bg:#eaf0ff;--pA:#e5484d;--pB:#f59e0b;--pC:#3b82f6;--blk-order:#eef2ff;--blk-insp:#f3ecff;--blk-insp-text:#5b3aa6;--blk-off:#eef1f5;--side-bg:#0d1426;--side-text:#aeb8cc;--side-hover:#ffffff0f;--side-active:#5b7cff2e;--shadow-sm:0 1px 2px #1018280f;--shadow:0 1px 3px #1018280f, 0 4px 16px #1018280d;--shadow-lg:0 24px 60px #1018282e;--radius:12px;--radius-sm:8px;--font:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0a0f1c;--surface:#111829;--surface-2:#172036;--surface-3:#1f2a43;--text:#e8ecf5;--text-2:#c3cbdc;--muted:#8d99b2;--border:#232e47;--border-strong:#2f3c5a;--primary:#6d8bff;--primary-hover:#8aa2ff;--primary-soft:#1b2650;--primary-text:#0a0f1c;--focus:#6d8bff66;--ok:#4ade9b;--ok-bg:#0f2c20;--warn:#fbbf4d;--warn-bg:#2f2510;--bad:#ff7b80;--bad-bg:#351519;--info:#9fb3ff;--info-bg:#18234a;--pA:#ff6b70;--pB:#fbbf24;--pC:#60a5fa;--blk-order:#18234a;--blk-insp:#261c45;--blk-insp-text:#c6b2ff;--blk-off:#171f32;--side-bg:#080c17;--shadow-sm:0 1px 2px #0006;--shadow:0 1px 3px #0006, 0 6px 20px #00000040;--shadow-lg:0 24px 60px #0000008c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0a0f1c;--surface:#111829;--surface-2:#172036;--surface-3:#1f2a43;--text:#e8ecf5;--text-2:#c3cbdc;--muted:#8d99b2;--border:#232e47;--border-strong:#2f3c5a;--primary:#6d8bff;--primary-hover:#8aa2ff;--primary-soft:#1b2650;--primary-text:#0a0f1c;--focus:#6d8bff66;--ok:#4ade9b;--ok-bg:#0f2c20;--warn:#fbbf4d;--warn-bg:#2f2510;--bad:#ff7b80;--bad-bg:#351519;--info:#9fb3ff;--info-bg:#18234a;--pA:#ff6b70;--pB:#fbbf24;--pC:#60a5fa;--blk-order:#18234a;--blk-insp:#261c45;--blk-insp-text:#c6b2ff;--blk-off:#171f32;--side-bg:#080c17;--shadow-sm:0 1px 2px #0006;--shadow:0 1px 3px #0006, 0 6px 20px #00000040;--shadow-lg:0 24px 60px #0000008c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--text);font:14px/1.5 var(--font);font-feature-settings:"cv11", "ss01";-webkit-font-smoothing:antialiased}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}h1{letter-spacing:-.02em;margin:0 0 16px;font-size:24px;font-weight:700;line-height:1.2}h2{letter-spacing:-.01em;margin:0 0 12px;font-size:16px;font-weight:650}h3{color:var(--text-2);margin:16px 0 8px;font-size:13px;font-weight:650}code{background:var(--surface-2);border-radius:5px;padding:1px 5px;font-size:12px}pre{background:var(--surface-2);border-radius:var(--radius-sm);padding:10px;overflow:auto}.icon{vertical-align:-3px;flex-shrink:0}.strong{color:var(--text);font-weight:600}.muted{color:var(--muted)}.small{font-size:12px}.spacer{flex:1}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}:focus-visible{box-shadow:0 0 0 3px var(--focus);border-radius:6px;outline:2px solid #0000}::selection{background:var(--primary-soft)}.layout{min-height:100vh;display:flex}.sidebar{background:var(--side-bg);width:248px;height:100vh;color:var(--side-text);z-index:30;flex-direction:column;flex-shrink:0;gap:4px;padding:18px 12px 14px;display:flex;position:sticky;top:0;overflow-y:auto}.brand{letter-spacing:-.01em;color:var(--text);align-items:center;gap:10px;font-size:17px;font-weight:750;display:flex}.sidebar .brand{color:#fff;padding:2px 10px 18px}.brand small{color:var(--side-text);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:500;display:block}.nav-group{flex-direction:column;gap:2px;margin-bottom:10px;display:flex}.nav-title{text-transform:uppercase;letter-spacing:.08em;color:#6c7893;padding:6px 12px;font-size:11px;font-weight:600}.sidebar a{color:var(--side-text);border-radius:9px;align-items:center;gap:10px;padding:9px 12px;font-weight:500;transition:background .15s,color .15s;display:flex}.sidebar a:hover{background:var(--side-hover);color:#fff;text-decoration:none}.sidebar a.active{background:var(--side-active);color:#fff;box-shadow:inset 3px 0 #6d8bff}.sidebar a.active .icon{color:#8aa2ff}.who{border-top:1px solid #ffffff14;align-items:center;gap:10px;margin-top:auto;padding:12px 10px;display:flex}.who .strong{color:#fff;font-size:13px}.who-text{min-width:0}.who-text>div{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.side-actions{flex-direction:column;gap:2px;display:flex}.side-actions .ghost{color:var(--side-text);justify-content:flex-start;width:100%}.side-actions .ghost:hover{background:var(--side-hover);color:#fff}main{flex:1;min-width:0}.page{max-width:1680px;margin:0 auto;padding:28px 32px 48px}.topbar,.scrim{display:none}.page-head{flex-wrap:wrap;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.page-head h1{margin:0}.page-head .sub{color:var(--muted);margin:4px 0 0}.page-head .actions{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}.page>.row:first-child{gap:10px;margin-bottom:20px!important}@media (width<=900px){.layout{flex-direction:column}.topbar{z-index:20;background:var(--surface);border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:8px 12px;display:flex;position:sticky;top:0}.sidebar{box-shadow:var(--shadow-lg);transition:transform .2s;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.nav-open .sidebar{transform:none}.nav-open .scrim{z-index:25;background:#080c1780;display:block;position:fixed;inset:0}.page{padding:16px 16px 40px}h1{font-size:21px}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);margin-bottom:16px;padding:18px}.card.flush{padding:0;overflow:hidden}.card.flush>table th:first-child,.card.flush>table td:first-child{padding-left:18px}.card>h2:first-child{margin-top:0}.grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px;margin-bottom:16px;display:grid}.grid>.card{margin-bottom:0}.section{border-top:1px solid var(--border);margin-top:8px;padding:4px 0 8px}.section:first-of-type{border-top:0}.hint{color:var(--muted);max-width:900px;font-size:12.5px}.empty{color:var(--muted);text-align:center;place-items:center;gap:8px;padding:40px 16px;display:grid}.kpi{color:inherit;transition:transform .15s,box-shadow .15s;display:block;position:relative}a.kpi:hover{box-shadow:var(--shadow);text-decoration:none;transform:translateY(-1px)}.kpi .v{letter-spacing:-.03em;margin-top:10px;font-size:30px;font-weight:750;line-height:1.1}.kpi .l{color:var(--muted);font-size:12.5px;font-weight:500}.kpi-icon{background:var(--surface-2);width:34px;height:34px;color:var(--muted);border-radius:10px;place-items:center;display:inline-grid}.tone-warn .kpi-icon{background:var(--warn-bg);color:var(--warn)}.tone-info .kpi-icon{background:var(--info-bg);color:var(--info)}.tone-ok .kpi-icon{background:var(--ok-bg);color:var(--ok)}.tone-brand .kpi-icon{background:linear-gradient(135deg, var(--brand-1), var(--brand-2));color:#fff}table{border-collapse:separate;border-spacing:0;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);vertical-align:middle;padding:10px 12px}th{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;background:var(--surface-2);white-space:nowrap;font-size:11.5px;font-weight:600}tbody tr:last-child td{border-bottom:0}tr.click{cursor:pointer}tbody tr{transition:background .12s}tr.click:hover td{background:var(--surface-2)}.table-wrap{overflow-x:auto}.person{align-items:center;gap:10px;display:flex}.avatar{background:linear-gradient(135deg, var(--brand-1), var(--brand-2));color:#fff;letter-spacing:.02em;border-radius:50%;flex-shrink:0;place-items:center;width:32px;height:32px;font-size:12px;font-weight:700;display:inline-grid}.avatar.lg{width:44px;height:44px;font-size:15px}.list-item{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:8px 0;font-size:13px;display:flex}button,.btn{font:inherit;cursor:pointer;white-space:nowrap;border:1px solid var(--border-strong);background:var(--surface);height:36px;color:var(--text);box-shadow:var(--shadow-sm);border-radius:9px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:13.5px;font-weight:550;line-height:1;text-decoration:none;transition:background .15s,border-color .15s,box-shadow .15s,transform 50ms;display:inline-flex}button:hover,.btn:hover{background:var(--surface-2);text-decoration:none}button:active,.btn:active{transform:translateY(1px)}button.primary,.btn.primary{background:var(--primary);color:var(--primary-text);border-color:var(--primary)}button.primary:hover,.btn.primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}button.danger{color:var(--bad);border-color:color-mix(in srgb, var(--bad) 45%, transparent)}button.danger:hover{background:var(--bad-bg)}button.ghost,.btn.ghost{box-shadow:none;background:0 0;border-color:#0000}button.ghost:hover,.btn.ghost:hover{background:var(--surface-2)}button.sm,.btn.sm{height:28px;padding:0 10px;font-size:12.5px}button.lg{height:44px;font-size:15px}.icon-btn{width:36px;padding:0}button:disabled,button:disabled:hover{opacity:.5;cursor:not-allowed;background:var(--surface);transform:none}button.primary:disabled{background:var(--primary)}.btn-group{display:inline-flex}.btn-group>*{border-radius:0;margin-left:-1px}.btn-group>:first-child{border-radius:9px 0 0 9px;margin-left:0}.btn-group>:last-child{border-radius:0 9px 9px 0}input,select,textarea{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:9px;max-width:100%;height:36px;padding:0 11px;font-size:13.5px;transition:border-color .15s,box-shadow .15s}textarea{width:100%;height:auto;padding:9px 11px;line-height:1.5}input[type=checkbox],input[type=radio]{width:16px;height:16px;accent-color:var(--primary)}input[type=file]{height:auto;padding:6px}input:hover,select:hover,textarea:hover{border-color:var(--muted)}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--focus);outline:none}input::placeholder,textarea::placeholder{color:var(--muted);opacity:.8}label{color:var(--text-2);flex-direction:column;gap:5px;font-size:12.5px;font-weight:550;display:flex}label.inline{color:var(--text);flex-direction:row;align-items:center;gap:8px;font-size:13.5px;font-weight:500}.form{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;display:grid}.checks{gap:8px;margin-top:12px;display:grid}.search{flex-direction:row;align-items:center;position:relative}.search .icon{color:var(--muted);pointer-events:none;position:absolute;left:11px}.search input{width:280px;padding-left:34px}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.tabs{background:var(--surface-3);border-radius:11px;flex-wrap:wrap;gap:2px;padding:3px;display:inline-flex}.tab,.segmented>button{height:32px;box-shadow:none;color:var(--muted);background:0 0;border:0;border-radius:8px;font-weight:550}.tab:hover,.segmented>button:hover{color:var(--text);background:0 0}.tab.active,.segmented>button.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.tab .count{background:var(--surface-2);color:var(--muted);border-radius:999px;padding:1px 7px;font-size:11.5px}.tab.active .count{background:var(--primary-soft);color:var(--primary)}.segmented{background:var(--surface-3);border-radius:11px;gap:2px;padding:3px;display:inline-flex}.segmented>button{height:30px;padding:0 12px;font-size:12.5px}.switch{cursor:pointer;color:var(--text);-webkit-user-select:none;user-select:none;flex-direction:row;align-items:center;gap:8px;font-size:13.5px;font-weight:550}.switch input{opacity:0;pointer-events:none;position:absolute}.switch .track{background:var(--border-strong);border-radius:999px;width:36px;height:20px;transition:background .15s;position:relative}.switch .thumb{background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #00000040}.switch.on .track{background:var(--primary)}.switch.on .thumb{transform:translate(16px)}.switch input:focus-visible+.track{box-shadow:0 0 0 3px var(--focus)}.badge{background:var(--surface-3);color:var(--text-2);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:2px 9px;font-size:12px;font-weight:600;display:inline-flex}.badge.ok{background:var(--ok-bg);color:var(--ok)}.badge.warn{background:var(--warn-bg);color:var(--warn)}.badge.bad{background:var(--bad-bg);color:var(--bad)}.badge.info{background:var(--info-bg);color:var(--info)}.badge.muted{color:var(--muted)}.prio{font-weight:800}.prio.A{color:var(--pA)}.prio.B{color:var(--pB)}.prio.C{color:var(--pC)}.chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.chip{border:1px solid var(--border-strong);cursor:pointer;-webkit-user-select:none;user-select:none;background:var(--surface);height:auto;color:var(--text-2);box-shadow:none;border-radius:999px;align-items:center;gap:4px;padding:4px 11px;font-size:12.5px;font-weight:500;line-height:1.3;display:inline-flex}.chip:hover{border-color:var(--primary)}.chip.sm{cursor:default;background:var(--surface-2);white-space:nowrap;text-overflow:ellipsis;border-color:#0000;max-width:170px;padding:1px 8px;font-size:11.5px;display:inline-block;overflow:hidden}.chip.sm.more{background:var(--primary-soft);color:var(--primary)}.chip.on{background:var(--primary-soft);color:var(--primary);border-color:color-mix(in srgb, var(--primary) 50%, transparent)}.chip.leader{outline:2px solid var(--accent)}.chips select{border-radius:999px;height:30px;font-size:12.5px}.alert{border:1px solid #0000;border-radius:10px;flex-wrap:wrap;align-items:flex-start;gap:8px;margin:8px 0 14px;padding:10px 14px;font-size:13px;display:flex}.alert>div{flex-basis:100%}.alert .icon{margin-top:1px}.alert.danger{background:var(--bad-bg);color:var(--bad);border-color:color-mix(in srgb, var(--bad) 22%, transparent)}.alert.warning{background:var(--warn-bg);color:var(--warn);border-color:color-mix(in srgb, var(--warn) 22%, transparent)}.alert.info{background:var(--info-bg);color:var(--info);border-color:color-mix(in srgb, var(--info) 18%, transparent)}.alert.ok{background:var(--ok-bg);color:var(--ok);border-color:color-mix(in srgb, var(--ok) 22%, transparent)}.modal-bg{z-index:50;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#080c1773;justify-content:center;align-items:center;padding:16px;animation:.15s fade;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--border);width:100%;max-width:560px;max-height:90vh;box-shadow:var(--shadow-lg);border-radius:16px;padding:22px;animation:.18s pop;overflow:auto}.modal.wide{max-width:1100px}.modal-head{align-items:center;gap:12px;margin-bottom:8px;display:flex}.modal-head h2{margin:0}.modal-foot{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;margin-top:18px;padding-top:14px;display:flex}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{opacity:0;transform:translateY(6px)scale(.98)}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.bar{background:var(--surface-3);border-radius:999px;height:8px;margin-bottom:3px;overflow:hidden}.bar>div{background:linear-gradient(90deg, var(--brand-1), var(--brand-2));border-radius:999px;height:100%}.seg{border:1px solid var(--border);background:var(--surface);border-radius:10px;margin-bottom:10px;padding:12px;display:block}.chat{flex-direction:column;gap:12px;display:flex}.msg{white-space:pre-wrap;border-radius:14px;max-width:760px;padding:11px 14px;line-height:1.55}.msg.user{background:var(--primary);color:var(--primary-text);border-bottom-right-radius:4px;align-self:flex-end}.msg.assistant{background:var(--surface-2);border:1px solid var(--border);border-bottom-left-radius:4px;align-self:flex-start}.login{grid-template-columns:1.1fr 1fr;min-height:100vh;display:grid}.login-hero{color:#dfe6ff;background:radial-gradient(900px 500px at 10% 0,#7b4dff73,#0000 60%),radial-gradient(700px 500px at 100% 100%,#3157f680,#0000 60%),#0b1226;flex-direction:column;justify-content:space-between;gap:32px;padding:44px 56px;display:flex}.login-hero .brand{color:#fff;font-size:20px}.login-hero h1{letter-spacing:-.03em;color:#fff;max-width:560px;margin-bottom:14px;font-size:40px;line-height:1.1}.login-hero p{color:#b9c4e6;max-width:520px;margin:0 0 28px;font-size:16px}.features{gap:16px;max-width:520px;margin:0;padding:0;list-style:none;display:grid}.features li{align-items:flex-start;gap:14px;display:flex}.features b{color:#fff;font-weight:600;display:block}.features span{color:#aeb9dc;font-size:13.5px}.feat-icon{color:#b8c6ff;background:#ffffff14;border:1px solid #ffffff1f;border-radius:11px;flex-shrink:0;place-items:center;width:38px;height:38px;display:grid}.hero-foot{color:#7f8bb0}.login-panel{background:var(--surface);place-items:center;padding:32px 20px;display:grid}.login-form{gap:16px;width:100%;max-width:380px;display:grid}.login-form h2{letter-spacing:-.02em;margin:0;font-size:24px}.login-form p{margin:-10px 0 4px}.login-form input{height:42px}.mobile-only{display:none}@media (width<=900px){.login{grid-template-columns:1fr}.login-hero{display:none}.mobile-only{display:flex}}.cal{overflow-x:auto}.cal table{table-layout:fixed;border-collapse:separate}.cal th,.cal td{border-bottom:1px solid var(--border)}.cal td{vertical-align:top;height:48px;padding:4px}.cal td.today{background:color-mix(in srgb, var(--primary-soft) 45%, transparent)}.cal.blocks th.tech-col,.cal.blocks td.tech-col{z-index:2;background:var(--surface);border-right:1px solid var(--border);padding:8px 12px;position:sticky;left:0}.cal.blocks thead th.tech-col{background:var(--surface-2);vertical-align:bottom}.cal.blocks td.tech-col .strong{font-size:13px}.cal.blocks th.day-head{cursor:pointer;text-align:center;text-transform:none;letter-spacing:0;color:var(--text);border-left:2px solid var(--border-strong);-webkit-user-select:none;user-select:none;padding:8px 10px 6px;font-size:13px;position:relative}.cal.blocks th.day-head:hover{background:var(--surface-3)}.cal.blocks th.day-head.is-today{color:var(--primary);box-shadow:inset 0 3px 0 var(--primary)}.day-title{text-transform:capitalize;align-items:center;gap:6px;font-weight:650;display:inline-flex}.day-eye{opacity:0;transition:opacity .15s}.day-head:hover .day-eye{opacity:.7}.resize-handle{cursor:col-resize;z-index:3;touch-action:none;width:10px;height:100%;position:absolute;top:0;right:-5px}.resize-handle:after{content:"";background:var(--border-strong);opacity:0;border-radius:2px;width:2px;transition:opacity .15s,background .15s;position:absolute;top:20%;bottom:20%;left:4px}.day-head:hover .resize-handle:after{opacity:1}.resize-handle:hover:after,.resize-handle:active:after{opacity:1;background:var(--primary)}.cal.blocks th.blk-head{text-align:center;color:var(--muted);letter-spacing:0;padding:4px 2px;font-size:11px;font-weight:550}.cal.blocks td{border-left:1px dashed var(--border)}.cal.blocks td.off{background:repeating-linear-gradient(135deg, var(--surface-2) 0 6px, transparent 6px 12px)}.cal.blocks td.drop-hover{outline:2px dashed var(--primary);outline-offset:-2px;background:var(--info-bg)}.cal tr.group-row td{background:var(--surface-2);text-transform:uppercase;letter-spacing:.06em;height:auto;color:var(--blk-insp-text);border-left:0;padding:10px 12px 6px;font-size:11.5px;font-weight:650}.tech-col-sticky{position:sticky;left:12px}.cal tr.insp-row td.tech-col{box-shadow:inset 3px 0 0 var(--blk-insp-text)}.blk{cursor:pointer;border-radius:7px;margin-bottom:3px;padding:4px 7px;font-size:11.5px;line-height:1.35;transition:box-shadow .12s,transform .12s;overflow:hidden}.blk>div{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.blk.ORDER{background:var(--blk-order);border-left:3px solid var(--pC);color:var(--text)}.blk.ORDER:hover{box-shadow:var(--shadow)}.blk.ORDER.A{border-left-color:var(--pA)}.blk.ORDER.B{border-left-color:var(--pB)}.blk.ORDER.sent{background:color-mix(in srgb, var(--ok-bg) 70%, var(--blk-order))}.blk-time{color:var(--muted);font-variant-numeric:tabular-nums}.blk-line{color:var(--text-2)}.blk-line.sub{color:var(--muted)}.blk.detail{padding:6px 9px}.blk.detail .blk-line{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}.blk .lead{color:var(--accent);margin-left:4px}.blk.INSPECCION{background:var(--blk-insp);color:var(--blk-insp-text);text-align:center;padding:8px;font-weight:550}.blk.NO_DISPONIBLE{background:var(--blk-off);color:var(--muted);text-align:center;padding:8px}.cal.blocks.modify .blk.draggable{cursor:grab;box-shadow:0 0 0 1.5px var(--primary)}.blk.dragging{opacity:.4}.legend{color:var(--text-2);flex-wrap:wrap;align-items:center;gap:14px;margin-top:-4px;font-size:12px;display:flex}.legend .sw{vertical-align:-2px;border-radius:4px;width:12px;height:12px;margin-right:4px;display:inline-block}.sw.prio-A{background:var(--pA)}.sw.prio-B{background:var(--pB)}.sw.prio-C{background:var(--pC)}.sw.insp{background:var(--blk-insp);border:1px solid var(--blk-insp-text)}.sw.off{background:var(--blk-off);border:1px solid var(--border-strong)}.day-export{background:var(--surface);width:max-content;min-width:100%;color:var(--text);padding:12px}.day-export td,.day-export th{white-space:nowrap}.sk{background:linear-gradient(90deg, var(--surface-3) 0%, var(--surface-2) 40%, var(--surface-3) 80%) 0 0 / 300% 100%;border-radius:6px;max-width:100%;animation:1.3s ease-in-out infinite shimmer;display:block}.sk-right{justify-self:end}@keyframes shimmer{0%{background-position:100% 0}to{background-position:0 0}}.page-skeleton{animation:.2s fade}.sk-table .sk-row{grid-template-columns:var(--sk-cols);border-bottom:1px solid var(--border);align-items:center;gap:24px;padding:14px 18px;display:grid}.sk-table .sk-row.head{background:var(--surface-2);padding:12px 18px}.sk-table .sk-row:last-child{border-bottom:0}.sk-cal-head,.sk-cal-row{border-bottom:1px solid var(--border);grid-template-columns:190px repeat(7,minmax(120px,1fr));display:grid}.sk-cal-head{background:var(--surface-2);align-items:center}.sk-cal-head>:first-child,.sk-cal-row>:first-child{padding:12px}.sk-cal-day{border-left:1px dashed var(--border);align-content:center;gap:6px;min-height:52px;padding:10px;display:grid}.sk-cal{overflow:hidden}.boot{place-items:center;min-height:100vh;display:grid}.badge.brand{background:linear-gradient(135deg, var(--brand-1), var(--brand-2));color:#fff}.role-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;display:grid}.role-card{border:1px solid var(--border-strong);cursor:pointer;border-radius:10px;gap:3px;padding:12px 12px 12px 38px;font-weight:400;transition:border-color .15s,background .15s;display:grid;position:relative}.role-card input{position:absolute;top:14px;left:12px}.role-card:hover{border-color:var(--primary)}.role-card.on{border-color:var(--primary);background:var(--primary-soft)}
