:root{--ink:#171b25;--muted:#727783;--paper:#f4f2ed;--card:#fff;--line:#e5e1d9;--accent:#f15a3a;--accent-soft:#fff0eb;--green:#4f8065;--green-soft:#eaf3ed;--violet:#7770a7;--shadow:0 18px 50px rgba(22,26,36,.08);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}.brand{display:flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;line-height:1.15}.brand-light{color:#fff}.brand-mark{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--accent);color:#fff;font-size:12px;letter-spacing:.02em}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.18em;color:var(--accent)}.eyebrow.light{color:#ffad9b}.login-screen{min-height:100vh;display:grid;grid-template-columns:minmax(360px,1.05fr) minmax(420px,.95fr)}.login-story{background:var(--ink);color:#fff;padding:48px 6vw;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.login-story:after{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(255,255,255,.1);border-radius:50%;right:-210px;bottom:-170px;box-shadow:0 0 0 75px rgba(255,255,255,.025),0 0 0 150px rgba(255,255,255,.018)}.story-copy{position:relative;z-index:1;max-width:680px}.story-copy h1{font-family:Georgia,serif;font-size:clamp(52px,6.5vw,94px);font-weight:400;line-height:.94;letter-spacing:-.055em;margin:24px 0}.story-copy h1 em{color:#ff8268}.story-copy p{max-width:520px;color:#b9bdc8;font-size:19px;line-height:1.55}.story-proof{position:relative;z-index:1;color:#c9ccd4;font-size:13px;display:flex;gap:9px;align-items:center}.pulse{width:8px;height:8px;border-radius:50%;background:#68bd86;box-shadow:0 0 0 5px rgba(104,189,134,.12);display:inline-block}.login-panel{display:grid;place-items:center;padding:50px;background:#f7f6f2}.login-card{width:min(430px,100%)}.portal-switch{background:#e9e6df;border-radius:14px;padding:5px;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-bottom:58px}.portal-switch button{border:0;background:transparent;border-radius:10px;padding:11px 8px;color:var(--muted);font-size:13px;font-weight:650}.portal-switch button.active{background:#fff;color:var(--ink);box-shadow:0 3px 12px rgba(20,24,32,.08)}.login-heading h2{font-family:Georgia,serif;font-size:42px;font-weight:400;letter-spacing:-.035em;margin:12px 0 10px}.login-heading p{color:var(--muted);line-height:1.55;margin:0 0 32px}.login-card label,.form-field{display:grid;gap:8px;font-size:12px;font-weight:750;letter-spacing:.03em;margin-bottom:18px}.login-card input,.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid #dcd8d0;border-radius:12px;background:#fff;padding:14px 15px;color:var(--ink);outline:0;transition:.2s}.login-card input:focus,.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(241,90,58,.1)}.btn{border:0;border-radius:12px;padding:12px 17px;font-weight:750;display:inline-flex;align-items:center;justify-content:center;gap:12px}.btn-primary{background:var(--accent);color:#fff}.btn-secondary{background:var(--ink);color:#fff}.btn-ghost{background:#fff;border:1px solid var(--line);color:var(--ink)}.btn-wide{width:100%;padding:15px}.btn-small{padding:8px 11px;font-size:12px}.demo-fill{display:block;margin:18px auto 0;border:0;background:transparent;color:var(--muted);text-decoration:underline;font-size:12px}.form-error{color:#b83a27;background:#fff0eb;padding:10px 12px;border-radius:9px;font-size:12px;margin-bottom:14px}.login-foot{position:absolute;bottom:24px;color:#9b9da4;font-size:11px}.app-shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{background:#eeece6;border-right:1px solid var(--line);padding:28px 22px;position:fixed;inset:0 auto 0 0;width:250px;display:flex;flex-direction:column;z-index:10}.portal-badge{margin:26px 0 20px;padding:10px 12px;border:1px solid #ddd9d0;border-radius:12px;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.12em}.main-nav{display:grid;gap:4px}.nav-item{border:0;background:transparent;border-radius:11px;padding:11px 12px;color:#656a74;text-align:left;display:flex;align-items:center;gap:12px;font-size:13px;font-weight:650}.nav-item .nav-icon{width:24px;height:24px;border:1px solid #d5d1c9;border-radius:8px;display:grid;place-items:center;font-size:10px}.nav-item:hover{background:rgba(255,255,255,.55)}.nav-item.active{color:var(--ink);background:#fff;box-shadow:0 5px 18px rgba(25,28,37,.06)}.nav-item.active .nav-icon{background:var(--ink);color:#fff;border-color:var(--ink)}.sidebar-bottom{margin-top:auto}.system-state{display:flex;gap:11px;align-items:flex-start;padding:13px 10px;border-top:1px solid #ddd9d0;border-bottom:1px solid #ddd9d0}.system-state strong,.system-state small{display:block}.system-state strong{font-size:11px}.system-state small{font-size:9px;color:#8c9098;margin-top:3px}.logout-button{width:100%;border:0;background:transparent;padding:16px 10px 0;display:flex;justify-content:space-between;color:#777b83;font-size:12px}.workspace{grid-column:2;min-width:0}.topbar{height:82px;background:rgba(244,242,237,.92);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 42px;position:sticky;top:0;z-index:6}.topbar-context{font-size:13px;font-weight:800}.topbar-date{display:block;font-size:10px;color:var(--muted);margin-top:4px}.topbar-actions{display:flex;align-items:center;gap:10px}.icon-button{width:34px;height:34px;border:1px solid var(--line);background:#fff;border-radius:11px;color:var(--accent);font-size:8px}.avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#d9c8b3;color:#5b4632;font-weight:800}.user-mini{font-size:11px}.user-mini strong,.user-mini span{display:block}.user-mini span{color:var(--muted);margin-top:2px}.menu-button{display:none;border:0;background:transparent;font-size:20px}.page-content{padding:42px;max-width:1500px;margin:auto;outline:0}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:30px}.page-head h1{font-family:Georgia,serif;font-size:44px;font-weight:400;letter-spacing:-.04em;margin:6px 0}.page-head p{margin:0;color:var(--muted);max-width:620px;line-height:1.5}.head-actions{display:flex;gap:10px;flex-wrap:wrap}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:28px}.metric-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:20px;min-height:140px;display:flex;flex-direction:column;justify-content:space-between}.metric-label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.11em}.metric-value{font-family:Georgia,serif;font-size:42px}.metric-foot{font-size:10px;color:#8a8f97}.dashboard-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.panel{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px}.panel-wide{grid-column:1/-1}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.panel-head h2{font-size:15px;margin:0}.panel-head span{font-size:10px;color:var(--muted)}.empty-state{padding:35px 12px;text-align:center;color:var(--muted);font-size:13px;border:1px dashed var(--line);border-radius:13px}.action-list,.record-list{display:grid;gap:9px}.action-row,.record-row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:12px;border-radius:12px;background:#f8f7f4}.row-mark{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);font-weight:800}.row-copy strong,.row-copy span{display:block}.row-copy strong{font-size:12px}.row-copy span{font-size:10px;color:var(--muted);margin-top:4px}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.quick-card{border:1px solid var(--line);background:#fff;border-radius:14px;text-align:left;padding:16px;min-height:105px}.quick-card:hover{border-color:#c9c4bb;transform:translateY(-1px)}.quick-card b,.quick-card span{display:block}.quick-card b{font-size:13px;margin:13px 0 5px}.quick-card span{font-size:10px;color:var(--muted)}.data-table{width:100%;border-collapse:collapse;font-size:12px}.data-table th{text-align:left;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.12em;padding:11px;border-bottom:1px solid var(--line)}.data-table td{padding:13px 11px;border-bottom:1px solid #eeeae3;vertical-align:middle}.data-table tr:last-child td{border:0}.status{display:inline-flex;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:800;letter-spacing:.04em}.status.active,.status.completed{background:var(--green-soft);color:var(--green)}.status.finished,.status.not_started{background:#efefee;color:#777}.status.upcoming,.status.in_progress{background:#eeeefe;color:var(--violet)}.status.in_review{background:var(--accent-soft);color:var(--accent)}.hero-card{background:var(--ink);color:#fff;border-radius:24px;padding:30px;display:grid;grid-template-columns:1.2fr .8fr;gap:24px;margin-bottom:18px;overflow:hidden;position:relative}.hero-card:after{content:"";position:absolute;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(241,90,58,.35),transparent 68%);right:-70px;top:-80px}.hero-card h2{font-family:Georgia,serif;font-weight:400;font-size:36px;margin:10px 0;letter-spacing:-.03em}.hero-card p{color:#b8bdc8;line-height:1.55;max-width:620px}.hero-progress{align-self:center;position:relative;z-index:1}.progress-meta{display:flex;justify-content:space-between;font-size:10px;color:#bac0ca;margin-bottom:8px}.progress-track{height:7px;border-radius:9px;background:rgba(255,255,255,.14);overflow:hidden}.progress-fill{height:100%;background:var(--accent);border-radius:9px}.roadmap{display:grid;gap:10px}.roadmap-step{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:13px;padding:14px;border:1px solid var(--line);border-radius:14px}.step-number{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#f0eee9;font-size:11px;font-weight:800}.roadmap-step.current{border-color:#f4a18f;background:#fff8f5}.roadmap-step.done .step-number{background:var(--green);color:#fff}.roadmap-step h3{font-size:13px;margin:0}.roadmap-step p{font-size:10px;color:var(--muted);margin:4px 0 0}.action-dialog{width:min(520px,calc(100% - 30px));border:0;border-radius:20px;padding:28px;box-shadow:0 30px 90px rgba(20,23,31,.25)}.action-dialog::backdrop{background:rgba(20,23,31,.48);backdrop-filter:blur(3px)}.dialog-close{position:absolute;right:16px;top:14px;border:0;background:#f0eee9;border-radius:50%;width:30px;height:30px}.dialog-head h2{font-family:Georgia,serif;font-weight:400;font-size:30px;margin:6px 0}.dialog-head p{color:var(--muted);font-size:12px;line-height:1.5;margin-bottom:24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.form-field.full{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}.toast-region{position:fixed;right:24px;bottom:24px;z-index:100;display:grid;gap:8px}.toast{background:var(--ink);color:#fff;padding:13px 16px;border-radius:12px;box-shadow:var(--shadow);font-size:12px;animation:toast-in .25s ease}.toast.error{background:#a63e2b}@keyframes toast-in{from{transform:translateY(8px);opacity:0}}@media(max-width:1000px){.metric-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.quick-grid{grid-template-columns:repeat(2,1fr)}.hero-card{grid-template-columns:1fr}.login-story{padding:38px}.story-copy h1{font-size:62px}}@media(max-width:760px){.login-screen{grid-template-columns:1fr}.login-story{min-height:36vh}.story-copy h1{font-size:48px;margin:14px 0}.story-copy p,.story-proof{display:none}.login-panel{padding:34px 22px}.portal-switch{margin-bottom:36px}.login-foot{display:none}.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:translateX(0)}.workspace{grid-column:1}.topbar{padding:0 18px}.menu-button{display:block}.user-mini{display:none}.page-content{padding:28px 18px}.page-head{align-items:flex-start;flex-direction:column}.page-head h1{font-size:36px}.metric-grid{grid-template-columns:1fr 1fr}.quick-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.data-table{min-width:640px}.panel.table-panel{overflow:auto}}@media(max-width:440px){.metric-grid{grid-template-columns:1fr}.portal-switch button{font-size:11px}.login-heading h2{font-size:36px}}

/* Teal alpine visual system inspired by the supplied reference. */
:root{--ink:#073f50;--muted:#63848a;--paper:#e7f2f0;--card:#f9fcfb;--line:#cfe2df;--accent:#26b7bb;--accent-soft:#dff5f3;--green:#19867d;--green-soft:#dff3ee;--violet:#317f91;--shadow:0 18px 50px rgba(3,57,70,.12)}
body{background:var(--paper)}
.login-screen{display:grid;grid-template-columns:1fr;place-items:center;min-height:100vh;padding:clamp(16px,4vw,58px);background:#76bdbc;position:relative;overflow:hidden}
.login-screen:before,.login-screen:after{content:"";position:absolute;border:18px solid rgba(218,255,250,.12);width:70vw;height:70vw;transform:rotate(23deg);border-radius:44%;pointer-events:none}
.login-screen:before{left:-35vw;top:-45vw}.login-screen:after{right:-38vw;bottom:-50vw}
.login-scene{width:min(1360px,100%);height:min(860px,calc(100vh - 116px));min-height:min(480px,calc(100vh - 116px));border-radius:22px;overflow:hidden;position:relative;color:#ecffff;background:linear-gradient(180deg,#02556a 0%,#047e95 46%,#59c3c2 78%,#c7e6d8 100%);box-shadow:0 28px 70px rgba(0,54,65,.28),0 3px 9px rgba(0,54,65,.22);isolation:isolate}
.scene-header{height:94px;display:flex;align-items:center;padding:0 clamp(28px,5vw,70px);position:relative;z-index:5}
.scene-header .brand{font-size:13px;text-transform:none;letter-spacing:.02em}.scene-header .brand-mark{border:1px solid rgba(224,255,252,.75);background:transparent;border-radius:50%;width:36px;height:36px}
.scene-nav{margin-left:auto;display:flex;gap:58px}.scene-nav a{color:#d8f4f1;text-decoration:none;font-size:12px;letter-spacing:.09em}.scene-nav a:hover{color:#fff}.scene-menu{margin-left:55px;font-size:21px;color:#d8f4f1}
.scene-content{position:relative;z-index:5;text-align:center;width:min(850px,calc(100% - 40px));margin:88px auto 0}
.scene-kicker{font-size:10px;font-weight:750;letter-spacing:.28em;color:#8fe2df}.scene-content h1{font-size:clamp(46px,5.7vw,82px);font-weight:280;letter-spacing:.11em;line-height:.91;margin:20px 0 15px;text-shadow:0 3px 20px rgba(0,48,60,.14)}.scene-content h1 strong{font-weight:600;color:#fff}.scene-content>p{font-size:15px;letter-spacing:.04em;color:#d4f2ef;margin:0 auto 26px}
.scene-login-form{display:grid;grid-template-columns:1fr 1fr 128px;gap:9px;width:min(720px,100%);margin:0 auto;text-align:left;position:relative}.scene-login-form label{display:grid;gap:6px}.scene-login-form label span{font-size:9px;letter-spacing:.12em;color:#b9eae7;text-transform:uppercase;padding-left:3px}.scene-login-form input{height:48px;border:1px solid rgba(223,255,251,.34);border-radius:2px;background:rgba(0,68,82,.32);backdrop-filter:blur(9px);padding:0 14px;color:#fff;outline:0}.scene-login-form input::placeholder{color:rgba(223,255,251,.57)}.scene-login-form input:focus{border-color:#83e0dc;background:rgba(0,68,82,.48)}.scene-submit{align-self:end;height:48px;border:1px solid rgba(220,255,250,.28);border-radius:2px;background:#43c2c1;color:#f2ffff;font-size:10px;font-weight:800;letter-spacing:.14em}.scene-submit:hover{background:#64d1ce}.scene-login-form .form-error{grid-column:1/-1;text-align:center;background:#8c423d;color:#fff;border-radius:2px;margin-top:2px}.scene-demo{color:#d1eeeb;margin-top:14px;font-size:10px;text-decoration:none;opacity:.72}.scene-demo:hover{opacity:1}
.landscape{position:absolute;z-index:2;left:0;right:0;bottom:0;height:47%;overflow:hidden}.landscape:after{content:"";position:absolute;left:0;right:0;bottom:0;height:31%;background:#003c51;clip-path:polygon(0 33%,6% 42%,13% 35%,21% 48%,31% 40%,40% 55%,49% 46%,58% 61%,67% 48%,76% 56%,86% 42%,94% 49%,100% 37%,100% 100%,0 100%)}
.mountain{position:absolute;bottom:14%;display:block;transform-origin:bottom}.mountain-a{left:10%;width:38%;height:63%;background:#07586d;clip-path:polygon(0 100%,48% 15%,100% 100%)}.mountain-a-light{left:10%;width:25%;height:63%;background:linear-gradient(135deg,#60ceca,#16869a);clip-path:polygon(0 100%,73% 15%,100% 100%,72% 72%)}.mountain-b{left:31%;width:47%;height:92%;background:#045569;clip-path:polygon(0 100%,44% 0,100% 100%)}.mountain-b-light{left:31%;width:31%;height:92%;background:linear-gradient(135deg,#72d4ce,#1590a0);clip-path:polygon(0 100%,66% 0,100% 100%,71% 58%)}.mountain-c{right:4%;width:37%;height:57%;background:#056075;clip-path:polygon(0 100%,48% 12%,100% 100%)}.mountain-c-light{right:22%;width:20%;height:57%;background:linear-gradient(135deg,#65cfca,#188a9b);clip-path:polygon(0 100%,88% 12%,100% 100%,75% 49%)}
.tree-line{position:absolute;z-index:4;left:0;right:0;bottom:10%;height:35%;display:flex;align-items:flex-end;justify-content:space-around}.tree-line i{display:block;width:4.8%;height:70%;background:#00465a;clip-path:polygon(50% 0,65% 34%,58% 34%,78% 68%,62% 68%,88% 100%,12% 100%,38% 68%,22% 68%,42% 34%,35% 34%)}.tree-line i:nth-child(3n){height:100%}.tree-line i:nth-child(4n){height:48%}.tree-line i:nth-child(5n){height:82%}
.scene-status{position:absolute;z-index:6;left:36px;bottom:24px;font-size:9px;letter-spacing:.08em;color:#a9d7d6}.scene-status .pulse{background:#61d9b2;box-shadow:0 0 0 4px rgba(97,217,178,.15)}
.sidebar{background:#064e60;border-color:#0a6174;color:#d9f3f1}.sidebar .brand{color:#fff}.sidebar .brand-mark{background:#39c0bf}.sidebar .portal-badge{color:#a8d3d2;border-color:rgba(200,240,237,.18);background:rgba(255,255,255,.04)}.sidebar .nav-item{color:#fff}.sidebar .nav-item:hover{background:rgba(255,255,255,.07)}.sidebar .nav-item.active{background:transparent;color:#fff;box-shadow:none;font-weight:800}.sidebar .nav-item .nav-icon{border-color:rgba(210,245,242,.25)}.sidebar .nav-item.active .nav-icon{background:#22aeb3;border-color:#22aeb3}.sidebar .system-state{border-color:rgba(210,245,242,.16)}.sidebar .system-state small{color:#8bb9b9}.sidebar .logout-button{color:#b4d8d7}.topbar{background:rgba(231,242,240,.9);border-color:#c9dfdc}.btn-primary{background:#159da5}.btn-primary:hover{background:#087f8b}.btn-secondary,.hero-card{background:#064e60}.btn-ghost{background:#f8fcfb;border-color:#c9dfdc}.row-mark{background:#dff5f3;color:#0b929a}.action-row,.record-row{background:#eff7f5}.quick-card{background:#fbfefd}.hero-card:after{background:radial-gradient(circle,rgba(52,196,195,.42),transparent 68%)}.progress-fill{background:#43c2c1}.avatar{background:#99d9d4;color:#064e60}.action-dialog{background:#f4fbf9}.dialog-close{background:#dff0ed}.roadmap-step.current{border-color:#71c7c3;background:#f2fbf9}
@media(max-width:760px){.login-screen{padding:0}.login-scene{height:100vh;min-height:680px;border-radius:0}.scene-header{height:76px;padding:0 22px}.scene-header .brand span:last-child{font-size:10px}.scene-nav{display:none}.scene-menu{margin-left:auto}.scene-content{margin-top:48px}.scene-content h1{font-size:43px}.scene-content>p{font-size:12px;max-width:320px}.scene-login-form{grid-template-columns:1fr;width:min(360px,100%);gap:11px}.scene-login-form .form-error{position:static}.scene-submit{margin-top:4px}.landscape{height:36%}.scene-status{left:20px;bottom:16px}.sidebar{background:#064e60}}
.google-login-wrap{width:min(1000px,100%);margin:28px auto 0;display:grid;justify-items:center;gap:10px}#google-signin{width:220px;max-width:calc(100vw - 40px);height:72px;padding:0 20px;font-size:17px;letter-spacing:.08em;border-radius:20px;font-weight:800}

/* Protected channel map imported from the legacy YT Channels workbook. */
.channel-toolbar{display:grid;grid-template-columns:minmax(260px,1.6fr) repeat(3,minmax(135px,.7fr));gap:14px;margin-bottom:18px;padding:16px 18px}.channel-toolbar label{display:grid;gap:7px;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.channel-toolbar input,.channel-toolbar select{width:100%;height:42px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);padding:0 12px;outline:0}.channel-toolbar input:focus,.channel-toolbar select:focus{border-color:#5ac4c2;box-shadow:0 0 0 3px rgba(38,183,187,.12)}.channel-result-meta{margin:0 2px 10px;color:var(--muted);font-size:11px}.channel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.channel-card{background:var(--card);border:1px solid var(--line);border-radius:15px;overflow:hidden}.channel-card[open]{border-color:#79c9c6;box-shadow:0 12px 32px rgba(3,57,70,.08)}.channel-card.is-history{background:#eef3f2;opacity:.86}.channel-card summary{list-style:none;display:grid;grid-template-columns:auto 1fr auto;gap:11px;align-items:center;padding:16px;cursor:pointer}.channel-card summary::-webkit-details-marker{display:none}.channel-card summary:hover{background:#f0f9f7}.channel-dot{width:10px;height:10px;border-radius:50%;background:#8ca5a5;box-shadow:0 0 0 4px rgba(99,132,138,.12)}.channel-dot.active{background:#1aa589;box-shadow:0 0 0 4px rgba(26,165,137,.12)}.channel-dot.removed{background:#df6654;box-shadow:0 0 0 4px rgba(223,102,84,.12)}.channel-dot.sold{background:#836db2;box-shadow:0 0 0 4px rgba(131,109,178,.12)}.channel-title{min-width:0}.channel-title strong,.channel-title small{display:block}.channel-title strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.channel-title small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;color:var(--muted);font-size:10px}.channel-year{color:#31858d;font:800 10px/1 system-ui}.channel-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;padding:0 16px 17px;border-top:1px solid #e4efed;margin-top:0;padding-top:15px}.channel-detail-grid span{font-size:11px;line-height:1.45;overflow-wrap:anywhere}.channel-detail-grid b{display:block;margin-bottom:3px;color:var(--muted);font-size:8px;letter-spacing:.09em;text-transform:uppercase}.channel-notes{grid-column:1/-1;background:#eaf6f3;border-radius:9px;padding:10px}.channel-metrics .metric-card{min-height:118px}
@media(max-width:1100px){.channel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.channel-toolbar{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.channel-grid,.channel-toolbar{grid-template-columns:1fr}.channel-detail-grid{grid-template-columns:1fr}.channel-notes{grid-column:auto}}

/* Niche analyzer adapted from the local niche_analyzer_mac knowledge base. */
.niche-toolbar{display:flex;align-items:end;gap:18px;padding:16px 18px;margin-bottom:16px}.niche-toolbar label{display:grid;gap:7px;flex:1;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.niche-toolbar input{height:42px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:0 13px;outline:0}.niche-toolbar input:focus{border-color:#5ac4c2;box-shadow:0 0 0 3px rgba(38,183,187,.12)}.niche-toolbar>span{padding-bottom:13px;color:var(--muted);font-size:11px}.niche-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.niche-card{background:var(--card);border:1px solid var(--line);border-radius:18px;overflow:hidden;min-width:0;transition:.18s}.niche-card:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(3,57,70,.1);border-color:#9bcfca}.niche-cover{height:142px;position:relative;overflow:hidden;background:linear-gradient(135deg,#096276,#56c4c0);display:grid;place-items:center}.niche-cover>img{width:100%;height:100%;object-fit:cover;transition:.25s}.niche-card:hover .niche-cover>img{transform:scale(1.025)}.niche-cover>span:not(.niche-state){font:400 54px/1 Georgia,serif;color:#d8f8f3}.niche-state{position:absolute;right:10px;top:10px;background:rgba(2,54,68,.75);backdrop-filter:blur(8px);border:1px solid rgba(220,255,250,.2);border-radius:999px;padding:5px 8px;color:#e8fffc;font-size:8px;font-weight:800;letter-spacing:.05em}.niche-card-body{padding:17px}.niche-card-title{display:flex;align-items:start;gap:10px}.niche-card-title h2{font:400 22px/1.1 Georgia,serif;letter-spacing:-.025em;margin:0;min-height:48px;flex:1}.niche-open{width:34px;height:34px;border:0;border-radius:50%;background:#dff5f3;color:#087f8b;font-size:18px;flex:none}.niche-open:hover{background:#159da5;color:#fff}.niche-tags{display:flex;gap:6px;flex-wrap:wrap;margin:11px 0}.niche-tags span{border-radius:999px;background:#e5f4f1;color:#247b7e;padding:5px 8px;font-size:8px;font-weight:800;letter-spacing:.04em}.niche-card-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:14px;padding-top:14px;border-top:1px solid #e5efed}.niche-card-stats span{color:var(--muted);font-size:8px}.niche-card-stats b{display:block;color:var(--ink);font:400 19px/1.1 Georgia,serif;margin-bottom:3px}.niche-leader{color:var(--muted);font-size:9px;margin:13px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.niche-leader strong{color:var(--ink)}
.action-dialog.niche-analysis-dialog{width:min(1080px,calc(100% - 26px));max-height:90vh;padding:0;overflow:auto;background:#f4fbf9}.niche-analysis-dialog .dialog-close{position:sticky;float:right;right:16px;top:14px;z-index:8;background:rgba(230,246,242,.9)}.niche-analysis-dialog #dialog-content{padding:28px}.niche-detail-head{display:grid;grid-template-columns:150px 1fr;gap:20px;align-items:center;margin-bottom:22px}.niche-detail-head img{width:150px;height:92px;border-radius:14px;object-fit:cover}.niche-detail-head h2{font:400 38px/1 Georgia,serif;letter-spacing:-.035em;margin:7px 0}.niche-detail-head p{color:var(--muted);font-size:11px;margin:0}.niche-detail-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px}.niche-detail-metrics>div{background:#fff;border:1px solid var(--line);border-radius:13px;padding:14px}.niche-detail-metrics strong,.niche-detail-metrics span{display:block}.niche-detail-metrics strong{font:400 26px/1 Georgia,serif}.niche-detail-metrics span{color:var(--muted);font-size:8px;margin-top:7px}.detail-tags{margin:0 0 18px}.niche-detail-section{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;margin-top:12px}.niche-detail-section .panel-head{margin-bottom:14px}.niche-detail-section h3{font-size:13px;margin:0}.growth-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.growth-grid>a{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center;text-decoration:none;color:var(--ink);padding:9px;border-radius:11px;background:#f1f8f6;min-width:0}.growth-grid>a:hover{background:#e6f4f1}.growth-avatar{width:36px;height:36px;border-radius:50%;overflow:hidden;background:#cde9e5;display:grid;place-items:center;font-weight:800}.growth-avatar img{width:100%;height:100%;object-fit:cover}.growth-grid b,.growth-grid small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.growth-grid b{font-size:10px}.growth-grid small{color:var(--muted);font-size:8px;margin-top:4px}.video-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.video-card{text-decoration:none;color:var(--ink);min-width:0}.video-card>div{height:104px;border-radius:10px;overflow:hidden;position:relative;background:#dbecea}.video-card img{width:100%;height:100%;object-fit:cover}.video-card>div span{position:absolute;right:6px;bottom:6px;background:rgba(2,47,60,.82);color:#fff;border-radius:5px;padding:4px 6px;font-size:8px}.video-card>b,.video-card>small{display:block}.video-card>b{font-size:9px;line-height:1.35;margin-top:7px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.video-card>small{color:var(--muted);font-size:7px;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topics-copy{white-space:pre-wrap;background:#eff8f6;border-radius:12px;padding:15px;color:#315f64;font-size:11px;line-height:1.65}.niche-table-wrap{overflow:auto}.niche-table-wrap .data-table{min-width:650px}.case-list{display:grid;gap:7px}.case-list a{display:grid;gap:4px;padding:11px;border-radius:10px;background:#eff8f6;color:var(--ink);text-decoration:none}.case-list strong{font-size:10px}.case-list span{color:var(--muted);font-size:8px}
@media(max-width:1100px){.niche-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.video-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.niche-grid{grid-template-columns:1fr}.niche-detail-head{grid-template-columns:1fr}.niche-detail-head img{width:100%;height:160px}.niche-detail-metrics{grid-template-columns:1fr 1fr}.growth-grid{grid-template-columns:1fr}.niche-analysis-dialog #dialog-content{padding:20px 14px}.niche-detail-head h2{font-size:31px}.niche-toolbar{align-items:stretch;flex-direction:column}.niche-toolbar>span{padding:0}}

/* Owner-only, read-only role preview. */
.role-view{display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:#f8fcfb;border-radius:11px;padding:5px 7px 5px 10px}.role-view>span{color:var(--muted);font-size:8px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.role-view select{border:0;background:transparent;color:var(--ink);font-size:11px;font-weight:800;outline:0;cursor:pointer}.preview-banner{min-height:42px;background:#dff5f3;border-bottom:1px solid #acdcd7;color:#146f76;display:flex;align-items:center;justify-content:center;gap:9px;padding:8px 22px;font-size:10px;position:sticky;top:82px;z-index:5}.preview-banner strong{letter-spacing:.06em;text-transform:uppercase}.preview-banner span{color:#4c8588}.preview-banner button{border:0;background:#fff;color:#087f8b;border-radius:999px;padding:6px 10px;font-size:9px;font-weight:800}.preview-mode [data-action],.preview-mode [data-submit-step]{display:none!important}.preview-mode .portal-badge{background:rgba(67,194,193,.14);color:#c6eeee;border-color:rgba(106,217,211,.28)}
@media(max-width:760px){.role-view>span{display:none}.role-view{padding:5px}.role-view select{max-width:105px}.preview-banner{top:82px;justify-content:flex-start;flex-wrap:wrap}.preview-banner span{flex:1;min-width:180px}}

/* Alpine cabinet: the authenticated product now follows the landing-page world. */
body{background:#74bdbc}
.app-shell{min-height:100vh;grid-template-columns:274px 1fr;background:linear-gradient(145deg,#78c2c0 0%,#5eadaf 48%,#93cfca 100%);padding:18px;gap:18px;position:relative;isolation:isolate;overflow-x:hidden}
.app-shell:before,.app-shell:after{content:"";position:fixed;z-index:-1;width:62vw;height:62vw;border:18px solid rgba(224,255,251,.1);border-radius:43%;transform:rotate(22deg);pointer-events:none}.app-shell:before{left:-35vw;top:-42vw}.app-shell:after{right:-38vw;bottom:-45vw}
.sidebar{inset:18px auto 18px 18px;width:256px;border:1px solid rgba(202,244,240,.15);border-radius:22px;padding:28px 20px;background:linear-gradient(180deg,#064e60 0%,#063f52 100%);box-shadow:0 24px 55px rgba(0,56,68,.24);overflow:auto}.sidebar .brand{font-size:11px;letter-spacing:.12em}.sidebar .brand-mark{width:42px;height:42px;border-radius:50%;border:1px solid rgba(219,255,251,.4);background:rgba(67,194,193,.18)}.portal-badge{margin:28px 0 18px;border-radius:999px;padding:9px 12px;background:rgba(255,255,255,.055)}.main-nav{gap:6px}.nav-item{min-height:44px;border-radius:13px;padding:10px 12px;font-size:12px;transition:.18s}.nav-item .nav-icon{width:27px;height:27px;border-radius:9px}.nav-item.active{background:#eefaf7;box-shadow:0 10px 24px rgba(0,32,42,.2)}.sidebar-bottom{padding-top:24px}.workspace{grid-column:2;margin:0;min-width:0;min-height:calc(100vh - 36px);border:1px solid rgba(229,255,252,.4);border-radius:22px;overflow:clip;background:linear-gradient(180deg,rgba(235,248,245,.97),rgba(218,239,236,.97));box-shadow:0 24px 60px rgba(0,56,68,.2);position:relative;z-index:1}.topbar{height:82px;padding:0 34px;border-color:rgba(194,235,232,.16);border-radius:21px 21px 0 0;background:linear-gradient(90deg,rgba(4,73,89,.98),rgba(5,91,106,.97));color:#efffff}.topbar-context{font-size:12px;letter-spacing:.08em;text-transform:uppercase}.topbar-date{color:#91c9c8}.topbar .icon-button{border-color:rgba(222,255,252,.18);background:rgba(255,255,255,.08);color:#72d6d2}.topbar .avatar{background:#58c7c3;color:#043e50;border:2px solid rgba(225,255,252,.18)}.topbar .user-mini span{color:#9fd0cf}.topbar .role-view{border-color:rgba(221,255,252,.2);background:rgba(255,255,255,.08)}.topbar .role-view>span{color:#9bcdcc}.topbar .role-view select{color:#efffff}.topbar .role-view option{color:#073f50}.menu-button{color:#e9ffff}.page-content{max-width:1580px;padding:32px 34px 46px}
.page-head{min-height:216px;align-items:flex-end;padding:34px 36px;margin-bottom:24px;border:1px solid rgba(215,255,251,.16);border-radius:24px;overflow:hidden;position:relative;background:linear-gradient(180deg,#07566b 0%,#078499 58%,#55bfbc 100%);box-shadow:0 18px 42px rgba(2,62,75,.16);isolation:isolate}.page-head:before{content:"";position:absolute;z-index:-1;left:20%;right:5%;bottom:-7px;height:56%;background:linear-gradient(135deg,#56c9c5 0 34%,#075a6c 35% 100%);clip-path:polygon(0 100%,24% 35%,37% 72%,58% 0,100% 100%);opacity:.96}.page-head:after{content:"";position:absolute;z-index:-1;left:0;right:0;bottom:-1px;height:34%;background:#03475b;clip-path:polygon(0 58%,5% 38%,9% 70%,14% 42%,19% 75%,25% 52%,32% 76%,39% 49%,47% 78%,53% 42%,61% 74%,67% 45%,74% 77%,81% 49%,88% 74%,94% 39%,100% 60%,100% 100%,0 100%)}.page-head>div{position:relative;z-index:2}.page-head h1{margin:7px 0 8px;color:#f4ffff;font-size:clamp(38px,4.2vw,58px);line-height:.98;letter-spacing:-.045em;text-shadow:0 4px 18px rgba(0,46,58,.18)}.page-head p{max-width:680px;color:#d2f2ef;font-size:13px}.page-head .eyebrow{color:#85e0dc}.page-head .head-actions{align-self:flex-start}.page-head .btn-primary{background:#58cbc6;color:#043e50;box-shadow:0 8px 22px rgba(1,54,65,.18)}.page-head .btn-ghost{border-color:rgba(228,255,252,.25);background:rgba(3,62,77,.35);color:#efffff;backdrop-filter:blur(8px)}
.metric-grid{gap:13px;margin-bottom:22px}.metric-card{min-height:132px;border-color:rgba(163,211,207,.65);background:linear-gradient(145deg,rgba(255,255,255,.9),rgba(235,248,245,.88));box-shadow:0 10px 26px rgba(3,73,84,.07);position:relative;overflow:hidden}.metric-card:after{content:"";position:absolute;width:78px;height:78px;border-radius:50%;right:-30px;bottom:-36px;background:rgba(55,190,188,.1)}.metric-label{color:#33767c}.metric-value{color:#064e60}.metric-foot{color:#699497}.panel{border-color:rgba(164,210,206,.72);background:rgba(250,254,253,.9);box-shadow:0 10px 28px rgba(3,73,84,.055);backdrop-filter:blur(9px)}.panel-head h2{color:#064e60}.quick-card{border-color:#c8e2df;background:linear-gradient(145deg,#fbfffe,#edf8f6)}.quick-card:hover{border-color:#74c6c2;box-shadow:0 8px 20px rgba(3,73,84,.08)}.record-row,.action-row{background:#eaf5f3}.row-mark{background:#ccece8}.data-table th{color:#3f7d82;border-color:#cee2df}.data-table td{border-color:#dcebe8}.table-panel{overflow:auto}.hero-card{background:linear-gradient(135deg,#064e60,#087c8d);border:1px solid rgba(218,255,251,.12);box-shadow:0 16px 38px rgba(3,67,80,.15)}.roadmap-step{background:rgba(250,254,253,.9);border-color:#c8e0dd}.roadmap-step.current{background:#e8f7f4;border-color:#65c5c0}.step-number{background:#d8eeeb;color:#126e75}.channel-card,.niche-card{background:rgba(250,254,253,.94);border-color:#bedbd8;box-shadow:0 8px 22px rgba(3,73,84,.05)}.channel-toolbar,.niche-toolbar{background:rgba(247,253,251,.92)}.action-dialog{border:1px solid rgba(162,211,207,.6);background:#eef8f6}.preview-banner{top:82px;background:#cceeea}
@media(max-width:1000px){.app-shell{grid-template-columns:244px 1fr}.sidebar{width:226px}.page-content{padding:28px 25px}.page-head{padding:30px}}
@media(max-width:760px){.app-shell{display:block;padding:0;background:#dcefeb}.workspace{min-height:100vh;border:0;border-radius:0}.sidebar{inset:0 auto 0 0;width:258px;border-radius:0}.topbar{border-radius:0;padding:0 16px}.page-content{padding:18px 14px 32px}.page-head{min-height:230px;padding:25px 22px;align-items:flex-start}.page-head .head-actions{align-self:auto}.page-head:before{left:2%;right:-20%;height:48%}.metric-card{min-height:120px}.preview-banner{top:82px}}

/* Landing-style horizontal navigation for every authenticated cabinet. */
.app-shell{display:flex;flex-direction:column;gap:14px;padding:18px}
.sidebar{position:sticky;inset:auto;top:18px;width:100%;min-height:78px;padding:12px 18px;display:flex;flex-direction:row;align-items:center;overflow:visible;z-index:20;border-radius:22px;background:linear-gradient(90deg,#064e60 0%,#056779 100%)}
.sidebar .brand{flex:none;margin-right:18px;white-space:nowrap}.sidebar .brand-mark{width:40px;height:40px}.portal-badge{flex:none;margin:0 18px 0 0;white-space:nowrap}
.main-nav{display:flex;align-items:center;justify-content:center;gap:3px;min-width:0;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);max-width:min(60%,640px);overflow-x:auto;scrollbar-width:none}.main-nav::-webkit-scrollbar{display:none}
.nav-item{flex:none;justify-content:center;min-height:42px;padding:9px 12px;color:#c0e3e1;text-align:center;white-space:nowrap}.nav-item .nav-icon{display:none}.nav-item.active{background:#eefaf7;color:#064e60}
.sidebar-bottom{flex:none;margin:0 0 0 auto;padding:0}.sidebar-bottom .system-state{display:none}.logout-button{width:auto;padding:10px 9px;color:#c0e3e1;gap:8px}
.workspace{grid-column:auto;width:100%;min-height:calc(100vh - 128px)}.topbar{top:110px}.preview-banner{top:192px}
.menu-button{display:none}
@media(max-width:1120px){.portal-badge{display:none}.sidebar .brand{margin-right:10px}.nav-item{padding-inline:10px}.sidebar-bottom{margin-left:auto}}
@media(max-width:760px){.app-shell{display:flex;padding:0;gap:0}.sidebar{position:sticky;top:0;width:100%;min-height:auto;padding:10px 12px;flex-wrap:wrap;border:0;border-radius:0;transform:none!important}.sidebar.open{transform:none}.sidebar .brand{margin-right:auto}.sidebar .brand span:last-child{display:none}.sidebar .brand-mark{width:36px;height:36px}.portal-badge{display:none}.sidebar-bottom{margin-left:8px}.logout-button{padding:8px}.logout-button>span{display:none}.main-nav{position:static;left:auto;top:auto;transform:none;max-width:none;order:3;flex-basis:100%;justify-content:flex-start;margin-top:8px;padding-bottom:2px}.nav-item{min-height:38px;padding:7px 11px}.workspace{min-height:100vh;border:0;border-radius:0}.topbar{position:relative;top:auto}.preview-banner{position:relative;top:auto}}
.partner-actions{justify-content:flex-end;margin:0 0 18px}

/* Native channel map — same visual language as the rest of the cabinet. */
.native-map-sync{display:flex;align-items:center;gap:8px;width:max-content;max-width:100%;margin:-8px 0 16px;padding:8px 11px;border:1px solid #bfddd9;border-radius:999px;background:#eff9f7;color:#397a7e;font-size:9px;font-weight:750}.native-map-sync span{width:7px;height:7px;border-radius:50%;background:#2eb39e;box-shadow:0 0 0 4px rgba(46,179,158,.12)}
.native-map-stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:18px}
.native-map-stat{min-width:0;padding:15px 16px;border:1px solid rgba(164,210,206,.72);border-radius:15px;background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(231,247,244,.9));box-shadow:0 9px 24px rgba(3,73,84,.055)}
.native-map-stat span,.native-map-stat strong,.native-map-stat small{display:block}.native-map-stat span{color:#33767c;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.native-map-stat strong{margin:8px 0 5px;color:#064e60;font:400 30px/1 Georgia,serif}.native-map-stat small{color:#71999b;font-size:8px}
.native-channel-map{position:relative;isolation:isolate;overflow:hidden;min-height:560px;padding:28px;border:1px solid rgba(215,255,251,.2);border-radius:22px;background:linear-gradient(145deg,#07576b 0%,#087e8d 54%,#49b8b4 100%);box-shadow:0 18px 42px rgba(2,62,75,.15)}
.native-channel-map:before,.native-channel-map:after{content:"";position:absolute;z-index:-1;border:18px solid rgba(216,255,251,.08);border-radius:44%;pointer-events:none}.native-channel-map:before{width:520px;height:520px;left:-310px;top:-330px;transform:rotate(28deg)}.native-channel-map:after{width:620px;height:620px;right:-390px;bottom:-460px;transform:rotate(-18deg)}
.native-map-copy{max-width:620px;color:#efffff}.native-map-copy .eyebrow{color:#8de3df}.native-map-copy h2{margin:6px 0 7px;color:#fff;font:400 clamp(28px,3vw,40px)/1 Georgia,serif;letter-spacing:-.035em}.native-map-copy p{margin:0;color:#c9eeeb;font-size:11px}
.native-map-add{position:absolute;top:20px;right:20px;z-index:3;width:38px;height:38px;padding:0;border-radius:50%;font-size:20px;line-height:1;display:flex;align-items:center;justify-content:center}
.native-bubble-field{display:grid;grid-template-columns:repeat(4,minmax(170px,260px));justify-content:center;align-items:center;justify-items:center;gap:26px;margin-top:24px}
.native-system-bubble{position:relative;isolation:isolate;width:min(100%,260px);aspect-ratio:1;border:1px solid rgba(221,255,252,.32);border-radius:50%;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#efffff;background:radial-gradient(circle at 35% 25%,rgba(117,224,218,.72),rgba(8,92,108,.9) 43%,rgba(3,64,80,.98) 78%);box-shadow:inset -22px -28px 55px rgba(0,42,54,.28),inset 16px 18px 34px rgba(210,255,251,.1),0 22px 42px rgba(0,48,62,.22);cursor:pointer;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.native-system-bubble:hover,.native-system-bubble.active{transform:translateY(-6px) scale(1.02);border-color:rgba(226,255,252,.75);box-shadow:inset -22px -28px 55px rgba(0,42,54,.28),inset 16px 18px 34px rgba(210,255,251,.14),0 28px 54px rgba(0,45,59,.34)}
.native-bubble-glow{position:absolute;z-index:-1;width:44%;height:22%;left:22%;top:10%;border-radius:50%;background:rgba(227,255,252,.24);filter:blur(18px);transform:rotate(-18deg)}
.native-system-bubble strong{max-width:78%;font-size:clamp(19px,2vw,28px);line-height:1.05;text-align:center;letter-spacing:-.035em}.native-system-bubble small{margin-top:9px;color:#a9d9d7;font-size:9px;font-weight:750;text-transform:uppercase;letter-spacing:.08em}
.native-bubble-detail{margin-top:18px;padding:24px;border:1px solid rgba(164,210,206,.72);border-radius:20px;background:rgba(250,254,253,.94);box-shadow:0 14px 34px rgba(3,73,84,.08);scroll-margin-top:210px}.native-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.native-detail-head h2{margin:5px 0 6px;color:#064e60;font:400 34px/1 Georgia,serif}.native-detail-head p{margin:0;color:var(--muted);font-size:10px}
.native-detail-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:20px 0}.native-detail-summary span{padding:12px 14px;border-radius:12px;background:#e8f5f2}.native-detail-summary strong,.native-detail-summary small{display:block}.native-detail-summary strong{color:#07566b;font:400 24px/1 Georgia,serif}.native-detail-summary small{margin-top:5px;color:#568b8e;font-size:8px;text-transform:uppercase;letter-spacing:.06em}
.native-channel-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.native-channel-column{min-width:0;padding:13px;border:1px solid #d3e8e4;border-radius:15px;background:#f4faf8}.native-column-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 2px 10px;color:#315f64;font-size:10px}.native-column-head span{min-width:25px;height:25px;border-radius:999px;display:grid;place-items:center;background:#dbeeea;font-size:9px}.native-channel-column.monetized .native-column-head span{background:#d9f2e6;color:#20775a}.native-channel-column.demonetized .native-column-head span{background:#f8e1de;color:#a84d42}.native-channel-column .channel-card{margin-bottom:8px;background:#fff}.native-channel-column .channel-detail-grid{grid-template-columns:1fr}.native-column-empty{padding:26px 10px;color:#87a3a4;text-align:center;font-size:9px}
@media(max-width:1120px){.native-map-stats{grid-template-columns:repeat(3,1fr)}.native-bubble-field{grid-template-columns:repeat(3,minmax(170px,1fr))}.native-channel-columns{grid-template-columns:1fr}}
@media(max-width:820px){.native-bubble-field{grid-template-columns:repeat(2,minmax(170px,1fr))}}
@media(max-width:650px){.native-map-stats{grid-template-columns:repeat(2,1fr)}.native-channel-map{padding:22px 14px}.native-bubble-field{grid-template-columns:1fr}.native-system-bubble{width:min(82vw,290px)}.native-detail-summary{grid-template-columns:1fr 1fr}.native-detail-head{flex-direction:column}.native-bubble-detail{padding:18px 13px}}

/* Compact cabinet headings: remove the large decorative mountain plaques. */
.page-head{min-height:0;align-items:flex-end;padding:2px 0 18px;margin-bottom:18px;border:0;border-radius:0;overflow:visible;background:transparent;box-shadow:none;isolation:auto}
.page-head:before,.page-head:after{display:none}
.page-head h1{margin:5px 0 7px;color:var(--ink);font-size:clamp(34px,3.4vw,48px);line-height:1;letter-spacing:-.04em;text-shadow:none}
.page-head p{max-width:680px;color:var(--muted);font-size:13px}
.page-head .eyebrow{color:#188f96}
.page-head .head-actions{align-self:flex-end}
.page-head .btn-primary{background:#159da5;color:#fff;box-shadow:none}
.page-head .btn-ghost{border-color:var(--line);background:#f8fcfb;color:var(--ink);backdrop-filter:none}
@media(max-width:760px){.page-head{min-height:0;padding:2px 0 15px;align-items:flex-start}.page-head h1{font-size:36px}.page-head .head-actions{align-self:auto}}

/* Separate, role-scoped niche banks. They share the visual system, never the data. */
.role-niche-bank{display:grid;gap:14px}.role-niche-summary{display:grid;grid-template-columns:repeat(3,minmax(120px,180px)) 1fr;gap:10px;align-items:stretch}.role-niche-summary>div{padding:16px 17px;border:1px solid #bfded9;border-radius:15px;background:linear-gradient(145deg,#fbfffe,#e9f6f3)}.role-niche-summary span,.role-niche-summary strong{display:block}.role-niche-summary span{color:#397a7e;font-size:8px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.role-niche-summary strong{margin-top:8px;color:#07566b;font:400 30px/1 Georgia,serif}.role-niche-summary p{margin:0;padding:17px 19px;border-radius:15px;background:#07576b;color:#ccecea;font-size:11px;line-height:1.55;display:flex;align-items:center}.role-niche-controls{display:flex;align-items:end;gap:14px;padding:15px 17px}.role-niche-search{display:grid;gap:7px;flex:1}.role-niche-search>span{color:#397a7e;font-size:8px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.role-niche-search input{height:42px;border:1px solid #c5dedb;border-radius:11px;background:#fff;padding:0 13px;outline:0}.role-niche-search input:focus{border-color:#159da5;box-shadow:0 0 0 3px rgba(21,157,165,.12)}.role-niche-count{min-width:54px;padding-bottom:13px;color:#5f888a;font-size:10px;text-align:right}.niche-view-toggle{display:flex;padding:3px;border:1px solid #c5dedb;border-radius:10px;background:#eef8f6}.niche-view-toggle button{width:34px;height:34px;border:0;border-radius:7px;background:transparent;color:#4b8588;font-size:10px;font-weight:800}.niche-view-toggle button.active{background:#07576b;color:#fff}.role-niche-tagbar{display:flex;gap:7px;overflow-x:auto;padding:1px 0 3px;scrollbar-width:none}.role-niche-tagbar::-webkit-scrollbar{display:none}.role-niche-tagbar button{flex:none;border:1px solid #bddbd7;border-radius:999px;background:#f7fcfb;color:#397a7e;padding:8px 12px;font-size:9px;font-weight:750}.role-niche-tagbar button.active{border-color:#159da5;background:#159da5;color:#fff}.role-niche-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.role-niche-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.role-niche-grid>.empty-state{grid-column:1/-1;min-height:180px;display:grid;place-items:center;background:rgba(249,254,253,.75)}
@media(max-width:900px){.role-niche-summary{grid-template-columns:repeat(3,1fr)}.role-niche-summary p{grid-column:1/-1}.role-niche-grid.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.role-niche-summary{grid-template-columns:1fr 1fr}.role-niche-summary>div:nth-child(3){grid-column:1/-1}.role-niche-controls{align-items:stretch;flex-wrap:wrap}.role-niche-search{flex-basis:100%}.role-niche-count{margin-left:auto;padding:11px 0}.role-niche-grid.cols-2,.role-niche-grid.cols-3{grid-template-columns:1fr}}
.sidebar-bottom{display:flex;flex-direction:column;gap:10px}
.profile-widget{position:relative}
.profile-button{border:0;background:transparent;padding:10px 0;display:flex;width:100%}
.profile-button .avatar{margin:0}
.profile-menu{position:absolute;bottom:calc(100% + 8px);left:0;min-width:200px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 30px rgba(20,24,32,.14);padding:10px;z-index:20}
.profile-menu-head{padding:6px 8px 10px;border-bottom:1px solid var(--line);margin-bottom:6px}
.profile-menu-head strong,.profile-menu-head span{display:block}
.profile-menu-head strong{font-size:12px}
.profile-menu-head span{font-size:10px;color:var(--muted);margin-top:2px}
.profile-menu .profile-menu-item{width:100%;border:0;background:transparent;padding:9px 8px;display:flex;justify-content:space-between;color:#777b83;font-size:12px;border-radius:9px}
.profile-menu .profile-menu-item:hover{background:#f4f2ed}
.niche-switcher{position:relative;flex:none}
.niche-switcher-button{border:1px solid var(--line);background:#f8fcfb;border-radius:11px;padding:8px 12px;font-size:11px;font-weight:800;color:var(--ink);cursor:pointer;white-space:nowrap;max-width:160px;overflow:hidden;text-overflow:ellipsis}
.niche-switcher .profile-menu{left:auto;right:0;min-width:230px;max-height:320px;overflow:auto}
.niche-switcher-group{padding:6px 8px 4px;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.niche-switcher-item.active{background:#eefaf7;color:var(--ink)}
.workspace>.menu-button{margin:14px 0 0 14px}
@media(max-width:760px){.profile-menu{bottom:auto;top:calc(100% + 8px);right:0;left:auto}}
.embed-frame{width:100%;height:calc(100vh - 84px);min-height:520px;border:1px solid var(--line);border-radius:18px;background:#fff}

/* Настоящий вид карточек Банка ниш (перенесено из niche_analyzer_mac/web/
   static/style.css) — свой цветовой набор с префиксом legacy-, значения
   захардкожены (не var()), чтобы не пересекаться с переменными --card/
   --border/--accent и т.д. основного сайта (там те же имена, другие цвета). */
.legacy-niche-tools{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:16px}
.legacy-cols-toggle{display:flex;gap:6px}
.legacy-cols-toggle button{border:1.5px solid #E5E7EB;background:#FFFFFF;cursor:pointer;border-radius:9px;padding:6px 10px;font-weight:700;font-size:12px;color:#111827}
.legacy-cols-toggle button.active{background:#2438F0;color:#fff;border-color:#2438F0}
.legacy-cdots{display:flex;gap:8px}
.legacy-cdot{width:26px;height:26px;border-radius:8px;cursor:pointer;border:2px solid transparent;padding:0}
.legacy-cdot:hover{transform:scale(1.08)}
.legacy-cdot.active{border-color:#111827;box-shadow:0 0 0 3px #E7EAFE}
.legacy-cdot.c-white{background:#fff;border-color:#E5E7EB}
.legacy-cdot.c-grey{background:#C7CBD4}
.legacy-cdot.c-blue{background:#2438F0}
.legacy-cdot.c-yellow{background:#F59E0B}
.legacy-cdot.c-red{background:#DC2626}
.legacy-tag-filter{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px}
.legacy-tf-chip{border:1.5px solid #E5E7EB;background:#fff;cursor:pointer;border-radius:999px;padding:7px 14px;font-size:12px;font-weight:700;color:#111827}
.legacy-tf-chip:hover{border-color:#2438F0}
.legacy-tf-chip.active{background:#2438F0;color:#fff;border-color:#2438F0}
.legacy-niche-grid{display:grid;gap:24px;grid-template-columns:repeat(3,1fr)}
.legacy-niche-grid.cols-2{grid-template-columns:repeat(2,1fr)}
.legacy-niche-grid.cols-4{grid-template-columns:repeat(4,1fr)}
@media(max-width:900px){.legacy-niche-grid,.legacy-niche-grid.cols-2,.legacy-niche-grid.cols-4{grid-template-columns:1fr}}
.legacy-niche-card{position:relative;background:#fff;border:1px solid #E5E7EB;border-radius:20px;overflow:hidden;cursor:pointer;box-shadow:0 1px 3px rgba(17,24,39,.06),0 8px 24px rgba(17,24,39,.06);transition:.15s}
.legacy-niche-card:hover{transform:translateY(-3px);box-shadow:0 12px 34px rgba(36,56,240,.16)}
.legacy-niche-card.own{border:2px solid #2438F0;box-shadow:0 0 0 4px #E7EAFE}
.legacy-niche-card.hot-yellow{border:2px solid #F59E0B;box-shadow:0 0 0 4px #FEF3C7}
.legacy-niche-card.hot-red{border:2px solid #DC2626;box-shadow:0 0 0 4px #FCE2E2}
.legacy-niche-thumb{aspect-ratio:16/9;background:linear-gradient(135deg,#dfe3fb,#eef1ff);display:flex;align-items:center;justify-content:center;font-size:32px}
.legacy-niche-thumb img{width:100%;height:100%;object-fit:cover}
.legacy-niche-body{padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.legacy-niche-name{font-weight:800;font-size:18px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.legacy-niche-rating{flex:none;width:34px;height:34px;border-radius:10px;background:#E7EAFE;color:#2438F0;display:flex;align-items:center;justify-content:center;font-weight:800}
.legacy-niche-rating.r-yellow{background:#FEF3C7;color:#92600A}
.legacy-niche-rating.r-red{background:#FCE2E2;color:#DC2626}
.legacy-niche-author{color:#6B7280;font-size:11px;margin-top:4px}
.legacy-niche-del{position:absolute;top:10px;right:10px;background:#fff;border:1px solid #E5E7EB;border-radius:9px;width:30px;height:30px;opacity:0;cursor:pointer;transition:.15s}
.legacy-niche-card:hover .legacy-niche-del{opacity:1}
.legacy-niche-del:hover{background:#FDECEC;color:#DC2626}
