*{box-sizing:border-box}html{scrollbar-gutter:stable;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}.timeline-tools-label{margin-top:28px}.timeline-section-header{margin-top:36px}.timeline-section-header .eyebrow{margin-bottom:6px}.timeline-section-header h2{margin:0;font-size:24px}.timeline-section-header+.timeline-list{margin-top:16px}.timeline-card-procedure-day{border-left:4px solid #176b87}:root{--presteps-teal:#00545b;--presteps-ink:#0a1b24;--presteps-muted:#52666e;--presteps-mint:#eaf7f3;--presteps-lime:#c4fa7a;--presteps-line:#b5ceca}#root{min-height:100vh}.app{min-height:100vh;color:var(--presteps-ink);background:#fff;flex-direction:column;display:flex}.app-header{background:#fff;border-bottom:1px solid #e7eaee;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.clinic-placeholder{font-size:1.125rem;font-weight:700}.language-button{cursor:pointer;background:#fff;border:1px solid #d5dbe1;border-radius:8px;padding:8px 12px;font-weight:600}.app-content{width:min(100% - 40px,520px);margin:auto;padding:48px 0}.eyebrow{letter-spacing:.12em;color:var(--presteps-muted);margin-bottom:10px;font-size:.875rem;font-weight:700}h1{margin:0;font-size:2.375rem;line-height:1.15}.subtitle{color:var(--presteps-muted);margin-top:18px;font-size:1.125rem;line-height:1.6}.info-card{background:#fff;border:1px solid #e4e8ec;border-radius:14px;flex-direction:column;gap:6px;margin-top:32px;padding:20px;display:flex}.info-label{color:var(--presteps-muted);font-size:.875rem}.primary-button{background:var(--presteps-teal);color:#fff;cursor:pointer;border:0;border-radius:12px;width:100%;margin-top:28px;padding:16px 20px;font-size:1.0625rem;font-weight:700}.primary-button:hover{opacity:.92}.app-footer{text-align:center;color:var(--presteps-muted);padding:20px;font-size:.875rem}.back-button{color:var(--presteps-teal);cursor:pointer;background:0 0;border:0;margin-bottom:28px;padding:0;font-weight:600}.form-card{background:#fff;border:1px solid #e4e8ec;border-radius:14px;flex-direction:column;gap:24px;margin-top:32px;padding:24px;display:flex}.form-field{flex-direction:column;gap:8px;min-width:0;display:flex}.form-field span{color:var(--presteps-muted);font-size:.875rem;font-weight:600}.form-field input{box-sizing:border-box;appearance:none;width:100%;min-width:0;max-width:100%;color:var(--presteps-ink);background:#fff;border:1px solid #d5dbe1;border-radius:10px;height:3.25rem;padding:14px;font-size:1rem;display:block}.primary-button:disabled{cursor:not-allowed;opacity:.45}.privacy-note{text-align:center;color:var(--presteps-muted);margin-top:16px;font-size:.875rem}.procedure-summary{background:#fff;border:1px solid #e4e8ec;border-radius:14px;flex-direction:column;gap:5px;margin-top:28px;padding:20px;display:flex}.procedure-summary span{color:var(--presteps-muted);font-size:.875rem}.procedure-summary strong{font-size:1.125rem}.timeline-list{flex-direction:column;gap:18px;margin-top:28px;display:flex}.timeline-card{background:#fff;border:1px solid #e4e8ec;border-radius:14px;gap:16px;padding:22px;display:flex;position:relative}.timeline-marker{background:var(--presteps-teal);border-radius:50%;flex-shrink:0;width:12px;height:12px;margin-top:6px}.timeline-card-content{flex:1}.timeline-date{color:var(--presteps-teal);margin-bottom:6px;font-size:.875rem;font-weight:700;display:block}.timeline-card h2{margin:0;font-size:1.25rem}.timeline-card p{color:var(--presteps-muted);margin:10px 0 16px;line-height:1.5}.secondary-button{border:1px solid var(--presteps-teal);color:var(--presteps-teal);cursor:pointer;background:#fff;border-radius:9px;padding:10px 14px;font-weight:600}.stage-detail-date{color:var(--presteps-teal);margin-top:12px;font-size:.875rem;font-weight:700}.instruction-list{flex-direction:column;gap:16px;margin-top:28px;display:flex}.instruction-card{background:#fff;border:1px solid #e4e8ec;border-radius:14px;padding:22px}.instruction-card h2{margin:0 0 10px;font-size:1.125rem}.instruction-card p{color:var(--presteps-muted);margin:0;line-height:1.6}.instruction-warning{border-left:4px solid #b35c00}.instruction-clinic-review{border-left:4px solid #7c6a00}.instruction-preparation{border-left:4px solid var(--presteps-teal)}.food-guide-button{border:1px solid var(--presteps-line);background:var(--presteps-mint);width:100%;color:var(--presteps-ink);text-align:left;cursor:pointer;border-radius:14px;align-items:center;gap:14px;margin-top:18px;padding:18px;display:flex}.food-guide-button:hover{background:#d9eee8}.food-guide-button-icon{font-size:1.625rem}.food-guide-button-text{flex-direction:column;flex:1;gap:4px;display:flex}.food-guide-button-text strong{font-size:1rem}.food-guide-button-text small{color:var(--presteps-muted);font-size:.875rem}.food-guide-arrow{color:var(--presteps-teal);font-size:1.375rem}.food-section{background:#fff;border:1px solid #e4e8ec;border-radius:14px;margin-top:28px;padding:22px}.food-allowed{border-top:4px solid #39785d}.food-avoid{border-top:4px solid #a94a4a}.food-section-heading{align-items:flex-start;gap:14px;display:flex}.food-section-heading h2{margin:0;font-size:1.3125rem}.food-section-heading p{color:var(--presteps-muted);margin:6px 0 0;line-height:1.5}.food-status-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:1.125rem;font-weight:700;display:flex}.food-allowed .food-status-icon{color:#39785d;background:#e7f3ed}.food-avoid .food-status-icon{color:#a94a4a;background:#f8eaea}.food-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:20px;display:grid}.food-item{background:#fafbfc;border:1px solid #e7eaee;border-radius:10px;align-items:center;gap:9px;padding:13px;line-height:1.4;display:flex}.food-item-icon{flex-shrink:0;font-weight:700}.food-allowed .food-item-icon{color:#39785d}.food-avoid .food-item-icon{color:#a94a4a}.food-note{background:#f8fafb;border:1px solid #dce3e8;border-radius:12px;margin-top:20px;padding:18px}.food-note p{color:var(--presteps-muted);margin:7px 0 0;line-height:1.55}@media (width<=520px){.food-grid{grid-template-columns:1fr}}.prep-schedule-button{border:1px solid var(--presteps-line);width:100%;color:var(--presteps-ink);text-align:left;cursor:pointer;background:#fff;border-radius:14px;align-items:center;gap:14px;margin-top:12px;padding:18px;display:flex}.prep-schedule-button:hover{background:#f7fafb}.prep-schedule-icon{background:var(--presteps-mint);width:38px;height:38px;color:var(--presteps-teal);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.375rem;display:flex}.prep-schedule-text{flex-direction:column;flex:1;gap:4px;display:flex}.prep-schedule-text strong{font-size:1rem}.prep-schedule-text small{color:var(--presteps-muted);font-size:.875rem}.draft-notice{background:#fffaf0;border-left:4px solid #a07d00;border-radius:10px;margin-top:24px;padding:16px 18px}.draft-notice p{color:#685d3b;margin:6px 0 0;line-height:1.5}.schedule-section{margin-top:28px}.schedule-section h2{margin-bottom:14px;font-size:1.3125rem}.schedule-list{flex-direction:column;gap:12px;display:flex}.schedule-step{background:#fff;border:1px solid #e4e8ec;border-radius:12px;align-items:flex-start;gap:16px;padding:18px;display:flex}.schedule-time{min-width:52px;color:var(--presteps-teal);font-size:1rem;font-weight:700}.schedule-step strong{display:block}.schedule-step p{color:var(--presteps-muted);margin:6px 0 0;line-height:1.5}.drinking-card,.important-card{border-radius:12px;margin-top:18px;padding:18px}.drinking-card{border:1px solid var(--presteps-line);background:var(--presteps-mint)}.important-card{background:#fffaf0;border:1px solid #eadcae}.drinking-card p,.important-card p{color:var(--presteps-muted);margin:7px 0 0;line-height:1.55}.schedule-warning{background:#fff5f5;border:1px solid #e2a4a4;border-left:4px solid #b84b4b;border-radius:12px;margin-top:18px;padding:18px}.schedule-warning strong{color:#8f3030}.schedule-warning p{color:#684545;margin:7px 0 0;line-height:1.55}.readiness-instruction{color:var(--presteps-ink);margin-top:28px;font-weight:600}.readiness-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.readiness-option{color:var(--presteps-ink);cursor:pointer;background:#fff;border:2px solid #0000;border-radius:14px;flex-direction:column;align-items:center;gap:10px;padding:20px 14px;display:flex}.readiness-option:hover{border-color:#82aaa9}.readiness-option.is-selected{border-color:var(--presteps-teal);box-shadow:0 0 0 2px #00545b1f}.readiness-swatch{border:2px solid #00000014;border-radius:50%;width:70px;height:70px}.readiness-brown-solid .readiness-swatch{background:#75502f}.readiness-brown-liquid .readiness-swatch{background:#ae783c}.readiness-yellow-cloudy .readiness-swatch{background:#d8bf67}.readiness-clear-pale-yellow .readiness-swatch{background:#f3e8a9}.readiness-label{text-align:center;font-weight:700}.readiness-status{color:var(--presteps-muted);font-size:.875rem}.readiness-status.is-ready{color:#39785d;font-weight:700}.readiness-result{border-radius:12px;margin-top:24px;padding:18px}.readiness-result p{margin:7px 0 0;line-height:1.55}.readiness-result-ready{background:#f1f8f4;border:1px solid #afd3be;border-left:4px solid #39785d}.readiness-result-ready strong{color:#2f684f}.readiness-result-not-ready{background:#fff9ef;border:1px solid #e5c99d;border-left:4px solid #a06f22}.readiness-result-not-ready strong{color:#805818}@media (width<=520px){.readiness-grid{grid-template-columns:1fr}}.procedure-day-summary{border:1px solid var(--presteps-line);background:var(--presteps-mint);border-radius:12px;flex-direction:column;gap:5px;margin-top:24px;padding:18px;display:flex}.procedure-day-summary span{color:var(--presteps-muted);font-size:.875rem}.procedure-day-summary strong{font-size:1.125rem}.procedure-day-list{flex-direction:column;gap:14px;margin-top:24px;display:flex}.procedure-day-card{background:#fff;border:1px solid #e4e8ec;border-radius:12px;padding:20px}.procedure-day-card h2{margin:0 0 8px;font-size:1.125rem}.procedure-day-card p{color:var(--presteps-muted);margin:0;line-height:1.55}.procedure-day-important{border-left:4px solid var(--presteps-teal)}.procedure-day-warning{border-left:4px solid #b84b4b}.procedure-day-clinic-review{border-left:4px solid #a07d00}.procedure-readiness-button{width:100%;margin-top:22px}.final-checklist-button{width:100%;margin-top:12px}.final-checklist{flex-direction:column;gap:12px;margin-top:24px;display:flex}.checklist-item{cursor:pointer;background:#fff;border:1px solid #e4e8ec;border-radius:12px;align-items:flex-start;gap:14px;padding:18px;display:flex}.checklist-item:hover{border-color:#82aaa9}.checklist-item input{opacity:0;pointer-events:none;position:absolute}.checklist-box{color:#fff;border:2px solid #b7c2ca;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-weight:700;display:flex}.checklist-item.is-checked .checklist-box{background:#39785d;border-color:#39785d}.checklist-content{flex-direction:column;gap:5px;display:flex}.checklist-content strong{font-size:1rem}.checklist-content span{color:var(--presteps-muted);line-height:1.5}.checklist-content small{color:var(--presteps-muted);font-size:.875rem}.checklist-complete,.checklist-progress{border-radius:12px;margin-top:22px;padding:18px}.checklist-complete{background:#f1f8f4;border:1px solid #afd3be;border-left:4px solid #39785d}.checklist-complete strong{color:#2f684f}.checklist-progress{background:#f8fafb;border:1px solid #dce3e8;border-left:4px solid #768895}.checklist-complete p,.checklist-progress p{color:var(--presteps-muted);margin:7px 0 0;line-height:1.55}.contact-list{flex-direction:column;gap:12px;margin-top:28px;display:flex}.contact-card{color:var(--presteps-ink);background:#fff;border:1px solid #dce3e8;border-radius:12px;align-items:center;gap:16px;padding:18px;text-decoration:none;display:flex}a.contact-card:hover{border-color:var(--presteps-teal);background:#f7fafb}.contact-icon{background:var(--presteps-mint);width:42px;height:42px;color:var(--presteps-teal);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.25rem;display:flex}.contact-content{flex-direction:column;gap:4px;display:flex}.contact-content small{color:var(--presteps-muted);font-size:.875rem}.contact-content strong{font-size:1rem}.contact-empty{background:#fff;border:1px solid #dce3e8;border-radius:12px;margin-top:28px;padding:20px}.contact-empty p{color:var(--presteps-muted);margin:8px 0 0;line-height:1.55}.contact-inline-button{margin-top:14px}.guides-list{flex-direction:column;gap:14px;margin-top:28px;display:flex}.guide-card{width:100%;color:var(--presteps-ink);text-align:left;cursor:pointer;background:#fff;border:1px solid #dce3e8;border-radius:14px;align-items:center;gap:16px;padding:18px;display:flex}.guide-card:hover{border-color:var(--presteps-teal);background:#f7fafb}.guide-icon{background:var(--presteps-mint);width:42px;height:42px;color:var(--presteps-teal);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.125rem;font-weight:700;display:flex}.guide-content{flex-direction:column;flex:1;gap:4px;display:flex}.guide-content strong{font-size:1rem}.guide-content small{color:var(--presteps-muted);font-size:.875rem;line-height:1.4}.has-bottom-nav .app-content{padding-bottom:calc(10rem + env(safe-area-inset-bottom))}.bottom-nav{z-index:50;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #dfe5ea;justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav-item{width:110px;color:var(--presteps-muted);cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;gap:3px;padding:8px 10px;font-size:.875rem;font-weight:600;display:flex}.bottom-nav-item.is-active{color:var(--presteps-teal)}.bottom-nav-icon{font-size:1.3125rem;line-height:1}.timeline-list{gap:10px;margin-top:14px}.timeline-card-button{width:100%;color:var(--presteps-ink);text-align:left;font:inherit;cursor:pointer;background:#fff;border:1px solid #e4e8ec;align-items:center;padding:16px}.timeline-card-button:hover{background:#fafcfd;border-color:#82aaa9}.timeline-card-button .timeline-marker{margin-top:0}.timeline-card-button .timeline-date{margin-bottom:3px;font-size:.875rem}.timeline-card-button p{margin:5px 0 0;font-size:.875rem;line-height:1.4}.timeline-card-arrow{color:var(--presteps-teal);flex-shrink:0;margin-left:auto;font-size:1.25rem}.app{overflow-wrap:anywhere;line-height:1.5}.app-header{flex-wrap:wrap;gap:12px}.text-size-button{border:2px solid var(--presteps-teal);min-height:44px;color:var(--presteps-teal);cursor:pointer;background:#fff;border-radius:8px;padding:10px 12px;font-size:.875rem;font-weight:700}.text-size-button[aria-pressed=true]{background:var(--presteps-teal);color:#fff}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--presteps-teal);outline-offset:4px}.checklist-item:focus-within{outline:3px solid var(--presteps-teal);outline-offset:3px}.back-button{min-height:44px}.timeline-card-content,.guide-content,.contact-content,.checklist-content,.food-guide-button-text,.prep-schedule-text,.schedule-step>div{min-width:0}.timeline-section-header h2{font-size:1.5rem}.plan-introduction,.next-stage p{color:var(--presteps-ink);line-height:1.6}.timeline-list{gap:20px}.timeline-card-button{border-color:var(--presteps-line)}.timeline-card-button .timeline-marker{color:#fff;justify-content:center;align-items:center;width:2rem;height:2rem;font-weight:700;display:flex}.timeline-card-button:not(:last-child):after{content:"";background:var(--presteps-teal);width:2px;height:21px;position:absolute;top:100%;left:calc(15px + 1rem)}.timeline-card-button h2{font-size:1.125rem}.timeline-card-button p{font-size:1rem}.next-stage{border-top:2px solid var(--presteps-line);margin-top:32px;padding-top:16px}.next-stage .primary-button{margin-top:8px}.guide-card,.instruction-card,.procedure-day-card{border-color:var(--presteps-line)}.bottom-nav-item{width:min(33.333%,8rem);min-width:0}.has-bottom-nav .app-footer{padding-bottom:calc(10rem + env(safe-area-inset-bottom))}@media (width<=380px){.schedule-step{flex-direction:column;gap:8px}.timeline-card{gap:10px;padding:12px}.timeline-card-button:not(:last-child):after{left:calc(11px + 1rem)}}.clinic-placeholder,h1{color:var(--presteps-teal)}.timeline-card,.guide-card{background:#f5fbf8}.timeline-card-procedure-day{border-left-color:var(--presteps-teal)}.primary-button:hover:not(:disabled){opacity:1;background:#006d72}.bottom-nav{border-top-color:var(--presteps-line)}.bottom-nav-item{border-radius:12px}.bottom-nav-item.is-active{background:var(--presteps-mint);color:var(--presteps-teal)}.checklist-item.is-checked{background:var(--presteps-mint);border-color:#82aaa9}.checklist-item.is-checked .checklist-box{background:var(--presteps-lime);border-color:var(--presteps-teal);color:var(--presteps-teal)}
