@import"https://fonts.googleapis.com/css2?family=Fraunces:wght@400;600;700&family=Manrope:wght@300;400;600&display=swap";.manager-page{width:100%;min-height:calc(100vh - 140px);display:flex}.manager-panel{flex:1;display:flex;flex-direction:column;gap:1.5rem;width:100%}.manager-tabs{display:flex;flex-wrap:wrap;gap:.75rem}.manager-tab{border:1px solid var(--border-color, #d7dfe8);background:var(--background-primary, #fff);border-radius:999px;padding:.45rem 1.25rem;font-weight:600;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease}.manager-tab.active{background:var(--primary-color, #1f2f3f);border-color:var(--primary-color, #1f2f3f);color:#fff}.manager-tab.team-tab-btn{padding:.8rem 2rem;font-size:1.15rem}.manager-tabs-wrapper{display:flex;flex-direction:column;gap:.5rem}.manager-tabs-tenant-row{display:flex;align-items:baseline;justify-content:center;gap:.6rem;text-align:center}.manager-tabs-tenant-label{font-size:.95rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#64748b}.manager-tabs-tenant-name{font-size:1.8rem;font-weight:800;color:#0f172a}.manager-directory{flex:1;display:flex;flex-direction:column;gap:1.5rem;min-height:0}.team-label-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.mini-nav-btn{border:1px solid var(--border-color, #d5dce8);background:#fff;border-radius:999px;padding:.25rem .85rem;font-size:.75rem;font-weight:600;cursor:pointer;transition:background .2s ease}.mini-nav-btn:hover{background:var(--background-secondary, #f4f6fb)}.template-trigger-btn{padding:.36rem .96rem;font-size:.8rem}.eyebrow-label{text-transform:uppercase;font-size:.75rem;letter-spacing:.08em;color:#94a3b8;margin:0 0 .25rem}.directory-header{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;align-items:flex-start}.directory-hint{margin:.35rem 0 0;color:#64748b}.directory-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.directory-count{padding:.35rem .85rem;border-radius:999px;font-weight:600;background:#e2e8f0;color:#475569}.directory-filters{display:flex;flex-wrap:wrap;gap:1rem}.filter-group{display:flex;flex-direction:column;gap:.35rem;min-width:200px}.filter-label{font-size:.68rem;letter-spacing:.08em;font-weight:700;color:#475569}.filter-group select{border:1px solid #d4dae4;border-radius:10px;padding:.55rem .75rem;font:inherit;background:var(--background-primary, #fff)}.user-table-wrapper{flex:1;min-height:0;background:var(--background-primary, #fff);border:1px solid var(--border-color, #e2e8f0);border-radius:18px;overflow:auto;box-shadow:0 20px 45px #0f172a14}.deleted-users-panel{display:flex;flex-direction:column;gap:1rem;padding:1.25rem;border:1px solid var(--border-color, #e2e8f0);border-radius:18px;background:var(--background-primary, #fff);box-shadow:0 16px 32px #0f172a0f}.deleted-users-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.deleted-users-table{max-height:360px}.deleted-users-table .user-table{min-width:900px}.deleted-row{cursor:default}.deleted-row:hover{background:#f8fafc}.btn-compact{padding:.45rem .75rem;font-size:.78rem;border-radius:999px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.78rem;color:#475569}.user-table{width:100%;border-collapse:collapse;min-width:760px}.user-table th{text-align:left;text-transform:uppercase;font-size:.7rem;letter-spacing:.08em;color:#475569;padding:.9rem;border-bottom:1px solid #e2e8f0;background:#f8fafc;position:sticky;top:0;z-index:1}.user-table td{padding:.95rem;border-bottom:1px solid #edf2f7;color:#1f2937}.user-table th:last-child,.user-table td.delete-cell{text-align:right}.user-row{cursor:pointer;transition:background .15s ease,transform .15s ease}.user-row.disabled{cursor:default;opacity:.65}.user-row.disabled:hover{background:transparent}.user-row:hover{background:#eef4ff}.user-row:focus-visible{outline:2px solid var(--accent-color, #2563eb);outline-offset:-2px}.team-editor,.team-detail{border:1px solid var(--border-color, #e2e8f0);border-radius:18px;padding:1.5rem;background:var(--background-primary, #fff);box-shadow:0 20px 45px #0f172a0f;display:flex;flex-direction:column;gap:1.25rem}.team-editor-header,.team-detail-header{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;align-items:center}.team-editor-actions{display:flex;gap:.5rem}.team-table-wrapper{width:100%;overflow:auto;border-radius:14px;border:1px solid var(--border-color, #e2e8f0)}.team-table{width:100%;min-width:640px;border-collapse:collapse}.team-table th,.team-table td{padding:.9rem;border-bottom:1px solid #edf2f7;text-align:left}.team-table th{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#475569;background:#f8fafc}.team-row:hover{background:#f5f7ff}.team-actions{display:flex;gap:.5rem}.color-pill{width:20px;height:20px;border-radius:6px;display:inline-block;margin-right:.5rem;border:1px solid rgba(15,23,42,.08)}.color-hex{font-size:.8rem;color:#475569}.team-color-picker{display:flex;align-items:center;gap:.75rem}.color-swatch.active{border-color:#1f2f3f}.emoji-picker{display:flex;flex-direction:column;gap:.75rem;max-width:320px;position:relative}.emoji-toggle{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;border:1px solid var(--border-color, #cbd5f5);border-radius:12px;padding:.55rem .75rem;background:var(--background-primary, #fff);font:inherit;cursor:pointer}.emoji-toggle-icon{font-size:1.8rem;line-height:1}.emoji-toggle-label{flex:1;text-align:left;font-weight:600;color:#1f2937}.emoji-toggle-caret{font-size:.85rem;color:#475569}.emoji-menu{position:absolute;top:calc(100% + 8px);left:0;z-index:20;width:100%;border:1px solid var(--border-color, #cbd5f5);border-radius:14px;background:var(--background-primary, #fff);padding:.6rem;box-shadow:0 18px 36px #0f172a2e;height:568px;overflow-y:auto;overflow-x:hidden}.emoji-grid{display:grid;grid-template-columns:repeat(4,minmax(56px,1fr));grid-auto-rows:64px;gap:.5rem}.emoji-cell{border:1px solid var(--border-color, #cbd5f5);border-radius:12px;background:var(--background-primary, #fff);height:64px;padding:0;font-size:2.6rem;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .2s ease,background .2s ease,transform .2s ease}.emoji-cell:hover{border-color:#1f2f3f66;transform:translateY(-1px)}.emoji-cell.selected{border-color:var(--primary-color, #1f2f3f);background:#1f2f3f14;box-shadow:0 8px 18px #0f172a1f}.emoji-cell:focus-visible{outline:2px solid rgba(31,47,63,.45);outline-offset:2px}.team-form{display:flex;flex-direction:column;gap:1rem}.team-form textarea{min-height:120px;border:1px solid var(--border-color, #cbd5f5);border-radius:10px;padding:.8rem;font:inherit}.team-form-actions{justify-content:flex-end}.tenant-logo-preview{border:1px solid var(--border-color, #d7dfe8);border-radius:12px;padding:12px;background:#fff;width:min(240px,100%);display:flex;justify-content:center;align-items:center}.tenant-logo-preview img{max-width:100%;max-height:120px;object-fit:contain}.user-cell{display:flex;align-items:center;gap:.75rem}.user-avatar{width:42px;height:42px;border-radius:12px;background:#e2e8f0;display:flex;align-items:center;justify-content:center;font-size:1.2rem}.user-identifiers{display:flex;flex-direction:column;gap:.1rem}.user-identifiers span{font-size:.85rem;color:#64748b}.username-cell{font-weight:600;color:#0f172a;font-size:.9rem}.username-value{display:inline-flex;align-items:center;gap:.25rem}.badge{display:inline-flex;align-items:center;justify-content:center;padding:.2rem .8rem;border-radius:999px;font-size:.7rem;font-weight:700;letter-spacing:.05em}.role-badge{background:#e0e7ff;color:#3730a3}.status-badge.active{background:#dcfce7;color:#15803d}.status-badge.locked{background:#fee2e2;color:#b91c1c}.password-badge.reset{background:#fef3c7;color:#b45309}.password-badge.safe{background:#e0f2fe;color:#0369a1}.directory-empty{padding:2.5rem 1rem;text-align:center;color:#94a3b8}.manager-detail{display:flex;flex-direction:column;gap:1.5rem}.manager-detail-header{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;align-items:flex-start}.detail-meta{display:flex;flex-direction:column;gap:.75rem}.manager-header-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:flex-end}.delete-cell{width:110px}.icon-btn{border:1px solid #e2e8f0;background:#fff;width:40px;height:40px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-size:1rem;cursor:pointer;transition:background .15s ease,border-color .15s ease}.delete-btn{border-color:#fecaca;color:#b91c1c}.delete-btn:hover{background:#fee2e2}.manager-form-section,.manager-invite{border:1px solid var(--border-color, #e2e8f0);border-radius:14px;padding:1.25rem;background:var(--background-primary, #fff)}.manager-form-section header,.manager-invite header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.manager-form-actions{display:flex;gap:.5rem;flex-wrap:wrap}.template-inline-action{display:flex;justify-content:flex-end;margin:.35rem 0 .75rem}.manager-form{display:flex;flex-direction:column;gap:1rem}.manager-form .form-row{display:flex;flex-wrap:wrap;gap:1rem}.manager-form .form-group{flex:1;min-width:200px;display:flex;flex-direction:column;gap:.4rem}.manager-form input,.manager-form select,.manager-invite textarea{border:1px solid var(--border-color, #cbd5f5);border-radius:10px;padding:.6rem .75rem;font:inherit;background:var(--background-primary, #fff)}.file-upload-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.6rem .9rem;border-radius:10px;border:1px solid var(--border-color, #cbd5f5);background:#fff;font-weight:600;cursor:pointer;width:fit-content}.file-upload-btn input[type=file]{display:none}.manager-invite textarea{min-height:320px;resize:vertical}.template-editor{margin-top:1rem;display:flex;flex-direction:column;gap:1rem}.template-editor-header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;flex-wrap:wrap}.template-subtitle{margin:.35rem 0 0;color:#64748b}.template-helper{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;border:1px solid var(--border-color, #e2e8f0);border-radius:12px;padding:.8rem 1rem;background:var(--background-secondary, #f8fafc)}.token-pills{display:flex;flex-wrap:wrap;gap:.5rem}.token-pill{border:1px dashed var(--border-color, #cbd5f5);border-radius:999px;padding:.2rem .85rem;font-size:.8rem;background:transparent;cursor:pointer}.token-pill:hover{border-color:var(--accent-color, #2563eb);color:var(--accent-color, #2563eb)}.template-hint{font-size:.85rem;color:#64748b;margin:0}.chips{display:flex;flex-wrap:wrap;gap:.5rem}.chip{padding:.35rem .75rem;border-radius:999px;border:1px solid var(--border-color, #cbd5f5);background:#94a3b81f;color:#0f172a;cursor:pointer;font-size:.85rem;transition:background-color .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease,border-color .2s ease}.chips.compact{gap:.25rem}.chip.compact{padding:.2rem .5rem;font-size:.76rem;border-width:1px}.chip:hover{transform:translateY(-1px)}.chip.readonly{cursor:default}.chip.readonly:hover{transform:none}.team-chips{gap:.35rem}.chip.active{color:#fff;border-color:transparent}.checkbox{display:flex;align-items:center;gap:.5rem}.info-card{background:#3b82f61a;border:1px solid rgba(59,130,246,.2);border-radius:10px;padding:.75rem}.manager-form .field-hint{display:block;margin-top:.35rem;font-size:.8rem;color:#64748b}.btn-outline{border:1px solid var(--border-color, #cbd5f5);background:transparent;padding:.55rem .95rem;border-radius:8px;cursor:pointer;font-weight:600;font-size:.95rem}.btn-outline.btn-preview{padding:1rem 1.8rem;font-size:1.2rem}.invite-preview-overlay{position:fixed;inset:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;padding:2rem;z-index:1000}.invite-preview-modal{background:#fff;width:min(640px,100%);border-radius:20px;box-shadow:0 30px 80px #0f172a4d;display:flex;flex-direction:column;gap:1.25rem;padding:1.75rem}.invite-preview-header{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.preview-recipient{display:flex;flex-direction:column;gap:.3rem}.preview-recipient span{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8}.preview-recipient strong{font-size:.95rem;color:#0f172a}.invite-preview-body{border:1px solid var(--border-color, #e2e8f0);border-radius:14px;padding:1.25rem;background:#f8fafc;max-height:320px;overflow:auto;line-height:1.55;color:#0f172a}.invite-preview-body p{margin:0 0 .75rem}.invite-preview-actions{display:flex;gap:.75rem;justify-content:flex-end;flex-wrap:wrap}.modal.shift-preset-modal{width:98vw;max-width:98vw;max-height:92vh;display:flex;flex-direction:column}.shift-preset-modal .modal-content{padding:16px;overflow:auto}.shift-preset-status{padding:12px;color:var(--text-secondary)}.shift-preset-error{background:#fff2f2;color:#b91c1c;border:1px solid #fecaca;border-radius:8px;padding:10px 12px;margin-bottom:12px}.shift-preset-note{background:#f8fafc;color:#475569;border:1px solid #e2e8f0;border-radius:8px;padding:10px 12px;margin-bottom:12px;font-size:.85rem;line-height:1.4}.shift-preset-grid{display:flex;flex-direction:column;gap:10px;max-height:64vh;overflow-y:auto;overflow-x:hidden;padding-right:4px}.shift-preset-row{display:grid;grid-template-columns:minmax(90px,.9fr) minmax(160px,2.2fr) minmax(90px,1fr) minmax(90px,1fr) minmax(120px,1.2fr) minmax(70px,.7fr) minmax(70px,.7fr) minmax(90px,1fr);gap:10px;align-items:center;background:#fffaf3;border:1px solid rgba(171,156,133,.35);border-radius:10px;padding:8px 10px}.shift-preset-row--head{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);background:#f3efe3;border:1px solid rgba(171,156,133,.45);position:sticky;top:0;z-index:2}.shift-preset-palette{display:flex;flex-direction:column;gap:6px;padding:6px 8px;border:1px solid rgba(171,156,133,.35);border-radius:10px;background:#f7f3ea}.shift-preset-palette>span{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary)}.shift-preset-palette-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.shift-preset-palette-add{border:1px solid var(--border-color);border-radius:6px;padding:4px 8px;font-size:.7rem;font-weight:600;background:var(--background-primary);cursor:pointer}.shift-preset-color{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.shift-preset-color .color-option,.shift-preset-palette .color-option{width:18px;height:18px;border-radius:50%;border:2px solid transparent;cursor:pointer}.shift-preset-color .color-option.selected{border-color:#1d4ed8}.shift-preset-row input[type=text],.shift-preset-row input[type=time]{border:1px solid var(--border-color);border-radius:8px;padding:8px 10px;font-size:.9rem;background:#fff}.shift-preset-check{display:flex;justify-content:center}.shift-preset-empty{padding:12px;text-align:center;color:var(--text-secondary)}@media(max-width:860px){.shift-preset-row{grid-template-columns:1fr 1fr;gap:6px;padding:10px}.shift-preset-row--head{position:static}}.toast-container{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:9999;display:flex;flex-direction:column;gap:12px;align-items:center}.toast{min-width:396px;background:#fff;border-radius:6px;box-shadow:0 2px 8px #0000001f;padding:50px 54px;border-left:6px solid #2196f3;animation:fadeIn .3s}.toast-info{border-left-color:#2196f3}.toast-success{border-left-color:#4caf50}.toast-warning{border-left-color:#ff9800}.toast-error{border-left-color:#f44336}.toast-header{display:flex;justify-content:space-between;align-items:center;font-weight:700}.toast-close{font-size:1.2em}.toast-body{margin-top:6px;font-size:.98em;text-align:center}.toast-link{background:none;border:none;padding:0;color:#1a73e8;cursor:pointer;font:inherit;text-decoration:underline}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.filters-container{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.filter-input,.filter-select{padding:6px 10px;border-radius:6px;border:1px solid #d0d5dd;background:#fff;min-width:140px;font-size:.95rem}.filter-input:focus,.filter-select:focus{outline:none;border-color:#94a3b8;box-shadow:0 0 0 1px #94a3b833}.time-picker{position:relative;width:100%;display:flex;align-items:stretch;gap:8px}.time-picker-input{flex:1;padding:12px 16px;border:1px solid var(--border-color);border-radius:8px;background:var(--background-primary);color:var(--text-primary);font-size:.9rem;transition:border-color .2s ease,box-shadow .2s ease}.time-picker-input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px #26a69a26}.time-picker-toggle{width:44px;border:1px solid var(--border-color);border-radius:8px;background:var(--background-secondary);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;transition:background .2s ease,color .2s ease,border-color .2s ease}.time-picker-toggle:hover:not(:disabled){background:var(--border-color);color:var(--text-primary)}.time-picker-toggle:disabled{cursor:not-allowed;opacity:.4}.time-picker-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;max-height:220px;overflow-y:auto;background:var(--background-primary);border:1px solid var(--border-color);border-radius:10px;box-shadow:0 24px 60px #0f172a2e;z-index:1200;padding:6px}.time-picker-option{width:100%;border:none;background:transparent;padding:8px 10px;border-radius:8px;font-weight:600;font-size:.9rem;color:var(--text-primary);text-align:left;cursor:pointer;transition:background .2s ease,color .2s ease}.time-picker-option:hover{background:var(--background-secondary)}.time-picker-option.active{background:var(--primary-color);color:#fff}.time-picker.is-disabled{opacity:.6;pointer-events:none}.task-modal{background:#f8fafc;border-radius:18px;box-shadow:0 4px 24px #3c40432e,0 1.5px 4px #3c404326;width:480px;padding:32px 32px 24px;font-family:Google Sans,Arial,sans-serif;color:#222;position:relative}.modal-header h3{font-size:1.25rem;font-weight:600;margin:0 0 8px;color:#222}.form-group{margin-bottom:18px;display:flex;flex-direction:column;gap:6px}.form-group label{font-size:1rem;font-weight:500;color:#444}input[type=text],input[type=date],input[type=number],select,textarea{border:1px solid #d3d3d3;border-radius:8px;padding:8px 12px;font-size:1rem;background:#fff;color:#222;outline:none;transition:border .2s}input[type=text]:focus,input[type=date]:focus,input[type=number]:focus,select:focus,textarea:focus{border:1.5px solid #1967d2}textarea{min-height:60px;resize:vertical}.color-picker{display:flex;gap:8px;margin-top:4px}.color-option{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:border .2s}.color-option.selected{border:2px solid #1967d2;box-shadow:0 0 0 2px #e3eafc}.task-color-picker{display:flex;align-items:center;gap:.75rem}.color-hex{font-size:.85rem;color:#475569}.color-palette{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.75rem}.color-swatch{width:32px;height:32px;border-radius:8px;border:2px solid transparent;cursor:pointer}.color-swatch.active{border-color:#1967d2}.mini-nav-btn{border:1px solid #d5dce8;background:#fff;border-radius:999px;padding:.25rem .85rem;font-size:.75rem;font-weight:600;cursor:pointer;transition:background .2s ease}.mini-nav-btn:hover{background:#f4f6fb}.btn-primary:disabled{background:#b3c6e6;cursor:not-allowed}.btn-primary:hover:not(:disabled){background:#174ea6}.recurrence-dropdown{position:relative;width:220px}.recurrence-dropdown-btn{width:100%;background:#f8fafc;border:1.5px solid #d3d3d3;border-radius:8px 8px 0 0;padding:10px 14px;font-size:1rem;color:#222;text-align:left;cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:border .2s}.recurrence-dropdown-btn:focus{border:1.5px solid #1967d2}.dropdown-arrow{font-size:1.1em;color:#888;margin-left:8px}.recurrence-dropdown-list{position:absolute;top:100%;left:0;width:100%;background:#fff;border:1.5px solid #d3d3d3;border-top:none;border-radius:0 0 12px 12px;box-shadow:0 4px 16px #3c40431f;z-index:10;margin:0;padding:0;list-style:none;max-height:320px;overflow-y:auto}.recurrence-dropdown-list li{padding:12px 16px;font-size:1rem;color:#222;cursor:pointer;transition:background .15s}.recurrence-dropdown-list li.selected,.recurrence-dropdown-list li:hover{background:#f1f3f4}.custom-recurrence-modal{background:#f8fafc;border-radius:18px;box-shadow:0 4px 24px #3c40432e,0 1.5px 4px #3c404326;width:340px;padding:28px 24px 20px;font-family:Google Sans,Arial,sans-serif;color:#222;position:relative}.custom-row{display:flex;align-items:center;gap:8px;font-size:1rem;margin-bottom:6px}.custom-radio-group{display:flex;flex-direction:column;gap:10px;margin-top:8px}.custom-radio-group label{display:flex;align-items:center;font-size:1rem;padding:6px 0;cursor:pointer;gap:8px}.custom-radio-group input[type=radio]{accent-color:#1967d2;width:18px;height:18px;margin-right:8px}.weekday-picker{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.weekday-btn{min-width:40px;padding:6px 10px;border-radius:10px;border:1px solid #cbd5f5;background:#fff;color:#1f2937;font-weight:600;cursor:pointer;transition:all .2s}.weekday-btn.active{background:#1967d2;color:#fff;border-color:#1967d2;box-shadow:0 4px 12px #1967d240}.weekday-btn:focus-visible{outline:2px solid #1967d2;outline-offset:2px}input[type=date]:disabled,input[type=number]:disabled{background:#f1f3f4;color:#aaa}.task-detail-modal{position:relative}.task-detail-modal .modal-header{padding-right:56px}.task-detail-modal .close-btn{position:absolute;top:18px;right:18px;background:none;border:none;font-size:1.4rem;color:var(--text-secondary);cursor:pointer;z-index:2}.task-detail-modal .close-btn:hover{color:var(--text-primary)}.task-detail-modal .btn-secondary:disabled{background:#ffffff14;color:#ffffff73;border-color:#ffffff1f;cursor:not-allowed;filter:saturate(.2)}.recurrence-modal{background:#f8fafc;border-radius:18px;box-shadow:0 4px 24px #3c40432e,0 1.5px 4px #3c404326;width:440px;padding:28px 24px 20px;font-family:Google Sans,Arial,sans-serif;color:#222;position:relative}.modal-header{margin-bottom:18px;text-align:left}.modal-header h3{font-size:1.18rem;font-weight:600;margin:0 0 8px;color:#222}.close-btn{position:absolute;top:18px;right:18px;background:none;border:none;font-size:1.3rem;color:#888;cursor:pointer}.form-group{margin-bottom:18px}.radio-group{display:flex;flex-direction:column;gap:10px;margin-top:8px}.radio-group label{display:flex;align-items:center;font-size:1rem;padding:6px 0;cursor:pointer}.radio-group input[type=radio]{accent-color:#1967d2;width:18px;height:18px;margin-right:12px}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:18px}.btn-primary{background:#1967d2;color:#fff;border:none;border-radius:8px;padding:8px 22px;font-size:1rem;font-weight:500;cursor:pointer;transition:background .2s}.btn-primary:hover{background:#174ea6}.btn-secondary{background:none;color:#1967d2;border:none;border-radius:8px;padding:8px 18px;font-size:1rem;font-weight:500;cursor:pointer;transition:background .2s}.btn-secondary:hover{background:#e3eafc}.modal-overlay{position:fixed;inset:0;background:#3c40432e;z-index:1000;display:flex;align-items:center;justify-content:center}.resize-handle{position:absolute;left:0;right:0;bottom:0;height:8px;cursor:ns-resize;background:transparent}.week-task:hover .resize-handle,.day-task:hover .resize-handle{background:#0000000f}.resize-handle.top{top:0;bottom:auto;height:8px;cursor:ns-resize}.resize-handle.bottom{bottom:0;top:auto}:root{--primary-color: #62705b;--primary-color-hover: #4b5845;--secondary-color: #dfdec2;--accent-color: #c4cbb8;--accent-text: #2f2a24;--success-color: #27ae60;--warning-color: #f39c12;--error-color: #e74c3c;--sidebar-body-color: #d2cbad;--sidebar-body-dark: #c4cbb8;--sidebar-separator-color: #dfdec2;--sidebar-header-cut: 14px;--text-primary: #2f2a24;--text-secondary: #6b6358;--background-primary: #ffffff;--background-secondary: #ecebd7;--border-color: #d2cbad;--shadow: 0 2px 10px rgba(0,0,0,.1);--calendar-divider-width: 1px;--calendar-time-col-width: 90px;--calendar-header-height: 64px;--kpi-up: #16a34a;--kpi-down: #dc2626;--chart-grid: #eef2f7}*{margin:0;padding:0;box-sizing:border-box}html{color-scheme:light;background-color:var(--background-secondary);-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility}body{font-family:Manrope,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background-color:var(--background-secondary);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.taskdown-pro,.app-container{display:flex;height:100vh;overflow:hidden}.loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;background:var(--background-primary)}.loading-spinner{width:40px;height:40px;border:4px solid var(--border-color);border-top:4px solid var(--accent-color);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}.loading-text{color:var(--text-secondary);font-size:16px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.welcome-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--background-secondary);padding:24px}.welcome-card{background:var(--background-primary);border-radius:18px;padding:32px 28px;box-shadow:0 12px 30px #0f172a1f;text-align:center;max-width:420px;width:100%}.welcome-logo{width:min(54vw,180px);height:auto;max-height:180px;object-fit:contain;margin:0 auto 18px}.welcome-quote{font-size:1.05rem;color:var(--text-primary);line-height:1.5}@media(max-width:600px){.welcome-card{padding:28px 22px}.welcome-logo{width:min(64vw,220px);max-height:220px;margin-bottom:14px}}.runtime-error-overlay{position:fixed;inset:0;background:#0f172ab3;display:flex;align-items:center;justify-content:center;padding:20px;z-index:2000}.runtime-error-card{background:#fff;color:#111827;border-radius:14px;padding:20px;width:min(720px,100%);max-height:90vh;overflow:auto;box-shadow:0 20px 50px #0f172a40}.runtime-error-card h2{margin-bottom:10px}.runtime-error-card pre{background:#f3f4f6;padding:12px;border-radius:10px;white-space:pre-wrap;word-break:break-word;margin:12px 0 16px}.landing-page{min-height:100vh;background:radial-gradient(circle at top,#fbf9f2,#f1eee0 45%,#e7e1cf);color:#1f2933;font-family:Manrope,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.landing-nav{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:18px 32px;background:#fbf9f2eb;border-bottom:1px solid rgba(31,41,51,.08);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.landing-nav-logo{border:none;background:transparent;padding:0;cursor:pointer}.landing-nav-logo img{height:42px;width:auto;display:block}.landing-nav-links{display:flex;gap:18px;font-size:.95rem}.landing-nav-links a{color:#1f2933;text-decoration:none;opacity:.8;transition:opacity .2s ease}.landing-nav-links a:hover{opacity:1}.landing-nav-links a.active{opacity:1;font-weight:600}.login-alert{display:flex;flex-direction:column;gap:6px;padding:12px 14px;border-radius:12px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;font-size:.9rem}.login-alert strong{font-weight:700}.turni-view{display:flex;flex-direction:column;gap:6px;height:auto;padding:14px 18px 16px;background:var(--background-secondary);overflow:visible}.turni-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.turni-header-left{display:flex;align-items:center;gap:6px;flex:1}.turni-title-row{display:flex;flex-direction:column;align-items:center;gap:2px;flex:1}.turni-eyebrow{font-family:Manrope,sans-serif;text-transform:uppercase;letter-spacing:.18em;font-size:.65rem;color:var(--text-secondary)}.turni-title{font-family:Fraunces,serif;font-size:2.2rem;color:var(--text-primary);margin:0;text-align:center}.turni-nav{display:inline-flex;gap:6px}.turni-nav-btn{border:1px solid var(--border-color);background:var(--background-primary);border-radius:8px;padding:4px 10px;font-size:.78rem;cursor:pointer}.turni-nav-btn:disabled{opacity:.5;cursor:not-allowed}.turni-hero-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;flex:1}.turni-status-chip{border:1px solid var(--border-color);border-radius:999px;padding:2px 8px;font-size:.65rem;font-weight:600;color:var(--text-secondary);background:#f7f3ea;text-transform:uppercase;letter-spacing:.12em}.turni-print-title{display:none;text-align:center;font-size:2rem;font-weight:700;color:var(--text-primary);padding:6px 0 8px}.turni-btn{border:1px solid var(--border-color);border-radius:8px;padding:6px 10px;font-weight:600;font-size:.78rem;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;background:var(--background-primary);color:var(--text-primary)}.turni-btn:hover{transform:translateY(-1px)}.turni-lower{margin-top:10px;display:grid;grid-template-columns:minmax(220px,280px) 1fr;gap:12px;max-height:none;overflow:visible;padding-right:0}.turni-lower-right,.turni-report{display:grid;gap:12px}.turni-report-card{background:#f7f3ea;border:1px solid var(--border-color);border-radius:10px;padding:10px 12px}.turni-report-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:.85rem;color:var(--text-secondary)}.turni-report-table{width:100%;border-collapse:collapse;font-size:.7rem;table-layout:fixed}.turni-report-col--user{width:180px}.turni-report-col--total{width:60px}.turni-report-table th,.turni-report-table td{border-bottom:1px solid rgba(171,156,133,.35);padding:3px 5px;text-align:center;vertical-align:middle}.turni-report-table th:first-child,.turni-report-table td:first-child{text-align:left}.turni-report-total{font-weight:700;background:#fff9}.turni-summary-card{background:#f7f3ea;border:1px solid var(--border-color);border-radius:10px;padding:8px 10px;box-shadow:none;display:flex;flex-direction:column;gap:4px}.turni-shift-table{width:100%;border-collapse:collapse;font-size:.72rem}.turni-shift-table th,.turni-shift-table td{border-bottom:1px solid rgba(171,156,133,.35);padding:4px 6px;text-align:left}.turni-shift-table td:first-child{width:90px}.turni-shift-table th:last-child,.turni-shift-table td:last-child{text-align:left}.turni-summary-label{font-size:.8rem;text-transform:uppercase;letter-spacing:.14em;color:var(--text-secondary)}.turni-summary-note{font-size:.85rem;color:var(--text-secondary)}.turni-legend{display:flex;flex-wrap:wrap;gap:6px}.turni-legend-pill{border-radius:6px;padding:2px 6px;font-weight:600;font-size:.7rem;border:1px solid transparent}.turni-grid-card{flex:1;min-height:0;background:var(--secondary-color);border-radius:8px;border:1px solid var(--border-color);box-shadow:none;padding:4px;overflow:visible}.turni-week-shift{display:flex;justify-content:space-between;align-items:center;padding:2px 6px 4px}.turni-week-btn{border:1px solid var(--border-color);background:var(--background-primary);border-radius:8px;padding:4px 10px;font-size:.72rem;font-weight:600;cursor:pointer}.turni-week-btn:disabled{opacity:.5;cursor:not-allowed}.turni-grid-scroll{width:100%;height:auto;overflow:visible}.turni-grid-scroll--print{overflow:auto;height:100%}.turni-view[data-mobile=true] .turni-grid-scroll{position:relative;overflow:auto;height:100%;max-height:none;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;overscroll-behavior:contain}.turni-view[data-mobile-print=true]{height:calc(100dvh - 120px);max-height:calc(100dvh - 120px);padding:8px 8px 12px}.turni-view[data-mobile-print=true] .turni-header,.turni-view[data-mobile-print=true] .turni-week-shift,.turni-view[data-mobile-print=true] .turni-hero-actions,.turni-view[data-mobile-print=true] .turni-nav{display:none}.turni-view[data-mobile-print=true] .turni-grid-cell--corner,.turni-view[data-mobile-print=true] .turni-grid-cell--weekno,.turni-view[data-mobile-print=true] .turni-grid-cell--weekday,.turni-view[data-mobile-print=true] .turni-grid-cell--date,.turni-view[data-mobile-print=true] .turni-grid-cell--name,.turni-view[data-mobile-print=true] .turni-group-row{position:static!important;top:auto!important;left:auto!important;z-index:auto!important}.turni-view[data-mobile-print=true] .turni-print-title{display:block}.turni-view[data-mobile-print=true] .turni-grid-scroll{overflow:auto;height:100%;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;overscroll-behavior:contain}.turni-view[data-mobile-print=true] .turni-grid-card{flex:1;min-height:0}.turni-view[data-mobile-print=true] .turni-grid--print{transform:scale(var(--turni-preview-scale, 2));transform-origin:top left;width:max-content;pointer-events:none}@media(max-width:900px)and (orientation:landscape){.turni-view[data-mobile-print=true] .turni-grid--print{transform:scale(var(--turni-preview-scale-landscape, 2.5))}}.turni-mobile-close{position:fixed;top:12px;right:12px;z-index:20;border:1px solid var(--border-color);border-radius:999px;padding:6px 12px;background:#fffaf3;color:var(--text-primary);font-weight:600;box-shadow:0 6px 16px #0f172a33}.turni-date-static{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.turni-view[data-mobile=true]{height:calc(100dvh - 120px);max-height:calc(100dvh - 120px);padding:8px 8px 12px}.turni-view[data-mobile=true] .turni-grid-card{flex:1;min-height:0}.turni-view[data-mobile=true] .turni-grid-cell--corner,.turni-view[data-mobile=true] .turni-grid-cell--weekno,.turni-view[data-mobile=true] .turni-grid-cell--weekday,.turni-view[data-mobile=true] .turni-grid-cell--date,.turni-view[data-mobile=true] .turni-grid-cell--name,.turni-view[data-mobile=true] .turni-group-row{position:static}.turni-view[data-mobile=true] .turni-nav,.turni-view[data-mobile=true] .turni-hero-actions,.turni-view[data-mobile=true] .turni-week-shift,.turni-view[data-mobile=true] .turni-week-toggle,.turni-view[data-mobile=true] .turni-team-toggle,.turni-view[data-mobile=true] .turni-order-controls,.turni-view[data-mobile=true] .turni-visibility-toggle,.turni-view[data-mobile=true] .turni-cell-select,.turni-view[data-mobile=true] .turni-date-button{display:none}.turni-team-label{font-weight:600;font-size:.85rem;color:#fffaf3}.turni-view[data-mobile=true] .turni-lower{grid-template-columns:1fr}.turni-grid{display:grid;gap:0;min-width:1100px;padding:0;--turni-header-row: 28px;grid-auto-rows:minmax(28px,auto)}.turni-grid-cell{background:var(--background-primary);border-radius:0;border:1px solid rgba(171,156,133,.45);padding:2px 4px;display:flex;flex-direction:column;justify-content:center;gap:2px;min-height:28px;position:relative}.turni-grid-cell--corner{position:sticky;left:0;top:0;z-index:5;background:var(--primary-color);color:#fffaf3}.turni-grid-corner{display:flex;flex-direction:column;gap:2px;font-weight:600}.turni-grid-corner small{font-weight:400;opacity:.7}.turni-grid-cell--weekno{position:sticky;top:0;z-index:6;background:var(--primary-color);color:#fffaf3;font-weight:700;justify-content:center;align-items:center;font-size:.7rem}.turni-weekno-value{line-height:1}.turni-week-toggle{margin-top:2px;border:1px solid rgba(255,255,255,.4);background:transparent;color:#fffaf3;border-radius:999px;padding:0 6px;font-size:.6rem;line-height:1.4;cursor:pointer}.turni-week-toggle[data-visible=true]{background:#ffffff38;border-color:#ffffffb3}.turni-grid-cell--corner.turni-grid-cell--weekno,.turni-grid-cell--corner.turni-grid-cell--weekday,.turni-grid-cell--corner.turni-grid-cell--date{background:var(--primary-color);color:#fffaf3;justify-content:center;align-items:flex-start}.turni-grid-cell--weekday{position:sticky;top:var(--turni-header-row);z-index:5;background:#f3efe3;text-transform:uppercase;letter-spacing:.12em;font-size:.62rem}.turni-grid-cell--date{position:sticky;top:calc(var(--turni-header-row) * 2);z-index:4;background:var(--background-primary)}.turni-grid-weekday{font-size:.62rem;text-transform:uppercase;letter-spacing:.14em;color:var(--text-secondary)}.turni-grid-date{font-size:.78rem;color:var(--text-primary)}.turni-grid-month{font-size:.62rem;color:var(--text-secondary)}.turni-date-button{border:none;background:transparent;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:4px;border-radius:999px;padding:0 6px}.turni-day-indicator{width:6px;height:6px;border-radius:50%;background:#1d4ed8;display:inline-block}.turni-date-button:hover{background:#6366f126}.turni-day-picker{position:absolute;z-index:10;top:100%;left:6px;margin-top:4px;background:#fffaf3;border:1px solid rgba(171,156,133,.4);border-radius:10px;padding:8px;display:flex;flex-direction:column;gap:6px;min-width:180px;box-shadow:0 12px 30px #0f172a26}.turni-day-picker-row{display:flex;flex-wrap:wrap;gap:6px}.turni-day-picker-custom{display:flex;align-items:center;gap:8px}.turni-day-picker-add{border:1px solid var(--border-color);border-radius:6px;padding:4px 8px;font-size:.7rem;font-weight:600;background:var(--background-primary);cursor:pointer}.turni-day-picker .color-option{width:18px;height:18px;border-radius:50%;border:2px solid transparent}.turni-day-picker .color-option.selected{border-color:#1d4ed8}.turni-day-picker .color-option.is-clear{background:transparent;border-color:#94a3b8b3;color:#475569;font-size:.75rem;display:inline-flex;align-items:center;justify-content:center}.turni-grid-cell--name{position:sticky;left:0;z-index:3;background:var(--primary-color);color:#fffaf3;font-weight:600;cursor:grab}.turni-grid-cell--name:active{cursor:grabbing}.turni-grid-name{font-size:.76rem;letter-spacing:.03em}.turni-grid-cell--slot{background:#fff;transition:box-shadow .2s ease,border-color .2s ease;position:relative;min-height:34px}.turni-grid-cell--slot:hover{background:#f8fafc}.turni-grid-cell--slot.is-outside,.turni-grid-cell--date.is-outside{opacity:.55}.turni-grid-cell--date[data-weekend=true]{background:#f6f1e4}.turni-grid-cell--date[data-holiday=true]{background:#fbecec}.turni-grid-cell--slot[data-weekend=true][data-shift=EMPTY]{background:#f6f1e4}.turni-grid-cell--slot[data-holiday=true][data-shift=EMPTY]{background:#fbecec}.turni-week-hidden{background:#ece7db!important;color:#7a6d57}.turni-week-mask{position:absolute;inset:0;background:#ece7db;z-index:2;pointer-events:none}.turni-group-row{background:var(--primary-color);color:#fffaf3;border-radius:0;padding:2px 6px;display:flex;align-items:center;justify-content:space-between;gap:8px;font-weight:600;font-size:.66rem;border:1px solid rgba(171,156,133,.4)}.turni-team-select{background:transparent;border:0;color:inherit;font-size:.66rem;font-weight:600;cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none}.turni-team-select option{color:#0f172a;background:#fff}.turni-team-toggle{border:1px solid rgba(255,255,255,.35);background:transparent;color:#fffaf3;border-radius:999px;padding:0 8px;line-height:1.4;font-size:.62rem;font-weight:600;cursor:pointer}.turni-grid-name-row{display:flex;align-items:center;justify-content:space-between;gap:6px}.turni-name-left{display:inline-flex;align-items:center;gap:6px}.turni-visibility-toggle{border:1px solid rgba(255,255,255,.35);background:transparent;color:#fffaf3;border-radius:999px;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex:0 0 auto}.turni-visibility-toggle svg{width:14px;height:14px;fill:currentColor}.turni-visibility-toggle[data-visible=true]{background:#fff3}.turni-user-hidden{opacity:.75}.turni-grid-name-row[data-dragging=true]{opacity:.7}.turni-order-controls{display:flex;flex-direction:column;gap:2px}.turni-order-controls button{border:1px solid rgba(255,255,255,.4);background:transparent;color:#fffaf3;border-radius:4px;padding:0 4px;line-height:1.2;font-size:.6rem;cursor:pointer}.turni-group-count{font-size:.68rem;opacity:.75}.turni-grid-cell--slot:focus-within{border-color:#ab9c85b3;box-shadow:0 0 0 3px #c1b79840}.turni-cell-select{width:100%;height:100%;border:none;border-radius:0;padding:0;font-size:.68rem;font-weight:600;background:transparent;color:var(--text-primary);text-align:center;appearance:none;-webkit-appearance:none;-moz-appearance:none;opacity:0;position:absolute;inset:0}.turni-cell-value{font-size:.68rem;font-weight:600;color:var(--text-primary);text-align:center;line-height:1.1;white-space:pre-line;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.turni-cell-select:focus{outline:none;box-shadow:none}.turni-report-table .turni-legend-pill{margin:0 auto;display:inline-flex;align-items:center;justify-content:center;min-width:34px}.turni-report-table .turni-legend-pill.is-time{font-size:.64rem;padding:2px 4px}.turni-cell-custom{width:100%;border-radius:4px;border:1px solid rgba(171,156,133,.35);padding:2px 4px;font-size:.65rem;background:#fff}.turni-grid-cell--name[data-team=indigo],.turni-group-row[data-team=indigo]{background:linear-gradient(135deg,#1e293b,#1e1b4b)}.turni-grid-cell--name[data-team=emerald],.turni-group-row[data-team=emerald]{background:linear-gradient(135deg,#064e3b,#0f172a)}.turni-grid-cell--slot[data-team=indigo]{border-left:3px solid #6366f1}.turni-grid-cell--slot[data-team=emerald]{border-left:3px solid #34d399}.turni-grid-cell--slot[data-shift=OFF],.turni-legend-pill[data-shift=OFF]{background:#f1f5f9;border-color:#cbd5f5;color:#1f2937}.turni-grid-cell--slot[data-shift=FER],.turni-legend-pill[data-shift=FER]{background:#ecfdf3;border-color:#86efac;color:#166534}.turni-grid-cell--slot[data-shift=MAL],.turni-legend-pill[data-shift=MAL]{background:#fef2f2;border-color:#fca5a5;color:#991b1b}.turni-grid-cell--slot[data-shift=C],.turni-legend-pill[data-shift=C]{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.turni-grid-cell--slot[data-shift=A],.turni-legend-pill[data-shift=A]{background:#fff7ed;border-color:#fed7aa;color:#c2410c}.turni-grid-cell--slot[data-shift=MID],.turni-legend-pill[data-shift=MID]{background:#ecfeff;border-color:#a5f3fc;color:#0e7490}.turni-grid-cell--slot[data-shift=N],.turni-legend-pill[data-shift=N]{background:#e0e7ff;border-color:#c7d2fe;color:#4338ca}.turni-grid-cell--slot[data-shift=RD],.turni-legend-pill[data-shift=RD]{background:#fef9c3;border-color:#fde047;color:#854d0e}.turni-grid-cell--slot[data-shift=REC],.turni-legend-pill[data-shift=REC]{background:#ecfdf5;border-color:#6ee7b7;color:#047857}.turni-grid-cell--slot[data-shift=EVN],.turni-legend-pill[data-shift=EVN]{background:#ffe4e6;border-color:#fda4af;color:#be123c}@media print{body *{visibility:hidden}.turni-grid-card,.turni-grid-card *{visibility:visible;-webkit-print-color-adjust:exact;print-color-adjust:exact}.turni-grid-card{border:none;overflow:visible;width:100%;margin:0;position:absolute;left:0;top:0;--turni-print-border: #000000}.turni-loading-banner,.turni-error-banner{margin:10px 0 12px;padding:10px 12px;border-radius:10px;font-size:.9rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}.turni-loading-banner{display:none}.turni-error-banner{background:#fff2f2;color:#b91c1c;border:1px solid #fecaca}.turni-grid-scroll{overflow:visible;height:auto}.turni-week-shift,.turni-cell-select{display:none!important}.turni-grid{min-width:0;width:100%}.turni-grid{background:#fff}.turni-grid-cell{border:1px solid var(--turni-print-border)!important;box-shadow:inset 0 0 0 .5px var(--turni-print-border);background-clip:padding-box;-webkit-print-color-adjust:exact;print-color-adjust:exact}.turni-view[data-print-mode=collaborator] .turni-grid-cell[data-week-hidden=true],.turni-view[data-print-mode=collaborator] .turni-grid-cell[data-user-hidden=true]{background:#fff!important}.turni-view[data-print-mode=collaborator] .turni-grid-cell[data-week-hidden=true] *,.turni-view[data-print-mode=collaborator] .turni-grid-cell[data-user-hidden=true] .turni-cell-value,.turni-view[data-print-mode=collaborator] .turni-grid-cell[data-user-hidden=true] .turni-grid-name{visibility:hidden}.turni-group-row[data-team-collapsed=true]{display:none!important}.turni-group-row,.turni-grid-cell--name{border:1px solid var(--turni-print-border)!important;box-shadow:inset 0 0 0 .5px var(--turni-print-border)}.turni-grid-cell--weekno,.turni-grid-cell--corner{-webkit-print-color-adjust:exact;print-color-adjust:exact}.turni-grid-cell--weekno,.turni-grid-cell--weekday,.turni-grid-cell--date,.turni-grid-cell--slot{border:1px solid var(--turni-print-border)!important;box-shadow:inset 0 0 0 .5px var(--turni-print-border)}.turni-week-toggle{display:none}.turni-week-mask{display:none!important}.turni-print-title{display:block}}.turni-grid-cell--slot[data-shift=TIME],.turni-legend-pill[data-shift=TIME]{background:#f5f3ff;border-color:#ddd6fe;color:#5b21b6}@media(max-width:900px){.turni-view{padding:12px 12px 14px}.turni-header{flex-direction:column;align-items:flex-start}.turni-lower{grid-template-columns:1fr;max-height:none}.turni-grid{min-width:980px}}.landing-hero{position:relative;min-height:calc(100vh - 84px);display:flex;align-items:center;justify-content:center;padding:24px}.landing-hero[data-video-ended=true]{min-height:auto;padding-top:12px;padding-bottom:8px}.landing-video-stage,.landing-login-stage{width:min(1180px,95vw);margin:0 auto}.landing-video-frame{width:100%;aspect-ratio:16 / 9;background:#fff;border-radius:24px;overflow:hidden;position:relative;box-shadow:0 30px 70px #0f172a52;display:flex;align-items:center;justify-content:center}.landing-hero-video{width:100%;height:100%;object-fit:contain;background:#fff}.landing-intro-card{background:#e2e8f0f2;border-radius:18px;padding:36px 44px;text-align:center;color:#1f2933;max-width:640px;box-shadow:0 20px 45px #0f172a33}.landing-intro-card-hero{width:100%;height:100%;max-width:none;display:flex;flex-direction:column;justify-content:center}.landing-intro-card p{text-transform:uppercase;letter-spacing:.25em;font-size:.7rem;color:#64748b}.landing-intro-logo{width:312px;height:auto;margin-bottom:3px;object-fit:contain}.landing-intro-card h2{font-family:Fraunces,Manrope,serif;margin:5px 0;font-size:1.6rem}.landing-intro-card span{color:#475569;font-size:.95rem}.landing-intro-card-inline{margin:0 auto}.landing-video-actions{margin-top:16px;display:flex;justify-content:center}.landing-login-stage .landing-wrapper-embedded{padding:0}.landing-login-footer{padding:30px 20px 12px;display:flex;flex-direction:column;align-items:center;gap:36px}.landing-video-cta{margin:24px auto 16px;display:flex;flex-direction:column;align-items:center;gap:12px;max-width:720px}.landing-video-copy{text-align:center;color:#475569;font-size:.95rem;line-height:1.5}.landing-embedded-video{max-width:960px;margin:0 auto;opacity:0;max-height:0;overflow:hidden;transition:opacity .4s ease,max-height .4s ease}.landing-embedded-video.is-visible{opacity:1;max-height:620px}.landing-wrapper-embedded{padding:0}.landing-card-embedded{background:#fff}.landing-section{padding:56px 24px;max-width:960px;margin:0 auto}.landing-section h2{font-family:Fraunces,Manrope,serif;font-size:1.8rem;margin-bottom:12px}.landing-section p{color:#475569;max-width:760px}.landing-page-content{padding:48px 24px 80px}.landing-page-card{max-width:920px;margin:0 auto;background:#fff;border-radius:24px;padding:48px;box-shadow:0 30px 60px #0f172a1f}.landing-page-card h1{font-family:Fraunces,Manrope,serif;margin-bottom:16px;font-size:2.2rem}.landing-page-card p{color:#475569}.landing-home-btn{margin-top:20px}.landing-contact-form{margin-top:24px;display:flex;flex-direction:column;gap:16px}.landing-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.landing-form-group{display:flex;flex-direction:column;gap:6px}.landing-form-group input,.landing-form-group textarea{border:1px solid rgba(15,23,42,.12);border-radius:10px;padding:10px 12px;font-size:.95rem;font-family:inherit}.landing-form-status{font-size:.9rem}.landing-form-status.success{color:#15803d}.landing-form-status.error{color:#b91c1c}.settings-input-locked{cursor:pointer;background:#f8fafc}.settings-contact-btn{margin-top:12px}.contact-modal-overlay{position:fixed;inset:0;background:#0f172a99;display:flex;align-items:center;justify-content:center;padding:20px;z-index:1200}.contact-modal{background:#fff;border-radius:16px;padding:20px;width:min(640px,95vw);box-shadow:0 20px 60px #0f172a33}.contact-modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.landing-video-card{margin-top:18px}.landing-login-footer .landing-video-card{margin-top:0}.landing-video-card-hero{width:min(1180px,95vw);margin-left:auto;margin-right:auto}.landing-page-video{width:100%;aspect-ratio:16 / 9;border-radius:18px;background:#fff}.landing-footer{padding:32px 24px 48px;text-align:center;color:#64748b;font-size:.9rem;border-top:1px solid rgba(31,41,51,.08)}@media(max-width:900px){.landing-nav{flex-direction:column;gap:12px}.landing-nav-links{flex-wrap:wrap;justify-content:center}.landing-hero{padding-top:12px}.landing-hero-overlay{padding:64px 20px}}.sidebar{width:300px;background:var(--primary-color);color:#fff;transition:width .3s ease;display:flex;flex-direction:column;overflow-y:auto;border-right:1px solid var(--border-color);flex:0 0 auto}.sidebar.collapsed{width:60px}.sidebar-collapsed-footer{margin-top:auto;padding:12px;display:flex;align-items:center;justify-content:flex-start}.sidebar-header{padding:25px 20px;display:flex;align-items:center;position:relative;justify-content:center;text-align:center;background:linear-gradient(to bottom,var(--primary-color) 0,var(--primary-color) calc(100% - var(--sidebar-header-cut)),var(--sidebar-body-color) calc(100% - var(--sidebar-header-cut)))}.sidebar-header:after{content:"";position:absolute;left:0;right:0;bottom:var(--sidebar-header-cut);height:1px;background:var(--sidebar-separator-color)}.app-brand{display:flex;flex-direction:column;gap:4px;width:100%;align-items:center;transform:translateY(-6px)}.app-brand-logo-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center}.app-brand-logo{width:100%;height:auto;display:block;margin:0 auto;transform:scale(1.155) translateY(5px);transform-origin:center}.collapse-btn-small{font-size:.43rem;padding:3px 5px}.app-edition-row{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;transform:none}.app-edition-spacer{visibility:hidden;font-size:0;line-height:1;height:20px}.nordelaia-edition-text{font-size:.65rem;font-weight:700;letter-spacing:.06em;color:#ffffffb3;transform:translate(-24px,-11px)}.app-edition-logo{width:min(188px,100%);height:auto;display:block;margin:0 auto;transform:scale(.85) translateY(-20px);transform-origin:center}.sidebar-content{padding-top:10px;padding-bottom:10px;background:var(--sidebar-separator-color);display:flex;flex-direction:column;flex:0 0 auto}.sidebar-body{padding-top:0;background:var(--sidebar-body-dark);flex:0 0 auto}.tenant-logo-slot{width:min(200px,calc(100% - 40px));height:auto;max-height:160px;background:transparent;border-radius:0;margin:30px auto 16px;padding:0;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:6px;box-sizing:border-box}.tenant-logo-image{width:100%;height:auto;max-width:100%;max-height:160px;display:block;object-fit:contain}.tenant-logo-edition{font-size:.72rem;font-weight:700;letter-spacing:.2em;color:#2f2a24b3;text-transform:uppercase;align-self:flex-end}.sidebar-footer{padding:12px;background:var(--primary-color);border-top:1px solid var(--sidebar-separator-color);display:flex;align-items:flex-end;justify-content:flex-start;flex:1 1 auto}.sidebar-actions-stack{padding:8px 12px;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.sidebar-collapse-btn{display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;width:auto;height:30px;padding:0 12px;line-height:30px;border-radius:8px;border:1px solid rgba(255,255,255,.25);background:#ffffff1f;color:#fff;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .2s ease,border-color .2s ease}.sidebar-collapse-btn:hover{background:#ffffff2e;border-color:#ffffff59}.sidebar-collapse-icon{font-size:1.1rem;line-height:1}.app-brand h2{color:var(--secondary-color);font-size:1.5rem;margin-bottom:4px}.app-version{position:absolute;right:35px;top:calc(55% + 6px);transform:translate(16px,calc(-50% + 14px));font-size:.7875rem;color:#ffffffb3;font-weight:600;letter-spacing:.02em}.dev-badge{display:inline-block;margin-left:8px;padding:2px 6px;border-radius:8px;font-size:.7rem;font-weight:700;background:#22c55e;color:#083b17;vertical-align:middle}.collapse-btn{background:#ffffff1a;border:none;color:#fff;font-size:1.2rem;cursor:pointer;padding:8px 12px;border-radius:6px;transition:background .2s}.collapse-btn:hover{background:#fff3}.collapse-btn.collapse-btn-small{font-size:.72rem;padding:5px 7px;border-radius:4px;margin-left:-6px}.collapse-btn-spacer{display:inline-block;width:28px;height:24px;margin-left:-6px}.user-profile{padding:20px;display:flex;align-items:center;border-bottom:1px solid rgba(255,255,255,.1);background:var(--sidebar-body-dark)}.user-avatar{width:50px;height:50px;border-radius:50%;background:var(--secondary-color);display:flex;align-items:center;justify-content:center;font-size:1.5rem;margin-right:15px;color:var(--primary-color)}.user-name{font-weight:600;font-size:1.1rem}.user-role{font-size:.9rem;color:#ffffffb3;text-transform:capitalize}.mini-calendar{padding:16px 20px 10px;border-bottom:1px solid var(--sidebar-separator-color);background:var(--sidebar-body-dark)}.mini-calendar-header{margin-bottom:15px}.mini-calendar .nav-btn{background:var(--sidebar-separator-color);color:var(--text-primary);border-radius:999px;width:32px;height:32px;padding:0;display:inline-flex;align-items:center;justify-content:center}.mini-calendar-title{font-weight:600;color:var(--text-primary);text-align:center}.mini-calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:8px}.mini-calendar-weekday{text-align:center;font-size:.8rem;color:var(--text-secondary);padding:4px}.mini-calendar-days{display:flex;flex-direction:column;gap:2px}.mini-calendar-week{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.mini-calendar-day{text-align:center;padding:8px 4px;border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .2s;position:relative}.mini-calendar-day.current-month{color:var(--text-primary)}.mini-calendar-day.other-month{color:#2f2a2473}.mini-calendar-day.today{background:var(--secondary-color);color:var(--primary-color);font-weight:700}.mini-calendar-day.has-tasks:after{content:"";position:absolute;bottom:2px;left:50%;transform:translate(-50%);width:4px;height:4px;background:var(--secondary-color);border-radius:50%}.mini-calendar-day:hover{background:#2f2a2414}.quick-stats{padding:20px;border-bottom:1px solid rgba(255,255,255,.1)}.quick-stats h3{margin-bottom:15px;color:var(--secondary-color);font-size:1rem}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stat-item{background:#ffffff1a;padding:12px;border-radius:6px;text-align:center}.stat-value{font-size:1.5rem;font-weight:700;color:var(--secondary-color);margin-bottom:4px}.stat-label{font-size:.8rem;color:#ffffffb3}.category-filters{padding:20px;border-bottom:1px solid rgba(255,255,255,.1)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.section-header h3{color:var(--secondary-color);font-size:1rem}.icon-btn{background:#ffffff1a;border:none;color:#fff;cursor:pointer;padding:6px 10px;border-radius:4px;font-size:.9rem;transition:background .2s}.icon-btn:hover{background:#fff3}.icon-btn.small{padding:4px 8px;font-size:.8rem}.categories-list{display:flex;flex-direction:column;gap:8px}.category-item{display:flex;align-items:center;padding:10px;border-radius:6px;cursor:pointer;transition:background .2s;gap:10px}.category-item:hover{background:#ffffff1a}.category-color{width:12px;height:12px;border-radius:50%;flex-shrink:0}.category-icon{font-size:1rem;flex-shrink:0}.category-name{flex:1;font-size:.9rem}.category-count{background:#fff3;padding:2px 6px;border-radius:10px;font-size:.8rem}.pwd-row{display:flex;align-items:center;gap:.75rem}.pwd-row input[type=password],.pwd-row input[type=text]{flex:1}.toggle-switch{position:relative;display:inline-flex;align-items:center;width:44px;height:24px;cursor:pointer}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;inset:0;background:#d1d5db;border-radius:999px;transition:background .2s ease}.toggle-slider:before{content:"";position:absolute;height:18px;width:18px;left:3px;top:3px;background:#fff;border-radius:50%;box-shadow:0 2px 4px #0000001f;transition:transform .2s ease}.toggle-switch input:checked+.toggle-slider{background:var(--accent-color)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px)}.toggle-hint{font-size:.85rem;color:var(--text-secondary);margin-top:.5rem}.mobile-shell{flex-direction:column;height:100vh;overflow:hidden;background:var(--background-secondary);--calendar-time-col-width: 64px;--calendar-header-height: 56px;--mobile-header-height: 64px}.mobile-main{display:flex;flex-direction:column;height:100%;overflow:hidden}.mobile-content{flex:1;overflow:auto;padding:8px 12px 16px}.mobile-header{position:sticky;top:0;z-index:30;background:var(--background-primary);border-bottom:1px solid var(--border-color);box-shadow:0 6px 18px #0f172a14}.mobile-header-main{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px}.mobile-header-actions{display:flex;align-items:center;gap:6px}.mobile-icon-btn{border:1px solid var(--border-color);background:#fff;color:var(--text-primary);border-radius:10px;padding:8px 10px;font-size:.95rem;cursor:pointer;box-shadow:0 1px 4px #0f172a14}.mobile-today-icon{width:22px;height:22px;display:block}.mobile-icon-btn:active{transform:translateY(1px)}.mobile-month-btn{border:none;background:transparent;display:flex;align-items:center;gap:8px;font-size:1rem;font-weight:600;color:var(--text-primary);cursor:pointer}.mobile-month-label{display:inline-block;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center}.mobile-month-label.is-week{white-space:pre-line;line-height:1.1;font-size:.82rem;max-width:160px}.mobile-month-caret{font-size:.8rem;opacity:.7}.mobile-month-strip{display:flex;gap:8px;overflow-x:auto;padding:10px 12px 14px;border-top:1px solid var(--border-color);background:var(--background-primary);scrollbar-width:none}.mobile-month-strip::-webkit-scrollbar{display:none}.mobile-month-chip{border:1px solid var(--border-color);background:#fff;color:var(--text-primary);border-radius:999px;padding:6px 14px;font-size:.85rem;cursor:pointer;white-space:nowrap}.mobile-month-chip.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.mobile-mini-calendar{padding:10px 12px 12px;background:var(--background-primary);border-top:1px solid var(--border-color)}.mobile-mini-weekdays{display:grid;grid-template-columns:repeat(7,1fr);font-size:.7rem;color:var(--text-secondary);text-align:center;margin-bottom:6px}.mobile-mini-days{display:flex;flex-direction:column;gap:6px;transform:translateY(-11px)}.mobile-mini-week{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.mobile-mini-day{border:1px solid transparent;background:var(--background-secondary);border-radius:10px;padding:6px 0;font-size:.75rem;color:var(--text-primary);cursor:pointer}.mobile-mini-day.other-month{opacity:.35}.mobile-mini-day.is-selected{background:var(--primary-color);color:#fff}.mobile-mini-day.is-today{border-color:var(--accent-color)}.mobile-overlay{position:fixed;inset:0;background:#0f172a66;display:flex;justify-content:center;align-items:flex-end;z-index:50}.mobile-shell .mobile-overlay{inset:var(--mobile-header-height) 0 0 0;z-index:25}.email-change-banner{display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 16px;background:#fff7ed;border-bottom:1px solid #fed7aa;color:#9a3412;font-size:.95rem}.email-change-banner__text{display:flex;flex-direction:column;gap:4px}.email-change-banner__btn{white-space:nowrap}.email-change-banner strong{font-weight:700}.mobile-overlay-fullscreen{align-items:stretch}.mobile-sheet{background:var(--background-primary);width:min(520px,96%);margin:0 0 16px;padding:16px;border-radius:18px;box-shadow:0 18px 40px #0f172a33}.mobile-sheet-fullscreen{width:100%;height:100%;margin:0;border-radius:0;padding:18px;display:flex;flex-direction:column}.mobile-panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.mobile-panel-header h4{font-size:1.05rem;font-weight:600;color:var(--text-primary)}.mobile-panel-body{flex:1;overflow:auto}.mobile-menu-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0 18px}.mobile-menu-brand{display:flex;flex-direction:column;align-items:center;gap:30px;margin-bottom:42px}.mobile-menu-brand-logo{width:min(260px,80%);height:auto;object-fit:contain}.mobile-menu-tenant-slot{display:flex;flex-direction:column;align-items:center;gap:4px}.mobile-menu-tenant-link{display:inline-flex;align-items:center;justify-content:center}.mobile-menu-tenant-image{width:min(160px,60vw);max-height:52px;object-fit:contain}.mobile-menu-tenant-edition{font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;color:#94a3b8}.mobile-menu-filters{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.mobile-menu-filters h4{font-size:.95rem;font-weight:600;color:var(--text-primary)}.mobile-menu-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.mobile-menu-footer .mobile-logout-btn{border-color:#dc2626!important;color:#fff!important;background:#dc2626!important}.mobile-fab{position:fixed;right:18px;bottom:18px;width:56px;height:56px;border-radius:50%;border:none;background:var(--accent-color);color:var(--accent-text);font-size:2rem;line-height:1;display:flex;align-items:center;justify-content:center;box-shadow:0 12px 24px #0f172a40;z-index:35}.mobile-fab:active{transform:translateY(1px)}.mobile-menu-footer .mobile-logout-btn:hover{background:#b91c1c!important}.mobile-search-panel .filters-bar{display:flex;flex-direction:column;gap:12px}.mobile-chat-panel .chat-panel{width:100%;height:100%;border-left:none;border-radius:0;box-shadow:none}.mobile-chat-panel .chat-messages{flex:1}.turni-date-button:hover{background:#6366f126;transition:none}.mobile-shell .week-header,.mobile-shell .week-all-day-row,.mobile-shell .week-grid-body{grid-template-columns:var(--calendar-time-col-width) repeat(7,1fr)!important;width:100%;min-width:0}.mobile-shell .three-day-view .week-header,.mobile-shell .three-day-view .week-all-day-row,.mobile-shell .three-day-view .week-grid-body{grid-template-columns:var(--calendar-time-col-width) repeat(3,1fr)!important}.mobile-shell .day-header,.mobile-shell .day-grid-body,.mobile-shell .day-all-day,.mobile-shell .day-view .day-timeline .day-hour-row{grid-template-columns:var(--calendar-time-col-width) 1fr!important}.mobile-shell .time-column,.mobile-shell .time-scale{width:var(--calendar-time-col-width);min-width:var(--calendar-time-col-width)}.mobile-shell .week-day-column,.mobile-shell .day-column{padding:0}.mobile-shell .calendar-view,.mobile-shell .week-view{overflow-x:hidden}.mobile-shell .week-day-header{flex-direction:column;gap:4px;padding:6px 0;height:auto}.mobile-shell .week-day-title{flex-direction:column;gap:2px}.mobile-shell .week-day-number{margin-left:0}.mobile-shell .week-day-name{font-size:.78rem}.mobile-shell .week-day-number{width:22px;height:22px;font-size:.75rem}@media(max-width:960px){.calendar-container{border-radius:16px}}.deleted-actions{display:flex;gap:10px;flex-wrap:wrap}.deleted-action-btn{padding:.35rem .7rem;min-height:34px;width:150px}.sidebar-history-card{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border-radius:10px;border:1px solid var(--sidebar-separator-color);background:#f1eee6;color:var(--text-primary);box-shadow:0 4px 12px #0000002e}.sidebar-history-label{font-weight:600;letter-spacing:0;font-size:.9rem;color:var(--text-primary)}.sidebar-history-actions{display:flex;gap:6px}.sidebar-history-btn{width:35px;height:29px;border-radius:8px;border:1px solid #6f6254;background:#8f806d;color:#fff;font-size:.9rem;font-weight:700;cursor:pointer;transition:background .2s,transform .2s}.sidebar-history-btn:hover:not(:disabled){background:#9b8c78;transform:translateY(-1px)}.sidebar-history-btn:disabled{background:#cbbfa8;border-color:#a99d89;color:#fffc;cursor:not-allowed}.sidebar-actions{margin-top:auto;padding:16px 20px;border-top:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:10px}.action-btn{width:100%;display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:8px;background:#ffffff1f;color:#fff;border:1px solid rgba(255,255,255,.18);cursor:pointer;transition:all .2s;font-weight:600}.action-btn:hover{background:#ffffff2e;transform:translateY(-1px)}.action-btn .action-icon{font-size:1.1rem}.action-btn.logout-btn{border-left:4px solid var(--error-color)}.action-btn.settings-btn{border-left:4px solid var(--accent-color)}.main-container,.main-wrapper{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.main-header{display:flex;flex-direction:column;gap:10px;padding:12px 24px;background:var(--background-primary);border-bottom:1px solid var(--border-color);box-shadow:var(--shadow);position:sticky;top:0;z-index:5;--header-control-height: 48px;--header-compact-height: calc(var(--header-control-height) * .85);--header-view-size: 78px;--header-period-width: clamp(220px, 29vw, 374px)}.header-main{display:flex;align-items:center;gap:18px;flex-wrap:wrap;justify-content:flex-start}.header-section{display:flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;width:100%}.view-controls{display:flex;gap:10px;flex-wrap:wrap}.view-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid var(--border-color);background:var(--background-primary);border-radius:8px;cursor:pointer;transition:all .2s;font-size:.9rem}.view-btn.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.view-btn:hover{background:var(--background-secondary)}.view-btn.active:hover{background:var(--primary-color)}.view-icon{font-size:1.1rem}.header-section.period{flex-wrap:wrap;justify-content:center;padding:0}.period-group{display:flex;align-items:center;gap:8px;font-weight:600;color:var(--text-primary);flex-wrap:wrap}.period-pill{padding:0 14px;border-radius:999px;background:var(--background-secondary);border:1px solid var(--border-color);font-size:.9rem;height:var(--header-compact-height);display:flex;align-items:center;justify-content:center}.nav-controls{display:flex;align-items:center;gap:8px}.nav-btn{padding:8px 12px;border:1px solid var(--border-color);background:var(--background-primary);border-radius:6px;cursor:pointer;font-size:1.1rem;transition:background .2s}.nav-btn:hover{background:var(--background-secondary)}.today-btn{padding:8px 16px;border:1px solid var(--border-color);background:var(--background-primary);border-radius:6px;cursor:pointer;font-weight:500;transition:background .2s}.today-btn:hover{background:var(--background-secondary)}.header-section.search{min-width:220px}.header-section.filters{gap:10px;flex-wrap:wrap}.header-section.actions{gap:12px}.calendar-filter-select{padding:6px 10px;border:1px solid var(--border-color);border-radius:6px;background:var(--background-primary);color:var(--text-primary);font-size:.85rem;min-width:140px;max-width:180px;height:38px}.calendar-filter-select:disabled{opacity:.6;cursor:not-allowed}.search-bar{position:relative;flex:1}.search-bar input{padding:10px 16px 10px 40px;border:1px solid var(--border-color);border-radius:20px;background:var(--background-primary);color:var(--text-primary);font-size:.9rem;width:100%;transition:border-color .2s}.search-bar input:focus{outline:none;border-color:var(--accent-color)}.search-bar:before{content:"🔍";position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:1rem;color:var(--text-secondary)}.search-results-panel{position:absolute;top:calc(100% + 8px);left:0;right:0;background:var(--background-primary);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 16px 32px #0f172a1f;padding:6px;z-index:20;max-height:320px;overflow:auto}.search-result-item{width:100%;text-align:left;border:none;background:transparent;padding:10px 12px;border-radius:10px;cursor:pointer;display:flex;flex-direction:column;gap:4px}.search-result-item:hover,.search-result-item:focus{background:var(--background-secondary);outline:none}.search-result-title{font-weight:600;color:var(--text-primary);font-size:.95rem}.search-result-meta{color:var(--text-secondary);font-size:.8rem}.search-results-empty{padding:10px 12px;color:var(--text-secondary);font-size:.9rem}.notification-btn{position:relative;padding:10px;border:none;background:none;cursor:pointer;font-size:1.2rem;border-radius:6px;transition:background .2s}.notification-btn:hover{background:var(--background-secondary)}.notification-badge{position:absolute;top:-2px;right:-2px;background:var(--error-color);color:#fff;border-radius:50%;width:18px;height:18px;font-size:.7rem;display:flex;align-items:center;justify-content:center}.primary-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;background:var(--primary-color);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:background .2s}.primary-btn:hover{background:var(--primary-color-hover)}.main-header .header-grid{display:grid;grid-template-columns:minmax(360px,1.25fr) minmax(187px,.77fr) minmax(272px,.89fr) minmax(162px,.64fr);grid-template-rows:repeat(2,minmax(var(--header-control-height),auto));column-gap:18px;row-gap:6px;align-items:stretch;width:100%;justify-items:stretch}.main-header .header-col{display:flex;align-items:center;justify-content:center;width:100%;min-height:var(--header-control-height)}.main-header .header-col-views{grid-column:1;grid-row:1 / span 2;min-width:340px;justify-content:center}.main-header .header-view-controls{display:flex;gap:12px;flex-wrap:nowrap;justify-content:center;width:100%;overflow-x:auto;padding-bottom:4px}.main-header .header-view-controls::-webkit-scrollbar{height:4px}.main-header .header-view-controls::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:999px}.main-header .header-view-controls[data-active-route]:not([data-active-route=calendar]) .header-view-btn.active[data-route=calendar]{background:var(--background-primary);color:var(--text-primary);border-color:var(--border-color)}.main-header .header-view-btn{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;flex:0 0 var(--header-view-size);width:var(--header-view-size);height:var(--header-view-size);padding:10px 8px;border-radius:16px;gap:6px;font-size:.82rem;line-height:1.1;text-align:center;white-space:normal}.main-header .header-view-icon{font-size:1.35rem;line-height:1}.main-header .header-view-label{font-weight:600}.main-header .header-col-period{grid-column:2;grid-row:1;flex-direction:column;align-items:center;gap:8px;min-width:220px}.main-header .header-period-group{width:100%;max-width:var(--header-period-width);display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:0 auto}.main-header .header-period-group .period-pill{min-width:94px;text-align:center}.main-header .header-col-nav{grid-column:2;grid-row:2;justify-content:center}.main-header .header-nav-controls{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;max-width:var(--header-period-width);margin:0 auto}.main-header .header-nav-controls.placeholder{visibility:hidden}.main-header .header-nav-btn,.main-header .header-today-btn{height:var(--header-compact-height);border-radius:999px;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.9rem}.main-header .header-nav-controls .header-nav-btn:first-child,.main-header .header-nav-controls .header-nav-btn:last-child{flex:0 0 48px;padding:0;font-size:1.1rem}.main-header .header-nav-controls .header-today-btn{flex:0 0 auto;min-width:98px;max-width:163px;padding:0 16px}.main-header .header-col-search{grid-column:3;grid-row:1;justify-content:center}.main-header .header-search-bar{width:100%;max-width:clamp(238px,35vw,544px)}.main-header .header-search-bar input{height:var(--header-compact-height);border-radius:999px}.main-header .header-col-filters{grid-column:3;grid-row:2;flex-direction:row;align-items:center;justify-content:center;gap:14px;flex-wrap:nowrap}.main-header .header-filters-row{width:100%;display:flex;gap:12px}.main-header .header-filter-select{flex:1 1 0;min-width:128px;max-width:220px;height:var(--header-compact-height);border-radius:12px;padding:0 32px 0 14px;border:1px solid var(--border-color);background:var(--background-primary);color:var(--text-primary);font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.main-header .header-filter-select:disabled{opacity:.6;cursor:not-allowed}.main-header .header-col-notifications{grid-column:4;grid-row:1;min-width:128px;justify-content:center}.main-header .header-col-actions{grid-column:4;grid-row:2;min-width:128px;justify-content:center}@media(min-width:1201px){.main-header .header-grid.header-grid--no-filters{grid-template-columns:minmax(360px,1.25fr) minmax(187px,.77fr) minmax(162px,.64fr)}.main-header .header-grid.header-grid--no-filters .header-col-notifications,.main-header .header-grid.header-grid--no-filters .header-col-actions{grid-column:3}}.main-header .header-square-btn{width:100%;max-width:128px;height:var(--header-compact-height);border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.95rem;gap:6px}.main-header .header-notify-btn{border:1px solid var(--border-color);background:var(--background-primary);position:relative;transition:background .2s,border-color .2s}.main-header .header-notify-btn:hover{background:var(--background-secondary)}.main-header .header-primary-btn{background:var(--primary-color);color:#fff;border:none;transition:background .2s}.main-header .header-primary-btn:hover{background:#1f2f3f}.main-header .header-primary-btn:disabled{opacity:.5;cursor:not-allowed}.main-content{flex:1;padding:24px;overflow-y:auto;background:var(--background-secondary)}.calendar-view{background:var(--background-primary);border-radius:12px;box-shadow:var(--shadow);overflow:hidden}.calendar-grid-header{background:var(--background-primary);border-bottom:var(--calendar-divider-width) solid var(--border-color)}.calendar-grid-header-cell{min-height:var(--calendar-header-height);padding:0 16px;display:flex;align-items:center;justify-content:center;font-weight:600;color:var(--text-primary);border-right:var(--calendar-divider-width) solid var(--border-color)}.calendar-grid-header-cell:last-child{border-right:none}.day-header-main{justify-content:space-between;text-align:left;gap:12px}.day-header-main h2{margin:0;font-size:1.05rem;font-weight:600;text-transform:capitalize}.month-view .calendar-header{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-header-day{text-align:center}.calendar-header-day{font-size:.95rem}.month-view{display:flex;flex-direction:column}.calendar-body{display:flex;flex-direction:column;flex:1;min-height:0}.calendar-week{display:grid;grid-template-columns:repeat(7,1fr);flex:1;min-height:0;border-bottom:var(--calendar-divider-width) solid var(--border-color)}.calendar-week:last-child{border-bottom:none}.calendar-day{padding:8px;border-right:var(--calendar-divider-width) solid var(--border-color);background:var(--background-primary);transition:background .2s;cursor:pointer;display:flex;flex-direction:column;height:100%;overflow:hidden;min-height:0}.calendar-day:last-child{border-right:none}.calendar-day.other-month{background:var(--background-secondary);color:var(--text-secondary)}.calendar-day.today{background:linear-gradient(180deg,#fae8b5a6,#fae8b52e);border-left:none;box-shadow:none}.calendar-day:hover{background:var(--background-secondary)}.calendar-day .day-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;flex-shrink:0}.calendar-day .day-number{font-weight:600;font-size:1rem}.calendar-day.today .day-number{background:var(--accent-color);color:var(--accent-text);padding:3px 10px;border-radius:999px;box-shadow:0 6px 14px #1f2f3f33}.calendar-day .day-task-count{background:var(--accent-color);color:var(--accent-text);padding:2px 6px;border-radius:10px;font-size:.7rem;font-weight:600}.day-tasks{flex:1;display:flex;flex-direction:column;gap:4px;overflow:hidden}.task-preview{padding:4px 6px;background:var(--background-primary);border-left:3px solid #ccc;border-radius:4px;cursor:pointer;transition:all .2s;font-size:.7rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:0 0 auto}.task-preview:hover{transform:translate(2px);box-shadow:0 2px 4px #0000001a}.calendar-day:has(.task-preview:nth-child(3)) .task-preview{font-size:.65rem;padding:3px 5px}.calendar-day .task-preview:nth-child(n+4){display:none}.task-preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.task-preview-title{font-weight:500;flex:1;overflow:hidden;text-overflow:ellipsis}.priority-indicator{background:var(--error-color);color:#fff;width:14px;height:14px;border-radius:50%;font-size:.55rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.task-preview-time{font-size:.55rem;color:var(--text-secondary)}.more-tasks-indicator{font-size:.6rem;color:var(--text-secondary);text-align:center;padding:2px 4px;background:var(--background-secondary);border-radius:4px;cursor:pointer;flex-shrink:0}.more-tasks-indicator:hover{background:var(--border-color)}.week-view{--calendar-divider-width: 1px;background:var(--background-secondary);border-radius:12px;box-shadow:var(--shadow);overflow:hidden;display:flex;flex-direction:column;min-height:clamp(520px,70vh,900px);position:relative}.week-header{display:grid;grid-template-columns:var(--calendar-time-col-width) repeat(7,1fr);flex-shrink:0;background:var(--background-primary);border-bottom:var(--calendar-divider-width) solid var(--border-color);border-radius:12px 12px 0 0;min-height:var(--calendar-header-height)}.time-column{padding:16px;border-right:var(--calendar-divider-width) solid var(--border-color);background:var(--background-secondary)}.week-day-header{text-align:center;cursor:pointer;transition:background .2s;min-height:var(--calendar-header-height);display:flex;flex-direction:row;align-items:center;justify-content:center;font-weight:600;color:var(--text-primary);font-size:.95rem;border-right:var(--calendar-divider-width) solid var(--border-color);background:var(--background-primary);gap:0;position:relative;height:var(--calendar-header-height)}.week-day-header:last-child{border-right:none}.week-day-header:hover{background:var(--background-secondary)}.week-day-name{font-weight:600;color:var(--text-primary);text-transform:capitalize;font-size:.95rem}.week-day-number{font-size:.9rem;font-weight:700;color:var(--text-primary);margin-left:6px;width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px}.week-day-number.today{color:var(--accent-text);background:var(--accent-color)}.week-body{display:flex;flex:1}.time-slots{width:var(--calendar-time-col-width);border-right:var(--calendar-divider-width) solid var(--border-color)}.time-slot{height:60px;padding:8px;font-size:.8rem;color:var(--text-secondary);display:flex;align-items:flex-start;justify-content:flex-end}.week-content{display:grid;grid-template-columns:repeat(7,1fr);flex:1}.week-hour-slot{height:60px;padding:2px;position:relative}.week-task{padding:6px 8px;background:var(--background-primary);border-left:4px solid #ccc;border-radius:6px;cursor:pointer;font-size:.8rem;margin-bottom:2px;transition:all .2s}.week-task:hover{transform:translate(2px);box-shadow:0 2px 4px #0000001a}.week-task-title{font-weight:500;margin-bottom:2px}.week-task-time{font-size:.7rem;color:var(--text-secondary)}.day-view{--calendar-divider-width: 1px;background:var(--background-secondary);border-radius:12px;box-shadow:var(--shadow);overflow:hidden;display:flex;flex-direction:column;min-height:clamp(520px,70vh,900px);position:relative}.day-view .day-header{padding:0;background:var(--background-primary);flex-shrink:0;border-bottom:var(--calendar-divider-width) solid var(--border-color);border-radius:12px 12px 0 0}.day-header-time{background:var(--background-secondary)}.calendar-day .day-header h2{color:var(--text-primary);margin-bottom:8px;font-size:1.05rem;font-weight:600;text-transform:capitalize}.day-stats{color:var(--text-secondary);font-size:.9rem}.day-timeline{display:flex;flex-direction:column;flex:1}.day-hour-row{display:flex;min-height:80px}.hour-label{width:var(--calendar-time-col-width);min-width:var(--calendar-time-col-width);padding:12px;border-right:var(--calendar-divider-width) solid var(--border-color);font-weight:600;color:var(--text-primary);display:flex;align-items:flex-start;justify-content:flex-end;background:var(--background-secondary)}.hour-content{flex:1;padding:12px;background:var(--background-primary);position:relative}.day-task{padding:12px;background:var(--background-primary);border-left:4px solid #ccc;border-radius:6px;cursor:pointer;margin-bottom:8px;transition:all .2s;box-shadow:0 1px 3px #0000001a}.day-task:hover{transform:translate(4px);box-shadow:0 3px 8px #00000026}.day-task-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:6px}.day-task-title{font-weight:600;font-size:1rem;flex:1}.day-task-time{font-size:.8rem;color:var(--text-secondary);background:var(--background-secondary);padding:2px 6px;border-radius:4px;flex-shrink:0;margin-left:10px}.day-task-description{font-size:.9rem;color:var(--text-secondary);margin-bottom:6px;line-height:1.4}.day-task-assignee{font-size:.8rem;color:var(--text-secondary);background:var(--background-secondary);padding:2px 8px;border-radius:12px;display:inline-block}.list-view{background:var(--background-primary);border-radius:12px;box-shadow:var(--shadow);overflow:hidden}.list-header{padding:20px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.list-header h2{color:var(--text-primary)}.list-filters{display:flex;gap:12px}.filter-select{padding:8px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--background-primary);color:var(--text-primary);font-size:.9rem}.tasks-list{max-height:600px;overflow-y:auto}.list-task-item{display:flex;align-items:flex-start;padding:16px 20px;border-bottom:1px solid var(--border-color);cursor:pointer;transition:background .2s;gap:16px}.list-task-item:hover{background:var(--background-secondary)}.list-task-item:last-child{border-bottom:none}.list-task-checkbox{padding-top:2px}.list-task-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer}.list-task-content{flex:1}.list-task-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:6px}.list-task-title{font-weight:600;font-size:1rem;flex:1}.list-task-title.completed{text-decoration:line-through;color:var(--text-secondary)}.list-task-meta{display:flex;align-items:center;gap:8px;flex-shrink:0;margin-left:12px}.priority-badge{padding:2px 6px;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase}.priority-badge.high{background:#fee2e2;color:#dc2626}.priority-badge.medium{background:#fef3c7;color:#d97706}.task-date{font-size:.8rem;color:var(--text-secondary)}.list-task-description{font-size:.9rem;color:var(--text-secondary);margin-bottom:8px;line-height:1.4}.list-task-footer{display:flex;gap:12px;font-size:.8rem}.task-category,.task-assignee{background:var(--background-secondary);padding:2px 8px;border-radius:12px;color:var(--text-secondary)}.list-task-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s}.list-task-item:hover .list-task-actions{opacity:1}.empty-state,.empty-chat,.empty-notifications{text-align:center;padding:40px 20px;color:var(--text-secondary)}.empty-icon{font-size:3rem;margin-bottom:16px;opacity:.5}.empty-state h3,.empty-chat h3,.empty-notifications h3{margin-bottom:8px;color:var(--text-secondary)}.chat-panel{width:320px;background:var(--sidebar-body-color);border-left:1px solid var(--sidebar-separator-color);display:flex;flex-direction:column;box-shadow:-2px 0 10px #0000001a;transition:width .3s ease;flex:0 0 auto}.chat-panel.collapsed{width:60px}.chat-header{padding:20px;border-bottom:1px solid var(--sidebar-separator-color);display:flex;justify-content:space-between;align-items:center;background:var(--primary-color);color:#fff;gap:12px}.chat-header.expanded{flex-direction:column;align-items:stretch}.chat-header h3{color:#fff;margin:0}.chat-header .icon-btn{background:#ffffff26;color:#fff;border:1px solid rgba(255,255,255,.25)}.chat-header .icon-btn:hover{background:#ffffff40}.chat-header .icon-btn.small{padding:4px 8px;font-size:.85rem;min-width:auto}.chat-header .chat-collapse-btn{height:30px;padding:0 12px;line-height:30px;font-size:.85rem}.chat-panel.collapsed .chat-collapse-btn{padding:8px 12px;border:none;border-radius:6px;background:#ffffff1a;font-size:1.2rem}.chat-panel.collapsed .chat-collapse-btn-text{display:none}.chat-panel.collapsed .chat-collapse-btn .sidebar-collapse-icon{font-size:1.2rem}.chat-header .stats-filter{background:#fff;color:var(--text-primary)}.chat-header-top{display:flex;align-items:center;justify-content:space-between;width:100%;gap:12px}.chat-header-title{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.chat-header-title h3{white-space:nowrap}.chat-header-actions{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.chat-reset-btn{padding:6px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.4);background:#ffffff26;color:#fff;font-size:.75rem;font-weight:600;cursor:pointer;transition:background .2s ease,border-color .2s ease;white-space:nowrap}.chat-reset-btn:hover{background:#ffffff40;border-color:#ffffffa6}.chat-header-controls{display:flex;align-items:center;gap:8px;width:100%}.chat-filter-select{flex:1;min-width:0;padding:6px 10px;border:1px solid rgba(255,255,255,.35);border-radius:6px;background:#fff;color:var(--text-primary);font-size:.85rem}.chat-filter-select:disabled{opacity:.6}.online-indicator{display:flex;align-items:center;gap:6px;font-size:.8rem;color:#fffc}.dot{width:8px;height:8px;background:var(--success-color);border-radius:50%}.chat-messages{flex:1;padding:20px;overflow-y:auto;display:flex;flex-direction:column;gap:16px;background:var(--sidebar-body-color)}.message{max-width:85%;padding:12px 16px;border-radius:12px;position:relative}.own-message{align-self:flex-end;background:var(--secondary-color);color:var(--primary-color);border-bottom-right-radius:4px}.other-message{align-self:flex-start;background:var(--background-secondary);color:var(--text-primary);border-bottom-left-radius:4px}.message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.message-sender{font-weight:600;font-size:.9rem}.message-time{font-size:.7rem;opacity:.7}.message-content{font-size:.9rem;line-height:1.4}.chat-input-container{padding:20px;border-top:1px solid var(--sidebar-separator-color);display:flex;gap:12px;background:var(--sidebar-body-color)}.chat-input{flex:1;padding:12px 16px;border:1px solid var(--border-color);border-radius:24px;background:var(--background-primary);color:var(--text-primary);font-size:.9rem;outline:none;transition:border-color .2s}.chat-input:focus{border-color:var(--accent-color)}.send-btn{padding:12px 20px;background:var(--primary-color);color:#fff;border:none;border-radius:24px;cursor:pointer;font-weight:600;transition:background .2s;min-width:80px}.send-btn:hover:not(:disabled){background:var(--primary-color-hover)}.send-btn:disabled{background:var(--text-secondary);cursor:not-allowed}.chat-panel.collapsed .chat-messages,.chat-panel.collapsed .chat-input-container,.chat-panel.collapsed .online-indicator,.chat-panel.collapsed .chat-header h3{display:none}.chat-panel.collapsed .chat-header{justify-content:center;padding:12px}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal{background:var(--background-primary);border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow:hidden;box-shadow:0 20px 60px #0000004d;animation:modalSlideIn .3s ease}.task-modal{background:#eef2f5;border-radius:18px;max-width:860px;max-height:70vh}.task-modal{display:flex;flex-direction:column}.task-modal .modal-content{flex:1;overflow:auto;min-height:0}.task-modal .modal-header,.task-modal .modal-content,.task-modal .modal-actions{padding-left:28px;padding-right:28px}.task-modal .modal-header{border-bottom:1px solid var(--border-color)}.task-modal .modal-actions{border-top:1px solid var(--border-color)}.recurrence-modal{max-width:360px}.recurrence-modal .modal-header,.recurrence-modal .modal-content,.recurrence-modal .modal-actions{padding:16px}.recurrence-modal .modal-header h3{font-size:1rem}.recurrence-modal .radio-group{display:flex;flex-direction:column;gap:6px}.recurrence-modal .radio-group label{display:flex;align-items:center;gap:8px;font-weight:500}.recurrence-modal .radio-group input[type=radio]{margin:0}.recurrence-modal .modal-actions .btn-primary,.recurrence-modal .modal-actions .btn-secondary{min-width:88px;padding:8px 14px;border-radius:6px}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid var(--border-color)}.modal-header h3{color:var(--text-primary);font-size:1.3rem}.close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-secondary);padding:8px;min-width:36px;min-height:36px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;transition:color .2s,background .2s,box-shadow .2s}.close-btn:hover{background:#0f172a14}.close-btn:focus{outline:none;box-shadow:0 0 0 2px #3b82f640}.close-btn:hover{color:var(--text-primary)}.modal-content{padding:24px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:6px;font-weight:600;color:var(--text-primary);font-size:.9rem}.form-group input,.form-group textarea,.form-group select{width:100%;padding:12px 16px;border:1px solid var(--border-color);border-radius:8px;background:var(--background-primary);color:var(--text-primary);font-size:.9rem;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--accent-color)}.form-group textarea{resize:vertical;min-height:80px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.icon-picker,.avatar-picker{display:flex;flex-wrap:wrap;gap:8px}.icon-option,.avatar-option{padding:12px;border:1px solid var(--border-color);background:var(--background-primary);border-radius:8px;cursor:pointer;font-size:1.2rem;transition:all .2s}.icon-option.selected,.avatar-option.selected{border-color:var(--accent-color);background:var(--accent-color);color:var(--accent-text)}.icon-option:hover,.avatar-option:hover{border-color:var(--accent-color)}.color-picker{display:flex;flex-wrap:wrap;gap:8px}.color-option{width:32px;height:32px;border:1px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .2s}.color-option.selected{border-color:var(--text-primary);transform:scale(1.1)}.color-option:hover{transform:scale(1.05)}.members-selector{display:flex;flex-direction:column;gap:8px}.member-checkbox{display:flex;align-items:center;gap:8px;padding:8px;border-radius:6px;cursor:pointer;transition:background .2s}.member-checkbox:hover{background:var(--background-secondary)}.member-checkbox input[type=checkbox]{width:16px;height:16px}.modal-actions{padding:24px;border-top:1px solid var(--border-color);display:flex;gap:12px;justify-content:flex-end}.btn-primary,.btn-secondary,.btn-success,.btn-warning,.btn-danger{padding:12px 24px;border:none;border-radius:8px;cursor:pointer;font-weight:600;font-size:.9rem;transition:all .2s;min-width:100px}.btn-primary{background:var(--primary-color);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-color-hover)}.btn-secondary{background:var(--background-secondary);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--border-color)}.btn-success{background:var(--success-color);color:#fff}.btn-success:hover{background:#219653}.btn-warning{background:var(--warning-color);color:#fff}.btn-warning:hover{background:#e67e22}.btn-danger{background:var(--error-color);color:#fff}.btn-danger:hover{background:#c0392b}.btn-primary:disabled{background:var(--text-secondary);cursor:not-allowed}.btn-link{background:transparent;border:none;color:var(--primary-color);cursor:pointer;font-weight:600;padding:0}.btn-link:hover{text-decoration:underline}.btn-muted{opacity:.55;filter:grayscale(.15)}.task-detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.task-detail-header h4{color:var(--text-primary);font-size:1.5rem;flex:1;margin-right:16px}.status-badge{padding:6px 12px;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:uppercase}.status-badge.completed{background:#d1fae5;color:#065f46}.status-badge.pending{background:#fef3c7;color:#92400e}.task-detail-grid{display:grid;gap:20px}.detail-item label{font-weight:600;color:var(--text-secondary);font-size:.9rem;margin-bottom:6px;display:block}.detail-item p{color:var(--text-primary);line-height:1.5}.category-display,.assignee-display{display:flex;align-items:center;gap:8px}.priority-display{padding:4px 8px;border-radius:4px;font-size:.8rem;font-weight:600;text-transform:uppercase}.priority-display.high{background:#fee2e2;color:#dc2626}.priority-display.medium{background:#fef3c7;color:#d97706}.priority-display.low{background:#d1fae5;color:#065f46}.notifications-panel{position:fixed;top:0;right:0;bottom:0;width:400px;background:var(--background-primary);border-left:1px solid var(--border-color);box-shadow:-2px 0 20px #0003;z-index:999;display:flex;flex-direction:column;animation:slideInRight .3s ease}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.notifications-header{padding:20px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;background:var(--primary-color);color:#fff}.notifications-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:flex-end}.notification-mark-read{background:#ffffff26;border:1px solid rgba(255,255,255,.4);color:#fff;padding:8px 22px;border-radius:999px;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .2s ease,border-color .2s ease;white-space:nowrap;flex-shrink:0}.notification-mark-read:hover{background:#ffffff40;border-color:#fff9}.notification-mark-read:disabled{opacity:.4;cursor:not-allowed;background:#ffffff14;border-color:#fff3}.notification-close-btn{background:#0000001a;border:1px solid rgba(255,255,255,.4);color:#fff;padding:8px 18px;border-radius:999px;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .2s ease,border-color .2s ease}.notification-close-btn:hover{background:#0003;border-color:#fff9}.notification-close-btn:focus{outline:none;box-shadow:0 0 0 2px #fff6}.notifications-header h3{color:#fff}.notifications-list{flex:1;overflow-y:auto;padding:20px}.notification-item{display:flex;gap:12px;padding:16px;border-radius:8px;margin-bottom:12px;cursor:pointer;transition:background .2s;border-left:4px solid transparent}.notification-item.unread{background:var(--background-secondary);border-left-color:var(--accent-color)}.notification-item.read{background:var(--background-primary);border:1px solid var(--border-color)}.notification-item:hover{background:var(--background-secondary)}.notification-item.success{border-left-color:var(--success-color)}.notifications-title{display:flex;align-items:center;gap:10px}.notification-badge{background:#f59e0b;color:#111827;font-size:.75rem;font-weight:700;padding:4px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:.3px}.notification-item.error{border-left-color:var(--error-color)}.notification-item.warning{border-left-color:var(--warning-color)}.notification-item.info{border-left-color:var(--accent-color)}.notification-icon{font-size:1.2rem;flex-shrink:0;margin-top:2px}.notification-content{flex:1}.notification-title{font-weight:600;margin-bottom:4px;color:var(--text-primary)}.notification-tag{margin-left:8px;padding:2px 8px;border-radius:999px;font-size:.7rem;font-weight:700;text-transform:uppercase;background:#fef3c7;color:#92400e}.notification-message{font-size:.9rem;color:var(--text-secondary);margin-bottom:4px;line-height:1.4}.notification-time{font-size:.8rem;color:var(--text-secondary)}.stats-page{display:flex;flex-direction:column;gap:20px}.stats-header{background:var(--background-primary);border-radius:12px;box-shadow:var(--shadow);padding:16px 20px;display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.stats-title{font-size:1.4rem;font-weight:700;color:var(--text-primary)}.stats-filters{display:flex;gap:10px;flex-wrap:wrap}.stats-filter{padding:8px 12px;border:1px solid var(--border-color);border-radius:8px;background:var(--background-primary);color:var(--text-primary);font-size:.9rem}.stats-range{display:flex;gap:8px;align-items:center}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.kpi-card{background:var(--background-primary);border-radius:12px;box-shadow:var(--shadow);padding:16px 18px;display:flex;flex-direction:column;gap:6px;min-height:110px}.kpi-label{color:var(--text-secondary);font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.kpi-value{font-size:1.8rem;font-weight:800;color:var(--text-primary);line-height:1.1}.kpi-delta{font-size:.85rem;font-weight:600}.kpi-delta.up{color:var(--kpi-up)}.kpi-delta.down{color:var(--kpi-down)}.kpi-sparkline{height:36px;background:linear-gradient(to bottom,#fff,#fafafa);border-radius:8px;border:1px dashed var(--chart-grid)}.charts-grid{display:grid;grid-template-columns:2fr 1fr;gap:16px}.chart-card,.segment-card,.table-card,.heatmap-card,.cohort-card{background:var(--background-primary);border-radius:12px;box-shadow:var(--shadow);padding:16px 18px;display:flex;flex-direction:column;gap:12px}.chart-title,.segment-title,.table-title,.heatmap-title,.cohort-title{font-weight:700;color:var(--text-primary)}.chart-area{height:280px;border:1px solid var(--chart-grid);border-radius:10px;background:linear-gradient(#fff,#fcfcfd)}.segment-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.segment-list{display:flex;flex-direction:column;gap:8px}.segment-item{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border:1px solid var(--border-color);border-radius:10px}.segment-item .label{color:var(--text-primary);font-weight:600}.segment-item .value{color:var(--text-secondary)}.table-card .table{width:100%;border-collapse:collapse;border:1px solid var(--border-color);border-radius:10px;overflow:hidden}.table th,.table td{padding:10px 12px;border-bottom:1px solid var(--border-color);text-align:left;font-size:.9rem}.table thead th{background:var(--background-secondary);color:var(--text-primary);font-weight:700}.table tbody tr:hover{background:#fafbfc}.heatmap{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;padding:6px;border:1px solid var(--border-color);border-radius:10px}.heatmap-cell{aspect-ratio:1 / 1;border-radius:6px;background:#eef6f6;position:relative;overflow:hidden}.heatmap-cell.lv1{background:#e0f2f1}.heatmap-cell.lv2{background:#b2dfdb}.heatmap-cell.lv3{background:#80cbc4}.heatmap-cell.lv4{background:#4db6ac}.heatmap-cell.lv5{background:#26a69a}.cohort-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.cohort-table{width:100%;border-collapse:collapse;border:1px solid var(--border-color);border-radius:10px;overflow:hidden}.cohort-table th,.cohort-table td{padding:10px 12px;border-bottom:1px solid var(--border-color);text-align:left;font-size:.9rem}.cohort-table thead th{background:var(--background-secondary);color:var(--text-primary);font-weight:700}.stats-tabs{display:flex;gap:8px;flex-wrap:wrap}.stats-tab{padding:8px 12px;border:1px solid var(--border-color);background:var(--background-primary);border-radius:20px;cursor:pointer;font-weight:600;color:var(--text-primary)}.stats-tab.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.stats-footer{display:flex;justify-content:flex-end;gap:10px}.chart-toolbar{display:flex;align-items:center;gap:10px;margin:6px 0 12px;font-size:.85rem;color:var(--text-secondary)}.chart-toolbar input{width:72px;padding:6px 8px;border:1px solid var(--border-color);border-radius:6px}.heatmap-grid{display:flex;flex-direction:column;gap:6px;margin-top:12px}.heatmap-row{display:flex;align-items:center;gap:8px}.heatmap-label{width:40px;font-size:.8rem;color:var(--text-secondary)}.heatmap-cells{display:grid;grid-template-columns:repeat(24,1fr);gap:2px;flex:1}.heatmap-cell{height:12px;border-radius:3px;background:#e2e8f0}.table-actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.print-modal{max-width:420px}@media print{body.print-mode .sidebar,body.print-mode .main-header,body.print-mode .chat-panel,body.print-mode .notifications-panel,body.print-mode .sidebar-actions,body.print-mode .sidebar-history-card,body.print-mode .main-content>*:not(.stats-page){display:none!important}body.print-mode .stats-page{margin:0;padding:0;box-shadow:none}body.print-mode .modal-overlay,body.print-mode .print-modal,body.print-mode [data-print-section][data-print-enabled=false]{display:none!important}}.nordelaia-edition{font-weight:800;display:inline-flex;align-items:baseline;gap:6px}.nordelaia-edition .brand{font-size:1.47rem;letter-spacing:.3px;white-space:nowrap}.nordelaia-edition .edition{font-size:.65rem;font-weight:700;opacity:.85;white-space:nowrap}.toast-container{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2000;pointer-events:none;display:flex;flex-direction:column;gap:12px;align-items:center}.toast{display:flex;align-items:flex-start;gap:10px;pointer-events:auto;background:var(--background-primary);color:var(--text-primary);border:1px solid var(--border-color);border-left:4px solid var(--accent-color);border-radius:10px;padding:12px 14px;box-shadow:0 10px 30px #00000026;min-width:280px;max-width:90vw}.toast.error{border-left-color:var(--error-color)}.toast.success{border-left-color:var(--success-color)}.toast.warning{border-left-color:var(--warning-color)}.toast-icon{font-size:1.2rem;line-height:1}.toast-title{font-weight:700;margin-bottom:2px}.toast-message{font-size:.9rem;color:var(--text-secondary)}.user-quick-actions .btn-secondary,.user-quick-actions .btn-danger{padding:6px 10px;font-size:.85rem;min-width:auto}@media(max-width:1024px){.sidebar{width:240px}.sidebar.collapsed{width:56px}.sidebar-header,.user-profile,.mini-calendar,.quick-stats,.category-filters,.sidebar-actions,.main-content{padding:16px}}@media(max-width:1200px){.chat-panel{width:280px}.sidebar{width:260px}.kpi-grid{grid-template-columns:repeat(2,1fr)}.charts-grid,.cohort-grid{grid-template-columns:1fr}.main-header .header-grid{grid-template-columns:repeat(2,minmax(260px,1fr));row-gap:16px;justify-items:stretch}.main-header .header-col-views{grid-column:1;grid-row:1 / span 2;min-width:auto}.main-header .header-col-period{grid-column:2;grid-row:1}.main-header .header-col-nav{grid-column:2;grid-row:2}.main-header .header-col-search{grid-column:1;grid-row:3}.main-header .header-col-filters{grid-column:1;grid-row:4}.main-header .header-col-notifications{grid-column:2;grid-row:3}.main-header .header-col-actions{grid-column:2;grid-row:4}.main-header .header-view-controls{justify-content:center}}@media(max-width:900px){:root{--calendar-time-col-width: 70px;--calendar-header-height: 52px}.main-header .header-grid{grid-template-columns:1fr;grid-template-rows:repeat(6,minmax(var(--header-control-height),auto))}.main-header .header-col-views,.main-header .header-col-period,.main-header .header-col-nav,.main-header .header-col-search,.main-header .header-col-filters,.main-header .header-col-notifications,.main-header .header-col-actions{grid-column:1 / -1}.main-header .header-col-period,.main-header .header-col-notifications,.main-header .header-col-actions{justify-content:flex-start}.main-header .header-filters-row{gap:8px}.calendar-view,.week-view{overflow-x:auto}.week-header,.week-body{min-width:680px}.calendar-grid-header-cell{padding:0 10px}.week-day-name{font-size:.85rem}.week-day-number{width:22px;height:22px;font-size:.8rem}.time-slot,.week-hour-slot{height:52px}.time-slot{font-size:.75rem}.day-hour-row{min-height:64px}.hour-label{padding:10px;font-size:.85rem}}@media(max-width:768px){.taskdown-pro,.app-container{flex-direction:column}.sidebar{width:100%;height:auto;max-height:60vh}.sidebar.collapsed{width:100%;height:60px}.chat-panel{width:100%;height:300px;border-left:none;border-top:1px solid var(--border-color)}.main-header{padding:12px 16px}.main-header .header-grid{display:flex;flex-direction:column;gap:16px}.main-header .header-col{width:100%}.main-header .header-view-controls{flex-wrap:wrap}.main-header .header-view-btn{width:64px;height:64px}.main-header .header-period-group,.main-header .header-nav-controls,.main-header .header-search-input,.main-header .header-filter-select,.main-header .header-notify-btn,.main-header .header-primary-btn{width:100%;max-width:none}.main-header .header-col-filters{flex-direction:column;align-items:stretch;gap:10px;flex-wrap:wrap}.main-header .header-nav-controls{display:flex;gap:12px}.modal{margin:10px;max-height:calc(100vh - 20px)}.form-row{grid-template-columns:1fr}.notifications-panel{width:100%}.kpi-grid{grid-template-columns:1fr}}@media(max-width:700px){.search-bar input{padding-left:36px;font-size:.85rem}.main-header .header-filter-select{min-width:0;flex:1 1 100%}}@media(max-width:480px){.main-content{padding:12px}.calendar-grid-header-cell{min-height:52px;padding:0 8px}.calendar-header-day{font-size:.8rem}.calendar-day{padding:6px}.day-number{font-size:.9rem}.task-preview{font-size:.65rem;padding:3px 5px}.modal-content{padding:16px}.modal-actions{padding:16px;flex-direction:column}.modal-actions button{width:100%}.modal-overlay{align-items:stretch;justify-content:stretch;padding:0}.modal{width:100%;height:100vh;max-height:100vh;border-radius:0;margin:0}.task-modal,.task-detail-modal,.category-modal,.change-password-modal{width:100%;height:100vh;max-height:100vh;border-radius:0}.modal-content{max-height:calc(100vh - 140px);overflow:auto}.chat-panel{width:100%;height:40vh;border-left:none;border-top:1px solid var(--border-color)}.chat-header{padding:12px}.chat-header h3{font-size:1rem}.chat-input{font-size:.9rem}}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--background-secondary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.week-view .week-header,.week-view .week-all-day-row{display:grid;grid-template-columns:var(--calendar-time-col-width) repeat(7,1fr)}.week-header{align-items:stretch;border-radius:12px 12px 0 0;overflow:hidden}.time-column-header{justify-content:flex-end;color:var(--text-secondary);font-size:.85rem}.week-day-header{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:0;background:var(--background-primary)}.week-day-header.is-today{background:var(--background-primary)}.week-day-title{display:inline-flex;align-items:center;justify-content:center;gap:6px;line-height:1}.week-view,.week-view .week-grid-body,.day-view .day-grid-body{scrollbar-gutter:stable}.week-view .time-column,.day-view .time-column{width:var(--calendar-time-col-width);min-width:var(--calendar-time-col-width)}.time-scale{background-color:var(--background-primary);background-image:repeating-linear-gradient(to bottom,var(--border-color) 0px,var(--border-color) var(--calendar-divider-width),transparent var(--calendar-divider-width),transparent 60px);background-repeat:repeat;background-position:0 0;border-right:var(--calendar-divider-width) solid var(--border-color)}.week-all-day-row{border-top:none;border-bottom:none;background:linear-gradient(180deg,var(--background-secondary) 0%,var(--background-primary) 100%);display:grid;align-items:stretch;grid-template-columns:var(--calendar-time-col-width) repeat(7,1fr)}.week-all-day-row .all-day-label{border-right:var(--calendar-divider-width) solid var(--border-color);display:flex;align-items:center}.week-all-day-row .all-day-cell{position:relative;border-right:var(--calendar-divider-width) solid var(--border-color);padding:6px;min-height:48px;display:flex;flex-wrap:wrap;gap:6px;align-content:flex-start;background:transparent;min-width:0}.week-all-day-row .all-day-cell:last-child{border-right:none}.week-all-day-row .all-day-cell.today{background:transparent}.week-grid-body{flex:1;display:grid;grid-template-columns:var(--calendar-time-col-width) repeat(7,1fr);min-height:1440px;position:relative;background-color:#fff}.week-grid-body:after{content:"";position:absolute;left:0;right:0;top:1440px;bottom:var(--calendar-divider-width);background:var(--background-secondary);pointer-events:none;z-index:1}.week-grid-body .time-scale,.day-grid-body .time-scale{border-right:var(--calendar-divider-width) solid var(--border-color);background-image:repeating-linear-gradient(to bottom,var(--border-color) 0px,var(--border-color) var(--calendar-divider-width),transparent var(--calendar-divider-width),transparent 60px),linear-gradient(to bottom,#fff 0,#fff 1440px,var(--background-secondary) 1440px,var(--background-secondary) 100%);background-repeat:repeat,no-repeat;background-size:100% 1440px,100% 100%;background-position:0 0,0 0}.week-day-column{border-right:var(--calendar-divider-width) solid var(--border-color);padding:0 4px;position:relative;background-color:#fff;background-image:repeating-linear-gradient(to bottom,var(--border-color) 0px,var(--border-color) var(--calendar-divider-width),transparent var(--calendar-divider-width),transparent 60px);background-repeat:repeat;background-position:0 0;overflow:hidden}.week-day-column:last-child{border-right:none}.week-day-column.today{background-color:var(--background-primary)}.day-grid-body{flex:1;display:grid;grid-template-columns:var(--calendar-time-col-width) 1fr;min-height:1440px;position:relative;background-color:#fff}.day-grid-body:after{content:"";position:absolute;inset:1440px 0 0;background:var(--background-secondary);pointer-events:none;z-index:1}.week-grid-body:before,.day-grid-body:before{content:"";position:absolute;left:0;right:0;top:1440px;height:var(--calendar-divider-width);background:var(--border-color);pointer-events:none;z-index:2}.day-column{position:relative;padding:0 4px;border-left:none;background-color:#fff;background-image:repeating-linear-gradient(to bottom,var(--border-color) 0px,var(--border-color) var(--calendar-divider-width),transparent var(--calendar-divider-width),transparent 60px);background-repeat:repeat;background-position:0 0;overflow:hidden}.current-time-line{position:absolute;left:0;right:0;height:2px;background:var(--accent-color);z-index:250;pointer-events:none}.week-grid-body .current-time-line{left:var(--calendar-time-col-width)}.current-time-line .current-time-dot{position:absolute;left:2px;top:50%;transform:translateY(-50%);width:8px;height:8px;border-radius:999px;background:var(--accent-color);box-shadow:0 0 0 2px var(--background-primary)}.all-day-pill{padding:2px 8px;border-radius:6px;font-size:12px;box-shadow:0 1px 2px #0000002e;cursor:pointer;-webkit-user-select:none;user-select:none;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.all-day-pill:hover{box-shadow:0 2px 6px #00000038}.all-day-empty{font-size:12px;opacity:.35}.all-day-label{padding:6px 8px;font-size:12px;font-weight:600;opacity:.7;display:flex;align-items:center}.day-all-day{display:grid!important;grid-template-columns:var(--calendar-time-col-width) 1fr;border-top:none;border-bottom:none;background:linear-gradient(180deg,var(--background-secondary) 0%,var(--background-primary) 100%)}.day-all-day>div:first-child{border-right:var(--calendar-divider-width) solid var(--border-color)}.day-all-day-cells{flex:1;display:flex;flex-wrap:wrap;gap:6px;padding:6px 8px;min-width:0}.day-view .day-timeline .day-hour-row{display:grid;grid-template-columns:var(--calendar-time-col-width) 1fr}.day-view .hour-label{width:var(--calendar-time-col-width);min-width:var(--calendar-time-col-width);border-right:var(--calendar-divider-width) solid var(--border-color);font-weight:600;background:var(--background-primary)}.week-view .time-slots{border-right:var(--calendar-divider-width) solid var(--border-color)}.week-task,.day-task{border-left-width:4px;border-radius:10px}.calendar-event{border:1px solid rgba(15,23,42,.08);box-shadow:0 10px 24px #0f172a14;background:var(--background-primary);transition:box-shadow .2s ease,transform .2s ease}.calendar-event-time{font-size:.7rem;opacity:.85;line-height:1;white-space:nowrap;display:block;flex:0 0 auto}.calendar-event-title{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;display:block;flex:0 0 auto}.calendar-event:hover{box-shadow:0 18px 34px #0f172a24;transform:translate3d(0,-1px,0)}.debug-view{padding:24px 32px 48px}.debug-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px}.debug-eyebrow{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#8792a1;margin:0 0 8px}.debug-subtitle{margin:8px 0 0;color:#566173}.debug-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.debug-panel{background:#fff;border-radius:20px;box-shadow:0 18px 45px #0f172a1f;padding:24px}.debug-cascade{margin-bottom:24px;padding:16px;border-radius:16px;background:#f7f8fb;border:1px solid #e5e7eb}.debug-cascade h3{margin:0 0 12px;font-size:16px}.debug-cascade-list{display:grid;gap:10px}.debug-cascade-item{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:10px 12px}.debug-cascade-item summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;cursor:pointer;font-size:13px}.debug-cascade-item summary::-webkit-details-marker{display:none}.debug-cascade-body{margin-top:10px;display:grid;gap:10px}.debug-cascade-users{list-style:none;padding:8px 0 0;margin:0;display:grid;gap:6px}.debug-cascade-users li{display:flex;justify-content:space-between;font-size:12px;color:#374151}.debug-filters{display:grid;gap:16px;margin-bottom:24px}.debug-filter-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.debug-filter-row label{display:flex;flex-direction:column;font-size:12px;gap:6px;color:#4b5563}.debug-filter-row input,.debug-filter-row select{border:1px solid #d8dee7;border-radius:12px;padding:10px 12px;font-size:14px;background:#f9fafb}.debug-filter-actions{display:flex;gap:12px}.debug-log-list{display:grid;gap:16px}.debug-log-card{border-radius:16px;padding:16px;border:1px solid #e2e8f0;background:#fbfcfe}.debug-log-card.level-error{border-color:#ef444459;background:#fee2e266}.debug-log-card.level-warn{border-color:#f59e0b59;background:#fef3c773}.debug-log-card.level-info{border-color:#3b82f633}.debug-log-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px}.debug-log-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.debug-log-level{text-transform:uppercase;font-size:11px;letter-spacing:.1em;font-weight:600;color:#111827}.debug-log-time{font-size:12px;color:#6b7280}.debug-log-chip{font-size:11px;padding:4px 8px;border-radius:999px;background:#e5e7eb;color:#374151}.debug-log-message{margin:8px 0 12px;font-size:15px;color:#1f2937}.debug-log-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:12px}.debug-log-grid span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#9ca3af}.debug-log-grid strong{font-size:13px;color:#111827}.debug-log-details{background:#0f172a;color:#e2e8f0;border-radius:12px;padding:12px;font-size:12px;overflow:auto;white-space:pre-wrap}.debug-empty{padding:24px;text-align:center;color:#6b7280}.debug-error{color:#b91c1c}.btn-small{padding:6px 10px;font-size:12px}@media(max-width:900px){.debug-view{padding:16px}.debug-header{flex-direction:column;align-items:flex-start}.debug-panel{padding:16px}}
