.lab-bonus-page{
    --lab-blue:#0a7cff;
    --lab-blue-dark:#0868d5;
    --lab-brand-a:#00f8dd;
    --lab-brand-b:#01a9be;
    max-width:1120px;
    margin:0 auto;
    padding:18px 20px 70px;
}

.lab-bonus-hero{
    padding:36px 34px;
    border:1px solid #e8edf2;
    border-radius:22px;
    background:linear-gradient(135deg,rgba(0,248,221,.12),rgba(1,169,190,.06) 45%,#fff 80%);
    text-align:center;
}

.lab-bonus-hero__eyebrow{
    display:inline-flex;
    margin-bottom:10px;
    padding:7px 12px;
    border-radius:999px;
    background:#fff;
    color:#087d86;
    font-size:13px;
    font-weight:700;
}

.lab-bonus-hero h1{
    margin:0 0 10px;
    font-size:clamp(28px,4vw,44px);
    line-height:1.12;
}

.lab-bonus-hero p{
    max-width:700px;
    margin:0 auto;
    color:#4b5563;
    font-size:17px;
    line-height:1.55;
}

.lab-bonus-guest-card,
.lab-bonus-progress-card,
.lab-bonus-history,
.lab-bonus-rules{
    margin-top:24px;
    padding:24px;
    border:1px solid #e7ebef;
    border-radius:18px;
    background:#fff;
}

.lab-bonus-guest-card{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:24px;
}

.lab-bonus-guest-card h2,
.lab-bonus-history h2,
.lab-bonus-rules h2{
    margin:0 0 8px;
    font-size:24px;
}

.lab-bonus-guest-card p{
    margin:0;
    max-width:650px;
    color:#667085;
}

.lab-bonus-actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
}

.lab-bonus-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:46px;
    padding:0 20px;
    border-radius:11px;
    font-weight:700;
    text-decoration:none !important;
}

.lab-bonus-button--primary{
    background:var(--lab-blue);
    color:#fff !important;
}

.lab-bonus-button--primary:hover{
    background:var(--lab-blue-dark);
}

.lab-bonus-button--secondary{
    border:1px solid #d8dee5;
    background:#fff;
    color:#20242a !important;
}

.lab-bonus-dashboard{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
    margin-top:24px;
}

.lab-bonus-stat{
    padding:22px;
    border:1px solid #e7ebef;
    border-radius:18px;
    background:#fff;
}

.lab-bonus-stat--balance{
    border-color:rgba(1,169,190,.35);
    background:linear-gradient(135deg,rgba(0,248,221,.10),rgba(1,169,190,.06));
}

.lab-bonus-stat span,
.lab-bonus-stat small{
    display:block;
    color:#697386;
}

.lab-bonus-stat strong{
    display:block;
    margin:7px 0 3px;
    font-size:28px;
    line-height:1.15;
}

.lab-bonus-progress-card__text{
    display:flex;
    justify-content:space-between;
    gap:18px;
    align-items:flex-end;
}

.lab-bonus-progress-card__text div span{
    display:block;
    margin-top:3px;
    color:#697386;
}

.lab-bonus-progress{
    height:10px;
    margin-top:16px;
    overflow:hidden;
    border-radius:999px;
    background:#edf0f3;
}

.lab-bonus-progress span{
    display:block;
    height:100%;
    border-radius:inherit;
    background:linear-gradient(90deg,var(--lab-brand-a),var(--lab-brand-b));
}

.lab-bonus-progress-card--max{
    text-align:center;
    background:linear-gradient(135deg,rgba(0,248,221,.10),rgba(1,169,190,.06));
}

.lab-bonus-levels{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
    margin-top:24px;
}

.lab-bonus-level{
    position:relative;
    padding:17px;
    border:1px solid #e5e9ee;
    border-radius:14px;
    background:#fff;
}

.lab-bonus-level.is-current{
    border:2px solid var(--lab-blue);
    padding:16px;
    box-shadow:0 8px 22px rgba(10,124,255,.10);
}

.lab-bonus-level.is-current::after{
    content:'Ваш уровень';
    position:absolute;
    top:-10px;
    right:10px;
    padding:3px 8px;
    border-radius:999px;
    background:var(--lab-blue);
    color:#fff;
    font-size:10px;
    font-weight:700;
}

.lab-bonus-level__top{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:10px;
}

.lab-bonus-level__top strong{
    font-size:17px;
}

.lab-bonus-level__top span{
    font-size:22px;
    font-weight:800;
    color:var(--lab-blue);
}

.lab-bonus-level__from{
    margin-top:7px;
    color:#70798a;
    font-size:13px;
}

.lab-bonus-history__list{
    margin-top:14px;
    border-top:1px solid #eef1f4;
}

.lab-bonus-history__item{
    display:flex;
    justify-content:space-between;
    gap:18px;
    align-items:center;
    padding:15px 0;
    border-bottom:1px solid #eef1f4;
}

.lab-bonus-history__main strong,
.lab-bonus-history__main span{
    display:block;
}

.lab-bonus-history__main span{
    margin-top:4px;
    color:#87909e;
    font-size:13px;
}

.lab-bonus-history__points{
    white-space:nowrap;
    font-size:18px;
    font-weight:800;
}

.lab-bonus-history__points.is-plus{color:#16833a;}
.lab-bonus-history__points.is-minus{color:#c73535;}
.lab-bonus-history__empty{margin-bottom:0;color:#697386;}

.lab-bonus-rules__grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    margin-top:16px;
}

.lab-bonus-rules__grid div{
    display:flex;
    gap:10px;
    padding:15px;
    border-radius:12px;
    background:#f7f9fb;
}

.lab-bonus-rules__grid strong{
    color:var(--lab-blue);
}

.lab-bonus-notice{
    margin-top:24px;
    padding:18px;
    border-radius:14px;
    background:#fff4e5;
}

@media (max-width:800px){
    .lab-bonus-dashboard{grid-template-columns:1fr;}
    .lab-bonus-levels{grid-template-columns:repeat(2,minmax(0,1fr));}
    .lab-bonus-guest-card{align-items:flex-start;flex-direction:column;}
}

@media (max-width:520px){
    .lab-bonus-page{padding:8px 14px 90px;}
    .lab-bonus-hero{padding:26px 18px;}
    .lab-bonus-hero p{font-size:15px;}
    .lab-bonus-levels{grid-template-columns:1fr 1fr;gap:8px;}
    .lab-bonus-level{padding:13px;}
    .lab-bonus-level.is-current{padding:12px;}
    .lab-bonus-level__top{align-items:flex-start;flex-direction:column;gap:3px;}
    .lab-bonus-progress-card__text{align-items:flex-start;flex-direction:column;}
    .lab-bonus-rules__grid{grid-template-columns:1fr;}
    .lab-bonus-history__item{align-items:flex-start;}
    .lab-bonus-actions{width:100%;}
    .lab-bonus-button{flex:1;}
}
