:root{--blue:#224de3;--ink:#162443;--muted:#617089;--line:#e0e6ef;--light:#f3f6fb}*{box-sizing:border-box}body{margin:0;background:#fff;color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Noto Sans JP","Hiragino Kaku Gothic ProN",sans-serif;font-size:16px;line-height:1.65}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #6988ff;outline-offset:4px}header{max-width:1320px;margin:auto;height:86px;display:flex;align-items:center;gap:30px;padding:0 40px}.logo{font-size:21px;letter-spacing:-.5px;font-weight:850;text-decoration:none;color:var(--ink);display:flex;align-items:center;gap:10px}.mark{background:var(--blue);color:#fff;border-radius:9px;font-size:26px;width:36px;height:36px;line-height:36px;text-align:center}.header-label{font-size:13px;color:var(--muted)}header>.text-button{margin-left:auto}.text-button{background:none;border:0;color:var(--muted);font-size:14px;padding:8px}main{max-width:1240px;margin:auto;padding:0 0 110px}.demo{background:#f0f4ff;color:#42547c;border:1px solid #e2e8fb;border-radius:8px;padding:10px 16px;font-size:13px}.demo b{display:inline-block;margin-right:10px;background:#e0e8ff;color:var(--blue);border-radius:4px;padding:1px 7px}.intro{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:34px 0 38px}.eyebrow{font-size:12px;letter-spacing:2px;color:var(--blue);font-weight:750}h1{font-size:38px;letter-spacing:-1px;line-height:1.5;margin:10px 0}p{margin:0}.intro p{color:var(--muted);font-size:15px}.intro-photo{width:310px;height:180px;border-radius:12px;overflow:hidden;position:relative;background:var(--blue);flex:none}.intro-photo img{width:100%;height:100%;object-fit:cover}.intro-photo span{position:absolute;bottom:12px;left:18px;letter-spacing:1.4px;font-size:11px;color:white;font-weight:bold;text-shadow:0 1px 5px #132350}.workspace{display:grid;grid-template-columns:252px minmax(0,1fr);gap:32px;border-top:1px solid var(--line);padding-top:28px}aside{align-self:start;padding-right:25px;border-right:1px solid var(--line)}h2{font-size:18px;margin:0}.filter-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.filter-title h2{font-size:16px}.filter-title .text-button{font-size:12px;padding:5px 0}.search{display:block;font-size:14px;font-weight:650}.search input{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:7px;margin-top:9px;font-size:14px;background:var(--light)}fieldset{padding:0;border:0;margin:25px 0}legend,.range-label{font-size:14px;font-weight:650;margin-bottom:11px}.chips{display:flex;flex-wrap:wrap;gap:7px}.chip{background:white;border:1px solid var(--line);border-radius:6px;font-size:13px;padding:7px 10px;color:var(--muted)}.chip.active{background:#eef2ff;border-color:#9cb1ff;color:var(--blue);font-weight:700}.range-label{display:block;font-size:13px}.range-label span{display:block;font-size:23px;color:var(--blue);margin-top:6px}input[type=range]{width:100%;accent-color:var(--blue)}.range-ends{display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}.check{display:flex;align-items:center;gap:8px;font-size:13px;margin-top:24px}.check input{accent-color:var(--blue);width:17px;height:17px}.filter-note{margin-top:28px;background:var(--light);border-radius:9px;padding:16px;font-size:12px;color:var(--muted)}.filter-note b{color:var(--ink);font-size:13px}.filter-note p{margin-top:7px}.quick{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:22px;font-size:12px}.quick span{color:var(--muted);margin-right:3px}.quick button{color:var(--blue);border:0;border-radius:25px;padding:7px 13px;font-size:12px;background:#f0f4ff}.results-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.results-header h2{font-size:28px;font-weight:750}.results-header small{font-size:13px;font-weight:500;margin-left:8px;color:var(--muted)}.sort{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--muted)}select{max-width:205px;border:1px solid var(--line);background:white;padding:8px;border-radius:6px;font-size:12px;color:var(--ink)}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:white;transition:box-shadow .2s,border-color .2s}.card:hover{border-color:#a6b8f6;box-shadow:0 8px 24px #1e3b7710}.card.selected{border:2px solid var(--blue)}.card-top{padding:16px 17px 12px;background:var(--tint);border-bottom:1px solid var(--line);min-height:131px}.card-kicker{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:11px;letter-spacing:.7px;color:var(--tone)}.type{font-size:11px;background:#ffffffb5;border:1px solid #ffffff;border-radius:4px;padding:2px 6px;letter-spacing:0}.card h3{font-size:20px;margin:11px 0 1px;letter-spacing:-.5px}.flavor{font-size:13px;color:var(--muted)}.card-body{padding:16px}.metrics{display:flex;gap:12px;justify-content:space-between}.metric-label{font-size:11px;color:var(--muted);display:block}.metric-number{font-size:25px;line-height:1.5;letter-spacing:-.8px;font-weight:750}.metric-number small{font-size:13px;letter-spacing:0;margin-left:2px;font-weight:500}.cost .metric-number{color:var(--blue)}.taste-row{margin-top:14px;display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--muted)}.dots{display:flex;gap:4px}.dots i{width:17px;height:5px;border-radius:3px;background:#e4e9f0}.dots i.on{background:#8498cc}.taste-description{font-size:12px;color:var(--muted);margin:10px 0 14px;min-height:20px}.card-actions{display:flex;gap:7px}.details,.add{padding:8px 5px;border-radius:6px;border:1px solid var(--line);font-size:12px;background:white;color:var(--ink)}.details{flex:1}.add{flex:1.25;color:var(--blue);background:#f1f4ff;border-color:#dce4ff}.add[aria-pressed=true]{background:var(--blue);color:white}.empty{grid-column:1/-1;padding:65px 15px;text-align:center;background:var(--light);border-radius:12px}.empty p{color:var(--muted);font-size:14px;margin:12px}footer{border-top:1px solid var(--line);margin-top:50px;padding-top:26px}footer .logo{font-size:16px}footer p{font-size:12px;color:var(--muted);margin-top:10px}footer>span{font-size:12px;color:var(--muted)}.compare-bar{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);max-width:870px;width:calc(100% - 40px);z-index:5;background:#172849;color:white;padding:15px 22px;border-radius:12px;box-shadow:0 7px 40px #14244640;display:flex;align-items:center;justify-content:space-between;gap:18px}.compare-bar[hidden]{display:none}.compare-bar b{font-size:15px}.compare-bar small{color:#acb7d0}.compare-bar #selectedNames{display:block;font-size:12px;color:#bac6de;margin-top:3px}.bar-actions{display:flex;align-items:center;gap:10px;flex:none}.bar-actions .text-button{color:#b9c6df}.primary{background:var(--blue);color:white;border:0;border-radius:7px;padding:12px 22px;font-size:14px;font-weight:650}.primary:disabled{opacity:.5;cursor:default}dialog{border:0;border-radius:16px;padding:26px;max-width:940px;width:calc(100% - 32px);max-height:90vh;color:var(--ink);box-shadow:0 20px 80px #14244633}dialog::backdrop{background:#101e3b80;backdrop-filter:blur(3px)}.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.close{border:0;background:var(--light);border-radius:50%;width:38px;height:38px;font-size:26px;color:var(--muted);flex:none}.dialog-note{padding:12px;background:var(--light);font-size:13px;color:var(--muted);border-radius:7px;margin-bottom:18px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:14px}td,th{padding:15px 12px;border-bottom:1px solid var(--line);text-align:left;min-width:140px}th{background:var(--light);font-weight:600}th:first-child{min-width:150px}td strong{color:var(--blue);font-size:19px}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:20px 0}.detail-grid>div{background:var(--light);padding:18px;border-radius:9px}.detail-grid span{display:block;font-size:13px;color:var(--muted)}.detail-grid b{font-size:24px}.about-copy p{margin:12px 0;font-size:15px}.about-copy h3{font-size:17px;margin-top:24px}#toast{position:fixed;top:20px;left:50%;transform:translateX(-50%);background:#162443;color:#fff;border-radius:8px;padding:12px 20px;z-index:15;box-shadow:0 5px 20px #0002;display:none;font-size:14px}.mobile{display:none}@media(min-width:1450px){main{max-width:1300px}header{max-width:1380px}}@media(max-width:1320px){main{margin:0 35px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:800px){header{padding:0 20px;height:70px}.header-label{display:none}main{margin:0 20px}.intro{padding:26px 0;gap:15px}h1{font-size:29px}.intro-photo{width:200px;height:170px}.workspace{grid-template-columns:210px minmax(0,1fr);gap:20px}aside{padding-right:18px}.cards{grid-template-columns:1fr}.results-header{align-items:start;flex-direction:column}.sort{width:100%;justify-content:space-between}}@media(max-width:600px){header{padding:0 16px}.logo{font-size:18px}.mark{width:30px;height:30px;line-height:30px;font-size:22px}header .text-button{font-size:12px}main{margin:0 16px}.demo{font-size:12px;padding:10px 12px}.intro{position:relative;overflow:hidden;min-height:210px}.intro>div:first-child{z-index:1;max-width:78%}.eyebrow{font-size:10px;letter-spacing:1px}h1{font-size:27px;margin:9px 0;line-height:1.55}.intro p{font-size:13px}.mobile{display:block}.intro-photo{position:absolute;right:-54px;width:160px;height:175px;opacity:.22;z-index:0}.intro-photo span{display:none}.workspace{display:block;padding-top:20px}aside{border-right:0;padding:0 0 18px;border-bottom:1px solid var(--line);margin-bottom:20px}.filter-title{margin-bottom:12px}.search input{margin-top:5px}.search{font-size:13px}fieldset{margin:16px 0}legend{font-size:13px;margin-bottom:7px}.chip{font-size:12px;padding:8px 12px}.range-label{margin-bottom:0;display:flex;justify-content:space-between;align-items:center}.range-label span{font-size:18px;margin:0}.range-ends{display:none}.check{margin-top:10px}.filter-note{display:none}.quick{gap:6px;margin-bottom:12px}.quick span{font-size:11px}.quick button{padding:6px 10px;font-size:11px}.results-header{flex-direction:row;align-items:center;flex-wrap:wrap;gap:5px}.results-header h2{font-size:25px}.sort{width:auto;font-size:11px}.sort select{max-width:155px;font-size:11px}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.card-top{padding:12px 10px;min-height:117px}.card-kicker{font-size:9px;letter-spacing:0}.type{font-size:9px;padding:1px 4px}.card h3{font-size:17px;line-height:1.45;letter-spacing:-.7px}.flavor{font-size:12px}.card-body{padding:11px 10px}.metrics{gap:5px}.metric-label{font-size:10px}.metric-number{font-size:22px}.metric-number small{font-size:11px}.taste-row{font-size:11px;gap:4px}.dots{gap:3px}.dots i{width:11px}.taste-description{font-size:11px;min-height:36px;margin:9px 0}.card-actions{flex-direction:column;gap:6px}.details,.add{font-size:12px;padding:9px 3px}.compare-bar{bottom:12px;padding:12px 14px;width:calc(100% - 20px);gap:8px}.compare-bar #selectedNames{max-width:155px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:11px}.bar-actions{gap:4px}.primary{padding:11px 15px;font-size:13px}.bar-actions .text-button{font-size:12px;padding:6px}.compare-bar b{font-size:14px}.dialog-header h2{font-size:18px}dialog{padding:18px}.detail-grid{gap:9px}.detail-grid>div{padding:13px}.detail-grid b{font-size:22px}}@media(max-width:350px){.cards{grid-template-columns:1fr}.intro h1{font-size:24px}.results-header small{font-size:12px}}

.mobile-filter{display:none}.card-kicker,.type,.metric-label,.quick,.quick button,.filter-title .text-button{font-size:12px}.chip,.search,.check,.range-label,.details,.add{font-size:14px}.taste-description,.taste-row{font-size:13px}@media(max-width:600px){.mobile-filter{display:block;width:100%;border:1px solid var(--line);border-radius:7px;background:white;padding:11px;text-align:left;color:var(--ink);font-size:14px;margin-bottom:15px}.workspace{border-top:0;padding-top:0}aside{display:none}aside.expanded{display:block}.card-kicker{flex-wrap:wrap;gap:3px}.card-top{min-height:130px}.card-kicker,.type,.metric-label,.taste-description,.taste-row,.quick button,.quick span{font-size:12px}.card-kicker{letter-spacing:-.4px}.metric-label{line-height:1.4;min-height:34px}.card-actions .add,.card-actions .details{font-size:13px}.chip,.check,.search{font-size:14px}.quick{gap:5px}.quick span{width:100%}.intro{min-height:190px;padding:20px 0}.intro h1{font-size:26px}.intro>div:first-child{max-width:90%}}
