/* Shared weekly timetable. Static position classes work with the strict CSP. */
.week-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:24px 0 8px}
.week-toolbar strong{font-size:17px}.week-toolbar p{font-size:12px;color:#58604f;margin:4px 0}
.week-navigation{display:flex;gap:6px}.club-page .week-navigation button{min-width:44px;padding:10px 13px;border-radius:8px}
.week-hint{font-size:12px;color:#59614f;line-height:1.7;margin:12px 0}.week-hint span{display:none}
.week-scroll{max-height:660px;overflow:auto;border:1px solid #d9dece;border-radius:12px;background:white;overscroll-behavior:contain;scrollbar-color:#a4b47d #eff2e9}
.week-grid{display:grid;grid-template-columns:60px repeat(7,minmax(125px,1fr));min-width:940px}
.week-axis{position:sticky;left:0;z-index:3;background:#fafbf7}
.week-day-heading{position:sticky;top:0;z-index:4;height:95px;background:#f3f5ee;border-bottom:1px solid #d9dece;padding:10px;text-align:center;display:flex;flex-direction:column;gap:3px;align-items:center;justify-content:center;font-size:12px}
.week-axis .week-day-heading{font-size:10px}.week-day-heading strong{text-transform:capitalize}.week-day-heading>span{font-size:23px;font-weight:700;line-height:1}
.week-day-heading small{font-size:10px;color:#727965}.week-day-heading button{font-size:10px!important;min-height:26px!important;padding:4px 8px!important;box-shadow:none!important;background:#e4e9d9!important}
.week-day{min-width:0;border-left:1px solid #e1e5d8}.week-today .week-day-heading{background:#eaf4ce}.week-today .week-day-heading>span{color:#41550e}.week-outside{background:#f1f1ed;color:#76796f}
.week-hours,.week-day-slots{display:grid;grid-auto-rows:14px;background:repeating-linear-gradient(to bottom,transparent 0,transparent 55px,#e2e7d9 55px,#e2e7d9 56px)}
.week-day-slots{grid-auto-columns:minmax(0,1fr);column-gap:2px}.week-hours span{font-size:10px;line-height:14px;padding:2px 5px;text-align:right;color:#69745c}
.club-page .week-event{min-width:0;min-height:0;align-self:stretch;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:0;padding:4px 6px;margin:1px 2px;border:1px solid #b9c79a;border-left:3px solid #789330;border-radius:5px;background:#eff4e4;color:#28321f;box-shadow:none;overflow:hidden;text-align:left;line-height:1.35;white-space:normal}
.club-page .week-event:hover{transform:none;box-shadow:inset 0 0 0 1px #4e6717;z-index:2}
.week-event-time{font-size:10px;font-variant-numeric:tabular-nums}.week-event strong{font-size:11px;overflow-wrap:anywhere}.week-event small{font-size:9px}
.club-page .week-state-confirmed{background:#e3efc8;border-color:#86a344}.club-page .week-state-selected{background:#d4fc3e;border-color:#648500}
.club-page .week-state-pending,.club-page .week-state-review,.club-page .week-state-held,.club-page .week-state-creating{background:#fff0c9;border-color:#b5892f}
.club-page .week-state-failed{background:#f6e2e0;border-color:#a96a67}
.club-page .week-state-cancelled{background:#ecebe6;color:#6d7068;border-color:#b8bbb1;text-decoration:line-through}
.club-page .week-state-occupied{background:#30382b;color:#fff;border-color:#30382b}
.club-page .week-state-blocked{background:#fff;border:1px dashed #bdc4b1;color:#626b57}
.club-page .week-state-past{background:#eee;color:#666;border-color:#ccc}
.week-empty{font-size:13px;padding:14px;color:#69745c}
.week-details{margin-top:18px;padding:20px;border:1px solid #a4b47d;border-radius:10px;background:#f7faef}.week-details[hidden]{display:none}
.week-details>p{font-size:13px}.week-details article{padding:14px 0;border-bottom:1px solid #dce3cf;font-size:12px}.week-details article:last-child{border:0}.week-details article p{margin:6px 0}.week-close{float:right;margin:0 0 12px 12px}
.agenda-options{padding:16px 0;border-top:1px solid #dce3cf;margin-top:20px}.agenda-options>summary{min-height:44px;cursor:pointer;font-weight:600;font-size:14px}.agenda-options[open]>summary{margin-bottom:16px}
.agenda-month{display:flex;align-items:center;gap:20px;font-weight:700}.agenda-month input{max-width:220px}
@media(max-width:700px){.week-hint span{display:inline}.week-toolbar{flex-wrap:wrap}.week-scroll{max-height:560px}.week-grid{grid-template-columns:44px repeat(7,125px);min-width:919px}.week-details{padding:14px}.agenda-month{flex-wrap:wrap;gap:8px}.week-toolbar p{max-width:240px}}
@media(prefers-reduced-motion:reduce){.week-event{transition:none!important}}
.week-start-0{grid-row-start:1}
.week-start-1{grid-row-start:2}.week-span-1{grid-row-end:span 1}.week-rows-1{grid-template-rows:repeat(1,14px)}
.week-start-2{grid-row-start:3}.week-span-2{grid-row-end:span 2}.week-rows-2{grid-template-rows:repeat(2,14px)}
.week-start-3{grid-row-start:4}.week-span-3{grid-row-end:span 3}.week-rows-3{grid-template-rows:repeat(3,14px)}
.week-start-4{grid-row-start:5}.week-span-4{grid-row-end:span 4}.week-rows-4{grid-template-rows:repeat(4,14px)}
.week-start-5{grid-row-start:6}.week-span-5{grid-row-end:span 5}.week-rows-5{grid-template-rows:repeat(5,14px)}
.week-start-6{grid-row-start:7}.week-span-6{grid-row-end:span 6}.week-rows-6{grid-template-rows:repeat(6,14px)}
.week-start-7{grid-row-start:8}.week-span-7{grid-row-end:span 7}.week-rows-7{grid-template-rows:repeat(7,14px)}
.week-start-8{grid-row-start:9}.week-span-8{grid-row-end:span 8}.week-rows-8{grid-template-rows:repeat(8,14px)}
.week-start-9{grid-row-start:10}.week-span-9{grid-row-end:span 9}.week-rows-9{grid-template-rows:repeat(9,14px)}
.week-start-10{grid-row-start:11}.week-span-10{grid-row-end:span 10}.week-rows-10{grid-template-rows:repeat(10,14px)}
.week-start-11{grid-row-start:12}.week-span-11{grid-row-end:span 11}.week-rows-11{grid-template-rows:repeat(11,14px)}
.week-start-12{grid-row-start:13}.week-span-12{grid-row-end:span 12}.week-rows-12{grid-template-rows:repeat(12,14px)}
.week-start-13{grid-row-start:14}.week-span-13{grid-row-end:span 13}.week-rows-13{grid-template-rows:repeat(13,14px)}
.week-start-14{grid-row-start:15}.week-span-14{grid-row-end:span 14}.week-rows-14{grid-template-rows:repeat(14,14px)}
.week-start-15{grid-row-start:16}.week-span-15{grid-row-end:span 15}.week-rows-15{grid-template-rows:repeat(15,14px)}
.week-start-16{grid-row-start:17}.week-span-16{grid-row-end:span 16}.week-rows-16{grid-template-rows:repeat(16,14px)}
.week-start-17{grid-row-start:18}.week-span-17{grid-row-end:span 17}.week-rows-17{grid-template-rows:repeat(17,14px)}
.week-start-18{grid-row-start:19}.week-span-18{grid-row-end:span 18}.week-rows-18{grid-template-rows:repeat(18,14px)}
.week-start-19{grid-row-start:20}.week-span-19{grid-row-end:span 19}.week-rows-19{grid-template-rows:repeat(19,14px)}
.week-start-20{grid-row-start:21}.week-span-20{grid-row-end:span 20}.week-rows-20{grid-template-rows:repeat(20,14px)}
.week-start-21{grid-row-start:22}.week-span-21{grid-row-end:span 21}.week-rows-21{grid-template-rows:repeat(21,14px)}
.week-start-22{grid-row-start:23}.week-span-22{grid-row-end:span 22}.week-rows-22{grid-template-rows:repeat(22,14px)}
.week-start-23{grid-row-start:24}.week-span-23{grid-row-end:span 23}.week-rows-23{grid-template-rows:repeat(23,14px)}
.week-start-24{grid-row-start:25}.week-span-24{grid-row-end:span 24}.week-rows-24{grid-template-rows:repeat(24,14px)}
.week-start-25{grid-row-start:26}.week-span-25{grid-row-end:span 25}.week-rows-25{grid-template-rows:repeat(25,14px)}
.week-start-26{grid-row-start:27}.week-span-26{grid-row-end:span 26}.week-rows-26{grid-template-rows:repeat(26,14px)}
.week-start-27{grid-row-start:28}.week-span-27{grid-row-end:span 27}.week-rows-27{grid-template-rows:repeat(27,14px)}
.week-start-28{grid-row-start:29}.week-span-28{grid-row-end:span 28}.week-rows-28{grid-template-rows:repeat(28,14px)}
.week-start-29{grid-row-start:30}.week-span-29{grid-row-end:span 29}.week-rows-29{grid-template-rows:repeat(29,14px)}
.week-start-30{grid-row-start:31}.week-span-30{grid-row-end:span 30}.week-rows-30{grid-template-rows:repeat(30,14px)}
.week-start-31{grid-row-start:32}.week-span-31{grid-row-end:span 31}.week-rows-31{grid-template-rows:repeat(31,14px)}
.week-start-32{grid-row-start:33}.week-span-32{grid-row-end:span 32}.week-rows-32{grid-template-rows:repeat(32,14px)}
.week-start-33{grid-row-start:34}.week-span-33{grid-row-end:span 33}.week-rows-33{grid-template-rows:repeat(33,14px)}
.week-start-34{grid-row-start:35}.week-span-34{grid-row-end:span 34}.week-rows-34{grid-template-rows:repeat(34,14px)}
.week-start-35{grid-row-start:36}.week-span-35{grid-row-end:span 35}.week-rows-35{grid-template-rows:repeat(35,14px)}
.week-start-36{grid-row-start:37}.week-span-36{grid-row-end:span 36}.week-rows-36{grid-template-rows:repeat(36,14px)}
.week-start-37{grid-row-start:38}.week-span-37{grid-row-end:span 37}.week-rows-37{grid-template-rows:repeat(37,14px)}
.week-start-38{grid-row-start:39}.week-span-38{grid-row-end:span 38}.week-rows-38{grid-template-rows:repeat(38,14px)}
.week-start-39{grid-row-start:40}.week-span-39{grid-row-end:span 39}.week-rows-39{grid-template-rows:repeat(39,14px)}
.week-start-40{grid-row-start:41}.week-span-40{grid-row-end:span 40}.week-rows-40{grid-template-rows:repeat(40,14px)}
.week-start-41{grid-row-start:42}.week-span-41{grid-row-end:span 41}.week-rows-41{grid-template-rows:repeat(41,14px)}
.week-start-42{grid-row-start:43}.week-span-42{grid-row-end:span 42}.week-rows-42{grid-template-rows:repeat(42,14px)}
.week-start-43{grid-row-start:44}.week-span-43{grid-row-end:span 43}.week-rows-43{grid-template-rows:repeat(43,14px)}
.week-start-44{grid-row-start:45}.week-span-44{grid-row-end:span 44}.week-rows-44{grid-template-rows:repeat(44,14px)}
.week-start-45{grid-row-start:46}.week-span-45{grid-row-end:span 45}.week-rows-45{grid-template-rows:repeat(45,14px)}
.week-start-46{grid-row-start:47}.week-span-46{grid-row-end:span 46}.week-rows-46{grid-template-rows:repeat(46,14px)}
.week-start-47{grid-row-start:48}.week-span-47{grid-row-end:span 47}.week-rows-47{grid-template-rows:repeat(47,14px)}
.week-start-48{grid-row-start:49}.week-span-48{grid-row-end:span 48}.week-rows-48{grid-template-rows:repeat(48,14px)}
.week-start-49{grid-row-start:50}.week-span-49{grid-row-end:span 49}.week-rows-49{grid-template-rows:repeat(49,14px)}
.week-start-50{grid-row-start:51}.week-span-50{grid-row-end:span 50}.week-rows-50{grid-template-rows:repeat(50,14px)}
.week-start-51{grid-row-start:52}.week-span-51{grid-row-end:span 51}.week-rows-51{grid-template-rows:repeat(51,14px)}
.week-start-52{grid-row-start:53}.week-span-52{grid-row-end:span 52}.week-rows-52{grid-template-rows:repeat(52,14px)}
.week-start-53{grid-row-start:54}.week-span-53{grid-row-end:span 53}.week-rows-53{grid-template-rows:repeat(53,14px)}
.week-start-54{grid-row-start:55}.week-span-54{grid-row-end:span 54}.week-rows-54{grid-template-rows:repeat(54,14px)}
.week-start-55{grid-row-start:56}.week-span-55{grid-row-end:span 55}.week-rows-55{grid-template-rows:repeat(55,14px)}
.week-start-56{grid-row-start:57}.week-span-56{grid-row-end:span 56}.week-rows-56{grid-template-rows:repeat(56,14px)}
.week-start-57{grid-row-start:58}.week-span-57{grid-row-end:span 57}.week-rows-57{grid-template-rows:repeat(57,14px)}
.week-start-58{grid-row-start:59}.week-span-58{grid-row-end:span 58}.week-rows-58{grid-template-rows:repeat(58,14px)}
.week-start-59{grid-row-start:60}.week-span-59{grid-row-end:span 59}.week-rows-59{grid-template-rows:repeat(59,14px)}
.week-start-60{grid-row-start:61}.week-span-60{grid-row-end:span 60}.week-rows-60{grid-template-rows:repeat(60,14px)}
.week-start-61{grid-row-start:62}.week-span-61{grid-row-end:span 61}.week-rows-61{grid-template-rows:repeat(61,14px)}
.week-start-62{grid-row-start:63}.week-span-62{grid-row-end:span 62}.week-rows-62{grid-template-rows:repeat(62,14px)}
.week-start-63{grid-row-start:64}.week-span-63{grid-row-end:span 63}.week-rows-63{grid-template-rows:repeat(63,14px)}
.week-start-64{grid-row-start:65}.week-span-64{grid-row-end:span 64}.week-rows-64{grid-template-rows:repeat(64,14px)}
.week-start-65{grid-row-start:66}.week-span-65{grid-row-end:span 65}.week-rows-65{grid-template-rows:repeat(65,14px)}
.week-start-66{grid-row-start:67}.week-span-66{grid-row-end:span 66}.week-rows-66{grid-template-rows:repeat(66,14px)}
.week-start-67{grid-row-start:68}.week-span-67{grid-row-end:span 67}.week-rows-67{grid-template-rows:repeat(67,14px)}
.week-start-68{grid-row-start:69}.week-span-68{grid-row-end:span 68}.week-rows-68{grid-template-rows:repeat(68,14px)}
.week-start-69{grid-row-start:70}.week-span-69{grid-row-end:span 69}.week-rows-69{grid-template-rows:repeat(69,14px)}
.week-start-70{grid-row-start:71}.week-span-70{grid-row-end:span 70}.week-rows-70{grid-template-rows:repeat(70,14px)}
.week-start-71{grid-row-start:72}.week-span-71{grid-row-end:span 71}.week-rows-71{grid-template-rows:repeat(71,14px)}
.week-start-72{grid-row-start:73}.week-span-72{grid-row-end:span 72}.week-rows-72{grid-template-rows:repeat(72,14px)}
.week-start-73{grid-row-start:74}.week-span-73{grid-row-end:span 73}.week-rows-73{grid-template-rows:repeat(73,14px)}
.week-start-74{grid-row-start:75}.week-span-74{grid-row-end:span 74}.week-rows-74{grid-template-rows:repeat(74,14px)}
.week-start-75{grid-row-start:76}.week-span-75{grid-row-end:span 75}.week-rows-75{grid-template-rows:repeat(75,14px)}
.week-start-76{grid-row-start:77}.week-span-76{grid-row-end:span 76}.week-rows-76{grid-template-rows:repeat(76,14px)}
.week-start-77{grid-row-start:78}.week-span-77{grid-row-end:span 77}.week-rows-77{grid-template-rows:repeat(77,14px)}
.week-start-78{grid-row-start:79}.week-span-78{grid-row-end:span 78}.week-rows-78{grid-template-rows:repeat(78,14px)}
.week-start-79{grid-row-start:80}.week-span-79{grid-row-end:span 79}.week-rows-79{grid-template-rows:repeat(79,14px)}
.week-start-80{grid-row-start:81}.week-span-80{grid-row-end:span 80}.week-rows-80{grid-template-rows:repeat(80,14px)}
.week-start-81{grid-row-start:82}.week-span-81{grid-row-end:span 81}.week-rows-81{grid-template-rows:repeat(81,14px)}
.week-start-82{grid-row-start:83}.week-span-82{grid-row-end:span 82}.week-rows-82{grid-template-rows:repeat(82,14px)}
.week-start-83{grid-row-start:84}.week-span-83{grid-row-end:span 83}.week-rows-83{grid-template-rows:repeat(83,14px)}
.week-start-84{grid-row-start:85}.week-span-84{grid-row-end:span 84}.week-rows-84{grid-template-rows:repeat(84,14px)}
.week-start-85{grid-row-start:86}.week-span-85{grid-row-end:span 85}.week-rows-85{grid-template-rows:repeat(85,14px)}
.week-start-86{grid-row-start:87}.week-span-86{grid-row-end:span 86}.week-rows-86{grid-template-rows:repeat(86,14px)}
.week-start-87{grid-row-start:88}.week-span-87{grid-row-end:span 87}.week-rows-87{grid-template-rows:repeat(87,14px)}
.week-start-88{grid-row-start:89}.week-span-88{grid-row-end:span 88}.week-rows-88{grid-template-rows:repeat(88,14px)}
.week-start-89{grid-row-start:90}.week-span-89{grid-row-end:span 89}.week-rows-89{grid-template-rows:repeat(89,14px)}
.week-start-90{grid-row-start:91}.week-span-90{grid-row-end:span 90}.week-rows-90{grid-template-rows:repeat(90,14px)}
.week-start-91{grid-row-start:92}.week-span-91{grid-row-end:span 91}.week-rows-91{grid-template-rows:repeat(91,14px)}
.week-start-92{grid-row-start:93}.week-span-92{grid-row-end:span 92}.week-rows-92{grid-template-rows:repeat(92,14px)}
.week-start-93{grid-row-start:94}.week-span-93{grid-row-end:span 93}.week-rows-93{grid-template-rows:repeat(93,14px)}
.week-start-94{grid-row-start:95}.week-span-94{grid-row-end:span 94}.week-rows-94{grid-template-rows:repeat(94,14px)}
.week-start-95{grid-row-start:96}.week-span-95{grid-row-end:span 95}.week-rows-95{grid-template-rows:repeat(95,14px)}
.week-start-96{grid-row-start:97}.week-span-96{grid-row-end:span 96}.week-rows-96{grid-template-rows:repeat(96,14px)}
.club-form.cash-calendar-form{max-width:none;min-width:0}.cash-calendar-form>*{min-width:0}
