:root{--green:#087651;--ink:#17211d;--muted:#718078;--line:#dfe7e2;--bg:#f3f6f4;--red:#b4433c}*{box-sizing:border-box}body{margin:0;font-family:"Segoe UI","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--bg);letter-spacing:0}button,input,select,textarea{font:inherit}.survey-head{background:#153027;color:white;padding:28px 20px}.survey-head>div,.form-wrap{max-width:920px;margin:auto}.survey-head h1{font-size:27px;margin:8px 0}.survey-head p{color:#c3d2ca;margin:0}.secure{font-size:11px;color:#8ed1b2}.form-wrap{padding:20px}.form-section{background:white;border:1px solid var(--line);border-radius:7px;margin-bottom:14px;overflow:hidden}.section-title{padding:15px 18px;border-bottom:1px solid var(--line);display:flex;gap:10px;align-items:center}.section-title b{background:#e3f1ea;color:var(--green);width:25px;height:25px;border-radius:5px;display:grid;place-items:center}.section-title h2{font-size:15px;margin:0}.fields{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:18px}.field{display:grid;gap:6px}.field.full{grid-column:1/-1}.field label{font-size:12px;font-weight:600}.field input,.field select,.field textarea{width:100%;border:1px solid #ced9d3;border-radius:5px;padding:10px;background:white}.field textarea{min-height:78px;resize:vertical}.field small{color:var(--muted);font-size:10px}.req{color:#c23d34}.checks{display:flex;flex-wrap:wrap;gap:8px}.checks label{font-weight:400;border:1px solid var(--line);border-radius:5px;padding:8px 10px;cursor:pointer}.checks input{width:auto;margin-right:5px}.submit{width:100%;border:0;background:var(--green);color:white;padding:14px;border-radius:6px;font-weight:700;cursor:pointer}.submit:disabled{opacity:.6}.notice{text-align:center;font-size:11px;color:var(--muted);margin:12px}.success{display:none;background:white;padding:50px;text-align:center;border-radius:7px}.success h2{color:var(--green)}.admin-shell{display:grid;grid-template-columns:220px 1fr;min-height:100vh}.side{background:#16231e;color:white;padding:22px 14px}.brand{font-size:18px;font-weight:700;margin-bottom:30px}.brand small{display:block;font-size:10px;color:#87978f;margin-top:4px}.side nav{display:grid;gap:5px}.side nav button{background:transparent;border:0;color:#adbbb4;text-align:left;padding:11px;border-radius:5px}.side nav .active{background:#293a33;color:white}.side .logout{position:fixed;bottom:20px;border:1px solid #405047;background:transparent;color:#bec9c3;padding:8px 15px;border-radius:5px}.admin-main{min-width:0}.admin-top{background:white;border-bottom:1px solid var(--line);padding:18px 25px;display:flex;justify-content:space-between;align-items:center}.admin-top h1{font-size:20px;margin:0}.admin-top p{font-size:11px;color:var(--muted);margin:4px 0 0}.btn{border:1px solid var(--line);background:white;border-radius:5px;padding:9px 12px;cursor:pointer}.btn.primary{background:var(--green);color:white;border-color:var(--green)}.admin-body{padding:18px 25px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}.metric{background:white;border:1px solid var(--line);border-radius:6px;padding:14px}.metric span,.metric small{display:block;color:var(--muted);font-size:10px}.metric strong{display:block;font-size:22px;margin:6px 0}.data-panel{background:white;border:1px solid var(--line);border-radius:6px}.filters{padding:12px;display:flex;gap:8px;border-bottom:1px solid var(--line)}.filters input,.filters select{border:1px solid var(--line);border-radius:5px;padding:9px}.filters input{flex:1}.admin-content{display:grid;grid-template-columns:390px 1fr;height:calc(100vh - 260px);min-height:520px}.people{border-right:1px solid var(--line);overflow:auto}.person{padding:13px;border-bottom:1px solid #edf1ee;cursor:pointer}.person:hover,.person.active{background:#eef6f2}.person strong,.person small{display:block}.person small{color:var(--muted);margin-top:4px}.person-meta{display:flex;justify-content:space-between;font-size:10px;margin-top:8px}.badge{padding:3px 6px;border-radius:9px;background:#e7f2ec;color:var(--green)}.detail{overflow:auto;background:#fafcfb}.empty{height:100%;display:grid;place-items:center;color:var(--muted)}.detail-head{background:white;padding:18px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between}.detail-head h2{margin:0 0 5px;font-size:18px}.detail-head p{margin:0;color:var(--muted);font-size:11px}.detail-body{padding:14px}.card{background:white;border:1px solid var(--line);border-radius:6px;margin-bottom:10px}.card h3{font-size:12px;padding:11px 13px;margin:0;border-bottom:1px solid var(--line)}.kv{display:grid;grid-template-columns:repeat(3,1fr);padding:8px 13px}.kv div{padding:8px 5px}.kv label,.kv span{display:block;font-size:11px}.kv label{color:var(--muted);font-size:9px;margin-bottom:4px}.raw{padding:13px;display:grid;gap:9px}.raw div{font-size:11px}.raw b{display:block;color:var(--muted);font-size:9px;margin-bottom:3px}.manage{display:grid;grid-template-columns:140px 140px 1fr auto;gap:8px;padding:12px}.manage select,.manage textarea{border:1px solid var(--line);border-radius:5px;padding:8px}.login{min-height:100vh;display:grid;place-items:center}.login-card{width:360px;background:white;border:1px solid var(--line);border-radius:7px;padding:25px}.login-card h1{font-size:20px}.login-card label{display:grid;gap:5px;font-size:11px;margin:12px 0}.login-card input{padding:10px;border:1px solid var(--line);border-radius:5px}.login-card button{width:100%;margin-top:10px}.error{color:var(--red);font-size:11px;min-height:16px}@media(max-width:800px){.fields{grid-template-columns:1fr}.field.full{grid-column:auto}.admin-shell{display:block}.side{display:none}.metrics{grid-template-columns:1fr 1fr}.admin-content{display:block;height:auto}.people{border:0}.detail{position:fixed;inset:0;z-index:4;display:none}.detail.open{display:block}.kv{grid-template-columns:1fr 1fr}.manage{grid-template-columns:1fr}}
[hidden]{display:none!important}
.ding-btn{display:block;text-align:center;text-decoration:none;color:#1677ff;border-color:#1677ff;margin-top:8px}
.survey-head{display:none}.report-promo{background:#17679f;color:white;padding:38px 20px 0}.promo-inner{max-width:920px;margin:auto;text-align:center}.promo-secure{display:inline-block;border:1px solid #ffffff66;background:#ffffff14;border-radius:20px;padding:7px 15px;font-size:11px}.report-promo h1{font-size:36px;line-height:1.35;margin:24px 0 12px}.promo-intro{color:#dbeeff;font-size:14px;line-height:1.9;margin:0}.report-benefit{max-width:680px;margin:24px auto 20px;border:1px solid #ffffff66;background:#ffffff17;padding:17px 20px;border-radius:7px}.report-benefit strong,.report-benefit b,.report-benefit small{display:block}.report-benefit strong{font-size:14px}.report-benefit b{font-size:18px;margin-top:4px}.report-benefit small{font-size:10px;color:#dbeeff;margin-top:6px}.survey-progress{position:relative;top:34px;background:white;color:#3b4742;border-radius:7px;padding:16px 20px;box-shadow:0 8px 24px #123d5f2b;text-align:left}.survey-progress span{display:flex;justify-content:space-between;font-size:12px}.survey-progress i{display:block;height:8px;background:#e8edf0;border-radius:4px;margin-top:10px;overflow:hidden}.survey-progress em{display:block;width:0;height:100%;background:#d9a62e;transition:width .25s}.form-wrap{padding-top:58px}.report-reader{margin-top:28px;text-align:left}.report-reader>header{position:sticky;top:0;z-index:2;background:#153027;color:white;padding:14px 18px;display:flex;justify-content:space-between;align-items:center;border-radius:6px}.report-reader header span,.report-reader header p{font-size:10px;color:#a9c9ba}.report-reader header h2{font-size:17px;margin:3px 0}.report-reader header p{margin:0}.report-reader header>b{font-size:24px}.report-reader header small{display:block;font-size:9px;text-align:center}.report-pages{display:grid;gap:18px;background:#d9dfdc;padding:18px}.report-pages figure{margin:0}.report-pages img{display:block;width:100%;height:auto;background:white;box-shadow:0 2px 12px #18231e26;user-select:none}.report-pages figcaption{text-align:center;color:#58635e;font-size:10px;margin-top:6px}@media(max-width:650px){.report-promo{padding-top:28px}.report-promo h1{font-size:27px;margin-top:20px}.promo-intro{font-size:12px}.report-benefit{margin-top:18px}.report-benefit b{font-size:15px}.survey-progress{top:28px}.form-wrap{padding-top:48px}.success{padding:20px 10px}.report-reader>header{position:static}.report-pages{padding:8px;gap:10px}}
