.app{max-width:960px;margin:0 auto;padding:0 20px 80px}header{padding:32px 0 22px;border-bottom:1px solid var(--border);margin-bottom:22px;display:flex;align-items:center;justify-content:space-between;gap:20px}.header-left{display:flex;flex-direction:column;gap:3px}.header-eyebrow{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--purple)}.header-title{font-size:28px;font-weight:800;color:var(--text-1);letter-spacing:-.03em;line-height:1.15}.back-link{font-size:12px;font-weight:600;color:var(--text-4);text-decoration:none;transition:color .15s;white-space:nowrap}.back-link:hover{color:var(--text-2)}.tabs-nav{display:flex;border-bottom:1px solid var(--border);margin-bottom:22px;overflow-x:auto;-webkit-overflow-scrolling:touch}.tab-btn{display:flex;align-items:center;gap:7px;padding:10px 16px;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;font-family:var(--font);font-size:13px;font-weight:600;color:var(--text-4);transition:color .15s;white-space:nowrap}.tab-btn:hover{color:var(--text-3)}.tab-btn.active{color:var(--purple);border-bottom-color:var(--purple)}.tab-num{width:20px;height:20px;border-radius:50%;background:#f3f4f6;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:var(--text-4);flex-shrink:0;transition:all .15s}.tab-btn.active .tab-num{background:var(--purple);border-color:var(--purple);color:#fff}.tab-num.done{background:var(--green);border-color:var(--green);color:#fff}.panel{display:none;animation:fadeIn .2s ease}.panel.active{display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:22px 24px;margin-bottom:14px;box-shadow:var(--shadow)}.card-title{font-size:14px;font-weight:700;color:var(--text-1);margin-bottom:4px}.card-sub{font-size:12px;color:var(--text-3);margin-bottom:16px;line-height:1.5}.section-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-4);margin-bottom:14px}.intro-banner{background:var(--purple-light);border:1px solid #ddd6fe;border-radius:var(--radius-lg);padding:18px 20px;margin-bottom:18px;display:flex;gap:14px;align-items:flex-start}.intro-icon{font-size:24px;flex-shrink:0;margin-top:2px}.intro-title{font-size:14px;font-weight:700;color:var(--purple-dark);margin-bottom:4px}.intro-desc{font-size:12px;color:#5b21b6;line-height:1.55}.intro-meta{display:flex;gap:12px;margin-top:8px;flex-wrap:wrap}.intro-pill{font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;background:#6d28d91a;color:var(--purple-dark);padding:2px 8px;border-radius:100px}.q-block{margin-bottom:20px}.q-num{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-4);margin-bottom:5px}.q-text{font-size:14px;font-weight:600;color:var(--text-1);margin-bottom:10px;line-height:1.5}.options-col{display:flex;flex-direction:column;gap:6px}.options-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.option-label{display:flex;align-items:center;gap:10px;background:var(--surface-2);border:1.5px solid var(--border);border-radius:var(--radius-md);padding:10px 13px;cursor:pointer;transition:all .15s;font-size:13px;font-weight:500;color:var(--text-2);line-height:1.4}.option-label:hover{border-color:#c4b5fd;background:#faf5ff;color:var(--text-1)}.option-label input[type=radio]{display:none}.option-label.selected{border-color:var(--purple);background:var(--purple-light);color:var(--purple-dark);font-weight:600}.option-label.selected .opt-dot{background:var(--purple);border-color:var(--purple)}.opt-dot{width:14px;height:14px;border-radius:50%;flex-shrink:0;border:2px solid var(--border);background:#fff;transition:all .15s}.yesno-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.yn-label{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;border:1.5px solid var(--border);border-radius:var(--radius-md);cursor:pointer;font-size:13px;font-weight:600;color:var(--text-3);background:var(--surface-2);transition:all .15s}.yn-label:hover{border-color:#c4b5fd;background:#faf5ff}.yn-label input[type=radio]{display:none}.yn-label.selected-yes{border-color:var(--red);background:var(--red-light);color:var(--red)}.yn-label.selected-no{border-color:var(--green);background:var(--green-light);color:var(--green)}.q-progress{margin-bottom:16px}.q-progress-label{display:flex;justify-content:space-between;font-size:11px;font-weight:600;color:var(--text-4);margin-bottom:6px}.q-progress-track{height:4px;background:#f3f4f6;border-radius:2px;overflow:hidden}.q-progress-fill{height:100%;border-radius:2px;background:var(--purple);transition:width .3s ease}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid-3{grid-template-columns:1fr 1fr 1fr}.field{display:flex;flex-direction:column;gap:5px}.field label{font-size:12px;font-weight:600;color:var(--text-2)}.hint{font-size:11px;color:var(--text-4);line-height:1.5;margin-top:3px}input[type=number],input[type=time],select{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius-sm);color:var(--text-1);font-family:var(--font);font-size:14px;font-weight:500;padding:9px 11px;outline:none;transition:border-color .15s,box-shadow .15s;width:100%;appearance:none}input:focus,select:focus{border-color:var(--purple);box-shadow:0 0 0 3px #7c3aed1a}select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2.5'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:32px}.btn-calc{display:inline-flex;align-items:center;gap:8px;background:var(--purple);color:#fff;font-family:var(--font);font-size:14px;font-weight:700;padding:13px 28px;border-radius:var(--radius-md);border:none;cursor:pointer;transition:background .15s,transform .1s;margin-top:8px}.btn-calc:hover{background:var(--purple-dark);transform:translateY(-1px)}.btn-next{display:inline-flex;align-items:center;gap:6px;background:var(--surface);border:1.5px solid var(--border);color:var(--text-2);font-family:var(--font);font-size:13px;font-weight:600;padding:10px 20px;border-radius:var(--radius-md);cursor:pointer;transition:all .15s;margin-top:6px}.btn-next:hover{border-color:var(--purple);color:var(--purple)}.result-box{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius-lg);padding:20px 24px;margin-top:16px;display:none}.result-box.visible{display:block}.result-top{display:flex;align-items:center;gap:14px;margin-bottom:12px;flex-wrap:wrap}.result-big{font-size:44px;font-weight:800;line-height:1;letter-spacing:-.03em}.result-badge{padding:5px 13px;border-radius:20px;font-size:12px;font-weight:700;letter-spacing:.02em}.badge-excellent{background:var(--green-light);color:var(--green)}.badge-good{background:var(--blue-light);color:var(--blue)}.badge-average{background:var(--amber-light);color:var(--amber)}.badge-below{background:var(--orange-light);color:var(--orange)}.badge-poor{background:var(--red-light);color:var(--red)}.badge-purple{background:var(--purple-light);color:var(--purple)}.badge-green2{background:var(--green-light);color:var(--green)}.result-label{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-4)}.result-name{font-size:16px;font-weight:700;color:var(--text-1);margin:2px 0}.result-desc{font-size:13px;color:var(--text-3);line-height:1.6}.score-bar-wrap{margin:10px 0}.score-bar-track{height:8px;border-radius:4px;background:#f3f4f6;position:relative;overflow:visible}.score-bar-fill{height:100%;border-radius:4px;transition:width .6s cubic-bezier(.34,1.56,.64,1)}.score-bar-dot{position:absolute;top:50%;width:16px;height:16px;border-radius:50%;border:2.5px solid #fff;box-shadow:0 1px 4px #0003;transform:translate(-50%,-50%);transition:left .6s cubic-bezier(.34,1.56,.64,1)}.score-bar-labels{display:flex;justify-content:space-between;font-size:10px;font-weight:600;color:var(--text-4);margin-top:6px}.comp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0}.comp-card{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);padding:12px;text-align:center}.comp-val{font-size:22px;font-weight:700;color:var(--text-1);letter-spacing:-.02em}.comp-name{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-4);margin-top:4px;line-height:1.4}.risk-banner{border-radius:var(--radius-md);padding:14px 16px;font-size:13px;font-weight:600;line-height:1.5;border-left:4px solid}.risk-low{background:var(--green-light);color:#065f46;border-color:var(--green)}.risk-medium{background:var(--amber-light);color:#78350f;border-color:var(--amber)}.risk-high{background:var(--red-light);color:#7f1d1d;border-color:var(--red)}.results-trio{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.trio-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:18px;text-align:center}.trio-score{font-size:32px;font-weight:800;letter-spacing:-.03em;margin-bottom:4px}.trio-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-4)}.trio-name{font-size:13px;font-weight:600;color:var(--text-2);margin-top:4px}.advice-list{display:flex;flex-direction:column;gap:8px}.advice-item{display:flex;gap:10px;align-items:flex-start;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);padding:12px 14px;font-size:13px;color:var(--text-2);line-height:1.55}.advice-icon{font-size:16px;flex-shrink:0}.tips-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.tip-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:18px 16px;transition:border-color .15s,box-shadow .15s,transform .1s}.tip-card:hover{border-color:var(--purple);box-shadow:var(--shadow-md);transform:translateY(-2px)}.tip-num{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--purple);margin-bottom:6px}.tip-icon{font-size:22px;margin-bottom:8px;display:block}.tip-title{font-size:14px;font-weight:700;color:var(--text-1);margin-bottom:6px;line-height:1.3}.tip-body{font-size:12px;color:var(--text-3);line-height:1.65}.walker-intro{background:var(--text-1);border-radius:var(--radius-lg);padding:22px 24px;margin-bottom:18px;display:flex;gap:16px;align-items:flex-start}.walker-intro-text h3{font-size:15px;font-weight:700;color:#fff;margin-bottom:6px}.walker-intro-text p{font-size:12px;color:#9ca3af;line-height:1.6}.divider{height:1px;background:var(--border);margin:20px 0}.alert{padding:10px 13px;border-radius:var(--radius-sm);font-size:12px;font-weight:500;line-height:1.5}.alert-info{background:var(--purple-light);color:var(--purple-dark);border:1px solid #ddd6fe}.alert-warn{background:var(--amber-light);color:#78350f;border:1px solid #fde68a}footer{margin-top:48px;padding:18px 0;border-top:1px solid var(--border);display:flex;justify-content:space-between;font-size:11px;font-weight:500;color:var(--text-4)}@media(max-width:720px){.comp-grid{grid-template-columns:1fr 1fr}.results-trio{grid-template-columns:1fr}.tips-grid{grid-template-columns:1fr 1fr}.options-grid{grid-template-columns:1fr}.form-grid-3{grid-template-columns:1fr 1fr}}@media(max-width:480px){.tips-grid,.form-grid{grid-template-columns:1fr}}.import-zone{border:2px dashed var(--border);border-radius:var(--radius-lg);padding:36px 24px;text-align:center;cursor:pointer;transition:border-color .2s,background .2s;background:var(--surface-2);margin-bottom:18px}.import-zone:hover,.import-zone.drag-over{border-color:var(--purple);background:var(--purple-light)}.import-zone input[type=file]{display:none}.import-icon{font-size:36px;margin-bottom:10px;display:block}.import-title{font-size:15px;font-weight:700;color:var(--text-1);margin-bottom:5px}.import-sub{font-size:12px;color:var(--text-3);line-height:1.5}.import-btn-label{display:inline-flex;align-items:center;gap:7px;background:var(--purple);color:#fff;font-family:var(--font);font-size:13px;font-weight:700;padding:10px 22px;border-radius:var(--radius-md);margin-top:14px;cursor:pointer;transition:background .15s}.import-btn-label:hover{background:var(--purple-dark)}.tutorial-steps{display:flex;flex-direction:column;gap:10px;margin-bottom:18px}.tut-step{display:flex;align-items:flex-start;gap:14px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:14px 16px}.tut-num{width:26px;height:26px;border-radius:50%;flex-shrink:0;background:var(--purple);color:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800}.tut-content{flex:1}.tut-title{font-size:13px;font-weight:700;color:var(--text-1);margin-bottom:3px}.tut-desc{font-size:12px;color:var(--text-3);line-height:1.55}.tut-tag{display:inline-block;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:2px 8px;font-size:11px;font-weight:700;color:var(--text-2);font-family:monospace}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:16px;text-align:center}.stat-val{font-size:26px;font-weight:800;letter-spacing:-.03em;color:var(--text-1)}.stat-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-4);margin-top:4px;line-height:1.4}.stat-sub{font-size:11px;color:var(--text-3);margin-top:3px}.chart-wrap{position:relative;height:220px;margin:8px 0 4px}.garmin-recos{display:flex;flex-direction:column;gap:10px;margin-top:4px}.reco-card{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:var(--radius-md);border:1px solid;font-size:13px;line-height:1.6}.reco-card.reco-good{background:var(--green-light);border-color:#a7f3d0;color:#065f46}.reco-card.reco-warn{background:var(--amber-light);border-color:#fde68a;color:#78350f}.reco-card.reco-bad{background:var(--red-light);border-color:#fca5a5;color:#7f1d1d}.reco-card.reco-info{background:var(--purple-light);border-color:#ddd6fe;color:#5b21b6}.reco-icon{font-size:18px;flex-shrink:0;margin-top:1px}.reco-title{font-weight:700;margin-bottom:2px}.consistency-row{display:flex;align-items:center;gap:12px;margin-bottom:10px}.consist-label{font-size:12px;font-weight:600;color:var(--text-2);width:130px;flex-shrink:0}.consist-bar-wrap{flex:1}.consist-track{height:8px;background:#f3f4f6;border-radius:4px;overflow:hidden}.consist-fill{height:100%;border-radius:4px;transition:width .6s ease}.consist-val{font-size:12px;font-weight:700;width:60px;text-align:right}#garmin-data{display:none}#garmin-empty{display:block}@media(max-width:720px){.stats-grid{grid-template-columns:1fr 1fr}}@media(max-width:480px){.stats-grid{grid-template-columns:1fr 1fr}.consist-label{width:90px;font-size:11px}}.faq-section{max-width:960px;margin:40px auto 0;padding:0 20px 60px}.faq-section-label{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-4);margin-bottom:8px}.faq-section-title{font-size:22px;font-weight:700;color:var(--text-1);margin-bottom:20px;letter-spacing:-.02em}.faq-list{display:flex;flex-direction:column;gap:4px}.faq-item{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);overflow:hidden}.faq-q{padding:14px 16px;font-size:14px;font-weight:600;color:var(--text-1);cursor:pointer;display:flex;justify-content:space-between;align-items:center;user-select:none;gap:12px}.faq-q:after{content:"+";font-size:18px;font-weight:400;color:var(--text-4);flex-shrink:0;line-height:1}.faq-item.open .faq-q:after{content:"−"}.faq-item.open .faq-q{color:var(--blue)}.faq-a{display:none;padding:0 16px 14px;font-size:13px;color:var(--text-3);line-height:1.7}.faq-item.open .faq-a{display:block}
