:root{--sbti-bg:#f6faf6;--sbti-panel:#fff;--sbti-text:#1e2a22;--sbti-muted:#5a6e60;--sbti-line:#dbe8dd;--sbti-soft:#edf6ef;--sbti-accent:#6c8d71;--sbti-accent-strong:#3d5c43;--sbti-shadow:0 16px 40px #2f493714;--sbti-radius:22px;--bg:#f6faf6;--panel:#fff;--text:#1e2a22;--muted:#6a786f;--line:#dbe8dd;--soft:#edf6ef;--accent:#6c8d71;--accent-strong:#4d6a53;--shadow:0 16px 40px #2f493714;--radius:22px}.sbti-wrapper{--bg:var(--sbti-bg);--panel:var(--sbti-panel);--text:var(--sbti-text);--muted:var(--sbti-muted);--line:var(--sbti-line);--soft:var(--sbti-soft);--accent:var(--sbti-accent);--accent-strong:var(--sbti-accent-strong);--shadow:var(--sbti-shadow);--radius:var(--sbti-radius);background:var(--sbti-bg);color:var(--sbti-text);width:100%;min-height:100vh}.sbti-wrapper *{box-sizing:border-box}.shell{max-width:980px;margin:0 auto;padding:24px 16px 56px}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.hero{margin-top:20px;padding:28px;position:relative;overflow:hidden}.hero:after{content:"";pointer-events:none;background:linear-gradient(#7fa5862e,#7fa58605);border-radius:50%;width:180px;height:180px;position:absolute;top:-60px;right:-60px}.eyebrow{color:var(--accent-strong);border:1px solid var(--line);background:var(--soft);border-radius:999px;align-items:center;gap:8px;margin-bottom:16px;padding:8px 12px;font-size:12px;display:inline-flex}h1,h2,h3,p{margin:0}.hero h1{letter-spacing:-.03em;max-width:680px;font-size:clamp(28px,5vw,52px);line-height:1.08}.hero .sub{color:#5a6e60;max-width:720px;margin-top:14px;font-size:15px;line-height:1.75}.hero-grid{grid-template-columns:1.3fr .9fr;align-items:stretch;gap:18px;margin-top:24px;display:grid}.mini-panel{background:linear-gradient(#f6fbf7,#eef6ef);border:1px solid #ccddd0;border-radius:18px;padding:18px}.mini-panel h3{color:#1e2a22;margin-bottom:10px;font-size:15px}.mini-panel ul{color:#5a6e60;margin:0;padding-left:18px;font-size:14px;line-height:1.8}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:22px;display:flex}.hero-minimal{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:48vh;padding:42px 20px;display:flex}.hero-minimal:after{display:none}.hero-minimal h1{max-width:none;margin:0}.hero-actions-single{justify-content:center;margin-top:28px}button{cursor:pointer;font:inherit;border:0;transition:transform .16s,box-shadow .16s,opacity .16s}button:hover{transform:translateY(-1px)}button:disabled{cursor:not-allowed;opacity:.55;transform:none}.btn-primary{color:#fff;background:#3d5c43;border-radius:14px;padding:12px 20px;font-size:14px;font-weight:700;box-shadow:0 8px 24px #3d5c4338}.btn-secondary{color:#3d5c43;background:#fff;border:1.5px solid #ccddd0;border-radius:14px;padding:12px 18px;font-size:14px;font-weight:700}.btn-ghost{color:#5a6e60;background:0 0;border:1px solid #dbe8dd;border-radius:14px;padding:12px 16px;font-size:14px;font-weight:600}.btn-ghost:hover{color:#1e2a22;background:#f2faf4}.screen{display:none}.screen.active{display:block}.test-wrap,.result-wrap{margin-top:22px;padding:22px}.topbar{margin-bottom:10px}.progress-bar-wrap{align-items:center;gap:14px;display:flex}.progress-bar-track{background:#dde9df;border-radius:999px;flex:1;height:10px;overflow:hidden}.progress-bar-fill{border-radius:inherit;background:linear-gradient(90deg,#8db594,#3d5c43);height:100%;transition:width .3s}.progress-bar-label{color:#5a6e60;white-space:nowrap;text-align:right;min-width:90px;font-size:13px}.progress-bar-label strong{color:#3d5c43}.step-indicator{color:#5a6e60;letter-spacing:.02em;margin:14px 0 18px;font-size:13px}.step-num{color:#3d5c43;font-size:22px;font-weight:800;line-height:1}.question-solo{background:#fff;border:1px solid #ccddd0;border-radius:18px;padding:24px 22px}.question-meta{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.dim-label{color:#5a6e60;font-size:12px}.badge{color:#3d5c43;background:#edf6ef;border:1px solid #ccddd0;border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:12px;font-weight:600;display:inline-flex}.question-title{color:#1e2a22;white-space:pre-wrap;margin-bottom:4px;font-size:17px;font-weight:600;line-height:1.75}.options{gap:10px;margin-top:18px;display:grid}.option{cursor:pointer;color:#1e2a22;background:#f9fdf9;border:1.5px solid #dbe8dd;border-radius:14px;align-items:flex-start;gap:12px;padding:14px 16px;transition:border-color .16s,background .16s,transform .1s;display:flex}.option:hover{background:#f2faf4;border-color:#8db594;transform:translateY(-1px)}.option.option-checked{background:#edf6ef;border-color:#3d5c43}.option input{accent-color:#3d5c43;flex-shrink:0;margin-top:3px;transform:scale(1.15)}.option-code{color:#3d5c43;min-width:22px;font-size:15px;font-weight:800}.option.option-checked .option-code{color:#1e2a22}.option-text{color:#1e2a22;font-size:15px;line-height:1.65}.actions-bottom{border-top:1px solid #dbe8dd;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:22px;padding-top:18px;display:flex}.hint{color:#5a6e60;font-size:13px;line-height:1.7}.nav-buttons{flex-wrap:wrap;gap:10px;display:flex}.result-hero{grid-template-columns:1.2fr .8fr;align-items:stretch;gap:18px;display:grid}.type-box,.score-box,.dim-box,.top3-box,.about-box{border:1px solid var(--line);background:linear-gradient(#fff,#fbfdfb);border-radius:18px;padding:18px}.type-subname{color:var(--muted);margin-top:8px;font-size:15px}.match{background:var(--soft);border:1px solid var(--line);color:var(--accent-strong);border-radius:999px;align-items:center;gap:8px;margin-top:18px;padding:10px 14px;font-weight:700;display:inline-flex}.type-desc{color:#304034;margin-top:18px;font-size:15px;line-height:1.85}.score-box h3,.dim-box h3,.top3-box h3,.about-box h3{margin-bottom:12px;font-size:16px}.score-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.score-item{border:1px solid var(--line);background:#fff;border-radius:14px;padding:12px}.score-item .k{color:var(--muted);margin-bottom:6px;font-size:12px}.score-item .v{color:var(--accent-strong);font-size:20px;font-weight:800}.dim-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.dim-pill{border:1px solid var(--line);background:#fff;border-radius:14px;padding:12px}.dim-pill .label{color:var(--muted);margin-bottom:6px;font-size:12px}.dim-pill .value{color:var(--accent-strong);font-size:20px;font-weight:800}.top3-list{gap:10px;display:grid}.top3-item{border:1px solid var(--line);background:#fff;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.top3-item strong{margin-bottom:4px;display:block}.top3-item span{color:var(--muted);font-size:13px}.top3-score{color:var(--accent-strong);white-space:nowrap;font-weight:800}.about-box p{color:var(--muted);font-size:14px;line-height:1.8}.footer-note{color:var(--muted);margin-top:16px;font-size:12px;line-height:1.7}.result-layout{gap:18px;display:grid}.result-top{grid-template-columns:.9fr 1.1fr;align-items:stretch;gap:18px;display:grid}.poster-box,.type-box,.analysis-box,.dim-box,.note-box{border:1px solid var(--line);background:linear-gradient(#fff,#fbfdfb);border-radius:18px;padding:18px}.poster-box{background:radial-gradient(circle at 100% 0,#7fa58629,#7fa58600 40%),linear-gradient(#fff,#f7fbf8);grid-template-rows:1fr auto;min-height:280px;display:grid;position:relative;overflow:hidden}.poster-box:after{content:"";pointer-events:none;background:linear-gradient(#7fa5861f,#7fa58603);border-radius:50%;width:140px;height:140px;position:absolute;bottom:-46px;right:-46px}.poster-image{object-fit:contain;z-index:1;background:#ffffffbf;border-radius:18px;width:100%;min-height:220px;max-height:460px;position:relative}.poster-box.no-image .poster-image{display:none}.poster-caption{color:var(--muted);z-index:1;margin-top:14px;font-size:14px;line-height:1.8;position:relative}.type-kicker{color:var(--accent-strong);letter-spacing:.06em;margin-bottom:8px;font-size:12px}.type-name{letter-spacing:-.03em;font-size:clamp(30px,5vw,48px);line-height:1.08}.type-subname{color:var(--muted);margin-top:10px;font-size:14px;line-height:1.8}.match{background:var(--soft);border:1px solid var(--line);color:var(--accent-strong);border-radius:999px;align-items:center;gap:8px;margin-top:18px;padding:10px 14px;font-size:14px;font-weight:700;line-height:1.4;display:inline-flex}.analysis-box h3,.dim-box h3,.note-box h3{margin-bottom:12px;font-size:16px}.result-actions{justify-content:flex-end;margin-top:22px;display:flex}.analysis-box p{color:#304034;white-space:pre-wrap;margin:0;font-size:15px;line-height:1.9}.dim-list{gap:12px;display:grid}.dim-item{border:1px solid var(--line);background:#fff;border-radius:16px;padding:14px}.dim-item-top{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:8px;display:flex}.dim-item-name{color:var(--text);font-size:14px;font-weight:700}.dim-item-score{color:var(--accent-strong);white-space:nowrap;font-size:14px;font-weight:800}.dim-item p,.note-box p{color:var(--muted);margin:0;font-size:13px;line-height:1.8}.author-box{border:1px solid var(--line);background:linear-gradient(#fff,#fbfdfb);border-radius:18px;overflow:hidden}.author-box summary{cursor:pointer;color:var(--text);justify-content:space-between;align-items:center;gap:12px;padding:18px;font-size:16px;font-weight:700;list-style:none;display:flex}.author-box summary::-webkit-details-marker{display:none}.author-box summary:after{content:"展开";color:var(--accent-strong);border:1px solid var(--line);background:var(--soft);border-radius:999px;flex-shrink:0;padding:6px 10px;font-size:12px;font-weight:700}.author-box[open] summary:after{content:"收起"}.author-content{border-top:1px solid var(--line);padding:0 18px 18px}.author-content p{color:#304034;margin:14px 0 0;font-size:14px;line-height:1.9}.result-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:22px;display:flex}@media (max-width:860px){.result-top,.hero-grid,.result-hero{grid-template-columns:1fr}.dim-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.shell{padding:14px 12px 42px}.hero,.test-wrap,.result-wrap{padding:16px}.hero h1{font-size:32px}.question-title{font-size:15px}.dim-grid,.score-grid{grid-template-columns:1fr}}
