:root{--ink: #1a2b28;--muted: #5d6f6a;--accent: #2a6b5c;--accent-dark: #1b4a40;--accent-soft: #e4f1ec;--line: #d2ddd8;--card: rgba(255, 255, 255, .82);--danger: #9b2c2c;--ok: #2a6b5c;--sand: #f3eee6;--mist: #e7efeb;--shadow: 0 24px 60px rgba(26, 43, 40, .1);font-family:"Source Sans 3",system-ui,sans-serif;color:var(--ink);line-height:1.55;font-weight:400;color-scheme:light}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;min-height:100vh;background:var(--sand)}h1,h2,.brand,.assessment-title,.section-title{font-family:Fraunces,Georgia,serif;font-weight:700;letter-spacing:-.03em}button,input{font:inherit}a{color:var(--accent-dark)}.participant-page{position:relative;min-height:100vh;overflow-x:hidden}.participant-atmosphere{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(900px 520px at 8% -5%,#d7ebe3 0%,transparent 58%),radial-gradient(800px 480px at 100% 0%,#efe6d8 0%,transparent 52%),radial-gradient(700px 400px at 50% 110%,#dce8e2 0%,transparent 55%),linear-gradient(180deg,#eef4f1 0%,var(--sand) 48%,#ebe4da 100%);animation:atmosphere-shift 18s ease-in-out infinite alternate}@keyframes atmosphere-shift{0%{transform:scale(1);filter:saturate(1)}to{transform:scale(1.04);filter:saturate(1.05)}}.app-shell,.participant-shell.app-shell{width:min(720px,calc(100% - 2rem));margin:0 auto;padding:2.75rem 0 4.5rem;position:relative;z-index:1}.wide-shell,.participant-shell.wide-shell{width:min(960px,calc(100% - 2rem));margin:0 auto;padding:2.5rem 0 4rem;position:relative;z-index:1}.reveal{animation:rise-in .7s cubic-bezier(.22,1,.36,1) both}.delay-1{animation-delay:.12s}@keyframes rise-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.hero-block{margin-bottom:1.35rem}.eyebrow{display:inline-block;margin:0 0 .65rem;color:var(--accent-dark);font-size:.84rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.brand{font-size:clamp(2.1rem,6vw,3.1rem);margin:0 0 .75rem;line-height:1.08}.lede,.hero-lede{color:var(--muted);margin:0;font-size:1.08rem;max-width:38rem}.hero-lede{margin-bottom:.25rem}.panel,.soft-panel{background:var(--card);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.75);box-shadow:var(--shadow);border-radius:28px;padding:1.85rem}.section-title{font-size:1.35rem;margin:0 0 .55rem}.section-copy{color:var(--muted);margin:0 0 1.35rem}.entry-form{margin-top:.5rem}label{display:block;font-weight:600;margin-bottom:.4rem}input[type=email],input[type=password],input[type=text],input[type=number],input[type=tel]{width:100%;border:1px solid var(--line);border-radius:16px;padding:.95rem 1.05rem;background:#fff;margin-bottom:1rem;transition:border-color .16s ease,box-shadow .16s ease}input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px #2a6b5c1f}.btn,.btn-primary{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-radius:999px;padding:.9rem 1.45rem;background:var(--accent);color:#fff;font-weight:650;cursor:pointer;min-height:52px;transition:transform .14s ease,background .14s ease,box-shadow .14s ease;box-shadow:0 10px 24px #2a6b5c38}.btn:hover,.btn-primary:hover{background:var(--accent-dark);transform:translateY(-1px)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.btn.secondary{background:transparent;color:var(--accent-dark);border:1px solid var(--line);box-shadow:none}.btn-row{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.25rem}.error{color:var(--danger);margin:.5rem 0 1rem}.muted{color:var(--muted)}.trust-list{list-style:none;padding:0;margin:1.5rem 0 1rem;display:grid;gap:.55rem}.trust-list li{position:relative;padding-left:1.55rem;color:var(--ink);font-weight:500}.trust-list li:before{content:"";position:absolute;left:0;top:.45rem;width:.65rem;height:.65rem;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.trust-note{margin:1rem 0 0;padding:.9rem 1rem;border-radius:16px;background:var(--accent-soft);color:var(--accent-dark);font-size:.95rem}.instruction-list{margin:0 0 1.35rem;padding-left:1.15rem;display:grid;gap:.85rem;color:var(--ink)}.instruction-list strong{color:var(--accent-dark)}.callout{margin:0 0 1.35rem;padding:1rem 1.1rem;border-left:3px solid var(--accent);background:#fff;border-radius:0 16px 16px 0;color:var(--muted)}.callout-important{border-left-color:var(--accent-dark);background:var(--accent-soft);color:var(--ink)}.callout-important p{margin:0}.instructions-copy p{margin:0 0 1.1rem;color:var(--ink);font-size:1.02rem}.instructions-copy .section-title{margin-top:.35rem}.instructions-copy .instruction-list{list-style:disc;margin-bottom:1.35rem}.closing-copy{font-weight:600;color:var(--accent-dark)!important}.assessment-panel{padding-top:1.5rem}.assessment-header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:1rem}.assessment-title{margin:0;font-size:clamp(1.55rem,4vw,2rem)}.autosave-chip{flex-shrink:0;border-radius:999px;padding:.45rem .8rem;font-size:.86rem;font-weight:600;background:#fff;border:1px solid var(--line);color:var(--muted);min-width:7.5rem;text-align:center}.autosave-chip[data-state=saving]{color:var(--accent-dark)}.autosave-chip[data-state=saved]{color:var(--ok);border-color:#b7d7cb;background:var(--accent-soft)}.autosave-chip[data-state=error]{color:var(--danger);border-color:#e2bcbc}.progress-wrap{margin:.5rem 0 1.5rem}.progress-meta{display:flex;justify-content:space-between;margin-bottom:.45rem;font-weight:600;font-size:.95rem}.progress-bar{height:10px;background:#dbe6e0;border-radius:999px;overflow:hidden}.progress-bar>span{display:block;height:100%;background:linear-gradient(90deg,#4b9783,#2a6b5c);border-radius:inherit;transition:width .22s ease}.question-text{font-size:clamp(1.12rem,2.8vw,1.28rem);margin:0 0 .25rem;line-height:1.45;font-weight:550}.options{display:grid;gap:.8rem;margin:1.25rem 0}.option{display:flex;align-items:flex-start;gap:.85rem;border:2px solid var(--line);border-radius:18px;padding:1rem 1.1rem;background:#fff;cursor:pointer;min-height:60px;text-align:left;transition:border-color .15s ease,background .15s ease,transform .15s ease}.option:hover{border-color:#a8c4ba;transform:translateY(-1px)}.option.selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}.option input{position:absolute;opacity:0;pointer-events:none}.option-body{display:flex;gap:.85rem;align-items:flex-start}.option-key{flex-shrink:0;width:1.75rem;height:1.75rem;border-radius:50%;display:inline-grid;place-items:center;font-weight:700;font-size:.85rem;background:#eef3f0;color:var(--accent-dark)}.option.selected .option-key{background:var(--accent);color:#fff}.footer-hint,.loading-copy{margin:1.1rem 0 0;color:var(--muted);font-size:.95rem}.success-mark{width:3rem;height:3rem;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:#fff;font-size:1.35rem;font-weight:700;margin-bottom:1rem;box-shadow:0 12px 28px #2a6b5c47;animation:pop-in .5s cubic-bezier(.22,1,.36,1) both}@keyframes pop-in{0%{transform:scale(.7);opacity:0}to{transform:scale(1);opacity:1}}.choice-cards{display:grid;gap:1rem}.choice-card{display:block;width:100%;text-align:left;border:1px solid var(--line);border-radius:22px;padding:1.35rem 1.4rem;background:#fff;cursor:pointer;font:inherit;color:inherit}.choice-card strong{display:block;font-size:1.2rem;margin-bottom:.25rem}.results-list{display:grid;gap:.85rem}.result-row{display:grid;gap:.25rem;padding:1rem 1.1rem;border-radius:18px;background:#fff;border:1px solid var(--line);text-decoration:none;color:inherit}.result-row:hover{border-color:var(--accent)}.status-pill{display:inline-block;font-size:.85rem;font-weight:600;color:var(--accent-dark)}.chart-wrap{width:100%;height:480px;margin:1.5rem 0}.profile-chart{background:#f7f4ef;border:1px solid var(--line);border-radius:12px;padding:.75rem .5rem .25rem}.profile-chart-tall{height:620px}.profile-chart-mobile{height:560px;min-width:320px;margin:.75rem 0 0}.profile-chart-expanded{height:min(78vh,720px);margin:.75rem 0 0}.chart-panel{margin:1rem 0 1.5rem}.chart-toolbar{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:space-between;margin-top:.75rem}.chart-hint{margin:0;flex:1 1 12rem;font-size:.92rem}.chart-expand-btn{min-height:44px;padding:.65rem 1.1rem}.chart-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -.25rem;padding:0 .25rem .25rem}.chart-canvas{width:100%;height:100%;min-height:420px}.chart-canvas-tall{min-height:560px}.table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin:1rem 0 1.5rem;border:1px solid var(--line);border-radius:14px;background:#fff}.table-scroll .table{margin:0;min-width:560px}.table-scroll .table th,.table-scroll .table td{white-space:nowrap;padding:.75rem .85rem}.modal-dialog-fullscreen{width:min(1100px,calc(100vw - 1rem));max-height:calc(100vh - 1rem);height:calc(100vh - 1rem)}.modal-dialog-fullscreen .modal-body{flex:1;min-height:0;display:flex;flex-direction:column}.level-legend{display:flex;flex-wrap:wrap;gap:.5rem;margin:.75rem 0 0}.level-pill{display:inline-block;border-radius:999px;padding:.2rem .65rem;font-size:.78rem;font-weight:700;letter-spacing:.02em}.level-bajo{color:#8a4a16;background:#c673332e}.level-medio{color:var(--accent-dark);background:var(--accent-soft)}.level-alto{color:#1e3f5c;background:#2c5f8a29}.profile-form{margin:0 0 1.25rem}.profile-form label{margin-bottom:.45rem}.profile-form input{margin-bottom:1.15rem}.profile-summary{margin:.75rem 0 1.25rem;padding:1rem 1.1rem;border-radius:16px;background:var(--accent-soft)}.profile-summary p{margin:.25rem 0}.conclusions-block{margin-top:2rem}.conclusions-disclaimer{color:var(--muted);font-size:.95rem;margin:0 0 1.25rem;padding:1rem 1.1rem;border-left:3px solid var(--accent);background:#fff;border-radius:0 16px 16px 0}.conclusions-list{display:grid;gap:1rem}.conclusion-item{padding:1rem 1.1rem;border-radius:18px;border:1px solid var(--line);background:#fff}.conclusion-item h3{margin:0 0 .25rem;font-family:Fraunces,Georgia,serif;font-size:1.15rem}.conclusion-item p{margin:.4rem 0 0}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:.65rem .4rem;border-bottom:1px solid var(--line)}.autosave{font-size:.92rem;color:var(--muted);min-height:1.4rem}.autosave.ok{color:var(--ok)}.consent-block{margin:0 0 1.35rem;padding:1rem 1.1rem;border-radius:18px;border:1px solid var(--line);background:#fff}.consent-title{margin:0 0 .85rem;font-family:Fraunces,Georgia,serif;font-size:1.2rem;line-height:1.25}.consent-copy{margin:0 0 .9rem;color:var(--ink);line-height:1.55;font-size:.98rem}.consent-row{display:flex;gap:.75rem;align-items:flex-start;margin-top:.35rem}.consent-checkbox{width:1.15rem;height:1.15rem;margin-top:.2rem;flex-shrink:0;accent-color:var(--accent)}.consent-label{margin:0;font-weight:500;line-height:1.45;cursor:pointer}.consent-error{margin:.75rem 0 0}.modal-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;padding:1rem}.modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:none;background:#1a2b2873;cursor:pointer}.modal-dialog{position:relative;z-index:1;width:min(640px,100%);max-height:min(85vh,720px);display:flex;flex-direction:column;background:#fff;border-radius:22px;box-shadow:var(--shadow);border:1px solid var(--line);overflow:hidden}.modal-header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;padding:1.1rem 1.2rem;border-bottom:1px solid var(--line)}.modal-title{margin:0;font-family:Fraunces,Georgia,serif;font-size:1.25rem;line-height:1.25}.modal-close{flex-shrink:0;min-height:42px;padding:.55rem 1rem}.modal-body{padding:1.1rem 1.2rem 1.4rem;overflow-y:auto;-webkit-overflow-scrolling:touch}.modal-body p{margin:0 0 .95rem;color:var(--ink);line-height:1.55}@media(max-width:640px){.panel,.soft-panel{padding:1.25rem;border-radius:22px}.assessment-header,.btn-row{flex-direction:column}.btn,.btn.secondary,.btn-primary{width:100%}.chart-toolbar{flex-direction:column;align-items:stretch}.chart-expand-btn{width:100%}.wide-shell{width:min(960px,calc(100% - 1rem))}.modal-dialog-fullscreen{width:100vw;height:100vh;max-height:100vh;border-radius:0}}@media(prefers-reduced-motion:reduce){.reveal,.success-mark,.participant-atmosphere{animation:none}}
