.rdp-root{--rdp-accent-color: blue;--rdp-accent-background-color: #f0f0ff;--rdp-day-height: 44px;--rdp-day-width: 44px;--rdp-day_button-border-radius: 100%;--rdp-day_button-border: 2px solid transparent;--rdp-day_button-height: 42px;--rdp-day_button-width: 42px;--rdp-selected-border: 2px solid var(--rdp-accent-color);--rdp-disabled-opacity: .5;--rdp-outside-opacity: .75;--rdp-today-color: var(--rdp-accent-color);--rdp-dropdown-gap: .5rem;--rdp-months-gap: 2rem;--rdp-nav_button-disabled-opacity: .5;--rdp-nav_button-height: 2.25rem;--rdp-nav_button-width: 2.25rem;--rdp-nav-height: 2.75rem;--rdp-range_middle-background-color: var(--rdp-accent-background-color);--rdp-range_middle-color: inherit;--rdp-range_start-color: white;--rdp-range_start-background: linear-gradient( var(--rdp-gradient-direction), transparent 50%, var(--rdp-range_middle-background-color) 50% );--rdp-range_start-date-background-color: var(--rdp-accent-color);--rdp-range_end-background: linear-gradient( var(--rdp-gradient-direction), var(--rdp-range_middle-background-color) 50%, transparent 50% );--rdp-range_end-color: white;--rdp-range_end-date-background-color: var(--rdp-accent-color);--rdp-week_number-border-radius: 100%;--rdp-week_number-border: 2px solid transparent;--rdp-week_number-height: var(--rdp-day-height);--rdp-week_number-opacity: .75;--rdp-week_number-width: var(--rdp-day-width);--rdp-weeknumber-text-align: center;--rdp-weekday-opacity: .75;--rdp-weekday-padding: .5rem 0rem;--rdp-weekday-text-align: center;--rdp-gradient-direction: 90deg;--rdp-animation_duration: .3s;--rdp-animation_timing: cubic-bezier(.4, 0, .2, 1)}.rdp-root[dir=rtl]{--rdp-gradient-direction: -90deg}.rdp-root[data-broadcast-calendar=true]{--rdp-outside-opacity: unset}.rdp-root{position:relative;box-sizing:border-box}.rdp-root *{box-sizing:border-box}.rdp-day{width:var(--rdp-day-width);height:var(--rdp-day-height);text-align:center}.rdp-day_button{background:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;justify-content:center;align-items:center;display:flex;width:var(--rdp-day_button-width);height:var(--rdp-day_button-height);border:var(--rdp-day_button-border);border-radius:var(--rdp-day_button-border-radius)}.rdp-day_button:disabled{cursor:revert}.rdp-caption_label{z-index:1;position:relative;display:inline-flex;align-items:center;white-space:nowrap;border:0}.rdp-dropdown:focus-visible~.rdp-caption_label{outline:5px auto Highlight;outline:5px auto -webkit-focus-ring-color}.rdp-button_next,.rdp-button_previous{border:none;background:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;-moz-appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;position:relative;appearance:none;width:var(--rdp-nav_button-width);height:var(--rdp-nav_button-height)}.rdp-button_next:disabled,.rdp-button_next[aria-disabled=true],.rdp-button_previous:disabled,.rdp-button_previous[aria-disabled=true]{cursor:revert;opacity:var(--rdp-nav_button-disabled-opacity)}.rdp-chevron{display:inline-block;fill:var(--rdp-accent-color)}.rdp-root[dir=rtl] .rdp-nav .rdp-chevron{transform:rotate(180deg);transform-origin:50%}.rdp-dropdowns{position:relative;display:inline-flex;align-items:center;gap:var(--rdp-dropdown-gap)}.rdp-dropdown{z-index:2;opacity:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;inset-block-start:0;inset-block-end:0;inset-inline-start:0;width:100%;margin:0;padding:0;cursor:inherit;border:none;line-height:inherit}.rdp-dropdown_root{position:relative;display:inline-flex;align-items:center}.rdp-dropdown_root[data-disabled=true] .rdp-chevron{opacity:var(--rdp-disabled-opacity)}.rdp-month_caption{display:flex;align-content:center;height:var(--rdp-nav-height);font-weight:700;font-size:large}.rdp-root[data-nav-layout=around] .rdp-month,.rdp-root[data-nav-layout=after] .rdp-month{position:relative}.rdp-root[data-nav-layout=around] .rdp-month_caption{justify-content:center;margin-inline-start:var(--rdp-nav_button-width);margin-inline-end:var(--rdp-nav_button-width);position:relative}.rdp-root[data-nav-layout=around] .rdp-button_previous{position:absolute;inset-inline-start:0;top:0;height:var(--rdp-nav-height);display:inline-flex}.rdp-root[data-nav-layout=around] .rdp-button_next{position:absolute;inset-inline-end:0;top:0;height:var(--rdp-nav-height);display:inline-flex;justify-content:center}.rdp-months{position:relative;display:flex;flex-wrap:wrap;gap:var(--rdp-months-gap);max-width:fit-content}.rdp-month_grid{border-collapse:collapse}.rdp-nav{position:absolute;inset-block-start:0;inset-inline-end:0;display:flex;align-items:center;height:var(--rdp-nav-height)}.rdp-weekday{opacity:var(--rdp-weekday-opacity);padding:var(--rdp-weekday-padding);font-weight:500;font-size:smaller;text-align:var(--rdp-weekday-text-align);text-transform:var(--rdp-weekday-text-transform)}.rdp-week_number{opacity:var(--rdp-week_number-opacity);font-weight:400;font-size:small;height:var(--rdp-week_number-height);width:var(--rdp-week_number-width);border:var(--rdp-week_number-border);border-radius:var(--rdp-week_number-border-radius);text-align:var(--rdp-weeknumber-text-align)}.rdp-today:not(.rdp-outside){color:var(--rdp-today-color)}.rdp-selected{font-weight:700;font-size:large}.rdp-selected .rdp-day_button{border:var(--rdp-selected-border)}.rdp-outside{opacity:var(--rdp-outside-opacity)}.rdp-disabled:not(.rdp-selected){opacity:var(--rdp-disabled-opacity)}.rdp-hidden{visibility:hidden;color:var(--rdp-range_start-color)}.rdp-range_start{background:var(--rdp-range_start-background)}.rdp-range_start .rdp-day_button{background-color:var(--rdp-range_start-date-background-color);color:var(--rdp-range_start-color)}.rdp-range_middle{background-color:var(--rdp-range_middle-background-color)}.rdp-range_middle .rdp-day_button{border:unset;border-radius:unset;color:var(--rdp-range_middle-color)}.rdp-range_end{background:var(--rdp-range_end-background);color:var(--rdp-range_end-color)}.rdp-range_end .rdp-day_button{color:var(--rdp-range_start-color);background-color:var(--rdp-range_end-date-background-color)}.rdp-range_start.rdp-range_end{background:revert}.rdp-focusable{cursor:pointer}@keyframes rdp-slide_in_left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes rdp-slide_in_right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes rdp-slide_out_left{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes rdp-slide_out_right{0%{transform:translate(0)}to{transform:translate(100%)}}.rdp-weeks_before_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_before_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}@keyframes rdp-fade_in{0%{opacity:0}to{opacity:1}}@keyframes rdp-fade_out{0%{opacity:1}to{opacity:0}}.rdp-caption_after_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_after_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.gap-analysis-panel{padding:16px;margin-bottom:16px;background:linear-gradient(135deg,#2e7d3214,#4caf5014);border:1px solid rgba(46,125,50,.2);border-radius:8px}.gap-analysis-panel.gap-analysis-loading{background:linear-gradient(135deg,#1976d21a,#42a5f51a);border:1px solid rgba(25,118,210,.2)}.gap-analysis-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.gap-analysis-title{font-size:16px;font-weight:600;color:var(--color-primary, #1976d2)}.gap-analysis-divider{height:1px;background:#0000001f;margin:12px 0}.gap-analysis-chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.gap-analysis-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:16px;font-size:12px;font-weight:500;cursor:default;transition:all .2s}.gap-analysis-chip.chip-outlined{background:transparent;border:1px solid currentColor}.gap-analysis-chip.chip-success{color:#2e7d32;border-color:#2e7d32}.gap-analysis-chip.chip-warning{color:#ed6c02;border-color:#ed6c02}.gap-analysis-chip.chip-error{color:#d32f2f;border-color:#d32f2f}.gap-analysis-chip.chip-info{color:#0288d1;border-color:#0288d1}.gap-analysis-chip.chip-default{color:#666;border-color:#ccc}.gap-analysis-coverage{margin-bottom:12px}.gap-analysis-coverage-header{display:flex;justify-content:space-between;margin-bottom:6px}.gap-analysis-coverage-label{font-size:12px;color:#666}.gap-analysis-coverage-value{font-size:12px;font-weight:600;color:var(--color-primary, #1976d2)}.gap-analysis-progress-track{height:8px;background:#0000001a;border-radius:4px;overflow:hidden}.gap-analysis-progress-fill{height:100%;border-radius:4px;transition:width .3s ease}.gap-analysis-progress-fill.coverage-high{background:linear-gradient(90deg,#4caf50,#8bc34a)}.gap-analysis-progress-fill.coverage-medium{background:linear-gradient(90deg,#ff9800,#ffc107)}.gap-analysis-progress-fill.coverage-low{background:linear-gradient(90deg,#f44336,#ff5722)}.gap-analysis-progress-bar{height:4px;background:#1976d233;border-radius:2px;overflow:hidden}.gap-analysis-progress-bar-indeterminate{height:100%;width:30%;background:linear-gradient(90deg,#1976d2,#42a5f5);border-radius:2px;animation:indeterminate 1.5s infinite ease-in-out}@keyframes indeterminate{0%{transform:translate(-100%)}to{transform:translate(400%)}}.gap-analysis-alert{padding:8px 12px;border-radius:4px;font-size:14px;display:flex;align-items:center;gap:8px}.gap-analysis-alert-success{background:#2e7d321a;color:#2e7d32;border:1px solid rgba(46,125,50,.2)}.gap-analysis-alert-warning{background:#ed6c021a;color:#ed6c02;border:1px solid rgba(237,108,2,.2);margin-bottom:16px}.gap-analysis-alert-info{background:#0288d11a;color:#0288d1;border:1px solid rgba(2,136,209,.2)}.gap-analysis-alert strong{font-weight:600}.source-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;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.source-modal-container{background:linear-gradient(180deg,#1976d20d,#fff);border-radius:12px;box-shadow:0 8px 32px #0003;width:100%;max-width:500px;max-height:90vh;overflow:auto;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.source-modal-header{display:flex;align-items:center;gap:8px;padding:16px 20px;border-bottom:1px solid rgba(0,0,0,.1)}.source-modal-icon{font-size:24px}.source-modal-title{margin:0;font-size:18px;font-weight:600;color:#333}.source-modal-content{padding:20px}.source-modal-alert{padding:12px 16px;border-radius:8px;font-size:14px;margin-bottom:20px;display:flex;align-items:center;gap:8px;position:relative}.source-modal-alert.alert-info{background:#0288d11a;color:#0277bd;border:1px solid rgba(2,136,209,.2)}.source-modal-alert.alert-error{background:#d32f2f1a;color:#c62828;border:1px solid rgba(211,47,47,.2)}.source-modal-alert strong{font-weight:600}.alert-close{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:18px;cursor:pointer;color:inherit;opacity:.7}.alert-close:hover{opacity:1}.source-modal-options{display:flex;flex-direction:column;gap:12px}.source-option{display:flex;gap:16px;padding:16px;border:2px solid transparent;border-radius:12px;background:#fff;box-shadow:0 2px 8px #00000014;cursor:pointer;transition:all .2s}.source-option:hover:not(.disabled){box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.source-option.selected{border-color:#1976d2;box-shadow:0 4px 16px #1976d233}.source-option.source-option-warning.selected{border-color:#ff9800;box-shadow:0 4px 16px #ff980033}.source-option.disabled{opacity:.6;cursor:default}.source-option-icon{font-size:36px;opacity:.8}.source-option.selected .source-option-icon{opacity:1}.source-option-content{flex:1}.source-option-title{margin:0 0 4px;font-size:16px;font-weight:600;color:#333}.source-option-description{margin:0 0 12px;font-size:13px;color:#666}.source-option-chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}.source-option-meta{font-size:12px;color:#888}.chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:500;border:1px solid}.chip.chip-success{color:#2e7d32;border-color:#2e7d32;background:#2e7d3214}.chip.chip-warning{color:#ed6c02;border-color:#ed6c02;background:#ed6c0214}.source-options-divider{display:flex;align-items:center;gap:12px;margin:8px 0}.source-options-divider:before,.source-options-divider:after{content:"";flex:1;height:1px;background:#0000001a}.divider-text{font-size:11px;color:#888;font-weight:500;padding:4px 12px;background:#f5f5f5;border-radius:12px}.source-modal-actions{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid rgba(0,0,0,.1);background:#fafafa;border-radius:0 0 12px 12px}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;border:none;transition:all .2s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:#f5f5f5;color:#555;border:1px solid #ddd}.btn-secondary:hover:not(:disabled){background:#eee}.btn-primary{background:#1976d2;color:#fff}.btn-primary:hover:not(:disabled){background:#1565c0}.btn-warning{background:#ff9800;color:#fff}.btn-warning:hover:not(:disabled){background:#f57c00}.spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
