@import url(https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700&family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap);:root{--bg-main:#f2f5f7;--bg-soft:#fff;--bg-elevated:#f9fbfc;--surface-border:#d7dee5;--surface-muted:#6b7280;--text-main:#111827;--text-secondary:#374151;--brand:#0f766e;--brand-strong:#0c5e58;--danger:#b91c1c;--shadow-soft:0 20px 45px -30px #0f172a80;--radius-lg:20px;--radius-md:14px}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at 10% 10%,#e8f4f0 0,#0000 38%),radial-gradient(circle at 90% 5%,#e6f0ff 0,#0000 35%),#f2f5f7;background:radial-gradient(circle at 10% 10%,#e8f4f0 0,#0000 38%),radial-gradient(circle at 90% 5%,#e6f0ff 0,#0000 35%),var(--bg-main);font-family:Plus Jakarta Sans,Segoe UI,sans-serif;overflow-x:hidden;scroll-behavior:smooth}body,h1,h2,h3,h4,h5,h6{color:#111827;color:var(--text-main);margin:0}h1,h2,h3,h4,h5,h6{font-family:Outfit,Segoe UI,sans-serif}p{color:#374151;color:var(--text-secondary);margin:0}a{color:inherit}code{font-family:Menlo,Monaco,Consolas,Courier New,monospace}.App{min-height:100vh;padding:24px 14px}.App,.login-selector-page{display:flex;justify-content:center;width:100%}.login-selector-page{align-items:center;min-height:calc(100vh - 48px)}.login-selector-card{background:linear-gradient(145deg,#fff,#f4f8fa);border:1px solid var(--surface-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:36px;width:min(700px,100%)}.login-selector-eyebrow{color:var(--brand);font-size:12px;font-weight:700;letter-spacing:.08em;margin-bottom:10px;text-transform:uppercase}.login-selector-card h1{font-size:clamp(1.7rem,3.8vw,2.4rem);line-height:1.1;margin-bottom:12px}.login-selector-subtitle{font-size:1rem;margin-bottom:28px}.buttons-choose{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.selector-btn{border:none;border-radius:12px;cursor:pointer;font-size:.96rem;font-weight:700;padding:14px;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}.selector-btn:hover{transform:translateY(-1px)}.selector-btn-primary{background-color:var(--brand);box-shadow:0 12px 20px -18px #0f766ee6;color:#fff}.selector-btn-primary:hover{background-color:var(--brand-strong)}.selector-btn-secondary{background-color:#ebeff3;color:var(--text-main)}@media (max-width:680px){.login-selector-card{padding:24px}.buttons-choose{grid-template-columns:1fr}}.contracted-page{width:100%}.contracted-card{background:linear-gradient(145deg,#fff,#f4f8fa);border:1px solid var(--surface-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);display:flex;flex-direction:column;gap:8px;padding:28px;width:min(470px,100%)}.contracted-eyebrow{color:var(--brand);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.contracted-subtitle{font-size:.94rem;margin-bottom:8px}.contracted-input-wrapper .MuiButton-root{background-color:var(--brand);font-weight:700;width:100%}.contracted-input-wrapper .MuiButton-root:hover{background-color:var(--brand-strong)}.contracted-code-grid .MuiInputBase-input{font-size:1.3rem;font-weight:700;text-align:center}.contracted-loading{margin-top:8px}@media (max-width:560px){.contracted-card{padding:22px}}.ind-login-page{align-items:center;display:flex;justify-content:center;min-height:calc(100vh - 48px);padding:0 1.5rem}.ind-login-card{background:linear-gradient(145deg,#fff,#f4f8fa);border:1px solid var(--surface-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);display:flex;flex-direction:column;max-width:430px;padding:2rem;width:100%}.ind-login-eyebrow{color:var(--brand);font-size:12px;font-weight:700;letter-spacing:.08em;margin-bottom:10px;text-transform:uppercase}.ind-login-page h2{font-size:1.75rem;margin-bottom:.4rem}.ind-login-subtitle{font-size:.96rem;margin-bottom:1.4rem}.ind-login-page form{display:flex;flex-direction:column;width:100%}.ind-login-page input{background-color:#fff;border:1px solid var(--surface-border);border-radius:10px;box-sizing:border-box;font-size:1rem;margin-bottom:1.5rem;padding:.82rem;transition:border-color .3s,box-shadow .3s;width:100%}.ind-login-page input:focus{border-color:var(--brand);box-shadow:0 0 0 3px #0f766e1f;outline:none}.ind-login-page button{background-color:var(--brand);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;padding:.75rem;transition:background-color .3s}.ind-login-page button:hover{background-color:var(--brand-strong)}.ind-login-page button:disabled{background-color:#aaa;cursor:not-allowed}.ind-login-page form p{color:var(--danger);font-size:.875rem;margin-top:-.5rem}@media (max-width:600px){.ind-login-page{padding:1rem}.ind-login-page h2{font-size:1.5rem}.ind-login-page button,.ind-login-page input{font-size:.875rem}}.protected-loading{align-items:center;display:flex;justify-content:center;min-height:calc(100vh - 48px);width:100%}.protected-loading-card{align-items:center;background:#fff;border:1px solid var(--surface-border);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);display:flex;gap:12px;min-width:260px;padding:22px}.protected-spinner{animation:protected-spin .8s linear infinite;border:3px solid #d2d7dd;border-radius:50%;border-top:3px solid var(--brand);height:22px;width:22px}@keyframes protected-spin{to{transform:rotate(1turn)}}.inspeccion-dashboard{display:flex;flex-direction:column;min-height:calc(100vh - 48px);padding-bottom:86px;width:min(980px,100%)}.stepper-wrapper{background:#fff;border:1px solid var(--surface-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);flex:1 1;padding:26px}.inspeccion-eyebrow{color:var(--brand);font-size:12px;font-weight:700;letter-spacing:.08em;margin-bottom:10px;text-transform:uppercase}.inspection-title{font-size:clamp(1.5rem,3.4vw,2rem);margin-bottom:6px}.inspeccion-helper{margin-bottom:18px;max-width:660px}.inspeccion-progress{align-items:center;background-color:#e6f4f1;border-radius:999px;color:var(--brand-strong);display:inline-flex;font-size:.85rem;font-weight:700;margin-bottom:18px;padding:7px 12px}.stepper-wrapper .MuiStep-root{margin-bottom:16px}.stepper-wrapper .MuiStepLabel-label{font-weight:600}.download-link{color:var(--brand-strong);text-decoration:underline;text-underline-offset:3px}.inspeccion-footer-actions{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffeb;border:1px solid var(--surface-border);border-radius:var(--radius-md);bottom:12px;display:flex;justify-content:space-between;left:50%;padding:10px;position:fixed;transform:translateX(-50%);width:min(980px,calc(100% - 28px))}.inspeccion-footer-actions .MuiButton-root:last-child{background-color:var(--brand);color:#fff;font-weight:700}.inspeccion-footer-actions .MuiButton-root:last-child:hover{background-color:var(--brand-strong)}.error-message{color:var(--danger);margin-top:8px;text-align:center}.ambientes-page{min-height:calc(100vh - 48px);padding-bottom:86px;width:min(980px,100%)}.ambientes-shell{background:#fff;border:1px solid var(--surface-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:24px}.ambientes-eyebrow{color:var(--brand);font-size:12px;font-weight:700;letter-spacing:.08em;margin-bottom:8px;text-transform:uppercase}.ambientes-title{font-size:clamp(1.45rem,3vw,1.95rem);margin-bottom:6px}.ambientes-guide,.ambientes-subtitle{margin-bottom:14px}.ambientes-guide{background:#f8fbfd;border:1px dashed var(--surface-border);border-radius:10px;padding:12px}.ambientes-guide p{font-size:.92rem;margin:0}.ambientes-guide p+p{margin-top:4px}.ambientes-count{background:#ebf4ff;border-radius:999px;color:#1d4ed8;display:inline-flex;font-size:.83rem;font-weight:700;margin-bottom:18px;padding:6px 11px}.ambientes-list{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.ambiente-button{align-items:center;background-color:var(--bg-elevated);border:1px solid var(--surface-border);border-radius:var(--radius-md);cursor:pointer;display:flex;gap:12px;justify-content:space-between;padding:14px;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.ambiente-button:hover{border-color:#9fb7ca;box-shadow:0 14px 25px -24px #0f172acc;transform:translateY(-1px)}.ambiente-button h4{font-size:1rem;margin-bottom:4px}.ambiente-button p{font-size:.86rem}.ambiente-button span{color:var(--brand-strong);font-size:.78rem;font-weight:700;text-transform:uppercase}.ambientes-footer-actions{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffeb;border:1px solid var(--surface-border);border-radius:var(--radius-md);bottom:12px;display:flex;gap:10px;left:50%;padding:10px;position:fixed;transform:translateX(-50%);width:min(980px,calc(100% - 28px))}.ambientes-footer-actions .MuiButton-root{border-radius:10px;flex:1 1;font-weight:700;text-transform:none}.ambientes-volver-button{background:#edf1f4!important;color:var(--text-main)!important}.ambientes-finalizar-button{background:var(--brand)!important;color:#fff!important}.ambientes-finalizar-button:hover{background:var(--brand-strong)!important}.tareas-wrapper{min-height:calc(100vh - 48px);padding-bottom:86px;width:min(980px,100%)}.tareas-container{background:#fff;border:1px solid var(--surface-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:24px}.tareas-eyebrow{color:var(--brand);font-size:12px;font-weight:700;letter-spacing:.08em;margin-bottom:8px;text-transform:uppercase}.tareas-title{font-size:clamp(1.4rem,3vw,1.9rem);margin-bottom:6px}.tareas-guide,.tareas-subtitle{margin-bottom:12px}.tareas-guide{background:#f8fbfd;border:1px dashed var(--surface-border);border-radius:10px;padding:12px}.tareas-guide p{font-size:.92rem;margin:0}.tareas-guide p+p{margin-top:4px}.tareas-metrics{background:#e6f4f1;border-radius:999px;color:var(--brand-strong);display:inline-flex;font-size:.84rem;font-weight:700;padding:6px 11px}.tareas-comment-button{background-color:#1d4ed8!important;border-radius:10px!important;font-weight:700!important;text-transform:none!important}.tarea-list-item{background:var(--bg-elevated);border:1px solid var(--surface-border);border-radius:12px;margin:10px 0}.tarea-description-btn{border-color:#9ca3af!important;color:var(--text-main)!important;text-transform:none!important}.tareas-footer-actions{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffeb;border:1px solid var(--surface-border);border-radius:var(--radius-md);bottom:12px;left:50%;padding:10px;position:fixed;transform:translateX(-50%);width:min(980px,calc(100% - 28px))}.tareas-footer-actions-row{display:flex;gap:10px}.tareas-back-btn{background:#edf1f4!important;color:var(--text-main)!important;min-width:130px!important}.tareas-back-btn,.tareas-save-btn{border-radius:10px!important;font-weight:700!important;text-transform:none!important}.tareas-save-btn{background:var(--brand)!important;flex:1 1}.tareas-save-btn:hover{background:var(--brand-strong)!important}.spinner-container{align-items:center;display:flex;gap:10px;justify-content:center;min-height:calc(100vh - 48px);width:100%}.spinner{animation:spin 1s linear infinite;border:4px solid #0000001f;border-left:4px solid var(--brand);border-radius:50%;height:34px;width:34px}@keyframes spin{to{transform:rotate(1turn)}}.inventario-item{background-color:var(--bg-elevated);border:1px solid var(--surface-border);border-radius:12px;margin:10px 0;padding:16px;transition:transform .18s ease,box-shadow .18s ease}.inventario-item:hover{box-shadow:0 14px 22px -24px #0f172ad9;transform:translateY(-1px)}.nombre{font-size:1.05rem;font-weight:700;margin-bottom:6px}.inventario-location{font-size:.92rem}.inventario-qty-input .MuiOutlinedInput-root{background:#fff;border-radius:10px}.inventario-page{min-height:calc(100vh - 48px);padding-bottom:86px;width:min(980px,100%)}.inventario-list{background:#fff;border:1px solid var(--surface-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:24px}.inventario-eyebrow{color:var(--brand);font-size:12px;font-weight:700;letter-spacing:.08em;margin-bottom:8px;text-transform:uppercase}.inventario-list h3{font-size:clamp(1.4rem,3vw,1.9rem);margin-bottom:6px}.inventario-subtitle{margin-bottom:18px}.inventario-guide{background:#f8fbfd;border:1px dashed var(--surface-border);border-radius:10px;margin-bottom:14px;padding:12px}.inventario-guide p{font-size:.92rem;margin:0}.inventario-guide p+p{margin-top:4px}.inventario-footer-actions{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffeb;border:1px solid var(--surface-border);border-radius:var(--radius-md);bottom:12px;left:50%;padding:10px;position:fixed;transform:translateX(-50%);width:min(980px,calc(100% - 28px))}.inventario-footer-actions-row{align-items:center;display:flex;gap:10px}.inventario-back-btn{background:#edf1f4!important;color:var(--text-main)!important;min-width:130px!important}.inventario-back-btn,.inventario-save-btn{border-radius:10px!important;font-weight:700!important;text-transform:none!important}.inventario-save-btn{background:var(--brand)!important;flex:1 1}.inventario-inline-error{color:#b91c1c;font-size:.85rem;margin:0}.inventario-save-btn:hover{background:var(--brand-strong)!important}.inventario-status{align-items:center;display:flex;justify-content:center;min-height:calc(100vh - 48px);width:100%}.comentarios-page{min-height:calc(100vh - 48px);padding-bottom:86px;width:min(980px,100%)}.comentarios-card{background:#fff;border:1px solid var(--surface-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:24px}.formulario{display:flex;flex-direction:column;gap:14px}.comentarios-eyebrow{color:var(--brand);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.formulario h3{font-size:clamp(1.4rem,3vw,1.9rem)}.comentarios-subtitle{margin-bottom:4px}.select-container,.textarea-container{display:flex;flex-direction:column;gap:6px}.select-container label,.textarea-container label{color:var(--text-secondary);font-size:.9rem;font-weight:600}select,textarea{background:#fff;border:1px solid var(--surface-border);border-radius:10px;font-family:inherit;font-size:.95rem;padding:12px}select:focus,textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px #0f766e1f;outline:none}textarea{min-height:170px;resize:vertical}.boton-enviar{align-self:flex-start;background:#1d4ed8;border:none;border-radius:10px;color:#fff;cursor:pointer;font-weight:700;padding:11px 18px}.mensaje-exito{color:var(--brand-strong);font-size:.9rem;font-weight:600}.comentarios-footer-actions{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffeb;border:1px solid var(--surface-border);border-radius:var(--radius-md);bottom:12px;display:flex;gap:10px;left:50%;padding:10px;position:fixed;transform:translateX(-50%);width:min(980px,calc(100% - 28px))}.comentarios-footer-actions button{border:none;border-radius:10px;cursor:pointer;flex:1 1;font-size:.95rem;font-weight:700;padding:12px}.volver-button{background:#edf1f4;color:var(--text-main)}.siguiente-button{background:var(--brand);color:#fff}.actions-page{display:flex;flex-direction:column;justify-content:center;min-height:calc(100vh - 48px);padding-bottom:86px;width:min(980px,100%)}.actions-card{background:#fff;border:1px solid var(--surface-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:34px;text-align:center}.actions-eyebrow{color:var(--brand);font-size:12px;font-weight:700;letter-spacing:.08em;margin-bottom:8px;text-transform:uppercase}.actions-card h1{font-size:clamp(1.5rem,3.2vw,2rem);margin-bottom:4px}.actions-detail{font-size:.92rem;margin-bottom:12px}.actions-helper{margin-bottom:22px}.actions-buttons-container{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.actions-buttons-container .MuiButton-root{border-radius:10px;font-weight:700;padding:12px;text-transform:none}.actions-primary-btn{background-color:#0f766e!important}.actions-secondary-btn{background-color:#1d4ed8!important}.actions-footer-actions{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffeb;border:1px solid var(--surface-border);border-radius:var(--radius-md);bottom:12px;left:50%;padding:10px;position:fixed;transform:translateX(-50%);width:min(980px,calc(100% - 28px))}.actions-back-btn{background:#edf1f4!important;border-radius:10px!important;color:var(--text-main)!important;font-weight:700!important;text-transform:none!important;width:100%}@media (max-width:640px){.actions-card{padding:24px}.actions-buttons-container{grid-template-columns:1fr}}