.old-calendar-tool { display: grid; gap: 1.25rem; }
.calendar-tabs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .5rem; margin-top: 1rem; }
.calendar-tab { min-height: 48px; padding: .7rem; border: 1px solid #94a3b8; border-radius: .7rem; background: #f8fafc; color: #334155; font: inherit; font-weight: 700; cursor: pointer; }
.calendar-tab[aria-selected="true"] { border-color: #17463f; background: #17463f; color: #fff; }
.calendar-panel { margin-top: 1rem; padding: 1rem; border-radius: .8rem; background: #eef2f7; }
.calendar-panel[hidden] { display: none; }
.calendar-panel h3 { margin-top: 0; }
.calendar-field > label, .calendar-fields label { display: block; margin-bottom: .4rem; font-weight: 700; }
.calendar-field input, .calendar-fields input, .calendar-fields select { box-sizing: border-box; width: 100%; min-width: 0; min-height: 48px; padding: .7rem .75rem; border: 1px solid #94a3b8; border-radius: .7rem; background: #fff; color: #172033; font: inherit; }
.calendar-fields { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .75rem; }
.calendar-submit { margin-top: 1rem; }
.calendar-status { margin: 1rem 0 0; padding: .85rem 1rem; border-radius: .7rem; background: #f1f5f9; color: #475569; }
.calendar-status[data-state="error"] { border-left: 4px solid #b91c1c; background: #fef2f2; color: #991b1b; }
.calendar-status[data-state="success"] { border-left: 4px solid #15803d; background: #f0fdf4; color: #166534; }
.calendar-result { margin-top: 1rem; padding: 1.2rem; border: 2px solid #17463f; border-radius: .85rem; background: #f0fdf4; text-align: center; }
.calendar-result__label { margin: 0; color: #166534; font-size: .95rem; font-weight: 800; }
.calendar-result__value { margin: .35rem 0; color: #123e38; font-size: clamp(1.45rem, 5vw, 2rem); font-weight: 800; overflow-wrap: anywhere; }
.calendar-result__detail { margin: 0; color: #475569; }
.calendar-warning { margin: 1rem 0 0; padding: .85rem 1rem; border-left: 4px solid #b45309; border-radius: .6rem; background: #fffbeb; color: #78350f; text-align: left; overflow-wrap: anywhere; }
.calendar-official-note { margin-top: 1rem; padding: .9rem 1rem; border-radius: .7rem; background: #fff7ed; color: #7c2d12; }
.tool-actions { display: flex; flex-wrap: wrap; gap: .65rem; margin-top: 1rem; }
.tool-actions button, .tool-actions .share-button { min-height: 44px; }
.old-calendar-tool :is(input, select, button, a):focus-visible { outline: 3px solid #f59e0b; outline-offset: 2px; }
@media (max-width: 700px) { .calendar-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 390px) { .calendar-tabs, .calendar-fields { grid-template-columns: minmax(0, 1fr); } .tool-actions > * { flex: 1 1 100%; } }
