.source-survey{color-scheme:dark;box-sizing:border-box;width:min(760px,calc(100% - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:30px 36px 36px;border:1px solid #343639;border-radius:28px;background:#111214;color:#f2f0ec;overflow:auto;box-shadow:0 28px 100px #0008;font-family:inherit}
.source-survey::backdrop{background:rgb(0 0 0 / .72);backdrop-filter:blur(14px)}
.source-survey *{box-sizing:border-box}
.source-survey header{position:static;display:block;padding:0;background:none;border:0;backdrop-filter:none}
.source-survey .survey-eyebrow{margin:0 0 12px;color:#aaa9a6;font-size:10px;letter-spacing:2px;font-weight:500}
.source-survey h2{margin:0;font-size:28px;line-height:1.35;font-weight:500;letter-spacing:-.7px;color:#f2f0ec}
.source-survey .survey-intro{margin:8px 0 18px;color:#aaa9a6;font-size:14px;line-height:1.65}
.source-survey fieldset{min-width:0;margin:0;padding:0;border:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.survey-card{position:relative;display:block;min-width:0;cursor:pointer}
.survey-card input{position:absolute;width:1px;height:1px;opacity:0}
.survey-card .survey-tile{display:flex;align-items:center;flex-direction:column;overflow:hidden;background:#0d0e11;border:1px solid #2b2c30;border-radius:16px;padding:0 8px 15px;transition:border-color .18s,background .18s,transform .18s}
.survey-card img{display:block;width:100%;height:116px;object-fit:contain;mix-blend-mode:lighten;pointer-events:none;transition:transform .25s}
.survey-card .survey-label{font-size:15px;line-height:1.5;font-weight:500;color:#e9e7e3}
.survey-card .survey-hint{font-size:11px;color:#8e8e92;margin-top:3px;text-align:center;line-height:1.4}
.survey-card .survey-check{position:absolute;right:11px;top:11px;width:18px;height:18px;border:1px solid #414247;border-radius:50%;display:grid;place-items:center;color:transparent;font-size:12px}
.survey-card input:checked+.survey-tile{border-color:#d7d2c8;background:#222326}
.survey-card input:checked+.survey-tile .survey-check{color:#141414;background:#f0ede5;border-color:#f0ede5}
.survey-card input:focus-visible+.survey-tile{outline:2px solid #f0ede5;outline-offset:3px}
@media(hover:hover){.survey-card:hover .survey-tile{border-color:#6b6b70}.survey-card:hover img{transform:translateY(-3px) rotate(-2deg)}}
.survey-actions{display:flex;gap:20px;align-items:center;margin-top:20px}
.source-survey button{font-family:inherit;cursor:pointer}
.survey-submit{flex:1;border:0;border-radius:100px;background:#f2f0ec;color:#111214;font-weight:600;font-size:15px;padding:15px 20px;min-height:48px}
.survey-submit:disabled{opacity:.4;cursor:default}
.survey-skip{border:0;background:transparent;color:#aaa9a6;padding:12px 0;font-size:13px}
.survey-skip:hover{color:#fff}
.survey-note{font-size:11px;line-height:1.5;color:#818185;text-align:center;margin:18px 0 0}
.survey-status{font-size:13px;line-height:1.5;color:#dfb5a2;margin:12px 0 0}
.survey-status:empty{display:none}
.survey-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(max-width:540px){.source-survey{padding:24px 18px;border-radius:22px}.source-survey h2{font-size:24px}.source-survey .survey-intro{font-size:13px;margin-bottom:18px}.source-survey fieldset{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.survey-card img{height:98px}.survey-card .survey-label{font-size:14px}.survey-card .survey-tile{padding-bottom:12px}.survey-card .survey-hint{font-size:10px}.survey-actions{gap:14px;margin-top:18px}.survey-submit{font-size:14px;padding:12px}.survey-skip{font-size:12px}}
/* Short laptop viewports need space below the note, not just a scrollable last line. */
@media(min-width:541px) and (max-height:740px){.source-survey{padding:24px 32px 32px}.source-survey .survey-eyebrow{margin-bottom:10px}.source-survey .survey-intro{margin-bottom:16px}.survey-card img{height:96px}.survey-card .survey-tile{padding-bottom:12px}.survey-actions{margin-top:18px}}
@media(max-width:540px){.source-survey{padding-bottom:32px}}
@media(prefers-reduced-motion:reduce){.survey-card .survey-tile,.survey-card img{transition:none}}
