body{margin:0;font-family:Manrope,system-ui,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--color-primary: #f97316;--color-primary-hover: #ea580c;--color-text-main: #2b1a14;--color-text-secondary: #4a342e;--color-text-muted: #7a6a5e;--color-text-inverse: #ffffff;--color-bg-main: #ffffff;--color-bg-soft: #fff7ed;--color-bg-card: #ffffff;--color-border: #e0e0e0;--color-shadow: rgba(43, 26, 20, .08);--color-success: #16a34a;--color-warning: #f59e0b;--color-error: #dc2626;--color-primary-gradient: linear-gradient( 135deg, #f8a144 0%, #f97316 5%, #ea580c 50%, #f97316 95%, #f8a144 100% )}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f9fafb;min-height:100vh}.container{max-width:1200px;margin:0 auto}h1{color:var(--color-text-main);text-align:center;margin-bottom:30px;font-size:2.5em;text-shadow:2px 2px 4px rgba(0,0,0,.2)}.layout{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}@media(max-width:1024px){.layout{grid-template-columns:1fr}}.card{background:var(--color-bg-main);border-radius:.5rem;padding:25px;box-shadow:2px 2px 5px #0003;border-left-width:4px;border-left-color:var(--color-primary-hover);border-left-style:solid}.card h2{color:var(--color-text-main);margin-bottom:10px;font-size:1.5em;border-bottom:3px solid var(--color-text-main);padding-bottom:10px}.form-group{margin-bottom:15px}label{display:block;margin-bottom:8px;color:var(--color-text-main);font-weight:600;font-size:.95em}input,select{width:100%;padding:12px;border:2px solid #e0e0e0;border-radius:.5rem;font-size:1em;transition:border-color .3s}input:focus,select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}button{width:100%;padding:12px;background:var(--color-primary);color:var(--color-text-inverse);border:none;border-radius:.5rem;font-size:1em;font-weight:600;cursor:pointer;transition:background .3s,transform .1s;height:44px}button:hover{background:var(--color-primary-hover)}button:active{transform:scale(.98)}button.secondary{background:#f0f0f0;color:#333;margin-top:10px}button.secondary:hover{background:#e0e0e0}button.danger{background:#e74c3c}button.danger:hover{background:#c0392b}.people-list,.expenses-list{max-height:400px;overflow-y:auto}.person-item,.expense-item{padding:10px 0;display:flex;justify-content:space-between;align-items:center;color:var(--color-text-secondary);border-bottom:2px solid var(--color-border)}.person-item:last-of-type,.expense-item:last-of-type{border:none}.person-item span,.expense-item .info{font-weight:500;color:var(--color-text-main)}.person-item button,.expense-item button{flex-basis:fit-content}.person-item .delete-btn,.expense-item .delete-btn{background:var(--color-error);color:#fff;border:none;padding:6px 12px;border-radius:.5rem;cursor:pointer;font-size:.85em}.person-item .delete-btn:hover,.expense-item .delete-btn:hover{background:#c0392b}.checkbox-group{background:#f9f9f9;padding:15px;border-radius:.5rem;margin-bottom:15px;max-height:200px;overflow-y:auto}.checkbox-group label{display:flex;align-items:center;margin-bottom:12px;font-weight:400}.checkbox-group input[type=checkbox]{width:20px;height:20px;margin-right:10px;cursor:pointer}.settlement{padding:12px;color:var(--color-text-secondary);border-bottom:2px solid var(--color-border)}.settlement:last-of-type{border:none}.settlement:last-child{margin-bottom:0}.settlement strong{color:var(--color-text-secondary)}.empty-state{text-align:center;color:#999;padding:20px;font-style:italic}.expense-item .info{flex:1}.expense-item .amount{color:var(--color-text-main);font-weight:700;margin-right:15px}.error-message{background:#fff3cd;color:#856404;padding:12px;border-radius:.5rem;margin:15px 0;border-left:4px solid #ffc107}.success-message{background:#d4edda;color:#155724;padding:12px;border-radius:.5rem;margin-bottom:15px 0;border-left:4px solid #28a745}.app-wrapper{max-width:1600px;margin:0 auto;padding:25px 20px;display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}@media(max-width:768px){.app-wrapper{grid-template-columns:1fr}}.column-wrapper{display:flex;flex-direction:column;min-width:48%;flex:auto;gap:25px}
