:root{--navy:#111d3d;--ink:#172342;--muted:#71809b;--line:#e7ebf4;--bg:#f5f7fc;--purple:#6650e8;--shadow:0 12px 36px rgba(29,43,83,.07)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:14px}.app-shell{min-height:100vh}.sidebar{width:248px;background:var(--navy);color:#fff;position:fixed;inset:0 auto 0 0;padding:26px 18px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none;font:800 20px Manrope;margin:2px 7px 40px}.brand small{display:block;font:600 9px 'DM Sans';letter-spacing:1.7px;color:#aab5d1;margin-top:3px}.brand-mark{width:42px;height:42px;border-radius:13px;background:#6954ed;display:grid;place-items:center;font-size:25px}.brand-mark span{font-size:13px}.nav{display:grid;gap:6px}.nav-label,.kicker{font-size:10px;letter-spacing:1.5px;font-weight:800;color:#8996b4}.nav-label{padding:0 12px 8px}.nav-link{display:flex;gap:13px;align-items:center;padding:12px 13px;color:#c4cce0;text-decoration:none;border-radius:10px;font-size:13px}.nav-link.active,.nav-link:hover{background:linear-gradient(100deg,#7258f4,#4d43bb);color:#fff}.nav-divider{height:1px;background:#ffffff1c;margin:16px 4px}.profile-mini{margin-top:auto;background:#1c2b52;border:1px solid #ffffff12;padding:13px;border-radius:13px;display:flex;gap:10px;align-items:center}.avatar{width:38px;height:38px;border-radius:50%;background:#dfd8ff;color:#5442c2;display:grid;place-items:center;font-weight:800}.profile-mini b,.profile-mini small{display:block}.profile-mini b{font-size:11px}.profile-mini small{font-size:10px;color:#aeb9d4;margin-top:4px}.main{margin-left:248px;min-height:100vh;padding:0 34px 25px;max-width:1800px}.topbar{height:72px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);margin-bottom:26px}.crumb{font-size:12px;color:var(--muted)}.crumb span{padding:0 9px;color:#b5bfd0}.crumb b{color:var(--ink)}.top-actions{display:flex;gap:16px;align-items:center}.status-dot{font-size:11px;color:#399b75}.icon-btn,.mobile-menu{border:1px solid var(--line);background:white;border-radius:10px;padding:9px 12px;color:var(--ink)}.mobile-menu{display:none}.page{display:none}.page.active{display:block}.hero{min-height:300px;border-radius:19px;overflow:hidden;background:linear-gradient(90deg,#121f42 0%,#1b2c51 53%,#344e72 100%);color:white;display:grid;grid-template-columns:1.1fr .9fr;position:relative}.hero-copy{padding:34px 38px;position:relative;z-index:2}.eyebrow{font-size:10px;letter-spacing:1.6px;color:#c6bfff;font-weight:800}.hero h1{font:800 clamp(24px,2.7vw,36px)/1.2 Manrope;max-width:690px;margin:17px 0 12px;letter-spacing:-1.2px}.hero p{color:#d4dced;max-width:570px;line-height:1.65}.hero-actions{display:flex;gap:10px;margin-top:23px;flex-wrap:wrap}.btn{border:0;border-radius:10px;padding:12px 17px;font:700 12px 'DM Sans';text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:12px;cursor:pointer}.btn-light{background:#fff;color:#26345a}.btn-outline{border:1px solid #aab8d7;color:#fff;background:#ffffff0b}.btn-primary{background:#5f4ce2;color:white}.hero-art{position:relative;min-height:300px;background:linear-gradient(90deg,#1b2c5100,#263c5a44),url('https://images.unsplash.com/photo-1556742049-0cfed4f6a45d?auto=format&fit=crop&w=1100&q=85') center/cover}.hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#172748 0%,#17274822 45%,#101c3a22)}.phone{position:absolute;z-index:2;left:35%;top:42px;width:145px;height:225px;border:7px solid #18213a;border-radius:24px;background:linear-gradient(150deg,#f8faff,#dce7ff);box-shadow:0 20px 50px #09152c88;transform:rotate(-7deg);display:flex;align-items:center;justify-content:center;flex-direction:column;color:#24365c}.phone-top{position:absolute;top:5px;width:42px;height:8px;border-radius:8px;background:#18213a}.ad-icon{font-size:55px;margin-top:10px}.phone b{font-size:10px;letter-spacing:1px}.ad-bars{display:flex;gap:5px;align-items:end;height:25px;margin-top:14px}.ad-bars i{width:12px;background:#6b55ed;border-radius:4px 4px 0 0;height:45%}.ad-bars i:nth-child(2){height:70%}.ad-bars i:nth-child(3){height:100%}.ad-bars i:nth-child(4){height:82%}.social-bubble{position:absolute;z-index:3;width:43px;height:43px;border-radius:14px;background:#fff;display:grid;place-items:center;font-size:25px;font-weight:800;box-shadow:0 10px 20px #07152b55}.instagram{top:76px;right:24%;color:#d83c8a}.facebook{top:165px;right:9%;color:#1877f2}.growth{position:absolute;z-index:3;right:9%;top:35px;color:#fff;font-size:66px;transform:rotate(-15deg)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:19px 0}.stat-card{display:flex;align-items:center;gap:12px;background:white;border:1px solid var(--line);border-radius:14px;padding:17px;text-decoration:none;color:var(--ink);min-width:0}.stat-card b{font:800 22px Manrope;display:block}.stat-card small{font-size:11px;color:var(--muted)}.stat-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;font-size:21px}.stat-arrow{margin-left:auto;color:#9aa6bd}.purple .stat-icon,.module-card.purple>span{background:#eeeaff;color:#6b53e7}.green .stat-icon,.module-card.green>span{background:#e5f8f0;color:#159b6d}.orange .stat-icon,.module-card.orange>span{background:#fff1e3;color:#df8b32}.blue .stat-icon,.module-card.blue>span{background:#e7f1ff;color:#3980d8}.indigo>span{background:#eceeff;color:#505bd4}.overview-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:15px}.panel{background:white;border:1px solid var(--line);border-radius:15px;padding:22px;margin-bottom:16px;box-shadow:0 4px 20px #1e2d4a05}.panel-heading{display:flex;align-items:center;justify-content:space-between}.panel h2{font:800 19px Manrope;margin:5px 0 10px}.panel h3{font:800 15px Manrope;margin:0 0 15px}.panel p{color:#596783;line-height:1.7}.round-icon{width:38px;height:38px;border-radius:11px;background:#f0edff;color:#6552dd;display:grid;place-items:center;font-size:18px}.objective-list{border-top:1px solid var(--line);margin-top:18px;padding-top:15px}.objective-list ul{padding-left:18px;color:#566480;line-height:1.8;font-size:12px}.progress-panel{text-align:center;background:linear-gradient(145deg,#fff,#f1efff)}.progress-panel .panel-heading{text-align:left}.progress-ring{width:130px;height:130px;border-radius:50%;margin:15px auto 10px;display:grid;place-items:center;background:conic-gradient(#6650e8 0deg,#e4e5f0 0deg);position:relative}.progress-ring:before{content:"";position:absolute;inset:11px;border-radius:50%;background:#fff}.progress-ring strong{position:relative;font:800 28px Manrope}.progress-label{font-size:13px}.muted{color:var(--muted)!important;font-size:12px}.progress-line{display:flex;justify-content:space-between;font-size:11px;margin-top:16px}.bar{height:7px;background:#e9eaf2;border-radius:10px;margin-top:7px;overflow:hidden}.bar i{display:block;width:0;height:100%;background:#6552df;border-radius:10px}.section-head{display:flex;align-items:end;justify-content:space-between;margin:28px 0 13px}.section-head h2{font:800 20px Manrope;margin:5px 0}.module-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.module-card{border:1px solid var(--line);border-radius:14px;background:white;padding:17px;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;gap:10px;min-height:145px}.module-card>span{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-size:20px}.module-card b{font-size:12px}.module-card small{color:var(--muted);font-size:10px;line-height:1.5}.quote-banner{margin-top:20px;background:linear-gradient(105deg,#293e9a,#6650e8);border-radius:15px;padding:20px 24px;color:white;display:flex;align-items:center;gap:15px}.quote-banner>span{font-size:26px}.quote-banner b,.quote-banner small{display:block}.quote-banner small{color:#d8d8ff;margin-top:4px}.quote-banner a{margin-left:auto;color:white;font-size:11px;text-decoration:none}.page-intro{padding:13px 0 22px}.page-intro h1{font:800 31px Manrope;margin:7px 0}.page-intro p{color:var(--muted);max-width:760px;line-height:1.7}.target-chip,.count-pill{display:inline-block;background:#eeebff;color:#5e4bd0;border-radius:30px;padding:7px 11px;font-size:11px;font-weight:700}.data-form{max-width:920px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.data-form label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:700;color:#34415e;margin-bottom:15px}.data-form input,.data-form select,.data-form textarea{width:100%;border:1px solid #dfe4ee;background:#fbfcff;border-radius:9px;padding:12px;font:400 13px 'DM Sans';color:var(--ink);outline:none}.data-form input:focus,.data-form select:focus,.data-form textarea:focus{border-color:#7968eb;box-shadow:0 0 0 3px #7968eb19}.data-form .consent{display:flex;flex-direction:row;align-items:flex-start;font-weight:500;line-height:1.6}.consent input{width:auto;margin-top:2px}.form-note{font-size:11px!important;color:#8a94a9!important}.empty-state,.chart-empty{padding:24px;text-align:center;color:#8b96aa;background:#fafbfe;border:1px dashed #dce2ed;border-radius:11px;font-size:12px}.analytics-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.chart-row{display:grid;grid-template-columns:115px 1fr 35px;align-items:center;gap:8px;margin:13px 0;font-size:11px}.chart-track{height:9px;border-radius:10px;background:#edf0f6;overflow:hidden}.chart-track i{height:100%;display:block;background:linear-gradient(90deg,#6853e8,#38a5d7);border-radius:10px}.compact .stat-card{min-height:75px}.settings-list>div{padding:14px 0;border-bottom:1px solid var(--line);display:grid;gap:7px}.settings-list>div:last-child{border:0}.settings-list small{font-size:10px;letter-spacing:1px;color:#8490a7;font-weight:800}.settings-list b{font-size:13px;line-height:1.6}footer{border-top:1px solid var(--line);padding:22px 0;margin-top:30px;color:#8792a7;font-size:10px;letter-spacing:1px;display:flex;justify-content:space-between}footer span{letter-spacing:0}.response-item{padding:12px;border:1px solid var(--line);border-radius:10px;margin-top:9px;font-size:12px}.response-item small{display:block;color:var(--muted);margin-top:5px}@media(max-width:1100px){.main{padding:0 22px 25px}.module-grid{grid-template-columns:repeat(3,1fr)}.hero h1{font-size:28px}}@media(max-width:760px){.sidebar{transform:translateX(-100%);transition:transform .25s}.sidebar.open{transform:translateX(0);box-shadow:20px 0 50px #0b173855}.main{margin-left:0;padding:0 14px 20px}.topbar{height:60px;margin-bottom:17px}.mobile-menu{display:block}.crumb{margin-right:auto;margin-left:12px}.status-dot{display:none}.hero{grid-template-columns:1fr;min-height:450px}.hero-copy{padding:26px 22px 10px}.hero h1{font-size:27px}.hero-art{min-height:180px;background-position:center 53%}.phone{width:100px;height:150px;top:15px;left:38%;border-width:5px}.ad-icon{font-size:35px}.phone b{font-size:7px}.social-bubble{width:32px;height:32px;font-size:19px}.growth{font-size:43px}.stats-grid{grid-template-columns:repeat(2,1fr);gap:9px}.stat-card{padding:12px;gap:9px}.stat-card b{font-size:18px}.stat-icon{width:35px;height:35px}.overview-grid,.analytics-grid{grid-template-columns:1fr}.module-grid{grid-template-columns:repeat(2,1fr)}.module-card{min-height:125px;padding:13px}.section-head{align-items:start;gap:8px;flex-direction:column}.quote-banner{padding:16px;flex-wrap:wrap}.quote-banner a{margin-left:0;width:100%}.form-grid{grid-template-columns:1fr}.page-intro h1{font-size:27px}.panel{padding:17px}.compact .stat-card{min-height:65px}footer{flex-direction:column;gap:8px}}

/* Reliable mobile navigation: visible menu control, backdrop and touch-safe drawer */
.sidebar-backdrop{display:none}
@media(max-width:900px){
  .mobile-menu{display:inline-flex!important;align-items:center;justify-content:center;gap:7px;min-width:76px;min-height:42px;padding:9px 12px;border:1px solid #dfe4ee;border-radius:11px;background:#fff;color:#172342;font-size:13px;font-weight:700;position:relative;z-index:42;flex-shrink:0;cursor:pointer}
  .sidebar{width:min(84vw,320px);height:100dvh;overflow-y:auto;overscroll-behavior:contain;transform:translateX(-105%);visibility:hidden;transition:transform .24s ease,visibility .24s;z-index:51;box-shadow:none}
  .sidebar.open{transform:translateX(0);visibility:visible;box-shadow:20px 0 50px #0b173855}
  .sidebar-backdrop:not([hidden]){display:block;position:fixed;inset:0;background:rgba(8,17,39,.48);backdrop-filter:blur(2px);z-index:50}
  .topbar{position:sticky;top:0;background:var(--bg);z-index:30;gap:8px}
  .crumb{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
}
@media(max-width:760px){
  .mobile-menu{display:inline-flex!important}
  .hero-actions .btn{min-height:44px}
  .module-card,.stat-card{cursor:pointer}
}

/* Mobile drawer hardening: fixed overlay drawer independent of desktop layout flow */
@media (max-width: 900px) {
  html, body { overflow-x: hidden; }
  .sidebar#sidebar {
    position: fixed !important; left: 0 !important; top: 0 !important; bottom: 0 !important;
    width: min(84vw, 320px) !important; height: 100vh !important; height: 100dvh !important;
    display: flex !important; flex-direction: column !important;
    transform: translate3d(-110%, 0, 0) !important; visibility: hidden !important;
    transition: transform .28s ease, visibility .28s ease !important;
    z-index: 1002 !important; overflow-y: auto !important;
  }
  .sidebar#sidebar.open {
    transform: translate3d(0, 0, 0) !important; visibility: visible !important;
    box-shadow: 16px 0 42px rgba(0,0,0,.28) !important;
  }
  #sidebarBackdrop:not([hidden]) {
    display: block !important; position: fixed !important; inset: 0 !important;
    background: rgba(8,17,39,.58) !important; z-index: 1001 !important;
  }
  #menuBtn { display: inline-flex !important; position: relative !important; z-index: 1003 !important; pointer-events: auto !important; }
}

/* Hash navigation fallback: public pages remain reachable even if app.js fails. */
.page:target{display:block!important}
@media(max-width:900px){#sidebar.open{transform:translate3d(0,0,0)!important;visibility:visible!important}#sidebarBackdrop:not([hidden]){display:block!important}}
