.goal-summary{display:flex;align-items:center;gap:28px;padding:20px 24px;margin-bottom:24px;background:linear-gradient(110deg,var(--panel2),var(--panel));border-color:var(--line2)}
.goal-summary-intro{display:flex;gap:15px;align-items:center;min-width:190px;flex:1.1}
.goal-summary-symbol{display:flex;align-items:center;justify-content:center;width:43px;height:43px;flex:none;border:1px solid var(--line2);border-radius:12px;color:var(--accent-soft);font-size:30px;line-height:1;background:var(--surface)}
.goal-summary-intro .section-index{display:block;font-size:8px;margin-bottom:3px;color:var(--accent-soft)}
.goal-summary-intro strong{display:block;font:700 20px/1.2 Hanken,sans-serif;letter-spacing:-.025em}
.goal-summary-intro small,.goal-summary-stat small{display:block;font-size:9px;color:var(--muted);margin-top:4px}
.goal-summary-stat{flex:1;min-width:0;border-left:1px solid var(--line2);padding-left:25px}
.goal-summary-stat>span{display:block;color:var(--grey);font-size:10px;margin-bottom:3px}
.goal-summary-stat>strong{font:700 23px/1.2 Hanken,sans-serif;letter-spacing:-.035em;white-space:nowrap;font-variant-numeric:tabular-nums}
.goal-summary-link{flex:none;padding:0 13px;gap:14px}
.goals-view{margin-bottom:26px}
.goals-topline{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:4px 0 12px}
.goals-topline h2{font-size:25px;letter-spacing:-.035em}
.goals-local-tag{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line2);border-radius:100px;padding:6px 10px;font-size:10px;white-space:nowrap;color:var(--silver)}
.goals-local-tag>span{color:var(--accent-soft);font-size:16px;line-height:1}
.goals-context{color:var(--grey);font-size:11px;line-height:1.8;max-width:820px;margin:0 0 22px}
.goals-context strong{font-weight:500;color:var(--silver)}
.goal-metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:21px}
.goal-metric{padding:21px 20px 18px;min-width:0}
.goal-metric:first-child{background:linear-gradient(135deg,var(--panel2),var(--panel));border-color:var(--line2)}
.goal-metric-top{display:flex;gap:8px;align-items:center;justify-content:space-between}
.goal-metric-label{font-family:JetBrains,monospace;font-size:9px;letter-spacing:.05em;text-transform:uppercase;color:var(--grey)}
.goal-card-dot{height:5px;width:5px;flex:none;border-radius:50%;background:var(--accent-soft);opacity:.8}
.goal-metric-value{display:block;font:800 clamp(24px,2.55vw,37px)/1.1 Hanken,sans-serif;letter-spacing:-.04em;margin:19px 0 8px;font-variant-numeric:tabular-nums;white-space:nowrap}
.goal-metric-value small{font:500 12px Inter,sans-serif;color:var(--grey);letter-spacing:0}
.goal-currency{font:500 11px Inter,sans-serif;letter-spacing:0;color:var(--accent-soft)}
.goal-target{font-size:10px;color:var(--muted);min-height:16px}
.goal-target strong{font-weight:500;color:var(--silver)}
.goal-progress{height:4px;border-radius:4px;background:var(--surface);overflow:hidden;margin:21px 0 11px}
.goal-progress>span{display:block;height:100%;background:var(--accent-soft);border-radius:inherit;transition:width .2s ease}
.goal-progress.is-empty{background:repeating-linear-gradient(90deg,var(--line2) 0,var(--line2) 8px,transparent 8px,transparent 12px)}
.goal-progress.is-empty>span{width:0}
.goal-metric-bottom{display:flex;flex-direction:column;gap:5px;justify-content:space-between;font-size:10px;color:var(--silver)}
.goal-metric-bottom small{font-size:9px;color:var(--muted)}
.goal-deadline .goal-metric-value{color:var(--accent-soft)}
.goals-data-note{font-size:11px;line-height:1.7;padding:13px 17px;background:var(--surface);border:1px solid var(--line2);border-radius:9px;color:var(--silver);margin-bottom:20px}
.goals-audit-notice{padding:15px 17px;border:1px solid var(--accent-soft);border-radius:9px;color:var(--silver);background:var(--surface);margin-bottom:20px;font-size:12px;line-height:1.7}.goals-audit-notice strong{color:var(--accent-soft)}.goals-audit-notice p{margin:6px 0 0}.goals-audit-notice:focus-visible{outline:2px solid var(--accent-soft);outline-offset:4px}
.goals-workspace{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(310px,1fr);gap:20px;align-items:start}
.goals-financial-panel .panel-heading{align-items:flex-end}
.goals-unit-tag{font:8px JetBrains,monospace;letter-spacing:.08em;color:var(--muted);padding-bottom:3px}
.goals-financial-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:27px 24px 0;padding-bottom:20px;border-bottom:1px solid var(--line);gap:13px}
.goals-financial-stats>div{min-width:0}
.goals-financial-stats>div>span{font-size:9px;display:block;color:var(--grey);margin-bottom:9px}
.goals-financial-stats strong{font:700 clamp(18px,1.7vw,25px)/1.15 Hanken,sans-serif;letter-spacing:-.03em;font-variant-numeric:tabular-nums;white-space:nowrap}
.goals-financial-stats>div:last-child strong{color:var(--accent-soft)}
.goals-pace-note{font-size:10px;color:var(--muted);margin:13px 24px 2px;line-height:1.7}
.goals-chart-wrap{padding:21px 10px 0;min-width:0}
.goals-chart{display:block;width:100%;height:auto;overflow:visible}
.goals-grid-line{stroke:var(--line);stroke-width:1}
.goals-axis-text{fill:var(--muted);font:10px Inter,sans-serif;font-variant-numeric:tabular-nums}
.goals-axis-unit{fill:var(--muted);font:8px JetBrains,monospace;letter-spacing:.07em}
.goals-actual-line{fill:none;stroke:var(--accent-soft);stroke-width:2.7;stroke-linejoin:round;stroke-linecap:round}
.goals-planned-line{fill:none;stroke:var(--silver);stroke-width:1.7;stroke-dasharray:5 6;stroke-linejoin:round;stroke-linecap:round;opacity:.8}
.goals-actual-area{fill:var(--chart-fill)}
.goals-actual-dot{fill:var(--accent-soft);stroke:var(--panel);stroke-width:2}
.goals-future-area{fill:var(--accent);opacity:.025}
.goals-cut-line{stroke:var(--accent-soft);stroke-width:1;stroke-dasharray:2 4;opacity:.45}
.goals-chart-legend{display:flex;align-items:center;gap:20px;margin:0 24px;padding:4px 0 21px;color:var(--grey);font-size:9px}
.goals-chart-legend>span{display:flex;align-items:center;gap:7px}
.goals-chart-legend i{display:inline-block;width:15px;height:2px;background:var(--accent-soft)}
.goals-chart-legend .goals-legend-planned{height:0;background:none;border-top:2px dashed var(--silver)}
.goals-cut-caption{margin-left:auto;font:8px JetBrains,monospace;letter-spacing:.05em;color:var(--muted)}
.goals-linear-note{margin:0 24px 23px;border-top:1px solid var(--line);padding-top:16px;color:var(--muted);font-size:10px;line-height:1.8}
.goals-linear-note strong{font-weight:500;color:var(--grey)}
.goals-chart-empty{padding:45px 20px;color:var(--grey);font-size:11px;text-align:center}
.goals-form-description{font-size:11px;line-height:1.8;margin:14px 24px 21px;color:var(--grey)}
.goals-form{padding:0 24px}
.goal-date-row{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.goal-field{margin-bottom:18px;min-width:0}
.goal-field>label{display:block;font-size:10px;font-weight:500;color:var(--silver);margin-bottom:8px}
.goal-input-wrap{position:relative;display:flex;align-items:center;min-width:0}
.goal-input-wrap input{background:var(--bg);border:1px solid var(--line2);border-radius:7px;color:var(--text);width:100%;max-width:100%;min-width:0;height:39px;padding:0 11px;font-size:12px;font-variant-numeric:tabular-nums}
.goal-input-wrap input::placeholder{color:var(--muted);font-size:11px}
.goal-input-wrap input[aria-invalid=true]{border-color:#e99b8b}
.goal-input-wrap input:focus{border-color:var(--accent-soft)}
.goal-input-prefix{position:absolute;left:11px;color:var(--muted);font-size:11px;pointer-events:none}
.goal-input-prefix+input{padding-left:36px}
.goal-field>small{display:block;font-size:9px;line-height:1.6;margin-top:5px;color:var(--muted)}
.goal-field-error{display:block;color:#e99b8b;font-size:10px;line-height:1.6;margin-top:3px}
html[data-theme=light] .goal-field-error{color:#a83825}
.goals-save-button{width:100%;justify-content:space-between}
.goals-feedback{font-size:10px;line-height:1.6;color:var(--accent-soft);min-height:16px;margin:9px 0 14px}
.goals-form-footnote{border-top:1px solid var(--line);padding:16px 24px 19px;color:var(--muted);font-size:9px;line-height:1.8}
.goal-summary-source{line-height:1.6;max-width:255px;overflow-wrap:anywhere}
.goals-source-line{color:var(--grey);font-size:10px;line-height:1.7;margin:-13px 0 21px}
.goals-source-line.is-stale{color:var(--accent-soft)}
.goals-local-tag.is-live{border-color:var(--accent-soft);color:var(--accent-soft)}
.goal-reference-rule{height:4px;border-top:1px dashed var(--line2);margin:21px 0 11px}
.goals-chart-gap-note{font-size:10px;line-height:1.7;color:var(--grey);padding:0 14px 17px}
.goals-form[aria-busy=true] input{opacity:.65;cursor:wait}
.goals-save-button:disabled{opacity:.55;cursor:default}
.goals-feedback.is-error{color:#e99b8b}
html[data-theme=light] .goals-feedback.is-error{color:#a83825}
@media(min-width:1500px){.goal-metric-bottom{flex-direction:row;align-items:center}.goal-summary{gap:35px}}
@media(max-width:1200px){.goal-summary{gap:18px;padding:19px}.goal-summary-stat{padding-left:18px}.goal-summary-intro{min-width:165px}.goal-summary-symbol{display:none}.goal-summary-intro .section-index{font-size:7px}.goal-summary-stat small{font-size:8px}.goal-summary-link{font-size:10px}.goals-workspace{grid-template-columns:minmax(0,1.45fr) minmax(280px,1fr);gap:16px}.goal-metric{padding:19px 16px}.goal-metric-label{font-size:8px}.goal-metric-value{font-size:28px}.goals-financial-stats{gap:10px;margin-left:20px;margin-right:20px}.goals-financial-stats>div>span{font-size:8px}.goals-financial-stats strong{font-size:19px}.goal-date-row{grid-template-columns:1fr;gap:0}.goal-date-row .goal-field{margin-bottom:15px}}
@media(max-width:1000px){.goal-summary{flex-wrap:wrap;gap:16px}.goal-summary-intro{flex:1 1 36%}.goal-summary-stat{flex:1 1 30%}.goal-summary-days{border-left:0;padding-left:0;flex:1}.goal-summary-link{margin-left:auto}.goals-workspace{grid-template-columns:1fr}.goals-form{display:grid;grid-template-columns:1fr 1fr;column-gap:20px}.goal-date-row{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:20px}.goals-save-button{align-self:end;margin-bottom:18px}.goals-feedback{grid-column:1/-1;margin:0 0 15px}.goals-financial-stats strong{font-size:25px}.goals-financial-stats>div>span{font-size:10px}}
@media(max-width:760px){.goal-metrics-grid{grid-template-columns:1fr 1fr;gap:11px}.goal-metric-value{font-size:33px}.goal-metric-label{font-size:9px}.goals-topline h2{font-size:23px}.goals-topline{align-items:flex-start}.goals-local-tag{font-size:9px}.goal-summary-intro{min-width:150px}.goal-summary-stat>strong{font-size:23px}}
@media(max-width:680px){.goal-summary{padding:18px;margin-bottom:21px;gap:17px}.goal-summary-intro{flex:1 1 calc(50% - 10px);min-width:0}.goal-summary-intro strong{font-size:21px}.goal-summary-intro .section-index{font-size:6.5px;letter-spacing:.035em}.goal-summary-intro small{font-size:8px}.goal-summary-stat{flex:1 1 calc(50% - 10px);padding-left:17px}.goal-summary-stat>strong{font-size:22px}.goal-summary-stat>span{font-size:9px}.goal-summary-days{padding-left:0;flex:1}.goal-summary-link{height:36px;font-size:9px;padding:0 11px;gap:10px}.goals-topline{gap:10px}.goals-topline h2{font-size:22px;max-width:260px}.goals-topline .section-index{font-size:8px}.goals-local-tag{padding:5px 8px;font-size:8px;gap:5px}.goals-context{font-size:10px;margin-bottom:18px}.goal-metric{padding:17px 15px}.goal-metric-label{font-size:8px;letter-spacing:.025em}.goal-metric-value{font-size:29px;margin-top:18px}.goal-metric:first-child .goal-metric-value{font-size:25px}.goal-card-dot{display:none}.goal-target{font-size:9px;min-height:27px;line-height:1.5}.goal-target strong{display:block}.goal-progress{margin-top:16px}.goal-metric-bottom{font-size:9px}.goal-metric-bottom small{font-size:8px}.goals-workspace{gap:17px}.goals-financial-stats{margin:24px 18px 0;gap:8px}.goals-financial-stats>div>span{font-size:8px;line-height:1.5;min-height:24px;margin-bottom:7px}.goals-financial-stats strong{font-size:19px;white-space:normal}.goals-pace-note{margin:12px 18px 0;font-size:9px}.goals-chart-wrap{padding-top:22px;padding-left:0;padding-right:0}.goals-axis-text{font-size:12px}.goals-axis-unit{font-size:10px}.goals-chart-legend{margin:0 18px;font-size:8px;gap:13px;padding-bottom:17px}.goals-cut-caption{font-size:7px}.goals-linear-note{margin:0 18px 18px;font-size:9px;padding-top:14px}.goals-form-description{margin:13px 18px 20px;font-size:10px}.goals-form{padding:0 18px;display:block}.goal-date-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.goal-field>label{font-size:10px}.goal-date-row label{font-size:9px}.goal-input-wrap input{font-size:12px}.goal-field>small{font-size:9px}.goals-save-button{margin-bottom:0;height:41px}.goals-feedback{margin:9px 0 15px}.goals-form-footnote{padding:15px 18px 18px;font-size:9px}.goals-data-note{font-size:10px;padding:12px 14px}}
@media(max-width:380px){.goal-metric{padding-left:12px;padding-right:12px}.goal-metric:first-child .goal-metric-value{font-size:23px}.goal-metric-value{font-size:27px}.goal-metric-label{font-size:7px}.goals-topline h2{font-size:20px}.goals-local-tag{display:none}.goals-financial-stats strong{font-size:16px}.goals-chart-legend{gap:10px}.goals-cut-caption{font-size:6px}.goal-date-row{grid-template-columns:1fr;gap:0}.goal-summary{padding:15px;gap:14px}.goal-summary-stat{padding-left:12px}.goal-summary-days{padding-left:0}.goal-summary-stat>strong{font-size:20px}.goal-summary-stat small{font-size:7px}.goal-summary-intro .section-index{font-size:6px}}
@media(prefers-reduced-motion:reduce){.goal-progress>span{transition:none}}

.goals-draft-notice{padding:11px;border:1px solid var(--line2);border-radius:6px;color:var(--silver);font-size:11px;line-height:1.7;margin-bottom:15px}.goals-draft-notice>div{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.goals-draft-notice button{color:var(--accent-soft);border:1px solid var(--line2);border-radius:4px;padding:6px;text-align:left}.goals-save-button:disabled{opacity:.6}
