.app-nav{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.app-nav a{padding:8px 10px;border-radius:9px;color:#dce4f3;text-decoration:none;font-size:12px;font-weight:900;border:1px solid transparent;transition:.15s ease}
.app-nav a:hover{background:#172136;border-color:#3a4865}
.app-nav a.active,.app-nav a[aria-current="page"]{color:#fff;background:linear-gradient(#a451cf,#6a319f);border-color:#c77aed;box-shadow:0 7px 18px #0004}

.topbar{min-height:82px!important}.brand .small{display:none}.crest{width:72px!important;height:72px!important;display:block!important;object-fit:contain;background:none!important;clip-path:none!important;filter:drop-shadow(0 5px 8px #6f35a866)!important}.brand-title{font-size:21px!important}
.hero{display:block;max-width:850px;padding:24px 0 16px}
.hero h1{max-width:780px}
.hero .lead{max-width:720px;margin-bottom:16px;font-size:16px}
.hero-action{display:inline-block;text-decoration:none}
.hero-points{display:none}
.hero-points span{padding:7px 10px;border-radius:999px;background:#141d30;border:1px solid #42506d;color:#cbd5e7;font-size:12px;font-weight:800}

.update-summary{margin:0 0 12px;border:1px solid #66502f;border-left:4px solid var(--gold);border-radius:10px;background:#171d2c}
.update-summary summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 15px;background:transparent;color:#dce5f3;font-size:13px}
.update-summary summary>span:last-child{color:var(--gold);white-space:nowrap}
.update-summary-body{padding:0 15px 14px;color:var(--muted);line-height:1.55;font-size:13px}

.setup-step{max-width:980px;margin-left:auto;margin-right:auto}
.panel{margin-top:12px!important;margin-bottom:16px!important;border-width:3px!important;border-radius:15px!important}.panel-head{padding:11px 15px!important;border-bottom-width:3px!important}.panel-head h2{font-size:18px!important}.body{padding:15px!important}.badge{padding:5px 8px!important;font-size:10px!important}
.source-step .body{padding-top:16px}
.advanced-options{margin:12px 0 0;border-width:2px}
.progression-import{margin-top:0}
.dev-box{display:none}
.technical-step{display:none}
.guided-step{display:none}
body.has-account .guided-step{display:block}
#sourceConsistency{display:none!important}
body.has-account #sourceConsistency:has(.consistency-badge.bad),
body.has-account #sourceConsistency:has(.consistency-badge.warn){display:block!important}
body.has-account .hero,body.has-account #updateNotes{display:none}
.player-card{grid-template-columns:auto 1fr auto;padding:10px 12px;margin-top:12px;border-width:2px}
.player-card .avatar{width:46px;height:46px;border-radius:12px;font-size:17px;border-width:2px}
.player-card h3{font-size:18px}
.player-card #playerClan,.player-card .source-labels{display:none}
.optional-step{border-width:3px}
.optional-step>summary.panel-head{padding:13px 18px;cursor:pointer;list-style:none}
.optional-step>summary.panel-head::-webkit-details-marker{display:none}
.optional-step-title{font-size:18px;font-weight:900}
.optional-step:not([open])>summary.panel-head{border-bottom:0}
.generate-step .body>.controls{justify-content:space-between}
.primary-generate{min-width:220px;font-size:16px;padding:14px 20px}
.export-actions{margin:0;border-width:2px;min-width:150px}
.export-actions summary{padding:9px 12px;font-size:12px}
.export-actions .controls{padding:0 10px 10px;margin:0}
.export-actions .btn{font-size:12px;padding:8px 10px}
.source-explanation{border-width:2px}
.secondary-settings{grid-column:1/-1;margin:0;border:1px solid #3d4961;border-radius:9px;background:#111a2b}.secondary-settings>summary{padding:10px 12px;color:#d9c7ed;font-size:12px;font-weight:900;cursor:pointer}.secondary-settings>.field{padding:0 12px 12px}.progression-copy .muted,.progression-actions>.muted{display:none}.compact-result-list:not(.expanded)>.card:nth-of-type(n+7){display:none!important}.result-show-more{margin:10px 0 4px}

.empty-report{text-align:center;max-width:720px;margin:70px auto}
.empty-report .body{padding:42px}
.empty-report h2{font-size:32px;margin:8px 0}
.empty-report p{margin:0 auto 24px;max-width:520px}

body.report-route .hero,
body.report-route #updateNotes,
body.report-route .setup-step,
body.report-route .technical-step{display:none!important}
body.report-route #results{display:none!important;margin-top:34px}
body.report-route.has-report #results{display:block!important}
body.report-route .legacy-result-tabs{display:none}
body.report-route #results>.body{padding-top:16px}
body.report-route .results-head{margin-bottom:12px}
body.report-route .results-head .source-labels{display:none}
body.report-route #scoreMetrics{display:none}
body.report-route .method-details{display:none}
body.report-route .method-details>summary{padding:10px 13px;font-size:13px;color:#d9c7ed}
body.report-route .method-details #recommendationEvidence{margin:0;border:0;border-radius:0;box-shadow:none}
body.report-route .result-view{display:none}
body.route-analysis #results,
body.route-analysis #emptyReport{display:none!important}
body.route-army #armyResults,
body.route-upgrade #upgradeResults,
body.route-base #baseDesignResults{display:block}
body.route-base #baseDesignResults{margin-top:20px}
body.report-route .guide-note{font-size:13px;padding:10px 12px}
body.route-army #armyResults>.guide-note:not(#armyPreferenceSummary),
body.route-army .army-availability-panel>.guide-note,
body.route-army .army-card .army-source-line,
body.route-army .army-card .evidence-line,
body.route-army .army-card .breakdown{display:none!important}
body.route-army #armyFuturePanel .army-card .chips{display:none}
body.route-army #armyList>.card .title-wrap .muted,
body.route-army #armyFutureList>.card .title-wrap .muted,
body.route-army .army-card .title-wrap .muted{display:block!important;overflow:visible!important;max-height:none!important;line-height:1.45!important;white-space:normal!important;text-overflow:clip!important;-webkit-line-clamp:unset!important;-webkit-box-orient:initial!important}
body.route-army #armyPreferenceSummary{margin-bottom:10px}
.army-event-line{margin-top:8px;padding:8px 10px;border:1px solid #5962a8;border-radius:8px;background:#171b3a;color:#d8d5ff;font-size:12px;line-height:1.4}
.event-intelligence{margin:0 0 16px;border-color:#7255ad}.event-intelligence .panel-head a{color:#c7a7ff}.event-list{display:grid;gap:8px}.event-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:10px;padding:11px;border:1px solid #384968;border-radius:10px;background:#111a2d}.event-card>span{font-size:10px;font-weight:900;color:#9fe2ff;border:1px solid #34718b;border-radius:999px;padding:4px 7px}.event-card.active>span{color:#8ff0b4;border-color:#26724b}.event-card strong{color:#fff}.event-card p{margin:3px 0 0;color:#aebbd2;font-size:13px;line-height:1.4}.event-card>b{color:#ffd866;font-size:12px;white-space:nowrap}
.event-intelligence>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;cursor:pointer;list-style:none}.event-intelligence>summary::-webkit-details-marker{display:none}.event-intelligence>summary>span{display:grid;gap:3px}.event-intelligence>summary strong{color:#fff;font-size:14px}.event-intelligence>summary>b{color:#c7a7ff;font-size:11px}.event-intelligence[open]>summary>b{font-size:0}.event-intelligence[open]>summary>b:after{content:"Close advice";font-size:11px}.event-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px 0;border-top:1px solid #3b3154}.event-panel-head h2{margin:0;color:#fff;font-size:16px}.event-panel-head a{color:#c7a7ff;font-size:11px}.event-intelligence>.body{padding-top:10px}
body.route-upgrade .card>.card-head .muted{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.45}
body.route-upgrade .card{padding:13px}
body.route-upgrade .breakdown{display:none}
body.route-upgrade .card .army-membership,
body.route-upgrade .priority-panel-head p,
body.route-upgrade .resource-priority-note{display:none}
body.route-upgrade .priority-panel-head{margin-bottom:8px}
body.route-upgrade .card[data-priority-resource]{border:2px solid var(--resource-trim,#65738c)!important;box-shadow:0 0 0 1px color-mix(in srgb,var(--resource-trim) 16%,transparent),0 9px 22px #070b1480}
body.route-upgrade .card[data-priority-resource="gold"]{--resource-trim:#f1be3f}
body.route-upgrade .card[data-priority-resource="elixir"]{--resource-trim:#d85cf0}
body.route-upgrade .card[data-priority-resource="dark-elixir"]{--resource-trim:#8d5bd2}
body.route-upgrade .card[data-priority-resource="ore"]{--resource-trim:#56b8e8}
body.route-upgrade .card[data-priority-resource="gold-elixir"]{--resource-trim:#e987d9}
body.route-upgrade .card[data-priority-resource="unknown"]{--resource-trim:#65738c}
body.route-upgrade .priority-why{margin:10px 0 2px;border:1px solid #3d4961;border-radius:9px;background:#111a2b;overflow:hidden}
body.route-upgrade .priority-why summary{padding:9px 11px;color:#d9c7ed;font-size:12px;font-weight:900;cursor:pointer;transition:.15s ease}
body.route-upgrade .priority-why summary:hover{background:#19243a;color:#fff}
body.route-upgrade .priority-why-body{padding:0 11px 10px;color:#aeb9ce;font-size:12px;line-height:1.5}
body.route-upgrade .priority-why-body .muted{color:inherit}

.footer{padding:24px 0 32px}
.footer-sources{display:inline-block;margin:0 0 0 8px;border:0;background:transparent;vertical-align:middle}
.footer-sources summary{display:inline;padding:0;background:transparent;color:#ddb7ff;font-size:inherit}
.footer-sources>div{margin-top:10px}
.progression-hero{padding-top:30px!important;padding-bottom:18px!important}
.progression-hero,.war-hero{padding-top:20px!important;padding-bottom:12px!important;gap:16px!important}.progression-hero h1,.war-hero h1{margin:7px 0!important;font-size:clamp(34px,5vw,52px)!important}.progression-hero .ribbon,.war-hero .ribbon,.trader-hero .ribbon{display:none}.progression-hero .lead,.war-hero .lead,.trader-hero .lead{font-size:14px!important;line-height:1.45!important}.trader-note,.war-scope-card{display:none!important}.data-boundary{margin-top:12px!important}.war-account-lookup p,.trader-summary-copy{display:none}.footer{padding:14px 0 22px!important;font-size:11px}.progression-panel>.body{padding-top:12px!important}
.compact-disclosure{margin-top:10px;padding:0;border:1px solid #33445f;border-radius:10px;background:#10192a}.compact-disclosure>summary{padding:10px 12px;color:#c8d4e6;font-size:12px;font-weight:850;cursor:pointer;list-style-position:inside}.compact-disclosure[open]>summary{border-bottom:1px solid #2d3b53}.compact-disclosure>p,.compact-disclosure>div{margin:0;padding:10px 12px;color:#9eacc1;font-size:12px;line-height:1.5}

@media(max-width:980px){
  .topbar{align-items:flex-start;padding:12px 0;gap:14px}
  .app-nav{max-width:640px}
  .app-nav a{font-size:12px;padding:8px 9px}
}
@media(max-width:720px){
  .topbar{display:grid;gap:12px}
  .brand .small{display:none}
  .app-nav{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;width:100%;padding-bottom:4px}
  .app-nav a{white-space:nowrap}
  .hero{padding:34px 4px 20px}
  .hero h1{font-size:43px}
  .generate-step .body>.controls{align-items:stretch;flex-direction:column}
  .primary-generate{width:100%}
  .export-actions{width:100%}
  body.report-route #results{margin-top:18px}
  .event-card{grid-template-columns:auto 1fr}.event-card>b{grid-column:2;white-space:normal}
}
