/* ============================================================
   Stream v60 - Velzon Material Analytics inspired design
   - No migration / CSS-only layout refresh
   - Keeps v59 one-line summary totals
   ============================================================ */
:root{
    --vz-primary:#405189;
    --vz-primary-rgb:64,81,137;
    --vz-secondary:#3577f1;
    --vz-success:#0ab39c;
    --vz-info:#299cdb;
    --vz-warning:#f7b84b;
    --vz-danger:#f06548;
    --vz-dark:#212529;
    --vz-body-bg:#f3f3f9;
    --vz-card-bg:#ffffff;
    --vz-sidebar:#0f172a;
    --vz-sidebar-active:#405189;
    --vz-topbar:#ffffff;
    --vz-border:#e9ebec;
    --vz-muted:#878a99;
    --vz-heading:#495057;
    --vz-text:#212529;
    --vz-radius:4px;
    --vz-shadow:0 1px 2px rgba(56,65,74,.15);
    --vz-shadow-lg:0 5px 10px rgba(30,32,37,.12);
}

html,body{background:var(--vz-body-bg)!important;color:var(--vz-text)!important;font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,"Noto Sans KR",Arial,sans-serif!important;}
body{font-size:13px!important;}

/* App shell */
.stream-app,.app-shell{min-height:100vh!important;background:var(--vz-body-bg)!important;}
.stream-main,.main{background:var(--vz-body-bg)!important;min-height:100vh!important;}
.stream-content,.content{padding:22px!important;background:var(--vz-body-bg)!important;}

