:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}body{margin:0}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}h2{font-size:20px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}#root{text-align:center;box-sizing:border-box;max-width:100%;margin:0 auto;padding:2rem}body{color:#fff;background:#0f0f0f;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.login-container{flex-direction:column;justify-content:center;align-items:center;gap:1rem;height:100vh;display:flex}.login-container h1{color:#4fc3f7;margin:0;font-size:3rem}.login-container p{color:#aaa;margin:0}.sign-in-btn{color:#000;cursor:pointer;background:#4fc3f7;border:none;border-radius:8px;margin-top:1rem;padding:.75rem 2rem;font-size:1rem;font-weight:600;transition:background .2s}.sign-in-btn:hover{background:#81d4fa}.home-container{min-height:100vh}.home-container header{border-bottom:1px solid #222;justify-content:space-between;align-items:center;padding:1rem 2rem;display:flex}.home-container header h1{color:#4fc3f7;margin:0}.site-nav{gap:1.25rem;display:flex}.site-nav a{color:#aaa;font-size:.9rem;text-decoration:none;transition:color .15s}.site-nav a:hover{color:#4fc3f7}.dashboard{padding:1.5rem 2rem}.dashboard-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));align-items:start;gap:1rem;display:grid}.widget{background:#111;border:1px solid #222;border-radius:10px;flex-direction:column;display:flex;overflow:hidden}.widget-placeholder{opacity:.45}.widget-header{background:#141414;border-bottom:1px solid #1e1e1e;flex-shrink:0;justify-content:space-between;align-items:center;padding:.6rem .85rem;display:flex}.widget-title{color:#ccc;letter-spacing:.04em;text-transform:uppercase;font-size:.82rem;font-weight:700}.widget-meta{align-items:center;gap:.75rem;display:flex}.widget-updated{color:#444;font-size:.7rem}.widget-link{color:#4fc3f7;white-space:nowrap;font-size:.75rem;text-decoration:none}.widget-link:hover{text-decoration:underline}.widget-scroll{flex:1;max-height:280px;overflow-y:auto}.widget-row{border-bottom:1px solid #1a1a1a;padding:.45rem .85rem;transition:background .1s}.widget-row:last-child{border-bottom:none}.widget-row:hover{background:#181818}.widget-row-main{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.widget-row-company{color:#e0e0e0;white-space:nowrap;text-overflow:ellipsis;max-width:65%;font-size:.8rem;font-weight:600;overflow:hidden}.widget-row-date{color:#444;white-space:nowrap;flex-shrink:0;font-size:.7rem}.widget-row-sub{color:#666;white-space:nowrap;text-overflow:ellipsis;margin-top:.1rem;font-size:.75rem;overflow:hidden}.widget-row-sub a{color:#5ba8c4;text-decoration:none}.widget-row-sub a:hover{text-decoration:underline}.widget-row-reason{color:#555}.widget-footer{color:#3a3a3a;background:#0d0d0d;border-top:1px solid #1a1a1a;flex-shrink:0;padding:.4rem .85rem;font-size:.7rem}.widget-empty{color:#333;text-align:center;margin:0;padding:2rem 1rem;font-size:.82rem}.sign-out-btn{color:#aaa;cursor:pointer;background:0 0;border:1px solid #444;border-radius:6px;padding:.5rem 1rem;transition:all .2s}.sign-out-btn:hover{color:#fff;border-color:#fff}main{padding:0}main h2{display:none}main p{color:#aaa}.recalls-card-list,.recalls-sort-mobile{display:none}.recall-card{background:#111;border:1px solid #222;border-radius:10px;padding:.85rem 1rem}.recall-card.terminated{opacity:.5}.recall-card-top{justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.3rem;display:flex}.recall-card-company{color:#e0e0e0;font-size:.95rem;font-weight:700}.recall-card-date{color:#555;white-space:nowrap;flex-shrink:0;font-size:.75rem}.recall-card-product{color:#4fc3f7;margin-bottom:.4rem;font-size:.85rem}.recall-card-product a{color:#4fc3f7;text-decoration:none}.recall-card-sub{color:#888}.recall-card-meta{flex-wrap:wrap;align-items:center;gap:.25rem;margin-bottom:.4rem;display:flex}.recall-card-done{color:#4caf50;font-size:.72rem;font-weight:600}.recall-card-reason{color:#666;font-size:.8rem;line-height:1.4}.signin-page{box-sizing:border-box;justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}@media (width<=768px){#root{padding:.75rem}.dashboard-grid{grid-template-columns:1fr}.home-container header{flex-direction:column;align-items:flex-start;gap:.5rem}.recalls-search{box-sizing:border-box;width:100%}.recalls-controls{width:100%}.recalls-table-scroll{display:none}.recalls-card-list{flex-direction:column;gap:.6rem;display:flex}.recalls-sort-mobile{color:#aaa;align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.85rem;display:flex}.recalls-sort-mobile select{color:#fff;background:#1a1a1a;border:1px solid #333;border-radius:6px;flex:1;padding:.4rem .6rem;font-size:.85rem}.recalls-sort-dir{color:#ddd;cursor:pointer;white-space:nowrap;background:#1a1a1a;border:1px solid #333;border-radius:6px;padding:.4rem .7rem;font-size:.85rem}.recalls-pagination button{padding:.5rem .9rem;font-size:1rem}.recalls-search,.recalls-filter{padding:.55rem .75rem;font-size:1rem}.cl-rootBox,.cl-cardBox,.cl-card{width:100%!important;min-width:0!important;max-width:100%!important;box-shadow:none!important;border-radius:0!important}.signin-page{align-items:flex-start;padding-top:2rem}}.recalls-subtitle{margin-bottom:1.5rem}.recalls-subtitle a{color:#4fc3f7}.recalls-wrapper{text-align:left}.recalls-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.recalls-meta{flex-direction:column;gap:.2rem;display:flex}.recalls-count{color:#fff;font-size:1.1rem;font-weight:600}.recalls-updated{color:#666;font-size:.78rem}.recalls-controls{flex-wrap:wrap;gap:.5rem;display:flex}.recalls-search{color:#fff;background:#1a1a1a;border:1px solid #333;border-radius:6px;outline:none;width:280px;padding:.45rem .75rem;font-size:.875rem;transition:border-color .15s}.recalls-search:focus{border-color:#4fc3f7}.recalls-filter{color:#fff;cursor:pointer;background:#1a1a1a;border:1px solid #333;border-radius:6px;outline:none;padding:.45rem .6rem;font-size:.875rem}.recalls-table-scroll{border:1px solid #222;border-radius:8px;overflow-x:auto}.recalls-table{border-collapse:collapse;width:100%;min-width:900px;font-size:.82rem}.recalls-table thead tr{background:#141414;border-bottom:1px solid #2a2a2a}.recalls-table th{text-align:left;color:#aaa;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;letter-spacing:.03em;text-transform:uppercase;padding:.65rem .75rem;font-size:.72rem;font-weight:600}.recalls-table th:hover{color:#fff}.sort-icon{opacity:.35;margin-left:4px;font-size:.8em}.sort-icon.active{opacity:1;color:#4fc3f7}.recalls-table tbody tr{border-bottom:1px solid #1e1e1e;transition:background .1s}.recalls-table tbody tr:hover{background:#181818}.recalls-table tbody tr.terminated{opacity:.5}.recalls-table td{vertical-align:top;color:#ddd;padding:.55rem .75rem}.col-date{white-space:nowrap;color:#888!important;font-size:.78rem!important}.col-company{min-width:140px;font-weight:600;color:#fff!important}.col-brand a{color:#4fc3f7;text-decoration:none}.col-brand a:hover{text-decoration:underline}.col-product{min-width:160px}.col-type{min-width:120px}.col-reason{min-width:180px;color:#bbb!important}.col-term{text-align:center;font-weight:700;color:#4caf50!important}.type-badge{color:#78c8f0;white-space:nowrap;background:#1e2a33;border-radius:4px;margin:1px 2px 1px 0;padding:1px 6px;font-size:.72rem;display:inline-block}.recalls-pagination{color:#aaa;justify-content:center;align-items:center;gap:.5rem;margin-top:1.25rem;font-size:.875rem;display:flex}.recalls-pagination button{color:#ddd;cursor:pointer;background:#1a1a1a;border:1px solid #333;border-radius:5px;padding:.35rem .65rem;transition:all .15s}.recalls-pagination button:hover:not(:disabled){color:#fff;border-color:#4fc3f7}.recalls-pagination button:disabled{opacity:.3;cursor:default}.recalls-error,.recalls-loading{color:#888;text-align:center;padding:3rem}.cfb-widget{padding:1rem 0 0}.cfb-widget-header{border-bottom:1px solid #222;justify-content:space-between;align-items:center;padding:0 1.25rem .75rem;display:flex}.cfb-widget-title{color:#eee;font-size:1rem;font-weight:600}.cfb-widget-meta{align-items:center;gap:.75rem;display:flex}.cfb-updated{color:#555;font-size:.72rem}.cfb-refresh-all-btn{color:#4fc3f7;cursor:pointer;background:0 0;border:1px solid #333;border-radius:5px;padding:.25rem .6rem;font-size:.78rem;transition:all .15s}.cfb-refresh-all-btn:hover{background:#4fc3f714;border-color:#4fc3f7}.cfb-refresh-all-btn:disabled{opacity:.5;cursor:default}.cfb-refresh-all-btn--spinning{animation:.6s linear infinite cfb-spin}@keyframes cfb-spin{to{transform:rotate(360deg)}}.cfb-loading{color:#555;text-align:center;padding:2rem}.cfb-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.75rem;padding:1rem 1rem 1.25rem;display:grid}.cfb-card{background:#111;border:1px solid #222;border-radius:8px;transition:border-color .2s;overflow:hidden}.cfb-card:hover{border-color:#333}.cfb-card--live{border-color:#ff505080;box-shadow:0 0 10px #ff50501a}.cfb-card-header{border-left:3px solid var(--team-color,#333);background:#ffffff05;justify-content:space-between;align-items:center;padding:.65rem .85rem;display:flex}.cfb-card-team{align-items:center;gap:.6rem;display:flex}.cfb-logo{object-fit:contain;flex-shrink:0;width:32px;height:32px}.cfb-card-team-info{flex-direction:column;gap:.1rem;display:flex}.cfb-team-name{color:#eee;font-size:.9rem;font-weight:700;line-height:1.2}.cfb-record{color:#666;font-size:.7rem}.cfb-rank{color:#fdd023;font-size:.75em;font-weight:700}.cfb-refresh-btn{color:#ff5050;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.1rem .25rem;font-size:1.1rem;line-height:1;transition:transform .15s,opacity .15s}.cfb-refresh-btn:hover{opacity:.75;transform:rotate(20deg)}.cfb-game{border-top:1px solid #1a1a1a;padding:.55rem .85rem}.cfb-game-label{text-transform:uppercase;letter-spacing:.07em;color:#555;margin-bottom:.3rem;font-size:.65rem}.cfb-score-row{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.cfb-score-label{color:#ccc;font-size:.82rem}.cfb-score{color:#eee;white-space:nowrap;font-size:.88rem;font-weight:700}.cfb-score--win{color:#69f0ae}.cfb-score--loss{color:#ff5252}.cfb-time{color:#666;font-size:.75rem}.cfb-broadcast{color:#444;margin-top:.2rem;font-size:.65rem}.cfb-status{color:#ff8a80;margin-top:.25rem;font-size:.72rem}.cfb-game--live{position:relative}.cfb-live-badge{color:#fff;letter-spacing:.1em;background:#ff5050;border-radius:3px;margin-bottom:.35rem;padding:.1rem .35rem;font-size:.6rem;font-weight:700;animation:2s ease-in-out infinite cfb-pulse;display:inline-block}@keyframes cfb-pulse{0%,to{opacity:1}50%{opacity:.6}}.cfb-game--empty{color:#444;font-size:.78rem}
