*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,sans-serif;background:#0a0e16;color:#e8edf5;line-height:1.55}.app{min-height:100vh;display:flex;flex-direction:column}.app-header{position:sticky;top:0;z-index:100;background:#0d1520;border-bottom:1px solid #1a2535;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-inner{max-width:1200px;margin:0 auto;padding:.75rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.logo{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:#3fb950;flex-shrink:0}.logo-icon{font-size:1.3rem}.logo-text{font-size:1.1rem;font-weight:800;letter-spacing:-.03em}.header-nav{display:flex;align-items:center;gap:.2rem;flex-wrap:wrap}.hamburger{display:none;background:none;border:1px solid #2a3a50;border-radius:6px;cursor:pointer;padding:.5rem;width:36px;height:36px;align-items:center;justify-content:center;flex-shrink:0}.hamburger-icon{display:block;width:18px;height:2px;background:#8bafc0;position:relative;transition:background .2s}.hamburger-icon:before,.hamburger-icon:after{content:"";display:block;width:18px;height:2px;background:#8bafc0;position:absolute;left:0;transition:transform .2s,top .2s}.hamburger-icon:before{top:-6px}.hamburger-icon:after{top:6px}.hamburger-icon.open{background:transparent}.hamburger-icon.open:before{top:0;transform:rotate(45deg)}.hamburger-icon.open:after{top:0;transform:rotate(-45deg)}.nav-link{background:none;border:none;cursor:pointer;padding:.3rem .6rem;color:#6b7f93;font-size:.85rem;border-radius:6px;transition:color .15s,background .15s;text-decoration:none}.nav-link:hover{color:#e8edf5;background:#1a2535}.nav-link.active{color:#3fb950;font-weight:600}.nav-divider{color:#2a3a50;padding:0 .1rem}.app-main{flex:1;max-width:1200px;margin:0 auto;width:100%;padding:1.5rem}.error-banner{background:#2d1010;border:1px solid #f8514950;color:#f85149;padding:.75rem 1.5rem;font-size:.85rem}.hero-section{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.5rem 0 1rem;border-bottom:1px solid #1a2535;margin-bottom:1.5rem}.hero-text{flex:1}.hero-title{margin:0 0 .35rem;font-size:2rem;font-weight:800;color:#f0f6fc;letter-spacing:-.03em}.hero-sub{margin:0;font-size:.95rem;color:#5a7080}.hero-stats{display:flex;gap:1.5rem}.h-stat{display:flex;flex-direction:column;align-items:center;gap:.2rem}.h-num{font-size:1.5rem;font-weight:800;color:#3fb950}.h-label{font-size:.68rem;color:#4a6070;text-transform:uppercase;letter-spacing:.06em}.time-filter-bar{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:1.25rem}.time-filter-chip{display:flex;align-items:center;gap:.35rem;background:#111827;border:1px solid #1e2d3d;border-radius:8px;color:#6b7f93;padding:.4rem .85rem;cursor:pointer;font-size:.82rem;transition:all .15s;white-space:nowrap}.time-filter-chip:hover{border-color:#3fb95050;color:#e8edf5}.time-filter-chip.active{background:#1a3020;border-color:#3fb95050;color:#3fb950;font-weight:600}.time-filter-count{font-size:.7rem;background:#0a0e16;border-radius:4px;padding:.1rem .35rem;color:#5a7080;font-weight:500}.time-filter-chip.active .time-filter-count{background:#3fb95020;color:#3fb950}.bm-toggle.bm-reset{background:#1a2535;border-color:#f8514940;color:#f0a090;font-weight:600}.bm-toggle.bm-reset:hover{background:#2d1a1a;border-color:#f8514980}.sport-nav{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:1.5rem}.sport-pill{display:flex;align-items:center;gap:.35rem;background:#111827;border:1px solid #1e2d3d;border-radius:8px;color:#6b7f93;padding:.4rem .85rem;cursor:pointer;font-size:.82rem;transition:all .15s;white-space:nowrap}.sport-pill:hover{border-color:#3fb95050;color:#e8edf5}.sport-pill.active{background:#1a3020;border-color:#3fb95050;color:#3fb950;font-weight:600}.sport-pill-icon{font-size:.9rem}.section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.section-title{margin:0;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#5a7080}.event-count{font-size:.75rem;color:#3a5060}.featured-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.75rem;margin-bottom:2.5rem}.feat-card{display:flex;flex-direction:column;gap:.4rem;background:#111827;border:1px solid #1a2535;border-radius:12px;padding:.9rem 1rem;cursor:pointer;text-align:left;color:#e8edf5;transition:border-color .15s,background .15s;position:relative;overflow:hidden}.feat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:transparent;transition:background .2s}.feat-card:hover{border-color:#3fb95050;background:#131d28}.feat-card:hover:before{background:#3fb950}.feat-card.soon{border-color:#d2992240}.feat-card.soon:before{background:#d29922}.feat-card.live{border-color:#f8514940}.feat-card.live:before{background:#f85149}.feat-top{display:flex;align-items:center;justify-content:space-between}.feat-comp{font-size:.65rem;text-transform:uppercase;letter-spacing:.07em;color:#3fb950;font-weight:700}.feat-time{font-size:.72rem;color:#5a7080;font-weight:600}.feat-time.live-badge{color:#f85149}.feat-time.soon-badge{color:#d29922}.feat-title{font-size:.9rem;font-weight:700;color:#d0dbe8;line-height:1.4}.feat-odds-row{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.25rem}.feat-odd-chip{display:flex;align-items:center;gap:.3rem;background:#0a0e16;border:1px solid #1a2535;border-radius:6px;padding:.2rem .5rem;font-size:.7rem}.feat-odd-book{color:#5a7080}.feat-odd-price{color:#3fb950;font-weight:700}.events-list{display:flex;flex-direction:column;gap:.35rem}.ev-row{display:flex;align-items:center;justify-content:space-between;background:#111827;border:1px solid #1a2535;border-radius:10px;padding:.75rem 1rem;cursor:pointer;text-align:left;color:#e8edf5;transition:all .15s;gap:.75rem}.ev-row:hover{border-color:#2a4a3a;background:#131d28}.ev-row.active{border-color:#3fb95050;background:#1a3020}.ev-row-main{display:flex;flex-direction:column;gap:.2rem;flex:1;min-width:0}.ev-row-title{font-size:.88rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ev-row-badges{display:flex;gap:.25rem;margin-top:.15rem;flex-wrap:wrap}.ev-market-badge{display:inline-block;font-size:.6rem;font-weight:600;padding:.1rem .4rem;border-radius:3px;letter-spacing:.02em}.ev-market-badge.market-h2h{background:#1a3a1f;color:#3fb950}.ev-market-badge.market-spreads{background:#2a1a3a;color:#bc8cff}.ev-market-badge.market-totals{background:#1a2a3a;color:#58a6ff}.ev-market-badge.stale-badge{background:#3a2a1a;color:#f0883e;animation:stale-pulse 2s ease-in-out infinite}@keyframes stale-pulse{0%,to{opacity:1}50%{opacity:.6}}.ev-row-time{font-size:.72rem;color:#5a7080}.ev-row-arrow{font-size:1.2rem;color:#2a3a50;flex-shrink:0}.bookmark-btn{background:none;border:none;cursor:pointer;font-size:1rem;padding:.1rem .3rem;color:#5a7080;flex-shrink:0}.bookmark-btn:hover,.bookmark-btn.saved{color:#f0c040}.bookmark-btn-sm{font-size:.85rem;padding:.05rem .2rem}.saved-events-section{padding:.75rem}.saved-events-list{display:flex;flex-direction:column;gap:.5rem}.saved-event-row{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:#1a2a38;border-radius:6px}.saved-event-info{flex:1;text-align:left;background:none;border:none;cursor:pointer;display:flex;flex-direction:column;gap:.2rem}.saved-event-title{font-size:.88rem;font-weight:600;color:#e0e8f0}.saved-event-meta{font-size:.72rem;color:#5a7080}.saved-event-odds{display:flex;gap:.35rem;flex-wrap:wrap}.saved-odd-chip{font-size:.72rem;background:#2a3a50;padding:.1rem .35rem;border-radius:3px;color:#8ab0c0}.saved-remove-btn{background:none;border:none;color:#5a7080;cursor:pointer;font-size:.75rem;padding:.2rem .4rem}.saved-remove-btn:hover{color:#f85149}.saved-page{padding:.75rem}.saved-list{display:flex;flex-direction:column;gap:.5rem}.saved-row{display:flex;align-items:center;gap:.5rem;padding:.6rem;background:#1a2a38;border-radius:6px}.saved-info{flex:1;text-align:left;background:none;border:none;cursor:pointer;display:flex;flex-direction:column;gap:.2rem}.saved-title{font-size:.88rem;font-weight:600;color:#e0e8f0}.saved-meta{font-size:.72rem;color:#5a7080}.saved-remove{background:#2a3a50;border:none;color:#8ab0c0;cursor:pointer;font-size:.75rem;padding:.2rem .5rem;border-radius:4px}.saved-remove:hover{color:#f85149}.freshness-indicator{position:relative;margin-left:.5rem;margin-right:.5rem;cursor:default;-webkit-user-select:none;user-select:none}.freshness-badge{display:inline-flex;align-items:center;gap:.3rem;font-size:.7rem;font-weight:600;padding:.2rem .5rem;border-radius:9999px;letter-spacing:.02em}.freshness-dot{width:6px;height:6px;border-radius:50%;display:inline-block}.freshness-live .freshness-dot{background:#3fb950}.freshness-stale .freshness-dot{background:#f0883e}.freshness-offline .freshness-dot{background:#f85149}.freshness-live{background:#1a3a1f30;color:#3fb950}.freshness-stale{background:#3a2a1a30;color:#f0883e}.freshness-offline{background:#3a1a1a30;color:#f85149}.freshness-popup{position:absolute;top:100%;right:0;margin-top:.4rem;background:#161b22;border:1px solid #30363d;border-radius:8px;padding:.75rem;min-width:220px;z-index:100;box-shadow:0 8px 32px #0006;font-size:.8rem;color:#c9d1d9}.freshness-popup-title{font-weight:600;font-size:.85rem;margin-bottom:.5rem;color:#e6edf3}.freshness-popup-row{margin-bottom:.3rem}.freshness-warning{color:#f0883e}.odds-view{animation:slideIn .2s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.panel-loading{color:#5a7080;font-size:.9rem;padding:2rem;text-align:center}.odds-panel--fresh{animation:panelPulse .6s ease-out}@keyframes panelPulse{0%{opacity:.7}to{opacity:1}}.panel-header{display:flex;align-items:flex-start;gap:1rem;background:#111827;border:1px solid #1a2535;border-radius:14px;padding:1.25rem;margin-bottom:1rem;flex-wrap:wrap}.back-btn{background:#1a2535;border:1px solid #2a3a50;color:#8bafc0;cursor:pointer;font-size:.82rem;padding:.35rem .85rem;border-radius:8px;white-space:nowrap;transition:all .15s;flex-shrink:0}.back-btn:hover{background:#234;color:#e8edf5}.panel-event-info{flex:1;min-width:0}.panel-title{font-size:1rem;font-weight:700;color:#d0dbe8;margin-bottom:.2rem;line-height:1.4}.panel-meta{font-size:.75rem;color:#5a7080}.panel-format{flex-shrink:0}.fmt-select{background:#1a2535;border:1px solid #2a3a50;border-radius:8px;color:#8bafc0;padding:.35rem .75rem;font-size:.82rem;cursor:pointer;outline:none}.bookie-toggle-row{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.25rem}.bm-toggle{display:flex;align-items:center;gap:.35rem;background:#111827;border:1px solid #1a2535;border-radius:8px;color:#6b7f93;font-size:.75rem;padding:.35rem .75rem;cursor:pointer;transition:all .15s}.bm-toggle.off{opacity:.35;background:#0a0e16}.bm-toggle.on{color:#e8edf5}.bm-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.bm-filter-bar{margin-bottom:1rem;border:1px solid #1a2535;border-radius:10px;background:#0d1117;padding:.6rem .8rem}.bm-filter-bar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.4rem}.bm-filter-bar-title{font-size:.82rem;font-weight:600;color:#c9d1d9;display:flex;align-items:center;gap:.5rem}.bm-filter-bar-count{font-size:.7rem;font-weight:400;color:#3fb950;background:#3fb95018;border-radius:6px;padding:.1rem .4rem}.bm-filter-bar-actions{display:flex;align-items:center;gap:.4rem}.bm-filter-bar-btn{background:transparent;border:1px solid #1a2535;border-radius:6px;color:#6b7f93;font-size:.72rem;cursor:pointer;padding:.2rem .5rem;transition:all .15s}.bm-filter-bar-btn:hover{border-color:#3fb950;color:#3fb950}.bm-filter-show-all{color:#3fb950;border-color:#3fb95040}.bm-filter-show-all:hover{background:#3fb95018}.bm-filter-collapse{font-size:.65rem}.bm-filter-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.4rem}.bm-filter-all-hidden{font-size:.78rem;color:#f0a090;padding:.5rem 0;text-align:center}.bm-filter-reset-link{background:none;border:none;color:#3fb950;cursor:pointer;text-decoration:underline;font-size:inherit;padding:0}.market-section{margin-bottom:1.25rem}.market-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:#3fb950;font-weight:700;margin-bottom:.5rem;padding-left:.25rem}.odds-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.odds-table{width:100%;border-collapse:collapse;font-size:.82rem;min-width:360px}.odds-table th{text-align:center;color:#3a5060;font-size:.65rem;padding:.4rem .6rem;border-bottom:1px solid #1a2535;text-transform:uppercase;letter-spacing:.06em;font-weight:700;white-space:nowrap}.odds-table th.book-col{text-align:left;min-width:120px}.odds-table td{padding:.55rem .6rem;border-bottom:1px solid #111827;text-align:right}.odds-table td.book-col{text-align:left;font-weight:600;color:#8bafc0;display:flex;align-items:center;gap:.5rem;white-space:nowrap}.price-cell{text-align:right}.book-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.bookmaker-link{display:inline-flex;align-items:center;gap:.5rem;white-space:nowrap;font-weight:600;color:inherit;text-decoration:none}.bookmaker-link--active{color:#8bafc0;cursor:pointer;transition:color .15s ease,text-decoration-color .15s ease}.bookmaker-link--active:hover{color:#e8edf5;text-decoration:underline;text-decoration-color:#3fb950}.bookmaker-link--inactive{color:#8bafc0}.bookmaker-link-icon{font-size:.7em;opacity:.5;margin-left:.15rem;transition:opacity .15s ease}.bookmaker-link--active:hover .bookmaker-link-icon{opacity:1;color:#3fb950}.odds-table td.book-col .bookmaker-link{width:100%;height:100%}.vb-bookmaker-link{font-size:inherit;font-weight:600}.vb-bookmaker-link .book-dot{width:6px;height:6px}.feat-odd-chip .bookmaker-link{font-size:.7rem;font-weight:500}.feat-odd-chip .bookmaker-link-icon{font-size:.55rem}.odds-table tr:hover:not(:first-child) td{background:#111827}.odds-row:hover td.book-col{color:#e8edf5}.price-cell{font-weight:700;color:#3fb950;font-size:.9rem}.price-cell.best{color:#3fb950;position:relative}.price-cell.best:before{content:"";position:absolute;top:2px;right:2px;bottom:2px;left:2px;background:#3fb95018;border-radius:4px}.best-arrow{font-size:.6rem;margin-right:1px;vertical-align:middle;color:#3fb950}.no-odds{color:#5a7080;text-align:center;padding:2.5rem;font-size:.9rem}.loading-state,.empty-state{color:#5a7080;font-size:.9rem;padding:2rem;text-align:center}.last-updated-live{display:flex;align-items:center;justify-content:center;gap:.4rem;font-size:.72rem;color:#5a7080;padding:.5rem 0 .25rem}.last-updated-dot{width:6px;height:6px;border-radius:50%;background:#3fb950;flex-shrink:0}.stale-odds-warning{background:#3a2a1a;color:#f0883e;font-size:.8rem;padding:.5rem .75rem;border-radius:6px;margin:.25rem 0 .5rem;text-align:center;border:1px solid #f0883e30}.last-updated-dot--pulse{animation:dotPulse 1.5s ease-in-out}@keyframes dotPulse{0%{transform:scale(1);opacity:1;box-shadow:0 0 #3fb95080}50%{transform:scale(1.8);opacity:.6;box-shadow:0 0 8px 3px #3fb95040}to{transform:scale(1);opacity:1;box-shadow:0 0 #3fb95080}}.sort-col{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s}.sort-col:hover{color:#8bafc0}.sort-indicator{font-size:.55rem;margin-left:2px;color:#3fb950}.price-cell-inner{display:inline-flex;align-items:center;gap:3px}.move-arrow{font-size:.55rem;vertical-align:middle;line-height:1}.move-arrow.move-up{color:#3fb950}.move-arrow.move-down{color:#f85149}.move-arrow.move-same{color:#3a5060;opacity:.5}.odds-row--pulse{animation:rowPulse .8s ease-out}@keyframes rowPulse{0%{background-color:#1a302080}to{background-color:transparent}}.price-header{text-align:right}.app-footer{border-top:1px solid #1a2535;padding:1rem 1.5rem;display:flex;align-items:center;justify-content:center;gap:.5rem;font-size:.72rem;color:#3a5060}.skeleton{display:inline-block;border-radius:4px;background:linear-gradient(90deg,#111827 25%,#1a2535,#111827 75%);background-size:200% 100%;animation:skeleton-pulse 1.5s ease-in-out infinite}@keyframes skeleton-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-pill{border-radius:8px}.skeleton-card{cursor:default!important}.skeleton-row{cursor:default!important;pointer-events:none}.skeleton-inline{display:inline-block;vertical-align:middle;margin-right:.5rem}.skeleton-chip{border-radius:6px}.skeleton-toggle,.skeleton-btn{border-radius:8px}.error-boundary-fallback{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:4rem 2rem;text-align:center}.error-fallback-icon{font-size:3rem}.error-fallback-title{margin:0;font-size:1.4rem;font-weight:700;color:#f0f6fc}.error-fallback-desc{margin:0;font-size:.9rem;color:#6b7f93;max-width:400px}.error-fallback-retry{background:#1a3020;border:1px solid #3fb95060;border-radius:8px;color:#3fb950;cursor:pointer;font-size:.85rem;font-weight:600;padding:.55rem 1.4rem;transition:all .15s}.error-fallback-retry:hover{background:#224a30;border-color:#3fb95090}.connection-banner{display:flex;align-items:center;justify-content:space-between;padding:.6rem 1.5rem;font-size:.82rem}.connection-banner.connection-lost{background:#2d1a10;border-bottom:1px solid #f8514930;color:#f0a090}.connection-banner.connection-error{background:#2d2a10;border-bottom:1px solid #d2992230;color:#d2b980}.connection-banner-content{display:flex;align-items:center;gap:.5rem;flex:1}.connection-banner-icon{font-size:1rem}.connection-banner-text{font-weight:500}.connection-banner-ts{color:#5a7080;margin-left:.5rem;font-size:.75rem}.connection-banner-actions{display:flex;align-items:center;gap:.3rem}.connection-banner-retry{background:none;border:1px solid #f8514940;border-radius:6px;color:#f0a090;cursor:pointer;font-size:.78rem;padding:.25rem .65rem;transition:all .15s}.connection-banner-retry:hover{background:#3d2015;border-color:#f8514980}.connection-banner-dismiss{background:none;border:none;cursor:pointer;color:#5a7080;font-size:.9rem;padding:.2rem .4rem;transition:color .15s}.connection-banner-dismiss:hover{color:#e8edf5}@media (max-width: 768px){.app-main{padding:1rem}.header-inner{padding:.65rem 1rem}.hamburger{display:flex}.header-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#0d1520;border-bottom:1px solid #1a2535;padding:.75rem 1rem;flex-direction:column;gap:.25rem;z-index:99}.header-nav.open{display:flex}.nav-divider{display:none}.nav-link{padding:.55rem .75rem;font-size:.9rem;width:100%;text-align:left;border-radius:8px}.hero-section{flex-direction:column;gap:1rem}.hero-title{font-size:1.5rem}.hero-stats{gap:1rem}.h-num{font-size:1.2rem}.sport-nav{gap:.3rem;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:.5rem;scrollbar-width:thin;scrollbar-color:#2a3a50 transparent}.sport-nav::-webkit-scrollbar{height:4px}.sport-nav::-webkit-scrollbar-thumb{background:#2a3a50;border-radius:2px}.sport-pill{font-size:.75rem;padding:.35rem .7rem;flex-shrink:0}.featured-grid{grid-template-columns:1fr}.time-filter-bar{gap:.3rem;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:.5rem;scrollbar-width:thin;scrollbar-color:#2a3a50 transparent}.time-filter-chip{font-size:.75rem;padding:.35rem .7rem;flex-shrink:0}.bm-toggle.bm-reset{font-size:.65rem;padding:.25rem .5rem;flex-shrink:0}.ev-row{padding:.55rem .75rem}.ev-row-title{font-size:.82rem;max-width:200px}.panel-header{flex-direction:column;gap:.75rem}.panel-header .panel-event-info{width:100%}.bookie-toggle-row{gap:.3rem;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:.5rem}.bm-toggle{font-size:.7rem;padding:.3rem .6rem;flex-shrink:0}.bm-filter-bar{padding:.4rem .6rem}.bm-filter-bar-title{font-size:.75rem}.bm-filter-chips{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:.4rem}.odds-table-wrap{overflow-x:auto;position:relative}.odds-table{font-size:.78rem;min-width:unset}.odds-table th,.odds-table td{padding:.4rem .5rem}.odds-table th.book-col,.odds-table td.book-col{position:sticky;left:0;z-index:2;background:#0a0e16;min-width:90px;max-width:90px;overflow:hidden;text-overflow:ellipsis}.odds-table th.book-col{z-index:3}.feat-title{font-size:.85rem}.feat-odds-row{gap:.3rem}}@media (max-width: 400px){.app-main{padding:.75rem}.header-inner{padding:.5rem .75rem}.logo-text{font-size:.95rem}.hero-title{font-size:1.25rem}.hero-sub{font-size:.82rem}.h-num{font-size:1rem}.h-label{font-size:.6rem}.sport-pill{font-size:.7rem;padding:.3rem .55rem}.feat-card{padding:.65rem .75rem}.feat-title{font-size:.82rem}.feat-comp{font-size:.6rem}.feat-time{font-size:.65rem}.odds-table th.book-col,.odds-table td.book-col{min-width:72px;max-width:72px}.odds-table{font-size:.72rem}.price-cell{font-size:.8rem}.ev-row-title{max-width:160px;font-size:.78rem}.panel-title{font-size:.9rem}.panel-meta{font-size:.68rem}.app-footer{flex-direction:column;gap:.15rem;font-size:.65rem}}.history-toggle-btn{display:block;width:100%;margin-top:1rem;padding:.6rem 1rem;background:#111827;border:1px solid #1e2d3d;border-radius:10px;color:#3fb950;font-size:.82rem;font-weight:600;cursor:pointer;text-align:center;transition:all .15s}.history-toggle-btn:hover{background:#131d28;border-color:#3fb95050}.history-section{margin-top:1.25rem;background:#111827;border:1px solid #1a2535;border-radius:12px;padding:1rem}.history-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.history-section-title{font-size:.85rem;font-weight:700;color:#d0dbe8}.history-collapse-btn{background:none;border:1px solid #2a3a50;border-radius:6px;color:#6b7f93;font-size:.85rem;cursor:pointer;padding:.2rem .5rem;transition:all .15s}.history-collapse-btn:hover{color:#e8edf5;border-color:#3fb95050}.history-loading,.history-error,.history-empty{color:#5a7080;font-size:.85rem;text-align:center;padding:1rem}.history-error{color:#f0a090}.history-market-group{margin-bottom:1rem}.history-market-group:last-child{margin-bottom:0}.history-market-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:#3fb950;font-weight:700;margin-bottom:.5rem;padding-left:.25rem}.history-chart-row{margin-bottom:.5rem}.history-chart-container{background:#0a0e16;border:1px solid #1a2535;border-radius:8px;padding:.5rem}.history-chart-label{font-size:.68rem;color:#6b7f93;margin-bottom:.25rem;padding-left:2px}.history-chart-empty{font-size:.75rem;color:#3a5060;text-align:center;padding:.4rem}.history-chart-svg{display:block;width:100%;height:auto}.chart-time-label{font-size:7px;fill:#3a5060;font-family:system-ui,sans-serif}.chart-time-label-end{text-anchor:end}.chart-price-label{font-size:6px;fill:#5a7080;font-family:system-ui,sans-serif;text-anchor:start;dominant-baseline:middle}@media (max-width: 768px){.history-section{padding:.75rem}.history-chart-container{padding:.35rem}.history-chart-label{font-size:.6rem}}.price-cell.has-edge{position:relative}.edge-badge{display:inline-block;font-size:.6rem;font-weight:700;padding:1px 4px;border-radius:3px;margin-left:4px;vertical-align:middle;line-height:1.3}.edge-badge-high{background:#1a3a1a;color:#3fb950;border:1px solid #3fb95040}.edge-badge-medium{background:#2a3a20;color:#8bb950;border:1px solid #8bb95030}.edge-badge-low{background:#1a2a35;color:#8bbad0;border:1px solid #8bbad030}.vb-section{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid #1a2535}.vb-section-header{margin-bottom:1rem}.vb-section-title{margin:0 0 .35rem;font-size:1.3rem;font-weight:800;color:#f0f6fc;letter-spacing:-.02em}.vb-section-sub{margin:0;font-size:.85rem;color:#5a7080}.vb-filters{display:flex;gap:.4rem;margin-bottom:1rem;flex-wrap:wrap;align-items:center}.vb-filter-btn{background:#141c28;border:1px solid #1e2d40;color:#6b7f93;padding:.35rem .75rem;border-radius:6px;font-size:.78rem;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.vb-filter-btn:hover{background:#1a2535;color:#e8edf5}.vb-filter-btn.active{background:#3fb95018;color:#3fb950;border-color:#3fb95060}.vb-refresh-btn{background:#141c28;border:1px solid #1e2d40;color:#6b7f93;padding:.35rem .6rem;border-radius:6px;font-size:1rem;cursor:pointer;transition:background .15s,color .15s}.vb-refresh-btn:hover{background:#1a2535;color:#3fb950}.vb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem}.vb-card{background:#0d1520;border:1px solid #1a2535;border-radius:10px;padding:1rem;cursor:pointer;transition:border-color .2s,background .2s}.vb-card:hover{border-color:#3fb95040;background:#111827}.vb-header{display:flex;align-items:flex-start;gap:.6rem;margin-bottom:.6rem}.vb-sport{font-size:1.2rem;flex-shrink:0}.vb-event-info{flex:1;min-width:0}.vb-title{font-size:.9rem;font-weight:700;color:#f0f6fc;margin-bottom:.15rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vb-meta{font-size:.72rem;color:#5a7080}.vb-point{color:#8bbad0}.vb-edge-badge{display:flex;flex-direction:column;align-items:center;flex-shrink:0;gap:2px}.vb-edge-label{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.edge-hot{color:#ff6b35}.edge-strong{color:#3fb950}.edge-good{color:#8bb950}.edge-slight{color:#8bbad0}.vb-edge-value{font-size:1.1rem;font-weight:800;color:#3fb950}.vb-info-row{display:flex;gap:.75rem;margin-bottom:.6rem;font-size:.72rem;color:#5a7080}.vb-time{color:#8bbad0;font-weight:600}.vb-margin{color:#f0883e}.vb-legs{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.6rem}.vb-outcome-label{font-size:.72rem;color:#8bbad0;font-weight:600;margin-bottom:.2rem}.vb-value-rows{display:flex;flex-direction:column;gap:.15rem}.vb-value-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.2rem .4rem;border-radius:4px;background:#111827}.vb-bookmaker{display:flex;align-items:center;gap:.3rem;font-size:.72rem;color:#8bafc0;min-width:0;overflow:hidden}.vb-odds{font-size:.8rem;font-weight:700;color:#e8edf5}.vb-odds.best{color:#3fb950}.vb-edge{font-size:.68rem;font-weight:700;padding:1px 5px;border-radius:3px}.edge-high{background:#1a3a1a;color:#3fb950}.edge-medium{background:#2a3a20;color:#8bb950}.edge-low{background:#1a2a35;color:#8bbad0}.vb-more{font-size:.68rem;color:#5a7080;padding-left:.4rem}.vb-consensus{display:flex;gap:.5rem;flex-wrap:wrap;border-top:1px solid #1a2535;padding-top:.5rem}.vb-consensus-item{display:flex;align-items:center;gap:.3rem;font-size:.68rem}.vb-consensus-outcome{color:#6b7f93;font-weight:600}.vb-consensus-best{color:#3fb950}.vb-consensus-prob{color:#5a7080}.vb-loading{text-align:center;padding:2rem;color:#5a7080;font-size:.9rem}.vb-empty{text-align:center;padding:2rem;color:#3a5060;font-size:.85rem}.vb-error{text-align:center;padding:1.5rem;color:#f85149;font-size:.85rem}.vb-retry-btn{display:inline-block;margin-left:.75rem;padding:.3rem .8rem;background:#1a2535;border:1px solid #2a3a50;color:#e8edf5;border-radius:6px;cursor:pointer;font-size:.78rem}.vb-retry-btn:hover{background:#2a3a50}.vb-more-link{text-align:center;padding:.75rem;font-size:.78rem;color:#5a7080}@media (max-width: 768px){.vb-grid{grid-template-columns:1fr}.vb-header{flex-wrap:wrap}}.alert-signup-toggle{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1.2rem;background:linear-gradient(135deg,#238636,#1a7f37);color:#fff;border:1px solid #2ea043;border-radius:8px;cursor:pointer;font-size:.85rem;font-weight:600;transition:all .2s;margin-top:1rem}.alert-signup-toggle:hover{background:linear-gradient(135deg,#2ea043,#238636);transform:translateY(-1px);box-shadow:0 4px 12px #2ea0434d}.alert-signup{margin-top:1rem;background:#161b22;border:1px solid #30363d;border-radius:10px;padding:1.25rem;animation:alertSlideIn .25s ease-out}@keyframes alertSlideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.alert-signup--success{border-color:#238636;background:linear-gradient(135deg,#2386361f,#161b22)}.alert-signup-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.alert-signup-title{font-size:1rem;font-weight:700;color:#e6edf3}.alert-signup-close{background:none;border:1px solid #30363d;color:#8b949e;border-radius:6px;cursor:pointer;padding:.25rem .5rem;font-size:.85rem}.alert-signup-close:hover{color:#e6edf3;border-color:#484f58}.alert-signup-desc{font-size:.82rem;color:#8b949e;margin-bottom:1rem}.alert-signup-form{display:flex;flex-direction:column;gap:.75rem}.alert-label{display:flex;flex-direction:column;gap:.3rem;font-size:.78rem;color:#8b949e;font-weight:600}.alert-input,.alert-select{padding:.5rem .75rem;background:#0d1117;border:1px solid #30363d;border-radius:6px;color:#e6edf3;font-size:.85rem;outline:none;transition:border-color .2s}.alert-input:focus,.alert-select:focus{border-color:#58a6ff}.alert-submit{padding:.6rem 1.2rem;background:linear-gradient(135deg,#238636,#1a7f37);color:#fff;border:1px solid #2ea043;border-radius:8px;cursor:pointer;font-size:.85rem;font-weight:600;transition:all .2s}.alert-submit:hover:not(:disabled){background:linear-gradient(135deg,#2ea043,#238636)}.alert-submit:disabled{opacity:.5;cursor:not-allowed}.alert-error{font-size:.82rem;color:#f85149;padding:.4rem .6rem;background:#f851491a;border-radius:6px}.alert-signup-icon{font-size:1.5rem;margin-bottom:.5rem}.alert-signup-text{font-size:.85rem;color:#e6edf3;line-height:1.6}.alert-signup--success .alert-signup-close{margin-top:.75rem;display:inline-block;padding:.4rem 1rem;background:#21262d;color:#e6edf3;border:1px solid #30363d;border-radius:6px;cursor:pointer;font-size:.82rem}.alert-signup--success .alert-signup-close:hover{background:#30363d}.cross-site-link{color:#58a6ff!important;text-decoration:none;white-space:nowrap}.cross-site-link:hover{text-decoration:underline;color:#79c0ff!important}.cross-site-cta{margin:1rem 0;padding:.65rem 1rem;background:linear-gradient(135deg,#0d1f33,#0d3320);border:1px solid #1a5c2e;border-radius:8px;text-align:center}.cross-site-cta-link{color:#58d68d;font-weight:600;font-size:.9rem;text-decoration:none}.cross-site-cta-link:hover{color:#7debb3;text-decoration:underline}.cross-site-banner{margin:1.5rem 0;padding:1rem;background:linear-gradient(135deg,#0d1f33,#0d3320);border:1px solid #1a5c2e;border-radius:8px;text-align:center}.cross-site-banner-link{color:#58d68d;font-weight:700;font-size:1rem;text-decoration:none}.cross-site-banner-link:hover{color:#7debb3;text-decoration:underline}.guide-page{max-width:800px;margin:0 auto;padding:1.5rem 1rem}.guide-breadcrumb{font-size:.78rem;margin-bottom:1.5rem;color:#5a7080}.guide-breadcrumb a{color:#6b9fc0;text-decoration:none}.guide-breadcrumb a:hover{color:#3fb950;text-decoration:underline}.breadcrumb-sep{margin:0 .4rem;color:#3a5060}.guide-header{margin-bottom:2rem}.guide-category-badge{display:inline-block;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:.2rem .6rem;border-radius:4px;background:#1a3020;color:#3fb950;margin-bottom:.75rem}.guide-header h1{font-size:1.75rem;font-weight:800;color:#f0f6fc;line-height:1.3;margin:0 0 .75rem}.guide-description{font-size:1rem;color:#8bafc0;line-height:1.6;margin:0 0 .5rem}.guide-meta{font-size:.78rem;color:#4a6070}.guide-meta time{color:#5a7080}.guide-section{margin-bottom:2rem}.guide-section h2{font-size:1.25rem;font-weight:700;color:#d0dbe8;margin:0 0 .75rem;padding-bottom:.5rem;border-bottom:1px solid #1a2535}.guide-section--prose p,.guide-section--howto p,.guide-section--faq p{font-size:.92rem;color:#8bafc0;line-height:1.7;margin:0 0 1rem}.howto-steps{list-style:none;padding:0;counter-reset:step-counter}.howto-steps li{counter-increment:step-counter;position:relative;padding:1rem 1rem 1rem 3rem;margin-bottom:.75rem;background:#111827;border:1px solid #1a2535;border-radius:10px}.howto-steps li:before{content:counter(step-counter);position:absolute;left:.75rem;top:1rem;width:1.5rem;height:1.5rem;background:#1a3020;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;color:#3fb950;line-height:1.5rem;text-align:center}.howto-step .howto-step-name{display:block;color:#d0dbe8;font-size:.95rem;margin-bottom:.25rem}.howto-step p{margin:0}.faq-item{margin-bottom:.75rem;background:#111827;border:1px solid #1a2535;border-radius:10px;overflow:hidden}.faq-question{cursor:pointer;font-size:.92rem;font-weight:600;color:#d0dbe8;padding:.85rem 1rem;display:block;list-style:none}.faq-question::-webkit-details-marker{display:none}.faq-question::marker{content:""}.faq-question:before{content:"+";margin-right:.6rem;color:#3fb950;font-weight:700;font-size:1.1rem}.faq-item[open] .faq-question:before{content:"−"}.faq-answer{padding:0 1rem .85rem}.faq-answer p{margin:0}.guide-section--related h2{border-bottom:1px solid #1a2535}.related-links{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}.related-links li{margin:0}.related-links a{display:inline-block;padding:.5rem 1rem;background:#111827;border:1px solid #1a2535;border-radius:8px;color:#6b9fc0;text-decoration:none;font-size:.85rem;font-weight:600;transition:all .15s}.related-links a:hover{border-color:#3fb95050;color:#3fb950;background:#131d28}.guides-index{max-width:900px;margin:0 auto;padding:1.5rem 1rem}.guides-index-header{margin-bottom:2.5rem}.guides-index-header h1{font-size:1.75rem;font-weight:800;color:#f0f6fc;margin:0 0 .75rem}.guides-index-header p{font-size:1rem;color:#8bafc0;line-height:1.6;margin:0}.guides-category{margin-bottom:2.5rem}.guides-category h2{font-size:1.2rem;font-weight:700;color:#d0dbe8;margin:0 0 .35rem}.guides-category-intro{font-size:.85rem;color:#5a7080;margin:0 0 1rem}.guides-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem}.guides-list-item{margin:0}.guides-list-item a{display:block;padding:1rem;background:#111827;border:1px solid #1a2535;border-radius:10px;text-decoration:none;transition:border-color .15s,background .15s}.guides-list-item a:hover{border-color:#3fb95050;background:#131d28}.guides-list-item h3{font-size:.92rem;font-weight:700;color:#d0dbe8;margin:0 0 .35rem}.guides-list-item p{font-size:.78rem;color:#5a7080;line-height:1.5;margin:0}@media (max-width: 768px){.guide-page{padding:1rem .75rem}.guide-header h1{font-size:1.3rem}.guide-section h2{font-size:1.05rem}.guides-list{grid-template-columns:1fr}.guides-index-header h1{font-size:1.3rem}}.api-landing{max-width:1100px;margin:0 auto;padding:0 1rem}.api-hero{text-align:center;padding:4rem 1rem 3rem}.api-hero-inner{max-width:720px;margin:0 auto}.api-hero-badge{display:inline-block;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;padding:.25rem .75rem;border-radius:100px;background:#1a3020;color:#3fb950;margin-bottom:1rem}.api-hero h1{font-size:2.5rem;font-weight:900;color:#f0f6fc;line-height:1.15;margin:0 0 1rem;letter-spacing:-.03em}.api-hero-subtitle{font-size:1.1rem;color:#8bafc0;line-height:1.65;margin:0 0 1.75rem}.api-hero-ctas{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap;margin-bottom:2.5rem}.api-btn{display:inline-block;padding:.75rem 1.5rem;border-radius:10px;font-size:.95rem;font-weight:700;text-decoration:none;transition:all .15s;cursor:pointer;border:none}.api-btn-primary{background:#3fb950;color:#051b10}.api-btn-primary:hover{background:#56d364;transform:translateY(-1px);box-shadow:0 4px 14px #3fb95059}.api-btn-secondary{background:transparent;color:#8bafc0;border:1px solid #2a3a50}.api-btn-secondary:hover{border-color:#3fb95080;color:#3fb950;background:#0e1a25}.api-btn-lg{padding:1rem 2rem;font-size:1.05rem}.api-hero-stats{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap}.api-stat{text-align:center}.api-stat-num{display:block;font-size:1.6rem;font-weight:800;color:#3fb950}.api-stat-label{font-size:.75rem;color:#5a7080;text-transform:uppercase;letter-spacing:.06em}.api-features{padding:3rem 0}.api-features h2{text-align:center;font-size:1.5rem;font-weight:800;color:#f0f6fc;margin:0 0 1.5rem}.api-features-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.api-feature-card{background:#111827;border:1px solid #1a2535;border-radius:12px;padding:1.25rem;transition:border-color .15s}.api-feature-card:hover{border-color:#3fb95040}.api-feature-icon{font-size:1.5rem;display:block;margin-bottom:.5rem}.api-feature-card h3{font-size:.95rem;font-weight:700;color:#d0dbe8;margin:0 0 .4rem}.api-feature-card p{font-size:.82rem;color:#6b8fa0;line-height:1.6;margin:0}.api-quickstart{padding:3rem 0}.api-quickstart h2{text-align:center;font-size:1.5rem;font-weight:800;color:#f0f6fc;margin:0 0 .5rem}.api-section-subtitle{text-align:center;font-size:.95rem;color:#6b8fa0;margin:0 0 1.5rem}.api-tabs{max-width:700px;margin:0 auto}.api-tabs input[type=radio]{display:none}.api-tabs label{display:inline-block;padding:.5rem 1rem;font-size:.85rem;font-weight:600;color:#6b8fa0;cursor:pointer;border-bottom:2px solid transparent;margin-right:.25rem}.api-tabs input[type=radio]:checked+label{color:#3fb950;border-bottom-color:#3fb950}.api-tab-content{display:none;margin-top:.75rem}#tab-curl:checked~.api-tab-curl,#tab-python:checked~.api-tab-python,#tab-js:checked~.api-tab-js{display:block}.api-code-block{background:#0b1018;border:1px solid #1a2535;border-radius:10px;padding:1rem 1.25rem;overflow-x:auto;font-size:.8rem;line-height:1.6;color:#8bc4a0;margin:0}.api-code-block code{font-family:SF Mono,Fira Code,Consolas,monospace}.api-quickstart-links{text-align:center;margin-top:1rem;font-size:.82rem;color:#5a7080}.api-pricing{padding:3rem 0}.api-pricing h2{text-align:center;font-size:1.5rem;font-weight:800;color:#f0f6fc;margin:0 0 .5rem}.api-pricing-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;margin-top:1.5rem}.api-pricing-card{position:relative;background:#111827;border:1px solid #1a2535;border-radius:12px;padding:1.5rem;text-align:center;transition:border-color .15s}.api-pricing-card:hover{border-color:#2a3a50}.api-pricing-card--highlight{border-color:#3fb950;box-shadow:0 0 20px #3fb9501a}.api-pricing-card--highlight:hover{border-color:#56d364}.api-pricing-popular{position:absolute;top:-.65rem;left:50%;transform:translate(-50%);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;background:#3fb950;color:#051b10;padding:.2rem .75rem;border-radius:100px}.api-pricing-card h3{font-size:1.1rem;font-weight:700;color:#f0f6fc;margin:0 0 .75rem}.api-pricing-price{margin-bottom:.25rem}.api-pricing-amount{font-size:2.2rem;font-weight:900;color:#3fb950}.api-pricing-card--highlight .api-pricing-amount{color:#3fb950}.api-pricing-period{font-size:.85rem;color:#5a7080}.api-pricing-requests{font-size:.85rem;color:#8bafc0;margin-bottom:1rem}.api-pricing-features{list-style:none;padding:0;margin:0 0 1.25rem;text-align:left}.api-pricing-features li{font-size:.82rem;color:#8bafc0;padding:.3rem 0 .3rem 1.2rem;position:relative}.api-pricing-features li:before{content:"✓";position:absolute;left:0;color:#3fb950;font-weight:700;font-size:.75rem}.api-comparison{padding:3rem 0}.api-comparison h2{text-align:center;font-size:1.5rem;font-weight:800;color:#f0f6fc;margin:0 0 .5rem}.api-comparison-table-wrap{overflow-x:auto;margin-top:1.5rem}.api-comparison-table{width:100%;border-collapse:collapse;font-size:.88rem}.api-comparison-table th,.api-comparison-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #1a2535}.api-comparison-table thead th{font-weight:700;color:#d0dbe8;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em}.api-comparison-table td{color:#8bafc0}.api-comparison-us{color:#3fb950!important;font-weight:600}.api-faq{padding:3rem 0}.api-faq h2{text-align:center;font-size:1.5rem;font-weight:800;color:#f0f6fc;margin:0 0 1.5rem}.api-faq-list{max-width:720px;margin:0 auto}.api-faq-item{margin-bottom:.75rem;background:#111827;border:1px solid #1a2535;border-radius:10px;overflow:hidden}.api-faq-question{cursor:pointer;font-size:.92rem;font-weight:600;color:#d0dbe8;padding:.85rem 1rem;display:block;list-style:none}.api-faq-question::-webkit-details-marker{display:none}.api-faq-question::marker{content:""}.api-faq-question:before{content:"+";margin-right:.6rem;color:#3fb950;font-weight:700;font-size:1.1rem}.api-faq-item[open] .api-faq-question:before{content:"−"}.api-faq-answer{padding:0 1rem .85rem}.api-faq-answer p{font-size:.88rem;color:#8bafc0;line-height:1.65;margin:0}.api-cta-footer{text-align:center;padding:3rem 1rem;margin-top:1rem;border-top:1px solid #1a2535}.api-cta-footer h2{font-size:1.5rem;font-weight:800;color:#f0f6fc;margin:0 0 .75rem}.api-cta-footer p{font-size:.95rem;color:#8bafc0;margin:0 0 1.5rem}.api-back-home{text-align:center;padding:1.5rem 0}.api-back-home a{color:#5a7080;text-decoration:none;font-size:.85rem;transition:color .15s}.api-back-home a:hover{color:#3fb950}.api-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .15s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.api-modal{position:relative;background:#0d1520;border:1px solid #1a2535;border-radius:16px;padding:2rem;width:100%;max-width:440px;animation:slideUp .2s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.api-modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;color:#5a7080;font-size:1.5rem;cursor:pointer;line-height:1;padding:0;transition:color .15s}.api-modal-close:hover{color:#f0f6fc}.api-modal h2{font-size:1.3rem;font-weight:800;color:#f0f6fc;margin:0 0 .25rem}.api-modal-subtitle{font-size:.9rem;color:#8bafc0;margin:0 0 1.25rem}.api-modal-form{display:flex;flex-direction:column;gap:1rem}.api-modal-error{background:#f8514926;border:1px solid rgba(248,81,73,.3);color:#f85149;padding:.75rem;border-radius:8px;font-size:.85rem}.api-key-display{display:flex;align-items:center;gap:.5rem;background:#0a0e16;border:1px solid #2a3a50;border-radius:8px;padding:.6rem .75rem;margin-bottom:.5rem}.api-key-value{flex:1;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.8rem;color:#3fb950;overflow-x:auto;white-space:nowrap}.api-copy-btn{padding:.4rem .8rem;background:#1a2535;border:1px solid #2a3a50;color:#d0dbe8;border-radius:6px;font-size:.78rem;cursor:pointer;white-space:nowrap;transition:all .15s}.api-copy-btn:hover{background:#2a3a50;color:#3fb950}.api-key-warning{font-size:.82rem;color:#f0883e;margin:.75rem 0 0}.api-modal-success-links{display:flex;flex-direction:column;gap:.5rem;margin-top:1rem}.api-modal-success-links .api-btn{text-align:center}.guide-header{padding:3rem 1rem 2rem;text-align:center}.guide-header h1{font-size:2rem;font-weight:900;color:#f0f6fc;margin:.5rem 0}.guide-subtitle{font-size:1.05rem;color:#8bafc0;margin:0}.guide-breadcrumb{color:#5a7080;font-size:.85rem;text-decoration:none;transition:color .15s}.guide-breadcrumb:hover{color:#3fb950}.guide-toc{background:#111827;border:1px solid #1a2535;border-radius:10px;padding:1rem 1.25rem 1rem 1.5rem;margin-bottom:2rem}.guide-toc h3{font-size:.9rem;font-weight:700;color:#d0dbe8;margin:0 0 .5rem;text-transform:uppercase;letter-spacing:.04em}.guide-toc ol{margin:0;padding-left:1.2rem}.guide-toc li{font-size:.85rem;color:#8bafc0;margin-bottom:.25rem}.guide-toc a{color:#3fb950;text-decoration:none;transition:color .15s}.guide-toc a:hover{color:#56d364;text-decoration:underline}.guide-section{padding:2rem 0;border-top:1px solid #1a2535}.guide-section:first-of-type{border-top:none}.guide-section h2{font-size:1.3rem;font-weight:800;color:#f0f6fc;margin:0 0 .75rem}.guide-section h4{font-size:1rem;font-weight:700;color:#d0dbe8;margin:1rem 0 .5rem}.guide-section p{font-size:.92rem;color:#8bafc0;line-height:1.65;margin:0 0 .75rem}.guide-section code{background:#0b1018;border:1px solid #1a2535;border-radius:4px;padding:.15rem .4rem;font-size:.84rem;color:#3fb950;font-family:SF Mono,Fira Code,Consolas,monospace}.guide-section em,.guide-section strong{color:#d0dbe8}.guide-list{margin:0 0 .75rem;padding-left:1.2rem}.guide-list li{font-size:.92rem;color:#8bafc0;margin-bottom:.4rem;line-height:1.6}.guide-params-table{width:100%;border-collapse:collapse;margin:.75rem 0 1.25rem;font-size:.84rem}.guide-params-table th{text-align:left;font-weight:700;color:#d0dbe8;padding:.5rem .75rem;border-bottom:2px solid #1a2535;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}.guide-params-table td{padding:.5rem .75rem;border-bottom:1px solid #1a2535;color:#8bafc0}.guide-params-table td code{background:#0b1018;border:1px solid #1a2535;border-radius:3px;padding:.1rem .3rem;font-size:.8rem;color:#3fb950}@media (max-width: 768px){.api-hero h1{font-size:1.65rem}.api-hero-subtitle{font-size:.95rem}.api-hero-stats{gap:1rem}.api-stat-num{font-size:1.3rem}.api-features-grid,.api-pricing-grid{grid-template-columns:1fr}.api-pricing-amount{font-size:1.8rem}.api-comparison-table{font-size:.78rem}.api-comparison-table th,.api-comparison-table td{padding:.5rem}}.auth-page{display:flex;justify-content:center;align-items:center;min-height:60vh;padding:2rem 1rem}.auth-card{background:#0d1520;border:1px solid #1a2535;border-radius:12px;padding:2rem;width:100%;max-width:400px}.auth-card h1{font-size:1.5rem;font-weight:700;margin:0 0 .25rem;color:#e8edf5}.auth-subtitle{color:#8b949e;font-size:.9rem;margin-bottom:1.5rem}.auth-form{display:flex;flex-direction:column;gap:1rem}.auth-field{display:flex;flex-direction:column;gap:.35rem}.auth-field label{font-size:.85rem;color:#8b949e;font-weight:500}.auth-field input{padding:.6rem .75rem;background:#0a0e16;border:1px solid #2a3a50;border-radius:8px;color:#e8edf5;font-size:.95rem;outline:none;transition:border-color .2s}.auth-field input:focus{border-color:#3fb950}.auth-button{padding:.7rem;background:#3fb950;color:#0a0e16;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .2s}.auth-button:hover{background:#2ea640}.auth-button:disabled{opacity:.6;cursor:not-allowed}.auth-error{background:#f8514926;border:1px solid rgba(248,81,73,.3);color:#f85149;padding:.75rem;border-radius:8px;font-size:.85rem}.auth-success{background:#3fb95026;border:1px solid rgba(63,185,80,.3);color:#3fb950;padding:.75rem;border-radius:8px;font-size:.85rem}.auth-footer{margin-top:1.5rem;text-align:center}.auth-footer p{margin:.35rem 0;font-size:.85rem;color:#8b949e}.auth-footer a{color:#3fb950;text-decoration:none}.auth-footer a:hover{text-decoration:underline}
