/* Parliament 0.5 — portrait-led coverage / real publisher perspectives */
.perspective-feed-shell{display:flex;flex-direction:column;gap:18px}
.feed-hero-bar{min-height:116px;padding:23px 27px;border-radius:23px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.feed-hero-bar h2{font-size:clamp(23px,2.5vw,34px);font-weight:780;letter-spacing:-1px;line-height:1.1;margin:8px 0}
.feed-hero-bar p{font-size:13px;color:#7287a3;line-height:1.55;margin:0}
.category-chips{display:flex;gap:8px;flex-wrap:wrap;align-items:center;padding:3px 0 5px}
.category-chip{background:rgba(252,254,255,.56);border:1px solid #ffffffc9;padding:9px 14px;border-radius:99px;color:#5e7796;font-weight:730;font-size:12px;box-shadow:0 2px 7px #5d7ba61e;transition:background .2s,transform .2s}
.category-chip:hover{background:#ffffffb8;transform:translateY(-1px)}
.category-chip.active{background:linear-gradient(130deg,#607fae,#455e89);color:#fff;border-color:#a3b8d4}
.perspective-feed-grid,.news-grid{display:grid;gap:19px;align-items:start;grid-template-columns:repeat(2,minmax(0,1fr))}
.news-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.coverage-card{display:flex;flex-direction:column;overflow:hidden;min-width:0;border-radius:25px;min-height:0;background:rgba(249,252,255,.72);box-shadow:0 13px 43px #425e8f29,inset 0 1px #fffffff2;border:1px solid #ffffffdf}
.coverage-photo{position:relative;aspect-ratio:3/4;isolation:isolate;background:linear-gradient(135deg,#506b91,#a4bdd9 60%,#d6e1f4);overflow:hidden;flex-shrink:0}
.feed-card .coverage-photo{aspect-ratio:2/3}
.coverage-photo>img:not(.coverage-fallback-logo){display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .4s cubic-bezier(.2,.65,.28,1);z-index:-1}
.coverage-card:hover .coverage-photo>img:not(.coverage-fallback-logo){transform:scale(1.04)}
.coverage-fallback-logo{position:absolute;left:38%;top:32%;width:24%;height:35%;object-fit:contain;filter:brightness(0) invert(1);opacity:.16}
.photo-shade{position:absolute;inset:0;background:linear-gradient(0deg,#09172ae8 0%,#152b497e 36%,#09172914 72%,#12284452 100%);pointer-events:none}
.coverage-image-top{position:absolute;left:18px;right:18px;top:19px;display:flex;gap:6px;align-items:center;justify-content:space-between;color:white;font-weight:800;font-size:10px;letter-spacing:.7px}
.topic-stamp,.coverage-sources{padding:7px 10px;background:#ffffff2e;border:1px solid #ffffff8a;backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);border-radius:30px;max-width:50%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.coverage-sources{background:#14243f72}
.coverage-photo-text{position:absolute;bottom:clamp(23px,4vw,46px);left:clamp(18px,3vw,36px);right:clamp(18px,3vw,36px);color:#fff;filter:drop-shadow(0 4px 8px #0006)}
.coverage-photo-text .eyebrow{color:#e2ecff;font-size:10px;letter-spacing:1.9px;font-weight:760}
.coverage-photo-text h3{margin:13px 0 0;color:#fff;font-size:clamp(30px,3.7vw,57px);line-height:.99;letter-spacing:-1.4px;font-weight:850;max-width:95%;overflow-wrap:break-word;text-wrap:balance}
.news-grid .coverage-photo-text h3{font-size:clamp(24px,2.7vw,39px);letter-spacing:-.7px}
.coverage-body{padding:clamp(18px,2.3vw,26px);display:flex;flex:1;flex-direction:column;gap:15px}
.coverage-meta{display:flex;justify-content:space-between;gap:8px;align-items:center;color:#6e88a6;font-size:10px;text-transform:uppercase;letter-spacing:.9px;font-weight:800}
.coverage-meta span:last-child{white-space:nowrap;color:#889ab1;font-weight:600;letter-spacing:0;text-transform:none}
.coverage-intro{font-size:13px;color:#485f7b;line-height:1.7;margin:0;min-height:40px}
.feed-card .coverage-intro{font-size:14px}
.coverage-stats{display:flex;justify-content:space-between;gap:7px;padding-bottom:11px;border-bottom:1px solid #ffffffbd;font-size:10px;color:#8295ab}
.perspective-widget{display:flex;flex-direction:column;gap:9px}
.coverage-heading{display:flex;justify-content:space-between;gap:6px;align-items:baseline;font-size:10px;font-weight:840;letter-spacing:.8px;color:#587aa1}
.coverage-heading span:last-child{font-weight:570;color:#8b9db1;letter-spacing:0;white-space:nowrap}
.coverage-distribution{margin:1px 0 4px}
.bias-bar{display:flex;height:10px;border-radius:14px;overflow:hidden;background:#e0e6ee;box-shadow:inset 0 1px 3px #46546a24}
.perspective-segment{height:100%;flex:none}
.perspective-segment.left{background:#7497c6}
.perspective-segment.center{background:#9686aa}
.perspective-segment.right{background:#bf827f}
.perspective-segment.unrated{background:#a7b1bf}
.bias-bar-labels{display:flex;justify-content:space-between;gap:5px;margin-top:6px;font-size:9px;font-weight:700;color:#8395ab}
.lane-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.lane-selector{border:1px solid #ffffffd4;border-radius:12px;background:#ffffff8c;padding:10px 8px;min-height:53px;color:#637891;font-size:11px;font-weight:790;letter-spacing:.25px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}
.lane-selector small{font-size:10px;font-weight:600}
.lane-selector.left.active{background:#dce9f9;color:#385e90;border-color:#91b4db}
.lane-selector.center.active{background:#e9e5f0;color:#6c558e;border-color:#ab99ba}
.lane-selector.right.active{background:#f6e9e5;color:#9e5c56;border-color:#d6aaa3}
.lane-selector:hover{background:#fff}
.perspective-range{display:block;appearance:none;-webkit-appearance:none;height:7px;width:100%;border-radius:99px;outline:0;background:linear-gradient(90deg,#7497c6 0%,#a59fc0 50%,#bf827f 100%);cursor:pointer;margin:4px 0 6px}
.perspective-range::-webkit-slider-thumb{-webkit-appearance:none;width:21px;height:21px;border-radius:50%;background:#fff;border:3px solid #546f92;box-shadow:0 2px 7px #1f42614d}
.perspective-range::-moz-range-thumb{width:17px;height:17px;border-radius:50%;background:white;border:3px solid #546f92;box-shadow:0 2px 7px #1f42614d}
.unrated-toggle{border:0;background:transparent;color:#8390a5;font-size:10px;font-weight:680;text-align:left;text-decoration:underline;text-underline-offset:3px;align-self:start;padding:4px 1px}
.unrated-toggle.active{color:#3c608e}
.selected-perspective{display:flex;flex-direction:column;gap:11px;border:1px solid #ffffffeb;border-radius:16px;background:#ffffff93;padding:15px;min-height:170px;box-shadow:inset 0 1px #fff}
.selected-publisher{display:flex;gap:9px;align-items:center;flex-wrap:wrap;font-size:11px;font-weight:780;color:#56708f}
.publisher-count{margin-left:auto;color:#97a4b7;font-size:10px;font-weight:600}
.lane-marker{display:inline-block;border-radius:6px;padding:5px 8px;font-size:9px;font-weight:850;letter-spacing:.3px;color:#40566f;background:#e7edf5}
.lane-marker.lane-left{color:#42678d;background:#dce9f9}
.lane-marker.lane-center{color:#745c8a;background:#eee8f4}
.lane-marker.lane-right{color:#975d58;background:#f6e9e5}
.lane-marker.lane-unrated{color:#667282;background:#e9edf1}
.source-headline{display:block;font-size:15px;line-height:1.38;font-weight:740;color:#324862}
.source-excerpt{font-size:12px;line-height:1.65;color:#617994;margin:0;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.source-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.source-actions .button{min-height:34px;padding:8px 11px}
.source-basis{color:#8497af;font-size:10px;text-decoration:underline;text-underline-offset:2px}
.source-disclaimer{color:#8a9aad;font-size:10px;line-height:1.4;margin:0}
.coverage-absent{margin:auto;text-align:center;padding:17px 3px}
.coverage-absent strong{color:#65809e;font-size:13px}
.coverage-absent p{color:#8a9db4;font-size:12px;line-height:1.6;margin-bottom:0}
.all-coverage-button{display:block;border:1px solid #b8cce3;background:linear-gradient(135deg,#e9f2fe,#f8fbff);border-radius:12px;padding:12px;width:100%;margin-top:auto;color:#506f99;font-size:12px;font-weight:800;text-align:center}
.all-coverage-button:hover{background:#fff}
.coverage-empty{grid-column:1/-1;text-align:center;padding:48px 20px;border-radius:23px}
.coverage-empty h3{font-size:18px;margin:0 0 11px}
.coverage-empty p{font-size:13px;color:#7b8eaa;line-height:1.5}
.community-divider{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:34px 2px 3px;border-top:1px solid #fffffff0;padding-top:24px}
.community-divider h2{font-size:27px;letter-spacing:-.8px;margin:8px 0 0}
.community-posts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.community-posts .member-post{height:fit-content}
.community-posts>.signin-empty{grid-column:1/-1}
.horseshoe-panel{border-radius:24px;padding:24px;margin:17px 0 24px;min-height:0}
.horseshoe-header{display:flex;align-items:center;justify-content:space-between;gap:12px}
.horseshoe-header h2{font-size:28px;letter-spacing:-.9px;margin:8px 0 0}
.horseshoe-note{color:#7f90a9;font-size:12px;line-height:1.6;max-width:800px}
.horseshoe-figure{height:300px;max-width:950px;position:relative;margin:10px auto 3px;overflow:visible}
.horseshoe-arc{position:absolute;left:0;top:0;width:100%;height:100%;color:#92a9c8;opacity:.66;pointer-events:none}
.ideology-node{position:absolute;transform:translate(-50%,-50%);width:19px;height:19px;border:1px solid #fff;border-radius:50%;background:linear-gradient(120deg,#6086b5,#a0b8d5);box-shadow:0 2px 11px #3c5e8f46;padding:4px;z-index:1;cursor:pointer}
.ideology-node span{display:block;width:100%;height:100%;border-radius:50%;background:#ffffffdf}
.ideology-node:hover,.ideology-node.selected{transform:translate(-50%,-50%) scale(1.45);background:#4b78b1;box-shadow:0 3px 17px #42628d7e;z-index:3}
.ideology-node.selected span{background:#d5e7fa}
.horseshoe-axis-labels{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;font-size:10px;letter-spacing:1px;font-weight:800;color:#708bad}
.ideology-chip-strip{display:flex;gap:8px;overflow-x:auto;padding:12px 0 10px;scrollbar-width:thin}
.ideology-chip{flex:none;border:1px solid #ffffffcf;background:#ffffff8e;border-radius:30px;color:#577393;padding:9px 13px;font-size:11px;font-weight:720}
.ideology-chip.active{color:#fff;background:#5f81ad}
.ideology-description{padding:11px 15px;border:1px solid #ffffffe8;background:#ffffffa1;border-radius:12px;font-size:11px;color:#6b83a0;line-height:1.6}
.band-filter-row{display:flex;gap:8px;margin:0 0 19px;flex-wrap:wrap}
.band-filter{border:1px solid #fff;color:#5a7699;background:#ffffff96;padding:10px 13px;border-radius:12px;font-size:12px;font-weight:780}
.band-filter.active{background:#637fad;color:white}
.band-filter.left.active{background:#6086b7}
.band-filter.center.active{background:#8e7ba9}
.band-filter.right.active{background:#b87e78}
.band-filter.unrated.active{background:#7f8c9a}
.detail-coverage-list{display:flex;flex-direction:column;gap:11px;margin-top:19px}
.detail-source{background:#ffffffe0;border:1px solid #fff;border-radius:14px;padding:17px}
.detail-source>div{display:flex;gap:10px;align-items:center}
.detail-source strong{font-size:12px}
.detail-source h4{font-size:16px;line-height:1.4;margin:11px 0}
.detail-source p{font-size:13px;margin:5px 0 13px}
.story-dialog-body .coverage-photo{aspect-ratio:4/3;border-radius:15px;margin:15px 0}
.story-dialog-body .coverage-photo h3{font-size:clamp(23px,4vw,38px)}
.story-dialog-body>.bias-bar{margin:15px 0}
.source-rating-editor{display:grid;grid-template-columns:1fr 1fr;gap:10px;flex-basis:100%;padding:14px;border:1px solid #ffffffc1;border-radius:15px;background:#ffffffb7}
.source-rating-editor label{display:flex;flex-direction:column;font-size:10px;gap:6px;color:#6a84a1;font-weight:750}
.source-rating-editor select,.source-rating-editor input{width:100%;min-width:0;padding:9px;border-radius:9px;background:#fff;border:1px solid #d7e3f1;color:#3c5270;font-size:12px}
.source-rating-editor label:nth-child(3){grid-column:1/-1}
.source-rating-editor .button{grid-column:1/-1;justify-self:start}
@media(min-width:1450px){
 .perspective-feed-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .news-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:1120px){
 .news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .horseshoe-panel{padding:21px}
}
@media(max-width:790px){
 .feed-hero-bar{padding:17px;min-height:98px;gap:8px}
 .feed-hero-bar h2{font-size:22px}
 .feed-hero-bar p{font-size:11px}
 .feed-hero-bar .button{font-size:10px;padding:8px 9px;white-space:normal}
 .category-chips{flex-wrap:nowrap;overflow-x:auto;padding:9px 0;scrollbar-width:none}
 .category-chip{flex:none;white-space:nowrap}
 .perspective-feed-grid,.news-grid{grid-template-columns:1fr;gap:15px}
 .coverage-photo,.feed-card .coverage-photo{aspect-ratio:3/4}
 .coverage-photo-text h3,.news-grid .coverage-photo-text h3{font-size:clamp(34px,8.7vw,49px);line-height:1.02}
 .coverage-body{padding:16px 18px 19px;gap:12px}
 .coverage-intro,.feed-card .coverage-intro{font-size:13px}
 .coverage-heading{font-size:10px}
 .selected-perspective{padding:14px;min-height:150px}
 .community-posts{grid-template-columns:1fr}
 .community-divider h2{font-size:22px}
 .horseshoe-panel{padding:15px;border-radius:18px}
 .horseshoe-header h2{font-size:21px}
 .horseshoe-header .button{font-size:10px;padding:8px}
 .horseshoe-note{font-size:10px}
 .horseshoe-figure{height:205px}
 .horseshoe-axis-labels{font-size:8px;letter-spacing:0}
 .ideology-node{width:16px;height:16px}
 .band-filter-row{gap:6px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px}
 .band-filter{font-size:11px;padding:9px 11px;white-space:nowrap}
 .story-dialog-body .coverage-photo{aspect-ratio:3/4}
}

/* Official Parliament static branding — Dividente wordmark as outlined artwork. */
.magazine-topbar .brand{align-items:center;gap:10px}
.magazine-topbar .parliament-mark{width:35px;height:45px;object-fit:contain;opacity:1;filter:drop-shadow(0 3px 6px #2d476242)}
.magazine-topbar .wordmark{display:flex;align-items:center;gap:18px;letter-spacing:0}
.magazine-topbar .parliament-wordmark{height:45px;width:158px;max-width:32vw;object-fit:contain}
.magazine-topbar .wordmark span{letter-spacing:.15px}
.coverage-photo-text h3,.magazine-section-head h1,.feed-hero-bar h2,.horseshoe-header h2,.community-divider h2{font-family:Impact,'Arial Narrow','Helvetica Neue Condensed',-apple-system,sans-serif;font-weight:780;letter-spacing:-.3px}
.coverage-photo-text h3{letter-spacing:.3px}
@media(max-width:790px){
 .magazine-topbar .parliament-mark{height:35px;width:24px}
 .magazine-topbar .parliament-wordmark{width:116px;height:35px}
 .magazine-topbar .wordmark span{display:none}
}
