.vd{max-width:900px;margin:0 auto;padding:var(--space-xl) var(--space-md) var(--space-3xl)}.vd__header{margin-bottom:var(--space-xl)}.vd__explainer{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg) var(--space-xl);margin-bottom:var(--space-xl);font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.7}.vd__explainer-title{font-size:var(--text-lg);font-weight:700;color:var(--color-text);margin-bottom:var(--space-md)}.vd__explainer h3{font-size:var(--text-base);font-weight:600;color:var(--color-text);margin-top:var(--space-lg);margin-bottom:var(--space-sm)}.vd__explainer p{margin-bottom:var(--space-md)}.vd__explainer ul{list-style:disc;padding-left:var(--space-xl);margin-bottom:var(--space-md)}.vd__explainer li{margin-bottom:var(--space-sm)}.vd__explainer strong{color:var(--color-text);font-weight:600}.vd__explainer-warning{background:var(--color-highlight-bg);border:1px solid var(--color-highlight-border);border-radius:var(--radius-md);padding:var(--space-md);margin-top:var(--space-lg);margin-bottom:0}.vd__title{font-size:var(--text-3xl);font-weight:700;letter-spacing:-.02em;margin-bottom:var(--space-sm)}.vd__subtitle{font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.6;max-width:640px}.vd__section-title{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-subtle);margin-bottom:var(--space-md)}.vd__assumptions{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg);margin-bottom:var(--space-xl)}.vd__assumptions-grid{display:flex;flex-direction:column;gap:var(--space-md)}.vd__field{display:grid;grid-template-columns:15rem minmax(0,1fr) 5.5rem;align-items:center;gap:var(--space-md)}.vd__field-label{font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.4}.vd__number{font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.5rem .6rem;color:var(--color-text);width:100%;text-align:right}.vd__number:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-bg)}.vd__slider{width:100%;-webkit-appearance:none;appearance:none;height:6px;border-radius:var(--radius-full);background:var(--color-border);cursor:pointer;padding:0;margin:0;border:none}.vd__slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;border-radius:50%;background:var(--color-accent);cursor:pointer;border:3px solid var(--color-surface);box-shadow:0 0 0 1px var(--color-accent)}.vd__slider::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--color-accent);cursor:pointer;border:3px solid var(--color-surface);box-shadow:0 0 0 1px var(--color-accent)}.vd__slider::-moz-range-track{height:6px;border-radius:var(--radius-full);background:var(--color-border);border:none}.vd__slider:hover::-webkit-slider-thumb,.vd__slider:focus::-webkit-slider-thumb{background:var(--color-accent-hover)}.vd__slider:hover::-moz-range-thumb,.vd__slider:focus::-moz-range-thumb{background:var(--color-accent-hover)}.vd__slider:focus{outline:none}@media(max-width:700px){.vd__field{grid-template-columns:minmax(0,1fr) 5rem}.vd__field-label{grid-column:1 / -1;font-size:var(--text-xs)}}.vd__companies{display:flex;flex-direction:column;gap:var(--space-lg);margin-bottom:var(--space-lg)}.vd-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg)}.vd-card__header{display:flex;align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg)}.vd-card__name{flex:1;font-family:var(--font-sans);font-size:var(--text-base);font-weight:600;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.5rem .75rem;color:var(--color-text)}.vd-card__name:focus{outline:none;border-color:var(--color-accent)}.vd-card__remove{display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:transparent;color:var(--color-text-muted);cursor:pointer;font-size:1rem;transition:all var(--transition-fast)}.vd-card__remove:hover{color:var(--color-text);border-color:var(--color-border-strong);background:var(--color-surface-hover)}.vd-card__remove:disabled{opacity:.35;cursor:not-allowed}.vd-card__inputs{display:flex;flex-direction:column;gap:var(--space-md);margin-bottom:var(--space-lg)}.vd-card__result{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-md);padding-top:var(--space-lg);border-top:1px solid var(--color-border)}.vd-kpi{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.75rem .9rem}.vd-kpi__label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-subtle);font-weight:600;margin-bottom:4px}.vd-kpi__value{font-size:var(--text-lg);font-weight:700;letter-spacing:-.01em;color:var(--color-text)}.vd-kpi__hint{font-size:var(--text-xs);color:var(--color-text-subtle);margin-top:2px}.vd-badge{display:inline-flex;align-items:center;font-size:var(--text-xs);font-weight:600;padding:2px 9px;border-radius:var(--radius-full)}.vd-badge--under{background:#0596691a;color:#059669;border:1px solid rgba(5,150,105,.3)}.vd-badge--over{background:#dc26261a;color:#dc2626;border:1px solid rgba(220,38,38,.25)}.vd-badge--fair{background:#d977061a;color:#b45309;border:1px solid rgba(217,119,6,.25)}.vd__add-btn{font-family:var(--font-sans);font-size:var(--text-sm);font-weight:500;color:var(--color-accent);background:transparent;border:1px dashed var(--color-border);border-radius:var(--radius-md);padding:.6rem 1rem;cursor:pointer;width:100%;transition:all var(--transition-fast)}.vd__add-btn:hover{background:var(--color-accent-bg);border-color:var(--color-accent-border)}.vd__footnote{font-size:var(--text-xs);color:var(--color-text-subtle);line-height:1.6;margin-top:var(--space-lg)}@media(max-width:768px){.vd-card__result{grid-template-columns:repeat(2,1fr)}}
