.ad-slot {
    background: transparent;
    border: 0;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #8892a3;
    font-size: 0.85rem;
    text-align: center;
    padding: 0;
    overflow: hidden;
    box-sizing: border-box;
}

.ad-top,
.ad-bottom {
    max-width: 728px;
    min-height: 90px;
    margin-left: auto;
    margin-right: auto;
}

.ad-sidebar {
    width: 160px;
    max-width: 100%;
    min-height: 300px;
    margin-right: auto;
    margin-left: auto;
}

.ad-mobile-leaderboard {
    width: min(100%, 320px);
    min-height: 50px;
}

.ad-in-content {
    width: min(100%, 300px);
    min-height: 250px;
    max-width: 300px;
    margin: 1.5rem auto;
}

.ad-slot iframe,
.ad-slot img {
    max-width: 100%;
}


/* Balance pill */

.balance-pill {
    background: #f1f9f5;
    border: 1px solid #cdeee0;
    border-radius: 8px;
    padding: 0.6rem;
    text-align: center;
}

.balance-pill .coin {
    display: block;
    color: #198754;
    font-size: 0.85rem;
    font-weight: 700;
}

.balance-pill .amount {
    font-family: monospace;
    font-size: 0.9rem;
}


/* Golden heading highlight */

.gold-highlight {
    position: relative;
    display: inline-block;
    color: #1a1f2b !important;
    font-weight: 800 !important;
    padding: 0.1em 0.3em;
    z-index: 1;
    isolation: isolate;
}

.gold-highlight::before {
    content: "";
    position: absolute;
    top: 8%;
    right: -4px;
    bottom: 8%;
    left: -4px;

    background: linear-gradient(
        100deg,
        #d4af37 0%,
        #f5d576 35%,
        #d4af37 60%,
        #b8860b 100%
    );

    border-radius: 6px 10px 8px 12px;
    transform: skewX(-6deg) rotate(-0.5deg);
    z-index: -1;
}


/* Stopwatch */

.stopwatch {
    width: 180px;
    height: 180px;
    margin: 0 auto;
}

.stopwatch-track {
    fill: none;
    stroke: #e3e8f0;
    stroke-width: 8;
}

.stopwatch-progress {
    fill: none;
    stroke: #198754;
    stroke-width: 8;
    stroke-linecap: round;
    transform: rotate(-90deg);
    transform-origin: center;
    transition: stroke-dashoffset 1s linear;
}

.stopwatch-time {
    fill: #1a1f2b;
    font-size: 1.6rem;
    font-weight: 700;
}

.stopwatch-label {
    fill: #8892a3;
    font-size: 0.75rem;
}


/* Responsive design */

@media (max-width: 768px) {
    .ad-top,
    .ad-bottom {
        width: 100%;
        min-height: 70px;
    }

    .ad-sidebar {
        min-height: 200px;
    }

    .gold-highlight {
        font-size: 0.9em;
        padding: 0.12em 0.25em;
    }

    .stopwatch {
        width: 150px;
        height: 150px;
    }
}

.captcha-box {
    border: 1px solid #cdeee0;
    border-radius: .9rem;
    background: #f1f9f5;
    padding: 1rem;
}

.registration-card,
.terms-card {
    border-radius: 1.25rem;
}

.profile-menu-button {
    border: 0;
    background: transparent;
    padding: 0;
    color: #198754;
}

.profile-menu-button::after {
    margin-left: .35rem;
    vertical-align: middle;
}

.profile-avatar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #fff;
    font-weight: 800;
    background: linear-gradient(145deg, #20a86b, #126e48);
    box-shadow: 0 8px 20px rgba(25, 135, 84, .24);
}

.profile-avatar-small {
    width: 36px;
    height: 36px;
    font-size: .9rem;
}

.profile-avatar-large {
    width: 92px;
    height: 92px;
    font-size: 2.1rem;
}

.profile-dropdown {
    width: min(290px, 92vw);
    border-radius: .9rem;
    overflow: hidden;
}

.profile-card {
    max-width: 620px;
    border-radius: 1.25rem;
}

.profile-details {
    border: 1px solid #e4e9ef;
    border-radius: 1rem;
    overflow: hidden;
}

.profile-detail-row {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    padding: .9rem 1rem;
    border-bottom: 1px solid #edf0f4;
}

