:root{--bg: #f5f3ef;--card: #ffffff;--text: #1f2933;--muted: #5f6b76;--border: #e2ddd5;--accent: #e8700a;--accent-strong: #c75d00;--accent-soft: #fff3e8;--green: #138a4b;--error: #c62828;--error-soft: #fdecea;--radius: 12px;--bg-image-opacity: .16;--bar: #d9660a;--track: #f1ede7;--grid: #ece7df;color-scheme:light}@media(prefers-color-scheme:dark){:root{--bg: #15181b;--card: #1f2327;--text: #e8eaed;--muted: #a0a8b0;--border: #343a40;--accent: #ff8c2a;--accent-strong: #ffa04f;--accent-soft: #3a2817;--green: #3cc47c;--error: #ff6b6b;--error-soft: #3b1f1f;--bg-image-opacity: .05;--bar: #d9731f;--track: #2a2f34;--grid: #30363c;color-scheme:dark}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:url(/background.jpg) center / cover no-repeat;opacity:var(--bg-image-opacity);pointer-events:none}.container{max-width:760px;margin:0 auto;padding:24px 16px 48px}.survey-header{display:flex;align-items:center;gap:16px;padding:8px 4px 20px;border-bottom:3px solid var(--accent);margin-bottom:20px}.logo{flex:none;width:92px;height:auto}.eyebrow{margin:0 0 6px;font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}h1{margin:0;font-size:clamp(22px,5vw,30px);line-height:1.2}.subtitle{margin:6px 0 0;color:var(--accent-strong);font-weight:600}h2{margin:0 0 12px;font-size:21px}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:24px;margin-bottom:16px}.center{text-align:center}.presentation{text-align:left}.presentation-title{text-align:center;text-transform:uppercase;font-size:clamp(20px,4.5vw,26px);font-weight:800;letter-spacing:.01em}.presentation-subtitle{text-align:center;color:var(--muted);font-size:18px;margin:6px 0 18px}.intro{margin-top:0;font-style:italic}.intro-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}.facts{display:flex;flex-wrap:wrap;gap:8px 20px;padding:0;list-style:none;color:var(--muted)}.notice{background:var(--accent-soft);padding:12px 14px;border-radius:8px}.note{margin-top:-4px;color:var(--muted);font-style:italic}.survey-list{display:grid;gap:16px}.survey-link{display:block;color:inherit;text-decoration:none;transition:border-color .15s,transform .15s}.survey-link:hover{border-color:var(--accent);transform:translateY(-1px)}.survey-link p{color:var(--muted);margin:0 0 12px}.go{color:var(--accent-strong);font-weight:600}.progress{margin-bottom:12px}.progress-text{font-size:14px;color:var(--muted);margin-bottom:6px}.progress-bar{height:6px;background:var(--border);border-radius:3px;overflow:hidden}.progress-bar>div{height:100%;background:var(--accent);transition:width .25s}.question{border:0;padding:0;margin:0 0 28px;min-width:0}.question legend{padding:0;font-weight:600;margin-bottom:10px}.q-code{color:var(--accent-strong);margin-right:4px}.req{color:var(--error)}.optional{color:var(--muted);font-weight:400;font-size:14px}.hint{margin:-4px 0 10px;font-size:14px;color:var(--muted)}.choices{display:grid;gap:8px}.choice{display:flex;flex-wrap:wrap;align-items:center;gap:8px;border:1px solid var(--border);border-radius:8px;padding:10px 12px;transition:border-color .15s,background .15s}.choice>label{display:flex;align-items:center;gap:10px;cursor:pointer;flex:1 1 auto}.choice:hover{border-color:var(--accent)}.choice.selected{border-color:var(--accent);background:var(--accent-soft)}.choice input[type=radio],.choice input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent);flex:none;margin:0}.other-input{display:inline-flex;align-items:center;gap:6px;flex:1 1 180px}.other-input input,.text-input,textarea{width:100%;font:inherit;color:var(--text);background:var(--card);border:1px solid var(--border);border-radius:6px;padding:8px 10px}.other-input input:focus,.text-input:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:0;border-color:transparent}.unit{color:var(--muted);font-size:14px;white-space:nowrap}textarea{resize:vertical}.counter{text-align:right;font-size:12px;color:var(--muted)}.numbers{display:grid;gap:10px}.number-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.number-row .other-input{flex:0 1 200px}.ranking{display:grid;gap:10px}.rank-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:8px 0;border-bottom:1px solid var(--border)}.rank-label{flex:1 1 200px}.rank-buttons{display:flex;gap:6px}.rank-btn{width:38px;height:38px;border-radius:50%;font:inherit;font-weight:600;cursor:pointer;border:1px solid var(--border);background:var(--card);color:var(--text)}.rank-btn:hover{border-color:var(--accent)}.rank-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.has-error .choice,.has-error textarea,.has-error .text-input{border-color:var(--error)}.error{color:var(--error);font-size:14px;margin:8px 0 0}.error.banner{background:var(--error-soft);padding:10px 14px;border-radius:8px}.actions{display:flex;justify-content:space-between;gap:12px;margin-top:8px}.btn{font:inherit;font-weight:600;padding:12px 20px;border-radius:8px;cursor:pointer;border:1px solid var(--border);background:var(--card);color:var(--text)}.btn:hover:not(:disabled){border-color:var(--accent)}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover:not(:disabled){background:var(--accent-strong)}.btn:disabled{opacity:.6;cursor:wait}.btn:focus-visible,.rank-btn:focus-visible,.link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.draft-note{font-size:13px;color:var(--muted);text-align:center}.link{background:none;border:0;padding:0;font:inherit;color:var(--accent-strong);text-decoration:underline;cursor:pointer}.check{width:64px;height:64px;margin:0 auto 12px;border-radius:50%;background:var(--green);color:#fff;font-size:34px;line-height:64px}.footer{margin-top:32px;text-align:center;font-size:12px;color:var(--muted)}@media(max-width:480px){.survey-header{flex-direction:column;align-items:flex-start;gap:10px}.logo{width:72px}.card{padding:18px 16px}.rank-btn{width:34px;height:34px}.rank-buttons{gap:4px}}
