:root{color-scheme:dark;--bg:#0d1117;--panel:#151b23;--soft:#1f2630;--line:#303946;--text:#f4f7fb;--muted:#97a3b6;--green:#20c997;--red:#ef4444;--amber:#f59e0b}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Tahoma,Arial,sans-serif}main{max-width:1220px;margin:auto;padding:24px}.top{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:22px}.top h1{margin:4px 0;font-size:30px}.top p,.muted{color:var(--muted)}.actions{display:flex;gap:8px;flex-wrap:wrap}.btn,.save{border:1px solid var(--line);background:var(--soft);color:var(--text);padding:10px 14px;border-radius:8px;text-decoration:none;cursor:pointer}.primary,.save{background:var(--green);border-color:var(--green);color:#04110d;font-weight:700}.warn{border-color:var(--amber);color:#ffd38a}.ghost{background:transparent}.back{color:var(--muted);text-decoration:none}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}.guild,.panel,.band{background:var(--panel);border:1px solid var(--line);border-radius:8px}.guild{padding:18px;text-decoration:none;color:var(--text)}.guild span{display:block;color:var(--muted);margin-top:8px}.band{padding:18px;margin-bottom:16px}.band h2{margin:0 0 14px;font-size:21px}.cards{display:grid;grid-template-columns:1fr;gap:10px}.cards.two{grid-template-columns:repeat(2,minmax(0,1fr))}.split{display:grid;grid-template-columns:1fr 1fr;gap:16px}.card{background:#111720;border:1px solid var(--line);border-radius:8px;padding:14px}.card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.card h3{margin:0;font-size:18px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}label{display:flex;justify-content:space-between;gap:10px;align-items:center;background:#10161d;border:1px solid #25303c;border-radius:8px;padding:10px;color:#d7dee9}.wide{grid-column:1/-1;display:block}input,textarea{width:100%;max-width:260px;background:#080c11;border:1px solid var(--line);color:var(--text);border-radius:6px;padding:8px}textarea{max-width:100%;min-height:70px;margin-top:8px}.switch input{display:none}.switch{background:none;border:0;padding:0}.switch span{display:block;width:48px;height:26px;background:#3a4654;border-radius:999px;position:relative}.switch span:before{content:"";position:absolute;width:20px;height:20px;right:3px;top:3px;background:white;border-radius:50%;transition:.15s}.switch input:checked+span{background:var(--green)}.switch input:checked+span:before{right:25px}.save{width:100%;font-size:18px;margin:2px 0 16px}.list{display:grid;gap:8px}.row{display:flex;justify-content:space-between;gap:10px;align-items:center;background:#10161d;border:1px solid #25303c;border-radius:8px;padding:12px}.row span,.row small{display:block;color:var(--muted);margin-top:4px}.login{max-width:520px;margin:12vh auto;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:28px;text-align:center}.login .btn{display:inline-block;margin:6px}
@media(max-width:850px){main{padding:14px}.top,.split{display:block}.actions{margin-top:12px}.cards.two,.fields{grid-template-columns:1fr}.row{align-items:flex-start}.top h1{font-size:24px}}
.empty{max-width:680px;margin:18vh auto 0;text-align:center;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:32px}.empty h2{margin:0 0 10px;font-size:24px}.empty p{margin:0;color:var(--muted);line-height:1.8}
.guild-card{display:flex;align-items:center;gap:14px}.guild-avatar{width:52px;height:52px;border-radius:8px;object-fit:cover;background:var(--soft);border:1px solid var(--line);display:inline-grid;place-items:center;flex:0 0 auto}.guild-avatar.fallback{font-weight:800;font-size:22px;color:var(--green)}.guild-meta{display:block}.guild-meta small{display:block;color:var(--muted);margin-top:5px}.dashboard-shell{display:grid;grid-template-columns:260px minmax(0,1fr);gap:18px;align-items:start}.side-nav{position:sticky;top:20px;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:14px;display:grid;gap:8px}.server-badge{display:flex;gap:12px;align-items:center;padding:10px;border-bottom:1px solid var(--line);margin-bottom:6px}.server-badge span{display:block;color:var(--muted);font-size:12px;margin-top:4px;direction:ltr}.nav-item{width:100%;text-align:right;border:1px solid transparent;background:transparent;color:var(--muted);padding:11px 12px;border-radius:8px;cursor:pointer;font:inherit}.nav-item:hover,.nav-item.active{background:var(--soft);border-color:var(--line);color:var(--text)}.dash-main{min-width:0}.dash-top{align-items:flex-start}.tab-panel{display:none}.tab-panel.active{display:block}.cards.one{grid-template-columns:1fr}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.stat-card{background:#10161d;border:1px solid #25303c;border-radius:8px;padding:18px}.stat-card strong{display:block;font-size:34px;color:var(--green);line-height:1}.stat-card span{display:block;margin-top:10px}.stat-card small{display:block;color:var(--muted);margin-top:5px}.form-save{display:none}.form-save.visible{display:block}
@media(max-width:900px){.dashboard-shell{grid-template-columns:1fr}.side-nav{position:static}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.stat-grid{grid-template-columns:1fr}.guild-card{align-items:flex-start}}
.dash-main>.dash-top{background:linear-gradient(135deg,#111820,#16211f);border:1px solid var(--line);border-radius:8px;padding:18px}.side-nav{box-shadow:0 18px 45px rgba(0,0,0,.22)}.server-badge{background:#10161d;border:1px solid #25303c;border-radius:8px}.nav-item.active{border-color:rgba(32,201,151,.55);box-shadow:inset 3px 0 0 var(--green)}.stat-card{position:relative;overflow:hidden}.stat-card:after{content:"";position:absolute;inset:auto 14px 12px 14px;height:3px;background:var(--green);opacity:.65;border-radius:99px}.ops-strip{margin-top:14px;background:#10161d;border:1px solid #25303c;border-radius:8px;padding:14px;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center}.ops-strip strong{color:var(--green)}.ops-strip span{color:var(--text)}.ops-strip small{color:var(--muted)}.hint{color:var(--muted);font-size:13px;line-height:1.7;background:#10161d;border:1px solid #25303c;border-radius:8px;padding:10px}
.stats-reset{margin-top:12px;background:#10161d;border:1px solid #25303c;border-radius:8px;padding:12px;display:flex;justify-content:space-between;gap:12px;align-items:center}.stats-reset span{color:var(--muted);font-size:13px;line-height:1.6}
@media(max-width:700px){.ops-strip{grid-template-columns:1fr}.dash-main>.dash-top{padding:14px}}
@media(max-width:700px){.stats-reset{display:grid;justify-items:start}}
.whitelist-add{display:grid;gap:10px;margin-bottom:14px}.whitelist-list{display:grid;gap:10px}.scope-dropdown{background:#10161d;border:1px solid #25303c;border-radius:8px;padding:0;overflow:hidden}.scope-dropdown summary{cursor:pointer;padding:12px 14px;display:flex;justify-content:space-between;gap:12px;align-items:center;color:var(--text);list-style:none}.scope-dropdown summary::-webkit-details-marker{display:none}.scope-dropdown summary:after{content:"⌄";color:var(--green);font-weight:700}.scope-dropdown[open] summary:after{content:"⌃"}.scope-dropdown small{color:var(--muted);line-height:1.5}.scope-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px;border-top:1px solid #25303c}.scope-option{margin:0}.scope-option input{width:auto;max-width:none;accent-color:var(--green)}.whitelist-row b{direction:ltr;display:inline-block}.whitelist-row[open]{border-color:rgba(32,201,151,.55)}
@media(max-width:700px){.scope-grid{grid-template-columns:1fr}.scope-dropdown summary{display:grid}}
.role-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.role-option span{display:grid;gap:4px}.role-option small{color:var(--muted);direction:ltr;font-size:11px}
@media(max-width:700px){.role-grid{grid-template-columns:1fr}}
select{width:100%;max-width:260px;background:#080c11;border:1px solid var(--line);color:var(--text);border-radius:6px;padding:8px}.danger{border-color:var(--red)!important;color:#fecaca!important}.card-tools{display:flex;align-items:center;gap:10px}.card .fields{display:none}.card.is-enabled.is-editing .fields{display:grid}.card.is-disabled .edit-card{display:none}.card.is-disabled{opacity:.9}.save{display:none!important}.has-unsaved main{padding-bottom:120px}.save-bar{position:fixed;left:50%;right:auto;bottom:18px;min-width:min(760px,calc(100vw - 32px));transform:translateX(-50%) translateY(140px);background:#050607;border:1px solid #111827;box-shadow:0 18px 45px rgba(0,0,0,.45);border-radius:8px;padding:12px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px;z-index:50;transition:.2s}.has-unsaved .save-bar{transform:translateX(-50%) translateY(0)}.save-bar.attention{border-color:var(--amber);box-shadow:0 0 0 3px rgba(245,158,11,.2),0 18px 45px rgba(0,0,0,.45)}.save-bar strong{font-size:16px}.save-bar-actions{display:flex;gap:12px;order:-1}.save-bar .primary{background:#1d4ed8;border-color:#1d4ed8;color:#fff}.save-bar .cancel-changes{background:#242628;border-color:#242628;color:#fff}.role-search-wrap{padding:12px;border-top:1px solid #25303c}.role-search{max-width:100%}.role-picker .role-grid{max-height:330px;overflow:auto;grid-template-columns:repeat(2,minmax(0,1fr))}.role-picker:not([open]) .role-search-wrap,.role-picker:not([open]) .role-grid{display:none}.log-actions{margin-top:12px}.section-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px}.section-head h2{margin:0}.responsibilities-list{display:grid;gap:12px}.responsibility-card{background:#10161d}.responsibility-card .fields{display:grid!important}.responsibility-card input,.responsibility-card textarea{max-width:100%}.log-row[hidden]{display:none!important}.permission-choice[hidden]{display:none!important}
@media(max-width:700px){.save-bar{left:12px;right:12px;min-width:0;transform:translateY(140px);display:grid}.has-unsaved .save-bar{transform:translateY(0)}.save-bar-actions{order:0}.save-bar .btn{flex:1}.role-picker .role-grid{grid-template-columns:1fr}}
.whitelist-overview{display:grid;gap:10px;padding:12px;border-top:1px solid #25303c}.whitelist-overview h3{margin:8px 0 2px;font-size:16px}.whitelist-summary{background:#10161d;border:1px solid #25303c;border-radius:8px;padding:12px}.whitelist-summary strong{display:block;direction:ltr;text-align:left}.whitelist-summary small{display:block;color:var(--muted);margin-top:6px}.whitelist-divider{height:1px;background:#25303c;margin:8px 0}
.allowance-card .fields{display:grid!important}
