:root{color-scheme:dark;--bg:#0d1420;--rail:#101a28;--surface:#162334;--hover:#1e3043;--line:#324459;--ink:#f0f5f8;--muted:#b7c5d3;--subtle:#91a5b8;--accent:#9be7cf;--accent-strong:#baf4e2;--accent-bg:#24473f;--warn:#f0d39a;--gk:#f5d878;--def:#a8ceff;--mid:#a4e4bd;--att:#ffb4b9;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;font-size:16px;background:var(--bg);color:var(--ink)}
*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select{font:inherit}button,select,summary{cursor:pointer}button:disabled{opacity:.5;cursor:default}a{color:var(--accent-strong);text-underline-offset:4px}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}[hidden]{display:none!important}
.rail{position:fixed;inset:0 auto 0 0;width:184px;display:flex;flex-direction:column;padding:24px 14px;background:var(--rail);border-right:1px solid var(--line);z-index:20;overflow:auto}.brand{display:flex;align-items:center;justify-content:center;width:58px;height:44px;border-radius:9px;background:var(--accent);color:#0d2722;font-size:19px;font-weight:800;letter-spacing:-1px;text-decoration:none;white-space:nowrap;flex:none}.brand span{margin:0 -2px}.rail-label{margin:36px 12px 12px;font-size:12px;font-weight:700;color:var(--subtle);letter-spacing:.06em}.primary-nav{display:grid;gap:5px}.primary-nav>a,.manage-nav summary{display:flex;align-items:center;gap:12px;min-height:46px;padding:0 12px;border:1px solid transparent;border-radius:8px;color:var(--muted);font-size:14px;font-weight:600;text-decoration:none}.primary-nav>a span{font-size:18px;width:19px;text-align:center}.primary-nav>a:hover,.manage-nav summary:hover{background:var(--hover);color:var(--ink)}.primary-nav>a[aria-current=page]{background:var(--accent-bg);border-color:#3c685e;color:var(--accent-strong);box-shadow:inset 3px 0 var(--accent)}.manage-nav{margin-top:14px;border-top:1px solid var(--line);padding-top:10px}.manage-nav summary{list-style:none;justify-content:space-between}.manage-nav summary::-webkit-details-marker{display:none}.manage-nav summary:after{content:'⌄';color:var(--subtle)}.manage-links{display:grid;padding:0 8px 8px}.manage-links a{padding:8px 5px;color:var(--muted);font-size:13px;text-decoration:none;line-height:1.3}.manage-links a:hover{color:var(--accent)}.rail-foot{display:flex;align-items:center;gap:8px;margin:auto 12px 5px;padding-top:25px;color:var(--muted);font-size:12px}.rail-foot span,.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--mid)}
.shell{margin-left:184px;max-width:1800px;padding:0 40px 32px}.topbar{min-height:72px;display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid var(--line);font-size:12px;font-weight:700;color:var(--muted);letter-spacing:.04em}.topbar i{color:var(--subtle);font-style:normal;margin:0 8px}.manage-button,.link-button{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 12px;border:1px solid var(--line);border-radius:7px;color:var(--ink);background:var(--surface);font-size:14px;font-weight:600;text-decoration:none}.manage-button:hover,.link-button:hover{background:var(--hover)}
.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:30px 0 20px}.eyebrow{margin:0 0 8px;color:var(--accent);font-size:12px;font-weight:750;letter-spacing:.06em}.page-head h1{margin:0;font-size:30px;line-height:1.15;letter-spacing:-.035em}.subtitle{margin:8px 0 0;color:var(--muted);font-size:14px;line-height:1.5}.count-note,.hint{font-size:12px;line-height:1.5;color:var(--muted)}.count-note{text-align:right}.back{display:inline-block;margin:24px 0 0;font-size:14px;text-decoration:none;color:var(--muted)}.back:hover{color:var(--accent)}
.searchbar{display:flex;align-items:center;gap:12px;min-height:58px;padding:0 16px;border:1px solid #50677d;border-radius:9px;background:var(--surface)}.searchbar:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px #9be7cf33}.searchbar span{color:var(--muted);font-size:22px}.searchbar input{flex:1;min-width:0;padding:14px 0;border:0;outline:0;background:transparent;color:var(--ink);font-size:16px}.searchbar input::placeholder{color:#a1b1c0}.searchbar button{width:36px;height:36px;border:0;background:none;color:var(--muted);font-size:22px}.directory-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:22px 0 13px}.directory-tools h2,.section-title{margin:0;font-size:20px;letter-spacing:-.02em}.directory-tools a{font-size:14px}.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.club-card{min-height:92px;display:flex;align-items:center;gap:15px;padding:16px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);text-decoration:none}.club-card:hover{background:var(--hover);border-color:#607f83}.club-mark{display:grid;place-items:center;width:44px;height:44px;flex:none;border:1px solid #4c6b70;border-radius:8px;color:var(--accent);font-size:14px;font-weight:750;letter-spacing:.04em}.club-info{min-width:0;flex:1}.club-info strong{display:block;overflow-wrap:anywhere;font-size:16px}.club-info small{display:block;margin-top:5px;color:var(--muted);font-size:12px}.arrow{color:var(--subtle);font-size:20px}
.controls{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:0 0 18px}.controls .searchbar{flex:1 1 300px;min-height:48px}.controls .searchbar input{padding:10px 0}.segmented,.position-tabs{display:flex;gap:5px;flex-wrap:wrap}.segmented button,.position-tabs button,.control-button{min-height:42px;padding:8px 13px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--muted);font-size:14px;font-weight:650}.segmented button:hover,.position-tabs button:hover{background:var(--hover);color:var(--ink)}.segmented button[aria-pressed=true],.position-tabs button[aria-pressed=true]{background:var(--accent-bg);border-color:#3c685e;color:var(--accent-strong)}.position-tabs [data-role=GK]{color:var(--gk)}.position-tabs [data-role=DEF]{color:var(--def)}.position-tabs [data-role=MID]{color:var(--mid)}.position-tabs [data-role=FWD]{color:var(--att)}select{min-height:42px;max-width:100%;padding:8px 28px 8px 10px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--ink);font-size:14px}.select-label{display:grid;gap:5px;font-size:12px;color:var(--muted)}.section-divider{border-top:1px solid var(--line);padding-top:18px;margin-top:20px}.toolbar-meta{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:15px 0 10px}.toolbar-meta p{margin:0}.notice{padding:13px 15px;border-left:3px solid var(--warn);border-radius:5px;background:#2c2c2b;color:#f2dfbc;font-size:14px;line-height:1.5}.empty{padding:32px 16px;border:1px solid var(--line);border-radius:9px;color:var(--muted);font-size:14px;line-height:1.5}.empty strong{display:block;margin-bottom:5px;color:var(--ink);font-size:16px}.error{margin:18px 0;padding:12px;border:1px solid #a46d75;border-radius:7px;background:#442d37;color:#ffe4e5}.loading{margin:30px 0;color:var(--muted)}
.season-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:14px 0 24px}.season-link{display:block;min-height:76px;padding:13px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);text-decoration:none}.season-link:hover{border-color:#618c80;background:var(--hover)}.season-link strong{display:block;font-size:16px;font-variant-numeric:tabular-nums}.season-link small{display:block;margin-top:5px;color:var(--muted);font-size:12px;line-height:1.4}.season-link .recorded{color:var(--accent-strong)}
.list{border:1px solid var(--line);border-radius:9px;background:var(--surface);overflow:clip}.list-head,.player-row{display:grid;grid-template-columns:44px minmax(160px,1fr) 150px 135px minmax(155px,200px) 20px;align-items:center;gap:14px;padding:0 18px}.list-head{min-height:42px;border-bottom:1px solid var(--line);background:#1b2a3d;color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.02em}.player-row{min-height:76px;border-bottom:1px solid var(--line);border-left:3px solid var(--role,#607489);color:var(--ink);text-decoration:none}.player-row:last-child{border-bottom:0}.player-row:hover{background:var(--hover)}.rank{color:var(--subtle);font-size:12px;font-variant-numeric:tabular-nums}.player-name{display:block;color:var(--ink);font-size:17px;font-weight:700;overflow-wrap:anywhere}.player-sub{display:block;margin-top:4px;color:var(--muted);font-size:12px;line-height:1.4}.chips{display:flex;gap:5px;flex-wrap:wrap}.chip{padding:3px 6px;border:1px solid var(--role,#9fb4c6);border-radius:5px;background:#202f40;color:var(--role,#e3edf3);font-size:12px;line-height:1.3;font-weight:700}.role-GK{--role:var(--gk)}.role-DEF{--role:var(--def)}.role-MID{--role:var(--mid)}.role-ATT{--role:var(--att)}.rating{font-size:28px;font-weight:750;line-height:1.1;color:#c3f1df;font-variant-numeric:tabular-nums;text-align:center}.rating small{display:block;margin-top:4px;color:var(--muted);font-size:12px;font-weight:600}.rating.uncertain{color:var(--warn);font-size:14px;line-height:1.4}.support{font-size:14px;line-height:1.4;color:var(--muted)}.support strong{display:block;color:var(--ink);font-weight:600}.pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:16px 0;color:var(--muted);font-size:14px}.pagination button{min-height:42px;padding:8px 14px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--ink);font-size:14px}.review-title{margin:28px 0 5px;font-size:20px}.reference-list{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.reference-list span{padding:7px 10px;border:1px solid var(--line);border-radius:6px;color:var(--muted);font-size:14px}
.profile-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-end}.profile-score{min-width:170px;padding:14px 18px;border-left:1px solid var(--line);text-align:right}.profile-score strong{display:block;color:var(--accent-strong);font-size:32px;font-variant-numeric:tabular-nums}.profile-score span{display:block;color:var(--muted);font-size:12px}.history-row{display:grid;grid-template-columns:125px minmax(120px,1fr) 115px minmax(130px,200px);gap:14px;align-items:center;padding:15px 18px;border-bottom:1px solid var(--line);font-size:14px}.history-row:last-child{border:0}.history-row strong{font-variant-numeric:tabular-nums}.history-row a{font-weight:650}.history-row .rating{font-size:22px;text-align:left}.history-row .rating.uncertain{font-size:14px}.evidence{padding:10px 18px 16px;border-bottom:1px solid var(--line);color:var(--muted);font-size:12px;line-height:1.5}.evidence summary{color:var(--accent-strong);font-size:14px}.evidence p{overflow-wrap:anywhere}footer{display:flex;justify-content:space-between;gap:12px;margin:45px 0 0;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}
@media(max-width:1100px){.shell{padding-left:24px;padding-right:24px}.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.list-head,.player-row{grid-template-columns:30px minmax(150px,1fr) 115px 105px minmax(115px,160px) 14px;gap:9px;padding-left:12px;padding-right:12px}.season-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:800px){.rail{position:relative;inset:auto;width:100%;height:auto;flex-direction:row;align-items:center;gap:10px;padding:8px 12px;overflow:visible;border-right:0;border-bottom:1px solid var(--line)}.brand{width:50px;height:42px;font-size:17px}.rail-label,.rail-foot{display:none}.primary-nav{display:flex;align-items:center;gap:4px}.primary-nav>a,.manage-nav summary{min-height:42px;padding:0 9px;font-size:13px;gap:5px;white-space:nowrap}.primary-nav>a span{display:none}.manage-nav{margin:0;padding:0;border:0;position:relative}.manage-nav summary{font-size:0}.manage-nav summary:before{content:'Manage';font-size:13px}.manage-nav summary:after{font-size:13px}.manage-links{position:absolute;right:0;top:45px;z-index:30;width:240px;max-height:65vh;overflow:auto;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:0 10px 28px #0008}.manage-links a{min-height:38px}.shell{margin-left:0;padding:0 16px 24px}.topbar{min-height:52px}.topbar>span{display:none}.topbar{justify-content:flex-end}.page-head{padding:22px 0 16px}.page-head h1{font-size:25px}.count-note{display:none}.list-head{display:none}.player-row{grid-template-columns:25px minmax(0,1fr) minmax(70px,auto) 15px;grid-template-areas:'rank name rating arrow' 'rank positions support arrow';gap:6px 10px;padding:12px;min-height:88px}.player-row .rank{grid-area:rank}.player-row .namecell{grid-area:name}.player-row .chips{grid-area:positions}.player-row .rating{grid-area:rating;text-align:right;font-size:26px}.player-row .rating.uncertain{font-size:13px}.player-row .support{grid-area:support;text-align:right;font-size:12px}.player-row .arrow{grid-area:arrow}.player-name{font-size:16px}.season-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.history-row{grid-template-columns:90px minmax(0,1fr) 70px;gap:8px;padding:13px 12px}.history-row .history-source{grid-column:2/-1;font-size:12px}.profile-score{min-width:115px;padding:10px}.profile-score strong{font-size:26px}}
@media(max-width:420px){.primary-nav{flex:1;min-width:0;justify-content:space-around}.primary-nav>a,.manage-nav summary{padding:0 5px;font-size:12px}.primary-nav>a[href='/scout']{font-size:0}.primary-nav>a[href='/scout']:after{content:'Scout';font-size:12px}.manage-nav summary{font-size:0}.topbar{display:none}.directory-grid{grid-template-columns:1fr}.season-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.segmented{flex-wrap:nowrap;width:100%}.segmented button{flex:1;padding:8px 5px;font-size:12px}.position-tabs button{padding:8px 9px;font-size:12px}.controls{gap:8px}.controls .searchbar{flex-basis:100%}.profile-header{align-items:flex-start}.profile-score{min-width:90px}.history-row{grid-template-columns:78px minmax(0,1fr) 65px}.history-row .rating{font-size:20px}footer{display:block}footer span{display:block;margin-top:6px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}@media(forced-colors:active){.club-card,.player-row,.season-link{outline:1px solid CanvasText}}

.snapshot-notice{padding:12px 16px;border:1px solid #b08c46;border-radius:8px;color:#f4deb0;background:#332a1a;font-size:14px;line-height:1.4}#snapshot-freshness{font-size:12px}
