:root{font-family:Arial,Helvetica,sans-serif;color:#20242a;background:#f4f5f7;font-size:14px;letter-spacing:0}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0}button,input,select,textarea{font:inherit}button{border:1px solid #d4d8df;border-radius:5px;padding:10px 15px;background:white;color:#242a32;cursor:pointer}button:hover{background:#e8edf3}button:disabled{opacity:.6;cursor:wait}input,select,textarea{width:100%;border:1px solid #ccd2dc;border-radius:4px;padding:10px;background:#fff;color:#20242a}textarea{min-height:84px;resize:vertical}label{display:grid;gap:7px;margin-bottom:16px}h1{font-size:24px;margin:0}h2{font-size:18px;margin:0}p{line-height:1.5}.brand{font-size:21px;font-weight:800;white-space:nowrap;color:#eabf43}.brand span{color:inherit;margin-left:3px}.login{min-height:100vh;display:grid;place-items:center;padding:24px}.login form{width:min(100%,380px)}.login h1{margin:28px 0}.login button,dialog footer button{background:#147a70;color:white;border-color:#147a70;width:100%}.login .brand span{color:#252a31}#workspace{display:flex;min-height:100vh}aside{width:248px;background:#101215;color:#ddd;position:fixed;inset:0 auto 0 0;padding:28px 18px;display:flex;flex-direction:column;overflow:auto}aside .brand{padding:0 8px 28px}aside .brand span{color:#fff}nav{display:flex;flex-direction:column;gap:5px}nav p{font-size:11px;color:#939aa5;margin:22px 12px 8px}nav button{border:0;background:transparent;color:#c2c8d2;text-align:left;min-height:42px}nav button:hover,nav button.active{background:#282d35;color:#fff}.account{margin-top:auto;padding-top:30px;display:grid;gap:15px;font-size:13px}.account button{background:#222730;color:#ddd;border:0}main{margin-left:248px;width:calc(100% - 248px);padding:30px 32px}header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:26px}#breadcrumb{font-size:11px;color:#737c89;margin:0 0 10px}#role{font-size:12px;background:#e1eee9;color:#21634e;padding:8px;border-radius:4px}#notice:not(:empty),#editor-error:not(:empty),#login-error:not(:empty){color:#ae2338;padding:12px 0}.filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap;border-bottom:1px solid #dce0e6;padding-bottom:20px;margin-bottom:22px}.filters label{margin:0;max-width:200px;font-size:12px}.stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin:24px 0 32px}.stat{border-top:3px solid #158877;background:#fff;padding:20px 16px}.stat:nth-child(2){border-color:#5589d5}.stat:nth-child(3){border-color:#cb576c}.stat:nth-child(4){border-color:#d4aa39}.stat strong{display:block;font-size:30px;margin:10px 0}.stat span{color:#747d89;font-size:12px}.table-wrap{width:100%;overflow:auto;background:white;border:1px solid #e2e5e9;border-radius:6px}table{border-collapse:collapse;width:100%;font-size:13px}td,th{padding:15px;text-align:left;border-bottom:1px solid #edf0f3;vertical-align:top}th{color:#657084;font-size:12px;background:#fafbfd}td{overflow-wrap:anywhere;max-width:420px;min-width:100px}.tag{display:inline-block;border-radius:4px;padding:5px 8px;font-size:12px;background:#e9edf3;white-space:nowrap}.approved{background:#e0f5e7;color:#287343}.rejected,.failed{background:#fde8ec;color:#a32840}.pending,.processing{background:#fff2d4;color:#846115}.toolbar,.pagination{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:16px 0}.pagination span{font-size:12px;color:#637084}.empty{padding:35px;text-align:center;color:#7c8592}.bonus-thumb{width:96px;aspect-ratio:16/9;object-fit:cover;display:block}dialog{border:1px solid #dce0e6;border-radius:8px;width:min(640px,calc(100% - 28px));max-height:90vh;padding:24px}dialog::backdrop{background:#1119}dialog header{margin-bottom:18px}dialog header button{font-size:24px;padding:2px 9px}dialog footer{position:sticky;bottom:0;background:white;padding-top:16px}.check{display:flex;align-items:center;gap:10px}.check input{width:18px;height:18px}.permissions{display:grid;grid-template-columns:1fr 1fr;gap:4px 16px;border:0;padding:0}fieldset legend{font-weight:bold;margin-bottom:16px}.permissions label{font-size:13px}.section-title{margin:20px 0}.view-note{color:#687589}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #72bdc8;outline-offset:2px}@media(max-width:1000px){.stats{grid-template-columns:repeat(3,minmax(0,1fr))}aside{width:205px}main{margin-left:205px;width:calc(100% - 205px);padding:24px 18px}.brand{font-size:17px}}@media(max-width:640px){#workspace{display:block}aside{position:static;width:100%;padding:16px}aside .brand{padding:0 0 12px}nav{display:grid;grid-template-columns:1fr 1fr}nav p{grid-column:1/-1;margin:8px}nav button{font-size:12px;padding:9px}.account{display:flex;justify-content:space-between;align-items:center;padding-top:16px}main{margin:0;width:100%;padding:22px 14px}h1{font-size:21px}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat strong{font-size:26px}.permissions{grid-template-columns:1fr}.filters label{max-width:calc(50% - 10px)}header{align-items:start}#role{max-width:100px}td,th{padding:12px}.toolbar{flex-wrap:wrap}}
.request-stats{grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 36px}.request-stats .stat{border:1px solid #e2e5e9;border-top:3px solid #5589d5;border-radius:6px;padding:22px 20px;min-width:0}.request-stats .stat:nth-child(2){border-top-color:#158877}.request-stats .stat:nth-child(3){border-top-color:#cb576c}.request-stats .stat:nth-child(4){border-top-color:#d4aa39}.request-stats strong{font-size:28px;overflow-wrap:anywhere;margin:0 0 12px;font-variant-numeric:tabular-nums}.request-stats .amount-warning{display:block;color:#855d16;line-height:1.5;margin-top:10px;font-size:11px}.request-list{border-top:1px solid #dce0e6;padding-top:24px}.list-subtitle{margin:6px 0 24px;color:#727d8e}.request-toolbar{display:flex;align-items:center;gap:12px;margin:20px 0}.request-toolbar label{display:flex;align-items:center;gap:10px;margin:0}.request-toolbar label:nth-child(2){margin-left:auto}.request-toolbar select{width:85px}.request-toolbar input{width:240px;max-width:100%}.request-list table{min-width:820px;table-layout:fixed}.request-list th:nth-child(1){width:16%}.request-list th:nth-child(2){width:22%}.request-list th:nth-child(3){width:13%}.request-list th:nth-child(4){width:34%}.request-list th:nth-child(5){width:15%}.request-list td{vertical-align:middle;line-height:1.6}.request-list .tag{white-space:normal;overflow-wrap:anywhere}.request-list th button{border:0;background:transparent;padding:0;color:inherit;font-size:inherit}.request-player,.request-date{display:grid;gap:4px}.request-player small{color:#7a8798;font-size:12px}.request-date{color:#647389}.amount-badge{display:inline-block;border-radius:4px;padding:2px 5px;font-variant-numeric:tabular-nums}.request-list .table-wrap{border-radius:0}.request-list .pagination span{text-align:center}@media(max-width:1100px){.request-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.request-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.request-stats .stat{padding:16px 12px}.request-stats strong{font-size:22px}.request-toolbar{flex-wrap:wrap}.request-toolbar label:nth-child(2){margin-left:0;flex:1;min-width:150px}.request-toolbar input{width:100%;min-width:0}.request-stats .stat span{font-size:12px;line-height:1.5}}
.rejected-list th:nth-child(1){width:17%}
.rejected-list th:nth-child(2){width:24%}
.rejected-list th:nth-child(3){width:43%}
.rejected-list th:nth-child(4){width:16%}
.bonus-editor{max-width:1050px;margin-top:28px}
.bonus-editor>label{display:grid;grid-template-columns:200px minmax(0,1fr);gap:24px;align-items:start;margin-bottom:28px}
.bonus-image-editor{display:grid;gap:12px;min-width:0}
.bonus-image-editor img{width:100%;height:240px;object-fit:contain;background:#e9ecef;border:1px solid #d4d8df}
.bonus-editor .bonus-status{display:flex;align-items:center;gap:20px}
.bonus-status input{width:20px;height:20px;accent-color:#147a70}
.bonus-dates{border:0;border-top:1px solid #d4d8df;padding:22px 0;display:grid;grid-template-columns:1fr 1fr;gap:20px}
.bonus-dates legend{padding-right:12px}.bonus-dates button{justify-self:start}
.primary-save{background:#147a70;color:white;border-color:#147a70;margin:16px 0}.primary-save:hover{background:#11655d}
.bonus-schedule{display:grid;gap:6px;font-size:12px}.form-error{color:#a32840}
@media(max-width:640px){.bonus-editor>label{grid-template-columns:1fr;gap:10px}.bonus-dates{grid-template-columns:1fr}.bonus-image-editor img{height:180px}}
.rejection-messages{padding:24px 0;border-bottom:1px solid #d4d8df}
.rejection-messages:first-child{padding-top:0}.rejection-messages h2{margin:0 0 24px}
.rejection-message-row{margin-bottom:22px;max-width:1100px}.rejection-message-row h3{font-size:14px;line-height:1.5;margin:0 0 12px;font-weight:600}
.message-editor-line{display:flex;align-items:center;gap:18px}.message-editor-line label{flex:1;min-width:0;font-size:12px;color:#626d7a;margin:0}
.message-editor-line textarea{font-size:14px;line-height:1.5;min-height:86px}.message-save-status{font-size:12px;min-height:18px;margin:6px 0;color:#21634e}
@media(max-width:640px){.message-editor-line{align-items:stretch;flex-direction:column;gap:10px}.message-editor-line button{align-self:flex-end}}
.brand img{display:block;width:100%;max-width:280px;height:64px;object-fit:contain;object-position:left center}
.login .brand{min-height:64px}.search-box{position:relative;min-width:0}
.search-suggestions{position:absolute;top:100%;right:0;width:320px;max-width:80vw;max-height:300px;overflow:auto;z-index:10;background:#fff;border:1px solid #ccd2dc;box-shadow:0 5px 14px #0002;border-radius:4px}
.search-suggestions button{display:block;width:100%;text-align:left;border:0;border-radius:0;overflow-wrap:anywhere}
.search-suggestions p{padding:10px;font-size:12px;margin:0}
.login .brand{background:#101215;border-radius:6px;padding:14px 22px}.login .brand img{max-width:100%;height:80px;object-position:center}
.bonus-edit-icon{width:38px;height:38px;min-width:38px;padding:0;display:inline-grid;place-items:center;font-size:19px;line-height:1;white-space:nowrap}
.nav-group{margin:10px 0;min-width:0}.nav-group summary{padding:12px 10px;font-size:14px;font-weight:700;color:#f2f3f5;cursor:pointer;min-height:42px}
.nav-group summary:focus-visible{outline:3px solid #72bdc8;outline-offset:2px}.nav-group-links{display:flex;flex-direction:column;gap:5px}
.nav-group-links button{width:100%}@media(max-width:640px){.nav-group{grid-column:1/-1;margin:0}.nav-group-links{display:grid;grid-template-columns:1fr 1fr}}
/* Shared control treatment, including navigation and compact edit buttons. */
button,nav button,.search-suggestions button,.nav-group summary{border-radius:10px;transition:background-color 180ms ease,border-color 180ms ease,color 180ms ease,box-shadow 180ms ease}
button:not(:disabled):hover{border-color:#a7b9bd;box-shadow:0 2px 5px #182a3510}
button:not(:disabled):active{box-shadow:inset 0 1px 3px #182a3520}
button:disabled{cursor:not-allowed}
.nav-group summary{display:flex;align-items:center;justify-content:space-between;list-style:none;user-select:none;background:#191d23;padding:12px;margin-bottom:0}
.nav-group summary::-webkit-details-marker{display:none}
.nav-group summary::after{content:"";width:7px;height:7px;flex-shrink:0;border-right:2px solid #aeb8c6;border-bottom:2px solid #aeb8c6;transform:rotate(45deg);transition:transform 220ms ease;margin:0 4px 4px 12px}
.nav-group summary[aria-expanded="false"]::after{transform:rotate(-45deg);margin-bottom:0}
.nav-group summary:hover{background:#262c35}.nav-group-links{padding-top:8px}
nav .nav-group-links button{border:1px solid transparent;padding-left:14px}
nav .nav-group-links button.active{background:#263c3a;border-color:#365b56;color:#effbf7}
.search-suggestions{padding:4px}.search-suggestions button{margin:2px 0}
@media(prefers-reduced-motion:reduce){button,nav button,.search-suggestions button,.nav-group summary,.nav-group summary::after{transition:none}}
.amount-badge,.request-stats strong{font-weight:700}
.brand-home{display:block;text-decoration:none;border-radius:8px}
.header-actions{display:flex;align-items:center;gap:12px}
.header-dropdown{position:relative}
.header-popover{position:absolute;right:0;top:100%;padding:12px;min-width:180px;max-width:calc(100vw - 28px);z-index:20;background:#fff;border:1px solid #dce0e6;border-radius:8px;box-shadow:0 12px 32px #0002;display:grid;gap:5px}
.header-popover button{text-align:left;border:0;white-space:nowrap}
.header-popover button[aria-pressed="true"]{background:#e1eee9;color:#21634e;font-weight:700}
.profile-name{display:block;padding:8px 10px 14px;overflow-wrap:anywhere;max-width:240px}
.profile-toggle{width:42px;height:42px;padding:0;display:grid;place-items:center}
.profile-icon{position:relative;width:24px;height:24px;overflow:hidden;border:1px solid currentColor;border-radius:50%}
.profile-icon::before{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:currentColor;left:7px;top:4px}
.profile-icon::after{content:"";position:absolute;width:16px;height:10px;border-radius:9px 9px 0 0;background:currentColor;left:3px;top:13px}
[data-theme="dark"] .header-popover{background:#242629;border-color:#45484e}
[data-theme="dark"] .header-popover button[aria-pressed="true"]{background:#213d36;color:#b5ecdb}
#account-dialog [role="alert"]{color:#ba2944}
.profile-portrait{display:block;width:32px;height:32px;border-radius:8px}
.avatar-option img{display:block;width:44px;height:44px;object-fit:contain;margin:auto;border-radius:8px}
.avatar-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;border:0;padding:0;margin:20px 0 0;min-width:0}
.avatar-picker legend{font-weight:700;margin-bottom:12px}
.avatar-picker .avatar-option{font-family:"Segoe UI Emoji",sans-serif;font-size:32px;line-height:1;height:60px;min-width:0;padding:8px;border-radius:8px}
.avatar-picker .avatar-option[aria-pressed="true"]{border:2px solid #168774;background:#e1eee9;box-shadow:0 0 0 2px #16877426}
[data-theme="dark"] .avatar-picker .avatar-option[aria-pressed="true"]{background:#213d36;border-color:#75cfb8}
.avatar-status{font-size:13px;min-height:18px}
[data-theme="dark"] #account-dialog [role="alert"]{color:#ffaabd}
#theme-toggle{display:grid;place-items:center;width:42px;height:42px;padding:0;flex-shrink:0}
.theme-icon{display:block;width:26px;height:26px;font-family:"Segoe UI Emoji",sans-serif;font-size:22px;line-height:26px;text-align:center}
.filters label{font-size:15px;font-weight:700;max-width:280px}
.filters input{font-size:14px;font-weight:400;min-width:0}
[data-theme="dark"]{color-scheme:dark;background:#161719;color:#edf0f3}
[data-theme="dark"] body{background:#161719;color:#edf0f3}
[data-theme="dark"] button,[data-theme="dark"] input,[data-theme="dark"] select,[data-theme="dark"] textarea{background:#242629;color:#edf0f3;border-color:#45484e}
[data-theme="dark"] button:hover{background:#33373b}
[data-theme="dark"] .stat,[data-theme="dark"] .stats:not(.request-stats) .stat,[data-theme="dark"] .table-wrap,[data-theme="dark"] dialog,[data-theme="dark"] dialog footer{background:#222427;color:#edf0f3;border-color:#45484e}
[data-theme="dark"] .stats:not(.request-stats) .stat-link:hover{background:#2a2d30;border-color:var(--stat-accent)}
[data-theme="dark"] .stats:not(.request-stats) .stat strong{color:#f7f8fa}
[data-theme="dark"] .stat span,[data-theme="dark"] .stats:not(.request-stats) .stat span,[data-theme="dark"] .list-subtitle,[data-theme="dark"] .view-note,[data-theme="dark"] .pagination span,[data-theme="dark"] .request-date,[data-theme="dark"] .request-player small{color:#b7c0ca}
[data-theme="dark"] th{background:#292c30;color:#c8d0da}
[data-theme="dark"] td,[data-theme="dark"] th,[data-theme="dark"] .filters,[data-theme="dark"] .request-list,[data-theme="dark"] .appearance-setting{border-color:#3c4046}
[data-theme="dark"] .approved{background:#193e2c;color:#a7edc4}
[data-theme="dark"] .rejected,[data-theme="dark"] .failed{background:#4d2330;color:#ffc4d1}
[data-theme="dark"] .pending,[data-theme="dark"] .processing{background:#45391c;color:#f5d98d}
[data-theme="dark"] .search-suggestions{background:#242629;border-color:#45484e}
[data-theme="dark"] .search-suggestions button{color:#edf0f3;background:#242629}
[data-theme="dark"] #role{background:#213d36;color:#b5ecdb}
[data-theme="dark"] #notice:not(:empty),[data-theme="dark"] #editor-error:not(:empty),[data-theme="dark"] #login-error:not(:empty){color:#ffaabd}
[data-theme="dark"] .message-save-status{color:#a7edc4}
@media(max-width:640px){.filters label{max-width:100%;width:100%}.header-actions{gap:8px}}
.appearance-setting{padding:24px 0;border-top:1px solid #dce0e6;max-width:900px}
.appearance-setting h2{margin-bottom:18px}
.appearance-preview{display:block;width:100%;max-width:640px;aspect-ratio:16/9;object-fit:contain;background:#141414;border-radius:8px;margin-bottom:20px}
.appearance-preview.mobile_background{max-width:240px;aspect-ratio:9/16}
.appearance-setting label{max-width:640px}
.stat-link{text-align:left;font-weight:normal;width:100%}
.stats:not(.request-stats) .stat-link:hover{border-color:var(--stat-accent);background:#fafcfc;box-shadow:0 5px 16px rgb(24 35 48 / 9%)}
.brand-home:focus-visible{outline:3px solid #72bdc8;outline-offset:3px}
.stats:not(.request-stats) .stat{
  --stat-accent:#158877;
  position:relative;overflow:hidden;min-width:0;min-height:142px;
  border:1px solid #e1e5eb;border-radius:8px;padding:24px;
  background:#fff;box-shadow:0 3px 12px rgb(24 35 48 / 5%);
}
.stats:not(.request-stats) .stat::before{
  content:"";display:block;width:28px;height:4px;border-radius:4px;
  background:var(--stat-accent);margin-bottom:18px;
}
.stats:not(.request-stats) .stat:nth-child(2){--stat-accent:#23794c}
.stats:not(.request-stats) .stat:nth-child(3){--stat-accent:#c23c58}
.stats:not(.request-stats) .stat:nth-child(4){--stat-accent:#b48216}
.stats:not(.request-stats) .stat:nth-child(5){--stat-accent:#667085}
.stats:not(.request-stats) .stat span{display:block;color:#626c7b;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.stats:not(.request-stats) .stat strong{font-size:32px;font-weight:800;line-height:1.15;margin:12px 0 0;color:#20242a;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
@media(max-width:640px){
  .stats:not(.request-stats) .stat{padding:18px;min-height:136px}
  .stats:not(.request-stats) .stat:last-child{grid-column:1/-1}
  .stats:not(.request-stats) .stat strong{font-size:28px}
}


/* Brand-colored selected sidebar border; original background preserved. */
#workspace aside nav .nav-group-links button.active { border-color: #d7b654; box-shadow: inset 3px 0 0 #d7b654; }
