@import"https://fonts.googleapis.com/css2?family=Poppins:wght@400;600&display=swap";:root{--color-primary: #14bdc6;--color-primary-soft: #c1e6ec;--color-accent-dark: #104911;--color-accent-mid: #548c2f;--color-accent-yellow: #ffba49;--color-bg: #ffffff;--color-bg-alt: #f7f8fa;--color-text: #1a1a1a;--color-text-secondary: #6b7280;--color-error: #d64545;--font-family: "Poppins", system-ui, sans-serif;--font-size-base: 16px;--radius-card: 20px;--radius-button: 14px;--shadow-soft: 0 2px 12px rgba(0, 0, 0, .08);--transition-base: all .25s ease;--header-height: 12dvh;--subheader-height: 32px;--chrome-top: calc(var(--header-height) + var(--subheader-height) + 6px);--footer-height: 16dvh;--zone-height: 72dvh}@media(min-width:768px){:root{--font-size-base: 18px}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;overflow:hidden}body{font-family:var(--font-family);font-size:var(--font-size-base);font-weight:400;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased}#app{display:flex;flex-direction:column;height:100dvh;overflow:hidden;position:relative}.app-header{flex:0 0 var(--header-height);min-height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 1rem;background:var(--color-bg);position:fixed;top:0;left:0;right:0;z-index:10}.app-header__brand{display:flex;align-items:center;gap:.5rem;font-weight:600;font-size:.85rem}.app-header__brand .app-icon{flex-shrink:0}.app-header__label{color:var(--color-text-secondary);font-size:.75rem;font-weight:600}.app-header__counter{font-size:.8rem;font-weight:600;color:var(--color-text-secondary);text-align:right}.app-subheader{position:fixed;top:var(--header-height);left:0;right:0;z-index:9;display:flex;align-items:center;justify-content:center;min-height:var(--subheader-height);padding:.45rem 1rem .5rem;background:var(--color-bg)}.section-pills{display:flex;gap:.45rem;flex-wrap:wrap;justify-content:center}.section-pill{width:8px;height:8px;border-radius:50%;background:var(--color-primary-soft);transition:var(--transition-base)}.section-pill--active{background:var(--color-primary);transform:scale(1.25)}.app-main{flex:1;display:flex;align-items:center;justify-content:center;padding:calc(var(--chrome-top) + 10px) 1.25rem calc(var(--footer-height) + 8px);overflow:hidden;min-height:0}.app-main--with-intro{align-items:flex-start;padding-top:calc(var(--chrome-top) + 14px);overflow-y:auto}.app-footer{flex:0 0 var(--footer-height);min-height:72px;display:flex;align-items:center;justify-content:center;padding:0 1.25rem 1rem;position:fixed;bottom:0;left:0;right:0;z-index:10;background:linear-gradient(to top,var(--color-bg) 70%,transparent)}.btn-primary{width:100%;max-width:420px;height:52px;border:none;border-radius:var(--radius-button);background:var(--color-accent-dark);color:#fff;font-family:inherit;font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition-base)}.btn-primary:disabled{opacity:.45;cursor:not-allowed}.btn-primary:not(:disabled):hover{filter:brightness(1.08)}.footer-actions{display:flex;align-items:center;gap:.65rem;width:100%;max-width:480px}.footer-actions__main{flex:1;min-width:0;display:flex;justify-content:center}.footer-actions__main .btn-primary,.footer-actions__main .btn-secondary{width:100%}.footer-actions__main .footer-hint{width:100%;text-align:center}.btn-back{flex-shrink:0;height:52px;padding:0 .9rem;border:1.5px solid var(--color-primary-soft);border-radius:var(--radius-button);background:var(--color-bg);color:var(--color-text);font-family:inherit;font-size:.9rem;font-weight:600;cursor:pointer;transition:var(--transition-base)}.btn-back:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.btn-back:disabled{opacity:.35;cursor:not-allowed}.btn-secondary{width:100%;max-width:420px;height:52px;border:none;border-radius:var(--radius-button);background:var(--color-primary);color:#fff;font-family:inherit;font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition-base)}.screen{width:100%;max-width:520px;text-align:center;animation:fadeIn .3s ease}.screen--intro,.screen--close,.screen--submitting{padding:1rem}.screen--submitting{display:flex;flex-direction:column;align-items:center;gap:1.25rem}.app-icon{display:block;object-fit:contain}.app-icon--sm{width:32px;height:32px;border-radius:8px}.app-icon--md{width:48px;height:48px;border-radius:10px}.app-icon--lg{width:120px;height:120px;margin:0 auto 1.25rem;border-radius:20px}.app-icon--loading{width:72px;height:72px;border-radius:16px;animation:app-icon-pulse 1.2s ease-in-out infinite}@keyframes app-icon-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.88;transform:scale(.94)}}.screen__title{font-size:1.5rem;font-weight:600;margin-bottom:.75rem}.screen__text{color:var(--color-text-secondary);line-height:1.55;margin-bottom:1.25rem;font-size:.95rem}.consent-row{display:flex;align-items:flex-start;gap:.65rem;text-align:left;margin:1.5rem 0;font-size:.9rem;color:var(--color-text-secondary)}.consent-row input{margin-top:.2rem;width:18px;height:18px;accent-color:var(--color-accent-dark)}.password-field{width:100%;max-width:280px;margin:1rem auto}.password-field input{width:100%;height:52px;border:1.5px solid var(--color-primary-soft);border-radius:var(--radius-button);text-align:center;font-size:1.25rem;font-weight:600;letter-spacing:.2em;font-family:inherit;text-transform:uppercase}.password-field input:focus{outline:none;border-color:var(--color-primary)}.password-field--error input{border-color:var(--color-error)}.password-field--shake{animation:shake .45s ease}.field-error{color:var(--color-error);font-size:.85rem;margin-top:.5rem}.access-password{font-size:2.25rem;font-weight:600;color:var(--color-primary);letter-spacing:.08em;margin:1rem 0}.hint-text{font-size:.8rem;color:var(--color-text-secondary);margin-top:.75rem}.footer-hint{font-size:.85rem;color:var(--color-text-secondary);text-align:center}.question-view{width:100%;max-width:560px;display:flex;flex-direction:column;gap:.75rem;opacity:1;transform:translate(0);transition:opacity .3s ease,transform .3s ease}.question-view--exit-left{opacity:0;transform:translate(-40px)}.question-view--exit-right{opacity:0;transform:translate(40px)}.question-view__intro{flex-shrink:0;padding-top:.25rem}.question-view__body{flex-shrink:0;margin-top:1rem}@media(max-width:767px){.app-main--with-intro{padding-top:calc(var(--chrome-top) + 22px)}.question-view{gap:.85rem}.question-view__intro{padding-top:.5rem}.question-view__body{margin-top:1.35rem}.section-intro--compact{padding-top:.5rem;padding-bottom:.85rem}.section-intro--compact .section-intro__icon{margin-bottom:.45rem}.section-intro--compact .section-intro__title{margin-bottom:.35rem}.section-intro--compact .section-intro__hint{line-height:1.45}}.question-view--enter{animation:slideIn .3s ease forwards}.question-instruction{font-size:.8rem;color:var(--color-text-secondary);margin-bottom:.75rem;line-height:1.4}.question-module{display:inline-block;font-size:.75rem;font-weight:600;color:var(--color-primary);background:var(--color-primary-soft);padding:.2rem .6rem;border-radius:999px;margin-bottom:.5rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-8px)}40%,80%{transform:translate(8px)}}.progress-bar{position:fixed;top:calc(var(--header-height) + var(--subheader-height) + 2px);left:0;right:0;height:4px;background:var(--color-primary-soft);z-index:11}.progress-bar__fill{height:100%;background:var(--color-primary);width:0%;transition:width .3s ease}.scale-block{width:100%;max-width:100%;margin-top:1rem}.scale-anchors-row{display:flex;justify-content:space-between;align-items:flex-end;gap:.5rem;margin-bottom:.85rem;padding-bottom:.15rem;width:100%}.scale-anchor{flex:1;min-width:0;font-size:clamp(10px,2.75vw,12px);line-height:1.25;color:var(--color-text-secondary)}.scale-anchor--low{text-align:left;padding-right:.25rem}.scale-anchor--high{text-align:right;color:var(--color-primary);font-weight:600;padding-left:.25rem}.scale-buttons{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:clamp(3px,1.2vw,8px);width:100%;max-width:100%}.scale-btn{width:100%;aspect-ratio:1;max-width:48px;max-height:48px;min-width:0;min-height:0;margin:0 auto;padding:0;border-radius:50%;border:1.5px solid var(--color-primary-soft);background:transparent;color:var(--color-text-secondary);font-family:inherit;font-size:clamp(.7rem,3.5vw,1rem);font-weight:600;line-height:1;cursor:pointer;transition:var(--transition-base);touch-action:manipulation}.scale-btn:hover:not(.scale-btn--selected){border-color:var(--color-primary)}.scale-btn--selected{background:var(--color-primary);color:#fff;border-color:var(--color-primary);transform:scale(1.08)}@media(max-width:767px){.scale-anchors-row{margin-bottom:1.1rem;padding-bottom:.25rem}}@media(min-width:480px){.scale-btn{width:48px;height:48px;font-size:1rem}.scale-anchors-row{margin-bottom:1rem}}.question-text{font-size:1.05rem;font-weight:600;line-height:1.45;text-align:center}.semantic-labels{margin-bottom:10px}.open-question{width:100%}.open-question textarea{width:100%;height:120px;resize:none;border:1.5px solid var(--color-primary-soft);border-radius:12px;padding:.85rem 1rem;font-family:inherit;font-size:.95rem;line-height:1.45;transition:border-color .2s ease}.open-question textarea:focus{outline:none;border-color:var(--color-primary)}.open-question textarea::placeholder{color:var(--color-text-secondary)}.open-question__counter{text-align:right;font-size:.8rem;color:var(--color-text-secondary);margin-top:.35rem}.section-intro{text-align:center;padding:.5rem 0 .75rem;animation:fadeIn .35s ease}.section-intro--compact{padding:.35rem 0 .75rem;margin-bottom:0;border-bottom:1px solid var(--color-primary-soft)}.section-intro--compact .section-intro__icon{font-size:1.35rem;margin-bottom:.35rem;line-height:1}.section-intro--compact .section-intro__title{font-size:.95rem;margin-bottom:.3rem;line-height:1.3}.section-intro--compact .section-intro__hint{font-size:.72rem;line-height:1.35;margin-bottom:0}.section-intro__icon{font-size:3rem;margin-bottom:.5rem}.section-intro__title{font-size:1.25rem;font-weight:600;margin-bottom:.35rem}.section-intro__hint{color:var(--color-text-secondary);font-size:.9rem;line-height:1.45}
