:root{color:#20231f;font-synthesis:none;text-rendering:optimizelegibility;--ink:#20231f;--muted:#72766f;--line:#e7e8e1;--accent:#f5c842;--accent-dark:#7b5b00;--surface:#fff;background:#f7f7f4;font-family:Microsoft YaHei,PingFang SC,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}a{color:inherit}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #987300}.site-header{z-index:5;border-bottom:1px solid var(--line);backdrop-filter:blur(14px);background:#fffffff0;justify-content:space-between;align-items:center;min-height:68px;padding:10px max(20px,50vw - 540px);display:flex;position:sticky;top:0}.brand{align-items:center;gap:10px;font-weight:800;text-decoration:none;display:inline-flex}.brand-mark{background:var(--accent);border-radius:14px;place-items:center;width:40px;height:40px;display:grid}.brand-sub{color:var(--muted);font-size:11px;font-weight:500;display:block}.header-link{color:var(--muted);padding:10px 12px;text-decoration:none}.page-shell{width:min(100% - 32px,960px);min-height:calc(100vh - 128px);margin:0 auto;padding:28px 0 48px}.site-footer{color:var(--muted);text-align:center;padding:18px 16px 28px;font-size:12px}.eyebrow{color:var(--accent-dark);letter-spacing:.04em;margin:0 0 8px;font-size:13px;font-weight:700}h1{letter-spacing:-.03em;margin:0;font-size:clamp(28px,7vw,42px);line-height:1.2}h2{margin:0 0 14px;font-size:20px}p{line-height:1.7}.muted{color:var(--muted)}.hero{background:linear-gradient(140deg,#fff4c8,#fff 68%);border-radius:26px;padding:32px 24px}.hero-copy{max-width:580px;color:var(--muted);margin:12px 0 0}.toolbar{gap:10px;margin:22px 0 18px;display:grid}.field,.search-field{border:1px solid var(--line);width:100%;min-height:48px;color:var(--ink);background:#fff;border-radius:13px;padding:12px 14px}.venue-grid{gap:12px;display:grid}.venue-card,.panel{border:1px solid var(--line);background:var(--surface);border-radius:18px;box-shadow:0 5px 20px #20231f09}.venue-card{padding:18px;text-decoration:none;transition:transform .15s,border-color .15s;display:block}.venue-card:hover{border-color:#e8c754;transform:translateY(-2px)}.venue-card h2{margin:0 0 4px;font-size:18px}.venue-card p{color:var(--muted);margin:0;font-size:14px}.arrow-link,.primary-button,.secondary-button{cursor:pointer;border:0;border-radius:14px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:12px 18px;font-weight:750;text-decoration:none;display:inline-flex}.primary-button{background:var(--accent);color:#302500}.primary-button:disabled{cursor:wait;opacity:.65}.secondary-button{border:1px solid var(--line);background:#fff}.panel{margin-top:16px;padding:20px}.fact-list{gap:14px;margin:0;display:grid}.fact-list div{gap:4px;display:grid}.fact-list dt{color:var(--muted);font-size:13px}.fact-list dd{margin:0;line-height:1.6}.chip-list{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.chip-list li{background:#f3f4ee;border-radius:99px;padding:7px 10px;font-size:13px}.quote-form{gap:16px;display:grid}.form-field{gap:7px;display:grid}.form-field label{font-size:14px;font-weight:700}.form-help{color:var(--muted);margin:-2px 0 0;font-size:12px}.child-row{gap:8px;margin-top:8px;display:grid}.result-card{background:#fffdf3;border:1px solid #e7d47d;border-radius:18px;margin-top:18px;padding:18px}.result-total{color:#584200;margin:4px 0 12px;font-size:32px;font-weight:850}.result-item{border-top:1px solid var(--line);justify-content:space-between;gap:12px;padding:10px 0;display:flex}.notice{border-left:3px solid var(--accent);color:var(--muted);padding-left:12px;font-size:13px}.empty-state{color:var(--muted);text-align:center;background:#fff;border-radius:16px;padding:22px}.status-message{min-height:24px;color:var(--muted)}@media (width>=640px){.page-shell{padding-top:42px}.toolbar{grid-template-columns:minmax(0,1fr) 220px}.venue-grid,.fact-list{grid-template-columns:repeat(2,minmax(0,1fr))}.panel{padding:26px}.quote-form{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-form .wide{grid-column:1/-1}}
