@font-face{font-family:Manrope;src:url('/static/assets/fonts/Manrope-Variable.ttf') format('truetype');font-weight:200 800;font-display:swap}
:root{color-scheme:dark;--bg:#111315;--surface:#1b1e21;--raised:#272b2f;--line:#34393e;--ink:#f2f3f0;--secondary:#adb3ba;--muted:#959da5;--accent:#f28c76;--green:#a5d6b0;--ease:cubic-bezier(.23,1,.32,1)}
.ui-language-picker{display:inline-flex;align-items:center;gap:7px;color:var(--secondary);flex-shrink:0;max-width:100%}
.ui-language-picker>.icon{width:16px;height:16px;flex-shrink:0}
.ui-language-picker select{font-family:Manrope,Arial,sans-serif;font-size:12px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:7px;min-height:38px;max-width:154px;padding:7px 22px 7px 9px;cursor:pointer}
.ui-language-picker select:disabled{opacity:.6;cursor:wait}
.mobile-demo-banner{display:none}
*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font:14px/1.6 Manrope,Arial,sans-serif;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button,a{transition:background-color 140ms ease,color 140ms ease,transform 140ms var(--ease)}button:active:not(:disabled){transform:scale(.98)}button:disabled{opacity:.45;cursor:not-allowed}a{text-underline-offset:4px}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}::selection{background:#f28c7640;color:#fff}input,textarea{caret-color:var(--accent)}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}html{scrollbar-color:#51585e var(--bg);scrollbar-width:thin;scroll-padding-bottom:90px}h1,h2,h3{text-wrap:balance}img{display:block;max-width:100%}
svg.icon{width:20px;height:20px;flex-shrink:0;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}button svg.icon{pointer-events:none}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:1000;top:10px;left:10px;background:var(--ink);color:var(--bg);padding:10px 20px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}
/* 1440px = 212 sidebar + 80 gutters + 1148 canvas; canvas splits at a 24px gap. */
.app-shell{grid-template-columns:212px minmax(0,1fr);min-height:100svh}.sidebar{position:sticky;top:0;height:100svh;padding:36px 20px 20px;background:var(--bg);border-right:1px solid #292d31;gap:52px}.brand{padding:0;gap:10px}.brand-mark{width:auto;height:auto;border-radius:0;background:none;box-shadow:none;color:var(--accent);display:flex}.brand-mark svg{width:31px;height:31px}.brand-name{font-size:27px;letter-spacing:-1.1px;color:var(--ink)}.brand-dot{color:var(--accent)}.sidenav-label{font-size:11px;letter-spacing:0;text-transform:none;color:var(--muted);margin:0 12px 12px}.sidebar-menu{gap:6px}.nav-btn{min-height:46px;border:0;background:none;padding:12px;border-radius:8px;gap:12px;color:var(--secondary);font-size:13px;font-weight:600}.nav-btn.active{background:#22262a;color:var(--ink);box-shadow:none}.nav-ico{display:flex;color:var(--muted);font-size:20px}.nav-btn.active .nav-ico{color:var(--ink)}.nav-counter{background:#3b4146;color:var(--ink);font-size:11px;border-radius:6px;min-width:21px;text-align:center}.sidebar-bottom{gap:30px}.sidebar-promo{border:0;background:none;padding:0 10px;font-size:12px;border-radius:0}.sidebar-promo>.icon{color:var(--accent);margin-bottom:12px;width:24px;height:24px}.sidebar-promo strong{font-size:13px;color:var(--ink);display:block;margin-bottom:8px}.sidebar-promo p{font-size:12px;color:var(--secondary);line-height:1.8;margin:0}.my-mini{border:0;border-top:1px solid #292d31;background:none;border-radius:0;padding:20px 0 0;gap:10px;min-width:0}.my-mini-info{min-width:0}.my-mini-info strong{font-size:12px;overflow:hidden;text-overflow:ellipsis;color:var(--ink)}.my-mini-info span{font-size:11px;color:var(--muted)}
.main{padding:0 40px 48px;min-width:0;max-width:1600px;width:100%;margin:0 auto}.topbar{min-height:80px;margin:0 0 28px;padding:0;border-bottom:1px solid #292d31;gap:16px}.topbar-left{font-size:12px;gap:8px;color:var(--muted);letter-spacing:0}.topbar-left strong{font-weight:500;color:var(--secondary)}.topbar-left .icon{width:16px;height:16px}.breadcrumb-separator{padding:0 3px;color:#707980}.topbar-right{gap:14px;font-size:11px}.demo-ribbon{background:none;border:0;border-radius:0;color:var(--muted);font-size:11px;padding:0;display:inline-flex;align-items:center;gap:6px}.demo-ribbon:before{content:'';height:5px;width:5px;border-radius:50%;background:var(--accent)}.top-action{display:flex;gap:7px;align-items:center;background:none;border:0;padding:10px 0;color:var(--secondary);font-size:12px}.top-action .icon{width:16px;height:16px}.section-top{margin:0 0 24px}.page-eyebrow{display:none}.page-title{font-size:32px;font-weight:650;letter-spacing:-1px;margin:0 0 8px;line-height:1.2}.page-title em{font-style:normal;color:inherit;background:none;-webkit-text-fill-color:inherit}.page-subtitle{color:var(--secondary);font-size:13px;line-height:1.7;margin:0;max-width:68ch}.discover-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.availability-status{font-size:12px;color:var(--secondary);display:flex;align-items:center;gap:8px;margin-top:12px;white-space:nowrap}.online-dot{width:6px;height:6px;background:var(--green);box-shadow:none;animation:none}
.game-title{margin:0 0 10px}.sec-label{font-size:12px;font-weight:600;color:var(--ink)}.hint{font-size:11px;color:var(--muted)}.game-picker{display:flex;align-items:stretch;flex-wrap:nowrap;gap:8px;overflow-x:auto;padding-bottom:12px;margin-bottom:8px;scrollbar-width:thin}.game-chip{display:flex;align-items:center;gap:9px;background:var(--surface);border:1px solid transparent;padding:10px 13px;border-radius:8px;white-space:nowrap;font-size:12px;color:var(--secondary);min-height:45px}.game-chip.active{background:#292d31;color:var(--ink);border-color:#686260;box-shadow:none}.game-symbol{width:25px;min-width:25px;height:25px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:#c3c8cc}.game-symbol img{width:23px;height:29px;object-fit:cover;border-radius:3px}.game-chip.active .game-symbol{color:var(--accent)}.game-add{font-size:16px;color:var(--muted);margin-left:3px}.filter-bar{gap:10px;margin:0 0 10px;flex-wrap:wrap}.filter-button{border:1px solid var(--line);background:var(--surface);border-radius:7px;padding:9px 30px 9px 12px;min-height:38px;color:var(--secondary);font-size:12px;max-width:100%;cursor:pointer}.filter-count{margin-left:auto;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums;display:flex;align-items:center;gap:8px}.filter-count .icon{width:15px;height:15px}
.discover-layout{display:grid;grid-template-columns:minmax(0,1fr) 264px;gap:24px;align-items:start}.discover-layout>div{min-width:0}.player-card{background:var(--surface);border:0;border-radius:14px;box-shadow:none;animation:none;overflow:hidden;touch-action:pan-y;isolation:isolate}.player-art{height:190px;position:relative;background:#303439;overflow:hidden}.player-art:before,.player-art:after{display:none}.game-art{height:100%;width:100%;object-fit:cover;object-position:center 42%}.art-meta{position:absolute;inset:18px 20px auto;display:flex;align-items:center;justify-content:space-between;gap:10px}.art-game,.looking-tag{position:static;display:inline-flex;align-items:center;gap:7px;padding:6px 10px;background:#131516ed;color:#f2f3f0;border:0;border-radius:5px;font-size:11px;font-weight:600;letter-spacing:0}.art-game .icon{width:14px;height:14px}.game-art-fallback{height:100%;display:flex;align-items:center;padding:30px;font-size:48px;font-weight:800;color:#d7d9d8;letter-spacing:-2px}.art-source{position:absolute;bottom:12px;right:16px;font-size:11px;color:#fff;background:#131516e0;padding:3px 6px;border-radius:3px}
.player-body{padding:24px}.player-identity{display:flex;align-items:center;gap:14px;min-width:0;margin-bottom:14px}.avatar,.tiny-ava{width:52px;height:52px;border-radius:50%;background:var(--avatar-bg,#394944);color:var(--avatar-ink,#d4e9dd);border:0;box-shadow:none;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:650;flex-shrink:0;overflow:hidden}.avatar img,.tiny-ava img{width:100%;height:100%;object-fit:cover}.avatar.lg{width:76px;height:76px;font-size:26px}.tiny-ava{width:34px;height:34px;font-size:12px}.player-header{min-width:0;flex:1;display:block;margin:0}.player-name{font-size:26px;letter-spacing:-.7px;margin:0 0 5px;overflow-wrap:anywhere;line-height:1.2}.player-age{font-size:16px;color:var(--muted);font-weight:400;margin-left:4px}.player-region{display:flex;align-items:center;gap:7px;color:var(--secondary);font-size:11px;flex-wrap:wrap;margin:0}.player-region .icon{width:12px;height:12px}.match-score{display:flex;align-items:center;gap:6px;color:var(--accent);background:none;border:0;border-radius:0;padding:0;font-size:12px;font-weight:650;flex-shrink:0}.match-score .icon{width:15px;height:15px}.player-bio{font-size:13px;line-height:1.8;color:#c4c9cd;margin:0 0 20px;min-height:0;overflow-wrap:anywhere;max-width:70ch}
.player-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:17px 0;border-top:1px solid #32363a;border-bottom:1px solid #32363a;margin:0 0 20px}.highlight{min-width:0;background:none;padding:0;border:0;border-radius:0}.highlight>span{display:block;font-size:11px;color:var(--muted);margin-bottom:5px}.highlight>strong{display:block;font-size:12px;font-weight:600;overflow-wrap:anywhere;color:var(--ink)}.rating-count{color:var(--secondary);font-size:11px;font-weight:400}.card-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:12px}.meter-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 10px;font-size:11px}.meter-title strong,.small-heading{font-size:11px;font-weight:600;color:var(--secondary);text-transform:none;letter-spacing:0}.meter-title>span{font-size:11px;color:var(--secondary)}.meter-rail{display:flex;gap:4px}.meter-cell{flex:1;height:5px;border-radius:2px;background:#3b4044}.meter-cell.filled{background:var(--accent);box-shadow:none}.meter-ends{font-size:11px;color:var(--muted);margin-top:7px}.small-heading{margin:0 0 9px}.language-chips{display:flex;flex-wrap:wrap;gap:7px;align-items:center}.language-chip{font-size:11px;color:#d2d6d9;display:inline-flex;gap:4px;align-items:center;padding:3px 0;white-space:normal;background:none;border:0;border-radius:0}.language-chip+.language-chip:before{content:'·';color:var(--muted);margin-right:4px}.language-chip span{font-size:11px;color:var(--muted)}
.action-row{display:flex;align-items:center;gap:10px;padding-top:16px;border-top:1px solid #32363a;margin:18px 0 0}.action-circle{border:0;background:var(--raised);color:var(--ink);height:44px;width:auto;padding:0 18px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:12px;font-weight:650;box-shadow:none}.action-circle .icon{width:17px;height:17px}.action-circle.no{flex:1;color:#d0d5d9;background:var(--raised);border:0}.action-circle.yes{flex:1.3;background:var(--ink);color:#161819;border:0}.action-circle.super{width:44px;padding:0;color:var(--muted);order:3;background:var(--raised);border:0}.keyboard-note{font-size:11px;color:var(--muted);text-align:center;margin:12px 0 0}kbd{font:11px Manrope,sans-serif;background:#2b3034;border:1px solid #41474c;border-radius:3px;padding:0 4px;margin:0 3px}.player-card:not(.dragging){transition:transform 160ms var(--ease),opacity 160ms var(--ease)}.player-card.swipe-left{transform:translateX(-32px) rotate(-2deg);opacity:0}.player-card.swipe-right{transform:translateX(32px) rotate(2deg);opacity:0}
.insight-col{display:grid;gap:20px}.insight-card{padding:24px;background:var(--surface);border:0;border-radius:14px;box-shadow:none}.insight-head{display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:600;margin-bottom:18px;color:var(--ink);letter-spacing:0}.insight-head .icon{color:var(--secondary);width:17px;height:17px}.compatibility-value{font-size:52px;line-height:1;font-weight:500;letter-spacing:-2px;color:var(--accent);font-variant-numeric:tabular-nums;margin:0 0 12px}.compatibility-value>span{font-size:22px;letter-spacing:-.5px;margin-left:2px}.compatibility-description{font-size:11px;line-height:1.8;color:var(--secondary);margin:0 0 18px}.compatibility-track{height:4px;background:#3a3e42;border-radius:2px;margin-bottom:20px;overflow:hidden}.compatibility-track>span{height:100%;display:block;background:var(--accent)}.insight-line{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;color:var(--secondary);padding:10px 0;border-top:1px solid #33373b}.insight-line strong{font-size:11px;font-weight:500;color:var(--ink);text-align:right;font-variant-numeric:tabular-nums}.insight-card h3{font-size:16px;margin:0 0 12px;font-weight:600;letter-spacing:-.3px}.insight-card>p{font-size:11px;color:var(--secondary);line-height:1.8}.tip-item{gap:12px;align-items:flex-start;margin:18px 0 0}.tip-icon{color:var(--muted);background:none;border:0;width:auto;height:auto;flex-shrink:0;display:flex;padding-top:2px}.tip-icon .icon{width:17px;height:17px}.tip-item strong{font-size:11px;font-weight:550;margin-bottom:4px}.tip-item span{font-size:11px;color:var(--secondary);line-height:1.8}.side-footer-quote{font-size:11px;color:var(--muted);line-height:1.8;padding:0 12px;margin:0;display:flex;gap:7px;align-items:flex-start;font-style:normal}.side-footer-quote .icon{width:13px;height:13px;margin-top:3px}
.empty-card{padding:64px 32px;background:var(--surface);border:0;border-radius:14px;min-height:300px}.empty-card h2{font-size:22px;font-weight:600;letter-spacing:-.5px}.empty-card p{color:var(--secondary);font-size:13px;max-width:45ch;line-height:1.8;margin-left:auto;margin-right:auto}.empty-emoji{margin-bottom:20px;color:var(--accent)}.empty-emoji .icon{width:36px;height:36px;stroke-width:1.2}
.primary-btn,.secondary-btn,.danger-btn,.discord-btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:10px 16px;border-radius:8px;font-size:12px;font-weight:600;line-height:1.4;box-shadow:none}.primary-btn,.discord-btn{background:var(--ink);color:#151719;border:0}.secondary-btn{background:var(--raised);color:var(--ink);border:1px solid #3c4247}.danger-btn{background:none;color:#f3aaa0;border:1px solid #654440}.link-btn{background:none;border:0;padding:8px;color:var(--secondary);font-size:11px;text-decoration:underline;text-underline-offset:4px;min-height:36px}.primary-btn .icon,.secondary-btn .icon{width:16px;height:16px}
.gf-panel{margin:0 0 8px;background:none;padding:0;border:0;border-radius:0;min-width:0}.gf-panel>summary{display:flex;align-items:center;gap:8px;list-style:none;cursor:pointer;color:var(--secondary);font-size:11px;min-height:36px;padding:4px 0;width:fit-content}.gf-panel>summary::-webkit-details-marker{display:none}.gf-panel>summary .icon{width:15px;height:15px}.gf-panel>summary:after{content:'+';margin-left:4px;color:var(--muted);font-size:16px}.gf-panel[open]>summary:after{content:'−'}.gf-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;padding:16px;background:var(--surface);border-radius:10px}.gf-field{gap:8px;margin-top:8px;min-width:0}.gf-field strong{font-size:11px;font-weight:600;color:var(--secondary)}.gf-options{gap:8px}.gf-pill{gap:7px;font-size:11px;padding:6px 9px;background:var(--raised);border:1px solid transparent;border-radius:5px;min-height:34px}.gf-pill:has(input:checked){border-color:#9f746a;background:var(--raised);color:#ffe1d9}.gf-pill input,.gf-slider{accent-color:var(--accent)}.gf-slider-label{color:var(--secondary);font-size:11px}.gf-region{gap:12px;margin:0 0 14px;padding:0;background:none;border:0;border-radius:0;font-size:11px;color:var(--secondary)}.gf-region select{padding:7px 28px 7px 10px;min-height:34px}.gf-edit{border-top:1px solid var(--line);margin-top:20px;padding-top:16px}.gf-edit h4{font-size:12px}.gf-tags{gap:6px;margin:12px 0 0}.gf-tag{padding:3px 8px;font-size:11px;color:#c4c9cd;border-radius:4px;background:#2c3135;border:0}
.pf-availability{gap:10px;margin:0 0 20px;padding:12px 0;border:0;border-top:1px solid #292d31;border-bottom:1px solid #292d31;background:none;border-radius:0}.pf-availability label{font-size:11px;color:var(--secondary);font-weight:500}.pf-availability .filter-button{min-height:34px;font-size:11px;padding:7px 27px 7px 10px;flex:0 1 auto;min-width:0}.pf-availability .secondary-btn{margin-left:auto;font-size:11px;min-height:34px;padding:7px 12px;color:var(--green);background:none;border-color:#3e5145}.pf-notice,.notice{font-size:11px;line-height:1.8;color:var(--secondary);padding:12px 14px;background:#292d31;border:0;border-radius:7px}
.profile-grid{grid-template-columns:minmax(0,1fr) 280px;gap:24px;align-items:start}.profile-grid>div{min-width:0}.form-card{background:var(--surface);padding:26px;border:0;border-radius:14px;margin-bottom:20px;box-shadow:none}.form-card h3{font-size:16px;font-weight:600;margin-bottom:9px;letter-spacing:-.3px}.form-card>p{color:var(--secondary);font-size:12px;line-height:1.8;max-width:68ch;margin-bottom:22px}.form-grid{gap:18px}.field{min-width:0;gap:8px}.field label{font-size:11px;font-weight:600;color:#c5cbd0}input:not([type=range]):not([type=checkbox]):not([type=radio]),textarea,.field select,.lang-add select,.language-select{width:100%;background:#24282c;border:1px solid #3a4046;border-radius:7px;padding:10px 12px;color:var(--ink);font-size:12px;min-height:42px}textarea{resize:vertical;min-height:100px;line-height:1.7}.edit-game{padding:20px 0;border:0;border-top:1px solid var(--line);border-radius:0;background:none}.edit-game-top{font-size:13px}.edit-game-row{gap:16px;margin-bottom:20px}.six-steps{gap:6px}.scale-step{min-height:36px;border:0;background:#31363b;border-radius:5px;font-size:11px;color:var(--ink)}.scale-step.active{background:var(--accent);color:#2c1c16}.scale-labels{font-size:11px;color:var(--secondary)}.panel-section-title{font-size:12px;flex-wrap:wrap}.language-demo-grid{gap:10px}.lang-level-card{background:#252a2e;border:1px solid transparent;border-radius:8px}.lang-level-card.selected{border-color:var(--accent);box-shadow:none}.lang-level-card-body{padding:12px}.lang-level-card strong{font-size:11px}.lang-level-card p{font-size:11px;color:#c4c9cd;line-height:1.8}.lang-level-card small{font-size:11px;color:var(--muted)}.lang-edit-row{gap:12px}.saved-note{color:var(--green)}.profile-aside{position:static;display:grid;gap:20px;min-width:0}.profile-aside .form-card{margin:0;padding:22px}.profile-aside .form-card p{font-size:11px;line-height:1.8}.profile-preview,.steam-tile{padding:24px;background:var(--surface);border:0;border-radius:14px;min-width:0;margin:0;text-align:left}.profile-preview .avatar{margin:0 0 16px}.profile-preview h3{font-size:18px;overflow-wrap:anywhere}.profile-preview>p{font-size:11px;color:var(--secondary);line-height:1.8}.steam-tile h3{font-size:14px;font-weight:600}.steam-tile p,.privacy-note{font-size:11px;color:var(--secondary);line-height:1.8}.steam-tile .secondary-btn{font-size:11px;max-width:100%;white-space:normal}.profile-aside .filter-button{width:100%;font-size:11px}.profile-aside .language-chips{justify-content:flex-start!important}
.match-list{gap:16px}.match-card{grid-template-columns:48px minmax(0,1fr);gap:16px;background:var(--surface);border:0;border-radius:14px;padding:24px}.match-card .avatar{width:48px;height:48px;font-size:16px}.match-card h3{font-size:18px;margin:2px 0 8px;letter-spacing:-.3px;overflow-wrap:anywhere}.match-card-meta{font-size:12px;color:var(--secondary);line-height:1.8}.match-card-actions{gap:10px}.match-card-actions button{font-size:11px;min-height:34px;padding:8px 12px}.match-game{font-size:11px;background:#2c3135;color:#c5cbd0;border:0;border-radius:5px}.discord-handle{color:var(--accent)}a.discord-handle{text-decoration:underline}.reviewed{color:var(--green)}.review-form{border-top:1px solid var(--line)}.star-btn{background:none;border:0;color:#747e86}.star-btn.selected{color:#e8bc83}.pf-saved{background:var(--surface);border:0;border-radius:14px;padding:24px;margin-top:24px}.pf-saved h3{font-size:16px;font-weight:600}.pf-saved>p,.pf-card p{color:var(--secondary);font-size:12px;line-height:1.8}.pf-saved-item{border-color:var(--line)}.pf-incident{background:#292d31;border:0;border-radius:8px;overflow-wrap:anywhere}
.modal-shade{background:#000b;backdrop-filter:none}.modal{background:#25292d;border:0;border-radius:16px;padding:36px;max-width:440px;box-shadow:none;animation:none;max-height:calc(100svh - 48px);overflow:auto}.modal-close{width:36px;height:36px;display:grid;place-items:center;right:12px;top:12px}.modal-spark{color:var(--accent);margin:8px 0 24px}.modal-spark .icon{width:38px;height:38px}.modal h2{font-size:28px;letter-spacing:-.7px}.modal p{font-size:13px;line-height:1.8;color:var(--secondary)}.toast{background:#e8ece8;color:#171b1c;border:0;border-radius:10px;box-shadow:none;font-size:12px;line-height:1.7;max-width:min(380px,calc(100vw - 32px));transition:opacity 160ms ease,transform 180ms var(--ease)}
.landing{display:block;max-width:1280px;margin:auto;padding:0 48px 40px;min-height:100svh}.landing-header{height:104px;display:flex;align-items:center;justify-content:space-between;gap:24px}.landing .brand{margin:0}.landing-nav{display:flex;align-items:center;gap:28px;font-size:12px;color:var(--secondary)}.landing-nav a{padding:10px 0}.landing-content{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;min-height:calc(100svh - 180px);padding:36px 0 50px}.landing h1{font-size:clamp(48px,5.3vw,74px);font-weight:600;letter-spacing:-2.8px;line-height:1.1;margin:0 0 26px}.landing-description{font-size:15px;line-height:1.9;color:var(--secondary);max-width:46ch;margin:0 0 30px}.landing-actions{gap:12px;margin:0}.landing-actions .primary-btn,.landing-actions .discord-btn{font-size:13px;min-height:46px;padding:14px 20px}.landing-actions .secondary-btn{min-height:46px}.landing-note{font-size:11px;color:var(--muted);margin-top:18px;line-height:1.8}.landing-principles{display:flex;gap:30px;margin-top:50px}.landing-principles>div{max-width:140px}.landing-principles .icon{width:18px;height:18px;color:var(--secondary);margin-bottom:9px}.landing-principles strong{display:block;font-size:11px;font-weight:600;margin-bottom:5px}.landing-principles span{color:var(--muted);font-size:11px;line-height:1.8;display:block}.landing-right{min-width:0;max-width:none;width:100%;margin:0}.landing-right:before{display:none}.preview-caption{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:11px;margin-bottom:12px}.preview-caption .icon{width:14px;height:14px;color:var(--accent)}.landing-preview{transform:none;box-shadow:none}.landing-preview .player-art{height:170px}.landing-preview .player-body{padding:22px}.landing-preview .player-name{font-size:24px}.landing-preview .player-bio{font-size:12px}.landing-preview .action-row{margin-top:18px}.landing-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #292d31;padding-top:20px;color:var(--muted);font-size:11px}.landing-footer .game-credits{max-width:58ch;text-align:right}.error-inline{font-size:12px;color:#f3aaa0;line-height:1.8}.asset-credit{display:block;font-size:11px;color:var(--muted);margin:24px 0 0;line-height:1.7}
@media(hover:hover) and (pointer:fine){.nav-btn:hover,.game-chip:hover{background:#292e32;color:var(--ink)}.primary-btn:hover,.discord-btn:hover,.action-circle.yes:hover{background:#d6dcd5;transform:none}.secondary-btn:hover,.action-circle.no:hover{background:#373d42;transform:none}.link-btn:hover,.top-action:hover,.landing-nav a:hover{color:var(--ink)}.action-circle.super:hover{background:#393331;color:var(--accent);transform:none}}
@media(min-width:1550px){.player-art{height:240px}.player-body{padding:28px}.discover-layout{grid-template-columns:minmax(0,1fr) 294px}.insight-card{padding:26px}}
@media(max-width:1200px){.app-shell{grid-template-columns:190px minmax(0,1fr)}.main{padding:0 28px 40px}.sidebar{padding:30px 15px 20px}.discover-layout{grid-template-columns:minmax(0,1fr) 230px;gap:18px}.insight-card{padding:20px}.player-body{padding:22px}.player-name{font-size:24px}.card-info-grid{gap:16px}.profile-grid{grid-template-columns:minmax(0,1fr) 250px;gap:18px}.landing-content{gap:44px}.game-chip{font-size:11px}}
@media(max-width:1000px){.discover-layout{grid-template-columns:minmax(0,1fr)}.insight-col{grid-template-columns:1fr 1fr;gap:18px}.side-footer-quote{grid-column:1/-1}.player-art{height:220px}.profile-grid{grid-template-columns:minmax(0,1fr)}.profile-aside{grid-template-columns:1fr 1fr}.availability-status{display:none}.landing{padding:0 32px 32px}.landing-content{gap:32px}.landing h1{font-size:54px}.landing-principles{gap:20px}}
@media(max-width:760px){.app-shell{grid-template-columns:minmax(0,1fr)}.sidebar{position:fixed;top:auto;bottom:0;left:0;right:0;height:auto;min-height:70px;padding:7px 12px max(7px,env(safe-area-inset-bottom));display:block;background:var(--bg);border:0;border-top:1px solid #34393e;backdrop-filter:none;z-index:60}.sidebar>.brand,.sidebar .sidenav-label,.sidebar .sidebar-bottom{display:none}.sidebar-menu{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.nav-btn{flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:11px;padding:6px;min-height:52px;border-radius:6px}.nav-btn.active{background:transparent}.nav-btn.active .nav-ico{color:var(--accent)}.nav-btn .icon{width:21px;height:21px}.nav-counter{display:none}.main{padding:0 20px 110px}.topbar{min-height:64px;margin-bottom:26px}.topbar-right{gap:12px}.topbar-left{font-size:11px}.demo-ribbon{font-size:11px}.page-title{font-size:28px;letter-spacing:-.8px}.page-subtitle{font-size:12px}.game-title{margin-top:0}.game-title .hint{display:none}.game-picker{margin-right:-20px;padding-right:20px;scrollbar-width:none}.game-chip{min-height:44px;padding:8px 12px;font-size:11px;gap:7px}.filter-bar{gap:8px}.filter-button{min-height:42px;padding:9px 24px 9px 10px;font-size:11px}.filter-count{font-size:11px}.player-art{height:185px}.player-body{padding:20px}.player-name{font-size:24px}.art-meta{inset:14px 16px auto}.player-identity{gap:11px}.avatar{width:45px;height:45px;font-size:16px}.match-score{font-size:11px;gap:3px}.player-region{font-size:11px}.player-bio{font-size:12px}.player-highlights{gap:10px}.highlight>span{font-size:11px}.highlight>strong{font-size:11px}.card-info-grid{grid-template-columns:1fr 1fr;gap:18px}.meter-title{display:block}.meter-title>span{display:block;margin-top:4px;min-height:16px}.action-circle{height:46px;padding:0 14px;font-size:12px;width:auto}.action-circle.super{width:46px}.pf-availability{display:flex;gap:8px}.pf-availability label{font-size:11px;flex:1}.pf-availability .filter-button{flex:1;min-height:40px}.pf-availability .secondary-btn{min-height:40px;font-size:11px}.gf-panel>summary{min-height:42px}.gf-region{display:block;margin:0 0 14px}.gf-region label{display:block;margin-bottom:7px}.gf-region select{width:100%;min-height:40px}.gf-pill{min-height:40px}.insight-col{grid-template-columns:1fr 1fr;gap:12px}.insight-card{padding:20px}.insight-col .insight-card:first-child{display:block}.insight-head{font-size:11px}.compatibility-value{font-size:44px}.insight-card h3{font-size:15px}.tip-item{gap:8px}.tip-item span{font-size:11px}.insight-line{display:block;font-size:11px}.insight-line strong{display:block;margin-top:5px;font-size:11px}.side-footer-quote{padding:0 4px}.profile-grid{gap:20px}.form-card{padding:20px}.profile-aside{gap:16px}.form-grid{gap:16px}.profile-aside .form-card,.profile-preview,.steam-tile{padding:20px}.match-card{padding:20px;gap:12px}.match-card-actions .secondary-btn,.match-card-actions .danger-btn{min-height:42px}.pf-saved{padding:20px}.toast{bottom:92px;right:16px}input:not([type=range]):not([type=checkbox]):not([type=radio]),textarea,.field select,.lang-add select,.language-select{font-size:16px;min-height:44px}.field label{font-size:12px}.landing{padding:0 24px 30px}.landing-header{height:88px}.landing-nav{gap:16px;font-size:11px}.landing-nav .landing-about{display:none}.landing-content{grid-template-columns:1fr;gap:40px;padding:30px 0 40px}.landing h1{font-size:clamp(44px,9.5vw,64px);letter-spacing:-1.8px;max-width:12ch}.landing-description{font-size:14px;max-width:46ch}.landing-principles{margin-top:32px;gap:20px}.landing-right{max-width:480px;width:100%;margin:0 auto}.landing-footer{flex-direction:column;align-items:flex-start;gap:12px}.landing-footer .game-credits{text-align:left}.modal{padding:32px 24px}.modal h2{font-size:25px}}
@media(max-width:430px){.main{padding-left:16px;padding-right:16px}.topbar-left>span:last-child{display:none}.game-picker{margin-right:-16px;padding-right:16px}.topbar-right .top-action{font-size:0;gap:0}.top-action .icon{width:19px;height:19px}.demo-ribbon{max-width:130px;line-height:1.5}.filter-count{display:flex;width:100%;margin:1px 0 0}.filter-bar .filter-button{flex:1;min-width:0;width:40%}.player-body{padding:18px}.player-art{height:168px}.player-name{font-size:21px}.player-age{font-size:14px}.player-identity{flex-wrap:wrap}.match-score{margin-left:auto}.player-header{flex:1;min-width:140px}.card-info-grid{gap:12px}.meter-title>span{font-size:11px}.keyboard-note{font-size:11px}.insight-col{grid-template-columns:1fr}.insight-line{display:flex}.insight-line strong{margin:0}.side-footer-quote{grid-column:auto}.form-grid,.edit-game-row{grid-template-columns:1fr}.profile-aside{grid-template-columns:1fr}.language-demo-grid{grid-template-columns:1fr}.lang-level-card{display:grid;grid-template-columns:90px 1fr}.lang-level-card img{height:100%;min-height:100px}.lang-edit-row{flex-wrap:wrap;gap:8px}.lang-edit-row>span{width:100%;min-width:0}.lang-edit-row select{width:70%}.match-card{grid-template-columns:36px minmax(0,1fr);padding:16px}.match-card .avatar{width:36px;height:36px;font-size:13px}.match-card h3{font-size:16px}.match-card-meta{font-size:11px}.pf-availability label{flex-basis:100%}.landing-nav{font-size:11px}.landing-preview .player-body{padding:18px}.landing-preview .player-name{font-size:21px}.landing-principles{gap:16px}.landing-principles strong{font-size:11px}.landing-principles span{font-size:11px}.landing-actions>a{width:100%}.landing .brand-name{font-size:25px}}
.search-preferences{margin:0 0 18px}
.search-preferences>summary{display:flex;align-items:center;gap:8px;min-height:36px;list-style:none;cursor:pointer;font-size:11px;color:var(--secondary)}
.search-preferences>summary::-webkit-details-marker{display:none}
.search-preferences>summary>.icon{width:15px;height:15px}
.search-preferences>summary>span{font-size:11px;color:var(--muted);margin-left:4px}
.search-preferences>summary:after{content:'+';margin-left:auto;font-size:17px}
.search-preferences[open]>summary:after{content:'−'}
.search-preferences-content{padding-top:12px}
.search-preferences .gf-heading{font-size:12px;font-weight:600;color:var(--ink);margin:0 0 10px}
.search-preferences .gf-region{margin:16px 0}
.search-preferences .pf-availability{margin-bottom:0}
.insight-head{text-transform:none}
.action-circle,.action-circle:hover{box-shadow:none;filter:none}
.action-circle.yes,.match-score{box-shadow:none}
.game-chip,.filter-button,.action-circle,.highlight>strong,.insight-line,.insight-line strong,.tip-item strong,.match-score{font-size:13px}
.small-heading,.meter-title strong,.meter-title>span,.language-chip,.player-region,.tip-item span,.compatibility-description,.insight-card>p{font-size:12px}
.landing-content{grid-template-columns:1.05fr 1fr;gap:50px}
.landing h1{font-size:clamp(48px,4.7vw,68px);max-width:14ch;letter-spacing:-2px}
.landing .landing-left{max-width:none}
.field textarea,.field input,.field select,.lang-edit-row select{background:#24282c;color:var(--ink);border-color:#3a4046;border-radius:7px}
.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--accent);box-shadow:none}
.lang-level-card{text-align:left;font-family:Manrope,Arial,sans-serif}
.star-btn .icon{width:24px;height:24px;fill:none}.star-btn.selected .icon{fill:currentColor}
.lang-edit-row .link-btn .icon{width:15px;height:15px}
.lang-edit-row{border-color:var(--line)}
.language-demo-grid .lang-level-card small{display:block;line-height:1.7}
.loading-app .load-mark{background:none;color:var(--accent);animation:none;border-radius:0}
.topbar-right .top-action:hover{border-color:transparent}
@media(min-width:1001px){.player-art{height:170px}.player-body{padding:22px}.player-highlights{padding:14px 0;margin-bottom:16px}.player-bio{margin-bottom:16px}.action-row{margin-top:14px}.keyboard-note{margin-top:9px}.topbar{min-height:72px;margin-bottom:24px}.section-top{margin-bottom:20px}}
@media(max-width:760px){.landing-content{grid-template-columns:1fr;gap:40px}.landing h1{font-size:clamp(44px,9.5vw,64px);max-width:14ch;letter-spacing:-1.8px}.search-preferences>summary{min-height:44px}.search-preferences>summary>span{font-size:11px}.player-art{height:160px}.game-title{margin-bottom:8px}.main .topbar{margin-bottom:22px}}
@media(max-width:430px){.search-preferences>summary>span{display:none}.player-art{height:148px}}
@media(hover:none){.nav-btn:hover{background:transparent;color:var(--secondary)}.nav-btn.active:hover{color:var(--ink)}.game-chip:hover{background:var(--surface);border-color:transparent}.game-chip.active:hover{background:#292d31;border-color:#686260}.action-circle:hover{transform:none}.action-circle.yes:hover{background:var(--ink);color:#161819}}
@media(max-width:1000px){.landing-nav>span{display:none}}
@media(max-width:760px){
 .ui-language-picker>.icon{display:none}
 .ui-language-picker select{font-size:16px;min-height:44px;max-width:142px;padding-right:20px}
 .topbar{flex-wrap:wrap}.topbar-right{min-width:0;gap:10px}
 .topbar-right .demo-ribbon{display:none}
 .mobile-demo-banner{display:block;color:var(--muted);font-size:11px;margin:-8px 0 18px}
 .landing-header{gap:16px}.landing-nav{gap:12px;min-width:0}
 .landing-nav .ui-language-picker{max-width:150px}
 .action-circle{white-space:normal;height:auto;min-height:46px;line-height:1.4}
 .filter-bar .filter-button{max-width:100%}
 .game-picker{scroll-padding:16px}
 .tip-item strong,.tip-item span{overflow-wrap:anywhere}
}
@media(max-width:430px){.topbar-left{gap:6px}.topbar-right .ui-language-picker select{width:136px}.landing .brand-name{font-size:23px}.landing .brand{gap:6px}.landing .brand-mark svg{width:25px;height:25px}}
.search-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;white-space:normal}.search-toggle .icon{width:17px;height:17px}.profile-ratings ul{list-style:none;margin:0;padding:0}.profile-ratings li{padding:14px 0;border-top:1px solid var(--line);font-size:12px;overflow-wrap:anywhere}.profile-rating-game{display:flex;align-items:center;gap:8px;margin-bottom:6px;color:var(--ink)}.profile-rating-game .icon{width:16px;height:16px;flex:none;color:var(--accent)}.profile-ratings li>div{color:var(--secondary);font-variant-numeric:tabular-nums}.profile-ratings .rating-count{display:block;margin-top:3px}.match-alert-status{display:block;font-size:11px;color:var(--secondary);margin-top:10px}.match-alert-settings .secondary-btn{white-space:normal;min-height:44px}.match-alert-settings{max-width:680px}.match-alert-settings p{margin-bottom:16px}
@media(max-width:760px){.filter-bar .filter-button{flex:1 1 160px;min-width:0}.filter-bar .search-toggle{flex:1 0 100%;order:3}.filter-bar .filter-count{order:4;flex-basis:100%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;scroll-behavior:auto!important;transition:none!important}.player-card.swipe-left,.player-card.swipe-right{transform:none}button:active:not(:disabled){transform:none}}
/* Owned games and earned player milestones. */
.brand{text-decoration:none;color:var(--ink)}
.mobile-brand{display:none}
.nav-btn[aria-current="page"]{color:var(--ink)}
.brand:focus-visible{outline:2px solid var(--accent);outline-offset:6px}
.game-chip.owned .game-symbol{background:var(--game-color,var(--accent));color:#111315}
.game-chip.owned{background:color-mix(in srgb,var(--game-color) 12%,var(--surface));border-color:color-mix(in srgb,var(--game-color) 40%,var(--surface));color:color-mix(in srgb,var(--game-color) 60%,var(--ink))}
.game-chip.owned.active{background:color-mix(in srgb,var(--game-color) 25%,var(--surface));border-color:var(--game-color);color:var(--ink)}
.game-chip.unowned{color:var(--secondary)}
.game-chip.unowned .game-symbol{background:var(--raised);color:var(--secondary)}
.game-chip.unowned.active{background:var(--raised);border-color:var(--secondary);color:var(--ink)}
.empty-card .search-toggle{margin-top:20px;min-height:44px;min-width:170px}
.player-badges{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0}
.player-badge{display:inline-flex;align-items:center;gap:6px;font-size:11px;line-height:1.6;padding:5px 8px;border-radius:6px;background:var(--raised);color:var(--ink);font-variant-numeric:tabular-nums}
.player-badge .icon{width:14px;height:14px;color:var(--accent);flex-shrink:0}
.founder-badge{background:#48392d;color:#f5d9ad}
.founder-badge .icon{color:inherit}
.badge-milestones{display:grid;gap:18px;margin:20px 0}
.badge-milestones strong{display:block;font-size:12px;font-weight:600;margin-bottom:8px}
.badge-milestones>div>div{display:flex;flex-wrap:wrap;gap:7px}
.milestone{display:inline-flex;gap:5px;align-items:center;padding:7px 8px;border-radius:6px;background:var(--raised);color:var(--secondary);font-size:12px;font-variant-numeric:tabular-nums}
.milestone .icon{width:14px;height:14px}
.milestone.earned{color:#f8d6cc;background:#4c3630}
.achievements .badge-note{margin-bottom:0}
.how-page{max-width:1240px;margin:auto;padding:0 32px 48px}
.how-content{max-width:1120px;margin:0 auto;padding:24px 0 48px}
.how-content .section-top{margin-bottom:40px}
.how-steps{display:grid;gap:64px}
.how-step{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:center;gap:40px}
.how-copy{min-width:0}
.how-copy h2,.how-start h2{font-size:26px;line-height:1.3;letter-spacing:-.5px;font-weight:600;margin:0 0 16px}
.how-copy p{font-size:14px;line-height:1.8;color:var(--secondary);margin:0 0 16px;max-width:50ch}
.how-copy a{display:inline-flex;align-items:center;gap:8px;font-size:14px;min-height:44px;text-decoration:underline;text-underline-offset:4px}
.how-step figure{margin:0;min-width:0}
.how-step img{display:block;width:100%;height:auto;border-radius:12px;background:var(--surface)}
.how-step figcaption{font-size:12px;color:var(--secondary);margin-top:10px}
.how-start{display:flex;justify-content:space-between;align-items:center;gap:24px;background:var(--surface);padding:32px;margin-top:64px;border-radius:14px}
.how-start h2{margin:0}
@media(max-width:760px){.how-page{padding:0 20px 32px}.how-content{padding-top:16px}.how-steps{gap:40px}.how-step{grid-template-columns:1fr;gap:20px}.how-copy h2,.how-start h2{font-size:23px}.how-start{flex-direction:column;align-items:flex-start;padding:24px;margin-top:40px}.how-page .landing-header{height:88px;gap:12px}.how-page .landing-nav{gap:12px}}
@media(max-width:760px){.sidebar-menu{grid-template-columns:repeat(4,minmax(0,1fr))}.topbar .mobile-brand{display:block}.topbar .brand-name,.topbar-left{display:none}.nav-btn{text-align:center}.landing-nav .landing-about{display:inline-flex}.landing-header .landing-nav>span{display:none}}
@media(max-width:480px){.landing-header .brand-name{display:none}.landing-header .landing-nav{gap:12px}}