.profile-detail-row:last-child {
    border-bottom: 0;
}

.profile-detail-row span {
    color: #718096;
}

.profile-detail-row strong {
    text-align: right;
    overflow-wrap: anywhere;
}

@media (max-width: 575.98px) {
    .profile-detail-row {
        display: block;
    }

    .profile-detail-row strong {
        display: block;
        margin-top: .25rem;
        text-align: left;
    }
}

.footer-ad-section {
    display: block;
    width: 100%;
    clear: both;
    padding: 1.25rem 12px .5rem;
}

.footer-top-ad {
    width: min(100%, 728px);
    min-height: 90px;
    visibility: visible !important;
}

@media (max-width: 767.98px) {
    .footer-top-ad {
        display: none !important;
    }
}
.coin-icon{width:28px;height:28px;object-fit:contain;vertical-align:middle;flex:0 0 28px}.coin-icon-sm{width:22px;height:22px;object-fit:contain;vertical-align:middle}.coin-heading{display:flex;align-items:center;justify-content:center;gap:.4rem}.coin-select-preview{display:flex;align-items:center;gap:.6rem;margin-bottom:.5rem;font-weight:600}

.coin-choice-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .55rem;
}

.coin-choice-btn {
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: center;
    gap: .2rem;
    padding: .8rem .35rem;
    border: 1px solid rgba(116, 129, 153, .22);
    border-radius: 1rem;
    background: linear-gradient(145deg, #fff, #f6f8fc);
    color: #1a1f2b;
    cursor: pointer;
    box-shadow: 0 5px 14px rgba(23, 34, 56, .06);
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.coin-choice-btn small { font-size: .67rem; overflow-wrap: anywhere; }
.coin-choice-btn:hover { border-color: #6f63f6; transform: translateY(-2px); box-shadow: 0 9px 20px rgba(65, 55, 180, .13); }
.coin-choice-btn.active { border-color: #6f63f6; background: linear-gradient(145deg, #f0efff, #e7f8ff); box-shadow: 0 0 0 3px rgba(111,99,246,.13), 0 9px 20px rgba(65,55,180,.12); }
.coin-choice-btn.loading { opacity: .72; }

.faucet-title .faucet-eyebrow {
    display: inline-block;
    padding: .4rem .75rem;
    border-radius: 999px;
    background: #eeecff;
    color: #5b50d6;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .08em;
}

.faucet-title h2 { margin: .65rem 0 .2rem; font-weight: 850; letter-spacing: -.03em; }
.faucet-title p { color: #718096; margin: 0; }

.faucet-modern-card {
    overflow: hidden;
    border: 1px solid rgba(116,129,153,.18);
    border-radius: 1.4rem;
    background: rgba(255,255,255,.96);
    box-shadow: 0 20px 55px rgba(31,38,76,.13) !important;
}

.faucet-modern-card .card-body { padding: 1.4rem; }

.modern-selected-coin {
    width: fit-content;
    padding: .55rem .8rem;
    border: 1px solid #dedbf9;
    border-radius: 999px;
    background: #f7f6ff;
    color: #45405e;
}

.selection-status-dot {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #20c77a;
    box-shadow: 0 0 0 4px rgba(32,199,122,.14);
}

.selected-claim-summary {
    border: 1px solid #dfe4f2;
    border-radius: 1rem;
    background: linear-gradient(135deg, #f8f9ff, #f1fbf8);
    color: #3b4254;
}

.faucet-modern-card #claimBtn {
    border: 0;
    border-radius: .9rem;
    background: linear-gradient(135deg, #6f63f6, #3f9be8);
    box-shadow: 0 10px 24px rgba(78,105,221,.27);
    font-weight: 750;
}

.faucet-modern-card #claimBtn:hover:not(:disabled) { transform: translateY(-1px); box-shadow: 0 13px 28px rgba(78,105,221,.34); }
.faucet-modern-card #claimBtn:disabled { background: #aab2c5; box-shadow: none; }
.faucet-modern-card .stopwatch-progress { stroke: #6f63f6; }

/* Modern FreeFaucet homepage */
.brand-logo { filter: drop-shadow(0 5px 9px rgba(65,72,170,.2)); }
.brand-name { color:#20243a; font-size:1.2rem; letter-spacing:-.035em; }
.brand-name span { color:#6f63f6; }

.home-hero {
    position: relative;
    overflow: hidden;
    margin-top: 1rem;
    padding-right: 1rem;
    padding-left: 1rem;
    border: 1px solid rgba(111,99,246,.13);
    border-radius: 2rem;
    background: radial-gradient(circle at 15% 10%, rgba(116,105,255,.18), transparent 32%), radial-gradient(circle at 90% 80%, rgba(43,182,238,.18), transparent 35%), linear-gradient(145deg,#fff,#f7f8ff);
    box-shadow: 0 22px 65px rgba(38,47,94,.1);
}
.hero-faucet-logo { width:68px; height:68px; margin-bottom:.45rem; filter:drop-shadow(0 9px 14px rgba(55,62,143,.2)); }
.home-hero h1 { font-size:clamp(2rem,5vw,3.5rem); letter-spacing:-.045em; }
.home-hero .lead { max-width:720px; margin-right:auto; margin-left:auto; }
.home-hero .btn { border:0; border-radius:999px; padding:.8rem 1.45rem; background:linear-gradient(135deg,#6f63f6,#299eea); box-shadow:0 11px 24px rgba(80,92,211,.25); }

.home-feature-card { border:1px solid rgba(125,136,158,.14); border-radius:1.25rem; box-shadow:0 13px 34px rgba(30,43,78,.08); transition:transform .2s ease,box-shadow .2s ease; }
.home-feature-card:hover { transform:translateY(-4px); box-shadow:0 18px 42px rgba(30,43,78,.13); }
.home-feature-card .card-body { padding:1.5rem; }

.coin-showcase-section { padding:1.7rem; border-radius:1.6rem; background:linear-gradient(145deg,#f8f9ff,#f3fbf9); }
.coin-showcase-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.85rem; }
.home-coin-card { display:flex; align-items:center; gap:.7rem; min-width:0; padding:.85rem; border:1px solid rgba(111,99,246,.14); border-radius:1rem; background:#fff; color:#20243a; text-align:left; text-decoration:none; box-shadow:0 7px 18px rgba(35,42,84,.07); transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease; }
.home-coin-card:hover { color:#20243a; transform:translateY(-3px); border-color:#776cf5; box-shadow:0 13px 27px rgba(62,52,161,.13); }
.home-coin-icon-wrap { display:grid; place-items:center; width:38px; height:38px; flex:0 0 38px; border-radius:11px; background:linear-gradient(145deg,#f5f3ff,#edf8ff); }
.home-coin-icon-wrap img,
.home-coin-icon-wrap .home-coin-image { width:28px !important; height:28px !important; max-width:28px !important; object-fit:contain; }
.home-coin-info { display:flex; min-width:0; flex:1; flex-direction:column; }
.home-coin-info strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.9rem; }
.home-coin-info small { color:#8992a8; font-weight:700; }
.home-coin-arrow { color:#776cf5; font-size:1.1rem; transition:transform .18s ease; }
.home-coin-card:hover .home-coin-arrow { transform:translateX(3px); }

@media (max-width: 991px) { .coin-showcase-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width: 575px) {
    .home-hero { border-radius:1.35rem; }
    .hero-faucet-logo { width:60px; height:60px; }
    .coin-showcase-section { padding:1rem; }
    .coin-showcase-grid { grid-template-columns:1fr; }
}

@media (max-width: 575px) {
    .coin-choice-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Modern profile UI — matches the faucet card language */
.profile-menu-button {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    min-height: 42px;
    padding: .2rem .65rem .2rem .25rem;
    border: 1px solid rgba(111, 99, 246, .2);
    border-radius: 999px;
    background: linear-gradient(145deg, #fff, #f4f3ff);
    color: #3f3a67;
    box-shadow: 0 7px 18px rgba(65, 55, 180, .11);
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.profile-menu-button:hover,
.profile-menu-button[aria-expanded="true"] {
    border-color: #776cf5;
    color: #37315f;
    transform: translateY(-1px);
    box-shadow: 0 10px 24px rgba(65, 55, 180, .18);
}

.profile-menu-name {
    max-width: 110px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: .82rem;
    font-weight: 800;
}

.profile-avatar {
    background: linear-gradient(135deg, #6f63f6, #299eea);
    box-shadow: 0 8px 20px rgba(78, 105, 221, .28);
}

.profile-avatar-small {
    width: 34px;
    height: 34px;
    border: 2px solid rgba(255,255,255,.9);
}

.profile-avatar-large {
    position: relative;
    width: 104px;
    height: 104px;
    border: 5px solid #fff;
    outline: 1px solid rgba(111,99,246,.18);
    font-size: 2.35rem;
    box-shadow: 0 16px 32px rgba(78,105,221,.28);
}

.profile-dropdown {
    margin-top: .65rem !important;
    border: 1px solid rgba(111,99,246,.13) !important;
    border-radius: 1.1rem;
    background: rgba(255,255,255,.98);
    box-shadow: 0 18px 45px rgba(31,38,76,.18) !important;
}

.profile-dropdown-head {
    border-bottom: 1px solid #eceafc;
    background: linear-gradient(135deg, #f5f3ff, #eef9ff);
}

.profile-dropdown-link {
    display: flex;
    align-items: center;
    gap: .65rem;
    margin: .15rem 0;
    padding: .65rem .75rem;
    border-radius: .7rem;
    font-weight: 700;
}

.profile-dropdown-link:hover {
    background: #f3f2ff;
    color: #5b50d6;
}

.profile-link-icon,
.profile-field-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    border-radius: 9px;
    background: #eeecff;
    color: #6257dc;
    font-size: .78rem;
    font-weight: 900;
}

.profile-title .profile-eyebrow {
    display: inline-block;
    padding: .4rem .75rem;
    border-radius: 999px;
    background: #eeecff;
    color: #5b50d6;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .08em;
}

.profile-title h1 {
    margin: .65rem 0 .2rem;
    font-size: clamp(1.8rem, 4vw, 2.35rem);
    font-weight: 850;
    letter-spacing: -.035em;
}

.profile-title p {
    margin: 0;
    color: #718096;
}

.profile-modern-card {
    background: radial-gradient(circle at 10% 5%, rgba(111,99,246,.1), transparent 30%), linear-gradient(145deg,#fff,#fbfcff);
}

.profile-details {
    border-color: #dfe4f2;
    background: linear-gradient(135deg, #f8f9ff, #f1fbf8);
}

.profile-detail-row {
    align-items: center;
    padding: 1rem;
    border-bottom-color: rgba(116,129,153,.13);
}

.profile-detail-row > span:first-child {
    display: flex;
    align-items: center;
    gap: .55rem;
    font-weight: 650;
}

.profile-status {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: .45rem;
    padding: .42rem .7rem;
    border-radius: 999px;
    font-size: .8rem;
}

.profile-status-ok {
    background: #e9f9f1;
    color: #168653;
}

.profile-status-error {
    background: #fff0f1;
    color: #c33d4d;
}

.profile-logout-button {
    display: block;
    width: 100%;
    padding: .8rem 1rem;
    border: 0;
    border-radius: .9rem;
    background: linear-gradient(135deg, #6f63f6, #3f9be8);
    color: #fff;
    text-decoration: none;
    font-weight: 750;
    box-shadow: 0 10px 24px rgba(78,105,221,.27);
    transition: transform .18s ease, box-shadow .18s ease;
}

.profile-logout-button:hover {
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 13px 28px rgba(78,105,221,.34);
}

/* Keep the profile control identical to the other navbar outline buttons. */
.navbar .profile-menu-button {
    min-height: 38px;
    padding: .25rem .65rem;
    border: 1px solid #198754;
    border-radius: .375rem;
    background: transparent;
    color: #198754;
    box-shadow: none;
    transform: none;
    font-size: .875rem;
    line-height: 1.5;
}

.navbar .profile-menu-button:hover,
.navbar .profile-menu-button:focus,
.navbar .profile-menu-button[aria-expanded="true"] {
    border-color: #198754;
    background: #198754;
    color: #fff;
    box-shadow: 0 0 0 .2rem rgba(25,135,84,.14);
    transform: none;
}

.navbar .profile-avatar-small {
    width: 23px;
    height: 23px;
    border: 0;
    background: rgba(25,135,84,.12);
    color: inherit;
    box-shadow: none;
    font-size: .7rem;
}

.navbar .profile-menu-button:hover .profile-avatar-small,
.navbar .profile-menu-button:focus .profile-avatar-small,
.navbar .profile-menu-button[aria-expanded="true"] .profile-avatar-small {
    background: rgba(255,255,255,.2);
}
