:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;--c-white: #ffffff;--c-teal: #64ccc9;--c-teal-dark: #00778b;--c-gold: #eaaa00;--c-red: #d22630;--c-gray: #706f6f;--bg: #ffffff;--surface: rgba(11, 28, 32, .04);--border: rgba(11, 28, 32, .14);--text: rgba(11, 28, 32, .92);--muted: rgba(11, 28, 32, .62);color-scheme:light;color:var(--text);background-color:var(--bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}a{font-weight:500;color:var(--c-teal);text-decoration:inherit}a:hover{color:var(--c-teal-dark)}body{margin:0;min-width:320px;min-height:100vh;overflow:hidden}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#0b1c200a;cursor:pointer;transition:border-color .25s}button:hover{border-color:var(--c-teal)}button:focus,button:focus-visible{outline:3px solid rgba(100,204,201,.45);outline-offset:2px}#root{width:100%;height:100vh;padding:0}.muted{color:var(--muted)}.authLayout{min-height:100vh;display:grid;place-items:center;padding:24px 16px}.authPanel{position:relative;padding-top:44px}.authLogoBadge{position:absolute;top:-160px;left:50%;transform:translate(-50%);width:min(360px,80%);height:auto;border-radius:0;border:0;background:transparent;display:grid;place-items:center;overflow:visible}.authLogoImg{width:100%;height:auto;object-fit:contain;padding:0}.authTitle{margin:0 0 12px;text-align:center;font-size:18px;font-weight:800}.appShell{height:100vh;display:grid;grid-template-rows:auto 1fr;overflow:hidden}.nav{width:100%;border-bottom:1px solid var(--border);background:#ffffffd9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.navInner{max-width:1280px;margin:0 auto;padding:6px 12px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;column-gap:12px}.navLeft{justify-self:start;display:inline-flex;align-items:center;min-width:0;margin-left:-72px}.navCenter{justify-self:center;min-width:0}.navLogo{height:56px;width:auto;max-width:160px;object-fit:contain;flex:0 0 auto}.navTitle{font-weight:700;letter-spacing:.2px;font-size:22px;line-height:1;display:flex;align-items:center}.navRight{justify-self:end;display:flex;align-items:center;gap:12px}.navWelcome{color:var(--muted);font-size:14px;white-space:nowrap}.navButton{border:1px solid rgba(234,170,0,.55);background:#eaaa001f;color:var(--text)}.dashboard{max-width:1280px;width:calc(100% - 32px);margin:24px auto;height:auto}.dashGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,150px);gap:14px;align-content:start}.dashGridUserOnly{grid-template-columns:minmax(0,520px);grid-template-rows:repeat(2,150px);justify-content:center}.dashCard,.folderCard{border:1px solid var(--border);background:var(--surface);border-radius:16px;padding:12px;min-height:0}.dashCardEmpty{opacity:.35;border-style:dashed}.folderCard{position:relative;padding-top:22px}.folderHeader{font-weight:700;margin-bottom:10px}.rectButton{width:100%;border-radius:10px;padding:12px 14px;border:1px solid rgba(0,119,139,.55);background:#00778b1f;color:var(--text)}.rectButton:hover{background:#00778b2e;border-color:#00778ba6}.folderDesc{margin-top:10px;color:var(--muted);font-size:15px;line-height:1.4}.ingresoPage{width:100%;height:100%;padding:24px 16px;overflow:auto;min-height:0;display:grid;place-items:start center}.ingresoCard{width:min(640px,100%);border:1px solid var(--border);background:var(--surface);border-radius:16px;padding:18px;display:grid;gap:14px}.configWrap{width:min(1320px,100%);display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:16px;align-content:start}.configPanel{border:1px solid var(--border);background:var(--surface);border-radius:16px;padding:18px;display:grid;gap:14px;min-height:0}.usersPanel{padding:0 18px 18px;gap:8px}.usersPanel .configPanelHeader{margin-top:-2px}.configPanelHeader{display:flex;align-items:center;justify-content:space-between;gap:12px}.usersUpdateBtn{font-size:22px;font-weight:800;padding:10px 12px;line-height:1}.usersForm{display:grid;gap:12px}.usersActions{display:grid;gap:10px}.usersRow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.usersTableWrap{border:1px solid rgba(11,28,32,.12);border-radius:14px;background:#0b1c2005;overflow:auto;max-height:min(520px,calc(100vh - 280px))}.usersTable{width:100%;border-collapse:collapse;font-size:13px;table-layout:fixed}.usersTable th,.usersTable td{border:1px solid rgba(11,28,32,.1);padding:8px;vertical-align:top;text-align:left;word-break:break-word}.usersTable th{position:sticky;top:0;background:#00778b1a;font-weight:800}.usersTable th:nth-last-child(-n+2),.usersTable td:nth-last-child(-n+2){width:64px;text-align:center}.iconBtn{width:42px;height:42px;padding:0;display:inline-grid;place-items:center;border-radius:12px;border:1px solid rgba(11,28,32,.14);background:#0b1c200a;color:var(--text)}.iconBtn:hover{border-color:#00778b73;background:#00778b1a}.iconBtn.danger:hover{border-color:#d2263073;background:#d226301a}.iconSvg{width:20px;height:20px}@media(max-width:980px){.configWrap,.usersRow{grid-template-columns:1fr}}.ingresoTitle{margin:0;font-size:22px}.field{display:grid;gap:6px;font-size:14px}.dropZone{border:1px dashed rgba(100,204,201,.45);background:#0000001f;border-radius:16px;padding:18px;text-align:center;display:grid;gap:8px;cursor:pointer;position:relative;overflow:hidden}.dropZoneOver{border-color:#eaaa00b3;background:#eaaa0014}.dropTitle{font-weight:700}.dropSub{color:var(--muted)}.fileButton{justify-self:center;padding:10px 14px;border-radius:10px;border:1px solid rgba(100,204,201,.45);background:#64ccc91f;cursor:pointer;color:var(--c-white);font-weight:600}.fileButton input{display:none}.dropFile{color:var(--muted);font-size:13px;word-break:break-word}.dropFileName{min-height:120px;display:grid;place-items:center;padding:18px 10px;font-size:20px;font-weight:800;letter-spacing:.2px;color:var(--text);word-break:break-word}.fileOverlayInput{position:absolute;inset:0;opacity:0;cursor:pointer}.successBox{padding:10px 12px;border-radius:10px;border:1px solid rgba(100,204,201,.5);background:#64ccc91f;color:var(--text)}.dashDiarioPage{max-width:1280px;width:calc(100% - 32px);margin:24px auto;height:calc(100vh - 120px);display:grid;grid-template-columns:1fr 340px;gap:16px;min-height:0}.dashDiarioLeft{min-height:0;display:grid;grid-template-rows:auto 1fr;gap:12px}.dashDiarioTop{border:1px solid var(--border);background:var(--surface);border-radius:16px;padding:12px 14px}.chartCard{border:1px solid var(--border);background:var(--surface);border-radius:16px;padding:14px;min-height:0;display:grid;gap:10px;overflow:hidden}.chartTitle{font-weight:800;letter-spacing:.2px}.plotlyBox{min-height:0;height:100%}.chartArea{width:100%;transition:height .22s ease;will-change:height}.chartAreaLarge{height:520px}.chartAreaSmall{height:320px}.detailWrap{border:1px solid rgba(255,255,255,.1);border-radius:14px;background:#0000001f;padding:10px;overflow:hidden}.detailTableScroll{max-height:220px;overflow:auto}.detailTable{width:100%;border-collapse:collapse;font-size:12px}.detailTable th,.detailTable td{border:1px solid rgba(255,255,255,.18);padding:8px;vertical-align:top}.cellEquipo{font-weight:800}.statusCell{display:inline-flex;align-items:center;gap:8px}.statusDot{width:10px;height:10px;border-radius:999px;border:1px solid rgba(0,0,0,.25);flex:0 0 auto}.statusDot.green{background:#22c55e}.statusDot.red{background:#ef4444}.detailTable th{position:sticky;top:0;background:#00778b38;color:var(--c-white);text-align:left;font-weight:800}.detailBtn{margin-top:4px}.dashDiarioRight{min-height:0}.controlCard{height:100%;border:1px solid var(--border);background:var(--surface);border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:12px;min-height:0;justify-content:flex-start}.tipoHeader{font-weight:800;letter-spacing:.2px}.tipoToggleGrid{min-height:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-content:start}.tipoToggleBtn{aspect-ratio:2 / 1;width:100%;border-radius:14px;border:1px solid rgba(100,204,201,.28);background:#00778b38;font-weight:800;letter-spacing:.2px;color:var(--text);display:grid;place-items:center;padding:10px}.tipoToggleBtn.off{background:#0b1c200f;border-color:#0b1c201f;color:#0b1c208c}.tipoToggleBtn.on{border-color:#64ccc98c;box-shadow:0 0 0 3px #64ccc91f inset}.equipoColumns{min-height:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-content:start}.equipoCol{display:grid;gap:10px;align-content:start}.equipoToggleBtn{width:100%;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:#00000029;font-weight:800;letter-spacing:.2px;color:var(--text);display:grid;place-items:center;padding:10px;min-height:44px;text-align:center;line-height:1.15}.equipoToggleBtn.on{border-color:#eaaa008c;background:#eaaa001a}.equipoToggleBtn.off{background:#0b1c200f;border-color:#0b1c201f;color:#0b1c20b3}.equipoToggleBtn:disabled{opacity:.35}@media(max-width:980px){.dashDiarioPage{grid-template-columns:1fr;height:auto}.controlCard{height:auto}}.panel{border:1px solid var(--border);border-radius:12px;padding:16px;background:var(--surface);width:min(420px,100%)}.form{display:grid;gap:12px}label{display:grid;gap:6px;font-size:14px}input{padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:#00000038;color:var(--c-white)}select{padding:10px 12px;border-radius:10px;border:1px solid rgba(100,204,201,.28);background:#00778b38;color:var(--c-white)}select:focus{outline:3px solid rgba(100,204,201,.35);outline-offset:2px}.controlSelect{width:100%;font-weight:800;letter-spacing:.2px}.controlSelect:disabled{background:#00000038;border-color:#ffffff1a;color:#ffffff8c}.dropdown{position:relative;width:100%}.dropdownButton{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:10px;border:1px solid rgba(100,204,201,.28);background:#00778b38;color:var(--text);font-weight:800;letter-spacing:.2px}.dropdownChevron{color:#0b1c20bf}.dropdownMenu{position:absolute;top:calc(100% + 8px);left:0;right:0;z-index:20;border-radius:12px;border:1px solid rgba(100,204,201,.28);background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:8px;display:grid;gap:8px}.dropdownItem{width:100%;padding:10px 12px;border-radius:10px;border:1px solid rgba(11,28,32,.12);background:#0b1c200a;color:var(--text);font-weight:800;letter-spacing:.2px;text-align:left}.dropdownItem:hover{border-color:#64ccc98c;background:#64ccc91f}.dropdownItem.active{border-color:#eaaa008c;background:#eaaa001a}input:focus{outline:3px solid rgba(100,204,201,.35);outline-offset:2px}button{padding:10px 12px;border-radius:10px;border:1px solid rgba(0,119,139,.55);background:linear-gradient(180deg,#00778bf2,#00778bbf);color:var(--c-white);cursor:pointer}button.secondary{border:1px solid rgba(234,170,0,.5);background:#eaaa001f}button:disabled{opacity:.6;cursor:not-allowed}.error{padding:10px 12px;border-radius:10px;border:1px solid rgba(210,38,48,.55);background:#d226301f;color:var(--text)}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.pre{padding:12px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#00000040;overflow:auto;font-size:12px}
