.dashboard-container{padding:0 calc(var(--base-unit) * 4) calc(var(--base-unit) * 4);max-width:1400px;margin:0 auto}.dashboard-controls{display:flex;justify-content:space-between;align-items:center;margin-top:calc(var(--base-unit) * 4);margin-bottom:calc(var(--base-unit) * 4);gap:calc(var(--base-unit) * 2)}.button-group{display:flex;gap:calc(var(--base-unit) * 2)}.dashboard-primary-button{background:var(--flash-primary);color:#fff;border:none;padding:calc(var(--base-unit) * 1.5) calc(var(--base-unit) * 3);border-radius:12px;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.175,.885,.32,1.275);display:flex;align-items:center;justify-content:center;gap:calc(var(--base-unit) * 1)}.dashboard-primary-button:hover{transform:translateY(-2px);box-shadow:0 8px 24px var(--flash-primary-shadow);filter:brightness(1.1)}.search-container{position:relative;display:flex;align-items:center}.search-input{padding:calc(var(--base-unit) * 1.5) calc(var(--base-unit) * 2);padding-right:calc(var(--base-unit) * 6);border-radius:12px;border:none;background:var(--flash-primary);color:#fff;font-family:var(--font-main);font-size:.875rem;width:300px;transition:var(--transition-fast)}.search-input::placeholder{color:#ffffffb3}.search-input:focus{outline:none;box-shadow:0 0 0 4px #0096ff4d;filter:brightness(1.1)}.search-icon{position:absolute;right:calc(var(--base-unit) * 1.5);color:#fffc;pointer-events:none}.project-table-wrapper{position:relative}.project-table-container{border-radius:var(--radius-lg);border:1px solid var(--glass-border);background:var(--glass-surface);overflow-x:auto;overflow-y:visible;max-height:calc(100vh - 200px)}.project-table{width:100%;min-width:900px;border-collapse:separate;border-spacing:0;text-align:center;font-size:.875rem}.project-table thead{position:sticky;top:0;z-index:100}.project-table th{background:#ff0;color:#000;padding:calc(var(--base-unit) * 2);font-weight:700;border:1px solid hsla(0,0%,0%,.1);cursor:pointer;white-space:nowrap;transition:var(--transition-fast)}.project-table th:hover{background:#e6e600}.project-table td{padding:calc(var(--base-unit) * 2);border:1px solid var(--glass-border);color:var(--text-primary);background:transparent}.project-table tr:nth-child(2n) td{background:#66809908}.project-table tbody tr:hover td{background:var(--flash-primary-shadow);position:relative;z-index:10;border-color:transparent;box-shadow:inset 0 1px 0 0 var(--flash-primary),inset 0 -1px 0 0 var(--flash-primary)}.project-table tbody tr:hover td:first-child{box-shadow:inset 1px 0 0 0 var(--flash-primary),inset 0 1px 0 0 var(--flash-primary),inset 0 -1px 0 0 var(--flash-primary);border-top-left-radius:4px;border-bottom-left-radius:4px}.project-table tbody tr:hover td:last-child{box-shadow:inset -1px 0 0 0 var(--flash-primary),inset 0 1px 0 0 var(--flash-primary),inset 0 -1px 0 0 var(--flash-primary);border-top-right-radius:4px;border-bottom-right-radius:4px}.project-table tr.selected td{background:#0bb8da1a!important}.secondary-button{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:calc(var(--base-unit) * 1.5) calc(var(--base-unit) * 3);font-weight:600;cursor:pointer;transition:var(--transition-fast)}.secondary-button:hover{background:var(--bg-primary);border-color:var(--text-secondary)}.action-button-archive{background:#10b981;color:#fff;border:none;padding:calc(var(--base-unit) * 1.5) calc(var(--base-unit) * 3);border-radius:12px;font-weight:600;cursor:pointer;transition:all .2s ease}.action-button-archive:hover{background:#059669;transform:translateY(-1px)}.action-button-delete{background:#fef2f2;color:#991b1b;border:1.5px solid #fecaca;padding:calc(var(--base-unit) * 1.5) calc(var(--base-unit) * 3);border-radius:var(--radius-md);font-weight:600;cursor:pointer}.admin-back-button{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;margin-bottom:1.5rem;background:var(--glass-surface);border:1px solid var(--glass-border);border-radius:100px;color:var(--text-secondary);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.admin-back-button:hover{background:#8b5cf61a;border-color:#8b5cf64d;color:#8b5cf6;transform:translate(-2px)}.admin-back-arrow{font-size:1.1rem;transition:transform .2s ease}.admin-back-button:hover .admin-back-arrow{transform:translate(-3px)}.marketplace-container{padding:0 calc(var(--base-unit) * 4) calc(var(--base-unit) * 4);max-width:1400px;margin:0 auto}.portal-switcher{display:flex;justify-content:center;gap:calc(var(--base-unit) * 4);margin-top:calc(var(--base-unit) * 4);margin-bottom:calc(var(--base-unit) * 6);padding:calc(var(--base-unit) * 1);background:var(--bg-primary);border-radius:var(--radius-lg);width:fit-content;margin-inline:auto;border:1px solid var(--glass-border)}.portal-tab{padding:calc(var(--base-unit) * 1.5) calc(var(--base-unit) * 4);border-radius:var(--radius-md);cursor:pointer;font-weight:600;transition:var(--transition-fast);color:var(--text-secondary)}.portal-tab.active{background:var(--bg-secondary);color:var(--flash-primary);box-shadow:var(--shadow-subtle)}.marketplace-header{text-align:center;margin-bottom:calc(var(--base-unit) * 6)}.specialist-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:calc(var(--base-unit) * 4)}.specialist-card{transition:var(--transition-smooth)}.specialist-card:hover{transform:translateY(-4px);border-color:var(--flash-primary)}.specialist-avatar{width:64px;height:64px;border-radius:50%;background:var(--bg-primary);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.5rem;color:var(--flash-secondary);border:2px solid var(--glass-border);margin-bottom:calc(var(--base-unit) * 2)}.specialty-tag{display:inline-block;padding:4px 12px;background:#0bb8da1a;color:var(--flash-primary);border-radius:12px;font-size:.75rem;font-weight:600;margin-right:8px;margin-top:8px}.opportunity-list{display:flex;flex-direction:column;gap:calc(var(--base-unit) * 3)}.opportunity-card{display:flex;justify-content:space-between;align-items:center}.post-form-card{margin-bottom:calc(var(--base-unit) * 6);border-left:4px solid var(--flash-primary)}.dropdown-item:hover{background-color:var(--glass-border);color:var(--flash-primary)!important}.divider{height:1px;background-color:var(--glass-border);margin:4px 0}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.nav-link:hover{background-color:var(--glass-border);color:var(--flash-primary)!important}.navbar-profile-badge{position:absolute;top:-2px;right:-2px;background-color:var(--flash-error);color:#fff;font-size:10px;font-weight:800;min-width:16px;height:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 4px;border:2px solid var(--bg-primary);box-shadow:0 2px 4px #0000001a;z-index:10}.dropdown-badge{position:absolute;top:-6px;right:-10px;background-color:var(--flash-error);color:#fff;font-size:9px;font-weight:700;min-width:14px;height:14px;border-radius:7px;display:flex;align-items:center;justify-content:center;padding:0 3px;border:1.5px solid var(--bg-secondary)}.language-toggle-btn{display:flex;align-items:center;gap:4px;padding:8px 12px;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:600;color:var(--text-secondary);transition:all .2s ease}.language-toggle-btn:hover{background:var(--bg-secondary);border-color:var(--text-secondary)}.language-toggle-btn span{transition:color .2s ease}.language-toggle-btn span.active{color:var(--flash-primary)}.language-toggle-btn .divider{height:auto;background:none;margin:0;opacity:.5}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:calc(var(--base-unit) * 2);margin-bottom:calc(var(--base-unit) * 2)}.form-row.single{grid-template-columns:1fr}.form-group{display:flex;flex-direction:column;gap:calc(var(--base-unit) * .75)}.form-label{font-size:.8125rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.form-input,.form-select{width:100%;padding:calc(var(--base-unit) * 1.5) calc(var(--base-unit) * 2);font-size:.9375rem;font-family:var(--font-main);color:var(--text-primary);background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-md);transition:var(--transition-fast)}.form-input:focus,.form-select:focus{outline:none;border-color:var(--flash-primary);box-shadow:0 0 0 3px var(--flash-primary-shadow)}.form-input::placeholder{color:var(--text-secondary);opacity:.6}.form-select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:calc(var(--base-unit) * 4)}.optional-badge{font-size:.6875rem;color:var(--text-secondary);font-weight:400;text-transform:lowercase;margin-left:calc(var(--base-unit) * .5)}@media(max-width:600px){.form-row{grid-template-columns:1fr}}.phone-input-joined{display:flex;align-items:center;background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-md);transition:var(--transition-fast);position:relative}.phone-input-joined:focus-within{border-color:var(--flash-primary);box-shadow:0 0 0 3px var(--flash-primary-shadow)}.custom-select-trigger{display:flex;align-items:center;justify-content:space-between;width:90px;padding:calc(var(--base-unit) * 1.5);cursor:pointer;-webkit-user-select:none;user-select:none;font-size:.9375rem;color:var(--text-primary);flex-shrink:0}.select-arrow{color:var(--text-secondary);transition:transform .2s ease}.select-arrow.rotated{transform:rotate(180deg)}.custom-select-dropdown{position:absolute;bottom:calc(100% + 4px);top:auto;left:0;width:140px;background:#1a1a1a;border:1px solid var(--glass-border);border-radius:var(--radius-md);box-shadow:0 -4px 20px #0009;z-index:10000;overflow-y:auto;max-height:250px;scrollbar-width:thin;scrollbar-color:var(--text-secondary) transparent;animation:slideUp .15s ease-out}.custom-select-dropdown::-webkit-scrollbar{width:6px}.custom-select-dropdown::-webkit-scrollbar-track{background:transparent}.custom-select-dropdown::-webkit-scrollbar-thumb{background-color:var(--glass-border);border-radius:3px}.custom-select-dropdown::-webkit-scrollbar-thumb:hover{background-color:var(--text-secondary)}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.custom-select-option{display:flex;align-items:center;gap:12px;padding:12px 14px;cursor:pointer;transition:all .15s;color:var(--text-primary);font-size:.9rem;background:#1a1a1a}.custom-select-option:hover{background-color:var(--glass-surface);padding-left:18px}.custom-select-option.selected{background-color:var(--glass-surface);color:var(--flash-primary);font-weight:500}.custom-select-backdrop{position:fixed;inset:0;z-index:9999;cursor:default}.country-icon{font-size:1.1em}.country-code{font-family:var(--font-mono, monospace);opacity:.9}.phone-separator{width:1px;height:24px;background-color:var(--glass-border)}.phone-input-field{flex:1;border:none;background:transparent;padding:calc(var(--base-unit) * 1.5) calc(var(--base-unit) * 2);font-size:.9375rem;color:var(--text-primary);outline:none;font-family:var(--font-main)}.phone-hint{font-size:.75rem;color:var(--text-secondary);margin-top:calc(var(--base-unit) * .5)}.new-project-container{max-width:700px;margin:0 auto;padding:calc(var(--base-unit) * 4)}.new-project-form{background:var(--glass-surface);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-subtle);overflow:hidden}.form-section{padding:calc(var(--base-unit) * 3) calc(var(--base-unit) * 4);border-bottom:1px solid var(--glass-border)}.form-section:last-child{border-bottom:none}.form-section-header{display:flex;align-items:center;gap:calc(var(--base-unit) * 1.5);margin-bottom:calc(var(--base-unit) * 2.5)}.form-section-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--flash-primary),var(--flash-secondary));color:#fff}.form-section-title{font-size:1rem;font-weight:700;color:var(--text-primary);margin:0;letter-spacing:.01em}.form-actions{display:flex;gap:calc(var(--base-unit) * 2);padding:calc(var(--base-unit) * 3) calc(var(--base-unit) * 4);background:var(--bg-primary);border-top:1px solid var(--glass-border)}.btn-primary{background:linear-gradient(135deg,var(--flash-primary),var(--flash-secondary));color:#fff;border:none;border-radius:var(--radius-md);padding:calc(var(--base-unit) * 1.5) calc(var(--base-unit) * 4);font-size:.9375rem;font-weight:600;cursor:pointer;transition:var(--transition-fast);box-shadow:0 4px 12px -2px var(--flash-primary-shadow)}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 16px -2px var(--flash-primary-shadow)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:transparent;color:var(--text-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:calc(var(--base-unit) * 1.5) calc(var(--base-unit) * 3);font-size:.9375rem;font-weight:500;cursor:pointer;transition:var(--transition-fast)}.btn-secondary:hover{background:var(--bg-primary);border-color:var(--text-secondary)}.confirmation-modal{max-width:400px;padding:calc(var(--base-unit) * 3);border-radius:20px;background:var(--glass-surface);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);animation:modalScaleUp .3s cubic-bezier(.175,.885,.32,1.275)}.modal-header{display:flex;align-items:center;gap:16px;margin-bottom:16px;position:relative}.modal-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center}.modal-icon.danger{background:#ff4d4f1a;color:#ff4d4f}.modal-icon.warning{background:#ffa9401a;color:#ffa940}.modal-icon.info{background:#1890ff1a;color:#1890ff}.modal-icon.primary{background:#8b5cf61a;color:#8b5cf6}.close-button{position:absolute;top:-8px;right:-8px;background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:8px;border-radius:50%;transition:background .2s}.close-button:hover{background:#0000000d;color:var(--text-primary)}.modal-body{margin-bottom:24px;color:var(--text-secondary);line-height:1.5;font-size:.9375rem}.modal-actions{display:flex;gap:12px;justify-content:flex-end}.cancel-button{padding:10px 20px;border-radius:12px;border:none;background:#ffffffe6!important;color:#374151!important;font-weight:600;cursor:pointer;transition:all .2s}.cancel-button:hover{background:#fff}.confirm-button{padding:10px 24px;border-radius:12px;border:none;color:#fff;font-weight:600;cursor:pointer;transition:all .2s}.confirm-button.danger{background:#ff4d4f}.confirm-button.danger:hover{background:#ff7875;box-shadow:0 4px 12px #ff4d4f4d}.confirm-button.warning{background:#ffa940}.confirm-button.warning:hover{background:#ffbb60;box-shadow:0 4px 12px #ffa9404d}.confirm-button.info{background:#1890ff}.confirm-button.info:hover{background:#40a9ff;box-shadow:0 4px 12px #1890ff4d}.confirm-button.primary{background:#8b5cf6}.confirm-button.primary:hover{background:#a78bfa;box-shadow:0 4px 12px #8b5cf64d}@keyframes modalScaleUp{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.drive-file-picker{width:100%}.drive-picker-button{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;padding:1.25rem;border:2px dashed var(--glass-border);border-radius:8px;background:transparent;cursor:pointer;transition:all .2s;gap:.5rem}.drive-picker-button:hover:not(:disabled){background:rgba(var(--flash-primary-rgb, 99, 102, 241),.05);border-color:var(--flash-primary)}.drive-picker-button:disabled{cursor:not-allowed;opacity:.6}.drive-picker-button:focus-visible{outline:2px solid var(--flash-primary);outline-offset:2px}.drive-icon{color:var(--text-secondary);transition:color .2s}.drive-picker-button:hover:not(:disabled) .drive-icon{color:var(--flash-primary)}.drive-icon.spinning{color:var(--flash-primary);animation:spin 1s linear infinite}.drive-button-text{font-size:.85rem;color:var(--text-secondary);transition:color .2s}.drive-picker-button:hover:not(:disabled) .drive-button-text{color:var(--flash-primary)}.drive-file-selected{display:flex;align-items:center;gap:12px;padding:12px;background:var(--glass-surface);border-radius:8px;border:1px solid var(--glass-border);transition:all .2s}.drive-file-selected:hover{box-shadow:0 2px 8px #0000000d}.drive-file-info{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.drive-file-icon{color:var(--flash-primary);flex-shrink:0}.drive-file-details{flex:1;min-width:0}.drive-file-name{font-weight:500;font-size:.9rem;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drive-file-link{font-size:.75rem;color:var(--flash-primary);text-decoration:none;transition:opacity .2s}.drive-file-link:hover{opacity:.8;text-decoration:underline}.drive-file-link:focus-visible{outline:2px solid var(--flash-primary);outline-offset:2px;border-radius:2px}.drive-clear-button{background:none;border:none;cursor:pointer;padding:4px;color:#ef4444;border-radius:4px;transition:all .2s;flex-shrink:0}.drive-clear-button:hover:not(:disabled){background:#ef44441a}.drive-clear-button:disabled{opacity:.5;cursor:not-allowed}.drive-clear-button:focus-visible{outline:2px solid #ef4444;outline-offset:2px}.drive-error-message{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px;padding:8px 12px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:#ef4444;font-size:.8rem}.drive-retry-button{background:#ef4444;color:#fff;border:none;padding:4px 12px;border-radius:4px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.drive-retry-button:hover{background:#dc2626}.drive-retry-button:focus-visible{outline:2px solid #ef4444;outline-offset:2px}.ai-processing-status{display:flex;align-items:center;gap:.75rem;padding:1rem;background:linear-gradient(135deg,#8b5cf614,#3b82f614);border:1px solid rgba(139,92,246,.2);border-radius:8px;color:#8b5cf6;font-weight:500;font-size:.9rem;animation:pulse-border 2s ease-in-out infinite}.ai-processing-status svg{flex-shrink:0}.ai-generating{display:flex;align-items:center;gap:.75rem;color:#8b5cf6;font-weight:500}.spinner{animation:spin 1s linear infinite}@keyframes pulse-border{0%,to{border-color:#8b5cf633;box-shadow:0 0 #8b5cf600}50%{border-color:#8b5cf666;box-shadow:0 0 0 4px #8b5cf61a}}.ai-error{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:#dc2626;font-size:.875rem}.ai-rejected-card{background:#262626f2;border:1px solid hsla(0,70%,50%,.4);border-radius:12px;padding:16px}.ai-rejected-card-header{font-size:.9rem;font-weight:500;color:#ef4444;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid var(--glass-border)}.ai-rejected-info{padding:8px 12px;background:transparent;border-radius:8px}.ai-rejected-info .rejection-message{font-size:.85rem;color:var(--text-secondary)}.ai-rejected-actions{display:flex;justify-content:center;padding:.5rem 0}.ai-rejected{display:flex;flex-direction:column;gap:.75rem}.ai-rejected-message{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);border-radius:6px;color:#d97706;font-size:.875rem}.btn-ai-generate{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:linear-gradient(135deg,#8b5cf6,#3b82f6);color:#fff;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s;font-size:.9rem}.btn-ai-generate:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #8b5cf666}.btn-ai-generate:disabled{opacity:.6;cursor:not-allowed}.btn-view-document{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:6px;font-size:.85rem;font-weight:500;text-decoration:none;cursor:pointer;transition:all .2s}.btn-view-document:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666}.btn-regenerate{display:flex;align-items:center;gap:.375rem;padding:.5rem .875rem;background:#8b5cf61a;color:#8b5cf6;border:1px solid rgba(139,92,246,.3);border-radius:6px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-regenerate:hover:not(:disabled){background:#8b5cf633;border-color:#8b5cf680}.btn-regenerate:disabled{opacity:.5;cursor:not-allowed}.btn-retry{padding:.375rem .75rem;background:#ef4444;color:#fff;border:none;border-radius:4px;font-size:.8rem;font-weight:500;cursor:pointer;transition:background-color .2s;margin-left:auto}.btn-retry:hover:not(:disabled){background:#dc2626}.btn-retry:disabled{opacity:.5;cursor:not-allowed}.btn-edit-step-card{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-top:12px;padding:12px 16px;background:#d9262626;color:#ef4444;border:1px solid hsla(0,70%,50%,.3);border-radius:10px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s ease}.btn-edit-step-card:hover{background:#d9262640;border-color:#d9262680;transform:translateY(-1px)}.btn-edit-step{display:flex;align-items:center;gap:.5rem;align-self:flex-start;padding:.625rem 1rem;background:#f59e0b26;color:#f59e0b;border:1px solid rgba(245,158,11,.4);border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-edit-step:hover{background:#f59e0b40;border-color:#f59e0b99;transform:translateY(-1px)}.ai-generation-section{margin-top:1rem;padding:1rem;background:linear-gradient(135deg,#8b5cf60d,#3b82f60d);border:2px solid rgba(139,92,246,.2);border-radius:8px}.ai-base-document{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#8b5cf61a;border-radius:6px;font-size:.8rem;color:#8b5cf6;margin-bottom:.75rem}.ai-base-document span{font-weight:500}.ai-output-preview{margin-bottom:1rem;padding:.875rem;background:#8b5cf614;border:1px solid rgba(139,92,246,.15);border-radius:6px}.ai-user-instructions{margin-bottom:1rem}.ai-user-instructions textarea:disabled{opacity:.6;cursor:not-allowed}.ai-document{display:flex;align-items:center;justify-content:space-between;gap:1rem}.ai-document-info{display:flex;align-items:center;gap:.75rem;flex:1}.document-icon{color:#3b82f6;flex-shrink:0}.document-details{display:flex;flex-direction:column;gap:.25rem}.document-link{color:#3b82f6;text-decoration:none;font-weight:500;font-size:.9rem}.document-link:hover{text-decoration:underline}.document-meta{color:var(--text-secondary);font-size:.75rem}.ai-document-actions{display:flex;gap:.5rem}.ai-model-indicator{display:flex;align-items:center;gap:.375rem;margin-top:.75rem;color:var(--text-secondary);font-size:.75rem;opacity:.8}.ai-model-indicator svg{color:#8b5cf6}.ai-template-modal{width:100%;max-width:500px;max-height:80vh;display:flex;flex-direction:column}.ai-template-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--glass-border)}.ai-template-modal .modal-title{display:flex;align-items:center;gap:.75rem}.ai-template-modal .modal-title h2{margin:0;font-size:1.1rem;font-weight:600}.ai-template-modal .modal-close{background:none;border:none;padding:.5rem;cursor:pointer;color:var(--text-secondary);border-radius:8px}.ai-template-modal .modal-close:hover{background:var(--glass-border);color:var(--text-primary)}.ai-template-modal .modal-body{flex:1;overflow-y:auto;padding:1rem}.ai-template-modal .modal-loading,.ai-template-modal .modal-empty,.ai-template-modal .modal-error{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem;color:var(--text-secondary)}.ai-template-modal .modal-empty h3,.ai-template-modal .modal-error h3{margin:0 0 .5rem;color:var(--text-primary)}.ai-template-modal .modal-empty p,.ai-template-modal .modal-error p{margin:0 0 1.5rem;max-width:280px}.ai-template-modal .create-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;border:none;border-radius:10px;font-size:.9rem;cursor:pointer}.ai-template-modal .template-list{display:flex;flex-direction:column;gap:.75rem}.ai-template-modal .template-option{display:flex;gap:1rem;padding:1rem;border:1px solid var(--glass-border);border-radius:12px;cursor:pointer;transition:all .2s}.ai-template-modal .template-option:hover{border-color:#8b5cf6;background:#8b5cf60d}.ai-template-modal .template-icon{width:48px;height:48px;border-radius:10px;background:#8b5cf61a;color:#8b5cf6;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ai-template-modal .template-info{flex:1;min-width:0}.ai-template-modal .template-info h4{margin:0 0 .25rem;font-size:1rem;font-weight:600}.ai-template-modal .template-desc{margin:0 0 .5rem;font-size:.85rem;color:var(--text-secondary);line-height:1.4}.ai-template-modal .template-meta{display:flex;gap:1rem;font-size:.8rem;color:var(--text-secondary)}.ai-template-modal .template-meta span{display:flex;align-items:center;gap:.25rem}.ai-template-modal .modal-footer{padding:1rem 1.5rem;border-top:1px solid var(--glass-border)}.ai-template-modal .create-link{display:flex;align-items:center;gap:.5rem;background:none;border:none;color:#8b5cf6;cursor:pointer;font-size:.9rem;padding:0}.ai-template-modal .create-link:hover{text-decoration:underline}.ai-template-modal .spin{animation:spin 1s linear infinite}.ai-template-modal .title-step{padding:1rem}.ai-template-modal .selected-template-badge{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:#8b5cf61a;border:1px solid rgba(139,92,246,.2);border-radius:8px;color:#8b5cf6;font-size:.9rem;margin-bottom:1.5rem}.ai-template-modal .title-form{margin-bottom:1.5rem}.ai-template-modal .title-form label{display:block;font-size:.9rem;font-weight:500;margin-bottom:.5rem;color:var(--text-primary)}.ai-template-modal .title-form input{width:100%;padding:.75rem 1rem;font-size:1rem;border:1px solid var(--glass-border);border-radius:8px;background:var(--glass-surface);color:var(--text-primary);box-sizing:border-box}.ai-template-modal .title-form input:focus{outline:none;border-color:#8b5cf6}.ai-template-modal .title-hint{margin:.5rem 0 0;font-size:.8rem;color:var(--text-secondary)}.ai-template-modal .title-actions{display:flex;gap:.75rem;justify-content:flex-end}.ai-template-modal .back-btn{padding:.625rem 1.25rem;background:transparent;border:1px solid var(--glass-border);border-radius:8px;color:var(--text-secondary);cursor:pointer;font-size:.9rem}.ai-template-modal .back-btn:hover{border-color:var(--text-secondary);color:var(--text-primary)}.ai-template-modal .confirm-btn{padding:.625rem 1.25rem;background:linear-gradient(135deg,#8b5cf6,#7c3aed);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500}.ai-template-modal .confirm-btn:hover{opacity:.9}.comment-section{margin-top:calc(var(--base-unit) * 2);border-top:1px solid var(--border-color);padding-top:var(--base-unit);display:flex;flex-direction:column;gap:var(--base-unit);animation:fadeIn .3s ease}.comment-list{max-height:300px;overflow-y:auto;padding-right:var(--base-unit)}.no-comments{font-size:.85rem;color:var(--text-secondary);font-style:italic;text-align:center;padding:var(--base-unit)}.comment-item{padding:calc(var(--base-unit) * 1.5);background:var(--glass-surface, rgba(255, 255, 255, .5));border-radius:8px;margin-bottom:var(--base-unit);border:1px solid var(--glass-border, rgba(0, 0, 0, .05))}.comment-header{display:flex;align-items:center;gap:calc(var(--base-unit) * 1.5);margin-bottom:4px;flex-wrap:wrap}.comment-author{font-weight:600;font-size:.85rem;color:var(--text-primary)}.comment-role-tag{font-size:.7rem;padding:2px 6px;background:var(--bg-secondary);color:var(--text-secondary);border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.comment-time{font-size:.75rem;color:var(--text-muted);margin-left:auto}.comment-content{font-size:.9rem;color:var(--text-primary);line-height:1.4}.comment-input-area{display:flex;gap:var(--base-unit);background:var(--bg-primary);padding:calc(var(--base-unit) * 1);border-radius:8px;border:1px solid var(--border-color);transition:border-color .2s}.comment-input-area:focus-within{border-color:var(--flash-primary)}.comment-input-area input{flex:1;border:none;outline:none;font-size:.9rem;padding:4px}.comment-input-area button{background:var(--flash-primary);color:#fff;border:none;border-radius:6px;width:36px;height:36px;min-width:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .1s,opacity .2s;padding:0}.comment-input-area button:hover:not(:disabled){transform:scale(1.05);opacity:.9}.comment-input-area button:disabled{background:var(--border-color);cursor:default}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.comment-list::-webkit-scrollbar{width:4px}.comment-list::-webkit-scrollbar-track{background:#00000005}.comment-list::-webkit-scrollbar-thumb{background:#0000001a;border-radius:2px}.approval-card{background:#262626f2;border:1px solid var(--glass-border);border-radius:12px;padding:16px;height:100%;position:relative;z-index:10}.approval-card.fully-approved{border-color:#3c36}.approval-card.rejected{border-color:#d9262666}.approval-card-header{font-size:.9rem;font-weight:500;color:var(--text-primary);margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid var(--glass-border)}.approval-roles-list{display:flex;flex-direction:column;gap:8px}.approval-role-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;background:transparent;border-radius:8px;transition:all .2s ease}.approval-role-item .role-name{font-size:.85rem;color:var(--text-secondary);font-weight:400;flex:1}.approval-role-item.approved .role-name{color:var(--text-primary)}.approval-role-item.current{background:#ffd0000d;border:1px solid hsla(49,100%,50%,.2)}.approval-role-item.current .role-name{color:var(--flash-primary)}.approval-role-item .check-icon{color:#22c55e;flex-shrink:0}.approval-role-item .x-icon{color:#ef4444;flex-shrink:0}.approval-role-item.rejected .role-name{color:var(--text-primary)}.approval-card-header.rejected-header{color:#ef4444}.approval-role-item .revoke-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;background:#d9262633;color:#ef4444;border-radius:6px;cursor:pointer;transition:all .2s ease}.approval-role-item .revoke-btn:hover{background:#d9262666}.approval-role-item .revoke-btn:disabled{opacity:.5;cursor:not-allowed}.approval-actions{display:flex;gap:8px;margin-top:16px}.approve-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:12px 16px;background:#d4af37;color:#000;border:none;border-radius:10px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #d4af3766;position:relative;z-index:20}.approve-btn:hover{background:#e5c158;transform:translateY(-2px);box-shadow:0 6px 16px #d4af3780}.approve-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.reject-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:12px 16px;background:transparent;color:#ef4444;border:1px solid #ef4444;border-radius:10px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s ease}.reject-btn:hover{background:#ef44441a}.reject-btn:disabled{opacity:.6;cursor:not-allowed}.edit-step-modal-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.edit-step-modal{background:linear-gradient(145deg,#262626fa,#1a1a1afa);border:1px solid var(--glass-border);border-radius:16px;width:100%;max-width:600px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000080}.edit-step-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--glass-border)}.edit-step-modal-header h2{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.edit-step-modal-header .close-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.edit-step-modal-header .close-btn:hover{background:#ffffff1a;color:var(--text-primary)}.edit-step-modal-content{flex:1;overflow-y:auto;padding:24px}.edit-step-modal-content .loading-state{text-align:center;padding:40px 20px;color:var(--text-secondary)}.edit-step-modal-content .template-type-badge{display:inline-block;padding:6px 12px;background:#8b5cf626;color:#a78bfa;border:1px solid rgba(139,92,246,.3);border-radius:8px;font-size:.85rem;font-weight:500;margin-bottom:20px}.edit-step-modal-content .form-group{margin-bottom:20px}.edit-step-modal-content .form-group label{display:block;margin-bottom:8px;font-size:.9rem;font-weight:500;color:var(--text-primary)}.edit-step-modal-content .form-group input,.edit-step-modal-content .form-group textarea{width:100%;padding:12px;border-radius:8px;border:1px solid var(--glass-border);background:var(--bg-primary);color:var(--text-primary);font-size:.9rem;transition:border-color .2s}.edit-step-modal-content .form-group input:focus,.edit-step-modal-content .form-group textarea:focus{outline:none;border-color:var(--flash-primary)}.edit-step-modal-content .form-group textarea{resize:vertical;min-height:60px}.edit-step-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid var(--glass-border);background:#1a1a1a80;border-radius:0 0 16px 16px}.edit-step-modal-footer button{display:flex;align-items:center;gap:8px;padding:10px 18px;border-radius:8px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s}.edit-step-modal-footer .btn-secondary{background:transparent;border:1px solid var(--glass-border);color:var(--text-secondary)}.edit-step-modal-footer .btn-secondary:hover{background:#ffffff0d;color:var(--text-primary)}.edit-step-modal-footer .btn-primary{background:var(--flash-primary);border:none;color:#000}.edit-step-modal-footer .btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px var(--flash-primary-shadow)}.edit-step-modal-footer .btn-regenerate{background:transparent;border:1px solid #f59e0b;color:#f59e0b}.edit-step-modal-footer .btn-regenerate:hover{background:#f59e0b1a}.edit-step-modal-footer button:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.edit-step-modal-content::-webkit-scrollbar{width:6px}.edit-step-modal-content::-webkit-scrollbar-track{background:transparent}.edit-step-modal-content::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.edit-step-modal-content::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.ai-template-chat{display:flex;flex-direction:column;height:400px;border:1px solid var(--glass-border);border-radius:12px;overflow:hidden;background:var(--bg-secondary)}.chat-messages{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:1rem}.chat-message{display:flex;gap:.75rem;max-width:85%}.chat-message.user{align-self:flex-end;flex-direction:row-reverse}.chat-message.assistant{align-self:flex-start}.message-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#8b5cf6,#7c3aed);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.message-content{display:flex;flex-direction:column;gap:.25rem}.message-text{padding:.75rem 1rem;border-radius:12px;font-size:.9rem;line-height:1.5;white-space:pre-wrap;word-break:break-word}.chat-message.user .message-text{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;border-bottom-right-radius:4px}.chat-message.assistant .message-text{background:var(--glass-surface);border:1px solid var(--glass-border);color:var(--text-primary);border-bottom-left-radius:4px}.message-time{font-size:.7rem;color:var(--text-secondary);padding:0 .5rem}.chat-message.user .message-time{text-align:right}.typing-indicator{display:flex;gap:4px;padding:.75rem 1rem}.typing-indicator span{width:8px;height:8px;background:var(--text-secondary);border-radius:50%;animation:typing 1.4s infinite ease-in-out both}.typing-indicator span:nth-child(1){animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}@keyframes typing{0%,80%,to{transform:scale(.6);opacity:.5}40%{transform:scale(1);opacity:1}}.chat-error{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#ef44441a;border-top:1px solid rgba(239,68,68,.2);color:#ef4444;font-size:.85rem}.chat-error button{background:none;border:none;color:#ef4444;cursor:pointer;text-decoration:underline;font-size:.8rem}.generated-document{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#10b9811a;border-top:1px solid rgba(16,185,129,.2);color:#10b981}.generated-document .doc-info{flex:1;display:flex;flex-direction:column}.generated-document .doc-name{font-weight:500;font-size:.9rem}.generated-document .doc-date{font-size:.75rem;opacity:.8}.generated-document .doc-download{padding:.5rem;background:#10b981;color:#fff;border-radius:8px;display:flex;align-items:center;justify-content:center;text-decoration:none;transition:all .2s}.generated-document .doc-download:hover{background:#059669;transform:scale(1.05)}.chat-input-area{display:flex;flex-direction:column;gap:.75rem;padding:1rem;border-top:1px solid var(--glass-border);background:var(--bg-primary)}.chat-input-area textarea{width:100%;padding:.75rem 1rem;border:1px solid var(--glass-border);border-radius:10px;background:var(--bg-secondary);color:var(--text-primary);font-size:.9rem;font-family:inherit;resize:none;min-height:44px;max-height:120px}.chat-input-area textarea:focus{outline:none;border-color:#8b5cf6}.chat-input-area textarea:disabled{opacity:.6;cursor:not-allowed}.chat-actions{display:flex;justify-content:space-between;align-items:center}.send-btn{width:40px;height:40px;border-radius:10px;border:none;background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.send-btn:hover:not(:disabled){transform:scale(1.05);box-shadow:0 4px 12px #8b5cf64d}.send-btn:disabled{opacity:.5;cursor:not-allowed}.generate-btn{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;border-radius:10px;border:none;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s}.generate-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.generate-btn:disabled{opacity:.5;cursor:not-allowed}.spin{animation:spin 1s linear infinite}.ai-template-chat{position:relative}.ai-template-chat.dragging{border-color:#8b5cf6;box-shadow:0 0 0 2px #8b5cf633}.drop-overlay{position:absolute;inset:0;background:#8b5cf61a;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10;border-radius:12px;border:2px dashed #8b5cf6}.drop-content{display:flex;flex-direction:column;align-items:center;gap:.5rem;color:#8b5cf6}.drop-content p{font-size:1.1rem;font-weight:600;margin:0}.drop-content span{font-size:.8rem;opacity:.8}.message-attachments{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.attachment-chip{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .625rem;background:var(--glass-surface);border:1px solid var(--glass-border);border-radius:6px;font-size:.75rem;color:var(--text-secondary)}.attachment-chip.success{border-color:#10b9814d;background:#10b9811a}.attachment-chip.error{border-color:#ef44444d;background:#ef44441a;color:#ef4444}.attachment-chip.extracting{border-color:#8b5cf64d;background:#8b5cf61a}.attachment-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.attachment-size{opacity:.7}.pending-files{display:flex;flex-wrap:wrap;gap:.5rem;padding-bottom:.75rem;border-bottom:1px solid var(--glass-border);margin-bottom:.75rem}.pending-file{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--glass-surface);border:1px solid var(--glass-border);border-radius:8px;font-size:.8rem}.pending-file.error{border-color:#ef44444d;background:#ef44441a}.pending-file-name{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500;color:var(--text-primary)}.pending-file-size{color:var(--text-secondary);font-size:.75rem}.pending-file-error{color:#ef4444;font-size:.75rem}.remove-file-btn{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:4px;transition:all .15s}.remove-file-btn:hover{background:#ef44441a;color:#ef4444}.input-row{display:flex;align-items:flex-end;gap:.5rem}.input-row textarea{flex:1;width:auto;padding:.75rem 1rem;border:1px solid var(--glass-border);border-radius:10px;background:var(--bg-secondary);color:var(--text-primary);font-size:.9rem;font-family:inherit;resize:none;min-height:44px;max-height:120px}.input-row textarea:focus{outline:none;border-color:#8b5cf6}.input-row textarea:disabled{opacity:.6;cursor:not-allowed}.attach-btn{width:40px;height:40px;border-radius:10px;border:1px solid var(--glass-border);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.attach-btn:hover:not(:disabled){border-color:#8b5cf6;color:#8b5cf6;background:#8b5cf61a}.attach-btn:disabled{opacity:.5;cursor:not-allowed}.chat-actions{display:flex;justify-content:space-between;align-items:center;margin-top:.5rem}.file-hint{display:flex;align-items:center;gap:.375rem;font-size:.75rem;color:var(--text-secondary);opacity:.7}.chat-input-area>textarea{display:none}.ai-template-step-content{margin-top:1rem}.template-header{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#8b5cf614;border:1px solid rgba(139,92,246,.15);border-radius:10px;margin-bottom:1rem;color:#8b5cf6;font-size:.9rem}.template-warning{display:flex;align-items:center;gap:.5rem;padding:.625rem .875rem;background:#f59e0b1a;border:1px solid rgba(245,158,11,.2);border-radius:8px;color:#f59e0b;font-size:.85rem;margin-bottom:1rem}.ai-template-step-error{display:flex;align-items:center;gap:.75rem;padding:1.5rem;background:#ef444414;border:1px solid rgba(239,68,68,.15);border-radius:10px;color:#ef4444}.ai-template-generated{margin-top:1rem}.generated-header{display:flex;align-items:center;gap:.5rem;color:#10b981;font-weight:500;margin-bottom:1rem}.generated-doc-card{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:var(--glass-surface);border:1px solid var(--glass-border);border-radius:10px;margin-bottom:1rem}.generated-doc-card>svg{color:#8b5cf6;flex-shrink:0}.doc-details{flex:1}.doc-details h4{margin:0;font-size:.95rem;font-weight:500;color:var(--text-primary)}.doc-details p{margin:.25rem 0 0;font-size:.8rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.02em}.download-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;background:transparent;border:1px solid var(--glass-border);color:var(--text-primary);text-decoration:none;border-radius:8px;font-size:.85rem;font-weight:500;transition:all .2s}.download-btn:hover{border-color:#8b5cf6;color:#8b5cf6}.chat-history-details{margin-top:1rem}.chat-history-details summary{cursor:pointer;color:var(--text-secondary);font-size:.85rem;padding:.5rem 0}.chat-history-preview{display:flex;flex-direction:column;gap:.5rem;padding:1rem;background:var(--glass-surface);border-radius:8px;max-height:300px;overflow-y:auto;margin-top:.5rem}.history-msg{font-size:.85rem;line-height:1.5}.history-msg.user{color:#8b5cf6}.history-msg.assistant{color:var(--text-secondary)}.history-msg strong{margin-right:.5rem}.history-msg span{white-space:pre-wrap;word-break:break-word}.expand-msg-btn{background:none;border:none;color:#8b5cf6;cursor:pointer;font-size:.85rem;padding:0;margin-left:.25rem;font-weight:500;text-decoration:underline;text-underline-offset:2px}.expand-msg-btn:hover{color:#a78bfa}.step-expanded-content{animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.step-main-layout{display:flex;gap:24px;align-items:flex-start}.step-info-section{flex:1;min-width:0}.step-approval-section{width:280px;flex-shrink:0;position:relative;z-index:15}@media(max-width:900px){.step-main-layout{flex-direction:column}.step-approval-section{width:100%}}.step-header{display:flex;justify-content:space-between;margin-bottom:12px}.step-title{font-weight:600;font-size:1.1rem;color:var(--text-primary)}.step-status{font-size:.8rem;padding:2px 10px;border-radius:100px;background:var(--bg-primary);border:1px solid var(--glass-border);color:var(--text-primary);text-transform:capitalize;font-weight:500}.step-meta{margin-top:12px;display:flex;flex-direction:column;gap:8px}.meta-label{font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.role-pills,.attachment-pills{display:flex;flex-wrap:wrap;gap:6px}.role-pill,.attachment-pill{font-size:.75rem;padding:2px 8px;border-radius:4px;background:var(--glass-border);color:var(--text-primary)}.step-analysis{margin-top:16px;padding-top:12px;border-top:1px solid var(--glass-border)}.step-analysis h4{font-size:.85rem;font-weight:700;margin-bottom:8px;color:var(--text-primary)}.scheduled-date-card{display:flex;align-items:center;gap:14px;padding:14px 18px;background:linear-gradient(135deg,#3b82f614,#6366f10d);border:1px solid rgba(59,130,246,.25);border-radius:10px;margin-bottom:12px;transition:all .2s ease}.scheduled-date-card:last-child{margin-bottom:0}.scheduled-date-card:hover{border-color:#3b82f666;box-shadow:0 2px 8px #3b82f61a}.scheduled-date-card>svg{color:#3b82f6;flex-shrink:0}.scheduled-date-info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.scheduled-date-label{font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.scheduled-date-value{font-size:1rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scheduled-time{font-weight:500;color:#3b82f6}.scheduled-date-view-btn{margin-left:auto;padding:6px 16px;background:transparent;color:#3b82f6;border:1px solid #3b82f6;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;text-decoration:none;transition:all .2s ease;flex-shrink:0}.scheduled-date-view-btn:hover{background:#3b82f6;color:#fff}.documents-list{margin-bottom:16px}.step-footer{display:flex;justify-content:space-between;align-items:center;margin-top:12px;padding-top:8px;border-top:1px solid var(--glass-border)}.step-date,.step-creator{color:var(--text-secondary);font-size:.75rem;margin-top:0}.step-creator{font-style:italic;opacity:.8}.step-date-inline{color:var(--text-muted);font-size:.75rem;padding-right:8px}.step-chevron{flex-shrink:0}.linked-templates-section{margin-top:16px;padding:12px;background:#a855f70d;border:1px solid rgba(168,85,247,.2);border-radius:8px}.linked-templates-header{display:flex;align-items:center;gap:8px;color:#a855f7;font-size:.85rem;font-weight:600;margin-bottom:10px}.linked-templates-list{display:flex;flex-direction:column;gap:6px}.linked-template-item{display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--glass-surface);border:1px solid var(--glass-border);border-radius:6px;font-size:.85rem}.linked-template-item svg{color:#a855f7;flex-shrink:0}.linked-template-name{flex:1;color:var(--text-primary);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.linked-template-type{color:var(--text-secondary);font-size:.75rem;background:#a855f71a;padding:2px 8px;border-radius:4px}.ai-enable-prompt{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;margin-top:12px;background:linear-gradient(135deg,#a855f714,#8b5cf60d);border:1px solid rgba(168,85,247,.3);border-radius:10px}.ai-enable-info{display:flex;align-items:flex-start;gap:12px;color:#a855f7}.ai-enable-info svg{flex-shrink:0;margin-top:2px}.ai-enable-info strong{display:block;font-size:.9rem;color:var(--text-primary);margin-bottom:4px}.ai-enable-info p{margin:0;font-size:.8rem;color:var(--text-secondary)}.btn-enable-ai{display:flex;align-items:center;gap:8px;padding:10px 18px;background:linear-gradient(135deg,#a855f7,#8b5cf6);color:#fff;border:none;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .2s ease}.btn-enable-ai:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #a855f74d}.btn-enable-ai:disabled{opacity:.6;cursor:not-allowed}.step-approval-bottom{margin-top:16px;padding-top:16px;border-top:1px solid var(--glass-border)}.step-card.blocked{border-left-color:#f59e0b;position:relative}.step-card.blocked:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(-45deg,transparent,transparent 10px,hsla(40,96%,53%,.02) 10px,hsla(40,96%,53%,.02) 20px);pointer-events:none;border-radius:8px;z-index:1}.blocked-badge{display:inline-flex;align-items:center;gap:4px;background:#faae1426;color:#f59e0b;padding:2px 8px;border-radius:100px;font-size:.7rem;font-weight:600;border:1px solid hsla(40,96%,53%,.3)}.rejected-badge{display:inline-flex;align-items:center;gap:4px;background:#d9262626;color:#ef4444;padding:2px 8px;border-radius:100px;font-size:.7rem;font-weight:600;border:1px solid hsla(0,70%,50%,.3)}.category-type-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:100px;font-size:.7rem;font-weight:500}.category-type-badge.legal{background:#8b5cf626;color:#8b5cf6;border:1px solid rgba(139,92,246,.3)}.category-type-badge.operational{background:#3b82f626;color:#3b82f6;border:1px solid rgba(59,130,246,.3)}.category-type-badge.financial{background:#10b98126;color:#10b981;border:1px solid rgba(16,185,129,.3)}.step-card.template-step{margin-top:1rem;position:relative}.template-step-badge{position:absolute;top:-10px;left:16px;background:var(--bg-primary, #1a1a2e);color:var(--text-secondary);padding:2px 12px;font-size:.75rem;font-weight:600;letter-spacing:.02em;display:flex;align-items:center;gap:6px}.step-card.category-legal{border:1px solid #8b5cf6}.step-card.category-legal .template-step-badge{color:#8b5cf6}.step-card.category-operational{border:1px solid #3b82f6}.step-card.category-operational .template-step-badge{color:#3b82f6}.step-card.category-financial{border:1px solid #10b981}.step-card.category-financial .template-step-badge{color:#10b981}.step-card.template-step:not([class*=category-]){border:1px solid var(--glass-border)}.step-card.template-step[class*=category-]:not(.category-legal):not(.category-operational):not(.category-financial){border:1px solid var(--primary-color, #6366f1)}.step-card[class*=category-]:not(.category-legal):not(.category-operational):not(.category-financial) .template-step-badge{color:var(--primary-color, #6366f1)}.category-type-badge:not(.legal):not(.operational):not(.financial){background:#6366f126;color:var(--primary-color, #6366f1);border:1px solid rgba(99,102,241,.3)}.notify-client-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:linear-gradient(135deg,#25d366,#128c7e);color:#fff;border:none;border-radius:6px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.notify-client-btn:hover:not(:disabled):not(.disabled){transform:translateY(-1px);box-shadow:0 4px 12px #25d3664d}.notify-client-btn:disabled,.notify-client-btn.disabled{opacity:.5;cursor:not-allowed;transform:none;background:linear-gradient(135deg,#6b7280,#4b5563);box-shadow:none}.notify-client-btn.loading{background:linear-gradient(135deg,#888,#666)}.notify-sent-badge{display:flex;align-items:center;gap:4px;padding:4px 10px;background:#25d36626;color:#25d366;border-radius:6px;font-size:.7rem;font-weight:600}.download-template-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:6px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.download-template-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.download-template-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.download-template-btn.loading{background:linear-gradient(135deg,#888,#666)}.comment-indicator{display:inline-flex;align-items:center;gap:4px;color:var(--text-secondary);margin-left:auto}.comment-count-badge-small{background:#3b82f6;color:#fff;font-size:.7rem;font-weight:700;padding:1px 6px;border-radius:8px;min-width:16px;text-align:center}.comment-text{font-size:.75rem;color:var(--text-muted, var(--text-secondary));white-space:nowrap}.step-comment-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;margin-top:12px;background:var(--glass-surface);border:1px solid var(--glass-border);border-radius:8px;cursor:pointer;transition:all .2s ease}.step-comment-bar:hover{background:#3b82f60d;border-color:#3b82f64d}.step-comment-bar.expanded{background:#3b82f61a;border-color:#3b82f666}.comment-bar-content{display:flex;align-items:center;gap:10px;color:var(--text-secondary)}.step-comment-bar:hover .comment-bar-content,.step-comment-bar.expanded .comment-bar-content{color:#3b82f6}.comment-bar-text{font-size:.9rem;font-weight:500}.comment-count-badge{background:#3b82f6;color:#fff;font-size:.75rem;font-weight:700;padding:2px 8px;border-radius:10px;min-width:20px;text-align:center}.comment-bar-action{font-size:.8rem;font-weight:600;color:#3b82f6;padding:4px 12px;background:#3b82f61a;border-radius:100px}.step-form-fields{margin-bottom:16px;padding:16px;background:rgba(var(--flash-primary-rgb, 99, 102, 241),.03);border:1px solid rgba(var(--flash-primary-rgb, 99, 102, 241),.15);border-radius:8px}.form-fields-header{font-size:.85rem;font-weight:600;color:var(--text-primary);margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid var(--glass-border)}.form-section{margin-bottom:16px}.form-section:last-child{margin-bottom:0}.form-section-header{font-size:.9rem;font-weight:600;color:#8b5cf6;padding-bottom:8px;margin-bottom:12px;border-bottom:2px solid rgba(139,92,246,.3);display:flex;align-items:center;gap:8px}.form-section-header:before{content:"";width:4px;height:16px;background:#8b5cf6;border-radius:2px}.form-fields-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}.form-field-item{display:flex;flex-direction:column;gap:4px;padding:8px 12px;background:var(--glass-surface);border-radius:6px;border:1px solid var(--glass-border)}.field-label{font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em}.field-value{font-size:.9rem;color:var(--text-primary);word-break:break-word}.repeater-entries{display:flex;flex-direction:column;gap:8px}.repeater-entry{padding:8px;background:#00000008;border-radius:4px;border-left:3px solid var(--flash-primary)}.entry-number{font-size:.7rem;font-weight:700;color:var(--flash-primary);margin-bottom:4px;display:block}.sub-field{display:flex;gap:8px;font-size:.85rem;margin-top:2px}.sub-label{color:var(--text-secondary);text-transform:capitalize}.sub-value{color:var(--text-primary)}.form-field-item.has-subfields{grid-column:1 / -1;background:#10b98108;border:1px solid rgba(16,185,129,.15);border-radius:10px;padding:12px}.field-value.yes-value{color:#10b981;font-weight:600}.field-value.no-value{color:#ef4444;font-weight:600}.yes-no-subfields{margin-top:12px;padding-top:12px;border-top:1px solid rgba(16,185,129,.2);display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}.yes-no-subfield{display:flex;flex-direction:column;gap:2px}.yes-no-subfield .sub-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase}.yes-no-subfield .sub-value{font-size:.9rem;color:var(--text-primary)}.step-documents-section{margin-top:16px;padding:16px;background:rgba(var(--flash-primary-rgb, 99, 102, 241),.05);border:1px solid rgba(var(--flash-primary-rgb, 99, 102, 241),.15);border-radius:12px}.step-documents-section .form-fields-header{display:flex;align-items:center;gap:8px;margin-bottom:12px;color:var(--flash-primary)}.documents-list{display:flex;flex-direction:column;gap:10px}.document-item{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--bg-primary);border:1px solid var(--glass-border);border-radius:8px;transition:var(--transition-fast)}.document-item:hover{border-color:var(--flash-primary);box-shadow:0 2px 8px rgba(var(--flash-primary-rgb, 99, 102, 241),.1)}.document-info{display:flex;align-items:center;gap:12px}.document-icon{color:var(--flash-primary);flex-shrink:0}.document-details{display:flex;flex-direction:column;gap:2px}.document-label{font-size:.75rem;text-transform:uppercase;color:var(--text-secondary);font-weight:600;letter-spacing:.5px}.document-name{font-size:.9rem;color:var(--text-primary);font-weight:500}.view-document-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;background:var(--flash-primary);color:#fff;border:none;border-radius:6px;font-size:.85rem;font-weight:600;text-decoration:none;cursor:pointer;transition:var(--transition-fast)}.view-document-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}.step-card{background:var(--glass-surface);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:calc(var(--base-unit) * 2.5);margin-bottom:calc(var(--base-unit) * 2);transition:var(--transition-fast);position:relative}.step-card.completed{border-left-color:#10b981}.step-card:hover{box-shadow:0 4px 12px #00000014}.step-card.expanded:hover{transform:translateY(-2px);box-shadow:0 8px 16px #0000001a}.step-header-row{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:4px 0;border-radius:6px;transition:background .15s ease}.step-header-row:hover{background:rgba(var(--flash-primary-rgb, 99, 102, 241),.05)}.step-card.expanded .step-header-row{margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--glass-border)}.category-badge{background:var(--bg-primary);color:var(--text-secondary);border:1px solid var(--glass-border);padding:2px 8px;border-radius:4px;font-size:.7rem;text-transform:capitalize}.amount-badge{color:#fff;padding:2px 8px;border-radius:100px;font-size:.75rem;font-weight:600;margin-left:4px}.amount-badge.contract{background-color:#10b981}.amount-badge.expense{background-color:#f59e0b}.step-date{color:var(--text-secondary);display:block;margin-top:8px;font-size:.75rem}.step-badge{background:var(--glass-border);color:var(--text-secondary);padding:1px 6px;border-radius:4px;font-size:.7rem;font-weight:600;font-family:monospace}.project-case-container{padding:calc(var(--base-unit) * 4);max-width:1200px;margin:0 auto}.project-case-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--base-unit);margin-bottom:calc(var(--base-unit) * 4)}.project-case-title{font-size:2rem;font-weight:600;color:var(--text-primary);margin-bottom:calc(var(--base-unit))}.project-info-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:calc(var(--base-unit) * 3) calc(var(--base-unit) * 4);margin-bottom:calc(var(--base-unit) * 4);background:#ff0;padding:calc(var(--base-unit) * 2.5) calc(var(--base-unit) * 3);border-radius:8px;border:1px solid rgba(0,0,0,.1);box-shadow:0 4px 20px #00000026;color:#000}.project-info-grid .info-label{color:#0009!important}.project-info-grid .info-value{color:#000!important}.info-item{display:flex;flex-direction:column;text-align:center;min-width:100px}.info-label{font-size:.8125rem;color:#0009;margin-bottom:2px;font-weight:600}.info-value{font-weight:700;color:#000}.steps-section{margin-top:calc(var(--base-unit) * 4)}.steps-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:calc(var(--base-unit) * 2)}.steps-list{display:flex;flex-direction:column;gap:calc(var(--base-unit) * 2)}.add-step-form{background:var(--glass-surface);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);padding:calc(var(--base-unit) * 3);border-radius:8px;margin-bottom:calc(var(--base-unit) * 4);border:1px solid var(--glass-border)}.form-group{margin-bottom:calc(var(--base-unit) * 2)}.form-row{display:flex;gap:calc(var(--base-unit) * 2);margin-bottom:calc(var(--base-unit) * 2)}.form-row .form-group{flex:1;margin-bottom:0}.roles-selector-group{margin-top:calc(var(--base-unit) * 1)}.roles-checkbox-group{display:flex;flex-wrap:wrap;gap:12px;padding:12px;background:#ffffff08;border:1px solid var(--glass-border);border-radius:12px;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);min-height:54px;align-items:center}.role-checkbox-label{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;font-size:.85rem;font-weight:500;cursor:pointer;color:var(--text-secondary);background:#ffffff0d;border:1px solid var(--glass-border);border-radius:100px;transition:all .25s cubic-bezier(.4,0,.2,1);text-transform:none;white-space:nowrap;-webkit-user-select:none;user-select:none}.role-checkbox-label:hover{background:#ffffff1a;border-color:var(--text-secondary);color:var(--text-primary);transform:translateY(-1px)}.role-checkbox-label input[type=checkbox]{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.role-checkbox-label:has(input[type=checkbox]:checked){background:var(--flash-primary);border-color:var(--flash-primary);color:#fff;font-weight:600;box-shadow:0 4px 12px var(--flash-primary-shadow)}.role-checkbox-label:has(input[type=checkbox]:checked):hover{filter:brightness(1.1);transform:translateY(-1px)}.form-group label{display:block;margin-bottom:8px}.form-group input,.form-group textarea,.form-group select{width:100%;padding:10px 12px;border:1px solid var(--glass-border);border-radius:8px;background:#8080801a;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);color:var(--text-primary);font-size:.9375rem;transition:all .2s ease}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--flash-primary);box-shadow:0 0 0 2px var(--flash-primary-shadow)}.form-group select option{background:var(--bg-secondary);color:var(--text-primary)}.back-button{background:none;border:none;color:var(--text-secondary);cursor:pointer;margin-bottom:calc(var(--base-unit) * 2);display:flex;align-items:center;gap:4px}.back-button:hover{color:var(--flash-primary)}.project-case-primary-button,.form-group label.project-case-primary-button{background:var(--flash-primary);color:#fff;border:none;padding:calc(var(--base-unit) * 1.5) calc(var(--base-unit) * 3);border-radius:12px;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.175,.885,.32,1.275);display:inline-flex;align-items:center;justify-content:center;gap:calc(var(--base-unit) * 2);width:fit-content;line-height:normal}.project-case-primary-button svg{display:inline-block}.project-case-primary-button:hover{transform:translateY(-2px);box-shadow:0 8px 24px var(--flash-primary-shadow);filter:brightness(1.1)}.ai-preview-section{margin-top:1rem}.ai-output-preview{padding:.875rem;background:#8b5cf614;border:1px solid rgba(139,92,246,.15);border-radius:6px}.ai-output-preview-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;color:#8b5cf6;font-size:.8rem;font-weight:600}.ai-output-preview-content{color:var(--text-secondary);font-size:.85rem;line-height:1.5;white-space:pre-wrap}.ai-user-instructions{margin-top:1rem}.ai-user-instructions label{display:block;margin-bottom:.5rem;color:var(--text-primary);font-size:.85rem;font-weight:500}.ai-user-instructions textarea{width:100%;padding:.75rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:.875rem;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s}.ai-user-instructions textarea:focus{outline:none;border-color:#8b5cf6}.ai-user-instructions textarea::placeholder{color:var(--text-tertiary)}.step-category-group{width:100%}.step-category-group>label{display:flex;align-items:center;gap:6px;font-size:.85rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px!important}.category-toggle-group{display:grid;grid-template-columns:1fr 1fr;gap:16px}.category-toggle-label{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px 16px;cursor:pointer;border-radius:16px;border:2px solid var(--glass-border);background:linear-gradient(135deg,#ffffff05,#ffffff0d);color:var(--text-secondary);font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1);text-align:center;min-height:120px}.category-toggle-label input[type=radio]{position:absolute;opacity:0;cursor:pointer}.category-toggle-label svg{width:32px;height:32px;opacity:.7;transition:all .3s ease}.category-toggle-label span{font-size:.9rem;font-weight:500}.category-toggle-label:hover{border-color:var(--text-secondary);background:linear-gradient(135deg,#ffffff0d,#ffffff14);transform:translateY(-2px)}.category-toggle-label:hover svg{opacity:1}.category-toggle-label.active{border-color:var(--flash-primary);background:linear-gradient(135deg,#ffd0001a,#ffd00033);color:var(--flash-primary);box-shadow:0 8px 24px var(--flash-primary-shadow),inset 0 0 20px #ffd0000d;transform:translateY(-2px)}.category-toggle-label.active svg{opacity:1;color:var(--flash-primary)}.category-toggle-label.active span{font-weight:600}.approval-requirements-group{width:100%}.approval-requirements-group>label:first-of-type{display:flex!important;align-items:center;gap:10px;padding:16px 20px;background:linear-gradient(135deg,#ffffff05,#ffffff0a);border:2px solid var(--glass-border);border-radius:16px;cursor:pointer;font-weight:600;font-size:.95rem;transition:all .3s ease;margin-bottom:0!important}.approval-requirements-group>label:first-of-type:hover{border-color:var(--text-secondary);background:linear-gradient(135deg,#ffffff0d,#ffffff14)}.approval-requirements-group>label:first-of-type input[type=checkbox]{position:absolute;opacity:0;cursor:pointer;width:0;height:0}.approval-requirements-group>label:first-of-type:has(input:checked){border-color:var(--flash-primary);background:linear-gradient(135deg,#ffd0001a,#ffd00026);box-shadow:0 4px 16px var(--flash-primary-shadow)}.approval-requirements-group>label:first-of-type:has(input:checked) span{color:var(--flash-primary)}.approval-roles-group{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-top:16px;padding:20px;background:linear-gradient(135deg,#0003,#0000001a);border:1px solid var(--glass-border);border-radius:12px}.approval-role-checkbox{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:16px 12px;background:linear-gradient(135deg,#ffffff08,#ffffff0f);border:2px solid var(--glass-border);border-radius:12px;cursor:pointer;font-size:.8rem;color:var(--text-secondary);transition:all .25s ease;text-align:center}.approval-role-checkbox svg{width:24px;height:24px;opacity:.6;transition:all .25s ease}.approval-role-checkbox input[type=checkbox]{position:absolute;opacity:0;cursor:pointer;width:0;height:0}.approval-role-checkbox:hover{border-color:var(--text-secondary);background:linear-gradient(135deg,#ffffff0f,#ffffff1a);transform:translateY(-2px)}.approval-role-checkbox:hover svg{opacity:1}.approval-role-checkbox:has(input:checked){border-color:var(--flash-primary);background:linear-gradient(135deg,#ffd00026,#ffd00040);color:var(--flash-primary);box-shadow:0 4px 12px var(--flash-primary-shadow)}.approval-role-checkbox:has(input:checked) svg{opacity:1;color:var(--flash-primary)}.approval-role-checkbox:has(input:checked) span{font-weight:600}.step-cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.step-config-card{background:linear-gradient(145deg,#3339,#262626cc);border:1px solid var(--glass-border);border-radius:16px;padding:20px;min-height:180px}.step-config-card .card-header{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--glass-border)}.step-config-card .card-options{display:flex;flex-direction:column;gap:8px}.step-config-card .option-item{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#ffffff08;border:1px solid transparent;border-radius:10px;cursor:pointer;color:var(--text-secondary);font-size:.9rem;transition:all .2s ease}.step-config-card .option-item input{position:absolute;opacity:0;cursor:pointer}.step-config-card .option-item:hover{background:#ffffff14;border-color:var(--glass-border);color:var(--text-primary)}.step-config-card .option-item.active{background:#ffd00026;border-color:var(--flash-primary);color:var(--flash-primary);font-weight:500}.step-config-card .loading-text{color:var(--text-secondary);font-size:.85rem;padding:12px}.form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:calc(var(--base-unit) * 3);padding-bottom:calc(var(--base-unit) * 2);border-bottom:1px solid var(--glass-border)}.form-header h3{margin:0}.notification-toggle-section{display:flex;align-items:center;gap:16px;padding:12px 20px;background:#ffffff08;border:1px solid var(--glass-border);border-radius:12px}.notification-toggle-section.header-toggle{padding:8px 16px;background:#ffffff0d;border-radius:100px;margin:0}.notification-toggle-section .toggle-label{font-size:.95rem;font-weight:600;color:var(--flash-primary);min-width:100px}.toggle-switch{position:relative;display:inline-block;width:56px;height:30px;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background:#4d4d4dcc;border:2px solid hsla(340,80%,55%,.6);border-radius:30px;transition:all .3s cubic-bezier(.4,0,.2,1)}.toggle-slider:before{position:absolute;content:"";height:20px;width:20px;left:3px;bottom:3px;background:#e8306ee6;border-radius:50%;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #ec489966}.toggle-switch input:checked+.toggle-slider{background:#22c35d4d;border-color:#22c55e}.toggle-switch input:checked+.toggle-slider:before{transform:translate(26px);background:#22c55e;box-shadow:0 2px 12px #22c55e80}.toggle-switch:hover .toggle-slider{border-color:#e8306ecc}.toggle-switch input:checked:hover+.toggle-slider{border-color:var(--flash-primary)}.notification-toggle-section .toggle-status{font-size:.8rem;color:var(--text-secondary);font-style:italic;opacity:.8}.header-toggle .toggle-status{font-size:.75rem}@media(max-width:900px){.step-cards-grid{grid-template-columns:1fr}.notification-toggle-section{flex-wrap:wrap}}.add-step-form input[type=datetime-local]{color-scheme:dark}.add-step-form input[type=datetime-local]::-webkit-calendar-picker-indicator{filter:invert(1);opacity:.8;cursor:pointer;padding:4px;border-radius:4px;transition:opacity .2s ease,background .2s ease}.add-step-form input[type=datetime-local]::-webkit-calendar-picker-indicator:hover{opacity:1;background:#ffffff1a}.date-input-wrapper{position:relative;display:flex;align-items:center}.date-input-wrapper input{flex:1;padding-right:50px}.date-input-wrapper .date-icon{position:absolute;right:12px;font-size:1.2rem;pointer-events:none;opacity:.9}.calendar-year-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:calc(var(--base-unit) * 3)}.calendar-year-month-box{padding:calc(var(--base-unit) * 3);cursor:pointer;transition:var(--transition-smooth);display:flex;flex-direction:column;justify-content:space-between;min-height:140px}.calendar-year-month-box:hover{transform:translateY(-4px);border-color:var(--flash-primary);background:#0bb8da0d}.calendar-year-month-box h3{font-size:1.25rem;font-weight:700}.event-count{font-size:.9rem;color:var(--flash-primary);font-weight:600}.calendar-days-header{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;font-weight:700;font-size:.75rem;text-transform:uppercase;color:var(--text-secondary);margin-bottom:12px}.calendar-month-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--glass-border);border:1px solid var(--glass-border);border-radius:var(--radius-lg);overflow:hidden}.calendar-day{min-height:140px;background:var(--bg-secondary);padding:calc(var(--base-unit) * 1.5);position:relative;cursor:pointer;transition:var(--transition-fast)}.calendar-day:hover{z-index:2;box-shadow:inset 0 0 0 2px var(--flash-primary)}.calendar-day.empty{background:var(--bg-primary);opacity:.3;cursor:default}.day-number{display:flex;align-items:center;gap:6px;font-size:1rem;font-weight:700;margin-bottom:12px}.calendar-day.today .day-number{color:var(--flash-primary)}.event-list{display:flex;flex-wrap:wrap;gap:4px}.event-tag{font-size:.65rem;background:var(--flash-primary);color:#fff;padding:2px 6px;border-radius:4px;font-weight:700;display:flex;align-items:center;gap:4px}.event-time-tag{opacity:.8;font-weight:800;padding-right:4px;border-right:1px solid rgba(255,255,255,.3)}.event-more{font-size:.65rem;color:var(--flash-primary);font-weight:700}.unseen-dot{width:8px;height:8px;background:#ef4444;border-radius:50%;flex-shrink:0}.event-tag.new{background:#ef4444}.detailed-event-item.new{border-left:3px solid #ef4444}.detailed-event-item.new .unseen-dot{margin-right:8px}.calendar-container{max-width:1400px;margin:0 auto;padding:0 calc(var(--base-unit) * 4) calc(var(--base-unit) * 4)}.calendar-main-content{padding-top:calc(var(--base-unit) * 4);min-height:85vh}.calendar-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:calc(var(--base-unit) * 6);padding-bottom:calc(var(--base-unit) * 3);border-bottom:1px solid var(--glass-border)}.calendar-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:calc(var(--base-unit) * 4);animation:fadeIn .4s ease-out}.calendar-title{font-size:2.5rem;font-weight:800;letter-spacing:-.02em;color:var(--text-primary);text-transform:uppercase}.view-switcher{display:flex;background:var(--glass-border);padding:4px;border-radius:var(--radius-md);width:fit-content}.view-switcher button{padding:6px 16px;border:none;background:none;font-weight:600;font-size:.85rem;cursor:pointer;border-radius:calc(var(--radius-md) - 2px);transition:var(--transition-fast);color:var(--text-secondary)}.view-switcher button.active{background:var(--bg-secondary);color:var(--flash-primary);box-shadow:var(--shadow-subtle)}.header-right{display:flex;align-items:center;gap:calc(var(--base-unit) * 3)}.calendar-nav-buttons{display:flex;gap:1px;border-radius:var(--radius-md);overflow:hidden}.nav-btn{padding:8px 16px;background:var(--flash-primary);color:#fff;border:none;cursor:pointer;font-weight:700;transition:var(--transition-fast)}.nav-btn:hover{filter:brightness(1.1)}.calendar-primary-button{background:var(--flash-primary);color:#fff;border:none;padding:calc(var(--base-unit) * 1) calc(var(--base-unit) * 3);border-radius:var(--radius-md);font-weight:600;cursor:pointer;transition:var(--transition-fast)}.calendar-primary-button:hover{filter:brightness(1.1);transform:translateY(-1px)}.calendar-day-view{max-width:800px;margin:0 auto}.day-view-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:calc(var(--base-unit) * 4)}.day-event-detailed-list{display:flex;flex-direction:column;gap:12px}.detailed-event-item{background:var(--bg-secondary);border:1px solid var(--glass-border);padding:calc(var(--base-unit) * 3) calc(var(--base-unit) * 4);border-radius:var(--radius-md);display:flex;align-items:center;gap:calc(var(--base-unit) * 4);cursor:pointer;transition:var(--transition-fast)}.detailed-event-item:hover{border-color:var(--flash-primary);background:#0bb8da0d;transform:translate(4px)}.event-time-label{font-size:1.25rem;font-weight:800;color:var(--flash-primary);min-width:100px;padding-right:calc(var(--base-unit) * 3);border-right:2px solid var(--glass-border)}.event-main-info{display:flex;flex-direction:column;flex:1}.event-status-badge{padding:4px 12px;border-radius:20px;font-size:.75rem;font-weight:700;text-transform:uppercase;background:var(--glass-border);color:var(--text-secondary)}.detailed-event-item:hover .event-status-badge{background:var(--flash-primary);color:#fff}.project-code{font-size:.75rem;color:var(--text-secondary);font-weight:700;text-transform:uppercase;margin-bottom:2px}.event-title{font-size:1.1rem;font-weight:600}.no-events{text-align:center;padding:40px;color:var(--text-secondary);font-style:italic}.role-dropdown-container{position:relative;display:inline-block}.role-dropdown-button{display:flex;align-items:center;gap:8px;padding:6px 12px;border-radius:20px;font-size:.75rem;font-weight:600;border:1px solid var(--glass-border);background:#0000000a;color:var(--text-secondary);cursor:pointer;transition:var(--transition-fast);outline:none;white-space:nowrap}.role-dropdown-button:hover:not(.disabled){background:#00000014;border-color:#0000001a}.role-dropdown-button.disabled{cursor:default;opacity:.8}.role-dropdown-button.owner{background:#ff6b6b1a;color:#ff6b6b;border-color:#ff6b6b33}.role-dropdown-button.manager{background:#4ecdc41a;color:#4ecdc4;border-color:#4ecdc433}.role-dropdown-button.legal-specialist{background:#45b7d11a;color:#45b7d1;border-color:#45b7d133}.role-dropdown-button.assistant{background:#9696961a;color:#969696;border-color:#96969633}.role-dropdown-button.client{background:#a0a0a01a;color:#777;border-color:#a0a0a033}.chevron{transition:transform .2s ease;opacity:.6}.chevron.open{transform:rotate(180deg)}.role-dropdown-menu{position:absolute;top:calc(100% + 8px);left:0;min-width:180px;background:#3c3c3c;border-radius:12px;padding:6px;box-shadow:0 10px 30px #0000004d;z-index:1000;display:flex;flex-direction:column;animation:dropdownFadeIn .2s ease-out}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.role-dropdown-item{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-radius:8px;background:none;border:none;color:#e0e0e0;font-size:.8125rem;font-weight:500;cursor:pointer;text-align:left;transition:background .15s ease}.role-dropdown-item:hover{background:#ffffff1a;color:#fff}.role-dropdown-item.active{color:#fff}.check-icon{color:#fff;margin-left:8px;flex-shrink:0}.item-label{flex:1}.team-table{width:100%;border-collapse:separate;border-spacing:0}.team-table th{text-align:left;padding:calc(var(--base-unit) * 1.5);color:var(--text-secondary);font-weight:500;font-size:.875rem;border-bottom:1px solid var(--glass-border)}.team-table td{padding:calc(var(--base-unit) * 2) calc(var(--base-unit) * 1.5);border-bottom:1px solid rgba(0,0,0,.03);vertical-align:middle}.team-table tr:last-child td{border-bottom:none}.member-info{display:flex;align-items:center;gap:calc(var(--base-unit) * 1.5)}.member-avatar{width:36px;height:36px;border-radius:50%;background:var(--flash-secondary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem}.member-name{font-weight:600;color:var(--text-primary);display:block}.member-email{font-size:.75rem;color:var(--text-secondary)}.role-badge{padding:4px 10px;border-radius:20px;font-size:.75rem;font-weight:600;background:#0000000d;color:var(--text-secondary)}.role-badge.owner{background:#ff6b6b1a;color:#ff6b6b}.role-badge.manager{background:#4ecdc41a;color:#4ecdc4}.role-badge.legal-specialist{background:#45b7d11a;color:#45b7d1}.role-badge.assistant{background:#9696961a;color:#969696}.status-indicator{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;color:var(--text-secondary)}.status-dot{width:8px;height:8px;border-radius:50%;background:#ccc}.status-dot.active{background:#4caf50;box-shadow:0 0 8px #4caf5066}.action-icon-button{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:8px;border-radius:8px;transition:all .2s}.action-icon-button:hover,.action-icon-button.active{background:#0000000d;color:var(--text-primary)}.action-dropdown-menu{position:absolute;top:calc(100% - 10px);right:20px;background:var(--glass-surface);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:12px;padding:6px;min-width:160px;box-shadow:0 10px 40px -10px #0003;z-index:100;display:flex;flex-direction:column;animation:menuSlideIn .2s ease-out}.dropdown-action-item{display:flex;align-items:center;gap:10px;padding:8px 12px;background:none;border:none;border-radius:8px;font-size:.8125rem;font-weight:500;color:var(--text-primary);cursor:pointer;text-align:left;transition:all .2s}.dropdown-action-item:hover{background:#0000000a}.dropdown-action-item svg{opacity:.6}.dropdown-action-item.danger{color:#ff4d4f}.dropdown-action-item.danger:hover{background:#ff4d4f14}.dropdown-divider{height:1px;background:var(--glass-border);margin:4px 6px}@keyframes menuSlideIn{0%{opacity:0;transform:translateY(-8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.empty-state{text-align:center;padding:calc(var(--base-unit) * 6);color:var(--text-secondary)}.invite-button{background:var(--flash-primary);color:#fff;border:none;padding:calc(var(--base-unit) * 1.5) calc(var(--base-unit) * 3);border-radius:12px;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.175,.885,.32,1.275);display:flex;align-items:center;gap:calc(var(--base-unit) * 1)}.invite-button:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(var(--flash-primary-rgb),.3)}.modal-overlay{position:fixed;inset:0;background:#0006;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:2000}.modal-content{background:#fff;width:100%;max-width:480px;border-radius:24px;padding:calc(var(--base-unit) * 4);box-shadow:0 20px 60px #00000026}.modal-header{margin-bottom:calc(var(--base-unit) * 4)}.modal-title{font-size:1.5rem;font-weight:700;margin:0}.form-group{margin-bottom:calc(var(--base-unit) * 3)}.form-label{display:block;font-size:.875rem;font-weight:600;margin-bottom:calc(var(--base-unit) * 1);color:var(--text-secondary)}.form-input,.form-select{width:100%;padding:calc(var(--base-unit) * 1.5);border:2px solid #f0f0f0;border-radius:12px;font-size:1rem;transition:border-color .2s}.form-input:focus,.form-select:focus{outline:none;border-color:var(--flash-primary)}.modal-actions{display:flex;justify-content:flex-end;gap:calc(var(--base-unit) * 2);margin-top:calc(var(--base-unit) * 4)}.cancel-button{background:#f5f5f5;color:var(--text-primary);border:none;padding:calc(var(--base-unit) * 1.5) calc(var(--base-unit) * 3);border-radius:12px;font-weight:600;cursor:pointer}.history-modal{max-width:500px;width:90%}.history-list-container{max-height:400px;overflow-y:auto;padding:20px;margin:0 -24px;border-top:1px solid rgba(0,0,0,.05);border-bottom:1px solid rgba(0,0,0,.05)}.history-timeline{display:flex;flex-direction:column}.history-item-row{display:flex;gap:16px}.history-marker{display:flex;flex-direction:column;align-items:center;flex-shrink:0}.marker-dot{width:8px;height:8px;border-radius:50%;background:var(--flash-primary);margin-top:6px}.marker-line{width:2px;flex:1;background:#0000000d;margin:4px 0}.history-item-content{flex:1;padding-bottom:24px}.history-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.history-action{font-size:.9375rem;font-weight:600;color:var(--text-primary)}.history-time{font-size:.75rem;color:var(--text-secondary);display:flex;align-items:center;gap:4px}.history-target-badge{display:inline-block;font-size:.75rem;font-weight:600;color:var(--flash-primary);background:rgba(var(--flash-primary-rgb, 0, 150, 255),.1);padding:2px 8px;border-radius:4px;margin-bottom:6px}.history-date{font-size:.75rem;color:var(--text-secondary);display:flex;align-items:center;gap:4px}.empty-history{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;color:var(--text-secondary);text-align:center;gap:12px}.activity-feed{display:flex;flex-direction:column;gap:16px}.activity-item{display:flex;gap:12px;padding-bottom:12px;border-bottom:1px solid rgba(0,0,0,.03)}.activity-item:last-child{border-bottom:none;padding-bottom:0}.activity-avatar-container{position:relative;flex-shrink:0}.activity-avatar{width:32px;height:32px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.75rem;color:#fff}.activity-avatar.owner{background:#ff6b6b}.activity-avatar.manager{background:#4ecdc4}.activity-avatar.legal-specialist{background:#45b7d1}.activity-avatar.assistant{background:#969696}.pulse-dot{position:absolute;bottom:-2px;right:-2px;width:10px;height:10px;border-radius:50%;background:#4caf50;border:2px solid white}.pulse-dot.active{box-shadow:0 0 #4caf5066;animation:pulse-animation 2s infinite}@keyframes pulse-animation{0%{box-shadow:0 0 #4caf50b3}70%{box-shadow:0 0 0 10px #4caf5000}to{box-shadow:0 0 #4caf5000}}.activity-content{flex:1;min-width:0}.activity-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.activity-name{font-size:.8125rem;font-weight:600;color:var(--text-primary)}.activity-time{font-size:.6875rem;color:var(--text-secondary);display:flex;align-items:center;gap:4px}.activity-action{font-size:.75rem;color:var(--text-secondary);margin:0}.activity-target{font-size:.75rem;font-weight:600;color:var(--flash-primary);display:block;margin-top:2px}.activity-item.clickable{cursor:pointer;transition:background-color .2s ease;border-radius:8px;padding:8px;margin:-8px}.activity-item.clickable:hover{background-color:#00000008}.team-management-sidebar{padding-top:calc(var(--base-unit) * 4)}.team-management-section{background:var(--glass-surface);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:16px;padding:calc(var(--base-unit) * 3);margin-bottom:calc(var(--base-unit) * 4);box-shadow:0 4px 24px -1px #0000000d}.section-title{font-size:1.25rem;font-weight:600;margin-bottom:calc(var(--base-unit) * 3);color:var(--text-primary);display:flex;align-items:center;gap:calc(var(--base-unit) * 1.5)}.team-management-container{padding:0 calc(var(--base-unit) * 4) calc(var(--base-unit) * 4);max-width:1200px;margin:0 auto;animation:fadeIn .4s ease-out}.main-content{padding-top:calc(var(--base-unit) * 4)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.safety-legend{color:var(--text-secondary);font-size:.875rem}.intelligence-center{background:#fff6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-color);border-radius:12px;display:flex;flex-direction:column;height:100%;min-height:400px;max-height:calc(100vh - 200px);overflow:hidden;transition:all .3s ease}.ic-header{padding:1rem;display:flex;align-items:center;gap:.75rem;border-bottom:1px solid var(--border-color);background:#fff9}.ic-header h3{margin:0;font-size:1rem;font-weight:600;color:var(--text-primary)}.ic-feed{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:1rem}.ic-notification-card{background:#fff;border:1px solid rgba(0,0,0,.05);border-radius:8px;padding:1rem;cursor:pointer;transition:transform .2s,box-shadow .2s,border-color .2s,background-color .2s}.ic-notification-card.unread{background:#fff;border-left:4px solid var(--flash-error)}.ic-notification-card.read{background:#ffffff80;opacity:.8}.unread-dot{width:8px;height:8px;background-color:var(--flash-error);border-radius:50%;box-shadow:0 0 8px #ff453a66}.ic-notification-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000000d;border-color:var(--flash-primary)}.ic-notif-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.ic-notif-project{font-size:.75rem;font-weight:700;color:var(--flash-primary);text-transform:uppercase;letter-spacing:.5px}.ic-notif-time{font-size:.7rem;color:var(--text-muted)}.ic-notif-body{margin-bottom:.75rem}.ic-notif-author{font-size:.85rem;font-weight:600;margin-right:4px}.ic-notif-content{display:inline;font-size:.85rem;color:var(--text-secondary);margin:0}.ic-notif-footer{display:flex;justify-content:space-between;align-items:center;padding-top:.5rem;border-top:1px solid rgba(0,0,0,.03)}.ic-notif-step{font-size:.75rem;color:var(--text-muted);font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:60%}.ic-notif-actions{display:flex;align-items:center;gap:4px;font-size:.75rem;color:var(--flash-primary);font-weight:500}.ic-loading,.ic-empty{text-align:center;padding:2rem;color:var(--text-muted);font-size:.9rem}.ic-feed::-webkit-scrollbar{width:6px}.ic-feed::-webkit-scrollbar-track{background:transparent}.ic-feed::-webkit-scrollbar-thumb{background:#0000001a;border-radius:3px}.invitations-list{display:flex;flex-direction:column;gap:calc(var(--base-unit) * 2)}.invitation-card{display:flex;align-items:center;justify-content:space-between;padding:calc(var(--base-unit) * 3);background:var(--glass-surface);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-subtle)}.invitation-info{display:flex;gap:calc(var(--base-unit) * 2);align-items:center}.invitation-icon{width:48px;height:48px;border-radius:50%;background:#0bb8da1a;color:var(--flash-primary);display:flex;align-items:center;justify-content:center}.invitation-info h3{margin:0;font-size:1.125rem;font-weight:700}.invitation-info p{margin:4px 0 0;font-size:.875rem;color:var(--text-secondary)}.invitation-actions{display:flex;gap:calc(var(--base-unit) * 1.5)}.btn-accept{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--flash-primary);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-weight:600;transition:var(--transition-fast)}.btn-accept:hover{filter:brightness(1.1);transform:translateY(-1px)}.btn-decline{display:flex;align-items:center;gap:8px;padding:8px 16px;background:transparent;color:var(--text-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-md);cursor:pointer;font-weight:600;transition:var(--transition-fast)}.btn-decline:hover{background:#fef2f2;color:#991b1b;border-color:#fecaca}.upcoming-dates-list{display:flex;flex-direction:column;gap:calc(var(--base-unit) * 1.5)}.upcoming-date-card{display:flex;align-items:center;gap:calc(var(--base-unit) * 2);padding:calc(var(--base-unit) * 2);background:var(--bg-primary);border:1px solid var(--glass-border);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast)}.upcoming-date-card:hover{background:var(--glass-surface);border-color:var(--flash-primary);transform:translate(4px)}.upcoming-date-card.overdue{border-left:3px solid #ef4444}.upcoming-date-card.today{border-left:3px solid #f59e0b}.upcoming-date-card.urgent{border-left:3px solid #f97316}.upcoming-date-card.upcoming{border-left:3px solid var(--flash-primary)}.date-indicator{display:flex;flex-direction:column;align-items:center;min-width:48px;padding:calc(var(--base-unit) * 1);background:var(--glass-surface);border-radius:var(--radius-sm)}.date-day{font-size:1.25rem;font-weight:700;color:var(--text-primary);line-height:1}.date-month{font-size:.7rem;text-transform:uppercase;color:var(--text-secondary);font-weight:600}.date-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.date-project-code{font-size:.75rem;font-weight:600;color:var(--flash-primary)}.date-title{font-size:.9rem;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.date-urgency{flex-shrink:0}.urgency-badge{font-size:.7rem;font-weight:600;padding:4px 8px;border-radius:12px;white-space:nowrap}.urgency-badge.overdue{background:#ef444426;color:#ef4444}.urgency-badge.today{background:#f59e0b26;color:#f59e0b}.urgency-badge.urgent{background:#f9731626;color:#f97316}.urgency-badge.upcoming{background:rgba(var(--flash-primary-rgb),.15);color:var(--flash-primary)}@media(max-width:768px){.upcoming-date-card{flex-wrap:wrap}.date-urgency{width:100%;margin-top:calc(var(--base-unit) * 1)}}.notifications-page-container{max-width:1200px;margin:0 auto;padding:calc(var(--base-unit) * 4);min-height:80vh}.notifications-header{font-size:2rem;font-weight:800;margin-bottom:calc(var(--base-unit) * 6);display:flex;align-items:center;gap:calc(var(--base-unit) * 2);color:var(--text-primary)}.notifications-toolbar{display:flex;justify-content:flex-end;gap:calc(var(--base-unit) * 2);margin-bottom:calc(var(--base-unit) * 4)}.flash-button-subtle{background:var(--flash-primary-dim, hsla(190, 90%, 45%, .1));color:var(--flash-primary);border:1px solid var(--flash-primary);border-radius:var(--radius-md);padding:calc(var(--base-unit) * 1) calc(var(--base-unit) * 3);font-weight:600;cursor:pointer;transition:var(--transition-fast)}.flash-button-subtle:hover{background:var(--flash-primary);color:#fff}.notifications-grid{display:flex;flex-direction:column;gap:calc(var(--base-unit) * 4)}.notification-section{background:var(--glass-surface);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:calc(var(--base-unit) * 3)}.notification-section-header{display:flex;align-items:center;gap:calc(var(--base-unit) * 1.5);margin-bottom:calc(var(--base-unit) * 2);padding-bottom:calc(var(--base-unit) * 2);border-bottom:1px solid var(--glass-border)}.notification-section-header h2{font-size:.875rem;font-weight:700;margin:0;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px}.notification-section-header>svg{color:var(--text-secondary)}.section-clear-btn svg{color:#ff4d4f}.notification-section-header-right{display:flex;align-items:center;gap:8px;margin-left:auto}.notification-section-count{background:var(--flash-primary);color:#fff;font-size:.75rem;font-weight:700;padding:2px 8px;border-radius:10px}.section-clear-btn{background:none;border:none;color:#ff4d4f;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center}.section-clear-btn:hover{opacity:.7}.section-title{font-size:1.25rem;font-weight:700;margin-bottom:calc(var(--base-unit) * 3);color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px}.btn-secondary{display:flex;align-items:center;gap:8px;padding:calc(var(--base-unit) * 1) calc(var(--base-unit) * 3);background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-md);cursor:pointer;font-weight:600;transition:var(--transition-fast)}.btn-secondary:hover{background:var(--glass-border);color:var(--text-primary);border-color:var(--text-secondary)}.empty-state{text-align:center;padding:calc(var(--base-unit) * 10);color:var(--text-secondary);background:var(--glass-surface);border-radius:var(--radius-lg);border:1px dashed var(--glass-border)}.section-view-all{display:flex;justify-content:center;margin-top:calc(var(--base-unit) * 2);padding-top:calc(var(--base-unit) * 2);border-top:1px solid var(--glass-border)}.view-all-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;background:transparent;color:var(--flash-primary);border:1px solid var(--flash-primary);border-radius:var(--radius-md);font-size:.85rem;font-weight:600;cursor:pointer;transition:var(--transition-fast)}.view-all-btn:hover{background:var(--flash-primary);color:#fff}.view-all-btn svg{transition:transform .2s ease}@media(max-width:768px){.notifications-toolbar{flex-wrap:wrap}}.pending-approvals-section{background:linear-gradient(145deg,#1f1f1fe6,#141414f2);border:1px solid var(--glass-border);border-radius:16px;padding:24px}.pending-approvals-section .section-title{display:flex;align-items:center;gap:10px;font-size:1.1rem;font-weight:600;color:var(--text-primary);margin-bottom:20px}.approval-count-badge{background:var(--flash-primary);color:#000;padding:2px 10px;border-radius:100px;font-size:.8rem;font-weight:700}.loading-state,.empty-state{text-align:center;padding:32px 20px;color:var(--text-secondary);font-size:.9rem}.pending-approvals-list{display:flex;flex-direction:column;gap:16px}.pending-approval-card{display:grid;grid-template-columns:1fr auto;gap:16px;cursor:pointer;transition:all .2s ease}.pending-approval-card:hover{transform:translateY(-2px)}.step-info-card{background:linear-gradient(145deg,#3339,#262626cc);border:1px solid var(--glass-border);border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:8px}.step-info-card .step-title{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0}.step-info-card .project-code{font-size:.85rem;color:var(--flash-primary);font-weight:500}.step-info-card .requested-by{font-size:.8rem;color:var(--text-secondary);margin-top:auto}.approval-progress-card{background:linear-gradient(145deg,#404040b3,#2e2e2ee6);border:1px solid var(--glass-border);border-radius:16px;padding:20px;min-width:200px;display:flex;flex-direction:column}.approval-progress-card .approval-header{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 14px;padding-bottom:10px;border-bottom:1px solid var(--glass-border)}.approval-progress-card .approval-roles-list{display:flex;flex-direction:column;gap:10px;flex:1}.approval-progress-card .approval-role-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;background:#ffffff08;border-radius:8px}.approval-progress-card .approval-role-item .role-name{font-size:.9rem;color:var(--text-secondary);font-weight:500}.approval-progress-card .approval-role-item.approved .role-name{color:var(--text-primary)}.approval-progress-card .approval-role-item.current{background:#ffd0001a;border:1px solid hsla(49,100%,50%,.3)}.approval-progress-card .approval-role-item.current .role-name{color:var(--flash-primary);font-weight:600}.approval-progress-card .approval-role-item .check-icon{color:#22c55e;flex-shrink:0}.view-step-button{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:14px;padding:10px 16px;background:#d4af37;color:#000;border:none;border-radius:8px;font-weight:600;font-size:.85rem;cursor:pointer;transition:all .2s ease}.view-step-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px var(--flash-primary-shadow)}.view-step-button.view-only{background:#6669;color:var(--text-primary)}.view-step-button.view-only:hover{background:#80808099;box-shadow:none}.pending-approval-card.rejected{opacity:.85}.approval-progress-card.rejected{border-color:#d9262666;background:linear-gradient(145deg,#422424b3,#321b1be6)}.approval-progress-card .approval-header.rejected{color:#ef4444;border-bottom-color:#d926264d}.rejection-info{flex:1;display:flex;flex-direction:column;justify-content:center}.rejection-info .rejected-by{font-size:.85rem;color:var(--text-secondary)}@media(max-width:600px){.pending-approval-card{grid-template-columns:1fr}.approval-progress-card{min-width:unset}}.settings-section-title{font-size:1.5rem;font-weight:700;margin-bottom:calc(var(--base-unit) * 1);color:var(--text-primary)}.settings-section-description{color:var(--text-secondary);margin-bottom:calc(var(--base-unit) * 4);font-size:.95rem}.settings-card{background-color:var(--glass-surface);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:16px;padding:calc(var(--base-unit) * 4);display:flex;flex-direction:column;gap:calc(var(--base-unit) * 3)}.settings-card-subtitle{margin-top:0;margin-bottom:20px;font-size:1.1rem;color:var(--text-primary)}.form-group{display:flex;flex-direction:column;gap:calc(var(--base-unit) * 1)}.form-group label{font-size:.85rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.form-group input{background:var(--bg-primary);border:1px solid var(--glass-border);border-radius:8px;padding:calc(var(--base-unit) * 1.5);color:var(--text-primary);font-size:1rem;outline:none;transition:border-color .2s}.form-group input:focus{border-color:var(--flash-primary)}.form-group input:disabled{opacity:.5;cursor:not-allowed}.settings-button{padding:calc(var(--base-unit) * 1.5) calc(var(--base-unit) * 3);border-radius:12px;font-weight:600;cursor:pointer;transition:all .2s;border:1px solid var(--glass-border);text-align:center}.settings-button.primary{background:var(--flash-primary);color:#fff;border:none}.settings-button.secondary{background:var(--glass-surface);color:var(--text-primary)}.settings-button.danger{background:#ff00001a;color:#f44;border-color:#f003}.settings-error{background-color:#ffebee;color:#c62828;padding:12px;border-radius:8px;font-size:.9rem;border:1px solid #ffcdd2}.settings-success{background-color:#e8f5e9;color:#2e7d32;padding:12px;border-radius:8px;font-size:.9rem;border:1px solid #c8e6c9}.profile-pic-container{display:flex;align-items:center;gap:calc(var(--base-unit) * 3)}.profile-pic-wrapper{position:relative;cursor:pointer}.profile-pic-large{width:80px;height:80px;border-radius:50%;background:var(--flash-secondary);display:flex;align-items:center;justify-content:center;color:#fff;font-size:2rem;font-weight:700;overflow:hidden}.profile-pic-edit-badge{position:absolute;bottom:-4px;right:-4px;width:32px;height:32px;background-color:var(--flash-secondary);border:3px solid var(--glass-surface);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;transition:all .2s ease;box-shadow:0 2px 8px #0003}.profile-pic-wrapper:hover .profile-pic-edit-badge{background-color:var(--flash-primary);transform:scale(1.1)}.color-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:calc(var(--base-unit) * 2)}.color-option{display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;padding:8px;border-radius:12px;border:1px solid transparent;transition:all .2s}.color-option:hover{background:var(--glass-surface)}.color-option.active{border-color:var(--flash-primary);background:var(--glass-surface)}.color-preview{width:48px;height:48px;border-radius:50%;border:3px solid white;box-shadow:0 4px 12px #0000001a}.language-list{display:flex;flex-direction:column;gap:8px}.language-item{display:flex;align-items:center;justify-content:space-between;padding:calc(var(--base-unit) * 1.5) calc(var(--base-unit) * 2);border-radius:12px;background:var(--bg-primary);border:1px solid var(--glass-border);cursor:pointer;transition:all .2s}.language-item:hover{border-color:var(--flash-primary)}.language-item.active{border-color:var(--flash-primary);background:var(--glass-surface)}.billing-actions{display:grid;grid-template-columns:1fr 1fr;gap:calc(var(--base-unit) * 2)}.whatsapp-info-box{display:flex;align-items:flex-start;gap:12px;padding:calc(var(--base-unit) * 2);background:linear-gradient(135deg,#25d3661a,#128c7e1a);border-radius:12px;border:1px solid rgba(37,211,102,.2);margin-bottom:calc(var(--base-unit) * 3)}.whatsapp-info-box svg{color:#25d366;flex-shrink:0;margin-top:2px}.whatsapp-info-box p{font-size:.875rem;color:var(--text-secondary);line-height:1.5;margin:0}.phone-input-wrapper{display:flex;gap:calc(var(--base-unit) * 1)}.phone-input-wrapper select{width:100px;flex-shrink:0;background:var(--bg-primary);border:1px solid var(--glass-border);border-radius:8px;padding:calc(var(--base-unit) * 1.5);color:var(--text-primary);font-size:1rem;outline:none;cursor:pointer}.phone-input-wrapper input{flex:1}.settings-save-row{display:flex;align-items:center;gap:calc(var(--base-unit) * 2);margin-top:calc(var(--base-unit) * 2)}.save-success{display:flex;align-items:center;gap:6px;color:#25d366;font-size:.875rem;font-weight:500}.role-restriction-notice{padding:calc(var(--base-unit) * 3);background:#ffa5001a;border:1px solid rgba(255,165,0,.2);border-radius:12px;text-align:center}.role-restriction-notice p{color:var(--text-secondary);margin:0}.password-change-form{display:flex;flex-direction:column;gap:16px}.settings-page{display:grid;grid-template-columns:280px 1fr;min-height:calc(100vh - var(--base-unit) * 8);background-color:var(--bg-primary)}.settings-sidebar{border-right:1px solid var(--glass-border);padding:calc(var(--base-unit) * 4);display:flex;flex-direction:column;gap:calc(var(--base-unit) * 1)}.settings-nav-item{display:flex;align-items:center;gap:12px;padding:calc(var(--base-unit) * 1.5) calc(var(--base-unit) * 2);border-radius:8px;color:var(--text-secondary);cursor:pointer;transition:all .2s;font-weight:500}.settings-nav-item:hover{background-color:var(--glass-surface);color:var(--text-primary)}.settings-nav-item.active{background-color:var(--glass-surface);color:var(--flash-primary);border:1px solid var(--glass-border)}.settings-content{padding:calc(var(--base-unit) * 6) calc(var(--base-unit) * 8);max-width:800px}.feedback-container{max-width:800px;margin:0 auto;padding:calc(var(--base-unit) * 6) calc(var(--base-unit) * 4);display:flex;flex-direction:column;gap:calc(var(--base-unit) * 4);min-height:calc(100vh - var(--base-unit) * 8)}.feedback-header{text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px}.feedback-header h1{font-size:2.5rem;font-weight:800;margin:0;background:linear-gradient(135deg,var(--text-primary) 0%,var(--text-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.feedback-header p{color:var(--text-secondary);font-size:1.125rem;max-width:500px;margin:0}.feedback-card{background-color:var(--glass-surface);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:24px;padding:calc(var(--base-unit) * 4);display:flex;flex-direction:column;gap:24px;box-shadow:0 8px 32px #0000000d}.success-card{align-items:center;justify-content:center;text-align:center;padding:calc(var(--base-unit) * 8)}.feedback-types{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.type-option{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px;border-radius:16px;border:1px solid var(--glass-border);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);color:var(--text-secondary)}.type-option:hover{background-color:var(--bg-secondary);border-color:var(--text-secondary);transform:translateY(-2px)}.type-option.active{background-color:var(--bg-primary);border-color:var(--flash-primary);color:var(--flash-primary);box-shadow:0 4px 12px #0000001a}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:600;color:var(--text-primary);font-size:.9375rem}.rating-grid{display:flex;gap:12px}.rating-btn{flex:1;height:48px;border-radius:12px;border:1px solid var(--glass-border);background:transparent;color:var(--text-secondary);font-weight:700;cursor:pointer;transition:all .2s}.rating-btn:hover{background-color:var(--bg-secondary);border-color:var(--text-secondary)}.rating-btn.active{background-color:var(--flash-primary);color:#fff;border-color:var(--flash-primary);box-shadow:0 4px 12px rgba(var(--flash-primary-rgb, 0, 0, 0),.3)}textarea{min-height:150px;padding:16px;border-radius:12px;border:1px solid var(--glass-border);background-color:var(--bg-primary);color:var(--text-primary);font-family:inherit;font-size:1rem;resize:vertical;transition:border-color .2s}textarea:focus{outline:none;border-color:var(--flash-primary)}.feedback-submit{height:56px;border-radius:16px;border:none;background-color:var(--flash-primary);color:#fff;font-weight:700;font-size:1.125rem;cursor:pointer;transition:all .2s}.feedback-submit:hover:not(:disabled){background-color:var(--flash-secondary);transform:translateY(-2px);box-shadow:0 4px 12px #0003}.feedback-submit:disabled{opacity:.5;cursor:not-allowed}@media(max-width:600px){.feedback-types{grid-template-columns:1fr}}.feedback-history-section{margin-top:calc(var(--base-unit) * 4);padding-top:calc(var(--base-unit) * 4);border-top:1px solid var(--glass-border)}.feedback-history-title{display:flex;align-items:center;gap:10px;font-size:1.25rem;font-weight:700;color:var(--text-primary);margin:0 0 calc(var(--base-unit) * 3) 0}.feedback-history-empty{text-align:center;padding:calc(var(--base-unit) * 4);color:var(--text-secondary);font-size:.9rem;background:var(--bg-secondary);border-radius:12px;border:1px dashed var(--glass-border)}.feedback-history-list{display:flex;flex-direction:column;gap:calc(var(--base-unit) * 2)}.feedback-history-card{background:var(--glass-surface);border:1px solid var(--glass-border);border-radius:16px;padding:calc(var(--base-unit) * 2.5);transition:all .2s}.feedback-history-card.has-reply{border-color:#16a34a4d}.feedback-history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:calc(var(--base-unit) * 1.5)}.feedback-history-type{display:flex;align-items:center;gap:8px;font-weight:600;font-size:.875rem;color:var(--text-primary)}.feedback-history-meta{display:flex;align-items:center;gap:12px;font-size:.8rem;color:var(--text-secondary)}.feedback-history-rating{font-weight:700;color:var(--flash-primary)}.feedback-history-message{margin:0 0 calc(var(--base-unit) * 2) 0;font-size:.9rem;color:var(--text-primary);line-height:1.5}.feedback-history-reply{background:#16a34a14;border-left:3px solid #16a34a;border-radius:0 8px 8px 0;padding:calc(var(--base-unit) * 1.5)}.feedback-reply-header{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:.8rem;font-weight:600;color:#16a34a}.feedback-reply-date{font-weight:400;color:var(--text-secondary);margin-left:auto}.feedback-reply-message{margin:0;font-size:.875rem;color:var(--text-primary);line-height:1.5}.feedback-history-pending{display:flex;align-items:center;gap:6px;font-size:.8rem;color:var(--text-secondary);font-style:italic}.dynamic-field{display:flex;flex-direction:column;gap:.5rem}.dynamic-label{font-size:.875rem;font-weight:500;color:var(--text-primary)}.required-indicator{color:#ef4444;margin-left:.25rem}.dynamic-input,.dynamic-textarea,.dynamic-select,.dynamic-file{padding:.5rem .75rem;border:1px solid var(--glass-border);border-radius:6px;font-size:.875rem;font-family:inherit;background:var(--input-background, var(--glass-background));color:var(--text-primary);transition:border-color .2s}.dynamic-input[type=date],.dynamic-input[type=datetime-local],.dynamic-input[type=time]{color-scheme:light dark}.dynamic-input[type=date]::-webkit-calendar-picker-indicator,.dynamic-input[type=datetime-local]::-webkit-calendar-picker-indicator,.dynamic-input[type=time]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.8}[data-theme=black] .dynamic-input[type=date]::-webkit-calendar-picker-indicator,[data-theme=black] .dynamic-input[type=datetime-local]::-webkit-calendar-picker-indicator,[data-theme=black] .dynamic-input[type=time]::-webkit-calendar-picker-indicator{filter:invert(1)}.dynamic-input:focus,.dynamic-textarea:focus,.dynamic-select:focus{outline:none;border-color:var(--flash-primary);box-shadow:0 0 0 3px #3b82f61a}.dynamic-textarea{resize:vertical;min-height:100px}.dynamic-checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.875rem}.dynamic-checkbox{width:1rem;height:1rem;cursor:pointer}.dynamic-ai-toggle{display:flex;align-items:center;gap:.75rem;padding:1rem;background:linear-gradient(135deg,#8b5cf60d,#3b82f60d);border:2px solid rgba(139,92,246,.2);border-radius:8px;cursor:pointer;transition:all .2s}.dynamic-ai-toggle:hover{background:linear-gradient(135deg,#8b5cf61a,#3b82f61a);border-color:#8b5cf64d}.dynamic-ai-toggle input[type=checkbox]{width:1.25rem;height:1.25rem;cursor:pointer}.ai-toggle-label{display:flex;align-items:center;gap:.5rem;font-weight:500;font-size:.9rem}.ai-icon{font-size:1.25rem}.dynamic-help-text{font-size:.75rem;color:var(--text-secondary);font-style:italic}.dynamic-error{font-size:.75rem;color:#ef4444;font-weight:500}.dynamic-file{padding:.25rem}.dynamic-file::-webkit-file-upload-button{padding:.375rem .75rem;background:var(--flash-primary);color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.875rem;margin-right:.75rem}.dynamic-file::-webkit-file-upload-button:hover{background:var(--flash-hover)}.dynamic-checkbox-label.locked{opacity:.8;cursor:not-allowed}.dynamic-checkbox-label.locked .dynamic-checkbox{cursor:not-allowed}.locked-indicator{font-size:.875rem;margin-left:.25rem;cursor:help}.platform-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:calc(var(--base-unit) * 3);margin-bottom:calc(var(--base-unit) * 4)}.summary-card{display:flex;align-items:center;gap:calc(var(--base-unit) * 2);padding:calc(var(--base-unit) * 3);background:var(--glass-surface);border:1px solid var(--glass-border);border-radius:calc(var(--base-unit) * 2);transition:var(--transition-fast)}.summary-card:hover{border-color:var(--flash-primary)}.summary-card.total-cost{background:linear-gradient(135deg,#10b9811a,#10b9810d);border-color:#10b9814d}.summary-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:calc(var(--base-unit) * 1.5);background:#8b5cf61a;color:var(--flash-primary);flex-shrink:0}.summary-card.total-cost .summary-icon{background:#10b98133;color:#10b981}.summary-content{display:flex;flex-direction:column;gap:4px}.summary-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.summary-value{font-size:1.5rem;font-weight:700;color:var(--text-primary);line-height:1.2}.summary-subtext{font-size:.75rem;color:var(--text-secondary)}.section-card{background:var(--glass-surface);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:calc(var(--base-unit) * 3);transition:all .3s ease}.section-card:hover{transform:translateY(-2px);box-shadow:0 8px 16px #00000014}.section-header{display:flex;align-items:center;gap:calc(var(--base-unit) * 1.5);margin-bottom:calc(var(--base-unit) * 3);color:var(--text-primary)}.section-header h3{margin:0;font-size:1.125rem;font-weight:600}.service-stats-grid{display:flex;flex-direction:column;gap:calc(var(--base-unit) * 2)}.service-stat-card{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:calc(var(--base-unit) * 2);padding:calc(var(--base-unit) * 2);background:#00000005;border-radius:var(--radius-md);transition:background .2s ease}.service-stat-card:hover{background:#0000000a}.service-name{font-size:.875rem;font-weight:600;color:var(--text-primary);text-transform:capitalize}.service-requests{font-size:.75rem;color:var(--text-secondary)}.service-cost{font-size:.875rem;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums}.empty-state{padding:calc(var(--base-unit) * 3);text-align:center;color:var(--text-secondary);font-size:.875rem}.budget-settings-wrapper{display:flex;flex-direction:column;gap:calc(var(--base-unit) * 2)}.budget-settings-toggle{display:flex;align-items:center;gap:calc(var(--base-unit) * 1.5);padding:calc(var(--base-unit) * 2);background:var(--glass-surface);border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--text-primary);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;align-self:flex-start}.budget-settings-toggle:hover{background:#00000005;transform:translateY(-1px)}.budget-settings-content{animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1200px){.platform-summary-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.platform-summary-grid{grid-template-columns:1fr}}@media(max-width:480px){.section-card{padding:calc(var(--base-unit) * 2)}.service-stat-card{grid-template-columns:1fr;gap:calc(var(--base-unit) * 1)}}.usage-logs-section{background:var(--glass-surface);border:1px solid var(--glass-border);border-radius:var(--radius-lg);overflow:hidden}.logs-header{display:flex;justify-content:space-between;align-items:center;padding:calc(var(--base-unit) * 3);border-bottom:1px solid var(--glass-border)}.logs-title{display:flex;align-items:center;gap:calc(var(--base-unit) * 1.5);color:var(--text-primary)}.logs-title h3{margin:0;font-size:1.125rem;font-weight:600}.logs-count{font-size:.875rem;color:var(--text-secondary);font-weight:400}.export-button{display:flex;align-items:center;gap:calc(var(--base-unit) * 1);padding:calc(var(--base-unit) * 1.5) calc(var(--base-unit) * 2.5);background:var(--flash-primary);color:#fff;border:none;border-radius:var(--radius-md);font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s ease}.export-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px var(--flash-primary-shadow);filter:brightness(1.1)}.export-button:disabled{opacity:.5;cursor:not-allowed}.logs-table-wrapper{overflow-x:auto}.logs-table{width:100%;border-collapse:collapse}.logs-table thead{background:#00000005}.logs-table th{padding:calc(var(--base-unit) * 2);text-align:left;font-size:.75rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--glass-border)}.logs-table td{padding:calc(var(--base-unit) * 2.5);font-size:.875rem;color:var(--text-primary);border-bottom:1px solid var(--glass-border)}.logs-table tbody tr{transition:background .2s ease}.logs-table tbody tr:hover{background:#00000005}.service-badge{display:inline-block;padding:calc(var(--base-unit) * .5) calc(var(--base-unit) * 1.5);border-radius:calc(var(--base-unit) * 2);font-size:.75rem;font-weight:600;text-transform:capitalize}.service-badge.document_ai{background:#a855f71a;color:#7c3aed}.service-badge.openai{background:#10b9811a;color:#059669}.service-badge.gemini{background:#3b82f61a;color:#2563eb}.cost-cell{font-weight:600;font-variant-numeric:tabular-nums}.org-id-cell{font-family:monospace;font-size:.8rem;color:var(--text-secondary);cursor:help}.logs-loading{padding:calc(var(--base-unit) * 6);text-align:center;color:var(--text-secondary)}.logs-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(var(--base-unit) * 2);padding:calc(var(--base-unit) * 8);color:var(--text-secondary)}.pagination{display:flex;justify-content:center;align-items:center;gap:calc(var(--base-unit) * 3);padding:calc(var(--base-unit) * 3);border-top:1px solid var(--glass-border)}.pagination-button{padding:calc(var(--base-unit) * 1.5) calc(var(--base-unit) * 2.5);background:var(--glass-surface);border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--text-primary);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease}.pagination-button:hover:not(:disabled){background:#00000005;transform:translateY(-1px)}.pagination-button:disabled{opacity:.4;cursor:not-allowed}.pagination-info{font-size:.875rem;color:var(--text-secondary);font-weight:500}@media(max-width:768px){.logs-header{flex-direction:column;align-items:flex-start;gap:calc(var(--base-unit) * 2)}.export-button{align-self:stretch}.logs-table th,.logs-table td{padding:calc(var(--base-unit) * 1.5);font-size:.8125rem}}@media(max-width:480px){.logs-table{font-size:.75rem}}.usage-analytics-container{max-width:1400px;margin:0 auto;padding:calc(var(--base-unit) * 4);display:flex;flex-direction:column;gap:calc(var(--base-unit) * 4)}.usage-analytics-header{display:flex;flex-direction:column;gap:calc(var(--base-unit) * 1.5)}.header-title{display:flex;align-items:center;gap:calc(var(--base-unit) * 2);color:var(--text-primary)}.header-title h1{margin:0;font-size:1.75rem;font-weight:700;color:var(--text-primary)}.header-subtitle{margin:0;font-size:.875rem;color:var(--text-secondary);padding-left:calc(var(--base-unit) * 5)}.usage-analytics-grid{display:grid;grid-template-columns:1fr 1fr;gap:calc(var(--base-unit) * 3)}.cost-overview-section,.service-breakdown-section{min-height:300px}.usage-analytics-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(var(--base-unit) * 3);padding:calc(var(--base-unit) * 10);color:var(--text-secondary)}.usage-analytics-empty .loading-icon{animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.4}50%{opacity:1}}@media(max-width:1024px){.usage-analytics-grid{grid-template-columns:1fr}}@media(max-width:768px){.usage-analytics-container{padding:calc(var(--base-unit) * 2)}.header-title h1{font-size:1.5rem}}@media(max-width:480px){.usage-analytics-container{padding:calc(var(--base-unit) * 1.5)}}.public-navbar{position:fixed;top:calc(var(--base-unit) * 8);left:0;right:0;height:calc(var(--base-unit) * 6);background:linear-gradient(135deg,#fffffff2,#fafafaf2);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--glass-border);z-index:999;box-shadow:0 2px 8px #0000000d}.public-navbar-container{max-width:1200px;margin:0 auto;height:100%;display:flex;align-items:center;justify-content:center;gap:calc(var(--base-unit) * 1);padding:0 calc(var(--base-unit) * 4)}.public-nav-item{display:flex;align-items:center;gap:calc(var(--base-unit) * 1);padding:calc(var(--base-unit) * 1.25) calc(var(--base-unit) * 2.5);background:transparent;border:1px solid transparent;border-radius:var(--radius-md);color:var(--text-primary);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.public-nav-item:before{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%) scaleX(0);width:80%;height:2px;background:var(--flash-primary);transition:transform .3s ease}.public-nav-item:hover{background-color:#00bcd414;border-color:#00bcd433;color:var(--flash-primary)}.public-nav-item:hover:before{transform:translate(-50%) scaleX(1)}.public-nav-item.active{background:linear-gradient(135deg,#00bcd41a,#00acc126);border-color:var(--flash-primary);color:var(--flash-primary);font-weight:600}.public-nav-item.active:before{transform:translate(-50%) scaleX(1)}.public-nav-icon{display:flex;align-items:center;justify-content:center;opacity:.8;transition:opacity .3s ease}.public-nav-item:hover .public-nav-icon,.public-nav-item.active .public-nav-icon{opacity:1}.public-nav-label{white-space:nowrap}@media(max-width:768px){.public-navbar-container{gap:calc(var(--base-unit) * .5);padding:0 calc(var(--base-unit) * 2)}.public-nav-item{padding:calc(var(--base-unit) * 1) calc(var(--base-unit) * 1.5);font-size:.85rem}.public-nav-icon{display:none}}@media(max-width:480px){.public-nav-item{padding:calc(var(--base-unit) * .75) calc(var(--base-unit) * 1);font-size:.8rem}}.user-landing-container{max-width:1200px;margin:0 auto;padding:calc(var(--base-unit) * 6) calc(var(--base-unit) * 4);display:flex;flex-direction:column;gap:calc(var(--base-unit) * 8)}.welcome-section{display:flex;flex-direction:column;gap:var(--base-unit)}.welcome-title{font-size:2.5rem;font-weight:800;color:var(--text-primary);letter-spacing:-.02em}.welcome-subtitle{font-size:1.125rem;color:var(--text-secondary)}.notifications-banner{cursor:pointer;transition:all .3s ease;border:1px solid var(--glass-border)}.notifications-banner:hover{transform:translateY(-2px);box-shadow:0 8px 24px -8px #181f2526;border-color:#f97316}.notifications-banner.has-notifications{border-color:#f9731666;background:linear-gradient(135deg,rgba(249,115,22,.05) 0%,transparent 100%)}.notifications-banner-content{display:flex;align-items:center;gap:calc(var(--base-unit) * 3)}.notifications-banner-icon{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.notifications-banner-text{flex:1}.notifications-banner-title{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin:0 0 4px;display:flex;align-items:center;gap:calc(var(--base-unit) * 1.5)}.notifications-badge{background:#ef4444;color:#fff;font-size:.75rem;font-weight:700;padding:2px 8px;border-radius:12px;animation:pulse-badge 2s infinite}@keyframes pulse-badge{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.notifications-banner-description{font-size:.9375rem;color:var(--text-secondary);margin:0}.notifications-banner-arrow{font-size:1.5rem;color:var(--text-secondary);transition:transform .2s ease}.notifications-banner:hover .notifications-banner-arrow{transform:translate(4px);color:#f97316}@media(max-width:600px){.notifications-banner-content{flex-direction:column;text-align:center}.notifications-banner-arrow{display:none}}.quick-actions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:calc(var(--base-unit) * 4)}@media(max-width:900px){.quick-actions-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.quick-actions-grid{grid-template-columns:1fr}}.action-card-icon{font-size:2rem;margin-bottom:var(--base-unit)}.highlights-section{display:grid;grid-template-columns:2fr 1fr;gap:calc(var(--base-unit) * 4)}@media(max-width:900px){.highlights-section{grid-template-columns:1fr}}.stats-container{display:grid;grid-template-columns:repeat(3,1fr);gap:calc(var(--base-unit) * 3)}.stat-item{text-align:center;padding:calc(var(--base-unit) * 2)}.stat-value{display:block;font-size:1.5rem;font-weight:800;color:var(--flash-primary)}.stat-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.activity-list{display:flex;flex-direction:column;gap:calc(var(--base-unit) * 2)}.activity-item{display:flex;align-items:center;gap:calc(var(--base-unit) * 2);padding:var(--base-unit) 0;border-bottom:1px solid var(--glass-border)}.activity-item:last-child{border-bottom:none}.activity-dot{width:8px;height:8px;border-radius:50%;background:var(--flash-primary)}.activity-info{flex:1}.activity-text{font-size:.875rem;font-weight:500}.activity-time{font-size:.75rem;color:var(--text-secondary)}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;margin-bottom:2rem}.summary-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:16px;padding:1.5rem;display:flex;gap:1rem;transition:transform .2s ease,box-shadow .2s ease}.summary-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000001a}.card-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.summary-card.pending .card-icon{background:#f59e0b1a;color:#f59e0b}.summary-card.contracts .card-icon{background:#10b9811a;color:#10b981}.summary-card.expenses .card-icon{background:#ef44441a;color:#ef4444}.summary-card.net .card-icon{background:#3b82f61a;color:#3b82f6}.card-content{display:flex;flex-direction:column;gap:4px}.card-label{font-size:.8rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.card-value{font-size:1.5rem;font-weight:700;color:var(--text-primary)}.card-subtext{font-size:.75rem;color:var(--text-secondary)}.graph-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.graph-header h2{margin:0}.graph-legend{display:flex;align-items:center;gap:1rem}.legend-item{display:flex;align-items:center;gap:6px;font-size:.8rem;color:var(--text-secondary)}.legend-dot{width:12px;height:12px;border-radius:3px}.legend-dot.collected{background:#10b981}.legend-dot.pending{background:#f59e0b}.graph-total{text-align:right}.total-label{display:block;font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.total-value{font-size:1.25rem;font-weight:700;color:#10b981}.total-collected{display:block;font-size:.75rem;color:var(--text-secondary)}.income-graph{display:flex;align-items:flex-end;justify-content:space-between;height:200px;padding:0 .5rem;gap:.5rem}.graph-bar-wrapper{display:flex;flex-direction:column;align-items:center;flex:1;height:100%}.graph-bar-wrapper.empty .graph-bar{background:#ffffff1a;min-height:4px}.graph-bar-wrapper.current .graph-label{color:var(--flash-primary);font-weight:700}.graph-bar-wrapper.current .graph-bar{background:linear-gradient(180deg,var(--flash-primary),var(--flash-secondary))}.graph-bar-container{flex:1;width:100%;display:flex;align-items:flex-end;justify-content:center}.graph-bar{width:100%;max-width:40px;background:linear-gradient(180deg,#10b981,#34d399);border-radius:4px 4px 0 0;transition:height .5s ease,transform .2s ease;position:relative;min-height:4px}.graph-bar.stacked{background:transparent;display:flex;flex-direction:column;overflow:hidden}.bar-collected{background:linear-gradient(180deg,#10b981,#34d399);width:100%;border-radius:4px 4px 0 0;transition:height .3s ease}.bar-pending{background:linear-gradient(180deg,#f59e0b,#fbbf24);width:100%;transition:height .3s ease}.bar-pending:first-child{border-radius:4px 4px 0 0}.graph-bar:hover{transform:scaleY(1.02);filter:brightness(1.1)}.bar-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:var(--bg-primary);border:1px solid var(--glass-border);padding:8px 12px;border-radius:8px;font-size:.75rem;white-space:nowrap;opacity:0;visibility:hidden;transition:all .2s ease;margin-bottom:8px;box-shadow:0 4px 12px #0000004d;z-index:10}.tooltip-total{display:block;font-weight:700;color:var(--text-primary);font-size:.85rem;margin-bottom:4px}.tooltip-detail{display:flex;flex-direction:column;gap:2px}.tooltip-collected{color:#10b981;font-weight:500}.tooltip-pending{color:#f59e0b;font-weight:500}.graph-bar:hover .bar-tooltip{opacity:1;visibility:visible}.graph-label{font-size:.7rem;color:var(--text-secondary);margin-top:8px;font-weight:500}.monthly-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.month-card{background:#ffffff0d;border:1px solid var(--glass-border);border-radius:12px;cursor:pointer;transition:all .2s ease;overflow:hidden}.month-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #00000026;border-color:var(--flash-primary)}.month-card-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:#ffffff0d;border-bottom:1px solid var(--glass-border)}.month-card-title{font-size:1.1rem;font-weight:600;color:var(--text-primary)}.month-card-body{padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.75rem}.month-stat{display:flex;align-items:center;gap:.75rem}.stat-icon{font-size:1.25rem}.stat-content{display:flex;flex-direction:column;gap:2px}.stat-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:1rem;font-weight:600}.stat-value.contracts{color:#10b981}.stat-value.expenses{color:#f59e0b}.month-card-footer{padding:.75rem 1.25rem;font-weight:600;font-size:.9rem}.month-card-footer.positive{background:#10b9811a;color:#10b981}.month-card-footer.negative{background:#ef44441a;color:#ef4444}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.25rem}.project-card{background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:12px;padding:1.25rem;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;gap:1rem}.project-card:hover{transform:translateY(-4px);border-color:#10b981;box-shadow:0 8px 16px #0003}.project-card-header{display:flex;justify-content:space-between;align-items:center}.project-card-header .project-name{font-weight:700;font-size:1.1rem;color:var(--text-primary)}.project-card-amount{display:flex;flex-direction:column;gap:.25rem}.project-card-amount .amount-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.project-card-amount .amount-value{font-size:1.5rem;font-weight:800;color:#10b981}.project-card-footer{padding-top:.75rem;border-top:1px solid var(--glass-border)}.project-card-footer .project-id{font-size:.8rem;color:var(--text-secondary)}.transaction-cards-grid{display:flex;flex-direction:column;gap:.75rem}.transaction-card{background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:10px;padding:1rem;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:all .2s ease}.transaction-card:hover{background:var(--glass-bg);border-color:#fff3;transform:scale(1.01)}.tx-card-main{display:flex;align-items:center;gap:1rem}.tx-card-icon{font-size:1.25rem;width:40px;height:40px;background:var(--glass-bg);border-radius:50%;display:flex;align-items:center;justify-content:center}.tx-card-info{display:flex;flex-direction:column;gap:.25rem}.tx-card-desc{font-weight:600;font-size:.95rem}.tx-card-date{font-size:.8rem;color:var(--text-secondary)}.tx-card-side{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:.25rem}.tx-card-amount{font-weight:700;font-size:1rem}.tx-card-amount.positive{color:#10b981}.tx-card-amount.negative{color:#f59e0b}.tx-card-status{font-size:.7rem;text-transform:uppercase;font-weight:700;padding:2px 6px;border-radius:4px;background:#ffffff1a}.tx-card-status.paid{background:#10b98133;color:#10b981}.tx-card-status.pending{background:#f59e0b33;color:#f59e0b}.modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:16px;width:90%;max-width:600px;max-height:80vh;overflow-y:auto;animation:slideUp .3s ease}.modal-content.large{max-width:900px}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--glass-border);position:sticky;top:0;background:var(--bg-secondary);z-index:10}.modal-header h2{margin:0;font-size:1.25rem}.modal-actions{display:flex;align-items:center;gap:.75rem}.download-button{display:flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;padding:.5rem 1rem;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.download-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.close-button{background:none;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.close-button:hover{background:var(--glass-bg);color:var(--text-primary)}.modal-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;padding:1.5rem;border-bottom:1px solid var(--glass-border)}.modal-summary .summary-item{text-align:center;padding:1rem;border-radius:8px;background:#ffffff0d}.modal-summary .label{display:block;font-size:.8rem;color:var(--text-secondary);margin-bottom:.5rem}.modal-summary .value{display:block;font-size:1.25rem;font-weight:700}.modal-summary .summary-item.contracts .value{color:#10b981}.modal-summary .summary-item.expenses .value{color:#f59e0b}.modal-summary .summary-item.net .value{color:var(--text-primary)}.modal-content h3{margin:0;padding:1rem 1.5rem;font-size:1rem;color:var(--text-secondary)}.modal-body{padding:1.5rem;overflow-y:auto;max-height:70vh}.modal-transactions{padding:0 1.5rem 1.5rem}.modal-transactions .transaction-row{margin-bottom:.5rem}.no-transactions{text-align:center;color:var(--text-secondary);padding:2rem;font-style:italic}.financial-dashboard{padding:2rem;max-width:1200px;margin:0 auto}.financial-dashboard.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px}.loading-spinner{display:flex;flex-direction:column;align-items:center;gap:1rem;color:var(--text-secondary)}.loading-spinner .spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.dashboard-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.dashboard-header h1{margin:0;font-size:1.75rem;font-weight:600;color:var(--text-primary)}.dashboard-header .subtitle{margin:.25rem 0 0;color:var(--text-secondary);font-size:.9rem;display:flex;align-items:center;gap:12px}.demo-badge{background-color:#fef3c7;color:#92400e;padding:2px 8px;border-radius:4px;font-size:.75rem;font-weight:600}.refresh-button{display:flex;align-items:center;gap:8px;padding:.5rem 1rem;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:.875rem;transition:all .2s ease}.refresh-button:hover{background:var(--flash-primary);color:#fff;border-color:var(--flash-primary)}.section{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:16px;padding:1.5rem;margin-bottom:1.5rem}.section h2{margin:0 0 1rem;font-size:1.1rem;font-weight:600;color:var(--text-primary)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.section-header h2{margin-bottom:0}.text-action-button{background:none;border:none;color:#10b981;font-size:.9rem;font-weight:600;cursor:pointer;padding:.5rem 1rem;border-radius:6px;transition:all .2s ease}.text-action-button:hover{background:#10b9811a;transform:translate(3px)}.transactions-list{display:flex;flex-direction:column;gap:.5rem}.transaction-row{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:1rem;padding:1rem;background:#ffffff08;border:1px solid var(--glass-border);border-radius:12px;transition:all .2s ease}.transaction-row:hover{background:#ffffff14;border-color:#fff3}.tx-icon{width:40px;height:40px;background:var(--glass-bg);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.25rem}.tx-info{display:flex;flex-direction:column;gap:2px}.tx-description{font-weight:600;font-size:.95rem}.tx-meta{display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--text-secondary)}.tx-category{text-transform:capitalize;color:var(--flash-primary);font-weight:500}.tx-amount{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:4px}.tx-amount span:first-child{font-weight:700;font-size:1.1rem}.tx-amount .positive{color:#10b981}.tx-amount .negative{color:#f59e0b}.tx-status{font-size:.7rem;text-transform:uppercase;font-weight:700;padding:2px 6px;border-radius:4px;background:#ffffff1a}.tx-status.paid{background:#10b98133;color:#10b981}.tx-status.pending{background:#f59e0b33;color:#f59e0b}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:var(--text-secondary);text-align:center;gap:1rem}.empty-state span{font-size:.9rem;max-width:300px}.analytics-container{padding:calc(var(--base-unit) * 4);max-width:1200px;margin:0 auto}.analytics-summary{display:flex;justify-content:center;gap:calc(var(--base-unit) * 1.5);margin-bottom:calc(var(--base-unit) * 4);overflow-x:auto}.summary-card{display:flex;align-items:center;gap:6px;background:var(--bg-tertiary);border:1px solid var(--glass-border);border-radius:10px;padding:calc(var(--base-unit) * 1) calc(var(--base-unit) * 1.5);transition:transform .2s,box-shadow .2s;flex-shrink:0}.summary-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003}.summary-card.total{background:var(--flash-primary);border-color:var(--flash-primary)}.summary-card.total .summary-value,.summary-card.total .summary-label{color:#fff}.summary-emoji{font-size:1rem;flex-shrink:0}.summary-value{font-size:1.25rem;font-weight:700;color:var(--text-primary);flex-shrink:0}.summary-label{font-size:.65rem;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}.analytics-section{background:var(--bg-tertiary);border:1px solid var(--glass-border);border-radius:12px;padding:calc(var(--base-unit) * 3);margin-bottom:calc(var(--base-unit) * 3)}.analytics-section .section-title{display:flex;align-items:center;font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 calc(var(--base-unit) * 2) 0}.temperature-bar{display:flex;height:40px;border-radius:8px;overflow:hidden;background:var(--bg-secondary)}.temp-segment{display:flex;align-items:center;justify-content:center;min-width:2px;transition:width .3s ease}.segment-label{color:#fff;font-size:.75rem;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.3)}.case-list{display:flex;flex-direction:column;gap:calc(var(--base-unit) * 1)}.case-item{display:flex;align-items:center;gap:calc(var(--base-unit) * 2);padding:calc(var(--base-unit) * 1.5) calc(var(--base-unit) * 2);background:var(--bg-secondary);border-radius:8px;cursor:pointer;transition:background .2s,transform .2s}.case-item:hover{background:var(--bg-primary);transform:translate(4px)}.case-temp{font-size:1.25rem;width:32px;text-align:center}.case-info{flex:1;min-width:0}.case-name{font-weight:600;color:var(--text-primary);font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.case-client{font-size:.75rem;color:var(--text-tertiary)}.case-status{font-size:.8rem;font-weight:500;white-space:nowrap}.empty-state{text-align:center;padding:calc(var(--base-unit) * 8);color:var(--text-secondary)}.empty-state p{margin-bottom:calc(var(--base-unit) * 2)}.my-ai-templates-page{width:100%}.my-ai-templates-page .page-content{max-width:1200px;margin:0 auto;padding:0 calc(var(--base-unit) * 4) calc(var(--base-unit) * 4)}.my-ai-templates-page .page-actions{display:flex;justify-content:flex-end;margin-top:calc(var(--base-unit) * 3);margin-bottom:calc(var(--base-unit) * 3)}.my-ai-templates-page .create-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;border:none;border-radius:10px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.my-ai-templates-page .create-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #8b5cf64d}.my-ai-templates-page .error-banner{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:8px;color:#ef4444;margin-bottom:1.5rem}.my-ai-templates-page .error-banner button{background:none;border:none;color:#ef4444;cursor:pointer;font-weight:500;text-decoration:underline}.my-ai-templates-page .loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:var(--text-secondary)}.my-ai-templates-page .spinner{width:40px;height:40px;border:3px solid var(--glass-border);border-top-color:#8b5cf6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(360deg)}}.my-ai-templates-page .empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:var(--text-secondary)}.template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.template-card{display:flex;flex-direction:column;background:var(--glass-surface);border:1px solid var(--glass-border);border-radius:12px;padding:1.5rem;transition:all .2s ease;cursor:pointer;min-height:180px}.template-card:hover{border-color:#8b5cf6;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.template-card-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:.75rem}.template-card-title{display:flex;align-items:center;gap:.5rem}.template-card-title h3{margin:0;font-size:1.1rem;font-weight:600;color:var(--text-primary)}.template-card-icon{color:#8b5cf6}.template-card-actions{display:flex;gap:.25rem;opacity:0;transition:opacity .2s}.template-card:hover .template-card-actions{opacity:1}.template-card-actions button{background:none;border:none;padding:.375rem;color:var(--text-secondary);cursor:pointer;border-radius:6px;transition:all .15s}.template-card-actions button:hover{background:var(--glass-border);color:var(--text-primary)}.template-card-actions button.delete:hover{background:#ef44441a;color:#ef4444}.template-card-description{color:var(--text-secondary);font-size:.85rem;margin-bottom:1rem;line-height:1.5}.template-card-meta{display:flex;align-items:center;gap:1.5rem;font-size:.8rem;color:var(--text-secondary);margin-top:auto;padding-top:1rem;border-top:1px solid var(--glass-border)}.template-card-meta span{display:flex;align-items:center;gap:.375rem;white-space:nowrap}.template-card.create-new{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:180px;border-style:dashed;color:var(--text-secondary)}.template-card.create-new:hover{background:#8b5cf60d;border-color:#8b5cf6;color:#8b5cf6}.template-card.create-new svg{margin-bottom:.5rem}.template-editor-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.template-editor-modal{background:var(--bg-primary);border-radius:16px;width:100%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.template-editor-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--glass-border)}.template-editor-header h2{margin:0;font-size:1.25rem;font-weight:600}.template-editor-header .close-btn{background:none;border:none;padding:.5rem;cursor:pointer;color:var(--text-secondary);border-radius:8px}.template-editor-header .close-btn:hover{background:var(--glass-border);color:var(--text-primary)}.template-editor-modal form{padding:1.5rem}.editor-error{background:#ef44441a;border:1px solid rgba(239,68,68,.2);color:#ef4444;padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;font-size:.9rem}.editor-section{margin-bottom:1.5rem}.editor-section h3{margin:0 0 .25rem;font-size:1rem;font-weight:600}.editor-section .section-hint{margin:0 0 1rem;font-size:.85rem;color:var(--text-secondary)}.editor-row{display:flex;gap:1rem;margin-bottom:1rem}.editor-field{display:flex;flex-direction:column;gap:.5rem}.editor-field.icon-field{flex-shrink:0}.editor-field.name-field{flex:1}.editor-field label{font-size:.85rem;font-weight:500;color:var(--text-secondary)}.editor-field input,.editor-field textarea{padding:.75rem 1rem;border:1px solid var(--glass-border);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);font-size:.9rem;resize:vertical}.editor-field input:focus,.editor-field textarea:focus{outline:none;border-color:#8b5cf6}.editor-field .field-hint{font-size:.75rem;color:var(--text-secondary);opacity:.8;margin-top:-.25rem}.editor-field .instructions-textarea{font-family:inherit;line-height:1.5}.editor-actions{display:flex;justify-content:flex-end;gap:.75rem;padding-top:1rem;border-top:1px solid var(--glass-border)}.editor-actions .cancel-btn{padding:.75rem 1.25rem;background:none;border:1px solid var(--glass-border);border-radius:8px;color:var(--text-secondary);cursor:pointer;font-size:.9rem}.editor-actions .save-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:linear-gradient(135deg,#8b5cf6,#7c3aed);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500}.editor-actions .save-btn:disabled{opacity:.6;cursor:not-allowed}.snippets-empty{display:flex;flex-direction:column;align-items:center;padding:2rem;text-align:center;border:2px dashed var(--glass-border);border-radius:12px;color:var(--text-secondary)}.snippets-empty p{margin:0 0 1rem}.snippets-empty .add-first-btn{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:linear-gradient(135deg,#8b5cf6,#7c3aed);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.85rem}.snippets-list{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.snippet-item{border:1px solid var(--glass-border);border-radius:10px;background:var(--bg-secondary);overflow:hidden;transition:border-color .2s}.snippet-item.expanded{border-color:#8b5cf6}.snippet-header{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;cursor:pointer}.snippet-header:hover{background:#8b5cf608}.snippet-drag{cursor:grab;color:var(--text-secondary);display:flex}.snippet-number{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#8b5cf61a;color:#8b5cf6;border-radius:6px;font-size:.8rem;font-weight:600;flex-shrink:0}.snippet-title-input{flex:1;padding:.5rem .75rem;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text-primary);font-size:.9rem}.snippet-title-input:focus{background:var(--bg-primary);border-color:var(--glass-border);outline:none}.snippet-chars{font-size:.75rem;color:var(--text-secondary);flex-shrink:0}.snippet-delete{background:none;border:none;padding:.375rem;color:var(--text-secondary);cursor:pointer;border-radius:6px}.snippet-delete:hover{background:#ef44441a;color:#ef4444}.snippet-content{padding:0 1rem 1rem}.snippet-content textarea{width:100%;padding:.75rem;border:1px solid var(--glass-border);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:.85rem;resize:vertical;font-family:inherit;line-height:1.5}.snippet-content textarea:focus{outline:none;border-color:#8b5cf6}.snippet-hint{margin:.5rem 0 0;font-size:.8rem;color:var(--text-secondary)}.add-snippet-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.75rem;background:none;border:1px dashed var(--glass-border);border-radius:8px;color:var(--text-secondary);cursor:pointer;font-size:.85rem;transition:all .2s}.add-snippet-btn:hover{border-color:#8b5cf6;color:#8b5cf6;background:#8b5cf60d}:root{--bg-primary: hsl(210, 20%, 98%);--bg-secondary: hsl(0, 0%, 100%);--text-primary: hsl(210, 20%, 12%);--text-secondary: hsl(210, 10%, 45%);--flash-primary: hsl(190, 90%, 45%);--flash-secondary: hsl(230, 85%, 60%);--flash-accent: hsl(260, 80%, 65%);--flash-error: hsl(0, 85%, 60%);--flash-primary-shadow: hsla(190, 90%, 45%, .3);--glass-surface: hsla(0, 0%, 100%, .95);--glass-border: hsla(210, 20%, 12%, .08);--glass-blur: blur(16px);--shadow-subtle: 0 4px 12px -2px hsla(210, 20%, 12%, .05);--font-main: "Inter", system-ui, -apple-system, sans-serif;--base-unit: 8px;--radius-lg: calc(var(--base-unit) * 2);--radius-md: var(--base-unit);--transition-fast: all .2s cubic-bezier(.4, 0, .2, 1);--transition-smooth: all .4s cubic-bezier(.4, 0, .2, 1)}*{margin:0;padding:0;box-sizing:border-box}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-main);line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}.premium-gradient-text{background:linear-gradient(135deg,var(--flash-primary),var(--flash-secondary));-webkit-background-clip:text;background-clip:text;color:transparent}.glass-card{background:var(--glass-surface);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-subtle);padding:calc(var(--base-unit) * 4)}.flash-button{background:var(--flash-primary);color:#fff;border:none;border-radius:var(--radius-md);padding:calc(var(--base-unit) * 1.5) calc(var(--base-unit) * 4);font-weight:600;cursor:pointer;transition:var(--transition-fast);box-shadow:0 8px 16px -4px var(--flash-primary-shadow)}.flash-button:hover{transform:translateY(-1px);filter:brightness(1.1);box-shadow:0 12px 20px -4px var(--flash-primary-shadow)}.silhouette-strip{height:1px;background:var(--glass-border);width:100%;margin:calc(var(--base-unit) * 4) 0}.safety-legend{font-size:.875rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-weight:500;opacity:.8}.page-header{position:sticky;top:calc(var(--base-unit) * 8);z-index:900;height:calc(var(--base-unit) * 10);width:100%;background:var(--glass-surface);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--glass-border);display:flex;justify-content:center;align-items:center;box-shadow:0 4px 12px -5px #0000000d}.page-title{font-size:1.5rem;font-weight:800;text-transform:uppercase;letter-spacing:.02em;color:var(--text-primary);margin:0}.action-card{display:flex;flex-direction:column;gap:calc(var(--base-unit) * 3);transition:var(--transition-smooth);cursor:pointer;text-decoration:none;color:inherit;position:relative;overflow:hidden;border:1px solid var(--glass-border)}.action-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px -8px #181f251a;border-color:var(--flash-primary)}.action-card-icon-container{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-bottom:.5rem}.action-card-title{font-size:1.25rem;font-weight:700;margin-bottom:calc(var(--base-unit) * .5);color:var(--text-primary)}.action-card-description{font-size:.9375rem;color:var(--text-secondary);line-height:1.6}.action-card-footer{margin-top:auto;display:flex;align-items:center;gap:var(--base-unit);font-weight:600;color:var(--flash-primary);font-size:.875rem}[data-theme=black],[data-theme=black] input[type=date],[data-theme=black] input[type=datetime-local],[data-theme=black] input[type=time]{color-scheme:dark}[data-theme=black] input[type=date]::-webkit-calendar-picker-indicator,[data-theme=black] input[type=datetime-local]::-webkit-calendar-picker-indicator,[data-theme=black] input[type=time]::-webkit-calendar-picker-indicator{filter:invert(1)}[data-theme=black] input[type=date],[data-theme=black] input[type=datetime-local]{color-scheme:dark!important}[data-theme=black] input[type=date]::-webkit-calendar-picker-indicator,[data-theme=black] input[type=datetime-local]::-webkit-calendar-picker-indicator{cursor:pointer!important;opacity:1!important;width:20px!important;height:20px!important;padding:4px!important;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3C/svg%3E") center/contain no-repeat!important;filter:none!important}
