*{box-sizing:border-box}
html{direction:rtl;overflow-x:hidden}
body{margin:0;font-family:var(--font);background:var(--gray-100);color:var(--gray-900);line-height:1.6;overflow-x:hidden}
a{color:var(--blue);text-decoration:none}
button,input,select,textarea{font:inherit}
input,select,textarea{width:100%;min-height:44px;padding:8px 12px;border:1px solid var(--gray-300);border-radius:8px;background:#fff;max-width:100%}
button{min-height:44px;max-width:100%}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #1565c055;outline-offset:2px}
table{width:100%;min-width:max-content;border-collapse:collapse;background:#fff}
thead tr:nth-child(odd),tbody tr:nth-child(even){background:#fafafa}
th,td{padding:10px;border-bottom:1px solid var(--gray-200);text-align:right;vertical-align:middle;white-space:nowrap;overflow-wrap:normal}
th{background:var(--gray-100);position:sticky;top:0;z-index:1}
.hidden{display:none!important}
.text-muted{color:var(--gray-500)}
.flex{display:flex}
.gap-2{gap:8px}
.gap-3{gap:12px}
.stack{display:grid;gap:12px}
.scroll-x{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:601px){
 .timetable-table th:first-child{width:72px;min-width:72px;white-space:nowrap;overflow-wrap:normal;text-align:center}
 .timetable-table td:first-child{width:72px;min-width:72px;text-align:center;white-space:nowrap;overflow-wrap:normal}
}
@media(max-width:600px){
 th,td{padding:8px;font-size:.88rem}
 .timetable-table{min-width:0!important}
 .timetable-table th,.timetable-table td{white-space:normal;overflow-wrap:anywhere}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
