/* Natural photo proportions define the card height, including mixed batches. */
:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-family:var(--font-sans)}
h1,h2{font-family:var(--font-sans);font-weight:600;letter-spacing:-1px}h1{font-size:34px}.brand-icon{font-style:normal;font-weight:700;padding-bottom:2px}.topbar>span,.workspace-footer>span:last-child{font-family:var(--font-sans);font-style:normal}.case-metric strong{font-family:var(--font-sans);font-weight:600;font-size:25px}.empty h3{font-family:var(--font-sans);font-weight:600}.presentation-stage-content h2{font-weight:600}.page-intro p{font-size:13px}.eyebrow{letter-spacing:1.3px}.patient-caption{color:#7a8872;font-size:11px}
.export-landscape-note{display:flex;align-items:center;gap:10px;background:#edf3e6;border-radius:8px;padding:12px 14px;color:#496841;font-size:11px;line-height:1.6}.export-landscape-note span{font-size:23px}.density-description{font-size:10px;color:#8a967e;margin-top:-8px;line-height:1.6}
.timeline{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));align-items:start}
.record-visual{height:auto;min-height:140px;max-height:480px}
.record-visual img{width:100%;height:auto;max-height:480px;object-fit:contain}
.backup-button{display:block;margin-bottom:12px}
.zoom-button{display:block;margin:12px 0 6px auto;font-size:11px}.zoom-dialog{width:1100px}.zoom-dialog .dialog-description{margin:12px 0 18px}#zoom-viewport{height:60dvh;overflow:auto;background:#eeede7;border-radius:8px}#zoom-image{display:block;height:auto;max-width:none;margin:0 auto}.zoom-control{display:flex;align-items:center;gap:15px;font-size:11px;margin-top:18px}.zoom-control input{padding:0;margin:0;accent-color:var(--green)}.zoom-control output{min-width:40px}.presentation-stage-content img{cursor:zoom-in}
.mobile-backups{display:none}
#export-form>label>select{display:block;width:100%;margin-top:9px;background:#fff;border:1px solid #dce2d3;border-radius:6px;padding:12px;color:#354d2e;font-size:12px}
.export-format{display:flex;flex-direction:column;gap:10px;margin:22px 0}
.export-format label{display:flex;gap:13px;padding:15px;background:#fff;border:1px solid var(--line);border-radius:8px;align-items:flex-start;cursor:pointer}
.export-format label:has(input:checked){border-color:#8fa681;background:#f0f5e9}
.export-format input,.checkbox-label input{width:15px;height:15px;accent-color:var(--green);margin:0;flex-shrink:0}
.export-format strong{font-size:12px;font-weight:600;display:block;margin-bottom:5px}.export-format small{font-size:10px;color:#89947e;line-height:1.6;display:block}
#export-form .checkbox-label{display:flex;align-items:center;gap:10px;font-weight:400;line-height:1.5}
.export-tip{font-size:10px;color:#8b9681;line-height:1.7;border-top:1px solid var(--line);padding-top:16px;margin-top:22px}
.presentation-stage-content .compare-pair .compare-photo{height:calc(100dvh - 350px);min-height:150px}.presentation-stage-content .compare-pair .compare-caption{max-height:150px;overflow:auto;text-align:left}.presentation-stage-content .compare-pair img{border-radius:0;min-height:0}.presentation-stage-content .compare-pair p{max-height:none}
@media(max-width:900px){.mobile-backups{display:flex;justify-content:center;gap:20px;margin-top:22px;padding-bottom:10px}.timeline{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}}
@media(max-width:650px){.timeline{grid-template-columns:1fr}.record-visual{height:auto;max-height:580px}.record-visual img{max-height:580px;height:auto}.record-visual .day-pill{font-size:10px}.presentation-stage-content .compare-pair .compare-caption{padding:9px;max-height:135px}.presentation-stage-content .compare-pair .compare-caption strong{font-size:10px}.presentation-stage-content .compare-pair .compare-caption p{font-size:10px}.presentation-stage-content .compare-pair .compare-photo{height:calc(100dvh - 350px)}}
