@import "https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap";:root{--font-sans:"Lato", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--brand-light-blue:#007cba;--brand-dark-blue-1:#006ba1;--brand-dark-blue-2:#005a87;--brand-special-red:#f15f50;--brand-light-grey:#ededed;--brand-white:#fff;--bg-page:var(--brand-white);--bg-card:var(--brand-white);--bg-card-hover:#f0f7fb;--bg-header:var(--brand-white);--bg-sidebar:var(--brand-white);--bg-input:var(--brand-light-grey);--primary:var(--brand-dark-blue-1);--primary-foreground:var(--brand-white);--accent-muted:var(--brand-light-blue);--text-primary:#09090b;--text-secondary:#71717a;--text-muted:#a1a1aa;--border:var(--brand-light-grey);--border-hover:var(--brand-light-blue);--border-focus:var(--brand-dark-blue-2);--status-low-bg:#f4f4f5;--status-low-border:#e4e4e7;--status-low-text:#09090b;--status-med-bg:#e4e4e7;--status-med-border:#a1a1aa;--status-med-text:#09090b;--status-high-bg:#09090b;--status-high-border:#09090b;--status-high-text:#fff;--radius-sm:4px;--radius-md:6px;--radius-lg:10px;--radius-full:9999px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #00000014, 0 2px 4px -2px #0000000a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000000d;--transition-fast:.1s ease;--transition-normal:.2s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-page);color:var(--text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px;line-height:1.5;overflow-x:hidden}h1,h2,h3,h4,h5,h6{color:var(--brand-dark-blue-2)}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit;background:0 0;border:none;outline:none}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-page)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}.app-container{min-height:100vh;display:flex}.main-content{background-color:var(--bg-page);flex-direction:column;flex:1;height:100vh;display:flex;position:relative;overflow-y:auto}.view-container{width:100%;max-width:1400px;margin:0 auto;padding:2.5rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn var(--transition-normal) forwards}.sidebar{background-color:var(--bg-sidebar);border-right:1px solid var(--border);z-index:100;flex-direction:column;width:260px;height:100vh;padding:1.5rem 1rem;display:flex;position:sticky;top:0}.sidebar-brand{align-items:center;gap:.75rem;margin-bottom:2rem;padding:0 .5rem;display:flex}.brand-icon{width:28px;height:28px;color:var(--primary);flex-shrink:0}.brand-text{flex-direction:column;display:flex}.brand-title{letter-spacing:.05em;color:var(--brand-dark-blue-2);font-size:.95rem;font-weight:800;line-height:1.1}.brand-subtitle{color:var(--brand-dark-blue-1);letter-spacing:.02em;font-size:.7rem;font-weight:600}.sidebar-profile{background-color:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);align-items:center;gap:.75rem;margin-bottom:1.5rem;padding:.75rem;display:flex}.profile-avatar{border-radius:var(--radius-sm);background-color:var(--primary);width:32px;height:32px;color:var(--primary-foreground);flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:flex}.profile-info{flex-direction:column;display:flex;overflow:hidden}.profile-email{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;font-weight:500;overflow:hidden}.profile-role{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:.7rem;overflow:hidden}.sidebar-menu{flex-direction:column;flex:1;gap:.25rem;display:flex}.sidebar-link{color:var(--text-secondary);border-radius:var(--radius-md);transition:all var(--transition-fast);border:1px solid #0000;align-items:center;gap:.75rem;padding:.625rem .75rem;font-size:.875rem;font-weight:500;display:flex}.sidebar-link:hover{background-color:var(--bg-card-hover);color:var(--text-primary)}.sidebar-link.active{background-color:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}.menu-icon{flex-shrink:0;width:16px;height:16px}.sidebar-footer{border-top:1px solid var(--border);margin-top:auto;padding-top:1rem}.sidebar-logout-btn{width:100%;color:var(--text-secondary);border-radius:var(--radius-md);cursor:pointer;text-align:left;transition:all var(--transition-fast);align-items:center;gap:.75rem;padding:.625rem .75rem;font-size:.875rem;font-weight:500;display:flex}.sidebar-logout-btn:hover{color:#ef4444;background-color:#ef44441a}.login-view{background-color:var(--bg-page);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-split-container{width:100vw;height:100vh;display:flex;overflow:hidden}.login-banner-section{border-right:1px solid var(--border);background-color:#0c0c0e;flex:1.25;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.login-banner-img{object-fit:cover;opacity:.45;filter:grayscale()contrast(110%);width:100%;height:100%}.login-banner-overlay{z-index:10;flex-direction:column;gap:.875rem;max-width:540px;display:flex;position:absolute;bottom:10%;left:8%;right:8%}.login-banner-badge{color:#09090b;border-radius:var(--radius-full);letter-spacing:.1em;text-transform:uppercase;background-color:#fff;width:fit-content;padding:.25rem .625rem;font-size:.65rem;font-weight:700}.login-banner-overlay h2{color:#fff;letter-spacing:-.03em;margin:0;font-size:2.25rem;font-weight:700;line-height:1.2}.login-banner-overlay p{color:#a1a1aa;margin:0;font-size:.9rem;line-height:1.5}.login-form-section{background-color:var(--bg-page);flex:1;justify-content:center;align-items:center;height:100%;padding:2.5rem;display:flex;overflow-y:auto}.login-form-card{width:100%;max-width:400px;box-shadow:none;background:0 0;border:none;padding:0}.login-logo{color:var(--primary);justify-content:center;margin-bottom:1.25rem;display:flex}@media (width<=900px){.login-split-container{flex-direction:column}.login-banner-section{display:none}.login-form-section{flex:1;width:100%;padding:1.5rem}.login-form-card{border:1px solid var(--border);background-color:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-width:440px;padding:2.5rem 2rem}}.login-form{flex-direction:column;gap:1rem;margin-top:1.75rem;display:flex}.quick-fill-container{border-top:1px dashed var(--border);flex-direction:column;gap:.75rem;margin-top:2rem;padding-top:1.5rem;display:flex}.quick-fill-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem}.quick-fill-actions{gap:.75rem;display:flex}.quick-fill-actions button{flex:1}.w-full{width:100%}.mt-2{margin-top:.5rem}.text-center{text-align:center}.password-input-wrapper{align-items:center;width:100%;display:flex;position:relative}.password-toggle-btn{cursor:pointer;color:var(--text-secondary);transition:color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;right:12px}.password-toggle-btn:hover{color:var(--text-primary)}.login-notice{border:1px dashed var(--border);border-radius:var(--radius-md);background-color:#ffffff03;align-items:flex-start;gap:.75rem;margin-top:1.5rem;padding:.875rem;display:flex}.notice-icon{width:14px;height:14px;color:var(--text-secondary);flex-shrink:0;margin-top:.125rem}.notice-text{color:var(--text-secondary);font-size:.725rem;line-height:1.4}.dashboard-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.search-bar-wrapper{width:100%;max-width:320px}.search-input{background-color:var(--bg-card)}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:1.5rem;display:grid}.metric-value{color:var(--text-primary);letter-spacing:-.03em;margin:.5rem 0;font-size:2.5rem;font-weight:700;line-height:1.1}.metric-trend{color:var(--text-secondary);font-size:.8rem}.dashboard-split-row{flex-wrap:wrap;gap:1.5rem;display:flex}.flex-1{flex:350px}.flex-2{flex:2 600px}.stacked-bar-chart-container{flex-direction:column;gap:1.5rem;padding:1rem 0;display:flex}.stacked-bar-chart{border-radius:var(--radius-md);background-color:var(--bg-page);border:1px solid var(--border);width:100%;height:24px;display:flex;overflow:hidden}.bar-slice{height:100%;transition:width var(--transition-normal)}.bar-slice-low{border-right:1px solid var(--border);background-color:#fff}.bar-slice-med{border-right:1px solid var(--border);background-color:#a1a1aa}.bar-slice-high{background-color:#09090b;position:relative}.chart-legend-grid{flex-direction:column;gap:.75rem;display:flex}.legend-item{align-items:center;gap:.75rem;font-size:.85rem;display:flex}.legend-dot{border-radius:var(--radius-sm);border:1px solid #0000;flex-shrink:0;width:10px;height:10px}.dot-low{border-color:var(--border);background-color:#fff}.dot-med{background-color:#a1a1aa}.dot-high{background-color:#09090b}.legend-label{color:var(--text-primary);flex:1}.legend-count{color:var(--text-secondary);font-weight:500}.empty-chart-fallback{border:1px dashed var(--border);border-radius:var(--radius-md);height:150px;color:var(--text-secondary);justify-content:center;align-items:center;display:flex}.onboard-success-card{text-align:center;padding:1rem .5rem}.success-icon-wrapper{background-color:var(--text-primary);width:48px;height:48px;color:var(--primary-foreground);border-radius:var(--radius-full);justify-content:center;align-items:center;margin:0 auto 1rem;display:flex}.success-icon{width:24px;height:24px}.credentials-box{background-color:var(--bg-page);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;gap:.75rem;margin:1.5rem 0;padding:1rem;display:flex}.cred-row{justify-content:space-between;align-items:center;gap:1rem;font-size:.875rem;display:flex}.cred-label{color:var(--text-secondary)}.cred-value{color:var(--text-primary);font-weight:600}.table-progress-wrapper{align-items:center;gap:.75rem;display:flex}.progress-bar-track{background-color:var(--border);border-radius:var(--radius-full);width:80px;height:6px;overflow:hidden}.progress-bar-fill{background-color:var(--text-primary);border-radius:var(--radius-full);height:100%}.progress-percent{color:var(--text-primary);min-width:32px;font-size:.8rem;font-weight:500}.cnc-feed-container{max-height:400px;padding-right:.25rem;overflow-y:auto}.timeline{flex-direction:column;padding-left:1.25rem;display:flex;position:relative}.timeline:before{content:"";background-color:var(--border);width:1px;position:absolute;top:4px;bottom:4px;left:4px}.timeline-item{padding-bottom:1.5rem;position:relative}.timeline-item:last-child{padding-bottom:0}.timeline-badge-wrapper{justify-content:center;align-items:center;width:9px;height:9px;display:flex;position:absolute;top:4px;left:-1.25rem}.timeline-badge-dot{border-radius:var(--radius-full);background-color:var(--text-primary);width:9px;height:9px;box-shadow:0 0 0 4px var(--bg-card)}.timeline-content{flex-direction:column;gap:.375rem;display:flex}.timeline-header-row{justify-content:space-between;align-items:center;display:flex}.timeline-factory{color:var(--text-primary);font-size:.75rem;font-weight:600}.timeline-date{color:var(--text-secondary);font-size:.7rem}.timeline-violation-title{color:var(--text-primary);font-size:.875rem;font-weight:700}.timeline-violation-desc{color:var(--text-secondary);font-size:.8rem;line-height:1.4}.timeline-action-card{background-color:var(--bg-page);border:1px solid var(--border);border-radius:var(--radius-md);margin-top:.25rem;padding:.75rem;font-size:.75rem;line-height:1.45}.timeline-action-card strong{color:var(--text-primary);margin-bottom:.25rem;display:block}.timeline-action-card p{color:var(--text-secondary);margin:0}.timeline-footer-row{justify-content:space-between;align-items:center;display:flex}.empty-feed-fallback{height:200px;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:.75rem;display:flex}.empty-feed-icon{width:32px;height:32px;color:var(--border-hover)}.font-semibold{font-weight:600}.text-xs{font-size:.75rem}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.empty-cap-fallback{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:4rem 2rem;display:flex}.status-updater-wrapper{align-items:center;display:flex}.status-select-field{border-radius:var(--radius-sm);border:1px solid var(--border);cursor:pointer;width:100%;height:auto;padding:.375rem .5rem;font-size:.8rem}.empty-checklist-fallback{height:250px;color:var(--text-secondary);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;display:flex}.checklist-grid{flex-direction:column;gap:1.25rem;display:flex}.checklist-item-card{border-bottom:1px solid var(--border);align-items:flex-start;gap:1rem;padding-bottom:1rem;display:flex}.checklist-item-card:last-child{border-bottom:none;padding-bottom:0}.checklist-status-wrapper{flex-shrink:0}.checklist-icon-box{border-radius:var(--radius-sm);justify-content:center;align-items:center;width:24px;height:24px;display:flex}.status-ok-icon{background-color:var(--primary);color:var(--primary-foreground)}.status-warn-icon{color:#fff;background-color:#ef4444}.checklist-text-wrapper{flex-direction:column;display:flex}.checklist-title{color:var(--text-primary);font-size:.875rem;font-weight:600}.checklist-desc{color:var(--text-secondary);margin-top:.125rem;font-size:.75rem;line-height:1.4}.tabs-nav{border-bottom:1px solid var(--border);gap:1rem;margin-bottom:2rem;padding-bottom:.5rem;display:flex}.tab-btn{color:var(--text-secondary);cursor:pointer;transition:color var(--transition-fast);padding:.5rem 1rem;font-size:.875rem;font-weight:500;position:relative}.tab-btn:hover{color:var(--text-primary)}.tab-btn.active{color:var(--text-primary);font-weight:600}.tab-btn.active:after{content:"";background-color:var(--primary);height:2px;position:absolute;bottom:-9px;left:0;right:0}.max-width-xl{max-width:900px}.form-section-title{color:var(--text-primary);border-bottom:1px solid var(--border);text-transform:uppercase;letter-spacing:.05em;margin:1.75rem 0 1rem;padding-bottom:.375rem;font-size:.9rem;font-weight:600}.form-row-grid{flex-wrap:wrap;gap:1.25rem;display:flex}.form-actions{justify-content:flex-end;display:flex}.profile-alert-success{border-radius:var(--radius-md);color:#065f46;background-color:#10b9810a;border:1px solid #10b981;align-items:center;gap:.75rem;margin-bottom:1.5rem;padding:.875rem 1rem;display:flex}.alert-success-icon{color:#10b981;flex-shrink:0;width:16px;height:16px}.tooltip-container{cursor:help;align-items:center;margin-left:.5rem;display:inline-flex;position:relative}.tooltip-icon{background-color:var(--border);width:16px;height:16px;color:var(--text-secondary);border-radius:50%;justify-content:center;align-items:center;font-family:serif;font-size:.7rem;font-weight:700;display:inline-flex}.tooltip-box{visibility:hidden;background-color:var(--primary);width:290px;color:var(--primary-foreground);text-align:left;border-radius:var(--radius-md);z-index:100;opacity:0;box-shadow:var(--shadow-lg);white-space:pre-line;border:1px solid var(--border);font-size:.75rem;line-height:1.45;font-family:var(--font-sans);margin-left:-145px;padding:.875rem;transition:opacity .2s,transform .2s;position:absolute;bottom:125%;left:50%;transform:translateY(4px)}.tooltip-box:after{content:"";border-style:solid;border-width:5px;border-color:var(--primary) transparent transparent transparent;margin-left:-5px;position:absolute;top:100%;left:50%}.tooltip-container:hover .tooltip-box{visibility:visible;opacity:1;transform:translateY(0)}.stepper-container{flex-direction:column;gap:.75rem;width:100%;max-width:1000px;display:flex}.stepper-header{justify-content:space-between;align-items:center;display:flex}.stepper-timeline{justify-content:space-between;align-items:center;width:100%;padding:.5rem 0;display:flex;position:relative}.stepper-node{z-index:3;cursor:pointer;flex-direction:column;align-items:center;display:flex;position:relative}.stepper-node-circle{border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:.7rem;font-weight:700;transition:all .3s;display:flex}.stepper-node-label{text-align:center;max-width:100px;margin-top:.5rem;font-size:.7rem;line-height:1.25;transition:color .3s}@media (width<=768px){.stepper-node-label{white-space:normal;max-width:65px;font-size:.6rem}}@media (width<=480px){.stepper-node-label{display:none}.stepper-node-circle{width:20px;height:20px}}.wizard-options-grid{flex-wrap:wrap;gap:1.25rem;width:100%;display:flex}.wizard-option-card{border:1px solid var(--border);background-color:var(--bg-card);border-radius:var(--radius-lg);cursor:pointer;min-width:220px;transition:all var(--transition-normal);flex-direction:column;flex:calc(25% - 1rem);align-items:flex-start;padding:1.5rem;display:flex;position:relative}.wizard-option-card.selected{border:2px solid var(--primary);background-color:var(--bg-card-hover)}.wizard-option-card.selected-no{background-color:#ef44440d;border:2px solid #ef4444}@media (width<=1024px){.wizard-option-card{flex:calc(50% - 1rem)}}@media (width<=600px){.wizard-option-card{flex:100%}}.btn{border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;-webkit-user-select:none;user-select:none;border:1px solid #0000;justify-content:center;align-items:center;font-weight:500;display:inline-flex}.btn-primary{background-color:var(--primary);color:var(--primary-foreground)}.btn-primary:hover:not(:disabled){background-color:var(--brand-dark-blue-2);color:var(--primary-foreground)}.btn-primary:disabled{background-color:var(--border);color:var(--text-muted);cursor:not-allowed}.btn-special{background-color:var(--brand-special-red);color:var(--brand-white);border:1px solid var(--brand-special-red)}.btn-special:hover:not(:disabled){color:var(--brand-white);background-color:#d84b3d;border-color:#d84b3d}.btn-special:disabled{background-color:var(--border);border-color:var(--border);color:var(--text-muted);cursor:not-allowed}.btn-secondary{background-color:var(--bg-input);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){background-color:var(--bg-card-hover);border-color:var(--border-hover)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-outline{color:var(--text-primary);border:1px solid var(--border);background-color:#0000}.btn-outline:hover:not(:disabled){background-color:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}.btn-outline:disabled{border-color:var(--border);color:var(--text-muted);cursor:not-allowed}.btn-danger{color:#ef4444;background-color:#0000;border:1px solid #ef4444}.btn-danger-mono{background-color:var(--bg-page);color:var(--text-primary);border:2px dashed var(--text-primary)}.btn-danger:hover:not(:disabled){color:#fff;background-color:#ef4444}.btn-sm{height:28px;padding:.25rem .75rem;font-size:.75rem}.btn-md{height:38px;padding:.5rem 1.25rem;font-size:.875rem}.btn-lg{height:48px;padding:.75rem 1.75rem;font-size:1rem}.card{background-color:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:border-color var(--transition-normal), box-shadow var(--transition-normal);flex-direction:column;padding:1.5rem;display:flex}.card-hoverable:hover{border-color:var(--border-hover);box-shadow:var(--shadow-md)}.card-header{justify-content:space-between;align-items:flex-start;margin-bottom:1.25rem;display:flex}.card-title{color:var(--text-primary);font-size:1.15rem;font-weight:600}.card-subtitle{color:var(--text-secondary);margin-top:.25rem;font-size:.85rem}.card-body{flex:1}.card-footer{border-top:1px solid var(--border);justify-content:flex-end;gap:.75rem;margin-top:1.25rem;padding-top:1rem;display:flex}.form-group{flex-direction:column;gap:.5rem;margin-bottom:1.25rem;display:flex}.form-label{color:var(--text-secondary);justify-content:space-between;align-items:center;font-size:.825rem;font-weight:500;display:flex}.form-input,.form-select,.form-textarea{background-color:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;color:var(--text-primary);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);padding:.625rem .875rem}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--border-focus);box-shadow:0 0 0 1px var(--border-focus)}.form-input:disabled,.form-select:disabled,.form-textarea:disabled{opacity:.5;cursor:not-allowed}.form-textarea{resize:vertical;min-height:80px}.form-error-msg{color:#ef4444;font-size:.75rem}.badge{border-radius:var(--radius-full);border:1px solid #0000;align-items:center;width:fit-content;padding:.125rem .5rem;font-size:.75rem;font-weight:500;display:inline-flex}.badge-low{background-color:var(--status-low-bg);border-color:var(--status-low-border);color:var(--status-low-text)}.badge-medium{background-color:var(--status-med-bg);border-color:var(--status-med-border);color:var(--status-med-text)}.badge-high{background-color:var(--status-high-bg);border-color:var(--status-high-border);color:var(--status-high-text)}.table-container{border:1px solid var(--border);border-radius:var(--radius-lg);background-color:var(--bg-card);width:100%;overflow-x:auto}.data-table{border-collapse:collapse;text-align:left;width:100%}.data-table th{border-bottom:1px solid var(--border);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;background-color:#ffffff05;padding:1rem 1.25rem;font-size:.8rem;font-weight:500}.data-table td{border-bottom:1px solid var(--border);color:var(--text-primary);vertical-align:middle;padding:1rem 1.25rem}.data-table tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background-color:#ffffff03}.toggle-container{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.75rem;display:inline-flex}.toggle-switch{background-color:var(--border);border-radius:var(--radius-full);width:44px;height:24px;transition:background-color var(--transition-normal);position:relative}.toggle-input{opacity:0;width:0;height:0;position:absolute}.toggle-slider{background-color:var(--text-primary);width:20px;height:20px;transition:transform var(--transition-normal);border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0006}.toggle-input:checked+.toggle-switch{background-color:var(--primary)}.toggle-input:checked+.toggle-switch .toggle-slider{background-color:var(--primary-foreground);transform:translate(20px)}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background-color:#000000bf;justify-content:center;align-items:center;width:100vw;height:100vh;animation:.2s forwards modalFadeIn;display:flex;position:fixed;top:0;left:0}.modal-content{background-color:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:550px;max-height:90vh;box-shadow:var(--shadow-lg);flex-direction:column;animation:.25s cubic-bezier(.16,1,.3,1) forwards modalSlideUp;display:flex}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.modal-title{color:var(--text-primary);font-size:1.15rem;font-weight:600}.modal-close-btn{color:var(--text-secondary);cursor:pointer;transition:color var(--transition-fast);font-size:1.25rem}.modal-close-btn:hover{color:var(--text-primary)}.modal-body{flex:1;padding:1.5rem;overflow-y:auto}.modal-footer{border-top:1px solid var(--border);background-color:#ffffff03;justify-content:flex-end;gap:.75rem;padding:1.25rem 1.5rem;display:flex}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}h1,h2,h3,h4,h5,h6{color:var(--brand-dark-blue-2);letter-spacing:-.02em;font-weight:600}h1{margin-bottom:1.5rem;font-size:2rem}h2{margin-bottom:1rem;font-size:1.5rem}h3{margin-bottom:.75rem;font-size:1.2rem}p{color:var(--text-secondary);margin-bottom:1rem}a{color:var(--primary);transition:opacity var(--transition-fast);text-decoration:none}a:hover{opacity:.8}#root{flex-direction:column;width:100%;min-height:100vh;display:flex}
