:root{--bg: #0a0a0b;--bg-2: #111113;--surface: #161618;--line: #2a2a2e;--line-strong: #3a3a40;--text: #f1eee8;--muted: #8d8b86;--accent: #3b6cff;--accent-ink: #ffffff;--ok: #3ddc84;--ko: #ff4d4d;--display: "Big Shoulders Display", "Arial Narrow", sans-serif;--body: "Archivo", system-ui, sans-serif;--mono: "JetBrains Mono", ui-monospace, monospace;--wrap: 1200px;--gutter: clamp(1rem, 4vw, 2.5rem)}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--text);font-family:var(--body);font-size:16px;line-height:1.6;min-height:100vh;display:flex;flex-direction:column;-webkit-font-smoothing:antialiased}#root{display:flex;flex-direction:column;flex:1}main{flex:1}a{color:inherit}::selection{background:var(--accent);color:var(--accent-ink)}h1,h2,h3{font-family:var(--display);font-weight:800;text-transform:uppercase;line-height:.95;letter-spacing:.005em;margin:0 0 .5em}h1{font-size:clamp(3rem,9vw,7.5rem)}h2{font-size:clamp(2.2rem,5vw,3.8rem)}h3{font-size:1.6rem}p{margin:0 0 1em}.wrap{max-width:var(--wrap);margin:0 auto;padding-left:var(--gutter);padding-right:var(--gutter)}.muted{color:var(--muted)}.lead{font-size:1.15rem;color:var(--muted);max-width:34em}.lead strong{color:var(--text);font-weight:600}.text-center{text-align:center}.label{font-family:var(--mono);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6em;padding:.85em 1.4em;border:1px solid var(--accent);border-radius:2px;background:var(--accent);color:var(--accent-ink);font-family:var(--body);font-weight:600;font-size:.95rem;text-decoration:none;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.btn:hover{background:transparent;color:var(--text)}.btn:disabled{opacity:.5;cursor:default}.btn:disabled:hover{background:var(--accent);color:var(--accent-ink)}.btn .arrow{transition:transform .15s}.btn:hover .arrow{transform:translate(3px)}.btn-ghost{background:transparent;border-color:var(--line-strong);color:var(--text)}.btn-ghost:hover{border-color:var(--text)}.btn-sm{padding:.5em 1em;font-size:.85rem}.btn-block{width:100%}.link-btn{background:none;border:0;padding:0;color:var(--text);font:inherit;font-family:var(--mono);font-size:.8rem;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.link-btn:hover{color:var(--accent)}.nav{position:sticky;top:0;z-index:10;background:var(--bg);border-bottom:1px solid var(--line)}.nav-inner{display:flex;align-items:center;justify-content:space-between;height:64px}.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;font-family:var(--display);font-weight:800;font-size:1.5rem;text-transform:uppercase;letter-spacing:.02em}.brand img{display:block}.brand small{font-family:var(--mono);font-size:.7rem;font-weight:400;color:var(--muted);letter-spacing:.05em}.nav-links{display:flex;align-items:center;gap:2rem}.nav-links a{text-decoration:none;color:var(--muted);font-size:.92rem;font-weight:500}.nav-links a:not(.btn):hover,.nav-links a.active:not(.btn){color:var(--text)}.nav-links a.btn{color:var(--accent-ink)}.nav-links a.btn:hover{color:var(--text)}.nav-toggle{display:none;background:none;border:0;cursor:pointer;padding:.5rem;margin-right:-.5rem}.nav-toggle span{display:block;width:22px;height:2px;background:var(--text);margin:5px 0;transition:transform .2s,opacity .2s}.nav-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}@media (max-width: 760px){.nav-toggle{display:block}.nav-links{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:var(--bg);border-bottom:1px solid var(--line);display:none;padding:0 var(--gutter) 1.2rem}.nav-links.open{display:flex}.nav-links a:not(.btn){padding:1rem 0;border-bottom:1px solid var(--line);font-family:var(--display);font-weight:800;font-size:1.6rem;text-transform:uppercase;color:var(--text)}.nav-links a.btn{margin-top:1.2rem}}.hero{border-bottom:1px solid var(--line)}.hero-meta{display:flex;flex-wrap:wrap;gap:.4rem 1.6rem;padding-top:1.2rem;padding-bottom:1.2rem;border-bottom:1px solid var(--line)}.hero-meta span:before{content:"/ ";color:var(--accent)}.hero-inner{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:4rem;align-items:end;padding-top:clamp(3rem,8vw,6rem);padding-bottom:clamp(3rem,6vw,5rem)}.hero h1{margin-bottom:.35em}.hero h1 .line{display:block}.hero h1 .accent{color:var(--accent)}.hero h1 .h1-sub{display:block;margin-top:1.2rem;font-family:var(--mono);font-size:.8rem;font-weight:500;letter-spacing:.08em;line-height:1.4;color:var(--muted)}.hero-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:2rem}@media (max-width: 900px){.hero-inner{grid-template-columns:1fr;gap:3rem}}.status{border:1px solid var(--line-strong);background:var(--bg-2);font-family:var(--mono)}.status-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 1.1rem;border-bottom:1px solid var(--line);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.status-state{display:flex;align-items:center;gap:.55rem}.dot{width:8px;height:8px;background:var(--muted);flex:none}.dot.on{background:var(--ok);animation:blink 2s steps(1) infinite}.dot.off{background:var(--ko)}.dot.loading{animation:blink .6s steps(1) infinite}@keyframes blink{50%{opacity:.25}}.status-body{padding:1.4rem 1.1rem 1.1rem}.status-count{display:flex;align-items:baseline;gap:.6rem;margin-bottom:1rem}.status-count strong{font-family:var(--display);font-weight:900;font-size:5rem;line-height:.8;font-variant-numeric:tabular-nums}.status-count span{color:var(--muted);font-size:.85rem}.slots{display:grid;gap:3px;height:22px}.slots i{background:var(--line)}.slots i.on{background:var(--accent)}.status-foot{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:.8rem;font-size:.75rem;color:var(--muted)}.player-list{list-style:none;padding:0;margin:1rem 0 0;max-height:220px;overflow-y:auto;border-top:1px solid var(--line);font-size:.82rem}.player-list li{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px dashed var(--line)}.ping{color:var(--muted)}.status .btn{border-radius:0;width:100%;border-width:1px 0 0;font-family:var(--body)}.section{padding-top:clamp(4rem,9vw,7rem);padding-bottom:clamp(4rem,9vw,7rem)}.section.narrow{max-width:760px}.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:4rem}.split-head{position:sticky;top:100px;align-self:start}.split-head p{max-width:22em}@media (max-width: 900px){.split{grid-template-columns:1fr;gap:2rem}.split-head{position:static}}.features{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.feature{display:grid;grid-template-columns:3.5rem minmax(0,1fr);gap:0 1.5rem;padding:1.8rem 0;border-bottom:1px solid var(--line)}.feature-num{font-family:var(--mono);font-size:.8rem;color:var(--muted);padding-top:.35rem;transition:color .15s}.feature h3{margin-bottom:.3em;transition:color .15s}.feature p{color:var(--muted);margin:0;max-width:40em}.feature:hover .feature-num,.feature:hover h3{color:var(--accent)}.faq{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item summary{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.5rem 0;cursor:pointer;list-style:none}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";font-family:var(--mono);font-size:1.2rem;color:var(--accent)}.faq-item[open] summary:after{content:"−"}.faq-item summary h3{margin:0;font-size:1.35rem;transition:color .15s}.faq-item summary:hover h3{color:var(--accent)}.faq-item p{color:var(--muted);max-width:40em;margin:0;padding-bottom:1.5rem}.band{background:var(--accent);color:var(--accent-ink)}.band-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2rem;align-items:end;padding-top:clamp(3.5rem,8vw,6rem);padding-bottom:clamp(3.5rem,8vw,6rem)}.band h2{font-size:clamp(3rem,8vw,6.5rem);margin-bottom:.2em}.band p{margin:0;max-width:32em;opacity:.85}.band .btn{background:var(--bg);border-color:var(--bg);color:var(--text);font-family:var(--mono);font-weight:500}.band .btn:hover{background:transparent;border-color:var(--accent-ink);color:var(--accent-ink)}@media (max-width: 760px){.band-inner{grid-template-columns:1fr}}.page{padding:clamp(3rem,8vw,5rem) 0}.page.center{display:flex;align-items:center;justify-content:center;min-height:65vh;padding-left:var(--gutter);padding-right:var(--gutter)}.panel{width:100%;max-width:440px;border:1px solid var(--line-strong);background:var(--bg-2)}.panel-head{padding:1.6rem 1.6rem 0}.panel-head h1{font-size:3rem;margin-bottom:.2em}.panel-body{padding:1.6rem}.tabs{display:flex;border-bottom:1px solid var(--line)}.tabs button{flex:1;padding:1rem;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;background:none;color:var(--muted);cursor:pointer;font-family:var(--display);font-weight:800;font-size:1.3rem;text-transform:uppercase;letter-spacing:.02em}.tabs button:hover{color:var(--text)}.tabs button.active{color:var(--text);border-bottom-color:var(--accent)}.field{display:block;margin-bottom:1.2rem}.field .label{display:block;margin-bottom:.45rem}.field input{display:block;width:100%;padding:.8rem .9rem;border-radius:0;background:var(--bg);border:1px solid var(--line-strong);color:var(--text);font:inherit;transition:border-color .15s}.field input:hover{border-color:var(--muted)}.field input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.notice{padding:.8rem 1rem;font-size:.9rem;border-left:3px solid;margin-bottom:1.2rem}.notice.error{border-color:var(--ko);background:#ff4d4d14;color:#ff9a9a}.notice.ok{border-color:var(--ok);background:#3ddc8414;color:#8ef0b8}.box{border:1px solid var(--line);padding:1.6rem;margin:2rem 0}.box h3{font-size:1.4rem}.big-code{font-family:var(--display);font-weight:900;line-height:.8;font-size:clamp(7rem,25vw,16rem);color:var(--accent);margin-bottom:.1em}.footer{border-top:1px solid var(--line)}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:1rem 2rem;flex-wrap:wrap;padding-top:2rem;padding-bottom:2rem}.footer-brand{font-family:var(--display);font-weight:800;font-size:1.3rem;text-transform:uppercase}.footer-links{display:flex;gap:1.5rem}.footer-links a{text-decoration:none;color:var(--muted);font-size:.9rem}.footer-links a:hover{color:var(--text)}.footer-legal{width:100%;margin:0;padding-top:1.2rem;border-top:1px solid var(--line)}.admin-head{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;padding-bottom:1.5rem;margin-bottom:1.5rem;border-bottom:1px solid var(--line)}.admin-head h2{margin:.15em 0 .1em}.admin-role{color:var(--accent);margin:0}.admin-tabs{max-width:360px;margin-bottom:1.5rem}.admin-actions{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:flex-end}.sanctions h3{margin:2.5rem 0 1rem}.sanctions .admin-head+h3{margin-top:0}.sanction-num{font-family:var(--mono);font-size:.8rem;font-weight:400;color:var(--accent);vertical-align:middle;margin-right:.4rem}.sanction-table th:first-child,.sanction-table td:first-child{width:40%}.sanction-table td:last-child{color:#ff9a9a}.filters{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.6rem;border:1px solid var(--line-strong);background:var(--bg-2);padding:1rem;margin-bottom:1rem}.filters input,.filters select,.table-wrap select{width:100%;padding:.6rem .7rem;border-radius:0;background:var(--bg);border:1px solid var(--line-strong);color:var(--text);font:inherit;font-size:.88rem}.filters input:focus,.filters select:focus,.table-wrap select:focus{outline:none;border-color:var(--accent)}.f-search{grid-column:span 2}.f-date{display:flex;align-items:center;gap:.5rem;font-family:var(--mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.f-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;align-items:center;gap:.6rem;flex-wrap:wrap;padding-top:.4rem;border-top:1px solid var(--line)}.f-live{display:flex;align-items:center;gap:.5rem;margin-right:auto;font-family:var(--mono);font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);cursor:pointer}.f-live input{width:auto;accent-color:var(--accent)}@media (max-width: 640px){.f-search{grid-column:auto}}.table-wrap{overflow-x:auto;border:1px solid var(--line-strong);background:var(--bg-2)}.logs-table{width:100%;border-collapse:collapse;font-size:.88rem}.logs-table th{text-align:left;padding:.75rem .9rem;border-bottom:1px solid var(--line-strong);white-space:nowrap;font-family:var(--mono);font-size:.7rem;font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.logs-table td{padding:.65rem .9rem;border-bottom:1px solid var(--line);vertical-align:top}.logs-table tbody tr:not(.details):not(.static){cursor:pointer}.logs-table tbody tr:not(.details):not(.static):hover,.logs-table tr.open{background:var(--surface)}.logs-table .empty{text-align:center;padding:2.5rem}.nowrap{white-space:nowrap}.logs-table td.nowrap{font-family:var(--mono);font-size:.78rem}.who{font-weight:600}.tags{display:flex;gap:.3rem;flex-wrap:wrap;margin-top:.3rem}.tag{font-family:var(--mono);font-size:.66rem;text-transform:uppercase;letter-spacing:.05em;padding:.1rem .4rem;border:1px solid var(--line-strong);color:var(--muted)}.tag.staff{color:#ffcf5c;border-color:#ffcf5c66}.tag.gang{color:#ff8a8a;border-color:#ff8a8a66}.badge{display:inline-block;font-family:var(--mono);font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;padding:.2rem .5rem;border-left:3px solid var(--accent);background:#3b6cff1a;white-space:nowrap}.badge.cat-connexion{border-color:var(--ok);background:#3ddc8414}.badge.cat-mort,.badge.cat-illegal,.badge.cat-blackmarket{border-color:var(--ko);background:#ff4d4d14}.badge.cat-staff{border-color:#ffcf5c;background:#ffcf5c14}.badge.cat-argent,.badge.cat-boutique,.badge.cat-casino{border-color:#a77bff;background:#a77bff1a}.details td{background:var(--bg)}.details dl{display:grid;grid-template-columns:max-content 1fr;gap:.35rem 1.2rem;margin:0 0 .9rem;font-size:.85rem}.details dt{font-family:var(--mono);font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding-top:.1rem}.details dd{margin:0;word-break:break-all}.details pre{margin:0;padding:.9rem;background:var(--bg-2);border:1px solid var(--line);font-family:var(--mono);font-size:.78rem;overflow-x:auto;white-space:pre-wrap;word-break:break-all}.pager{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;font-family:var(--mono);font-size:.75rem;text-transform:uppercase;letter-spacing:.06em}.split-head .btn{margin-top:.5rem}.ranking{border-top:1px solid var(--line)}.ranking ol{list-style:none;margin:0;padding:0}.ranking li{display:grid;grid-template-columns:3.5rem minmax(0,1fr) auto;gap:0 1.5rem;align-items:baseline;padding:1.1rem 0;border-bottom:1px solid var(--line)}.rank-num{font-family:var(--mono);font-size:.8rem;color:var(--muted)}.rank-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rank-votes{font-family:var(--mono);font-size:.85rem;color:var(--muted);font-variant-numeric:tabular-nums}.ranking li:first-child .rank-num,.ranking li:first-child .rank-name{color:var(--accent)}.ranking li:first-child .rank-name{font-family:var(--display);font-weight:800;font-size:1.6rem;text-transform:uppercase;line-height:1.1}.ranking .empty{padding:1.8rem 0;border-bottom:1px solid var(--line);margin:0}.ranking-foot{margin-top:.8rem}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
