:root{font-family:Aptos,Segoe UI,sans-serif;color:#18324a;background:#f6efdf;font-synthesis:none;--ink: #18324a;--paper: #f6efdf;--cream: #fffaf0;--line: #b9b39f;--pink: #c52d68;--maize: #e9ad36;--leaf: #50704c;--muted: #5a6b75}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button{cursor:pointer}.brand{display:inline-flex;align-items:center;gap:8px;color:var(--ink);text-decoration:none;font-weight:850;white-space:nowrap}.brand b{display:grid;place-items:center;width:25px;height:30px;color:var(--paper);background:var(--pink);border-radius:50% 50% 3px 3px;font-family:Georgia,serif}.brand small{margin-left:3px;color:#687885;text-transform:uppercase;letter-spacing:.14em;font-size:.56rem}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,540px);background:radial-gradient(circle at 20% 25%,#d7709866 0 9%,transparent 24%),linear-gradient(145deg,#f4dfb9 0 56%,var(--paper) 56%)}.login-page:before{content:"";align-self:end;width:min(52vw,720px);height:55vh;background:linear-gradient(130deg,transparent 45%,#18324a18 45% 46%,transparent 46%),radial-gradient(ellipse at 40% 100%,#50704c 0 20%,transparent 20%);clip-path:polygon(0 45%,15% 28%,29% 53%,45% 9%,57% 43%,73% 21%,100% 52%,100% 100%,0 100%)}.login-panel{grid-column:2;grid-row:1;padding:clamp(35px,7vw,88px);background:#fffaf0e8;border-left:1px solid #18324a33}.login-panel .brand{margin-bottom:clamp(50px,10vh,110px)}.quiet-label{color:var(--leaf);font-weight:800;font-size:.7rem;text-transform:uppercase;letter-spacing:.13em}.login-panel h1,.page-title h1{font-family:Georgia,serif;font-weight:500;letter-spacing:-.04em;text-wrap:balance}.login-panel h1{font-size:clamp(3rem,6vw,5.4rem);line-height:.92;margin:.25em 0}.login-panel>p:not(.quiet-label){max-width:55ch;line-height:1.65;color:var(--muted)}form{display:grid;gap:16px}.login-panel form{margin-top:30px}label{display:grid;gap:7px;color:#3f5664;font-size:.82rem;font-weight:700}input,select,textarea{width:100%;min-height:46px;padding:11px 12px;color:var(--ink);background:#fffdf7;border:1px solid #8e988f;border-radius:0}textarea{resize:vertical}.login-panel form button,.panel-form button,.dynamic-fields>button,.material button{min-height:48px;border:0;background:var(--ink);color:#fff;font-weight:800;padding:12px 18px}.text-action{border:0;background:none;color:var(--pink);padding:12px 0}.or{display:flex;align-items:center;gap:10px;margin:10px 0;color:#77827f}.or:before,.or:after{content:"";height:1px;background:#c8c2b2;flex:1}.google{display:block;padding:13px;border:1px solid #8e988f;text-align:center;color:var(--ink);text-decoration:none;font-weight:800}.login-panel>small{display:block;margin-top:20px;color:#6f7b80;line-height:1.5}.notice{padding:13px 15px;margin:18px 0;background:#e4f0df;border:1px solid #779170;color:#284a31}.notice.error{background:#f9dfe4;border-color:#c16b7b;color:#6e2635}.portal{min-height:100vh;background:var(--paper)}header{height:72px;display:flex;align-items:center;gap:20px;padding:0 3vw;background:var(--cream);border-bottom:1px solid #c9c2b0;position:sticky;top:0;z-index:10}.identity{margin-left:auto;display:flex;gap:18px;align-items:center;color:var(--muted)}.identity button,.menu{border:1px solid #a9a38f;background:transparent;color:var(--ink);padding:8px 12px}.menu{display:none}.portal-grid{display:grid;grid-template-columns:235px minmax(0,1fr);min-height:calc(100vh - 72px)}aside{padding:34px 20px;background:#e9dfca;border-right:1px solid #c2baa7}aside nav{display:grid;gap:3px}aside nav button{border:0;background:transparent;text-align:left;padding:12px 14px;color:#586974}aside nav button.active,aside nav button:hover{background:var(--cream);color:var(--pink);box-shadow:inset 2px 0 var(--pink)}aside>p{margin-top:45px;padding-top:18px;border-top:1px solid #c2baa7;color:#78827e;font-size:.72rem;line-height:1.6}aside>p strong{color:#4d625e}.content{padding:clamp(34px,5vw,72px);width:min(1500px,100%);margin:auto;min-width:0}.page-title{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,480px);align-items:end;gap:40px;margin-bottom:42px}.page-title h1{font-size:clamp(3rem,6vw,5.7rem);line-height:.92;margin:0}.page-title p{line-height:1.7;color:var(--muted);margin:0}.balance-line{display:grid;grid-template-columns:1fr 1fr;align-items:end;padding:28px 0;border-block:1px solid var(--line)}.balance-line small{color:var(--muted)}.balance-line strong{display:block;font:500 clamp(3.5rem,8vw,7rem)/1 Georgia,serif;color:var(--pink)}.balance-line p{text-align:right;color:var(--leaf)}.metrics{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line)}.metrics>div{padding:28px 20px;border-right:1px solid var(--line)}.metrics>div:last-child{border:0}.metrics strong{display:block;font:500 2.3rem Georgia,serif}.metrics span{color:var(--muted);font-size:.8rem}.split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:48px}.list,.records{border-top:1px solid var(--line)}.list article,.records article{display:flex;justify-content:space-between;gap:20px;padding:17px 3px;border-bottom:1px solid var(--line)}.list .design-row{display:grid;gap:10px}.design-row>div:first-child{display:flex;justify-content:space-between;gap:18px}.design-row a{color:var(--pink);font-weight:800}.design-actions{display:flex;flex-wrap:wrap;gap:9px}.design-actions button{padding:9px 12px;border:1px solid #8f998d;color:var(--ink);background:transparent}.design-actions button:last-child{color:#fff;background:var(--ink)}.list span,.records span{color:var(--muted);font-size:.8rem}.panel-form{padding:25px;background:var(--cream);border:1px solid var(--line)}.panel-form h2,.dynamic-fields h2,.section-title{font:500 1.8rem Georgia,serif;margin:0 0 12px}.invitation-form{display:grid;grid-template-columns:minmax(260px,.65fr) minmax(0,1.35fr);gap:35px;padding:28px;background:var(--cream);border-block:1px solid var(--line)}.form-intro,.dynamic-fields{display:grid;align-content:start;gap:16px}.dynamic-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.dynamic-fields h2,.dynamic-fields>button{grid-column:1/-1}.check{display:flex;align-items:center}.check input{width:auto;min-height:auto}.section-title{margin:45px 0 15px}.invitation-list article{display:grid;grid-template-columns:1fr auto 220px;align-items:center;gap:15px;padding:14px 0;border-bottom:1px solid var(--line)}.invitation-list article>div{display:grid}.invitation-list span{font-size:.72rem;color:var(--leaf);text-transform:uppercase;letter-spacing:.08em}.invitation-list button{padding:9px 12px;background:transparent;border:1px solid #8f998d;color:var(--ink)}.material{max-width:760px;padding:clamp(28px,6vw,65px);background:var(--ink);color:#fff}.material h2{font:500 clamp(2.4rem,5vw,4.8rem)/1 Georgia,serif;letter-spacing:-.035em;margin:0}.material p{max-width:65ch;color:#c9d4db;line-height:1.7}.material button{background:var(--maize);color:var(--ink)}.empty,.loading{padding:60px 10px;border-block:1px solid var(--line);color:var(--muted)}.empty h2{font:500 2rem Georgia,serif;color:var(--ink)}.access-state{min-height:100vh;display:grid;place-content:center;color:var(--muted)}:focus-visible{outline:3px solid var(--maize);outline-offset:3px}button:disabled{opacity:.55;cursor:wait}@media(max-width:980px){.login-page{grid-template-columns:1fr}.login-page:before{display:none}.login-panel{grid-column:1;border:0;width:min(600px,100%);margin:auto}.menu{display:block}.portal-grid{grid-template-columns:1fr}aside{position:fixed;z-index:9;inset:72px auto 0 0;width:260px;transform:translate(-100%);transition:transform .22s cubic-bezier(.22,1,.36,1);box-shadow:12px 0 28px #18324a38}aside.open{transform:none}.page-title,.split{grid-template-columns:1fr}.metrics{grid-template-columns:1fr 1fr}.invitation-form{grid-template-columns:1fr}}@media(max-width:620px){header{padding:0 15px}.identity span{display:none}.content{padding:34px 18px 65px}.page-title{gap:15px}.balance-line{grid-template-columns:1fr}.balance-line p{text-align:left}.metrics,.dynamic-fields{grid-template-columns:1fr}.metrics>div{border-right:0;border-bottom:1px solid var(--line)}.invitation-list article{grid-template-columns:1fr}.list article,.records article{display:grid}.login-panel{padding:30px 24px}.login-panel .brand{margin-bottom:55px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}@media print{header,aside,.material button{display:none}.portal-grid{display:block}.content{padding:0}.material{max-width:none;min-height:100vh}}
