.fw-dashboard .goals-topbar,.fw-dashboard .goals-controls{justify-content:space-between;align-items:center;gap:calc(var(--spacing-unit) * 2);margin-bottom:calc(var(--spacing-unit) * 3);flex-wrap:wrap;display:flex}.fw-dashboard .back-link{color:var(--color-text-tertiary);align-items:center;gap:6px;font-size:.875rem;font-weight:500;text-decoration:none;display:inline-flex}.fw-dashboard .back-link:hover{color:var(--color-text-primary)}.fw-dashboard .primary-action{border-radius:var(--r-ctrl);background:var(--grad-accent);color:var(--on-grad);font-family:var(--font-display-stack);cursor:pointer;border:none;align-items:center;gap:8px;padding:9px 18px;font-size:.875rem;font-weight:700;text-decoration:none;transition:filter .15s,box-shadow .15s;display:inline-flex}.fw-dashboard .primary-action:hover{filter:brightness(1.06);box-shadow:var(--glow-cyan)}.fw-dashboard .secondary-action{border-radius:var(--r-ctrl);border:1px solid var(--color-border);background:var(--glass-2);color:var(--color-text-secondary);cursor:pointer;align-items:center;gap:8px;padding:9px 18px;font-family:inherit;font-size:.875rem;font-weight:500;text-decoration:none;display:inline-flex}.fw-dashboard .secondary-action:hover{border-color:var(--border-hover);color:var(--color-text-primary)}.fw-dashboard .year-switch{border:1px solid var(--color-border);border-radius:var(--r-pill);background:var(--glass-2);padding:4px;font-size:.875rem;display:inline-flex}.fw-dashboard .year-switch a{border-radius:var(--r-pill);color:var(--color-text-secondary);padding:4px 16px;text-decoration:none}.fw-dashboard .year-switch a.active{background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--accent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 28%, transparent);font-weight:600}.fw-dashboard .area-section{gap:calc(var(--spacing-unit) * 2);display:grid}.fw-dashboard .area-heading{justify-content:space-between;align-items:baseline;gap:var(--spacing-unit);border-bottom:1px solid var(--color-border);padding-bottom:var(--spacing-unit);display:flex}.fw-dashboard .area-heading h2{margin-bottom:0}.fw-dashboard .area-heading .area-count{color:var(--color-text-tertiary);font-size:.8rem;font-family:var(--font-display)}.fw-dashboard .area-empty{color:var(--color-text-tertiary);padding:calc(var(--spacing-unit) * 2);border:1px dashed var(--color-border);border-radius:var(--r-ctrl);background:var(--glass-2);font-size:.9rem;font-style:italic}.fw-dashboard .aspiration-grid{gap:calc(var(--spacing-unit) * 3);grid-template-columns:repeat(auto-fit,minmax(360px,1fr));display:grid}.fw-dashboard .aspiration-card{gap:calc(var(--spacing-unit) * 2);flex-direction:column;display:flex}.fw-dashboard .aspiration-head{justify-content:space-between;align-items:flex-start;gap:var(--spacing-unit);display:flex}.fw-dashboard .aspiration-title{color:var(--color-text-primary);font-size:1.05rem;font-weight:600;line-height:1.3}.fw-dashboard .aspiration-why{color:var(--color-text-tertiary);margin:0;font-size:.9rem;font-style:italic}.fw-dashboard .chip-row{align-items:center;gap:var(--spacing-unit);flex-wrap:wrap;display:flex}.fw-dashboard .owner-chip{color:var(--color-text-secondary);background:var(--glass-2);border:1px solid var(--color-border);border-radius:var(--r-pill);white-space:nowrap;padding:2px 10px;font-size:.75rem;font-weight:600}.fw-dashboard .shared-chip{text-transform:uppercase;letter-spacing:.4px;color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent);border:1px solid color-mix(in srgb, var(--accent) 28%, transparent);border-radius:var(--r-pill);white-space:nowrap;padding:2px 10px;font-size:.7rem;font-weight:600}.fw-dashboard .status-pill{border-radius:var(--r-pill);white-space:nowrap;border:1px solid #0000;align-items:center;gap:5px;padding:3px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.fw-dashboard .status-pill:before{content:"";background-color:currentColor;border-radius:50%;width:7px;height:7px}.fw-dashboard .status-pill.done:before{content:"✓";background:0 0;border-radius:0;width:auto;height:auto;font-size:.8rem;line-height:1}.fw-dashboard .status-on-track{color:var(--color-positive);background:#34d3991f;border-color:#34d3994d}.fw-dashboard .status-at-risk{color:var(--color-warning);background:#f59e0b1f;border-color:#f59e0b4d}.fw-dashboard .status-off-track{color:var(--color-negative);background:#f43f5e1f;border-color:#f43f5e4d}.fw-dashboard .status-done{color:var(--color-info);background:#60a5fa1f;border-color:#60a5fa4d}.fw-dashboard .status-parked{color:var(--color-text-tertiary);background:var(--glass-2);border-color:var(--color-border)}.fw-dashboard .measure-block{flex-direction:column;gap:6px;display:flex}.fw-dashboard .measure-line{justify-content:space-between;align-items:baseline;gap:var(--spacing-unit);display:flex}.fw-dashboard .measure-value{font-family:var(--font-display);color:var(--color-text-primary);font-variant-numeric:tabular-nums;font-size:.9rem;font-weight:600}.fw-dashboard .measure-pct{color:var(--color-text-tertiary);font-size:.8rem;font-family:var(--font-display);font-variant-numeric:tabular-nums}.fw-dashboard .measure-bar{background:var(--track);border-radius:3px;width:100%;height:6px;overflow:hidden}.fw-dashboard .measure-bar-fill{background:var(--grad-accent);border-radius:3px;height:100%}.fw-dashboard .sub-heading{text-transform:uppercase;letter-spacing:.6px;color:var(--color-text-tertiary);margin-bottom:4px;font-size:.72rem;font-weight:600}.fw-dashboard .milestone-list{flex-direction:column;gap:6px;list-style:none;display:flex}.fw-dashboard .milestone-item{align-items:flex-start;gap:var(--spacing-unit);color:var(--color-text-secondary);font-size:.875rem;display:flex}.fw-dashboard .milestone-check{border:1.5px solid var(--color-border);color:#0000;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;margin-top:2px;font-size:11px;line-height:1;display:inline-flex}.fw-dashboard .milestone-item.is-done .milestone-check{background-color:var(--color-positive);border-color:var(--color-positive);color:#05131a}.fw-dashboard .milestone-item.is-done .milestone-text{color:var(--color-text-tertiary);text-decoration:line-through}.fw-dashboard .milestone-due{color:var(--color-text-tertiary);white-space:nowrap;padding-left:var(--spacing-unit);margin-left:auto;font-size:.8rem}.fw-dashboard .checkin-log{gap:var(--spacing-unit);flex-direction:column;list-style:none;display:flex}.fw-dashboard .checkin-item{border-left:2px solid var(--color-border);padding-left:calc(var(--spacing-unit) * 1.5)}.fw-dashboard .checkin-meta{align-items:center;gap:var(--spacing-unit);margin-bottom:2px;display:flex}.fw-dashboard .checkin-date{color:var(--color-text-tertiary);font-size:.75rem;font-weight:600;font-family:var(--font-display)}.fw-dashboard .checkin-note{color:var(--color-text-secondary);margin:0;font-size:.875rem}.fw-dashboard .checkin-empty{color:var(--color-text-tertiary);font-size:.85rem;font-style:italic}.fw-dashboard .checkin-form{margin-top:calc(var(--spacing-unit) * 1)}.fw-dashboard details.add-checkin>summary{cursor:pointer;color:var(--color-text-tertiary);align-items:center;gap:4px;font-size:.8rem;font-weight:500;list-style:none;display:inline-flex}.fw-dashboard details.add-checkin>summary::-webkit-details-marker{display:none}.fw-dashboard details.add-checkin>summary svg{stroke:currentColor;stroke-width:2px;fill:none;flex-shrink:0;width:12px;height:12px}.fw-dashboard details.add-checkin>summary:hover{color:var(--color-text-primary)}.fw-dashboard details.add-checkin[open]>summary{color:var(--color-text-primary);margin-bottom:var(--spacing-unit)}.fw-dashboard .form-grid{gap:var(--spacing-unit);padding:calc(var(--spacing-unit) * 2);background:var(--glass-2);border:1px solid var(--color-border);border-radius:var(--r-ctrl);display:grid}.fw-dashboard .form-row{gap:var(--spacing-unit);flex-wrap:wrap;display:flex}.fw-dashboard .field{flex-direction:column;flex:140px;gap:3px;display:flex}.fw-dashboard .field label{text-transform:uppercase;letter-spacing:.4px;color:var(--color-text-tertiary);font-size:.72rem;font-weight:600}.fw-dashboard .goals-input,.fw-dashboard .goals-select,.fw-dashboard .goals-textarea{color:var(--color-text-primary);background:var(--field-bg);border:1px solid var(--color-border);border-radius:8px;width:100%;padding:8px 10px;font-family:inherit;font-size:.9rem}.fw-dashboard .goals-select option{background:var(--option-bg);color:var(--text)}.fw-dashboard .goals-textarea{resize:vertical;min-height:60px}.fw-dashboard .goals-input:focus,.fw-dashboard .goals-select:focus,.fw-dashboard .goals-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 20%, transparent);outline:none}.fw-dashboard .form-actions{justify-content:flex-end;display:flex}.fw-dashboard .goals-button{border-radius:var(--r-ctrl);background:var(--grad-accent);color:var(--on-grad);font-family:var(--font-display-stack);cursor:pointer;border:none;align-items:center;gap:6px;padding:8px 18px;font-size:.85rem;font-weight:700;transition:filter .15s,box-shadow .15s;display:inline-flex}.fw-dashboard .goals-button:hover{filter:brightness(1.06);box-shadow:var(--glow-cyan)}.fw-dashboard .review-intro{color:var(--color-text-secondary)}.fw-dashboard .review-area-title{text-transform:uppercase;letter-spacing:.6px;color:var(--accent);margin:calc(var(--spacing-unit) * 2) 0 var(--spacing-unit);font-size:.9rem;font-weight:700}.fw-dashboard .review-item{border:1px solid var(--color-border);border-radius:var(--r-ctrl);padding:calc(var(--spacing-unit) * 2);gap:var(--spacing-unit);margin-bottom:calc(var(--spacing-unit) * 2);background:var(--glass-2);display:grid}.fw-dashboard .review-item-head{justify-content:space-between;align-items:baseline;gap:var(--spacing-unit);display:flex}.fw-dashboard .since-badge{color:var(--color-text-secondary);background:var(--glass-2);border:1px solid var(--color-border);border-radius:var(--r-pill);align-items:center;gap:5px;padding:2px 10px;font-size:.78rem;display:inline-flex}.fw-dashboard .since-arrow{font-size:.85rem;font-weight:700}.fw-dashboard .since-up{color:var(--color-positive)}.fw-dashboard .since-down{color:var(--color-negative)}.fw-dashboard .since-same{color:var(--color-text-tertiary)}.fw-dashboard .since-new{color:var(--color-info)}.fw-dashboard .since-parked{color:var(--parked)}.fw-dashboard .review-summary-field{margin-top:calc(var(--spacing-unit) * 2)}.fw-dashboard .review-confirm{border-radius:var(--r-card);padding:calc(var(--spacing-unit) * 2) calc(var(--spacing-unit) * 3);background:#34d39914;border:1px solid #34d39959}.fw-dashboard .review-confirm h2{color:var(--color-positive);margin-bottom:4px}.fw-dashboard .review-record{gap:6px;display:grid}.fw-dashboard .review-record .data-list li{justify-content:space-between;gap:var(--spacing-unit);border-bottom:1px solid var(--border-soft);padding:6px 0;display:flex}.fw-dashboard .bench-grid{gap:calc(var(--spacing-unit) * 3);grid-template-columns:repeat(auto-fit,minmax(320px,1fr));display:grid}.fw-dashboard .bench-card h3{margin-bottom:4px}.fw-dashboard .bench-note{color:var(--color-text-tertiary);margin-bottom:calc(var(--spacing-unit) * 2);font-size:.85rem}.fw-dashboard .bench-legend{gap:calc(var(--spacing-unit) * 2);margin-top:var(--spacing-unit);flex-wrap:wrap;display:flex}.fw-dashboard .bench-empty{color:var(--color-text-tertiary);font-size:.9rem;font-style:italic}.fw-dashboard .bench-bar-on-track{fill:var(--color-positive)}.fw-dashboard .bench-bar-at-risk{fill:var(--color-warning)}.fw-dashboard .bench-bar-off-track{fill:var(--color-negative)}.fw-dashboard .bench-bar-done{fill:var(--color-info)}.fw-dashboard .bench-bar-parked{fill:var(--parked)}.fw-dashboard .bench-bar-milestone{fill:var(--accent)}.fw-dashboard .bench-bar-label{font-family:var(--font-sans);fill:var(--color-text-tertiary);font-size:11px}
