.trial-badge[hidden], .trial-overlay[hidden], #loginTry[hidden], #trialForm[hidden], #trialSubscribe[hidden] { display: none !important; }
.trial-badge { border: 1px solid rgba(230,55,70,.35); background: rgba(180,35,50,.08); border-radius: 999px; color: var(--text-primary); font: 500 .72rem Outfit,sans-serif; white-space: nowrap; padding: .4rem .65rem; cursor: pointer; }
.trial-badge:hover, .trial-badge:focus-visible { border-color: #e63746; background: rgba(230,55,70,.14); }
.trial-empty { color: #ff949e; }
.login-try { margin-top: .5rem; width: 100%; border: 1px solid rgba(230,55,70,.5); background: rgba(230,55,70,.08); }
.trial-overlay { position: fixed; inset: 0; z-index: 12000; background: rgba(0,0,0,.72); backdrop-filter: blur(7px); display: flex; align-items: center; justify-content: center; padding: 1rem; }
.trial-dialog { position: relative; width: min(100%,440px); max-height: calc(100dvh - 2rem); overflow-y: auto; padding: 1.75rem; border: 1px solid rgba(230,55,70,.3); border-radius: 1.1rem; background: #1a1a1e; color: #f4f4f6; box-shadow: 0 20px 70px rgba(0,0,0,.5); }
.trial-kicker { padding-right: 1.6rem; color: #ee6370; font-size: .7rem; letter-spacing: .14em; text-transform: uppercase; margin-bottom: .75rem; }
.trial-dialog h2 { font: 600 1.6rem Outfit,sans-serif; margin: 0 1.5rem .6rem 0; line-height: 1.2; }
.trial-dialog p { font-size: .9rem; line-height: 1.6; color: #aaaab5; margin: .8rem 0; }
.trial-dialog #trialSummary { color: #f4f4f6; font-weight: 500; }
.trial-beta { border-left: 2px solid #e63746; padding-left: .75rem; }
.trial-beta strong { color: #e5e5eb; font-weight: 500; }
.trial-close { position: absolute; top: .7rem; right: .7rem; width: 2rem; height: 2rem; background: transparent; border: 0; color: #aaaab5; font-size: 1.5rem; cursor: pointer; }
.trial-check { margin: 1.1rem 0 .8rem; padding: 1rem; border: 1px solid rgba(185,136,255,.2); border-radius: .7rem; background: linear-gradient(145deg,rgba(185,136,255,.065),rgba(255,255,255,.015)); box-shadow: 0 5px 16px rgba(0,0,0,.2); }
.trial-check-heading { display: flex; align-items: center; gap: .45rem; color: #c9a5ff; font: 500 .8rem Outfit,sans-serif; }
.trial-check-heading svg { width: 1.3rem; height: 1.3rem; flex: 0 0 auto; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; }
.trial-dialog .trial-question { margin: .75rem 0 .4rem; color: #f4f4f6; font: 500 1.08rem/1.4 Outfit,sans-serif; }
.trial-dialog .trial-check-invite { margin: 0 0 .7rem; font-size: .83rem; line-height: 1.5; }
.trial-hint { color: #c7bed8; font-size: .83rem; }
.trial-hint summary { cursor: pointer; min-height: 32px; padding: .3rem 0; }
.trial-dialog .trial-hint p { margin: .2rem 0 .6rem; font-size: .83rem; color: #c7bed8; }
.trial-answer-row { display: flex; align-items: center; justify-content: space-between; gap: .7rem; margin-top: .65rem; font-size: .85rem; color: #c7c7d0; }
.trial-answer-row input { box-sizing: border-box; width: 4rem; min-height: 44px; flex: 0 0 auto; border: 1px solid #686073; border-radius: .45rem; padding: .45rem; background: #232329; color: white; font: 500 1.15rem Outfit,sans-serif; text-align: center; text-transform: uppercase; }
.trial-answer-row input:focus-visible { outline: 2px solid #b988ff; outline-offset: 3px; }
.trial-another { display: flex; align-items: center; gap: .4rem; min-height: 36px; border: 0; background: none; color: #aaaab5; font: inherit; font-size: .8rem; padding: .5rem 0 0; cursor: pointer; }
.trial-another:hover { color: #c9a5ff; }
.trial-another:disabled { cursor: wait; opacity: .5; }
.trial-hint summary:focus-visible,.trial-another:focus-visible { outline: 2px solid #b988ff; outline-offset: 3px; border-radius: .2rem; }
.trial-dialog { scrollbar-width: thin; scrollbar-color: #716179 #1a1a1e; overscroll-behavior: contain; }
#trialEnter { width: 100%; }
#trialSubscribe { display: block; color: #ee6370; text-align: center; font-size: .9rem; margin-top: 1rem; text-underline-offset: 4px; }
#trialError { color: #ff949e; font-size: .85rem; line-height: 1.5; margin: .5rem 0; }
.admin-trial-dot { display: none; width: 7px; height: 7px; border-radius: 50%; background: #b988ff; box-shadow: 0 0 8px rgba(185,136,255,.55); flex-shrink: 0; }
.has-trial-alert .admin-trial-dot { display: inline-block; }
.admin-header-btn .admin-trial-dot { position: absolute; bottom: 3px; right: 3px; }
.trial-country-list { display: flex; flex-wrap: wrap; gap: .5rem; margin: 1rem 0; }
.trial-country { display: flex; flex-direction: column; text-align: left; gap: .2rem; background: rgba(255,255,255,.025); border: 1px solid rgba(255,255,255,.1); border-radius: .55rem; color: #dddde5; padding: .55rem .7rem; cursor: pointer; font: inherit; font-size: .8rem; }
.trial-country small { color: #9999a5; font-size: .7rem; }
.trial-country.selected { border-color: #a577e2; background: rgba(165,119,226,.08); }
.trial-visitor { width: 100%; text-align: left; background: none; color: inherit; font: inherit; cursor: pointer; }
.trial-visitor .item-title, .trial-visitor .item-sub { display: block; }
.trial-visitor:disabled { cursor: default; opacity: .6; }
.trial-pager { display: flex; gap: .7rem; align-items: center; justify-content: center; margin-top: 1rem; }
.guest-trial .settings-section:has(#saveSessionsToggle) .settings-hint { color: #aaaab5; }
@media(max-width:768px) {
    body.has-access-badge .app-header { --mobile-header-controls-width: 10.7rem; }
    .trial-badge { padding: .4rem .5rem; font-size: .67rem; }
    .trial-dialog { padding: 1.35rem; }
    #adminTrialTotals { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .trial-visitor { gap: .5rem; flex-wrap: wrap; }
    .trial-visitor .item-meta { text-align: left; }
}

.trial-account-actions { display:grid;grid-template-columns:1fr 1fr;gap:.65rem;margin-top:1rem; }
.trial-action { display:flex;align-items:center;justify-content:center;min-height:44px;border:1px solid rgba(230,55,70,.45);border-radius:.55rem;background:rgba(230,55,70,.08);color:#f4f4f6;font:500 .85rem Outfit,sans-serif;cursor:pointer;text-decoration:none;padding:.6rem; }
.trial-action:hover,.trial-action:focus-visible { border-color:#e63746;background:rgba(230,55,70,.16); }
#trialSubscribe.trial-action { margin:0;color:#ee6370;font-size:.85rem; }
.trial-leave { grid-column:1/-1;justify-self:center;background:none;border:0;color:#aaaab5;font:400 .8rem Outfit,sans-serif;cursor:pointer;min-height:36px;text-decoration:underline;text-underline-offset:3px; }
.trial-account-actions:has(#trialSignIn[hidden]) { grid-template-columns:1fr; }
#trialTestReset[hidden],#trialSignin[hidden],#trialSigninBack[hidden],#trialSignIn[hidden],#trialLeave[hidden] { display:none!important; }
.trial-signing-in #trialTestReset,.trial-signing-in #trialAllowanceCopy,.trial-signing-in #trialRetentionCopy,.trial-signing-in .trial-beta,.trial-signing-in #trialForm,.trial-signing-in #trialAccountActions,.trial-signing-in #loginTry { display:none!important; }
#trialSignin #loginForm { margin:1rem 0 0;padding:0;background:none;border:0;box-shadow:none;backdrop-filter:none; }
.trial-back { margin-top:1rem;min-height:40px;background:none;border:0;color:#aaaab5;font:inherit;font-size:.85rem;cursor:pointer;text-decoration:underline;text-underline-offset:3px; }

/* Advisory trial review uses the existing dialog theme, with no nested cards. */
.admin-review-dot { display:none; width:7px; height:7px; border-radius:50%; background:#fb923c; box-shadow:0 0 7px rgba(251,146,60,.6); flex-shrink:0; }
.has-review-alert .admin-review-dot { display:inline-block; animation:trial-review-pulse 1.8s ease-in-out infinite; }
#adminBtn .admin-review-dot { position:absolute; top:3px; left:3px; }
.trial-review-warning { color:#fdba74; border-color:rgba(251,146,60,.35); }
.trial-review-dialog { width:min(100%,650px); }
.trial-review-row { display:flex; align-items:center; gap:.75rem; padding:.8rem 0; border-bottom:1px solid rgba(255,255,255,.1); }
.trial-review-row .item-main { border:0; background:transparent; color:inherit; text-align:left; font:inherit; flex:1; min-width:0; cursor:pointer; }
.trial-review-row .item-title,.trial-review-row .item-sub { display:block; overflow-wrap:anywhere; }
.trial-review-row .item-title { font-size:.95rem; }
.trial-review-row .item-sub { margin-top:.4rem; font-size:.85rem; color:#aaaab5; line-height:1.5; }
.trial-review-row .admin-action-btn { flex-shrink:0; }
@keyframes trial-review-pulse { 50% { opacity:.3; } }
@media(prefers-reduced-motion:reduce) { .has-review-alert .admin-review-dot { animation:none; } }
@media(max-width:480px) { .trial-review-row { flex-wrap:wrap; }.trial-review-row .item-main { flex-basis:100%; }.trial-review-dialog { padding:1.25rem; } }
