.form-alert{width:100%;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px 16px;border-radius:var(--radius);background:#fdf0f0;border:1px solid #e8c4c4;color:#8b3a3a;font-size:.95rem;line-height:1.45;margin-bottom:12px}.form-alert p{margin:0}.form-alert-dismiss{flex-shrink:0;width:28px;height:28px;padding:0;border-radius:6px;background:transparent;color:inherit;font-size:.9rem}.form-alert-dismiss:hover{background:#8b3a3a14;transform:none;box-shadow:none}.form-field{flex:1 1 200px;min-width:200px;display:flex;flex-direction:column;gap:6px;align-self:flex-start}.form-field--full{width:100%;flex:1 1 100%}.form-field-control{width:100%}.form-field-control>input,.form-field-control>select{width:100%;flex:none}.field-hint{margin:0;font-size:.85rem;line-height:1.35}.field-hint--error{color:var(--color-danger)}.input-error,select.input-error{border-color:var(--color-danger);box-shadow:0 0 0 3px #c954541f}.payees-list--error{border-color:#c9545473;background:#fdf7f7}.home-page{min-height:100vh;padding:40px 20px;background:linear-gradient(180deg,var(--color-bg) 0%,var(--color-bg-subtle) 100%)}.container{max-width:1000px;margin:0 auto;padding-bottom:60px}.header{text-align:center;color:var(--color-text);margin-bottom:50px;animation:fadeIn .6s ease-in}.header h1{font-size:3rem;margin-bottom:10px;font-weight:700;letter-spacing:-.02em}.header p{font-size:1.2rem;color:var(--color-text-muted)}.create-event-section{margin-bottom:50px}.create-form{display:flex;gap:10px;background:var(--color-surface);padding:20px;border-radius:var(--radius);box-shadow:var(--shadow-md);border:1px solid var(--color-border);flex-wrap:wrap;align-items:flex-start}.create-form>.btn-primary{align-self:flex-start;flex-shrink:0}.create-form input{flex:1;min-width:250px;padding:12px 16px;font-size:1rem;border:1px solid var(--color-border);border-radius:8px;transition:all .2s ease}.create-form .form-field input{flex:none;width:100%;min-width:0}.create-form input:focus{outline:none;border-color:var(--color-border-strong);box-shadow:0 0 0 3px var(--color-accent-muted)}.btn-primary{padding:12px 30px;background:var(--color-accent);color:#fff;font-weight:600;border-radius:8px;transition:all .2s ease;white-space:nowrap}.events-section{margin-top:50px}.events-section h2{color:var(--color-text);margin-bottom:20px;font-size:1.8rem;font-weight:600;letter-spacing:-.01em}.events-list{display:grid;gap:15px}.event-card{background:var(--color-surface);padding:20px;border-radius:var(--radius);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center;transition:all .2s ease}.event-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-border-strong);transform:translateY(-1px)}.event-info h3{font-size:1.3rem;margin-bottom:8px;color:var(--color-text);font-weight:600}.event-date{color:var(--color-text-subtle);font-size:.9rem}.event-actions{display:flex;gap:10px}.btn-secondary,.btn-danger{padding:8px 16px;font-size:.9rem;border-radius:8px;transition:all .2s ease;font-weight:500}.btn-secondary{background:var(--color-accent);color:#fff}.btn-secondary:hover{background:var(--color-accent-hover)}.btn-danger{background:var(--color-danger);color:#fff}.btn-danger:hover{background:var(--color-danger-hover)}.empty-state{text-align:center;padding:60px 20px;background:var(--color-surface);border-radius:var(--radius);color:var(--color-text-muted);font-size:1.2rem;border:1px dashed var(--color-border)}@keyframes fadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 600px){.header h1{font-size:2rem}.create-form{flex-direction:column}.event-card{flex-direction:column;align-items:flex-start;gap:15px}.event-actions{width:100%}.event-actions button{flex:1}}.event-page{min-height:100vh;padding:40px 20px;background:linear-gradient(180deg,var(--color-bg) 0%,var(--color-bg-subtle) 100%)}.container{max-width:1000px;margin:0 auto}.event-header{margin-bottom:40px}.header-content{display:flex;align-items:center;gap:20px;margin-bottom:30px}.btn-back{background:var(--color-surface);color:var(--color-text-muted);padding:10px 20px;border-radius:8px;border:1px solid var(--color-border);font-size:1rem;cursor:pointer;transition:all .2s ease}.btn-back:hover{background:var(--color-bg);color:var(--color-text);border-color:var(--color-border-strong)}.header-content h1{color:var(--color-text);font-size:2.5rem;font-weight:700;letter-spacing:-.02em}.share-section{background:var(--color-surface);padding:20px;border-radius:var(--radius);box-shadow:var(--shadow-md);border:1px solid var(--color-border)}.share-box{display:flex;gap:10px;margin-bottom:10px}.share-input{flex:1;padding:12px 16px;border:1px solid var(--color-border);border-radius:8px;font-size:.95rem;background:var(--color-bg);color:var(--color-text-muted)}.btn-copy{padding:12px 24px;background:var(--color-accent);color:#fff;font-weight:600;border-radius:8px;border:none;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-copy:hover{background:var(--color-accent-hover);box-shadow:var(--shadow-md)}.share-hint{color:var(--color-text-subtle);font-size:.9rem;margin:0}.tabs{display:flex;gap:10px;margin-bottom:30px;flex-wrap:wrap}.tab-button{flex:1;min-width:180px;padding:14px 18px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text-muted);font-weight:600;cursor:pointer;transition:all .2s ease}.tab-button.active{background:var(--color-surface);border-color:var(--color-accent);color:var(--color-text);box-shadow:var(--shadow-sm)}.tab-button:hover{border-color:var(--color-border-strong)}.tab-content{margin-bottom:40px}.payments-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:15px;margin-top:20px}.add-participant-section{background:var(--color-surface);padding:25px;border-radius:var(--radius);box-shadow:var(--shadow-md);border:1px solid var(--color-border);margin-bottom:40px}.add-participant-section h2{margin-bottom:20px;color:var(--color-text);font-size:1.3rem;font-weight:600}.participant-form{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-start;width:100%}.participant-form>.form-field:not(.form-field--full){flex:1 1 0;min-width:min(100%,160px)}.participant-form>.btn-primary{align-self:flex-start;flex-shrink:0}.participant-form input,.participant-form select{flex:1;padding:12px 16px;border:1px solid var(--color-border);border-radius:8px;font-size:1rem;transition:all .2s ease;background:var(--color-surface);color:var(--color-text)}.participant-form .form-field input,.participant-form .form-field select{flex:none;width:100%}.participant-form select{max-width:100%}.payment-options{width:100%;display:flex;gap:20px;flex-wrap:wrap;margin:10px 0;align-items:center}.payment-options-label{color:var(--color-text-muted);font-weight:600;font-size:.95rem}.payment-total-preview{width:100%;margin:0;color:var(--color-text-muted);font-size:.95rem}.payment-total-preview strong{color:var(--color-text)}.payee-name{flex:1}.share-input{width:72px;padding:6px 8px!important;text-align:center}.settlement-subheading{margin:24px 0 12px;color:var(--color-text);font-size:1.05rem;font-weight:600}.settlement-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:8px}.settlement-details-block{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:16px}.settlement-list{list-style:none;display:grid;gap:10px}.settlement-list li{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;color:var(--color-text-muted)}.settlement-list strong{color:var(--color-text);white-space:nowrap}.settlement-paid{display:flex;flex-direction:column;align-items:flex-end;gap:4px;text-align:right}.settlement-paid em{font-style:normal;font-size:.85rem}.balance-positive{color:#3d7a4a}.balance-negative{color:var(--color-danger)}.balance-neutral{color:var(--color-text-subtle)}.payment-card{position:relative;padding-right:48px}.payment-card .btn-remove{position:absolute;top:16px;right:16px}.payment-payer{color:var(--color-text-muted);font-size:.95rem;margin-bottom:6px}.payment-amount-line{font-size:1.1rem;margin-bottom:8px}.transfer-card h3{font-size:.95rem}.transfer-card p{font-size:1.2rem}.payment-options label{display:flex;align-items:center;gap:8px;color:var(--color-text);font-weight:600}.payees-list{width:100%;background:var(--color-bg);padding:16px;border-radius:var(--radius);border:1px solid var(--color-border);display:grid;gap:10px}.payee-checkbox{display:flex;align-items:center;gap:10px;background:var(--color-surface);padding:10px 12px;border-radius:8px;border:1px solid var(--color-border)}.payment-details{margin:12px 0 0;color:var(--color-text-muted);font-size:.95rem}.participant-form input:focus{outline:none;border-color:var(--color-border-strong);box-shadow:0 0 0 3px var(--color-accent-muted)}.btn-primary{padding:12px 30px;background:var(--color-accent);color:#fff;font-weight:600;border-radius:8px;border:none;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-primary:hover{background:var(--color-accent-hover);box-shadow:var(--shadow-md)}.participants-section{background:var(--color-surface);padding:25px;border-radius:var(--radius);box-shadow:var(--shadow-md);border:1px solid var(--color-border);margin-bottom:40px}.participants-section h2{margin-bottom:20px;color:var(--color-text);font-size:1.3rem;font-weight:600}.participants-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:15px}.participant-card{background:var(--color-bg);padding:20px;border-radius:10px;display:flex;justify-content:space-between;align-items:center;transition:all .2s ease;border:1px solid var(--color-border);border-left:3px solid var(--color-warm)}.participant-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm);border-color:var(--color-border-strong)}.participant-info h3{margin:0 0 10px;color:var(--color-text);font-size:1.1rem;font-weight:600}.badges-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.drink-badge,.amount-badge{display:inline-block;color:#fff;padding:6px 12px;border-radius:20px;font-size:.9rem;margin:0;font-weight:600}.drink-badge{background:var(--color-accent)}.amount-badge{background:var(--color-warm)}.settlement-section{margin-top:30px;padding:24px;border-radius:var(--radius);background:var(--color-bg);border:1px solid var(--color-border)}.settlement-section h2{margin-bottom:18px;color:var(--color-text);font-size:1.25rem;font-weight:600}.settlement-summary{display:flex;gap:20px;flex-wrap:wrap;margin-bottom:20px}.settlement-summary p{margin:0;color:var(--color-text-muted);font-size:1rem}.settlement-summary strong{color:var(--color-text)}.settlement-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:15px}.settlement-card{background:var(--color-surface);padding:16px;border-radius:var(--radius);box-shadow:var(--shadow-sm);border:1px solid var(--color-border)}.settlement-card h3{margin:0 0 10px;font-size:1rem;color:var(--color-text-muted);font-weight:500}.settlement-card p{margin:0;font-size:1.1rem;font-weight:700;color:var(--color-text)}.btn-remove{background:var(--color-danger);color:#fff;width:32px;height:32px;border-radius:50%;border:none;font-size:1.2rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;padding:0}.btn-remove:hover{background:var(--color-danger-hover);transform:scale(1.05)}.empty-participants{text-align:center;padding:60px 20px;background:var(--color-bg);border-radius:10px;color:var(--color-text-subtle);font-size:1.1rem;border:1px dashed var(--color-border)}.loading{display:flex;justify-content:center;align-items:center;height:100vh;color:var(--color-text-muted);font-size:1.2rem;background:var(--color-bg)}@media (max-width: 600px){.header-content{flex-direction:column;align-items:flex-start}.header-content h1{font-size:1.8rem}.share-box,.participant-form{flex-direction:column}.participants-grid{grid-template-columns:1fr}}.site-footer{max-width:1000px;margin:0 auto;padding:32px 20px 48px;color:var(--color-text-subtle);font-size:.9rem;line-height:1.5;text-align:center;border-top:1px solid var(--color-border)}.settlement-disclaimer{margin:0 0 16px;color:var(--color-text-muted);font-size:.95rem;line-height:1.5}:root{--color-bg: #f5f4f1;--color-bg-subtle: #ebeae6;--color-surface: #ffffff;--color-text: #1c1c1a;--color-text-muted: #6b6966;--color-text-subtle: #9c9893;--color-border: #e3e1dc;--color-border-strong: #d1cec8;--color-accent: #2c3338;--color-accent-hover: #1a2024;--color-accent-muted: rgba(44, 51, 56, .08);--color-warm: #b8734a;--color-warm-muted: #f3ebe4;--color-danger: #c95454;--color-danger-hover: #b84444;--shadow-sm: 0 1px 3px rgba(28, 28, 26, .06);--shadow-md: 0 4px 16px rgba(28, 28, 26, .08);--shadow-lg: 0 8px 28px rgba(28, 28, 26, .1);--radius: 12px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--color-bg);color:var(--color-text);min-height:100vh}html,body,#root{height:100%}button{cursor:pointer;border:none;border-radius:8px;padding:10px 20px;font-size:16px;transition:all .2s ease}button:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}input{border:1px solid var(--color-border);border-radius:8px;padding:10px 15px;font-size:16px;transition:border-color .2s ease,box-shadow .2s ease;background:var(--color-surface);color:var(--color-text)}input:focus{outline:none;border-color:var(--color-border-strong);box-shadow:0 0 0 3px var(--color-accent-muted)}select{border:1px solid var(--color-border);border-radius:8px;padding:10px 15px;font-size:16px;transition:border-color .2s ease,box-shadow .2s ease;background:var(--color-surface);color:var(--color-text)}select:focus{outline:none;border-color:var(--color-border-strong);box-shadow:0 0 0 3px var(--color-accent-muted)}
