/* COMPANION-RESPONSIVE-2026-08-22: bounded desktop, tablet and mobile presentation. */
.companion-hub{isolation:isolate;inline-size:min(100%,1600px);margin-inline:auto;padding-bottom:max(18px,env(safe-area-inset-bottom))}.companion-hub :is(.ch-hero,.ch-panel,.ch-overview-hero,.ch-commission-hero,.ch-settings-section){min-inline-size:0;max-inline-size:100%}.ch-tabs-shell{position:relative;min-inline-size:0;margin-block:14px}.ch-tabs-scroll{scroll-snap-type:inline proximity;overscroll-behavior-inline:contain}.ch-tabs button{scroll-snap-align:start;touch-action:pan-x}.ch-table-wrap{position:relative;min-inline-size:0;max-inline-size:100%;overscroll-behavior-inline:contain}.ch-table th,.ch-table td{vertical-align:middle}.ch-settings-section summary span{min-inline-size:0}.ch-settings-section summary b,.ch-settings-section summary small{overflow-wrap:anywhere}
@media (max-width:1200px){.ch-hero{padding:20px}.ch-head-actions{justify-content:flex-start}.ch-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.ch-maintenance-kpis,.gb-admin-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:820px){.companion-hub{gap:12px;padding-bottom:max(84px,env(safe-area-inset-bottom))}.ch-hero,.ch-panel{border-radius:18px;padding:15px}.ch-head{gap:14px}.ch-head-actions{display:flex!important;flex-wrap:wrap!important;overflow:visible;gap:8px}.ch-head-actions .btn,.ch-head-actions .ch-icon-btn{flex:1 1 170px;min-inline-size:0}.ch-head-actions .ch-icon-btn{max-inline-size:48px}.ch-tabs-shell{margin-inline:0;gap:0}.ch-tab-arrow{display:none}.ch-tabs-scroll{border:1px solid var(--ch-line);border-radius:15px;background:var(--ch-mint)}.ch-tabs{padding:5px;gap:4px}.ch-tabs button{min-block-size:40px;padding-inline:12px;font-size:12px}.ch-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.ch-kpi{min-block-size:96px;padding:14px}.ch-kpi strong{font-size:19px;overflow-wrap:anywhere}.ch-overview-hero,.ch-commission-hero{padding:18px;gap:14px;border-radius:18px}.ch-overview-hero-actions,.ch-commission-hero-actions{inline-size:100%;align-items:stretch}.ch-overview-hero-actions .btn,.ch-commission-hero-actions .btn{flex:1 1 160px}.ch-panel-head{align-items:flex-start}.ch-panel-head>.btn{inline-size:auto;max-inline-size:100%}.ch-tree-toolbar,.ch-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.ch-tree-toolbar>*:first-child,.ch-filters>*:first-child{grid-column:1/-1}.ch-tree-node{margin-inline-start:calc(min(var(--depth),3)*7px)}.ch-node-card{grid-template-columns:32px minmax(0,1fr) auto;gap:8px;padding:10px}.ch-node-card .ch-stat{display:none!important}.ch-person{min-inline-size:0}.ch-table-wrap{margin-inline:0;padding-block-end:6px}.ch-table{min-inline-size:720px!important}.ch-settings .ch-table{min-inline-size:760px!important}.ch-settings-foot{position:sticky;inset-block-end:8px;z-index:3;padding:9px;background:var(--ch-card);border:1px solid var(--ch-line);border-radius:14px;box-shadow:0 10px 28px rgba(20,72,47,.12)}.ch-maintenance-tools,.ch-overview-tools{display:grid;grid-template-columns:minmax(0,1fr) auto auto}.ch-maintenance-tools input,.ch-overview-tools input{grid-column:1/-1;min-inline-size:0;inline-size:100%}}
@media (max-width:520px){.companion-hub{padding-inline:0}.ch-hero,.ch-panel{padding:13px;border-radius:16px}.ch-head h2{font-size:22px}.ch-head-actions{display:grid!important;grid-template-columns:1fr 1fr}.ch-head-actions .btn{inline-size:100%}.ch-head-actions .ch-icon-btn{max-inline-size:none}.ch-filters,.ch-tree-toolbar{grid-template-columns:1fr}.ch-filters>*:first-child,.ch-tree-toolbar>*:first-child{grid-column:auto}.ch-kpis,.ch-maintenance-kpis,.gb-admin-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.ch-kpi{min-block-size:92px}.ch-overview-hero-actions,.ch-commission-hero-actions,.ch-row-actions{display:grid;grid-template-columns:1fr}.ch-overview-hero-actions .btn,.ch-commission-hero-actions .btn,.ch-row-actions .btn{inline-size:100%}.ch-panel-head>.btn{inline-size:100%}.ch-settings-foot{display:grid;grid-template-columns:1fr}.ch-settings-foot .btn{inline-size:100%}.ch-maintenance-tools,.ch-overview-tools{grid-template-columns:1fr 1fr}.ch-maintenance-tools input,.ch-overview-tools input{grid-column:1/-1}.ch-pagination{font-size:11px}}
@media (max-width:360px){.ch-head-actions{grid-template-columns:1fr}.ch-kpis,.ch-maintenance-kpis,.gb-admin-kpis{grid-template-columns:1fr}.ch-tabs button{padding-inline:10px}.ch-node-card{grid-template-columns:30px minmax(0,1fr)}.ch-node-card>.ch-status{grid-column:2;justify-self:start}}
/* Tables choose compact columns/cards instead of a global forced 720px canvas. */
@media(max-width:820px){.ch-table{min-inline-size:0!important}.ch-settings .ch-table{min-inline-size:0!important}.ch-kpi strong{overflow-wrap:normal}}
@media(max-width:767px){.ch-overview-compact .ch-mobile-action-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding-top:10px;border-top:1px solid var(--ch-line)}.ch-overview-compact .ch-mobile-action-row>*{min-width:0}.ch-overview-compact .ch-mobile-label{color:#668176;font-size:11px;font-weight:700;white-space:nowrap}.ch-overview-compact .ch-approve-member-btn{width:auto!important;min-width:130px;max-width:calc(100% - 80px);height:38px;min-height:38px;padding:0 14px;border-radius:10px;font-size:14px;font-weight:700;line-height:1;white-space:nowrap;display:inline-flex!important;align-items:center;justify-content:center;flex:0 0 auto!important;align-self:auto!important}.ch-overview-compact .ch-approved-badge{display:inline-flex;align-items:center;min-height:32px;padding:0 10px;border-radius:999px;white-space:nowrap}.ch-financial-overview{padding-bottom:max(22px,env(safe-area-inset-bottom))}}@media(max-width:390px){.ch-overview-compact .ch-approve-member-btn{height:36px;min-height:36px;padding:0 12px;font-size:13px;min-width:0}}
/* Overview has separate semantic desktop and mobile markup. */
.ch-overview-mobile{display:none}.ch-overview-desktop{display:block}.ch-overview-compact{width:100%;min-width:0;table-layout:fixed}.ch-overview-compact th,.ch-overview-compact td{vertical-align:middle}.ch-overview-compact .ch-col-member{width:20%}.ch-overview-compact .ch-col-rank{width:13%}.ch-overview-compact .ch-col-sales{width:18%}.ch-overview-compact .ch-col-commission{width:14%}.ch-overview-compact .ch-col-benefits{width:11%}.ch-overview-compact .ch-col-total{width:12%}.ch-overview-compact .ch-col-action{width:12%}
@media(max-width:767px){.ch-overview-desktop{display:none}.ch-overview-mobile{display:grid;gap:12px}.ch-mobile-member-card{padding:16px;border:1px solid var(--ch-line);border-radius:16px;background:var(--ch-card)}.ch-mobile-member-head{display:grid;gap:3px;padding-bottom:12px;border-bottom:1px solid var(--ch-line)}.ch-mobile-member-head strong{font-size:14px}.ch-mobile-member-head small,.ch-mobile-overview-row small{color:#668176;font-size:12px}.ch-mobile-overview-row{display:flex;justify-content:space-between;gap:14px;padding-top:11px}.ch-mobile-overview-row>span{color:#668176;font-size:12px}.ch-mobile-overview-row>div{text-align:right}.ch-mobile-overview-row small{display:block;margin-top:3px}.ch-overview-mobile .ch-mobile-action-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding-top:10px;border-top:1px solid var(--ch-line)}.ch-overview-mobile .ch-mobile-label{color:#668176;font-size:12px;font-weight:700}.ch-overview-mobile .ch-approve-member-btn{width:auto;min-width:130px;max-width:calc(100% - 80px);height:38px;min-height:38px;padding:0 14px;border-radius:10px;font-size:14px;font-weight:700;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;flex:none;align-self:auto}.ch-overview-mobile .ch-approved-badge{display:inline-flex;align-items:center;min-height:32px;padding:0 10px;border-radius:999px;white-space:nowrap}.ch-overview-mobile .ch-money{display:inline-block;white-space:nowrap;word-break:keep-all;overflow-wrap:normal;font-variant-numeric:tabular-nums}}@media(max-width:390px){.ch-overview-mobile .ch-approve-member-btn{height:36px;min-height:36px;padding:0 12px;font-size:13px;min-width:0}}

/* Companion Hub shell: isolate it from the similarly named Community hero.
   The concise banner has four controls after copy-only cleanup, so it must not
   reserve the former editorial hero height. */
.companion-hub .ch-hero{display:block;min-height:0;padding:18px 24px;color:var(--ch-text);background:linear-gradient(135deg,var(--ch-card) 55%,var(--ch-mint));border:1px solid var(--ch-line);border-radius:24px}.companion-hub .ch-head{align-items:flex-start;gap:0}.companion-hub .ch-head>div:first-child{max-width:none}.companion-hub .ch-filters{grid-template-columns:minmax(220px,1.3fr) minmax(165px,.85fr) minmax(140px,.7fr) minmax(150px,.8fr);align-items:center;gap:10px;margin-top:12px}.companion-hub .ch-filters .ch-note{min-height:43px;display:flex;align-items:center;margin:0;padding:9px 12px}.companion-hub .ch-filters .btn{min-height:43px;white-space:nowrap}
@media(max-width:1100px){.companion-hub .ch-hero{padding:18px 20px}.companion-hub .ch-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.companion-hub .ch-filters>*:first-child{grid-column:auto}}
@media(max-width:760px){.companion-hub .ch-hero{padding:15px;border-radius:18px}.companion-hub .ch-head{align-items:stretch;flex-direction:column}.companion-hub .ch-head-actions{justify-content:flex-start}.companion-hub .ch-filters{grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.companion-hub .ch-filters>*{min-width:0}.companion-hub .ch-filters>*:first-child{grid-column:1/-1}.companion-hub .ch-filters .btn{width:100%}}
@media(max-width:480px){.companion-hub .ch-hero{padding:13px;border-radius:16px}.companion-hub .ch-filters{grid-template-columns:1fr}.companion-hub .ch-filters>*:first-child{grid-column:auto}.companion-hub .ch-head-actions{display:grid!important;grid-template-columns:1fr 1fr}.companion-hub .ch-head-actions>*{width:100%}}
