
:root{--bg:#09090f;--panel:#16161f;--text:#f7f7fb;--muted:#9191a3;--line:#2a2a36;--primary:#a7ef61;--primary2:#78c83b;--green:#9be65c;--orange:#f1a64b;--red:#ff587b;--sidebar:#0d0d13;--shadow:0 18px 48px rgba(20,31,52,.13)}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--bg);color:var(--text);font-size:13px}.hidden{display:none!important}.app-shell{min-height:100vh}.sidebar{position:fixed;left:0;top:0;bottom:0;width:252px;background:var(--sidebar);color:#d9e1ee;padding:22px 17px;display:flex;flex-direction:column;z-index:40}.brand-area{display:flex;gap:11px;align-items:center;padding:0 7px 24px}.brand-mark{width:40px;height:40px;border-radius:13px;background:linear-gradient(135deg,#4178e8,#74a1ff);display:grid;place-items:center;color:#fff;font-weight:900;font-size:20px}.brand-area b{display:block;color:#fff;font-size:17px}.brand-area span{display:block;font-size:10px;color:#9eabc0;margin-top:2px}.sidebar nav{display:grid;gap:6px}.nav-item{border:0;background:transparent;color:#abb6c9;text-align:left;padding:12px 14px;border-radius:11px;cursor:pointer;font-weight:700;display:flex;gap:11px;align-items:center}.nav-item:hover,.nav-item.active{background:#26344d;color:#fff}.nav-item span{width:18px;text-align:center}.sidebar-foot{margin-top:auto;border-top:1px solid #2c3951;padding:17px 5px 0}.sidebar-foot label{font-size:10px;color:#9aa6ba}.sidebar-foot input{width:100%;margin:7px 0 10px;background:#202c41;border:1px solid #35445e;color:#fff;padding:10px;border-radius:9px}.main-content{margin-left:252px;width:calc(100% - 252px);padding:0 27px 42px}.topbar{height:86px;display:flex;align-items:center;justify-content:space-between;gap:18px}.topbar h2{margin:0;font-size:23px}.topbar p{margin:4px 0 0;color:var(--muted);font-size:11px}.topbar-actions{display:flex;gap:10px;align-items:center}.period-box{background:#fff;border:1px solid var(--line);border-radius:12px;padding:7px 11px;min-width:185px}.period-box label{display:block;font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.period-box select{width:100%;border:0;background:transparent;font-weight:800;outline:0}.icon-button{width:42px;height:42px;border-radius:12px;border:1px solid var(--line);background:#fff;cursor:pointer;font-size:18px}.view{display:none}.view.active{display:block}.card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:17px}.stat-card,.mini-card,.panel,.account-card{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 5px 20px rgba(15,23,42,.03)}.stat-card{padding:17px;border-top:4px solid var(--primary)}.stat-card.green{border-top-color:var(--green)}.stat-card.orange{border-top-color:#f59e0b}.stat-card.red{border-top-color:#ef4444}.stat-card .label{font-size:11px;color:var(--muted)}.stat-card .value{font-size:25px;font-weight:900;margin:6px 0 3px}.stat-card .detail{font-size:10px;color:var(--muted)}.two-column{display:grid;grid-template-columns:1.1fr .9fr;gap:16px}.panel{padding:17px;margin-bottom:16px}.panel.no-pad{padding:0}.panel-head{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:13px}.panel-head.padded{padding:17px;margin:0}.panel-head h3{margin:0;font-size:16px}.panel-head p{margin:4px 0 0;color:var(--muted);font-size:10px}.brand-row,.reminder-row{display:flex;align-items:center;justify-content:space-between;gap:11px;padding:10px 0;border-bottom:1px solid #edf0f4}.brand-row:last-child,.reminder-row:last-child{border-bottom:0}.subtext{display:block;color:var(--muted);font-size:10px;margin-top:3px}.right-metrics{text-align:right}.right-metrics strong{display:block}.toolbar{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:14px}.toolbar-right{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.search{width:250px;padding:10px 12px;border:1px solid var(--line);border-radius:11px;background:#fff}.segmented{display:flex;background:#e9edf4;border-radius:11px;padding:3px;overflow:auto}.segmented button{border:0;background:transparent;padding:8px 12px;border-radius:9px;cursor:pointer;font-size:11px;font-weight:800;color:#657188;white-space:nowrap}.segmented button.active{background:#fff;color:var(--text);box-shadow:0 3px 10px rgba(15,23,42,.08)}.button{border:0;border-radius:10px;padding:10px 13px;cursor:pointer;font-weight:800}.button.primary{background:var(--primary);color:#fff}.button.primary:hover{background:var(--primary2)}.button.secondary{background:#eaf0ff;color:#2551ac}.button.accent{background:#ddf7ee;color:#087454}.button.danger{background:#ffe3e5;color:#b42334}.button.warning{background:#fff0d4;color:#945b00}.button.ghost{background:#243249;color:#dce4f1}.button.small{padding:6px 9px;font-size:10px}.button.wide{width:100%}.mini-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:14px}.mini-card{padding:11px}.mini-card span{display:block;color:var(--muted);font-size:9px}.mini-card b{display:block;font-size:17px;margin-top:4px}.netflix-panel{display:none}.netflix-panel.active{display:block}.account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.account-card{padding:16px}.account-card-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.account-card h3{margin:0;font-size:14px;word-break:break-all}.account-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:6px;color:var(--muted);font-size:10px}.profile-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-top:13px}.profile-slot{border:1px solid var(--line);border-radius:11px;padding:9px 7px;min-height:86px;cursor:pointer;background:#fafbfc;display:flex;flex-direction:column;justify-content:space-between}.profile-slot:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(28,39,61,.09)}.profile-slot.available-empty{background:#e5f8ef;border-color:#a7e2ca}.profile-slot.available-off{background:#ffe7e9;border-color:#f2b6bc}.profile-slot.renewal-soon{background:#fff3c9;border-color:#efda83}.profile-slot.blocked{background:#e7e7e9;border-color:#b7bac0}.profile-slot.occupied{background:#f7f9fc}.profile-slot b{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-slot small{font-size:9px;color:#667085;display:block;margin-top:3px}.slot-no{font-size:9px;font-weight:900;color:#8190a5}.badge{display:inline-flex;align-items:center;padding:4px 7px;border-radius:999px;font-size:9px;font-weight:900;white-space:nowrap}.badge.available,.badge.active{background:#ddf7ee;color:#087454}.badge.used,.badge.expired{background:#eff1f4;color:#5f6878}.badge.warning,.badge.renewal-soon,.badge.review{background:#fff0ce;color:#946000}.badge.danger,.badge.overdue,.badge.available-off{background:#ffe3e5;color:#b42334}.badge.info{background:#e4edff;color:#2451b8}.badge.blocked{background:#e5e7eb;color:#374151}.badge.ready{background:#dff8ef;color:#087454}.badge.na{background:#eef0f4;color:#667085}.table-wrap{overflow:auto}.table-wrap table{width:100%;border-collapse:collapse;min-width:900px}.table-wrap th{font-size:9px;color:#758094;text-transform:uppercase;letter-spacing:.06em;background:#f8fafc;text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);white-space:nowrap}.table-wrap td{padding:11px 12px;border-bottom:1px solid #edf0f4;vertical-align:middle}.table-wrap tr:hover td{background:#fbfcfe}.table-wrap.compact td{padding:8px 11px;font-size:11px}.money{font-variant-numeric:tabular-nums;white-space:nowrap}.action-group{display:flex;gap:5px;flex-wrap:wrap}.link-button{border:0;background:transparent;color:var(--primary);font-weight:800;cursor:pointer;padding:4px;font-size:10px}.voucher-list{display:flex;gap:4px;flex-wrap:wrap}.voucher-chip{font-size:8px;font-weight:900;padding:4px 6px;border-radius:7px;background:#eef1f5;color:#626d7f}.voucher-chip.available{background:#ddf7ee;color:#087454}.voucher-chip.active{background:#e2ebff;color:#2451b8}.voucher-chip.used{background:#eef0f3;color:#707887}.empty-state{padding:28px;text-align:center;color:var(--muted)}.upload-box{border:2px dashed #cbd4e1;border-radius:15px;padding:28px;text-align:center;display:grid;gap:6px;cursor:pointer;background:#fafcff}.upload-box:hover{border-color:var(--primary);background:#f3f7ff}.upload-box span{font-size:27px;color:var(--primary)}.upload-box small{color:var(--muted)}.progress-text{font-size:11px;color:var(--muted);margin-top:10px;white-space:pre-line}.modal-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.58);z-index:100;display:grid;place-items:center;padding:18px}.modal{background:#fff;border-radius:18px;width:min(790px,100%);max-height:94vh;overflow:auto;box-shadow:var(--shadow)}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:17px 20px;border-bottom:1px solid var(--line)}.modal-head h2{margin:0;font-size:18px}.close-button{border:0;background:#edf0f5;width:32px;height:32px;border-radius:9px;cursor:pointer;font-size:18px}.modal-body{padding:19px}.modal-foot{display:flex;justify-content:flex-end;gap:8px;padding:14px 19px;border-top:1px solid var(--line);position:sticky;bottom:0;background:#fff}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.field{display:grid;gap:5px}.field.full{grid-column:1/-1}.field label{font-size:10px;color:#596579;font-weight:800}.field input,.field select,.field textarea{width:100%;border:1px solid #d9e0e9;border-radius:10px;padding:10px 11px;outline:0;background:#fff}.field input:focus,.field select:focus,.field textarea:focus{border-color:#7da0ef;box-shadow:0 0 0 3px #eaf0ff}.field input[readonly]{background:#f2f4f7;color:#677285}.checkbox-line{display:flex;align-items:center;gap:8px;margin-top:8px}.form-note{padding:10px 12px;border-radius:10px;background:#f2f6ff;color:#31538f;font-size:10px;line-height:1.5}.calculation-box{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;background:#f7f9fc;padding:10px;border-radius:12px}.calculation-box div span{display:block;color:var(--muted);font-size:9px}.calculation-box div b{display:block;margin-top:3px;font-size:12px}.loader{position:fixed;inset:0;background:rgba(255,255,255,.58);z-index:200;display:grid;place-items:center}.loader div{width:38px;height:38px;border:4px solid #dce5f7;border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.toast-container{position:fixed;right:18px;bottom:18px;z-index:300;display:grid;gap:8px}.toast{background:#1b2638;color:#fff;padding:11px 14px;border-radius:11px;box-shadow:var(--shadow);max-width:380px}.toast.success{background:#087454}.toast.error{background:#b42334}.login-screen{position:fixed;inset:0;background:#edf2f8;display:grid;place-items:center;padding:20px}.login-card{width:min(370px,100%);background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px;box-shadow:var(--shadow);text-align:center}.login-card .brand-mark{margin:0 auto}.login-card h1{margin:14px 0 5px}.login-card p{color:var(--muted);margin:0 0 17px}.login-card input{width:100%;border:1px solid var(--line);border-radius:11px;padding:12px;margin-bottom:10px}.login-card small{display:block;color:var(--muted);margin-top:12px}.mobile-only{display:none}@media(max-width:1150px){.card-grid{grid-template-columns:repeat(2,1fr)}.mini-cards{grid-template-columns:repeat(3,1fr)}.two-column{grid-template-columns:1fr}.account-grid{grid-template-columns:1fr}.toolbar{align-items:flex-start}.profile-grid{grid-template-columns:repeat(5,1fr)}}@media(max-width:760px){.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:translateX(0)}.main-content{margin-left:0;width:100%;padding:0 13px 28px}.topbar{height:auto;padding:14px 0;align-items:flex-start}.mobile-only{display:block}.topbar-actions{align-items:flex-end}.period-box{min-width:130px}.card-grid,.mini-cards{grid-template-columns:repeat(2,1fr)}.toolbar{display:grid}.search{width:100%}.profile-grid{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.calculation-box{grid-template-columns:repeat(2,1fr)}.modal-backdrop{padding:7px}.modal{max-height:97vh}}

.role-label{display:inline-flex;margin-top:8px;padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.12);font-size:11px;font-weight:800;letter-spacing:.08em}.role-hidden{display:none!important}

