:root{--color-background-primary:#ffffff;--color-background-secondary:#f8fafc;--color-background-tertiary:#f1f5f9;--color-background-elevated:#ffffff;--color-text-primary:#0f172a;--color-text-secondary:#475569;--color-text-tertiary:#64748b;--color-text-inverse:#ffffff;--color-primary:#3b82f6;--color-primary-hover:#2563eb;--color-primary-text:#ffffff;--color-secondary:#e2e8f0;--color-secondary-hover:#cbd5e1;--color-secondary-text:#334155;--color-success:#059669;--color-success-text:#ffffff;--color-warning:#d97706;--color-warning-text:#ffffff;--color-error:#dc2626;--color-error-text:#ffffff;--color-info:#0284c7;--color-info-text:#ffffff;--color-border:#e2e8f0;--color-border-secondary:#cbd5e1;--color-border-focus:#3b82f6;--color-overlay:rgba(15,23,42,0.5);--color-overlay-strong:rgba(15,23,42,0.8);--color-background:var(--color-background-primary);--color-foreground:var(--color-text-primary);--color-muted:var(--color-background-secondary);--color-muted-foreground:var(--color-text-secondary);--color-card:var(--color-background-elevated);--color-card-foreground:var(--color-text-primary)}.theme-dark{--color-background-primary:#020617;--color-background-secondary:#0f172a;--color-background-tertiary:#1e293b;--color-background-elevated:#0f172a;--color-text-primary:#f8fafc;--color-text-secondary:#cbd5e1;--color-text-tertiary:#94a3b8;--color-text-inverse:#0f172a;--color-primary:#3b82f6;--color-primary-hover:#60a5fa;--color-primary-text:#ffffff;--color-secondary:#1e293b;--color-secondary-hover:#334155;--color-secondary-text:#f8fafc;--color-success:#10b981;--color-success-text:#ffffff;--color-warning:#f59e0b;--color-warning-text:#000000;--color-error:#ef4444;--color-error-text:#ffffff;--color-info:#3b82f6;--color-info-text:#ffffff;--color-border:#334155;--color-border-secondary:#475569;--color-border-focus:#3b82f6;--color-overlay:rgba(0,0,0,0.5);--color-overlay-strong:rgba(0,0,0,0.8)}*{box-sizing:border-box}html{height:100%;scroll-behavior:smooth}body{margin:0;padding:0;min-height:100%;background-color:var(--color-background);color:var(--color-foreground);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2}h1,h2,h3,h4,h5,h6,p{color:var(--color-text-primary);margin:0 0 1rem}.text-secondary,.theme-dark .text-secondary,html body .text-secondary{color:var(--color-text-secondary)}.text-tertiary,.theme-dark .text-tertiary,html body .text-tertiary{color:var(--color-text-tertiary)}.theme-dark .bg-gray-50 .text-gray-100,.theme-dark .bg-gray-50 .text-gray-50,.theme-dark .bg-gray-50 .text-white,.theme-dark .bg-white .text-gray-100,.theme-dark .bg-white .text-gray-50,.theme-dark .bg-white .text-white,html body .bg-gray-50 .text-gray-100,html body .bg-gray-50 .text-gray-50,html body .bg-gray-50 .text-white,html body .bg-white .text-gray-100,html body .bg-white .text-gray-50,html body .bg-white .text-white{color:var(--color-text-primary)}.theme-dark .input,div .input,form .input,html body .input{background-color:var(--color-background);color:var(--color-foreground);border:1px solid var(--color-border);border-radius:.375rem;padding:.5rem .75rem;font-size:.875rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}div input:focus,div select:focus,div textarea:focus,form input:focus,form select:focus,form textarea:focus,html body input:focus,html body select:focus,html body textarea:focus{outline:none;border-color:var(--color-border-focus);box-shadow:0 0 0 2px rgba(59,130,246,.1)}div input::-moz-placeholder,div textarea::-moz-placeholder,form input::-moz-placeholder,form textarea::-moz-placeholder,html body input::-moz-placeholder,html body textarea::-moz-placeholder{color:var(--color-text-tertiary);opacity:1}div input::placeholder,div textarea::placeholder,form input::placeholder,form textarea::placeholder,html body input::placeholder,html body textarea::placeholder{color:var(--color-text-tertiary);opacity:1}button{font-family:inherit;font-size:.875rem;font-weight:500;line-height:1.25rem;padding:.5rem 1rem;border-radius:.375rem;border:1px solid transparent;cursor:pointer;transition:all .15s ease-in-out}.btn-primary{background-color:var(--color-primary);color:var(--color-primary-text);border-color:var(--color-primary)}.btn-primary:hover{background-color:var(--color-primary-hover)}.btn-secondary{background-color:var(--color-secondary);color:var(--color-secondary-text);border-color:var(--color-border)}.btn-secondary:hover{background-color:var(--color-secondary-hover)}.card{background-color:var(--color-card);color:var(--color-card-foreground);border:1px solid var(--color-border);border-radius:.5rem;box-shadow:0 1px 3px rgba(0,0,0,.1)}.status-success{background-color:var(--color-success);color:var(--color-success-text)}.status-warning{background-color:var(--color-warning);color:var(--color-warning-text)}.status-error{background-color:var(--color-error);color:var(--color-error-text)}.status-info{background-color:var(--color-info);color:var(--color-info-text)}a{color:var(--color-primary);text-decoration:none}a:hover{color:var(--color-primary-hover);text-decoration:underline}:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.loading-shimmer{background:linear-gradient(90deg,var(--color-muted) 0,var(--color-background-secondary) 50%,var(--color-muted) 100%);background-size:200% 100%;animation:shimmer 2s infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@media (prefers-contrast:high){:root{--color-border:#000000;--color-text-primary:#000000}.theme-dark{--color-border:#ffffff;--color-text-primary:#ffffff}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media print{body{background:white!important;color:black!important}.no-print{display:none!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;clip:rect(0,0,0,0);border:0}.sr-only,.truncate{overflow:hidden;white-space:nowrap}.truncate{text-overflow:ellipsis}@media (max-width:768px){.mobile-full-width{width:100%!important}.mobile-stack{flex-direction:column!important}}.theme-dark .text-black,.theme-dark .text-gray-800,.theme-dark .text-gray-900,.theme-dark .text-slate-800,.theme-dark .text-slate-900{color:var(--color-text-primary)!important}.theme-dark .text-gray-600,.theme-dark .text-gray-700,.theme-dark .text-slate-600,.theme-dark .text-slate-700{color:var(--color-text-secondary)!important}.theme-dark .text-gray-500,.theme-dark .text-slate-500{color:var(--color-text-tertiary)!important}.theme-dark .bg-white{background-color:var(--color-background-elevated)!important}.theme-dark .bg-gray-50,.theme-dark .bg-slate-50{background-color:var(--color-background-secondary)!important}.theme-dark .bg-gray-100,.theme-dark .bg-slate-100{background-color:var(--color-background-tertiary)!important}.theme-dark .bg-gray-200,.theme-dark .bg-slate-200{background-color:var(--color-border-secondary)!important}.theme-dark .border-gray-200,.theme-dark .border-slate-200{border-color:var(--color-border)!important}.theme-dark .border-gray-300,.theme-dark .border-slate-300{border-color:var(--color-border-secondary)!important}.theme-dark .bg-gray-100.text-white,.theme-dark .bg-gray-50.text-white,.theme-dark .bg-white.text-white{color:var(--color-text-primary)!important}.theme-dark input,.theme-dark select,.theme-dark textarea{background-color:var(--color-background-secondary)!important;color:var(--color-text-primary)!important;border-color:var(--color-border)!important}.theme-dark input::-moz-placeholder,.theme-dark textarea::-moz-placeholder{color:var(--color-text-tertiary)!important}.theme-dark input::placeholder,.theme-dark textarea::placeholder{color:var(--color-text-tertiary)!important}.theme-dark .text-white{color:var(--color-text-inverse)!important}.theme-dark .bg-gray-900,.theme-dark .bg-slate-900{background-color:var(--color-background-primary)!important}.theme-dark .calendar-cell{background-color:var(--color-background-elevated)!important;color:var(--color-text-primary)!important}.theme-dark .calendar-header{background-color:var(--color-background-secondary)!important}.theme-dark .badge,.theme-dark .calendar-header{color:var(--color-text-primary)!important}.theme-dark a{color:var(--color-primary)!important}.theme-dark a:hover{color:var(--color-primary-hover)!important}.theme-dark table{background-color:var(--color-background-elevated)!important}.theme-dark table,.theme-dark th{color:var(--color-text-primary)!important}.theme-dark th{background-color:var(--color-background-secondary)!important}.theme-dark .dropdown-menu,.theme-dark td{border-color:var(--color-border)!important;color:var(--color-text-primary)!important}.theme-dark .dropdown-menu,.theme-dark .modal{background-color:var(--color-background-elevated)!important}.theme-dark .modal{color:var(--color-text-primary)!important}.theme-dark .modal-backdrop{background-color:var(--color-overlay)!important}.theme-dark .admin-panel h1,.theme-dark .admin-panel h2,.theme-dark .admin-panel h3,.theme-dark .admin-panel h4,.theme-dark .admin-panel h5,.theme-dark .admin-panel h6,.theme-dark .admin-panel p,.theme-dark .pricing-page h1,.theme-dark .pricing-page h2,.theme-dark .pricing-page h3,.theme-dark .project-details p,.theme-dark .project-header h1,.theme-dark h1,.theme-dark h2,.theme-dark h3,.theme-dark h4,.theme-dark h5,.theme-dark h6,.theme-dark label,.theme-dark p{color:var(--color-text-primary)!important}.theme-dark :focus{outline-color:var(--color-border-focus)!important}.theme-dark .loading-spinner{color:var(--color-text-secondary)!important}.theme-dark .toast{background-color:var(--color-background-elevated)!important;color:var(--color-text-primary)!important;border-color:var(--color-border)!important}.theme-dark *{--tw-text-opacity:1}.theme-dark .bg-gray-100 *,.theme-dark .bg-gray-50 *,.theme-dark .bg-white *,.theme-dark .card-body,.theme-dark .card-content,.theme-dark .card-title,.theme-dark [class*=text-gray-9],.theme-dark [class*=text-slate-9]{color:var(--color-text-primary)!important}.theme-dark .card-description{color:var(--color-text-secondary)!important}