:root{color:#17312c;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at 0 0,#f5ba6938,#0000 28%),radial-gradient(circle at 100% 0,#0f6e5729,#0000 32%),linear-gradient(#f6f1e7 0%,#f3eee4 100%);font-family:Avenir Next,Helvetica Neue,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{cursor:pointer}a{color:#0f6e57}#root{min-height:100vh}.app-shell{max-width:1120px;margin:0 auto;padding:20px 14px 48px}.hero{color:#f8f5ef;background:linear-gradient(135deg,#0a5946f5,#152b35f0),linear-gradient(#ffffff14,#0000);border-radius:28px;padding:28px 20px;position:relative;overflow:hidden;box-shadow:0 24px 50px #12202229}.hero:after{content:"";background:radial-gradient(circle,#f8d69952,#0000 68%);border-radius:999px;width:220px;height:220px;position:absolute;top:-64px;right:-48px}.hero__content{z-index:1;position:relative}.hero__eyebrow{letter-spacing:.14em;text-transform:uppercase;color:#f8f5efb8;margin:0 0 10px;font-size:.78rem}.hero h1{margin:0;font-size:clamp(1.9rem,5vw,3.5rem);line-height:1.05}.hero__description,.hero__meta{max-width:44rem}.hero__description{color:#f8f5efe0;margin:12px 0 0;font-size:1rem}.hero__meta{color:#f8f5efb8;margin:12px 0 0;font-size:.92rem}.content{margin-top:18px}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.summary-card{background:#fffdf9e0;border:1px solid #1434311a;border-radius:22px;min-height:132px;padding:18px 16px;box-shadow:0 16px 30px #17312c14}.summary-card--accent{background:linear-gradient(#0f6e571a,#fffdf9f5);border-color:#0f6e5729}.summary-card--loading{background:linear-gradient(90deg,#e7e0d5b3,#f7f1e7f2,#e7e0d5b3) 0 0/220% 100%;animation:1.3s linear infinite shimmer}.summary-card__label{text-transform:uppercase;letter-spacing:.08em;color:#6a7a74;margin:0;font-size:.84rem}.summary-card__value{margin:12px 0 0;font-size:clamp(1.5rem,4vw,2.2rem);font-weight:800;line-height:1.1}.summary-card__caption{color:#53635d;margin:12px 0 0;font-size:.92rem}.toolbar{top:max(12px, env(safe-area-inset-top));z-index:10;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f6f1e7d1;border:1px solid #1434311a;border-radius:24px;margin-top:16px;padding:14px;position:sticky;box-shadow:0 16px 28px #17312c14}.search-field{color:#31453f;gap:8px;font-size:.95rem;font-weight:600;display:grid}.search-field input{width:100%;color:inherit;background:#fffdf9eb;border:1px solid #1434311f;border-radius:16px;padding:14px 16px;box-shadow:inset 0 1px #fff6}.search-field input:focus{border-color:#0f6e575c;outline:2px solid #0f6e5740}.toolbar__filters{scrollbar-width:none;gap:8px;margin-top:12px;padding-bottom:2px;display:flex;overflow-x:auto}.toolbar__filters::-webkit-scrollbar{display:none}.toolbar__filters button{color:#31453f;background:#fffdf9f0;border:1px solid #1434311f;border-radius:999px;flex:none;padding:10px 14px;transition:transform .2s,background .2s,border-color .2s}.toolbar__filters button.is-active{color:#f8f5ef;background:#0f6e57;border-color:#0f6e576b}.toolbar__filters button:active{transform:translateY(1px)}.toolbar__foot{color:#53635d;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;font-size:.92rem;display:flex}.toolbar__foot p{margin:0}.member-grid{gap:14px;margin-top:18px;display:grid}.member-card,.state-card{background:#fffdf9eb;border:1px solid #1434311a;border-radius:24px;box-shadow:0 16px 30px #17312c14}.member-card,.member-card--loading{padding:18px}.member-card__header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.member-card__meta{letter-spacing:.14em;text-transform:uppercase;color:#7a8b84;margin:0;font-size:.76rem}.member-card__name{margin:8px 0 0;font-size:1.22rem;line-height:1.2}.member-card__saint{color:#53635d;margin:6px 0 0}.member-card__stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 0;display:grid}.member-card__stats div{background:#0f6e570d;border-radius:18px;padding:14px}.member-card__stats dt{letter-spacing:.08em;text-transform:uppercase;color:#6a7a74;margin:0;font-size:.76rem}.member-card__stats dd{margin:8px 0 0;font-size:1rem;font-weight:700}.member-card__timeline,.member-card__notes{margin-top:16px}.member-card__section-title{letter-spacing:.08em;text-transform:uppercase;color:#6a7a74;margin:0 0 10px;font-size:.82rem;font-weight:700}.member-card__periods{gap:8px;margin:0;padding:0;list-style:none;display:grid}.member-card__periods li{background:#f5f1e9e6;border-radius:16px;flex-direction:column;gap:4px;padding:12px 14px;display:flex}.member-card__periods span{color:#60706a;font-size:.88rem}.member-card__periods strong{font-size:.96rem}.member-card__notes p:last-child{color:#624322;background:#f5ba691f;border-radius:18px;margin:0;padding:14px}.status-badge{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;min-height:34px;padding:7px 12px;font-size:.82rem;font-weight:700;display:inline-flex}.status-badge--paid{color:#0d6a54;background:#0f6e571f}.status-badge--partial{color:#a95b12;background:#db883626}.status-badge--unpaid{color:#b13b3b;background:#b83d3d1f}.state-card{text-align:center;margin-top:18px;padding:28px 20px}.state-card h2{margin:0;font-size:1.3rem}.state-card p{color:#53635d;margin:10px 0 0}.state-card button{color:#f8f5ef;background:#0f6e57;border:0;border-radius:999px;margin-top:16px;padding:12px 18px}.footer{text-align:center;color:#53635d;margin-top:24px;font-size:.92rem}.footer p{margin:0}.footer__assumption{margin-top:8px}.skeleton{background:linear-gradient(90deg,#e7e0d5b8,#f7f1e7,#e7e0d5b8) 0 0/220% 100%;border-radius:14px;animation:1.3s linear infinite shimmer}.skeleton--title{width:66%;height:22px}.skeleton--text{width:42%;height:14px;margin-top:12px}.skeleton--block{height:88px;margin-top:16px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (width>=700px){.app-shell{padding:28px 22px 56px}.hero{padding:36px 30px}.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.member-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.member-card__stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1040px){.member-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
