:root{--bg-base:#050508;--bg-elevated:#0c0c12;--bg-panel:#101018;--bg-panel-solid:#14141e;--bg-hover:#00fbff0f;--border:#00fbff24;--border-strong:#ff009959;--accent-cyan:#00fbff;--accent-cyan-dim:#00fbff1f;--accent-pink:#f09;--accent-pink-dim:#ff009924;--accent-sun:#fff200;--accent-sun-dim:#fff2001f;--text-primary:#f4f7ff;--text-muted:#9aa3b8;--text-dim:#6b7388;--danger:#ff4d7a;--success:#3dba8c;--radius:6px;--radius-sm:4px;--font-display:"IBM Plex Sans", "Segoe UI", sans-serif;--font-ui:"IBM Plex Sans", "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace;--shell-width:1180px;--glow-cyan:0 0 18px #00fbff59;--glow-pink:0 0 18px #ff00994d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;overflow-x:clip}html,body,#root{min-height:100dvh}body{font-family:var(--font-ui);color:var(--text-primary);background:var(--bg-base);-webkit-font-smoothing:antialiased;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);margin:0;font-size:15px;line-height:1.45;overflow-x:clip}body.nav-open{overflow:hidden}button,input,select,textarea{font:inherit;color:inherit;max-width:100%}input,select,textarea{font-size:16px}img,svg,video{max-width:100%;height:auto}a{color:var(--accent-cyan);text-decoration:none}a:hover{text-decoration:underline}.app-bg{z-index:-1;background:radial-gradient(70% 45% at 8% -5%,#00fbff1f,#0000 55%),radial-gradient(55% 40% at 92% 0,#ff00991a,#0000 50%),radial-gradient(40% 30% at 50% 100%,#fff2000a,#0000 60%),linear-gradient(#0a0a10 0%,#050508 100%);position:fixed;inset:0}.shell{flex-direction:column;min-height:100vh;display:flex}.shell-header{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:40;padding-top:env(safe-area-inset-top);background:#050508eb;position:sticky;top:0}.shell-header-inner{max-width:var(--shell-width);align-items:center;gap:1rem;margin:0 auto;padding:.85rem 1.25rem;display:flex;position:relative}.brand{font-family:var(--font-display);letter-spacing:.02em;color:var(--text-primary);white-space:nowrap;flex-shrink:1;align-items:center;gap:.65rem;min-width:0;font-size:1.05rem;font-weight:700;text-decoration:none;display:inline-flex}.brand:hover{text-decoration:none}.brand-logo{object-fit:contain;filter:drop-shadow(0 0 8px #00fbff59);flex-shrink:0;display:block}.brand-text em{color:var(--accent-pink);text-shadow:0 0 12px #ff009973;font-style:normal}.brand-text{color:var(--text-primary)}.nav-toggle{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-panel-solid);cursor:pointer;z-index:52;touch-action:manipulation;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;margin-left:auto;padding:0;display:none}.nav-toggle span{background:var(--text-primary);border-radius:1px;width:18px;height:2px;transition:transform .2s,opacity .2s;display:block}.nav-toggle.is-open span:first-child{transform:translateY(7px)rotate(45deg)}.nav-toggle.is-open span:nth-child(2){opacity:0}.nav-toggle.is-open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.nav-backdrop{display:none}.nav{flex-wrap:wrap;flex:1;align-items:center;gap:.35rem;min-width:0;display:flex}.nav a{color:var(--text-muted);border-radius:var(--radius-sm);align-items:center;min-height:40px;padding:.45rem .65rem;text-decoration:none;display:inline-flex}.nav a:hover,.nav a.active{color:var(--text-primary);background:var(--bg-hover);text-decoration:none}.nav-user-mobile{display:none}.shell-user{flex-shrink:0;align-items:center;gap:.65rem;margin-left:auto;display:flex}.shell-user img{border-radius:50%;flex-shrink:0;width:32px;height:32px}.shell-user .btn{min-height:40px}.shell-main{max-width:var(--shell-width);padding:1.5rem 1.25rem calc(3rem + env(safe-area-inset-bottom));flex:1;width:100%;min-width:0;margin:0 auto}.page-title{margin:0 0 .35rem;font-size:1.5rem;font-weight:600}.page-sub{color:var(--text-muted);margin:0 0 1.5rem}.btn{border:1px solid var(--border-strong);background:var(--bg-panel-solid);color:var(--text-primary);border-radius:var(--radius);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;gap:.4rem;min-height:44px;padding:.55rem .95rem;text-decoration:none;display:inline-flex}.btn:hover{background:var(--bg-hover);text-decoration:none}.btn-primary{background:var(--accent-cyan-dim);color:var(--accent-cyan);box-shadow:var(--glow-cyan);border-color:#00fbff80}.btn-danger{color:var(--danger);border-color:#e45d7a73}.btn-ghost{background:0 0}.btn:disabled{opacity:.5;cursor:not-allowed}.panel{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.15rem}.form-grid{gap:.9rem;display:grid}.form-row{gap:.35rem;display:grid}.form-row label{color:var(--text-muted);font-size:.85rem}.form-row input,.form-row select,.form-row textarea{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;min-height:44px;padding:.65rem .75rem;font-size:16px}.form-row textarea{resize:vertical;min-height:120px}.form-row select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--text-muted) 50%), linear-gradient(135deg, var(--text-muted) 50%, transparent 50%);background-position:calc(100% - 16px) calc(50% - 3px),calc(100% - 11px) calc(50% - 3px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:2rem}.badge{border:1px solid var(--border);background:var(--bg-elevated);border-radius:999px;align-items:center;padding:.15rem .5rem;font-size:.75rem;font-weight:500;display:inline-flex}.muted{color:var(--text-muted)}.dim{color:var(--text-dim)}.empty-state{text-align:center;color:var(--text-muted);border:1px dashed var(--border);border-radius:var(--radius);padding:2.5rem 1rem}.loading{text-align:center;color:var(--text-muted);padding:2rem}.error-banner{color:#f5a3b4;border-radius:var(--radius);background:#e45d7a1f;border:1px solid #e45d7a59;margin-bottom:1rem;padding:.75rem 1rem}.success-banner{color:#7dd9b4;border-radius:var(--radius);background:#3dba8c1f;border:1px solid #3dba8c59;margin-bottom:1rem;padding:.75rem 1rem}.table-wrap{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;width:100%;overflow-x:auto}.table{border-collapse:collapse;width:100%;min-width:560px}.table th,.table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:.65rem .5rem}.table th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.8rem;font-weight:500}.filters{flex-wrap:wrap;gap:.65rem;margin-bottom:1.25rem;display:flex}.filters input,.filters select{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);flex:140px;min-width:0;min-height:44px;padding:.55rem .7rem;font-size:16px}.directory-header{justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.15rem;display:flex}.directory-header .page-title{margin-bottom:.25rem}.directory-count{white-space:nowrap;font-size:.9rem}.directory-toolbar{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);gap:.85rem;margin-bottom:1.35rem;padding:.95rem 1rem;display:grid}.directory-search input{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;min-height:44px;padding:.7rem .85rem;font-size:16px}.directory-filter-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:.65rem;display:grid}.filter-field{gap:.3rem;min-width:0;display:grid}.filter-field span{letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim);font-size:.72rem}.filter-field select{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);min-height:44px;padding:.55rem .65rem;font-size:16px}.directory-toolbar-actions{justify-content:flex-end;display:flex}.directory-pagination{align-items:center;gap:8px;margin-top:1.25rem;display:flex}.member-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.85rem;display:grid}.member-card{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);color:inherit;gap:.85rem;padding:.9rem;text-decoration:none;transition:border-color .15s,background .15s;display:flex}.member-card:hover{border-color:var(--border-strong);background:var(--bg-hover);text-decoration:none}.member-card img{border-radius:50%;width:48px;height:48px}.profile-hero{flex-wrap:wrap;align-items:flex-start;gap:1.25rem;margin-bottom:1.5rem;display:flex}.profile-hero img{border:2px solid var(--border-strong);border-radius:50%;width:88px;height:88px}.timeline{gap:.75rem;display:grid}.record-item{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-panel);padding:.9rem 1rem}.record-item.restricted{opacity:.85;border-style:dashed}.record-item.overturned{opacity:.65;text-decoration:line-through}.record-item.overturned .record-meta{text-decoration:none}.record-meta{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.45rem;display:flex}.tabs{flex-wrap:wrap;gap:.35rem;margin-bottom:1.25rem;display:flex}.tabs button,.tabs a{color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;touch-action:manipulation;background:0 0;border:1px solid #0000;align-items:center;min-height:44px;padding:.55rem .8rem;text-decoration:none;display:inline-flex}.tabs button.active,.tabs a.active{color:var(--text-primary);border-color:var(--border);background:var(--bg-panel);text-decoration:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.tabs-mobile-select{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);width:100%;min-height:48px;color:var(--text-primary);margin-bottom:1.25rem;padding:.7rem .85rem;font-size:16px;display:none}.admin-inline-grid input,.admin-inline-grid select,.admin-grid-4 input,.admin-grid-4 select,.admin-grid-3 input,.tier-row-grid input,.position-row-grid input,.position-row-grid select{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;min-height:44px;padding:.55rem .65rem;font-size:16px}.admin-grid-4,.admin-grid-3,.admin-inline-grid{gap:.65rem;display:grid}.admin-grid-4{grid-template-columns:1fr 1fr 1fr auto}.admin-grid-3{grid-template-columns:1fr 1fr 1fr}.admin-inline-grid{grid-template-columns:1.2fr .9fr 1.6fr auto auto}.position-row-grid{grid-template-columns:28px 36px 1.2fr 1.8fr auto auto;align-items:center;gap:.65rem;display:grid}.tier-row-grid{grid-template-columns:.6fr 1.2fr 1fr 1fr;gap:.65rem;display:grid}.suggest-list{-webkit-overflow-scrolling:touch;max-height:min(50vh,320px);margin-top:.4rem;padding:.25rem;overflow-y:auto}.suggest-list .btn{text-align:left;white-space:normal;border-radius:var(--radius-sm);border:0;justify-content:flex-start;width:100%;height:auto;min-height:48px}.stack-actions{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}@media (width<=480px){.stack-actions{flex-direction:column}.stack-actions .btn{width:100%}}.login-page{place-items:center;min-height:100vh;padding:1.5rem;display:grid}.login-card{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);text-align:center;width:min(420px,100%);box-shadow:var(--glow-cyan);padding:2rem 1.75rem}.login-logo{object-fit:contain;filter:drop-shadow(0 0 16px #00fbff66);width:120px;height:120px;margin:0 auto 1rem;display:block}.login-card h1{margin:0 0 .35rem;font-size:1.6rem}.login-card p{color:var(--text-muted);margin:0 0 1.5rem}.feed-list{gap:.5rem;display:grid}.feed-item{border-left:2px solid var(--accent-cyan);background:var(--bg-elevated);padding:.55rem .7rem;font-size:.9rem}.toggle-grid{gap:.35rem;display:grid}.toggle-grid label{align-items:center;gap:.5rem;font-size:.85rem;display:flex}.position-drag-row{cursor:grab;transition:border-color .15s,opacity .15s,transform .15s}.position-drag-row.dragging{opacity:.55;cursor:grabbing}.position-drag-row.drag-over{border-color:var(--accent-cyan);box-shadow:inset 0 0 0 1px #00fbff59}.drag-handle{color:var(--text-dim);letter-spacing:-2px;-webkit-user-select:none;user-select:none;text-align:center;font-size:.95rem}@media (width<=980px) and (width>=861px){.directory-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=860px){.nav-toggle{display:inline-flex}.nav-backdrop{z-index:45;cursor:pointer;background:#0000008c;border:0;margin:0;padding:0;display:block;position:fixed;inset:0}.site-nav{background:var(--bg-panel-solid);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 16px 40px #0000008c, var(--glow-cyan);z-index:50;-webkit-overflow-scrolling:touch;flex-flow:column;flex:none;gap:.2rem;max-height:min(70vh,520px);padding:.65rem;display:none;position:absolute;top:calc(100% + .35rem);left:.75rem;right:.75rem;overflow-y:auto}.site-nav.is-open{display:flex}.site-nav a{width:100%;min-height:48px;padding:.75rem .85rem;font-size:1rem}.nav-user-mobile{border-top:1px solid var(--border);margin-top:.5rem;padding-top:.65rem;display:block}.nav-user-mobile .shell-user{flex-wrap:wrap;width:100%;margin-left:0}.shell-user-desktop{display:none}.brand-text{font-size:.92rem}.shell-header-inner{flex-wrap:nowrap;padding:.65rem .85rem}.shell-main{padding:1rem .85rem calc(2.25rem + env(safe-area-inset-bottom))}.page-title{font-size:1.3rem}.profile-hero{gap:.9rem}.directory-header{flex-direction:column;align-items:flex-start}.directory-filter-grid{grid-template-columns:1fr 1fr}.directory-toolbar-actions{justify-content:stretch}.directory-toolbar-actions .btn{width:100%}.directory-pagination{flex-wrap:wrap}.member-grid{grid-template-columns:1fr}.tabs.tabs-desktop{display:none}.tabs-mobile-select{display:block}.admin-grid-4,.admin-grid-3,.admin-inline-grid,.position-row-grid,.tier-row-grid{grid-template-columns:1fr}.position-drag-row .drag-handle{justify-self:start}.panel{padding:.85rem}.login-card{padding:1.5rem 1.15rem}.shell-user-name{text-overflow:ellipsis;white-space:nowrap;max-width:140px;overflow:hidden}}@media (width<=480px){.brand-text{display:none}.directory-filter-grid{grid-template-columns:1fr}.record-meta{gap:.35rem}.btn{width:auto}.filters .btn,.directory-pagination .btn{flex:auto}}
