*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-body);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;background-color:var(--color-bg-app);position:relative;overflow-x:hidden}body:before{content:"";position:fixed;top:0;left:0;right:0;height:60vh;background:var(--bg-gradient-warm);opacity:.35;z-index:-2;pointer-events:none}body:after{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background-image:var(--bg-texture-noise);opacity:.4;z-index:-1;pointer-events:none;mix-blend-mode:multiply}#app{min-height:100vh;position:relative;z-index:0}a{color:var(--color-mediterranean-600);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-terracotta-500);text-decoration:underline}a:active{color:var(--color-terracotta-600)}button{font-family:inherit;font-size:inherit;line-height:inherit;cursor:pointer}button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.6}::selection{background-color:var(--color-terracotta-200);color:var(--color-terracotta-900)}::-moz-selection{background-color:var(--color-terracotta-200);color:var(--color-terracotta-900)}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:var(--color-sandstone-100)}::-webkit-scrollbar-thumb{background:var(--color-sandstone-400);border-radius:var(--radius-full);border:2px solid var(--color-sandstone-100)}::-webkit-scrollbar-thumb:hover{background:var(--color-sandstone-500)}input,textarea,select{font-family:var(--font-body);font-size:var(--font-size-base);color:var(--color-text-primary)}img{max-width:100%;height:auto;display:block}ul,ol{list-style-position:inside}hr{border:none;border-top:1px solid var(--color-border-light);margin:var(--space-6) 0}code,pre{font-family:var(--font-mono);font-size:.9em}code{background:var(--color-sandstone-100);color:var(--color-terracotta-700);padding:.125rem .375rem;border-radius:var(--radius-sm)}pre{background:var(--color-sandstone-100);padding:var(--space-4);border-radius:var(--radius-md);overflow-x:auto;border:1px solid var(--color-border-light)}pre code{background:none;padding:0}:root{--color-sandstone-50: #faf8f5;--color-sandstone-100: #f5f0e8;--color-sandstone-200: #ebe4d7;--color-sandstone-300: #ddd3c1;--color-sandstone-400: #c9bba6;--color-sandstone-500: #b5a58d;--color-sandstone-600: #9a8773;--color-sandstone-700: #7a6b5a;--color-sandstone-800: #5d5447;--color-sandstone-900: #3d3830;--color-terracotta-50: #fef6f4;--color-terracotta-100: #fce9e3;--color-terracotta-200: #f8d4c8;--color-terracotta-300: #f2b5a0;--color-terracotta-400: #e98f6f;--color-terracotta-500: #d97350;--color-terracotta-600: #c25a3d;--color-terracotta-700: #a14832;--color-terracotta-800: #7f3b2b;--color-terracotta-900: #5f2e21;--color-mediterranean-50: #f3f7f9;--color-mediterranean-100: #e5eef3;--color-mediterranean-200: #c8dde8;--color-mediterranean-300: #a0c3d4;--color-mediterranean-400: #72a5bc;--color-mediterranean-500: #5189a3;--color-mediterranean-600: #3d6e87;--color-mediterranean-700: #325870;--color-olive-50: #f7f8f4;--color-olive-100: #ebeee1;--color-olive-200: #d4dbc0;--color-olive-300: #b7c49a;--color-olive-400: #95a76f;--color-olive-500: #788c52;--color-olive-600: #5f6f41;--color-olive-700: #4b5633;--color-gray-50: #fafaf9;--color-gray-100: #f5f4f2;--color-gray-200: #e8e6e2;--color-gray-300: #d4d1cc;--color-gray-400: #b8b4ad;--color-gray-500: #8e8980;--color-gray-600: #706c66;--color-gray-700: #55524d;--color-gray-800: #3d3b38;--color-gray-900: #2a2826;--color-success: var(--color-olive-500);--color-success-light: var(--color-olive-100);--color-success-dark: var(--color-olive-700);--color-warning: #d99850;--color-warning-light: #f8ead4;--color-warning-dark: #a67438;--color-error: var(--color-terracotta-600);--color-error-light: var(--color-terracotta-100);--color-error-dark: var(--color-terracotta-800);--color-info: var(--color-mediterranean-500);--color-info-light: var(--color-mediterranean-100);--color-info-dark: var(--color-mediterranean-700);--color-primary: var(--color-sandstone-500);--color-primary-hover: var(--color-sandstone-600);--color-primary-active: var(--color-sandstone-700);--color-accent: var(--color-terracotta-500);--color-accent-hover: var(--color-terracotta-600);--color-accent-active: var(--color-terracotta-700);--color-text-primary: var(--color-gray-900);--color-text-secondary: var(--color-gray-600);--color-text-tertiary: var(--color-gray-500);--color-text-muted: var(--color-gray-400);--color-bg-primary: #ffffff;--color-bg-secondary: var(--color-sandstone-50);--color-bg-tertiary: var(--color-sandstone-100);--color-bg-app: var(--color-gray-50);--color-border-light: var(--color-sandstone-200);--color-border-medium: var(--color-sandstone-300);--color-border-strong: var(--color-sandstone-400);--color-border-emphasis: var(--color-terracotta-300);--font-display: "Cormorant Garamond", "Playfair Display", Georgia, serif;--font-body: "Nunito Sans", "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "Fira Code", "SF Mono", "Courier New", monospace;--font-weight-light: 300;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-size-6xl: 3.75rem;--line-height-none: 1;--line-height-tight: 1.25;--line-height-snug: 1.375;--line-height-normal: 1.5;--line-height-relaxed: 1.625;--line-height-loose: 2;--letter-spacing-tighter: -.05em;--letter-spacing-tight: -.025em;--letter-spacing-normal: 0;--letter-spacing-wide: .025em;--letter-spacing-wider: .05em;--letter-spacing-widest: .1em;--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--shadow-xs: 0 1px 2px 0 rgba(61, 56, 48, .04);--shadow-sm: 0 1px 3px 0 rgba(61, 56, 48, .06);--shadow-base: 0 2px 4px -1px rgba(61, 56, 48, .06), 0 4px 6px -1px rgba(61, 56, 48, .08);--shadow-md: 0 4px 6px -2px rgba(61, 56, 48, .08), 0 10px 15px -3px rgba(61, 56, 48, .1);--shadow-lg: 0 10px 15px -3px rgba(61, 56, 48, .1), 0 20px 25px -5px rgba(61, 56, 48, .12);--shadow-xl: 0 20px 25px -5px rgba(61, 56, 48, .12), 0 25px 50px -12px rgba(61, 56, 48, .15);--shadow-2xl: 0 25px 50px -12px rgba(61, 56, 48, .25);--shadow-glow-terracotta: 0 0 20px rgba(217, 115, 80, .2);--shadow-glow-sandstone: 0 0 30px rgba(181, 165, 141, .12);--shadow-glow-olive: 0 0 20px rgba(120, 140, 82, .15);--shadow-inset: inset 0 2px 4px 0 rgba(61, 56, 48, .06);--radius-none: 0;--radius-sm: 4px;--radius-base: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 24px;--radius-3xl: 32px;--radius-full: 9999px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--transition-slower: .5s cubic-bezier(.4, 0, .2, 1);--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease-smooth: cubic-bezier(.45, .05, .55, .95);--z-base: 0;--z-dropdown: 100;--z-sticky: 200;--z-fixed: 300;--z-modal-backdrop: 400;--z-modal: 500;--z-popover: 600;--z-tooltip: 700;--z-notification: 800;--bg-texture-noise: url("data:image/svg+xml,%3Csvg viewBox='0 0 400 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.03'/%3E%3C/svg%3E");--bg-gradient-warm: linear-gradient(135deg, var(--color-sandstone-50) 0%, var(--color-terracotta-50) 100%);--bg-gradient-warm-vertical: linear-gradient(180deg, var(--color-sandstone-50) 0%, var(--color-terracotta-50) 100%);--bg-gradient-subtle: linear-gradient(180deg, rgba(250, 248, 245, 0) 0%, rgba(250, 248, 245, .6) 100%);--bg-gradient-terracotta: linear-gradient(135deg, var(--color-terracotta-500) 0%, var(--color-terracotta-600) 100%);--bg-gradient-sandstone: linear-gradient(135deg, var(--color-sandstone-700) 0%, var(--color-sandstone-800) 100%);--bg-gradient-olive: linear-gradient(135deg, var(--color-olive-500) 0%, var(--color-olive-600) 100%);--bg-gradient-stripe: linear-gradient(90deg, var(--color-terracotta-500) 0%, var(--color-mediterranean-500) 50%, var(--color-olive-500) 100%);--container-sm: 640px;--container-md: 768px;--container-lg: 1024px;--container-xl: 1280px;--container-2xl: 1536px;--content-width: 65ch;--dashboard-width: 1400px}.text-display{font-family:var(--font-display);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-tight);line-height:var(--line-height-tight)}.text-heading{font-family:var(--font-display);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);line-height:var(--line-height-snug)}.text-body{font-family:var(--font-body);font-weight:var(--font-weight-regular);line-height:var(--line-height-normal);color:var(--color-text-primary)}.text-body-bold{font-family:var(--font-body);font-weight:var(--font-weight-semibold)}.text-label{font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider);color:var(--color-text-tertiary)}.text-number{font-family:var(--font-body);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-tertiary{color:var(--color-text-tertiary)}.text-muted{color:var(--color-text-muted)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-error{color:var(--color-error)}.text-info{color:var(--color-info)}.bg-primary{background-color:var(--color-bg-primary)}.bg-secondary{background-color:var(--color-bg-secondary)}.bg-tertiary{background-color:var(--color-bg-tertiary)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-base{box-shadow:var(--shadow-base)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.rounded{border-radius:var(--radius-base)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-full{border-radius:var(--radius-full)}*:focus-visible{outline:2px solid var(--color-terracotta-500);outline-offset:2px;border-radius:var(--radius-sm)}button:focus-visible,a:focus-visible{outline:2px solid var(--color-terracotta-500);outline-offset:2px;box-shadow:0 0 0 4px #d9735026}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--color-terracotta-500);box-shadow:0 0 0 3px #d973501f}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.filter-tabs{display:flex;gap:var(--space-2);margin-bottom:var(--space-6);overflow-x:auto;-webkit-overflow-scrolling:touch;border-bottom:2px solid var(--color-border-light);padding-bottom:0}.filter-tabs .tab{flex-shrink:0;padding:var(--space-4) var(--space-5);background:none;border:none;border-bottom:3px solid transparent;font-family:var(--font-body);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-base);min-height:44px;white-space:nowrap;position:relative}.filter-tabs .tab:after{content:"";position:absolute;bottom:-2px;left:50%;width:0;height:3px;background:var(--color-terracotta-500);transition:all var(--transition-base);transform:translate(-50%);border-radius:var(--radius-full)}.filter-tabs .tab:hover{color:var(--color-terracotta-600);background:#d973500d}.filter-tabs .tab:hover:after{width:60%}.filter-tabs .tab.active{color:var(--color-terracotta-600);font-weight:var(--font-weight-bold)}.filter-tabs .tab.active:after{width:100%}.dashboard-grid{display:grid;gap:1.5rem}.dashboard-grid{grid-template-columns:1fr}@media (min-width: 768px){.dashboard-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.dashboard-grid{grid-template-columns:repeat(3,1fr);gap:2rem}}.dashboard-view button,.dashboard-view a,.dashboard-view input,.dashboard-view select{min-height:44px;min-width:44px}.dashboard-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem;transition:all .2s ease}.dashboard-card:hover{box-shadow:0 2px 8px #0000001a}@media (max-width: 768px){.dashboard-card{padding:1rem}}.dashboard-title{font-size:2rem;font-weight:700;margin:0 0 .5rem;color:#333}.dashboard-subtitle{font-size:1rem;margin:0;color:#666}@media (max-width: 768px){.dashboard-title{font-size:1.5rem}.dashboard-subtitle{font-size:.875rem}}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge.good{background:#d4edda;color:#155724}.status-badge.warning{background:#fff3cd;color:#856404}.status-badge.critical{background:#f8d7da;color:#721c24}.status-badge.neutral{background:#e2e3e5;color:#383d41}.loading-spinner{width:40px;height:40px;border:4px solid #f0f0f0;border-top-color:#4a90e2;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}*:focus-visible{outline:2px solid #4a90e2;outline-offset:2px}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media print{.dashboard-card{box-shadow:none;border:1px solid #000;page-break-inside:avoid}button,.btn{display:none}}
