*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;background-color:#1a1a1a;color:#fff;min-height:100vh;display:flex;justify-content:center;align-items:center}#root{width:100%;max-width:600px;padding:20px;height:100vh;display:flex;flex-direction:column}h1,h2{text-align:center;margin-bottom:20px}h1{font-size:2rem;margin-bottom:30px}h2{font-size:1.5rem}.config-screen,.history-screen{width:100%}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:500}.form-group input[type=number],.form-group select{width:100%;padding:12px;background-color:#2a2a2a;border:1px solid #444;border-radius:4px;color:#fff;font-size:1rem}.form-group input[type=checkbox]{margin-right:8px;width:20px;height:20px;cursor:pointer}.btn-primary,.btn-secondary{width:100%;padding:16px;font-size:1.1rem;font-weight:600;border:none;border-radius:4px;cursor:pointer;margin-bottom:12px;min-height:44px;transition:opacity .2s}.btn-primary{background-color:#4a9eff;color:#fff}.btn-primary:hover{opacity:.9}.btn-primary:active{opacity:.8}.btn-secondary{background-color:#3a3a3a;color:#fff}.btn-secondary:hover{background-color:#4a4a4a}.btn-disabled{opacity:.6;cursor:not-allowed}.breathing-view,.breathing-view-full,.hold-view,.recovery-view,.round-summary,.session-complete{text-align:center;width:100%}.breathing-view-full{display:flex;align-items:center;justify-content:center;height:calc(100vh - 40px);min-height:0}.breathing-indicator-full{width:100%}.training-view{display:flex;flex-direction:column;flex:1;width:100%;min-height:0}.training-top{flex:1;display:flex;align-items:center;justify-content:center;border-bottom:2px solid #444;min-height:50%}.training-bottom{flex:1;display:flex;align-items:center;justify-content:center;min-height:50%}.breathing-indicator{text-align:center;width:100%}.pacing-indicator-large{font-size:3rem;font-weight:700;color:#4a9eff;margin-bottom:20px}.contraction-placeholder{text-align:center;width:100%;padding:20px}.placeholder-text{font-size:1.5rem;color:#888}.hold-area{text-align:center;width:100%;padding:20px}.hold-message{text-align:center;width:100%}.hold-message-text{font-size:1.5rem;color:#4a9eff;margin-bottom:30px}.contraction-complete-message{font-size:1.3rem;color:#888;margin-bottom:30px;padding:20px}.contraction-info{width:100%;margin-bottom:30px}.previous-contraction-time{text-align:center;padding:20px}.previous-contraction-label{font-size:1.2rem;color:#888;margin-bottom:10px}.previous-contraction-value{font-size:2.5rem;font-weight:700;color:#4a9eff;font-variant-numeric:tabular-nums}.holds-list{margin-top:12px;display:flex;flex-direction:column;gap:8px}.hold-result-row{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background-color:#2a2a2a;border-radius:4px;font-size:.9rem}.hold-result-round{font-weight:600}.hold-result-times{display:flex;flex-direction:column;align-items:flex-end;gap:2px;font-variant-numeric:tabular-nums}.btn-large{font-size:1.5rem;padding:24px;min-height:60px}.breath-count{font-size:2.5rem;font-weight:700;margin:40px 0}.pacing-indicator{font-size:1.5rem;margin:20px 0;color:#4a9eff}.timer-large{font-size:4rem;font-weight:700;margin:40px 0;font-variant-numeric:tabular-nums}.hold-buttons{display:flex;flex-direction:column;gap:12px;margin-top:40px}.recovery-countdown{font-size:3rem;font-weight:700;margin:40px 0;font-variant-numeric:tabular-nums}.recovery-breaths{font-size:1.2rem;margin:20px 0}.summary-stats{font-size:1.2rem;margin:30px 0;line-height:2}.recovery-starting{margin-top:30px;color:#888}.session-actions{display:flex;flex-direction:column;gap:12px;margin-top:30px}.sessions-list{margin-top:20px}.session-item{background-color:#2a2a2a;border-radius:4px;margin-bottom:12px;overflow:hidden}.session-header{padding:16px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;flex-wrap:wrap;gap:12px}.session-info{display:flex;gap:16px;flex-wrap:wrap}.session-date,.session-phase,.session-rounds{font-weight:500}.session-avg{color:#4a9eff;font-size:.9rem}.session-toggle{font-size:1.2rem;color:#888}.session-details{padding:16px;background-color:#1f1f1f;border-top:1px solid #444}.round-detail{margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid #333}.round-detail:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.round-detail h3{margin-bottom:12px;font-size:1.2rem}.round-stats{display:flex;flex-direction:column;gap:8px;font-size:.95rem;color:#ccc}@media (max-width: 480px){#root{padding:12px}h1{font-size:1.5rem}.timer-large{font-size:3rem}.breath-count{font-size:2rem}.recovery-countdown{font-size:2.5rem}.training-view{height:calc(100vh - 24px)}.pacing-indicator-large{font-size:2.5rem}.timer-large{font-size:2.5rem;margin:20px 0}}
