/* Dota Rent visual theme. Loaded after the component styles. */
:root{--bg:#0c0206;--panel:#210a12;--panel2:#2b0d18;--line:rgba(220,64,70,.53);--line2:rgba(194,80,91,.25);--orange:#ff6545;--orange2:#ff8761;--muted:#b4a4ad;--text:#f9f5f6}
html{background:#0c0206}body{background:#0c0206;color:var(--text)}body::before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background:linear-gradient(180deg,rgba(8,0,4,.08),rgba(8,0,4,.24)),url("./dota-blood-frame.png") center center/100% 100% no-repeat}.app-shell{position:relative;z-index:1;max-width:1320px;grid-template-columns:168px minmax(0,1fr);gap:10px;padding:0 6px 26px}
.rental-topbar{min-height:52px;height:52px;padding:0 4px;border:0;border-bottom:1px solid rgba(255,76,76,.24);border-radius:0;background:rgba(17,2,7,.36);box-shadow:none;backdrop-filter:blur(8px)}.rental-brand b{font-size:13px}.rental-brand i{font-size:8px;color:#d8c6cd}.x-mark{width:17px;height:17px}.rental-topnav{gap:27px}.rental-topnav a,.rental-topnav span{font-size:10px;color:#cdbec4}.rental-topnav .active{color:#fff;text-shadow:0 0 12px #ff6747}.rental-online{font-size:8px;border-color:rgba(30,225,137,.22);background:rgba(10,20,17,.74)}.rental-user{width:30px;height:30px;font-size:10px;border-color:#a54349;background:linear-gradient(140deg,#742a1d,#260911)}
.sidebar{top:62px;height:calc(100vh - 74px);border:1px solid rgba(236,91,100,.65);border-radius:11px;background:linear-gradient(165deg,rgba(48,13,27,.93),rgba(35,8,20,.94) 58%,rgba(28,6,17,.95));box-shadow:0 20px 52px rgba(0,0,0,.45),inset 0 0 25px rgba(111,29,43,.16)}.brand{min-height:63px;padding:9px 10px;border-color:rgba(255,103,110,.22);background:linear-gradient(105deg,rgba(91,24,32,.35),rgba(28,8,19,.25))}.brand-mark{width:32px;height:32px;flex:none;border-radius:8px;color:#2b0c0b;font-size:15px;background:linear-gradient(135deg,#ff9268,#f75042)}.brand b{font-size:11px}.brand small{font-size:8px;margin-top:2px}.seller-pill{min-height:30px;padding:7px 10px;border-color:rgba(255,103,110,.2);font-size:8px;color:#cec0c5}.seller-pill b{font-size:8px}.sidebar nav{padding:7px 5px}.sidebar nav button{min-height:32px;margin:1px 0;padding:0 8px;gap:8px;border-radius:6px;color:#d0bec6;font-size:10px;font-weight:600}.sidebar nav button.active{color:#fff;border-left:2px solid #ff684b;background:linear-gradient(90deg,rgba(249,81,66,.33),rgba(203,47,54,.12));box-shadow:0 0 15px rgba(255,72,64,.07)}.sidebar nav button:hover{background:rgba(255,100,89,.13)}.sidebar nav button em{padding:2px 5px;font-size:8px;background:rgba(229,157,167,.15)}.line-icon{width:14px;height:14px}.nav-label{padding:14px 8px 4px;color:#bd99a9;font-size:7px}.back-link{margin: auto 8px 8px;padding:9px 5px;border-color:rgba(231,124,129,.4);color:#e2cbd2;font-size:9px;background:rgba(17,2,7,.18)}
main{padding:0 0 32px}.command-cover{min-height:217px;border:1px solid rgba(241,93,103,.63);border-radius:11px;background:linear-gradient(90deg,rgba(17,4,10,.93) 0%,rgba(17,4,10,.66) 39%,rgba(16,3,8,.02) 73%),url("./dota-hero-v2.webp") center 34%/cover no-repeat;box-shadow:0 14px 35px rgba(0,0,0,.26)}.cover-copy{min-height:217px;max-width:670px;padding:26px 29px 48px}.cover-copy .eyebrow{margin:0 0 7px;color:#ff805d!important;font-size:9px!important}.cover-copy h2{margin:0 0 5px;font-size:clamp(30px,3vw,41px);line-height:1.06}.cover-copy h3{font-size:16px;color:#e3d5da}.cover-rail{left:29px;right:30px;bottom:17px;max-width:580px;padding-top:9px;border-color:rgba(255,167,155,.23)}.cover-rail b,.cover-rail span{font-size:8px;color:#eee0e3}
.control-strip{min-height:121px;margin-top:10px;border:1px solid rgba(242,91,99,.52);border-radius:10px;background:linear-gradient(105deg,rgba(42,9,21,.95),rgba(59,16,31,.86) 70%,rgba(48,10,23,.94));box-shadow:0 11px 30px rgba(0,0,0,.22)}.control-strip>div{padding:18px 21px}.control-strip h2{font-size:23px;margin:3px 0}.control-strip p:not(.eyebrow){font-size:10px;color:#d4c1c8}.control-strip aside{min-width:73px;padding:10px;color:#d0b7c1;border-color:rgba(255,121,121,.22)}.control-strip aside b{color:#ff7254}.system-flags{margin-top:11px;gap:5px}.system-flags span{padding:5px 7px;border-color:rgba(241,126,128,.25);font-size:7px;color:#d5c4ca;background:rgba(28,5,14,.35)}.system-flags .on{border-color:rgba(42,226,142,.26)}
.command-stats{gap:10px;margin:10px 0}.command-stat,.command-stat.is-zero{min-height:79px;grid-template-columns:46px minmax(0,1fr);border:1px solid rgba(237,96,105,.47);border-radius:9px;background:linear-gradient(115deg,rgba(50,12,27,.95),rgba(47,13,28,.9));box-shadow:inset 0 0 25px rgba(114,26,41,.09)}.command-stat>span{width:31px;height:31px;margin:7px;border:1px solid rgba(255,109,76,.38);border-radius:7px;background:rgba(201,59,33,.14);color:#ff764e}.stat-glyph svg{width:18px;height:18px}.command-stat small{font-size:8px;color:#efdae0}.command-stat b,.command-stat.is-zero b{font-size:24px;margin-top:2px}.command-stat em{font-size:7px;color:#ceabb9}.command-stat.danger b{color:#ff765b}
.overview-command-grid,.overview-command-grid.is-empty{gap:10px}.overview-command-grid .panel,.panel,.observer-lead,.page-lead,.diagnostic-strip,.issue-protocol,.category-card,.observer-command,.dota-message-head,.dota-template-sidebar,.dota-template-editor,.da-panel{border:1px solid rgba(229,91,101,.48);border-radius:10px;background-color:rgba(38,10,23,.94);box-shadow:0 11px 35px rgba(0,0,0,.22)}.overview-command-grid .panel{min-height:340px}.panel-head{padding:13px 14px;border-color:rgba(236,114,120,.22);background:linear-gradient(90deg,rgba(85,25,42,.28),rgba(56,14,30,.08))}.panel-head h3{font-size:12px}.panel-head small{font-size:8px;color:#c3adb7}.panel-body{padding:14px}.text-action{font-size:9px;color:#ff8b63}.ops-empty,.pool-empty{min-height:228px}.ops-empty p,.pool-empty p{color:#c5adb7}.ops-row,.event-row,.binding-row,.account-row,.presence-row{border-color:rgba(237,118,123,.15)}.event-dot{background:#ff6848;box-shadow:0 0 10px #ff432e,0 0 18px rgba(255,52,43,.35)}.event-row time{color:#ae8f9f}.pool-ring{background:radial-gradient(circle,#220a16 0 52%,transparent 54%),conic-gradient(var(--green) 0 var(--available),var(--orange) var(--available) var(--rented),#675462 var(--rented) 100%)}.pool-legend p,.pool-distribution>span{color:#cbb2be}.distribution-track{background:#664552}
.page-lead,.page-lead.analytics,.page-lead.registry,.page-lead.dispatch,.page-lead.issue,.page-lead.links,.page-lead.categories,.page-lead.diagnostics,.page-lead.comms,.page-lead.events,.page-lead.config,.page-lead.watch{min-height:160px;background:linear-gradient(90deg,rgba(29,5,16,.98) 0%,rgba(36,9,22,.92) 53%,rgba(43,10,24,.42) 100%),url("./dota-hero-v2.webp") center 37%/cover no-repeat}.page-lead h2{color:#fff}.page-lead-copy>p:last-child{color:#d5bec8}.page-lead-code{color:#d6b3bf}.finance-card,.stat{border-color:rgba(229,91,101,.48);background:linear-gradient(130deg,rgba(46,12,27,.94),rgba(28,7,17,.95))}.finance-card small,.finance-card span{color:#d1b5c1}.registry-tools,.field input,.field select,.field textarea,.toolbar input,.toolbar select,.settings-numbers input{border-color:rgba(215,109,119,.32);background:#1b0813;color:#f9f3f5}.field input:focus,.field select:focus,.field textarea:focus,.toolbar input:focus,.toolbar select:focus{border-color:#ff7855}.data-table th{color:#edb0a5;border-color:rgba(224,106,113,.24)}.data-table td{border-color:rgba(224,106,113,.15)}.category-card,.issue-protocol,.diagnostic-strip,.observer-command{background:linear-gradient(145deg,rgba(49,13,27,.95),rgba(28,7,18,.95))}.btn.primary{border-color:#ff8b6a;background:linear-gradient(135deg,#ff986c,#ff694c);color:#2a0b0c;box-shadow:0 5px 16px rgba(255,74,55,.19)}.btn.primary:hover{background:#ffa37e}.btn:not(.primary),.icon-btn{border-color:rgba(227,112,115,.37);background:rgba(57,16,30,.68)}.btn:not(.primary):hover,.icon-btn:hover{background:rgba(113,35,47,.7)}.modal-card{border-color:rgba(234,96,103,.57);background:linear-gradient(145deg,#2d0d1c,#130610)}.toast{background:#2a0e1a;border-color:rgba(234,96,103,.5)}
.da-panel{background:linear-gradient(135deg,rgba(42,11,26,.96),rgba(28,7,19,.97))}.da-metrics,.da-filter-note,.da-results-grid>div+div,.da-filters{border-color:rgba(218,101,116,.24)}.da-metric span,.da-results-grid span,.da-chart-heading p,.da-results>p,.da-filters label,.da-filter-note p{color:#d1b9c4}.da-filters input,.da-filters select,.da-period{background:#210b18;border-color:rgba(220,110,119,.34);color:#f8eaf0}.da-tooltip{background:#250d1bf5;border-color:#9d5560}
.dota-message-head{background:linear-gradient(105deg,rgba(40,10,23,.97),rgba(70,20,37,.91))}.dota-template-sidebar,.dota-template-editor{background:linear-gradient(135deg,rgba(43,11,25,.97),rgba(28,7,19,.98))}.dota-template-side-head,.dota-template-editor-title,.dota-template-preview{border-color:rgba(225,105,112,.27)}.dota-template-item{border-bottom-color:rgba(220,105,114,.18)}.dota-template-item:hover{background:rgba(103,34,51,.42)}.dota-template-item.is-active{background:linear-gradient(110deg,rgba(255,96,66,.22),rgba(106,32,48,.22))}.dota-template-icon,.dota-template-var{background:#321522;border-color:rgba(223,106,114,.28)}.dota-template-editor textarea,.dota-template-preview{background:#1a0915;border-color:rgba(223,106,114,.32)}.dota-template-bubble{background:linear-gradient(125deg,#3e1b2a,#2b1424);border-color:rgba(223,106,114,.29)}
/* Photographic background revision; keep the center quiet behind dashboard panels. */
body::before{background-image:linear-gradient(180deg,rgba(8,0,4,.08),rgba(8,0,4,.24)),url("./dota-blood-frame-v2.png")}
@media(min-width:1451px){.overview-command-grid,.overview-command-grid.is-empty{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr) minmax(0,.85fr)}.event-panel{grid-column:auto!important}.event-panel .timeline{display:block}}
@media(max-width:1100px){.app-shell{grid-template-columns:74px minmax(0,1fr);padding-inline:10px}.sidebar{top:62px}.brand{justify-content:center}.brand>span:last-child{display:none}.sidebar nav button{justify-content:center}.sidebar nav button:not(.active){font-size:0}.sidebar nav button .line-icon{width:17px;height:17px}.seller-pill{justify-content:center}.seller-pill span:nth-child(2),.seller-pill b{display:none}}
@media(max-width:720px){body::before{background-size:auto 100%;background-position:center}.app-shell{display:block;padding:0 10px 83px}.rental-topbar{min-height:54px;height:auto}.sidebar{top:auto;bottom:10px;left:10px;right:10px;height:62px;background:rgba(43,10,24,.97)}.sidebar nav{display:flex}.sidebar nav button,.sidebar nav button:not(.active){min-width:50px;width:auto;min-height:46px;font-size:0}.command-cover{min-height:245px;background-image:linear-gradient(90deg,rgba(18,3,10,.95),rgba(23,5,12,.7) 68%,rgba(20,5,10,.22)),url("./dota-hero-v2.webp");background-position:66% center}.cover-copy{min-height:245px;padding:25px 22px 62px}.cover-copy h2{font-size:34px}.cover-rail{left:22px;right:22px}.control-strip{min-height:0}.command-stats{gap:7px}.command-stat,.command-stat.is-zero{grid-template-columns:37px minmax(0,1fr);min-height:82px}.command-stat>span{width:26px;height:26px;margin:5px}.command-stat small{font-size:7px}.command-stat b,.command-stat.is-zero b{font-size:21px}.overview-command-grid .panel{min-height:0}.page-lead{min-height:135px}.dota-template-sidebar,.dota-template-editor{background:rgba(39,10,24,.97)}}
@media(prefers-reduced-motion:reduce){.sidebar nav button,.btn{transition:none}}

/* Keep the registry controls inside the card. The page has a narrow central
   column even on wide viewports, so viewport-only breakpoints are insufficient. */
@media (min-width:761px){
  :is(.registry-panel,.diagnostic-list) .account-row{
    grid-template-columns:minmax(150px,1.5fr) minmax(68px,.65fr) minmax(78px,.75fr) minmax(72px,.7fr) minmax(54px,.5fr) minmax(120px,1.15fr);
    column-gap:12px;
    row-gap:5px;
    padding-block:12px;
  }
  :is(.registry-panel,.diagnostic-list) .account-row .actions{
    grid-column:1/-1;
    width:100%;
    max-width:100%;
    grid-template-columns:minmax(92px,1fr) 76px 82px 80px 72px;
    gap:7px;
  }
  :is(.registry-panel,.diagnostic-list) .account-row .actions .status{
    width:auto;
  }
}
@media (min-width:761px) and (max-width:1180px){
  :is(.registry-panel,.diagnostic-list) .account-row{
    grid-template-columns:minmax(145px,1fr) minmax(80px,.55fr) minmax(80px,.55fr);
  }
}
@media (max-width:720px){
  .app-shell,main,#content,.panel,.panel-body,.registry-list,.command-stats,.command-stat{min-width:0;max-width:100%}
  .command-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .registry-tools input,.registry-tools select{min-width:0;max-width:100%}
  :is(.registry-panel,.diagnostic-list) .account-row .actions{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    width:100%;
    gap:7px;
  }
  :is(.registry-panel,.diagnostic-list) .account-row .actions .btn{width:100%;min-width:0}
}

.rental-brand .dota-brand-mark{width:23px;height:29px}.rental-brand .dota-brand-mark .xs-star-logo-image{width:20px;height:24px}.sidebar .brand .dota-brand-mark{width:32px;height:36px;flex-shrink:0}.sidebar .brand .dota-brand-mark .xs-star-logo-image{width:28px;height:33px}

.sidebar .brand .dota-rent-avatar{width:36px;height:36px;object-fit:cover;border-radius:7px;flex-shrink:0;user-select:none;-webkit-user-drag:none}

@media (min-width:721px){
  .sidebar{padding:0}
  .sidebar .brand,.sidebar .seller-pill,.sidebar .back-link{flex-shrink:0}
  .sidebar nav{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(236,91,100,.45) transparent}
  .sidebar nav::-webkit-scrollbar{display:block;width:4px}
  .sidebar nav::-webkit-scrollbar-thumb{border-radius:4px;background:rgba(236,91,100,.45)}
  .sidebar nav button{min-height:44px;margin:3px 0;border-radius:8px}
  .sidebar nav button .line-icon{width:17px;height:17px;flex:0 0 17px;transform:scale(1.15)}
  .sidebar .brand .dota-rent-avatar{width:40px;height:40px;flex:0 0 40px}
  .sidebar .brand{min-height:78px}
}
@media (min-width:1101px){
  .app-shell{grid-template-columns:232px minmax(0,1fr)}
  .sidebar .brand{justify-content:flex-start;gap:12px;padding:14px 16px}
  .sidebar .brand>span:last-child{display:block;font-size:14px}
  .sidebar .brand b{font-size:16px}
  .sidebar .brand small{font-size:10px;margin-top:4px}
  .sidebar .seller-pill{justify-content:flex-start;min-height:38px;padding:10px 16px;font-size:11px}
  .sidebar .seller-pill span:nth-child(2){display:block;font-size:11px}
  .sidebar .seller-pill b{display:block;font-size:9px}
  .sidebar nav{padding:10px 8px}
  .sidebar nav button,.sidebar nav button:not(.active){justify-content:flex-start;padding:0 12px;gap:12px;font-size:14px;line-height:1.25}
  .sidebar nav button em{display:inline-block;padding:3px 6px;font-size:10px}
  .sidebar nav button .new{display:inline-block;font-size:9px}
  .sidebar .nav-label{padding:18px 12px 6px;font-size:9px}
  .sidebar .nav-label:after{content:none}
  .sidebar .back-link{margin:8px 12px 12px;padding:12px 6px;font-size:12px}
  .sidebar .back-link:after{content:none}
}
@media (min-width:721px) and (max-width:1100px){
  .app-shell{grid-template-columns:88px minmax(0,1fr)}
  .sidebar .brand{padding:14px 10px}
  .sidebar nav{padding:8px 6px}
  .sidebar nav button,.sidebar nav button:not(.active){padding:0 12px;gap:0;font-size:0}
}
@media (max-width:720px){
  .sidebar nav button,.sidebar nav button:not(.active){min-width:54px;min-height:48px}
  .sidebar nav button .line-icon{width:17px;height:17px;flex:0 0 17px;transform:scale(1.15)}
}
