.invite-hint{background:#fbf6f3;border:1px solid #ecddd8;border-radius:14px;padding:19px;margin-top:23px}
.invite-hint strong{font-size:14px;color:#5f2831}
.invite-hint p{font-size:13px;color:#82756e;line-height:1.6;margin:7px 0 15px}
.invite-hint button{background:#fff}
.auth-brand img,.rail-brand img,.mini-brand img{object-fit:contain}
@media(max-width:740px){.auth-layout{padding-top:max(26px,env(safe-area-inset-top));padding-bottom:max(24px,env(safe-area-inset-bottom))}.list-row{flex-wrap:wrap}.list-row .small-btn{margin-left:auto}.auth-card{box-shadow:0 20px 60px #5b201312}}
.day-tag.availability{background:#edf0fa;color:#48516f;border-left:2px solid #8797c0}
.day-tag.vacation{background:#e6f3ee;color:#2d6752;border-left:2px solid #6aaa90}
.shift.conflict{background:#fff1dc;border-left-color:#bd783b;box-shadow:inset 0 0 0 1px #eed2a2}
.shift .shift-conflict{color:#a05e22;font-weight:800}
.availability-preview{border:1px solid #e9c89a;background:#fff7e9;border-radius:13px;padding:15px;color:#714923;font-size:13px;line-height:1.5}
.availability-preview.clear{border-color:#b9ddca;background:#f0f8f2;color:#276b50}
.availability-preview strong{display:block;font-size:13px}
.availability-preview p{margin:8px 0 5px}
.availability-preview ul{padding-left:19px;margin:8px 0 13px}
.availability-preview .check-field{font-weight:750;padding-top:6px}
.availability-preview .check-field input{width:18px;height:18px;accent-color:#650b17}
.repeat-until{display:grid;gap:10px}
.editor-fields>.note{margin:-4px 0 0}
.editor-actions .danger{margin-right:auto;min-height:47px;border:1px solid #ecd2d5;background:#fff4f4;color:#9a2939;font-weight:750;padding:11px 15px;border-radius:12px}
.editor-actions .danger:hover{background:#fbe5e8}
@media(max-width:470px){.editor-actions{flex-wrap:wrap}.editor-actions .danger{width:100%;margin-right:0}.editor-actions .secondary,.editor-actions .primary{flex:1}}
.shift-applicants{margin-top:2px;font-weight:800;color:#734514;background:#fff7dd;border-radius:5px;padding:5px 4px}
.application-panel{margin-bottom:17px}
.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:6px}
.panel-heading h2{margin-bottom:5px}
.panel-heading .note{margin:0 0 8px}
.application-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.application-row .avatar{flex-shrink:0}
.approve-btn{background:#e9f4ed;color:#246548;border-color:#d1e7da}
.requests-grid{align-items:start}
.open-intro{display:flex;gap:12px;align-items:flex-start;background:#f3e5e6;border:1px solid #ecd4d8;border-radius:16px;color:#70414b;padding:17px 19px;font-size:13px;line-height:1.6;margin-bottom:17px}
.open-intro>span{flex:1}
.open-list{display:grid;gap:12px}
.open-card{display:flex;align-items:center;gap:20px;padding:19px 22px;background:#fff;border:1px solid #ebe2da;border-radius:18px;box-shadow:0 5px 22px #420d1407}
.open-date{flex:0 0 70px;min-height:76px;background:#f9e9e9;border-radius:13px;display:grid;place-items:center;align-content:center;gap:1px;color:#6f202d}
.open-date span{font-size:11px;font-weight:800;text-transform:uppercase}
.open-date strong{font-size:28px;line-height:1;font-weight:850}
.open-date small{font-size:11px;font-weight:750}
.open-details{flex:1;min-width:0}
.open-topline{display:flex;gap:6px;flex-wrap:wrap}
.open-tag{font-size:11px;font-weight:750;border-radius:20px;padding:5px 9px;color:#68323c;background:#f6e8e9}
.open-tag.light{color:#756f67;background:#f4f1ec}
.open-details h2{margin:9px 0 3px;font-size:24px;letter-spacing:-.04em}
.open-details p{margin:0;font-size:13px;color:#91857d}
.open-actions{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:9px;min-width:170px}
.open-actions .primary,.open-actions .secondary{white-space:nowrap;font-size:13px}
.open-warning{max-width:220px;font-size:12px;line-height:1.4;text-align:right;color:#975f28}
@media(max-width:740px){.open-card{gap:13px;padding:15px;flex-wrap:wrap}.open-date{flex-basis:56px;min-height:68px}.open-details h2{font-size:21px}.open-actions{flex-basis:100%;width:100%;align-items:stretch}.open-actions .primary,.open-actions .secondary{width:100%}.open-warning{max-width:none;text-align:left}.application-row{flex-wrap:wrap}.application-actions{width:100%;justify-content:flex-end}.mobile-nav .nav-button{font-size:9px;min-width:0}}
.notifications-shortcut{font-size:20px;min-width:42px;min-height:41px;border:1px solid #eadce0;border-radius:12px;background:#fff6f7}
.push-setup{margin-bottom:16px;background:linear-gradient(125deg,#fff 25%,#fdf4f4)}
.push-setup-heading{display:flex;align-items:center;gap:15px;margin-bottom:17px}
.push-setup-heading h2{margin:0 0 5px}
.push-setup-heading .note{margin:0}
.push-bell{width:58px;height:58px;display:grid;place-items:center;background:#f2e1e2;border-radius:16px;font-size:25px}
.push-controls{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:15px}
.push-preferences h2{margin-bottom:14px}
.notification-option{display:flex;justify-content:space-between;align-items:center;gap:15px;min-height:65px;border-top:1px solid #f0e8e1;padding:12px 3px;cursor:pointer}
.notification-option>span{display:grid;gap:5px}
.notification-option strong{font-size:14px}
.notification-option small{font-size:12px;color:#8b817a;line-height:1.5}
.notification-option input{flex:0 0 auto;appearance:none;width:46px;height:27px;background:#c8c2bd;border-radius:99px;position:relative;cursor:pointer;transition:background .16s}
.notification-option input:checked{background:#650b17}
.notification-option input:before{content:'';position:absolute;top:3px;left:3px;width:21px;height:21px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0002;transition:transform .16s}
.notification-option input:checked:before{transform:translateX(19px)}
.notification-option input:focus-visible{outline:3px solid #bd8e97;outline-offset:3px}
.push-help{font-size:13px;line-height:1.5;color:#74404a;background:#f5e7e7;border-radius:12px;padding:13px 15px;margin:15px 0 0}
@media(max-width:740px){.push-controls{display:grid;grid-template-columns:1fr}.push-controls button{width:100%}.notifications-shortcut{min-width:38px;min-height:36px;padding:4px}.main-top #refresh{font-size:11px}}
.template-intro{display:flex;align-items:center;gap:18px;background:linear-gradient(115deg,#6d101e,#862b35);border-radius:18px;padding:20px 23px;color:#fff;margin-bottom:21px;box-shadow:0 12px 26px #50111a16}
.template-intro-icon{font-size:31px;line-height:1;flex:0 0 49px;width:49px;height:49px;display:grid;place-items:center;border-radius:13px;background:#ffffff20}
.template-intro>div{flex:1;min-width:0}
.template-intro strong{display:block;font-size:17px;letter-spacing:-.025em}
.template-intro p{font-size:13px;line-height:1.6;color:#f2dfe1;margin:6px 0 0}
.template-intro .secondary{flex:0 0 auto;color:#6f1522;background:#fff;border:0}
.template-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;align-items:start}
.template-grid>.panel{grid-column:1/-1}
.template-card{display:flex;flex-direction:column;min-width:0;border:1px solid #eadfd9;border-radius:19px;background:#fff;box-shadow:0 8px 30px #310b1109;overflow:hidden}
.template-card-head{display:flex;justify-content:space-between;gap:12px;padding:22px 23px 16px}
.template-type{font-size:10px;letter-spacing:.15em;color:#8c5d64;font-weight:850}
.template-card-head h2{font-size:22px;letter-spacing:-.04em;line-height:1.15;margin:8px 0}
.template-card-head p{margin:0;color:#81766e;font-size:12px;line-height:1.5}
.template-decoration{flex:0 0 auto;background:#f7e8e9;color:#812232;border-radius:12px;display:grid;place-items:center;width:47px;height:47px;font-size:27px}
.template-slot-list{display:grid;gap:0;border-top:1px solid #f0e6e2;border-bottom:1px solid #f0e6e2;margin:0 23px;padding:9px 0}
.template-slot{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;padding:8px 0;font-size:13px;border-bottom:1px solid #f8f2ef}
.template-slot:last-of-type{border-bottom:0}
.template-slot strong{color:#452f31;font-size:13px}
.template-slot>span:not(.template-weekday){color:#746966}
.template-slot small{font-size:11px;color:#9b8d87}
.template-weekday{display:inline-flex;align-items:center;justify-content:center;width:34px;height:27px;background:#f9eeee;color:#7d2532;font-size:11px;font-weight:850;border-radius:7px}
.template-more{margin:8px 0;color:#8f7c76;font-size:12px}
.template-card-actions{display:flex;flex-wrap:wrap;gap:7px;padding:17px 23px 20px}
.template-card-actions .primary{flex:1 0 100%;min-height:45px}
.template-card-actions .small-btn{font-size:12px}
.template-card-actions .template-delete{margin-left:auto;color:#9b5260}
.template-safety{margin-top:18px;line-height:1.65}
.template-editor-summary{display:flex;align-items:center;justify-content:space-between;gap:15px;background:#f7e9e9;border:1px solid #ead6d6;padding:15px 17px;border-radius:13px;margin:0}
.template-editor-summary strong{color:#67212c;font-size:15px}
.template-editor-summary span{font-size:12px;color:#806b70;text-align:right}
@media(max-width:1050px){.template-grid{grid-template-columns:1fr}}
@media(max-width:740px){.template-intro{align-items:flex-start;flex-wrap:wrap;gap:12px;padding:18px}.template-intro-icon{width:39px;height:39px;flex-basis:39px;font-size:24px}.template-intro>div{flex-basis:calc(100% - 60px)}.template-intro .secondary{width:100%}.template-card-head{padding:18px 18px 15px}.template-slot-list{margin:0 18px}.template-card-actions{padding:15px 18px 18px}.template-card-head h2{font-size:20px}.template-editor-summary{flex-direction:column;align-items:flex-start}.template-editor-summary span{text-align:left}}
.worktime-panel{margin-top:17px}
.worktime-title{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:23px}
.worktime-title .kicker{margin:0 0 7px;color:#99575f;font-size:10px;letter-spacing:.15em;font-weight:850}
.worktime-title h2{font-size:25px;letter-spacing:-.05em;margin:0 0 6px}
.worktime-title .subtitle{font-size:13px;line-height:1.6;margin:0}
.worktime-overall{white-space:nowrap;border-radius:99px;font-size:12px;font-weight:750;padding:9px 13px}
.worktime-overall.good{background:#e9f5ef;color:#246e4e}
.worktime-overall.warning{background:#fff1d8;color:#8b5d1d}
.worktime-overall.critical{background:#f9e3e5;color:#9d3344}
.worktime-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:11px}
.worktime-stat{display:grid;gap:5px;padding:16px 17px;border-radius:14px;border:1px solid transparent;min-width:0}
.worktime-stat span{font-size:10px;font-weight:850;letter-spacing:.07em}
.worktime-stat strong{font-size:29px;line-height:1.1;letter-spacing:-.045em;font-variant-numeric:tabular-nums}
.worktime-stat small{font-size:11px;line-height:1.4;color:#7e756d}
.worktime-stat.green{background:#eff9f3;border-color:#e2f0e8}.worktime-stat.green>span,.worktime-stat.green strong{color:#286948}
.worktime-stat.amber{background:#fff7e7;border-color:#f5e9d1}.worktime-stat.amber>span,.worktime-stat.amber strong{color:#97691f}
.worktime-stat.red{background:#fcf0f1;border-color:#f5e1e4}.worktime-stat.red>span,.worktime-stat.red strong{color:#aa4654}
.worktime-list{display:grid}
.worktime-row{display:flex;align-items:center;gap:12px;padding:15px 4px;border-bottom:1px solid #eee7e0}
.worktime-dot{flex:0 0 10px;align-self:flex-start;margin-top:5px;height:10px;border-radius:50%}
.worktime-dot.critical{background:#bd5060;box-shadow:0 0 0 4px #fae4e8}
.worktime-dot.warning{background:#d5a047;box-shadow:0 0 0 4px #fbf0d9}
.worktime-row-content{flex:1;min-width:0}
.worktime-row-content strong{font-size:13px;color:#3b2e2c}
.worktime-row-content small{font-size:11px;color:#927d74;display:block;margin:4px 0 5px}
.worktime-row-content p{font-size:12px;line-height:1.5;color:#776d68;margin:0}
.worktime-row .small-btn{flex:0 0 auto}
.worktime-all-clear{display:flex;align-items:center;gap:13px;color:#416b52;background:#f4faf6;border-radius:13px;padding:14px 15px;margin-top:5px}
.worktime-all-clear>span{font-size:22px;font-weight:750}.worktime-all-clear p{font-size:13px;line-height:1.5;margin:0}
.worktime-disclaimer{font-size:11px;line-height:1.6;color:#8b7e75;margin:17px 0 0;padding-top:13px;border-top:1px solid #eee5dd}
.worktime-extra>summary{cursor:pointer;padding:13px 5px;color:#722634;font-size:13px;font-weight:750}
.worktime-extra>summary:focus-visible{outline:3px solid #bd8e97;outline-offset:3px}
.shift.worktime-critical{background:#fff1f1;border-left-color:#b84e5f;box-shadow:inset 0 0 0 1px #eac5ce}
.shift.worktime-warning{background:#fff8e8;border-left-color:#c18c41;box-shadow:inset 0 0 0 1px #f0d8a6}
.shift-risk{font-size:10px;font-weight:850;line-height:1.4;margin-top:3px;display:block}
.shift-risk.critical{color:#a23b50}.shift-risk.warning{color:#996b23}
.worktime-preview{border-radius:13px;padding:14px 15px;font-size:12px;line-height:1.55;border:1px solid #e1d7cd}
.worktime-preview strong{display:block;font-size:13px}
.worktime-preview p{margin:7px 0 0}
.worktime-preview ul{margin:8px 0 0;padding-left:18px;display:grid;gap:6px}
.worktime-preview.good{background:#f0f8f3;border-color:#cce5d5;color:#2b6a4c}
.worktime-preview.warning{background:#fff8eb;border-color:#efd6a9;color:#826025}
.worktime-preview.critical{background:#fff0f2;border-color:#edc0c8;color:#8b3447}
@media(max-width:740px){.worktime-title{flex-direction:column;gap:11px}.worktime-title h2{font-size:23px}.worktime-stats{gap:7px}.worktime-stat{padding:11px 10px}.worktime-stat strong{font-size:25px}.worktime-stat small{font-size:10px}.worktime-row{flex-wrap:wrap}.worktime-row .small-btn{margin-left:22px}.worktime-overall{font-size:11px}}
.absence-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}
.absence-metric{display:grid;gap:7px;min-width:0;border-radius:17px;padding:19px 21px;background:#fff;border:1px solid #ede5df}
.absence-metric small{font-size:10px;letter-spacing:.1em;font-weight:850;color:#8b7770}
.absence-metric strong{font-size:38px;font-variant-numeric:tabular-nums;line-height:1.1;color:#5b1925;letter-spacing:-.07em}
.absence-metric span{font-size:12px;color:#85766d}
.absence-metric.pending{background:#fffaf0;border-color:#f1e3c7}
.absence-metric.approved{background:#f4fbf7;border-color:#e1eee5}
.absence-metric.today{background:#fbf4f4;border-color:#eedede}
.absence-calendar-panel{margin-bottom:17px}
.absence-panel-header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:19px}
.absence-panel-header .kicker{margin:0 0 7px;color:#92616a;font-size:10px;letter-spacing:.14em;font-weight:850}
.absence-panel-header h2{font-size:24px;letter-spacing:-.045em;margin:0;line-height:1.15;text-transform:none}
.absence-month-nav{display:flex;align-items:center;gap:6px}
.absence-month-nav button{height:36px;min-width:37px;padding:0 10px;border-radius:10px;background:#f8f2ef;color:#60202b;border:1px solid #e8dcd7;cursor:pointer;font-weight:800}
.absence-month-nav button:disabled{opacity:.4;cursor:default}
.absence-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));margin-bottom:6px}
.absence-weekdays span{text-align:center;font-size:11px;color:#9b8c86;font-weight:800;padding:8px 0}
.absence-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}
.absence-cell{display:flex;align-items:flex-start;flex-direction:column;gap:5px;min-width:0;min-height:91px;padding:9px 8px;background:#fff;border:1px solid #eee6e2;border-radius:10px;text-align:left;cursor:pointer;transition:background .15s,border-color .15s}
.absence-cell:hover{background:#fcf6f5;border-color:#dcc1c4}
.absence-cell.selected{background:#fef4f3;border-color:#8d3847;box-shadow:inset 0 0 0 1px #8d3847}
.absence-cell.today .absence-number{background:#6a0f1e;color:#fff}
.absence-cell.outside{opacity:.45;background:#faf8f6}
.absence-number{width:26px;height:26px;display:inline-flex;justify-content:center;align-items:center;border-radius:8px;font-size:12px;font-weight:850;color:#5e4b47;flex:0 0 auto}
.absence-chip{display:block;box-sizing:border-box;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:4px 7px;border-radius:6px;font-size:10px;font-weight:750}
.absence-chip.approved{background:#e5f2e9;color:#256447}
.absence-chip.pending{background:#fff0d2;color:#926619}
.absence-cell>small{font-size:10px;color:#876e70}
.absence-legend{display:flex;align-items:center;justify-content:flex-end;gap:16px;margin-top:15px;color:#8c7f76;font-size:11px}
.absence-legend span{display:flex;align-items:center;gap:6px}.absence-legend i{height:9px;width:9px;border-radius:50%;display:inline-block}
.absence-legend .approved,.absence-person-dot.approved{background:#5fa783}.absence-legend .pending,.absence-person-dot.pending{background:#d6a146}
.absence-bottom{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:17px;align-items:start;margin-bottom:17px}
.absence-person-row{display:flex;align-items:flex-start;gap:11px;padding:12px 0;border-bottom:1px solid #f1eae6}
.absence-person-row>div{min-width:0;display:grid;gap:4px}.absence-person-row strong{font-size:13px;color:#463635}.absence-person-row small{font-size:11px;color:#877b74}
.absence-person-dot{height:10px;width:10px;border-radius:50%;flex-shrink:0;margin-top:4px}.absence-person-dot.private{background:#a9a3cb}
.absence-selected .note{line-height:1.5;margin-top:15px}
.absence-request{display:flex;justify-content:space-between;gap:13px;align-items:flex-start;padding:15px 0;border-bottom:1px solid #f0e8e4}
.absence-request:last-of-type,.absence-person-row:last-of-type{border-bottom:0}
.absence-request-info{display:grid;gap:5px;flex:1;min-width:0}
.absence-request-info strong{font-size:13px;color:#3d3130}.absence-request-info span{font-size:12px;color:#84766f}
.absence-request-info p{font-size:11px;line-height:1.5;color:#84766f;margin:3px 0 0;overflow-wrap:anywhere}
.absence-request-info p.absence-conflict{color:#a06527;background:#fff5e4;border-radius:9px;padding:9px 10px;font-weight:750}
.absence-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end;flex:0 0 auto;max-width:45%}
.absence-pill{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;font-size:11px;font-weight:800;border-radius:99px;padding:7px 11px;background:#f3efec;color:#796f69}
.absence-pill.pending{background:#fff0d0;color:#91621d}.absence-pill.approved{background:#e6f3eb;color:#256849}.absence-pill.declined{background:#f4e9eb;color:#9d5260}
.absence-pill.withdrawn,.absence-pill.cancelled{background:#f0eeec;color:#8a817d}
.absence-month-list{margin-bottom:15px}.absence-month-list h2{font-size:20px;letter-spacing:-.04em}
.absence-own-leaves{margin-bottom:17px}.absence-own-row{display:flex;gap:12px;align-items:center;justify-content:space-between;border-top:1px solid #f1e8e3;padding:15px 2px}
.absence-own-row>div{display:grid;gap:5px;min-width:0}.absence-own-row strong{font-size:13px}.absence-own-row small{font-size:12px;color:#8d7d75}
.leave-own-manage>div:first-child{display:grid;gap:6px;align-items:start}
.leave-own-manage .absence-pill{justify-self:start;margin-top:2px}
.leave-own-manage>div.leave-own-actions{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:7px;flex:0 0 auto}
.leave-own-actions .small-btn{font-size:11px}
.leave-own-actions .danger-text{color:#a54c57;border-color:#edcdd2}
.leave-change-pending{display:inline-flex;border-radius:9px;background:#fff2dd;color:#88622b;font-size:11px;font-weight:650;padding:8px 11px;max-width:230px;line-height:1.45}
.leave-change-panel{margin:0 0 17px}
.leave-change-row .list-main small{line-height:1.5}
.leave-change-conflict{color:#a05f31!important;font-weight:650}
.leave-change-actions{display:flex;gap:7px;flex-wrap:wrap;align-items:center;justify-content:flex-end}
.leave-change-actions .small-btn{white-space:nowrap}
@media(max-width:740px){.leave-own-manage{align-items:flex-start;flex-wrap:wrap}.leave-own-manage>div.leave-own-actions{flex:1 1 100%;justify-content:flex-start}.leave-change-row{flex-wrap:wrap}.leave-change-actions{width:100%;justify-content:flex-start}}
.absence-cell:focus-visible,.absence-month-nav button:focus-visible{outline:3px solid #ac7882;outline-offset:2px}
@media(max-width:900px){.absence-bottom{grid-template-columns:1fr}.absence-cell{min-height:82px;padding:7px 6px}}
@media(max-width:740px){.absence-metrics{gap:7px}.absence-metric{padding:13px 10px;gap:5px}.absence-metric small{font-size:9px;line-height:1.3}.absence-metric strong{font-size:30px}.absence-metric span{font-size:10px;line-height:1.3}.absence-panel-header{flex-wrap:wrap}.absence-panel-header h2{font-size:21px}.absence-calendar{gap:3px}.absence-cell{min-height:72px;padding:5px 3px;border-radius:7px;gap:3px}.absence-number{width:22px;height:22px;font-size:11px}.absence-chip{font-size:9px;padding:3px 4px}.absence-cell>small{font-size:9px}.absence-actions{max-width:none}.absence-request{flex-wrap:wrap}.absence-actions{width:100%;justify-content:flex-start}.absence-legend{justify-content:flex-start}}
.calendar-live-intro{display:flex;align-items:center;gap:18px;background:linear-gradient(120deg,#64121f,#842c36);border-radius:18px;color:#fff;padding:22px 24px;margin-bottom:17px;box-shadow:0 14px 27px #5b142018}
.calendar-live-icon{width:53px;height:53px;border-radius:16px;display:grid;place-items:center;flex:0 0 auto;background:#ffffff24;font-size:34px}
.calendar-live-intro>div{min-width:0}.calendar-live-intro strong{font-size:19px;letter-spacing:-.03em}.calendar-live-intro p{font-size:13px;line-height:1.6;color:#f1e0e2;margin:7px 0 0}
.calendar-live-panel{margin-bottom:17px}.calendar-live-header{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:17px}
.calendar-live-header>div{flex:1;min-width:0}.calendar-live-header h2{margin-bottom:7px}.calendar-live-header .kicker{margin-bottom:8px}
.calendar-live-header .note{margin:0}.calendar-live-panel h3{font-size:12px;letter-spacing:.08em;color:#926d74;text-transform:uppercase;margin:20px 0 10px}
.calendar-new-link{display:grid;gap:12px;background:#f2f9f5;border:1px solid #cfe5d7;border-radius:15px;padding:19px;margin:10px 0 18px}
.calendar-new-link>strong{font-size:15px;color:#276f4c}.calendar-new-link p{font-size:12px;line-height:1.55;color:#486b58;margin:0}
.calendar-new-link>.secondary{justify-self:start}.calendar-copy{display:flex;gap:8px;min-width:0}
.calendar-copy input{flex:1;min-width:0;width:100%;height:47px;background:#fff;border:1px solid #cbded2;border-radius:11px;color:#526c59;padding:10px 12px;font-size:12px;letter-spacing:.01em}
.calendar-copy .primary{flex:0 0 auto}.calendar-feed-row{display:flex;justify-content:space-between;align-items:center;gap:13px;border-top:1px solid #f1e9e5;padding:15px 0}
.calendar-feed-row>div{display:grid;gap:5px;min-width:0}.calendar-feed-row strong{font-size:13px}.calendar-feed-row small{font-size:11px;color:#978b83}
.calendar-security{color:#917e73;font-size:12px;line-height:1.65;border-top:1px solid #eee5e0;margin:14px 0 0;padding-top:14px}
.calendar-provider-grid{margin-bottom:17px;grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-provider{background:#fff;position:relative}
.calendar-provider-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#f8e9e9;color:#7c2838;font-size:25px;margin-bottom:14px}
.calendar-provider h2{margin:0 0 10px;font-size:20px}.calendar-provider p{color:#5b504b;font-size:13px;line-height:1.7;margin:0 0 15px}
.calendar-provider small{display:block;font-size:12px;color:#918078;line-height:1.6}
.calendar-oneoff{background:#fbf9f6}.calendar-oneoff h2{font-size:19px;margin-bottom:7px}.calendar-oneoff .note{margin-bottom:15px}
@media(max-width:740px){.calendar-live-intro{padding:18px;gap:12px;align-items:flex-start}.calendar-live-icon{width:42px;height:42px;font-size:27px}.calendar-live-intro strong{font-size:16px}.calendar-live-header{align-items:stretch;flex-direction:column}.calendar-live-header .primary{width:100%}.calendar-provider-grid{grid-template-columns:1fr}.calendar-copy{flex-direction:column}.calendar-copy .primary{width:100%}.calendar-new-link>.secondary{width:100%}}
.staffing-callout{display:flex;align-items:center;gap:13px;border:1px solid #d8e7dd;background:#f1f8f4;border-radius:16px;padding:17px 19px;margin:-1px 0 18px;color:#2a684c}
.staffing-callout.short{background:#fff4e9;border-color:#efd9bf;color:#956229}
.staffing-callout.setup{background:#f8edee;border-color:#e8d7da;color:#682736}
.staffing-callout>div{flex:1;min-width:0}.staffing-callout strong{display:block;font-size:14px;line-height:1.4}
.staffing-callout p{font-size:12px;line-height:1.55;color:#82736f;margin:4px 0 0}
.staffing-callout-icon{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#d7ecdf;flex:0 0 auto;font-weight:850}
.staffing-callout.short .staffing-callout-icon{background:#f9deba;color:#9b5c22}
.staffing-callout .secondary{background:#fff;border:1px solid #eaddda;white-space:nowrap;font-size:12px;flex:0 0 auto}
.staffing-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-bottom:17px}
.staffing-metric{display:grid;gap:8px;border:1px solid #eadedb;border-radius:16px;background:#fff;padding:19px 22px}
.staffing-metric small{font-size:10px;letter-spacing:.1em;color:#927a78;font-weight:850;line-height:1.5}
.staffing-metric strong{font-size:32px;color:#622535;letter-spacing:-.05em;line-height:1.15;font-variant-numeric:tabular-nums}
.staffing-week-panel{margin-bottom:17px}
.staffing-setup-info{background:#f9edef;color:#752f42;padding:13px 16px;border-radius:12px;font-size:12px;line-height:1.6;margin:0 0 15px}
.staffing-week-scroll{overflow-x:auto;margin:0 -6px;padding:0 6px 9px;scrollbar-color:#d7bfbc transparent}
.staffing-week-grid{display:grid;grid-template-columns:repeat(7,minmax(184px,1fr));gap:9px;min-width:1300px}
.staffing-day{background:#fcfbfa;border:1px solid #e9e3dd;border-radius:14px;padding:13px;min-height:207px;display:flex;flex-direction:column;gap:11px}
.staffing-day.short{background:#fffbf5;border-color:#efdcb9}
.staffing-day.closed{background:#f7f5f4;color:#938783}
.staffing-day-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.staffing-day-top>div{display:grid;gap:3px}.staffing-day-top>div span{color:#9a8980;font-size:11px;font-weight:850}
.staffing-day-top>div strong{font-size:26px;line-height:1.1;letter-spacing:-.05em}
.staffing-day-status{font-size:10px;font-weight:750;line-height:1.25;text-align:right;color:#36704f;background:#e8f5ec;padding:6px 8px;border-radius:7px}
.staffing-day.short .staffing-day-status{color:#a26427;background:#fff0d7}
.staffing-day.closed .staffing-day-status{color:#817872;background:#ece9e7}
.staffing-day-events{display:flex;gap:5px;flex-wrap:wrap}.staffing-event-tag{font-size:10px;padding:5px 7px;border-radius:7px;color:#7a4254;background:#f3e6eb}
.staffing-day-details{display:grid;gap:9px}.staffing-day-details>p{color:#97867d;font-size:11px;line-height:1.6;margin:0}
.staffing-gap{border:1px solid #eed7b6;background:#fff6e8;border-radius:10px;padding:10px;display:grid;gap:8px}
.staffing-gap>div{display:grid;gap:4px}.staffing-gap strong{font-size:11px;line-height:1.3;color:#663d31}
.staffing-gap small{font-size:10px;line-height:1.5;color:#8d725f}.staffing-gap small b{color:#ab5b28}
.staffing-gap .small-btn{width:100%;white-space:normal;font-size:10px;padding:8px 6px;background:#fff;border-color:#e8d0b6}
.staffing-gap .small-btn.approve-btn{background:#f0f7ef;color:#306344;border-color:#cedfcf}
.staffing-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;align-items:start}
.staffing-settings-head{display:flex;align-items:flex-start;justify-content:space-between;gap:11px;margin-bottom:12px}
.staffing-settings-head .kicker{margin-bottom:5px}.staffing-settings-head h2{margin:0;font-size:20px}
.staffing-settings>.panel>.note{margin:0 0 17px}
.staffing-rule-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 0;border-top:1px solid #f0e8e4}
.staffing-rule-row>div:first-child{display:grid;gap:5px;min-width:0}
.staffing-rule-row strong{font-size:13px;color:#463735}.staffing-rule-row small{font-size:11px;color:#917e75;line-height:1.45}
.staffing-rule-row>div:last-child{display:flex;gap:5px;flex:0 0 auto}.staffing-rule-row>div:last-child .small-btn:last-child{color:#a05b63}
.staffing-footnote{font-size:11px;line-height:1.65;color:#94857e;padding:14px 2px}
.autoplan-panel{margin-bottom:17px;background:linear-gradient(145deg,#fff 0%,#fdf7f5 100%);border-color:#e3d4ce;scroll-margin-top:22px}
.autoplan-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}
.autoplan-heading h2{margin:3px 0 7px;font-size:23px;letter-spacing:-.03em;color:#56212e}
.autoplan-heading .note{max-width:560px;margin:0;line-height:1.6}
.autoplan-heading>.primary{flex:0 0 auto}
.autoplan-steps{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:20px 0 4px}
.autoplan-steps span{font-size:10px;font-weight:750;letter-spacing:.01em;padding:7px 11px;border-radius:999px;border:1px solid #eadfda;background:#faf7f4;color:#a4938c}
.autoplan-steps span.current{border-color:#6b2235;background:#6b2235;color:#fff}
.autoplan-steps span.done{border-color:#c4e1d0;background:#eef8f1;color:#3d7958}
.autoplan-stats{display:flex;flex-wrap:wrap;gap:9px;margin:21px 0 16px}
.autoplan-stats span{display:flex;align-items:center;gap:7px;background:#f5e9e8;border:1px solid #e7d8d6;color:#6a3a44;border-radius:9px;padding:9px 12px;font-size:12px;font-weight:600}
.autoplan-stats b{font-size:19px;line-height:1;color:#632535;font-variant-numeric:tabular-nums}
.autoplan-list{display:grid;gap:7px}
.autoplan-row{display:grid;grid-template-columns:minmax(170px,1.15fr) minmax(75px,.7fr) minmax(180px,1.1fr) auto;align-items:center;gap:13px;border:1px solid #ece0dc;background:#fff;border-radius:12px;padding:12px 14px}
.autoplan-date{display:grid;gap:4px}.autoplan-date strong{font-size:13px;color:#433330}.autoplan-date small{font-size:11px;color:#9a8279}
.autoplan-type{width:max-content;font-size:10px;font-weight:700;border-radius:999px;padding:3px 7px;background:#f4ece8;color:#8c655e;margin-top:2px}
.autoplan-role{font-size:12px;font-weight:750;color:#722e43}
.autoplan-person select{width:100%;font-size:12px;padding:10px 12px;border-radius:9px;background:#faf7f5}
.autoplan-candidate-note{display:block;margin-top:6px;color:#6e8a73;font-size:11px;line-height:1.4}
.autoplan-candidate-note.check{color:#956d30}
.autoplan-candidate-note.blocked{color:#a64750}
.autoplan-row>.small-btn{min-width:33px;font-size:17px;padding:6px 8px}
.autoplan-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin-top:16px;flex-wrap:wrap}
.autoplan-actions .note{flex:1;min-width:210px;font-size:11px;line-height:1.55;margin:0}
.autoplan-actions .primary:disabled{opacity:.45;cursor:not-allowed}
.autoplan-disclaimer{border-top:1px solid #eee3df;margin:18px 0 0;padding-top:14px;color:#978780;font-size:11px;line-height:1.65}
.autoplan-alert{background:#fff3df;border:1px solid #edd5ac;padding:11px 14px;margin:10px 0;border-radius:9px;color:#825e34;font-size:12px;line-height:1.5}
.autoplan-alert.danger{color:#9a3344;border-color:#edc5ca;background:#fff1f2}
.autoplan-empty{background:#f2f8f2;border:1px solid #d9ead9;border-radius:9px;margin-top:18px;padding:16px;color:#447253;font-size:12px}
.ops-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;align-items:center;max-width:260px}
.ops-actions .small-btn,.ops-actions .primary,.ops-actions .secondary{font-size:11px;white-space:normal;line-height:1.3;padding:8px 10px}
.ops-shift-row,.ops-time-row,.ops-sick-row{align-items:center;gap:10px}
.ops-ack{color:#9a7042!important;font-weight:650}.ops-ack.done{color:#3a8261!important}
.ops-sick-state{color:#9a3344!important;font-weight:650}
.ops-clock,.ops-sick-panel{margin-bottom:16px}
.ops-clock .panel-heading,.ops-sick-panel .panel-heading{margin-bottom:15px}
.ops-clock .list-row,.ops-sick-panel .list-row{padding:13px 0}
.ops-clock .list-main small,.ops-sick-panel .list-main small{line-height:1.5}
.shift-ack{font-size:10px;color:#694d4e;font-weight:700}
@media(max-width:740px){.ops-shift-row,.ops-time-row,.ops-sick-row{flex-wrap:wrap}.ops-shift-row>.list-main,.ops-time-row>.list-main,.ops-sick-row>.list-main{flex:1;min-width:150px}.ops-actions{width:100%;max-width:none;justify-content:stretch}.ops-actions button{flex:1}}
.smart-staff-preview{background:#fbf7f5;border:1px solid #e9dbd8;border-radius:14px;padding:14px 15px;color:#62484b}
.smart-staff-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}
.smart-staff-heading strong{font-size:13px;line-height:1.5}
.smart-staff-heading p{font-size:11px;margin:3px 0 0;color:#8a7472}
.smart-staff-heading button{flex-shrink:0}
.smart-staff-heading button:disabled{opacity:.55;cursor:default}
.smart-staff-choices{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.smart-staff-choices span{font-size:11px;color:#347359;background:#e9f5ec;border:1px solid #d4e9db;border-radius:999px;padding:5px 8px}
.smart-staff-reasons{font-size:11px;line-height:1.6;color:#9a6d4d;margin:10px 0 0}
.smart-staff-empty{font-size:11px;color:#896b6d;margin:10px 0 0;line-height:1.6}
@media(max-width:550px){.smart-staff-heading{align-items:stretch;flex-direction:column}.smart-staff-heading button{width:100%}}
.week-publish-card{display:flex;align-items:center;gap:15px;border:1px solid #e4d1d2;border-radius:17px;background:linear-gradient(110deg,#f9e8e8 0%,#fffaf8 100%);padding:19px 20px;margin-bottom:17px;box-shadow:0 6px 22px rgba(90,33,49,.035)}
.week-publish-card.is-published{border-color:#d1e4d7;background:linear-gradient(110deg,#eff8f0,#fff)}
.week-publish-card.has-risks{border-color:#e6c6a3;background:linear-gradient(110deg,#fff2e4,#fff)}
.week-publish-icon{display:grid;place-items:center;width:48px;height:48px;flex:0 0 48px;border-radius:14px;background:#6c2235;color:#fff;font-size:24px;font-weight:750}
.week-publish-card.is-published .week-publish-icon{background:#3c7954}
.week-publish-card.has-risks .week-publish-icon{background:#a1693b}
.week-publish-copy{display:grid;gap:3px;flex:1;min-width:0}
.week-publish-kicker{font-size:9px;font-weight:850;letter-spacing:.12em;color:#955a65}
.week-publish-copy strong{font-size:17px;line-height:1.3;letter-spacing:-.02em;color:#4d2530}
.week-publish-copy p{font-size:12px;line-height:1.55;color:#8c7572;margin:0}
.week-publish-card>button{flex:0 0 auto}
.week-publish-card>button:disabled{opacity:.58;cursor:default}
.week-release-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.week-release-summary>div{display:grid;gap:3px;text-align:center;border:1px solid #e9dcdb;border-radius:12px;padding:12px 7px;background:#fff9f8}
.week-release-summary b{font-size:23px;color:#612737;line-height:1.15;font-variant-numeric:tabular-nums}
.week-release-summary span{font-size:10px;color:#917b77}
.week-release-description{font-size:13px;color:#675653;line-height:1.6;margin:12px 0}
.week-release-state{padding:12px 14px;border-radius:11px;border:1px solid #c6e1d0;background:#eff8f1;color:#37714a}
.week-release-state.warning{border-color:#e8d5b7;background:#fff5e9;color:#875d2a}
.week-release-state.critical{border-color:#ecc4c8;background:#fff0f1;color:#a23f4b}
.week-release-state strong{font-size:13px}.week-release-state p{font-size:11px;line-height:1.5;margin:4px 0 0}
.week-release-issues{display:grid;gap:6px;margin:10px 0;padding-left:17px;color:#7d716c;font-size:11px;line-height:1.5}
.week-release-issues li.critical{color:#a1434e}.week-release-issues li.warning{color:#94744a}
.week-release-warning{padding:12px 14px;border:1px solid #ebd7b7;background:#fff6e9;border-radius:10px;font-size:11px;color:#88612d;line-height:1.55}
.week-release-confirm{margin-top:10px;padding:13px;border:1px solid #e9dbd8;border-radius:11px;background:#faf7f5;font-weight:650;font-size:12px;line-height:1.5}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1050px){.staffing-settings{grid-template-columns:1fr}.staffing-week-grid{min-width:1250px}}
@media(max-width:740px){.staffing-callout{flex-wrap:wrap;padding:14px}.staffing-callout>div{flex:1 1 calc(100% - 54px)}.staffing-callout .secondary{width:100%}.staffing-metrics{gap:7px}.staffing-metric{padding:12px 10px}.staffing-metric small{font-size:9px}.staffing-metric strong{font-size:25px}.staffing-week-panel{padding:17px 12px}.staffing-week-grid{min-width:1250px;grid-template-columns:repeat(7,174px)}.staffing-day{padding:11px;min-height:197px}.staffing-settings-head{flex-wrap:wrap}.staffing-rule-row{flex-wrap:wrap}.staffing-rule-row>div:last-child{margin-left:auto}}
@media(max-width:740px){.autoplan-heading{align-items:stretch;flex-direction:column}.autoplan-heading>.primary{width:100%}.autoplan-stats{gap:6px}.autoplan-row{grid-template-columns:minmax(0,1fr) auto;gap:9px}.autoplan-role{grid-column:1;grid-row:2}.autoplan-person{grid-column:1;grid-row:3}.autoplan-row>.small-btn{grid-column:2;grid-row:1}.autoplan-actions .primary{width:100%}.autoplan-actions .secondary{flex:1}}
@media(max-width:740px){.week-publish-card{padding:14px;gap:10px;flex-wrap:wrap}.week-publish-icon{width:40px;height:40px;flex-basis:40px;border-radius:12px;font-size:20px}.week-publish-copy{flex:1 1 calc(100% - 60px)}.week-publish-copy strong{font-size:15px}.week-publish-card>button{width:100%}}

.monthly-panel{margin-bottom:24px}.monthly-heading{display:flex;align-items:start;justify-content:space-between;gap:20px}.monthly-select{display:grid;gap:7px;font-size:12px;font-weight:650}.monthly-select input{font:inherit;border:1px solid var(--line);background:#fff;padding:10px;border-radius:10px;min-height:44px}.monthly-period{display:flex;gap:12px;align-items:center;margin:16px 0}.monthly-stats{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:16px}.monthly-stats .stat{padding:16px}.monthly-stats .stat strong{font-size:26px}.monthly-table-scroll{overflow:auto}.monthly-table{border-collapse:collapse;width:100%;font-size:13px;white-space:nowrap}.monthly-table th,.monthly-table td{text-align:right;padding:12px 10px;border-bottom:1px solid var(--line)}.monthly-table th:first-child,.monthly-table td:first-child{text-align:left}.monthly-table th{color:var(--muted);font-size:11px}.monthly-table td small{display:block;color:var(--muted);margin-top:3px}.monthly-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.monthly-warning{background:#fff3df;border:1px solid #efdcba;border-radius:12px;padding:13px;font-size:13px;line-height:1.5;color:#7e521e}.monthly-action-status{font-size:13px;line-height:1.5;color:var(--wine)}@media(max-width:600px){.monthly-heading{display:block}.monthly-select{margin-top:14px}.monthly-stats{grid-template-columns:1fr}.monthly-stats .stat strong{font-size:24px}.monthly-actions button{width:100%}}

/* Unread hints retain the original compact badge design. */
.update-badge{font-weight:800}
.destination .update-badge{flex:0 0 21px;margin-left:2px}
.event-link{width:100%;text-align:left;border:0;border-radius:0;background:transparent;color:inherit;cursor:pointer;gap:14px}
.event-link:hover{background:#ffffff08}
.event-link .list-main{flex:1;min-width:0}
.event-link .list-main strong,.event-link .list-main small{display:block}
.event-chevron{margin-left:auto;font-size:24px;color:#d5acb8}
#eventDetails{max-width:560px}
#eventDetails header>div{min-width:0}
#eventDetails h2{overflow-wrap:anywhere}
#eventDetails header small{font-size:10px;letter-spacing:.13em;color:#8a535f}
.event-details-body{padding:24px 28px;overflow-wrap:anywhere}
.event-facts{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:0}
.event-facts dt{font-size:11px;color:#88757b;margin-bottom:7px}
.event-facts dd{margin:0;font-size:15px;color:#392c31;line-height:1.6}
.event-notes{border-top:1px solid #e9dfe1;margin-top:24px;padding-top:20px}
.event-notes h3{font-size:14px;margin:0 0 12px}
.event-notes p{white-space:pre-wrap;line-height:1.7;font-size:14px;margin:0;color:#65545c}
@media(max-width:440px){.event-details-body{padding:22px 20px}.event-facts{grid-template-columns:1fr;gap:18px}}
.immersive #eventDetails header small,.immersive .event-facts dt{color:#c9aab7}
.immersive .event-facts dd{color:#f3e6e4}
.immersive .event-notes p{color:#e0cdd5}
.immersive .event-notes{border-color:#ffffff1c}
