:root{background:#050607;color:#f3f3ef;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px}*{box-sizing:border-box}body{background:linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(0deg,rgba(255,255,255,.025) 1px,transparent 1px),#050607;background-size:56px 56px,56px 56px,auto;margin:0}button,input,select{font:inherit}button{cursor:pointer}main{min-height:100vh;padding:22px}.topbar{align-items:end;display:flex;gap:18px;justify-content:space-between;margin:0 auto 18px;max-width:1480px}.eyebrow{color:#a8ffdc;font-size:.72rem;font-weight:800;letter-spacing:0;margin:0 0 6px;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{color:#fffdf4;font-size:2.35rem;line-height:1;margin:0}h2{color:#fffdf4;font-size:1.35rem;margin-bottom:0}.title-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.title-gag,.status-card span,.standing small,.owner-total span,.status-cell,.empty-state{color:#a9ada7}.title-gag{font-size:.95rem;margin:10px 0 0}.hero-icon{align-items:center;background:#101314;border:1px solid #303638;border-radius:8px;color:#a8ffdc;display:inline-flex;height:46px;justify-content:center;width:46px}.status-card{background:#0e1011;border:1px solid #2d3233;border-radius:8px;display:grid;gap:5px;min-width:260px;padding:12px 14px;text-align:right}.status-card strong{color:#f3f3ef;font-size:.88rem;font-weight:700}.app-shell{display:grid;gap:16px;grid-template-columns:320px minmax(0,1fr);margin:0 auto;max-width:1480px}.roster-pane{background:#090b0c;border:1px solid #262b2d;border-radius:8px;display:grid;grid-template-rows:auto minmax(0,1fr);height:calc(100vh - 122px);min-height:620px;overflow:hidden}.roster-head{border-bottom:1px solid #222829;padding:12px}.roster-head button,.roster-select,.avatar-upload span{align-items:center;background:transparent;border:1px solid #303638;border-radius:8px;color:#f3f3ef;display:flex;gap:8px;min-height:40px;padding:8px 10px;width:100%}.roster-head button.active,.roster-select:hover,.roster-item.selected .roster-select{background:#f3f3ef;border-color:#f3f3ef;color:#050607}.roster-head p{color:#a9ada7;font-size:.82rem;margin:10px 0 0}.roster-list{overflow-y:auto;padding:10px}.roster-item{border-bottom:1px solid #1f2425;display:grid;gap:8px;padding:10px 0}.roster-item:first-child{padding-top:0}.roster-select{display:grid;grid-template-columns:auto minmax(0,1fr) auto;text-align:left}.roster-select strong{font-size:1.1rem}.rank{align-items:center;background:#a8ffdc;border-radius:999px;color:#050607;display:inline-flex;font-size:.8rem;font-weight:900;height:28px;justify-content:center;width:28px}.owner-name{align-items:center;display:inline-flex;gap:8px;min-width:0}.owner-name span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.owner-avatar{background:#151819;border:1px solid #3c4446;border-radius:999px;color:#a8ffdc;flex:0 0 auto;font-size:.82rem;font-weight:900;height:32px;object-fit:cover;width:32px}.owner-avatar.fallback{align-items:center;display:inline-flex;justify-content:center}.name-edit{color:#a9ada7;display:grid;font-size:.72rem;font-weight:800;gap:5px;text-transform:uppercase}.name-edit input,.field input,.pick-slot select{background:#050607;border:1px solid #303638;border-radius:6px;color:#f3f3ef;min-height:38px;padding:8px 9px;width:100%}.name-edit input:focus,.field input:focus,.pick-slot select:focus{border-color:#a8ffdc;outline:none}.avatar-upload{cursor:pointer}.avatar-upload input{display:none}.avatar-upload span{color:#a9ada7;font-size:.82rem;justify-content:center;min-height:34px}.main-pane{display:grid;gap:14px;min-width:0}.panel,.scoring-panel{background:#090b0cf5;border:1px solid #262b2d;border-radius:8px;box-shadow:0 18px 60px #00000047;padding:18px}.section-head,.owner-lab-head{align-items:center;display:flex;gap:18px;justify-content:space-between;margin-bottom:16px}.summary-metrics{display:flex;flex-wrap:wrap;gap:8px;justify-content:end}.summary-metrics span,.owner-summary span,.selected-team{background:#101314;border:1px solid #2a3031;border-radius:8px}.summary-metrics span,.owner-summary span{color:#a9ada7;font-size:.86rem;padding:8px 10px}.summary-metrics b,.score,.owner-total b,.selected-team b{color:#a8ffdc}.table-wrap{overflow-x:auto}table{border-collapse:collapse;min-width:980px;width:100%}th,td{border-bottom:1px solid #232829;padding:10px 9px;text-align:left;vertical-align:middle}th{background:#101314;color:#a9ada7;font-size:.72rem;text-transform:uppercase}tbody tr{cursor:pointer}tbody tr:hover,.leader-row{background:#a8ffdc0e}.results th,.results td{text-align:center}.results th:first-child,.results td:first-child,.results th:nth-child(2),.results td:nth-child(2),.owner-results th:last-child,.owner-results td:last-child{text-align:left}.table-rank{margin:0 auto}.pot-mix{color:#c8ccc6;font-size:.82rem;font-weight:800;white-space:nowrap}.status-cell{font-weight:650;line-height:1.35;max-width:320px}.owner-lab{min-width:0}.owner-lab h2{align-items:center;display:flex;gap:10px}.owner-total{background:#101314;border:1px solid #303638;border-radius:8px;display:grid;min-width:112px;padding:10px;text-align:right}.owner-total b{font-size:1.9rem;line-height:1}.owner-summary{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.owner-summary span{align-items:center;display:inline-flex;gap:6px}.selected-roster{display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}.selected-team{align-items:center;display:grid;gap:8px;grid-template-columns:auto minmax(0,1fr) auto;min-height:54px;padding:9px}.selected-team span{align-items:center;background:#f3f3ef;border-radius:999px;color:#050607;display:inline-flex;font-size:.75rem;font-weight:900;height:24px;justify-content:center;width:24px}.selected-team strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-team small{color:#a9ada7;grid-column:2}.selected-team b{grid-column:3;grid-row:1 / 3}.empty-state{margin:0}.pot-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.pot-card{background:#0d0f10;border:1px solid #242a2b;border-radius:8px;padding:12px}.pot-head{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.pot-head h3{font-size:1rem;margin:0}.pot-head span,.pick-slot span{color:#a8ffdc;font-size:.72rem;font-weight:900;text-transform:uppercase}.pick-grid{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.pick-slot{display:grid;gap:6px}.scoring-panel{padding:0}details summary{align-items:center;color:#a9ada7;cursor:pointer;display:flex;gap:8px;font-weight:800;list-style:none;padding:14px 16px}details summary::-webkit-details-marker{display:none}.scoring-grid{border-top:1px solid #232829;display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr));padding:14px 16px 16px}.field{color:#a9ada7;display:grid;font-size:.72rem;font-weight:900;gap:6px;text-transform:uppercase}@media(max-width:1180px){.app-shell{grid-template-columns:280px minmax(0,1fr)}.selected-roster{grid-template-columns:repeat(3,minmax(0,1fr))}.pick-grid,.scoring-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:860px){main{padding:12px}.topbar,.section-head,.owner-lab-head{align-items:stretch;display:grid}.status-card{min-width:0;text-align:left}.app-shell{grid-template-columns:1fr}.roster-pane{height:auto;min-height:0}.roster-list{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));max-height:430px}.roster-item{border:1px solid #222829;border-radius:8px;padding:10px}.pot-grid,.selected-roster,.pick-grid,.scoring-grid{grid-template-columns:1fr}h1{font-size:1.9rem}.table-wrap{overflow:visible}table,thead,tbody,tr,td{display:block;min-width:0;width:100%}thead{display:none}tr{background:#0d0f10;border:1px solid #232829;border-radius:8px;margin-bottom:10px;padding:10px}td{align-items:center;border-bottom:0;display:grid;gap:10px;grid-template-columns:88px minmax(0,1fr);padding:6px 0;text-align:left}td:before{color:#a9ada7;content:attr(data-label);font-size:.72rem;font-weight:900;text-transform:uppercase}.results th,.results td,.results th:first-child,.results td:first-child,.results th:nth-child(2),.results td:nth-child(2){text-align:left}}@media(max-width:560px){.roster-list{grid-template-columns:1fr}}
