:root{--brand:#0f2bae;--brand-soft:#e7ecfc;--surface:#f2f2f5;--btn-gray:#e7e7ea;--track:#b6b6be;--ink:#0a0a0a;--muted:#8a8a93;--line:#e2e2e6;--danger:#b3261e;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--app-width:412px;font:15px/1.45 var(--sans);color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#d9d9de}*{box-sizing:border-box}body,h1,h2,h3,p{margin:0}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}#app{width:100%;max-width:var(--app-width);min-height:100svh;box-shadow:0 0 0 1px var(--line);background:#fff;flex-direction:column;margin:0 auto;display:flex;position:relative}.icon{width:22px;height:22px;display:block}.topbar{color:var(--ink);justify-content:flex-end;align-items:center;gap:14px;padding:14px 18px 6px;display:flex}.topbar .icon{width:20px;height:20px}.topbar-icon{display:inline-flex}.topbar-back{margin-right:auto;display:inline-flex}.topbar-back:empty{display:none}.topbar-back .icon-btn{margin:-4px 0}#topbar-title{text-transform:uppercase;letter-spacing:.5px;font-size:16px;font-weight:700}.icon-btn{color:var(--ink);background:0 0;border:0;padding:4px;display:inline-flex}.statsbar{align-items:center;gap:12px;padding:4px 18px 14px;display:flex}.brand{align-items:center;gap:6px;min-width:0;max-width:148px;margin-right:auto;display:inline-flex}.brand img{object-fit:contain;object-position:left;width:auto;min-width:0;height:26px}.logo-word{white-space:nowrap;color:var(--ink);flex:none;font-size:15px;font-weight:600}.stats{flex-shrink:0;gap:10px;display:flex}.stat{color:var(--brand);flex-direction:column;align-items:center;gap:2px;min-width:38px;display:flex}.stat small{color:var(--muted);letter-spacing:1px;min-height:14px;font-size:11px}.stat.off{color:var(--muted)}.stat-action{font:inherit;cursor:pointer;background:0 0;border:0;padding:0}#view{flex:1;overflow-y:auto}.footer{border-top:1px solid var(--brand);color:var(--muted);justify-content:space-between;align-items:baseline;gap:12px;margin-top:28px;padding:10px 18px 12px;font-size:11px;display:flex}.footer-version-nueva{color:var(--brand);white-space:nowrap;font-weight:600}.page{flex-direction:column;gap:16px;padding:6px 18px 28px;display:flex}.section-title{text-align:center;color:var(--ink);font-size:19px;font-weight:700}.progress{background:var(--track);border-radius:99px;height:7px;overflow:hidden}.progress>span{background:var(--brand);border-radius:99px;height:100%;display:block}.q-nav{justify-content:space-between;align-items:center;gap:10px;display:flex}.q-nav .nav-pill{border:0;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:8px;height:44px;font-size:16px;font-weight:700;display:flex}.nav-pill.prev{background:var(--surface);color:var(--ink)}.nav-pill.next{background:var(--brand-soft);color:var(--brand)}.q-current{background:var(--brand);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:52px;height:52px;font-size:17px;font-weight:700;display:flex}.q-hint{text-align:center;color:var(--muted);font-style:italic;font-weight:600;line-height:1.4}.q-text{text-align:center;color:var(--ink);font-size:19px;font-weight:700;line-height:1.35}.q-meta{text-align:center;color:var(--muted)}.q-section{text-align:center;color:var(--muted);text-transform:uppercase;letter-spacing:.4px;font-size:13px;font-weight:600}.q-photo{object-fit:cover;border-radius:12px;width:100%;max-height:200px;display:block}.options{flex-direction:column;gap:12px;display:flex}.options.likert .option{min-height:52px;padding:12px 16px}.option-wrap{flex-direction:column;gap:8px;display:flex}.option{background:var(--surface);cursor:pointer;outline-offset:-2px;border-radius:12px;outline:2px solid #0000;align-items:center;gap:14px;min-height:64px;padding:16px;display:flex}.option.selected{outline-color:var(--brand)}.radio{border:2px solid var(--brand);border-radius:50%;flex:none;width:22px;height:22px}.check{border:2px solid var(--brand);border-radius:6px;flex:none;width:22px;height:22px}.option.selected .radio{box-shadow:inset 0 0 0 5px var(--brand)}.option.selected .check{background:var(--brand)}.option-label{color:var(--ink);flex:1;font-weight:700}.option-thumb{object-fit:cover;background:#1b1b1b;border-radius:6px;flex:none;width:78px;height:48px}.option-note{color:var(--muted);margin-top:3px;font-size:13px;font-style:italic;font-weight:500;display:block}.option-open{border:1.5px solid var(--line);width:100%;font:inherit;border-radius:10px;padding:12px 14px}.q-textarea{border:1.5px solid var(--line);width:100%;font:inherit;resize:vertical;box-sizing:border-box;border-radius:12px;padding:14px}.nav-pill:disabled{opacity:.45;cursor:default}.confirm{text-align:center;background:var(--brand-soft);color:var(--brand);border-radius:10px;padding:12px;font-weight:600}.confirm.warn{text-align:left;background:var(--surface);color:var(--ink);border-left:3px solid var(--brand)}.actions{gap:14px;padding-top:4px;display:flex}.btn{border:0;border-radius:99px;flex:1;justify-content:center;align-items:center;gap:8px;height:50px;font-size:16px;font-weight:600;display:inline-flex}.btn svg{flex:none;width:20px;height:20px}.btn-gray{background:var(--btn-gray);color:var(--ink)}.btn-primary{background:var(--brand);color:#fff}.btn-danger{background:var(--danger);color:#fff}.actions .btn:disabled{background:var(--btn-gray);color:var(--muted);cursor:default}.btn-soft{background:var(--brand-soft);color:var(--brand);border:0;border-radius:99px;align-self:center;height:44px;padding:0 30px;font-weight:600}.btn-soft:disabled{opacity:.5;cursor:default}.start-logo{object-fit:contain;border-radius:8px;max-width:100%;max-height:min(200px,24vh);margin:4px auto 16px;display:block}.card-logo{object-fit:contain;border-radius:6px;align-self:flex-start;max-width:60%;max-height:44px}.card-actions.quad{flex-wrap:wrap;gap:10px;padding-top:4px;display:flex}.card-actions.quad .btn{flex:calc(25% - 8px);min-width:132px;height:46px;font-size:15px}.card-actions.quad .btn:disabled{opacity:.45}.subsection{padding-top:4px;font-size:15px;font-weight:700}.dialog{width:min(calc(var(--app-width) - 48px), calc(100vw - 48px));color:var(--ink);background:#fff;border:0;border-radius:16px;max-height:calc(100svh - 48px);padding:22px;overflow:hidden auto}.dialog::backdrop{background:#0a0a0a73}.dialog h2{font-size:18px;font-weight:700}.dialog-hint{color:var(--muted);padding:6px 0 16px}.dialog form,.dialog-rows{border-top:2px solid var(--track);flex-direction:column;gap:14px;padding-top:18px;display:flex}.dialog-comment p+p{margin-top:10px}.dialog-rows .info-row{flex-direction:column;align-items:stretch;gap:2px}.field{flex-direction:column;gap:6px;display:flex}.field>span{font-size:13px;font-weight:600}.range{width:100%;accent-color:var(--brand);margin:2px 0 0}.range-value{color:var(--muted);font-size:13px;font-weight:600}.input{border:1.5px solid var(--line);width:100%;font:inherit;box-sizing:border-box;border-radius:12px;padding:13px 14px}.input:focus-visible{border-color:var(--brand);outline:none}.input-wrap{display:flex;position:relative}.input-wrap .input{padding-right:48px}.input-action{width:46px;height:100%;color:var(--muted);justify-content:center;align-items:center;position:absolute;top:0;right:0}.form-error{background:var(--surface);border-left:3px solid var(--brand);border-radius:10px;padding:10px 12px;font-weight:600}.info-card{border:1.5px solid var(--brand);border-radius:14px;flex-direction:column;gap:14px;padding:18px;display:flex}.info-row{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 12px;display:flex}.info-row .label{color:var(--ink);font-weight:700}.info-row .value{color:var(--muted);text-align:right;margin-left:auto}.sync-table{flex-direction:column;gap:10px;display:flex}.sync-head{background:var(--surface);color:var(--brand);border-radius:10px;grid-template-columns:48px 1fr 32px 32px;align-items:center;gap:8px;padding:12px 14px;font-weight:700;display:grid}.sync-head .icon{color:var(--brand);width:20px;height:20px}.sync-row{border:1px solid var(--line);color:var(--ink);border-radius:10px;grid-template-columns:48px 1fr 32px 32px;align-items:center;gap:8px;padding:14px;display:grid}.sync-row .icon{width:20px;height:20px}.sync-row .pin-on{color:var(--brand)}.sync-row .pin-off{color:var(--muted)}.sync-btn{color:inherit;cursor:pointer;background:0 0;border:0;justify-content:flex-start;align-items:center;padding:0;display:flex}.sync-btn:disabled{cursor:default}.btn-icon{justify-content:center;align-items:center;gap:8px;display:inline-flex}.btn-icon .icon{width:18px;height:18px}.btn-icon.sending .icon,.sync-btn.sending .icon{animation:1s linear infinite spin}.sync-row .sync-on{color:var(--brand)}.sync-row .sync-off{color:var(--muted)}.project-card{border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:12px;padding:18px;display:flex}.project-card.active{border:1.5px solid var(--brand)}.project-card .card-title{color:var(--ink);border-bottom:2px solid var(--track);padding-bottom:10px;font-size:17px;font-weight:700}.project-card .card-actions{gap:12px;margin-top:4px;display:flex}.project-card .card-actions.center{justify-content:center}.state{text-align:center;color:var(--muted);flex-direction:column;align-items:center;gap:14px;padding:48px 18px;display:flex}.spinner{border:3px solid var(--brand-soft);border-top-color:var(--brand);border-radius:50%;width:30px;height:30px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:2.4s}}.state-error p{color:var(--ink)}.stale-note{text-align:center;color:var(--muted);background:var(--surface);border-radius:10px;padding:10px 12px;font-style:italic}
