/* BANDIVO_WEB_LAYOUT_FIX_V1 */
/* BANDIVO_WEB_SOCIAL_PARITY_STYLE_V5472 */
.bsp-global-actions,.bsp-modal-backdrop{--bsp-primary:var(--primary,#6d5bd0);--bsp-teal:#27a49e;--bsp-red:#e45454;--bsp-green:#24a66a;--bsp-orange:#e1a02f;--bsp-text:var(--text,#26313d);--bsp-muted:var(--secondary,#737b86);--bsp-surface:var(--surface,#fff);--bsp-soft:var(--variant,#f3f5f6);--bsp-border:var(--border,#e5e7eb);font-family:inherit}
.bsp-global-actions button,.bsp-modal-backdrop button,.bsp-modal-backdrop input,.bsp-modal-backdrop select{font:inherit;border:0;box-sizing:border-box}
.bsp-global-actions{
position:fixed;
z-index:880;
top:auto;
right:auto;
left:14px;
bottom:calc(98px + env(safe-area-inset-bottom));
display:flex;
align-items:center;
gap:8px;
direction:ltr;
pointer-events:none
}
.bsp-global-actions[hidden]{display:none}
.bsp-action{position:relative;width:46px;height:46px;border:1px solid color-mix(in srgb,var(--bsp-border) 76%,transparent)!important;border-radius:16px;background:color-mix(in srgb,var(--bsp-surface) 92%,transparent);color:var(--bsp-primary);box-shadow:0 10px 28px #18233318;display:grid;place-items:center;backdrop-filter:blur(16px);cursor:pointer;transition:transform .18s,box-shadow .18s}
.bsp-action:active{transform:scale(.94)}
.bsp-action span{font-size:19px;font-weight:950}
.bsp-action em{position:absolute;right:-4px;top:-5px;min-width:20px;height:20px;padding:0 5px;border:2px solid var(--bsp-surface);border-radius:99px;background:var(--bsp-red);color:#fff;font-size:9px;font-style:normal;display:grid;place-items:center}
.bsp-league-action{background:linear-gradient(145deg,#6d5bd0,#4c31b1);color:#fff}
.bsp-modal-backdrop{position:fixed;z-index:1200;inset:0;padding:calc(env(safe-area-inset-top) + 18px) 16px calc(env(safe-area-inset-bottom) + 18px);background:#17202c80;backdrop-filter:blur(9px);display:flex;align-items:center;justify-content:center;direction:rtl}
.bsp-modal{width:min(520px,100%);max-height:min(780px,90dvh);overflow:auto;border:1px solid #ffffff77;border-radius:28px;background:var(--bsp-surface);color:var(--bsp-text);box-shadow:0 28px 80px #11182742;overscroll-behavior:contain}
.bsp-center-backdrop .bsp-modal{width:min(680px,100%)}
.bsp-modal-head{position:sticky;z-index:5;top:0;padding:18px 19px 14px;background:color-mix(in srgb,var(--bsp-surface) 94%,transparent);backdrop-filter:blur(18px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--bsp-border)}
.bsp-modal-head div{display:flex;flex-direction:column}.bsp-modal-head b{font-size:18px}.bsp-modal-head small{margin-top:3px;color:var(--bsp-muted);font-size:10px}.bsp-modal-head>button{width:37px;height:37px;border-radius:13px;background:var(--bsp-soft);color:var(--bsp-text);font-size:22px;cursor:pointer}
.bsp-modal-body,.bsp-help-list,.bsp-confirm{padding:15px;display:grid;gap:10px}
.bsp-loading{padding:48px 18px;text-align:center;color:var(--bsp-muted)}
.bsp-notification-list{display:grid;gap:9px}.bsp-notification{padding:13px;border:1px solid var(--bsp-border);border-radius:17px;display:grid;grid-template-columns:37px 1fr;gap:10px;align-items:center}.bsp-notification.is-unread{border-color:#6d5bd066;background:#6d5bd00c}.bsp-notification i{width:37px;height:37px;border-radius:13px;background:#eee9ff;display:grid;place-items:center;font-style:normal}.bsp-notification span{display:flex;flex-direction:column}.bsp-notification b{font-size:12px}.bsp-notification small{margin-top:4px;color:var(--bsp-muted);font-size:9px;line-height:1.8}
.bsp-primary,.bsp-danger,.bsp-secondary{min-height:45px;padding:10px 16px;border-radius:15px;font-weight:850;cursor:pointer;transition:opacity .18s,transform .18s}.bsp-primary{background:linear-gradient(135deg,#6d5bd0,#5635c4);color:#fff}.bsp-danger{background:var(--bsp-red);color:#fff}.bsp-secondary{background:var(--bsp-soft);color:var(--bsp-muted);border:1px solid var(--bsp-border)!important}.bsp-primary:disabled,.bsp-danger:disabled,.bsp-secondary:disabled{opacity:.5;cursor:default}.bsp-primary:not(:disabled):active,.bsp-danger:not(:disabled):active,.bsp-secondary:not(:disabled):active{transform:scale(.98)}
.bsp-empty{padding:30px 16px;display:flex;flex-direction:column;align-items:center;text-align:center}.bsp-empty i{font-size:34px;font-style:normal}.bsp-empty b{margin-top:8px}.bsp-empty small{margin-top:5px;color:var(--bsp-muted);font-size:9px}.bsp-empty button{margin-top:14px}.bsp-empty.compact{padding:18px}
.bsp-help-list article{padding:14px;border-radius:18px;background:var(--bsp-soft);display:grid;grid-template-columns:42px 1fr;gap:11px;align-items:center}.bsp-help-list article>i{width:42px;height:42px;border-radius:14px;background:#eee9ff;display:grid;place-items:center;font-style:normal;font-size:20px}.bsp-help-list span{display:flex;flex-direction:column}.bsp-help-list small{margin-top:4px;color:var(--bsp-muted);font-size:9px;line-height:1.75}
.bsp-confirm{text-align:center;justify-items:center;padding:24px}.bsp-confirm-icon{width:64px;height:64px;border-radius:22px;background:linear-gradient(145deg,#f0eaff,#ddd2ff);color:#6650c7;display:grid;place-items:center;font-size:26px;font-weight:950;box-shadow:0 9px 24px #4b2a8a1a}.bsp-confirm>p{margin:0;color:var(--bsp-muted);font-size:10px;line-height:1.9}.bsp-confirm>div:last-child{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:9px}
.bsp-avatar{width:44px;height:44px;border-radius:16px;background:linear-gradient(145deg,#d9ceff,#f2eeff);color:#6650c7;display:grid;place-items:center;font-weight:950;font-size:18px;box-shadow:0 5px 14px #4b2a8a1a;flex:none}
.bsp-center-tabs{position:sticky;z-index:4;top:70px;margin:10px 14px 0;padding:5px;border-radius:18px;background:var(--bsp-soft);display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.bsp-center-tabs button{min-height:42px;padding:7px 4px;border-radius:14px;background:transparent;color:var(--bsp-muted);font-size:11px;font-weight:800;cursor:pointer}.bsp-center-tabs button.active{background:linear-gradient(135deg,#7563d5,#5d45c5);color:#fff;box-shadow:0 8px 18px #6d5bd02b}.bsp-center-body{padding:14px;display:grid;gap:13px;background:linear-gradient(#fff0,var(--bsp-soft));min-height:260px}
.bsp-league-summary{padding:16px;border:1px solid var(--bsp-border);border-radius:22px;background:var(--bsp-surface);display:grid;grid-template-columns:repeat(3,1fr);box-shadow:0 9px 24px #17202c09}.bsp-league-summary div{display:flex;flex-direction:column;align-items:center}.bsp-league-summary div+div{border-right:1px solid var(--bsp-border)}.bsp-league-summary b{font-size:22px;color:var(--bsp-primary)}.bsp-league-summary small{margin-top:4px;color:var(--bsp-muted);font-size:9px}
.bsp-podium{overflow:hidden;border-radius:26px;background:linear-gradient(145deg,#29253f,#4f3999 62%,#6950ce);color:#fff;box-shadow:0 18px 42px #39237e2b}.bsp-podium>header{padding:17px 18px 0;display:flex;flex-direction:column;align-items:flex-start}.bsp-podium>header b{font-size:17px}.bsp-podium>header small{margin-top:4px;color:#ffffffb5;font-size:9px}.bsp-podium>div{height:235px;padding:12px 12px 0;display:grid;grid-template-columns:repeat(3,1fr);align-items:end;gap:6px;direction:ltr}.bsp-podium-place{position:relative;height:164px;padding:9px 5px;border-radius:22px 22px 0 0;background:linear-gradient(#ffffff24,#ffffff0e);border:1px solid #ffffff30;border-bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:space-between;direction:rtl}.bsp-podium-place.place-1{height:199px;background:linear-gradient(#ffd35e42,#ffffff14);box-shadow:0 -10px 40px #ffd45d21}.bsp-podium-place.place-2{background:linear-gradient(#e8edf242,#ffffff10)}.bsp-podium-place.place-3{background:linear-gradient(#d7854c42,#ffffff10)}.bsp-podium-place>i{font-style:normal;font-size:27px}.bsp-podium-place>.bsp-avatar{width:48px;height:48px;border-radius:18px}.bsp-podium-place>b{width:100%;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center}.bsp-podium-place>small{font-size:9px;color:#fff}.bsp-podium-place.empty{opacity:.25}
.bsp-section-title{padding:6px 3px 0;display:flex;flex-direction:column;align-items:flex-start}.bsp-section-title b{font-size:18px}.bsp-section-title small{margin-top:3px;color:var(--bsp-muted);font-size:9px;line-height:1.7}
.bsp-member-list,.bsp-friend-rows,.bsp-challenge-list{display:grid;gap:9px}.bsp-member-row{padding:11px;border:1px solid var(--bsp-border);border-radius:20px;background:var(--bsp-surface);display:grid;grid-template-columns:44px 44px minmax(0,1fr) 54px 58px;gap:8px;align-items:center;box-shadow:0 8px 20px #18233308}.bsp-member-row.is-self{border-color:#6d5bd052;background:#f1edff}.bsp-member-row>strong{width:44px;color:var(--bsp-primary);font-size:14px;text-align:center}.bsp-member-row>span{min-width:0;display:flex;flex-direction:column;align-items:flex-start}.bsp-member-row>span b{width:100%;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bsp-member-row>span small{margin-top:4px;color:var(--bsp-muted);font-size:8px}.bsp-member-row>em{display:flex;flex-direction:column;align-items:center;color:var(--bsp-teal);font-style:normal;font-size:12px;font-weight:900}.bsp-member-row>em small{font-size:7px;color:var(--bsp-muted)}
.bsp-member-action{min-height:41px;padding:5px;border-radius:14px;background:#eee9ff;color:var(--bsp-primary);display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:900;cursor:pointer}.bsp-member-action span{font-size:13px}.bsp-member-action small{font-size:6px;margin-top:2px}.bsp-member-action.compact{position:absolute;bottom:7px;min-width:34px;min-height:30px;padding:3px 7px;border-radius:11px}.bsp-member-action.status-friend{background:#e6f7ef;color:var(--bsp-green)}.bsp-member-action.status-outgoing{background:#fff4df;color:var(--bsp-orange)}.bsp-member-action:disabled{opacity:.72;cursor:default}.bsp-self-badge{padding:5px 8px;border-radius:9px;background:#ffffff25;color:#fff;font-size:8px}
.bsp-code-card{padding:17px;border-radius:23px;background:linear-gradient(145deg,#ede8ff,#f8f6ff);border:1px solid #6d5bd02a;display:flex;align-items:center;justify-content:space-between;gap:12px}.bsp-code-card>div{display:flex;flex-direction:column;align-items:flex-start}.bsp-code-card small{color:var(--bsp-muted);font-size:9px}.bsp-code-card b{margin-top:3px;color:var(--bsp-teal);font-size:18px;letter-spacing:.4px}.bsp-code-card button{padding:10px 13px;border-radius:14px;background:var(--bsp-surface);color:var(--bsp-primary);font-weight:850;cursor:pointer}.bsp-code-form{padding:13px;border-radius:20px;background:var(--bsp-surface);border:1px solid var(--bsp-border);display:grid;grid-template-columns:1fr auto;gap:8px}.bsp-code-form input{min-width:0;height:45px;padding:0 13px;border:1px solid var(--bsp-border);border-radius:14px;background:var(--bsp-soft);color:var(--bsp-text);direction:ltr;text-align:left}.bsp-code-form button{white-space:nowrap}
.bsp-friend-row{padding:11px;border:1px solid var(--bsp-border);border-radius:19px;background:var(--bsp-surface);display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:10px;align-items:center}.bsp-friend-row>span{display:flex;flex-direction:column;align-items:flex-start;min-width:0}.bsp-friend-row>span b{width:100%;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bsp-friend-row>span small{margin-top:4px;color:var(--bsp-muted);font-size:8px}.bsp-icon-danger{width:39px;height:39px;border-radius:13px;background:#e4545412;color:var(--bsp-red);font-size:16px;cursor:pointer}.bsp-dual-actions{display:grid;grid-template-columns:1fr 1fr;gap:5px}.bsp-dual-actions button{min-height:36px;padding:6px 9px;border-radius:11px;background:#fff0f0;color:var(--bsp-red);font-size:9px;font-weight:850;cursor:pointer}.bsp-dual-actions button.accept{background:#e5f7ee;color:var(--bsp-green)}.bsp-pending{padding:7px 9px;border-radius:11px;background:#fff4df;color:var(--bsp-orange);font-size:8px;font-weight:800}
.bsp-challenge-toolbar{padding:17px;border:1px solid var(--bsp-border);border-radius:23px;background:var(--bsp-surface);display:grid;gap:13px}.bsp-challenge-toolbar>div:first-child{display:flex;flex-direction:column;align-items:flex-start}.bsp-challenge-toolbar b{font-size:18px}.bsp-challenge-toolbar small{margin-top:4px;color:var(--bsp-muted);font-size:9px}.bsp-challenge-toolbar>div:last-child{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.bsp-challenge-card{padding:14px;border:1px solid var(--bsp-border);border-radius:22px;background:var(--bsp-surface);display:grid;gap:10px;box-shadow:0 8px 20px #18233308}.bsp-challenge-card>header{display:grid;grid-template-columns:40px minmax(0,1fr) 39px;gap:9px;align-items:center}.bsp-challenge-card>header>i{width:40px;height:40px;border-radius:14px;background:#fff5dd;display:grid;place-items:center;font-style:normal;font-size:19px}.bsp-challenge-card>header>span{display:flex;flex-direction:column;align-items:flex-start;min-width:0}.bsp-challenge-card>header b{width:100%;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bsp-challenge-card>header small{margin-top:4px;color:var(--bsp-muted);font-size:8px}.bsp-progress{display:grid;grid-template-columns:115px 1fr;gap:8px;align-items:center}.bsp-progress>span{display:flex;justify-content:space-between;gap:5px;font-size:8px;color:var(--bsp-teal)}.bsp-progress>span small{color:var(--bsp-muted)}.bsp-progress>div{height:7px;border-radius:99px;background:var(--bsp-soft);overflow:hidden;direction:ltr}.bsp-progress>div i{display:block;height:100%;border-radius:99px;background:var(--bsp-teal)}.bsp-progress.purple>span{color:var(--bsp-primary)}.bsp-progress.purple>div i{background:var(--bsp-primary)}
.bsp-challenge-form{padding:17px;display:grid;gap:12px}.bsp-challenge-form>label{display:grid;gap:6px;color:var(--bsp-muted);font-size:10px;font-weight:750}.bsp-challenge-form input,.bsp-challenge-form select{width:100%;height:47px;padding:0 13px;border:1px solid var(--bsp-border);border-radius:14px;background:var(--bsp-soft);color:var(--bsp-text)}.bsp-challenge-form label>small{font-size:8px;font-weight:500}.bsp-challenge-form fieldset{margin:0;padding:10px;border:1px solid var(--bsp-border);border-radius:16px}.bsp-challenge-form legend{padding:0 6px;color:var(--bsp-muted);font-size:10px}.bsp-challenge-form fieldset>div{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.bsp-challenge-form fieldset label{position:relative}.bsp-challenge-form fieldset input{position:absolute;opacity:0;width:1px;height:1px}.bsp-challenge-form fieldset span{height:39px;border-radius:12px;background:var(--bsp-soft);display:grid;place-items:center;color:var(--bsp-muted);font-size:9px;cursor:pointer}.bsp-challenge-form fieldset input:checked+span{background:#eee9ff;color:var(--bsp-primary);font-weight:900;box-shadow:inset 0 0 0 1px #6d5bd04d}.bsp-form-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.bsp-achievement-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.bsp-achievement-grid article{padding:14px;border:1px solid var(--bsp-border);border-radius:19px;background:var(--bsp-surface);display:grid;grid-template-columns:42px 1fr;gap:9px;align-items:center}.bsp-achievement-grid article>i{width:42px;height:42px;border-radius:14px;background:#fff5dd;display:grid;place-items:center;font-style:normal;font-size:20px}.bsp-achievement-grid article>span{display:flex;flex-direction:column;align-items:flex-start}.bsp-achievement-grid article b{font-size:11px}.bsp-achievement-grid article small{margin-top:3px;color:var(--bsp-muted);font-size:8px;line-height:1.6}
.bsp-friend-manager{margin:12px 0;padding:16px;border:1px solid color-mix(in srgb,#6d5bd0 23%,var(--bsp-border));border-radius:24px;background:linear-gradient(145deg,color-mix(in srgb,var(--bsp-surface) 96%,#6d5bd0),var(--bsp-surface));box-shadow:0 12px 32px #1823330c;direction:rtl}.bsp-friend-manager>header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:11px}.bsp-friend-manager>header>div{display:flex;flex-direction:column;margin-left:auto}.bsp-friend-manager>header b{font-size:16px}.bsp-friend-manager>header small{margin-top:3px;color:var(--bsp-muted);font-size:9px}.bsp-friend-manager>header>button{direction:ltr;padding:8px 10px;border-radius:13px;background:#eee9ff;color:var(--bsp-primary);font-size:9px;font-weight:850;cursor:pointer}.bsp-friend-list{display:grid;gap:8px}.bsp-friend-list article{padding:10px;border-radius:17px;background:var(--bsp-surface);border:1px solid var(--bsp-border);display:grid;grid-template-columns:44px minmax(0,1fr) 38px;gap:10px;align-items:center}.bsp-friend-list article>span{display:flex;flex-direction:column;min-width:0}.bsp-friend-list article>span b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bsp-friend-list article>span small{margin-top:4px;color:var(--bsp-muted);font-size:9px}.bsp-friend-list article>button{width:38px;height:38px;border-radius:13px;background:#e4545412;color:var(--bsp-red);font-size:16px;cursor:pointer}
.bsp-toast{position:fixed;z-index:1300;left:50%;bottom:calc(90px + env(safe-area-inset-bottom));transform:translate(-50%,18px);padding:11px 17px;border-radius:14px;background:#26313d;color:#fff;box-shadow:0 12px 32px #0003;font-size:11px;opacity:0;pointer-events:none;transition:.22s;white-space:nowrap}.bsp-toast.show{opacity:1;transform:translate(-50%,0)}.bsp-toast.is-error{background:#923c4a}
@media(max-width:620px){.bsp-global-actions{left:10px}.bsp-action{width:42px;height:42px;border-radius:15px}.bsp-modal-backdrop{padding:calc(env(safe-area-inset-top) + 8px) 8px calc(env(safe-area-inset-bottom) + 8px);align-items:flex-end}.bsp-modal{max-height:92dvh;border-radius:26px 26px 18px 18px}.bsp-center-tabs{top:70px;margin:8px 9px 0}.bsp-center-body{padding:10px}.bsp-podium>div{height:222px;padding-left:7px;padding-right:7px}.bsp-podium-place{height:153px}.bsp-podium-place.place-1{height:187px}.bsp-podium-place>.bsp-avatar{width:42px;height:42px}.bsp-member-row{grid-template-columns:36px 40px minmax(0,1fr) 42px 44px;padding:9px;gap:6px}.bsp-member-row>strong{width:36px;font-size:11px}.bsp-member-row>.bsp-avatar{width:40px;height:40px;border-radius:14px}.bsp-member-action{min-height:38px}.bsp-member-action small{display:none}.bsp-code-form{grid-template-columns:1fr}.bsp-code-form button{width:100%}.bsp-achievement-grid{grid-template-columns:1fr}.bsp-friend-manager{padding:13px;border-radius:21px}.bsp-friend-manager>header{align-items:stretch;flex-direction:column}.bsp-friend-manager>header>button{width:100%}.bsp-progress{grid-template-columns:100px 1fr}}
@media(max-width:380px){.bsp-center-tabs button{font-size:9px}.bsp-podium>div{gap:3px}.bsp-podium-place>b{font-size:8px}.bsp-member-row>em{display:none}.bsp-member-row{grid-template-columns:34px 38px minmax(0,1fr) 42px}.bsp-friend-row{grid-template-columns:40px minmax(0,1fr) auto}.bsp-dual-actions{grid-template-columns:1fr}.bsp-challenge-toolbar>div:last-child{grid-template-columns:1fr}}


/* BANDIVO_WEB_LAYOUT_FIX_V1_OVERRIDES */

.bsp-global-actions .bsp-action{
  pointer-events:auto;
}

.bsp-global-actions .bsp-league-action{
  width:44px;
  height:44px;
  border-radius:16px;
  box-shadow:
    0 10px 28px rgba(53,35,126,.22),
    0 2px 8px rgba(20,25,40,.10);
}

.bsp-friend-manager{
  position:relative;
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  clear:both;
  overflow:hidden;
  margin:14px 0 8px;
}

.bsp-friend-manager > header{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:9px;
  align-items:center;
}

.bsp-friend-manager > header > div{
  min-width:0;
  margin:0;
}

.bsp-friend-manager > header > button{
  max-width:100%;
  min-height:40px;
}

/* Never allow the social panel to become a floating/top overlay. */
#bandivoFriendManager{
  inset:auto !important;
  transform:none !important;
  z-index:auto !important;
}

/* Prevent social controls from colliding with app header controls. */
@media(max-width:620px){
  .bsp-global-actions{
    top:auto !important;
    right:auto !important;
    left:12px !important;
    bottom:calc(94px + env(safe-area-inset-bottom)) !important;
  }

  .bsp-global-actions .bsp-action{
    width:42px;
    height:42px;
    border-radius:15px;
  }

  .bsp-friend-manager{
    padding:13px;
    margin-top:12px;
    border-radius:21px;
  }

  .bsp-friend-manager > header{
    display:grid;
    grid-template-columns:1fr;
    gap:7px;
  }

  .bsp-friend-manager > header > button{
    width:100%;
  }
}
