@import url("https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700&display=swap");:root{--forest:#3f5823;--forest-deep:#2c3f18;--luster:#bad064;--luster-soft:#eef4d8;--paper:#fff;--ground:#f6f7f1;--ink:#1f2b12;--muted:#5f6a55;--line:#dfe3d6;--ok:#2f6b2a;--bad:#a33a2b;--warn:#8a6410;--bronze:#c98a52;--silver:#c9ced1;--gold:#d4af37}*{box-sizing:border-box}body,html{margin:0;padding:0}body{font:16px/1.5 TT Norms,Outfit,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--ground)}a{color:var(--forest)}h1{font-size:1.7rem;margin:0 0 .25rem}h1,h2{font-weight:700;color:var(--forest)}h2{font-size:1.05rem;margin:1.75rem 0 .6rem}p{margin:0 0 .8rem}.muted{color:var(--muted)}.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.shell{display:flex;min-height:100vh}.side{width:230px;flex:none;background:var(--paper);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:1rem .9rem;position:-webkit-sticky;position:sticky;top:0;height:100vh}.side-brand img{width:170px;height:auto;display:block;margin:.3rem .4rem 1.4rem}.side nav{display:flex;flex-direction:column;gap:.15rem}.side nav a{display:block;padding:.55rem .8rem;border-radius:8px;font-weight:600;text-decoration:none;color:var(--ink)}.side nav a:hover{background:var(--ground)}.side nav a.on{background:var(--luster-soft);color:var(--forest-deep)}.side-foot{margin-top:auto;display:flex;flex-direction:column;gap:.3rem;padding:.8rem .8rem 0;border-top:1px solid var(--line);font-size:.9rem;overflow-wrap:anywhere}.side-foot button{text-align:left}.content{flex:1 1;min-width:0}@media (max-width:820px){.shell{flex-direction:column}.side{width:auto;height:auto;position:static;border-right:0;border-bottom:1px solid var(--line);padding:.6rem .8rem}.side-brand img{width:130px;margin:.2rem .2rem .6rem}.side nav{flex-direction:row;flex-wrap:wrap;gap:.2rem}.side nav a{padding:.4rem .6rem;font-size:.95rem}.side-foot{display:none}}main{max-width:1100px;margin:0 auto;padding:1.5rem 1.25rem 4rem}main.narrow{max-width:720px}.card{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:1.25rem;margin-bottom:1rem}.login{min-height:100vh;display:grid;place-items:center;max-width:none}.login-card{width:100%;max-width:380px}.logo{width:220px;height:auto;margin-bottom:1rem}.logo,label{display:block}label{font-weight:600;margin:.9rem 0 .25rem}label.check{display:flex;gap:.6rem;align-items:flex-start;font-weight:500}label.check input{width:22px;height:22px;margin-top:.15rem;flex:none}input[type=email],input[type=password],input[type=tel],input[type=text],select,textarea{width:100%;padding:.65rem .75rem;font:inherit;color:var(--ink);border:1px solid #9aa58c;border-radius:8px;background:var(--paper);min-height:44px}textarea{min-height:84px}a:focus-visible,button:focus-visible,input:focus,select:focus,textarea:focus{outline:3px solid var(--luster);outline-offset:1px}.button,button{display:inline-block;font:inherit;font-weight:600;cursor:pointer;text-decoration:none;padding:.6rem 1rem;min-height:44px;border-radius:8px;border:1px solid var(--forest);background:var(--forest);color:#fff}.button:hover,button:hover{background:var(--forest-deep)}button.secondary{background:var(--paper);color:var(--forest)}button.secondary:hover{background:var(--luster-soft)}button.danger{background:var(--paper);color:var(--bad);border-color:var(--bad)}button.link{background:none;border:0;color:var(--forest);padding:0;min-height:0;text-decoration:underline}.row{display:flex;gap:.6rem;flex-wrap:wrap;align-items:flex-end}.row>*{flex:1 1 160px}.row>button{flex:0 0 auto}.hp{position:absolute;left:-9999px}.notice{padding:.7rem .9rem;border-radius:8px;margin:.8rem 0}.notice.ok{background:var(--luster-soft);color:var(--forest-deep)}.notice.bad{background:#f8e4e0;color:var(--bad)}.notice.warn{background:#f8efd6;color:var(--warn)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}td,th{text-align:left;padding:.55rem .6rem;border-bottom:1px solid var(--line);vertical-align:top}th{color:var(--muted)}.pill,th{font-size:.85rem;font-weight:600}.pill{display:inline-block;padding:.1rem .55rem;border-radius:999px;color:var(--ink);background:var(--line)}.pill.bronze{background:var(--bronze)}.pill.silver{background:var(--silver)}.pill.gold{background:var(--gold)}.pill.declined,.pill.on_hold{background:#f8e4e0;color:var(--bad)}.pill.pending{background:#f8efd6;color:var(--warn)}.pill.approved{background:var(--luster-soft);color:var(--forest-deep)}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:.75rem;gap:.75rem;margin:1rem 0}.stat{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:.8rem 1rem}.stat b{display:block;font-size:1.6rem;color:var(--forest)}a.stat{text-decoration:none;color:var(--ink)}a.stat:hover{border-color:var(--forest)}dl{display:grid;grid-template-columns:150px 1fr;grid-gap:.3rem .8rem;gap:.3rem .8rem;margin:0}dt{color:var(--muted)}dd{margin:0;overflow-wrap:anywhere}ol.terms li{margin-bottom:.6rem}@media (max-width:560px){dl{grid-template-columns:1fr}dt{margin-top:.4rem}}.progress{height:12px;background:var(--line);border-radius:999px;overflow:hidden;margin:.4rem 0 .8rem}.progress span{display:block;height:100%;background:var(--forest);border-radius:999px}.steps{list-style:none;padding:0;margin:0 0 .6rem}.steps li{padding:.15rem 0;color:var(--muted)}.steps li.done{color:var(--ink)}.signature{font-family:Snell Roundhand,Brush Script MT,cursive;font-size:1.6rem}@media print{.noprint,.side{display:none!important}body{background:#fff}}.two{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 1rem;gap:0 1rem}@media (max-width:520px){.two{grid-template-columns:1fr}}fieldset.group{border:1px solid var(--line);border-radius:10px;padding:.4rem 1rem 1rem;margin:1rem 0 0}fieldset.group legend{font-weight:700;color:var(--forest);padding:0 .4rem}.spinner{display:inline-block;width:1em;height:1em;margin-right:.5em;vertical-align:-.15em;border:2px solid hsla(0,0%,100%,.45);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.spinner.dark,button.danger .spinner,button.secondary .spinner{border-color:var(--line);border-top-color:var(--forest)}button.busy,button:disabled{opacity:.8;cursor:progress}.loading{color:var(--muted);padding:2rem 0}@keyframes spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:2s}}details.card>summary{cursor:pointer}textarea{min-height:6rem}main.wide{max-width:1320px}.crumb{margin-bottom:.6rem}.crumb a{text-decoration:none;font-weight:600}.acct-head{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:1.25rem 1.5rem;margin-bottom:1rem}.acct-status{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:.5rem}.acct-head h1{font-size:2rem;margin:0;color:var(--ink)}.acct-sub{font-size:1.1rem;font-weight:600;color:var(--muted);margin-bottom:1rem}.facts{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 2.5rem;gap:0 2.5rem;margin:0}.facts>div{display:grid;grid-template-columns:10rem 1fr;grid-gap:1rem;gap:1rem;padding:.65rem 0;border-top:1px solid var(--line)}.facts dt{color:var(--muted)}.facts dd{margin:0;font-weight:500;overflow-wrap:anywhere}.acct-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;grid-gap:1.25rem;gap:1.25rem;align-items:start}.tabs{display:flex;gap:1.5rem;border-bottom:1px solid var(--line);margin-bottom:1rem;overflow-x:auto}.tabs a{padding:.6rem .1rem;font-weight:600;text-decoration:none;color:var(--muted);border-bottom:3px solid transparent;white-space:nowrap}.tabs a.on{color:var(--ink);border-bottom-color:var(--forest)}.acct-side .big{font-size:1.6rem;font-weight:700;margin:0;line-height:1.2}.acct-side .big.bad{color:var(--bad)}.acct-side .big+.muted{font-size:.85rem;margin-bottom:1rem}@media (max-width:900px){.acct-grid,.facts{grid-template-columns:1fr}.facts>div{grid-template-columns:8rem 1fr}}main.voucher{padding-top:1rem}.barcode,main.voucher{background:#fff}.barcode h2{font-size:1rem;margin:0 0 .5rem}.barcode svg{width:100%;height:auto;display:block}.filters{display:flex;gap:.6rem;flex-wrap:wrap;align-items:flex-end;margin:.6rem 0 1rem}.filters>div{flex:1 1 160px}.filters label{margin-top:0}.filters input,.filters select{min-height:42px}.filters button{flex:0 0 auto}td.num,th.num{text-align:right}.sale-lines{margin:.3rem 0 0;padding-left:1.1rem;color:var(--muted);font-size:.92rem}details.inline>summary{cursor:pointer;color:var(--forest);font-weight:600;list-style:none}details.inline>summary::-webkit-details-marker{display:none}