.admin-trigger{display:flex;height:38px;padding:0 14px;align-items:center;gap:8px;border:1px solid #f7c77d66;border-radius:999px;background:#4a190fb8;color:#ffe7bb;font:600 9px/1 'Be Vietnam Pro',sans-serif;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;backdrop-filter:blur(8px)}
.admin-trigger[hidden]{display:none}
.admin-trigger:hover{background:#71301dd9}
.admin-trigger span{font-size:16px;color:#ffb65e}
.admin-dialog{width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:18px;border:0;background:transparent;overflow:hidden}
.admin-dialog::backdrop{background:#1e0805e8;backdrop-filter:blur(9px)}
.admin-shell{display:flex;width:min(1480px,100%);height:100%;margin:auto;flex-direction:column;overflow:hidden;border:1px solid #ffdc9e59;border-radius:24px;background:linear-gradient(145deg,#38120df5,#180908fa);box-shadow:0 30px 90px #000b;color:#f9e8cc;font-family:'Be Vietnam Pro',sans-serif}
.admin-header{display:flex;padding:25px 28px 20px;align-items:flex-start;justify-content:space-between;gap:24px;border-bottom:1px solid #ffd99a24;background:linear-gradient(100deg,#7d2e1880,transparent 54%)}
.admin-kicker{display:block;margin-bottom:7px;color:#f2a959;font-size:8px;font-weight:700;letter-spacing:.26em}
.admin-header h2{margin:0;color:#fff0c8;font-family:'SVN Gang of Three','Be Vietnam Pro',sans-serif;font-size:clamp(30px,4vw,46px);font-weight:400;line-height:1;text-transform:uppercase;text-shadow:0 3px 0 #762312}
.admin-header p{margin:9px 0 0;color:#dcbf9f;font-size:10px;line-height:1.5}
.admin-header-actions{display:flex;align-items:center;gap:9px}
.admin-refresh,.admin-filter{height:36px;padding:0 15px;border:1px solid #f7c77d59;border-radius:999px;background:#fff0c212;color:#ffe3b4;font:600 9px/1 'Be Vietnam Pro',sans-serif;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.admin-refresh:hover,.admin-filter:hover{background:#fff0c224}
.admin-refresh:disabled{opacity:.5;cursor:wait}
.admin-close{display:grid;width:38px;height:38px;padding:0;place-items:center;border:1px solid #f7c77d4d;border-radius:50%;background:#fff0c210;color:#ffe6bb;font:300 25px/1 sans-serif;cursor:pointer}
.admin-tabs{display:flex;padding:0 28px;border-bottom:1px solid #ffd99a1c;background:#180a08}
.admin-tabs button{position:relative;padding:13px 18px;border:0;background:transparent;color:#95745d;font:700 9px/1 'Be Vietnam Pro',sans-serif;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.admin-tabs button:after{position:absolute;right:18px;bottom:-1px;left:18px;height:2px;border-radius:2px;background:#f3a958;content:'';opacity:0;transform:scaleX(.45);transition:.18s ease}
.admin-tabs button.is-active{color:#ffe3b4}.admin-tabs button.is-active:after{opacity:1;transform:scaleX(1)}
.admin-view{display:flex;min-height:0;flex:1;flex-direction:column}.admin-view[hidden]{display:none}
.admin-metrics{display:grid;padding:17px 28px;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;border-bottom:1px solid #ffd99a1c}
.admin-metrics article{min-height:92px;padding:15px 17px;border:1px solid #ffd99a22;border-radius:14px;background:linear-gradient(145deg,#fff2d710,#fff2d704)}
.admin-metrics article.is-warning{border-color:#ff83504d;background:linear-gradient(145deg,#b63f1c25,#fff2d704)}
.admin-metrics span{display:block;color:#cda982;font-size:8px;font-weight:600;letter-spacing:.13em;text-transform:uppercase}
.admin-metrics strong{display:block;margin:7px 0 4px;color:#fff0cc;font-size:28px;line-height:1}
.admin-metrics small{color:#a9896e;font-size:8px}
.admin-toolbar{display:flex;padding:12px 28px;align-items:center;gap:10px;border-bottom:1px solid #ffd99a1c}
.admin-search{display:flex;width:min(360px,45vw);height:38px;padding:0 13px;align-items:center;gap:9px;border:1px solid #ffd99a2e;border-radius:10px;background:#08040359;color:#bd9a79}
.admin-search input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:#f9e8cc;font:500 10px 'Be Vietnam Pro',sans-serif}
.admin-search input::placeholder{color:#9b7b62}
.admin-filter[hidden]{display:none}
.admin-updated{margin-left:auto;color:#997a63;font-size:8px}
.admin-content{display:grid;min-height:0;flex:1;grid-template-columns:minmax(0,1.75fr) minmax(300px,.65fr)}
.admin-players,.admin-activity{min-width:0;min-height:0;display:flex;flex-direction:column}
.admin-players{border-right:1px solid #ffd99a1c}
.admin-section-heading{display:flex;min-height:54px;padding:12px 18px;align-items:center;justify-content:space-between;border-bottom:1px solid #ffd99a1c}
.admin-section-heading h3{margin:0;color:#f5d9ad;font-size:11px;letter-spacing:.06em;text-transform:uppercase}
.admin-section-heading span,.admin-section-heading small{color:#9c7a61;font-size:8px}
.admin-section-heading small{display:block;margin-top:4px}
.admin-table-wrap{min-height:0;flex:1;overflow:auto}
.admin-table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:9px}
.admin-table th{position:sticky;z-index:1;top:0;padding:11px 10px;border-bottom:1px solid #ffd99a26;background:#21100df5;color:#a8886f;font-size:7px;font-weight:600;letter-spacing:.09em;text-align:right;text-transform:uppercase}
.admin-table th:first-child{text-align:left;padding-left:18px}
.admin-table td{padding:11px 10px;border-bottom:1px solid #ffd99a12;color:#d8c0a5;text-align:right}
.admin-table tr{cursor:pointer;transition:background .16s ease}
.admin-table tbody tr:hover,.admin-table tbody tr.is-selected{background:#f6b96412}
.admin-table tbody tr:focus-visible{outline:2px solid #f6b964;outline-offset:-2px}
.admin-player-identity{display:flex!important;min-width:220px;padding-left:18px!important;align-items:center;gap:10px;text-align:left!important}
.admin-player-avatar{display:grid;width:32px;height:32px;flex:0 0 auto;place-items:center;border:1px solid #ffcd7e44;border-radius:50%;background:linear-gradient(145deg,#a84122,#552015);color:#ffe8bd;font-size:12px;font-weight:700}
.admin-player-copy{display:block;min-width:0}
.admin-player-copy strong{display:flex;align-items:center;gap:6px;color:#f4dfc0;font-size:9px}
.admin-player-copy small{display:block;max-width:190px;margin-top:4px;overflow:hidden;color:#98765f;font-size:7px;text-overflow:ellipsis}
.admin-id-badge,.admin-role-badge,.admin-ban-badge{padding:3px 5px;border-radius:999px;background:#76532d;color:#ffe0a9;font-size:5px;font-style:normal;letter-spacing:.08em}
.admin-role-badge{background:#35796d;color:#dffbf4}
.admin-ban-badge{background:#8d352a;color:#ffd9cd}
.admin-score-cell{color:#e8d4b8!important;font-variant-numeric:tabular-nums}
.admin-score-cell.is-zero{color:#745d4d!important}
.admin-stars-cell{color:#ffc875!important;font-weight:700}
.admin-flag-cell.has-flags{color:#ff8c6b!important;font-weight:700}
.admin-date-cell{color:#92745e!important;font-size:7px}
.admin-row-action{padding:6px 9px;border:1px solid #f7c77d45;border-radius:8px;background:#fff0c20c;color:#e8c795;font:600 7px 'Be Vietnam Pro',sans-serif;cursor:pointer;white-space:nowrap}
.admin-row-action:hover{background:#fff0c220}
.admin-activity{background:#12090757}
.admin-feed{min-height:0;flex:1;padding:12px;overflow:auto}
.admin-activity-card{position:relative;margin-bottom:9px;padding:12px;border:1px solid #ffd99a1c;border-radius:12px;background:#fff2d707}
.admin-activity-card:before{content:'';position:absolute;top:13px;left:-1px;width:2px;height:26px;border-radius:2px;background:#bb8960}
.admin-activity-card.is-done:before{background:#62b195}
.admin-activity-card.is-rejected:before,.admin-activity-card.is-void:before{background:#e95f43}
.admin-activity-card.is-open:before{background:#f0b854}
.admin-activity-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.admin-activity-person strong{display:block;color:#ecd9bc;font-size:9px}
.admin-activity-person small{display:block;max-width:180px;margin-top:3px;overflow:hidden;color:#886a55;font-size:7px;text-overflow:ellipsis}
.admin-activity-head time{color:#866a57;font-size:7px;white-space:nowrap}
.admin-activity-body{display:flex;margin-top:10px;align-items:center;gap:6px}
.admin-game-pill,.admin-status-pill{padding:4px 7px;border-radius:999px;background:#fff0c20d;color:#cda982;font-size:6px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}
.admin-status-pill.is-done{background:#4a8d772b;color:#91d2bb}
.admin-status-pill.is-open{background:#aa792a2d;color:#f1c16e}
.admin-status-pill.is-rejected,.admin-status-pill.is-void{background:#a33d2d35;color:#ff9a83}
.admin-activity-score{margin-left:auto;color:#ffd188;font-size:15px}
.admin-activity-meta{display:flex;margin-top:9px;align-items:center;flex-wrap:wrap;gap:5px;color:#80634f;font-size:7px}
.admin-activity-meta span{padding-right:6px;border-right:1px solid #ffd99a1a}
.admin-activity-meta .is-flag{padding:3px 5px;border:0;border-radius:4px;background:#b849302d;color:#f1957d}
.admin-activity-reason{width:100%;margin:3px 0 0;color:#dc8c76;line-height:1.5}
.admin-empty{padding:30px;color:#8f7059;font-size:9px;text-align:center}
.admin-empty[hidden]{display:none}
.admin-user-dialog{width:min(680px,calc(100vw - 24px));max-height:min(760px,calc(100dvh - 24px));padding:0;border:1px solid #ffdc9e59;border-radius:20px;background:#1d0b08;color:#f9e8cc;box-shadow:0 30px 90px #000c;font-family:'Be Vietnam Pro',sans-serif}
.admin-user-dialog::backdrop{background:#120504c7;backdrop-filter:blur(7px)}
.admin-user-shell{display:flex;max-height:calc(100dvh - 26px);flex-direction:column}
.admin-user-header{display:flex;padding:20px 22px 16px;align-items:flex-start;justify-content:space-between;border-bottom:1px solid #ffd99a20;background:linear-gradient(110deg,#6f291951,transparent)}
.admin-user-header span{color:#eaa35d;font-size:7px;font-weight:700;letter-spacing:.2em}
.admin-user-header h2{margin:5px 0 3px;color:#ffe9bf;font-size:22px}
.admin-user-header p{margin:0;color:#9b7860;font-size:9px}
.admin-user-summary{display:flex;padding:13px 18px;align-items:center;justify-content:space-between;border-bottom:1px solid #ffd99a1c}
.admin-user-summary strong{color:#ead2ad;font-size:10px}.admin-user-summary span{color:#9b7860;font-size:8px}
.admin-user-actions{display:flex;min-height:58px;padding:11px 18px;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid #ffd99a1c;background:#130806}
.admin-user-actions small{max-width:380px;color:#8f7059;font-size:7px;line-height:1.5}
.admin-reset-attempts{height:34px;padding:0 13px;border:1px solid #ff886653;border-radius:9px;background:#a13d282c;color:#ffb09c;font:700 8px 'Be Vietnam Pro',sans-serif;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
.admin-reset-attempts:hover{background:#a13d2850}.admin-reset-attempts:disabled{opacity:.5;cursor:wait}
.admin-user-log{min-height:160px;padding:0 18px;overflow:auto}
.admin-user-log-row{display:grid;min-height:62px;padding:10px 0;grid-template-columns:90px minmax(0,1fr) 110px;align-items:center;gap:12px;border-bottom:1px solid #ffd99a14}
.admin-user-log-time strong,.admin-user-log-time small,.admin-user-log-game strong,.admin-user-log-game small{display:block}
.admin-user-log-time strong{color:#b89878;font-size:8px}.admin-user-log-time small{margin-top:3px;color:#745b4b;font-size:7px}
.admin-user-log-game strong{color:#f0d9b6;font-size:10px}.admin-user-log-game small{margin-top:4px;color:#886b55;font-size:7px}
.admin-user-log-result{display:flex;align-items:center;justify-content:flex-end;gap:8px}.admin-user-log-result>strong{color:#ffd188;font-size:15px}
.admin-user-log-issue{grid-column:2/-1;margin:-3px 0 1px;padding:6px 8px;border-radius:6px;background:#9b382525;color:#e99882;font-size:7px;line-height:1.4}

/* Quản lý quà */
.reward-view{background:#160a08}.reward-toolbar{display:flex;min-height:64px;padding:12px 28px;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid #ffd99a1c}
.reward-toolbar>div:first-child{display:flex;min-width:0;align-items:center;gap:10px}.reward-toolbar strong{overflow:hidden;color:#d8b995;font-size:9px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}
.reward-state{padding:5px 8px;border-radius:999px;background:#7b552d;color:#ffe1a9;font-size:7px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.reward-state.is-open{background:#286d5a;color:#c8f4e5}.reward-state.is-closed{background:#77362d;color:#ffd2c5}
.reward-toolbar-actions{display:flex;align-items:center;gap:8px}.reward-primary,.reward-danger{height:36px;padding:0 15px;border:1px solid #f4b86970;border-radius:9px;background:linear-gradient(145deg,#a94725,#71301d);color:#fff0ca;font:700 8px/1 'Be Vietnam Pro',sans-serif;letter-spacing:.05em;text-transform:uppercase;cursor:pointer}.reward-primary:hover{filter:brightness(1.12)}.reward-primary:disabled,.reward-danger:disabled{opacity:.45;cursor:not-allowed;filter:none}.reward-danger{border-color:#ef735666;background:#7f2c222e;color:#ffaf9b}.reward-danger:hover{background:#7f2c2254}
.reward-metrics{display:grid;padding:12px 28px;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;border-bottom:1px solid #ffd99a1c}.reward-metrics article{padding:10px 13px;border:1px solid #ffd99a1c;border-radius:11px;background:#fff2d707}.reward-metrics span{display:block;color:#a5846b;font-size:7px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.reward-metrics strong{display:block;margin:5px 0 3px;color:#ffe7bc;font-size:20px;line-height:1}.reward-metrics small{display:block;overflow:hidden;color:#826650;font-size:7px;text-overflow:ellipsis;white-space:nowrap}
.reward-content{display:grid;min-height:0;flex:1;grid-template-columns:minmax(280px,.8fr) minmax(320px,1fr) minmax(320px,1fr);gap:1px;overflow:hidden;background:#ffd99a16}.reward-panel{display:flex;min-width:0;min-height:0;flex-direction:column;background:#180b09}.reward-gift-list,.reward-order-list{min-height:0;flex:1;padding:10px;overflow:auto}.reward-gift-card{display:grid;margin-bottom:8px;padding:10px;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid #ffd99a1d;border-radius:11px;background:#fff2d707}.reward-gift-image{display:grid;width:54px;height:54px;place-items:center;overflow:hidden;border:1px solid #ffd99a20;border-radius:9px;background:#100705;color:#795d49;font-size:20px}.reward-gift-image img{width:100%;height:100%;object-fit:cover}.reward-gift-copy{min-width:0}.reward-gift-copy strong,.reward-gift-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reward-gift-copy strong{color:#ecd5b1;font-size:9px}.reward-gift-copy small{margin-top:4px;color:#866853;font-size:7px}.reward-gift-code{color:#e9a55f}.reward-gift-edit{padding:6px 8px;border:1px solid #ffd99a2b;border-radius:7px;background:transparent;color:#cba987;font:700 7px 'Be Vietnam Pro',sans-serif;cursor:pointer}.reward-gift-edit:hover{background:#fff0c211}
.reward-assign-panel{padding-bottom:12px}.reward-field{display:flex;min-width:0;flex:1;flex-direction:column;gap:6px;color:#9f7e64;font-size:7px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.reward-field input,.reward-field select,.reward-field textarea{box-sizing:border-box;width:100%;min-height:38px;padding:8px 10px;border:1px solid #ffd99a2b;border-radius:9px;outline:0;background:#0c0504a6;color:#f5dfbd;font:500 9px 'Be Vietnam Pro',sans-serif;letter-spacing:normal;text-transform:none}.reward-field textarea{resize:vertical}.reward-field input:focus,.reward-field select:focus,.reward-field textarea:focus{border-color:#e3a353}.reward-user-search{padding:12px 14px 8px}.reward-user-results{max-height:150px;margin:0 14px;overflow:auto;border:1px solid #ffd99a18;border-radius:9px}.reward-user-result{display:flex;width:100%;padding:9px 10px;align-items:center;justify-content:space-between;gap:10px;border:0;border-bottom:1px solid #ffd99a12;background:#fff2d704;color:#d8bea0;text-align:left;cursor:pointer}.reward-user-result:last-child{border-bottom:0}.reward-user-result:hover{background:#fff2d70c}.reward-user-result strong,.reward-user-result small{display:block}.reward-user-result strong{font-size:8px}.reward-user-result small{margin-top:3px;color:#82644f;font-size:6px}.reward-user-result b{color:#ffc977;font-size:10px;white-space:nowrap}.reward-selected-user{margin:8px 14px 0;padding:10px 12px;border:1px solid #68b79b42;border-radius:10px;background:#286d5a16}.reward-selected-user strong,.reward-selected-user span{display:block}.reward-selected-user strong{color:#d8f3e7;font-size:10px}.reward-selected-user span{margin-top:4px;color:#7eaf9e;font-size:7px}.reward-assign-form{display:flex;padding:12px 14px 0;flex-direction:column;gap:10px}.reward-form-row{display:flex;gap:10px}.reward-form-row-three>*{min-width:0}.reward-assign-button{width:100%}.reward-message{min-height:16px;margin:0;color:#a9876d;font-size:8px;line-height:1.45}.reward-message.is-error{color:#f09178}.reward-message.is-success{color:#79c6a9}
.reward-order-card{margin-bottom:8px;padding:10px 11px;border:1px solid #ffd99a18;border-radius:10px;background:#fff2d706}.reward-order-head,.reward-order-body,.reward-order-actions{display:flex;align-items:center;justify-content:space-between;gap:9px}.reward-order-head strong{overflow:hidden;color:#e8d0ae;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.reward-order-head span{color:#98745b;font-size:7px;white-space:nowrap}.reward-order-body{margin-top:8px;justify-content:flex-start;color:#9d7a60;font-size:7px}.reward-order-body b{margin-left:auto;color:#ffca7c;font-size:10px}.reward-order-status{padding:3px 5px;border-radius:5px;background:#a47a3425;color:#e8bd73;text-transform:uppercase}.reward-order-status.is-fulfilled{background:#35796529;color:#8fd1ba}.reward-order-status.is-cancelled{background:#8d352a29;color:#ef9c89}.reward-order-actions{margin-top:9px;justify-content:flex-end}.reward-order-actions button{padding:5px 8px;border:1px solid #ffd99a24;border-radius:6px;background:transparent;color:#bf9b78;font:700 6px 'Be Vietnam Pro',sans-serif;cursor:pointer}.reward-order-actions .is-fulfill{border-color:#6fb69c40;color:#86cbb2}.reward-order-actions .is-cancel{border-color:#e5765d3d;color:#df8d79}
.reward-gift-dialog{width:min(620px,calc(100vw - 24px));padding:0;border:1px solid #ffdc9e59;border-radius:20px;background:#1d0b08;color:#f9e8cc;box-shadow:0 30px 90px #000c;font-family:'Be Vietnam Pro',sans-serif}.reward-gift-dialog::backdrop{background:#120504d9;backdrop-filter:blur(7px)}.reward-gift-shell{display:flex;flex-direction:column}.reward-gift-fields{display:flex;padding:18px;flex-direction:column;gap:12px}.reward-sort-field{max-width:180px}.reward-gift-actions{display:flex;padding:12px 18px;justify-content:flex-end;gap:8px;border-top:1px solid #ffd99a1c}

@media(max-width:1120px){.reward-content{grid-template-columns:minmax(270px,.8fr) minmax(320px,1.2fr)}.reward-orders-panel{grid-column:1/-1;min-height:280px}.reward-order-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:8px}.reward-order-card{margin:0}}
@media(max-width:980px){.admin-dialog{padding:9px}.admin-shell{border-radius:17px}.admin-content{grid-template-columns:1fr}.admin-players{min-height:52%;border-right:0;border-bottom:1px solid #ffd99a1c}.admin-activity{min-height:42%}.admin-metrics,.reward-metrics{padding:12px 16px;grid-template-columns:repeat(2,minmax(0,1fr))}.admin-header{padding:20px 18px 16px}.admin-tabs{padding:0 16px}.admin-toolbar{padding:10px 16px}.admin-search{width:min(440px,62vw)}.reward-toolbar{padding:10px 16px}.reward-content{overflow:auto}}
@media(max-width:720px){.reward-toolbar{align-items:flex-start;flex-direction:column}.reward-toolbar-actions{width:100%;flex-wrap:wrap}.reward-toolbar-actions>*{flex:1}.reward-content{display:flex;flex-direction:column}.reward-panel{min-height:360px}.reward-orders-panel{min-height:360px}.reward-order-list{display:block}.reward-order-card{margin-bottom:8px}}
@media(max-width:620px){.admin-trigger{height:34px;padding:0 10px}.admin-trigger b{display:none}.admin-dialog{padding:0}.admin-shell{border:0;border-radius:0}.admin-header p{display:none}.admin-header-actions{gap:5px}.admin-refresh{padding:0 10px}.admin-tabs{padding:0 8px}.admin-tabs button{flex:1}.admin-metrics{gap:7px}.admin-metrics article{min-height:76px;padding:12px}.admin-metrics strong{font-size:23px}.admin-toolbar{align-items:stretch;flex-wrap:wrap}.admin-search{width:100%}.admin-updated{margin-left:0}.admin-content{overflow:auto}.admin-players,.admin-activity{min-height:420px}.admin-table-wrap{overflow:auto}.admin-feed{overflow:visible}.admin-user-log-row{grid-template-columns:72px minmax(0,1fr) 84px;gap:8px}.admin-user-actions{align-items:flex-start;flex-direction:column}.admin-reset-attempts{width:100%}.reward-metrics{gap:6px}.reward-toolbar>div:first-child{align-items:flex-start;flex-direction:column}.reward-toolbar strong{white-space:normal}.reward-form-row{flex-direction:column}.reward-form-row-three{flex-direction:column}.reward-gift-dialog{width:100vw;max-width:none;height:100dvh;max-height:none;border:0;border-radius:0}.reward-gift-shell{min-height:100%}}
