.card{border:1px solid var(--color-border);border-radius:var(--card-border-radius);transition:var(--card-transition)}.card,.card--default{background:var(--color-surface-tertiary);box-shadow:var(--card-shadow)}.card--default{border:1px solid var(--color-border)}.card--outlined{background:transparent;border:2px solid var(--color-border);box-shadow:none}.card--elevated{background:var(--color-surface-tertiary);border:1px solid var(--color-border-lighter);box-shadow:var(--shadow-lg)}.card--ghost{background:transparent;border:none;box-shadow:none}.card--padding-none{padding:var(--space-0)}.card--padding-sm{padding:var(--card-padding-sm)}.card--padding-md{padding:var(--card-padding-md)}.card--padding-lg{padding:var(--card-padding-lg)}.card--success{background:var(--color-success-bg);border-color:var(--color-success-border)}.card--success .card-title{color:var(--color-success)}.card--error{background:var(--color-error-bg);border-color:var(--color-error-border)}.card--error .card-title{color:var(--color-error)}.card--warning{background:var(--color-warning-bg);border-color:var(--color-warning-border)}.card--warning .card-title{color:var(--color-warning)}.card--info{background:var(--color-info-bg);border-color:var(--color-info-border)}.card--info .card-title{color:var(--color-info)}.card--interactive{cursor:pointer;transition:var(--card-transition)}.card--interactive:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:var(--accent)}.card--interactive:active{transform:translateY(0)}.card-header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4);border-bottom:1px solid var(--color-border-lighter);padding-bottom:var(--space-3)}.card>.card-header:first-child{margin-top:0}.card-title{margin:0;font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-text-primary);line-height:var(--line-height-tight)}.card-subtitle{margin:0;font-size:var(--text-sm);color:var(--color-text-secondary);font-weight:var(--font-normal);line-height:var(--line-height-normal)}.card-body{display:flex;flex-direction:column;gap:var(--card-gap)}.card-footer{display:flex;gap:var(--space-3);margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--color-border-lighter)}.card-footer--start{justify-content:flex-start}.card-footer--center{justify-content:center}.card-footer--end{justify-content:flex-end}.card-footer--between{justify-content:space-between}.card--padding-default{padding:var(--card-padding-md)}.card--padding-compact{padding:var(--card-padding-sm)}.card--padding-minimal{padding:var(--space-3)}.card--padding-large{padding:var(--card-padding-lg)}.card--minimal{background:transparent;border:none;box-shadow:none;padding:0}.card--compact{padding:var(--card-padding-sm)}.card--empty{background:rgba(124,58,237,.05);border:2px dashed var(--color-border);display:flex;align-items:center;justify-content:center;min-height:200px;text-align:center;color:var(--color-text-secondary)}[data-theme=light] .card-header{border-bottom-color:#f0f0f0}[data-theme=light] .card-footer{border-top-color:#f0f0f0}@media (max-width:639px){.card{border-radius:var(--radius-lg)}.card--padding-default,.card--padding-md{padding:var(--card-padding-sm)}.card-header{flex-direction:column;align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-3)}.card-title{font-size:var(--text-base)}.card-subtitle{font-size:var(--text-xs)}.card-footer{flex-direction:column;gap:var(--space-2)}.card-footer--center,.card-footer--end,.card-footer--start{justify-content:stretch}.card-footer .btn,.card-footer .button,.card-footer .button-modern{width:100%}}.chart-container,.chart-wrapper{width:100%;height:280px}.chart-tooltip{background:var(--chart-tooltip-bg);border:1px solid var(--chart-tooltip-border);border-radius:12px;padding:12px 16px;box-shadow:0 4px 12px rgba(0,0,0,.1)}.chart-tooltip-title{margin:0 0 4px;font-weight:600;font-size:14px;color:var(--ink,#f3f4f6)}.chart-tooltip-value{margin:0;font-size:16px;font-weight:700}.chart-tooltip-value--primary{color:var(--accent)}.chart-tooltip-value--muted{color:var(--light-text-tertiary)}.chart-tooltip-subtitle{margin:4px 0 0;font-size:12px;color:var(--ink)}.chart-legend{list-style:none;padding:0;margin:16px 0 0;display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.chart-legend-item{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--ink)}.chart-legend-dot{display:inline-block;width:12px;height:12px;border-radius:50%}.chart-info{margin-bottom:20px;padding:12px 16px;background:var(--warning-bg);border:1px solid var(--warning-border);border-radius:8px;font-size:14px;color:var(--ink,#f3f4f6);display:flex;align-items:center;gap:8px}[data-theme=dark] .chart-info{background:rgba(245,158,11,.1);border-color:rgba(245,158,11,.3);color:#fbbf24}.chart-info-icon{font-size:16px}.chart-tip{margin-bottom:20px;padding:12px 16px;background:#0c2340;border:1px solid #0f3a5f;border-radius:8px;font-size:14px;color:#7dd3fc;display:flex;align-items:center;gap:8px}[data-theme=light] .chart-tip{background:#f0f9ff;border:1px solid #bae6fd;color:#0369a1}.chart-tip-icon{font-size:16px}.chart-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px}.chart-error{margin-bottom:24px}.budget-progress-container{width:100%}.budget-progress-bar{display:flex;flex-direction:column;gap:12px}.budget-progress-header{display:flex;justify-content:space-between;font-size:14px;color:var(--ink)}.budget-progress-header strong{font-weight:600;color:var(--ink)}.budget-progress-track{height:8px;background-color:var(--light-bg-tertiary);border-radius:4px;overflow:hidden}.budget-progress-fill{height:100%;border-radius:4px;transition:width .3s ease,background-color .3s ease}.budget-progress-fill.green{background-color:var(--success)}.budget-progress-fill.orange{background-color:var(--warning)}.budget-progress-fill.red{background-color:var(--error)}.budget-progress-bar--compact{gap:8px}.budget-progress-bar--compact .budget-progress-header{font-size:12px}.budget-progress-bar--compact .budget-progress-track{height:6px}.chart-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;color:var(--muted)}@media (max-width:700px){.chart-card-content-row{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;width:100%}.chart-legend{flex:1 1 40%;align-items:flex-start;margin:0;padding:0 0 0 4px;min-width:120px;max-width:50%}.chart-container{flex:1 1 60%;min-width:120px;max-width:60vw;height:180px;margin-left:0}}.chart-empty-state svg{margin-bottom:16px;opacity:.6}.chart-empty-state h3{margin:0 0 8px;font-size:16px;color:var(--ink,#f3f4f6)}.chart-empty-state p{margin:0 0 12px;font-size:14px}.chart-empty-state .button{margin-top:8px}@media (max-width:768px){.chart-container,.chart-wrapper{height:220px}.budget-progress-header{flex-direction:column;gap:4px;font-size:13px}.chart-empty-state{padding:30px 16px}.chart-empty-state svg{width:60px;height:60px}.chart-legend{gap:8px;font-size:11px}.chart-legend-dot{width:10px;height:10px}.chart-tooltip{padding:10px 12px}.chart-tooltip-title{font-size:13px}.chart-tooltip-value{font-size:14px}.chart-info,.chart-tip{padding:10px 12px;font-size:13px}}@media (max-width:480px){.chart-container,.chart-wrapper{height:200px}.chart-legend{flex-direction:column;align-items:flex-start;gap:6px}.chart-empty-state h3{font-size:15px}.chart-empty-state p{font-size:13px}}