:root{--paper:#f7f5f0;--ink:#252522;--muted:#77766f;--line:#dfddd6;--accent:#b95738;--accent-dark:#8f3d29;--card:#fffdf8;--soft:#eee9df;--shadow:0 14px 36px rgba(43,36,27,.08)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif}body{display:flex;justify-content:center}.app-shell{width:100%;max-width:520px;min-height:100vh;padding:0 20px 90px;position:relative}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between}.brand-mark{font-family:Georgia,serif;font-size:19px;letter-spacing:.02em}.brand-mark span{color:var(--accent);padding:0 2px}.icon-button,.filter-button{border:1px solid var(--line);background:transparent;color:var(--ink);width:38px;height:32px;border-radius:16px;font-size:13px}.view{display:none;animation:rise .3s ease}.view.is-active{display:block}@keyframes rise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.hero-block{padding:42px 4px 34px}.eyebrow{font-size:11px;letter-spacing:.14em;color:var(--accent);margin:0 0 15px;font-weight:700}.hero-block h1{font:400 43px/1.14 Georgia,"Songti SC",serif;letter-spacing:-.04em;margin:0 0 18px}.hero-block h1 em{color:var(--accent);font-style:normal}.hero-copy{font-size:14px;line-height:1.8;color:var(--muted);max-width:330px;margin:0 0 28px}.primary-button,.primary-small{border:0;background:var(--accent);color:#fff9f1;font-weight:700;letter-spacing:.04em;box-shadow:0 8px 16px rgba(185,87,56,.19);cursor:pointer}.primary-button{height:52px;border-radius:26px;padding:0 22px;font-size:14px}.primary-button span{font-size:20px;margin-left:18px;vertical-align:-1px}.primary-button:disabled{background:#cbc6bc;box-shadow:none;cursor:not-allowed}.trust-row{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;margin-bottom:35px}.trust-row div{display:flex;flex-direction:column;gap:5px}.trust-row div+div{border-left:1px solid var(--line);padding-left:16px}.trust-row strong{font-size:18px}.trust-row span{font-size:11px;color:var(--muted)}.home-section{padding-bottom:20px}.section-heading{display:flex;align-items:center;justify-content:space-between;margin:0 0 14px}.section-heading h2{font-size:18px;margin:0}.section-heading button,.text-button{border:0;background:transparent;color:var(--accent);font-size:12px;padding:4px 0}.match-card{background:var(--card);border:1px solid #e9e4da;border-radius:18px;padding:19px;display:grid;grid-template-columns:52px 1fr auto;gap:13px;box-shadow:var(--shadow);position:relative}.compact-card{box-shadow:none}.avatar{height:52px;width:52px;border-radius:50%;display:grid;place-items:center;font:400 24px Georgia,serif;color:#663d2e}.avatar-warm{background:#edd4bf}.avatar-cool{background:#d7e0dc;color:#3f5a55}.card-info h3{margin:0 0 5px;font-size:15px}.card-info h3 span{font-size:12px;font-weight:400;color:var(--muted);margin-left:5px}.card-info p{font-size:12px;color:var(--muted);margin:0}.tag-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.tag-row span{font-size:10px;background:var(--soft);border-radius:10px;padding:4px 8px;color:#6d675e}.match-score{display:flex;flex-direction:column;align-items:flex-end;color:var(--accent)}.match-score b{font:400 22px Georgia,serif}.match-score small{font-size:9px;color:var(--muted);margin-top:3px}.view-heading{display:flex;align-items:center;gap:12px;padding:14px 0 24px}.view-heading>div{flex:1}.view-heading h2{font:400 25px Georgia,"Songti SC",serif;margin:0;line-height:1.2}.back-button{border:0;background:transparent;font-size:24px;padding:0 5px;color:var(--ink)}.progress-track{height:3px;background:#e5e1d9;border-radius:2px;margin-bottom:38px}.progress-track span{display:block;height:100%;width:25%;background:var(--accent);transition:width .3s}.question-panel h2{font:400 27px/1.35 Georgia,"Songti SC",serif;margin:0 0 9px}.question-index{font:12px;color:var(--accent);margin:0 0 10px;font-weight:700}.question-help,.view-intro{color:var(--muted);font-size:13px;line-height:1.7;margin:0 0 24px}.option-grid{display:grid;gap:10px}.option-grid.multi{grid-template-columns:1fr 1fr}.choice{background:var(--card);border:1px solid var(--line);border-radius:12px;min-height:53px;text-align:left;padding:0 15px;font-size:13px;color:var(--ink);cursor:pointer}.choice.is-selected{border-color:var(--accent);background:#fbede6;color:var(--accent-dark);box-shadow:0 0 0 1px var(--accent)}.bottom-action{width:100%;margin-top:28px}.wish-input{display:block;width:100%;min-height:130px;border:1px solid var(--line);border-radius:14px;background:var(--card);padding:15px;font:inherit;font-size:13px;resize:vertical;outline:none}.wish-input:focus{border-color:var(--accent)}.skip-button{display:block;margin:14px auto}.analysis-card{background:#2f312e;color:#f8f4eb;border-radius:20px;padding:25px 22px;margin-bottom:36px;box-shadow:var(--shadow)}.analysis-orb{width:42px;height:42px;border-radius:50%;background:#d67c5c;display:grid;place-items:center;font:16px Georgia,serif;margin-bottom:20px}.analysis-card p{font:400 18px/1.6 Georgia,"Songti SC",serif;margin:0 0 20px}.analysis-card .tag-row span{background:rgba(255,255,255,.1);color:#e8dfd1}.criteria-list{border-top:1px solid var(--line);margin-bottom:25px}.criteria-list>div{display:flex;gap:15px;padding:16px 0;border-bottom:1px solid var(--line)}.criteria-list span{color:var(--accent);font:16px Georgia,serif}.criteria-list p{margin:0;display:flex;flex-direction:column;gap:5px}.criteria-list b{font-size:14px}.criteria-list small{font-size:12px;color:var(--muted)}.recommendation-list{display:grid;gap:14px}.recommendation-list .match-card{grid-template-columns:52px 1fr auto;padding-bottom:65px}.reason{margin-top:13px!important;line-height:1.55}.card-actions{position:absolute;bottom:15px;right:17px;left:82px;display:flex;gap:8px}.soft-button,.primary-small{height:32px;border-radius:16px;padding:0 13px;font-size:11px}.soft-button{border:1px solid var(--line);background:transparent;color:var(--muted)}.primary-small{border:0}.membership-card{background:#2f312e;color:#f8f4eb;border-radius:20px;padding:24px 22px;box-shadow:var(--shadow)}.price-line{display:flex;align-items:baseline;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.18);padding-bottom:18px;margin-bottom:17px}.price-line span{font-size:13px;color:#d7d0c4}.price-line strong{font:400 34px Georgia,serif}.membership-card>p{font-size:13px;line-height:1.7;color:#d7d0c4;margin:0 0 18px}.membership-card ul{list-style:none;padding:0;margin:0 0 22px}.membership-card li{font-size:13px;padding:9px 0;border-top:1px solid rgba(255,255,255,.12)}.membership-card li:before{content:"✓";color:#dd9777;margin-right:9px}.membership-card .primary-button{width:100%;background:#d67c5c}.fine-print{font-size:11px;line-height:1.7;color:var(--muted);margin:15px 3px}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:520px;height:72px;background:rgba(247,245,240,.94);backdrop-filter:blur(10px);border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);z-index:5}.nav-item{border:0;background:transparent;color:#97948b;font-size:10px;display:flex;flex-direction:column;align-items:center;gap:6px}.nav-item span{font-size:21px;line-height:1}.nav-item.is-active{color:var(--accent)}.toast{position:fixed;left:50%;bottom:88px;transform:translate(-50%,10px);opacity:0;pointer-events:none;background:#2f312e;color:#fff;padding:10px 16px;border-radius:20px;font-size:12px;transition:all .25s;z-index:10;white-space:nowrap}.toast.show{opacity:1;transform:translate(-50%,0)}@media(min-width:521px){body{padding:20px 0}.app-shell{border:1px solid var(--line);border-radius:24px;min-height:calc(100vh - 40px);box-shadow:var(--shadow);overflow:hidden}.bottom-nav{position:absolute;bottom:0;border-radius:0 0 24px 24px}}
