.upgrade-planner-page main { max-width: 1180px; }
.planner-hero { max-width: 720px; margin: 1.6rem 0 1.35rem; }
.planner-hero h1 { margin: .2rem 0 .7rem; font-size: clamp(2.8rem, 6vw, 5.3rem); }
.planner-hero p { max-width: 650px; font-size: 1.05rem; }
.planner-panel, .planner-results { margin-bottom: 1rem; }
.planner-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 1.2rem; margin-bottom: 1rem; }
.planner-heading h2 { margin: .2rem 0 0; }
.source-link { color: #ff9e30; font-family: 'DM Mono', monospace; font-size: .72rem; text-transform: uppercase; letter-spacing: .06em; white-space: nowrap; }
.planner-note { border-left: 3px solid #df7e1c; background: rgba(219, 107, 27, .12); padding: .7rem .85rem; color: #ead8c4; font-size: .86rem; }
.planner-levels { display: flex; align-items: end; gap: .8rem; margin: 1rem 0; max-width: 600px; }
.planner-levels label { flex: 1; }.planner-levels select, .planner-input-grid input { width: 100%; }.planner-arrow { padding-bottom: .75rem; color: #f0a546; font-size: 1.45rem; }
.planner-section-title { margin: 1rem 0 .45rem; color: #c5d0e7; font-family: 'DM Mono', monospace; text-transform: uppercase; letter-spacing: .11em; font-size: .76rem; }
.planner-input-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .6rem .75rem; }.planner-input-grid label { color: #c8d0e0; font-family: 'DM Mono', monospace; font-size: .7rem; letter-spacing: .05em; text-transform: uppercase; margin: 0; }.planner-input-grid input, .planner-input-grid select { min-height: 38px; margin-top: .28rem; padding: 8px 9px; }.planner-button { margin-top: 1rem; }
.planner-summary { color: #ffd39b; font-family: 'DM Mono', monospace; font-size: .8rem; text-transform: uppercase; letter-spacing: .1em; }
.resource-results { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; }.resource-card { border: 1px solid rgba(238, 207, 165, .25); padding: 1rem; background: rgba(9, 6, 5, .48); }.resource-card span, .resource-card small { display: block; }.resource-card span { color: #c9b59b; font-family: 'DM Mono', monospace; font-size: .72rem; text-transform: uppercase; letter-spacing: .07em; }.resource-card strong { display: block; margin: .35rem 0 .2rem; font-size: 1.4rem; }.resource-card.ready { border-left: 3px solid #72b680; }.resource-card.ready small { color: #9cd5a7; }.resource-card.short { border-left: 3px solid #df7e6c; }.resource-card.short small { color: #f3aaa0; }
.time-result { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .75rem; margin-top: 1rem; }.time-result > div { background: rgba(104, 56, 23, .2); padding: 1rem; }.time-result span { display: block; color: #c9b59b; font-family: 'DM Mono', monospace; font-size: .68rem; text-transform: uppercase; letter-spacing: .06em; }.time-result strong { display: block; margin-top: .45rem; font-size: 1.1rem; }
@media (max-width: 760px) { .planner-heading, .planner-levels { align-items: stretch; flex-direction: column; }.planner-arrow { display: none; }.planner-input-grid, .resource-results, .time-result { grid-template-columns: repeat(2, minmax(0, 1fr)); }.source-link { white-space: normal; } }
@media (max-width: 460px) { .planner-input-grid, .resource-results, .time-result { grid-template-columns: 1fr; } }

.svs-points-panel { margin-bottom: 1rem; }
.valeria-control { min-width: 190px; }
.valeria-control label { display: block; color: #c8d0e0; font-family: 'DM Mono', monospace; font-size: .7rem; letter-spacing: .06em; text-transform: uppercase; }
.valeria-control select { display: block; width: 100%; margin-top: .35rem; }
.svs-day-tabs { display: flex; flex-wrap: wrap; gap: .55rem; margin: 1.35rem 0 .8rem; }
.svs-day-tab { border: 1px solid #8f542c; background: rgba(20, 12, 9, .7); color: #ead8c4; padding: .68rem 1rem; font-family: 'DM Mono', monospace; font-size: .76rem; font-weight: 700; cursor: pointer; }
.svs-day-tab.active { background: #d96e1e; color: #180e09; border-color: #ffbc64; }
.svs-day-description { color: #ffd095; font-family: 'DM Mono', monospace; font-size: .82rem; letter-spacing: .05em; text-transform: uppercase; margin-bottom: .85rem; }
.svs-point-inputs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .8rem; }
.svs-point-inputs > label { display: grid; grid-template-columns: 1fr auto; gap: .2rem .5rem; align-items: end; background: rgba(8, 5, 4, .45); border: 1px solid rgba(238, 207, 165, .22); padding: .7rem; }
.svs-point-inputs label > span { color: #e9ddce; font-size: .86rem; line-height: 1.2; }
.svs-point-inputs label > small { color: #f2a554; font-family: 'DM Mono', monospace; font-size: .63rem; text-align: right; }
.svs-point-inputs label > input { grid-column: 1 / -1; width: 100%; }
.svs-points-actions { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-top: 1.25rem; }
.svs-total { text-align: right; }.svs-total span, .svs-total small { display: block; }.svs-total span { color: #c9b59b; font-family: 'DM Mono', monospace; font-size: .68rem; text-transform: uppercase; letter-spacing: .06em; }.svs-total strong { display: block; margin: .15rem 0; color: #ffc77d; font-size: 2rem; }.svs-total small { color: #d9c0a5; font-size: .76rem; }
.svs-points-breakdown { border-top: 1px solid rgba(238, 207, 165, .25); margin-top: 1.3rem; padding-top: 1rem; }.svs-points-breakdown h3 { margin: 0 0 .65rem; }.svs-points-breakdown > div { display: flex; justify-content: space-between; gap: 1rem; padding: .58rem 0; border-top: 1px solid rgba(238, 207, 165, .14); font-size: .88rem; }.svs-points-breakdown > div > span:last-child { color: #e9cba9; font-family: 'DM Mono', monospace; text-align: right; }.breakdown-subtotal { color: #ffc77d; font-size: 1rem !important; }
.promotion-calculator { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr repeat(3, minmax(120px, .5fr)); gap: .7rem; align-items: end; padding: .9rem; border: 1px solid rgba(255, 180, 85, .4); background: rgba(153, 69, 18, .16); }.promotion-calculator strong { display: block; color: #ffc77d; }.promotion-calculator > span { grid-column: 1; color: #e1c8ab; font-size: .78rem; }.promotion-calculator label { color: #c8d0e0; font-family: 'DM Mono', monospace; font-size: .68rem; text-transform: uppercase; letter-spacing: .06em; }.promotion-calculator input, .promotion-calculator select { display: block; width: 100%; margin-top: .35rem; }
@media (max-width: 760px) { .planner-panel, .planner-results, .svs-points-panel { padding: 18px; }.planner-hero h1 { font-size: 3rem; }.planner-heading { gap: .7rem; }.planner-heading h2 { font-size: 1.6rem; }.source-link { max-width: 135px; font-size: .62rem; text-align: right; }.planner-input-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }.svs-point-inputs { grid-template-columns: repeat(2, minmax(0, 1fr)); }.promotion-calculator { grid-template-columns: repeat(2, minmax(0, 1fr)); }.promotion-calculator > span { grid-column: 1 / -1; }.svs-points-actions { align-items: flex-start; flex-direction: column; }.svs-total { text-align: left; } }
@media (max-width: 460px) { .svs-point-inputs { grid-template-columns: 1fr; }.svs-points-breakdown > div { align-items: flex-start; flex-direction: column; gap: .25rem; }.svs-points-breakdown > div > span:last-child { text-align: left; }.promotion-calculator { grid-template-columns: 1fr; } }
