@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#25231e;background:#faf9f5;font-synthesis:none}*{box-sizing:border-box}body{margin:0}header,main,footer{max-width:1200px;margin:auto;padding:24px}header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ddd9cf;font-size:14px}header img{width:100px;height:auto}.intro{max-width:760px;padding:56px 0 32px}.eyebrow{font-size:12px;letter-spacing:.14em;color:#746b56}h1{font-size:clamp(32px,5vw,60px);letter-spacing:-.045em;line-height:1.06;margin:16px 0 24px}p{line-height:1.6}section{margin-bottom:40px}.muted{font-size:13px;color:#706c62}.toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}#directions{display:flex;flex-wrap:wrap;gap:6px}button,select,input,textarea{font:inherit}button,select{padding:10px 14px;border:1px solid #d7d3c8;border-radius:9px;background:white;cursor:pointer}button[aria-pressed=true]{background:#28261f;color:white;border-color:#28261f}.stage{height:650px;position:relative;overflow:hidden;background:#e9e6de;border:1px solid #d7d3c8;border-radius:16px}#device-shell{position:absolute;left:50%;top:50%;transform-origin:center;box-shadow:0 12px 40px #0002;overflow:hidden;border-radius:12px}iframe{border:0;display:block;background:#faf9f5}.feedback{max-width:760px;margin:56px auto}h2{font-size:32px;letter-spacing:-.03em}fieldset{border:1px solid #dedacf;border-radius:14px;padding:20px;margin:20px 0}legend{font-weight:600;padding:0 6px}.score{display:flex;gap:8px;margin:10px 0 20px}.score label{display:flex;gap:5px;align-items:center;border:1px solid #d7d3c8;border-radius:8px;padding:10px;cursor:pointer}label{display:block;font-size:14px}input:not([type=radio]):not([type=checkbox]),textarea{display:block;width:100%;border:1px solid #d7d3c8;border-radius:8px;background:white;padding:12px;margin:7px 0 18px}textarea{resize:vertical}.consent{display:flex;align-items:flex-start;gap:8px;line-height:1.5}.submit{background:#28261f;color:white;padding:14px 24px}button:disabled{opacity:.6;cursor:wait}a{color:inherit}footer{font-size:13px;color:#706c62;border-top:1px solid #dedacf}@media(max-width:600px){header,main,footer{padding:18px}.intro{padding-top:24px}.stage{height:550px}#directions button{font-size:12px;padding:9px}.score label{padding:8px}fieldset{padding:14px}}
