@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Space+Mono:wght@400;700&display=swap";:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;font-weight:400;font-size:16px;--bg-primary: #ffffff;--bg-secondary: #f9fafb;--bg-tertiary: #f3f4f6;--card-bg: #ffffff;--text-primary: #111827;--text-secondary: #6b7280;--text-muted: #9ca3af;--border-color: #e5e7eb;--accent-color: #000000;--hover-color: #f9fafb;--error-color: #ef4444;--success-color: #10b981;--warning-color: #f59e0b;--primary-color: #000000;--primary-hover: #1f2937;--primary-light: #f9fafb;--gradient-primary: linear-gradient(135deg, #000000 0%, #374151 100%);--gradient-secondary: linear-gradient(135deg, #f9fafb 0%, #ffffff 100%);--gradient-success: linear-gradient(135deg, #10b981 0%, #059669 100%);--danger-color: #ef4444;--danger-bg: #fef2f2;--danger-border: #fecaca;--info-color: #3b82f6;--info-bg: #eff6ff;--info-border: #93c5fd;--success-bg: #f0fdf4;--success-border: #86efac;--warning-bg: #fffbeb;--warning-border: #fde68a;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .12);--shadow-xl: 0 16px 40px rgba(0, 0, 0, .15);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--transition: all .2s ease;--mobile-max: 768px;--tablet-max: 1024px;--desktop-min: 1025px;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--font-xs: .75rem;--font-sm: .875rem;--font-base: 1rem;--font-lg: 1.125rem;--font-xl: 1.25rem;--font-2xl: 1.5rem;--font-3xl: 1.875rem;--font-4xl: 2.25rem;color:var(--text-primary);background-color:var(--bg-primary);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[data-theme=dark] *{text-shadow:none!important}[data-theme=dark] *,[data-theme=dark] *:before,[data-theme=dark] *:after{border-color:var(--border-color)!important;outline-color:var(--border-color)!important}[data-theme=dark] .loading-spinner,[data-theme=dark] .loading-spinner-small,[data-theme=dark] .spinner,[data-theme=dark] .loading-indicator,[data-theme=dark] .stats-loading-responsive .loading-spinner{border:3px solid rgba(255,255,255,.1)!important;border-top-color:var(--primary-color)!important;box-shadow:none!important}[data-theme=dark] *{scrollbar-color:rgba(255,255,255,.2) transparent;scrollbar-width:thin}body,div,section,header,footer,nav,aside,article,main,button,input,select,textarea,a,p,h1,h2,h3,h4,h5,h6,.card,.sidebar,.modal,.dropdown{transition:background-color .3s ease,color .3s ease,border-color .3s ease}button{border-radius:var(--radius-md);border:2px solid transparent;padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-sm);font-weight:600;font-family:inherit;background:var(--gradient-primary);color:#fff;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.btn-small{padding:.5rem .75rem;font-size:.75rem}.hide-mobile{display:none}.show-mobile,.hide-desktop{display:block}.show-desktop{display:none}.text-center-mobile{text-align:center}.p-mobile{padding:var(--spacing-md)}.px-mobile{padding-left:var(--spacing-md);padding-right:var(--spacing-md)}.py-mobile{padding-top:var(--spacing-md);padding-bottom:var(--spacing-md)}.m-mobile{margin:var(--spacing-md)}@media (max-width: 768px){:root{font-size:14px}button{padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-base);min-height:2.75rem;min-width:2.75rem}.btn-small{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-sm);min-height:2.25rem}h1{font-size:var(--font-2xl);line-height:1.2}h2{font-size:var(--font-xl);line-height:1.3}h3{font-size:var(--font-lg);line-height:1.4}.hide-mobile{display:none!important}.show-mobile,.hide-desktop{display:block!important}.show-desktop{display:none!important}.text-center-mobile{text-align:center!important}.container-mobile{padding-left:var(--spacing-md);padding-right:var(--spacing-md);max-width:100%}input[type=text],input[type=email],input[type=password],input[type=number],input[type=tel],input[type=url],textarea,select{font-size:var(--font-base);padding:var(--spacing-md);min-height:2.75rem}}@media (min-width: 769px) and (max-width: 1024px){:root{font-size:15px}.hide-tablet{display:none!important}.show-tablet{display:block!important}}@media (min-width: 1025px){:root{font-size:16px}.hide-mobile{display:block!important}.show-mobile,.hide-desktop{display:none!important}.show-desktop{display:block!important}.text-center-mobile{text-align:left!important}}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){button{border-width:.5px}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}*:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}@media (pointer: coarse){button,input,select,textarea,a{min-height:2.75rem;min-width:2.75rem}}.status-badge.draft,.status-badge.status-draft{background-color:#f3f4f6!important;color:#374151!important}.status-badge.anbudsrunde,.status-badge.status-anbudsrunde{background-color:#fef3c7!important;color:#92400e!important}.status-badge.mottatt-bud,.status-badge.mottatt_bud,.status-badge.status-mottatt_bud{background-color:#e0f2fe!important;color:#0369a1!important}.status-badge.sendt_inn_review,.status-badge.sendt-inn-review,.status-badge.status-sendt_inn_review{background-color:#fef3c7!important;color:#92400e!important}.status-badge.akseptert-oppdrag,.status-badge.akseptert_oppdrag,.status-badge.status-akseptert_oppdrag,.status-badge.oppstartsjekkliste,.status-badge.status-oppstartsjekkliste,.status-badge.avsluttingsjekkliste,.status-badge.status-avsluttingsjekkliste{background-color:#d1fae5!important;color:#065f46!important}.status-badge.ferdig-prosjekt,.status-badge.ferdig_prosjekt,.status-badge.status-ferdig_prosjekt{background-color:#dcfce7!important;color:#166534!important}.status-badge.betalt,.status-badge.status-betalt{background-color:#f0fdf4!important;color:#14532d!important}.status-badge.tapt,.status-badge.status-tapt{background-color:#fee2e2!important;color:#991b1b!important}.status-badge.kansellert,.status-badge.status-kansellert{background-color:#fecaca!important;color:#991b1b!important}table th,.projects-table th,.data-table th,.customers-table th,.contractors-table th,.users-table th,.tasks-table th{background:#f3f4f6!important;color:#374151!important;background-image:none!important;background-clip:initial!important}[data-theme=dark] .card,[data-theme=dark] .panel,[data-theme=dark] .section,[data-theme=dark] .widget,[data-theme=dark] .box,[data-theme=dark] .dashboard-card,[data-theme=dark] .stat-card,[data-theme=dark] .chart-card,[data-theme=dark] .project-card,[data-theme=dark] .task-card,[data-theme=dark] .task-list-item,[data-theme=dark] .todo-item,[data-theme=dark] .list-card,[data-theme=dark] .modal,[data-theme=dark] .dropdown{background:var(--card-bg)!important;border-color:var(--border-color)!important;box-shadow:none!important;background-image:none!important}[data-theme=dark] .page-header,[data-theme=dark] .section-header,[data-theme=dark] .card-header,[data-theme=dark] .header{background:var(--bg-secondary)!important;border-color:var(--border-color)!important;box-shadow:none!important;background-image:none!important}[data-theme=dark] .status-badge{background-color:var(--bg-tertiary)!important;color:var(--text-primary)!important;border:1px solid var(--border-color)!important}[data-theme=dark] button:not(.btn-primary):not(.btn-danger):not(.btn-success):not(.btn-warning),[data-theme=dark] .btn:not(.btn-primary):not(.btn-danger):not(.btn-success):not(.btn-warning),[data-theme=dark] .secondary-button{background:var(--bg-tertiary)!important;color:var(--text-primary)!important;border-color:var(--border-color)!important;box-shadow:none!important}[data-theme=dark] button:not(.btn-primary):not(.btn-danger):not(.btn-success):not(.btn-warning):hover,[data-theme=dark] .btn:not(.btn-primary):not(.btn-danger):not(.btn-success):not(.btn-warning):hover,[data-theme=dark] .secondary-button:hover{background:var(--hover-color)!important;border-color:var(--primary-color)!important;box-shadow:var(--shadow-md)!important;color:var(--text-primary)!important}[data-theme=dark] .btn-primary,[data-theme=dark] .primary-button,[data-theme=dark] button.primary{background:var(--gradient-primary)!important;color:#fff!important;border-color:transparent!important;box-shadow:none!important}[data-theme=dark] .btn-danger{background:#f8717126!important;color:var(--error-color)!important;border-color:#f8717166!important;box-shadow:none!important}[data-theme=dark] .btn-success{background:#34d39926!important;color:var(--success-color)!important;border-color:#34d39959!important;box-shadow:none!important}[data-theme=dark] .btn-warning{background:#fbbf2426!important;color:var(--warning-color)!important;border-color:#fbbf2459!important;box-shadow:none!important}[data-theme=dark] input,[data-theme=dark] textarea,[data-theme=dark] select{background-color:var(--bg-secondary)!important;color:var(--text-primary)!important;border-color:var(--border-color)!important;box-shadow:none!important}[data-theme=dark] input:focus,[data-theme=dark] textarea:focus,[data-theme=dark] select:focus{border-color:var(--primary-color)!important;box-shadow:none!important}[data-theme=dark] table,[data-theme=dark] .data-table,[data-theme=dark] .projects-table,[data-theme=dark] .customers-table,[data-theme=dark] .contractors-table,[data-theme=dark] .users-table,[data-theme=dark] .tasks-table{background:var(--card-bg)!important;color:var(--text-primary)}[data-theme=dark] table th,[data-theme=dark] .projects-table th,[data-theme=dark] .data-table th,[data-theme=dark] .customers-table th,[data-theme=dark] .contractors-table th,[data-theme=dark] .users-table th,[data-theme=dark] .tasks-table th{background:var(--bg-tertiary)!important;color:var(--text-primary)!important;border-color:var(--border-color)!important;background-image:none!important}[data-theme=dark] table td,[data-theme=dark] .data-table td,[data-theme=dark] .projects-table td,[data-theme=dark] .customers-table td,[data-theme=dark] .contractors-table td,[data-theme=dark] .users-table td,[data-theme=dark] .tasks-table td{color:var(--text-secondary);border-color:var(--border-color)}[data-theme=dark] table tbody tr:hover,[data-theme=dark] .data-table tbody tr:hover{background:var(--hover-color)}[data-theme=dark] .list-item,[data-theme=dark] .item,[data-theme=dark] .list-card{background:var(--bg-secondary)!important;border-color:var(--border-color)!important;box-shadow:none!important}[data-theme=dark] .list-item:hover,[data-theme=dark] .item:hover{background:var(--hover-color)!important;border-color:var(--border-color)!important;box-shadow:none!important}[data-theme=dark] .badge,[data-theme=dark] .tag{background:var(--bg-tertiary)!important;color:var(--text-primary)!important;border:1px solid var(--border-color)!important;box-shadow:none!important}[data-theme=dark] .chart-container,[data-theme=dark] .chart-wrapper,[data-theme=dark] .graph-container{background:transparent!important;border-color:var(--border-color)!important;box-shadow:none!important}[data-theme=dark] .tooltip,[data-theme=dark] .popover{background:var(--card-bg)!important;border-color:var(--border-color)!important;box-shadow:none!important;color:var(--text-primary)!important}[data-theme=dark] .tab,[data-theme=dark] .nav-tab{color:var(--text-secondary)!important;box-shadow:none!important}[data-theme=dark] .tab.active,[data-theme=dark] .nav-tab.active{color:var(--text-primary)!important;border-bottom-color:var(--primary-color)!important;box-shadow:none!important}[data-theme=dark] .alert,[data-theme=dark] .notification,[data-theme=dark] .toast{background:var(--card-bg)!important;border-color:var(--border-color)!important;box-shadow:none!important}[data-theme=dark] hr,[data-theme=dark] .divider{border-color:var(--border-color)!important}[data-theme=dark] .icon-wrapper,[data-theme=dark] .icon-box{background:var(--bg-tertiary)!important;color:var(--text-secondary)!important;box-shadow:none!important}[data-theme=dark] .profit-margin-section .section-header h3{color:var(--text-primary)!important}[data-theme=dark] *::-webkit-scrollbar{width:6px;height:6px}[data-theme=dark] *::-webkit-scrollbar-track{background:transparent!important}[data-theme=dark] *::-webkit-scrollbar-thumb{background:#fff3!important;border-radius:3px}[data-theme=dark] *::-webkit-scrollbar-thumb:hover{background:#ffffff4d!important}[data-theme=dark] .status-badge.draft,[data-theme=dark] .status-badge-new.draft{background-color:#f3f4f6!important;color:#4b5563!important;border-color:#e5e7eb!important}[data-theme=dark] .status-badge.anbudsrunde,[data-theme=dark] .status-badge-new.anbudsrunde{background-color:#fef3c7!important;color:#92400e!important;border-color:#fde68a!important}[data-theme=dark] .status-badge.mottatt-bud,[data-theme=dark] .status-badge.mottatt_bud,[data-theme=dark] .status-badge-new.mottatt-bud,[data-theme=dark] .status-badge-new.mottatt_bud{background-color:#dbeafe!important;color:#1e40af!important;border-color:#bfdbfe!important}[data-theme=dark] .status-badge.sendt_inn_review,[data-theme=dark] .status-badge.sendt-inn-review,[data-theme=dark] .status-badge-new.sendt_inn_review,[data-theme=dark] .status-badge-new.sendt-inn-review{background-color:#fef3c7!important;color:#92400e!important;border-color:#fde68a!important}[data-theme=dark] .status-badge.akseptert-oppdrag,[data-theme=dark] .status-badge.akseptert_oppdrag,[data-theme=dark] .status-badge-new.akseptert-oppdrag,[data-theme=dark] .status-badge-new.akseptert_oppdrag{background-color:#d1fae5!important;color:#065f46!important;border-color:#a7f3d0!important}[data-theme=dark] .status-badge.oppstartsjekkliste,[data-theme=dark] .status-badge-new.oppstartsjekkliste{background-color:#dbeafe!important;color:#1e40af!important;border-color:#bfdbfe!important}[data-theme=dark] .status-badge.avsluttingsjekkliste,[data-theme=dark] .status-badge-new.avsluttingsjekkliste{background-color:#e0e7ff!important;color:#4338ca!important;border-color:#c7d2fe!important}[data-theme=dark] .status-badge.ferdig-prosjekt,[data-theme=dark] .status-badge.ferdig_prosjekt,[data-theme=dark] .status-badge-new.ferdig-prosjekt,[data-theme=dark] .status-badge-new.ferdig_prosjekt{background-color:#dcfce7!important;color:#166534!important;border-color:#bbf7d0!important}[data-theme=dark] .status-badge.betalt,[data-theme=dark] .status-badge-new.betalt{background-color:#d1fae5!important;color:#065f46!important;border-color:#a7f3d0!important}[data-theme=dark] .status-badge.tapt,[data-theme=dark] .status-badge-new.tapt,[data-theme=dark] .status-badge.kansellert,[data-theme=dark] .status-badge-new.kansellert{background-color:#fee2e2!important;color:#991b1b!important;border-color:#fecaca!important}.popup-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:fadeIn .2s ease-out}.popup-container{background:var(--card-bg);border-radius:12px;max-width:480px;width:90%;max-height:90vh;overflow:hidden;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;border:1px solid var(--border-color);animation:slideUp .2s ease-out;display:flex;flex-direction:column}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.popup-header{display:flex;align-items:center;justify-content:center;gap:1rem;padding:1.5rem;border-bottom:1px solid var(--border-color);position:relative}.popup-icon{flex-shrink:0;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center}.popup-title{flex:1;margin:0;font-size:1.125rem;font-weight:600;color:var(--text-primary);text-align:center}.popup-close{display:none!important}.popup-close:before{display:none!important}.popup-close svg{color:#6b7280!important;fill:none!important;stroke:#6b7280!important;stroke-width:2!important;width:20px!important;height:20px!important;display:block!important;opacity:1!important;visibility:visible!important}.popup-close:hover:not(:disabled){background:#f3f4f6!important;color:#374151!important}.popup-close:hover:not(:disabled) svg{color:#374151!important;stroke:#374151!important}.popup-close:disabled{cursor:not-allowed;opacity:.5}.popup-content{padding:1.5rem;flex:1;overflow-y:auto}.popup-message{margin:0;color:var(--text-primary);line-height:1.6;font-size:.9375rem;text-align:center;font-weight:700}.popup-actions{display:flex;gap:.75rem;padding:1.5rem;border-top:1px solid var(--border-color);background:var(--bg-secondary);justify-content:center}.popup-actions .btn{min-width:80px}.popup-alert-info .popup-header{background:#eff6ff}.popup-alert-info .popup-icon{background:#dbeafe;color:#2563eb}.popup-alert-success .popup-header{background:#f0fdf4}.popup-alert-success .popup-icon{background:#dcfce7;color:#16a34a}.popup-alert-error .popup-header{background:#fef2f2}.popup-alert-error .popup-icon{background:#fee2e2;color:#dc2626}.popup-alert-warning .popup-header{background:#fffbeb}.popup-alert-warning .popup-icon{background:#fef3c7;color:#d97706}.popup-confirm .popup-header{background:#fef2f2}.popup-confirm .popup-icon{background:#fee2e2;color:#dc2626}@media (max-width: 640px){.popup-container{width:95%;margin:1rem}.popup-header,.popup-content,.popup-actions{padding:1rem}.popup-actions{flex-direction:column-reverse}.popup-actions .btn{width:100%}}[data-theme=dark] .popup-overlay{background:#000000bf;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}[data-theme=dark] .popup-container{background:var(--card-bg);border:1px solid rgba(0,212,255,.3);box-shadow:0 0 60px #00d4ff4d,0 20px 60px #00000080}[data-theme=dark] .popup-header{border-bottom:1px solid rgba(0,212,255,.2)}[data-theme=dark] .popup-title{color:var(--text-primary)}[data-theme=dark] .popup-close{color:#ffffffb3!important;background:transparent!important}[data-theme=dark] .popup-close svg{color:#ffffffb3!important;stroke:#ffffffb3!important}[data-theme=dark] .popup-close:hover:not(:disabled){background:#00d4ff1a!important;color:#00d4ff!important}[data-theme=dark] .popup-close:hover:not(:disabled) svg{color:#00d4ff!important;stroke:#00d4ff!important}[data-theme=dark] .popup-message{color:var(--text-secondary)}[data-theme=dark] .popup-actions{border-top:1px solid rgba(0,212,255,.2);background:linear-gradient(135deg,#0f141980,#1a1f2980)}[data-theme=dark] .popup-alert-info .popup-header{background:#2563eb1a}[data-theme=dark] .popup-alert-info .popup-icon{background:#2563eb33;color:#60a5fa;box-shadow:0 0 20px #2563eb66}[data-theme=dark] .popup-alert-success .popup-header{background:#16a34a1a}[data-theme=dark] .popup-alert-success .popup-icon{background:#16a34a33;color:#4ade80;box-shadow:0 0 20px #16a34a66}[data-theme=dark] .popup-alert-error .popup-header{background:#dc26261a}[data-theme=dark] .popup-alert-error .popup-icon{background:#dc262633;color:#ff6b6b;box-shadow:0 0 20px #dc262666}[data-theme=dark] .popup-alert-warning .popup-header{background:#d977061a}[data-theme=dark] .popup-alert-warning .popup-icon{background:#d9770633;color:#fbbf24;box-shadow:0 0 20px #d9770666}[data-theme=dark] .popup-confirm .popup-header{background:#dc26261a}[data-theme=dark] .popup-confirm .popup-icon{background:#dc262633;color:#ff6b6b;box-shadow:0 0 20px #dc262666}.otp-wrapper{display:flex;flex-direction:column;align-items:center;gap:16px;width:100%}.otp-input-container{display:flex;gap:12px;justify-content:center;margin:20px 0}.otp-input{width:48px;height:56px;font-size:24px;font-weight:600;text-align:center;border:2px solid #000000;border-radius:8px;background-color:#fff;color:#000;transition:border-color .15s ease;font-family:monospace}.otp-input:focus{outline:none;border-color:#6366f1;box-shadow:none}.otp-input:disabled{background-color:#f3f4f6;cursor:not-allowed;opacity:.6}.otp-input-container.error .otp-input{border-color:#ef4444}.otp-input-container.error .otp-input:focus{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.otp-error{color:#ef4444;font-size:14px;text-align:center;margin-top:-8px}.otp-resend-button{background:none;border:none;color:#3b82f6;font-size:14px;font-weight:500;cursor:pointer;padding:8px 16px;border-radius:6px;transition:border-color .15s ease}.otp-resend-button:hover:not(:disabled){background-color:#eff6ff;color:#2563eb}.otp-resend-button:disabled{color:#9ca3af;cursor:not-allowed}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-8px)}20%,40%,60%,80%{transform:translate(8px)}}.otp-input-container.shake{animation:shake .5s ease}@media (prefers-color-scheme: dark){.otp-input{background-color:#1f2937;color:#f9fafb;border-color:#374151}.otp-input:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa1a}.otp-input:disabled{background-color:#111827}.otp-input-container.error .otp-input{border-color:#f87171}.otp-input-container.error .otp-input:focus{border-color:#f87171;box-shadow:0 0 0 3px #f871711a}.otp-error{color:#f87171}.otp-resend-button{color:#60a5fa}.otp-resend-button:hover:not(:disabled){background-color:#1e3a5f;color:#93c5fd}.otp-resend-button:disabled{color:#6b7280}}@media (max-width: 640px){.otp-input{width:40px;height:48px;font-size:20px}.otp-input-container{gap:8px}}.login-page{min-height:100vh;background:#f8fafc;display:flex;align-items:center;justify-content:center;padding:2rem 1rem;position:relative}.error-toast{position:fixed;top:20px;left:50%;transform:translate(-50%);z-index:10000;animation:toastSlideDown .4s cubic-bezier(.16,1,.3,1);max-width:90%;width:100%;max-width:420px}.error-toast-content{background:linear-gradient(135deg,#fee2e2,#fef2f2);border:1.5px solid #fca5a5;border-radius:12px;padding:1rem 1.25rem;display:flex;align-items:center;gap:.75rem;box-shadow:0 10px 25px #ef444426,0 4px 10px #0000001a;position:relative;overflow:hidden}.error-toast-content:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,#ef4444,#dc2626);border-radius:12px 0 0 12px}.error-toast-icon{flex-shrink:0;color:#dc2626;width:18px;height:18px;animation:iconPulse 2s ease-in-out infinite}.error-toast-message{flex:1;color:#991b1b;font-size:.875rem;font-weight:500;line-height:1.5;word-wrap:break-word}.error-toast-close{flex-shrink:0;background:transparent;border:none;color:#991b1b;cursor:pointer;padding:.25rem;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;opacity:.7}.error-toast-close:hover{background:#dc26261a;opacity:1;transform:scale(1.1)}@keyframes toastSlideDown{0%{opacity:0;transform:translate(-50%) translateY(-20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes iconPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}.login-container{width:100%;max-width:400px;display:flex;flex-direction:column;align-items:center}.login-logo{text-align:center;margin-bottom:1.5rem}.logo-image{max-width:140px;height:auto;object-fit:contain}.login-card{width:100%;background:#fff;border-radius:16px;padding:2rem;border:1px solid #e5e7eb;box-shadow:0 4px 20px #0f172a0d}.login-header{text-align:center;margin-bottom:1.5rem}.login-header h2{font-size:1.375rem;font-weight:600;color:#111827;margin:0 0 .375rem;letter-spacing:-.02em}.login-header p{color:#6b7280;font-size:.875rem;margin:0}.login-content{display:flex;flex-direction:column;align-items:center;gap:.75rem}.google-signin-container{width:100%;display:flex;justify-content:center;min-height:44px}.google-button-wrapper{display:flex;justify-content:center;width:100%}.google-button-wrapper>div{width:100%!important}.loading-spinner-container{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.75rem 1.5rem;background:#f3f4f6;border-radius:8px;color:#4b5563;font-size:.875rem;font-weight:500}.loading-spinner{width:20px;height:20px;border:2px solid #e5e7eb;border-top-color:#111827;border-radius:50%;animation:spin .8s linear infinite}.loading-google{display:flex;align-items:center;justify-content:center;gap:.5rem;color:#9ca3af;font-size:.875rem}.loading-spinner-small{width:16px;height:16px;border:2px solid #e5e7eb;border-top-color:#9ca3af;border-radius:50%;animation:spin .8s linear infinite}.google-callback-loading{text-align:center}.google-callback-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1rem;gap:1.5rem}.google-spinner{position:relative;width:48px;height:48px}.google-spinner-ring{position:absolute;width:100%;height:100%;border-radius:50%;border:3px solid transparent;border-top-color:#4285f4;border-right-color:#ea4335;border-bottom-color:#fbbc05;border-left-color:#34a853;animation:google-spin 1s linear infinite}@keyframes google-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.google-callback-text{color:#6b7280;font-size:.9375rem;font-weight:500;letter-spacing:-.01em}.login-footer{margin-top:1.5rem;text-align:center}.login-hint{color:#94a3b8;font-size:.6875rem;margin:0;line-height:1.5}@media (max-width: 480px){.login-page{padding:1rem}.login-card{padding:2rem 1.5rem}.login-header h2{font-size:1.5rem}.logo-image{max-width:160px}}[data-theme=dark] .login-page{background:linear-gradient(135deg,#0f0f1a,#1a1a2e)}[data-theme=dark] .login-card{background:#1e1e32f2;border:1px solid rgba(0,212,255,.15);box-shadow:0 0 30px #00d4ff1a,0 4px 15px #0000004d}[data-theme=dark] .login-header h2{color:#fff;text-shadow:0 0 20px rgba(0,212,255,.3)}[data-theme=dark] .login-header p{color:#a1a1aa}[data-theme=dark] .login-footer{border-top-color:#00d4ff1a}[data-theme=dark] .login-hint{color:#6b7280}[data-theme=dark] .loading-spinner-container{background:#00d4ff1a;color:#a1a1aa}[data-theme=dark] .loading-spinner{border-color:#00d4ff33;border-top-color:#00d4ff}[data-theme=dark] .loading-google{color:#6b7280}[data-theme=dark] .loading-spinner-small{border-color:#00d4ff33;border-top-color:#6b7280}[data-theme=dark] .google-callback-text{color:#a1a1aa}[data-theme=dark] .google-spinner-ring{border-top-color:#60a5fa;border-right-color:#f87171;border-bottom-color:#fbbf24;border-left-color:#4ade80}[data-theme=dark] .error-toast-content{background:linear-gradient(135deg,#7f1d1d4d,#450a0a4d);border-color:#ff5c5c66;box-shadow:0 10px 30px #ff5c5c33,0 4px 15px #0000004d,0 0 40px #ff5c5c1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}[data-theme=dark] .error-toast-content:before{background:linear-gradient(180deg,#ff5c5c,#ff3a3a);box-shadow:0 0 15px #ff5c5c99}[data-theme=dark] .error-toast-icon{color:#ff5c5c;filter:drop-shadow(0 0 6px rgba(255,92,92,.5))}[data-theme=dark] .error-toast-message,[data-theme=dark] .error-toast-close{color:#ff8a8a}[data-theme=dark] .error-toast-close:hover{background:#ff5c5c33;color:#ff5c5c}.login-divider{display:flex;align-items:center;text-align:center;width:100%;margin:.25rem 0;color:#b0b8c4;font-size:.75rem;font-weight:400}.login-divider:before,.login-divider:after{content:"";flex:1;border-bottom:1px solid #e5e7eb}.login-divider span{padding:0 .75rem}[data-theme=dark] .login-divider{color:#6b7280}[data-theme=dark] .login-divider:before,[data-theme=dark] .login-divider:after{border-bottom-color:#374151}.email-login-button{width:100%;padding:.625rem 1rem;background:transparent;border:none;border-radius:6px;color:#6366f1;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.email-login-button:hover:not(:disabled){background:#6366f114;color:#4f46e5}.email-login-button:disabled{opacity:.5;cursor:not-allowed}[data-theme=dark] .email-login-button{color:#818cf8}[data-theme=dark] .email-login-button:hover:not(:disabled){background:#818cf81a;color:#a5b4fc}.otp-login-container{width:100%;display:flex;flex-direction:column;animation:fadeSlideIn .2s ease}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.back-button{background:none;border:none;color:#a1a8b3;font-size:.875rem;font-weight:400;cursor:pointer;padding:.5rem 0;margin-bottom:1.5rem;margin-top:0;display:block;width:auto;text-align:center;transition:color .15s ease;opacity:.8}.back-button:hover:not(:disabled){color:#6366f1;opacity:1}.back-button:disabled{opacity:.5;cursor:not-allowed}[data-theme=dark] .back-button{color:#6b7280}[data-theme=dark] .back-button:hover:not(:disabled){color:#818cf8;opacity:1}.email-form{display:flex;flex-direction:column;gap:1rem;width:100%}.form-group{display:flex;flex-direction:column;gap:0}.form-group label{display:none}[data-theme=dark] .form-group label{color:#d1d5db}.email-input{width:100%;padding:.875rem 1rem;border:1px solid #d1d5db;border-radius:8px;font-size:.9375rem;background-color:#f9fafb;color:#111827;transition:all .15s ease}.email-input:focus{outline:none;background-color:#fff;border-color:#6366f1;box-shadow:0 0 0 3px #6366f114}.email-input:disabled{background-color:#f3f4f6;cursor:not-allowed;opacity:.6}.email-input::placeholder{color:#9ca3af}[data-theme=dark] .email-input{background-color:#1f2937;border-color:#374151;color:#f3f4f6}[data-theme=dark] .email-input:focus{background-color:#111827;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f}[data-theme=dark] .email-input:disabled{background-color:#0f172a}[data-theme=dark] .email-input::placeholder{color:#6b7280}.submit-button{width:100%;padding:.875rem;background:#6366f1;border:none;border-radius:10px;color:#fff;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .15s ease}.submit-button:hover:not(:disabled){background:#4f46e5}.submit-button:disabled{opacity:.5;cursor:not-allowed}[data-theme=dark] .submit-button{background:#6366f1}[data-theme=dark] .submit-button:hover:not(:disabled){background:#818cf8}.otp-code-container{display:flex;flex-direction:column;gap:1.5rem}.otp-header{text-align:center}.otp-header h3{font-size:1rem;font-weight:600;color:#1e293b;margin-bottom:.375rem}.otp-header p{font-size:.8125rem;color:#64748b}[data-theme=dark] .otp-header h3{color:#f1f5f9}[data-theme=dark] .otp-header p{color:#94a3b8}@media (max-width: 640px){.email-login-button{font-size:.875rem;padding:.625rem .875rem}.back-button{font-size:.8125rem}.email-input{font-size:.9375rem}.otp-header h3{font-size:1rem}.otp-header p{font-size:.8125rem}}.delete-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.delete-modal{background:var(--card-bg);border-radius:12px;max-width:480px;width:90%;max-height:90vh;overflow:hidden;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;border:1px solid var(--border-color)}.delete-modal-header{display:flex;align-items:center;gap:1rem;padding:1.5rem;border-bottom:1px solid var(--border-color);background:#fef2f2}.delete-modal-icon{flex-shrink:0;width:40px;height:40px;border-radius:50%;background:#fee2e2;display:flex;align-items:center;justify-content:center;color:#dc2626}.delete-modal-title{flex:1;margin:0;font-size:1.125rem;font-weight:600;color:#111827}.delete-modal-close{flex-shrink:0;width:32px;height:32px;border:none;background:none;color:#6b7280;cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.delete-modal-close:hover:not(:disabled){background:#f3f4f6;color:#374151}.delete-modal-close:disabled{cursor:not-allowed;opacity:.5}.delete-modal-content{padding:1.5rem}.delete-modal-message{margin:0 0 1rem;color:#374151;line-height:1.5}.delete-modal-item{background:#f9fafb;border:1px solid var(--border-color);border-radius:6px;padding:.75rem;margin:1rem 0;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.875rem;color:#1f2937;word-break:break-all}.delete-modal-warning{display:flex;align-items:flex-start;gap:.5rem;background:#fef3cd;border:1px solid #fbbf24;border-radius:6px;padding:.75rem;margin:1rem 0;color:#92400e;font-size:.875rem;line-height:1.4}.delete-modal-warning svg{flex-shrink:0;margin-top:.125rem}.delete-modal-actions{display:flex;gap:.75rem;padding:1.5rem;border-top:1px solid var(--border-color);background:#f9fafb;justify-content:flex-end}.delete-modal-actions .btn{min-width:80px}@media (max-width: 640px){.delete-modal{width:95%;margin:1rem}.delete-modal-header,.delete-modal-content,.delete-modal-actions{padding:1rem}.delete-modal-actions{flex-direction:column-reverse}.delete-modal-actions .btn{width:100%}}[data-theme=dark] .delete-modal-overlay{background:#000000bf;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}[data-theme=dark] .delete-modal{background:var(--card-bg);border:1px solid rgba(255,92,92,.3);box-shadow:0 0 60px #ff5c5c4d,0 20px 60px #00000080}[data-theme=dark] .delete-modal-header{background:#ff5c5c1a;border-bottom:1px solid rgba(255,92,92,.3)}[data-theme=dark] .delete-modal-icon{background:#ff5c5c33;color:var(--error-color);box-shadow:0 0 20px #ff5c5c66}[data-theme=dark] .delete-modal-title{color:var(--text-primary)}[data-theme=dark] .delete-modal-close{color:var(--text-secondary)}[data-theme=dark] .delete-modal-close:hover:not(:disabled){background:#00d4ff1a;color:var(--accent-color)}[data-theme=dark] .delete-modal-message{color:var(--text-secondary)}[data-theme=dark] .delete-modal-item{background:#00d4ff0d;border:1px solid rgba(0,212,255,.2);color:var(--text-primary)}[data-theme=dark] .delete-modal-warning{background:#ffb83626;border:1px solid rgba(255,184,54,.3);color:var(--warning-color)}[data-theme=dark] .delete-modal-actions{background:linear-gradient(135deg,#0f141980,#1a1f2980);border-top:1px solid rgba(255,92,92,.3)}.simple-page{max-width:1200px;margin:0 auto;padding:2rem;min-height:100vh}.simple-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.simple-header h1{font-size:2rem;font-weight:600;color:#1f2937;margin:0}.simple-toast-container{position:fixed;top:1.5rem;right:1.5rem;z-index:9999;display:flex;flex-direction:column;gap:.75rem;max-width:400px}.simple-message{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-radius:10px;font-weight:500;box-shadow:0 10px 25px #00000026,0 4px 10px #0000001a;animation:slideInRight .3s ease-out;min-width:280px}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.simple-message.success{background-color:#065f46;color:#fff;border:none}.simple-message.error{background-color:#991b1b;color:#fff;border:none}.simple-message button{background:none;border:none;font-size:1.25rem;cursor:pointer;color:currentColor;opacity:.8;margin-left:1rem;padding:0;line-height:1}.simple-message button:hover{opacity:1}.simple-btn{padding:.75rem 1.5rem;border-radius:6px;border:none;font-weight:500;cursor:pointer;transition:all .2s;font-size:.875rem}.simple-btn.primary{background-color:#2563eb;color:#fff}.simple-btn.primary:hover{background-color:#1d4ed8}.simple-btn.secondary{background-color:#6b7280;color:#fff}.simple-btn.secondary:hover{background-color:#4b5563}.simple-btn.success{background-color:#059669;color:#fff}.simple-btn.success:hover{background-color:#047857}.simple-btn.warning{background-color:#d97706;color:#fff}.simple-btn.warning:hover{background-color:#b45309}.simple-btn.danger{background-color:#dc2626;color:#fff}.simple-btn.danger:hover{background-color:#b91c1c}.simple-btn.small{padding:.5rem 1rem;font-size:.75rem}.simple-btn:disabled{opacity:.5;cursor:not-allowed}.simple-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;gap:1rem}.simple-spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top:3px solid #000000;border-radius:50%;animation:spin 1s linear infinite}.simple-table{background:var(--card-bg);border-radius:8px;overflow:hidden;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a}.simple-table table{width:100%;border-collapse:collapse}.simple-table th,.simple-table td{padding:1rem;text-align:left;border-bottom:1px solid #f3f4f6}.simple-table th{background-color:#f9fafb;font-weight:600;color:#374151;font-size:.875rem}.simple-table tbody tr:hover{background-color:#f9fafb}.simple-table tbody tr:last-child td{border-bottom:none}.user-info{display:flex;flex-direction:column;gap:.25rem;align-items:center;text-align:center}.user-name{font-weight:600;color:#1f2937;text-align:center}.user-title,.user-email{font-size:.875rem;color:#6b7280}.simple-actions{display:flex;gap:.5rem;flex-wrap:wrap}.simple-badge{padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase}.simple-badge.admin{background-color:#fee2e2;color:#991b1b}.simple-badge.user{background-color:#dbeafe;color:#1e40af}.simple-badge.active{background-color:#d1fae5;color:#065f46}.simple-badge.inactive{background-color:#f3f4f6;color:#6b7280}.simple-modal{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.simple-modal-content{background:var(--card-bg);border-radius:8px;padding:2rem;max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.simple-modal-content h2{margin:0 0 1.5rem;font-size:1.5rem;font-weight:600;color:#1f2937}.simple-modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem}.simple-input{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:1rem;margin-bottom:1rem;transition:border-color .2s}.simple-input[multiple]{min-height:140px}.simple-input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.simple-input-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.reporting-selector{border:1px solid var(--border-color);border-radius:8px;padding:.75rem;margin-bottom:1rem;background:var(--bg-secondary)}.reporting-label{font-size:.85rem;font-weight:600;color:var(--text-secondary);margin-bottom:.5rem}.reporting-search{margin-bottom:.75rem}.reporting-selected{display:flex;flex-wrap:wrap;gap:.5rem;min-height:32px;align-items:center;margin-bottom:.75rem}.reporting-placeholder{font-size:.8rem;color:var(--text-muted)}.reporting-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .5rem;border-radius:999px;background:var(--bg-tertiary);color:var(--text-primary);font-size:.75rem;font-weight:600}.reporting-chip button{background:none;border:none;padding:0;color:inherit;cursor:pointer;font-size:.75rem;line-height:1}.reporting-list{border-top:1px solid var(--border-color);padding-top:.5rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.35rem;max-height:180px;overflow:auto}.reporting-option{display:flex;align-items:center;gap:.5rem;padding:.45rem .5rem;border-radius:6px;cursor:pointer;background:transparent}.reporting-option input{margin:0}.reporting-option.selected{background:var(--primary-light)}.reporting-option-text{display:flex;flex-direction:column;gap:.15rem}.reporting-option-name{font-size:.85rem;font-weight:600;color:var(--text-primary)}.reporting-option-title{font-size:.75rem;color:var(--text-secondary)}.simple-card{background:var(--card-bg);border-radius:8px;padding:2rem;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a}.simple-card h2{margin:0 0 1.5rem;font-size:1.5rem;font-weight:600;color:#1f2937}.simple-info{display:flex;flex-direction:column;gap:1.5rem}.simple-info-item{display:flex;flex-direction:column;gap:.5rem}.simple-info-item label{font-size:.875rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.simple-info-item span{font-size:1rem;color:#1f2937;padding:.5rem 0;border-bottom:1px solid #f3f4f6}.simple-form{display:flex;flex-direction:column;gap:1.5rem}.simple-form-group{display:flex;flex-direction:column;gap:.5rem}.simple-form-group label{font-size:.875rem;font-weight:600;color:#374151}.simple-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #f3f4f6}@media (max-width: 768px){.simple-page{padding:1rem}.simple-header{flex-direction:column;gap:1rem;align-items:flex-start}.simple-actions,.simple-modal-actions{flex-direction:column}.simple-input-row{grid-template-columns:1fr}.simple-table{overflow-x:auto}.simple-table table{min-width:600px}}:root{--error-max-width: 480px;--error-btn-min-width: 160px;--error-danger-light: #fef2f2;--error-danger-main: #ef4444;--error-danger-dark: #dc2626}.error-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,#f8fafc,#f1f5f9,#e2e8f0);padding:2rem 1.5rem;position:relative;overflow:hidden}.error-page:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:radial-gradient(circle at 20% 80%,rgba(239,68,68,.03) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(59,130,246,.03) 0%,transparent 50%);pointer-events:none}.error-container{position:relative;max-width:var(--error-max-width);width:100%;text-align:center;background:#fff;padding:3.5rem 2.5rem 3rem;border-radius:24px;box-shadow:0 1px 3px #0000000a,0 4px 12px #0000000a,0 16px 48px #0000000f;border:1px solid rgba(0,0,0,.04)}.error-icon{position:relative;margin:0 auto 2rem;width:100px;height:100px;display:flex;align-items:center;justify-content:center}.error-icon:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:linear-gradient(135deg,#fef2f2,#fee2e2);animation:iconPulse 3s ease-in-out infinite}.error-icon.error-unauthorized{color:var(--error-danger-main)}.error-icon.error-unauthorized svg{position:relative;z-index:1;width:52px;height:52px;stroke-width:1.5;filter:drop-shadow(0 2px 4px rgba(239,68,68,.2))}.error-icon.error-notfound{color:#f59e0b}.error-icon.error-notfound:before{background:linear-gradient(135deg,#fffbeb,#fef3c7)}.error-icon.error-notfound svg{position:relative;z-index:1;width:52px;height:52px;stroke-width:1.5;filter:drop-shadow(0 2px 4px rgba(245,158,11,.2))}@keyframes iconPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.08);opacity:.85}}.error-title{font-size:7rem;font-weight:900;color:#0f172a;margin:0 0 .25rem;line-height:1;letter-spacing:-.04em;font-feature-settings:"tnum" on,"lnum" on}.error-subtitle{font-size:1.375rem;font-weight:700;color:#1e293b;margin:0 0 .5rem;letter-spacing:-.01em}.error-description{color:#64748b;margin:0 auto 2rem;line-height:1.65;font-size:.9375rem;max-width:340px;font-weight:400}.error-actions{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}.error-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1.5rem;min-width:var(--error-btn-min-width);min-height:48px;border:none;border-radius:12px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);text-decoration:none;letter-spacing:-.01em}.error-btn svg{width:18px;height:18px;flex-shrink:0}.error-btn-primary{background:#0f172a;color:#fff;box-shadow:0 1px 2px #0000000d,0 4px 12px #0f172a26}.error-btn-primary:hover{background:#1e293b;transform:translateY(-2px);box-shadow:0 4px 8px #00000014,0 8px 24px #0f172a33}.error-btn-primary:active{transform:translateY(0);box-shadow:0 1px 2px #0000000d}.error-btn-secondary{background:#f8fafc;color:#334155;border:1.5px solid #e2e8f0}.error-btn-secondary:hover{background:#f1f5f9;border-color:#cbd5e1;transform:translateY(-2px);box-shadow:0 4px 12px #0000000f}.error-btn-secondary:active{transform:translateY(0);background:#e2e8f0}@media (max-width: 640px){.error-page{padding:1.5rem 1rem}.error-container{padding:2.5rem 1.75rem 2.25rem;border-radius:20px}.error-icon{width:88px;height:88px;margin-bottom:1.5rem}.error-icon svg,.error-icon.error-unauthorized svg,.error-icon.error-notfound svg{width:44px;height:44px}.error-title{font-size:5.5rem}.error-subtitle{font-size:1.25rem}.error-description{font-size:.875rem;margin-bottom:1.75rem}.error-actions{flex-direction:column;gap:.625rem}.error-btn{width:100%;max-width:280px;min-height:50px}}@media (max-width: 400px){.error-container{padding:2rem 1.25rem 1.75rem}.error-icon{width:76px;height:76px;margin-bottom:1.25rem}.error-icon svg,.error-icon.error-unauthorized svg,.error-icon.error-notfound svg{width:38px;height:38px}.error-title{font-size:4.5rem}.error-subtitle{font-size:1.125rem}}[data-theme=dark] .error-page{background:linear-gradient(160deg,#0a0d12,#0f1419,#151c25)}[data-theme=dark] .error-page:before{background-image:radial-gradient(circle at 20% 80%,rgba(239,68,68,.06) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(0,212,255,.06) 0%,transparent 50%)}[data-theme=dark] .error-container{background:linear-gradient(145deg,#141b23f2,#0f1419fa);border:1px solid rgba(0,212,255,.12);box-shadow:0 0 60px #00000080,0 0 30px #00d4ff0d,inset 0 1px #ffffff08}[data-theme=dark] .error-icon:before{background:linear-gradient(135deg,#ef444426,#b91c1c26);box-shadow:0 0 40px #ef444426}[data-theme=dark] .error-icon.error-unauthorized{color:#f87171}[data-theme=dark] .error-icon.error-unauthorized svg{filter:drop-shadow(0 0 12px rgba(248,113,113,.4))}[data-theme=dark] .error-icon.error-notfound:before{background:linear-gradient(135deg,#fbbf2426,#d9770626);box-shadow:0 0 40px #fbbf2426}[data-theme=dark] .error-icon.error-notfound{color:#fbbf24}[data-theme=dark] .error-icon.error-notfound svg{filter:drop-shadow(0 0 12px rgba(251,191,36,.4))}[data-theme=dark] .error-title{color:#f8fafc;text-shadow:0 0 40px rgba(0,212,255,.15)}[data-theme=dark] .error-subtitle{color:#e2e8f0}[data-theme=dark] .error-description{color:#94a3b8}[data-theme=dark] .error-btn-primary{background:linear-gradient(135deg,#00d4ff26,#7c3aed26);color:#00d4ff;border:1px solid rgba(0,212,255,.3);box-shadow:0 0 20px #00d4ff26,inset 0 1px #ffffff0d}[data-theme=dark] .error-btn-primary:hover{background:linear-gradient(135deg,#00d4ff40,#7c3aed40);border-color:#00d4ff80;box-shadow:0 0 30px #00d4ff4d,0 8px 24px #0000004d,inset 0 1px #ffffff14;transform:translateY(-2px)}[data-theme=dark] .error-btn-secondary{background:#1e293b99;color:#cbd5e1;border:1px solid rgba(148,163,184,.2)}[data-theme=dark] .error-btn-secondary:hover{background:#33415599;border-color:#94a3b859;box-shadow:0 4px 16px #00000040;transform:translateY(-2px)}*{margin:0;padding:0;box-sizing:border-box}:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;font-weight:400;--bg-primary: #ffffff;--bg-secondary: #f9fafb;--bg-tertiary: #f3f4f6;--card-bg: #ffffff;--text-primary: #111827;--text-secondary: #6b7280;--text-muted: #9ca3af;--border-color: #e5e7eb;--accent-color: #000000;--hover-color: #f9fafb;--error-color: #ef4444;--success-color: #10b981;--warning-color: #f59e0b;--primary-color: #000000;--primary-hover: #1f2937;--primary-light: #f9fafb;--gradient-primary: linear-gradient(135deg, #000000 0%, #374151 100%);--gradient-secondary: linear-gradient(135deg, #f9fafb 0%, #ffffff 100%);--gradient-success: linear-gradient(135deg, #10b981 0%, #059669 100%);--danger-color: #ef4444;--danger-bg: #fef2f2;--danger-border: #fecaca;--info-color: #3b82f6;--info-bg: #eff6ff;--info-border: #93c5fd;--success-bg: #f0fdf4;--success-border: #86efac;--warning-bg: #fffbeb;--warning-border: #fde68a;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .12);--shadow-xl: 0 16px 40px rgba(0, 0, 0, .15);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--transition: all .2s ease;color:var(--text-primary);background-color:var(--bg-primary);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[data-theme=dark]{--bg-primary: #0f1419;--bg-secondary: #1a1f29;--bg-tertiary: #252d3a;--card-bg: #1a1f29;--text-primary: #e5e7eb;--text-secondary: #b7c2d5;--text-muted: #7d889b;--border-color: #2b3442;--accent-color: #9fb3c8;--hover-color: #1f2632;--primary-color: #9fb3c8;--primary-hover: #8aa0b8;--primary-light: #1b2230;--error-color: #ff5c5c;--success-color: #00ff88;--warning-color: #ffb836;--info-color: #00d4ff;--gradient-primary: linear-gradient(135deg, #1f2a38 0%, #161d27 100%);--gradient-secondary: linear-gradient(135deg, #1a1f29 0%, #1d2431 100%);--gradient-success: linear-gradient(135deg, #2fbf90 0%, #1f9f73 100%);--danger-color: #ff5c5c;--danger-bg: #2d1a1a;--danger-border: #4a2424;--info-color: #8aa0b8;--info-bg: #1b2230;--info-border: #273142;--success-bg: #1a2d24;--success-border: #274536;--warning-bg: #2d2619;--warning-border: #4a3d24;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .5);--shadow-md: 0 4px 12px rgba(0, 0, 0, .6);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .7);--shadow-xl: 0 16px 40px rgba(0, 0, 0, .8)}body{margin:0;min-height:100vh;background-color:var(--bg-primary);color:var(--text-primary);transition:background-color .3s ease,color .3s ease}body,div,section,header,footer,nav,aside,article,main,button,input,select,textarea,a,p,h1,h2,h3,h4,h5,h6,.card,.profile-page,.profile-container,.info-item,.form-group{transition:background-color .3s ease,color .3s ease,border-color .3s ease}#root{width:100%;min-height:100vh}h1,h2,h3,h4,h5,h6{font-weight:600;color:var(--text-primary)}button{border-radius:12px;border:2px solid transparent;padding:.75rem 1.5rem;font-size:.875rem;font-weight:600;font-family:inherit;background:var(--gradient-primary);color:#fff;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-sm);position:relative;overflow:hidden}button:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#fff3,#fff0);opacity:0;transition:opacity .3s ease}button:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:transparent}button:hover:before{opacity:1}button:active{transform:translateY(0);box-shadow:var(--shadow-sm)}button:focus{outline:none;box-shadow:var(--shadow-md),0 0 0 3px #0003}button.secondary{background:var(--card-bg);color:var(--text-primary);border:2px solid var(--border-color);box-shadow:var(--shadow-sm)}button.secondary:hover{background:var(--bg-tertiary);border-color:var(--primary-color);color:var(--primary-color)}button.danger{background:linear-gradient(135deg,#e53e3e,#c53030);border-color:transparent;color:#fff}button.danger:hover{background:linear-gradient(135deg,#c53030,#9c2626)}input,textarea{border-radius:12px;border:2px solid var(--border-color);padding:.875rem;font-size:.875rem;font-family:inherit;background-color:var(--card-bg);color:var(--text-primary);transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-sm)}input:focus,textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:var(--shadow-md),0 0 0 3px #0000001a;transform:translateY(-1px)}input::placeholder,textarea::placeholder{color:var(--text-muted)}.btn{border-radius:12px;border:2px solid transparent;padding:.75rem 1.5rem;font-size:.875rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-sm);position:relative;overflow:hidden;background:var(--gradient-primary);color:#fff}.btn:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#fff3,#fff0);opacity:0;transition:opacity .3s ease}.btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:transparent}.btn:hover:before{opacity:1}.btn:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.btn:focus{outline:none;box-shadow:var(--shadow-md),0 0 0 3px #0003}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn:disabled:hover{transform:none;box-shadow:var(--shadow-sm)}.btn-primary{background:var(--gradient-primary);color:#fff;border-color:transparent}.btn-secondary{background:var(--card-bg);color:var(--text-primary);border:2px solid var(--border-color);box-shadow:var(--shadow-sm)}.btn-secondary:hover{background:var(--bg-tertiary);border-color:var(--primary-color);color:var(--primary-color)}.btn-danger{background:linear-gradient(135deg,#e53e3e,#c53030);border-color:transparent;color:#fff}.btn-danger:hover{background:linear-gradient(135deg,#c53030,#9c2626)}.btn-success{background:linear-gradient(135deg,#10b981,#059669);border-color:transparent;color:#fff}.btn-success:hover{background:linear-gradient(135deg,#059669,#047857)}.btn-warning{background:linear-gradient(135deg,#f59e0b,#d97706);border-color:transparent;color:#fff}.btn-warning:hover{background:linear-gradient(135deg,#d97706,#b45309)}.btn-full{width:100%}.profile-page{min-height:100vh;background:var(--bg-primary);padding:2rem;width:100%}.profile-container{max-width:900px;margin:0 auto;display:flex;flex-direction:column;gap:2rem}.profile-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:1rem;color:var(--text-secondary);font-size:.875rem}.loading-spinner{width:36px;height:36px;border:2px solid rgba(0,0,0,.1);border-radius:50%;border-top:2px solid var(--primary-color);animation:spin .8s linear infinite}.spinner{width:16px;height:16px;border:1.5px solid rgba(0,0,0,.1);border-radius:50%;border-top:1.5px solid currentColor;animation:spin .8s linear infinite;margin-right:.5rem}.profile-header-content{display:flex;align-items:center;justify-content:space-between;padding:2rem;position:relative;background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 100%);border-bottom:1px solid var(--border-color)}.profile-header-left{display:flex;align-items:center;gap:1.5rem}.profile-avatar{width:110px;height:110px;background:var(--gradient-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 4px 16px #0000001f,0 0 0 4px var(--bg-primary),0 0 0 6px var(--border-color);flex-shrink:0;transition:transform .2s ease,box-shadow .2s ease}.profile-avatar:hover{transform:scale(1.02);box-shadow:0 8px 24px #00000026,0 0 0 4px var(--bg-primary),0 0 0 6px var(--accent-color)}.profile-avatar.has-image{background:transparent;border:3px solid var(--border-color);box-shadow:0 4px 16px #0000001f}.profile-avatar-image{width:100%;height:100%;border-radius:50%;object-fit:cover;background:#fff}.profile-avatar-initials{font-size:2.5rem;font-weight:700;letter-spacing:-.02em;text-transform:uppercase}.profile-info{display:flex;flex-direction:column;gap:.25rem}.profile-name{font-size:1.875rem;font-weight:700;margin:0;color:var(--text-primary);letter-spacing:-.03em;line-height:1.2}.profile-email{font-size:.9375rem;color:var(--text-secondary);margin:0}.profile-title{font-size:.9375rem;color:var(--text-secondary);margin:.25rem 0 .75rem;font-weight:500}.profile-meta{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-top:.5rem}.role-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border-radius:6px;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.role-badge.admin{background:var(--primary-color);color:#fff;box-shadow:0 2px 8px #00000026}.role-badge.user{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color)}.member-since{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;color:var(--text-muted);font-weight:500}.profile-actions{display:flex;gap:.75rem}.alert-container{margin-bottom:1rem}.alert{display:flex;align-items:center;padding:1.25rem;border-radius:var(--radius-sm);font-size:.9375rem;position:relative}.alert-icon{margin-right:.75rem;flex-shrink:0}.alert-content{flex:1;font-weight:500}.alert-success{background:var(--success-bg);color:var(--success-color);border-left:4px solid var(--success-color)}.alert-error{background:var(--danger-bg);color:var(--danger-color);border-left:4px solid var(--danger-color)}.alert-close{background:none;border:none;color:inherit;cursor:pointer;padding:.25rem;opacity:.7;transition:var(--transition);margin-left:.5rem;display:flex;align-items:center;justify-content:center}.alert-close:hover{opacity:1}.card{background:var(--card-bg);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden;border:1px solid var(--border-color)}.card-header{padding:1.5rem 2rem;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;background:var(--bg-secondary)}.card-header h2{font-size:1.25rem;font-weight:600;margin:0;color:var(--text-primary)}.card-body{padding:2rem}.info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem}.info-item{display:flex;flex-direction:column;gap:.625rem}.info-label{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.info-value{font-size:1.125rem;color:var(--text-primary);font-weight:500;display:flex;align-items:center;min-height:1.75rem}.role-tag{display:inline-flex;align-items:center;padding:.375rem .75rem;border-radius:var(--radius-sm);font-size:.8125rem;font-weight:500}.role-tag.admin{background:var(--primary-color);color:#fff}.role-tag.user{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color)}.form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem}.form-group label{font-size:.875rem;font-weight:600;color:var(--text-secondary)}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.org-chart{display:flex;flex-direction:column;gap:1rem}.org-empty{padding:1rem;color:var(--text-secondary);font-size:.95rem}.org-controls{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;padding:.25rem 0}.org-controls input[type=range]{flex:1;min-width:160px;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:6px;padding:0;margin:0 .25rem;border:none;border-radius:999px;background:var(--bg-tertiary);box-shadow:none}.org-controls input[type=range]::-webkit-slider-runnable-track{height:6px;background:var(--bg-tertiary);border-radius:999px}.org-controls input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:var(--primary-color);border:2px solid var(--card-bg);box-shadow:var(--shadow-sm);margin-top:-5px}.org-controls input[type=range]::-moz-range-track{height:6px;background:var(--bg-tertiary);border-radius:999px}.org-controls input[type=range]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--primary-color);border:2px solid var(--card-bg);box-shadow:var(--shadow-sm)}.org-controls .btn.btn-small{padding:.4rem .6rem;min-height:2rem}.org-zoom-value{font-size:.75rem;font-weight:600;color:var(--text-secondary);min-width:2.5rem;text-align:center}.org-canvas{position:relative;height:clamp(360px,60vh,720px);border-radius:var(--radius-md);border:1px solid var(--border-color);background-image:radial-gradient(rgba(148,163,184,.15) 1px,transparent 0);background-size:24px 24px;overflow:hidden;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;--org-line: rgba(148, 163, 184, .7);--org-line-secondary: rgba(148, 163, 184, .45)}.org-canvas.is-panning{cursor:grabbing}[data-theme=dark] .org-canvas{background-image:radial-gradient(rgba(148,163,184,.08) 1px,transparent 0);--org-line: rgba(148, 163, 184, .5);--org-line-secondary: rgba(148, 163, 184, .28)}.org-tree-scale{position:absolute;top:0;left:0;transform-origin:0 0}.org-links{position:absolute;top:0;left:0;pointer-events:none;z-index:0}.org-link{fill:none;stroke:var(--org-line);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.org-link.primary{stroke-width:2.2}.org-link.secondary{stroke:var(--org-line-secondary);stroke-dasharray:6 6}.org-nodes{position:relative;z-index:1}.org-node{position:absolute}.org-card{height:100%;border-radius:18px;border:1px solid var(--border-color);background:linear-gradient(180deg,var(--card-bg) 0%,var(--bg-secondary) 100%);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;--org-accent: #6f4b75;transition:transform .2s ease,box-shadow .2s ease}.org-node:hover .org-card{transform:translateY(-2px);box-shadow:var(--shadow-md)}.org-card-header{display:flex;align-items:center;gap:.65rem;margin:.6rem;padding:.45rem .75rem;border-radius:999px;background:var(--org-accent);color:#fff}.org-card-name{font-weight:600;font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.org-card-body{padding:0 1rem 1rem;text-align:left;display:flex;flex-direction:column;gap:.3rem;min-width:0}.org-card-title{font-size:.85rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.org-card-secondary{display:block;font-size:.75rem;color:var(--text-muted);line-height:1.2;overflow-wrap:anywhere}.org-card-label{font-weight:600;color:var(--text-muted);margin-right:.25rem}.org-node-avatar{width:38px;height:38px;border-radius:50%;background:#fff3;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;flex-shrink:0;overflow:hidden}.org-node-avatar img{width:100%;height:100%;object-fit:cover;background:#fff}.org-editor{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:2rem}.org-editor-section h3{font-size:1rem;margin:0 0 1rem}.org-editor-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.org-editor-grid input,.org-editor-grid select{padding:.75rem;border-radius:var(--radius-md);border:2px solid var(--border-color);background:var(--card-bg);color:var(--text-primary);font-family:inherit}.org-editor-grid select[multiple]{min-height:140px}@media (max-width: 940px){.profile-page{padding:1.5rem}.profile-header-content{flex-direction:column;align-items:flex-start;padding:2rem;gap:1.5rem}.profile-header-left,.profile-actions{width:100%}.info-grid{grid-template-columns:1fr;gap:1.5rem}}@media (max-width: 640px){.profile-page{padding:1rem}.profile-header-content{padding:1.5rem}.profile-header-left{flex-direction:column;align-items:center;text-align:center;gap:1.25rem}.profile-info{align-items:center}.profile-meta{justify-content:center}.profile-avatar{width:80px;height:80px}.card-header{padding:1.25rem;flex-direction:column;gap:1rem;align-items:flex-start}.card-body{padding:1.25rem}.form-actions{flex-direction:column;width:100%}.form-actions button{width:100%}}.language-selector,.theme-selector{position:relative;display:flex;align-items:center}.language-selector select,.theme-selector select{width:100%;padding:.875rem 3rem .875rem .875rem;border-radius:var(--radius-md);border:2px solid var(--border-color);background-color:var(--card-bg);color:var(--text-primary);font-size:.875rem;font-family:inherit;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-sm);-webkit-appearance:none;-moz-appearance:none;appearance:none}.language-selector select:hover,.theme-selector select:hover{border-color:var(--primary-color);box-shadow:var(--shadow-md)}.language-selector select:focus,.theme-selector select:focus{outline:none;border-color:var(--primary-color);box-shadow:var(--shadow-md),0 0 0 3px #00d4ff1a;transform:translateY(-1px)}.language-icon,.theme-icon{position:absolute;right:1rem;pointer-events:none;color:var(--text-secondary);transition:color .3s ease}.theme-selector select:hover~.theme-icon,.language-selector select:hover~.language-icon{color:var(--primary-color)}[data-theme=dark] .language-selector select,[data-theme=dark] .theme-selector select{background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-tertiary) 100%);border-color:var(--border-color)}[data-theme=dark] .language-selector select:focus,[data-theme=dark] .theme-selector select:focus{border-color:var(--primary-color);box-shadow:var(--shadow-lg),0 0 0 3px #00d4ff33}[data-theme=dark] .theme-icon,[data-theme=dark] .language-icon{color:var(--accent-color)}[data-theme=dark]{color-scheme:dark;--bg-primary: #0f1115;--bg-secondary: #151922;--bg-tertiary: #1d2330;--card-bg: #151922;--text-primary: #e5e7eb;--text-secondary: #b5bdc8;--text-muted: #8b95a7;--border-color: #2a3140;--accent-color: #8ab4f8;--hover-color: #1a202c;--primary-color: #4c8bf5;--primary-hover: #3b76dc;--primary-light: #1b2433;--error-color: #f87171;--success-color: #34d399;--warning-color: #fbbf24;--gradient-primary: linear-gradient(135deg, #4c8bf5 0%, #3b76dc 100%);--gradient-secondary: linear-gradient(135deg, #1b2230 0%, #141922 100%);--gradient-success: linear-gradient(135deg, #34d399 0%, #10b981 100%);--danger-color: #f87171;--danger-bg: #2a1515;--danger-border: #3a1d1d;--info-color: #60a5fa;--info-bg: #162233;--info-border: #22324a;--success-bg: #14261f;--success-border: #1f3a2e;--warning-bg: #2a2113;--warning-border: #3a2d17;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .4);--shadow-md: 0 6px 16px rgba(0, 0, 0, .5);--shadow-lg: 0 12px 28px rgba(0, 0, 0, .55);--shadow-xl: 0 20px 40px rgba(0, 0, 0, .6)}[data-theme=dark] .profile-page{background:transparent}[data-theme=dark] .profile-header-content{background:var(--bg-secondary);border-color:var(--border-color)}.change-password-container{max-width:600px;margin:0 auto;padding:2rem;background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a}.change-password-container h1{margin-bottom:1.5rem;color:#333;border-bottom:2px solid #f0f0f0;padding-bottom:.75rem}.loading{display:flex;justify-content:center;align-items:center;min-height:300px;font-size:1.2rem;color:#666}.error-message{color:#e74c3c;padding:1rem;border:1px solid #e74c3c;border-radius:4px;background-color:#e74c3c0d;margin-bottom:1.5rem}.success-message{color:#27ae60;padding:1rem;border:1px solid #27ae60;border-radius:4px;background-color:#27ae600d;margin-bottom:1.5rem}.change-password-form{margin-top:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:#555}.form-group input{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;transition:border-color .2s}.form-group input:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 2px #3498db33}.form-group input:disabled{background-color:#f9f9f9;cursor:not-allowed}.password-actions{display:flex;gap:1rem;margin-top:2rem}.btn-save,.btn-cancel{padding:.75rem 1.5rem;border:none;border-radius:4px;font-weight:600;cursor:pointer;transition:background-color .2s,transform .1s}.btn-save{background-color:#27ae60;color:#fff;flex:1}.btn-save:hover:not(:disabled){background-color:#219653}.btn-save:disabled{background-color:#95a5a6;cursor:not-allowed}.btn-cancel{background-color:#e74c3c;color:#fff;flex:1}.btn-cancel:hover:not(:disabled){background-color:#c0392b}.btn-cancel:disabled{background-color:#95a5a6;cursor:not-allowed}@media (max-width: 768px){.change-password-container{padding:1.5rem}.password-actions{flex-direction:column}.btn-save,.btn-cancel{width:100%}}.set-password-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-background-light),var(--color-background));padding:3rem 1rem}.set-password-container{max-width:28rem;width:100%;display:flex;flex-direction:column;gap:2rem}.set-password-header{text-align:center}.set-password-title{margin-top:1.5rem;font-size:1.875rem;font-weight:800;color:var(--color-text);margin-bottom:.5rem}.set-password-subtitle{margin-top:.5rem;font-size:.875rem;color:var(--color-text-secondary)}.set-password-info{border-radius:.375rem;background-color:var(--color-warning-light);padding:1rem;margin-bottom:1rem}.set-password-info-text{font-size:.875rem;color:var(--color-warning);margin-bottom:1rem}.resend-button{width:100%;display:flex;justify-content:center;padding:.5rem 1rem;border:1px solid transparent;border-radius:.375rem;box-shadow:0 1px 2px #0000000d;font-size:.875rem;font-weight:500;color:#fff;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));cursor:pointer;transition:all .2s ease-in-out}.resend-button:hover:not(:disabled){background:linear-gradient(135deg,var(--color-primary-dark),var(--color-secondary-dark));transform:translateY(-1px)}.resend-button:focus{outline:none;box-shadow:0 0 0 3px #3b82f666}.resend-button:disabled{opacity:.5;cursor:not-allowed}.set-password-form-container{background:var(--card-bg);border-radius:1rem;box-shadow:0 25px 50px -12px #00000040;border:1px solid var(--color-border);padding:2rem}.set-password-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.875rem;font-weight:500;color:var(--color-text)}.set-password-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;display:block;width:100%;padding:.75rem;border:1px solid var(--color-border);border-radius:.375rem;color:var(--color-text);background:var(--card-bg);font-size:.875rem;line-height:1.25rem;transition:all .2s ease-in-out}.set-password-input::placeholder{color:var(--color-text-muted)}.set-password-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #3b82f61a}.set-password-submit{group-relative:relative;width:100%;display:flex;justify-content:center;padding:.75rem 1rem;border:1px solid transparent;border-radius:.375rem;font-size:.875rem;font-weight:500;color:#fff;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));cursor:pointer;transition:all .2s ease-in-out}.set-password-submit:hover:not(:disabled){background:linear-gradient(135deg,var(--color-primary-dark),var(--color-secondary-dark));transform:translateY(-1px);box-shadow:0 4px 6px -1px #0000001a}.set-password-submit:focus{outline:none;box-shadow:0 0 0 3px #3b82f666}.set-password-submit:disabled{opacity:.5;cursor:not-allowed}.password-requirements{margin-top:.5rem}.password-requirements ul{list-style:none;padding:0;margin:0;font-size:.75rem;color:var(--color-text-secondary)}.password-requirements li{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.password-requirements li.valid{color:var(--color-success)}.password-requirements li.invalid{color:var(--color-error)}.btn-link{font-size:.875rem;color:var(--color-primary);text-decoration:none;transition:color .2s ease-in-out}.btn-link:hover{color:var(--color-primary-dark)}.text-center{text-align:center}@media (max-width: 640px){.set-password-page{padding:1rem .5rem}.set-password-form-container{padding:1.5rem}.set-password-title{font-size:1.5rem}}.reset-password-page{min-height:100vh;background-color:var(--bg-primary);display:flex;align-items:center;justify-content:center;padding:2rem .5rem}.reset-password-container{max-width:28rem;width:100%;margin:0 auto}.reset-password-header{text-align:center;margin-bottom:2rem}.reset-password-icon{display:inline-flex;align-items:center;justify-content:center;width:4rem;height:4rem;background:var(--gradient-primary);border-radius:.75rem;margin-bottom:1.5rem;box-shadow:var(--shadow-lg)}.reset-password-icon svg{width:2rem;height:2rem;color:#fff}.reset-password-title{font-size:1.875rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem}.reset-password-subtitle{color:var(--text-secondary);font-size:1rem}.reset-password-form-container{background:var(--card-bg);border-radius:1rem;box-shadow:var(--shadow-xl);border:1px solid var(--border-color);padding:2rem}.reset-password-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column}.reset-password-input{display:block;width:100%;padding:.75rem 1rem;border:1px solid var(--color-border);border-radius:.5rem;color:var(--color-text);background:var(--card-bg);font-size:1rem;transition:all .2s ease-in-out}.reset-password-input::placeholder{color:var(--color-text-muted)}.reset-password-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #3b82f61a}.reset-password-submit{width:100%;display:flex;justify-content:center;align-items:center;padding:.75rem 1rem;border:none;border-radius:.5rem;box-shadow:0 1px 2px #0000000d;font-size:.875rem;font-weight:500;color:#fff;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));cursor:pointer;transition:all .2s ease-in-out}.reset-password-submit:hover:not(:disabled){background:linear-gradient(135deg,var(--color-primary-dark),var(--color-secondary-dark));transform:translateY(-1px);box-shadow:0 4px 6px -1px #0000001a}.reset-password-submit:focus{outline:none;box-shadow:0 0 0 3px #3b82f666}.reset-password-submit:disabled{opacity:.5;cursor:not-allowed}.loading-spinner{width:1.25rem;height:1.25rem;margin-right:.75rem;margin-left:-.25rem;animation:spin 1s linear infinite}.loading-spinner circle{opacity:.25}.loading-spinner path{opacity:.75}.message{border-radius:.5rem;padding:.75rem;display:flex;align-items:center;margin-bottom:1rem}.message-icon{height:1.25rem;width:1.25rem;margin-right:.5rem;flex-shrink:0}.message-text{font-size:.875rem;font-weight:500;flex:1}.error-message{background-color:var(--color-error-light);border:1px solid var(--color-error-border);color:var(--color-error)}.success-message{background-color:var(--color-success-light);border:1px solid var(--color-success-border);color:var(--color-success)}@media (max-width: 640px){.reset-password-page{padding:1rem .5rem}.reset-password-form-container{padding:1.5rem}.reset-password-title{font-size:1.5rem}}.ai-estimation-card{background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid #dbeafe;border-radius:1.25rem;margin:0;box-shadow:0 .5rem 1.5rem #0f172a14;overflow:hidden;transition:box-shadow .2s ease,transform .2s ease}.ai-estimation-card:hover{transform:translateY(-2px);box-shadow:0 .75rem 2rem #0f172a1f}.ai-card-compact{display:flex;align-items:center;justify-content:space-between;padding:1.75rem 2rem;cursor:pointer;transition:background-color .2s ease;border-bottom:1px solid rgba(148,163,184,.2)}.ai-card-compact:hover{background:#3b82f60a}.compact-info{display:flex;align-items:center;gap:1.5rem}.ai-badge{display:flex;align-items:center;gap:.5rem;color:#1d4ed8;font-size:.95rem;font-weight:600}.ai-icon{color:inherit;width:18px;height:18px}.ai-price{color:#0f172a;font-size:1.25rem;font-weight:700}.expand-button{color:#1d4ed8;display:flex;align-items:center}.ai-card-expanded{border-top:1px solid rgba(148,163,184,.2);background:transparent;padding:1.75rem 2rem}.estimation-details{display:flex;flex-direction:column;gap:.75rem}.detail-row{display:flex;align-items:center;gap:10px;padding:8px 0}.detail-icon{color:#666;width:18px;height:18px;flex-shrink:0}.detail-label{color:#555;font-weight:500;min-width:120px}.detail-value{color:#333;font-weight:600;margin-left:auto}.estimation-breakdown{padding-top:1.25rem}.estimation-breakdown h4{margin:0 0 .75rem;color:#0f172a;font-size:1rem;font-weight:600}.task-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#3b82f60f;border-radius:.75rem;border:1px solid rgba(59,130,246,.1)}.task-desc{color:#0f172a;font-weight:500}.task-hours{color:#1e293b;font-size:.95rem;font-weight:500}@media (max-width: 768px){.ai-card-compact{padding:1.5rem}.compact-info{gap:1rem}.detail-row{flex-direction:column;align-items:flex-start;gap:.25rem}.detail-value{margin-left:0}.ai-card-expanded{padding:1.5rem}.task-item{flex-direction:column;align-items:flex-start;gap:.25rem}}[data-theme=dark] .ai-estimation-card{background:var(--card-bg);border-color:var(--border-color);box-shadow:none}[data-theme=dark] .ai-card-compact,[data-theme=dark] .ai-card-expanded{border-color:var(--border-color)}[data-theme=dark] .ai-card-compact:hover{background:var(--hover-color)}[data-theme=dark] .ai-badge{color:var(--primary-color)}[data-theme=dark] .ai-price,[data-theme=dark] .detail-label,[data-theme=dark] .detail-value,[data-theme=dark] .estimation-breakdown h4,[data-theme=dark] .task-desc,[data-theme=dark] .task-hours{color:var(--text-primary)}[data-theme=dark] .detail-icon{color:var(--text-muted)}[data-theme=dark] .task-item{background:#3b82f61f;border-color:#3b82f633}.todo-list-container{background:var(--card-bg);border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 1px 3px #0000001a;min-width:0;overflow:hidden}.todo-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;border-bottom:1px solid #f3f4f6;padding-bottom:1rem;min-width:0;gap:1rem}.todo-list-title{margin:0;font-size:1.125rem;font-weight:600;color:#1f2937;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word;overflow:hidden;flex:1;min-width:0}.todo-count{font-size:.875rem;color:#6b7280;font-weight:500;white-space:nowrap;flex-shrink:0}.todo-add-form{display:flex;gap:.75rem;margin-bottom:1.5rem}.todo-input{flex:1;padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;background:var(--card-bg);transition:border-color .2s ease}.todo-input:focus{outline:none;border-color:#374151;box-shadow:0 0 0 2px #3741511a}.todo-input:disabled{background:#f9fafb;color:#6b7280;cursor:not-allowed}.todo-add-btn{padding:.75rem;background:#374151;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;min-width:44px}.todo-add-btn:hover:not(:disabled){background:#1f2937}.todo-add-btn:disabled{background:#d1d5db;cursor:not-allowed}.todo-section{margin-bottom:1.5rem}.todo-section:last-child{margin-bottom:0}.todo-section-title{margin:0 0 1rem;font-size:.875rem;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.5px}.todo-list{display:flex;flex-direction:column;gap:.75rem}.todo-item{display:flex;align-items:center;gap:.75rem;padding:.875rem;background:#f9fafb;border:1px solid #f3f4f6;border-radius:6px;transition:all .2s ease;min-width:0;overflow:hidden}.todo-item:hover{background:#f3f4f6;border-color:#e5e7eb}.todo-item.completed{background:#f0f9ff;border-color:#e0f2fe}.todo-toggle{padding:.25rem;background:none;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;color:#6b7280;transition:all .2s ease;display:flex;align-items:center;justify-content:center;min-width:24px;min-height:24px}.todo-toggle:hover{background:#f3f4f6;border-color:#9ca3af}.todo-toggle.completed{background:#374151;border-color:#374151;color:#fff}.todo-content{flex:1;display:flex;flex-direction:column;gap:.25rem;min-width:0}.todo-text{font-size:.875rem;color:#1f2937;line-height:1.5;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word;overflow:hidden}.todo-text.completed{text-decoration:line-through;color:#6b7280}.todo-metadata{font-size:.75rem;color:#9ca3af;line-height:1.25;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word;overflow:hidden}.todo-details{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;min-width:0;overflow:hidden}.todo-actions{display:flex!important;gap:.5rem;align-items:center;flex-shrink:0;opacity:1!important;visibility:visible!important}.todo-edit-btn,.todo-delete-btn{padding:.375rem!important;background:transparent!important;border:none!important;border-radius:4px;cursor:pointer;color:#374151!important;transition:all .2s ease;display:flex!important;align-items:center;justify-content:center;min-width:25px!important;min-height:25px!important;width:25px!important;height:25px!important;box-shadow:none!important;transform:none!important;font-weight:400!important;position:static!important;overflow:visible!important;opacity:1!important;visibility:visible!important;z-index:1!important}.todo-edit-btn:before,.todo-delete-btn:before{display:none!important}.todo-edit-btn svg,.todo-delete-btn svg{color:#374151!important;fill:none!important;stroke:#374151!important;stroke-width:2!important;width:14px!important;height:14px!important;display:block!important;opacity:1!important;visibility:visible!important}.todo-edit-btn:hover{background:#f3f4f6!important;color:#1f2937!important}.todo-edit-btn:hover svg{color:#1f2937!important;stroke:#1f2937!important}.todo-delete-btn{color:#6b7280!important}.todo-delete-btn svg{color:#6b7280!important;stroke:#6b7280!important}.todo-delete-btn:hover{background:#fef2f2!important;color:#ef4444!important}.todo-delete-btn:hover svg{color:#ef4444!important;stroke:#ef4444!important}.todo-edit-form{display:flex;align-items:center;gap:.75rem;flex:1}.todo-edit-input{flex:1;padding:.5rem;border:1px solid #d1d5db;border-radius:4px;font-size:.875rem;background:var(--card-bg)}.todo-edit-input:focus{outline:none;border-color:#374151;box-shadow:0 0 0 2px #3741511a}.todo-edit-actions{display:flex;gap:.25rem}.todo-edit-save,.todo-edit-cancel{padding:.375rem;border:none;border-radius:4px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.todo-edit-save{background:#374151;color:#fff}.todo-edit-save:hover{background:#1f2937}.todo-edit-cancel{background:#f3f4f6;color:#6b7280}.todo-edit-cancel:hover{background:#e5e7eb;color:#374151}.todo-empty-state{padding:2rem;text-align:center;background:#f9fafb;border:1px dashed #d1d5db;border-radius:6px}.todo-empty-text{margin:0;color:#6b7280;font-size:.875rem;font-style:italic}.todo-loading{padding:1rem;text-align:center;color:#6b7280;font-size:.875rem}@media (max-width: 640px){.todo-list-container{padding:1rem}.todo-list-header{flex-direction:column;align-items:flex-start;gap:.5rem}.todo-add-form{flex-direction:column}.todo-item{padding:.75rem}.todo-actions{flex-direction:column;gap:.25rem}}[data-theme=dark] .todo-edit-btn,[data-theme=dark] .todo-delete-btn{color:#ffffffe6!important;background:#00d4ff1a!important;border:1px solid rgba(0,212,255,.2)!important;box-shadow:none!important;transform:none!important;font-weight:400!important;position:static!important;overflow:visible!important;opacity:1!important;visibility:visible!important;z-index:1!important;min-width:25px!important;min-height:25px!important;width:25px!important;height:25px!important;display:flex!important}[data-theme=dark] .todo-edit-btn:before,[data-theme=dark] .todo-delete-btn:before{display:none!important}[data-theme=dark] .todo-edit-btn svg,[data-theme=dark] .todo-delete-btn svg{color:#ffffffe6!important;fill:none!important;stroke:#ffffffe6!important;stroke-width:2!important;width:14px!important;height:14px!important;display:block!important;opacity:1!important;visibility:visible!important}[data-theme=dark] .todo-edit-btn:hover svg{color:#00d4ff!important;stroke:#00d4ff!important}[data-theme=dark] .todo-delete-btn svg{color:#ffffffb3!important;stroke:#ffffffb3!important}[data-theme=dark] .todo-delete-btn:hover svg{color:#ef4444!important;stroke:#ef4444!important}[data-theme=dark] .todo-edit-btn:hover{background:#00d4ff33!important;color:#00d4ff!important;border-color:#00d4ff66!important}[data-theme=dark] .todo-delete-btn{color:#ffffffb3!important}[data-theme=dark] .todo-delete-btn:hover{background:#ef444433!important;color:#ef4444!important;border-color:#ef444466!important}[data-theme=dark] .todo-list-container{background:var(--card-bg);border-color:var(--border-color);box-shadow:none}[data-theme=dark] .todo-list-header{border-bottom-color:var(--border-color)}[data-theme=dark] .todo-list-title{color:var(--text-primary)}[data-theme=dark] .todo-count,[data-theme=dark] .todo-section-title{color:var(--text-muted)}[data-theme=dark] .todo-input,[data-theme=dark] .todo-edit-input{background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-primary)}[data-theme=dark] .todo-input:disabled{background:var(--bg-tertiary);color:var(--text-muted)}[data-theme=dark] .todo-item{background:var(--bg-secondary);border-color:var(--border-color)}[data-theme=dark] .todo-item:hover{background:var(--hover-color)}[data-theme=dark] .todo-item.completed{background:#3b82f61f;border-color:#3b82f633}[data-theme=dark] .todo-text{color:var(--text-primary)}[data-theme=dark] .todo-text.completed,[data-theme=dark] .todo-metadata{color:var(--text-muted)}[data-theme=dark] .todo-toggle{background:var(--bg-tertiary);border-color:var(--border-color);color:var(--text-secondary)}[data-theme=dark] .todo-toggle.completed{background:var(--primary-color);border-color:var(--primary-color);color:#fff}[data-theme=dark] .todo-empty-state{background:var(--bg-secondary);border-color:var(--border-color)}[data-theme=dark] .todo-empty-text,[data-theme=dark] .todo-loading{color:var(--text-muted)}.task-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a59;display:flex;align-items:flex-start;justify-content:center;padding:min(7vh,40px) 16px;z-index:2000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.task-modal-card{width:min(460px,100%);background:var(--card-bg);border-radius:14px;border:1px solid #e5e7eb;box-shadow:0 20px 60px #0000002e,0 2px 10px #00000014;overflow:hidden;animation:taskModalIn .18s ease-out}@keyframes taskModalIn{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.task-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.1rem;border-bottom:1px solid #f1f5f9}.task-modal-header h3{margin:0;font-size:1.05rem;color:#0f172a}.task-modal-eyebrow{margin:0;font-size:.75rem;letter-spacing:.02em;text-transform:uppercase;color:#94a3b8}.task-modal-body{display:flex;flex-direction:column;gap:.75rem;padding:1.1rem}.task-modal-body label{font-size:.85rem;font-weight:600;color:#1f2937}.task-modal-body input,.task-modal-body textarea{width:100%;border-radius:10px;border:none;padding:.65rem .75rem;font-size:.92rem;color:#0f172a;background:#f1f5f9;transition:background .15s ease,box-shadow .15s ease;font-family:inherit}.task-modal-body textarea{resize:none;overflow:hidden;min-height:44px;max-height:200px;line-height:1.5}.task-modal-body input:focus,.task-modal-body textarea:focus{outline:none;background:#fff;box-shadow:0 0 0 2px #667eea40}.input-with-icon{position:relative;display:flex;align-items:center;gap:.6rem;border:none;border-radius:10px;padding:.6rem .85rem;background:#f1f5f9;transition:background .15s ease,box-shadow .15s ease}.input-with-icon:focus-within{background:#fff;box-shadow:0 0 0 2px #667eea40}.input-with-icon input{border:none!important;background:transparent!important;padding:0!important;box-shadow:none!important;flex:1}.input-with-icon input:focus{outline:none;box-shadow:none!important}.input-with-icon svg{color:#94a3b8;flex-shrink:0}.project-suggestions{display:flex;flex-direction:column;gap:0;max-height:240px;overflow-y:auto;margin-top:.5rem;background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014}.project-suggestion{display:flex;align-items:center;gap:1rem;width:100%;border:none;border-bottom:1px solid #f1f5f9;border-radius:0;padding:.75rem 1rem;background:transparent;cursor:pointer;transition:background .15s ease;text-align:left}.project-suggestion:first-child{border-radius:12px 12px 0 0}.project-suggestion:last-child{border-bottom:none;border-radius:0 0 12px 12px}.project-suggestion:only-child{border-radius:12px}.project-suggestion:hover{background:#f8fafc}.project-suggestion.active{background:#eff6ff}.project-nr{font-weight:600;color:#667eea;font-size:.88rem;flex-shrink:0;min-width:55px}.project-meta{flex:1;display:flex;align-items:center;gap:1rem;min-width:0}.project-meta>div:first-child{font-weight:500;color:#1e293b;font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-meta .muted{color:#64748b;font-size:.82rem;margin-left:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:right}.selected-project{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.5rem;padding:.6rem .75rem;border-radius:10px;background:#ecfdf3;border:1px solid #bbf7d0;color:#065f46;font-size:.9rem}.selected-project__icon{width:26px;height:26px;border-radius:50%;background:#d1fadf;display:grid;place-items:center;color:#047857}.selected-project__text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip-remove{border:none;background:transparent;color:#065f46;cursor:pointer;padding:.25rem;border-radius:50%}.chip-remove:hover{background:#065f461f}.task-modal-footer{padding:.9rem 1.1rem 1.1rem;display:flex;justify-content:flex-end;gap:.5rem}.ghost-btn,.primary-btn,.icon-btn{border:none;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}.ghost-btn{background:var(--card-bg);color:#0f172a;border:1px solid #e5e7eb;padding:.6rem .95rem;border-radius:10px}.primary-btn{background:#667eea;color:#fff;padding:.6rem 1rem;border-radius:10px;box-shadow:0 10px 20px #667eea40}.icon-btn{width:34px;height:34px;border-radius:10px;background:#f8fafc;display:flex;align-items:center;justify-content:center;color:#475569;padding:0}.icon-btn svg{display:block;margin:0}.ghost-btn:hover,.primary-btn:hover,.icon-btn:hover{transform:translateY(-1px)}.primary-btn:hover{box-shadow:0 16px 30px #667eea47}.assignee-section{display:flex;flex-direction:column;gap:.5rem}.assignee-display{display:flex;align-items:center;gap:.75rem;padding:.75rem;border-radius:10px;background:#f8fafc;border:1px solid #e5e7eb}.assignee-avatar{position:relative;width:40px;height:40px;border-radius:50%;background:#667eea;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.assignee-initials{position:absolute;font-size:.75rem;font-weight:600;top:50%;left:50%;transform:translate(-50%,-50%)}.assignee-info{flex:1;display:flex;flex-direction:column;gap:.15rem}.assignee-name{font-size:.92rem;font-weight:600;color:#0f172a}.assignee-note{font-size:.8rem;color:#6b7280;font-style:italic}.ghost-btn.small{padding:.4rem .7rem;font-size:.85rem}.user-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.5rem;padding:.75rem;border-radius:12px;background:#f8fafc;border:1px solid #e5e7eb;max-height:250px;overflow-y:auto;margin-top:.75rem}.user-picker-item{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.75rem .5rem;border-radius:10px;background:var(--card-bg);border:2px solid #e5e7eb;cursor:pointer;transition:all .2s ease;text-align:center;min-width:0}.user-picker-item:hover{border-color:#667eea;background:#eef2ff;box-shadow:0 4px 12px #667eea33;transform:translateY(-2px)}.user-picker-item.active{border-color:#10b981;background:#ecfdf3;box-shadow:0 4px 12px #10b98133;transform:translateY(-2px)}.user-avatar-small{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.9375rem;font-weight:700;flex-shrink:0;box-shadow:0 3px 8px #667eea40;border:2px solid white}.user-picker-item:hover .user-avatar-small{box-shadow:0 6px 16px #667eea66;transform:scale(1.05)}.user-picker-item.active .user-avatar-small{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 6px 16px #10b98166;border-color:#10b981}.user-name{font-size:.8125rem;color:#0f172a;font-weight:600;line-height:1.2;word-break:break-word;width:100%}@media (max-width: 768px){.user-picker{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.5rem;padding:.5rem;max-height:220px}.user-picker-item{padding:.625rem .5rem;gap:.4rem}.user-avatar-small{width:40px;height:40px;font-size:.875rem}.user-name{font-size:.75rem}}.primary-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.primary-btn:disabled:hover{transform:none;box-shadow:none}[data-theme=dark] .task-modal-overlay{background:#000000bf;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}[data-theme=dark] .task-modal-card{background:var(--card-bg);border:1px solid rgba(0,212,255,.2);box-shadow:0 0 60px #00d4ff4d,0 20px 60px #00000080}[data-theme=dark] .task-modal-header{border-bottom:1px solid rgba(0,212,255,.15);background:linear-gradient(135deg,#00d4ff0d,#7c3aed0d)}[data-theme=dark] .task-modal-header h3{color:var(--text-primary);text-shadow:0 0 15px rgba(0,212,255,.3)}[data-theme=dark] .task-modal-eyebrow{color:var(--text-muted)}[data-theme=dark] .task-modal-body label{color:var(--text-primary)}[data-theme=dark] .task-modal-body input,[data-theme=dark] .task-modal-body textarea{background:#0f141999;border:none;color:var(--text-primary)}[data-theme=dark] .task-modal-body input:focus,[data-theme=dark] .task-modal-body textarea:focus{background:#0f1419cc;box-shadow:0 0 0 2px #00d4ff4d}[data-theme=dark] .input-with-icon{background:#0f141999;border:none}[data-theme=dark] .input-with-icon:focus-within{background:#0f1419cc;box-shadow:0 0 0 2px #00d4ff4d}[data-theme=dark] .input-with-icon svg{color:var(--text-muted)}[data-theme=dark] .project-suggestions{background:#0f1419cc;box-shadow:0 4px 20px #0000004d}[data-theme=dark] .project-suggestion{background:transparent;border-bottom:1px solid rgba(255,255,255,.06);color:var(--text-primary)}[data-theme=dark] .project-suggestion:hover{background:#00d4ff14}[data-theme=dark] .project-suggestion.active{background:#00d4ff1f}[data-theme=dark] .project-nr{color:var(--accent-color)}[data-theme=dark] .project-meta .muted{color:var(--text-muted)}[data-theme=dark] .selected-project{background:#00ff8826;border:1px solid rgba(0,255,136,.3);color:var(--success-color)}[data-theme=dark] .selected-project__icon{background:#0f83;color:var(--success-color)}[data-theme=dark] .chip-remove{color:var(--success-color)}[data-theme=dark] .chip-remove:hover{background:#0f83}[data-theme=dark] .task-modal-footer{background:linear-gradient(135deg,#0f141980,#1a1f2980);border-top:1px solid rgba(0,212,255,.15)}[data-theme=dark] .ghost-btn{background:#00d4ff14;color:var(--text-primary);border:1px solid rgba(0,212,255,.2)}[data-theme=dark] .ghost-btn:hover{background:#00d4ff26;box-shadow:0 0 15px #00d4ff4d}[data-theme=dark] .primary-btn{background:var(--gradient-primary);box-shadow:0 0 30px #00d4ff66}[data-theme=dark] .primary-btn:hover{box-shadow:0 0 40px #00d4ff99}[data-theme=dark] .icon-btn{background:#00d4ff14;color:var(--text-secondary)}[data-theme=dark] .icon-btn:hover{background:#00d4ff26;color:var(--accent-color)}[data-theme=dark] .assignee-display{background:#00d4ff0d;border:1px solid rgba(0,212,255,.2)}[data-theme=dark] .assignee-avatar{background:var(--gradient-primary);box-shadow:0 0 15px #00d4ff66}[data-theme=dark] .assignee-name{color:var(--text-primary)}[data-theme=dark] .assignee-note{color:var(--text-muted)}[data-theme=dark] .user-picker{background:#0f141999;border:1px solid rgba(0,212,255,.2)}[data-theme=dark] .user-picker-item{background:#00d4ff0d;border:1px solid rgba(0,212,255,.2)}[data-theme=dark] .user-picker-item:hover{border-color:var(--accent-color);background:#00d4ff1f;box-shadow:0 0 20px #00d4ff4d}[data-theme=dark] .user-picker-item.active{border-color:var(--success-color);background:#00ff881f;box-shadow:0 0 20px #00ff884d}[data-theme=dark] .user-avatar-small{background:var(--gradient-primary);box-shadow:0 0 10px #00d4ff66}[data-theme=dark] .user-name{color:var(--text-primary)}.project-notes-section{background:var(--card-bg);border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a;min-width:0;overflow:hidden}.project-notes-section h2{margin:0 0 1rem;font-size:1.25rem;font-weight:600;color:#1a1a1a;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word;overflow:hidden}.notes-loading,.notes-error{text-align:center;padding:1rem;color:#666;font-size:.9375rem}.notes-error{color:#d32f2f;background:#ffebee;border-radius:6px;margin-bottom:1rem}.note-input-container{display:flex;gap:.5rem;margin-bottom:1rem}.note-input{flex:1;padding:.75rem 1rem;border:1px solid #e0e0e0;border-radius:8px;font-size:.9375rem;font-family:inherit;transition:border-color .2s,box-shadow .2s;resize:none;overflow:hidden;min-height:44px;max-height:200px;line-height:1.5}.note-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.note-input:disabled{background:#f5f5f5;cursor:not-allowed}.add-note-btn{padding:.75rem;background:#667eea;color:#fff;border:none;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,transform .1s;flex-shrink:0}.add-note-btn:hover:not(:disabled){background:#5568d3;transform:scale(1.05)}.add-note-btn:active:not(:disabled){transform:scale(.98)}.add-note-btn:disabled{background:#ccc;cursor:not-allowed;transform:none}.notes-divider{height:1px;background:#e0e0e0;margin:1rem 0}.notes-list{max-height:400px;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem}.notes-list::-webkit-scrollbar{width:8px}.notes-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.notes-list::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.notes-list::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.notes-empty{text-align:center;padding:2rem 1rem;color:#999;font-style:italic;font-size:.9375rem}.note-item{padding:1rem;background:#f8f9fa;border-radius:8px;border-left:3px solid #667eea;transition:background .2s;min-width:0}.note-item:hover{background:#eef0f2}.note-content{color:#1a1a1a;font-size:.9375rem;line-height:1.5;margin-bottom:.5rem;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word;white-space:pre-wrap}.note-footer{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-top:.5rem}.note-meta{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:#666;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word;overflow:hidden;flex-wrap:wrap}.note-actions{display:flex;gap:.25rem;opacity:0;transition:opacity .2s}.note-item:hover .note-actions{opacity:1}.note-edit-btn,.note-delete-btn{background:none;border:none;cursor:pointer;padding:.25rem .5rem;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:background .2s;color:#666}.note-edit-btn:hover{background:#e3f2fd;color:#1976d2}.note-delete-btn:hover{background:#ffebee;color:#d32f2f}.note-edit-btn:disabled,.note-delete-btn:disabled{opacity:.5;cursor:not-allowed}.note-edit-mode{display:flex;flex-direction:column;gap:.5rem}.note-edit-input{width:100%;padding:.75rem 1rem;border:1px solid #667eea;border-radius:8px;font-size:.9375rem;font-family:inherit;resize:none;overflow:hidden;min-height:44px;max-height:200px;line-height:1.5;transition:border-color .2s,box-shadow .2s}.note-edit-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.note-edit-actions{display:flex;gap:.5rem;justify-content:flex-end}.note-save-btn,.note-cancel-btn{background:none;border:none;cursor:pointer;padding:.375rem;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:background .2s}.note-save-btn{color:#10b981}.note-save-btn:hover{background:#d1fae5}.note-cancel-btn{color:#6b7280}.note-cancel-btn:hover{background:#f3f4f6}.note-save-btn:disabled,.note-cancel-btn:disabled{opacity:.5;cursor:not-allowed}[data-theme=dark] .project-notes-section{background:var(--card-bg);border:1px solid rgba(0,212,255,.15);box-shadow:0 0 30px #00d4ff1a,0 4px 15px #0000004d}[data-theme=dark] .project-notes-section h2{color:var(--text-primary);text-shadow:0 0 20px rgba(0,212,255,.3)}[data-theme=dark] .note-input,[data-theme=dark] .note-edit-input{background:#0f1419cc;border:1px solid rgba(0,212,255,.2);color:var(--text-primary)}[data-theme=dark] .note-input:focus,[data-theme=dark] .note-edit-input:focus{border-color:var(--accent-color);box-shadow:0 0 20px #00d4ff4d}[data-theme=dark] .note-edit-input{border-color:var(--accent-color)}[data-theme=dark] .note-edit-btn:hover{background:#00d4ff1a;color:var(--accent-color)}[data-theme=dark] .note-delete-btn:hover{background:#ff5c5c1a;color:var(--error-color)}[data-theme=dark] .note-save-btn:hover{background:#00ff881a}[data-theme=dark] .note-cancel-btn:hover{background:#00d4ff0d}[data-theme=dark] .add-note-btn{background:var(--gradient-primary);box-shadow:0 0 20px #00d4ff4d}[data-theme=dark] .add-note-btn:hover:not(:disabled){box-shadow:0 0 30px #00d4ff80}[data-theme=dark] .notes-divider{background:#00d4ff26}[data-theme=dark] .note-item{background:#00d4ff0d;border-left-color:var(--accent-color)}[data-theme=dark] .note-item:hover{background:#00d4ff1a;box-shadow:0 0 15px #00d4ff1a}[data-theme=dark] .note-meta{color:var(--text-secondary)}[data-theme=dark] .notes-empty{color:var(--text-muted)}[data-theme=dark] .notes-list::-webkit-scrollbar-track{background:#0f141980}[data-theme=dark] .notes-list::-webkit-scrollbar-thumb{background:#00d4ff4d;border:1px solid rgba(0,212,255,.2)}[data-theme=dark] .notes-list::-webkit-scrollbar-thumb:hover{background:#00d4ff80}[data-theme=dark] .project-notes-section{border-color:var(--border-color);box-shadow:none}[data-theme=dark] .notes-error{background:#ef44441f;color:#fca5a5}[data-theme=dark] .note-input:disabled{background:var(--bg-tertiary);color:var(--text-muted)}[data-theme=dark] .notes-divider{background:var(--border-color)}[data-theme=dark] .note-item{background:var(--bg-secondary);border-left-color:var(--primary-color)}[data-theme=dark] .note-item:hover{background:var(--hover-color)}[data-theme=dark] .note-content{color:var(--text-primary)}[data-theme=dark] .note-meta{color:var(--text-muted)}[data-theme=dark] .note-edit-btn,[data-theme=dark] .note-delete-btn{color:var(--text-secondary)}@media (max-width: 768px){.project-notes-section{padding:1rem}.notes-list{max-height:300px}.note-input-container{flex-direction:column}.add-note-btn{width:100%;padding:.75rem 1rem}}.joint-timeline{height:100%;max-height:520px;overflow-y:auto}.joint-timeline-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:1px solid #e2e8f0}.joint-timeline-header h2{font-size:1.25rem;font-weight:600;margin:0;display:flex;align-items:center;gap:.5rem}.joint-timeline-list{display:flex;flex-direction:column;gap:.75rem;max-height:420px;overflow-y:auto;padding-right:.5rem}.joint-timeline-loading,.joint-timeline-error,.joint-timeline-empty{padding:1.5rem;text-align:center;color:#64748b;border:1px dashed #cbd5e1;border-radius:8px}.joint-timeline-error{color:#dc2626;border-color:#fecaca;background-color:#fef2f2}.timeline-item{position:relative;padding:.75rem;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0;transition:all .2s ease}.timeline-item:hover{background:#f1f5f9;border-color:#cbd5e1;transform:translateY(-2px);box-shadow:0 4px 6px #0000000d}.timeline-dot{position:absolute;left:-8px;top:1.5rem;width:16px;height:16px;border-radius:50%;border:2px solid white}.task-dot{background:#22c55e}.slack-dot{background:#3b82f6}.audit-dot{background:#f59e0b}.timeline-item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.timeline-item-title{font-weight:600;color:#0f172a;display:flex;align-items:center;gap:.5rem}.timeline-item-date{font-size:.8rem;color:#64748b;display:flex;align-items:center;gap:.25rem}.timeline-item-meta{display:flex;gap:1rem;font-size:.8rem;color:#64748b;margin-top:.5rem}.timeline-item-assignee{display:flex;align-items:center;gap:.25rem}.assignee-menneske{display:flex;align-items:center;gap:.25rem;color:#1e40af}.assignee-ai{display:flex;align-items:center;gap:.25rem;color:#7c3aed}.timeline-item-delete{position:absolute;top:.5rem;right:.5rem;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#fee2e2;color:#b91c1c;border:none;border-radius:50%;font-size:1rem;font-weight:700;cursor:pointer;transition:all .2s ease}.timeline-item-delete:hover{background:#dc2626;color:#fff}.slack-item{border-left:3px solid #3b82f6}.task-item{border-left:3px solid #22c55e}.audit-item{border-left:3px solid #f59e0b}.slack-message-icon{font-size:1rem;margin-right:.25rem}.slack-message-type-label{font-size:.9rem;font-weight:600;color:#3b82f6}.audit-message-type-label{font-size:.9rem;font-weight:600;color:#f59e0b}.audit-message-project{font-size:.8rem;color:#64748b;font-style:italic}.audit-message-content{margin:.75rem 0;font-size:.9rem;color:#374151;line-height:1.5}.slack-message-body{margin:.75rem 0;font-size:.9rem}.slack-message-original p,.slack-message-result p{margin:.5rem 0;line-height:1.5}.slack-message-original ul,.slack-message-result ul,.slack-message-original ol,.slack-message-result ol{margin:.5rem 0;padding-left:1.5rem}.slack-message-original code,.slack-message-result code{background-color:#f1f5f9;padding:.125rem .25rem;border-radius:3px;font-family:monospace;font-size:.875em}.slack-message-original pre,.slack-message-result pre{background-color:#1e293b;color:#f8fafc;padding:.75rem;border-radius:6px;overflow-x:auto;margin:.75rem 0}.slack-message-original pre code,.slack-message-result pre code{background-color:transparent;color:inherit;padding:0}.slack-message-original blockquote,.slack-message-result blockquote{border-left:3px solid #cbd5e1;padding-left:.75rem;margin:.75rem 0;color:#64748b}.slack-message-original a,.slack-message-result a{color:#2563eb;text-decoration:none}.slack-message-original a:hover,.slack-message-result a:hover{text-decoration:underline}.slack-message-result{background:#eff6ff;border-radius:6px;padding:.75rem;margin-top:.75rem}.slack-message-channel,.slack-message-user{display:flex;align-items:center;gap:.25rem}@media (max-width: 768px){.timeline-item-header{flex-direction:column;gap:.5rem}.timeline-item-date{margin-left:0}.timeline-item-meta{flex-direction:column;gap:.5rem}}[data-theme=dark] .joint-timeline-loading,[data-theme=dark] .joint-timeline-error,[data-theme=dark] .joint-timeline-empty{background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-muted)}[data-theme=dark] .joint-timeline-error{color:#fca5a5;border-color:#ef444459;background:#ef44441a}[data-theme=dark] .timeline-item{background:var(--bg-secondary);border-color:var(--border-color)}[data-theme=dark] .timeline-item:hover{background:var(--hover-color);border-color:var(--border-color);box-shadow:none;transform:none}[data-theme=dark] .timeline-item-title{color:var(--text-primary)}[data-theme=dark] .timeline-item-date,[data-theme=dark] .timeline-item-meta,[data-theme=dark] .audit-message-project,[data-theme=dark] .audit-message-content{color:var(--text-secondary)}[data-theme=dark] .timeline-item-delete{background:#ef444426;color:#fca5a5}[data-theme=dark] .timeline-item-delete:hover{background:#ef44444d}[data-theme=dark] .slack-message-result{background:#3b82f61f}[data-theme=dark] .slack-message-original code,[data-theme=dark] .slack-message-result code{background-color:#94a3b833;color:var(--text-primary)}[data-theme=dark] .slack-message-original pre,[data-theme=dark] .slack-message-result pre{background-color:#0f172a;color:#e5e7eb}[data-theme=dark] .slack-message-original blockquote,[data-theme=dark] .slack-message-result blockquote{border-left-color:var(--border-color);color:var(--text-muted)}.bids-section{width:100%;margin-bottom:1.5rem}.bids-list{display:flex;flex-direction:column;gap:.75rem}.bid-card{background-color:var(--card-bg);border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden;border-left:4px solid #ccc}.bid-card.status-draft{border-left-color:#6c757d}.bid-card.status-submitted{border-left-color:#007bff}.bid-card.status-accepted{border-left-color:#28a745}.bid-card.status-rejected{border-left-color:#dc3545}.bid-card.status-partial{border-left-color:#ffc107}.bid-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background-color:#f9f9f9}.bid-info{display:flex;flex-direction:column}.contractor-name{font-weight:700}.bid-amount{font-size:1.1rem;color:#333}.bid-status{display:flex;align-items:center;gap:.5rem}.status-label{font-size:.9rem;color:#666}.bid-actions{display:flex;gap:.5rem}.bid-details{padding:1rem;border-top:1px solid #eee}.bid-notes{margin-bottom:1rem}.bid-notes p{margin-top:.5rem;color:#666}.bid-tasks h4{margin-bottom:.75rem;font-size:1rem}.tasks-list{display:flex;flex-direction:column;gap:.75rem}.task-item{display:flex;justify-content:space-between;align-items:center;background-color:#f9f9f9;padding:.75rem;border-radius:4px}.task-info{flex:1}.task-description{font-weight:500;margin-bottom:.25rem}.task-details{font-size:.9rem;color:#666}.task-actions{display:flex;gap:.5rem}.task-status{font-size:.8rem;padding:.25rem .5rem;border-radius:4px;font-weight:500}.task-status.accepted{background-color:#28a7451a;color:#28a745}.task-status.rejected{background-color:#dc35451a;color:#dc3545}.bid-approval-actions{display:flex;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #eee}.no-bids{padding:2rem;text-align:center;color:#666;background-color:#f9f9f9;border-radius:8px}.text-muted{color:#888;font-size:.9rem;margin-top:.5rem}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background-color:var(--card-bg);border-radius:8px;box-shadow:0 4px 12px #00000026;width:90%;max-width:600px;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid #eee}.modal-header h3{margin:0}.modal-body{padding:1rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500}.input{width:100%;padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:1rem}select.input{background-color:var(--card-bg)}.input-readonly{background-color:#f9f9f9;cursor:not-allowed}.tasks-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.task-form{background-color:#f9f9f9;padding:.75rem;border-radius:4px;margin-bottom:.75rem}.task-form-row{display:flex;gap:.5rem;margin-bottom:.5rem}.task-form-row:last-child{margin-bottom:0}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem;border-top:1px solid #eee}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1rem;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background-color .2s}.btn-sm{padding:.25rem .5rem;font-size:.875rem}.btn-primary{background-color:#007bff;color:#fff}.btn-primary:hover{background-color:#0069d9}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover{background-color:#5a6268}.btn-success{background-color:#28a745;color:#fff}.btn-success:hover{background-color:#218838}.btn-danger{background-color:#dc3545;color:#fff}.btn-danger:hover{background-color:#c82333}.btn-outline{background-color:transparent;border:1px solid #ddd;color:#333}.btn-outline:hover{background-color:#f0f0f0}.loading{display:flex;justify-content:center;align-items:center;min-height:200px;color:#666}.error-message{padding:.75rem;margin-bottom:1rem;color:#721c24;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px}.bid-card{background-color:var(--card-bg);border-radius:8px;box-shadow:0 2px 4px #0000001a;border:1px solid #eee;margin-bottom:12px;overflow:visible;transition:all .2s ease}.bid-card:hover{box-shadow:0 4px 8px #00000026}.bid-card.full-bid{border-left:4px solid #28a745}.bid-header{padding:16px;display:grid;grid-template-columns:40px 1fr 1fr 1fr auto auto;align-items:center;gap:16px;cursor:pointer}.bid-number{display:flex;align-items:center;gap:6px;font-weight:700;color:#555}.bid-contractor{display:flex;align-items:center;gap:8px;font-weight:500}.bid-dates{display:flex;align-items:center;gap:8px;color:#666}.bid-price{display:flex;align-items:center;gap:8px;font-weight:600;color:#333}.bid-type{padding:4px 8px;border-radius:4px;font-size:.8rem;font-weight:600;text-transform:uppercase;display:flex;align-items:center;justify-content:center}.bid-type.full{background-color:#28a7451a;color:#28a745}.bid-type.partial{background-color:#dc35451a;color:#dc3545}.bid-actions{display:flex;gap:8px;align-items:center}.bid-tasks-breakdown{padding:16px;background-color:#f9f9f9;border-top:1px solid #eee;margin-top:0;overflow:visible;transition:all .2s ease}.bid-tasks-breakdown h4{margin-top:0;margin-bottom:12px;font-size:1rem;color:#444}.tasks-list{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.task-item{display:flex;justify-content:space-between;align-items:center;background-color:var(--card-bg);padding:10px 12px;border-radius:6px;border:1px solid #eee}.task-name{font-weight:500}.task-price{font-weight:600;color:#333}.tasks-total{margin-top:8px;padding:12px;border-top:1px dashed #ddd;text-align:right;font-size:1.1rem}.form-row{display:flex;gap:16px}.form-row .form-group{flex:1}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-weight:500;color:#444}.form-group select,.form-group input[type=text],.form-group input[type=number],.form-group input[type=date]{width:100%;padding:10px;border:1px solid #ddd;border-radius:6px;font-size:.95rem}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer}.checkbox-label input{margin:0}.task-form{display:grid;grid-template-columns:1fr 120px auto;gap:8px;background-color:var(--card-bg);padding:12px;border-radius:6px;border:1px solid #eee;margin-bottom:8px}.modal-overlay{background-color:#0009}.modal-content{max-width:650px}.modal-header{padding:16px}.modal-body{padding:20px}.modal-footer{padding:16px;display:flex;justify-content:flex-end;gap:12px}.btn{padding:8px 16px;border-radius:6px;font-weight:500;transition:all .2s ease}.btn-sm{padding:4px 8px;font-size:.8rem}.bid-type.partial{background-color:#dc354526;color:#dc3545;font-weight:700;border:1px solid rgba(220,53,69,.3)}.bid-card.partial-bid{border-left:4px solid #dc3545}.bid-tasks-breakdown{padding:16px;background-color:#f9f9f9;border-top:1px solid #eee;animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.task-item{display:flex;justify-content:space-between;align-items:center;background-color:var(--card-bg);padding:10px 12px;border-radius:6px;border:1px solid #eee;margin-bottom:6px;transition:all .2s ease}.task-item:hover{transform:translateY(-2px);box-shadow:0 2px 5px #0000001a}.bids-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem 0;min-height:0}.bids-header h3{margin:0;font-size:1.1rem;font-weight:500}.add-bid-button{margin-left:auto;padding:.3rem .7rem;font-size:.95rem;height:2rem;display:flex;align-items:center;gap:.3rem}@media (max-width: 768px){.bids-section{padding:.75rem}.bids-header{flex-direction:column;align-items:stretch;gap:1rem;padding:1rem 0}.add-bid-button{margin-left:0;width:100%;justify-content:center}.bid-card{margin-bottom:1rem}.bid-header{grid-template-columns:1fr;gap:.75rem;padding:1rem;text-align:left}.bid-number{justify-content:flex-start;font-size:.9rem}.bid-contractor{justify-content:flex-start;font-size:1rem;font-weight:600}.bid-dates{justify-content:flex-start;font-size:.9rem;color:#666}.bid-price{justify-content:flex-start;font-size:1.1rem;font-weight:600;color:#059669}.bid-type{align-self:flex-start;width:fit-content;font-size:.8rem;padding:4px 8px}.bid-actions{justify-content:flex-end;gap:.5rem;margin-top:.5rem}.bid-tasks-breakdown{padding:1rem}.task-form{grid-template-columns:1fr;gap:.75rem;padding:1rem}.task-form input{width:100%}.tasks-header{flex-direction:column;align-items:stretch;gap:.75rem}.modal-content{max-width:95vw;max-height:95vh;margin:1rem;overflow-y:auto}.modal-header,.modal-body,.modal-footer{padding:1rem}.form-row{flex-direction:column;gap:1rem}.form-group{margin-bottom:1rem}.form-group input,.form-group select{font-size:16px}}@media (max-width: 480px){.bids-section{padding:.5rem}.bid-header,.bid-tasks-breakdown{padding:.75rem}.task-form{padding:.75rem;gap:.5rem}.btn{font-size:.875rem;padding:.75rem 1rem}.btn-sm{font-size:.8rem;padding:.5rem .75rem}.modal-content{margin:.5rem}}[data-theme=dark] .bids-section .bid-card,[data-theme=dark] .bids-section .bid-tasks-breakdown,[data-theme=dark] .bids-section .task-form,[data-theme=dark] .bids-section .task-item,[data-theme=dark] .bids-section .modal-content{background:var(--card-bg);border-color:var(--border-color);box-shadow:none}[data-theme=dark] .bids-section .bid-header{background:var(--bg-secondary)}[data-theme=dark] .bids-section .bid-number,[data-theme=dark] .bids-section .contractor-name,[data-theme=dark] .bids-section .bid-price,[data-theme=dark] .bids-section .bid-amount,[data-theme=dark] .bids-section .task-name,[data-theme=dark] .bids-section .task-price,[data-theme=dark] .bids-section .tasks-total,[data-theme=dark] .bids-section .modal-header h3{color:var(--text-primary)}[data-theme=dark] .bids-section .bid-dates,[data-theme=dark] .bids-section .status-label,[data-theme=dark] .bids-section .task-details,[data-theme=dark] .bids-section .text-muted,[data-theme=dark] .bids-section .bid-details,[data-theme=dark] .bids-section .bid-notes p{color:var(--text-secondary)}[data-theme=dark] .bids-section .bid-tasks-breakdown h4,[data-theme=dark] .bids-section .form-group label{color:var(--text-primary)}[data-theme=dark] .bids-section .task-item{background:var(--bg-secondary)}[data-theme=dark] .bids-section .task-item:hover{background:var(--hover-color);box-shadow:none;transform:none}[data-theme=dark] .bids-section .bid-tasks-breakdown{background:var(--bg-secondary)}[data-theme=dark] .bids-section .bid-type.full{background-color:#22c55e26;color:#86efac;border:1px solid rgba(34,197,94,.25)}[data-theme=dark] .bids-section .bid-type.partial{background-color:#ef444426;color:#fca5a5;border:1px solid rgba(239,68,68,.25)}[data-theme=dark] .bids-section .no-bids,[data-theme=dark] .bids-section .loading{background:var(--bg-secondary);color:var(--text-muted);border-color:var(--border-color)}[data-theme=dark] .bids-section .modal-header,[data-theme=dark] .bids-section .modal-actions,[data-theme=dark] .bids-section .modal-body{border-color:var(--border-color)}[data-theme=dark] .bids-section .input,[data-theme=dark] .bids-section .form-group input,[data-theme=dark] .bids-section .form-group select{background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-primary)}[data-theme=dark] .bids-section .error-message{background:#ef44441f;color:#fca5a5;border-color:#ef44444d}.project-detail{max-width:none;width:calc(100% + 2 * var(--spacing-md));margin:0;margin-top:calc(-1 * var(--spacing-md));margin-left:calc(-1 * var(--spacing-md));margin-right:calc(-1 * var(--spacing-md));margin-bottom:calc(-1 * var(--spacing-md));padding:1.5rem 2rem;padding-top:calc(1.5rem + var(--spacing-md));padding-left:calc(2rem + var(--spacing-md));padding-right:calc(2rem + var(--spacing-md));padding-bottom:calc(1.5rem + var(--spacing-md));background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;position:relative}.project-detail-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-bottom:2rem;padding:2rem 2.5rem;background:linear-gradient(135deg,#fff,#fafbfc);border-radius:1.25rem;box-shadow:0 .25rem 1rem #0000001a,0 .125rem .375rem #0000000d;border:.0625rem solid #e2e8f0;gap:1rem;position:relative;overflow:hidden}.project-detail-header .btn{padding:.75rem 1.5rem;border-radius:.5rem;font-weight:500;font-size:.875rem;transition:all .2s ease;border:.0625rem solid transparent}.project-detail-header .btn-secondary{background:#f1f5f9;color:#475569;border-color:#e2e8f0}.project-detail-header .btn-secondary:hover{background:#e2e8f0;color:#334155}.project-detail-header .btn-primary{background:#0f172a;color:#fff}.project-detail-header .btn-primary:hover{background:#1e293b}.project-detail-header .btn-danger{background:#ef4444;color:#fff}.project-detail-header .btn-danger:hover{background:#dc2626}.header-actions{display:flex;gap:.75rem}.header-quick-actions{flex-basis:100%;margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0}.project-detail-content{display:flex;flex-direction:column;gap:2rem;width:100%;margin:0}.project-header-card{background:linear-gradient(135deg,#fff,#fafbfc);border-radius:1.25rem;padding:2.5rem;box-shadow:0 .25rem 1rem #0000001a,0 .125rem .375rem #0000000d;border:.0625rem solid #e2e8f0;width:100%;position:relative;overflow:hidden}.project-content-grid{display:grid;grid-template-columns:2fr 1fr;gap:3rem;align-items:start;width:100%}.project-main-content{display:flex;flex-direction:column;gap:1.5rem}.project-sidebar{display:flex;flex-direction:column;gap:1.5rem;position:sticky;top:2rem}.email-section-bottom{grid-column:1 / -1;margin-top:2rem}.project-header-info{display:flex;align-items:center;justify-content:space-between;gap:2rem}.project-title-section h1{font-size:2.5rem;font-weight:800;margin:0 0 .5rem;color:#0f172a;letter-spacing:-.025em;line-height:1.2}.project-meta{display:flex;align-items:center;gap:1rem;color:#64748b;font-size:.875rem;margin-bottom:1rem}.project-meta-item{display:flex;align-items:center;gap:.25rem}.project-header-info h1 input{font-size:2.5rem;font-weight:800;background:transparent;border:2px solid #e2e8f0;border-radius:8px;padding:.5rem;color:#0f172a;min-width:200px;transition:border-color .2s ease}.project-header-info h1 input:focus{outline:none;border-color:#0f172a}.project-email-section{border-radius:14px;padding:2rem;margin-top:1rem;margin-bottom:2rem;display:flex;flex-direction:column;align-items:flex-start}.placeholder-email{color:#64748b;font-size:1rem;font-style:italic;padding:1rem 0;width:100%;text-align:left}.status-badge{display:inline-flex;align-items:center;justify-content:center;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;background-color:var(--card-bg);text-align:center}.status-badge.mottatt_bud,.status-badge.mottatt-bud{background-color:#e0f2fe;color:#0369a1}.info-sections{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:2.5rem}.section{background:var(--card-bg);border-radius:16px;padding:2rem;box-shadow:0 2px 6px #0000000f;border:1px solid #e2e8f0;transition:all .2s ease}.section:hover{box-shadow:0 4px 6px #00000012;border-color:#cbd5e1}.section h2{display:flex;align-items:center;gap:.75rem;font-size:1.125rem;font-weight:700;margin:0 0 1.5rem;color:#0f172a;padding-bottom:.75rem;border-bottom:1px solid #e2e8f0}.section h2 svg{width:20px;height:20px;color:#64748b}.project-right-column{display:flex;flex-direction:column;gap:2.5rem;height:fit-content}.section{background:linear-gradient(135deg,#fff,#fafbfc);border:.0625rem solid #e2e8f0;border-radius:1.25rem;padding:2.5rem;box-shadow:0 .25rem 1rem #00000014,0 .125rem .375rem #0000000a;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.section:hover{transform:translateY(-.125rem);box-shadow:0 .5rem 2rem #0000001f,0 .25rem .75rem #00000014}.section.full-width{grid-column:1 / -1}.section.task-section{height:fit-content;margin-bottom:2rem}.section.timeline-section{height:fit-content}.section h2{font-size:1.5rem;font-weight:600;margin:0 0 1.5rem;color:var(--text-primary);display:flex;align-items:center;gap:.75rem;padding-bottom:1rem;border-bottom:2px solid var(--border-color)}.field-group{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.field{display:flex;flex-direction:column;gap:.25rem}.field label{font-weight:600;font-size:.8rem;color:#475569;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.125rem}.field span{font-size:.95rem;color:#0f172a;min-height:1.5rem;display:flex;align-items:center;padding:.375rem 0;font-weight:500}.field a{color:#0f172a;text-decoration:none;font-weight:600;transition:color .2s ease}.field a:hover{color:#475569;text-decoration:underline}.input,.select,.textarea{padding:.75rem 1rem;border:2px solid #e2e8f0;border-radius:8px;background:var(--card-bg);color:#0f172a;font-size:.95rem;font-weight:500;transition:all .2s ease;font-family:inherit}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:#0f172a;box-shadow:0 0 0 3px #0f172a1a}.textarea{resize:vertical;min-height:120px;line-height:1.5}.comment-display{background:#f8fafc;border:2px solid #e2e8f0;border-radius:8px;padding:1rem;min-height:120px;white-space:pre-wrap;color:#475569;line-height:1.6;font-size:.9rem}.field span.total-sum{font-size:1.75rem;font-weight:800;color:#0f172a;margin-top:1.25rem;background:linear-gradient(135deg,#0f172a,#1e293b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.items-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.5rem}.items-list li{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0;transition:all .2s ease}.items-list li:hover{background:#f1f5f9;border-color:#cbd5e1}.items-list-empty{color:#64748b;font-style:italic;padding:1rem;text-align:center;background:#f8fafc;border-radius:8px;border:1px dashed #cbd5e1}.items-form{display:flex;gap:.5rem;margin-top:1rem;align-items:flex-end}.items-form .input{flex:1}.items-form .btn{padding:.75rem 1rem;min-width:auto}.amount{font-weight:600}.amount.positive{color:#059669}.amount.negative{color:#dc2626}.error-message{background:#fef2f2;color:#991b1b;padding:1rem 1.25rem;border-radius:8px;border:1px solid #fecaca;margin-bottom:1rem;font-weight:500}.info-message{background:#eff6ff;color:#1e40af;padding:1rem 1.25rem;border-radius:8px;border:1px solid #bfdbfe;margin-bottom:1rem;font-weight:500}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:none;border-radius:8px;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s ease;text-decoration:none;white-space:nowrap;font-family:inherit}.btn svg{width:16px;height:16px}.btn-primary{background:#0f172a;color:#fff}.btn-primary:hover:not(:disabled){background:#1e293b;transform:translateY(-1px);box-shadow:0 4px 8px #0f172a4d}.btn-secondary{background:var(--card-bg);color:#475569;border:1px solid #e2e8f0}.btn-secondary:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.btn-success{background:#10b981;color:#fff}.btn-success:hover:not(:disabled){background:#059669;transform:translateY(-1px);box-shadow:0 4px 8px #10b9814d}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover:not(:disabled){background:#dc2626;transform:translateY(-1px);box-shadow:0 4px 8px #ef44444d}.status-select{padding:.5rem 1rem;border-radius:12px;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;border:2px solid #e2e8f0;background:var(--card-bg);color:#374151;cursor:pointer;transition:all .2s ease}.status-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.compact-field{display:flex;flex-direction:column;gap:.25rem}.compact-field-content{display:flex;flex-direction:column;gap:.125rem}.compact-field-content>div{display:flex;flex-direction:column;gap:.125rem}.compact-field-text{flex:1;min-width:0;word-break:break-word}.compact-ratings{display:flex;flex-direction:column;gap:.125rem;flex:1}.compact-rating{font-size:.875rem;color:var(--text-secondary)}.compact-btn{padding:.375rem .75rem;font-size:.75rem;white-space:nowrap}.compact-field-dotted-btn{background:none;border:none;color:var(--primary-color);font-size:.6875rem;padding:.125rem .25rem;margin-top:.25rem;cursor:pointer;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:2px;transition:all .2s ease;display:inline-block}.compact-field-dotted-btn:hover{color:var(--primary-dark);text-decoration-style:solid;transform:scale(1.05)}.compact-field-dotted-btn:focus{outline:1px dotted var(--primary-color);outline-offset:2px}.status-description{font-size:.75rem;color:var(--text-secondary)}.section.bids-section{margin-top:1rem}.section.ai-estimation-section{margin-top:1rem;padding:0;background:transparent;border:none;box-shadow:none}.section.ai-estimation-section:hover{transform:none;box-shadow:none}.bids-content{display:flex;flex-direction:column;gap:1rem;min-height:615px;max-height:615px;overflow-y:auto;padding-right:.5rem}.bids-content::-webkit-scrollbar{width:6px}.bids-content::-webkit-scrollbar-track{background:#f1f5f9;border-radius:8px}.bids-content::-webkit-scrollbar-thumb{background-color:#cbd5e1;border-radius:8px}.financial-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:1rem}.financial-left,.financial-right{display:flex;flex-direction:column;gap:1.5rem}.field-value{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.field-value>span{font-size:1.1rem;font-weight:600;color:#0f172a}.field-value .total-sum{font-size:1.4rem;font-weight:700;color:#059669}.mva-text{font-size:.875rem;color:#64748b;font-style:italic;padding-left:.5rem;border-left:3px solid #e2e8f0;margin-top:.25rem}.financial-grid .field{background:#f8fafc;padding:1.25rem;border-radius:12px;border:1px solid #e2e8f0;transition:all .2s ease}.financial-grid .field:hover{background:#f1f5f9;border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 4px 8px #00000014}.financial-grid .field label{font-size:.875rem;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem;display:block}@media (max-width: 768px){.financial-grid{grid-template-columns:1fr;gap:1rem}.financial-left,.financial-right{gap:1rem}.financial-grid .field{padding:1rem}.field-value .total-sum{font-size:1.2rem}.items-form{flex-direction:column;gap:.75rem;align-items:stretch}.items-form .btn{width:100%;justify-content:center}.items-list li{flex-direction:column;align-items:flex-start;gap:.75rem}.items-list li>div:last-child{align-self:flex-end}}@media (max-width: 480px){.financial-grid .field{padding:.75rem}.field-value>span{font-size:1rem}.field-value .total-sum{font-size:1.1rem}.mva-text{font-size:.8rem}}.total-sum{background:linear-gradient(135deg,#059669,#10b981);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:800;letter-spacing:-.02em}.financial-grid .field:has(.amount){background:linear-gradient(135deg,#fef3c7,#fef7cd);border-color:#f59e0b}.financial-grid .field:has(.amount.negative){background:linear-gradient(135deg,#fef2f2,#fef7f7);border-color:#f87171}.financial-grid .field:has(.amount.positive){background:linear-gradient(135deg,#f0fdf4,#f7fef7);border-color:#10b981}@media (max-width: 48rem){.project-detail{padding:.75rem}.project-detail-header{flex-direction:column;gap:1rem;align-items:stretch;padding:1.5rem;margin-bottom:1rem}.header-actions{justify-content:center}.project-header-info{flex-direction:column;align-items:flex-start;gap:1rem}.project-title-section h1{font-size:1.75rem}.project-header-info h1 input{font-size:1.75rem;min-width:9.375rem}.project-email-section{padding:1.5rem;margin-top:1rem;margin-bottom:1rem}.project-content-grid{grid-template-columns:1fr;gap:1rem}.project-sidebar{position:static;order:2}.project-main-content{order:1}.email-section-bottom{order:3;margin-top:.75rem;padding:1.5rem}.info-sections{grid-template-columns:1fr;gap:1rem}.section{padding:1rem;margin-bottom:.5rem}.section h2{font-size:1.125rem;margin-bottom:1rem}.field-group{grid-template-columns:1fr;gap:1rem}.items-form{flex-direction:column;gap:.75rem}.btn{justify-content:center;width:100%;padding:.75rem 1rem}.header-actions .btn{width:auto;flex:1}.review-ratings-summary{flex-direction:column;gap:.5rem}.no-review{flex-direction:column;align-items:flex-start;gap:.5rem}.cancellation-reason-display,.project-review-section{padding:.75rem}.project-main-content,.project-sidebar{gap:1rem}}@media (min-width: 48.0625rem) and (max-width: 64rem){.project-content-grid{grid-template-columns:1.5fr 1fr;gap:2rem}.project-sidebar{position:static}.section{padding:1.5rem}}@media (min-width: 80rem){.project-detail{padding:2rem 4rem}.project-content-grid{grid-template-columns:2.5fr 1fr;gap:4rem}.project-sidebar{position:sticky;top:2rem}}@media (max-width: 1600px){.project-detail-content{grid-template-columns:1.8fr 1fr;gap:2.5rem}}@media (max-width: 1400px){.project-detail-content{grid-template-columns:1.6fr 1fr;gap:2rem}.project-detail{padding:1.5rem}.info-sections{grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem}}@media (max-width: 1200px){.project-detail-content{grid-template-columns:1fr}.project-main-content{order:1}.project-right-column{order:2}}@media (max-width: 768px){.project-detail{padding:1rem}.project-detail-header{flex-direction:column;gap:1rem;align-items:stretch;padding:1.5rem}.header-actions{justify-content:center}.project-header-info{flex-direction:column;align-items:flex-start;gap:1rem}.project-title-section h1{font-size:2rem}.project-header-info h1 input{font-size:2rem;min-width:150px}.project-email-section{padding:1.5rem}.info-sections{grid-template-columns:1fr}.section{padding:1.25rem}.field-group{grid-template-columns:1fr}.items-form{flex-direction:column;gap:.75rem}.btn{justify-content:center;width:100%}.header-actions .btn{width:auto;flex:1}}@media (max-width: 768px){.customer-info-section .field{flex-direction:column;align-items:flex-start;gap:.5rem}.customer-info-section .field label{font-weight:600;margin-bottom:.25rem}.customer-info-section .field span,.customer-info-section .field input{width:100%;text-align:left}}@media (max-width: 768px){.contractor-section .field{flex-direction:column;align-items:flex-start;gap:.5rem}.contractor-section .field label{font-weight:600;margin-bottom:.25rem}.contractor-section .field span,.contractor-section .field input{width:100%;text-align:left}}@media (max-width: 768px){.bids-section{padding:1rem}.bids-content{min-height:auto;max-height:none;overflow-y:visible}.bid-header{grid-template-columns:1fr;gap:.75rem;padding:1rem}.bid-number,.bid-contractor,.bid-dates,.bid-price{justify-content:flex-start}.bid-type{align-self:flex-start;width:fit-content}.bid-actions{justify-content:flex-end;gap:.5rem}.bid-tasks-breakdown{padding:1rem}.task-form{grid-template-columns:1fr;gap:.75rem}.modal-content{max-width:95vw;margin:1rem}.form-row{flex-direction:column;gap:1rem}}@media (max-width: 768px){.financial-right .field{padding:1rem}.items-form{flex-direction:column;gap:.75rem}.items-form input{width:100%}.items-form .btn{width:100%;justify-content:center}.items-list .item{flex-direction:column;align-items:flex-start;gap:.5rem}.items-list .item .item-actions{align-self:flex-end}}@media (max-width: 768px){.project-timeline{padding:1.5rem 1rem}.timeline-track{overflow-x:auto;padding-bottom:1rem}.timeline-step{min-width:80px}.step-label{font-size:.75rem;line-height:1.2}}@media (max-width: 768px){.email-section-bottom,.email-section-bottom .section{padding:1rem}}@media (max-width: 480px){.project-detail{padding:.5rem}.section,.financial-left,.financial-right .field{padding:1rem}.bid-header,.bid-tasks-breakdown{padding:.75rem}.btn{padding:.75rem 1rem;font-size:.875rem}.btn-sm{padding:.5rem .75rem;font-size:.8rem}}.project-inclusion-section{margin-top:1rem;padding:1.5rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px}.project-inclusion-section h3{margin:0 0 1rem;color:var(--text-primary);font-size:1.125rem;font-weight:600}.inclusion-toggles{display:flex;flex-direction:column;gap:1rem}.toggle-item{display:flex;align-items:center;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid var(--border-color)}.toggle-item:last-child{border-bottom:none}.toggle-label{font-weight:500;color:var(--text-primary);font-size:.9rem}.project-inclusion-section .toggle-switch{position:relative;display:inline-block;width:48px;height:24px}.project-inclusion-section .toggle-switch input{opacity:0;width:0;height:0}.project-inclusion-section .toggle-switch .toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;width:48px;height:24px;background-color:#cbd5e1!important;transition:.3s;border-radius:24px}[data-theme=dark] .project-inclusion-section .toggle-switch .toggle-slider{background-color:#475569!important}.project-inclusion-section .toggle-switch .toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff!important;transition:.3s;border-radius:50%;box-shadow:0 2px 4px #00000026}[data-theme=dark] .project-inclusion-section .toggle-switch .toggle-slider:before{background-color:#fff!important;box-shadow:0 2px 4px #00000080}.project-inclusion-section .toggle-switch input:checked+.toggle-slider{background-color:#10b981!important}[data-theme=dark] .project-inclusion-section .toggle-switch input:checked+.toggle-slider{background-color:#0f8!important}.project-inclusion-section .toggle-switch input:focus+.toggle-slider{box-shadow:0 0 0 3px #10b98140}[data-theme=dark] .project-inclusion-section .toggle-switch input:focus+.toggle-slider{box-shadow:0 0 0 3px #0f86}.project-inclusion-section .toggle-switch input:checked+.toggle-slider:before{transform:translate(24px)}.project-inclusion-section .toggle-switch input:disabled+.toggle-slider{opacity:.5;cursor:not-allowed}.saving-indicator{margin-top:.5rem;font-size:.875rem;color:#6b7280;font-style:italic;display:flex;align-items:center;gap:.5rem}.saving-indicator:before{content:"";width:16px;height:16px;border:2px solid #e5e7eb;border-top:2px solid #6b7280;border-radius:50%;animation:spin 1s linear infinite}.section.memory-points-section,.section.deviations-section{padding:2rem;background:linear-gradient(135deg,#fff,#fafbfc);border:.0625rem solid #e2e8f0;border-radius:1.25rem;box-shadow:0 .25rem 1rem #00000014,0 .125rem .375rem #0000000a;transition:all .3s cubic-bezier(.4,0,.2,1)}.section.memory-points-section:hover,.section.deviations-section:hover{transform:translateY(-.125rem);box-shadow:0 .5rem 2rem #0000001f,0 .25rem .75rem #00000014}.section.memory-points-section h3,.section.deviations-section h3{font-size:1.125rem;font-weight:700;margin:0 0 1.5rem;color:#0f172a;padding-bottom:.75rem;border-bottom:1px solid #e2e8f0}.section.memory-points-section>div,.section.deviations-section>div{background:transparent;border:none;box-shadow:none;padding:0;border-radius:0}.memory-item{border-left:3px solid #6b7280}.deviation-item{border-left:3px solid #374151}.memory-dot{background:#6b7280}.deviation-dot{background:#374151}.memory-point-description,.deviation-description{margin:.75rem 0;font-size:.9rem;color:#374151;line-height:1.5}.memory-point-status,.deviation-status{display:flex;align-items:center;gap:.25rem}.memory-point-system,.deviation-system{font-size:.8rem;color:#6b7280;display:flex;align-items:center;gap:.25rem}.memory-point-dates,.deviation-dates{font-size:.8rem;color:#6b7280;display:flex;flex-direction:column;gap:.25rem}.memory-item-modal,.deviation-item-modal{position:relative;padding:1.5rem;background:var(--card-bg);border-radius:8px;border:1px solid #e5e7eb;transition:all .2s ease}.memory-item-modal:hover,.deviation-item-modal:hover{background:var(--card-bg);border-color:#d1d5db;transform:none;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}@media (max-width: 768px){.section.memory-points-section,.section.deviations-section{padding:1.25rem;border-radius:1rem}.section.memory-points-section h3,.section.deviations-section h3{font-size:1rem;margin-bottom:1rem}.memory-item-modal,.deviation-item-modal{padding:1rem;margin:.5rem}}@media (min-width: 769px) and (max-width: 1024px){.financial-grid{gap:1.5rem}.bid-header{grid-template-columns:30px 1fr 1fr 1fr auto auto;gap:1rem}.bids-content{max-height:500px}}[data-theme=dark] .project-detail{background:var(--bg-primary);color:var(--text-primary)}[data-theme=dark] .project-detail-header,[data-theme=dark] .project-header-card,[data-theme=dark] .project-email-section,[data-theme=dark] .email-section-bottom,[data-theme=dark] .project-detail .section,[data-theme=dark] .project-detail .panel,[data-theme=dark] .project-detail .box{background:var(--card-bg);border-color:var(--border-color);box-shadow:none}[data-theme=dark] .project-detail-header{background:var(--card-bg)}[data-theme=dark] .project-detail-header .btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-color)}[data-theme=dark] .project-detail-header .btn-primary{background:var(--primary-color);color:#fff}[data-theme=dark] .project-title-section h1,[data-theme=dark] .project-header-info h1 input{color:var(--text-primary)}[data-theme=dark] .project-meta,[data-theme=dark] .project-meta-item,[data-theme=dark] .financial-grid .field label{color:var(--text-secondary)}[data-theme=dark] .project-header-info h1 input{background:var(--bg-secondary);border-color:var(--border-color)}[data-theme=dark] .financial-grid .field{background:var(--bg-secondary);border-color:var(--border-color);box-shadow:none}[data-theme=dark] .financial-grid .field:hover{background:var(--hover-color);border-color:var(--border-color);box-shadow:none;transform:none}[data-theme=dark] .mva-text{color:var(--text-muted);border-left-color:var(--border-color)}[data-theme=dark] .placeholder-email{color:var(--text-muted)}[data-theme=dark] .project-detail .status-badge{background:var(--bg-tertiary);color:var(--text-primary)}[data-theme=dark] .status-select{background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-primary)}[data-theme=dark] .bids-content::-webkit-scrollbar-track{background:transparent}[data-theme=dark] .bids-content::-webkit-scrollbar-thumb{background-color:#fff3}.note-reminder-popup{max-width:400px;text-align:center;padding:2rem}.note-reminder-popup h3{margin-bottom:1rem;font-size:1.25rem;color:var(--text-primary)}.note-reminder-popup p{margin-bottom:1.5rem;color:var(--text-secondary);line-height:1.5}.note-reminder-popup .modal-actions{display:flex;justify-content:center}.note-reminder-popup .btn-primary{background:var(--accent-primary);color:#fff;padding:.75rem 2rem;border:none;border-radius:.5rem;cursor:pointer;font-weight:500;transition:background .2s ease}.note-reminder-popup .btn-primary:hover{background:var(--accent-hover)}.project-detail-header{padding:1.5rem 2rem;margin-bottom:1.5rem}.project-header-card{padding:2rem}.project-detail-content{gap:1.5rem}.project-content-grid{gap:2rem}.project-main-content,.project-sidebar{gap:1.25rem}.project-title-section h1{font-size:2rem}.project-meta{margin-bottom:.5rem}.field-group{gap:1rem}.section{padding:1.5rem}.section h2{margin-bottom:1rem;padding-bottom:.75rem;font-size:1.25rem}.project-header-timeline{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--border-color)}.project-header-timeline .project-timeline{padding:0;margin:0;background:transparent;border:none;box-shadow:none}.contact-section .contact-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:1.25rem}.contact-section .contact-block{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1rem}.contact-section .contact-block h3{margin:0 0 .75rem;font-size:.95rem;font-weight:700;color:var(--text-primary);letter-spacing:.02em;text-transform:uppercase}.broker-project-field{grid-column:1 / -1;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border-color)}.broker-toggle-row{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.broker-toggle-input{width:18px;height:18px;cursor:pointer}.broker-toggle-label{font-weight:600;cursor:pointer;margin:0;color:var(--text-primary)}.broker-fields{display:flex;flex-direction:column;gap:.75rem;margin-left:1rem}.financial-section .financial-grid{gap:1.25rem}.financial-section .financial-grid .field{padding:1rem}.financial-section .field label{font-size:.75rem}.financial-section .field-value>span{font-size:1rem}.financial-section .field-value .total-sum{font-size:1.2rem}.financial-section .items-list li{padding:.5rem .75rem}.todo-add-btn-full{width:100%;padding:.75rem;border-radius:8px;border:1px dashed var(--border-color);background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;font-size:.875rem;transition:all .15s ease}.todo-add-btn-full:hover{border-color:var(--primary-color);color:var(--primary-color);background:var(--hover-color)}.project-detail .todo-list-container{padding:1.25rem}.project-detail .todo-list-header{margin-bottom:1rem;padding-bottom:.75rem}.project-detail .todo-item{padding:.75rem}.project-detail .project-notes-section{padding:1.25rem}.project-detail .notes-list{max-height:320px}[data-theme=dark] .project-detail .field label{color:var(--text-secondary)}[data-theme=dark] .project-detail .field span{color:var(--text-primary)}[data-theme=dark] .project-detail .field a{color:var(--accent-color)}[data-theme=dark] .project-detail .field a:hover{color:var(--text-primary)}[data-theme=dark] .comment-display{background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-secondary)}[data-theme=dark] .project-detail .section h2{border-bottom-color:var(--border-color)}[data-theme=dark] .project-detail .section h2 svg{color:var(--text-secondary)}[data-theme=dark] .contact-section .contact-block,[data-theme=dark] .items-list li{background:var(--bg-secondary);border-color:var(--border-color)}[data-theme=dark] .items-list li:hover{background:var(--hover-color)}[data-theme=dark] .items-list-empty{background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-muted)}[data-theme=dark] .field-value>span{color:var(--text-primary)}[data-theme=dark] .mva-text{color:var(--text-muted)}[data-theme=dark] .total-sum{-webkit-text-fill-color:unset;color:var(--success-color);background:none}[data-theme=dark] .todo-add-btn-full{border-color:var(--border-color);color:var(--text-secondary)}[data-theme=dark] .todo-add-btn-full:hover{border-color:var(--accent-color);color:var(--accent-color);background:#8ab4f81f}[data-theme=dark] .financial-grid .field:has(.amount),[data-theme=dark] .financial-grid .field:has(.amount.positive),[data-theme=dark] .financial-grid .field:has(.amount.negative){background:var(--bg-secondary);border-color:var(--border-color)}[data-theme=dark] .memory-point-description,[data-theme=dark] .deviation-description,[data-theme=dark] .memory-point-system,[data-theme=dark] .deviation-system,[data-theme=dark] .memory-point-dates,[data-theme=dark] .deviation-dates{color:var(--text-secondary)}[data-theme=dark] .memory-item,[data-theme=dark] .deviation-item{border-left-color:var(--border-color)}[data-theme=dark] .memory-dot,[data-theme=dark] .deviation-dot{background:var(--border-color)}[data-theme=dark] .memory-item-modal,[data-theme=dark] .deviation-item-modal{background:var(--bg-secondary);border-color:var(--border-color);box-shadow:none}@media (max-width: 960px){.contact-section .contact-grid{grid-template-columns:1fr}}@media (max-width: 768px){.project-detail-header{padding:1.25rem}.project-header-card{padding:1.5rem}.project-title-section h1{font-size:1.75rem}.contact-section .contact-block{padding:.75rem}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:var(--card-bg);border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:90vw;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e2e8f0}.modal-title{display:flex;align-items:center;gap:.75rem}.modal-title h2{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.modal-close{background:none;border:none;padding:.5rem;cursor:pointer;border-radius:6px;transition:background-color .2s}.modal-close:hover{background-color:#f1f5f9}.modal-body{padding:1.5rem;overflow-y:auto;flex:1}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1.5rem;border-top:1px solid #e2e8f0;background-color:#f8fafc}.cancellation-modal{width:100%;max-width:500px}.cancellation-explanation{margin-bottom:1rem;color:var(--text-secondary);line-height:1.5}.cancellation-textarea{width:100%;min-height:100px;resize:vertical}.review-modal{width:100%;max-width:700px}.review-modal-body{max-height:70vh}.review-section{margin-bottom:2rem}.review-section:last-child{margin-bottom:0}.review-section-title{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin:0 0 1.5rem;padding-bottom:.5rem;border-bottom:2px solid #e2e8f0}.review-ratings{display:flex;flex-direction:column;gap:1.25rem;margin-bottom:1.5rem}.star-rating-container{display:flex;align-items:center;gap:1rem}.star-rating-label{flex:1;font-weight:500;color:var(--text-primary);min-width:200px}.star-rating{display:flex;gap:.25rem}.star{background:none;border:none;cursor:pointer;padding:.25rem;border-radius:4px;transition:all .2s;color:#e2e8f0}.star:hover{transform:scale(1.1)}.star-filled{color:#fbbf24}.star-empty{color:#e2e8f0}.feedback-section{margin-top:1.5rem}.feedback-label{display:block;font-weight:500;color:var(--text-primary);margin-bottom:.5rem}.feedback-textarea{width:100%;min-height:80px;resize:vertical}.transfer-modal{width:100%;max-width:500px}.transfer-project-info{background-color:#f8fafc;padding:1rem;border-radius:8px;margin-bottom:1.5rem}.transfer-project-info p{margin:.5rem 0;color:var(--text-secondary)}.transfer-project-info p:first-child{margin-top:0}.transfer-project-info p:last-child{margin-bottom:0}.transfer-form{margin-bottom:1rem}.transfer-form label{display:block;font-weight:500;color:var(--text-primary);margin-bottom:.5rem}.transfer-form select{width:100%;padding:.75rem;border:1px solid #e2e8f0;border-radius:6px;font-size:1rem}.transfer-error{color:#dc2626;background-color:#fef2f2;padding:.75rem 1rem;border-radius:6px;margin-top:1rem;font-size:.875rem}.transfer-success{text-align:center;padding:2rem}.transfer-success .success-icon{width:60px;height:60px;background-color:#10b981;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;margin:0 auto 1rem}.transfer-success p{margin:.5rem 0;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.transfer-success .success-subtitle{font-weight:400;font-size:.875rem;color:var(--text-secondary)}@media (max-width: 768px){.modal-content{margin:1rem;max-width:calc(100vw - 2rem)}.modal-header,.modal-body,.modal-footer{padding:1rem}.review-modal-body{max-height:60vh}.star-rating-container{flex-direction:column;align-items:flex-start;gap:.5rem}.star-rating-label{min-width:auto}.modal-footer{flex-direction:column}.modal-footer .btn{width:100%}}[data-theme=dark] .modal-overlay{background-color:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}[data-theme=dark] .modal-content{background:var(--card-bg);border:1px solid rgba(0,212,255,.2);box-shadow:0 0 60px #00d4ff4d,0 20px 40px #00000080;animation:modalGlow 3s ease-in-out infinite}@keyframes modalGlow{0%,to{box-shadow:0 0 60px #00d4ff4d,0 20px 40px #00000080}50%{box-shadow:0 0 80px #00d4ff66,0 20px 40px #00000080}}[data-theme=dark] .modal-header{border-bottom:1px solid rgba(0,212,255,.15);background:linear-gradient(135deg,#00d4ff0d,#7c3aed0d)}[data-theme=dark] .modal-title h2{color:var(--text-primary);text-shadow:0 0 20px rgba(0,212,255,.3)}[data-theme=dark] .modal-close{color:var(--text-secondary)}[data-theme=dark] .modal-close:hover{background-color:#00d4ff1a;color:var(--accent-color);box-shadow:0 0 15px #00d4ff4d}[data-theme=dark] .modal-footer{border-top:1px solid rgba(0,212,255,.15);background:linear-gradient(135deg,#0f141980,#1a1f2980)}[data-theme=dark] .cancellation-explanation{color:var(--text-secondary)}[data-theme=dark] .review-section-title{color:var(--text-primary);border-bottom:2px solid rgba(0,212,255,.3);text-shadow:0 0 15px rgba(0,212,255,.2)}[data-theme=dark] .star-rating-label,[data-theme=dark] .feedback-label{color:var(--text-primary)}[data-theme=dark] .star-empty{color:#fff3}[data-theme=dark] .star-filled{color:#fbbf24;filter:drop-shadow(0 0 8px rgba(251,191,36,.6))}[data-theme=dark] .transfer-project-info{background:#00d4ff14;border:1px solid rgba(0,212,255,.2)}[data-theme=dark] .transfer-project-info p{color:var(--text-secondary)}[data-theme=dark] .transfer-form label{color:var(--text-primary)}[data-theme=dark] .transfer-form select{background:#0f1419cc;border:1px solid rgba(0,212,255,.2);color:var(--text-primary)}[data-theme=dark] .transfer-form select:focus{border-color:var(--accent-color);box-shadow:0 0 20px #00d4ff4d}[data-theme=dark] .transfer-error{background-color:#ff5c5c26;color:#ff8a8a;border:1px solid rgba(255,92,92,.3)}[data-theme=dark] .transfer-success .success-icon{background:var(--gradient-primary);box-shadow:0 0 30px #00d4ff80}[data-theme=dark] .transfer-success p{color:var(--text-primary)}[data-theme=dark] .transfer-success .success-subtitle{color:var(--text-secondary)}.project-timeline{padding:1.5rem;background:linear-gradient(135deg,#fff,#fafbfc);border-radius:1.25rem;box-shadow:0 .25rem 1rem #00000014,0 .125rem .375rem #0000000a;border:.0625rem solid #e2e8f0;margin-bottom:1.5rem;position:relative;overflow:hidden}.timeline-track{display:flex;align-items:center;position:relative;padding:.75rem 0;overflow-x:auto;gap:1.25rem;justify-content:space-between}.timeline-step{display:flex;flex-direction:column;align-items:center;position:relative;flex:0 0 auto;min-width:7rem;padding:0 .5rem}.step-marker{width:1.25rem;height:1.25rem;border-radius:50%;background-color:#e2e8f0;z-index:2;border:.125rem solid #e2e8f0}.step-label{margin-top:.5rem;font-size:.75rem;font-weight:600;text-align:center;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;line-height:1.2;padding:0 .25rem}.step-connector{position:absolute;height:.125rem;background-color:#e2e8f0;top:.625rem;width:calc(100% + 1.5rem);left:50%;z-index:1}.timeline-step.complete .step-marker{background-color:#22c55e;border-color:#22c55e}.timeline-step.complete .step-connector{background-color:#22c55e}.timeline-step.complete .step-label{color:#16a34a}.timeline-step.current .step-marker{background-color:var(--card-bg);border-color:#3b82f6;border-width:.1875rem}.timeline-step.current .step-label{color:#2563eb;font-weight:700}.step-connector.next{background-image:repeating-linear-gradient(to right,#3b82f6 0,#3b82f6 .5rem,transparent .5rem,transparent 1rem);background-size:1rem .125rem;background-repeat:repeat-x;background-color:transparent!important;animation:dash-move 2s linear infinite}.timeline-step.next .step-marker{background-color:var(--card-bg);border:.1875rem dashed #3b82f6;box-shadow:0 0 0 .125rem #3b82f61a;animation:pulse-next 2s infinite}@keyframes pulse-next{0%,to{box-shadow:0 0 0 .125rem #3b82f61a}50%{box-shadow:0 0 0 .25rem #3b82f633}}@keyframes dash-move{0%{background-position:0 0}to{background-position:1rem 0}}.timeline-step.next .step-label{color:#3b82f6;font-weight:600}.timeline-step.failed .step-marker{background-color:#ef4444;border-color:#ef4444}.timeline-step.failed .step-connector{background-color:#ef4444}.timeline-step.failed .step-label{color:#b91c1c}.timeline-failure-status{display:flex;justify-content:center;margin-top:1rem}.failure-badge{display:inline-block;padding:.5rem 1rem;background-color:#fecaca;color:#b91c1c;font-weight:600;border-radius:62.4375rem;text-transform:uppercase;font-size:.8rem;letter-spacing:.05em}@media (max-width: 48rem){.project-timeline{padding:1rem}.timeline-track{padding-bottom:2rem;gap:1rem}.timeline-step{min-width:6rem;padding:0 .25rem}.step-label{font-size:.75rem;white-space:normal;word-break:break-word}}[data-theme=dark] .project-timeline{background:var(--card-bg);border-color:var(--border-color);box-shadow:none}[data-theme=dark] .step-label{color:var(--text-secondary)}[data-theme=dark] .step-marker{background-color:var(--bg-tertiary);border-color:var(--border-color)}[data-theme=dark] .step-connector{background-color:var(--border-color)}[data-theme=dark] .timeline-step.current .step-marker{background-color:var(--card-bg);border-color:var(--primary-color)}[data-theme=dark] .timeline-step.current .step-label{color:var(--primary-color)}[data-theme=dark] .timeline-step.complete .step-label{color:var(--success-color)}[data-theme=dark] .failure-badge{background-color:#ef444433;color:#fca5a5;border:1px solid rgba(239,68,68,.35)}.email-section{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000000d;margin-bottom:20px;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.email-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background-color:#fff}.email-header h2{margin:0;display:flex;align-items:center;gap:8px;font-weight:600;color:#2c3e50;font-size:1.3rem}.email-controls{display:flex;gap:10px}.btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;outline:none}.btn-primary{background-color:#3498db;color:#fff}.btn-primary:hover{background-color:#2980b9}.btn-secondary{background-color:#f1f3f5;color:#495057}.btn-secondary:hover{background-color:#e9ecef}.btn:disabled{opacity:.6;cursor:not-allowed}.email-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 0}.loading-spinner{border:3px solid #f3f3f3;border-top:3px solid #3498db;border-radius:50%;width:30px;height:30px;animation:spin 1s linear infinite;margin-bottom:16px}.email-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:50px 20px;color:#6c757d;text-align:center}.email-empty svg{color:#adb5bd;margin-bottom:16px}.email-empty h3{margin-top:0;margin-bottom:8px;font-weight:600;color:#495057}.email-empty p{margin-top:0;max-width:400px}.email-error{display:flex;align-items:center;gap:10px;background-color:#fff3f3;color:#e74c3c;padding:12px 16px;border-radius:6px;margin:16px 20px;position:relative}.error-close{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:18px;color:#e74c3c;cursor:pointer;padding:0;line-height:1}.email-tabs{display:flex;background-color:#fff;border-bottom:1px solid #e9ecef;padding:0 20px}.tab{display:flex;align-items:center;gap:8px;padding:12px 16px;background:none;border:none;border-bottom:2px solid transparent;color:#6c757d;font-weight:500;cursor:pointer;transition:all .2s ease}.tab:hover{color:#495057}.tab.active{color:#3498db;border-bottom-color:#3498db}.email-content{padding:20px}[data-theme=dark] .email-section{background-color:var(--card-bg);box-shadow:none}[data-theme=dark] .email-header{background-color:var(--card-bg);border-bottom:1px solid var(--border-color)}[data-theme=dark] .email-header h2{color:var(--text-primary)}[data-theme=dark] .email-tabs{background-color:var(--card-bg);border-bottom-color:var(--border-color)}[data-theme=dark] .tab{color:var(--text-secondary)}[data-theme=dark] .tab:hover{color:var(--text-primary)}[data-theme=dark] .email-content{background:var(--card-bg)}[data-theme=dark] .email-empty{color:var(--text-muted)}[data-theme=dark] .email-empty h3{color:var(--text-primary)}[data-theme=dark] .email-empty svg{color:var(--text-muted)}[data-theme=dark] .email-error{background-color:#ef44441f;color:#fca5a5}[data-theme=dark] .error-close{color:#fca5a5}[data-theme=dark] .conversation-card{background-color:var(--bg-secondary);border-color:var(--border-color)}[data-theme=dark] .conversation-header{background-color:var(--bg-secondary)}[data-theme=dark] .conversation-header:hover{background-color:var(--hover-color)}[data-theme=dark] .conversation-subject{color:var(--text-primary)}[data-theme=dark] .conversation-preview,[data-theme=dark] .conversation-info,[data-theme=dark] .conversation-meta{color:var(--text-secondary)}[data-theme=dark] .email-section .btn-secondary{background-color:var(--bg-tertiary);color:var(--text-primary)}[data-theme=dark] .email-section .btn-secondary:hover{background-color:var(--hover-color)}[data-theme=dark] .email-section .btn-primary{background-color:var(--primary-color)}[data-theme=dark] .conversation-message,[data-theme=dark] .conversation-message.from-company,[data-theme=dark] .conversation-message.from-customer,[data-theme=dark] .system-email{background-color:var(--bg-secondary);border-color:var(--border-color);box-shadow:none}[data-theme=dark] .system-email-header,[data-theme=dark] .conversation-content,[data-theme=dark] .email-search,[data-theme=dark] .search-input-container{background-color:var(--bg-secondary)}[data-theme=dark] .conversation-header:hover,[data-theme=dark] .system-email-header:hover,[data-theme=dark] .conversation-message:hover{background-color:var(--hover-color)}[data-theme=dark] .sender-name,[data-theme=dark] .message-content,[data-theme=dark] .email-subject,[data-theme=dark] .email-snippet{color:var(--text-primary)}[data-theme=dark] .message-date,[data-theme=dark] .conversation-meta,[data-theme=dark] .email-date,[data-theme=dark] .email-recipients,[data-theme=dark] .conversation-toggle,[data-theme=dark] .email-toggle{color:var(--text-secondary)}[data-theme=dark] .message-separator,[data-theme=dark] .email-content-expanded,[data-theme=dark] .email-tabs{border-color:var(--border-color)}[data-theme=dark] .search-input-container{border-color:var(--border-color)}.conversation-card{background-color:#fff;border:1px solid #e9ecef;border-radius:8px;overflow:hidden;margin-bottom:16px;transition:box-shadow .2s ease}.conversation-card:hover{box-shadow:0 4px 12px #0000000d}.conversation-header{display:flex;justify-content:space-between;align-items:center;padding:16px;cursor:pointer;background-color:#fff;transition:background-color .2s ease}.conversation-header:hover{background-color:#f8f9fa}.conversation-info{flex:1}.conversation-subject{display:flex;align-items:center;gap:8px;font-weight:600;margin-bottom:8px;color:#2c3e50}.conversation-meta{display:flex;flex-wrap:wrap;gap:16px;font-size:.85rem;color:#6c757d}.participants,.message-count,.last-message{display:flex;align-items:center;gap:4px}.conversation-toggle{color:#6c757d}.conversation-content{padding:0 16px 16px}.conversation-messages{border-radius:6px;overflow:hidden}.conversation-message{padding:16px;border-radius:6px;margin-bottom:12px;background-color:#fff;box-shadow:0 1px 3px #0000000d;position:relative}.conversation-message.from-company{background-color:#fff;border-left:4px solid #3498db}.conversation-message.from-customer{background-color:#fff;border-left:4px solid #e67e22}.message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.message-from{display:flex;align-items:center;gap:6px;font-weight:500}.sender-name{color:#495057;font-weight:600}.company-badge{background-color:#3498db;color:#fff;font-size:.75rem;padding:3px 8px;border-radius:12px;font-weight:500;margin-left:4px}.customer-badge{background-color:#e67e22;color:#fff;font-size:.75rem;padding:3px 8px;border-radius:12px;font-weight:500;margin-left:4px}.message-date{color:#6c757d;font-size:.8rem}.message-content{color:#212529;line-height:1.6;max-height:none;overflow:visible;white-space:pre-wrap;word-break:break-word}.message-separator{height:1px;background-color:#e9ecef;margin:16px 0}.system-email{background-color:#fff;border:1px solid #e9ecef;border-radius:8px;overflow:hidden;margin-bottom:16px;transition:box-shadow .2s ease;box-shadow:0 1px 3px #0000000d}.system-email:hover{box-shadow:0 4px 12px #0000000d}.system-email-header{padding:16px;cursor:pointer;position:relative;transition:background-color .2s ease}.system-email-header:hover{background-color:#f8f9fa}.email-toggle{position:absolute;top:16px;right:16px;color:#6c757d}.email-content-expanded{padding:0 16px 16px;border-top:1px solid #e9ecef}.email-header-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-right:24px}.email-subject{display:flex;align-items:center;gap:8px;font-weight:600;color:#2c3e50}.email-date{display:flex;align-items:center;gap:4px;color:#6c757d;font-size:.85rem}.email-recipients{color:#6c757d;font-size:.85rem;margin-bottom:12px;display:flex;flex-direction:column;gap:6px}.email-from{display:flex;align-items:center;gap:6px}.email-to{display:flex;align-items:center;gap:6px;margin-left:20px}.email-snippet{color:#212529;line-height:1.6;padding:8px 0;white-space:pre-wrap;word-break:break-word;max-height:none;overflow:visible}.email-search{padding:16px 20px;background-color:#fff}.search-input-container{position:relative;display:flex;align-items:center;background-color:#fff;border:1px solid #e9ecef;border-radius:8px;padding:12px 16px;gap:12px;transition:border-color .2s ease,box-shadow .2s ease}.search-input-container:focus-within{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.search-input-container svg{color:#6c757d;flex-shrink:0}.search-input{flex:1;border:none;outline:none;font-size:14px;color:#495057;background:transparent}.search-input::placeholder{color:#6c757d}.search-clear{background:none;border:none;color:#6c757d;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:4px;border-radius:4px;transition:all .2s ease;flex-shrink:0}.search-clear:hover{color:#495057;background-color:#f8f9fa}.search-results-info{margin-top:12px;font-size:13px;color:#6c757d;display:flex;align-items:center;gap:6px}.search-results-info:before{content:"🔍";font-size:12px}.search-highlight{background-color:#fff3cd;color:#856404;padding:2px 4px;border-radius:3px;font-weight:500}@media (max-width: 768px){.email-header{flex-direction:column;align-items:flex-start;gap:12px}.conversation-meta{flex-direction:column;gap:8px}.message-header{flex-direction:column;align-items:flex-start;gap:6px}.email-header-info{flex-direction:column;align-items:flex-start;gap:8px}}[data-theme=dark] .email-section,[data-theme=dark] .email-header,[data-theme=dark] .email-tabs,[data-theme=dark] .email-content,[data-theme=dark] .email-search,[data-theme=dark] .conversation-card,[data-theme=dark] .conversation-header,[data-theme=dark] .conversation-message{background:var(--card-bg);border-color:var(--border-color);box-shadow:none}[data-theme=dark] .email-header h2,[data-theme=dark] .conversation-subject,[data-theme=dark] .email-snippet{color:var(--text-primary)}[data-theme=dark] .tab,[data-theme=dark] .conversation-meta,[data-theme=dark] .email-empty,[data-theme=dark] .email-empty h3,[data-theme=dark] .email-date,[data-theme=dark] .email-from,[data-theme=dark] .email-to{color:var(--text-secondary)}[data-theme=dark] .tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}[data-theme=dark] .search-input-container{background:var(--bg-secondary);border-color:var(--border-color);box-shadow:none}[data-theme=dark] .search-input{color:var(--text-primary)}[data-theme=dark] .search-input::placeholder,[data-theme=dark] .search-results-info,[data-theme=dark] .search-clear{color:var(--text-muted)}[data-theme=dark] .search-clear:hover{color:var(--text-primary);background:var(--hover-color)}.handover-button{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#6b7280;color:#f8fafc;border:none;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .2s}.handover-button:hover{background:#4b5563}.handover-button:disabled{background:#9ca3af;cursor:not-allowed}.handover-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.handover-modal{background:var(--card-bg);border-radius:.5rem;box-shadow:0 20px 25px -5px #0000001a;max-width:500px;width:90%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.handover-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid #e5e7eb}.handover-modal-header h3{margin:0;font-size:1.125rem;font-weight:600;color:#111827}.close-button{background:none;border:none;color:#6b7280;cursor:pointer;padding:.25rem;border-radius:.25rem;transition:background-color .2s}.close-button:hover{background:#f3f4f6}.handover-modal-body{padding:1.5rem;overflow-y:auto}.handover-description{margin:0 0 1.5rem;color:#6b7280;font-size:.875rem;line-height:1.5}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#374151;font-size:.875rem}.form-group select{width:100%;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;color:#111827;background:var(--card-bg);cursor:pointer}.form-group select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group select:disabled{background:#f3f4f6;cursor:not-allowed}.handover-modal-footer{display:flex;gap:.75rem;justify-content:flex-end;padding:1.5rem;border-top:1px solid #e5e7eb}.cancel-button,.submit-button{padding:.5rem 1rem;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;border:none}.cancel-button{background:var(--card-bg);color:#374151;border:1px solid #d1d5db}.cancel-button:hover:not(:disabled){background:#f9fafb}.submit-button{background:#3b82f6;color:#fff}.submit-button:hover:not(:disabled){background:#2563eb}.cancel-button:disabled,.submit-button:disabled{opacity:.5;cursor:not-allowed}.autocomplete-container{position:relative;width:100%}.autocomplete-label{display:block;margin-bottom:6px;font-weight:500;color:#495057;font-size:14px}.autocomplete-label .required{color:#dc3545;margin-left:2px}.autocomplete-input-wrapper{position:relative}.autocomplete-input{width:100%;padding:12px 16px;border:2px solid #e9ecef;border-radius:6px;font-size:16px;transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box;background-color:var(--card-bg)}.autocomplete-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--card-bg);border:1px solid #e9ecef;border-radius:6px;box-shadow:0 4px 12px #00000026;z-index:1000;max-height:300px;overflow-y:auto;margin-top:2px}.autocomplete-loading{padding:16px;text-align:center;color:#6c757d;font-style:italic}.autocomplete-option{padding:12px 16px;cursor:pointer;border-bottom:1px solid #f8f9fa;transition:background-color .2s ease}.autocomplete-option:hover{background-color:#f8f9fa}.autocomplete-option:last-child{border-bottom:none}.option-main{display:flex;align-items:center;gap:8px;margin-bottom:4px}.option-name{font-weight:500;color:#2c3e50}.option-details{display:flex;gap:16px;margin-left:24px;font-size:13px;color:#6c757d}.option-phone,.option-email{flex:1}.autocomplete-no-results{padding:16px;text-align:center;color:#6c757d;font-style:italic}.autocomplete-divider{height:1px;background-color:#e9ecef;margin:8px 0}.autocomplete-create-new{padding:12px 16px;cursor:pointer;display:flex;align-items:center;gap:8px;color:#007bff;font-weight:500;background-color:#f8f9ff;transition:background-color .2s ease;border-top:1px solid #e9ecef}.autocomplete-create-new:hover{background-color:#e3f2fd}.autocomplete-create-new svg{color:#007bff}@media (max-width: 768px){.autocomplete-input{font-size:16px;padding:12px 14px}.autocomplete-dropdown{max-height:250px}.option-details{flex-direction:column;gap:4px;margin-left:24px}.autocomplete-option{padding:14px 16px}}:root{--max-width-page: 87.5rem;--max-width-search: 37.5rem;--border-width-thick: .125rem;--border-width-thin: .0625rem;--min-select-width: 9.375rem;--margin-left-sidebar: 15.625rem}.project-manager{max-width:var(--max-width-page);margin:0 auto;padding:1.5rem 2rem;min-height:100vh;background-color:var(--bg-primary)}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-8);padding-bottom:var(--spacing-6);border-bottom:var(--border-width-thick) solid var(--border-color)}.header button{display:flex;align-items:center;gap:var(--spacing-2);font-weight:600;min-height:2.75rem}.search-container{margin-bottom:var(--spacing-8)}.modern-filter-container{background:#fff;border-radius:12px;border:1px solid #e5e7eb;padding:1.25rem;margin-bottom:2rem;position:relative;box-shadow:0 1px 3px #0000000d}.filters-section{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}@media (min-width: 768px){.filters-section{flex-wrap:nowrap}}.filters-group{display:flex;align-items:center;gap:.75rem;margin-left:auto}.filters-group .filter-category{display:flex;flex-direction:column;gap:.25rem;align-items:flex-start}.modern-search-input{flex:1;min-width:300px;max-width:100%;padding:.625rem 1rem;border:1px solid #e5e7eb;border-radius:8px;font-size:.875rem;min-height:38px;transition:all .2s ease;background-color:#fafafa;color:#1f2937}.modern-search-input:focus{outline:none;border-color:#3b82f6;background-color:#fff;box-shadow:0 0 0 3px #3b82f61a}.modern-search-input::placeholder{color:#9ca3af}.filter-category{display:flex;flex-direction:column;gap:.25rem;align-items:flex-start;justify-content:center}.filter-label{font-size:.6rem;font-weight:500;color:#6b7280;margin:0;text-transform:uppercase;letter-spacing:.025em}.filter-dropdown{position:relative;min-width:200px}.project-manager .filter-dropdown .dropdown-button{width:100%;display:flex;align-items:center;justify-content:space-between;padding:.625rem 1rem;border:1px solid #e5e7eb!important;border-radius:8px;background:#fafafa!important;background-color:#fafafa!important;background-image:none!important;color:#1f2937!important;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;min-height:38px;box-shadow:none!important}.project-manager .filter-dropdown .dropdown-button:before{display:none!important}.project-manager .filter-dropdown .dropdown-button:hover{border-color:#d1d5db;background:#fff!important;background-color:#fff!important;background-image:none!important}.project-manager .filter-dropdown .dropdown-button:hover:before{display:none!important}.project-manager .filter-dropdown .dropdown-button:focus{outline:none;border-color:#3b82f6;background:#fff!important;box-shadow:0 0 0 3px #3b82f61a!important}.project-manager .filter-dropdown .dropdown-button.open{border-color:#3b82f6;background:#fff!important;box-shadow:0 0 0 3px #3b82f61a!important}.dropdown-chevron{width:16px;height:16px;color:#9ca3af;transition:transform .2s ease;flex-shrink:0}.dropdown-chevron.open{transform:rotate(180deg);color:#3b82f6}.project-manager .filter-dropdown .dropdown-content{position:absolute;top:100%;left:0;right:0;margin-top:.5rem;background:#fff!important;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 25px #0000001a,0 4px 8px #0000000f;z-index:50;max-height:320px;overflow-y:auto}.dropdown-option{display:flex;align-items:center;gap:.625rem;padding:.5rem .875rem;color:#2c3e50;font-size:.85rem;cursor:pointer;transition:background-color .15s ease;border-bottom:1px solid #f1f3f4}.dropdown-option:last-child{border-bottom:none}.dropdown-option:hover{background-color:var(--bg-secondary)}.dropdown-option.selected{background-color:#f0f7ff;color:#2563eb}.dropdown-option.selected:hover{background-color:#e8f2ff}.dropdown-checkbox{width:14px;height:14px;border:1px solid #d1d9e0;border-radius:2px;background:var(--card-bg);position:relative;flex-shrink:0;transition:all .15s ease}.dropdown-checkbox.checked{background-color:#2563eb;border-color:#2563eb}.dropdown-checkbox.checked:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:10px;font-weight:700}.project-manager .filter-dropdown .dropdown-placeholder{color:#6b7280!important;font-weight:400}.dropdown-selected-count{background-color:#dbeafe;color:#1d4ed8;padding:.125rem .375rem;border-radius:8px;font-size:.7rem;font-weight:600;margin-left:.375rem}.filter-actions{display:flex;align-items:center;justify-content:flex-end}.clear-filters-btn{display:inline-flex!important;align-items:center;justify-content:center;gap:.375rem;padding:.5rem!important;background:#e5e7eb!important;background-color:#e5e7eb!important;background-image:none!important;color:#374151!important;border:none!important;border-radius:8px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap;min-height:auto;width:32px;height:32px;box-shadow:none!important;transform:none!important;overflow:visible!important}.clear-filters-btn:before{display:none!important;content:none!important}.clear-filters-btn:hover{background:#d1d5db!important;background-color:#d1d5db!important;background-image:none!important;color:#1f2937!important;transform:none!important;box-shadow:none!important}.clear-filters-btn:hover:before{display:none!important;content:none!important}.clear-filters-btn:active{transform:none!important;box-shadow:none!important}.clear-filters-btn:focus{outline:none;box-shadow:0 0 0 2px #3b82f64d!important}@media (max-width: 768px){.modern-filter-container{padding:1rem;margin-bottom:1.5rem}.filters-section{flex-direction:column;align-items:stretch;gap:.75rem}.modern-search-input{min-width:auto;width:100%;order:1}.filters-group{margin-left:0;flex-direction:column;gap:.75rem;order:2}.filter-dropdown{min-width:auto;width:100%}.filter-actions{width:100%}.clear-filters-btn{width:100%;justify-content:center}.filter-label{font-size:.6rem}}@media (min-width: 769px){.filters-group{flex-direction:row;align-items:center}.filter-category{align-items:flex-start}}@media (max-width: 480px){.dropdown-content{max-height:200px}.dropdown-option{padding:.5rem;font-size:.8rem}}.search-filter-container{display:flex;align-items:center;gap:var(--spacing-8);margin-bottom:var(--spacing-8);padding:var(--spacing-4);background:var(--card-bg);border-radius:.75rem;border:var(--border-width-thin) solid var(--border-color);box-shadow:var(--shadow-sm)}.search-section{flex:1;max-width:var(--max-width-search)}.filter-section{display:flex;align-items:center;gap:var(--spacing-3);flex-shrink:0;transform:translateY(-.0625rem);margin-bottom:var(--spacing-2)}.filter-label{font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary);white-space:nowrap}.status-select{padding:var(--spacing-3) var(--spacing-4);border:var(--border-width-thin) solid var(--border-color);border-radius:.5rem;font-size:var(--font-size-sm);background:var(--card-bg);color:var(--text-primary);cursor:pointer;transition:all .2s ease;min-width:var(--min-select-width);min-height:2.75rem}.status-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 .125rem #0000001a}.search-input{width:100%;padding:var(--spacing-3) var(--spacing-4);border:var(--border-width-thick) solid var(--border-color);border-radius:.5rem;font-size:var(--font-size-base);background:var(--card-bg);color:var(--text-primary);transition:all .3s ease;min-height:2.75rem}.filter-controls{background:var(--card-bg);padding:2rem;border-radius:12px;border:1px solid var(--border-color);box-shadow:var(--shadow-sm);margin-bottom:2rem}.filter-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border-radius:8px;font-size:.875rem;font-weight:500;border:1px solid var(--border-color);background:var(--card-bg);color:var(--text-secondary);cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-sm)}.error-message{background-color:var(--error-color);color:#fff;padding:1rem;border-radius:6px;margin-bottom:1rem;display:flex;justify-content:space-between;align-items:center}.error-message button{background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.loading-spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top:3px solid var(--text-primary);border-radius:50%;animation:spin 1s linear infinite}.table-container{background-color:var(--card-bg);border-radius:12px;overflow:hidden;border:2px solid var(--border-color);box-shadow:0 4px 6px #0000000d}.projects-table{width:100%;border-collapse:collapse;background:var(--card-bg);border-radius:12px;overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.projects-table th,.projects-table td{padding:1.25rem;text-align:left;border-bottom:1px solid var(--border-color)}.projects-table th{background:var(--bg-secondary);font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-primary);border-bottom:2px solid var(--border-color)}.projects-table tbody tr{transition:background .2s ease;cursor:pointer}.projects-table tbody tr:hover{background:var(--bg-tertiary)}.clickable-row:hover{background:var(--bg-tertiary)!important}.clickable-row:active{background:var(--border-color);transition:background .1s ease}.editing-row{background-color:var(--bg-tertiary)!important}.editing-row input{width:100%;min-width:120px;margin:0}.hidden{display:none}.project-number{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-weight:600;font-size:.875rem;background-color:var(--card-bg);color:var(--primary-color);padding:.25rem .5rem;border-radius:4px;border:1px solid var(--border-color)}.status-badge{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;background-color:var(--card-bg)}.status-badge.mottatt_bud{background-color:#e0f2fe;color:#0369a1}.status-badge.sendt_inn_review{background-color:#fef3c7;color:#92400e}.status-badge.akseptert_oppdrag{background-color:#d1fae5;color:#065f46}.status-badge.ferdig_prosjekt{background-color:#dcfce7;color:#166534}.status-badge.mottatt-bud{background-color:#e0f2fe;color:#0369a1}.status-badge.sendt-inn-review{background-color:#fef3c7;color:#92400e}.status-badge.akseptert-oppdrag{background-color:#d1fae5;color:#065f46}.status-badge.ferdig-prosjekt{background-color:#dcfce7;color:#166534}.btn-view:hover{background-color:var(--primary-hover);border-color:var(--primary-hover)}.btn-delete{color:var(--error-color);border-color:var(--error-color)}.btn-delete:hover{background-color:var(--error-color);color:#fff;border-color:var(--error-color)}.create-form{background-color:var(--card-bg);border-radius:12px;padding:2.5rem;border:2px solid var(--border-color);box-shadow:0 4px 6px #0000000d}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.form-group{display:flex;flex-direction:column;gap:.75rem}.form-group label{font-weight:600;color:var(--text-primary);font-size:.875rem;letter-spacing:.025em}.input{padding:.875rem;border:2px solid var(--border-color);border-radius:8px;font-size:1rem;transition:all .2s ease;background-color:var(--bg-primary);box-shadow:0 1px 3px #0000000d}.pagination-container{display:flex;flex-direction:column;align-items:center;gap:1rem;margin-top:2rem;padding:1.5rem;background:var(--card-bg);border-radius:8px;border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.pagination-info{font-size:.875rem;color:var(--text-secondary);font-weight:500}.pagination-controls{display:flex;align-items:center;gap:.25rem}.pagination-pages{display:flex;align-items:center;gap:.25rem;margin:0 .5rem}.pagination-btn{display:flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 .5rem;border:1px solid #d1d5db;background:var(--card-bg);color:#374151;font-size:.875rem;font-weight:500;border-radius:4px;cursor:pointer;transition:all .15s ease;-webkit-user-select:none;user-select:none}.pagination-btn:hover:not(:disabled){border-color:#9ca3af;background:#f9fafb}.pagination-btn:active:not(:disabled){background:#f3f4f6;transform:translateY(.5px)}.pagination-btn.active{border-color:#000;background:#000;color:#fff}.pagination-btn:disabled{border-color:#e5e7eb;background:#f9fafb;color:#9ca3af;cursor:not-allowed}@media (max-width: 48rem){.project-manager{padding:var(--spacing-4)}.header{flex-direction:column;gap:var(--spacing-4);align-items:stretch}.header h1{text-align:center;font-size:var(--font-size-3xl)}.search-filter-container{flex-direction:column;gap:var(--spacing-4)}.filter-section{margin-left:0;margin-bottom:0;justify-content:center}.table-container{overflow-x:auto}.projects-table{min-width:37.5rem}.projects-table th,.projects-table td{padding:var(--spacing-3) var(--spacing-2);font-size:var(--font-size-sm)}.actions{flex-direction:column;gap:var(--spacing-1)}.pagination-container{padding:var(--spacing-4)}.pagination-controls{gap:.125rem}.pagination-pages{margin:0 var(--spacing-1);gap:.125rem}.pagination-btn{min-width:1.75rem;height:1.75rem;font-size:.8125rem}}@media (max-width: 30rem){.project-manager{padding:var(--spacing-2)}.header h1{font-size:var(--font-size-2xl)}.projects-table th,.projects-table td{padding:var(--spacing-2) var(--spacing-1);font-size:var(--font-size-xs)}.search-filter-container{padding:var(--spacing-3)}.status-select{min-width:7rem;font-size:var(--font-size-xs)}}@media (min-width: 80rem){.project-manager{padding:var(--spacing-3xl)}.header h1{font-size:var(--font-size-5xl)}}[data-theme=dark] .chart-container,[data-theme=dark] .chart-wrapper,[data-theme=dark] .graph-container{background:transparent;border-color:var(--border-color);box-shadow:none}[data-theme=dark] ::-webkit-scrollbar{background:transparent}[data-theme=dark] ::-webkit-scrollbar-thumb{background:#fff3;border:0}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#ffffff4d}[data-theme=dark] .search-box,[data-theme=dark] .search-input,[data-theme=dark] .filter-dropdown .dropdown-button{background:#0f1419cc;border-color:#00d4ff33;color:var(--text-primary)}.tasks-page{padding:2rem;background:var(--bg-primary);min-height:100vh}.tasks-header{margin-bottom:2rem}.tasks-header h1{font-size:2.25rem;font-weight:700;margin-bottom:.5rem;color:var(--text-primary)}.search-container{margin-bottom:1.5rem}.search-input{width:100%;max-width:600px;padding:1rem 1.25rem;border:2px solid var(--border-color);border-radius:12px;font-size:1rem;background:#fff;color:var(--text-primary);transition:all .3s ease;box-shadow:var(--shadow-sm)}.search-input:focus{outline:none;border-color:var(--primary-color);box-shadow:var(--shadow-md),0 0 0 3px #0000001a;transform:translateY(-1px)}.filter-controls{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2rem;background:#fff;padding:2rem;border-radius:12px;border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.filter-group{display:flex;flex-direction:column;gap:1rem}.filter-group h3{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.filter-buttons{display:flex;flex-wrap:wrap;gap:.75rem}.filter-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border-radius:8px;font-size:.875rem;font-weight:500;border:1px solid var(--border-color);background:#fff;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-sm)}.filter-btn:hover{border-color:var(--primary-color);box-shadow:var(--shadow-md)}.tasks-table-container{border-radius:12px;overflow:hidden;border:1px solid var(--border-color);background:#fff;box-shadow:var(--shadow-md)}.tasks-table{width:100%;border-collapse:collapse;table-layout:fixed}.tasks-table th,.tasks-table td{padding:1.25rem 1.5rem;text-align:left;border-bottom:1px solid var(--border-color);vertical-align:top}.tasks-table th:nth-child(1),.tasks-table td:nth-child(1){width:30%}.tasks-table th:nth-child(2),.tasks-table td:nth-child(2){width:25%}.tasks-table th:nth-child(3),.tasks-table td:nth-child(3){width:15%}.tasks-table th:nth-child(4),.tasks-table td:nth-child(4){width:15%}.tasks-table th:nth-child(5),.tasks-table td:nth-child(5){width:15%}.tasks-table th{background:var(--bg-secondary);font-weight:600;font-size:.875rem;color:var(--text-primary);text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--border-color)}.tasks-table tbody tr{transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer;position:relative}.tasks-table tbody tr:hover{background:var(--bg-tertiary)}.clickable-row{position:relative}.clickable-row:hover{background:var(--bg-tertiary)!important;transform:none;box-shadow:none}.clickable-row:active{background:var(--border-color);transform:none;transition:background .1s ease}.active-task-row{background:var(--bg-tertiary)}.project-info{display:flex;flex-direction:column;gap:.25rem}.project-number{font-weight:700;color:var(--primary-color);font-size:.9rem}.project-name{font-size:.875rem;color:var(--text-secondary);font-weight:500}.assignee{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:50px;font-size:.875rem;font-weight:600;box-shadow:var(--shadow-sm);border:2px solid transparent;transition:all .3s ease}.assignee.menneske{background:linear-gradient(135deg,#f7fafc,#edf2f7);color:var(--text-primary);border-color:var(--border-color)}.assignee.ai{background:linear-gradient(135deg,#ebf4ff,#dbeafe);color:var(--info-color);border-color:#3182ce33}.status-label{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:50px;font-size:.875rem;font-weight:600;box-shadow:var(--shadow-sm);border:2px solid transparent;position:relative;overflow:hidden}.status-label:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;opacity:.1;border-radius:inherit}.status-label.completed{background:linear-gradient(135deg,var(--success-bg) 0%,#f0fff4 100%);color:var(--success-color);border-color:#38a16933}.status-label.completed:before{background:var(--success-color)}.status-label.overdue{background:linear-gradient(135deg,var(--danger-bg) 0%,#fed7d7 100%);color:var(--danger-color);border-color:#e53e3e33;animation:pulse-danger 2s infinite}.status-label.overdue:before{background:var(--danger-color)}@keyframes pulse-danger{0%,to{box-shadow:var(--shadow-sm),0 0 #e53e3e66}50%{box-shadow:var(--shadow-sm),0 0 0 8px #e53e3e00}}.status-label.today{background:linear-gradient(135deg,var(--warning-bg) 0%,#fffbeb 100%);color:var(--warning-color);border-color:#ed893633}.status-label.today:before{background:var(--warning-color)}.status-label.planned{background:linear-gradient(135deg,var(--info-bg) 0%,#ebf8ff 100%);color:var(--info-color);border-color:#3182ce33}.status-label.planned:before{background:var(--info-color)}.no-tasks{padding:4rem 2rem;text-align:center;background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-tertiary) 100%);border-radius:20px;border:2px dashed var(--border-color);position:relative;overflow:hidden}.no-tasks:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-primary)}.no-tasks p{color:var(--text-secondary);font-size:1.125rem;font-weight:500}@media (max-width: 1024px){.filter-controls{grid-template-columns:1fr;gap:1.5rem}}@media (max-width: 768px){.tasks-page{padding:1rem}.filter-controls{padding:1.5rem;gap:1rem}.tasks-table-container{overflow-x:auto}.tasks-table{min-width:600px;font-size:.875rem;table-layout:auto}.tasks-table th,.tasks-table td{padding:1rem .75rem}.tasks-table th:nth-child(1),.tasks-table td:nth-child(1),.tasks-table th:nth-child(2),.tasks-table td:nth-child(2),.tasks-table th:nth-child(3),.tasks-table td:nth-child(3),.tasks-table th:nth-child(4),.tasks-table td:nth-child(4),.tasks-table th:nth-child(5),.tasks-table td:nth-child(5){width:auto}.filter-buttons{gap:.5rem}.filter-btn{padding:.625rem 1rem;font-size:.8rem}.tasks-header h1{font-size:1.875rem}}.contractor-card.clickable{cursor:pointer;transition:all .2s ease;min-height:200px;max-height:250px}.contractor-card.clickable:hover{transform:translateY(-2px);box-shadow:0 8px 25px #00000026;border-color:var(--primary-color)}.contractor-info{overflow:hidden}.contractor-services{margin-bottom:.75rem}.contractor-services strong{display:none}.contractor-contact .contact-item{font-size:.85rem;margin-bottom:.25rem}.load-analytics-section{display:flex;justify-content:flex-end;margin:1rem 0}.load-analytics-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:var(--primary-color);color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.load-analytics-btn.inline{padding:.5rem 1rem;font-size:.85rem;margin-left:1rem}.load-analytics-btn:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.load-analytics-btn:disabled{opacity:.6;cursor:not-allowed}.load-analytics-btn .spinner{animation:spin 1s linear infinite}.chart-container{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem;margin:2rem 0;box-shadow:0 1px 3px #0000001a}.chart-container{background:#fff;border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;margin:2rem 0;box-shadow:var(--shadow-sm)}.chart-container>div{min-height:400px!important;height:400px!important}.bidding-round-chart,.recharts-wrapper,.recharts-responsive-container{min-height:400px!important;height:400px!important}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;border-radius:12px;width:95vw;max-width:1400px;max-height:90vh;overflow-y:auto;overflow-x:hidden;box-shadow:0 20px 60px #0000004d}.modal-header h3{margin:0;color:var(--text-primary)}.modal-close-btn{background:none;border:none;padding:.5rem;cursor:pointer;border-radius:6px;transition:background .2s ease}.modal-close-btn:hover{background:var(--bg-secondary)}.contractor-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-bottom:1.5rem;width:100%;overflow:hidden}@media (max-width: 1200px){.contractor-detail-grid{grid-template-columns:1fr 1fr}}@media (max-width: 768px){.contractor-detail-grid{grid-template-columns:1fr}}.detail-item{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1rem;word-wrap:break-word;overflow:hidden}.detail-item strong{color:var(--text-secondary);font-size:.9rem;min-width:120px;flex-shrink:0}.detail-item span,.detail-item p{word-wrap:break-word;overflow-wrap:break-word;max-width:100%}.status-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:500;color:#fff}.contact-history{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.modal-actions{display:flex;gap:.75rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.modal-action-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border:none;border-radius:6px;font-size:.9rem;cursor:pointer;transition:all .2s ease}.modal-action-btn.primary{background:var(--primary-color);color:#fff}.modal-action-btn.secondary{background:var(--bg-secondary);color:var(--text-primary)}.modal-action-btn.danger{background:#ef4444;color:#fff}.modal-action-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.contact-note-section{margin-top:1rem}.contact-note-section textarea{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:6px;resize:vertical;min-height:80px;font-family:inherit}.contractor-stats-section{margin:.5rem 0 1rem}.database-info{text-align:right;margin:0}.info-text{font-size:.75rem;color:#9ca3af;background:transparent;padding:.25rem 0;border:none;display:inline-block;font-weight:400}.stats-info-bar{display:flex;justify-content:flex-end;align-items:center}.stats-cards-compact{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.stat-card-compact{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1rem;text-align:center;min-width:120px;box-shadow:0 1px 3px #0000001a}.stat-card-compact .stat-content .stat-value{display:block;font-size:1.5rem;font-weight:700;color:#1f2937;margin-bottom:.25rem}.stat-card-compact .stat-content .stat-label{display:block;font-size:.875rem;color:#6b7280}.stats-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a}.card-header{padding:1.5rem 1.5rem 1rem}.card-title{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0}.card-subtitle{font-size:.875rem;color:#6b7280;margin:.25rem 0 0}.chart-content{height:400px;position:relative}.chart-content>div,.chart-container>div{height:100%!important;min-height:100%!important}.recharts-responsive-container{height:100%!important;min-height:100%!important}.modal-action-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.modal-action-btn.primary:hover:not(:disabled){background:#2563eb!important;color:#fff!important}.modal-action-btn.secondary:hover:not(:disabled){background:#f3f4f6!important;color:var(--text-primary)!important}.modal-action-btn.danger:hover:not(:disabled){background:#dc2626!important;color:#fff!important}.modern-bidding-chart{background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;margin-bottom:2rem}.live-data-section{padding:1.5rem;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e2e8f0}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.section-title{font-size:1rem;font-weight:600;color:#111827;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.live-indicator{font-size:.75rem;color:#22c55e;font-weight:600;background:#22c55e1a;padding:.25rem .5rem;border-radius:4px;border:1px solid rgba(34,197,94,.2)}.live-metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}@media (max-width: 768px){.live-metrics-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.live-metrics-grid{grid-template-columns:1fr}}.live-metric{display:flex;flex-direction:column;align-items:center;text-align:center;padding:1rem;background:#fff;border-radius:6px;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000d}.live-metric-value{font-size:1.5rem;font-weight:600;color:#111827;line-height:1;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.live-metric-label{font-size:.75rem;color:#6b7280;margin-top:.5rem;font-weight:400}.historical-data-section{padding:1.5rem;background:#fff}.period-label{font-size:.75rem;color:#6b7280;background:#f3f4f6;padding:.25rem .5rem;border-radius:4px;border:1px solid #e5e7eb}.trend-summary{margin-bottom:1rem;display:flex;justify-content:center}.trend-metric{display:flex;flex-direction:column;align-items:center;text-align:center;padding:.75rem 1rem;background:#f9fafb;border-radius:6px;border:1px solid #e2e8f0}.trend-indicator{font-size:1rem;font-weight:500;margin-bottom:.25rem;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.trend-indicator.positive{color:#059669}.trend-indicator.negative{color:#dc2626}.trend-label{font-size:.75rem;color:#9ca3af;font-weight:400}.chart-visualization{height:300px;background:#fff}.insight-value{font-size:1.125rem;font-weight:600;color:#111827;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.modern-chart-loading{height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#6b7280;background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:2rem}.loading-animation{width:24px;height:24px;border:2px solid #f3f4f6;border-top:2px solid #6b7280;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:.75rem}.notepad-wrapper{background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.notepad-textarea{width:100%;border:none;padding:1rem;font-family:Menlo,Monaco,Courier New,monospace;font-size:.875rem;line-height:1.6;resize:vertical;background:#fafbfc;color:#1e293b;outline:none}.notepad-textarea:focus{background:#fff;box-shadow:inset 0 0 0 1px #3b82f6}.notepad-textarea::placeholder{color:#94a3b8;font-style:italic}.notepad-actions{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#f8fafc;border-top:1px solid #e2e8f0}.save-notes-btn{font-size:.875rem;padding:.5rem 1rem;border-radius:6px;border:1px solid #d1d5db;background:#fff;color:#374151;cursor:pointer;transition:all .2s}.save-notes-btn:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.save-notes-btn:disabled{opacity:.6;cursor:not-allowed}.action-buttons-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;margin-top:1rem}.action-buttons-grid .btn{width:100%;justify-content:center;align-items:center}.load-analytics-btn:hover:not(:disabled){background:#2563eb!important;color:#fff!important;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}[data-theme=dark] .tasks-page{background:var(--bg-primary)}[data-theme=dark] .tasks-header h1{color:var(--text-primary);text-shadow:0 0 30px rgba(0,212,255,.4)}[data-theme=dark] .search-input{background:#0f1419cc;border:2px solid rgba(0,212,255,.2);color:var(--text-primary);box-shadow:0 0 20px #00d4ff1a}[data-theme=dark] .search-input:focus{border-color:var(--accent-color);box-shadow:0 0 30px #00d4ff4d}[data-theme=dark] .filter-group label{color:var(--text-primary)}[data-theme=dark] .filter-group select{background:#0f1419cc;border:1px solid rgba(0,212,255,.2);color:var(--text-primary)}[data-theme=dark] .filter-group select:focus{border-color:var(--accent-color);box-shadow:0 0 20px #00d4ff4d}[data-theme=dark] .tasks-sections{background:transparent}[data-theme=dark] .task-section{background:var(--card-bg);border:1px solid rgba(0,212,255,.15);box-shadow:0 0 30px #00d4ff1a,0 4px 15px #0000004d}[data-theme=dark] .section-header{background:linear-gradient(135deg,#00d4ff14,#7c3aed14);border-bottom:2px solid rgba(0,212,255,.2)}[data-theme=dark] .section-header h2{color:var(--text-primary)}[data-theme=dark] .section-count{background:var(--gradient-primary);color:#fff;box-shadow:0 0 15px #00d4ff80}[data-theme=dark] .task-card{background:#00d4ff0d;border:1px solid rgba(0,212,255,.15);box-shadow:0 2px 10px #0003}[data-theme=dark] .task-card:hover{background:#00d4ff14;border-color:#00d4ff4d;box-shadow:0 0 25px #00d4ff40,0 4px 15px #0000004d}[data-theme=dark] .task-content h3{color:var(--text-primary)}[data-theme=dark] .task-meta{color:var(--text-muted)}[data-theme=dark] .task-status{background:var(--gradient-primary);box-shadow:0 0 10px #00d4ff66}[data-theme=dark] .task-status.completed{background:#0f83;color:var(--success-color);border:1px solid rgba(0,255,136,.3)}[data-theme=dark] .task-status.pending{background:#ffb83633;color:var(--warning-color);border:1px solid rgba(255,184,54,.3)}[data-theme=dark] .task-actions button{background:#00d4ff1a;border:1px solid rgba(0,212,255,.2);color:var(--text-primary)}[data-theme=dark] .task-actions button:hover{background:#00d4ff33;box-shadow:0 0 20px #00d4ff4d;color:var(--accent-color)}[data-theme=dark] .load-analytics-btn{background:var(--gradient-primary)!important;color:#fff!important;box-shadow:0 0 30px #00d4ff66}[data-theme=dark] .load-analytics-btn:hover:not(:disabled){background:var(--gradient-primary)!important;box-shadow:0 0 40px #00d4ff99!important}[data-theme=dark] .empty-section{color:var(--text-muted)}[data-theme=dark] .task-list-item{background:#00d4ff0d;border:1px solid rgba(0,212,255,.1)}[data-theme=dark] .task-list-item:hover{background:#00d4ff1a;border-color:#00d4ff33;box-shadow:0 0 20px #00d4ff33}:root{--max-width-page: 87.5rem;--max-width-search: 37.5rem;--border-width-thick: .125rem;--border-width-thin: .0625rem}.customers-page{max-width:var(--max-width-page);margin:0 auto;padding:var(--spacing-2xl);min-height:100vh;background-color:var(--bg-primary)}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-2xl);padding-bottom:var(--spacing-xl);border-bottom:var(--border-width-thick) solid var(--border-color)}.header h1{font-size:var(--font-size-4xl);font-weight:700;margin:0;color:var(--text-primary);letter-spacing:-.025em}.header button{display:flex;align-items:center;gap:var(--spacing-xs);font-weight:600;min-height:2.75rem}.search-filters-container{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);align-items:center}.search-container{flex:1;margin-bottom:0}.filter-toggle-btn{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-md) var(--spacing-lg);background:var(--card-bg);border:var(--border-width-thick) solid var(--border-color);border-radius:.75rem;color:var(--text-primary);cursor:pointer;transition:all .3s ease;font-weight:500;white-space:nowrap}.filter-toggle-btn:hover{background:var(--bg-secondary);border-color:var(--primary-color)}.filter-toggle-btn.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.filters-panel{display:flex;gap:var(--spacing-lg);padding:var(--spacing-lg);background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg);flex-wrap:wrap;align-items:flex-end}.filter-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.filter-group label{font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary)}.filter-inputs{display:flex;align-items:center;gap:var(--spacing-sm)}.filter-input{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--font-size-sm);width:120px}.clear-filters-btn{padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;font-size:var(--font-size-sm);transition:all .2s ease}.clear-filters-btn:hover{background:var(--border-color)}.search-input-wrapper{position:relative;max-width:var(--max-width-search)}.search-icon{position:absolute;left:var(--spacing-md);top:50%;transform:translateY(-50%);color:var(--text-muted)}.search-input{width:100%;padding:var(--spacing-md) var(--spacing-lg) var(--spacing-md) var(--spacing-3xl);border:var(--border-width-thick) solid var(--border-color);border-radius:.75rem;font-size:var(--font-size-base);background:var(--card-bg);color:var(--text-primary);transition:all .3s ease;box-shadow:var(--shadow-sm);min-height:2.75rem}.error-message{background-color:var(--error-color);color:#fff;padding:var(--spacing-md);border-radius:.375rem;margin-bottom:var(--spacing-md);display:flex;justify-content:space-between;align-items:center}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;gap:var(--spacing-md)}.table-container{background-color:var(--card-bg);border-radius:.75rem;overflow:hidden;border:var(--border-width-thick) solid var(--border-color);box-shadow:0 .25rem .375rem #0000000d}.customers-table{width:100%;border-collapse:collapse;background:var(--card-bg);border-radius:.75rem;overflow:hidden;box-shadow:var(--shadow-md);border:var(--border-width-thin) solid var(--border-color)}.customers-table th,.customers-table td{padding:var(--spacing-md);text-align:left;border-bottom:var(--border-width-thin) solid var(--border-color)}.customers-table th{background:var(--bg-secondary);font-weight:600;font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.05em;color:var(--text-primary);border-bottom:var(--border-width-thick) solid var(--border-color)}.customers-table tbody tr{transition:background .2s ease}.customers-table tbody tr:hover{background:var(--bg-tertiary)}.customer-name{font-weight:600;color:var(--text-primary)}.customer-name-link{font-weight:600;color:var(--primary-color);text-decoration:none;transition:all .2s ease}.customer-name-link:hover{text-decoration:underline;color:var(--primary-hover)}.stats-button{background:transparent;border:none;color:var(--primary-color);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-sm);transition:all .2s ease;display:flex;align-items:center;justify-content:center}.stats-button:hover{background:var(--bg-secondary);transform:scale(1.1)}.stats-modal{max-width:600px}.stats-grid-modal{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.stat-item-modal{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--spacing-lg);background:var(--bg-secondary);border-radius:var(--radius-md);gap:var(--spacing-sm)}.stat-icon-modal{display:flex;align-items:center;justify-content:center;width:3rem;height:3rem;background:var(--primary-color);border-radius:var(--radius-md);color:#fff}.stat-content-modal{display:flex;flex-direction:column;gap:var(--spacing-xs)}.stat-label-modal{font-size:var(--font-size-sm);color:var(--text-secondary)}.stat-value-modal{font-size:var(--font-size-xl);font-weight:700;color:var(--text-primary)}.contact-info a{color:var(--text-primary);text-decoration:none}.contact-info a:hover{color:var(--primary-color);text-decoration:underline}.contact-info{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--text-secondary)}.actions{display:flex;gap:var(--spacing-xs)}.empty-state{padding:var(--spacing-3xl);text-align:center;color:var(--text-secondary)}@media (max-width: 768px){.customers-page{padding:1rem}.header{flex-direction:column;gap:1rem}}@media (max-width: 48rem){.customers-page{padding:var(--spacing-md)}.header{flex-direction:column;gap:var(--spacing-md);align-items:stretch}.header h1{text-align:center;font-size:var(--font-size-3xl)}.search-input-wrapper{max-width:100%}.table-container{overflow-x:auto}.customers-table{min-width:37.5rem}.customers-table th,.customers-table td{padding:var(--spacing-sm) var(--spacing-xs)}.actions{flex-direction:column;gap:var(--spacing-xs)}.modal{width:95%}}@media (max-width: 30rem){.customers-page{padding:var(--spacing-xs)}.header h1{font-size:var(--font-size-2xl)}.customers-table th,.customers-table td{padding:var(--spacing-xs) var(--spacing-xs);font-size:var(--font-size-sm)}.contact-info{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}}@media (min-width: 80rem){.customers-page{padding:var(--spacing-3xl)}.header h1{font-size:var(--font-size-5xl)}}.data-table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.data-table th,.data-table td{padding:1rem;text-align:left;border-bottom:1px solid var(--border-color)}.data-table th{background:var(--bg-secondary);font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-primary);border-bottom:2px solid var(--border-color)}.data-table tbody tr{transition:background .2s ease;cursor:pointer}.data-table tbody tr:hover{background:var(--bg-tertiary)}.search-filter-container{display:flex;align-items:center;gap:2rem;margin-bottom:2rem;padding:1rem;background:#fff;border-radius:12px;border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.search-section{flex:1;max-width:500px}.filter-section{display:flex;align-items:center;gap:.75rem;flex-shrink:0;transform:translateY(-1px)}.filter-label{font-size:.875rem;font-weight:500;color:var(--text-primary);white-space:nowrap}.filter-select{padding:.5rem .75rem;border:1px solid var(--border-color);border-radius:6px;font-size:.875rem;background:#fff;color:var(--text-primary);cursor:pointer;transition:all .2s ease;min-width:120px}.filter-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #0000001a}.search-input{width:100%;padding:.65rem .75rem;border:1px solid var(--border-color);border-radius:6px;font-size:.95rem;background:#fff;color:var(--text-primary);transition:all .3s ease}.search-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #0000001a}.pagination-container{display:flex;flex-direction:column;align-items:center;gap:1rem;margin-top:1.5rem;padding:1.25rem;background:#fff;border-radius:8px;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000000d}.pagination-info{font-size:.875rem;color:#6b7280;font-weight:500;letter-spacing:.01em}.pagination-controls{display:flex;align-items:center;gap:.5rem}.pagination-pages{display:flex;align-items:center;gap:.375rem;margin:0 .5rem}.pagination-btn{display:inline-flex;align-items:center;justify-content:center;min-width:2.25rem;height:2.25rem;padding:0 .75rem;border:1px solid #d1d5db;background:#fff;color:#1f2937;font-size:.875rem;font-weight:600;border-radius:6px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none;white-space:nowrap;gap:.375rem}.pagination-btn:hover:not(:disabled){border-color:#9ca3af;background:#f9fafb;color:#111827;transform:translateY(-1px);box-shadow:0 2px 4px #00000014}.pagination-btn:active:not(:disabled){background:#f3f4f6;color:#111827;transform:translateY(0);box-shadow:0 1px 2px #0000000d}.pagination-btn.active{border-color:#000;background:#000;color:#fff;font-weight:700;box-shadow:0 2px 6px #00000026}.pagination-btn:disabled{border-color:#e5e7eb;background:#f9fafb;color:#9ca3af;cursor:not-allowed;opacity:.6}@media (max-width: 768px){.pagination-container{padding:.75rem}.pagination-controls{gap:.1rem}.pagination-pages{margin:0 .25rem;gap:.1rem}.pagination-btn{min-width:28px;height:28px;font-size:.75rem}}[data-theme=dark] .data-table{background:var(--card-bg);border-color:var(--border-color);box-shadow:none}[data-theme=dark] .data-table th{background:var(--bg-tertiary);color:var(--text-primary);border-bottom:1px solid var(--border-color)}[data-theme=dark] .data-table td{color:var(--text-secondary);border-bottom:1px solid var(--border-color)}[data-theme=dark] .data-table tbody tr:hover{background:var(--hover-color)}[data-theme=dark] .search-filter-container{background:var(--card-bg);border-color:var(--border-color);box-shadow:none}[data-theme=dark] .filter-select,[data-theme=dark] .search-input{background:var(--bg-secondary);color:var(--text-primary);border-color:var(--border-color)}[data-theme=dark] .filter-select:focus,[data-theme=dark] .search-input:focus{border-color:var(--primary-color);box-shadow:var(--shadow-sm)}[data-theme=dark] .pagination-container{background:var(--card-bg);border-color:var(--border-color);box-shadow:none}[data-theme=dark] .pagination-info{color:var(--text-muted)}[data-theme=dark] .pagination-btn{background:var(--bg-tertiary);border-color:var(--border-color);color:var(--text-primary);box-shadow:none}[data-theme=dark] .pagination-btn:hover:not(:disabled){border-color:var(--primary-color);background:var(--hover-color);color:var(--text-primary);box-shadow:none}[data-theme=dark] .pagination-btn.active{border-color:var(--primary-color);background:var(--primary-color);color:#fff;box-shadow:none}[data-theme=dark] .pagination-btn:disabled{border-color:var(--border-color);background:var(--bg-secondary);color:var(--text-muted)}.customer-detail-page{max-width:87.5rem;margin:0 auto;padding:1.5rem 2rem;min-height:100vh;background-color:var(--bg-primary)}.customer-detail-header{margin-bottom:2rem;padding:1.5rem;background:#fff;border-radius:12px;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000000d}.customer-name{font-size:1.75rem;font-weight:700;margin:0;color:#111827;letter-spacing:-.02em;line-height:1.2}.info-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-2xl)}.info-card{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all .2s ease}.info-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.info-card-icon{display:flex;align-items:center;justify-content:center;width:3rem;height:3rem;background:var(--bg-secondary);border-radius:var(--radius-md);color:var(--primary-color)}.status-breakdown-section{margin-bottom:var(--spacing-2xl)}.status-breakdown-section h2{font-size:var(--font-size-2xl);font-weight:600;margin-bottom:var(--spacing-lg);color:var(--text-primary)}.status-breakdown{display:flex;flex-wrap:wrap;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.status-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md)}.status-indicator{width:.75rem;height:.75rem;border-radius:50%}.status-label{font-size:var(--font-size-sm);color:var(--text-primary)}.status-count{font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary);margin-left:var(--spacing-xs)}.projects-section{margin-bottom:var(--spacing-2xl)}.projects-section h2{font-size:var(--font-size-2xl);font-weight:600;margin-bottom:var(--spacing-lg);color:var(--text-primary)}.projects-table-container{overflow-x:auto;background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.projects-table thead{background:var(--bg-secondary)}.projects-table th{padding:var(--spacing-md);text-align:left;font-weight:600;font-size:var(--font-size-sm);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--border-color)}.projects-table td{padding:var(--spacing-md);border-bottom:1px solid var(--border-color);color:var(--text-primary)}.projects-table tbody tr:hover{background:var(--bg-secondary)}.clickable-row:hover{background:var(--bg-secondary)}.revenue-cell{font-weight:600;color:var(--text-primary)}.empty-state p{font-size:var(--font-size-lg);margin-bottom:var(--spacing-lg)}.contractors-page{max-width:87.5rem;margin:0 auto;padding:2rem;min-height:100vh;background-color:var(--bg-primary)}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:.125rem solid var(--border-color)}.header h1{font-size:2.5rem;font-weight:700;margin:0;color:var(--text-primary);letter-spacing:-.025em}.header button{display:flex;align-items:center;gap:.5rem;font-weight:600}.search-container{margin-bottom:2rem}.search-input-wrapper{position:relative;max-width:37.5rem}.search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--text-muted)}.search-input{width:100%;padding:1rem 1.25rem 1rem 3rem;border:.125rem solid var(--border-color);border-radius:.75rem;font-size:1rem;background:var(--card-bg);color:var(--text-primary);transition:all .3s ease;box-shadow:var(--shadow-sm)}.search-input:focus{outline:none;border-color:var(--primary-color);box-shadow:var(--shadow-md),0 0 0 .1875rem #0000001a;transform:translateY(-.0625rem)}.search-input::placeholder{color:var(--text-muted)}.error-message{background-color:var(--error-color);color:#fff;padding:1rem;border-radius:.375rem;margin-bottom:1rem;display:flex;justify-content:space-between;align-items:center}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;gap:1rem}.table-container{background-color:var(--card-bg);border-radius:.75rem;overflow:hidden;border:.125rem solid var(--border-color);box-shadow:0 .25rem .375rem #0000000d}.contractors-table{width:100%;border-collapse:collapse;background:var(--card-bg);border-radius:.75rem;overflow:hidden;box-shadow:var(--shadow-md);border:.0625rem solid var(--border-color)}.contractors-table th,.contractors-table td{padding:1.25rem;text-align:left;border-bottom:.0625rem solid var(--border-color)}.contractors-table th{background:var(--bg-secondary);font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-primary);border-bottom:.125rem solid var(--border-color)}.contractors-table tbody tr{transition:background .2s ease}.contractors-table tbody tr:hover{background:var(--bg-tertiary)}.contractor-name,.contractor-name-link{font-weight:600;color:var(--text-primary)}.clickable-row{cursor:pointer;transition:background .2s ease}.clickable-row:hover{background:var(--bg-secondary)!important}.contact-info{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary)}.contact-info svg{color:var(--text-muted)}.empty-state{padding:3rem;text-align:center;color:var(--text-secondary)}.empty-state p{font-size:1.125rem}.modal{background:var(--card-bg);border-radius:12px;box-shadow:var(--shadow-lg);max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border-color)}.modal-header h2{margin:0;font-size:1.5rem;font-weight:600;color:var(--text-primary)}.modal-content{padding:1.5rem}.modal-actions{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid var(--border-color)}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--text-primary)}.input{width:100%;padding:.75rem;border:2px solid var(--border-color);border-radius:8px;font-size:1rem;transition:all .2s ease;background-color:var(--bg-primary)}.input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #0000001a}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-decoration:none}.btn-primary:hover{background:var(--primary-hover)}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--bg-tertiary)}.btn-success{background:var(--success-color, #10b981);color:#fff}.btn-success:hover{background:var(--success-hover, #059669)}.btn-danger{background:var(--error-color);color:#fff}.btn-danger:hover{background:var(--error-hover, #dc2626)}.btn-ghost{background:transparent;color:var(--text-secondary);padding:.5rem}.btn-ghost:hover{background:var(--bg-tertiary)}.btn-sm{padding:.5rem .75rem;font-size:.75rem}.contractors-table .status-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.contractors-table .status-badge.status-frozen{background-color:#fecaca;color:#dc2626;border:1px solid #fecaca}.contractors-table .status-badge.status-active{background-color:#d1fae5;color:#059669;border:1px solid #a7f3d0}.contractors-table .checkbox-wrapper{display:flex;align-items:center;gap:.5rem}.contractors-table .checkbox{width:1rem;height:1rem;accent-color:var(--primary-color)}.contractors-table .checkbox-wrapper label{margin:0;font-size:.875rem;cursor:pointer;font-weight:400}@media (max-width: 768px){.contractors-page{padding:1rem}.header{flex-direction:column;gap:1rem;align-items:stretch}.header h1{text-align:center}.table-container{overflow-x:auto}.contractors-table{min-width:600px}.contractors-table th,.contractors-table td{padding:.75rem .5rem}.actions{flex-direction:column;gap:.25rem}.modal{width:95%}}@media (max-width: 480px){.contractors-page{padding:.5rem}.contractors-table th,.contractors-table td{padding:.5rem .25rem;font-size:.875rem}}.contractor-detail-page{max-width:87.5rem;margin:0 auto;padding:1.5rem 2rem;min-height:100vh;background-color:var(--bg-primary)}.back-button-top{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;margin-bottom:1rem;background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#374151;cursor:pointer;transition:all .2s ease;font-size:.875rem;font-weight:500;box-shadow:0 1px 2px #0000000d}.back-button-top:hover{background:#f9fafb;border-color:#d1d5db;transform:translate(-2px)}.contractor-detail-header{margin-bottom:2rem;padding:1.5rem;background:#fff;border-radius:12px;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000000d}.header-content-modern{flex:1;min-width:0}.header-main{display:flex;flex-direction:column;gap:1rem}.contractor-name-section{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.contractor-name{font-size:1.75rem;font-weight:700;margin:0;color:#111827;letter-spacing:-.02em;line-height:1.2}.contractor-badges{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.contact-info-modern{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.contact-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#f9fafb;border-radius:8px;color:#374151;text-decoration:none;font-size:.875rem;transition:all .2s ease;border:1px solid transparent}.contact-item:hover{background:#f3f4f6;border-color:#e5e7eb;color:#111827}.contact-item svg{color:#6b7280;flex-shrink:0}.contact-item:hover svg{color:#374151}.frozen-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);background:#f44336;color:#fff;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:600;margin-left:var(--spacing-sm)}.rating-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);background:#ff9800;color:#fff;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:600;margin-left:var(--spacing-sm)}.info-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-bottom:2rem}.info-card{display:flex;align-items:center;gap:var(--spacing-md);padding:1rem;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px #0000000d;transition:all .2s ease}.info-card:hover{box-shadow:0 1px 3px #0000001a;border-color:#d1d5db}.info-card-icon{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background:#f3f4f6;border-radius:8px;color:#6b7280}.info-card-content{flex:1}.info-card-label{font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--spacing-xs)}.info-card-value{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary)}.info-card-value a{color:var(--primary-color);text-decoration:none}.info-card-value a:hover{text-decoration:underline}.key-metrics-section{margin-bottom:2rem}.section-title{font-size:var(--font-size-xl);font-weight:600;margin-bottom:1rem;color:#111827;letter-spacing:-.01em}.key-metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;margin-bottom:2rem}.key-metric-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:.75rem;display:flex;align-items:center;gap:.75rem;min-height:3.5rem;transition:all .2s ease;box-shadow:0 1px 2px #0000000d}.key-metric-card:hover{box-shadow:0 1px 3px #0000001a;border-color:#d1d5db}.key-metric-card.primary,.key-metric-card.success,.key-metric-card.danger,.key-metric-card.warning,.key-metric-card.info,.key-metric-card.secondary,.key-metric-card.accent,.key-metric-card.activity{border-color:#e5e7eb;background:#fff}.key-metric-icon{width:2rem;height:2rem;border-radius:6px;display:flex;align-items:center;justify-content:center;background:#f3f4f6;color:#6b7280;flex-shrink:0}.key-metric-card.primary .key-metric-icon,.key-metric-card.success .key-metric-icon,.key-metric-card.danger .key-metric-icon,.key-metric-card.warning .key-metric-icon,.key-metric-card.info .key-metric-icon,.key-metric-card.secondary .key-metric-icon,.key-metric-card.accent .key-metric-icon,.key-metric-card.activity .key-metric-icon{background:#f3f4f6;color:#6b7280}.key-metric-content{flex:1;display:flex;flex-direction:column;text-align:left}.key-metric-label{font-size:.75rem;font-weight:500;color:#6b7280;margin-bottom:.125rem;text-transform:none;letter-spacing:0}.key-metric-value{font-size:1rem;font-weight:600;color:#111827;margin-bottom:0;line-height:1.2;letter-spacing:-.01em}.key-metric-description{font-size:.7rem;color:#9ca3af;font-weight:400;margin-top:.125rem}.activity-section{margin-bottom:2rem;background:#fff;padding:1.25rem;border-radius:8px;box-shadow:0 1px 2px #0000000d;border:1px solid #e5e7eb}.activity-section h2{font-size:var(--font-size-lg);font-weight:600;margin-bottom:1rem;color:#111827}.activity-timeline{display:flex;gap:1rem;padding:1rem;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.activity-item{display:flex;flex-direction:column;gap:var(--spacing-xs);flex:1}.activity-period{font-size:var(--font-size-sm);color:var(--text-secondary)}.activity-count{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary)}.lost-bid-analysis-section{margin-bottom:2rem;background:#fff;padding:1.25rem;border-radius:8px;box-shadow:0 1px 2px #0000000d;border:1px solid #e5e7eb}.lost-bid-analysis-section h2{font-size:var(--font-size-lg);font-weight:600;margin-bottom:.75rem;color:#111827}.section-description{font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--spacing-lg)}.lost-bids-table-container{overflow-x:auto;background:#fff;border:1px solid #e5e7eb;border-radius:8px}.lost-bids-table{width:100%;border-collapse:collapse}.lost-bids-table thead{background:#f9fafb}.lost-bids-table th{padding:.75rem 1rem;text-align:left;font-weight:600;font-size:.75rem;color:#6b7280;text-transform:uppercase;letter-spacing:.025em;border-bottom:1px solid #e5e7eb}.lost-bids-table td{padding:.75rem 1rem;border-bottom:1px solid #f3f4f6;color:#111827;font-size:.875rem}.lost-bids-table tbody tr:hover{background:#f9fafb}.amount-cell{font-weight:600}.difference-cell.negative,.percentage-cell.negative{color:#f44336;font-weight:600}.contractor-cell{font-weight:500;color:var(--text-primary)}.projects-section{margin-bottom:2rem;background:#fff;padding:1.25rem;border-radius:8px;box-shadow:0 1px 2px #0000000d;border:1px solid #e5e7eb}.projects-section h2{font-size:var(--font-size-lg);font-weight:600;margin-bottom:1rem;color:#111827}.projects-table-container{overflow-x:auto;background:#fff;border:1px solid #e5e7eb;border-radius:8px}.projects-table th{padding:.75rem 1rem;text-align:left;font-weight:600;font-size:.75rem;color:#6b7280;text-transform:uppercase;letter-spacing:.025em;border-bottom:1px solid #e5e7eb}.projects-table td{padding:.75rem 1rem;border-bottom:1px solid #f3f4f6;color:#111827;font-size:.875rem}.projects-table tbody tr.clickable-row{cursor:pointer;transition:background-color .2s ease}.projects-table tbody tr.clickable-row:hover{background:#f9fafb}.project-link{color:var(--primary-color);text-decoration:none;font-weight:600}.project-link:hover{text-decoration:underline}.address-cell{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--text-secondary)}.status-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);color:#fff;font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase}.view-project-link{color:var(--primary-color);text-decoration:none;font-weight:500}.view-project-link:hover{text-decoration:underline}.watch-subscription-section{margin-bottom:var(--spacing-3xl);background:var(--card-bg);padding:var(--spacing-2xl);border-radius:var(--radius-xl);box-shadow:0 4px 20px #00000014;border:1px solid var(--border-color)}.watch-subscription-section h2{font-size:var(--font-size-2xl);font-weight:700;margin-bottom:var(--spacing-xl);color:var(--text-primary)}.placeholder-box{padding:var(--spacing-3xl);background:var(--bg-secondary);border:2px dashed var(--border-color);border-radius:var(--radius-lg);text-align:center;color:var(--text-secondary);font-size:var(--font-size-lg)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-4xl);text-align:center;color:var(--text-secondary)}.empty-state svg{margin-bottom:var(--spacing-lg);opacity:.5}.empty-state p{font-size:var(--font-size-lg)}.loading,.error-message{text-align:center;padding:var(--spacing-4xl)}.error-message{color:var(--error-color);margin-bottom:var(--spacing-lg)}@media (max-width: 1200px){.key-metrics-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.contractor-detail-page{padding:var(--spacing-lg)}.key-metrics-grid{grid-template-columns:1fr}.key-metric-value{font-size:var(--font-size-3xl)}.info-cards{grid-template-columns:1fr}.activity-timeline{flex-direction:column}}.profit-margin-section{background:var(--card-bg);border:1px solid #e5e5e5;border-radius:.5rem;padding:1.5rem;margin-bottom:2rem}.profit-margin-section.compact-margin-section{background:transparent;border:none;padding:0;margin:0}.profit-margin-section.compact-margin-section .section-actions button{width:28px;height:28px;padding:0;display:flex;align-items:center;justify-content:center;border:1px solid #e5e7eb;border-radius:.375rem;background:#fff;color:#6b7280;font-size:0}.profit-margin-section.compact-margin-section .section-actions .save-btn{color:#10b981;border-color:#10b981}.profit-margin-section.compact-margin-section .section-actions .save-btn:hover{background:#10b981;color:#fff}.profit-margin-section.compact-margin-section .section-actions .cancel-btn:hover,.profit-margin-section.compact-margin-section .section-actions .edit-btn:hover{background:#f9fafb;border-color:#d1d5db}.profit-margin-section.compact-margin-section .margin-input.compact{padding:.375rem .625rem;font-size:.8125rem;width:100px}.profit-margin-section.compact-margin-section .percentage-input{display:flex;align-items:center;gap:.25rem}.profit-margin-section.compact-margin-section .percentage-symbol{font-size:.8125rem;color:#6b7280}.profit-margin-section .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #f0f0f0}.profit-margin-section.inline-margin-section .section-header{margin-bottom:1.5rem;padding-bottom:0;border-bottom:none}.profit-margin-section .section-header h3{display:flex;align-items:center;gap:.5rem;color:#000;font-size:1.25rem;font-weight:600;margin:0}.profit-margin-section.inline-margin-section .section-header h3{font-size:1.25rem;font-weight:700;color:#111827;letter-spacing:-.01em}.profit-margin-section .section-header .icon{width:1.25rem;height:1.25rem;color:#3b82f6}.profit-margin-section .section-actions{display:flex;gap:.5rem}.profit-margin-section .section-actions button{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;border:none;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease}.profit-margin-section.inline-margin-section .section-actions{gap:.5rem}.profit-margin-section.inline-margin-section .section-actions button{padding:.5rem 1rem;font-size:.8125rem;font-weight:600;border-radius:.5rem}.profit-margin-section .edit-btn{background:#3b82f6;color:#fff}.profit-margin-section .edit-btn:hover{background:#2563eb}.profit-margin-section .save-btn{background:#10b981;color:#fff}.profit-margin-section .save-btn:hover:not(:disabled){background:#059669}.profit-margin-section .save-btn:disabled{opacity:.6;cursor:not-allowed}.profit-margin-section .cancel-btn{background:#6b7280;color:#fff}.profit-margin-section .cancel-btn:hover{background:#4b5563}.profit-margin-section .history-btn{background:#f3f4f6;color:#374151;border:1px solid #d1d5db}.profit-margin-section .history-btn:hover{background:#e5e7eb}.profit-margin-section .error-message{display:flex;align-items:center;gap:.5rem;background:#fef2f2;border:1px solid #fecaca;border-radius:.375rem;padding:.75rem;margin-bottom:1rem;color:#b91c1c;font-size:.875rem}.profit-margin-section .error-message .icon{width:1rem;height:1rem;flex-shrink:0}.profit-margin-section .loading{text-align:center;padding:2rem;color:#6b7280}.profit-margin-section .margin-content{display:flex;flex-direction:column;gap:1rem}.profit-margin-section .current-margin-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;padding:1rem}.profit-margin-section.inline-margin-section .current-margin-card{background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:.625rem;padding:1.25rem}.profit-margin-section .margin-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem;flex-wrap:wrap;gap:.5rem}.profit-margin-section .margin-info{display:flex;align-items:center;gap:.75rem}.profit-margin-section .margin-label{font-size:1rem;font-weight:600;color:#1f2937}.profit-margin-section .default-badge{background:#fbbf24;color:#92400e;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:500}.profit-margin-section .margin-meta{display:flex;align-items:center;gap:.375rem;color:#6b7280;font-size:.875rem}.profit-margin-section .margin-meta .icon{width:.875rem;height:.875rem}.profit-margin-section .margin-display{text-align:center}.profit-margin-section .margin-value{font-size:1.75rem;font-weight:700;color:#3b82f6;margin-bottom:.25rem;text-align:center}.profit-margin-section.inline-margin-section .margin-value{font-size:1.5rem;color:#1a1a1a}.profit-margin-section .margin-description{color:#6b7280;font-size:.8125rem;margin-bottom:.25rem;text-align:center}.profit-margin-section .margin-message{color:#059669;font-size:.875rem;font-style:italic;text-align:center}.profit-margin-section .margin-form{display:flex;flex-direction:column;gap:1rem}.profit-margin-section .form-group{display:flex;flex-direction:column;gap:.5rem}.profit-margin-section .form-group label{font-weight:600;color:#374151;font-size:.8125rem;margin-bottom:.375rem}.profit-margin-section .range-hint{color:#6b7280;font-weight:400;font-size:.75rem}.profit-margin-section .percentage-input{display:flex;align-items:center;background:var(--card-bg);border:1px solid #e2e8f0;border-radius:.5rem;overflow:hidden;max-width:140px;transition:all .2s ease}.profit-margin-section .percentage-input:focus-within{border-color:#1a1a1a;box-shadow:0 0 0 2px #1a1a1a1a}.profit-margin-section .margin-input{flex:1;padding:.5rem .75rem;border:none;outline:none;font-size:.875rem;background:transparent;color:#1f2937;font-weight:500}.profit-margin-section .percentage-symbol{padding:.5rem .75rem;background:#f8fafc;color:#64748b;font-weight:600;font-size:.875rem;border-left:1px solid #e2e8f0}.profit-margin-section .date-input{padding:.5rem .75rem;border:1px solid #e2e8f0;border-radius:.5rem;font-size:.875rem;background:var(--card-bg);color:#1f2937;max-width:140px;transition:all .2s ease}.profit-margin-section .date-input:focus{outline:none;border-color:#1a1a1a;box-shadow:0 0 0 2px #1a1a1a1a}.profit-margin-section .form-note{display:flex;align-items:flex-start;gap:.5rem;background:#fffbeb;border:1px solid #fde68a;border-radius:.375rem;padding:.75rem;color:#92400e;font-size:.875rem}.profit-margin-section .form-note .icon{width:1rem;height:1rem;flex-shrink:0;margin-top:.125rem}.profit-margin-section .margin-history{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;padding:1.5rem}.profit-margin-section .margin-history h4{margin:0 0 1rem;color:#374151;font-size:1.125rem;font-weight:600}.profit-margin-section .history-list{display:flex;flex-direction:column;gap:.75rem}.profit-margin-section .history-item{display:flex;justify-content:space-between;align-items:center;background:var(--card-bg);border:1px solid #e5e7eb;border-radius:.375rem;padding:1rem;transition:all .15s ease}.profit-margin-section .history-item:hover{border-color:#d1d5db;box-shadow:0 1px 3px #0000001a}.profit-margin-section .history-item.inactive{opacity:.6;background:#f9fafb}.profit-margin-section .history-info{display:flex;flex-direction:column;gap:.25rem}.profit-margin-section .history-percentage{font-size:1.25rem;font-weight:600;color:#3b82f6}.profit-margin-section .history-date{display:flex;align-items:center;gap:.375rem;color:#6b7280;font-size:.875rem}.profit-margin-section .history-date .icon{width:.875rem;height:.875rem}.profit-margin-section .history-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem}.profit-margin-section .history-created{color:#9ca3af;font-size:.75rem}.profit-margin-section .inactive-badge{background:#f3f4f6;color:#6b7280;padding:.125rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:500}@media (max-width: 768px){.profit-margin-section .section-header{flex-direction:column;align-items:flex-start;gap:1rem}.profit-margin-section .margin-header{flex-direction:column;align-items:flex-start}.profit-margin-section .history-item{flex-direction:column;align-items:flex-start;gap:.75rem}.profit-margin-section .history-meta{align-items:flex-start}.profit-margin-section .percentage-input,.profit-margin-section .date-input{max-width:100%}}.ringeliste-config-section{background:transparent;border:none;border-radius:0;padding:0;margin-bottom:0}.ringeliste-config-section .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.ringeliste-config-section .section-header h3{display:flex;align-items:center;gap:.5rem;margin:0;font-size:1.125rem;font-weight:600;color:#1f2937}.ringeliste-config-section .section-header .icon{color:var(--primary-color)}.ringeliste-config-section .section-actions{display:flex;gap:.75rem;align-items:center}.ringeliste-config-section .edit-btn,.ringeliste-config-section .save-btn,.ringeliste-config-section .cancel-btn,.ringeliste-config-section .preview-btn,.ringeliste-config-section .reset-btn{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border:none;border-radius:.5rem;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s ease}.ringeliste-config-section .edit-btn{background:#1a1a1a;color:#fff}.ringeliste-config-section .edit-btn:hover{background:#333}.ringeliste-config-section .save-btn{background:#10b981;color:#fff}.ringeliste-config-section .save-btn:hover:not(:disabled){background:#059669}.ringeliste-config-section .save-btn:disabled{background:var(--border-color);cursor:not-allowed}.ringeliste-config-section .cancel-btn{background:#6b7280;color:#fff}.ringeliste-config-section .cancel-btn:hover{background:#4b5563}.ringeliste-config-section .preview-btn{background:#3b82f6;color:#fff}.ringeliste-config-section .preview-btn:hover:not(:disabled){background:#2563eb}.ringeliste-config-section .preview-btn:disabled{background:var(--border-color);cursor:not-allowed}.ringeliste-config-section .reset-btn{background:var(--warning-color);color:#fff}.ringeliste-config-section .reset-btn:hover{background:var(--warning-hover)}.ringeliste-config-section .config-description{color:#6b7280;margin-bottom:.75rem;line-height:1.4;font-size:.8125rem}.sluttgjennomgang-config-compact{display:flex;flex-direction:column;gap:.75rem}.sluttgjennomgang-status-group{display:flex;flex-direction:column;gap:.5rem}.sluttgjennomgang-subtitle{margin:0;font-size:.9375rem;font-weight:600;color:#374151}.sluttgjennomgang-hint{margin:0;font-size:.75rem;color:#6c757d;line-height:1.4}.sluttgjennomgang-inputs{display:flex;flex-direction:column;gap:.75rem}.sluttgjennomgang-input-item{display:flex;flex-direction:column;gap:.375rem}.sluttgjennomgang-label{font-size:.8125rem;font-weight:500;color:#6b7280;margin:0}.ringeliste-config-section .config-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.ringeliste-config-section .config-group{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;padding:.875rem}.ringeliste-config-section .config-group-title{margin:0 0 .75rem;font-size:.9375rem;font-weight:600;color:#374151}.ringeliste-config-section .time-range-inputs{display:flex;align-items:center;gap:.75rem}.ringeliste-config-section .input-group{flex:1;display:flex;flex-direction:column;gap:.375rem}.ringeliste-config-section .input-group label{font-size:.8125rem;font-weight:500;color:#6b7280}.ringeliste-config-section .time-input{width:100%;padding:.5rem .75rem;border:1px solid #e2e8f0;border-radius:.5rem;font-size:.875rem;background:var(--card-bg);color:#1f2937;transition:all .2s ease}.ringeliste-config-section .time-input:focus{outline:none;border-color:#1a1a1a;box-shadow:0 0 0 2px #1a1a1a1a}.ringeliste-config-section .time-value{padding:.5rem .75rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;font-size:.875rem;color:#1f2937;text-align:center;font-weight:500}.ringeliste-config-section .time-separator{font-size:1rem;font-weight:600;color:#9ca3af;align-self:end;padding-bottom:.5rem}.ringeliste-config-section .edit-actions{display:flex;justify-content:center;margin-bottom:1rem}.ringeliste-config-section .preview-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;padding:.875rem;margin-top:1rem}.ringeliste-config-section .preview-title{margin:0 0 .75rem;font-size:.9375rem;font-weight:600;color:#374151}.ringeliste-config-section .preview-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.ringeliste-config-section .preview-stat{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:var(--bg-primary);border-radius:.5rem;border:1px solid var(--border-color)}.ringeliste-config-section .preview-stat.total{border-color:var(--primary-color);background:#3b82f60d}.ringeliste-config-section .preview-stat .stat-label{font-size:.875rem;color:var(--text-secondary)}.ringeliste-config-section .preview-stat .stat-value{font-size:1.125rem;font-weight:600;color:var(--text-primary)}.ringeliste-config-section .preview-stat.total .stat-value{color:var(--primary-color)}.ringeliste-config-section .config-info{margin-top:.75rem;padding-top:.5rem;border-top:1px solid #e5e7eb}.ringeliste-config-section .config-meta{margin:0;font-size:.8125rem;color:#6b7280;text-align:center}.ringeliste-config-section .error-message{background:var(--error-bg);color:var(--error-text);padding:.75rem 1rem;border-radius:.5rem;margin-bottom:1rem;font-size:.875rem}@media (max-width: 768px){.ringeliste-config-section .config-grid{grid-template-columns:1fr;gap:1rem}.ringeliste-config-section .section-header{flex-direction:column;gap:1rem;align-items:stretch}.ringeliste-config-section .section-actions{justify-content:center}.ringeliste-config-section .time-range-inputs{flex-direction:column;gap:.75rem}.ringeliste-config-section .time-separator{align-self:center;padding:0;transform:rotate(90deg)}.ringeliste-config-section .preview-stats{grid-template-columns:1fr}}.working-list-config-section{background:transparent;border-radius:0;box-shadow:none;margin-bottom:0;overflow:visible}.working-list-config-section .section-header{display:flex;justify-content:space-between;align-items:center;padding:0;color:inherit;margin:0 0 .75rem;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.working-list-config-section .section-header h3{display:flex;align-items:center;gap:.5rem;margin:0;font-size:1.125rem;font-weight:600;color:#1f2937}.working-list-config-section .section-header .icon{width:20px;height:20px}.working-list-config-section .section-actions{display:flex;gap:.75rem}.working-list-config-section .section-actions button{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border:none;border-radius:.5rem;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s ease;color:#fff}.working-list-config-section .edit-btn{background:#000;color:#fff;border:1px solid rgba(255,255,255,.2)}.working-list-config-section .edit-btn:hover{background:#1f2937;border-color:#ffffff4d}.working-list-config-section .preview-btn{background:#3b82f6cc;border:1px solid rgba(59,130,246,.9)}.working-list-config-section .preview-btn:hover:not(:disabled){background:#3b82f6}.working-list-config-section .save-btn{background:#22c55ecc;border:1px solid rgba(34,197,94,.9)}.working-list-config-section .save-btn:hover:not(:disabled){background:#22c55e}.working-list-config-section .cancel-btn{background:#ef4444cc;border:1px solid rgba(239,68,68,.9)}.working-list-config-section .cancel-btn:hover{background:#ef4444}.working-list-config-section .reset-btn{background:#9ca3afcc;border:1px solid rgba(156,163,175,.9);color:#fff}.working-list-config-section .reset-btn:hover{background:#9ca3af}.working-list-config-section .section-actions button:disabled{opacity:.6;cursor:not-allowed}.working-list-config-section .section-actions .icon{width:16px;height:16px}.working-list-config-section .config-content{padding:0}.working-list-config-section .config-description{color:#6b7280;font-size:.875rem;margin-bottom:1rem;line-height:1.5}.working-list-config-section .config-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}@media (max-width: 768px){.working-list-config-section .config-grid{grid-template-columns:1fr;gap:1.5rem}}.working-list-config-section .config-group{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;padding:.875rem}.working-list-config-section .config-group-title{color:#374151;font-size:.9375rem;font-weight:600;margin:0 0 .75rem}.working-list-config-section .time-range-inputs{display:flex;align-items:center;gap:.75rem}.working-list-config-section .input-group{flex:1;display:flex;flex-direction:column;gap:.375rem}.working-list-config-section .input-group label{color:#6b7280;font-size:.8125rem;font-weight:500}.working-list-config-section .time-input{padding:.5rem .75rem;border:1px solid #e2e8f0;border-radius:.5rem;font-size:.875rem;background:var(--card-bg);color:#1f2937;transition:all .2s ease}.working-list-config-section .time-input:focus{outline:none;border-color:#1a1a1a;box-shadow:0 0 0 2px #1a1a1a1a}.working-list-config-section .time-value{padding:.5rem .75rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;color:#1f2937;font-weight:500;font-size:.875rem}.working-list-config-section .time-separator{color:#9ca3af;font-weight:600;font-size:1rem;margin-top:.5rem;align-self:end;padding-bottom:.5rem}.working-list-config-section .edit-actions{display:flex;justify-content:flex-start;margin-bottom:1rem}.working-list-config-section .preview-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;padding:.875rem;margin-bottom:1rem}.working-list-config-section .preview-title{color:#374151;font-size:.9375rem;font-weight:600;margin:0 0 .75rem}.working-list-config-section .preview-stats{display:flex;gap:2rem;flex-wrap:wrap}.working-list-config-section .preview-stat{display:flex;flex-direction:column;gap:.25rem}.working-list-config-section .preview-stat.total{font-weight:600;color:#0c4a6e}.working-list-config-section .stat-label{color:#374151;font-size:.875rem}.working-list-config-section .stat-value{color:#1f2937;font-size:1.5rem;font-weight:700}.working-list-config-section .config-info{padding-top:.75rem;margin-top:1rem;border-top:1px solid #e5e7eb}.working-list-config-section .config-meta{color:#6b7280;font-size:.8125rem;margin:0;text-align:center}.working-list-config-section .error-message{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:1rem 1.5rem;margin:0 2rem 1rem;border-radius:6px;font-size:.9rem}.responsibility-section{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1rem;box-shadow:0 1px 2px #0000000a}.responsibility-section .group-header{margin-bottom:.75rem}.responsibility-section .group-header h2{font-size:1.125rem;margin-bottom:.25rem}.responsibility-section .group-description{font-size:.8125rem}.responsibility-section .create-rule-form{display:flex;gap:.75rem;margin-bottom:1rem;padding:.75rem;background:#fafafa;border:1px solid #f0f0f0;border-radius:.5rem;flex-wrap:wrap;width:100%;box-sizing:border-box;overflow:hidden}.responsibility-section .create-rule-form button{background:#111827;color:#fff;border:none;border-radius:.5rem;padding:.5rem 1rem;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .15s ease}.responsibility-section .create-rule-form button:hover{background:#1f2937}.responsibility-section .input-with-icon{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border:1px solid #e5e7eb;border-radius:.5rem;background:#fff;flex:1;min-width:200px;max-width:100%;overflow:hidden}.responsibility-section .input-with-icon svg{width:16px;height:16px;color:#6b7280;flex-shrink:0}.responsibility-section .input-with-icon input,.responsibility-section .input-with-icon select{border:none;outline:none;flex:1;background:transparent;font-size:.8125rem;color:#111827;min-width:0;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.responsibility-section .input-with-icon select{cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center;padding-right:2rem}.responsibility-section .input-with-icon select option{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.responsibility-section .rules-table-container{overflow-x:auto}.responsibility-section .admin-loading{padding:.75rem;color:#6b7280;font-size:.8125rem}.responsibility-section .rules-table{width:100%;border-collapse:collapse}.responsibility-section .rules-table thead{background:#f9fafb}.responsibility-section .rules-table th{padding:.5rem .75rem;text-align:left;font-weight:600;font-size:.75rem;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #e5e7eb}.responsibility-section .rules-table td{padding:.625rem .75rem;font-size:.8125rem;color:#111827;border-bottom:1px solid #f0f0f0}.responsibility-section .customer-type{font-weight:600;color:#111827}.responsibility-section .date-cell{color:#6b7280;font-size:.75rem}.responsibility-section .delete-btn{padding:.375rem .75rem;background:#ef4444;color:#fff;border:none;border-radius:.375rem;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .15s ease}.responsibility-section .delete-btn:hover{background:#dc2626}.responsibility-section .no-rules{text-align:center;padding:1rem;color:#777}.responsibility-section .error-message{background:#fdecec;color:#b42318;border:1px solid #f6c9c6;padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem}.budget-section{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #00000014;margin-bottom:2rem}.budget-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;gap:1rem;flex-wrap:wrap}.year-select{padding:.5rem 1rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;background:#fff;color:#1f2937;cursor:pointer;transition:all .2s ease}.year-select:hover{border-color:#000}.year-select:focus{outline:none;border-color:#000;box-shadow:0 0 0 2px #0000001a}.button-group{display:flex;gap:.75rem}.primary-btn,.secondary-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:none}.primary-btn{background:linear-gradient(135deg,#000,#333);color:#fff}.primary-btn:hover:not(:disabled){background:linear-gradient(135deg,#333,#555);transform:translateY(-1px);box-shadow:0 4px 8px #0003}.primary-btn:disabled{opacity:.5;cursor:not-allowed}.secondary-btn{background:#fff;color:#1f2937;border:1px solid #d1d5db}.secondary-btn:hover:not(:disabled){background:#f9fafb;border-color:#000;transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.secondary-btn:disabled{opacity:.5;cursor:not-allowed}.budget-table-container{width:100%;overflow:visible}.budget-table-scroll{width:100%;overflow-x:auto;border-radius:8px;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a}.budget-table{width:100%;border-collapse:collapse;font-size:.875rem;background:#fff;min-width:1200px}.budget-table thead{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);position:sticky;top:0;z-index:10}.budget-table th{padding:.75rem;text-align:left;font-weight:600;font-size:.8125rem;color:#1f2937;border-bottom:2px solid #d1d5db;white-space:nowrap}.budget-table th .inline-icon{vertical-align:middle;margin-right:.25rem;opacity:.7}.sticky-col{position:sticky;left:0;background:#fff;z-index:5;font-weight:600;border-right:2px solid #e5e7eb;box-shadow:2px 0 4px #0000000d}.budget-table thead .sticky-col{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);z-index:15}.week-label{min-width:100px;font-size:.875rem;color:#1f2937}.week-date-range{font-size:.75rem;color:#6b7280;font-weight:400;margin-top:.125rem;opacity:.8}.month-row{background:#fafbfc;border-bottom:2px solid #e5e7eb}.month-row:hover{background:#f3f4f6!important}.month-row .month-label{padding:.75rem 1rem!important}.month-label strong{font-size:.9375rem;color:#1f2937}.week-count{font-size:.75rem;color:#6b7280;font-weight:400;margin-top:.125rem}.week-row{background:#fff}.week-row:hover{background:#f9fafb!important}.week-row .week-value{color:#6b7280;font-size:.8125rem;font-style:italic;padding:.625rem .75rem}.action-col{width:80px;text-align:center;padding:.625rem .75rem}.expand-btn{background:transparent;border:1px solid #d1d5db;border-radius:4px;padding:.25rem .5rem;cursor:pointer;font-size:.75rem;color:#6b7280;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:28px}.expand-btn:hover{background:#f3f4f6;border-color:#9ca3af;color:#1f2937}.expand-btn:active{background:#e5e7eb}.budget-table tbody tr{transition:background .15s ease}.budget-table tbody tr:hover{background:#fafbfc}.budget-table tbody tr:hover .sticky-col{background:#f9fafb}.budget-table td{padding:.625rem .75rem;border-bottom:1px solid #f3f4f6;border-right:1px solid #f9fafb}.budget-table input[type=number]{width:100%;max-width:120px;padding:.5rem;border:1px solid #d1d5db;border-radius:4px;font-size:.8125rem;transition:all .2s ease;background:#fff}.budget-table input[type=number]:hover{border-color:#9ca3af}.budget-table input[type=number]:focus{outline:none;border-color:#000;box-shadow:0 0 0 2px #0000001a}.budget-table input[type=number]::placeholder{color:#9ca3af}.budget-table input[type=number]::-webkit-inner-spin-button,.budget-table input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.budget-table input[type=number]{-moz-appearance:textfield}.error-message{padding:1rem;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#991b1b;font-size:.875rem;margin-bottom:1rem}.admin-loading{padding:3rem;text-align:center;color:#6b7280;font-size:.875rem}@media (max-width: 1024px){.budget-section{padding:1.5rem}.budget-table{font-size:.8125rem;min-width:1000px}.budget-table input[type=number]{max-width:100px;padding:.375rem}}@media (max-width: 768px){.budget-section{padding:1rem;border-radius:8px}.budget-controls{flex-direction:column;align-items:stretch}.button-group{width:100%;justify-content:stretch}.primary-btn,.secondary-btn{flex:1;justify-content:center}.budget-table{font-size:.75rem;min-width:900px}.budget-table th,.budget-table td{padding:.5rem}.week-label{min-width:80px;font-size:.8125rem}}.team-visibility-card{border:1px solid #e5e7eb;border-radius:.75rem;padding:1rem;background:#fff;box-shadow:0 1px 2px #0000000a}.team-visibility-loading{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:2rem;color:var(--text-primary);font-size:.95rem}.team-visibility-loading .loading-spinner{animation:spin 1s linear infinite}.team-visibility-error{padding:1rem;text-align:center;color:#ef4444;font-size:.95rem}.team-visibility-table{display:flex;flex-direction:column;gap:.375rem}.team-visibility-header,.team-visibility-row{display:grid;grid-template-columns:1fr .4fr;gap:.5rem;align-items:center}.team-visibility-header{font-weight:600;color:#374151;padding:.5rem;border-bottom:1px solid #e5e7eb;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.team-visibility-row{padding:.5rem;border-bottom:1px dashed #e5e7eb;transition:background-color .15s ease}.team-visibility-row:hover{background-color:#fafafa}.team-visibility-row:last-child{border-bottom:none}.team-visibility-col{display:flex;align-items:center}.team-visibility-col.heading{font-size:.95rem}.team-visibility-col.channel{justify-content:flex-end}.user-info-compact{display:flex;align-items:center;gap:.75rem;flex:1}.user-avatar-small{width:1.75rem;height:1.75rem;border-radius:50%;background:#6b7280;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.6875rem;flex-shrink:0}.user-details{display:flex;flex-direction:column;gap:.25rem;min-width:0;flex:1}.item-description{display:flex;align-items:center;gap:.5rem;color:#6b7280;font-size:.75rem}.user-email-compact{color:#6b7280;font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-role-badge{display:inline-block;padding:.125rem .5rem;border-radius:.25rem;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.user-role-badge.role-admin{background:#e3f2fd;color:#1976d2}.user-role-badge.role-user{background:#f3e5f5;color:#7b1fa2}.checkbox-toggle{display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-toggle input[type=checkbox]{width:1rem;height:1rem;cursor:pointer;accent-color:#1a1a1a}.checkbox-toggle span{font-size:.75rem;font-weight:500;color:#374151;min-width:2.5rem}.footnote{margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb;text-align:center}.register-page{padding:2rem;max-width:1400px;margin:0 auto;background:var(--card-bg);min-height:100vh}.register-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem;border-bottom:1px solid #e5e5e5;padding-bottom:1rem}.register-header h1{color:#000;font-size:2.5rem;font-weight:700;margin:0}.week-selector{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.year-week-inputs{display:flex;gap:1rem}.year-week-inputs label{display:flex;flex-direction:column;gap:.25rem;font-weight:600;color:#333}.year-week-inputs select{padding:.5rem;border:1px solid #cccccc;border-radius:.375rem;background:var(--card-bg);color:#333;min-width:120px}.week-info{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#f3f4f6;border-radius:.375rem;color:#374151;font-weight:500}.metrics-card-compact{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1rem;box-shadow:0 1px 2px #0000000a;display:flex;flex-direction:column;gap:.75rem}.metric-date{display:inline-flex;align-items:center;gap:.25rem;font-size:.6875rem;color:#9ca3af;font-weight:500}.metric-date svg{flex-shrink:0;color:#d1d5db}.compact-select-group{display:flex;gap:.5rem;align-items:center}.compact-select{padding:.375rem .625rem;border:1px solid #e5e7eb;border-radius:.375rem;background:#fff;color:#111827;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s ease;min-width:80px}.compact-select:hover{border-color:#d1d5db;background:#fafafa}.compact-select:focus{outline:none;border-color:#1a1a1a;box-shadow:0 0 0 2px #1a1a270f;background:#fff}.compact-value-group{display:flex;align-items:center;gap:.5rem;margin-left:auto}.compact-input{padding:.375rem .625rem;border:1px solid #e5e7eb;border-radius:.375rem;background:#fff;color:#111827;font-size:.8125rem;font-weight:500;width:140px;transition:all .15s ease}.compact-input:focus{outline:none;border-color:#1a1a1a;box-shadow:0 0 0 2px #1a1a270f}.compact-input::placeholder{color:#d1d5db}.compact-value{font-size:.8125rem;font-weight:600;color:#111827;min-width:100px;text-align:right}.compact-value .empty{color:#d1d5db;font-weight:400;font-style:italic}.icon-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:1px solid #e5e7eb;border-radius:.375rem;background:#fff;color:#6b7280;cursor:pointer;transition:all .15s ease;flex-shrink:0}.icon-btn:hover{background:#f9fafb;border-color:#d1d5db;color:#374151}.icon-btn.success{color:#10b981;border-color:#10b981}.icon-btn.success:hover{background:#10b981;color:#fff}.icon-btn-group{display:flex;gap:.375rem}.goals-content{display:flex;align-items:center;gap:1.5rem;flex:1}.goal-item{display:flex;flex-direction:column;gap:.25rem;flex:1;min-width:0}.goal-label{font-size:.6875rem;color:#9ca3af;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.goal-item .compact-input,.goal-item .compact-value{width:100%;text-align:left}.compact-margin-section{margin:0;padding:0;border:none;background:transparent;box-shadow:none;width:100%}.compact-margin-section .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:0;padding-bottom:0;border-bottom:none}.compact-margin-section .section-header h3{font-size:.8125rem;font-weight:600;color:#374151;margin:0;display:flex;align-items:center;gap:.375rem}.compact-margin-section .section-header .icon{width:.875rem;height:.875rem;color:#6b7280}.compact-margin-section .section-actions{gap:.375rem}.compact-margin-section .section-actions button{padding:.375rem .625rem;font-size:.75rem;font-weight:500;border-radius:.375rem;display:inline-flex;align-items:center;gap:.25rem}.compact-margin-section .margin-content{display:flex;align-items:center;gap:1rem;margin-top:.75rem}.compact-margin-section .current-margin-card{background:transparent;border:none;padding:0;flex:1}.compact-margin-section .margin-header{margin-bottom:.5rem}.compact-margin-section .margin-label{font-size:.6875rem;color:#9ca3af;font-weight:500}.compact-margin-section .margin-value{font-size:1rem;font-weight:700;color:#111827;margin:0;text-align:left}.compact-margin-section .margin-description{font-size:.6875rem;color:#9ca3af;margin:.25rem 0 0}.compact-margin-section .margin-meta{font-size:.6875rem;color:#9ca3af}.compact-margin-section .default-badge{font-size:.625rem;padding:.125rem .375rem}@media (max-width: 1024px){.metric-row{flex-direction:column;align-items:flex-start}.metric-row-label{width:100%}.metric-row-content{width:100%;flex-direction:column;align-items:stretch}.compact-value-group{margin-left:0;width:100%;justify-content:space-between}.goals-content{flex-direction:column;align-items:stretch;gap:.75rem}.goal-item{width:100%}}@media (max-width: 768px){.metrics-card-compact{padding:.75rem}.metric-row{padding:.625rem}.compact-select-group{flex-direction:column;width:100%}.compact-select,.compact-input{width:100%}}.config-card-compact{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1rem;box-shadow:0 1px 2px #0000000a;display:flex;flex-direction:column;gap:.75rem}.compact-config-section{padding:.75rem;background:#fafafa;border:1px solid #f0f0f0;border-radius:.5rem;transition:all .15s ease}.compact-config-section:hover{background:#f5f5f5;border-color:#e5e7eb}.compact-config-section .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.compact-config-section .section-header h3{font-size:.8125rem;font-weight:600;color:#374151;margin:0;display:flex;align-items:center;gap:.375rem}.compact-config-section .section-header .icon{width:.875rem;height:.875rem;color:#6b7280}.compact-config-section .section-actions{display:flex;gap:.375rem}.compact-config-section .section-actions button{width:28px;height:28px;padding:0;display:flex;align-items:center;justify-content:center;border:1px solid #e5e7eb;border-radius:.375rem;background:#fff;color:#6b7280;font-size:0;cursor:pointer;transition:all .15s ease}.compact-config-section .section-actions .edit-btn{color:#111827}.compact-config-section .section-actions .save-btn{color:#10b981;border-color:#10b981}.compact-config-section .section-actions .save-btn:hover{background:#10b981;color:#fff}.compact-config-section .section-actions .cancel-btn{color:#ef4444;border-color:#ef4444}.compact-config-section .section-actions .cancel-btn:hover{background:#ef4444;color:#fff}.compact-config-section .section-actions .preview-btn{color:#3b82f6;border-color:#3b82f6}.compact-config-section .section-actions .preview-btn:hover{background:#3b82f6;color:#fff}.compact-config-section .section-actions button:hover{background:#f9fafb;border-color:#d1d5db}.compact-config-section .config-content{padding:0}.compact-config-section .config-description{font-size:.6875rem;color:#9ca3af;margin:0 0 .75rem;line-height:1.4}.compact-config-section .config-hint-compact{font-size:.6875rem;color:#9ca3af;margin:0 0 .75rem;line-height:1.4;font-style:italic}.compact-config-section .config-group-hint{font-size:.625rem;color:#9ca3af;margin:0 0 .5rem;line-height:1.3;font-style:italic}.compact-config-section .config-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.compact-config-section .config-group{padding:.625rem;background:#fff;border:1px solid #e5e7eb;border-radius:.375rem}.compact-config-section .config-group-title{font-size:.75rem;font-weight:600;color:#111827;margin:0 0 .5rem}.compact-config-section .time-range-inputs{display:flex;align-items:center;gap:.5rem}.compact-config-section .input-group{flex:1;display:flex;flex-direction:column;gap:.25rem}.compact-config-section .input-group label{font-size:.625rem;color:#9ca3af;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.125rem}.compact-config-section .sluttgjennomgang-label{font-size:.6875rem;color:#6b7280;font-weight:500;text-transform:none;letter-spacing:0}.compact-config-section .time-input{padding:.375rem .5rem;border:1px solid #e5e7eb;border-radius:.375rem;font-size:.75rem;font-weight:500;background:#fff;color:#111827;width:100%}.compact-config-section .time-input:focus{outline:none;border-color:#1a1a1a;box-shadow:0 0 0 2px #1a1a270f}.compact-config-section .time-value{padding:.375rem .5rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:.375rem;font-size:.75rem;font-weight:600;color:#111827;text-align:center}.compact-config-section .time-separator{color:#d1d5db;font-weight:500;padding-top:1.25rem}.compact-config-section .sluttgjennomgang-config-compact{display:flex;flex-direction:column;gap:.75rem}.compact-config-section .sluttgjennomgang-status-group{display:flex;flex-direction:column;gap:.5rem}.compact-config-section .sluttgjennomgang-subtitle{font-size:.8125rem;font-weight:600;color:#111827;margin:0 0 .25rem}.compact-config-section .sluttgjennomgang-hint{font-size:.6875rem;color:#9ca3af;margin:0 0 .5rem;line-height:1.4}.compact-config-section .sluttgjennomgang-inputs{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem}.compact-config-section .sluttgjennomgang-input-item{display:flex;flex-direction:column;gap:.25rem}.compact-config-section .sluttgjennomgang-label{font-size:.625rem;color:#9ca3af;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.compact-config-section .edit-actions{margin-top:.5rem;padding-top:.5rem;border-top:1px solid #e5e7eb}.compact-config-section .reset-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .625rem;border:1px solid #e5e7eb;border-radius:.375rem;background:#fff;color:#6b7280;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .15s ease}.compact-config-section .reset-btn:hover{background:#f9fafb;border-color:#d1d5db}.compact-config-section .reset-btn .icon{width:.875rem;height:.875rem}.compact-config-section .config-info{margin-top:.5rem;padding-top:.5rem;border-top:1px solid #e5e7eb}.compact-config-section .config-meta{font-size:.6875rem;color:#9ca3af;margin:0}.compact-config-section .error-message{font-size:.75rem;padding:.5rem;margin-bottom:.75rem;border-radius:.375rem}.compact-config-section .preview-section{margin-top:.75rem;padding-top:.75rem;border-top:1px solid #e5e7eb}.compact-config-section .preview-title{font-size:.75rem;font-weight:600;color:#374151;margin:0 0 .5rem}.compact-config-section .preview-stats{display:flex;gap:1rem;flex-wrap:wrap}.compact-config-section .preview-stat{display:flex;gap:.375rem;font-size:.75rem}.compact-config-section .stat-label{color:#6b7280}.compact-config-section .stat-value{font-weight:600;color:#111827}@media (max-width: 1024px){.compact-config-section .config-grid,.compact-config-section .sluttgjennomgang-inputs{grid-template-columns:1fr}}@media (max-width: 768px){.config-card-compact{padding:.75rem}.compact-config-section{padding:.625rem}}.data-overview{background:#fff;border:1px solid #e5e7eb;border-radius:1rem;padding:2rem;box-shadow:0 1px 3px #0000000d}.weekly-data-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid #f3f4f6}.weekly-data-title-group{display:flex;flex-direction:column;gap:.5rem}.weekly-data-title-group h3{margin:0;font-size:1.5rem;font-weight:700;color:#111827;letter-spacing:-.02em}.week-date-range{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;color:#6b7280;font-size:.875rem;font-weight:500;width:fit-content}.week-date-range svg{color:#9ca3af;flex-shrink:0}.weekly-data-content{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start}.week-selector-group,.subscription-income-group{display:flex;flex-direction:column;gap:.75rem}.week-selector-label,.subscription-income-label{font-size:.875rem;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.05em}.week-selector-inputs{display:flex;gap:.75rem;align-items:center}.week-select-year,.week-select-week{padding:.75rem 1rem;border:1.5px solid #e5e7eb;border-radius:.625rem;background:#fff;color:#111827;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s ease;min-width:100px}.week-select-year{min-width:120px}.week-select-year:hover,.week-select-week:hover{border-color:#d1d5db;background:#f9fafb}.week-select-year:focus,.week-select-week:focus{outline:none;border-color:#1a1a1a;box-shadow:0 0 0 3px #1a1a1a14;background:#fff}.subscription-income-input-wrapper{position:relative}.subscription-income-input{width:100%;padding:.875rem 1rem;border:1.5px solid #e5e7eb;border-radius:.625rem;font-size:1rem;font-weight:600;background:#fff;color:#111827;transition:all .2s ease}.subscription-income-input:focus{outline:none;border-color:#1a1a1a;box-shadow:0 0 0 3px #1a1a1a14}.subscription-income-input::placeholder{color:#9ca3af;font-weight:400}.subscription-income-value{padding:.875rem 1rem;background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:.625rem;color:#111827;font-weight:700;font-size:1.125rem;min-height:2.75rem;display:flex;align-items:center}.subscription-income-value .not-set{color:#9ca3af;font-weight:500;font-style:italic}.edit-button-clean,.save-button-clean,.cancel-button-clean{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;border-radius:.625rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;white-space:nowrap}.edit-button-clean{background:#111827;color:#fff}.edit-button-clean:hover{background:#1f2937;transform:translateY(-1px);box-shadow:0 4px 12px #11182726}.save-button-clean{background:#10b981;color:#fff}.save-button-clean:hover:not(:disabled){background:#059669;transform:translateY(-1px);box-shadow:0 4px 12px #10b98140}.save-button-clean:disabled{opacity:.6;cursor:not-allowed;transform:none}.cancel-button-clean{background:#f3f4f6;color:#374151;border:1.5px solid #e5e7eb}.cancel-button-clean:hover{background:#e5e7eb;border-color:#d1d5db}.edit-actions-clean{display:flex;gap:.75rem}@media (max-width: 768px){.weekly-data-content{grid-template-columns:1fr;gap:1.5rem}.weekly-data-header{flex-direction:column;gap:1rem;align-items:stretch}.edit-actions-clean{width:100%}.edit-button-clean,.save-button-clean,.cancel-button-clean{flex:1;justify-content:center}}.section-header-compact{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.section-title-row{display:flex;justify-content:space-between;align-items:center}.section-title-row h3{margin:0;font-size:1.125rem;font-weight:600;color:#1f2937}.week-selector-row{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.week-selector-compact{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.year-week-inputs-compact{display:flex;gap:.5rem;align-items:center}.select-compact{padding:.5rem .75rem;border:1px solid #e2e8f0;border-radius:.5rem;background:var(--card-bg);color:#1f2937;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;min-width:80px}.select-compact:hover{border-color:#cbd5e0}.select-compact:focus{outline:none;border-color:#1a1a1a;box-shadow:0 0 0 2px #1a1a1a1a}.week-info-compact{display:flex;align-items:center;gap:.375rem;padding:.5rem .75rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;color:#64748b;font-size:.8125rem;font-weight:500}.week-info-compact svg{color:#94a3b8}.edit-button-small,.save-button-small,.cancel-button-small{padding:.375rem .75rem;border-radius:.5rem;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;display:inline-flex;align-items:center;gap:.375rem}.edit-button-small{background:#1a1a1a;color:#fff}.edit-button-small:hover{background:#333}.save-button-small{background:#10b981;color:#fff}.save-button-small:hover:not(:disabled){background:#059669}.save-button-small:disabled{opacity:.6;cursor:not-allowed}.cancel-button-small{background:#6b7280;color:#fff}.cancel-button-small:hover{background:#4b5563}.edit-actions-small{display:flex;gap:.5rem}.input-group-compact{display:flex;flex-direction:column;gap:.5rem}.input-group-compact-inline{display:flex;flex-direction:column;gap:.375rem;min-width:180px}.label-compact{display:flex;align-items:center;gap:.5rem;font-weight:600;color:#374151;font-size:.875rem}.label-compact svg{color:#6b7280}.input-compact{padding:.625rem .75rem;border:1px solid #e2e8f0;border-radius:.5rem;font-size:.875rem;background:var(--card-bg);color:#1f2937;transition:all .2s ease;max-width:200px}.input-compact:focus{outline:none;border-color:#1a1a1a;box-shadow:0 0 0 2px #1a1a1a1a}.value-compact{padding:.625rem .75rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;color:#1f2937;font-weight:500;font-size:.875rem;max-width:200px}.loading{display:flex;justify-content:center;align-items:center;padding:2rem;color:#666;font-size:1.125rem}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem;text-align:center;min-height:60vh}.loading-container .spin{animation:spin 1s linear infinite;color:var(--primary-color, #666666);margin-bottom:1rem}.loading-container p{color:#666;font-size:1.125rem;margin:0}.error-message{background:#fee2e2;border:1px solid #fecaca;color:#dc2626;padding:1rem;border-radius:.5rem;margin-bottom:1rem}.error{padding:1rem;background:#f5f5f5;border:1px solid #cccccc;border-radius:.375rem;color:#333;margin-bottom:1rem;text-align:center}.register-content{display:flex;flex-direction:column;gap:2rem}.register-section{background:var(--card-bg);border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:1px solid #e5e5e5}.section-header h2{color:#1f2937;font-size:1.5rem;font-weight:600;margin:0}.section-header h3{color:#000;font-size:1.25rem;font-weight:600;margin:0;display:flex;align-items:center;gap:.5rem}.section-actions{display:flex;gap:.5rem}.edit-button,.save-button,.cancel-button,.edit-btn,.save-btn,.cancel-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;border-radius:.375rem;font-weight:500;cursor:pointer;transition:all .2s;border:1px solid #cccccc;font-size:.875rem}.edit-button{background:#000;color:#fff;border-color:#000}.edit-button:hover{background:#333}.save-button{background:#666;color:#fff;margin-right:.5rem;border-color:#666}.save-button:hover{background:#333}.save-button:disabled{background:#ccc;cursor:not-allowed}.cancel-button{background:#999;color:#fff;border-color:#999}.cancel-button:hover{background:#666}.icon{width:1rem;height:1rem}.edit-actions{display:flex}.input-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.input-group{display:flex;flex-direction:column;gap:.5rem}.input-group label{display:flex;align-items:center;gap:.5rem;font-weight:600;color:#333}.input-group input{padding:.75rem;border:1px solid #cccccc;border-radius:.375rem;font-size:1rem;background:var(--card-bg);color:#000}.input-group input:focus{outline:none;border-color:#666;box-shadow:0 0 0 2px #6666661a}.input-group .value{padding:.75rem;background:#f5f5f5;border:1px solid #e5e5e5;border-radius:.375rem;color:#333;font-weight:500}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.metric-card{background:var(--card-bg);border:1px solid #e5e5e5;border-radius:.5rem;padding:1.5rem}.metric-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.metric-header h3{color:#000;font-size:1.125rem;font-weight:600;margin:0}.metric-value{font-size:2rem;font-weight:700;color:#000;margin-bottom:.5rem}.metric-subtitle{color:#666;font-size:.875rem}.breakdown-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.breakdown-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#f5f5f5;border:1px solid #e5e5e5;border-radius:.375rem}.breakdown-label{font-weight:500;color:#333}.breakdown-value{font-weight:700;color:#000;background:#666;color:#fff;padding:.25rem .5rem;border-radius:.25rem;min-width:2rem;text-align:center}.financial-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.financial-item{text-align:center;padding:1.5rem;background:linear-gradient(135deg,#666,#333);border-radius:.75rem;color:#fff}.financial-label{font-size:.875rem;font-weight:500;opacity:.9;margin-bottom:.5rem}.financial-value{font-size:1.5rem;font-weight:700}.yearly-goals-section{background:var(--card-bg);border:1px solid #e2e8f0;border-radius:.75rem;padding:1.25rem;box-shadow:0 1px 3px #0000000d}.yearly-goals-section .section-header-compact{margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.yearly-goals-section .section-title-row h3{margin:0;font-size:1.125rem;font-weight:600;color:#1f2937}.goals-content-compact{display:flex;flex-direction:row;gap:1.5rem;flex-wrap:wrap}.goal-item-compact{display:flex;flex-direction:column;gap:.5rem;flex:1;min-width:200px}.goal-label-compact{font-weight:600;color:#374151;font-size:.875rem}.goal-input-compact{padding:.625rem .75rem;border:1px solid #e2e8f0;border-radius:.5rem;font-size:.875rem;background:var(--card-bg);color:#1f2937;font-weight:500;transition:all .2s ease;max-width:200px}.goal-input-compact:focus{outline:none;border-color:#1a1a1a;box-shadow:0 0 0 2px #1a1a1a1a}.goal-input-compact::placeholder{color:#9ca3af;font-weight:400}.goal-value-compact{padding:.625rem .75rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;color:#1f2937;font-weight:600;font-size:.875rem;max-width:200px}.goals-content{margin-top:1.5rem}.goals-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:1.5rem}.goal-card{background:linear-gradient(135deg,#f8f8f8,#e5e5e5);border:1px solid #cccccc;border-radius:.75rem;padding:1.5rem;transition:transform .2s,box-shadow .2s}.goal-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.goal-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.goal-icon{width:2.5rem;height:2.5rem;background:linear-gradient(135deg,#666,#333);border-radius:.5rem;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1.125rem}.goal-icon.brutto{background:linear-gradient(135deg,#666,#333)}.goal-icon.dekningsbidrag{background:linear-gradient(135deg,#999,#666)}.goal-body h3{color:#000;font-size:1.125rem;font-weight:600;margin:0 0 .25rem}.goal-body p{color:#666;font-size:.875rem;margin:0}.goal-value{font-size:2rem;font-weight:700;color:#000;margin:1rem 0;padding:.75rem;background:#f5f5f5;border:1px solid #e5e5e5;border-radius:.5rem;text-align:center}.goal-input{width:100%;font-size:1.5rem;font-weight:600;padding:.75rem;border:2px solid #cccccc;border-radius:.5rem;text-align:center;background:var(--card-bg);color:#000;margin:1rem 0}.goal-input:focus{outline:none;border-color:#666;box-shadow:0 0 0 2px #6666661a}.goal-input::placeholder{color:#999;font-weight:400}.goals-edit-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e5e5e5}.goals-edit-actions .save-button{background:linear-gradient(135deg,#666,#333);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:600;cursor:pointer;transition:all .2s}.goals-edit-actions .save-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #6666664d}.goals-edit-actions .save-button:disabled{background:#ccc;cursor:not-allowed;transform:none;box-shadow:none}.goals-edit-actions .cancel-button{background:#999;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:600;cursor:pointer;transition:all .2s}.goals-edit-actions .cancel-button:hover{background:#666;transform:translateY(-1px)}.goals-empty-state{text-align:center;padding:2rem;color:#666}.goals-empty-state p{margin-bottom:1rem;font-size:1.125rem}.set-goals-button{background:linear-gradient(135deg,#666,#333);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:600;cursor:pointer;transition:all .2s}.set-goals-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #6666664d}.register-group{display:flex;flex-direction:column;gap:1rem}.group-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.group-header h2{margin:0;font-size:1.5rem;color:#111827}.group-description{margin:.25rem 0 0;color:#6b7280;font-size:.95rem;text-align:right}.muted{color:#6b7280;font-size:.9rem}.sidebar-visibility-card{border:1px solid #e5e7eb;border-radius:.75rem;padding:1rem;background:#fff;box-shadow:0 1px 2px #0000000a}.sidebar-visibility-card .section-header{margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.sidebar-visibility-card .section-header h3{font-size:1rem;margin-bottom:.25rem}.sidebar-visibility-card .section-header .muted{font-size:.8125rem}.visibility-table{display:flex;flex-direction:column;gap:.375rem}.visibility-header,.visibility-row{display:grid;grid-template-columns:1.2fr repeat(2,.4fr);gap:.5rem;align-items:center}.visibility-header{font-weight:600;color:#374151;padding:.5rem;border-bottom:1px solid #e5e7eb;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.visibility-row{padding:.5rem;border-bottom:1px dashed #e5e7eb;transition:background-color .15s ease}.visibility-row:hover{background-color:#fafafa}.visibility-col{display:flex;flex-direction:column;gap:.125rem}.visibility-col.role{flex-direction:row;align-items:center;gap:.35rem;font-weight:600;color:#111827;font-size:.8125rem}.visibility-col.heading{font-size:.875rem}.item-title{font-weight:600;color:#111827;font-size:.8125rem}.item-description{color:#6b7280;font-size:.75rem}.visibility-toggle{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .625rem;border-radius:.375rem;border:1px solid #d1d5db;background:#f9fafb;cursor:pointer;width:fit-content;transition:all .15s ease;font-size:.75rem}.visibility-toggle.on{background:#ecfdf3;border-color:#bbf7d0;color:#166534}.visibility-toggle.off{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.reset-button{border:1px solid #d1d5db;background:#f9fafb;color:#111827;padding:.375rem .75rem;border-radius:.375rem;cursor:pointer;display:inline-flex;align-items:center;gap:.35rem;transition:all .15s ease;font-size:.8125rem;font-weight:500}.reset-button:hover{background:#f3f4f6}.notification-card{border:1px solid #e5e7eb;border-radius:.75rem;padding:1rem;background:#fff;box-shadow:0 1px 2px #0000000a}.notification-card .section-header{margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.notification-card .section-header h3{font-size:1rem;margin-bottom:.25rem}.notification-card .section-header .muted{font-size:.8125rem}.notification-table{display:flex;flex-direction:column;gap:.375rem}.notification-header,.notification-row{display:grid;grid-template-columns:1fr .4fr;gap:.5rem;align-items:center}.notification-header{font-weight:600;color:#374151;padding:.5rem;border-bottom:1px solid #e5e7eb;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.notification-row{padding:.5rem;border-bottom:1px dashed #e5e7eb;transition:background-color .15s ease}.notification-row:hover{background-color:#fafafa}.notification-col{display:flex;flex-direction:column;gap:.125rem}.notification-col.channel{flex-direction:row;align-items:center;justify-content:flex-end;gap:.35rem}.threshold-input{width:100%;padding:.375rem .5rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.75rem}.checkbox-toggle{display:inline-flex;align-items:center;gap:.35rem;font-weight:500;font-size:.75rem}.checkbox-toggle input{width:.875rem;height:.875rem}.footnote{margin-top:.75rem;padding-top:.75rem;border-top:1px solid #e5e7eb;font-size:.75rem}.config-sections-container{display:flex;flex-direction:column;gap:1.25rem;margin-top:1rem}.config-subsection>*{margin-bottom:0!important}.config-subsection .ringeliste-config-section,.config-subsection .working-list-config-section{background:transparent;border:none;padding:0;margin:0;box-shadow:none}.config-subsection .ringeliste-config-section .section-header,.config-subsection .working-list-config-section .section-header{margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.config-subsection .ringeliste-config-section .section-header h3,.config-subsection .working-list-config-section .section-header h3{font-size:1.125rem;font-weight:600;color:#1f2937}.config-subsection .ringeliste-config-section .config-content,.config-subsection .working-list-config-section .config-content{padding:0}@media (max-width: 768px){.goals-grid{grid-template-columns:1fr}.goal-value,.goal-input{font-size:1.5rem}.goals-edit-actions{flex-direction:column}.goals-edit-actions .save-button,.goals-edit-actions .cancel-button{width:100%}.config-sections-container{gap:1rem}.goal-input-compact,.goal-value-compact{max-width:100%}}.reviews-performance-card{background:var(--card-bg);border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.card-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e7eb}.header-left{display:flex;align-items:center;gap:1rem}.card-title{font-size:1.25rem;font-weight:600;color:#111827;margin:0}.review-count{font-size:.875rem;color:#6b7280;background:#f3f4f6;padding:.25rem .75rem;border-radius:9999px}.header-right{display:flex;align-items:center}.overall-summary{display:flex;align-items:center;gap:1rem;padding:.5rem 1rem;background:#f9fafb;border-radius:8px}.summary-item{display:flex;align-items:center;gap:.5rem}.summary-label{font-size:.75rem;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.summary-score{display:flex;align-items:center;gap:.25rem;font-size:1rem;font-weight:600;color:#111827}.summary-divider{width:1px;height:24px;background:#d1d5db}.card-body{padding:1.5rem}.metrics-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.metrics-section{display:flex;flex-direction:column;gap:1rem}.section-title{font-size:.875rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin:0;padding-bottom:.5rem;border-bottom:2px solid #e5e7eb}.metrics-list{display:flex;flex-direction:column;gap:.75rem}.metric-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#f9fafb;border-radius:8px;transition:background-color .2s ease}.metric-row:hover{background:#f3f4f6}.metric-row:first-child{background:linear-gradient(135deg,#fef3c7,#fde68a);font-weight:600}.metric-row:first-child:hover{background:linear-gradient(135deg,#fde68a,#fcd34d)}.metric-label{font-size:.875rem;color:#374151;font-weight:500}.metric-row:first-child .metric-label{color:#92400e;font-weight:600}.metric-value{display:flex;align-items:center;gap:.75rem}.star-rating{display:flex;align-items:center;gap:2px}.half-star-container{position:relative;display:inline-flex;width:16px;height:16px}.metric-score{font-size:.875rem;font-weight:600;min-width:70px;text-align:right}.score-excellent{color:#059669}.score-good{color:#3b82f6}.score-average{color:#f59e0b}.score-poor{color:#ef4444}.metric-trend{display:flex;align-items:center;gap:.25rem;font-size:.75rem;font-weight:600;padding:.125rem .5rem;border-radius:4px}.trend-up{color:#059669;background:#d1fae5}.trend-down{color:#dc2626;background:#fee2e2}.card-footer{padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background:#f9fafb}.view-charts-button{display:flex;align-items:center;gap:.5rem;width:100%;padding:.75rem;background:var(--card-bg);border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;font-weight:500;color:#374151;cursor:pointer;transition:all .2s ease;justify-content:center}.view-charts-button:hover{background:#f3f4f6;border-color:#9ca3af}.view-charts-button:active{background:#e5e7eb}@media (max-width: 1024px){.metrics-grid{grid-template-columns:1fr;gap:1.5rem}.card-header{flex-direction:column;align-items:flex-start;gap:1rem}.overall-summary{width:100%;justify-content:space-around}}@media (max-width: 640px){.card-header,.card-body{padding:1rem}.card-title{font-size:1.125rem}.metric-row{flex-direction:column;align-items:flex-start;gap:.5rem}.metric-value{width:100%;justify-content:space-between}.overall-summary{flex-direction:column;gap:.5rem;padding:.75rem}.summary-divider{width:100%;height:1px}.summary-item{width:100%;justify-content:space-between}}.stats-page{padding:1rem 1rem 3rem;margin:0 auto;max-width:100vw;overflow-x:hidden;box-sizing:border-box;width:100%;background:var(--bg-primary);min-height:100vh;overflow-y:auto}.stats-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;flex-wrap:wrap;gap:.5rem}.stats-title{margin:0;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.stats-controls{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.breakdown-value.modern{font-size:.9rem;font-weight:600;color:var(--text-primary);background:transparent}.period-value-selector{display:flex;align-items:center;gap:.375rem}.action-buttons{display:flex;gap:.375rem}.action-button:hover{background-color:var(--bg-tertiary)}.action-button.primary:hover{background-color:var(--primary-hover, #333)}.stats-content{display:grid;grid-template-columns:repeat(12,1fr);gap:1rem;margin-top:1rem;max-width:100%}.section-container.modern{background:var(--bg-primary);border-radius:.375rem;padding:.5rem;box-shadow:var(--shadow-sm);border:.0625rem solid var(--border-color);margin-bottom:.625rem;max-width:100%;overflow-x:hidden;overflow-y:visible;width:100%}.metrics-grid.modern.primary{display:grid;grid-template-columns:repeat(auto-fit,minmax(11.25rem,1fr));gap:.625rem;margin-bottom:0;overflow:visible}.metrics-grid.modern.secondary{display:grid;grid-template-columns:repeat(auto-fit,minmax(9.375rem,1fr));gap:.5rem;margin-bottom:0;overflow:visible}.metric-card.modern.primary{background:var(--bg-secondary);border-radius:.375rem;padding:.625rem;display:flex;align-items:center;gap:.625rem;border:.0625rem solid var(--border-color);min-height:3.75rem;transition:all .2s ease;position:relative;overflow:visible}.metric-card.modern.secondary{background:#f8f8f8;border-radius:.375rem;padding:.5rem;display:flex;align-items:center;gap:.5rem;border:.0625rem solid #e8e8e8;min-height:3.125rem;transition:all .2s ease;overflow:visible}.metric-card.modern.secondary:hover{background:var(--card-bg);box-shadow:0 .125rem .5rem #0000000f;border-color:#d0d0d0}.metric-content{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0;overflow:visible}.metric-label.primary{font-size:.7rem;color:#555;font-weight:600;margin:0;text-transform:uppercase;letter-spacing:.3px;display:flex;align-items:center;gap:.25rem;overflow:visible}.metric-label.secondary{font-size:.75rem;color:#666;font-weight:600;margin:0;display:flex;align-items:center;gap:.25rem;overflow:visible}.customer-distribution-row{margin-bottom:16px}.customer-distribution-row:last-child{margin-bottom:0}.customer-row-label{font-size:.75rem;font-weight:600;color:#555;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.customer-grid.modern{display:grid;grid-template-columns:repeat(8,1fr);gap:6px}.customer-card.modern{background:#f5f5f5;border-radius:4px;padding:6px;text-align:center;border:1px solid #e5e5e5;transition:all .2s ease}.customer-card.modern:hover{background:var(--card-bg);border-color:#d0d0d0;box-shadow:0 1px 3px #0000000f}.customer-label{font-size:.65rem;color:#666;margin-bottom:3px;font-weight:500;line-height:1.2}.customer-value{font-size:.9rem;font-weight:700;color:#1a1a1a}.stats-header.modern{margin-bottom:20px;align-items:flex-start;padding:16px 0;border-bottom:1px solid #f0f0f0}.stats-title.modern{font-size:1.8rem;font-weight:800;color:#1a1a1a;letter-spacing:-.02em}.stats-controls.modern{gap:12px;align-items:center}.stats-content.modern{display:flex;flex-direction:column;gap:16px}.stats-graphs-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px}.bidding-chart-wrapper.enhanced{display:flex;flex-direction:column;flex:1}.chart-visualization-dynamic{height:300px}.stats-card{background:#fff;border-radius:6px;box-shadow:0 1px 3px #0000000f;padding:10px;border:1px solid #f0f0f0;display:flex;flex-direction:column;transition:all .2s ease;overflow:visible}.stats-card:hover{box-shadow:0 2px 8px #00000014;border-color:#e0e0e0}.card-header{margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid #f5f5f5}.card-title{font-size:.9rem;font-weight:600;color:#1a1a1a;margin:0 0 2px}.card-subtitle{font-size:.7rem;color:#666;margin:0;line-height:1.2}.card-content{flex:1;display:flex;flex-direction:column}.stats-page .chart-container{width:100%;--chart-height: 360px;height:min(var(--chart-height, 360px),70vw);min-height:min(var(--chart-height, 360px),70vw);max-height:min(var(--chart-height, 360px),70vw);margin-top:8px;overflow:visible}.stats-page .chart-container.chart-sm{--chart-height: 280px}.stats-page .chart-container.chart-md{--chart-height: 350px}.stats-page .chart-container.chart-lg{--chart-height: 450px}.stats-page .chart-container.chart-xl{--chart-height: 600px}.contractor-analysis-page .chart-container{height:400px!important;min-height:400px!important;max-height:400px!important;overflow:hidden!important}.analytics-row{display:grid;gap:1rem;max-height:none}.analytics-row.cols-1{grid-template-columns:1fr}.analytics-row.cols-2{grid-template-columns:1fr 1fr}.analytics-row.cols-3{grid-template-columns:1fr 1fr 1fr}.analytics-row.cols-2-1{grid-template-columns:2fr 1fr}.analytics-row.cols-1-2{grid-template-columns:1fr 2fr}.stats-bidding-chart-responsive{min-height:400px!important;height:400px!important;max-height:400px!important;overflow:hidden!important}.stats-chart-responsive{width:100%;--chart-height: 350px;height:min(var(--chart-height, 350px),70vw);min-height:min(var(--chart-height, 350px),70vw);max-height:min(var(--chart-height, 350px),70vw);overflow:visible}.stats-chart-responsive.chart-sm{--chart-height: 280px}.stats-chart-responsive.chart-md{--chart-height: 350px}.stats-chart-responsive.chart-lg{--chart-height: 450px}.stats-chart-responsive.chart-xl{--chart-height: 600px}.stats-loading-responsive{min-height:200px!important;height:200px!important;max-height:200px!important;overflow:hidden!important}.stats-card{max-height:700px;overflow:hidden}.stats-card .card-content{overflow:visible}.historical-charts-container{display:flex;flex-direction:column;gap:2rem}.historical-section-group{display:flex;flex-direction:column;gap:1rem}.historical-section-title{font-size:1rem;font-weight:700;color:#1a1a1a;margin:0;padding-bottom:.5rem;border-bottom:2px solid #e5e5e5}.historical-charts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.historical-chart-card{background:#fff;border-radius:6px;padding:.75rem;border:1px solid #e5e5e5;transition:all .2s ease;display:flex;flex-direction:column}.historical-chart-card:hover{box-shadow:0 2px 8px #00000014;border-color:#d0d0d0}.historical-chart-card.compact{padding:.5rem}.historical-chart-header{margin-bottom:.5rem}.historical-chart-title{font-size:.75rem;font-weight:600;color:#555;text-transform:uppercase;letter-spacing:.5px;margin:0}.historical-chart-content{flex:1;min-height:120px}.historical-chart-card.compact .historical-chart-content{min-height:80px}@media (max-width: 1200px){.metrics-grid.modern.primary{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px}.metrics-grid.modern.secondary{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px}.stats-graphs-grid{grid-template-columns:1fr;gap:14px}}@media (max-width: 768px){.stats-page,.section-container.modern{padding:8px}.metrics-grid.modern.primary{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:4px}.metrics-grid.modern.secondary{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:4px}.customer-grid.modern{grid-template-columns:repeat(8,1fr);gap:4px}.metric-value.primary{font-size:1.1rem}.metric-value.secondary{font-size:.95rem}.stats-title.modern{font-size:1.4rem}.metric-card.modern.primary{padding:6px;min-height:45px}.metric-card.modern.secondary{padding:5px;min-height:40px}.chart-container{height:min(var(--chart-height, 320px),85vw)!important;min-height:min(var(--chart-height, 320px),85vw)!important;max-height:min(var(--chart-height, 320px),85vw)!important;overflow:visible!important}.stats-controls{flex-wrap:wrap;gap:6px}.customer-label{font-size:.6rem}.customer-value{font-size:.8rem}.stats-card{max-height:none;overflow:visible}.stats-chart-responsive{height:min(var(--chart-height, 320px),85vw);min-height:min(var(--chart-height, 320px),85vw);max-height:min(var(--chart-height, 320px),85vw)}.analytics-row.cols-2,.analytics-row.cols-3,.analytics-row.cols-2-1,.analytics-row.cols-1-2{grid-template-columns:1fr}}@media (max-width: 600px){.metrics-grid.modern.primary,.metrics-grid.modern.secondary{grid-template-columns:1fr 1fr;gap:6px}.stats-header{flex-direction:column;align-items:flex-start;gap:12px}.stats-controls{width:100%;justify-content:flex-start}.stats-page .chart-container{height:min(var(--chart-height, 320px),90vw);min-height:min(var(--chart-height, 320px),90vw);max-height:min(var(--chart-height, 320px),90vw)}}@media (max-width: 480px){.metrics-grid.modern.primary,.metrics-grid.modern.secondary{grid-template-columns:1fr}.metric-card.modern.primary,.metric-card.modern.secondary{min-height:40px;padding:6px}.metric-value.primary{font-size:1.1rem}.metric-value.secondary{font-size:.95rem}}.pdf-preview-modal{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.pdf-preview-content{background-color:var(--card-bg);border-radius:8px;padding:20px;max-width:90%;max-height:90%;overflow:auto;position:relative}.pdf-preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.pdf-preview-title{font-size:20px;font-weight:600;margin:0}.pdf-preview-close{background:none;border:none;font-size:24px;cursor:pointer;color:#555}.pdf-preview-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px}.pdf-preview-iframe{width:100%;height:70vh;border:1px solid #eee}.loading-indicator.modern{display:flex;flex-direction:column;align-items:center;justify-content:center}.loading-text{text-align:center;max-width:500px}.loading-text h3{margin:0 0 8px;font-size:18px;font-weight:600;color:#333}.loading-text p{margin:0;font-size:14px;color:#666;line-height:1.4}.loading-spinner{color:#fbfbfb}.error-message.modern{background:#fef2f2;color:#dc2626;padding:12px;border-radius:6px;border:1px solid #fecaca;margin-bottom:16px;font-weight:500;font-size:.9rem}.metric-value{font-size:24px;font-weight:600;margin:0;color:#1a1a1a}.metric-label{font-size:12px;color:#777;margin-top:4px}.metric-change{margin-top:6px;font-size:12px;display:flex;align-items:center;gap:3px}.metric-change.positive{color:#4caf50}.metric-change.negative{color:#f44336}.error-message{background-color:var(--error-bg, #fff5f5);color:var(--error-color);padding:.75rem;border-radius:.375rem;border:1px solid var(--error-border, #fed7d7);margin-bottom:1rem}.loading-indicator{display:flex;justify-content:center;align-items:center;color:var(--text-secondary)}@media (max-width: 768px){.stats-page{padding:.5rem}.stats-header{flex-direction:column;align-items:flex-start;gap:.75rem}.stats-controls{width:100%;justify-content:flex-start}.period-selector{width:100%;justify-content:space-around}.stats-content{gap:.75rem}.metrics-grid.modern.primary{grid-template-columns:1fr;gap:.5rem}.metrics-grid.modern.secondary{grid-template-columns:1fr;gap:.375rem}.section-container.modern{padding:.375rem;margin-bottom:.5rem}.metric-card.modern.primary{min-height:3rem;padding:.5rem;gap:.5rem}}@media (min-width: 769px) and (max-width: 1024px){.stats-page{padding:1rem}.metrics-grid.modern.primary{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr))}.metrics-grid.modern.secondary{grid-template-columns:repeat(auto-fit,minmax(8rem,1fr))}}@media (min-width: 1200px){.stats-page{padding:1.5rem;max-width:1400px;margin:0 auto}.stats-content{gap:1.5rem}}.stats-page .stats-page-chart{height:auto!important;max-height:500px!important;overflow-y:auto!important;overflow-x:hidden!important}.stats-page .stats-page-chart .chart-container{height:400px!important;max-height:400px!important;overflow:hidden!important}.stats-page .stats-page-chart canvas{max-width:100%!important;height:100%!important;max-height:100%!important}.stats-page .chart-container{width:100%;height:350px!important;min-height:350px!important;max-height:350px!important;overflow:visible!important}.stats-page .bidding-chart-wrapper.enhanced{width:100%;height:auto!important;min-height:80vh!important;max-height:none!important;overflow:visible!important}.stats-page .modern-bidding-chart{width:100%;height:auto!important;min-height:650px!important;display:flex;flex-direction:column}.stats-page .historical-data-section{height:auto!important;min-height:450px!important;margin-top:20px}.stats-page .chart-visualization-dynamic{width:100%;height:auto!important;min-height:400px!important}.stats-page .chart-content-wrapper{position:relative;width:100%;height:auto!important;min-height:350px!important}.stats-page canvas{width:100%!important;height:100%!important}.stats-page .live-data-section{flex-shrink:0;margin-bottom:1rem}.stats-page .historical-data-section{flex:1;display:flex;flex-direction:column}.stats-page .bidding-chart-container{min-height:auto!important;height:auto!important;max-height:none!important;overflow:visible!important}.stats-page .bidding-chart-container .bidding-chart-wrapper{min-height:80vh!important;height:auto!important;max-height:none!important;overflow:visible!important}@keyframes skeleton-pulse{0%{opacity:1}50%{opacity:.4}to{opacity:1}}@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-pulse{background:linear-gradient(90deg,#e5e7eb,#f3f4f6,#e5e7eb);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-radius:4px}.skeleton-container{position:relative}.chart-skeleton{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding:1rem;background:#f8fafc;border-radius:8px;border:1px solid #e5e7eb}.chart-skeleton-bars{display:flex;align-items:flex-end;justify-content:space-around;width:100%;height:80%;gap:8px;padding:0 1rem}.chart-skeleton-bar{flex:1;max-width:60px;background:linear-gradient(90deg,#e5e7eb,#f3f4f6,#e5e7eb);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-radius:4px 4px 0 0;min-height:20px}.chart-skeleton-label{width:100%;margin-top:1rem}.metric-card.skeleton-container{opacity:1}.metric-card.skeleton-container .metric-icon{background:#e5e7eb}.customer-card.skeleton-container{opacity:1}@media (prefers-color-scheme: dark){.skeleton-pulse{background:linear-gradient(90deg,#37415180,#4b556380,#37415180);background-size:200% 100%}.chart-skeleton{background:#1f293780;border-color:#4b556380}.chart-skeleton-bar{background:linear-gradient(90deg,#37415180,#4b556380,#37415180);background-size:200% 100%}.metric-card.skeleton-container .metric-icon{background:#37415180}}.metric-card:not(.skeleton-container),.stats-card:not(.skeleton-container),.customer-card:not(.skeleton-container){animation:fadeIn .3s ease-out}.metrics-grid>*:nth-child(1){animation-delay:0ms}.metrics-grid>*:nth-child(2){animation-delay:50ms}.metrics-grid>*:nth-child(3){animation-delay:.1s}.metrics-grid>*:nth-child(4){animation-delay:.15s}.metrics-grid>*:nth-child(5){animation-delay:.2s}.customer-grid>*:nth-child(1){animation-delay:0ms}.customer-grid>*:nth-child(2){animation-delay:25ms}.customer-grid>*:nth-child(3){animation-delay:50ms}.customer-grid>*:nth-child(4){animation-delay:75ms}.customer-grid>*:nth-child(5){animation-delay:.1s}.customer-grid>*:nth-child(6){animation-delay:125ms}.customer-grid>*:nth-child(7){animation-delay:.15s}.customer-grid>*:nth-child(8){animation-delay:175ms}.customer-grid>*:nth-child(n+9){animation-delay:.2s}.analytics-row>*:nth-child(1){animation-delay:0ms}.analytics-row>*:nth-child(2){animation-delay:.1s}.analytics-row>*:nth-child(3){animation-delay:.2s}[data-theme=dark] .stats-page{background:var(--bg-primary);color:var(--text-primary)}[data-theme=dark] .stats-card{background:var(--card-bg);border-color:var(--border-color);box-shadow:none}[data-theme=dark] .metric-card.modern.primary,[data-theme=dark] .metric-card.modern.secondary,[data-theme=dark] .customer-card.modern{background:var(--card-bg);border-color:var(--border-color);box-shadow:none;color:var(--text-primary)}[data-theme=dark] .historical-chart-card{background:var(--card-bg);border-color:var(--border-color);box-shadow:none}[data-theme=dark] .historical-chart-card:hover{border-color:var(--border-color);box-shadow:none}[data-theme=dark] .historical-section-title,[data-theme=dark] .historical-chart-title{color:var(--text-secondary);border-color:var(--border-color)}[data-theme=dark] .stats-card:hover{border-color:var(--border-color);box-shadow:none}[data-theme=dark] .card-header{border-color:var(--border-color)}[data-theme=dark] .card-title{color:var(--text-primary)}[data-theme=dark] .stats-page .chart-container{background:transparent}.info-tooltip-container{position:relative;display:inline-flex;align-items:center;margin-left:.375rem;overflow:visible;z-index:1}.info-tooltip-trigger{background:none;border:none;padding:0;cursor:help;display:inline-flex;align-items:center;justify-content:center;color:#6b7280;transition:color .2s ease;outline:none;flex-shrink:0;overflow:visible}.info-tooltip-trigger:hover{color:#3b82f6}.info-tooltip-trigger:focus{outline:2px solid #3b82f6;outline-offset:2px;border-radius:4px}.info-tooltip-popup{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:var(--card-bg);border:1px solid #e5e7eb;border-radius:8px;padding:.75rem;box-shadow:0 10px 25px #00000026;z-index:10000;min-width:250px;max-width:350px;animation:tooltipFadeIn .2s ease;pointer-events:none;overflow:visible}.info-tooltip-popup:before{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#fff}.info-tooltip-popup:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:7px solid transparent;border-top-color:#e5e7eb;margin-top:1px;z-index:-1}.info-tooltip-title{font-weight:600;font-size:.875rem;color:#1f2937;margin-bottom:.375rem}.info-tooltip-content{font-size:.8125rem;color:#4b5563;line-height:1.5}@keyframes tooltipFadeIn{0%{opacity:0;transform:translate(-50%) translateY(-4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@media (max-width: 768px){.info-tooltip-popup{min-width:200px;max-width:280px;font-size:.75rem}.info-tooltip-title{font-size:.8125rem}}.excel-table-container{width:100%;overflow:visible;background:#fff;border-radius:8px;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding-bottom:0}.excel-table-controls-modern{background:#fff;border-radius:8px 8px 0 0;border-bottom:2px solid #e5e7eb}.controls-single-row{display:flex;justify-content:space-between;align-items:center;padding:.875rem 1.5rem;gap:1.5rem}.period-display{display:flex;align-items:center;flex:1}.period-text{font-size:.875rem;font-weight:600;color:#1a1a1a}.controls-center{display:flex;justify-content:flex-end}.toggle-switch-container{display:inline-flex;background:#f3f4f6;border-radius:6px;padding:.25rem;gap:.25rem}.toggle-option{padding:.375rem .875rem;border:none;border-radius:4px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s ease;background:transparent;color:#6b7280;white-space:nowrap}.toggle-option:hover{background:#e5e7eb;color:#1a1a1a}.toggle-option.active{background:#1a1a1a;color:#fff;box-shadow:0 1px 2px #0000001a}.controls-actions{display:flex;gap:.5rem;align-items:center}.control-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap;background:#fff;color:#6b7280}.control-btn:hover{background:#f9fafb;border-color:#9ca3af;color:#1a1a1a}.control-btn-primary{background:#1a1a1a;color:#fff;border-color:#1a1a1a}.control-btn-primary:hover{background:#000}.excel-table-wrapper{width:100%;overflow-x:auto;overflow-y:visible;position:relative;padding:1rem 0 1.5rem;background:#fff;border-radius:0 0 8px 8px}.excel-table thead th,.excel-table tbody td{box-sizing:border-box}.excel-table{width:max-content;min-width:100%;border-collapse:collapse;font-size:.8125rem;background:#fff;table-layout:auto;border:1px solid #e5e7eb}.excel-table thead th,.excel-table tbody td{box-sizing:border-box;vertical-align:middle;display:table-cell;overflow:hidden;text-overflow:ellipsis}.excel-table thead th[style*=min-width],.excel-table tbody td[style*=min-width]{min-width:inherit!important}.excel-table thead th[style*=max-width],.excel-table tbody td[style*=max-width]{max-width:inherit!important}.excel-table th:first-child,.excel-table td:first-child{position:sticky;left:0;z-index:15;font-weight:600;width:200px;min-width:200px;max-width:200px;box-shadow:2px 0 4px #00000008;display:table-cell}.excel-table tbody td:first-child{background:#fff}.excel-table thead th:first-child{background:#f3f4f6}.excel-table thead{position:sticky;top:0;z-index:20}.excel-table thead th{position:sticky;top:0}.excel-table .metric-name-header,.excel-table .metric-name-subheader{z-index:25}.month-header{background:#f9fafb;font-weight:700;text-align:center;padding:.75rem .5rem;border:1px solid #e5e7eb;text-transform:uppercase;font-size:.6875rem;letter-spacing:.5px;color:#1a1a1a;white-space:nowrap;box-sizing:border-box}.week-header{background:#fff;font-weight:600;text-align:center;padding:.5rem .375rem;border:1px solid #e5e7eb;font-size:.6875rem;width:70px;min-width:70px;max-width:70px;color:#6b7280;white-space:nowrap;box-sizing:border-box}.month-sum-header{background:#f3f4f6;font-weight:700;text-align:center;padding:.5rem;border:1px solid #e5e7eb;border-left:2px solid #9ca3af;font-size:.6875rem;width:80px;min-width:80px;max-width:80px;color:#1a1a1a;white-space:nowrap;box-sizing:border-box}.sum-header,.budget-header{background:#f3f4f6;font-weight:700;text-align:center;padding:.5rem;border:1px solid #e5e7eb;border-left:2px solid #9ca3af;font-size:.6875rem;width:100px;min-width:100px;max-width:100px;color:#1a1a1a;white-space:nowrap;vertical-align:middle;box-sizing:border-box}.metric-name-header{padding:.5rem;text-align:center;font-weight:700;font-size:.6875rem;text-transform:uppercase;letter-spacing:.5px;color:#1a1a1a;background:#f3f4f6;border:1px solid #e5e7eb;border-left:2px solid #9ca3af;vertical-align:middle;width:200px;min-width:200px;max-width:200px;box-sizing:border-box;white-space:nowrap}.excel-table tbody td{padding:.625rem .5rem;text-align:right;border:1px solid #e5e7eb;font-variant-numeric:tabular-nums;color:#374151;transition:background .15s ease;font-weight:500;font-size:.8125rem;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis}.excel-table tbody tr.excel-metric-row td,.excel-table colgroup,.excel-table col{width:auto}.excel-table tbody .metric-name{text-align:left;padding-left:1rem;padding-right:1rem;font-weight:600;color:#1a1a1a;display:table-cell;background:#fff;border:1px solid #e5e7eb;vertical-align:middle;width:200px;min-width:200px;max-width:200px;box-sizing:border-box}.excel-table tbody .metric-name .metric-name-text{display:inline-block;vertical-align:middle;margin-right:.5rem}.excel-table tbody .metric-name .info-tooltip-wrapper,.excel-table tbody .metric-name [class*=tooltip]{display:inline-block;vertical-align:middle}.metric-name-text{flex:1;font-size:.8125rem}.week-cell{width:70px;min-width:70px;max-width:70px;text-align:right;box-sizing:border-box}.excel-table tbody tr:hover{background:#fafafa}.excel-table tbody tr:hover .metric-name{background:#f9fafb}.sum-cell{background:#f3f4f6;font-weight:700;color:#1a1a1a;border:1px solid #e5e7eb;border-left:2px solid #9ca3af}.excel-table tbody tr:hover .sum-cell{background:#e5e7eb}.month-sum-cell{width:80px;min-width:80px;max-width:80px;text-align:right;box-sizing:border-box}.year-sum-cell{width:100px;min-width:100px;max-width:100px;text-align:right;box-sizing:border-box}.budget-cell{background:#f3f4f6;font-weight:600;color:#1a1a1a;width:100px;min-width:100px;max-width:100px;border:1px solid #e5e7eb;border-left:2px solid #9ca3af;text-align:right;box-sizing:border-box}.excel-table tbody tr:hover .budget-cell{background:#e5e7eb}.category-separator{height:8px;background:#f9fafb}.category-separator td{border:none!important;padding:0!important}.excel-table-error,.excel-table-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;text-align:center;color:var(--text-secondary, #6b7280)}.excel-table-error p,.excel-table-empty p{margin:0 0 1rem;font-size:1rem}.retry-button{padding:.5rem 1rem;background:var(--primary-color, #000);color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.retry-button:hover{background:var(--primary-hover, #333);transform:translateY(-1px);box-shadow:0 4px 8px #0003}.excel-table-skeleton{padding:1.5rem}.skeleton-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;gap:1rem}.skeleton-controls-left,.skeleton-controls-right{display:flex;align-items:center;gap:.75rem}.skeleton-table-wrapper{overflow:hidden;border-radius:8px;border:1px solid var(--border-color, #e5e7eb)}.skeleton-table{width:100%;border-collapse:collapse}.skeleton-table th,.skeleton-table td{padding:.5rem;text-align:center}.skeleton-pulse{background:linear-gradient(90deg,#f0f0f0,#f8f8f8,#f0f0f0);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px;display:inline-block}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@media (max-width: 1024px){.excel-table{font-size:.75rem;min-width:1600px}.excel-table tbody td{padding:.5rem .375rem}.excel-table th:first-child,.excel-table td:first-child{min-width:180px;max-width:180px}.week-header,.week-cell{min-width:55px;max-width:55px}}@media (max-width: 768px){.controls-single-row{flex-direction:column;align-items:stretch;padding:1rem;gap:1rem}.period-display{width:100%;justify-content:center}.controls-center,.toggle-switch-container{width:100%}.toggle-option{flex:1;justify-content:center}.controls-actions{width:100%;justify-content:stretch}.control-btn{flex:1;justify-content:center}.excel-table{font-size:.6875rem;min-width:1400px}.excel-table th:first-child,.excel-table td:first-child{min-width:150px;max-width:150px}.week-header,.week-cell{min-width:50px;max-width:50px;font-size:.625rem}.month-header{font-size:.6875rem}}@media (max-width: 480px){.excel-table{min-width:1200px}}@media print{.excel-table-controls-modern{display:none}.excel-table-wrapper{overflow:visible}.excel-table{font-size:8pt}.excel-table thead th,.excel-table th:first-child,.excel-table td:first-child{position:static}}.spinning{animation:spin 1s linear infinite}[data-theme=dark] .excel-table-container{background:var(--card-bg);border:1px solid rgba(0,212,255,.15);box-shadow:0 0 25px #00d4ff1a}[data-theme=dark] .excel-table-controls-modern{background:var(--card-bg);border-bottom:2px solid rgba(0,212,255,.2)}[data-theme=dark] .period-text{color:var(--text-primary)}[data-theme=dark] .toggle-switch-container{background:var(--bg-secondary)}[data-theme=dark] .toggle-option{background:transparent;color:var(--text-secondary)}[data-theme=dark] .toggle-option:hover{background:var(--bg-tertiary);color:var(--text-primary)}[data-theme=dark] .toggle-option.active{background:var(--gradient-primary);color:#fff;box-shadow:0 0 15px #00d4ff4d}[data-theme=dark] .control-btn{background:var(--bg-secondary);border:1px solid rgba(0,212,255,.2);color:var(--text-secondary)}[data-theme=dark] .control-btn:hover{background:var(--bg-tertiary);border-color:var(--accent-color);color:var(--text-primary)}[data-theme=dark] .control-btn-primary{background:var(--gradient-primary);color:#fff;border-color:var(--accent-color);box-shadow:0 0 15px #00d4ff4d}[data-theme=dark] .control-btn-primary:hover{box-shadow:0 0 25px #00d4ff80}[data-theme=dark] .excel-table-wrapper{background:var(--card-bg)}[data-theme=dark] .excel-table{background:var(--card-bg);border:1px solid rgba(0,212,255,.15)}[data-theme=dark] .excel-table tbody td:first-child{background:var(--card-bg)}[data-theme=dark] .excel-table thead th:first-child{background:var(--bg-secondary)}[data-theme=dark] .month-header{background:var(--bg-secondary);border:1px solid rgba(0,212,255,.15);color:var(--text-primary)}[data-theme=dark] .week-header{background:var(--card-bg);border:1px solid rgba(0,212,255,.15);color:var(--text-secondary)}[data-theme=dark] .month-sum-header,[data-theme=dark] .sum-header,[data-theme=dark] .budget-header,[data-theme=dark] .metric-name-header{background:var(--bg-secondary);border:1px solid rgba(0,212,255,.15);border-left:2px solid rgba(0,212,255,.3);color:var(--text-primary)}[data-theme=dark] .excel-table tbody td{border:1px solid rgba(0,212,255,.08);color:var(--text-secondary)}[data-theme=dark] .excel-table tbody .metric-name{background:var(--card-bg);border:1px solid rgba(0,212,255,.15);color:var(--text-primary)}[data-theme=dark] .excel-table tbody tr:hover{background:#00d4ff0d}[data-theme=dark] .excel-table tbody tr:hover .metric-name{background:#00d4ff14}[data-theme=dark] .sum-cell{background:var(--bg-secondary);color:var(--text-primary);border:1px solid rgba(0,212,255,.15);border-left:2px solid rgba(0,212,255,.3)}[data-theme=dark] .excel-table tbody tr:hover .sum-cell{background:var(--bg-tertiary)}[data-theme=dark] .budget-cell{background:var(--bg-secondary);color:var(--text-primary);border:1px solid rgba(0,212,255,.15);border-left:2px solid rgba(0,212,255,.3)}[data-theme=dark] .excel-table tbody tr:hover .budget-cell{background:var(--bg-tertiary)}[data-theme=dark] .category-separator{background:var(--bg-secondary)}[data-theme=dark] .excel-table-error,[data-theme=dark] .excel-table-empty{color:var(--text-muted)}[data-theme=dark] .retry-button{background:var(--gradient-primary);box-shadow:0 0 15px #00d4ff4d}[data-theme=dark] .retry-button:hover{box-shadow:0 0 25px #00d4ff80}[data-theme=dark] .skeleton-table-wrapper{border:1px solid rgba(0,212,255,.15)}[data-theme=dark] .skeleton-pulse{background:linear-gradient(90deg,var(--bg-secondary) 0%,var(--bg-tertiary) 50%,var(--bg-secondary) 100%)}.analytics-dashboard-page{padding:var(--spacing-xl);max-width:1400px;margin:0 auto}.analytics-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-lg);border-bottom:2px solid var(--border-color)}.analytics-header.modern{display:flex;flex-direction:column;align-items:flex-start;margin-bottom:1rem;gap:1rem;padding-bottom:0;border-bottom:none}.analytics-title.modern{margin:0;font-size:1.8rem;font-weight:800;color:#1a1a1a;letter-spacing:-.02em}.analytics-controls.modern{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;width:100%}.header-title{display:flex;align-items:center;gap:var(--spacing-md)}.header-title h1{margin:0;font-size:2rem;font-weight:700;color:var(--text-primary)}.date-filter-section{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-2xl)}.filter-row{display:flex;align-items:center;gap:var(--spacing-lg);flex-wrap:wrap}.preset-buttons{display:flex;gap:var(--spacing-xs)}.preset-btn{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-secondary);color:var(--text-primary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.preset-btn:hover{border-color:var(--primary-color);background:var(--bg-primary)}.preset-btn.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.custom-date-range{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm)}.custom-date-range svg{color:var(--text-secondary)}.date-input{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-xs);background:var(--bg-primary);color:var(--text-primary);font-size:.875rem}.date-input:focus{outline:none;border-color:var(--primary-color)}.date-separator{color:var(--text-secondary);font-size:.875rem}.apply-filter-btn{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);background:var(--primary-color);color:#fff;border:none;border-radius:var(--radius-sm);font-weight:600;cursor:pointer;transition:all .2s ease;margin-left:auto}.apply-filter-btn:hover:not(:disabled){background:var(--text-primary);transform:translateY(-1px);box-shadow:var(--shadow-md)}.apply-filter-btn:disabled{opacity:.6;cursor:not-allowed}.active-filter-display{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border-color);font-size:.875rem;color:var(--text-secondary)}.active-filter-display strong{color:var(--text-primary)}.analytics-empty{text-align:center;padding:var(--spacing-2xl);color:var(--text-secondary)}.header-controls{display:flex;gap:var(--spacing-md);align-items:center}.period-selector{display:flex;gap:.25rem;background-color:var(--bg-tertiary);padding:.25rem;border-radius:.5rem}.period-selector button{padding:.25rem .5rem;border:none;background:none;border-radius:.375rem;cursor:pointer;font-weight:500;font-size:.75rem;transition:all .2s;color:var(--text-secondary);min-height:2.25rem}.period-selector button.active{background-color:var(--bg-primary);color:var(--text-primary);box-shadow:var(--shadow-sm)}.custom-date-selector label{display:flex;align-items:center;gap:.375rem;font-size:.8rem;font-weight:500;color:var(--text-primary)}.custom-date-selector input[type=date]{padding:.25rem .375rem;border:.0625rem solid var(--border-color);border-radius:.375rem;background-color:var(--bg-primary);min-width:8rem;font-size:.8rem;color:var(--text-primary);min-height:2.25rem}.period-value-selector{display:flex;align-items:center;gap:.375rem;min-width:0;flex-shrink:0}.period-value-selector:empty{min-width:18rem}.period-value-selector select,.period-value-selector input{padding:.25rem .375rem;border:.0625rem solid var(--border-color);border-radius:.375rem;background-color:var(--bg-primary);min-width:3.75rem;font-size:.8rem;color:var(--text-primary);min-height:2.25rem}.custom-date-selector{display:flex;align-items:center;gap:.75rem}.action-buttons{display:flex;gap:.375rem;margin-left:auto}.action-button{display:flex;align-items:center;gap:.25rem;padding:.375rem .5rem;border:none;border-radius:.375rem;background-color:var(--bg-secondary);cursor:pointer;font-size:.75rem;transition:background-color .2s;color:var(--text-primary);min-height:2.25rem}.action-button.primary{background-color:var(--primary-color);color:#fff}.action-button:hover:not(:disabled){background-color:var(--bg-tertiary)}.action-button.primary:hover:not(:disabled){background-color:var(--primary-hover, #333)}.action-button:disabled{opacity:.6;cursor:not-allowed}.animate-spin{animation:spin 1s linear infinite}.refresh-button{padding:var(--spacing-sm) var(--spacing-lg);background:var(--primary-color);color:#fff;border:none;border-radius:var(--radius-sm);font-weight:600;cursor:pointer;transition:all .2s ease}.refresh-button:hover:not(:disabled){background:var(--text-primary);transform:translateY(-1px);box-shadow:var(--shadow-md)}.refresh-button:disabled{opacity:.6;cursor:not-allowed}.section-container.modern{background:var(--bg-primary);border-radius:.375rem;padding:.5rem;box-shadow:var(--shadow-sm);border:.0625rem solid var(--border-color);margin-bottom:.625rem;max-width:100%;overflow-x:hidden;width:100%}.section-header.modern{margin-bottom:.5rem;text-align:left}.section-title.modern{font-size:1rem;font-weight:700;color:var(--text-primary);margin:0 0 .25rem;letter-spacing:-.02em}.section-description.modern{font-size:.7rem;color:var(--text-secondary);margin:0;line-height:1.3}.metrics-grid.modern.primary{display:grid;grid-template-columns:repeat(auto-fit,minmax(11.25rem,1fr));gap:.625rem;margin-bottom:0}.metrics-grid.modern.secondary{display:grid;grid-template-columns:repeat(auto-fit,minmax(9.375rem,1fr));gap:.5rem;margin-bottom:0}.metric-card.modern.primary{background:var(--bg-secondary);border-radius:.375rem;padding:.625rem;display:flex;align-items:center;gap:.625rem;border:.0625rem solid var(--border-color);min-height:3.75rem;transition:all .2s ease;position:relative}.metric-card.modern.primary:hover{transform:translateY(-.0625rem);box-shadow:var(--shadow-md);border-color:var(--border-color);background:var(--bg-primary)}.metric-card.modern.primary:before{content:"";position:absolute;top:0;left:0;right:0;height:.125rem;background:linear-gradient(90deg,#1a1a1a,#4a4a4a);border-radius:.375rem .375rem 0 0}.metric-icon.primary{width:2rem;height:2rem;border-radius:.375rem;display:flex;align-items:center;justify-content:center;background:#1a1a1a;color:#fff;flex-shrink:0;box-shadow:0 .125rem .25rem #1a1a1a26}.metric-icon.secondary{width:1.75rem;height:1.75rem;border-radius:.3125rem;display:flex;align-items:center;justify-content:center;background:#333;color:#fff;flex-shrink:0}.metric-content{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.metric-label.primary{font-size:.7rem;color:#555;font-weight:600;margin:0;text-transform:uppercase;letter-spacing:.3px;display:flex;align-items:center;gap:.25rem}.metric-label.secondary{font-size:.75rem;color:#666;font-weight:600;margin:0;display:flex;align-items:center;gap:.25rem}.metric-value.primary{font-size:1.4rem;font-weight:800;color:#1a1a1a;margin:2px 0;line-height:1;letter-spacing:-.02em}.metric-value.secondary{font-size:1.1rem;font-weight:700;color:#1a1a1a;margin:2px 0;line-height:1}.metric-context{font-size:.7rem;color:#888;margin:0;font-weight:500}.ai-performance-section{margin-bottom:1.5rem;background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1rem;box-shadow:0 1px 2px #0000000a}.ai-section-header{margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.ai-section-title{margin:0;font-size:1.125rem;font-weight:600;color:#111827;letter-spacing:-.01em}.ai-performance-content{display:flex;flex-direction:column;gap:1.25rem}.ai-metrics-compact-section{margin-bottom:0}.ai-subsection{display:flex;flex-direction:column;gap:.75rem;padding-top:.75rem;border-top:1px solid #e5e7eb}.ai-subsection:first-of-type{border-top:none;padding-top:0}.ai-subsection-title{margin:0;font-size:.875rem;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.3px}.metrics-card-compact{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1.25rem;box-shadow:0 1px 2px #0000000a;display:flex;flex-direction:column;gap:0}.metric-row{display:flex;align-items:center;gap:1rem;padding:.75rem;background:#fafafa;border-radius:.5rem;border:1px solid #f0f0f0;transition:all .15s ease}.metric-row:hover{background:#f5f5f5;border-color:#e5e7eb}.metric-row-label{display:flex;flex-direction:column;gap:.25rem;min-width:140px;flex-shrink:0}.metric-title{font-size:.8125rem;font-weight:600;color:#374151;letter-spacing:.01em}.metric-row-content{display:flex;align-items:center;gap:1rem;flex:1;flex-wrap:wrap}.ai-metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.625rem;width:100%}.ai-metric-item{display:flex;flex-direction:column;gap:.375rem;padding:.75rem;background:#f9fafb;border-radius:.5rem;border:1px solid #e5e7eb;transition:all .2s ease;min-width:0}.ai-metric-item:hover{background:#f9fafb;border-color:#d1d5db;box-shadow:0 1px 3px #0000000d}.ai-metric-label{font-size:.6875rem;color:#6b7280;font-weight:600;text-transform:uppercase;letter-spacing:.3px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ai-metric-value{font-size:1.25rem;font-weight:700;color:#111827;line-height:1.2;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ai-metric-context{font-size:.6875rem;color:#9ca3af;font-weight:500;margin-top:.125rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ai-metric-item.variant-card{cursor:pointer}.ai-metric-item.variant-card:hover{background:#f3f4f6;border-color:#9ca3af}.ai-metric-item.empty-metric{display:flex;align-items:center;justify-content:center;color:#9ca3af;font-style:italic}.variant-expanded-details{margin-top:.5rem;padding-top:.5rem;border-top:1px solid #e5e7eb;display:flex;flex-direction:column;gap:.25rem}.variant-detail-row{display:flex;justify-content:space-between;font-size:.6875rem;color:#6b7280}.variant-detail-row span:last-child{font-weight:600;color:#374151}.questions-table-wrapper{width:100%;overflow-x:auto;border:1px solid #e5e7eb;border-radius:.5rem;overflow:hidden}.questions-table-inline{width:100%;border-collapse:collapse;background:#fff;font-size:.8125rem}.questions-table-inline thead{background:#f9fafb}.questions-table-inline th{padding:.625rem .75rem;text-align:left;font-weight:600;font-size:.75rem;color:#374151;border-bottom:2px solid #e5e7eb;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}.questions-table-inline tbody tr{border-bottom:1px solid #f3f4f6}.questions-table-inline tbody tr:last-child{border-bottom:none}.questions-table-inline td{padding:.625rem .75rem;font-size:.8125rem;color:#111827}.metric-name-cell{font-weight:600;color:#374151;text-transform:uppercase;font-size:.75rem;letter-spacing:.3px}.metric-value-cell{font-weight:700;font-size:1rem;color:#111827}.metric-context-cell{color:#6b7280;font-size:.75rem}.empty-message-cell{text-align:center;color:#9ca3af;font-style:italic;padding:1rem!important}.variants-table-wrapper{width:100%;overflow-x:auto;border:1px solid #e5e7eb;border-radius:.5rem;overflow:hidden}.variants-table-inline{width:100%;border-collapse:collapse;background:#fff;font-size:.8125rem}.variants-table-inline thead{background:#f9fafb}.variants-table-inline th{padding:.625rem .75rem;text-align:left;font-weight:600;font-size:.75rem;color:#374151;border-bottom:2px solid #e5e7eb;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}.variants-table-inline tbody tr{border-bottom:1px solid #f3f4f6;cursor:pointer;transition:background .15s ease}.variants-table-inline tbody tr:hover,.variants-table-inline tbody tr.expanded{background:#f9fafb}.variants-table-inline td{padding:.625rem .75rem;font-size:.8125rem;color:#111827;white-space:nowrap}.variant-name-cell{display:flex;flex-direction:column;gap:.125rem}.variant-name-primary{font-weight:600;color:#111827;font-size:.8125rem}.variant-id-small{font-size:.6875rem;color:#6b7280}.rating-score-inline{font-weight:600;font-size:.8125rem}.variant-details-row-inline{background:#f9fafb}.variant-details-row-inline td{padding:.75rem;border-top:1px solid #e5e7eb}.variant-details-inline{display:flex;gap:1.5rem;flex-wrap:wrap}.variant-detail-item{display:flex;gap:.5rem;align-items:center}.variant-detail-item .detail-label{font-size:.75rem;color:#6b7280;font-weight:500}.variant-detail-item .detail-value{font-size:.8125rem;color:#111827;font-weight:600}@media (max-width: 1024px){.metric-row{flex-direction:column;align-items:flex-start}.metric-row-label,.metric-row-content{width:100%}.ai-metrics-grid{grid-template-columns:repeat(2,1fr);gap:.625rem}.ai-performance-section{padding:.875rem}.variants-table-container-compact{max-height:300px}}@media (max-width: 1200px){.ai-metrics-grid{grid-template-columns:repeat(2,1fr);gap:.625rem}}@media (max-width: 768px){.ai-section-title{font-size:1rem}.ai-performance-section{padding:.75rem}.ai-metrics-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}.variants-table-container-compact{max-height:250px}.variants-table-compact th,.variants-table-compact td{padding:.5rem .625rem;font-size:.75rem}.metrics-card-compact{padding:1rem}.metric-row{padding:.625rem}.ai-metrics-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.ai-metric-item{padding:.875rem}.ai-metric-value{font-size:1.25rem}.ai-metric-label,.ai-metric-context{font-size:.625rem}}@media (max-width: 480px){.ai-metrics-grid{grid-template-columns:1fr}.ai-performance-section{padding:.625rem}.variants-table-container-compact{max-height:200px}.variants-table-container-compact{max-height:250px}.variants-table-compact th,.variants-table-compact td{padding:.5rem;font-size:.6875rem}.variant-name-compact{min-width:100px}}.kpi-section{margin-bottom:var(--spacing-2xl)}.section-header{margin-bottom:1.25rem}.section-title{font-size:1.5rem;font-weight:600;margin:0;color:#111827;letter-spacing:-.01em}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.kpi-card{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1.25rem;display:flex;gap:1rem;transition:all .2s ease;box-shadow:0 1px 2px #0000000a}.kpi-card:hover{border-color:#d1d5db;box-shadow:0 1px 3px #00000014}.kpi-card-wide{grid-column:span 2}.kpi-icon{width:40px;height:40px;border-radius:.5rem;display:flex;align-items:center;justify-content:center;color:#6b7280;background:#f3f4f6;flex-shrink:0}.kpi-content{flex:1;display:flex;flex-direction:column;gap:.375rem}.kpi-label{font-size:.75rem;color:#6b7280;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.kpi-value{font-size:1.75rem;font-weight:700;color:#111827;line-height:1.2;letter-spacing:-.02em}.kpi-subtitle{font-size:.75rem;color:#9ca3af;font-weight:500}.ai-engagement-funnel,.bid-engagement-funnel{display:flex;align-items:center;justify-content:center;gap:var(--spacing-lg);padding:var(--spacing-xl);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);flex-wrap:wrap}.funnel-step-mini{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md);min-width:150px;transition:all .2s ease}.funnel-step-mini:hover{background:var(--bg-primary);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.funnel-step-mini-header{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.875rem;font-weight:600;color:var(--text-secondary);margin-bottom:var(--spacing-xs)}.funnel-step-mini-value{font-size:2rem;font-weight:700;color:var(--text-primary);line-height:1}.funnel-step-mini-label{font-size:.75rem;color:var(--text-secondary);text-align:center}.funnel-arrow{color:var(--text-secondary);flex-shrink:0}.kpi-grid-ai{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.kpi-card-ai{border-left:3px solid var(--primary-color)}.funnel-analytics-combined{margin-bottom:1rem}.funnel-analytics-card{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:.875rem;box-shadow:0 1px 2px #0000000a}.funnel-analytics-header{margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid #e5e7eb}.funnel-analytics-title{margin:0;font-size:1rem;font-weight:600;color:#111827;letter-spacing:-.01em}.funnel-analytics-content{display:flex;flex-direction:column;gap:.75rem}.funnel-summary-compact{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.5rem}.summary-card-compact{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:.625rem;transition:all .2s ease;box-shadow:0 1px 2px #0000000a}.summary-card-compact:hover{border-color:#d1d5db;box-shadow:0 1px 3px #00000014}.summary-card-header-compact{margin-bottom:.5rem;display:flex;align-items:center;gap:.375rem}.summary-card-header-compact h3{margin:0;font-size:.6875rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.3px}.summary-card-value-compact{font-size:1.25rem;font-weight:700;color:#111827;line-height:1.2;margin-bottom:.25rem;letter-spacing:-.02em}.summary-card-details-compact{font-size:.6875rem;color:#6b7280;margin-bottom:.125rem;font-weight:500}.summary-card-subtitle-compact{font-size:.625rem;color:#9ca3af;font-weight:500}.phase-badge-compact{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:.25rem;font-weight:700;font-size:.625rem;color:#111827;background:#f3f4f6;border:1px solid #e5e7eb}.analytics-kpis-compact{display:flex;flex-direction:column;gap:.5rem}.kpi-grid-compact-inline{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.kpi-card-compact-inline{padding:.625rem;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;transition:all .2s ease;box-shadow:0 1px 2px #0000000a}.kpi-card-compact-inline:hover{border-color:#d1d5db;box-shadow:0 1px 3px #00000014}.kpi-value-compact{font-size:1.125rem;font-weight:700;color:#111827;line-height:1.2;letter-spacing:-.02em}.kpi-subtitle-compact{font-size:.625rem;color:#9ca3af;font-weight:500;margin-top:.125rem}.kpi-card-compact-inline .kpi-label{font-size:.625rem;margin-bottom:.25rem}.funnel-section{margin-bottom:2rem}.funnel-card-unified{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem;box-shadow:0 1px 2px #0000000a}.funnel-card-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.funnel-card-title{margin:0;font-size:1.5rem;font-weight:600;color:#111827;letter-spacing:-.01em}.funnel-card-content{display:flex;flex-direction:column;gap:1.5rem}.analytics-overview-section{margin-bottom:2rem}.analytics-overview-card{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1rem;box-shadow:0 1px 2px #0000000a}.analytics-overview-header{margin-bottom:.875rem;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.analytics-overview-title{margin:0;font-size:1.25rem;font-weight:600;color:#111827;letter-spacing:-.01em}.analytics-overview-content{display:flex;flex-direction:column;gap:1rem}.analytics-subsection{display:flex;flex-direction:column;gap:.75rem}.analytics-subsection-title{margin:0;font-size:.875rem;font-weight:600;color:#374151;margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.3px}.kpi-grid-compact{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.kpi-card-compact{padding:.875rem}.kpi-card-compact .kpi-value{font-size:1.375rem;line-height:1.2}.kpi-card-compact .kpi-label{font-size:.625rem;margin-bottom:.25rem}.kpi-card-compact .kpi-subtitle{font-size:.625rem;margin-top:.125rem}.empty-state-small{padding:.75rem;text-align:center;color:#9ca3af;font-size:.75rem;background:#f9fafb;border-radius:.375rem;border:1px solid #e5e7eb}.empty-state-small p{margin:0}@media (max-width: 768px){.kpi-grid-compact,.funnel-summary-compact,.kpi-grid-compact-inline{grid-template-columns:1fr}}.funnel-chart{display:flex;flex-direction:column;gap:1.5rem}.funnel-summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.summary-card{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1.25rem;transition:all .2s ease;box-shadow:0 1px 2px #0000000a}.summary-card:hover{border-color:#d1d5db;box-shadow:0 1px 3px #00000014}.summary-card-overall,.summary-card-phase-1,.summary-card-phase-2,.summary-card-phase-3{border-color:#e5e7eb}.summary-card-header{margin-bottom:1rem}.summary-card-header h3{margin:0;font-size:.8125rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.3px}.summary-card-value{font-size:2rem;font-weight:700;color:#111827;line-height:1.2;margin-bottom:.5rem;letter-spacing:-.02em}.summary-card-details{font-size:.875rem;color:#6b7280;margin-bottom:.25rem;font-weight:500}.summary-card-subtitle{font-size:.75rem;color:#9ca3af;font-weight:500}.phase-badge{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:.375rem;font-weight:700;font-size:.75rem;color:#111827;background:#f3f4f6;border:1px solid #e5e7eb}.phase-badge.phase-1,.phase-badge.phase-2,.phase-badge.phase-3{background:#f3f4f6;color:#111827}.top-dropoffs-section{margin-bottom:1.5rem;padding:1.25rem;background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;box-shadow:0 1px 2px #0000000a}.subsection-title{margin:0 0 1rem;font-size:1rem;font-weight:600;color:#111827}.dropoff-badges{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem}.dropoff-badge{display:flex;align-items:center;gap:.75rem;padding:.875rem;background:#fafafa;border:1px solid #e5e7eb;border-radius:.5rem;transition:all .15s ease}.dropoff-badge:hover{background:#f5f5f5;border-color:#d1d5db}.dropoff-rank{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:.375rem;background:#f3f4f6;color:#111827;font-weight:700;font-size:.75rem;flex-shrink:0;border:1px solid #e5e7eb}.dropoff-step-name{flex:1;font-weight:500;color:#111827;font-size:.875rem}.dropoff-percentage{font-weight:600;color:#6b7280;font-size:.8125rem}.funnel-phase{position:relative}.phase-header{margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.phase-header-content{display:flex;align-items:center;gap:.75rem}.phase-number{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:.5rem;font-size:1.125rem;font-weight:700;color:#111827;background:#f3f4f6;border:1px solid #e5e7eb;flex-shrink:0}.funnel-phase.phase-1 .phase-number,.funnel-phase.phase-2 .phase-number,.funnel-phase.phase-3 .phase-number{background:#f3f4f6;color:#111827}.phase-title-group{flex:1;display:flex;flex-direction:column;gap:.25rem}.phase-title{margin:0;font-size:1.125rem;font-weight:600;color:#111827}.phase-metrics{font-size:.8125rem;color:#6b7280;font-weight:500}.phase-steps{display:flex;flex-direction:column;gap:.75rem;padding-left:1rem;border-left:1px solid #e5e7eb;margin-left:calc(20px + .75rem)}.funnel-phase.phase-1 .phase-steps,.funnel-phase.phase-2 .phase-steps,.funnel-phase.phase-3 .phase-steps{border-left-color:#e5e7eb}.funnel-step{margin-bottom:0;padding:1rem;background:#fafafa;border:1px solid #e5e7eb;border-radius:.5rem;transition:all .15s ease}.funnel-step:hover{background:#f5f5f5;border-color:#d1d5db}.funnel-step-header-row{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-sm);gap:var(--spacing-md)}.funnel-step-info{flex:1;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-sm)}.step-expand-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem .75rem;background:#fff;border:1px solid #e5e7eb;border-radius:.375rem;color:#6b7280;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s ease;flex-shrink:0}.step-expand-btn:hover{background:#f9fafb;border-color:#d1d5db;color:#111827}.step-expand-btn svg{flex-shrink:0}.step-actions-breakdown{margin-top:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-sm);border-left:3px solid var(--primary-color)}.actions-breakdown-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-color);font-size:.875rem;color:var(--text-primary)}.actions-breakdown-header svg{color:var(--primary-color);flex-shrink:0}.actions-breakdown-title{display:flex;flex-direction:column;gap:.125rem;flex:1}.actions-context{font-size:.75rem;color:var(--text-secondary);font-weight:400}.actions-count{margin-left:auto;color:var(--text-secondary);font-size:.75rem;flex-shrink:0}.actions-breakdown-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.action-breakdown-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.action-breakdown-info{display:flex;justify-content:space-between;align-items:center;font-size:.875rem}.action-breakdown-name{font-weight:600;color:var(--text-primary);text-transform:capitalize}.action-breakdown-stats{color:var(--text-secondary);font-size:.75rem}.action-breakdown-bar-container{background:var(--bg-primary);border-radius:var(--radius-sm);height:24px;position:relative;overflow:hidden;box-shadow:inset 0 1px 3px #0000001a}.action-breakdown-bar{height:100%;background:linear-gradient(90deg,var(--primary-color),var(--info-color));border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:flex-end;padding-right:var(--spacing-xs);transition:width .3s ease;position:relative}.action-breakdown-percentage{color:#fff;font-weight:600;font-size:.75rem;text-shadow:0 1px 2px rgba(0,0,0,.3);z-index:1}.action-breakdown-percentage-outside{position:absolute;right:var(--spacing-xs);top:50%;transform:translateY(-50%);color:var(--text-secondary);font-weight:600;font-size:.75rem;z-index:1}.action-breakdown-details{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.75rem;color:var(--text-secondary)}.no-actions-message{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);color:var(--text-secondary);font-size:.875rem;font-style:italic}.no-actions-message svg{color:var(--text-secondary);opacity:.5}.funnel-step-name{font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:var(--spacing-sm);font-size:1rem}.step-number{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:4px;background:var(--primary-color);color:#fff;font-size:.75rem;font-weight:700;flex-shrink:0}.funnel-step-stats{display:flex;gap:var(--spacing-md);font-size:.875rem;color:var(--text-secondary);flex-wrap:wrap}.stat-item{display:flex;align-items:center;gap:.25rem}.funnel-bar-container{background:#f3f4f6;border-radius:.375rem;height:32px;position:relative;overflow:hidden}.funnel-bar{height:100%;border-radius:.375rem;display:flex;align-items:center;justify-content:flex-end;padding-right:.75rem;transition:width .3s ease;position:relative;overflow:hidden;background:#6366f1}.funnel-bar:before{display:none}.funnel-percentage{color:#fff;font-weight:700;font-size:.875rem;text-shadow:0 1px 3px rgba(0,0,0,.3);z-index:1}.funnel-dropoff{display:flex;align-items:center;gap:.5rem;margin:.75rem 0;padding:.75rem;background:#fef2f2;border:1px solid #fee2e2;border-radius:.5rem;font-size:.8125rem;color:#991b1b;transition:all .15s ease}.funnel-dropoff:hover{background:#fee2e2;border-color:#fecaca}.dropoff-arrow{font-size:1.5rem;font-weight:700;line-height:1;flex-shrink:0}.dropoff-text{display:flex;flex-direction:column;gap:.25rem;flex:1}.dropoff-text strong{font-weight:700}.dropoff-count{font-size:.75rem;opacity:.8}.variants-section{margin-bottom:var(--spacing-2xl)}.variants-table-container{overflow-x:auto;border:1px solid #e5e7eb;border-radius:.5rem;overflow:hidden}.variants-table-container-compact{overflow-x:auto;border:1px solid #e5e7eb;border-radius:.5rem;overflow:hidden;max-height:400px;overflow-y:auto}.variants-table-compact{width:100%;border-collapse:collapse;background:#fff;font-size:.8125rem}.variants-table-compact thead{background:#f9fafb;position:sticky;top:0;z-index:10}.variants-table-compact th{padding:.625rem .75rem;text-align:left;font-weight:600;font-size:.75rem;color:#374151;border-bottom:2px solid #e5e7eb;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}.variants-table-compact tbody tr.variant-row-compact{border-bottom:1px solid #f3f4f6;cursor:pointer;transition:background .15s ease}.variants-table-compact tbody tr.variant-row-compact:hover,.variants-table-compact tbody tr.variant-row-compact.expanded{background:#f9fafb}.variants-table-compact td{padding:.625rem .75rem;font-size:.8125rem;color:#111827;white-space:nowrap}.variant-name-compact{display:flex;flex-direction:column;gap:.125rem}.variant-name-primary{font-weight:600;color:#111827}.variant-id-compact{font-size:.6875rem;color:#6b7280;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace}.rating-score-compact{font-weight:600;font-size:.8125rem}.variants-table{width:100%;border-collapse:collapse;background:#fff}.variants-table thead{background:#f9fafb}.variants-table th{padding:.875rem 1rem;text-align:left;font-weight:600;font-size:.8125rem;color:#374151;border-bottom:2px solid #e5e7eb;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}.variants-table tbody tr.variant-row{border-bottom:1px solid #f3f4f6;cursor:pointer;transition:background .15s ease}.variants-table tbody tr.variant-row:hover{background:#f9fafb}.variants-table tbody tr.variant-row.expanded{background:#f9fafb;border-bottom:none}.variants-table td{padding:.875rem 1rem;font-size:.875rem;color:#111827;white-space:nowrap}.expand-cell{width:30px;text-align:center;color:var(--text-secondary)}.variant-id{font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-size:.8125rem;color:#6b7280;background:#f9fafb;padding:.25rem .5rem;border-radius:.25rem;display:inline-block}.thumbs-up{color:#059669;font-weight:600}.thumbs-down{color:#dc2626;font-weight:600}.rating-score{font-weight:600;font-size:.875rem}.variant-details-row{border-bottom:1px solid #e5e7eb;background:#fafbfc}.variant-details{padding:1rem;background:transparent}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.detail-item{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;transition:all .2s ease}.detail-item:hover{border-color:#d1d5db;box-shadow:0 1px 3px #0000000d}.detail-item label{font-size:.6875rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.25rem}.detail-value{font-size:.875rem;color:#111827;font-weight:500;display:flex;flex-direction:column;gap:.375rem}.detail-value span{font-weight:600;color:#111827}.score-bar-container{background:#f3f4f6;height:6px;border-radius:3px;overflow:hidden;margin-top:.375rem;position:relative}.score-bar{height:100%;border-radius:3px;transition:width .3s ease;position:relative}.score-bar:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3));border-radius:3px}.analytics-loading,.analytics-error,.analytics-unauthorized{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center}.loading-spinner{width:48px;height:48px;border:4px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:var(--spacing-md)}.analytics-error h2,.analytics-unauthorized h1{color:var(--text-primary);margin-bottom:var(--spacing-sm)}.analytics-error p,.analytics-unauthorized p{color:var(--text-secondary);margin-bottom:var(--spacing-lg)}.retry-button{padding:var(--spacing-sm) var(--spacing-lg);background:var(--primary-color);color:#fff;border:none;border-radius:var(--radius-sm);font-weight:600;cursor:pointer;transition:all .2s ease}.retry-button:hover{background:var(--text-primary);transform:translateY(-1px)}.empty-state{background:#fff;border:1px dashed #e5e7eb;border-radius:.75rem;padding:3rem 1.5rem;text-align:center;color:#6b7280;font-size:.875rem}[data-theme=dark] .kpi-card,[data-theme=dark] .funnel-chart,[data-theme=dark] .variants-table-container{background:var(--bg-secondary);border-color:#2a2a2a}[data-theme=dark] .variants-table thead,[data-theme=dark] .variants-table tbody tr.variant-row:hover,[data-theme=dark] .variants-table tbody tr.variant-row.expanded,[data-theme=dark] .funnel-bar-container,[data-theme=dark] .score-bar-container{background:var(--bg-primary)}[data-theme=dark] .summary-card{background:var(--bg-secondary);border-color:#2a2a2a}[data-theme=dark] .summary-card-overall,[data-theme=dark] .summary-card-phase-1{background:linear-gradient(135deg,#3b82f626,#3b82f614)}[data-theme=dark] .summary-card-phase-2{background:linear-gradient(135deg,#10b98126,#10b98114)}[data-theme=dark] .summary-card-phase-3{background:linear-gradient(135deg,#f59e0b26,#f59e0b14)}[data-theme=dark] .funnel-step{background:var(--bg-primary)}[data-theme=dark] .funnel-step:hover{background:var(--bg-secondary)}[data-theme=dark] .dropoff-badge{background:var(--bg-primary)}[data-theme=dark] .top-dropoffs-section{background:var(--bg-secondary);border-color:#2a2a2a}.action-analytics-section,.bid-analytics-section,.question-analytics-section,.variants-section{margin-bottom:2rem}.all-steps-actions-section{margin-bottom:2rem;background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1rem;box-shadow:0 1px 2px #0000000a}.variants-card-unified{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem;box-shadow:0 1px 2px #0000000a}.variants-card-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.variants-card-title{margin:0;font-size:1.5rem;font-weight:600;color:#111827;letter-spacing:-.01em}.action-analytics-section .section-header,.bid-analytics-section .section-header,.question-analytics-section .section-header,.all-steps-actions-section .section-header{margin-bottom:1rem}.section-header-card{display:flex;align-items:center;justify-content:space-between;padding-bottom:.75rem;margin-bottom:.75rem;border-bottom:1px solid #e5e7eb}.section-header-card .section-title{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:#6b7280;margin:0}.section-toggle-inline{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:#6b7280;cursor:pointer}.section-toggle-inline input[type=checkbox]{width:14px;height:14px;cursor:pointer}.section-toggle-inline span{white-space:nowrap}.phase-steps-overview{margin-bottom:1rem}.phase-steps-overview:last-child{margin-bottom:0}.phase-overview-title{font-size:.8125rem;font-weight:600;color:#374151;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid #f3f4f6}.steps-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.5rem;margin-bottom:.75rem}.step-action-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.375rem;padding:.5rem .625rem;transition:all .2s ease}.step-action-card:hover{box-shadow:0 1px 3px #00000014;border-color:#d1d5db}.step-action-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem;padding-bottom:.25rem;border-bottom:1px solid #e5e7eb}.step-action-name{font-size:.75rem;font-weight:600;color:#374151;margin:0}.step-action-users{display:flex;align-items:center;gap:.25rem;font-size:.625rem;color:#9ca3af;font-weight:500}.step-action-list{display:flex;flex-direction:column;gap:.25rem}.step-action-item{display:flex;justify-content:space-between;align-items:center;padding:.25rem .375rem;background:#f3f4f6;border-radius:.25rem;font-size:.6875rem}.step-action-label{color:var(--text-primary);font-weight:500;text-transform:capitalize}.step-action-metrics{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--text-secondary);font-size:.8rem}.step-action-percentage{color:var(--primary-color);font-weight:600}.step-action-empty{display:flex;align-items:center;gap:.25rem;padding:.25rem;color:#9ca3af;font-size:.6875rem;font-style:italic}.section-toggle{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}.section-toggle label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;font-size:.875rem;color:var(--text-secondary)}.section-toggle input[type=checkbox]{cursor:pointer;width:18px;height:18px}.question-step-selector{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md)}.question-step-selector label{font-weight:600;color:var(--text-primary);font-size:.875rem}.step-filter-select{flex:1;max-width:400px;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-primary);font-size:.875rem;cursor:pointer;transition:all .2s ease}.step-filter-select:hover{border-color:var(--primary-color)}.step-filter-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f61a}.questions-list-container{margin-top:var(--spacing-lg)}.questions-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.question-item{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-lg);transition:all .2s ease}.question-item:hover{box-shadow:var(--shadow-md);border-color:var(--primary-color)}.question-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);flex-wrap:wrap;gap:var(--spacing-sm)}.question-type-badge{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.question-type-badge.question-type-suggestion,.question-type-badge.question-type-free_form{background:#f3f4f6;color:#111827;border:1px solid #e5e7eb}.question-meta{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.question-step-badge{padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-secondary);border-radius:var(--radius-sm);font-size:.75rem;color:var(--text-secondary);font-weight:500}.question-variants{font-size:.75rem;color:var(--text-secondary);font-style:italic}.question-text{font-size:1rem;color:var(--text-primary);font-weight:500;margin-bottom:var(--spacing-md);line-height:1.5;padding:var(--spacing-md);background:var(--bg-secondary);border-left:3px solid var(--primary-color);border-radius:var(--radius-sm)}.question-stats{display:flex;flex-wrap:wrap;gap:var(--spacing-md);font-size:.875rem;color:var(--text-secondary)}.question-stat-item{display:flex;align-items:center;gap:var(--spacing-xs)}.question-stat-item strong{color:var(--text-primary);font-weight:600}.load-more-questions{display:flex;justify-content:center;margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--border-color)}.load-more-btn{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);background:var(--primary-color);color:#fff;border:none;border-radius:var(--radius-sm);font-weight:600;cursor:pointer;transition:all .2s ease}.load-more-btn:hover:not(:disabled){background:var(--text-primary);transform:translateY(-2px);box-shadow:var(--shadow-md)}.load-more-btn:disabled{opacity:.6;cursor:not-allowed}.kpi-grid-2col{grid-template-columns:repeat(2,1fr)}.kpi-grid-3col{grid-template-columns:repeat(3,1fr)}.subsection-title{font-size:1.125rem;font-weight:600;margin:var(--spacing-lg) 0 var(--spacing-md) 0;color:var(--text-primary)}.popular-actions,.top-performers{margin-top:var(--spacing-lg)}.action-badges,.performer-badges{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.action-badge,.performer-badge{background:var(--bg-secondary);border:1px solid var(--border-color);padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-full);font-size:.875rem;font-weight:500;color:var(--text-primary);transition:all .2s ease}.action-badge:hover,.performer-badge:hover{background:var(--primary-color);color:#fff;transform:translateY(-2px);box-shadow:var(--shadow-sm)}.action-table-container,.contractor-table-container{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden;margin-top:var(--spacing-lg)}.action-table,.contractor-table{width:100%;border-collapse:collapse}.action-table thead,.contractor-table thead{background:var(--bg-secondary);border-bottom:2px solid var(--border-color)}.action-table th,.contractor-table th{padding:var(--spacing-md);text-align:left;font-weight:600;font-size:.875rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.action-table td,.contractor-table td{padding:var(--spacing-md);border-bottom:1px solid var(--border-color);color:var(--text-primary)}.action-table tbody tr,.contractor-table tbody tr{transition:background .2s ease}.action-table tbody tr:hover,.contractor-table tbody tr:hover{background:var(--bg-secondary)}.action-table tbody tr:last-child td,.contractor-table tbody tr:last-child td{border-bottom:none}.action-name,.contractor-name{font-weight:600;text-transform:capitalize}.action-clicks{color:var(--primary-color);font-weight:600}.bookings-count{color:var(--success-color);font-weight:600}.action-steps{display:flex;flex-wrap:wrap;gap:.25rem}.step-badge{background:var(--bg-secondary);padding:.125rem .5rem;border-radius:var(--radius-sm);font-size:.75rem;color:var(--text-secondary);text-transform:capitalize;white-space:nowrap}.conversion-badge{font-weight:700;padding:.25rem .5rem;border-radius:var(--radius-sm);background:#0000000d}.position-badge{background:var(--info-color);color:#fff;padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.875rem;font-weight:600}.price-text{font-weight:600;color:var(--text-primary)}@media (max-width: 768px){.analytics-dashboard-page{padding:var(--spacing-md)}.analytics-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.header-controls{width:100%;flex-direction:column}.period-selector,.refresh-button{width:100%}.kpi-grid,.kpi-grid-2col,.kpi-grid-3col{grid-template-columns:1fr}.kpi-card-wide{grid-column:span 1}.question-step-selector{flex-direction:column;align-items:stretch}.step-filter-select{max-width:100%}.question-item-header{flex-direction:column;align-items:flex-start}.question-stats{flex-direction:column;gap:var(--spacing-sm)}.variants-table-container,.action-table-container,.contractor-table-container{overflow-x:auto}.variants-table,.action-table,.contractor-table{min-width:800px}.detail-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.detail-item{padding:.625rem}.detail-item label{font-size:.625rem}.detail-value{font-size:.8125rem}.variant-details{padding:.75rem}}@media (max-width: 480px){.detail-grid{grid-template-columns:1fr;gap:.5rem}.detail-item{padding:.625rem}.variant-details{padding:.5rem}.action-badges,.performer-badges{flex-direction:column}.action-badge,.performer-badge{width:100%;text-align:center}.steps-grid,.funnel-summary-cards{grid-template-columns:1fr}.ai-engagement-funnel,.bid-engagement-funnel{flex-direction:column;padding:var(--spacing-md)}.funnel-arrow{transform:rotate(90deg)}.funnel-step-mini{width:100%;min-width:auto}.section-description{margin-left:0;margin-top:var(--spacing-xs)}.kpi-grid-ai,.kpi-grid-3col{grid-template-columns:1fr}.summary-card-value{font-size:2rem}.phase-header-content{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.phase-steps{padding-left:var(--spacing-md);margin-left:calc(24px + var(--spacing-sm))}.funnel-step-header-row{flex-direction:column;gap:var(--spacing-sm)}.funnel-step-info{flex-direction:column;align-items:flex-start;width:100%}.step-expand-btn{width:100%;justify-content:center}.action-breakdown-info{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}.funnel-step-name{font-size:.875rem}.funnel-bar-container{height:32px}.dropoff-badge{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.dropoff-step-name{width:100%}}.contractor-analysis-page{max-width:87.5rem;margin:0 auto;padding:2rem;min-height:100vh;background-color:var(--bg-primary);color:var(--text-primary);overflow-x:hidden;box-sizing:border-box}.contractor-analysis-page .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:.125rem solid var(--border-color);background:transparent!important;box-shadow:none!important;border-top:none!important;border-left:none!important;border-right:none!important;border-radius:0!important;padding:0!important;padding-bottom:1.5rem!important}.page-title{margin:0;font-size:2.5rem;font-weight:700;color:var(--text-primary);letter-spacing:-.025em}.page-controls{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.period-select,.period-value-select,.year-input{padding:.5rem;border:1px solid #d1d5db;border-radius:.375rem;background:var(--card-bg);font-size:.875rem;color:var(--text-primary)}.period-info{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;padding:.75rem;margin-bottom:1.5rem;font-weight:500;color:var(--text-secondary)}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem;text-align:center}.loading-container .spin{animation:spin 1s linear infinite;color:var(--primary-color);margin-bottom:1rem}.animate-spin,.spin{animation:spin 1s linear infinite}.analysis-section{margin-bottom:2rem}.analysis-section h2{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-bottom:1rem}.fylke-cards-container{margin-bottom:2rem}.fylke-cards-wrapper{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:6px}.clickable-fylke-card{position:relative;cursor:pointer;transition:all .2s ease;border-radius:4px;overflow:hidden}.clickable-fylke-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.clickable-fylke-card:hover .generate-button-overlay{opacity:1}.generate-button-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.8),transparent);padding:.5rem .25rem;opacity:0;transition:opacity .2s ease}.btn-generate-small{background:var(--primary-color);color:#fff;border:none;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;display:flex;align-items:center;gap:.25rem;cursor:pointer;width:100%;justify-content:center}.contractor-chart-container{background:var(--card-bg);border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 1px 3px #0000001a;overflow:visible;width:100%!important;height:auto!important;min-height:auto!important;max-height:none!important}.contractor-analysis-page .chart-container{width:100%!important;height:auto!important;min-height:400px!important;max-height:none!important;margin-top:8px}.contractor-analysis-page .chart-wrapper{width:100%!important;height:auto!important;min-height:350px!important;max-height:none!important}.contractor-analysis-page .chart-wrapper.large{min-height:450px!important}.contractor-analysis-page .chart-wrapper.extra-large{min-height:600px!important}.contractor-analysis-page .chart-container{background:var(--card-bg);border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 1px 3px #0000001a;overflow:visible;width:100%!important;height:auto!important;min-height:400px!important;max-height:none!important}.chart-title{font-size:1.125rem;font-weight:600;margin:0 0 .5rem;color:#1f2937;display:flex;align-items:center;gap:8px}.live-badge{display:inline-flex;align-items:center;background-color:#22c55e;color:#fff;font-size:.75rem;font-weight:500;padding:2px 6px;border-radius:4px;text-transform:uppercase;letter-spacing:.025em}.chart-description{font-size:.875rem;color:#6b7280;margin:0 0 1.5rem;line-height:1.5}.chart-wrapper{position:relative;min-height:400px;height:auto;width:100%}.chart-wrapper.large{min-height:500px}.chart-wrapper.extra-large{min-height:650px}.bidding-chart-container{min-height:auto!important;height:auto!important;max-height:none!important}.bidding-chart-container .chart-wrapper{min-height:auto}.bidding-chart-wrapper{width:100%;min-height:65vh}.bidding-chart-wrapper.enhanced{min-height:75vh}.modern-bidding-chart{width:100%;margin:0;min-height:350px;display:flex;flex-direction:column;height:100%}.contractor-analysis-page .modern-bidding-chart .chart-visualization-dynamic{min-height:300px!important;height:auto!important;width:100%!important;margin-top:.5rem}.contractor-analysis-page .modern-bidding-chart .chart-visualization{height:450px!important;min-height:450px!important;width:100%!important;margin-top:1rem}.contractor-analysis-page canvas{max-width:100%!important;height:auto!important;min-height:auto!important}.live-data-section,.historical-data-section{margin-bottom:.5rem;width:100%}.live-data-section:last-child,.historical-data-section:last-child{margin-bottom:0}.live-analytics-section .historical-data-section{margin-bottom:0;flex:1;display:flex;flex-direction:column}.live-analytics-section .chart-visualization-dynamic{flex:1}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;border-bottom:1px solid #e5e7eb;padding-bottom:.375rem}.section-header.compact{margin-bottom:.125rem;padding-bottom:.125rem}.live-analytics-section .section-header.compact{margin-bottom:0;padding-bottom:0;border-bottom:none}.section-title{font-size:1rem;font-weight:600;color:#1f2937;margin:0}.live-indicator{color:#22c55e;font-size:.875rem;font-weight:600}.period-label{color:#6b7280;font-size:.875rem}.live-metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.75rem;margin-bottom:.75rem}.live-metric{text-align:center;padding:.75rem;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.live-metric-value{display:block;font-size:1.5rem;font-weight:700;color:#1f2937;margin-bottom:.25rem}.live-metric-label{display:block;font-size:.75rem;color:#6b7280;text-transform:uppercase;font-weight:500;letter-spacing:.05em}.trend-summary{margin-bottom:1rem}.trend-metric{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#f3f4f6;border-radius:6px}.trend-indicator{font-size:1rem;font-weight:600}.trend-indicator.positive{color:#22c55e}.trend-indicator.negative{color:#ef4444}.trend-label{font-size:.875rem;color:#6b7280}.chart-visualization{position:relative;height:400px;width:100%;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;align-items:center;justify-content:center}.chart-visualization-dynamic{position:relative;width:100%;min-height:300px;height:auto;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-direction:column}.chart-content-wrapper{flex:1;width:100%;padding:.25rem .25rem .1rem;min-height:0;display:flex;flex-direction:column;position:relative!important}.chart-content-wrapper>div{flex:1;width:100%;height:auto;min-height:0}.trend-overlay{position:absolute!important;top:.75rem!important;right:.75rem!important;left:auto!important;z-index:20!important;pointer-events:none}.trend-metric-overlay{display:flex!important;flex-direction:column!important;align-items:flex-end!important;gap:.125rem;padding:.375rem .5rem;background:#fffffffa;border:1px solid #d1d5db;border-radius:6px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 2px 8px #00000026;max-width:90px;min-width:70px;float:right!important}.trend-label-small{font-size:.625rem;color:#6b7280;font-weight:500;line-height:1.1;text-align:right;white-space:nowrap}.chart-content-wrapper canvas{width:100%!important;height:auto!important;max-height:none!important;min-height:auto!important}.live-analytics-section .bidding-chart-container canvas{width:100%!important;height:auto!important;max-height:280px!important;min-height:200px!important}.live-analytics-section .bidding-chart-container.compact canvas{max-height:280px!important;min-height:200px!important}.chart-no-data-message{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#6b7280;font-size:.875rem;gap:1rem;text-align:center;padding:2rem}.no-data-title{font-size:1.25rem;font-weight:600;color:#374151}.no-data-description{max-width:300px;line-height:1.5}.no-data-debug{font-size:.75rem;color:#9ca3af;white-space:pre-wrap;background:#f3f4f6;padding:.5rem;border-radius:4px;border:1px solid #e5e7eb;font-family:monospace}@media (min-width: 768px){.chart-visualization-dynamic{min-height:120px}}@media (min-width: 1024px){.chart-visualization-dynamic{min-height:120px}}@media (min-width: 1440px){.chart-visualization-dynamic{min-height:120px}}.chart-card{width:100%;background:var(--card-bg);border-radius:8px;padding:1rem;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a;min-height:400px}@media (max-width: 768px){.live-metrics-grid{grid-template-columns:repeat(2,1fr)}.chart-visualization{height:250px}}@media (max-width: 480px){.live-metrics-grid{grid-template-columns:1fr}.section-header{flex-direction:column;align-items:flex-start;gap:.5rem}.chart-visualization{height:200px}}.revenue-analysis-container{height:auto!important;max-height:none!important}.revenue-analysis-container .chart-wrapper{min-height:500px}.revenue-charts-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:1.5rem}.revenue-chart-item{height:320px;min-height:320px;position:relative}.revenue-chart-item.enhanced-chart{height:400px;min-height:400px;padding:1rem;background:#fafafa;border:1px solid #f0f0f0;border-radius:8px;box-shadow:0 2px 4px #0000000d}@media (max-width: 768px){.revenue-charts-grid{grid-template-columns:1fr;gap:1.5rem}.revenue-chart-item{height:280px;min-height:280px}.revenue-chart-item.enhanced-chart{height:350px;min-height:350px;padding:.75rem}}@media (max-width: 480px){.revenue-chart-item{height:250px;min-height:250px}.revenue-chart-item.enhanced-chart{height:320px;min-height:320px;padding:.5rem}}.chart-loading-state,.chart-loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;padding:2rem;text-align:center;gap:1rem}.chart-loading-state p,.chart-loading-container p{color:#6b7280;margin:0}.loading-animation{width:32px;height:32px;border:3px solid #e5e7eb;border-top:3px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite}.advanced-analytics-section{margin-top:2rem}.live-analytics-section{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e5e7eb}.section-divider-title{font-size:1.5rem;font-weight:600;color:#1f2937;margin-bottom:2rem;text-align:center;display:flex;align-items:center;gap:1rem}.section-divider-title:before,.section-divider-title:after{content:"";flex:1;height:1px;background:linear-gradient(to right,transparent,#22c55e,transparent)}.advanced-analytics-section .contractor-chart-container,.advanced-analytics-section .chart-container{background:var(--card-bg);border:1px solid #e5e7eb;border-radius:12px;padding:1rem;box-shadow:0 1px 3px #0000001a;margin-bottom:1.5rem;height:auto!important;min-height:auto!important;max-height:none!important;overflow:visible!important}.live-analytics-section .contractor-chart-container.bidding-chart-container{padding:.75rem;margin-bottom:1rem;min-height:auto!important}.live-analytics-section .contractor-chart-container.bidding-chart-container.compact{padding:.5rem;margin-bottom:.5rem;min-height:auto!important}.live-analytics-section .contractor-chart-container.compact .chart-title{font-size:.9rem;margin-bottom:.25rem}.live-analytics-section .contractor-chart-container.compact .chart-description{font-size:.8rem;margin-bottom:.5rem}.chart-header-with-filter{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem;gap:1rem}.chart-title-section{flex:1}.bidding-county-filter{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem;min-width:140px}.filter-label{font-size:.75rem;color:#6b7280;font-weight:500;margin-bottom:.125rem}.county-filter-select{padding:.375rem .5rem;border:1px solid #d1d5db;border-radius:4px;background:var(--card-bg);font-size:.8rem;color:#374151;cursor:pointer;transition:border-color .2s ease;min-width:120px}.county-filter-select:hover{border-color:#9ca3af}.county-filter-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}@media (max-width: 768px){.chart-header-with-filter{flex-direction:column;align-items:stretch;gap:.5rem}.bidding-county-filter{flex-direction:row;align-items:center;justify-content:space-between}.filter-label{margin-bottom:0}}.bidding-chart-wrapper.updating{position:relative}.chart-updating-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#ffffffb3;display:flex;align-items:center;justify-content:center;z-index:10;border-radius:8px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.updating-spinner{width:20px;height:20px;border:2px solid #e5e7eb;border-top:2px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite}@media (max-width: 768px){.chart-container{padding:1rem;margin-bottom:1.5rem}.chart-wrapper{min-height:300px}.chart-wrapper.large{min-height:400px}.chart-wrapper.extra-large{min-height:550px}.revenue-analysis-container .chart-wrapper{min-height:450px}.bidding-chart-wrapper.enhanced{min-height:550px}}@media (max-width: 480px){.chart-wrapper{min-height:250px}.chart-wrapper.large{min-height:350px}.chart-wrapper.extra-large{min-height:500px}.revenue-analysis-container .chart-wrapper{min-height:400px}.bidding-chart-wrapper.enhanced{min-height:500px}}.contractor-stats-section{margin-bottom:2rem}.contractor-stats-section h2{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-bottom:1rem}.stats-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-card{background:var(--card-bg);border:1px solid #e5e7eb;border-radius:.5rem;padding:1.5rem;display:flex;align-items:center;gap:1rem;transition:box-shadow .2s ease}.stat-card:hover{box-shadow:0 2px 8px #0000000d}.stat-icon{color:var(--primary-color);min-width:24px}.stat-value{font-size:1.5rem;font-weight:600;color:var(--text-primary);line-height:1.2}.stat-label{font-size:.875rem;color:var(--text-secondary);margin-top:.25rem}.generated-contractors-section,.all-contractors-section{margin-bottom:2rem}.generated-contractors-section h2,.all-contractors-section h2{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-bottom:1rem}.contractor-filters{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap;background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;padding:1rem}.filter-group{display:flex;flex-direction:column;gap:.25rem;min-width:150px}.filter-group label{font-size:.875rem;font-weight:500;color:var(--text-secondary)}.filter-group select,.filter-group input{padding:.5rem;border:1px solid #d1d5db;border-radius:.375rem;background:var(--card-bg);font-size:.875rem;color:var(--text-primary)}.search-group{flex:1;min-width:200px}.search-input-wrapper{position:relative}.search-input-wrapper svg{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--text-secondary)}.search-input-wrapper input{padding-left:2.25rem;width:100%}.contractors-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:1.5rem}.contractor-card{background:var(--card-bg);border:1px solid #e5e7eb;border-radius:.5rem;padding:1.5rem;transition:all .2s ease;word-wrap:break-word;overflow-wrap:break-word;height:auto;width:100%;box-sizing:border-box;overflow-x:hidden}.contractor-card:hover{box-shadow:0 4px 12px #0000001a;border-color:var(--primary-color)}.contractor-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.contractor-title{flex:1}.contractor-title h4{margin:0;font-size:1.125rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.contractor-status{display:inline-block;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:500;color:#fff;text-transform:uppercase;letter-spacing:.05em}.contractor-rating{font-size:.875rem;color:var(--text-secondary);margin-left:1rem}.contractor-info>div{margin-bottom:.75rem}.contractor-location{font-size:.875rem;color:var(--text-secondary)}.contractor-services{font-size:.875rem}.contractor-services strong{color:var(--text-primary);margin-bottom:.5rem;display:block}.services-tags{display:flex;flex-wrap:wrap;gap:.25rem}.service-tag{background:#f3f4f6;color:var(--text-secondary);padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem}.service-tag.more{background:var(--primary-color);color:#fff}.contractor-description{font-size:.875rem;color:var(--text-secondary);line-height:1.4}.contractor-contact{display:flex;flex-direction:column;gap:.5rem;width:100%;box-sizing:border-box}.contact-item{display:flex;align-items:flex-start;gap:.5rem;font-size:.875rem;color:var(--text-secondary);min-width:0;width:100%;word-wrap:break-word;overflow-wrap:break-word;box-sizing:border-box}.contact-item svg{color:var(--primary-color);min-width:16px;width:16px;flex-shrink:0;margin-top:.125rem}.contact-item span{flex:1;min-width:0;max-width:100%;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word;line-height:1.4;overflow-wrap:anywhere}.contact-item a{color:var(--primary-color);text-decoration:none}.contact-item a:hover{text-decoration:underline}.contractor-note{background:#f0f9ff;border:1px solid #e0f2fe;border-radius:.375rem;padding:.75rem;display:flex;align-items:flex-start;gap:.5rem;font-size:.875rem}.contractor-note svg{color:#0369a1;min-width:16px;margin-top:.125rem}.contractor-note small{color:var(--text-secondary);margin-left:.5rem}.contractor-actions{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e5e7eb}.contact-note-form{margin-bottom:1rem}.contact-note-form textarea{width:100%;padding:.5rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;font-family:inherit;resize:vertical}.action-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.action-buttons button{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:.375rem;border:none;font-size:.875rem;cursor:pointer;transition:all .2s ease}.btn-contact{background:#22c55e;color:#fff}.btn-contact:hover{background:#16a34a}.btn-remove-temp{background:#f59e0b;color:#fff}.btn-remove-temp:hover{background:#d97706}.btn-remove-perm{background:#ef4444;color:#fff}.btn-remove-perm:hover{background:#dc2626}.action-buttons button:disabled{opacity:.6;cursor:not-allowed}.no-contractors{text-align:center;padding:3rem;color:var(--text-secondary)}.error-message{background:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;padding:1rem;text-align:center;color:#b91c1c;margin:1rem 0}.load-more-container{display:flex;justify-content:center;padding:2rem;margin-top:1rem}.btn-load-more{background:var(--primary-color);color:#fff;border:none;border-radius:.5rem;padding:.75rem 2rem;font-size:.875rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.btn-load-more:hover{background:#1d4ed8;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.btn-load-more:disabled{opacity:.6;cursor:not-allowed;transform:none}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--card-bg);border-radius:.5rem;width:90vw;max-width:400px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.contractor-detail-modal{max-width:900px!important;width:95vw!important;max-height:95vh;border-radius:16px;box-shadow:0 25px 50px -12px #00000040}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e7eb}.contractor-detail-modal .modal-header{padding:2rem;background:linear-gradient(135deg,#f8fafc,#fff);border-bottom:2px solid #e5e7eb}.contractor-detail-modal .modal-header h2{margin:0;font-size:1.75rem;font-weight:700;color:var(--text-primary);line-height:1.2}.modal-header h3{margin:0;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.modal-close{background:none;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer;padding:.5rem;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s ease}.modal-close:hover{background:#f3f4f6;color:var(--text-primary)}.contractor-detail-modal .modal-close{width:2.5rem;height:2.5rem}.modal-body{padding:1.5rem}.contractor-detail-modal .modal-body{padding:2rem}.contractor-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;margin-bottom:0}.contractor-detail-grid>*{min-width:0}.status-section{grid-column:1;display:flex;flex-direction:column;gap:1rem}.status-section h3,.contact-section h3,.location-section h3,.services-section h3,.description-section h3,.contact-history-section h3,.actions-section h3{margin:0 0 .75rem;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#6b7280}.contractor-status-large{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border-radius:8px;color:#fff;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;width:fit-content}.contractor-rating-large{display:flex;align-items:center;gap:.5rem;font-size:1.25rem;font-weight:600;color:#f59e0b}.contact-section{grid-column:2}.contact-grid{display:flex;flex-direction:column;gap:.75rem}.contact-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#f9fafb;border-radius:8px;transition:background .2s ease}.contact-item:hover{background:#f3f4f6}.contact-item a{color:var(--text-primary);text-decoration:none;font-weight:500;transition:color .2s ease}.contact-item a:hover{color:var(--primary-color)}.location-section{grid-column:1}.location-section p{margin:0;padding:.75rem;background:#f9fafb;border-radius:8px;color:var(--text-primary);line-height:1.6}.services-section{grid-column:2}.services-tags{display:flex;flex-wrap:wrap;gap:.5rem}.service-tag{display:inline-block;padding:.5rem 1rem;background:#e0e7ff;color:#4338ca;border-radius:6px;font-size:.875rem;font-weight:500}.description-section{grid-column:1 / -1}.description-section p{margin:0;padding:1rem;background:#f9fafb;border-radius:8px;color:var(--text-primary);line-height:1.7;white-space:pre-wrap}.contact-history-section{grid-column:1 / -1}.notepad-wrapper{display:flex;flex-direction:column;gap:.75rem}.notepad-textarea{width:100%;min-height:120px;padding:1rem;border:2px solid #e5e7eb;border-radius:8px;font-family:inherit;font-size:.9375rem;line-height:1.6;color:var(--text-primary);background:#fff;resize:vertical;transition:border-color .2s ease}.notepad-textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f61a}.notepad-actions{display:flex;align-items:center;gap:.5rem}.text-muted{color:#6b7280;font-size:.8125rem}.actions-section{grid-column:1 / -1;padding-top:1rem;border-top:1px solid #e5e7eb}.action-buttons-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;margin-top:1rem}.action-buttons-grid .btn{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.25rem;border-radius:8px;font-weight:500;font-size:.875rem;transition:all .2s ease;border:none;cursor:pointer}.action-buttons-grid .btn:disabled{opacity:.6;cursor:not-allowed}.action-buttons-grid .btn-primary{background:#3b82f6;color:#fff}.action-buttons-grid .btn-primary:hover:not(:disabled){background:#2563eb;transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.action-buttons-grid .btn-success{background:#22c55e;color:#fff}.action-buttons-grid .btn-success:hover:not(:disabled){background:#16a34a;transform:translateY(-1px);box-shadow:0 4px 12px #22c55e4d}.action-buttons-grid .btn-warning{background:#f59e0b;color:#fff}.action-buttons-grid .btn-warning:hover:not(:disabled){background:#d97706;transform:translateY(-1px);box-shadow:0 4px 12px #f59e0b4d}.action-buttons-grid .btn-danger{background:#ef4444;color:#fff}.action-buttons-grid .btn-danger:hover:not(:disabled){background:#dc2626;transform:translateY(-1px);box-shadow:0 4px 12px #ef44444d}@media (max-width: 768px){.contractor-detail-modal{max-width:95vw!important;max-height:95vh}.contractor-detail-grid{grid-template-columns:1fr;gap:1.5rem}.status-section,.contact-section,.location-section,.services-section,.description-section,.contact-history-section,.actions-section{grid-column:1}.contractor-detail-modal .modal-header{padding:1.5rem}.contractor-detail-modal .modal-header h2{font-size:1.5rem}.contractor-detail-modal .modal-body{padding:1.5rem}.action-buttons-grid{grid-template-columns:1fr}}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:.875rem;font-weight:500;color:var(--text-primary);margin-bottom:.5rem}.form-group input{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;color:var(--text-primary)}.form-group small{display:block;margin-top:.25rem;color:var(--text-secondary);font-size:.75rem}.modal-footer{padding:1.5rem;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;gap:.75rem}.btn-secondary,.btn-primary{padding:.5rem 1rem;border-radius:.375rem;border:none;font-size:.875rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.btn-secondary{background:#f3f4f6;color:var(--text-secondary);border:1px solid #d1d5db}.btn-secondary:hover{background:#e5e7eb}.btn-primary{background:var(--primary-color);color:#fff}.btn-primary:hover{background:#1d4ed8}.btn-primary:disabled,.btn-secondary:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.contractor-analysis-page{padding:1rem}.page-header{flex-direction:column;align-items:stretch}.page-controls{justify-content:center}.contractors-grid{grid-template-columns:1fr}.contractor-filters{flex-direction:column}.filter-group{min-width:auto}.stats-cards{grid-template-columns:1fr}.fylke-cards-wrapper{grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}}[data-theme=dark] .header,[data-theme=dark] .section-header,[data-theme=dark] .card-header{background:linear-gradient(135deg,#00d4ff14,#7c3aed14);border:1px solid rgba(0,212,255,.2);box-shadow:0 0 40px #00d4ff26}[data-theme=dark] .contractor-analysis-page .page-header{background:transparent!important;border-bottom:.125rem solid rgba(0,212,255,.2)!important;box-shadow:none!important;border-radius:0!important;border-top:none!important;border-left:none!important;border-right:none!important;padding:0!important;padding-bottom:1.5rem!important}[data-theme=dark] .contractor-filters{background:#0f1419d9;border-color:#00d4ff33}[data-theme=dark] .filter-group select,[data-theme=dark] .filter-group input{background:#0f1419d9;border-color:#00d4ff33;color:var(--text-primary)}[data-theme=dark] .contractor-card{background:var(--card-bg);border-color:#00d4ff26;box-shadow:0 0 20px #00d4ff0d}[data-theme=dark] .contractor-card:hover{border-color:#00d4ff4d;box-shadow:0 0 25px #00d4ff26}.schedule-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(450px,1fr));gap:var(--spacing-lg)}.schedule-list-loading,.schedule-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3xl);text-align:center;color:var(--text-secondary)}.schedule-list-loading .loading-spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:var(--spacing-md)}.empty-icon{color:var(--text-secondary);opacity:.5;margin-bottom:var(--spacing-md)}.schedule-list-empty h3{margin:0 0 var(--spacing-sm) 0;color:var(--text-primary)}.schedule-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden;transition:all .2s ease}.schedule-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.schedule-card.paused{opacity:.7;border-color:var(--warning-color)}.schedule-card-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.schedule-status{display:flex;align-items:center;gap:var(--spacing-sm)}.status-badge{padding:.25rem .75rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-active{background:var(--success-color);color:#fff}.status-paused{background:var(--warning-color);color:#fff}.status-disabled{background:var(--error-color);color:#fff}.schedule-title{margin:0;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.schedule-actions{display:flex;gap:var(--spacing-xs)}.action-btn{background:var(--bg-primary);border:1px solid var(--border-color);padding:.5rem;border-radius:var(--radius-sm);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;color:var(--text-primary)}.action-btn:hover:not(:disabled){background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.action-btn:disabled{opacity:.5;cursor:not-allowed}.action-btn-danger:hover:not(:disabled){background:var(--error-color);border-color:var(--error-color)}.schedule-card-body{padding:var(--spacing-md)}.schedule-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.schedule-info-item{display:flex;align-items:flex-start;gap:var(--spacing-xs)}.info-icon{color:var(--primary-color);flex-shrink:0;margin-top:2px}.info-content{display:flex;flex-direction:column;gap:.25rem}.info-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.info-value{font-size:.875rem;color:var(--text-primary);font-weight:500}.schedule-subject,.schedule-message{margin-top:var(--spacing-md);padding:var(--spacing-sm);background:var(--bg-secondary);border-radius:var(--radius-sm);font-size:.875rem}.schedule-message p{margin:.5rem 0 0;color:var(--text-secondary)}.schedule-recipients{margin-top:var(--spacing-md)}.schedule-recipients strong{font-size:.875rem;color:var(--text-primary)}.recipients-list{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.recipient-badge{background:var(--bg-secondary);border:1px solid var(--border-color);padding:.25rem .75rem;border-radius:var(--radius-full);font-size:.75rem;color:var(--text-primary)}@media (max-width: 768px){.schedule-list{grid-template-columns:1fr}.schedule-card-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.schedule-actions{width:100%;justify-content:flex-end}.schedule-info-grid{grid-template-columns:1fr}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md)}.modal-content{background:var(--bg-primary);border-radius:var(--radius-lg);max-width:600px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);border-bottom:1px solid var(--border-color)}.modal-header h2{margin:0;font-size:1.5rem;color:var(--text-primary)}.modal-close{background:none;border:none;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:color .2s ease}.modal-close:hover{color:var(--text-primary)}.modal-body{padding:var(--spacing-lg);overflow-y:auto;flex:1}.modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-md);padding:var(--spacing-lg);border-top:1px solid var(--border-color)}.form-group{margin-bottom:var(--spacing-lg)}.form-group label{display:block;margin-bottom:var(--spacing-sm);font-weight:600;color:var(--text-primary);font-size:.875rem}.form-group label .required{color:var(--error-color);margin-left:.25rem}.form-group input[type=text],.form-group input[type=email],.form-group input[type=number],.form-group select,.form-group textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-primary);font-size:.875rem;transition:border-color .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #0000001a}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:var(--error-color)}.form-hint{display:block;margin-top:.25rem;font-size:.75rem;color:var(--text-secondary)}.error-message{display:block;margin-top:.25rem;font-size:.75rem;color:var(--error-color)}.email-input-group{display:flex;gap:var(--spacing-sm)}.email-input-group input{flex:1}.btn-add-email{padding:var(--spacing-sm) var(--spacing-lg);background:var(--primary-color);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;font-weight:600;transition:background .2s ease}.btn-add-email:hover{background:var(--text-primary)}.email-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:var(--spacing-sm)}.email-tag{background:var(--bg-secondary);border:1px solid var(--border-color);padding:.25rem .75rem;border-radius:var(--radius-full);font-size:.75rem;display:flex;align-items:center;gap:.5rem;color:var(--text-primary)}.email-tag-remove{background:none;border:none;cursor:pointer;padding:0;font-size:1.25rem;line-height:1;color:var(--text-secondary);transition:color .2s ease}.email-tag-remove:hover{color:var(--error-color)}.form-group-checkbox label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer}.form-group-checkbox input[type=checkbox]{width:auto;cursor:pointer}.btn-primary,.btn-secondary,.btn-danger{padding:.625rem 1.25rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;font-size:.875rem;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.btn-primary{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 2px 4px #10b9814d}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);transform:translateY(-1px);box-shadow:0 4px 8px #10b98166}.btn-primary:disabled{opacity:.6;cursor:not-allowed;background:#9ca3af;box-shadow:none}.btn-secondary{background:#fff;color:#374151;border:1px solid #D1D5DB}.btn-secondary:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 2px 4px #ef44444d}.btn-danger:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-1px);box-shadow:0 4px 8px #ef444466}.modal-large{max-width:700px}.modal-header-icon{color:var(--primary-color);margin-right:.5rem}.modal-header h2{display:flex;align-items:center}.modal-section{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--border-color)}.modal-section:last-of-type{border-bottom:none}.section-title{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-md)}.section-title svg{color:var(--primary-color)}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.btn-with-icon{display:inline-flex;align-items:center;gap:.5rem}.btn-with-icon .spinner{animation:spin 1s linear infinite}@media (max-width: 768px){.modal-content{max-width:100%;max-height:100vh;border-radius:0}.modal-large{max-width:100%}.modal-overlay{padding:0}.email-input-group{flex-direction:column}.btn-add-email{width:100%}.form-row{grid-template-columns:1fr}}.history-table-container{overflow-x:auto;border-radius:var(--radius-md);border:1px solid var(--border-color)}.history-table{width:100%;border-collapse:collapse;font-size:.875rem}.history-table thead{background:var(--bg-secondary);border-bottom:2px solid var(--border-color)}.history-table th{padding:1rem;text-align:left;font-weight:600;color:var(--text-primary);text-transform:uppercase;font-size:.75rem;letter-spacing:.5px;white-space:nowrap}.history-table tbody tr{transition:background .15s ease;border-bottom:1px solid var(--border-color)}.history-table tbody tr:hover{background:var(--bg-secondary)}.history-table tbody tr:last-child{border-bottom:none}.history-table td{padding:.875rem 1rem;color:var(--text-primary)}.date-cell{white-space:nowrap;font-weight:500}.customer-type-cell strong{color:var(--text-primary);font-size:.875rem}.date-range-cell{color:var(--text-secondary);font-size:.8125rem}.recipients-cell{max-width:250px}.recipients-preview{display:flex;flex-wrap:wrap;gap:.375rem;align-items:center}.recipient-tag-small{background:var(--bg-secondary);border:1px solid var(--border-color);padding:.125rem .5rem;border-radius:var(--radius-full);font-size:.6875rem;color:var(--text-primary);max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recipient-more{font-size:.6875rem;color:var(--text-secondary);font-weight:500}.status-cell{display:flex;align-items:center;gap:.5rem}.status-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .625rem;border-radius:var(--radius-full);font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.status-sent{background:#dcfce7;color:#166534}.status-pending{background:#fef9c3;color:#854d0e}.status-failed{background:#fee2e2;color:#991b1b}.error-tooltip{position:relative;display:inline-flex;align-items:center;cursor:help;color:#991b1b}.error-tooltip:hover .tooltip-text{visibility:visible;opacity:1}.tooltip-text{visibility:hidden;opacity:0;position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:#1f2937;color:#fff;padding:.5rem .75rem;border-radius:var(--radius-sm);font-size:.75rem;white-space:nowrap;max-width:300px;white-space:normal;z-index:100;transition:all .2s ease;margin-bottom:.5rem}.tooltip-text:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#1f2937}.actions-cell{white-space:nowrap}.action-buttons{display:flex;gap:.5rem;align-items:center}.action-btn-small{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;background:#6b7280;color:#fff;border:none;border-radius:6px;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s ease}.action-btn-small:hover{transform:translateY(-1px)}.action-btn-small:disabled{opacity:.5;cursor:not-allowed}.action-btn-preview{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 2px 4px #3b82f64d}.action-btn-preview:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 4px 8px #3b82f666}.action-btn-download{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 2px 4px #10b9814d}.action-btn-download:hover{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 4px 8px #10b98166}.history-table-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:var(--text-secondary)}.history-table-loading .loading-spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.history-table-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;text-align:center;color:var(--text-secondary)}.history-table-empty .empty-icon{color:var(--text-secondary);opacity:.5;margin-bottom:1rem}.history-table-empty h3{margin:0 0 .5rem;color:var(--text-primary);font-weight:600}.history-table-empty p{margin:0;font-size:.875rem}.history-pagination{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-top:1px solid var(--border-color);background:var(--bg-secondary)}.pagination-info{font-size:.875rem;color:var(--text-secondary)}.pagination-controls{display:flex;gap:.5rem}.pagination-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s ease;color:var(--text-primary)}.pagination-btn:hover:not(:disabled){background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.pagination-btn.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}@media (max-width: 768px){.history-table{font-size:.8125rem}.history-table th,.history-table td{padding:.625rem .5rem}.recipients-cell{max-width:120px}.history-pagination{flex-direction:column;gap:.75rem}}.history-filters-compact{margin-bottom:1rem}.filters-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.filter-icon{color:#9ca3af;flex-shrink:0}.filter-select-compact{padding:.375rem 1.75rem .375rem .625rem;border:1px solid #e5e7eb;border-radius:.375rem;background:#fff;color:var(--text-primary, #374151);font-size:.8125rem;cursor:pointer;transition:all .15s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .375rem center;background-size:12px;min-width:130px}.filter-select-compact:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 2px #6366f11a}.filter-select-compact:hover:not(:focus){border-color:#d1d5db}.clear-btn-compact{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:1px solid transparent;border-radius:.375rem;color:#9ca3af;cursor:pointer;transition:all .15s ease;flex-shrink:0}.clear-btn-compact:hover{background:#fef2f2;color:#ef4444;border-color:#fecaca}.results-badge{margin-left:auto;font-size:.75rem;color:#6b7280;font-weight:500;background:#f3f4f6;padding:.25rem .5rem;border-radius:9999px;min-width:1.5rem;text-align:center}@media (max-width: 480px){.filters-row{gap:.375rem}.filter-select-compact{min-width:110px;font-size:.75rem;padding:.3rem 1.5rem .3rem .5rem}.results-badge{margin-left:0}}.partner-control-page{padding:1.5rem 2rem;max-width:87.5rem;margin:0 auto;background-color:var(--bg-primary, #f9fafb);min-height:100vh;color:var(--text-primary, #111827);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.page-header{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid var(--border-color, #e5e7eb)}.page-header h1{margin:0 0 .75rem;font-size:2.4rem;font-weight:700;color:var(--text-primary, #111827)}.page-header .description{margin:0;font-size:1.1rem;color:var(--text-secondary, #6b7280);line-height:1.5}.modern-tabs{display:flex;gap:1rem;margin-bottom:2rem;border-bottom:2px solid #e2e8f0;padding-bottom:0}.modern-tab{display:flex;align-items:center;gap:.5rem;padding:1rem 1.5rem;background:transparent;border:none;border-bottom:3px solid transparent;color:#718096;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;position:relative;margin-bottom:-2px}.modern-tab:hover{color:#2d3748;background:#f7fafc}.modern-tab.active{color:#2d3748;border-bottom-color:var(--primary-color, #000000);background:var(--card-bg)}.modern-tab span{font-size:.95rem}.tab-content{animation:fadeIn .3s ease;display:flex;justify-content:center;width:100%}.tab-content .content-card{max-width:800px;width:100%;margin:0 auto}.info-box{background:var(--bg-secondary, #f9fafb);padding:1.5rem 2rem;border-radius:12px;border:1px solid var(--border-color, #e5e7eb);margin-bottom:1.5rem}.info-box h3{margin:0 0 1rem;font-size:1.125rem;font-weight:600;color:var(--text-primary, #111827)}.info-box ul{margin:0 0 1rem;padding-left:1.5rem;color:var(--text-secondary, #6b7280)}.info-box li{margin-bottom:.5rem;line-height:1.6}.info-note{margin:1rem 0 0;padding:.75rem 1rem;background:var(--card-bg);border-radius:8px;color:var(--text-secondary, #6b7280);font-size:.875rem;border:1px solid var(--border-color, #e5e7eb)}.content-card{background:var(--card-bg, #ffffff);padding:2rem;border-radius:.75rem;box-shadow:0 1px 2px #0000000a;margin-bottom:1.5rem;border:1px solid var(--border-color, #e5e7eb)}.card-description{margin:0 0 2rem;color:var(--text-secondary, #6b7280);font-size:.9375rem;line-height:1.6;text-align:center}.content-card h2{margin:0 0 1rem;font-size:1.25rem;font-weight:600;color:var(--text-primary, #111827);display:flex;align-items:center;gap:.5rem}.content-card h3{margin:0 0 .75rem;font-size:1rem;font-weight:600;color:var(--text-primary, #111827)}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-color, #e5e7eb)}.card-header h2{margin:0;font-size:1.5rem;font-weight:600;color:var(--text-primary, #111827)}.card-header h2{margin:0;font-size:1.125rem;font-weight:600}.filter-section{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem;padding:1.5rem;background:var(--card-bg, #ffffff);border-radius:.75rem;border:1px solid var(--border-color, #e5e7eb)}.filter-section h2{margin:0 0 .5rem;font-size:1.25rem;font-weight:600;color:var(--text-primary, #111827);display:flex;align-items:center;gap:.5rem}.date-filters{display:flex;gap:1rem;flex-wrap:wrap}.date-input-group{display:flex;flex-direction:column;gap:.5rem;flex:1;min-width:200px}.date-input-group label{font-weight:500;color:#4a5568;font-size:.875rem;display:flex;align-items:center;gap:.375rem}.date-input{padding:.75rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;color:#2d3748;background:var(--card-bg);transition:all .2s ease}.date-input:focus{outline:none;border-color:var(--primary-color, #000000);box-shadow:0 0 0 3px #0000001a}.customer-type-filters{display:flex;flex-direction:column;gap:.75rem}.customer-type-filters>label{font-weight:600;color:var(--text-primary, #111827);font-size:.875rem}.type-checkboxes{display:flex;flex-wrap:wrap;gap:.75rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .2s ease;font-size:.875rem}.checkbox-label:hover{background:#edf2f7;border-color:#cbd5e0}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.load-data-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;background:var(--gradient-primary, linear-gradient(135deg, #000000 0%, #374151 100%));color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #0003;margin-top:.5rem;width:100%;max-width:300px;align-self:flex-start}.load-data-btn:hover:not(:disabled){background:linear-gradient(135deg,#1f2937,#111827);box-shadow:0 4px 8px #0000004d;transform:translateY(-1px)}.load-data-btn:disabled{opacity:.5;cursor:not-allowed}.filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem;max-width:600px;margin-left:auto;margin-right:auto}.filter-group{display:flex;flex-direction:column;gap:.5rem;max-width:600px;margin-left:auto;margin-right:auto}.filter-group label{font-weight:500;color:#4a5568;font-size:.875rem;display:flex;align-items:center;gap:.375rem;text-align:left}.filter-group>label:first-child{font-weight:600;color:var(--text-primary, #111827);margin-bottom:.25rem}.checkbox-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem;margin-top:.5rem;max-width:600px;margin-left:auto;margin-right:auto}.modern-checkbox{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .2s ease;font-size:.875rem}.modern-checkbox:hover{background:#edf2f7;border-color:#cbd5e0}.modern-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer}.more-types{max-width:600px;margin:1rem auto 0}.more-types summary{cursor:pointer;font-weight:500;color:var(--text-secondary, #6b7280);padding:.5rem;border-radius:6px;transition:all .2s ease}.more-types summary:hover{background:var(--bg-secondary, #f9fafb);color:var(--text-primary, #111827)}.modern-checkbox span{color:#2d3748;font-weight:500}.modern-input,.modern-select{width:100%;padding:.75rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;color:#2d3748;background:var(--card-bg);transition:all .2s ease}.modern-input:focus,.modern-select:focus{outline:none;border-color:var(--primary-color, #000000);box-shadow:0 0 0 3px #0000001a}.modern-input::placeholder{color:#a0aec0}textarea.modern-input{resize:vertical;min-height:80px;font-family:inherit}.modern-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap;box-sizing:border-box}.modern-btn:disabled{opacity:.5;cursor:not-allowed}.modern-btn.primary{background:var(--gradient-primary, linear-gradient(135deg, #000000 0%, #374151 100%));color:#fff;box-shadow:0 2px 4px #0003;border:1px solid transparent;box-sizing:border-box}.modern-btn.primary:hover:not(:disabled){background:linear-gradient(135deg,#1f2937,#111827);box-shadow:0 4px 8px #0000004d;transform:translateY(-1px)}.tab-content .content-card .modern-btn.primary{display:flex;justify-content:center;align-items:center;margin:2rem auto 0;width:auto;min-width:200px}.modern-btn.secondary{background:#edf2f7;color:#2d3748;border:1px solid #e2e8f0;box-sizing:border-box}.modern-btn.secondary:hover:not(:disabled){background:#e2e8f0;border-color:#cbd5e0}.modern-btn.small{padding:.5rem 1rem;font-size:.8125rem}.modern-report-viewer{max-width:100%;margin-top:2rem}.report-header-modern{background:#fff;border-radius:16px;padding:2.5rem;margin-bottom:2rem;border:none;box-shadow:0 1px 3px #0000000d,0 1px 2px #0000001a}.report-header-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #f3f4f6}.report-title-wrapper{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.report-title-modern{font-size:2.25rem;font-weight:700;color:#111827;margin:0;letter-spacing:-.03em;line-height:1.2}.export-pdf-btn-modern{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#111827;color:#fff;border:none;border-radius:10px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 3px #0000001f;height:fit-content}.export-pdf-btn-modern:hover:not(:disabled){background:#1f2937;box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.export-pdf-btn-modern:disabled{opacity:.6;cursor:not-allowed}.report-meta-modern{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.meta-item{display:flex;flex-direction:column;gap:.25rem}.meta-label{font-size:.75rem;color:#9ca3af;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.meta-value{font-size:.9375rem;color:#111827;font-weight:500}.meta-divider{width:1px;height:2rem;background:#e5e7eb}.report-header{background:linear-gradient(135deg,#fff,#f8fafc);border-radius:16px;padding:2rem;margin-bottom:2rem;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000d}.report-header-content{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem}.report-title-section{flex:1}.report-title{font-size:2rem;font-weight:700;color:#111827;margin:0 0 .75rem;letter-spacing:-.02em}.report-meta{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.report-period{font-size:1rem;color:#6b7280;font-weight:500}.report-partner{font-size:.9375rem;color:#9ca3af}.report-generated{font-size:.875rem;color:#9ca3af}.export-pdf-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#111827;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 2px #0000001a}.export-pdf-btn:hover:not(:disabled){background:#1f2937;box-shadow:0 2px 4px #00000026;transform:translateY(-1px)}.export-pdf-btn:disabled{opacity:.6;cursor:not-allowed}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.kpi-card{background:#fff;border-radius:12px;padding:1.5rem;border:1px solid #e5e7eb;display:flex;align-items:flex-start;gap:1rem;transition:all .2s ease;box-shadow:0 1px 2px #0000000d;overflow:hidden;max-width:100%;box-sizing:border-box;min-height:120px}.kpi-card:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-2px);border-color:#d1d5db}.kpi-icon{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.kpi-icon-primary{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.kpi-icon-success{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.kpi-icon-accent{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff}.kpi-icon-info{background:linear-gradient(135deg,#06b6d4,#0891b2);color:#fff}.kpi-icon-warning{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.kpi-content{flex:1;min-width:0;overflow:hidden;display:flex;flex-direction:column}.kpi-label{font-size:.8125rem;color:#6b7280;font-weight:500;margin-bottom:.5rem;line-height:1.4;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.kpi-value{font-size:clamp(1.125rem,2vw,1.75rem);font-weight:700;color:#111827;line-height:1.2;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.kpi-value-success{color:#10b981}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin-bottom:2rem}.metric-card{background:linear-gradient(135deg,#f7fafc,#edf2f7);padding:1.5rem;border-radius:12px;border:1px solid #e2e8f0;transition:transform .2s ease,box-shadow .2s ease;display:flex;align-items:center;gap:1rem;box-shadow:0 1px 3px #0000000d}.metric-card:hover{transform:translateY(-3px);box-shadow:0 6px 12px #0000001f}.metric-icon{width:48px;height:48px;background:linear-gradient(135deg,#2563eb,#1d4ed8);border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;box-shadow:0 2px 4px #2563eb33}.metric-content{display:flex;flex-direction:column;flex:1}.metric-label{font-size:.875rem;color:#718096;font-weight:500;margin-bottom:.5rem}.metric-value{font-size:2rem;font-weight:700;color:#2d3748;line-height:1.2}.metric-value.success{color:#10b981}.metric-value.error{color:#ef4444}.data-table{overflow-x:auto;margin-top:1.5rem;border-radius:12px;box-shadow:0 1px 3px #0000000d;background:#fff;border:1px solid #e5e7eb}.data-table table{width:100%;border-collapse:separate;border-spacing:0;background:#fff}.data-table thead{background:#fafafa;position:sticky;top:0;z-index:10}.data-table th{padding:1rem 1.5rem;text-align:left;font-weight:600;color:#374151;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;border-bottom:1px solid #e5e7eb}.data-table td{padding:1.25rem 1.5rem;border-bottom:1px solid #f3f4f6;color:#111827;font-size:.875rem;vertical-align:middle;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.data-table tbody tr{transition:background .15s ease}.data-table tbody tr:nth-child(2n){background:#fafafa}.data-table tbody tr:hover{background:#f9fafb}.data-table tbody tr:last-child td{border-bottom:none}.currency-cell{text-align:right;font-weight:600;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace;color:#111827}.distribution-section{margin-top:2rem;margin-bottom:2rem;padding:0;background:transparent;border-radius:0;border:none;box-shadow:none}.distribution-section h3{font-size:1.5rem;font-weight:700;color:#111827;margin-bottom:1.5rem;display:flex;align-items:center;gap:.75rem;padding:0;border:none;letter-spacing:-.01em}.distribution-section h3 svg{color:#6366f1}.distribution-table{overflow-x:auto;margin-top:1rem}.distribution-table table{width:100%;border-collapse:collapse;background:var(--card-bg, #fff);border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.distribution-table thead{background:#f7fafc;border-bottom:2px solid #e2e8f0}.distribution-table th{padding:.875rem 1rem;text-align:left;font-weight:600;color:#4a5568;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.distribution-table td{padding:.875rem 1rem;border-bottom:1px solid #e2e8f0;color:#2d3748;font-size:.875rem}.distribution-table tbody tr{transition:background .15s ease}.distribution-table tbody tr:hover{background:#f7fafc}.distribution-table tbody tr:last-child td{border-bottom:none}.section-header-modern{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.section-title-modern{font-size:1.5rem;font-weight:700;color:#111827;margin:0;letter-spacing:-.02em;display:flex;align-items:center;gap:.75rem}.section-title-modern svg{color:#6366f1;flex-shrink:0}.section-count{font-size:.875rem;color:#6b7280;font-weight:500;padding:.375rem .75rem;background:#f3f4f6;border-radius:6px}.customer-distribution-modern{margin-bottom:3rem}.distribution-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.distribution-card{background:#fff;border-radius:12px;padding:1.5rem;border:1px solid #e5e7eb;box-shadow:0 1px 2px #0000000d;transition:all .2s ease}.distribution-card:hover{box-shadow:0 4px 12px #00000014;border-color:#d1d5db;transform:translateY(-2px)}.distribution-card-header{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #f3f4f6}.distribution-type{font-size:1.125rem;font-weight:600;color:#111827;margin:0}.distribution-stats{display:flex;flex-direction:column;gap:.75rem}.stat-row{display:flex;justify-content:space-between;align-items:center}.stat-label{font-size:.875rem;color:#6b7280;font-weight:500}.stat-value{font-size:.9375rem;font-weight:600;color:#111827}.stat-value.currency{font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace;font-weight:600}.projects-section-modern{margin-bottom:3rem}.projects-grid-modern{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:1.5rem}.project-card-modern{background:#fff;border-radius:12px;padding:1.5rem;border:1px solid #e5e7eb;box-shadow:0 1px 2px #0000000d;transition:all .2s ease}.project-card-modern:hover{box-shadow:0 4px 12px #00000014;border-color:#d1d5db;transform:translateY(-2px)}.project-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid #f3f4f6}.project-number{font-size:1.125rem;font-weight:700;color:#111827;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace}.status-badge-modern{display:inline-block;padding:.375rem .875rem;border-radius:8px;font-size:.8125rem;font-weight:600;text-transform:none;letter-spacing:normal;white-space:nowrap}.status-badge-modern.badge-success{background:#d1fae5;color:#065f46;border:1px solid #6ee7b7}.status-badge-modern.badge-warning{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.status-badge-modern.badge-error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.status-badge-modern.badge-info{background:#dbeafe;color:#1e40af;border:1px solid #93c5fd}.project-card-body{display:flex;flex-direction:column;gap:1rem}.project-field{display:flex;flex-direction:column;gap:.25rem}.project-field-group{display:flex;flex-direction:column;gap:.75rem;padding-top:.75rem;border-top:1px solid #f3f4f6}.field-label{font-size:.75rem;color:#9ca3af;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.field-value{font-size:.9375rem;color:#111827;font-weight:500}.field-value.currency-large{font-size:1.125rem;font-weight:700;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace;color:#111827}.feedback-cards-section{margin-top:2rem;margin-bottom:2rem}.section-header{margin-bottom:1.5rem}.section-title{display:flex;align-items:center;gap:.75rem}.section-title h2{font-size:1.5rem;font-weight:700;color:#111827;margin:0;letter-spacing:-.01em}.section-title svg{color:#6366f1}.feedback-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.25rem}.feedback-card{background:#fff;border-radius:12px;padding:1.5rem;border:1px solid #e5e7eb;box-shadow:0 1px 2px #0000000d;transition:all .2s ease}.feedback-card:hover{box-shadow:0 4px 12px #00000014;border-color:#d1d5db;transform:translateY(-2px)}.feedback-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #f3f4f6}.feedback-project-info{display:flex;flex-direction:column;gap:.25rem}.feedback-project-nr{font-size:.875rem;font-weight:600;color:#111827;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace}.feedback-broker-nr{font-size:.75rem;color:#6b7280}.feedback-rating{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:8px;color:#92400e;font-weight:600}.feedback-rating svg{color:#f59e0b}.rating-value{font-size:.9375rem}.feedback-comment-text{font-size:.875rem;line-height:1.6;color:#374151;white-space:pre-wrap;word-wrap:break-word}.contractor-feedback-section{margin-top:2rem;margin-bottom:2rem;padding:1.5rem;background:var(--card-bg, #fff);border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000d}.contractor-feedback-section h3{font-size:1.25rem;font-weight:600;color:#2d3748;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem;padding-bottom:.75rem;border-bottom:2px solid #e2e8f0}.rating-display{display:inline-flex;align-items:center;gap:.25rem;font-weight:600;color:#2d3748}.feedback-comment{max-width:400px;word-wrap:break-word;white-space:normal;line-height:1.5}.feedback-comment.emoji-safe,.feedback-comment-text.emoji-safe{font-family:system-ui,-apple-system,Segoe UI,"Noto Color Emoji","Apple Color Emoji","Segoe UI Emoji",sans-serif;word-wrap:break-word;overflow-wrap:break-word;white-space:pre-wrap;line-height:1.6}.status-badge{display:inline-block;padding:.375rem .75rem;border-radius:6px;font-size:.8125rem;font-weight:600;text-transform:none;letter-spacing:normal;white-space:nowrap}.status-badge.badge-success{background:#d1fae5;color:#065f46;border:1px solid #6ee7b7}.status-badge.badge-warning{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.status-badge.badge-error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.status-badge.badge-info{background:#dbeafe;color:#1e40af;border:1px solid #93c5fd}.quick-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-card{background:var(--card-bg, #fff);border:1px solid #e2e8f0;border-radius:10px;padding:1.25rem;display:flex;align-items:center;gap:1rem;transition:all .2s ease}.stat-card:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.stat-icon{width:48px;height:48px;background:#1a1a1a;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff}.stat-content{display:flex;flex-direction:column}.stat-value{font-size:1.75rem;font-weight:700;color:#2d3748;line-height:1.2}.stat-label{font-size:.8125rem;color:#718096;font-weight:500}.header-actions{display:flex;gap:.75rem;align-items:center}.header-actions .modern-btn{height:auto;min-height:2.75rem;display:inline-flex;align-items:center}.error-banner{display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;background:#fed7d7;border:1px solid #fc8181;border-radius:10px;color:#742a2a;margin-bottom:1.5rem;font-size:.875rem}.pagination-controls{display:flex;justify-content:center;align-items:center;gap:1rem;padding:1.5rem;border-top:1px solid #e2e8f0;margin-top:1rem}.pagination-info{font-size:.875rem;color:#718096}.schedule-card{background:#f7fafc;border:1px solid #e2e8f0;border-radius:10px;padding:1.5rem;transition:all .2s ease}.schedule-card:hover{border-color:#cbd5e0;box-shadow:0 2px 8px #00000014}.schedule-card.paused{opacity:.7;background:#fff}.schedule-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:1rem}.schedule-header h3{margin:0;font-size:1.125rem;font-weight:600;color:#2d3748}.schedule-frequency{display:flex;align-items:center;gap:.375rem;margin:.25rem 0 0;font-size:.875rem;color:#718096}.schedule-status{display:flex;gap:.5rem}.schedule-details{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.detail-row{font-size:.875rem;color:#4a5568}.detail-row strong{color:#2d3748;font-weight:600}.schedule-actions{display:flex;gap:.5rem;padding-top:1rem;border-top:1px solid #e2e8f0}.action-btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem .75rem;background:var(--card-bg);border:1px solid #e2e8f0;border-radius:6px;color:#4a5568;cursor:pointer;transition:all .2s ease}.action-btn:hover{background:#f7fafc;border-color:#cbd5e0;color:#2d3748}.action-btn.danger{color:#e53e3e}.action-btn.danger:hover{background:#fff5f5;border-color:#feb2b2}.badge{display:inline-flex;align-items:center;padding:.375rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.badge.success{background:var(--success-bg, #f0fdf4);color:var(--success-color, #10b981);border:1px solid var(--success-border, #86efac)}.badge.warning{background:#feebc8;color:#7c2d12}.badge.error{background:#fed7d7;color:#742a2a}.loading-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:#718096}.loading-state svg,.empty-state svg{color:#cbd5e0;margin-bottom:1rem}.empty-state h3{margin:0 0 .5rem;font-size:1.25rem;font-weight:600;color:#2d3748}.empty-state p{margin:0 0 1.5rem;color:#718096;max-width:400px}.alert{padding:1rem 1.5rem;border-radius:8px;margin-bottom:1.5rem;border-left:4px solid;font-size:.875rem}.alert.error{background:#fed7d7;border-color:#e53e3e;color:#742a2a}.alert.success{background:var(--success-bg, #f0fdf4);border-color:var(--success-color, #10b981);color:var(--text-primary, #111827)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease}.modal-content{background:var(--card-bg);border-radius:12px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;animation:slideUp .3s ease}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid #e2e8f0}.modal-header h2{margin:0;font-size:1.5rem;font-weight:600;color:#2d3748;display:flex;align-items:center;gap:.5rem}.close-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:none;background:#f7fafc;border-radius:6px;color:#718096;cursor:pointer;transition:all .2s ease}.close-btn:hover{background:#edf2f7;color:#2d3748}.modal-body{padding:2rem}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1.5rem 2rem;border-top:1px solid #e2e8f0;background:#f7fafc}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#4a5568;font-size:.875rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.email-input-group{display:flex;gap:.5rem;margin-bottom:.5rem}.email-input-group .modern-input{flex:1}.remove-btn{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;padding:0;border:1px solid #e2e8f0;background:var(--card-bg);border-radius:6px;color:#e53e3e;cursor:pointer;transition:all .2s ease;flex-shrink:0}.remove-btn:hover{background:#fff5f5;border-color:#feb2b2}.history-filters{display:flex;gap:.75rem}.history-filters select{min-width:150px}@media (max-width: 768px){.partner-control-page{padding:1rem}.page-header{padding:1.5rem}.page-header h1{font-size:1.5rem}.report-header-modern{padding:1.5rem}.report-header-top{flex-direction:column;gap:1rem;align-items:flex-start}.report-title-modern{font-size:1.75rem}.report-meta-modern{flex-direction:column;gap:1rem;align-items:flex-start}.meta-divider{display:none}.report-header{padding:1.5rem}.report-header-content{flex-direction:column;gap:1.5rem}.report-title{font-size:1.5rem}.distribution-grid,.projects-grid-modern,.feedback-cards-grid{grid-template-columns:1fr}.kpi-grid{grid-template-columns:1fr;gap:1rem}.feedback-cards-grid{grid-template-columns:1fr}.data-table{font-size:.8125rem}.data-table th,.data-table td{padding:.75rem 1rem}.modern-tabs{overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.modern-tabs::-webkit-scrollbar{display:none}.modern-tab{padding:.75rem 1rem;white-space:nowrap}.content-card{padding:1.5rem}.filters-grid,.checkbox-grid,.metrics-grid{grid-template-columns:1fr}.card-header{flex-direction:column;align-items:flex-start;gap:1rem}.form-row{grid-template-columns:1fr}.data-table{font-size:.75rem}.data-table th,.data-table td{padding:.625rem .75rem}.kpi-card{padding:1.25rem;min-height:auto;gap:.75rem}.kpi-icon{width:40px;height:40px}.kpi-value{font-size:clamp(1rem,4vw,1.5rem);-webkit-line-clamp:3}.kpi-label{font-size:.75rem;-webkit-line-clamp:3}.modal-content{max-width:100%;margin:1rem}.modal-body{padding:1.5rem}}@media (max-width: 480px){.page-header h1{font-size:1.25rem}.content-card h2{font-size:1.125rem}.modern-btn{width:100%;justify-content:center}.schedule-header{flex-direction:column;gap:.75rem}.schedule-actions{flex-wrap:wrap}.action-btn{flex:1;min-width:80px}}.dashboard-page{padding:2.5rem 3rem;max-width:1400px;margin:0 auto;width:100%;color:#0f172a;background:#f5f6f8;min-height:100vh}.dashboard-header{background:linear-gradient(120deg,#4a00fff2,#5826ffbf 45%,#fffffff2);border:none;border-radius:1.5rem;padding:2.25rem 2.75rem;margin-bottom:2rem;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 12px 30px #0f172a1f,0 6px 20px #4a00ff33}.dashboard-header:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 18% 20%,rgba(255,255,255,.28),transparent 55%),linear-gradient(135deg,#ffffff1f,#fff0 60%),repeating-linear-gradient(135deg,rgba(255,255,255,.06) 0,rgba(255,255,255,.06) 1px,transparent 1px,transparent 7px);opacity:.7;pointer-events:none}.dashboard-header:after{content:"";position:absolute;left:2.75rem;right:2.75rem;bottom:1rem;height:2px;background:#4a00ff;opacity:.45;border-radius:999px}.dashboard-header:hover{transform:translateY(-2px);box-shadow:0 18px 40px #0f172a29,0 10px 28px #4a00ff47}.dashboard-header-content{display:flex;justify-content:space-between;align-items:center;gap:2rem;width:100%}.dashboard-header-left{flex:1}.dashboard-title{font-size:2.6rem;font-weight:800;margin:0 0 .5rem;color:#fff;letter-spacing:-.03em;line-height:1.1;text-shadow:0 6px 20px rgba(15,23,42,.3)}.dashboard-subtitle{font-size:1.05rem;color:#ffffffdb;margin:0;font-weight:400;line-height:1.5}.dashboard-header-right{display:flex;align-items:center;gap:1rem;margin-left:auto}.dashboard-datetime{text-align:right;padding:1.1rem 1.5rem;background:#ffffffeb;border-radius:1rem;border:1px solid rgba(255,255,255,.7);box-shadow:0 10px 24px #0f172a26;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.dashboard-time{font-size:1.7rem;font-weight:700;color:#4a00ff;margin-bottom:.25rem;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;letter-spacing:-.03em}.dashboard-date{font-size:.8125rem;color:#94a3b8;font-weight:500;text-transform:uppercase;letter-spacing:.08em}.dashboard-weather-card{display:flex;align-items:center;gap:1.25rem;padding:1.1rem 1.5rem;background:#fffffff0;border-radius:1.25rem;border:1px solid rgba(255,255,255,.7);box-shadow:0 10px 24px #0f172a26;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);min-width:18rem}.dashboard-weather-time{min-width:7.5rem}.dashboard-weather-divider{width:1px;height:2.5rem;background:#94a3b873}.dashboard-weather-info{display:grid;grid-template-columns:auto auto;grid-template-rows:auto auto;column-gap:.5rem;row-gap:.15rem;align-items:center}.dashboard-weather-icon{grid-row:1 / span 2;width:2.5rem;height:2.5rem;background:#ffc4002e;color:#f4b400;border-radius:.85rem;display:flex;align-items:center;justify-content:center}.dashboard-weather-temp{font-size:1.3rem;font-weight:700;color:#111827}.dashboard-weather-desc{font-size:.85rem;color:#64748b;font-weight:500}.dashboard-search-container{position:relative;margin-bottom:2rem}.dashboard-search{display:flex;align-items:center;background-color:#fff!important;border-radius:.75rem;box-shadow:0 1px 3px #0000000f;padding:0 1.25rem;border:1px solid transparent;transition:all .2s ease}.dashboard-search:focus-within{border-color:#1a1a2e;background-color:#fff!important;box-shadow:0 4px 12px #00000014}.dashboard-search:hover{background-color:#fff!important;box-shadow:0 2px 8px #00000014}.dashboard-search:active{background-color:#fff!important}.dashboard-search input{flex:1;padding:1rem .75rem;border:none!important;outline:none!important;box-shadow:none!important;font-size:1rem;background:transparent!important;background-color:transparent!important;color:#1a1a2e;-webkit-appearance:none;-moz-appearance:none;appearance:none}.dashboard-search input:focus{background:transparent!important;background-color:transparent!important;border:none!important;outline:none!important;box-shadow:none!important}.dashboard-search input:hover,.dashboard-search input:active{background:transparent!important;background-color:transparent!important}.dashboard-search input::placeholder{color:#9ca3af}.dashboard-search input:-webkit-autofill,.dashboard-search input:-webkit-autofill:hover,.dashboard-search input:-webkit-autofill:focus,.dashboard-search input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 1000px white inset!important;-webkit-text-fill-color:#1a1a1a!important;background-color:transparent!important}.dashboard-search svg{color:#6b7280;flex-shrink:0;transition:color .2s ease}.dashboard-search:focus-within svg{color:#4b5563}.search-btn{background-color:#1a1a1a;color:#fff;border:none;border-radius:.625rem;padding:.625rem 1.25rem;margin-left:.75rem;cursor:pointer;font-weight:500;transition:background-color .2s;font-size:.875rem}.search-btn:hover{background-color:#333}.search-btn:disabled{background-color:#666;cursor:not-allowed}.search-btn-content{display:flex;align-items:center;gap:.5rem}.button-spinner{width:.875rem;height:.875rem;border:.125rem solid rgba(255,255,255,.3);border-top:.125rem solid white;border-radius:50%;animation:button-spinner-rotate 1s linear infinite}@keyframes button-spinner-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.search-clear-btn{background:none;border:none;color:#94a3b8;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:.25rem;border-radius:.25rem;transition:all .15s ease;flex-shrink:0}.search-clear-btn:hover{color:#1a1a2e;background:#f0f0f0}.search-loading-indicator{display:flex;align-items:center;justify-content:center;padding:0;flex-shrink:0;background:transparent!important;margin-right:.25rem}.search-loading-indicator .button-spinner{width:1.125rem;height:1.125rem;border:2px solid #f0f0f0;border-top:2px solid #1a1a2e;border-radius:50%;background:transparent!important;animation:search-spinner-rotate .8s linear infinite}.search-results{position:absolute;top:100%;left:0;right:0;background-color:#fff;border-radius:.75rem;box-shadow:0 8px 24px #0000001f,0 2px 8px #0000000f;margin-top:.75rem;z-index:100;max-height:28rem;overflow-y:auto;border:1px solid transparent}.search-results-header{display:flex;justify-content:space-between;align-items:center;padding:.625rem 1rem;background-color:#fafafa;border-bottom:1px solid #f0f0f0;font-size:.8125rem}.search-results-count{color:#64748b;font-weight:500}.search-email-loading{display:flex;align-items:center;gap:.375rem;color:#1a1a2e;font-size:.75rem}.inline-spinner{width:.625rem;height:.625rem;border:2px solid #f0f0f0;border-top:2px solid #1a1a2e;border-radius:50%;animation:inline-spinner-rotate .8s linear infinite}@keyframes inline-spinner-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.search-result-item{display:flex;align-items:center;padding:1rem 1.25rem;gap:1rem;text-decoration:none;color:#1a1a2e;border-bottom:1px solid #f7f8fa;transition:all .2s ease}.search-result-item:last-child{border-bottom:none}.search-result-item:hover{background-color:#f7f8fa}.search-result-item svg{flex-shrink:0;opacity:.5}.search-result-content{flex:1;min-width:0}.search-result-title{font-weight:700;font-size:.9375rem;color:#1a1a2e;margin-bottom:.25rem}.search-result-subtitle{font-size:.8125rem;color:#6b7280}.search-result-phone{margin-top:.375rem;display:flex;flex-wrap:wrap;gap:.5rem}.phone-number{font-size:.75rem;color:#1a1a2e;background-color:#f0f0f0;padding:.125rem .5rem;border-radius:.25rem;border:1px solid #e0e0e0;font-weight:500}.search-result-empty{padding:1.5rem;text-align:center;color:#94a3b8;font-size:.8125rem}.search-result-snippet{font-size:.75rem;color:#94a3b8;margin-top:.25rem;line-height:1.3;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-loading-indicator{padding:16px 20px;border-bottom:1px solid #f8f8f8;background-color:#fafafa}.search-loading-content{display:flex;align-items:center;gap:12px;color:#666;font-size:.9rem}.search-loading-spinner{width:16px;height:16px;border:2px solid #e0e0e0;border-top:2px solid #1a1a1a;border-radius:50%;animation:search-spinner-rotate 1s linear infinite}@keyframes search-spinner-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.stat-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;margin-bottom:32px;width:100%}.stat-card{background-color:var(--card-bg);border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px;display:flex;align-items:center;gap:18px;min-height:120px;border:1px solid #e0e0e0;transition:transform .2s,box-shadow .2s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001f}.stat-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;color:#fff}.stat-icon.new-contracts{background-color:#2196f3}.stat-icon.avg-time{background-color:#ff9800}.stat-icon.completion-time{background-color:#9c27b0}.stat-icon.ongoing{background-color:#4caf50}.stat-icon.tasks{background-color:#f44336}.stat-content{flex:1}.stat-value{font-size:24px;font-weight:600;line-height:1.2}.stat-label{font-size:14px;color:#666;margin-top:4px}.stat-tooltip{font-size:10px;color:#888;font-style:italic;margin-top:2px}.small-text{font-size:.8em;color:#777}.dashboard-page{padding:1.5rem 2rem;max-width:none;width:100%;color:#333;background:#fff;min-height:100vh}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;margin-bottom:2.5rem}.stat-card-new{background:#fff;border-radius:1rem;padding:1.75rem 1.5rem 2.35rem;box-shadow:0 1px 3px #00000014;border:1px solid #e5e7eb;display:flex;align-items:flex-start;gap:1.25rem;transition:all .2s ease;position:relative;cursor:pointer;min-height:auto}.stat-trend-badge{position:absolute;top:1rem;right:1rem;font-size:.8rem;font-weight:600;padding:.25rem .5rem;border-radius:999px;background:#0f172a0f;color:#64748b}.stat-trend-badge.up{background:#22c55e1f;color:#16a34a}.stat-trend-badge.down{background:#ef44441f;color:#dc2626}.stat-sparkline{display:block;margin-top:.75rem;opacity:.7}.stat-card-new:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px);border-color:#d1d5db}.stat-card-new.clickable{cursor:pointer}.stat-card-new.active{border-color:#000;background:#fff;box-shadow:0 4px 20px #00000026;transform:translateY(-2px)}.stat-card-new.active:after{content:"";position:absolute;bottom:0;left:1.5rem;right:1.5rem;height:3px;background:#000;border-radius:1.5px}.stat-card-icon{width:3.25rem;height:3.25rem;background:#000;border-radius:.75rem;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.375rem;flex-shrink:0;transition:all .2s ease;box-shadow:0 2px 8px #00000026}.stat-card-new:hover .stat-card-icon{transform:scale(1.08);box-shadow:0 4px 12px #0003}.stat-card-new.active .stat-card-icon{background:#000;transform:scale(1.08);box-shadow:0 4px 12px #00000040}.stat-card-icon.ai-task{background:#1f2937}.stat-card-content{flex:1;min-width:0}.stat-number{font-size:2rem;font-weight:700;color:#0f172a;margin:0 0 .375rem;line-height:1;transition:color .2s ease;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat-card-new.active .stat-number,.stat-card-new.clickable .stat-number{color:#0f172a}.stat-label{font-size:.875rem;color:#64748b;margin:0;font-weight:500;transition:color .2s ease;line-height:1.4;text-transform:uppercase;letter-spacing:.03em}.stat-card-new.active .stat-label{color:#475569}.main-content-section{min-height:auto;transition:box-shadow .2s ease}.dynamic-content{min-height:18rem;opacity:1;transform:translateY(0);transition:opacity .3s ease}.content-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(24rem,1fr));grid-template-rows:repeat(2,auto);gap:1.25rem;width:100%;animation:fadeInUp .3s ease-out;overflow:hidden}@keyframes fadeInUp{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:translateY(0)}}.ringeliste-grid{grid-template-columns:repeat(auto-fill,minmax(22rem,1fr));grid-template-rows:repeat(2,auto)}.no-data-message{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:#6b7280;grid-column:1 / -1;background:#fff;border-radius:1rem;border:1px dashed #d1d5db}.no-data-message svg{opacity:.3;color:#000}.no-data-message h3{margin:1.25rem 0 .5rem;font-size:1.125rem;font-weight:700;color:#000}.no-data-message p{margin:0;font-size:.9375rem;color:#6b7280}.ringeliste-card{background:#fff;border-radius:.75rem;padding:1.5rem;text-decoration:none;color:inherit;border:1px solid #e5e7eb;transition:all .2s ease;display:flex;flex-direction:column;gap:1.25rem;min-height:auto;box-shadow:0 1px 3px #0000000f}.ringeliste-card:hover{background:#fff;box-shadow:0 4px 16px #0000001f;transform:translateY(-2px);border-color:#d1d5db}.ringeliste-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.ringeliste-details{display:flex;flex-direction:column;gap:.75rem;flex:1}.ringeliste-actions{display:flex;justify-content:flex-end;align-items:center}.priority-indicator{background:#fff3cd;color:#856404;padding:.375rem .75rem;border-radius:.5rem;font-size:.8rem;font-weight:500;border:.0625rem solid #ffeaa7}.card-section{background:#fff;border-radius:1rem;padding:2rem;box-shadow:0 1px 3px #00000014;border:1px solid #e5e7eb;transition:all .2s ease}.card-section:hover{box-shadow:0 4px 16px #0000001f}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.75rem;padding-bottom:0;border-bottom:none}.card-header h2{font-size:1.25rem;font-weight:700;color:#000;margin:0;letter-spacing:-.02em}.view-all-link{color:#000;text-decoration:none;font-weight:600;font-size:.875rem;padding:.5rem 1rem;border-radius:.5rem;background:transparent;transition:all .2s ease;border:1px solid #e5e7eb}.view-all-link:hover{background:#000;color:#fff;border-color:#000;box-shadow:0 2px 8px #00000026}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:24px}.project-card-new{background:#fff;border-radius:.75rem;padding:1.5rem;text-decoration:none;color:inherit;border:1px solid #e5e7eb;transition:all .2s ease;display:flex;flex-direction:column;gap:1.25rem;min-height:auto;max-height:clamp(12rem,40vw,20rem);overflow:hidden;box-shadow:0 1px 3px #0000000f}.project-card-new:hover{background:#fff;box-shadow:0 4px 16px #0000001f;transform:translateY(-2px);border-color:#d1d5db}.project-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.project-name{font-size:1rem;font-weight:700;color:#000;margin:0;line-height:1.4}.status-badge-new{display:inline-block;padding:.375rem .875rem;border-radius:1rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;background-color:#f3f4f6;color:#6b7280;border:1px solid transparent}.status-badge-new.draft{background-color:#f3f4f6;color:#4b5563;border-color:#e5e7eb}.status-badge-new.anbudsrunde{background-color:#fef3c7;color:#92400e;border-color:#fde68a}.status-badge-new.mottatt-bud,.status-badge-new.mottatt_bud{background-color:#dbeafe;color:#1e40af;border-color:#bfdbfe}.status-badge-new.sendt_inn_review,.status-badge-new.sendt-inn-review{background-color:#fef3c7;color:#92400e;border-color:#fde68a}.status-badge-new.akseptert-oppdrag,.status-badge-new.akseptert_oppdrag{background-color:#d1fae5;color:#065f46;border-color:#a7f3d0}.status-badge-new.oppstartsjekkliste{background-color:#dbeafe;color:#1e40af;border-color:#bfdbfe}.status-badge-new.avsluttingsjekkliste{background-color:#e0e7ff;color:#4338ca;border-color:#c7d2fe}.status-badge-new.ferdig-prosjekt,.status-badge-new.ferdig_prosjekt{background-color:#dcfce7;color:#166534;border-color:#bbf7d0}.status-badge-new.betalt{background-color:#d1fae5;color:#065f46;border-color:#a7f3d0}.status-badge-new.tapt,.status-badge-new.kansellert{background-color:#fee2e2;color:#991b1b;border-color:#fecaca}.project-card-new .project-details{display:flex;flex-direction:column;gap:.75rem;flex:1;background:transparent;padding:0;border-radius:0}.project-customer,.project-address{display:flex;align-items:center;gap:.625rem;font-size:.875rem;color:#6b7280;margin:0}.project-customer svg,.project-address svg{flex-shrink:0;opacity:.5;width:1rem;height:1rem}.project-dates{font-size:.8125rem;color:#9ca3af;margin-top:.25rem}.project-progress-section{display:flex;flex-direction:column;gap:.625rem;margin-top:.5rem}.progress-info{display:flex;justify-content:space-between;align-items:center}.progress-label{font-size:.8125rem;color:#6b7280;font-weight:600}.progress-percentage{font-size:.875rem;font-weight:700;color:#000;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.progress-bar-new{height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden}.progress-fill{height:100%;border-radius:3px;transition:width .4s ease}.dashboard-secondary-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.tasks-list{display:flex;flex-direction:column;gap:16px}.task-card-new{background:#fafafa;border-radius:12px;padding:20px;border:1px solid #f0f0f0;transition:all .2s ease}.task-card-new:hover{background:var(--card-bg);border-color:#e0e0e0;box-shadow:0 2px 8px #0000000f}.task-main{margin-bottom:16px}.task-title{font-size:1rem;font-weight:600;color:#1a1a1a;margin:0 0 8px}.task-description{font-size:.9rem;color:#666;margin:0;line-height:1.4}.task-meta-new{display:flex;gap:16px;flex-wrap:wrap}.task-project,.task-assignee{display:flex;align-items:center;gap:6px;font-size:.8rem;color:#888}.todo-form-new{display:flex;gap:.75rem;margin-bottom:1.5rem}.todo-input{flex:1;padding:1rem 1.25rem;border:1px solid #e5e7eb;border-radius:.75rem;font-size:.9375rem;outline:none;transition:all .2s ease;resize:none;overflow:hidden;min-height:3rem;max-height:200px;line-height:1.5;font-family:inherit;color:#000;background:#fff}.todo-input:focus{border-color:#000;box-shadow:0 4px 12px #0000001f;background:#fff}.todo-add-btn{padding:1rem 1.5rem;background:#000;color:#fff;border:none;border-radius:.75rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0;font-weight:600}.todo-add-btn:hover{background:#1a1a1a;transform:translateY(-2px);box-shadow:0 4px 16px #0003}.todo-list-new{display:flex;flex-direction:column;gap:.75rem}.todo-item-new{display:flex;align-items:center;gap:1rem;padding:1.125rem 1.25rem;background:#fff;border-radius:.75rem;border:1px solid #e5e7eb;transition:all .2s ease;box-shadow:0 1px 2px #0000000a}.todo-item-new:hover{background:#fff;box-shadow:0 2px 12px #00000014;transform:translateY(-1px);border-color:#d1d5db}.todo-item-new.completed{opacity:.5;background:#f3f4f6}.todo-checkbox-new{background:none;border:none;color:#94a3b8;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;transition:color .15s ease;flex-shrink:0}.todo-checkbox-new:hover{color:#000}.todo-item-new.completed .todo-checkbox-new{color:#4caf50}.todo-content{flex:1;display:flex;flex-direction:column;gap:.375rem;min-width:0}.todo-text-new{flex:1;font-size:.875rem;color:#000;word-wrap:break-word;overflow-wrap:break-word;white-space:pre-wrap;line-height:1.5;font-weight:500}.todo-item-new.completed .todo-text-new{text-decoration:line-through;color:#94a3b8}.todo-meta{display:flex;align-items:center;gap:.5rem}.todo-created-at{font-size:.75rem;color:#94a3b8;white-space:nowrap}.todo-creator-initials{font-size:.6875rem;color:#fff;background:#000;padding:.125rem .5rem;border-radius:.375rem;font-weight:600;white-space:nowrap;min-width:1.5rem;text-align:center;letter-spacing:.02em}.todo-actions{display:flex;gap:.25rem;opacity:0;transition:opacity .15s;flex-shrink:0}.todo-item-new:hover .todo-actions{opacity:1}.todo-edit-btn,.todo-delete-new{background:none;border:none;cursor:pointer;padding:.25rem;border-radius:.25rem;display:flex;align-items:center;justify-content:center;transition:all .15s;color:#94a3b8}.todo-edit-btn:hover{background:#f0f0f0;color:#000}.todo-delete-new{color:#94a3b8}.todo-delete-new:hover{background:#fee2e2;color:#dc2626}.todo-edit-btn:disabled,.todo-delete-new:disabled{opacity:.4;cursor:not-allowed}.todo-edit-mode{display:flex;flex-direction:column;gap:.375rem;flex:1;width:100%}.todo-edit-input{width:100%;padding:.625rem .875rem;border:1px solid #1a1a2e;border-radius:.375rem;font-size:.8125rem;font-family:inherit;resize:none;overflow:hidden;min-height:2.5rem;max-height:200px;line-height:1.4;transition:border-color .15s ease;outline:none}.todo-edit-input:focus{border-color:#1a1a2e;box-shadow:0 0 0 2px #1a1a2e1a}.todo-edit-actions{display:flex;gap:.375rem;justify-content:flex-end}.todo-save-btn,.todo-cancel-btn{background:none;border:none;cursor:pointer;padding:.25rem;border-radius:.25rem;display:flex;align-items:center;justify-content:center;transition:all .15s}.todo-save-btn{color:#10b981}.todo-save-btn:hover{background:#d1fae5}.todo-cancel-btn{color:#94a3b8}.todo-cancel-btn:hover{background:#f0f0f0;color:#64748b}.todo-save-btn:disabled,.todo-cancel-btn:disabled{opacity:.4;cursor:not-allowed}@media (max-width: 75rem){.dashboard-page{padding:2rem 2.5rem}.stats-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.content-grid{grid-template-columns:repeat(auto-fill,minmax(20rem,1fr));gap:1rem}.dashboard-secondary-grid{grid-template-columns:1fr;gap:1rem}}@media (max-width: 64rem){.dashboard-page{padding:2rem}.dashboard-title{font-size:2rem}.stats-grid{grid-template-columns:repeat(2,1fr)}.stat-card-new{padding:1.5rem 1.25rem}.stat-card-icon{width:2.75rem;height:2.75rem;font-size:1.125rem}.stat-number{font-size:1.75rem}}@media (max-width: 48rem){.dashboard-page{padding:1.5rem;background:#f7f8fa}.dashboard-header{padding:0 0 1.5rem;margin-bottom:1.5rem}.dashboard-title{font-size:1.75rem}.dashboard-subtitle{font-size:.9375rem}.dashboard-time{font-size:1.5rem}.stats-grid{grid-template-columns:1fr;gap:1rem;margin-bottom:2rem}.content-grid{grid-template-columns:1fr;gap:1rem}.ringeliste-grid{grid-template-columns:1fr}.card-section{padding:1.5rem}.stat-card-new{padding:1.5rem;gap:1rem}.stat-number{font-size:1.75rem}.stat-label{font-size:.8125rem}}@media (max-width: 30rem){.dashboard-page{padding:.75rem}.stats-grid{gap:.75rem;margin-bottom:1.25rem}.stat-card-new{padding:1rem;gap:.75rem;flex-direction:column;text-align:center;min-height:auto}.stat-card-icon{width:2.5rem;height:2.5rem;font-size:1.125rem;margin:0 auto}.stat-number{font-size:1.5rem;margin-bottom:.25rem}.stat-label{font-size:.8rem}.card-section{padding:1rem}.dashboard-welcome{padding:1rem;text-align:center}.dashboard-welcome h1{font-size:1.5rem}.dashboard-welcome p{font-size:.95rem}.no-data-message{padding:2rem 1rem}.no-data-message h3{font-size:1.125rem}.project-card-new,.ringeliste-card{padding:1rem;gap:.75rem;min-height:auto}}@media (hover: none) and (pointer: coarse){.stat-card-new:hover{transform:none;box-shadow:0 .125rem .5rem #0000000f}.stat-card-new:active{transform:translateY(.0625rem);transition:transform .1s ease}.stat-card-new.active{transform:translateY(0)}}.dashboard-content{display:flex;flex-direction:column;gap:32px;width:100%}.dashboard-columns{display:grid;grid-template-columns:1fr 1fr;gap:32px}.dashboard-section{background-color:var(--card-bg);border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px;border:1px solid #e0e0e0;transition:transform .2s,box-shadow .2s}.dashboard-section:hover{transform:translateY(-1px);box-shadow:0 4px 16px #0000001f}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-header h2{font-size:20px;font-weight:600;margin:0}.view-all-link{font-size:15px;color:#2196f3;text-decoration:none;font-weight:500}.view-all-link:hover{text-decoration:underline}.project-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:24px}.project-card{background-color:#f9f9f9;border-radius:12px;padding:20px;text-decoration:none;color:#333;transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column;gap:14px;min-height:200px;border:1px solid #e0e0e0}.project-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.project-name{font-size:16px;font-weight:600;margin:0 0 4px}.project-customer{font-size:14px;color:#666;margin:0 0 4px}.project-address{font-size:14px;color:#666;margin:0 0 8px}.project-dates{font-size:14px;color:#888;margin-bottom:8px}.project-progress{margin-top:8px}.progress-bar-container{height:6px;background-color:#f0f0f0;border-radius:3px;overflow:hidden;margin-bottom:4px}.progress-bar{height:100%;border-radius:3px}.progress-text{font-size:12px;color:#666}.task-list{display:flex;flex-direction:column;gap:12px}.task-item{background-color:#f9f9f9;border-radius:8px;padding:16px}.task-title{font-size:16px;font-weight:600;margin:0 0 4px}.task-description{font-size:14px;color:#666;margin:0 0 8px}.task-meta{display:flex;gap:16px}.task-project,.task-assignee{display:flex;align-items:center;gap:4px;font-size:12px;color:#888}.todo-form{display:flex;margin-bottom:16px}.todo-form input{flex:1;padding:10px 12px;border:1px solid #ddd;border-radius:6px 0 0 6px;outline:none;font-size:14px}.todo-form button{background-color:#1a1a1a;color:#fff;border:none;border-radius:0 6px 6px 0;padding:0 12px;cursor:pointer;display:flex;align-items:center;justify-content:center}.todo-items{display:flex;flex-direction:column;gap:8px}.todo-item{display:flex;align-items:center;gap:8px;padding:8px;border-radius:6px;transition:background-color .2s}.todo-item:hover{background-color:#f0f0f0}.todo-item.completed .todo-text{text-decoration:line-through;color:#888}.todo-checkbox{background:none;border:none;color:#888;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center}.todo-checkbox:hover{color:#555}.todo-item.completed .todo-checkbox{color:#4caf50}.todo-text{flex:1;font-size:14px}.todo-delete{background:none;border:none;color:#f44336;cursor:pointer;opacity:0;transition:opacity .2s;padding:0;display:flex;align-items:center;justify-content:center}.todo-item:hover .todo-delete{opacity:1}.error-message{background-color:#ffebee;color:#c62828;padding:12px 16px;border-radius:8px;margin-bottom:20px}.loading-indicator{display:flex;justify-content:center;align-items:center;height:200px}.no-data-message{color:#888;text-align:center;padding:16px}.dashboard-welcome{background:var(--card-bg);border-radius:20px;padding:40px;margin-bottom:32px;box-shadow:0 4px 12px #0000000d;border:1px solid #f0f0f0;position:relative;overflow:hidden}.dashboard-welcome:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#1a1a1a,#333)}.dashboard-welcome h1{font-size:2.4rem;font-weight:700;color:#1a1a1a;margin:0 0 12px;background:linear-gradient(135deg,#1a1a1a,#333);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.dashboard-welcome p{font-size:1.1rem;color:#666;margin:0;line-height:1.5}.stat-cards.modern{display:flex;gap:32px;margin-bottom:32px;flex-wrap:wrap;justify-content:center;width:100%}.stat-card.modern{background:#fff;border-radius:14px;box-shadow:0 2px 12px #0000000f;padding:28px 32px;display:flex;align-items:center;gap:20px;min-width:320px;flex:1;max-width:500px;border:1px solid #ececec;transition:box-shadow .2s,border .2s}.stat-card.modern:hover{box-shadow:0 4px 24px #0000001a;border:1px solid #bbb}.stat-icon.modern{background:#111;color:#fff;border-radius:10px;width:56px;height:56px;display:flex;align-items:center;justify-content:center;font-size:1.5rem}.stat-icon.new-contracts.modern{background:#222}.stat-icon.tasks.modern{background:#444}.dashboard-content.modern{display:flex;gap:32px;align-items:flex-start;width:100%}@media (min-width: 1600px){.stat-cards{grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:32px}.project-list{grid-template-columns:repeat(auto-fill,minmax(450px,1fr));gap:32px}.stat-card.modern{min-width:380px;max-width:600px}}@media (max-width: 1400px){.stat-cards.modern,.dashboard-content.modern{flex-direction:column;gap:24px}.dashboard-welcome{padding:24px 16px 16px}}@media (max-width: 900px){.stat-cards.modern,.dashboard-content.modern{flex-direction:column;gap:20px}.dashboard-welcome{padding:24px 12px 16px}}.chat-fab{position:fixed;bottom:32px;right:32px;background:#111;color:#fff;border:none;border-radius:50%;width:56px;height:56px;box-shadow:0 4px 16px #0000002e;display:flex;align-items:center;justify-content:center;z-index:1001;cursor:pointer;transition:background .2s}.chat-fab:hover{background:#222}.chat-window{position:fixed;bottom:100px;right:32px;width:340px;max-width:95vw;background:#fff;border-radius:16px;box-shadow:0 8px 32px #0000002e;z-index:1002;display:flex;flex-direction:column;overflow:hidden;border:1px solid #ececec;height:70vh}.chat-header{background:#111;color:#fff;padding:16px;font-weight:600;display:flex;justify-content:space-between;align-items:center}.chat-header button{background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer}.chat-messages{padding:16px;flex:1;overflow-y:auto;background:#fafbfc;display:flex;flex-direction:column;gap:10px}.chat-bubble{max-width:80%;padding:10px 16px;border-radius:16px;font-size:1rem;line-height:1.4;word-break:break-word}.chat-bubble.user{background:#111;color:#fff;align-self:flex-end;border-bottom-right-radius:4px}.chat-bubble.assistant{background:#eaeaea;color:#222;align-self:flex-start;border-bottom-left-radius:4px}.chat-input-row{display:flex;border-top:1px solid #ececec;background:#fff}.chat-input-row input{flex:1;border:none;padding:14px 12px;font-size:1rem;outline:none;background:#fff}.chat-input-row button{background:#111;color:#fff;border:none;padding:0 18px;font-size:1rem;cursor:pointer;border-radius:0 0 16px;transition:background .2s}.chat-input-row button:disabled{background:#888;cursor:not-allowed}@media (max-width: 600px){.chat-window{right:8px;width:98vw;bottom:120px}.chat-fab{right:8px;bottom:16px}}@media (max-width: 768px){.dashboard-header{padding:1.5rem 1.25rem;margin-bottom:1.5rem}.dashboard-header-content{flex-direction:column;align-items:flex-start;gap:1.5rem}.dashboard-header-right{align-self:stretch}.dashboard-datetime{width:100%;text-align:right;padding:1rem 1.25rem}.dashboard-title{font-size:2rem}.dashboard-subtitle{font-size:1rem}.dashboard-time{font-size:1.5rem}}@media (max-width: 480px){.dashboard-header{padding:1.25rem 1rem;border-radius:1rem}.dashboard-title{font-size:1.75rem}.dashboard-subtitle{font-size:.875rem}.dashboard-time{font-size:1.25rem}.dashboard-date{font-size:.75rem}}.chart-container{width:100%;max-width:100%;overflow:hidden;box-sizing:border-box;flex:1;display:flex;flex-direction:column}.card-section .chart-container>div{min-width:0;max-width:100%}.chart-section{max-width:100%;overflow:hidden;box-sizing:border-box;display:flex;flex-direction:column}.chart-wrapper{width:100%;max-width:100%;height:100%;min-height:200px;position:relative;box-sizing:border-box;overflow:hidden;flex:1}@media (max-width: 768px){.chart-wrapper{min-height:180px}}[data-theme=dark] .dashboard-page{background:#0d1117;color:var(--text-primary)}[data-theme=dark] .dashboard-header{background:#141925;border:1px solid #242c3a;box-shadow:0 8px 18px #00000073}[data-theme=dark] .dashboard-header:hover{box-shadow:0 10px 20px #00000080}[data-theme=dark] .dashboard-header:after{background:none}[data-theme=dark] .dashboard-title{color:var(--text-primary);text-shadow:none}[data-theme=dark] .dashboard-subtitle{color:var(--text-secondary)}[data-theme=dark] .dashboard-datetime{background:#141925;border:1px solid #242c3a;box-shadow:0 6px 12px #0006}[data-theme=dark] .dashboard-time{color:#e8ecf5;text-shadow:none}[data-theme=dark] .dashboard-date{color:var(--text-muted)}[data-theme=dark] .dashboard-search{background:#141925;border:1px solid #242c3a;box-shadow:none}[data-theme=dark] .dashboard-search:focus-within{border-color:#00d4ff59;box-shadow:0 0 0 1px #00d4ff33}[data-theme=dark] .dashboard-search input{background:transparent;color:var(--text-primary)}[data-theme=dark] .dashboard-search input::placeholder{color:var(--text-muted)}[data-theme=dark] .dashboard-grid,[data-theme=dark] .dashboard-stats-grid,[data-theme=dark] .dashboard-charts-grid{background:transparent}[data-theme=dark] .dashboard-card,[data-theme=dark] .stat-card,[data-theme=dark] .chart-card,[data-theme=dark] .activity-card,[data-theme=dark] .quick-actions-card{background:#161b24;border:1px solid #242c3a;box-shadow:0 6px 14px #00000059}[data-theme=dark] .dashboard-card:hover,[data-theme=dark] .stat-card:hover,[data-theme=dark] .chart-card:hover{border-color:#00d4ff59;box-shadow:0 8px 18px #00000073;transform:translateY(-1px)}[data-theme=dark] .card-header,[data-theme=dark] .stat-card-header{border-bottom:1px solid rgba(36,44,58,.8)}[data-theme=dark] .card-title,[data-theme=dark] .stat-label{color:var(--text-primary)}[data-theme=dark] .card-subtitle{color:var(--text-muted)}[data-theme=dark] .stat-value{color:#e8ecf5;text-shadow:none}[data-theme=dark] .stat-change{color:var(--text-secondary)}[data-theme=dark] .stat-change.positive{color:var(--success-color);text-shadow:none}[data-theme=dark] .stat-change.negative{color:var(--error-color)}[data-theme=dark] .stat-icon{background:#1e2532;box-shadow:0 4px 10px #00000059}[data-theme=dark] .quick-action-btn,[data-theme=dark] .action-button,[data-theme=dark] .btn{background:#1e2532;border:1px solid #2f3848;color:var(--text-primary)}[data-theme=dark] .quick-action-btn:hover,[data-theme=dark] .action-button:hover,[data-theme=dark] .btn:hover{background:#252e3c;border-color:#00d4ff59;box-shadow:0 6px 14px #00000059;color:var(--text-primary)}[data-theme=dark] .btn-primary{background:#1e2532;border:1px solid rgba(0,212,255,.35);box-shadow:0 6px 14px #00000059}[data-theme=dark] .btn-primary:hover{box-shadow:0 8px 18px #0006}[data-theme=dark] .activity-item,[data-theme=dark] .notification-item,[data-theme=dark] .list-item{background:#161b24;border:1px solid #242c3a}[data-theme=dark] .activity-item:hover,[data-theme=dark] .notification-item:hover,[data-theme=dark] .list-item:hover{background:#1b2230;border-color:#00d4ff59;box-shadow:0 6px 14px #00000059}[data-theme=dark] .activity-time,[data-theme=dark] .meta-text,[data-theme=dark] .secondary-text{color:var(--text-muted)}[data-theme=dark] .badge,[data-theme=dark] .status-badge{background:#1e2532;color:var(--text-primary);box-shadow:none}[data-theme=dark] table,[data-theme=dark] .data-table{background:#161b24;border:1px solid #242c3a}[data-theme=dark] th,[data-theme=dark] .table-header{background:#1b2230;color:var(--text-primary);border-bottom:2px solid rgba(36,44,58,.8)}[data-theme=dark] .chart-container,[data-theme=dark] .chart-wrapper{background:#0f141980;border:1px solid rgba(0,212,255,.15)}[data-theme=dark] .stat-card-new{background:#1a1f29cc;border-color:#2d374899;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .stat-card-new:before{background:none}[data-theme=dark] .stat-card-new:after{background:none}[data-theme=dark] .stat-card-new.active{border-color:#00d4ff4d;box-shadow:0 2px 8px #0006}[data-theme=dark] .stat-card-new.active:after{background:var(--accent-color)}[data-theme=dark] .stat-card-icon{background:#1a1f29cc;box-shadow:0 2px 4px #0003}[data-theme=dark] .stat-label{color:var(--text-muted)}[data-theme=dark] .card-section{background:#1a1f29cc;border-color:#2d374899;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .card-section:before{background:none}[data-theme=dark] .card-section:hover{border-color:#2d3748cc;box-shadow:0 2px 8px #0006}[data-theme=dark] .card-header{border-bottom-color:#2d374866}[data-theme=dark] .card-header h2{color:var(--text-primary)}[data-theme=dark] .view-all-link{background:#1a1f29cc;border-color:#2d374899;color:var(--text-primary);box-shadow:0 1px 3px #0003}[data-theme=dark] .view-all-link:hover{background:#252d3ae6;border-color:#2d3748cc;color:var(--text-primary);box-shadow:0 1px 3px #0000004d}[data-theme=dark] .project-card-new,[data-theme=dark] .ringeliste-card{background:#1a1f29cc;border-color:#2d374880;box-shadow:0 2px 6px #0000004d}[data-theme=dark] .project-card-new:before,[data-theme=dark] .ringeliste-card:before{background:linear-gradient(120deg,rgba(255,255,255,.02),transparent 55%)}[data-theme=dark] .project-card-new:hover,[data-theme=dark] .ringeliste-card:hover{border-color:#2d3748cc;box-shadow:0 2px 8px #0006}[data-theme=dark] .project-name{color:var(--text-primary)}[data-theme=dark] .status-badge-new{background:#252d3acc;border-color:#2d374880;color:var(--text-secondary)}[data-theme=dark] .progress-bar-new{background:#252d3acc}[data-theme=dark] .todo-input{background:#1a1f29cc;border-color:#2d374880;color:var(--text-primary)}[data-theme=dark] .todo-input:focus{border-color:#00d4ff66;box-shadow:0 0 0 1px #00d4ff33}[data-theme=dark] .todo-add-btn{background:#252d3ae6;box-shadow:0 1px 3px #0000004d}[data-theme=dark] .todo-add-btn:hover{background:#2d3748e6;box-shadow:0 1px 3px #0006}[data-theme=dark] .todo-item-new{background:#1a1f29cc;border-color:#2d374880;box-shadow:0 1px 4px #0000004d}[data-theme=dark] .todo-item-new:before{background:#2d374880}[data-theme=dark] .todo-item-new:hover{border-color:#2d3748cc}[data-theme=dark] .todo-edit-btn:hover{background:#2d374880;color:var(--text-primary)}[data-theme=dark] .todo-delete-new:hover{background:#dc262633}[data-theme=dark] .no-data-message{background:#1a1f2999;border-color:#2d374866;color:var(--text-muted)}.dashboard-page .content-grid::-webkit-scrollbar{width:6px}.dashboard-page .content-grid::-webkit-scrollbar-track{background:transparent}.dashboard-page .content-grid::-webkit-scrollbar-thumb{background:#6b7a994d;border-radius:3px}.dashboard-page .content-grid::-webkit-scrollbar-thumb:hover{background:#6b7a9980}[data-theme=dark] .dashboard-page .content-grid::-webkit-scrollbar-thumb{background:#2d374880}[data-theme=dark] .dashboard-page .content-grid::-webkit-scrollbar-thumb:hover{background:#2d3748b3}.dashboard-page{--dash-ink: #1f2937;--dash-muted: #5b6472;--dash-border: rgba(11, 19, 32, .12);--dash-card: #ffffff;--dash-card-soft: #f7f9fb;--dash-accent: #1f2937;--dash-accent-strong: #111827;--dash-glow: rgba(31, 41, 55, .18);--dash-grid: rgba(11, 19, 32, .05);font-family:Space Grotesk,IBM Plex Sans,Manrope,sans-serif;color:var(--dash-ink);background-color:#fff;background-image:none;padding:2.5rem 3rem 3.25rem;max-width:none;width:100%;margin:0}.dashboard-header{position:relative;padding:2.25rem 2.75rem;border-radius:1.5rem;background:linear-gradient(140deg,#fffffff5,#f7f9fcf0);border:1px solid var(--dash-border);box-shadow:0 14px 34px #0b132024;overflow:hidden}.dashboard-header:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:none;opacity:0;pointer-events:none}.dashboard-header:after{content:"";position:absolute;width:240px;height:240px;right:-90px;top:-110px;background:radial-gradient(circle,rgba(31,41,55,.2),transparent 60%);pointer-events:none}.dashboard-header-content{position:relative;z-index:1}.dashboard-title{font-size:2.6rem;font-weight:700;letter-spacing:-.02em;color:var(--dash-ink)}.dashboard-subtitle{font-size:1.02rem;color:var(--dash-muted);max-width:40rem}.dashboard-datetime{padding:1rem 1.25rem;border-radius:1rem;border:1px solid var(--dash-border);background:#ffffffe6;box-shadow:inset 0 0 0 1px #fff9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.dashboard-time{font-family:Space Mono,IBM Plex Mono,monospace;font-size:1.6rem;letter-spacing:-.02em;color:var(--dash-ink)}.dashboard-date{color:var(--dash-muted)}.dashboard-search{border-radius:1rem;border:1px solid var(--dash-border);background:#fffffff2!important;box-shadow:0 10px 24px #0b13201a}.dashboard-search:focus-within{border-color:var(--dash-accent);box-shadow:0 14px 30px #1f293738}.dashboard-search svg{color:var(--dash-muted)}.search-results{border-radius:1rem;border:1px solid var(--dash-border);background:#fffffffa;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 16px 40px #0b132029}.search-results-header{background:var(--dash-card-soft);color:var(--dash-muted)}.search-result-item{border-bottom:1px solid rgba(11,19,32,.06)}.search-result-item:hover{background:#1f29370f}.search-result-title{font-weight:600}.phone-number{background:#1f29371f;color:var(--dash-accent);border-color:#1f293733}.stats-grid{gap:1rem}.stat-card-new{border-radius:1.1rem;border:1px solid var(--dash-border);background:var(--dash-card);box-shadow:0 10px 24px #0b132014;padding:1.5rem 1.6rem;overflow:hidden}.stat-card-new:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(31,41,55,.12),transparent 55%);opacity:.5;transition:opacity .3s ease;pointer-events:none}.stat-card-new:after{content:"";position:absolute;left:0;top:0;bottom:0;width:.3rem;background:linear-gradient(180deg,var(--dash-accent),rgba(31,41,55,.1))}.stat-card-new.active{border-color:#1f293780;box-shadow:0 18px 34px #1f29372e}.stat-card-new.active:after{left:0;right:auto;top:0;bottom:0;height:auto;width:.35rem;background:linear-gradient(180deg,var(--dash-accent),rgba(31,41,55,.2))}.stat-card-new:hover:before{opacity:.85}.stat-card-icon{background:linear-gradient(135deg,#1f2937,#111827);box-shadow:0 8px 16px #0b13202e}.stat-card-icon,.stat-card-content{position:relative;z-index:1}.stat-number{font-size:2.1rem}.stat-label{text-transform:none;letter-spacing:0;color:var(--dash-muted);font-weight:600}.dashboard-grid{display:flex;flex-direction:column;gap:1.5rem}.dashboard-secondary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;align-items:stretch}.dashboard-secondary-grid .card-section{height:100%}.card-section{position:relative;border-radius:1.25rem;border:1px solid var(--dash-border);background:linear-gradient(180deg,#fff,#f8fafb);box-shadow:0 14px 30px #0b13201a;overflow:hidden;max-height:clamp(24rem,70vw,40rem)}.card-section:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,#1f293799,#1f293700);pointer-events:none}.card-header{border-bottom:1px dashed rgba(11,19,32,.12);padding-bottom:1rem}.card-header h2{font-size:1.2rem;font-weight:700}.view-all-link{border-radius:999px;padding:.45rem 1.1rem;border:1px solid rgba(11,19,32,.12);background:#fffc;box-shadow:0 6px 14px #0b132014}.view-all-link:hover{background:var(--dash-accent);border-color:var(--dash-accent);box-shadow:0 10px 20px #1f293733}.content-grid{grid-template-columns:repeat(auto-fill,minmax(19rem,1fr));gap:1.25rem;max-height:clamp(20rem,60vw,34rem);overflow-y:auto;padding-right:.5rem}.project-card-new,.ringeliste-card{border-radius:1rem;border:1px solid var(--dash-border);background:var(--dash-card);box-shadow:0 10px 22px #0b132014;position:relative;overflow:hidden}.project-card-new>*,.ringeliste-card>*{position:relative;z-index:1}.project-card-new:before,.ringeliste-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(120deg,rgba(31,41,55,.12),transparent 55%);opacity:0;transition:opacity .25s ease;pointer-events:none}.project-card-new:hover:before,.ringeliste-card:hover:before{opacity:.8}.project-card-new:hover,.ringeliste-card:hover{transform:translateY(-4px);border-color:#1f293766}.project-name{font-size:1.05rem}.status-badge-new{border-radius:999px;border:1px solid rgba(11,19,32,.12);background:#f1f5f9;font-weight:600}.project-progress-section{margin-top:.35rem}.progress-bar-new{height:8px;background:#e2e8f0;border-radius:999px}.progress-fill{border-radius:999px}.todo-input{border-radius:.9rem;border:1px solid var(--dash-border);background:#f8fafc}.todo-input:focus{border-color:var(--dash-accent);box-shadow:0 0 0 3px #1f293726}.todo-add-btn{border-radius:.9rem;background:linear-gradient(135deg,var(--dash-accent),var(--dash-accent-strong));box-shadow:0 10px 20px #1f29373d}.todo-item-new{border-radius:.9rem;border:1px solid var(--dash-border);box-shadow:0 8px 18px #0b132014;position:relative;padding-left:1.75rem}.todo-item-new:before{content:"";position:absolute;left:.7rem;top:.65rem;bottom:.65rem;width:.25rem;border-radius:999px;background:#1f293759;pointer-events:none}.todo-item-new:hover{border-color:#1f293759}.todo-actions{opacity:0}.todo-edit-btn:hover{background:#1f29371f;color:var(--dash-accent)}.todo-delete-new:hover{background:#dc26261f}.no-data-message{border-radius:1rem;border:1px dashed rgba(11,19,32,.18);background:#fffc}@keyframes dash-fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.dashboard-header,.stats-grid,.card-section{animation:dash-fade-up .6s ease both}.stats-grid .stat-card-new{animation:dash-fade-up .5s ease both}.stats-grid .stat-card-new:nth-child(1){animation-delay:.05s}.stats-grid .stat-card-new:nth-child(2){animation-delay:.1s}.stats-grid .stat-card-new:nth-child(3){animation-delay:.15s}.stats-grid .stat-card-new:nth-child(4){animation-delay:.2s}.content-grid .project-card-new,.content-grid .ringeliste-card{animation:dash-fade-up .45s ease both}.content-grid .project-card-new:nth-child(1),.content-grid .ringeliste-card:nth-child(1){animation-delay:.05s}.content-grid .project-card-new:nth-child(2),.content-grid .ringeliste-card:nth-child(2){animation-delay:.1s}.content-grid .project-card-new:nth-child(3),.content-grid .ringeliste-card:nth-child(3){animation-delay:.15s}@media (max-width: 80rem){.dashboard-page{padding:2.25rem 2.5rem 3rem}.dashboard-secondary-grid{grid-template-columns:repeat(auto-fit,minmax(18rem,1fr))}}@media (max-width: 64rem){.dashboard-header{padding:2rem 2.25rem}.dashboard-title{font-size:2.2rem}.dashboard-time{font-size:1.45rem}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 48rem){.dashboard-page{padding:1.5rem 1.25rem 2.5rem}.dashboard-header-content{flex-direction:column;align-items:flex-start}.dashboard-header-right{width:100%;justify-content:flex-start}.dashboard-title{font-size:1.9rem}.dashboard-subtitle{font-size:.95rem}.dashboard-time{font-size:1.3rem}.dashboard-datetime{width:100%;text-align:left}.stats-grid,.dashboard-secondary-grid,.content-grid{grid-template-columns:1fr}.card-section{padding:1.5rem}}@media (prefers-reduced-motion: reduce){.dashboard-header,.stats-grid,.card-section,.stats-grid .stat-card-new,.content-grid .project-card-new,.content-grid .ringeliste-card{animation:none}}[data-theme=dark] .dashboard-page{--dash-ink: #e5e7eb;--dash-muted: #cbd5e1;--dash-border: #1f2a3a;--dash-card: #0f1624;--dash-card-soft: #111a2b;--dash-accent: #4c8bf5;--dash-accent-strong: #6ea8ff;background:#0b1018;color:var(--dash-ink)}[data-theme=dark] .dashboard-header,[data-theme=dark] .dashboard-datetime,[data-theme=dark] .dashboard-weather,[data-theme=dark] .dashboard-weather-card{background:#0f1624;border-color:var(--dash-border);box-shadow:0 16px 40px #00000073;color:var(--dash-ink)}[data-theme=dark] .dashboard-header:after{background:radial-gradient(circle,rgba(55,65,81,.35),transparent 60%)}[data-theme=dark] .dashboard-title,[data-theme=dark] .dashboard-time{color:var(--dash-ink)}[data-theme=dark] .dashboard-subtitle,[data-theme=dark] .dashboard-weather-label,[data-theme=dark] .dashboard-weather-desc,[data-theme=dark] .dashboard-weather-meta,[data-theme=dark] .dashboard-date{color:var(--dash-muted)}[data-theme=dark] .dashboard-weather-temp{color:var(--dash-ink)}[data-theme=dark] .dashboard-weather-divider{background:#94a3b859}[data-theme=dark] .dashboard-weather-icon{background:#fbbf2433;color:#fbbf24}[data-theme=dark] .dashboard-search{background:#101722!important;border-color:var(--dash-border);box-shadow:0 12px 26px #0006}[data-theme=dark] .dashboard-search input{color:var(--dash-ink)}[data-theme=dark] .dashboard-search input::placeholder{color:var(--dash-muted)}[data-theme=dark] .search-results{background:#0f1624;border-color:var(--dash-border);box-shadow:0 18px 36px #00000073}[data-theme=dark] .search-results-header{background:#101722;color:var(--dash-muted);border-bottom-color:var(--dash-border)}[data-theme=dark] .search-result-item{color:var(--dash-ink);border-bottom:1px solid #141b27}[data-theme=dark] .search-result-item:hover{background:#141c2b}[data-theme=dark] .search-result-title{color:var(--dash-ink)}[data-theme=dark] .search-result-subtitle,[data-theme=dark] .search-result-phone,[data-theme=dark] .search-result-snippet,[data-theme=dark] .search-results-count,[data-theme=dark] .inline-spinner,[data-theme=dark] .search-email-loading{color:var(--dash-muted)}[data-theme=dark] .phone-number{background:#101722;border-color:var(--dash-border);color:var(--dash-ink)}[data-theme=dark] .stat-card-new,[data-theme=dark] .card-section,[data-theme=dark] .project-card-new,[data-theme=dark] .ringeliste-card,[data-theme=dark] .todo-item-new,[data-theme=dark] .task-card-new{background:#0f1624;border-color:var(--dash-border);box-shadow:0 12px 28px #00000059;color:var(--dash-ink)}[data-theme=dark] .stat-card-new:before,[data-theme=dark] .card-section:before,[data-theme=dark] .project-card-new:before,[data-theme=dark] .ringeliste-card:before{background:linear-gradient(135deg,rgba(255,255,255,.04),transparent 55%)}[data-theme=dark] .stat-card-new.active{border-color:var(--dash-accent)}[data-theme=dark] .stat-card-new.active:after{background:var(--dash-accent)}[data-theme=dark] .stat-card-icon{background:linear-gradient(135deg,#1e293b,#273554);box-shadow:0 6px 14px #00000073}[data-theme=dark] .stat-number,[data-theme=dark] .stat-card-new.active .stat-number,[data-theme=dark] .stat-card-new.clickable .stat-number{color:#f8fafc!important}[data-theme=dark] .stat-label,[data-theme=dark] .stat-tooltip{color:var(--dash-muted)}[data-theme=dark] .stat-card-new.active .stat-label{color:#e5e7eb}[data-theme=dark] .card-header h2,[data-theme=dark] .project-name,[data-theme=dark] .task-title,[data-theme=dark] .view-all-link{color:var(--dash-ink)}[data-theme=dark] .view-all-link{background:transparent;border-color:var(--dash-border)}[data-theme=dark] .view-all-link:hover{background:#152034;border-color:var(--dash-accent);color:#fff}[data-theme=dark] .project-customer,[data-theme=dark] .project-address,[data-theme=dark] .project-dates,[data-theme=dark] .progress-label,[data-theme=dark] .task-description,[data-theme=dark] .task-meta-new,[data-theme=dark] .task-assignee,[data-theme=dark] .task-project{color:var(--dash-muted)}[data-theme=dark] .status-badge-new{background:#121a2a;border-color:var(--dash-border);color:var(--dash-muted)}[data-theme=dark] .progress-bar-new{background:#1b2434}[data-theme=dark] .progress-fill{background:var(--dash-accent)}[data-theme=dark] .todo-input{background:#111827;border-color:var(--dash-border);color:var(--dash-ink)}[data-theme=dark] .todo-text-new,[data-theme=dark] .todo-save-btn,[data-theme=dark] .todo-creator-initials,[data-theme=dark] .todo-checkbox-new{color:var(--dash-ink)}[data-theme=dark] .todo-created-at,[data-theme=dark] .todo-delete-new,[data-theme=dark] .todo-edit-btn{color:var(--dash-muted)}[data-theme=dark] .todo-add-btn{background:linear-gradient(135deg,var(--dash-accent),var(--dash-accent-strong));box-shadow:0 12px 26px #00000080}[data-theme=dark] .todo-add-btn:hover{box-shadow:0 16px 30px #0000008c}[data-theme=dark] .todo-creator-initials{background:#1e2937;border:1px solid var(--dash-border)}[data-theme=dark] .no-data-message{background:#0f1624;border-color:var(--dash-border);color:var(--dash-muted)}[data-theme=dark] .chart-container,[data-theme=dark] .chart-wrapper{background:transparent;border-color:var(--dash-border)}[data-theme=dark] .dashboard-welcome{background:#0f1624;border-color:var(--dash-border);box-shadow:0 14px 34px #00000073}[data-theme=dark] .dashboard-welcome h1{-webkit-text-fill-color:initial;background:none;color:var(--dash-ink)}[data-theme=dark] .dashboard-welcome p{color:var(--dash-muted)}[data-theme=dark] .search-btn{background:var(--dash-accent);color:#fff}.ringeliste-page{padding:1.5rem 2rem;max-width:87.5rem;margin:0 auto;width:100%;color:var(--text-primary);background:var(--bg-primary);min-height:100vh}.ringeliste-header{margin-bottom:2rem}.ringeliste-header h1{font-size:2.4rem;font-weight:700;color:var(--text-primary);margin:0 0 .75rem}.ringeliste-header .description{font-size:1.1rem;color:var(--text-secondary);margin:0;line-height:1.5}.filter-btn{font-weight:500;cursor:pointer;transition:all .2s ease;color:var(--text-secondary);background:var(--bg-primary);border:1px solid var(--border-color);padding:.5rem 1rem;border-radius:.5rem;min-height:2.75rem}.filter-btn:hover{background:var(--bg-tertiary);border-color:var(--border-color)}.filter-btn.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.table-container{background:var(--card-bg);border-radius:12px;overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.checkbox-container{display:flex;align-items:center;justify-content:center;cursor:pointer;margin:0}.checkbox-container input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--warning-color)}.project-number{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-weight:600;font-size:.875rem;background-color:var(--card-bg);color:var(--primary-color);padding:.25rem .5rem;border-radius:4px;border:1px solid var(--border-color);display:inline-block}.status-badge{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;background-color:var(--card-bg);white-space:nowrap;display:inline-block}.status-badge.akseptert_oppdrag,.status-badge.akseptert-oppdrag{background-color:#d1fae5;color:#065f46}.ringeliste-content .projects-table th{background:#f3f4f6!important;color:#374151!important;padding:1rem;text-align:left;font-weight:600;font-size:.9rem;border-bottom:1px solid #e5e7eb;background-image:none!important;background-clip:initial!important}.clickable-row.hidden-project:hover{opacity:.8;background-color:var(--bg-secondary)}.clickable-row.hidden-project .project-address,.clickable-row.hidden-project .customer-name{text-decoration:line-through;color:var(--text-tertiary)}.clickable-row.hidden-project .status-badge{opacity:.7}.error-message{background-color:#ffebee;color:#c62828;padding:16px;border-radius:8px;margin-bottom:24px}.loading-indicator{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:400px;padding:3rem}.no-projects-message{display:flex;justify-content:center;align-items:center;background:var(--card-bg);border-radius:16px;padding:40px;box-shadow:0 2px 8px #0000000f;border:1px solid #f0f0f0;margin-top:32px;text-align:center}.no-projects-message p{font-size:1.1rem;color:#666}@media (max-width: 768px){.ringeliste-page{padding:16px}.ringeliste-header h1{font-size:2rem}.filter-buttons{flex-direction:column;gap:8px}.filter-btn{width:100%;text-align:center}.table-container{overflow-x:auto}.projects-table{min-width:600px}}.working-list-page{padding:2rem;max-width:1400px;margin:0 auto}.working-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.working-list-header h1{color:#1f2937;font-size:2rem;font-weight:700;margin:0}.search-filter-row{background:var(--card-bg);padding:1.5rem;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:1.5rem}.search-filter-row input{padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.95rem}.search-filter-row input:focus{outline:none;border-color:#9ca3af;box-shadow:0 0 0 3px #9ca3af1a}.search-filter-row select{padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.95rem;background:var(--card-bg)}.search-filter-row select:focus{outline:none;border-color:#9ca3af;box-shadow:0 0 0 3px #9ca3af1a}.filter-label{color:#374151;font-weight:500;font-size:.95rem}.working-list-content{background:var(--card-bg);border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.table-container{overflow-x:auto}.working-list-content .projects-table th{background:#f3f4f6!important;color:#374151!important;padding:1rem;text-align:left;font-weight:600;font-size:.9rem;border-bottom:1px solid #e5e7eb;background-image:none!important;background-clip:initial!important}.projects-table th:nth-child(6),.projects-table td:nth-child(6){text-align:center;min-width:80px;width:80px}.projects-table td{padding:1rem;border-bottom:1px solid #e5e7eb;font-size:.9rem;vertical-align:middle}.projects-table tr:hover{background-color:#f9fafb}.projects-table tr.hidden-project{opacity:.6;background-color:#f3f4f6}.projects-table tr.hidden-project:hover{background-color:#e5e7eb}.clickable-row{cursor:pointer;transition:background-color .2s ease}.project-number{font-weight:600;color:#374151}.checkbox-container{display:flex;align-items:center;cursor:pointer}.checkbox-container input[type=checkbox]{width:18px;height:18px;cursor:pointer}.status-badge.draft{background-color:#f3f4f6;color:#374151}.status-badge.anbudsrunde{background-color:#fef3c7;color:#92400e}.status-badge.mottatt-bud,.status-badge.mottatt_bud{background-color:#e0f2fe;color:#0369a1}.status-badge.akseptert-oppdrag,.status-badge.akseptert_oppdrag{background-color:#d1fae5;color:#065f46}.status-badge.ferdig-prosjekt,.status-badge.ferdig_prosjekt{background-color:#dcfce7;color:#166534}.project-type-badge{display:inline-block;padding:.25rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.project-type-badge.anbudsrunde{background-color:#ede9fe;color:#5b21b6}.project-type-badge.single_bid{background-color:#fef3c7;color:#92400e}.bid-count{font-weight:600;color:#4b5563}.priority-badge{display:inline-block;padding:.25rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.priority-badge.high{background-color:#fee2e2;color:#991b1b}.priority-badge.medium{background-color:#fef3c7;color:#92400e}.priority-badge.low{background-color:#ecfdf5;color:#047857}.loading-indicator{text-align:center;padding:3rem;color:#6b7280}.error-message{background:#fee2e2;border:1px solid #fecaca;color:#dc2626;padding:1rem 1.5rem;border-radius:6px;margin-bottom:1.5rem;font-size:.9rem}.no-projects-message{text-align:center;padding:3rem;color:#6b7280;font-size:1.1rem}.pagination-container{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-top:1px solid #e5e7eb;background:#f9fafb}.pagination-info{color:#6b7280;font-size:.9rem}.pagination-controls{display:flex;gap:.5rem;align-items:center}.pagination-btn{padding:.5rem .75rem;border:1px solid #d1d5db;background:var(--card-bg);color:#374151;border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .2s ease}.pagination-btn:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-btn.active{background:#6b7280;color:#fff;border-color:#6b7280}.pagination-pages{display:flex;gap:.25rem}@media (max-width: 768px){.working-list-page{padding:1rem}.working-list-header{flex-direction:column;align-items:flex-start;gap:1rem}.search-filter-row{flex-direction:column;align-items:stretch;gap:1rem}.pagination-container{flex-direction:column;gap:1rem}.pagination-controls{justify-content:center}.projects-table{font-size:.8rem}.projects-table th,.projects-table td{padding:.75rem .5rem}}[data-theme=dark] .projects-table{background:var(--card-bg);border:1px solid rgba(0,212,255,.15)}[data-theme=dark] .projects-table th{background:linear-gradient(135deg,#00d4ff14,#7c3aed14);color:var(--text-primary);border-bottom:1px solid rgba(0,212,255,.3)}[data-theme=dark] .projects-table td{color:var(--text-secondary);border-bottom:1px solid rgba(0,212,255,.1)}[data-theme=dark] .projects-table tbody tr:hover{background:#00d4ff0d}.sluttgjennomgang-page{padding:1.5rem;max-width:100%;overflow-x:hidden}.sluttgjennomgang-header{margin-bottom:2rem}.sluttgjennomgang-header h1{margin:0 0 .5rem;font-size:1.5rem;font-weight:600;color:var(--text-primary)}.page-description{margin:0;color:var(--text-secondary);font-size:.875rem;line-height:1.4}.search-filter-row{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.search-filter-row input{flex:1;min-width:200px;padding:.5rem;border:1px solid var(--border-color);border-radius:4px;font-size:.875rem}.project-count{font-size:.875rem;color:var(--text-secondary);font-weight:500}.sluttgjennomgang-content{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.payment-button{padding:.4rem .8rem;border:none;border-radius:4px;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s ease;min-width:100px;text-align:center}.payment-button.pending{background-color:#6b7280;color:#fff}.payment-button.pending:hover{background-color:#4b5563}.payment-button.confirmed{background-color:#10b981;color:#fff;cursor:pointer}.payment-button.confirmed:hover{background-color:#059669}.payment-button:disabled{opacity:.8;cursor:not-allowed}.complete-button{padding:.4rem .8rem;border:none;border-radius:4px;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s ease;min-width:100px;text-align:center}.complete-button.enabled{background-color:#3b82f6;color:#fff}.complete-button.enabled:hover{background-color:#2563eb}.complete-button.disabled{background-color:#e5e7eb;color:#9ca3af;cursor:not-allowed}.clickable-row.completed-project{background-color:#10b9810d;border-left:3px solid #10b981}.clickable-row.hidden-project{opacity:.6;background-color:var(--bg-tertiary)}.clickable-row.hidden-project:hover{opacity:.8}.checkbox-container{display:flex;align-items:center;justify-content:center;cursor:pointer;gap:.5rem}.checkbox-container input[type=checkbox]{width:16px;height:16px;cursor:pointer}.checkbox-label{font-size:.75rem;color:#374151;white-space:nowrap}.sluttgjennomgang-page button.remove-button{padding:.4rem .8rem;border:none;border-radius:4px;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s ease;min-width:80px;text-align:center;background:#dc2626;color:#fff}.sluttgjennomgang-page button.remove-button.enabled{background:#dc2626;color:#fff}.sluttgjennomgang-page button.remove-button.enabled:hover{background:#b91c1c}.sluttgjennomgang-page button.remove-button.disabled{background:#e5e7eb;color:#9ca3af;cursor:not-allowed}.error-message{background-color:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:.75rem;border-radius:4px;margin-bottom:1rem;font-size:.875rem}.loading-indicator{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;padding:3rem;text-align:center;color:var(--text-secondary)}.loading-spinner{width:40px;height:40px;border:4px solid #e5e7eb;border-top:4px solid #000000;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.no-projects-message{text-align:center;padding:3rem;color:var(--text-secondary)}.no-projects-message p{margin:0;font-size:1rem}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--card-bg);padding:2rem;border-radius:8px;max-width:400px;width:90%;box-shadow:0 10px 25px #0003}.modal-content h3{margin:0 0 1rem;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.modal-content p{margin:0 0 1.5rem;color:var(--text-secondary);line-height:1.5}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end}.modal-actions .btn-primary{background-color:#6b7280;color:#fff;border:none}.modal-actions .btn-primary:hover{background-color:#4b5563;color:#e5e7eb}.btn-primary,.btn-secondary{padding:.5rem 1rem;border:none;border-radius:4px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-primary{background-color:#6b7280;color:#fff;border:none}.btn-primary:hover{background-color:#4b5563;color:#e5e7eb}.btn-secondary{background-color:#6b7280;color:#fff}.btn-secondary:hover{background-color:#4b5563}.project-number{font-weight:600;color:var(--text-primary)}@media (max-width: 768px){.sluttgjennomgang-page{padding:1rem}.search-filter-row{flex-direction:column;align-items:stretch}.search-filter-row input{width:100%;min-width:unset}.payment-button{min-width:80px;font-size:.7rem;padding:.3rem .6rem}.modal-content{margin:1rem;padding:1.5rem}.modal-actions{flex-direction:column;gap:.5rem}.btn-primary,.btn-secondary{width:100%}}.sluttgjennomgang-page .projects-table th:nth-child(5),.sluttgjennomgang-page .projects-table th:nth-child(6),.sluttgjennomgang-page .projects-table th:nth-child(7){min-width:120px;text-align:center}.sluttgjennomgang-page .projects-table td:nth-child(5),.sluttgjennomgang-page .projects-table td:nth-child(6),.sluttgjennomgang-page .projects-table td:nth-child(7){text-align:center;padding:.5rem}@media (prefers-color-scheme: dark){.modal-content{background:var(--bg-secondary);color:var(--text-primary)}.payment-button.pending{background-color:#4b5563}.payment-button.pending:hover{background-color:#374151}}[data-theme=dark] .btn,[data-theme=dark] button:not(.btn-primary):not(.btn-danger):not(.btn-success):not(.remove-button){background:#00d4ff1a;border:1px solid rgba(0,212,255,.2);color:var(--text-primary)}[data-theme=dark] .btn:hover,[data-theme=dark] button:not(.btn-primary):not(.btn-danger):not(.btn-success):not(.remove-button):hover{background:#00d4ff33;border-color:var(--accent-color);box-shadow:0 0 25px #00d4ff66;color:var(--accent-color)}[data-theme=dark] .sluttgjennomgang-page button.remove-button,[data-theme=dark] .sluttgjennomgang-page button.remove-button.enabled{background:#dc2626;color:#fff;border:none}[data-theme=dark] .sluttgjennomgang-page button.remove-button.enabled:hover{background:#b91c1c;color:#fff;box-shadow:0 0 15px #dc262666}[data-theme=dark] .sluttgjennomgang-page button.remove-button.disabled{background:#374151;color:#9ca3af;border:none}[data-theme=dark] .btn-primary,[data-theme=dark] .primary-button{background:#6b7280;color:#fff;border:none;box-shadow:0 0 30px #6b728066}[data-theme=dark] .btn-primary:hover,[data-theme=dark] .primary-button:hover{background:#4b5563;color:#e5e7eb;box-shadow:0 0 40px #6b728099}[data-theme=dark] .sluttgjennomgang-page .projects-table{background:var(--card-bg);border:1px solid rgba(0,212,255,.15)}[data-theme=dark] .sluttgjennomgang-page .projects-table th{background:linear-gradient(135deg,#00d4ff14,#7c3aed14);color:var(--text-primary);border-bottom:1px solid rgba(0,212,255,.3)}[data-theme=dark] .sluttgjennomgang-page .projects-table td{color:var(--text-secondary);border-bottom:1px solid rgba(0,212,255,.1)}[data-theme=dark] .sluttgjennomgang-page .projects-table tbody tr:hover{background:#00d4ff0d}[data-theme=dark] .sluttgjennomgang-page input,[data-theme=dark] .sluttgjennomgang-page button{background:#0f1419cc;color:var(--text-primary);border-color:#00d4ff33}.notification-page{padding:2rem;max-width:1100px;margin:0 auto}.notification-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem}.notification-header h1{margin:0;font-size:2rem;color:#111827}.notification-header .muted{margin:.25rem 0 0}.actions{display:flex;gap:.5rem}.ghost{display:inline-flex;align-items:center;gap:.35rem;padding:.55rem .9rem;border-radius:.5rem;border:1px solid #e5e7eb;background:#fff;color:#000;cursor:pointer}.ghost:hover{background:#f3f4f6}.ghost:disabled{opacity:.5;cursor:not-allowed}.ghost.danger{color:#000;border-color:#fecdd3}.notification-card{border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 1px 3px #00000014}.notification-card-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid #e5e7eb}.badge-row{display:inline-flex;align-items:center;gap:.4rem;font-weight:600}.filters{display:inline-flex;align-items:center;gap:.35rem;color:#6b7280}.notification-list{display:flex;flex-direction:column;max-height:70vh;overflow-y:auto}.notification-item{padding:1.25rem 1.5rem;border-bottom:1px solid #f3f4f6;position:relative;transition:all .2s ease;background:#fff}.notification-item:last-child{border-bottom:none}.notification-item.clickable{cursor:pointer}.notification-item:hover{background:#f9fafb}.notification-item.clickable:hover{background:#f0f9ff;border-left:3px solid #3b82f6;padding-left:calc(1.5rem - 3px)}.notification-item.unread{background:#f8fafc;border-left:3px solid #3b82f6;padding-left:calc(1.5rem - 3px)}.notification-item.unread:hover{background:#f0f9ff}.notification-item.read{opacity:.85}.notification-item-content{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.notification-main{flex:1;min-width:0}.notification-title-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.375rem}.notification-title-row h3{margin:0;color:#111827;font-size:.95rem;font-weight:600;line-height:1.4}.notification-message{margin:0;color:#6b7280;font-size:.875rem;line-height:1.5}.notification-meta{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.nav-icon{color:#6b7280;flex-shrink:0;opacity:.6;transition:all .2s ease}.notification-item.clickable:hover .nav-icon{color:#3b82f6;opacity:1}.timestamp{color:#9ca3af;font-size:.8125rem;font-weight:500;white-space:nowrap}.unread-indicator{width:8px;height:8px;border-radius:50%;background:#3b82f6;flex-shrink:0;margin-top:2px}.empty-state{text-align:center;padding:2rem;color:#6b7280}.date-section-header{padding:.875rem 1.5rem;background:#f9fafb;font-weight:600;font-size:.8125rem;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #e5e7eb;position:sticky;top:0;z-index:1}.ai-chat-page{display:flex;flex-direction:column;height:calc(100vh - 60px);background:linear-gradient(135deg,#f5f7fa,#e8ecf1);overflow:hidden}.ai-chat-header{background:var(--card-bg);padding:24px 32px;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 3px #0000000d}.ai-chat-title{display:flex;align-items:center;gap:12px;margin-bottom:8px}.ai-chat-title h1{margin:0;font-size:28px;font-weight:600;color:#1f2937}.ai-icon{color:#6b7280;animation:sparkle 2s ease-in-out infinite}@keyframes sparkle{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.ai-chat-subtitle{margin:0;font-size:14px;color:#6b7280}.ai-chat-container{flex:1;display:flex;flex-direction:column;max-width:1200px;width:100%;margin:0 auto;padding:24px;overflow:hidden}.ai-chat-container :global(.chatkit-container){height:100%;border-radius:16px;box-shadow:0 4px 6px #00000012,0 10px 20px #0000000d;background:var(--card-bg);overflow:hidden}.ai-chat-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:calc(100vh - 60px);gap:16px;color:#6b7280}.spinner{animation:spin 1s linear infinite}.ai-chat-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:calc(100vh - 60px);gap:16px;color:#ef4444}.ai-chat-error button{padding:10px 20px;background:#6b7280;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:14px;transition:background-color .2s}.ai-chat-error button:hover{background:#4b5563}@media (max-width: 768px){.ai-chat-header{padding:16px 20px}.ai-chat-title h1{font-size:22px}.ai-chat-container{padding:16px}.ai-chat-container :global(.chatkit-container){border-radius:12px}}@media (prefers-color-scheme: dark){.ai-chat-page{background:linear-gradient(135deg,#1f2937,#111827)}.ai-chat-header{background:#1f2937;border-bottom-color:#374151}.ai-chat-title h1{color:#f9fafb}.ai-chat-subtitle{color:#9ca3af}.ai-chat-container :global(.chatkit-container){background:#1f2937}}.handover-request-card{background:var(--card-bg);border:1px solid #e5e7eb;border-radius:.5rem;padding:1rem;margin-bottom:1rem;transition:box-shadow .2s}.handover-request-card:hover{box-shadow:0 4px 6px -1px #0000001a}.handover-request-card.pending{border-left:4px solid #f59e0b}.handover-request-card.accepted{border-left:4px solid #10b981}.handover-request-card.rejected{border-left:4px solid #ef4444}.handover-card-header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1rem}.handover-icon{flex-shrink:0;width:40px;height:40px;background:#eff6ff;border-radius:.5rem;display:flex;align-items:center;justify-content:center;color:#3b82f6}.handover-info{flex:1;min-width:0}.project-title{margin:0 0 .25rem;font-size:1rem;font-weight:600;color:#111827}.handover-details{margin:0 0 .25rem;font-size:.875rem;color:#6b7280}.handover-details strong{color:#374151}.handover-date{margin:0;font-size:.75rem;color:#9ca3af}.status-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500;white-space:nowrap}.status-badge.pending{background:#fef3c7;color:#92400e}.status-badge.accepted{background:#d1fae5;color:#065f46}.status-badge.rejected{background:#fee2e2;color:#991b1b}.project-details{background:#f9fafb;border-radius:.375rem;padding:.75rem;margin-bottom:1rem}.project-details p{margin:.25rem 0;font-size:.875rem;color:#374151}.project-details strong{color:#111827}.handover-actions{display:flex;gap:.5rem;flex-wrap:wrap}.handover-actions button{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem .75rem;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;border:none}.view-project-button{background:var(--card-bg);color:#3b82f6;border:1px solid #3b82f6}.view-project-button:hover:not(:disabled){background:#eff6ff}.accept-button{background:#10b981;color:#fff}.accept-button:hover:not(:disabled){background:#059669}.reject-button{background:#ef4444;color:#fff}.reject-button:hover:not(:disabled){background:#dc2626}.cancel-button{background:#6b7280;color:#fff}.cancel-button:hover:not(:disabled){background:#4b5563}.handover-actions button:disabled{opacity:.5;cursor:not-allowed}.error-message{padding:.75rem;background:#fee2e2;border:1px solid #fecaca;border-radius:.375rem;color:#991b1b;font-size:.875rem;margin-bottom:1rem}[data-theme=dark] .component,[data-theme=dark] .wrapper,[data-theme=dark] .container{background:var(--card-bg);color:var(--text-primary)}[data-theme=dark] .card,[data-theme=dark] .panel,[data-theme=dark] .box{background:var(--card-bg);border:1px solid rgba(0,212,255,.15);box-shadow:0 0 30px #00d4ff1a,0 4px 15px #0000004d}[data-theme=dark] .card:hover,[data-theme=dark] .panel:hover{border-color:#00d4ff4d;box-shadow:0 0 40px #00d4ff33,0 8px 25px #0006}[data-theme=dark] .header,[data-theme=dark] .card-header,[data-theme=dark] .panel-header{background:linear-gradient(135deg,#00d4ff14,#7c3aed14);border-bottom:1px solid rgba(0,212,255,.15)}[data-theme=dark] .title,[data-theme=dark] h1,[data-theme=dark] h2,[data-theme=dark] h3,[data-theme=dark] h4,[data-theme=dark] h5,[data-theme=dark] h6{color:var(--text-primary)}[data-theme=dark] .subtitle,[data-theme=dark] .description{color:var(--text-secondary)}[data-theme=dark] .muted,[data-theme=dark] .text-muted{color:var(--text-muted)}[data-theme=dark] .btn,[data-theme=dark] button{background:#00d4ff1a;border:1px solid rgba(0,212,255,.2);color:var(--text-primary)}[data-theme=dark] .btn:hover,[data-theme=dark] button:hover{background:#00d4ff33;border-color:var(--accent-color);box-shadow:0 0 25px #00d4ff66;color:var(--accent-color)}[data-theme=dark] .btn-primary{background:var(--gradient-primary);border:none;box-shadow:0 0 30px #00d4ff66}[data-theme=dark] .btn-primary:hover{box-shadow:0 0 40px #00d4ff99}[data-theme=dark] input:focus,[data-theme=dark] textarea:focus,[data-theme=dark] select:focus{border-color:var(--accent-color);box-shadow:0 0 20px #00d4ff4d}[data-theme=dark] label{color:var(--text-primary)}[data-theme=dark] .list-item,[data-theme=dark] .item{background:#00d4ff0d;border:1px solid rgba(0,212,255,.1)}[data-theme=dark] .badge,[data-theme=dark] .tag{background:var(--gradient-primary);color:#fff;box-shadow:0 0 15px #00d4ff80}[data-theme=dark] .badge.success{background:#0f83;color:var(--success-color);border:1px solid rgba(0,255,136,.3)}[data-theme=dark] .badge.error,[data-theme=dark] .badge.danger{background:#ff5c5c33;color:var(--error-color);border:1px solid rgba(255,92,92,.3)}[data-theme=dark] .badge.warning{background:#ffb83633;color:var(--warning-color);border:1px solid rgba(255,184,54,.3)}[data-theme=dark] table{background:var(--card-bg);border:1px solid rgba(0,212,255,.15)}[data-theme=dark] th{background:linear-gradient(135deg,#00d4ff14,#7c3aed14);color:var(--text-primary);border-bottom:2px solid rgba(0,212,255,.3)}[data-theme=dark] td{color:var(--text-secondary);border-bottom:1px solid rgba(0,212,255,.1)}[data-theme=dark] tr:hover{background:#00d4ff0d}[data-theme=dark] .progress{background:#00d4ff1a}[data-theme=dark] .tooltip{background:var(--card-bg);border:1px solid rgba(0,212,255,.3);box-shadow:0 0 30px #00d4ff4d;color:var(--text-primary)}[data-theme=dark] .empty-state,[data-theme=dark] .no-data{color:var(--text-muted)}.task-history-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.task-history-modal{background:#fff;border-radius:8px;width:100%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 4px 6px #0000001a}.task-history-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px;border-bottom:1px solid #e5e7eb}.task-history-modal-header h2{margin:0;font-size:1.5rem;font-weight:600;color:#111827}.task-history-modal-close{background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;color:#6b7280;transition:color .2s}.task-history-modal-close:hover{color:#111827}.task-history-modal-content{flex:1;overflow-y:auto;padding:20px}.task-history-loading{display:flex;align-items:center;justify-content:center;padding:40px}.loading-spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite}.task-history-empty{text-align:center;padding:40px;color:#6b7280}.task-history-list{display:flex;flex-direction:column;gap:12px}.task-history-item{display:flex;align-items:flex-start;justify-content:space-between;padding:16px;background:#f9fafb;border-radius:6px;border:1px solid #e5e7eb;transition:background-color .2s}.task-history-item:hover{background:#f3f4f6}.task-history-item-content{flex:1;display:flex;flex-direction:column;gap:8px}.task-history-item-description{font-size:.95rem;color:#111827;line-height:1.5}.task-history-item-due-date,.task-history-item-timestamp{display:flex;align-items:center;gap:6px;font-size:.85rem;color:#6b7280}.task-history-item-timestamp{flex-direction:column;align-items:flex-start;gap:4px}.task-history-relative-time{font-weight:500;color:#059669}.task-history-full-time{font-size:.75rem;color:#9ca3af;cursor:help}.task-history-item-actions{display:flex;align-items:center;gap:8px;margin-left:12px}.task-history-project-link,.task-history-restore{display:flex;align-items:center;gap:4px;padding:6px 12px;border:1px solid #d1d5db;background:#fff;border-radius:4px;cursor:pointer;font-size:.875rem;color:#374151;transition:all .2s}.task-history-project-link:hover{background:#f3f4f6;border-color:#9ca3af}.task-history-restore{background:#3b82f6;color:#fff;border-color:#3b82f6}.task-history-restore:hover:not(:disabled){background:#2563eb;border-color:#2563eb}.task-history-restore:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 640px){.task-history-modal{max-width:100%;max-height:90vh;margin:10px}.task-history-item{flex-direction:column;gap:12px}.task-history-item-actions{margin-left:0;width:100%;justify-content:flex-end}}.my-day-page-new{padding:2rem;max-width:1600px;margin:0 auto;color:var(--text-primary)}.my-day-page-new .widget,.my-day-page-new .responsible-projects-section{background:var(--card-bg);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:var(--radius-lg)}.my-day-page-new .widget-header h3,.my-day-page-new .section-header h2{color:var(--text-primary)}.my-day-page-new .welcome-text,.my-day-page-new .widget-header-actions,.my-day-page-new .task-due-date,.my-day-page-new .task-project-info,.my-day-page-new .widget-list-item p,.my-day-page-new .widget-footer-stats{color:var(--text-secondary)}.my-day-page-new .task-description,.my-day-page-new .widget-list-item strong,.my-day-page-new .project-nr{color:var(--text-primary)}.my-day-page-new .add-task-btn,.my-day-page-new .view-project-btn{background:var(--gradient-primary);border:none}.my-day-page-new .history-badge-btn,.my-day-page-new .section-filters,.my-day-page-new .projects-table th,.my-day-page-new .projects-table td,.my-day-page-new .widget-list-item{border-color:var(--border-color)}.my-day-page-new .stat-number{color:var(--accent-color)}.my-day-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.my-day-header h1{margin:0 0 .5rem;font-size:2rem;color:#111827}.welcome-text{margin:0;color:#6b7280;font-size:1rem}.header-right{display:flex;align-items:center;gap:1rem}.history-badge-btn{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;background:#f3f4f6;border:1px solid #d1d5db;border-radius:.375rem;color:#374151;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s}.history-badge-btn:hover{background:#e5e7eb;border-color:#9ca3af;color:#111827}.header-date{display:flex;align-items:center;gap:.5rem;color:#6b7280;font-size:.875rem}.widgets-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-bottom:2rem}.lists-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:2rem;width:100%;max-width:100%;box-sizing:border-box}.lists-grid .widget{width:100%;min-width:0}.widget{background:var(--card-bg);border-radius:.75rem;padding:1.5rem;box-shadow:0 1px 3px #0000001a;border:1px solid #e5e7eb}.widget-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.widget-header h3{margin:0;font-size:1rem;font-weight:600;color:#111827;display:flex;align-items:center;gap:.5rem}.widget-header-actions{display:flex;align-items:center;gap:.5rem}.widget-footer-stats{margin-top:.75rem;padding-top:.75rem;border-top:1px solid #e5e7eb;font-size:.8rem;color:#6b7280}.stat-number{font-weight:700;color:#f59e0b;font-size:1rem}.add-task-btn{background:#3b82f6;color:#fff;border:none;border-radius:.375rem;padding:.375rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.add-task-btn:hover{background:#2563eb}.view-all-btn{background:none;border:none;color:#3b82f6;font-size:.875rem;cursor:pointer;transition:color .2s}.view-all-btn:hover{color:#2563eb}.tasks-list{max-height:400px;overflow-y:auto}.task-item{display:flex;align-items:center;gap:.75rem;padding:.75rem .5rem;border-radius:.5rem;margin-bottom:.5rem;transition:all .2s ease;position:relative}.task-item:hover{background:var(--hover-color);padding-left:.75rem}.task-item.completed{opacity:.5}.task-item.completed .task-description{text-decoration:line-through}.task-checkbox{background:none;border:none;color:#3b82f6;cursor:pointer;padding:0;display:flex;align-items:center;flex-shrink:0;transition:transform .15s ease}.task-checkbox:hover{color:#2563eb;transform:scale(1.1)}.task-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}.task-description{font-size:.875rem;color:#111827;line-height:1.4;word-break:break-word}.task-due-date{display:inline-flex;align-items:center;gap:.25rem;font-size:.75rem;color:#6b7280}.task-project-info{display:block;font-size:.75rem;color:#6b7280;margin-top:.25rem;text-decoration:underline;text-decoration-color:#d1d5db;text-underline-offset:2px}.task-actions{display:flex;align-items:center;gap:.25rem;opacity:0;transition:opacity .2s ease;margin-left:.5rem}.task-item:hover .task-actions{opacity:1}.task-project-link.always-visible{opacity:1!important}.task-project-link,.task-edit,.task-delete{background:none;border:none;cursor:pointer;padding:.375rem;border-radius:.375rem;display:flex;align-items:center;justify-content:center;transition:all .15s ease;flex-shrink:0}.task-project-link{color:#3b82f6}.task-project-link.always-visible{opacity:1}.task-project-link:hover{background-color:#dbeafe;color:#2563eb}.task-edit{color:#6b7280}.task-edit:hover{background-color:#f3f4f6;color:#111827}.task-delete{color:#ef4444}.task-delete:hover{background:#fee2e2;color:#dc2626}.widget-list{max-height:350px;overflow-y:auto}.widget-list-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;border-radius:.375rem;margin-bottom:.5rem;cursor:pointer;transition:background .2s;border:1px solid var(--border-color);background:var(--card-bg)}.widget-list-item:hover{background:var(--hover-color);border-color:var(--border-color)}.widget-list-item.completed{opacity:.7;background:#22d3ee14;border-color:#22d3ee4d}.widget-item-right{display:flex;align-items:center;gap:.5rem}.completed-badge{padding:.25rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:500;white-space:nowrap;background:#10b981;color:#fff}.widget-list-item strong{display:block;font-size:.875rem;color:#111827;margin-bottom:.25rem}.widget-list-item p{margin:0;font-size:.75rem;color:#6b7280}.age-badge,.source-badge{padding:.25rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:500;white-space:nowrap}.age-badge{background:#fef3c7;color:#92400e}.source-badge{color:#fff}.empty-state{text-align:center;color:#9ca3af;font-size:.875rem;padding:2rem 1rem}.handover-section{margin-bottom:2rem}.handover-group{margin-bottom:1.5rem}.handover-group h3{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;font-size:1.125rem;color:#111827}.responsible-projects-section{background:var(--card-bg);border-radius:.75rem;padding:1.5rem;box-shadow:0 1px 3px #0000001a;border:1px solid #e5e7eb}.section-filters{display:flex;gap:1rem;align-items:flex-end;flex-wrap:wrap;padding:1rem;background:var(--bg-secondary);border-radius:.5rem;border:1px solid var(--border-color);width:100%;margin-bottom:1.5rem;box-sizing:border-box}.filter-group select.filter-select{padding:.625rem 2.5rem .625rem .875rem;border:1px solid var(--border-color);border-radius:.5rem;font-size:.875rem;background:var(--card-bg);cursor:pointer;transition:all .2s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:12px;box-shadow:0 1px 2px #0000000d}.filter-group select.filter-select:hover{border-color:var(--primary-color);box-shadow:var(--shadow-sm)}.filter-group select.filter-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #0ea5e933,var(--shadow-sm)}.search-input{padding:.625rem .875rem;border:1px solid var(--border-color);border-radius:.5rem;font-size:.875rem;background:var(--card-bg);transition:all .2s ease;box-shadow:var(--shadow-sm)}.search-input:hover{border-color:var(--primary-color);box-shadow:var(--shadow-md)}.search-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #0ea5e933,var(--shadow-sm)}.projects-table td{padding:1rem;font-size:.875rem;color:#111827;border-bottom:1px solid #f3f4f6;vertical-align:middle}.projects-table tbody tr:hover{background:var(--hover-color)}.projects-table tbody tr.clickable-row:hover{background:#22d3ee14}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;background-color:var(--card-bg)}.status-draft{background-color:#f3f4f6;color:#374151}.status-bidding{background-color:#fef3c7;color:#92400e}.pill-select{padding:.35rem .75rem;border-radius:999px;border:1px solid #d1d5db;background:#f9fafb;font-size:.85rem}.followup-input input[type=date]{padding:.4rem .6rem;border:1px solid #d1d5db;border-radius:.375rem}.clear-followup{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:1px solid #e5e7eb;background:#fff;border-radius:999px;cursor:pointer;color:#374151!important;padding:0}.clear-followup:hover{background:#f3f4f6}.clear-followup:hover svg{color:#111827!important;stroke:#111827!important}.status-bid-received{background-color:#e0f2fe;color:#0369a1}.status-accepted{background-color:#d1fae5;color:#065f46}.status-starting{background-color:#dbeafe;color:#1e40af}.status-finishing{background-color:#e0e7ff;color:#3730a3}.status-completed{background-color:#dcfce7;color:#166534}.status-paid{background-color:#f0fdf4;color:#14532d}.status-lost,.status-cancelled{background-color:#fee2e2;color:#991b1b}.status-default{background-color:#f3f4f6;color:#374151}.view-project-btn{background:#3b82f6;color:#fff;border:none;border-radius:.375rem;padding:.375rem .75rem;font-size:.875rem;cursor:pointer;transition:background .2s}.view-project-btn:hover{background:#2563eb}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;padding:3rem}.loading-spinner{width:40px;height:40px;border:4px solid var(--border-color);border-top:4px solid var(--accent-color);border-radius:50%;animation:spin 1s linear infinite}.loading,.error-message{text-align:center;padding:3rem;font-size:1rem;color:#6b7280}.error-message{color:#ef4444;background:#fee2e2;border:1px solid #fecaca;border-radius:.5rem}@media (max-width: 1024px){.widgets-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.lists-grid{grid-template-columns:1fr 1fr;gap:1rem}}@media (max-width: 768px){.my-day-page-new{padding:1rem}.my-day-header{flex-direction:column;align-items:flex-start;gap:1rem}.widgets-grid{grid-template-columns:1fr}.lists-grid{grid-template-columns:1fr;gap:1rem}.section-filters{width:100%;flex-direction:column;align-items:stretch}.filter-group,.search-group{width:100%;min-width:unset}.search-input{width:100%}.projects-table-container{overflow-x:scroll}.projects-table{min-width:800px}}[data-theme=dark] .my-day-page-new{background:var(--bg-primary);color:var(--text-primary)}[data-theme=dark] .my-day-page-new .widget,[data-theme=dark] .my-day-page-new .responsible-projects-section,[data-theme=dark] .my-day-page-new .list-card,[data-theme=dark] .my-day-page-new .widget-list-item,[data-theme=dark] .my-day-page-new .projects-table{background:var(--card-bg);border-color:var(--border-color);box-shadow:none}[data-theme=dark] .my-day-page-new input,[data-theme=dark] .my-day-page-new .search-input,[data-theme=dark] .my-day-page-new .pill-select,[data-theme=dark] .my-day-page-new .clear-followup{background:var(--bg-secondary);color:var(--text-primary)!important;border-color:var(--border-color)}[data-theme=dark] .my-day-page-new .clear-followup svg{color:var(--text-primary)!important;stroke:var(--text-primary)!important}[data-theme=dark] .my-day-page-new .empty-state{background:var(--bg-secondary);border:1px dashed var(--border-color);color:var(--text-muted)}.team-dashboard-page{padding:2rem;max-width:1400px;margin:0 auto}.team-header{margin-bottom:2rem}.back-btn{padding:.5rem 1rem;background:transparent;color:#4a5568;border:1px solid #e2e8f0;border-radius:6px;font-weight:400;cursor:pointer;transition:all .2s ease;margin-bottom:1.5rem;display:inline-flex;align-items:center;gap:.5rem;font-size:.875rem}.back-btn:hover{background:#f7fafc;border-color:#cbd5e0;color:#2d3748}.team-header-top{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.toggle-all-btn{padding:.75rem 1.5rem;background:transparent;color:#4a5568;border:1px solid #e2e8f0;border-radius:6px;font-weight:400;cursor:pointer;transition:all .2s ease;white-space:nowrap}.toggle-all-btn:hover{background:#f7fafc;border-color:#cbd5e0}.toggle-all-btn.active{background:#2d3748;color:#fff;border-color:#2d3748}.team-header h1{font-size:1.875rem;font-weight:600;color:#1a202c;margin-bottom:.5rem}.team-subtitle{color:#718096;font-size:.9375rem}.team-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;padding:3rem}.team-loading .loading-spinner{width:40px;height:40px;border:3px solid #e2e8f0;border-top:3px solid #4a5568;border-radius:50%;animation:spin 1s linear infinite}.team-error{text-align:center;padding:3rem;font-size:1rem;color:#c53030}.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.team-member-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;text-align:center;position:relative}.team-member-card:hover{border-color:#cbd5e0;box-shadow:0 1px 3px #0000001a}.team-member-card.hidden-user{opacity:.6;border-style:dashed}.hidden-badge{position:absolute;top:.75rem;right:.75rem;padding:.25rem .5rem;background:#fed7d7;color:#c53030;font-size:.625rem;font-weight:500;text-transform:uppercase;border-radius:4px;border:1px solid #fc8181}.member-avatar{width:64px;height:64px;border-radius:50%;background:#f7fafc;color:#4a5568;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:600;margin-bottom:1rem;border:1px solid #e2e8f0}.member-info{margin-bottom:1rem;width:100%}.member-info h3{font-size:1.125rem;font-weight:600;color:#1a202c;margin-bottom:.25rem}.member-email{font-size:.875rem;color:#718096;margin-bottom:.5rem}.member-role{display:inline-block;padding:.25rem .75rem;border-radius:4px;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.member-role.role-admin{background:#fef5e7;color:#744210;border:1px solid #f6ad55}.member-role.role-user{background:#ebf8ff;color:#2c5282;border:1px solid #90cdf4}.member-stats{display:flex;gap:2rem;margin-bottom:1rem;padding:1rem 0;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;width:100%;justify-content:center}.stat{display:flex;flex-direction:column;align-items:center;gap:.25rem}.stat-icon{font-size:1.5rem}.stat-label{font-size:.75rem;color:#718096;text-transform:uppercase;letter-spacing:.5px}.view-day-btn{padding:.625rem 1.25rem;background:#2d3748;color:#fff;border:1px solid #2d3748;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s ease;width:100%;font-size:.875rem}.view-day-btn:hover{background:#1a202c;border-color:#1a202c}@media (max-width: 768px){.team-dashboard-page{padding:1rem}.team-header-top{flex-direction:column;align-items:flex-start;gap:.75rem}.toggle-all-btn{width:100%;text-align:center}.team-member-card{padding:1rem}.member-stats{gap:1rem;flex-wrap:wrap}.view-day-btn{width:100%}.team-grid{grid-template-columns:1fr}}[data-theme=dark] .team-dashboard-page{background:var(--bg-primary);color:var(--text-primary)}[data-theme=dark] .back-btn{background:#0f141999;color:var(--text-secondary);border:1px solid rgba(0,212,255,.2)}[data-theme=dark] .back-btn:hover{background:#0f1419e6;border-color:#00d4ff66;color:var(--text-primary)}[data-theme=dark] .toggle-all-btn{background:#0f141999;color:var(--text-secondary);border:1px solid rgba(0,212,255,.2)}[data-theme=dark] .toggle-all-btn:hover{background:#0f1419e6;border-color:#00d4ff66}[data-theme=dark] .toggle-all-btn.active{background:var(--accent-color);color:#0b0f16;border-color:var(--accent-color)}[data-theme=dark] .team-header h1{color:var(--text-primary)}[data-theme=dark] .team-subtitle{color:var(--text-secondary)}[data-theme=dark] .team-member-card{background:var(--card-bg);border:1px solid rgba(0,212,255,.15);box-shadow:0 0 20px #00d4ff0d}[data-theme=dark] .team-member-card:hover{border-color:#00d4ff4d;box-shadow:0 0 25px #00d4ff26}[data-theme=dark] .member-avatar{background:#00d4ff1a;color:var(--accent-color);border:1px solid rgba(0,212,255,.2)}[data-theme=dark] .member-info h3{color:var(--text-primary)}[data-theme=dark] .member-email{color:var(--text-secondary)}[data-theme=dark] .member-role{border:1px solid rgba(0,212,255,.3)}[data-theme=dark] .member-role.role-admin{background:#ffb83633;color:var(--warning-color);border:1px solid rgba(255,184,54,.4)}[data-theme=dark] .member-role.role-user{background:#00d4ff26;color:var(--accent-color);border:1px solid rgba(0,212,255,.3)}[data-theme=dark] .member-stats{border-top:1px solid rgba(0,212,255,.2);border-bottom:1px solid rgba(0,212,255,.2)}[data-theme=dark] .stat-label{color:var(--text-secondary)}[data-theme=dark] .view-day-btn{background:#0f141999;color:var(--text-primary);border:1px solid rgba(0,212,255,.2)}[data-theme=dark] .view-day-btn:hover{background:#0f1419e6;border-color:#00d4ff66}.team-member-day-page{padding:2rem;max-width:1400px;margin:0 auto}.team-member-header{margin-bottom:2rem}.back-btn{padding:.5rem 1rem;background:var(--card-bg);border:1px solid #e0e0e0;border-radius:6px;cursor:pointer;margin-bottom:1rem;font-size:.9375rem;transition:background .2s ease}.back-btn:hover{background:#f8f9fa}.team-member-header h1{font-size:2rem;font-weight:600;color:#1a1a1a;margin-bottom:.25rem}.member-email{color:#666;font-size:.9375rem}.team-member-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;padding:3rem}.team-member-loading .loading-spinner{width:40px;height:40px;border:4px solid #e5e7eb;border-top:4px solid #000000;border-radius:50%;animation:spin 1s linear infinite}.team-member-error{text-align:center;padding:3rem;font-size:1.1rem;color:#d32f2f}.team-member-error{color:#d32f2f}.team-member-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.widget{background:var(--card-bg);border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a}.widget h2{font-size:1.25rem;font-weight:600;color:#1a1a1a;margin-bottom:1rem}.tasks-list,.projects-list{display:flex;flex-direction:column;gap:.75rem}.tasks-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.tasks-add{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.history-badge-btn{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;background:#e5e7eb!important;border:1px solid #d1d5db!important;border-radius:.375rem;color:#6b7280!important;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s;box-shadow:none!important;transform:none!important}.history-badge-btn:before{display:none!important}.history-badge-btn:hover{background:#d1d5db!important;border-color:#9ca3af!important;color:#6b7280!important;transform:none!important;box-shadow:none!important}.history-badge-btn:hover:before{display:none!important}.editing-hint{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .75rem;background:#fef3c7;color:#92400e;border:1px solid #f59e0b;border-radius:8px;font-size:.9rem}.editing-hint button{background:transparent;border:none;color:#92400e;cursor:pointer;text-decoration:underline}.tasks-add input{padding:.5rem .75rem;border:1px solid #e0e0e0;border-radius:6px}.tasks-add button{padding:.45rem .9rem;border:none;background:#000;color:#fff;border-radius:6px;cursor:pointer}.task-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#f8f9fa;border-radius:6px}.task-item input[type=checkbox]{width:18px;height:18px;cursor:pointer}.task-item span{flex:1;font-size:.9375rem}.task-item span.completed{text-decoration:line-through;color:#999}.task-edit{display:flex;gap:.5rem;align-items:center;flex:1}.task-edit input{padding:.5rem .75rem;border:1px solid #e0e0e0;border-radius:6px}.task-edit-actions{display:flex;gap:.5rem}.edit-btn{padding:.25rem .6rem;background:transparent;border:none;border-radius:4px;cursor:pointer;color:#000}.edit-btn svg{color:#000;stroke:#000}.project-link-btn{padding:.25rem .5rem;background:#000;color:#fff;border:none;border-radius:4px;cursor:pointer}.due-date{font-size:.8125rem;color:#666;padding:.25rem .5rem;background:var(--card-bg);border-radius:4px}.project-item{padding:1rem;background:#f8f9fa;border-radius:8px;cursor:pointer;transition:background .2s ease}.project-item:hover{background:#e9ecef}.project-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.project-header strong{color:#667eea;font-weight:600}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;background-color:var(--card-bg)}.status-badge.status-draft,.status-badge.draft{background-color:#f3f4f6;color:#374151}.status-badge.status-anbudsrunde,.status-badge.anbudsrunde{background-color:#fef3c7;color:#92400e}.status-badge.status-mottatt_bud,.status-badge.mottatt_bud,.status-badge.mottatt-bud{background-color:#e0f2fe;color:#0369a1}.status-badge.status-akseptert_oppdrag,.status-badge.akseptert_oppdrag,.status-badge.akseptert-oppdrag{background-color:#d1fae5;color:#065f46}.status-badge.oppstartsjekkliste{background-color:#dbeafe;color:#1e40af}.status-badge.avsluttingsjekkliste{background-color:#e0e7ff;color:#3730a3}.status-badge.ferdig_prosjekt,.status-badge.ferdig-prosjekt{background-color:#dcfce7;color:#166534}.status-badge.betalt{background-color:#f0fdf4;color:#14532d}.status-badge.sendt_inn_review,.status-badge.sendt-inn-review{background-color:#fef3c7;color:#92400e}.status-badge.tapt{background-color:#fee2e2;color:#991b1b}.status-badge.kansellert{background-color:#fecaca;color:#991b1b}.project-details{display:flex;flex-direction:column;gap:.25rem}.project-customer{font-size:.9375rem;color:#1a1a1a}.project-address{font-size:.875rem;color:#666}.no-items{text-align:center;color:#999;padding:2rem;font-style:italic}.tasks-widget{grid-column:1 / -1}.responsible-projects-section{grid-column:1 / -1;background:var(--card-bg);border-radius:.75rem;padding:1.5rem;box-shadow:0 1px 3px #0000001a;border:1px solid #e5e7eb}.section-header{margin-bottom:1rem}.section-header h2{margin:0;font-size:1.25rem;font-weight:600;color:#111827;display:flex;align-items:center;gap:.5rem}.section-filters{display:flex;gap:1rem;align-items:flex-end;flex-wrap:wrap;padding:1rem;background:#f9fafb;border-radius:.5rem;border:1px solid #e5e7eb;width:100%;margin-bottom:1.5rem;box-sizing:border-box}.filter-group{display:flex;flex-direction:column;gap:.5rem;min-width:180px}.filter-label{display:flex;align-items:center;gap:.375rem;font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.filter-label-text{display:flex;align-items:center}.filter-group select.filter-select{padding:.625rem 2.5rem .625rem .875rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;background:#fff;cursor:pointer;transition:all .2s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:12px;box-shadow:0 1px 2px #0000000d}.filter-group select.filter-select:hover{border-color:#9ca3af;box-shadow:0 2px 4px #0000001a}.filter-group select.filter-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a,0 2px 4px #0000001a}.search-group{display:flex;flex-direction:column;gap:.5rem;flex:1;min-width:220px}.search-input{padding:.625rem .875rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;background:#fff;transition:all .2s ease;box-shadow:0 1px 2px #0000000d}.search-input:hover{border-color:#9ca3af;box-shadow:0 2px 4px #0000001a}.search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a,0 2px 4px #0000001a}.search-input::placeholder{color:#9ca3af}.projects-table-container{overflow-x:auto}.projects-table{width:100%;border-collapse:collapse}.projects-table thead{background:#f9fafb}.projects-table th{padding:.75rem 1rem;text-align:left;font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #e5e7eb}.projects-table td{padding:1rem;font-size:.9375rem;color:#1a1a1a;border-bottom:1px solid #f3f4f6;vertical-align:middle}.projects-table tbody tr{transition:background .2s}.projects-table tbody tr.clickable-row{cursor:pointer}.projects-table tbody tr:hover{background:#f9fafb}.projects-table tbody tr.clickable-row:hover{background:#eff6ff}.project-nr{font-weight:600;color:#3b82f6}.status-draft{background:#f3f4f6;color:#4b5563}.status-bidding{background:#dbeafe;color:#1e40af}.status-bid-received{background:#fef3c7;color:#92400e}.status-accepted{background:#d1fae5;color:#065f46}.status-starting,.status-finishing{background:#e0e7ff;color:#3730a3}.status-completed,.status-paid{background:#d1fae5;color:#065f46}.status-lost,.status-cancelled{background:#fee2e2;color:#991b1b}.status-default{background:#f3f4f6;color:#6b7280}.pill-select-wrapper{display:inline-flex;align-items:center}.pill-select{padding:.35rem .75rem;border-radius:999px;border:1px solid #d1d5db;background:#f9fafb;font-size:.85rem;cursor:pointer}.pill-select:disabled{opacity:.5;cursor:not-allowed}.followup-input{display:flex;align-items:center;gap:.35rem}.followup-input input[type=date]{padding:.4rem .6rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem}.followup-input input[type=date]:disabled{opacity:.5;cursor:not-allowed}.clear-followup{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:1px solid #e5e7eb;background:#fff;border-radius:999px;cursor:pointer;transition:background .2s;color:#374151!important;padding:0}.clear-followup svg{color:#374151!important;stroke:#374151!important;width:12px;height:12px}.clear-followup:hover:not(:disabled){background:#f3f4f6}.clear-followup:hover:not(:disabled) svg{color:#111827!important;stroke:#111827!important}.clear-followup:disabled{opacity:.5;cursor:not-allowed}.empty-row{text-align:center;color:#9ca3af;padding:3rem 1rem!important}@media (max-width: 1024px){.team-member-grid{grid-template-columns:1fr}}@media (max-width: 768px){.team-member-day-page{padding:1rem}.team-member-header h1{font-size:1.5rem}.team-member-grid{gap:1rem}.widget,.responsible-projects-section{padding:1rem}.section-filters{width:100%;flex-direction:column;align-items:stretch}.filter-group,.search-group{width:100%;min-width:unset}.search-input{width:100%}.projects-table-container{overflow-x:scroll;-webkit-overflow-scrolling:touch}.projects-table{min-width:800px}.tasks-add{flex-direction:column;align-items:stretch}.tasks-add input,.tasks-add button{width:100%}.task-item{flex-wrap:wrap;align-items:flex-start}.task-item span{min-width:0;word-break:break-word}.project-item{padding:.75rem}.project-header{flex-direction:column;align-items:flex-start;gap:.5rem}.status-badge{font-size:.7rem}}[data-theme=dark] .card:hover,[data-theme=dark] .panel:hover,[data-theme=dark] .section:hover{border-color:#00d4ff4d;box-shadow:0 0 40px #00d4ff33,0 8px 25px #0006}[data-theme=dark] .header,[data-theme=dark] .page-header,[data-theme=dark] .section-header,[data-theme=dark] .card-header{background:linear-gradient(135deg,#00d4ff14,#7c3aed14);border:1px solid rgba(0,212,255,.2);box-shadow:0 0 40px #00d4ff26}[data-theme=dark] .title.main,[data-theme=dark] h1{text-shadow:0 0 30px rgba(0,212,255,.4)}[data-theme=dark] .btn,[data-theme=dark] button:not(.btn-primary):not(.btn-danger):not(.btn-success){background:#00d4ff1a;border:1px solid rgba(0,212,255,.2);color:var(--text-primary)}[data-theme=dark] .btn:hover,[data-theme=dark] button:not(.btn-primary):not(.btn-danger):not(.btn-success):hover{background:#00d4ff33;border-color:var(--accent-color);box-shadow:0 0 25px #00d4ff66;color:var(--accent-color)}[data-theme=dark] .btn-primary,[data-theme=dark] .primary-button{background:var(--gradient-primary);border:none;box-shadow:0 0 30px #00d4ff66}[data-theme=dark] .btn-primary:hover,[data-theme=dark] .primary-button:hover{box-shadow:0 0 40px #00d4ff99}[data-theme=dark] .section-filters{background:#0f141999;border:1px solid rgba(0,212,255,.2);box-shadow:0 0 20px #00d4ff1a}[data-theme=dark] .filter-label{color:var(--text-secondary)}[data-theme=dark] .filter-group select.filter-select{background:#0f1419cc;border:1px solid rgba(0,212,255,.2);color:var(--text-primary);box-shadow:0 0 15px #00d4ff1a}[data-theme=dark] .filter-group select.filter-select:hover{border-color:#00d4ff66;box-shadow:0 0 25px #00d4ff33}[data-theme=dark] .filter-group select.filter-select:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px #00d4ff33,0 0 30px #00d4ff4d}[data-theme=dark] .search-input{background:#0f1419cc;border:1px solid rgba(0,212,255,.2);color:var(--text-primary);box-shadow:0 0 15px #00d4ff1a}[data-theme=dark] .search-input:hover{border-color:#00d4ff66;box-shadow:0 0 25px #00d4ff33}[data-theme=dark] .search-input:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px #00d4ff33,0 0 30px #00d4ff4d}[data-theme=dark] .search-input::placeholder{color:var(--text-muted)}.admin-settings-page{padding:2rem;max-width:1400px;margin:0 auto}.admin-header{margin-bottom:3rem}.admin-header h1{font-size:2rem;font-weight:600;color:#1a1a1a;margin-bottom:.5rem}.admin-subtitle{color:#666;font-size:1rem}.admin-loading,.admin-error{text-align:center;padding:3rem;font-size:1.1rem;color:#666}.admin-error{color:#d32f2f}.settings-section{background:var(--card-bg);border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem}.settings-section h2{font-size:1.5rem;font-weight:600;color:#1a1a1a;margin-bottom:.5rem}.section-description{color:#666;font-size:.9375rem;margin-bottom:1.5rem}.create-rule-form{display:flex;gap:1rem;margin-bottom:2rem;padding:1.5rem;background:#f8f9fa;border-radius:8px}.create-rule-form input,.create-rule-form select{flex:1;padding:.75rem;border:1px solid #e0e0e0;border-radius:6px;font-size:.9375rem}.create-rule-form button{padding:.75rem 1.5rem;background:#667eea;color:#fff;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:background .2s ease}.create-rule-form button:hover{background:#5568d3}.input-with-icon{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border:1px solid #e0e0e0;border-radius:6px;background:var(--card-bg)}.input-with-icon input,.input-with-icon select{border:none;outline:none;flex:1;background:transparent;font-size:.9375rem}.rules-table-container{overflow-x:auto}.rules-table{width:100%;border-collapse:collapse}.rules-table thead{background:#f8f9fa}.rules-table th{padding:1rem;text-align:left;font-weight:600;font-size:.875rem;color:#666;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e0e0e0}.rules-table tbody tr{border-bottom:1px solid #f0f0f0;transition:background-color .2s ease}.rules-table tbody tr:hover{background-color:#f8f9fa}.rules-table td{padding:1rem;font-size:.9375rem;color:#1a1a1a}.customer-type{font-weight:600;color:#667eea}.date-cell{color:#666;font-size:.875rem}.delete-btn{padding:.5rem 1rem;background:#dc3545;color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s ease}.delete-btn:hover{background:#c82333}.no-rules{text-align:center;padding:2rem;color:#999;font-style:italic}.users-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.user-visibility-card{padding:1.5rem;background:#f8f9fa;border-radius:8px;display:flex;justify-content:space-between;align-items:center}.user-info{display:flex;align-items:center;gap:1rem}.user-avatar{width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:600}.user-info h4{font-size:1rem;font-weight:600;color:#1a1a1a;margin-bottom:.25rem}.user-email{font-size:.875rem;color:#666;margin-bottom:.25rem}.user-role{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase}.user-role.role-admin{background:#fef3c7;color:#92400e}.user-role.role-user{background:#dbeafe;color:#1e40af}.visibility-toggle{display:flex;align-items:center;gap:.75rem;cursor:pointer}.visibility-toggle input[type=checkbox]{display:none}.visibility-toggle .toggle-slider{position:relative;width:50px;height:26px;background:#ccc;border-radius:13px;transition:background .3s ease}.visibility-toggle .toggle-slider:before{content:"";position:absolute;width:20px;height:20px;border-radius:50%;background:var(--card-bg);top:3px;left:3px;transition:transform .3s ease}.visibility-toggle input[type=checkbox]:checked+.toggle-slider{background:#667eea}.visibility-toggle input[type=checkbox]:checked+.toggle-slider:before{transform:translate(24px)}.toggle-label{font-size:.875rem;font-weight:500;color:#666}@media (max-width: 768px){.admin-settings-page{padding:1rem}.create-rule-form{flex-direction:column}.users-grid{grid-template-columns:1fr}.user-visibility-card{flex-direction:column;align-items:flex-start;gap:1rem}}[data-theme=dark] .page,[data-theme=dark] .container,[data-theme=dark] .main-content,[data-theme=dark] .content-wrapper{background:var(--bg-primary);color:var(--text-primary)}[data-theme=dark] .card,[data-theme=dark] .panel,[data-theme=dark] .section,[data-theme=dark] .box,[data-theme=dark] .widget{background:var(--card-bg);border:1px solid rgba(0,212,255,.15);box-shadow:0 0 30px #00d4ff1a,0 4px 15px #0000004d}[data-theme=dark] .card:hover,[data-theme=dark] .panel:hover,[data-theme=dark] .section:hover{border-color:#414b5c99;box-shadow:0 6px 14px #00000059}[data-theme=dark] .header,[data-theme=dark] .page-header,[data-theme=dark] .section-header,[data-theme=dark] .card-header{background:#1b2230;border:1px solid rgba(65,75,92,.6);box-shadow:0 6px 14px #00000059}[data-theme=dark] .title,[data-theme=dark] .heading,[data-theme=dark] h1,[data-theme=dark] h2,[data-theme=dark] h3,[data-theme=dark] h4,[data-theme=dark] h5,[data-theme=dark] h6{color:var(--text-primary)}[data-theme=dark] .title.main,[data-theme=dark] h1{text-shadow:none}[data-theme=dark] .subtitle,[data-theme=dark] .description,[data-theme=dark] .text-secondary{color:var(--text-secondary)}[data-theme=dark] .text-muted,[data-theme=dark] .meta,[data-theme=dark] .small-text{color:var(--text-muted)}[data-theme=dark] .btn,[data-theme=dark] button:not(.btn-primary):not(.btn-danger):not(.btn-success){background:#1e2532;border:1px solid rgba(65,75,92,.6);color:var(--text-primary)}[data-theme=dark] .btn:hover,[data-theme=dark] button:not(.btn-primary):not(.btn-danger):not(.btn-success):hover{background:#252e3c;border-color:#9fb3c8b3;box-shadow:0 6px 14px #00000059;color:var(--text-primary)}[data-theme=dark] .btn-primary,[data-theme=dark] .primary-button{background:#1e2532;border:1px solid rgba(159,179,200,.7);box-shadow:0 6px 14px #00000059}[data-theme=dark] .btn-primary:hover,[data-theme=dark] .primary-button:hover{box-shadow:0 8px 18px #0006}[data-theme=dark] .btn-danger{background:#ff5c5c33;border:1px solid rgba(255,92,92,.3);color:var(--error-color)}[data-theme=dark] .btn-danger:hover{background:#ff5c5c4d;box-shadow:0 0 25px #ff5c5c66}[data-theme=dark] .btn-success{background:#0f83;border:1px solid rgba(0,255,136,.3);color:var(--success-color)}[data-theme=dark] .btn-success:hover{background:#00ff884d;box-shadow:0 0 25px #0f86}[data-theme=dark] input,[data-theme=dark] textarea,[data-theme=dark] select{background:#0f1419cc;border:1px solid rgba(0,212,255,.2);color:var(--text-primary)}[data-theme=dark] input:focus,[data-theme=dark] textarea:focus,[data-theme=dark] select:focus{border-color:var(--accent-color);box-shadow:0 0 20px #00d4ff4d;background:#0f1419e6}[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder{color:var(--text-muted)}[data-theme=dark] .form-group label,[data-theme=dark] .input-label{color:var(--text-primary)}[data-theme=dark] table,[data-theme=dark] .table,[data-theme=dark] .data-table{background:var(--card-bg);border:1px solid rgba(0,212,255,.15)}[data-theme=dark] th,[data-theme=dark] .table-header,[data-theme=dark] thead{background:linear-gradient(135deg,#00d4ff14,#7c3aed14);color:var(--text-primary);border-bottom:2px solid rgba(0,212,255,.3)}[data-theme=dark] td,[data-theme=dark] .table-cell{color:var(--text-secondary);border-bottom:1px solid rgba(0,212,255,.1)}[data-theme=dark] tr:hover,[data-theme=dark] .table-row:hover{background:#00d4ff0d}[data-theme=dark] .list-item,[data-theme=dark] .item,[data-theme=dark] li{background:#00d4ff0d;border:1px solid rgba(0,212,255,.1)}[data-theme=dark] .list-item:hover,[data-theme=dark] .item:hover{background:#00d4ff1a;border-color:#00d4ff33;box-shadow:0 0 20px #00d4ff33}[data-theme=dark] .badge,[data-theme=dark] .tag,[data-theme=dark] .label{background:var(--gradient-primary);color:#fff;box-shadow:0 0 15px #00d4ff80}[data-theme=dark] .badge.success,[data-theme=dark] .status-success{background:#0f83;color:var(--success-color);border:1px solid rgba(0,255,136,.3)}[data-theme=dark] .badge.error,[data-theme=dark] .badge.danger,[data-theme=dark] .status-error{background:#ff5c5c33;color:var(--error-color);border:1px solid rgba(255,92,92,.3)}[data-theme=dark] .badge.warning,[data-theme=dark] .status-warning{background:#ffb83633;color:var(--warning-color);border:1px solid rgba(255,184,54,.3)}[data-theme=dark] .badge.info,[data-theme=dark] .status-info{background:#00d4ff33;color:var(--info-color);border:1px solid rgba(0,212,255,.3)}[data-theme=dark] .divider,[data-theme=dark] hr{border-color:#00d4ff26}[data-theme=dark] .icon-wrapper,[data-theme=dark] .icon-box{background:var(--gradient-primary);box-shadow:0 0 20px #00d4ff66}[data-theme=dark] .chart-container,[data-theme=dark] .chart-wrapper,[data-theme=dark] .graph-container{background:#0f141980;border:1px solid rgba(0,212,255,.15)}[data-theme=dark] .empty-state,[data-theme=dark] .no-data,[data-theme=dark] .placeholder{color:var(--text-muted)}[data-theme=dark] .loading,[data-theme=dark] .spinner{border-color:#00d4ff33;border-top-color:var(--accent-color)}[data-theme=dark] .tooltip,[data-theme=dark] .popover{background:var(--card-bg);border:1px solid rgba(0,212,255,.3);box-shadow:0 0 30px #00d4ff4d;color:var(--text-primary)}[data-theme=dark] .tab,[data-theme=dark] .nav-tab{color:var(--text-secondary);border-bottom:2px solid transparent}[data-theme=dark] .tab:hover,[data-theme=dark] .nav-tab:hover{color:var(--accent-color);background:#00d4ff0d}[data-theme=dark] .tab.active,[data-theme=dark] .nav-tab.active{color:var(--accent-color);border-bottom-color:var(--accent-color);box-shadow:0 2px 15px #00d4ff4d}[data-theme=dark] .alert,[data-theme=dark] .notification,[data-theme=dark] .toast{background:var(--card-bg);border:1px solid rgba(0,212,255,.2);box-shadow:0 0 25px #00d4ff33}[data-theme=dark] .alert-success{background:#00ff8826;border-color:#00ff884d;color:var(--success-color)}[data-theme=dark] .alert-error,[data-theme=dark] .alert-danger{background:#ff5c5c26;border-color:#ff5c5c4d;color:var(--error-color)}[data-theme=dark] .alert-warning{background:#ffb83626;border-color:#ffb8364d;color:var(--warning-color)}[data-theme=dark] .alert-info{background:#00d4ff26;border-color:#00d4ff4d;color:var(--info-color)}[data-theme=dark] .search-box,[data-theme=dark] .search-input{background:#0f1419cc;border:1px solid rgba(0,212,255,.2);box-shadow:0 0 20px #00d4ff1a}[data-theme=dark] .search-box:focus-within,[data-theme=dark] .search-input:focus{border-color:var(--accent-color);box-shadow:0 0 30px #00d4ff4d}[data-theme=dark] .progress,[data-theme=dark] .progress-bar{background:#00d4ff1a}[data-theme=dark] .progress-fill{background:var(--gradient-primary);box-shadow:0 0 15px #00d4ff80}[data-theme=dark] a{color:var(--accent-color)}[data-theme=dark] a:hover{color:#fff;text-shadow:0 0 10px rgba(0,212,255,.6)}[data-theme=dark] input[type=checkbox]:checked,[data-theme=dark] input[type=radio]:checked{background:var(--gradient-primary);border-color:var(--accent-color);box-shadow:0 0 10px #00d4ff66}[data-theme=dark] ::-webkit-scrollbar{background:#0f141980}[data-theme=dark] ::-webkit-scrollbar-thumb{background:#00d4ff4d;border:1px solid rgba(0,212,255,.2)}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#00d4ff80}[data-theme=dark] .admin-settings-page{background:var(--bg-primary);color:var(--text-primary)}[data-theme=dark] .settings-section,[data-theme=dark] .create-rule-form{background:var(--card-bg);border:1px solid rgba(0,212,255,.15);box-shadow:0 0 30px #00d4ff1a}[data-theme=dark] .create-rule-form input,[data-theme=dark] .create-rule-form select,[data-theme=dark] .input-with-icon{background:#0f1419cc;border-color:#00d4ff33;color:var(--text-primary)}[data-theme=dark] .rules-table{background:var(--card-bg)}[data-theme=dark] .rules-table thead{background:linear-gradient(135deg,#00d4ff14,#7c3aed14);color:var(--text-primary)}[data-theme=dark] .rules-table td{color:var(--text-secondary);border-bottom:1px solid rgba(0,212,255,.1)}.debug-logs-page{padding:32px 40px;max-width:1600px;margin:0 auto;background:#fff;min-height:100vh;color:#1a1d21}.debug-logs-header{margin-bottom:32px}.debug-logs-header h1{margin:0 0 6px;font-size:24px;font-weight:600;color:#1a1d21;letter-spacing:-.03em}.debug-logs-header .subtitle{margin:0;color:#5c6370;font-size:14px;font-weight:400}.debug-logs-controls{background:#f8f9fb;border-radius:10px;padding:20px 24px;margin-bottom:20px}.filters{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap;align-items:center}.filters input[type=text],.filters select{padding:10px 14px;background:#fff;border:1px solid #E4E7EB;border-radius:8px;font-size:13px;min-width:150px;color:#1a1d21;transition:all .15s ease}.filters input[type=text]::placeholder{color:#8b919a}.filters select option{background:#fff;color:#1a1d21}.filters input[type=text]:focus,.filters select:focus{outline:none;border-color:#4f7cff;box-shadow:0 0 0 3px #4f7cff1a}.filters button{padding:10px 20px;background:#1a1d21;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:13px;font-weight:500;transition:all .15s ease}.filters button:hover{background:#2d3138}.filters button:disabled{background:#e4e7eb;color:#8b919a;cursor:not-allowed}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:13px;color:#5c6370;-webkit-user-select:none;user-select:none}.checkbox-label input[type=checkbox]{cursor:pointer;width:16px;height:16px;accent-color:#1A1D21}.actions{display:flex;gap:12px;align-items:center}.actions button{padding:10px 18px;background:#fff;color:#1a1d21;border:1px solid #E4E7EB;border-radius:8px;cursor:pointer;font-size:13px;font-weight:500;transition:all .15s ease}.actions button:hover{background:#f1f3f5;border-color:#d1d5db}.actions button.danger-btn{color:#1a1d21}.actions button.danger-btn:hover{background:#fef2f2;border-color:#fecaca;color:#991b1b}.debug-logs-content{background:#f8f9fb;border-radius:10px;overflow:hidden}.logs-table-container{overflow-x:auto}.logs-table{width:100%;border-collapse:collapse;font-size:13px}.logs-table thead{background:#f1f3f5}.logs-table th{padding:14px 20px;text-align:left;font-weight:500;color:#5c6370;font-size:11px;text-transform:uppercase;letter-spacing:.06em}.logs-table tbody tr{background:#fff;border-bottom:1px solid #F1F3F5;transition:background .15s ease}.logs-table tbody tr:hover{background:#fafbfc}.logs-table tbody tr.has-error{background:#fffbfb}.logs-table tbody tr.has-error:hover{background:#fef7f7}.logs-table td{padding:16px 20px;color:#1a1d21}.logs-table .timestamp{font-family:SF Mono,Monaco,Consolas,monospace;font-size:12px;color:#8b919a;white-space:nowrap}.logs-table .method{font-weight:600;text-transform:uppercase;white-space:nowrap;font-size:11px;letter-spacing:.03em}.logs-table .method-get{color:#059669}.logs-table .method-post{color:#2563eb}.logs-table .method-put{color:#d97706}.logs-table .method-delete{color:#dc2626}.logs-table .method-patch{color:#7c3aed}.logs-table .path{font-family:SF Mono,Monaco,Consolas,monospace;font-size:12px;max-width:400px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#5c6370}.logs-table .duration{font-family:SF Mono,Monaco,Consolas,monospace;font-size:12px;text-align:right;color:#8b919a}.logs-table .error-type{font-family:SF Mono,Monaco,Consolas,monospace;font-size:12px;color:#dc2626}.status-badge{padding:4px 10px;border-radius:6px;font-size:11px;font-weight:500;display:inline-block;font-family:SF Mono,Monaco,Consolas,monospace}.status-success{background:#ecfdf5;color:#059669}.status-redirect{background:#eff6ff;color:#2563eb}.status-client-error{background:#fffbeb;color:#d97706}.status-server-error{background:#fef2f2;color:#dc2626}.status-unknown{background:#f3f4f6;color:#6b7280}.view-btn{padding:6px 14px;background:#fff;color:#1a1d21;border:1px solid #E4E7EB;border-radius:6px;cursor:pointer;font-size:12px;font-weight:500;transition:all .15s ease}.view-btn:hover{background:#f8f9fb;border-color:#d1d5db}.no-data{text-align:center;padding:48px;color:#8b919a;font-size:14px}.log-detail-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#1a1d2166;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000}.log-detail-content{background:#fff;border-radius:12px;max-width:900px;max-height:90vh;width:90%;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000026}.log-detail-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #F1F3F5;background:#fff}.log-detail-header h2{margin:0;font-size:16px;font-weight:600;color:#1a1d21}.log-detail-header button{background:#f8f9fb;border:1px solid #E4E7EB;color:#5c6370;font-size:18px;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .15s ease}.log-detail-header button:hover{background:#f1f3f5;color:#1a1d21}.log-detail-body{padding:24px;overflow-y:auto;flex:1;background:#fff}.detail-section{margin-bottom:24px}.detail-section h3{margin:0 0 16px;font-size:11px;font-weight:600;color:#8b919a;text-transform:uppercase;letter-spacing:.08em;padding-bottom:10px;border-bottom:1px solid #F1F3F5}.detail-section.error-section h3{color:#dc2626;border-bottom-color:#fee2e2}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px}.detail-grid div{padding:12px 14px;background:#f8f9fb;border-radius:8px;font-size:13px;color:#1a1d21}.detail-grid strong{color:#5c6370;font-weight:500;margin-right:8px}.detail-section pre{background:#1a1d21;color:#e4e7eb;padding:16px;border-radius:8px;overflow-x:auto;font-family:SF Mono,Monaco,Consolas,monospace;font-size:12px;line-height:1.6}.detail-section pre.traceback{background:#fef2f2;color:#991b1b;border:1px solid #FECACA}.error-section{background:#fef2f2;padding:20px;border-radius:10px}.error-section strong{color:#991b1b}.debug-logs-page ::-webkit-scrollbar{width:8px;height:8px}.debug-logs-page ::-webkit-scrollbar-track{background:#f8f9fb}.debug-logs-page ::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.debug-logs-page ::-webkit-scrollbar-thumb:hover{background:#9ca3af}[data-theme=dark] .debug-logs-page{background:var(--bg-primary);color:var(--text-primary)}[data-theme=dark] .debug-logs-header h1{color:var(--text-primary)}[data-theme=dark] .debug-logs-header .subtitle{color:var(--text-secondary)}[data-theme=dark] .debug-logs-controls{background:var(--card-bg);border:1px solid rgba(0,212,255,.15)}[data-theme=dark] .filters input[type=text],[data-theme=dark] .filters select{background:var(--bg-secondary);border:1px solid rgba(0,212,255,.2);color:var(--text-primary)}[data-theme=dark] .filters input[type=text]::placeholder{color:var(--text-muted)}[data-theme=dark] .filters select option{background:var(--bg-secondary);color:var(--text-primary)}[data-theme=dark] .filters input[type=text]:focus,[data-theme=dark] .filters select:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px #00d4ff33}[data-theme=dark] .filters button{background:var(--gradient-primary);box-shadow:0 0 15px #00d4ff4d}[data-theme=dark] .filters button:hover{box-shadow:0 0 25px #00d4ff80}[data-theme=dark] .filters button:disabled{background:#6b7a994d;color:var(--text-muted)}[data-theme=dark] .checkbox-label{color:var(--text-secondary)}[data-theme=dark] .checkbox-label input[type=checkbox]{accent-color:var(--accent-color)}[data-theme=dark] .actions button{background:var(--bg-secondary);color:var(--text-primary);border:1px solid rgba(0,212,255,.2)}[data-theme=dark] .actions button:hover{background:var(--bg-tertiary);border-color:var(--accent-color)}[data-theme=dark] .actions button.danger-btn{color:var(--text-primary)}[data-theme=dark] .actions button.danger-btn:hover{background:#ff5c5c33;border-color:#ff5c5c66;color:var(--error-color)}[data-theme=dark] .debug-logs-content{background:var(--card-bg);border:1px solid rgba(0,212,255,.15)}[data-theme=dark] .logs-table thead{background:var(--bg-secondary)}[data-theme=dark] .logs-table th{color:var(--text-secondary)}[data-theme=dark] .logs-table tbody tr{background:var(--card-bg);border-bottom:1px solid rgba(0,212,255,.08)}[data-theme=dark] .logs-table tbody tr:hover{background:#00d4ff0d}[data-theme=dark] .logs-table tbody tr.has-error{background:#ff5c5c1a}[data-theme=dark] .logs-table tbody tr.has-error:hover{background:#ff5c5c26}[data-theme=dark] .logs-table td{color:var(--text-primary)}[data-theme=dark] .logs-table .timestamp,[data-theme=dark] .logs-table .duration{color:var(--text-muted)}[data-theme=dark] .logs-table .path{color:var(--text-secondary)}[data-theme=dark] .logs-table .method-get{color:var(--success-color)}[data-theme=dark] .logs-table .method-post{color:#5c9eff}[data-theme=dark] .logs-table .method-put{color:var(--warning-color)}[data-theme=dark] .logs-table .method-delete{color:var(--error-color)}[data-theme=dark] .logs-table .method-patch{color:#a78bfa}[data-theme=dark] .logs-table .error-type{color:var(--error-color)}[data-theme=dark] .status-success{background:#00ff8826;color:var(--success-color)}[data-theme=dark] .status-redirect{background:#5c9eff26;color:#5c9eff}[data-theme=dark] .status-client-error{background:#ffb83626;color:var(--warning-color)}[data-theme=dark] .status-server-error{background:#ff5c5c26;color:var(--error-color)}[data-theme=dark] .status-unknown{background:#6b7a9926;color:var(--text-muted)}[data-theme=dark] .view-btn{background:var(--bg-secondary);color:var(--text-primary);border:1px solid rgba(0,212,255,.2)}[data-theme=dark] .view-btn:hover{background:var(--bg-tertiary);border-color:var(--accent-color)}[data-theme=dark] .no-data{color:var(--text-muted)}[data-theme=dark] .log-detail-modal{background:#000000d9}[data-theme=dark] .log-detail-content{background:var(--card-bg);box-shadow:0 0 60px #00d4ff66;border:1px solid rgba(0,212,255,.2)}[data-theme=dark] .log-detail-header{background:var(--card-bg);border-bottom:1px solid rgba(0,212,255,.15)}[data-theme=dark] .log-detail-header h2{color:var(--text-primary)}[data-theme=dark] .log-detail-header button{background:var(--bg-secondary);border:1px solid rgba(0,212,255,.2);color:var(--text-secondary)}[data-theme=dark] .log-detail-header button:hover{background:var(--bg-tertiary);color:var(--accent-color)}[data-theme=dark] .log-detail-body{background:var(--card-bg)}[data-theme=dark] .detail-section h3{color:var(--text-muted);border-bottom:1px solid rgba(0,212,255,.15)}[data-theme=dark] .detail-section.error-section h3{color:var(--error-color);border-bottom-color:#ff5c5c4d}[data-theme=dark] .detail-grid div{background:var(--bg-secondary);color:var(--text-primary)}[data-theme=dark] .detail-grid strong{color:var(--text-secondary)}[data-theme=dark] .detail-section pre{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid rgba(0,212,255,.2)}[data-theme=dark] .detail-section pre.traceback{background:#ff5c5c33;color:var(--error-color);border:1px solid rgba(255,92,92,.4)}[data-theme=dark] .error-section{background:#ff5c5c33;border:1px solid rgba(255,92,92,.3)}[data-theme=dark] .error-section strong{color:var(--error-color)}[data-theme=dark] .debug-logs-page ::-webkit-scrollbar-track{background:var(--bg-secondary)}[data-theme=dark] .debug-logs-page ::-webkit-scrollbar-thumb{background:#00d4ff33}[data-theme=dark] .debug-logs-page ::-webkit-scrollbar-thumb:hover{background:#00d4ff4d}.navbar{position:fixed;top:0;left:0;right:0;height:4rem;background:#fff;border-bottom:1px solid #f0f0f0;z-index:1000}.navbar-container{display:grid;grid-template-columns:1fr auto;align-items:center;height:100%;max-width:1600px;margin:0 auto;padding:0 2.5rem}.navbar-content{display:flex;align-items:center;justify-content:space-between;width:100%}.navbar-logo{display:flex;align-items:center;text-decoration:none;margin-left:2rem}.navbar-logo img{height:1.75rem;width:auto;object-fit:contain}.navbar-menu{display:flex;align-items:center;justify-content:center;gap:.25rem}.navbar-menu-items{position:absolute;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:.25rem}.mobile-menu-header,.mobile-menu-sections,.mobile-menu-actions{display:none}.navbar-item{position:relative}.navbar-item-label{display:block;padding:.5rem 1rem;font-size:.9375rem;font-weight:500;color:#4a5568;cursor:pointer;transition:color .15s ease;position:relative}.navbar-item-label:hover,.navbar-item.active .navbar-item-label{color:#1a1a2e}.navbar-item.current .navbar-item-label:after{content:"";position:absolute;bottom:0;left:1rem;right:1rem;height:2px;background:#1a1a2e}.navbar-item-link{display:block;padding:.5rem 1rem;font-size:.9375rem;font-weight:500;color:#4a5568;text-decoration:none;transition:color .15s ease;position:relative}.navbar-item-link:hover,.navbar-item-link.current{color:#1a1a2e}.navbar-item-link.current:after{content:"";position:absolute;bottom:0;left:1rem;right:1rem;height:2px;background:#1a1a2e}.navbar-dropdown{position:absolute;top:100%;left:50%;transform:translate(-50%);padding-top:.75rem;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s ease,visibility .15s ease}.navbar-item.active .navbar-dropdown{opacity:1;visibility:visible;pointer-events:auto}.dropdown-content{display:flex;gap:3rem;background:#fff;border-radius:16px;padding:1.75rem 2rem;box-shadow:0 4px 30px #00000014;min-width:280px}.dropdown-column{display:flex;flex-direction:column;min-width:140px}.dropdown-title{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#9ca3af;margin-bottom:1rem}.dropdown-links{display:flex;flex-direction:column;gap:.125rem}.dropdown-link{display:block;padding:.5rem 0;font-size:.9375rem;font-weight:500;color:#374151;text-decoration:none;transition:color .15s ease}.dropdown-link:hover{color:#1a1a2e}.dropdown-link.active{color:#1a1a2e;font-weight:600}.navbar-actions{display:flex;align-items:center;gap:.75rem;justify-self:end;overflow:visible}.navbar-notification{position:relative;display:flex;align-items:center;overflow:visible}.notification-trigger{display:flex;align-items:center;justify-content:center;background:none;border:none;color:#1a1a2e;cursor:pointer;transition:opacity .2s ease;position:relative;padding:0;margin:0;outline:none;overflow:visible;-webkit-appearance:none;-moz-appearance:none;appearance:none}.notification-trigger:hover{opacity:.6;background:none}.notification-trigger:focus{outline:none;box-shadow:none;background:none}.notification-trigger:active{background:none;transform:none}.notification-trigger svg{display:block}.notification-trigger.has-unread{animation:bellShake .5s ease-in-out}@keyframes bellShake{0%,to{transform:rotate(0)}25%{transform:rotate(10deg)}50%{transform:rotate(-10deg)}75%{transform:rotate(5deg)}}.notification-badge{position:absolute;top:-7px;right:-10px;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid #ffffff;box-shadow:0 2px 6px #ef444466;overflow:visible;z-index:10;box-sizing:border-box;line-height:1;white-space:nowrap}.notification-panel{position:absolute;top:calc(100% + .75rem);right:0;width:340px;background:#fff;border-radius:16px;box-shadow:0 4px 30px #0000001a;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s ease,visibility .15s ease;overflow:hidden}.navbar-notification.active .notification-panel{opacity:1;visibility:visible;pointer-events:auto}.notification-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #f0f0f0}.notification-title{font-size:.9375rem;font-weight:600;color:#1a1a2e}.notification-count{font-size:.75rem;font-weight:500;color:#64748b}.notification-list{max-height:320px;overflow-y:auto}.notification-item{display:flex;flex-direction:column;gap:.25rem;padding:.875rem 1.25rem;border-bottom:1px solid #f8f8f8;transition:background .15s ease}.notification-item:hover{background:#fafafa}.notification-item.unread{background:#f8fafc}.notification-item-title{font-size:.875rem;font-weight:600;color:#1a1a2e}.notification-item-message{font-size:.8125rem;color:#64748b;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notification-empty{padding:2rem 1.25rem;text-align:center;color:#9ca3af;font-size:.875rem}.notification-view-all{display:block;padding:.875rem 1.25rem;text-align:center;font-size:.875rem;font-weight:500;color:#1a1a2e;text-decoration:none;border-top:1px solid #f0f0f0;transition:background .15s ease}.notification-view-all:hover{background:#f8fafc}.navbar-profile{position:relative}.profile-trigger{display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;padding:.25rem;border-radius:50%;outline:none}.profile-trigger:focus{outline:none;box-shadow:none}.profile-trigger:hover{background:transparent}.profile-avatar{width:2rem;height:2rem;border-radius:50%;background:#1a1a2e;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.8125rem;font-weight:600;transition:transform .15s ease,box-shadow .15s ease}.profile-avatar.has-image{background:transparent;border:1px solid rgba(255,255,255,.4)}.profile-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.profile-trigger:hover .profile-avatar{transform:scale(1.05);box-shadow:0 2px 12px #1a1a2e33}.profile-panel{position:absolute;top:calc(100% + .75rem);right:0;min-width:180px;background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s ease,visibility .15s ease;overflow:hidden}.navbar-profile.active .profile-panel{opacity:1;visibility:visible;pointer-events:auto}.profile-header{display:flex;flex-direction:column;gap:.125rem;padding:.75rem 1rem;border-bottom:1px solid #f0f0f0}.profile-name{font-size:.875rem;font-weight:600;color:#1a1a2e}.profile-role{font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#9ca3af}.profile-links{padding:.375rem}.profile-link{display:block;width:100%;padding:.5rem .75rem;font-size:.8125rem;font-weight:500;color:#374151;text-decoration:none;text-align:left;background:none;border:none;border-radius:0;cursor:pointer;transition:background .15s ease,color .15s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:inherit;outline:none;box-shadow:none;margin:0}.profile-link:hover{background:transparent;color:#1a1a2e}.profile-link:focus{outline:none;box-shadow:none;background:none}.profile-link:active{background:none}.profile-link.logout{color:#ef4444}.profile-link.logout:hover{background:transparent;color:#dc2626}.profile-link.dark-mode-toggle{display:flex;align-items:center;justify-content:space-between;cursor:default;padding:.5rem .75rem}.profile-link.dark-mode-toggle:hover{background:transparent}.dark-mode-label{display:flex;align-items:center;gap:.375rem;color:#374151;font-size:.8125rem;font-weight:500}.dark-mode-label svg{width:14px;height:14px}.toggle-switch{position:relative;width:32px;height:18px;background:#d1d5db;border:none;border-radius:9px;cursor:pointer;transition:background .15s ease;padding:0;min-width:0;min-height:0;box-shadow:none;flex-shrink:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.toggle-switch:hover{background:#b9bec7}.toggle-switch.active{background:#6366f1}.toggle-switch.active:hover{background:#4f46e5}.toggle-slider{position:absolute;top:2px;left:2px;width:14px;height:14px;background:#fff;border-radius:50%;transition:transform .15s ease;box-shadow:0 1px 2px #00000026;pointer-events:none}.toggle-switch.active .toggle-slider{transform:translate(14px)}.navbar-mobile-toggle{display:none;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background:none;border:none;color:#1a1a2e;cursor:pointer}.navbar-backdrop{display:none}@media (max-width: 1024px){.navbar{--drawer-width: clamp(280px, 66vw, 420px)}.navbar-container{padding:0 1.25rem;grid-template-columns:1fr auto;gap:0}.navbar-logo{height:1.5rem;margin-left:0}.navbar-actions,.navbar-menu-items{display:none}.navbar-mobile-toggle{display:flex;align-items:center;justify-content:center;justify-self:end;background:transparent;border:none;padding:0;cursor:pointer;color:var(--text-primary, #1a1a2e);transition:opacity .15s;box-shadow:none;border-radius:0}.navbar-mobile-toggle:hover{opacity:.6}.navbar-menu{position:fixed;top:0;right:0;width:var(--drawer-width);height:100vh;height:100dvh;background:var(--bg-primary, #ffffff);z-index:1002;transform:translate(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);overflow-y:auto;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;text-align:left}.navbar-menu.open{transform:translate(0)}.mobile-menu-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;flex-shrink:0;width:100%}.mobile-menu-logo{display:flex;align-items:center;justify-content:flex-start;margin-right:auto}.mobile-menu-sections{display:block;flex:1;overflow-y:auto;padding:1.25rem 0;width:100%;text-align:left}.mobile-menu-actions{display:flex;flex-direction:column;gap:.5rem;padding:1.5rem;border-top:1px solid var(--border-color, #f0f0f0);flex-shrink:0;background:var(--bg-primary, #ffffff);width:100%}.mobile-menu-logo img{height:1.75rem;width:auto}.mobile-menu-close{background:transparent;border:none;padding:0;cursor:pointer;color:var(--text-primary, #1a1a2e);display:flex;align-items:center;justify-content:center;opacity:.5;box-shadow:none;border-radius:0}.mobile-menu-close:hover{opacity:.8}.mobile-menu-close svg{width:22px;height:22px}.mobile-section-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;padding:.875rem 1.5rem;background:transparent;background-color:transparent;border:none;box-shadow:none;border-radius:0;font-size:1rem;font-weight:400;color:var(--text-primary, #1a1a2e);cursor:pointer;text-align:left;transition:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none}.mobile-section-trigger:focus-visible{outline:none}.mobile-section-trigger:focus,.mobile-section-trigger:active{background:transparent;box-shadow:none}.mobile-section-trigger:hover,.mobile-section-trigger.expanded,.mobile-section-trigger.current{color:var(--text-primary, #1a1a2e)}.mobile-section-trigger .chevron{transition:transform .2s;flex-shrink:0;opacity:.3;width:16px;height:16px}.mobile-section-trigger.expanded .chevron{transform:rotate(180deg);opacity:.5}.mobile-section-content{padding:.5rem 0 1rem;animation:slideDown .2s ease-out;width:100%}@keyframes slideDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.mobile-section-group{padding:0 1.5rem;margin-bottom:1.25rem;width:100%}.mobile-section-group:last-child{margin-bottom:0}.mobile-group-title{display:block;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em;color:var(--text-secondary, #64748b);margin-bottom:.75rem}.mobile-section-link{display:block;padding:.625rem 0;font-size:.9375rem;color:var(--text-secondary, #64748b);text-decoration:none;transition:color .15s}.mobile-section-link:hover{color:var(--text-primary, #1a1a2e)}.mobile-section-link.active{color:var(--text-primary, #1a1a2e);font-weight:500}.mobile-section-link.standalone{padding:.75rem 1.5rem}.mobile-user-info{display:flex;align-items:center;gap:.75rem;padding:0 0 1rem;margin-bottom:.75rem;width:100%;border-bottom:1px solid var(--border-color, #f0f0f0)}.mobile-user-avatar{width:36px;height:36px;border-radius:50%;background:var(--text-primary, #1a1a2e);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:500;flex-shrink:0}.mobile-user-details{display:flex;flex-direction:column;gap:.125rem}.mobile-user-name{font-size:.875rem;font-weight:500;color:var(--text-primary, #1a1a2e)}.mobile-user-role{font-size:.6875rem;color:var(--text-tertiary, #94a3b8);text-transform:uppercase;letter-spacing:.03em}.mobile-action-link{display:flex;align-items:center;gap:.625rem;padding:.625rem 0;font-size:.9375rem;color:var(--text-secondary, #64748b);text-decoration:none;transition:color .15s;width:100%}.mobile-action-link:hover{color:var(--text-primary, #1a1a2e)}.mobile-action-link svg{opacity:.5;width:18px;height:18px}.mobile-notification-badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:#ef4444;color:#fff;font-size:.6rem;font-weight:600;display:flex;align-items:center;justify-content:center;box-sizing:border-box;line-height:1;white-space:nowrap}.mobile-action-link.dark-mode-toggle{justify-content:flex-start;padding:.25rem 0;gap:.5rem;background:transparent!important}.mobile-action-link.dark-mode-toggle:hover{background:transparent!important}.mobile-action-link.dark-mode-toggle .dark-mode-label{display:flex;align-items:center;gap:.375rem;color:var(--text-secondary, #64748b);flex:1;font-size:.875rem}.mobile-action-link.dark-mode-toggle .toggle-switch{width:36px;height:20px;border-radius:10px;flex-shrink:0;margin-left:auto;background:#d1d5db;border:none}.mobile-action-link.dark-mode-toggle .toggle-switch.active{background:#6366f1}.mobile-logout-button{width:100%;margin-top:.5rem;padding:.875rem 1.5rem;background:var(--text-primary, #1a1a2e);color:#fff;border:none;border-radius:50px;font-size:.9375rem;font-weight:500;cursor:pointer;text-align:center;transition:opacity .15s}.mobile-logout-button:hover{opacity:.9}.navbar-backdrop{position:fixed;top:0;left:0;right:var(--drawer-width);width:auto;height:100vh;height:100dvh;background:#0f172a59;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);z-index:1001;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}.navbar-backdrop.active{opacity:1;visibility:visible}.navbar-dropdown{display:none}}@media (max-width: 640px){.navbar-container{padding:0 1rem}.navbar-logo img{height:1.5rem}}.content-with-navbar{padding-top:4rem}[data-theme=dark] .navbar{background:#1a1a2e;border-bottom-color:#ffffff14}[data-theme=dark] .navbar-item-label{color:#94a3b8}[data-theme=dark] .navbar-item-label:hover,[data-theme=dark] .navbar-item.active .navbar-item-label{color:#fff}[data-theme=dark] .navbar-item.current .navbar-item-label:after{background:#fff}[data-theme=dark] .navbar-item-link{color:#94a3b8}[data-theme=dark] .navbar-item-link:hover,[data-theme=dark] .navbar-item-link.current{color:#fff}[data-theme=dark] .navbar-item-link.current:after{background:#fff}[data-theme=dark] .dropdown-content{background:#1e1e32;box-shadow:0 4px 30px #0000004d}[data-theme=dark] .dropdown-title{color:#64748b}[data-theme=dark] .dropdown-link{color:#94a3b8}[data-theme=dark] .dropdown-link:hover,[data-theme=dark] .dropdown-link.active,[data-theme=dark] .notification-trigger{color:#fff}[data-theme=dark] .notification-trigger:hover{opacity:.7}[data-theme=dark] .notification-badge{border-color:#1a1a2e}[data-theme=dark] .notification-panel{background:#1e1e32;box-shadow:0 4px 30px #0006}[data-theme=dark] .notification-header{border-bottom-color:#ffffff14}[data-theme=dark] .notification-title{color:#fff}[data-theme=dark] .notification-count{color:#94a3b8}[data-theme=dark] .notification-item{border-bottom-color:#ffffff0d}[data-theme=dark] .notification-item:hover{background:#ffffff08}[data-theme=dark] .notification-item.unread{background:#ffffff0d}[data-theme=dark] .notification-item-title{color:#fff}[data-theme=dark] .notification-item-message{color:#94a3b8}[data-theme=dark] .notification-empty{color:#64748b}[data-theme=dark] .notification-view-all{color:#fff;border-top-color:#ffffff14}[data-theme=dark] .notification-view-all:hover{background:#ffffff0d}[data-theme=dark] .profile-avatar{background:#fff;color:#1a1a2e}[data-theme=dark] .profile-avatar.has-image{background:transparent;border-color:#ffffff59}[data-theme=dark] .profile-panel{background:#1e1e32;box-shadow:0 4px 30px #0006}[data-theme=dark] .profile-header{border-bottom-color:#ffffff14}[data-theme=dark] .profile-name{color:#fff}[data-theme=dark] .profile-role{color:#64748b}[data-theme=dark] .profile-link{color:#94a3b8}[data-theme=dark] .profile-link:hover{background:transparent;color:#fff}[data-theme=dark] .profile-link.logout{color:#f87171}[data-theme=dark] .profile-link.logout:hover{background:transparent;color:#ef4444}[data-theme=dark] .dark-mode-label{color:#94a3b8}[data-theme=dark] .navbar-mobile-toggle{color:#fff}[data-theme=dark] .mobile-menu-header{border-bottom-color:#ffffff14}[data-theme=dark] .mobile-menu-close{color:#fff}[data-theme=dark] .mobile-section{border-bottom-color:#ffffff14}[data-theme=dark] .mobile-section-trigger{color:#fff}[data-theme=dark] .mobile-section-trigger:hover{background:#ffffff0d}[data-theme=dark] .mobile-section-trigger.current{color:#3b82f6}[data-theme=dark] .mobile-group-title{color:#94a3b8}[data-theme=dark] .mobile-section-link{color:#fff}[data-theme=dark] .mobile-section-link:hover,[data-theme=dark] .mobile-section-link.active{color:#3b82f6}[data-theme=dark] .mobile-section-link.standalone{border-bottom-color:#ffffff14}[data-theme=dark] .mobile-menu-actions{border-top-color:#ffffff14;background:#1a1a2e}[data-theme=dark] .mobile-user-info{border-bottom-color:#ffffff14}[data-theme=dark] .mobile-user-avatar{background:#fff;color:#1a1a2e}[data-theme=dark] .mobile-user-name{color:#fff}[data-theme=dark] .mobile-user-role{color:#94a3b8}[data-theme=dark] .mobile-action-link{color:#fff}[data-theme=dark] .mobile-action-link:hover{color:#3b82f6}[data-theme=dark] .mobile-logout-button{background:#fff;color:#1a1a2e}[data-theme=dark] .mobile-logout-button:hover{opacity:.9}@media (max-width: 1024px){[data-theme=dark] .navbar-menu{background:#1a1a2e}}.App{min-height:100vh;background-color:var(--bg-primary);width:100%}.App.with-sidebar{display:flex}.App.with-navbar{display:flex;flex-direction:column}.content-with-navbar{flex:1;padding-top:5rem;min-height:100vh;box-sizing:border-box}body.mobile-menu-open .content-with-navbar,body.mobile-menu-open .navbar-content{filter:blur(8px);transition:filter .2s ease}.content-with-navbar>*{max-width:1400px;margin-left:auto;margin-right:auto;padding-left:2.5rem;padding-right:2.5rem}.content-with-sidebar{flex:1;margin-left:15.625rem;transition:margin-left .3s ease;min-height:100vh;padding:var(--spacing-md);box-sizing:border-box;overflow-x:auto}.content-with-sidebar.sidebar-closed{margin-left:3.75rem}.project-detail-container,.stats-page-container{max-width:100vw;overflow-x:auto;box-sizing:border-box}@media (max-width: 768px){.content-with-navbar{padding-top:4.5rem}.content-with-navbar>*{padding-left:1rem;padding-right:1rem}.App.with-sidebar{display:block;position:relative}.content-with-sidebar{margin-left:0;width:100%;padding:var(--spacing-sm);transition:transform .3s ease}.content-with-sidebar.sidebar-closed{margin-left:0;width:100%}.content-with-sidebar.sidebar-open-mobile{transform:translate(15.625rem)}}@media (min-width: 769px) and (max-width: 1024px){.content-with-sidebar{padding:var(--spacing-md)}.content-with-sidebar.sidebar-closed{margin-left:3.75rem;width:calc(100% - 3.75rem)}}[data-theme=dark] .App{background:var(--bg-primary)}[data-theme=dark] .content-with-sidebar,[data-theme=dark] .content-with-navbar{background:transparent}.chatkit-advanced-container{position:fixed;bottom:100px;right:24px;width:420px;max-width:calc(100vw - 48px);height:600px;max-height:calc(100vh - 140px);background:#fff;border-radius:20px 20px 8px;box-shadow:0 8px 32px #0000001f,0 2px 8px #00000014;display:flex;flex-direction:column;overflow:hidden;z-index:1001;animation:slideUpFromBottomRight .4s cubic-bezier(.34,1.56,.64,1);border:1px solid rgba(0,0,0,.06)}@keyframes slideUpFromBottomRight{0%{transform:translateY(20px) scale(.9);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.chatkit-advanced-header{background:linear-gradient(135deg,#1a1a1a,#2d2d2d);color:#fff;padding:14px 16px;display:flex;justify-content:space-between;align-items:center;border-bottom:none;flex-shrink:0;min-height:64px;box-shadow:0 2px 8px #00000014;position:relative}.chatkit-advanced-header *{color:#fff}.chatkit-advanced-header-content{display:flex;align-items:center;gap:12px}.chatkit-advanced-avatar{width:40px;height:40px;border-radius:0;background:transparent;display:flex;align-items:center;justify-content:center;overflow:hidden;border:none;box-shadow:none;transition:transform .2s ease,opacity .2s ease}.chatkit-advanced-avatar:hover{transform:scale(1.1);opacity:.9}.chatkit-advanced-avatar-img{width:100%;height:100%;object-fit:contain}.chatkit-advanced-title-section{display:flex;flex-direction:column}.chatkit-advanced-title{margin:0;font-size:16px;font-weight:700;letter-spacing:-.02em;display:flex;align-items:center;gap:6px}.chatkit-title-icon{color:#fbbf24}.chatkit-advanced-subtitle{margin:3px 0 0;font-size:11px;opacity:.8;font-weight:500;display:flex;align-items:center;gap:5px}.chatkit-status-dot{width:6px;height:6px;background:#22c55e;border-radius:50%;animation:pulse-dot 2s ease-in-out infinite}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.2)}}.chatkit-advanced-header-actions{display:flex;align-items:center;gap:8px;position:absolute;top:8px;right:8px;z-index:10}.chatkit-history-badge{background:#ffffff24;border:1px solid rgba(255,255,255,.18);color:#fff;padding:0 10px;height:30px;min-height:30px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s}.chatkit-history-badge:hover{background:#ffffff38;transform:translateY(-1px)}.chatkit-history-panel{position:absolute;top:52px;right:12px;width:320px;max-height:280px;background:#1f1f1f;color:#fff;border-radius:12px;box-shadow:0 12px 40px #00000059;border:1px solid rgba(255,255,255,.08);z-index:20;display:flex;flex-direction:column;overflow:hidden}.chatkit-history-panel-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;font-weight:700;font-size:12px;background:#ffffff0a;border-bottom:1px solid rgba(255,255,255,.08)}.chatkit-history-panel-header button{background:none;border:none;color:#fff;cursor:pointer;font-size:14px;line-height:1}.chatkit-history-panel-list{overflow-y:auto;overflow-x:hidden;padding:8px 0;display:flex;flex-direction:column;gap:16px;flex:1;min-height:0;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.chatkit-history-panel-list::-webkit-scrollbar{width:6px}.chatkit-history-panel-list::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.chatkit-history-panel-list::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.chatkit-history-panel-list::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.chatkit-history-day-group{display:flex;flex-direction:column;gap:8px}.chatkit-history-day-header{font-size:11px;font-weight:700;color:#ffffff80;text-transform:uppercase;letter-spacing:.5px;padding:4px 12px;margin-top:4px}.chatkit-history-item{text-align:left;background:transparent;border:none;color:#fff;padding:10px 12px;cursor:pointer;transition:background .15s ease,transform .15s ease;border-radius:6px;margin:0 8px}.chatkit-history-item:hover{background:#ffffff0f;transform:translateY(-1px)}.chatkit-history-item-title{font-weight:700;font-size:13px;margin-bottom:3px}.chatkit-history-item-preview{font-size:12px;opacity:.8;margin-bottom:4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.chatkit-history-item-date{font-size:11px;opacity:.6}.chatkit-advanced-new-chat{background:#ffffff1a;border:1px solid rgba(255,255,255,.14);color:#fff;width:32px;min-width:32px;max-width:32px;height:32px;min-height:32px;max-height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;padding:0;box-sizing:border-box}.chatkit-advanced-new-chat:hover{background:#fff3;transform:scale(1.05)}.chatkit-advanced-close{background:#ffffff1a;border:1px solid rgba(255,255,255,.14);color:#fff;width:32px;min-width:32px;max-width:32px;height:32px;min-height:32px;max-height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;padding:0;box-sizing:border-box}.chatkit-advanced-new-chat svg,.chatkit-advanced-close svg{color:#fff}.chatkit-advanced-close:hover{background:#ef4444e6}.chatkit-advanced-messages{flex:1;overflow-y:auto;padding:16px;background:#fafafa;display:flex;flex-direction:column;min-height:0;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.chatkit-advanced-messages::-webkit-scrollbar{width:6px}.chatkit-advanced-messages::-webkit-scrollbar-track{background:transparent}.chatkit-advanced-messages::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.chatkit-advanced-messages::-webkit-scrollbar-thumb:hover{background:#9ca3af}.chatkit-advanced-message{display:flex;gap:10px;margin-bottom:12px;animation:fadeIn .3s ease-in;align-items:flex-start}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chatkit-advanced-message.user{flex-direction:row-reverse}.chatkit-advanced-message-avatar{width:28px;height:28px;border-radius:0;overflow:hidden;flex-shrink:0;background:transparent;box-shadow:none;border:none;display:flex;align-items:flex-start;justify-content:center;padding-top:6px;transition:transform .2s ease,opacity .2s ease;cursor:pointer}.chatkit-advanced-message-avatar:hover{transform:scale(1.1);opacity:.9}.chatkit-advanced-message-avatar img{width:100%;height:100%;object-fit:contain}.chatkit-advanced-message-content{max-width:75%;padding:10px 14px;border-radius:14px;line-height:1.5;word-wrap:break-word;overflow-wrap:break-word;font-size:14px;min-height:40px;display:flex;flex-direction:column;justify-content:center}.chatkit-advanced-message-content pre{background:#0000000d;padding:12px;border-radius:8px;overflow-x:auto;font-size:13px;margin:8px 0}.chatkit-advanced-message-content code{background:#0000000d;padding:2px 6px;border-radius:4px;font-size:13px}.chatkit-advanced-message-content pre code{background:transparent;padding:0}.chatkit-advanced-message.assistant .chatkit-advanced-message-content{background:#fff;color:#1a1a1a;box-shadow:0 1px 4px #0000000f;border:1px solid #ebebeb;border-radius:14px 14px 14px 4px}.chatkit-advanced-message.user .chatkit-advanced-message-content{background:linear-gradient(135deg,#1a1a1a,#2d2d2d);color:#fff;box-shadow:0 2px 6px #0000001f;border-radius:14px 14px 4px}.chatkit-reasoning-link{display:inline-block;margin-top:8px;padding:4px 8px;background:transparent;border:none;color:#6b7280;font-size:11px;font-weight:500;cursor:pointer;text-decoration:underline;text-decoration-color:transparent;transition:all .2s ease;border-radius:4px}.chatkit-reasoning-link:hover{color:#1a1a1a;text-decoration-color:#1a1a1a;background:#00000008}.chatkit-reasoning-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease}.chatkit-reasoning-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:600px;width:90%;max-height:80vh;display:flex;flex-direction:column;animation:slideUp .3s ease}.chatkit-reasoning-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e5e5}.chatkit-reasoning-modal-header h3{margin:0;font-size:18px;font-weight:600;color:#1a1a1a}.chatkit-reasoning-modal-close{background:transparent;border:none;color:#6b7280;cursor:pointer;padding:4px;border-radius:6px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.chatkit-reasoning-modal-close:hover{background:#f3f4f6;color:#1a1a1a}.chatkit-reasoning-modal-body{padding:24px;overflow-y:auto;flex:1;color:#374151;line-height:1.6}.chatkit-reasoning-modal-body p{margin:0 0 12px}.chatkit-reasoning-modal-body p:last-child{margin-bottom:0}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.chatkit-advanced-message-content p{margin:0}.chatkit-advanced-message-content ul,.chatkit-advanced-message-content ol{margin:8px 0;padding-left:20px}.chatkit-advanced-message-content li{margin:4px 0}.chatkit-advanced-typing{display:flex;gap:4px;padding:8px 0}.chatkit-advanced-typing span{width:8px;height:8px;border-radius:50%;background:#1a1a1a;animation:typing 1.4s infinite}.chatkit-advanced-typing span:nth-child(2){animation-delay:.2s}.chatkit-advanced-typing span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-10px);opacity:1}}.chatkit-tool-card{display:flex;flex-direction:column;gap:12px}.chatkit-tool-initial-message{font-size:14px;color:#1a1a1a;margin-bottom:4px;font-weight:500}.chatkit-tool-list{display:flex;flex-direction:column;gap:8px}.chatkit-tool-typing{margin-top:8px;padding:8px 0 4px}.chatkit-tool-call-status{display:flex;align-items:center;gap:10px;padding:4px 0;min-height:28px}.chatkit-tool-spinner{display:flex;align-items:center;justify-content:center;color:#1a1a1a;flex-shrink:0;width:16px;height:16px}.chatkit-tool-spinner svg,.chatkit-tool-spinner-icon{animation:spin 1s linear infinite;color:#1a1a1a}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.chatkit-tool-label{font-size:14px;color:#1a1a1a;font-weight:500;flex:1}.chatkit-tool-check{color:#22c55e;font-size:16px;font-weight:700;flex-shrink:0;width:16px;display:flex;align-items:center;justify-content:center}.chatkit-tool-error{color:#ef4444;font-size:16px;font-weight:700;flex-shrink:0;margin-left:8px}.chatkit-tool-message{animation:fadeIn .3s ease-in;display:flex!important;visibility:visible!important;opacity:1!important}.chatkit-advanced-starters{display:flex;flex-wrap:wrap;gap:6px;padding:0 16px 12px;background:#fafafa}.chatkit-advanced-starter-btn{padding:8px 14px;background:#fff;border:1px solid #e5e5e5;border-radius:18px;font-size:12px;color:#1a1a1a;cursor:pointer;transition:all .2s;font-weight:500;white-space:nowrap}.chatkit-advanced-starter-btn:hover{background:#1a1a1a;color:#fff;border-color:#1a1a1a}.chatkit-advanced-starter-btn:active{transform:scale(.98)}.chatkit-advanced-input-container{padding:12px 16px;background:#fff;border-top:1px solid #ebebeb;flex-shrink:0;padding-bottom:max(12px,env(safe-area-inset-bottom))}.chatkit-advanced-error{padding:12px 16px;background:#fff5f5;border:1px solid #fecaca;border-radius:10px;margin-bottom:12px;display:flex;justify-content:space-between;align-items:center;gap:12px;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.chatkit-advanced-error-content{display:flex;align-items:center;gap:8px;flex:1;color:#dc2626;font-size:14px}.chatkit-advanced-error-icon{font-size:16px;flex-shrink:0}.chatkit-advanced-error-message{line-height:1.4}.chatkit-advanced-error-retry{padding:6px 14px;background:#dc2626;color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;flex-shrink:0;white-space:nowrap}.chatkit-advanced-error-retry:hover{background:#b91c1c;transform:translateY(-1px);box-shadow:0 2px 8px #dc26264d}.chatkit-advanced-input-wrapper{display:flex;gap:8px;align-items:center}.chatkit-advanced-input{flex:1;padding:10px 16px;border:1.5px solid #e5e5e5;border-radius:22px;font-size:14px;outline:none;transition:all .2s;background:#f8f8f8;color:#1a1a1a;min-height:42px;max-height:160px;line-height:1.4;resize:none;overflow-y:auto;white-space:pre-wrap;word-break:break-word}.chatkit-advanced-input:focus{border-color:#1a1a1a;background:#fff;box-shadow:0 0 0 3px #1a1a1a0f}.chatkit-advanced-input:disabled{background:#f5f5f5;cursor:not-allowed;opacity:.6}.chatkit-advanced-input::placeholder{color:#9a9a9a}.chatkit-advanced-send-btn{width:38px;height:38px;border-radius:50%;background:#1a1a1a;color:#fff;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;flex-shrink:0}.chatkit-advanced-send-btn svg{color:#fff;flex-shrink:0}.chatkit-advanced-send-btn:hover:not(:disabled){background:#2d2d2d;transform:scale(1.05)}.chatkit-advanced-send-btn:hover:not(:disabled) svg{color:#fff}.chatkit-advanced-send-btn:active:not(:disabled){transform:scale(.95)}.chatkit-advanced-send-btn:disabled{background:#e0e0e0;cursor:not-allowed}.chatkit-advanced-send-btn:disabled svg{color:#9ca3af}@media (max-width: 768px){.chatkit-advanced-container{width:100%;height:100%;max-width:100%;max-height:100%;border-radius:0;bottom:0;right:0;animation:slideUpMobile .4s cubic-bezier(.34,1.56,.64,1)}@keyframes slideUpMobile{0%{transform:translateY(100%) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.chatkit-advanced-header{padding:12px 16px;min-height:64px}.chatkit-advanced-header-content{gap:10px}.chatkit-advanced-avatar{width:40px;height:40px}.chatkit-advanced-title{font-size:18px}.chatkit-advanced-subtitle{font-size:12px}.chatkit-advanced-close{width:32px!important;height:32px!important}.chatkit-advanced-messages{padding:16px 12px}.chatkit-advanced-message{gap:8px;margin-bottom:12px}.chatkit-advanced-message-avatar{width:28px;height:28px}.chatkit-advanced-message-content{max-width:85%;padding:10px 14px;font-size:14px}.chatkit-advanced-message.user .chatkit-advanced-message-content{max-width:85%}.chatkit-advanced-input-container{padding:12px 16px;padding-bottom:max(12px,env(safe-area-inset-bottom))}.chatkit-advanced-input-wrapper{gap:8px}.chatkit-advanced-input{padding:10px 14px;font-size:16px}.chatkit-advanced-send-btn{width:40px;height:40px}.chatkit-advanced-starters{padding:0 12px 12px;gap:6px}.chatkit-advanced-starter-btn{padding:10px 14px;font-size:13px;width:auto;flex:1;min-width:0}.chatkit-advanced-error{padding:10px 12px;flex-direction:column;align-items:flex-start;gap:8px}.chatkit-advanced-error-content{width:100%}.chatkit-advanced-error-retry{align-self:flex-end}.chatkit-advanced-reasoning-toggle{font-size:12px;padding:6px 10px}}@media (max-width: 480px){.chatkit-advanced-message-content{max-width:90%;padding:8px 12px;font-size:13px}.chatkit-advanced-title-section{min-width:0}.chatkit-advanced-title{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chatkit-advanced-subtitle{display:none}.chatkit-advanced-starter-btn{font-size:12px;padding:8px 12px}}@media (max-width: 768px) and (orientation: landscape){.chatkit-advanced-container{height:100vh}.chatkit-advanced-header{min-height:56px;padding:10px 16px}.chatkit-advanced-messages{padding:12px}}.fiks-chat-fab{position:fixed;bottom:24px;right:24px;width:64px;height:64px;background:transparent!important;background-color:transparent!important;background-image:none!important;border:none!important;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:none!important;transition:all .3s ease;z-index:1000;padding:0!important;border-radius:0!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;overflow:visible!important;color:inherit!important;font-size:inherit!important;font-weight:inherit!important;font-family:inherit!important}.fiks-chat-fab:before,.fiks-chat-fab:after{display:none!important;content:none!important;background:none!important;background-color:transparent!important;background-image:none!important;opacity:0!important}.fiks-chat-fab:hover{transform:scale(1.1);box-shadow:none!important;background:transparent!important;background-color:transparent!important;background-image:none!important}.fiks-chat-fab:hover:before,.fiks-chat-fab:hover:after{display:none!important;opacity:0!important;background:none!important}.fiks-chat-fab:active{transform:scale(1.05);box-shadow:none!important;background:transparent!important;background-color:transparent!important;background-image:none!important}.fiks-chat-fab:focus{outline:none!important;box-shadow:none!important;background:transparent!important;background-color:transparent!important;background-image:none!important}.fiks-chat-fab-img{width:64px;height:64px;object-fit:contain;animation:float 3s ease-in-out infinite;background:transparent!important;background-color:transparent!important;background-image:none!important;filter:drop-shadow(0 12px 24px rgba(34,211,238,.25));display:block}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.fiks-chat-fab:hover .fiks-chat-fab-img{animation:float 3s ease-in-out infinite,pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}@media (max-width: 768px){.fiks-chat-fab{bottom:20px;right:20px;width:56px;height:56px}.fiks-chat-fab-img{width:56px;height:56px}}.fiks-chat-fab-tooltip{position:absolute;right:72px;background:var(--card-bg);color:var(--text-primary);padding:8px 12px;border-radius:8px;font-size:14px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s ease;border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.fiks-chat-fab:hover .fiks-chat-fab-tooltip{opacity:1}.fiks-chat-fab-tooltip:after{content:"";position:absolute;right:-6px;top:50%;transform:translateY(-50%);width:0;height:0;border-left:6px solid var(--card-bg);border-top:6px solid transparent;border-bottom:6px solid transparent}@media (max-width: 768px){.fiks-chat-fab-tooltip{display:none}}.global-search-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:center;z-index:9999;padding:8vh 1rem 1rem;animation:fadeIn .2s ease-out;overflow-y:auto}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.global-search-container{background:var(--card-bg, #ffffff);border-radius:12px;box-shadow:0 20px 60px #0000004d;width:100%;max-width:640px;max-height:80vh;display:flex;flex-direction:column;overflow:hidden;animation:slideIn .2s ease-out}@keyframes slideIn{0%{transform:translateY(-20px) scale(.96);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.global-search-input-wrapper{display:flex;align-items:center;padding:1.5rem 2rem;gap:1rem;border-bottom:none;background:var(--card-bg, #ffffff)}.global-search-icon{color:#6b7280;flex-shrink:0;opacity:.5}.global-search-loading-indicator{display:flex;align-items:center;justify-content:center;flex-shrink:0}.global-search-spinner{width:24px;height:24px;border:3px solid #f0f0f0;border-top:3px solid #1a1a2e;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.global-search-input{flex:1;font-size:1rem;padding:0;border:none;outline:none;background:transparent;color:#1a1a2e;font-weight:400;box-shadow:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.global-search-input::placeholder{color:#9ca3af;font-weight:400}.global-search-input:focus{outline:none;box-shadow:none;border:none}.global-search-clear-btn{background:none;border:none;color:#94a3b8;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:.25rem;border-radius:0;transition:color .15s ease,opacity .15s ease;flex-shrink:0;outline:none;opacity:.6;box-shadow:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.global-search-clear-btn:hover{color:#1a1a2e;background:transparent;opacity:1}.global-search-clear-btn:focus{outline:none;box-shadow:none}.global-search-results{flex:1;overflow-y:auto;max-height:60vh;background:var(--card-bg, #ffffff)}.global-search-results-header{padding:.75rem 2rem;background:transparent;border-bottom:none;border-top:1px solid #f0f0f0;font-size:.875rem}.global-search-results-count{color:#64748b;font-weight:500}.global-search-result-item{display:flex;align-items:center;padding:1rem 2rem;gap:1rem;text-decoration:none;color:#1a1a2e;border-bottom:1px solid #f7f8fa;transition:all .15s ease;cursor:pointer}.global-search-result-item:last-child{border-bottom:none}.global-search-result-item:hover{background:#f7f8fa}.global-search-result-item svg{flex-shrink:0;opacity:.5}.global-search-result-content{flex:1;min-width:0}.global-search-result-title{font-weight:600;font-size:.9375rem;color:#1a1a2e;margin-bottom:.25rem}.global-search-result-subtitle{font-size:.8125rem;color:#6b7280}.global-search-result-snippet{font-size:.75rem;color:#94a3b8;margin-top:.25rem;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.global-search-result-phone{margin-top:.5rem;display:flex;flex-wrap:wrap;gap:.5rem}.global-search-phone-number{font-size:.75rem;color:#1a1a2e;background:#f0f0f0;padding:.125rem .5rem;border-radius:.25rem;border:1px solid #e0e0e0;font-weight:500}.global-search-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;color:#94a3b8;text-align:center;gap:1rem}.global-search-empty svg{opacity:.3}.global-search-empty p{margin:0;font-size:.9375rem}.global-search-shortcuts{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;margin-top:.5rem}.global-search-shortcuts kbd{background:#f7f8fa;border:1px solid #e0e0e0;border-radius:.25rem;padding:.25rem .5rem;font-family:monospace;font-size:.75rem;box-shadow:0 1px 2px #0000000d}.global-search-results::-webkit-scrollbar{width:8px}.global-search-results::-webkit-scrollbar-track{background:transparent}.global-search-results::-webkit-scrollbar-thumb{background:#e0e0e0;border-radius:4px}.global-search-results::-webkit-scrollbar-thumb:hover{background:#d0d0d0}[data-theme=dark] .global-search-container{background:var(--card-bg);border:1px solid rgba(0,212,255,.15);box-shadow:0 0 30px #00d4ff1a,0 20px 60px #00000080}[data-theme=dark] .global-search-input-wrapper{background:var(--card-bg);border-bottom:none}[data-theme=dark] .global-search-icon{color:var(--text-secondary);opacity:.5}[data-theme=dark] .global-search-input{color:var(--text-primary)}[data-theme=dark] .global-search-input::placeholder{color:var(--text-muted)}[data-theme=dark] .global-search-spinner{border-color:#00d4ff33;border-top-color:var(--accent-color)}[data-theme=dark] .global-search-clear-btn{color:var(--text-muted);opacity:.6}[data-theme=dark] .global-search-clear-btn:hover{color:var(--text-primary);background:transparent;opacity:1}[data-theme=dark] .global-search-results{background:var(--card-bg)}[data-theme=dark] .global-search-results-header{background:transparent;border-bottom:none;border-top:1px solid rgba(0,212,255,.15)}[data-theme=dark] .global-search-results-count{color:var(--text-secondary)}[data-theme=dark] .global-search-result-item{color:var(--text-primary);border-bottom-color:#00d4ff1a}[data-theme=dark] .global-search-result-item:hover{background:#00d4ff1a}[data-theme=dark] .global-search-result-item svg{opacity:.7}[data-theme=dark] .global-search-result-title{color:var(--text-primary)}[data-theme=dark] .global-search-result-subtitle{color:var(--text-secondary)}[data-theme=dark] .global-search-result-snippet{color:var(--text-muted)}[data-theme=dark] .global-search-phone-number{background:#00d4ff1a;border-color:#00d4ff33;color:var(--text-primary)}[data-theme=dark] .global-search-empty{color:var(--text-muted)}[data-theme=dark] .global-search-shortcuts kbd{background:#00d4ff1a;border-color:#00d4ff33;color:var(--text-primary)}[data-theme=dark] .global-search-results::-webkit-scrollbar-thumb{background:#00d4ff33}[data-theme=dark] .global-search-results::-webkit-scrollbar-thumb:hover{background:#00d4ff4d}@media (max-width: 768px){.global-search-overlay{padding:0;align-items:flex-start}.global-search-container{max-width:100%;max-height:100vh;border-radius:0;height:100vh}.global-search-input-wrapper{padding:1.5rem}.global-search-input{font-size:1rem}.global-search-results{max-height:none}.global-search-result-item{padding:.875rem 1.5rem}.global-search-empty{padding:2rem 1.5rem}}@media (max-width: 1024px) and (min-width: 769px){.global-search-container{max-width:90%}}
