:root{--ink:#000;--paper:#fff;--muted:#59605a;--line:#d8dbd8;--lime:#f0f1ef;--red:#8d1d2d;--accent:#8d1d2d}
body,.content,.login-shell,.login-panel{background:#fff;color:#000}
.login-brand{background:#f0f1ef;color:#000}
.login-brand h1 span{-webkit-text-stroke-color:#000}
.login-brand::after{background:#59605a}
.btn,.btn-ghost{background:#000;border-color:#000;color:#fff}
.btn:hover,.btn-ghost:hover{background:#8d1d2d;border-color:#8d1d2d;color:#fff}
.nav a:hover,.nav a.active{background:#f0f1ef;border-color:#8d1d2d;color:#000}
.nav a.active{border-left-width:5px}
.notice,.password-result,.calendar-event{background:#f0f1ef;color:#000}
.calendar-event{border-left:3px solid #8d1d2d}
.calendar-weekday,.data-table th,.doc-category h2{background:#eceeeb;color:#000}
.calendar-day.empty,.calendar-event.cancelled{background:#f5f5f4}
.data-table tbody tr:nth-child(even) td,.event-list .event-row:nth-child(even),.doc-category li:nth-child(even),.raw-row:nth-child(even){background:#f0f1ef}
.data-table tbody tr:nth-child(odd) td,.event-list .event-row:nth-child(odd),.doc-category li:nth-child(odd),.raw-row:nth-child(odd){background:#fff}
.data-table tbody tr:hover td{background:#e4e6e3}
.menu-button{background:#000;border-color:#000;color:#fff}
.menu-button:hover{background:#8d1d2d;border-color:#8d1d2d;color:#fff}
.badge{border-color:#bfc4bf}
.event-list .event-date{padding:8px 12px;text-align:center;align-self:center;line-height:1.5}
.event-list .event-row>.badge{display:none}
.content>.event-list{display:none}
.category-events{margin:32px 0 48px}
.resizable-events:not(.layout-editing) .column-grip,.resizable-events:not(.layout-editing) .column-drag-handle{display:none}
.table-wrap .resizable-events:not(.layout-editing) th{cursor:default}
.table-wrap .resizable-events.layout-editing{outline:2px dashed #8d1d2d;outline-offset:-2px}
.table-wrap .resizable-events td[data-column="0"]{white-space:normal!important;overflow-wrap:anywhere;word-break:normal}
.table-wrap .resizable-events td[data-column="0"] .event-time-parts{display:flex;flex-wrap:wrap;max-width:100%;gap:4px}
.table-wrap .resizable-events td[data-column="0"] .event-time-parts>span{white-space:normal;overflow-wrap:anywhere;min-width:0}
.column-help{font-size:13px;color:#59605a;line-height:1.5;margin:12px 0}
.column-drag-handle{display:inline-block;margin-right:8px;font-size:20px;vertical-align:middle;color:#59605a;cursor:grab}
.resizable-events th[draggable]{cursor:grab}.resizable-events th[draggable]:active{cursor:grabbing}
.table-wrap .resizable-events th.column-dragging{opacity:.45}
.table-wrap .resizable-events th.column-drop-target{background:#e4d5d8;box-shadow:inset 4px 0 #8d1d2d}
.table-wrap .resizable-events td,.table-wrap .resizable-events th{white-space:normal!important;overflow-wrap:anywhere;word-break:normal}
.table-wrap .resizable-events .event-time-parts{max-width:100%}
.table-wrap:has(.event-status-form){max-height:75vh;overflow:auto;position:relative;isolation:isolate}
.table-wrap:has(.event-status-form) .data-table th{position:sticky;top:0;z-index:3;background:#eceeeb;box-shadow:0 1px 0 #000}
.table-wrap .resizable-events th,.table-wrap .resizable-events td{min-width:0!important;max-width:none!important;overflow:hidden;box-sizing:border-box}
.table-wrap .resizable-events td:nth-child(2)>strong{min-width:0!important;max-width:none!important}
.table-wrap .resizable-events .event-status-form{min-width:0;width:100%}
.content:has(.event-status-form)>.page-title>span{display:block;margin-top:24px}
.content:has(.event-status-form)>.page-title{letter-spacing:-.045em}
.event-row-actions{display:flex;gap:6px;margin-top:10px}.event-row-actions .btn{min-height:28px;padding:4px 10px;font-size:11px}
.data-table th{position:relative}.column-grip{position:absolute;right:0;top:0;bottom:0;width:9px;cursor:col-resize;touch-action:none;background:#8884}.column-grip:hover{background:#8d1d2d}
dialog{width:min(600px,95vw);max-height:90vh;overflow:auto;border:1px solid #000;padding:24px}dialog::backdrop{background:#0007}dialog textarea{min-height:140px;padding:12px}
.event-status-form{display:grid;gap:8px;min-width:170px}
.event-status-form{gap:5px;min-width:140px}
.event-status-form .select{min-height:32px;padding:4px 8px;font-size:12px}
.event-status-form .btn{min-height:28px;padding:4px 10px;font-size:11px;justify-self:start}
.table-wrap:has(.event-status-form) .data-table{width:max-content;min-width:0;table-layout:auto}
.table-wrap:has(.event-status-form) .data-table th,.table-wrap:has(.event-status-form) .data-table td{width:auto;min-width:0;white-space:nowrap}
.table-wrap:has(.event-status-form) .data-table td:nth-child(2){white-space:normal;max-width:540px}
.table-wrap:has(.event-status-form) .data-table td:nth-child(2)>strong{min-width:220px;max-width:540px}
.table-wrap:has(.event-status-form) .event-status-form{min-width:0;width:max-content}
.table-wrap:has(.event-status-form) .event-status-form .select{width:auto}
.table-wrap:has(.event-status-form) .data-table th:first-child,.table-wrap:has(.event-status-form) .data-table td:first-child{padding:10px 8px;white-space:normal;overflow-wrap:normal}
.event-time-parts{display:inline-flex;flex-wrap:wrap;column-gap:4px;row-gap:2px}.event-time-parts>span{white-space:nowrap}
.data-table th:nth-child(2),.data-table td:nth-child(2){min-width:360px;width:38%}
.data-table td:nth-child(2)>strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;line-height:1.35}
.event-list .event-row{grid-template-columns:120px 1.4fr 1fr}
.event-list .event-row>:nth-child(3){grid-column:auto}
@media(max-width:760px){.event-list .event-row{grid-template-columns:82px 1fr}.event-list .event-row>:nth-child(3){grid-column:2}}
