*{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{min-height:100vh}.app{color:#17202a;background:#f7f9fb;flex-direction:column;min-height:100vh;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:18px;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:#5b6b7a;margin-bottom:10px;font-size:13px;font-weight:700}h1{margin:0;font-size:38px;line-height:1.15}.subtitle{color:#56616c;margin-top:18px;font-size:18px;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:#687684;font-size:13px}.primary-button{color:#fff;cursor:pointer;background:#176b87;border:0;border-radius:12px;width:100%;margin-top:28px;padding:16px 20px;font-size:17px;font-weight:700}.primary-button:hover{opacity:.92}.app-footer{text-align:center;color:#7a8792;padding:20px;font-size:13px}.back-button{color:#176b87;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:#56616c;font-size:14px;font-weight:600}.form-field input{box-sizing:border-box;appearance:none;color:#17202a;background:#fff;border:1px solid #d5dbe1;border-radius:10px;width:100%;min-width:0;max-width:100%;height:52px;padding:14px;font-size:16px;display:block}.primary-button:disabled{cursor:not-allowed;opacity:.45}.privacy-note{text-align:center;color:#7a8792;margin-top:16px;font-size:13px}.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:#687684;font-size:14px}.procedure-summary strong{font-size:18px}.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:#176b87;border-radius:50%;flex-shrink:0;width:12px;height:12px;margin-top:6px}.timeline-card-content{flex:1}.timeline-date{color:#176b87;margin-bottom:6px;font-size:13px;font-weight:700;display:block}.timeline-card h2{margin:0;font-size:20px}.timeline-card p{color:#56616c;margin:10px 0 16px;line-height:1.5}.secondary-button{color:#176b87;cursor:pointer;background:#fff;border:1px solid #176b87;border-radius:9px;padding:10px 14px;font-weight:600}.stage-detail-date{color:#176b87;margin-top:12px;font-size:14px;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:18px}.instruction-card p{color:#56616c;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 #176b87}.food-guide-button{color:#17202a;text-align:left;cursor:pointer;background:#eef7f9;border:1px solid #cddfe5;border-radius:14px;align-items:center;gap:14px;width:100%;margin-top:18px;padding:18px;display:flex}.food-guide-button:hover{background:#e5f2f5}.food-guide-button-icon{font-size:26px}.food-guide-button-text{flex-direction:column;flex:1;gap:4px;display:flex}.food-guide-button-text strong{font-size:16px}.food-guide-button-text small{color:#687684;font-size:13px}.food-guide-arrow{color:#176b87;font-size:22px}.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:21px}.food-section-heading p{color:#687684;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:18px;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:#56616c;margin:7px 0 0;line-height:1.55}@media (width<=520px){.food-grid{grid-template-columns:1fr}}.prep-schedule-button{color:#17202a;text-align:left;cursor:pointer;background:#fff;border:1px solid #cddfe5;border-radius:14px;align-items:center;gap:14px;width:100%;margin-top:12px;padding:18px;display:flex}.prep-schedule-button:hover{background:#f7fafb}.prep-schedule-icon{color:#176b87;background:#e7f3f6;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:22px;display:flex}.prep-schedule-text{flex-direction:column;flex:1;gap:4px;display:flex}.prep-schedule-text strong{font-size:16px}.prep-schedule-text small{color:#687684;font-size:13px}.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:21px}.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{color:#176b87;min-width:52px;font-size:16px;font-weight:700}.schedule-step strong{display:block}.schedule-step p{color:#56616c;margin:6px 0 0;line-height:1.5}.drinking-card,.important-card{border-radius:12px;margin-top:18px;padding:18px}.drinking-card{background:#eef7f9;border:1px solid #cddfe5}.important-card{background:#fffaf0;border:1px solid #eadcae}.drinking-card p,.important-card p{color:#56616c;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:#394957;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:#17202a;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:#b9cbd3}.readiness-option.is-selected{border-color:#176b87;box-shadow:0 0 0 2px #176b8714}.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:#687684;font-size:13px}.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{background:#eef7f9;border:1px solid #cddfe5;border-radius:12px;flex-direction:column;gap:5px;margin-top:24px;padding:18px;display:flex}.procedure-day-summary span{color:#687684;font-size:14px}.procedure-day-summary strong{font-size:18px}.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:18px}.procedure-day-card p{color:#56616c;margin:0;line-height:1.55}.procedure-day-important{border-left:4px solid #176b87}.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:#b9cbd3}.checklist-item.is-checked{background:#f5faf7;border-color:#afd3be}.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:16px}.checklist-content span{color:#56616c;line-height:1.5}.checklist-content small{color:#7a8792;font-size:12px}.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:#56616c;margin:7px 0 0;line-height:1.55}.contact-list{flex-direction:column;gap:12px;margin-top:28px;display:flex}.contact-card{color:#17202a;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{background:#f7fafb;border-color:#176b87}.contact-icon{color:#176b87;background:#e7f3f6;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:20px;display:flex}.contact-content{flex-direction:column;gap:4px;display:flex}.contact-content small{color:#687684;font-size:13px}.contact-content strong{font-size:16px}.contact-empty{background:#fff;border:1px solid #dce3e8;border-radius:12px;margin-top:28px;padding:20px}.contact-empty p{color:#56616c;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{color:#17202a;text-align:left;cursor:pointer;background:#fff;border:1px solid #dce3e8;border-radius:14px;align-items:center;gap:16px;width:100%;padding:18px;display:flex}.guide-card:hover{background:#f7fafb;border-color:#176b87}.guide-icon{color:#176b87;background:#e7f3f6;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:18px;font-weight:700;display:flex}.guide-content{flex-direction:column;flex:1;gap:4px;display:flex}.guide-content strong{font-size:16px}.guide-content small{color:#687684;font-size:13px;line-height:1.4}.has-bottom-nav .app-content{padding-bottom:120px}.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{color:#75818c;cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;gap:3px;width:110px;padding:8px 10px;font-size:12px;font-weight:600;display:flex}.bottom-nav-item.is-active{color:#176b87}.bottom-nav-icon{font-size:21px;line-height:1}.timeline-list{gap:10px;margin-top:14px}.timeline-card-button{color:#17202a;text-align:left;width:100%;font:inherit;cursor:pointer;background:#fff;border:1px solid #e4e8ec;align-items:center;padding:16px}.timeline-card-button:hover{background:#fafcfd;border-color:#b9cbd3}.timeline-card-button .timeline-marker{margin-top:0}.timeline-card-button .timeline-date{margin-bottom:3px;font-size:12px}.timeline-card-button h2{font-size:17px}.timeline-card-button p{margin:5px 0 0;font-size:14px;line-height:1.4}.timeline-card-arrow{color:#176b87;flex-shrink:0;margin-left:auto;font-size:20px}
