.mobile-menu-toggle{display:none}
.mobile-menu-toggle{width:40px;height:40px;border:1px solid #ddd;border-radius:10px;background:white;flex-direction:column;align-items:center;justify-content:center;gap:5px}.mobile-menu-toggle span{width:19px;height:2px;background:#160b69}.mobile-nav{position:absolute;top:100%;left:0;right:0;background:white;padding:10px 20px 20px;box-shadow:0 20px 30px #160b6920}.mobile-nav a{display:block;padding:12px;color:#1c1677;border-bottom:1px solid #eee;font-weight:700;font-size:13px}.field:has(.jalali-calendar){position:relative}.jalali-trigger{width:100%;margin-top:10px;padding:10px;border:1px solid #dddaf2;background:#f5f4ff;border-radius:11px;color:#261a7b;font-size:12px;font-weight:700;display:flex;justify-content:space-between;gap:10px}.jalali-trigger span{font-size:10px;color:#777}
.jalali-calendar{position:absolute;z-index:45;top:100%;inset-inline-start:0;width:min(365px,calc(100vw - 40px));background:white;border:1px solid #e5e1f0;border-radius:15px;box-shadow:0 22px 50px #1c126b30;padding:15px}.jalali-calendar-header{display:flex;gap:5px;align-items:center;margin-bottom:12px}.jalali-calendar-header strong{flex:1;text-align:center;color:#21166f}.jalali-calendar-header button{border:0;border-radius:8px;background:#f1f0fa;width:31px;height:31px;color:#2c207d}
.jalali-weekdays,.jalali-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center}.jalali-weekdays{font-size:11px;color:#69718a}.calendar-day,.calendar-empty{aspect-ratio:1;display:grid;place-items:center}.calendar-day{background:#f7f8fc;border:1px solid transparent;border-radius:8px;color:#2c3155;font-weight:700}.calendar-day.is-today{border-color:#45bb9b}.calendar-day.is-selected{background:#170969;color:white}.jalali-hint{font-size:10px;text-align:center;color:#778;margin:12px 0 0}
.planning-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(270px,.85fr);gap:16px;margin:25px 0}.forecast-panel,.cost-panel{background:white;border:1px solid #e0e4f1;border-radius:18px;padding:22px;min-width:0;box-shadow:var(--shadow)}.forecast-panel{background:linear-gradient(145deg,#f7f6ff,#fff 67%);border-top:3px solid #5346bd}.forecast-panel.danger{border-top-color:#c44;background:#fff8f8}.forecast-panel.caution{border-top-color:#bd872b;background:#fff9f0}.planning-title{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:15px}.planning-title h3{font-size:17px;color:#231c68;margin:3px 0}.planning-pill{font-size:10px;border-radius:20px;background:#efecff;color:#594aa3;padding:5px 10px}
#forecast-status{font-size:14px;color:#246a53;display:block}.danger #forecast-status{color:#ae4246}.caution #forecast-status{color:#976822}#forecast-detail{font-size:12px;color:#65708a;line-height:2.1}.forecast-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.forecast-steps>div{background:#fff;border:1px solid #e9ebf4;border-radius:12px;padding:11px}.forecast-steps small{display:block;font-size:10px;color:#78819b}.forecast-steps b{display:block;margin-top:4px;color:#25206d;font-size:11px;overflow-wrap:anywhere}.forecast-steps em{display:block;font-size:10px;color:#6f7891;font-style:normal}.forecast-unknown{padding-top:12px;border-top:1px solid #e7e8f3;color:#69748f;font-size:11px}
.entry-group{display:flex;flex-direction:column;gap:5px;color:#667;font-size:11px}.entry-group select{border:1px solid #dfe3ed;border-radius:9px;padding:8px;color:#27216b;background:#fff}.fee-item{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid #eceef5;padding:13px 0}.fee-item small{color:#66738d;font-size:11px}.fee-item p{font-size:10px;color:#7b849c;margin:2px 0}.fee-item b{color:#20166b;font-size:17px;white-space:nowrap}.service-fee b{font-size:12px}.fee-note,.fee-source{font-size:10px;line-height:2;color:#73809a}.fee-source{background:#f5f6fc;padding:11px;border-radius:10px;display:flex;flex-direction:column}.fee-source a{color:#281c92;text-decoration:underline;font-weight:700}#reviewed-at{font-size:10px;color:#646f8d}.timeline-relation{display:block;margin-top:5px;font-size:10px;color:#52479a}
@media(max-width:790px){.mobile-menu-toggle{display:flex}.planning-grid{grid-template-columns:1fr}}
@media(max-width:540px){.mobile-menu-toggle{width:36px;height:36px}.brand-text strong{font-size:16px}.forecast-panel,.cost-panel{padding:16px}.planning-title h3{font-size:15px}.jalali-calendar{inset-inline-start:auto;inset-inline-end:0}}
@media print{.mobile-nav,.jalali-calendar{display:none!important}.planning-grid{grid-template-columns:1fr 1fr}.forecast-panel,.cost-panel{box-shadow:none;border:1px solid #999}}
