.streak-panel{margin:0 0 20px;padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md)}
.streak-top,.streak-heading,.streak-goal,.streak-details summary,.summary-streak-line{display:flex;align-items:center;justify-content:space-between;gap:12px}
.streak-heading{justify-content:flex-start;min-width:0}.streak-heading h2{display:flex;align-items:center;gap:12px;margin:0;font:600 13px/1.5 var(--font-display)}
.streak-heading h2 strong{font:700 40px/1 var(--font-display);font-variant-numeric:tabular-nums;letter-spacing:-.03em;color:var(--accent)}
.streak-heading .streak-start{font-size:17px;line-height:1.35;text-wrap:balance}.streak-flame{display:flex;color:var(--ink-muted)}.streak-flame svg{width:40px;height:44px}.streak-flame.lit{color:var(--accent)}
.streak-share{width:44px;height:44px;flex:0 0 44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:var(--radius-sm);background:transparent;color:var(--ink-muted)}.streak-share svg{width:18px;height:18px}.streak-share:hover{color:var(--accent);background:var(--surface-2)}
.streak-message{margin:14px 0 18px;color:var(--ink-dim);font-size:12px;line-height:1.65;text-wrap:pretty}.streak-goal{font-size:12px}.streak-goal>span{display:flex;gap:6px;align-items:center;color:var(--ink-dim)}.streak-goal svg{width:16px;height:16px;color:var(--accent)}.streak-goal strong{font-size:15px;font-variant-numeric:tabular-nums;white-space:nowrap}.streak-goal strong span{font-size:12px;font-weight:500;color:var(--ink-muted)}
.streak-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;list-style:none;padding:0;margin:16px 0 18px;text-align:center}.streak-calendar li{display:grid;justify-items:center;gap:8px;font-size:10px;color:var(--ink-muted)}.streak-calendar b{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--line);border-radius:50%;font-size:12px;font-weight:600;font-variant-numeric:tabular-nums}.streak-calendar svg{width:17px;height:17px}.streak-calendar .trained b{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.streak-calendar .today b{outline:1px solid var(--accent);outline-offset:3px}.streak-calendar .today>span{font-weight:800;color:var(--ink)}.streak-calendar .future b{border-style:dashed}.streak-calendar .trained>span{color:var(--ink-dim)}
.streak-meter{height:6px;overflow:hidden;background:var(--surface-3);border-radius:6px;margin:12px 0 16px}.streak-meter i{display:block;height:100%;background:var(--accent);border-radius:inherit}
.streak-details{border-top:1px solid var(--line-soft)}.streak-details summary{list-style:none;cursor:pointer;min-height:44px;margin-bottom:-6px;font-size:11px;color:var(--ink-muted);gap:8px}.streak-details summary::-webkit-details-marker{display:none}.streak-details summary>span{display:flex;align-items:center;gap:6px}.streak-details summary>span:last-child{color:var(--accent)}.streak-details summary svg{width:15px;height:15px;flex-shrink:0}.streak-details[open] summary>span:last-child>svg{transform:rotate(90deg)}
.streak-next{font-size:12px;color:var(--ink-dim);line-height:1.6;margin:20px 0 12px}.streak-next strong{color:var(--ink)}.streak-achievements{list-style:none;padding:0;margin:0}.streak-achievements li{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line-soft);color:var(--ink-muted)}.streak-achievements li>svg{width:24px;height:24px;flex-shrink:0}.streak-achievements li>svg:last-child{width:16px;margin-left:auto}.streak-achievements .earned>svg{color:var(--accent)}.streak-achievements strong,.streak-achievements span{display:block}.streak-achievements strong{font-size:12px;font-weight:600;color:var(--ink-dim)}.streak-achievements span{font-size:11px;margin-top:3px}
.streak-rules{display:flex;align-items:flex-start;gap:8px;margin-top:18px}.streak-rules>svg{width:18px;height:18px;flex:0 0 18px;color:var(--accent);margin-top:2px}.streak-rules p,.streak-footnote{font-size:11px;line-height:1.7;color:var(--ink-muted);margin:0}.streak-footnote{margin-top:10px}
.workout-streak-note{display:flex;align-items:center;gap:10px;margin:0 0 22px;padding:12px 0;border-bottom:1px solid var(--line);color:var(--ink-dim);font-size:12px;line-height:1.5}.workout-streak-note svg{width:22px;height:22px;flex-shrink:0;color:var(--accent)}
.summary.summary-with-streak{width:min(100%,520px);margin:auto;padding:32px 20px;min-height:100%;text-align:center}.summary-with-streak .success-mark{width:68px;height:68px;border-radius:22px;margin-bottom:24px;box-shadow:none}.summary-with-streak .success-mark svg{width:36px;height:36px}.summary-with-streak h1{font-size:26px;line-height:1.2;text-wrap:balance}.summary-with-streak>p{font-size:13px;line-height:1.6;max-width:40ch;margin:0 auto 22px}.summary-consistency{margin-bottom:20px;text-align:left;padding:16px;border:1px solid var(--line);border-radius:var(--radius-md)}.summary-streak-line{gap:8px;flex-wrap:wrap}.summary-streak-line>svg{color:var(--accent);width:24px;height:24px}.summary-streak-line strong{flex:1;font-size:12px;font-weight:700;line-height:1.5}.summary-streak-line>span{font-size:11px;white-space:nowrap;color:var(--ink-muted)}.summary-consistency .streak-calendar{margin-bottom:0}.summary-unlock{display:flex;align-items:center;justify-content:center;gap:7px;font-size:11px;font-weight:700;color:var(--accent);line-height:1.5;margin:18px 0 0}.summary-unlock svg{width:18px;height:18px;flex-shrink:0}.summary-with-streak .pr-badge{display:flex;align-items:center;justify-content:center;gap:7px}.summary-with-streak .pr-badge svg{width:18px;height:18px}
.streak-share:focus-visible,.streak-details summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.streak-panel ::selection,.summary-with-streak ::selection{background:var(--accent);color:var(--accent-ink)}
.builder-weekly-goal{display:grid;grid-template-columns:minmax(0,1fr) 220px;align-items:center;gap:12px 24px;padding:20px;margin-bottom:24px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface)}.builder-weekly-goal label{font:600 15px var(--font-display);color:var(--ink)}.builder-weekly-goal p{margin:6px 0 0;font-size:12px;line-height:1.6;color:var(--ink-dim)}.builder-weekly-goal small{grid-column:1/-1;font-size:11px;line-height:1.6;color:var(--ink-muted)}.builder-weekly-goal select{font-size:13px}
@media(max-width:600px){.builder-weekly-goal{grid-template-columns:1fr;padding:16px}.builder-weekly-goal select{width:100%}}
@keyframes streak-celebrate{0%{transform:scale(.86) rotate(-8deg)}65%{transform:scale(1.06) rotate(3deg)}100%{transform:scale(1) rotate(0)}}
@media(prefers-reduced-motion:no-preference){.summary-with-streak .success-mark{animation:streak-celebrate .65s cubic-bezier(.16,1,.3,1)}}
@media(max-width:359px){.streak-panel{padding:16px}.streak-details summary{font-size:10px}.streak-heading .streak-start{font-size:15px}.streak-calendar b{width:28px;height:28px}.summary-consistency{padding:12px}.summary-streak-line>span{margin-left:32px}}
:root{--streak-gold:#E6B65A;--streak-blue:#77D5F5;--streak-cardio:#77D5F5}
@media(prefers-color-scheme:light){:root{--streak-gold:#936018;--streak-blue:#146383;--streak-cardio:#146383}}
.streak-tracks{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:20px 0}.streak-track{min-width:0}.streak-track .streak-goal{display:block}.streak-track .streak-goal>span{color:var(--ink-dim);font-size:12px;margin-bottom:8px}.streak-track strong{display:block;font:700 26px var(--font-display);color:var(--ink)}.streak-track strong span{margin-left:3px}.streak-track small{font-size:10px;color:var(--ink-muted);line-height:1.5;display:block}.streak-track .streak-meter{margin:10px 0 7px;height:4px}.streak-track.strength .streak-meter i{background:var(--streak-gold)}.streak-track.cardio .streak-meter i{background:var(--streak-cardio)}.streak-track.cardio .streak-goal svg{color:var(--streak-cardio)}
.double-active .streak-flame.lit,.double-active .streak-heading h2 strong,.double-active .summary-streak-line>svg{color:var(--streak-blue)}.double-active .success-mark{color:var(--streak-blue);background:var(--surface-2)}
.double-streak-status{display:flex;align-items:center;gap:8px;margin:16px 0 0;color:var(--ink-muted);font-size:11px;line-height:1.5}.double-streak-status svg{width:16px;height:16px;flex-shrink:0}.double-streak-status.unlocked{color:var(--streak-blue);font-weight:700}
.streak-calendar .both b{background:var(--streak-blue);border-color:var(--streak-blue);color:var(--bg)}.streak-calendar .cardio-day b{background:transparent;border-color:var(--streak-cardio);color:var(--streak-cardio)}
.cardio-entry{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:4px 0 22px;margin-bottom:16px;border-bottom:1px solid var(--line)}.cardio-entry strong{font-size:13px}.cardio-entry p{font-size:11px;line-height:1.6;color:var(--ink-muted);margin:6px 0 0}.cardio-entry button{white-space:nowrap;font-size:11px;flex-shrink:0}.cardio-entry svg{width:16px;height:16px}.cardio-field{display:grid;gap:9px;margin:20px 0;font-size:13px}.cardio-field .input{width:100%}#cardio-error{font-size:12px;color:var(--danger)}
.dual-goal-editor{grid-template-columns:1fr 1fr}.dual-goal-editor>div,.dual-goal-editor small{grid-column:1/-1}.dual-goal-editor h2{font:600 17px var(--font-display);margin:0}.dual-goal-editor>label{font-size:13px;display:grid;gap:8px}.builder-activity-type{margin:12px 0}.builder-activity-type label{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:12px;color:var(--ink-dim)}.builder-activity-type select{max-width:240px}
.dual-week-bars{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:9px;padding-top:30px}.dual-week>div{display:flex;align-items:flex-end;justify-content:center;gap:4px;height:100px;border-bottom:1px solid var(--line)}.dual-week i{position:relative;display:block;width:11px;border-radius:3px 3px 0 0;background:var(--streak-gold);font-style:normal}.dual-week i.cardio{background:var(--streak-cardio)}.dual-week i span{position:absolute;top:-20px;left:50%;transform:translateX(-50%);font-size:9px;color:var(--ink-muted)}.dual-week small{display:block;text-align:center;font-size:8px;color:var(--ink-muted);margin-top:8px}.dual-chart-legend{display:flex;gap:18px;font-size:10px;margin-top:18px;color:var(--ink-dim)}.dual-chart-legend span:before{content:'';display:inline-block;width:8px;height:8px;border-radius:2px;background:var(--streak-gold);margin-right:6px}.dual-chart-legend span+span:before{background:var(--streak-cardio)}
.share-sheet-card{background:var(--surface);backdrop-filter:none}.share-preview{padding:40px 0 0;border-radius:12px;background:var(--surface-2);min-height:0}.share-preview>span{background:transparent;color:var(--ink-muted);padding:0;font-size:10px;backdrop-filter:none}.share-sheet-card canvas{filter:none}.share-note{font-size:12px;line-height:1.55}.share-sheet-card .close-btn svg{width:20px;height:20px}.share-actions button{min-height:44px}.share-sheet-card .card-row{align-items:flex-start}
@media(max-width:359px){.cardio-entry{align-items:flex-start;flex-direction:column}.cardio-entry button{width:100%}.streak-tracks{gap:12px}.dual-goal-editor{grid-template-columns:1fr}.builder-activity-type select{max-width:180px}}
@media(max-width:600px){.dual-goal-editor{grid-template-columns:1fr}.dual-goal-editor select{width:100%}}
[data-theme="halloween"]{--streak-gold:#FF9B50;--streak-cardio:#C3A1EF;--streak-blue:#77D5F5}
.builder-reorder button svg{width:18px;height:18px}
.dual-week i.legacy{background:var(--ink-muted)}.dual-chart-legend{flex-wrap:wrap;gap:10px 16px}.dual-chart-legend span.legacy:before{background:var(--ink-muted)}.with-legacy .dual-week>div{gap:2px}.with-legacy .dual-week i{width:8px}
.chart-large.dual-chart-container{height:auto;min-height:180px}

.share-appearance{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 8px}.share-appearance>span{font-size:12px;font-weight:600;color:var(--ink-dim)}.share-appearance-options{display:flex;gap:4px;padding:3px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.share-appearance-options button{display:flex;align-items:center;justify-content:center;gap:7px;min-width:76px;min-height:44px;padding:0 10px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--ink-muted);font:600 12px var(--font-body);cursor:pointer}.share-appearance-options button[aria-pressed="true"]{background:var(--surface);border-color:var(--accent);color:var(--ink)}.share-appearance-options button:hover{color:var(--ink)}.share-appearance-options button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.share-glass-swatch{width:14px;height:18px;flex-shrink:0;border-radius:5px;border:1px solid rgba(255,255,255,.6)}.share-glass-swatch.light{background:#EADAF6}.share-glass-swatch.dark{background:#503367}.share-render-status{min-height:1.5em;margin:0 0 12px;color:var(--ink-muted);font-size:11px;line-height:1.5}.share-preview[aria-busy="true"] canvas{opacity:.65}.share-actions button:disabled{opacity:.5;cursor:wait}
