.admin-body{min-height:100vh;background:var(--bg);color:var(--text)}
.admin-topbar{position:sticky;top:0;z-index:20;height:72px;padding:0 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(13,15,20,.92);backdrop-filter:blur(20px)}
.admin-top-actions{display:flex;gap:10px;align-items:center}.admin-layout{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:calc(100vh - 72px)}
.admin-sidebar{padding:22px 16px;border-right:1px solid var(--line);background:rgba(255,255,255,.015)}.admin-user{padding:16px;border:1px solid var(--line);border-radius:18px;background:var(--panel);margin-bottom:16px}.admin-user b{display:block;font-size:15px}.admin-user span{font-size:12px;color:var(--muted)}
.admin-nav{display:grid;gap:6px}.admin-nav button{border:0;background:transparent;color:var(--muted);text-align:left;padding:12px 14px;border-radius:13px;font:inherit;cursor:pointer}.admin-nav button:hover,.admin-nav button.active{background:var(--panel-2);color:var(--text)}
.admin-content{padding:32px;min-width:0}.admin-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.admin-page-head h1{margin:5px 0 0;font-size:34px}.admin-loading{min-height:300px;display:grid;place-items:center;align-content:center;gap:12px;color:var(--muted)}
.admin-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.admin-stat{padding:19px;border:1px solid var(--line);border-radius:18px;background:var(--panel)}.admin-stat span{display:block;color:var(--muted);font-size:12px;margin-bottom:8px}.admin-stat b{font-size:28px}
.admin-two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.admin-card{border:1px solid var(--line);border-radius:20px;background:var(--panel);padding:20px}.admin-card h2{font-size:18px;margin:0 0 15px}.admin-list{display:grid;gap:9px}.admin-list-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border-radius:13px;background:var(--panel-2)}.admin-list-row small{display:block;color:var(--muted);margin-top:3px}.admin-list-row aside{text-align:right}
.admin-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:20px;background:var(--panel)}.admin-table{width:100%;border-collapse:collapse;min-width:760px}.admin-table th,.admin-table td{padding:14px 15px;text-align:left;border-bottom:1px solid var(--line);vertical-align:middle}.admin-table th{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.admin-table tr:last-child td{border-bottom:0}.admin-table-actions{display:flex;gap:7px;justify-content:flex-end}.admin-table-actions .button{min-height:34px;padding:7px 10px;font-size:11px}
.admin-empty{padding:40px;text-align:center;color:var(--muted)}.admin-form{display:grid;gap:14px}.admin-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.admin-form-actions{display:flex;gap:9px;margin-top:5px}.admin-form-panel{max-width:720px}.admin-form-panel h2{margin:0 0 6px}.admin-form-panel .muted{margin-top:0}.admin-check{display:flex;align-items:center;gap:9px;padding:12px;border:1px solid var(--line);border-radius:13px}.admin-check input{width:18px;height:18px}.admin-textarea{min-height:150px;resize:vertical}.admin-stock-list{display:grid;gap:8px;max-height:300px;overflow:auto;margin-top:15px}.admin-stock-item{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:10px 12px;background:var(--panel-2);border-radius:12px}.admin-stock-item code{white-space:pre-wrap;word-break:break-all;color:var(--text)}
.admin-auth-screen{position:fixed;inset:0;z-index:100;background:var(--bg);display:grid;place-items:center;padding:20px}.admin-auth-card{width:min(460px,100%);border:1px solid var(--line);border-radius:24px;background:var(--panel);padding:28px}.admin-auth-card h1{text-align:center}.admin-auth-card .button{margin-top:10px}
@media(max-width:1000px){.admin-stats{grid-template-columns:repeat(3,1fr)}.admin-two-col{grid-template-columns:1fr}}
@media(max-width:760px){.admin-topbar{padding:0 12px}.admin-top-actions .button-secondary{display:none}.admin-layout{display:block}.admin-sidebar{position:sticky;top:72px;z-index:10;border-right:0;border-bottom:1px solid var(--line);padding:10px 12px;background:rgba(13,15,20,.96)}.admin-user{display:none}.admin-nav{display:flex;overflow:auto}.admin-nav button{white-space:nowrap;padding:10px 12px}.admin-content{padding:22px 12px}.admin-page-head{align-items:flex-start;flex-direction:column}.admin-page-head h1{font-size:29px}.admin-stats{grid-template-columns:repeat(2,1fr)}.admin-form-grid{grid-template-columns:1fr}}

/* Finance dashboard */
.finance-filters{margin-bottom:16px}.finance-filter-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;gap:12px;align-items:end}.finance-filter-action{padding-bottom:1px}.finance-filter-action .button{min-height:48px}.finance-filters .micro{margin:12px 0 0;color:var(--muted)}
.finance-stats{grid-template-columns:1.35fr repeat(3,minmax(0,1fr));margin-bottom:16px}.finance-stats .admin-stat b,.finance-result-stats .admin-stat b{font-size:22px;line-height:1.2}.finance-period-value{font-size:17px!important}.finance-products-card{padding:0;overflow:hidden}.finance-card-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px}.finance-card-head h2{margin:0 0 4px}.finance-card-head .muted{margin:0}.finance-products-card>.admin-empty{padding:48px 20px}.finance-table{border-radius:0;border-left:0;border-right:0;border-bottom:0}.finance-table small{display:block;margin-top:4px;color:var(--muted);max-width:420px}.finance-cost-input{display:flex;align-items:center;gap:8px;min-width:180px}.finance-cost-input input{width:125px;min-height:42px;padding:9px 11px;border:1px solid var(--line);border-radius:11px;background:var(--panel-2);color:var(--text);font:inherit}.finance-cost-input span{font-size:12px;color:var(--muted)}
.finance-result-stats{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:16px}.finance-result-stats .finance-profit{border-color:rgba(64,199,129,.38);background:rgba(64,199,129,.08)}.finance-result-stats .finance-profit b,.finance-positive{color:#6ee7a8}.finance-negative{color:#ff7b87}.finance-report-card{margin-top:16px}.finance-report-card>.admin-table-wrap{border-radius:14px}.finance-report-card .micro{margin:14px 0 0;color:var(--muted)}
@media(max-width:1050px){.finance-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-filter-action .button{width:100%}.finance-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.finance-filter-grid{grid-template-columns:1fr}.finance-card-head{align-items:stretch;flex-direction:column}.finance-card-head .button{width:100%}.finance-stats,.finance-result-stats{grid-template-columns:1fr 1fr}.finance-stats .admin-stat:first-child{grid-column:1/-1}.finance-cost-input{min-width:150px}.finance-cost-input input{width:105px}}


/* Service logos v20 */
.admin-service-logo{display:block;width:42px;height:42px;border-radius:11px;object-fit:cover;border:1px solid rgba(255,255,255,.1);background:#11151b}
.admin-service-logo-empty{display:grid;place-items:center;font-size:10px;color:#6f7682}
.admin-logo-editor{display:grid;gap:14px}.admin-logo-preview{width:128px;height:128px;border-radius:24px;border:1px dashed rgba(255,255,255,.14);display:grid;place-items:center;overflow:hidden;background:#11151b;color:#7d8490}.admin-logo-preview img{width:100%;height:100%;object-fit:cover}

/* Coupons and exchange rate */
.exchange-rate-box{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid rgba(255,255,255,.09);border-radius:16px;background:rgba(255,255,255,.025)}
.exchange-rate-box>div{display:grid;gap:3px}.exchange-rate-box span,.exchange-rate-box small{color:var(--muted);font-size:12px}.exchange-rate-box b{font-size:19px}
.coupon-code-cell{display:inline-block;padding:7px 9px;border-radius:10px;background:rgba(145,86,225,.1);border:1px solid rgba(188,139,255,.18);font-size:12px;word-break:break-all}
.generated-coupons{width:100%;min-height:280px;margin:12px 0;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;line-height:1.65}
@media(max-width:640px){.exchange-rate-box{align-items:stretch;flex-direction:column}.exchange-rate-box .button{width:100%}}


/* SupplyMe admin v2 */
:root{--admin-bg:#f5f6fb;--admin-panel:#ffffff;--admin-border:rgba(24,25,38,.10);--admin-text:#171821;--admin-muted:#747886;--admin-accent:#6c5ce7}
body.admin-body{background:#f5f6fb!important;color:#171821!important;background-image:radial-gradient(700px 430px at 92% -4%,rgba(108,92,231,.12),transparent 70%)!important}
.admin-topbar{background:rgba(245,246,251,.90)!important;border-color:rgba(24,25,38,.09)!important;backdrop-filter:blur(18px)!important;-webkit-backdrop-filter:blur(18px)!important}
.admin-sidebar{background:rgba(255,255,255,.48)!important;border-color:rgba(24,25,38,.09)!important}
.admin-user,.admin-card,.admin-stat,.admin-table-wrap,.admin-auth-card{background:#fff!important;border-color:rgba(24,25,38,.10)!important;box-shadow:0 14px 42px rgba(28,30,49,.055)!important}
.admin-nav button{border-radius:11px!important;color:#747886!important}.admin-nav button:hover,.admin-nav button.active{background:rgba(108,92,231,.10)!important;color:#5747cc!important}
.admin-list-row,.admin-stock-item{background:#f6f7fa!important}.admin-table th,.admin-table td{border-color:rgba(24,25,38,.08)!important}.admin-table th{color:#858996!important}.admin-table td{color:#2a2b35!important}
.admin-check,.finance-cost-input input,.exchange-rate-box{border-color:rgba(24,25,38,.10)!important;border-radius:13px!important;background:#f7f8fb!important;color:#272832!important}
.admin-service-logo{border-color:rgba(24,25,38,.10)!important;background:#f6f7fa!important}.admin-logo-preview{border-color:rgba(24,25,38,.13)!important;background:#f6f7fa!important;color:#858996!important}
.coupon-code-cell{background:rgba(108,92,231,.09)!important;border-color:rgba(108,92,231,.17)!important;color:#5747cc!important}
input,select,textarea{background:#f7f8fb!important;color:#252630!important;border-color:rgba(24,25,38,.11)!important;border-radius:11px!important}
@media(max-width:760px){.admin-sidebar{background:rgba(245,246,251,.97)!important}}

:root{--accent:#52efa5!important;--accent-soft:rgba(82,239,165,.11)!important;--bg:#020b08!important;--panel:#07140f!important;--surface:#07140f!important;--border:rgba(102,229,169,.18)!important;--text:#effff6!important;--muted:#80958a!important}body{background:radial-gradient(700px 520px at 12% 10%,rgba(27,112,73,.18),transparent 72%),#020b08!important;color:#effff6!important}.brand-mark,.button-primary{background:#52efa5!important;color:#03120b!important}.admin-sidebar,.admin-content,.api-sidebar,.docs-content,.doc-section,.modal-panel{background:#07140f!important;border-color:rgba(102,229,169,.18)!important}


/* SupplyMe admin polish v9 */
body.admin-body{background:
  radial-gradient(560px 420px at 8% 10%,rgba(39,128,85,.16),transparent 72%),
  radial-gradient(620px 460px at 92% -4%,rgba(95,247,176,.06),transparent 76%),
  #020b08!important;
  color:#effff6!important}
body.admin-body::before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(88,155,121,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(88,155,121,.08) 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(circle at center,black 35%,transparent 100%);opacity:.22}
.admin-topbar,.admin-sidebar,.admin-user,.admin-card,.admin-stat,.admin-table-wrap,.admin-auth-card,.admin-form-panel{position:relative;overflow:hidden;background:linear-gradient(180deg, rgba(9,22,18,.94), rgba(6,16,13,.98))!important;border:1px solid rgba(172,217,191,.14)!important;box-shadow:0 18px 52px rgba(0,0,0,.22)!important;color:#effff6!important}
.admin-topbar::before,.admin-sidebar::before,.admin-user::before,.admin-card::before,.admin-stat::before,.admin-table-wrap::before,.admin-auth-card::before,.admin-form-panel::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(112deg, transparent 0 54%, rgba(255,255,255,.028) 60%, transparent 66%),linear-gradient(112deg, transparent 0 66%, rgba(109,253,182,.055) 72%, transparent 78%)}
.admin-sidebar,.admin-content{background:transparent!important}
.admin-nav button{border:1px solid transparent;color:#8aa396!important;transition:transform .2s ease,background .24s ease,border-color .24s ease,color .24s ease}
.admin-nav button:hover,.admin-nav button.active{background:rgba(82,239,165,.1)!important;border-color:rgba(82,239,165,.16)!important;color:#dffff1!important}
.admin-page-head h1,.admin-card h2,.admin-auth-card h1{font-family:var(--display-font);letter-spacing:-.04em;color:#effff6!important}
.admin-user span,.admin-list-row small,.admin-table th,.finance-card-head .muted,.finance-filter-grid .micro{color:#8aa396!important}
.admin-table td,.admin-list-row,.admin-stock-item,.exchange-rate-box,.finance-cost-input input,input,select,textarea{color:#effff6!important;background:rgba(255,255,255,.025)!important;border-color:rgba(172,217,191,.12)!important}
.admin-list-row,.admin-stock-item,.exchange-rate-box{border-radius:16px!important}
.admin-table th,.admin-table td{border-color:rgba(172,217,191,.1)!important}
.admin-table-actions .button,.admin-top-actions .button,.admin-form-actions .button{min-height:38px}
.admin-table-wrap,.admin-card,.admin-stat,.admin-user,.admin-auth-card{backdrop-filter:blur(16px)}


/* SupplyMe admin motion v10 */
.admin-content>*{animation:adminRise 460ms cubic-bezier(.22,.78,.24,1) both}
.admin-nav button,.admin-card,.admin-stat,.admin-list-row,.admin-table tr,.button{transition:transform 220ms cubic-bezier(.22,.78,.24,1),background 220ms ease,border-color 220ms ease,box-shadow 220ms ease,color 220ms ease!important}
.admin-nav button:hover,.admin-card:hover,.admin-stat:hover{transform:translateY(-2px)}
.admin-table tbody tr:hover{background:rgba(82,239,165,.035)}
@keyframes adminRise{from{opacity:0;transform:translateY(18px);filter:blur(5px)}to{opacity:1;transform:none;filter:none}}


/* SupplyMe admin modal fix v18 */
#admin-modal{
  align-items:flex-start !important;
  justify-content:center !important;
  padding:18px !important;
  overflow-y:auto !important;
}
#admin-modal .modal-panel.admin-form-panel{
  width:min(920px, calc(100vw - 36px)) !important;
  max-width:920px !important;
  max-height:calc(100dvh - 36px) !important;
  margin:0 auto !important;
  overflow:auto !important;
  overscroll-behavior:contain !important;
  padding:84px 28px 28px !important;
  border-radius:28px !important;
}
#admin-modal .modal-close{
  position:absolute !important;
  top:18px !important;
  right:18px !important;
  left:auto !important;
  z-index:80 !important;
}
#admin-modal-content{
  min-width:0 !important;
}
#admin-modal-content h2,
#admin-modal-content h3{
  padding-right:64px;
}
#admin-modal .admin-form,
#admin-modal form{
  display:grid;
  gap:16px;
}
#admin-modal .admin-form-grid{
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:12px !important;
}
#admin-modal label,
#admin-modal .field,
#admin-modal .admin-check,
#admin-modal .exchange-rate-box{
  min-width:0 !important;
}
#admin-modal input,
#admin-modal select,
#admin-modal textarea{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  display:block !important;
  box-sizing:border-box !important;
}
#admin-modal textarea,
#admin-modal .admin-textarea{
  min-height:120px !important;
  resize:vertical !important;
}
#admin-modal .admin-form-actions{
  position:sticky;
  bottom:-1px;
  padding-top:8px;
  background:linear-gradient(180deg, rgba(7,20,15,0), rgba(7,20,15,.92) 28%, rgba(7,20,15,.98) 100%);
}
#admin-modal .exchange-rate-box{
  align-items:center !important;
}
@media (max-width: 760px){
  #admin-modal{padding:10px !important}
  #admin-modal .modal-panel.admin-form-panel{
    width:calc(100vw - 20px) !important;
    max-height:calc(100dvh - 20px) !important;
    padding:74px 16px 18px !important;
    border-radius:22px !important;
  }
  #admin-modal .admin-form-grid{
    grid-template-columns:1fr !important;
  }
  #admin-modal .modal-close{
    top:14px !important;
    right:14px !important;
  }
}
