:root{
    --gold:#b8924b;
    --gold-soft:#f5ead1;
    --gold-dark:#6f5525;
    --ink:#151515;
    --muted:#777;
    --line:#eadfca;
    --bg:#fffaf0;
    --surface:#ffffff;
    --danger:#b42318;
    --success:#087443;
    --warning:#9a6700;
    --shadow:0 18px 50px rgba(95,72,22,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
    color:var(--ink);
    background:linear-gradient(135deg,#fff 0%,#fff8eb 50%,#f9efd8 100%);
}
a{color:inherit}
button,input,select,textarea{font:inherit}
.app-shell{
    min-height:100vh;
    display:flex;
}
.sidebar{
    width:270px;
    background:rgba(255,255,255,.9);
    border-right:1px solid var(--line);
    padding:20px;
    position:sticky;
    top:0;
    height:100vh;
    display:flex;
    flex-direction:column;
    backdrop-filter:blur(12px);
}
.brand{
    display:flex;
    align-items:center;
    gap:12px;
    margin-bottom:28px;
}
.brand-mark{
    width:46px;
    height:46px;
    border-radius:16px;
    background:linear-gradient(135deg,var(--gold),#f8db94);
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:900;
    color:#fff;
    box-shadow:0 12px 30px rgba(184,146,75,.28);
}

.brand-logo{
    width:54px;
    height:54px;
    border-radius:18px;
    object-fit:cover;
    background:#fff;
    border:1px solid var(--line);
    box-shadow:0 12px 30px rgba(184,146,75,.22);
    display:block;
}
.login-card .brand-logo,
.public-card .brand-logo{
    width:76px;
    height:76px;
    border-radius:24px;
    margin-bottom:12px;
}
.sidebar .brand-logo{
    width:48px;
    height:48px;
    border-radius:16px;
    flex:0 0 auto;
}
@media (max-width:640px){
    .login-card .brand-logo,
    .public-card .brand-logo{
        width:68px;
        height:68px;
        border-radius:22px;
    }
}

.brand strong{display:block;font-size:15px}
.brand span,.profile span,.topbar p,.section-head p,.muted{color:var(--muted);font-size:13px}
.nav{display:flex;flex-direction:column;gap:6px;flex:1}
.nav-link{
    text-decoration:none;
    padding:12px 14px;
    border-radius:14px;
    color:#6b5b36;
    font-weight:700;
    transition:.18s ease;
}
.nav-link:hover,.nav-link.active{
    background:var(--gold-soft);
    color:var(--gold-dark);
    transform:translateX(3px);
}
.profile{
    display:flex;
    align-items:center;
    gap:10px;
    border-top:1px solid var(--line);
    padding-top:16px;
}
.avatar{
    width:38px;height:38px;border-radius:50%;
    background:#151515;color:#fff;
    display:flex;align-items:center;justify-content:center;
    font-weight:900;
}
.main{flex:1;padding:26px;min-width:0}
.topbar{
    display:flex;
    justify-content:space-between;
    gap:16px;
    align-items:center;
    background:rgba(255,255,255,.72);
    border:1px solid var(--line);
    border-radius:24px;
    padding:20px 22px;
    box-shadow:var(--shadow);
    margin-bottom:18px;
}
.topbar h1{margin:0;font-size:24px}
.topbar p{margin:4px 0 0}
.top-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.btn{
    border:none;
    border-radius:14px;
    padding:11px 16px;
    cursor:pointer;
    font-weight:800;
    text-decoration:none;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    transition:.18s ease;
}
.btn:hover{transform:translateY(-2px)}
.btn.primary{background:linear-gradient(135deg,var(--gold),#f6d98e);color:#fff;box-shadow:0 12px 24px rgba(184,146,75,.22)}
.btn.ghost{background:#fff;border:1px solid var(--line);color:var(--gold-dark)}
.btn.danger{background:#fff1ef;color:var(--danger);border:1px solid #ffd8d2}
.btn[disabled]{opacity:.55;cursor:not-allowed}
.section{display:none;animation:fadeUp .24s ease}
.section.active{display:block}
@keyframes fadeUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.section-head{
    margin:20px 0 16px;
}
.section-head h2{margin:0;font-size:22px}
.section-head p{margin:5px 0 0}
.section-head.with-action{display:flex;justify-content:space-between;align-items:center;gap:16px}
.stats-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:16px;
}
.stat-card,.panel,.mini-card,.login-card,.public-card{
    background:rgba(255,255,255,.86);
    border:1px solid var(--line);
    border-radius:24px;
    box-shadow:var(--shadow);
}
.stat-card{
    padding:20px;
    position:relative;
    overflow:hidden;
}
.stat-card:after{
    content:"";
    position:absolute;
    right:-24px;top:-24px;
    width:92px;height:92px;border-radius:50%;
    background:var(--gold-soft);
}
.stat-card span{color:var(--gold-dark);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.stat-card strong{display:block;font-size:34px;margin:8px 0 4px}
.stat-card small{color:var(--muted)}
.panel-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px;
    margin-top:18px;
}
.panel{padding:20px}
.panel h3{margin:0 0 12px}
.list-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:12px 0;
    border-bottom:1px solid var(--line);
}
.list-row:last-child{border-bottom:none}
.list-row strong{display:block}
.list-row small{color:var(--muted)}
.table-wrap{
    overflow:auto;
    border:1px solid var(--line);
    background:#fff;
    border-radius:20px;
    box-shadow:var(--shadow);
}
table{border-collapse:collapse;width:100%;min-width:760px}
th,td{padding:14px 16px;border-bottom:1px solid var(--line);text-align:left;font-size:14px}
th{background:#fff6e6;color:#6d5626;text-transform:uppercase;font-size:11px;letter-spacing:.06em}
tr:hover td{background:#fffaf0}
.badge{
    display:inline-flex;
    padding:5px 10px;
    border-radius:999px;
    font-size:12px;
    font-weight:900;
    text-transform:capitalize;
}
.badge.good{background:#ecfdf3;color:var(--success)}
.badge.warn{background:#fffaeb;color:var(--warning)}
.badge.bad{background:#fff1f3;color:var(--danger)}
.badge.neutral{background:#f4f4f5;color:#555}
.cards-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
}
.mini-card{padding:18px;transition:.18s ease}
.mini-card:hover{transform:translateY(-4px)}
.mini-card span{color:var(--gold-dark);font-weight:900;font-size:12px;text-transform:uppercase}
.mini-card h3{margin:8px 0}
.mini-card p{color:var(--muted);margin:0}
.alert{
    padding:13px 16px;
    border-radius:16px;
    margin:12px 0;
    font-weight:700;
}
.alert.success{background:#ecfdf3;color:var(--success);border:1px solid #bbf7d0}
.alert.error{background:#fff1f3;color:var(--danger);border:1px solid #ffd8d2}
.search-input{
    width:100%;
    border:1px solid var(--line);
    border-radius:16px;
    padding:13px 14px;
    margin-bottom:12px;
    outline:none;
}
.search-input:focus,input:focus,select:focus{border-color:var(--gold);box-shadow:0 0 0 4px rgba(184,146,75,.13)}
.modal{
    position:fixed;
    inset:0;
    display:none;
    align-items:center;
    justify-content:center;
    background:rgba(20,15,7,.52);
    backdrop-filter:blur(8px);
    padding:18px;
    z-index:50;
}
.modal.active{display:flex}
.modal-card{
    width:min(520px,100%);
    background:#fff;
    border:1px solid var(--line);
    border-radius:26px;
    padding:24px;
    box-shadow:0 30px 90px rgba(0,0,0,.22);
    position:relative;
    animation:pop .18s ease;
}
@keyframes pop{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}
.modal-close{
    position:absolute;
    top:14px;right:14px;
    width:36px;height:36px;border-radius:50%;
    border:1px solid var(--line);
    background:#fff;
    cursor:pointer;
    font-size:22px;
}
.stack{display:flex;flex-direction:column;gap:9px}
.stack label{font-size:13px;font-weight:800;color:#6d5626;margin-top:8px}
.stack input,.stack select{
    border:1px solid var(--line);
    border-radius:14px;
    padding:12px 13px;
    outline:none;
    background:#fff;
}
.link-danger{border:none;background:none;color:var(--danger);font-weight:800;cursor:pointer}
.login-body,.public-body{
    min-height:100vh;
    display:grid;
    place-items:center;
    padding:20px;
}
.login-card,.public-card{
    width:min(440px,100%);
    padding:28px;
    text-align:left;
}
.login-card h1,.public-card h1{margin:14px 0 4px}
.social-strip{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    margin-top:18px;
}
.social-strip a{
    padding:10px 12px;
    border-radius:999px;
    background:var(--gold-soft);
    color:var(--gold-dark);
    font-weight:800;
    text-decoration:none;
    font-size:13px;
}
@media (max-width:980px){
    .app-shell{display:block}
    .sidebar{width:auto;height:auto;position:relative}
    .nav{display:grid;grid-template-columns:repeat(4,1fr)}
    .topbar{flex-direction:column;align-items:flex-start}
    .stats-grid,.panel-grid,.cards-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
    .main{padding:14px}
    .sidebar{padding:14px}
    .nav{grid-template-columns:1fr 1fr}
    .stats-grid,.panel-grid,.cards-grid{grid-template-columns:1fr}
    .section-head.with-action{flex-direction:column;align-items:flex-start}
    .top-actions{width:100%}
    .top-actions .btn{flex:1}
}

/* Phase 3B public registration upgrades */
.community-bg{
    background:
        radial-gradient(circle at top left, rgba(184,146,75,.20), transparent 28%),
        linear-gradient(135deg,#fff 0%,#fffaf0 44%,#f8edd2 100%);
}
.community-card{
    width:min(720px,100%);
    border:1px solid var(--line);
    border-radius:30px;
    background:rgba(255,255,255,.88);
    box-shadow:var(--shadow);
    backdrop-filter:blur(14px);
}
.eyebrow{
    margin:14px 0 0;
    color:var(--gold-dark);
    font-size:12px;
    font-weight:900;
    letter-spacing:.14em;
    text-transform:uppercase;
}
.form-grid.two{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
}
.form-note{
    color:var(--muted);
    font-size:12px;
    margin-top:-4px;
}
.consent-box{
    border:1px solid var(--line);
    border-radius:18px;
    background:#fffaf0;
    padding:14px;
    margin:8px 0;
}
.check-line{
    display:flex!important;
    align-items:flex-start;
    gap:10px;
    font-weight:700!important;
    color:#6d5626!important;
    margin:6px 0!important;
    line-height:1.35;
}
.check-line input{width:auto;margin-top:2px;accent-color:var(--gold)}
.btn.big{padding:15px 20px;font-size:15px;justify-content:center}
.success-card{text-align:center}
.next-steps{
    margin:22px 0;
    padding:18px;
    border:1px solid var(--line);
    border-radius:22px;
    background:#fffaf0;
    text-align:left;
}
.next-steps h2{margin:0 0 6px;font-size:20px}
.social-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:10px;
    margin-top:14px;
}
.social-grid a,.disabled-link{
    display:block;
    padding:12px 14px;
    border-radius:14px;
    text-align:center;
    text-decoration:none;
    font-weight:900;
    border:1px solid var(--line);
    background:#fff;
    color:var(--gold-dark);
}
.social-grid a:hover{background:var(--gold-soft);transform:translateY(-1px)}
.whatsapp-link{background:#eafaf0!important;color:#087443!important;border-color:#b7ebc6!important}
.disabled-link{color:var(--muted);background:#f7f7f7}
@media (max-width:640px){
    .form-grid.two,.social-grid{grid-template-columns:1fr}
    .community-card{border-radius:22px;padding:22px}
}


/* Phase 3B.1 Logo Size Fix */
.brand-logo{
    width:42px !important;
    height:42px !important;
    max-width:42px !important;
    max-height:42px !important;
    border-radius:14px !important;
    object-fit:contain !important;
    padding:4px !important;
    background:#fff !important;
    box-shadow:0 8px 22px rgba(184,146,75,.18) !important;
}
.login-card .brand-logo,
.public-card .brand-logo,
.community-card .brand-logo{
    width:54px !important;
    height:54px !important;
    max-width:54px !important;
    max-height:54px !important;
    border-radius:18px !important;
    padding:5px !important;
    margin-bottom:10px !important;
}
.sidebar .brand-logo,
.brand .brand-logo{
    width:38px !important;
    height:38px !important;
    max-width:38px !important;
    max-height:38px !important;
    border-radius:13px !important;
    padding:4px !important;
    flex:0 0 38px !important;
}
@media (max-width:640px){
    .login-card .brand-logo,
    .public-card .brand-logo,
    .community-card .brand-logo{
        width:48px !important;
        height:48px !important;
        max-width:48px !important;
        max-height:48px !important;
        border-radius:16px !important;
    }
}


/* Phase 3C Structure Cleanup */
.public-actions{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    justify-content:center;
    margin-top:20px;
}
.public-actions .btn{
    text-decoration:none;
}
.community-links{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    justify-content:center;
    margin-top:18px;
}
.social-pill{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:10px 14px;
    border-radius:999px;
    background:rgba(184,146,75,.10);
    border:1px solid rgba(184,146,75,.28);
    color:#8b6a27;
    font-weight:700;
    font-size:13px;
    text-decoration:none;
}
.muted-pill{
    color:#8b8171;
    background:rgba(0,0,0,.04);
}
.wide{
    max-width:860px !important;
}
.member-top{
    display:flex;
    gap:16px;
    align-items:center;
    justify-content:center;
    margin-bottom:18px;
}
.member-top h1{
    margin:4px 0 4px;
}
.dashboard-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
    margin:22px 0;
}
.mini-card{
    background:#fff;
    border:1px solid var(--line);
    border-radius:18px;
    padding:16px;
    box-shadow:0 16px 40px rgba(30,25,18,.06);
    text-align:left;
}
.mini-card strong{
    display:block;
    color:#2d2417;
    font-size:13px;
    margin-bottom:7px;
}
.mini-card span{
    color:#766b5d;
    font-size:13px;
    word-break:break-word;
}
.community-panel{
    background:rgba(184,146,75,.08);
    border:1px solid rgba(184,146,75,.20);
    border-radius:22px;
    padding:20px;
    margin-top:16px;
}
.community-panel h2{
    margin:0 0 6px;
}
@media(max-width:760px){
    .dashboard-grid{
        grid-template-columns:1fr;
    }
    .member-top{
        flex-direction:column;
        text-align:center;
    }
}


/* Phase 3C.1 Public Home Upgrade */
.fb-home-body{
    min-height:100vh;
    margin:0;
    color:#211a10;
    background:
        radial-gradient(circle at 8% 10%, rgba(184,146,75,.20), transparent 28%),
        radial-gradient(circle at 85% 15%, rgba(222,194,130,.26), transparent 32%),
        linear-gradient(135deg,#fff 0%,#fffaf1 48%,#f8edd8 100%);
}
.fb-home-header{
    width:min(1180px,calc(100% - 32px));
    margin:0 auto;
    padding:20px 0;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
}
.fb-home-brand{
    display:flex;
    align-items:center;
    gap:12px;
    text-decoration:none;
    color:#241a0c;
}
.fb-home-brand img{
    width:48px;
    height:48px;
    border-radius:16px;
    object-fit:contain;
    padding:4px;
    background:#fff;
    border:1px solid rgba(184,146,75,.25);
    box-shadow:0 12px 32px rgba(184,146,75,.18);
}
.fb-home-brand strong{
    display:block;
    font-size:15px;
    letter-spacing:.02em;
}
.fb-home-brand small{
    display:block;
    margin-top:2px;
    color:#8b6a27;
    font-size:12px;
    font-weight:700;
}
.fb-home-nav{
    display:flex;
    align-items:center;
    gap:8px;
    padding:7px;
    background:rgba(255,255,255,.72);
    border:1px solid rgba(184,146,75,.18);
    border-radius:999px;
    backdrop-filter:blur(12px);
    box-shadow:0 18px 45px rgba(51,37,13,.06);
}
.fb-home-nav a{
    text-decoration:none;
    color:#6f604e;
    font-size:13px;
    font-weight:800;
    padding:10px 14px;
    border-radius:999px;
}
.fb-home-nav a:hover{
    color:#241a0c;
    background:rgba(184,146,75,.12);
}
.fb-hero{
    width:min(1180px,calc(100% - 32px));
    margin:32px auto 0;
    display:grid;
    grid-template-columns:minmax(0,1.08fr) minmax(330px,.72fr);
    gap:28px;
    align-items:center;
}
.fb-hero-copy{
    padding:42px;
    border-radius:34px;
    background:rgba(255,255,255,.72);
    border:1px solid rgba(184,146,75,.18);
    box-shadow:0 28px 90px rgba(51,37,13,.10);
    backdrop-filter:blur(16px);
    position:relative;
    overflow:hidden;
}
.fb-hero-copy:before{
    content:"";
    position:absolute;
    width:280px;
    height:280px;
    right:-120px;
    top:-120px;
    border-radius:50%;
    background:rgba(184,146,75,.13);
}
.fb-kicker{
    margin:0 0 12px;
    color:#a47b29;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-size:12px;
}
.fb-hero h1{
    margin:0;
    max-width:780px;
    color:#241a0c;
    font-size:clamp(38px,6vw,72px);
    line-height:.95;
    letter-spacing:-.06em;
}
.fb-hero-text{
    margin:20px 0 0;
    max-width:620px;
    color:#6f604e;
    font-size:17px;
    line-height:1.7;
}
.fb-hero-actions{
    margin-top:28px;
    display:flex;
    flex-wrap:wrap;
    gap:12px;
}
.fb-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
    padding:0 22px;
    border-radius:999px;
    text-decoration:none;
    font-weight:900;
    font-size:14px;
    border:1px solid transparent;
    transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.fb-btn:hover{
    transform:translateY(-2px);
}
.fb-btn-primary{
    color:#fff;
    background:linear-gradient(135deg,#b8924b,#e5c16d);
    box-shadow:0 18px 42px rgba(184,146,75,.30);
}
.fb-btn-soft{
    color:#7b5b21;
    background:#fff;
    border-color:rgba(184,146,75,.24);
}
.fb-trust-row{
    margin-top:26px;
    display:flex;
    flex-wrap:wrap;
    gap:9px;
}
.fb-trust-row span{
    padding:9px 12px;
    border-radius:999px;
    background:rgba(184,146,75,.10);
    color:#7d6a4e;
    font-size:12px;
    font-weight:800;
}
.fb-hero-card{
    padding:26px;
    border-radius:30px;
    background:linear-gradient(180deg,#fff,#fff7e8);
    border:1px solid rgba(184,146,75,.20);
    box-shadow:0 28px 90px rgba(51,37,13,.12);
}
.fb-hero-logo{
    width:84px;
    height:84px;
    object-fit:contain;
    padding:7px;
    border-radius:26px;
    background:#fff;
    border:1px solid rgba(184,146,75,.22);
    box-shadow:0 18px 40px rgba(184,146,75,.18);
}
.fb-hero-card h2{
    margin:20px 0 6px;
    color:#241a0c;
    font-size:24px;
}
.fb-hero-card p{
    margin:0;
    color:#766b5d;
    line-height:1.65;
}
.fb-profile-list{
    display:grid;
    gap:10px;
    margin-top:20px;
}
.fb-profile-list div{
    display:flex;
    justify-content:space-between;
    gap:14px;
    padding:13px 14px;
    border-radius:16px;
    background:#fff;
    border:1px solid rgba(184,146,75,.15);
}
.fb-profile-list span{
    color:#8b8171;
    font-size:13px;
    font-weight:700;
}
.fb-profile-list strong{
    color:#3a2b14;
    font-size:13px;
}
.fb-stats{
    width:min(1180px,calc(100% - 32px));
    margin:22px auto 0;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px;
}
.fb-stats article{
    padding:20px;
    border-radius:24px;
    background:rgba(255,255,255,.76);
    border:1px solid rgba(184,146,75,.16);
    box-shadow:0 18px 50px rgba(51,37,13,.06);
}
.fb-stats strong{
    display:block;
    color:#a47b29;
    font-size:28px;
}
.fb-stats span{
    color:#6f604e;
    font-weight:800;
    font-size:13px;
}
.fb-section{
    width:min(1180px,calc(100% - 32px));
    margin:58px auto 0;
}
.fb-section-head{
    max-width:720px;
}
.fb-section-head h2,
.fb-community-strip h2{
    margin:0;
    color:#241a0c;
    font-size:clamp(28px,4vw,44px);
    line-height:1.05;
    letter-spacing:-.04em;
}
.fb-feature-grid{
    margin-top:22px;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px;
}
.fb-feature-card{
    padding:24px;
    border-radius:28px;
    background:#fff;
    border:1px solid rgba(184,146,75,.16);
    box-shadow:0 18px 50px rgba(51,37,13,.06);
}
.fb-feature-card span{
    display:inline-flex;
    width:38px;
    height:38px;
    align-items:center;
    justify-content:center;
    border-radius:14px;
    color:#fff;
    background:linear-gradient(135deg,#b8924b,#e5c16d);
    font-weight:900;
    font-size:12px;
}
.fb-feature-card h3{
    margin:18px 0 8px;
    color:#241a0c;
}
.fb-feature-card p{
    margin:0;
    color:#6f604e;
    line-height:1.65;
}
.fb-community-strip{
    width:min(1180px,calc(100% - 32px));
    margin:56px auto 0;
    padding:28px;
    border-radius:30px;
    background:#241a0c;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    box-shadow:0 26px 70px rgba(36,26,12,.22);
}
.fb-community-strip h2{
    color:#fff;
}
.fb-community-strip .fb-kicker{
    color:#e5c16d;
}
.fb-socials{
    width:min(1180px,calc(100% - 32px));
    margin:20px auto 60px;
    display:flex;
    justify-content:center;
    gap:10px;
    flex-wrap:wrap;
}
.fb-socials a,
.fb-socials span{
    padding:10px 14px;
    border-radius:999px;
    background:rgba(255,255,255,.72);
    border:1px solid rgba(184,146,75,.16);
    color:#7b5b21;
    font-size:13px;
    font-weight:800;
    text-decoration:none;
}
@media(max-width:850px){
    .fb-home-header{
        flex-direction:column;
        align-items:flex-start;
    }
    .fb-home-nav{
        width:100%;
        justify-content:space-between;
        overflow:auto;
    }
    .fb-hero{
        grid-template-columns:1fr;
        margin-top:18px;
    }
    .fb-hero-copy{
        padding:28px;
        border-radius:28px;
    }
    .fb-stats,
    .fb-feature-grid{
        grid-template-columns:1fr;
    }
    .fb-community-strip{
        flex-direction:column;
        align-items:flex-start;
    }
}


/* Phase 3D Premium Member Journey */
.journey-body,
.member-dash-body{
    min-height:100vh;
    margin:0;
    background:
        radial-gradient(circle at 12% 15%, rgba(184,146,75,.22), transparent 25%),
        radial-gradient(circle at 82% 10%, rgba(245,218,150,.28), transparent 30%),
        linear-gradient(135deg,#fff 0%,#fff9ee 52%,#f7ecd4 100%);
    overflow-x:hidden;
}
.journey-header,
.member-dash-header{
    width:min(1180px,calc(100% - 32px));
    margin:0 auto;
    padding:20px 0;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:18px;
}
.journey-brand{
    display:flex;
    align-items:center;
    gap:12px;
    text-decoration:none;
    color:#21180b;
}
.journey-brand img{
    width:46px;
    height:46px;
    border-radius:15px;
    object-fit:contain;
    padding:4px;
    background:#fff;
    border:1px solid rgba(184,146,75,.22);
    box-shadow:0 14px 34px rgba(184,146,75,.18);
}
.journey-brand strong{display:block;font-size:15px}
.journey-brand small{display:block;margin-top:2px;font-size:12px;color:#8a672a;font-weight:800}
.journey-header nav,
.member-dash-header nav{
    display:flex;
    gap:8px;
    align-items:center;
    padding:7px;
    border-radius:999px;
    background:rgba(255,255,255,.70);
    border:1px solid rgba(184,146,75,.18);
    backdrop-filter:blur(14px);
    box-shadow:0 16px 42px rgba(46,33,12,.06);
}
.journey-header nav a,
.member-dash-header nav a{
    text-decoration:none;
    padding:10px 13px;
    border-radius:999px;
    color:#6d5d48;
    font-size:13px;
    font-weight:900;
    transition:background .18s ease, color .18s ease, transform .18s ease;
}
.journey-header nav a:hover,
.member-dash-header nav a:hover{
    color:#241a0c;
    background:rgba(184,146,75,.12);
    transform:translateY(-1px);
}
.journey-shell{
    width:min(1180px,calc(100% - 32px));
    margin:30px auto 70px;
    display:grid;
    grid-template-columns:minmax(0,.92fr) minmax(360px,.78fr);
    gap:28px;
    align-items:start;
}
.journey-copy,
.journey-form-card,
.login-visual,
.journey-login-card,
.success-panel,
.next-card,
.member-hero,
.member-card,
.member-stat-grid article{
    position:relative;
    border:1px solid rgba(184,146,75,.18);
    background:rgba(255,255,255,.76);
    box-shadow:0 28px 90px rgba(50,35,10,.10);
    backdrop-filter:blur(16px);
}
.journey-copy{
    border-radius:34px;
    padding:42px;
    overflow:hidden;
}
.journey-copy:before{
    content:"";
    position:absolute;
    width:280px;
    height:280px;
    right:-130px;
    top:-120px;
    border-radius:50%;
    background:rgba(184,146,75,.12);
    animation:softFloat 7s ease-in-out infinite;
}
.gold-kicker{
    margin:0 0 12px;
    color:#a37b31;
    font-size:12px;
    font-weight:950;
    letter-spacing:.12em;
    text-transform:uppercase;
}
.journey-copy h1,
.login-visual h1,
.success-panel h1,
.member-hero h1{
    margin:0;
    color:#241a0c;
    font-size:clamp(38px,5.6vw,68px);
    line-height:.96;
    letter-spacing:-.06em;
}
.journey-lead,
.login-visual p,
.success-lead,
.member-hero p{
    margin:20px 0 0;
    color:#6f604e;
    font-size:17px;
    line-height:1.7;
}
.journey-benefits{
    margin-top:28px;
    display:grid;
    gap:12px;
}
.journey-benefits article{
    display:grid;
    grid-template-columns:42px 1fr;
    gap:5px 12px;
    align-items:center;
    padding:15px;
    border-radius:20px;
    background:#fff;
    border:1px solid rgba(184,146,75,.15);
    transition:transform .18s ease, box-shadow .18s ease;
}
.journey-benefits article:hover{
    transform:translateY(-3px);
    box-shadow:0 18px 42px rgba(184,146,75,.14);
}
.journey-benefits span{
    grid-row:1/3;
    width:42px;
    height:42px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:16px;
    background:linear-gradient(135deg,#b8924b,#edcf82);
    color:#fff;
    font-weight:950;
    font-size:12px;
}
.journey-benefits strong{color:#241a0c}
.journey-benefits small{color:#786c5b;font-size:13px}
.journey-form-card{
    border-radius:34px;
    padding:26px;
}
.form-card-head{
    display:flex;
    gap:14px;
    align-items:center;
    margin-bottom:18px;
}
.form-card-head img{
    width:58px;
    height:58px;
    border-radius:18px;
    object-fit:contain;
    padding:5px;
    background:#fff;
    border:1px solid rgba(184,146,75,.20);
}
.form-card-head h2{margin:0;color:#241a0c;font-size:26px}
.enhanced-form .field-wrap{
    position:relative;
}
.enhanced-form input{
    transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.enhanced-form input:focus{
    border-color:rgba(184,146,75,.65);
    box-shadow:0 0 0 4px rgba(184,146,75,.12);
    transform:translateY(-1px);
}
.form-progress{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:8px;
    margin-bottom:18px;
}
.form-progress span{
    text-align:center;
    padding:9px 8px;
    border-radius:999px;
    font-size:12px;
    font-weight:900;
    color:#8a7a62;
    background:rgba(184,146,75,.08);
    border:1px solid rgba(184,146,75,.12);
}
.form-progress .active{
    color:#fff;
    background:linear-gradient(135deg,#b8924b,#edcf82);
}
.password-wrap button{
    position:absolute;
    right:9px;
    bottom:9px;
    min-width:56px;
    border:0;
    border-radius:11px;
    padding:7px 9px;
    background:#fff4db;
    color:#7a5b1d;
    font-weight:900;
    cursor:pointer;
}
.password-wrap input{padding-right:78px}
.premium-consent{
    background:linear-gradient(135deg,rgba(184,146,75,.10),rgba(255,255,255,.76));
    border:1px solid rgba(184,146,75,.20);
}
.premium-consent .check-line{
    transition:transform .18s ease, background .18s ease;
}
.premium-consent .check-line:hover{
    transform:translateX(3px);
    background:rgba(255,255,255,.55);
}
.form-footer-note{
    text-align:center;
    color:#716552;
    font-size:13px;
    margin:16px 0 0;
}
.form-footer-note a{color:#8a672a;font-weight:900}
.lift-btn{
    position:relative;
    overflow:hidden;
}
.lift-btn:after{
    content:"";
    position:absolute;
    inset:0;
    transform:translateX(-120%);
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);
    transition:transform .55s ease;
}
.lift-btn:hover:after{transform:translateX(120%)}
.login-split{
    width:min(1040px,calc(100% - 32px));
    margin:48px auto 70px;
    display:grid;
    grid-template-columns:1fr 420px;
    gap:24px;
    align-items:stretch;
}
.login-visual{
    border-radius:34px;
    padding:36px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    min-height:560px;
}
.login-feature-row{
    display:flex;
    flex-wrap:wrap;
    gap:9px;
    margin-top:24px;
}
.login-feature-row span{
    padding:9px 12px;
    border-radius:999px;
    background:rgba(184,146,75,.10);
    color:#7a6b54;
    font-size:12px;
    font-weight:900;
}
.journey-login-card{
    border-radius:34px;
    padding:32px;
}
.success-wrap{
    width:min(960px,calc(100% - 32px));
    margin:52px auto 70px;
    position:relative;
}
.success-glow{
    position:absolute;
    width:300px;
    height:300px;
    border-radius:50%;
    background:rgba(184,146,75,.18);
    filter:blur(8px);
    top:-80px;
    right:-80px;
    animation:softFloat 8s ease-in-out infinite;
}
.success-panel,
.next-card{
    border-radius:34px;
    padding:34px;
    text-align:center;
    overflow:hidden;
}
.success-logo{
    width:80px;
    height:80px;
    border-radius:25px;
    object-fit:contain;
    padding:7px;
    background:#fff;
    border:1px solid rgba(184,146,75,.20);
    box-shadow:0 18px 45px rgba(184,146,75,.17);
}
.success-steps{
    margin:26px 0;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:12px;
}
.success-steps article{
    padding:16px;
    border-radius:22px;
    background:#fff;
    border:1px solid rgba(184,146,75,.14);
}
.success-steps span{
    width:38px;
    height:38px;
    margin:0 auto 10px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:14px;
    color:#fff;
    background:#241a0c;
    font-weight:950;
}
.success-steps .done span{background:linear-gradient(135deg,#0f8f5f,#47c68d)}
.success-steps strong{display:block;color:#241a0c}
.success-steps small{display:block;color:#786c5b;margin-top:4px}
.success-actions{
    display:flex;
    justify-content:center;
    gap:10px;
    flex-wrap:wrap;
}
.next-card{margin-top:16px;text-align:left}
.next-card h2{margin:0 0 6px}
.premium-social-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:10px;
}
.premium-social-grid a,
.premium-social-grid span{
    padding:14px 16px;
    border-radius:18px;
    background:#fff;
    border:1px solid rgba(184,146,75,.15);
    transition:transform .18s ease, box-shadow .18s ease;
}
.premium-social-grid a:hover{
    transform:translateY(-3px);
    box-shadow:0 18px 42px rgba(184,146,75,.12);
}
.member-dash-shell{
    width:min(1180px,calc(100% - 32px));
    margin:28px auto 70px;
}
.member-hero{
    border-radius:34px;
    padding:32px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    overflow:hidden;
}
.member-hero:after{
    content:"";
    position:absolute;
    right:-110px;
    top:-110px;
    width:260px;
    height:260px;
    border-radius:50%;
    background:rgba(184,146,75,.13);
    animation:softFloat 7s ease-in-out infinite;
}
.member-badge{
    position:relative;
    min-width:190px;
    padding:20px;
    border-radius:26px;
    background:#fff;
    border:1px solid rgba(184,146,75,.15);
    text-align:center;
    box-shadow:0 18px 42px rgba(184,146,75,.12);
}
.member-badge img{
    width:72px;
    height:72px;
    object-fit:contain;
    padding:6px;
    border-radius:22px;
    background:#fff;
    border:1px solid rgba(184,146,75,.20);
    margin-bottom:10px;
}
.member-badge strong{display:block;color:#241a0c}
.member-badge span{display:block;color:#8a672a;font-size:12px;font-weight:900;margin-top:3px}
.member-stat-grid{
    margin-top:16px;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:14px;
}
.member-stat-grid article{
    border-radius:24px;
    padding:18px;
}
.member-stat-grid span{
    display:block;
    color:#8a7a62;
    font-size:12px;
    font-weight:900;
    margin-bottom:7px;
}
.member-stat-grid strong{
    display:block;
    color:#241a0c;
    font-size:15px;
    word-break:break-word;
}
.member-grid{
    margin-top:16px;
    display:grid;
    grid-template-columns:1.15fr .85fr;
    gap:16px;
}
.member-card{
    border-radius:30px;
    padding:24px;
}
.member-card.large{
    grid-row:span 2;
}
.card-title-row{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:14px;
}
.card-title-row h2,
.member-card h2{
    margin:0;
    color:#241a0c;
    font-size:26px;
}
.soft-dot{
    width:14px;
    height:14px;
    border-radius:50%;
    background:#0f8f5f;
    box-shadow:0 0 0 9px rgba(15,143,95,.10);
}
.member-card p{
    color:#6f604e;
    line-height:1.65;
}
.premium-link-list{
    display:grid;
    gap:10px;
    margin-top:18px;
}
.premium-link-list a,
.disabled-premium-link{
    display:flex;
    justify-content:space-between;
    gap:12px;
    text-decoration:none;
    padding:16px;
    border-radius:20px;
    background:#fff;
    border:1px solid rgba(184,146,75,.15);
    transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.premium-link-list a:hover{
    transform:translateY(-3px);
    box-shadow:0 20px 46px rgba(184,146,75,.12);
    border-color:rgba(184,146,75,.35);
}
.premium-link-list span,
.disabled-premium-link span{
    color:#8a672a;
    font-size:12px;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.08em;
}
.premium-link-list strong,
.disabled-premium-link strong{
    color:#241a0c;
}
.disabled-premium-link{opacity:.68}
.preference-list{
    display:grid;
    gap:10px;
    margin-top:18px;
}
.preference-list div{
    display:flex;
    justify-content:space-between;
    padding:13px 14px;
    border-radius:18px;
    background:#fff;
    border:1px solid rgba(184,146,75,.13);
}
.preference-list span{color:#766b5d;font-weight:800}
.preference-list strong{color:#0f8f5f}
.small-note{font-size:13px}
.premium-list{
    list-style:none;
    padding:0;
    margin:16px 0 0;
    display:grid;
    gap:10px;
}
.premium-list li{
    padding:12px 14px;
    border-radius:16px;
    background:#fff;
    border:1px solid rgba(184,146,75,.13);
    color:#5f523e;
    font-weight:800;
}
.reveal-on-load{
    animation:premiumFadeUp .7s ease both;
}
.reveal-on-load:nth-child(2){animation-delay:.08s}
.reveal-on-scroll{
    opacity:0;
    transform:translateY(18px);
    transition:opacity .6s ease, transform .6s ease;
}
.reveal-on-scroll.is-visible{
    opacity:1;
    transform:translateY(0);
}
@keyframes premiumFadeUp{
    from{opacity:0;transform:translateY(18px)}
    to{opacity:1;transform:translateY(0)}
}
@keyframes softFloat{
    0%,100%{transform:translate3d(0,0,0) scale(1)}
    50%{transform:translate3d(-14px,12px,0) scale(1.04)}
}
@media(max-width:900px){
    .journey-shell,
    .login-split,
    .member-grid{
        grid-template-columns:1fr;
    }
    .login-visual{
        min-height:auto;
    }
    .member-stat-grid{
        grid-template-columns:repeat(2,1fr);
    }
    .member-hero{
        flex-direction:column;
        align-items:flex-start;
    }
}
@media(max-width:640px){
    .journey-header,
    .member-dash-header{
        flex-direction:column;
        align-items:flex-start;
    }
    .journey-header nav,
    .member-dash-header nav{
        width:100%;
        justify-content:space-between;
        overflow:auto;
    }
    .journey-copy,
    .journey-form-card,
    .login-visual,
    .journey-login-card,
    .success-panel,
    .next-card,
    .member-hero,
    .member-card{
        border-radius:26px;
        padding:22px;
    }
    .success-steps,
    .premium-social-grid,
    .member-stat-grid{
        grid-template-columns:1fr;
    }
}


/* Phase 3E Password Recovery + Settings */
.premium-settings-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
}
.settings-panel{
    animation:premiumFadeUp .45s ease both;
}
.settings-panel.wide-panel{
    grid-column:span 2;
}
.settings-form{
    display:grid;
    gap:14px;
    margin-top:16px;
}
.settings-form label{
    display:grid;
    gap:7px;
    color:#5f523e;
    font-size:13px;
    font-weight:800;
}
.settings-form input,
.settings-form select{
    width:100%;
    border:1px solid rgba(184,146,75,.22);
    border-radius:14px;
    padding:12px 13px;
    background:#fff;
    color:#241a0c;
    outline:0;
    transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.settings-form input:focus,
.settings-form select:focus{
    border-color:rgba(184,146,75,.62);
    box-shadow:0 0 0 4px rgba(184,146,75,.12);
    transform:translateY(-1px);
}
.settings-actions,
.settings-link-list{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
}
.compact-test-form{
    margin-top:18px;
    padding-top:18px;
    border-top:1px solid rgba(184,146,75,.16);
    grid-template-columns:1fr auto;
    align-items:end;
}
.small-note{
    font-size:12px;
    line-height:1.55;
}
@media(max-width:900px){
    .premium-settings-grid{
        grid-template-columns:1fr;
    }
    .settings-panel.wide-panel{
        grid-column:span 1;
    }
    .compact-test-form{
        grid-template-columns:1fr;
    }
}

/* Phase 3F Settings Cleanup */
.settings-tabs{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin:0 0 18px;
}
.settings-tab{
    border:1px solid rgba(184,146,75,.22);
    background:#fff;
    color:#7a6750;
    border-radius:999px;
    padding:10px 14px;
    font-weight:900;
    cursor:pointer;
    transition:background .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.settings-tab:hover{
    transform:translateY(-2px);
    box-shadow:0 14px 32px rgba(184,146,75,.14);
}
.settings-tab.active{
    background:linear-gradient(135deg,#b8924b,#e5c16d);
    color:#fff;
    border-color:transparent;
}
.settings-tab-panel{
    display:none;
    animation:premiumFadeUp .35s ease both;
}
.settings-tab-panel.active{
    display:block;
}
.settings-card-head{
    display:flex;
    justify-content:space-between;
    gap:16px;
    align-items:flex-start;
    margin-bottom:18px;
}
.settings-card-head h3{
    margin-bottom:6px;
}
.settings-status{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:8px 11px;
    border-radius:999px;
    background:rgba(184,146,75,.10);
    color:#8a672a;
    font-weight:900;
    font-size:12px;
    white-space:nowrap;
}
.settings-status.good{
    background:rgba(15,143,95,.10);
    color:#0f8f5f;
}
.settings-check{
    margin:8px 0 14px;
    padding:13px 14px;
    border:1px solid rgba(184,146,75,.15);
    background:#fff;
    border-radius:16px;
}
.settings-form textarea{
    width:100%;
    resize:vertical;
    min-height:90px;
}
.security-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
}
.security-grid article{
    background:#fff;
    border:1px solid rgba(184,146,75,.15);
    border-radius:22px;
    padding:18px;
}
.security-grid h4{
    margin:0 0 8px;
    color:#241a0c;
}
.security-grid p{
    color:#6f604e;
    font-size:13px;
    line-height:1.6;
}
@media(max-width:900px){
    .security-grid{
        grid-template-columns:1fr;
    }
    .settings-card-head{
        flex-direction:column;
    }
}


/* Phase 5C: Global page repair, homepage social controls, and auth redesign */

/* Logo control everywhere */
.brand-logo,
.journey-brand img,
.fb-auth-brand img,
.fcb-brand img,
.fc-repair-brand img,
.prod-icon img{
    width:42px !important;
    height:42px !important;
    max-width:42px !important;
    max-height:42px !important;
    object-fit:contain !important;
}
.login-card .brand-logo,
.journey-login-card .brand-logo,
.public-card .brand-logo,
.community-card .brand-logo{
    width:54px !important;
    height:54px !important;
    max-width:54px !important;
    max-height:54px !important;
}

/* Homepage */
.fcb-body{margin:0;min-height:100vh;color:#25190b;background:radial-gradient(circle at 8% 11%,rgba(185,146,75,.20),transparent 26%),radial-gradient(circle at 88% 6%,rgba(238,204,132,.25),transparent 30%),linear-gradient(135deg,#fff 0%,#fffaf2 50%,#f6ead2 100%);overflow-x:hidden}
.fcb-nav{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:20px 0;display:flex;align-items:center;justify-content:space-between;gap:18px}
.fcb-brand{display:flex;align-items:center;gap:12px;color:#25190b;text-decoration:none}
.fcb-brand img{padding:4px;border-radius:14px;background:#fff;border:1px solid rgba(185,146,75,.24);box-shadow:0 12px 30px rgba(185,146,75,.16)}
.fcb-brand strong{display:block;font-size:14px}.fcb-brand small{display:block;color:#8a672a;font-size:12px;font-weight:900;margin-top:2px}
.fcb-nav nav{display:flex;gap:8px;padding:7px;border-radius:999px;background:rgba(255,255,255,.76);border:1px solid rgba(185,146,75,.18);box-shadow:0 18px 45px rgba(51,37,13,.06);backdrop-filter:blur(14px)}
.fcb-nav nav a{padding:10px 13px;border-radius:999px;color:#6f604e;font-size:13px;font-weight:900;text-decoration:none;transition:background .18s ease,transform .18s ease,color .18s ease}
.fcb-nav nav a:hover{background:rgba(185,146,75,.12);transform:translateY(-1px);color:#241a0c}
.fcb-hero{width:min(1180px,calc(100% - 32px));margin:28px auto 0;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(360px,.78fr);gap:30px;align-items:center}
.fcb-hero-copy{position:relative;overflow:hidden;padding:48px;border-radius:38px;background:rgba(255,255,255,.78);border:1px solid rgba(185,146,75,.18);box-shadow:0 30px 90px rgba(51,37,13,.10);backdrop-filter:blur(16px)}
.fcb-hero-copy:before{content:"";position:absolute;width:300px;height:300px;right:-145px;top:-135px;border-radius:50%;background:rgba(185,146,75,.12);animation:fcbFloat 8s ease-in-out infinite}
.fcb-kicker{margin:0 0 12px;color:#a47b29;font-size:12px;font-weight:950;letter-spacing:.12em;text-transform:uppercase}
.fcb-hero h1{margin:0;max-width:820px;color:#241a0c;font-size:clamp(42px,6vw,78px);line-height:.92;letter-spacing:-.065em}
.fcb-lead,.fcb-section-title p,.fcb-benefit-copy p,.fcb-visual-strip p,.fcb-community p{color:#6f604e;font-size:16px;line-height:1.72}
.fcb-lead{max-width:650px;margin:20px 0 0}
.fcb-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.fcb-btn{min-height:48px;padding:0 22px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;text-decoration:none;font-size:14px;font-weight:950;border:1px solid transparent;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.fcb-btn:hover{transform:translateY(-3px)}.fcb-btn.primary{color:#fff;background:linear-gradient(135deg,#b8924b,#e7c673);box-shadow:0 18px 42px rgba(185,146,75,.30)}.fcb-btn.soft{color:#7b5b21;background:#fff;border-color:rgba(185,146,75,.22)}.fcb-btn.soft.dark{color:#fff;background:rgba(255,255,255,.11);border-color:rgba(255,255,255,.16)}
.fcb-mini-points{display:flex;flex-wrap:wrap;gap:9px;margin-top:28px}.fcb-mini-points span{padding:9px 12px;border-radius:999px;color:#7d6a4e;background:rgba(185,146,75,.09);font-size:12px;font-weight:900}
.fcb-hero-visual{position:relative;min-height:575px}.fcb-photo-frame.main{height:575px;border-radius:38px;overflow:hidden;border:1px solid rgba(185,146,75,.22);box-shadow:0 32px 95px rgba(51,37,13,.16);background:#fff}
.fcb-photo-frame img,.fcb-side-image img,.fcb-benefit-images img,.fcb-visual-strip img{width:100%;height:100%;display:block;object-fit:cover}
.fcb-photo-frame img{transition:transform .9s ease,filter .9s ease;filter:saturate(1.04) contrast(1.02)}.fcb-hero-visual:hover .fcb-photo-frame img{transform:scale(1.045)}
.fcb-float-card{position:absolute;z-index:3;background:rgba(255,255,255,.90);border:1px solid rgba(185,146,75,.24);border-radius:22px;padding:15px 16px;box-shadow:0 18px 45px rgba(36,26,12,.16);backdrop-filter:blur(12px)}
.fcb-float-card strong{display:block;color:#a47b29;font-size:24px;line-height:1}.fcb-float-card span{display:block;color:#6f604e;font-size:12px;font-weight:900;margin-top:4px}.fcb-float-card.top{right:18px;top:20px}.fcb-float-card.bottom{left:18px;bottom:22px}
.fcb-side-image{position:absolute;z-index:2;width:152px;height:152px;border-radius:30px;overflow:hidden;background:#fff;border:1px solid rgba(185,146,75,.24);box-shadow:0 24px 60px rgba(51,37,13,.18)}.fcb-side-image.one{left:-24px;top:56px}.fcb-side-image.two{right:-20px;bottom:72px}
.fcb-purpose,.fcb-benefits,.fcb-visual-strip,.fcb-community,.fcb-social{width:min(1180px,calc(100% - 32px));margin:76px auto 0}
.fcb-section-title{max-width:760px}.fcb-section-title h2,.fcb-benefit-copy h2,.fcb-visual-strip h2,.fcb-community h2,.fcb-social h2{margin:0;color:#241a0c;font-size:clamp(31px,4vw,50px);line-height:1.04;letter-spacing:-.05em}
.fcb-purpose-grid{margin-top:24px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.fcb-purpose-grid article,.fcb-benefit-list div{background:rgba(255,255,255,.82);border:1px solid rgba(185,146,75,.16);border-radius:26px;padding:22px;box-shadow:0 18px 52px rgba(51,37,13,.06);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.fcb-purpose-grid article:hover,.fcb-benefit-list div:hover{transform:translateY(-5px);border-color:rgba(185,146,75,.38);box-shadow:0 26px 68px rgba(185,146,75,.14)}
.fcb-purpose-grid span{width:38px;height:38px;display:flex;align-items:center;justify-content:center;color:#fff;background:linear-gradient(135deg,#b8924b,#e7c673);border-radius:14px;font-size:12px;font-weight:950}
.fcb-purpose-grid h3{margin:16px 0 8px;color:#241a0c}.fcb-purpose-grid p{margin:0;color:#6f604e;line-height:1.62;font-size:14px}
.fcb-benefits{display:grid;grid-template-columns:.88fr 1.12fr;gap:28px;align-items:center}.fcb-benefit-list{display:grid;gap:12px;margin-top:22px}.fcb-benefit-list strong{display:block;color:#241a0c;font-size:15px}.fcb-benefit-list span{display:block;color:#6f604e;line-height:1.55;font-size:13px;margin-top:4px}
.fcb-benefit-images{display:grid;grid-template-columns:1fr 1fr;gap:14px}.fcb-benefit-images figure{margin:0;min-height:245px;border-radius:30px;overflow:hidden;border:1px solid rgba(185,146,75,.20);box-shadow:0 24px 70px rgba(51,37,13,.13);background:#fff}.fcb-benefit-images figure.large{grid-row:span 2;min-height:510px}.fcb-benefit-images img{transition:transform .8s ease}.fcb-benefit-images figure:hover img{transform:scale(1.055)}
.fcb-visual-strip{display:grid;grid-template-columns:.92fr 1fr;gap:28px;align-items:center;padding:24px;border-radius:38px;background:#241a0c;color:#fff;box-shadow:0 28px 90px rgba(36,26,12,.22)}.fcb-visual-strip img{height:390px;border-radius:30px}.fcb-visual-strip h2{color:#fff}.fcb-visual-strip p{color:rgba(255,255,255,.76)}.fcb-visual-strip .fcb-kicker{color:#e8ca7a}
.fcb-community{padding:34px;border-radius:36px;background:rgba(255,255,255,.80);border:1px solid rgba(185,146,75,.18);box-shadow:0 28px 90px rgba(51,37,13,.10);display:grid;grid-template-columns:1fr auto;gap:26px;align-items:center}.fcb-community-card{min-width:250px;padding:20px;display:grid;gap:11px;justify-items:center;border-radius:28px;background:#241a0c}.fcb-community-card img{width:68px!important;height:68px!important;object-fit:contain;padding:6px;border-radius:22px;background:#fff}
.fcb-social{margin-bottom:70px;text-align:center}
.fcb-social-wrap{margin-top:18px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px}
.fcb-whatsapp-link,.fcb-site-link{padding:12px 15px;border-radius:999px;background:#fff;border:1px solid rgba(185,146,75,.18);color:#7b5b21;font-size:13px;font-weight:950;text-decoration:none;box-shadow:0 16px 44px rgba(51,37,13,.05);transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.fcb-whatsapp-link:hover,.fcb-site-link:hover{transform:translateY(-3px);box-shadow:0 22px 55px rgba(185,146,75,.14);background:#fffaf0}
.fcb-whatsapp-link.is-disabled{opacity:.72}
.fcb-social-icons{display:flex;align-items:center;gap:8px}
.fcb-social-icons a{width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#241a0c;color:#fff;text-decoration:none;font-size:13px;font-weight:950;border:1px solid rgba(185,146,75,.20);box-shadow:0 12px 32px rgba(36,26,12,.16);transition:transform .18s ease,background .18s ease}
.fcb-social-icons a:hover{transform:translateY(-3px);background:#b8924b}
.fcb-reveal{opacity:0;transform:translateY(20px);animation:fcbFadeUp .75s ease forwards}.fcb-reveal:nth-child(2){animation-delay:.08s}@keyframes fcbFadeUp{to{opacity:1;transform:translateY(0)}}@keyframes fcbFloat{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(-12px,13px,0) scale(1.04)}}

/* Auth pages */
.fb-auth-body{min-height:100vh;margin:0;background:radial-gradient(circle at 12% 12%,rgba(185,146,75,.20),transparent 28%),radial-gradient(circle at 88% 8%,rgba(238,204,132,.22),transparent 32%),linear-gradient(135deg,#fff 0%,#fffaf2 50%,#f5ead3 100%);color:#25190b;overflow-x:hidden}
.fb-auth-shell{width:min(1080px,calc(100% - 32px));min-height:calc(100vh - 70px);margin:35px auto;display:grid;grid-template-columns:minmax(0,.95fr) minmax(360px,.78fr);gap:24px;align-items:stretch}
.fb-auth-visual,.fb-auth-card{background:rgba(255,255,255,.80);border:1px solid rgba(185,146,75,.18);box-shadow:0 30px 90px rgba(51,37,13,.10);border-radius:34px;backdrop-filter:blur(16px)}
.fb-auth-visual{padding:30px;display:flex;flex-direction:column;justify-content:space-between;gap:24px;overflow:hidden;position:relative}
.fb-auth-visual:before{content:"";position:absolute;width:280px;height:280px;right:-125px;top:-125px;border-radius:50%;background:rgba(185,146,75,.12);animation:fcbFloat 8s ease-in-out infinite}
.fb-auth-brand{position:relative;z-index:1;display:flex;align-items:center;gap:12px;text-decoration:none;color:#25190b}
.fb-auth-brand img{padding:4px;border-radius:14px;background:#fff;border:1px solid rgba(185,146,75,.24);box-shadow:0 12px 30px rgba(185,146,75,.16)}
.fb-auth-brand strong{display:block;font-size:14px}.fb-auth-brand small{display:block;margin-top:2px;color:#8a672a;font-size:12px;font-weight:900}
.fb-auth-copy{position:relative;z-index:1;max-width:620px}.fb-auth-kicker{margin:0 0 10px;color:#a47b29;font-size:12px;font-weight:950;letter-spacing:.12em;text-transform:uppercase}.fb-auth-copy h1{margin:0;color:#241a0c;font-size:clamp(34px,5vw,58px);line-height:.98;letter-spacing:-.055em}.fb-auth-copy p{color:#6f604e;font-size:16px;line-height:1.7}
.fb-auth-image{position:relative;z-index:1;height:230px;border-radius:28px;overflow:hidden;border:1px solid rgba(185,146,75,.18);box-shadow:0 22px 60px rgba(51,37,13,.12)}.fb-auth-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s ease}.fb-auth-image:hover img{transform:scale(1.05)}
.fb-auth-card{padding:30px;align-self:center}.fb-card-logo{width:50px!important;height:50px!important;max-width:50px!important;max-height:50px!important;object-fit:contain!important;padding:5px;border-radius:17px;background:#fff;border:1px solid rgba(185,146,75,.22);box-shadow:0 14px 34px rgba(185,146,75,.16);display:block;margin-bottom:16px}.fb-auth-card h2{margin:0;color:#241a0c;font-size:30px;letter-spacing:-.035em}.fb-card-sub{margin:8px 0 20px;color:#6f604e;line-height:1.6}
.fb-form{display:grid;gap:14px}.fb-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.fb-form label{display:grid;gap:7px;color:#4d3a1c;font-size:13px;font-weight:900}.fb-form input,.fb-form select,.fb-form textarea{width:100%;box-sizing:border-box;border:1px solid rgba(185,146,75,.20);background:#fff;border-radius:15px;padding:12px 13px;color:#241a0c;font:inherit;outline:none;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.fb-form input:focus,.fb-form textarea:focus{border-color:rgba(185,146,75,.65);box-shadow:0 0 0 4px rgba(185,146,75,.12);transform:translateY(-1px)}.fb-form small{color:#8a7a62;font-size:12px}
.fb-password{position:relative}.fb-password input{padding-right:75px}.fb-password button{position:absolute;right:8px;bottom:8px;border:0;border-radius:11px;padding:7px 9px;background:#fff4db;color:#7a5b1d;font-weight:900;cursor:pointer}
.fb-consent{display:grid;gap:8px;padding:13px;border-radius:18px;background:rgba(185,146,75,.08);border:1px solid rgba(185,146,75,.16)}.fb-consent label{display:flex;align-items:flex-start;gap:9px;color:#5c4b32;font-size:13px;font-weight:800}.fb-consent input{width:auto;margin-top:2px}
.fb-submit{width:100%;min-height:48px;border:0;border-radius:999px;background:linear-gradient(135deg,#b8924b,#e7c673);color:#fff;font-weight:950;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 18px 42px rgba(185,146,75,.28);transition:transform .18s ease,box-shadow .18s ease}.fb-submit:hover{transform:translateY(-3px);box-shadow:0 22px 52px rgba(185,146,75,.34)}.fb-submit-link{margin-top:10px}
.fb-auth-bottom{margin:12px 0 0;text-align:center;color:#716552;font-size:13px}.fb-auth-bottom a{color:#8a672a;font-weight:950}
.fb-auth-reveal{opacity:0;transform:translateY(18px);animation:fcbFadeUp .7s ease forwards}.fb-auth-reveal:nth-child(2){animation-delay:.08s}
.alert{padding:12px 14px;border-radius:16px;margin:0 0 14px;font-weight:800;font-size:13px}.alert.error{background:rgba(180,30,30,.08);border:1px solid rgba(180,30,30,.18);color:#8a1d1d}.alert.success{background:rgba(15,143,95,.10);border:1px solid rgba(15,143,95,.18);color:#0f6f4d}
@media(max-width:1000px){.fcb-hero,.fcb-benefits,.fcb-visual-strip,.fcb-community,.fb-auth-shell{grid-template-columns:1fr}.fcb-purpose-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fcb-hero-visual,.fcb-photo-frame.main{min-height:480px;height:480px}.fb-auth-shell{min-height:auto}.fb-auth-visual{min-height:430px}}
@media(max-width:700px){.fcb-nav{flex-direction:column;align-items:flex-start}.fcb-nav nav{width:100%;overflow:auto;justify-content:flex-start}.fcb-hero-copy,.fcb-community,.fb-auth-card,.fb-auth-visual{padding:24px;border-radius:28px}.fcb-purpose-grid,.fcb-benefit-images,.fb-form-grid{grid-template-columns:1fr}.fcb-benefit-images figure.large,.fcb-benefit-images figure{min-height:300px}.fcb-side-image{width:112px;height:112px;border-radius:22px}.fcb-side-image.one{left:12px;top:18px}.fcb-side-image.two{right:12px;bottom:18px}.fcb-hero-visual,.fcb-photo-frame.main{min-height:430px;height:430px}.fcb-visual-strip img{height:310px}.fcb-social-wrap{align-items:center;flex-direction:column}.fb-auth-shell{margin:16px auto;width:min(100% - 24px,1080px)}.fb-auth-image{height:200px}}


/* Phase 6A Admin Backend Cleanup */
.stat-link{
    text-align:left;
    cursor:pointer;
    border:1px solid rgba(184,146,75,.14);
    font-family:inherit;
}
.stat-link:hover{
    transform:translateY(-4px);
    border-color:rgba(184,146,75,.38);
    box-shadow:0 24px 60px rgba(184,146,75,.14);
}
.table-actions{
    display:flex;
    align-items:center;
    gap:8px;
}
.table-action{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:30px;
    padding:0 10px;
    border-radius:999px;
    border:1px solid rgba(184,146,75,.22);
    background:#fffaf0;
    color:#7b5b21;
    font-weight:900;
    font-size:12px;
    cursor:pointer;
    transition:transform .16s ease, box-shadow .16s ease, background .16s ease;
}
.table-action:hover{
    transform:translateY(-2px);
    background:#fff;
    box-shadow:0 12px 28px rgba(184,146,75,.15);
}
.detail-modal-card{
    max-width:760px;
}
.detail-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    margin:16px 0;
}
.detail-grid.compact{
    grid-template-columns:repeat(3,minmax(0,1fr));
}
.detail-grid div{
    padding:14px;
    border-radius:16px;
    background:rgba(184,146,75,.08);
    border:1px solid rgba(184,146,75,.14);
}
.detail-grid span{
    display:block;
    color:#8a7a62;
    font-size:11px;
    font-weight:950;
    letter-spacing:.06em;
    text-transform:uppercase;
    margin-bottom:5px;
}
.detail-grid strong{
    color:#241a0c;
    font-size:13px;
    word-break:break-word;
}
.detail-note,
.message-preview{
    padding:14px;
    border-radius:16px;
    background:#fff;
    border:1px solid rgba(184,146,75,.16);
    color:#5d513e;
    line-height:1.65;
}
.message-preview{
    white-space:normal;
    max-height:260px;
    overflow:auto;
}
.admin-form-modal{
    width:min(760px, calc(100% - 24px));
    max-height:88vh;
    overflow-y:auto;
}
.template-form-modal{
    width:min(860px, calc(100% - 24px));
}
.admin-form-modal .form-grid.two{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
}
.admin-form-modal label{
    font-weight:800;
    color:#4d3a1c;
}
.admin-form-modal input,
.admin-form-modal select,
.admin-form-modal textarea{
    width:100%;
    box-sizing:border-box;
    margin-top:6px;
}
.consent-admin-box{
    display:grid;
    gap:8px;
    padding:13px;
    border-radius:16px;
    background:rgba(184,146,75,.08);
    border:1px solid rgba(184,146,75,.16);
}
.template-card{
    display:flex;
    flex-direction:column;
    gap:8px;
}
.template-card .table-action{
    width:max-content;
    margin-top:auto;
}
.status-badge.scheduled{
    background:rgba(184,146,75,.12);
    color:#8a672a;
    border-color:rgba(184,146,75,.30);
}
@media(max-width:760px){
    .detail-grid,
    .detail-grid.compact,
    .admin-form-modal .form-grid.two{
        grid-template-columns:1fr;
    }
}


/* Phase 6B Template Manager */
.template-helper{
    margin-bottom:18px;
}
.variable-pills,
.template-variable-help{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:10px;
}
.variable-pills span,
.template-variable-help span{
    padding:8px 10px;
    border-radius:999px;
    background:rgba(184,146,75,.10);
    border:1px solid rgba(184,146,75,.20);
    color:#7b5b21;
    font-size:12px;
    font-weight:900;
}
.template-manager-grid{
    align-items:stretch;
}
.pro-template-card{
    display:flex;
    flex-direction:column;
    gap:12px;
}
.template-card-top{
    display:flex;
    justify-content:space-between;
    gap:10px;
    align-items:center;
}
.template-card-top span,
.template-state{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:7px 10px;
    border-radius:999px;
    background:rgba(184,146,75,.10);
    color:#7b5b21;
    font-size:11px;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.05em;
}
.template-state{
    background:rgba(15,143,95,.10);
    color:#0f6f4d;
}
.template-subject{
    color:#6f604e;
    font-weight:800;
}
.template-preview-box{
    padding:14px;
    min-height:96px;
    border-radius:18px;
    background:#fff;
    border:1px solid rgba(184,146,75,.16);
    color:#5d513e;
    line-height:1.6;
    font-size:13px;
}
.template-actions{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    align-items:center;
    margin-top:auto;
}
.template-form-modal textarea{
    font-family:inherit;
}
.template-variable-help{
    padding:12px;
    border-radius:16px;
    background:rgba(184,146,75,.07);
    border:1px solid rgba(184,146,75,.14);
}
.template-variable-help strong{
    color:#241a0c;
    margin-right:4px;
    align-self:center;
}


/* Phase 6C.3 Prepare Birthday Message */
.birthday-prepare-modal{
    width:min(860px, calc(100% - 24px));
    max-height:88vh;
    overflow-y:auto;
}
.birthday-safe-note{
    margin-bottom:18px;
}
.birthday-prepare-modal textarea{
    font-family:inherit;
}
.birthday-prepare-modal small{
    display:block;
    color:#8a7a62;
    font-weight:700;
    margin-top:3px;
}


/* Phase 6C.4 Birthday Email Send Now */
.send-now-action{
    background:rgba(15,143,95,.10);
    color:#0f6f4d;
    border-color:rgba(15,143,95,.22);
}
.send-now-action:hover{
    background:rgba(15,143,95,.16);
    box-shadow:0 12px 28px rgba(15,143,95,.12);
}
.whatsapp-pending-note{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:30px;
    padding:0 10px;
    border-radius:999px;
    background:rgba(184,146,75,.10);
    color:#8a672a;
    font-size:12px;
    font-weight:900;
}


/* Phase 6C.5 Birthday Polish and Filters */
.birthday-message-centre{
    position:relative;
}
.birthday-message-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:14px;
    margin-bottom:12px;
}
.birthday-message-head h3{
    margin-bottom:4px;
}
.birthday-filter-bar{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin:12px 0 16px;
}
.birthday-filter{
    border:1px solid rgba(184,146,75,.20);
    background:#fff;
    color:#7b5b21;
    border-radius:999px;
    padding:8px 11px;
    font-size:12px;
    font-weight:950;
    cursor:pointer;
    transition:transform .16s ease, background .16s ease, box-shadow .16s ease;
}
.birthday-filter:hover{
    transform:translateY(-2px);
    box-shadow:0 12px 28px rgba(184,146,75,.12);
}
.birthday-filter.active{
    background:linear-gradient(135deg,#b8924b,#e7c673);
    color:#fff;
    border-color:transparent;
}
.birthday-message-row{
    transition:opacity .16s ease, transform .16s ease;
}
.birthday-message-row.is-hidden{
    display:none;
}
.birthday-message-row small{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:6px;
    margin-top:4px;
}
.mini-channel,
.mini-status,
.mini-time{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:22px;
    padding:0 8px;
    border-radius:999px;
    font-size:11px;
    font-weight:950;
}
.mini-channel.email{
    background:rgba(49,92,180,.10);
    color:#315cb4;
}
.mini-channel.whatsapp{
    background:rgba(15,143,95,.10);
    color:#0f8f5f;
}
.mini-status.pending{
    background:rgba(184,146,75,.12);
    color:#8a672a;
}
.mini-status.scheduled{
    background:rgba(91,73,170,.10);
    color:#5b49aa;
}
.mini-status.sent{
    background:rgba(15,143,95,.10);
    color:#0f8f5f;
}
.mini-status.failed{
    background:rgba(180,30,30,.10);
    color:#8a1d1d;
}
.mini-status.cancelled{
    background:rgba(80,80,80,.10);
    color:#555;
}
.mini-time{
    background:rgba(36,26,12,.06);
    color:#6f604e;
}
.birthday-filter-empty{
    padding:12px 14px;
    border-radius:16px;
    background:rgba(184,146,75,.08);
    border:1px solid rgba(184,146,75,.14);
}
@media(max-width:760px){
    .birthday-message-head{
        flex-direction:column;
    }
}


/* Phase 6C.5B Birthday filter hard fix */
.birthday-message-row[hidden],
.birthday-message-row.is-hidden{
    display:none !important;
}
.birthday-filter.active{
    pointer-events:auto;
}


/* Phase 6D.1 Campaign Builder Save-Only */
.campaign-builder-stats{
    margin-bottom:18px;
}
.campaign-safe-note{
    margin-bottom:18px;
}
.campaign-filter-bar{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin:12px 0 16px;
}
.campaign-filter{
    border:1px solid rgba(184,146,75,.20);
    background:#fff;
    color:#7b5b21;
    border-radius:999px;
    padding:8px 11px;
    font-size:12px;
    font-weight:950;
    cursor:pointer;
    transition:transform .16s ease, background .16s ease, box-shadow .16s ease;
}
.campaign-filter:hover{
    transform:translateY(-2px);
    box-shadow:0 12px 28px rgba(184,146,75,.12);
}
.campaign-filter.active{
    background:linear-gradient(135deg,#b8924b,#e7c673);
    color:#fff;
    border-color:transparent;
}
.campaign-row[hidden],
.campaign-row.is-hidden{
    display:none !important;
}
.campaign-row td strong{
    display:block;
}
.campaign-row td small{
    display:block;
    color:#8a7a62;
    margin-top:4px;
}
.campaign-form-modal{
    width:min(900px, calc(100% - 24px));
    max-height:88vh;
    overflow-y:auto;
}
.campaign-builder-form small{
    display:block;
    color:#8a7a62;
    font-weight:700;
    margin-top:3px;
}
.campaign-table-wrap .mini-status.ready{
    background:rgba(49,92,180,.10);
    color:#315cb4;
}
.campaign-table-wrap .mini-status.draft{
    background:rgba(184,146,75,.12);
    color:#8a672a;
}
.campaign-filter-empty{
    padding:12px 14px;
    border-radius:16px;
    background:rgba(184,146,75,.08);
    border:1px solid rgba(184,146,75,.14);
}
@media(max-width:760px){
    .campaign-filter-bar{
        gap:6px;
    }
    .campaign-form-modal{
        width:calc(100% - 18px);
    }
}


/* Phase 6D.2 Campaign Preview and Test Send */
.test-send-action{
    background:rgba(49,92,180,.10);
    color:#315cb4;
    border-color:rgba(49,92,180,.22);
}
.test-send-action:hover{
    background:rgba(49,92,180,.15);
    box-shadow:0 12px 28px rgba(49,92,180,.12);
}
.campaign-test-modal{
    width:min(820px, calc(100% - 24px));
    max-height:88vh;
    overflow-y:auto;
}
.campaign-sample-preview{
    background:rgba(15,143,95,.06);
    border-color:rgba(15,143,95,.16);
}
.campaign-test-log-panel{
    margin-top:18px;
}


/* Phase 6D.2B Campaign Test Send modal fix */
.campaign-test-fallback-modal{
    z-index:9999;
}
.campaign-test-fallback-modal .campaign-test-modal{
    width:min(760px, calc(100% - 24px));
    max-height:88vh;
    overflow-y:auto;
}


/* Phase 6E.1 Email Infrastructure and Deliverability */
.email-infra-panel,
.email-log-panel{
    margin-top:18px;
}
.inline-head{
    margin-bottom:14px;
}
.email-health-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
    margin:14px 0 20px;
}
.email-health-card{
    padding:16px;
    border-radius:20px;
    background:#fff;
    border:1px solid rgba(184,146,75,.16);
    box-shadow:0 14px 32px rgba(51,37,13,.05);
}
.email-health-card span{
    display:block;
    color:#6f604e;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.05em;
}
.email-health-card strong{
    display:block;
    margin-top:6px;
    color:#241a0c;
}
.email-health-card.passed{
    border-color:rgba(15,143,95,.22);
    background:rgba(15,143,95,.06);
}
.email-health-card.failed{
    border-color:rgba(180,30,30,.22);
    background:rgba(180,30,30,.06);
}
.email-health-card.pending{
    border-color:rgba(184,146,75,.20);
    background:rgba(184,146,75,.06);
}
.email-health-card.neutral{
    border-color:rgba(80,80,80,.18);
    background:rgba(80,80,80,.05);
}
.email-infra-form h4{
    margin-top:14px;
    color:#241a0c;
}
.email-infra-form small{
    display:block;
    color:#8a7a62;
    font-weight:700;
    margin-top:3px;
}
.form-grid.three{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
}
.email-test-inline{
    display:grid;
    grid-template-columns:1fr auto;
    gap:12px;
    align-items:end;
    margin-top:18px;
    padding:14px;
    border-radius:18px;
    background:rgba(184,146,75,.07);
    border:1px solid rgba(184,146,75,.14);
}
.email-last-test{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    align-items:center;
    margin-top:12px;
    color:#6f604e;
}
.email-last-test strong{
    color:#241a0c;
}
.email-log-panel .list-row small{
    display:block;
    color:#8a7a62;
    margin-top:4px;
}
@media(max-width:900px){
    .email-health-grid,
    .form-grid.three{
        grid-template-columns:1fr 1fr;
    }
}
@media(max-width:640px){
    .email-health-grid,
    .form-grid.three,
    .email-test-inline{
        grid-template-columns:1fr;
    }
}


/* Phase 6E.2 Email DNS and Sender Checklist */
.email-dns-panel{
    margin-top:18px;
}
.readiness-card{
    display:flex;
    justify-content:space-between;
    gap:18px;
    align-items:center;
    padding:18px;
    border-radius:22px;
    border:1px solid rgba(184,146,75,.18);
    background:rgba(184,146,75,.07);
    margin-bottom:14px;
}
.readiness-card.ready{
    border-color:rgba(15,143,95,.22);
    background:rgba(15,143,95,.07);
}
.readiness-card.not-ready{
    border-color:rgba(184,146,75,.22);
}
.readiness-card span{
    display:block;
    color:#8a672a;
    font-size:12px;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.05em;
}
.readiness-card strong{
    display:block;
    margin-top:5px;
    color:#241a0c;
    font-size:18px;
}
.readiness-card small{
    display:block;
    margin-top:4px;
    color:#6f604e;
    font-weight:800;
}
.readiness-score{
    width:84px;
    height:84px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#fff;
    color:#241a0c;
    font-size:22px;
    font-weight:1000;
    box-shadow:0 16px 40px rgba(51,37,13,.08);
}
.readiness-missing{
    padding:12px 14px;
    border-radius:16px;
    background:rgba(180,30,30,.06);
    border:1px solid rgba(180,30,30,.14);
    color:#6f604e;
    margin-bottom:18px;
}
.readiness-missing strong{
    color:#8a1d1d;
    display:block;
    margin-bottom:4px;
}
.email-dns-form h4{
    margin-top:16px;
    color:#241a0c;
}
.email-dns-form textarea{
    font-family:inherit;
}
@media(max-width:640px){
    .readiness-card{
        flex-direction:column;
        align-items:flex-start;
    }
}


/* Phase 6E.3 Consolidated Email Settings */
.settings-status.ok{
    background:rgba(15,143,95,.10);
    color:#0f6f4d;
}
.settings-status.warn{
    background:rgba(180,30,30,.10);
    color:#8a1d1d;
}
.legacy-sync-summary{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    margin:14px 0 16px;
}
.legacy-sync-summary div{
    padding:14px;
    border-radius:18px;
    border:1px solid rgba(184,146,75,.16);
    background:rgba(184,146,75,.06);
}
.legacy-sync-summary span{
    display:block;
    color:#8a672a;
    font-size:12px;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.05em;
}
.legacy-sync-summary strong{
    display:block;
    margin-top:5px;
    color:#241a0c;
    overflow-wrap:anywhere;
}
@media(max-width:820px){
    .legacy-sync-summary{
        grid-template-columns:1fr;
    }
}


/* Phase 6E.4 Unsubscribe and Preferences Foundation */
.preference-log-panel{
    margin-top:18px;
}
.preference-public-links{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
    margin:14px 0 18px;
}
.preference-public-links div{
    padding:14px;
    border-radius:18px;
    border:1px solid rgba(184,146,75,.16);
    background:rgba(184,146,75,.06);
}
.preference-public-links span{
    display:block;
    color:#8a672a;
    font-size:12px;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.05em;
}
.preference-public-links strong{
    display:block;
    margin-top:5px;
    color:#241a0c;
    overflow-wrap:anywhere;
}
.preference-log-panel .list-row small{
    display:block;
    color:#8a7a62;
    margin-top:4px;
}
@media(max-width:760px){
    .preference-public-links{
        grid-template-columns:1fr;
    }
}


/* Phase 6E.5 Campaign Footer Links */
.campaign-footer-panel{
    margin-top:18px;
}
.campaign-footer-form textarea{
    font-family:inherit;
}
.footer-preview-box{
    padding:14px;
    border-radius:18px;
    border:1px solid rgba(184,146,75,.16);
    background:rgba(184,146,75,.06);
}
.footer-preview-box strong{
    display:block;
    margin-bottom:8px;
    color:#241a0c;
}
.footer-preview-box pre{
    margin:0;
    white-space:pre-wrap;
    font-family:inherit;
    color:#6f604e;
    line-height:1.55;
}


/* Phase 6F.1 Campaign Queue Foundation */
.queue-stat{
    border-color:rgba(49,92,180,.14);
}
.queue-action{
    background:rgba(49,92,180,.10);
    color:#315cb4;
    border-color:rgba(49,92,180,.22);
}
.queue-action:hover{
    background:rgba(49,92,180,.15);
    box-shadow:0 12px 28px rgba(49,92,180,.12);
}
.muted-action{
    background:rgba(80,80,80,.08);
    color:#555;
    border-color:rgba(80,80,80,.14);
}
.campaign-queue-panel,
.campaign-queue-run-panel{
    margin-top:18px;
}
.queue-mini-stats{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:10px;
    margin:12px 0 18px;
}
.queue-mini-stats div{
    padding:14px;
    border-radius:18px;
    border:1px solid rgba(184,146,75,.16);
    background:rgba(184,146,75,.06);
}
.queue-mini-stats span{
    display:block;
    color:#8a672a;
    font-size:12px;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.05em;
}
.queue-mini-stats strong{
    display:block;
    margin-top:5px;
    color:#241a0c;
    font-size:20px;
}
.campaign-queue-panel .list-row small,
.campaign-queue-run-panel .list-row small{
    display:block;
    color:#8a7a62;
    margin-top:4px;
}
@media(max-width:900px){
    .queue-mini-stats{
        grid-template-columns:1fr 1fr;
    }
}
@media(max-width:600px){
    .queue-mini-stats{
        grid-template-columns:1fr;
    }
}


/* Phase 6F.2 Controlled Manual Batch Send */
.queue-send-stat{
    border-color:rgba(15,143,95,.16);
}
.send-batch-action{
    background:rgba(15,143,95,.10);
    color:#0f6f4d;
    border-color:rgba(15,143,95,.22);
}
.send-batch-action:hover{
    background:rgba(15,143,95,.15);
    box-shadow:0 12px 28px rgba(15,143,95,.12);
}
.manual-batch-note{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
    margin:12px 0 18px;
}
.manual-batch-note div{
    padding:14px;
    border-radius:18px;
    border:1px solid rgba(15,143,95,.16);
    background:rgba(15,143,95,.06);
}
.manual-batch-note strong{
    display:block;
    color:#241a0c;
    margin-bottom:4px;
}
.manual-batch-note span{
    display:block;
    color:#6f604e;
    line-height:1.45;
}
@media(max-width:760px){
    .manual-batch-note{
        grid-template-columns:1fr;
    }
}


/* Phase 6F.3 Batch Safety, Retry Failed, Cancel Pending */
.retry-action{
    background:rgba(184,146,75,.12);
    color:#8a672a;
    border-color:rgba(184,146,75,.24);
}
.retry-action:hover{
    background:rgba(184,146,75,.18);
    box-shadow:0 12px 28px rgba(184,146,75,.12);
}
.cancel-queue-action{
    background:rgba(180,30,30,.08);
    color:#8a1d1d;
    border-color:rgba(180,30,30,.18);
}
.cancel-queue-action:hover{
    background:rgba(180,30,30,.12);
    box-shadow:0 12px 28px rgba(180,30,30,.10);
}
.manual-batch-note{
    grid-template-columns:repeat(2,minmax(0,1fr));
}
@media(max-width:760px){
    .manual-batch-note{
        grid-template-columns:1fr;
    }
}


/* Phase 6F.4 Scheduled Campaign Cron Foundation */
.campaign-cron-panel{
    margin-top:18px;
}
.cron-status-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
    margin:12px 0 18px;
}
.cron-status-grid div,
.cron-secret-box,
.cron-command-box{
    padding:14px;
    border-radius:18px;
    border:1px solid rgba(184,146,75,.16);
    background:rgba(184,146,75,.06);
}
.cron-status-grid span,
.cron-secret-box span{
    display:block;
    color:#8a672a;
    font-size:12px;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.05em;
}
.cron-status-grid strong,
.cron-secret-box strong{
    display:block;
    margin-top:5px;
    color:#241a0c;
    overflow-wrap:anywhere;
}
.cron-command-box strong{
    display:block;
    margin-bottom:8px;
    color:#241a0c;
}
.cron-command-box code{
    display:block;
    white-space:pre-wrap;
    overflow-wrap:anywhere;
    color:#6f604e;
}
.danger-check{
    border:1px solid rgba(180,30,30,.18);
    background:rgba(180,30,30,.06);
    padding:12px;
    border-radius:16px;
}
@media(max-width:900px){
    .cron-status-grid{
        grid-template-columns:1fr 1fr;
    }
}
@media(max-width:640px){
    .cron-status-grid{
        grid-template-columns:1fr;
    }
}


/* Phase 6F.5 Scheduled Campaign Cron Test and Safety Polish */
.cron-test-card,
.cron-live-confirm-box{
    display:flex;
    justify-content:space-between;
    gap:14px;
    align-items:center;
    padding:14px;
    border-radius:18px;
    border:1px solid rgba(49,92,180,.16);
    background:rgba(49,92,180,.06);
    margin:12px 0 18px;
}
.cron-test-card strong,
.cron-live-confirm-box strong{
    display:block;
    color:#241a0c;
}
.cron-test-card span,
.cron-test-card small{
    display:block;
    color:#6f604e;
    margin-top:4px;
}
.cron-live-confirm-box{
    display:block;
    border-color:rgba(180,30,30,.18);
    background:rgba(180,30,30,.06);
}
.cron-live-confirm-box code{
    display:inline-block;
    padding:7px 10px;
    border-radius:10px;
    background:#fff;
    color:#8a1d1d;
    font-weight:950;
    margin:6px 0 10px;
}
.cron-live-confirm-box input{
    width:100%;
}
.campaign-cron-log-panel{
    margin-top:18px;
}
.campaign-cron-log-panel .list-row small{
    display:block;
    color:#8a7a62;
    margin-top:4px;
}
@media(max-width:760px){
    .cron-test-card{
        display:block;
    }
    .cron-test-card form{
        margin-top:12px;
    }
}


/* Phase 6F.6 Campaign Reports and Delivery Analytics */
.campaign-report-panel{
    margin-top:18px;
}
.report-note{
    display:flex;
    justify-content:space-between;
    gap:12px;
    align-items:center;
    padding:14px;
    border-radius:18px;
    border:1px solid rgba(184,146,75,.16);
    background:rgba(184,146,75,.06);
    margin-bottom:14px;
}
.report-note strong{
    color:#241a0c;
}
.report-note span{
    color:#6f604e;
}
.campaign-report-card{
    border:1px solid rgba(184,146,75,.16);
    background:#fff;
    border-radius:22px;
    padding:16px;
    box-shadow:0 14px 34px rgba(51,37,13,.05);
    margin-bottom:14px;
}
.campaign-report-head{
    display:flex;
    justify-content:space-between;
    gap:12px;
    align-items:center;
    margin-bottom:14px;
}
.campaign-report-head h4{
    margin:0;
    color:#241a0c;
}
.campaign-report-head span{
    display:block;
    color:#8a7a62;
    margin-top:4px;
}
.campaign-report-metrics{
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:10px;
}
.campaign-report-metrics div{
    padding:12px;
    border-radius:16px;
    background:rgba(184,146,75,.06);
    border:1px solid rgba(184,146,75,.12);
}
.campaign-report-metrics span{
    display:block;
    color:#8a672a;
    font-size:11px;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.05em;
}
.campaign-report-metrics strong{
    display:block;
    margin-top:5px;
    color:#241a0c;
}
.progress-line{
    height:10px;
    border-radius:999px;
    background:rgba(184,146,75,.12);
    overflow:hidden;
    margin:14px 0 6px;
}
.progress-line span{
    display:block;
    height:100%;
    border-radius:999px;
    background:linear-gradient(135deg,#b8924b,#e7c673);
}
.report-runs{
    margin-top:12px;
    padding-top:12px;
    border-top:1px solid rgba(184,146,75,.12);
}
.report-runs strong,
.report-runs small{
    display:block;
}
.report-runs small{
    color:#6f604e;
    margin-top:5px;
}
@media(max-width:980px){
    .campaign-report-metrics{
        grid-template-columns:1fr 1fr 1fr;
    }
}
@media(max-width:640px){
    .campaign-report-head,
    .report-note{
        display:block;
    }
    .campaign-report-head a{
        margin-top:10px;
    }
    .campaign-report-metrics{
        grid-template-columns:1fr 1fr;
    }
}


/* Phase 6F.7 Email Admin UI Clean-up and Production Polish */
.admin-polish-summary,
.admin-polish-settings-note{
    margin:16px 0;
    border-color:rgba(15,143,95,.16);
    background:rgba(15,143,95,.045);
}
.admin-polish-summary{
    display:flex;
    justify-content:space-between;
    gap:18px;
    align-items:flex-start;
}
.admin-polish-summary h3,
.admin-polish-settings-note h3{
    margin:0 0 5px;
    color:#241a0c;
}
.admin-polish-summary p,
.admin-polish-settings-note p{
    margin:0;
    color:#6f604e;
    line-height:1.45;
}
.admin-polish-chips{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    justify-content:flex-end;
}
.admin-polish-chips span,
.panel-count-pill{
    display:inline-flex;
    align-items:center;
    border-radius:999px;
    padding:7px 10px;
    font-size:12px;
    font-weight:900;
    background:#fff;
    color:#7b5b21;
    border:1px solid rgba(184,146,75,.18);
    white-space:nowrap;
}
.panel-count-pill{
    margin:4px 0 10px;
}
.campaign-queue-panel .list-row,
.campaign-queue-run-panel .list-row,
.campaign-cron-log-panel .list-row,
.preference-log-panel .list-row,
.email-log-panel .list-row{
    padding-top:10px;
    padding-bottom:10px;
}
.campaign-queue-panel .message-preview,
.campaign-report-card .report-runs{
    max-height:180px;
    overflow:auto;
}
.campaign-report-panel,
.campaign-queue-panel,
.campaign-queue-run-panel,
.campaign-cron-panel,
.campaign-cron-log-panel,
.campaign-footer-panel,
.preference-log-panel,
.email-log-panel{
    scroll-margin-top:80px;
}
@media(max-width:760px){
    .admin-polish-summary{
        display:block;
    }
    .admin-polish-chips{
        justify-content:flex-start;
        margin-top:12px;
    }
}


.admin-collapse-toggle{
    margin:6px 0 10px;
}
.admin-panel-collapsed > *:not(h3):not(.admin-collapse-toggle){
    display:none !important;
}


/* Phase 6F.8 cPanel Cron Setup and Live Scheduled Email Test */
.cpanel-cron-panel{
    margin-top:18px;
}
.cpanel-cron-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
    margin:12px 0 18px;
}
.cpanel-cron-grid div,
.cron-guide-box,
.cron-command-options div,
.cron-live-test-box,
.small-test-campaigns{
    padding:14px;
    border-radius:18px;
    border:1px solid rgba(184,146,75,.16);
    background:rgba(184,146,75,.06);
}
.cpanel-cron-grid span{
    display:block;
    color:#8a672a;
    font-size:12px;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.05em;
}
.cpanel-cron-grid strong{
    display:block;
    margin-top:5px;
    color:#241a0c;
}
.cron-guide-box summary{
    cursor:pointer;
    font-weight:950;
    color:#241a0c;
}
.cron-guide-box ol{
    margin:12px 0 0;
    color:#6f604e;
    line-height:1.6;
}
.cron-command-options{
    display:grid;
    gap:10px;
    margin:12px 0 16px;
}
.cron-command-options strong,
.cron-live-test-box h4,
.small-test-campaigns strong{
    display:block;
    color:#241a0c;
    margin-bottom:8px;
}
.cron-command-options code{
    display:block;
    padding:10px;
    border-radius:12px;
    background:#fff;
    color:#6f604e;
    white-space:pre-wrap;
    overflow-wrap:anywhere;
}
.cron-live-test-box{
    margin-top:14px;
    border-color:rgba(15,143,95,.18);
    background:rgba(15,143,95,.05);
}
.small-test-campaigns{
    margin-top:14px;
}
.small-test-campaigns small{
    display:block;
    color:#6f604e;
    margin-top:5px;
}
@media(max-width:900px){
    .cpanel-cron-grid{
        grid-template-columns:1fr 1fr;
    }
}
@media(max-width:640px){
    .cpanel-cron-grid{
        grid-template-columns:1fr;
    }
}


/* Phase 6F.9 Production Email Sending Limits and Schedule Control */
.production-throttle-summary,
.production-throttle-settings-panel{
    margin-top:18px;
    border-color:rgba(49,92,180,.16);
    background:rgba(49,92,180,.045);
}
.production-throttle-summary{
    display:grid;
    grid-template-columns:1.1fr 2fr;
    gap:18px;
    align-items:start;
}
.production-throttle-summary h3,
.production-throttle-settings-panel h3{
    margin:0 0 6px;
    color:#241a0c;
}
.production-throttle-summary p{
    margin:0;
    color:#6f604e;
    line-height:1.45;
}
.throttle-grid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:10px;
}
.throttle-grid div,
.throttle-current-status{
    padding:12px;
    border-radius:16px;
    border:1px solid rgba(49,92,180,.14);
    background:#fff;
}
.throttle-grid span{
    display:block;
    color:#315cb4;
    font-size:11px;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.05em;
}
.throttle-grid strong{
    display:block;
    margin-top:5px;
    color:#241a0c;
}
.schedule-hold-note{
    display:inline-flex;
    align-items:center;
    border-radius:999px;
    padding:7px 10px;
    background:rgba(184,146,75,.10);
    color:#7b5b21;
    font-size:12px;
    font-weight:900;
    border:1px solid rgba(184,146,75,.18);
    white-space:normal;
}
.send-now-override-action{
    background:rgba(180,30,30,.08);
    color:#8a1d1d;
    border-color:rgba(180,30,30,.18);
}
.send-now-override-action:hover{
    background:rgba(180,30,30,.12);
    box-shadow:0 12px 28px rgba(180,30,30,.10);
}
.throttle-current-status{
    margin:12px 0;
}
.throttle-current-status strong,
.throttle-current-status span{
    display:block;
}
.throttle-current-status span{
    margin-top:5px;
    color:#6f604e;
}
@media(max-width:980px){
    .production-throttle-summary{
        grid-template-columns:1fr;
    }
    .throttle-grid{
        grid-template-columns:1fr 1fr;
    }
}
@media(max-width:640px){
    .throttle-grid{
        grid-template-columns:1fr;
    }
}


/* Phase 6F.10 Live SMTP Connector */
.live-smtp-connector-panel{
    margin-top:18px;
    border-color:rgba(15,143,95,.16);
    background:rgba(15,143,95,.045);
}
.smtp-connector-grid,
.smtp-current-details{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
    margin:12px 0 16px;
}
.smtp-connector-grid div,
.smtp-current-details div,
.smtp-last-result{
    padding:12px;
    border-radius:16px;
    border:1px solid rgba(15,143,95,.14);
    background:#fff;
}
.smtp-connector-grid span,
.smtp-current-details span{
    display:block;
    color:#0f6f4d;
    font-size:11px;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.05em;
}
.smtp-connector-grid strong,
.smtp-current-details strong{
    display:block;
    margin-top:5px;
    color:#241a0c;
    overflow-wrap:anywhere;
}
.smtp-last-result{
    margin-top:14px;
}
.smtp-last-result strong,
.smtp-last-result span,
.smtp-last-result small{
    display:block;
}
.smtp-last-result span{
    color:#6f604e;
    margin-top:5px;
}
.smtp-last-result small{
    color:#8a1d1d;
    margin-top:7px;
}
@media(max-width:900px){
    .smtp-connector-grid,
    .smtp-current-details{
        grid-template-columns:1fr 1fr;
    }
}
@media(max-width:640px){
    .smtp-connector-grid,
    .smtp-current-details{
        grid-template-columns:1fr;
    }
}


/* Phase 6F.11 Final Email Production Readiness */
.email-readiness-panel{
    margin-top:18px;
    border-color:rgba(15,143,95,.16);
    background:rgba(15,143,95,.045);
}
.readiness-summary{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
    margin:12px 0 16px;
}
.readiness-summary div,
.readiness-check,
.readiness-history-box{
    padding:12px;
    border-radius:16px;
    border:1px solid rgba(15,143,95,.14);
    background:#fff;
}
.readiness-summary span{
    display:block;
    color:#0f6f4d;
    font-size:11px;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.05em;
}
.readiness-summary strong{
    display:block;
    margin-top:5px;
    color:#241a0c;
}
.readiness-summary.needs_attention div{
    border-color:rgba(180,30,30,.16);
}
.readiness-main-message{
    margin:0 0 14px;
    color:#6f604e;
    line-height:1.5;
}
.readiness-check-list{
    display:grid;
    gap:10px;
    margin:14px 0;
}
.readiness-check{
    position:relative;
}
.readiness-check strong,
.readiness-check span,
.readiness-check small{
    display:block;
}
.readiness-check span{
    margin-top:4px;
    font-weight:950;
    color:#0f6f4d;
}
.readiness-check.needs_attention span{
    color:#8a1d1d;
}
.readiness-check.needs_attention{
    border-color:rgba(180,30,30,.16);
    background:rgba(180,30,30,.035);
}
.readiness-check small{
    margin-top:5px;
    color:#6f604e;
    line-height:1.45;
}
.readiness-notes-form{
    margin-top:14px;
}
.readiness-history-box{
    margin-top:14px;
}
.readiness-history-box summary{
    cursor:pointer;
    font-weight:950;
    color:#241a0c;
}
@media(max-width:900px){
    .readiness-summary{
        grid-template-columns:1fr 1fr;
    }
}
@media(max-width:640px){
    .readiness-summary{
        grid-template-columns:1fr;
    }
}


/* Phase 6G.1 WhatsApp Provider Settings and Logs Foundation */
.whatsapp-provider-panel{
    margin-top:18px;
    border-color:rgba(37,211,102,.22);
    background:rgba(37,211,102,.045);
}
.whatsapp-provider-summary{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
    margin:12px 0 16px;
}
.whatsapp-provider-summary div,
.whatsapp-readiness-check,
.whatsapp-log-panel-mini{
    padding:12px;
    border-radius:16px;
    border:1px solid rgba(37,211,102,.18);
    background:#fff;
}
.whatsapp-provider-summary span{
    display:block;
    color:#0f6f4d;
    font-size:11px;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.05em;
}
.whatsapp-provider-summary strong{
    display:block;
    margin-top:5px;
    color:#241a0c;
    overflow-wrap:anywhere;
}
.whatsapp-provider-summary.needs_attention div{
    border-color:rgba(184,146,75,.18);
}
.whatsapp-main-message{
    margin:0 0 14px;
    color:#6f604e;
    line-height:1.5;
}
.whatsapp-readiness-list{
    display:grid;
    gap:10px;
    margin:14px 0;
}
.whatsapp-readiness-check strong,
.whatsapp-readiness-check span,
.whatsapp-readiness-check small{
    display:block;
}
.whatsapp-readiness-check span{
    margin-top:4px;
    color:#0f6f4d;
    font-weight:950;
}
.whatsapp-readiness-check.needs_attention{
    border-color:rgba(184,146,75,.18);
    background:rgba(184,146,75,.04);
}
.whatsapp-readiness-check.needs_attention span{
    color:#8a672a;
}
.whatsapp-readiness-check small{
    margin-top:5px;
    color:#6f604e;
    line-height:1.45;
}
.whatsapp-log-panel-mini{
    margin-top:14px;
}
.whatsapp-log-panel-mini h4{
    margin:0 0 10px;
    color:#241a0c;
}
.whatsapp-log-panel-mini .list-row small{
    display:block;
    color:#6f604e;
    margin-top:4px;
}
@media(max-width:900px){
    .whatsapp-provider-summary{
        grid-template-columns:1fr 1fr;
    }
}
@media(max-width:640px){
    .whatsapp-provider-summary{
        grid-template-columns:1fr;
    }
}


/* Phase 6G.1C remove duplicate WhatsApp provider settings */
.legacy-moved-note{
    margin-top:14px;
    padding:12px;
    border-radius:16px;
    border:1px solid rgba(37,211,102,.18);
    background:rgba(37,211,102,.05);
}
.legacy-moved-note strong,
.legacy-moved-note span{
    display:block;
}
.legacy-moved-note strong{
    color:#241a0c;
    margin-bottom:4px;
}
.legacy-moved-note span{
    color:#6f604e;
    line-height:1.45;
}


/* Phase 6G.2 WhatsApp Queue and Consent Foundation */
.whatsapp-queue-panel{
    margin-top:18px;
    border-color:rgba(37,211,102,.22);
    background:rgba(37,211,102,.045);
}
.whatsapp-queue-action{
    background:rgba(37,211,102,.10);
    color:#0f6f4d;
    border-color:rgba(37,211,102,.22);
}
.whatsapp-queue-action:hover{
    background:rgba(37,211,102,.15);
    box-shadow:0 12px 28px rgba(37,211,102,.12);
}
.cancel-whatsapp-queue-action{
    background:rgba(180,30,30,.08);
    color:#8a1d1d;
    border-color:rgba(180,30,30,.18);
}
.whatsapp-queue-stats{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:10px;
    margin:12px 0 18px;
}
.whatsapp-queue-stats div{
    padding:14px;
    border-radius:18px;
    border:1px solid rgba(37,211,102,.18);
    background:#fff;
}
.whatsapp-queue-stats span{
    display:block;
    color:#0f6f4d;
    font-size:12px;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.05em;
}
.whatsapp-queue-stats strong{
    display:block;
    margin-top:5px;
    color:#241a0c;
    font-size:20px;
}
.whatsapp-queue-panel .list-row small,
.whatsapp-queue-runs .list-row small{
    display:block;
    color:#6f604e;
    margin-top:4px;
}
.whatsapp-queue-runs{
    margin-top:16px;
    padding-top:12px;
    border-top:1px solid rgba(37,211,102,.16);
}
.whatsapp-queue-runs h4{
    margin:0 0 10px;
    color:#241a0c;
}
@media(max-width:900px){
    .whatsapp-queue-stats{
        grid-template-columns:1fr 1fr;
    }
}
@media(max-width:600px){
    .whatsapp-queue-stats{
        grid-template-columns:1fr;
    }
}


/* Phase 6G.3 WhatsApp Templates and Message Preview */
.whatsapp-template-panel{
    margin:18px 0;
    border-color:rgba(37,211,102,.22);
    background:rgba(37,211,102,.045);
}
.whatsapp-template-grid{
    margin-top:12px;
}
.whatsapp-template-card{
    border-color:rgba(37,211,102,.18);
}
.whatsapp-template-card .template-card-top span:first-child{
    background:rgba(37,211,102,.10);
    color:#0f6f4d;
}
.template-meta-line{
    display:grid;
    gap:4px;
    margin-top:10px;
}
.template-meta-line small{
    color:#6f604e;
    overflow-wrap:anywhere;
}
.modal-variable-pills{
    margin:4px 0 10px;
}
.whatsapp-template-panel .message-preview{
    max-height:220px;
    overflow:auto;
}
.compact-actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
}
@media(max-width:640px){
    .compact-actions{
        width:100%;
    }
    .compact-actions .btn{
        width:100%;
        justify-content:center;
    }
}


/* Phase 6G.4 WhatsApp Manual Test Send Foundation */
.whatsapp-manual-test-panel{
    margin-top:18px;
    border-color:rgba(37,211,102,.22);
    background:rgba(37,211,102,.045);
}
.whatsapp-test-summary{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
    margin:12px 0 16px;
}
.whatsapp-test-summary div,
.whatsapp-test-last-result,
.whatsapp-test-log-list,
.whatsapp-manual-settings{
    padding:12px;
    border-radius:16px;
    border:1px solid rgba(37,211,102,.18);
    background:#fff;
}
.whatsapp-test-summary span{
    display:block;
    color:#0f6f4d;
    font-size:11px;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.05em;
}
.whatsapp-test-summary strong{
    display:block;
    margin-top:5px;
    color:#241a0c;
    overflow-wrap:anywhere;
}
.whatsapp-manual-settings{
    margin-top:14px;
}
.whatsapp-manual-settings summary{
    cursor:pointer;
    font-weight:950;
    color:#241a0c;
}
.whatsapp-manual-settings form{
    margin-top:12px;
}
.whatsapp-test-last-result{
    margin-top:14px;
}
.whatsapp-test-last-result strong,
.whatsapp-test-last-result span{
    display:block;
}
.whatsapp-test-last-result span{
    color:#6f604e;
    margin-top:4px;
}
.whatsapp-test-log-list{
    margin-top:14px;
}
.whatsapp-test-log-list h4{
    margin:0 0 10px;
    color:#241a0c;
}
.whatsapp-test-log-list .list-row small{
    display:block;
    color:#6f604e;
    margin-top:4px;
}
@media(max-width:900px){
    .whatsapp-test-summary{
        grid-template-columns:1fr 1fr;
    }
}
@media(max-width:640px){
    .whatsapp-test-summary{
        grid-template-columns:1fr;
    }
}


/* Phase 6G.5 WhatsApp Provider Connector and Live Single Test */
.whatsapp-connector-panel{
    margin-top:18px;
    border-color:rgba(37,211,102,.22);
    background:rgba(37,211,102,.045);
}
.whatsapp-connector-summary{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
    margin:12px 0 16px;
}
.whatsapp-connector-summary div,
.whatsapp-connector-check,
.whatsapp-connector-last{
    padding:12px;
    border-radius:16px;
    border:1px solid rgba(37,211,102,.18);
    background:#fff;
}
.whatsapp-connector-summary.needs_attention div,
.whatsapp-connector-check.needs_attention{
    border-color:rgba(184,146,75,.22);
    background:rgba(184,146,75,.04);
}
.whatsapp-connector-summary span{
    display:block;
    color:#0f6f4d;
    font-size:11px;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.05em;
}
.whatsapp-connector-summary strong{
    display:block;
    margin-top:5px;
    color:#241a0c;
    overflow-wrap:anywhere;
}
.whatsapp-connector-message{
    margin:0 0 14px;
    color:#6f604e;
    line-height:1.5;
}
.whatsapp-connector-checks{
    display:grid;
    gap:10px;
    margin:14px 0;
}
.whatsapp-connector-check strong,
.whatsapp-connector-check span,
.whatsapp-connector-check small,
.whatsapp-connector-last strong,
.whatsapp-connector-last span,
.whatsapp-connector-last small{
    display:block;
}
.whatsapp-connector-check span{
    margin-top:4px;
    color:#0f6f4d;
    font-weight:950;
}
.whatsapp-connector-check.needs_attention span{
    color:#8a672a;
}
.whatsapp-connector-check small,
.whatsapp-connector-last span,
.whatsapp-connector-last small{
    margin-top:5px;
    color:#6f604e;
    line-height:1.45;
}
.whatsapp-connector-last{
    margin-top:14px;
}
@media(max-width:900px){
    .whatsapp-connector-summary{
        grid-template-columns:1fr 1fr;
    }
}
@media(max-width:640px){
    .whatsapp-connector-summary{
        grid-template-columns:1fr;
    }
}


/* Phase 6G.5D Live WhatsApp Template Test Fix */
.live-template-note{
    margin:10px 0 14px;
    padding:12px;
    border-radius:16px;
    border:1px solid rgba(37,211,102,.18);
    background:rgba(37,211,102,.06);
}
.live-template-note strong,
.live-template-note span{
    display:block;
}
.live-template-note strong{
    color:#241a0c;
    margin-bottom:4px;
}
.live-template-note span{
    color:#6f604e;
    line-height:1.45;
}
.live-template-note code{
    padding:2px 6px;
    border-radius:8px;
    background:#fff;
    color:#0f6f4d;
}
