/* Cleora growth: live chat widget, tournaments, partner area, free spins and account results. */

/* ---------- live chat ---------- */
.chat-dock{position:fixed;right:22px;bottom:22px;z-index:70;display:flex;flex-direction:column-reverse;align-items:flex-end;gap:12px;pointer-events:none}
.chat-dock>*{pointer-events:auto}
.chat-dock.muted{display:none}
.chat-fab{position:relative;display:inline-flex;align-items:center;gap:10px;min-height:52px;padding:0 20px 0 16px;border:1px solid #c9a05a;border-radius:99px;background:linear-gradient(160deg,#f3d99f,#b07a36);color:#1a130b;font:800 14px var(--sans);letter-spacing:.2px;box-shadow:0 14px 34px rgba(0,0,0,.45);cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}
.chat-fab:hover{transform:translateY(-2px);box-shadow:0 18px 40px rgba(0,0,0,.55)}
.chat-fab:focus-visible{outline:2px solid var(--gold-bright);outline-offset:3px}
.chat-fab-icon svg{display:block;width:22px;height:22px}
.chat-dock.online .chat-fab::after{content:"";position:absolute;top:6px;left:34px;width:9px;height:9px;border:2px solid #f3d99f;border-radius:50%;background:#5cc36b}
.chat-dock.open .chat-fab{background:#17120d;color:var(--gold);border-color:#6a512f}
.chat-badge{position:absolute;top:-6px;right:-4px;display:grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:99px;background:#d9533f;color:#fff;font-size:11px;font-weight:800;box-shadow:0 0 0 2px #0c0b09}
#chat-dock [hidden],#promo-tournaments [hidden]{display:none!important}
.hub-form textarea{display:block;width:100%;min-height:96px;margin-top:7px;padding:12px 13px;border:1px solid #5d492d;border-radius:10px;background:#0c0a08;color:#f7eddd;font:inherit;font-size:14px;line-height:1.5;color-scheme:dark;outline:0;resize:vertical}
.hub-form textarea:focus{border-color:#e2bd78}
.partner-apply>label:not(.hub-switch){margin-top:16px}
.chat-panel{display:flex;flex-direction:column;width:min(380px,calc(100vw - 28px));height:min(560px,calc(100vh - 120px));border:1px solid #6a512f;border-radius:18px;background:linear-gradient(180deg,#17120d,#0d0b09);box-shadow:0 26px 60px rgba(0,0,0,.6);overflow:hidden;color:#f4e7d0}
.chat-panel[hidden]{display:none}
.chat-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid #3a2e1f;background:linear-gradient(135deg,#2b1f11,#140f0b)}
.chat-head strong{display:block;color:#f7e9cf;font:700 22px/1.1 var(--serif)}
.chat-status{display:inline-flex;align-items:center;gap:7px;margin-top:5px;color:#b4a38a;font-size:12px;font-weight:700}
.chat-status i{width:8px;height:8px;border-radius:50%;background:#8f806c}
.chat-status.on i{background:#5cc36b;box-shadow:0 0 0 3px rgba(92,195,107,.2)}
.chat-head small{display:block;margin-top:3px;color:#8f806c;font-size:11px}
.chat-min{display:grid;place-items:center;width:34px;height:34px;border:1px solid #5a4630;border-radius:50%;background:transparent;color:#e6c178;font-size:20px;line-height:1;cursor:pointer}
.chat-min:hover{background:#231a0e}
.chat-start{display:grid;gap:12px;padding:18px;overflow:auto}
.chat-intro,.chat-hello{margin:0;color:#cbb892;font-size:13px;line-height:1.55}
.chat-hello{color:#f3d597;font-weight:800}
.chat-start label{display:grid;gap:6px;color:#b4a38a;font-size:11px;font-weight:800;letter-spacing:.5px;text-transform:uppercase}
.chat-start label small{color:#8f806c;font-weight:600;letter-spacing:0;text-transform:none}
.chat-start input,.chat-start select,.chat-start textarea,.chat-compose textarea{width:100%;padding:11px 12px;border:1px solid #4a3a24;border-radius:10px;background:#0f0c09;color:#f4e7d0;font:500 14px var(--sans);resize:none}
.chat-start input:focus,.chat-start select:focus,.chat-start textarea:focus,.chat-compose textarea:focus{outline:none;border-color:#c9a05a;box-shadow:0 0 0 3px rgba(201,160,90,.18)}
.chat-start .gold-button{justify-self:stretch}
.chat-fine{margin:0;color:#8f806c;font-size:11px;line-height:1.5}
.chat-log{flex:1;display:flex;flex-direction:column;gap:10px;margin:0;padding:16px;list-style:none;overflow-y:auto;overscroll-behavior:contain}
.chat-msg{max-width:84%;padding:10px 13px;border-radius:14px;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.chat-msg p{margin:0;white-space:pre-wrap}
.chat-msg b{display:block;margin-bottom:3px;color:#e6c178;font-size:11px;letter-spacing:.3px}
.chat-msg time{display:block;margin-top:4px;color:rgba(26,19,11,.6);font-size:10px;text-align:right}
.chat-msg.mine{align-self:flex-end;border-bottom-right-radius:4px;background:linear-gradient(160deg,#f0d397,#c08c45);color:#1a130b}
.chat-msg.desk{align-self:flex-start;border:1px solid #3a2e1f;border-bottom-left-radius:4px;background:#1b150f;color:#f1e2c6}
.chat-msg.desk time{color:#8f806c}
.chat-msg.system{align-self:center;max-width:92%;padding:6px 12px;border:1px dashed #4a3a24;background:transparent;color:#a8977d;font-size:12px;text-align:center}
.chat-bottom{border-top:1px solid #3a2e1f;background:#120e0b}
.chat-compose{display:grid;grid-template-columns:1fr 48px;gap:8px;padding:12px 12px 6px}
.chat-compose .gold-button{min-height:48px;padding:0;font-size:18px}
.chat-foot{display:flex;justify-content:flex-end;padding:0 14px 8px}
.chat-foot .hub-link{margin:0;padding:4px 0;border:0;background:none;color:#a8977d;font-size:12px;font-weight:700;cursor:pointer}
.chat-foot .hub-link:hover{color:#e6c178}
.chat-ended{display:grid;gap:12px;padding:16px}
.chat-rate p,.chat-rated{margin:0 0 6px;color:#cbb892;font-size:13px}
.chat-rate div{display:flex;gap:6px}
.chat-rate button{width:40px;height:40px;border:1px solid #5a4630;border-radius:10px;background:#17120d;color:#6a5233;font-size:20px;cursor:pointer}
.chat-rate div:hover button{color:#e6c178}
.chat-rate button:hover~button{color:#6a5233}
@media (max-width:760px){
  .chat-dock{right:12px;bottom:84px}
  .chat-fab{min-height:48px;padding:0 14px}
  .chat-fab-label{display:none}
  .chat-dock.online .chat-fab::after{left:auto;right:6px}
  .chat-panel{position:fixed;inset:auto 8px 8px 8px;width:auto;height:min(78vh,620px)}
}

/* ---------- tournaments ---------- */
.tour-list{display:grid;gap:18px}
.tour-card{display:grid;gap:16px;padding:22px;border:1px solid #6a512f;border-radius:20px;background:linear-gradient(160deg,#1b150f,#0d0b09)}
.tour-card.live{border-color:#c9a05a;box-shadow:0 0 0 1px rgba(201,160,90,.25),0 18px 40px rgba(0,0,0,.35)}
.tour-card.finished{opacity:.9}
.tour-head h3{margin:8px 0 0;color:#f7e9cf;font:700 clamp(26px,3vw,36px)/1 var(--serif)}
.tour-head p{margin:6px 0 0;color:#a9957d;font-size:13px;line-height:1.55}
.tour-state{display:inline-flex;align-items:center;gap:7px;padding:4px 11px;border:1px solid #5a4630;border-radius:99px;color:#cdb991;font-size:11px;font-weight:800;letter-spacing:.8px;text-transform:uppercase}
.tour-state.live{border-color:#5f7a44;color:#bfe0a0}
.tour-state.live::before{content:"";width:7px;height:7px;border-radius:50%;background:#5cc36b;animation:tour-pulse 1.6s ease-in-out infinite}
@keyframes tour-pulse{50%{opacity:.35}}
.tour-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.tour-facts div{padding:12px 14px;border:1px solid #3d3020;border-radius:12px;background:#120e0b}
.tour-facts span{display:block;color:#a08f76;font-size:10px;font-weight:800;letter-spacing:.6px;text-transform:uppercase}
.tour-facts strong{display:block;margin-top:4px;color:#f3e2c2;font:700 20px var(--serif);font-variant-numeric:tabular-nums}
.tour-games{display:flex;flex-wrap:wrap;gap:8px}
.tour-game{display:grid;gap:2px;padding:9px 13px;border:1px solid #4a3a24;border-radius:12px;background:#120e0b;color:#efdcb9;text-align:left;cursor:pointer}
.tour-game:hover{border-color:#c9a05a;background:#1d160f}
.tour-game b{font-size:13px}
.tour-game small{color:#8f806c;font-size:11px}
.tour-scope{margin:0;color:#cbb892;font-size:13px}
.tour-split{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(200px,.8fr);gap:14px;align-items:start}
.tour-board .tour-empty{display:block;padding:18px;color:#8f806c;text-align:center}
.tour-side{padding:14px 16px;border:1px solid #3d3020;border-radius:16px;background:#120e0b}
.tour-prizes{display:grid;gap:6px;margin:10px 0 0;padding:0;list-style:none}
.tour-prizes li{display:flex;justify-content:space-between;color:#cbb892;font-size:13px}
.tour-prizes b{color:#f0d397;font:700 16px var(--serif)}
.tour-side small{display:block;margin-top:8px;color:#8f806c;font-size:11px}
.tour-me{margin:0;padding:12px 14px;border:1px solid #4a3a24;border-radius:12px;background:#17120d;color:#cbb892;font-size:13px}
.tour-me b{color:#f3d597}
.tour-rules{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0;padding:0;list-style:none;color:#8f806c;font-size:11px}
.tour-rules li::before{content:"· ";color:#6a5233}
@media (max-width:860px){
  .tour-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tour-split{grid-template-columns:1fr}
  .tour-card{padding:18px}
}

/* ---------- account: search, custom range, results ---------- */
.hub-toolbar-search{margin-top:10px;align-items:flex-end}
.hub-search{flex:1 1 260px;min-width:0}
.hub-search input{width:100%;min-height:40px;padding:0 14px 0 38px;border:1px solid #4a3a24;border-radius:99px;background:#0f0c09 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a8977d' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") no-repeat 13px center/16px;color:#f4e7d0;font:500 13px var(--sans)}
.hub-search input:focus{outline:none;border-color:#c9a05a;box-shadow:0 0 0 3px rgba(201,160,90,.18)}
.hub-range{display:flex;flex-wrap:wrap;gap:10px}
.hub-range label{display:grid;gap:4px;color:#a08f76;font-size:10px;font-weight:800;letter-spacing:.6px;text-transform:uppercase}
.hub-range input{min-height:40px;padding:0 12px;border:1px solid #4a3a24;border-radius:10px;background:#0f0c09;color:#f4e7d0;font:500 13px var(--sans);color-scheme:dark}
.hub-results{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.hub-result{padding:16px;border:1px solid var(--hub-line,#4a3a24);border-radius:14px;background:#130f0b}
.hub-result>strong{display:block;margin:8px 0 10px;font-size:26px}
.hub-result dl{display:grid;gap:5px;margin:0}
.hub-result dl div{display:flex;justify-content:space-between;gap:10px;color:#a8977d;font-size:12px}
.hub-result dd{margin:0;color:#e9d6b3;font-variant-numeric:tabular-nums}
@media (max-width:900px){.hub-results{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---------- account: partner, friends, spins ---------- */
.ref-share{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:12px;margin:16px 0 4px}
.ref-share label{display:grid;gap:6px;color:#a08f76;font-size:10px;font-weight:800;letter-spacing:.6px;text-transform:uppercase}
.ref-copy{display:flex;gap:8px}
.ref-copy input{flex:1;min-width:0;min-height:42px;padding:0 12px;border:1px solid #4a3a24;border-radius:10px;background:#0f0c09;color:#f3d597;font:700 13px var(--sans)}
.ref-copy .outline-button{min-height:42px;padding:0 14px;font-size:12px;white-space:nowrap}
.hub-friends .hub-tr{grid-template-columns:minmax(0,1.3fr) 120px 150px minmax(120px,auto)}
.hub-friends .gold-button,.partner-codes .outline-button,.hub-spins .gold-button,.hub-spins .outline-button{min-height:34px;padding:0 14px;font-size:12px}
.partner-deal{display:grid;gap:8px;margin:14px 0 0;padding:0;list-style:none}
.partner-deal li{position:relative;padding-left:22px;color:#cbb892;font-size:13px;line-height:1.55}
.partner-deal li::before{content:"✓";position:absolute;left:0;top:0;color:#e6c178;font-weight:800}
.partner-deal b{color:#f3d597}
.partner-tiers{margin-top:14px}
.partner-tiers .hub-tr{grid-template-columns:minmax(0,1fr) 120px;min-height:44px}
.partner-apply{margin-top:18px;padding-top:18px;border-top:1px solid #3a2e1f}
.partner-apply .hub-switch span{line-height:1.55}
.partner-apply .hub-switch .hub-link{margin:0;padding:0}
.partner-codes{margin-top:12px}
.partner-codes .hub-tr{grid-template-columns:minmax(110px,.8fr) minmax(0,2fr) 140px auto}
.ref-link-cell code{display:block;overflow:hidden;color:#cbb892;font:600 12px ui-monospace,Consolas,monospace;text-overflow:ellipsis;white-space:nowrap}
.partner-newcode{margin-top:14px}
.partner-months{overflow-x:auto}
.partner-months .hub-tr{grid-template-columns:minmax(130px,1.3fr) repeat(3,minmax(50px,.5fr)) repeat(3,minmax(90px,1fr))}
.partner-players .hub-tr{grid-template-columns:minmax(0,1.2fr) 110px minmax(0,1fr) 110px 110px}
.partner-payouts .hub-tr{grid-template-columns:minmax(0,1fr) 140px 110px}
.hub-spins .hub-tr{grid-template-columns:minmax(0,1.6fr) 110px 120px auto}
.hub-spins .hub-tr.expired,.hub-spins .hub-tr.used{opacity:.55}
.hub-spins .hub-tr>span small{display:block}
.notification-item .notification-link{margin-top:12px;min-height:34px;padding:0 14px;font-size:12px}
@media (max-width:760px){
  .ref-share{grid-template-columns:1fr}
  .hub-friends .hub-tr,.partner-codes .hub-tr,.partner-players .hub-tr,.hub-spins .hub-tr{grid-template-columns:minmax(0,1fr) auto;row-gap:6px}
  .hub-friends .hub-th,.partner-codes .hub-th,.partner-players .hub-th{display:none}
  .partner-months .hub-tr{min-width:680px}
}
