@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Manrope:wght@700;800&display=swap');

/* Option 4: compact class cards with bold days and split timetable columns. */
:is(#noticeboard-classes,#app-board-classes){font-family:'Inter',var(--sans);-webkit-font-smoothing:antialiased}
.noticeboard-ready #noticeboard-classes{align-content:start;grid-auto-rows:max-content}
:is(#noticeboard-classes,#app-board-classes) .noticeboard-section{border:0;border-radius:9px}
:is(#noticeboard-classes,#app-board-classes) .notice-event{display:grid;grid-template-columns:59px minmax(0,1fr);gap:10px;padding:5px}
:is(#noticeboard-classes,#app-board-classes) .notice-schedule-date{display:flex;min-height:78px;gap:4px;padding:7px 3px;border-radius:6px}
:is(#noticeboard-classes,#app-board-classes) .notice-schedule-date>.icon{width:17px;height:17px}
:is(#noticeboard-classes,#app-board-classes) .notice-schedule-day{font-family:'Manrope',var(--sans);font-size:1.25rem;font-weight:800;line-height:1.15;letter-spacing:0}
:is(#noticeboard-classes,#app-board-classes) .notice-event-body{align-self:center;padding:4px 5px 4px 0;min-width:0}
:is(#noticeboard-classes,#app-board-classes) .notice-class-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:2px 8px;margin:0 0 4px}
:is(#noticeboard-classes,#app-board-classes) .notice-event-title{display:block;flex:1 1 130px;font-family:'Manrope',var(--sans);font-size:.9375rem;font-weight:800;line-height:1.35;letter-spacing:-.016em;color:#18324e;overflow-wrap:normal}
:is(#noticeboard-classes,#app-board-classes) .notice-class-apply{flex:0 0 auto;min-height:26px;margin:0;padding:4px 0;border-radius:3px;background:transparent;color:#25559f;font-family:'Inter',var(--sans);font-size:.71875rem;font-weight:600;line-height:1.3;letter-spacing:-.01em;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
:is(#noticeboard-classes,#app-board-classes) .notice-class-apply:hover{color:#15386e;background:transparent;filter:none}
.notice-class-times{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;min-width:0;color:#223c59;font-size:.78125rem;line-height:1.4;font-variant-numeric:tabular-nums}
.notice-class-times-single{grid-template-columns:minmax(0,1fr)}
.notice-class-time{min-width:0;padding:4px 7px;border-radius:5px;background:#fff}
.notice-class-time small{display:block;margin-bottom:1px;color:#556a80;font-size:.71875rem;font-weight:500;line-height:1.4}
.notice-class-time strong{display:block;font-weight:600;line-height:1.4;white-space:nowrap}
@media(max-width:390px){
  :is(#noticeboard-classes,#app-board-classes) .notice-event{grid-template-columns:54px minmax(0,1fr);gap:8px}
  :is(#noticeboard-classes,#app-board-classes) .notice-event-title{font-size:.875rem}
  .notice-class-times{gap:4px}
  .notice-class-time{padding-inline:4px}
}
@media(max-width:359px){.notice-class-time strong{white-space:normal}}
@media(any-pointer:coarse){:is(#noticeboard-classes,#app-board-classes) .notice-class-apply{min-height:44px}}
