/* Blue: visits; violet: deals; cyan: profiles; amber: progress. */
:root{--ink:#183d44;--muted:#5f777b;--primary:#246a73;--nav:#10353e;--canvas:#dfe9e6;--line:#cadbd7}
body{background:radial-gradient(ellipse at 90% 0,#e9e6d9 0,transparent 42%),radial-gradient(ellipse at 0 75%,#cce4e1 0,transparent 40%),var(--canvas);background-attachment:fixed}
.sidebar{background:radial-gradient(ellipse at 0 0,#235563 0,transparent 55%),linear-gradient(160deg,#103e46,#092a33);color:#edf2eb;border-right:1px solid #1c4750;box-shadow:5px 0 24px #153b4320;padding-top:30px;isolation:isolate}
.nav-button{transition:background .18s,color .18s}.sidebar .nav-button{color:#b8cecd;padding:12px 16px;min-height:48px;font-size:14px;gap:12px;border-radius:9px;position:relative}.sidebar .nav-button:hover{background:#ffffff0e;color:#fff5dc}.sidebar .nav-button.active{background:linear-gradient(115deg,#ddcc9d,#c7b583);color:#183c42;font-weight:600;box-shadow:none}.sidebar .nav-button.active:before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;border-radius:3px;background:#f3e0ab}.sidebar .nav-icon{font-size:16px;color:#9bbdbe}.sidebar .nav-button.active .nav-icon{color:#1c5258}.sidebar nav{gap:9px;margin-top:28px}
.topbar .eyebrow{color:#6775ab}.topbar h1{letter-spacing:-.5px}.primary{background:linear-gradient(110deg,#4569e5,#7655dd);box-shadow:0 5px 14px #5760d724}.secondary.active{background:var(--primary)}
button:focus-visible,a:focus-visible{outline:3px solid #8497ff;outline-offset:3px}input:focus,textarea:focus,select:focus{outline:3px solid #6c82ff24;border-color:#7186e8}
.panel{background:#eff4f1;border-color:#cbded8;box-shadow:0 7px 22px #27356107}.panel-head h2{position:relative;padding-left:13px}.panel-head h2:before{content:'';position:absolute;left:0;top:5px;bottom:5px;width:4px;border-radius:4px;background:var(--panel-accent,#657af0)}
.dashboard{--chart-teal:#5286ff;--chart-gold:#f5b544;--chart-grey:#94a3bd}
.overview-meta{padding:5px 2px}.live-status{color:#317666;background:#e2f5ef;border:1px solid #c4e9dd;padding:5px 10px;border-radius:30px}.live-status>i{background:#18a984;box-shadow:0 0 0 4px #1aac8718}.refresh-cadence{border-color:#acdacb}
.dashboard .metric,.period-summary .metric{overflow:hidden;border:0!important;color:#fff;border-radius:17px;box-shadow:0 9px 22px #365aac23;transition:transform .18s,box-shadow .18s}
.dashboard .metric:after,.period-summary .metric:after{content:'';position:absolute;width:125px;height:125px;right:-40px;top:-53px;border-radius:50%;border:20px solid #ffffff13;pointer-events:none}
.dashboard .metric:hover{transform:translateY(-2px);box-shadow:0 12px 27px #365aac33}
.dashboard .metric:first-child,.period-summary .metric:first-child{background:linear-gradient(120deg,#2e62d8,#4184ed)}
.dashboard .metric:nth-child(2),.period-summary .metric:nth-child(2){background:linear-gradient(120deg,#6743cd,#9a57dc)}
.dashboard .metric:nth-child(3),.period-summary .metric:nth-child(3){background:linear-gradient(120deg,#087b94,#10a2ac)}
.dashboard .metric:nth-child(4),.period-summary .metric:nth-child(4){background:linear-gradient(120deg,#b46519,#d58b28)}
.dashboard .metric .metric-label,.dashboard .metric .metric-sub,.dashboard .metric .arrow,.dashboard .metric .metric-source,.dashboard .metric .deal-values span,.dashboard .metric .text-button,.period-summary .metric-label{color:#ffffffd9}
.dashboard .metric .metric-value,.dashboard .metric .deal-values button{color:white}.dashboard .metric .deal-values button+button{border-left:1px solid #ffffff40;padding-left:14px}.dashboard .metric .arrow{color:white!important}.dashboard .metric .metric-value{font-weight:700}
.dashboard .panel{border-color:#dfe6f3;box-shadow:0 7px 22px #27356108}.lead-charts>.panel:first-child{background:linear-gradient(140deg,#eff4f1 35%,#dce9f2);--panel-accent:#5286ff}
.lead-charts>.panel:nth-child(2){background:radial-gradient(ellipse at 95% 0,#443586 0,transparent 65%),linear-gradient(145deg,#182747,#182039);border-color:#253459;color:#fff;--panel-accent:#a990ff;box-shadow:0 12px 28px #18274724}
.lead-charts>.panel:nth-child(2) .chart-subtitle,.lead-charts>.panel:nth-child(2) .ring-center span,.lead-charts>.panel:nth-child(2) .ring-legend em,.lead-charts>.panel:nth-child(2) .chart-empty{color:#becbed}
.lead-charts>.panel:nth-child(2) .ring-legend button{background:transparent;color:#fff;border-color:#62739b55}.lead-charts>.panel:nth-child(2) .ring-chart svg{filter:drop-shadow(0 0 10px #5f82ff22)}
.equal-charts>.chart-panel:nth-child(2n+1){background:linear-gradient(140deg,#edf5ef 35%,#d9eeed);--panel-accent:#09a8af}.equal-charts>.chart-panel:nth-child(2n){background:linear-gradient(140deg,#f0f1f4 35%,#e5e1f2);--panel-accent:#9061e1}
.column-bar{background:linear-gradient(to top,#356de7,#79aaff);box-shadow:0 0 13px #5286ff22;border-radius:5px 5px 0 0}.column-bar>span{background:linear-gradient(to top,#e79b20,#ffd079)!important}.column-item:hover{background:#dde8ff70}.columns{background:repeating-linear-gradient(to top,transparent 0,transparent 43px,#dce5f7 44px,transparent 45px)}
.rank-index{background:#edf0ff;color:#6a75bc;border-radius:6px;text-align:center;padding:2px 4px}.rank-track,.bar-track{height:9px;background:#e8edf7;border-radius:8px}.rank-track>span,.bar-fill{background:linear-gradient(90deg,#3b83e9,#39c4cf);border-radius:8px}.equal-charts>.chart-panel:nth-child(2n) .rank-track>span,.equal-charts>.chart-panel:nth-child(2n) .bar-fill{background:linear-gradient(90deg,#7361dc,#b889ef)}
.rank-row:hover{background:#eaf1fd80}.rank-number strong{font-size:23px}.bar-row:nth-of-type(3n+2) .bar-fill{background:linear-gradient(90deg,#7560df,#b07deb)}.bar-row:nth-of-type(3n) .bar-fill{background:linear-gradient(90deg,#d78b24,#f1bd58)}
.progress-summary>strong,.coverage-summary>strong{color:#5264d3}.status-stack,.coverage-track{height:16px;border-radius:10px;background:#e5eaf6}.priority-link{background:linear-gradient(100deg,#eef0ff,#f6f2ff);border:1px solid #e5e3fa;border-radius:10px;color:#5f51aa}.coverage-track>span{background:linear-gradient(90deg,#21a4b4,#54c5c2)}
.chart-foot i,.ring-legend i,.status-legend i{border-radius:50%}.badge{background:#edf0ff;color:#5365bb}.empty{background:#f9faff;border-color:#dfe6f5}.mobile-nav{background:#103640f5;color:#bfd1cf;backdrop-filter:blur(16px);box-shadow:0 -5px 22px #2435680a}.mobile-nav button{color:#bfd1cf}.mobile-nav button.active{color:#163b43;background:#d9c898;border-radius:12px}
.login-page{position:relative}.login-intro{position:relative;padding:38px 0}.login-intro:before{content:'';position:absolute;z-index:-1;width:290px;height:290px;top:-65px;left:-95px;border-radius:50%;border:45px solid #8193ed12;box-shadow:0 0 0 42px #7999ed08}.login-intro h1{color:#253966;font-size:50px}.login-intro .eyebrow{color:#6878bc}.login-card{border-color:#e1e6f6;box-shadow:0 20px 65px #3e53921b;background:linear-gradient(150deg,#f4f3e9,#dfeae4)}
.login-card .remember-login{display:flex;align-items:center;gap:9px;margin:20px 0 0;min-height:36px;cursor:pointer;font-size:13px}.login-card .remember-login input{width:18px;height:18px;margin:0;accent-color:#576bea;flex-shrink:0}.remember-login span{display:flex;gap:10px;align-items:center}.remember-login small{color:#637393;font-size:12px}.login-card .remember-hint{margin:0 0 0 27px;font-size:11px;color:#7b87a1}.login-card button.primary{margin-top:20px}
@media(max-width:700px){.dashboard .metric,.period-summary .metric{border-radius:14px}.dashboard .metric .deal-values button+button{padding-left:8px}.live-status{padding:4px 7px}.refresh-cadence{display:none}.login-intro{padding:12px 0 18px}.login-intro h1{font-size:32px}.login-intro:before{width:190px;height:190px;left:-105px;top:-90px;border-width:30px}.login-card{padding:25px}.panel-head h2{padding-left:11px}.rank-number strong{font-size:21px}.dashboard .metric:after{width:85px;height:85px;right:-35px;top:-40px}.overview-meta{align-items:center}}
@media(prefers-reduced-motion:reduce){.metric,.nav-button{transition:none!important}.dashboard .metric:hover{transform:none}}

/* User-supplied originals stay unchanged; CSS frames only trim surrounding whitespace. */
.project-logo{display:block;position:relative;width:190px;aspect-ratio:2.65;overflow:hidden;background:#fff;border-radius:6px;flex-shrink:0}
.project-logo img{position:absolute;width:145%;max-width:none;height:auto;left:50%;top:50%;transform:translate(-50%,-50%)}
.login-page{max-width:1360px;grid-template-columns:minmax(0,1.4fr) minmax(320px,1fr);gap:0;padding:50px 42px}
.login-intro{align-self:stretch;min-height:620px;padding:0;overflow:hidden;border-radius:24px 0 0 24px;background:#142d40}
.login-intro:before{display:none}.login-photo{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:50% 50%}
.login-intro:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0c193b00 35%,#071d35bd 100%)}
.login-photo-caption{position:absolute;z-index:1;bottom:46px;left:42px}.login-intro .eyebrow{color:#ffffffd9;font-size:14px;letter-spacing:5px}.login-intro h1{color:white;font-size:46px;margin:13px 0 0;letter-spacing:4px;text-shadow:0 2px 15px #14213d55}
.login-card{align-self:stretch;border-radius:0 24px 24px 0;padding:46px 42px;box-shadow:18px 18px 65px #3e539216;display:flex;flex-direction:column;justify-content:center}.login-card .project-logo{margin-bottom:8px;background:transparent}.login-card .project-logo img{mix-blend-mode:multiply}.login-card h2{margin:12px 0 4px}.login-card .muted{margin:0 0 4px}.login-card #login-error:empty{display:none}
.side-brand{display:flex;flex-direction:column;align-items:center;gap:15px;padding:0 0 27px;border-bottom:1px solid #ffffff20}.side-brand .project-logo{width:100%;border-radius:0;background:transparent}.side-brand .project-logo img,.mobile-project-logo .project-logo img{filter:grayscale(1) invert(1) brightness(1.45) sepia(.12);mix-blend-mode:screen}.side-brand>span:last-child{color:#dacba4;font-size:12px;font-weight:500;letter-spacing:5px;padding-left:5px}
.topbar{position:relative;isolation:isolate;overflow:hidden;min-height:130px;background:#123c45;border:1px solid #28505a;border-radius:18px;padding:24px 28px;box-shadow:0 6px 20px #27356109}
.topbar-photo{position:absolute;z-index:-2;right:0;top:0;width:58%;height:100%;object-fit:cover;object-position:50% 54%}
.topbar:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#103b45 30%,#103b45ed 46%,#103b451c 95%)}
.topbar .user-area{align-self:flex-start;padding:5px 8px;background:#113943e6;border:1px solid #ffffff25;border-radius:9px;color:#f2f3e8}.topbar .user-area .text-button{color:#efd8a6}.topbar h1{color:#f4f3e8}.topbar .eyebrow{color:#decca3}.mobile-project-logo{display:none}
@media(max-width:1050px) and (min-width:701px){.login-page{padding:35px 24px;grid-template-columns:1fr 1fr}.login-card{padding:32px}.login-photo-caption{left:28px}.login-intro h1{font-size:36px}}
@media(max-width:700px){
.login-page{display:block;padding:0 0 22px;min-height:calc(100vh - 31px)}.login-intro{height:210px;min-height:0;border-radius:0}.login-photo{object-position:50% 46%}.login-photo-caption{left:25px;bottom:38px}.login-intro h1{font-size:28px;letter-spacing:3px;margin:5px 0}.login-intro .eyebrow{font-size:11px;letter-spacing:3px}
.login-card{position:relative;margin:-20px 16px 0;padding:25px;border-radius:18px;box-shadow:0 10px 36px #25365515}.login-card .project-logo{width:170px;margin-bottom:4px}.login-card h2{font-size:21px}.login-card label{margin-top:15px}.login-card .remember-login{margin-top:13px}.login-card button.primary{margin-top:15px}.login-card .hint{margin:15px 0 0}
.main-shell{padding-top:14px}.topbar{min-height:116px;padding:14px 16px;border-radius:15px;gap:4px}.topbar h1{font-size:23px;margin:4px 0 0}.topbar-heading>.eyebrow{display:none}.mobile-project-logo{display:block}.mobile-project-logo .project-logo{width:123px;border-radius:3px;background:transparent}.topbar-photo{width:72%;object-position:40% 55%}.topbar:before{background:linear-gradient(90deg,#103b45 27%,#103b45eb 45%,#103b4533 100%)}.topbar .user-area{padding:4px;gap:1px;max-width:108px}.topbar .user-area .text-button{min-height:30px;padding:1px 5px}
}

/* Unified line icons keep the navigation consistent across phones and desktops. */
.sidebar .nav-button{min-height:56px;padding:9px 10px;border:1px solid transparent;border-radius:14px;gap:12px;letter-spacing:.2px}
.nav-icon{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border:1px solid #b7cdca24;border-radius:11px;background:#ffffff08;color:#9fc4c4;transition:background .18s,border-color .18s,color .18s,transform .18s}
.nav-icon svg{width:19px;height:19px;display:block;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.sidebar .nav-button:hover .nav-icon{color:#f4e4b7;border-color:#d8c99455;background:#ffffff10;transform:translateY(-1px)}
.sidebar .nav-button.active{background:linear-gradient(118deg,#e2d2a5,#c7b17a);box-shadow:0 8px 22px #061f2428;color:#153d43}
.sidebar .nav-button.active:before{top:13px;bottom:13px;background:#fff0bf}
.sidebar .nav-button.active .nav-icon{color:#174d52;border-color:#315e5d20;background:#ffffff52;box-shadow:inset 0 0 0 1px #ffffff30}
.nav-label{white-space:nowrap}
.sidebar{overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#d9c79366 transparent;scroll-padding-block:18px}
.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track{background:transparent}.sidebar::-webkit-scrollbar-thumb{background:#d9c79366;border-radius:999px}.sidebar::-webkit-scrollbar-thumb:hover{background:#e5d5a688}
.side-brand,.sidebar nav{flex:0 0 auto}.sidebar nav{padding-bottom:22px}
@media(max-width:700px){.mobile-nav button{gap:2px}.mobile-nav .nav-icon{width:29px;height:29px;flex-basis:29px;border:0;background:transparent;border-radius:9px}.mobile-nav .nav-icon svg{width:18px;height:18px}.mobile-nav button.active .nav-icon{background:#ffffff45;color:#143f44}.mobile-nav .nav-label{font-size:10px}}
