/* 977 UI kit: tokens, page shell and generic layout. Imported from the accepted atlas v4 kit, then owned here. */
/* 977 CMS design kit: shared visual base adapted from the approved operations mockup. */
:root{--pink:#e6198a;--coral:#f2365a;--berry:#ad1768;--ink:#202b40;--body:#526078;--muted:#8491a5;--line:#e3e9f2;--wash:#f7f9fc;--green:#147e68;--gold:#956310;--red:#b83350;--blue:#4164a3;--shadow:0 9px 28px #25385408}
    *{box-sizing:border-box} [hidden]{display:none!important} html{scroll-behavior:smooth} body{margin:0;background:var(--wash);color:var(--ink);font:13px/1.5 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased} button,input,select{font:inherit} button{cursor:pointer} a{text-decoration:none;color:inherit} :focus-visible{outline:3px solid #a25bfa;outline-offset:2px}
    .app{display:grid;grid-template-columns:242px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:5}.brand{display:flex;align-items:center;gap:11px;padding:27px 23px 26px;border-bottom:1px solid var(--line)}.brand-mark{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;color:#fff;background:linear-gradient(145deg,var(--pink),var(--coral));box-shadow:0 7px 16px #e6198a36}.brand-mark svg{width:19px;height:19px}.brand-text{line-height:1.05;letter-spacing:-.035em;font-size:20px;font-weight:800}.brand-text span{font-size:10px;display:block;color:var(--muted);font-weight:700;letter-spacing:.16em;text-transform:uppercase;margin-top:5px}.mobile-menu{display:none;margin-left:auto}.nav-scroll{overflow-y:auto;padding:22px 12px 20px;flex:1}.nav-heading{margin:18px 12px 9px;font-size:10px;font-weight:800;color:#9aa5b5;letter-spacing:.15em;text-transform:uppercase}.nav-heading:first-child{margin-top:2px}.nav-link{display:flex;align-items:center;gap:12px;min-height:41px;padding:0 12px;border-radius:10px;color:#59677e;font-size:13px;font-weight:560;margin:2px 0}.nav-link:hover{background:#f7f8fb;color:var(--ink)}.nav-link.active{background:#fff1f8;color:#bb196d;font-weight:750}.nav-link.active svg{color:var(--pink)}.nav-count{margin-left:auto;min-width:22px;height:20px;display:grid;place-items:center;border-radius:6px;font-size:11px;font-weight:750;background:#f0f2f6;color:#6a7486}.sidebar-bottom{padding:15px 13px 16px;border-top:1px solid var(--line)}.workspace{display:flex;align-items:center;gap:10px;padding:10px 11px;border:1px solid var(--line);border-radius:11px;background:#fafbfc}.workspace-dot{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;background:#273149;color:#fff;font-size:12px;font-weight:800}.workspace b{display:block;font-size:12px}.workspace span:last-child{display:block;font-size:10px;color:var(--muted)}.sidebar-note{margin:12px 4px 0;font-size:10px;color:#a3adbc}
    svg.icon{width:17px;height:17px;flex:none;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}.main{min-width:0}.topbar{height:72px;border-bottom:1px solid var(--line);background:#fff;display:flex;align-items:center;gap:16px;padding:0 30px}.crumb{color:var(--muted);font-size:12px}.crumb strong{color:#32405a;font-weight:700}.topbar-actions{margin-left:auto;display:flex;align-items:center;gap:17px}.topbar-label{display:flex;gap:7px;align-items:center;color:var(--muted);font-size:12px}.live-dot{height:7px;width:7px;border-radius:50%;background:#31b092}.avatar{width:31px;height:31px;border-radius:10px;display:grid;place-items:center;background:#2c3650;color:#fff;font-weight:750;font-size:11px}.content{max-width:1540px;margin:auto;padding:26px 30px 62px}.preview-notice{display:inline-flex;align-items:center;gap:8px;color:#785b20;background:#fff8e9;border:1px solid #f5e9c5;border-radius:8px;padding:6px 10px;font-size:11px;font-weight:650;margin-bottom:20px}.preview-notice svg{width:13px;height:13px}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:20px}.eyebrow{color:var(--berry);text-transform:uppercase;letter-spacing:.15em;font-size:10px;font-weight:850;margin:0 0 5px}h1{margin:0;font-size:clamp(28px,3vw,36px);line-height:1.14;letter-spacing:-.045em;font-weight:790}.subtitle{color:var(--muted);margin:7px 0 0;font-size:13px}.head-actions{display:flex;gap:8px;flex-wrap:wrap}.button{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #d7dee9;background:#fff;border-radius:9px;padding:0 14px;font-weight:700;font-size:12px;color:#39465e;box-shadow:0 2px 4px #20305308;white-space:nowrap}.button:hover{border-color:#aebacf}.button.primary{color:#fff;border-color:var(--pink);background:linear-gradient(105deg,var(--pink),var(--coral));box-shadow:0 5px 13px #e6198a29}.button.quiet{border:0;box-shadow:none;background:transparent;color:var(--berry);padding:0 5px}.button svg{width:15px;height:15px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:17px}.metric{background:#fff;border:1px solid var(--line);border-radius:12px;padding:15px 17px;box-shadow:var(--shadow);min-width:0}.metric-top{display:flex;align-items:center;justify-content:space-between;color:#76849a;font-size:11px;font-weight:680}.metric-icon{width:29px;height:29px;display:grid;place-items:center;border-radius:8px;background:#f4f6fa;color:#7b8ba4}.metric-icon.pink{background:#fff1f8;color:var(--berry)}.metric-icon.green{background:#eaf8f3;color:var(--green)}.metric-icon.gold{background:#fff6e7;color:var(--gold)}.metric-icon.red{background:#fff0f2;color:var(--red)}.metric-icon svg{width:15px;height:15px}.metric-value{margin:3px 0 0;font-size:25px;font-weight:780;letter-spacing:-.04em;line-height:1.2}.metric-foot{font-size:10px;color:#9ba7b8;margin-top:4px}.panel{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);overflow:hidden}.panel-head{padding:17px 18px 13px;display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-head h2{margin:0;font-size:15px;letter-spacing:-.02em}.panel-head p{margin:3px 0 0;color:var(--muted);font-size:11px}.panel-note{color:#96a2b3;font-size:11px}.toolbar{display:flex;align-items:center;gap:8px;padding:0 18px 14px}.field{height:37px;min-width:140px;display:flex;align-items:center;gap:8px;border:1px solid #dbe2ec;border-radius:8px;padding:0 10px;color:#8b97a9;background:#fff}.field.search{flex:1;min-width:170px}.field:focus-within{border-color:var(--pink);box-shadow:0 0 0 3px #e6198a17}.field input,.field select{width:100%;min-width:0;border:0;outline:0;color:#344259;background:transparent;font-size:12px}.field input::placeholder{color:#9ca8b8}.field select{appearance:none;cursor:pointer}.field svg{width:15px;height:15px}.tabs{display:flex;gap:4px;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:0 16px;overflow-x:auto}.tab{border:0;border-bottom:2px solid transparent;background:transparent;padding:10px 10px 11px;margin-bottom:-1px;white-space:nowrap;color:#7a879a;font-size:11px;font-weight:700}.tab.active{color:var(--berry);border-bottom-color:var(--pink)}.tab small{color:#a2adba;margin-left:4px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{background:#fbfcfe;padding:11px 14px;color:#8995a8;font-size:10px;font-weight:760;letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid var(--line)}td{padding:10px 14px;border-bottom:1px solid #eef1f6;color:#56647a;font-size:11px;vertical-align:middle}tbody tr:hover{background:#fbfcff}tbody tr:last-child td{border-bottom:0}.name{font-size:12px;color:#2e3b52;font-weight:760}.sub{font-size:10px;color:#97a3b4;margin-top:2px}.art-cell{display:flex;align-items:center;gap:10px;min-width:200px}.thumb{width:35px;height:51px;object-fit:cover;border-radius:5px;background:#e8ebf0;flex:none}.poster{width:31px;height:45px;object-fit:cover;border-radius:4px;background:#e8ebf0;flex:none}.row-link{border:0;background:transparent;color:var(--berry);font-weight:750;font-size:11px;padding:5px 0;white-space:nowrap}.row-link:hover{text-decoration:underline}.table-foot{display:flex;justify-content:space-between;align-items:center;padding:12px 18px;border-top:1px solid var(--line);color:#98a4b6;font-size:11px}.empty{text-align:center;color:#8a97a9;padding:34px 18px;font-size:12px}.progress{height:5px;width:92px;background:#edf1f6;border-radius:99px;overflow:hidden}.progress span{display:block;height:100%;background:linear-gradient(90deg,var(--pink),var(--coral));border-radius:99px}.progress-label{font-size:10px;color:#8e9bae;margin-top:4px}.callout{display:flex;gap:10px;align-items:flex-start;background:#fff8f2;border:1px solid #f3e7d8;border-radius:10px;padding:11px 13px;margin-bottom:17px;color:#806337;font-size:11px}.callout svg{color:#bb8052;flex:none}
    .analytics-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(250px,1fr);gap:14px;margin-bottom:14px}.chart-wrap{padding:12px 20px 17px}.chart{height:210px;display:flex;align-items:end;gap:8px;border-bottom:1px solid #dce3ee;background:repeating-linear-gradient(to top,transparent 0,transparent 51px,#eff2f7 52px,#eff2f7 53px);padding:0 7px}.chart-col{height:100%;flex:1;display:flex;align-items:end;gap:3px;justify-content:center}.chart-col i,.chart-col b{display:block;width:min(13px,35%);border-radius:4px 4px 0 0;background:#e6198a99}.chart-col b{background:#f2365a54}.chart-days{display:flex;justify-content:space-around;color:#9ba7b8;font-size:10px;margin-top:8px}.legend{display:flex;gap:15px;color:#8d99ac;font-size:10px;margin-top:13px}.legend i{display:inline-block;width:8px;height:8px;border-radius:2px;background:#e6198a99;margin-right:5px}.legend i.light{background:#f2365a54}.breakdown{padding:3px 18px 16px}.break-row{margin:11px 0}.break-label{display:flex;justify-content:space-between;color:#56647a;font-size:11px;margin-bottom:5px}.break-label strong{color:#2e3b52}.break-track{height:7px;background:#f0f3f8;border-radius:99px;overflow:hidden}.break-track span{display:block;height:100%;background:linear-gradient(90deg,var(--pink),var(--coral));border-radius:99px}.break-track span.secondary{background:#8499bc}.series-row{display:flex;align-items:center;gap:9px}.series-row img{width:28px;height:39px;object-fit:cover;border-radius:4px}.analytics-bottom{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(250px,1fr);gap:14px}.insight-list{padding:0 18px 16px}.insight-line{display:flex;justify-content:space-between;padding:11px 0;border-top:1px solid #eef1f6;font-size:11px;color:#6f7c91}.insight-line strong{color:#35435a}
    .user-layout{display:grid;grid-template-columns:minmax(0,1fr) 314px;gap:14px;align-items:start}.user-layout .panel{min-width:0}.user-row{cursor:pointer}.user-row.selected{background:#fff6fa}.user-id{color:#9aa5b5;font-size:10px}.avatar-initials{width:33px;height:33px;display:grid;place-items:center;border-radius:10px;background:#f4eafa;color:#954775;font-weight:800;flex:none}.user-cell{display:flex;align-items:center;gap:9px}.detail-panel{padding:18px}.detail-top{display:flex;align-items:center;gap:11px}.detail-top .avatar-initials{width:42px;height:42px;font-size:14px}.detail-top h2{font-size:15px;margin:0}.detail-top p{margin:2px 0 0;color:#9ba7b8;font-size:10px}.detail-panel.detail-list{margin:0}.detail-line{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #eef1f6;padding:10px 0;font-size:11px}.detail-line dt{color:#99a5b5}.detail-line dd{margin:0;color:#334158;font-weight:700;text-align:right}.detail-title{font-size:11px;color:#8492a6;text-transform:uppercase;letter-spacing:.08em;margin:19px 0 6px}.activity-item{display:flex;gap:9px;padding:9px 0;border-top:1px solid #eef1f6;font-size:11px;color:#536179}.activity-dot{width:7px;height:7px;border-radius:50%;background:var(--pink);margin-top:5px;flex:none}.detail-empty{color:#94a1b3;font-size:11px;padding:30px 0;text-align:center}
    .crm-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(245px,.75fr);gap:14px}.crm-stack{display:grid;gap:14px;align-content:start}.segment{padding:12px 17px;border-top:1px solid #eef1f6}.segment:first-of-type{border-top:0}.segment-top{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#657289;margin-bottom:7px}.segment-top strong{color:#35435a}.crm-note{padding:13px 16px;background:#fff8f2;border:1px solid #f4e7d7;border-radius:11px;color:#806337;font-size:11px}
    .toast{position:fixed;bottom:22px;right:22px;max-width:min(360px,calc(100vw - 44px));border-radius:10px;padding:12px 16px;background:#263149;color:#fff;box-shadow:0 12px 30px #0d182e38;font-size:12px;z-index:50;opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .2s,transform .2s}.toast.show{opacity:1;transform:translateY(0)}
    @media(max-width:1200px){.app{grid-template-columns:67px minmax(0,1fr)}.brand{justify-content:center;padding:22px 0}.brand-text,.nav-heading,.nav-link span:not(.nav-count),.nav-count,.sidebar-bottom{display:none}.nav-scroll{padding:13px 9px}.nav-link{justify-content:center;padding:0}.content{padding-inline:22px}.topbar{padding-inline:22px}.user-layout{grid-template-columns:minmax(0,1fr) 280px}}
    @media(max-width:850px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-grid,.analytics-bottom,.crm-layout{grid-template-columns:1fr}.user-layout{grid-template-columns:1fr}.detail-panel{display:none}.detail-panel.show{display:block}.page-head{align-items:flex-start;flex-wrap:wrap}}
    @media(max-width:620px){.app{display:block}.sidebar{position:relative;height:auto;border-right:0;border-bottom:1px solid var(--line)}.brand{padding:12px 18px;justify-content:flex-start;border:0}.brand-text{display:block;font-size:16px}.brand-text span{display:none}.mobile-menu{display:grid;width:34px;height:34px;place-items:center;border:1px solid var(--line);background:#fff;border-radius:8px;color:#526078}.nav-scroll{display:none;border-top:1px solid var(--line);max-height:65vh}.sidebar.nav-open .nav-scroll{display:block}.sidebar.nav-open .nav-heading{display:block}.sidebar.nav-open .nav-link{justify-content:flex-start;padding:0 12px}.sidebar.nav-open .nav-link span:not(.nav-count){display:inline}.sidebar.nav-open .nav-count{display:grid}.topbar{height:50px;padding:0 17px}.topbar-label{display:none}.content{padding:20px 13px 45px}.metrics{gap:8px}.metric{padding:11px}.metric-value{font-size:22px}.head-actions{width:100%}.head-actions .button{flex:1}.toolbar{flex-wrap:wrap;padding-inline:12px}.field.search{flex-basis:100%}.field:not(.search){flex:1}.panel-head{padding-inline:12px}.tabs{padding-inline:7px}.table-foot{padding-inline:12px}.preview-notice{font-size:10px}.callout{font-size:10px}}
    @media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
/* Shell integration */
.brand-home{display:flex;align-items:center;gap:11px}
.brand-mark{font-size:19px;font-weight:800}
.nav-link svg{width:17px;height:17px;flex:none}
.preview-label{font-size:10px;font-weight:800;letter-spacing:.1em;color:#ad1768;background:#fff1f8;padding:5px 7px;border-radius:5px}
.message-stack{display:grid;gap:7px;margin-bottom:16px}.message{background:#f7f2fa;border:1px solid #eadcf4;border-radius:9px;padding:10px 12px;color:#59416c;font-size:12px}
/* Accessibility and shell helpers */
.skip-link{position:absolute;left:-999px;top:8px;z-index:100;background:#fff;border:2px solid var(--pink);border-radius:8px;padding:8px 12px;font-weight:700}.skip-link:focus{left:8px}
.nav-button{width:100%;border:0;background:transparent;text-align:left;font:inherit;cursor:pointer}
.kit-bare .content{max-width:640px;padding-top:6vh}
.kit-error-inline strong{display:block;font-size:64px;line-height:1;color:var(--pink)}.kit-error-inline h1{margin:8px 0}.kit-error-inline p{color:var(--muted);margin:0 0 18px}
