:root{--bg:#f4f7fb;--card:#fff;--text:#182230;--muted:#6b7280;--line:#e8edf3;--brand:#5b5bd6;--brand2:#7474e8;--green:#16a34a;--amber:#d97706;--red:#dc2626;--sidebar:#101827}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text)}a{text-decoration:none;color:inherit}.app{display:flex;min-height:100vh}.sidebar{width:250px;background:var(--sidebar);color:#cbd5e1;position:fixed;inset:0 auto 0 0;padding:22px 14px;overflow:auto}.brand{font-weight:800;font-size:22px;color:#fff;padding:0 12px 22px;letter-spacing:.2px}.brand small{display:block;font-size:11px;color:#8ea0b9;font-weight:600;margin-top:3px}.nav-title{font-size:10px;text-transform:uppercase;letter-spacing:1.1px;color:#64748b;padding:18px 12px 8px}.nav a{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:10px;margin:3px 0;font-size:14px}.nav a:hover,.nav a.active{background:#1d2a3d;color:white}.nav .ico{width:21px;text-align:center}.main{margin-left:250px;width:calc(100% - 250px)}.topbar{height:70px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:5}.topbar h1{font-size:20px;margin:0}.userchip{display:flex;align-items:center;gap:10px;color:#475569;font-size:13px}.avatar{width:36px;height:36px;border-radius:50%;background:#eef2ff;color:var(--brand);display:grid;place-items:center;font-weight:800}.content{padding:28px;max-width:1500px;margin:auto}.grid{display:grid;gap:18px}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.card{background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:0 4px 18px rgba(15,23,42,.03)}.card-pad{padding:20px}.metric{padding:20px}.metric .label{font-size:13px;color:var(--muted);font-weight:600}.metric .value{font-size:28px;font-weight:800;margin-top:7px}.metric .sub{font-size:12px;color:#94a3b8;margin-top:5px}.section-head{display:flex;align-items:center;justify-content:space-between;margin:24px 0 12px}.section-head h2{font-size:17px;margin:0}.btn{border:0;border-radius:10px;padding:10px 14px;font-weight:700;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:7px}.btn-primary{background:var(--brand);color:white}.btn-primary:hover{background:#4a4ac3}.btn-light{background:#f1f5f9;color:#334155}.btn-danger{background:#fee2e2;color:#b91c1c}.btn-success{background:#dcfce7;color:#166534}.badge{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800}.badge.green{background:#dcfce7;color:#166534}.badge.amber{background:#fef3c7;color:#92400e}.badge.red{background:#fee2e2;color:#991b1b}.badge.gray{background:#eef2f7;color:#475569}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;font-size:13px}.table th,.table td{padding:13px 14px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}.table th{font-size:11px;color:#64748b;text-transform:uppercase;letter-spacing:.5px;background:#fafcff}.table tr:last-child td{border-bottom:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.field label{display:block;font-size:12px;font-weight:800;color:#475569;margin-bottom:6px}.input,.select,.textarea{width:100%;border:1px solid #dce3ec;background:white;border-radius:10px;padding:11px 12px;font:inherit;color:#1e293b;outline:none}.input:focus,.select:focus,.textarea:focus{border-color:#9b9bea;box-shadow:0 0 0 3px #ededff}.textarea{min-height:110px;resize:vertical}.helper{font-size:11px;color:#94a3b8;margin-top:5px}.alert{padding:12px 14px;border-radius:10px;margin-bottom:16px;font-size:13px}.alert.success{background:#dcfce7;color:#166534}.alert.error{background:#fee2e2;color:#991b1b}.offer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.offer{padding:18px}.offer-top{display:flex;justify-content:space-between;gap:14px}.offer-logo{width:48px;height:48px;border-radius:12px;background:#eef2ff;color:var(--brand);font-weight:900;display:grid;place-items:center}.offer h3{font-size:16px;margin:13px 0 4px}.offer p{margin:0;color:#64748b;font-size:12px}.earn{font-size:22px;font-weight:900;margin:15px 0}.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}.toolbar .input,.toolbar .select{width:auto;min-width:180px}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:22px;background:linear-gradient(135deg,#eef2ff,#f8fafc 55%,#edfdf5)}.login-card{width:min(440px,100%);background:#fff;border:1px solid #e7ebf2;border-radius:20px;padding:30px;box-shadow:0 20px 60px rgba(15,23,42,.09)}.login-card h1{margin:0 0 6px;font-size:27px}.login-card p{margin:0 0 22px;color:#64748b}.stack{display:grid;gap:14px}.kpi-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.mini{border:1px solid var(--line);border-radius:12px;padding:14px}.mini b{display:block;font-size:20px}.mini span{font-size:11px;color:#64748b}.code{background:#0f172a;color:#dbeafe;border-radius:10px;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;overflow:auto}.empty{padding:34px;text-align:center;color:#94a3b8}.footer-note{font-size:11px;color:#94a3b8;margin-top:20px}.mobile-nav{display:none}@media(max-width:1100px){.grid-4{grid-template-columns:repeat(2,1fr)}.offer-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:800px){.sidebar{display:none}.main{margin-left:0;width:100%}.content{padding:18px}.topbar{padding:0 18px}.grid-4,.grid-3,.grid-2,.offer-grid,.form-grid{grid-template-columns:1fr}.mobile-nav{display:block}.kpi-strip{grid-template-columns:1fr}.toolbar .input,.toolbar .select{width:100%}}

/* EarnFlow V2 */
.muted{color:#64748b;line-height:1.6}.pre{white-space:pre-wrap;color:#475569;line-height:1.65}.eyebrow{font-size:10px;font-weight:900;letter-spacing:1.25px;color:#6366f1;text-transform:uppercase;margin-bottom:6px}.brand{display:flex;align-items:center;gap:10px}.brand-mark{width:36px;height:36px;border-radius:11px;background:linear-gradient(135deg,#6366f1,#8b5cf6);display:grid;place-items:center;font-size:17px;box-shadow:0 8px 20px rgba(99,102,241,.25)}.brand>div:last-child{font-size:18px}.hero-strip{background:linear-gradient(135deg,#101827,#17233a 55%,#273657);color:white;border-radius:18px;padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px;box-shadow:0 14px 34px rgba(15,23,42,.08)}.hero-strip h2{font-size:22px;margin:0 0 6px}.hero-strip p{margin:0;color:#b8c4d7;font-size:13px;line-height:1.55;max-width:720px}.hero-strip .eyebrow{color:#a5b4fc}.hero-actions,.actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.hero-strip .btn-light{background:#fff;color:#172033}.section-head.compact{margin:0 0 12px}.section-head.compact h2,.section-head.compact h3{margin:0;font-size:16px}.section-head.compact a{font-size:12px;color:#6366f1;font-weight:800}.rank-row{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line);gap:14px}.rank-row:last-child{border-bottom:0}.rank-row b{display:block;font-size:13px}.rank-row span{display:block;font-size:11px;color:#94a3b8;margin-top:4px}.rank-row strong{font-size:14px}.feature-list{display:grid;gap:0}.feature-list>div{padding:12px 0;border-bottom:1px solid var(--line)}.feature-list>div:last-child{border-bottom:0}.feature-list b{display:block;font-size:13px;margin-bottom:3px}.feature-list span{font-size:12px;color:#64748b;line-height:1.5}.date-pair{display:grid;grid-template-columns:1fr 1fr;gap:8px}.goal-row{display:grid;grid-template-columns:1.15fr 1fr .7fr 40px;gap:10px;align-items:end;border:1px solid var(--line);padding:12px;border-radius:12px;margin-bottom:10px;background:#fbfcfe}.icon-btn{width:38px;height:42px;border:0;border-radius:10px;background:#fee2e2;color:#991b1b;font-size:21px;cursor:pointer}.filter-card{background:#fff;border:1px solid var(--line);padding:12px;border-radius:14px;box-shadow:0 4px 18px rgba(15,23,42,.025)}.compact-input{min-width:140px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.inline-status{display:grid;grid-template-columns:130px 180px auto;gap:6px;min-width:390px}.page-back{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;font-size:12px;color:#64748b}.page-back a{font-weight:800;color:#4f46e5}.sep{border:0;border-top:1px solid var(--line);margin:20px 0}.checkline{font-size:13px;color:#475569;display:flex;gap:8px;align-items:center}.checkline input{accent-color:#5b5bd6}.offer-logo.large{width:62px;height:62px;font-size:18px}.offer-detail h2{margin-bottom:8px}.offer-meta{display:flex;gap:8px;flex-wrap:wrap;margin:-4px 0 14px}.offer-meta span{font-size:10px;background:#f1f5f9;border-radius:999px;padding:5px 8px;color:#64748b}.calc-card{box-shadow:none;background:#fbfcff}.calc-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.calc-head span{font-size:11px;color:#64748b}.profit-preview{margin-top:10px;background:#eefbf3;color:#166534;padding:9px 10px;border-radius:9px;font-size:12px}.campaign-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.profile-id{background:#f8fafc;border:1px solid var(--line);border-radius:12px;padding:14px}.profile-id span{display:block;font-size:11px;color:#64748b}.profile-id b{display:block;font-size:20px;margin-top:3px}.login-links{display:flex;justify-content:space-between;gap:12px;margin-top:18px;font-size:12px}.login-links a{color:#4f46e5;font-weight:800}.alert.amber{background:#fff7ed;color:#9a3412}.public-status{background:#f4f7fb}.status-shell{max-width:1100px;margin:0 auto;padding:30px 18px 50px}.status-shell h1{margin:8px 0 4px;font-size:27px}.status-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#f1f5f9;border-radius:10px;padding:8px 10px;font-size:12px}.menu-btn{display:none;border:0;background:#f1f5f9;border-radius:9px;width:38px;height:38px;font-size:18px;cursor:pointer}.table td .helper{display:inline-block}.table .input,.table .select{padding:8px 9px;font-size:12px}.metric{transition:transform .15s ease,box-shadow .15s ease}.metric:hover{transform:translateY(-1px);box-shadow:0 8px 24px rgba(15,23,42,.055)}
@media(max-width:1100px){.goal-row{grid-template-columns:1fr 1fr}.goal-row .icon-btn{align-self:end}.inline-status{grid-template-columns:1fr;min-width:210px}}
@media(max-width:800px){.sidebar{display:block;transform:translateX(-105%);transition:transform .2s ease;z-index:30;box-shadow:12px 0 34px rgba(15,23,42,.2)}body.sidebar-open .sidebar{transform:translateX(0)}.menu-btn{display:block}.topbar{justify-content:flex-start;gap:12px}.topbar .userchip{margin-left:auto}.hero-strip{align-items:flex-start;flex-direction:column}.hero-actions{width:100%}.hero-actions .btn{flex:1}.goal-row{grid-template-columns:1fr}.date-pair{grid-template-columns:1fr}.login-links{flex-direction:column}.status-shell{padding-top:18px}.campaign-head{flex-direction:column}.toolbar .btn{width:100%}}

/* EarnFlow V3 */
.badge.purple{background:#ede9fe;color:#6d28d9}.top-actions{display:flex;align-items:center;gap:12px;margin-left:auto}.notif-btn{position:relative;width:38px;height:38px;border-radius:11px;background:#f8fafc;border:1px solid var(--line);display:grid;place-items:center;font-size:16px}.notif-btn span{position:absolute;right:-5px;top:-5px;min-width:18px;height:18px;padding:0 4px;border-radius:10px;background:#ef4444;color:white;font-size:9px;display:grid;place-items:center;font-weight:900;border:2px solid white}.textarea.small{min-height:85px}.file-input{margin-top:7px;padding:8px}.offer-list-title{display:flex;align-items:center;gap:10px}.offer-list-title img,.offer-logo-img{width:48px;height:48px;object-fit:contain;border-radius:12px;background:#fff;border:1px solid var(--line);padding:5px}.offer-logo-img.large{width:68px;height:68px}.offer-logo.tiny{width:38px;height:38px;border-radius:10px;font-size:11px}.v3-offer{padding:0;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease}.v3-offer:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(15,23,42,.08)}.offer-card-banner{width:100%;height:112px;object-fit:cover;background:#f8fafc;border-bottom:1px solid var(--line)}.offer-content{padding:18px}.offer-brand-line{display:flex;gap:11px;align-items:center}.offer-brand-line h3{margin:0 0 4px}.offer-brand-line p{margin:0}.offer-badges{display:flex;gap:5px;align-items:flex-start;flex-wrap:wrap;justify-content:flex-end}.offer-short{min-height:38px;margin-top:14px!important;line-height:1.55}.v3-offer .earn{display:flex;flex-direction:column;font-size:24px;margin:14px 0 12px}.v3-offer .earn span{font-size:10px;text-transform:uppercase;letter-spacing:.8px;color:#94a3b8;margin-bottom:2px}.v3-offer .offer-meta{margin:0 0 14px}.offer-detail-hero{overflow:hidden;position:relative;min-height:180px;background:linear-gradient(135deg,#111827,#27364e)}.offer-banner{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.3}.offer-detail-overlay{position:relative;padding:28px;color:white;background:linear-gradient(90deg,rgba(15,23,42,.94),rgba(15,23,42,.55),rgba(15,23,42,.1));min-height:180px;display:flex;align-items:center}.offer-detail-brand{display:flex;align-items:center;gap:18px;max-width:820px}.offer-detail-brand h2{font-size:27px;margin:4px 0 7px}.offer-detail-brand p{margin:0;color:#dbe5f2;line-height:1.55}.offer-detail-brand .offer-meta{margin:0}.offer-detail-brand .offer-meta span{background:rgba(255,255,255,.12);color:#e2e8f0}.offer-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0}.offer-facts>div{border:1px solid var(--line);background:#fafcff;border-radius:11px;padding:11px}.offer-facts span{display:block;font-size:10px;text-transform:uppercase;color:#94a3b8;font-weight:800;letter-spacing:.5px}.offer-facts b{display:block;font-size:13px;margin-top:4px}.trend-chart{height:190px;display:flex;align-items:flex-end;gap:10px;padding:18px 4px 0}.trend-day{height:100%;flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;min-width:0}.trend-bars{height:132px;width:100%;display:flex;align-items:flex-end;justify-content:center;gap:4px}.trend-bars i,.trend-bars b{display:block;width:min(18px,36%);border-radius:6px 6px 2px 2px;min-height:4px}.trend-bars i{background:#c7d2fe}.trend-bars b{background:#6366f1}.trend-day>span{font-size:10px;font-weight:800;color:#64748b;margin-top:7px}.trend-day small{font-size:9px;color:#94a3b8;margin-top:2px}.chart-legend{display:flex;justify-content:center;gap:16px;margin-top:7px;font-size:10px;color:#64748b}.chart-legend span{display:flex;align-items:center;gap:5px}.chart-legend i,.chart-legend b{display:block;width:9px;height:9px;border-radius:3px}.chart-legend i{background:#c7d2fe}.chart-legend b{background:#6366f1}.notification-list{display:grid;gap:10px}.notification-item{padding:15px 17px;display:flex;gap:13px;align-items:flex-start}.notification-item.unread{border-color:#a5b4fc;background:#fbfbff;box-shadow:inset 3px 0 #6366f1}.notif-icon{width:34px;height:34px;border-radius:10px;background:#eef2ff;color:#4f46e5;display:grid;place-items:center;font-weight:900;flex:0 0 auto}.notification-item b{font-size:13px}.notification-item p{font-size:12px;color:#64748b;margin:4px 0 6px}.notification-item span{font-size:10px;color:#94a3b8}.dashboard-notice{border:1px solid #fed7aa}.import-summary .grid{margin-top:14px}.compact-hero{padding-top:18px;padding-bottom:18px}.compact-hero h2{font-size:19px}.admin-offer-layout{grid-template-columns:minmax(0,1.1fr) minmax(460px,.9fr)}
@media(max-width:1150px){.admin-offer-layout{grid-template-columns:1fr}.offer-facts{grid-template-columns:1fr}.v3-offers{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.top-actions{gap:7px}.topbar .userchip{margin-left:0}.userchip>div:last-child{display:none}.notif-btn{width:35px;height:35px}.v3-offers{grid-template-columns:1fr}.offer-detail-brand{align-items:flex-start}.offer-detail-overlay{padding:20px}.offer-detail-brand h2{font-size:22px}.offer-detail-brand .offer-logo-img.large,.offer-detail-brand .offer-logo.large{width:52px;height:52px}.trend-chart{height:170px}.offer-card-banner{height:100px}}
