:root{--bg: #0b0d12;--bg-glow: radial-gradient(circle at 15% 0%, rgba(246, 169, 74, .08), transparent 40%), radial-gradient(circle at 85% 15%, rgba(108, 140, 255, .07), transparent 45%);--card: #151822;--card-hover: #1a1e2a;--border: #262b38;--text: #eef0f4;--muted: #9099ac;--accent: #f6a94a;--accent-dark: #d98a2c;--accent-2: #6c8cff;--success: #34d399;--warning: #f6a94a;--info: #6c8cff;--error: #f87171;--radius: 12px}*{box-sizing:border-box}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;background:var(--bg-glow),var(--bg);background-attachment:fixed;color:var(--text);-webkit-font-smoothing:antialiased}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes pulseGlow{0%,to{box-shadow:0 0 #f6a94a59}50%{box-shadow:0 0 0 5px #f6a94a00}}@keyframes spin{to{transform:rotate(360deg)}}.app{max-width:760px;margin:0 auto;padding:0 16px 64px}.topbar{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center;padding:18px 0;border-bottom:1px solid var(--border);margin-bottom:28px;position:sticky;top:0;background:#0b0d12d9;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:10}.brand{color:var(--text);text-decoration:none;font-size:1.25rem;font-weight:800;letter-spacing:-.01em;display:inline-flex;align-items:center;gap:8px}.brand-icon{display:inline-block;transition:transform .3s ease}.brand:hover .brand-icon{transform:rotate(-14deg) scale(1.12)}.user-chip{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:.9rem}.user-chip button{background:none;border:1px solid var(--border);color:var(--muted);padding:6px 14px;border-radius:999px;cursor:pointer;margin-top:0;font-weight:600;font-size:.82rem;box-shadow:none}.user-chip button:hover{border-color:var(--accent);color:var(--text);background:#f6a94a14;transform:none;box-shadow:none}h1{font-size:1.5rem;font-weight:800;letter-spacing:-.01em;margin:0 0 4px}h3{margin-top:0;font-weight:700}h4{font-weight:700}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin-bottom:18px;box-shadow:0 1px 2px #0003;animation:fadeInUp .4s ease both}.card.narrow{max-width:400px;margin:48px auto;text-align:center}.login-icon{font-size:2.6rem;animation:float 3s ease-in-out infinite;margin-bottom:2px}.row-between{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px;gap:12px;flex-wrap:wrap}.muted{color:var(--muted);font-size:.9rem}.error{color:var(--error);font-size:.88rem;background:#f871711a;border:1px solid rgba(248,113,113,.25);padding:8px 12px;border-radius:8px;margin-top:10px}.pill{border-radius:999px;padding:4px 13px;font-size:.76rem;font-weight:700;letter-spacing:.02em;white-space:nowrap;height:fit-content;border:1px solid transparent}.pill-proposing{background:#6c8cff24;color:#b0c0ff;border-color:#6c8cff59}.pill-voting{background:#f6a94a26;color:#ffcf94;border-color:#f6a94a66;animation:pulseGlow 2.2s ease-in-out infinite}.pill-closed{background:#34d39924;color:#8ff0c9;border-color:#34d39959}form label{display:block;font-size:.84rem;color:var(--muted);font-weight:500;margin:12px 0 5px}input,select{width:100%;padding:10px 12px;border-radius:8px;border:1px solid var(--border);background:#0d0f15;color:var(--text);font-size:.95rem;font-family:inherit;transition:border-color .15s ease,box-shadow .15s ease}input::placeholder{color:#5b6272}input:focus,select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #f6a94a29}button{background:linear-gradient(135deg,var(--accent),var(--accent-dark));color:#1a1206;border:none;padding:10px 18px;border-radius:8px;font-weight:700;font-size:.9rem;font-family:inherit;cursor:pointer;margin-top:14px;box-shadow:0 2px 10px #f6a94a38;transition:transform .15s ease,box-shadow .15s ease,filter .15s ease,opacity .15s ease}button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 5px 16px #f6a94a52;filter:brightness(1.04)}button:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 5px #f6a94a40}button.secondary{background:transparent;color:var(--text);border:1px solid var(--border);box-shadow:none}button.secondary:hover:not(:disabled){background:#ffffff0a;border-color:var(--accent);box-shadow:none}button:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.spinner-wrap{display:inline-flex;align-items:center;gap:10px;color:var(--muted)}.spinner{width:18px;height:18px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}.spinner-label{font-size:.9rem}button .spinner-wrap{color:inherit}button .spinner{border-color:#1a120640;border-top-color:currentColor}.inline-form{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:14px}.inline-form input,.inline-form select{width:auto;flex:1;min-width:140px}.inline-form button{margin-top:0}.event-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.event-list li{animation:fadeInUp .4s ease both}.event-list a{display:flex;flex-direction:column;gap:6px;align-items:flex-start;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:16px;color:var(--text);text-decoration:none;height:100%;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease}.event-list a:hover{transform:translateY(-3px);box-shadow:0 10px 24px #00000059;border-color:var(--accent);background:var(--card-hover)}.event-list .title{font-weight:700;font-size:1.02rem}.participant-list,.proposal-list{list-style:none;padding:0;margin:0}.participant-list li{padding:8px 2px;border-bottom:1px solid var(--border);font-size:.92rem}.participant-list li:last-child{border-bottom:none}.proposal-list li{padding:12px 10px;border-bottom:1px solid var(--border);border-radius:8px;transition:background .2s ease}.proposal-list li:last-child{border-bottom:none}.proposal-list li.voted{background:#f6a94a14;border-left:3px solid var(--accent);padding-left:8px}.proposal-list a{color:var(--accent-2);text-decoration:none;font-weight:600}.proposal-list a:hover{text-decoration:underline}.proposal-list button{margin-top:8px}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-top:12px;border-radius:8px}.payments-table{width:100%;min-width:520px;border-collapse:collapse}.payments-table th,.payments-table td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--border);font-size:.88rem}.payments-table th{color:var(--muted);font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.03em}.payments-table tr:last-child td{border-bottom:none}.mark-paid{display:inline-flex;gap:8px;align-items:center;margin-left:10px}.mark-paid input[type=file]{width:auto;padding:0;border:none;font-size:.78rem;color:var(--muted)}.mark-paid button{margin-top:0;padding:6px 12px;font-size:.8rem}.page-center{display:flex;align-items:center;justify-content:center;height:60vh;color:var(--muted)}.page-fade{animation:fadeInUp .35s ease both}@media (max-width: 560px){.app{padding:0 14px 48px}.topbar{padding:14px 0}.row-between{flex-direction:column;align-items:flex-start}.inline-form{flex-direction:column;align-items:stretch}.inline-form input,.inline-form select,.inline-form button{width:100%}.card{padding:16px}.card.narrow{margin:28px auto}.mark-paid{display:flex;margin-left:0;margin-top:8px;flex-wrap:wrap}}
