:root{--font-display: "Futura", "Futura PT", "Avenir Next", Avenir, "Century Gothic", ui-sans-serif, system-ui, sans-serif;--font-body: "Aptos", "Inter", "SF Pro Text", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--page: #f6f4ef;--card: #ffffff;--text: #25302a;--muted: #667068;--heading: #2f3d33;--primary: #89a48b;--primary-readable: #53634d;--primary-tint: #eef3ec;--accent: #b89fbd;--accent-tint: #f5f0f6;--border: #e3ded4;--field-border: #cfd6cc;--on-primary: #17201b;--star: #f6d77e;--star-edge: #d4a73c;--star-empty: #c9cfc6;font-family:var(--font-body);color:var(--text);background:var(--page);line-height:1.5}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,textarea{font:inherit}a{color:var(--primary-readable)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.feedback-app{display:flex;flex-direction:column;min-height:100vh;background:radial-gradient(circle at top right,color-mix(in srgb,var(--accent) 22%,transparent),transparent 30rem),radial-gradient(circle at 6% 30%,color-mix(in srgb,var(--primary) 18%,transparent),transparent 26rem),var(--page)}.brand-header{padding:1rem clamp(1rem,4vw,2.5rem);border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--card) 85%,transparent)}.brand-header a{display:inline-flex;gap:.75rem;align-items:center;color:inherit;text-decoration:none}.brand-icon{display:block;width:2.75rem;height:2.75rem;border-radius:.75rem}.brand-header strong,.brand-header small{display:block}.brand-header strong{color:var(--heading);font-family:var(--font-display)}.brand-header small{color:var(--primary-readable);font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}main{flex:1;width:min(42rem,calc(100% - 2rem));margin:0 auto;padding:clamp(1.5rem,5vw,3.5rem) 0}.card{padding:clamp(1.25rem,4vw,2.25rem);border:1px solid var(--border);border-radius:1.25rem;background:var(--card);box-shadow:0 14px 40px color-mix(in srgb,var(--primary) 12%,transparent)}h1{margin:0 0 .75rem;color:var(--heading);font-family:var(--font-display);font-size:clamp(1.7rem,5.5vw,2.4rem);line-height:1.15}.introduction{margin:0 0 1.5rem;color:var(--muted)}.form-body{display:grid;gap:1.5rem;margin:0;padding:0;border:0;min-width:0}.question{display:grid;gap:.45rem;margin:0;padding:0;border:0;min-width:0}.question>label,.question>legend,.contact-section>legend{padding:0;font-weight:700}.required-mark{color:#8b2d32}.optional-mark{color:var(--muted);font-weight:400}.field-hint{margin:0;color:var(--muted);font-size:.9rem}input[type=text],input[type=email],input:not([type]),textarea{width:100%;min-height:3rem;padding:.75rem;border:1px solid var(--field-border);border-radius:.7rem;color:var(--text);background:#fcfcfa}textarea{resize:vertical}input:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid var(--primary-readable);outline-offset:2px}.rating-question legend{margin-bottom:.45rem}.star-scale{display:flex;gap:.35rem;width:fit-content}.star-option{position:relative;display:block;cursor:pointer}.star-option input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}.star-option svg{display:block;width:2.75rem;height:2.75rem;fill:transparent;stroke:var(--star-empty);stroke-width:1.4;stroke-linejoin:round;transition:fill .12s,stroke .12s,transform .12s}.star-option.is-filled svg{fill:var(--star);stroke:var(--star-edge)}.star-option:hover svg{transform:scale(1.08)}.star-option input:focus-visible+svg{outline:3px solid var(--primary-readable);outline-offset:2px;border-radius:.4rem}.rating-labels{display:flex;justify-content:space-between;width:15.25rem;max-width:100%;color:var(--muted);font-size:.85rem}.choice-question legend{margin-bottom:.45rem}.choice-list{display:grid;gap:.5rem}.choice-option{display:flex;gap:.7rem;align-items:center;padding:.75rem .9rem;border:1px solid var(--field-border);border-radius:.7rem;background:#fcfcfa;cursor:pointer;transition:background-color .15s,border-color .15s}.choice-option:hover{border-color:var(--primary)}.choice-option:has(input:checked){border-color:var(--primary-readable);background:var(--primary-tint)}.choice-option input{flex:0 0 auto;width:1.2rem;height:1.2rem;margin:0;accent-color:var(--primary-readable)}.contact-section{display:grid;gap:.45rem;margin:0;padding:1.1rem;border:1px solid var(--border);border-radius:.9rem;background:var(--accent-tint);min-width:0}.contact-section>legend{float:left;width:100%;font-size:1.05rem}.contact-section>label{margin-top:.4rem;font-weight:600}.checkbox-label{display:flex;gap:.6rem;align-items:flex-start;margin-top:.6rem;font-weight:600;cursor:pointer}.checkbox-label input{flex:0 0 auto;width:1.25rem;height:1.25rem;margin:.15rem 0 0;accent-color:var(--primary-readable)}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.primary-button{justify-self:start;min-height:3rem;padding:.75rem 1.6rem;border:1px solid transparent;border-radius:.75rem;color:var(--on-primary);background:var(--primary);font-weight:700;cursor:pointer}.primary-button:hover{background:color-mix(in srgb,var(--primary) 88%,black)}button:disabled,fieldset:disabled .primary-button{cursor:progress;opacity:.6}.error-panel{margin:0;padding:.8rem 1rem;border-radius:.7rem;color:#79262b;background:#f9e4e5}.privacy-note{margin:0;color:var(--muted);font-size:.85rem}.confirmation{text-align:center}.success-mark{display:grid;place-items:center;width:4rem;height:4rem;margin:0 auto 1rem;border-radius:50%;color:var(--on-primary);background:var(--primary);font-size:2rem}.site-footer{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;justify-content:center;padding:1.5rem 1rem 2rem;color:var(--muted);font-size:.85rem}@media(prefers-reduced-motion:reduce){.star-option svg,.choice-option{transition:none}.star-option:hover svg{transform:none}}
