:root{color-scheme:light;--bg: #f6f1ea;--panel: #fffaf3;--text: #2b2118;--muted: #76695f;--line: #eadfce;--brand: #8b5e34;--brand-dark: #6f4522;--danger: #b42318;--ok: #177245;--shadow: 0 20px 60px rgba(69, 45, 25, .14)}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;font-family:Arial,sans-serif;color:var(--text);background:#fff}button,input,select,textarea{font:inherit}button{border:0;border-radius:12px;padding:12px 16px;color:#fff;background:var(--brand);cursor:pointer;font-weight:700}button:hover{background:var(--brand-dark)}button:disabled{cursor:not-allowed;opacity:.55}#close-shift.is-closed{background:#d1d5db;color:#4b5563;border-color:#9ca3af;opacity:1}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:12px;color:var(--text);background:#fff}textarea{min-height:110px;resize:vertical}h1,h2,h3,p{margin-top:0}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card,.panel,.topbar,.tabs{width:min(1180px,calc(100% - 32px));margin-inline:auto}.login-card{max-width:430px;padding:34px;border-radius:24px;background:var(--panel);box-shadow:var(--shadow)}.topbar{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:28px 0 16px}.topbar h1{margin-bottom:0}.topbar-logo{display:block;height:140px;width:auto;max-width:min(1050px,90vw);object-fit:contain}.login-card .topbar-logo{height:120px;margin:0 auto 16px}.login-brand{margin:0 0 32px;text-align:center;font-size:48px;font-weight:400;letter-spacing:.08em;color:var(--text)}.login-card h1{font-weight:400}.account{display:flex;gap:12px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:12px}.tab{flex:0 0 auto;color:var(--brand-dark);background:#fffaf3bd;border:1px solid var(--line)}.tab:hover{color:#fff;background:var(--brand);border-color:var(--brand)}.tab.active{color:#fff;background:var(--brand)}.tab.active:hover{color:#fff;background:var(--brand-dark);border-color:var(--brand-dark)}.layout{width:min(1180px,calc(100% - 32px));margin:0 auto 48px}.panel{width:100%;padding:28px;border:1px solid rgba(234,223,206,.8);border-radius:24px;background:#fffaf3eb;box-shadow:var(--shadow)}.section-heading{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:18px}.today-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.eyebrow{margin-bottom:6px;color:var(--brand);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.muted{color:var(--muted)}.secondary{color:var(--brand-dark);background:#efe2d0}.secondary:hover{background:#e5d3ba}.danger{background:var(--danger)}.stack{display:grid;gap:12px}.phone-input{display:flex;align-items:center}.phone-input span{align-self:stretch;display:grid;place-items:center;padding:0 14px;border:1px solid var(--line);border-right:0;border-radius:12px 0 0 12px;background:#efe2d0;font-weight:800}.phone-input input{border-radius:0 12px 12px 0}.grid{display:grid;gap:16px}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.five{grid-template-columns:repeat(5,minmax(0,1fr))}.card{padding:18px;border:1px solid var(--line);border-radius:18px;background:#fff}.list{display:grid;gap:10px}.wide{margin-top:18px}.item{padding:12px;border:1px solid var(--line);border-radius:14px;background:#fff}.item.done{opacity:.58;text-decoration:line-through}.form-grid,.inline-form{display:grid;gap:10px;margin-bottom:18px}.form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.inline-form{grid-template-columns:1fr auto}.checkbox{display:flex;gap:8px;align-items:center;padding:10px 0}.checkbox input{width:auto}.table{display:grid;gap:10px}.row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:10px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:16px;background:#fff}.row.users-row{grid-template-columns:1fr 1fr 1.4fr auto}.row.important-row{grid-template-columns:1fr}.actions{display:flex;gap:8px;flex-wrap:wrap}.invoices-actions{display:flex;gap:8px;align-items:center}.button-like{display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border-radius:12px;font-weight:600;cursor:pointer;background:var(--brand);color:#fff;border:1px solid transparent;transition:filter .15s ease;-webkit-user-select:none;user-select:none}.button-like:hover{filter:brightness(1.05)}.button-like.is-loading{opacity:.6;pointer-events:none}.photo-file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;opacity:0}.invoice-status{margin:8px 0 0}.invoice-status.error{color:#b91c1c}.invoice-card{display:grid;gap:8px;padding:14px;border:1px solid var(--line);border-radius:16px;background:#fff}.invoice-card-head{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:baseline}.invoice-card-fold-btn{background:transparent;border:1px solid var(--line);border-radius:6px;width:24px;height:24px;padding:0;font-size:14px;line-height:1;color:var(--muted);cursor:pointer;align-self:center;display:inline-flex;align-items:center;justify-content:center}.invoice-card-fold-btn:hover{background:#f3f4f6}.invoice-card.folded .invoice-items{display:none}.invoice-card-supplier{font-weight:700;font-size:16px}.invoice-card-meta{color:var(--muted);font-size:13px}.invoice-card-total{font-size:17px;font-weight:800;color:#000}.invoice-card-total-label{font-weight:800;color:#000}.invoice-card-total-value{font-weight:800;color:#000;font-variant-numeric:tabular-nums}.invoice-card-amount{font-weight:700}.invoice-card-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:4px}.invoice-card-footer .invoice-photo-link{margin-right:auto}.invoice-card-payment{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:6px;font-size:13px}.invoice-card-payment-label{font-size:12px}.invoice-card-payment-select{padding:4px 6px}.invoice-card-paid{display:inline-flex;align-items:center;gap:4px;margin-left:auto;font-size:13px;cursor:pointer}.invoice-card-paid input[type=checkbox]{cursor:pointer}.invoice-card-paid input[type=checkbox]:disabled{cursor:not-allowed;opacity:.7}.invoice-card-due{display:inline-flex;align-items:center;gap:4px;font-size:13px}.invoice-card-due-label{font-size:12px}.invoice-card-due-input{padding:3px 6px;border:1px solid var(--line);border-radius:6px;font-size:12px}.invoice-card-remove{padding:6px 12px;font-size:13px;border-radius:8px}.invoice-items{list-style:none;margin:4px 0 0;padding:0;display:grid;gap:4px}.invoice-items li{display:grid;grid-template-columns:1fr auto auto;gap:12px;font-size:14px;padding:4px 0;border-top:1px dashed var(--line)}.invoice-items li:first-child{border-top:none}.invoice-photo-link{font-size:13px;color:var(--brand-dark)}.badge{display:inline-flex;align-items:center;min-height:28px;padding:5px 10px;border-radius:999px;color:var(--brand-dark);background:#efe2d0;font-size:13px;font-weight:700}.message{margin-bottom:16px;padding:12px 14px;border-radius:14px;color:var(--brand-dark);background:#efe2d0;display:flex;align-items:flex-start;gap:8px}.message-text{flex:1}.message-close{flex-shrink:0;background:transparent;border:0;color:inherit;opacity:.6;font-size:16px;line-height:1;padding:0 2px;cursor:pointer;margin-top:-1px}.message-close:hover{opacity:1}.message.error{color:var(--danger);background:#fff0eb}.message.success{color:var(--ok);background:#ecfdf3}.schedule-controls{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.schedule-legend{margin-top:12px;font-size:13px}.schedule-wrap{overflow-x:auto;max-width:100%;min-width:0;border:1px solid var(--line);border-radius:16px;background:#fff}.schedule-grid{border-collapse:collapse;table-layout:fixed;font-size:12px;width:max-content}.schedule-grid col.day-col{width:72px}.schedule-grid th,.schedule-grid td{border:1px solid var(--line);padding:4px 6px;text-align:center;vertical-align:middle;box-sizing:border-box}.schedule-grid thead th.weekday,.schedule-grid thead th.day-num,.schedule-grid tbody td.schedule-cell,.schedule-grid tfoot td.day-summary{width:72px;min-width:72px;max-width:72px;overflow:hidden}.schedule-grid thead th{background:#fffaf3;font-weight:700}.schedule-grid thead th.user-col{background:transparent}.schedule-grid .month-cell{font-size:16px;font-weight:800;text-transform:capitalize;background:#efe2d0;color:var(--brand-dark);padding:0}.month-banner{display:flex;align-items:center;justify-content:center;gap:12px;padding:6px 8px}.month-banner-label{flex:1 1 auto;text-align:center}.week-nav{width:28px;height:28px;padding:0;border-radius:8px;font-size:16px;line-height:1;background:var(--brand);color:#fff;font-weight:800}.week-nav:hover{background:var(--brand-dark)}.schedule-grid col.user-col-group{width:96px}.schedule-grid .user-col{position:sticky;left:0;background:transparent;text-align:right;width:96px;min-width:96px;max-width:96px;padding:4px 8px;z-index:2}.schedule-grid tbody .user-col{background:transparent;font-weight:700;padding:4px 6px;text-align:right;border-top:none;border-bottom:none;border-left:none}.schedule-grid .user-name{display:flex;align-items:center;justify-content:flex-end;gap:0;text-align:right}.schedule-grid .user-color-dot{display:none}.schedule-grid .user-text{display:flex;flex-direction:column;align-items:flex-end;line-height:1.2;text-align:right;width:100%;min-width:0}.schedule-grid .user-display-name{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:right;font-size:12px;line-height:1.15;width:100%}.schedule-grid .day-num.outside-month{opacity:.55;font-weight:600}.schedule-grid .day-num.weekend{color:var(--danger)}.schedule-cell{height:56px;padding:2px;position:relative}.schedule-cell.weekend{background:#b423180a}.cell-empty{display:flex;gap:2px;justify-content:center}.cell-set{width:20px;height:36px;padding:0;border-radius:6px;background:#efe2d0;color:var(--brand-dark);font-weight:700;font-size:12px;filter:saturate(1) brightness(1)}.cell-set:hover{filter:brightness(.9)}.legend-chip{display:inline-block;min-width:22px;padding:1px 7px;margin:0 2px;border-radius:6px;color:#fff;font-weight:800;text-align:center}.cell-filled{display:flex;align-items:center;justify-content:center;gap:4px;height:100%;border-radius:6px;padding:2px}.cell-value{font-weight:800;font-size:14px;min-width:28px;text-align:right}.cell-arrows{display:flex;flex-direction:column;gap:0}.cell-arrows button{width:18px;height:14px;padding:0;font-size:9px;line-height:1;background:transparent;color:var(--brand-dark);font-weight:700}.cell-arrows button:hover{background:var(--brand);color:#fff}.cell-clear{position:absolute;top:2px;right:2px;width:16px;height:16px;padding:0;border-radius:50%;font-size:10px;line-height:1;background:var(--danger);color:#fff;opacity:0;transition:opacity .15s ease}.schedule-cell:hover .cell-clear{opacity:1}@media(hover:none){.schedule-cell:hover .cell-clear{opacity:0}}.day-summary{text-align:left;vertical-align:top;padding:4px;font-size:10px;background:#fffaf3;min-height:60px}.day-summary-item{margin-bottom:2px;padding:2px 4px;border-left:3px solid var(--brand);border-radius:3px;background:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shift-legend-cell{padding:6px 10px!important;vertical-align:middle;background:#fffaf3!important}.shift-legend-line{display:flex;align-items:center;gap:4px;font-weight:700;font-size:12px;line-height:1.5;white-space:nowrap;padding:2px 0}.shift-line-saving{opacity:.55;pointer-events:none}.shift-time-stepper{display:inline-flex;align-items:center;gap:2px;background:#ffffffb3;border:1px solid rgba(0,0,0,.08);border-radius:6px;padding:0 2px}.shift-time-arrow{background:transparent;border:0;padding:0 4px;font-size:10px;line-height:1;cursor:pointer;color:inherit;font-weight:700;opacity:.7}.shift-time-arrow:hover{opacity:1}.shift-time-value{font-variant-numeric:tabular-nums;font-weight:700;min-width:38px;text-align:center}.shift-time-dash{font-weight:700;opacity:.6}.shift-time-hours{margin-left:4px;opacity:.85}.shift-legend-line-sunday{border-top:1px dashed rgba(0,0,0,.18);margin-top:4px;padding-top:4px;opacity:.95}.cell-empty.cell-empty-sunday{display:flex;justify-content:center}.cell-set.cell-set-sunday{width:auto;min-width:56px;padding:0 6px;font-size:11px;letter-spacing:0;background:#86efac80!important;color:#14532d!important}.color-label{display:flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid var(--line);border-radius:12px;background:#fff;font-weight:700}.color-label input[type=color]{width:36px;height:28px;padding:0;border:0;border-radius:6px;background:transparent;cursor:pointer}.user-color-pill{display:inline-block;width:14px;height:14px;border-radius:50%;vertical-align:middle;margin-right:6px}.requests-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:flex-end}.requests-controls input[type=search]{width:240px}.requests-summary{margin:16px 0 8px;padding:14px 16px;background:#fffaf3;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}.requests-summary-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}.requests-summary-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.requests-summary-card{padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#fff}.requests-summary-card-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.requests-summary-card h3{margin:0;font-size:14px;color:var(--brand-dark)}.requests-summary-copy{padding:4px 10px;font-size:12px;border-radius:8px}.requests-summary-card ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}.requests-summary-card li{display:flex;flex-direction:column;gap:2px;padding:6px 8px;border-radius:8px;background:#faf3e8}.requests-summary-card li.summary-item{flex-direction:row;align-items:center;gap:8px}.summary-item-name{font-weight:700;flex:1}.summary-item-qty{width:80px;padding:4px 6px;border:1px solid var(--line);border-radius:6px;background:#fff;font-size:13px;text-align:right;font-variant-numeric:tabular-nums}.summary-item-qty:disabled{background:#f3f3f3;cursor:not-allowed}.summary-item-meta{font-size:12px;color:var(--muted)}.requests-add{margin-top:8px;margin-bottom:16px;grid-template-columns:160px 1.5fr 1fr 1.5fr auto;gap:10px}.requests-add select{background:#fff}.requests-tabs-row{display:flex;align-items:flex-start;gap:8px;margin-bottom:12px}.requests-tabs{display:flex;flex:1 1 auto;flex-wrap:wrap;gap:8px;min-width:0}.requests-category-done{flex:0 0 auto;margin-left:auto;white-space:nowrap}.requests-category-done.is-done,.requests-category-done.is-done:hover{background:#9ca3af;border-color:#9ca3af;color:#fff}.requests-tab{background:#fff;color:var(--brand-dark);border:1px solid var(--line);padding:8px 14px;border-radius:999px;font-weight:700}.requests-tab:hover{background:#efe2d0;color:var(--brand-dark);border-color:var(--brand)}.requests-tab.active{background:var(--brand);color:#fff;border-color:var(--brand)}.requests-tab.active:hover{background:var(--brand-dark);color:#fff;border-color:var(--brand-dark)}.requests-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}.requests-table thead th{background:#faf0df;text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--brand-dark);padding:10px 12px;border-bottom:1px solid var(--line)}.requests-table tbody td{padding:6px 8px;border-bottom:1px solid var(--line);vertical-align:middle}.requests-table tbody tr:last-child td{border-bottom:0}.requests-row.needed{background:#fff6e6}.requests-row.needed td:first-child{box-shadow:inset 4px 0 0 var(--brand)}.requests-check{width:48px;text-align:center}.requests-check input[type=checkbox]{width:18px;height:18px;cursor:pointer}.requests-editable input{width:100%;padding:6px 10px;border:1px solid transparent;border-radius:8px;background:transparent;font-weight:600}.requests-editable input:focus{border-color:var(--brand);background:#fff;outline:none}.requests-editable.muted{color:var(--muted);font-style:italic}.requests-actions{width:84px;text-align:right}.requests-actions button{padding:6px 10px;font-size:12px;border-radius:8px}.craft-controls{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end}.craft-add{margin-bottom:16px;grid-template-columns:1.5fr 2fr auto;gap:10px}.craft-wrap{width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:var(--shadow)}.craft-grid{border-collapse:collapse;table-layout:fixed;min-width:100%}.craft-grid col.craft-brand-col{width:220px}.craft-grid col.craft-day-col{width:64px}.craft-grid th,.craft-grid td{border:1px solid var(--line);padding:6px 8px;text-align:center;vertical-align:middle;box-sizing:border-box;font-size:13px}.craft-grid thead th.craft-weekday,.craft-grid thead th.craft-day-num,.craft-grid tbody td.craft-cell{width:64px;min-width:64px;max-width:64px;overflow:hidden}.craft-grid thead th{background:#faf0df;color:var(--brand-dark);font-weight:700;position:sticky;top:0;z-index:1}.craft-grid thead th.weekend{color:var(--danger)}.craft-grid thead th.craft-day-num.today{background:var(--brand);color:#fff}.craft-brand-cell{text-align:left!important;width:220px;min-width:220px;max-width:220px;position:sticky;left:0;background:#fffaf3;z-index:2}.craft-grid thead th.craft-brand-cell{z-index:3}.craft-brand-name-line{display:flex;align-items:center;gap:6px}.craft-brand-name-input{width:100%;padding:6px 8px;border:1px solid transparent;border-radius:8px;background:transparent;font-weight:700;color:var(--text)}.craft-brand-name-input:focus{background:#fff;border-color:var(--brand);outline:none}.craft-remove{width:28px;height:28px;padding:0;border-radius:50%;font-size:12px;line-height:1}.craft-brand-description{display:block;margin-top:4px;font-size:12px}.craft-brand-description-input{width:100%;padding:6px 8px;border:1px solid transparent;border-radius:8px;background:transparent;font-size:12px;color:var(--muted);margin-top:4px}.craft-brand-description-input:focus{background:#fff;border-color:var(--brand);color:var(--text);outline:none}.craft-cell.weekend{background:#faf0df}.craft-cell.today{background:#8b5e3429}.craft-cell-wrap{display:flex;flex-direction:column;align-items:stretch;gap:2px;min-height:44px}.craft-cell-input{width:100%;padding:4px 6px;border:1px solid transparent;border-radius:6px;background:transparent;text-align:center;font-size:12px}.craft-cell-input:focus{background:#fff;border-color:var(--brand);outline:none}.craft-cell-button{width:100%;min-height:44px;padding:4px;border:1px solid transparent;border-radius:6px;background:transparent;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;cursor:pointer;font-size:12px;font-variant-numeric:tabular-nums;color:var(--text);transition:background .1s ease}.craft-cell-button:hover{background:#8b5e340f;border-color:#8b5e3433}.craft-cell-value{font-weight:600}.craft-cell-payment-mark{font-size:10px;color:var(--muted);line-height:1}.craft-cell-empty{color:var(--muted);font-size:11px;text-align:center}.craft-cell-button.craft-cell-payment-cash{background:#16a34a1a}.craft-cell-button.craft-cell-payment-transfer{background:#7dd3fc2e}.craft-cell-button.craft-cell-payment-card{background:#eab3082e}.craft-mini-table{width:100%;display:flex;flex-direction:column;gap:1px}.craft-mini-row{display:flex;align-items:center;justify-content:space-between;gap:2px;padding:1px 2px}.craft-mini-amount{font-weight:600;font-size:12px;white-space:nowrap}.craft-mini-pm{font-size:9px;padding:1px 3px;border-radius:3px;white-space:nowrap;line-height:1.4}.craft-mini-pm-cash{background:#16a34a26;color:#166534}.craft-mini-pm-transfer{background:#0ea5e926;color:#075985}.craft-mini-pm-card{background:#eab3082e;color:#854d0e}.craft-mini-total{border-top:1px solid rgba(0,0,0,.1);padding-top:2px;font-weight:700;font-size:12px;text-align:right;margin-top:1px}.craft-cell-list{display:flex;flex-direction:column;gap:4px;margin-bottom:12px;min-height:32px}.craft-cell-list-empty{color:var(--muted);font-size:13px;padding:4px 0}.craft-cell-list-row{display:flex;align-items:center;gap:6px}.craft-cell-list-amount{font-weight:600;font-size:14px;min-width:50px}.craft-cell-list-del,.craft-cell-list-edit{background:none;border:none;color:var(--muted);cursor:pointer;font-size:13px;padding:2px 4px;border-radius:4px}.craft-cell-list-del,.craft-cell-list-edit{margin-left:auto}.craft-cell-list-del:hover{color:#dc2626;background:#dc262614}.craft-cell-list-edit:hover{color:var(--brand-dark);background:#8b5e3414}.craft-cell-list-row-legacy{opacity:.75}.craft-cell-list-row-legacy:has(.craft-cell-list-inp){opacity:1}.craft-cell-list-inp{width:80px;flex-shrink:0;padding:4px 6px!important;font-size:13px!important}.craft-cell-modal-select-sm{padding:4px 6px!important;font-size:12px!important;flex-shrink:0}.craft-cell-list-total{border-top:1px solid rgba(0,0,0,.1);padding-top:4px;font-weight:700;font-size:13px;text-align:right;color:var(--brand-dark)}.craft-cell-add-form{display:flex;gap:6px;align-items:center;margin-bottom:8px;flex-wrap:wrap}.craft-cell-modal{min-width:280px}.craft-cell-modal-select{padding:8px 10px;font-size:14px}.craft-photo-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:8px 10px;background:#fffaf3;border:1px solid var(--line);border-radius:12px;margin-bottom:8px}.craft-photo-bar-today{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:13px;color:var(--brand-dark);cursor:pointer;-webkit-user-select:none;user-select:none}.craft-photo-bar-today input[type=checkbox]{margin:0;accent-color:var(--brand)}.craft-photo-date{padding:6px 8px;border:1px solid rgba(0,0,0,.18);border-radius:8px;background:#fff;font-size:13px;font-family:inherit}.craft-photo-date:disabled{background:#f5ecdf;color:var(--muted);cursor:not-allowed}.craft-photo-bar .button-like.is-loading{opacity:.6;cursor:wait}.craft-photo-row .craft-photo-row-label{background:#fffaf3;text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:700}.craft-photo-cell{padding:4px!important;vertical-align:top;background:#fff}.craft-photo-thumb-wrap{position:relative;display:inline-block}.craft-photo-thumb{display:block;width:64px;height:64px;object-fit:cover;border-radius:6px;border:1px solid var(--line);background:#fffaf3}.craft-photo-remove{position:absolute;top:-6px;right:-6px;width:18px;height:18px;padding:0;background:#dc2626;color:#fff;border:0;border-radius:50%;font-size:11px;line-height:1;cursor:pointer;display:none;box-shadow:0 1px 3px #0000004d}.craft-photo-thumb-wrap:hover .craft-photo-remove{display:block}@media(hover:none){.craft-photo-remove{display:block;width:22px;height:22px}}.craft-grid col.craft-total-col{width:110px}.craft-grid thead th.craft-total-head{background:#efe2d0;color:var(--brand-dark);font-size:11px;text-align:center;letter-spacing:.04em}.craft-grid thead th.craft-total-subhead{background:#fffaf3;font-size:10px;font-weight:600;text-align:center;text-transform:lowercase}.craft-total-cell{background:#fffaf3;vertical-align:middle;text-align:center;padding:4px 6px!important}.craft-total-cell-empty{background:#fff}.craft-total-wrap{display:flex;flex-direction:column;align-items:center;gap:2px}.craft-total-value{font-weight:700;font-variant-numeric:tabular-nums;color:var(--brand-dark);font-size:13px}.craft-coef-row{display:inline-flex;align-items:center;gap:2px}.craft-coef-times{color:var(--muted);font-weight:700;font-size:11px}.craft-coef-input{width:44px;padding:1px 4px;border:1px solid transparent;border-radius:5px;background:transparent;text-align:center;font-size:11px;font-variant-numeric:tabular-nums;font-family:inherit}.craft-coef-input:focus,.craft-coef-input:hover{border-color:#0000002e;background:#fff;outline:none}.craft-coef-static{font-size:11px;color:var(--muted)}.craft-grid tfoot .craft-grand-row th,.craft-grid tfoot .craft-grand-row td{background:#efe2d0;color:var(--brand-dark);font-weight:800;padding:8px 10px}.craft-grid tfoot .craft-grand-label{text-align:right;font-size:13px;letter-spacing:.02em}.craft-grid tfoot .craft-grand-filler{background:#fffaf3;border:1px solid var(--line)}.craft-grid tfoot .craft-grand-total{text-align:center;font-size:16px;font-variant-numeric:tabular-nums}.craft-grid col.craft-phone-col{width:340px}.craft-grid col.craft-bank-col{width:110px}.craft-grid thead th.craft-phone-head,.craft-grid thead th.craft-bank-head{background:#efe2d0;color:var(--brand-dark);font-size:11px;text-align:center;letter-spacing:.04em}.craft-grid thead th.craft-phone-subhead,.craft-grid thead th.craft-bank-subhead{background:#fffaf3}.craft-grid tbody td.craft-phone-cell,.craft-grid tbody td.craft-bank-cell{background:#fffaf3;vertical-align:middle;padding:4px 6px!important}.craft-admin-input{width:100%;padding:4px 6px;border:1px solid transparent;border-radius:6px;background:transparent;text-align:left;font-size:12px;font-family:inherit}.craft-admin-input:focus,.craft-admin-input:hover{border-color:#0000002e;background:#fff;outline:none}.craft-grid tbody td.craft-admin-cell-empty{background:#fff}.craft-legend{margin-top:12px}@media(max-width:900px){.topbar,.section-heading{align-items:stretch;flex-direction:column}.three,.five,.form-grid,.inline-form,.row,.row.users-row,.requests-add{grid-template-columns:1fr}.requests-controls input[type=search]{width:100%}.craft-add{grid-template-columns:1fr}}.wishes-heading{margin-top:32px}.wishes-legend{font-size:13px;margin-top:8px}.wishes-grid .wish-cell{cursor:default;position:relative}.wishes-grid .wish-cell-editable{cursor:pointer}.wishes-grid .wish-cell-editable:hover{outline:2px solid rgba(0,0,0,.15);outline-offset:-2px}.wish-cell-wrap{display:flex;flex-wrap:wrap;gap:3px;align-items:center;justify-content:center;padding:4px 2px;min-height:28px}.wish-placeholder{color:#00000040;font-size:14px}.wish-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 5px;border-radius:6px;font-size:12px;font-weight:700;color:#fff;background:#6b7280}.wish-badge-all{width:28px;height:28px;font-size:16px;background:#374151}.wishes-grid .wish-all{background:#3741512e!important}.wishes-grid .wish-partial{background:#6b72801f!important}.schedule-grid col.extra-col{width:104px}.schedule-grid thead th.extra-col-head{text-align:left;font-weight:700}.schedule-grid tbody td.extra-cell{padding:4px 8px;vertical-align:middle}.wish-note-cell .wish-note-input{display:block;width:100%;padding:6px 10px;font-size:13px;border:1px solid rgba(0,0,0,.12);border-radius:8px;background:#ffffffd9;box-sizing:border-box}.wish-note-cell .wish-note-input:focus{outline:2px solid var(--brand);border-color:transparent}.wish-note-cell .wish-note-input:disabled{background:transparent;color:var(--muted);cursor:default}.wish-note-cell .wish-note-view{display:block;width:100%;padding:6px 10px;font-size:13px;line-height:1.35;color:var(--text);box-sizing:border-box;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wish-note-cell .wish-note-view.wish-note-empty{color:var(--muted)}.draft-target-cell .draft-target-input{display:block;width:100%;padding:6px 8px;font-size:13px;text-align:center;border:1px solid rgba(0,0,0,.12);border-radius:8px;background:#ffffffd9;box-sizing:border-box}.draft-target-cell .draft-target-input:focus{outline:2px solid var(--brand);border-color:transparent}.cell-set.cell-set-blocked{opacity:.35;filter:grayscale(.6);position:relative}.cell-set.cell-set-blocked:after{content:"\2298";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:14px;color:#fff;pointer-events:none;text-shadow:0 0 2px rgba(0,0,0,.5)}.schedule-cell.cell-fully-blocked{background:repeating-linear-gradient(45deg,#0000000a,#0000000a 6px,#00000014 6px 12px)!important}.schedule-cell.schedule-cell-conflict{outline:2px solid #dc2626;outline-offset:-2px}.wish-popup{position:absolute;z-index:1000;min-width:220px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 32px #0000002e;padding:12px;display:flex;flex-direction:column;gap:6px}.wish-popup-title{font-weight:700;font-size:13px;color:var(--brand-dark);margin-bottom:4px}.wish-popup-row{display:flex;align-items:center;gap:8px;font-size:14px;cursor:pointer;padding:4px 2px}.wish-popup-row input[type=checkbox]{margin:0}.wish-popup-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.wish-popup-actions button{padding:6px 14px;border-radius:8px;font-size:13px;font-weight:600}.draft-section{margin-top:32px}.draft-body{display:flex;gap:16px;align-items:flex-start}.draft-body>#draft-grid{flex:1 1 auto;min-width:0}.draft-prompt-panel{flex:0 0 360px;max-width:420px;background:#ffffffb3;border:1px solid rgba(0,0,0,.08);border-radius:12px;padding:14px 16px;box-sizing:border-box;display:flex;flex-direction:column;gap:8px}.draft-prompt-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.draft-prompt-header h3{margin:0;font-size:15px}.draft-prompt-actions{display:flex;gap:6px}.draft-prompt-actions button{padding:6px 12px;font-size:13px}.draft-prompt-label{font-size:12px;color:var(--muted);margin-top:4px;text-transform:uppercase;letter-spacing:.04em}.draft-prompt-input{width:100%;box-sizing:border-box;padding:8px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.4;border:1px solid rgba(0,0,0,.12);border-radius:8px;background:#fff;resize:vertical}.draft-prompt-input:focus{outline:2px solid var(--brand);border-color:transparent}.draft-prompt-hint{font-size:12px;line-height:1.4;margin:4px 0 0}.draft-prompt-hint code{background:#0000000f;padding:1px 5px;border-radius:4px;font-size:11px}.draft-prompt-status{font-size:12px;margin:0;min-height:1em}.draft-prompt-status.error{color:#c0392b}.draft-prompt-status.ok{color:#16a34a}@media(max-width:1100px){.draft-body{flex-direction:column}.draft-prompt-panel{flex:1 1 auto;max-width:none;width:100%}}.draft-heading h2{margin:0}.draft-actions{display:flex;gap:8px;flex-wrap:wrap}.draft-legend{font-size:13px;margin-top:8px}.draft-target-wrap{display:flex;align-items:center;gap:4px;margin-top:6px}.draft-target-label{font-size:12px;color:var(--muted);font-weight:600}.draft-target-input{width:60px;padding:3px 6px;font-size:12px;border:1px solid rgba(0,0,0,.12);border-radius:6px;background:#ffffffb3;text-align:center}.draft-target-input:focus{outline:2px solid var(--brand);border-color:transparent}.draft-cell-buttons{display:flex;gap:2px;justify-content:center}.draft-cell-set{opacity:.55;transform:scale(.95)}.draft-cell-set:hover{opacity:.85}.draft-cell-set.draft-cell-set-active{opacity:1;transform:scale(1);outline:2px solid #ffffff;outline-offset:-2px;box-shadow:0 0 0 2px #00000040}#requests-directory-toggle.active{background:var(--brand);color:#fff}.directory-add{display:grid;grid-template-columns:1fr 2fr 1.4fr 110px auto;gap:8px;margin:16px 0 12px}.directory-supplier-cell{width:240px}.directory-supplier-select{width:100%;padding:4px 6px;border:1px solid transparent;border-radius:6px;background:transparent;font-size:14px;font-family:inherit}.directory-supplier-select:hover,.directory-supplier-select:focus{border-color:#0000001f;background:#fffaf3;outline:none}#requests-suppliers-toggle.active{background:var(--brand);color:#fff}.suppliers-add{display:grid;grid-template-columns:1fr auto;gap:8px;margin:16px 0 12px}.suppliers-list{margin-top:8px}.suppliers-table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px #0000000a}.suppliers-table thead th{text-align:left;font-size:12px;text-transform:uppercase;color:var(--muted);letter-spacing:.04em;padding:10px 12px;background:#fffaf3;border-bottom:1px solid var(--line)}.suppliers-table tbody td{padding:6px 12px;border-bottom:1px solid var(--line);vertical-align:middle;font-size:14px}.suppliers-table tbody tr:last-child td{border-bottom:none}.suppliers-table tbody tr.supplier-row-blocked{background:#dc26261f;transition:background 1s ease}.supplier-delivery-days-btn{padding:6px 10px;border-radius:6px;border:1px solid rgba(0,0,0,.12);background:#fff;font-size:13px;cursor:pointer;min-width:60px;text-align:left}.supplier-delivery-days-btn:hover:not(:disabled){border-color:var(--brand)}.supplier-delivery-days-btn:disabled{background:transparent;cursor:default;border-color:transparent}.supplier-delivery-until-input{padding:6px 8px;border:1px solid rgba(0,0,0,.12);border-radius:6px;font-size:13px;width:100px;font-variant-numeric:tabular-nums}.supplier-contact-input{padding:6px 8px;border:1px solid rgba(0,0,0,.12);border-radius:6px;font-size:13px;width:100%;min-width:160px;box-sizing:border-box}.delivery-days-list{display:flex;flex-direction:column;gap:0;padding:0}.delivery-days-row{display:flex;align-items:center;gap:6px;padding:2px 4px;border-radius:4px;cursor:pointer;font-size:13px;line-height:1.2}.delivery-days-row span{min-width:22px}.delivery-days-row input[type=checkbox]{margin:0}.delivery-days-row:hover{background:#8b5e3414}.delivery-days-modal{min-width:0;width:auto;max-width:180px;padding:12px 14px}.delivery-days-modal .shift-closure-title{margin-bottom:6px;font-size:12px}.delivery-days-modal .shift-closure-actions{margin-top:8px;gap:6px}.delivery-days-modal .shift-closure-actions button{padding:4px 10px;font-size:13px}.supplier-name-input{width:100%;padding:6px 8px;border:1px solid transparent;border-radius:6px;background:transparent;font-size:14px;font-family:inherit}.supplier-name-input:hover,.supplier-name-input:focus{border-color:#0000001f;background:#fffaf3;outline:none}.supplier-usage{width:90px;color:var(--muted);font-variant-numeric:tabular-nums;text-align:right}.supplier-copy-cell,.supplier-actions{width:1px;white-space:nowrap;text-align:right}.suppliers-legend{margin-top:12px;font-size:13px}@media(max-width:720px){.suppliers-add{grid-template-columns:1fr}}.directory-category-cell{width:120px;white-space:nowrap}.directory-category-select{width:100%;padding:4px 6px;border:1px solid transparent;border-radius:6px;background:transparent;font-size:14px;font-family:inherit}.directory-category-select:hover,.directory-category-select:focus{border-color:#0000001f;background:#fffaf3;outline:none}.directory-list{margin-top:8px}.directory-table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px #0000000a}.directory-table thead th{text-align:left;font-size:12px;text-transform:uppercase;color:var(--muted);letter-spacing:.04em;padding:10px 12px;background:#fffaf3;border-bottom:1px solid var(--line)}.directory-table tbody td{padding:6px 12px;border-bottom:1px solid var(--line);vertical-align:middle;font-size:14px}.directory-table tbody tr:last-child td{border-bottom:none}.directory-table .directory-actions{text-align:right;width:1px;white-space:nowrap}.directory-cell-input{width:100%;padding:6px 8px;border:1px solid transparent;border-radius:6px;background:transparent;font-size:14px;font-family:inherit}.directory-cell-input:hover,.directory-cell-input:focus{border-color:#0000001f;background:#fffaf3;outline:none}.directory-legend{margin-top:12px;font-size:13px}@media(max-width:720px){.directory-add{grid-template-columns:1fr}}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f0f0f73;display:flex;align-items:center;justify-content:center;z-index:3000;padding:20px}.confirm-modal{background:#fff;border-radius:16px;padding:24px;width:100%;max-width:380px;box-shadow:0 20px 60px #00000040;display:flex;flex-direction:column;gap:16px}.confirm-modal-text{font-size:15px;line-height:1.5;white-space:pre-wrap;color:var(--text)}.confirm-modal-actions{display:flex;gap:10px;justify-content:flex-end}.confirm-modal-actions button{min-width:90px}.shift-closure-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f0f0f73;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.shift-closure-modal{background:#fff;border-radius:16px;padding:24px;width:100%;max-width:420px;max-height:calc(100vh - 40px);overflow-y:auto;box-shadow:0 20px 60px #00000040;display:flex;flex-direction:column;gap:14px}.shift-closure-title{font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--brand)}.shift-closure-label{display:block;font-size:17px;font-weight:700;color:var(--brand-dark);line-height:1.3}.shift-closure-input{font-size:22px;font-weight:700;text-align:right;padding:12px 14px;border:1px solid rgba(0,0,0,.18);border-radius:10px;background:#fffaf3;color:var(--brand-dark);font-variant-numeric:tabular-nums}.shift-closure-input:focus{outline:2px solid var(--brand);border-color:transparent;background:#fff}.shift-closure-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.shift-closure-actions button{padding:9px 18px;font-size:14px;border-radius:10px}.shift-closure-summary{max-width:480px}.shift-closure-summary-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.shift-closure-summary-list li{display:flex;justify-content:space-between;gap:12px;padding:8px 12px;background:#fffaf3;border-radius:8px;font-size:14px}.shift-closure-summary-label{color:var(--muted)}.shift-closure-summary-value{font-weight:700;font-variant-numeric:tabular-nums;color:var(--brand-dark)}.shift-closure-summary-totals{margin-top:6px;padding-top:8px;border-top:1px dashed var(--line)}.shift-closure-summary-totals li{background:#efe2d0}.shift-closure-summary-actions{margin-top:8px}.shift-departures-modal{max-width:480px}.shift-closure-subtitle{margin-top:6px;font-weight:700;color:var(--brand-dark);font-size:13px;text-transform:uppercase;letter-spacing:.04em}.shift-departures-list{display:flex;flex-direction:column;gap:8px;max-height:360px;overflow-y:auto;padding-right:4px}.shift-departures-empty{padding:16px;color:var(--muted);text-align:center;background:#fffaf3;border-radius:10px}.shift-departure-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;background:#fffaf3;border-radius:10px;border:1px solid var(--line);transition:opacity .2s}.shift-departure-row.shift-departure-saving{opacity:.6;pointer-events:none}.shift-departure-name{font-weight:700;color:var(--brand-dark);font-size:14px}.shift-departure-sub{color:var(--muted);font-weight:400;font-size:12px}.shift-departure-controls{display:flex;align-items:center;gap:6px;background:#fff;border-radius:8px;border:1px solid var(--line);padding:2px 4px}.shift-departure-arrow{background:transparent;color:var(--brand-dark);border:0;padding:4px 8px;font-size:11px;font-weight:700;cursor:pointer;border-radius:6px}.shift-departure-arrow:hover{background:#efe2d0}.shift-departure-hours{min-width:56px;text-align:center;font-weight:700;font-variant-numeric:tabular-nums;color:var(--brand-dark);font-size:14px}.shift-closure-departures-summary li{background:#fffaf3}.craft-sales-modal{max-width:560px}.craft-sale-form{display:grid;grid-template-columns:1.4fr 1fr .8fr auto;gap:8px;align-items:stretch}.craft-sale-brand,.craft-sale-payment,.craft-sale-amount{font-size:14px;padding:10px 12px;border:1px solid rgba(0,0,0,.18);border-radius:10px;background:#fffaf3;color:var(--brand-dark);font-family:inherit}.craft-sale-amount{text-align:right;font-variant-numeric:tabular-nums}.craft-sale-brand:focus,.craft-sale-amount:focus,.craft-sale-payment:focus{outline:2px solid var(--brand);border-color:transparent;background:#fff}.craft-sale-add{padding:0 16px;font-size:14px;border-radius:10px}.craft-sale-list-wrap{display:flex;flex-direction:column;gap:6px;margin-top:6px}.craft-sale-list-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.craft-sale-list{display:flex;flex-direction:column;gap:6px;max-height:220px;overflow-y:auto;padding-right:4px}.craft-sale-empty{padding:12px 14px;background:#fffaf3;border-radius:10px;color:var(--muted);text-align:center;font-size:13px}.craft-sale-row{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;padding:8px 12px;background:#fffaf3;border:1px solid var(--line);border-radius:10px;font-size:14px}.craft-sale-row-main{display:flex;flex-direction:column;gap:2px;min-width:0}.craft-sale-row-brand{font-weight:700;color:var(--brand-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.craft-sale-row-payment{font-size:12px;color:var(--muted)}.craft-sale-row-amount{font-weight:700;font-variant-numeric:tabular-nums;color:var(--brand-dark);font-size:15px}.craft-sale-row-remove{background:transparent;color:var(--muted);border:0;font-size:14px;padding:4px 8px;border-radius:6px;cursor:pointer}.craft-sale-row-remove:hover{background:#dc26261f;color:#dc2626}.craft-sale-row-existing{background:#efe2d0;border-style:dashed}.craft-sale-row-existing .craft-sale-row-payment{font-style:italic;color:var(--brand-dark)}.craft-sale-row-remove:disabled{opacity:.3;cursor:not-allowed}@media(max-width:720px){.craft-sale-form{grid-template-columns:1fr}}.invoice-items-toolbar{margin-top:12px;display:flex;justify-content:flex-start}.invoice-items-panel{margin-top:10px;padding:12px;background:#fffaf3;border:1px solid var(--line);border-radius:12px}.invoice-items-search{width:100%;padding:8px 12px;border:1px solid rgba(0,0,0,.18);border-radius:10px;font-size:14px;margin-bottom:12px;font-family:inherit}.invoice-items-search:focus{outline:2px solid var(--brand);border-color:transparent}.invoice-items-groups{display:grid;gap:12px}.invoice-items-group{background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 14px}.invoice-items-group-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;padding-bottom:6px;border-bottom:1px dashed var(--line)}.invoice-items-group-head h3{margin:0;font-size:15px;color:var(--brand-dark)}.invoice-items-group-count{font-size:12px;color:var(--muted);white-space:nowrap}.invoice-items-group-list{list-style:none;margin:0;padding:0;display:grid;gap:4px}.invoice-items-group-list li{display:grid;grid-template-columns:1fr auto auto auto auto;gap:12px;font-size:13px;padding:4px 2px;border-top:1px dashed rgba(0,0,0,.06)}.invoice-items-group-list li:first-child{border-top:none}.invoice-items-canon{display:block;padding:0;border-top:1px dashed rgba(0,0,0,.06)}.invoice-items-canon:first-child{border-top:none}.invoice-items-canon-head{display:grid;grid-template-columns:auto 1fr auto auto;gap:8px;align-items:center;padding:4px 2px}.invoice-items-canon-toggle{background:transparent;border:1px solid var(--line);border-radius:4px;width:22px;height:22px;padding:0;font-size:12px;line-height:1;color:var(--muted);cursor:pointer}.invoice-items-canon-toggle:hover{background:#f3f4f6}.invoice-items-canon-count{font-weight:700}.invoice-items-canon-summary{font-variant-numeric:tabular-nums;font-weight:600;color:var(--brand-dark)}.invoice-items-canon-body{list-style:none;margin:4px 0 6px 28px;padding:0;display:grid;gap:4px}.invoice-items-canon-body li{display:grid;grid-template-columns:1fr auto auto auto auto;gap:12px;font-size:12.5px;padding:3px 2px;border-top:1px dotted rgba(0,0,0,.06)}.invoice-items-canon-body li:first-child{border-top:none}.invoice-items-name{color:var(--brand-dark)}.invoice-items-price{font-weight:700;font-variant-numeric:tabular-nums;color:var(--brand-dark);text-align:right;min-width:80px}.invoice-items-qty{font-variant-numeric:tabular-nums;white-space:nowrap}.invoice-items-date{white-space:nowrap;font-size:12px}@media(max-width:720px){.invoice-items-group-list li{grid-template-columns:1fr;gap:2px}}.invoice-items-group-list li{grid-template-columns:1fr auto auto auto auto auto}.invoice-items-unit-price{font-variant-numeric:tabular-nums;text-align:right;min-width:90px;white-space:nowrap;color:var(--brand-dark);font-weight:600}.invoice-items-unit-price-ai{color:#7c3aed;border-bottom:1px dotted rgba(124,58,237,.6)}.invoices-view-mode{display:inline-flex;border:1px solid var(--line);border-radius:999px;overflow:hidden;background:#fff;margin:12px 0 8px}.invoices-view-btn{background:transparent;border:none;padding:6px 14px;font-weight:700;font-size:13px;color:var(--brand-dark);cursor:pointer;border-right:1px solid var(--line)}.invoices-view-btn:last-child{border-right:none}.invoices-view-btn:hover{background:#d9770614}.invoices-view-btn.active{background:var(--brand);color:#fff}.invoices-month-controls{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px}.invoices-month-label{font-weight:700;font-size:14px;color:var(--brand-dark);text-transform:capitalize;min-width:130px;text-align:center}.invoices-month-scroll{overflow:auto;max-width:100%;background:#fff;border-radius:12px;box-shadow:0 1px #0000000a}.invoices-month-grid{border-collapse:separate;border-spacing:0;font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}.invoices-month-grid th,.invoices-month-grid td{border-bottom:1px solid var(--line);border-right:1px solid var(--line);padding:4px 6px;text-align:center;background:#fff}.invoices-month-grid thead th{position:sticky;top:0;z-index:2;background:#fffaf3;font-size:11px;text-transform:uppercase;color:var(--muted);letter-spacing:.04em}.invoices-month-corner,.invoices-month-name{position:sticky;left:0;z-index:3;background:#fffaf3;text-align:left;min-width:160px;max-width:220px;font-weight:700}.invoices-month-name{background:#fff;z-index:1}.invoices-month-corner{z-index:4}.invoices-month-day{min-width:56px}.invoices-month-day-clickable{cursor:pointer;-webkit-user-select:none;user-select:none}.invoices-month-day-clickable:hover{background:var(--accent-soft, #eff6ff);color:var(--accent, #2563eb);border-radius:4px}.invoices-month-weekday{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-weight:600;background:#fffaf3}.invoices-month-weekend{background:#fdf6e8!important}.invoices-month-cell{padding:4px 6px;text-align:right}.invoices-month-money{font-weight:600;color:var(--brand-dark);cursor:pointer}.invoices-month-money:hover{background:#fff4dd!important}.invoices-month-rowtotal{background:#fffaf3;font-weight:700;min-width:96px;text-align:right}.invoices-month-grand{background:#ffe7c2!important;color:var(--brand-dark);font-weight:800}.invoices-month-total-head{background:#ffe7c2!important;color:var(--brand-dark)}.invoices-month-footer .invoices-month-name,.invoices-month-footer td{background:#ffe7c2;font-weight:800;color:#000}.invoices-month-footer-label{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#000}.invoices-cell-modal{max-width:480px}.invoices-cell-list{list-style:none;padding:0;margin:8px 0 0;display:flex;flex-direction:column;gap:6px;max-height:320px;overflow:auto}.invoices-cell-list li{padding:6px 8px;border:1px solid var(--line);border-radius:8px;font-size:13px}.invoices-cell-photo{text-decoration:none}.invoices-day-modal{max-width:560px}.invoices-day-list{list-style:none;padding:0;margin:12px 0 0;display:flex;flex-direction:column;gap:8px;max-height:400px;overflow:auto}.invoices-day-row{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;flex-wrap:wrap}.invoices-day-amount{min-width:90px;font-size:14px}.invoices-day-select{flex:1;min-width:120px;font-size:13px;padding:4px 6px;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--text)}.invoices-day-photo-link{padding:4px 10px;border-radius:6px;background:#2563eb;color:#fff;text-decoration:none;font-size:12px;font-weight:600;white-space:nowrap}.invoices-day-photo-link:hover{background:#1d4ed8}.invoice-items-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px}.invoice-items-controls .invoice-items-search{flex:1 1 220px;margin:0}.invoice-items-normalize-status{font-size:12px}.invoice-items-add-btn{background:transparent;color:var(--brand-dark);border:1px dashed rgba(0,0,0,.18);border-radius:6px;padding:3px 10px;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap}.invoice-items-add-btn:hover{border-color:var(--brand);background:#fffaf3;color:var(--brand)}@media(max-width:720px){.invoice-items-group-list li{grid-template-columns:1fr}.invoice-items-add-btn{justify-self:end}}.invoice-add-modal{max-width:520px}.invoice-add-hint{font-size:12px;margin:0 0 8px}.invoice-replace-picker .invoice-replace-search{width:100%;margin-bottom:8px}.invoice-replace-list{max-height:320px;overflow-y:auto}.invoice-replace-empty,.invoice-replace-more{padding:8px 4px;font-size:13px}.invoice-replace-old{display:block;font-size:11px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.invoice-add-matches{list-style:none;margin:6px 0 12px;padding:0;display:grid;gap:6px;max-height:320px;overflow-y:auto}.invoice-add-match-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:8px 12px;background:#fffaf3;border:1px solid var(--line);border-radius:10px}.invoice-add-match-row-existing{background:#ececec;border-color:#0000001f;filter:grayscale(.4)}.invoice-add-match-row-existing .invoice-add-match-name,.invoice-add-match-row-existing .invoice-add-match-full,.invoice-add-match-row-existing .invoice-add-match-supplier{color:#00000073!important}.invoice-add-match-row-existing button{background:#cfcfcf;color:#0000008c;cursor:not-allowed}.invoice-add-match-existing-badge{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:999px;background:#9ca3af;color:#fff;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;vertical-align:middle}.invoice-add-match-info{display:flex;flex-direction:column;gap:2px;min-width:0}.invoice-add-match-name{font-weight:700;color:var(--brand-dark)}.invoice-add-match-full,.invoice-add-match-supplier{font-size:12px}.invoice-add-match-row button{padding:6px 14px;font-size:13px;border-radius:8px}.invoice-add-form{display:grid;gap:8px;margin:6px 0 12px}.invoice-add-field{display:grid;grid-template-columns:130px 1fr;gap:10px;align-items:center}.invoice-add-field-label{font-size:13px;color:var(--brand-dark);font-weight:600}.invoice-add-input{padding:8px 10px;font-size:14px;border:1px solid rgba(0,0,0,.18);border-radius:8px;background:#fffaf3;font-family:inherit}.invoice-add-input:focus{outline:2px solid var(--brand);border-color:transparent;background:#fff}@media(max-width:540px){.invoice-add-field{grid-template-columns:1fr}}.important-item{transition:opacity .2s,background .2s,filter .2s}.important-item-reacted{opacity:.55;filter:grayscale(.7);background:#ececec}.important-item-reacted h3,.important-item-reacted p{color:#0000008c}.important-separator{margin:14px 0 6px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);border-top:1px dashed var(--line);padding-top:10px}.important-reactions{display:flex;gap:6px;margin-top:10px;flex-wrap:wrap}.important-reaction{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:#d9770614;color:var(--brand-dark);border:1px solid rgba(217,119,6,.18);border-radius:999px;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s,transform .1s}.important-reaction:hover{background:#d9770629;border-color:#d9770657}.important-reaction.active{background:var(--brand);color:#fff;border-color:var(--brand)}.important-reaction-emoji{font-size:16px;filter:grayscale(.25) opacity(.85)}.important-reaction.active .important-reaction-emoji{filter:none}.important-reaction-count{font-variant-numeric:tabular-nums;font-size:12px;opacity:.85}.important-reactions-summary{display:flex;gap:10px;margin-top:10px;flex-wrap:wrap;align-items:center}.important-reactions-summary-item{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;background:#0000000a;border-radius:999px;font-size:13px;color:var(--brand-dark)}.important-reactions-summary-item.empty{opacity:.5}.important-reactions-summary-item.mine{background:#d977062e;color:var(--brand-dark);font-weight:700}.important-reactions-summary-item .important-reaction-emoji{font-size:14px;filter:grayscale(.25) opacity(.85)}.important-reactions-hint{font-size:12px}.today-important-item-reacted{opacity:.6;filter:grayscale(.6);background:#ececec}.today-important-item-reacted h3,.today-important-item-reacted p{color:#0000008c}.expired-banners{display:flex;flex-direction:column;gap:10px;margin:0 0 14px}.important-banner-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px}.important-banner-card{background:#fff;border-radius:16px;padding:24px 28px;width:min(560px,100%);box-shadow:0 20px 60px #00000040;display:flex;flex-direction:column;gap:12px;border-top:6px solid var(--brand)}.important-banner-eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--brand);font-weight:800}.important-banner-title{margin:0;font-size:22px;color:var(--brand-dark)}.important-banner-body{margin:0;font-size:15px;line-height:1.45;white-space:pre-wrap}.important-banner-date{margin:0;font-size:12px}.important-banner-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.important-banner-react{background:#fffaf3;border:1px solid var(--line);border-radius:999px;padding:8px 14px;font-weight:700;font-size:13px;cursor:pointer;color:var(--brand-dark)}.important-banner-react:hover{background:var(--brand);color:#fff;border-color:var(--brand)}.important-banner-react:disabled{opacity:.6;cursor:progress}.important-banner-nav{display:flex;justify-content:space-between;gap:8px;margin-top:4px}.important-banner-flag{display:inline-block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;background:#fff4dd;color:var(--brand-dark);padding:2px 8px;border-radius:999px;vertical-align:middle;margin-left:6px;border:1px solid var(--line)}.important-banner-toggle{display:inline-flex;align-items:center;gap:4px;font-size:13px;cursor:pointer}.important-banner-toggle input[type=checkbox]{width:auto;margin:0;padding:0}.expired-banner{background:#fde7c2;border:1px solid #d97706;border-radius:14px;padding:14px 16px;box-shadow:0 4px 14px #d977062e;display:grid;gap:8px;transition:opacity .2s,transform .2s}.expired-banner-leaving{opacity:0;transform:translateY(-6px)}.expired-banner-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.expired-banner-eyebrow{font-size:11px;font-weight:800;letter-spacing:.08em;color:var(--brand-dark)}.expired-banner-date{font-size:12px;color:var(--muted)}.expired-banner-title{margin:0;font-size:17px;color:var(--brand-dark)}.expired-banner-body{margin:0;color:#2c1f10}.expired-banner-dismiss{justify-self:end;padding:7px 14px;font-size:13px;border-radius:10px}.task-form{display:flex;gap:6px;flex-wrap:wrap}.task-form input[name=title]{flex:1 1 140px;min-width:0}.task-due-input{width:90px;text-align:center}.task-recurring-toggle{display:inline-flex;align-items:center;gap:4px;font-size:13px;cursor:pointer}.task-recurring-days{flex:1 1 100%;display:flex;flex-wrap:wrap;gap:6px 14px;border:1px solid var(--line);border-radius:8px;padding:6px 10px;background:#fffaf3;margin:0}.task-recurring-days legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.task-recurring-days label{display:inline-flex;align-items:center;gap:4px;font-size:13px;cursor:pointer}.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}.task-recurring-flag{display:inline-block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;background:#fff4dd;color:var(--brand-dark);padding:2px 6px;border-radius:999px;border:1px solid var(--line);margin-left:6px;white-space:nowrap}.task-text{flex:1 1 auto}.task-due{margin-left:auto;font-size:12px;color:var(--brand-dark);font-weight:700;white-space:nowrap}.item.task-carried{background:#dc26261a;border-left:3px solid #dc2626}.unfinished-tasks-modal{max-width:520px}.unfinished-tasks-list{display:grid;gap:10px;max-height:440px;overflow-y:auto;padding-right:4px}.unfinished-tasks-empty{padding:14px;text-align:center;color:var(--muted);background:#fffaf3;border-radius:10px}.unfinished-task-banner{background:#fffaf3;border:1px solid var(--line);border-radius:12px;padding:10px 14px;display:grid;gap:8px;transition:background .2s,border-color .2s}.unfinished-task-banner.done{background:#16a34a1a;border-color:#16a34a66}.unfinished-task-banner.carried{background:#dc26261a;border-color:#dc262666}.unfinished-task-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.unfinished-task-title{font-weight:700;color:var(--brand-dark)}.unfinished-task-due{font-weight:700;font-size:12px;color:var(--brand-dark)}.unfinished-task-carried{font-size:12px;color:#dc2626;font-weight:600}.unfinished-task-actions{display:flex;gap:8px;justify-content:flex-end}.unfinished-task-done,.unfinished-task-undone{padding:6px 14px;font-size:13px;border-radius:8px}.unfinished-task-done{background:#16a34a;color:#fff}.unfinished-task-done.active{outline:2px solid #14532d;outline-offset:2px}.unfinished-task-undone{background:#dc2626;color:#fff}.unfinished-task-undone.active{outline:2px solid #7f1d1d;outline-offset:2px}.cash-register-modal{max-width:460px}.cash-register-hint{background:#f3efe7;border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted);border:1px dashed rgba(0,0,0,.08)}.cash-register-hint-formula{line-height:1.5;font-variant-numeric:tabular-nums}.cash-register-hint-result{margin-top:2px;font-weight:700;color:var(--brand-dark);font-size:14px}.cash-register-hint-result strong{color:#000;font-weight:800}.cash-register-fill{align-self:flex-start;font-size:12px;padding:6px 12px;border-radius:8px}.today-actions .button-like{padding:9px 14px;font-size:13px;border-radius:10px;cursor:pointer}.today-actions .button-like.is-loading{opacity:.6;cursor:wait}.payment-choice-modal{max-width:380px}.payment-choice-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.payment-choice-btn{padding:12px 8px;font-size:14px;font-weight:700;border-radius:10px;background:#fffaf3;color:var(--brand-dark);border:1px solid var(--line);cursor:pointer;transition:background .15s,border-color .15s}.payment-choice-btn:hover{background:#efe2d0;border-color:var(--brand)}.payment-choice-btn.active{background:var(--brand);color:#fff;border-color:var(--brand)}.analytics-subtabs{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 18px}.analytics-subtab{flex:0 0 auto;color:var(--brand-dark);background:#fffaf3bd;border:1px solid var(--line);border-radius:999px;padding:8px 14px;font-weight:700;font-size:14px;cursor:pointer}.analytics-subtab:hover,.analytics-subtab.active{color:#fff;background:var(--brand);border-color:var(--brand)}.analytics-subtab.active:hover{background:var(--brand-dark);border-color:var(--brand-dark)}.analytics-subpanel{min-height:120px}.analytics-subpanel:empty:before{display:block;content:"\420\430\437\434\435\43b  \432  \440\430\437\440\430\431\43e\442\43a\435.";color:var(--muted);font-size:13px;padding:16px 0}.analytics-shifts-controls{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px}.analytics-shifts-date{font-size:14px;padding:6px 8px}.analytics-shifts-controls .analytics-shifts-edit-closure{margin-left:auto;flex:0 0 auto;max-width:100%}.closure-edit-fields{display:grid;gap:12px;padding:0;margin:0;border:0;min-width:0}.closure-edit-fields label{display:grid;gap:4px;font-size:14px}.closure-edit-fields input{width:100%;min-width:0;font-size:16px}.analytics-shifts-summary{display:flex;flex-direction:column;gap:4px;margin-bottom:14px}.analytics-shifts-total{display:flex;align-items:baseline;gap:8px}.analytics-shifts-total-label{font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.analytics-shifts-total-value{font-size:22px;font-weight:800;color:var(--brand-dark);font-variant-numeric:tabular-nums}.analytics-shifts-transfer{font-size:12px;font-variant-numeric:tabular-nums}.analytics-shifts-grid{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px #0000000a;font-size:13px}.analytics-shifts-grid thead th{text-align:left;font-size:11px;text-transform:uppercase;color:var(--muted);letter-spacing:.04em;padding:10px 12px;background:#fffaf3;border-bottom:1px solid var(--line)}.analytics-shifts-grid tbody td{padding:8px 12px;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}.analytics-shifts-grid tbody tr:last-child td{border-bottom:none}.analytics-shifts-hours-input{width:80px;padding:4px 6px;font-variant-numeric:tabular-nums}.analytics-shifts-salary{font-weight:700;color:var(--brand-dark)}.analytics-shifts-legend{margin-top:12px;font-size:12px;line-height:1.4}.user-rate-label{display:inline-flex;align-items:center;gap:6px;font-size:13px}.user-rate-label select{padding:4px 6px;font-variant-numeric:tabular-nums}.analytics-shifts-mode{display:inline-flex;border:1px solid var(--line);border-radius:999px;overflow:hidden;background:#fff;margin-bottom:12px}.analytics-shifts-mode-btn{background:transparent;border:none;padding:6px 14px;font-weight:700;font-size:13px;color:var(--brand-dark);cursor:pointer;border-right:1px solid var(--line)}.analytics-shifts-mode-btn:last-child{border-right:none}.analytics-shifts-mode-btn:hover{background:#d9770614}.analytics-shifts-mode-btn.active{background:var(--brand);color:#fff}.analytics-shifts-month-label{font-weight:700;font-size:14px;color:var(--brand-dark);text-transform:capitalize;min-width:130px;text-align:center}.analytics-shifts-month-scroll{overflow:auto;max-width:100%;background:#fff;border-radius:12px;box-shadow:0 1px #0000000a}.analytics-shifts-month-grid{border-collapse:separate;border-spacing:0;font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}.analytics-shifts-month-grid th,.analytics-shifts-month-grid td{border-bottom:1px solid var(--line);border-right:1px solid var(--line);padding:4px 6px;text-align:center;background:#fff}.analytics-shifts-month-grid thead th{position:sticky;top:0;z-index:2;background:#fffaf3;font-size:11px;text-transform:uppercase;color:var(--muted);letter-spacing:.04em}.analytics-shifts-month-corner,.analytics-shifts-month-name,.analytics-shifts-month-totals-label{position:sticky;left:0;z-index:3;background:#fffaf3;text-align:left;min-width:140px;max-width:200px;font-weight:700}.analytics-shifts-month-name{background:#fff;z-index:1}.analytics-shifts-month-corner{z-index:4}.analytics-shifts-month-day{min-width:56px}.analytics-shifts-month-weekday{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-weight:600;background:#fffaf3}.analytics-shifts-month-day-total{font-size:10px;color:var(--muted);font-weight:600}.analytics-shifts-month-day-total.muted{color:#00000040}.analytics-shifts-month-weekend{background:#fdf6e8!important}.analytics-shifts-month-cell{padding:2px 4px}.analytics-shifts-month-empty{color:#00000040}.writeoffs-hint{margin:4px 0 12px;font-size:12px}.writeoffs-rows{display:flex;flex-direction:column;gap:6px}.writeoffs-row{display:grid;grid-template-columns:1fr 90px 36px 110px 30px;gap:6px;align-items:center}.writeoffs-input{width:100%;box-sizing:border-box;padding:6px 8px;font-variant-numeric:tabular-nums}.writeoffs-name{text-align:left}.writeoffs-qty,.writeoffs-total{text-align:right}.writeoffs-unit{font-size:12px;text-align:center}.writeoffs-remove{background:transparent;border:1px solid rgba(0,0,0,.15);border-radius:6px;width:28px;height:28px;cursor:pointer;font-size:16px;line-height:1;color:#0000008c}.writeoffs-remove:hover{border-color:#dc2626;color:#dc2626}.writeoffs-add{margin-top:8px;align-self:flex-start}.writeoffs-sum{margin-top:8px;font-weight:700;text-align:right;font-variant-numeric:tabular-nums}@media(max-width:720px){.writeoffs-row{grid-template-columns:1fr 70px 30px 90px 28px}}.analytics-shifts-month-money{font-variant-numeric:tabular-nums;text-align:right;font-weight:600;color:var(--brand-dark);cursor:help}.analytics-shifts-month-rowtotal{background:#fffaf3;font-weight:700;min-width:60px}.analytics-shifts-month-rowtotal-money{color:var(--brand-dark);min-width:90px}.analytics-shifts-month-grand{background:#ffe7c2!important;color:var(--brand-dark);font-weight:800;font-size:12px}.analytics-shifts-month-fot{font-size:10px;font-weight:600}.analytics-shifts-month-total-head{background:#ffe7c2!important;color:var(--brand-dark)}.analytics-shifts-month-footer-row .analytics-shifts-month-name,.analytics-shifts-month-footer-row td{background:#fffaf3}.analytics-shifts-month-footer-row:first-of-type th,.analytics-shifts-month-footer-row:first-of-type td{border-top:2px solid var(--brand)}.analytics-shifts-month-footer-label{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:700}.analytics-shifts-month-footer-salary .analytics-shifts-month-name,.analytics-shifts-month-footer-salary td{background:#ffe7c2;font-weight:800;color:#000}.analytics-shifts-month-footer-salary .analytics-shifts-month-footer-label,.analytics-shifts-month-footer-salary .analytics-shifts-month-rowtotal-money{color:#000}.analytics-shifts-month-footer-writeoffs .analytics-shifts-month-money{color:#b91c1c}.analytics-invoices-table{margin-top:8px;overflow-x:auto}.analytics-invoices-grid{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px #0000000a;font-size:13px}.analytics-invoices-grid thead th{text-align:left;font-size:11px;text-transform:uppercase;color:var(--muted);letter-spacing:.04em;padding:10px 12px;background:#fffaf3;border-bottom:1px solid var(--line)}.analytics-invoices-grid tbody td{padding:8px 12px;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}.analytics-invoices-grid tbody tr:last-child td{border-bottom:none}.analytics-invoices-supplier{font-weight:700;color:var(--brand-dark)}.analytics-invoices-money{text-align:right;white-space:nowrap}.analytics-invoices-debt{color:#b91c1c;font-weight:700}.analytics-invoices-total td{background:#ffe7c2;font-weight:800;color:#000;border-top:2px solid var(--brand)}.analytics-invoices-action{text-align:right;white-space:nowrap}.analytics-invoices-pay-btn{background:#16a34a;color:#fff;border:none;border-radius:8px;padding:6px 14px;font-weight:700;font-size:12px;cursor:pointer}.analytics-invoices-pay-btn:hover{background:#15803d}.analytics-invoices-pay-btn:disabled{opacity:.6;cursor:progress}.analytics-costs-section{margin-bottom:22px}.analytics-costs-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:12px 0 6px}.analytics-costs-head h3{margin:0;font-size:16px;color:var(--brand-dark)}.analytics-costs-ack-all{background:#16a34a;color:#fff;border:none;border-radius:8px;padding:6px 12px;font-weight:700;font-size:12px;cursor:pointer}.analytics-costs-ack-all:hover{background:#15803d}.analytics-costs-ack-all:disabled{opacity:.6;cursor:progress}.analytics-costs-grid{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px #0000000a;font-size:13px}.analytics-costs-grid thead th{text-align:left;font-size:11px;text-transform:uppercase;color:var(--muted);letter-spacing:.04em;padding:10px 12px;background:#fffaf3;border-bottom:1px solid var(--line)}.analytics-costs-grid tbody td{padding:6px 12px;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}.analytics-costs-grid tbody tr:last-child td{border-bottom:none}.analytics-costs-name{font-weight:700;color:var(--brand-dark)}.analytics-costs-money{text-align:right;white-space:nowrap}.analytics-costs-input-cell{text-align:right}.analytics-costs-input{width:80px;padding:4px 6px;text-align:right;font-variant-numeric:tabular-nums}.analytics-costs-allowed{width:60px}.analytics-costs-pct{margin-left:4px;font-size:12px}.analytics-costs-exceeded td{background:#fef2f2}.analytics-costs-exceeded .analytics-costs-name,.analytics-costs-debt{color:#b91c1c;font-weight:800}.analytics-costs-cost-partial{color:#ca8a04;cursor:help}.analytics-costs-action{text-align:center;width:36px}.analytics-costs-ack-one{background:transparent;border:1px solid rgba(0,0,0,.15);border-radius:6px;width:26px;height:26px;cursor:pointer;font-size:14px;line-height:1;color:#0000008c}.analytics-costs-ack-one:hover{border-color:#16a34a;color:#16a34a}.analytics-writeoffs-table{margin-top:8px;overflow-x:auto}.analytics-writeoffs-grid{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px #0000000a;font-size:13px}.analytics-writeoffs-grid thead th{text-align:left;font-size:11px;text-transform:uppercase;color:var(--muted);letter-spacing:.04em;padding:10px 12px;background:#fffaf3;border-bottom:1px solid var(--line)}.analytics-writeoffs-grid tbody td{padding:8px 12px;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums;vertical-align:top}.analytics-writeoffs-grid tbody tr:last-child td{border-bottom:none}.analytics-writeoffs-date{white-space:nowrap;color:var(--muted)}.analytics-writeoffs-name{color:var(--brand-dark);font-weight:600}.analytics-writeoffs-qty{white-space:nowrap;text-align:right;min-width:80px}.analytics-writeoffs-money{text-align:right;white-space:nowrap;font-weight:700;color:#b91c1c}.analytics-writeoffs-people{display:flex;flex-wrap:wrap;gap:4px}.analytics-writeoffs-person{display:inline-block;background:#fffaf3;padding:2px 8px;border-radius:999px;font-size:12px;border-left:3px solid var(--brand)}.analytics-writeoffs-total td{background:#ffe7c2;font-weight:800;color:#000;border-top:2px solid var(--brand)}.ttk-controls{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end}.ttk-controls input[type=search]{min-width:220px}.ttk-section-toggle{display:inline-flex;margin:12px 0 0;border:1px solid var(--line);border-radius:999px;overflow:hidden;background:#fff}.ttk-section-toggle:empty{display:none}.ttk-section-btn{background:transparent;color:var(--brand-dark);border:none;padding:6px 16px;font-weight:700;font-size:13px;cursor:pointer;border-right:1px solid var(--line)}.ttk-section-btn:last-child{border-right:none}.ttk-section-btn:hover{background:#d9770614}.ttk-section-btn.active{background:var(--brand);color:#fff}.ttk-subcategories{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.ttk-chip{background:#fff;color:var(--brand-dark);border:1px solid var(--line);padding:8px 14px;border-radius:999px;font-weight:700;cursor:pointer}.ttk-chip:hover,.ttk-chip.active{background:var(--brand);color:#fff;border-color:var(--brand)}.ttk-form-card{display:flex;flex-direction:column;gap:12px;padding:18px 20px;margin-bottom:18px;background:#fffaf3;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.ttk-form-card[hidden]{display:none}.ttk-form-row{display:grid;gap:12px;grid-template-columns:1.5fr 1fr .7fr}.ttk-field{display:flex;flex-direction:column;gap:6px;font-weight:700;color:var(--brand-dark);font-size:13px}.ttk-field-wide{flex:1 1 auto}.ttk-field span{font-size:12px;text-transform:uppercase;letter-spacing:.04em}.ttk-field input,.ttk-field select,.ttk-field textarea{font-weight:500;color:var(--text)}.ttk-field textarea{min-height:80px;resize:vertical}.ttk-form-actions{display:flex;gap:10px}.ttk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}.ttk-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 8px 24px #452d190f;transition:box-shadow .2s ease,transform .15s ease}.ttk-card:hover{box-shadow:0 12px 30px #452d191f}.ttk-card.expanded{box-shadow:0 16px 36px #452d192e}.ttk-card-bar{border-top:4px solid #0891b2}.ttk-card-kitchen{border-top:4px solid #d97706}.ttk-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 16px;cursor:pointer;outline:none}.ttk-card-header:focus-visible{background:#8b5e3414}.ttk-card-header-left{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 auto}.ttk-card-header-left h3{margin:0;font-size:16px;color:var(--brand-dark)}.ttk-card-subtitle{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.ttk-card-desc{margin:6px 0 0;font-size:13px;color:var(--text);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ttk-card-header-right{display:flex;align-items:center;gap:10px;flex-shrink:0}.ttk-yield-chip{background:#8b5e341a;color:var(--brand-dark);padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap}.ttk-card-arrow{color:var(--brand-dark);font-size:16px;transition:transform .2s ease}.ttk-card.expanded .ttk-card-arrow{transform:rotate(180deg)}.ttk-card-body{display:none;flex-direction:column;gap:12px;padding:0 16px 16px}.ttk-card.expanded .ttk-card-body{display:flex}.ttk-block{display:flex;flex-direction:column;gap:4px}.ttk-block .eyebrow{margin:0;font-size:11px;color:var(--brand-dark)}.ttk-text{margin:0;white-space:pre-wrap;line-height:1.45;font-size:14px}.ttk-ingredient-list{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:2px;font-size:14px}.ttk-ingredient-table{width:100%;border-collapse:collapse;font-size:13px;background:#fffaf3;border-radius:10px;overflow:hidden}.ttk-ingredient-table th,.ttk-ingredient-table td{padding:6px 8px;border-bottom:1px solid var(--line);text-align:left}.ttk-ingredient-table thead th{background:#8b5e341a;color:var(--brand-dark);font-size:12px;text-transform:uppercase;letter-spacing:.03em}.ttk-ingredient-table tbody tr:last-child td{border-bottom:0}.ttk-ingredient-name{font-weight:700;color:var(--brand-dark)}.ttk-card-actions{display:flex;gap:8px;margin-top:4px}.ttk-card-actions button{padding:6px 12px;font-size:12px;border-radius:10px}.ttk-card-meta{margin:0;font-size:12px}@media(max-width:720px){.ttk-form-row,.ttk-grid{grid-template-columns:1fr}}.ttk-ingredients-block{display:flex;flex-direction:column;gap:6px}.ttk-ingredients-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.ttk-ingredients-title{font-weight:600}.ttk-ingredients-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-left:auto}.ttk-ingredients-hint{font-size:12px}.ttk-ingredients-rows{display:flex;flex-direction:column;gap:4px}.ttk-ing-row{display:grid;grid-template-columns:minmax(180px,1fr) repeat(var(--ttk-qty-cols, 1),110px) repeat(var(--ttk-qty-cols, 1),90px) 32px;gap:6px;align-items:center}.ttk-ing-head{font-size:12px;font-weight:600;color:#0000008c;text-transform:uppercase;letter-spacing:.04em}.ttk-ingredients-rows[data-cols="1"]{--ttk-qty-cols: 1}.ttk-ingredients-rows[data-cols="2"]{--ttk-qty-cols: 2}.ttk-ingredients-rows[data-cols="3"]{--ttk-qty-cols: 3}.ttk-ing-input{width:100%;box-sizing:border-box}.ttk-ing-qty-wrap{display:flex;align-items:center;gap:4px;min-width:0}.ttk-ing-qty-input{flex:1 1 auto;min-width:0}.ttk-ing-qty-unit{flex:0 0 auto;font-size:12px;white-space:nowrap}.ttk-ing-qty-unit[hidden]{display:none}.ttk-ing-cell-price{font-variant-numeric:tabular-nums;text-align:right;font-weight:600}.ttk-ing-cost-head{display:flex;flex-direction:column;align-items:flex-end;gap:1px}.ttk-ing-cost-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#0000008c;line-height:1}.ttk-ing-cost-total{font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--brand-dark);line-height:1.2}.ttk-ing-cost-total.muted{color:#0006;font-weight:500}.ttk-ing-cell-cost-row{font-variant-numeric:tabular-nums;text-align:right;font-weight:600}.ttk-ing-cell-actions{text-align:center}.ttk-ing-row-remove,.ttk-ing-size-remove{background:transparent;border:1px solid rgba(0,0,0,.15);border-radius:6px;width:28px;height:28px;font-size:16px;line-height:1;cursor:pointer;color:#0000008c}.ttk-ing-row-remove:hover,.ttk-ing-size-remove:hover{border-color:#dc2626;color:#dc2626}.ttk-ing-size-head{display:flex;align-items:center;gap:4px}.ttk-ing-size-input{flex:1;width:100%;box-sizing:border-box;font-weight:600}.ttk-ingredients-add-row{align-self:flex-start}@media(max-width:720px){.ttk-ing-row{grid-template-columns:1fr}.ttk-ing-cell-price{text-align:left}}.ttk-names-view{display:flex;flex-direction:column;gap:12px;margin-top:8px}.ttk-names-add{margin-bottom:0}.ttk-names-table{width:100%;border-collapse:collapse}.ttk-names-table th,.ttk-names-table td{padding:8px 10px;text-align:left;vertical-align:top;border-bottom:1px solid rgba(0,0,0,.08)}.ttk-names-table th{font-weight:600;font-size:13px;color:#0009}.ttk-names-table tbody tr:hover{background:#d977060d}.ttk-names-price{white-space:nowrap}.ttk-names-price-date{font-size:12px}.ttk-names-actions{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}.ttk-names-legend{font-size:13px;line-height:1.4}#ttk-names-toggle.active{background:#d97706;color:#fff}@media(max-width:720px){.ttk-names-table thead{display:none}.ttk-names-table,.ttk-names-table tbody,.ttk-names-table tr,.ttk-names-table td{display:block;width:100%}.ttk-names-table tr{border-bottom:1px solid rgba(0,0,0,.12);padding:8px 0}.ttk-names-table td{border-bottom:none;padding:4px 0}.ttk-names-actions{justify-content:flex-start}}.important-subpanel{margin-top:6px}.recurring-item{border-left:4px solid var(--brand);padding:8px 12px}.admin-tasks-form{margin-bottom:12px;padding:10px 12px;background:#fffaf3;border-radius:12px}.admin-tasks-form-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.admin-tasks-form-row label{display:inline-flex;align-items:center;gap:6px;font-size:13px}.admin-tasks-form-row .admin-tasks-form-spacer{margin-left:16px}.admin-tasks-recurring-toggle{cursor:pointer}.admin-tasks-section-title{margin:16px 0 6px;font-size:14px;text-transform:uppercase;letter-spacing:.04em;color:var(--brand-dark)}.admin-tasks-month{margin:8px 0 4px;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700}.admin-tasks-done-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px}.admin-tasks-done-nav{display:flex;align-items:center;gap:6px}.admin-tasks-done-nav-btn{padding:2px 10px;font-size:14px;min-width:0}.admin-tasks-done-month-label{font-size:13px;color:var(--text);min-width:120px;text-align:center}.admin-task-item{padding:8px 12px;background:#fffaf3;border-radius:8px;margin-bottom:6px;border-left:4px solid var(--brand)}.admin-task-item-done{opacity:.85}.admin-task-overdue{color:#b91c1c;font-weight:700}.admin-task-virtual{cursor:pointer;transition:background .12s,transform .06s}.admin-task-virtual:hover{background:#fff4dd}.admin-task-virtual:active{transform:scale(.997)}.admin-task-virtual:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.admin-task-virtual-chip{display:inline-block;min-width:22px;padding:1px 8px;margin-left:4px;background:#16a34a;color:#fff;border-radius:999px;font-size:12px;font-weight:800;text-align:center;vertical-align:middle;font-variant-numeric:tabular-nums}.admin-task-virtual-chip-danger{background:#b91c1c}.today-admin-tasks-card{margin-bottom:12px}.today-admin-tasks-list{display:flex;flex-direction:column;gap:8px}.today-admin-task-item{padding:8px 12px;background:#fffaf3;border-radius:8px;border-left:4px solid var(--brand)}.today-admin-task-yellow{background:#fef9c3}.today-admin-task-orange{background:#fed7aa}.today-admin-task-red{background:#fecaca}.today-admin-task-overdue{background:#fecaca;border-left-color:#b91c1c!important}.analytics-payments-heading{margin:16px 0 8px;font-size:18px}.analytics-payments-section{margin-top:16px;padding:12px 14px;background:#fff;border:1px solid var(--line);border-radius:12px}.analytics-payments-section-head{display:flex;align-items:baseline;gap:12px;margin-bottom:8px}.analytics-payments-section-title{margin:0;font-size:16px}.analytics-payments-section-range{font-size:13px}.analytics-payments-table{width:100%;border-collapse:collapse;font-size:13px}.analytics-payments-table thead th{text-align:left;font-size:11px;text-transform:uppercase;color:var(--muted);letter-spacing:.04em;padding:8px 10px;background:#fffaf3;border-bottom:1px solid var(--line)}.analytics-payments-table thead th:nth-child(2),.analytics-payments-table thead th:nth-child(3),.analytics-payments-table thead th:nth-child(4){text-align:right}.analytics-payments-table tbody td{padding:6px 10px;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}.analytics-payments-table tbody tr:last-child td{border-bottom:none}.analytics-payments-name{color:var(--brand-dark);font-weight:600}.analytics-payments-num{text-align:right;white-space:nowrap}.analytics-payments-money{text-align:right;white-space:nowrap;font-weight:700}.analytics-payments-total-row td{background:#ffe7c2;font-weight:800;color:#000;border-top:2px solid var(--brand)}.analytics-payments-action{text-align:right;white-space:nowrap}.analytics-payments-action button,.analytics-payments-action .secondary,.analytics-payments-action .danger{padding:4px 10px;font-size:12px}.analytics-payments-paid-badge{margin-left:auto;padding:2px 10px;border-radius:999px;background:#dcfce7;color:#166534;font-size:12px;font-weight:700;border:1px solid #86efac}.analytics-payments-section-head{display:flex;align-items:center;gap:12px}.analytics-payments-section-paid{background:#f0fdf4;border-color:#bbf7d0}.loans-form{display:grid;grid-template-columns:1.5fr 1fr 1fr .7fr .7fr auto;gap:8px;margin-bottom:12px}.loans-form input{padding:6px 10px;border:1px solid var(--line);border-radius:8px;font-size:13px}.loans-form button[type=submit]{padding:6px 14px;font-size:13px}.loans-input{width:100%;padding:4px 8px;border:1px solid transparent;border-radius:6px;font-size:13px;background:transparent;font-variant-numeric:tabular-nums}.loans-input:hover{border-color:var(--line)}.loans-input:focus{border-color:var(--brand);outline:none;background:#fffaf3}.loans-suffix{margin-left:4px;font-size:12px}.today-payments-card{grid-column:1 / -1}.today-payments-card h3{margin-bottom:8px}.today-payments-content{display:block}.today-photo-archive-card{grid-column:1 / -1}.today-photo-archive-card h3{margin-bottom:8px}.today-photo-archive-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px}.today-photo-archive-actions .button-like{display:inline-flex;align-items:center;padding:8px 14px;border-radius:8px;font-size:13px;text-decoration:none;background:var(--brand);color:#fff;font-weight:600}.today-photo-archive-actions .button-like:hover{background:var(--brand-dark)}.task-virtual{display:flex;align-items:center;gap:8px;padding:8px 10px;background:#fff7ed;border-left:4px solid var(--brand);border-radius:8px;font-size:13px;cursor:default}.task-virtual .task-virtual-icon{font-size:16px}.task-payment-tomorrow .task-text{font-weight:500}.payments-due-list{margin:0;padding-left:20px;font-size:14px;display:flex;flex-direction:column;gap:4px}.payments-due-total{font-weight:800;color:#000}@media(hover:none)and (pointer:coarse){.tab:hover,button:hover,.invoice-card-fold-btn:hover,.directory-category-select:hover,.directory-cell-input:hover{background:inherit;color:inherit}}@media(max-width:720px){html{overflow-x:clip;max-width:100%}body{overflow-x:clip;max-width:100%;-webkit-text-size-adjust:100%}.layout,.topbar,.tabs,.login-card{width:calc(100% - 16px)}.layout{margin-bottom:24px}.topbar{flex-direction:column;align-items:center;padding:16px 0 8px;gap:8px}.topbar-logo{height:64px;max-width:80vw}.account{width:100%;justify-content:center;font-size:13px}#account-label{flex:1 1 auto;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#logout-button{padding:8px 14px;font-size:13px}.tabs{gap:6px;padding:4px 0 10px;margin-bottom:8px;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;scroll-padding-left:8px}.tab{scroll-snap-align:start;padding:10px 14px;font-size:14px;min-height:40px;border-radius:10px;white-space:nowrap}.panel{padding:14px;border-radius:14px}.section-heading{flex-direction:column;align-items:stretch;gap:8px;margin-bottom:12px}.section-heading h2{font-size:20px}h1{font-size:22px}h2{font-size:18px}h3{font-size:16px}.form-grid,.inline-form,.three,.five,.stack,.row,.row.users-row,.requests-add,.directory-add,.suppliers-add,.craft-add,.ttk-names-add,.loans-form{grid-template-columns:1fr!important;gap:8px}input,select,textarea{padding:12px;font-size:16px;border-radius:10px}textarea{min-height:90px}button{padding:12px 16px;font-size:15px;min-height:44px;border-radius:10px}.invoice-card{padding:12px;border-radius:12px}.invoice-card-head{gap:6px}.invoice-card-supplier{font-size:15px}.invoice-card-total{font-size:16px}.invoice-card-payment{flex-wrap:wrap;gap:6px;font-size:13px}.invoice-card-paid{margin-left:0;width:100%;justify-content:flex-start}.invoice-card-due{width:100%}.invoice-card-due-input{flex:1 1 auto}.invoice-card-fold-btn{width:28px;height:28px;font-size:15px}.invoice-items{padding-left:0;font-size:13px}.invoice-items li{grid-template-columns:1fr;gap:2px;padding:6px 0;border-bottom:1px dashed rgba(0,0,0,.06)}.invoice-items li:last-child{border-bottom:none}.invoice-items-group-list li,.invoice-items-canon-body li{grid-template-columns:1fr auto;grid-template-areas:"name name" "qty price" "unit date" "action action";gap:4px 8px;padding:8px 4px;font-size:13px}.invoice-items-group-list .invoice-items-name{grid-area:name}.invoice-items-group-list .invoice-items-qty{grid-area:qty}.invoice-items-group-list .invoice-items-price{grid-area:price;text-align:right}.invoice-items-group-list .invoice-items-unit-price{grid-area:unit}.invoice-items-group-list .invoice-items-date{grid-area:date;text-align:right}.invoice-items-group-list .invoice-items-add-btn{grid-area:action;padding:8px 12px;font-size:12px;width:100%}.invoice-items-canon-head{grid-template-columns:auto 1fr auto;grid-template-areas:"toggle name count" "summary summary summary";gap:4px 8px}.invoice-items-canon-head>:nth-child(1){grid-area:toggle}.invoice-items-canon-head .invoice-items-name{grid-area:name}.invoice-items-canon-count{grid-area:count}.invoice-items-canon-summary{grid-area:summary;font-size:12px}.requests-controls{flex-direction:column;align-items:stretch;gap:8px}.requests-controls input[type=search],.requests-controls button{width:100%}.requests-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;gap:6px;padding-bottom:6px}.requests-tabs-row{align-items:flex-start;gap:6px}.requests-category-done{min-height:40px;padding:10px 14px}.requests-tab{scroll-snap-align:start;padding:10px 14px;font-size:14px;min-height:40px;white-space:nowrap;flex:0 0 auto}.requests-table{font-size:14px}.requests-table th,.requests-table td{padding:10px 8px}.requests-check input[type=checkbox]{width:22px;height:22px;margin:0}.requests-row{min-height:48px}.requests-summary-card{padding:12px}.requests-summary-copy{padding:10px 14px;font-size:13px}.directory-table,.directory-table thead,.directory-table tbody,.directory-table tr,.directory-table td{display:block;width:100%}.directory-table thead{display:none}.directory-table tbody tr{background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin-bottom:8px}.directory-table tbody td{border:none;padding:4px 0;font-size:14px;display:grid;grid-template-columns:96px 1fr;gap:8px;align-items:center}.directory-table tbody td:before{content:attr(data-label);color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.04em}.directory-table .directory-actions{text-align:left;width:auto;white-space:normal}.directory-category-cell{width:100%}.directory-category-select,.directory-cell-input{border:1px solid var(--line);background:#fffaf3;padding:8px 10px;font-size:14px}.schedule-wrap,.craft-wrap,.invoices-month-table,.analytics-shifts-month-table,.analytics-shifts-table,.analytics-writeoffs-table,.analytics-invoices-table,.analytics-costs-section{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:10px}.schedule-wrap table,.craft-wrap table,.invoices-month-grid,.analytics-shifts-month-grid,.analytics-writeoffs-grid,.analytics-invoices-table table{font-size:12px}.craft-wrap th:first-child,.craft-wrap td:first-child,.invoices-month-grid th:first-child,.invoices-month-grid td:first-child,.analytics-shifts-month-grid th:first-child,.analytics-shifts-month-grid td:first-child{position:sticky;left:0;background:#fff;z-index:2;box-shadow:1px 0 0 var(--line);max-width:130px;min-width:100px}.schedule-wrap th:first-child,.schedule-wrap td:first-child{position:sticky;left:0;background:transparent;z-index:2;box-shadow:1px 0 0 var(--line)}.craft-wrap thead th,.invoices-month-grid thead th,.analytics-shifts-month-grid thead th{position:sticky;top:0;background:#fffaf3;z-index:1}.schedule-wrap thead th{position:sticky;top:0;background:transparent;z-index:1}.craft-wrap thead th:first-child,.invoices-month-grid thead th:first-child,.analytics-shifts-month-grid thead th:first-child{z-index:3}.schedule-wrap thead th:first-child{z-index:3;background:transparent}.schedule-wrap .schedule-cell{min-width:44px;min-height:44px;padding:4px;font-size:12px}.schedule-wrap .cell-clear{top:1px;right:1px;width:22px;height:12px;min-height:12px}.schedule-wrap .cell-arrows button{min-height:14px}.schedule-grid tfoot .shift-legend-cell{min-width:140px;padding:4px 8px;background:transparent;text-align:left;white-space:normal}.schedule-grid tfoot .shift-legend-cell .shift-legend-line{font-size:11px;white-space:nowrap}.schedule-grid tfoot td:first-child{white-space:nowrap}.schedule-wrap{scrollbar-width:thin;padding-right:4px}.schedule-grid col.extra-col,.schedule-grid thead th.extra-col-head,.schedule-grid tbody td.extra-cell{display:none}.schedule-controls,.craft-controls,.invoices-month-controls,.analytics-shifts-controls,.craft-photo-bar{flex-wrap:wrap;gap:6px}.schedule-controls button,.craft-controls button,.invoices-month-controls button,.analytics-shifts-controls button{flex:1 1 calc(50% - 6px);padding:10px 12px;font-size:13px}.invoices-month-label,.analytics-shifts-month-label{flex:1 1 100%;text-align:center;font-weight:700}.analytics-subtabs,#important-subtabs{overflow-x:auto;-webkit-overflow-scrolling:touch;gap:6px;padding-bottom:6px;flex-wrap:nowrap}.analytics-subtab{flex:0 0 auto;padding:10px 14px;font-size:13px;white-space:nowrap}.analytics-payments-table{display:block;width:100%;border-collapse:separate;font-size:13px}.analytics-payments-table thead,.analytics-payments-table thead tr{display:block;width:100%}.analytics-payments-table thead th{display:none}.analytics-payments-table tbody,.analytics-payments-table tfoot{display:block;width:100%}.analytics-payments-table tbody tr,.analytics-payments-table tfoot tr{display:flex;flex-wrap:wrap;width:100%;align-items:center;gap:4px 12px;padding:8px 6px;border-bottom:1px solid var(--line);box-sizing:border-box}.analytics-payments-table tbody tr:last-child,.analytics-payments-table tfoot tr:last-child{border-bottom:none}.analytics-payments-table td{display:inline-flex;align-items:center;border:none;padding:0;box-sizing:border-box}.analytics-payments-table td.analytics-payments-name{flex:1 1 auto;min-width:0}.analytics-payments-table td.analytics-payments-num,.analytics-payments-table td.analytics-payments-money{flex:0 0 auto;text-align:right}.analytics-payments-table td.analytics-payments-action{flex:1 0 100%;padding-top:4px}.analytics-payments-table td.analytics-payments-action button{width:100%;padding:10px 14px;font-size:13px;min-height:40px}.analytics-payments-table td:empty{display:none}.analytics-payments-total-row{background:#ffe7c2;font-weight:800;margin-top:4px;border-top:2px solid var(--brand)!important;border-radius:0 0 8px 8px}.loans-table tbody tr{flex-direction:column;align-items:stretch;gap:6px}.loans-table tbody td{width:100%;text-align:left!important}.loans-table tbody td.analytics-payments-money{text-align:right!important}.ttk-grid{grid-template-columns:1fr!important;gap:10px}.ttk-card{padding:12px}.ttk-controls{flex-direction:column;align-items:stretch;gap:8px}.ttk-section-toggle,.ttk-subcategories{overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;gap:6px;padding-bottom:6px}.ttk-section-toggle button,.ttk-subcategories button{flex:0 0 auto;white-space:nowrap;padding:8px 12px;font-size:13px}.ttk-form-row{grid-template-columns:1fr!important}.ttk-ingredients-row{grid-template-columns:1fr!important;gap:4px}.grid.three{grid-template-columns:1fr!important}.today-actions{flex-direction:column;align-items:stretch;gap:8px}.today-actions .secondary,.today-actions .button-like,.today-actions button{width:100%;text-align:center}.today-admin-tasks-card,.today-payments-card,.today-photo-archive-card{padding:12px}.today-photo-archive-actions{flex-direction:column;align-items:stretch}.today-photo-archive-actions .button-like,.today-photo-archive-actions button{width:100%;text-align:center}#today-tasks .item.checkbox{padding:10px 12px;font-size:14px;gap:10px}#today-tasks .item.checkbox input[type=checkbox]{width:22px;height:22px}.task-form{grid-template-columns:1fr;gap:6px}.task-recurring-days{flex-wrap:wrap;gap:6px}.important-banner-overlay,.shift-closure-overlay{padding:12px;align-items:flex-start}.important-banner-card,.shift-closure-card{width:100%;max-width:100%;padding:18px 16px;margin-top:16px}.important-banner-title{font-size:18px}.important-banner-body{font-size:14px}.important-banner-actions{flex-direction:column;gap:6px}.important-banner-react,.important-banner-actions button{width:100%}.login-card{padding:24px 18px;border-radius:18px}.login-brand{font-size:36px;margin-bottom:22px}.login-card .topbar-logo{height:72px}.phone-input{grid-template-columns:40px 1fr}.users-row{flex-wrap:wrap}}@media(max-width:380px){.topbar-logo{height:56px}.tab{padding:9px 12px;font-size:13px}.panel{padding:12px}.section-heading h2{font-size:18px}.invoice-card-payment-select{font-size:13px}.login-brand{font-size:30px}}.today-all-tasks-header{margin-top:14px;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.today-all-task-card{background:#ffffffb3}.today-shift-detail{display:inline-flex;align-items:baseline;gap:4px;flex-wrap:wrap}.today-shift-hours{display:inline-flex;align-items:center;gap:6px;background:#fff9;padding:2px 6px;border-radius:6px;border:1px solid rgba(0,0,0,.08)}.today-shift-hours-value{font-variant-numeric:tabular-nums;min-width:3.4em;text-align:center;font-weight:600;color:var(--text)}.today-shift-arrow{background:transparent;border:none;cursor:pointer;color:var(--brand-dark);font-size:12px;padding:2px 4px;line-height:1;border-radius:4px}.today-shift-arrow:hover{background:#8b5e341f}.today-shift-arrow:disabled{cursor:wait;opacity:.4}.salary-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.salary-user-select{padding:6px 10px;border-radius:8px;border:1px solid rgba(0,0,0,.12);background:#fff;font-size:14px}.salary-card{padding:18px 22px}.salary-summary{display:flex;flex-direction:column;gap:6px;margin-bottom:20px}.salary-summary-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:6px 0;border-bottom:1px dashed var(--line)}.salary-summary-row:last-of-type{border-bottom:none}.salary-summary-row-accent{background:#8b5e340f;border-radius:8px;padding:10px 12px;font-weight:600;border-bottom:none;margin-top:4px}.salary-summary-label{color:var(--muted);font-size:14px}.salary-summary-value{font-size:15px;font-variant-numeric:tabular-nums}.salary-periods{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:16px 0 20px}.salary-period-card{border:1px solid var(--line);border-radius:10px;padding:14px 16px;background:#ffffff8c;display:flex;flex-direction:column;gap:8px}.salary-period-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;flex-wrap:wrap}.salary-period-head h3{margin:0;font-size:16px}.salary-period-sub{font-size:12px}.salary-period-rows{display:flex;flex-direction:column;gap:4px}@media(max-width:720px){.salary-periods{grid-template-columns:1fr}}.salary-advances-block h3{margin:12px 0 8px;font-size:15px}.salary-advances-list{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.salary-advance-row{display:inline-flex;align-items:baseline;gap:10px;width:fit-content;padding:4px 10px;background:#0000000a;border-radius:6px;font-size:14px;font-variant-numeric:tabular-nums}.salary-advance-date{color:var(--muted)}.salary-advance-amount{font-weight:600}.salary-advance-remove{background:transparent;color:var(--danger);border:none;font-size:18px;padding:0 6px;cursor:pointer;line-height:1}.salary-advance-form{display:inline-flex;gap:8px;align-items:center;flex-wrap:wrap;width:auto}.salary-advance-form input{padding:6px 10px;border-radius:8px;border:1px solid rgba(0,0,0,.12);font-size:14px;box-sizing:border-box}.salary-advance-form input[type=date]{width:150px;font-variant-numeric:tabular-nums}.salary-advance-form input[type=number]{width:120px}.salary-advance-form button{padding:6px 14px;font-size:14px}.permission-bonuses-bar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:12px 16px;background:#8b5e340d;border:1px solid var(--line);border-radius:10px;margin-bottom:14px}.permission-bonuses-bar h3{margin:0 8px 0 0;font-size:14px}.permission-bonuses-bar label{font-size:13px;color:var(--muted);display:inline-flex;align-items:center;gap:6px}.permission-bonuses-bar input{width:90px;padding:5px 8px;border-radius:6px;border:1px solid rgba(0,0,0,.12);font-size:14px;font-variant-numeric:tabular-nums}
