@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Playfair+Display:wght@700&display=swap";:root{color:#18212b;font-synthesis:none;--navy:#12375f;--navy-2:#0b2949;--purple:#8678af;--orange:#f06b24;--green:#148451;--line:#dfe5ea;--muted:#6c7884;--paper:#fff;background:#f4f6f8;font-family:Manrope,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}body{background:#f4f6f8;min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}h1,h2,p{margin-top:0}h1{color:#102b47;margin-bottom:.4rem;font-family:Playfair Display,Georgia,serif;font-size:clamp(2rem,4vw,3.2rem);line-height:1.04}h2{margin-bottom:.3rem;font-size:1.05rem}.auth-shell{background:radial-gradient(circle at 12% 16%, #8678af38, transparent 28%), radial-gradient(circle at 88% 82%, #f06b2424, transparent 28%), linear-gradient(145deg, var(--navy-2), var(--navy));place-items:center;min-height:100vh;padding:1.5rem;display:grid}.auth-card{background:#fffffff5;border:1px solid #ffffff40;border-radius:28px;width:min(100%,430px);padding:clamp(1.8rem,5vw,3rem);box-shadow:0 28px 80px #00000047}.auth-card h1{font-size:2.2rem}.auth-intro{color:var(--muted);margin-bottom:1.7rem;line-height:1.65}.brand-mark{background:linear-gradient(145deg, var(--purple), var(--navy));color:#fff;border-radius:17px;place-items:center;width:56px;height:56px;font-size:1.7rem;font-weight:800;display:inline-grid;box-shadow:0 10px 30px #12375f40}.brand-mark.small{width:38px;height:38px;box-shadow:none;border-radius:11px;font-size:1.05rem}.round-icon{width:50px;height:50px;color:var(--navy);background:#edf1f7;border-radius:50%;place-items:center;margin-bottom:1rem;display:grid}.eyebrow{text-transform:uppercase;letter-spacing:.13em;color:var(--orange);margin:1.2rem 0 .35rem;font-size:.69rem;font-weight:800}.stack{gap:1rem;display:grid}label{color:#485564;gap:.45rem;font-size:.76rem;font-weight:700;display:grid}input,select,textarea{color:#172330;background:#fff;border:1px solid #ccd4dc;border-radius:11px;outline:none;width:100%;padding:.78rem .88rem;transition:border-color .16s,box-shadow .16s}input:focus,select:focus,textarea:focus{border-color:var(--purple);box-shadow:0 0 0 3px #8678af29}textarea{resize:vertical;min-height:72px}.security-note{border-top:1px solid var(--line);color:var(--muted);align-items:flex-start;gap:.65rem;margin-top:1.4rem;padding-top:1.2rem;font-size:.78rem;line-height:1.5;display:flex}.security-note svg{color:var(--green);flex:none}.button{cursor:pointer;border:1px solid #0000;border-radius:11px;justify-content:center;align-items:center;gap:.45rem;min-height:42px;padding:.65rem 1rem;font-size:.78rem;font-weight:800;text-decoration:none;transition:transform .15s,box-shadow .15s,background .15s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{opacity:.5;cursor:wait}.button.primary{color:#fff;background:var(--navy);box-shadow:0 8px 20px #12375f2e}.button.primary:hover:not(:disabled){background:var(--navy-2)}.button.secondary{color:var(--navy);background:#eef1f7;border-color:#d8deeb}.button.success{color:#fff;background:var(--green)}.button.ghost{color:var(--muted);border-color:var(--line);background:0 0}.button.wide{width:100%}.icon-button,.text-button{color:var(--navy);cursor:pointer;background:0 0;border:0}.icon-button{border-radius:9px;place-items:center;width:36px;height:36px;display:grid}.icon-button:hover{background:#edf1f5}.text-button{font-size:.76rem;font-weight:800}.form-error{color:#a8262b;margin:0;font-size:.78rem;font-weight:700}.form-success{color:#0d7344;align-items:center;gap:.5rem;margin:0;font-size:.78rem;font-weight:700;display:flex}.form-error.standalone,.form-success.standalone{background:#fff;border:1px solid;border-radius:11px;margin-bottom:1rem;padding:.8rem 1rem}.loading-screen{min-height:100vh;color:var(--muted);place-content:center;justify-items:center;gap:1rem;display:grid}.app-shell{grid-template-columns:250px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--navy-2);color:#fff;flex-direction:column;height:100vh;padding:1.25rem 1rem;display:flex;position:sticky;top:0}.sidebar-brand{align-items:center;gap:.7rem;padding:.35rem .45rem 1.5rem;display:flex}.sidebar-brand div{display:grid}.sidebar-brand strong{font-size:.92rem}.sidebar-brand small{color:#9fb4c8;font-size:.68rem}.sidebar nav{gap:.25rem;display:grid}.sidebar nav button{color:#b9cad9;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:.72rem;width:100%;padding:.72rem .8rem;font-size:.8rem;font-weight:700;display:flex}.sidebar nav button:hover,.sidebar nav button.nav-active{color:#fff;background:#ffffff1a}.sidebar nav button.nav-active{box-shadow:inset 3px 0 var(--orange)}.sidebar-user{border-top:1px solid #ffffff1f;grid-template-columns:auto 1fr auto;align-items:center;gap:.62rem;margin-top:auto;padding:.85rem .55rem .1rem;display:grid}.sidebar-user div:nth-child(2){min-width:0;display:grid}.sidebar-user strong{white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;overflow:hidden}.sidebar-user small{color:#9fb4c8;font-size:.62rem}.sidebar-user button{color:#b9cad9}.avatar{background:var(--purple);color:#fff;border-radius:50%;place-items:center;width:34px;height:34px;font-size:.7rem;font-weight:800;display:grid}.avatar.large{width:50px;height:50px;font-size:.85rem}.main-column{min-width:0}.content{width:min(1180px,100% - 3rem);margin:0 auto;padding:2.5rem 0 5rem}.mobile-header,.mobile-nav{display:none}.page-heading{justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.7rem;display:flex}.page-heading .eyebrow{margin-top:0}.page-heading p:last-child{color:var(--muted);max-width:650px;margin-bottom:0;line-height:1.55}.month-picker{min-width:170px}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;margin-bottom:1rem;display:grid}.metric-card{color:#fff;border-radius:18px;gap:.35rem;min-height:160px;padding:1.25rem;display:grid;position:relative;overflow:hidden;box-shadow:0 12px 30px #18212b14}.metric-card:after{content:"";border:20px solid #ffffff14;border-radius:50%;width:110px;height:110px;position:absolute;bottom:-45px;right:-35px}.metric-card.navy{background:var(--navy)}.metric-card.purple{background:var(--purple)}.metric-card.green{background:var(--green)}.metric-card.light{color:var(--navy);border:1px solid var(--line);background:#fff}.metric-card svg{width:19px}.metric-card span{opacity:.8;margin-top:.45rem;font-size:.72rem;font-weight:700}.metric-card strong{font-size:1.42rem}.metric-card small{opacity:.7;font-size:.66rem}.panel{border:1px solid var(--line);background:#fff;border-radius:17px;margin-bottom:1rem;overflow:hidden;box-shadow:0 8px 24px #18212b0a}.panel-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding:1.05rem 1.2rem;display:flex}.panel-heading h2,.panel-heading p{margin-bottom:0}.panel-heading p,.panel-copy{color:var(--muted);font-size:.72rem}.panel-copy{margin:0;padding:1.1rem 1.2rem;line-height:1.6}.panel-footer{border-top:1px solid var(--line);justify-content:flex-end;gap:.65rem;padding:1rem 1.2rem;display:flex}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.76rem}th{color:var(--muted);text-align:left;text-transform:uppercase;letter-spacing:.05em;background:#f8fafb;padding:.75rem 1rem;font-size:.62rem}td{white-space:nowrap;border-top:1px solid #edf0f3;padding:.9rem 1rem}td small{color:var(--muted);margin-top:.18rem;display:block}.due-text{color:#6a4cad;font-weight:700}.paid-text{color:var(--green);font-weight:700}.empty{text-align:center;color:var(--muted);padding:2rem!important}.form-panel{padding:1.2rem}.form-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.span-2{grid-column:span 2}.form-actions{justify-content:flex-end;gap:.65rem;padding-top:.3rem;display:flex}.upload-zone{text-align:center;background:#fff;border:1.5px dashed #b8c3cf;border-radius:17px;justify-items:center;margin-bottom:1rem;padding:2.5rem 1rem;display:grid}.upload-zone svg{color:var(--purple)}.upload-zone h2{margin:.8rem 0 .25rem}.upload-zone p{color:var(--muted);font-size:.75rem}.grand-total{color:var(--green)}.preview-list{display:grid}.preview-row{border-top:1px solid #edf0f3;grid-template-columns:180px 1fr auto;align-items:start;gap:1rem;padding:1rem 1.2rem;display:grid}.preview-row:first-child{border-top:0}.preview-row>div:first-child{display:grid}.preview-row small{color:var(--muted)}.preview-lines{flex-wrap:wrap;gap:.4rem;display:flex}.preview-lines span{color:var(--muted);background:#f4f6f8;border-radius:8px;padding:.35rem .55rem;font-size:.68rem}.preview-lines b{color:var(--navy)}.two-column{grid-template-columns:.8fr 1.2fr;gap:1rem;display:grid}.compact-list{max-height:350px;overflow:auto}.compact-list label{cursor:pointer;border-top:1px solid #edf0f3;grid-template-columns:auto 1fr auto;align-items:center;gap:.7rem;padding:.72rem 1.1rem;display:grid}.compact-list input{width:auto}.compact-list span{display:grid}.compact-list small{color:var(--muted)}.payout-form{border-top:1px solid var(--line);background:#f8fafb;grid-template-columns:1fr auto;gap:.6rem;padding:1rem;display:grid}.tag,.status{color:#516171;text-transform:capitalize;background:#edf1f5;border-radius:999px;align-items:center;width:fit-content;padding:.25rem .48rem;font-size:.61rem;font-weight:800;display:inline-flex}.status.pending{color:#a24d15;background:#fff1e7}.status.due{color:#68479d;background:#eee9f8}.status.paid{color:#176b43;background:#e5f5ec}.status.reversed{color:#97383e;background:#f5e7e8}.rule-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.rule-card{border:1px solid var(--line);background:#fff;border-radius:17px;flex-direction:column;gap:.9rem;padding:1.15rem;display:flex;box-shadow:0 8px 24px #18212b0a}.rule-card-top{justify-content:space-between;align-items:start;gap:1rem;display:flex}.rule-name{color:var(--navy);border:0;border-radius:0;margin-top:.55rem;padding:0;font-family:Playfair Display,Georgia,serif;font-size:1.18rem}.rule-name:focus{box-shadow:none;border-bottom:1px solid var(--purple)}.rule-description{background:#fafbfc;min-height:66px;font-size:.73rem;line-height:1.5}.rule-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;display:grid}.tiers{grid-column:span 2;gap:.55rem;display:grid}.tier-row{background:#f6f8fa;border-radius:10px;grid-template-columns:1fr 1fr;gap:.7rem;padding:.65rem;display:grid}.switch{white-space:nowrap;grid-template-columns:auto auto;align-items:center;gap:.4rem}.switch input{opacity:0;width:1px;position:absolute}.switch span{background:#cdd5dc;border-radius:999px;width:34px;height:20px;position:relative}.switch span:after{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .16s;position:absolute;top:3px;left:3px}.switch input:checked+span{background:var(--green)}.switch input:checked+span:after{transform:translate(14px)}.rule-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:.7rem;padding-top:.8rem;display:flex}.inline-success{color:var(--green);align-items:center;gap:.35rem;font-size:.7rem;font-weight:700;display:inline-flex}.info-banner{border-left:4px solid var(--orange);color:#6b4937;background:#fff7f1;border-radius:0 11px 11px 0;align-items:center;gap:.9rem;margin-top:1rem;padding:.9rem 1rem;font-size:.75rem;display:flex}.info-banner strong{white-space:nowrap;color:#8b451e}.people-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;display:grid}.person-card{border:1px solid var(--line);background:#fff;border-radius:15px;gap:.9rem;padding:1.1rem;display:flex}.person-card h2{margin:.1rem 0}.person-card p{color:var(--muted);margin-bottom:.5rem;font-size:.72rem}.person-card small{color:var(--muted);margin-top:.55rem;display:block}.timeline{padding:1rem 1.2rem}.timeline-item{grid-template-columns:auto 1fr;gap:.8rem;padding-bottom:1.2rem;display:grid;position:relative}.timeline-item:before{content:"";background:var(--line);width:1px;position:absolute;top:10px;bottom:0;left:5px}.timeline-item:last-child:before{display:none}.timeline-dot{z-index:1;background:var(--purple);border-radius:50%;width:11px;height:11px;margin-top:4px;position:relative;box-shadow:0 0 0 4px #fff}.timeline-item strong{text-transform:capitalize}.timeline-item p{color:var(--muted);margin:.15rem 0;font-size:.73rem}.timeline-item small{color:#929ba5;font-size:.65rem}details{color:var(--muted);margin-top:.4rem;font-size:.67rem}details code{overflow-wrap:anywhere;background:#f4f6f8;border-radius:8px;margin-top:.35rem;padding:.5rem;display:block}.privacy-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.privacy-card{border:1px solid var(--line);background:#fff;border-radius:17px;flex-direction:column;align-items:flex-start;gap:.8rem;padding:1.4rem;display:flex}.privacy-card.featured{background:linear-gradient(145deg,#f4f1fa,#fff);border-color:#d9d1ea}.privacy-card .round-icon,.privacy-card h2,.privacy-card p{margin:0}.privacy-card p{color:var(--muted);font-size:.78rem;line-height:1.6}.privacy-card label{width:100%}.privacy-card small{color:var(--muted);line-height:1.5}@media (width<=960px){.app-shell{display:block}.sidebar{display:none}.mobile-header{z-index:10;background:var(--navy-2);color:#fff;justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex;position:sticky;top:0}.mobile-header .sidebar-brand{padding:0}.mobile-header .icon-button{color:#fff}.content{width:min(100% - 2rem,760px);padding:1.5rem 0 6rem}.mobile-nav{z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0b2949f0;border:1px solid #ffffff2e;border-radius:16px;grid-template-columns:repeat(5,1fr);padding:.45rem;display:grid;position:fixed;bottom:.75rem;left:.75rem;right:.75rem;box-shadow:0 16px 45px #00000038}.mobile-nav button{color:#aebfd0;background:0 0;border:0;justify-items:center;gap:.25rem;padding:.4rem .1rem;font-size:.57rem;font-weight:700;display:grid}.mobile-nav button.nav-active{color:#fff}.metric-grid{grid-template-columns:repeat(2,1fr)}.rule-grid,.two-column,.privacy-grid{grid-template-columns:1fr}.people-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.page-heading{flex-direction:column;align-items:stretch}.page-heading h1{font-size:2.15rem}.metric-grid{grid-template-columns:1fr 1fr}.metric-card{min-height:135px;padding:1rem}.metric-card strong{font-size:1.05rem}.form-grid{grid-template-columns:1fr}.span-2{grid-column:span 1}.preview-row,.payout-form,.rule-fields,.tier-row{grid-template-columns:1fr}.tiers{grid-column:span 1}.people-grid{grid-template-columns:1fr}.info-banner{flex-direction:column;align-items:flex-start}}
