.sd-card{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem;box-shadow:0 1px 3px #0000000f}@media (width>=640px){.sd-card{padding:2rem}}.sd-section-title{color:#1f2937;text-align:center;border-bottom:1px solid #e5e7eb;margin-bottom:1rem;padding-bottom:.75rem;font-size:1.15rem;font-weight:700}.sd-label{color:#6b7280;margin-bottom:.25rem;font-size:.875rem;font-weight:500;display:block}.sd-input-wrapper{position:relative}.sd-input-suffix{color:#6b7280;pointer-events:none;font-size:.875rem;font-weight:600;position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.sd-input{color:#1f2937;background:#fff;border:1px solid #d1d5db;border-radius:.5rem;outline:none;width:100%;padding:.75rem;font-family:Fira Code,ui-monospace,monospace;font-size:1rem;transition:border-color .15s,box-shadow .15s}.sd-input[type=number]{text-align:right;-moz-appearance:textfield;padding-right:3.5rem}.sd-input[type=number]::-webkit-outer-spin-button,.sd-input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.sd-input:focus{border-color:#22c55e;box-shadow:0 0 0 3px #22c55e26}.sd-select{color:#1f2937;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:.5rem;outline:none;width:100%;padding:.75rem;font-size:1rem;transition:border-color .15s,box-shadow .15s}.sd-select:focus{border-color:#22c55e;box-shadow:0 0 0 3px #22c55e26}.sd-btn-primary{color:#fff;cursor:pointer;background:#166534;border:none;border-radius:.5rem;width:100%;padding:.75rem 1rem;font-size:1rem;font-weight:600;transition:background .15s}.sd-btn-primary:hover{background:#15803d}.sd-btn-primary:focus{outline:none;box-shadow:0 0 0 2px #22c55e66}.sd-btn-add{color:#fff;cursor:pointer;white-space:nowrap;background:#166534;border:none;border-radius:.5rem;padding:.75rem 1.25rem;font-size:.875rem;font-weight:600;transition:background .15s}.sd-btn-add:hover{background:#15803d}.sd-btn-add:focus{outline:none;box-shadow:0 0 0 2px #22c55e66}.sd-btn-delete{color:#ef4444;cursor:pointer;background:0 0;border:none;border-radius:9999px;padding:.25rem .5rem;font-size:.75rem;line-height:1;transition:background .15s,color .15s}.sd-btn-delete:hover{color:#dc2626;background:#fef2f2}.sd-participants-list{flex-wrap:wrap;gap:.5rem;min-height:2rem;margin-top:.75rem;display:flex}.sd-participant-tag{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:9999px;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.875rem;font-weight:500;display:inline-flex}.sd-participant-tag .sd-btn-delete{padding:.125rem .25rem;font-size:.625rem}.sd-expenses-list{flex-direction:column;gap:.5rem;margin-top:.75rem;display:flex}.sd-expense-row{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.sd-expense-info{flex-direction:column;flex:1;gap:.125rem;min-width:0;display:flex}.sd-expense-concept{color:#1f2937;text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;font-weight:500;overflow:hidden}.sd-expense-payer{color:#6b7280;font-size:.75rem}.sd-expense-actions{flex-shrink:0;align-items:center;gap:.5rem;margin-left:.75rem;display:flex}.sd-expense-amount{color:#166534;white-space:nowrap;font-family:Fira Code,ui-monospace,monospace;font-size:.9375rem;font-weight:700}.sd-alert{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;margin-top:.75rem;padding:.75rem 1rem;font-size:.875rem;font-weight:500;display:none}.sd-alert.visible{display:block}.sd-empty-state{text-align:center;color:#9ca3af;padding:1rem 0;font-size:.875rem}.sd-results-area{margin-top:1.25rem}.sd-result-summary{grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:1.25rem;display:grid}@media (width<=639px){.sd-result-summary{grid-template-columns:1fr}}.sd-summary-card{text-align:center;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:.75rem;padding:1rem}.sd-summary-label{color:#374151;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem;font-size:.75rem;font-weight:600}.sd-summary-value{color:#166534;font-family:Fira Code,ui-monospace,monospace;font-size:1.25rem;font-weight:700}.sd-transactions-title{color:#1f2937;border-bottom:1px solid #e5e7eb;margin-bottom:.75rem;padding-bottom:.5rem;font-size:1rem;font-weight:600}.sd-transactions-list{flex-direction:column;gap:.75rem;display:flex}.sd-transaction-card{background:#fff;border:1px solid #e5e7eb;border-left:4px solid #22c55e;border-radius:.5rem;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.sd-transaction-arrow{color:#22c55e;flex-shrink:0;font-size:1.25rem}.sd-transaction-payer,.sd-transaction-receiver{color:#1f2937;font-size:.9375rem;font-weight:600}.sd-transaction-amount{color:#166534;white-space:nowrap;margin-left:auto;font-family:Fira Code,ui-monospace,monospace;font-size:1.125rem;font-weight:700}.sd-balanced{text-align:center;color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:.75rem;padding:1.5rem;font-size:1rem;font-weight:600}.dark .sd-card{background:#1f2937;border-color:#374151}.dark .sd-section-title{color:#f3f4f6;border-color:#374151}.dark .sd-label,.dark .sd-input-suffix{color:#9ca3af}.dark .sd-input,.dark .sd-select{color:#f3f4f6;background:#1f2937;border-color:#4b5563}.dark .sd-btn-delete{color:#f87171}.dark .sd-btn-delete:hover{color:#ef4444;background:#ef44441a}.dark .sd-participant-tag{color:#4ade80;background:#22c55e1a;border-color:#166534}.dark .sd-expense-row{background:#111827;border-color:#374151}.dark .sd-expense-concept{color:#f3f4f6}.dark .sd-expense-payer{color:#9ca3af}.dark .sd-expense-amount{color:#4ade80}.dark .sd-alert{color:#fca5a5;background:#ef44441a;border-color:#991b1b}.dark .sd-empty-state{color:#6b7280}.dark .sd-summary-card{background:#22c55e1a;border-color:#166534}.dark .sd-summary-label{color:#d1d5db}.dark .sd-summary-value{color:#4ade80}.dark .sd-transactions-title{color:#f3f4f6;border-color:#374151}.dark .sd-transaction-card{background:#111827;border-color:#374151 #374151 #374151 #22c55e}.dark .sd-transaction-payer,.dark .sd-transaction-receiver{color:#f3f4f6}.dark .sd-transaction-amount{color:#4ade80}.dark .sd-balanced{color:#4ade80;background:#22c55e1a;border-color:#166534}
