/* -PTF- Activity private preview. Extends PASS319 shared site language. */
.activity-page .hero{padding-bottom:18px}
.activity-page .hero-copy{max-width:900px}
.activity-preview-flag{width:max-content;max-width:100%;display:inline-flex;align-items:center;gap:8px;margin-top:18px;padding:7px 11px;border:1px solid var(--border-authority);border-left:4px solid var(--gold);background:linear-gradient(90deg,rgba(75,62,10,.20),rgba(5,18,27,.60));color:var(--gold);font-size:10px;font-weight:950;letter-spacing:.11em;line-height:1.2;text-transform:uppercase}
.activity-preview-flag span{color:var(--text-technical);font-weight:850;letter-spacing:.06em}
.activity-section{padding-top:10px}
.activity-feed{position:relative;display:grid;gap:0;margin-top:7px}
.activity-feed::before{content:"";position:absolute;left:110px;top:21px;bottom:22px;width:1px;background:linear-gradient(180deg,var(--border-strong),var(--line-soft) 92%,transparent)}
.activity-row{position:relative;display:grid;grid-template-columns:92px minmax(0,1fr);gap:38px;padding:0 0 14px}
.activity-month{padding-top:16px;color:var(--steel2);font-size:10.5px;font-weight:950;letter-spacing:.11em;line-height:1.1;text-align:right;text-transform:uppercase;white-space:nowrap}
.activity-dot{position:absolute;left:105px;top:18px;width:11px;height:11px;border:2px solid #071522;background:var(--steel2);box-shadow:0 0 0 1px var(--border-strong),0 0 10px rgba(84,177,221,.13);transform:rotate(45deg)}
.activity-row.is-gold .activity-dot{background:var(--gold);box-shadow:0 0 0 1px var(--border-authority),0 0 12px rgba(240,212,79,.16)}
.activity-card{position:relative;min-width:0;border:1px solid var(--border-panel);border-left:5px solid var(--steel);background:linear-gradient(100deg,rgba(14,47,65,.15),rgba(6,20,29,.98) 27%,rgba(3,12,19,.99));box-shadow:0 10px 24px rgba(0,0,0,.20);clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,12px 100%,0 calc(100% - 12px));overflow:hidden}
.activity-card.is-gold{border-left-color:var(--gold);background:linear-gradient(102deg,rgba(72,59,7,.12),rgba(6,20,29,.98) 28%,rgba(3,12,19,.99))}
.activity-meta{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:7px}
.activity-tag{display:inline-flex;align-items:center;min-height:22px;padding:4px 8px;border:1px solid var(--steel);background:rgba(30,85,113,.16);color:var(--steel2);font-size:9.5px;font-weight:950;letter-spacing:.09em;line-height:1;text-transform:uppercase;clip-path:polygon(4px 0,100% 0,100% 100%,0 100%,0 4px)}
.activity-card.is-gold .activity-tag{border-color:var(--border-authority);background:rgba(89,73,7,.14);color:var(--gold)}
.activity-date{color:var(--text-technical);font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}
.activity-copy h3{margin:0 0 7px;color:var(--text-strong);font-size:23px;font-weight:950;letter-spacing:-.012em;line-height:1.08;overflow-wrap:anywhere}
.activity-copy p{max-width:780px;margin:0;color:var(--text-secondary);font-size:14.5px;line-height:1.44}
.activity-copy p+p{margin-top:6px}

