@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Space+Grotesk:wght@500;600;700&display=swap');

:root{
  --bg:#e9e4dc;
  --surface:#f7f4ef;
  --surface-2:#efebe5;
  --ink:#171a1d;
  --muted:#73706b;
  --line:rgba(23,26,29,.11);
  --line-strong:rgba(23,26,29,.19);
  --red:#a3272f;
  --red-dark:#761a21;
  --green:#496c58;
  --amber:#967137;
  --blue:#526b7d;
  --shadow:0 20px 60px rgba(45,38,31,.10);
  --sidebar:220px;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:Inter,system-ui,sans-serif;background:var(--bg);color:var(--ink)}
body{background:
  radial-gradient(circle at 74% -10%,rgba(163,39,47,.08),transparent 32rem),
  linear-gradient(180deg,#ece8e1,#e7e1d8)}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
.app-shell{min-height:100vh}
.sidebar{
  position:fixed;z-index:20;inset:0 auto 0 0;width:var(--sidebar);
  padding:20px 14px;display:flex;flex-direction:column;
  color:#e8e2d9;background:#151719;border-right:1px solid rgba(255,255,255,.07);
}
.brand{display:flex;align-items:center;gap:12px;padding:4px 5px 22px;border-bottom:1px solid rgba(255,255,255,.07)}
.brand-mark{
  width:46px;height:46px;display:grid;place-items:center;border-radius:14px;
  background:linear-gradient(145deg,#b33239,#7b1d24);font-family:"Space Grotesk";font-weight:800;font-size:19px;
  box-shadow:0 10px 25px rgba(163,39,47,.28)
}
.brand small{display:block;color:#8e918e;font-size:9px;letter-spacing:.14em;font-weight:800}
.brand strong{display:block;margin-top:4px;font-size:12px;letter-spacing:.04em}
.nav{display:grid;gap:5px;padding-top:18px}
.nav-item{
  border:1px solid transparent;border-radius:12px;background:transparent;color:#9da09d;
  min-height:46px;padding:0 10px;display:flex;align-items:center;gap:11px;text-align:left
}
.nav-item span{width:29px;height:29px;display:grid;place-items:center;border-radius:8px;background:rgba(255,255,255,.035);font-weight:700}
.nav-item b{font-size:12px}
.nav-item:hover{background:rgba(255,255,255,.035);color:#fff}
.nav-item.active{background:rgba(163,39,47,.15);border-color:rgba(184,61,68,.22);color:#fff}
.nav-item.active span{background:rgba(184,61,68,.18);color:#ffbec2}
.sidebar-foot{margin-top:auto;padding:15px 8px 2px;border-top:1px solid rgba(255,255,255,.07);display:flex;gap:9px;align-items:center}
.sidebar-foot .status-dot{width:7px;height:7px;border-radius:50%;background:#77b28b;box-shadow:0 0 10px rgba(119,178,139,.6)}
.sidebar-foot small{display:block;color:#6f7571;font-size:8px;letter-spacing:.12em}
.sidebar-foot strong{font-size:10px}
.workspace{margin-left:var(--sidebar);min-width:0}
.topbar{
  position:sticky;top:0;z-index:15;height:74px;padding:0 28px;display:flex;align-items:center;justify-content:space-between;
  background:rgba(237,232,224,.86);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)
}
.topbar-title small{display:block;color:#8b8680;font-size:9px;letter-spacing:.12em;font-weight:800}
.topbar-title strong{display:block;margin-top:3px;font-size:14px}
.topbar-actions{display:flex;align-items:center;gap:9px}
.date-chip{padding:8px 11px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.32)}
.date-chip small{display:block;color:#8c8780;font-size:8px;letter-spacing:.1em}
.date-chip strong{display:block;margin-top:2px;font-size:11px}
main{padding:30px;max-width:1680px;margin:0 auto}
.view{display:none}
.view.active{display:block;animation:enter .28s ease both}
@keyframes enter{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
.hero{
  min-height:330px;padding:38px;border:1px solid var(--line);border-radius:26px;display:grid;
  grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);align-items:center;gap:30px;overflow:hidden;position:relative;
  background:
    radial-gradient(circle at 85% 40%,rgba(163,39,47,.14),transparent 25rem),
    linear-gradient(135deg,#f8f5f0,#efebe4);
  box-shadow:var(--shadow)
}
.hero::after{content:"木";position:absolute;right:4%;bottom:-44px;font-family:"Space Grotesk";font-size:15rem;font-weight:800;color:rgba(23,26,29,.035)}
.eyebrow{font-size:10px;font-weight:800;letter-spacing:.14em;color:var(--red)}
.hero h1{font-family:"Space Grotesk";font-size:clamp(44px,5vw,78px);line-height:.93;letter-spacing:-.055em;margin:12px 0 18px}
.hero h1 em{font-style:normal;color:var(--red)}
.hero p{max-width:760px;color:#67635e;font-size:14px;line-height:1.75;margin:0}
.hero-actions{display:flex;gap:9px;margin-top:24px}
.primary-button,.secondary-button,.ghost-button{
  min-height:40px;padding:0 14px;border-radius:10px;font-weight:700;font-size:12px;transition:.16s ease
}
.primary-button{border:1px solid var(--red-dark);background:var(--red);color:#fff;box-shadow:0 8px 20px rgba(163,39,47,.15)}
.primary-button:hover{background:#b62f37;transform:translateY(-1px)}
.secondary-button{border:1px solid var(--line-strong);background:rgba(255,255,255,.48);color:var(--ink)}
.secondary-button:hover,.ghost-button:hover{background:#fff}
.ghost-button{border:1px solid var(--line);background:rgba(255,255,255,.3);color:var(--ink)}
.hero-sigil{position:relative;z-index:1;justify-self:center;width:220px;height:220px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.28)}
.hero-sigil::before,.hero-sigil::after{content:"";position:absolute;border-radius:50%;border:1px solid var(--line)}
.hero-sigil::before{inset:17px}.hero-sigil::after{inset:40px}
.hero-sigil span{font-family:"Space Grotesk";font-size:64px;font-weight:800;color:var(--red)}
.hero-sigil small{position:absolute;bottom:38px;font-size:8px;letter-spacing:.16em;font-weight:800;color:#8a837b}
.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin:13px 0}
.kpi{
  min-height:125px;padding:18px;border:1px solid var(--line);border-radius:18px;background:rgba(247,244,239,.86);box-shadow:0 10px 30px rgba(45,38,31,.05)
}
.kpi small{font-size:9px;letter-spacing:.11em;color:#8b857f;font-weight:800}
.kpi strong{display:block;margin-top:17px;font-family:"Space Grotesk";font-size:34px}
.kpi span{display:block;margin-top:5px;color:#7b756f;font-size:11px}
.dashboard-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:12px}
.panel{border:1px solid var(--line);border-radius:20px;background:rgba(247,244,239,.84);box-shadow:0 12px 36px rgba(45,38,31,.055);overflow:hidden}
.panel-head{min-height:68px;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
.panel-head small{font-size:9px;letter-spacing:.1em;color:#8e8882;font-weight:800}
.panel-head h2{margin:4px 0 0;font-family:"Space Grotesk";font-size:17px}
.text-button{border:0;background:transparent;color:var(--red);font-size:11px;font-weight:700}
.schedule-list,.ranking-list{padding:7px}
.schedule-row,.rank-row{
  min-height:65px;padding:10px 11px;border-bottom:1px solid rgba(23,26,29,.07);display:grid;align-items:center;gap:10px
}
.schedule-row{grid-template-columns:54px minmax(0,1fr) auto}
.schedule-row:last-child,.rank-row:last-child{border-bottom:0}
.date-block{height:45px;border-radius:10px;background:#ede7df;display:grid;place-items:center;text-align:center}
.date-block b{font-family:"Space Grotesk";font-size:15px;line-height:1}.date-block small{font-size:8px;color:#847e77}
.schedule-row strong,.rank-row strong{display:block;font-size:12px}
.schedule-row span,.rank-row span{display:block;margin-top:3px;font-size:10px;color:#807a74}
.tag{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:999px;font-size:9px;font-weight:800;background:#ece7df;color:#6d665f}
.tag.red{background:rgba(163,39,47,.09);color:var(--red)}
.tag.green{background:rgba(73,108,88,.10);color:var(--green)}
.tag.amber{background:rgba(150,113,55,.10);color:var(--amber)}
.rank-row{grid-template-columns:34px minmax(0,1fr) auto}
.rank-index{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:#ede8e0;font-family:"Space Grotesk";font-size:11px}
.score{font-family:"Space Grotesk";font-weight:700;color:var(--red)}
.tournaments-preview{margin-top:12px}.tournament-strip{padding:11px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.tournament-mini{padding:15px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.28)}
.tournament-mini small{font-size:9px;color:#8b857f}.tournament-mini h3{margin:6px 0 10px;font-size:14px}.tournament-mini span{font-size:10px;color:#7b756f}
.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:20px}
.section-number{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--red);color:white;font-family:"Space Grotesk";font-size:11px}
.page-heading small{margin-left:8px;color:#8b857f;font-size:9px;letter-spacing:.12em;font-weight:800}
.page-heading h1{margin:10px 0 0;font-family:"Space Grotesk";font-size:38px;letter-spacing:-.04em}
.filter-row{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}
.filter-chip{min-height:34px;padding:0 11px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.25);font-size:11px;color:#716c66}
.filter-chip.active{background:#1b1d1f;color:white;border-color:#1b1d1f}
.cards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
.item-card{position:relative;padding:18px;border:1px solid var(--line);border-radius:18px;background:rgba(247,244,239,.86);box-shadow:0 10px 30px rgba(45,38,31,.045);transition:.17s ease}
.item-card:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:var(--line-strong)}
.card-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.card-kicker{font-size:9px;letter-spacing:.1em;color:#8b857f;font-weight:800}
.item-card h3{font-family:"Space Grotesk";font-size:18px;margin:6px 0 8px}
.item-card p{margin:0;color:#716b65;font-size:11px;line-height:1.55}
.meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:15px}
.meta-grid div{padding:9px;border-radius:10px;background:#eee8e0}.meta-grid small{display:block;color:#8a837b;font-size:8px}.meta-grid strong{display:block;margin-top:3px;font-size:10px}
.card-actions{display:flex;justify-content:flex-end;gap:6px;margin-top:15px;padding-top:12px;border-top:1px solid var(--line)}
.icon-button{min-height:30px;padding:0 9px;border:1px solid var(--line);border-radius:8px;background:transparent;color:#79736d;font-size:10px}
.icon-button:hover{background:white}.icon-button.danger{color:var(--red)}
.member-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:8px;margin-bottom:13px}
.member-toolbar input,.member-toolbar select{
  min-height:42px;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.42);padding:0 12px;color:var(--ink);outline:0
}
.member-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.member-card{padding:17px;border:1px solid var(--line);border-radius:18px;background:rgba(247,244,239,.88);box-shadow:0 10px 30px rgba(45,38,31,.045)}
.member-head{display:flex;gap:11px;align-items:center}
.member-avatar{width:44px;height:44px;display:grid;place-items:center;border-radius:13px;background:#e6dfd6;color:var(--red);font-family:"Space Grotesk";font-weight:800}
.member-head h3{margin:0;font-size:14px}.member-head p{margin:4px 0 0;color:#817b75;font-size:10px}
.readiness{margin-top:16px}.readiness-head{display:flex;justify-content:space-between;font-size:9px;color:#7c766f}.bar{height:7px;border-radius:999px;background:#e5ded5;overflow:hidden;margin-top:6px}.bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7d242b,#b43d45)}
.stat-pills{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:12px}.stat-pills div{padding:8px;border-radius:9px;background:#eee8e0;text-align:center}.stat-pills b{display:block;font-size:12px}.stat-pills small{display:block;margin-top:2px;color:#8b857f;font-size:8px}
.stats-overview{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px}
.stats-overview article{padding:18px;border:1px solid var(--line);border-radius:17px;background:rgba(247,244,239,.86)}.stats-overview small{font-size:9px;color:#8b857f}.stats-overview strong{display:block;margin-top:9px;font-family:"Space Grotesk";font-size:28px}
.stats-table-wrap{overflow:auto}.stats-table{width:100%;border-collapse:collapse;min-width:900px}.stats-table th{padding:11px 13px;text-align:left;font-size:9px;letter-spacing:.08em;color:#8b857f;background:#eee9e2}.stats-table td{padding:12px 13px;border-top:1px solid var(--line);font-size:11px}.stats-table tbody tr:hover{background:rgba(255,255,255,.35)}
.empty{padding:34px 16px;text-align:center;color:#847e77}.empty span{display:grid;place-items:center;width:42px;height:42px;margin:0 auto 10px;border-radius:12px;background:#ebe5dd;color:#9b948d}.empty strong{display:block;color:#5f5a55;font-size:12px}.empty p{font-size:10px;margin:5px 0 0}
.modal[hidden]{display:none}.modal{position:fixed;z-index:50;inset:0;display:grid;place-items:center;padding:20px}.modal-backdrop{position:absolute;inset:0;border:0;background:rgba(20,18,16,.52);backdrop-filter:blur(7px)}.modal-card{position:relative;width:min(650px,100%);max-height:88vh;overflow:auto;border:1px solid rgba(255,255,255,.45);border-radius:22px;background:#f7f4ef;box-shadow:0 30px 100px rgba(24,19,15,.28)}.modal-card header{padding:18px 20px;display:flex;justify-content:space-between;border-bottom:1px solid var(--line)}.modal-card header small{font-size:9px;color:#8b857f;letter-spacing:.1em}.modal-card header h2{margin:5px 0 0;font-family:"Space Grotesk";font-size:22px}.close-button{border:0;background:#ece6df;width:34px;height:34px;border-radius:10px;font-size:20px}.modal-card form{padding:18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.field{display:grid;gap:5px}.field.full{grid-column:1/-1}.field span{font-size:9px;color:#7c766f;font-weight:700}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:10px;background:#fffaf4;padding:10px 11px;outline:0;color:var(--ink)}.field textarea{min-height:95px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:rgba(163,39,47,.45);box-shadow:0 0 0 3px rgba(163,39,47,.06)}.modal-card footer{display:flex;justify-content:flex-end;gap:8px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
.toast{position:fixed;z-index:80;right:22px;bottom:22px;min-width:220px;max-width:340px;padding:12px 14px;border-radius:12px;background:#191b1d;color:white;box-shadow:0 18px 50px rgba(0,0,0,.22);font-size:11px;opacity:0;transform:translateY(8px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:none}
@media(max-width:1200px){.kpi-grid,.stats-overview{grid-template-columns:repeat(2,1fr)}.cards-grid{grid-template-columns:repeat(2,1fr)}.member-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){:root{--sidebar:72px}.sidebar{padding-inline:9px}.brand div,.nav-item b,.sidebar-foot div{display:none}.brand{justify-content:center}.nav-item{width:52px;padding:0;justify-content:center}.workspace{margin-left:var(--sidebar)}.hero{grid-template-columns:1fr}.hero-sigil{display:none}.dashboard-grid{grid-template-columns:1fr}.member-grid{grid-template-columns:repeat(2,1fr)}.tournament-strip{grid-template-columns:1fr}}
@media(max-width:650px){main{padding:20px 12px}.topbar{padding:0 13px}.date-chip{display:none}.hero{padding:24px}.hero h1{font-size:43px}.kpi-grid,.stats-overview,.cards-grid,.member-grid{grid-template-columns:1fr}.member-toolbar{grid-template-columns:1fr}.page-heading{align-items:flex-start;flex-direction:column}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}}


/* Discord authentication */
.auth-gate{
  position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:24px;
  background:
    radial-gradient(circle at 70% 15%,rgba(163,39,47,.12),transparent 30rem),
    linear-gradient(145deg,#e9e3db,#dcd5cb);
}
.auth-gate[hidden]{display:none}
.auth-card{
  width:min(520px,100%);padding:36px;border:1px solid rgba(23,26,29,.12);
  border-radius:26px;background:rgba(248,245,240,.93);box-shadow:0 34px 100px rgba(43,35,29,.17);text-align:center;
}
.auth-seal{
  width:70px;height:70px;margin:0 auto 18px;display:grid;place-items:center;border-radius:22px;
  color:#fff;background:linear-gradient(145deg,#b33239,#7b1d24);font-family:"Space Grotesk";font-size:29px;font-weight:800;
  box-shadow:0 16px 34px rgba(163,39,47,.22)
}
.auth-card>small{color:#8b847d;font-size:9px;letter-spacing:.15em;font-weight:800}
.auth-card h1{margin:10px 0 12px;font-family:"Space Grotesk";font-size:34px;letter-spacing:-.04em}
.auth-card p{max-width:420px;margin:0 auto;color:#6f6963;font-size:12px;line-height:1.65}
.discord-login{
  width:100%;min-height:48px;margin-top:24px;border:1px solid #4f5fc4;border-radius:12px;
  background:#5865f2;color:white;font-weight:800;box-shadow:0 12px 28px rgba(88,101,242,.18)
}
.discord-login:hover{background:#6673f4}
.discord-login span{margin-right:7px}
.auth-status{margin-top:13px!important;color:#8b847d!important;font-size:10px!important}
.auth-user{min-height:44px;padding:4px 9px 4px 5px;display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.28)}
.auth-user[hidden]{display:none}
.auth-user-avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#ddd5ca center/cover no-repeat;color:var(--red);font-size:10px;font-weight:800}
.auth-user small{display:block;color:#8a847d;font-size:8px;font-weight:800;letter-spacing:.09em}
.auth-user strong{display:block;margin-top:2px;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}
body.is-member .admin-only{display:none!important}


/* Military approvals, ranks and admin panel */
.access-wait-gate{z-index:105}
.access-card{max-width:500px}
.access-status-pill{
  display:inline-flex;align-items:center;justify-content:center;min-height:30px;margin-top:18px;padding:0 11px;
  border-radius:999px;font-size:9px;font-weight:800;letter-spacing:.08em;
  border:1px solid rgba(150,113,55,.22);background:rgba(150,113,55,.10);color:#7f5f2f
}
.access-status-pill.denied{border-color:rgba(163,39,47,.22);background:rgba(163,39,47,.09);color:var(--red)}
.access-logout{width:100%;margin-top:12px}

.rank-directory-panel{margin-bottom:13px}
.rank-directory-count{font-size:10px;color:#837d76;font-weight:700}
.rank-directory-grid{
  padding:11px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px
}
.rank-member-card{
  min-height:68px;padding:10px 11px;display:grid;grid-template-columns:42px minmax(0,1fr) auto auto;align-items:center;gap:10px;
  border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.25)
}
.rank-member-card:hover{border-color:var(--line-strong);background:rgba(255,255,255,.42)}
.rank-avatar,.admin-user-avatar{
  width:40px;height:40px;display:grid;place-items:center;border-radius:11px;
  background:#e6dfd6 center/cover no-repeat;color:var(--red);font-size:10px;font-weight:800
}
.rank-member-card strong{display:block;font-size:12px}
.rank-member-card div span{display:block;margin-top:4px;color:#817a73;font-size:9px;font-weight:800;letter-spacing:.04em}
.rank-chevron{
  width:28px;height:28px;display:grid;place-items:center;border-radius:8px;background:#ece6de;color:#6e675f;font-size:9px
}
.rank-level-8{border-color:rgba(163,39,47,.28);background:linear-gradient(135deg,rgba(163,39,47,.08),rgba(255,255,255,.35))}
.rank-level-7,.rank-level-6{border-color:rgba(150,113,55,.22)}
.rank-level-8 .rank-chevron{background:var(--red);color:#fff}
.member-edit-button{
  min-height:30px;padding:0 9px;border:1px solid rgba(82,107,125,.18);border-radius:8px;
  background:rgba(82,107,125,.08);color:var(--blue);font-size:9px;font-weight:800
}
.member-edit-button:hover{background:#fff;border-color:rgba(82,107,125,.32)}

.admin-kpi-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px
}
.admin-kpi-grid article{
  padding:17px;border:1px solid var(--line);border-radius:16px;background:rgba(247,244,239,.86)
}
.admin-kpi-grid small{display:block;color:#89827b;font-size:9px;font-weight:800;letter-spacing:.09em}
.admin-kpi-grid strong{display:block;margin-top:8px;font-family:"Space Grotesk";font-size:28px}
.admin-access-panel{margin-bottom:12px}
.admin-access-head{gap:16px;flex-wrap:wrap}
.admin-filter-row{margin:0;margin-left:auto}
.admin-access-list{padding:8px}
.admin-access-row{
  min-height:84px;padding:11px;display:grid;grid-template-columns:44px minmax(180px,1fr) minmax(190px,.55fr) auto;
  align-items:center;gap:11px;border-bottom:1px solid var(--line)
}
.admin-access-row:last-child{border-bottom:0}
.admin-access-identity>div{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.admin-access-identity strong{font-size:12px}
.admin-access-identity small{display:block;margin-top:5px;color:#8a837c;font-size:9px;line-height:1.45}
.access-badge{
  display:inline-flex;align-items:center;min-height:22px;padding:0 7px;border-radius:999px;font-size:8px;font-weight:800
}
.access-badge.pending{background:rgba(150,113,55,.10);color:#8a682f}
.access-badge.approved{background:rgba(73,108,88,.11);color:var(--green)}
.access-badge.denied{background:rgba(163,39,47,.09);color:var(--red)}
.admin-rank-field{display:grid;gap:4px;margin:0}
.admin-rank-field span{font-size:8px;color:#8b847c;font-weight:800;letter-spacing:.08em}
.admin-rank-field select{
  min-height:36px;width:100%;border:1px solid var(--line);border-radius:9px;background:#fffaf4;padding:0 9px;
  color:var(--ink);font-size:10px;font-weight:700;outline:0
}
.admin-access-actions{display:flex;justify-content:flex-end;gap:5px;flex-wrap:wrap}
.admin-action{
  min-height:32px;padding:0 9px;border:1px solid var(--line);border-radius:8px;background:#f0ebe4;color:#6f6861;
  font-size:9px;font-weight:800
}
.admin-action:hover{background:#fff}
.admin-action.approve{border-color:rgba(73,108,88,.18);background:rgba(73,108,88,.08);color:var(--green)}
.admin-action.deny{border-color:rgba(163,39,47,.17);background:rgba(163,39,47,.07);color:var(--red)}
.admin-action.save-rank{border-color:rgba(82,107,125,.18);background:rgba(82,107,125,.08);color:var(--blue)}
.owner-lock{
  min-height:30px;padding:0 8px;display:inline-flex;align-items:center;border-radius:8px;background:#1b1d1f;color:#fff;
  font-size:8px;font-weight:800;letter-spacing:.06em
}
.rank-order-panel{margin-top:12px}
.rank-order{padding:12px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.rank-order-item{
  min-height:42px;padding:7px 9px;display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.25)
}
.rank-order-item span{width:25px;height:25px;display:grid;place-items:center;border-radius:7px;background:#eae4dc;color:#777068;font-size:9px;font-weight:800}
.rank-order-item strong{font-size:10px}

@media(max-width:1200px){
  .rank-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-access-row{grid-template-columns:44px 1fr minmax(180px,.7fr)}
  .admin-access-actions{grid-column:2/-1;justify-content:flex-start}
}
@media(max-width:800px){
  .admin-kpi-grid{grid-template-columns:repeat(2,1fr)}
  .rank-order{grid-template-columns:1fr 1fr}
  .admin-access-row{grid-template-columns:40px 1fr}
  .admin-rank-field,.admin-access-actions{grid-column:1/-1}
  .rank-directory-grid{grid-template-columns:1fr}
  .rank-member-card{grid-template-columns:42px minmax(0,1fr) auto}
  .member-edit-button{grid-column:2/3;justify-self:start}
  .rank-chevron{grid-column:3;grid-row:1}
}
@media(max-width:520px){
  .admin-kpi-grid,.rank-order{grid-template-columns:1fr}
}


/* Guest mode topbar login */
.discord-top-login{
  min-height:40px;padding:0 13px;border:1px solid rgba(88,101,242,.34);border-radius:10px;
  background:#5865f2;color:#fff;font-size:11px;font-weight:800;box-shadow:0 8px 20px rgba(88,101,242,.16)
}
.discord-top-login:hover{background:#6673f4;transform:translateY(-1px)}
.discord-top-login[hidden]{display:none}
.discord-top-login span{margin-right:6px}
body.is-member [data-open],
body.is-member #quick-add{display:none!important}
@media(max-width:650px){
  .discord-top-login{padding:0 10px;font-size:10px}
  .auth-user{display:none!important}
}
