:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:#ecf3fa;background:#0b1425;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #65e1c0;outline-offset:2px}.login{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 85% 12%,#193955 0%,transparent 40%),#0b1425}.login-card{width:min(100%,440px);padding:38px;background:#14243a;border:1px solid #2b4159;border-radius:22px;box-shadow:0 25px 80px #0005}.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:20px;letter-spacing:-.6px}.logo{width:36px;height:36px;background:#193c49;color:#6ee7ca;display:grid;place-items:center;border-radius:11px;font-size:24px}.login h1{font-size:35px;line-height:1.12;margin:40px 0 12px;letter-spacing:-1.2px}.login p{color:#9fb0c3;line-height:1.6}.login form{margin-top:28px}.login small{display:block;text-align:center;color:#8194a9;margin-top:24px}label{display:block;font-size:13px;font-weight:650;color:#b9cadb}input,select{width:100%;background:#0e1b2d;border:1px solid #344960;color:#fff;border-radius:10px;padding:12px 13px;margin-top:8px;min-height:45px}input::placeholder{color:#6f8298}.primary,.secondary{border:0;border-radius:10px;padding:12px 17px;font-weight:700}.primary{background:#67e3bf;color:#092b2a}.primary:hover{background:#90f0d2}.secondary{background:#23384f;color:#e1ebf6}.login .primary{width:100%;margin-top:18px}.error{color:#ff9b9b!important;font-size:13px}.sidebar{position:fixed;left:0;top:0;bottom:0;width:240px;background:#0e1b2e;border-right:1px solid #26394e;padding:27px 18px}.side-label,.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:800;color:#83a2b6}.side-label{margin:54px 12px 15px}.nav{width:100%;text-align:left;background:none;border:0;color:#9db0c5;padding:14px;border-radius:9px;margin-bottom:5px}.nav.active,.nav:hover{background:#20364b;color:#fff}.side-bottom{position:absolute;bottom:24px;left:27px;right:27px;display:flex;flex-direction:column;gap:12px;color:#8195ab;font-size:12px}.side-bottom button{background:none;border:0;color:#b9cbdc;text-align:left;padding:0}.content{margin-left:240px;max-width:1700px;padding:44px clamp(20px,4vw,64px) 90px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:34px}header h1{font-size:34px;letter-spacing:-1px;margin:8px 0}header p,.section-head p,.progress-panel p{color:#91a5bb;font-size:14px;margin:0}.mobile-logout{display:none}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.stat,.panel,.friend-card{background:#14243a;border:1px solid #283d54;border-radius:16px}.stat{padding:25px;display:flex;flex-direction:column;gap:14px}.stat span{color:#9eb1c6;font-size:13px}.stat strong{font-size:31px;letter-spacing:-1px}.stat small{color:#728ba3}.mint{color:#6ae6bd}.progress-panel{margin-top:18px;padding:27px 33px;display:flex;align-items:center;justify-content:space-between;gap:24px;background:linear-gradient(105deg,#193349,#14243a)}h2{font-size:20px;letter-spacing:-.5px;margin:8px 0}.ring{width:132px;height:132px;flex:none;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#65e5be 0%,#2d4558 0%)}.ring>div{width:104px;height:104px;background:#15293e;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column}.ring strong{font-size:27px}.ring small{font-size:12px;color:#9cb1c6}.section-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:36px 0 18px}.section-head h2{margin:0 0 7px}.friend-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:15px}.friend-card{padding:23px}.friend-card .top{display:flex;justify-content:space-between;align-items:center}.avatar{width:38px;height:38px;border-radius:12px;background:#284559;color:#84e5ce;display:grid;place-items:center;font-weight:800}.friend-card h3{margin:14px 0 3px}.friend-card .balance{font-size:26px;font-weight:750;margin:16px 0}.muted{color:#90a6bc;font-size:12px}.bar{height:8px;border-radius:9px;background:#2c4357;overflow:hidden;margin:14px 0 9px}.bar>div{height:100%;background:#6be4c0;border-radius:9px}.between{display:flex;justify-content:space-between;gap:12px}.actions{display:flex;gap:9px;align-items:center}.actions select{width:auto;margin:0;max-width:170px}.tablewrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;min-width:650px}th{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:#8298ad;font-weight:700;padding:19px}td{padding:18px 19px;border-top:1px solid #263b51;font-size:13px}td small{display:block;color:#8095aa;margin-top:5px}.settled td{color:#71869c}.settled .item-title{text-decoration:line-through}.pill{display:inline-flex;border-radius:30px;padding:6px 10px;font-size:11px;font-weight:700;background:#293e54;color:#d5e2f0}.pill.done{background:#1b433f;color:#79e9c7}.empty{padding:27px;color:#91a5ba;text-align:center;font-size:13px}.audit-row{padding:19px 24px;border-bottom:1px solid #283d54;display:flex;justify-content:space-between;gap:20px;font-size:13px}.audit-row:last-child{border-bottom:0}.audit-row small{color:#91a5bb}dialog{background:#172a40;border:1px solid #3b536a;color:#fff;border-radius:18px;width:min(94vw,470px);padding:28px;box-shadow:0 30px 100px #0009}dialog::backdrop{background:#030b17ba}.modal-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:25px}.modal-head h2{margin:8px 0}.close{background:none;border:0;color:#b6c9db;font-size:30px}.modal-head+div label,#transactionFields label{margin-bottom:17px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}#saveButton{width:100%;margin-top:10px}@media(max-width:850px){.sidebar{display:none}.content{margin-left:0;padding:28px 18px 70px}.mobile-logout{display:block;background:#21374c;border:0;color:#fff;border-radius:9px;padding:10px}.stats{gap:10px}.stat{padding:17px}.stat strong{font-size:23px}}@media(max-width:600px){header h1{font-size:29px}.stats{grid-template-columns:1fr 1fr}.stats .stat:last-child{grid-column:1/-1}.stat{gap:8px}.progress-panel{padding:20px}.ring{width:105px;height:105px}.ring>div{width:81px;height:81px}.ring strong{font-size:21px}.progress-panel h2{font-size:17px}.section-head{align-items:flex-start;flex-direction:column}.section-head>.primary{width:100%}.actions{width:100%;flex-wrap:wrap}.actions select{flex:1;max-width:none}.actions button{flex:1;white-space:nowrap;font-size:12px;padding:11px}.friend-grid{grid-template-columns:1fr}.form-row{grid-template-columns:1fr}}

