:root{--bg:#061321;--bg2:#081a2b;--panel:#0b1e31;--panel2:#10263a;--stroke:#21435e;--text:#f2f7fb;--muted:#a8bac8;--green:#78e59a;--green2:#45c978;--red:#ff7d7d;--amber:#ffd36d;--blue:#80bfff}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}a{text-decoration:none;color:inherit}.hidden{display:none!important}.ambient{position:fixed;border-radius:50%;filter:blur(85px);opacity:.12;pointer-events:none}.ambient.a{width:500px;height:500px;background:#1bc46b;right:-200px;top:-220px}.ambient.b{width:550px;height:550px;background:#287db0;left:-250px;bottom:-260px}.app-shell{position:relative;z-index:1;min-height:100vh}.topbar{height:76px;display:flex;align-items:center;gap:18px;padding:0 clamp(16px,4vw,50px);border-bottom:1px solid rgba(55,93,121,.55);background:rgba(6,19,33,.86);backdrop-filter:blur(14px);position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:12px}.mark{width:40px;height:40px;border:2px solid var(--green);border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:850}.brand strong,.brand small{display:block}.brand strong{font-size:17px}.brand small{margin-top:3px;color:var(--green);letter-spacing:2px;font-size:9px;font-weight:800}.club{margin-left:auto;display:flex;align-items:center;gap:9px;color:#c6d4df;font-size:12px}.club img{width:38px;height:38px;background:#fff;border-radius:10px;padding:4px;object-fit:contain}.top-link{border:1px solid var(--stroke);padding:9px 12px;border-radius:11px;font-size:12px;color:#dce6ef}.login-screen{min-height:calc(100vh - 76px);display:grid;place-items:center;padding:30px}.login-card{width:min(460px,100%);border:1px solid var(--stroke);background:linear-gradient(165deg,rgba(15,38,59,.98),rgba(7,23,37,.98));border-radius:28px;padding:36px;box-shadow:0 25px 80px rgba(0,0,0,.3)}.eyebrow{margin:0 0 9px;color:var(--green);font-size:10px;letter-spacing:2px;font-weight:800}.login-card h1,.hero h1{margin:0;font-size:42px;letter-spacing:-1.5px}.login-card>p:not(.eyebrow),.hero p:not(.eyebrow){color:var(--muted);line-height:1.5}.login-card label,label{display:flex;flex-direction:column;gap:7px;color:#c9d7e2;font-size:12px;margin-top:18px}input,select,textarea{width:100%;border:1px solid #2c526e;background:#071829;color:#edf5fa;border-radius:11px;padding:12px 13px;outline:none}textarea{min-height:90px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:#4a9971}.btn{border:1px solid var(--stroke);border-radius:12px;padding:12px 16px;background:#10263a;color:#edf5fa;font-weight:750;font-size:12px}.btn.primary{background:linear-gradient(180deg,#2e8055,#1d5f3d);border-color:#4ca071}.btn.danger{background:#572c35;border-color:#8b4c58}.btn.ghost{background:transparent}.btn.compact{padding:9px 12px}.login-card .btn{width:100%;margin-top:18px}.msg{min-height:20px;margin-top:12px;color:var(--red);font-size:12px}.app-content{width:min(1240px,calc(100% - 32px));margin:0 auto;padding:34px 0 50px}.hero{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:25px}.hero-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.user-pill{border:1px solid var(--stroke);background:#0b1e31;padding:9px 12px;border-radius:999px;font-size:11px;color:#cad7e1}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.kpi{border:1px solid var(--stroke);background:rgba(11,30,49,.9);border-radius:18px;padding:18px}.kpi small{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:1px}.kpi strong{display:block;font-size:28px;margin-top:6px}.kpi.ok strong{color:var(--green)}.kpi.warn strong{color:var(--amber)}.kpi.bad strong{color:var(--red)}.tabs{display:flex;gap:7px;overflow:auto;padding:4px 0 12px}.tabs button{white-space:nowrap;border:1px solid var(--stroke);background:#091b2c;color:#aec0ce;padding:10px 14px;border-radius:999px}.tabs button.active{color:#fff;border-color:#46765d;background:#163529}.panel{border:1px solid var(--stroke);background:rgba(9,27,44,.8);border-radius:24px;padding:24px}.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:18px}.section-head h2{margin:0;font-size:26px}.help{color:var(--muted);font-size:12px;line-height:1.55}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.equipment-card,.inventory-row,.incident-row,.movement-row{border:1px solid #1e405b;background:#0b2135;border-radius:17px;padding:16px}.equipment-card{display:flex;flex-direction:column;min-height:190px}.equipment-top,.row-between{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.equipment-card h3,.inventory-row h3,.incident-row h3{margin:0;font-size:17px}.meta{color:var(--muted);font-size:11px;line-height:1.5;margin-top:7px}.status{display:inline-flex;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:850;letter-spacing:.5px;text-transform:uppercase;border:1px solid}.status.operativo,.status.resuelta{color:var(--green);border-color:#376e50;background:#112f22}.status.observacion,.status.pendiente{color:var(--amber);border-color:#6f6135;background:#332b12}.status.fuera_servicio,.status.abierta{color:var(--red);border-color:#73424a;background:#341a20}.status.en_reparacion,.status.en_mantenimiento{color:var(--blue);border-color:#355c79;background:#142a3d}.status.proveedor_externo{color:#cfb5ff;border-color:#635282;background:#291f3d}.card-actions{display:flex;gap:7px;margin-top:auto;padding-top:15px;flex-wrap:wrap}.card-actions .btn{padding:8px 10px}.inventory-list,.incident-list,.movement-list{display:flex;flex-direction:column;gap:9px}.inventory-row{display:grid;grid-template-columns:minmax(180px,1.6fr) .7fr .7fr 1fr;gap:12px;align-items:center}.stock-value{font-size:19px;font-weight:750}.stock-low{color:var(--amber)}.stock-out{color:var(--red)}.incident-row{display:grid;grid-template-columns:80px minmax(220px,1fr) 150px 150px auto;align-items:center;gap:12px}.incident-id{font-size:11px;color:#7893a8}.movement-row{display:grid;grid-template-columns:150px 1fr 120px 120px;gap:12px;align-items:center;font-size:12px}.empty{border:1px dashed #31516a;border-radius:16px;padding:28px;color:#91a6b7;text-align:center}.toast{position:fixed;right:22px;bottom:22px;background:#153525;border:1px solid #4f8d69;border-radius:13px;padding:13px 16px;box-shadow:0 15px 50px rgba(0,0,0,.35);font-size:12px;z-index:50}dialog{border:0;padding:0;background:transparent;color:var(--text);width:min(680px,calc(100% - 24px))}dialog::backdrop{background:rgba(1,8,14,.74);backdrop-filter:blur(5px)}.dialog-card{border:1px solid #2a4b64;background:#091b2c;border-radius:24px;padding:22px;max-height:88vh;overflow:auto}.dialog-card.small{width:min(460px,100%);margin:auto}.dialog-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.dialog-head h2{margin:0;font-size:25px}.x{border:1px solid var(--stroke);background:#10263a;color:#fff;border-radius:10px;width:36px;height:36px;font-size:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.span2{grid-column:1/-1}.check{flex-direction:row;align-items:center}.check input{width:auto}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.provider-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.action-stack{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:15px 0}.detail-box{border:1px solid #1f415b;border-radius:13px;padding:11px}.detail-box small{display:block;color:var(--muted);font-size:9px;text-transform:uppercase}.detail-box strong{display:block;margin-top:4px;font-size:12px}@media(max-width:900px){.kpis{grid-template-columns:1fr 1fr}.card-grid{grid-template-columns:1fr 1fr}.inventory-row,.incident-row,.movement-row{grid-template-columns:1fr 1fr}.hero{align-items:flex-start;flex-direction:column}.hero-actions{justify-content:flex-start}}@media(max-width:600px){.topbar{height:68px;padding:0 12px}.club span{display:none}.top-link{padding:8px}.app-content{width:calc(100% - 20px);padding-top:22px}.hero h1,.login-card h1{font-size:34px}.kpis{grid-template-columns:1fr 1fr}.kpi{padding:14px}.kpi strong{font-size:24px}.panel{padding:16px;border-radius:20px}.card-grid{grid-template-columns:1fr}.inventory-row,.incident-row,.movement-row{display:flex;flex-direction:column;align-items:stretch}.form-grid,.provider-fields,.detail-grid{grid-template-columns:1fr}.span2{grid-column:auto}.dialog-actions{flex-direction:column-reverse}.dialog-actions .btn{width:100%}}