.login-page{background:#ead0a3;justify-content:center;align-items:center;width:100vw;height:100vh;font-family:Arial,sans-serif;display:flex}.login-card{background:#fff;border-radius:18px;flex-direction:column;gap:14px;width:340px;padding:28px;display:flex;box-shadow:0 20px 60px #0003}.login-card h1{color:#c9870d;text-align:center;margin:0}.login-card p{text-align:center;margin:0 0 10px}.login-card input{border:1px solid #ddd;border-radius:10px;height:44px;padding:0 12px;font-size:16px}.login-card button{color:#fff;cursor:pointer;background:#c9870d;border:none;border-radius:10px;height:46px;font-size:16px;font-weight:700}.login-error{color:#b91c1c;text-align:center;font-size:14px}.custom-select{width:100%;min-width:0;position:relative}.custom-select-trigger{color:#2b1b0c;text-align:left;cursor:pointer;background:#fffaf1;border:1px solid #d6c3a2;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;width:100%;min-height:40px;padding:0 10px 0 12px;font-weight:900;display:flex}.custom-select-trigger span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.custom-select-trigger .placeholder{color:#8a7456}.custom-select-trigger i{opacity:.75;flex:none;font-size:15px;font-style:normal;line-height:1}.custom-select.disabled .custom-select-trigger{opacity:.65;cursor:wait}.custom-select-menu{z-index:50;background:#fffaf1;border:1px solid #d6c3a2;border-radius:12px;flex-direction:column;gap:4px;max-height:min(270px,48dvh);padding:8px;display:flex;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:auto;box-shadow:0 14px 34px #4b36213d}.custom-select-menu button{color:#2b1b0c;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;min-height:34px;padding:0 10px;font-weight:900}.custom-select-menu button:hover{background:#f1ddb9}.custom-select-menu button.active{color:#fff;background:#c9870d}.custom-select-menu button.muted{color:#826745}.custom-select-menu button:disabled{opacity:.55;cursor:default}:root[data-theme=dark] .custom-select-trigger,:root[data-theme=dark] .custom-select-menu{color:var(--dark-text);background:#363a34;border-color:#fff4e047}:root[data-theme=dark] .custom-select-menu button{color:var(--dark-text)}:root[data-theme=dark] .custom-select-menu button:hover{background:var(--dark-surface-soft)}:root[data-theme=dark] .custom-select-menu button.active{background:var(--dark-accent);color:#241a08}.modal-overlay{z-index:10000;background:#00000061;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.shift-modal{background:#fff7ea;border-radius:18px;flex-direction:column;gap:12px;width:min(460px,100%);max-height:calc(100vh - 32px);padding:18px;display:flex;overflow:auto;box-shadow:0 20px 70px #00000059}.modal-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.modal-header h2{color:#3c2a17;margin:0;font-size:22px}.modal-header button{color:#fff;cursor:pointer;background:#c9870d;border:none;border-radius:50%;width:34px;height:34px;font-size:24px}.modal-info{color:#4b3621;background:#f1ddb9;border-radius:12px;justify-content:space-between;gap:10px;padding:10px 12px;font-weight:900;display:flex}.modal-error,.modal-note{border-radius:10px;padding:10px 12px;font-size:14px;font-weight:800}.modal-error{color:#a11616;background:#ffe4e4}.modal-note{color:#6d4810;background:#fff0cc}.modal-grid-two{grid-template-columns:1fr 1fr;gap:10px;display:grid}.shift-modal label{color:#57452f;text-align:left;flex-direction:column;gap:6px;font-weight:900;display:flex}.shift-modal input,.shift-modal select,.shift-modal textarea{color:#2b1b0c;background:#fff;border:1px solid #d6c3a2;border-radius:10px;width:100%;min-height:40px;padding:0 10px;font-size:15px}.shift-modal textarea{resize:vertical;min-height:78px;padding-top:9px}.time-picker-label,.time-picker{position:relative}.time-picker-trigger{color:#2b1b0c;text-align:left;cursor:pointer;background:#fff;border:1px solid #d6c3a2;border-radius:10px;width:100%;min-height:40px;padding:0 10px;font-size:15px;font-weight:900}.time-picker-popover{z-index:5;background:#fffaf1;border:1px solid #d6c3a2;border-radius:12px;grid-template-columns:1fr 1fr;gap:8px;padding:10px;display:grid;position:absolute;top:calc(100% + 6px);left:0;right:0;box-shadow:0 14px 34px #4b36213d}.time-picker-column{gap:4px;max-height:178px;padding-right:2px;display:grid;overflow:auto}.time-picker-column button{color:#4b3621;cursor:pointer;background:#f1ddb9;border:0;border-radius:8px;min-height:30px;font-weight:900}.time-picker-column button.active{color:#fff;background:#c9870d}.time-picker-done{color:#fff;cursor:pointer;background:#4f7f31;border:0;border-radius:9px;grid-column:1/-1;min-height:34px;font-weight:900}.period-delete-panel{background:#fff1d8;border:1px solid #e0cda9;border-radius:12px;flex-direction:column;gap:10px;padding:12px;display:flex}.period-delete-panel b{color:#4b3621}.period-delete-btn{color:#fff;cursor:pointer;background:#b91c1c;border:none;border-radius:10px;min-height:40px;font-weight:900}.period-delete-btn:disabled{opacity:.65;cursor:wait}.modal-actions{justify-content:flex-end;align-items:center;gap:10px;padding-top:4px;display:flex}.modal-actions button{cursor:pointer;border:none;border-radius:10px;min-height:40px;padding:0 14px;font-weight:900}.modal-actions button:disabled{opacity:.65;cursor:wait}.save-btn{color:#fff;background:#c9870d}.cancel-btn{color:#2b1b0c;background:#e5e7eb}.delete-btn{color:#fff;background:#b91c1c;margin-right:auto}@media (width<=520px){.modal-grid-two{grid-template-columns:1fr}.modal-info{flex-direction:column}.modal-actions{flex-wrap:wrap}.delete-btn{width:100%;margin-right:0}}.delete-btn.armed{background:#8f1d16;box-shadow:0 0 0 3px #b2463d2e}.manager-page{background:#ead0a3;flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}.manager-header{color:#fff;background:#c9870d;flex-shrink:0;grid-template-columns:58px 1fr 58px;align-items:center;height:62px;padding:0 14px;display:grid}.manager-title{justify-content:center;align-items:center;gap:14px;min-width:0;display:flex}.manager-title-stack{flex-direction:column;align-items:center;gap:4px;min-width:0;display:flex}.manager-title h1{color:#fff;white-space:nowrap;margin:0;font-size:24px;font-weight:900}.manager-title button,.month-arrow{color:#fff;cursor:pointer;background:#ffffff2e;border:none;border-radius:10px;font-weight:900}.manager-title>button{height:34px;padding:0 14px}.month-arrow{height:42px;font-size:22px}.manager-branch-tabs{background:#784b0047;border-radius:999px;align-items:center;gap:4px;max-width:min(360px,60vw);padding:3px;display:none;overflow-x:auto}.manager-branch-tabs button{background:0 0;border-radius:999px;flex:none;min-width:72px;height:26px;padding:0 12px;font-size:12px}.manager-branch-tabs button.active{color:#c9870d;background:#fff}.manager-export-actions{gap:6px;display:flex}.manager-export-actions button{height:30px;padding:0 10px;font-size:12px}.manager-message{color:#5a3a17;background:#fff7ea;border-radius:12px;margin:16px;padding:12px 14px;font-weight:800}.manager-message.error{color:#a11616;background:#ffe6e6}.manager-message.ok{color:#2f6d2f;background:#eef8e9}.manager-table-wrapper{scrollbar-width:auto;scrollbar-color:#b87920 #ffffff59;flex:1;min-height:0;padding:0;position:relative;overflow:auto}.manager-table-wrapper::-webkit-scrollbar{width:30px;height:30px}.manager-table-wrapper::-webkit-scrollbar-track{background:#ffffff61;border-radius:999px;margin:14px}.manager-table-wrapper::-webkit-scrollbar-thumb{background:#b87920;border:6px solid #ffffff80;border-radius:999px;min-width:160px;min-height:104px}.manager-table-wrapper::-webkit-scrollbar-thumb:hover{background:#965d16}.manager-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:max-content;min-width:100%}.employee-col{z-index:20;width:190px;min-width:190px;max-width:190px;position:sticky;left:0}.day-col,.shift-cell,.sector-empty-cell{width:76px;min-width:76px;max-width:76px}.manager-table th{color:#2b1b0c;z-index:90;background:#eed9b4;border-bottom:1px solid #d6ba83;height:56px;font-weight:900;position:sticky;top:0}.manager-table th.employee-col{z-index:110}.manager-day-header{width:100%;height:100%;position:relative}.manager-day-cleaning-btn{width:100%;height:100%;color:inherit;font:inherit;cursor:pointer;box-sizing:border-box;background:0 0;border:0;border-radius:0;flex-direction:column;justify-content:center;align-items:center;padding:0 0 14px;transition:background .12s;display:flex}.manager-day-double-pay-btn{color:#6d4810;cursor:pointer;background:#a86f0633;border:0;border-radius:999px;min-width:24px;height:15px;padding:0 5px;font-size:9px;font-weight:900;line-height:15px;position:absolute;bottom:3px;left:50%;transform:translate(-50%)}.manager-day-double-pay-btn.active{color:#fff;background:#2f7d32}.manager-day-double-pay-btn:disabled{opacity:.65;cursor:progress}.manager-day-cleaning-btn:hover,.manager-day-cleaning-btn:focus-visible{background:#c9870d29;outline:none}.manager-day-cleaning-btn:disabled{cursor:progress;opacity:.7}.day-col span{display:block}.week-day{opacity:.75;font-size:12px}.day-number{margin-top:3px;font-size:18px}.manager-table td{text-align:center;vertical-align:middle;border-bottom:6px solid #ead0a3;height:64px}.manager-pay-multiplier{color:#fff;z-index:2;background:#2f7d32;border-radius:999px;min-width:24px;padding:2px 5px;font-size:9px;font-weight:900;line-height:1;position:absolute;bottom:3px;left:3px}.employee-name-cell{color:#2b1b0c;background:#fff1d8;padding:8px;box-shadow:8px 0 14px #5a360a1f;text-align:left!important}.employee-name-cell b{font-size:15px;line-height:1.1;display:block}.employee-name-cell span{color:#7a5c38;margin-top:4px;font-size:11px;display:block}.guest-employee-badge{color:#8a5a00;background:#fff2bd;border-radius:999px;margin-top:5px;padding:2px 6px;font-size:10px;font-style:normal;font-weight:900;display:inline-block}.sector-row td{background:#d9b66f;height:32px}.sector-name-cell{z-index:30;color:#4b3621;width:190px;min-width:190px;max-width:190px;padding-left:12px;font-weight:900;position:sticky;left:0;box-shadow:8px 0 14px #5a360a29;text-align:left!important}.shift-cell{color:#1d1308;cursor:pointer;background:#fff1d8;border-left:1px solid #8a5f1733;padding:4px;transition:transform .12s,filter .12s;position:relative}.shift-cell.has-comment{box-shadow:inset 0 0 0 2px #5b2c784d}.manager-comment-dot{color:#fff;z-index:2;background:#5d2c78;border-radius:50%;place-items:center;width:13px;height:13px;font-size:8px;font-weight:900;line-height:1;display:grid;position:absolute;top:4px;right:4px}.shift-cell:hover{filter:brightness(.98);transform:translateY(-1px)}.shift-cell.empty{color:#b79355}.empty-plus{opacity:.55;font-size:22px;font-weight:900}.shift-card-mini{flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:56px;line-height:1.05;display:flex}.shift-time{white-space:nowrap;font-size:13px;font-weight:900}.shift-meta,.shift-comment,.role-badge{text-overflow:ellipsis;white-space:nowrap;max-width:68px;overflow:hidden}.shift-meta{font-size:10px}.shift-comment{opacity:.8;font-size:9px;font-weight:900}.role-badge{background:#ffffffc7;border-radius:999px;margin-top:2px;padding:2px 5px;font-size:9px;font-weight:900}.shift-cell.work,.legend-box.work{background:#f7c729}.shift-cell.cleaning,.legend-box.cleaning{background:#ff4d4f}.shift-cell.canteen_duty,.legend-box.canteen_duty{background:#ff7ad9}.shift-cell.lunch_duty,.legend-box.lunch_duty{background:#ff9f1a}.shift-cell.vacation,.legend-box.vacation{background:#6eb6ef}.manager-legend{color:#57452f;background:#e3c78f;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:18px;min-height:58px;padding:8px 18px;font-size:14px;font-weight:800;display:flex}.manager-legend span{white-space:nowrap;align-items:center;gap:7px;display:flex}.legend-box{border:1px solid #0000001f;border-radius:5px;width:18px;height:18px;display:inline-block}@media (width<=760px){.manager-table-wrapper{scrollbar-width:auto}.manager-table-wrapper::-webkit-scrollbar{width:22px;height:22px}.manager-table-wrapper::-webkit-scrollbar-thumb{border-width:5px;min-width:132px;min-height:76px}.manager-header{grid-template-columns:44px 1fr 44px;height:74px;padding:0 8px}.manager-title{gap:8px}.manager-title h1{font-size:18px}.manager-title>button{display:none}.manager-branch-tabs{max-width:62vw;display:flex}.manager-export-actions{display:none}.month-arrow{height:38px;font-size:20px}.employee-col,.employee-name-cell,.sector-name-cell{width:108px;min-width:108px;max-width:108px}.day-col,.shift-cell,.sector-empty-cell{width:62px;min-width:62px;max-width:62px}.manager-table{min-width:700px}.manager-table td{border-bottom-width:4px;height:58px}.employee-name-cell{padding:6px 8px}.employee-name-cell b{font-size:13px}.employee-name-cell span{font-size:10px}.manager-comment-dot{width:10px;height:10px;font-size:7px;top:2px;right:2px}.manager-legend{flex-wrap:nowrap;gap:8px;min-height:42px;max-height:42px;padding:6px 8px;font-size:10px;overflow:auto hidden}.legend-box{width:13px;height:13px}}@media (width<=900px) and (orientation:landscape){.manager-table-wrapper{scrollbar-width:auto}.manager-table-wrapper::-webkit-scrollbar{width:22px;height:22px}.manager-table-wrapper::-webkit-scrollbar-thumb{border-width:5px;min-width:132px;min-height:76px}.manager-header{grid-template-columns:42px 1fr 42px;height:48px;padding:0 8px}.manager-title{gap:10px}.manager-title-stack{flex-direction:row;gap:10px}.manager-title h1{font-size:18px}.manager-branch-tabs{max-width:300px;display:flex}.manager-export-actions{display:flex}.manager-export-actions button{height:30px;padding:0 8px;font-size:11px}.manager-title>button{display:none}.month-arrow{height:34px;font-size:18px}.employee-col,.employee-name-cell,.sector-name-cell{width:104px;min-width:104px;max-width:104px}.day-col,.shift-cell,.sector-empty-cell{width:48px;min-width:48px;max-width:48px}.manager-table th{height:40px}.manager-table td{border-bottom-width:4px;height:42px}.sector-row td{height:22px}.employee-name-cell{padding:5px 8px}.employee-name-cell b{font-size:12px}.employee-name-cell span{font-size:9px}.shift-card-mini{min-height:36px}.manager-day-cleaning-btn{padding-bottom:11px}.manager-day-double-pay-btn{min-width:20px;height:12px;padding:0 4px;font-size:7px;line-height:12px;bottom:1px}.shift-time{font-size:10px}.shift-meta,.role-badge,.shift-comment{max-width:42px;font-size:7px}.manager-comment-dot{width:10px;height:10px;font-size:7px;top:2px;right:2px}.manager-legend{flex-wrap:nowrap;gap:12px;min-height:34px;max-height:34px;padding:4px 8px;font-size:11px;overflow:auto hidden}.legend-box{width:12px;height:12px}}.comment-modal-overlay{z-index:11000;background:#00000061;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.comment-modal{color:#2b1b0c;background:#fff7ea;border-radius:16px;width:min(420px,100%);max-height:min(420px,84dvh);overflow:auto;box-shadow:0 20px 70px #00000059}.comment-modal-head{justify-content:space-between;align-items:center;gap:12px;padding:14px 16px 0;display:flex}.comment-modal h2{margin:0;font-size:20px}.comment-modal button{color:#fff;cursor:pointer;background:#c9870d;border:0;border-radius:50%;width:34px;height:34px;font-size:18px;font-weight:900}.comment-modal p{white-space:pre-wrap;margin:0;padding:14px 16px 18px;font-size:16px;line-height:1.4}.employee-page{background:#ead0a3;flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}.employee-header{color:#fff;background:#c9870d;flex-shrink:0;justify-content:center;align-items:center;height:62px;display:flex;position:relative}.employee-header-center{align-items:center;gap:16px;min-width:0;display:flex}.employee-title-stack{flex-direction:column;align-items:center;gap:4px;min-width:0;display:flex}.employee-header-center h1{color:#fff;margin:0;font-size:26px;font-weight:900}.employee-mode-tabs{background:#784b0052;border-radius:12px;align-items:center;width:132px;padding:2px;display:none;box-shadow:inset 0 0 0 1px #ffffff1f}.employee-mode-tabs button{color:#fff;cursor:pointer;background:0 0;border:0;border-radius:10px;flex:1;min-width:0;height:24px;font-size:11px;font-weight:900}.employee-mode-tabs button.active{color:#c9870d;background:#fff}.employee-arrow{color:#fff;cursor:pointer;background:#ffffff29;border:none;border-radius:10px;width:42px;height:42px;font-size:24px;font-weight:900}.employee-current-btn{color:#fff;cursor:pointer;background:#a86f06;border:none;border-radius:10px;height:34px;padding:0 14px;font-weight:900;position:absolute;right:18px}.employee-export-actions{gap:6px;display:flex;position:absolute;left:14px}.employee-export-actions button{color:#fff;cursor:pointer;background:#ffffff2e;border:0;border-radius:10px;height:30px;font-size:12px;font-weight:900}.employee-name-row{background:#efd7aa;flex-wrap:wrap;flex-shrink:0;justify-content:center;align-items:center;gap:12px;min-height:46px;padding:6px 12px;display:flex}.employee-name{color:#5f5570;font-size:18px;font-weight:900}.employee-inline-message{border-radius:999px;padding:5px 10px;font-size:13px;font-weight:800}.employee-inline-message.ok{color:#28630f;background:#e7f7de}.employee-inline-message.error{color:#a11616;background:#ffe4e4}.employee-week-row{text-align:center;color:#5f5570;background:#f1ddb9;flex-shrink:0;grid-template-columns:repeat(7,1fr);align-items:center;height:40px;font-weight:900;display:grid}.employee-loading{color:#5a3a17;padding:24px;font-weight:900}.employee-calendar-grid{flex:1;grid-template-rows:repeat(6,minmax(72px,1fr));grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;min-height:0;padding:12px 16px;animation-duration:.26s;animation-timing-function:cubic-bezier(.22,1,.36,1);animation-fill-mode:both;display:grid}.employee-calendar-grid.slide-next{animation-name:slideInFromRight}.employee-calendar-grid.slide-prev{animation-name:slideInFromLeft}@keyframes slideInFromRight{0%{opacity:.2;transform:translate(34px)}to{opacity:1;transform:translate(0)}}@keyframes slideInFromLeft{0%{opacity:.2;transform:translate(-34px)}to{opacity:1;transform:translate(0)}}.employee-day{color:#5f5570;background:#f8ead7;border-radius:12px;flex-direction:column;align-items:center;min-width:0;min-height:0;padding:7px;font-weight:900;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #7a5c381a}.employee-day.has-comment{cursor:pointer;box-shadow:inset 0 0 0 2px #5b2c784d}.employee-comment-dot{color:#fff;background:#5d2c78;border-radius:50%;place-items:center;width:13px;height:13px;font-size:8px;font-weight:900;line-height:1;display:grid;position:absolute;top:4px;right:4px}.employee-day.empty{visibility:hidden}.employee-day-number{font-size:20px;font-weight:900;line-height:1}.employee-shift-time{color:#1f160b;white-space:nowrap;margin-top:7px;font-size:13px}.employee-shift-meta{text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin-top:3px;font-size:11px;overflow:hidden}.employee-role-badge{color:#332313;text-overflow:ellipsis;white-space:nowrap;background:#ffffffbf;border-radius:999px;max-width:100%;margin-top:4px;padding:2px 7px;font-size:10px;overflow:hidden}.employee-comment{opacity:.75;text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin-top:3px;font-size:10px;overflow:hidden}.employee-swap-btn,.employee-swap-state{border:none;border-radius:8px;width:100%;min-height:27px;margin-top:auto;font-size:12px;font-weight:900}.employee-swap-btn{color:#fff;cursor:pointer;background:#c9870d}.employee-swap-btn:disabled{opacity:.65;cursor:wait}.employee-swap-state{color:#5d2c78;background:#ffffffc2;justify-content:center;align-items:center;display:flex}.employee-day.work,.employee-legend-box.work{background:#f7c729}.employee-day.cleaning,.employee-legend-box.cleaning{background:#ff4d4f}.employee-day.canteen_duty,.employee-legend-box.canteen_duty{background:#ff7ad9}.employee-day.lunch_duty,.employee-legend-box.lunch_duty{background:#ff9f1a}.employee-day.vacation,.employee-legend-box.vacation{background:#6eb6ef}.employee-legend{color:#57452f;background:#e3c78f;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:18px;min-height:62px;padding:8px 18px;font-size:14px;font-weight:800;display:flex;box-shadow:0 -4px 10px #00000014}.employee-legend span{white-space:nowrap;align-items:center;gap:7px;display:flex}.employee-legend-box{border:1px solid #0000001f;border-radius:5px;width:18px;height:18px;display:inline-block}.employee-legend-actions{gap:6px;margin-left:auto;display:flex}.employee-legend-actions button{color:#fff;cursor:pointer;background:#c9870d;border:0;border-radius:10px;height:30px;font-size:12px;font-weight:900}@media (width<=760px){.employee-header{height:74px}.employee-header-center h1{font-size:18px}.employee-header-center{gap:8px}.employee-mode-tabs{display:flex}.employee-current-btn,.employee-export-actions{display:none}.employee-calendar-grid{grid-template-rows:repeat(6,minmax(82px,1fr));gap:5px;padding:8px}.employee-day{border-radius:9px;padding:5px}.employee-day-number{font-size:16px}.employee-shift-time{margin-top:4px;font-size:11px}.employee-shift-meta,.employee-role-badge,.employee-comment{font-size:9px}.employee-swap-btn,.employee-swap-state{min-height:24px;font-size:10px}.employee-legend{gap:10px;max-height:76px;font-size:12px;overflow:auto}}.employee-day-top{justify-content:space-between;align-items:flex-start;gap:3px;width:100%;display:flex}@media (width<=760px){.employee-page{height:100%;padding-bottom:0}.employee-header{height:72px}.employee-header-center h1{font-size:17px}.employee-arrow{width:38px;height:38px;font-size:20px}.employee-mode-tabs{width:118px}.employee-week-row{height:34px;font-size:13px}.employee-calendar-grid{grid-template-rows:repeat(6,minmax(68px,1fr));gap:4px;padding:7px}.employee-day{border-radius:8px;align-items:stretch;padding:4px}.employee-day-number{text-align:left;font-size:13px;line-height:1}.employee-shift-time{text-align:right;white-space:nowrap;margin-top:0;font-size:9px;line-height:1}.employee-shift-meta{text-align:center;margin-top:4px;font-size:8px;line-height:1}.employee-role-badge{white-space:normal;text-overflow:clip;max-width:100%;margin-top:2px;padding:1px 3px;font-size:7px;line-height:1.05}.employee-comment{display:none}.employee-swap-btn,.employee-swap-state{border-radius:6px;min-height:20px;font-size:8px}.employee-legend{flex-wrap:nowrap;gap:8px;min-height:auto;max-height:42px;padding:6px 8px;font-size:10px;overflow:auto hidden}.employee-legend-box{width:13px;height:13px}}@media (width<=900px) and (orientation:landscape){.employee-header{height:48px}.employee-header-center{gap:14px}.employee-title-stack{flex-direction:row;gap:12px}.employee-header-center h1{font-size:22px}.employee-mode-tabs{width:210px;display:flex}.employee-arrow{width:42px;height:34px;font-size:18px}.employee-current-btn{height:30px;font-size:12px;display:none;right:12px}.employee-export-actions,.employee-name-row{display:none}.employee-week-row{height:30px;font-size:13px}.employee-calendar-grid{flex:none;grid-template-rows:repeat(6,48px);gap:4px;padding:6px 10px}.employee-day{border-radius:8px;align-items:stretch;padding:4px}.employee-day-number{font-size:13px}.employee-shift-time{margin-top:0;font-size:10px}.employee-shift-meta,.employee-role-badge,.employee-comment{font-size:8px}.employee-role-badge{white-space:normal;padding:1px 4px;line-height:1}.employee-swap-btn,.employee-swap-state{border-radius:6px;min-height:18px;font-size:8px}.employee-legend{flex-wrap:nowrap;gap:12px;min-height:34px;max-height:34px;padding:4px 8px;font-size:11px;overflow:auto hidden}.employee-legend-box{width:12px;height:12px}}@media (width<=760px) and (height<=700px){.employee-name-row{display:none}.employee-calendar-grid{grid-template-rows:repeat(6,minmax(58px,1fr))}.employee-legend{flex-wrap:nowrap;max-height:44px;overflow:auto hidden}}@media (width<=760px) and (orientation:portrait){.employee-header{height:60px;padding:0 6px}.employee-header-center{justify-content:center;gap:6px;width:100%}.employee-title-stack{flex-direction:row;gap:8px}.employee-header-center h1{font-size:16px}.employee-arrow{border-radius:9px;width:34px;height:34px;font-size:18px}.employee-mode-tabs{border-radius:999px;width:118px}.employee-mode-tabs button{border-radius:999px;height:26px}.employee-week-row{height:34px}.employee-calendar-grid{flex:auto;grid-template-rows:repeat(6,minmax(58px,1fr));gap:5px;padding:7px 8px}.employee-day{border-radius:8px;padding:4px}.employee-role-badge{max-height:24px;display:block;overflow:hidden}.employee-swap-btn,.employee-swap-state{border-radius:6px;height:18px;min-height:18px;font-size:8px;line-height:1}.employee-legend{min-height:38px;max-height:38px;padding:5px 8px}}@media (width<=900px) and (orientation:landscape){.employee-header{height:46px}.employee-title-stack{flex-direction:row;gap:10px}.employee-header-center h1{font-size:20px}.employee-mode-tabs{border-radius:999px;width:176px}.employee-mode-tabs button{border-radius:999px;height:24px}.employee-week-row{height:28px;font-size:12px}.employee-calendar-grid{flex:auto;grid-template-rows:repeat(6,minmax(34px,1fr));gap:4px;min-height:0;padding:5px 8px}.employee-day{border-radius:7px;align-items:stretch;min-height:0;padding:3px 4px;position:relative}.employee-day-top{align-items:flex-start;min-height:13px}.employee-day-number{font-size:12px}.employee-shift-time{margin-top:0;font-size:9px;line-height:1}.employee-shift-meta,.employee-role-badge,.employee-comment{display:none}.employee-comment-dot{width:10px;height:10px;font-size:7px;top:2px;right:2px}.employee-swap-btn,.employee-swap-state{border-radius:5px;width:auto;height:13px;min-height:13px;margin-top:0;font-size:0;line-height:1;position:absolute;bottom:3px;left:4px;right:4px}.employee-swap-btn:after{content:"Замен.";font-size:8px}.employee-swap-state:after{content:"Заявка";font-size:8px}.employee-legend{gap:10px;min-height:30px;max-height:30px;padding:3px 8px;font-size:10px}.employee-legend-box{width:11px;height:11px}}.stats-page{color:#2b1b0c;background:#ead0a3;flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}.stats-header{color:#fff;background:#c9870d;flex-shrink:0;align-items:center;gap:12px;min-height:62px;padding:0 16px;display:flex}.stats-header h1{text-align:center;color:#fff;flex:1;margin:0;font-size:24px}.stats-header button,.stats-current,.rate-form button,.rate-history button{color:#fff;cursor:pointer;background:#ffffff2e;border:none;border-radius:10px;min-height:38px;padding:0 14px;font-weight:900}.stats-current{background:#a86f06!important}.stats-content{flex:1;padding:16px;overflow:auto}.stats-message{background:#fff7ea;border-radius:12px;margin-bottom:12px;padding:12px 14px;font-weight:900}.stats-message.error{color:#9d1717;background:#ffe4e4}.stats-message.ok{color:#28630f;background:#e8f7df}.stats-toolbar,.rate-panel,.bonus-panel{background:#fff1d8;border-radius:18px;margin-bottom:16px;padding:16px;box-shadow:0 10px 28px #4b36211f}.stats-toolbar{grid-template-columns:minmax(260px,1fr) minmax(220px,.6fr);gap:14px;display:grid}.stats-toolbar>div{flex-direction:column;gap:7px;display:flex}.stats-toolbar select,.rate-form input{color:#2b1b0c;background:#fffaf1;border:1px solid #d3b270;border-radius:10px;min-height:40px;padding:0 10px;font-weight:800}.stats-muted{color:#7a5c38;font-size:13px;font-weight:800}.stats-grid{grid-template-columns:repeat(4,minmax(170px,1fr));gap:12px;margin-bottom:16px;display:grid}.stat-card{color:#fff;background:#c9870d;border-radius:18px;flex-direction:column;justify-content:center;min-height:122px;padding:16px;display:flex;box-shadow:0 10px 22px #65410d2e}.stat-card span{opacity:.9;font-size:13px;font-weight:900}.stat-card b{margin-top:8px;font-size:28px;line-height:1}.stat-card small{opacity:.85;margin-top:10px;font-weight:800}.rate-panel h2{margin:0 0 6px}.rate-panel p{color:#6a4a22;margin:0;font-weight:700;line-height:1.4}.bonus-panel{grid-template-columns:minmax(220px,.8fr) minmax(280px,1fr);align-items:end;gap:16px;display:grid}.bonus-panel h2{margin:0 0 6px}.bonus-panel p{color:#6a4a22;margin:0;font-weight:700;line-height:1.4}.bonus-form{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:end;gap:12px;display:grid}.bonus-form label{color:#6a4a22;flex-direction:column;gap:6px;font-size:13px;font-weight:900;display:flex}.bonus-form input{color:#2b1b0c;background:#fffaf1;border:1px solid #d3b270;border-radius:10px;min-height:40px;padding:0 10px;font-weight:800}.bonus-form button{color:#fff;cursor:pointer;background:#c9870d;border:none;border-radius:10px;min-height:40px;padding:0 14px;font-weight:900}.bonus-form button:disabled{opacity:.65;cursor:wait}.bonus-result{color:#4b3621;background:#f8e6c8;border-radius:12px;flex-direction:column;justify-content:center;min-height:64px;padding:10px 12px;display:flex}.bonus-result span{color:#7a5c38;font-size:12px;font-weight:900}.bonus-result b{margin-top:4px;font-size:24px;line-height:1}.rate-form{grid-template-columns:180px 180px auto;align-items:end;gap:12px;margin-top:14px;display:grid}.rate-form label{color:#6a4a22;flex-direction:column;gap:6px;font-size:13px;font-weight:900;display:flex}.rate-form button{background:#c9870d}.rate-history{flex-direction:column;gap:8px;margin-top:14px;display:flex}.rate-history>div{background:#f8e6c8;border-radius:12px;grid-template-columns:140px 1fr auto;align-items:center;gap:10px;padding:10px 12px;font-weight:900;display:grid}.rate-history button{background:#8f2f2f;min-height:32px}@media (width<=900px){.stats-grid{grid-template-columns:repeat(2,minmax(150px,1fr))}.stats-toolbar,.bonus-panel,.bonus-form,.rate-form{grid-template-columns:1fr}}@media (width<=760px){.stats-header{min-height:58px;padding:0 8px}.stats-header h1{font-size:17px}.stats-grid{grid-template-columns:1fr}.stat-card{min-height:96px}.stats-page{height:100%;padding-bottom:86px;overflow-y:auto}.stats-header{height:56px;padding:0 8px}.stats-header h1{white-space:nowrap;font-size:17px}.stats-current{display:none}.stats-content{padding:10px}.stats-toolbar{grid-template-columns:1fr;gap:8px;padding:12px}.stats-grid{grid-template-columns:1fr 1fr;gap:8px}.stat-card{min-height:96px;padding:12px}.stat-card span{font-size:11px}.stat-card b{font-size:23px}.rate-panel,.bonus-panel{border-radius:16px;padding:14px}.rate-panel h2,.bonus-panel h2{font-size:22px}.rate-panel p,.bonus-panel p{font-size:13px;line-height:1.35}.rate-form{grid-template-columns:1fr}.rate-history>div{grid-template-columns:1fr auto;gap:6px}.rate-history button{grid-column:2}}.swaps-page{color:#243020;min-height:100%;padding:24px}.swaps-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.swaps-header h1{margin:0;font-size:32px}.swaps-header p{color:#64705f;margin:6px 0 0}.swaps-header button,.swap-actions button{color:#fff;cursor:pointer;background:#2f7d32;border:0;border-radius:14px;padding:11px 16px;font-weight:800;box-shadow:0 8px 20px #2f7d3229}.swaps-header button:disabled,.swap-actions button:disabled{opacity:.6;cursor:default}.swaps-message{background:#f4f0df;border-radius:16px;margin-bottom:14px;padding:12px 14px;font-weight:700}.swaps-message.error{color:#9d2626;background:#ffe5e5}.swaps-message.ok{color:#2f7d32;background:#e3f6dc}.swaps-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.swaps-stack{flex-direction:column;gap:18px;display:flex}.swaps-section{flex-direction:column;gap:12px;display:flex}.swaps-section.wide{grid-column:1/-1}.swaps-section h2{margin:8px 0 2px;font-size:20px}.swaps-empty{color:#6d6a5d;background:#fffdf3;border:1px dashed #c8c2aa;border-radius:18px;padding:20px}.swap-card{background:#fffdf7;border:1px solid #e2dbc7;border-radius:22px;padding:16px;box-shadow:0 12px 32px #5b4c2d14}.swap-card.accepted{border-color:#f3b24a}.current-swaps .swap-card{border-width:2px}.swap-card.approved{border-color:#79ba6d}.swap-card.rejected,.swap-card.cancelled{opacity:.78}.swap-card-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.swap-card h3{margin:0;font-size:18px}.swap-card p{color:#697062;margin:5px 0 0}.swap-status{white-space:nowrap;color:#43523c;background:#e9eddc;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900}.swap-status.open{color:#245d94;background:#e8f1ff}.swap-status.accepted{color:#a26210;background:#fff1d8}.swap-status.approved{color:#2f7d32;background:#e4f8dd}.swap-status.rejected,.swap-status.cancelled{color:#9d2626;background:#ffe5e5}.swap-info-grid{grid-template-columns:repeat(4,minmax(120px,1fr));gap:10px;margin-top:14px;display:grid}.swap-info-grid div{background:#f7f3e6;border-radius:14px;padding:10px}.swap-info-grid span{color:#777063;margin-bottom:4px;font-size:12px;display:block}.swap-info-grid b{font-size:14px}.swap-note{color:#5f5a4d;background:#f5f1e4;border-radius:14px;margin-top:12px;padding:10px 12px}.swap-actions{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.swap-actions .secondary{background:#7d715d}.swap-actions .danger{background:#b2463d}@media (width<=920px){.swaps-page{padding:16px}.swaps-header{flex-direction:column;align-items:flex-start}.swaps-columns,.swap-info-grid{grid-template-columns:1fr}.swaps-section.wide{grid-column:auto}}.swaps-page{height:100%;padding-bottom:48px;overflow:hidden auto}.profile-card,.swap-card{border-radius:14px;padding:12px}.profile-card{gap:10px}@media (width>=921px){.swap-card{border-radius:22px;padding:16px}.swap-info-grid{grid-template-columns:repeat(4,minmax(120px,1fr));gap:10px}.swap-info-grid div{min-height:0;padding:10px}.swap-info-grid span{font-size:12px}.swap-info-grid b{font-size:14px}.swap-actions{gap:10px}.swap-actions button{min-height:0;font-size:inherit;padding:11px 16px}}@media (width<=760px){.swaps-page{padding:16px 12px 112px}.swap-card-top{flex-direction:column}.swap-status{align-self:flex-start}}.profile-page{color:#243020;-webkit-overflow-scrolling:touch;height:100%;min-height:0;padding:24px 24px 96px;overflow-y:auto}.profile-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.profile-header-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.profile-header h1{margin:0;font-size:32px}.profile-header p,.profiles-title-row p,.profile-modal-head p,.password-block p,.self-password-form p{color:#64705f;margin:6px 0 0}.profile-header button,.phone-form button,.self-password-card button,.self-password-form button,.password-modal-actions button,.profiles-tools button,.modal-actions button,.profile-actions button,.manager-toggle,.password-block button{color:#fff;cursor:pointer;background:#2f7d32;border:0;border-radius:14px;padding:11px 16px;font-weight:800;box-shadow:0 8px 20px #2f7d3229}.profile-header button.secondary{background:#8a8067}.profile-header button:disabled,.phone-form button:disabled,.password-modal-actions button:disabled,.self-password-form button:disabled,.modal-actions button:disabled{opacity:.65;cursor:default}.profile-message{background:#f4f0df;border-radius:16px;margin-bottom:14px;padding:12px 14px;font-weight:700}.profile-message.error{color:#9d2626;background:#ffe5e5}.profile-message.ok{color:#2f7d32;background:#e3f6dc}.profile-section{flex-direction:column;gap:12px;margin-bottom:24px;display:flex}.profile-section h2{margin:8px 0 0;font-size:20px}.profile-card{background:#fffdf7;border:1px solid #e2dbc7;border-radius:24px;gap:16px;padding:16px;display:flex;box-shadow:0 12px 32px #5b4c2d14}.profile-avatar{color:#fff;background:#2f7d32;border-radius:18px;flex:0 0 54px;place-items:center;width:54px;height:54px;font-size:24px;font-weight:900;display:grid}.profile-card-main{flex:1;min-width:0}.profile-card-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.profile-card h3{margin:0;font-size:20px}.profile-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.profile-actions button{box-shadow:none;border-radius:12px;padding:9px 12px}.profile-actions button.danger{background:#9d2626}.profile-fields-grid{grid-template-columns:repeat(6,minmax(120px,1fr));gap:10px;display:grid}.profile-fields-grid div{background:#f7f3e6;border-radius:14px;min-width:0;padding:10px}.profile-fields-grid span,.phone-form span,.self-password-form span{color:#777063;margin-bottom:4px;font-size:12px;display:block}.profile-fields-grid b{text-overflow:ellipsis;display:block;overflow:hidden}.phone-form{background:#f7f3e6;border:1px solid #e2dbc7;border-radius:22px;flex-wrap:wrap;align-items:flex-end;gap:12px;padding:16px;display:flex}.phone-form label{flex:1;min-width:220px}.self-password-card,.self-password-form{background:#fff8eb;border:1px solid #e2dbc7;border-radius:18px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;display:flex}.self-password-head{flex:0 0 190px;min-width:180px}.self-password-head h3{margin:0;font-size:18px}.self-password-grid{flex:420px;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.pwa-install-panel,.push-panel{background:#fffdf7;border:1px solid #e2dbc7;border-radius:22px;justify-content:space-between;align-items:center;gap:14px;padding:16px;display:flex}.pwa-install-panel h3,.push-panel h3{margin:0;font-size:18px}.pwa-install-panel p,.push-panel p{color:#64705f;margin:5px 0 0;font-weight:700}.pwa-install-panel button,.push-panel button{color:#fff;cursor:pointer;white-space:nowrap;background:#2f7d32;border:0;border-radius:14px;padding:11px 16px;font-weight:800;box-shadow:0 8px 20px #2f7d3229}.push-panel button.secondary{background:#8a8067}.pwa-install-panel button:disabled,.push-panel button:disabled{opacity:.65;cursor:default}.push-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.phone-form input,.self-password-grid input,.profiles-tools input,.editor-grid input,.password-grid input{box-sizing:border-box;color:#243020;background:#fffdf7;border:1px solid #d7cfb7;border-radius:14px;outline:none;width:100%;padding:12px 14px;font-weight:700}.phone-input-wrap{background:#fffdf7;border:1px solid #d7cfb7;border-radius:14px;align-items:center;width:100%;display:flex;overflow:hidden}.phone-input-wrap .phone-prefix{color:#243020;flex:none;margin:0;padding:0 0 0 14px;font-size:16px;font-weight:900}.phone-input-wrap input{letter-spacing:0;border:0;border-radius:0;padding-left:4px}.phone-input-wrap input:focus{outline:none}.profiles-title-row{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.profiles-tools{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.profiles-tools input{width:320px;max-width:100%}.profiles-list{grid-template-columns:1fr;gap:12px;display:grid}.profile-empty{color:#6d6a5d;background:#fffdf3;border:1px dashed #c8c2aa;border-radius:18px;padding:20px}.profile-modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#2430205c;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.profile-modal{background:#fffdf7;border:1px solid #e2dbc7;border-radius:26px;width:min(900px,100%);max-height:92vh;padding:20px;overflow:auto;box-shadow:0 30px 80px #24302047}.password-modal-backdrop{z-index:60;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#24302057;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.password-modal{background:#fffdf7;border:1px solid #e2dbc7;border-radius:22px;width:min(460px,100%);max-height:min(78dvh,620px);padding:18px;overflow:auto;box-shadow:0 24px 70px #24302047}.password-modal .self-password-grid{flex:auto;grid-template-columns:1fr}.password-modal-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.password-modal-head h2{margin:0;font-size:22px}.password-modal-head p{color:#64705f;margin:5px 0 0}.password-modal .ghost{color:#243020;cursor:pointer;background:#f0e8d7;border:0;border-radius:12px;flex:0 0 36px;width:36px;height:36px;font-size:23px}.password-modal-actions{justify-content:flex-end;gap:10px;margin-top:14px;display:flex}.password-modal-actions .secondary{background:#8a8067}.profile-modal-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.profile-modal-head h2{margin:0}.profile-modal .ghost{cursor:pointer;color:#243020;background:#f0e8d7;border:0;border-radius:14px;width:38px;height:38px;font-size:24px}.editor-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.editor-grid label,.password-grid label,.self-password-grid label{color:#6a4a22;flex-direction:column;gap:6px;font-size:13px;font-weight:900;display:flex}.manager-toggle{color:#243020;min-height:64px;box-shadow:none;text-align:left;background:#f7f3e6;border:1px solid #e2dbc7;align-items:center;gap:12px;display:flex}.manager-toggle small{color:#777063;margin-top:3px;font-size:12px;display:block}.manager-toggle .switch{background:#d7cfb7;border-radius:999px;flex:0 0 48px;width:48px;height:28px;padding:3px;transition:all .2s}.manager-toggle .switch i{background:#fff;border-radius:50%;width:22px;height:22px;transition:all .2s;display:block}.manager-toggle.active{background:#e7f5df;border-color:#2f7d32}.manager-toggle.active .switch{background:#2f7d32}.manager-toggle.active .switch i{transform:translate(20px)}.password-block{background:#fff8eb;border:1px solid #e2dbc7;border-radius:18px;margin-top:14px;padding:14px}.password-block .secondary,.modal-actions .secondary{background:#8a8067}.password-block .small{box-shadow:none;margin-top:10px;padding:9px 12px}.password-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:12px;margin-top:12px;display:grid}.choice-block{background:#f7f3e6;border:1px solid #e2dbc7;border-radius:18px;margin-top:14px;padding:14px}.choice-block>b{margin-bottom:10px;display:block}.choice-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.choice-pill{color:#243020;cursor:pointer;text-align:left;background:#fffdf7;border:1px solid #eee1c8;border-radius:14px;align-items:center;gap:10px;min-height:44px;padding:10px 12px;font-weight:900;display:flex}.fake-check{color:#0000;background:#fff;border:2px solid #c9bea5;border-radius:8px;flex:0 0 22px;place-items:center;width:22px;height:22px;font-size:14px;display:grid}.choice-pill.active{background:#e7f5df;border-color:#2f7d32}.choice-pill.active .fake-check{color:#fff;background:#2f7d32;border-color:#2f7d32}.modal-actions{justify-content:flex-end;gap:10px;margin-top:16px;display:flex}.manager-all-branches-note{color:#236428;background:#e5f6df;border:1px solid #2e8b34;border-radius:14px;padding:14px;font-weight:900}@media (width<=1100px){.profile-fields-grid,.editor-grid,.choice-list,.password-grid,.self-password-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.profile-page{padding:16px 12px 96px}.profile-header,.profiles-title-row,.profile-card-head{flex-direction:column;align-items:flex-start}.profile-card{flex-direction:column}.profile-fields-grid,.editor-grid,.choice-list,.password-grid,.self-password-grid{grid-template-columns:1fr}.self-password-card,.self-password-form{flex-direction:column;align-items:stretch}.self-password-head{flex:auto;min-width:0}.self-password-card button,.self-password-form button,.profiles-tools,.profiles-tools input,.profiles-tools button{width:100%}.profile-actions{justify-content:flex-start}.modal-actions{flex-direction:column}.modal-actions button{width:100%}.pwa-install-panel,.push-panel{flex-direction:column;align-items:stretch}.pwa-install-panel button,.push-panel button{width:100%}.push-actions{flex-direction:column;width:100%}}.profile-card{border-radius:14px;gap:10px;padding:10px}.profile-main-select{color:#263421;background:#fffaf0;border:1px solid #7a5c3859;border-radius:14px;width:100%;min-height:50px;padding:0 14px;font-size:15px;font-weight:900}.profile-main-select:focus{border-color:#2e8b34;outline:2px solid #2e8b344d}.profile-avatar{width:38px;height:38px;font-size:18px}.profile-fields-grid,.swap-info-grid{grid-template-columns:1fr 1fr;gap:6px}.profile-fields-grid div,.swap-info-grid div{min-height:48px;padding:8px}.profile-fields-grid span,.swap-info-grid span{font-size:10px}.profile-fields-grid b,.swap-info-grid b{font-size:12px}.profile-actions,.swap-actions{flex-wrap:wrap;gap:6px}.profile-actions button,.swap-actions button{min-height:34px;padding:0 10px;font-size:12px}.choice-help{color:#75684f;margin:8px 0 0;font-size:12px;line-height:1.35}@media (width>=721px){.profile-card{border-radius:24px;gap:16px;padding:16px}.profile-avatar{width:54px;height:54px;font-size:24px}.profile-fields-grid{grid-template-columns:repeat(6,minmax(120px,1fr));gap:10px}.profile-fields-grid div{min-height:0;padding:10px}.profile-fields-grid span{font-size:12px}.profile-fields-grid b{font-size:inherit}.profile-actions{gap:8px}.profile-actions button{min-height:0;font-size:inherit;padding:9px 12px}}@media (width<=720px){.profile-header h1{font-size:28px}.profile-modal-backdrop{align-items:end;padding:8px}.profile-modal{border-radius:20px;max-height:94dvh;padding:14px}.password-modal{border-radius:18px;width:min(420px,100vw - 24px);max-height:78dvh;padding:14px}.password-modal-actions{flex-direction:column}.password-modal-actions button{width:100%}}.app-sidebar{color:#fff;background:#c9870d;flex-direction:column;flex-shrink:0;gap:16px;width:210px;height:100%;padding:18px 14px;display:flex}.sidebar-brand{min-width:0}.sidebar-logo{letter-spacing:.5px;justify-content:center;align-items:center;gap:9px;font-size:28px;font-weight:900;display:flex}.sidebar-logo img{background:#ffffff2e;border-radius:10px;width:34px;height:34px;display:block}.sidebar-user{background:#ffffff29;border-radius:12px;flex-direction:column;gap:2px;margin-top:14px;padding:10px;line-height:1.2;display:flex}.sidebar-user b{font-size:14px}.sidebar-user span{opacity:.9;font-size:12px}.sidebar-nav{flex-direction:column;gap:10px;min-height:0;display:flex}.sidebar-branch-switch{min-width:0}.sidebar-branch-title{opacity:.9;margin-bottom:8px;font-size:12px;font-weight:900}.sidebar-branch-buttons{flex-direction:column;gap:8px;display:flex}.sidebar-export-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.app-sidebar .sidebar-export-btn{text-align:center;letter-spacing:0;background:#ffffff24;border:1px solid #ffffff59;height:38px;padding:0 10px;font-size:13px;box-shadow:inset 0 1px #ffffff2e,0 8px 18px #5a360a24}.app-sidebar .sidebar-export-btn.pdf{color:#9b5d00;background:#fff7e6}.app-sidebar .sidebar-export-btn.excel{color:#2f6d2f;background:#e8f7df}.sidebar-theme-toggle{text-align:center!important;background:#ffffff21!important;border:1px solid #ffffff47!important;height:38px!important;font-size:13px!important}.app-sidebar button{color:#fff;cursor:pointer;text-align:left;text-overflow:ellipsis;white-space:nowrap;background:#d99119;border:none;border-radius:12px;height:46px;padding:0 14px;font-size:16px;font-weight:800;transition:all .15s;overflow:hidden}.app-sidebar button:hover{filter:brightness(1.04)}.app-sidebar button.active{color:#c9870d;background:#fff}.sidebar-logout{margin-top:auto;text-align:center!important;background:#9f1d1d!important}.sidebar-mobile-logout{display:none}@media (width<=760px){.app-sidebar{z-index:9999;width:100%;height:calc(64px + env(safe-area-inset-bottom));min-height:calc(64px + env(safe-area-inset-bottom));max-height:calc(64px + env(safe-area-inset-bottom));padding:7px 8px calc(7px + env(safe-area-inset-bottom));display:block;position:fixed;bottom:0;left:0;right:0;overflow:hidden;box-shadow:0 -6px 18px #0000002e}.sidebar-brand,.sidebar-branch-switch,.sidebar-export-actions,.sidebar-theme-toggle,.sidebar-logout,.sidebar-branch-title{display:none}.sidebar-branch-switch{width:100%;min-width:0}.sidebar-branch-buttons{flex-direction:row;gap:6px;width:100%}.sidebar-branch-btn{text-align:center;flex:1;justify-content:center;min-width:0;height:34px;min-height:34px;padding:0 8px;font-size:12px}.sidebar-nav{scrollbar-width:none;grid-template-columns:repeat(6,minmax(0,1fr));align-content:center;gap:6px;width:100%;min-width:0;height:100%;display:grid;overflow:hidden}.sidebar-nav::-webkit-scrollbar{display:none}.sidebar-mobile-logout{display:block;background:#9f1d1d!important}.app-sidebar .sidebar-nav button{text-align:center;white-space:normal;text-overflow:clip;border-radius:10px;flex:none;justify-content:center;align-items:center;min-width:0;height:50px;min-height:50px;max-height:50px;padding:0 6px;font-size:11px;line-height:1.05;display:flex;overflow:hidden;width:100%!important}.sidebar-mobile-logout{display:flex}.manager-sidebar{height:calc(112px + env(safe-area-inset-bottom));min-height:calc(112px + env(safe-area-inset-bottom));max-height:calc(112px + env(safe-area-inset-bottom));padding:8px 8px calc(8px + env(safe-area-inset-bottom))}.manager-sidebar .sidebar-nav{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:42px;align-content:center;display:grid}.manager-sidebar .sidebar-nav button{height:42px;min-height:42px;max-height:42px;font-size:10px}}@media (width<=380px){.sidebar-nav{gap:5px}.app-sidebar .sidebar-nav button{padding:0 4px;font-size:10px}}@media (width<=900px) and (orientation:landscape){.app-sidebar{flex-direction:column;gap:6px;width:122px;height:100dvh;min-height:0;max-height:none;padding:6px;display:flex;position:static;overflow:hidden}.sidebar-brand{display:block}.sidebar-logo{font-size:15px}.sidebar-logo img{border-radius:7px;width:22px;height:22px}.sidebar-user,.sidebar-branch-switch{display:none}.sidebar-export-actions{grid-template-columns:1fr 1fr;gap:4px;display:grid}.sidebar-theme-toggle{display:block;border-radius:9px!important;height:26px!important;min-height:26px!important;padding:0 4px!important;font-size:9px!important}.app-sidebar .sidebar-export-btn{border-radius:9px;height:26px;min-height:26px;padding:0 4px;font-size:10px}.sidebar-branch-title{margin-bottom:4px;font-size:10px;display:block}.sidebar-branch-buttons{flex-flow:wrap;gap:4px}.sidebar-branch-btn{text-align:center;justify-content:center;height:26px;min-height:26px;padding:0 6px;font-size:10px}.sidebar-nav{flex-direction:column;gap:4px;width:100%;min-height:0;display:flex;overflow:hidden}.app-sidebar .sidebar-nav button{text-align:center;white-space:nowrap;justify-content:center;min-width:0;height:28px;min-height:28px;max-height:28px;padding:0 4px;font-size:11px;line-height:1;width:100%!important}.sidebar-logout{height:28px;min-height:28px;margin-top:auto;padding:0 6px;font-size:11px;display:block!important}}html,body,#root{width:100%;min-width:320px;height:100%;margin:0}*{box-sizing:border-box}body{overscroll-behavior:none;background:#ead0a3;font-family:Arial,sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}.app-shell{background:#ead0a3;width:100%;height:100dvh;min-height:100vh;display:flex;overflow:hidden}.app-content{flex:1;min-width:0;height:100%;overflow:hidden}.app-loading,.placeholder-page{color:#4b3621;background:#ead0a3;flex-direction:column;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex}.manager-heading-row,.employee-heading-row,.employee-general-heading-row{justify-content:center;align-items:center;gap:8px;min-width:0;display:flex}.home-theme-toggle{color:#fff;cursor:pointer;background:#fff3;border:0;border-radius:999px;width:34px;min-width:34px;height:34px;font-size:19px;font-weight:900;line-height:1;display:none}.placeholder-page h1{margin:0 0 12px;font-size:42px}@media (width<=760px){.app-shell{padding-bottom:calc(64px + env(safe-area-inset-bottom));display:block}.app-content{height:calc(100dvh - 64px - env(safe-area-inset-bottom))}.manager-shell{padding-bottom:calc(112px + env(safe-area-inset-bottom))}.manager-shell .app-content{height:calc(100dvh - 112px - env(safe-area-inset-bottom))}}@media (width<=760px) and (orientation:portrait){.home-theme-toggle{place-items:center;display:grid}}@media (width<=900px) and (orientation:landscape){.app-shell{padding-bottom:0;display:flex}.app-content{height:100dvh}}.employee-general-page{background:#ead0a3;flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}.employee-general-header{color:#fff;background:#c9870d;flex-shrink:0;grid-template-columns:58px 1fr 58px;align-items:center;height:62px;padding:0 14px;display:grid}.employee-general-title{justify-content:center;align-items:center;gap:14px;min-width:0;display:flex}.employee-general-title-stack{flex-direction:column;align-items:center;gap:4px;min-width:0;display:flex}.employee-general-heading-row{justify-content:center;align-items:center;gap:8px;min-width:0;display:flex}.employee-general-title h1{color:#fff;white-space:nowrap;text-overflow:ellipsis;min-width:0;margin:0;font-size:22px;font-weight:900;overflow:hidden}.employee-general-title-short{display:none}.employee-general-title button,.employee-general-arrow{color:#fff;cursor:pointer;background:#ffffff2e;border:none;border-radius:10px;font-weight:900}.employee-general-title button{height:34px;padding:0 14px}.employee-general-mode-tabs{background:#784b0052;border-radius:12px;align-items:center;width:132px;padding:2px;display:none;box-shadow:inset 0 0 0 1px #ffffff1f}.employee-general-mode-tabs button{color:#fff;cursor:pointer;background:0 0;border:0;border-radius:10px;flex:1;min-width:0;height:24px;font-size:11px;font-weight:900}.employee-general-mode-tabs button.active{color:#c9870d;background:#fff}.employee-general-arrow{height:42px;font-size:22px}.employee-general-export-actions{gap:6px;display:flex}.employee-general-export-actions button{height:30px;padding:0 10px;font-size:12px}.employee-general-message{color:#5a3a17;background:#fff7ea;border-radius:12px;margin:16px;padding:12px 14px;font-weight:800}.employee-general-message.error{color:#a11616;background:#ffe6e6}.employee-general-table-wrapper{scrollbar-width:auto;scrollbar-color:#b87920 #ffffff59;flex:1;min-height:0;padding:0;position:relative;overflow:auto}.employee-general-table-wrapper::-webkit-scrollbar{width:30px;height:30px}.employee-general-table-wrapper::-webkit-scrollbar-track{background:#ffffff61;border-radius:999px;margin:14px}.employee-general-table-wrapper::-webkit-scrollbar-thumb{background:#b87920;border:6px solid #ffffff80;border-radius:999px;min-width:160px;min-height:104px}.employee-general-table-wrapper::-webkit-scrollbar-thumb:hover{background:#965d16}.employee-general-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:max-content;min-width:100%}.employee-general-name-col{z-index:20;background:#fff1d8;width:190px;min-width:190px;max-width:190px;position:sticky;left:0}.employee-general-day-col,.employee-general-shift-cell,.employee-general-sector-empty-cell{width:76px;min-width:76px;max-width:76px}.employee-general-table th{color:#2b1b0c;z-index:90;background:#eed9b4;border-bottom:1px solid #d6ba83;height:56px;font-weight:900;position:sticky;top:0}.employee-general-table th.employee-general-name-col{z-index:110;background:#eed9b4}.employee-general-day-col span{display:block}.employee-general-week-day{opacity:.75;font-size:12px}.employee-general-day-number{margin-top:3px;font-size:18px}.employee-general-table td{text-align:center;vertical-align:middle;border-bottom:6px solid #ead0a3;height:64px}.employee-general-name-cell{color:#2b1b0c;padding:8px 10px;box-shadow:10px 0 16px #5a360a2e;text-align:left!important}.employee-general-name-cell b{font-size:15px;line-height:1.1;display:block}.employee-general-name-cell span{color:#7a5c38;margin-top:4px;font-size:11px;display:block}.employee-general-sector-row td{background:#d9b66f;height:32px}.employee-general-sector-name-cell{z-index:30;color:#4b3621;background:#d9b66f;width:190px;min-width:190px;max-width:190px;padding-left:12px;font-weight:900;position:sticky;left:0;box-shadow:10px 0 16px #5a360a33;text-align:left!important}.employee-general-sector-empty-cell{z-index:1;background:#d9b66f;position:relative}.employee-general-shift-cell{z-index:1;color:#1d1308;background:#fff1d8;border-left:1px solid #8a5f1733;padding:4px;position:relative}.employee-general-shift-cell.has-comment{cursor:pointer;box-shadow:inset 0 0 0 2px #5b2c784d}.employee-general-comment-dot{color:#fff;z-index:2;background:#5d2c78;border-radius:50%;place-items:center;width:13px;height:13px;font-size:8px;font-weight:900;line-height:1;display:grid;position:absolute;top:4px;right:4px}.employee-general-empty-plus{opacity:.35;color:#b79355;font-size:22px;font-weight:900}.employee-general-shift-card-mini{flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:56px;line-height:1.05;display:flex}.employee-general-shift-time{white-space:nowrap;font-size:13px;font-weight:900}.employee-general-shift-meta{text-overflow:ellipsis;white-space:nowrap;max-width:68px;font-size:10px;overflow:hidden}.employee-general-shift-comment{text-overflow:ellipsis;white-space:nowrap;opacity:.8;max-width:68px;font-size:9px;font-weight:900;overflow:hidden}.employee-general-current-row .employee-general-name-cell{background:#fff7d6;box-shadow:inset 4px 0 #2f7d32,8px 0 14px #5a360a29}.employee-general-current-row .employee-general-shift-cell{box-shadow:inset 0 0 0 2px #2f7d3247}.employee-general-role-badge{white-space:nowrap;text-overflow:ellipsis;background:#ffffffc7;border-radius:999px;max-width:68px;margin-top:2px;padding:2px 5px;font-size:9px;font-weight:900;overflow:hidden}.employee-general-shift-cell.work,.employee-general-legend-box.work{background:#f7c729}.employee-general-shift-cell.cleaning,.employee-general-legend-box.cleaning{background:#ff4d4f}.employee-general-shift-cell.canteen_duty,.employee-general-legend-box.canteen_duty{background:#ff7ad9}.employee-general-shift-cell.lunch_duty,.employee-general-legend-box.lunch_duty{background:#ff9f1a}.employee-general-shift-cell.vacation,.employee-general-legend-box.vacation{background:#6eb6ef}.employee-general-legend{color:#57452f;background:#e3c78f;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:18px;min-height:58px;padding:8px 18px;font-size:14px;font-weight:800;display:flex}.employee-general-legend span{white-space:nowrap;align-items:center;gap:7px;display:flex}.employee-general-legend-box{border:1px solid #0000001f;border-radius:5px;width:18px;height:18px;display:inline-block}.employee-general-legend-actions{gap:6px;margin-left:auto;display:flex}.employee-general-legend-actions button{color:#fff;cursor:pointer;background:#c9870d;border:0;border-radius:10px;height:30px;font-size:12px;font-weight:900}@media (width<=760px){.employee-general-table-wrapper{scrollbar-width:auto}.employee-general-table-wrapper::-webkit-scrollbar{width:22px;height:22px}.employee-general-table-wrapper::-webkit-scrollbar-thumb{border-width:5px;min-width:132px;min-height:76px}.employee-general-header{grid-template-columns:44px 1fr 44px;height:74px;padding:0 8px}.employee-general-title h1{font-size:16px}.employee-general-title>button{display:none}.employee-general-mode-tabs{width:118px;display:flex}.employee-general-export-actions{display:none}.employee-general-name-col,.employee-general-sector-name-cell{width:108px;min-width:108px;max-width:108px}.employee-general-day-col,.employee-general-shift-cell,.employee-general-sector-empty-cell{width:66px;min-width:66px;max-width:66px}.employee-general-legend{flex-wrap:nowrap;gap:8px;min-height:42px;max-height:42px;padding:6px 8px;font-size:10px;overflow:auto hidden}.employee-general-comment-dot{width:10px;height:10px;font-size:7px;top:2px;right:2px}}@media (width<=760px) and (orientation:portrait){.employee-general-header{grid-template-columns:44px 1fr 44px;height:60px;padding:0 6px}.employee-general-title{gap:6px}.employee-general-title-stack{flex-direction:row;gap:8px}.employee-general-heading-row{gap:6px}.employee-general-title-full{display:none}.employee-general-title-short{display:inline}.employee-general-title h1{max-width:none;font-size:16px}.employee-general-heading-row .home-theme-toggle{border-radius:999px;flex:0 0 34px;width:34px;height:34px;padding:0}.employee-general-arrow{border-radius:9px;width:34px;height:34px;font-size:18px}.employee-general-mode-tabs{border-radius:999px;width:118px}.employee-general-mode-tabs button{border-radius:999px;height:26px}.employee-general-table-wrapper:before{display:none}}@media (width<=900px) and (orientation:landscape){.employee-general-table-wrapper{scrollbar-width:auto}.employee-general-table-wrapper::-webkit-scrollbar{width:22px;height:22px}.employee-general-table-wrapper::-webkit-scrollbar-thumb{border-width:5px;min-width:132px;min-height:76px}.employee-general-header{grid-template-columns:42px 1fr 42px;height:48px;padding:0 8px}.employee-general-title{gap:10px}.employee-general-title-stack{flex-direction:row;gap:10px}.employee-general-title h1{max-width:320px;font-size:18px}.employee-general-mode-tabs{width:96px;display:flex}.employee-general-title>button{display:none}.employee-general-export-actions{display:flex}.employee-general-export-actions button{height:30px;padding:0 8px;font-size:11px}.employee-general-arrow{height:34px;font-size:18px}.employee-general-table-wrapper{padding:0}.employee-general-name-col,.employee-general-sector-name-cell{width:104px;min-width:104px;max-width:104px}.employee-general-day-col,.employee-general-shift-cell,.employee-general-sector-empty-cell{width:48px;min-width:48px;max-width:48px}.employee-general-table th{height:40px}.employee-general-table td{border-bottom-width:4px;height:42px}.employee-general-sector-row td{height:22px}.employee-general-name-cell{padding:5px 8px}.employee-general-name-cell b{font-size:12px}.employee-general-name-cell span{font-size:9px}.employee-general-shift-card-mini{min-height:36px}.employee-general-shift-time{font-size:10px}.employee-general-shift-meta,.employee-general-role-badge,.employee-general-shift-comment{max-width:42px;font-size:7px}.employee-general-comment-dot{width:10px;height:10px;font-size:7px;top:2px;right:2px}.employee-general-legend{flex-wrap:nowrap;gap:12px;min-height:34px;max-height:34px;padding:4px 8px;font-size:11px;overflow:auto hidden}.employee-general-legend-box{width:12px;height:12px}}.training-page{color:#2b1b0c;background:#ead0a3;width:100%;height:100%;overflow:auto}.training-header{color:#fff;background:#c9870d;justify-content:space-between;align-items:center;gap:14px;min-height:72px;padding:12px 22px;display:flex}.training-header h1{margin:0;font-size:28px}.training-tabs{background:#784b0047;border-radius:999px;gap:6px;padding:4px;display:flex;overflow-x:auto}.training-tabs button{color:#fff;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:999px;min-height:34px;padding:0 14px;font-weight:900}.training-tabs button.active{color:#c9870d;background:#fff}.training-message,.training-empty{background:#fff7ea;border-radius:12px;margin:16px;padding:14px;font-weight:900}.training-message.error{color:#a11616;background:#ffe4e4}.training-message.ok{color:#2f6d2f;background:#eef8e9}.training-layout{grid-template-columns:minmax(260px,360px) 1fr;gap:14px;padding:14px;display:grid}.training-panel,.training-card,.training-empty{background:#fff7ea;border:1px solid #65421629;border-radius:8px;box-shadow:0 8px 20px #5f3b0a14}.training-panel{flex-direction:column;align-self:start;gap:10px;padding:14px;display:flex}.training-panel h2{margin:0;font-size:20px}.training-panel label,.training-answer-field{color:#57452f;flex-direction:column;gap:6px;font-weight:900;display:flex}.training-panel input,.training-panel select,.training-panel textarea,.training-answer-field textarea{color:#2b1b0c;background:#fff;border:1px solid #d6c3a2;border-radius:10px;width:100%;min-height:40px;padding:8px 10px}.training-panel textarea,.training-answer-field textarea{resize:vertical;min-height:92px}.training-panel button,.training-primary{color:#fff;cursor:pointer;background:#c9870d;border:0;border-radius:10px;min-height:40px;font-weight:900}.training-list{gap:10px;min-width:0;display:grid}.training-list.full{padding:14px}.training-card{min-width:0;padding:12px}.training-card.muted{opacity:.6}.training-card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.training-card-head b{font-size:16px}.training-card-head button,.training-card-head span{color:#6d4810;background:#f1ddb9;border:0;border-radius:999px;min-height:28px;padding:0 10px;font-size:12px;font-weight:900}.training-question-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.training-card p,.training-card small{overflow-wrap:anywhere;margin:8px 0 0;line-height:1.35;display:block}.training-card small{color:#6d5a44}.training-card strong,.training-result{color:#4b3621;background:#f1ddb9;border-radius:999px;margin-top:8px;padding:5px 8px;font-weight:900;display:inline-flex}.training-card.status-passed{border-color:#2f6d2f59}.training-card.status-failed{border-color:#a1161659}.training-answer-review{border-top:1px solid #65421629;gap:8px;margin-top:12px;padding-top:12px;display:grid}.training-answer-review h3{margin:0;font-size:16px}.training-answer-review span{color:#7a5c38;font-size:12px;font-weight:900;display:block}.training-grade-buttons{flex-wrap:wrap;gap:8px;display:flex}.training-grade-buttons button{color:#2b1b0c;cursor:pointer;background:#e8d8bd;border:0;border-radius:10px;min-height:36px;padding:0 12px;font-weight:900}.training-grade-buttons button.active.yes{color:#fff;background:#2f8f46}.training-grade-buttons button.active.no{color:#fff;background:#b91c1c}.employee-test{gap:12px;display:grid}.training-answer-field span{color:#2b1b0c}.training-modal-backdrop{z-index:2000;background:#2b1b0c6b;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.training-modal{background:#fff7ea;border:1px solid #65421629;border-radius:14px;gap:12px;width:min(620px,100%);max-height:min(720px,100vh - 32px);padding:18px;display:grid;overflow:auto;box-shadow:0 24px 70px #2b1b0c3d}.training-modal-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.training-modal-head h2{margin:0;font-size:22px}.training-modal-head p{color:#7a5c38;margin:4px 0 0;font-weight:800;line-height:1.35}.training-modal-head button{color:#6d4810;cursor:pointer;background:#f1ddb9;border:0;border-radius:50%;flex:none;width:36px;height:36px;font-size:22px;font-weight:900}.training-modal label{color:#57452f;flex-direction:column;gap:6px;font-weight:900;display:flex}.training-modal select,.training-modal textarea{color:#2b1b0c;background:#fff;border:1px solid #d6c3a2;border-radius:10px;width:100%;padding:9px 10px;font-weight:800}.training-modal textarea{resize:vertical;min-height:110px}.training-modal-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.training-modal-actions button{color:#4b3621;cursor:pointer;background:#ead7b7;border:0;border-radius:10px;min-height:40px;padding:0 14px;font-weight:900}.training-modal-actions .primary{color:#fff;background:#c9870d}.training-modal-actions .danger{color:#fff;background:#b91c1c;margin-right:auto}@media (width<=760px){.training-header{flex-direction:column;align-items:flex-start;min-height:62px;padding:10px}.training-header h1{font-size:22px}.training-tabs{width:100%}.training-layout{grid-template-columns:1fr;padding:10px}.training-list.full{padding:10px}.training-modal{width:min(520px,100%);padding:14px}.training-modal-head h2{font-size:19px}}.shift-history-page{color:#2b1b0c;background:#ead0a3;width:100%;height:100%;overflow:auto}.shift-history-header{color:#fff;background:#c9870d;align-items:center;min-height:72px;padding:14px 22px;display:flex}.shift-history-header h1{margin:0;font-size:28px}.shift-history-header span{opacity:.88;margin-top:3px;font-weight:800;display:block}.shift-history-message,.shift-history-empty{background:#fff7ea;border-radius:12px;margin:16px;padding:14px;font-weight:900}.shift-history-message.error{color:#a11616;background:#ffe4e4}.shift-history-list{gap:10px;padding:14px;display:grid}.shift-history-card{background:#fff7ea;border:1px solid #65421629;border-radius:8px;padding:12px;box-shadow:0 8px 20px #5f3b0a14}.shift-history-card-head,.shift-history-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.shift-history-card-head{justify-content:space-between}.shift-history-card-head b{font-size:16px}.shift-history-card-head span,.shift-history-meta span,.shift-history-diff span{color:#7a5c38;font-size:12px;font-weight:900}.shift-history-meta{margin-top:8px}.shift-history-meta span{background:#f1ddb9;border-radius:999px;padding:4px 7px}.shift-history-diff{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px;display:grid}.shift-history-diff div{background:#fff1d8;border-radius:8px;min-width:0;padding:8px}.shift-history-diff p{overflow-wrap:anywhere;margin:4px 0 0;line-height:1.35}@media (width<=760px){.shift-history-header{min-height:62px;padding:10px 14px}.shift-history-header h1{font-size:22px}.shift-history-list{padding:10px}.shift-history-diff{grid-template-columns:1fr}}.confirm-backdrop{z-index:30000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#2b1b0c61;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.confirm-dialog{color:#2b1b0c;background:#fff7ea;border:1px solid #65421624;border-radius:18px;grid-template-columns:42px 1fr;gap:12px;width:min(430px,100%);padding:18px;display:grid;box-shadow:0 24px 70px #2b1b0c38}.confirm-mark{color:#fff;background:#c9870d;border-radius:14px;place-items:center;width:42px;height:42px;font-size:22px;font-weight:900;display:grid}.confirm-dialog.danger .confirm-mark{background:#b91c1c}.confirm-dialog.warning .confirm-mark{color:#2b1b0c;background:#e0a638}.confirm-content{min-width:0}.confirm-content h2{margin:0;font-size:20px;line-height:1.15}.confirm-content p{color:#6a4a22;white-space:pre-line;margin:8px 0 0;font-size:14px;font-weight:700;line-height:1.45}.confirm-actions{grid-column:1/-1;justify-content:flex-end;gap:8px;margin-top:6px;display:flex}.confirm-actions button{cursor:pointer;border:0;border-radius:11px;min-width:118px;min-height:40px;padding:0 16px;font-weight:900}.confirm-cancel{color:#352716;background:#eee7dd}.confirm-submit{color:#fff;background:#2f8f46}.confirm-dialog.danger .confirm-submit{background:#b91c1c}.confirm-dialog.warning .confirm-submit{background:#c9870d}:root[data-theme=dark] .confirm-backdrop{background:#13171294}:root[data-theme=dark] .confirm-dialog{color:#fff4e3;background:#42463f;border-color:#fff4e033;box-shadow:0 24px 70px #12161157}:root[data-theme=dark] .confirm-content p{color:#d8ccba}:root[data-theme=dark] .confirm-cancel{color:#fff4e3;background:#505249}:root[data-theme=dark] .confirm-submit{color:#102213;background:#63b775}:root[data-theme=dark] .confirm-dialog.warning .confirm-submit,:root[data-theme=dark] .confirm-dialog.warning .confirm-mark{color:#211709;background:#f1bc4d}@media (width<=520px){.confirm-dialog{border-radius:16px;grid-template-columns:34px 1fr;gap:10px;padding:14px}.confirm-mark{border-radius:11px;width:34px;height:34px;font-size:18px}.confirm-content h2{font-size:18px}.confirm-actions{grid-template-columns:1fr 1fr;display:grid}.confirm-actions button{min-width:0}}.pwa-reminder{left:12px;right:12px;bottom:calc(78px + env(safe-area-inset-bottom));z-index:10001;color:#2b1b0c;background:#fffaf0;border:1px solid #7a5c3833;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:none;position:fixed;box-shadow:0 16px 40px #30220c38}.pwa-reminder b,.pwa-reminder span{display:block}.pwa-reminder b{font-size:14px;line-height:1.2}.pwa-reminder span{color:#72562f;margin-top:3px;font-size:12px;font-weight:700}.pwa-reminder-actions{flex:none;gap:8px;display:flex}.pwa-reminder button{color:#fff;cursor:pointer;background:#c9870d;border:0;border-radius:10px;min-height:36px;padding:0 12px;font-weight:900}.pwa-reminder button.secondary{background:#8a8067}.pwa-reminder button:disabled{opacity:.65;cursor:wait}@media (width<=760px){.pwa-reminder{display:flex}.manager-shell .pwa-reminder{bottom:calc(124px + env(safe-area-inset-bottom))}}@media (width<=380px){.pwa-reminder{flex-direction:column;align-items:stretch}.pwa-reminder-actions button{flex:1}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--dark-page:#30352f;--dark-header:#373c36;--dark-header-deep:#282d27;--dark-surface:#42463f;--dark-surface-soft:#505249;--dark-surface-raised:#5b584c;--dark-table-head:#4f5048;--dark-table-cell:#484b42;--dark-sector:#807047;--dark-text:#fff4e3;--dark-muted:#d8ccba;--dark-line:#fff4e033;--dark-shadow:#12161142;--dark-accent:#e0a638}:root[data-theme=dark] body,:root[data-theme=dark] .app-shell,:root[data-theme=dark] .app-loading,:root[data-theme=dark] .placeholder-page,:root[data-theme=dark] .login-page,:root[data-theme=dark] .manager-page,:root[data-theme=dark] .employee-page,:root[data-theme=dark] .employee-general-page,:root[data-theme=dark] .stats-page,:root[data-theme=dark] .swaps-page,:root[data-theme=dark] .profile-page,:root[data-theme=dark] .training-page,:root[data-theme=dark] .shift-history-page{background:var(--dark-page);color:var(--dark-text)}:root[data-theme=dark] .app-sidebar,:root[data-theme=dark] .manager-header,:root[data-theme=dark] .employee-header,:root[data-theme=dark] .employee-general-header,:root[data-theme=dark] .stats-header,:root[data-theme=dark] .training-header,:root[data-theme=dark] .shift-history-header{background:var(--dark-header);color:var(--dark-text)}:root[data-theme=dark] .manager-header,:root[data-theme=dark] .employee-header,:root[data-theme=dark] .employee-general-header{background:linear-gradient(#3f443d 0%,#333831 100%);border-bottom:1px solid #fff4e024;box-shadow:0 10px 28px #12161129}:root[data-theme=dark] .app-sidebar{border-right:1px solid var(--dark-line);background:#383b35}:root[data-theme=dark] .app-sidebar button{color:var(--dark-text);background:#fff4e01a;border:1px solid #fff4e01a}:root[data-theme=dark] .app-sidebar button.active{color:var(--dark-header-deep);background:#fff4e3}:root[data-theme=dark] .sidebar-user,:root[data-theme=dark] .sidebar-theme-toggle,:root[data-theme=dark] .manager-title button,:root[data-theme=dark] .month-arrow,:root[data-theme=dark] .employee-arrow,:root[data-theme=dark] .employee-current-btn,:root[data-theme=dark] .stats-header button,:root[data-theme=dark] .stats-current,:root[data-theme=dark] .training-tabs{background:#fff4e029!important}:root[data-theme=dark] .manager-branch-tabs,:root[data-theme=dark] .employee-mode-tabs,:root[data-theme=dark] .employee-general-mode-tabs{background:#1418135c;border:1px solid #fff4e01a}:root[data-theme=dark] .manager-branch-tabs button.active,:root[data-theme=dark] .employee-mode-tabs button.active,:root[data-theme=dark] .employee-general-mode-tabs button.active,:root[data-theme=dark] .training-tabs button.active{color:var(--dark-header-deep);background:#fff4e3}:root[data-theme=dark] .profile-card,:root[data-theme=dark] .phone-form,:root[data-theme=dark] .self-password-card,:root[data-theme=dark] .self-password-form,:root[data-theme=dark] .pwa-install-panel,:root[data-theme=dark] .push-panel,:root[data-theme=dark] .profile-modal,:root[data-theme=dark] .password-modal,:root[data-theme=dark] .login-card,:root[data-theme=dark] .swap-card,:root[data-theme=dark] .swaps-empty,:root[data-theme=dark] .stats-toolbar,:root[data-theme=dark] .rate-panel,:root[data-theme=dark] .training-panel,:root[data-theme=dark] .training-card,:root[data-theme=dark] .training-empty,:root[data-theme=dark] .training-modal,:root[data-theme=dark] .bonus-panel,:root[data-theme=dark] .shift-history-card,:root[data-theme=dark] .shift-history-empty{background:var(--dark-surface);border-color:var(--dark-line);color:var(--dark-text);box-shadow:0 16px 40px var(--dark-shadow)}:root[data-theme=dark] .profile-fields-grid div,:root[data-theme=dark] .swap-info-grid div,:root[data-theme=dark] .choice-block,:root[data-theme=dark] .password-block,:root[data-theme=dark] .manager-toggle,:root[data-theme=dark] .shift-history-diff div,:root[data-theme=dark] .shift-history-meta span,:root[data-theme=dark] .training-card-head button,:root[data-theme=dark] .training-card-head span,:root[data-theme=dark] .training-card strong,:root[data-theme=dark] .training-result,:root[data-theme=dark] .rate-history>div,:root[data-theme=dark] .bonus-result,:root[data-theme=dark] .training-modal-head button,:root[data-theme=dark] .training-modal-actions button{background:var(--dark-surface-soft);border-color:var(--dark-line);color:var(--dark-text)}:root[data-theme=dark] .manager-table th,:root[data-theme=dark] .employee-general-table th,:root[data-theme=dark] .employee-week-row,:root[data-theme=dark] .employee-name-row{background:var(--dark-table-head);color:var(--dark-text);border-color:var(--dark-line)}:root[data-theme=dark] .employee-name-cell,:root[data-theme=dark] .employee-general-name-cell{color:var(--dark-text);background:#454840;box-shadow:8px 0 16px #12161138}:root[data-theme=dark] .employee-name-cell span,:root[data-theme=dark] .employee-general-name-cell span{color:var(--dark-text)}:root[data-theme=dark] .manager-table td,:root[data-theme=dark] .employee-general-table td{border-bottom-color:var(--dark-page)}:root[data-theme=dark] .sector-row th,:root[data-theme=dark] .employee-general-sector-row th,:root[data-theme=dark] .sector-name-cell,:root[data-theme=dark] .employee-general-sector-name-cell{background:var(--dark-sector);color:var(--dark-text)}:root[data-theme=dark] .shift-cell,:root[data-theme=dark] .employee-general-shift-cell,:root[data-theme=dark] .sector-empty-cell,:root[data-theme=dark] .employee-general-sector-empty-cell,:root[data-theme=dark] .employee-day{background:var(--dark-table-cell);color:var(--dark-text)}:root[data-theme=dark] .employee-day.empty{visibility:hidden}:root[data-theme=dark] .employee-legend,:root[data-theme=dark] .employee-general-legend,:root[data-theme=dark] .manager-legend{color:var(--dark-text);border-color:var(--dark-line);background:#3b4039}:root[data-theme=dark] input,:root[data-theme=dark] select,:root[data-theme=dark] textarea,:root[data-theme=dark] .profile-main-select,:root[data-theme=dark] .phone-input-wrap{color:var(--dark-text)!important;background:#363a34!important;border-color:#fff4e047!important}:root[data-theme=dark] input::placeholder,:root[data-theme=dark] textarea::placeholder{color:#fff4e385}:root[data-theme=dark] .profile-header p,:root[data-theme=dark] .profiles-title-row p,:root[data-theme=dark] .profile-modal-head p,:root[data-theme=dark] .password-modal-head p,:root[data-theme=dark] .password-block p,:root[data-theme=dark] .self-password-form p,:root[data-theme=dark] .self-password-card p,:root[data-theme=dark] .push-panel p,:root[data-theme=dark] .pwa-install-panel p,:root[data-theme=dark] .swaps-header p,:root[data-theme=dark] .swap-card p,:root[data-theme=dark] .stats-muted,:root[data-theme=dark] .rate-panel p,:root[data-theme=dark] .bonus-panel p,:root[data-theme=dark] .bonus-form label,:root[data-theme=dark] .bonus-result span,:root[data-theme=dark] .training-modal label,:root[data-theme=dark] .training-modal-head p,:root[data-theme=dark] .training-card small,:root[data-theme=dark] .shift-history-card-head span,:root[data-theme=dark] .shift-history-meta span,:root[data-theme=dark] .shift-history-diff span,:root[data-theme=dark] .profile-fields-grid span,:root[data-theme=dark] .swap-info-grid span{color:var(--dark-muted)}:root[data-theme=dark] .profile-message,:root[data-theme=dark] .swaps-message,:root[data-theme=dark] .manager-message,:root[data-theme=dark] .employee-loading,:root[data-theme=dark] .stats-message,:root[data-theme=dark] .training-message,:root[data-theme=dark] .shift-history-message{background:var(--dark-surface-soft);color:var(--dark-text)}:root[data-theme=dark] .profile-message.error,:root[data-theme=dark] .swaps-message.error,:root[data-theme=dark] .manager-message.error,:root[data-theme=dark] .stats-message.error,:root[data-theme=dark] .training-message.error,:root[data-theme=dark] .shift-history-message.error{color:#ffd2d2;background:#462121}:root[data-theme=dark] .profile-message.ok,:root[data-theme=dark] .swaps-message.ok,:root[data-theme=dark] .manager-message.ok,:root[data-theme=dark] .stats-message.ok,:root[data-theme=dark] .training-message.ok{color:#d7ffd2;background:#1f3a21}:root[data-theme=dark] .profile-modal-backdrop,:root[data-theme=dark] .password-modal-backdrop,:root[data-theme=dark] .training-modal-backdrop{background:#1317128f}:root[data-theme=dark] .training-modal-actions .primary{background:var(--dark-accent);color:#241a08}:root[data-theme=dark] .training-modal-actions .danger{color:#fff;background:#b91c1c}:root[data-theme=dark] .manager-day-double-pay-btn{color:#211709;background:#f1bc4d;border:1px solid #fff4e06b;box-shadow:0 2px 8px #12161147}:root[data-theme=dark] .manager-day-double-pay-btn.active{color:#102213;background:#63d17a;border-color:#d2ffdcb3}:root[data-theme=dark] .manager-day-double-pay-btn:disabled{opacity:.8}:root[data-theme=dark] .stat-card{background:linear-gradient(135deg,#8a641f 0%,#60704e 100%);box-shadow:0 14px 28px #1216113d}:root[data-theme=dark] .manager-table-wrapper,:root[data-theme=dark] .employee-general-table-wrapper{scrollbar-color:var(--dark-accent) #fff4e02e}:root[data-theme=dark] .manager-table-wrapper::-webkit-scrollbar-track{background:#fff4e029}:root[data-theme=dark] .employee-general-table-wrapper::-webkit-scrollbar-track{background:#fff4e029}:root[data-theme=dark] .manager-table-wrapper::-webkit-scrollbar-thumb{background:var(--dark-accent);border-color:#30352fc2}:root[data-theme=dark] .employee-general-table-wrapper::-webkit-scrollbar-thumb{background:var(--dark-accent);border-color:#30352fc2}:root[data-theme=dark] .manager-table-wrapper::-webkit-scrollbar-thumb:hover{background:#f0b84b}:root[data-theme=dark] .employee-general-table-wrapper::-webkit-scrollbar-thumb:hover{background:#f0b84b}:root[data-theme=dark] .shift-cell.work,:root[data-theme=dark] .employee-general-shift-cell.work,:root[data-theme=dark] .employee-day.work,:root[data-theme=dark] .legend-box.work,:root[data-theme=dark] .employee-general-legend-box.work,:root[data-theme=dark] .employee-legend-box.work{color:#1f160b;background:#f7c729}:root[data-theme=dark] .shift-cell.cleaning,:root[data-theme=dark] .employee-general-shift-cell.cleaning,:root[data-theme=dark] .employee-day.cleaning,:root[data-theme=dark] .legend-box.cleaning,:root[data-theme=dark] .employee-general-legend-box.cleaning,:root[data-theme=dark] .employee-legend-box.cleaning{color:#1f160b;background:#ff4d4f}:root[data-theme=dark] .shift-cell.canteen_duty,:root[data-theme=dark] .employee-general-shift-cell.canteen_duty,:root[data-theme=dark] .employee-day.canteen_duty,:root[data-theme=dark] .legend-box.canteen_duty,:root[data-theme=dark] .employee-general-legend-box.canteen_duty,:root[data-theme=dark] .employee-legend-box.canteen_duty{color:#1f160b;background:#ff7ad9}:root[data-theme=dark] .shift-cell.lunch_duty,:root[data-theme=dark] .employee-general-shift-cell.lunch_duty,:root[data-theme=dark] .employee-day.lunch_duty,:root[data-theme=dark] .legend-box.lunch_duty,:root[data-theme=dark] .employee-general-legend-box.lunch_duty,:root[data-theme=dark] .employee-legend-box.lunch_duty{color:#1f160b;background:#ff9f1a}:root[data-theme=dark] .shift-cell.vacation,:root[data-theme=dark] .employee-general-shift-cell.vacation,:root[data-theme=dark] .employee-day.vacation,:root[data-theme=dark] .legend-box.vacation,:root[data-theme=dark] .employee-general-legend-box.vacation,:root[data-theme=dark] .employee-legend-box.vacation{color:#10202c;background:#6eb6ef}:root{color:#3c2a17;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#ead0a3;font-family:Arial,system-ui,sans-serif}body{margin:0}#root{min-height:100vh}
