#portfolio-calculator { border: 1px solid #d9c7f1; border-radius: 12px; padding: 20px; margin: 24px 0; background: #faf7ff; color: #241135; }
#portfolio-stress-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
#portfolio-calculator .portfolio-home { min-width: 0; }
#portfolio-calculator h3 { margin: 0 0 12px; font-size: 19px; }
#portfolio-calculator label { display: block; margin: 0 0 12px; font-size: 15px; line-height: 1.5; }
#portfolio-calculator input { display: block; width: 100%; box-sizing: border-box; min-height: 44px; padding: 8px; background: white; color: #241135; border: 1px solid #917ba4; border-radius: 4px; font: inherit; }
#portfolio-calculator .portfolio-actions, #portfolio-error, #portfolio-results { grid-column: 1 / -1; }
#portfolio-calculator .portfolio-actions { display: flex; flex-wrap: wrap; gap: 12px; }
#portfolio-calculator button { background: #6115cd; color: white; border: 2px solid #6115cd; border-radius: 6px; padding: 12px 16px; min-height: 44px; font: inherit; cursor: pointer; }
#portfolio-calculator button[type=reset] { background: white; color: #6115cd; }
#portfolio-calculator :focus-visible { outline: 3px solid #241135; outline-offset: 3px; }
#portfolio-calculator [aria-invalid=true] { border-color: #6115cd; }
#portfolio-error { color: #6115cd; }
#portfolio-results dl { margin: 0; display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: 10px; }
#portfolio-results dt, #portfolio-results dd { margin: 0; padding: 8px 0; border-bottom: 1px solid #d9c7f1; overflow-wrap: anywhere; }
#portfolio-results dd { font-weight: 600; }
@media (max-width: 600px) { #portfolio-stress-form { grid-template-columns: minmax(0, 1fr); } #portfolio-calculator { padding: 14px; } }
