.phase-panel{background:white;border:1px solid #dce3eb;border-radius:14px;padding:16px;margin:20px 0}.phase-panel summary{min-height:44px;cursor:pointer;font-weight:600}.phase-entry{border-top:1px solid #dce3eb;padding:14px 0;display:flex;justify-content:space-between;gap:12px}.phase-entry p{margin:4px 0}.phase-entry strong{overflow-wrap:anywhere}.phase-day-label{border-left:3px solid #1658eb;padding:8px 14px;color:#1658eb;font-family:Impact,'Arial Narrow',sans-serif;font-size:clamp(24px,6vw,30px);font-weight:400;line-height:1.15;letter-spacing:.025em;text-transform:uppercase}.phase-dialog{width:min(460px,calc(100% - 32px));padding:24px;border:1px solid #dce3eb;border-radius:16px;background:white;color:#102238;max-height:90vh;overflow:auto}.phase-dialog::backdrop{background:#10223866}.phase-dialog label{display:block;margin:16px 0;font-size:14px}.phase-dialog input,.phase-dialog textarea{width:100%;min-width:0;padding:12px;border:1px solid #b8c5d4;border-radius:9px}.phase-actions{display:flex;gap:12px;flex-wrap:wrap}.phase-actions button{min-height:44px;padding:10px 14px}.phase-error{color:#a32b2b}@media(max-width:420px){.phase-entry>div:last-child{display:flex;flex-direction:column}}
.phase-day-label{overflow-wrap:anywhere}.phase-entry>div:first-child{min-width:0}.phase-entry .helper{overflow-wrap:anywhere}.phase-entry>div:last-child{flex-shrink:0}.phase-dialog label{overflow-wrap:anywhere}

/* Compact, bounded phone forms; native date controls share the same dimensions. */
.phase-dialog{box-sizing:border-box;width:min(460px,calc(100vw - 32px));max-width:calc(100vw - 32px);max-height:calc(var(--phase-viewport-height,100dvh) - 32px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));padding:20px;overscroll-behavior:contain;scrollbar-gutter:stable;}
.phase-dialog form,.phase-dialog label{min-width:0;max-width:100%;}
.phase-dialog h2{font-size:1.25rem;margin:0 0 18px;line-height:1.3;}
.phase-dialog label{margin:14px 0;font-size:14px;}
.phase-dialog input,.phase-dialog textarea{box-sizing:border-box;display:block;width:100%;max-width:100%;min-width:0;font:inherit;font-size:16px;margin-top:6px;padding:10px 12px;}
.phase-dialog input{height:48px;min-height:48px;}
.phase-dialog textarea{height:72px;min-height:72px;resize:vertical;}
.phase-dialog input[type=date]{-webkit-appearance:none;appearance:none;line-height:normal;text-align:left;}
.phase-dialog input::-webkit-date-and-time-value{min-width:0;text-align:left;margin:0;}
.phase-dialog input::-webkit-datetime-edit{display:block;padding:0;}
.phase-dialog .phase-error:empty{display:none;}
.phase-dialog .phase-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-top:20px;align-items:center;}
.phase-dialog .phase-actions button{font-size:16px;min-height:48px;margin:0;}
.phase-dialog .phase-actions button:not(.primary){background:transparent;color:var(--blue);border:0;}
.week-picker{scroll-margin-block:20px;min-width:0;}
.week-day>.week-picker,.week-day>#week-confirm,.week-day>#week-editor{margin-top:16px;}
.week-day .week-picker-head{align-items:flex-start;flex-wrap:wrap;}
.week-day .week-picker h2{font-size:18px!important;}
@media(min-width:1000px){.week-day:has(.week-picker){grid-column:span 3;}}

.phase-dialog h2:focus{outline:none;}
.week-picker input[type=date]{box-sizing:border-box;min-width:0;max-width:100%;width:100%;height:48px;min-height:48px;appearance:none;-webkit-appearance:none;font-size:16px;line-height:normal;text-align:left;}
.week-picker input::-webkit-date-and-time-value{min-width:0;text-align:left;margin:0;}
