.gdqb{--ink:#1f2430;--mute:#6b7280;--line:#e5ded3;--card:#fff;--bg:#faf7f2;--err:#b91c1c;--acc2:color-mix(in srgb,var(--acc) 10%,#fff);max-width:760px;margin:0 auto;color:var(--ink);font:16px/1.5 inherit;box-sizing:border-box}
.gdqb *{box-sizing:border-box}
.gdqb .gq-bar{height:8px;background:var(--line);border-radius:99px;overflow:hidden}
.gdqb .gq-bar i{display:block;height:100%;width:0;background:var(--acc);transition:width .3s}
.gdqb .gq-info{display:flex;justify-content:space-between;font-size:.85rem;color:var(--mute);margin:8px 0 14px}
.gdqb .gq-card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px}
.gdqb h2{margin:0 0 4px;font-size:1.3rem;color:var(--ink)}
.gdqb .gq-sub{color:var(--mute);margin:0 0 16px;font-size:.92rem}
.gdqb section{display:none}.gdqb section.on{display:block;position:relative}
.gdqb .gq-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}
.gdqb .gq-opt{position:relative;display:block;margin:0}
.gdqb .gq-opt input{position:absolute;opacity:0;inset:0;cursor:pointer;margin:0;width:100%;height:100%}
.gdqb .gq-opt span{display:flex;align-items:center;gap:10px;padding:12px 14px;border:2px solid var(--line);border-radius:10px;background:var(--card);min-height:48px;color:var(--ink)}
.gdqb .gq-opt input:checked+span{border-color:var(--acc);background:var(--acc2);font-weight:600}
.gdqb .gq-opt input:focus-visible+span{outline:3px solid var(--acc);outline-offset:2px}
.gdqb .gq-sw{width:22px;height:22px;border-radius:50%;border:1px solid var(--mute);flex:none;display:inline-block}
.gdqb .gq-f{display:block;font-weight:600;font-size:.9rem;margin:14px 0 4px;color:var(--ink)}
.gdqb input[type=text],.gdqb input[type=email],.gdqb input[type=tel],.gdqb input[type=date],.gdqb input[type=number],.gdqb select,.gdqb textarea{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);font:inherit;margin:0}
.gdqb textarea{min-height:80px;resize:vertical}
.gdqb .gq-sizes{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px}
.gdqb .gq-sizes label{font-weight:600;font-size:.85rem;display:block}.gdqb .gq-sizes input{text-align:center}
.gdqb .gq-total{margin-top:14px;padding:12px 14px;background:var(--acc2);border-radius:10px;font-weight:700}
.gdqb .gq-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.gdqb .gq-loc{padding:12px;border:1px dashed var(--line);border-radius:10px;margin-top:10px}.gdqb .gq-loc b{display:block;margin-bottom:6px}
.gdqb .gq-drop{border:2px dashed var(--line);border-radius:12px;padding:24px;text-align:center;color:var(--mute);cursor:pointer;display:block}
.gdqb .gq-drop.over{border-color:var(--acc);background:var(--acc2)}.gdqb .gq-drop input{display:none}
.gdqb .gq-files{list-style:none;padding:0;margin:10px 0 0}
.gdqb .gq-files li{display:flex;justify-content:space-between;gap:8px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;margin-top:6px;font-size:.9rem}
.gdqb .gq-files button{border:0;background:none;color:var(--err);cursor:pointer;font-weight:700}
.gdqb .gq-err{color:var(--err);font-size:.88rem;margin-top:10px;min-height:1.2em}
.gdqb .gq-nav{display:flex;justify-content:space-between;gap:10px;margin-top:20px}
.gdqb .gq-b{padding:12px 22px;border-radius:10px;border:2px solid var(--acc);background:var(--acc);color:#fff;font:inherit;font-weight:700;cursor:pointer}
.gdqb .gq-b.gq-g{background:transparent;color:var(--acc)}.gdqb .gq-b:disabled{opacity:.6;cursor:wait}
.gdqb .gq-rev{border:1px solid var(--line);border-radius:10px;padding:12px 14px;margin-top:10px;display:flex;justify-content:space-between;gap:12px}
.gdqb .gq-rev h3{margin:0 0 4px;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--mute)}
.gdqb .gq-rev button{align-self:flex-start;border:1px solid var(--acc);background:none;color:var(--acc);border-radius:8px;padding:4px 12px;font-weight:700;cursor:pointer}
.gdqb .gq-done{text-align:center;padding:12px 0}.gdqb .gq-qn{font-size:2rem;font-weight:800;color:var(--acc);margin:8px 0 16px}
.gdqb .gq-hint{font-size:.82rem;color:var(--mute)}
@media(max-width:520px){.gdqb .gq-row{grid-template-columns:1fr}}
