.deal-card{border:1px solid var(--color-border);border-radius:var(--radius-m);background:var(--color-surface);box-shadow:var(--shadow-1);overflow:hidden}.deal-card.is-open{border-color:var(--color-accent)}.deal-head{display:flex;align-items:stretch}.deal-summary{flex:1;display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"photo model  total" "photo brand  total" "photo price  total";align-items:center;gap:1px 10px;padding:10px 4px 10px 10px;text-align:left}.deal-brand{grid-area:brand;font-size:11px;font-weight:600;color:var(--color-text-muted)}.deal-model{grid-area:model;font-size:16px;font-weight:700}.deal-price{grid-area:price;font-size:11px;color:var(--color-text-muted)}.deal-total{grid-area:total;font-size:12px;color:var(--color-text-sub);white-space:nowrap}.deal-total strong{display:block;font-size:17px;font-weight:700;color:var(--color-accent)}.fav-btn{width:46px;font-size:19px;color:var(--color-text-muted)}.fav-btn.is-on{color:var(--color-warning)}.deal-detail{padding:4px 14px 14px;border-top:1px solid var(--color-border)}.benefit-list{list-style:none;margin-top:10px}.benefit-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 10px;padding:9px 0;border-bottom:1px solid var(--color-surface-2)}.benefit-row:last-child{border-bottom:none}.benefit-label{font-size:13px;line-height:1.5;overflow-wrap:anywhere;word-break:keep-all}.benefit-amount{font-size:13px;font-weight:600;white-space:nowrap;align-self:start}.benefit-note{grid-column:1 / -1;font-size:11px;line-height:1.5;color:var(--color-text-muted);overflow-wrap:anywhere}.tag-alt{margin-left:5px;padding:1px 5px;border-radius:4px;background:var(--color-surface-2);font-size:10px;font-style:normal;color:var(--color-text-sub)}.benefit-list.is-conditional .benefit-label,.benefit-list.is-conditional .benefit-amount{color:var(--color-text-sub)}.detail-sub{margin-top:14px;font-size:12px;font-weight:600;color:var(--color-text-sub)}.note-alt{margin-top:8px;font-size:11px;line-height:1.5;color:var(--color-text-muted)}.detail-financing{margin-top:12px;font-size:12px;line-height:1.5;color:var(--color-text-sub)}.detail-link{display:block;margin-top:10px;padding:10px 12px;border-radius:var(--radius-s);background:var(--color-surface-2);font-size:12px;line-height:1.5;color:var(--color-text-sub);text-decoration:none}.action-row{display:flex;gap:6px;margin-top:8px}.action-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:5px;min-height:44px;border:1px solid var(--color-border);border-radius:var(--radius-s);font-size:13px;font-weight:600;color:var(--color-text);text-decoration:none}.action-btn.is-primary{border-color:var(--color-accent);color:var(--color-accent)}.deal-photo{grid-area:photo;width:128px;height:80px;border-radius:var(--radius-s);object-fit:cover;background:var(--color-surface-2)}.deal-thumb{grid-area:photo;position:relative;display:block}.deal-badge{position:absolute;top:5px;right:5px;padding:3px 7px;border-radius:999px;background:var(--color-accent);font-size:11px;font-weight:700;font-style:normal;color:#fff;letter-spacing:-.02em}.benefit-row.is-checkable{display:block;padding:0}.benefit-check{width:100%;display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:3px 10px;padding:9px 0;text-align:left}.benefit-check .benefit-note{grid-column:2 / -1}.check-box{grid-row:1 / 2;display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:1.5px solid var(--color-border);border-radius:6px;font-size:12px;font-weight:700;color:transparent}.benefit-row.is-checked .check-box{border-color:var(--color-accent);background:var(--color-accent);color:#fff}.benefit-row.is-checkable .benefit-label,.benefit-row.is-checkable .benefit-amount{color:var(--color-text-muted)}.benefit-row.is-checked .benefit-label{color:var(--color-text)}.benefit-row.is-checked .benefit-amount{color:var(--color-text);font-weight:700}.my-total{display:flex;align-items:baseline;justify-content:space-between;margin-top:12px;padding:12px 14px;border-radius:var(--radius-m);background:var(--color-surface-2)}.my-total span{font-size:13px;font-weight:600;color:var(--color-text-sub)}.my-total strong{font-size:20px;font-weight:700;color:var(--color-accent)}.deal-group{border:1px solid var(--color-border);border-radius:var(--radius-m);background:var(--color-surface);box-shadow:var(--shadow-1);overflow:hidden}.deal-group.is-open{border-color:var(--color-accent)}.group-head{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;grid-template-areas:"photo name   total  caret" "photo brand  total  caret" "photo count  total  caret";align-items:center;gap:1px 10px;padding:10px;text-align:left}.group-brand{grid-area:brand;font-size:11px;font-weight:600;color:var(--color-text-muted)}.group-name{grid-area:name;font-size:16px;font-weight:700}.group-fav{margin-left:6px;font-size:11px;font-style:normal;color:var(--color-warning)}.group-count{grid-area:count;font-size:11px;color:var(--color-text-muted)}.group-total{grid-area:total;font-size:12px;color:var(--color-text-sub);white-space:nowrap;text-align:right}.group-total strong{display:block;font-size:17px;font-weight:700;color:var(--color-accent)}.group-caret{grid-area:caret;width:18px;font-size:13px;color:var(--color-text-muted);text-align:center}.group-body{display:flex;flex-direction:column;gap:6px;padding:0 8px 8px;border-top:1px solid var(--color-border)}.group-body .deal-card{border-color:var(--color-border);background:var(--color-surface-2);box-shadow:none}.group-body .deal-card.is-open{border-color:var(--color-accent)}.group-body .deal-card:first-child{margin-top:8px}.group-dealer{display:flex;align-items:center;justify-content:center;gap:6px;min-height:46px;margin-top:2px;border:1px solid var(--color-border);border-radius:var(--radius-s);background:var(--color-surface);font-size:13px;font-weight:600;color:var(--color-text);text-decoration:none}.group-thumb{grid-area:photo;position:relative;display:block}.group-photo{width:128px;height:80px;border-radius:var(--radius-s);object-fit:cover;background:var(--color-surface-2)}.group-body .deal-photo{display:none}.group-search{display:flex;align-items:center;justify-content:center;gap:6px;min-height:46px;margin-top:2px;border:1px solid var(--color-border);border-radius:var(--radius-s);background:var(--color-surface);font-size:13px;font-weight:600;color:var(--color-text);text-decoration:none}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:flex-end;justify-content:center;background:#0000008c}.sheet{width:100%;max-width:430px;max-height:85dvh;overflow-y:auto;padding:8px 20px calc(24px + env(safe-area-inset-bottom));border-radius:18px 18px 0 0;background:var(--color-surface);animation:sheet-up .18s ease-out}@keyframes sheet-up{0%{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}@media (prefers-reduced-motion: reduce){.sheet{animation:none}}.sheet-handle{width:36px;height:4px;margin:4px auto 16px;border-radius:2px;background:var(--color-border)}.sheet-title{font-size:17px;font-weight:700}.sheet-list{margin-top:14px;padding:12px 14px;border-radius:var(--radius-m);background:var(--color-surface-2)}.sheet-list>div{display:grid;grid-template-columns:56px minmax(0,1fr);gap:10px;padding:5px 0}.sheet-list dt{font-size:12px;color:var(--color-text-muted)}.sheet-list dd{font-size:13px;line-height:1.5}.sheet-note{margin-top:12px;font-size:13px;line-height:1.65;color:var(--color-text-sub)}.sheet-note strong{color:var(--color-text);font-weight:600}.sheet-close{width:100%;min-height:48px;margin-top:20px;border-radius:var(--radius-m);background:var(--color-surface-2);font-size:15px;font-weight:600}.ad-placeholder,.ad-slot{width:100%;min-height:64px;margin-top:16px}.ad-placeholder{display:flex;align-items:center;justify-content:center;border-radius:var(--radius-s);background:repeating-linear-gradient(45deg,var(--color-surface-2),var(--color-surface-2) 8px,var(--color-bg) 8px,var(--color-bg) 16px);font-size:12px;font-weight:600;letter-spacing:.08em;color:var(--color-text-muted)}.app{display:flex;flex-direction:column;flex:1}.app-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 12px 4px 16px}.month{font-size:13px;font-weight:600;color:var(--color-text-sub)}.app-main{flex:1;padding:0 16px}.state{display:flex;flex-direction:column;align-items:center;gap:8px;padding:56px 24px;text-align:center}.state p{font-size:14px;color:var(--color-text-sub)}.state-title{font-size:15px;font-weight:600;color:var(--color-text)}.state-sub{font-size:13px;line-height:1.6;color:var(--color-text-muted)}.spinner{width:22px;height:22px;border:2px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.spinner{animation:none}}.placeholder{padding:24px 0;font-size:14px;color:var(--color-text-muted)}.section{margin-top:20px}.section-title{font-size:13px;font-weight:700;color:var(--color-text-sub)}.section-sub{margin-top:4px;font-size:12px;line-height:1.5;color:var(--color-text-muted)}.deal-list{display:flex;flex-direction:column;gap:8px;margin-top:10px}.brand-tabs{display:flex;gap:6px;margin-top:8px;overflow-x:auto;scrollbar-width:none}.brand-tabs::-webkit-scrollbar{display:none}.brand-tab{flex:0 0 auto;padding:7px 13px;border:1px solid var(--color-border);border-radius:999px;font-size:13px;color:var(--color-text-sub);white-space:nowrap}.brand-tab.is-on{border-color:var(--color-accent);background:var(--color-accent);color:#fff;font-weight:600}.link-list{display:flex;flex-direction:column;gap:6px;margin-top:10px;padding-bottom:24px}.link-card{display:flex;align-items:center;justify-content:space-between;min-height:46px;padding:0 14px;border:1px solid var(--color-border);border-radius:var(--radius-m);background:var(--color-surface);font-size:14px;color:var(--color-text);text-decoration:none}.link-arrow{color:var(--color-text-muted)}.brand-actions{display:flex;gap:6px;margin-top:10px}.brand-action{flex:1;display:flex;align-items:center;justify-content:center;gap:5px;min-height:44px;border:1px solid var(--color-border);border-radius:var(--radius-s);background:var(--color-surface);font-size:13px;font-weight:600;color:var(--color-text);text-decoration:none}.brand-action.is-primary{border-color:var(--color-accent);color:var(--color-accent)}.info-btn{min-height:32px;padding:0 10px;border-radius:999px;font-size:12px;color:var(--color-text-sub)}.footer-note{margin-top:20px;padding:0 2px 28px;font-size:11px;line-height:1.6;color:var(--color-text-muted)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-bg: #f8f9ff;--color-surface: #ffffff;--color-surface-2: #eff4ff;--color-text: #0b1c30;--color-text-sub: #44474c;--color-text-muted: #74777d;--color-border: #d3dcea;--color-accent: #0058bc;--color-success: #0f9d58;--color-warning: #e8710a;--color-danger: #ba1a1a;--radius-s: 8px;--radius-m: 12px;--radius-l: 16px;--shadow-1: 0 1px 2px rgba(11, 28, 48, .06), 0 2px 8px rgba(11, 28, 48, .05);font-family:Pretendard,-apple-system,Apple SD Gothic Neo,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}html{scrollbar-gutter:stable}body{min-height:100dvh;max-width:430px;margin:0 auto;background:var(--color-bg);overflow-x:hidden}#root{min-height:100dvh;display:flex;flex-direction:column;padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}button{cursor:pointer;border:none;background:none;font:inherit;color:inherit;min-height:44px}input,select{font:inherit;color:inherit}
