*{box-sizing:border-box}body{margin:0;background:var(--paper,#f6f3eb);color:var(--ink,#183b34);font:16px system-ui,sans-serif}a{color:inherit}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}button{cursor:pointer;border:0;border-radius:40px;padding:13px 21px;background:var(--ink,#183b34);color:var(--paper,#fff)}button:disabled{opacity:.4;cursor:not-allowed}.notice{padding:12px 5%;background:#13201d;color:#fff;font-size:12px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}header{padding:24px 6%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #0002}.brand{font-size:23px;font-weight:800;text-decoration:none}main{max-width:1200px;margin:auto;padding:50px 6%}h1{font-size:clamp(40px,7vw,85px);letter-spacing:-4px;line-height:1.02;margin:25px 0}h2{font-size:30px;letter-spacing:-1px}.eyebrow{font-size:11px;letter-spacing:3px}.intro{max-width:650px;line-height:1.8;opacity:.75}.tools{display:flex;gap:12px;flex-wrap:wrap;margin:35px 0 25px}.tools input{flex:1;min-width:170px}.tools input,.tools select,.form input,.form select{padding:13px;border:1px solid #0003;border-radius:10px;background:#fff;color:#183b34}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:#fff;border-radius:22px;padding:20px;box-shadow:0 6px 24px #00000007;animation:enter .5s both}.art{height:170px;border-radius:14px;display:grid;place-items:center;font-size:70px;background:var(--tile,#e5eadc)}.card h3{font-size:22px;margin:20px 0 8px}.card p{line-height:1.6;color:#5b6661}.row{display:flex;justify-content:space-between;align-items:center;gap:10px}.card button{padding:10px 17px}.cart{background:white;border-radius:22px;padding:25px;margin-top:35px}.cart:focus{outline:2px solid #8da981}.cart li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid #eee;flex-wrap:wrap}.cart ul{list-style:none;padding:0}.qty{display:flex;align-items:center;gap:12px}.qty button{padding:6px 13px}.form{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:24px 0}.form label{display:grid;gap:8px;font-size:13px}.form button{align-self:end}.status{padding:16px;border-radius:12px;background:#e3f3d8;margin-top:15px;color:#173a26}.hidden,[hidden]{display:none!important}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.metric{padding:26px;border-radius:20px;background:#fff}.metric b{display:block;font-size:34px;margin-top:12px}.chart{background:#fff;border-radius:22px;padding:25px;margin:25px 0}.bars{display:flex;align-items:end;gap:14px;height:220px;padding-bottom:30px}.bar{flex:1;background:#b3df89;border-radius:9px 9px 0 0;position:relative;min-height:10px;transition:height .5s}.bar span{position:absolute;top:100%;left:0;font-size:11px;padding-top:8px}.bar b{display:block;text-align:center;padding-top:10px;font-size:12px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:14px;border-bottom:1px solid #ddd;font-size:13px}.table-wrap{overflow:auto;background:white;padding:20px;border-radius:20px}footer{padding:35px 6%;border-top:1px solid #0002;font-size:13px}dialog{border:0;border-radius:24px;max-width:500px;width:90%;padding:30px}dialog::backdrop{background:#001b17aa}.modal-top{display:flex;justify-content:space-between;align-items:center}.muted{font-size:13px;color:#68736a}.empty{padding:30px;text-align:center}@keyframes enter{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}@media(max-width:740px){.grid,.metrics{grid-template-columns:1fr}.form{grid-template-columns:1fr}h1{letter-spacing:-2px}.art{height:160px}.bars{gap:7px}.bar b{font-size:10px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}@media(prefers-reduced-motion:no-preference){header{animation:enter .6s both}main h1{animation:enter .9s both}.card:hover .art{transform:scale(.96)}.art{transition:transform .35s}.card{transition:transform .3s,box-shadow .3s}.card:hover{transform:translateY(-5px);box-shadow:0 20px 40px #0001}button{transition:transform .2s,filter .2s}button:hover:not(:disabled){transform:translateY(-2px);filter:brightness(1.1)}button:active:not(:disabled){transform:scale(.96)}dialog[open]{animation:enter .25s both}.metric b{animation:enter .55s both}}
