:root{color-scheme:light;--ink:#171717;--ink-soft:#4b4541;--muted:#77706b;--paper:#e8e1d9;--field:#f7f4f0;--card:rgba(255,255,255,.9);--line:#d8d1c9;--red:#f32620;--red-text:#b4392f;--purple:#6f2b78;--lilac:#eaddef;--coral:#ffe0dc;--gold:#f6a800;--font-display:"New Kansas",Georgia,"Times New Roman",serif;--font-body:"Poppins",Arial,Helvetica,sans-serif;--shadow-card:0 22px 46px rgba(58,40,27,.09),0 4px 12px rgba(58,40,27,.045);--focus-ring:0 0 0 3px rgba(111,43,120,.16)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--paper);color:var(--ink);font-family:var(--font-body);font-weight:400;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision}button,input,select,textarea{font:inherit;color:inherit}button,label{-webkit-tap-highlight-color:transparent}h1,h2,p{margin:0}.survey-page{min-height:100vh;overflow-x:clip}.page-shell{width:min(100%,1040px);margin:0 auto;padding:clamp(24px,3vw,44px) clamp(16px,3vw,40px) 24px}.hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);grid-gap:16px;gap:16px;margin-bottom:26px}.hero,.hero-copy{position:relative}.hero-copy{z-index:2;padding:0 0 8px 4px}.brand-logo{display:block;width:min(100%,290px);aspect-ratio:1224/215;margin-bottom:26px;background:url(/brand/kidzink-koda-logo.png) 0/contain no-repeat}.hero-kicker{margin-bottom:8px;color:var(--red);font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.hero h1{font-family:var(--font-display);font-size:clamp(46px,6.4vw,76px);font-weight:600;letter-spacing:-.025em;line-height:.98}.hero h1 span{color:var(--red)}.hero-lede{max-width:520px;margin-top:16px;color:#303030;font-size:15px;line-height:1.6}.privacy-note{display:flex;align-items:flex-start;gap:10px;max-width:520px;margin-top:18px;padding:12px 16px;border:1px solid rgba(111,43,120,.18);border-radius:14px;background:rgba(255,255,255,.62);color:#4a2651;font-size:13px;line-height:1.45}.lock-icon{width:18px;height:18px;flex:0 0 auto;margin-top:1px;stroke:var(--purple);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.hero-art{position:relative;display:flex;align-items:center;justify-content:center;min-height:250px}.hero-illustration{width:min(100%,320px);height:auto;transform:rotate(-4deg);animation:float 6s ease-in-out infinite}@keyframes float{0%,to{transform:rotate(-4deg) translateY(0)}50%{transform:rotate(-2deg) translateY(-8px)}}.survey-form{display:grid;grid-gap:22px;gap:22px}.panel{padding:clamp(20px,3vw,34px);border-radius:28px;background:var(--card);box-shadow:var(--shadow-card);animation:reveal .42s cubic-bezier(.22,1,.36,1) both}@keyframes reveal{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.panel-heading{display:flex;align-items:center;gap:14px;margin-bottom:22px}.panel-heading h2{font-family:var(--font-display);font-size:clamp(22px,2.6vw,28px);font-weight:600;letter-spacing:-.02em;line-height:1.08}.panel-heading p{margin-top:3px;color:var(--muted);font-size:13px;line-height:1.45}.section-badge{display:grid;width:42px;height:42px;flex:0 0 auto;place-items:center;border-radius:50%;font-size:16px;font-weight:500}.badge-purple{background:var(--lilac);color:var(--purple)}.badge-coral{background:var(--coral);color:#d8221f}.details-panel .section-badge{font-size:21px}.field{display:grid;grid-gap:8px;gap:8px;min-width:0}.field>label{font-size:13px;font-weight:500}.field input,.text-answer{width:100%;border:1px solid transparent;border-radius:12px;outline:none;background:var(--field);color:#161616;box-shadow:0 4px 12px rgba(58,40,27,.04);transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.field input{height:52px;padding:0 16px}.field input:focus,.text-answer:focus{border-color:rgba(228,60,47,.38);background:white;box-shadow:var(--focus-ring),0 7px 16px rgba(58,40,27,.06)}.field input::placeholder,.text-answer::placeholder{color:#a5a0a0}.role-field{margin-bottom:20px;padding:18px;border:1px solid rgba(111,43,120,.14);border-radius:18px;background:linear-gradient(135deg,rgba(234,221,239,.55),rgba(255,248,239,.6))}.role-field>label{font-family:var(--font-display);font-size:18px;font-weight:600;letter-spacing:-.01em}.role-select{position:relative}.role-trigger{display:flex;width:100%;height:56px;align-items:center;justify-content:space-between;gap:12px;padding:0 18px 0 16px;border:1px solid transparent;border-radius:12px;background:white;box-shadow:0 4px 12px rgba(58,40,27,.04);color:#8d8682;cursor:pointer;font-size:15px;text-align:left;transition:border-color .2s ease,box-shadow .2s ease}.role-trigger.has-value{color:#161616;font-weight:500}.role-trigger span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.role-select.is-open .role-trigger,.role-trigger:focus-visible{border-color:rgba(228,60,47,.38);outline:none;box-shadow:var(--focus-ring),0 7px 16px rgba(58,40,27,.06)}.role-select.is-invalid .role-trigger{border-color:rgba(228,60,47,.55)}.role-chevron{width:20px;height:20px;flex:0 0 auto;fill:none;stroke:var(--purple);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s ease}.role-select.is-open .role-chevron{transform:rotate(180deg)}.role-list{position:absolute;z-index:30;top:calc(100% + 8px);right:0;left:0;display:grid;grid-gap:4px;gap:4px;margin:0;padding:8px;border:1px solid rgba(111,43,120,.14);border-radius:16px;background:white;box-shadow:0 22px 46px rgba(58,40,27,.14),0 4px 12px rgba(58,40,27,.06);list-style:none;animation:list-in .18s cubic-bezier(.22,1,.36,1) both}@keyframes list-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.role-option{display:flex;min-height:48px;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-radius:10px;color:#1f1f1f;cursor:pointer;font-size:15px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.role-option.is-active{background:var(--field)}.role-option.is-selected{background:var(--lilac);color:var(--purple);font-weight:500}.role-check{width:20px;height:20px;flex:0 0 auto;fill:none;stroke:var(--purple);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;opacity:0}.role-option.is-selected .role-check{opacity:1}.field-hint{color:var(--muted);font-size:12px;line-height:1.45}.details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.field-wide{grid-column:1/-1}.field-error,.question-error{color:var(--red-text);font-size:12px;font-weight:500}.has-error input{border-color:rgba(228,60,47,.55)}.empty-panel{display:flex;align-items:center;gap:18px;border:2px dashed rgba(23,23,23,.14);background:rgba(255,255,255,.45);box-shadow:none}.empty-illustration{width:96px;height:auto;flex:0 0 auto}.empty-panel p{color:var(--ink-soft);font-size:14px;line-height:1.5}.empty-panel strong{display:block;color:var(--ink);font-family:var(--font-display);font-size:19px;font-weight:600}.progress-bar{position:-webkit-sticky;position:sticky;z-index:10;top:12px;display:grid;grid-gap:8px;gap:8px;padding:12px 18px 14px;border:1px solid rgba(23,23,23,.08);border-radius:18px;background:rgba(255,255,255,.86);box-shadow:0 10px 26px rgba(58,40,27,.08);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.progress-copy{display:flex;justify-content:space-between;gap:12px;font-size:13px}.progress-copy strong{font-weight:500}.progress-copy span{color:var(--muted)}.progress-track{height:6px;overflow:hidden;border-radius:999px;background:#efe8e0}.progress-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ff2c27,#ef1c1c);transition:width .35s cubic-bezier(.22,1,.36,1)}.question-list{display:grid;grid-gap:14px;gap:14px}.question-card{min-width:0;margin:0;padding:20px;border:1px solid rgba(23,23,23,.07);border-radius:18px;background:#fdfcfa;scroll-margin:96px;transition:border-color .2s ease,box-shadow .2s ease}.question-card.is-missing{border-color:rgba(228,60,47,.5);box-shadow:0 0 0 3px rgba(243,38,32,.08)}.question-legend{display:flex;gap:12px;float:left;width:100%;margin-bottom:16px;padding:0}.question-legend+*{clear:both}.question-number{display:grid;width:30px;height:30px;flex:0 0 auto;place-items:center;border-radius:50%;background:#f1ebe4;color:var(--ink-soft);font-size:13px;font-weight:500;transition:background-color .2s ease,color .2s ease}.is-answered .question-number{background:var(--purple);color:white}.question-text{padding-top:4px;font-size:15.5px;font-weight:500;line-height:1.5}.question-error{margin-top:10px}.rating-option input,.yesno-option input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.rating-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:10px;gap:10px}.rating-option{--tone:#777;position:relative;display:flex;min-width:0;min-height:78px;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:10px 6px;border:1px solid color-mix(in srgb,var(--tone) 32%,white);border-radius:14px;background:linear-gradient(180deg,color-mix(in srgb,var(--tone) 4%,white),color-mix(in srgb,var(--tone) 10%,white));cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:transform .22s cubic-bezier(.22,1,.36,1),box-shadow .22s ease,background .2s ease,border-color .2s ease}.rating-option:hover{transform:translateY(-2px)}.rating-option:has(input:focus-visible){box-shadow:0 0 0 3px white,0 0 0 5px var(--tone)}.rating-option.is-selected{border-color:var(--tone);background:var(--tone);color:white;box-shadow:0 10px 20px color-mix(in srgb,var(--tone) 28%,transparent);transform:translateY(-2px)}.rating-number{font-family:var(--font-display);font-size:24px;font-weight:600;line-height:1}.rating-label{font-size:12px;line-height:1.2;text-align:center}.tone-gold{--tone:#e39400}.tone-purple{--tone:#8f4da2}.tone-pink{--tone:#f0355f}.tone-sand{--tone:#9a7d5d}.tone-red{--tone:#f02a20}.scale-ends{display:none;justify-content:space-between;margin-top:8px;color:var(--muted);font-size:11px}.yesno{display:grid;grid-gap:12px;gap:12px}.yesno-options{display:flex;gap:10px}.yesno-option{position:relative;display:inline-flex;min-width:128px;height:50px;align-items:center;justify-content:center;gap:10px;padding:0 22px;border:1px solid #e3dbd2;border-radius:999px;background:white;font-weight:500;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background .2s ease,color .2s ease,border-color .2s ease}.yesno-option:has(input:focus-visible){box-shadow:0 0 0 3px white,0 0 0 5px var(--purple)}.yesno-mark{display:grid;width:22px;height:22px;place-items:center;border-radius:50%;background:#f1ebe4;font-size:12px}.yesno-option.is-selected{border-color:var(--purple);background:var(--purple);color:white}.yesno-option.is-selected .yesno-mark{background:rgba(255,255,255,.2)}.text-answer{display:block;min-height:108px;padding:15px 16px;resize:vertical;font-size:14px;line-height:1.5}.submit-panel{display:grid;justify-items:center;grid-gap:12px;gap:12px;padding:8px 0 12px}.submit-button{display:flex;width:min(100%,420px);min-height:60px;align-items:center;justify-content:center;gap:12px;border:0;border-radius:999px;background:linear-gradient(135deg,#ff2c27,#ef1c1c);color:white;box-shadow:0 12px 24px rgba(225,32,27,.16);cursor:pointer;font-family:var(--font-display);font-size:18px;font-weight:600;letter-spacing:-.01em;transition:transform .18s ease,box-shadow .18s ease}.submit-button:hover{transform:translateY(-2px);box-shadow:0 15px 30px rgba(225,32,27,.23)}.submit-button:focus-visible{outline:3px solid white;box-shadow:0 0 0 6px var(--red)}.submit-button[disabled]{opacity:.62;cursor:progress;transform:none}.send-icon{width:22px;height:22px;flex:0 0 auto;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.submit-error{color:var(--red-text);font-size:13px;font-weight:500;text-align:center}.completion-screen{position:relative;display:flex;min-height:clamp(420px,52svh,620px);align-items:center;justify-content:center;flex-direction:column;margin-bottom:18px;padding:clamp(44px,7vw,88px) 24px;overflow:hidden;border-radius:34px;background:radial-gradient(circle at 22% 18%,rgba(255,210,94,.22),transparent 24%),radial-gradient(circle at 82% 26%,rgba(229,185,223,.42),transparent 27%),linear-gradient(145deg,rgba(255,255,255,.96),rgba(255,248,239,.88));box-shadow:0 28px 70px rgba(65,42,27,.12),0 6px 18px rgba(65,42,27,.055);text-align:center;animation:reveal .48s cubic-bezier(.22,1,.36,1) both}.completion-screen>*{position:relative;z-index:1}.completion-illustration{width:150px;height:auto;margin-bottom:18px;animation:float 6s ease-in-out infinite}.completion-eyebrow{margin-bottom:10px;color:var(--red);font-size:18px}.completion-eyebrow,.completion-screen h2{font-family:var(--font-display);font-weight:600}.completion-screen h2{font-size:clamp(44px,5vw,70px);letter-spacing:-.025em;line-height:1}.completion-copy{max-width:540px;margin-top:18px;color:var(--ink-soft);font-size:15px;line-height:1.6}footer{display:flex;align-items:center;gap:20px;min-height:86px;margin:16px 8px 0;padding-top:16px;border-top:1px solid var(--line)}footer strong{display:block;margin-bottom:2px;font-family:var(--font-display);font-size:19px;font-weight:600}footer p{color:var(--ink-soft);font-size:14px}.footer-heart{width:52px;height:auto;flex:0 0 auto}.submit-illustration{width:120px;height:auto;margin-bottom:-4px}@media (max-width:820px){.hero{grid-template-columns:1fr}.hero-art{position:absolute;z-index:3;top:-8px;right:0;min-height:0}.hero-illustration{width:96px}}@media (max-width:620px){.brand-logo{width:220px;margin-bottom:20px}.hero-lede{font-size:14px}.panel{padding:18px;border-radius:22px}.details-grid{grid-template-columns:1fr}.role-field{margin-inline:-4px;padding:14px 12px}.role-trigger{padding:0 14px 0 12px}.role-option,.role-trigger{font-size:14px}.question-card{padding:16px}.question-text{font-size:14.5px}.rating-options{gap:6px}.rating-option{min-height:56px}.rating-label{display:none}.scale-ends{display:flex}.yesno-option{flex:1 1;min-width:0}.empty-panel{align-items:flex-start}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;transition:none!important;scroll-behavior:auto!important}}