.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-md);font-weight:var(--font-weight-semibold);font-size:var(--font-size-body);border:1px solid transparent;cursor:pointer;text-decoration:none;min-height:44px;transition:box-shadow var(--transition-fast),background-color var(--transition-fast)}.btn:hover{text-decoration:none}.btn--primary{background:var(--color-primary);color:var(--color-on-primary)}.btn--primary:hover{background:var(--color-primary-dark);box-shadow:var(--shadow-card-hover)}.btn--secondary{background:transparent;color:var(--color-primary);border-color:var(--color-primary)}.btn--secondary:hover{background:var(--color-surface)}.btn--sm{padding:var(--space-xs) var(--space-md);font-size:var(--font-size-small);min-height:36px}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--space-lg)}.card--interactive{transition:box-shadow var(--transition-base),transform var(--transition-base)}.card--interactive:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.card__title{font-size:var(--font-size-h4);margin-bottom:var(--space-sm)}.card__body{color:var(--color-text-muted);font-size:var(--font-size-small)}.field{margin-bottom:var(--space-md)}.field__label{display:block;font-weight:var(--font-weight-medium);font-size:var(--font-size-small);color:var(--color-text);margin-bottom:var(--space-xs)}.field__hint{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:var(--space-xs)}.field__input{width:100%;min-height:44px;padding:var(--space-sm) var(--space-md);font-family:var(--font-family-base);font-size:var(--font-size-body);color:var(--color-text);background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-sm)}.field__input:focus-visible{border-color:var(--color-primary)}.field--error .field__input{border-color:var(--color-error)}.field__error{display:flex;align-items:center;gap:var(--space-xs);color:var(--color-error);font-size:var(--font-size-xs);margin-top:var(--space-xs)}.field__error::before{content:"!";display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:50%;background:var(--color-error);color:#fff;font-size:10px;font-weight:var(--font-weight-bold);flex-shrink:0}.calculator{display:grid;gap:var(--space-xl)}.calculator__inputs{display:grid;gap:var(--space-md);grid-template-columns:repeat(2,1fr)}@media (max-width:768px){.calculator__inputs{grid-template-columns:1fr}}.calculator__submit{grid-column:1 / -1}.result-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-xl);min-height:160px}.result-card__headline{font-size:var(--font-size-h1);font-weight:var(--font-weight-bold);color:var(--color-text);margin-bottom:var(--space-xs)}.result-card__headline--positive{color:var(--color-success)}.result-card__headline--negative{color:var(--color-error)}.result-card__label{font-size:var(--font-size-small);color:var(--color-text-muted);margin-bottom:var(--space-lg)}.result-card__metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md)}@media (max-width:768px){.result-card__metrics{grid-template-columns:repeat(2,1fr)}}.result-card__metric-value{font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold)}.result-card__metric-label{font-size:var(--font-size-xs);color:var(--color-text-muted)}.breakdown{border-top:1px solid var(--color-border);margin-top:var(--space-lg);padding-top:var(--space-md)}.breakdown__toggle{background:none;border:none;color:var(--color-primary);font-weight:var(--font-weight-medium);cursor:pointer;padding:var(--space-sm) 0;min-height:44px}.breakdown__panel[hidden]{display:none}.breakdown__row{display:flex;justify-content:space-between;padding:var(--space-sm) 0;border-bottom:1px solid var(--color-border);font-size:var(--font-size-small)}.comparison-table{width:100%;border-collapse:collapse;overflow-x:auto;display:block}.comparison-table table{width:100%;border-collapse:collapse}.comparison-table th,.comparison-table td{padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--color-border);text-align:left;font-size:var(--font-size-small);white-space:nowrap}.comparison-table th{color:var(--color-text-muted);font-weight:var(--font-weight-medium)}.alert{display:flex;gap:var(--space-sm);align-items:flex-start;padding:var(--space-md);border-radius:var(--radius-md);font-size:var(--font-size-small);border:1px solid transparent}.alert--info{background:#EAF1FE;border-color:#C9DBFB;color:var(--color-primary-dark)}.alert--warning{background:#FCF3E1;border-color:#F3DBA6;color:#7A5209}.alert--error{background:#FBEAEA;border-color:#F3C6C7;color:#8A2A2D}.breadcrumbs{list-style:none;display:flex;flex-wrap:wrap;gap:var(--space-xs);margin:0 0 var(--space-lg) 0;padding:0;font-size:var(--font-size-small);color:var(--color-text-muted)}.breadcrumbs li{display:flex;align-items:center;gap:var(--space-xs)}.breadcrumbs li:not(:last-child)::after{content:"/";color:var(--color-border)}.breadcrumbs a{color:var(--color-text-muted)}.breadcrumbs a:hover{color:var(--color-primary)}.breadcrumbs [aria-current="page"]{color:var(--color-text);font-weight:var(--font-weight-medium)}.faq{border-top:1px solid var(--color-border)}.faq__item{border-bottom:1px solid var(--color-border)}.faq__question{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-md) 0;background:none;border:none;text-align:left;font-weight:var(--font-weight-semibold);font-size:var(--font-size-body);color:var(--color-text);cursor:pointer;min-height:44px}.faq__answer{padding-bottom:var(--space-md);color:var(--color-text-muted);font-size:var(--font-size-small)}.faq__answer[hidden]{display:none}.cta-block{background:var(--color-primary);color:var(--color-on-primary);border-radius:var(--radius-lg);padding:var(--space-2xl) var(--space-xl);text-align:center}.cta-block h2{color:var(--color-on-primary)}.cta-block p{color:rgba(255,255,255,0.85)}.cta-block .btn--primary{background:var(--color-on-primary);color:var(--color-primary)}.cta-block .btn--primary:hover{background:var(--color-surface)}