/* Sidebar */
.sidebar{background:linear-gradient(180deg,#111827 0%,#0f172a 100%)!important;border-right:1px solid rgba(255,255,255,.06)!important;box-shadow:0 3px 12px rgba(15,23,42,.18)!important;}
.sidebar .brand,.brand{min-height:70px!important;padding:16px 18px!important;border-bottom:1px solid rgba(255,255,255,.08)!important;}
.brand-logo{width:36px!important;height:36px!important;border-radius:8px!important;background:linear-gradient(135deg,var(--vz-secondary),var(--vz-primary))!important;box-shadow:0 6px 16px rgba(var(--vz-primary-rgb),.35)!important;}
.brand strong{font-size:16px!important;font-weight:700!important;color:#fff!important;letter-spacing:-.02em!important;}
.brand span{font-size:11px!important;color:#a6b0cf!important;}
.sidebar .menu-title,.menu-title{font-size:10px!important;text-transform:uppercase!important;letter-spacing:.08em!important;color:#6b7280!important;font-weight:700!important;margin:16px 18px 8px!important;}
.sidebar .menu a,.menu a,.sidebar .nav-group-toggle{min-height:39px!important;border-radius:4px!important;margin:2px 10px!important;padding:9px 12px!important;color:#abb9e8!important;font-size:13px!important;font-weight:600!important;transition:all .18s ease!important;}
.sidebar .menu a:hover,.menu a:hover,.sidebar .menu a.active,.menu a.active,.sidebar .nav-group-toggle:hover,.sidebar .nav-group-toggle.active{background:rgba(var(--vz-primary-rgb),.26)!important;color:#fff!important;}
.sidebar .ico,.sidebar .nav-ico{width:22px!important;color:#8ea2d8!important;font-size:15px!important;}
.sidebar .nav-submenu{border-left:1px dashed rgba(166,176,207,.24)!important;margin-left:22px!important;}
.sidebar .nav-sub-link{min-height:31px!important;border-radius:4px!important;color:#95a5d6!important;font-size:12px!important;font-weight:600!important;}
.sidebar .nav-sub-link:hover,.sidebar .nav-sub-link.active{background:rgba(var(--vz-primary-rgb),.18)!important;color:#fff!important;}
.support-box,.sidebar-footer .support-box{background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:6px!important;color:#dbeafe!important;}

/* Topbar */
.stream-topbar,.topbar{height:70px!important;background:var(--vz-topbar)!important;border-bottom:1px solid var(--vz-border)!important;box-shadow:var(--vz-shadow)!important;padding:0 22px!important;}
.topbar-menu-btn,.hamburger,.icon-btn{width:36px!important;height:36px!important;border-radius:50%!important;border:0!important;background:#f3f6f9!important;color:#495057!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;box-shadow:none!important;}
.topbar-menu-btn:hover,.hamburger:hover,.icon-btn:hover{background:#e9ebec!important;color:var(--vz-primary)!important;}
.topbar-search,.searchbar{height:38px!important;min-width:280px!important;border:1px solid transparent!important;border-radius:4px!important;background:#f3f6f9!important;color:#878a99!important;box-shadow:none!important;}
.topbar-search input,.searchbar input{background:transparent!important;color:#495057!important;font-size:13px!important;}
.topbar-search:focus-within,.searchbar:focus-within{background:#fff!important;border-color:#ced4da!important;box-shadow:0 0 0 .15rem rgba(var(--vz-primary-rgb),.12)!important;}
.topbar-admin,.profile-chip{height:38px!important;border:1px solid var(--vz-border)!important;border-radius:4px!important;background:#fff!important;color:#495057!important;box-shadow:none!important;}
.admin-avatar,.avatar{border-radius:50%!important;background:#eef2ff!important;color:var(--vz-primary)!important;}
.topbar-logout,.btn.ghost{border-radius:4px!important;border:1px solid #e9ebec!important;background:#fff!important;color:#495057!important;font-weight:600!important;}
.topbar-logout:hover,.btn.ghost:hover{background:#f3f6f9!important;color:var(--vz-primary)!important;}
.date-pill{border-radius:4px!important;background:#f3f6f9!important;border:1px solid #e9ebec!important;color:#495057!important;}
.badge-dot{background:var(--vz-danger)!important;box-shadow:0 0 0 2px #fff!important;}

/* Page title */
.page-head,.dashboard-head{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;padding:0!important;margin:0 0 18px!important;display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:16px!important;}
.page-head h1,.dashboard-head h4{font-size:22px!important;line-height:1.2!important;color:var(--vz-heading)!important;font-weight:700!important;margin:0 0 4px!important;letter-spacing:-.03em!important;}
.page-head p,.dashboard-head p{font-size:13px!important;color:var(--vz-muted)!important;margin:0!important;}

/* Cards / panels */
.card,.list-filter-card,.dashboard-date-filter,.dashboard-stat-card,.dashboard-chart-card,.v52-line-card,.v55-global-chart-mode,.admin-card,.panel,.table-card,.content-card{background:var(--vz-card-bg)!important;border:0!important;border-radius:var(--vz-radius)!important;box-shadow:var(--vz-shadow)!important;}
.list-filter-card,.dashboard-date-filter,.v55-global-chart-mode{padding:16px!important;margin-bottom:18px!important;}
.dashboard-stat-card{position:relative!important;padding:18px!important;overflow:hidden!important;}
.dashboard-stat-card:after{content:"";position:absolute;right:-18px;bottom:-18px;width:74px;height:74px;border-radius:50%;background:rgba(var(--vz-primary-rgb),.08)!important;}
.dashboard-stat-card span{font-size:12px!important;text-transform:none!important;color:var(--vz-muted)!important;font-weight:600!important;}
.dashboard-stat-card strong{font-size:23px!important;color:#343a40!important;font-weight:700!important;letter-spacing:-.03em!important;}
.dashboard-stat-grid{gap:18px!important;}
.dashboard-chart-card,.v52-line-card{padding:18px!important;}
.dashboard-chart-head,.v52-line-head{border-bottom:1px solid var(--vz-border)!important;padding-bottom:12px!important;margin-bottom:14px!important;}
.dashboard-chart-title,.v52-line-title,.v55-global-chart-title{font-size:15px!important;color:#495057!important;font-weight:700!important;}
.dashboard-chart-meta{font-size:12px!important;color:var(--vz-muted)!important;}

/* Filter / forms */
.filter-grid{gap:12px!important;}
.filter-item label{font-size:12px!important;color:var(--vz-muted)!important;font-weight:600!important;}
.form-control,.login-select,select,input[type="text"],input[type="number"],input[type="date"],input[type="password"],textarea{border-radius:4px!important;border:1px solid #ced4da!important;background:#fff!important;color:#495057!important;min-height:37px!important;font-size:13px!important;box-shadow:none!important;}
.form-control:focus,select:focus,input:focus,textarea:focus{border-color:#a5b3d9!important;box-shadow:0 0 0 .15rem rgba(var(--vz-primary-rgb),.14)!important;outline:0!important;}

/* Buttons */
.btn,button.btn,.dashboard-filter button,.filter-actions button,.filter-actions a,.v55-chart-mode-buttons button{border-radius:4px!important;font-size:13px!important;font-weight:600!important;min-height:36px!important;box-shadow:none!important;}
.btn.primary,.btn-primary,.dashboard-filter button,.filter-actions button[type="submit"],.v55-chart-mode-buttons button.active{background:var(--vz-primary)!important;border-color:var(--vz-primary)!important;color:#fff!important;}
.btn.primary:hover,.btn-primary:hover,.dashboard-filter button:hover{background:#364574!important;border-color:#364574!important;}
.btn.secondary,.btn-light,.filter-actions a{background:#f3f6f9!important;border-color:#f3f6f9!important;color:#495057!important;}
.btn.success,.btn-success{background:var(--vz-success)!important;border-color:var(--vz-success)!important;color:#fff!important;}
.btn.danger,.btn-danger{background:var(--vz-danger)!important;border-color:var(--vz-danger)!important;color:#fff!important;}

/* Tables */
.table-responsive{border-radius:var(--vz-radius)!important;background:#fff!important;box-shadow:var(--vz-shadow)!important;}
.admin-table{background:#fff!important;border-collapse:separate!important;border-spacing:0!important;}
.admin-table th{background:#f3f6f9!important;color:#495057!important;font-size:12px!important;font-weight:700!important;text-transform:none!important;border-bottom:1px solid var(--vz-border)!important;padding:12px!important;}
.admin-table td{font-size:13px!important;color:#495057!important;border-bottom:1px solid var(--vz-border)!important;padding:11px 12px!important;}
.admin-table tbody tr:hover td{background:#f8f9fa!important;}
.table-footer{background:#fff!important;border-radius:0 0 var(--vz-radius) var(--vz-radius)!important;box-shadow:var(--vz-shadow)!important;margin-top:0!important;padding:12px 14px!important;border-top:1px solid var(--vz-border)!important;}
.table-summary{color:var(--vz-muted)!important;font-size:12px!important;}
.pagination .page-link,.pagination span{border-radius:4px!important;border:1px solid var(--vz-border)!important;color:#495057!important;background:#fff!important;min-width:32px!important;height:32px!important;}
.pagination .active span,.pagination .page-item.active .page-link{background:var(--vz-primary)!important;border-color:var(--vz-primary)!important;color:#fff!important;}

/* Badges */
.badge{border-radius:4px!important;font-size:11px!important;font-weight:700!important;padding:4px 7px!important;}
.badge-success{background:rgba(10,179,156,.12)!important;color:var(--vz-success)!important;}
.badge-warning{background:rgba(247,184,75,.16)!important;color:#b7791f!important;}
.badge-danger{background:rgba(240,101,72,.13)!important;color:var(--vz-danger)!important;}
.badge-muted{background:#f3f6f9!important;color:#878a99!important;}

/* v59 summary totals -> Velzon one-line metric strip */
.stream-summary-line-wrap{margin:0 0 16px!important;}
.stream-summary-line{height:48px!important;border:0!important;border-radius:var(--vz-radius)!important;background:#fff!important;box-shadow:var(--vz-shadow)!important;padding:0 12px!important;gap:0!important;}
.stream-summary-line-item{min-height:48px!important;padding:0 18px!important;border-right:1px solid var(--vz-border)!important;}
.stream-summary-line-label{font-size:12px!important;color:var(--vz-muted)!important;font-weight:600!important;}
.stream-summary-line-value{font-size:14px!important;color:#343a40!important;font-weight:700!important;}
.stream-summary-line-dot{width:7px!important;height:7px!important;min-width:7px!important;background:var(--vz-primary)!important;box-shadow:none!important;}
.stream-summary-line-item.summary-card-success .stream-summary-line-dot{background:var(--vz-success)!important;box-shadow:none!important;}
.stream-summary-line-item.summary-card-danger .stream-summary-line-dot{background:var(--vz-danger)!important;box-shadow:none!important;}
.stream-summary-line-item.summary-card-warning .stream-summary-line-dot{background:var(--vz-warning)!important;box-shadow:none!important;}
.stream-summary-line-item.summary-card-info .stream-summary-line-dot{background:var(--vz-info)!important;box-shadow:none!important;}
.stream-summary-line-sub{background:#f3f6f9!important;border:1px solid var(--vz-border)!important;color:#878a99!important;border-radius:4px!important;}

/* Modal / popup */
.modal-content,.crud-modal,.customer-modal-card,.stream-detail-card,#accountModal .modal-dialog,#hqModal .modal-dialog{border:0!important;border-radius:6px!important;box-shadow:0 10px 35px rgba(30,32,37,.22)!important;background:#fff!important;}
.modal-header,.crud-modal-header,.customer-modal-head,.stream-detail-head{background:#fff!important;border-bottom:1px solid var(--vz-border)!important;border-radius:6px 6px 0 0!important;color:#495057!important;}
.modal-title,.crud-modal-title,.customer-modal-title,.stream-detail-title{font-size:16px!important;font-weight:700!important;color:#495057!important;}
.modal-footer,.crud-modal-footer{background:#f8f9fa!important;border-top:1px solid var(--vz-border)!important;border-radius:0 0 6px 6px!important;}
.btn-close,.close,.crud-close,.customer-modal-close,.stream-detail-close,.popup-close{border-radius:50%!important;background:#f3f6f9!important;color:#878a99!important;opacity:1!important;}
.btn-close:hover,.close:hover,.crud-close:hover,.customer-modal-close:hover,.stream-detail-close:hover,.popup-close:hover{background:#fee2e2!important;color:var(--vz-danger)!important;}

/* Alerts */
.alert{border:0!important;border-radius:4px!important;box-shadow:var(--vz-shadow)!important;font-size:13px!important;}
.alert.success{background:rgba(10,179,156,.12)!important;color:#087f6f!important;}
.alert.danger{background:rgba(240,101,72,.13)!important;color:#c2412b!important;}

/* Dashboard charts */
.stream-chart,.v52-combo-chart{background:#fff!important;border-radius:4px!important;}
.v55-chart-mode-buttons button{background:#f3f6f9!important;border:1px solid #e9ebec!important;color:#495057!important;}
.v55-chart-mode-buttons button:hover{background:#e9ebec!important;}

@media(max-width:1200px){.topbar-search,.searchbar{min-width:210px!important}.stream-content,.content{padding:18px!important}}
@media(max-width:768px){.stream-content,.content{padding:14px!important}.stream-topbar,.topbar{height:auto!important;min-height:64px!important;flex-wrap:wrap!important;padding:10px 14px!important}.topbar-search,.searchbar{min-width:100%!important}.page-head,.dashboard-head{align-items:flex-start!important;flex-direction:column!important}.stream-summary-line{height:auto!important;min-height:48px!important}.stream-summary-line-item{min-height:44px!important;padding:0 12px!important}}


/* ============================================================
   v93: Global quick date range button alignment
   Applies to every list/dashboard date search form.
   ============================================================ */
.list-filter-card .filter-date-quick,
.filter-grid .filter-date-quick{
    min-width:0!important;
    width:100%!important;
    align-self:end!important;
    grid-column:span 2;
}
.list-filter-card .filter-date-quick label,
.filter-grid .filter-date-quick label{
    display:block!important;
    margin:0 0 6px!important;
    line-height:1.2!important;
    white-space:nowrap!important;
}
.list-filter-card .stream-date-quick-buttons,
.filter-grid .stream-date-quick-buttons{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(64px,1fr));
    gap:6px!important;
    width:100%!important;
    align-items:stretch!important;
}
.stream-date-quick-buttons .stream-date-quick-btn,
.list-filter-card .stream-date-quick-buttons .stream-date-quick-btn,
.filter-grid .stream-date-quick-buttons .stream-date-quick-btn{
    width:100%!important;
    min-width:0!important;
    height:38px!important;
    min-height:38px!important;
    padding:0 8px!important;
    white-space:nowrap!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:10px!important;
    line-height:1!important;
    font-size:12px!important;
    font-weight:800!important;
}
.filter-actions .btn,
.filter-actions button,
.filter-actions a{
    min-width:64px!important;
    white-space:nowrap!important;
}
.dashboard-filter{
    display:grid!important;
    grid-template-columns:156px 156px 64px minmax(330px, max-content);
    gap:8px!important;
    align-items:end!important;
    justify-content:end!important;
    width:100%;
    max-width:760px;
    margin-left:auto;
}
.dashboard-filter .stream-calendar-wrap{
    width:156px!important;
    min-width:156px!important;
    max-width:156px!important;
    flex:0 0 156px!important;
}
.dashboard-filter .stream-calendar-display,
.dashboard-filter input[type="date"],
.dashboard-filter input[type="text"]{
    height:40px!important;
    min-height:40px!important;
    white-space:nowrap!important;
}
.dashboard-filter > button[type="submit"],
.dashboard-filter > .btn[type="submit"]{
    width:64px!important;
    min-width:64px!important;
    height:40px!important;
    padding:0 10px!important;
    white-space:nowrap!important;
    word-break:keep-all!important;
    line-height:1!important;
}
.dashboard-filter .filter-date-quick{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:6px!important;
    min-width:330px!important;
    width:330px!important;
    align-self:end!important;
    margin:0!important;
}
.dashboard-filter .filter-date-quick label{
    display:block!important;
    margin:0!important;
    line-height:1!important;
    height:14px!important;
    color:#64748b!important;
    font-size:12px!important;
    font-weight:900!important;
    white-space:nowrap!important;
}
.dashboard-filter .stream-date-quick-buttons{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(72px,1fr));
    gap:6px!important;
    width:100%!important;
    flex-wrap:nowrap!important;
}
.dashboard-filter .stream-date-quick-buttons .stream-date-quick-btn{
    height:40px!important;
    min-height:40px!important;
    min-width:0!important;
    width:100%!important;
    padding:0 8px!important;
    white-space:nowrap!important;
}
@media(max-width:1300px){
    .dashboard-head{flex-direction:column!important;align-items:stretch!important;}
    .dashboard-filter{justify-content:start!important;margin-left:0!important;max-width:100%;}
}
@media(max-width:900px){
    .list-filter-card .filter-date-quick,
    .filter-grid .filter-date-quick{grid-column:1/-1!important;}
    .dashboard-filter{grid-template-columns:1fr 1fr!important;}
    .dashboard-filter .stream-calendar-wrap{width:100%!important;min-width:0!important;max-width:none!important;}
    .dashboard-filter > button[type="submit"]{width:100%!important;min-width:0!important;}
    .dashboard-filter .filter-date-quick{grid-column:1/-1!important;width:100%!important;min-width:0!important;}
}
@media(max-width:520px){
    .list-filter-card .stream-date-quick-buttons,
    .filter-grid .stream-date-quick-buttons,
    .dashboard-filter .stream-date-quick-buttons{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
    .dashboard-filter{grid-template-columns:1fr!important;}
}

/* ============================================================
   v99: Selected quick date period button state
   ============================================================ */
.stream-date-quick-buttons .stream-date-quick-btn.is-active,
.list-filter-card .stream-date-quick-buttons .stream-date-quick-btn.is-active,
.filter-grid .stream-date-quick-buttons .stream-date-quick-btn.is-active,
.dashboard-filter .stream-date-quick-buttons .stream-date-quick-btn.is-active{
    background:linear-gradient(135deg,var(--primary,#2563eb),rgba(var(--primary-rgb,37,99,235),.78))!important;
    border-color:transparent!important;
    color:#fff!important;
    box-shadow:0 8px 18px rgba(37,99,235,.22)!important;
}
.stream-date-quick-buttons .stream-date-quick-btn:not(.is-active){
    background:#fff!important;
    color:#334155!important;
    border-color:#e2e8f0!important;
    box-shadow:none!important;
}
.stream-date-quick-buttons .stream-date-quick-btn.is-active::before{
    content:'✓';
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:14px;
    height:14px;
    margin-right:4px;
    font-size:10px;
    line-height:1;
    border-radius:999px;
    background:rgba(255,255,255,.22);
}

/* v104 dashboard date filter clean alignment fix */
.dashboard-head{
    display:grid!important;
    grid-template-columns:minmax(240px,1fr) auto!important;
    align-items:start!important;
    gap:18px!important;
    margin-bottom:18px!important;
}
.dashboard-head > div:first-child{
    min-width:220px!important;
}
.dashboard-filter{
    display:grid!important;
    grid-template-columns:160px 160px 72px!important;
    grid-template-areas:"start end search" "quick quick quick"!important;
    align-items:center!important;
    justify-content:end!important;
    justify-items:stretch!important;
    gap:8px!important;
    width:auto!important;
    max-width:480px!important;
    min-width:480px!important;
    margin-left:auto!important;
}
.dashboard-filter > .stream-calendar-wrap:nth-of-type(1),
.dashboard-filter > input[name="start_date"],
.dashboard-filter > input[name="period_start"],
.dashboard-filter > input[data-calendar-role="start"]{
    grid-area:start!important;
}
.dashboard-filter > .stream-calendar-wrap:nth-of-type(2),
.dashboard-filter > input[name="end_date"],
.dashboard-filter > input[name="period_end"],
.dashboard-filter > input[data-calendar-role="end"]{
    grid-area:end!important;
}
.dashboard-filter .stream-calendar-wrap{
    width:160px!important;
    min-width:160px!important;
    max-width:160px!important;
    flex:0 0 160px!important;
}
.dashboard-filter .stream-calendar-display,
.dashboard-filter .stream-calendar-input,
.dashboard-filter input[type="date"],
.dashboard-filter input[type="text"]{
    width:100%!important;
    min-width:0!important;
    height:42px!important;
    border-radius:8px!important;
    white-space:nowrap!important;
    box-sizing:border-box!important;
}
.dashboard-filter .dashboard-search-btn,
.dashboard-filter > button[type="submit"]{
    grid-area:search!important;
    width:72px!important;
    min-width:72px!important;
    max-width:72px!important;
    height:42px!important;
    padding:0 12px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    white-space:nowrap!important;
    word-break:keep-all!important;
    line-height:1!important;
    box-sizing:border-box!important;
}
.dashboard-filter .filter-date-quick{
    grid-area:quick!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:8px!important;
    margin:0!important;
    align-self:center!important;
}
.dashboard-filter .filter-date-quick label{
    display:inline-flex!important;
    align-items:center!important;
    height:36px!important;
    line-height:1!important;
    margin:0 2px 0 0!important;
    white-space:nowrap!important;
    font-size:12px!important;
    font-weight:800!important;
    color:#64748b!important;
}
.dashboard-filter .stream-date-quick-buttons{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:6px!important;
    width:360px!important;
    max-width:360px!important;
    min-width:0!important;
    align-items:stretch!important;
}
.dashboard-filter .stream-date-quick-buttons .stream-date-quick-btn,
.dashboard-filter .stream-date-quick-btn{
    width:100%!important;
    min-width:0!important;
    height:38px!important;
    padding:0 10px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:8px!important;
    white-space:nowrap!important;
    word-break:keep-all!important;
    line-height:1!important;
    box-sizing:border-box!important;
}
@media(max-width:1100px){
    .dashboard-head{grid-template-columns:1fr!important;align-items:stretch!important;}
    .dashboard-filter{justify-content:start!important;margin-left:0!important;max-width:480px!important;min-width:0!important;}
}
@media(max-width:640px){
    .dashboard-filter{
        grid-template-columns:1fr 1fr!important;
        grid-template-areas:"start end" "search search" "quick quick"!important;
        width:100%!important;
        max-width:100%!important;
    }
    .dashboard-filter .stream-calendar-wrap{width:100%!important;min-width:0!important;max-width:none!important;}
    .dashboard-filter .dashboard-search-btn,.dashboard-filter > button[type="submit"]{width:100%!important;max-width:none!important;}
    .dashboard-filter .filter-date-quick{align-items:stretch!important;justify-content:flex-start!important;flex-direction:column!important;}
    .dashboard-filter .stream-date-quick-buttons{width:100%!important;max-width:100%!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}

/* v108 money tracking compact stat */
.stream-mini-stat .card-body{padding:14px 16px;display:flex;flex-direction:column;gap:4px;min-height:74px;}
.stream-mini-stat span{font-size:12px;font-weight:800;color:#64748b;}
.stream-mini-stat strong{font-size:14px;font-weight:900;color:#111827;}
.stream-modal-card .modal-header{border-bottom:1px solid #eef2f7;}
.stream-modal-card .modal-footer{border-top:1px solid #eef2f7;}


/* ============================================================
   v146: Compact status chip + SweetAlert confirm
   ============================================================ */
.stream-status-switch-form{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    margin:0!important;
    padding:0!important;
    width:auto!important;
    min-width:0!important;
}
.stream-status-chip{
    appearance:none!important;
    -webkit-appearance:none!important;
    border:0!important;
    outline:0!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:5px!important;
    width:64px!important;
    min-width:64px!important;
    max-width:64px!important;
    height:26px!important;
    padding:0 8px!important;
    border-radius:999px!important;
    font-size:11px!important;
    font-weight:900!important;
    line-height:1!important;
    letter-spacing:-.2px!important;
    white-space:nowrap!important;
    cursor:pointer!important;
    box-sizing:border-box!important;
    transition:transform .14s ease, box-shadow .14s ease, background .14s ease!important;
}
.stream-status-chip:hover{
    transform:translateY(-1px)!important;
}
.stream-status-chip-dot{
    display:inline-block!important;
    width:7px!important;
    height:7px!important;
    min-width:7px!important;
    border-radius:50%!important;
    background:currentColor!important;
    box-shadow:0 0 0 2px rgba(255,255,255,.78)!important;
}
.stream-status-chip-text{
    display:inline-block!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}
.stream-status-chip.is-active{
    color:#15803d!important;
    background:#dcfce7!important;
    box-shadow:inset 0 0 0 1px rgba(34,197,94,.32)!important;
}
.stream-status-chip.is-blocked{
    color:#b91c1c!important;
    background:#fee2e2!important;
    box-shadow:inset 0 0 0 1px rgba(239,68,68,.30)!important;
}
@media (max-width:640px){
    .stream-status-chip{
        width:58px!important;
        min-width:58px!important;
        max-width:58px!important;
        height:24px!important;
        padding:0 7px!important;
        font-size:10px!important;
    }
    .stream-status-chip-dot{
        width:6px!important;
        height:6px!important;
        min-width:6px!important;
    }
}

.stream-confirm-backdrop{
    position:fixed;
    inset:0;
    z-index:99999;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:20px;
    background:rgba(15,23,42,.48);
    backdrop-filter:blur(5px);
}
.stream-confirm-card{
    width:min(420px, 100%);
    border-radius:20px;
    background:#fff;
    box-shadow:0 26px 80px rgba(15,23,42,.28);
    overflow:hidden;
    animation:streamConfirmPop .18s ease-out;
}
.stream-confirm-body{
    padding:28px 28px 18px;
    text-align:center;
}
.stream-confirm-icon{
    width:54px;
    height:54px;
    margin:0 auto 14px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#eef4ff;
    color:#2563eb;
    font-size:26px;
    font-weight:900;
}
.stream-confirm-title{
    margin:0 0 8px;
    font-size:18px;
    font-weight:900;
    color:#0f172a;
}
.stream-confirm-text{
    margin:0;
    color:#64748b;
    font-size:14px;
    line-height:1.6;
    white-space:pre-line;
}
.stream-confirm-actions{
    display:flex;
    justify-content:flex-end;
    gap:10px;
    padding:16px 20px 20px;
    border-top:1px solid #eef2f7;
}
.stream-confirm-btn{
    height:40px;
    min-width:86px;
    border-radius:12px;
    border:1px solid #dbe5f3;
    padding:0 18px;
    font-weight:800;
    cursor:pointer;
    background:#fff;
    color:#334155;
}
.stream-confirm-btn-primary{
    border-color:#2563eb;
    background:#2563eb;
    color:#fff;
    box-shadow:0 8px 18px rgba(37,99,235,.24);
}
@keyframes streamConfirmPop{
    from{opacity:0;transform:translateY(8px) scale(.98)}
    to{opacity:1;transform:translateY(0) scale(1)}
}
@media (max-width:640px){
    .stream-status-switch{
        min-width:124px!important;
        grid-template-columns:auto 42px auto!important;
        height:32px!important;
        font-size:11px!important;
        gap:6px!important;
    }
    .stream-status-switch-track{
        width:42px!important;
        min-width:42px!important;
        height:22px!important;
    }
    .stream-status-switch-knob{
        width:16px!important;
        height:16px!important;
    }
    .stream-status-switch.is-blocked .stream-status-switch-knob{
        left:23px!important;
    }
    .stream-confirm-actions{
        display:grid;
        grid-template-columns:1fr 1fr;
    }
    .stream-confirm-btn{
        width:100%;
    }
}


/* v114 wallet transaction page compact one-line summary */
.stream-wallet-summary-line{
    display:flex;
    align-items:center;
    gap:0;
    width:100%;
    background:#fff;
    border:1px solid #e5eaf3;
    border-radius:12px;
    box-shadow:0 2px 8px rgba(15,23,42,.04);
    padding:12px 16px;
    overflow-x:auto;
}
.stream-wallet-summary-item{
    flex:1 0 220px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    min-width:220px;
    padding:0 12px;
}
.stream-wallet-summary-item:first-child{padding-left:0;}
.stream-wallet-summary-item:last-child{padding-right:0;}
.stream-wallet-summary-item span{
    font-size:12px;
    font-weight:800;
    color:#64748b;
    white-space:nowrap;
}
.stream-wallet-summary-item strong{
    font-size:14px;
    font-weight:900;
    color:#111827;
    white-space:nowrap;
}
.stream-wallet-summary-divider{
    flex:0 0 1px;
    width:1px;
    height:28px;
    background:#e5eaf3;
}
@media (max-width: 991px){
    .stream-wallet-summary-line{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px;}
    .stream-wallet-summary-item{min-width:0;flex:auto;border:1px solid #edf1f7;border-radius:10px;padding:10px 12px;}
    .stream-wallet-summary-divider{display:none;}
}
@media (max-width: 575px){
    .stream-wallet-summary-line{grid-template-columns:1fr;}
}

/* v116 System Health page design fix */
.stream-health-page-v116 {
    display: flex;
    flex-direction: column;
    gap: 18px;
}
.stream-health-page-v116 .stream-health-hero {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    padding: 22px 24px;
    border-radius: 18px;
    background: linear-gradient(135deg, #ffffff 0%, #f7f9ff 100%);
    border: 1px solid #e6ebf5;
    box-shadow: 0 10px 30px rgba(15, 23, 42, .06);
}
.stream-health-page-v116 .stream-health-kicker {
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .04em;
    color: #2563eb;
    margin-bottom: 8px;
}
.stream-health-page-v116 .stream-health-hero h1 {
    margin: 0 0 6px;
    font-size: 24px;
    font-weight: 900;
    color: #0f172a;
}
.stream-health-page-v116 .stream-health-hero p {
    margin: 0;
    color: #64748b;
    font-size: 14px;
    font-weight: 600;
}
.stream-health-page-v116 .stream-health-actions {
    flex: 0 0 auto;
}
.stream-health-page-v116 .stream-health-summary-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}
.stream-health-page-v116 .stream-health-summary-card {
    position: relative;
    overflow: hidden;
    min-height: 100px;
    padding: 18px 20px;
    border-radius: 16px;
    background: #fff;
    border: 1px solid #e6ebf5;
    box-shadow: 0 8px 24px rgba(15, 23, 42, .05);
}
.stream-health-page-v116 .stream-health-summary-card::after {
    content: '';
    position: absolute;
    right: -22px;
    bottom: -28px;
    width: 92px;
    height: 92px;
    border-radius: 50%;
    background: rgba(37, 99, 235, .08);
}
.stream-health-page-v116 .stream-health-summary-card.ok::after { background: rgba(16, 185, 129, .12); }
.stream-health-page-v116 .stream-health-summary-card.warning::after { background: rgba(245, 158, 11, .16); }
.stream-health-page-v116 .stream-health-summary-card.danger::after { background: rgba(239, 68, 68, .14); }
.stream-health-page-v116 .stream-health-summary-card span {
    display: block;
    font-size: 13px;
    color: #64748b;
    font-weight: 800;
    margin-bottom: 10px;
}
.stream-health-page-v116 .stream-health-summary-card strong {
    display: block;
    font-size: 28px;
    color: #0f172a;
    font-weight: 900;
    line-height: 1;
}
.stream-health-page-v116 .stream-health-card {
    border-radius: 18px;
    background: #fff;
    border: 1px solid #e6ebf5;
    box-shadow: 0 8px 24px rgba(15, 23, 42, .05);
    overflow: hidden;
}
.stream-health-page-v116 .stream-health-card-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 18px 22px;
    border-bottom: 1px solid #edf1f7;
    color: #0f172a;
    font-size: 15px;
}
.stream-health-page-v116 .stream-health-section-dot {
    display: inline-block;
    width: 5px;
    height: 22px;
    border-radius: 999px;
    background: #2563eb;
    margin-right: 10px;
    vertical-align: middle;
}
.stream-health-page-v116 .stream-health-runtime-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    padding: 18px 22px 22px;
}
.stream-health-page-v116 .stream-health-runtime-item {
    padding: 14px;
    border: 1px solid #edf1f7;
    border-radius: 14px;
    background: #f8fafc;
    min-width: 0;
}
.stream-health-page-v116 .stream-health-runtime-item span {
    display: block;
    font-size: 12px;
    font-weight: 800;
    color: #64748b;
    margin-bottom: 6px;
}
.stream-health-page-v116 .stream-health-runtime-item strong {
    display: block;
    font-size: 13px;
    font-weight: 800;
    color: #0f172a;
    word-break: break-all;
}
.stream-health-page-v116 .stream-health-category-list {
    padding: 18px 22px 22px;
    display: flex;
    flex-direction: column;
    gap: 18px;
}
.stream-health-page-v116 .stream-health-category-block {
    border: 1px solid #edf1f7;
    border-radius: 16px;
    overflow: hidden;
    background: #fff;
}
.stream-health-page-v116 .stream-health-category-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 13px 16px;
    background: #f8fafc;
    border-bottom: 1px solid #edf1f7;
}
.stream-health-page-v116 .stream-health-category-title span {
    font-size: 14px;
    font-weight: 900;
    color: #0f172a;
}
.stream-health-page-v116 .stream-health-category-title em {
    min-width: 28px;
    height: 24px;
    padding: 0 8px;
    border-radius: 999px;
    background: #eaf1ff;
    color: #2563eb;
    font-style: normal;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 900;
}
.stream-health-page-v116 .stream-health-table th {
    background: #fff;
    color: #64748b;
    font-size: 12px;
    font-weight: 900;
    border-bottom: 1px solid #edf1f7;
    white-space: nowrap;
}
.stream-health-page-v116 .stream-health-table td {
    font-size: 13px;
    color: #334155;
    border-bottom: 1px solid #f1f5f9;
    vertical-align: middle;
}
.stream-health-page-v116 .stream-health-table code {
    padding: 3px 7px;
    border-radius: 8px;
    color: #334155;
    background: #f1f5f9;
    font-size: 12px;
    white-space: normal;
    word-break: break-all;
}
.stream-health-page-v116 .stream-health-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 54px;
    height: 26px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
}
.stream-health-page-v116 .stream-health-badge.ok {
    color: #047857;
    background: #d1fae5;
}
.stream-health-page-v116 .stream-health-badge.warning {
    color: #92400e;
    background: #fef3c7;
}
.stream-health-page-v116 .stream-health-badge.danger {
    color: #b91c1c;
    background: #fee2e2;
}
@media (max-width: 1200px) {
    .stream-health-page-v116 .stream-health-summary-grid,
    .stream-health-page-v116 .stream-health-runtime-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (max-width: 640px) {
    .stream-health-page-v116 .stream-health-hero {
        flex-direction: column;
    }
    .stream-health-page-v116 .stream-health-summary-grid,
    .stream-health-page-v116 .stream-health-runtime-grid {
        grid-template-columns: 1fr;
    }
}

/* v147 compact money action buttons */
.money-action-buttons{display:inline-flex;gap:3px;align-items:center;flex-wrap:nowrap;margin-right:4px;vertical-align:middle;}
.money-action-buttons .btn{padding:2px 6px;font-size:11px;line-height:1.25;border-radius:6px;white-space:nowrap;}


/* v148 compact table money/rate layout */
.amount-action-cell{display:flex;align-items:center;gap:6px;white-space:nowrap;min-width:120px;}
.amount-action-cell .amount-text{font-weight:700;min-width:56px;text-align:right;display:inline-block;}
.compact-rate-line{display:block;white-space:nowrap;font-size:12px;line-height:1.35;color:#475569;}
.admin-table .btn-xs{padding:2px 5px;font-size:11px;line-height:1.2;border-radius:6px;}
.admin-table .money-action-buttons{margin-right:0;gap:2px;}

/* v150 - compact balance/point/commission action modal */
.stream-money-modal{
  width:min(430px,94vw)!important;
  max-width:430px!important;
  border-radius:16px!important;
  overflow:hidden!important;
}
.stream-money-modal-header{
  padding:14px 16px!important;
  min-height:auto!important;
}
.stream-money-modal-header h5{
  margin:0!important;
  font-size:15px!important;
  font-weight:800!important;
  line-height:1.25!important;
}
.stream-money-modal-header small{
  display:block!important;
  margin-top:3px!important;
  color:#64748b!important;
  font-size:11px!important;
  font-weight:500!important;
}
.stream-money-modal-header button{
  width:30px!important;
  height:30px!important;
  border-radius:9px!important;
  font-size:20px!important;
  line-height:1!important;
}
.stream-money-modal-body{
  display:block!important;
  grid-template-columns:none!important;
  padding:14px 16px!important;
  gap:0!important;
}
.stream-money-summary{
  display:grid!important;
  grid-template-columns:1fr 125px!important;
  gap:8px!important;
  margin-bottom:12px!important;
}
.stream-money-summary-3{
  grid-template-columns:1fr 98px 98px!important;
}
.stream-money-target,
.stream-money-stat{
  min-width:0!important;
  padding:9px 10px!important;
  border:1px solid #e5e7eb!important;
  border-radius:12px!important;
  background:#f8fafc!important;
}
.stream-money-target span,
.stream-money-stat span{
  display:block!important;
  color:#64748b!important;
  font-size:11px!important;
  line-height:1.1!important;
  margin-bottom:4px!important;
}
.stream-money-target strong,
.stream-money-stat strong{
  display:block!important;
  color:#0f172a!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1.2!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.stream-money-row{
  display:grid!important;
  grid-template-columns:86px 1fr!important;
  gap:8px!important;
  align-items:center!important;
  margin-top:9px!important;
}
.stream-money-row label{
  margin:0!important;
  color:#334155!important;
  font-size:12px!important;
  font-weight:800!important;
}
.stream-money-row label::before{display:none!important;content:none!important;}
.stream-money-row .form-control{
  height:38px!important;
  min-height:38px!important;
  border-radius:10px!important;
  padding:7px 10px!important;
  font-size:13px!important;
}
.stream-money-quick{
  display:grid!important;
  grid-template-columns:repeat(6,1fr)!important;
  gap:5px!important;
  margin:8px 0 2px 94px!important;
}
.stream-money-quick button{
  height:28px!important;
  padding:0 4px!important;
  border:1px solid #dbe3ef!important;
  background:#ffffff!important;
  color:#334155!important;
  border-radius:8px!important;
  font-size:11px!important;
  font-weight:800!important;
  cursor:pointer!important;
  white-space:nowrap!important;
}
.stream-money-quick button:hover{
  background:#eff6ff!important;
  border-color:#93c5fd!important;
  color:#1d4ed8!important;
}
.stream-money-modal-footer{
  padding:12px 16px!important;
  gap:7px!important;
}
.stream-money-modal-footer .btn{
  min-width:72px!important;
  height:34px!important;
  padding:6px 12px!important;
  font-size:12px!important;
  border-radius:9px!important;
}
@media (max-width: 520px){
  .stream-money-summary,
  .stream-money-summary-3{grid-template-columns:1fr!important;}
  .stream-money-row{grid-template-columns:1fr!important;gap:5px!important;}
  .stream-money-quick{margin-left:0!important;grid-template-columns:repeat(3,1fr)!important;}
}

/* v151 - one-column compact balance/convert modal + quick amount button design */
.stream-money-modal{
  width:min(400px,94vw)!important;
  max-width:400px!important;
  border-radius:18px!important;
  box-shadow:0 22px 60px rgba(15,23,42,.22)!important;
}
.stream-money-modal-header{
  padding:13px 15px 11px!important;
  border-bottom:1px solid #eef2f7!important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%)!important;
}
.stream-money-modal-header h5{font-size:15px!important;letter-spacing:-.2px!important;}
.stream-money-modal-header small{font-size:11px!important;margin-top:2px!important;}
.stream-money-modal-body{
  padding:13px 15px!important;
}
.stream-money-summary,
.stream-money-summary-3{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:6px!important;
  margin-bottom:10px!important;
}
.stream-money-target,
.stream-money-stat{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  min-height:38px!important;
  padding:8px 10px!important;
  border-radius:11px!important;
  background:#f8fafc!important;
  border:1px solid #e6edf5!important;
}
.stream-money-target span,
.stream-money-stat span{
  margin:0!important;
  color:#64748b!important;
  font-size:11px!important;
  font-weight:800!important;
  white-space:nowrap!important;
}
.stream-money-target strong,
.stream-money-stat strong{
  text-align:right!important;
  font-size:13px!important;
  font-weight:900!important;
  color:#0f172a!important;
}
.stream-money-row{
  display:block!important;
  margin-top:9px!important;
}
.stream-money-row label{
  display:block!important;
  margin:0 0 5px!important;
  font-size:12px!important;
  color:#334155!important;
}
.stream-money-row .form-control{
  width:100%!important;
  height:37px!important;
  min-height:37px!important;
  border-radius:10px!important;
  font-size:13px!important;
}
.stream-money-quick{
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  gap:6px!important;
  margin:8px 0 2px!important;
}
.stream-money-quick button{
  position:relative!important;
  height:32px!important;
  padding:0 8px!important;
  border:1px solid #dbeafe!important;
  background:linear-gradient(180deg,#ffffff 0%,#eff6ff 100%)!important;
  color:#1e40af!important;
  border-radius:10px!important;
  font-size:12px!important;
  font-weight:900!important;
  box-shadow:0 1px 2px rgba(15,23,42,.06)!important;
  transition:all .12s ease!important;
}
.stream-money-quick button:hover{
  transform:translateY(-1px)!important;
  background:linear-gradient(180deg,#eff6ff 0%,#dbeafe 100%)!important;
  border-color:#60a5fa!important;
  color:#1d4ed8!important;
}
.stream-money-quick button:active{
  transform:translateY(0)!important;
  box-shadow:none!important;
}
.stream-money-quick button:last-child{
  border-color:#e5e7eb!important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%)!important;
  color:#475569!important;
}
.stream-money-quick button[onclick*="streamUseAvailable"]{
  border-color:#bbf7d0!important;
  background:linear-gradient(180deg,#ffffff 0%,#ecfdf5 100%)!important;
  color:#047857!important;
}
.stream-money-modal-footer{
  padding:10px 15px 13px!important;
  border-top:1px solid #eef2f7!important;
  justify-content:flex-end!important;
}
.stream-money-modal-footer .btn{
  height:32px!important;
  min-width:66px!important;
  border-radius:9px!important;
  font-size:12px!important;
}

/* v152 SweetAlert compact global flash */
.stream-swal-compact{border-radius:18px!important;padding:18px 20px!important;}
.stream-swal-fallback{position:fixed;top:22px;right:22px;z-index:99999;max-width:360px;padding:13px 16px;border-radius:14px;background:#0f172a;color:#fff;font-size:13px;font-weight:800;box-shadow:0 16px 40px rgba(15,23,42,.22);opacity:0;transform:translateY(-8px);transition:all .2s ease;}
.stream-swal-fallback.show{opacity:1;transform:translateY(0);}
.stream-swal-fallback-success{background:#0f766e;}
.stream-swal-fallback-error{background:#b91c1c;}


/* v153 balance popup one-column force */
.stream-money-modal-backdrop{overflow-x:hidden!important;}
.stream-money-modal{width:min(520px,96vw)!important;max-width:520px!important;min-width:0!important;overflow:hidden!important;}
.stream-money-modal-body{display:flex!important;flex-direction:column!important;grid-template-columns:1fr!important;width:100%!important;overflow-x:hidden!important;}
.stream-money-summary,.stream-money-summary-3{display:flex!important;flex-direction:column!important;grid-template-columns:1fr!important;width:100%!important;}
.stream-money-row{display:block!important;width:100%!important;}
.stream-money-quick{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;width:100%!important;margin:9px 0 4px!important;}
.stream-money-quick button{width:100%!important;min-width:0!important;}

/* v162 member front sample */
.member-front-home{background:#0b1020;color:#0f172a;min-height:100vh;}
.front-shell{max-width:1180px;margin:0 auto;padding:24px;}
.front-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:22px;color:#fff;}
.front-nav{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.front-nav a{color:#cbd5e1;padding:10px 12px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);font-weight:800;font-size:13px;}
.front-nav a:hover{background:rgba(255,255,255,.12);color:#fff;}
.front-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:28px;align-items:center;padding:42px;background:linear-gradient(135deg,#ffffff,#f8fafc);overflow:hidden;position:relative;}
.front-hero h1{font-size:44px;line-height:1.12;letter-spacing:-.06em;margin:14px 0;color:#0f172a;}
.front-hero p{font-size:16px;line-height:1.75;color:#64748b;max-width:560px;}
.front-badge{display:inline-flex;padding:8px 12px;border-radius:999px;background:#fff7ed;color:#f97316;font-weight:900;border:1px solid #fed7aa;}
.front-actions{display:flex;gap:10px;margin-top:22px;}
.front-visual{display:flex;justify-content:center;}
.front-phone{width:285px;border-radius:34px;background:#111827;padding:18px;border:8px solid #020617;box-shadow:0 30px 80px rgba(15,23,42,.35);}
.phone-top{width:80px;height:8px;background:#334155;border-radius:999px;margin:0 auto 18px;}
.phone-card{background:linear-gradient(135deg,#f59e0b,#f97316);border-radius:22px;color:#fff;padding:20px;margin-bottom:14px;}
.phone-card b{display:block;color:#fffbeb;margin-bottom:8px}.phone-card strong{font-size:26px;letter-spacing:-.04em;}
.phone-row{height:48px;border-radius:15px;background:#1f2937;color:#e5e7eb;display:flex;align-items:center;justify-content:space-between;padding:0 14px;margin-top:10px;}
.phone-row em{font-style:normal;color:#fbbf24;font-weight:900;}
.front-feature-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:18px;}
.front-feature{text-align:center;color:#0f172a;}.front-feature div{font-size:34px}.front-feature h3{margin:12px 0 6px}.front-feature p{margin:0;color:#64748b;line-height:1.55;}
.front-game-mini{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}.front-game-mini span{padding:11px 12px;border-radius:12px;background:#f8fafc;border:1px solid #e5e7eb;font-weight:800;}
.front-filter{display:grid;grid-template-columns:1fr 210px auto;gap:10px;margin-bottom:18px;}
.front-game-grid{grid-template-columns:repeat(4,minmax(0,1fr));}.front-game-card{text-align:center;}.front-game-thumb{height:130px;border-radius:18px;background:linear-gradient(135deg,#fff7ed,#ffedd5);display:grid;place-items:center;font-size:46px;margin-bottom:14px;}.front-game-card h3{margin:0 0 6px;font-size:17px;}.front-game-card p{margin:0 0 14px;color:#64748b;}
.front-play-box{padding:20px;}.front-play-screen{min-height:480px;border-radius:22px;background:radial-gradient(circle at top,#334155,#020617);color:#fff;display:grid;place-items:center;text-align:center;padding:34px;}.front-play-logo{font-size:70px}.front-play-screen h2{font-size:32px;margin:10px 0}.front-play-screen p{color:#cbd5e1;}
.front-content-box{line-height:1.8;color:#334155;white-space:normal;}
@media(max-width:1100px){.front-feature-grid,.front-game-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.front-hero{grid-template-columns:1fr}.front-filter{grid-template-columns:1fr;}}
@media(max-width:720px){.front-header{display:grid}.front-hero{padding:24px}.front-hero h1{font-size:32px}.front-feature-grid,.front-game-grid{grid-template-columns:1fr}.front-nav{display:grid;grid-template-columns:repeat(2,1fr)}.front-shell{padding:14px}}

/* v170 pending quick filter buttons */
.quick-pending-filter{display:flex;gap:6px;align-items:center;justify-content:flex-end;margin:0 0 10px 0;flex-wrap:wrap}
.quick-pending-filter .btn{min-width:54px;text-align:center}

/* v188 Admin/HQ + Partner sidebar menu font size match Super */
body[data-panel="hq"] .sidebar .nav-link,
body[data-panel="partner"] .sidebar .nav-link,
body[data-panel="hq"] .sidebar .nav-group-toggle,
body[data-panel="partner"] .sidebar .nav-group-toggle{font-size:15px!important;line-height:1.25!important;font-weight:800!important;padding:12px 14px!important;gap:12px!important;border-radius:14px!important;letter-spacing:0!important}
body[data-panel="hq"] .sidebar .nav-sub-link,
body[data-panel="partner"] .sidebar .nav-sub-link{font-size:14px!important;line-height:1.25!important;font-weight:800!important;min-height:34px!important;padding:6px 8px!important;gap:11px!important;border-radius:10px!important;letter-spacing:0!important}
body[data-panel="hq"] .sidebar .nav-title,
body[data-panel="partner"] .sidebar .nav-title{font-size:12px!important;line-height:1.25!important;font-weight:900!important;padding:10px 14px 6px!important;letter-spacing:.04em!important}
body[data-panel="hq"] .sidebar .nav-ico,
body[data-panel="partner"] .sidebar .nav-ico{font-size:15px!important;width:22px!important;min-width:22px!important;line-height:1!important}
body[data-panel="hq"] .sidebar .nav-arrow,
body[data-panel="partner"] .sidebar .nav-arrow{font-size:15px!important;line-height:1!important}
body[data-panel="hq"] .sidebar .nav-sub-link em,
body[data-panel="partner"] .sidebar .nav-sub-link em{font-size:12px!important;line-height:1.25!important}


/* v198 SweetAlert fallback/toast and public bet settings cleanup */
.stream-swal-fallback{position:fixed;top:18px;right:18px;z-index:99999;min-width:240px;max-width:420px;padding:12px 16px;border-radius:14px;background:#0f172a;color:#fff;font-size:13px;font-weight:800;box-shadow:0 16px 40px rgba(15,23,42,.22);opacity:0;transform:translateY(-8px);transition:.22s ease}
.stream-swal-fallback.show{opacity:1;transform:translateY(0)}
.stream-swal-fallback-success{background:#047857}.stream-swal-fallback-error{background:#be123c}.stream-swal-fallback-info{background:#2563eb}
.swal2-popup.stream-swal-compact{border-radius:18px!important;padding:22px!important;font-size:14px!important}
