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