/* GOVISTA V22 — targeted dashboard, broker, marketplace and builder revision */

/* Dashboard broker runway */
.broker-choice-v22{margin-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0}
.broker-choice-v22 small{display:block;margin-top:7px;color:#ffe5e8;font-size:10px}
.broker-runway-v22{margin:0 0 14px;border:1px solid #ead9ac;border-top:0;border-radius:0 0 14px 14px;background:#fff;box-shadow:0 10px 26px rgba(89,0,10,.08);overflow:hidden}
.broker-runway-window-v22{overflow:hidden;padding:13px 0;mask-image:linear-gradient(90deg,transparent,#000 2.5%,#000 97.5%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 2.5%,#000 97.5%,transparent)}
.broker-runway-track-v22{display:flex;width:max-content;animation:brokerV22 var(--broker-duration,120s) linear infinite;will-change:transform}
.broker-logo-card-v22{display:grid;grid-template-columns:56px 190px;align-items:center;gap:10px;width:270px;margin-right:10px;padding:10px 12px;border:1px solid #eee2c5;border-radius:12px;background:linear-gradient(145deg,#fff,#fffaf0);transition:.18s ease}
.broker-logo-card-v22:hover{border-color:#d6a52c;box-shadow:0 9px 22px rgba(93,13,18,.12);transform:translateY(-2px)}
.broker-logo-card-v22 img{width:54px;height:54px;object-fit:contain;padding:5px;border:1px solid #eee;border-radius:11px;background:#fff}
.broker-logo-card-v22 b{font-size:10px;line-height:1.35;color:#2b303b;white-space:normal}
@keyframes brokerV22{to{transform:translateX(-50%)}}

/* Promo cards — make prices impossible to miss */
.promo-marquee .promo-title small{display:block;margin-top:8px;color:#f5d9dc;font-size:9px;line-height:1.45}
.promo-marquee .promo-track{animation-play-state:running!important}
.promo-card-image{min-height:140px}
.promo-card-image .promo-info{display:grid;align-content:center;gap:3px;min-width:130px;padding:4px 3px}
.promo-card-image .promo-info b{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal;line-height:1.25}
.promo-card-image .promo-info del{display:block!important;color:#ffe0e4!important;font-size:9px!important;text-decoration-thickness:1px}
.promo-card-image .promo-info strong{display:block!important;color:#ffd760!important;font-size:14px!important;line-height:1.2;text-shadow:0 1px 2px rgba(0,0,0,.28)}
.promo-card-image .promo-info small{color:#ffdfe3}
.product-card .price-row strong{font-size:11px;font-weight:900;color:#b40013}

/* Marketplace inside the same dashboard shell */
.market-hub-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:27px 30px;border-radius:20px;background:radial-gradient(circle at 85% 15%,rgba(255,216,100,.26),transparent 25%),linear-gradient(125deg,#5d0008,#b90016 60%,#7b000b);color:#fff;box-shadow:0 18px 42px rgba(87,0,9,.18)}
.market-hub-hero>div>span,.market-section-head small{font-size:10px;font-weight:900;letter-spacing:.15em;color:#f6d372}
.market-hub-hero h1{margin:7px 0 6px;font-size:31px;letter-spacing:-.035em}
.market-hub-hero p{margin:0;color:#ffe8eb;line-height:1.6}
.market-cart-button{display:inline-flex;align-items:center;gap:8px;padding:12px 15px;border-radius:12px;background:#fff;color:#a40013;font-weight:900;white-space:nowrap}
.market-cart-button b{display:grid;place-items:center;min-width:23px;height:23px;border-radius:50%;background:#a40013;color:#fff;font-size:10px}
.market-search-panel{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:10px;margin:15px 0}
.market-search-box{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:9px;padding:0 14px;border:1px solid #eadfe0;border-radius:13px;background:#fff;box-shadow:0 8px 22px rgba(81,0,8,.05)}
.market-search-box span{font-size:22px;color:#a40013}.market-search-box input{height:48px;border:0;outline:0;background:transparent;font-size:13px}
.market-search-panel select{border:1px solid #eadfe0;border-radius:13px;padding:0 13px;background:#fff;color:#3d4350;font-weight:750}
.market-category-row{display:flex;gap:9px;overflow:auto;padding:2px 0 8px;scrollbar-width:thin}
.market-category-row button{display:flex;align-items:center;gap:7px;min-width:max-content;padding:10px 13px;border:1px solid #eadfe0;border-radius:11px;background:#fff;color:#343a47;font-weight:850;cursor:pointer}
.market-category-row button i{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:#fff1f2;color:#a70012;font-style:normal}
.market-category-row button.active,.market-category-row button:hover{border-color:#b60014;background:#fff7f8;color:#a60012}
.market-product-detail{display:grid;grid-template-columns:330px minmax(0,1fr);gap:24px;margin:18px 0;padding:20px;border:1px solid #eadfe0;border-radius:18px;background:#fff;box-shadow:0 12px 30px rgba(72,0,8,.07)}
.market-product-detail-image{height:300px;overflow:hidden;border-radius:14px;background:#fff5f6}.market-product-detail-image img{width:100%;height:100%;object-fit:cover}
.market-product-detail-copy{min-width:0}.market-back-link{display:inline-block;margin-bottom:11px;color:#9f0011;font-weight:800}
.market-product-chip{display:inline-flex;padding:6px 9px;border-radius:999px;background:#fff0f2;color:#9f0011;font-size:10px;font-weight:900}
.market-product-detail-copy h2{margin:9px 0 5px;font-size:29px}.market-product-rating{color:#9a6a00;font-weight:800}.market-product-detail-copy p{color:#626b78;line-height:1.7}
.market-product-detail-price{display:grid;gap:3px;margin:13px 0}.market-product-detail-price del{color:#8d929d}.market-product-detail-price strong{font-size:25px;color:#b00013}
.market-product-actions{display:flex;gap:9px}.market-product-actions form{min-width:210px}.market-product-actions button,.market-product-actions>a{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:42px;padding:10px 15px;border-radius:10px;font-weight:900;cursor:pointer}.market-product-actions button{border:0;background:#b00013;color:#fff}.market-product-actions>a{width:auto;border:1px solid #b00013;color:#b00013;background:#fff}
.market-products-section{margin-top:20px}.market-section-head{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-bottom:12px}.market-section-head small{color:#a90012}.market-section-head h2{margin:5px 0 0;font-size:23px}.market-section-head>span{color:#777f8c;font-size:11px}
.market-product-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px}.market-product-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #eadfe0;border-radius:15px;background:#fff;box-shadow:0 10px 24px rgba(75,0,8,.055);transition:.18s}.market-product-card:hover{transform:translateY(-3px);box-shadow:0 16px 32px rgba(86,0,9,.11)}.market-product-card[hidden]{display:none}
.market-product-image{position:relative;display:block;height:180px;overflow:hidden;background:linear-gradient(145deg,#fff3f4,#fff9e7)}.market-product-image img{width:100%;height:100%;object-fit:cover;transition:.2s}.market-product-card:hover .market-product-image img{transform:scale(1.035)}.market-product-image>span{position:absolute;left:9px;top:9px;padding:5px 8px;border-radius:7px;background:#af0013;color:#fff;font-size:8px;font-weight:900}.market-product-image>em{position:absolute;right:9px;top:9px;padding:5px 7px;border-radius:7px;background:#ffd45c;color:#5d3a00;font-size:9px;font-style:normal;font-weight:950}
.market-product-body{display:flex;flex-direction:column;gap:6px;flex:1;padding:12px}.market-product-body>small{color:#a00012;font-size:9px;font-weight:850}.market-product-body h3{margin:0;font-size:14px;line-height:1.35}.market-price-block{display:grid;gap:2px;margin-top:auto}.market-price-block del{font-size:9px;color:#9398a1}.market-price-block strong{font-size:16px;color:#b00013}.market-product-meta{display:flex;gap:8px;color:#747b87;font-size:9px}.market-product-body form{margin-top:3px}.market-product-body button{width:100%;padding:10px;border:0;border-radius:9px;background:#b00013;color:#fff;font-weight:900;cursor:pointer}.market-empty{padding:30px;text-align:center;color:#697386}

/* Broker list/detail inside dashboard shell */
.broker-directory-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 28px;border-radius:19px;background:linear-gradient(125deg,#fff5de,#fff 55%,#fff0f2);border:1px solid #ecdcae;box-shadow:0 12px 30px rgba(70,0,7,.06)}
.broker-directory-hero span{font-size:10px;font-weight:900;letter-spacing:.14em;color:#a40012}.broker-directory-hero h1{margin:6px 0;font-size:29px}.broker-directory-hero p{margin:0;color:#626b79}.broker-directory-hero>strong{display:grid;place-items:center;min-width:96px;height:72px;border-radius:16px;background:#a90013;color:#fff;font-size:15px}
.broker-search-panel{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:10px;margin:14px 0}.broker-search-panel label{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:8px;padding:0 13px;border:1px solid #eadfe0;border-radius:12px;background:#fff}.broker-search-panel label span{font-size:21px;color:#a40012}.broker-search-panel input{height:47px;border:0;outline:0;background:transparent}.broker-search-panel select{border:1px solid #eadfe0;border-radius:12px;padding:0 12px;background:#fff}
.broker-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.broker-directory-card{display:grid;grid-template-columns:84px minmax(0,1fr);gap:13px;align-items:center;padding:14px;border:1px solid #eadfe0;border-radius:14px;background:#fff;box-shadow:0 9px 22px rgba(70,0,8,.05)}.broker-directory-card[hidden]{display:none}.broker-directory-logo{display:grid;place-items:center;width:82px;height:82px;border:1px solid #eee;border-radius:13px;background:#fffaf2}.broker-directory-logo img{max-width:70px;max-height:70px;object-fit:contain}.broker-directory-copy{min-width:0}.broker-directory-copy h2{margin:5px 0 4px;font-size:13px;line-height:1.35}.broker-directory-copy p{display:-webkit-box;margin:0 0 8px;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;color:#737a86;font-size:9px;line-height:1.4}.broker-directory-copy>a{color:#a70012;font-size:10px;font-weight:900}.broker-status{display:inline-flex;padding:4px 7px;border-radius:999px;font-size:8px;font-weight:900}.broker-status.active{background:#e7f8ef;color:#0c7b46}.broker-status.inactive{background:#fff0df;color:#9b5e00}
.broker-back-link{display:inline-block;margin-bottom:10px;color:#a40012;font-weight:900}.broker-profile-hero{display:grid;grid-template-columns:130px minmax(0,1fr) auto;align-items:center;gap:20px;padding:22px;border-radius:18px;background:linear-gradient(125deg,#fff5de,#fff 55%,#fff0f2);border:1px solid #ecdcae}.broker-profile-hero img{width:125px;height:125px;object-fit:contain;padding:10px;border:1px solid #eee;border-radius:18px;background:#fff}.broker-profile-hero span{font-size:10px;font-weight:900;letter-spacing:.14em;color:#a50012}.broker-profile-hero h1{margin:6px 0;font-size:30px}.broker-profile-hero p{margin:0;color:#6d7480}.broker-profile-hero>em{padding:9px 12px;border-radius:999px;background:#a80013;color:#fff;font-style:normal;font-weight:900}.broker-profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:13px}.broker-profile-card{padding:18px;border:1px solid #eadfe0;border-radius:15px;background:#fff}.broker-profile-card h2{margin-top:0;color:#a40012}.broker-profile-card>p{color:#626b78;line-height:1.65}.broker-profile-card dl{margin:0}.broker-profile-card dl>div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:12px;padding:10px 0;border-bottom:1px solid #eee}.broker-profile-card dt{font-weight:900}.broker-profile-card dd{margin:0;color:#646c78}.broker-profile-note{padding:10px;border-radius:10px;background:#fff7df;color:#725300}

/* AI Strategy Builder */
.strategy-library-v22{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0 3px}.strategy-library-v22 button{padding:8px 10px;border:1px solid #e6d7d9;border-radius:9px;background:#fff;color:#9d0011;font-weight:850;cursor:pointer}.strategy-library-v22 button:hover,.strategy-library-v22 button.active{background:#a90013;color:#fff;border-color:#a90013}.builder-analysis-card{margin-bottom:10px;padding:13px;border:1px solid #eadfe0;border-radius:12px;background:linear-gradient(145deg,#fff,#fff8e8)}.builder-analysis-card h3{margin:0 0 7px;color:#9e0011;font-size:14px}.builder-analysis-card p{margin:0;color:#5d6674;line-height:1.55}.builder-analysis-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}.builder-analysis-tags span{padding:5px 7px;border-radius:999px;background:#fff0f2;color:#990011;font-size:9px;font-weight:850}.builder-output{min-height:330px}

/* Economic calendar and news */
.calendar-country{display:inline-flex;align-items:center;gap:7px;font-weight:850}.calendar-country img{width:24px;height:17px;object-fit:cover;border-radius:2px;box-shadow:0 0 0 1px rgba(0,0,0,.1)}
.news-live-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.news-live-card{display:flex;flex-direction:column;gap:8px;padding:15px;border:1px solid #eadfe0;border-radius:14px;background:#fff;box-shadow:0 9px 22px rgba(70,0,7,.05)}.news-live-card>span{font-size:9px;font-weight:900;color:#a40012}.news-live-card h2{margin:0;font-size:15px;line-height:1.4}.news-live-card p{margin:0;color:#66707d;line-height:1.55;font-size:11px}.news-live-card footer{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-top:auto;padding-top:8px;border-top:1px solid #eee}.news-live-card footer small{color:#7a818d}.news-live-card footer a{color:#a40012;font-weight:900}.news-status-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0;padding:11px 13px;border:1px solid #ecdcae;border-radius:11px;background:#fff9e8}.news-status-bar span{font-weight:850;color:#7b5600}.news-status-bar small{color:#737a86}

/* Market ticker: obvious arrows and color changes */
.ticker-quote>em{display:flex;align-items:center;gap:4px;font-weight:850}.trend-arrow{display:inline-grid;place-items:center;width:17px;height:17px;border-radius:50%;font-style:normal;font-size:12px}.ticker-quote.up>em,.ticker-quote.up strong{color:#0c9a58!important}.ticker-quote.up .trend-arrow{background:#e0f8eb;color:#087842}.ticker-quote.down>em,.ticker-quote.down strong{color:#d01228!important}.ticker-quote.down .trend-arrow{background:#ffe7ea;color:#b00014}.ticker-quote.flat .trend-arrow{background:#f0f1f3;color:#707784}

@media(max-width:1250px){.market-product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.broker-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.news-live-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.market-hub-hero,.broker-directory-hero{align-items:flex-start;flex-direction:column}.market-search-panel,.broker-search-panel,.market-product-detail,.broker-profile-grid{grid-template-columns:1fr}.market-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.broker-profile-hero{grid-template-columns:95px minmax(0,1fr)}.broker-profile-hero img{width:90px;height:90px}.broker-profile-hero>em{grid-column:1/-1;width:max-content}.news-live-grid{grid-template-columns:1fr}}
@media(max-width:650px){.broker-logo-card-v22{grid-template-columns:49px 160px;width:225px}.broker-logo-card-v22 img{width:47px;height:47px}.market-product-grid,.broker-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.market-product-image{height:155px}.market-product-actions{flex-direction:column}.market-product-actions form{min-width:0}.market-product-actions>a{width:100%}.broker-directory-card{grid-template-columns:66px minmax(0,1fr)}.broker-directory-logo{width:64px;height:64px}.broker-directory-logo img{max-width:55px;max-height:55px}}
@media(max-width:430px){.market-product-grid,.broker-directory-grid{grid-template-columns:1fr}.market-product-image{height:220px}.market-hub-hero h1,.broker-directory-hero h1{font-size:24px}}

/* V22 calendar/news refinements */
.calendar-table-v22 th,.calendar-table-v22 td{white-space:nowrap}.calendar-table-v22 td:nth-child(4){white-space:normal;min-width:250px}.calendar-country{display:inline-flex;align-items:center;gap:7px;font-weight:850}.calendar-country i{font-style:normal;font-size:20px;line-height:1}.calendar-country span{font-size:10px}.calendar-source-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0;padding:10px 13px;border:1px solid #eadfe0;border-radius:11px;background:#fff}.calendar-source-bar span{font-weight:850;color:#8d0010}.calendar-source-bar small{color:#747b87}.event-row-v22{grid-template-columns:48px 88px 42px minmax(0,1fr) 50px!important}.event-country{display:flex!important;align-items:center;gap:4px;min-width:0}.event-country i{font-style:normal;font-size:16px}.event-country small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:7px!important;color:#68707d!important}
.news-live-section{margin-top:16px}.news-section-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:12px}.news-section-head small{font-size:9px;font-weight:900;letter-spacing:.13em;color:#a50012}.news-section-head h2{margin:5px 0 0}.news-section-head>div:last-child{display:flex;align-items:center;gap:8px}.news-section-head>div:last-child span{font-size:10px;color:#69727f}.news-section-head button{padding:8px 10px;border:1px solid #a70012;border-radius:8px;background:#fff;color:#a70012;font-weight:900;cursor:pointer}.news-live-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.news-live-card{display:grid;grid-template-columns:112px minmax(0,1fr);gap:13px;padding:0;overflow:hidden;border:1px solid #eadfe0;border-radius:14px;background:#fff;box-shadow:0 9px 22px rgba(70,0,7,.05)}.news-live-visual{display:flex;align-items:flex-end;min-height:165px;padding:12px;background:linear-gradient(145deg,#63000a,#d20c24);color:#fff}.news-live-visual span{padding:5px 7px;border-radius:999px;background:rgba(255,255,255,.17);font-size:8px;font-weight:900}.news-tone-1{background:linear-gradient(145deg,#27345e,#087da0)}.news-tone-2{background:linear-gradient(145deg,#544000,#d29b15)}.news-tone-3{background:linear-gradient(145deg,#113c2d,#16915f)}.news-live-card>div:last-child{display:flex;flex-direction:column;padding:14px 14px 14px 0}.news-live-card small{color:#7b828e;font-size:8px}.news-live-card h3{margin:6px 0;font-size:14px;line-height:1.4}.news-live-card p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;margin:0;color:#66707d;font-size:10px;line-height:1.55}.news-live-card a{margin-top:auto;padding-top:9px;color:#a50012;font-size:10px;font-weight:900}.news-loading-v22{grid-column:1/-1;padding:28px;text-align:center;color:#737b87}
@media(prefers-reduced-motion:reduce){.broker-runway-track-v22{animation:brokerV22 var(--broker-duration,120s) linear infinite!important}.promo-track{animation:promoRunway 54s linear infinite!important}}
@media(max-width:1250px){.news-live-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.event-row-v22{grid-template-columns:44px 30px 40px minmax(0,1fr) 46px!important}.event-country small{display:none}.news-live-grid{grid-template-columns:1fr}.news-live-card{grid-template-columns:100px minmax(0,1fr)}}
@media(max-width:560px){.news-section-head{align-items:flex-start;flex-direction:column}.news-live-card{grid-template-columns:1fr}.news-live-visual{min-height:105px}.news-live-card>div:last-child{padding:13px}}
