:root { --bg:#0f172a; --card:#1e293b; --text:#fff; --muted:#94a3b8; --accent:#10b981; }
* { box-sizing: border-box; }
body { margin:0; font-family: -apple-system, system-ui, sans-serif; background:var(--bg); color:var(--text); padding:16px; }
.header { display:flex; align-items:center; justify-content:space-between; margin-bottom:16px; }
h1 { font-size:18px; margin:0; }
select, textarea, button, input { font-family:inherit; font-size:14px; }
select { background:var(--card); color:var(--text); border:1px solid #334155; border-radius:8px; padding:6px 10px; }
textarea { width:100%; background:var(--card); color:var(--text); border:1px solid #334155; border-radius:10px; padding:12px; resize:vertical; }
input[type="text"] { width:100%; background:var(--card); color:var(--text); border:1px solid #334155; border-radius:10px; padding:10px 12px; margin:8px 0; }
.filters { display:flex; flex-direction:column; gap:8px; margin:12px 0; font-size:13px; color:var(--muted); }
.filters label { display:flex; align-items:center; gap:8px; }
button { background:var(--accent); color:#fff; border:none; border-radius:10px; padding:14px; width:100%; font-weight:600; cursor:pointer; }
button:disabled { opacity:0.5; cursor:not-allowed; }
#status { margin:12px 0; color:var(--muted); font-size:13px; min-height:18px; }
.card { display:flex; align-items:center; gap:10px; background:var(--card); border-radius:10px; padding:10px; margin-bottom:8px; text-decoration:none; color:var(--text); }
.card-icon { width:32px; height:32px; background:#334155; border-radius:6px; display:flex; align-items:center; justify-content:center; font-size:14px; flex-shrink:0; }
.card-body { flex:1; min-width:0; }
.card-store { font-size:13px; font-weight:600; }
.card-meta { font-size:11px; color:var(--muted); margin-top:2px; }
.card-price { text-align:right; }
.price { color:var(--accent); font-size:14px; font-weight:700; }
.old-price { color:var(--muted); font-size:11px; text-decoration:line-through; }
.total { color:var(--text); font-size:11px; margin-top:1px; }
#log { display:none; background:#0b1424; border:1px solid #1e293b; border-radius:10px; padding:8px 10px; margin:8px 0; max-height:200px; overflow-y:auto; font-size:12px; font-family: ui-monospace, monospace; }
.log-line { color:var(--muted); padding:2px 0; line-height:1.4; word-break:break-word; }
.section-title { font-size:15px; margin:18px 0 8px; }
.item-section { margin-bottom:14px; }
.item-title { font-size:14px; font-weight:600; margin:14px 0 6px; color:#e2e8f0; }
.combo { background:var(--card); border-radius:10px; padding:12px; margin-bottom:10px; border:1px solid #1e293b; }
.combo-head { display:flex; align-items:baseline; justify-content:space-between; gap:8px; }
.combo-title { font-weight:700; font-size:15px; }
.combo-total { color:var(--accent); font-weight:700; font-size:16px; }
.combo-meta { font-size:11px; color:var(--muted); margin:4px 0 10px; }
.combo-items { display:flex; flex-direction:column; gap:6px; }
.combo-item { display:flex; flex-direction:column; padding:8px 10px; background:#0b1424; border-radius:8px; text-decoration:none; color:var(--text); font-size:13px; gap:3px; border:1px solid transparent; }
.combo-item:active { border-color:#334155; }
.combo-item-main { display:flex; justify-content:space-between; align-items:center; gap:8px; }
.combo-item-line { flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.combo-item-price { color:var(--accent); font-weight:600; white-space:nowrap; display:flex; flex-direction:column; align-items:flex-end; }
.combo-item-unit { color:var(--muted); font-weight:400; font-size:11px; margin-top:1px; }
.combo-item-reason { color:var(--muted); font-size:11px; font-style:italic; line-height:1.3; padding-left:18px; }
.pack-info { color:var(--muted); font-weight:400; font-size:11px; }
