/* Recording-first layout. Scoped to this screen; shared detail overlays keep their own shell. */
.tracking-history-workbench .tracking-library-toolbar{align-items:flex-start;flex-wrap:wrap;gap:14px;}
.tracking-history-workbench .tracking-library-toolbar>div{flex-wrap:wrap;gap:12px;}
.tracking-history-workbench .tracking-library-toolbar label{font-size:14px;}
.tracking-history-workbench .tracking-library-toolbar select{font-size:14px;max-width:240px;min-height:40px;}
.tracking-history-workbench .competitor-tracking-empty button{margin-top:14px;font-size:14px;}
@container(max-width:570px){.tracking-history-workbench .tracking-library-toolbar>div{width:100%;}.tracking-history-workbench .tracking-library-toolbar label{width:100%;justify-content:space-between;}.tracking-history-workbench .tracking-library-toolbar select{flex:1;min-width:0;max-width:100%;}}
.tracking-hot-range{fill:#ed9628;opacity:.16;pointer-events:none;}
#competitorAnalysisPage .tracking-history-workbench .competitor-tracking-filters .tracking-hot-button{border-color:#e9caa6;background:#fff8ee;color:#925018;font-weight:700;font-size:14px;}
#competitorAnalysisPage .tracking-history-workbench .competitor-tracking-filters .tracking-hot-button.active{background:#9c5019;border-color:#9c5019;color:#fff;}
#competitorAnalysisPage .tracking-history-workbench .competitor-tracking-filters .tracking-hot-button b{background:#f6e4cd;color:#925018;}
#competitorAnalysisPage .tracking-history-workbench .competitor-tracking-filters .tracking-hot-button.active b{background:#bc7540;color:#fff;}
.tracking-hot-intro{border-left:3px solid #d78a36;background:#fffaf3;border-radius:0 10px 10px 0;padding:16px 20px;margin:0 0 20px;color:#774b29;}
.tracking-hot-intro>strong{font-size:16px;}.tracking-hot-intro p{font-size:14px;line-height:1.75;margin:7px 0;}.tracking-hot-intro summary{font-size:14px;cursor:pointer;margin-top:9px;}
#competitorAnalysisPage .tracking-history-card.is-hot-video{border-color:#e8ceb0;}
.tracking-hot-evidence{display:flex;flex-direction:column;gap:6px;border-bottom:1px solid #eee2d5;padding-bottom:14px;margin-bottom:16px;}
.tracking-hot-evidence strong{font-size:14px;color:#96521d;line-height:1.5;}.tracking-hot-evidence small{font-size:12px;color:#826c58;line-height:1.5;}
.tracking-hot-evidence.is-pending strong{color:#6b5a1f;}
.tracking-hot-detail.is-pending{border-color:#e6dcb6;background:#fffdf1;color:#665420;}
.tracking-hot-detail details{margin-top:10px;}.tracking-hot-detail summary{font-size:12px;cursor:pointer;color:#8a6a45;}
.tracking-hot-evidence-table{width:100%;margin-top:8px;border-collapse:collapse;font-size:11px;font-variant-numeric:tabular-nums;}
.tracking-hot-evidence-table th,.tracking-hot-evidence-table td{padding:5px 6px;border-bottom:1px solid #eee1cf;text-align:left;white-space:nowrap;}
.tracking-hot-evidence-table tr.is-surge td{background:#fdebd3;font-weight:600;}.tracking-hot-evidence-table tr.is-follow td{background:#fff4e4;}.tracking-hot-evidence-table tr.is-ended td{color:#9a8a7a;}
/* Late risers lead the screen; the library and same-age panel follow. */
#competitorAnalysisPage .tracking-hot-summary{padding:24px;border:1px solid #ecd4b6;border-radius:18px;background:linear-gradient(120deg,#fff8ef,#fff 70%);box-shadow:0 8px 28px #7a4a1a08;}
.tracking-hot-summary>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;flex-wrap:wrap;}
.tracking-hot-summary>header>div>span{font-size:10px;font-weight:700;letter-spacing:2px;color:#a35f22;}
#competitorAnalysisPage .tracking-hot-summary h2{margin:7px 0;font-size:22px;line-height:1.5;color:#4a2f14;}
.tracking-hot-summary>header p{margin:0;max-width:720px;font-size:12px;line-height:1.8;color:#7a5c40;word-break:keep-all;}
.tracking-hot-summary-counts{display:flex;gap:8px;flex-wrap:wrap;}
#competitorAnalysisPage .tracking-hot-summary-counts button{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 14px;border:1px solid #e3c8a6;border-radius:10px;background:#fff;color:#8a4d1c;font-size:13px;font-weight:700;cursor:pointer;box-shadow:none;}
#competitorAnalysisPage .tracking-hot-summary-counts button b{padding:2px 7px;border-radius:6px;background:#f6e4cd;color:#925018;font-size:12px;}
#competitorAnalysisPage .tracking-hot-summary-counts button.active{background:#9c5019;border-color:#9c5019;color:#fff;}
#competitorAnalysisPage .tracking-hot-summary-counts button.active b{background:#bc7540;color:#fff;}
.tracking-hot-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px;}
#competitorAnalysisPage .tracking-hot-summary-card{display:flex;flex-direction:column;gap:12px;min-width:0;padding:16px;border:1px solid #e8ceb0;border-radius:14px;background:#fff;font:inherit;text-align:left;color:#254755;cursor:pointer;transition:box-shadow .15s,border-color .15s;}
#competitorAnalysisPage .tracking-hot-summary-card:hover{border-color:#d09a63;box-shadow:0 8px 24px #7a4a1a14;}
#competitorAnalysisPage .tracking-hot-summary-card.is-surge{border-style:dashed;}
.tracking-hot-summary-card .tracking-hot-evidence{border-bottom:0;padding-bottom:0;margin-bottom:0;}
.tracking-hot-summary-card .tracking-history-identity strong{min-height:0;}
.tracking-hot-summary-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;font-size:11px;color:#7d969e;}
.tracking-hot-summary-foot strong{color:#a35f22;white-space:nowrap;}
.tracking-hot-summary-more{margin:12px 0 0;font-size:12px;color:#8a6a45;}
.tracking-hot-summary-empty{margin-top:18px;padding:22px;border:1px dashed #e3c8a6;border-radius:13px;background:#fffdf9;}
.tracking-hot-summary-empty strong{display:block;font-size:15px;color:#5a3d22;line-height:1.6;}
.tracking-hot-summary-empty p{margin:8px 0 0;font-size:12px;line-height:1.9;color:#7a5c40;word-break:keep-all;}
.tracking-hot-summary-pending{margin-top:20px;padding-top:18px;border-top:1px solid #eedcc6;}
#competitorAnalysisPage .tracking-hot-summary-pending h3{margin:0;font-size:15px;color:#6b5a1f;}
@container(max-width:850px){.tracking-hot-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@container(max-width:570px){#competitorAnalysisPage .tracking-hot-summary{padding:17px;}.tracking-hot-summary-grid{grid-template-columns:minmax(0,1fr);}#competitorAnalysisPage .tracking-hot-summary h2{font-size:19px;}}
.tracking-hot-detail{border:1px solid #ecd7bc;background:#fff9f0;padding:18px;border-radius:12px;margin:14px 0;color:#79512e;}
.tracking-hot-detail>strong{font-size:16px;}.tracking-hot-detail p{font-size:14px;line-height:1.7;margin:7px 0;}.tracking-hot-detail>div{display:flex;gap:12px 28px;flex-wrap:wrap;margin:12px 0;}.tracking-hot-detail span{font-size:14px;}.tracking-hot-detail b{display:block;margin-top:5px;font-variant-numeric:tabular-nums;}.tracking-hot-detail>small{display:block;font-size:12px;line-height:1.7;}
#competitorAnalysisPage .tracking-history-workbench{container-type:inline-size;display:grid;gap:22px;min-width:0;width:100%;color:#233e4c;}
#competitorAnalysisPage .tracking-history-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:15px;padding:8px 0 5px;}
#competitorAnalysisPage .tracking-history-header>button:first-child{grid-column:1/-1;justify-self:start;}
#competitorAnalysisPage .tracking-history-header button{border:1px solid #cfdee1;border-radius:9px;padding:9px 12px;background:#fff;color:#496572;font-size:12px;cursor:pointer;}
.tracking-history-header>div>span{font-size:10px;font-weight:700;letter-spacing:2px;color:#47877c;}
#competitorAnalysisPage .tracking-history-header h1{margin:8px 0;font-size:34px;line-height:1.3;letter-spacing:-1px;color:#173747;}
.tracking-history-header p{font-size:14px;line-height:1.7;color:#6c828d;margin:0;}
.tracking-history-controls{display:flex;align-items:center;flex-wrap:wrap;gap:16px;padding:12px 0;border-block:1px solid #dbe6e9;}
.tracking-history-format{display:flex;gap:6px;background:#e7eff0;padding:4px;border-radius:12px;}
#competitorAnalysisPage .tracking-history-format button{min-width:88px;min-height:38px!important;border:0;border-radius:8px;background:transparent;color:#607b86;font-size:13px!important;cursor:pointer;}
#competitorAnalysisPage .tracking-history-format button.active{background:#1b6663;color:#fff;box-shadow:0 3px 9px #164e4a22;}
.tracking-history-health{display:flex;align-items:center;gap:8px;font-size:12px;color:#677f88;}
.tracking-history-health i{height:7px;width:7px;background:#389b7e;border-radius:50%;}
.tracking-history-health.attention i{background:#bb853d;}
.tracking-history-tools{margin-left:auto;display:flex;gap:8px;}
.tracking-history-tools button{border:1px solid #ccdcdf;background:#fff;color:#54717d;padding:8px 11px;border-radius:8px;font-size:12px;cursor:pointer;}
.tracking-history-overview{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:14px;}
.tracking-history-overview article{padding:20px 23px;border:1px solid #dce7e9;border-radius:14px;background:#fff;min-width:0;}
.tracking-history-overview article:first-child{background:linear-gradient(120deg,#eaf6f2,#f8fcfa);border-color:#c9e2db;}
.tracking-history-overview article>span{font-size:12px;color:#5c7883;}
.tracking-history-overview strong{display:block;margin:11px 0 7px;font-size:29px;line-height:1.2;font-variant-numeric:tabular-nums;letter-spacing:-.5px;color:#214c58;}
.tracking-history-overview strong small{font-size:12px;font-weight:500;margin-left:6px;}
.tracking-history-overview strong.is-time{font-size:19px;line-height:1.5;letter-spacing:0;}
.tracking-history-overview p{font-size:11px;line-height:1.6;color:#7c939c;margin:0;}
#competitorAnalysisPage .tracking-history-workbench .competitor-tracking-queue{padding:24px;border:1px solid #d8e4e8;border-radius:18px;box-shadow:0 8px 28px #193e4c05;overflow:visible;}
#competitorAnalysisPage .tracking-history-workbench .competitor-tracking-queue-head{display:flex;align-items:start;justify-content:space-between;padding:0;gap:20px;}
#competitorAnalysisPage .tracking-history-workbench .competitor-tracking-queue-head h2{font-size:22px;line-height:1.5;margin:7px 0;}
#competitorAnalysisPage .tracking-history-workbench .competitor-tracking-queue-head p{font-size:12px;line-height:1.8;}
#competitorAnalysisPage .tracking-history-workbench .competitor-tracking-filters{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0 0;padding:0;border:0;}
#competitorAnalysisPage .tracking-history-workbench .competitor-tracking-filters button{display:inline-flex;align-items:center;gap:7px;min-width:0;min-height:36px;padding:8px 11px;border:1px solid #dce7e9;border-radius:9px;background:#f8fafb;color:#69818c;box-shadow:none;font-size:12px;}
#competitorAnalysisPage .tracking-history-workbench .competitor-tracking-filters button.active{background:#214e5b;border-color:#214e5b;color:#fff;}
#competitorAnalysisPage .tracking-history-workbench .competitor-tracking-filters button b{background:#e5eeee;color:#55757d;padding:2px 5px;min-width:0;border-radius:4px;font-size:10px;}
#competitorAnalysisPage .tracking-history-workbench .competitor-tracking-filters button.active b{background:#426a74;color:#e0eeed;}
.tracking-history-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
#competitorAnalysisPage .tracking-history-card{display:flex;flex-direction:column;gap:0;width:100%;min-width:0;padding:20px;border:1px solid #dce6ea;border-radius:14px;background:linear-gradient(#fff,#fbfdfd);font:inherit;text-align:left;color:#254755;cursor:pointer;transition:box-shadow .15s,border-color .15s;}
#competitorAnalysisPage .tracking-history-card:hover{border-color:#8dbdb4;box-shadow:0 8px 24px #17403d12;}
.tracking-history-workbench button:focus-visible{outline:3px solid #72b7ac;outline-offset:3px;}
.tracking-history-identity{display:flex;align-items:start;gap:14px;min-width:0;}
.tracking-history-identity>img,.tracking-history-identity>i{width:104px;height:61px;object-fit:cover;border-radius:8px;flex-shrink:0;background:#e4eeee;}
.tracking-history-identity>span{min-width:0;}
.tracking-history-identity small{display:block;font-size:11px;color:#438578;margin-bottom:5px;}
.tracking-history-identity strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:43px;font-size:14px;line-height:1.55;color:#294552;overflow-wrap:anywhere;}
.tracking-history-identity em{display:block;margin-top:6px;font-size:10px;line-height:1.5;font-style:normal;color:#8398a0;}
.tracking-history-numbers{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:20px;padding-top:16px;border-top:1px solid #edf1f3;}
.tracking-history-numbers small{font-size:11px;color:#84959e;}
.tracking-history-numbers b{display:block;font-size:24px;line-height:1.3;letter-spacing:-.6px;font-variant-numeric:tabular-nums;margin-top:6px;}
.tracking-history-numbers em{font-size:11px;font-style:normal;font-weight:400;margin-left:4px;color:#83959f;}
.tracking-history-numbers .is-growing b{color:#168978;}
.tracking-history-curve{display:block;margin:10px 0 11px;background:#f4f9f8;border-radius:10px;padding:5px 12px 8px;}
#competitorAnalysisPage .tracking-history-curve .tracking-unified-spark{display:block;width:100%;min-height:0;}
#competitorAnalysisPage .tracking-history-curve .tracking-unified-spark svg{display:block;width:100%;height:94px;max-height:none;}
#competitorAnalysisPage .tracking-history-curve .actual-curve{stroke:#1e9686;stroke-width:4;fill:none;}
#competitorAnalysisPage .tracking-history-curve .insight-gap path{stroke:#9aacb5;stroke-width:3;stroke-dasharray:9 8;}
.tracking-history-curve small{display:block;text-align:right;font-size:10px;color:#869e9e;}
.tracking-history-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;}
.tracking-history-foot>span{font-size:10px;line-height:1.6;color:#7d969e;}
.tracking-history-foot>strong{font-size:11px;white-space:nowrap;color:#347e74;}
.tracking-history-system{border:1px solid #d8e5e8;border-radius:12px;background:#fff;overflow:hidden;}
.tracking-history-system>summary{padding:17px 20px;font-size:13px;font-weight:600;color:#526f7d;cursor:pointer;}
/* Same-age selection is a secondary working panel, separate from the live journal. */
#competitorAnalysisPage .tracking-checkpoint-results{min-width:0;border:1px solid #d5e3e7;border-radius:18px;background:#fff;box-shadow:0 6px 24px #193e4c05;overflow:hidden;}
#competitorAnalysisPage .checkpoint-panel-summary{display:flex;align-items:center;gap:16px;padding:24px;list-style:none;cursor:pointer;background:linear-gradient(110deg,#f4faf8,#fff 75%);}
.checkpoint-panel-summary::-webkit-details-marker,.checkpoint-criteria>summary::-webkit-details-marker{display:none;}
.checkpoint-panel-summary::marker,.checkpoint-criteria>summary::marker{content:"";}
.checkpoint-panel-icon{display:grid;place-items:center;flex:none;width:44px;height:44px;border:1px solid #d4e8e2;border-radius:13px;background:#e8f3ef;color:#287a6c;}
.checkpoint-panel-icon svg{width:23px;height:23px;}
.checkpoint-panel-heading{flex:1;min-width:0;}
.checkpoint-panel-heading strong{display:block;color:#244652;font-size:18px;line-height:1.5;letter-spacing:-.035em;word-break:keep-all;overflow-wrap:anywhere;}
.checkpoint-panel-heading small{display:block;color:#667e88;font-size:12px;line-height:1.7;margin-top:5px;word-break:keep-all;overflow-wrap:anywhere;}
.checkpoint-panel-count{display:flex;align-items:baseline;gap:5px;flex:none;font-size:12px;color:#53766e;background:#edf6f2;border:1px solid #d8eae2;border-radius:9px;padding:9px 12px;white-space:nowrap;}
.checkpoint-panel-count b{font-size:20px;line-height:1.2;color:#206958;font-variant-numeric:tabular-nums;}
.checkpoint-panel-toggle{display:grid;place-items:center;width:30px;height:30px;flex:none;border:1px solid #dae6e8;border-radius:50%;color:#55737e;background:#fff;}
.checkpoint-panel-toggle svg{width:18px;height:18px;}
.tracking-checkpoint-results[open]>.checkpoint-panel-summary .checkpoint-toggle-vertical{display:none;}
.checkpoint-panel-summary:focus-visible,.checkpoint-criteria>summary:focus-visible,.checkpoint-video-card a:focus-visible{outline:3px solid #72b7ac;outline-offset:-3px;border-radius:8px;}
.checkpoint-panel-body{padding:24px;border-top:1px solid #e3ecee;}
.checkpoint-panel-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;}
.checkpoint-period-picker{display:flex;align-items:center;gap:14px;}
.checkpoint-period-picker>span{font-size:12px;font-weight:600;color:#55717e;white-space:nowrap;}
.tracking-checkpoint-controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:4px;border:1px solid #e0e8eb;background:#f1f5f6;border-radius:11px;}
#competitorAnalysisPage .tracking-checkpoint-controls button{min-width:64px;min-height:38px;padding:8px 16px;border:1px solid transparent;border-radius:8px;background:transparent;color:#637c88;font:inherit;font-size:13px;font-weight:600;cursor:pointer;box-shadow:none;transition:background .15s,color .15s;}
#competitorAnalysisPage .tracking-checkpoint-controls button[aria-pressed="true"]{color:#fff;background:#245c5c;border-color:#245c5c;box-shadow:0 2px 5px #214b5120;}
#competitorAnalysisPage .tracking-checkpoint-controls button:not([aria-pressed="true"]):hover{background:#e2ecec;color:#294f5b;}
#competitorAnalysisPage .tracking-checkpoint-controls button:disabled{cursor:wait;opacity:.7;}
.checkpoint-format-label{font-size:12px;color:#58717c;white-space:nowrap;}
.checkpoint-period-hint{font-size:12px;line-height:1.8;color:#71838d;margin:15px 0 18px;word-break:keep-all;overflow-wrap:anywhere;}
.checkpoint-period-hint strong{color:#3f606b;font-weight:500;}
.checkpoint-criteria{margin:0 0 20px;border-top:1px solid #e7eef0;border-bottom:1px solid #e7eef0;}
.checkpoint-criteria>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none;padding:13px 0;color:#4f726f;font-size:12px;font-weight:600;cursor:pointer;}
.checkpoint-criteria>summary>span{font-size:17px;font-weight:400;transition:transform .15s;}
.checkpoint-criteria[open]>summary>span{transform:rotate(45deg);}
.checkpoint-criteria>div{padding:0 0 15px;color:#677c86;font-size:12px;line-height:1.85;}
.checkpoint-criteria p{margin:0 0 10px;}
.checkpoint-criteria p:last-child{margin-bottom:0;}
.checkpoint-criteria ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 20px;list-style:none;margin:12px 0;padding:12px 16px;background:#f5f9f9;border-radius:9px;}
.checkpoint-criteria li{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.checkpoint-criteria li b{font-weight:500;color:#365c66;}
.checkpoint-panel-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:200px;padding:28px 20px;border:1px dashed #cfdee2;border-radius:13px;background:linear-gradient(#fafcfc,#f6faf9);text-align:center;}
.checkpoint-panel-empty>strong{color:#3d5d68;font-size:15px;font-weight:600;line-height:1.6;}
.checkpoint-panel-empty>p{margin:0;font-size:12px;line-height:1.9;color:#71848e;word-break:keep-all;overflow-wrap:anywhere;}
.checkpoint-empty-period{padding:5px 12px;border:1px solid #dce9e6;border-radius:7px;color:#39796d;font-size:12px;font-weight:600;background:#eff7f3;}
.checkpoint-panel-empty.is-error{border-color:#e3d7d7;background:#fcf9f9;}
.checkpoint-panel-empty.is-error>strong{color:#936261;}
.checkpoint-panel-empty button{border:1px solid #245c5c;border-radius:8px;background:#245c5c;color:#fff;padding:10px 16px;font:inherit;font-size:13px;cursor:pointer;}
.checkpoint-video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.checkpoint-video-card{min-width:0;padding:20px;border:1px solid #dce7e9;border-radius:14px;background:#fff;}
.checkpoint-video-identity{display:flex;align-items:flex-start;gap:14px;}
.checkpoint-video-thumbnail{display:grid;place-items:center;flex:none;width:112px;aspect-ratio:16/9;overflow:hidden;border-radius:8px;background:#e8f0f1;color:#6b858e;font-size:10px;}
.checkpoint-video-thumbnail img{display:block;width:100%;height:100%;object-fit:cover;}
.checkpoint-video-identity>div{min-width:0;}
.checkpoint-video-identity small{display:block;font-size:11px;line-height:1.5;color:#487f72;margin-bottom:4px;}
.checkpoint-video-identity h3{margin:0;font-size:14px;line-height:1.6;font-weight:600;overflow-wrap:anywhere;}
.checkpoint-video-identity h3 a{color:#294854;text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.checkpoint-video-identity>div>span{display:block;font-size:11px;line-height:1.6;color:#71868f;margin-top:6px;}
.checkpoint-video-reach{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0 0;padding-top:16px;border-top:1px solid #e8eef0;}
.checkpoint-video-card dt{color:#72838e;font-size:11px;line-height:1.6;}
.checkpoint-video-card dd{margin:5px 0 0;color:#284e5b;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;}
.checkpoint-video-reach dd{font-size:24px;line-height:1.3;font-weight:650;letter-spacing:-.5px;}
.checkpoint-video-reach dd small{font-size:11px;font-weight:400;margin-left:4px;letter-spacing:0;color:#748c94;}
.checkpoint-video-reach>div:last-child dd{color:#228473;}
.checkpoint-video-response{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0 0;padding:13px 14px;border-radius:9px;background:#f4f8f8;}
.checkpoint-video-response dd{font-size:15px;line-height:1.4;font-weight:600;}
.checkpoint-video-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;border-top:1px solid #e8eef0;padding-top:13px;margin-top:15px;}
.checkpoint-video-foot>div{display:flex;flex-direction:column;gap:4px;font-size:11px;line-height:1.5;color:#5b7b84;}
.checkpoint-video-foot small{font-size:10px;color:#7a8d94;}
.checkpoint-video-foot>a{color:#347b70;font-size:11px;font-weight:600;text-decoration:none;white-space:nowrap;}
.checkpoint-video-card a:hover{color:#166e61;text-decoration:underline;}
@container(max-width:850px){.checkpoint-video-grid{grid-template-columns:minmax(0,1fr);}.checkpoint-panel-heading strong{font-size:17px;}.checkpoint-criteria ul{grid-template-columns:1fr;}}
@container(max-width:570px){
  #competitorAnalysisPage .checkpoint-panel-summary{display:grid;grid-template-columns:36px minmax(0,1fr) 28px;gap:12px;padding:18px;}
  .checkpoint-panel-icon{width:36px;height:36px;border-radius:10px;}.checkpoint-panel-icon svg{width:20px;height:20px;}
  .checkpoint-panel-heading strong{font-size:16px;}.checkpoint-panel-heading small{font-size:11px;}
  .checkpoint-panel-count{grid-column:2;justify-self:start;padding:6px 9px;font-size:11px;}.checkpoint-panel-count b{font-size:17px;}
  .checkpoint-panel-toggle{grid-column:3;grid-row:1;width:28px;height:28px;}
  .checkpoint-panel-body{padding:18px;}.checkpoint-period-picker{width:100%;flex-wrap:wrap;gap:9px;}.tracking-checkpoint-controls{width:100%;}
  #competitorAnalysisPage .tracking-checkpoint-controls button{min-width:0;min-height:40px;padding:8px;}
  .checkpoint-format-label{font-size:11px;}.checkpoint-period-hint{margin-top:12px;}
  .checkpoint-panel-empty{padding:24px 14px;min-height:190px;}.checkpoint-video-card{padding:16px;}
  .checkpoint-video-thumbnail{width:88px;}.checkpoint-video-identity{gap:11px;}.checkpoint-video-identity h3{font-size:13px;}
  .checkpoint-video-reach{gap:10px;}.checkpoint-video-reach dd{font-size:21px;}.checkpoint-video-response{gap:8px;padding:12px 10px;}
  .checkpoint-video-response dt{font-size:10px;}.checkpoint-video-response dd{font-size:14px;}.checkpoint-video-foot{flex-wrap:wrap;}
}
@media(prefers-reduced-motion:reduce){.tracking-checkpoint-controls button,.checkpoint-criteria>summary>span{transition:none!important;}}
.insight-workbench .insight-analysis-grid{grid-template-columns:minmax(0,1fr);}
.tracking-response-panel{min-width:0;}
.response-waiting-note{color:#7a8e98;font-size:12px;line-height:1.7;margin:13px 0 0;}
@container(max-width:850px){.tracking-history-grid{grid-template-columns:minmax(0,1fr);}.tracking-history-overview{gap:9px;}.tracking-history-overview article{padding:17px 14px;}.tracking-history-overview strong.is-time{font-size:16px;}.tracking-history-identity>img{width:116px;height:68px;}}
@container(max-width:570px){#competitorAnalysisPage .tracking-history-header{grid-template-columns:1fr;gap:12px;}#competitorAnalysisPage .tracking-history-header>button{justify-self:start;}#competitorAnalysisPage .tracking-history-header h1{font-size:28px;}.tracking-history-overview{grid-template-columns:1fr 1fr;}.tracking-history-overview article:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px;}.tracking-history-overview article:last-child strong{margin:0;}.tracking-history-overview article:last-child p{grid-column:1/-1;}.tracking-history-health{order:3;width:100%;font-size:11px;}.tracking-history-tools{margin-left:auto;}#competitorAnalysisPage .tracking-history-workbench .competitor-tracking-queue{padding:17px;}#competitorAnalysisPage .tracking-history-workbench .competitor-tracking-queue-head h2{font-size:20px;}.tracking-history-workbench .tracking-library-total{display:none;}#competitorAnalysisPage .tracking-history-card{padding:16px;}.tracking-history-identity>img,.tracking-history-identity>i{width:84px;height:52px;}.tracking-history-numbers b{font-size:22px;}.tracking-history-foot{align-items:flex-end;}}
/* Research detail: local growth journal card. Editorial chart, not a raw plot. */
.competitor-detail-tracking-card{border:1px solid #d9e4ea;border-radius:19px;background:#fff;box-shadow:0 14px 34px rgba(15,23,42,.06);padding:22px 24px 20px;min-width:0;}
.competitor-detail-tracking-card .competitor-detail-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px;}
.competitor-detail-tracking-kicker{display:block;font-size:10px;font-weight:700;letter-spacing:2px;color:#2d7f78;margin-bottom:6px;}
.competitor-detail-tracking-card .competitor-detail-card-head h2{margin:0;font-size:19px;line-height:1.3;font-weight:760;color:#0f172a;}
.competitor-detail-tracking-card .competitor-detail-card-head small{display:block;margin-top:6px;font-size:12px;line-height:1.6;color:#6f8590;}
.competitor-detail-tracking-card .competitor-detail-card-head button{flex:none;border:1px solid #cfe0dd;border-radius:9px;background:#f2f9f8;color:#1f6f68;padding:9px 13px;font:inherit;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;}
.competitor-detail-tracking-card .competitor-detail-card-head button:hover{background:#e3f2ef;border-color:#9ccbc3;}
.competitor-detail-tracking-summary{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:14px;}
.competitor-detail-tracking-stats{display:grid;grid-template-columns:repeat(4,minmax(0,auto));gap:8px 26px;}
.competitor-detail-tracking-stats>span{min-width:0;}
.competitor-detail-tracking-stats small{display:block;font-size:11px;color:#7b8f99;margin-bottom:4px;white-space:nowrap;}
.competitor-detail-tracking-stats>span>b{display:block;font-size:20px;line-height:1.2;letter-spacing:-.4px;font-variant-numeric:tabular-nums;color:#1d3a45;white-space:nowrap;}
.competitor-detail-tracking-stats>span>b>b{font-size:inherit;}
.competitor-detail-tracking-stats>span.is-up>b{color:#1a8a7c;}
.competitor-detail-tracking-stats em{font-size:11px;font-style:normal;font-weight:500;margin-left:3px;color:#88999f;}
.competitor-detail-tracking-verdict{display:inline-flex;flex-direction:column;gap:2px;margin:0;padding:9px 13px;border-radius:11px;border:1px solid #dbe6e9;background:#f6f9fa;font-size:12px;color:#5b7480;}
.competitor-detail-tracking-verdict b{font-size:13px;color:#33515c;}
.competitor-detail-tracking-verdict.is-hot{border-color:#ecd2b3;background:linear-gradient(120deg,#fff5e8,#fffaf3);color:#8a5a2d;}
.competitor-detail-tracking-verdict.is-hot b{color:#9c5019;}
.competitor-detail-tracking-verdict.is-surge{border-color:#e6dcb6;background:#fffdf1;color:#7a6a2c;}
.competitor-detail-tracking-verdict.is-surge b{color:#6b5a1f;}
.competitor-detail-tracking-chart{margin:4px -6px 0;}
.competitor-growth-chart{display:block;width:100%;height:auto;overflow:visible;font-family:inherit;}
.competitor-growth-chart .growth-tick line{stroke:#e6edf1;stroke-width:1;}
.competitor-growth-chart .growth-tick:first-of-type line{stroke:#d3dee4;}
.competitor-growth-chart .growth-tick text,.competitor-growth-chart .growth-x{fill:#8a9ca6;font-size:11px;font-variant-numeric:tabular-nums;}
.competitor-growth-chart .growth-line{fill:none;stroke:#1f8f86;stroke-width:2.6;stroke-linejoin:round;stroke-linecap:round;}
.competitor-growth-chart .growth-gap{stroke:#a9b8c2;stroke-width:1.8;stroke-dasharray:5 6;stroke-linecap:round;}
.competitor-growth-chart .growth-dot{fill:#fff;stroke:#1f8f86;stroke-width:2;}
.competitor-growth-chart .growth-dot.is-last{fill:#1f8f86;stroke:#fff;stroke-width:3;filter:drop-shadow(0 2px 4px rgba(31,143,134,.4));}
.competitor-growth-chart .growth-pill rect{fill:#173f46;}
.competitor-growth-chart .growth-pill text{fill:#fff;font-size:11.5px;font-weight:700;font-variant-numeric:tabular-nums;}
.competitor-growth-chart .growth-surge .tracking-hot-range{fill:#f0a44a;opacity:.14;}
.competitor-growth-chart .growth-surge text{fill:#b0682a;font-size:10.5px;font-weight:700;letter-spacing:.2px;}
.competitor-growth-chart .growth-hit{fill:transparent;}
.competitor-growth-chart .growth-hit:hover{fill:rgba(31,143,134,.06);}
.competitor-detail-tracking-legend{display:flex;flex-wrap:wrap;gap:8px 18px;margin:10px 0 14px;font-size:11px;color:#7b8f99;}
.competitor-detail-tracking-legend span{display:inline-flex;align-items:center;gap:7px;}
.competitor-detail-tracking-legend i{display:inline-block;width:18px;height:0;border-top:2.5px solid #1f8f86;border-radius:2px;}
.competitor-detail-tracking-legend i.is-gap{border-top:2px dashed #a9b8c2;}
.competitor-detail-tracking-legend i.is-surge{width:14px;height:10px;border:0;background:#f0a44a;opacity:.4;border-radius:2px;}
.competitor-detail-tracking-legend .is-note{margin-left:auto;color:#9aabb3;}
.competitor-detail-tracking-card .tracking-hot-evidence{border-top:1px solid #eee2d5;border-bottom:0;padding:14px 0 0;margin:0 0 12px;}
.competitor-detail-tracking-note{margin:0;font-size:12px;line-height:1.75;color:#7b8f99;word-break:keep-all;}
.competitor-detail-tracking-note.is-empty{padding:18px 16px;border:1px dashed #d3dee4;border-radius:12px;background:#f8fbfb;text-align:center;}
@media(max-width:1100px){.competitor-detail-tracking-card{grid-column:1/-1;}}
@media(max-width:640px){.competitor-detail-tracking-card{padding:18px 16px 16px;}.competitor-detail-tracking-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;}.competitor-detail-tracking-stats>span>b{font-size:18px;}.competitor-detail-tracking-verdict{width:100%;}.competitor-detail-tracking-card .competitor-detail-card-head{flex-direction:column;}.competitor-detail-tracking-chart{margin:0 -8px;}.competitor-growth-chart .growth-tick text,.competitor-growth-chart .growth-x{font-size:13px;}.competitor-detail-tracking-legend .is-note{margin-left:0;width:100%;}}
/* Channel directory (cdx): one clear action per element, first-visit friendly. The live manager's hooks stay. */
#competitorAnalysisPage .cdx-page{display:grid;gap:18px;min-width:0;color:#1d3a45;}
#competitorAnalysisPage .cdx-back{justify-self:start;}
#competitorAnalysisPage .live-channel-management .cdx-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:20px 28px;flex-wrap:wrap;margin:0;padding:28px 30px;border:1px solid #d5e2e8;border-radius:18px;background:linear-gradient(120deg,#f1f8f7,#fff 68%);}
.cdx-hero-copy{min-width:0;max-width:640px;}
.cdx-eyebrow{display:block;font-size:11px;font-weight:750;letter-spacing:.14em;color:#2d7f78;margin-bottom:8px;}
#competitorAnalysisPage .live-channel-management .cdx-hero h1{margin:0 0 8px;font-size:30px;line-height:1.25;font-weight:780;letter-spacing:-.03em;color:#153748;}
#competitorAnalysisPage .live-channel-management .cdx-hero p{margin:0;font-size:14px;line-height:1.75;color:#4d6b7b;word-break:keep-all;}
.cdx-hero p strong{color:#1f6f68;font-weight:700;}
.cdx-hero-actions{display:flex;gap:10px;flex-wrap:wrap;}
#competitorAnalysisPage .cdx-button{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border:1px solid #cfdde3;border-radius:11px;background:#fff;color:#2f4f5e;font:inherit;font-size:14px;font-weight:650;cursor:pointer;box-shadow:none;white-space:nowrap;transition:background .15s,border-color .15s;}
#competitorAnalysisPage .cdx-button:hover{background:#f3f8f9;border-color:#b7cdd5;}
#competitorAnalysisPage .cdx-button svg{width:16px;height:16px;flex:none;}
#competitorAnalysisPage .cdx-button.is-primary{background:#1f6f68;border-color:#1f6f68;color:#fff;box-shadow:0 8px 18px rgba(31,111,104,.22);}
#competitorAnalysisPage .cdx-button.is-primary:hover{background:#1a5f59;border-color:#1a5f59;}
#competitorAnalysisPage .cdx-button.is-icon{padding:0 12px;font-size:13px;}
.cdx-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}
.cdx-stats article{padding:18px 22px;border:1px solid #dbe6ea;border-radius:14px;background:#fff;min-width:0;}
.cdx-stats article>span{display:block;font-size:12px;font-weight:650;color:#5c7883;}
.cdx-stats article>strong{display:block;margin:8px 0 4px;font-size:28px;line-height:1.2;letter-spacing:-.5px;font-variant-numeric:tabular-nums;color:#173747;}
.cdx-stats article>strong small{font-size:12px;font-weight:500;margin-left:4px;color:#7a919b;}
.cdx-stats article p{margin:0;font-size:12px;line-height:1.6;color:#7c939c;}
.cdx-stats article.is-active>strong{color:#1f6f68;}
.cdx-stats article.is-live{background:#edf7f3;border-color:#c5e0d4;}
.cdx-stats article.is-live>strong{color:#12684c;}
.cdx-guide{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px 28px;align-items:center;padding:16px 22px;border:1px solid #e0e9ed;border-radius:14px;background:#f8fbfb;}
.cdx-guide ol{display:flex;gap:10px 28px;flex-wrap:wrap;list-style:none;margin:0;padding:0;}
.cdx-guide li{display:flex;align-items:flex-start;gap:10px;min-width:0;}
.cdx-guide li b{display:grid;place-items:center;flex:none;width:24px;height:24px;border-radius:50%;background:#1f6f68;color:#fff;font-size:12px;font-weight:700;}
.cdx-guide li strong{display:block;font-size:13px;color:#22414d;}
.cdx-guide li span{display:block;font-size:12px;line-height:1.5;color:#7b8f99;word-break:keep-all;}
.cdx-live-status{display:flex;align-items:center;gap:10px;min-width:0;font-size:12px;color:#5a7480;}
.cdx-live-status i{flex:none;width:8px;height:8px;border-radius:50%;background:#2d9a90;box-shadow:0 0 0 3px rgba(45,154,144,.18);}
.cdx-live-status p{margin:0;min-width:0;line-height:1.5;}
.cdx-live-status p.is-error{color:#9a3824;}
.cdx-live-status button{flex:none;border:1px solid #cfdde3;border-radius:8px;background:#fff;padding:7px 11px;font:inherit;font-size:12px;color:#375a6e;cursor:pointer;}
#competitorAnalysisPage .live-channel-management .cdx-panel{padding:0;border:1px solid #d9e4ea;border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 10px 28px rgba(15,40,50,.05);}
.cdx-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) auto auto auto;gap:12px;align-items:center;padding:16px 20px;border-bottom:1px solid #e3ebf0;}
.cdx-search{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 14px;border:1px solid #cfdde3;border-radius:11px;background:#f8fafc;color:#7b8f99;}
.cdx-search svg{width:16px;height:16px;flex:none;}
.cdx-search input{flex:1;min-width:0;border:0;background:transparent;font:inherit;font-size:14px;color:#1d3a45;outline:0;}
.cdx-search:focus-within{border-color:#2d9a90;background:#fff;box-shadow:0 0 0 3px rgba(45,154,144,.14);}
.cdx-segments{display:inline-flex;gap:4px;padding:4px;border-radius:11px;background:#eef3f5;}
#competitorAnalysisPage .cdx-seg{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 12px;border:0;border-radius:8px;background:transparent;color:#5f7a86;font:inherit;font-size:13px;font-weight:600;cursor:pointer;box-shadow:none;white-space:nowrap;}
#competitorAnalysisPage .cdx-seg b{font-size:11px;padding:1px 6px;border-radius:5px;background:#dde7ea;color:#4f6b77;}
#competitorAnalysisPage .cdx-seg.active{background:#fff;color:#1f6f68;box-shadow:0 1px 3px rgba(20,60,70,.14);}
#competitorAnalysisPage .cdx-seg.active b{background:#dcefe9;color:#1f6f68;}
.cdx-select{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:650;color:#5f7a86;white-space:nowrap;}
.cdx-select select{min-height:40px;max-width:230px;border:1px solid #cfdde3;border-radius:10px;padding:0 10px;background:#fff;color:#1d3a45;font:inherit;font-size:13px;}
.cdx-table-hint{margin:0;padding:9px 20px;font-size:12px;color:#7b8f99;background:#fbfdfd;border-bottom:1px solid #eef3f5;}
.cdx-table-hint strong{color:#1f6f68;font-weight:700;}
#competitorAnalysisPage .live-channel-management .cdx-table{overflow-x:auto;border:0;border-radius:0;}
#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-row{display:grid;grid-template-columns:minmax(250px,1.7fr) 118px 118px 150px minmax(150px,1fr) 176px;gap:14px;min-width:980px;min-height:0;align-items:center;padding:13px 20px;border-bottom:1px solid #e8eff3;background:#fff;font-size:14px;}
#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-row>div{display:flex;align-items:center;min-width:0;padding:0;}
#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-row:last-child{border-bottom:0;}
#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-row[hidden]{display:none;}
#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-row:not(.competitor-channel-head):hover{background:#f6fafa;}
#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-head{min-height:0;padding:11px 20px;background:#f4f8f9;color:#5c7883;font-size:12px;font-weight:700;}
#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-head:hover{background:#f4f8f9;}
#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-name{gap:12px;}
#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-name>div{min-width:0;}
#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-name strong{display:block;font-size:14px;font-weight:700;color:#1d3a45;line-height:1.45;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-name span{display:block;font-size:12px;color:#7a919b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-badge{width:40px;height:40px;border-radius:12px;flex:none;}
#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-row.is-inactive .competitor-channel-name strong{color:#7a919b;}
#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-row.is-inactive .competitor-channel-badge{filter:grayscale(1);opacity:.7;}
#competitorAnalysisPage .live-channel-management .cdx-table .cdx-chip,#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-group{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border-radius:7px;background:#e8f1f4;color:#3f5f6e;font-size:12px;font-weight:650;white-space:nowrap;}
#competitorAnalysisPage .live-channel-management .cdx-table .cdx-chip.is-muted{background:#f1f5f6;color:#8a9ca6;font-weight:500;}
#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-status{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border-radius:7px;background:#f1f5f6;color:#5f7a86;font-size:12px;font-weight:650;white-space:nowrap;}
#competitorAnalysisPage .cdx-switch{display:inline-flex;align-items:center;gap:9px;border:0;background:none;padding:6px 0;color:#7a919b;font:inherit;font-size:12px;font-weight:600;cursor:pointer;box-shadow:none;white-space:nowrap;}
#competitorAnalysisPage .cdx-switch.is-on{color:#1f6f68;}
.cdx-switch-track{display:inline-flex;align-items:center;flex:none;width:38px;height:22px;padding:3px;border-radius:20px;background:#bacbd5;transition:background .15s;}
.cdx-switch-track i{width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #132f4933;transition:transform .15s;}
.cdx-switch.is-on .cdx-switch-track{background:#1f6f68;}
.cdx-switch.is-on .cdx-switch-track i{transform:translateX(16px);}
#competitorAnalysisPage .cdx-switch:focus-visible{outline:3px solid #72b7ac;outline-offset:3px;border-radius:6px;}
#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-memo{font-size:13px;color:#5f7a86;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#competitorAnalysisPage .live-channel-management .cdx-table .cdx-actions,#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-actions{display:flex;gap:8px;align-items:center;}
#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-actions button{min-height:34px;padding:0 12px;border:1px solid #cfdde3;border-radius:8px;background:#fff;color:#2f4f5e;font:inherit;font-size:12px;font-weight:650;cursor:pointer;}
#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-actions button:hover{background:#f3f8f9;border-color:#b7cdd5;}
#competitorAnalysisPage .live-channel-management .cdx-table .cdx-link,#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-actions a{display:inline-flex;align-items:center;gap:5px;min-height:34px;padding:0 10px;border:1px solid transparent;border-radius:8px;color:#5f7a86;font-size:12px;font-weight:600;text-decoration:none;white-space:nowrap;}
#competitorAnalysisPage .live-channel-management .cdx-table .cdx-link:hover{color:#1f6f68;background:#eef7f5;}
#competitorAnalysisPage .live-channel-management .cdx-table .cdx-link svg{width:13px;height:13px;}
.cdx-empty{margin:0;padding:34px 20px;text-align:center;font-size:13px;color:#6f8590;}
.cdx-empty strong{display:block;font-size:16px;color:#22414d;margin-bottom:8px;}
.cdx-empty p{margin:0 auto 16px;max-width:460px;line-height:1.7;word-break:keep-all;}
.cdx-empty.is-first{padding:52px 20px;background:linear-gradient(#fff,#f7fbfb);}
@media(max-width:1000px){.cdx-toolbar{grid-template-columns:minmax(0,1fr) auto;}.cdx-select{grid-column:1;}.cdx-guide{grid-template-columns:1fr;}}
@media(max-width:640px){#competitorAnalysisPage .live-channel-management .cdx-hero{padding:22px;}#competitorAnalysisPage .live-channel-management .cdx-hero h1{font-size:26px;}.cdx-hero-actions{width:100%;}.cdx-hero-actions .cdx-button{flex:1;justify-content:center;}.cdx-stats{grid-template-columns:1fr;gap:10px;}.cdx-guide ol{flex-direction:column;gap:12px;}.cdx-toolbar{grid-template-columns:1fr;padding:14px;}.cdx-segments{overflow-x:auto;}.cdx-select select{flex:1;max-width:none;}.cdx-select{width:100%;}}
/* Channel modal (ccm): stepped profile form; header and footer stay put, only the body scrolls. */
.modal.ccm{display:flex;flex-direction:column;width:min(760px,calc(100vw - 32px));max-height:calc(100vh - 56px);border-radius:20px;overflow:hidden;}
.ccm-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex:none;padding:22px 28px 20px;border-bottom:1px solid #e6edf1;background:linear-gradient(120deg,#f1f8f7,#fff 65%);}
.ccm-identity{display:flex;align-items:center;gap:16px;min-width:0;}
.ccm-avatar{display:grid;place-items:center;flex:none;width:52px;height:52px;border-radius:15px;background:linear-gradient(180deg,#0f9f9f,#2563eb);color:#fff;font-size:20px;font-weight:750;overflow:hidden;box-shadow:0 8px 18px rgba(21,94,117,.18);}
.ccm-avatar.has-image{background:#e5eef0;box-shadow:none;}.ccm-avatar img{width:100%;height:100%;object-fit:cover;}
.ccm-avatar.is-new{background:linear-gradient(140deg,#1f8f86,#1f6f68);}
.ccm-avatar.is-new svg{width:24px;height:24px;}
.ccm-eyebrow{display:block;font-size:10px;font-weight:700;letter-spacing:2px;color:#2d7f78;margin-bottom:5px;}
.ccm-head h2{margin:0;font-size:21px;line-height:1.3;font-weight:760;color:#0f172a;overflow-wrap:anywhere;}
.ccm-head p{margin:5px 0 0;font-size:12.5px;line-height:1.65;color:#6f8590;overflow-wrap:anywhere;word-break:keep-all;}
.ccm-head p code{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:11px;color:#4f6772;background:#eef3f5;padding:2px 6px;border-radius:5px;}
.ccm-head .ccm-close{flex:none;}
.ccm-body{flex:1 1 auto;min-height:0;overflow:auto;display:block;padding:0 28px;overscroll-behavior:contain;}
.ccm-section{display:grid;gap:14px;padding:22px 0;border-bottom:1px solid #edf2f4;}
.ccm-section:last-child{border-bottom:0;padding-bottom:26px;}
.ccm-section>header{display:flex;align-items:flex-start;gap:14px;}
.ccm-step{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:50%;background:#1f6f68;color:#fff;font-size:12px;font-weight:800;}
.ccm-section>header h3{margin:0;font-size:15px;font-weight:720;color:#173747;line-height:1.5;}
.ccm-section>header p{margin:3px 0 0;font-size:12.5px;line-height:1.7;color:#7b8f99;word-break:keep-all;}
.ccm-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;align-items:start;}
.ccm-field{display:grid;gap:7px;min-width:0;}
.ccm-label{font-size:12px;font-weight:700;color:#3f5563;letter-spacing:.2px;}
.ccm-label em{font-style:normal;font-weight:500;color:#8a9ca6;margin-left:4px;}
.ccm-field input,.ccm-field select,.ccm-field textarea{width:100%;min-height:46px;border:1px solid #d5dfe6;border-radius:11px;padding:0 14px;background:#fff;color:#0f172a;font:inherit;font-size:14px;font-weight:500;transition:border-color .15s,box-shadow .15s;}
.ccm-field select{appearance:auto;}
.ccm-field textarea{padding:12px 14px;min-height:92px;resize:vertical;line-height:1.6;}
.ccm-field input:focus,.ccm-field select:focus,.ccm-field textarea:focus{outline:0;border-color:#2d9a90;box-shadow:0 0 0 3px rgba(45,154,144,.16);}
.ccm-field input::placeholder,.ccm-field textarea::placeholder{color:#a3b1b9;font-weight:400;}
.ccm-field small{display:block;min-height:17px;font-size:11.5px;font-weight:500;line-height:1.5;color:#8a9ca6;}
.ccm-field-primary input{min-height:50px;font-size:15px;}
.ccm-field input[data-competitor-category-custom]{margin-top:2px;}
.ccm-status{display:flex;align-items:center;gap:8px;color:#7b8f99;}
.ccm-status i{flex:none;width:8px;height:8px;border-radius:50%;background:#c4d0d6;}
.ccm-status.is-linked{color:#1f6f68;}.ccm-status.is-linked i{background:#2d9a90;box-shadow:0 0 0 3px rgba(45,154,144,.18);}
.ccm-switch{position:relative;display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid #dbe6e9;border-radius:12px;background:#f8fbfb;cursor:pointer;}
.ccm-switch input{position:absolute;opacity:0;width:0;height:0;}
.ccm-switch-track{display:inline-flex;align-items:center;flex:none;width:44px;height:26px;padding:3px;border-radius:20px;background:#bacbd5;transition:background .15s;}
.ccm-switch-track i{width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #132f4933;transition:transform .15s;}
.ccm-switch input:checked~.ccm-switch-track{background:#1f6f68;}
.ccm-switch input:checked~.ccm-switch-track i{transform:translateX(18px);}
.ccm-switch input:focus-visible~.ccm-switch-track{outline:3px solid #72b7ac;outline-offset:3px;}
.ccm-switch-copy{display:grid;gap:2px;min-width:0;}
.ccm-switch-copy strong{font-size:14px;color:#173747;}.ccm-switch-copy small{font-size:12px;color:#7b8f99;}
.ccm-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:none;padding:16px 28px;border-top:1px solid #e6edf1;background:#fbfdfc;}
.ccm-foot>div{display:flex;gap:8px;}
.ccm-foot .primary-button,.ccm-foot .ghost-button{min-height:44px;padding:0 20px;border-radius:11px;font-size:14px;}
.ccm-foot-note{font-size:12px;color:#7b8f99;line-height:1.5;}
.ccm-delete{min-height:44px;border:1px solid #f1d4d4;border-radius:11px;background:#fff;color:#b23b3b;padding:0 14px;font:inherit;font-size:13px;font-weight:600;cursor:pointer;}
.ccm-delete:hover{background:#fdf3f3;}
@media(max-width:640px){.modal.ccm{width:100%;max-height:calc(100vh - 32px);border-radius:16px;}.ccm-head{padding:18px 18px 16px;}.ccm-body{padding:0 18px;}.ccm-grid{grid-template-columns:1fr;}.ccm-section{padding:18px 0;}.ccm-foot{padding:14px 18px;flex-direction:column-reverse;align-items:stretch;}.ccm-foot>div{flex-direction:column-reverse;}.ccm-foot>div button{width:100%;}.ccm-delete{width:100%;}.ccm-foot-note{text-align:center;}}
/* Research table: what happened since the survey, from this PC's journal. */
.competitor-live-growth{display:inline-grid;gap:2px;min-width:0;padding:6px 9px;border:1px solid #dbe6e9;border-radius:9px;background:#f8fbfb;color:#3f5563;font:inherit;font-size:11px;line-height:1.35;text-align:left;cursor:pointer;}
.competitor-live-growth:hover{border-color:#9ccbc3;background:#eef7f5;}
.competitor-live-growth>b{font-size:12px;font-weight:700;color:#33515c;}
.competitor-live-growth>b.is-hot{color:#9c5019;}.competitor-live-growth>b.is-surge{color:#6b5a1f;}.competitor-live-growth>b.is-late{color:#a35f22;}.competitor-live-growth>b.is-steady{color:#1f6f68;}.competitor-live-growth>b.is-burst{color:#2f5f9e;}.competitor-live-growth>b.is-flash{color:#7c5fb6;}.competitor-live-growth>b.is-fading,.competitor-live-growth>b.is-pending{color:#6f8590;}
.competitor-live-growth>span{color:#6f8590;font-variant-numeric:tabular-nums;white-space:nowrap;}
.competitor-live-growth.is-empty{display:inline-flex;min-height:28px;align-items:center;color:#94a3b8;background:#f8fafc;border-style:dashed;cursor:default;}
.competitor-detail-tracking-verdicts{display:flex;flex-direction:column;gap:6px;align-items:flex-end;}
.competitor-detail-tracking-verdict.is-pattern{border-color:#d7e3e6;background:#fff;}
.competitor-detail-tracking-verdict.is-pattern.is-late b{color:#a35f22;}.competitor-detail-tracking-verdict.is-pattern.is-steady b{color:#1f6f68;}.competitor-detail-tracking-verdict.is-pattern.is-burst b{color:#2f5f9e;}.competitor-detail-tracking-verdict.is-pattern.is-flash b{color:#7c5fb6;}
.competitor-growth-chart .growth-reference{fill:none;stroke:#8fa3ad;stroke-width:1.8;stroke-dasharray:2 5;stroke-linecap:round;opacity:.9;}
.competitor-detail-tracking-legend i.is-reference{border-top:2px dotted #8fa3ad;}
@media(max-width:640px){.competitor-detail-tracking-verdicts{width:100%;align-items:stretch;}}
.competitor-growth-chart.is-narrow .growth-tick text,.competitor-growth-chart.is-narrow .growth-x{font-size:12px;}
.competitor-growth-chart.is-narrow .growth-pill text{font-size:12px;}
.competitor-growth-chart.is-narrow .growth-surge text{font-size:11px;}
@media(max-width:640px){.competitor-growth-chart .growth-tick text,.competitor-growth-chart .growth-x{font-size:12px;}}
/* Channel directory on phones: each channel becomes a card; the live manager's cell label is kept. */
@media(max-width:640px){
#competitorAnalysisPage .live-channel-management .cdx-table{overflow:visible;}
#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-row{min-width:0;grid-template-columns:minmax(0,1fr) auto;gap:10px 12px;padding:16px;}
#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-head{display:none;}
#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-name{grid-column:1/-1;}
#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-row>div:nth-child(2){justify-self:start;}
#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-row>div:nth-child(3){justify-self:end;gap:8px;}
#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-row>div:nth-child(3):before{content:"분석 대상";font-size:12px;font-weight:650;color:#5f7a86;}
#competitorAnalysisPage .live-channel-management .cdx-table .lcm-live-cell{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;border-block:1px solid #e6eeee;padding:8px 0;}
#competitorAnalysisPage .live-channel-management .cdx-table .lcm-live-cell:before{content:"라이브 조사";font-size:12px;font-weight:650;color:#5f7a86;}
#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-row>div:nth-child(5){grid-column:1/-1;}
#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-memo{white-space:normal;overflow-wrap:anywhere;font-size:12px;}
#competitorAnalysisPage .live-channel-management .cdx-table .cdx-actions,#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-actions{grid-column:1/-1;justify-content:flex-end;}
.cdx-live-status{flex-wrap:wrap;}.cdx-live-status p{flex:1 1 180px;}
.cdx-table-hint{display:none;}
}
/* Checkpoint growth curve: days without a reading are bridged by a dashed straight-line estimate (competitor-growth-bridge). */
#competitorAnalysisPage .competitor-growth-curve .competitor-growth-bridge line{stroke:#8fa6ad;stroke-width:2.2;stroke-dasharray:5 5;stroke-linecap:round;}
#competitorAnalysisPage .competitor-growth-curve .competitor-growth-bridge text{fill:#7d939b;font-size:9.5px;font-weight:600;letter-spacing:.01em;}
#competitorAnalysisPage .competitor-growth-curve svg circle.is-estimated{fill:#fff;stroke:#9db0b7;stroke-width:1.6;stroke-dasharray:2 1.5;}
#competitorAnalysisPage .competitor-growth-legend{display:flex;align-items:center;gap:6px;margin:8px 0 0;padding-top:8px;border-top:1px dashed #dbe6e6;color:#7a8e94;font-size:10px;line-height:1.5;}
#competitorAnalysisPage .competitor-growth-legend i{display:inline-block;flex:none;width:16px;height:0;border-top:3px solid #148c83;border-radius:2px;}
#competitorAnalysisPage .competitor-growth-legend i.is-estimated{margin-left:8px;border-top:2px dashed #8fa6ad;}
/* Research results table: calm header, no vertical rules, aligned numeric columns, reaction-rate column (competitor-reaction-cell).
   Nine tracks share the panel width; narrower panels scroll sideways instead of clipping columns. */
#competitorAnalysisPage .competitor-results-primary .competitor-data-table{border:1px solid #d8e2e7;border-radius:12px;background:#fff;overflow-x:auto;overflow-y:hidden;box-shadow:0 1px 2px rgba(20,45,60,.04);}
#competitorAnalysisPage .competitor-results-primary .competitor-data-row{width:100%;min-width:max(100%,990px);column-gap:2px;min-height:66px;padding:0 6px;border-bottom:1px solid #e6edf0;transition:background .15s ease;}
#competitorAnalysisPage .competitor-results-primary .competitor-data-row:not(.competitor-data-head):hover{background:#f6fafa;}
#competitorAnalysisPage .competitor-results-primary .competitor-data-row:last-child{border-bottom:0;}
#competitorAnalysisPage .competitor-results-primary .competitor-data-row > div{padding:12px 8px;border-left:0;color:#2a3f4c;font-size:13.5px;font-weight:450;line-height:1.45;}
#competitorAnalysisPage .competitor-results-primary .competitor-data-head{min-height:46px;background:#f3f7f8;border-bottom:1px solid #d8e2e7;}
#competitorAnalysisPage .competitor-results-primary .competitor-data-head > div{padding:10px 8px;color:#5b6f7c;font-size:11.5px;font-weight:650;letter-spacing:.02em;white-space:nowrap;}
#competitorAnalysisPage .competitor-results-primary .competitor-sort-header{gap:4px;padding:4px 6px;margin:-4px -6px;color:inherit;font-weight:650;}
#competitorAnalysisPage .competitor-results-primary .competitor-sort-header:hover{color:#146e66;background:rgba(20,110,102,.08);}
#competitorAnalysisPage .competitor-results-primary .competitor-sort-header.active{color:#146e66;}
#competitorAnalysisPage .competitor-results-primary .competitor-sort-arrow{font-size:9px;opacity:.45;}
#competitorAnalysisPage .competitor-results-primary .competitor-sort-header.active .competitor-sort-arrow{opacity:1;}
#competitorAnalysisPage .competitor-results-primary .competitor-data-row > div:nth-child(4),
#competitorAnalysisPage .competitor-results-primary .competitor-data-row > div:nth-child(7){justify-content:center;text-align:center;}
#competitorAnalysisPage .competitor-results-primary .competitor-data-row > div:nth-child(5),
#competitorAnalysisPage .competitor-results-primary .competitor-data-row > div:nth-child(6){justify-content:flex-end;text-align:right;}
#competitorAnalysisPage .competitor-results-primary .competitor-result-channel-cell{gap:8px;}
#competitorAnalysisPage .competitor-results-primary .competitor-result-channel-cell i{width:30px;height:30px;flex-basis:30px;border-radius:9px;font-size:11px;}
#competitorAnalysisPage .competitor-results-primary .competitor-result-channel-cell strong{font-size:13px;}
#competitorAnalysisPage .competitor-results-primary .competitor-view-count{color:#1f3a47;font-size:13.5px;font-weight:600;font-variant-numeric:tabular-nums;}
#competitorAnalysisPage .competitor-results-primary .competitor-age-badge{min-width:0;min-height:26px;padding:0 8px;color:#4d6470;background:#eef3f5;font-size:11.5px;font-weight:550;white-space:nowrap;}
#competitorAnalysisPage .competitor-results-primary .competitor-reach-grade{width:auto;min-width:62px;height:28px;padding:0 9px;}
.competitor-reaction-cell{display:inline-grid;justify-items:end;gap:1px;min-width:0;margin:-5px -7px;padding:5px 7px;border:1px solid transparent;border-radius:9px;background:transparent;color:#1f3a47;font:inherit;line-height:1.3;text-align:right;cursor:pointer;}
.competitor-reaction-cell:hover{border-color:#cfe1de;background:#eef7f5;}
.competitor-reaction-cell>b{display:inline-flex;align-items:baseline;gap:2px;margin-bottom:2px;color:#1f3a47;font-size:14px;font-weight:650;font-variant-numeric:tabular-nums;letter-spacing:-.01em;}
.competitor-reaction-cell>b small{color:#6a8088;font-size:11px;font-weight:500;}
.competitor-reaction-cell>b em{margin-left:5px;padding:1px 5px;border-radius:999px;color:#176e58;background:#dcefe8;font-size:9.5px;font-style:normal;font-weight:650;letter-spacing:0;}
.competitor-reaction-cell>span{color:#6f8590;font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap;}
.competitor-reaction-cell.is-strong>b{color:#146e58;}
.competitor-reaction-cell.is-empty{display:inline-flex;align-items:center;min-height:28px;margin:0;padding:0 9px;border:1px dashed #d5dee3;border-radius:9px;color:#94a3b8;background:#f8fafc;font-size:12px;cursor:default;}
/* Channel directory: row-level delete and live-only rows that are not in the list. */
#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-actions button.is-danger{color:#a53b3b;border-color:#ecd3d3;}
#competitorAnalysisPage .live-channel-management .cdx-table .competitor-channel-actions button.is-danger:hover{color:#8f2b2b;background:#fdf3f3;border-color:#e2bcbc;}
#competitorAnalysisPage .live-channel-management .cdx-table [data-live-extra-channel]{background:#fbfcfc;}
#competitorAnalysisPage .live-channel-management .cdx-table [data-live-extra-channel] .competitor-channel-name strong{color:#5f7a86;}
#competitorAnalysisPage .live-channel-management .cdx-table [data-live-extra-channel] .competitor-channel-status{color:#7a6a3c;background:#fbf3e2;border-color:#efe1c2;}

/* Channel directory in the shared (member) screen: read-only note under the hero copy. */
.cdx-hero-copy .cdx-readonly-note{margin-top:8px;padding:8px 12px;border-radius:10px;background:rgba(20,125,131,.08);color:#146168;font-size:13px;}
/* reach-v2: same-age band lines */
.competitor-growth-chart .growth-reference.is-top25{stroke:#c9a13b;stroke-dasharray:6 4;opacity:.75;}
.competitor-growth-chart .growth-reference.is-top10{stroke:#c0563b;stroke-dasharray:6 4;opacity:.75;}
.competitor-detail-tracking-legend i.is-reference.is-top25{border-top:2px dashed #c9a13b;}
.competitor-detail-tracking-legend i.is-reference.is-top10{border-top:2px dashed #c0563b;}
