:root{--bg:#f5f6f1;--ink:#173a34;--muted:#6a7873;--line:#dfe5db;--green:#d8f78b;--dark:#173d35;--white:#fff}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.6 Arial,sans-serif}button,input,select{font:inherit}button,a,input,select{outline-offset:5px}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}.topbar{height:100px;max-width:1240px;margin:auto;padding:0 42px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font-size:10px;letter-spacing:1.8px;font-weight:800}.brand small{display:block;font-size:19px;letter-spacing:-.5px}.brand-icon{display:grid;place-content:center;width:43px;height:43px;background:var(--dark);color:var(--green);border-radius:12px;font-size:30px;letter-spacing:-3px;position:relative}.brand-icon span{position:absolute;right:6px;top:0;font-size:18px}.edition{font-size:10px;letter-spacing:2px;color:var(--muted)}main{max-width:1240px;margin:auto;padding:0 42px}.intro{display:grid;grid-template-columns:1.25fr 1fr;align-items:center;padding:58px 0 50px;gap:50px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:2.1px}h1{font-size:clamp(52px,6.5vw,84px);letter-spacing:-5px;line-height:1.02;margin:20px 0}h1 em{font-family:Georgia,serif;font-weight:400;font-style:italic}p{color:var(--muted)}.intro p{max-width:435px;font-size:16px}.receipt{justify-self:center;background:#fffdf7;width:290px;padding:27px 28px 22px;transform:rotate(5deg);box-shadow:10px 16px 0 #e3e8dc;clip-path:polygon(0 0,100% 0,100% 97%,97% 100%,94% 97%,91% 100%,88% 97%,85% 100%,82% 97%,79% 100%,76% 97%,73% 100%,70% 97%,67% 100%,64% 97%,61% 100%,58% 97%,55% 100%,52% 97%,49% 100%,46% 97%,43% 100%,40% 97%,37% 100%,34% 97%,31% 100%,28% 97%,25% 100%,22% 97%,19% 100%,16% 97%,13% 100%,10% 97%,7% 100%,4% 97%,0 100%)}.receipt-head{text-align:center;border-bottom:1px dashed #b5c5b2;padding-bottom:17px;margin-bottom:20px;letter-spacing:3px;font-size:12px}.receipt-head b{display:block;font-size:23px;letter-spacing:1px}.receipt-row{display:flex;justify-content:space-between;font-size:12px;margin:10px 0}.receipt-total{border-top:1px dashed #b5c5b2;margin-top:20px;padding-top:15px;font-size:11px}.receipt-total strong{display:block;font-size:49px;letter-spacing:-2px;line-height:1.3}.receipt-total strong span{font-size:11px;letter-spacing:0;font-weight:400}.barcode{height:30px;margin-top:13px;background:repeating-linear-gradient(90deg,#173a34 0px,#173a34 2px,transparent 2px,transparent 5px,#173a34 5px,#173a34 6px,transparent 6px,transparent 9px)}.receipt>small{display:block;text-align:center;font-size:8px;letter-spacing:2px;padding-top:7px}.tabs{display:flex;gap:32px;border-bottom:1px solid var(--line);margin-bottom:32px}.tabs button{border:0;border-bottom:3px solid transparent;background:none;padding:18px 0;color:#93a095;font-size:11px;display:flex;gap:12px;align-items:center}.tabs button span{font-size:14px}.tabs button.active{color:var(--ink);border-bottom-color:var(--ink);font-weight:bold}.grid{display:grid;grid-template-columns:1.12fr 1fr;gap:30px}.card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:32px}h2{font-size:30px;letter-spacing:-1px;line-height:1.2;margin:14px 0}h3{font-size:18px;letter-spacing:-.4px;margin:0 0 18px}.login p{max-width:420px}.login form{margin-top:25px}label{display:block;font-size:12px;font-weight:bold;margin:20px 0 9px}input,select{width:100%;border:1px solid #d6dfd5;border-radius:9px;background:#fbfcf8;color:var(--ink);padding:14px}#participant-code{letter-spacing:3px;font-family:monospace;font-size:20px;text-transform:uppercase}#participant-code::placeholder{font-size:13px;letter-spacing:1px}.primary,.outline,.quiet{border-radius:9px;padding:13px 20px;border:0;font-size:13px;font-weight:bold}.primary{background:var(--dark);color:#fff;display:flex;justify-content:space-between;gap:25px;align-items:center}.primary span{color:var(--green);font-size:20px}.full{width:100%;margin-top:18px}.outline{border:1px solid #b8c9bd;background:transparent;color:var(--ink)}.quiet{background:none;color:var(--ink)}.micro{font-size:11px;color:var(--muted);line-height:1.6}.guide{border-radius:18px;background:var(--green);padding:36px 42px}.step-tag{font-size:9px;letter-spacing:2px;border:1px solid #a8c773;padding:6px 9px;border-radius:4px}.guide h2{margin-top:24px;font-size:33px}.guide ol{counter-reset:steps;padding:0;margin:30px 0 0;list-style:none}.guide li{counter-increment:steps;position:relative;padding-left:44px;margin:24px 0}.guide li:before{content:'0' counter(steps);position:absolute;left:0;top:1px;font-size:11px;border-bottom:1px solid #7c9b57;padding-bottom:2px}.guide li b{display:block;font-size:14px}.guide li span{font-size:12px;color:#476143}.welcome{display:flex;justify-content:space-between;align-items:center;margin:4px 0 25px}.welcome h2{margin-bottom:7px}.pill{border:1px solid #c4d9b9;border-radius:30px;padding:7px 13px;font-size:11px;background:#eaf4df}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:28px}.stats>div{background:#edf1e8;padding:20px}.stats small{display:block;color:var(--muted);font-size:11px}.stats strong{font-size:25px;letter-spacing:-.5px;display:block;margin-top:5px}.stats .sub{font-size:14px;color:var(--muted);font-weight:normal}.section-heading{display:flex;justify-content:space-between;align-items:baseline}.filebox{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:7px;border:1px dashed #9fb397;background:#f8faf4;border-radius:10px;padding:25px 15px;cursor:pointer;overflow-wrap:anywhere}.filebox span:last-of-type{font-size:11px;color:var(--muted);font-weight:normal}.filebox input{opacity:0;position:absolute;inset:0;cursor:pointer;width:100%;height:100%}.filebox:focus-within{outline:2px solid #397b5b}.upload-symbol{font-size:25px;border:1px solid #c7d6bd;border-radius:10px;width:43px;height:43px;line-height:40px}.history-item{border-bottom:1px solid var(--line);padding:14px 0;display:flex;justify-content:space-between}.history-item small{font-size:11px;color:var(--muted)}.history-item strong{font-size:23px}.empty{padding:22px 0;font-size:13px}.tip{margin-top:25px;padding:18px;border-radius:10px;background:#f1f6e8;font-size:13px}.tip p{font-size:12px;margin-bottom:0}.notice{padding:13px 18px;background:#fff4dc;border:1px solid #ead6a6;border-radius:9px;margin-bottom:20px;color:#72511b;font-size:13px}.notice.error{background:#ffefed;border-color:#efc4bd;color:#8d3026}.result{padding:20px;margin-top:20px;border-radius:10px;background:#edf5e1}.result strong{font-size:32px}.result p{margin:7px 0;font-size:12px}.filter-row{display:flex;gap:10px;margin:20px 0}.filter-row button{border:1px solid #cad7c5;border-radius:30px;padding:9px 20px;color:var(--ink);background:none;font-size:12px}.filter-row button.selected{background:var(--dark);color:#fff;border-color:var(--dark)}.board{padding:12px 25px 20px}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:550px}th{text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);font-weight:normal;padding:18px 12px;border-bottom:1px solid var(--line)}td{padding:18px 12px;border-bottom:1px solid #edf0e9;font-size:13px}td:last-child{font-size:22px;font-weight:bold}tbody tr:first-child{background:#f1f8e6}.me-row{outline:1px solid #93b86c;outline-offset:-1px}.rank{display:inline-grid;place-content:center;background:#edf2e6;border-radius:8px;min-width:32px;height:32px;font-weight:bold}.rule-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0}.rule-grid .card{padding:25px}.rule-number{font-size:11px;color:#88a16e;display:block;margin-bottom:25px}.rule-grid p{font-size:13px}.rule-grid h3{margin-bottom:10px}.hidden{display:none!important}footer{margin-top:65px;padding:25px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:var(--muted);font-size:9px;letter-spacing:1px}footer b{padding:0 10px;color:#b6c1af}dialog{max-width:480px;width:calc(100% - 32px);border:1px solid var(--line);border-radius:16px;padding:30px;color:var(--ink)}dialog::backdrop{background:#0e2925a8}.dialog-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:25px}.dialog-actions button{white-space:nowrap}
@media(max-width:800px){.topbar{padding:0 22px;height:80px}.edition{display:none}main{padding:0 22px}.intro{gap:15px;padding:40px 0}.receipt{width:230px;padding:20px}.intro h1{letter-spacing:-3px}.grid{grid-template-columns:1fr}.rule-grid{grid-template-columns:repeat(2,1fr)}.stats{grid-template-columns:repeat(2,1fr)}.card{padding:25px}.tabs{gap:22px}.tabs button{gap:7px}.tabs button span{font-size:12px}}@media(max-width:520px){.intro{grid-template-columns:1fr}.intro>div:first-child{max-width:350px}.receipt{display:none}.intro p{font-size:14px}.rule-grid{grid-template-columns:1fr}.welcome{align-items:flex-start;gap:15px}.welcome h2{font-size:26px}.stats strong{font-size:22px}.tabs{gap:17px}.tabs button{font-size:9px}.tabs button span{font-size:11px}.filter-row{gap:6px}.filter-row button{padding:8px 13px}.guide{padding:28px}footer{gap:20px;align-items:flex-start}footer span{max-width:50%}.dialog-actions{flex-direction:column}.dialog-actions button{justify-content:center}}
