.cmp-wrap{min-height:62vh;margin-top:34px;padding-bottom:60px}.cmp-head{flex-wrap:wrap;align-items:flex-start;gap:16px;margin-bottom:22px;display:flex}.cmp-title{font-family:var(--disp);color:var(--ink);letter-spacing:-.02em;margin:0 0 6px;font-size:1.9rem;font-weight:800}.cmp-sub{color:var(--muted);max-width:620px;margin:0;font-size:.92rem}.cmp-lock{background:var(--brand-soft);color:var(--brand);white-space:nowrap;border:1px solid #1c62b438;border-radius:999px;align-items:center;gap:9px;margin-left:auto;padding:9px 9px 9px 15px;font-size:.84rem;font-weight:700;display:inline-flex}.cmp-lock button{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:999px;padding:5px 12px;font-size:.76rem;font-weight:700;transition:all .18s}.cmp-lock button:hover{background:var(--brand-2)}.cmp-banner{border-radius:var(--radius-sm);align-items:center;gap:10px;margin-bottom:18px;padding:13px 18px;font-size:.9rem;font-weight:600;display:flex}.cmp-banner--warn{color:#8a4b08;background:#fff4e5;border:1px solid #f5cd9a}.cmp-slots{grid-template-columns:repeat(var(--cmp-cols,3), minmax(0, 1fr));gap:16px;margin-bottom:22px;display:grid}.cmp-slot{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);flex-direction:column;min-height:268px;padding:16px;display:flex;position:relative}.cmp-slot--empty{text-align:center;box-shadow:none;background:0 0;border-style:dashed;border-color:#1c62b466;justify-content:center;align-items:center;gap:12px}.cmp-slot-num{background:var(--brand-soft);width:22px;height:22px;color:var(--brand);border-radius:50%;place-items:center;font-size:.72rem;font-weight:800;display:grid;position:absolute;top:10px;left:12px}.cmp-plus{background:var(--brand-soft);width:46px;height:46px;color:var(--brand);border-radius:50%;place-items:center;font-size:1.1rem;display:grid}.cmp-slot-hint{color:var(--muted);margin:0;font-size:.74rem;line-height:1.4}.cmp-search{width:100%;position:relative}.cmp-search-ico{color:var(--muted);pointer-events:none;font-size:.82rem;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.cmp-search-input{border:1.5px solid var(--line);background:var(--card);width:100%;color:var(--ink);border-radius:11px;outline:none;padding:11px 12px 11px 34px;font-size:.88rem;font-weight:500;transition:all .18s}.cmp-search-input:focus{border-color:var(--brand);box-shadow:0 0 0 3px #1c62b421}.cmp-suggest{z-index:40;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-md);text-align:left;border-radius:13px;max-height:310px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.cmp-suggest-item{cursor:pointer;border-radius:9px;align-items:center;gap:10px;padding:9px 10px;display:flex}.cmp-suggest-item.is-active{background:var(--brand-soft)}.cmp-suggest-ico{color:var(--brand);text-align:center;flex-shrink:0;width:16px;font-size:.85rem}.cmp-suggest-text{flex-direction:column;flex:1;min-width:0;display:flex}.cmp-suggest-text b{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;font-weight:700;overflow:hidden}.cmp-suggest-text small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.cmp-suggest-type{text-transform:uppercase;letter-spacing:.04em;color:var(--brand);background:var(--brand-soft);border-radius:999px;flex-shrink:0;padding:3px 8px;font-size:.66rem;font-weight:800}.cmp-suggest-empty{color:var(--muted);text-align:center;padding:14px 10px;font-size:.82rem}.cmp-remove{z-index:5;color:#fff;cursor:pointer;background:#1018288c;border:0;border-radius:50%;place-items:center;width:26px;height:26px;font-size:.78rem;transition:all .18s;display:grid;position:absolute;top:8px;right:8px}.cmp-remove:hover{background:#c0392b}.cmp-thumb{background:var(--brand-soft);cursor:pointer;border-radius:11px;height:118px;margin-bottom:11px;position:relative;overflow:hidden}.cmp-thumb img{object-fit:cover;width:100%;height:100%;transition:transform .3s;display:block}.cmp-thumb:hover img{transform:scale(1.05)}.cmp-thumb-fallback{color:#9aabcc;place-items:center;width:100%;height:100%;font-size:2rem;display:grid}.cmp-thumb-type{color:var(--brand-ink);text-transform:uppercase;letter-spacing:.04em;background:#fffffff0;border-radius:999px;padding:3px 9px;font-size:.66rem;font-weight:800;position:absolute;bottom:8px;left:8px}.cmp-slot-name{color:var(--ink);cursor:pointer;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 5px;font-size:.98rem;font-weight:800;line-height:1.3;display:-webkit-box;overflow:hidden}.cmp-slot-name:hover{color:var(--brand)}.cmp-slot-loc{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-bottom:8px;font-size:.78rem;overflow:hidden}.cmp-slot-loc i{color:var(--brand)}.cmp-slot-price{color:var(--brand-ink);margin-top:auto;font-size:1.02rem;font-weight:800}.cmp-slot-link{text-align:left;color:var(--brand);cursor:pointer;background:0 0;border:0;margin-top:9px;padding:0;font-size:.8rem;font-weight:700}.cmp-slot-link:hover{text-decoration:underline}.cmp-skel{background:linear-gradient(90deg, var(--line) 25%, #ffffff80 50%, var(--line) 75%);background-size:200% 100%;border-radius:8px;animation:1.3s linear infinite cmp-shimmer}.cmp-skel-thumb{height:118px;margin-bottom:11px}.cmp-skel-line{height:11px;margin-top:9px}.cmp-skel-line.short{width:55%}@keyframes cmp-shimmer{to{background-position:-200% 0}}.cmp-toolbar{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:16px;padding:12px 16px;display:flex}.cmp-switch{color:var(--ink);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:9px;font-size:.86rem;font-weight:700;display:inline-flex}.cmp-switch input{opacity:0;width:0;height:0;position:absolute}.cmp-switch-ui{background:var(--line);border-radius:999px;flex-shrink:0;width:40px;height:22px;transition:all .2s;position:relative}.cmp-switch-ui:after{content:"";width:16px;height:16px;box-shadow:var(--shadow-sm);background:#fff;border-radius:50%;transition:all .2s;position:absolute;top:3px;left:3px}.cmp-switch input:checked+.cmp-switch-ui{background:var(--brand)}.cmp-switch input:checked+.cmp-switch-ui:after{transform:translate(18px)}.cmp-switch input:focus-visible+.cmp-switch-ui{box-shadow:0 0 0 3px #1c62b440}.cmp-hidden-note{color:var(--muted);font-size:.78rem;font-weight:600}.cmp-toolbar-actions{gap:8px;margin-left:auto;display:flex}.cmp-btn{background:var(--brand-soft);color:var(--brand);cursor:pointer;border:0;border-radius:10px;align-items:center;gap:7px;padding:9px 15px;font-size:.8rem;font-weight:700;transition:all .18s;display:inline-flex}.cmp-btn:hover{background:var(--brand);color:#fff}.cmp-btn--ghost{color:var(--muted);border:1px solid var(--line);background:0 0}.cmp-btn--ghost:hover{color:#fff;background:#c0392b;border-color:#c0392b}.cmp-table-scroll{border-radius:var(--radius-sm);-webkit-overflow-scrolling:touch;overflow-x:auto}.cmp-table{border-collapse:separate;border-spacing:0;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-sm);width:100%;min-width:calc(210px + var(--cmp-cols,2) * 190px);overflow:hidden}.cmp-table thead th{z-index:20;background:var(--brand);color:#fff;text-align:left;vertical-align:bottom;padding:13px 16px;font-size:.84rem;font-weight:800;position:sticky;top:0}.cmp-table thead .cmp-th-label{z-index:25;width:210px;min-width:210px;left:0}.cmp-th-name{line-height:1.3;display:block}.cmp-th-sub{opacity:.82;margin-top:2px;font-size:.72rem;font-weight:500;display:block}.cmp-group-row th{background:var(--brand-soft);border-top:1px solid var(--line);padding:0}.cmp-group-btn{cursor:pointer;width:100%;font-family:var(--disp);color:var(--brand-ink);text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:12px 16px;font-size:.92rem;font-weight:800;display:flex}.cmp-group-ico{color:var(--brand)}.cmp-group-count{color:var(--brand);background:#1c62b426;border-radius:999px;padding:2px 8px;font-size:.7rem;font-weight:800}.cmp-group-chev{color:var(--muted);margin-left:auto;font-size:.75rem}.cmp-row:nth-child(2n){background:#1c62b407}.cmp-row:hover{background:var(--brand-soft)}.cmp-row-label,.cmp-cell{border-top:1px solid var(--line);vertical-align:top;text-align:left;padding:12px 16px;font-size:.85rem}.cmp-row-label{z-index:10;background:var(--card);width:210px;min-width:210px;color:var(--muted);box-shadow:1px 0 0 var(--line);font-weight:700;position:sticky;left:0}.cmp-row:hover .cmp-row-label{background:var(--brand-soft)}.cmp-row-note{opacity:.7;margin-top:2px;font-size:.68rem;font-weight:600;display:block}.cmp-cell{color:var(--ink);white-space:pre-line;word-break:break-word;font-weight:600}.cmp-na{color:var(--muted);opacity:.6;font-weight:500}.cmp-cell--bool{text-align:center;font-size:1rem}.cmp-cell--bool.is-yes{color:#1f9d55}.cmp-cell--bool.is-no{color:var(--muted);opacity:.45}.cmp-cell.is-best{color:#14713c;background:#1f9d5517;font-weight:800}.cmp-best-tag{color:#fff;text-transform:uppercase;letter-spacing:.05em;vertical-align:middle;background:#1f9d55;border-radius:999px;margin-left:8px;padding:2px 7px;font-size:.62rem;font-weight:800;display:inline-block}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.cmp-empty{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);text-align:center;color:var(--muted);box-shadow:var(--shadow-sm);padding:60px 30px}.cmp-empty--flush{margin-top:16px;padding:40px 30px}.cmp-empty-ico{color:var(--brand);opacity:.55;margin-bottom:14px;font-size:2.6rem}.cmp-empty h3{color:var(--ink);margin:0 0 8px;font-size:1.15rem}.cmp-empty p{max-width:460px;margin:0 auto;font-size:.9rem;line-height:1.6}.cmp-empty .load-more{margin-top:22px}.cmp-cta{border-radius:var(--radius-sm);background:linear-gradient(135deg, var(--brand), var(--brand-2));color:#fff;box-shadow:var(--shadow);flex-wrap:wrap;align-items:center;gap:18px;margin-top:22px;padding:22px 26px;display:flex}.cmp-cta h3{margin:0 0 4px;font-size:1.1rem}.cmp-cta p{opacity:.9;margin:0;font-size:.87rem}.cmp-cta-btn{color:var(--brand);cursor:pointer;background:#fff;border:0;border-radius:11px;margin-left:auto;padding:13px 26px;font-size:.88rem;font-weight:800;transition:all .2s}.cmp-cta-btn:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}body.dark-mode .cmp-slot,body.dark-mode .cmp-toolbar,body.dark-mode .cmp-table,body.dark-mode .cmp-row-label,body.dark-mode .cmp-suggest,body.dark-mode .cmp-search-input,body.dark-mode .cmp-empty{background:var(--card);color:var(--ink);border-color:var(--line)}body.dark-mode .cmp-slot--empty{background:0 0}body.dark-mode .cmp-row:nth-child(2n){background:#ffffff07}body.dark-mode .cmp-row:hover,body.dark-mode .cmp-row:hover .cmp-row-label{background:var(--brand-soft)}body.dark-mode .cmp-thumb-type{color:var(--ink);background:#1f2937f0}body.dark-mode .cmp-banner--warn{color:#f5cd9a;background:#3a2a14;border-color:#6b4a1c}body.dark-mode .cmp-cell.is-best{color:#7ee2a8;background:#1f9d552e}body.dark-mode .cmp-switch-ui:after{background:var(--bg)}@media (max-width:900px){.cmp-title{font-size:1.5rem}.cmp-lock{margin-left:0}.cmp-slots{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;grid-template-columns:none;grid-auto-columns:76vw;grid-auto-flow:column;padding-bottom:6px;overflow-x:auto}.cmp-slot{scroll-snap-align:start}.cmp-table{min-width:calc(140px + var(--cmp-cols,2) * 160px)}.cmp-table thead .cmp-th-label,.cmp-row-label{width:140px;min-width:140px}.cmp-row-label,.cmp-cell{padding:10px 12px;font-size:.8rem}.cmp-toolbar-actions,.cmp-cta-btn{width:100%;margin-left:0}}@media (max-width:560px){.cmp-slots{grid-auto-columns:82vw}}@media print{.top,.cmp-toolbar,.cmp-cta,.cmp-remove,.cmp-slot--empty,.cmp-slot-link{display:none!important}.cmp-table-scroll{overflow:visible}.cmp-table{min-width:0}.cmp-row{break-inside:avoid}}