/* Blue = normal activity. Gold = achievement/authority. */
.activity-standard-major{display:grid;grid-template-columns:320px minmax(0,1fr);min-height:202px}
/* Text-only major posts are compact members of the Activity card family. */
.activity-standard-major.no-media{display:block;min-height:0;border:1px solid var(--border-panel);border-left:5px solid var(--steel);background:linear-gradient(100deg,rgba(14,47,65,.18),rgba(6,20,29,.98) 30%,rgba(3,12,19,.99));box-shadow:0 10px 24px rgba(0,0,0,.18),inset 0 1px 0 rgba(138,200,233,.045);clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,10px 100%,0 calc(100% - 10px));overflow:hidden}
.activity-standard-major.no-media::before,.activity-standard-major.no-media::after{display:none}
.activity-standard-major.no-media .activity-copy{padding:14px 18px 15px}
.activity-standard-major.no-media.is-gold{border-left-color:var(--gold);background:linear-gradient(100deg,rgba(72,59,7,.18),rgba(6,20,29,.98) 30%,rgba(3,12,19,.99));box-shadow:0 10px 24px rgba(0,0,0,.18),inset 0 1px 0 rgba(240,212,79,.045)}
.activity-media{position:relative;width:320px;height:180px;margin:10px 0 10px 10px;border:1px solid var(--line-soft);background:#061019;overflow:hidden}
.activity-media-open{display:block;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:zoom-in;touch-action:manipulation}
.activity-media-open:focus-visible{outline:2px solid var(--steel2);outline-offset:-3px}
.activity-card.is-gold .activity-media-open:focus-visible{outline-color:var(--gold)}
.activity-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.92) brightness(.91);transition:filter .14s ease,transform .14s ease}
.activity-media-open:hover img{filter:saturate(1) brightness(.98);transform:scale(1.012)}
.activity-media::after{content:"";position:absolute;inset:0;border:1px solid rgba(116,190,225,.12);pointer-events:none}
.activity-card.is-gold .activity-media::after{border-color:rgba(240,212,79,.16)}

