/* Shared calculator rhythm: choices, inventory, balance, then optional detail. */
body.event-compact{font-size:16px}
body.event-compact .event-compact-grid{display:grid!important;grid-template-columns:minmax(290px,.85fr) minmax(0,1.45fr)!important;gap:18px;align-items:start}
body.event-compact .parameters-column{display:flex;flex-direction:column;gap:14px;min-width:0}
body.event-compact .settings-topbar,body.event-compact .result-panel,body.event-compact .milestone-rewards{position:static!important;margin:0;padding:20px!important;min-width:0}
body.event-compact h2{font-size:22px!important;font-weight:750!important;margin:0 0 14px!important}
body.event-compact h3{font-size:15px;font-weight:750}
body.event-compact label,body.event-compact summary{font-size:14px;font-weight:650;color:#c2ced3}
body.event-compact input,body.event-compact select{font-size:16px!important;font-weight:700!important}
body.event-compact .starter-fields,body.event-compact .cards-settings-grid{display:grid;grid-template-columns:minmax(0,1fr)!important;gap:12px}
body.event-compact .starter-secondary{display:block;margin-top:12px}
body.event-compact [hidden]{display:none!important}
body.event-compact .goal-mode-switch{gap:6px}
body.event-compact .target-buttons{display:flex!important;flex-wrap:wrap;gap:6px!important;margin:8px 0}
body.event-compact .target-buttons button,body.event-compact .result-panel .target-buttons button.goal-chip{min-height:34px!important;padding:6px 9px!important;font-size:16px!important;font-weight:750!important;display:inline-flex;align-items:center;justify-content:center;border-radius:6px!important}
body.event-compact .mini-heading{font-size:13px;font-weight:700;color:#c2ced3;letter-spacing:0}
body.event-compact .goal-current-budget{margin:18px 0;padding:0;border:0}
body.event-compact .goal-summary-heading{display:flex;justify-content:space-between;gap:12px;font-size:15px;font-weight:700}
body.event-compact .goal-summary-reserve{margin-top:8px;font-size:15px;font-weight:700;color:#edf3f5}
body.event-compact .goal-summary-reserve strong{display:inline-flex;align-items:center;gap:6px;font-size:30px;color:#e3b18b}
body.event-compact .goal-summary-reserve>span{display:block}
body.event-compact .compact-start{display:grid;grid-template-columns:minmax(0,1fr) 160px;align-items:center;gap:12px;margin:16px 0;padding:0;border:0;background:transparent;font-size:14px;font-weight:700;color:#c2ced3}
body.event-compact .compact-unit{display:inline-flex;align-items:center;gap:7px}
body.event-compact .compact-unit input{width:132px!important;margin:0;text-align:center}
body.event-compact .goal-crates{border:0;margin:10px 0;padding:0}
body.event-compact .participant-crate-fields{display:flex;align-items:end;flex-wrap:wrap;gap:9px}
body.event-compact .participant-crate-fields label{min-width:0}
body.event-compact .mode-control{display:grid;gap:5px;margin-top:12px}
body.event-compact .compact-result-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:20px;border-top:1px solid var(--line);padding-top:16px}
body.event-compact .compact-balance{display:inline-flex;align-items:center;gap:6px}
body.event-compact .compact-balance>strong{font-size:32px;font-weight:750;color:var(--danger)}
body.event-compact .compact-balance>strong.gain{color:#71d1cc}
body.event-compact .compact-overview>span{font-size:14px;color:#c2ced3}
body.event-compact .compact-actions{display:flex;flex-wrap:wrap;gap:10px 16px;margin-top:12px}
body.event-compact .compact-actions>span{display:inline-flex;align-items:center;gap:5px;font-weight:700}
body.event-compact .compact-actions .ui-icon{margin:0}
body.event-compact .compact-costs{border-left:1px solid var(--line);padding-left:18px;min-width:0}
body.event-compact .compact-costs h3{margin:0 0 9px}
body.event-compact #cost-details{margin:0;font-size:14px}
body.event-compact #cost-details>div{display:flex;justify-content:space-between;gap:8px;margin:6px 0}
body.event-compact #cost-details dt{color:#c2ced3;font-weight:600}
body.event-compact #cost-details dd{display:inline-flex;align-items:center;gap:4px;margin:0;white-space:nowrap;font-weight:750}
body.event-compact .compact-totals{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 10px;border-top:1px solid var(--line);padding-top:8px;margin:10px 0 0;font-size:14px}
body.event-compact .compact-totals dd{display:flex;align-items:center;gap:4px;white-space:nowrap;margin:0}
body.event-compact .compact-totals dt{color:#c2ced3}
body.event-compact .compact-custom-goal{margin-top:7px}
body.event-compact .compact-custom-goal summary{font-size:12px;min-height:28px}
body.event-compact .compact-rewards,body.event-compact .reward-breakdown{border-top:1px solid var(--line);margin-top:12px;padding-top:10px}
body.event-compact .reward-breakdown summary,body.event-compact .compact-rewards summary{font-size:15px;font-weight:700;margin-bottom:10px}
body.event-compact .point-info-window{padding:12px;margin:12px 0;font-size:14px}
body.event-compact .point-info-scores strong{font-size:23px;font-weight:750}
body.event-compact .point-info-meta{font-size:13px;gap:7px 12px}
body.event-compact .compact-stepper{display:inline-grid;grid-template-columns:30px minmax(0,1fr) 30px;width:132px;border:1px solid var(--line);border-radius:6px;background:#131a1e;align-items:center;vertical-align:middle;margin-top:5px}
body.event-compact .compact-stepper button{width:30px;min-height:34px;border:0;border-radius:0;padding:0;font-size:20px;background:transparent}
body.event-compact .compact-stepper input{width:100%!important;min-width:0;min-height:34px!important;border:0!important;background:transparent!important;border-radius:0!important;margin:0;padding:4px 0!important;text-align:center}
body.event-compact input[type=number]{appearance:textfield;-moz-appearance:textfield}
body.event-compact input::-webkit-inner-spin-button,body.event-compact input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
body.cards-compact .console-branches{display:flex;flex-wrap:wrap;gap:6px}
body.cards-compact .console-branches button{display:inline-flex;flex:1;gap:7px;align-items:center;justify-content:center;min-height:38px!important;font-size:16px;font-weight:750;padding:7px!important}
body.cards-compact .console-branches img{width:26px;height:26px}
body.cards-compact .console-section{padding:0;margin-bottom:15px;min-width:0}
body.cards-compact .compact-stages{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:6px}
body.cards-compact .compact-stages button{min-height:46px!important;padding:7px!important;display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:center;gap:5px;font-size:14px}
body.cards-compact .compact-stages strong{font-size:14px;font-weight:750}
body.cards-compact .compact-stages small{font-size:11px}
body.cards-compact .console-dot{display:none}
body.cards-compact .compact-stages .console-guardian{margin:0;grid-column:auto;border-style:solid}
body.cards-compact .console-quantity-row{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-start}
body.cards-compact .console-stepper{width:132px;max-width:132px;height:36px}
body.cards-compact .console-stepper input{min-height:34px!important;font-size:16px!important}
body.cards-compact .console-presets button{min-height:34px!important;padding:5px 8px;font-size:15px;font-weight:700}
body.cards-compact .net-result{padding:14px 0!important;margin:0!important;background:transparent!important;border:0!important}
body.cards-compact .net-result strong{font-size:32px!important;font-weight:750;overflow-wrap:anywhere}
body.cards-compact .net-result p{font-size:13px;margin:5px 0;color:#c2ced3}
body.cards-compact .totals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:8px 0}
body.cards-compact .totals strong{font-size:21px!important;font-weight:750}
body.cards-compact .totals span{font-size:13px}
body.cards-compact .parts-grid{grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:9px}
body.cards-compact .parts-stepper{width:132px;max-width:132px}
body.cards-compact .parts-field{display:flex;gap:8px;align-items:center;justify-content:space-between}
body.cards-compact .parts-field>label{margin:0}
body.cards-compact .cards-route-panel{border:0;border-top:1px solid var(--line);border-radius:0!important;box-shadow:none!important;background:transparent!important;padding:0!important;margin-top:16px}
body.cards-compact .cards-route-panel>summary{padding:11px 0;font-size:15px}
body.cards-compact .cards-route-panel .details-content{padding:0}
body.cards-compact .cards-route-table{font-size:13px}
body.cards-compact .cards-inventory{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:9px}
body.cards-compact .cards-inventory img{width:30px;height:30px}
body.cards-compact .cards-inventory strong{font-size:17px!important;font-weight:750}
#planner .parameters-column>.milestone-rewards>.compact-earned-rewards{margin:0 0 12px;border-top:0;padding-top:0}
#planner .parameters-column>.milestone-rewards>.compact-earned-rewards>summary{font-size:15px;font-weight:700;min-height:36px}
@media(max-width:760px){body.event-compact .event-compact-grid{display:flex!important;flex-direction:column}body.event-compact .parameters-column{display:contents}body.event-compact .settings-topbar{order:0;width:100%}body.event-compact .result-panel{order:1;width:100%}body.event-compact .milestone-rewards{order:2;width:100%}}
@media(max-width:500px){body.event-compact .compact-result-grid{grid-template-columns:minmax(0,1fr);gap:14px}body.event-compact .compact-costs{border-left:0;border-top:1px solid var(--line);padding:12px 0 0}}
@media(pointer:coarse){body.event-compact .compact-stepper{grid-template-columns:44px minmax(0,1fr) 44px}body.event-compact .compact-stepper button{width:44px;min-height:44px}body.event-compact .compact-stepper input{min-height:44px!important}body.event-compact .target-buttons button,body.event-compact .console-presets button{min-height:44px!important}}

#boss-compact-goal{container-name:boss-goal;container-type:inline-size}
@container boss-goal (max-width:500px){body.event-compact .compact-result-grid{grid-template-columns:minmax(0,1fr);gap:14px}body.event-compact .compact-costs{border-left:0;border-top:1px solid var(--line);padding:12px 0 0}}
/* Boss settings sit beside threshold choices, leaving rewards at the top left. */
body.bosses-compact .boss-goal-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:start}
body.bosses-compact .boss-inline-parameters{min-width:0;border-left:1px solid var(--line);padding-left:18px}
body.bosses-compact .boss-inline-parameters .starter-fields{display:block}
body.bosses-compact .boss-inline-parameters label{display:flex;gap:9px;align-items:center;flex-wrap:wrap}
body.bosses-compact .boss-info-window{display:block;margin:10px 0;padding:10px}
body.bosses-compact .boss-info-window .point-info-scores{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
body.bosses-compact .boss-info-window .point-info-scores>div{display:flex;align-items:center;justify-content:space-between;gap:9px;flex-wrap:wrap}
body.bosses-compact .boss-info-window .point-info-scores strong{font-size:22px}
body.bosses-compact .boss-info-window .point-info-scores span{font-size:13px}
body.bosses-compact .milestone-rewards>.reward-breakdown{border-top:0;margin-top:0;padding-top:0}
body.cards-compact .cards-console .console-stepper{display:grid;grid-template-columns:28px minmax(0,1fr) 28px;gap:0;padding:0;width:132px;height:36px;box-sizing:border-box;overflow:hidden;border-radius:6px}
body.cards-compact .cards-console .console-stepper button{width:28px;min-width:0;height:34px;min-height:34px!important;padding:0;font-size:18px;border:0;border-radius:0;line-height:1;background:transparent;box-sizing:border-box}
body.cards-compact .cards-console .console-stepper input{width:100%;min-width:0;max-width:100%;height:34px;min-height:34px!important;padding:3px 0!important;margin:0;box-sizing:border-box;border:0;font-size:16px!important;line-height:1.2;text-align:center;background:transparent}
body.cards-compact .compact-stages .stop-boss-icon{width:28px;height:28px;object-fit:contain;flex:none}
@container boss-goal (max-width:620px){body.bosses-compact .boss-goal-top{grid-template-columns:minmax(0,1fr);gap:12px}body.bosses-compact .boss-inline-parameters{border-left:0;border-top:1px solid var(--line);padding:12px 0 0}}

/* Boss milestone rewards start at the left edge of the reward column. */
body.bosses-compact .milestone-rewards .reward-milestone-table th,body.bosses-compact .milestone-rewards .reward-milestone-table td{text-align:left}
body.bosses-compact .milestone-rewards .milestone-items,body.bosses-compact .milestone-rewards .event-reward-items{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start}
body.bosses-compact .milestone-rewards .milestone-item{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}
