/* Page layouts built around the shared United portal shell. */
.shop-page .shop-shell{gap:20px}.shop-page .shop-toolbar{gap:12px}.shop-page .shop-toolbar-side{gap:12px}.shop-page .shop-toolbar-side label,.shop-page .shop-toolbar-side .input{min-width:170px}.shop-page .shop-result-count{font-size:11px}.shop-page .shop-section-tabs{padding:0;gap:8px;border:0;border-radius:0;background:none;flex-wrap:wrap;overflow:visible}.shop-page .shop-filter,.shop-page .shop-category{min-height:32px;padding:6px 11px;border:1px solid var(--line);border-radius:5px;background:#152027;color:var(--muted);font-size:11px}.shop-page .shop-filter.active,.shop-page .shop-category.active{background:var(--accent-soft,#ff663914);color:#ffa180;border-color:#9c4f33;box-shadow:none}.shop-page .shop-filter small{background:#243139;color:#aab7bf;min-width:18px;height:17px}.shop-page .shop-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.shop-page .shop-product-card{display:flex;flex-direction:column;border:1px solid #2c3a41;background:#131c21;border-radius:7px;box-shadow:none;transition:border-color .15s,transform .15s}.shop-page .shop-product-card:hover{border-color:#63727b;transform:translateY(-2px)}.shop-page .shop-product-image{width:100%;height:165px;min-height:165px;border:0;border-bottom:1px solid var(--line);padding:20px 14px;background:radial-gradient(ellipse at 50% 70%,#30495177,transparent 65%),linear-gradient(140deg,#1c2a30,#10171c);cursor:pointer}.shop-page .shop-product-image img{height:118px;max-height:118px;max-width:230px;object-fit:contain;padding:0;filter:drop-shadow(0 9px 8px #0007)}.shop-page .shop-product-image .shop-image-fallback{height:118px;min-height:118px;background:none}.shop-page .shop-product-copy{display:flex;flex:1;flex-direction:column;gap:7px;padding:14px}.shop-page .shop-product-meta{font-size:9px;line-height:1.4;letter-spacing:0;text-transform:none;min-height:13px}.shop-product-badge{position:absolute;inset-inline-start:10px;top:10px;padding:2px 5px;border:1px solid #675238;border-radius:3px;background:#141b20;color:var(--gold);font-size:9px;font-weight:800}.shop-product-title{border:0;padding:0;background:none;color:var(--text);text-align:start;cursor:pointer}.shop-page .shop-product-card h2{height:auto;min-height:37px;font-size:13px;font-weight:650;line-height:1.4;margin:0;overflow-wrap:anywhere}.shop-card-term{font-size:10px;color:var(--muted);margin:8px 0 2px}.shop-page .shop-product-footer{margin-top:auto;padding-top:12px;border-top:1px solid var(--line);flex-wrap:wrap;gap:8px}.shop-page .shop-price{font-size:18px;font-weight:750;letter-spacing:-.02em;color:var(--text)}.shop-page .shop-price small{font-size:9px;color:var(--muted);font-weight:400}.shop-card-open{display:grid;place-items:center;width:34px;height:32px;border:1px solid #35434b;border-radius:5px;background:#0e171c;color:#a8bac4;font-size:21px;line-height:1;padding:0}.shop-card-open:hover{color:var(--text);border-color:var(--accent)}.shop-page .shop-compare-choice{font-size:10px;justify-content:flex-start;min-height:22px;margin-top:2px}.shop-page .shop-compare-choice input{width:14px;height:14px;min-height:0}.shop-intro{margin-bottom:22px}.shop-intro p{max-width:460px}.shop-intro h2{font-size:30px}.shop-intro .eyebrow{margin-bottom:9px}.shop-intro-content{position:relative;max-width:550px}.shop-item-drawer{position:fixed;margin:0 0 0 auto;inset-block:0;inset-inline-end:0;width:min(565px,100%);max-width:100%;height:100dvh;max-height:100dvh;padding:27px;color:var(--text);background:#131b20;border:1px solid #40515c;border-inline-end:0;border-radius:0;box-shadow:0 30px 80px #0008;overflow:auto;overscroll-behavior:contain}.shop-item-drawer::backdrop{background:#040a0dd0;backdrop-filter:blur(4px)}.shop-item-drawer h2{font-size:24px;overflow-wrap:anywhere}.shop-item-drawer h3{font-size:14px;margin:20px 0 10px}.shop-detail-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.shop-detail-head .eyebrow{margin-bottom:6px}.shop-detail-close{flex:none;width:35px;height:35px;padding:0;border:1px solid var(--line);border-radius:6px;background:#182126;color:var(--text);font-size:23px;cursor:pointer}.shop-detail-visual{height:220px;display:grid;place-items:center;border:1px solid #304550;border-radius:7px;background:radial-gradient(ellipse,#35515e77,transparent 68%),#0e181f;margin:20px 0;padding:18px}.shop-detail-visual img{width:85%;max-width:360px;max-height:190px;object-fit:contain;filter:drop-shadow(0 13px 15px #000a)}.shop-detail-description{font-size:13px;color:var(--muted);line-height:1.7;white-space:pre-line;overflow-wrap:anywhere;margin:16px 0}.shop-detail-bonuses{border-left:2px solid var(--gold);padding:0 0 0 15px;white-space:pre-line;line-height:1.75;font-size:13px;color:#cbd7dc;overflow-wrap:anywhere}.shop-item-drawer .shop-term-options{margin:14px 0 22px;grid-template-columns:repeat(auto-fit,minmax(90px,1fr))}.shop-item-drawer .shop-term-option{min-height:58px;text-align:start;padding:11px;box-shadow:none;background:#0e161c}.shop-item-drawer .shop-term-option.active{background:var(--accent-soft,#ff663914);border-color:var(--accent)}.shop-item-drawer .shop-term-option span{font-size:11px}.shop-item-drawer .shop-term-option small{font-size:10px}.shop-item-drawer .checkout-stats dl{grid-template-columns:repeat(2,minmax(0,1fr))}.shop-detail-purchase{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:13px;padding-top:20px;margin-top:24px;border-top:1px solid var(--line)}.shop-detail-price{font-size:29px;font-weight:750;white-space:nowrap}.shop-detail-actions{display:flex;gap:8px;flex-wrap:wrap}.shop-detail-actions .button{min-height:43px;font-size:12px}.shop-package-list{display:grid;gap:7px}.shop-package-row{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid var(--line);border-radius:6px;background:#0e181f;font-size:12px}.shop-package-row img{width:64px;height:42px;object-fit:contain}.shop-package-row div{min-width:0;overflow-wrap:anywhere}.shop-package-row span{display:block;color:var(--muted);font-size:10px}.shop-package-row b{font-size:11px}.shop-cart-drawer{background:#131b20;border-color:#40515c}.shop-cart-preview-total strong,.shop-cart-total strong{color:var(--text)}.shop-checkout-page{max-width:1050px}.shop-checkout-page .shop-checkout-card{background:#12191d}.shop-checkout-page .checkout-product-image{background:radial-gradient(ellipse,#35515e77,transparent 68%),#0e181f;border-radius:7px}.shop-checkout-page .checkout-choice{display:flex;gap:16px;padding:16px;border:1px solid var(--line);border-radius:6px}.shop-checkout-page .checkout-choice label{display:flex;align-items:center;gap:8px}.shop-checkout-page .checkout-choice input{width:16px;min-height:0;height:16px;accent-color:var(--accent)}.shop-checkout-page #confirm-purchase{justify-self:start}.mail-page .mail-shell{border-radius:7px;background:#12191d;box-shadow:none;grid-template-columns:minmax(270px,330px) minmax(0,1fr);height:min(760px,calc(100dvh - 185px))}.mail-page .mail-list{background:#111a1f;border-inline-end:1px solid var(--line)}.mail-page .mail-list-item{padding:20px 22px;background:transparent}.mail-page .mail-list-item.active{background:#26323a;border-inline-start:3px solid var(--accent)}.mail-page .mail-list-item.has-unclaimed:before{background:var(--accent)}.mail-page .mail-list-item strong{font-size:13px}.mail-page .mail-list-sender{font-size:11px;font-weight:700;color:var(--text)}.mail-page .mail-list-preview{font-size:11px}.mail-page .mail-list-attachments{width:fit-content;background:#3b321d;border:1px solid #625239;padding:3px 7px;border-radius:4px;color:var(--gold);font-size:10px}.mail-page .mail-list-attachments.claimed{color:var(--green,#7bd3ac);background:#162b25;border-color:#345a4a}.mail-page .mail-detail-header{padding:28px}.mail-page .mail-detail-heading h2{font-size:22px;line-height:1.3}.mail-page .mail-detail-scroll{padding:25px 28px}.mail-page .mail-message-body{font-size:13px;line-height:1.8}.mail-page .mail-attachment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mail-page .mail-attachment{background:#0e171c;border-radius:6px;padding:12px}.mail-page .mail-attachment-visual{width:90px;height:70px}.mail-page .mail-attachment-visual img{width:90px;height:70px;object-fit:contain}.mail-page .mail-attachment-copy strong{font-size:12px}.mail-page .mail-detail-actions{padding:20px 28px;justify-content:space-between;background:#10181d}.mail-page .mail-claimed-state{color:var(--green,#7bd3ac)}.portal-page-lead{font-size:13px;color:var(--muted);margin-top:12px;line-height:1.6}.feedback-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:20px}.feedback-layout>.panel{min-width:0}.feedback-list-panel{padding:0;overflow:hidden}.feedback-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:9px;padding:18px;border-bottom:1px solid var(--line)}.feedback-toolbar .input{flex:1;min-width:170px;max-width:340px}.feedback-toolbar .button{min-height:37px;font-size:11px;padding:8px 11px}.feedback-list{display:grid;gap:0}.feedback-idea{display:flex;align-items:flex-start;gap:19px;padding:24px;border-bottom:1px solid var(--line)}.feedback-idea:last-child{border-bottom:0}.feedback-vote{flex:none;display:grid;justify-items:center;gap:4px;min-width:55px;min-height:64px;padding:8px;border:1px solid #35434b;border-radius:6px;background:#182126;color:var(--muted);font-size:18px;line-height:1}.feedback-vote b{font-size:18px;color:var(--text)}.feedback-vote.active{color:var(--accent);border-color:var(--accent);background:var(--accent-soft,#ff663914)}.feedback-idea-copy{min-width:0;flex:1}.feedback-idea h3{font-size:17px;margin:12px 0 9px;overflow-wrap:anywhere}.feedback-idea p{font-size:13px;line-height:1.7;color:var(--muted);white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.feedback-meta{display:flex;flex-wrap:wrap;gap:9px;align-items:center;font-size:11px;color:var(--muted)}.feedback-status{font-size:10px;color:#eac887;border:1px solid #5b4d31;border-radius:4px;padding:3px 7px;background:#352d1b}.feedback-help h2{font-size:22px;margin-bottom:13px}.feedback-help h3{font-size:16px;margin:24px 0 10px;padding-top:20px;border-top:1px solid var(--line)}.feedback-help p{font-size:13px;line-height:1.7;color:var(--muted);margin-bottom:15px}.feedback-compose{max-width:760px}.feedback-form{display:grid;gap:16px;margin-top:22px}.feedback-form label{display:grid;gap:7px;font-size:12px}.feedback-form-actions{display:flex;gap:10px}.feedback-list .empty{margin:20px}.support-page .support-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:20px;align-items:start}.support-page .support-shell{max-width:none;margin:0;min-width:0}.support-page .support-shell h2{font-size:22px;margin-bottom:16px;overflow-wrap:anywhere}.support-page .support-faq{margin-top:0}.support-page .support-faq h3{font-size:20px;margin:0 0 20px}.support-page .support-faq p{font-size:12px;line-height:1.7;color:var(--muted)}.support-page .support-faq summary{font-size:13px;line-height:1.5}.support-page .support-form{margin-top:18px;gap:17px}.support-page .support-form label{font-size:12px}.support-page .support-note{background:#0e171c;font-size:12px;line-height:1.7}.support-page .support-chat{background:#0e171c;border-radius:6px;padding:18px;gap:15px}.support-page .support-chat-bubble{background:#182126;border-radius:6px;max-width:90%;font-size:13px}.support-page .support-chat-row.from-user .support-chat-bubble{background:#292019;border-color:#614632;border-radius:6px}.support-page .support-chat-meta{font-size:10px;justify-content:space-between;gap:18px}.support-page .support-chat-meta b{font-size:11px}.support-page .support-chat-reply{margin-top:20px}.support-page .panel-toolbar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.support-page .panel-toolbar .input{flex:1;min-width:170px}.support-page .panel-toolbar .button{font-size:11px;min-height:38px;padding:8px 11px}.support-page .support-messages{gap:0}.support-page .ticket-row{display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:start;padding:18px;border-radius:0;border:0;border-top:1px solid var(--line);background:transparent}.support-ticket-copy{display:grid;min-width:0;gap:6px}.support-ticket-copy small{font-size:10px;color:var(--muted)}.support-ticket-copy b{font-size:14px;line-height:1.4;overflow-wrap:anywhere}.support-ticket-status{flex:none;max-width:40%;padding:4px 8px;border:1px solid #4e574b;border-radius:4px;font-size:10px;color:#a9d4b8;overflow-wrap:anywhere}.support-ticket-meta{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:18px;font-size:12px;color:var(--muted)}
@media(max-width:1180px){.shop-page .shop-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.feedback-layout,.support-page .support-layout{grid-template-columns:minmax(0,1fr) 270px}.shop-page .shop-toolbar{flex-wrap:wrap}.shop-page .shop-toolbar-side{flex:1}.shop-page .shop-toolbar>label{flex-basis:100%}}
@media(max-width:960px){.shop-page .shop-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.shop-compare-bar{bottom:82px}.feedback-layout,.support-page .support-layout{grid-template-columns:minmax(0,1fr) 260px}.mail-page .mail-shell{height:min(760px,calc(100dvh - 195px))}}
@media(max-width:760px){.shop-page .shop-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.shop-page .shop-product-image{height:124px;min-height:124px;padding:20px 10px 10px}.shop-page .shop-product-image img{height:87px;max-height:87px}.shop-page .shop-product-copy{padding:11px;gap:6px}.shop-page .shop-product-card h2{font-size:11px;min-height:32px}.shop-page .shop-product-meta{font-size:8px}.shop-page .shop-price{font-size:16px}.shop-page .shop-product-footer{padding-top:10px;gap:5px}.shop-card-open{width:29px;height:29px}.shop-card-term{font-size:9px}.shop-page .shop-compare-choice{font-size:9px;white-space:normal;gap:4px}.shop-page .shop-toolbar-side{flex-wrap:wrap;justify-content:space-between;gap:8px}.shop-page .shop-toolbar-side label,.shop-page .shop-toolbar-side .input{min-width:0}.shop-page .shop-toolbar-side label{flex:1}.shop-page .shop-cart-open{font-size:11px;min-height:43px;padding:9px}.shop-page .shop-result-count{width:100%;text-align:start}.shop-page .shop-filter{font-size:10px;padding:6px 8px}.shop-page .shop-section-tabs{gap:6px}.shop-intro h2{font-size:25px}.shop-item-drawer{padding:22px 18px}.shop-item-drawer h2{font-size:21px}.shop-detail-visual{height:190px}.shop-detail-visual img{max-height:160px}.shop-detail-price{font-size:25px}.shop-detail-actions .button{padding:10px;font-size:11px}.shop-detail-purchase{gap:11px}.shop-checkout-page .checkout-product{grid-template-columns:1fr}.shop-checkout-page .checkout-choice{flex-wrap:wrap}.mail-page .mail-shell{display:block;min-height:450px;height:calc(100dvh - 220px)}.mail-page .mail-list{height:100%;border-inline-end:0}.mail-page .mail-detail{display:none;height:100%}.mail-page .mail-shell.mobile-reading .mail-list{display:none}.mail-page .mail-shell.mobile-reading .mail-detail{display:grid}.mail-page .mail-detail-header{padding:18px}.mail-page .mail-detail-heading h2{font-size:18px}.mail-page .mail-detail-scroll{padding:18px}.mail-page .mail-detail-actions{padding:16px 18px;flex-wrap:wrap;gap:10px}.mail-page .mail-attachment-grid{grid-template-columns:1fr}.mail-page .mail-attachment-visual,.mail-page .mail-attachment-visual img{width:72px;height:55px}.feedback-layout,.support-page .support-layout{grid-template-columns:1fr}.feedback-idea{padding:20px 17px;gap:13px}.feedback-vote{min-width:45px}.feedback-idea h3{font-size:15px}.feedback-idea p{font-size:12px}.feedback-help{padding:20px}.feedback-toolbar{padding:17px;gap:7px}.feedback-toolbar .input{order:3;flex-basis:100%;max-width:none}.feedback-toolbar .button{flex:1}.support-page .ticket-row{padding:15px 0}.support-ticket-copy b{font-size:13px}.support-page .support-chat{padding:12px}.support-page .support-chat-bubble{max-width:100%}.portal-page-lead{font-size:12px}}
@media(prefers-reduced-motion:reduce){.shop-page .shop-product-card{transition:none}.shop-page .shop-product-card:hover{transform:none}}
.mail-page .mail-attachment{grid-template-columns:90px minmax(0,1fr) auto;animation:none}.mail-page .mail-list-item.active{box-shadow:none}@media(max-width:760px){.mail-page .mail-attachment{grid-template-columns:72px minmax(0,1fr) auto}}
.shop-intro{position:relative;overflow:hidden;border:1px solid #3c463f;border-radius:8px;padding:25px 28px;min-height:176px;background:#192327}.shop-intro:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#10191e,#10191ece 38%,#10191e24),url("/shared/assets/portal-v2/tactical.png") 70% 40%/cover}.shop-intro-content{position:relative;max-width:550px}.shop-intro h2{font-size:30px;margin:8px 0 18px}.shop-intro .button{font-size:12px}.shop-intro .eyebrow{margin-bottom:8px}@media(max-width:760px){.shop-intro{padding:22px;min-height:165px}.shop-intro:before{background:linear-gradient(90deg,#10191ef5,#10191e99),url("/shared/assets/portal-v2/tactical.png") 70% center/cover}.shop-intro h2{font-size:25px}}
.shop-page [hidden],.shop-item-drawer [hidden],.shop-cart-overlay [hidden],.shop-compare-overlay [hidden],.mail-page [hidden]{display:none!important}@media(max-width:760px){.shop-page .shop-toolbar{flex-direction:column;flex-wrap:nowrap;align-items:stretch;padding:0;border:0;background:none}.shop-page .shop-toolbar>label{flex-basis:auto;width:100%;min-width:0}.shop-page .shop-toolbar-side{flex-direction:row;flex-wrap:wrap;align-items:center;width:100%;min-width:0}.shop-page .shop-toolbar-side label{min-width:0}.shop-page .shop-cart-open{width:auto}.shop-page .shop-product-copy{min-width:0}}
.mail-page .mail-shell{min-height:280px}@media(max-width:760px){.mail-page .mail-shell{min-height:280px}}

/* Mail panes keep their own finite scroll area beneath the real portal chrome. */
body.portal-v2 .mail-page .mail-shell{grid-template-rows:minmax(0,1fr);min-height:0}
body.portal-v2 .mail-page .mail-list{min-height:0;max-height:100%;overflow:hidden}
body.portal-v2 .mail-page .mail-list-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;overflow-anchor:none}
body.portal-v2 .mail-page .mail-detail{grid-template-rows:auto minmax(0,1fr) auto;min-height:0;max-height:100%;overflow:hidden}
body.portal-v2 .mail-page .mail-detail-toolbar{display:none;grid-row:1}
body.portal-v2 .mail-page .mail-detail-scroll{grid-row:2;min-height:0;overflow-y:auto;overscroll-behavior:contain;overflow-anchor:none;padding:0}
body.portal-v2 .mail-page .mail-detail-content{padding:25px 28px;min-width:0}
body.portal-v2 .mail-page .mail-message-body{overflow-wrap:anywhere}
body.portal-v2 .mail-page .mail-detail-actions{grid-row:3;min-height:0;min-width:0;gap:12px;flex-wrap:wrap}
body.portal-v2 .mail-page .mail-shell.mail-natural-flow{height:auto;grid-template-rows:auto;overflow:visible}
body.portal-v2 .mail-page .mail-natural-flow .mail-list{max-height:none;align-self:start}
body.portal-v2 .mail-page .mail-natural-flow .mail-list-scroll{max-height:360px}
body.portal-v2 .mail-page .mail-natural-flow .mail-detail{height:auto;max-height:none;overflow:visible}
body.portal-v2 .mail-page .mail-natural-flow .mail-detail-scroll{overflow:visible}
@media(max-width:760px){
body.portal-v2 .mail-page .mail-detail-toolbar{display:block;padding:8px 18px;border-bottom:1px solid var(--line)}
body.portal-v2 .mail-page .mail-mobile-back{margin:0;min-height:44px}
body.portal-v2 .mail-page .mail-detail-content{padding:18px}
body.portal-v2 .mail-page .mail-natural-flow .mail-list,body.portal-v2 .mail-page .mail-natural-flow .mail-detail{height:auto}
}
body.portal-v2 .feedback-layout>.panel+.panel{margin-top:0}body.portal-v2 .feedback-layout>.feedback-list-panel{padding:0}
.shop-guest-note { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:15px 18px; margin-bottom:20px; border:1px solid var(--line); border-radius:7px; background:#111b20; }
.shop-guest-note p { margin:0; color:var(--muted); font-size:12px; line-height:1.6; }
.shop-guest-note .button { flex:none; }
.shop-detail-purchase { flex-wrap:wrap; }
.shop-detail-actions { min-width:0; flex-wrap:wrap; }
.shop-detail-actions .button { white-space:normal; line-height:1.4; }
.shop-compare-product [aria-disabled="true"] { opacity:.5; pointer-events:none; }
@media(max-width:760px) { .shop-guest-note { align-items:start; gap:12px; padding:13px; } .shop-guest-note p { font-size:11px; } .shop-guest-note .button { font-size:11px; min-height:35px; padding:7px 10px; } .shop-detail-actions { width:100%; } .shop-detail-actions .button { flex:1; min-width:0; } }
