:root{--bg: #06150e;--card: #0d2419;--panel: #143726;--field: #081e14;--border: rgba(220, 250, 232, .1);--border-strong: rgba(220, 250, 232, .2);--text: #e6f4ec;--text-dim: #8fb8a3;--accent: #34d399;--accent-bright: #6ee7b7;--accent-ink: #052117;--lime: #a3e635;--rose: #fb7185;--radius: 16px;--radius-sm: 10px;--shadow: 0 18px 50px -18px rgba(0, 0, 0, .7);--ring: 0 0 0 3px rgba(52, 211, 153, .35);--font: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100dvh;font-family:var(--font);color:var(--text);background:var(--bg);background-image:radial-gradient(120% 60% at 50% -10%,rgba(52,211,153,.12),transparent 60%);background-attachment:fixed;-webkit-font-smoothing:antialiased;line-height:1.5}#root{min-height:100dvh;display:flex;justify-content:center;align-items:flex-start;padding:clamp(1rem,4vw,2.75rem) 1rem}.app{width:100%;max-width:30rem;display:flex;flex-direction:column;gap:1rem}.app-header{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;padding:0 .35rem}.brand{font-family:var(--mono);font-weight:700;font-size:1rem;letter-spacing:.28em;text-transform:uppercase;color:var(--text);text-decoration:none;padding-left:1rem;position:relative}.brand:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:.5rem;height:.5rem;border-radius:2px;background:var(--accent);box-shadow:0 0 10px var(--accent)}.brand:hover{color:var(--accent-bright)}.brand-tag{font-family:var(--mono);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--text-dim)}.app>main,.app>form{width:100%;display:flex;flex-direction:column;gap:1.25rem;padding:clamp(1.25rem,5vw,2rem);background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);animation:rise .35s ease both}main>section,main>form{display:flex;flex-direction:column;gap:.85rem;padding:1rem 1.1rem;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-sm)}h1,h2{margin:0;font-family:var(--mono);font-weight:700;letter-spacing:.04em;text-transform:uppercase}h1{font-size:1.5rem;line-height:1.15;color:var(--text)}.app>main>h1:before,.app>form>h1:before{content:"";display:inline-block;width:.6rem;height:.6rem;margin-right:.55rem;border-radius:50%;background:var(--accent);box-shadow:0 0 12px var(--accent);vertical-align:.08em;animation:pulse 2.4s ease-in-out infinite}h2{font-size:.8rem;letter-spacing:.12em;color:var(--text-dim)}label{display:flex;flex-direction:column;gap:.35rem;font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim)}label:has(input[type=radio]),label:has(input[type=checkbox]){flex-direction:row;align-items:center;gap:.55rem;text-transform:none;letter-spacing:normal;font-size:.95rem;color:var(--text)}input,select{width:100%;font:inherit;font-size:1rem;color:var(--text);background:var(--field);border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:.6rem .7rem;transition:border-color .15s ease,box-shadow .15s ease}input[type=radio],input[type=checkbox]{width:auto;accent-color:var(--accent)}input:focus-visible,select:focus-visible{outline:none;border-color:var(--accent);box-shadow:var(--ring)}::placeholder{color:var(--text-dim);opacity:.7}fieldset{margin:0;padding:.85rem 1rem 1rem;border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:.65rem}.member-row{display:flex;gap:.5rem;align-items:stretch}.member-row input{flex:1}.row-remove{flex:none;padding:0 .8rem;font-size:.8rem;color:var(--text-dim)}.row-remove:hover{border-color:var(--rose);color:var(--rose)}legend{padding:0 .4rem;font-family:var(--mono);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim)}button{font:inherit;font-weight:600;color:var(--text);background:transparent;border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:.55rem .9rem;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease,transform .05s ease}button:hover{border-color:var(--accent);color:var(--accent-bright)}button:active{transform:translateY(1px)}button:focus-visible{outline:none;box-shadow:var(--ring)}button:disabled{opacity:.5;cursor:not-allowed;transform:none}button[type=submit]{align-self:stretch;background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-family:var(--mono);font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.75rem 1rem}button[type=submit]:hover:not(:disabled){background:var(--accent-bright);border-color:var(--accent-bright);color:var(--accent-ink);box-shadow:0 0 22px -4px var(--accent)}ul{list-style:none;margin:0;padding:0}ul[aria-label]{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}ul[aria-label]>li{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .6rem;padding:.65rem .85rem;font-size:.95rem}ul[aria-label]>li+li{border-top:1px solid var(--border)}ul[aria-label]>li{transition:background .12s ease}ul[aria-label]>li:hover{background:#dcfae808}ul[aria-label]:empty{display:none}ul[aria-label]>li span:last-child,ul[aria-label=Transfers]>li{font-variant-numeric:tabular-nums}ul[aria-label=Expenses]>li{justify-content:space-between}.row-edit,.row-delete{padding:.3rem .6rem;font-size:.8rem;color:var(--text-dim)}.row-edit,ul[aria-label=Expenses] .row-delete{margin-left:auto}ul[aria-label=Expenses] .row-edit~.row-delete{margin-left:0}.row-edit:hover{border-color:var(--accent);color:var(--accent-bright)}.row-delete:hover{border-color:var(--rose);color:var(--rose)}.form-actions{display:flex;gap:.6rem;align-items:stretch}.form-actions button[type=submit]{flex:1}.form-actions .ghost{flex:none;align-self:stretch}.add-member button[type=submit]{background:transparent;color:var(--accent)}.add-member button[type=submit]:hover:not(:disabled){background:var(--accent);color:var(--accent-ink);box-shadow:none}.lede{margin-top:-.4rem;font-size:.9rem;color:var(--text-dim)}.trip-list>li.trip{padding:0;gap:0;flex-wrap:nowrap;align-items:stretch}.trip-open{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem;padding:.85rem .95rem;text-decoration:none;color:var(--text);transition:background .12s ease}.trip-open:hover{background:#34d39914}.trip-head{display:flex;justify-content:space-between;align-items:baseline;gap:.6rem}.trip-title{font-family:var(--mono);font-weight:700;letter-spacing:.04em;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trip-currency{flex:none;font-family:var(--mono);font-size:.75rem;color:var(--text-dim)}.trip-position{font-size:.9rem}.trip-position--owed{color:var(--lime)}.trip-position--owe{color:var(--rose)}.trip-position--square{color:var(--text-dim)}.trip-status{display:flex;align-items:center;gap:.4rem;font-family:var(--mono);font-size:.78rem;color:var(--text-dim)}.trip-status:before{content:"●";color:var(--accent);font-size:.7em}.trip-status[data-status=settled]:before{content:"✓";color:var(--lime);font-size:.9em}.trip-status[data-status=unavailable]:before{content:"!";color:var(--rose);font-weight:700}.trip-status[data-status=loading]:before{content:"…";color:var(--text-dim)}.trip-forget{flex:none;align-self:stretch;border:none;border-left:1px solid var(--border);border-radius:0;padding:0 .9rem;font-size:.72rem;color:var(--text-dim)}.trip-forget:hover{color:var(--rose);background:#fb718514}@media (hover: hover){.trip-forget{opacity:0;transition:opacity .12s ease,color .12s ease,background .12s ease}.trip:hover .trip-forget,.trip-forget:focus-visible{opacity:1}}.cta-link{align-self:stretch;text-align:center;text-decoration:none;font-family:var(--mono);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);border:1px solid var(--accent);border-radius:var(--radius-sm);padding:.75rem 1rem;transition:background .15s ease,color .15s ease}.cta-link:hover{background:var(--accent);color:var(--accent-ink)}.balance{border-left:3px solid transparent}.balance--owed{border-left-color:var(--lime)}.balance--owes{border-left-color:var(--rose)}.balance--settled{border-left-color:var(--border-strong);color:var(--text-dim)}section[aria-label="Who are you?"] ul{display:flex;flex-wrap:wrap;gap:.5rem}section[aria-label="Who are you?"] button{border-color:var(--accent);color:var(--accent-bright)}section[aria-label="Who are you?"] button:hover{background:#34d3991f}section[aria-label=Share]{align-items:flex-start;gap:.9rem}section[aria-label=Share] svg{padding:.5rem;background:#fff;border-radius:var(--radius-sm)}p{margin:0}p[data-testid]{font-family:var(--mono);font-size:.85rem;color:var(--text-dim)}p[role=alert]{padding:.6rem .8rem;font-size:.9rem;color:#fecdd3;background:#fb71851f;border:1px solid rgba(251,113,133,.4);border-radius:var(--radius-sm)}.empty{padding:1.25rem 1rem;text-align:center;font-family:var(--mono);font-size:.82rem;letter-spacing:.04em;color:var(--text-dim);border:1px dashed var(--border-strong);border-radius:var(--radius-sm)}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
