:root{--ink:#18201d;--muted:#68706c;--paper:#f4f5f2;--card:#fff;--accent:#176b4d;--accent-soft:#e5f0eb;--line:#dde1dc;--green:#176b4d;--danger:#b84f3d;--shadow:0 10px 30px rgba(24,32,29,.07)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Noto Sans TC",sans-serif;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}a{color:inherit}.app-header,body>header{height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 max(calc((100vw - 1240px)/2),24px);background:rgba(255,255,255,.94);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30;backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-size:18px;font-weight:800;letter-spacing:-.03em}.brand-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:var(--ink);color:white;font-size:16px}.brand small{display:block;margin:1px 0 0;font-size:10px;font-weight:500;letter-spacing:.08em;color:var(--muted)}header nav,.desktop-nav{display:flex;align-items:center;gap:4px}.source{padding:9px 12px;border-radius:9px;text-decoration:none;font-size:14px;font-weight:600;color:var(--muted)}.source:hover,.source.active{background:#f0f2ef;color:var(--ink)}.money-display-toggle{min-height:38px;padding:0 13px;border:1px solid var(--line);border-radius:9px;background:white;color:var(--ink);cursor:pointer;margin-left:8px}main{width:min(1240px,calc(100% - 48px));margin:auto}.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,.7fr);align-items:end;gap:48px;padding:54px 0 34px}.eyebrow{margin:0;color:var(--accent);font-size:13px;letter-spacing:.04em;font-weight:750}.hero h1{margin:9px 0 12px;font-size:clamp(34px,4.3vw,58px);line-height:1.1;letter-spacing:-.06em;font-weight:780}.hero em{color:var(--accent);font-style:normal}.hero>div>p:last-child{margin:0;max-width:620px;color:var(--muted);font-size:16px;line-height:1.7}.hero-action{display:grid;grid-template-columns:1fr auto;gap:4px 18px;padding:18px 20px;border:1px solid #c9dcd4;border-radius:14px;background:var(--accent-soft);text-decoration:none}.hero-action span{font-size:12px;color:var(--green)}.hero-action strong{grid-column:1;font-size:16px}.hero-action i{grid-column:2;grid-row:1/3;align-self:center;font-size:23px;font-style:normal;color:var(--green)}.toolbar{display:grid;grid-template-columns:2fr repeat(7,1fr);gap:10px;padding:16px;background:#252d2a;border-radius:14px;color:white}.toolbar label{min-width:0;font-size:11px;color:#c9cfcc}.toolbar input,.toolbar select{display:block;width:100%;height:44px;margin-top:7px;padding:0 12px;border:1px solid transparent;border-radius:9px;background:#fff;color:var(--ink);font-size:14px}.toolbar input:focus,.toolbar select:focus{outline:3px solid rgba(112,193,159,.35)}.summary{display:flex;justify-content:space-between;align-items:center;padding:30px 2px 14px}.summary strong{font-size:28px;letter-spacing:-.04em}.summary span{margin-left:7px;color:var(--muted);font-size:14px}.summary p{font-size:12px;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.card{position:relative;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px;cursor:pointer;transition:border-color .18s,box-shadow .18s,transform .18s;overflow:hidden}.card:hover,.card:focus{transform:translateY(-2px);box-shadow:var(--shadow);outline:none;border-color:#aeb8b2}.card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.round{font-size:13px;font-weight:800;color:var(--accent)}.badge{display:inline-flex;align-items:center;font-size:11px;padding:4px 7px;border-radius:6px}.badge.good{background:#e2f1e9;color:var(--green)}.badge.warn{background:#f6e5e1;color:#954433}.badge.neutral{background:#eef0ed;color:#5c625f}.card h2{margin:15px 0 5px;min-height:52px;font-size:18px;line-height:1.45;letter-spacing:-.02em}.map{border:0;background:transparent;padding:0;font-size:12px;color:var(--green);cursor:pointer}.price{border-top:1px solid var(--line);margin-top:16px;padding-top:15px}.price span{display:block;color:var(--muted);font-size:11px}.price strong{display:block;margin-top:3px;font-size:24px;letter-spacing:-.04em}.card dl{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}.card dl div{border-left:2px solid var(--line);padding-left:8px;min-width:0}.card dt,.detail-grid dt{font-size:10px;color:var(--muted)}.card dd{font-size:12px;margin:4px 0;overflow:hidden;text-overflow:ellipsis}.case{margin-bottom:0;font-size:10px;color:var(--muted);border-top:1px solid var(--line);padding-top:12px}.empty{text-align:center;padding:80px}.empty p,footer{color:var(--muted)}dialog{width:min(720px,92vw);border:0;border-radius:18px;padding:36px;background:var(--card);box-shadow:0 30px 80px #0006}dialog::backdrop{background:#18201dcc}.close{float:right;border:0;background:none;font-size:30px;cursor:pointer}.detail-price{display:flex;justify-content:space-between;align-items:end;background:var(--ink);color:white;padding:20px;border-radius:12px;margin:24px 0}.detail-price strong{font-size:28px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line)}.detail-grid div{background:var(--card);padding:16px}.detail-grid dd{margin:6px 0 0}.actions{display:flex;gap:12px;margin-top:24px}.actions a{padding:12px 15px;border:1px solid var(--ink);border-radius:8px;text-decoration:none;font-size:14px}.actions .primary{background:var(--accent);border-color:var(--accent);color:white}footer{text-align:center;font-size:12px;padding:56px 20px 30px}.mobile-tabbar{display:none}@media(max-width:1050px){.toolbar{grid-template-columns:2fr repeat(3,1fr)}.grid{grid-template-columns:1fr 1fr}}@media(max-width:720px){body{padding-bottom:72px}.app-header,body>header{height:58px;padding:0 16px}.brand-mark{width:32px;height:32px}.brand small,.desktop-nav,header>nav{display:none}main{width:calc(100% - 28px)}.hero{display:block;padding:28px 0 22px}.hero h1{font-size:34px;margin-top:7px}.hero>div>p:last-child{font-size:14px}.hero-action{margin-top:20px}.toolbar{display:flex;overflow-x:auto;gap:9px;margin-left:-14px;margin-right:-14px;padding:14px;border-radius:0;scroll-snap-type:x proximity}.toolbar label{flex:0 0 170px;scroll-snap-align:start}.toolbar label:first-child{flex-basis:250px}.toolbar input,.toolbar select{height:46px}.grid{grid-template-columns:1fr}.summary{padding-top:22px}.summary p{max-width:52%;text-align:right}.card{padding:15px}.mobile-tabbar{position:fixed;display:grid;grid-template-columns:repeat(5,1fr);left:0;right:0;bottom:0;height:68px;padding:6px max(8px,env(safe-area-inset-right)) max(6px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));background:rgba(255,255,255,.97);border-top:1px solid var(--line);z-index:50;backdrop-filter:blur(14px)}.mobile-tabbar a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-decoration:none;font-size:10px;color:var(--muted)}.mobile-tabbar span{font-size:22px;line-height:1}.mobile-tabbar a.active{color:var(--accent);font-weight:700}.detail-grid{grid-template-columns:1fr}.actions{flex-direction:column}dialog{padding:24px 18px}footer{padding-bottom:25px}}
:where(.official-source-link){margin-left:4px;color:var(--muted);font-size:11px;text-decoration:none}
:where(.search-hero,.watchlist-hero,.opportunities-hero,.account-hero) h1{font-family:inherit!important;font-weight:780!important;letter-spacing:-.05em!important;line-height:1.12!important}
@media(max-width:720px){body>header nav,body>header.search-header nav{display:none!important}body>header:not(.app-header) .brand{font-size:18px}body>header:not(.app-header) .brand small{display:block;font-size:10px}.search-hero,.watchlist-hero,.opportunities-hero,.account-hero{padding-top:30px!important}}

/* Brand identity */
.brand-mark{display:block;width:36px;height:36px;flex:0 0 36px;border-radius:0;background:transparent;color:inherit}
@media(max-width:720px){.brand-mark{width:32px;height:32px;flex-basis:32px}}
