.planner-page{max-width:1040px;margin-inline:auto}.planner-page>.lead{max-width:760px}.planner-page time{display:inline}.planner-tabs{flex-wrap:wrap;gap:10px;margin-block:24px;display:flex}.planner-tabs a{border:1px solid var(--line);min-height:44px;color:var(--muted);align-items:center;padding:10px 16px;text-decoration:none;display:inline-flex}.planner-tabs a[aria-current=page]{border-color:var(--gold);color:var(--text);background:var(--surface)}.planner-period{border-left:2px solid var(--gold);background:var(--surface-soft);margin-block:24px;padding:16px 20px}.planner-period p{margin:0;font-size:14px}.planner-period strong{color:var(--text)}.planner-grid{grid-template-columns:minmax(0,1.6fr) minmax(270px,1fr);align-items:start;gap:32px;margin-block:32px;display:grid}.planner-form fieldset{border:1px solid var(--line);margin:0 0 28px;padding:22px}.planner-form legend{font:400 20px/1.5 var(--display);color:var(--text);padding-inline:8px}.planner-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.planner-field label{color:var(--text);margin-bottom:7px;font-size:14px;display:block}.planner-page input[type=number]{width:100%;min-height:46px;color:var(--text);font-variant-numeric:tabular-nums;background:#211929;border:1px solid #8f7b99;border-radius:0;padding:10px 12px;font:400 16px/1.5 Inter,Arial,sans-serif;display:block}.planner-page input:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.planner-page input[aria-invalid=true]{border-color:#f2a6a6}.planner-page input[type=checkbox]{appearance:auto;width:20px;height:20px;accent-color:var(--gold);flex-shrink:0;margin:0;display:inline-block}.planner-page .field-help{color:var(--muted);margin-top:6px;font-size:12px;line-height:1.7;display:block}.planner-page .field-error{color:#ffc1bd;margin:7px 0 0;font-size:13px}.planner-page .field-error:empty{display:none}.planner-check{cursor:pointer;min-height:44px;color:var(--text);align-items:flex-start;gap:12px;padding-block:12px;font-size:14px;line-height:1.7;display:flex}.planner-check input{margin-top:2px!important}.attendance-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.attendance-option{border:1px solid var(--line);align-items:center;padding:10px}.attendance-option small{color:var(--muted);font-size:12px;display:block}.planner-reward{border-top:1px solid var(--line);padding-block:20px}.planner-reward:first-of-type{border-top:0;padding-top:0}.planner-reward h3{margin-bottom:6px;font-size:18px}.planner-reward p{margin-bottom:14px;font-size:13px}.planner-result{border-block:1px solid var(--gold);background:var(--surface-soft);padding:24px}.planner-result h2{font-size:23px}.planner-result dl{margin-block:18px}.planner-result dl>div{border-top:1px solid var(--line);padding-block:12px}.planner-result dt{color:var(--muted);font-size:13px}.planner-result dd{color:var(--text);font:400 28px/1.5 var(--display);font-variant-numeric:tabular-nums;margin:4px 0 0}.planner-result p{font-size:13px}.planner-result .result-status{color:var(--text)}.planner-errors{color:#ffc1bd;margin-block:16px;font-size:14px}.planner-actions{flex-wrap:wrap;gap:12px;margin-block:20px;display:flex}.planner-page .btn{min-height:46px;font-size:13px}.planner-storage-status{color:var(--muted);min-height:24px;font-size:13px}.planner-totals-link{text-underline-offset:4px;align-items:center;gap:10px;min-height:44px;padding-block:10px;font-size:14px;text-decoration:underline;display:inline-flex}.character-row{border-top:1px solid var(--line);padding-block:18px}.character-row:first-child{border-top:0;padding-top:0}.character-row-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.character-row-head h3{margin:0;font-size:18px}.character-remove{color:var(--accent);text-underline-offset:4px;min-height:44px;padding:8px;font-size:13px;text-decoration:underline}.planner-method{margin-top:42px}.planner-method p,.planner-method li{font-size:14px}.planner-method a,.planner-period a{text-underline-offset:4px;overflow-wrap:anywhere;text-decoration:underline;display:inline}.planner-method ul,.planner-result ul{padding-left:20px}.planner-method li,.planner-result li{color:var(--muted);list-style:outside}.planner-method h2{margin-top:28px;font-size:25px}.planner-promos{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;display:grid}.planner-promo{border-block:1px solid var(--line);padding-block:26px}.planner-promo h3{font-size:23px}.planner-promo p{font-size:14px}@media (width>=992px){.planner-result{position:sticky;top:24px}}@media (width<=800px){.planner-tabs a{flex:1;justify-content:center;padding-inline:8px;font-size:13px}.planner-grid,.planner-promos{grid-template-columns:1fr;gap:20px}.planner-result{grid-row:auto}}@media (width<=390px){.planner-form fieldset{padding:16px}.planner-fields{grid-template-columns:1fr;gap:16px}.attendance-grid{grid-template-columns:1fr}}
