:root{--scc-navy:#14213d;--scc-blue:#294365;--scc-accent:#f79a75;--scc-bg:#f5f7fb;--scc-line:#e2e8f0}.scc-admin-wrap{max-width:1320px;margin:26px 20px}.scc-app{box-sizing:border-box;padding:42px clamp(18px,5vw,70px);background:var(--scc-bg);color:#1e293b;font-family:inherit}.scc-topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 auto 26px;max-width:1220px}.scc-kicker{display:block;color:#1d6fb8;font-size:11px;font-weight:800;letter-spacing:.13em}.scc-topbar h1{margin:7px 0 0;color:var(--scc-navy);font-size:clamp(32px,4vw,52px);line-height:1.05}.scc-primary{border:0;border-radius:999px;background:var(--scc-accent);color:#fff;padding:12px 19px;font:inherit;font-size:14px;font-weight:800;cursor:pointer}.scc-primary:hover{background:#e9825d}.scc-calendar-card{max-width:1220px;margin:auto;overflow:hidden;border:1px solid var(--scc-line);border-radius:16px;background:#fff;box-shadow:0 8px 26px #14213d0d}.scc-toolbar{display:flex;align-items:center;gap:9px;padding:18px 20px;border-bottom:1px solid var(--scc-line)}.scc-toolbar button{min-width:33px;border:1px solid #d5deeb;border-radius:7px;background:#fff;color:var(--scc-navy);padding:7px 10px;font:inherit;font-weight:700;cursor:pointer}.scc-toolbar h2{margin:0 0 0 8px;color:var(--scc-navy);font-size:21px}.scc-view-label{margin-left:auto;color:#64748b;font-size:13px;font-weight:700}.scc-weekdays,.scc-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.scc-weekdays{border-bottom:1px solid var(--scc-line);background:#f8fafc}.scc-weekdays span{padding:10px 12px;color:#64748b;font-size:11px;font-weight:800;text-transform:uppercase}.scc-day{min-height:130px;padding:8px;border-right:1px solid var(--scc-line);border-bottom:1px solid var(--scc-line);background:#fff}.scc-day:nth-child(7n){border-right:0}.scc-day.is-outside{background:#fafcff}.scc-day-number{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;color:#475569;font-size:13px;font-weight:700}.scc-day.is-today .scc-day-number{background:var(--scc-blue);color:#fff}.scc-event{display:block;width:100%;margin-top:6px;overflow:hidden;border:0;border-left:3px solid var(--scc-accent);border-radius:4px;background:#fff3ee;color:var(--scc-navy);padding:5px 6px;text-align:left;text-decoration:none;font:inherit;font-size:11px;font-weight:700;line-height:1.3;cursor:pointer;white-space:nowrap;text-overflow:ellipsis}.scc-event:hover{background:#fde8df}.scc-modal{position:fixed;z-index:99999;inset:0;display:flex;align-items:center;justify-content:center;padding:18px;background:#14213d88}.scc-modal-panel{position:relative;width:min(560px,100%);padding:32px;border-radius:16px;background:#fff;box-shadow:0 18px 60px #0004}.scc-modal-panel h2{margin:8px 0 22px;color:var(--scc-navy);font-size:28px}.scc-modal-close{position:absolute;top:14px;right:16px;border:0;background:transparent;color:#64748b;font-size:28px;cursor:pointer}.scc-modal label{display:block;margin-bottom:16px;color:#334155;font-size:13px;font-weight:800}.scc-modal input{display:block;box-sizing:border-box;width:100%;margin-top:6px;border:1px solid #d4dfec;border-radius:8px;padding:11px 12px;background:#fff;color:#1e293b;font:inherit;font-weight:400}.scc-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.scc-search-results{display:grid;gap:4px;margin:-8px 0 11px}.scc-search-results button{border:1px solid #e0e8f1;border-radius:7px;background:#f8fafc;padding:9px 11px;color:#294365;text-align:left;font:inherit;font-size:13px;font-weight:700;cursor:pointer}.scc-search-results button:hover{border-color:#91a9c8;background:#f1f6fb}.scc-selected-course{min-height:20px;margin:0 0 15px;color:#64748b;font-size:13px}.scc-form-error{margin:0 0 14px;padding:9px 10px;border-radius:7px;background:#fff1f2;color:#a21c35;font-size:13px}.scc-public-dates{margin:34px 0;padding:24px;border:1px solid var(--scc-line);border-radius:14px;background:#f8fbff}.scc-public-dates h2{margin:8px 0 14px;color:var(--scc-navy);font-size:25px}.scc-public-dates ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.scc-public-dates li{display:flex;justify-content:space-between;gap:14px;padding:12px 14px;border-radius:8px;background:#fff;color:#334155}.scc-public-dates li span{color:#64748b;font-size:14px}@media(max-width:700px){.scc-app{padding:24px 12px}.scc-topbar{align-items:flex-start;flex-direction:column}.scc-toolbar{flex-wrap:wrap}.scc-toolbar h2{order:2;width:100%;margin-left:0}.scc-weekdays span{padding:8px 3px;text-align:center;font-size:9px}.scc-day{min-height:84px;padding:4px}.scc-day-number{width:24px;height:24px;font-size:11px}.scc-event{padding:4px;font-size:9px}.scc-form-grid{grid-template-columns:1fr}.scc-public-dates li{align-items:flex-start;flex-direction:column;gap:4px}.scc-modal-panel{padding:26px 20px}.scc-admin-wrap{margin:10px}.scc-admin-wrap .scc-app{padding:18px}}
.ssm-dashboard-page .ssm-front .scc-app{padding:0;background:transparent}.ssm-dashboard-page .ssm-front .scc-topbar{margin-bottom:22px}.ssm-dashboard-page .ssm-front .scc-topbar h1{font-size:34px}.ssm-dashboard-page .ssm-front .scc-calendar-card{max-width:none}
.scc-views{display:flex;gap:4px;margin-left:auto}.scc-views button{min-width:auto;padding:7px 10px;color:#52647d;font-size:12px}.scc-views button.is-active{border-color:var(--scc-blue);background:var(--scc-blue);color:#fff}.scc-day-label{display:none}.scc-view-week .scc-day{min-height:310px}.scc-view-day .scc-grid{grid-template-columns:1fr}.scc-view-day .scc-day{min-height:500px;border-right:0}.scc-view-day .scc-day-label{display:block;margin:3px 0 12px;color:#64748b;font-size:13px;font-weight:800}.scc-event-panel{width:min(480px,100%)}.scc-event-date{margin:0 0 14px;color:#64748b;font-size:14px;line-height:1.5}.scc-course-link{display:inline-flex;align-items:center;gap:6px;margin:0 0 24px;color:#1d6fb8;font-size:14px;font-weight:800;text-decoration:none}.scc-course-link:hover{text-decoration:underline}.scc-event-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:12px}.scc-secondary,.scc-danger{border:1px solid #d6e0ec;border-radius:999px;background:#fff;padding:10px 15px;color:var(--scc-navy);font:inherit;font-size:13px;font-weight:800;cursor:pointer}.scc-danger{border-color:#f4b9b9;color:#b42318}.scc-danger:hover{background:#fff1f1}.scc-secondary:hover{background:#f5f8fc}@media(max-width:700px){.scc-views{order:3;width:100%;margin-left:0}.scc-views button{flex:1}.scc-view-week .scc-day{min-height:175px}.scc-view-day .scc-day{min-height:380px}.scc-event-actions{align-items:stretch;flex-direction:column}.scc-event-actions button{width:100%}}
