@import url(https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap);.app-header{background:#444;box-sizing:border-box;color:#fff;display:flex;flex-direction:column;width:100%}.header-inner{box-sizing:border-box;margin:0 auto;max-width:1240px;padding:0 20px}.header-inner,.header-main{align-items:center;display:flex;justify-content:space-between;width:100%}.header-main{height:6vh}.header-title{font-size:1.5rem;font-weight:700}.header-menu{background:none;border:none;cursor:pointer;display:flex;flex-direction:column;height:24px;justify-content:space-between;padding:8px}.header-menu span{background:#fff;border-radius:2px;display:block;height:3px;width:24px}.header-status{background:#555;height:auto;min-height:4vh;overflow:hidden}.header-status,.header-status-inner{align-items:center;display:flex;width:100%}.header-status-inner{box-sizing:border-box;flex-wrap:wrap;gap:8px;margin:0 auto;max-width:1240px;padding:6px 20px}.create-team-modal{max-width:500px;padding:0;width:90%}.create-team-modal .modal-header{background-color:#f8fafc;border-bottom:1px solid #e2e8f0;border-radius:8px 8px 0 0;padding:20px 24px}.create-team-modal h2{color:#1e293b;font-size:20px;margin:0}.create-team-form{padding:24px}.form-group,.form-row{margin-bottom:20px}.form-row{display:flex;gap:16px}.form-group label{color:#334155;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.form-group input[type=number],.form-group input[type=text],.form-group select{border:1px solid #cbd5e1;border-radius:6px;box-sizing:border-box;color:#1e293b;font-size:15px;padding:10px 12px;transition:border-color .2s;width:100%}.form-group input:focus,.form-group select:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a;outline:none}.gold-input{font-weight:600;text-align:center}.ruleset-toggle-group{border:1px solid #cbd5e1;border-radius:6px;display:flex;overflow:hidden}.ruleset-btn{background:#f8fafc;border:none;border-right:1px solid #cbd5e1;color:#64748b;cursor:pointer;flex:1 1;font-size:14px;font-weight:500;padding:10px;transition:all .2s}.ruleset-btn:last-child{border-right:none}.ruleset-btn:hover{background:#f1f5f9}.ruleset-btn.active{background:#3b82f6;color:#fff;font-weight:600}.create-submit-btn{background-color:#10b981;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;margin-top:10px;padding:14px;transition:background-color .2s;width:100%}.create-submit-btn:hover{background-color:#059669}.page-content{grid-gap:16px;background:#f9f9f9;border:2px solid #ccc;border-radius:8px;box-sizing:border-box;display:grid;gap:16px;grid-template-columns:1fr 2fr 1fr;grid-template-rows:auto 1fr;height:100%;padding:16px}.team-name-container{background:#eee;border-bottom:2px solid #ccc;font-size:1.25rem;font-weight:700;grid-column:1/4;grid-row:1;padding:8px;text-align:center}.roster-bench{grid-column:1/2}.board-wrapper,.roster-bench{box-sizing:border-box;grid-row:2;width:100%}.board-wrapper{background:var(--pitch-bg);border-radius:8px;grid-column:2/3;padding:16px}.formations-panel{box-sizing:border-box;grid-column:3/4;grid-row:2;width:100%}@media (max-width:768px){.page-content{grid-template-columns:1fr;grid-template-rows:auto auto auto auto}.team-name-container{grid-column:1;grid-row:1}.roster-bench{grid-column:1;grid-row:2}.board-wrapper{grid-column:1;grid-row:3}.formations-panel{grid-column:1;grid-row:4}}.home-controls{display:flex;gap:16px;justify-content:center;margin:32px 0}.home-btn{background-color:#06c;background-color:var(--primary);border:2px solid #06c;border:2px solid var(--primary);border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;padding:.75em 1.5em;transition:background .2s,border-color .2s}.home-btn:hover{background-color:#005bb5;background-color:var(--primary-dark);border-color:#005bb5;border-color:var(--primary-dark)}:root{--primary:#06c;--primary-dark:#005bb5}.bench-slot{align-items:center;background-color:#f9f9f9;border:1px solid #ccc;border-radius:4px;display:flex;height:50px;justify-content:center;width:50px}.bench-number{color:#555;font-size:16px;font-weight:700}.modal-backdrop{align-items:center;background:#0006;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal{background:#fff;border-radius:8px;box-shadow:0 4px 24px #0003;min-width:320px;padding:2rem}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:1000}.modal-content{background:#fff;border-radius:8px;box-shadow:0 10px 25px #0003;font-family:Roboto,sans-serif;max-width:500px;padding:24px;position:relative;width:90%}.modal-close{background:none;border:none;color:#666;cursor:pointer;font-size:24px;line-height:1;position:absolute;right:16px;top:16px;transition:color .2s}.modal-close:hover{color:#000}.modal-header{border-bottom:1px solid #edf2f7;margin-bottom:20px;padding-bottom:12px}.modal-header h2{color:#1a202c;font-size:22px;margin:0 0 4px}.modal-keywords{background:#f1f5f9;border-radius:4px;color:#4a5568;font-size:13px;font-style:italic;padding:2px 8px}.modal-stats{display:flex;gap:12px;margin-bottom:20px}.modal-stat-box{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;display:flex;flex:1 1;flex-direction:column;padding:10px 0}.modal-stat-label{color:#64748b;font-size:11px;font-weight:700;margin-bottom:4px;text-transform:uppercase}.modal-stat-val{color:#0f172a;font-size:18px;font-weight:700}.modal-info-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;margin-bottom:20px;padding:16px}.modal-info-row{color:#334155;font-size:14px;margin-bottom:8px}.modal-info-row:last-child{margin-bottom:0}.modal-info-row strong{color:#475569}.modal-actions{align-items:stretch;display:flex;flex-direction:column;gap:12px}.modal-warning{color:#e53e3e;font-size:13px;font-weight:500;text-align:center}.hire-button{background:#2563eb;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:12px;transition:background .2s}.hire-button:hover:not(:disabled){background:#1d4ed8}.hire-button:disabled{background:#94a3b8;cursor:not-allowed}.roster-page{background-color:#f9f9f9;color:#333;font-family:Roboto,sans-serif;margin:0 auto;max-width:1200px;padding:20px;width:100%}.panel,.roster-page{box-sizing:border-box}.panel{background-color:#fff;border:1px solid #ccc;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:16px}.roster-container{gap:24px}.player-table{width:100%}.player-table h3{font-size:18px;font-weight:700;margin-bottom:10px}.details-panel{background-color:#fff;border:1px solid #ccc;border-radius:8px;box-shadow:0 2px 4px #0000001a;box-sizing:border-box;padding:16px;width:100%}.details-panel table{border-collapse:collapse;margin-bottom:16px;width:100%}.details-panel td,.details-panel th{border:1px solid #ddd;padding:8px;text-align:left}.details-panel th{background-color:#f0f0f0;font-weight:700}.details-panel td:first-child,.details-panel th:first-child{width:35%}.details-panel td:nth-child(2),.details-panel th:nth-child(2){width:15%}.details-panel td:nth-child(3),.details-panel th:nth-child(3){width:25%}.details-panel td:nth-child(4),.details-panel th:nth-child(4){width:15%}.details-panel input[type=number]{width:50px}.details-panel input[type=checkbox]{transform:scale(1.2)}.team-selection{display:flex;flex-direction:column}.team-selection label{font-size:16px;font-weight:700;margin-bottom:8px}.team-selection select{border:1px solid #ccc;border-radius:4px;font-size:14px;padding:8px;width:250px}.cost-col{width:70px}.actions-cell,.actions-col{min-width:100px;text-align:right;width:100px}.button-container{display:flex;gap:10px;justify-content:flex-end;margin-top:16px}button{border:1px solid #ccc;border-radius:4px;cursor:pointer;font-size:14px;padding:10px 20px;transition:background-color .3s,color .3s}button.cancel{background:#f0f0f0;color:#333}button.cancel:hover{background:#e0e0e0}button.save{background:#007bff;color:#fff}button.save:hover{background:#0056b3}.team-name-input{background-color:#f9f9f9;border:2px solid #007bff;border-radius:8px;font-size:18px;font-weight:700;margin-bottom:16px;max-width:400px;padding:10px;width:100%}.team-name{display:flex;flex-direction:column}.team-name label{font-size:16px;font-weight:700;margin-bottom:8px}.team-name input{border:1px solid #ccc;border-radius:4px;font-size:14px;padding:8px;width:250px}.team-header{align-items:flex-start;background-color:#fff;border:1px solid #ccc;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:row;gap:20px;margin-bottom:24px;padding:16px}.budget-section,.special-rules,.team-controls{display:flex;flex:0 1 auto;flex-direction:column;gap:6px;justify-content:flex-start;min-width:0}.budget-section{align-items:flex-start;flex:0 0 170px;gap:0;margin-right:0;max-width:180px;min-width:140px}.budget-controls{align-items:center;display:flex;gap:8px}.budget-controls .save{margin-left:16px}table{border-collapse:collapse;font-size:14px;margin-bottom:16px;width:100%}th{background-color:#f0f0f0;border-bottom:2px solid #ddd;color:#555;text-align:left}td,th{padding:10px}td{border-bottom:1px solid #eee}tr:nth-child(2n){background-color:#f9f9f9}.roster-table-el{border-collapse:initial!important;border-spacing:0;min-width:950px;width:100%}.num-col,.player-num-cell{border-right:1px solid #e2e8f0!important;left:0;max-width:45px;min-width:45px;width:45px}.num-col,.player-num-cell,.position-cell,.position-col{background-color:#fff!important;box-sizing:border-box;position:-webkit-sticky!important;position:sticky!important;z-index:20}.position-cell,.position-col{border-right:2px solid #cbd5e1!important;box-shadow:4px 0 8px #0000000a;left:45px;max-width:170px;min-width:170px;width:170px}tr:nth-child(2n) .player-num-cell,tr:nth-child(2n) .position-cell{background-color:#f8fafc!important}.num-col,.position-col{background-color:#f1f5f9!important;z-index:21!important}label{display:block;font-weight:700;margin-bottom:8px}.error-message{color:#d9534f;font-weight:700;margin-top:16px}.collapsible-header{align-items:center;background-color:#f7f9fa;border:1px solid #e1e4e6;border-radius:6px;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:8px;margin-top:16px;padding:8px 12px;transition:background-color .2s ease;-webkit-user-select:none;user-select:none}.collapsible-header:hover{background-color:#edf0f2}.collapsible-header h3{font-size:16px;font-weight:700;margin:0}.collapsible-icon{color:#666;font-size:14px}.finance-section{border-left:1px solid #ccc;display:flex;flex:1 1;flex-direction:column;gap:8px;min-width:200px;padding-left:16px}.finance-section h4{font-size:16px;font-weight:700;margin:0 0 4px}.finance-row{align-items:center;display:flex;gap:8px}.finance-row label{display:inline;font-size:14px;font-weight:700;margin:0}.finance-row input{border:1px solid #ccc;border-radius:4px;font-size:14px;font-weight:700;padding:6px;width:130px}.finance-stats{display:flex;flex-direction:column;font-size:14px;font-weight:500;gap:4px;margin-top:4px}.finance-stats span{font-weight:700}.finance-stats .negative{color:#d9534f;font-weight:700}.makeup-status-bar{margin-bottom:24px;margin-top:8px}.makeup-status-bar h4{color:#555;font-size:15px;font-weight:700;margin:0 0 12px}.table-scroll-wrapper{overflow-x:auto;position:relative;width:100%}.makeup-badges{-webkit-overflow-scrolling:touch;display:flex;flex-wrap:nowrap;gap:12px;overflow-x:auto;padding-bottom:8px}.makeup-badges::-webkit-scrollbar{height:6px}.makeup-badges::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.makeup-badges .makeup-badge{flex:0 0 auto}.makeup-badge{align-items:center;background-color:#f1f3f5;border:1px solid #ced4da;border-radius:16px;color:#495057;display:inline-flex;font-size:14px;justify-content:space-between;padding:4px 12px;transition:all .2s ease-in-out;white-space:nowrap}.clickable-position:hover .position-main-text{color:#2563eb;text-decoration:underline}.makeup-badge.full{background:#e6f4ea;border-color:#82c395;color:#137333}.badge-name{margin-right:8px}.badge-count{background:#0000000f;border-radius:12px;font-size:12px;font-weight:700;padding:2px 8px}.sticky-finance-bar{align-items:center;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#ffffffd9;border-bottom:2px solid #0000000d;border-radius:0 0 12px 12px;box-shadow:0 10px 30px #00000014;display:flex;justify-content:space-between;margin-bottom:24px;padding:12px 24px;position:-webkit-sticky;position:sticky;top:0;transition:all .3s ease;z-index:100}.finance-team-info{align-items:center;display:flex;gap:8px}.finance-team-label{color:#666;font-size:14px;font-weight:500}.finance-team-name{color:#1a1a1a;font-size:18px;font-weight:700}.finance-team-type{background:#eef2f6;border-radius:12px;color:#4b5563;font-size:12px;font-weight:500;padding:4px 10px}.finance-inputs{align-items:center;display:flex;gap:12px}.finance-inputs label{color:#333;display:inline;font-size:14px;font-weight:700;margin:0}.finance-inputs input{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#1f2937;font-size:15px;font-weight:700;padding:8px 12px;text-align:right;transition:border-color .2s;width:140px}.finance-inputs input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.finance-stats-row{align-items:center;display:flex;gap:24px}.finance-stat-item{align-items:flex-end;display:flex;flex-direction:column}.finance-stat-item .stat-label{color:#6b7280;font-size:11px;font-weight:600;letter-spacing:.05em;margin-bottom:2px;text-transform:uppercase}.finance-stat-item .stat-value{color:#111827;font-size:18px;font-weight:800}.finance-stat-item.positive .stat-value{color:#10b981}.finance-stat-item.negative .stat-value{color:#ef4444}.roster-container{display:flex;flex-direction:column;gap:20px;max-width:100%;overflow-x:hidden;width:100%}.select-container{display:flex;flex-direction:column;gap:4px}.select-container select{border:1px solid #ccc;border-radius:4px;font-size:14px;max-width:220px;padding:6px 8px;width:100%}.position-keywords-sub{color:#6b7280;font-size:11px;font-style:italic;font-weight:500;margin-left:2px}.player-num-cell{align-items:center;display:flex;gap:8px;justify-content:space-between;min-width:48px}.info-toggle-btn{align-items:center;background:none;border:none;border-radius:50%;cursor:pointer;display:inline-flex;font-size:14px;justify-content:center;line-height:1;padding:4px;transition:background-color .2s,transform .2s}.info-toggle-btn:hover{background-color:#f3f4f6;transform:scale(1.1)}.info-toggle-btn.active{background-color:#e0f2fe;color:#0369a1;transform:rotate(180deg)}.player-details-row{background-color:#f8fafc!important}.player-details-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:inset 0 2px 4px #00000005;margin:8px 0;padding:16px}.details-card-header{align-items:center;border-bottom:1px solid #edf2f7;display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:8px}.details-card-header .card-title{color:#1e293b;font-size:15px;font-weight:700}.details-card-header .card-keywords{background:#f1f5f9;border-radius:4px;color:#475569;font-size:12px;font-weight:500;padding:3px 8px}.details-stats-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(5,1fr);margin-bottom:12px}.detail-stat-box{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;display:flex;flex-direction:column;padding:6px}.detail-stat-box .stat-label{color:#64748b;font-size:10px;font-weight:700;text-transform:uppercase}.detail-stat-box .stat-val{color:#0f172a;font-size:14px;font-weight:700}.detail-row-info{color:#334155;font-size:13px;line-height:1.4;margin-top:6px;text-align:left}.detail-row-info strong{color:#475569}@media (max-width:768px){.team-header{align-items:stretch;flex-direction:column;gap:16px}.team-name input,.team-selection select{max-width:100%;width:100%}.roster-container{flex-direction:column}.details-panel{margin-top:16px;width:100%}.sticky-finance-bar{align-items:stretch;flex-direction:column;gap:12px;padding:16px}.finance-stats-row{justify-content:space-between}}.mobile-board-container{--grass-even:#54762d;--grass-odd:#4c6b29;--grass-even-hover:#5f8532;--grass-odd-hover:#577a2e;--astro-even:#98a1ae;--astro-odd:#8d97a5;--astro-even-hover:#a4acb7;--astro-odd-hover:#98a1ae;background-color:#0f172a;border:1px solid #1e293b;border-radius:8px;color:#f1f5f9;display:flex;flex-direction:column;font-family:Inter,sans-serif;height:calc(100vh - 120px);overflow:hidden;position:relative}.mobile-board-header{align-items:center;background-color:#1e293b;border-bottom:1px solid #334155;display:flex;justify-content:space-between;padding:10px 16px;z-index:10}.mobile-board-header .board-title{color:#38bdf8;font-size:13px;font-weight:700}.zoom-toggle-btn{align-items:center;background-color:#334155;border:1px solid #475569;border-radius:20px;color:#f1f5f9;cursor:pointer;display:flex;font-size:11px;font-weight:600;gap:6px;padding:6px 12px;transition:all .2s ease}.zoom-toggle-btn:hover{background-color:#475569}.zoom-toggle-btn.active{background-color:#0284c7;border-color:#38bdf8}.pitch-viewport{-webkit-overflow-scrolling:touch;--cell-size:32px;--grid-gap:0px;align-items:flex-start;background-color:#0b0f19;display:flex;flex:1 1;justify-content:flex-start;overflow:auto;padding:16px;position:relative}@media (min-width:768px){.pitch-viewport{--cell-size:44px;--grid-gap:0px;justify-content:center;padding:24px}}.pitch-viewport.desktop-viewport-mode{--cell-size:44px!important;--grid-gap:0px!important;justify-content:center!important;padding:24px!important}.pitch-viewport.birds-eye{--cell-size:23px;justify-content:center;padding:8px}@media (min-width:768px){.pitch-viewport.birds-eye{--cell-size:24px}}.pitch-viewport.birds-eye.desktop-viewport-mode{--cell-size:24px!important}.pitch-grid{grid-gap:0;background-color:#0b0f19;border-radius:8px;box-shadow:0 10px 15px -3px #0000004d;display:grid;grid-template-columns:repeat(15,var(--cell-size));padding:8px;transition:all .2s ease-in-out}.watermark-row-left,.watermark-row-right{color:#ffffff73;font-size:11px;font-weight:800;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:1}.watermark-col-bottom,.watermark-col-top{color:#fff;font-size:13px;font-weight:900;left:50%;opacity:.5;pointer-events:none;position:absolute;text-shadow:0 1px 3px #000000e6,0 0 5px #0009;top:50%;transform:translate(-50%,-50%);z-index:1}.pitch-cell{align-items:center;border-radius:0;cursor:pointer;display:flex;height:var(--cell-size);justify-content:center;position:relative;transition:background-color .2s ease;width:var(--cell-size)}.pitch-cell:after{background-color:#ffffff38;border-radius:50%;bottom:-2px;content:"";height:4px;pointer-events:none;position:absolute;right:-2px;width:4px;z-index:5}.pitch-cell:nth-child(15n):after{display:none}.pitch-cell.even-row-grass{--pulse-from:#166534;--pulse-to:#14532d;background-color:var(--grass-even)}.pitch-cell.odd-row-grass{--pulse-from:#166534;--pulse-to:#14532d;background-color:var(--grass-odd)}.pitch-cell.even-row-grass:hover{background-color:var(--grass-even-hover)}.pitch-cell.odd-row-grass:hover{background-color:var(--grass-odd-hover)}.pitch-cell.even-row-astro{--pulse-from:#b5bbc5;--pulse-to:#8d97a5;background-color:var(--astro-even)}.pitch-cell.odd-row-astro{--pulse-from:#b5bbc5;--pulse-to:#8d97a5;background-color:var(--astro-odd)}.pitch-cell.even-row-astro:hover{background-color:var(--astro-even-hover)}.pitch-cell.odd-row-astro:hover{background-color:var(--astro-odd-hover)}.pitch-cell.wide-border-left{border-left:3px dashed #fff9}.pitch-cell.scrimmage-line{border-bottom:4px solid #fff;box-shadow:inset 0 -1px 0 #0003,0 2px 4px #0000001a}.pitch-cell.end-zone-opponent{background-color:#7f1d1d;background-image:conic-gradient(#991b1b 25%,#090d16 25% 50%,#991b1b 50% 75%,#090d16 75%);background-size:16px 16px;border-bottom:2px solid #0006}.pitch-cell.end-zone-home{background-color:#1e3a8a;background-image:conic-gradient(#1e3a8a 25%,#090d16 25% 50%,#1e3a8a 50% 75%,#090d16 75%);background-size:16px 16px;border-top:2px solid #0006}.trapdoor-intersection-marker{background-color:#78350f!important;background-image:linear-gradient(90deg,#0000 50%,#00000026 0),linear-gradient(0deg,#0000 50%,#00000026 0)!important;background-size:6px 100%,100% 6px!important;border:2.5px solid #451a03!important;border-radius:3.5px!important;bottom:2px!important;box-shadow:inset 0 0 6px #000000a6!important;left:2px!important;opacity:.95!important;pointer-events:none!important;position:absolute!important;right:2px!important;top:2px!important;transform:none!important;z-index:1!important}.desktop-viewport-mode~.selected-player-status-bar,.mobile-board-container:has(.desktop-viewport-mode) .selected-player-status-bar{border:1px solid #475569!important;border-radius:8px!important;box-shadow:0 10px 30px #00000080!important;gap:12px!important;left:50%!important;margin:0 0 0 -300px!important;padding:20px 24px!important;width:600px!important}.mobile-board-container:has(.desktop-viewport-mode) .selected-player-status-bar .player-name{font-size:18px!important}.mobile-board-container:has(.desktop-viewport-mode) .selected-player-status-bar .player-position{font-size:13px!important}.mobile-board-container:has(.desktop-viewport-mode) .selected-player-status-bar .stat-box .val{font-size:16px!important}.mobile-board-container:has(.desktop-viewport-mode) .selected-player-status-bar .stat-box .label{font-size:11px!important}.mobile-board-container:has(.desktop-viewport-mode) .selected-player-status-bar .player-skills{font-size:14px!important}.sweet-spot-crosshair{align-items:center;display:flex;height:20px;justify-content:center;width:20px}.sweet-spot-crosshair:after{background-color:#fbbf24;border-radius:50%;content:"";height:4px;width:4px}.pitch-cell.tackle-zone:after{background-color:#dc262626}.pitch-cell.tackle-zone-overlap:after,.pitch-cell.tackle-zone:after{border-radius:4px;content:"";inset:0;pointer-events:none;position:absolute}.pitch-cell.tackle-zone-overlap:after{background-color:#dc26264d}@keyframes token-pulse{0%{box-shadow:0 0 8px 3px #f9731680;transform:scale(1.08)}to{box-shadow:0 0 16px 6px #f97316d9;transform:scale(1.18)}}.player-counter{align-items:center;border:2px solid #fffc;border-radius:50%;box-shadow:0 4px 6px -1px #0003,0 2px 4px -1px #0000000f;color:#fff;cursor:grab;display:flex;flex-direction:column;font-weight:700;height:calc(var(--cell-size)*.8);justify-content:center;position:relative;transition:transform .2s ease,box-shadow .2s ease;-webkit-user-select:none;user-select:none;width:calc(var(--cell-size)*.8);z-index:2}.player-counter.selected{animation:token-pulse 1.2s ease-in-out infinite alternate;border-color:#fff;z-index:10}.player-counter .num{font-size:calc(var(--cell-size)*.32);line-height:1}.player-counter .role{font-size:calc(var(--cell-size)*.16);font-weight:600;line-height:1;margin-top:1px;opacity:.9}.birds-eye .player-counter .role{display:none}.birds-eye .player-counter .num{font-size:10px}.bench-strip-container{background-color:#1e293b;border-top:1px solid #334155;box-shadow:0 -4px 6px -1px #0000001a;display:flex;flex-direction:column;padding:8px 16px 12px;z-index:10}.bench-strip-scroll{-webkit-overflow-scrolling:touch;display:flex;gap:12px;overflow-x:auto;padding:4px;scroll-behavior:smooth}.bench-item-wrapper{align-items:center;cursor:pointer;display:flex;flex-direction:column;flex-shrink:0;gap:4px}.bench-item-wrapper .player-counter{border-width:2px;height:42px;width:42px}.bench-item-wrapper .player-counter .num{font-size:16px}.bench-item-wrapper .player-counter .role{font-size:9px}.bench-item-wrapper.on-field{cursor:not-allowed;filter:grayscale(40%);opacity:.35}.bench-item-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#cbd5e1;display:-webkit-box;font-size:10px;height:2.4em;line-height:1.2;max-width:56px;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:normal}.selected-player-status-bar{animation:slide-down-bar .2s ease-out forwards;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background-color:#1e293bf2;border:1px solid #475569;border-radius:8px;box-shadow:0 10px 25px -5px #00000080;display:flex;flex-direction:column;gap:8px;left:16px;padding:12px 16px;position:absolute;right:16px;top:48px;z-index:50}@keyframes slide-down-bar{0%{opacity:0;top:38px}to{opacity:1;top:48px}}.selected-player-status-bar .player-meta{align-items:center;display:flex;gap:12px}.selected-player-status-bar .player-number-badge{background-color:#38bdf8;border-radius:4px;color:#0f172a;font-size:13px;font-weight:800;padding:2px 8px}.selected-player-status-bar .player-identity{display:flex;flex:1 1;flex-direction:column}.selected-player-status-bar .player-name{color:#fff;font-size:14px;font-weight:700}.selected-player-status-bar .player-position{color:#94a3b8;font-size:11px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-player-status-bar .player-cost{color:#f59e0b;font-size:13px;font-weight:700}.selected-player-status-bar .player-stats-grid{background-color:#0f172a99;border:1px solid #334155;border-radius:6px;display:flex;justify-content:space-between;padding:6px 12px}.selected-player-status-bar .stat-box{align-items:center;border-right:1px solid #334155;display:flex;flex:1 1;flex-direction:column}.selected-player-status-bar .stat-box:last-child{border-right:none}.selected-player-status-bar .stat-box .label{color:#64748b;font-size:9px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.selected-player-status-bar .stat-box .val{color:#f8fafc;font-size:12px;font-weight:700}.selected-player-status-bar .player-skills{color:#cbd5e1;font-size:11px;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-player-status-bar .player-skills .label{color:#38bdf8;font-weight:700;margin-right:4px}.pitch-viewport::-webkit-scrollbar{height:8px;width:8px}.pitch-viewport::-webkit-scrollbar-track{background:#090d16;border-radius:4px}.pitch-viewport::-webkit-scrollbar-thumb{background:#334155;border:2px solid #090d16;border-radius:4px}.pitch-viewport::-webkit-scrollbar-thumb:hover{background:#475569}.bench-strip-scroll::-webkit-scrollbar{height:6px}.bench-strip-scroll::-webkit-scrollbar-track{background:#1e293b}.bench-strip-scroll::-webkit-scrollbar-thumb{background:#475569;border-radius:3px}:root{--cell-size:40px;--sidebar-gap:8px;--sidebar-margin:32px}.container{display:flex;margin-top:32px;position:relative}@media (min-width:1024px){.container{margin-left:80px;margin-left:calc(var(--cell-size)*2)}}.sidebar{grid-gap:8px;grid-gap:var(--sidebar-gap);background:#f9f9f9;border:2px solid #ccc;border-radius:8px;display:grid;gap:8px;gap:var(--sidebar-gap);grid-auto-rows:40px;grid-auto-rows:var(--cell-size);grid-template-columns:repeat(2,40px);grid-template-columns:repeat(2,var(--cell-size));margin-right:32px;margin-right:var(--sidebar-margin);padding:8px}.cell .counter{align-items:center;background:var(--accent);border-radius:50%;color:var(--text-light);cursor:move;display:flex;height:40px;height:var(--cell-size);justify-content:center;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:40px;width:var(--cell-size)}.board{background:none!important;display:grid;grid-auto-rows:40px;grid-auto-rows:var(--cell-size);grid-template-columns:40px repeat(15,40px);grid-template-columns:var(--cell-size) repeat(15,var(--cell-size));overflow:visible}.headers{grid-column:1/2;grid-row:1/2}.col-header,.row-header{align-items:center;background:#eee;display:flex;font-weight:700;justify-content:center}.cell{border:1px solid #ffffff26;box-sizing:border-box;position:relative}.cell.even-row-grass{background-color:#15803d}.cell.odd-row-grass{background-color:#14532d}.cell.end-zone-home{background-color:#166534;border-bottom:4px double #ffffff80}.cell.wide-border-left{border-left:2px dashed #ffffff8c!important}.cell.wide-border-right{border-right:2px dashed #ffffff8c!important}.cell.scrimmage-line{border-top:4px solid #fff!important}.trapdoor-marker{background-color:#78350f;border:3px solid #451a03;border-radius:4px;box-shadow:inset 0 0 4px #0009;height:70%;width:70%;z-index:1}.sweet-spot-crosshair,.trapdoor-marker{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.sweet-spot-crosshair{border:2px dashed #fbbf24;border-radius:50%;height:50%;opacity:.85;pointer-events:none;width:50%}.tackle-zone{background-color:#fde04759}.tackle-zone-overlap{background-color:#ef444473}.cell-hover{background:#0000001a;bottom:0;left:0;position:absolute;right:0;top:0}.counter.selected{outline:3px solid #007bff}.bb-icon-wrapper{left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%)}.bb-icon{height:24px;height:calc(var(--cell-size)*.6);width:24px;width:calc(var(--cell-size)*.6)}.cell.wide-border,.col-header.wide-border{border-right:3px solid #aaa}@media (max-width:768px){:root{--cell-size:32px;--sidebar-gap:6px;--sidebar-margin:16px}.board{overflow-x:auto}}@media (max-width:480px){:root{--cell-size:24px;--sidebar-gap:4px}.container{align-items:center;flex-direction:column;margin-left:0}.board{margin-bottom:16px;order:1}.sidebar{grid-gap:8px;grid-gap:var(--sidebar-gap);display:grid;gap:8px;gap:var(--sidebar-gap);grid-auto-rows:40px;grid-auto-rows:var(--cell-size);grid-template-columns:repeat(8,40px);grid-template-columns:repeat(8,var(--cell-size));margin-right:0;order:2}}.roster-bench{background:#fafafa;border:2px solid #ccc;border-radius:8px;padding:8px}.roster-bench table{border-collapse:collapse;width:100%}.roster-bench td,.roster-bench th{border:1px solid #ddd;padding:4px 8px;text-align:left}.roster-bench tr.active{background:#007bff1a}.counter{align-items:center;background-color:#007bff;border-radius:50%;box-shadow:0 1px 2px #0003;color:#fff;display:flex;font-size:12px;font-weight:700;height:30px;justify-content:center;text-align:center;transition:transform .2s ease,box-shadow .2s ease,border .2s ease;width:30px}.counter.active{border:2px solid #fff;box-shadow:0 2px 4px #0000004d}.counter:active,.counter:focus{box-shadow:0 2px 4px #0000004d;outline:none;transform:scale(1.1)}.placeholder{color:#555;font-size:16px;font-weight:700}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
/*# sourceMappingURL=main.bcf72486.css.map*/