/* Activity image lightbox: opens uploaded evidence/media without leaving the timeline. */
.activity-lightbox{width:max-content;max-width:96vw;max-height:94vh;margin:auto;padding:0;border:1px solid rgba(116,190,225,.48);background:#02070b;box-shadow:0 24px 80px rgba(0,0,0,.78),0 0 0 1px rgba(255,255,255,.02);overflow:visible}
.activity-lightbox::backdrop{background:rgba(0,4,7,.90);backdrop-filter:blur(2px)}
.activity-lightbox img{display:block;max-width:94vw;max-height:90vh;width:auto;height:auto;object-fit:contain;background:#000}
.activity-lightbox-close{position:absolute;top:10px;right:10px;z-index:2;display:grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid rgba(138,200,233,.55);background:rgba(3,12,19,.88);color:#f4f8fa;font:900 28px/1 Arial,sans-serif;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.45);touch-action:manipulation}
.activity-lightbox-close:hover,.activity-lightbox-close:focus-visible{border-color:var(--gold);color:var(--gold);outline:none}
.activity-standard-major .activity-copy{display:flex;min-width:0;flex-direction:column;padding:17px 21px 16px}
.activity-standard-major .activity-copy p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.activity-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:auto;padding-top:11px}
.activity-link{display:inline-flex;align-items:center;justify-content:center;min-height:29px;padding:6px 10px;border:1px solid var(--border-control);background:linear-gradient(180deg,var(--sto-idle-top),var(--sto-idle-mid) 48%,var(--sto-idle-low) 52%,var(--sto-idle-tail));color:var(--text-inverse);font-size:10px;font-weight:950;letter-spacing:.035em;text-decoration:none;text-transform:uppercase;clip-path:polygon(0 0,calc(100% - 7px) 0,100% 50%,calc(100% - 7px) 100%,0 100%)}
.activity-link.primary{background:linear-gradient(180deg,var(--sto-pressed-top),var(--sto-pressed-mid) 48%,var(--sto-pressed-break) 52%,var(--sto-pressed-low));color:var(--text-inverse-authority)}

.activity-standard-minor{background:linear-gradient(100deg,rgba(14,47,65,.13),rgba(6,20,29,.97) 30%,rgba(3,12,19,.985))}.activity-standard-minor.is-gold{background:linear-gradient(100deg,rgba(72,59,7,.14),rgba(6,20,29,.97) 30%,rgba(3,12,19,.985))}.activity-standard-minor .activity-copy{padding:11px 16px 12px 18px}
.activity-standard-minor .activity-meta{margin-bottom:4px}
.activity-standard-minor .activity-copy h3{margin-bottom:2px;font-size:17px;line-height:1.16}
.activity-standard-minor .activity-copy p{font-size:12.5px;line-height:1.36;color:var(--text-muted)}
.activity-standard-minor .activity-tag{min-height:19px;padding:3px 7px;font-size:8.8px}
.activity-standard-minor .activity-date{font-size:9px}
.activity-standard-minor .activity-actions{margin-top:6px;padding-top:0}
.activity-standard-minor .activity-link{min-height:24px;padding:4px 8px;font-size:8.6px}

.activity-member-names{margin-top:6px!important;color:var(--text-strong)!important;font-size:12.5px!important;line-height:1.35!important;letter-spacing:.01em}
.activity-member-names strong{color:var(--gold);font-weight:900}

/* Fleet advancement uses the real fleet emblem and a single unified achievement card. */
.activity-level-strip{display:grid;grid-template-columns:108px minmax(0,1fr) 158px;align-items:stretch;gap:0;min-height:100px;padding:0;border-left-width:5px;background:linear-gradient(100deg,rgba(18,65,89,.30),rgba(5,19,29,.98) 38%,rgba(3,12,19,.99));box-shadow:0 10px 24px rgba(0,0,0,.20),inset 0 1px 0 rgba(138,200,233,.09)}
.activity-level-emblem{display:grid;place-items:center;padding:10px 8px 10px 12px;border:0;background:transparent}
.activity-level-emblem img{display:block;width:76px;height:76px;object-fit:contain;filter:drop-shadow(0 0 12px rgba(84,177,221,.20))}
.activity-level-emblem span{color:var(--steel2);font-size:9px;font-weight:950;letter-spacing:.10em;text-transform:uppercase}
.activity-level-copy{display:flex;min-width:0;flex-direction:column;justify-content:center;padding:12px 18px}
.activity-level-copy .activity-meta{margin-bottom:5px}
.activity-level-copy h3{margin:0;color:var(--text-strong);font-size:19px;font-weight:950;line-height:1.12;overflow-wrap:anywhere}
.activity-level-cheer{margin-top:5px!important;color:var(--steel2)!important;font-size:12px!important;font-weight:800;line-height:1.3!important}
.activity-level-numbers{display:flex;min-width:0;flex-direction:column;justify-content:center;align-items:flex-start;padding:11px 18px 10px 10px;background:transparent;font-variant-numeric:tabular-nums;white-space:nowrap}
.activity-level-label{margin-bottom:5px;color:var(--text-technical);font-size:8px;font-weight:950;letter-spacing:.12em;line-height:1;text-transform:uppercase}
.activity-level-progression{display:flex;align-items:baseline;gap:9px}
.activity-level-old{color:var(--text-technical);font-size:20px;font-weight:900;line-height:1;opacity:.68}
.activity-level-arrow{color:var(--steel2);font-size:16px;font-weight:950;line-height:1}
.activity-level-new{color:var(--steel2);font-size:42px;font-weight:950;letter-spacing:-.035em;line-height:.82;text-shadow:0 0 18px rgba(84,177,221,.19)}
.activity-level-strip.is-max{border-left-color:var(--gold);background:linear-gradient(100deg,rgba(80,65,8,.24),rgba(6,20,29,.98) 38%,rgba(3,12,19,.99))}
.activity-level-strip.is-max .activity-level-emblem{border:0;background:transparent}
.activity-level-strip.is-max .activity-level-emblem img{filter:drop-shadow(0 0 11px rgba(240,212,79,.15))}
.activity-level-strip.is-max .activity-level-label,.activity-level-strip.is-max .activity-level-new,.activity-level-strip.is-max .activity-level-cheer{color:var(--gold)!important}
.activity-level-strip.is-max .activity-level-numbers{background:transparent}
.activity-level-strip.is-max .activity-level-new{text-shadow:0 0 18px rgba(240,212,79,.17)}

/* Month-end uses a compact editorial ledger: identity on the left, live stat rail on the right. */
.activity-card.activity-monthly{display:grid;grid-template-columns:minmax(270px,.82fr) minmax(470px,1.38fr);align-items:stretch;gap:0;position:relative;min-height:94px;padding:0;border:1px solid var(--border-panel);border-left:5px solid #9873c9;background:linear-gradient(100deg,rgba(86,55,122,.20),rgba(5,19,29,.98) 34%,rgba(3,12,19,.99));box-shadow:0 10px 24px rgba(0,0,0,.18),inset 0 1px 0 rgba(152,115,201,.055);clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,10px 100%,0 calc(100% - 10px));overflow:hidden}
.activity-card.activity-monthly.is-gold{border-left-color:#9873c9;background:linear-gradient(100deg,rgba(86,55,122,.20),rgba(5,19,29,.98) 34%,rgba(3,12,19,.99))}
.activity-card.activity-monthly .activity-tag{border-color:rgba(152,115,201,.58);background:rgba(86,55,122,.18);color:#c7ace8}
.activity-row:has(.activity-monthly) .activity-dot{background:#9873c9;box-shadow:0 0 0 1px rgba(152,115,201,.58),0 0 12px rgba(152,115,201,.18)}
.activity-monthly::before,.activity-monthly::after{display:none}
.activity-monthly-head{display:flex;min-width:0;flex-direction:column;justify-content:center;padding:11px 16px 11px 15px;border:0;background:transparent}
.activity-monthly-title .activity-meta{margin-bottom:5px}
.activity-monthly-title h3{margin:0;color:var(--text-strong);font-size:20px;font-weight:950;letter-spacing:-.01em;line-height:1.08;overflow-wrap:anywhere}
.activity-monthly-summary{display:-webkit-box;max-width:460px;margin:5px 0 0!important;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;color:var(--text-secondary)!important;font-size:12.5px!important;line-height:1.32!important}
.activity-monthly-stamp{display:none}
.activity-monthly-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;min-width:0;align-items:stretch;padding:0 8px 0 0;background:transparent;border:0;border-left:1px solid rgba(118,167,194,.20)}
.activity-stat{position:relative;min-width:0;min-height:92px;display:flex;flex-direction:column;justify-content:center;padding:11px 13px 10px;background:transparent}
.activity-stat+.activity-stat::before{content:"";position:absolute;left:0;top:15px;bottom:14px;width:1px;background:linear-gradient(180deg,transparent,rgba(118,167,194,.20) 24%,rgba(118,167,194,.20) 76%,transparent)}
.activity-stat span{margin-bottom:4px;color:var(--steel2);font-size:9px;font-weight:950;letter-spacing:.08em;line-height:1.14;text-transform:uppercase;white-space:nowrap}
.activity-stat strong{color:var(--text-strong);font-size:24px;font-weight:950;font-variant-numeric:tabular-nums;line-height:1}
.activity-stat em{margin-top:4px;color:var(--text-muted);font-size:9.4px;font-style:normal;line-height:1.15;white-space:normal}

.activity-winners{margin-top:11px;border-top:1px solid var(--line-soft);padding-top:9px}
.activity-winners summary{width:max-content;max-width:100%;cursor:pointer;color:var(--gold);font-size:10px;font-weight:950;letter-spacing:.075em;text-transform:uppercase;list-style:none}
.activity-winners summary::-webkit-details-marker{display:none}
.activity-winners summary::after{content:" +";color:var(--steel2)}
.activity-winners[open] summary::after{content:" −"}
.activity-winner-list{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 0;padding:0;list-style:none}
.activity-winner-list li{padding:5px 8px;border:1px solid var(--border-authority);background:rgba(89,73,7,.11);color:var(--text-primary);font-size:11px;font-weight:850}
.activity-load-wrap{display:flex;justify-content:center;margin:6px 0 0}
.activity-load{min-width:220px}
.activity-status{margin-top:10px;padding:14px 16px;border:1px solid var(--border-panel);border-left:4px solid var(--gold);background:linear-gradient(90deg,rgba(71,60,12,.11),rgba(3,13,21,.96));color:var(--text-secondary);font-size:12.5px;line-height:1.45}
.activity-status[hidden]{display:none}
.activity-status strong{color:var(--text-strong)}

@media(max-width:1100px){.activity-standard-major{grid-template-columns:260px minmax(0,1fr)}.activity-media{width:240px;height:135px}}
@media(max-width:900px){.activity-feed::before{left:92px}.activity-row{grid-template-columns:74px minmax(0,1fr);gap:34px}.activity-dot{left:87px}.activity-month{font-size:9.5px}.activity-level-strip{grid-template-columns:92px minmax(0,1fr) 136px}.activity-level-emblem{padding:8px 6px 8px 10px}.activity-level-emblem img{width:66px;height:66px}.activity-level-copy{padding-left:14px;padding-right:14px}.activity-level-numbers{padding-left:15px;padding-right:12px}.activity-level-new{font-size:36px}.activity-card.activity-monthly{grid-template-columns:1fr;min-height:0}.activity-monthly-head{padding:11px 13px 9px}.activity-monthly-summary{max-width:680px;-webkit-line-clamp:2}.activity-monthly-grid{grid-template-columns:repeat(4,minmax(0,1fr));padding:0;border-left:0;border-top:1px solid rgba(118,167,194,.18)}.activity-stat{min-height:62px;padding:8px 10px}}
@media(max-width:680px){.activity-page .hero{padding-bottom:24px}.activity-section{padding-top:16px}.activity-page .tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.activity-feed::before,.activity-dot,.activity-month{display:none}.activity-row{display:block;padding-bottom:12px}.activity-standard-major{grid-template-columns:1fr}.activity-media{width:calc(100% - 20px);height:auto;aspect-ratio:16/9;margin:10px}.activity-standard-major .activity-copy{padding:12px 16px 15px}.activity-copy h3{font-size:20px}.activity-level-strip{grid-template-columns:70px minmax(0,1fr) 100px;min-height:78px}.activity-level-emblem{padding:6px}.activity-level-emblem img{width:52px;height:52px}.activity-level-copy{padding:9px 10px}.activity-level-copy h3{font-size:15.5px}.activity-level-cheer{display:none}.activity-level-numbers{padding:8px 8px 8px 10px}.activity-level-label{font-size:6.5px;margin-bottom:4px}.activity-level-old{font-size:14px}.activity-level-arrow{font-size:11px}.activity-level-new{font-size:28px}.activity-monthly-head{padding:10px 11px 8px}.activity-monthly-title h3{font-size:18px}.activity-monthly-summary{font-size:11.5px!important}.activity-monthly-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.activity-stat{min-height:60px;padding:8px 10px}.activity-stat:nth-child(n+3){border-top:1px solid rgba(118,167,194,.12)}.activity-stat strong{font-size:21px}}
@media(max-width:420px){.activity-level-strip{grid-template-columns:58px minmax(0,1fr) 88px}.activity-level-emblem{padding:5px}.activity-level-emblem img{width:44px;height:44px}.activity-level-copy{padding-left:8px;padding-right:6px}.activity-level-copy .activity-meta{gap:5px;margin-bottom:3px}.activity-level-copy .activity-tag{font-size:7.5px;padding:3px 5px}.activity-level-copy .activity-date{font-size:7.5px}.activity-level-copy h3{font-size:14px}.activity-level-numbers{padding-left:7px;padding-right:6px}.activity-level-old{font-size:12px}.activity-level-arrow{font-size:9px}.activity-level-new{font-size:25px}.activity-monthly-grid{grid-template-columns:1fr 1fr}.activity-stat span{font-size:8px;white-space:normal}.activity-stat strong{font-size:18px}}
.activity-load[hidden]{display:none!important}
