@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;450;500;600;700&display=swap);.marketing-dashboard{background:var(--bg-primary);display:flex;flex-direction:column;gap:2rem;margin:0 auto;max-width:1600px;min-height:100vh;overflow-x:hidden;padding:2rem;width:100%}.btn-primary{box-shadow:0 2px 8px #10b9814d}.metrics-grid{grid-gap:1.5rem;gap:1.5rem;grid-template-columns:repeat(4,1fr);margin-bottom:2rem}.metric-card{flex-direction:column;min-height:160px;overflow:hidden;position:relative}.metric-content{text-align:left}.metric-value{font-size:2rem;margin-bottom:.5rem}.metric-change{align-items:center;border-radius:20px;display:flex;font-size:.875rem;justify-content:center;margin-top:auto;min-height:32px;padding:.5rem 1rem;text-align:center;width:100%}.dashboard-grid{grid-gap:1.5rem;grid-template-columns:1fr 1fr 1fr;grid-template-rows:1fr 1fr;height:auto}.dashboard-card{box-shadow:var(--shadow-md);display:flex;flex-direction:column;min-height:280px;overflow:hidden;padding:1.5rem;position:relative}.campaigns-performance{min-height:320px}.dashboard-card:before{background:linear-gradient(90deg,#10b981,#3b82f6,#8b5cf6,#f59e0b);content:"";height:3px;left:0;opacity:.8;position:absolute;right:0;top:0}.dashboard-card:hover{transform:translateY(-4px)}.card-header{border-bottom:2px solid var(--border-primary);flex-shrink:0;margin-bottom:1.25rem;padding-bottom:1rem}.card-header h3{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--text-primary),#6366f1);-webkit-background-clip:text;background-clip:text;font-size:1.5rem;font-weight:700;letter-spacing:-.025em}.performance-chart{overflow:visible;position:relative}.chart-metrics{align-items:center;display:flex;gap:1rem}.chart-value{border:2px solid #0000;border-radius:20px;font-size:1rem;font-weight:600;padding:.25rem .75rem}.chart-value.leads{background:#10b9811a;border-color:#10b9814d;color:#10b981}.chart-value.conversions{background:#3b82f61a;border-color:#3b82f64d;color:#3b82f6}.chart-container{flex:1 1;flex-direction:column;gap:1rem;height:280px;padding:1rem 0}.chart-legend{gap:1.5rem;margin-bottom:1rem}.legend-item{color:var(--text-secondary);font-size:.75rem;font-weight:500;gap:.5rem}.legend-color{border-radius:3px;flex-shrink:0}.legend-color.leads{background:linear-gradient(135deg,#10b981,#059669)}.legend-color.conversions{background:linear-gradient(135deg,#3b82f6,#1e40af)}.legend-color.budget{background:linear-gradient(135deg,#f59e0b,#d97706)}.chart-bars{gap:.5rem;height:200px;padding:0 1rem}.chart-bar-container{position:relative}.chart-bars-group{align-items:end;display:flex;gap:2px;height:100%;justify-content:center;max-width:60px;width:100%}.chart-bar{animation:slideUp .6s ease-out forwards;border-radius:6px 6px 0 0;cursor:pointer;flex:1 1;max-width:16px;opacity:0;transform-origin:bottom;transition:all .4s cubic-bezier(.4,0,.2,1)}.chart-bar.leads{background:linear-gradient(180deg,#10b981,#059669);box-shadow:0 2px 8px #10b9814d}.chart-bar.conversions{background:linear-gradient(180deg,#3b82f6,#1e40af);box-shadow:0 2px 8px #3b82f64d}.chart-bar.budget{background:linear-gradient(180deg,#f59e0b,#d97706);box-shadow:0 2px 8px #f59e0b4d}.chart-bar.current{animation:pulse 2s ease-in-out infinite}.chart-bar:hover{transform:scaleY(1.1) scaleX(1.2);z-index:10}.chart-bar:hover .bar-tooltip{opacity:1;transform:translateX(-50%) translateY(-10px);visibility:visible}.chart-label{font-weight:600;margin-top:.75rem;text-align:center}.bar-tooltip{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-modal);border:1px solid var(--border-primary);border-radius:12px;bottom:100%;box-shadow:var(--shadow-xl);color:var(--text-primary);font-size:.75rem;left:50%;min-width:180px;opacity:0;padding:1rem;position:absolute;transform:translateX(-50%) translateY(-20px);transition:all .3s cubic-bezier(.4,0,.2,1);visibility:hidden;white-space:nowrap;z-index:100}.bar-tooltip:after{border:6px solid #0000;border-top:6px solid var(--bg-modal);content:"";left:50%;position:absolute;top:100%;transform:translateX(-50%)}.tooltip-title{border-bottom:1px solid var(--border-primary);color:var(--text-primary);font-size:.875rem;font-weight:700;margin-bottom:.5rem;padding-bottom:.5rem;text-align:center}.tooltip-item{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:.25rem}.tooltip-label{color:var(--text-secondary);font-weight:500}.tooltip-value{color:var(--text-primary);font-weight:600}.campaigns-performance{position:relative}.campaigns-summary{align-items:center;display:flex;gap:1rem}.total-campaigns{background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:12px;color:var(--text-secondary);font-size:.875rem;padding:.25rem .75rem}.campaigns-content{grid-gap:1.5rem;display:grid;flex:1 1;gap:1.5rem;grid-template-columns:1fr 1.5fr;height:100%}.campaigns-list-compact{display:flex;flex-direction:column;gap:.5rem;max-height:none;overflow-y:visible;padding-right:.5rem}.campaign-item-compact{animation:slideInUp .6s ease-out forwards;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:8px;opacity:0;padding:.75rem;transition:all .3s ease}.campaign-item-compact:hover{border-color:var(--border-focus);box-shadow:var(--shadow-md);transform:translateY(-1px)}.campaign-compact-header{align-items:center;display:flex;gap:.75rem;margin-bottom:.5rem}.platform-icon-small{align-items:center;background:linear-gradient(135deg,var(--bg-tertiary),var(--bg-primary));border:1px solid var(--border-primary);border-radius:6px;display:flex;flex-shrink:0;font-size:.875rem;height:28px;justify-content:center;width:28px}.campaign-compact-info{flex:1 1}.campaign-name-small{color:var(--text-primary);font-size:.8rem;font-weight:600;margin-bottom:.2rem}.campaign-stats-small{color:var(--text-secondary);font-size:.7rem;line-height:1.2}.campaign-compact-metrics{display:flex;gap:.75rem;justify-content:space-between}.compact-metric{align-items:center;display:flex;flex-direction:column;gap:.2rem}.compact-label{color:var(--text-secondary);font-size:.65rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.compact-value{color:var(--text-primary);font-size:.8rem;font-weight:700}.compact-value.positive{color:#10b981}.compact-value.negative{color:#ef4444}.compact-value.neutral{color:#6b7280}.campaigns-details-panel{background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:8px;padding:1rem}.details-header{border-bottom:1px solid var(--border-primary);margin-bottom:1rem;padding-bottom:.5rem}.details-header h4{color:var(--text-primary);font-size:.875rem;font-weight:600;margin:0}.performance-overview{display:flex;flex-direction:column;gap:1rem;max-height:none;overflow-y:visible}.performance-detail-item{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:6px;padding:.75rem}.detail-platform-name{color:var(--text-primary);font-size:.75rem;font-weight:600;margin-bottom:.5rem}.detail-bars{gap:.5rem;margin-bottom:.75rem}.detail-bar,.detail-bars{display:flex;flex-direction:column}.detail-bar{gap:.25rem}.detail-bar-info{align-items:center;display:flex;justify-content:space-between}.detail-label{color:var(--text-secondary)}.detail-label,.detail-value{font-size:.65rem}.detail-progress-bar{background:var(--bg-primary);border-radius:3px;height:6px;overflow:hidden;position:relative}.detail-progress-fill{border-radius:3px;height:100%;position:relative;transition:width 1s cubic-bezier(.4,0,.2,1)}.detail-progress-fill.impressions{background:linear-gradient(90deg,#10b981,#059669)}.detail-progress-fill.clicks{background:linear-gradient(90deg,#3b82f6,#1e40af)}.detail-kpis{display:flex;gap:.5rem;justify-content:space-between}.detail-kpi{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:.2rem}.detail-kpi-label{color:var(--text-secondary);font-size:.6rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.detail-kpi-value{color:var(--text-primary);font-size:.7rem;font-weight:600}.detail-kpi-value.performance-score{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#10b981,#3b82f6);-webkit-background-clip:text;background-clip:text}.campaign-item.enhanced{animation:slideInUp .6s ease-out forwards;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:12px;opacity:0;overflow:hidden;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.campaign-item.enhanced:hover{border-color:var(--border-focus);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.campaign-header{padding:.75rem}.campaign-platform{gap:.75rem}.platform-icon{align-items:center;background:linear-gradient(135deg,var(--bg-secondary),var(--bg-primary));border:2px solid var(--border-primary);border-radius:10px;display:flex;font-size:1.25rem;height:40px;justify-content:center;transition:all .3s ease;width:40px}.campaign-item.enhanced:hover .platform-icon{box-shadow:var(--shadow-md);transform:scale(1.1)}.campaign-info{flex:1 1}.campaign-name{color:var(--text-primary);font-size:.875rem;font-weight:700;margin-bottom:.25rem}.campaign-status{margin-top:.25rem}.status-badge{padding:.2rem .6rem}.status-badge.excellent{background:#10b98126;border:1px solid #10b9814d;color:#059669}.status-badge.good{background:#3b82f626;border:1px solid #3b82f64d;color:#1e40af}.status-badge.average{background:#f59e0b26;border:1px solid #f59e0b4d;color:#d97706}.campaign-metrics-header{display:flex;gap:1rem}.metric-item{align-items:flex-end;display:flex;flex-direction:column;gap:.25rem}.metric-label{font-size:.7rem;letter-spacing:.05em}.metric-value{font-size:.875rem}.metric-value.neutral{color:#6b7280}.campaign-details{background:var(--bg-secondary);padding:.75rem}.performance-bars{margin-bottom:.75rem}.performance-bar,.performance-bars{display:flex;flex-direction:column;gap:.5rem}.bar-info{align-items:center;display:flex;justify-content:space-between}.bar-label{color:var(--text-secondary);font-size:.75rem;font-weight:600}.bar-value{color:var(--text-primary);font-size:.75rem;font-weight:700}.progress-fill{overflow:hidden;transition:width 1s cubic-bezier(.4,0,.2,1)}.progress-fill.impressions{background:linear-gradient(90deg,#10b981,#059669);box-shadow:0 2px 4px #10b9814d}.progress-fill.clicks{background:linear-gradient(90deg,#3b82f6,#1e40af);box-shadow:0 2px 4px #3b82f64d}.progress-fill:after{animation:shimmer 2s ease-in-out infinite;height:100%;left:-100%;width:100%}.campaign-kpis{background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:8px;justify-content:space-between;padding:.75rem}.campaign-kpis,.kpi-item{align-items:center;display:flex}.kpi-item{flex:1 1;flex-direction:column;gap:.25rem}.kpi-label{color:var(--text-secondary);font-size:.7rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.kpi-value{color:var(--text-primary);font-size:.875rem;font-weight:700}.kpi-value.performance-score{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#10b981,#3b82f6);-webkit-background-clip:text;background-clip:text}.quick-actions{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr);margin-top:1.5rem}.actions-grid{flex:1 1;width:100%}.action-btn{align-items:center!important;background:linear-gradient(135deg,#10b981,#059669)!important;border:2px solid #0000!important;border-radius:16px!important;box-shadow:0 4px 12px #10b9814d!important;color:#fff!important;cursor:pointer!important;flex-direction:row!important;font-weight:700!important;gap:1rem!important;justify-content:flex-start!important;min-height:80px!important;overflow:hidden!important;padding:1.5rem 1.25rem!important;position:relative!important;text-decoration:none!important;transition:all .3s ease!important;width:100%!important}.action-btn:before{background:linear-gradient(90deg,#0000,#ffffff1a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.action-btn:hover:before{left:100%}.action-btn:hover{background:linear-gradient(135deg,#059669,#047857);border-color:#fff3;box-shadow:0 8px 20px #10b98166;transform:translateY(-4px)}.action-btn span{display:block!important;flex:1 1!important;font-size:1rem!important;font-weight:600!important;line-height:1.3!important;text-align:left!important;text-shadow:0 1px 2px #0000001a!important}.action-btn span,.action-btn svg{color:#fff!important;opacity:1!important;visibility:visible!important}.action-btn svg{filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))!important;flex-shrink:0!important;height:28px!important;width:28px!important}.action-btn.social{background:linear-gradient(135deg,#3b82f6,#1e40af);box-shadow:0 4px 12px #3b82f64d}.action-btn.social:hover{background:linear-gradient(135deg,#1e40af,#1e3a8a);box-shadow:0 8px 20px #3b82f666}.action-btn.calendar{background:linear-gradient(135deg,#8b5cf6,#7c3aed);box-shadow:0 4px 12px #8b5cf64d}.action-btn.calendar:hover{background:linear-gradient(135deg,#7c3aed,#6d28d9);box-shadow:0 8px 20px #8b5cf666}.action-btn.analytics{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 4px 12px #f59e0b4d}.action-btn.analytics:hover{background:linear-gradient(135deg,#d97706,#b45309);box-shadow:0 8px 20px #f59e0b66}.action-btn.campaign{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 12px #ef44444d}.action-btn.campaign:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 8px 20px #ef444466}.activity-list{flex:1 1;gap:.75rem;overflow-y:visible}.activity-item{min-height:60px;padding:.75rem}.funnel-stages{display:flex;flex:1 1;flex-direction:column;gap:.75rem;overflow-y:visible}.funnel-stage{align-items:center;display:flex;gap:1rem}.stage-label{color:var(--text-primary);font-size:.875rem;font-weight:500;min-width:80px}.stage-bar{align-items:center;border-radius:6px;color:#fff;display:flex;font-size:.875rem;font-weight:600;height:32px;padding:0 1rem;transition:all .3s ease}.stage-bar:hover{opacity:.8}@media (min-width:1400px){.dashboard-grid{gap:2rem;grid-template-columns:2.5fr 1fr}.metrics-grid{gap:2rem}}@media (min-width:1200px) and (max-width:1399px){.dashboard-grid{gap:1.5rem}}@media (max-width:1199px){.marketing-dashboard{padding:1.5rem}.dashboard-grid{gap:1rem}.dashboard-card{flex-basis:calc(50% - 0.5rem);flex-grow:1;flex-shrink:1;max-width:calc(50% - .5rem);min-width:320px}}@media (max-width:1024px){.dashboard-grid{grid-template-areas:"performance-chart" "campaigns-performance" "activity-section" "funnel-section" "actions-section";grid-template-columns:1fr}.metrics-grid{gap:1rem;grid-template-columns:repeat(4,1fr)}.dashboard-card{flex:1 1 100%;max-width:100%;min-width:300px}}.status-overview{display:flex;flex:1 1;flex-direction:column;gap:1rem}.status-item{gap:1rem;padding:.75rem}.status-indicator.available{background-color:#10b981}.status-indicator.sold{background-color:#3b82f6}.status-indicator.reserved{background-color:#f59e0b}.status-info{align-items:center;display:flex;justify-content:space-between}.status-value{font-size:1.125rem;font-weight:600}.performance-metrics{flex:1 1;gap:1rem}.metric-row{align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:6px;display:flex;justify-content:space-between;min-height:35px;padding:.5rem .75rem}.metric-row .metric-label{color:var(--text-secondary);font-size:.75rem}.metric-row .metric-value{font-size:.875rem;font-weight:600}.metric-row .metric-value.positive{color:#10b981}.metric-row .metric-value.negative{color:#ef4444}.metric-row .metric-value.neutral{color:var(--text-primary)}.metric-row .metric-value small{font-size:.75rem;margin-left:.5rem;opacity:.8}@media (max-width:1024px){.dashboard-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto auto auto}}@media (max-width:932px) and (min-width:769px){.marketing-dashboard{padding:1.5rem 1rem}.metrics-grid{gap:1rem;grid-template-columns:repeat(4,1fr)}.metric-card{min-height:140px;padding:1.25rem}.metric-value{font-size:1.75rem}.metric-label{font-size:.8rem}}@media (max-width:768px){.marketing-dashboard{padding:1rem .75rem}.dashboard-grid{gap:1rem;grid-template-columns:1fr}.metrics-grid{gap:.75rem;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr)}.metric-card{min-height:110px;padding:1rem}.metric-value{font-size:1.4rem}.metric-label{font-size:.7rem;font-weight:600}.metric-change{align-items:center;display:flex;font-size:.7rem;justify-content:center;min-height:26px;padding:.25rem .5rem}.actions-grid{gap:.75rem!important;grid-template-columns:1fr!important}.action-btn{align-items:center!important;display:flex!important;flex-direction:row!important;gap:.75rem!important;justify-content:flex-start!important;min-height:70px!important;padding:1rem 1.5rem!important}.action-btn span{display:block!important;flex:1 1!important;font-size:.9rem!important;text-align:left!important}.action-btn span,.action-btn svg{color:#fff!important;opacity:1!important;visibility:visible!important}.action-btn svg{flex-shrink:0!important;height:24px!important;width:24px!important}.campaigns-content{gap:1rem;grid-template-columns:1fr}.campaigns-list-compact{gap:.5rem;max-height:none;overflow-y:visible}.campaign-item-compact{padding:.5rem}.campaign-compact-header{gap:.5rem;margin-bottom:.4rem}.platform-icon-small{font-size:.75rem;height:24px;width:24px}.campaign-name-small{font-size:.75rem}.campaign-stats-small{font-size:.65rem}.compact-label{font-size:.6rem}.compact-value{font-size:.75rem}.campaigns-details-panel{padding:.75rem}.details-header h4{font-size:.8rem}.performance-overview{gap:.75rem;max-height:none;overflow-y:visible}.performance-detail-item{padding:.5rem}.detail-platform-name{font-size:.7rem}.detail-label,.detail-value{font-size:.6rem}.detail-progress-bar{height:4px}.detail-kpi-label{font-size:.55rem}.detail-kpi-value{font-size:.65rem}.chart-container{height:240px;padding:.5rem 0}.chart-legend{gap:1rem;margin-bottom:.75rem}.legend-item{font-size:.7rem}.legend-color{height:10px;width:10px}.chart-bars{gap:.25rem;height:160px;padding:0 .5rem}.chart-bars-group{gap:1px;max-width:45px}.chart-bar{max-width:12px}.chart-metrics{align-items:flex-start;flex-direction:column;gap:.5rem}.chart-value{font-size:.875rem;padding:.2rem .6rem}.bar-tooltip{font-size:.7rem;min-width:140px;padding:.75rem}.tooltip-title{font-size:.8rem}}@media (max-width:430px){.marketing-dashboard{padding:.75rem .5rem}.dashboard-header{margin-bottom:1rem;padding-bottom:.75rem}.dashboard-header h1{font-size:1.5rem}.metrics-grid{gap:.5rem;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr)}.metric-card{gap:.5rem;min-height:100px;padding:.75rem}.metric-icon{height:36px;width:36px}.metric-value{font-size:1.2rem;margin-bottom:.25rem}.metric-label{font-size:.65rem;font-weight:600;line-height:1.2}.metric-change{border-radius:12px;font-size:.65rem;min-height:22px;padding:.2rem .4rem}.btn-primary{font-size:.85rem;padding:.5rem 1rem}.dashboard-card{min-height:240px;padding:1rem}.card-header h3{font-size:1.2rem}}.immobilier-dashboard{background:var(--bg-primary);margin:0;max-width:100%;min-height:100vh;padding:1.5rem;width:100%}.dashboard-header{border-bottom:1px solid var(--border-primary);margin-bottom:2rem;padding-bottom:1rem}.dashboard-header h1{font-size:2rem;margin:0 0 .5rem}.dashboard-header p{font-size:1rem}.btn-primary{background:linear-gradient(135deg,#3b82f6,#1e40af);box-shadow:0 2px 8px #3b82f64d}.btn-primary:hover{box-shadow:0 4px 12px #3b82f666}.metrics-grid{grid-gap:1rem;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:1.5rem}.metric-card{background:var(--bg-secondary);border-radius:8px;gap:.75rem;padding:1rem}.metric-icon.blue{background:linear-gradient(135deg,#3b82f6,#1e40af)}.metric-icon.green{background:linear-gradient(135deg,#10b981,#059669)}.metric-icon.purple{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.metric-icon.orange{background:linear-gradient(135deg,#f59e0b,#d97706)}.metric-label{color:var(--text-secondary);font-size:.875rem;margin-bottom:.25rem}.metric-value{font-size:1.75rem;margin-bottom:.25rem}.metric-change{border-radius:4px;font-size:.75rem;padding:.25rem .5rem}.metric-change.positive{background:#10b9811a;color:#059669}.metric-change.neutral{background:#6b72801a}.dashboard-grid{align-items:flex-start;flex-wrap:wrap;gap:1.5rem}.dashboard-card{background:var(--bg-secondary);border-radius:8px;box-shadow:var(--shadow-sm);flex:1 1 320px;height:-webkit-fit-content;height:fit-content;min-width:320px;padding:1rem}.dashboard-card:hover{box-shadow:var(--shadow-md)}.card-header{border-bottom:1px solid var(--border-primary);margin-bottom:1rem;padding-bottom:.75rem}.card-header h3{font-size:1.125rem}.chart-value{font-size:1.5rem}.chart-container{align-items:end;height:150px}.chart-bars{align-items:end;gap:1rem;justify-content:space-around}.chart-bar{border-radius:4px 4px 0 0;margin-bottom:.5rem}.chart-bar:hover{opacity:.8}.chart-label{color:var(--text-secondary);font-size:.75rem;margin-top:.5rem}.chart-tooltip{background:var(--bg-primary);border-radius:4px;box-shadow:var(--shadow-sm);color:var(--text-primary);font-size:.75rem;padding:.25rem .5rem;top:-30px}.project-item{align-items:center;background:var(--bg-tertiary);display:flex;justify-content:space-between;transition:all .3s ease}.project-item:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.project-info{flex:1 1}.project-name{font-weight:600;margin-bottom:.25rem}.project-location{color:var(--text-secondary);gap:.25rem}.project-stats{align-items:flex-end;display:flex;flex-direction:column;gap:.25rem}.project-units{color:var(--text-primary);font-size:.875rem;font-weight:600}.project-sold{color:var(--text-secondary);font-size:.75rem}.status-list{gap:1rem}.status-item{background:var(--bg-tertiary);border-radius:8px;padding:1rem}.status-info{flex:1 1}.status-label{color:var(--text-secondary);font-size:.875rem;margin-bottom:.25rem}.status-value{font-size:1.5rem}.actions-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr)}.action-btn{background:var(--bg-tertiary);border-radius:8px;color:var(--text-primary);flex-direction:column;gap:.5rem;padding:1rem;transition:all .3s ease}.action-btn:hover{background:var(--bg-primary);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.action-btn span{font-size:.875rem;font-weight:500;text-align:center}.activity-list{gap:1rem}.activity-item{background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:8px;gap:1rem;padding:1rem}.activity-icon{height:32px;width:32px}.activity-title{margin-bottom:.25rem}.activity-description{color:var(--text-secondary);font-size:.875rem}.activity-time{color:var(--text-muted);font-size:.75rem}.performance-metrics{display:flex;flex-direction:column;gap:1.5rem}.performance-item{align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:8px;display:flex;justify-content:space-between;padding:1rem}.performance-label{color:var(--text-secondary);flex:1 1;font-size:.875rem}.performance-value{color:var(--text-primary);font-size:1.25rem;font-weight:700;margin:0 1rem}.performance-trend{border-radius:4px;font-size:.75rem;font-weight:600;padding:.25rem .5rem}.performance-trend.positive{background:#10b9811a;color:#059669}.performance-trend.negative{background:#ef44441a;color:#dc2626}@media (min-width:1600px){.dashboard-grid{gap:2rem}.dashboard-card{flex:1 1 400px;max-width:calc(33.333% - 1.33rem)}.metrics-grid{grid-template-columns:repeat(4,1fr)}}@media (min-width:1200px) and (max-width:1599px){.dashboard-grid{gap:1.5rem}.dashboard-card{flex:1 1 350px;max-width:calc(50% - .75rem)}.metrics-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width:1199px){.immobilier-dashboard{padding:1rem}.dashboard-header{align-items:stretch;flex-direction:column;gap:1rem}.metrics-grid{grid-template-columns:repeat(2,1fr)}.dashboard-card{flex:1 1 300px}}@media (max-width:1024px){.dashboard-card{flex:1 1 100%;min-width:280px}}@media (max-width:768px){.actions-grid,.metrics-grid{grid-template-columns:1fr}.project-item{align-items:flex-start;flex-direction:column;gap:.5rem}.project-stats{align-items:flex-start;flex-direction:row;gap:1rem}.performance-item{align-items:flex-start;flex-direction:column;gap:.5rem}.performance-value{margin:0}}.home-container{width:100%}.home-container,.modern-dashboard{background:var(--bg-primary);min-height:100vh}.modern-dashboard{border-radius:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:1400px;padding:60px}.dashboard-header{align-items:flex-start;color:var(--text-primary);display:flex;justify-content:space-between;margin-bottom:32px}.dashboard-header h1{color:var(--text-primary);font-size:32px;font-weight:700;margin:0 0 8px}.dashboard-header p{color:var(--text-secondary);font-size:16px;margin:0;opacity:.8}.header-actions .btn-primary{align-items:center;background:#3b82f6;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:8px;padding:12px 20px;transition:all .2s ease}.header-actions .btn-primary:hover{background:#2563eb;box-shadow:0 8px 25px #3b82f64d;transform:translateY(-2px)}.metrics-grid{grid-gap:24px;gap:24px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:32px}.metric-card:hover{transform:translateY(-4px)}.metric-icon{flex-shrink:0;height:56px;width:56px}.metric-icon.orange{background:linear-gradient(135deg,#ff8a65,#ff7043)}.metric-icon.green{background:linear-gradient(135deg,#66bb6a,#4caf50)}.metric-icon.blue{background:linear-gradient(135deg,#42a5f5,#2196f3)}.metric-icon.purple{background:linear-gradient(135deg,#ab47bc,#9c27b0)}.metric-content{flex:1 1}.metric-label{margin-bottom:4px}.metric-value{font-size:28px}.metric-change{border-radius:6px;display:inline-block;font-size:12px;font-weight:600;padding:2px 8px}.metric-change.positive{background:#dcfce7;color:#16a34a}.metric-change.negative{background:#fee2e2;color:#dc2626}.metric-change.neutral{background:#f3f4f6;color:#6b7280}.dashboard-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:2fr 1fr;grid-template-rows:auto auto}.dashboard-card{background:var(--card-bg);border:1px solid var(--border-primary);border-radius:16px;box-shadow:var(--shadow-lg);padding:24px;transition:all .3s ease}.dashboard-card:hover{box-shadow:var(--shadow-xl)}.card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.card-header h3{color:var(--text-primary);font-size:18px;font-weight:600;margin:0}.chart-card{grid-row:span 2}.chart-value{color:var(--text-primary);font-size:14px;font-weight:700}.chart-container{align-items:start;display:flex;height:300px;justify-content:center;padding-top:40px}.chart-bars{align-items:start;gap:16px;height:100%;max-width:400px;width:100%}.chart-bar-container{align-items:center;display:flex;flex:1 1;flex-direction:column;height:100%}.chart-bar{border-radius:0 0 6px 6px;margin-top:8px;max-width:40px;min-height:20px;position:relative;transition:all .3s ease;width:100%}.chart-bar:hover{transform:scaleY(1.05)}.chart-tooltip{background:var(--tooltip-bg);border-radius:8px;bottom:-40px;color:var(--tooltip-text);font-size:12px;font-weight:600;padding:6px 12px;white-space:nowrap}.chart-tooltip,.chart-tooltip:after{left:50%;position:absolute;transform:translateX(-50%)}.chart-tooltip:after{border:6px solid #0000;border-bottom:6px solid var(--tooltip-bg);bottom:100%;content:""}.chart-label{color:var(--text-muted);font-size:12px;font-weight:500;margin-bottom:8px}.notification-card{background:linear-gradient(135deg,#3b82f6,#1e40af 50%,#1e3a8a);border:none!important;color:#fff;overflow:hidden;position:relative}.notification-badge{background:#fff3;border-radius:20px;color:#fff;display:inline-block;font-size:11px;font-weight:700;letter-spacing:.5px;margin-bottom:16px;padding:4px 12px}.notification-card h3{color:#fff;font-size:20px;font-weight:700;margin:0 0 12px}.notification-card p{font-size:14px;line-height:1.5;margin:0 0 20px;opacity:.9}.notification-btn{background:#fff;border:none;border-radius:10px;color:#3b82f6;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .2s ease}.notification-btn:hover{box-shadow:0 8px 25px #ffffff4d;transform:translateY(-2px)}.activity-list{display:flex;flex-direction:column;gap:16px}.activity-item{align-items:center;border-bottom:1px solid var(--border-light);display:flex;gap:12px;padding:12px}.activity-item:last-child{border-bottom:none}.activity-icon{align-items:center;border-radius:8px;color:#fff;display:flex;flex-shrink:0;height:36px;justify-content:center;width:36px}.activity-content{flex:1 1}.activity-title{color:var(--text-primary);font-size:14px;font-weight:600;margin-bottom:2px}.activity-description{color:var(--text-muted);font-size:12px}.activity-time{color:var(--text-light);font-size:11px;font-weight:500}.status-list{display:flex;flex-direction:column;gap:16px}.status-item{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:10px;display:flex;justify-content:space-between;padding:12px 16px}.status-label{color:var(--text-muted);font-size:14px;font-weight:500}.status-value{color:var(--text-primary);font-size:18px;font-weight:700}.status-indicator{border-radius:50%;flex-shrink:0;height:12px;width:12px}.status-indicator.available{background:#10b981}.status-indicator.sold{background:#3b82f6}.status-indicator.rented{background:#f59e0b}@media (max-width:1200px){.dashboard-grid{grid-template-columns:1fr}.chart-card{grid-row:span 1}}@media (max-width:768px){.modern-dashboard{padding:16px}.dashboard-header{align-items:stretch;flex-direction:column;gap:16px}.metrics-grid{gap:16px;grid-template-columns:1fr}.metric-card{padding:20px}.dashboard-grid{gap:16px}.dashboard-card{padding:20px}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.dashboard-card,.metric-card{animation:fadeInUp .6s ease forwards}.metric-card:first-child{animation-delay:.1s}.metric-card:nth-child(2){animation-delay:.2s}.metric-card:nth-child(3){animation-delay:.3s}.metric-card:nth-child(4){animation-delay:.4s}.analytics-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin-top:24px}.analytics-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#3b82f60d,#3b82f614);border:1px solid #3b82f633;border-radius:20px;box-shadow:0 8px 32px #0000001a,0 0 0 1px #ffffff0d;overflow:hidden;padding:28px;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.analytics-card:hover{background:linear-gradient(135deg,#3b82f614,#3b82f61f);border-color:#3b82f666;box-shadow:0 20px 40px #3b82f626,0 0 0 1px #ffffff1a;transform:translateY(-4px) scale(1.02)}.analytics-card:before{background:linear-gradient(90deg,#0000,#3b82f680,#0000);content:"";height:1px;left:0;position:absolute;right:0;top:0}.analytics-card h2,.analytics-card h3{color:var(--text-primary);font-size:18px;font-weight:600;margin:0 0 15px}.analytics-card.overview{grid-column:1/-1}.overview-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:20px}.stat{align-items:center;background:linear-gradient(135deg,#3b82f614,#3b82f61f);border:1px solid #3b82f64d;border-radius:16px;display:flex;flex-direction:column;overflow:hidden;padding:24px;position:relative;transition:all .3s ease}.stat:before{background:linear-gradient(90deg,#3b82f6,#60a5fa);content:"";height:2px;left:0;position:absolute;right:0;top:0}.stat:hover{border-color:#3b82f680;box-shadow:0 8px 25px #3b82f633;transform:translateY(-2px)}.stat-value{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#60a5fa);-webkit-background-clip:text;background-clip:text;font-size:36px;margin-bottom:8px;text-shadow:0 2px 4px #0000001a}.stat-label{font-size:14px}.efficiency-card{grid-column:1/-1}.efficiency-explanation{background:#3b82f61a;border:1px solid #3b82f633;border-radius:12px;margin-bottom:24px;padding:16px}.efficiency-explanation p{color:var(--text-secondary);font-size:14px;line-height:1.5;margin:0}.efficiency-summary{background:#ffffff08;border-radius:12px;margin-bottom:20px;padding:16px;text-align:center}.roi-score{align-items:center;display:flex;flex-direction:column}.roi-value{color:#3b82f6;color:var(--efficiency-color,#3b82f6);font-size:28px;font-weight:800;line-height:1}.roi-label{color:var(--text-muted);font-size:12px;letter-spacing:.5px;margin-top:4px;text-transform:uppercase}.efficiency-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));margin-top:20px}.efficiency-card-item{background:linear-gradient(135deg,#ffffff0d,#ffffff05);border:1px solid #ffffff1a;border-radius:16px;overflow:hidden;padding:20px;position:relative;transition:all .3s ease}.efficiency-card-item:before{background:#3b82f6;background:var(--efficiency-color,#3b82f6);content:"";height:3px;left:0;position:absolute;right:0;top:0}.efficiency-card-item:hover{border-color:#fff3;box-shadow:0 8px 25px #00000026;transform:translateY(-2px)}.efficiency-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.efficiency-category{color:var(--text-primary);font-size:18px;font-weight:700}.efficiency-badge{border-radius:20px;color:#fff;font-size:12px;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.efficiency-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr);margin-bottom:20px}.efficiency-stat{align-items:center;display:flex;gap:8px}.stat-icon{font-size:20px;opacity:.8}.stat-info{display:flex;flex-direction:column}.stat-number{font-size:16px;line-height:1}.stat-text{font-size:11px;letter-spacing:.5px;margin-top:2px}.efficiency-progress{margin-top:16px}.progress-bar{background:#ffffff1a}.progress-fill{position:relative;transition:width .8s ease}.progress-fill:after{animation:shimmer 2s infinite;background:linear-gradient(90deg,#0000,#ffffff4d,#0000);bottom:0;content:"";left:0;position:absolute;right:0;top:0}.progress-info{flex-wrap:wrap;gap:8px}.progress-cost,.progress-label{color:var(--text-muted);font-size:11px;font-weight:500}.progress-cost{background:#ffffff0d;border-radius:6px;padding:2px 8px}.loading{color:var(--text-muted)}@media (max-width:768px){.analytics-grid{gap:16px;grid-template-columns:1fr}.analytics-card{padding:16px}.overview-stats{gap:12px;grid-template-columns:repeat(2,1fr)}.efficiency-grid,.efficiency-stats{grid-template-columns:1fr}.efficiency-stats{gap:12px}.progress-info{align-items:flex-start;flex-direction:column;gap:4px}.efficiency-stat{justify-content:space-between}}@media (max-width:480px){.overview-stats{grid-template-columns:1fr}.efficiency-header{align-items:flex-start;flex-direction:column;gap:8px}}.budget-summary,.summary-cards{margin-bottom:24px}.summary-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}@media (min-width:1200px){.summary-cards{gap:24px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:40px}}.summary-card{align-items:center;background:var(--card-bg);border-radius:8px;box-shadow:var(--shadow-lg);display:flex;gap:16px;padding:20px;transition:transform .2s}@media (min-width:1200px){.summary-card{border-radius:12px;gap:20px;padding:28px 32px}}.summary-card:hover{transform:translateY(-2px)}.card-icon{align-items:center;border-radius:50%;color:#fff;display:flex;height:48px;justify-content:center;width:48px}.summary-card.income .card-icon{background:#28a745}.summary-card.expenses .card-icon{background:#dc3545}.summary-card.balance.positive .card-icon{background:#17a2b8}.summary-card.balance.negative .card-icon{background:#fd7e14}.summary-card.budget .card-icon{background:#6f42c1}.card-content h3{color:var(--text-muted);font-size:14px;font-weight:500;letter-spacing:.5px;margin:0 0 8px;text-transform:uppercase}.card-content .amount{color:var(--text-primary);font-size:24px;font-weight:700;margin:0}.summary-card.balance.negative .amount{color:#dc3545}.budget-progress{background:var(--card-bg);border-radius:8px;box-shadow:var(--shadow-lg);padding:20px}.progress-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.progress-header h4{color:var(--text-primary);font-size:30px;margin:0}.header-actions{align-items:center!important;display:flex!important;gap:12px!important;position:relative!important;z-index:999!important}.progress-percentage{color:var(--text-primary);font-size:16px;font-weight:600}.edit-budget-btn-header{align-items:center!important;animation:pulse-button 2s infinite!important;background:#ff6b35!important;border:3px solid #ff6b35!important;border-radius:12px!important;box-shadow:0 4px 16px #ff6b3580!important;color:#fff!important;cursor:pointer!important;display:flex!important;font-size:14px!important;font-weight:700!important;gap:8px!important;height:44px!important;justify-content:center!important;letter-spacing:1px!important;min-width:160px!important;opacity:1!important;padding:12px 20px!important;position:relative!important;text-transform:uppercase!important;transition:all .3s ease!important;visibility:visible!important;z-index:1000!important}.edit-budget-btn-header:hover{animation:none!important;background:#e55a2b!important;border-color:#e55a2b!important;box-shadow:0 6px 20px #ff6b35b3!important;transform:translateY(-3px) scale(1.05)!important}@keyframes pulse{0%{box-shadow:0 6px 20px #f449;transform:scale(1)}50%{box-shadow:0 8px 30px #ff4444e6;transform:scale(1.05)}to{box-shadow:0 6px 20px #f449;transform:scale(1)}}@keyframes pulse-button{0%{box-shadow:0 4px 16px #ff6b3580;transform:scale(1)}50%{box-shadow:0 6px 24px #ff6b35cc;transform:scale(1.02)}to{box-shadow:0 4px 16px #ff6b3580;transform:scale(1)}}.progress-percentage{color:#007bff;font-size:18px;font-weight:700}.progress-bar{background:var(--bg-secondary);height:12px;margin-bottom:8px}.progress-bar,.progress-fill{border-radius:6px}.progress-fill.normal{background:#28a745}.progress-fill.warning{background:#ffc107}.progress-fill.over-budget{background:#dc3545}.progress-info{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:8px;color:var(--text-primary);font-size:14px;margin-top:12px;min-height:24px;padding:12px;width:100%}.budget-header{align-items:center;display:flex;gap:8px;justify-content:space-between}.edit-budget-btn{align-items:center!important;background:#3b82f6!important;border:2px solid #3b82f6!important;border-radius:8px!important;box-shadow:0 2px 8px #3b82f64d!important;color:#fff!important;cursor:pointer!important;display:flex!important;font-size:12px!important;font-weight:500!important;gap:6px!important;justify-content:center!important;opacity:1!important;padding:8px 12px!important;transition:all .2s ease!important;visibility:visible!important}.edit-budget-btn:hover{background:#2563eb!important;border-color:#2563eb!important;box-shadow:0 4px 12px #3b82f666!important;transform:translateY(-1px)!important}.edit-budget-btn:before{content:"Modifier"!important;font-size:12px!important}.edit-budget-btn-inline{align-items:center!important;background:#f59e0b!important;border:2px solid #f59e0b!important;border-radius:6px!important;box-shadow:0 2px 6px #f59e0b4d!important;cursor:pointer!important;display:inline-flex!important;font-size:11px!important;font-weight:500!important;gap:4px!important;justify-content:center!important;margin-left:12px!important;padding:6px 10px!important;transition:all .2s ease!important}.edit-budget-btn-inline:hover{background:#d97706!important;border-color:#d97706!important;box-shadow:0 3px 10px #f59e0b66!important;transform:translateY(-1px)!important}.edit-budget-btn-inline:before{content:"✏️"!important;margin-right:2px!important}.budget-display{align-items:center;color:#000!important;display:flex!important;font-size:14px!important;gap:8px;opacity:1!important;visibility:visible!important}.budget-edit{align-items:center;display:flex;gap:8px}.budget-input{border:1px solid var(--border-primary);border-radius:6px;font-size:14px;padding:4px 8px;width:100px}.budget-input:focus{background:var(--input-bg-focus);box-shadow:var(--shadow-focus)}.edit-actions{display:flex;gap:4px}.cancel-btn,.save-btn{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:4px;color:#fff;cursor:pointer;display:flex;justify-content:center;padding:4px;transition:all .2s ease}.save-btn:hover{background:#22c55e4d;border-color:#22c55e80}.cancel-btn:hover{background:#ef44444d;border-color:#ef444480}.budget-amount-container{align-items:center;display:flex!important;gap:6px}.budget-amount-container,.budget-amount-container span{color:#fffc!important;opacity:1!important;visibility:visible!important}.budget-amount-container span{font-size:14px!important}.edit-budget-btn-inline{align-items:center;background:#fff3!important;border:1px solid #fff6!important;border-radius:4px;color:#fff!important;cursor:pointer;display:flex!important;justify-content:center;min-height:20px;min-width:20px;opacity:1!important;padding:4px 6px!important;transition:all .2s ease;visibility:visible!important}.edit-budget-btn-inline:hover{background:#fff3;opacity:1;transform:scale(1.1)}.over-budget-text{color:#dc3545;font-weight:600}@media (max-width:768px){.summary-cards{grid-template-columns:1fr}.progress-header{gap:8px}.progress-header,.progress-info{align-items:flex-start;flex-direction:column}.progress-info{gap:4px}}.marketing-costs{padding:0}.costs-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.costs-header h3{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:1.5rem;font-weight:700;margin:0}.total-cost{background:#22c55e1a;border:1px solid #22c55e33;border-radius:12px;color:#22c55e;font-size:1.25rem;font-weight:600;padding:8px 16px}.cost-tabs{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffb3;border:1px solid #ffffff4d;border-radius:16px;display:flex;gap:8px;margin-bottom:24px;padding:8px}@media (min-width:1200px){.cost-tabs{border-radius:20px;gap:12px;margin-bottom:32px;padding:12px}}.tab-btn{border-radius:12px;color:#6b7280;flex:1 1;font-size:14px;justify-content:center}@media (min-width:1200px){.tab-btn{border-radius:16px;font-size:15px;gap:10px;padding:16px 24px}}.tab-btn:hover{background:#667eea1a;color:#667eea}.tab-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 12px #667eea4d}.costs-content{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffffe6;border:1px solid #fff3;border-radius:20px;box-shadow:0 10px 30px #0000001a;padding:24px}@media (min-width:1200px){.costs-content{border-radius:24px;padding:32px 40px}}.costs-actions{margin-bottom:20px}.add-cost-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:16px;box-shadow:0 8px 20px #667eea4d;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:14px 20px;transition:all .3s ease}.add-cost-btn:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);box-shadow:0 12px 30px #667eea66;transform:translateY(-2px)}.cost-form{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:2px solid #3b82f633;border-radius:16px;box-shadow:0 8px 32px #0000001a;margin-bottom:24px;padding:24px;width:100%}.cost-form h4{color:#1f2937;font-size:1.125rem;font-weight:600;margin:0 0 20px}.form-row{display:flex;gap:12px;margin-bottom:16px}.form-row .input-with-suffix,.form-row input,.form-row select{flex:1 1}.input-with-suffix{align-items:center;display:flex;position:relative}.input-with-suffix input{margin-bottom:0;padding-right:40px;width:100%}.input-suffix{align-items:center;color:#6b7280;display:flex;font-size:15px;font-weight:600;height:100%;line-height:1;pointer-events:none;position:absolute;right:16px}.cost-form input,.cost-form select,.cost-form textarea{background:#ffffffe6;border:2px solid #3b82f633;border-radius:12px;color:#1f2937;font-size:15px;font-weight:500;margin-bottom:16px;padding:14px 16px;transition:all .3s ease;width:100%}.cost-form input:focus,.cost-form select:focus,.cost-form textarea:focus{background:#fff;border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f626;outline:none;transform:translateY(-1px)}.cost-form textarea{min-height:80px;resize:vertical}.digital-details,.impression-details,.subscription-details{background:#667eea0d;border:1px solid #667eea1a;border-radius:12px;margin:16px 0;padding:16px}.form-actions{gap:16px;margin-top:24px}.save-btn{background:linear-gradient(135deg,#10b981,#059669);font-size:15px;font-weight:600;gap:8px;justify-content:center;min-width:100px;padding:12px 24px;transition:all .3s ease}.save-btn:hover{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 8px 24px #10b98166;transform:translateY(-2px)}.cancel-btn{align-items:center;background:linear-gradient(135deg,#ef4444,#dc2626);border:none;display:flex;font-size:15px;font-weight:600;gap:8px;justify-content:center;min-width:100px;padding:12px 24px;transition:all .3s ease}.cancel-btn:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 8px 24px #ef444466;transform:translateY(-2px)}.costs-list{display:flex;flex-direction:column;gap:16px}.cost-item{align-items:flex-start;background:#fffffff2;border:2px solid #3b82f61a;border-radius:16px;box-shadow:0 4px 16px #00000014;padding:20px;transition:all .3s ease;width:100%}.cost-item:hover{background:#fff;border-color:#3b82f64d;box-shadow:0 8px 24px #0000001f;transform:translateY(-2px)}.cost-info{flex:1 1}.cost-info h4{color:#1f2937;font-size:1.1rem;font-weight:700;margin:0 0 8px}.cost-info p{color:#6b7280;font-size:.9rem;font-weight:500;margin:0 0 8px}.cost-details{color:#9ca3af;font-size:.85rem;font-weight:500}.cost-amount{color:#059669;font-size:1.3rem;font-weight:800;margin-right:20px;text-shadow:0 1px 2px #0000001a}.cost-actions{align-items:center;display:flex;gap:12px}.delete-btn,.edit-btn{align-items:center;border:none;border-radius:12px;box-shadow:0 2px 8px #0000001a;cursor:pointer;display:flex;justify-content:center;min-height:44px;min-width:44px;padding:10px;transition:all .3s ease}.edit-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.edit-btn:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 6px 16px #3b82f666;transform:translateY(-2px)}.delete-btn{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.delete-btn:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 6px 16px #ef444466;transform:translateY(-2px)}.loading{padding:40px}.error{background:#ef44441a;border:1px solid #ef444433;border-radius:12px;padding:16px}@media (max-width:768px){.costs-header{align-items:stretch;gap:16px}.cost-item,.cost-tabs,.costs-header,.form-row{flex-direction:column}.cost-item{align-items:stretch;gap:16px}.cost-amount{margin:0;text-align:center}.cost-actions{justify-content:center}}.budget-categories{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--card-bg);border:1px solid var(--border-primary);border-radius:16px;box-shadow:var(--shadow-lg);margin-top:20px;padding:24px}.categories-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px}.categories-header h3{color:var(--text-primary);font-size:20px;font-weight:600;margin:0}.budget-overview{display:flex;flex-wrap:wrap;gap:24px}.overview-item{display:flex;flex-direction:column;gap:4px}.overview-item .label{color:var(--text-muted);font-size:12px;letter-spacing:.5px;text-transform:uppercase}.overview-item .value{color:var(--text-primary);font-size:16px;font-weight:600}.overview-item .value.negative{color:#ef4444}.overview-item .value.positive{color:#10b981}.categories-content{display:block;width:100%}.categories-list{gap:20px;width:100%}.category-item{background:var(--card-bg);border:2px solid var(--border-primary);box-shadow:var(--shadow-lg);margin-bottom:12px;overflow:hidden;padding:16px;position:relative}.category-header{height:auto;margin-bottom:8px}.category-info{gap:20px;justify-content:flex-start;width:100%}.category-color{box-shadow:0 2px 8px #00000026;flex-shrink:0;height:18px;width:18px}.category-name{font-size:18px;letter-spacing:-.02em;text-shadow:0 1px 2px #0000004d}.category-amounts{align-items:center;color:var(--text-muted);display:flex;font-size:16px;font-weight:500;gap:12px}.spent-amount{font-weight:700}.allocated-amount,.spent-amount{color:var(--text-primary);font-size:16px;text-shadow:0 1px 2px #0000004d}.allocated-amount{font-weight:600}.allocated-amount.clickable{border-radius:4px;cursor:pointer;padding:2px 4px}.edit-category-btn{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:8px;color:var(--text-primary);cursor:pointer;display:flex;font-weight:500;justify-content:center;margin-left:16px;padding:8px 10px}.edit-amount-container{align-items:center;display:flex;gap:12px}.edit-amount-input{background:#0000;border:none;border-radius:0;color:var(--text-primary);font-size:24px;font-weight:600;outline:none;padding:0;text-align:left;text-shadow:0 1px 2px #0000004d;width:120px}.edit-amount-input:focus{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 4px 12px #00000026;transition:all .2s ease}.cancel-edit-btn,.save-edit-btn{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:6px;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;font-weight:500;justify-content:center;padding:6px 8px}.category-progress{background:var(--bg-secondary)!important;border:1px solid var(--border-primary)!important;height:24px;width:100%}.progress-background{background:#0000001a;border-radius:16px;height:100%;left:0;position:absolute;top:0;width:100%;z-index:1}.progress-fill{border-radius:15px;left:0;min-width:2px;position:absolute;top:0;transition:width .5s cubic-bezier(.4,0,.2,1);z-index:2}.progress-info{align-items:center;display:flex;font-size:12px;justify-content:space-between}.percentage{font-size:.875rem;font-weight:600}.categories-charts{display:flex;flex-direction:column;gap:24px}.chart-container{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:12px;padding:16px}.chart-container h4{font-size:16px;font-size:14px;font-weight:600;font-weight:500;margin:16px 0;padding:12px}.category-percentage,.chart-container h4{border-radius:8px;color:var(--text-primary);text-align:center}.category-percentage{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:var(--bg-secondary);display:flex;font-size:16px;font-weight:700;gap:4px;justify-content:center;min-width:60px;padding:6px 10px;position:absolute;right:16px;text-shadow:0 1px 2px #0000004d;top:50%;transform:translateY(-50%)}.budget-alert{align-items:center;background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;color:#ef4444;display:flex;font-size:14px;font-weight:500;gap:8px;margin-top:16px;padding:12px}.pie-chart-custom{gap:8px}.pie-chart-custom,.pie-segment{display:flex;flex-direction:column}.pie-segment{gap:4px}.segment-bar{border-radius:10px;height:20px;transition:all .3s ease}.segment-info{align-items:center;display:flex;font-size:12px;justify-content:space-between}.segment-name{color:var(--text-primary);font-weight:500}.segment-value{color:var(--text-secondary)}.bar-chart-custom{gap:12px}.bar-chart-custom,.bar-item{display:flex;flex-direction:column}.bar-item{gap:6px}.bar-label{color:var(--text-primary);font-size:12px;font-weight:500}.bar-container{background:#ffffff1a;border-radius:12px;height:24px;overflow:hidden}.bar-allocated{opacity:.7}.bar-allocated,.bar-spent{border-radius:12px;height:100%;left:0;position:absolute;top:0}.bar-values{display:flex;font-size:11px;justify-content:space-between}.allocated-value,.spent-value{font-weight:500}.unified-bar-chart{display:flex;flex-direction:column;gap:20px}.unified-bar-item{display:flex;flex-direction:column;gap:8px}.bar-category-label{color:#000;font-size:14px;font-weight:600;margin-bottom:4px}.bar-category-info{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.bar-values-inline{align-items:center;display:flex;font-size:12px;font-weight:600;gap:4px}.separator{color:#00000080;margin:0 2px}.single-bar-container{background:#ffffff1a;border-radius:12px;height:24px;overflow:hidden;position:relative}.bar-background{left:0;position:absolute;top:0;transition:all .3s ease;z-index:1}.bar-background,.progress-bar{border-radius:12px;height:100%}.progress-bar{box-shadow:0 2px 8px #0000001a;position:relative;transition:width .5s cubic-bezier(.4,0,.2,1)}.overspent-indicator{align-items:center;color:#ef4444;display:flex;font-size:11px;font-weight:500;gap:4px;margin-top:4px}.chart-legend{border-top:1px solid #ffffff1a;margin-top:16px;padding-top:12px}.legend-item{color:#000c;font-size:12px}.legend-color.allocated{background:#8b5cf699}.legend-color.spent{background:#8b5cf6}.category-progress-container{align-items:center;display:flex!important;gap:16px;margin-top:16px;width:100%}.category-progress{background:#e2e8f0!important;border:1px solid #cbd5e1!important;border-radius:16px;display:block!important;flex:1 1!important;height:24px!important;overflow:hidden;position:relative;width:100%!important}@media (max-width:768px){.budget-categories{padding:16px}.categories-header{align-items:flex-start;flex-direction:column}.budget-overview{gap:16px}.category-item{border-radius:12px;margin-bottom:8px;padding:12px}.category-header{flex-direction:row;height:auto;margin-bottom:8px}.category-header,.category-info{align-items:center;gap:12px}.category-name{font-size:16px;font-weight:600}.category-amounts{font-size:14px;gap:8px}.spent-amount{font-size:16px;font-weight:600}.allocated-amount{font-size:14px;font-weight:500}.category-percentage{font-size:14px;margin-left:auto;min-width:50px;padding:4px 8px;position:relative;right:0;top:0;transform:none}.category-progress-container{margin-top:8px}.category-progress{border-radius:3px;height:4px!important}.edit-category-btn{margin-left:8px;padding:6px 8px}}.budget-insights{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:16px;margin-top:20px;padding:24px}.budget-insights h3{color:#000;font-size:20px;font-weight:600;margin:0 0 20px}.insights-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:24px}.insight-card{align-items:flex-start;border:1px solid #ffffff1a;border-radius:12px;display:flex;gap:12px;padding:16px;transition:all .2s ease}.insight-card.success{background:#10b9811a;border-color:#10b9814d}.insight-card.warning{background:#ef44441a;border-color:#ef44444d}.insight-card.caution{background:#f59e0b1a;border-color:#f59e0b4d}.insight-card.info{background:#3b82f61a;border-color:#3b82f64d}.insight-icon{align-items:center;border-radius:8px;display:flex;flex-shrink:0;justify-content:center;padding:8px}.insight-card.success .insight-icon{background:#10b98133;color:#10b981}.insight-card.warning .insight-icon{background:#ef444433;color:#ef4444}.insight-card.caution .insight-icon{background:#f59e0b33;color:#f59e0b}.insight-card.info .insight-icon{background:#3b82f633;color:#3b82f6}.insight-content{flex:1 1}.insight-content h4{color:#000;font-size:14px;font-weight:600;margin:0 0 4px}.insight-content p{color:#000c;font-size:13px;line-height:1.4;margin:0}.recommendations{margin-bottom:24px}.recommendations h4{color:#000;font-size:16px;font-weight:600;margin:0 0 12px}.recommendations-list{display:flex;flex-direction:column;gap:8px}.recommendation-item{align-items:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;color:#000000e6;display:flex;font-size:13px;gap:8px;padding:8px 12px}.recommendation-item svg{color:#f59e0b;flex-shrink:0}.quick-stats{grid-gap:16px;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));padding:16px}.stat-label{text-align:center}@media (max-width:768px){.budget-insights{padding:16px}.insights-grid,.quick-stats{grid-template-columns:1fr}.insight-card{padding:12px}}.roi-tracker{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:24px;padding:20px}.roi-tracker h3{color:#333;font-size:18px;font-weight:600;margin:0 0 20px}.roi-summary{margin-bottom:24px}.roi-summary-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;gap:16px;padding:20px}.roi-icon,.roi-summary-card{align-items:center;display:flex}.roi-icon{background:#fff3;border-radius:50%;height:48px;justify-content:center;width:48px}.roi-content h4{font-size:14px;letter-spacing:.5px;margin:0 0 8px;opacity:.9;text-transform:uppercase}.roi-value{font-size:32px;font-weight:700;margin:0 0 4px}.roi-value.positive{color:#4ade80}.roi-value.negative{color:#f87171}.roi-details{font-size:14px;opacity:.8}.roi-categories{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:24px}.roi-category-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:16px}.roi-category-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.category-info{gap:8px}.category-indicator{border-radius:50%;height:12px;width:12px}.category-info h5{color:#333;font-size:16px;font-weight:600;margin:0}.roi-percentage{align-items:center;display:flex;font-size:18px;font-weight:700;gap:4px}.roi-percentage.positive{color:#28a745}.roi-percentage.negative{color:#dc3545}.roi-metrics{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr;margin-bottom:16px}.metric{justify-content:space-between;padding:8px 0}.metric-label{color:#666}.metric-value{font-size:14px;font-weight:600}.metric-value.investment{color:#dc3545}.metric-value.profit,.metric-value.revenue{color:#28a745}.metric-value.loss{color:#dc3545}.roi-progress{margin-top:12px}.progress-bar{background:#e9ecef;height:6px}.progress-bar,.progress-fill{border-radius:3px}.roi-insights{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;padding:16px}.roi-insights h4{color:#333;font-size:16px;font-weight:600;margin:0 0 12px}.insights-list{display:flex;flex-direction:column;gap:8px}.insight{align-items:center;border-radius:6px;display:flex;font-size:14px;gap:8px;padding:8px 12px}.insight.positive{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.insight.warning{background:#fff3cd;border:1px solid #ffeaa7;color:#856404}@media (max-width:768px){.roi-categories{grid-template-columns:1fr}.roi-summary-card{flex-direction:column;text-align:center}.roi-category-header{align-items:flex-start;flex-direction:column;gap:8px}}.transaction-list{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px}.transaction-list h3{color:#333;font-size:18px;font-weight:600;margin:0 0 20px}.transaction-list-empty{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;color:#666;padding:40px 20px;text-align:center}.transaction-list-empty p:first-child{font-size:18px;font-weight:500;margin-bottom:8px}.transaction-list-empty p:last-child{font-size:14px;margin:0}.transactions{display:flex;flex-direction:column;gap:12px}.transaction-item{background:#f8f9fa;border-left:4px solid;border-radius:8px;gap:16px;padding:16px;transition:all .2s}.transaction-item:hover{background:#e9ecef;transform:translateX(4px)}.transaction-item.income{border-left-color:#28a745}.transaction-item.expense{border-left-color:#dc3545}.transaction-icon{align-items:center;border-radius:50%;color:#fff;display:flex;height:40px;justify-content:center;width:40px}.transaction-item.income .transaction-icon{background:#28a745}.transaction-item.expense .transaction-icon{background:#dc3545}.transaction-details{min-width:0}.transaction-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:4px}.transaction-description{color:#333;font-size:16px}.transaction-amount{font-size:16px;font-weight:700}.transaction-amount.income{color:#28a745}.transaction-amount.expense{color:#dc3545}.transaction-meta{align-items:center;color:#666;display:flex;font-size:14px;justify-content:space-between}.transaction-category{background:#e9ecef;border-radius:12px;font-size:12px;font-weight:500;padding:2px 8px}.delete-button{background:none;border:none;border-radius:4px;color:#dc3545;cursor:pointer;opacity:.7;padding:8px;transition:all .2s}.delete-button:hover{background:#f8d7da;opacity:1}@media (max-width:768px){.transaction-item{gap:12px;padding:12px}.transaction-icon{height:32px;width:32px}.transaction-header,.transaction-meta{align-items:flex-start;flex-direction:column;gap:4px}.transaction-amount,.transaction-description{font-size:14px}}.transaction-type-selector{display:flex;gap:8px;margin-top:8px}.type-button{background:#fff;border:2px solid #dee2e6;border-radius:6px;color:#666;cursor:pointer;flex:1 1;font-weight:500;padding:12px 16px;transition:all .2s}.type-button:hover{border-color:#adb5bd}.type-button.active{color:#fff;font-weight:600}.type-button.active.expense{background:#dc3545;border-color:#dc3545}.type-button.active.income{background:#28a745;border-color:#28a745}.form-group select{background:#fff;border:1px solid #dee2e6;border-radius:6px;box-sizing:border-box;cursor:pointer;font-size:14px;padding:10px 12px;transition:border-color .2s;width:100%}.form-group select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.modal-actions .button{align-items:center;display:flex;gap:8px}.marketing-breakdown{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:16px;margin-top:16px;padding:20px}.marketing-breakdown h4{color:#000;font-size:16px;font-weight:600;margin:0 0 16px}.breakdown-items{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.breakdown-item{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;flex-direction:column;gap:8px;padding:16px}.breakdown-item-main{align-items:center;display:flex;gap:12px}.item-icon{align-items:center;border-radius:10px;color:#fff;display:flex;height:40px;justify-content:center;width:40px}.item-icon.impressions{background:linear-gradient(135deg,#667eea,#764ba2)}.item-icon.digital{background:linear-gradient(135deg,#f093fb,#f5576c)}.item-icon.subscriptions{background:linear-gradient(135deg,#4facfe,#00f2fe)}.item-content{align-items:center;display:flex;flex:1 1;justify-content:space-between;min-height:24px}.item-label{color:#000!important;font-size:14px;font-weight:500;min-width:120px;opacity:1!important;visibility:visible!important}.item-details{align-items:flex-end;display:flex;flex-direction:column;gap:2px}.item-amount{color:#000!important;font-size:14px;font-weight:600}.item-amount,.item-percentage{opacity:1!important;visibility:visible!important}.item-percentage{color:#000000b3!important;font-size:12px}.item-description{color:#0009;font-size:12px;font-style:italic;margin-left:0;margin-top:4px}.breakdown-total{background:#ffffff1a;border:1px solid #fff3;border-radius:12px;padding:12px;text-align:center}.breakdown-total span{color:#000;font-size:16px;font-weight:600}@media (max-width:768px){.marketing-breakdown{padding:16px}.breakdown-item{padding:10px}.item-icon{height:36px;width:36px}.item-amount,.item-label{font-size:13px}.item-percentage{font-size:11px}}.transactions-by-category{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:16px;padding:24px}.category-summary{border-bottom:1px solid #ffffff1a;margin-bottom:24px;padding-bottom:16px}.summary-stats{display:flex;flex-wrap:wrap;gap:32px}.stat-item{gap:4px}.stat-label{color:#000000b3}.stat-value{color:#000;font-size:18px;font-weight:600}.category-group{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;overflow:hidden;transition:all .2s ease}.category-group:hover{background:#ffffff14;border-color:#fff3}.category-header{cursor:pointer;padding:16px 20px;transition:all .2s ease}.category-header:hover{background:#ffffff0d}.category-toggle{color:#000000b3;transition:all .2s ease}.category-details{display:flex;flex-direction:column;gap:2px}.category-name{color:#000;font-size:16px;font-weight:600;margin:0}.transaction-count{color:#0009;font-size:12px}.category-totals{align-items:center;display:flex;flex-wrap:wrap;gap:16px}.total-item{align-items:flex-end;display:flex;flex-direction:column;gap:2px}.total-label{font-size:10px;font-weight:500;letter-spacing:.5px;opacity:.7;text-transform:uppercase}.total-amount{font-size:14px}.total-item.income .total-amount,.total-item.income .total-label{color:#10b981}.total-item.expense .total-amount,.total-item.expense .total-label{color:#ef4444}.total-item.net.positive .total-amount,.total-item.net.positive .total-label{color:#10b981}.total-item.net.negative .total-amount,.total-item.net.negative .total-label{color:#ef4444}.category-transactions{background:#ffffff05;border-top:1px solid #ffffff1a}.transaction-item{align-items:center;border-bottom:1px solid #ffffff0d;display:flex;justify-content:space-between;padding:12px 20px;transition:all .2s ease}.transaction-item:last-child{border-bottom:none}.transaction-item:hover{background:#ffffff0d}.transaction-info{gap:16px;justify-content:space-between}.transaction-info,.transaction-main{align-items:center;display:flex;flex:1 1}.transaction-main{gap:12px}.transaction-type,.type-indicator{align-items:center;display:flex;justify-content:center}.type-indicator{background:#ffffff1a;border-radius:50%;font-size:14px;font-weight:700;height:24px;width:24px}.type-indicator.income{background:#10b9811a}.type-indicator.expense{background:#ef44441a}.transaction-details{display:flex;flex:1 1;flex-direction:column;gap:2px}.transaction-description{color:#000;font-size:14px;font-weight:500}.transaction-date{color:#0009;font-size:12px}.transaction-amount{align-items:center;display:flex}.amount{font-size:14px;font-weight:600}.delete-transaction-btn{align-items:center;background:#ef44441a;border:1px solid #ef444433;border-radius:6px;color:#ef4444;cursor:pointer;display:flex;justify-content:center;margin-left:12px;padding:6px;transition:all .2s ease}.delete-transaction-btn:hover{background:#ef444433;border-color:#ef444466;transform:scale(1.05)}.no-transactions{color:#0009;font-style:italic;padding:40px;text-align:center}@media (max-width:768px){.transactions-by-category{padding:16px}.category-header{align-items:flex-start;flex-direction:column;gap:12px;padding:12px 16px}.category-totals{align-self:stretch;justify-content:space-between}.transaction-item{padding:10px 16px}.transaction-info,.transaction-main{align-items:flex-start;flex-direction:column;gap:8px}.summary-stats{gap:16px}}.tabbed-transactions{width:100%}.transaction-tabs{background:#ffffff0d;border-radius:8px;display:flex;gap:2px;margin-bottom:16px;padding:4px}.tab-button{border-radius:6px;color:#000000b3;font-size:14px;padding:10px 16px}.tab-button:hover{background:#ffffff1a;color:#000}.tab-button.active{background:#ffffffe6;box-shadow:0 2px 4px #0000001a;color:#000}@media (max-width:768px){.transaction-tabs{flex-direction:column;gap:4px}.tab-button{padding:12px 16px;text-align:left}}.budget-page{background:var(--bg-primary);margin:0 auto;max-width:1600px;min-height:100vh;padding:1.5rem}.page-header h1{font-size:2rem;font-weight:700;margin:0}.budget-tabs{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:12px;box-shadow:var(--shadow-sm);display:flex;gap:.25rem;margin-bottom:2rem;overflow-x:auto;padding:.5rem}.tab-button{background:#0000;border-radius:8px;color:var(--text-secondary);flex:1 1;font-size:.875rem;min-width:140px;padding:.75rem 1rem;text-align:center;transition:all .2s ease;white-space:nowrap}.tab-button:hover{background:var(--bg-tertiary);color:var(--text-primary)}.tab-button.active{background:var(--bg-primary);border:1px solid var(--border-primary);box-shadow:var(--shadow-sm);color:var(--text-primary);font-weight:600}.budget-content{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:16px;box-shadow:var(--shadow-md);min-height:500px;padding:2rem}.tab-content{width:100%}.tab-header{display:flex;justify-content:flex-end;margin-bottom:1.5rem}.btn-primary{background:linear-gradient(135deg,#10b981,#059669);display:inline-flex;font-size:.875rem;text-decoration:none}.btn-primary:hover{box-shadow:0 4px 12px #10b98166}@media (max-width:1024px){.budget-tabs{flex-wrap:wrap}.tab-button{flex-basis:calc(50% - 0.125rem);flex-grow:1;flex-shrink:1;min-width:120px}}@media (max-width:768px){.budget-page{padding:1rem}.budget-tabs{flex-wrap:wrap;gap:.25rem;overflow:visible;padding:.5rem}.tab-button{flex-basis:calc(33.333% - 0.167rem);flex-grow:1;flex-shrink:1;font-size:.7rem;line-height:1.2;min-width:0;overflow:hidden;padding:.6rem .3rem;text-overflow:ellipsis;white-space:nowrap}.budget-content{padding:1.5rem}}@media (max-width:480px){.page-header h1{font-size:1.5rem}.budget-tabs{flex-wrap:wrap;padding:.25rem}.tab-button{flex-basis:calc(33.333% - 0.167rem);flex-grow:1;flex-shrink:1;font-size:.65rem;line-height:1.2;min-width:0;overflow:hidden;padding:.5rem .2rem;text-overflow:ellipsis;white-space:nowrap}.budget-content{padding:1rem}.tab-header{justify-content:center}}.calendar-container{background:var(--calendar-bg);border-radius:8px;box-shadow:var(--shadow-md);display:flex;flex-direction:column;max-height:calc(100vh - 140px);min-height:500px;overflow:hidden;padding:20px}.calendar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.calendar-title{color:var(--text-primary);font-size:20px;font-weight:600}.nav-button{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:6px;color:var(--text-secondary);cursor:pointer;display:flex;justify-content:center;padding:8px;transition:all .2s}.nav-button:hover{background:var(--calendar-hover);border-color:var(--border-secondary)}.calendar-grid{grid-gap:1px;background:var(--border-primary);border-radius:6px;display:grid;flex:1 1;gap:1px;grid-template-columns:repeat(7,1fr);min-height:500px;overflow:hidden}.day-header{background:var(--calendar-header);color:var(--text-muted);font-size:14px;font-weight:600;padding:12px 8px;text-align:center}.calendar-day{background:var(--calendar-bg);color:var(--text-primary);cursor:pointer;display:flex;flex-direction:column;min-height:80px;padding:12px;position:relative;transition:background-color .2s}.calendar-day:hover{background:var(--calendar-hover)}.calendar-day.other-month{background:var(--bg-secondary);color:var(--text-light)}.calendar-day.today{background:var(--calendar-today);border:2px solid var(--border-focus)}.calendar-day.today .day-number{color:var(--border-focus);font-weight:600}.day-number{font-size:14px;font-weight:500;margin-bottom:4px}.events-indicator{display:flex;flex:1 1;flex-direction:column;gap:2px}.event-indicator{background:var(--event-bg);border-radius:3px;color:var(--event-text);cursor:pointer;font-size:10px;overflow:hidden;padding:2px 4px;text-overflow:ellipsis;transition:background-color .2s;white-space:nowrap}.event-indicator:hover{background:#0056b3}.event-dot{background:var(--event-bg);border-radius:3px;color:var(--event-text);font-size:10px;overflow:hidden;padding:2px 4px;text-overflow:ellipsis;white-space:nowrap}.more-events{color:var(--text-muted);font-size:10px;font-weight:500}.add-event-btn{align-items:center;background:#28a745;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:20px;justify-content:center;opacity:0;position:absolute;right:4px;top:4px;transition:opacity .2s;width:20px}.calendar-day:hover .add-event-btn{opacity:1}.add-event-btn:hover{background:#218838}.view-toggle{background:#f8f9fa;border-radius:6px;flex-shrink:0;padding:4px}.view-btn,.view-toggle{gap:4px;min-width:-webkit-fit-content;min-width:fit-content}.view-btn{background:#0000;border-radius:4px;color:#6c757d;display:flex;font-size:13px;font-weight:500;padding:6px 10px;transition:all .2s;white-space:nowrap}.view-btn:hover{background:#e9ecef;color:#495057}.view-btn.active{background:#007bff}.day-view{padding:20px}.day-view-header{align-items:center;border-bottom:2px solid #e9ecef;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.day-view-header h3{color:#495057;font-size:24px;font-weight:600;margin:0}.add-event-btn-day{align-items:center;background:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 16px;transition:background .2s}.add-event-btn-day:hover{background:#218838}.day-view-content{max-height:calc(100vh - 200px);overflow-y:auto}.time-grid{background:#fff;position:relative}.hour-row{border-bottom:1px solid #e9ecef;display:flex;height:60px;position:relative}.hour-label{align-items:flex-start;background:#f8f9fa;border-right:1px solid #e9ecef;color:#6c757d;display:flex;font-size:12px;font-weight:500;justify-content:center;padding:8px;width:60px}.hour-content{display:flex;flex:1 1;flex-direction:column;position:relative}.quarter-slot{cursor:pointer;height:15px;position:relative;transition:background-color .2s}.quarter-slot:hover{background-color:#f8f9fa}.quarter-slot.drag-target{background-color:#e3f2fd;border-left:3px solid #2196f3}.quarter-slot.hour-start{border-top:1px solid #dee2e6}.quarter-line{background:#f1f3f4;height:1px}.events-overlay,.quarter-line{left:0;position:absolute;right:0;top:0}.events-overlay{bottom:0;pointer-events:none}.day-event-positioned{background:#007bff;border:2px solid #ffffff4d;border-radius:4px;box-shadow:0 2px 4px #00000026;color:#fff;cursor:grab;font-size:12px;min-height:24px;overflow:hidden;padding:6px 8px;pointer-events:auto;transition:all .2s;-webkit-user-select:none;user-select:none}.day-event-positioned:hover{border-color:#ffffff80;box-shadow:0 4px 12px #007bff66;cursor:grab;transform:translateY(-2px)}.day-event-positioned:active{box-shadow:0 2px 8px #007bff99;cursor:grabbing;transform:translateY(0)}.day-event-positioned.dragging{border-color:#fff;cursor:grabbing;opacity:.8;z-index:100}.day-event-title{font-weight:600;line-height:1.2;margin-bottom:2px}.day-event-time,.day-event-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.day-event-time{font-size:10px;line-height:1;opacity:.9}.drag-handle{cursor:grab;font-size:10px;opacity:.6;position:absolute;right:4px;top:50%;transform:translateY(-50%)}.drag-handle:active{cursor:grabbing}.day-event-positioned[style*="height: 20px"] .day-event-time,.day-event-positioned[style*="height: 20px"] .drag-handle,.day-event-positioned[style*="height: 30px"] .day-event-time,.day-event-positioned[style*="height: 30px"] .drag-handle{display:none}@media (max-width:1024px){.calendar-container{max-height:calc(100vh - 100px);padding:12px}.calendar-header{flex-wrap:wrap;gap:12px}.calendar-title{flex:1 1;font-size:18px;min-width:200px}.view-toggle{justify-content:center;order:3;width:100%}.view-btn{font-size:12px;padding:8px 12px}}@media (max-width:768px){.calendar-container{max-height:calc(100vh - 80px);padding:8px}.calendar-header{align-items:stretch;flex-direction:column;gap:12px}.calendar-title{font-size:16px;text-align:center}.nav-button{padding:10px}.view-toggle{justify-content:center}.calendar-grid{gap:.5px;min-height:400px}.day-header{font-size:12px;padding:8px 4px}.calendar-day{min-height:50px;padding:6px 4px}.day-number{font-size:12px;margin-bottom:2px}.event-indicator{font-size:9px;margin-bottom:1px;padding:1px 3px}.more-events{font-size:8px}.add-event-btn{height:16px;right:2px;top:2px;width:16px}.day-view-header{align-items:stretch;flex-direction:column;gap:12px}.add-event-btn-day{justify-content:center}.hour-label{width:50px}.day-event-title,.hour-label{font-size:11px}.day-event-positioned{font-size:10px;left:50px!important;padding:4px 6px}}@media (max-width:480px){.calendar-container{max-height:calc(100vh - 60px);padding:4px}.calendar-header{gap:8px}.calendar-title{font-size:14px}.nav-button{padding:8px}.view-btn{font-size:11px;gap:2px;padding:6px 8px}.calendar-grid{min-height:300px}.day-header{font-size:10px;padding:6px 2px}.calendar-day{min-height:40px;padding:4px 2px}.day-number{font-size:11px}.event-indicator{font-size:8px;padding:1px 2px}.more-events{font-size:7px}.add-event-btn{height:14px;width:14px}.hour-label{font-size:10px;padding:4px;width:40px}.day-event-positioned{font-size:9px;left:40px!important;padding:2px 4px}.day-event-title{font-size:9px}.day-event-time{font-size:8px}}@media (max-width:375px){.calendar-container{padding:2px}.calendar-title{font-size:13px}.view-btn{font-size:10px;padding:4px 6px}.calendar-grid{min-height:280px}.day-header{font-size:9px;padding:4px 1px}.calendar-day{min-height:35px;padding:2px 1px}.day-number{font-size:10px}.event-indicator{font-size:7px;padding:0 1px}.hour-label{font-size:9px;width:35px}.day-event-positioned{font-size:8px;left:35px!important;padding:1px 2px}}.week-view{background:#fff;border-radius:8px}.week-view-header{border-bottom:1px solid #dee2e6;margin-bottom:0}.week-days-header{border-bottom:1px solid #f1f3f4;display:grid;grid-template-columns:80px repeat(7,1fr)}.time-column-header,.week-day-header{background:#fafbfc;border-right:1px solid #f1f3f4}.week-day-header{min-width:80px;padding:8px 4px;text-align:center}.week-day-header:last-child{border-right:none}.week-day-name{color:#6c757d;font-size:11px;font-weight:600;letter-spacing:.5px;margin-bottom:2px;text-transform:uppercase}.week-day-number{align-items:center;border-radius:50%;color:#333;display:flex;font-size:20px;font-weight:600;height:36px;justify-content:center;margin:0 auto 2px;transition:all .2s;width:36px}.week-day-number.today{background:#007bff;box-shadow:0 2px 4px #007bff4d;color:#fff;font-weight:700}.week-day-month{color:#adb5bd;font-size:9px;font-weight:500;letter-spacing:.3px;text-transform:uppercase}.week-view-content{height:1440px;overflow-y:auto}.week-time-grid{display:grid;grid-template-columns:80px repeat(7,1fr);min-height:1440px;position:relative}.week-hour-row{display:contents}.week-hour-label{align-items:flex-start;background:#fafbfc;border-bottom:1px solid #f1f3f4;border-right:1px solid #f1f3f4;color:#6c757d;display:flex;font-size:12px;font-weight:500;grid-row:span 4;justify-content:center;padding:8px}.week-hour-content,.week-quarter-row{display:contents}.week-quarter-slot{border-bottom:1px solid #f8f9fa;border-right:1px solid #f1f3f4;cursor:pointer;height:15px;position:relative;transition:background-color .2s}.week-quarter-slot:hover{background-color:#f8f9fa}.week-quarter-slot.hour-start{border-bottom:1px solid #dee2e6}.week-quarter-slot.drag-target{background-color:#e3f2fd;border-left:3px solid #2196f3}.week-quarter-slot.snap-indicator{background-color:#fff3cd;border-left:3px solid #ffc107}.week-quarter-line{background:#f1f3f4;height:1px;left:0;position:absolute;right:0;top:0}.week-event-positioned{background:#007bff;border:2px solid #ffffff4d;border-radius:4px;box-shadow:0 2px 4px #00000026;color:#fff;cursor:grab;font-size:11px;min-height:24px;overflow:hidden;padding:6px 8px;transition:all .2s;-webkit-user-select:none;user-select:none}.week-event-positioned:hover{border-color:#ffffff80;box-shadow:0 4px 12px #007bff66;cursor:grab;transform:translateY(-2px);z-index:20}.week-event-positioned:active{box-shadow:0 2px 8px #007bff99;cursor:grabbing;transform:translateY(0)}.week-event-positioned.dragging{border-color:#fff;cursor:grabbing;opacity:.8;z-index:100}.week-event-title{font-weight:600;line-height:1.2;margin-bottom:1px}.week-event-time,.week-event-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.week-event-time{font-size:9px;line-height:1;opacity:.9}@media (max-width:768px){.week-days-header,.week-time-grid{grid-template-columns:60px repeat(7,1fr)}.week-day-header{min-width:50px;padding:6px 2px}.week-day-name{font-size:9px}.week-day-number{font-size:16px;height:28px;width:28px}.week-day-month{font-size:8px}.week-hour-label{font-size:10px;padding:4px}.week-event-positioned{font-size:9px;left:calc(62px + var(--day-index)*(100% - 60px)/7)!important;padding:4px 6px;width:calc(14.28571% - 12.57143px)!important}.week-event-title{font-size:9px}.week-event-time{font-size:8px}}@media (max-width:480px){.week-days-header,.week-time-grid{grid-template-columns:50px repeat(7,1fr)}.week-day-header{min-width:40px;padding:4px 1px}.week-day-name{font-size:8px}.week-day-number{font-size:14px;height:24px;width:24px}.week-day-month{font-size:7px}.week-hour-label{font-size:9px;padding:2px}.week-quarter-slot{height:12px}.week-view-content{height:1152px}.week-time-grid{min-height:1152px}.week-event-positioned{font-size:8px;left:calc(51px + var(--day-index)*(100% - 50px)/7)!important;min-height:20px;padding:2px 4px;width:calc(14.28571% - 9.14286px)!important}.week-event-title{font-size:8px}.week-event-time{font-size:7px}}@media (max-width:375px){.week-days-header,.week-time-grid{grid-template-columns:40px repeat(7,1fr)}.week-day-header{min-width:35px;padding:2px 1px}.week-day-name{font-size:7px}.week-day-number{font-size:12px;height:20px;width:20px}.week-day-month{display:none}.week-hour-label{font-size:8px;padding:1px}.week-quarter-slot{height:10px}.week-view-content{height:960px}.week-time-grid{min-height:960px}.week-event-positioned{font-size:7px;left:calc(41px + var(--day-index)*(100% - 40px)/7)!important;min-height:16px;padding:1px 2px;width:calc(14.28571% - 7.71429px)!important}.week-event-title{font-size:7px}.week-event-time{display:none}}.modal-content,.modal-overlay{overflow:hidden}.modal-content{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;display:flex;flex-direction:column;height:90vh;width:95%}.modal-header{border-bottom:1px solid #e0e0e0;padding:20px}.modal-header h3{color:#333;font-size:18px}.close-button{border-radius:4px;color:#666;padding:4px}.close-button:hover{background:#f5f5f5;color:#333}.modal-body{display:flex;flex-direction:column;overflow:hidden!important;padding:24px}.modal-body *{overflow:visible!important}.modal-body form{display:flex;flex:1 1;flex-direction:column;overflow:hidden!important}.modal-body .form-group{overflow:visible!important}.modal-body textarea{overflow:hidden!important;resize:none!important}@media (min-width:1024px){.modal-body form{grid-gap:24px;align-items:start;display:grid;gap:24px;grid-template-columns:1fr 1fr 1fr 1fr;overflow:hidden!important}.form-group.full-width{grid-column:1/-1}.form-group.half-width{grid-column:span 2}.form-group.quarter-width{grid-column:span 1}}.selected-date{background:#f8f9fa;border-radius:6px;color:#495057;font-weight:500;margin-bottom:20px;padding:12px;text-transform:capitalize}.form-group{margin-bottom:16px}.form-group label{color:#333;margin-bottom:6px}.form-group input,.form-group select,.form-group textarea,.form-select{background:#fff;border:2px solid #e5e7eb;border-radius:8px;box-sizing:border-box;font-size:14px;padding:12px 14px;transition:all .2s ease;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.form-select:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff26;outline:none}.modal-actions{border-top:1px solid #e0e0e0;flex-shrink:0;margin-top:auto;padding-top:20px}.modal-actions .button{font-size:14px;min-width:80px;padding:10px 20px}@media (max-width:1440px){.modal-content{max-width:95vw;width:95%}}@media (max-width:1024px){.modal-body form{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.form-group.quarter-width{grid-column:span 1}.form-group.half-width{grid-column:span 2}.form-group.full-width{grid-column:1/-1}}@media (max-width:768px){.modal-overlay{padding:4px}.modal-content{height:calc(100vh - 8px);margin:0;max-height:calc(100vh - 8px);max-width:100%;width:100%}.modal-header{padding:12px 16px}.modal-header h3{font-size:16px}.modal-body{min-height:0;padding:12px 16px}.selected-date{font-size:13px;margin-bottom:16px;padding:8px 12px}.modal-body form{display:block;height:100%;overflow:hidden}.form-group{margin-bottom:12px}.form-group label{font-size:13px;margin-bottom:4px}.form-group input,.form-group select,.form-group textarea,.form-select{font-size:14px;padding:10px 12px}.form-group textarea{min-height:60px}.modal-actions{background:#fff;flex-direction:column;gap:8px;margin-top:8px;padding:8px 16px 12px}.modal-actions .button{font-size:14px;padding:12px 20px;width:100%}}@media (max-width:430px) and (min-width:376px){.modal-content{height:calc(100vh - 60px);max-height:calc(100vh - 60px)}.modal-overlay{padding:30px}.modal-body,.modal-header{padding:12px}.modal-body{display:flex;flex:1 1;flex-direction:column;max-height:calc(100vh - 120px);min-height:0}.modal-body,.modal-body *,.modal-body form{overflow:hidden!important}.modal-body form{display:flex;flex-direction:column;height:100%}.selected-date{font-size:12px;padding:6px 10px}.form-group,.selected-date{margin-bottom:8px}.form-group label{font-size:13px;margin-bottom:4px}.form-group input,.form-group select,.form-group textarea,.form-select{font-size:14px;padding:10px 12px}.form-group textarea{max-height:50px;min-height:35px;resize:none}.modal-actions{background:#fff;flex-shrink:0;padding:12px}.modal-actions .button{font-size:14px;padding:12px 18px}}@media (max-width:480px){.modal-content{height:calc(100vh - 40px);max-height:calc(100vh - 40px)}.modal-overlay{padding:20px}.modal-header{padding:8px}.modal-body{display:flex;flex:1 1;flex-direction:column;max-height:calc(100vh - 100px);min-height:0;padding:8px}.modal-body,.modal-body *,.modal-body form{overflow:hidden!important}.modal-body form{display:flex;flex-direction:column;height:100%}.selected-date{font-size:11px;padding:4px 8px}.form-group,.selected-date{margin-bottom:6px}.form-group label{font-size:12px}.form-group input,.form-group select,.form-group textarea,.form-select{font-size:13px;padding:8px 10px}.form-group textarea{max-height:40px;min-height:30px;resize:none}.modal-actions{background:#fff;padding:8px}.modal-actions .button{font-size:13px;padding:10px 16px}}@media (max-width:375px){.modal-content{height:calc(100vh - 30px);max-height:calc(100vh - 30px)}.modal-overlay{padding:15px}.modal-header{padding:3px 5px}.modal-header h3{font-size:12px}.modal-body{display:flex;flex:1 1;flex-direction:column;max-height:calc(100vh - 60px);min-height:0;padding:3px 5px}.modal-body,.modal-body *,.modal-body form{overflow:hidden!important}.modal-body form{display:flex;flex-direction:column;height:100%}.selected-date{font-size:9px;padding:2px 4px}.form-group,.selected-date{margin-bottom:2px}.form-group label{font-size:10px;margin-bottom:1px}.form-group input,.form-group select,.form-group textarea,.form-select{font-size:11px;padding:4px 6px}.form-group textarea{max-height:25px;min-height:20px;resize:none}.modal-actions{margin-top:4px;padding:3px 5px}.modal-actions .button{font-size:11px;padding:6px 10px}}.event-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.event-modal-content{background:var(--bg-modal);border-radius:16px;box-shadow:var(--shadow-xl);max-height:95vh;max-width:1400px;overflow-y:auto;padding:8px;width:95%}.event-modal-header{align-items:center;background:var(--bg-modal-header);border-bottom:1px solid var(--border-primary);border-radius:12px 12px 0 0;display:flex;justify-content:space-between;padding:24px 32px}.event-modal-header h2{color:var(--text-primary);font-size:2rem;font-weight:700;margin:0;text-shadow:0 1px 2px #0000000d}.close-btn{color:var(--text-muted)}.close-btn:hover{background:var(--bg-secondary);color:var(--text-secondary)}.event-modal-body{background:var(--bg-modal-body);padding:32px}.event-content-layout{align-items:flex-start;display:flex;gap:24px}.event-fields-section{grid-gap:16px;display:grid;flex:1 1;gap:16px;grid-template-columns:1fr 1fr}.event-images-section{display:flex;flex:0 0 350px;flex-direction:column;gap:16px}.images-header{align-items:center;display:flex;justify-content:space-between}.add-image-btn{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background .2s}.add-image-btn:hover{background:#2563eb}.images-container{display:flex;flex-direction:column;gap:12px}.image-item{border:2px solid #e5e7eb;border-radius:8px;height:200px;overflow:hidden;position:relative;width:100%}.event-image{height:100%;object-fit:cover;transition:transform .2s;width:100%}.event-image:hover{transform:scale(1.02)}.remove-image-btn{background:#dc3545e6;font-size:16px;font-weight:700;height:28px;transition:background .2s;width:28px}.remove-image-btn:hover{background:#dc3545}.no-images{border:2px dashed #e5e7eb;border-radius:8px;color:#6b7280;font-style:italic;padding:40px 20px;text-align:center}.event-field.half-width{grid-column:span 2}.event-field{display:flex;flex-direction:column;gap:6px}.field-label{align-items:center;color:var(--text-secondary);display:flex;font-size:.875rem;font-weight:500;gap:8px}.field-value{background:var(--bg-field);border:1px solid var(--border-primary);border-radius:8px;min-height:18px}.edit-input,.edit-textarea,.field-value{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text-primary);padding:10px 12px}.edit-input,.edit-textarea{appearance:none;-webkit-appearance:none;-moz-appearance:none;background:var(--bg-input);border:2px solid var(--border-primary);border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:14px;transition:all .2s ease;width:100%}.edit-input:disabled{background:#f9fafb;color:#6b7280;cursor:not-allowed}.edit-input.error{border-color:#dc3545;box-shadow:0 0 0 3px #dc35451a}.error-message{color:#dc3545;font-size:.875rem;margin-top:4px}.general-error{background:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;margin-bottom:12px;padding:8px 12px;width:100%}.btn-cancel:disabled,.btn-save:disabled{cursor:not-allowed;opacity:.6}.edit-input:focus,.edit-textarea:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px #3b82f61a;outline:none}.edit-textarea{min-height:80px;resize:vertical}.event-modal-actions{background:var(--bg-modal-header);border-radius:0 0 12px 12px;border-top:1px solid var(--border-primary);display:flex;gap:16px;justify-content:flex-end;padding:24px 32px}.event-modal-actions button{align-items:center;border:none;border-radius:10px;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;letter-spacing:.5px;overflow:hidden;padding:12px 20px;position:relative;text-transform:uppercase;transition:all .3s ease}.btn-cancel{background:#f3f4f6;color:#374151}.btn-cancel:hover{background:#e5e7eb}.btn-save{background:#10b981}.btn-save:hover{background:#059669}.btn-edit{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 15px #667eea66;color:#fff}.btn-edit:hover{background:linear-gradient(135deg,#5a6fd8,#6a4190);box-shadow:0 8px 25px #667eea99;transform:translateY(-2px)}.btn-delete{background:linear-gradient(135deg,#ff6b6b,#ee5a52);box-shadow:0 4px 15px #ff6b6b66}.btn-delete:hover{background:linear-gradient(135deg,#ff5252,#d32f2f);box-shadow:0 8px 25px #ff6b6b99;transform:translateY(-2px)}@media (max-width:1440px){.event-modal-content{max-width:95vw;width:95%}}@media (max-width:1024px){.event-content-layout{flex-direction:column;gap:24px}.event-fields-section{grid-template-columns:1fr}.event-images-section{flex:none;width:100%}.images-container{flex-direction:row;flex-wrap:wrap;gap:12px}.image-item{height:150px;width:calc(50% - 6px)}}@media (max-width:768px){.event-modal-content{margin:10px;max-width:95vw;width:95%}.event-modal-actions,.event-modal-body,.event-modal-header{padding:16px}.event-modal-actions{flex-direction:column}.event-modal-actions button{justify-content:center;width:100%}.image-item{height:120px;width:100%}}@media (max-width:480px){.event-modal-content{border-radius:0;height:100vh;margin:0;max-height:100vh;width:100%}.event-modal-actions,.event-modal-body,.event-modal-header{padding:12px}}.weekly-chart{background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-top:20px;padding:20px}.chart-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.chart-header h3{color:#495057;font-size:18px;font-weight:600;margin:0}.weekly-stats{align-items:flex-end;display:flex;flex-direction:column;gap:4px}.total-percentage{color:#007bff;font-size:24px;font-weight:700}.total-hours{color:#6c757d;font-size:12px;font-weight:500}.chart-container{margin-bottom:16px}.chart-bars{align-items:flex-end;display:flex;gap:8px;height:120px;justify-content:space-between;padding:0 4px}.day-bar{align-items:center;display:flex;flex:1 1;flex-direction:column;max-width:40px}.bar-container{align-items:flex-end;background:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;display:flex;height:80px;position:relative;width:100%}.bar-fill{border-radius:3px;min-height:2px;transition:all .3s ease;width:100%}.day-label{color:#495057;font-size:11px;font-weight:600;margin-top:8px}.hours-label{color:#6c757d;font-size:10px;margin-top:2px}.chart-legend{border-top:1px solid #e9ecef;display:flex;gap:16px;justify-content:center;padding-top:16px}.legend-item{align-items:center;color:#6c757d;display:flex;font-size:11px;gap:6px}.legend-color{border-radius:2px;height:12px;width:12px}@media (max-width:768px){.weekly-chart{margin-top:16px;padding:16px}.chart-header{flex-direction:column;gap:8px}.chart-header,.weekly-stats{align-items:flex-start}.chart-legend{flex-direction:column;gap:8px}.chart-bars{gap:4px}.day-bar{max-width:35px}}.calendar-layout{align-items:flex-start;display:flex;gap:24px}.calendar-main{flex:1 1;max-height:calc(100vh - 140px);min-width:0}.calendar-sidebar{flex-shrink:0;width:320px}.upcoming-events-card{background:var(--card-bg);border:1px solid var(--border-primary);border-radius:12px;box-shadow:var(--shadow-lg);padding:20px}.upcoming-events-card h3{color:var(--text-primary);font-size:18px;font-weight:600;margin:0 0 16px}.upcoming-events-list{display:flex;flex-direction:column;gap:12px;max-height:calc(100vh - 300px);overflow-y:auto}.no-events{color:var(--text-muted);font-style:italic;padding:20px;text-align:center}.no-events,.upcoming-event{background:var(--bg-secondary);border-radius:8px}.upcoming-event{align-items:flex-start;border-left:3px solid #0000;cursor:pointer;display:flex;gap:12px;padding:12px;transition:all .2s ease}.upcoming-event:hover{background:var(--bg-hover);transform:translateX(2px)}.event-indicator-dot{border-radius:50%;flex-shrink:0;height:12px;margin-top:4px;width:12px}.event-details{flex:1 1;min-width:0}.event-title{color:var(--text-primary);font-size:14px;font-weight:600;line-height:1.3;margin-bottom:4px}.event-date{color:var(--text-muted);font-size:13px;margin-bottom:4px}.event-project{color:var(--accent-primary);font-size:12px;line-height:1.2}@media (max-width:1200px){.calendar-layout{flex-direction:column}.calendar-sidebar{width:100%}.upcoming-events-list{max-height:400px}}@media (max-width:768px){.calendar-layout{gap:16px}.upcoming-events-card{padding:16px}.upcoming-events-card h3{font-size:16px;margin-bottom:12px}.upcoming-event{gap:10px;padding:10px}.event-title{font-size:13px}.event-date{font-size:12px}.event-project{font-size:11px}}.campaign-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.campaign-modal{background:var(--bg-modal);border:1px solid var(--border-primary);border-radius:16px;box-shadow:var(--shadow-xl);max-height:90vh;max-width:800px;overflow-y:auto;width:100%}.campaign-modal-header{align-items:center;background:var(--bg-modal-header);border-bottom:1px solid var(--border-primary);border-radius:16px 16px 0 0;display:flex;justify-content:space-between;padding:1.5rem 2rem}.campaign-modal-header h2{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:0}.modal-close-btn{background:none;border:none;border-radius:6px;color:var(--text-muted);cursor:pointer;padding:.5rem;transition:all .2s ease}.modal-close-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.campaign-modal-form{padding:2rem}.form-grid{display:flex;flex-direction:column;gap:2rem}.form-section{background:var(--bg-modal-body);border:1px solid var(--border-primary);border-radius:12px}.form-section h3{border-bottom:2px solid var(--border-focus);color:var(--text-primary);font-size:1.1rem;margin:0 0 1.5rem}.form-group{margin-bottom:1.5rem}.form-group:last-child{margin-bottom:0}.form-row{grid-template-columns:1fr 1fr}.form-group input,.form-group select{background:var(--input-bg);border:1px solid var(--border-primary);border-radius:8px;color:var(--input-text);font-size:.9rem;transition:all .2s ease;width:100%}.form-group input:focus,.form-group select:focus{border-color:var(--border-focus)}.form-group input.error,.form-group select.error{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.input-with-icon{align-items:center;display:flex;position:relative}.input-with-icon svg{color:var(--text-muted);left:.75rem;position:absolute;z-index:1}.input-with-icon input{padding-left:2.5rem}.error-message{color:#ef4444;display:block;font-size:.8rem;font-weight:500;margin-top:.25rem}.campaign-modal-actions{border-top:1px solid var(--border-primary);display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1.5rem}.btn-cancel,.btn-save{align-items:center;border-radius:8px;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.btn-cancel{background:var(--bg-secondary);border:1px solid var(--border-primary);color:var(--text-primary)}.btn-cancel:hover{background:var(--bg-tertiary)}.btn-save{background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff}.btn-save:hover:not(:disabled){box-shadow:0 4px 12px #667eea4d;transform:translateY(-2px)}.btn-save:disabled{cursor:not-allowed;opacity:.6;transform:none}@media (max-width:768px){.campaign-modal-overlay{padding:.5rem}.campaign-modal{max-height:95vh}.campaign-modal-header{padding:1rem 1.5rem}.campaign-modal-form{padding:1.5rem}.form-section{padding:1rem}.form-row{grid-template-columns:1fr}.campaign-modal-actions{flex-direction:column-reverse}.btn-cancel,.btn-save{justify-content:center;width:100%}}@media (max-width:480px){.campaign-modal-header h2{font-size:1.2rem}.form-section h3{font-size:1rem}}.campaigns-container{background:var(--bg-primary);margin:0 auto;max-width:1400px;min-height:100vh;padding:2rem}.campaigns-loading{align-items:center;color:var(--text-muted);display:flex;flex-direction:column;height:60vh;justify-content:center}.campaigns-header{align-items:center;border-bottom:2px solid var(--border-primary);display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem}.campaigns-title{align-items:center;display:flex;gap:1rem}.campaigns-title h1{color:var(--text-primary);font-size:2rem;font-weight:700;margin:0}.campaigns-actions{display:flex;gap:1rem}.btn-export,.btn-refresh{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.btn-export{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-export:hover{box-shadow:0 4px 12px #667eea4d;transform:translateY(-2px)}.btn-refresh{background:var(--bg-secondary);border:1px solid var(--border-primary);color:var(--text-primary)}.btn-refresh:hover{background:var(--bg-tertiary)}.campaigns-filters{background:var(--card-bg);border:1px solid var(--border-primary);border-radius:12px;box-shadow:var(--shadow-sm);display:flex;gap:2rem;margin-bottom:2rem;padding:1.5rem}.filter-group label{font-size:.9rem}.filter-group select{border:1px solid var(--border-primary);border-radius:6px;font-size:.9rem;min-width:180px;padding:.75rem}.filter-group select:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px #3b82f61a;outline:none}.campaigns-metrics{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:3rem}.metric-card{border-radius:12px;box-shadow:var(--shadow-sm);gap:1rem;padding:1.5rem;transition:transform .2s ease,box-shadow .2s ease}.metric-card:hover{box-shadow:var(--shadow-md)}.metric-icon{border-radius:10px;height:50px;width:50px}.metric-icon.budget{background:linear-gradient(135deg,#10b981,#059669)}.metric-icon.impressions{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.metric-icon.clicks{background:linear-gradient(135deg,#f59e0b,#d97706)}.metric-icon.conversions{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.metric-icon.roi{background:linear-gradient(135deg,#ef4444,#dc2626)}.metric-content h3{color:var(--text-secondary);font-size:.9rem;font-weight:600;letter-spacing:.5px;margin:0 0 .25rem;text-transform:uppercase}.metric-value{font-size:1.8rem;margin:0}.metric-subtitle{color:var(--text-muted);font-size:.8rem}.campaigns-list{margin-top:2rem}.campaigns-list h2{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin-bottom:1.5rem}.no-campaigns{background:var(--card-bg);border:1px solid var(--border-primary);border-radius:12px;color:var(--text-muted);padding:3rem;text-align:center}.campaigns-table{display:flex;flex-direction:column;gap:1.5rem}.campaign-card{background:var(--card-bg);border:1px solid var(--border-primary);border-radius:12px;box-shadow:var(--shadow-sm);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.campaign-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.campaign-header{align-items:center;background:var(--bg-secondary);border-bottom:1px solid var(--border-primary);display:flex;justify-content:space-between;padding:1.5rem}.campaign-platform{align-items:center;display:flex;gap:1rem}.platform-icon{font-size:1.5rem}.campaign-platform h3{color:var(--text-primary);font-size:1.1rem;font-weight:600;margin:0}.campaign-platform p{color:var(--text-muted);font-size:.9rem;margin:.25rem 0 0}.status-badge{letter-spacing:.5px;padding:.4rem .8rem}.campaign-metrics{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));padding:1.5rem}.campaign-metric{align-items:center;display:flex;flex-direction:column;text-align:center}.campaign-metric .metric-label{color:var(--text-muted);font-size:.8rem;font-weight:500;letter-spacing:.5px;margin-bottom:.25rem;text-transform:uppercase}.campaign-metric .metric-value{color:var(--text-primary);font-size:1.2rem;font-weight:700}.roi-metric .metric-value{color:#10b981}.campaign-progress{background:var(--bg-secondary);border-top:1px solid var(--border-primary);padding:1rem 1.5rem}.progress-bar{background:var(--bg-tertiary);border-radius:4px;height:8px;margin-bottom:.5rem;overflow:hidden;width:100%}.progress-fill{background:linear-gradient(90deg,#10b981,#059669);border-radius:4px;height:100%;transition:width .3s ease}.progress-text{color:var(--text-muted);font-size:.8rem}.campaign-actions{background:var(--bg-secondary);border-top:1px solid var(--border-primary);gap:.5rem;padding:1rem 1.5rem}.btn-action,.campaign-actions{display:flex;justify-content:center}.btn-action{align-items:center;border:none;border-radius:8px;color:#fff;cursor:pointer;height:36px;transition:all .2s ease;width:36px}.btn-action:disabled{cursor:not-allowed;opacity:.5}.btn-action.edit{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.btn-action.edit:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1e40af);transform:translateY(-2px)}.btn-action.pause{background:linear-gradient(135deg,#f59e0b,#d97706)}.btn-action.pause:hover:not(:disabled){background:linear-gradient(135deg,#e5890b,#c2710c);transform:translateY(-2px)}.btn-action.play{background:linear-gradient(135deg,#10b981,#059669)}.btn-action.play:hover:not(:disabled){background:linear-gradient(135deg,#0d9f73,#047857);transform:translateY(-2px)}.btn-action.complete{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.btn-action.complete:hover:not(:disabled){background:linear-gradient(135deg,#7c3aed,#6d28d9);transform:translateY(-2px)}.btn-action.delete{background:linear-gradient(135deg,#ef4444,#dc2626)}.btn-action.delete:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-2px)}.btn-create{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.btn-create:hover{background:linear-gradient(135deg,#0d9f73,#047857);box-shadow:0 4px 12px #10b9814d;transform:translateY(-2px)}.error-message-container{align-items:center;display:flex;justify-content:center;padding:3rem}.error-message{background:var(--card-bg);border:2px solid #f59e0b;border-radius:12px;box-shadow:var(--shadow-lg);max-width:600px;padding:2rem;text-align:center}.error-message h3{color:#f59e0b;font-size:1.3rem;margin:0 0 1rem}.error-message p{color:var(--text-primary);line-height:1.6;margin:.5rem 0}.error-message ol{color:var(--text-secondary);margin:1rem 0;padding-left:1.5rem;text-align:left}.error-message li{line-height:1.5;margin:.5rem 0}.error-message code{background:var(--bg-tertiary);border-radius:4px;color:var(--text-primary);font-family:Courier New,monospace;font-size:.9rem;padding:.2rem .5rem}.error-message .btn-refresh{margin-top:1.5rem}.solution-options{display:flex;flex-direction:column;gap:1.5rem;margin:1.5rem 0}.solution-option{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:8px;padding:1.5rem;text-align:left}.solution-option h4{color:var(--text-primary);font-size:1.1rem;font-weight:600;margin:0 0 1rem}.solution-option ol{margin:0;padding-left:1.5rem}.solution-option pre{background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:6px;font-size:.85rem;margin:.5rem 0;overflow-x:auto;padding:1rem}.solution-option pre code{background:none;font-size:inherit;padding:0}.solution-option a{color:var(--border-focus);text-decoration:none}.solution-option a:hover{text-decoration:underline}.index-link{background:linear-gradient(135deg,#10b981,#059669);border-radius:8px;color:#fff!important;display:inline-block;font-weight:500;margin:.5rem 0;padding:.75rem 1.5rem;transition:all .2s ease}.index-link,.index-link:hover{text-decoration:none!important}.index-link:hover{background:linear-gradient(135deg,#0d9f73,#047857);box-shadow:0 4px 12px #10b9814d;transform:translateY(-2px)}@media (max-width:768px){.campaigns-container{padding:1rem}.campaigns-header{align-items:stretch}.campaigns-filters,.campaigns-header{flex-direction:column;gap:1rem}.filter-group select{min-width:auto}.campaigns-metrics{grid-template-columns:1fr}.campaign-header{align-items:stretch;flex-direction:column;gap:1rem}.campaign-metrics{grid-template-columns:repeat(2,1fr)}.campaign-actions{flex-wrap:wrap}}.supports-header{align-items:flex-start;display:flex;gap:24px;justify-content:space-between;margin-bottom:32px}.btn-primary{background:linear-gradient(135deg,#3b82f6,#60a5fa);gap:8px;padding:12px 24px;white-space:nowrap}.btn-primary:hover{box-shadow:0 8px 25px #3b82f64d}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:32px}.stat-card{background:linear-gradient(135deg,#3b82f60d,#3b82f614);border:1px solid #3b82f633;gap:16px;padding:24px}.stat-card:hover{border-color:#3b82f666;box-shadow:0 8px 25px #3b82f626;transform:translateY(-2px)}.stat-icon{background:linear-gradient(135deg,#3b82f6,#60a5fa);color:#fff;font-size:18px;font-weight:700;height:48px;width:48px}.stat-value{font-size:24px}.stat-label{font-size:12px;letter-spacing:.5px;margin-top:4px}.filters-section{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:32px}.search-box{min-width:250px}.search-box input{background:var(--bg-secondary);color:var(--text-primary);font-size:14px;padding:12px 12px 12px 44px;transition:all .3s ease}.search-box input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.filter-select{align-items:center;display:flex;gap:8px;position:relative}.filter-select svg{color:var(--text-muted)}.filter-select select{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:12px;color:var(--text-primary);cursor:pointer;font-size:14px;min-width:150px;padding:12px 16px}.supports-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-bottom:32px}.support-card{background:linear-gradient(135deg,#ffffff0d,#ffffff05);border:1px solid #ffffff1a;border-radius:16px;overflow:hidden;padding:24px;position:relative;transition:all .3s ease}.support-card:before{background:#10b981;content:"";height:3px;left:0;position:absolute;right:0;top:0}.support-card.low:before{background:#f59e0b}.support-card.critical:before{background:#ef4444}.support-card:hover{border-color:#fff3;box-shadow:0 12px 40px #00000026;transform:translateY(-4px)}.support-header{justify-content:space-between;margin-bottom:16px}.support-header,.support-type{align-items:center;display:flex}.support-type{background:#3b82f61a;border-radius:20px;color:#3b82f6;font-size:12px;font-weight:600;gap:8px;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase}.support-actions{display:flex;gap:8px}.btn-icon{background:#ffffff1a;border:none;color:var(--text-secondary);opacity:1;position:relative;visibility:visible;z-index:10}.btn-icon:hover{background:#fff3;color:var(--text-primary);transform:scale(1.05)}.support-name{color:var(--text-primary);font-size:18px;font-weight:700;line-height:1.3;margin:0 0 12px}.support-description{color:var(--text-secondary);font-size:14px;line-height:1.5;margin:0 0 16px}.support-details{margin-bottom:20px}.detail-row{align-items:center;border-bottom:1px solid #ffffff0d;display:flex;justify-content:space-between;padding:8px 0}.detail-row:last-child{border-bottom:none}.detail-label{font-size:13px;font-weight:500}.detail-value{color:var(--text-primary);font-size:13px}.stock-info{background:#ffffff08;border-radius:12px;padding:16px}.stock-numbers{align-items:baseline;display:flex;gap:4px;margin-bottom:12px}.stock-remaining{color:var(--text-primary);font-size:24px;font-weight:800}.stock-separator{color:var(--text-muted);font-size:18px}.stock-total{color:var(--text-secondary);font-size:16px;font-weight:600}.stock-label{color:var(--text-muted);font-size:12px;margin-left:8px}.stock-bar{background:#ffffff1a;border-radius:3px;height:6px;margin-bottom:8px;overflow:hidden;width:100%}.stock-fill{background:#10b981;border-radius:3px;height:100%;transition:width .8s ease}.support-card.low .stock-fill{background:#f59e0b}.support-card.critical .stock-fill{background:#ef4444}.stock-status-label{color:#10b981;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.support-card.low .stock-status-label{color:#f59e0b}.support-card.critical .stock-status-label{color:#ef4444}.empty-state{padding:80px 20px}.empty-state p{margin:0 auto}@media (max-width:768px){.supports-header{align-items:stretch;flex-direction:column}.stats-grid{grid-template-columns:repeat(2,1fr)}.filters-section{flex-direction:column}.search-box{min-width:auto}.supports-grid{grid-template-columns:1fr}.support-header{flex-wrap:wrap;gap:12px}}@media (max-width:480px){.stats-grid{grid-template-columns:1fr}.stock-numbers{flex-wrap:wrap}}.modal-content{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:800px;width:100%}.modal-header{padding:24px 32px}.modal-header h2{font-size:24px}.btn-close{align-items:center;background:#ffffff1a;border:none;border-radius:8px;color:var(--text-secondary);cursor:pointer;display:flex;height:40px;justify-content:center;transition:all .2s ease;width:40px}.btn-close:hover{background:#fff3;color:var(--text-primary)}.support-form{padding:32px}.form-grid{grid-gap:24px;gap:24px;margin-bottom:32px}.form-group label{color:var(--text-primary)}.form-group input,.form-group select,.form-group textarea{background:var(--bg-primary);color:var(--text-primary);font-size:14px;padding:12px 16px}.modal-actions{border-top:1px solid var(--border-primary);gap:16px;padding-top:24px}.btn-secondary{background:#0000;border:1px solid var(--border-primary);color:var(--text-secondary);padding:12px 24px}.btn-secondary:hover{background:var(--bg-tertiary);color:var(--text-primary)}@media (max-width:768px){.modal-overlay{padding:10px}.modal-content{max-height:95vh}.modal-header{padding:20px 24px}.support-form{padding:24px}.form-grid{gap:20px;grid-template-columns:1fr}.modal-actions{flex-direction:column-reverse}.btn-primary,.btn-secondary{justify-content:center;width:100%}}.page-container,body{margin:0;overflow-x:hidden;padding:0;width:100%}.globaltrade-header{align-items:flex-start;box-sizing:border-box;display:flex;gap:24px;justify-content:space-between;margin-bottom:32px;padding:24px;width:100%}.header-content{flex:1 1}.page-title{align-items:center;display:flex;gap:12px;margin:0 0 8px}.page-subtitle{color:var(--text-secondary);font-size:16px;line-height:1.5;margin:0}.header-actions{align-items:flex-end;flex-direction:column;gap:12px}.last-update{color:var(--text-muted);font-size:12px;font-weight:500}.api-error{background:#f59e0b1a;border:1px solid #f59e0b33;border-radius:6px;color:#f59e0b;font-size:10px;gap:4px;margin-top:4px;padding:4px 8px}.api-error,.btn-refresh{align-items:center;display:flex}.btn-refresh{background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:12px;color:#fff;cursor:pointer;font-weight:600;gap:8px;padding:12px 20px;transition:all .3s ease;white-space:nowrap}.btn-refresh:hover:not(:disabled){box-shadow:0 8px 25px #10b9814d;transform:translateY(-2px)}.btn-refresh:disabled{cursor:not-allowed;opacity:.7}.btn-refresh .spinning{animation:spin 1s linear infinite}.market-overview{grid-gap:20px;box-sizing:border-box;display:grid;gap:20px;grid-template-columns:repeat(4,1fr);margin-bottom:32px;padding:0 24px;width:100%}.overview-card{align-items:center;background:linear-gradient(135deg,#3b82f60d,#3b82f614);border:1px solid #3b82f633;border-radius:16px;display:flex;gap:16px;padding:24px;transition:all .3s ease}.overview-card:hover{border-color:#3b82f666;box-shadow:0 8px 25px #3b82f626;transform:translateY(-2px)}.overview-icon{align-items:center;background:linear-gradient(135deg,#3b82f6,#60a5fa);border-radius:12px;color:#fff;display:flex;height:48px;justify-content:center;width:48px}.overview-content{display:flex;flex-direction:column}.overview-value{color:var(--text-primary);font-size:24px;font-weight:800;line-height:1}.overview-label{color:var(--text-muted);font-size:12px;letter-spacing:.5px;margin-top:4px;text-transform:uppercase}.trade-grid{grid-gap:24px;box-sizing:border-box;display:grid;gap:24px;grid-template-columns:2fr 1fr;padding:0 24px;width:100%}.left-column{gap:24px}.left-column,.right-column{display:flex;flex-direction:column}.right-column{gap:20px}.trade-section{background:linear-gradient(135deg,#ffffff0d,#ffffff05);border:1px solid #ffffff1a;border-radius:20px;padding:28px;transition:all .3s ease}.trade-section.full-width{grid-column:1/-1}.trade-section.news-section{margin-bottom:0}.trade-section.company-section{background:linear-gradient(135deg,#8b5cf608,#f59e0b05);border:1px solid #8b5cf626}.company-section .section-header h2{color:#8b5cf6}.trade-section.compact{padding:20px}.trade-section.compact .section-header h2{font-size:16px;margin-bottom:16px}.trade-section:hover{border-color:#fff3;box-shadow:0 12px 40px #00000026;transform:translateY(-2px)}.section-header{margin-bottom:24px}.section-header h2{align-items:center;color:var(--text-primary);display:flex;font-size:20px;font-weight:700;gap:12px;margin:0 0 4px}.section-subtitle{color:var(--text-secondary);font-size:14px;font-weight:500}.stock-list{display:flex;flex-direction:column;gap:16px}.stock-item{background:#ffffff08;border:1px solid #ffffff14;border-radius:12px;padding:16px;transition:all .2s ease}.stock-item:hover{background:#ffffff0d;border-color:#ffffff26}.stock-info{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:12px}.stock-symbol{color:var(--text-primary);font-size:16px;font-weight:700}.stock-name{color:var(--text-muted);font-size:12px;margin-top:2px}.stock-price{text-align:right}.price-value{color:var(--text-primary);font-size:18px;line-height:1}.price-change{align-items:center;display:flex;font-size:12px;font-weight:600;gap:4px;justify-content:flex-end;margin-top:4px}.price-change.positive{color:#10b981}.price-change.negative{color:#ef4444}.stock-details{border-top:1px solid #ffffff0d;display:flex;justify-content:space-between;padding-top:12px}.detail-item{flex-direction:column;gap:2px}.detail-label{color:var(--text-muted);font-size:10px;letter-spacing:.5px;text-transform:uppercase}.detail-value{color:var(--text-secondary);font-size:12px;font-weight:600}.realestate-list{display:flex;flex-direction:column;gap:16px}.realestate-item{align-items:center;background:#ffffff08;border:1px solid #ffffff14;border-radius:12px;display:flex;justify-content:space-between;padding:16px;transition:all .2s ease}.realestate-item:hover{background:#ffffff0d;border-color:#ffffff26}.realestate-name{color:var(--text-primary);font-size:14px;font-weight:600;margin-bottom:4px}.realestate-region{color:var(--text-muted);font-size:12px}.realestate-value{text-align:right}.value-number{color:var(--text-primary);font-size:16px;font-weight:700;line-height:1}.value-change{align-items:center;display:flex;font-size:11px;font-weight:600;gap:4px;justify-content:flex-end;margin-top:4px}.value-change.positive{color:#10b981}.value-change.negative{color:#ef4444}.company-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1fr 1fr}.company-card{background:linear-gradient(135deg,#8b5cf60d,#f59e0b08);border:1px solid #8b5cf633;border-radius:12px;overflow:hidden;padding:14px;position:relative;transition:all .3s ease}.company-card:before{background:linear-gradient(90deg,#8b5cf6,#f59e0b);content:"";height:2px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.company-card:hover{background:linear-gradient(135deg,#8b5cf61a,#f59e0b0d);border-color:#8b5cf666;box-shadow:0 8px 25px #8b5cf633;transform:translateY(-2px)}.company-card:hover:before{opacity:1}.company-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:6px}.company-name{color:var(--text-primary);font-size:12px;font-weight:700;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.company-rating,.market-trend{align-items:center;border-radius:8px;display:flex;font-size:8px;font-weight:700;justify-content:center;letter-spacing:.5px;padding:2px 6px;text-transform:uppercase}.company-rating.buy,.market-trend.up{background:#10b98133;color:#10b981}.company-rating.hold,.market-trend.stable{background:#f59e0b33;color:#f59e0b}.company-rating.sell,.market-trend.down{background:#ef444433;color:#ef4444}.company-sector{color:var(--text-muted);font-size:10px;margin-bottom:8px}.company-metrics{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr}.company-card .company-metrics{grid-template-columns:1fr 1fr}.metric{flex-direction:column;gap:2px}.metric-label{font-size:8px;letter-spacing:.3px;text-transform:uppercase}.metric-value{font-size:11px}.metric-value.positive{color:#10b981}.metric-value.negative{color:#ef4444}.news-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.news-card{background:linear-gradient(135deg,#3b82f608,#10b98105);border:1px solid #3b82f626;border-radius:16px;overflow:hidden;padding:18px;position:relative;transition:all .3s ease}.news-card:before{background:linear-gradient(90deg,#3b82f6,#10b981,#8b5cf6,#f59e0b);content:"";height:3px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.news-card:hover{background:linear-gradient(135deg,#3b82f614,#10b9810d);border-color:#3b82f64d;box-shadow:0 12px 40px #3b82f626;transform:translateY(-3px)}.news-card:hover:before{opacity:1}.news-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.news-category{border:1px solid;border-radius:20px;font-size:10px;font-weight:700;letter-spacing:.8px;padding:6px 12px;text-transform:uppercase}.news-impact{align-items:center;border:2px solid;border-radius:50%;display:flex;height:24px;justify-content:center;width:24px}.news-impact.positive{background:linear-gradient(135deg,#10b98133,#10b9811a);color:#10b981}.news-impact.negative{background:linear-gradient(135deg,#ef444433,#ef44441a);color:#ef4444}.news-impact.neutral{background:linear-gradient(135deg,#6b728033,#6b72801a);color:#6b7280}.news-card-title{-webkit-line-clamp:2;line-clamp:2;color:var(--text-primary);font-size:15px;font-weight:700;line-height:1.4;margin:0 0 10px}.news-card-summary,.news-card-title{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.news-card-summary{-webkit-line-clamp:3;line-clamp:3;color:var(--text-secondary);font-size:13px;line-height:1.5;margin:0 0 14px}.news-card-footer{border-top:1px solid #ffffff1a;justify-content:space-between;padding-top:12px}.news-card-footer,.news-meta{align-items:center;display:flex}.news-meta{color:var(--text-muted);font-size:11px;gap:8px}.news-source{color:var(--text-secondary);font-weight:600}.news-link{border-radius:4px;color:#3b82f6;cursor:pointer;padding:4px;transition:all .2s ease}.news-link:hover{background:#3b82f61a;color:#60a5fa}.stock-section{background:linear-gradient(135deg,#10b98108,#3b82f605);border:1px solid #10b98126}.stock-section .section-header h2{color:#10b981}.stock-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1fr 1fr}.stock-card{background:linear-gradient(135deg,#10b9810d,#3b82f608);border:1px solid #10b98133;border-radius:12px;overflow:hidden;padding:14px;position:relative;transition:all .3s ease}.stock-card:before{background:linear-gradient(90deg,#10b981,#3b82f6);content:"";height:2px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.stock-card:hover{background:linear-gradient(135deg,#10b9811a,#3b82f60d);border-color:#10b98166;box-shadow:0 8px 25px #10b98133;transform:translateY(-2px)}.stock-card:hover:before{opacity:1}.stock-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.stock-card .stock-symbol{color:var(--text-primary);font-size:12px;font-weight:700}.stock-card .stock-price{color:var(--text-primary);font-size:12px;font-weight:600}.stock-card .stock-change{align-items:center;border-radius:12px;display:flex;font-size:11px;font-weight:700;gap:4px;margin-top:2px;padding:4px 8px}.stock-change.positive{background:#10b98126;color:#059669}.stock-change.negative{background:#ef444426;color:#dc2626}.realestate-section{background:linear-gradient(135deg,#f59e0b08,#8b5cf605);border:1px solid #f59e0b26}.realestate-section .section-header h2{color:#f59e0b}.realestate-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1fr 1fr}.realestate-card{background:linear-gradient(135deg,#f59e0b0d,#8b5cf608);border:1px solid #f59e0b33;border-radius:12px;overflow:hidden;padding:14px;position:relative;transition:all .3s ease}.realestate-card:before{background:linear-gradient(90deg,#f59e0b,#8b5cf6);content:"";height:2px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.realestate-card:hover{background:linear-gradient(135deg,#f59e0b1a,#8b5cf60d);border-color:#f59e0b66;box-shadow:0 8px 25px #f59e0b33;transform:translateY(-2px)}.realestate-card:hover:before{opacity:1}.realestate-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.realestate-card .realestate-value,.realestate-city{color:var(--text-primary);font-size:12px;font-weight:600}.realestate-card .realestate-change{align-items:center;border-radius:12px;display:flex;font-size:11px;font-weight:700;gap:4px;margin-top:2px;padding:4px 8px}.realestate-change.positive{background:#10b98126;color:#059669}.realestate-change.negative{background:#ef444426;color:#dc2626}@media (max-width:1200px){.market-overview{gap:18px;grid-template-columns:repeat(4,1fr)}.overview-card{padding:22px}}@media (max-width:1024px){.trade-grid{grid-template-columns:1fr}.left-column{margin-bottom:24px}.right-column{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.company-grid,.news-grid{grid-template-columns:1fr 1fr}.realestate-grid,.stock-grid{grid-template-columns:1fr}}@media (max-width:1100px){.market-overview{gap:16px;grid-template-columns:1fr 1fr;padding:0 16px}.overview-card{box-sizing:border-box;padding:20px;width:100%}.globaltrade-header{padding:16px}.right-column{gap:16px;grid-template-columns:1fr;width:100%}.company-grid{grid-template-columns:1fr 1fr}.news-grid{grid-template-columns:1fr}.page-title{font-size:28px}.trade-section{box-sizing:border-box;margin:0;padding:18px;width:100%}.trade-grid{padding:0 16px}}@media (max-width:768px){.globaltrade-header{align-items:stretch;flex-direction:column;gap:16px;padding:12px}.header-actions{align-items:center;flex-direction:row;justify-content:space-between}.market-overview{gap:12px;grid-template-columns:1fr 1fr;padding:0 12px}.overview-card{box-sizing:border-box;padding:16px;width:100%}.trade-grid{padding:0 12px}.right-column{display:flex;flex-direction:column;gap:16px;width:100%}.stock-info{flex-direction:column;gap:8px}.stock-price{text-align:left}.price-change,.value-change{justify-content:flex-start}.company-grid,.company-metrics{grid-template-columns:1fr}.news-card-title{font-size:14px}.news-card-summary{font-size:12px}.news-grid{grid-template-columns:1fr}.page-title{font-size:24px}.trade-section{box-sizing:border-box;margin:0;padding:16px;width:100%}}@media (max-width:480px){.market-overview{gap:12px;grid-template-columns:1fr}.overview-card{padding:14px}.trade-section{padding:16px}.page-title{font-size:20px}.globaltrade-header{margin-bottom:20px}.company-name{font-size:11px;max-width:100px}.metric-value{font-size:10px}.metric-label{font-size:7px}}.quote-form-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.quote-form-container{background:#fff;border-radius:12px;display:flex;flex-direction:column;max-height:90vh;max-width:900px;overflow:hidden;width:100%}.quote-form-header{align-items:center;background:#f9fafb;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1.5rem}.quote-form-header h2{color:#1f2937;font-size:1.5rem;font-weight:600;margin:0}.quote-form{flex:1 1;overflow-y:auto;padding:1.5rem}.add-item-btn{align-items:center;background:#10b981;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:background-color .2s}.add-item-btn:hover{background:#059669}.items-table{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.table-header,.table-row{grid-template-columns:2fr 1fr 1fr 1fr auto}.table-row{align-items:center}.table-row input{border:1px solid #d1d5db;border-radius:4px;font-size:.875rem;padding:.5rem;width:100%}.table-row input:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a;outline:none}.total-amount{color:#1f2937;font-weight:600}.remove-item-btn:hover:not(:disabled){background:#dc2626}.remove-item-btn:disabled{background:#d1d5db;cursor:not-allowed}.calculations-section{align-items:flex-start;display:flex;flex-wrap:wrap;gap:2rem;justify-content:space-between}.tax-rate-input{display:flex;flex-direction:column;min-width:200px}.tax-rate-input label{color:#374151;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.tax-rate-input input{border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;padding:.75rem}.calculations-summary{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;min-width:250px;padding:1.5rem}.calc-row{align-items:center;display:flex;font-size:.875rem;justify-content:space-between;padding:.5rem 0}.calc-row:not(:last-child){border-bottom:1px solid #e5e7eb}.total-row{border-top:2px solid #d1d5db!important;color:#1f2937;font-size:1rem;font-weight:700;margin-top:.5rem;padding-top:1rem}@media (max-width:768px){.quote-form-overlay{padding:0}.quote-form-container{border-radius:0;max-height:100vh;max-width:none}.form-grid,.table-header,.table-row{grid-template-columns:1fr}.table-header,.table-row{gap:.5rem}.table-header{display:none}.table-row{border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-direction:column;margin-bottom:1rem;padding:1rem}.table-row:last-child{margin-bottom:0}.col-description:before{color:#374151;content:"Description: ";font-weight:600}.col-quantity:before{color:#374151;content:"Quantité: ";font-weight:600}.col-price:before{color:#374151;content:"Prix unitaire: ";font-weight:600}.col-total:before{color:#374151;content:"Total: ";font-weight:600}.calculations-section,.form-actions{flex-direction:column}}.quotes-page{margin:0 auto;max-width:1400px;padding:2rem}.quotes-header{margin-bottom:2rem}.header-content{margin-bottom:1.5rem}.header-content h1{color:var(--text-primary);font-size:2rem;font-weight:600;margin:0}.create-quote-btn{align-items:center;background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:background-color .2s}.create-quote-btn:hover{background:#2563eb}.quotes-filters{align-items:center;display:flex;flex-wrap:wrap;gap:1rem}.search-box{flex:1 1;min-width:300px}.search-box svg{color:#6b7280;left:12px;top:50%;transform:translateY(-50%)}.search-box input{border:1px solid var(--border-primary);border-radius:8px;padding:.75rem .75rem .75rem 2.5rem;width:100%}.search-box input:focus{box-shadow:var(--shadow-focus)}.status-filter{background:var(--input-bg);border:1px solid var(--border-primary);border-radius:8px;color:var(--input-text);cursor:pointer;font-size:.875rem;padding:.75rem}.status-filter:focus{border-color:var(--border-focus);box-shadow:var(--shadow-focus);outline:none}.quotes-list{margin-top:2rem}.empty-state svg{margin:0 auto 1rem}.empty-state h3{font-size:1.25rem}.create-first-quote-btn{background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;padding:.75rem 1.5rem;transition:background-color .2s}.create-first-quote-btn:hover{background:#2563eb}.quotes-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.quote-card{background:var(--card-bg);border:1px solid var(--border-primary);border-radius:12px;padding:1.5rem;transition:all .2s}.quote-card:hover{border-color:var(--border-secondary);box-shadow:var(--shadow-lg)}.quote-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.quote-info h3{color:var(--text-primary);font-size:1.125rem;font-weight:600;margin:0 0 .25rem}.client-name{color:var(--text-secondary);font-weight:500;margin:0 0 .25rem}.project-title{color:var(--text-muted);font-size:.875rem;margin:0}.quote-status{flex-shrink:0}.status-badge{letter-spacing:.025em}.quote-details{border-bottom:1px solid var(--border-light);margin-bottom:1rem;padding-bottom:1rem}.quote-amount{align-items:baseline;display:flex;gap:.5rem;margin-bottom:.5rem}.amount{color:var(--text-primary);font-size:1.5rem;font-weight:700}.tax-info{font-size:.75rem;text-transform:uppercase}.quote-date,.tax-info{color:var(--text-muted)}.quote-date{font-size:.875rem}.quote-actions{display:flex;gap:.5rem}.action-btn:hover{border-color:var(--border-secondary)}.view-btn:hover{background:#eff6ff;border-color:#3b82f6;color:#3b82f6}.edit-btn:hover{background:#fffbeb;border-color:#f59e0b;color:#f59e0b}.download-btn:hover{background:#ecfdf5;border-color:#10b981;color:#10b981}.auth-required h2{color:var(--text-secondary)}@media (max-width:768px){.quotes-page{padding:1rem}.header-content{align-items:stretch;gap:1rem}.header-content,.quotes-filters{flex-direction:column}.search-box{min-width:0;min-width:auto}.quotes-grid{grid-template-columns:1fr}.quote-actions{justify-content:center}}.work-calculator-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.work-calculator-container{background:#fff;border-radius:12px;display:flex;flex-direction:column;max-height:90vh;max-width:1200px;overflow:hidden;width:100%}.calculator-header{align-items:center;background:#f9fafb;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1.5rem}.calculator-header h2{color:#1f2937;font-size:1.5rem;font-weight:600;margin:0}.close-btn{border-radius:6px;color:#6b7280;padding:.5rem;transition:all .2s}.close-btn:hover{background:#f3f4f6;color:#374151}.calculator-form{flex:1 1;overflow-y:auto;padding:1.5rem}.form-section h3{border-bottom:2px solid #e5e7eb;color:#1f2937;font-size:1.125rem;font-weight:600;margin:0 0 1rem;padding-bottom:.5rem}.section-header{justify-content:space-between;margin-bottom:1rem}.section-header h3{border:none;margin:0;padding:0}.add-room-controls{align-items:center;display:flex;gap:.5rem}.add-room-controls select{border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;padding:.5rem}.add-room-btn,.add-work-btn{align-items:center;background:#10b981;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:background-color .2s}.add-room-btn:hover,.add-work-btn:hover{background:#059669}.form-group input,.form-group select{border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;padding:.75rem;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.rooms-list{display:flex;flex-wrap:wrap;gap:.5rem}.room-item{align-items:center;background:#eff6ff;border:1px solid #bfdbfe;border-radius:20px;color:#1e40af;display:flex;font-size:.875rem;gap:.5rem;padding:.5rem .75rem}.remove-room-btn{background:none;border:none;border-radius:4px;color:#ef4444;cursor:pointer;padding:.25rem;transition:background-color .2s}.remove-room-btn:hover{background:#ef44441a}.work-items-table{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.table-header{background:#f9fafb;border-bottom:1px solid #e5e7eb;color:#374151;font-size:.875rem;font-weight:600}.table-header,.table-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr 2fr .8fr 2fr 1.5fr 1fr auto;padding:1rem}.table-row{align-items:start;border-bottom:1px solid #f3f4f6}.table-row:last-child{border-bottom:none}.table-row input,.table-row select{border:1px solid #d1d5db;border-radius:4px;font-size:.875rem;padding:.5rem;width:100%}.table-row input:focus,.table-row select:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a;outline:none}.col-material{display:flex;flex-direction:column;gap:.5rem}.material-cost{color:#059669;font-size:.75rem;font-weight:600}.col-labor{gap:.5rem}.col-labor,.labor-inputs{display:flex;flex-direction:column}.labor-inputs{gap:.25rem}.labor-inputs span{color:#6b7280;font-size:.75rem}.labor-cost{color:#059669;font-size:.75rem;font-weight:600}.col-total{color:#1f2937}.col-total,.remove-item-btn{align-items:center;display:flex;justify-content:center}.remove-item-btn{background:#ef4444;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:.5rem;transition:background-color .2s}.remove-item-btn:hover{background:#dc2626}.cost-summary{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem}.cost-breakdown{gap:.75rem}.cost-row{align-items:center;display:flex;font-size:.875rem;justify-content:space-between}.cost-row.subtotal{border-top:1px solid #d1d5db;font-weight:600;padding-top:.75rem}.cost-row.total{border-top:2px solid #374151;color:#1f2937;font-size:1rem;font-weight:700;padding-top:.75rem}.cost-per-sqm{border-top:1px solid #e5e7eb;padding-top:1rem}.sqm-cost{align-items:center;color:#059669;display:flex;font-weight:600;justify-content:space-between}.form-actions{border-top:1px solid #e5e7eb;display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:2rem}.cancel-btn{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.cancel-btn:hover{background:#f9fafb;border-color:#9ca3af}.save-btn{align-items:center;background:#3b82f6;border:none;border-radius:6px;cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:background-color .2s}.save-btn:hover{background:#2563eb}@media (max-width:1024px){.work-calculator-overlay{padding:0}.work-calculator-container{border-radius:0;max-height:100vh;max-width:none}.table-header,.table-row{gap:.5rem;grid-template-columns:1fr}.table-header{display:none}.table-row{border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-direction:column;margin-bottom:1rem;padding:1rem}.table-row:last-child{margin-bottom:0}.col-room:before{content:"Pièce: ";font-weight:600}.col-category:before{content:"Catégorie: ";font-weight:600}.col-description:before{content:"Description: ";font-weight:600}.col-surface:before{content:"Surface: ";font-weight:600}.col-material:before{content:"Matériau: ";font-weight:600}.col-labor:before{content:"Main d'œuvre: ";font-weight:600}.col-total:before{content:"Total: ";font-weight:600}.form-actions{flex-direction:column}}@media (max-width:768px){.form-grid{grid-template-columns:1fr}.add-room-controls,.section-header{align-items:stretch;flex-direction:column}.section-header{gap:1rem}}.homestaging-page{margin:0 auto;max-width:1400px;padding:2rem}.homestaging-header{margin-bottom:3rem}.header-content{gap:2rem}.header-info h1{color:var(--text-primary);font-size:2.25rem;font-weight:700;margin:0 0 .5rem}.header-info p{color:var(--text-muted);font-size:1.125rem;margin:0}.create-project-btn{align-items:center;background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:.5rem;padding:1rem 1.5rem;transition:background-color .2s;white-space:nowrap}.create-project-btn:hover{background:#2563eb}.projects-section{margin-bottom:3rem}.projects-section h2{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:0 0 1.5rem}.empty-projects{background:var(--bg-secondary);border:2px dashed var(--border-primary);border-radius:12px;padding:4rem 2rem;text-align:center}.empty-projects svg{color:var(--text-muted);margin-bottom:1rem}.empty-projects h3{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.empty-projects p{color:var(--text-muted);margin:0 auto 2rem;max-width:500px}.create-first-project-btn{align-items:center;background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:background-color .2s}.create-first-project-btn:hover{background:#2563eb}.projects-grid{grid-gap:1.5rem;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}.project-card{border-radius:12px;padding:1.5rem;transition:all .2s}.project-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-lg)}.project-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.project-info h3{color:var(--text-primary);font-size:1.125rem;font-weight:600;margin:0 0 .5rem}.project-type{margin:0 0 .25rem}.project-rooms,.project-type{color:var(--text-muted);font-size:.875rem}.project-rooms{margin:0}.project-cost{text-align:right}.cost-amount{color:var(--text-primary);display:block;font-size:1.5rem;font-weight:700}.cost-label{color:var(--text-muted);font-size:.75rem;letter-spacing:.05em;text-transform:uppercase}.project-details{border-bottom:1px solid var(--border-primary);margin-bottom:1rem;padding-bottom:1rem}.cost-breakdown{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.cost-item{align-items:center;display:flex;font-size:.875rem;justify-content:space-between}.cost-type{color:var(--text-muted)}.cost-value{color:var(--text-secondary);font-weight:500}.project-date{color:var(--text-muted);font-size:.75rem}.action-btn{background:var(--card-bg);display:flex;height:36px;transition:all .2s;width:36px}.action-btn:hover{background:var(--bg-hover);border-color:var(--border-hover)}.edit-btn:hover{background:#eff6ff;border-color:#3b82f6;color:#3b82f6}.export-btn:hover{background:#ecfdf5;border-color:#10b981;color:#10b981}.save-btn:hover{background:var(--bg-hover);border-color:#f59e0b;color:#f59e0b}.delete-btn:hover{background:#fef2f2;border-color:#ef4444;color:#ef4444}.materials-reference{background:var(--bg-secondary);border-radius:12px;padding:2rem}.materials-reference h2{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:0 0 1.5rem}.materials-categories{grid-gap:1.5rem;align-items:start;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.material-category{background:var(--card-bg);border:1px solid var(--border-primary);border-radius:8px;height:-webkit-fit-content;height:fit-content;padding:1.5rem}.material-category h3{border-bottom:2px solid var(--border-primary);color:var(--text-primary);font-size:1rem;font-weight:600;margin:0 0 1rem;padding-bottom:.5rem}.materials-list{display:flex;flex-direction:column;gap:0}.material-item{align-items:center;border-bottom:1px solid var(--border-primary);display:flex;gap:1rem;justify-content:space-between;padding:.75rem 0}.material-item:last-child{border-bottom:none}.material-info{flex:1 1}.material-name{color:var(--text-primary);display:block;font-size:.875rem;font-weight:500;margin-bottom:.25rem}.material-description{color:var(--text-muted);display:block;font-size:.75rem}.material-price{align-items:flex-end;color:#059669;display:flex;flex-direction:column;font-size:.875rem;font-weight:600;gap:.25rem;white-space:nowrap}.original-price{color:var(--text-muted);font-size:.75rem;text-decoration:line-through}.adjusted-price{color:#dc2626;font-weight:700}.project-templates{margin-bottom:2rem}.project-templates h3{color:var(--text-primary);font-size:1.125rem;font-weight:600;margin:0 0 1rem}.templates-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.template-card{align-items:center;background:var(--card-bg);border:2px dashed var(--border-primary);border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;padding:1rem;transition:all .2s}.template-card:hover{background:var(--bg-hover);border-color:#3b82f6}.template-icon{color:var(--text-muted);font-size:1.5rem}.template-name{color:var(--text-primary);font-size:.875rem;font-weight:500}.template-description{color:var(--text-muted);font-size:.75rem;margin-top:.25rem}.template-works{color:#3b82f6;font-size:.75rem;font-weight:500}.template-action{align-items:center;background:#eff6ff;border-radius:50%;color:#3b82f6;display:flex;height:32px;justify-content:center;width:32px}.seasonal-info{background:#fef3c7;border:1px solid #fbbf24;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.seasonal-info p{color:#92400e;font-size:.875rem;margin:0}.project-item{background:var(--card-bg);border:1px solid var(--border-primary);border-radius:8px;margin-bottom:1rem;padding:1rem}.category-header{margin-bottom:1rem;min-height:2rem}.seasonal-badge{border-radius:12px;font-size:.75rem;font-weight:600;padding:.25rem .5rem;text-transform:uppercase}.seasonal-badge.increase{background:#fef2f2;color:#dc2626}.seasonal-badge.decrease{background:#ecfdf5;color:#059669}.difficulty-coefficients{background:var(--bg-secondary);border:1px solid #e5e7eb;border-radius:8px;margin-top:2rem;padding:1.5rem}.difficulty-coefficients h3{color:#374151;font-size:1rem;font-weight:600;margin:0 0 1rem}.coefficients-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:1rem}.coefficient-item{align-items:center;background:#f9fafb;border-radius:6px;display:flex;justify-content:space-between;padding:.5rem}.room-name{color:#374151;font-size:.875rem}.coefficient{border-radius:4px;font-size:.875rem;font-weight:600;padding:.25rem .5rem}.coefficient.normal{background:#f3f4f6;color:#374151}.coefficient.easy{background:#ecfdf5;color:#059669}.coefficient.difficult{background:#fef2f2;color:#dc2626}.coefficient-note{color:#6b7280;font-size:.75rem;font-style:italic;margin:0}.empty-state h3{font-size:1.125rem}.auth-required{color:var(--text-muted);padding:4rem 2rem;text-align:center}.auth-required svg{color:var(--text-muted);margin-bottom:1rem}.auth-required h2{color:var(--text-primary);margin-bottom:1rem}@media (max-width:768px){.homestaging-page{padding:1rem}.header-content{align-items:stretch;flex-direction:column}.header-info h1{font-size:1.75rem}.projects-grid{grid-template-columns:1fr}.project-header{flex-direction:column;gap:1rem}.project-cost{text-align:left}.materials-categories{grid-template-columns:1fr}.material-item{align-items:flex-start;flex-direction:column;gap:.5rem}}.image-viewer-overlay{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#000000f2;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.image-viewer-container{color:#fff;display:flex;flex-direction:column;height:100%;position:relative;width:100%}.image-viewer-header{align-items:center;background:linear-gradient(180deg,#000c,#0000);display:flex;justify-content:space-between;left:0;padding:20px;position:absolute;right:0;top:0;z-index:10}.image-info h3{font-size:1.2rem;font-weight:600;margin:0 0 5px}.image-counter{color:#ffffffb3;font-size:.9rem}.image-controls{align-items:center;display:flex;gap:10px}.image-controls button{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.9rem;gap:5px;padding:8px 12px;transition:all .2s ease}.image-controls button:hover{background:#fff3;border-color:#ffffff4d}.zoom-level{color:#fffc;font-size:.9rem;min-width:50px;text-align:center}.close-btn{background:#dc2626cc!important;border-color:#dc262699!important}.close-btn:hover{background:#dc2626!important}.nav-btn{align-items:center;background:#0009;border:1px solid #fff3;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:60px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:all .3s ease;width:60px;z-index:10}.nav-btn:hover{background:#000c;border-color:#fff6;transform:translateY(-50%) scale(1.1)}.nav-prev{left:20px}.nav-next{right:20px}.image-viewer-content{align-items:center;display:flex;flex:1 1;justify-content:center;overflow:hidden;position:relative}.viewer-image{max-height:90%;max-width:90%;object-fit:contain;transform-origin:center;-webkit-user-select:none;user-select:none}.image-viewer-footer{background:linear-gradient(0deg,#000c,#0000);bottom:0;left:0;padding:20px;position:absolute;right:0;z-index:10}.image-metadata{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:10px}.metadata-item{color:#fffc;font-size:.9rem}.keyboard-shortcuts{text-align:center}.keyboard-shortcuts small{color:#fff9;font-size:.8rem}.image-thumbnails{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0009;border-radius:8px;bottom:80px;display:flex;gap:8px;left:50%;max-width:80%;overflow-x:auto;padding:10px;position:absolute;scrollbar-color:#ffffff4d #0000;scrollbar-width:thin;transform:translateX(-50%)}.image-thumbnails::-webkit-scrollbar{height:4px}.image-thumbnails::-webkit-scrollbar-track{background:#0000}.image-thumbnails::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:2px}.thumbnail{border:2px solid #0000;border-radius:4px;cursor:pointer;flex-shrink:0;height:60px;overflow:hidden;transition:all .2s ease;width:60px}.thumbnail:hover{border-color:#ffffff80;transform:scale(1.05)}.thumbnail.active{border-color:#3b82f6;transform:scale(1.1)}.thumbnail img{height:100%;object-fit:cover;width:100%}@media (max-width:768px){.image-viewer-header{align-items:flex-start;flex-direction:column;gap:10px;padding:15px}.image-controls{flex-wrap:wrap;gap:8px}.image-controls button{font-size:.8rem;padding:6px 10px}.nav-btn{height:50px;width:50px}.nav-prev{left:10px}.nav-next{right:10px}.image-viewer-footer{padding:15px}.image-metadata{flex-direction:column;gap:5px}.image-thumbnails{bottom:60px;max-width:90%;padding:8px}.thumbnail{height:50px;width:50px}.keyboard-shortcuts{display:none}}@media (max-width:480px){.image-viewer-header{padding:10px}.image-info h3{font-size:1rem}.image-controls button{padding:4px 8px}.nav-btn{height:40px;width:40px}.image-thumbnails{bottom:50px}.thumbnail{height:40px;width:40px}}:root[data-theme=dark] .image-viewer-overlay{background:#000000fa}.image-viewer-overlay{animation:fadeIn .3s ease}.viewer-image{animation:zoomIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes zoomIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.media-header{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:16px;display:flex;justify-content:space-between;margin-bottom:32px;padding:24px}.media-stats{display:flex;gap:32px}.media-stats .stat{align-items:center;display:flex;flex-direction:column}.media-stats .stat-value{color:#000;font-size:28px;font-weight:700;margin-bottom:4px}.media-stats .stat-label{color:#000000b3;font-size:14px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.upload-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#1e3a8a);border:none;border-radius:12px;box-shadow:0 4px 15px #667eea4d;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:12px 24px;transition:all .3s ease}.upload-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.upload-btn:hover{box-shadow:0 8px 25px #667eea4d;transform:translateY(-2px)}.media-filters{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:32px}.filter-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;color:#000;gap:8px;padding:12px 20px;transition:all .3s ease}.filter-btn:hover{background:#ffffff26;transform:translateY(-1px)}.filter-btn.active{background:linear-gradient(135deg,#3b82f6,#1e3a8a);border-color:#0000;color:#fff}.filter-count{background:#fff3;border-radius:8px;font-size:12px;font-weight:600;padding:2px 8px}.filter-btn.active .filter-count{background:#ffffff4d}.gallery-grid{grid-gap:24px;gap:24px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.media-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:16px;cursor:pointer;overflow:hidden;transition:all .3s ease}.media-card:hover{background:#ffffff26;box-shadow:0 12px 40px #00000026;transform:translateY(-4px)}.media-preview{height:200px;overflow:hidden;position:relative;width:100%}.media-preview img{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.media-card:hover .media-preview img{transform:scale(1.05)}.file-placeholder{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);color:#666;height:100%;width:100%}.media-overlay{background:#000000b3;border-radius:8px;padding:6px 12px;right:12px;top:12px;transition:opacity .3s ease}.image-overlay-icon,.media-overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;position:absolute}.image-overlay-icon{background:#000c;border-radius:50%;color:#fff;left:50%;padding:12px;pointer-events:none;top:50%;transform:translate(-50%,-50%);transition:all .3s ease}.media-card:hover .media-overlay{opacity:1}.media-card:hover .image-overlay-icon{opacity:1;transform:translate(-50%,-50%) scale(1.1)}.media-type{color:#fff;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.media-info{padding:20px}.media-name{color:#000;font-size:16px;font-weight:600;line-height:1.4;margin:0 0 8px}.media-description{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;color:#000000b3;display:-webkit-box;font-size:14px;line-height:1.5;margin:0 0 12px;overflow:hidden}.media-meta{align-items:center;display:flex;justify-content:space-between}.upload-date{color:#00000080;font-size:12px;font-weight:500}.upload-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.upload-modal{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border:1px solid #ffffff4d;border-radius:20px;box-shadow:0 20px 60px #0000004d;max-height:80vh;max-width:700px;overflow-y:auto;width:100%}.upload-modal-header{align-items:center;border-bottom:1px solid #0000001a;display:flex;justify-content:space-between;padding:24px}.upload-modal-header h3{color:#000;font-size:18px;font-weight:600;margin:0}.close-btn{padding:8px;transition:background-color .2s}.upload-modal-content{display:flex;flex-direction:column;gap:16px;padding:24px}.pending-file-item{background:#ffffffb3;border:1px solid #0000001a;border-radius:12px;display:flex;gap:16px;padding:16px}.file-preview{align-items:center;background:#0000000d;border-radius:8px;display:flex;flex-shrink:0;height:80px;justify-content:center;overflow:hidden;width:80px}.file-preview img{height:100%;object-fit:cover;width:100%}.file-placeholder{align-items:center;color:#0006;display:flex;justify-content:center}.file-info{display:flex;flex:1 1;flex-direction:column;gap:8px}.file-info h4{color:#000;font-size:16px;font-weight:600;line-height:1.3;margin:0}.file-info p{color:#0009;font-size:14px;margin:0}.file-type-selector{align-items:center;display:flex;gap:8px}.file-type-selector label{color:#000;font-size:14px;font-weight:500}.file-type-selector select{background:#fff;border:1px solid #0003;border-radius:6px;cursor:pointer;font-size:14px;padding:6px 12px}.upload-modal-actions{border-top:1px solid #0000001a;display:flex;gap:12px;justify-content:flex-end;padding:24px}.cancel-btn,.confirm-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:12px 20px;transition:all .2s}.cancel-btn{color:#000}.cancel-btn:hover{background:#00000026}.confirm-btn{background:linear-gradient(135deg,#3b82f6,#1e3a8a);box-shadow:0 4px 15px #667eea4d;color:#fff}.confirm-btn:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-1px)}@media (max-width:1024px){.upload-modal{max-width:600px}.media-header{padding:20px}.gallery-grid{gap:20px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}@media (max-width:768px){.upload-modal{margin:10px;max-height:95vh;max-width:none}.upload-modal-content,.upload-modal-header{padding:20px}.pending-file-item{flex-direction:column;gap:12px;text-align:center}.file-preview{align-self:center;height:100px;width:100px}.upload-modal-actions{flex-direction:column;padding:16px 20px}.cancel-btn,.confirm-btn{justify-content:center;padding:14px 20px;width:100%}}.empty-state{background:#ffffff0d;border:2px dashed #fff3}.empty-icon{color:#000;margin-bottom:24px;opacity:.5}.empty-state h3{color:#000}.empty-state p{color:#000000b3}@media (max-width:1024px){.media-header{padding:20px}.media-stats{gap:24px}.media-stats .stat-value{font-size:24px}.gallery-grid{gap:20px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}}@media (max-width:768px){.media-header{align-items:stretch;flex-direction:column;gap:20px;padding:16px}.media-stats{flex-wrap:wrap;gap:20px;justify-content:center}.media-stats .stat{min-width:80px}.media-stats .stat-value{font-size:22px}.upload-btn{justify-content:center;width:100%}.media-filters{gap:8px;justify-content:center}.filter-btn{flex:1 1;font-size:14px;justify-content:center;min-width:0;padding:10px 16px}.gallery-grid{gap:16px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.media-info{padding:16px}.media-name{font-size:15px}}@media (max-width:480px){.media-header{padding:12px}.media-stats{gap:16px}.media-stats .stat-value{font-size:20px}.media-filters{flex-direction:column;gap:8px}.filter-btn{justify-content:center;padding:12px 16px}.gallery-grid{gap:12px;grid-template-columns:1fr}.media-card{max-width:100%}.media-preview{height:180px}.media-info{padding:14px}.empty-state{padding:40px 16px}.empty-state h3{font-size:20px}.empty-state p{font-size:14px}}.social-connect-modal{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border:1px solid #ffffff4d;border-radius:20px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:500px;overflow-y:auto;position:relative;transform:scale(1);transition:transform .3s ease;width:100%}.modal-header{align-items:flex-start}.platform-info{align-items:center;display:flex;gap:16px}.platform-info h2{color:#000;font-size:20px;font-weight:600;margin:0 0 4px}.platform-info p{color:#000000b3;font-size:14px;line-height:1.4;margin:0}.current-account{background:#0000000d;border-radius:12px;margin-bottom:24px;padding:20px}.current-account h3{color:#000;font-size:16px;font-weight:600;margin:0 0 12px}.account-details{display:flex;flex-direction:column;gap:8px}.account-details p{color:#000;margin:0}.status{border-radius:6px;font-size:12px;font-weight:600;padding:4px 8px;text-transform:uppercase;width:-webkit-fit-content;width:fit-content}.status.connected{background:#22c55e33;color:#16a34a}.connect-methods{display:flex;flex-direction:column;gap:24px}.manual-section,.oauth-section{display:flex;flex-direction:column;gap:16px}.manual-section h3,.oauth-section h3{color:#000;font-size:16px;font-weight:600;margin:0}.oauth-section p{color:#000000b3;font-size:14px;margin:0}.oauth-btn{align-items:center;border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:12px;justify-content:center;padding:14px 24px;transition:all .3s ease}.oauth-btn:hover:not(:disabled){box-shadow:0 8px 25px #0003;transform:translateY(-2px)}.oauth-btn:disabled{cursor:not-allowed;opacity:.7;transform:none}.divider{align-items:center;display:flex;margin:8px 0;text-align:center}.divider:after,.divider:before{background:#0000001a;content:"";flex:1 1;height:1px}.divider span{color:#00000080;font-size:14px;font-weight:500;padding:0 16px}.form-group input{background:#fffc;border:1px solid #0003;border-radius:8px;color:#000;font-size:14px;padding:12px 16px;transition:all .2s ease}.form-group input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group input:disabled{cursor:not-allowed;opacity:.6}.api-info{background:#3b82f61a;border:1px solid #3b82f633;border-radius:8px;margin-top:12px;padding:12px}.api-info p{color:#1d4ed8;font-size:12px;line-height:1.4;margin:0}.connect-btn,.update-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.connect-btn:hover:not(:disabled),.update-btn:hover:not(:disabled){box-shadow:0 4px 12px #667eea4d;transform:translateY(-1px)}.disconnect-btn:hover:not(:disabled){background:#b91c1c;transform:translateY(-1px)}@media (max-width:1024px){.modal-overlay{padding:20px}.social-connect-modal{max-width:480px}}@media (max-width:768px){.modal-overlay{padding:16px}.social-connect-modal{max-height:95vh;max-width:none;width:100%}.modal-header{align-items:flex-start;flex-direction:column;gap:16px;padding:20px}.platform-info{gap:12px;width:100%}.platform-info h2{font-size:18px}.close-btn{align-self:flex-end}.modal-content{padding:20px}.oauth-btn{font-size:15px;padding:16px 24px}.form-group input{font-size:16px;padding:14px 16px}.modal-actions{flex-direction:column;gap:12px;padding:16px 20px}.modal-actions button{justify-content:center;padding:14px 20px;width:100%}}@media (max-width:480px){.modal-overlay{padding:12px}.modal-content,.modal-header{padding:16px}.platform-info h2{font-size:16px}.manual-section,.oauth-section{gap:12px}.modal-actions{padding:12px 16px}}.formats-guide{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:20px;display:flex;flex-direction:column;gap:32px;padding:24px}.guide-header{align-items:center;border-bottom:1px solid #0000001a;display:flex;gap:16px;padding-bottom:20px}.header-content{gap:16px}.header-content h2{font-size:24px;font-weight:700;margin:0 0 4px}.header-content p{color:#000000b3;font-size:14px;margin:0}.platform-selector{display:flex;flex-wrap:wrap;gap:8px}.platform-tab{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:12px;color:#000;cursor:pointer;display:flex;font-weight:500;gap:8px;padding:12px 20px;transition:all .3s ease}.platform-tab:hover{background:#ffffff26;transform:translateY(-1px)}.platform-tab.active{background:#667eea;background:var(--platform-color,#667eea);border-color:#0000;box-shadow:0 4px 12px #00000026;color:#fff}.platform-emoji{font-size:16px}.platform-emoji-large{font-size:32px}.platform-details{display:flex;flex-direction:column;gap:24px}.platform-header{gap:16px}.platform-title{align-items:center;display:flex;gap:16px}.platform-title h3{color:#000;font-size:20px;font-weight:600;margin:0}.formats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.format-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:16px;padding:20px;transition:all .3s ease}.format-card:hover{background:#ffffff26;box-shadow:0 8px 25px #0000001a;transform:translateY(-2px)}.format-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:16px}.format-header h4{color:#000;font-size:16px;font-weight:600;line-height:1.3;margin:0}.performance-badge{border-radius:6px;font-size:11px;font-weight:600;padding:4px 8px;text-transform:uppercase;white-space:nowrap}.performance-badge.best{background:#22c55e33;color:#16a34a}.performance-badge.good{background:#3b82f633;color:#2563eb}.performance-badge.standard{background:#9ca3af33;color:#6b7280}.dimensions-section{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.dimension-item{display:flex;flex-direction:column;gap:6px}.dimension-item.safe-zone{background:#3b82f61a;border:1px solid #3b82f633;border-radius:8px;padding:12px}.dimension-label{color:#000000b3;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.dimension-value{align-items:center;display:flex;gap:8px;justify-content:space-between}.dimension-text{color:#000;font-family:Courier New,monospace;font-size:18px;font-weight:700}.copy-btn{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:8px;color:#000000b3;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .2s ease;width:32px}.copy-btn:hover{background:#fff3;color:#000;transform:scale(1.05)}.copy-btn.small{height:24px;width:24px}.format-description{align-items:center;background:#ffffff0d;border-radius:8px;color:#000000b3;display:flex;font-size:12px;gap:8px;line-height:1.4;padding:8px 12px}.platform-tips{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;padding:20px}.platform-tips h4{color:#000;font-size:16px;font-weight:600;margin:0 0 12px}.platform-tips ul{list-style:none;margin:0;padding-left:20px}.platform-tips li{color:#000c;font-size:14px;line-height:1.5;margin-bottom:8px;position:relative}.platform-tips li:before{color:#667eea;content:"•";font-weight:700;left:-16px;position:absolute}.additional-platforms h3{color:#000;font-size:20px;font-weight:600;margin:0 0 20px}.additional-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.additional-platform{background:#ffffff14;border:1px solid #ffffff26;border-radius:12px;padding:16px}.additional-header{align-items:center;display:flex;gap:12px;margin-bottom:16px}.additional-header h4{color:#000;font-size:16px;font-weight:600;margin:0}.additional-formats{display:flex;flex-direction:column;gap:12px}.additional-format{border-bottom:1px solid #0000001a;display:flex;flex-direction:column;gap:4px;padding:8px 0}.additional-format:last-child{border-bottom:none}.format-name{color:#000c;font-size:13px;font-weight:500}.format-dimensions{align-items:center;display:flex;gap:8px;justify-content:space-between}.format-dimensions span{color:#000;font-family:Courier New,monospace;font-size:14px;font-weight:600}.format-note{color:#0009;font-size:11px;font-style:italic}.golden-rules h3{color:#000;font-size:20px;font-weight:600;margin:0 0 20px}.rules-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.rule-card{background:linear-gradient(135deg,#667eea1a,#764ba21a);border:1px solid #667eea33;border-radius:12px;padding:16px}.rule-card h4{color:#000;font-size:14px;font-weight:600;margin:0 0 8px}.rule-card p{color:#000c;font-size:13px;line-height:1.4;margin:0}@media (max-width:768px){.formats-guide{gap:24px;padding:16px}.platform-selector{gap:6px}.platform-tab{font-size:14px;padding:10px 16px}.formats-grid{gap:16px}.additional-grid,.formats-grid,.rules-grid{grid-template-columns:1fr}.dimension-value{align-items:flex-start;flex-direction:column;gap:8px}.copy-btn{align-self:flex-end}}@media (max-width:480px){.platform-title{align-items:flex-start;flex-direction:column;gap:8px}.platform-emoji-large{font-size:24px}.format-header{align-items:flex-start;flex-direction:column;gap:8px}}.social-tabs{border-bottom:1px solid var(--border-primary);display:flex;gap:8px;margin-bottom:32px;padding-bottom:16px}.tab-btn{background:#0000;border-radius:8px;color:var(--text-muted);padding:12px 20px;transition:all .3s ease}.tab-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.tab-btn.active{background:linear-gradient(135deg,#3b82f6,#1e3a8a);color:#fff}.overview-section{display:flex;flex-direction:column;gap:32px}.metrics-grid{grid-gap:20px;align-items:stretch;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.metric-card{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--card-bg);border:1px solid var(--border-primary);border-radius:16px;box-shadow:var(--shadow-lg);display:flex;gap:16px;padding:24px;transition:all .3s ease}.metric-card:hover{background:var(--bg-hover);box-shadow:var(--shadow-xl);transform:translateY(-2px)}.metric-icon{align-items:center;background:linear-gradient(135deg,#3b82f6,#1e3a8a);border-radius:12px;color:#fff;display:flex;height:48px;justify-content:center;width:48px}.metric-content{display:flex;flex-direction:column}.metric-value{color:var(--text-primary);font-size:24px;font-weight:700;margin-bottom:4px}.metric-label{color:var(--text-muted);font-size:14px;font-weight:500}.platforms-overview h3{color:var(--text-primary);font-size:20px;font-weight:600;margin:0 0 20px}.platforms-grid{grid-gap:20px;align-items:stretch;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.platform-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--card-bg);border:1px solid var(--border-primary);border-radius:16px;box-shadow:var(--shadow-lg);padding:20px;transition:all .3s ease}.platform-card:hover{background:var(--bg-hover);box-shadow:var(--shadow-xl);transform:translateY(-2px)}.platform-header{align-items:center;display:flex;gap:12px;margin-bottom:16px}.platform-name{color:var(--text-primary);font-size:16px;font-weight:600}.platform-stats{display:flex;flex-direction:column;gap:4px;position:relative}.username{color:var(--text-primary);font-size:14px;font-weight:500}.followers{color:var(--text-secondary);font-size:12px}.disconnect-btn-small{align-items:center;background:#ef4444;background:var(--error-color,#ef4444);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:700;height:20px;justify-content:center;position:absolute;right:-8px;top:-8px;transition:all .2s ease;width:20px;z-index:1}.disconnect-btn-small:hover{background:#dc2626;background:var(--error-hover,#dc2626);transform:scale(1.1)}.platform-disconnected{align-items:flex-start;display:flex;flex-direction:column;gap:12px}.platform-disconnected span{color:var(--text-muted);font-size:14px}.connect-btn{background:linear-gradient(135deg,#3b82f6,#1e3a8a);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:8px 16px;transition:all .3s ease}.connect-btn:hover{box-shadow:0 4px 12px #667eea4d;transform:translateY(-1px)}.posts-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.posts-header h3{color:var(--text-primary);font-size:20px;font-weight:600;margin:0}.create-post-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#1e3a8a);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:8px;padding:12px 20px;transition:all .3s ease}.create-post-btn:hover{box-shadow:0 8px 25px #667eea4d;transform:translateY(-2px)}.posts-grid{grid-gap:20px;align-items:stretch;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.post-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--card-bg);border:1px solid var(--border-primary);border-radius:16px;box-shadow:var(--shadow-lg);padding:20px;transition:all .3s ease}.post-card:hover{background:var(--bg-hover);box-shadow:var(--shadow-xl);transform:translateY(-2px)}.post-header{justify-content:space-between;margin-bottom:16px}.post-header,.post-platform{align-items:center;display:flex}.post-platform{color:var(--text-primary);font-size:14px;font-weight:500;gap:8px}.post-status{border-radius:6px;font-size:12px;font-weight:600;padding:4px 8px;text-transform:uppercase}.post-status.draft{background:#9ca3af33;color:#6b7280}.post-status.scheduled{background:#fbbf2433;color:#d97706}.post-status.published{background:#22c55e33;color:#16a34a}.post-content{margin-bottom:16px}.post-content p{color:var(--text-secondary);font-size:14px;line-height:1.5;margin:0}.post-metrics{display:flex;gap:16px}.metric{align-items:center;color:var(--text-muted);display:flex;font-size:12px;gap:4px}.empty-state{background:var(--bg-secondary);border:2px dashed var(--border-primary);border-radius:16px;margin:40px 0;padding:80px 40px}.empty-state svg{color:var(--text-muted);margin-bottom:24px;opacity:.5}.empty-state h3{color:var(--text-primary);font-size:24px;font-weight:600;margin:0 0 12px}.empty-state p{color:var(--text-muted);font-size:16px;margin:0 0 32px}.analytics-section h3{color:var(--text-primary);font-size:20px;font-weight:600;margin:0 0 24px}.analytics-placeholder{align-items:center;background:var(--bg-secondary);border-radius:16px;display:flex;flex-direction:column;justify-content:center;padding:80px 40px;text-align:center}.analytics-placeholder svg{color:var(--text-muted);margin-bottom:24px;opacity:.5}.analytics-placeholder h4{color:var(--text-primary);font-size:20px;font-weight:600;margin:0 0 12px}.analytics-placeholder p{color:var(--text-muted);font-size:16px;line-height:1.6;margin:0;max-width:500px}.accounts-section h3{color:var(--text-primary);font-size:20px;font-weight:600;margin:0 0 24px}.accounts-grid{grid-gap:20px;align-items:stretch;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.account-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--card-bg);border:1px solid var(--border-primary);border-radius:16px;padding:24px;transition:all .3s ease}.account-card:hover{background:var(--bg-hover);transform:translateY(-2px)}.account-header{align-items:center;display:flex;gap:16px;margin-bottom:20px}.account-info h4{color:var(--text-primary);font-size:18px;font-weight:600;margin:0 0 4px}.connected{color:#16a34a}.connected,.disconnected{font-size:12px;font-weight:600;text-transform:uppercase}.disconnected{color:#dc2626}.account-details p{color:var(--text-primary);font-size:14px;margin:0 0 8px}.account-details p:last-of-type{color:#000000b3;margin-bottom:16px}.disconnect-btn{background:#dc2626;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:8px 16px;transition:all .3s ease}.disconnect-btn:hover{background:#b91c1c;transform:translateY(-1px)}.account-connect p{color:#000000b3;font-size:14px;line-height:1.5;margin:0 0 16px}.loading{align-items:center;color:#000000b3;display:flex;font-size:18px;font-weight:500;justify-content:center;min-height:300px}@media (max-width:1024px){.metrics-grid{gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.platforms-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.posts-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.accounts-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}}@media (max-width:768px){.social-tabs{flex-wrap:wrap;gap:6px}.social-tabs,.tab-btn{justify-content:center}.tab-btn{flex:1 1;font-size:14px;min-width:120px;padding:10px 16px}.metrics-grid{gap:12px;grid-template-columns:repeat(2,1fr)}.metric-card{gap:12px;padding:16px}.metric-icon{height:40px;width:40px}.metric-value{font-size:20px}.metric-label{font-size:13px}.accounts-grid,.platforms-grid,.posts-grid{gap:16px;grid-template-columns:1fr}.posts-header{align-items:stretch;flex-direction:column;gap:16px}.create-post-btn{justify-content:center;width:100%}.account-card,.platform-card,.post-card{padding:16px}.empty-state{padding:40px 16px}.empty-state h3{font-size:20px}.empty-state p{font-size:14px}}@media (max-width:480px){.metrics-grid{gap:12px}.metric-card{flex-direction:row;padding:14px;text-align:left}.metric-icon{height:36px;width:36px}.metric-value{font-size:18px}.social-tabs{flex-direction:column;gap:8px}.tab-btn{justify-content:center;min-width:auto;padding:12px 16px}.account-card,.platform-card,.post-card{padding:14px}.account-header,.platform-header,.post-header{gap:10px}.empty-state{padding:30px 12px}.analytics-placeholder{padding:40px 16px}}.category-manager{padding:0}.category-header{justify-content:flex-start}.rotating{animation:spin 1s linear infinite}.category-header h3{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin:0}.add-category-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:16px;box-shadow:0 8px 20px #667eea4d;color:#fff;font-size:14px;font-weight:600;padding:14px 20px;transition:all .3s ease}.add-category-btn:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);box-shadow:0 12px 30px #667eea66;transform:translateY(-2px)}.loading{color:#6b7280}.error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626}.category-item{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:16px;box-shadow:var(--shadow-md);display:flex;justify-content:space-between;padding:20px;transition:all .3s ease}.category-item:hover{background:var(--bg-tertiary);border-color:var(--border-focus);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.category-item.editing{background:#667eea1a;border-color:#667eea80;box-shadow:0 8px 20px #667eea33}.category-info{gap:12px}.category-icon{font-size:20px;text-align:center;width:32px}.category-name{flex:1 1}.category-value{color:var(--text-secondary);font-family:monospace;font-size:14px}.icon-input{font-size:16px;text-align:center;width:50px}.name-input{flex:2 1}.value-input{flex:1 1;font-family:monospace;font-size:14px}.icon-input,.name-input,.value-input{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--input-bg);border:1px solid var(--border-primary);border-radius:12px;color:var(--input-text);font-size:14px;padding:12px 16px;transition:all .3s ease}.icon-input:focus,.name-input:focus,.value-input:focus{background:var(--bg-tertiary);border-color:var(--border-focus);box-shadow:0 0 0 4px #667eea1a;outline:none}.category-actions button{align-items:center;border:none;border-radius:4px;cursor:pointer;display:flex;justify-content:center;padding:8px;transition:all .2s}.edit-btn{background:#667eea1a;border-radius:12px;color:#667eea}.edit-btn:hover{background:#667eea33;color:#5a67d8;transform:translateY(-1px)}.delete-btn{background:#ef44441a;border-radius:12px}.delete-btn:hover{background:#ef444433;color:#dc2626;transform:translateY(-1px)}.save-btn{background:#22c55e1a;border-radius:12px;color:#22c55e}.save-btn:hover{background:#22c55e33;color:#16a34a;transform:translateY(-1px)}.cancel-btn{background:#9ca3af1a;border-radius:12px;color:#6b7280}.cancel-btn:hover{background:#9ca3af33;color:#4b5563;transform:translateY(-1px)}@media (max-width:768px){.category-manager{padding:16px}.category-header,.category-item{align-items:stretch;flex-direction:column;gap:12px}.category-info{justify-content:space-between}.category-form{flex-direction:column}.category-actions{justify-content:center}}.budget-category-manager{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-secondary);border-radius:12px;padding:20px}.budget-category-manager h3{color:var(--text-primary);font-size:18px;font-weight:600;margin:0 0 20px}.category-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.add-category-btn{align-items:center;background:#3b82f633;border:1px solid #3b82f666;border-radius:8px;color:#3b82f6;cursor:pointer;display:flex;font-weight:500;gap:8px;padding:10px 16px;transition:all .2s ease}.add-category-btn:hover{background:#3b82f64d;border-color:#3b82f699;box-shadow:0 4px 8px #3b82f633;transform:translateY(-1px)}.categories-list{display:flex;flex-direction:column;gap:12px}.budget-category-item{align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:10px;display:flex;justify-content:space-between;padding:16px;transition:all .2s ease}.budget-category-item:hover{background:var(--bg-hover);border-color:var(--border-secondary)}.budget-category-item.editing{background:#ffffff1a;border-color:#3b82f666}.category-info{align-items:center;display:flex;flex:1 1;gap:202px}.category-color{border:2px solid #ffffff4d;border-radius:50%;height:20px;width:20px}.category-name{color:var(--text-primary);font-size:26px;font-weight:500}.category-budget{color:var(--text-secondary);font-size:14px;margin-left:auto;margin-right:16px}.category-actions{display:flex;gap:8px}.cancel-btn,.delete-btn,.edit-btn,.save-btn{align-items:center;border:1px solid #fff3;border-radius:6px;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .2s ease;width:32px}.edit-btn{background:#3b82f633;color:#3b82f6}.edit-btn:hover{background:#3b82f64d;border-color:#3b82f680}.delete-btn{background:#ef444433;color:#ef4444}.delete-btn:hover{background:#ef44444d;border-color:#ef444480}.save-btn{background:#22c55ee6;border-color:#22c55ecc}.save-btn:hover{background:#22c55e;transform:scale(1.05)}.cancel-btn{background:#ef4444e6;border-color:#ef4444cc;color:#fff}.cancel-btn:hover{background:#ef4444;transform:scale(1.05)}.category-form{align-items:center;display:flex;flex:1 1;gap:12px}.name-input{background:var(--input-bg);border:2px solid var(--border-primary);border-radius:8px;color:var(--input-text);flex:1 1;font-size:16px;font-weight:600;min-width:150px;padding:8px 12px}.name-input:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px #3b82f61a;outline:none}.color-input{background:none;border:2px solid #ffffff4d;border-radius:8px;cursor:pointer;height:40px;width:40px}.color-input::-webkit-color-swatch-wrapper{padding:0}.color-input::-webkit-color-swatch{border:none;border-radius:6px}.budget-input{background:var(--input-bg);border:2px solid var(--border-primary);border-radius:8px;color:var(--input-text);font-size:16px;font-weight:600;padding:8px 12px;text-align:right;width:120px}.budget-input:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px #3b82f61a;outline:none}.loading{color:var(--text-secondary);padding:20px}.error{background:#ef444433;border:1px solid #ef444466;border-radius:8px;color:#ef4444;margin-bottom:16px;padding:12px}@media (max-width:768px){.budget-category-item{align-items:stretch;flex-direction:column;gap:12px}.category-info{justify-content:space-between}.category-form{flex-direction:column;gap:8px}.budget-input,.name-input{width:100%}}.collapsible-section{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffffe6;border:1px solid #fff3;border-radius:20px;box-shadow:0 10px 30px #0000001a,0 0 0 1px #ffffff4d;margin-bottom:20px;overflow:hidden;transition:all .3s ease}.collapsible-header-container{align-items:center;display:flex;justify-content:space-between;width:100%}.collapsible-header{background:none;border:none;cursor:pointer;flex:1 1;padding:16px 0;transition:all .3s ease}.collapsible-title{align-items:center;display:flex;gap:12px;text-align:left}.collapsible-title h3{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0}.collapsible-header:hover .collapsible-title h3{color:#667eea}.collapsible-header-action{flex-shrink:0;margin-left:16px}.collapsible-content{animation:slideDown .3s ease-out;padding-top:16px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.collapsible-content,.collapsible-header{padding:16px}.collapsible-title h3{font-size:1.125rem}}.gestion-page{margin:0 auto;max-width:1400px;padding:2rem}.page-header{margin-bottom:2rem}.page-header h1{color:var(--text-primary);font-size:2.5rem;font-weight:600;margin-bottom:.5rem}.page-header p{color:var(--text-muted);font-size:1.1rem}.gestion-tabs{border-bottom:2px solid var(--border-primary);display:flex;gap:.5rem;margin-bottom:2rem;padding-bottom:0}.tab-button{background:none;border:none;border-bottom:3px solid #0000;color:var(--text-muted);cursor:pointer;font-size:1rem;font-weight:500;padding:1rem 1.5rem;transition:all .3s ease}.tab-button.active,.tab-button:hover{background-color:var(--bg-hover);color:#3498db}.tab-button.active{border-bottom-color:#3498db}.dashboard-stats{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.stat-card{border-left:4px solid #3498db;border-radius:12px;text-align:center}.stat-card h3{color:var(--text-muted);font-size:.9rem;font-weight:500;letter-spacing:.5px;margin-bottom:.5rem;text-transform:uppercase}.stat-number{font-size:2.5rem;margin-bottom:.5rem}.stat-detail{color:var(--text-light);font-size:.9rem}.dashboard-grid{display:flex;gap:2rem;grid-template-columns:1fr 1fr}.dashboard-section{background:var(--card-bg);border-radius:12px;box-shadow:var(--shadow-lg);padding:1.5rem}.dashboard-section h3{color:var(--text-primary);font-size:1.3rem;font-weight:600;margin-bottom:1rem}.properties-list{display:flex;flex-direction:column;gap:1rem}.property-item{align-items:center;background:var(--bg-secondary);border-left:4px solid #3498db;border-radius:8px;display:flex;justify-content:space-between;padding:1rem}.property-info h4{color:var(--text-primary);font-size:1.1rem;margin-bottom:.25rem}.property-info p{color:var(--text-muted);font-size:.9rem;margin-bottom:.25rem}.apartment-count{background:#e3f2fd;color:#1976d2;font-weight:500;padding:.25rem .5rem}.apartment-count,.status-badge{border-radius:12px;font-size:.8rem}.status-badge{color:#fff;text-transform:capitalize}.tasks-list{display:flex;flex-direction:column;gap:1rem}.task-item{align-items:center;background:var(--bg-secondary);border-left:4px solid #e67e22;border-radius:8px;display:flex;justify-content:space-between;padding:1rem}.task-info h4{color:var(--text-primary);font-size:1rem;margin-bottom:.25rem}.task-info p{color:var(--text-muted);font-size:.9rem;margin-bottom:.25rem}.task-property{background:#fff3cd;color:#856404;padding:.25rem .5rem}.task-property,.type-badge{border-radius:12px;font-size:.8rem}.type-badge{font-weight:500;padding:.25rem .75rem;text-transform:capitalize}.type-badge.visit{background:#e3f2fd;color:#1976d2}.type-badge.meeting{background:#f3e5f5;color:#7b1fa2}.type-badge.maintenance{background:#fff3e0;color:#f57c00}.type-badge.administrative{background:#e8f5e8;color:#388e3c}.type-badge.contractor{background:#fff3e0;color:#f57c00}.type-badge.architect{background:#f3e5f5;color:#7b1fa2}.type-badge.cleaning{background:#e3f2fd;color:#1976d2}.type-badge.security{background:#ffebee;color:#d32f2f}.agenda-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.agenda-header h3{color:var(--text-primary);font-size:1.5rem;font-weight:600}.agenda-filters{display:flex;gap:1rem;margin-bottom:1.5rem}.agenda-filters input,.agenda-filters select{background:var(--input-bg);border:1px solid var(--border-primary);border-radius:6px;color:var(--input-text);font-size:.9rem;padding:.5rem}.agenda-grid{display:flex;flex-direction:column;gap:1rem}.agenda-item{grid-gap:1rem;background:var(--card-bg);border-left:4px solid #3498db;border-radius:8px;box-shadow:var(--shadow-lg);display:grid;gap:1rem;grid-template-columns:150px 1fr auto;padding:1.5rem}.agenda-time{align-items:center;text-align:center}.agenda-time .date{color:var(--text-primary);font-size:.9rem;font-weight:600}.agenda-time .time{color:var(--text-muted);font-size:1.1rem;font-weight:500}.agenda-details h4{color:var(--text-primary);margin-bottom:.5rem}.agenda-details .property{color:var(--text-muted);font-size:.9rem;margin-bottom:.5rem}.messages-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.messages-header h3{color:var(--text-primary);font-size:1.5rem;font-weight:600}.messages-filters{margin-bottom:1.5rem}.messages-filters select{background:var(--input-bg);border:1px solid var(--border-primary);border-radius:6px;color:var(--input-text);font-size:.9rem;padding:.5rem}.messages-list{display:flex;flex-direction:column;gap:1rem}.message-item{background:var(--card-bg);border-left:4px solid #95a5a6;border-radius:8px;box-shadow:var(--shadow-lg);padding:1.5rem}.message-item.unread{background:#fdf2f2;border-left-color:#e74c3c}.message-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.message-from strong{color:var(--text-primary);font-size:1rem}.message-date{color:var(--text-muted);font-size:.9rem;margin-left:1rem}.priority-badge{font-size:.8rem}.message-subject h4{color:var(--text-primary);font-size:1.1rem;margin-bottom:.5rem}.message-preview p{color:var(--text-muted);font-size:.9rem;margin-bottom:1rem}.message-actions{display:flex;gap:.5rem}.documents-header{margin-bottom:1.5rem}.documents-header h3{color:var(--text-primary);font-size:1.5rem;font-weight:600}.documents-filters{display:flex;gap:1rem;margin-bottom:1.5rem}.documents-filters select{background:var(--input-bg);border:1px solid var(--border-primary);border-radius:6px;color:var(--input-text);font-size:.9rem;padding:.5rem}.documents-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.document-item{background:var(--card-bg);border-top:4px solid #9b59b6;box-shadow:var(--shadow-lg);flex-direction:column;padding:1.5rem}.document-icon{font-size:2rem;margin-bottom:1rem;text-align:center}.document-info h4{color:var(--text-primary);font-size:1rem;margin-bottom:.5rem}.document-info p{color:var(--text-muted);font-size:.9rem;margin-bottom:.25rem}.document-actions{gap:.5rem;margin-top:1rem}.providers-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.providers-header h3{color:var(--text-primary);font-size:1.5rem;font-weight:600}.providers-filters{margin-bottom:1.5rem}.providers-filters select{background:var(--input-bg);border:1px solid var(--border-primary);border-radius:6px;color:var(--input-text);font-size:.9rem;padding:.5rem}.providers-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.provider-item{background:var(--card-bg);border-radius:8px;border-top:4px solid #27ae60;box-shadow:var(--shadow-lg);padding:1.5rem}.provider-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.provider-header h4{color:var(--text-primary);font-size:1.1rem}.provider-info p{color:var(--text-muted);font-size:.9rem;margin-bottom:.5rem}.provider-rating{margin:.5rem 0}.provider-rating span{background:#fff3cd;color:#856404}.provider-projects span,.provider-rating span{border-radius:12px;font-size:.8rem;padding:.25rem .5rem}.provider-projects span{background:#d1ecf1;color:#0c5460}.provider-actions{display:flex;gap:.5rem;margin-top:1rem}.btn-primary{border-radius:6px;font-weight:500}.btn-primary,.btn-secondary{font-size:.9rem;justify-content:center;min-width:-webkit-fit-content;min-width:fit-content;transition:background-color .3s ease}.btn-secondary{border:none;border-radius:6px}.btn-contact,.btn-edit,.btn-reply{background:#f39c12;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;padding:.5rem 1rem;transition:background-color .3s ease}.btn-contact:hover,.btn-edit:hover,.btn-reply:hover{background:#e67e22}.btn-complete,.btn-download{background:#27ae60;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;padding:.5rem 1rem;transition:background-color .3s ease}.btn-complete:hover,.btn-download:hover{background:#229954}.btn-archive,.btn-history,.btn-share{background:#95a5a6;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;padding:.5rem 1rem;transition:background-color .3s ease}.btn-archive:hover,.btn-history:hover,.btn-share:hover{background:#7f8c8d}.btn-delete{background:#e74c3c;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;padding:.5rem 1rem;transition:background-color .3s ease}.btn-delete:hover{background:#c0392b}.modal-content{max-width:600px;padding:0}.modal-header{padding:1.5rem}.modal-close{background:none;border:none;border-radius:4px;font-size:1.5rem;padding:.25rem;transition:background-color .2s}.modal-close:hover{background:var(--bg-hover)}.task-form{padding:1.5rem}.form-group{margin-bottom:1rem}.form-group label{font-size:.9rem}.form-group input,.form-group select,.form-group textarea{border:1px solid var(--border-primary);font-size:.9rem;padding:.75rem;transition:border-color .2s,box-shadow .2s}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.client-section{background:#f7fafc;border-left:4px solid #4299e1;border-radius:8px;margin:1.5rem 0;padding:1rem}.client-section h4{color:#2d3748;font-size:1rem;margin-bottom:1rem}.modal-actions{border-top:1px solid #e2e8f0;gap:.75rem;margin-top:1.5rem;padding-top:1rem}.modal-actions button{border-radius:6px;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.modal-actions button[type=button]{background:#f7fafc;border:1px solid #cbd5e0;color:#4a5568}.modal-actions button[type=button]:hover{background:#edf2f7}.agenda-time{display:flex;flex-direction:column;gap:.5rem}.date-info,.time-info{align-items:center;color:#4a5568;display:flex;font-size:.9rem;gap:.5rem}.task-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:.5rem}.task-header h4{color:#2d3748;font-size:1.1rem;font-weight:600;margin:0}.description{color:#718096;font-size:.9rem;line-height:1.4;margin-bottom:.5rem}.client-info,.location-info{color:#718096;font-size:.85rem;margin-bottom:.25rem}.client-info,.location-info,.task-meta{align-items:center;display:flex;gap:.5rem}.task-meta{margin-top:.75rem}.priority-badge{color:#fff;text-transform:capitalize}.duration,.priority-badge{border-radius:12px;font-size:.75rem;font-weight:500;padding:.25rem .5rem}.duration{background:#edf2f7;color:#4a5568}.agenda-actions{display:flex;flex-direction:column;gap:.5rem;min-width:120px}.agenda-actions button{border:none;border-radius:4px;cursor:pointer;font-size:.8rem;font-weight:500;padding:.5rem .75rem;transition:all .2s}.empty-state{color:#718096}.empty-state h3{color:#4a5568;font-size:1.2rem;margin:1rem 0 .5rem}.empty-state p{margin-bottom:1.5rem}.loading{color:#718096;font-style:italic;padding:2rem;text-align:center}.error{background:#fed7d7;border-left:4px solid #e53e3e;border-radius:6px;color:#c53030;margin-bottom:1rem;padding:1rem}.type-badge.call{background:#e6fffa;color:#234e52}.type-badge.inspection{background:#fef5e7;color:#744210}.type-badge.document{background:#f0fff4;color:#22543d}.type-badge.other{background:#faf5ff;color:#553c9a}@media (max-width:768px){.gestion-page{padding:1rem}.agenda-item,.dashboard-grid{grid-template-columns:1fr}.agenda-item{gap:1rem}.documents-grid,.providers-grid{grid-template-columns:1fr}.gestion-tabs{flex-wrap:wrap}.tab-button{font-size:.9rem;padding:.75rem 1rem}.modal-content{margin:1rem;width:95%}.form-row{grid-template-columns:1fr}.agenda-actions{flex-direction:row;min-width:auto}}.image-upload-container{margin-bottom:1rem;width:100%}.image-upload-zone{align-items:center;background:#fafbfc;border:2px dashed #e1e5e9;border-radius:12px;cursor:pointer;display:flex;justify-content:center;min-height:200px;padding:2rem;text-align:center;transition:all .3s ease}.image-upload-zone:hover{background:#f8faff;border-color:#6366f1}.image-upload-zone.drag-over{background:#f0f4ff;border-color:#6366f1;transform:scale(1.02)}.upload-content{align-items:center;display:flex;flex-direction:column;gap:.5rem}.upload-icon{color:#9ca3af;margin-bottom:.5rem}.upload-text{color:#374151;font-size:1.1rem;font-weight:600;margin:0}.upload-subtext{color:#6b7280;font-size:.9rem;margin:0}.image-upload-preview{border-radius:12px;box-shadow:0 4px 6px -1px #0000001a;display:inline-block;overflow:hidden;position:relative}.preview-image{display:block;height:200px;max-width:300px;object-fit:cover;width:100%}.remove-image-btn{align-items:center;background:#ef4444e6;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:32px;justify-content:center;position:absolute;right:8px;top:8px;transition:all .2s ease;width:32px}.remove-image-btn:hover{background:#ef4444;transform:scale(1.1)}.url-input-container{background:#fafbfc;border:2px solid #e1e5e9;border-radius:12px;display:flex;flex-direction:column;gap:1rem;padding:1rem}.url-input{border:1px solid #d1d5db;border-radius:8px;font-size:1rem;padding:.75rem;transition:border-color .2s ease}.url-input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a;outline:none}.url-actions{display:flex;gap:.5rem;justify-content:flex-end}.url-cancel-btn,.url-submit-btn{border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.url-submit-btn{background:#6366f1;color:#fff}.url-submit-btn:hover:not(:disabled){background:#5856eb}.url-submit-btn:disabled{background:#9ca3af;cursor:not-allowed}.url-cancel-btn{background:#f3f4f6;color:#374151}.url-cancel-btn:hover{background:#e5e7eb}.upload-options{display:flex;gap:.5rem;justify-content:center;margin-top:1rem}.upload-option-btn{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.upload-option-btn:hover{background:#f9fafb;border-color:#6366f1;color:#6366f1}@media (max-width:768px){.image-upload-zone{min-height:150px;padding:1.5rem}.upload-options{flex-direction:column}.upload-option-btn{justify-content:center}.preview-image{height:150px;max-width:100%}}.projects-new{background:var(--bg-primary);margin:0 auto;max-width:1400px;min-height:100vh;padding:2rem}.header-content,.projects-header{margin-bottom:2rem}.header-content{align-items:flex-start;background:linear-gradient(0deg,var(--bg-tertiary) 0,var(--bg-secondary) 100%);border-radius:10px;box-shadow:var(--shadow-xl);color:var(--text-primary);justify-content:space-between;padding:2rem}.header-text h1{font-size:2.5rem;font-weight:800;margin:0 0 .5rem;text-shadow:0 2px 4px #0003}.header-text p{font-size:1.1rem;margin:0;opacity:.9}.btn-create-project{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:2px solid #ffffff4d;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.75rem;padding:1rem 2rem;transition:all .3s ease}.btn-create-project:hover{background:#ffffff4d;border-color:#ffffff80;box-shadow:0 8px 25px #0003;transform:translateY(-2px)}.global-stats{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.stat-card{align-items:center;background:var(--card-bg);border:1px solid var(--border-primary);border-radius:16px;box-shadow:var(--shadow-lg);display:flex;gap:1rem;overflow:hidden;padding:1.5rem;transition:all .3s ease}.stat-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}.stat-icon{align-items:center;border-radius:12px;display:flex;flex-shrink:0;height:50px;justify-content:center;width:50px}.stat-icon.projects{background:linear-gradient(135deg,#3b82f6,#1e3a8a);color:#fff}.stat-icon.units{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.stat-icon.available{background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff}.stat-icon.value{background:linear-gradient(135deg,#43e97b,#38f9d7);color:#fff}.stat-icon.occupancy{background:linear-gradient(135deg,#fa709a,#fee140);color:#fff}.stat-content{display:flex;flex-direction:column;gap:.25rem}.stat-value{color:var(--text-primary);font-size:1.75rem;font-weight:800;line-height:1}.stat-label{color:var(--text-muted);font-size:.875rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.units-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:2rem}.unit-card{background:var(--card-bg);border:1px solid var(--border-primary);border-radius:16px;box-shadow:var(--shadow-lg)}.unit-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}.unit-header{border-bottom:1px solid var(--border-primary);padding:1.5rem}.unit-title{color:var(--text-primary);font-size:1.125rem;font-weight:700;margin:0 0 .5rem}.unit-type{background:var(--bg-accent);border-radius:20px;color:var(--text-accent);display:inline-block;font-size:.75rem;font-weight:600;padding:.25rem .75rem}.projects-controls{align-items:center;background:var(--card-bg);border:1px solid var(--border-primary);border-radius:16px;box-shadow:var(--shadow-lg);display:flex;justify-content:space-between;margin-bottom:2rem;padding:1.5rem}.controls-left{gap:1rem}.controls-left,.search-box{align-items:center;display:flex}.search-box{position:relative}.search-box svg{color:var(--text-muted);left:1rem;position:absolute;z-index:1}.search-box input{background:var(--input-bg);border:2px solid var(--border-primary);border-radius:12px;color:var(--input-text);font-size:.875rem;padding:.75rem 1rem .75rem 3rem;transition:all .2s ease;width:300px}.search-box input:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px #667eea1a;outline:none}.filter-btn{align-items:center;background:var(--bg-secondary);border:2px solid var(--border-primary);border-radius:12px;color:var(--text-muted);cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.75rem 1rem;transition:all .2s ease}.filter-btn.active,.filter-btn:hover{background:#3b82f6;border-color:#3b82f6;color:#fff}.controls-right{gap:1rem}.controls-right,.sort-controls{align-items:center;display:flex}.sort-controls{gap:.5rem}.sort-select{background:var(--input-bg);border:2px solid var(--border-primary);border-radius:12px;color:var(--input-text);cursor:pointer;font-size:.875rem;padding:.75rem 1rem}.sort-order-btn{align-items:center;background:var(--bg-secondary);border:2px solid var(--border-primary);border-radius:10px;color:var(--text-muted);cursor:pointer;display:flex;height:40px;justify-content:center;transition:all .2s ease;width:40px}.sort-order-btn:hover{background:#3b82f6;border-color:#3b82f6;color:#fff}.view-toggle{background:var(--bg-secondary);border:2px solid var(--border-primary);border-radius:12px;display:flex;padding:.25rem}.view-btn{align-items:center;border:none;border-radius:12px;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:600;gap:.5rem;justify-content:center;padding:.75rem 1.5rem;text-decoration:none;transition:all .2s ease}.view-btn.active{background:#3b82f6;box-shadow:0 2px 8px #667eea4d;color:#fff}.filters-panel{background:var(--card-bg);border:1px solid var(--border-primary);border-radius:16px;box-shadow:var(--shadow-lg);margin-bottom:2rem;padding:1.5rem}.filter-group{align-items:center;display:flex;flex-direction:column;gap:.5rem}.filter-group label{color:var(--text-secondary);font-size:.875rem;font-weight:600}.filter-group select{background:var(--input-bg);border:2px solid var(--border-primary);border-radius:12px;color:var(--input-text);cursor:pointer;font-size:.875rem;max-width:200px;padding:.75rem 1rem}.projects-container,.projects-grid{margin-top:2rem}.projects-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(3,1fr)}.projects-list{display:flex;flex-direction:column;gap:1rem}.project-card{background:var(--card-bg);border:1px solid var(--border-primary);border-radius:20px;box-shadow:var(--shadow-lg);overflow:hidden;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.project-card-image{height:300px;overflow:hidden;position:relative;width:100%}.project-card-image img{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.project-card:hover .project-card-image img{transform:scale(1.05)}.project-card:hover{box-shadow:0 20px 40px #00000026;transform:translateY(-8px)}.project-card-header{align-items:center;display:flex;justify-content:space-between;padding:1.5rem 1.5rem 0}.project-status{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:20px;color:var(--text-primary);display:flex;font-size:1.125rem;font-weight:600;gap:.75rem;min-height:44px;padding:.5rem 1rem}.project-status svg{display:block!important;flex-shrink:0;height:28px!important;opacity:1!important;visibility:visible!important;width:28px!important}.status-icon{display:inline-flex;flex-shrink:0;height:16px;width:16px}.status-icon.planning{color:#f59e0b!important}.status-icon.construction{color:#3b82f6!important}.status-icon.completed{color:#10b981!important}.status-icon.hold{color:#ef4444!important}.project-actions{display:flex;gap:.5rem}.action-btn{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:6px;color:var(--text-muted);cursor:pointer;display:flex!important;height:32px;justify-content:center;opacity:1!important;transition:all .2s ease;visibility:visible!important;width:32px}.action-btn:hover{background:#3b82f6;border-color:#3b82f6;color:#fff}.action-btn.danger:hover{background:#ef4444;border-color:#ef4444}.project-card-content{padding:1.5rem}.project-main-info{margin-bottom:1.5rem}.project-name{color:var(--text-primary);font-size:1.5rem;font-weight:700;line-height:1.2;margin:0 0 .75rem}.project-location{margin-bottom:1rem}.project-description,.project-location{color:var(--text-muted);font-size:.875rem}.project-description{margin:0}.project-stats-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr);margin-bottom:1.5rem}.stat-item{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:12px;display:flex;flex-direction:column;gap:.5rem;padding:1rem;text-align:center}.stat-item svg{color:#3b82f6}.stat-number{color:var(--text-primary);font-size:1.25rem;font-weight:700}.stat-text{color:var(--text-muted);font-size:.75rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.project-dates{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:12px;display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem;padding:1rem}.date-item{color:var(--text-muted);font-size:.875rem;gap:.5rem}.project-card-footer{padding:0 1.5rem 1.5rem}.btn-view-project{background:linear-gradient(135deg,#3b82f6,#1e3a8a);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:1rem;transition:all .3s ease;width:100%}.btn-view-project:hover{box-shadow:0 8px 25px #667eea66;transform:translateY(-2px)}.projects-container.list .project-card{align-items:center;border-radius:16px;display:flex;padding:1.5rem}.projects-container.list .project-card-header{margin-right:2rem;padding:0}.projects-container.list .project-card-content{align-items:center;display:flex;flex:1 1;gap:2rem;padding:0}.projects-container.list .project-main-info{flex:1 1;margin-bottom:0}.projects-container.list .project-stats-grid{display:flex;gap:1rem;margin-bottom:0}.projects-container.list .stat-item{min-width:80px;padding:.75rem}.projects-container.list .project-card-footer{margin-left:2rem;padding:0}.projects-container.list .btn-view-project{padding:.75rem 1.5rem;white-space:nowrap;width:auto}.empty-state{align-items:center;color:var(--text-muted);display:flex;flex-direction:column;justify-content:center;padding:4rem 2rem}.empty-state svg{color:var(--text-light);margin-bottom:1.5rem}.empty-state h3{color:var(--text-secondary);font-size:1.5rem;margin:0 0 1rem}.empty-state p{font-size:1rem;line-height:1.6;margin:0 0 2rem;max-width:400px}.projects-error,.projects-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:400px;padding:4rem 2rem;text-align:center}.projects-error svg{color:#ef4444;margin-bottom:1rem}.projects-error h2{color:#374151;margin:0 0 .5rem}.modal-overlay{background:#0009}.modal-content{background:var(--bg-modal);border-radius:20px;box-shadow:var(--shadow-xl);max-width:500px}.modal-content.large{max-width:800px}.modal-header{border-bottom:1px solid var(--border-primary);padding:2rem 2rem 1rem}.modal-header h2{color:var(--text-primary);font-weight:700}.modal-close{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:10px;color:var(--text-muted);height:40px;width:40px}.modal-close:hover{background:#ef4444;border-color:#ef4444;color:#fff}.modal-body{padding:2rem}.modal-footer{border-top:1px solid var(--border-primary);padding:1rem 2rem 2rem}.form-grid{grid-gap:1.5rem;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.form-group label{color:var(--text-secondary);margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{background:var(--input-bg);border:2px solid var(--border-primary);border-radius:12px;color:var(--input-text);padding:.75rem 1rem;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--border-focus);box-shadow:var(--shadow-focus)}.btn-primary{border-radius:12px;transition:all .3s ease}.btn-primary:hover{box-shadow:0 8px 25px #667eea66;transform:translateY(-2px)}.btn-secondary{background:var(--bg-secondary);border:2px solid var(--border-primary);border-radius:12px;color:var(--text-muted);font-weight:600}.btn-secondary:hover{background:var(--bg-hover);color:var(--text-secondary)}.btn-danger{background:#ef4444;border-radius:12px;font-weight:600;transition:all .3s ease}.btn-danger:hover{background:#dc2626;box-shadow:0 8px 25px #ef444466;transform:translateY(-2px)}.warning-text{color:#ef4444;font-size:.875rem;margin-top:.5rem}@media (max-width:1400px){.projects-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.projects-header{align-items:stretch;flex-direction:column;gap:1.5rem}.header-content{text-align:center}.global-stats{grid-template-columns:repeat(2,1fr)}.projects-controls{flex-direction:column;gap:1rem}.controls-right{justify-content:center}.projects-grid{grid-template-columns:1fr}.projects-container.list .project-card-content{flex-direction:column;gap:1rem}.projects-container.list .project-stats-grid{display:grid;grid-template-columns:repeat(2,1fr)}.modal-content{margin:1rem;width:calc(100% - 2rem)}.form-grid{grid-template-columns:1fr}}.project-detail{margin:0 auto;max-width:1400px;padding:2rem}.project-detail-header{background:linear-gradient(135deg,#3b82f6,#1e3a8a);border-radius:16px;box-shadow:0 8px 32px #667eea4d;color:#fff;margin-bottom:2rem;padding:2rem}.header-top{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.header-actions{display:flex;gap:1rem}.project-hero{align-items:flex-start;display:flex;gap:1.5rem}.project-hero-image{border-radius:16px;box-shadow:0 8px 32px #0000001f;height:120px;overflow:hidden;width:120px}.project-hero-image img{height:100%;object-fit:cover;width:100%}.back-button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:1px solid #ffffff4d;color:#fff}.back-button:hover{background:#ffffff4d;border-color:#ffffff80;transform:translateY(-1px)}.project-main-info{flex:1 1}.project-meta{align-items:center;display:flex;flex-wrap:wrap;gap:1.5rem;margin:1rem 0}.project-description{color:#ffffffe6;font-size:1rem;line-height:1.6;margin:1rem 0 0;max-width:600px}.project-icon{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:1px solid #ffffff4d;border-radius:20px;color:#fff;display:flex;flex-shrink:0;height:80px;justify-content:center;width:80px}.project-main-info h1{color:#fff;font-size:2.5rem;font-weight:800;margin:0;text-shadow:0 2px 4px #0003}.project-location{align-items:center;color:#ffffffe6;display:flex;font-size:1rem;gap:.5rem}.status-badge-large{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:1px solid #ffffff4d;border-radius:25px;font-size:.875rem;font-weight:600;letter-spacing:.05em;padding:.5rem 1rem;text-transform:uppercase}.project-status-planning{background:#fef5e7;color:#d69e2e}.project-status-construction{background:#e6fffa;color:#319795}.project-status-completed{background:#f0fff4;color:#38a169}.project-status-hold{background:#fed7d7;color:#e53e3e}.header-actions .btn-secondary{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:1px solid #ffffff4d;color:#fff}.header-actions .btn-secondary:hover{background:#ffffff4d;border-color:#ffffff80;transform:translateY(-1px)}.header-actions .btn-primary{background:#ffffffe6;border:none;color:#3b82f6}.header-actions .btn-primary:hover{background:#fff;box-shadow:0 4px 12px #0003;transform:translateY(-1px)}.project-quick-stats{-webkit-overflow-scrolling:touch;display:flex;gap:1rem;margin-bottom:2rem;overflow-x:auto;padding:0 .5rem}.quick-stat{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;gap:.75rem;min-width:140px;padding:1rem 1.5rem;transition:all .2s ease}.quick-stat:hover{box-shadow:0 4px 16px #00000026;transform:translateY(-2px)}.quick-stat-icon{align-items:center;border-radius:10px;display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.quick-stat-icon.home{background:#f0f9ff;color:#0284c7}.quick-stat-icon.available{background:#f0fdf4;color:#16a34a}.quick-stat-icon.value{background:#fef3c7;color:#d97706}.quick-stat-icon.average{background:#f3e8ff;color:#9333ea}.quick-stat-content{display:flex;flex-direction:column;gap:.25rem}.quick-stat-value{color:#1f2937;font-size:1.25rem;font-weight:700}.quick-stat-label{color:#6b7280;font-size:.75rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.project-navigation{background:linear-gradient(135deg,#f8fafc,#fff);border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #00000014;overflow:hidden;padding:1.5rem;position:relative}.project-navigation:before{animation:shimmer 3s ease-in-out infinite;background:linear-gradient(90deg,#3b82f6,#1e3a8a 50%,#3b82f6);background-size:200% 100%;content:"";height:3px;left:0;position:absolute;right:0;top:0}@keyframes shimmer{0%,to{background-position:200% 0}50%{background-position:-200% 0}}.nav-tabs{align-items:center;gap:.75rem}.nav-tab{background:#fff;border:2px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 4px #0000000d;color:#64748b;font-weight:600;min-height:48px;overflow:hidden;padding:1rem 1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.nav-tab:before{background:linear-gradient(90deg,#0000,#fff6,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.nav-tab:hover:before{left:100%}.nav-tab:hover{background:#f8fafc;border-color:#cbd5e1;box-shadow:0 8px 25px #0000001a;color:#475569;transform:translateY(-2px)}.nav-tab.active{box-shadow:0 8px 32px #667eea66;transform:translateY(-1px)}.nav-tab.active:before{display:none}.nav-tab svg{flex-shrink:0;transition:transform .2s ease}.nav-tab:hover svg{transform:scale(1.1)}.nav-tab span{font-weight:600;white-space:nowrap}.tab-count{background:#64748b1a;border:1px solid #64748b33;border-radius:20px;color:#64748b;font-weight:700;min-width:24px;padding:.375rem .75rem;transition:all .2s ease}.nav-tab.active .tab-count{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff40;border-color:#ffffff4d;color:#fff}.nav-tab:hover .tab-count{background:#64748b26;transform:scale(1.05)}.tab-actions{align-items:center;gap:1rem}.info-grid{grid-gap:1rem;display:grid;gap:1rem}.info-item{align-items:center;border-bottom:1px solid #f7fafc;display:flex;justify-content:space-between;padding:.75rem 0}.info-item:last-child{border-bottom:none}.info-item label{color:#718096;font-weight:500}.info-item span{color:#1a202c;font-weight:600}.units-breakdown{grid-gap:.75rem;display:grid;gap:.75rem}.breakdown-item{align-items:center;background:#f7fafc;border-radius:8px;display:flex;justify-content:space-between;padding:.75rem}.breakdown-label{color:#4a5568;font-weight:500}.breakdown-value{border-radius:20px;font-size:.875rem;font-weight:700;padding:.25rem .75rem}.breakdown-value.available{background:#f0fff4;color:#38a169}.breakdown-value.reserved{background:#fef5e7;color:#d69e2e}.breakdown-value.sold{background:#fed7d7;color:#e53e3e}.breakdown-value.rented{background:#e6f3ff;color:#3182ce}.units-content{padding:1rem 0;position:relative;z-index:1}.units-grid{grid-gap:1.5rem;gap:1.5rem}.unit-detail-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:1.5rem;transition:all .2s ease}.unit-detail-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.unit-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.unit-card-header h4{color:#000;font-size:1.125rem;font-weight:600;margin:0}.status-badge{border-radius:20px;font-size:.75rem;font-weight:500;padding:.25rem .75rem}.unit-card-content,.unit-specs{margin-bottom:1rem}.unit-specs{display:flex;flex-wrap:wrap;gap:.75rem}.spec-item{gap:.25rem}.unit-price{margin-bottom:1rem}.price-value{color:#000;display:block;font-size:1.25rem}.price-per-sqm{color:#000}.unit-card-actions{gap:.75rem}.documents-content,.gallery-content{padding:2rem 0}.documents-placeholder,.gallery-placeholder{align-items:center;background:#f7fafc;border:2px dashed #cbd5e0;border-radius:12px;display:flex;flex-direction:column;justify-content:center;padding:4rem 2rem;text-align:center}.documents-placeholder svg,.gallery-placeholder svg{color:#a0aec0;margin-bottom:1rem}.documents-placeholder h3,.gallery-placeholder h3{color:#4a5568;font-size:1.25rem;margin:0 0 .5rem}.documents-placeholder p,.gallery-placeholder p{color:#718096;margin:0 0 1.5rem}.btn-primary{background:linear-gradient(135deg,#3b82f6,#1e3a8a)}.btn-danger{align-items:center;background:#e53e3e;border:none;border-radius:8px;cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.btn-danger:hover{background:#c53030}.btn-cancel{align-items:center;background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;color:#4a5568;cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.btn-cancel:hover{background:#edf2f7;border-color:#cbd5e0}.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a;max-height:90vh;max-width:1400px;overflow-y:auto;width:90%}.large-modal{display:flex;flex-direction:column;height:95vh;max-height:95vh;max-width:1200px;width:95vw}@media (min-width:1400px){.large-modal{max-width:1400px}}.modal-header{border-bottom:1px solid #e2e8f0;flex-shrink:0;padding:1rem 1.5rem}.modal-header h3{color:#1a202c;font-size:1.25rem;font-weight:600;margin:0}.modal-close{align-items:center;background:#f7fafc;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .2s ease;width:32px}.modal-close:hover{background:#edf2f7;border-color:#cbd5e0}.modal-body{flex:1 1;overflow-y:auto;padding:1rem}.large-modal .modal-body{padding:1.5rem}.modal-footer{border-top:1px solid #e2e8f0;display:flex;flex-shrink:0;gap:1rem;justify-content:flex-end;padding:1rem 1.5rem}.form-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}@media (min-width:768px){.form-grid{gap:1rem;grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.form-grid{gap:1rem;grid-template-columns:repeat(3,1fr)}}@media (min-width:1400px){.form-grid{gap:1rem;grid-template-columns:repeat(4,1fr)}}.form-sections{display:flex;flex-direction:column;gap:1rem;height:100%}.form-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1rem}.form-section h4{border-bottom:2px solid #3b82f6;color:#2d3748;font-size:1rem;margin:0 0 1rem;padding-bottom:.5rem}.form-group{gap:.5rem}.form-group.checkbox-group{align-items:center;flex-direction:row;gap:.75rem}.form-group.checkbox-group label{align-items:center;cursor:pointer;display:flex;font-weight:500;gap:.5rem}.form-group.checkbox-group input[type=checkbox]{accent-color:#3b82f6;height:18px;width:18px}@media (min-width:1024px){.form-sections{grid-gap:1rem;align-items:start;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr);height:100%}.form-section:first-child{grid-column:1/-1}.form-section:nth-child(2),.form-section:nth-child(3),.form-section:nth-child(4),.form-section:nth-child(5),.form-section:nth-child(6),.form-section:nth-child(7){grid-column:span 1}}@media (min-width:1400px){.form-sections{grid-template-columns:repeat(3,1fr)}.form-section:first-child{grid-column:1/-1}.form-section:nth-child(2),.form-section:nth-child(3),.form-section:nth-child(4),.form-section:nth-child(5),.form-section:nth-child(6),.form-section:nth-child(7){grid-column:span 1}}.form-group label{color:#4a5568;font-size:.875rem}.form-group input,.form-group select,.form-group textarea{border:1px solid #e2e8f0;border-radius:6px;padding:.5rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{box-shadow:0 0 0 3px #667eea1a}.form-group textarea{min-height:80px}.units-header{align-items:flex-start;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.units-header h3{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0}.empty-state{color:#6b7280;padding:3rem 1rem;text-align:center}.empty-state svg{color:#9ca3af;margin-bottom:1rem}.empty-state h3{margin:0 0 .5rem}.units-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-top:20px}.unit-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden;transition:all .3s ease}.unit-card:hover{box-shadow:0 8px 25px #00000026;transform:translateY(-2px)}.unit-card-header{border-bottom:1px solid #f3f4f6;margin-bottom:16px;padding:20px 20px 0}.unit-card-title{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:8px}.unit-card-title h4{color:#000;font-size:1.2em;font-weight:600;margin:0}.unit-card-type{color:#000;font-size:.9em;font-weight:500}.unit-card-content{padding:0 20px 20px}.unit-card-price{margin-bottom:16px}.price-amount{color:#000;display:block;font-size:1.5em;font-weight:700}.price-per-sqm{font-size:.9em}.unit-card-specs{margin-bottom:16px}.spec-row{display:flex;gap:16px;margin-bottom:8px}.spec-item{font-size:.9em;gap:6px}.unit-card-description{margin-bottom:16px}.unit-card-description p{color:#000;font-size:.9em;line-height:1.5;margin:0}.unit-card-actions{background:#f9fafb;border-top:1px solid #f3f4f6;display:flex;gap:8px;padding:16px 20px}.unit-card-actions .btn-sm{font-size:.85em;padding:8px 12px}.status-badge{border-radius:6px;font-size:.75em;font-weight:600;letter-spacing:.05em;padding:4px 8px;text-transform:uppercase}.status-available{background:#dcfce7;color:#166534}.status-reserved{background:#fef3c7;color:#92400e}.status-sold{background:#fee2e2;color:#991b1b}.status-rented{background:#dbeafe;color:#1e40af}.status-default{background:#f3f4f6;color:#374151}.gallery-content{padding:20px 0}.gallery-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.gallery-header h3{color:#1f2937;margin:0}.gallery-actions{display:flex;gap:12px}.gallery-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.gallery-item{aspect-ratio:1;border-radius:8px;cursor:pointer;overflow:hidden;position:relative;transition:transform .2s ease}.gallery-item:hover{transform:scale(1.02)}.gallery-item img{height:100%;object-fit:cover;width:100%}.gallery-item-overlay{opacity:0;position:absolute;right:8px;top:8px;transition:opacity .2s ease}.gallery-item:hover .gallery-item-overlay{opacity:1}.gallery-placeholder{color:#6b7280;padding:60px 20px;text-align:center}.gallery-placeholder svg{color:#d1d5db;margin-bottom:16px}.gallery-placeholder h3{color:#374151;margin:0 0 8px}.documents-content{padding:20px 0}.documents-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.documents-header h3{color:#1f2937;margin:0}.documents-actions,.documents-list{display:flex;gap:12px}.documents-list{flex-direction:column}.document-item{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;display:flex;gap:16px;padding:16px;transition:all .2s ease}.document-item:hover{border-color:#3b82f6;box-shadow:0 2px 8px #3b82f61a}.document-icon{color:#6b7280;flex-shrink:0}.document-info{flex:1 1}.document-info h4{color:#1f2937;font-size:1em;font-weight:600;margin:0 0 4px}.document-meta{color:#6b7280;font-size:.85em}.document-actions,.document-meta{display:flex;gap:8px}.documents-placeholder{color:#6b7280;padding:60px 20px;text-align:center}.documents-placeholder svg{color:#d1d5db;margin-bottom:16px}.documents-placeholder h3{color:#374151;margin:0 0 8px}.image-modal{max-height:90vh;max-width:90vw}.modal-image{border-radius:8px;height:auto;max-height:70vh;object-fit:contain;width:100%}@media (max-width:768px){.units-grid{gap:16px;grid-template-columns:1fr}.unit-card-actions{flex-wrap:wrap}.spec-row{flex-direction:column;gap:8px}.gallery-grid{gap:12px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.document-item{align-items:flex-start;flex-direction:column;gap:12px}.document-actions{align-self:stretch;justify-content:flex-end}}.units-list{display:flex;flex-direction:column;gap:1rem}.unit-list-item{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem;transition:all .2s ease}.unit-list-item:hover{border-color:#d1d5db;box-shadow:0 2px 8px #0000001a}.unit-list-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.unit-basic-info{align-items:center;display:flex;gap:1rem}.unit-name{color:#000;font-size:1.125rem;font-weight:600;margin:0}.unit-price-info{align-items:flex-end;display:flex;flex-direction:column;gap:.25rem}.unit-price{color:#000;font-size:1.25rem;font-weight:700}.unit-price-per-sqm{color:#000;font-size:.875rem}.unit-list-details{display:flex;flex-direction:column;gap:1rem}.unit-specs-row{align-items:center;display:flex;flex-wrap:wrap;gap:1rem}.spec-item{background:#f9fafb;border-radius:6px;color:#000;font-size:.875rem;gap:.375rem;padding:.375rem .75rem}.spec-item svg{color:#000}.unit-description{color:#000;font-size:.875rem;line-height:1.5;margin:0}.unit-actions{align-items:center;border-top:1px solid #f3f4f6;gap:.75rem;padding-top:1rem}.btn-sm{align-items:center;display:flex;font-size:.875rem;gap:.375rem}.units-title-section{display:flex;flex-direction:column;gap:1rem}.units-summary{display:flex;flex-wrap:wrap;gap:1.5rem}.summary-item{align-items:center;display:flex;font-size:.875rem;font-weight:500;gap:.5rem}.summary-dot{border-radius:50%;display:inline-block;height:8px;width:8px}.summary-item.available .summary-dot{background:#10b981}.summary-item.reserved .summary-dot{background:#f59e0b}.summary-item.sold .summary-dot{background:#ef4444}.empty-icon{color:#9ca3af;margin-bottom:1rem}.units-showcase{margin-top:1.5rem}.units-grid-enhanced{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.unit-block{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a;overflow:hidden;position:relative;transition:all .3s ease}.unit-block:hover{border-color:#3b82f6;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;transform:translateY(-4px)}.unit-block-header{align-items:center;background:linear-gradient(135deg,#3b82f6,#1e3a8a);border-radius:12px 12px 0 0;display:flex;height:120px;justify-content:center;overflow:hidden;position:relative}.unit-image{height:100%;left:0;position:absolute;top:0;width:100%}.unit-image img{border-radius:12px 12px 0 0;height:100%;object-fit:cover;width:100%}.unit-image-placeholder{align-items:center;background:linear-gradient(135deg,#3b82f6,#1e3a8a);display:flex;height:100%;justify-content:center;width:100%}.unit-status-indicator{left:12px;position:absolute;top:12px}.status-dot{border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px #0003;display:inline-block;height:12px;width:12px}.status-dot.status-available{background:#10b981}.status-dot.status-reserved{background:#f59e0b}.status-dot.status-sold{background:#ef4444}.status-dot.status-rented{background:#3b82f6}.unit-type-badge{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border-radius:12px;font-size:2rem;padding:.5rem}.unit-block-content{padding:1.5rem}.unit-title{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:.5rem}.unit-title h4{color:#1f2937;font-size:1.25rem;font-weight:700;margin:0}.status-badge-modern{border-radius:20px;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.25rem .75rem;text-transform:uppercase}.status-badge-modern.status-available{background:#dcfce7;color:#166534}.status-badge-modern.status-reserved{background:#fef3c7;color:#92400e}.status-badge-modern.status-sold{background:#fee2e2;color:#991b1b}.status-badge-modern.status-rented{background:#dbeafe;color:#1e40af}.unit-type-label{color:#6b7280;font-size:.875rem;font-weight:500;margin-bottom:1rem}.unit-price-section{background:#f8fafc;border-left:4px solid #3b82f6;border-radius:12px;margin-bottom:1.5rem;padding:1rem}.main-price{color:#1f2937;font-size:1.75rem;font-weight:800;margin-bottom:.25rem}.price-per-sqm{color:#6b7280;font-size:.875rem;font-weight:500}.unit-specs-modern{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));margin-bottom:1rem}.spec-item-modern{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-direction:column;gap:.25rem;padding:.75rem;transition:all .2s ease}.spec-item-modern:hover{background:#f3f4f6;border-color:#d1d5db}.spec-item-modern svg{color:#6b7280}.spec-item-modern span{color:#374151;font-size:.875rem;font-weight:600}.spec-icon{font-size:1.125rem}.unit-details-row{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.detail-item{background:#f9fafb;border-radius:6px;color:#6b7280;font-size:.875rem;gap:.375rem;padding:.375rem .75rem}.unit-description-preview{margin-bottom:1rem}.unit-description-preview p{color:#6b7280;font-size:.875rem;font-style:italic;line-height:1.5;margin:0}.unit-block-actions{align-items:center;background:#fafafa;border-top:1px solid #f3f4f6;display:flex;justify-content:space-between;padding:1rem 1.5rem}.action-buttons{display:flex;gap:.5rem}.btn-icon{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;display:flex;height:40px;justify-content:center;transition:all .2s ease;width:40px}.btn-icon:hover{background:#f9fafb;border-color:#d1d5db;color:#374151}.btn-icon.danger{color:#ef4444}.btn-icon.danger:hover{background:#fef2f2;border-color:#fecaca;color:#dc2626}.btn-view-details{align-items:center;background:linear-gradient(135deg,#3b82f6,#1e3a8a);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;flex:1 1;font-weight:600;gap:.5rem;justify-content:center;margin-right:1rem;padding:.75rem 1.5rem;text-decoration:none;transition:all .2s ease}.btn-view-details:hover{box-shadow:0 4px 12px #667eea4d;transform:translateY(-1px)}.nav-tabs{display:flex;flex-wrap:wrap;gap:.5rem}.nav-tab{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.75rem;padding:.75rem 1.25rem;position:relative;text-decoration:none;transition:all .2s ease}.nav-tab:hover{background:#f3f4f6;color:#374151;transform:translateY(-1px)}.nav-tab.active{background:linear-gradient(135deg,#3b82f6,#1e3a8a);border-color:#3b82f6;box-shadow:0 4px 12px #667eea4d;color:#fff}.nav-tab span{font-size:.875rem}.tab-count{background:#fff3;border-radius:12px;color:currentColor;font-size:.75rem;font-weight:600;min-width:20px;padding:.25rem .5rem;text-align:center}.nav-tab.active .tab-count{background:#ffffff4d}@media (max-width:768px){.large-modal{height:auto;margin:1rem;max-height:95vh;max-width:none;width:95vw}.form-sections{display:flex;flex-direction:column;gap:1rem}.form-section{padding:1rem}.form-grid{gap:1rem;grid-template-columns:1fr}.modal-body,.modal-footer,.modal-header{padding:1rem}}.nav-tab:not(.active) .tab-count{background:#e5e7eb;color:#6b7280}.project-navigation{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;margin-bottom:2rem;padding:1rem}.tab-actions{display:flex;gap:.75rem}.tab-content{background:#0000;position:relative;z-index:1}@media (max-width:768px){.project-detail{padding:1rem}.project-description{max-width:none;text-align:left}.project-detail-header{padding:1.5rem}.header-top{align-items:stretch;flex-direction:column;gap:1rem}.header-actions{justify-content:center}.project-hero{flex-direction:column;gap:1rem;text-align:center}.project-main-info h1{font-size:2rem}.project-meta{justify-content:center}.project-meta,.project-quick-stats{flex-direction:column;gap:.75rem}.quick-stat{min-width:auto}.overview-grid,.units-grid-enhanced{grid-template-columns:1fr}.project-navigation{align-items:stretch;flex-direction:column;gap:1rem}.nav-tabs{-webkit-overflow-scrolling:touch;overflow-x:auto;padding-bottom:.5rem}.nav-tab{min-width:-webkit-fit-content;min-width:fit-content;white-space:nowrap}.tab-actions{justify-content:center}.units-summary{gap:1rem}.unit-specs-modern{grid-template-columns:repeat(2,1fr)}.unit-details-row{flex-direction:column;gap:.5rem}.unit-block-actions{flex-direction:column;gap:1rem}.btn-view-details{margin-right:0}.action-buttons{justify-content:center}}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080}.unit-edit-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0003;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;max-height:90vh;max-width:800px;overflow-y:auto;width:90%}.modal-header{background:#f9fafb;border-bottom:1px solid #e5e7eb;border-radius:16px 16px 0 0;padding:1.5rem 2rem}.modal-header h2{color:#1f2937;font-size:1.5rem;font-weight:600;letter-spacing:-.015em;margin:0}.close-button{border-radius:8px;padding:.5rem;transition:all .2s ease}.modal-form{padding:2rem}.form-sections{max-height:70vh;overflow-y:auto;padding-right:.5rem}.form-section{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #0000000a;margin-bottom:2rem;padding:1.5rem}.section-header{align-items:center;border-bottom:2px solid #3b82f6;display:flex;gap:.75rem;margin-bottom:1.5rem;padding-bottom:.75rem}.section-icon{color:#3b82f6}.form-section h4{color:#1f2937;font-size:1.125rem;font-weight:600;margin:0}.form-cards{display:flex;flex-direction:column;gap:1.5rem}.form-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem;transition:all .2s ease}.form-card:hover{border-color:#cbd5e1;box-shadow:0 2px 4px #0000000d}.form-card h5{align-items:center;color:#475569;display:flex;font-size:.95rem;font-weight:600;gap:.5rem;letter-spacing:.025em;margin:0 0 1rem;text-transform:uppercase}.form-card.full-width{grid-column:1/-1}.form-grid{grid-gap:1rem;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.form-grid.compact{gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.checkbox-grid{grid-gap:.5rem;background:#f1f5f9;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:1rem;padding:1rem}.checkbox-grid,.checkbox-item{border:1px solid #e2e8f0;border-radius:8px;gap:.5rem}.checkbox-item{align-items:center;background:#fff;color:#475569;cursor:pointer;display:flex;font-size:.8rem;padding:.5rem .75rem;transition:all .2s ease}.checkbox-item:hover{background-color:#f8fafc;border-color:#cbd5e1;box-shadow:0 2px 4px #0000000d;transform:translateY(-1px)}.checkbox-item input[type=checkbox]{border:1px solid #d1d5db;border-radius:4px;cursor:pointer;height:16px;width:16px}.checkbox-item input[type=checkbox]:checked{background-color:#3b82f6;border-color:#3b82f6}.form-group label{color:#64748b;font-size:.8rem;letter-spacing:.025em;margin-bottom:.4rem;text-transform:uppercase}.form-group input,.form-group select,.form-group textarea{background:#fff;border:1px solid #d1d5db;border-radius:8px;font-family:inherit;font-size:.875rem;padding:.625rem .875rem;transition:all .2s ease}.form-group input::placeholder{color:#9ca3af;font-size:.8rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.form-group textarea{min-height:100px;resize:vertical}.modal-actions{border-top:1px solid #e5e7eb;gap:1rem;padding-top:1.5rem}.btn-primary,.btn-secondary{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-family:inherit;font-size:.875rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.btn-primary{background:#3b82f6}.btn-primary:hover:not(:disabled){background:#2563eb;box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}.btn-primary:disabled{background:#9ca3af;cursor:not-allowed;transform:none}.btn-secondary{background:#f3f4f6;border:1px solid #d1d5db;color:#374151}.btn-secondary:hover{background:#e5e7eb;border-color:#9ca3af}@media (max-width:768px){.unit-edit-modal{margin:1rem;width:95%}.modal-form,.modal-header{padding:1rem}.form-grid{gap:1rem;grid-template-columns:1fr}.modal-actions{flex-direction:column-reverse}.btn-primary,.btn-secondary{justify-content:center;width:100%}}.unit-detail{margin:0 auto;max-width:1400px;padding:2rem}.unit-detail-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1.5rem}.back-button{align-items:center;background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;color:#4a5568;cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.75rem 1rem;text-decoration:none;transition:all .2s ease}.back-button:hover{background:#edf2f7;border-color:#cbd5e0}.unit-title-section{flex:1 1;gap:1rem;margin-left:2rem}.unit-icon,.unit-title-section{align-items:center;display:flex}.unit-icon{background:linear-gradient(135deg,#3b82f6,#1e3a8a);border-radius:16px;color:#fff;height:64px;justify-content:center;width:64px}.unit-title-info h1{color:#1a202c;font-size:2rem;font-weight:700;margin:0 0 .5rem}.unit-project{color:#3b82f6;font-weight:500;margin-bottom:.25rem}.unit-location,.unit-project{align-items:center;display:flex;gap:.5rem}.unit-location{color:#718096;margin-bottom:.5rem}.unit-status .status-badge{border-radius:20px;font-size:.875rem;font-weight:500;padding:.25rem .75rem}.status-available{background:#f0fff4;color:#38a169}.status-reserved{background:#fef5e7;color:#d69e2e}.status-sold{background:#fed7d7;color:#e53e3e}.status-rented{background:#e6f3ff;color:#3182ce}.unit-actions{display:flex;gap:1rem}.unit-main-info{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr 2fr;margin-bottom:2rem}.price-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:2rem}.price-main{align-items:center;display:flex;gap:1rem}.price-main svg{color:#38a169}.price-content{flex:1 1}.price-value{color:#1a202c;font-size:2rem;font-weight:700;margin-bottom:.25rem}.price-per-sqm{color:#718096;font-size:1rem}.specs-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:2rem}.specs-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.spec-item{align-items:center;display:flex;gap:.75rem}.spec-item svg{color:#4a5568}.spec-content{flex:1 1}.spec-value{color:#1a202c;font-size:1.25rem;font-weight:700;margin-bottom:.25rem}.spec-label{color:#718096;font-size:.875rem}.unit-tabs{border-bottom:1px solid #e2e8f0;display:flex;margin-bottom:2rem}.tab{align-items:center;background:none;border:none;border-bottom:2px solid #0000;color:#718096;cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:1rem 1.5rem;transition:all .2s ease}.tab:hover{background:#f7fafc;color:#4a5568}.tab.active{background:#f7fafc;border-bottom-color:#3b82f6;color:#3b82f6}.tab-content{min-height:400px}.overview-content{padding:1rem 0}.overview-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:2fr 1fr}.overview-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem}.overview-section h3{color:#1a202c;font-size:1.125rem;font-weight:600;margin:0 0 1rem}.overview-section p{color:#4a5568;line-height:1.6;margin-bottom:1.5rem}.details-grid{grid-gap:1rem;display:grid;gap:1rem}.detail-item{align-items:center;border-bottom:1px solid #f7fafc;display:flex;justify-content:space-between;padding:.75rem 0}.detail-item:last-child{border-bottom:none}.detail-item label{color:#718096;font-weight:500}.detail-item span{color:#1a202c;font-weight:600}.financial-info{grid-gap:1rem;display:grid;gap:1rem;margin-bottom:1.5rem}.financial-item{align-items:center;background:#f7fafc;border-radius:8px;display:flex;justify-content:space-between;padding:.75rem}.financial-item label{color:#4a5568;font-weight:500}.financial-item span{font-weight:600}.price-highlight{color:#38a169;font-size:1.125rem}.dates-info{grid-gap:.75rem;display:grid;gap:.75rem}.date-item{align-items:center;border-bottom:1px solid #f7fafc;display:flex;justify-content:space-between;padding:.5rem 0}.date-item:last-child{border-bottom:none}.date-item label{color:#718096;font-weight:500}.date-item span{color:#1a202c;font-weight:600}.documents-content,.gallery-content,.history-content{padding:2rem 0}.documents-placeholder,.gallery-placeholder,.history-placeholder{align-items:center;background:#f7fafc;border:2px dashed #cbd5e0;border-radius:12px;display:flex;flex-direction:column;justify-content:center;padding:4rem 2rem;text-align:center}.documents-placeholder svg,.gallery-placeholder svg,.history-placeholder svg{color:#a0aec0;margin-bottom:1rem}.documents-placeholder h3,.gallery-placeholder h3,.history-placeholder h3{color:#4a5568;font-size:1.25rem;margin:0 0 .5rem}.documents-placeholder p,.gallery-placeholder p,.history-placeholder p{color:#718096;margin:0 0 1.5rem}.btn-primary{align-items:center;background:orange;border:none;border-radius:8px;cursor:pointer;display:flex;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.btn-primary:hover{box-shadow:0 4px 12px #667eea4d}.btn-secondary{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#4a5568;cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.btn-secondary:hover{background:#f7fafc;border-color:#cbd5e0}.error-container,.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:4rem 2rem;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #e2e8f0;border-radius:50%;border-top-color:#3b82f6;height:40px;margin-bottom:1rem;width:40px}@media (max-width:768px){.unit-detail{padding:1rem}.unit-detail-header{align-items:stretch;flex-direction:column;gap:1rem}.unit-title-section{margin-left:0}.unit-actions{justify-content:center}.unit-main-info{grid-template-columns:1fr}.specs-grid{grid-template-columns:repeat(2,1fr)}.overview-grid{grid-template-columns:1fr}.unit-tabs{-webkit-overflow-scrolling:touch;overflow-x:auto}.tab{min-width:-webkit-fit-content;min-width:fit-content;white-space:nowrap}}.auth-modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-height:90vh;max-width:400px;overflow-y:auto;width:90%}.auth-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:24px;padding:24px 24px 0}.auth-header h2{color:#111827;font-size:24px;font-weight:700;margin:0}.close-button{background:none;border:none;border-radius:6px;color:#6b7280;cursor:pointer;padding:8px;transition:all .2s}.close-button:hover{background:#f3f4f6;color:#374151}.auth-form{padding:0 24px 24px}.form-group{margin-bottom:20px}.form-group label{color:#374151;display:block;font-weight:500;margin-bottom:8px}.input-wrapper{align-items:center;display:flex;position:relative}.input-wrapper input{background:#fff;border:2px solid #e5e7eb;border-radius:8px;font-size:16px;padding:12px 16px 12px 44px;transition:all .2s;width:100%}.input-wrapper input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.input-icon{color:#9ca3af;left:14px;position:absolute;z-index:1}.password-toggle{color:#9ca3af;right:14px;transition:color .2s}.password-toggle:hover{color:#6b7280}.error-message{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:14px;margin-bottom:16px;padding:12px 16px}.auth-button{background:linear-gradient(135deg,#3b82f6,#1e3a8a);border-radius:8px;font-size:16px;margin-bottom:20px;padding:14px 20px;transition:all .2s;width:100%}.auth-button:hover:not(:disabled){box-shadow:0 10px 20px #667eea66;transform:translateY(-1px)}.auth-button:disabled{cursor:not-allowed;opacity:.7;transform:none}.auth-divider{align-items:center;display:flex;margin:20px 0;text-align:center}.auth-divider:after,.auth-divider:before{background:#e5e7eb;content:"";flex:1 1;height:1px}.auth-divider span{color:#6b7280;font-size:14px;font-weight:500;padding:0 16px}.google-auth-button{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:8px;color:#374151;cursor:pointer;display:flex;font-size:16px;font-weight:500;gap:12px;justify-content:center;margin-bottom:20px;padding:12px 16px;transition:all .2s ease;width:100%}.google-auth-button:hover{background:#f9fafb;border-color:#d1d5db}.google-auth-button:disabled{cursor:not-allowed;opacity:.6}.google-icon{flex-shrink:0}.auth-footer{border-top:1px solid #e5e7eb;margin-top:20px;padding:20px 24px 24px;text-align:center}.auth-footer p{color:#666;font-size:14px;margin:0}.mode-switch{background:none;border:none;color:#6366f1;cursor:pointer;font-size:14px;font-weight:500;margin-left:8px;text-decoration:underline;transition:color .2s ease}.mode-switch:hover{color:#4f46e5}@media (max-width:768px){.auth-modal{margin:20px;width:95%}.auth-footer,.auth-form,.auth-header{padding-left:20px;padding-right:20px}}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.profile-modal{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border:1px solid #ffffff4d;border-radius:20px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:800px;overflow-y:auto;width:100%}.modal-header{border-bottom:1px solid #0000001a;justify-content:space-between;padding:24px}.header-content,.modal-header{align-items:center;display:flex}.header-content{gap:12px}.header-content h2{color:#000;font-size:20px;font-weight:600;margin:0}.close-btn{background:none;border:none;border-radius:8px;color:#00000080;cursor:pointer;padding:4px;transition:all .2s ease}.close-btn:hover{background:#0000001a;color:#000}.modal-tabs{border-bottom:1px solid #0000001a;display:flex}.tab-btn{align-items:center;background:none;border:none;border-bottom:2px solid #0000;color:#0009;cursor:pointer;display:flex;font-weight:500;gap:8px;padding:16px 24px;transition:all .2s ease}.tab-btn:hover{background:#0000000d;color:#000}.tab-btn.active{background:#667eea0d;border-bottom-color:#3b82f6;color:#3b82f6}.modal-content{padding:24px}.alert{align-items:center;border-radius:12px;display:flex;font-size:14px;font-weight:500;gap:12px;margin-bottom:20px;padding:12px 16px}.alert.error{background:#ef44441a;border:1px solid #ef444433;color:#dc2626}.alert.success{background:#22c55e1a;border:1px solid #22c55e33;color:#16a34a}.loading-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.loading-state p{color:#000000b3;font-size:16px;margin:16px 0 0}.profile-section{gap:24px}.profile-avatar,.profile-section{display:flex;flex-direction:column}.profile-avatar{align-items:center;background:#0000000d;border-radius:16px;gap:16px;padding:20px}.avatar-placeholder{align-items:center;background:linear-gradient(135deg,#3b82f6,#1e3a8a);border-radius:50%;color:#fff;display:flex;height:80px;justify-content:center;width:80px}.avatar-upload{align-items:center;background:#fffc;border:1px solid #0003;border-radius:8px;color:#000000b3;cursor:pointer;display:flex;font-size:12px;font-weight:500;gap:8px;padding:8px 16px;transition:all .2s ease}.avatar-upload:hover{background:#fff;color:#000}.form-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr)}.form-group{display:flex;flex-direction:column;gap:8px}.form-group.full-width{grid-column:1/-1}.form-group label{color:#000;font-size:14px;font-weight:600}.form-group input,.form-group textarea{background:#fffc;border:1px solid #0003;border-radius:8px;color:#000;font-size:14px;padding:12px 16px;transition:all .2s ease}.form-group input:focus,.form-group textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group input.disabled{background:#0000000d;color:#00000080;cursor:not-allowed}.field-note{color:#00000080;font-size:12px;font-style:italic}.security-section{display:flex;flex-direction:column;gap:20px}.security-section h3{color:#000;font-size:18px;font-weight:600;margin:0 0 16px}.password-input{align-items:center;display:flex;position:relative}.password-input input{padding-right:48px;width:100%}.password-toggle{background:none;border:none;border-radius:4px;color:#00000080;cursor:pointer;padding:4px;position:absolute;right:12px;transition:all .2s ease}.password-toggle:hover{background:#0000000d;color:#000}.password-requirements{background:#3b82f61a;border:1px solid #3b82f633;border-radius:8px;padding:16px}.password-requirements h4{color:#1d4ed8;font-size:14px;font-weight:600;margin:0 0 8px}.password-requirements ul{color:#1d4ed8;margin:0;padding-left:20px}.password-requirements li{font-size:12px;margin-bottom:4px}.modal-actions{border-top:1px solid #0000001a;display:flex;gap:12px;justify-content:flex-end;padding:20px 24px}.modal-actions button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 20px;transition:all .2s ease}.cancel-btn{background:#0000001a;color:#000000b3}.cancel-btn:hover:not(:disabled){background:#00000026;color:#000}.save-btn{background:linear-gradient(135deg,#3b82f6,#1e3a8a);color:#fff}.save-btn:hover:not(:disabled){box-shadow:0 4px 12px #667eea4d;transform:translateY(-1px)}.modal-actions button:disabled{cursor:not-allowed;opacity:.6;transform:none}.spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:768px){.modal-overlay{padding:16px}.profile-modal{max-width:none;width:100%}.modal-content,.modal-header{padding:20px}.form-grid{gap:16px;grid-template-columns:1fr}.modal-actions{flex-direction:column;padding:16px 20px}.modal-actions button{justify-content:center;width:100%}.modal-tabs{overflow-x:auto}.tab-btn{min-width:-webkit-fit-content;min-width:fit-content;white-space:nowrap}}@media (max-width:480px){.profile-avatar{padding:16px}.avatar-placeholder{height:60px;width:60px}.security-section{gap:16px}}.sidebar{background:linear-gradient(0deg,var(--bg-tertiary) 0,var(--bg-secondary) 100%);box-shadow:var(--shadow-lg);height:100vh;left:0;padding:2rem 0;position:fixed;top:0;width:280px;z-index:100}.sidebar,.sidebar-brand{display:flex;flex-direction:column}.sidebar-brand{align-items:center;margin-bottom:2rem;padding:0 2rem;text-align:center}.sidebar-logo{height:60px;margin-bottom:.5rem;object-fit:contain;width:60px}.sidebar-brand h1{color:var(--text-primary);font-size:1.8rem;font-weight:700;margin:0}.sidebar-home{margin-bottom:1rem;padding:0 1rem}.sidebar-links{display:flex;flex:1 1;flex-direction:column;gap:.5rem;padding:0 1rem}.sidebar-link{align-items:center;border-radius:12px;color:var(--text-secondary);display:flex;font-size:14px;font-weight:500;gap:12px;padding:12px 16px;text-decoration:none;transition:all .3s ease}.sidebar-link:hover{transform:translateX(4px)}.sidebar-link.active,.sidebar-link:hover{background:var(--bg-secondary);color:var(--text-primary)}.sidebar-link.active{box-shadow:var(--shadow-md)}.sidebar-auth{margin-top:auto;padding:0 1rem 1rem}.top-header{align-items:center;background:var(--bg-primary);box-shadow:var(--shadow-md);display:flex;height:70px;left:280px;padding:0 2rem;position:fixed;right:0;top:0;transition:left .3s ease;z-index:90}.section-tabs{background:var(--bg-secondary);flex-shrink:0}.nav-sections,.section-tabs{border-radius:25px;display:flex;gap:.5rem;padding:.25rem}.nav-sections{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a}.section-tab{align-items:center;background:#0000;border:none;border-radius:20px;color:var(--text-muted);cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:.5rem;justify-content:center;min-height:44px;padding:.75rem 1.5rem;transition:all .3s ease}.section-tab:hover{background:var(--bg-tertiary);color:var(--text-secondary)}.dark-theme .section-tab.active,.section-tab.active{background:#3b82f6!important;box-shadow:0 2px 8px #3b82f64d;color:#fff!important}.dark-theme .section-tab.active,:root .section-tab.active{background:#3b82f6!important;color:#fff!important}.nav-home{display:flex}.nav-links{gap:.5rem;justify-self:end}.nav-link,.nav-links{align-items:center;display:flex}.nav-link{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;color:#fffc;font-size:14px;font-weight:500;gap:8px;padding:12px 20px;text-decoration:none;transition:all .3s ease}.nav-link:hover{background:#ffffff1a;box-shadow:0 8px 20px #0000001a;color:#fff;transform:translateY(-2px)}.nav-link.active{background:linear-gradient(135deg,#3b82f6,#1e40af 50%,#1e3a8a);box-shadow:0 8px 20px #3b82f64d;color:#fff}.nav-auth,.user-menu{align-items:center;display:flex}.user-menu{gap:12px}.user-info{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:16px;color:#ffffffe6;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:12px 16px;transition:all .3s ease}.user-info:hover{background:#ffffff26;box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}.user-name{display:flex;gap:6px}.first-name,.last-name{font-weight:500}.first-name{color:#ffffffe6}.last-name{color:#ffffffb3}.auth-button{align-items:center;background:linear-gradient(135deg,#3b82f6,#1e40af 50%,#1e3a8a);border:none;border-radius:16px;box-shadow:0 8px 20px #3b82f64d;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 20px;transition:all .3s ease}.auth-button:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8 50%,#1e3a8a);box-shadow:0 12px 30px #3b82f666;transform:translateY(-2px)}.header-user{align-items:center;display:flex;margin-left:auto}.header-user-info,.header-user-menu{align-items:center;display:flex;gap:8px}.header-user-info{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:8px;cursor:pointer;padding:8px 12px;transition:all .2s ease}.header-user-info:hover{background:var(--bg-tertiary);border-color:var(--border-secondary)}.header-user-name{color:var(--text-primary);font-size:14px;font-weight:500}.header-logout-btn{align-items:center;background:#4a5568;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;justify-content:center;padding:8px;transition:all .2s ease}.header-logout-btn:hover{background:#2d3748}.header-auth-btn{align-items:center;background:#4a5568;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:8px 16px;transition:all .2s ease}.header-auth-btn:hover{background:#2d3748}.mobile-menu-btn{display:none}@media (max-width:1024px){.sidebar{-webkit-overflow-scrolling:touch;overflow-y:auto;padding:1rem 0;transform:translateX(-100%);transition:transform .3s ease;width:280px;z-index:1000}.sidebar.mobile-open{transform:translateX(0)}.sidebar-brand{margin-bottom:1.5rem;padding:0 1.5rem}.sidebar-brand h1{font-size:1.5rem}.sidebar-home{margin-bottom:.75rem;padding:0 .75rem}.sidebar-links{flex:1 1;gap:.25rem;min-height:0;padding:0 .75rem}.sidebar-link{border-radius:10px;font-size:15px;padding:14px 16px}.sidebar-auth{margin-top:1rem;padding:0 .75rem 1rem}.user-menu{align-items:stretch;flex-direction:column;gap:8px}.user-info{font-size:13px;justify-content:center;padding:12px 14px}.auth-button{font-size:15px;justify-content:center;padding:14px 20px;width:100%}.top-header{height:70px;left:0;padding:0 1rem}.mobile-menu-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#1e40af 50%,#1e3a8a);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:44px;justify-content:center;margin-right:1rem;transition:all .3s ease;width:44px}.mobile-menu-btn:hover{box-shadow:0 4px 12px #3b82f64d;transform:scale(1.05)}.section-tabs{-ms-overflow-style:none;flex:1 1;justify-content:flex-start;margin:0;max-width:none;overflow-x:auto;scrollbar-width:none}.section-tabs::-webkit-scrollbar{display:none}.section-tab{flex:0 0 auto;font-size:.85rem;justify-content:center;min-height:40px;min-width:90px;padding:.75rem 1rem;white-space:nowrap}.section-tab span{display:inline}.header-user{flex-shrink:0;margin-left:.5rem}.header-auth-btn span,.header-user-name{display:none}}@media (max-width:768px){.sidebar{width:280px}.top-header{gap:.5rem;height:60px;padding:0 .75rem}.section-tabs{-ms-overflow-style:none;flex:1 1;gap:.25rem;overflow-x:auto;padding:.2rem;scrollbar-width:none}.section-tabs::-webkit-scrollbar{display:none}.section-tab{flex:0 0 auto;font-size:.8rem;justify-content:center;min-height:36px;min-width:80px;padding:.6rem .8rem;white-space:nowrap}.section-tab span{display:none}.header-user{flex-shrink:0;margin-left:.5rem}.header-user-info{padding:6px 8px}.header-user-name{display:none}.header-logout-btn{padding:6px}.header-auth-btn{padding:6px 8px}.header-auth-btn span{display:none}}@media (max-width:480px){.top-header{gap:.25rem;height:56px;padding:0 .5rem}.mobile-menu-btn{flex-shrink:0;height:36px;margin-right:.25rem;width:36px}.section-tabs{-ms-overflow-style:none;background:var(--bg-secondary);flex:1 1;gap:.15rem;max-width:none;overflow-x:auto;padding:.15rem;scrollbar-width:none}.section-tabs::-webkit-scrollbar{display:none}.section-tab{flex:0 0 auto;font-size:.75rem;justify-content:center;min-height:32px;min-width:60px;padding:.5rem .6rem;white-space:nowrap}.section-tab span{display:none}.header-user{flex-shrink:0;margin-left:.25rem}.header-user-info{padding:4px 6px}.header-user-name{display:none}.header-logout-btn{padding:4px}.header-auth-btn{font-size:.75rem;padding:4px 6px}.header-auth-btn span{display:none}.sidebar-brand h1{font-size:1.3rem}.sidebar-link{font-size:14px;padding:12px 14px}.auth-button{font-size:14px;padding:12px 16px}}.mobile-overlay{background:#00000080;bottom:0;display:none;left:0;position:fixed;right:0;top:0;z-index:999}@media (max-width:1024px){.mobile-overlay.active{display:block}}.chatbot-toggle{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50%;bottom:20px;box-shadow:0 4px 20px #00000026;color:#fff;cursor:pointer;display:flex;height:60px;justify-content:center;position:fixed;right:20px;transition:all .3s ease;width:60px;z-index:1000}.chatbot-toggle:hover{box-shadow:0 6px 25px #0003;transform:scale(1.1)}.chatbot-toggle.open{background:linear-gradient(135deg,#ff6b6b,#ee5a24)}.chatbot-window{animation:slideUp .3s ease-out;background:#fff;border-radius:12px;bottom:100px;box-shadow:0 10px 40px #00000026;display:flex;flex-direction:column;height:500px;position:fixed;right:20px;width:350px;z-index:999}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.chatbot-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px 12px 0 0;color:#fff;display:flex;justify-content:space-between;padding:16px 20px}.chatbot-header h3{font-size:16px;font-weight:600;margin:0}.chatbot-close{background:none;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:4px;transition:background-color .2s ease}.chatbot-close:hover{background-color:#ffffff1a}.chatbot-messages{background-color:#f8f9fa;display:flex;flex:1 1;flex-direction:column;gap:12px;overflow-y:auto;padding:16px}.chatbot-messages::-webkit-scrollbar{width:4px}.chatbot-messages::-webkit-scrollbar-track{background:#0000}.chatbot-messages::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:2px}.message{display:flex;margin-bottom:8px}.message.user{justify-content:flex-end}.message.bot{justify-content:flex-start}.message-content{border-radius:18px;max-width:80%;padding:12px 16px;position:relative}.message.user .message-content{background:linear-gradient(135deg,#667eea,#764ba2);border-bottom-right-radius:4px;color:#fff}.message.bot .message-content{background:#fff;border:1px solid #e2e8f0;border-bottom-left-radius:4px;box-shadow:0 1px 3px #0000001a;color:#2d3748}.message-content p{font-size:14px;line-height:1.4;margin:0}.message-time{display:block;font-size:11px;margin-top:4px;opacity:.7}.typing-indicator{display:flex;gap:4px;padding:8px 0}.typing-indicator span{animation:typing 1.4s ease-in-out infinite;background-color:#cbd5e0;border-radius:50%;height:6px;width:6px}.typing-indicator span:first-child{animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}@keyframes typing{0%,80%,to{opacity:.5;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.chatbot-input{background:#fff;border-radius:0 0 12px 12px;border-top:1px solid #e2e8f0;display:flex;gap:8px;padding:16px}.chatbot-input input{border:1px solid #e2e8f0;border-radius:20px;flex:1 1;font-size:14px;outline:none;padding:12px 16px;transition:border-color .2s ease}.chatbot-input input:focus{border-color:#667eea}.chatbot-input input:disabled{background-color:#f7fafc;cursor:not-allowed}.chatbot-input button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:40px;justify-content:center;transition:all .2s ease;width:40px}.chatbot-input button:hover:not(:disabled){box-shadow:0 2px 8px #667eea4d;transform:scale(1.05)}.chatbot-input button:disabled{background:#cbd5e0;box-shadow:none;cursor:not-allowed;transform:none}@media (max-width:480px){.chatbot-window{height:400px;left:20px;right:20px;width:calc(100vw - 40px)}.chatbot-toggle{bottom:15px;height:50px;right:15px;width:50px}}.theme-toggle{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50%;bottom:20px;box-shadow:0 4px 20px #667eea66;color:#fff;cursor:pointer;display:flex;height:50px;justify-content:center;left:20px;position:fixed;transition:all .3s ease;width:50px;z-index:1000}.theme-toggle:hover{box-shadow:0 8px 30px #667eea99;transform:translateY(-2px) scale(1.05)}.theme-toggle:active{transform:translateY(0) scale(.95)}.theme-toggle-icon{align-items:center;display:flex;height:20px;justify-content:center;transition:transform .3s ease;width:20px}.theme-toggle-icon svg{display:block;height:100%;width:100%}.theme-toggle:hover .theme-toggle-icon{transform:rotate(15deg)}.dark-theme .theme-toggle{background:linear-gradient(135deg,#fbbf24,#f59e0b);box-shadow:0 4px 20px #fbbf2466}.dark-theme .theme-toggle:hover{box-shadow:0 8px 30px #fbbf2499}@keyframes iconRotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.theme-toggle.changing .theme-toggle-icon{animation:iconRotate .5s ease-in-out}@media (max-width:768px){.theme-toggle{bottom:15px;height:45px;left:15px;right:auto;top:auto;width:45px}}@media (max-width:480px){.theme-toggle{bottom:10px;height:40px;left:10px;right:auto;top:auto;width:40px}.theme-toggle-icon svg{height:18px;width:18px}}.tour-overlay{background:#0000;bottom:0;left:0;pointer-events:none;position:fixed;right:0;top:0;z-index:9998}.tour-tooltip{animation:tourSlideIn .4s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--card-bg);border:1px solid var(--border-primary);border-radius:12px;box-shadow:var(--shadow-xl);max-width:350px;min-width:280px;pointer-events:auto;position:fixed;z-index:10000}.tour-tooltip[data-placement=bottom],.tour-tooltip[data-placement=left],.tour-tooltip[data-placement=right],.tour-tooltip[data-placement=top]{transform:none}.tour-arrow{border:8px solid #0000;height:0;position:absolute;width:0}.tour-tooltip[data-placement=top] .tour-arrow{border-top-color:var(--card-bg);bottom:-16px;left:50%;transform:translateX(-50%)}.tour-tooltip[data-placement=bottom] .tour-arrow{border-bottom-color:var(--card-bg);left:50%;top:-16px;transform:translateX(-50%)}.tour-tooltip[data-placement=left] .tour-arrow{border-left-color:var(--card-bg);right:-16px;top:50%;transform:translateY(-50%)}.tour-tooltip[data-placement=right] .tour-arrow{border-right-color:var(--card-bg);left:-16px;top:50%;transform:translateY(-50%)}.tour-content{padding:0}.tour-header{align-items:center;border-bottom:1px solid var(--border-primary);display:flex;justify-content:space-between;padding:16px 20px 12px}.tour-title{color:var(--text-primary);font-size:18px;font-weight:600;margin:0}.tour-close{align-items:center;background:none;border:none;border-radius:4px;color:var(--text-muted);cursor:pointer;display:flex;font-size:24px;height:24px;justify-content:center;padding:0;transition:all .2s ease;width:24px}.tour-close:hover{background:var(--bg-hover);color:var(--text-primary)}.tour-body{padding:16px 20px}.tour-description{color:var(--text-secondary);font-size:14px;line-height:1.5;margin:0}.tour-footer{background:var(--bg-secondary);border-radius:0 0 12px 12px;border-top:1px solid var(--border-primary);padding:16px 20px}.tour-progress{align-items:center;display:flex;gap:12px;margin-bottom:16px}.tour-step-counter{color:var(--text-muted);font-size:12px;font-weight:500;min-width:50px}.tour-progress-bar{background:var(--border-primary);border-radius:2px;flex:1 1;height:4px;overflow:hidden}.tour-progress-fill{background:linear-gradient(90deg,#3b82f6,#1d4ed8);border-radius:2px;height:100%;transition:width .3s ease}.tour-actions{display:flex;gap:8px;justify-content:flex-end}.tour-btn{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;outline:none;padding:8px 16px;transition:all .2s ease}.tour-btn-primary{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff}.tour-btn-primary:hover{background:linear-gradient(135deg,#2563eb,#1e40af);box-shadow:0 4px 12px #3b82f666;transform:translateY(-1px)}.tour-btn-secondary{background:var(--bg-secondary);border:1px solid var(--border-primary);color:var(--text-secondary)}.tour-btn-secondary:hover{background:var(--bg-hover);border-color:var(--border-focus);color:var(--text-primary)}.tour-spotlight{animation:tourSpotlight 2s ease-in-out infinite;background:#0000;border:2px solid #3b82f6e6;border-radius:6px;box-shadow:0 0 0 2px #3b82f666,0 0 15px #3b82f680;pointer-events:none;position:fixed;transition:all .3s ease;z-index:9999}.tour-highlight{position:relative;z-index:9997!important}@keyframes tourFadeIn{0%{opacity:0}to{opacity:1}}@keyframes tourSlideIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes tourSpotlight{0%,to{border-color:#3b82f6cc;box-shadow:0 0 0 4px #3b82f64d,0 0 20px #3b82f666}50%{border-color:#3b82f6;box-shadow:0 0 0 6px #3b82f666,0 0 30px #3b82f699}}@media (max-width:768px){.tour-tooltip{margin:20px;max-width:280px;min-width:250px}.tour-tooltip-bottom,.tour-tooltip-top{left:50%!important;transform:translateX(-50%)!important}.tour-tooltip-left,.tour-tooltip-right{left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important}.tour-actions{flex-direction:column}.tour-btn{justify-content:center;width:100%}}.dark-theme .tour-overlay{background:#0000}.dark-theme .tour-spotlight{border-color:#fbbf24cc;box-shadow:0 0 0 4px #fbbf244d,0 0 20px #fbbf2466}.dark-theme .tour-progress-fill{background:linear-gradient(90deg,#fbbf24,#f59e0b)}@keyframes tourSpotlightDark{0%,to{border-color:#fbbf24cc;box-shadow:0 0 0 4px #fbbf244d,0 0 20px #fbbf2466}50%{border-color:#fbbf24;box-shadow:0 0 0 6px #fbbf2466,0 0 30px #fbbf2499}}.dark-theme .tour-spotlight{animation:tourSpotlightDark 2s infinite}.tour-start-button{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:25px;bottom:80px;box-shadow:0 4px 20px #10b98166;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;left:20px;padding:12px 16px;position:fixed;transition:all .3s ease;z-index:1000}.tour-start-button:hover{box-shadow:0 8px 30px #10b98199;transform:translateY(-2px) scale(1.05)}.tour-start-button:active{transform:translateY(0) scale(.95)}.tour-start-button svg{height:20px;width:20px}.dark-theme .tour-start-button{background:linear-gradient(135deg,#8b5cf6,#7c3aed);box-shadow:0 4px 20px #8b5cf666}.dark-theme .tour-start-button:hover{box-shadow:0 8px 30px #8b5cf699}@media (max-width:768px){.tour-start-button{bottom:90px;font-size:13px;left:10px;padding:10px 14px}.tour-start-button span{display:none}}.btn{align-items:center;border:none;border-radius:6px;box-sizing:border-box;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:500;gap:.5rem;justify-content:center;min-width:-webkit-fit-content;min-width:fit-content;padding:.75rem 1.5rem;text-decoration:none;transition:all .3s ease;white-space:nowrap}.btn-icon{height:32px;min-width:0;min-width:auto;padding:.5rem;width:32px}.btn-primary{background:#3498db;box-shadow:0 2px 4px #3498db33;color:#fff}.btn-primary:hover{background:#2980b9;box-shadow:0 4px 8px #3498db4d;transform:translateY(-1px)}.btn-secondary{background:#95a5a6;box-shadow:0 2px 4px #95a5a633;color:#fff}.btn-secondary:hover{background:#7f8c8d;box-shadow:0 4px 8px #95a5a64d;transform:translateY(-1px)}.btn-success{background:#27ae60;box-shadow:0 2px 4px #27ae6033;color:#fff}.btn-success:hover{background:#229954;box-shadow:0 4px 8px #27ae604d;transform:translateY(-1px)}.btn-warning{background:#f39c12;box-shadow:0 2px 4px #f39c1233;color:#fff}.btn-warning:hover{background:#e67e22;box-shadow:0 4px 8px #f39c124d;transform:translateY(-1px)}.btn-danger{background:#e74c3c;box-shadow:0 2px 4px #e74c3c33;color:#fff}.btn-danger:hover{background:#c0392b;box-shadow:0 4px 8px #e74c3c4d;transform:translateY(-1px)}.btn-info{background:#17a2b8;box-shadow:0 2px 4px #17a2b833;color:#fff}.btn-info:hover{background:#138496;box-shadow:0 4px 8px #17a2b84d;transform:translateY(-1px)}.btn-dark{background:#2d3748;box-shadow:0 2px 4px #2d374833;color:#fff}.btn-dark:hover{background:#1a202c;box-shadow:0 4px 8px #2d37484d;transform:translateY(-1px)}.btn-outline{background:#0000;border:2px solid;box-shadow:none}.btn-outline:hover{background:currentColor;color:#fff;transform:translateY(-1px)}.btn-outline-primary{border-color:#3498db;color:#3498db}.btn-outline-secondary{border-color:#95a5a6;color:#95a5a6}.btn-sm{font-size:.8rem;padding:.5rem 1rem}.btn-sm.btn-icon{height:32px;padding:.5rem;width:32px}.btn-lg{font-size:1rem;padding:1rem 2rem}.btn-lg.btn-icon{height:48px;padding:1rem;width:48px}.btn:disabled{box-shadow:none!important;cursor:not-allowed;opacity:.6;transform:none!important}.btn:focus{box-shadow:0 0 0 3px #3498db33;outline:none}.btn-group{display:flex;gap:.5rem}.btn-group .btn{flex:1 1}.btn-group-vertical{display:flex;flex-direction:column;gap:.5rem}@media (max-width:768px){.btn{font-size:.85rem;padding:.625rem 1.25rem}.btn-sm{font-size:.75rem;padding:.4rem .8rem}.btn-lg{font-size:.95rem;padding:.875rem 1.75rem}.btn-group{flex-direction:column}.btn-group .btn{flex:none}}.App{background:var(--bg-primary);color:var(--text-primary);display:flex;flex-direction:column;min-height:100vh;text-align:center}.app-layout{margin-left:280px;min-height:100vh;padding-top:70px;transition:margin-left .3s ease}@media (max-width:1024px){.app-layout{margin-left:0;padding-top:60px}}.main-content{margin:0 auto;max-width:1600px;min-height:calc(100vh - 70px);padding:2rem;width:100%}@media (max-width:1024px){.main-content{min-height:calc(100vh - 60px);padding:1rem}}@media (max-width:768px){.main-content{padding:.75rem}}@media (max-width:480px){.main-content{padding:.5rem}}@media (min-width:1200px){.main-content{max-width:1800px;padding:48px 64px}}.page-container{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:var(--bg-modal);border:1px solid var(--border-primary);border-radius:24px;box-shadow:var(--shadow-xl);padding:32px}@media (max-width:1024px){.page-container{border-radius:20px;padding:24px}}@media (max-width:768px){.page-container{border-radius:16px;margin:0 8px;padding:20px}}@media (max-width:480px){.page-container{border-radius:12px;margin:0 4px;padding:16px}}@media (min-width:1200px){.page-container{border-radius:32px;padding:48px 56px}}.page-title{color:var(--text-primary);font-size:32px;font-weight:700;margin-bottom:32px}@media (max-width:1024px){.page-title{font-size:28px;margin-bottom:24px}}@media (max-width:768px){.page-title{font-size:24px;margin-bottom:20px}}@media (max-width:480px){.page-title{font-size:20px;margin-bottom:16px}}@media (min-width:1200px){.page-title{font-size:40px;margin-bottom:48px}}.card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:var(--bg-field);border:1px solid var(--border-primary);border-radius:20px;box-shadow:var(--shadow-lg);color:var(--text-primary);margin-bottom:20px;padding:24px;transition:all .3s ease}@media (min-width:1200px){.card{border-radius:24px;margin-bottom:32px;padding:32px 40px}}.button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:16px;box-shadow:0 8px 20px #667eea4d;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:14px 28px;transition:all .3s ease}.button:hover{background:linear-gradient(135deg,#5a6fd8,#6a4190);box-shadow:0 12px 30px #667eea80;transform:translateY(-2px)}.button-secondary{background:var(--bg-secondary);box-shadow:var(--shadow-md);color:var(--text-primary)}.button-secondary:hover{background:var(--bg-tertiary);box-shadow:var(--shadow-lg);transform:translateY(-2px)}:root{--bg-primary:#fff;--bg-secondary:#f8f9fa;--bg-tertiary:#e9ecef;--bg-modal:linear-gradient(135deg,#f8f9fa,#fff);--bg-modal-header:#fffc;--bg-modal-body:#fff9;--bg-field:#fffc;--bg-input:#ffffffe6;--text-primary:#1f2937;--text-secondary:#374151;--text-muted:#6b7280;--text-light:#9ca3af;--border-primary:#e5e7eb;--border-secondary:#d1d5db;--border-focus:#3b82f6;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a;--shadow-xl:0 25px 50px -12px #00000026;--calendar-bg:#fff;--calendar-header:#f8f9fa;--calendar-border:#e5e7eb;--calendar-today:#dbeafe;--calendar-hover:#f3f4f6;--event-bg:#007bff;--event-text:#fff;--event-shadow:#007bff66;--input-bg:#fff;--input-border:#d1d5db;--input-focus:#3b82f6;--input-text:#1f2937;--input-placeholder:#9ca3af;--btn-primary:linear-gradient(135deg,#667eea,#764ba2);--btn-primary-hover:linear-gradient(135deg,#5a6fd8,#6a4190);--btn-secondary:#f3f4f6;--btn-secondary-hover:#e5e7eb;--button-text:#fff;--primary-gradient:linear-gradient(135deg,#667eea,#764ba2);--primary-gradient-hover:linear-gradient(135deg,#5a67d8,#6b46c1);--secondary-gradient:linear-gradient(135deg,#a0aec0,#718096);--secondary-gradient-hover:linear-gradient(135deg,#718096,#4a5568);--card-bg:#ffffffe6;--container-bg:#fffffff2}.dark-theme{--bg-primary:#111827;--bg-secondary:#1f2937;--bg-tertiary:#374151;--bg-modal:linear-gradient(135deg,#1f2937,#111827);--bg-modal-header:#1f2937e6;--bg-modal-body:#1f2937b3;--bg-field:#374151cc;--bg-input:#374151e6;--text-primary:#f9fafb;--text-secondary:#e5e7eb;--text-muted:#9ca3af;--text-light:#6b7280;--border-primary:#374151;--border-secondary:#4b5563;--border-focus:#60a5fa;--shadow-sm:0 1px 2px 0 #0000004d;--shadow-md:0 4px 6px -1px #0006;--shadow-lg:0 10px 15px -3px #00000080;--shadow-xl:0 25px 50px -12px #0009;--calendar-bg:#1f2937;--calendar-header:#374151;--calendar-border:#4b5563;--calendar-today:#1e40af;--calendar-hover:#374151;--event-bg:#3b82f6;--event-text:#fff;--event-shadow:#3b82f666;--input-bg:#374151cc;--input-border:#4b5563;--input-focus:#60a5fa;--input-text:#f9fafb;--input-placeholder:#9ca3af;--btn-primary:linear-gradient(135deg,#667eea,#764ba2);--btn-primary-hover:linear-gradient(135deg,#5a6fd8,#6a4190);--btn-secondary:#374151;--btn-secondary-hover:#4b5563;--button-text:#fff;--primary-gradient:linear-gradient(135deg,#4f46e5,#7c3aed);--primary-gradient-hover:linear-gradient(135deg,#4338ca,#6d28d9);--secondary-gradient:linear-gradient(135deg,#6b7280,#4b5563);--secondary-gradient-hover:linear-gradient(135deg,#4b5563,#374151);--card-bg:#1f2937cc;--container-bg:#111827f2}*{transition:background-color .3s ease,border-color .3s ease,color .3s ease,box-shadow .3s ease}body{background-color:#fff;background-color:var(--bg-primary);color:#1f2937;color:var(--text-primary)}.dark-theme ::-webkit-scrollbar{width:8px}.dark-theme ::-webkit-scrollbar-track{background:#f8f9fa;background:var(--bg-secondary)}.dark-theme ::-webkit-scrollbar-thumb{background:#e9ecef;background:var(--bg-tertiary);border-radius:4px}.dark-theme ::-webkit-scrollbar-thumb:hover{background:#6b7280;background:var(--text-muted)}input,select,textarea{background:var(--input-bg)!important;border:1px solid var(--input-border)!important;color:var(--input-text)!important}input:focus,select:focus,textarea:focus{border-color:var(--input-focus)!important;box-shadow:0 0 0 3px #3b82f61a!important}input::placeholder,textarea::placeholder{color:var(--input-placeholder)!important}button:not(.theme-toggle):not(.btn-edit):not(.btn-delete):not(.section-tab):not(.btn-primary):not(.btn-secondary){background:var(--btn-secondary)!important;border:1px solid var(--border-primary)!important;color:var(--text-primary)!important}button:not(.theme-toggle):not(.btn-edit):not(.btn-delete):not(.section-tab):not(.btn-primary):not(.btn-secondary):hover{background:var(--btn-secondary-hover)!important}.modal,.modal-content{background:var(--bg-modal)!important;color:var(--text-primary)!important}.modal-header{background:var(--bg-modal-header)!important;border-bottom:1px solid var(--border-primary)!important}.modal-body{background:var(--bg-modal-body)!important}table{background:var(--bg-primary)!important;color:var(--text-primary)!important}th{background:var(--bg-secondary)!important}td,th{border-bottom:1px solid var(--border-primary)!important;color:var(--text-primary)!important}tr:hover{background:var(--bg-secondary)!important}li,ol,ul{color:var(--text-primary)!important}a{color:var(--border-focus)!important}a:hover,div,label,p,span{color:var(--text-primary)!important}.section-tab.active,.section-tab.active div,.section-tab.active label,.section-tab.active p,.section-tab.active span{color:#fff!important}.container,.content,.wrapper,h1,h2,h3,h4,h5,h6{color:var(--text-primary)!important}.container,.content,.wrapper{background:var(--container-bg)!important}*{scrollbar-color:var(--bg-tertiary) var(--bg-secondary);scrollbar-width:thin}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}::selection{background:var(--border-focus);color:#fff}::-moz-selection{background:var(--border-focus);color:#fff}.form-control,.form-input,.input-field{background:var(--input-bg)!important;border:1px solid var(--input-border)!important;color:var(--input-text)!important}.form-label,.input-label{color:var(--text-secondary)!important}.dropdown,.select-dropdown{background:var(--bg-field)!important;border:1px solid var(--border-primary)!important;color:var(--text-primary)!important}.dropdown-item{background:#0000!important;color:var(--text-primary)!important}.alert,.dropdown-item:hover,.notification{background:var(--bg-secondary)!important}.alert,.notification{border:1px solid var(--border-primary)!important;color:var(--text-primary)!important}.badge,.tag,.tooltip{background:var(--bg-tertiary)!important;color:var(--text-primary)!important}.panel,.section,.tooltip,.widget{border:1px solid var(--border-primary)!important}.panel,.section,.widget{background:var(--card-bg)!important;color:var(--text-primary)!important}.chart,.graph{background:var(--bg-primary)!important}.breadcrumb{background:var(--bg-secondary)!important}.breadcrumb-item{color:var(--text-secondary)!important}.breadcrumb-item.active{color:var(--text-primary)!important}.pagination{background:var(--bg-secondary)!important}.page-link{background:var(--bg-primary)!important;border:1px solid var(--border-primary)!important;color:var(--text-primary)!important}.page-link:hover{background:var(--bg-secondary)!important}.tab-content{background:var(--bg-primary)!important;color:var(--text-primary)!important}.nav-tabs .nav-link{background:var(--bg-secondary)!important;border:1px solid var(--border-primary)!important;color:var(--text-secondary)!important}.nav-tabs .nav-link.active{background:var(--bg-primary)!important;color:var(--text-primary)!important}*{box-sizing:border-box;margin:0;padding:0}.unit-surface:after{content:"m²"}.price-per-sqm:after{content:"/m²"}html{font-size:16px;scroll-behavior:smooth}@media (max-width:768px){html{font-size:14px}}@media (max-width:480px){html{font-size:13px}}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;font-feature-settings:"kern" 1;background-color:#f8fafc;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-optical-sizing:auto;line-height:1.5;text-rendering:optimizeLegibility}@media (hover:none) and (pointer:coarse){.button,[role=button],button{min-height:44px;min-width:44px}}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
/*# sourceMappingURL=main.72142203.css.map*/