/* Sentiment analysis module */
.sentiment-page{max-width:1600px;margin:0 auto;padding-bottom:34px}.sentiment-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:center;min-height:185px;padding:25px 28px;border:1px solid #27638d;background:radial-gradient(circle at 72% 0,#173e61 0,transparent 37%),linear-gradient(125deg,#0f3455,#081d36 72%);box-shadow:0 12px 35px #0004}.sentiment-hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 49%,rgba(99,220,231,.04) 50%);background-size:32px 100%;pointer-events:none}.sentiment-hero-copy,.sentiment-upload{position:relative;z-index:1}.sentiment-hero .eyebrow,.sentiment-card-head span,.sentiment-meta span,.peak-note span{font:8px 'JetBrains Mono',monospace;letter-spacing:.14em;color:#70d9e5}.sentiment-hero h2{max-width:720px;margin:9px 0 7px;font-size:31px;line-height:1;letter-spacing:-.035em}.sentiment-hero p{max-width:650px;margin:0;color:#9eb8cc;font-size:12px}.sentiment-freshness{display:flex;align-items:center;gap:13px;margin-top:22px}.sentiment-freshness b{padding:7px 10px;border:1px solid #347e78;background:#0c3b3e;color:#7be1bc;font:8px 'JetBrains Mono',monospace;letter-spacing:.08em}.sentiment-freshness b i{display:inline-block;width:6px;height:6px;margin-right:6px;border-radius:50%;background:#62dca4;box-shadow:0 0 9px #62dca4}.sentiment-freshness span{color:#b5c9d8;font:9px 'JetBrains Mono',monospace}.sentiment-upload{display:grid;place-items:center;min-height:132px;padding:16px;border:1px dashed #4b93bb;background:#071c33aa;text-align:center;cursor:pointer;transition:.2s}.sentiment-upload:hover,.sentiment-upload.dragging{border-color:#74e4ed;background:#0e3555;box-shadow:inset 0 0 22px #63dce71a}.sentiment-upload input{display:none}.sentiment-upload .upload-icon{display:grid;place-items:center;width:32px;height:32px;margin-bottom:7px;border:1px solid #4e91ba;background:#0f4265;color:#8ff1f4;font-size:18px}.sentiment-upload b{font-size:12px}.sentiment-upload small{margin:4px 0 8px;color:#9ab3c7}.sentiment-upload em{color:#648aa8;font:7px 'JetBrains Mono',monospace;font-style:normal;letter-spacing:.08em}.sentiment-status{margin-top:8px;padding:9px 12px;border-left:3px solid #63dce7;background:#0c3150;color:#c4e8f2;font-size:10px}.sentiment-meta{display:flex;align-items:center;gap:9px;padding:10px 13px;border:1px solid #1f527b;border-top:0;background:#071d35;white-space:nowrap;overflow:auto}.sentiment-meta span{color:#6f96b3}.sentiment-meta b{max-width:280px;margin-right:18px;overflow:hidden;text-overflow:ellipsis;color:#c9ddea;font:9px 'JetBrains Mono',monospace}.sentiment-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:10px 0}.sentiment-kpis article{position:relative;overflow:hidden;min-height:106px;padding:16px 18px;border:1px solid #1f527b;background:linear-gradient(135deg,#0f385c,#071d36);box-shadow:0 0 18px #0097ff12}.sentiment-kpis article:after{content:'';position:absolute;right:-20px;bottom:-45px;width:100px;height:100px;border:22px solid #63dce708;border-radius:50%}.sentiment-kpis span{display:block;color:#91aec7;font:8px 'JetBrains Mono',monospace;letter-spacing:.1em;text-transform:uppercase}.sentiment-kpis b{display:block;margin:12px 0 9px;color:#d6f7fb;font-size:25px;letter-spacing:-.04em}.sentiment-kpis small{font:8px 'JetBrains Mono',monospace}.sentiment-up{color:#63dca8!important}.sentiment-down{color:#f18b99!important}.sentiment-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:10px}.sentiment-card{overflow:hidden;border:1px solid #1f527b;background:#092441;box-shadow:0 0 18px #0097ff12}.sentiment-card-head{display:flex;justify-content:space-between;align-items:center;min-height:59px;padding:12px 15px;border-bottom:1px solid #1d4b70;background:#0c2b4b}.sentiment-card-head h3{margin:5px 0 0;font-size:13px}.sentiment-card-head>b{color:#a8c2d5;font:8px 'JetBrains Mono',monospace;text-transform:uppercase}.sentiment-score-card{grid-column:span 5}.source-card{grid-column:span 7}.leader-card{grid-column:span 7}.phrase-card{grid-column:span 5}.location-card{grid-column:1/-1}.score-badge{padding:6px 8px;border:1px solid #397997;color:#92ebf0!important;background:#0b3652}.sentiment-score-body{display:grid;grid-template-columns:180px 1fr;gap:16px;align-items:center;padding:22px}.sentiment-donut{position:relative;width:164px;height:164px;border-radius:50%;transform:rotate(-35deg);box-shadow:0 0 22px #0005}.sentiment-donut:after{content:'';position:absolute;inset:25px;border:1px solid #2f6485;border-radius:50%;background:#092441}.sentiment-donut>div{position:absolute;z-index:1;inset:0;display:grid;place-content:center;text-align:center;transform:rotate(35deg)}.sentiment-donut b{font-size:36px;color:#d9f7f8;line-height:1}.sentiment-donut small{margin-top:6px;color:#7fa4bc;font:7px 'JetBrains Mono',monospace}.sentiment-reading>span{color:#77a3bd;font:8px 'JetBrains Mono',monospace}.sentiment-reading h4{margin:6px 0 5px;font-size:18px;text-transform:capitalize}.sentiment-reading p{margin:0 0 13px;color:#90aabf;font-size:10px;line-height:1.5}.sentiment-legend{display:grid;grid-template-columns:7px 1fr auto;gap:7px 8px;align-items:center}.sentiment-legend i{width:7px;height:7px;border-radius:50%}.sentiment-legend i.positive{background:#62dca4}.sentiment-legend i.neutral-tone{background:#68839a}.sentiment-legend i.negative{background:#f07c8b}.sentiment-legend span,.sentiment-legend b{font-size:9px}.sentiment-legend b{color:#d5e7f1;font-family:'JetBrains Mono',monospace}.source-bars{display:grid;gap:10px;padding:17px 18px}.source-bars>div{display:grid;grid-template-columns:100px minmax(80px,1fr) 48px 45px;gap:9px;align-items:center}.source-bars span{font-size:10px}.source-bars i,.location-list i,.phrase-ranking i{display:block;height:7px;background:#07182c;overflow:hidden}.source-bars em,.location-list em{display:block;height:100%;background:linear-gradient(90deg,#63dce7,#7eaef3);box-shadow:0 0 9px #63dce777}.source-bars b,.source-bars small{font:9px 'JetBrains Mono',monospace;text-align:right}.source-bars b{color:#cce8f2}.source-bars small{color:#7595ad}.sentiment-table{overflow:auto}.sentiment-table-head,.sentiment-table-row{display:grid;grid-template-columns:minmax(190px,1.6fr) repeat(3,minmax(75px,.7fr));align-items:center;min-width:560px}.sentiment-table-head{padding:10px 14px;background:#071d35;color:#7193ac;font:8px 'JetBrains Mono',monospace;text-transform:uppercase}.sentiment-table-row{min-height:42px;padding:7px 14px;border-top:1px solid #163f60}.sentiment-table-row:hover{background:#0e3453}.sentiment-table-row>span:first-child{display:flex;align-items:center;gap:9px}.sentiment-table-row i{display:grid;place-items:center;width:21px;height:21px;border:1px solid #2f6180;color:#6fa5c2;font:8px 'JetBrains Mono',monospace;font-style:normal}.sentiment-table-row b{font-size:10px}.sentiment-table-row>span:not(:first-child),.sentiment-table-row strong{font:9px 'JetBrains Mono',monospace;color:#a8bfd0}.sentiment-table-row strong{color:#90e2e7}.phrase-cloud{display:flex;min-height:146px;padding:18px;align-items:center;justify-content:center;align-content:center;gap:9px 14px;flex-wrap:wrap;background:radial-gradient(circle,#0e3859,#092441 65%)}.phrase-cloud span{color:#70dfea;font-weight:800;line-height:1}.phrase-cloud .phrase-1{color:#9dbbf4}.phrase-cloud .phrase-2{color:#d7eef5}.phrase-cloud .phrase-3{color:#64c9bd}.phrase-cloud .phrase-4{color:#edca60}.phrase-ranking{padding:10px 15px}.phrase-ranking>div{display:grid;grid-template-columns:18px 1fr 55px 80px 28px;gap:8px;align-items:center;padding:7px 0;border-top:1px solid #16405f}.phrase-ranking>div:first-child{border-top:0}.phrase-ranking span,.phrase-ranking em,.phrase-ranking strong{font:8px 'JetBrains Mono',monospace}.phrase-ranking span{color:#6b91ab}.phrase-ranking b{font-size:9px}.phrase-ranking em{font-style:normal}.phrase-ranking i u{display:block;height:100%;background:#7eaef3;text-decoration:none}.phrase-ranking strong{text-align:right;color:#cbe3ed}.location-card{display:grid;grid-template-columns:minmax(0,1fr) 220px}.location-card .sentiment-card-head{grid-column:1/-1}.location-list{padding:8px 16px}.location-list>div{display:grid;grid-template-columns:28px 160px 1fr 60px 55px;gap:10px;align-items:center;padding:10px 0;border-top:1px solid #16405f}.location-list>div:first-child{border-top:0}.location-list span{color:#6190ac;font:8px 'JetBrains Mono',monospace}.location-list b{font-size:10px}.location-list strong,.location-list small{font:9px 'JetBrains Mono',monospace;text-align:right}.location-list strong{color:#d2e6f0}.location-list small{color:#75abbf}.peak-note{display:grid;align-content:center;margin:14px;padding:18px;border:1px solid #2a6786;background:linear-gradient(145deg,#0e3858,#071b31)}.peak-note b{margin:8px 0 4px;color:#b9f2f2;font-size:22px}.peak-note small{color:#87aabe;font:9px 'JetBrains Mono',monospace}
@media(max-width:1100px){.sentiment-score-card,.source-card,.leader-card,.phrase-card{grid-column:1/-1}.sentiment-card{min-width:0}}
@media(max-width:720px){.sentiment-page{padding:10px}.sentiment-hero{grid-template-columns:1fr;padding:20px}.sentiment-hero h2{font-size:26px}.sentiment-upload{min-height:110px}.sentiment-freshness{align-items:flex-start;flex-direction:column;gap:7px}.sentiment-meta{align-items:flex-start;flex-direction:column;white-space:normal}.sentiment-meta b{max-width:100%;margin:0 0 5px}.sentiment-kpis{grid-template-columns:1fr 1fr}.sentiment-kpis article{min-height:98px;padding:14px}.sentiment-score-body{grid-template-columns:1fr;justify-items:center}.sentiment-reading{text-align:center}.sentiment-legend{text-align:left}.source-bars>div{grid-template-columns:82px minmax(55px,1fr) 42px}.source-bars small{display:none}.location-card{grid-template-columns:1fr}.location-list>div{grid-template-columns:22px 95px 1fr 50px}.location-list small{display:none}.peak-note{margin-top:0}.phrase-ranking>div{grid-template-columns:18px 1fr 52px 45px 25px}.sentiment-card-head{gap:10px}}