/* Netflix profile layout 1.0.2: nama profile dan dua buyer Duo ditampilkan terpisah. */
.profile-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));align-items:stretch}
.profile-slot{min-width:0;min-height:132px;padding:11px;overflow:hidden;gap:9px}
.profile-slot-header{display:flex;align-items:center;justify-content:space-between;gap:7px}
.duo-count{font-size:8px;font-weight:900;padding:3px 6px;border-radius:999px;background:#e4edff;color:#2451b8;white-space:nowrap}
.profile-name{font-size:12px;font-weight:900;line-height:1.3;white-space:normal;overflow-wrap:anywhere;padding-bottom:7px;border-bottom:1px solid rgba(120,132,150,.18)}
.profile-buyers{display:grid;gap:6px;min-width:0}
.profile-buyer-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:6px;align-items:center;min-width:0;font-size:9px}
.buyer-number{font-size:8px;font-weight:900;padding:3px 5px;border-radius:6px;background:rgba(255,255,255,.72);color:#526078}
.profile-buyer-name{font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.profile-buyer-date{font-size:8px;color:#667085;white-space:nowrap}
.profile-empty-label{font-size:9px;color:#667085;padding-top:4px}
.danger-text{color:#b42334!important}
@media(max-width:1150px){.profile-grid{grid-template-columns:repeat(auto-fit,minmax(175px,1fr))}}
@media(max-width:760px){.profile-grid{grid-template-columns:1fr}.profile-slot{min-height:118px}}



.account-card.account-status-available{border:1px solid #86efac;background:linear-gradient(180deg,#f0fdf4,#fff 26%)}
.account-card.account-status-full{border:1px solid #fcd34d;background:linear-gradient(180deg,#fffbeb,#fff 26%)}
.account-card.account-status-inactive{border:1px solid #d1d5db;background:linear-gradient(180deg,#f3f4f6,#fff 26%);opacity:.88}
.account-row-available td{background:#f0fdf4}.account-row-full td{background:#fffbeb}.account-row-inactive td{background:#f3f4f6;color:#6b7280}
.badge.inactive{background:#e5e7eb;color:#374151}.badge.full{background:#fef3c7;color:#92400e}.badge.available{background:#dcfce7;color:#166534}.badge.needs-review{background:#fff0ce;color:#946000}
.buyer-list{display:flex;flex-direction:column;gap:8px}.buyer-line{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border:1px solid #e5e7eb;border-radius:10px;background:#f9fafb}

/* Netflix profile layout 1.0.2: nama profile dan dua buyer Duo ditampilkan terpisah. */
.profile-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));align-items:stretch}
.profile-slot{min-width:0;min-height:132px;padding:11px;overflow:hidden;gap:9px}
.profile-slot-header{display:flex;align-items:center;justify-content:space-between;gap:7px}
.duo-count{font-size:8px;font-weight:900;padding:3px 6px;border-radius:999px;background:#e4edff;color:#2451b8;white-space:nowrap}
.profile-name{font-size:12px;font-weight:900;line-height:1.3;white-space:normal;overflow-wrap:anywhere;padding-bottom:7px;border-bottom:1px solid rgba(120,132,150,.18)}
.profile-buyers{display:grid;gap:6px;min-width:0}
.profile-buyer-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:6px;align-items:center;min-width:0;font-size:9px}
.buyer-number{font-size:8px;font-weight:900;padding:3px 5px;border-radius:6px;background:rgba(255,255,255,.72);color:#526078}
.profile-buyer-name{font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.profile-buyer-date{font-size:8px;color:#667085;white-space:nowrap}
.profile-empty-label{font-size:9px;color:#667085;padding-top:4px}
.danger-text{color:#b42334!important}
@media(max-width:1150px){.profile-grid{grid-template-columns:repeat(auto-fit,minmax(175px,1fr))}}
@media(max-width:760px){.profile-grid{grid-template-columns:1fr}.profile-slot{min-height:118px}}


/* BroyApps Manager 2.0.0 — UI gelap responsif */
:root{
  color-scheme:dark;
  --bg:#09090f;--bg-soft:#101016;--panel:#17171f;--panel-2:#1c1c25;--text:#f7f7fb;--muted:#9494a7;
  --line:#2b2b37;--primary:#a8ef62;--primary2:#77c83b;--cyan:#39bff6;--pink:#eb3f94;--orange:#ff9e47;--red:#ff5b78;
  --sidebar:#0d0d13;--shadow:0 20px 60px rgba(0,0,0,.38);--radius:18px
}
html{background:var(--bg);scroll-behavior:smooth}body{background:radial-gradient(circle at 10% 0%,rgba(99,216,100,.08),transparent 27%),radial-gradient(circle at 90% 12%,rgba(121,84,255,.09),transparent 26%),var(--bg);color:var(--text);min-height:100vh}.app-shell{min-height:100vh;background:transparent}.sidebar{width:248px;background:rgba(13,13,19,.94);border-right:1px solid #20202a;backdrop-filter:blur(20px);padding:23px 16px}.brand-mark{background:linear-gradient(135deg,#b5f56c,#60db6f);color:#10150d;box-shadow:0 10px 28px rgba(157,235,91,.2)}.brand-area b{color:#fff}.brand-area span{color:#777789}.side-nav{gap:8px}.nav-item{color:#8c8c9d;padding:12px 14px;border:1px solid transparent;transition:.18s ease}.nav-item:hover{background:#191920;color:#f6f6fa}.nav-item.active{background:linear-gradient(135deg,rgba(173,239,100,.16),rgba(100,218,114,.08));border-color:rgba(169,239,98,.22);color:#c9ff91;box-shadow:inset 3px 0 0 #a8ef62}.nav-icon{font-size:17px}.sidebar-foot{display:flex;gap:10px;align-items:center;border-top:1px solid #24242e}.user-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#262633,#111118);border:1px solid #333341;font-weight:900;color:#b9f878}.user-info{min-width:0;flex:1}.sidebar-foot input{margin:0;padding:0;border:0;background:transparent;color:#f3f3f7;font-weight:800;min-width:0}.role-label{padding:3px 7px;margin-top:3px;background:rgba(168,239,98,.12);color:#bff883;font-size:9px}.logout-icon{width:36px;height:36px;background:#181820!important;color:#aaa;border-color:#292934!important}.main-content{margin-left:248px;width:calc(100% - 248px);padding:0 30px 48px;max-width:1800px}.topbar{height:104px;border-bottom:1px solid rgba(255,255,255,.04);margin-bottom:24px}.page-heading .eyebrow,.section-kicker{font-size:9px;text-transform:uppercase;letter-spacing:.15em;color:#a8ef62;font-weight:900}.page-heading h1{font-size:34px;letter-spacing:-.04em;margin:4px 0 2px}.page-heading>p:last-child{color:var(--muted);font-size:11px}.period-box,.icon-button{background:#17171f;border-color:#2b2b37;color:#fff}.period-box select{color:#f7f7fb}.period-box option{background:#17171f}.icon-button:hover{border-color:#8ad34f;color:#baff7f}.view{animation:viewIn .2s ease}@keyframes viewIn{from{opacity:.4;transform:translateY(4px)}to{opacity:1;transform:none}}

.card-grid{grid-template-columns:2fr 1fr 1fr;grid-auto-rows:minmax(140px,auto);gap:16px}.stat-card{position:relative;overflow:hidden;background:linear-gradient(145deg,#1b1b24,#15151c);border:1px solid #292934;border-top:1px solid #343442;padding:22px;border-radius:22px;box-shadow:0 14px 34px rgba(0,0,0,.16)}.stat-card:before{content:"";position:absolute;inset:auto -30px -60px auto;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,rgba(168,239,98,.13),transparent 65%)}.stat-card:first-child{grid-row:span 2;background:linear-gradient(145deg,#38bdf8,#168bd8 58%,#1769b2);border-color:rgba(101,205,255,.45);min-height:296px;display:flex;flex-direction:column;justify-content:center}.stat-card:first-child:after{content:"";position:absolute;left:-10%;right:-10%;height:90px;bottom:-35px;background:rgba(255,255,255,.1);border-radius:50% 50% 0 0/70% 70% 0 0;transform:rotate(4deg)}.stat-card:first-child .label,.stat-card:first-child .detail{color:rgba(255,255,255,.84)}.stat-card:first-child .value{font-size:46px;color:#fff;letter-spacing:-.04em}.stat-card.green{border-top:1px solid rgba(168,239,98,.28)}.stat-card.orange{border-top:1px solid rgba(255,158,71,.35)}.stat-card.red{border-top:1px solid rgba(255,91,120,.35)}.stat-card .label{font-size:12px;color:#a1a1b1;font-weight:750}.stat-card .value{font-size:29px;margin:12px 0 8px;letter-spacing:-.035em}.stat-card .detail{color:#858596;font-size:10px}.dashboard-lower-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:16px}.panel,.account-card,.mini-card{background:linear-gradient(145deg,rgba(27,27,36,.98),rgba(19,19,27,.98));border:1px solid #292934;box-shadow:0 14px 40px rgba(0,0,0,.12)}.panel{border-radius:20px}.panel-tall{min-height:330px}.panel-head h3{color:#f8f8fb;font-size:17px}.panel-head p,.subtext{color:#858596}.live-dot{font-size:9px;color:#aff773;border:1px solid rgba(168,239,98,.25);background:rgba(168,239,98,.08);padding:5px 8px;border-radius:999px}.panel-icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#23232e;color:#bcfa83}.brand-row,.reminder-row{border-bottom:1px solid #292934;padding:13px 4px}.brand-row:hover,.reminder-row:hover{background:rgba(255,255,255,.025)}.right-metrics strong{color:#aff773}.mini-cards{gap:12px}.mini-card{border-radius:16px;padding:14px 16px}.mini-card span{color:#8f8fa0}.mini-card b{color:#fff;font-size:21px}.toolbar{background:rgba(18,18,25,.82);border:1px solid #292934;border-radius:18px;padding:10px;backdrop-filter:blur(16px)}.sticky-toolbar{position:sticky;top:10px;z-index:18}.segmented{background:#101016;border:1px solid #252530}.segmented button{color:#9292a2}.segmented button.active{background:#f5f5f7;color:#141419;box-shadow:0 5px 16px rgba(0,0,0,.28)}.search{background:#101016;color:#f7f7fb;border-color:#2c2c38}.search:focus{border-color:#8bd44f;box-shadow:0 0 0 3px rgba(168,239,98,.12)}.button{border-color:#30303b;color:#f6f6fa;background:#21212a}.button.primary{background:linear-gradient(135deg,#b5f56e,#75d747);color:#11160d;border:0;box-shadow:0 8px 24px rgba(143,222,78,.18)}.button.primary:hover{filter:brightness(1.04)}.button.secondary{background:#24242d;color:#f6f6fa}.button.accent{background:linear-gradient(135deg,#ff9d4b,#f16767);color:#fff;border:0}.button.danger{background:rgba(255,91,120,.12);color:#ff7891;border-color:rgba(255,91,120,.18)}.button.ghost{background:transparent}.account-card{border-radius:20px}.account-card.account-status-available{border-color:rgba(123,216,83,.34);background:linear-gradient(180deg,rgba(118,208,77,.08),#17171f 24%)}.account-card.account-status-full{border-color:rgba(255,196,75,.34);background:linear-gradient(180deg,rgba(255,196,75,.07),#17171f 24%)}.account-card.account-status-inactive{border-color:#32323d;background:#14141b;opacity:.82}.account-card h3{color:#f5f5f8}.profile-slot{background:#111118;border-color:#292934;color:#f5f5f8}.profile-slot:hover{border-color:#4c4c5d;transform:translateY(-1px)}.profile-slot.available-empty,.profile-slot.available-off{background:linear-gradient(145deg,rgba(113,209,74,.13),#111118);border-color:rgba(113,209,74,.26)}.profile-slot.renewal-soon{background:linear-gradient(145deg,rgba(255,176,60,.12),#111118);border-color:rgba(255,176,60,.25)}.profile-slot.blocked{background:linear-gradient(145deg,rgba(255,91,120,.1),#111118);border-color:rgba(255,91,120,.22)}.profile-name{border-color:#2d2d38}.profile-buyer-row{color:#d6d6df}.buyer-number{background:#262630;color:#b9b9c7}.profile-buyer-date,.profile-empty-label{color:#858596}.badge.available,.badge.active,.badge.ready{background:rgba(143,222,78,.13);color:#b6f67c}.badge.warning,.badge.renewal-soon,.badge.review,.badge.full{background:rgba(255,178,54,.13);color:#ffc66b}.badge.danger,.badge.overdue,.badge.available-off{background:rgba(255,91,120,.13);color:#ff8197}.badge.info{background:rgba(67,173,255,.14);color:#78c9ff}.badge.used,.badge.expired,.badge.na,.badge.inactive,.badge.blocked{background:#292933;color:#a3a3b1}.table-wrap{border-radius:inherit}.table-wrap table{color:#e9e9ef}.table-wrap th{background:#111118;color:#818191;border-color:#2a2a35}.table-wrap td{border-color:#272731}.table-wrap tr:hover td{background:#1d1d26}.account-row-available td{background:rgba(126,219,82,.045)}.account-row-full td{background:rgba(255,195,70,.04)}.account-row-inactive td{background:#131319;color:#777786}.voucher-chip{background:#272731;color:#a7a7b4}.voucher-chip.available{background:rgba(135,219,78,.13);color:#b7f67d}.voucher-chip.active{background:rgba(75,179,255,.13);color:#7dc9ff}.voucher-chip.used{background:#292933;color:#8d8d9a}.modal-backdrop{background:rgba(0,0,0,.72);backdrop-filter:blur(8px)}.modal{background:#17171f;border:1px solid #30303c;color:#f7f7fa}.modal-head,.modal-foot{border-color:#2b2b36;background:#17171f}.close-button{background:#272731;color:#eee}.field label{color:#a1a1b0}.field input,.field select,.field textarea{background:#101016;border-color:#30303b;color:#f7f7fa}.field input[readonly]{background:#202028;color:#9292a1}.field input:focus,.field select:focus,.field textarea:focus{border-color:#91d953;box-shadow:0 0 0 3px rgba(168,239,98,.11)}.form-note{background:rgba(60,169,238,.1);color:#8fd0ff}.calculation-box{background:#111118}.buyer-line{background:#111118;border-color:#2d2d38}.upload-box{background:#111118;border-color:#393946;color:#eee}.upload-box:hover{border-color:#9be35c;background:rgba(155,227,92,.04)}.upload-box span{color:#aff772}.loader{background:rgba(5,5,9,.66);backdrop-filter:blur(5px)}.loader div{border-color:#343440;border-top-color:#a8ef62}.toast{background:#262631;color:#fff;border:1px solid #373744}.toast.success{background:#24451e;border-color:#3e7132}.toast.error{background:#56202d;border-color:#843247}.login-screen{background:radial-gradient(circle at 15% 15%,rgba(160,239,95,.13),transparent 28%),radial-gradient(circle at 85% 25%,rgba(64,183,244,.12),transparent 28%),#09090f}.login-card{background:linear-gradient(145deg,#1c1c25,#121219);border-color:#30303c;border-radius:26px;text-align:left;padding:34px}.login-brand{display:flex;gap:12px;align-items:center}.login-brand span{font-weight:900;font-size:18px}.login-brand small{display:block;color:#8d8d9d}.login-copy h1{font-size:31px;letter-spacing:-.04em;margin:32px 0 8px}.login-copy p{color:#8e8e9f;line-height:1.6;margin:0 0 24px}.login-field{display:grid;gap:7px;color:#aaaaba;font-size:11px;font-weight:800}.login-field input{background:#0f0f15;border:1px solid #30303b;color:#fff;border-radius:12px;padding:14px;margin:0 0 12px;width:100%;font-size:15px}.login-button{padding:14px}.login-meta{display:flex;justify-content:space-between;color:#747484;font-size:9px;margin-top:16px}.mobile-bottom-nav{display:none}

@media(max-width:1180px){.card-grid{grid-template-columns:1.6fr 1fr}.stat-card:first-child{grid-row:span 2}.stat-card:nth-child(4){grid-column:2}.dashboard-lower-grid{grid-template-columns:1fr}.main-content{padding-left:22px;padding-right:22px}.account-grid{grid-template-columns:1fr}}
@media(max-width:760px){body{padding-bottom:84px}.sidebar{display:none}.main-content{margin-left:0;width:100%;padding:0 12px 28px}.topbar{height:auto;min-height:92px;padding:18px 2px 14px;align-items:flex-start;gap:10px;margin-bottom:12px}.page-heading .eyebrow{display:none}.page-heading h1{font-size:27px;margin-top:0}.page-heading>p:last-child{font-size:9px}.topbar-actions{gap:7px;align-items:center}.period-box{min-width:128px;padding:6px 9px}.period-box label{font-size:8px}.icon-button{width:39px;height:39px}.card-grid{display:grid;grid-template-columns:1fr;grid-auto-rows:auto;gap:11px}.stat-card,.stat-card:first-child{grid-column:auto;grid-row:auto;min-height:118px;border-radius:18px;padding:18px}.stat-card:first-child{min-height:180px}.stat-card:first-child .value{font-size:34px}.stat-card .value{font-size:24px}.dashboard-lower-grid{grid-template-columns:1fr;gap:11px}.panel{border-radius:17px;padding:14px}.panel-tall{min-height:0}.sticky-toolbar{position:static}.toolbar{display:grid;gap:10px;padding:8px;border-radius:15px}.segmented{display:flex;overflow:auto;max-width:100%;scrollbar-width:none}.segmented::-webkit-scrollbar{display:none}.segmented button{white-space:nowrap}.toolbar-right{display:grid;grid-template-columns:1fr 1fr;gap:7px}.toolbar-right .search{grid-column:1/-1;width:100%}.toolbar-right .button{font-size:10px;padding:10px}.mini-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.mini-card{padding:12px}.mini-card b{font-size:18px}.profile-grid{grid-template-columns:1fr}.profile-slot{min-height:112px}.account-card{padding:14px}.account-card-head{align-items:flex-start;gap:10px}.account-card-head h3{font-size:12px;overflow-wrap:anywhere}.action-group{gap:4px}.button.small{padding:6px 8px;font-size:9px}.modal-backdrop{padding:0;place-items:end center}.modal{width:100%;max-height:92vh;border-radius:24px 24px 0 0;border-bottom:0}.modal-body{padding:16px}.modal-foot{padding-bottom:max(16px,env(safe-area-inset-bottom))}.form-grid{grid-template-columns:1fr}.calculation-box{grid-template-columns:repeat(2,1fr)}.table-wrap{margin:0 -1px}.table-wrap table{min-width:760px}.mobile-bottom-nav{position:fixed;left:8px;right:8px;bottom:max(8px,env(safe-area-inset-bottom));height:66px;padding:7px;display:grid;grid-template-columns:repeat(4,1fr);z-index:70;background:rgba(22,22,30,.93);border:1px solid #30303b;border-radius:20px;box-shadow:0 18px 50px rgba(0,0,0,.55);backdrop-filter:blur(22px)}.mobile-bottom-nav .nav-item{display:grid;place-items:center;align-content:center;gap:2px;padding:4px;border-radius:14px;text-align:center}.mobile-bottom-nav .nav-item span{font-size:18px}.mobile-bottom-nav .nav-item small{font-size:8px;font-weight:800}.mobile-bottom-nav .nav-item.active{box-shadow:none;border:0;background:linear-gradient(135deg,rgba(168,239,98,.17),rgba(116,210,69,.08));color:#c6ff91}.login-card{padding:25px;border-radius:22px}.login-copy h1{font-size:27px}}

/* BroyApps Manager 2.0.1 — usability refresh */
body{font-size:14px;line-height:1.45}
.page-heading>p:last-child,.panel-head p,.subtext{font-size:11.5px;line-height:1.45}
.nav-item{font-size:13px}
.button{font-size:12px;min-height:38px}
.button.small{font-size:11px;padding:7px 10px;min-height:32px}
.link-button{font-size:11.5px;padding:6px 5px}
.field label{font-size:12px}
.field input,.field select,.field textarea{font-size:14px;min-height:43px}
.field textarea{min-height:88px}
.field-help{display:block;color:#858596;font-size:11px;line-height:1.4;margin-top:2px}
.form-note{font-size:11.5px}
.table-wrap th{font-size:10.5px;padding:12px 13px}
.table-wrap td,.table-wrap.compact td{font-size:13px;padding:12px 13px}
.voucher-chip{font-size:10px;padding:5px 7px}
.badge{font-size:10px;padding:5px 8px}
.account-meta{font-size:11px}

/* Login screen: split workspace card on desktop, compact card on mobile. */
.login-screen{padding:28px;overflow:auto}
.login-shell{width:min(980px,100%);min-height:590px;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);background:#14141b;border:1px solid #30303c;border-radius:30px;overflow:hidden;box-shadow:0 32px 90px rgba(0,0,0,.52)}
.login-showcase{position:relative;padding:44px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;background:radial-gradient(circle at 15% 10%,rgba(168,239,98,.22),transparent 32%),radial-gradient(circle at 88% 84%,rgba(57,191,246,.2),transparent 32%),linear-gradient(145deg,#171d16,#11141b 60%,#111019)}
.login-showcase:before{content:"";position:absolute;width:360px;height:360px;border-radius:50%;right:-180px;top:-150px;border:1px solid rgba(255,255,255,.08);box-shadow:0 0 0 60px rgba(255,255,255,.018),0 0 0 120px rgba(255,255,255,.012)}
.login-brand-large{position:relative;z-index:1}
.login-brand-large .brand-mark{width:48px;height:48px;border-radius:15px;font-size:23px}
.login-brand-large span{font-size:20px}
.login-brand-large small{font-size:11px;margin-top:2px}
.login-showcase-copy{position:relative;z-index:1;max-width:520px;margin:52px 0 38px}
.login-kicker{display:inline-flex;color:#baf581;font-size:10px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;margin-bottom:12px}
.login-showcase-copy h1{font-size:46px;line-height:1.05;letter-spacing:-.055em;margin:0 0 18px;color:#fff}
.login-showcase-copy p{font-size:14px;line-height:1.7;color:#a8a8b6;max-width:480px;margin:0}
.login-feature-grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr;gap:10px}
.login-feature{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid rgba(255,255,255,.08);background:rgba(11,11,16,.36);border-radius:14px;backdrop-filter:blur(12px)}
.login-feature>span{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:rgba(168,239,98,.12);font-size:16px}
.login-feature b{display:block;font-size:12px;color:#f6f6f9}
.login-feature small{display:block;margin-top:2px;font-size:10.5px;color:#858596}
.login-card{width:auto;min-width:0;border:0;border-radius:0;box-shadow:none;background:linear-gradient(160deg,#1b1b24,#14141b);padding:52px 46px;display:flex;flex-direction:column;justify-content:center;text-align:left}
.login-mobile-brand{display:none}
.login-copy{margin-bottom:28px}
.login-copy h2{font-size:31px;letter-spacing:-.04em;margin:0 0 9px;color:#fff}
.login-copy p{font-size:13px;line-height:1.6;color:#9292a2;margin:0}
.login-field{font-size:12px;gap:8px}
.login-input-wrap{position:relative}
.login-input-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#a8ef62;font-size:8px;z-index:1}
.login-field .login-input-wrap input{margin:0;padding:15px 15px 15px 34px;min-height:52px;font-size:16px;letter-spacing:.08em}
.login-button{min-height:52px;margin-top:14px;padding:0 17px;display:flex;align-items:center;justify-content:space-between;font-size:13px}
.login-security{display:flex;gap:9px;align-items:flex-start;margin-top:16px;padding:11px 12px;border:1px solid #2b2b36;border-radius:12px;background:#111118}
.login-security p{font-size:10.5px;color:#858596;line-height:1.5;margin:0}
.login-meta{font-size:10px;margin-top:22px;padding-top:16px;border-top:1px solid #292934}

/* Netflix profiles: the name is the main label; profile numbers are hidden from the UI. */
.profile-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}
.profile-slot{appearance:none;width:100%;text-align:left;font:inherit;min-height:154px;padding:13px;gap:10px;justify-content:flex-start}
.profile-slot-header{align-items:flex-start}
.profile-card-title{font-size:14px;font-weight:900;line-height:1.25;color:#f7f7fb;overflow-wrap:anywhere;min-width:0}
.sharing-count{flex:none;font-size:9.5px;font-weight:900;padding:4px 7px;border-radius:999px;background:rgba(83,181,255,.14);color:#82ccff;white-space:nowrap}
.sharing-count.empty{background:rgba(168,239,98,.12);color:#b9f77e}
.profile-status-line{min-height:25px}
.profile-name,.slot-no,.duo-count{display:none!important}
.profile-buyers{margin-top:2px;gap:7px}
.profile-buyer-row{font-size:11px;grid-template-columns:auto minmax(0,1fr) auto;gap:7px}
.buyer-number{font-size:9px;padding:4px 6px}
.profile-buyer-date{font-size:9.5px}
.profile-empty-label{font-size:11px;padding:8px 0;color:#8e8e9d}
.profile-modal-summary{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:0 0 17px;margin-bottom:17px;border-bottom:1px solid #2b2b36}
.profile-modal-summary h3{font-size:22px;margin:4px 0 3px}
.profile-modal-summary p{font-size:11.5px;color:#858596;margin:0}
.buyer-line{gap:12px;padding:12px}
.buyer-line-main{display:flex;align-items:center;gap:10px;min-width:0}
.buyer-avatar{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:rgba(168,239,98,.12);color:#bdf985;font-size:11px;font-weight:900;flex:none}
.compact-empty{padding:18px}

/* Jasdor readability, sorting cues, device state, and pagination. */
.jasdor-row-usable td:first-child{box-shadow:inset 3px 0 0 #92dc55}
.jasdor-row-depleted{opacity:.82}
.jasdor-row-depleted td:first-child{box-shadow:inset 3px 0 0 #4a4a58}
.account-readiness{display:flex;align-items:flex-start;gap:9px;min-width:180px}
.readiness-icon{font-size:16px;line-height:1.2}
.device-visual{display:flex;align-items:center;gap:9px;min-width:154px}
.device-emoji{font-size:17px}
.device-visual b{display:block;font-size:12px;white-space:nowrap}
.device-visual small{display:block;margin-top:2px;font-size:10px;color:#858596;white-space:nowrap}
.device-available b{color:#b9f77e}
.device-ready b{color:#ffc76f}
.device-in-use b{color:#82ccff}
.pagination-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-top:1px solid #292934;background:#13131a;border-radius:0 0 20px 20px}
.pagination-info{font-size:11px;color:#8d8d9c}
.pagination-controls{display:flex;align-items:center;gap:5px}
.pagination-controls label{display:flex;align-items:center;gap:7px;font-size:10.5px;color:#8d8d9c;margin-right:5px}
.page-size{background:#1d1d26;color:#f5f5f7;border:1px solid #343440;border-radius:8px;padding:6px 8px}
.page-button{min-width:31px;height:31px;border:1px solid #343440;border-radius:8px;background:#1d1d26;color:#cfcfd7;font-weight:800;cursor:pointer}
.page-button:hover:not(:disabled),.page-button.active{background:#a8ef62;color:#11160d;border-color:#a8ef62}
.page-button:disabled{opacity:.35;cursor:not-allowed}

@media(max-width:900px){
 .login-shell{grid-template-columns:1fr;max-width:500px;min-height:0}
 .login-showcase{display:none}
 .login-card{padding:38px}
 .login-mobile-brand{display:flex;align-items:center;gap:11px;margin-bottom:38px}
 .login-mobile-brand b{display:block;font-size:17px}
 .login-mobile-brand span{display:block;color:#858596;font-size:10px;margin-top:2px}
}

@media(max-width:760px){
 body{font-size:14px}
 .login-screen{padding:12px;align-items:center}
 .login-shell{border-radius:24px}
 .login-card{padding:27px 22px}
 .login-mobile-brand{margin-bottom:30px}
 .login-copy h2{font-size:27px}
 .profile-grid{grid-template-columns:1fr}
 .profile-slot{min-height:138px}
 .profile-card-title{font-size:14px}
 .profile-buyer-row{font-size:11.5px}
 .table-wrap th{font-size:10px}
 .table-wrap td,.table-wrap.compact td{font-size:12.5px}
 .pagination-bar{align-items:flex-start;flex-direction:column}
 .pagination-controls{width:100%;justify-content:flex-end;flex-wrap:wrap}
 .device-visual{min-width:145px}
 .modal-foot{flex-wrap:wrap}
 .modal-foot .button{flex:1 1 auto}
}
.login-mobile-brand .brand-mark{margin:0}
.device-reused b{color:#a8a8b6}

/* BroyApps Manager 2.0.2 — theme switcher, profile readability, and refined tables */
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:9px 12px;border:1px solid #30303c;border-radius:12px;background:#181820;color:#ececf2;font:inherit;font-size:11.5px;font-weight:850;cursor:pointer;transition:.18s ease;white-space:nowrap}
.theme-toggle:hover{border-color:#7fc64a;background:#202029}.theme-toggle.compact{height:42px;padding:8px 11px}.theme-icon{font-size:16px;line-height:1}.login-theme-toggle{position:fixed;top:22px;right:22px;z-index:3;background:rgba(20,20,27,.82);backdrop-filter:blur(14px)}

/* Profile cards now prioritize profile name, package, and expiry date. */
.profile-grid{grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:12px}
.profile-slot{min-height:184px;padding:15px;border-radius:15px;gap:11px;overflow:hidden;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;background:linear-gradient(145deg,#15151d,#101016);border-color:#343441}
.profile-slot.occupied{background:linear-gradient(145deg,rgba(52,155,230,.20),rgba(19,25,34,.98) 54%,#111118);border-color:rgba(80,181,249,.48);box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.profile-slot.occupied:hover{border-color:#6bc6ff;box-shadow:0 12px 28px rgba(20,129,201,.16)}
.profile-slot-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;min-width:0}
.profile-card-title{font-size:17px;font-weight:950;line-height:1.22;letter-spacing:-.015em;color:#fff;overflow-wrap:anywhere;min-width:0}
.profile-slot.occupied .profile-card-title{color:#dff4ff}
.sharing-count{font-size:10.5px;padding:5px 8px}
.profile-status-line{display:flex;align-items:center;min-height:27px}
.profile-status-line .badge{font-size:10.5px;padding:5px 9px}
.profile-buyers{display:grid;gap:8px;margin-top:1px;min-width:0}
.profile-buyer-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 11px;border:1px solid rgba(255,255,255,.065);border-radius:11px;background:rgba(4,8,14,.34);min-width:0;text-align:left}
.profile-buyer-main{display:grid;gap:3px;min-width:0}
.profile-buyer-main strong{font-size:14px;line-height:1.25;color:#f8f8fb;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.profile-buyer-package{font-size:12.5px;line-height:1.3;color:#9fdcff;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.profile-buyer-expiry{display:grid;gap:2px;text-align:right;white-space:nowrap}
.profile-buyer-expiry span{font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:#858596;font-weight:850}
.profile-buyer-expiry b{font-size:12.5px;color:#f2f2f6;font-variant-numeric:tabular-nums}
.buyer-number{display:none!important}
.profile-empty-label{display:grid;gap:4px;padding:13px 12px;border:1px dashed #393946;border-radius:11px;text-align:left;color:#8e8e9e;background:rgba(255,255,255,.018)}
.profile-empty-label b{font-size:13px;color:#c9c9d3}.profile-empty-label span{font-size:11px;line-height:1.35}

/* Buyer list inside profile detail modal. */
.buyer-line{align-items:center;padding:13px 14px;border-radius:13px}
.buyer-avatar{width:38px;height:38px;border-radius:12px;font-size:14px}
.buyer-line-copy{display:grid;gap:2px;min-width:0}.buyer-line-copy>b{font-size:14px;line-height:1.3}.buyer-line-package{font-size:12.5px;font-weight:850;color:#91d7ff}.buyer-line-meta{font-size:11.5px;line-height:1.4;color:#9090a0}
.device-cleared,.device-status-cleared{display:inline-flex;align-items:center;justify-content:center;min-width:36px;color:#777786;font-size:18px;font-weight:800}

/* Light mode. Dark remains the default and can be restored at any time. */
html[data-theme="light"]{color-scheme:light;--bg:#f4f6fb;--bg-soft:#eef1f7;--panel:#ffffff;--panel-2:#f7f8fb;--text:#171923;--muted:#667085;--line:#dfe4ec;--sidebar:#ffffff;--shadow:0 18px 50px rgba(31,41,55,.12)}
html[data-theme="light"],html[data-theme="light"] body{background:#f4f6fb;color:#171923}
html[data-theme="light"] body{background:radial-gradient(circle at 8% 0%,rgba(124,214,75,.10),transparent 28%),radial-gradient(circle at 92% 8%,rgba(62,174,244,.10),transparent 27%),#f4f6fb}
html[data-theme="light"] .sidebar{background:rgba(255,255,255,.96);border-right-color:#e1e5ec;color:#344054;box-shadow:8px 0 30px rgba(31,41,55,.035)}
html[data-theme="light"] .brand-area b,html[data-theme="light"] .sidebar-foot input{color:#171923}
html[data-theme="light"] .brand-area span,html[data-theme="light"] .user-info span{color:#667085}
html[data-theme="light"] .nav-item{color:#667085}
html[data-theme="light"] .nav-item:hover{background:#f0f3f7;color:#1d2939}
html[data-theme="light"] .nav-item.active{background:linear-gradient(135deg,rgba(139,215,77,.18),rgba(90,200,103,.09));border-color:rgba(103,183,51,.20);color:#326b17}
html[data-theme="light"] .sidebar-foot{border-top-color:#e3e7ee}
html[data-theme="light"] .user-avatar{background:#f3f5f8;border-color:#dde2ea;color:#477c25}
html[data-theme="light"] .logout-icon,html[data-theme="light"] .icon-button,html[data-theme="light"] .theme-toggle{background:#fff;color:#344054;border-color:#dce1e9}
html[data-theme="light"] .theme-toggle:hover,html[data-theme="light"] .icon-button:hover{background:#f3f6fa;border-color:#9bd869;color:#335f1c}
html[data-theme="light"] .topbar{border-bottom-color:rgba(17,24,39,.06)}
html[data-theme="light"] .page-heading h1,html[data-theme="light"] .panel-head h3{color:#171923}
html[data-theme="light"] .period-box{background:#fff;border-color:#dfe4ec;color:#171923;box-shadow:0 4px 16px rgba(31,41,55,.035)}
html[data-theme="light"] .period-box select{color:#171923}html[data-theme="light"] .period-box option{background:#fff;color:#171923}
html[data-theme="light"] .stat-card,html[data-theme="light"] .panel,html[data-theme="light"] .account-card,html[data-theme="light"] .mini-card{background:#fff;border-color:#dfe4ec;box-shadow:0 9px 30px rgba(31,41,55,.055)}
html[data-theme="light"] .stat-card:not(:first-child){background:linear-gradient(145deg,#fff,#f9fafc)}
html[data-theme="light"] .stat-card .label,html[data-theme="light"] .stat-card .detail,html[data-theme="light"] .panel-head p,html[data-theme="light"] .subtext{color:#667085}
html[data-theme="light"] .stat-card .value,html[data-theme="light"] .mini-card b{color:#171923}
html[data-theme="light"] .brand-row,html[data-theme="light"] .reminder-row{border-bottom-color:#e9edf2}
html[data-theme="light"] .brand-row:hover,html[data-theme="light"] .reminder-row:hover{background:#f8fafc}
html[data-theme="light"] .toolbar{background:rgba(255,255,255,.88);border-color:#dfe4ec;box-shadow:0 8px 28px rgba(31,41,55,.055)}
html[data-theme="light"] .segmented{background:#eef1f5;border-color:#e0e5eb}
html[data-theme="light"] .segmented button{color:#667085}
html[data-theme="light"] .segmented button.active{background:#fff;color:#171923;box-shadow:0 4px 12px rgba(31,41,55,.10)}
html[data-theme="light"] .search{background:#fff;color:#171923;border-color:#d8dee8}
html[data-theme="light"] .button.secondary{background:#eef2f7;color:#344054}
html[data-theme="light"] .button.warning{background:#fff3d9;color:#8b5d00}
html[data-theme="light"] .account-card h3{color:#171923}
html[data-theme="light"] .account-card.account-status-available{background:linear-gradient(180deg,rgba(127,214,80,.10),#fff 25%);border-color:rgba(95,177,50,.32)}
html[data-theme="light"] .account-card.account-status-full{background:linear-gradient(180deg,rgba(255,188,59,.10),#fff 25%)}
html[data-theme="light"] .account-card.account-status-inactive{background:#f5f6f8;color:#667085}
html[data-theme="light"] .profile-slot{background:linear-gradient(145deg,#f8fafc,#f1f4f8);border-color:#d9e0e9;color:#171923}
html[data-theme="light"] .profile-slot.occupied{background:linear-gradient(145deg,#e8f6ff,#edf5fb 60%,#f5f9fc);border-color:#8ac8ed;box-shadow:inset 0 1px 0 rgba(255,255,255,.85)}
html[data-theme="light"] .profile-slot.occupied:hover{border-color:#4fa9df;box-shadow:0 12px 26px rgba(45,143,201,.13)}
html[data-theme="light"] .profile-slot.available-empty,html[data-theme="light"] .profile-slot.available-off{background:linear-gradient(145deg,#ecfae7,#f7fcf5);border-color:#a9d99a}
html[data-theme="light"] .profile-slot.renewal-soon{background:linear-gradient(145deg,#fff4d7,#fffaf0);border-color:#e4c66f}
html[data-theme="light"] .profile-slot.blocked{background:linear-gradient(145deg,#fff0f2,#faf5f6);border-color:#e5a9b3}
html[data-theme="light"] .profile-card-title,html[data-theme="light"] .profile-slot.occupied .profile-card-title{color:#17324a}
html[data-theme="light"] .profile-buyer-row{background:rgba(255,255,255,.78);border-color:#d7e3eb}
html[data-theme="light"] .profile-buyer-main strong,html[data-theme="light"] .profile-buyer-expiry b{color:#1d2939}
html[data-theme="light"] .profile-buyer-package{color:#176b9d}
html[data-theme="light"] .profile-buyer-expiry span{color:#667085}
html[data-theme="light"] .profile-empty-label{background:rgba(255,255,255,.58);border-color:#cbd5e1;color:#667085}
html[data-theme="light"] .profile-empty-label b{color:#344054}
html[data-theme="light"] .table-wrap table{color:#1d2939}
html[data-theme="light"] .table-wrap th{background:#f5f7fa;color:#667085;border-color:#dfe4ec}
html[data-theme="light"] .table-wrap td{border-color:#e7ebf0}
html[data-theme="light"] .table-wrap tr:hover td{background:#f7f9fc}
html[data-theme="light"] .account-row-available td{background:rgba(123,210,77,.045)}
html[data-theme="light"] .account-row-full td{background:rgba(255,190,59,.04)}
html[data-theme="light"] .account-row-inactive td{background:#f7f8fa;color:#667085}
html[data-theme="light"] .modal{background:#fff;border-color:#dce2ea;color:#171923}
html[data-theme="light"] .modal-head,html[data-theme="light"] .modal-foot{background:#fff;border-color:#e2e7ee}
html[data-theme="light"] .close-button{background:#f0f2f5;color:#344054}
html[data-theme="light"] .field label{color:#475467}
html[data-theme="light"] .field input,html[data-theme="light"] .field select,html[data-theme="light"] .field textarea{background:#fff;border-color:#d7dee8;color:#171923}
html[data-theme="light"] .field input[readonly]{background:#f3f5f8;color:#667085}
html[data-theme="light"] .form-note{background:#eef7ff;color:#245b85}
html[data-theme="light"] .calculation-box,html[data-theme="light"] .buyer-line{background:#f7f9fc;border-color:#e0e6ed}
html[data-theme="light"] .buyer-line-copy>b{color:#1d2939}html[data-theme="light"] .buyer-line-package{color:#176b9d}html[data-theme="light"] .buyer-line-meta{color:#667085}
html[data-theme="light"] .pagination-bar{background:#f7f8fb;border-color:#e0e5eb}
html[data-theme="light"] .pagination-info,html[data-theme="light"] .pagination-controls label{color:#667085}
html[data-theme="light"] .page-size,html[data-theme="light"] .page-button{background:#fff;color:#344054;border-color:#d7dde6}
html[data-theme="light"] .page-button:hover:not(:disabled),html[data-theme="light"] .page-button.active{background:#8edb52;color:#17300d;border-color:#8edb52}
html[data-theme="light"] .mobile-bottom-nav{background:rgba(255,255,255,.94);border-color:#dce2ea;box-shadow:0 16px 40px rgba(31,41,55,.17)}
html[data-theme="light"] .mobile-bottom-nav .nav-item{color:#667085}html[data-theme="light"] .mobile-bottom-nav .nav-item.active{color:#326b17;background:rgba(139,215,77,.17)}
html[data-theme="light"] .login-screen{background:radial-gradient(circle at 12% 15%,rgba(151,226,89,.16),transparent 30%),radial-gradient(circle at 88% 20%,rgba(69,181,244,.13),transparent 30%),#eef2f7}
html[data-theme="light"] .login-shell{background:#fff;border-color:#dce2ea;box-shadow:0 30px 80px rgba(31,41,55,.17)}
html[data-theme="light"] .login-card{background:linear-gradient(160deg,#fff,#f7f9fc);color:#171923}
html[data-theme="light"] .login-copy h2{color:#171923}html[data-theme="light"] .login-copy p{color:#667085}
html[data-theme="light"] .login-field{color:#475467}
html[data-theme="light"] .login-field .login-input-wrap input{background:#fff;border-color:#d6dde7;color:#171923}
html[data-theme="light"] .login-security{background:#f5f7fa;border-color:#e0e5eb}html[data-theme="light"] .login-security p,html[data-theme="light"] .login-meta{color:#667085}
html[data-theme="light"] .login-meta{border-top-color:#e1e6ed}
html[data-theme="light"] .login-theme-toggle{background:rgba(255,255,255,.88)}

@media(max-width:760px){
 .theme-toggle.compact{width:40px;padding:0}.theme-toggle.compact .theme-label{display:none}.login-theme-toggle{top:14px;right:14px}.login-theme-toggle .theme-label{display:none}.login-theme-toggle{width:40px;padding:0}
 .profile-grid{grid-template-columns:1fr}.profile-slot{min-height:170px;padding:14px}.profile-card-title{font-size:17px}.profile-buyer-main strong{font-size:14.5px}.profile-buyer-package,.profile-buyer-expiry b{font-size:12.5px}
 .profile-buyer-row{padding:11px}.buyer-line{align-items:flex-start;flex-direction:column}.buyer-line .action-group{width:100%;justify-content:flex-end}
}

/* BroyApps Manager 2.0.4 — voucher duration, release queue, and WhatsApp reminders. */
.jasdor-row-release{opacity:1}
.jasdor-row-release td{background:rgba(255,183,62,.045)}
.jasdor-row-release td:first-child{box-shadow:inset 4px 0 0 #ffc368}
.jasdor-row-release:hover td{background:rgba(255,183,62,.075)!important}
.release-action{color:#ffc368!important}
.voucher-duration-note{display:inline-flex;align-items:center;max-width:100%;margin-top:7px;padding:4px 7px;border-radius:8px;font-size:9.5px;font-weight:800;line-height:1.35;background:rgba(83,181,255,.10);color:#8ed1ff;border:1px solid rgba(83,181,255,.15);white-space:normal}
.voucher-duration-note.warning{background:rgba(255,183,62,.11);color:#ffd080;border-color:rgba(255,183,62,.18)}
.voucher-duration-note.expired{background:rgba(255,91,120,.10);color:#ff8ea3;border-color:rgba(255,91,120,.17)}
.reminder-main{min-width:0;flex:1}
.reminder-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}
.reminder-actions.compact{flex:none}
.reminder-sent{display:block;margin-top:5px;color:#9be66b;font-size:10px;font-weight:800}
.contact-warning{display:inline-flex;align-items:center;padding:6px 8px;border-radius:8px;background:rgba(255,183,62,.10);color:#ffc66b;font-size:10px;font-weight:800}
.button.whatsapp-button{background:#25d366;color:#082d16;border:0;box-shadow:0 7px 18px rgba(37,211,102,.15)}
.button.whatsapp-button:hover{filter:brightness(1.06)}
.button.whatsapp-button.icon-only{width:32px;min-width:32px;height:32px;min-height:32px;padding:0;display:grid;place-items:center;border-radius:9px;font-size:14px}

html[data-theme="light"] .jasdor-row-release td{background:#fff9ec}
html[data-theme="light"] .jasdor-row-release:hover td{background:#fff4d9!important}
html[data-theme="light"] .voucher-duration-note{background:#eef8ff;color:#176b9d;border-color:#cbe7f8}
html[data-theme="light"] .voucher-duration-note.warning{background:#fff5dd;color:#8b5d00;border-color:#f1d79e}
html[data-theme="light"] .voucher-duration-note.expired{background:#fff0f2;color:#b42334;border-color:#f0c8cf}
html[data-theme="light"] .reminder-sent{color:#4e8b2e}
html[data-theme="light"] .contact-warning{background:#fff4dc;color:#8b5d00}
html[data-theme="light"] .button.whatsapp-button{color:#073019}

@media(max-width:760px){
 .reminder-detail-row{align-items:flex-start;flex-direction:column}
 .reminder-detail-row .reminder-actions{width:100%;justify-content:flex-start;margin-top:4px}
 .voucher-duration-note{font-size:9px}
}

/* BroyApps Manager 2.0.5 — mobile dashboard, responsive Jasdor cards, and exact voucher timing. */
.stat-card .value{position:relative;z-index:1;max-width:100%;line-height:1.06;overflow-wrap:anywhere}
.stat-card .value.value-long{font-size:clamp(24px,2.35vw,29px)}
.stat-card .value.value-compact{font-size:clamp(21px,2vw,26px)}
.jasdor-mobile-list,.jasdor-order-mobile-list{display:none}
.voucher-empty-text{font-size:10.5px;color:#777786;font-weight:700}

@media(max-width:760px){
 body{overflow-x:hidden}
 .main-content{padding-top:0}
 .topbar{display:grid;grid-template-columns:minmax(0,1fr);height:auto;min-height:0;padding:17px 3px 13px;margin-bottom:12px;gap:13px;border-bottom:0}
 .page-heading{min-width:0;padding:0 2px}
 .page-heading h1{font-size:28px;line-height:1.08;letter-spacing:-.035em;margin:2px 0 5px;overflow-wrap:anywhere}
 .page-heading>p:last-child{font-size:10.5px;line-height:1.35;margin:0;color:#8e8e9f}
 .topbar-actions{display:grid;grid-template-columns:minmax(0,1fr) 42px 42px;gap:8px;width:100%;align-items:stretch}
 .period-box{min-width:0;width:100%;height:44px;padding:6px 11px;display:grid;align-content:center;border-radius:13px}
 .period-box label{font-size:7.5px;line-height:1.1;margin-bottom:2px}
 .period-box select{font-size:12px;min-width:0;overflow:hidden;text-overflow:ellipsis}
 .theme-toggle.compact,.topbar-actions>.icon-button{width:42px;height:44px;min-height:44px;border-radius:13px}

 .card-grid{gap:10px}
 .stat-card,.stat-card:first-child{min-width:0;overflow:hidden}
 .stat-card:first-child{min-height:164px;padding:20px}
 .stat-card:first-child .value{font-size:clamp(27px,9vw,40px);line-height:1.02;margin:10px 0 9px;white-space:normal;word-break:normal;overflow-wrap:anywhere}
 .stat-card:first-child .value.value-long{font-size:clamp(25px,8.2vw,36px)}
 .stat-card:first-child .value.value-compact{font-size:clamp(23px,7.4vw,32px)}
 .stat-card:not(:first-child) .value{font-size:clamp(23px,7.2vw,29px)}
 .stat-card .detail{position:relative;z-index:1;line-height:1.45;overflow-wrap:anywhere}

 .jasdor-toolbar{position:sticky;top:0;z-index:38;display:grid;gap:9px;margin:0 -4px 12px;padding:9px;border-radius:0 0 18px 18px;background:rgba(13,13,19,.94);border:1px solid #2b2b36;border-top:0;box-shadow:0 14px 30px rgba(0,0,0,.24);backdrop-filter:blur(18px)}
 .jasdor-toolbar .segmented{width:100%;padding:3px;border-radius:12px;scroll-padding:0 8px}
 .jasdor-toolbar .segmented button{flex:1 0 auto;min-width:72px;padding:8px 11px;font-size:10.5px}
 .jasdor-toolbar .toolbar-right{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7px;width:100%}
 .jasdor-toolbar .toolbar-right .search{grid-column:1/-1;width:100%;height:42px;font-size:12.5px;padding:10px 12px;border-radius:12px}
 .jasdor-toolbar .toolbar-right .button{width:100%;min-height:39px;padding:9px 8px;font-size:10.5px;line-height:1.2}

 .jasdor-desktop-table,.jasdor-order-desktop-table{display:none!important}
 .jasdor-mobile-list,.jasdor-order-mobile-list{display:grid}
 .jasdor-mobile-list{gap:10px;padding:10px}
 .jasdor-mobile-card{display:grid;gap:12px;padding:14px;border:1px solid #30303b;border-radius:17px;background:linear-gradient(145deg,#1b1b24,#14141b);box-shadow:0 10px 24px rgba(0,0,0,.12)}
 .jasdor-mobile-card.jasdor-row-release{border-color:rgba(255,190,76,.48);background:linear-gradient(145deg,rgba(255,180,61,.12),#17171f 42%);box-shadow:inset 4px 0 0 #ffc368,0 10px 24px rgba(0,0,0,.12)}
 .jasdor-mobile-card.jasdor-row-usable{border-color:rgba(143,222,78,.28);box-shadow:inset 4px 0 0 #92dc55,0 10px 24px rgba(0,0,0,.12)}
 .jasdor-mobile-card.jasdor-row-depleted{opacity:.9;box-shadow:inset 4px 0 0 #4a4a58,0 10px 24px rgba(0,0,0,.10)}
 .jasdor-mobile-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
 .jasdor-mobile-account{display:flex;align-items:flex-start;gap:10px;min-width:0}
 .jasdor-mobile-account .readiness-icon{font-size:18px;margin-top:3px}
 .jasdor-mobile-brand{display:block;color:#8f8fa0;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;line-height:1.2}
 .jasdor-mobile-account h3{margin:3px 0 2px;color:#f7f7fb;font-size:18px;line-height:1.15;letter-spacing:-.02em}
 .jasdor-mobile-account p{margin:0;color:#a1a1b0;font-size:11.5px;overflow-wrap:anywhere}
 .jasdor-mobile-order-count{flex:none;display:grid;place-items:center;min-width:54px;padding:8px 9px;border-radius:13px;background:#111118;border:1px solid #2d2d38;text-align:center}
 .jasdor-mobile-order-count b{font-size:18px;line-height:1;color:#c4fa90}
 .jasdor-mobile-order-count span{margin-top:3px;color:#858596;font-size:8.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
 .jasdor-mobile-device-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px 11px;border-radius:13px;background:#111118;border:1px solid #292934}
 .jasdor-mobile-device{min-width:0}.jasdor-mobile-device .device-visual{min-width:0}.jasdor-mobile-device .device-visual small{white-space:normal;line-height:1.3}
 .jasdor-mobile-device-badge{display:flex;justify-content:flex-end}.jasdor-mobile-device-badge .badge{font-size:9px;padding:5px 7px}
 .jasdor-mobile-account-summary{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;flex-wrap:wrap;color:#aaaaba;font-size:11px;line-height:1.4}
 .jasdor-mobile-account-summary>span:first-child{font-weight:800}
 .jasdor-mobile-account-summary .voucher-duration-note{margin-top:0;font-size:9px;flex:1 1 100%;width:max-content;max-width:100%}
 .jasdor-mobile-voucher-block{display:grid;gap:7px}
 .jasdor-mobile-label{font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#858596}
 .jasdor-mobile-voucher-block .voucher-list{gap:6px}
 .jasdor-mobile-voucher-block .voucher-chip{font-size:9px;padding:6px 8px;border-radius:9px;line-height:1.2}
 .jasdor-mobile-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding-top:2px}
 .jasdor-mobile-actions .button{width:100%;min-height:38px;font-size:10.5px;padding:8px 7px}

 .jasdor-order-panel .panel-head.padded{padding:15px 14px 10px}
 .jasdor-order-mobile-list{gap:9px;padding:4px 10px 11px}
 .jasdor-order-mobile-card{display:grid;gap:11px;padding:13px;border:1px solid #2d2d38;border-radius:15px;background:#15151d}
 .jasdor-order-mobile-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
 .jasdor-order-mobile-head strong{font-size:17px;color:#bdf985;white-space:nowrap}
 .jasdor-order-mobile-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
 .jasdor-order-mobile-grid div{display:grid;gap:3px;min-width:0}
 .jasdor-order-mobile-grid span{font-size:8.5px;color:#858596;text-transform:uppercase;letter-spacing:.06em;font-weight:900}
 .jasdor-order-mobile-grid b{font-size:11px;line-height:1.35;color:#e8e8ee;overflow-wrap:anywhere}

 .jasdor-account-panel>.pagination-bar,.jasdor-order-panel>.pagination-bar{margin-top:0}
 .pagination-bar{padding:11px 10px;gap:9px}
 .pagination-info{font-size:10.5px;line-height:1.35}
 .pagination-controls{justify-content:space-between!important;gap:4px}
 .pagination-controls label{margin-right:auto;font-size:10px}
 .page-size{min-height:32px}
 .page-button{min-width:32px;height:32px}
}

html[data-theme="light"] .voucher-empty-text{color:#667085}
@media(max-width:760px){
 html[data-theme="light"] .topbar{background:transparent}
 html[data-theme="light"] .page-heading>p:last-child{color:#667085}
 html[data-theme="light"] .jasdor-toolbar{background:rgba(244,246,251,.95);border-color:#dce2ea;box-shadow:0 14px 30px rgba(31,41,55,.12)}
 html[data-theme="light"] .jasdor-mobile-card{background:linear-gradient(145deg,#fff,#f8fafc);border-color:#dce2ea;box-shadow:0 9px 24px rgba(31,41,55,.06)}
 html[data-theme="light"] .jasdor-mobile-card.jasdor-row-release{background:linear-gradient(145deg,#fff9eb,#fff 46%);border-color:#eccb87;box-shadow:inset 4px 0 0 #e5a83e,0 9px 24px rgba(31,41,55,.06)}
 html[data-theme="light"] .jasdor-mobile-card.jasdor-row-usable{border-color:#b8dcaa;box-shadow:inset 4px 0 0 #79bd4c,0 9px 24px rgba(31,41,55,.06)}
 html[data-theme="light"] .jasdor-mobile-card.jasdor-row-depleted{box-shadow:inset 4px 0 0 #98a2b3,0 9px 24px rgba(31,41,55,.05)}
 html[data-theme="light"] .jasdor-mobile-brand,html[data-theme="light"] .jasdor-mobile-label{color:#667085}
 html[data-theme="light"] .jasdor-mobile-account h3{color:#171923}
 html[data-theme="light"] .jasdor-mobile-account p{color:#667085}
 html[data-theme="light"] .jasdor-mobile-order-count,html[data-theme="light"] .jasdor-mobile-device-row{background:#f5f7fa;border-color:#e0e5eb}
 html[data-theme="light"] .jasdor-mobile-order-count b{color:#4f8b2d}
 html[data-theme="light"] .jasdor-mobile-account-summary{color:#475467}
 html[data-theme="light"] .jasdor-order-mobile-card{background:#fff;border-color:#dfe4ec;box-shadow:0 8px 22px rgba(31,41,55,.05)}
 html[data-theme="light"] .jasdor-order-mobile-head strong{color:#4f8b2d}
 html[data-theme="light"] .jasdor-order-mobile-grid span{color:#667085}
 html[data-theme="light"] .jasdor-order-mobile-grid b{color:#1d2939}
}

/* BroyApps Manager 2.0.6 — compact mobile metrics and aligned Jasdor toolbar. */
@media(max-width:760px){
  /* Four dashboard metrics use a balanced 2 × 2 layout. Currency values remain on one line. */
  .card-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  .stat-card,
  .stat-card:first-child{
    display:flex;
    min-width:0;
    min-height:126px;
    padding:15px 14px;
    border-radius:17px;
    overflow:hidden;
  }
  .stat-card .label{
    display:block;
    min-width:0;
    overflow:hidden;
    color:#9a9aaa;
    font-size:10px;
    font-weight:800;
    line-height:1.2;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .stat-card .value,
  .stat-card:first-child .value{
    display:block;
    width:100%;
    max-width:100%;
    margin:9px 0 7px;
    overflow:visible;
    color:#f7f7fb;
    font-size:clamp(18px,5.4vw,23px);
    font-variant-numeric:tabular-nums;
    font-weight:900;
    letter-spacing:-.045em;
    line-height:1;
    overflow-wrap:normal;
    text-overflow:clip;
    white-space:nowrap;
    word-break:normal;
  }
  .stat-card .value.value-long,
  .stat-card:first-child .value.value-long{
    font-size:clamp(16.5px,4.85vw,21px);
    letter-spacing:-.055em;
  }
  .stat-card .value.value-compact,
  .stat-card:first-child .value.value-compact{
    font-size:clamp(14.5px,4.25vw,19px);
    letter-spacing:-.06em;
  }
  .stat-card .detail{
    display:-webkit-box;
    min-width:0;
    margin-top:auto;
    overflow:hidden;
    color:#8d8d9d;
    font-size:8.8px;
    line-height:1.38;
    overflow-wrap:anywhere;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
  }

  /* Every control now follows the exact inner width of the sticky toolbar. */
  .jasdor-toolbar{
    width:100%;
    max-width:100%;
    margin:0 0 12px;
    padding:10px;
    gap:9px;
    border:1px solid #2b2b36;
    border-radius:17px;
  }
  .jasdor-toolbar > .segmented,
  .jasdor-toolbar > .toolbar-right{
    width:100%;
    min-width:0;
    max-width:100%;
    margin:0;
  }
  .jasdor-toolbar .segmented{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:3px;
    padding:3px;
    overflow:hidden;
    border-radius:12px;
  }
  .jasdor-toolbar .segmented button{
    width:100%;
    min-width:0;
    min-height:36px;
    padding:8px 3px;
    overflow:hidden;
    font-size:10px;
    line-height:1.15;
    text-align:center;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .jasdor-toolbar .toolbar-right{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }
  .jasdor-toolbar .toolbar-right .search{
    grid-column:1/-1;
    width:100%;
    min-width:0;
    max-width:none;
    height:42px;
    margin:0;
  }
  .jasdor-toolbar .toolbar-right .button{
    width:100%;
    min-width:0;
    min-height:40px;
    margin:0;
    padding:9px 7px;
  }
}

@media(max-width:360px){
  .stat-card,
  .stat-card:first-child{
    min-height:122px;
    padding:14px 12px;
  }
  .stat-card .value,
  .stat-card:first-child .value{
    font-size:18px;
  }
  .stat-card .value.value-long,
  .stat-card:first-child .value.value-long{
    font-size:15.8px;
  }
  .stat-card .value.value-compact,
  .stat-card:first-child .value.value-compact{
    font-size:14px;
  }
  .jasdor-toolbar{
    padding:9px;
  }
  .jasdor-toolbar .segmented button{
    font-size:9.5px;
  }
  .jasdor-toolbar .toolbar-right .button{
    font-size:10px;
  }
}

@media(max-width:760px){
  html[data-theme="light"] .stat-card .value,
  html[data-theme="light"] .stat-card:first-child .value{color:#171923}
  html[data-theme="light"] .stat-card .label{color:#667085}
  html[data-theme="light"] .stat-card .detail{color:#667085}
  html[data-theme="light"] .jasdor-toolbar{border-color:#dce2ea}
}

@media(max-width:760px){
  .stat-card,
  .stat-card:first-child{flex-direction:column}
}

/* BroyApps Manager 2.0.7 — refined mobile metric cards and full-width Jasdor toolbar. */
@media (max-width:760px){
  /* Keep the four financial cards balanced, flexible, and safe on narrow screens. */
  .card-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    margin-inline:-4px;
  }
  .stat-card,
  .stat-card:first-child{
    display:grid;
    grid-template-rows:auto auto minmax(0,1fr);
    align-content:start;
    min-width:0;
    width:100%;
    height:132px;
    min-height:132px;
    padding:13px 10px 12px;
    border-radius:17px;
    overflow:hidden;
  }
  .stat-card .label,
  .stat-card:first-child .label{
    min-width:0;
    margin:0;
    font-size:10px;
    font-weight:800;
    line-height:1.2;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .stat-card .value,
  .stat-card:first-child .value,
  .stat-card .value.value-long,
  .stat-card:first-child .value.value-long,
  .stat-card .value.value-compact,
  .stat-card:first-child .value.value-compact{
    display:block;
    min-width:0;
    width:100%;
    max-width:100%;
    margin:10px 0 8px;
    padding:0;
    color:#f7f7fb;
    font-size:clamp(16.4px,5.15vw,22px)!important;
    font-variant-numeric:tabular-nums;
    font-feature-settings:"tnum" 1;
    font-weight:900;
    letter-spacing:-.055em;
    line-height:1;
    overflow:visible;
    overflow-wrap:normal;
    text-overflow:clip;
    white-space:nowrap;
    word-break:normal;
  }
  .stat-card .detail,
  .stat-card:first-child .detail{
    display:-webkit-box;
    align-self:end;
    min-width:0;
    max-width:100%;
    margin:0;
    color:#8d8d9d;
    font-size:8.5px;
    line-height:1.35;
    overflow:hidden;
    overflow-wrap:anywhere;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
  }

  /* Let every Jasdor toolbar control occupy the complete inner toolbar width. */
  .jasdor-toolbar{
    position:sticky;
    top:0;
    z-index:38;
    display:grid;
    grid-template-columns:minmax(0,1fr);
    align-items:stretch;
    width:100%;
    max-width:100%;
    margin:0 0 14px;
    padding:12px;
    gap:10px;
    border:1px solid #2b2b36;
    border-radius:17px;
    overflow:hidden;
  }
  .jasdor-toolbar > .segmented,
  .jasdor-toolbar > .toolbar-right{
    min-width:0;
    width:100%;
    max-width:100%;
    margin:0;
  }
  .jasdor-toolbar .segmented{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    align-items:stretch;
    width:100%;
    min-height:48px;
    padding:4px;
    gap:4px;
    border-radius:13px;
    overflow:hidden;
  }
  .jasdor-toolbar .segmented button{
    display:grid;
    place-items:center;
    width:100%;
    min-width:0;
    min-height:40px;
    margin:0;
    padding:9px 3px;
    border-radius:10px;
    font-size:11px;
    line-height:1;
    text-align:center;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .jasdor-toolbar .toolbar-right{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    align-items:stretch;
    gap:9px;
  }
  .jasdor-toolbar .toolbar-right .search{
    grid-column:1/-1;
    display:block;
    width:100%;
    min-width:0;
    max-width:100%;
    height:46px;
    min-height:46px;
    margin:0;
    padding:11px 13px;
    border-radius:12px;
    font-size:12.5px;
    line-height:1.2;
  }
  .jasdor-toolbar .toolbar-right .button{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    min-width:0;
    max-width:100%;
    min-height:44px;
    margin:0;
    padding:10px 7px;
    border-radius:11px;
    font-size:11px;
    line-height:1.15;
    text-align:center;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
}

@media (max-width:350px){
  .card-grid{gap:7px;margin-inline:-5px}
  .stat-card,
  .stat-card:first-child{
    height:128px;
    min-height:128px;
    padding:12px 9px 11px;
  }
  .stat-card .value,
  .stat-card:first-child .value,
  .stat-card .value.value-long,
  .stat-card:first-child .value.value-long,
  .stat-card .value.value-compact,
  .stat-card:first-child .value.value-compact{
    font-size:16.4px!important;
    letter-spacing:-.06em;
  }
  .stat-card .detail,
  .stat-card:first-child .detail{font-size:8.2px}
  .jasdor-toolbar{padding:10px;gap:9px}
  .jasdor-toolbar .segmented button{font-size:10.25px;padding-inline:2px}
  .jasdor-toolbar .toolbar-right{gap:7px}
  .jasdor-toolbar .toolbar-right .button{font-size:10.25px;padding-inline:5px}
}

@media (max-width:760px){
  html[data-theme="light"] .stat-card .value,
  html[data-theme="light"] .stat-card:first-child .value,
  html[data-theme="light"] .stat-card .value.value-long,
  html[data-theme="light"] .stat-card:first-child .value.value-long,
  html[data-theme="light"] .stat-card .value.value-compact,
  html[data-theme="light"] .stat-card:first-child .value.value-compact{color:#171923}
}

/* BroyApps Manager 2.0.8 — prominent total omzet and Jasdor financial management. */
@media (min-width:761px){
  .stat-card.total-omzet{
    min-width:0;
    padding-inline:10px;
  }
  .stat-card.total-omzet .value,
  .stat-card.total-omzet .value.value-long,
  .stat-card.total-omzet .value.value-compact{
    display:block;
    min-width:0;
    width:100%;
    max-width:100%;
    margin:7px 0 5px;
    font-size:clamp(1.6rem,2.35vw,2.3rem);
    font-weight:900;
    line-height:1.06;
    letter-spacing:-.045em;
    white-space:nowrap;
    overflow:visible;
    overflow-wrap:normal;
    word-break:normal;
    font-variant-numeric:tabular-nums;
    font-feature-settings:"tnum" 1;
  }
}

.account-menu-button{
  min-width:34px;
  padding-inline:8px;
  color:#d8f8b7;
  font-size:14px;
  letter-spacing:.08em;
}
.account-action-sheet-head{
  display:grid;
  gap:5px;
  padding:2px 2px 15px;
  border-bottom:1px solid var(--line);
}
.account-action-sheet-head .badge{width:max-content}
.account-action-sheet-head h3{margin:0;font-size:20px;line-height:1.2}
.account-action-sheet-head p{margin:0;color:var(--muted);font-size:12px}
.account-action-list{display:grid;gap:8px;margin-top:14px}
.account-action-list>button{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  align-items:center;
  gap:11px;
  width:100%;
  min-width:0;
  padding:12px;
  border:1px solid #30303b;
  border-radius:13px;
  background:#17171f;
  color:var(--text);
  text-align:left;
  cursor:pointer;
}
.account-action-list>button:hover{border-color:#88d64d;background:#1c211a}
.account-action-list>button>span{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:12px;
  background:#22222c;
  color:#bff58d;
  font-size:14px;
  font-weight:900;
}
.account-action-list>button div{display:grid;gap:3px;min-width:0}
.account-action-list>button b{font-size:13px}
.account-action-list>button small{color:var(--muted);font-size:10.5px;line-height:1.4}
.account-action-list>button.danger-action:hover{border-color:#ff6d88;background:#26171c}
.account-action-list>button.danger-action>span{background:#2a1820;color:#ff8298}

.account-detail-hero,.financial-account-identity{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  padding:15px;
  border:1px solid #30303b;
  border-radius:15px;
  background:linear-gradient(145deg,#1b1b24,#14141b);
}
.account-detail-hero{display:grid;justify-items:start}
.account-detail-hero h3,.financial-account-identity h3{margin:5px 0 2px;font-size:21px;line-height:1.15}
.account-detail-hero p,.financial-account-identity p{margin:0;color:var(--muted);font-size:11.5px}
.account-detail-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin:13px 0;
}
.account-detail-grid>div{
  display:grid;
  gap:5px;
  min-width:0;
  padding:11px;
  border:1px solid #2d2d38;
  border-radius:12px;
  background:#121219;
}
.account-detail-grid span,.financial-summary-grid span{color:var(--muted);font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.account-detail-grid b{font-size:12px;overflow-wrap:anywhere}
.detail-section{margin-top:16px}
.detail-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.detail-section h4{margin:0 0 9px;font-size:13px}
.detail-list{display:grid;gap:7px}
.detail-list-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 11px;border:1px solid #2d2d38;border-radius:11px;background:#15151d}
.detail-list-row>div{display:grid;gap:2px;min-width:0}
.detail-list-row b{font-size:11.5px;overflow-wrap:anywhere}
.detail-list-row small{color:var(--muted);font-size:9.5px}
.detail-note{margin:0;padding:11px 12px;border-radius:11px;background:#15151d;color:#b8b8c4;font-size:11.5px;line-height:1.55}

.financial-modal{width:min(980px,100%)}
.financial-account-identity{margin-bottom:15px}
.financial-account-identity>div{min-width:0}
.account-modal-field{
  display:grid;
  gap:6px;
  padding:14px;
  border:1px solid #30303b;
  border-radius:14px;
  background:#15151d;
}
.financial-money-field{display:grid;gap:6px;min-width:0}
.financial-money-field>span{color:#a7a7b5;font-size:10px;font-weight:850}
.financial-money-field input{
  width:100%;
  min-width:0;
  height:44px;
  padding:10px 12px;
  border:1px solid #383845;
  border-radius:11px;
  background:#101017;
  color:#f7f7fb;
  font-size:15px;
  font-weight:850;
  font-variant-numeric:tabular-nums;
  outline:0;
}
.financial-money-field input:focus{border-color:#8bd650;box-shadow:0 0 0 3px rgba(139,214,80,.13)}
.financial-money-field small{color:var(--muted);font-size:9.5px;line-height:1.4}
.financial-section-title{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  margin:20px 0 10px;
}
.financial-section-title h3{margin:0 0 3px;font-size:15px}
.financial-section-title p{margin:0;color:var(--muted);font-size:10.5px;line-height:1.4}
.financial-section-title>span{flex:none;color:#bdf58a;font-size:11px;font-weight:900}
.financial-voucher-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.financial-voucher-card{
  display:grid;
  gap:11px;
  min-width:0;
  padding:14px;
  border:1px solid #30303b;
  border-radius:15px;
  background:linear-gradient(145deg,#191922,#14141b);
}
.financial-voucher-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.financial-voucher-head>div{min-width:0}
.financial-voucher-head h4{margin:4px 0 0;font-size:13px;line-height:1.35;overflow-wrap:anywhere}
.financial-voucher-meta{display:grid;gap:3px;padding:9px 10px;border-radius:10px;background:#101017}
.financial-voucher-meta span{color:var(--muted);font-size:8.5px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.financial-voucher-meta b{font-size:11px}
.financial-voucher-meta small{color:var(--muted);font-size:9.5px;overflow-wrap:anywhere}
.financial-empty{grid-column:1/-1;padding:24px;text-align:center;border:1px dashed #393946;border-radius:14px;color:var(--muted)}
.financial-empty b{color:var(--text);font-size:13px}.financial-empty p{margin:6px auto 0;max-width:480px;font-size:10.5px;line-height:1.5}
.financial-summary{
  margin-top:17px;
  padding:15px;
  border:1px solid rgba(139,214,80,.24);
  border-radius:16px;
  background:linear-gradient(145deg,rgba(139,214,80,.09),rgba(20,20,27,.96) 48%);
}
.financial-summary-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:11px}
.financial-summary-head h3{margin:4px 0 0;font-size:15px}
.financial-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.financial-summary-grid>div{display:grid;gap:5px;min-width:0;padding:11px;border:1px solid #30303b;border-radius:12px;background:rgba(12,12,17,.64)}
.financial-summary-grid b{min-width:0;font-size:14px;line-height:1.15;white-space:nowrap;font-variant-numeric:tabular-nums;letter-spacing:-.025em}
.financial-summary-grid .net{border-color:rgba(139,214,80,.38);background:rgba(139,214,80,.09)}
.financial-summary-grid .net b{color:#bdf58a}
.financial-summary-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}
.financial-summary>p{margin:11px 0 0;color:var(--muted);font-size:9.5px;line-height:1.5}
#saveJasdorFinancialBtn:disabled{opacity:.45;cursor:not-allowed;filter:saturate(.3)}

html[data-theme="light"] .account-action-list>button,
html[data-theme="light"] .account-detail-hero,
html[data-theme="light"] .financial-account-identity,
html[data-theme="light"] .account-modal-field,
html[data-theme="light"] .financial-voucher-card,
html[data-theme="light"] .detail-list-row,
html[data-theme="light"] .detail-note{
  background:#f8fafc;
  border-color:#dfe4ec;
}
html[data-theme="light"] .account-action-list>button:hover{background:#f0f7eb;border-color:#91ca69}
html[data-theme="light"] .account-action-list>button>span{background:#edf5e8;color:#477a28}
html[data-theme="light"] .account-detail-grid>div,
html[data-theme="light"] .financial-voucher-meta,
html[data-theme="light"] .financial-summary-grid>div{background:#f5f7fa;border-color:#e0e5eb}
html[data-theme="light"] .financial-money-field input{background:#fff;color:#171923;border-color:#d7dee8}
html[data-theme="light"] .financial-summary{background:linear-gradient(145deg,#f2faec,#fff 55%);border-color:#b8dc9f}
html[data-theme="light"] .financial-summary-grid .net{background:#eef9e7;border-color:#9fce7f}
html[data-theme="light"] .financial-summary-grid .net b{color:#3f7520}
html[data-theme="light"] .detail-note{color:#475467}

@media(max-width:760px){
  .account-menu-button{font-size:13px}
  .action-sheet-modal .modal-body{padding-top:12px}
  .account-action-list>button{min-height:66px}
  .account-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .financial-modal{width:100%;max-height:94vh}
  .financial-account-identity{padding:13px}
  .financial-account-identity h3{font-size:18px}
  .financial-voucher-list{grid-template-columns:1fr}
  .financial-summary-grid,.financial-summary-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}
  .financial-summary-grid b{font-size:clamp(12px,3.8vw,14px)}
  .financial-section-title{align-items:flex-start}
  .financial-section-title p{max-width:245px}
}

@media(max-width:360px){
  .financial-summary-grid{gap:6px}
  .financial-summary-grid>div{padding:9px 8px}
  .financial-summary-grid b{font-size:11.5px;letter-spacing:-.04em}
  .account-detail-grid{gap:6px}
}



.field input[data-rupiah],
.financial-money-field input[data-rupiah]{
  font-variant-numeric:tabular-nums;
  font-feature-settings:"tnum" 1;
  font-weight:850;
  letter-spacing:-.015em;
}

/* BroyApps Manager 2.0.10 — restore the original dashboard card layout.
   Only the Total Omzet typography is enhanced; no grid/card positioning changes. */
@media (min-width:761px){
  .stat-card.total-omzet{
    container-type:inline-size;
    min-width:0;
    padding-left:12px;
    padding-right:12px;
    overflow:hidden;
  }
  .stat-card.total-omzet .value,
  .stat-card.total-omzet .value.value-long,
  .stat-card.total-omzet .value.value-compact{
    display:block;
    width:100%;
    min-width:0;
    max-width:100%;
    margin:7px 0 5px;
    padding:0;
    font-size:clamp(1.65rem,11.8cqi,2.5rem);
    font-weight:950;
    line-height:1.02;
    letter-spacing:-.055em;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:clip;
    overflow-wrap:normal;
    word-break:normal;
    font-variant-numeric:tabular-nums;
    font-feature-settings:"tnum" 1;
  }
}

@supports not (font-size:1cqi){
  @media (min-width:761px){
    .stat-card.total-omzet .value,
    .stat-card.total-omzet .value.value-long,
    .stat-card.total-omzet .value.value-compact{
      font-size:clamp(1.65rem,2.25vw,2.5rem);
    }
  }
}

/* BroyApps Manager 2.0.12 (rebuilt from 2.0.11)
   Netflix credentials, cleaner text hierarchy, and paginated buyer/history lists.
   Staff dashboard typography is intentionally unchanged from 2.0.11. */

/* Akun & Profil: keep the account summary as clean text, not cards or a fact grid. */
.netflix-account-head{
  align-items:flex-start;
  gap:16px;
}
.netflix-account-identity{
  min-width:0;
  flex:1;
}
.netflix-account-identity h3{
  margin:0;
  color:#f7f7fb;
  font-size:15px;
  line-height:1.35;
  overflow-wrap:anywhere;
  word-break:normal;
}
.netflix-password-line{
  display:flex;
  align-items:baseline;
  gap:7px;
  min-width:0;
  margin-top:6px;
  color:#a6a6b5;
  font-size:11px;
  line-height:1.45;
}
.netflix-password-line>span{
  flex:none;
  color:#858596;
  font-size:9px;
  font-weight:850;
  letter-spacing:.045em;
  text-transform:uppercase;
}
.netflix-password-line>b{
  min-width:0;
  color:#ededf3;
  font-size:12px;
  font-weight:850;
  overflow-wrap:anywhere;
}
.netflix-account-meta{
  align-items:center;
  column-gap:10px;
  row-gap:6px;
  margin-top:8px;
  line-height:1.45;
}
.netflix-account-meta>span:not(:first-child){
  position:relative;
  padding-left:10px;
}
.netflix-account-meta>span:not(:first-child)::before{
  content:'•';
  position:absolute;
  left:0;
  color:#666675;
}
.netflix-account-meta strong{
  color:#b7b7c3;
  font-weight:850;
}
.netflix-account-actions{
  flex:none;
  justify-content:flex-end;
}

html[data-theme="light"] .netflix-account-identity h3,
html[data-theme="light"] .netflix-password-line>b{
  color:#1d2939;
}
html[data-theme="light"] .netflix-password-line,
html[data-theme="light"] .netflix-password-line>span{
  color:#667085;
}
html[data-theme="light"] .netflix-account-meta strong{
  color:#344054;
}
html[data-theme="light"] .netflix-account-meta>span:not(:first-child)::before{
  color:#98a2b3;
}

/* Reminder: larger profile name and readable inline text, without extra boxes. */
.reminder-detail-row{
  gap:16px;
  padding:15px 2px;
}
.reminder-profile-title{
  margin:0;
  color:#f7f7fb;
  font-size:16px;
  font-weight:900;
  line-height:1.3;
  letter-spacing:-.012em;
}
.reminder-buyer-name{
  display:block;
  margin-top:3px;
  color:#aaaab8;
  font-size:11.5px;
  line-height:1.45;
}
.reminder-info-line{
  display:flex;
  align-items:baseline;
  flex-wrap:wrap;
  gap:3px 7px;
  min-width:0;
  margin-top:7px;
  color:#b7b7c3;
  font-size:12px;
  line-height:1.55;
}
.reminder-info-line strong,
.reminder-info-line b{
  color:#ededf3;
  font-weight:850;
}
.reminder-email{
  overflow-wrap:anywhere;
}
.reminder-contact-missing{
  color:#ffc66b;
  font-weight:750;
}
html[data-theme="light"] .reminder-profile-title,
html[data-theme="light"] .reminder-info-line strong,
html[data-theme="light"] .reminder-info-line b{
  color:#1d2939;
}
html[data-theme="light"] .reminder-buyer-name,
html[data-theme="light"] .reminder-info-line{
  color:#667085;
}
html[data-theme="light"] .reminder-contact-missing{
  color:#8b5d00;
}

@media(max-width:760px){
  .netflix-account-head{
    display:flex;
    flex-direction:column;
    gap:11px;
  }
  .netflix-account-actions{
    width:100%;
    justify-content:flex-start;
  }
  .netflix-account-identity h3{
    font-size:15.5px;
  }
  .netflix-password-line{
    align-items:flex-start;
  }
  .netflix-account-meta{
    column-gap:8px;
    row-gap:5px;
  }
  .netflix-account-meta>span:not(:first-child){
    padding-left:8px;
  }
  .reminder-profile-title{
    font-size:16.5px;
  }
  .reminder-buyer-name{
    font-size:11.5px;
  }
  .reminder-info-line{
    font-size:12.5px;
    gap:3px 6px;
  }
  .reminder-detail-row .reminder-actions{
    gap:7px;
  }
}



/* BroyApps Manager 2.0.13 */
.weekly-sales-panel{margin:18px 0;padding:22px 24px;overflow:hidden}
.weekly-sales-head{align-items:flex-start}
.weekly-sales-summary{display:flex;flex-direction:column;align-items:flex-end;gap:4px;padding:10px 14px;border:1px solid var(--line);border-radius:16px;background:var(--surface-soft)}
.weekly-sales-summary span{font-size:.74rem;color:var(--muted);font-weight:700}
.weekly-sales-summary b{font-size:1.05rem;white-space:nowrap}
.weekly-sales-chart{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:14px;min-height:214px;margin-top:18px;align-items:end}
.weekly-sales-day{min-width:0;display:grid;grid-template-rows:24px 1fr 22px 18px;align-items:end;justify-items:center;gap:5px}
.weekly-sales-percent{font-size:.72rem;font-weight:800;color:var(--accent)}
.weekly-sales-track{position:relative;width:min(54px,78%);height:132px;border-radius:13px;background:color-mix(in srgb,var(--surface-soft) 88%,transparent);overflow:hidden;border:1px solid var(--line)}
.weekly-sales-track i{position:absolute;left:0;right:0;bottom:0;height:var(--sales-height);min-height:8px;border-radius:12px;background:linear-gradient(180deg,#5c7cff 0%,#38c8ee 100%);box-shadow:0 8px 24px rgba(72,116,255,.28);transition:height .25s ease}
.weekly-sales-day b{font-size:.8rem}
.weekly-sales-day small{font-size:.72rem;color:var(--muted)}
.netflix-account-title-row{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap}
.netflix-account-title-row h3{min-width:0;word-break:break-word}
.netflix-account-package-flags{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.netflix-package-badge{display:inline-flex;align-items:center;min-height:24px;padding:4px 8px;border-radius:999px;font-size:.66rem;font-weight:900;letter-spacing:.035em;white-space:nowrap}
.netflix-package-badge.duo{background:rgba(160,232,91,.14);color:#a9ef6a;border:1px solid rgba(160,232,91,.27)}
.netflix-package-badge.tv{background:rgba(77,145,255,.15);color:#78adff;border:1px solid rgba(77,145,255,.3)}
.netflix-account-link{appearance:none;border:0;background:transparent;color:inherit;text-align:left;padding:0;cursor:pointer;display:flex;flex-direction:column;gap:6px;max-width:100%}
.netflix-account-link>b{color:var(--text);text-decoration:underline;text-decoration-color:transparent;text-underline-offset:3px;transition:.2s}
.netflix-account-link:hover>b{text-decoration-color:var(--accent)}
.netflix-account-link>span{display:flex;gap:5px;flex-wrap:wrap}
.netflix-detail-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:17px;border-bottom:1px solid var(--line)}
.netflix-detail-hero h3{margin:5px 0 8px;font-size:1.25rem;word-break:break-word}
.netflix-detail-lines{display:flex;flex-direction:column;gap:0;padding:10px 0}
.netflix-detail-lines p{display:flex;justify-content:space-between;gap:18px;margin:0;padding:12px 0;border-bottom:1px solid var(--line)}
.netflix-detail-lines span{color:var(--muted)}
.netflix-detail-lines b{text-align:right;word-break:break-word}
.netflix-detail-slot-list{display:flex;flex-direction:column;gap:8px}
.netflix-detail-slot{width:100%;display:flex;justify-content:space-between;align-items:center;gap:14px;text-align:left;padding:13px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft);color:var(--text);cursor:pointer}
.netflix-detail-slot>div{min-width:0;display:flex;flex-direction:column;gap:4px}
.netflix-detail-slot>div span{font-size:.78rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.reminder-group+.reminder-group{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}
.reminder-group-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 8px}
.reminder-group-title h4{margin:0;font-size:1rem}
.reminder-group-title span{font-size:.75rem;color:var(--muted);font-weight:700}
.voucher-choice-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.voucher-choice{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:13px;background:var(--surface-soft);cursor:pointer;min-width:0}
.voucher-choice:has(input:checked){border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)}
.voucher-choice input{width:18px;height:18px;accent-color:var(--accent);flex:0 0 auto}
.voucher-choice span{display:flex;flex-direction:column;min-width:0}
.voucher-choice b,.voucher-choice small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.voucher-choice small{color:var(--muted);margin-top:3px}
.device-not-used{display:inline-flex;align-items:center;justify-content:center;min-width:38px;color:var(--muted);font-weight:800}
.jasdor-row-ending-soon>td{background:rgba(255,177,52,.07)}
.jasdor-row-ending-soon .readiness-icon{filter:drop-shadow(0 0 8px rgba(255,177,52,.5))}
.jasdor-row-expired>td{background:rgba(244,91,105,.055);opacity:.84}
.jasdor-row-expired .readiness-icon{filter:grayscale(.2)}
.jasdor-mobile-card.jasdor-row-ending-soon{border-color:rgba(255,177,52,.42);box-shadow:0 0 0 1px rgba(255,177,52,.08)}
.jasdor-mobile-card.jasdor-row-expired{border-color:rgba(244,91,105,.26);opacity:.9}
.voucher-duration-note.urgent{color:#ffbd4a;background:rgba(255,177,52,.13);border-color:rgba(255,177,52,.28);font-weight:850}
.voucher-duration-note.expired{color:#ff7d88;background:rgba(244,91,105,.12);border-color:rgba(244,91,105,.25)}
.button.success{background:linear-gradient(135deg,#6ecf65,#9be45d);color:#10210f;border-color:transparent}
@media(max-width:760px){
 .weekly-sales-panel{padding:18px 14px;margin:14px 0}
 .weekly-sales-head{gap:12px}
 .weekly-sales-summary{padding:8px 10px}
 .weekly-sales-summary b{font-size:.9rem}
 .weekly-sales-chart{gap:5px;min-height:178px;margin-top:14px}
 .weekly-sales-track{width:min(36px,76%);height:105px;border-radius:10px}
 .weekly-sales-percent{font-size:.62rem}
 .weekly-sales-day b{font-size:.7rem}
 .weekly-sales-day small{font-size:.64rem}
 .voucher-choice-list{grid-template-columns:1fr}
 .netflix-detail-hero{flex-direction:column}
 .netflix-detail-lines p{gap:10px}
 .netflix-detail-slot{padding:12px}
}
@media(max-width:360px){
 .weekly-sales-panel{padding-inline:10px}
 .weekly-sales-chart{gap:2px}
 .weekly-sales-track{width:29px}
 .weekly-sales-percent{font-size:.58rem}
}


/* BroyApps Manager 2.0.14 — Netflix Akun & Profil berbentuk ledger yang mudah dipindai.
   Penanda PROFILE TV dan DUO / SHARING hanya tampil pada Akun & Profil. */
.netflix-ledger-account{
  padding:0;
  overflow:hidden;
}
.netflix-ledger-account>.netflix-account-head{
  margin:0;
  padding:18px 20px 16px;
  border-bottom:1px solid var(--line);
  background:linear-gradient(180deg,color-mix(in srgb,var(--surface-soft) 74%,transparent),transparent);
}
.netflix-ledger-account .netflix-account-title-row{
  align-items:center;
}
.netflix-ledger-account .netflix-account-title-row h3{
  font-size:1rem;
  line-height:1.35;
}
.netflix-ledger-account .netflix-account-package-flags{
  margin-top:0;
}
.netflix-profile-ledger{
  width:100%;
  min-width:0;
}
.netflix-profile-ledger-head,
.netflix-profile-ledger-row{
  display:grid;
  grid-template-columns:42px minmax(132px,1.05fr) minmax(150px,1.18fr) minmax(112px,.86fr) minmax(112px,.86fr) minmax(120px,.9fr);
  align-items:stretch;
  min-width:0;
}
.netflix-profile-ledger-head{
  color:var(--muted);
  background:color-mix(in srgb,var(--surface-soft) 88%,transparent);
  border-bottom:1px solid var(--line);
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.025em;
  text-transform:uppercase;
}
.netflix-profile-ledger-head>span{
  display:flex;
  align-items:center;
  min-width:0;
  padding:10px 11px;
  border-right:1px solid var(--line);
}
.netflix-profile-ledger-head>span:first-child{
  justify-content:center;
}
.netflix-profile-ledger-head>span:last-child{
  border-right:0;
}
.netflix-profile-ledger-body{
  min-width:0;
}
.netflix-profile-ledger-row{
  appearance:none;
  width:100%;
  padding:0;
  border:0;
  border-bottom:1px solid var(--line);
  background:transparent;
  color:var(--text);
  font:inherit;
  text-align:left;
  cursor:pointer;
  transition:background .15s ease,box-shadow .15s ease;
}
.netflix-profile-ledger-row:last-child{
  border-bottom:0;
}
.netflix-profile-ledger-row:hover{
  background:color-mix(in srgb,var(--primary) 7%,transparent);
  box-shadow:inset 3px 0 0 color-mix(in srgb,var(--primary) 72%,transparent);
}
.netflix-profile-ledger-row>span{
  min-width:0;
  padding:13px 11px;
  border-right:1px solid var(--line);
}
.netflix-profile-ledger-row>span:last-child{
  border-right:0;
}
.ledger-no{
  display:flex;
  align-items:flex-start;
  justify-content:center;
  color:var(--muted);
  font-size:.75rem;
  font-weight:850;
}
.ledger-profile{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:4px;
}
.ledger-profile>b{
  width:100%;
  color:var(--text);
  font-size:.9rem;
  font-weight:900;
  line-height:1.3;
  overflow-wrap:anywhere;
}
.ledger-profile>small{
  color:var(--muted);
  font-size:.7rem;
  line-height:1.3;
}
.ledger-status{
  margin-top:2px;
}
.ledger-status .status-badge{
  min-height:21px;
  padding:3px 7px;
  font-size:.61rem;
}
.ledger-stack{
  display:flex;
  flex-direction:column;
  gap:8px;
  color:var(--muted);
  font-size:.78rem;
  line-height:1.35;
}
.ledger-stack>span{
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:28px;
  justify-content:flex-start;
}
.ledger-stack b{
  color:var(--text);
  font-size:.79rem;
  font-weight:800;
  overflow-wrap:anywhere;
}
.ledger-stack small{
  margin-top:2px;
  color:var(--muted);
  font-size:.67rem;
  overflow-wrap:anywhere;
}
.ledger-empty{
  color:var(--muted);
  font-style:italic;
}
.netflix-profile-ledger-row.available-empty,
.netflix-profile-ledger-row.available-off{
  background:color-mix(in srgb,var(--green) 4%,transparent);
}
.netflix-profile-ledger-row.renewal-soon{
  background:color-mix(in srgb,#ffb734 7%,transparent);
}
.netflix-profile-ledger-row.blocked{
  background:color-mix(in srgb,var(--red) 6%,transparent);
}
html[data-theme="light"] .netflix-ledger-account>.netflix-account-head{
  background:linear-gradient(180deg,#f8fafc,#fff);
}
html[data-theme="light"] .netflix-profile-ledger-head{
  background:#f5f7fa;
}
html[data-theme="light"] .netflix-profile-ledger-row:hover{
  background:#f3faee;
}
html[data-theme="light"] .netflix-profile-ledger-row.available-empty,
html[data-theme="light"] .netflix-profile-ledger-row.available-off{
  background:#fbfefa;
}
html[data-theme="light"] .netflix-profile-ledger-row.renewal-soon{
  background:#fffaf0;
}
html[data-theme="light"] .netflix-profile-ledger-row.blocked{
  background:#fff7f8;
}
@media(max-width:980px) and (min-width:761px){
  .netflix-profile-ledger-head,
  .netflix-profile-ledger-row{
    grid-template-columns:38px minmax(112px,1fr) minmax(130px,1.1fr) minmax(96px,.82fr) minmax(96px,.82fr) minmax(106px,.85fr);
  }
  .netflix-profile-ledger-head>span,
  .netflix-profile-ledger-row>span{
    padding-left:8px;
    padding-right:8px;
  }
}
@media(max-width:980px){
  .netflix-ledger-account{
    border-radius:18px;
  }
  .netflix-ledger-account>.netflix-account-head{
    padding:15px 14px 13px;
  }
  .netflix-ledger-account .netflix-account-title-row{
    align-items:flex-start;
    gap:7px;
  }
  .netflix-ledger-account .netflix-account-title-row h3{
    font-size:.94rem;
  }
  .netflix-ledger-account .netflix-package-badge{
    min-height:22px;
    padding:3px 7px;
    font-size:.61rem;
  }
  .netflix-profile-ledger-head{
    display:none;
  }
  .netflix-profile-ledger-body{
    display:flex;
    flex-direction:column;
  }
  .netflix-profile-ledger-row{
    display:grid;
    grid-template-columns:34px minmax(0,1fr);
    gap:0 10px;
    padding:12px 13px;
    align-items:start;
  }
  .netflix-profile-ledger-row:hover{
    box-shadow:none;
  }
  .netflix-profile-ledger-row>span{
    padding:0;
    border-right:0;
  }
  .ledger-no{
    grid-column:1;
    grid-row:1/7;
    align-self:stretch;
    justify-content:flex-start;
    padding-top:2px!important;
    font-size:.72rem;
  }
  .ledger-profile{
    grid-column:2;
    padding-bottom:9px!important;
    border-bottom:1px dashed color-mix(in srgb,var(--line) 85%,transparent)!important;
  }
  .ledger-profile>b{
    font-size:1rem;
  }
  .ledger-profile>small{
    font-size:.72rem;
  }
  .ledger-stack{
    grid-column:2;
    display:grid;
    grid-template-columns:minmax(92px,.72fr) minmax(0,1.28fr);
    gap:8px;
    padding-top:8px!important;
    font-size:.78rem;
  }
  .ledger-stack::before{
    content:attr(data-label);
    color:var(--muted);
    font-size:.69rem;
    font-weight:850;
    line-height:1.4;
  }
  .ledger-stack>span{
    min-height:0;
  }
  .ledger-stack b{
    font-size:.79rem;
  }
  .ledger-status{
    margin-top:1px;
  }
}
@media(max-width:360px){
  .netflix-profile-ledger-row{
    grid-template-columns:28px minmax(0,1fr);
    gap:0 7px;
    padding-inline:10px;
  }
  .ledger-stack{
    grid-template-columns:82px minmax(0,1fr);
    gap:6px;
  }
}

/* Ledger akun Netflix membutuhkan lebar penuh agar semua kolom tetap terbaca. */
#netflixAccountGrid.account-grid{
  grid-template-columns:minmax(0,1fr);
}


/* BroyApps Manager 2.0.16 — compact Netflix ledger, restored from 2.0.14.
   The visual structure stays account-per-card; only row spacing is tightened.
   On smaller screens the same ledger remains tabular inside its own horizontal scroller. */
.netflix-ledger-account>.netflix-account-head{
  padding:14px 16px 12px;
}
.netflix-profile-ledger-head>span{
  padding:7px 9px;
}
.netflix-profile-ledger-row>span{
  padding:8px 9px;
}
.ledger-profile{
  gap:2px;
}
.ledger-profile>b{
  line-height:1.22;
}
.ledger-profile>small{
  line-height:1.2;
}
.ledger-status{
  margin-top:0;
}
.ledger-status .status-badge{
  min-height:19px;
  padding:2px 6px;
}
.ledger-stack{
  gap:4px;
  line-height:1.25;
}
.ledger-stack>span{
  min-height:20px;
}
.ledger-stack small{
  margin-top:1px;
}

@media(max-width:980px){
  .netflix-ledger-account{
    overflow:hidden;
  }
  .netflix-ledger-account>.netflix-account-head{
    padding:13px 13px 11px;
  }
  .netflix-profile-ledger{
    width:100%;
    max-width:100%;
    min-width:0;
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-inline:contain;
    touch-action:pan-x pan-y pinch-zoom;
  }
  .netflix-profile-ledger-head,
  .netflix-profile-ledger-row{
    display:grid;
    grid-template-columns:36px 122px 145px 103px 103px 108px;
    min-width:617px;
    width:100%;
    align-items:stretch;
  }
  .netflix-profile-ledger-head{
    border-bottom:1px solid var(--line);
  }
  .netflix-profile-ledger-head>span{
    display:flex;
    padding:7px 8px;
    border-right:1px solid var(--line);
  }
  .netflix-profile-ledger-head>span:last-child{
    border-right:0;
  }
  .netflix-profile-ledger-body{
    display:block;
    min-width:617px;
  }
  .netflix-profile-ledger-row{
    padding:0;
    gap:0;
  }
  .netflix-profile-ledger-row:hover{
    box-shadow:inset 3px 0 0 color-mix(in srgb,var(--primary) 72%,transparent);
  }
  .netflix-profile-ledger-row>span{
    display:flex;
    min-width:0;
    padding:8px;
    border-right:1px solid var(--line);
  }
  .netflix-profile-ledger-row>span:last-child{
    border-right:0;
  }
  .ledger-no{
    grid-column:auto;
    grid-row:auto;
    align-self:stretch;
    align-items:flex-start;
    justify-content:center;
    padding-top:9px!important;
  }
  .ledger-profile{
    grid-column:auto;
    padding-bottom:8px!important;
    border-bottom:0!important;
  }
  .ledger-profile>b{
    font-size:.86rem;
  }
  .ledger-profile>small{
    font-size:.66rem;
  }
  .ledger-stack{
    grid-column:auto;
    display:flex;
    flex-direction:column;
    grid-template-columns:none;
    gap:4px;
    padding-top:8px!important;
    font-size:.72rem;
  }
  .ledger-stack::before{
    content:none;
    display:none;
  }
  .ledger-stack>span{
    min-height:20px;
  }
  .ledger-stack b{
    font-size:.73rem;
  }
  .ledger-stack small{
    font-size:.62rem;
  }
  .ledger-status{
    margin-top:0;
  }
}

@media(max-width:420px){
  .netflix-ledger-account>.netflix-account-head{
    padding:12px 11px 10px;
  }
  .netflix-ledger-account .netflix-account-title-row h3{
    font-size:.88rem;
  }
  .netflix-account-meta{
    gap:4px 7px;
  }
  .netflix-profile-ledger-head,
  .netflix-profile-ledger-row,
  .netflix-profile-ledger-body{
    min-width:590px;
  }
  .netflix-profile-ledger-head,
  .netflix-profile-ledger-row{
    grid-template-columns:34px 116px 138px 99px 99px 104px;
  }
}


/* BroyApps Manager 2.0.17 — indikator pemakaian akun Tomoro */
.tomoro-usage-indicators{
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
  margin-top:7px;
  min-width:0;
}
.tomoro-usage-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:24px;
  padding:4px 8px;
  border-radius:999px;
  font-size:9.5px;
  line-height:1;
  font-weight:900;
  white-space:nowrap;
  border:1px solid transparent;
}
.tomoro-usage-badge.admin{
  color:#ffd47c;
  background:rgba(255,178,54,.12);
  border-color:rgba(255,178,54,.22);
}
.tomoro-usage-badge.staff{
  color:#7fd0ff;
  background:rgba(67,173,255,.12);
  border-color:rgba(67,173,255,.22);
}
html[data-theme="light"] .tomoro-usage-badge.admin{
  color:#8a4f00;
  background:#fff3d7;
  border-color:#f2d397;
}
html[data-theme="light"] .tomoro-usage-badge.staff{
  color:#1956a6;
  background:#e7f2ff;
  border-color:#bfd9f7;
}
.account-detail-hero + .account-detail-grid + .detail-section .tomoro-usage-indicators{
  margin-top:10px;
}
@media (max-width:760px){
  .jasdor-mobile-account-summary .tomoro-usage-indicators{
    flex:1 1 100%;
    width:100%;
    margin-top:2px;
  }
  .tomoro-usage-badge{
    min-height:26px;
    padding:5px 9px;
    font-size:10px;
  }
}


/* BroyApps Manager 2.0.18 — modal akun Jasdor dengan default terkunci */
.jasdor-modal-control{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
  align-items:stretch;
  min-width:0;
}
.jasdor-modal-control input{
  min-width:0;
  font-weight:850;
  font-variant-numeric:tabular-nums;
}
.jasdor-modal-control.is-locked input{
  border-color:rgba(168,239,98,.24);
  background:rgba(168,239,98,.065);
  color:#d8ffb6;
}
.modal-lock-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-width:112px;
  min-height:43px;
  padding:9px 11px;
  border:1px solid #373743;
  border-radius:10px;
  background:#23232c;
  color:#d7d7e0;
  font:inherit;
  font-size:10.5px;
  font-weight:900;
  cursor:pointer;
  white-space:nowrap;
}
.modal-lock-button:hover{border-color:#60606e;background:#292933}
.jasdor-modal-control.is-locked .modal-lock-button{
  color:#c8ff97;
  border-color:rgba(168,239,98,.24);
  background:rgba(168,239,98,.09);
}
.jasdor-modal-control.is-unlocked .modal-lock-button{
  color:#85d1ff;
  border-color:rgba(67,173,255,.25);
  background:rgba(67,173,255,.09);
}
.modal-default-option{
  display:flex;
  align-items:flex-start;
  gap:8px;
  margin-top:4px;
  padding:9px 10px;
  border:1px solid #30303b;
  border-radius:10px;
  background:#121219;
  color:#a9a9b6!important;
  font-size:10.5px!important;
  line-height:1.45;
  cursor:pointer;
}
.modal-default-option input{
  width:16px!important;
  min-width:16px;
  height:16px;
  min-height:16px!important;
  margin:1px 0 0;
  accent-color:#a8ef62;
}
html[data-theme="light"] .jasdor-modal-control.is-locked input{
  border-color:#bddf9e;
  background:#f1fae8;
  color:#315b16;
}
html[data-theme="light"] .modal-lock-button{
  border-color:#d5dce6;
  background:#f3f5f8;
  color:#344054;
}
html[data-theme="light"] .jasdor-modal-control.is-locked .modal-lock-button{
  color:#3f6c1f;
  border-color:#c9e5ad;
  background:#eff9e5;
}
html[data-theme="light"] .jasdor-modal-control.is-unlocked .modal-lock-button{
  color:#175a91;
  border-color:#bedbf0;
  background:#eaf5fd;
}
html[data-theme="light"] .modal-default-option{
  border-color:#d7dee8;
  background:#f7f9fc;
  color:#475467!important;
}
@media(max-width:520px){
  .jasdor-modal-control{grid-template-columns:minmax(0,1fr)}
  .modal-lock-button{width:100%;min-height:42px}
}

/* BroyApps Manager 2.0.20 — admin calendar and sales analytics */
.sales-analytics-shell{
  display:grid;
  grid-template-columns:minmax(330px,.86fr) minmax(0,1.34fr);
  gap:0;
  margin:18px 0;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:24px;
  background:linear-gradient(145deg,#191923,#121219);
  box-shadow:0 20px 54px rgba(0,0,0,.22);
  transition:opacity .2s ease;
}
.sales-analytics-shell.is-loading{opacity:.66;pointer-events:none}
.sales-calendar-pane,.sales-overview-pane{min-width:0;padding:26px}
.sales-calendar-pane{border-right:1px solid var(--line)}
.sales-analytics-title{display:flex;align-items:flex-start;gap:14px}
.sales-analytics-title h3,.sales-overview-head h3{margin:2px 0 5px;font-size:1.35rem;letter-spacing:-.025em}
.sales-analytics-title p,.sales-overview-head p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.55}
.sales-analytics-icon{flex:0 0 44px;width:44px;height:44px;border:1px solid #363644;border-radius:14px;display:grid;place-items:center;color:#68d7f1;background:#14141c;font-size:1.15rem}
.sales-month-switcher{display:grid;grid-template-columns:38px minmax(0,1fr) minmax(0,1.1fr) minmax(0,1fr) 38px;align-items:center;gap:5px;margin:24px 0 20px;padding:4px;border:1px solid #32323e;border-radius:15px;background:#111118}
.sales-month-arrow,.sales-month-label{min-width:0;height:42px;border:0;border-radius:12px;background:transparent;color:var(--muted);font:inherit;font-weight:800;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sales-month-arrow{font-size:1.4rem;color:#c8c8d2}
.sales-month-label.active{color:#fff;background:linear-gradient(105deg,#22c8e8,#466ff5 58%,#a743ed);box-shadow:0 8px 22px rgba(80,91,245,.28)}
.sales-month-label.muted:hover,.sales-month-arrow:hover{background:#20202a;color:#fff}
.sales-calendar-weekdays,.sales-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}
.sales-calendar-weekdays{margin-bottom:8px;color:#8f8fa1;font-size:.68rem;font-weight:900;text-align:center;text-transform:uppercase;letter-spacing:.04em}
.sales-calendar-weekdays span:first-child,.sales-calendar-weekdays span:last-child{color:#ff5da8}
.sales-calendar-blank{display:block;min-height:43px}
.sales-calendar-day{position:relative;min-width:0;min-height:43px;border:1px solid transparent;border-radius:13px;background:transparent;color:#e8e8ee;font:inherit;font-weight:800;cursor:pointer;display:grid;place-items:center;align-content:center;gap:1px;transition:transform .15s ease,border-color .15s ease,background .15s ease}
.sales-calendar-day span{font-size:.84rem;line-height:1}
.sales-calendar-day small{font-size:.56rem;color:#9cddff;font-weight:900}
.sales-calendar-day:hover{border-color:#3e3e4c;background:#20202a;transform:translateY(-1px)}
.sales-calendar-day.activity-1{background:rgba(34,211,238,.08)}
.sales-calendar-day.activity-2{background:rgba(34,211,238,.14)}
.sales-calendar-day.activity-3{background:rgba(79,124,255,.17)}
.sales-calendar-day.activity-4{background:rgba(168,85,247,.2)}
.sales-calendar-day.selected{color:#fff;border-color:transparent;background:linear-gradient(135deg,#22cee8,#526cf5 58%,#ad43ee);box-shadow:0 9px 24px rgba(75,112,246,.3)}
.sales-calendar-day.selected small{color:#fff}
.sales-calendar-controls{display:grid;grid-template-columns:.78fr 1.15fr .82fr;gap:10px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}
.sales-calendar-controls label,.analytics-mode-field{display:grid;gap:6px;min-width:0}
.sales-calendar-controls label>span,.analytics-mode-field>span{font-size:.64rem;color:var(--muted);font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.sales-calendar-controls select,.analytics-mode-field select{width:100%;min-width:0;height:42px;border:1px solid #343440;border-radius:11px;background:#121219;color:#ededf2;padding:0 10px;font:inherit;font-size:.76rem;font-weight:800;outline:0}
.sales-overview-pane{display:flex;flex-direction:column}
.sales-overview-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:28px}
.sales-overview-metric{position:relative;min-width:0;padding-top:14px;border-top:4px solid #22d3ee}
.sales-overview-metric.blue{border-color:#4f7cff}.sales-overview-metric.purple{border-color:#ad47ef}
.sales-overview-metric>span{display:block;font-size:.65rem;font-weight:950;letter-spacing:.09em;color:#c9c9d4}
.sales-overview-metric b{display:block;margin-top:7px;font-size:clamp(.95rem,1.35vw,1.3rem);line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sales-overview-metric small{display:block;margin-top:5px;color:var(--muted);font-size:.68rem;line-height:1.45}
.sales-overview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:10px}
.analytics-mode-field{flex:0 0 132px}
.sales-area-chart{min-width:0;min-height:278px;margin-top:4px;border-bottom:1px solid #30303b}
.sales-chart-scroll{width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#424250 transparent}
.sales-chart-scroll svg{display:block;width:100%;min-width:620px;height:auto;overflow:visible}
.sales-chart-grid line{stroke:#2c2c37;stroke-width:1;stroke-dasharray:3 7}
.sales-chart-area{stroke:none}
.sales-chart-line{fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;filter:url(#analyticsGlow)}
.sales-chart-line.total{stroke:#a851f2;stroke-width:2.8}.sales-chart-line.netflix{stroke:#24d1e7}.sales-chart-line.jasdor{stroke:#5576ff}
.sales-chart-labels text{fill:#8f8fa1;font-size:10px;font-weight:800}
.sales-chart-legend{display:flex;align-items:center;justify-content:flex-end;gap:14px;margin:10px 0 18px;color:var(--muted);font-size:.68rem;font-weight:800}
.sales-chart-legend span{display:flex;align-items:center;gap:6px}.sales-chart-legend i{width:8px;height:8px;border-radius:50%;background:#a851f2}.sales-chart-legend i.netflix{background:#24d1e7}.sales-chart-legend i.jasdor{background:#5576ff}
.sales-summary-circles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:auto}
.sales-summary-circles>div{min-width:0;text-align:center;padding:8px 5px}
.sales-summary-ring{width:48px;height:48px;border:1px solid #3b3b48;border-radius:50%;display:grid;place-items:center;margin:0 auto 9px;background:#121219}
.sales-summary-ring i{width:19px;height:19px;border-radius:50%;background:#a851f2;box-shadow:0 0 18px rgba(168,81,242,.4)}
.sales-summary-ring.netflix i{background:#24d1e7;box-shadow:0 0 18px rgba(36,209,231,.4)}.sales-summary-ring.jasdor i{background:#5576ff;box-shadow:0 0 18px rgba(85,118,255,.4)}.sales-summary-ring.revenue i{background:linear-gradient(135deg,#22d3ee,#ad47ef);box-shadow:0 0 18px rgba(93,108,246,.45)}
.sales-summary-circles b{display:block;min-width:0;font-size:clamp(1rem,1.55vw,1.55rem);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sales-summary-circles small{display:block;margin-top:3px;color:var(--muted);font-size:.65rem}

html[data-theme="light"] .sales-analytics-shell{background:#fff;box-shadow:0 18px 48px rgba(40,55,85,.09)}
html[data-theme="light"] .sales-calendar-pane{border-color:#e4e8ef}
html[data-theme="light"] .sales-analytics-icon{background:#fff;border-color:#dfe5ee;color:#2563eb}
html[data-theme="light"] .sales-month-switcher{background:#fbfcfe;border-color:#dde3ec}
html[data-theme="light"] .sales-month-arrow{color:#344054}
html[data-theme="light"] .sales-month-label.muted:hover,html[data-theme="light"] .sales-month-arrow:hover{background:#eef2f7;color:#101828}
html[data-theme="light"] .sales-calendar-day{color:#17213b}
html[data-theme="light"] .sales-calendar-day:hover{background:#f2f5f9;border-color:#dbe2eb}
html[data-theme="light"] .sales-calendar-day.activity-1{background:rgba(34,211,238,.08)}
html[data-theme="light"] .sales-calendar-day.activity-2{background:rgba(34,211,238,.13)}
html[data-theme="light"] .sales-calendar-day.activity-3{background:rgba(79,124,255,.12)}
html[data-theme="light"] .sales-calendar-day.activity-4{background:rgba(168,85,247,.13)}
html[data-theme="light"] .sales-calendar-day.selected{color:#fff}
html[data-theme="light"] .sales-calendar-controls select,html[data-theme="light"] .analytics-mode-field select{background:#fff;color:#182230;border-color:#d9e0e9}
html[data-theme="light"] .sales-overview-metric>span{color:#344054}
html[data-theme="light"] .sales-area-chart{border-color:#e3e8ef}
html[data-theme="light"] .sales-chart-grid line{stroke:#e6ebf2}
html[data-theme="light"] .sales-chart-labels text{fill:#667085}
html[data-theme="light"] .sales-summary-ring{background:#fff;border-color:#d9e0e9}

@media(max-width:1180px){
  .sales-analytics-shell{grid-template-columns:1fr}
  .sales-calendar-pane{border-right:0;border-bottom:1px solid var(--line)}
  .sales-calendar-pane,.sales-overview-pane{padding:22px}
  .sales-calendar-grid,.sales-calendar-weekdays{gap:9px}
  .sales-calendar-day{min-height:48px}
}
@media(max-width:760px){
  .sales-analytics-shell{margin:14px 0;border-radius:20px}
  .sales-calendar-pane,.sales-overview-pane{padding:17px 13px}
  .sales-analytics-title h3,.sales-overview-head h3{font-size:1.12rem}
  .sales-analytics-title p,.sales-overview-head p{font-size:.7rem}
  .sales-analytics-icon{width:39px;height:39px;flex-basis:39px;border-radius:12px}
  .sales-month-switcher{grid-template-columns:34px minmax(0,.88fr) minmax(0,1.15fr) minmax(0,.88fr) 34px;margin:18px 0 16px}
  .sales-month-arrow,.sales-month-label{height:39px;font-size:.68rem}
  .sales-calendar-weekdays,.sales-calendar-grid{gap:4px}
  .sales-calendar-weekdays{font-size:.57rem}
  .sales-calendar-blank,.sales-calendar-day{min-height:39px}
  .sales-calendar-day{border-radius:11px}.sales-calendar-day span{font-size:.74rem}.sales-calendar-day small{font-size:.5rem}
  .sales-calendar-controls{gap:6px;margin-top:16px;padding-top:14px}
  .sales-calendar-controls select,.analytics-mode-field select{height:40px;padding:0 7px;font-size:.69rem}
  .sales-overview-metrics{gap:9px;margin-bottom:22px}
  .sales-overview-metric{padding-top:10px;border-top-width:3px}
  .sales-overview-metric>span{font-size:.54rem;letter-spacing:.05em}
  .sales-overview-metric b{font-size:.86rem}.sales-overview-metric small{font-size:.58rem}
  .sales-overview-head{gap:10px}.analytics-mode-field{flex-basis:112px}
  .sales-area-chart{min-height:228px}
  .sales-chart-scroll svg{min-width:600px}
  .sales-chart-legend{justify-content:flex-start;margin-bottom:12px}
  .sales-summary-circles{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
  .sales-summary-ring{width:43px;height:43px}.sales-summary-ring i{width:17px;height:17px}
  .sales-summary-circles b{font-size:1.12rem}.sales-summary-circles small{font-size:.62rem}
}
@media(max-width:430px){
  .sales-calendar-pane,.sales-overview-pane{padding-inline:10px}
  .sales-month-switcher{grid-template-columns:30px minmax(0,.78fr) minmax(0,1.2fr) minmax(0,.78fr) 30px;gap:2px}
  .sales-month-arrow,.sales-month-label{font-size:.6rem;padding:0 3px}
  .sales-calendar-controls{grid-template-columns:.7fr 1.2fr .85fr}
  .sales-overview-metrics{grid-template-columns:1fr;gap:10px}
  .sales-overview-metric{display:grid;grid-template-columns:1fr auto;column-gap:10px;align-items:center}
  .sales-overview-metric>span,.sales-overview-metric small{grid-column:1}.sales-overview-metric b{grid-column:2;grid-row:1/3;text-align:right;max-width:150px}
  .sales-overview-head{display:grid;grid-template-columns:minmax(0,1fr) 108px}
  .sales-chart-scroll svg{min-width:560px}
}

/* BroyApps Manager 2.0.30 — reminder no-renew action */
.button.reminder-dismiss-button.icon-only{width:32px;min-width:32px;height:32px;min-height:32px;padding:0;display:grid;place-items:center;border-radius:9px;font-size:13px;line-height:1}
.reminder-no-renew-button{white-space:nowrap}
@media(max-width:760px){.reminder-no-renew-button{min-height:36px}}

/* 2.0.33 — quick priority filter for Jasdor accounts with exactly 2 available vouchers */
.jasdor-two-voucher-filter.active{
  border-color:rgba(168,239,98,.55);
  color:#d5ffad;
  background:rgba(146,220,85,.12);
  box-shadow:inset 0 0 0 1px rgba(146,220,85,.12);
}
html[data-theme="light"] .jasdor-two-voucher-filter.active{
  border-color:#9acb67;
  color:#37651d;
  background:#eef8e7;
}
@media(max-width:760px){
  .jasdor-toolbar .toolbar-right .jasdor-two-voucher-filter{
    grid-column:1/-1;
  }
}

/* 2.0.36 Kopken tools */
.nav-feature-group{display:grid;gap:4px;margin-top:2px}.nav-feature-label{display:flex;gap:11px;align-items:center;padding:8px 14px 4px;color:#666675;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.nav-feature-label .nav-icon{width:18px;text-align:center}.nav-subitem{margin-left:18px;text-decoration:none}.nav-subitem span:last-child{width:auto;text-align:left}@media(max-width:760px){.nav-feature-group{display:none}}


/* BroyApps Manager 2.0.41 — motion polish, dashboard hierarchy, and calendar UX */
.dashboard-welcome{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 16px;padding:20px 22px;border:1px solid #2a2a36;border-radius:22px;background:linear-gradient(120deg,rgba(27,27,36,.98),rgba(20,20,28,.98));box-shadow:0 14px 40px rgba(0,0,0,.12);animation:dashboardWelcomeIn .48s cubic-bezier(.2,.8,.2,1) both}
.dashboard-welcome:after{content:"";position:absolute;width:240px;height:240px;right:-85px;top:-125px;border-radius:50%;background:radial-gradient(circle,rgba(166,239,97,.16),rgba(83,119,255,.06) 48%,transparent 70%);pointer-events:none}
.dashboard-welcome-copy{position:relative;z-index:1}.dashboard-welcome h2{margin:5px 0 5px;font-size:clamp(20px,2.3vw,30px);letter-spacing:-.035em}.dashboard-welcome p{margin:0;color:var(--muted);font-size:11px;line-height:1.55}
.dashboard-live-status{position:relative;z-index:1;display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid rgba(168,239,98,.20);border-radius:999px;background:rgba(168,239,98,.08);color:#c3fa8e;font-size:10px;font-weight:900;white-space:nowrap}.dashboard-live-status i{width:7px;height:7px;border-radius:50%;background:#a8ef62;box-shadow:0 0 0 0 rgba(168,239,98,.38);animation:livePulse 2s infinite}
#view-dashboard .stat-card{animation:dashboardCardIn .5s cubic-bezier(.2,.8,.2,1) both;animation-delay:var(--card-delay,0ms)}
#view-dashboard .sales-analytics-shell,#view-dashboard .dashboard-lower-grid,#view-dashboard .weekly-sales-panel{animation:dashboardPanelIn .52s cubic-bezier(.2,.8,.2,1) .14s both}
.login-screen{overflow:hidden}.login-screen:before,.login-screen:after{content:"";position:absolute;border-radius:50%;filter:blur(2px);pointer-events:none;opacity:.72}.login-screen:before{width:420px;height:420px;left:-170px;top:-150px;background:radial-gradient(circle,rgba(168,239,98,.16),transparent 68%);animation:loginOrbA 9s ease-in-out infinite alternate}.login-screen:after{width:520px;height:520px;right:-220px;bottom:-230px;background:radial-gradient(circle,rgba(78,118,255,.18),rgba(164,73,239,.06) 45%,transparent 70%);animation:loginOrbB 11s ease-in-out infinite alternate}
.login-shell{position:relative;z-index:1;animation:loginShellIn .62s cubic-bezier(.18,.85,.25,1) both}.login-showcase-copy{animation:loginContentIn .58s cubic-bezier(.2,.8,.2,1) .10s both}.login-feature{animation:loginContentIn .5s cubic-bezier(.2,.8,.2,1) both}.login-feature:nth-child(1){animation-delay:.18s}.login-feature:nth-child(2){animation-delay:.24s}.login-feature:nth-child(3){animation-delay:.30s}.login-card>*{animation:loginContentIn .48s cubic-bezier(.2,.8,.2,1) both}.login-card>*:nth-child(1){animation-delay:.10s}.login-card>*:nth-child(2){animation-delay:.16s}.login-card>*:nth-child(3){animation-delay:.22s}.login-card>*:nth-child(4){animation-delay:.28s}.login-card>*:nth-child(5){animation-delay:.34s}.login-card>*:nth-child(6){animation-delay:.40s}.login-card .brand-mark{animation:brandBreathe 3.6s ease-in-out infinite}.login-exit{animation:loginFadeOut .18s ease both}.app-entering .sidebar{animation:appSideIn .45s cubic-bezier(.2,.8,.2,1) both}.app-entering .main-content{animation:appMainIn .52s cubic-bezier(.2,.8,.2,1) both}
.sales-calendar-controls select:focus,.analytics-mode-field select:focus{border-color:#8bd44f;box-shadow:0 0 0 3px rgba(168,239,98,.12)}.sales-month-arrow:active,.sales-month-label:active{transform:scale(.96)}
@keyframes loginShellIn{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}@keyframes loginContentIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes loginOrbA{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(45px,25px,0) scale(1.08)}}@keyframes loginOrbB{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(-45px,-20px,0) scale(1.06)}}@keyframes brandBreathe{0%,100%{transform:translateY(0);box-shadow:0 10px 28px rgba(157,235,91,.2)}50%{transform:translateY(-2px);box-shadow:0 14px 34px rgba(157,235,91,.28)}}@keyframes loginFadeOut{to{opacity:0;transform:scale(.992)}}@keyframes appSideIn{from{opacity:0;transform:translateX(-16px)}to{opacity:1;transform:none}}@keyframes appMainIn{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}@keyframes dashboardWelcomeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes dashboardCardIn{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}@keyframes dashboardPanelIn{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}@keyframes livePulse{0%{box-shadow:0 0 0 0 rgba(168,239,98,.34)}70%{box-shadow:0 0 0 7px rgba(168,239,98,0)}100%{box-shadow:0 0 0 0 rgba(168,239,98,0)}}
html[data-theme="light"] .dashboard-welcome{background:linear-gradient(120deg,#fff,#f8fafc);border-color:#dfe4ec;box-shadow:0 12px 34px rgba(31,41,55,.06)}html[data-theme="light"] .dashboard-welcome h2{color:#171923}html[data-theme="light"] .dashboard-live-status{color:#3e771e;background:rgba(132,205,75,.10);border-color:rgba(93,167,42,.22)}html[data-theme="light"] .dashboard-live-status i{background:#78c83b}
@media(max-width:760px){.dashboard-welcome{align-items:flex-start;padding:17px 16px;border-radius:18px}.dashboard-live-status{padding:7px 9px;font-size:9px}.dashboard-welcome p{font-size:10px}}
@media(prefers-reduced-motion:reduce){.login-screen:before,.login-screen:after,.login-shell,.login-showcase-copy,.login-feature,.login-card>*,.login-card .brand-mark,.app-entering .sidebar,.app-entering .main-content,.dashboard-welcome,#view-dashboard .stat-card,#view-dashboard .sales-analytics-shell,#view-dashboard .dashboard-lower-grid,#view-dashboard .weekly-sales-panel,.dashboard-live-status i{animation:none!important;transition:none!important}}
