.rotation-app{--rc-work:#f3a45e;--rc-work-bg:#493321;--rc-off:#c1d5cf;--rc-off-bg:#203532;--rc-travel:#9ed9ee;--rc-travel-bg:#1c3945;--rc-leave:#d1bbf0;--rc-leave-bg:#352c49;padding:28px;letter-spacing:0;color:var(--v4-ink);background:var(--v4-canvas)}
.rotation-app *{box-sizing:border-box;letter-spacing:0}
.rotation-app [hidden]{display:none!important}
.rotation-configuration summary{cursor:pointer;padding:16px 0;color:var(--v4-ink);font-size:13px}
.rotation-configuration summary>span+span{float:right;color:var(--v4-muted);font-size:12px}
.rotation-app .rc-primary{background:var(--v4-orange)!important;border-color:var(--v4-orange)!important;color:#101b1d!important}
.rotation-month h3 small{text-transform:none}
.rotation-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:12px 0 24px;border-bottom:1px solid var(--v4-line)}
.rotation-heading h1{font-size:34px;line-height:1.2;margin:10px 0}
.rotation-heading p{margin:0;color:var(--v4-copy);font-size:16px}
.rotation-kicker{font-size:11px;font-weight:700;color:var(--v4-orange-dark)}
.rotation-account{display:flex;align-items:center;gap:12px;max-width:300px;color:var(--v4-muted);font-size:13px}
.rotation-account .rc-icon{width:24px;height:24px;flex:none;color:var(--v4-orange)}
.rotation-settings{display:grid;grid-template-columns:1.1fr 1.4fr 1fr 1fr auto;gap:16px;align-items:end;padding:24px 0}
.rotation-app label{display:grid;gap:8px;font-size:12px;font-weight:600;color:var(--v4-copy);min-width:0}
.rotation-app :is(input,select){width:100%;min-width:0;background:var(--v4-field);color:var(--v4-ink);border:1px solid var(--v4-line-strong);border-radius:4px;padding:10px 12px;font:inherit;font-size:14px;min-height:44px}
.rotation-app button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;border:1px solid var(--v4-line);background:var(--v4-field);color:var(--v4-ink);border-radius:4px;font:inherit;font-size:13px;font-weight:600;padding:8px 12px;cursor:pointer}
.rotation-app button:hover{border-color:var(--v4-orange)}
.rotation-app button:disabled{opacity:.45;cursor:default}
.rotation-app :is(button,input,select):focus-visible{outline:2px solid var(--v4-orange);outline-offset:3px}
.rotation-app .rc-primary{background:var(--v4-orange);border-color:var(--v4-orange);color:#101b1d;min-height:44px}
.rotation-app .rc-icon-button{width:42px;height:42px;padding:10px;flex:none}
.rc-icon{display:inline-block;width:18px;height:18px;background:currentColor;mask:var(--rc-icon) center/contain no-repeat;-webkit-mask:var(--rc-icon) center/contain no-repeat}
.icon-chevron-left{--rc-icon:url('/assets/icons/calendar/chevron-left.svg')}.icon-chevron-right{--rc-icon:url('/assets/icons/calendar/chevron-right.svg')}.icon-download{--rc-icon:url('/assets/icons/calendar/download.svg')}.icon-printer{--rc-icon:url('/assets/icons/calendar/printer.svg')}.icon-calendar-check{--rc-icon:url('/assets/icons/calendar/calendar-check.svg')}.icon-x{--rc-icon:url('/assets/icons/calendar/x.svg')}
.rotation-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-block:1px solid var(--v4-line);background:var(--v4-band);margin-bottom:24px}
.rotation-summary>div{padding:16px 20px;border-right:1px solid var(--v4-line)}
.rotation-summary>div:last-child{border:0}
.rotation-summary small{display:block;color:var(--v4-muted);font-size:11px;margin-bottom:4px}
.rotation-summary strong{font-size:24px;font-weight:600}.rotation-summary strong.work{color:var(--rc-work)}
.rotation-toolbar,.rotation-period,.rotation-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.rotation-toolbar{justify-content:space-between}.rotation-period h2{font-size:21px;margin:0;min-width:70px;text-align:center;text-transform:none}
.rotation-segments{display:flex}.rotation-segments button{border-radius:0}.rotation-segments button:first-child{border-radius:4px 0 0 4px}.rotation-segments button:last-child{border-radius:0 4px 4px 0}
.rotation-segments [aria-pressed=true]{background:var(--v4-teal-soft);border-color:var(--v4-teal);color:var(--v4-ink)}
.rotation-legend{display:flex;flex-wrap:wrap;gap:12px 24px;margin:20px 0;font-size:12px;color:var(--v4-copy)}
.rotation-legend>span{display:flex;align-items:center;gap:7px}.swatch{width:12px;height:12px;display:inline-block;border:1px solid var(--v4-line-strong);border-radius:2px}
.rotation-app .work{background:var(--rc-work-bg);color:var(--rc-work)}.rotation-app .off{background:var(--rc-off-bg);color:var(--rc-off)}.rotation-app .travel{background:var(--rc-travel-bg);color:var(--rc-travel)}.rotation-app .leave{background:var(--rc-leave-bg);color:var(--rc-leave)}
.rotation-legend .work{border-color:var(--rc-work)}.rotation-legend .travel{border-color:var(--rc-travel)}.rotation-legend .leave{border-color:var(--rc-leave)}
.rotation-months{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.rotation-month{border:1px solid var(--v4-line);border-radius:6px;background:var(--v4-paper-2);padding:16px;min-width:0}
.rotation-month h3{display:flex;align-items:center;justify-content:space-between;font-size:16px;margin:0 0 12px;text-transform:capitalize}.rotation-month h3 small{font-size:11px;font-weight:400;color:var(--v4-muted)}
.rotation-month table{border-collapse:separate;border-spacing:3px;table-layout:fixed;width:100%;font-size:12px}
.rotation-month th{font-weight:400;color:var(--v4-muted);height:26px}.rotation-month th:first-child{width:26px;font-size:10px}
.rotation-month td{padding:0;text-align:center;height:32px}.rotation-month button{position:relative;width:100%;height:32px;min-height:32px;padding:0;font-size:12px;border-color:transparent;border-radius:3px;font-weight:500}
.rotation-month button.none{color:var(--v4-muted);background:transparent}
.rotation-month button.is-today{outline:2px solid var(--v4-ink);outline-offset:-2px;font-weight:800}
.rotation-month button.is-edited::after{content:'';position:absolute;width:4px;height:4px;border-radius:50%;background:currentColor;bottom:2px;right:3px}
.rotation-months.is-month{grid-template-columns:minmax(0,1fr)}.rotation-months.is-month td,.rotation-months.is-month button{height:76px}.rotation-months.is-month button{font-size:18px}
.rotation-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px 0 0}.rotation-bottom p{max-width:760px;font-size:12px;color:var(--v4-muted);line-height:1.6;margin:0}.rotation-bottom button{flex:none}
.rotation-error{padding:12px;border-left:3px solid #ef806a;color:#ffb5a8;background:#39272a;font-size:14px}
.rotation-app dialog{width:min(440px,calc(100% - 32px));max-height:90vh;border:1px solid var(--v4-line-strong);border-radius:8px;background:var(--v4-paper);color:var(--v4-ink);padding:24px;margin:auto}
.rotation-app dialog::backdrop{background:#0009}.rotation-app dialog form{display:grid;gap:20px}.rotation-app dialog header{display:flex;justify-content:space-between;align-items:center;gap:12px}.rotation-app dialog h2{font-size:20px;margin:0}.rotation-app dialog p{font-size:13px;color:#ffb5a8}
@media(min-width:1500px){.rotation-months{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1000px){.rotation-settings{grid-template-columns:repeat(4,minmax(0,1fr))}.rotation-settings>button{grid-column:1/-1;justify-self:end}.rotation-months{grid-template-columns:repeat(2,minmax(0,1fr))}.rotation-toolbar{gap:20px}}
@media(max-width:620px){.rotation-app{padding:16px}.rotation-heading{align-items:flex-start;flex-direction:column;gap:16px}.rotation-heading h1{font-size:28px}.rotation-settings{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.rotation-settings>button{width:100%}.rotation-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.rotation-summary>div{padding:12px;border-bottom:1px solid var(--v4-line)}.rotation-summary strong{font-size:20px}.rotation-months{grid-template-columns:minmax(0,1fr);gap:16px}.rotation-month{padding:12px}.rotation-month td,.rotation-month button{height:36px}.rotation-actions{gap:8px;width:100%}.rotation-actions>.rc-primary{flex-grow:1}.rotation-months.is-month td,.rotation-months.is-month button{height:48px}.rotation-bottom{flex-direction:column;align-items:flex-start}.rotation-period{gap:8px}.rotation-period h2{font-size:18px}}
@media print{body.oh-rotation-page{background:white!important;color:black!important}.oh-rotation-page .page{width:100%!important;max-width:none!important;margin:0!important;border:0!important}.oh-rotation-page :is(.oh-real-header,.oh-reference-footer,.rotation-settings,.rotation-toolbar,.rotation-bottom button,.rotation-account,.rotation-error,dialog,#google_translate_element){display:none!important}.rotation-app{padding:0;background:white;color:black;print-color-adjust:exact;-webkit-print-color-adjust:exact}.rotation-heading{padding:0 0 12px}.rotation-heading h1{font-size:24px}.rotation-summary{margin:12px 0;background:#eee;color:black}.rotation-months,.rotation-months.is-month{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.rotation-month{break-inside:avoid;background:white;border-color:#999;padding:8px}.rotation-month td,.rotation-month button,.rotation-months.is-month td,.rotation-months.is-month button{height:24px;min-height:24px;font-size:10px}.rotation-month h3{color:black;font-size:13px}.rotation-month th,.rotation-month h3 small{color:#555}.rotation-month button.none{color:#777}.rotation-bottom p,.rotation-legend,.rotation-heading p{color:#333}.rotation-kicker{color:#333}}
