.app-shell{background:#f5f5f7;max-width:1200px;min-height:100vh;margin:0 auto;padding:16px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.hero-card{color:#fff;text-align:center;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:16px;margin-bottom:24px;padding:24px}.hero-card h1{margin:8px 0;font-size:1.8rem;font-weight:700}.eyebrow{opacity:.8;text-transform:uppercase;letter-spacing:1px;font-size:.75rem}.runtime-pill{background:#fff3;border-radius:20px;margin-top:12px;padding:6px 12px;font-size:.75rem;display:inline-block}.update-info{background:#ffffff1a;border-left:3px solid #10b981;border-radius:10px;flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px;padding:10px 14px;font-size:.85rem;display:flex}.update-label{color:#10b981;font-weight:600}.update-time{color:#fff;font-weight:500}.update-source{color:#fff9;font-size:.8rem}@media (width<=480px){.update-info{flex-direction:column;align-items:flex-start;gap:4px}}.product-sections{flex-direction:column;gap:32px;display:flex}.product-section{background:#fff;border-radius:16px;padding:20px;box-shadow:0 2px 8px #0000000f}.product-title{color:#1a1a2e;align-items:center;gap:8px;margin:0 0 16px;font-size:1.3rem;font-weight:700;display:flex}.price-tag{color:#666;background:#f0f0f0;border-radius:12px;padding:4px 10px;font-size:.85rem;font-weight:500}.card-grid{grid-template-columns:1fr;gap:16px;display:grid}@media (width>=768px){.card-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=1024px){.card-grid{grid-template-columns:repeat(3,1fr)}}.round-card{background:#fafafa;border:1px solid #e8e8e8;border-radius:12px;flex-direction:column;padding:20px;transition:transform .15s,box-shadow .15s;display:flex}.round-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.card-topline{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.verdict{text-transform:none;border-radius:20px;padding:6px 12px;font-size:.8rem;font-weight:700}.recommend-strong{color:#155724;background:#d4edda}.recommend-mild{color:#856404;background:#fff3cd}.recommend-hold{color:#383d41;background:#e2e3e5}.recommend-avoid{color:#721c24;background:#f8d7da}.save-button{cursor:pointer;color:#999;background:0 0;border:none;padding:4px;font-size:1.3rem;transition:color .2s}.save-button[aria-pressed=true]{color:gold}.round-title{color:#1a1a2e;margin:0 0 4px;font-size:1.1rem;font-weight:600}.meta{color:#888;margin:0 0 16px;font-size:.8rem}.probability-section{background:#fff;border-radius:10px;margin-bottom:12px;padding:14px}.probability-section h4{color:#555;margin:0 0 10px;font-size:.85rem;font-weight:600}.prob-row{border-bottom:1px solid #f0f0f0;flex-wrap:wrap;align-items:center;gap:12px;padding:10px 0;display:flex}.prob-row:last-child{border-bottom:none}.prob-rank{color:#444;min-width:32px;font-size:.85rem;font-weight:700}.prob-amount{color:#1a1a2e;min-width:100px;font-size:.9rem;font-weight:600}.prob-remaining{color:#666;background:#f0f0f0;border-radius:12px;padding:4px 10px;font-size:.8rem;font-weight:500}.prob-odds{color:#667eea;margin-left:auto;font-size:.8rem;font-weight:600}.round-badge{color:#1a1a2e;background:#f0f0f0;border-radius:20px;padding:6px 12px;font-size:.9rem;font-weight:600}.any-prize .prob-rank,.any-prize .prob-odds{color:#667eea}.source{color:#aaa;margin:0;font-size:.7rem}.empty-state{text-align:center;color:#999;padding:24px;font-size:.9rem}.error{color:#721c24;background:#f8d7da;border-radius:10px;margin-bottom:16px;padding:12px 16px;font-size:.85rem}