[hidden]{display:none!important}.row-action{padding:7px 10px;margin:2px;font-size:12px;white-space:nowrap}#inlineFriend{margin-bottom:16px}

.public-view{min-height:100vh;background:radial-gradient(ellipse at 85% 0,#1c3b50 0,transparent 40%),#0b1425}.public-shell{max-width:1100px;margin:auto;padding:24px clamp(18px,4vw,44px) 65px}.public-nav{display:flex;align-items:center;justify-content:space-between;gap:16px}.public-hero{padding:68px 0 36px}.public-hero h1{font-size:clamp(35px,5.8vw,64px);line-height:1.08;letter-spacing:-2px;max-width:700px;margin:18px 0}.public-hero p{max-width:570px;color:#a2b7cb;line-height:1.7}.public-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.public-stats .stat{min-width:0}.public-stats .stat strong{font-size:clamp(20px,2.5vw,30px);overflow-wrap:anywhere}.public-main-stat{grid-column:span 4;background:linear-gradient(110deg,#1a3b49,#14243a)}.public-main-stat strong{font-size:clamp(35px,5vw,52px)!important}.public-progress{padding:26px;margin-top:16px}.public-progress .bar{height:12px;margin-top:22px}.public-progress p{margin-bottom:0}.public-event{padding:18px 24px;border-bottom:1px solid #283d54;display:flex;justify-content:space-between;align-items:center;gap:12px}.public-event:last-child{border:0}.public-event>div{display:flex;flex-direction:column;gap:6px}.public-event small{color:#91a5bb}.public-event b{white-space:nowrap}.public-footer{text-align:center;color:#8096ad;font-size:12px;margin-top:32px}@media(max-width:680px){.public-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.public-main-stat{grid-column:span 2}.public-hero{padding:45px 0 22px}.public-stats .stat{padding:17px}.public-nav .brand{font-size:18px}.public-event{padding:16px}}
