:root{--primary:#2563eb;--primary2:#4f46e5;--ink:#13213c;--muted:#6b7280;--line:#e6eaf0;--bg:#f6f8fc;--sidebar:#0d1220}.app-bg{background:var(--bg);color:var(--ink)}body{color:var(--ink)}.navbar-brand{color:var(--ink)}.brand-mark{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,var(--primary),var(--primary2));color:white;display:grid;place-items:center;flex:0 0 auto}.hero-section{background:radial-gradient(circle at 85% 20%,rgba(37,99,235,.13),transparent 28%),linear-gradient(180deg,#fff,#f6f8fc)}.py-lg-6{padding-top:6rem!important;padding-bottom:6rem!important}.browser-card{border:1px solid var(--line);background:white;border-radius:22px;overflow:hidden}.browser-top{height:48px;background:#f8fafc;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:7px;padding:0 18px}.browser-top span{width:10px;height:10px;border-radius:50%;background:#cbd5e1}.demo-book-card{border:1px solid var(--line);border-radius:16px;padding:16px;display:flex;gap:14px;align-items:center}.book-icon{width:48px;height:48px;border-radius:14px;background:#eef4ff;color:var(--primary);display:grid;place-items:center;font-size:20px}.feature-card,.ebook-card,.side-panel,.content-card,.stat-card,.plan-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px}.step-num{width:42px;height:42px;border-radius:12px;background:#eaf1ff;color:var(--primary);font-weight:800;display:grid;place-items:center;margin-bottom:18px}.mini-feature{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;display:flex;align-items:center;gap:12px;font-weight:600}.mini-feature i{color:var(--primary);width:28px}.auth-wrap{min-height:76vh;display:grid;place-items:center;padding-top:50px;padding-bottom:50px}.auth-card{width:min(100%,480px);background:#fff;border:1px solid var(--line);border-radius:24px;padding:32px;box-shadow:0 12px 40px rgba(20,35,60,.06)}.auth-card-pro{box-shadow:0 24px 70px rgba(20,35,60,.10)}.btn-google{background:#fff;border:1px solid #dbe0e8;color:#1f2937;font-weight:600;display:flex;align-items:center;justify-content:center;gap:10px}.btn-google:hover{background:#f8fafc;border-color:#cbd5e1}.google-g{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;font-weight:800;color:#4285f4;background:#fff;border:1px solid #e5e7eb}.auth-divider{display:flex;align-items:center;gap:12px;color:#9ca3af;font-size:.85rem;margin:20px 0}.auth-divider:before,.auth-divider:after{content:"";height:1px;background:#e5e7eb;flex:1}.empty-state{background:#fff;border:1px dashed #cbd5e1;border-radius:24px;padding:64px 30px;text-align:center}.empty-state.compact{padding:42px 24px}.empty-icon{width:74px;height:74px;border-radius:22px;background:#eef4ff;color:var(--primary);display:grid;place-items:center;font-size:30px;margin:0 auto 20px}.ebook-card{box-shadow:0 8px 24px rgba(20,35,60,.04)}.book-icon-lg{font-size:30px;color:#94a3b8}.ebook-url{font-size:.92rem;text-decoration:none;word-break:break-all}.editor-shell{max-width:1250px;margin:auto}.code-editor{width:100%;min-height:620px;background:#0f172a;color:#e2e8f0;border:0;border-radius:18px;padding:20px;font:13px/1.55 Consolas,Monaco,'Courier New',monospace;resize:vertical;tab-size:2;box-shadow:inset 0 0 0 1px rgba(255,255,255,.07)}.code-editor:focus{outline:3px solid rgba(37,99,235,.15)}.publish-note{display:flex;gap:10px;background:#eff6ff;color:#1e40af;padding:14px;border-radius:14px;font-size:.88rem}.danger-zone{border:1px solid #fecaca;background:#fff;border-radius:18px;padding:18px;display:flex;justify-content:space-between;align-items:center;gap:20px}.upgrade-item{display:flex;align-items:center;gap:10px}.upgrade-item i{color:#16a34a}.min-w-0{min-width:0}

/* Member app */
.member-body{background:#f3f5f8;margin:0}.member-layout{min-height:100vh}.member-sidebar{position:fixed;inset:0 auto 0 0;width:270px;background:var(--sidebar);color:#fff;z-index:1040;padding:22px 16px;display:flex;flex-direction:column}.sidebar-brand{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 6px 22px}.sidebar-brand a{color:#fff}.sidebar-nav{display:flex;flex-direction:column;gap:7px;overflow:auto}.sidebar-link{color:#cbd5e1;text-decoration:none;padding:12px 13px;border-radius:13px;display:flex;align-items:center;gap:12px;font-weight:600;transition:.18s}.sidebar-link i{width:20px;text-align:center}.sidebar-link:hover{background:rgba(255,255,255,.07);color:#fff}.sidebar-link.active{background:linear-gradient(135deg,#2563eb,#4f46e5);color:#fff;box-shadow:0 8px 20px rgba(37,99,235,.25)}.sidebar-section{font-size:.68rem;letter-spacing:.12em;color:#64748b;font-weight:800;margin:20px 12px 4px}.soon-badge{margin-left:auto;font-size:.62rem;background:rgba(255,255,255,.1);padding:3px 7px;border-radius:999px}.sidebar-user{margin-top:auto;border-top:1px solid rgba(255,255,255,.09);padding:18px 6px 0;display:flex;align-items:center;gap:10px}.avatar-circle{width:38px;height:38px;border-radius:50%;background:#dbeafe;color:#1d4ed8;display:grid;place-items:center;font-size:.8rem;font-weight:800;flex:0 0 auto}.sidebar-logout{color:#94a3b8;padding:8px}.sidebar-logout:hover{color:#fff}.member-content{margin-left:270px;min-height:100vh;display:flex;flex-direction:column}.member-topbar{height:68px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 24px;position:sticky;top:0;z-index:1020}.member-page{width:100%;max-width:1600px;margin:0 auto}.member-footer{margin-top:auto;border-top:1px solid var(--line);padding:20px 28px;color:#7c8798;font-size:.82rem;display:flex;justify-content:space-between;gap:12px}.page-heading{font-weight:800;letter-spacing:-.025em}.eyebrow{font-size:.73rem;font-weight:800;letter-spacing:.12em;color:#8190a5;margin-bottom:5px}.announcement-card{background:#fff;border:1px solid #dce7ff;border-left:4px solid var(--primary);border-radius:18px;padding:18px 20px;display:flex;align-items:center;gap:15px}.announcement-icon{width:44px;height:44px;border-radius:14px;background:#eef4ff;color:var(--primary);display:grid;place-items:center;flex:0 0 auto}.stat-card{box-shadow:0 5px 18px rgba(15,23,42,.035)}.stat-label{font-size:.72rem;font-weight:800;letter-spacing:.09em;color:#8b97a8}.stat-value{font-size:2rem;font-weight:850;letter-spacing:-.04em;margin-top:8px;color:#111827}.stat-note{font-size:.84rem;color:#8a94a3}.stat-link{font-size:.84rem;text-decoration:none;display:inline-block;margin-top:18px}.slim-progress{height:7px;background:#edf1f5}.member-table thead th{font-size:.74rem;color:#8b97a8;letter-spacing:.06em;font-weight:800;border-bottom-color:#edf0f4}.member-table td{border-bottom-color:#f0f2f5;padding-top:15px;padding-bottom:15px}.status-pill{display:inline-flex;align-items:center;border-radius:999px;font-size:.74rem;font-weight:700;padding:5px 10px}.status-pill.published{background:#dcfce7;color:#166534}.status-pill.draft{background:#fef3c7;color:#92400e}.plan-card.active-plan{border:2px solid #bfdbfe;box-shadow:0 12px 30px rgba(37,99,235,.08)}.plan-features{padding:0;list-style:none;margin:24px 0 0;display:grid;gap:12px}.plan-features i{color:#16a34a;width:20px}.upgrade-icon{width:58px;height:58px;border-radius:18px;background:#fff7ed;color:#ea580c;display:grid;place-items:center;font-size:24px}.quota-block{margin-top:7vh}.admin-sidebar{background:#101521}.sidebar-overlay{display:none}

@media(max-width:991px){.member-sidebar{transform:translateX(-100%);transition:transform .22s ease}.member-sidebar.open{transform:translateX(0)}.member-content{margin-left:0}.sidebar-overlay{display:block;position:fixed;inset:0;background:rgba(15,23,42,.45);z-index:1035;opacity:0;pointer-events:none;transition:.2s}.sidebar-overlay.show{opacity:1;pointer-events:auto}.member-topbar{padding:0 16px}}
@media(max-width:767px){.display-4{font-size:2.5rem}.auth-card{padding:24px}.code-editor{min-height:500px}.danger-zone{align-items:flex-start;flex-direction:column}.member-footer{flex-direction:column}.stat-value{font-size:1.75rem}.content-card,.stat-card,.plan-card,.side-panel,.ebook-card{padding:20px}}

/* BukuLive v2.1 Admin Panel */
.admin-sidebar{background:linear-gradient(180deg,#0b1020 0%,#111827 100%)}
.admin-count-badge{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px 14px;box-shadow:0 5px 18px rgba(15,23,42,.03)}
.admin-count-badge strong{font-size:1.25rem}.admin-count-badge span{font-size:.78rem;color:#7c8798}
.admin-meta{font-size:.72rem;color:#98a2b3;margin-top:2px}.admin-timeline{display:grid;gap:18px}.admin-timeline-item{position:relative;display:flex;gap:12px;align-items:flex-start}.timeline-dot{width:10px;height:10px;border-radius:50%;background:#2563eb;box-shadow:0 0 0 5px #eaf1ff;margin-top:5px;flex:0 0 auto}
.profile-avatar-lg{width:62px;height:62px;border-radius:18px;background:linear-gradient(135deg,#dbeafe,#e0e7ff);color:#1d4ed8;display:grid;place-items:center;font-weight:850;font-size:1.15rem}
.admin-detail-list{display:grid;gap:0}.admin-detail-list>div{display:flex;flex-direction:column;gap:4px;padding:13px 0;border-top:1px solid #eef1f5}.admin-detail-list span{font-size:.72rem;font-weight:800;letter-spacing:.05em;color:#98a2b3;text-transform:uppercase}.admin-detail-list strong{font-size:.92rem;color:#25324a}
.plan-admin-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px;box-shadow:0 5px 18px rgba(15,23,42,.035);transition:.18s}.plan-admin-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(15,23,42,.07)}.plan-admin-card.plan-inactive{opacity:.72;background:#f8fafc}.plan-price{font-size:1.8rem;font-weight:850;letter-spacing:-.04em}.mini-metric{border:1px solid #edf0f4;background:#f8fafc;border-radius:13px;padding:12px}.mini-metric span{display:block;font-size:.68rem;font-weight:800;color:#9aa4b2;text-transform:uppercase;letter-spacing:.06em}.mini-metric strong{display:block;margin-top:4px;font-size:.95rem}
.member-table code{font-size:.75rem;color:#334155;background:#f1f5f9;border-radius:7px;padding:4px 7px}.pagination .page-link{border-color:#e6eaf0;color:#334155}.pagination .page-item.active .page-link{background:#2563eb;border-color:#2563eb;color:#fff}

/* BukuLive v2.2 Multi-Page, Storage & Media */
.storage-value{font-size:1.55rem}.storage-value span{font-size:.92rem;font-weight:700;color:#8a94a3;letter-spacing:0}.mini-plan-option{border:1px solid #e5eaf1;border-radius:16px;padding:16px;background:#f8fafc;height:100%}.mini-plan-option.current{border-color:#93c5fd;background:#eff6ff}.media-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 5px 18px rgba(15,23,42,.035)}.media-thumb{aspect-ratio:16/10;background:#f1f5f9;display:grid;place-items:center;overflow:hidden}.media-thumb img{width:100%;height:100%;object-fit:cover}.media-url{font-size:.72rem}.page-url-chip{font-size:.78rem;background:#f1f5f9;border-radius:8px;padding:5px 8px;color:#475569}.storage-breakdown{display:flex;gap:12px;flex-wrap:wrap;font-size:.78rem;color:#64748b}

/* BukuLive v2.3 Billing & Checkout */
.checkout-price{font-size:2rem;font-weight:850;letter-spacing:-.04em;color:#111827;white-space:nowrap}.billing-summary{display:grid;gap:0}.billing-summary>div,.invoice-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0;border-bottom:1px solid #eef1f5}.billing-summary span,.invoice-row span{color:#7c8798}.billing-summary .total,.invoice-total{border-bottom:0;border-top:2px solid #e8edf3;margin-top:8px;padding-top:20px}.billing-summary .total strong,.invoice-total strong{font-size:1.35rem;color:#111827}.bank-box{border:1px solid #dbe6f3;background:#f8fbff;border-radius:18px;padding:20px}.bank-number{font-size:1.6rem;font-weight:850;letter-spacing:.04em;color:#0f172a}.billing-amount-box{border:1px dashed #93c5fd;background:#eff6ff;border-radius:16px;padding:16px;display:flex;align-items:center;justify-content:space-between;gap:15px}.billing-amount-box span{font-size:.8rem;color:#64748b}.billing-amount-box strong{font-size:1.3rem;color:#1d4ed8}.invoice-row:last-child{border-bottom:0}@media(max-width:575px){.invoice-row,.billing-summary>div,.billing-amount-box{align-items:flex-start;flex-direction:column;gap:5px}.checkout-price{font-size:1.6rem}}

/* BukuLive v2.4 Member Area & Editor Redesign */
:root{--lime:#93ea63;--lime-dark:#63c437;--danger:#ef4444;--success:#22c55e;--panel:#ffffff;--soft:#eef1ed}
.btn{border-radius:11px;font-weight:700}.btn-success{background:#22c55e;border-color:#22c55e}.btn-success:hover{background:#16a34a;border-color:#16a34a}.btn-danger{background:#ef4444;border-color:#ef4444}.btn-primary{background:#2563eb;border-color:#2563eb}.btn-warning{font-weight:700}
.member-sidebar{width:290px;background:#0b0d0b;padding:24px 18px}.member-content{margin-left:290px}.sidebar-brand-block{padding:0 8px 18px;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:14px}.sidebar-brand-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.brand-link{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none}.member-role-badge{background:var(--lime);color:#0b0d0b;font-size:.65rem;font-weight:900;letter-spacing:.08em;padding:5px 9px;border-radius:6px}.member-plan-badge{display:inline-flex;align-items:center;gap:7px;margin-top:12px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.08);color:#fff;font-size:.76rem;font-weight:800;padding:6px 10px;border-radius:999px}.plan-dot{width:7px;height:7px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 4px rgba(147,234,99,.12)}.sidebar-email{color:#6f7b70}.sidebar-link{padding:13px 14px;color:#d4d9d3}.sidebar-link.active{background:var(--lime);color:#10140e;box-shadow:none}.sidebar-link.active i{color:#10140e}.sidebar-link:hover{background:rgba(147,234,99,.10);color:#fff}.sidebar-section{color:#708070}.sidebar-user{border-top-color:rgba(255,255,255,.1)}.sidebar-logout-btn{width:36px;height:36px;display:grid;place-items:center;padding:0}.member-topbar{height:72px}.member-body{background:#f0f3ee}.member-page{max-width:1540px}.content-card,.stat-card,.plan-card,.subdomain-panel{border-color:#e2e8df;box-shadow:0 7px 22px rgba(22,31,20,.035)}.eyebrow{color:#71806d}.announcement-card{border-left-color:var(--lime-dark)}
.subdomain-stack{display:grid;gap:22px}.subdomain-panel{background:#fff;border:1px solid #dfe6dc;border-radius:24px;padding:0;overflow:hidden}.subdomain-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:24px 26px;border-bottom:1px solid #edf0eb}.subdomain-domain{font-size:1.4rem;font-weight:850;letter-spacing:-.025em;overflow-wrap:anywhere}.subdomain-pages-head{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px 26px 8px}.page-tile-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;padding:14px 26px 26px}.page-tile{background:#eef1ed;border:1px solid #dfe5dc;border-radius:18px;padding:20px;transition:.16s}.page-tile:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(25,40,22,.07)}.page-file-name{font-weight:850;font-size:1.02rem}.status-dot-label{font-size:.72rem;font-weight:800;display:inline-flex;align-items:center;gap:6px}.status-dot-label span{width:8px;height:8px;border-radius:50%}.status-dot-label.online{color:#16803a}.status-dot-label.online span{background:#22c55e}.status-dot-label.offline{color:#9a6b13}.status-dot-label.offline span{background:#f59e0b}.page-actions{display:flex;flex-wrap:wrap;gap:7px}.page-actions form{margin:0}.page-actions .btn{font-size:.76rem}
.editor-page-wide{max-width:1700px}.code-workbench{background:#11141a;border:1px solid #272d38;border-radius:20px;overflow:hidden;box-shadow:0 18px 45px rgba(8,12,20,.18);position:relative}.code-toolbar{min-height:58px;background:#20242c;border-bottom:1px solid #303642;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 14px;color:#e6eaf0}.code-file{display:flex;align-items:center;gap:8px}.code-file strong{margin-left:5px;font:700 .85rem/1.2 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.code-dot{width:12px;height:12px;border-radius:50%;display:inline-block}.code-dot.red{background:#ff605c}.code-dot.yellow{background:#ffbd44}.code-dot.green{background:#00ca4e}.code-editor-pro{display:block;width:100%;min-height:690px;border:0!important;border-radius:0!important;background:#171a21!important;color:#e8edf5!important;padding:24px 28px!important;font:14px/1.65 Consolas,Monaco,'Courier New',monospace!important;resize:vertical;outline:none!important;box-shadow:none!important;tab-size:2}.code-statusbar{display:flex;justify-content:space-between;gap:10px;background:#20242c;color:#aeb7c6;padding:8px 15px;font-size:.72rem}.code-workbench.editor-fullscreen{position:fixed;inset:10px;z-index:2000;border-radius:14px}.code-workbench.editor-fullscreen .code-editor-pro{height:calc(100vh - 112px);min-height:0;resize:none}body.editor-fullscreen-open{overflow:hidden}.backup-grid{display:grid;gap:8px}.backup-item{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#f7f9f6;border:1px solid #e6ebe3;border-radius:12px;padding:10px 12px;font-size:.82rem}.storage-breakdown{gap:16px}.mini-metric{background:#f5f7f4;border-color:#e5eae2}.active-plan{border-color:#b8e9a0!important}.mini-plan-option.current{background:#effbe9;border-color:#9fe27d}.upgrade-icon{background:#effbe9;color:#4c9e28}
@media(max-width:1199px){.page-tile-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}}
@media(max-width:991px){.member-sidebar{width:290px}.member-content{margin-left:0}.subdomain-panel-head{flex-direction:column}.code-editor-pro{min-height:580px}}
@media(max-width:575px){.subdomain-panel-head,.subdomain-pages-head,.page-tile-grid{padding-left:16px;padding-right:16px}.subdomain-pages-head{align-items:flex-start;flex-direction:column}.page-tile-grid{grid-template-columns:1fr}.code-toolbar{align-items:flex-start;flex-direction:column}.code-editor-pro{min-height:500px;padding:18px!important}}

/* =========================================================
   BukuLive UI Button Standardization Patch
   Admin + Member only
   Primary actions : blue / white
   Live website    : green / black
   Destructive     : red / white
   Secondary       : soft gray / slate
   Active sidebar  : blue / white
   ========================================================= */
.member-body .btn{
    font-weight:700;
    border-radius:10px;
    transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease;
}
.member-body .btn:focus-visible{
    box-shadow:0 0 0 .22rem rgba(37,99,235,.18)!important;
}

/* Dominant action: blue */
.member-body .btn-primary,
.member-body .btn-success,
.member-body .btn-outline-success{
    background:#2563eb!important;
    border-color:#2563eb!important;
    color:#fff!important;
}
.member-body .btn-primary:hover,
.member-body .btn-success:hover,
.member-body .btn-outline-success:hover{
    background:#1d4ed8!important;
    border-color:#1d4ed8!important;
    color:#fff!important;
}
.member-body .btn-outline-primary{
    background:#eff6ff!important;
    border-color:#bfdbfe!important;
    color:#1d4ed8!important;
}
.member-body .btn-outline-primary:hover{
    background:#dbeafe!important;
    border-color:#93c5fd!important;
    color:#1e40af!important;
}

/* Live public website: green + black */
.member-body .btn-live{
    background:#86efac!important;
    border-color:#86efac!important;
    color:#111827!important;
}
.member-body .btn-live:hover,
.member-body .btn-live:focus{
    background:#4ade80!important;
    border-color:#4ade80!important;
    color:#0f172a!important;
}

/* Destructive action: red + white */
.member-body .btn-danger,
.member-body .btn-outline-danger{
    background:#dc2626!important;
    border-color:#dc2626!important;
    color:#fff!important;
}
.member-body .btn-danger:hover,
.member-body .btn-outline-danger:hover{
    background:#b91c1c!important;
    border-color:#b91c1c!important;
    color:#fff!important;
}

/* Neutral / secondary controls */
.member-body .btn-secondary,
.member-body .btn-dark,
.member-body .btn-light.border,
.member-body .btn-neutral{
    background:#e2e8f0!important;
    border-color:#cbd5e1!important;
    color:#334155!important;
}
.member-body .btn-secondary:hover,
.member-body .btn-dark:hover,
.member-body .btn-light.border:hover,
.member-body .btn-neutral:hover{
    background:#cbd5e1!important;
    border-color:#94a3b8!important;
    color:#0f172a!important;
}

/* Warning stays warm but readable */
.member-body .btn-warning{
    background:#fbbf24!important;
    border-color:#fbbf24!important;
    color:#111827!important;
}
.member-body .btn-warning:hover{
    background:#f59e0b!important;
    border-color:#f59e0b!important;
    color:#111827!important;
}

/* Sidebar active: same blue language in Member and Admin */
.member-body .member-sidebar .sidebar-link.active,
.member-body .admin-sidebar .sidebar-link.active{
    background:#2563eb!important;
    color:#fff!important;
    box-shadow:0 8px 20px rgba(37,99,235,.22)!important;
}
.member-body .member-sidebar .sidebar-link.active i,
.member-body .admin-sidebar .sidebar-link.active i{
    color:#fff!important;
}
.member-body .member-sidebar .sidebar-link:hover,
.member-body .admin-sidebar .sidebar-link:hover{
    background:rgba(37,99,235,.18)!important;
    color:#fff!important;
}

/* Disabled buttons should remain visibly disabled */
.member-body .btn.disabled,
.member-body .btn:disabled{
    opacity:.55!important;
    cursor:not-allowed;
    box-shadow:none!important;
}

/* BukuLive v2.6 Analytics */
.analytics-filter{background:#fff;border:1px solid var(--line);padding:6px;border-radius:14px}.analytics-filter .btn{padding:.55rem .85rem}
.analytics-chart{height:230px;display:flex;align-items:flex-end;gap:8px;padding:20px 6px 0;overflow-x:auto;border-bottom:1px solid #e5e7eb;position:relative}.analytics-bar-item{min-width:34px;flex:1;height:205px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;position:relative;z-index:2}.analytics-bar{width:min(28px,70%);min-height:3px;border-radius:7px 7px 2px 2px;background:linear-gradient(180deg,#3b82f6,#2563eb);box-shadow:0 6px 14px rgba(37,99,235,.13)}.analytics-bar-value{font-size:.67rem;color:#64748b;height:20px;white-space:nowrap}.analytics-bar-label{font-size:.65rem;color:#8b97a8;margin-top:7px;white-space:nowrap}.analytics-empty{min-height:180px;border:1px dashed #cbd5e1;background:#f8fafc;border-radius:17px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:7px;color:#64748b;padding:25px}.analytics-empty i{font-size:1.8rem;color:#94a3b8}.analytics-empty strong{color:#334155}.analytics-empty.small-empty{min-height:125px}.metric-list{display:grid;gap:18px}.metric-row{display:grid;gap:6px}.analytics-privacy-note{display:flex;align-items:flex-start;gap:10px;border:1px solid #dbeafe;background:#eff6ff;color:#1e40af;border-radius:14px;padding:13px 16px;font-size:.82rem}.analytics-privacy-note i{margin-top:2px}.analytics-page .table td,.analytics-page .table th{vertical-align:middle}
@media(max-width:767px){.analytics-chart{gap:5px}.analytics-bar-item{min-width:31px}.analytics-filter{width:100%}.analytics-filter .btn{flex:1}.analytics-page .stat-value{font-size:1.65rem}}

/* BukuLive v2.7 Notifications & Announcements */
.sidebar-notification-badge{margin-left:auto;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#ef4444;color:#fff;font-size:.68rem;font-weight:800;display:inline-flex;align-items:center;justify-content:center}.topbar-bell{width:40px;height:40px;border-radius:12px;border:1px solid #dbe3ef;background:#fff;color:#334155;text-decoration:none;display:grid;place-items:center;position:relative}.topbar-bell:hover{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.topbar-bell>span{position:absolute;right:-5px;top:-6px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:#dc2626;color:#fff;font-size:.62rem;font-weight:800;display:flex;align-items:center;justify-content:center;border:2px solid #fff}.notification-page{max-width:1450px}.notification-list{display:grid;gap:10px}.notification-item{display:flex;align-items:flex-start;gap:14px;padding:16px;border:1px solid #e5e7eb;border-radius:16px;background:#fff}.notification-item.unread{background:#f6f9ff;border-color:#bfdbfe}.notification-item.announcement{background:#fffdf5;border-color:#fde68a}.notification-item.announcement.unread{background:#fffbeb;border-color:#fbbf24}.notification-icon{width:42px;height:42px;border-radius:13px;background:#eff6ff;color:#2563eb;display:grid;place-items:center;flex:0 0 auto}.notification-item.announcement .notification-icon{background:#fef3c7;color:#b45309}.notification-message{font-size:.9rem;line-height:1.55}.notification-meta{font-size:.74rem;color:#94a3b8}.notification-dot{width:8px;height:8px;border-radius:50%;background:#2563eb;display:inline-block}.dashboard-announcement{display:flex;align-items:center;gap:14px;padding:16px 18px;background:#fff;border:1px solid #dbe3ef;border-left:4px solid #2563eb;border-radius:16px}.dashboard-announcement.is-new{background:#f8fbff}.dashboard-announcement .announcement-icon{width:42px;height:42px;flex:0 0 auto;border-radius:13px;background:#eff6ff;color:#2563eb;display:grid;place-items:center}
@media(max-width:767px){.notification-item,.dashboard-announcement{align-items:flex-start;flex-direction:column}.notification-item form,.dashboard-announcement .btn{width:100%}.notification-item form .btn{width:100%}.topbar-bell{width:38px;height:38px}}

/* BukuLive v2.8 - notification dropdown, Google identity, publishing tools */
.notification-dropdown-wrap{position:relative}.topbar-bell{cursor:pointer}.notification-dropdown{position:absolute;right:0;top:calc(100% + 10px);width:min(390px,calc(100vw - 28px));background:#fff;border:1px solid #dfe6ef;border-radius:18px;box-shadow:0 22px 55px rgba(15,23,42,.18);z-index:1080;overflow:hidden;opacity:0;visibility:hidden;transform:translateY(-6px);transition:.18s ease}.notification-dropdown.show{opacity:1;visibility:visible;transform:translateY(0)}.notification-dropdown-head{padding:15px 16px;border-bottom:1px solid #edf1f5;background:#fbfcfe}.notification-dropdown-list{max-height:420px;overflow:auto}.notification-dropdown-item{display:flex;align-items:flex-start;gap:11px;padding:12px 14px;text-decoration:none;color:#172033;border-bottom:1px solid #f0f3f6;background:#fff}.notification-dropdown-item:hover{background:#f7faff;color:#172033}.notification-dropdown-item.unread{background:#f2f7ff}.notification-dropdown-icon{width:34px;height:34px;border-radius:10px;background:#eaf2ff;color:#2563eb;display:grid;place-items:center;flex:0 0 auto}.notification-dropdown-item strong{display:block;font-size:.84rem;line-height:1.3}.notification-dropdown-item small{display:block;color:#64748b;font-size:.75rem;line-height:1.35;margin-top:3px}.notification-dropdown-item em{display:block;color:#9aa4b2;font-style:normal;font-size:.66rem;margin-top:5px}.notification-mini-dot{width:8px;height:8px;border-radius:50%;background:#2563eb;flex:0 0 auto;margin-top:5px}.notification-dropdown-all{display:block;text-align:center;text-decoration:none;font-weight:800;font-size:.8rem;padding:12px 14px;background:#f8fafc;color:#2563eb}.notification-dropdown-all:hover{background:#eff6ff;color:#1d4ed8}.notification-dropdown-empty{padding:32px 18px;display:grid;place-items:center;gap:8px;color:#94a3b8;font-size:.82rem}.notification-dropdown-empty i{font-size:1.5rem}.google-logo{width:22px;height:22px;display:block}.google-linked-badge{display:inline-flex;align-items:center;gap:6px}.google-linked-badge .google-logo{width:15px;height:15px;background:#fff;border-radius:50%;padding:1px}.publishing-tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.publishing-tool-card{border:1px solid #e4e9ef;border-radius:15px;padding:14px;background:#f8fafc}.publishing-tool-card strong{display:block;margin-bottom:4px}.seo-counter{font-size:.72rem;color:#94a3b8}.password-status{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:.76rem}.password-status.on{color:#166534}.password-status.off{color:#64748b}@media(max-width:767px){.notification-dropdown{position:fixed;left:14px;right:14px;top:76px;width:auto}.publishing-tool-grid{grid-template-columns:1fr}}

/* BukuLive v2.9 - plan expiry enforcement & locked quota states */
.subdomain-panel.plan-locked{border-color:#f1d48a;background:#fffdf7}
.subdomain-panel.plan-locked .subdomain-panel-head{background:#fffbeb}
.page-tile.plan-locked{background:#f1f3f5;border-color:#d8dee5;box-shadow:none;transform:none!important}
.page-tile.plan-locked .page-file-name,.page-tile.plan-locked .small{color:#7b8794!important}
.status-dot-label.locked{color:#9a6b13}.status-dot-label.locked span{background:#f59e0b}
.plan-locked .btn.disabled,.page-tile.plan-locked .btn.disabled{filter:grayscale(.2);opacity:.48!important}

/* BukuLive v2.9.1 - Publish & editor productivity */
.btn-publish-action{font-size:.9rem!important;font-weight:900!important;padding-left:.85rem!important;padding-right:.85rem!important}
.btn-status-action{font-weight:800!important}
@media(max-width:767px){.btn-publish-action{font-size:.86rem!important}}

/* BukuLive v2.9.2 - Member UX, Analytics entitlement, billing polish */
.member-badge-stack{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-width:74px}.member-badge-stack .member-plan-badge{margin-top:0;justify-content:center;padding:4px 9px;font-size:.7rem}.member-badge-stack .member-role-badge{display:block;text-align:center;min-width:72px}.feature-lock-badge{margin-left:auto;display:inline-flex;align-items:center;gap:4px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.08);padding:3px 7px;border-radius:999px;font-size:.58rem;letter-spacing:.04em;color:#cbd5e1}.analytics-locked-link:hover .feature-lock-badge{color:#fff;background:rgba(37,99,235,.24)}
.sidebar-nav{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.14) transparent}.sidebar-nav::-webkit-scrollbar{width:6px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.13);border-radius:999px}.sidebar-nav:hover::-webkit-scrollbar-thumb{background:rgba(255,255,255,.22)}
.analytics-upgrade-plan{border:1px solid #dbe3ef;background:#f8fbff;border-radius:16px;padding:16px}.analytics-upgrade-plan:hover{border-color:#93c5fd;box-shadow:0 8px 24px rgba(37,99,235,.08)}
.payment-option-card{border:1px solid #dfe6ee;border-radius:18px;padding:18px;background:#fbfcfe}.bank-logo-bca{width:118px;max-height:48px;object-fit:contain;object-position:left center}.payment-bank-icon{width:48px;height:48px;border-radius:14px;background:#eaf2ff;color:#2563eb;display:grid;place-items:center;font-size:20px}.qris-payment-image{display:block;width:min(290px,100%);aspect-ratio:1/1;object-fit:contain;margin:12px auto 0;background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:10px}.qris-badge{font-weight:900;letter-spacing:.08em;background:#111827;color:#fff;padding:5px 9px;border-radius:7px;font-size:.7rem}.qris-admin-preview img{width:min(260px,100%);aspect-ratio:1/1;object-fit:contain;background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:10px}.bank-number{font-size:1.18rem;font-weight:850;letter-spacing:.04em;word-break:break-all}.billing-amount-box{border:1px dashed #93c5fd;background:#eff6ff;border-radius:14px;padding:14px;display:flex;justify-content:space-between;align-items:center;gap:12px}.billing-amount-box strong{font-size:1.2rem}
@media(max-width:480px){.sidebar-brand-row{align-items:flex-start}.member-badge-stack{min-width:68px}.member-badge-stack .member-role-badge{min-width:68px}.billing-amount-box{align-items:flex-start;flex-direction:column}}

/* BukuLive v2.9.3 - invoice branding, bank logo, QRIS crop */
.brand-logo-admin-preview img{display:block;max-width:220px;max-height:90px;object-fit:contain;background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:10px}.bank-logo-admin-preview img{display:block;max-width:220px;max-height:80px;object-fit:contain;background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:10px}.qris-admin-editor{display:grid;gap:12px}.qris-crop-frame{width:min(320px,100%);aspect-ratio:1/1;overflow:hidden;position:relative;background:#fff;border:1px solid #e5e7eb;border-radius:16px;margin-inline:auto}.qris-crop-frame img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(var(--qris-zoom,1.25));transform-origin:var(--qris-x,50%) var(--qris-y,50%);transition:transform .18s ease}.qris-member-frame{width:min(300px,100%);margin:12px auto 0}.payment-option-card .bank-logo-bca{width:auto;max-width:130px;height:42px;object-fit:contain;object-position:left center}.payment-option-card .qris-crop-frame{box-shadow:inset 0 0 0 1px rgba(15,23,42,.03)}
.qris-crop-frame.is-empty{display:grid;place-items:center}.qris-empty-placeholder{display:grid;place-items:center;gap:8px;text-align:center;color:#94a3b8;padding:24px;font-size:.82rem}.qris-empty-placeholder i{font-size:2rem;color:#cbd5e1}

/* BukuLive v2.9.4 - media drag & drop */
.media-drop-zone{display:flex;min-height:220px;border:2px dashed #93c5fd;border-radius:20px;background:#f8fbff;align-items:center;justify-content:center;flex-direction:column;gap:7px;text-align:center;padding:28px;cursor:pointer;transition:.18s ease;color:#334155}.media-drop-zone:hover,.media-drop-zone.is-dragover{border-color:#2563eb;background:#eff6ff;box-shadow:0 10px 28px rgba(37,99,235,.08)}.media-drop-zone strong{font-size:1rem;color:#0f172a}.media-drop-zone span{font-size:.86rem}.media-drop-zone small{font-size:.74rem;color:#64748b}.media-drop-icon{width:54px;height:54px;border-radius:16px;background:#dbeafe;color:#2563eb;display:grid;place-items:center;font-size:1.35rem;margin-bottom:4px}.media-selected-list{border:1px solid #e2e8f0;border-radius:14px;padding:12px;background:#fff}.media-selected-item{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;padding:7px 0;border-bottom:1px solid #f1f5f9;font-size:.8rem}.media-selected-item:last-child{border-bottom:0}.media-selected-item i{color:#2563eb}.media-selected-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-selected-item small{color:#94a3b8}


/* BukuLive v2.9.5 - editor search, canonical QRIS */
.code-searchbar{background:#171a21;border-bottom:1px solid #303642;padding:10px 14px}.code-searchbar[hidden]{display:none!important}.code-searchbar .input-group{max-width:620px;margin-left:auto}.code-searchbar .form-control,.code-searchbar .input-group-text{background:#11141a;border-color:#3a4250;color:#e8edf5}.code-searchbar .form-control::placeholder{color:#7f8a99}.code-search-count{min-width:64px;justify-content:center;color:#aeb7c6!important}.qris-canonical-frame img{transform:none!important;transform-origin:center center!important;object-fit:contain!important}.code-workbench.editor-fullscreen .code-searchbar:not([hidden]) + .code-editor-pro{height:calc(100vh - 164px)}

/* BukuLive v2.9.6 - editor search fix, professional dialogs, plan/tool locks */
.code-editor-pro::selection{background:#facc15;color:#111827}
.code-editor-pro::-moz-selection{background:#facc15;color:#111827}
.code-search-hint{max-width:620px;margin:6px 0 0 auto;font-size:.7rem;color:#94a3b8;text-align:left}
.code-searchbar.search-not-found .form-control{border-color:#ef4444!important;box-shadow:0 0 0 .12rem rgba(239,68,68,.12)}
.code-searchbar.search-not-found .code-search-count{color:#fca5a5!important}

.system-flash-modal .modal-content,#systemConfirmModal .modal-content{box-shadow:0 24px 70px rgba(15,23,42,.2)}
.system-flash-icon,.system-confirm-icon{width:66px;height:66px;border-radius:20px;display:grid;place-items:center;margin:0 auto;font-size:1.8rem}
.system-flash-icon.tone-success{background:#dcfce7;color:#15803d}
.system-flash-icon.tone-danger{background:#fee2e2;color:#dc2626}
.system-flash-icon.tone-warning{background:#fef3c7;color:#b45309}
.system-flash-icon.tone-info{background:#dbeafe;color:#2563eb}
.system-confirm-icon{background:#dbeafe;color:#2563eb}
.system-flash-items{display:grid;gap:8px;margin-top:14px}
.system-flash-item{border-radius:12px;padding:10px 12px;font-size:.9rem;background:#f8fafc;color:#475569}
.system-flash-item.tone-danger{background:#fff1f2;color:#991b1b}
.system-flash-item.tone-warning{background:#fffbeb;color:#92400e}
.system-flash-item.tone-success{background:#f0fdf4;color:#166534}
.system-flash-item.tone-info{background:#eff6ff;color:#1e40af}

.subdomain-action-stack{display:grid;gap:9px;justify-items:end;min-width:min(100%,520px)}
.subdomain-primary-actions,.subdomain-pro-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px;align-items:center}
.subdomain-primary-actions form,.subdomain-pro-actions form{margin:0}
.subdomain-pro-actions{padding-top:9px;border-top:1px dashed #dbe2e8;width:100%}
.feature-lock-pill{display:inline-flex;align-items:center;gap:5px;border:1px solid #d1d5db;background:#111827;color:#fff;border-radius:999px;padding:5px 9px;font-size:.62rem;font-weight:900;letter-spacing:.05em;line-height:1;white-space:nowrap}
button.feature-lock-pill{cursor:pointer}
button.feature-lock-pill:hover{background:#2563eb;border-color:#2563eb}
.feature-lock-pill.limit{background:#64748b;border-color:#64748b}
.plan-downgrade-locked{background:#f8fafc!important;border-color:#e2e8f0!important;opacity:.82}
.plan-downgrade-locked .btn:disabled{opacity:1}
@media(max-width:991px){.subdomain-action-stack{justify-items:start;width:100%}.subdomain-primary-actions,.subdomain-pro-actions{justify-content:flex-start}}


/* BukuLive WhatsApp Registration V2 - mengikuti theme auth biru utama */
.wa-blue-input .input-group-text,.wa-blue-input .form-control{border-color:var(--primary)}
.wa-blue-input:focus-within{border-radius:.5rem;box-shadow:0 0 0 .2rem rgba(37,99,235,.12)}
.wa-blue-input:focus-within .input-group-text,.wa-blue-input:focus-within .form-control{border-color:var(--primary);box-shadow:none}
.wa-otp-code{letter-spacing:.3em;border-color:var(--primary)}
.wa-setting-box{background:#f8fafc;border:1px solid var(--line);border-radius:16px;padding:18px}
