/* GROUPPY V45: owner claim, settings forms, add-server fit. Only targeted fixes. */
.tb-owner-claim-link{
  appearance:none;border:0;background:transparent;color:#fff;font:inherit;font-weight:900;cursor:pointer;padding:0;
  text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;
}
.tb-owner-claim-link:hover{color:#8d7cff;text-shadow:0 0 16px rgba(125,98,255,.45)}
.tb-owner-claim-link.is-owned{color:#31e797;text-decoration:none;cursor:pointer}

.tbv45-toast-wrap{position:fixed;top:18px;right:18px;z-index:99999;display:grid;gap:10px;max-width:min(420px,calc(100vw - 28px))}
.tbv45-toast{display:flex;align-items:center;gap:12px;padding:16px 18px;border-radius:10px;font-weight:800;box-shadow:0 18px 50px rgba(0,0,0,.28);animation:tbv45Slide .18s ease-out both}
.tbv45-toast.warn{background:#fff5c7;color:#c07a12;border:1px solid rgba(214,156,43,.35)}
.tbv45-toast.success{background:#d9fff0;color:#0f8a55;border:1px solid rgba(47,231,151,.35)}
.tbv45-toast.error{background:#ffe0e0;color:#b52a2a;border:1px solid rgba(255,80,80,.35)}
.tbv45-toast i{font-style:normal;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:rgba(0,0,0,.08);font-weight:900}
@keyframes tbv45Slide{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}

.tbv45-claim-backdrop{position:fixed;inset:0;z-index:99998;background:rgba(0,0,0,.72);backdrop-filter:blur(5px);display:grid;place-items:center;padding:20px}
.tbv45-claim-modal{width:min(680px,100%);border-radius:16px;background:#101014;color:#fff;border:1px solid rgba(255,255,255,.12);box-shadow:0 28px 90px rgba(0,0,0,.65);position:relative;padding:26px}
.tbv45-claim-close{position:absolute;right:14px;top:10px;width:32px;height:32px;border:0;border-radius:50%;background:transparent;color:#aeb6cc;font-size:26px;line-height:1;cursor:pointer}
.tbv45-claim-note{background:#eefbff;color:#5b93ab;padding:16px 18px;border-radius:2px;font-weight:600;line-height:1.45;margin-bottom:18px}
.tbv45-claim-row{display:flex;gap:10px;align-items:flex-start;margin:12px 0;font-size:16px;line-height:1.35}
.tbv45-claim-row b{min-width:150px;color:#fff}.tbv45-claim-row span{color:#fff;word-break:break-word}.tbv45-claim-row strong{color:#fff;word-break:break-word}
.tbv45-claim-actions{display:grid;gap:10px;margin-top:18px}.tbv45-claim-actions .btn{width:100%;justify-content:center}.tbv45-claim-error{display:none;margin-top:12px;color:#ffb1b1;font-weight:700}.tbv45-claim-error.show{display:block}
.tbv45-claim-modal.is-loading .btn{opacity:.72;pointer-events:none}

.tbv45-settings-layout .tbv45-settings-panel{padding:42px 48px;min-height:360px}
.tbv45-settings-panel h1{font-size:clamp(42px,5vw,68px);line-height:.95;margin:0 0 28px;font-weight:900;letter-spacing:-.04em}
.tbv45-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,8vw,140px);align-items:start;border-top:1px solid rgba(255,255,255,.06);padding-top:28px}
.tbv45-settings-form{display:grid;gap:14px;max-width:360px;margin:0 auto;width:100%}.tbv45-settings-form h2{font-size:18px;margin:0 0 4px;color:#fff}
.tbv45-settings-form input{height:54px;border-radius:10px;border:1px solid rgba(255,255,255,.11);background:rgba(0,0,0,.24);color:#fff;padding:0 18px;font-size:16px;font-weight:700;outline:none}
.tbv45-settings-form input:focus{border-color:#6d66ff;box-shadow:0 0 0 3px rgba(109,102,255,.15)}
.tbv45-settings-form .btn{height:56px;border-radius:10px;margin-top:2px}.tbv45-notice{padding:14px 16px;border-radius:12px;margin:0 0 18px;font-weight:800}.tbv45-notice.success{background:rgba(47,231,151,.13);color:#31e797;border:1px solid rgba(47,231,151,.25)}.tbv45-notice.error{background:rgba(255,85,85,.12);color:#ffb2b2;border:1px solid rgba(255,85,85,.25)}

/* button in add-server row should never leave the cabinet card */
#addServerForm.add-server-form,
#addServerForm.add-server-form-v36,
.add-server-form.add-server-form-v36{
  grid-template-columns:minmax(170px,1fr) minmax(140px,.8fr) minmax(140px,.8fr) minmax(128px,auto) !important;
  gap:14px !important;align-items:center !important;overflow:visible !important;max-width:100% !important;
}
#addServerForm .btn,
.add-server-form-v36 .btn{min-width:128px !important;max-width:100% !important;white-space:nowrap !important;padding-left:18px !important;padding-right:18px !important;justify-content:center !important}

@media (max-width:980px){
  .tbv45-settings-grid{grid-template-columns:1fr;gap:26px}.tbv45-settings-form{max-width:100%;margin:0}.tbv45-settings-layout .tbv45-settings-panel{padding:32px 24px}
  #addServerForm.add-server-form,#addServerForm.add-server-form-v36,.add-server-form.add-server-form-v36{grid-template-columns:1fr !important}
  #addServerForm .btn,.add-server-form-v36 .btn{width:100% !important}
}
@media (max-width:640px){
  .tbv45-toast-wrap{top:10px;right:10px}.tbv45-claim-modal{padding:20px}.tbv45-claim-row{display:block}.tbv45-claim-row b{display:block;min-width:0;margin-bottom:4px}
}
