:root{font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root[data-theme=light]{--bg-primary: #ffffff;--bg-secondary: #f9fafb;--bg-tertiary: #f3f4f6;--bg-elevated: #ffffff;--text-primary: #111827;--text-secondary: #6b7280;--text-tertiary: #9ca3af;--border-primary: #e5e7eb;--border-secondary: #d1d5db;--accent: #3b82f6;--accent-hover: #2563eb;--success: #10b981;--warning: #f59e0b;--danger: #ef4444;--shadow: rgba(0, 0, 0, .1);--shadow-lg: rgba(0, 0, 0, .15)}:root[data-theme=dark]{--bg-primary: #0a0a0a;--bg-secondary: #141414;--bg-tertiary: #1a1a1a;--bg-elevated: #1f1f1f;--text-primary: #f9fafb;--text-secondary: #d1d5db;--text-tertiary: #9ca3af;--border-primary: #2a2a2a;--border-secondary: #3a3a3a;--accent: #3b82f6;--accent-hover: #60a5fa;--success: #10b981;--warning: #f59e0b;--danger: #ef4444;--shadow: rgba(0, 0, 0, .3);--shadow-lg: rgba(0, 0, 0, .5)}:root{color:var(--text-primary);background:var(--bg-primary)}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid var(--border-primary);padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:var(--bg-secondary);color:var(--text-primary);cursor:pointer;transition:all .2s}button:hover{background-color:var(--bg-tertiary);border-color:var(--border-secondary)}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}*{box-sizing:border-box}code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.95em}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:var(--bg-primary)}.auth-card{width:100%;max-width:400px;background:var(--bg-elevated);border:1px solid var(--border-primary);border-radius:8px;padding:2rem}.auth-header{margin-bottom:2rem;text-align:center}.auth-header .logo{width:120px;height:120px;margin:0 auto 1rem;display:block;object-fit:contain}.auth-header h1{font-size:1.5rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary)}.auth-header p{font-size:.875rem;color:var(--text-secondary)}.auth-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:1px solid var(--border-primary)}.tab{flex:1;padding:.75rem;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-secondary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.tab:hover{color:var(--text-primary)}.tab.active{color:var(--accent);border-bottom-color:var(--accent)}.form{display:flex;flex-direction:column;gap:1rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.875rem;font-weight:500;color:var(--text-primary)}.form-group input,.form-group select,.form-group textarea{padding:.625rem .75rem;border:1px solid var(--border-primary);border-radius:4px;background:var(--bg-primary);color:var(--text-primary);font-size:.875rem;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--accent)}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{opacity:.5;cursor:not-allowed}.btn-primary{padding:.625rem 1rem;background:var(--accent);color:#fff;border:none;border-radius:4px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{padding:.625rem 1rem;background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:4px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary:hover:not(:disabled){background:var(--bg-tertiary)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-link{padding:.5rem;background:none;color:var(--text-secondary);border:none;font-size:.875rem;cursor:pointer;transition:all .2s;margin-top:.5rem}.btn-link:hover{color:var(--accent)}.error-message{padding:.75rem;background:var(--danger);color:#fff;border-radius:4px;font-size:.875rem;margin-bottom:1rem;opacity:.9}.info-message{padding:.75rem;background:var(--accent);color:#fff;border-radius:4px;font-size:.875rem;margin-bottom:1rem;opacity:.9}.dashboard{display:flex;min-height:100vh;background:var(--bg-primary)}.sidebar{width:240px;background:var(--bg-secondary);border-right:1px solid var(--border-primary);display:flex;flex-direction:column}.sidebar-header{padding:1.5rem 1rem;border-bottom:1px solid var(--border-primary)}.sidebar-header .logo-small{width:100px;height:100px;margin-bottom:.75rem;display:block;object-fit:contain}.sidebar-header h2{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.sidebar-header p{font-size:.875rem;color:var(--text-secondary)}.sidebar-role{font-size:.75rem;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin-top:.25rem}.sidebar-content{flex:1;padding:1rem;display:flex;flex-direction:column;gap:.25rem}.sidebar-note{font-size:.75rem;color:var(--text-tertiary);padding:.5rem}.nav-item{width:100%;padding:.625rem .75rem;background:none;border:none;border-radius:4px;color:var(--text-secondary);font-size:.875rem;font-weight:500;text-align:left;cursor:pointer;transition:all .2s}.nav-item:hover{background:var(--bg-tertiary);color:var(--text-primary)}.nav-item.active{background:var(--accent);color:#fff}.sidebar-footer{padding:1rem;border-top:1px solid var(--border-primary)}.main-content{flex:1;display:flex;flex-direction:column}.topbar{padding:1rem 1.5rem;border-bottom:1px solid var(--border-primary);display:flex;align-items:center;justify-content:space-between;background:var(--bg-elevated)}.topbar h1{font-size:1.25rem;font-weight:600;color:var(--text-primary)}.theme-toggle{width:36px;height:36px;padding:0;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:4px;font-size:1.125rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.theme-toggle:hover{background:var(--bg-tertiary)}.content{flex:1;padding:1.5rem;overflow:auto}.data-table{width:100%;border-collapse:collapse;background:var(--bg-elevated);border:1px solid var(--border-primary);border-radius:4px;overflow:hidden}.data-table thead{background:var(--bg-secondary)}.data-table th{padding:.75rem 1rem;text-align:left;font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.data-table td{padding:.875rem 1rem;border-top:1px solid var(--border-primary);font-size:.875rem;color:var(--text-primary)}.data-table code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.8125rem;color:var(--text-secondary)}.status{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500;text-transform:capitalize}.status-active{background:var(--success);color:#fff;opacity:.9}.status-pending{background:var(--warning);color:#fff;opacity:.9}.status-completed{background:var(--success);color:#fff;opacity:.9}.status-open{background:var(--accent);color:#fff;opacity:.9}.status-closed{background:var(--text-tertiary);color:#fff;opacity:.9}.priority{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500;text-transform:capitalize}.priority-high{background:var(--danger);color:#fff;opacity:.9}.priority-medium{background:var(--warning);color:#fff;opacity:.9}.priority-low{background:var(--text-tertiary);color:#fff;opacity:.9}@media(max-width:768px){.dashboard{flex-direction:column}.sidebar{width:100%;border-right:none;border-bottom:1px solid var(--border-primary)}.sidebar-content{flex-direction:row;overflow-x:auto}.form-row{grid-template-columns:1fr}.data-table{font-size:.8125rem}.data-table th,.data-table td{padding:.5rem .75rem}}
