.calendar-panel {border:1px solid #a88946;border-radius:12px;padding:22px;margin:24px 0;color:inherit;background:#151515}
.calendar-panel h2,.calendar-panel h3 {color:#dfc07a}
.calendar-warning {border-left:3px solid #dfc07a;padding:9px 12px;background:#282416}
.calendar-nav {display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;margin:18px 0}
.calendar-nav button,.calendar-form button {background:#dfc07a;color:#171717;border:0;padding:10px 14px;border-radius:6px;cursor:pointer}
.calendar-grid {display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center}
.calendar-grid>strong {font-size:.8em;padding:8px 0}
.calendar-day {min-height:64px;border:1px solid #645637;border-radius:5px;padding:6px;display:flex;flex-direction:column;gap:5px}
.calendar-day small {background:#746035;padding:3px;font-size:.7em;border-radius:3px}
.calendar-entry {padding:12px;border-bottom:1px solid #645637;display:flex;gap:8px;align-items:flex-start;flex-wrap:wrap}
.calendar-entry div {flex:1 1 200px}
.calendar-entry small {word-break:break-word;color:#d1bb84}
.calendar-entry select {min-width:110px}
.calendar-form {display:grid;gap:12px;padding:16px 0;max-width:550px}
.calendar-form label {display:flex;flex-direction:column;gap:5px}
.calendar-form input {max-width:100%;box-sizing:border-box;padding:10px}
.cal-help {font-size:.85em}
@media(max-width:530px){.calendar-panel{padding:12px}.calendar-day{min-height:49px;font-size:12px;padding:3px}.calendar-day small{font-size:10px}}
