@font-face{font-family:Jost;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/jost-latin-300-normal-DkBQXsFU.woff2) format("woff2"),url(/assets/jost-latin-300-normal-Ckm9JHl_.woff) format("woff")}@font-face{font-family:Jost;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jost-latin-400-normal-q-RKOgPK.woff2) format("woff2"),url(/assets/jost-latin-400-normal-C7S-3Ky6.woff) format("woff")}@font-face{font-family:Jost;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jost-latin-500-normal-41lBe9I9.woff2) format("woff2"),url(/assets/jost-latin-500-normal-B-AtzreL.woff) format("woff")}@font-face{font-family:Bodoni Moda;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/bodoni-moda-latin-400-normal-CIWtV3SY.woff2) format("woff2"),url(/assets/bodoni-moda-latin-400-normal-9rKXKbpF.woff) format("woff")}@font-face{font-family:Bodoni Moda;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/bodoni-moda-latin-400-italic-DB-bun8K.woff2) format("woff2"),url(/assets/bodoni-moda-latin-400-italic-O_MaDy27.woff) format("woff")}@font-face{font-family:Bodoni Moda;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/bodoni-moda-latin-500-normal-CtAcMono.woff2) format("woff2"),url(/assets/bodoni-moda-latin-500-normal-B12im5S-.woff) format("woff")}:root{--ink: #1A1815;--on-ink: #F7F5F1;--paper: #FBFAF7;--bone: #F4F2ED;--canvas: #EFEDE7;--body: #5A554D;--muted: #6B665D;--placeholder: #B0A99D;--rule: #E5DFD4;--rule-strong: #DCD6CB;--brass: #94733E;--brass-text: #7A5C2C;--brass-on-dark: #BFAE8E;--muted-on-dark: #9E968A;--alert: #8A3A28;--ok: var(--brass);--ok-text: var(--brass-text);--wait: var(--muted);--bad: var(--alert);--cjk: "PingFang TC", "Microsoft JhengHei", "Noto Sans CJK TC", "Noto Sans TC", "Hiragino Sans CNS", sans-serif;--ui: "Jost", "Helvetica Neue", Helvetica, var(--cjk), system-ui, -apple-system, sans-serif;--display: "Bodoni Moda", Didot, "Times New Roman", var(--cjk), serif;--mono: var(--ui);--hk: var(--cjk), "Jost", sans-serif;--r-control: 0;--r-block: 0;--r-panel: 0;--r-modal: 0;--lift-menu: none;--lift-modal: none;--scrim: rgba(26, 24, 21, .55);--focus: 0 0 0 1px var(--brass);--focus-soft: 0 0 0 1px var(--brass);--brand: var(--ink);--brand-deep: var(--ink);--brand-line: rgba(247, 245, 241, .18);--accent: var(--ink);--accent-hover: var(--brass);--mark: var(--brass);--on-brand: var(--on-ink);--on-brand-dim: var(--muted-on-dark);--on-brand-dimmer: var(--muted-on-dark);--on-brand-soft: var(--brass-on-dark);--on-brand-label: var(--muted-on-dark);--workspace: var(--canvas);--panel: var(--paper);--white: var(--paper);--card: var(--paper);--sub: var(--bone);--thead: var(--paper);--row-hover: var(--bone);--row-selected: var(--bone);--disabled-bg: var(--bone);--line-strong: var(--rule-strong);--line: var(--rule);--hairline: var(--rule);--green: var(--ok);--green-on-brand: var(--brass-on-dark);--amber: var(--brass-text);--amber-ink: var(--brass-text);--red: var(--alert);--red-line: var(--alert);--green-tint: var(--bone);--amber-tint: var(--bone);--red-tint: var(--bone);--brand-tint: var(--bone);--neutral-tint: var(--bone);--dim: var(--muted);--text: var(--ink);--text-muted: var(--muted);--bg: var(--canvas);--border: var(--rule);--radius: 0;--radius-sm: 0}:root:lang(zh-Hans){--cjk: "PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", "Noto Sans SC", "Hiragino Sans GB", sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--ui);font-weight:300;background:var(--canvas);color:var(--ink);line-height:1.6;font-variant-numeric:tabular-nums;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased}a{color:var(--ink);text-decoration:none}a:hover{color:var(--brass);text-decoration:none}h1,h2,h3,h4{font-family:var(--display);font-weight:400;letter-spacing:-.01em}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:1px solid var(--brass);outline-offset:2px}.mono,.num{font-family:var(--mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;letter-spacing:.04em}.hk{font-family:var(--hk)}.display{font-family:var(--display);font-weight:400;letter-spacing:-.01em}.eyebrow{font:400 10px/1.3 var(--ui);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.eyebrow-lg{letter-spacing:.2em}.req{color:var(--alert);margin-left:4px}.bi-alt{font-family:var(--hk);color:var(--placeholder);text-transform:none;letter-spacing:0}.bi-alt:before{content:"·";margin:0 6px;color:var(--rule-strong)}.container{max-width:1240px;margin:0 auto;padding:32px 40px}.container.wide{max-width:1440px}.container.narrow{max-width:560px}.vcenter{min-height:calc(100vh - 52px);display:flex;align-items:center;justify-content:center}.appbar{background:var(--paper);border-bottom:1px solid var(--rule);min-height:52px;padding:0 40px;display:flex;align-items:center;justify-content:space-between;gap:24px;color:var(--ink)}.appbar-left,.appbar-right{display:flex;align-items:center;gap:16px}.lockup{font:400 12px/1 var(--ui);letter-spacing:.34em;text-transform:uppercase;color:var(--ink);white-space:nowrap}.lockup-lg{font-size:13px}.rule-v{width:1px;height:12px;background:var(--rule-strong);flex:none}.appbar-screen{font:400 11px/1 var(--ui);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.appbar-user{font-size:12px;letter-spacing:.12em;color:var(--ink);text-transform:uppercase}.appbar-role{font:400 10px/1 var(--ui);letter-spacing:.16em;color:var(--muted);text-transform:uppercase}.appbar a,.appbar .linkish{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);background:none;border:0;cursor:pointer;padding:0;height:auto;font-family:inherit}.appbar a:hover,.appbar .linkish:hover{color:var(--brass);text-decoration:none}.sidenav{width:220px;flex-shrink:0;background:var(--ink);padding:22px 0;display:flex;flex-direction:column;gap:0}.sidenav-label{padding:0 24px 12px;font:400 9px/1 var(--ui);letter-spacing:.22em;text-transform:uppercase;color:var(--muted-on-dark)}.sidenav-item{position:relative;min-height:40px;padding:0 24px;display:flex;align-items:center;gap:12px;color:#f7f5f1b8;font-size:14px;background:none;border:0;width:100%;cursor:pointer;font-family:inherit;text-align:left;transition:color .14s ease-out}.sidenav-item:hover,.sidenav-item.active{color:var(--on-ink)}.sidenav-item.active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--brass)}.sidenav-count{margin-left:auto;display:inline-flex;align-items:center;height:18px;padding:0 7px;background:none;border:1px solid var(--brass);color:var(--brass-on-dark);font:400 10px/1 var(--ui);letter-spacing:.1em}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 20px;border-radius:0;border:1px solid var(--rule-strong);background:transparent;color:var(--body);font-family:var(--ui);font-size:11px;font-weight:400;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;white-space:nowrap;transition:background .14s ease-out,border-color .14s ease-out,color .14s ease-out}.btn:hover{border-color:var(--ink);color:var(--ink);background:transparent}.btn:disabled,.btn[disabled]{opacity:.45;cursor:not-allowed}.btn:disabled:hover{border-color:var(--rule-strong);color:var(--body)}.btn-primary{background:var(--ink);border-color:var(--ink);color:var(--on-ink)}.btn-primary:hover{background:var(--brass);border-color:var(--brass);color:var(--on-ink)}.btn-brand{border-color:var(--ink);color:var(--ink)}.btn-brand:hover{background:var(--ink);color:var(--on-ink)}.btn-quiet{border-color:transparent;background:none;color:var(--muted);padding:0 12px}.btn-quiet:hover{color:var(--ink);border-color:transparent}.btn-danger{border-color:var(--rule-strong);color:var(--alert);background:transparent}.btn-danger:hover{border-color:var(--alert);color:var(--alert)}.btn-mark{background:var(--ink);border-color:var(--ink);color:var(--on-ink)}.btn-mark:hover{background:var(--brass);border-color:var(--brass)}.btn-sm{height:30px;padding:0 10px;font-size:10px;letter-spacing:.1em}.btn-lg{height:46px;padding:0 30px;font-size:12px}.btn-commit{width:100%;height:58px;background:var(--ink);border-color:var(--ink);color:var(--on-ink);font-size:13px;letter-spacing:.22em}.btn-commit:hover{background:var(--brass);border-color:var(--brass);color:var(--on-ink)}.field{display:flex;flex-direction:column;gap:8px}.field-hint{font-size:12px;line-height:1.6;color:var(--muted)}.field-error{font-size:12px;color:var(--alert)}input[type=text],input[type=email],input[type=password],input[type=search],input[type=number],input[type=date],input[type=time],input:not([type]),select,textarea{width:100%;height:40px;padding:0 2px 9px;border:0;border-bottom:1px solid var(--rule-strong);border-radius:0;background:transparent;color:var(--ink);font-family:var(--ui);font-weight:300;font-size:16px}input:not([type=checkbox]):not([type=radio]):not(:placeholder-shown),textarea:not(:placeholder-shown){border-bottom-color:var(--ink)}textarea{height:auto;padding:8px 10px;border:1px solid var(--rule-strong);resize:vertical;line-height:1.7;font-size:14px}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:24px;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 10px) calc(50% + 2px),calc(100% - 6px) calc(50% + 2px);background-size:4px 4px,4px 4px;background-repeat:no-repeat}input::placeholder,textarea::placeholder{color:var(--placeholder)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--ink);box-shadow:0 1px 0 0 var(--brass)}textarea:focus{box-shadow:inset 0 -1px 0 0 var(--brass)}input:disabled,select:disabled,textarea:disabled{background:transparent;border-color:var(--rule);color:var(--placeholder)}input.invalid,select.invalid{border-color:var(--alert)}input.mono,.input-mono input{font-family:var(--mono);letter-spacing:.04em;font-size:15px}.check{display:inline-flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.6;cursor:pointer}.check input[type=checkbox]{width:14px;height:14px;margin:3px 0 0;accent-color:var(--brass);flex-shrink:0}input[type=checkbox],input[type=radio]{accent-color:var(--brass)}.dropzone{min-height:72px;border:1px dashed var(--rule-strong);background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:16px;cursor:pointer;text-align:center}.dropzone:hover{border-color:var(--ink)}.dropzone-title{font-size:13px}.dropzone-meta{font:400 10px/1 var(--ui);letter-spacing:.16em;text-transform:uppercase;color:var(--placeholder)}.panel{background:var(--paper);border:1px solid var(--rule-strong);border-radius:0;overflow:hidden}.panel-head{min-height:52px;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--rule)}.panel.panel-overflow{overflow:visible}.panel-title{font:400 10px/1.3 var(--ui);letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.panel-body{padding:24px}.panel-foot{min-height:56px;padding:14px 24px;display:flex;align-items:center;justify-content:flex-end;gap:12px;border-top:1px solid var(--rule);background:var(--bone)}.panel-strip{padding:14px 24px;border-bottom:1px solid var(--rule);background:var(--bone);font:400 10px/1 var(--ui);letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.card{background:var(--paper);border:1px solid var(--rule-strong);padding:26px}.card-accent{border-top:1px solid var(--brass)}.metric{background:var(--paper);border:1px solid var(--rule);padding:16px 18px;position:relative}.metric-value{font:400 26px/1 var(--ui);letter-spacing:.02em}.metric-label{font:400 9px/1 var(--ui);letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-top:8px}.metric.needs-action:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--brass)}.metric.needs-action .metric-value{color:var(--brass-text)}.dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;display:inline-block;background:var(--muted)}.dot-in{background:var(--ok)}.dot-pending{background:var(--wait)}.dot-blocked{background:var(--bad)}.dot-waiting{background:transparent;border:1px solid var(--rule-strong)}.status{display:inline-flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.pill{display:inline-flex;align-items:center;height:20px;padding:0;background:none;font:400 10px/1 var(--ui);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);white-space:nowrap}.pill-in{color:var(--ok-text)}.pill-pending{color:var(--muted)}.pill-blocked{color:var(--bad)}.pill-info{color:var(--ink)}.pill-label{height:24px;padding:0 10px;border:1px solid var(--rule-strong);font:300 13px/1 var(--ui);letter-spacing:0;text-transform:none;color:var(--ink)}.pill-label.warn{border-color:var(--brass);color:var(--brass-text)}.progress{flex:1;height:3px;background:var(--rule);border-radius:0;overflow:hidden}.progress>span{display:block;height:100%;background:var(--brass)}.table-wrap{border:1px solid var(--rule-strong);overflow:auto;background:var(--paper)}table.data{width:100%;border-collapse:collapse}table.data th{height:40px;padding:0 18px;text-align:left;white-space:nowrap;background:var(--paper);border-bottom:1px solid var(--rule-strong);font:400 9px/1 var(--ui);letter-spacing:.18em;text-transform:uppercase;color:var(--muted);position:sticky;top:0;z-index:1}table.data td{height:52px;padding:12px 18px;border-bottom:1px solid var(--rule);font-size:14px;vertical-align:middle}table.data tbody tr:hover td,table.data tbody tr.selected td{background:var(--bone)}table.data tbody tr.selected td:first-child{box-shadow:inset 2px 0 0 var(--brass)}table.data tbody tr:last-child td{border-bottom:0}table.data td.id{font-family:var(--mono);font-size:13px;letter-spacing:.08em;width:92px}table.data td.amount{font-family:var(--mono);font-size:13px;letter-spacing:.04em;width:110px}table.data td.amount.short{color:var(--brass-text)}table.data td.name{color:var(--ink)}table.data td.empty{color:var(--placeholder)}.table-note{margin-top:14px;display:flex;gap:24px;flex-wrap:wrap;font-size:12px;color:var(--muted)}.flag{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border:1px solid var(--alert);background:none;color:var(--alert);font:400 9px/1 var(--ui)}.steps{display:grid;grid-template-columns:repeat(4,1fr)}.step{padding-bottom:12px;border-bottom:1px solid var(--rule)}.step-row{display:flex;align-items:baseline;gap:8px}.step-n{font:400 11px/1 var(--ui);letter-spacing:.12em;color:var(--placeholder)}.step-label{font:400 11px/1.3 var(--ui);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.step-zh{font-family:var(--hk);font-size:12px;color:var(--placeholder);margin-top:4px}.step.done{border-bottom-color:var(--rule-strong)}.step.done .step-n,.step.done .step-label{color:var(--body)}.step.done .step-zh{color:var(--muted)}.step.current{border-bottom-color:var(--brass)}.step.current .step-n{color:var(--brass-text)}.step.current .step-label{color:var(--ink)}.step.current .step-zh{color:var(--muted)}.outcome{border:1px solid var(--rule-strong);background:var(--paper)}.outcome-body{padding:32px}.outcome-kind{display:flex;align-items:center;gap:10px;font:400 11px/1 var(--ui);letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.outcome.ok .outcome-kind{color:var(--ok-text)}.outcome.ok .outcome-kind .dot{background:var(--ok)}.outcome.warn .outcome-kind{color:var(--muted)}.outcome.warn .outcome-kind .dot{background:var(--wait)}.outcome.bad .outcome-kind{color:var(--bad)}.outcome.bad .outcome-kind .dot{background:var(--bad)}.outcome-name{font-family:var(--display);font-size:34px;line-height:1.05;margin-top:16px}.outcome-meta{margin-top:10px;font-size:13px;color:var(--muted);display:flex;flex-wrap:wrap;gap:4px 16px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--scrim);display:flex;align-items:center;justify-content:center;padding:24px;z-index:100}.modal{width:100%;max-width:560px;background:var(--paper);border:1px solid var(--rule-strong);overflow:hidden;max-height:90vh;display:flex;flex-direction:column}.modal-head{min-height:52px;padding:16px 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--rule)}.modal-title{font:400 10px/1.3 var(--ui);letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.modal-close{border:0;background:none;cursor:pointer;color:var(--muted);font-size:16px;line-height:1;padding:4px}.modal-close:hover{color:var(--ink)}.modal-body{padding:24px;overflow:auto}.modal-foot{min-height:56px;padding:14px 24px;display:flex;align-items:center;justify-content:flex-end;gap:12px;border-top:1px solid var(--rule);background:var(--bone)}.menu{position:absolute;top:calc(100% + 1px);left:0;right:0;background:var(--paper);border:1px solid var(--rule-strong);z-index:20;overflow:hidden;max-height:280px;overflow-y:auto}.menu-item{padding:12px 14px;display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid var(--rule);cursor:pointer;font-size:14px}.menu-item:hover,.menu-item.active{background:var(--bone)}.menu-item:last-child{border-bottom:0}.menu-meta{font:400 10px/1 var(--ui);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);white-space:nowrap}.menu-foot{padding:10px 14px;font-size:12px;color:var(--muted);background:var(--bone)}.segmented{display:inline-flex}.segmented>button{display:flex;align-items:center;height:34px;padding:0 18px;border:1px solid var(--rule-strong);border-left:0;background:transparent;color:var(--body);font-family:var(--ui);font-size:11px;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:background .14s ease-out,color .14s ease-out}.segmented>button:first-child{border-left:1px solid var(--rule-strong)}.segmented>button:hover{color:var(--ink)}.segmented>button.on{background:var(--ink);border-color:var(--ink);color:var(--on-ink)}.chip{display:inline-flex;align-items:center;height:26px;padding:0 12px;border:1px solid var(--rule);background:transparent;color:var(--body);font-family:var(--ui);font-size:11px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.chip.on{background:var(--ink);border-color:var(--ink);color:var(--on-ink)}.batchbar{background:var(--ink);padding:14px 20px;display:flex;align-items:center;gap:16px;color:var(--on-ink);flex-wrap:wrap}.batchbar-title{font-size:13px;letter-spacing:.04em}.batchbar button{display:inline-flex;align-items:center;height:30px;padding:0 14px;border:1px solid rgba(247,245,241,.35);background:none;color:var(--on-ink);font-family:var(--ui);font-size:10px;letter-spacing:.16em;text-transform:uppercase;cursor:pointer}.batchbar button:hover{border-color:var(--brass-on-dark);color:var(--brass-on-dark)}.batchbar .spacer{flex:1}.divider{height:1px;background:var(--rule)}.rule-label{display:flex;align-items:center;gap:16px}.rule-label>span:last-child{flex:1;height:1px;background:var(--rule-strong)}.error{color:var(--alert);font-size:13px;margin:10px 0 0}.hint{color:var(--muted);font-size:13px;line-height:1.7}@media (max-width: 720px){.container{padding:20px 16px}.appbar{padding:10px 16px;gap:10px 16px;flex-wrap:wrap;min-height:0}.appbar-left,.appbar-right{flex-wrap:wrap;gap:8px 14px}.appbar-screen{white-space:nowrap}.checkin-strip{padding:16px;gap:14px 20px}.checkin-decision{padding:24px 20px}.checkin-name{font-size:38px}.checkin-facts{grid-template-columns:1fr;gap:0}.checkin-search{padding:20px 16px}.checkin-recent{padding:12px 16px}.steps{grid-template-columns:repeat(4,1fr)}.step-label{font-size:10px;letter-spacing:.1em}.step-zh{font-size:10px}.sidenav{width:100%;flex-direction:row;overflow-x:auto;padding:0}.sidenav-label{display:none}.sidenav-item{width:auto;white-space:nowrap}.sidenav-item.active:before{top:auto;bottom:0;right:0;width:auto;height:2px}.reg-body{flex-direction:column;padding:24px 16px 40px;gap:24px}.reg-rail{width:100%}.reg-bar-title{display:none}.reg-head{padding:16px}.reg-fields{padding:24px 16px}.reg-error{padding:0 16px 14px}.reg-container-inner{padding:16px 16px 0}.reg-name-grid{grid-template-columns:1fr}.reg-qr{margin:0 auto}}button,.btn-sm{font-family:var(--ui)}button:not(.btn):not(.linkish):not(.modal-close):not(.sidenav-item):not(.chip):not(.segmented>button):not(.batchbar button){display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 20px;border-radius:0;border:1px solid var(--ink);background:var(--ink);color:var(--on-ink);font-size:11px;font-weight:400;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:background .14s ease-out,border-color .14s ease-out,color .14s ease-out}button:not(.btn):not(.linkish):not(.modal-close):not(.sidenav-item):not(.chip):not(.segmented>button):not(.batchbar button):hover:not(:disabled){background:var(--brass);border-color:var(--brass)}button:disabled{opacity:.45;cursor:not-allowed}button.secondary,.secondary{background:transparent!important;border-color:var(--rule-strong)!important;color:var(--body)!important}button.secondary:hover:not(:disabled){border-color:var(--ink)!important;color:var(--ink)!important}button.accent,.accent{background:var(--ink)!important;border-color:var(--ink)!important;color:var(--on-ink)!important}.btn-sm{height:30px!important;padding:0 10px!important;font-size:10px!important;letter-spacing:.1em!important;border-radius:0!important}.upload-btn{display:inline-flex;align-items:center;justify-content:center;height:46px;padding:0 22px;border:1px dashed var(--rule-strong);background:transparent;color:var(--body);font-size:11px;letter-spacing:.16em;text-transform:uppercase;cursor:pointer}.upload-btn:hover{border-color:var(--ink);color:var(--ink)}button.big,.big{width:100%;height:58px!important;background:var(--ink)!important;border-color:var(--ink)!important;color:var(--on-ink)!important;font-size:13px!important;letter-spacing:.22em!important}button.big:hover:not(:disabled),.big:hover{background:var(--brass)!important;border-color:var(--brass)!important}button.big.mark,.big.mark{background:var(--ink)!important;border-color:var(--ink)!important;color:var(--on-ink)!important}.topbar{background:var(--paper);border-bottom:1px solid var(--rule);color:var(--ink);min-height:52px;padding:0 40px;display:flex;align-items:center;justify-content:space-between;gap:16px}.topbar a,.topbar button{color:var(--muted);background:none;border:0;font-size:11px;letter-spacing:.14em;text-transform:uppercase;height:auto;padding:0}.topbar a:hover,.topbar button:hover{color:var(--brass);background:none!important;text-decoration:none}.admin-layout{display:flex;align-items:stretch;min-height:calc(100vh - 52px)}.admin-main{flex:1;min-width:0;padding:36px 40px 56px;background:var(--paper)}.sidenav-group{display:flex;flex-direction:column;gap:0}.sidenav-group+.sidenav-group{margin-top:28px}.sidenav-icon{display:inline-flex;width:16px;height:16px;flex-shrink:0}.tabs{display:flex;gap:0;flex-wrap:wrap;margin-bottom:24px}.tabs button{height:34px!important;padding:0 18px!important;border:1px solid var(--rule-strong)!important;border-left:0!important;background:transparent!important;color:var(--body)!important;font-size:11px!important;letter-spacing:.16em!important;text-transform:uppercase!important}.tabs button:first-child{border-left:1px solid var(--rule-strong)!important}.tabs button.active{background:var(--ink)!important;border-color:var(--ink)!important;color:var(--on-ink)!important}.row{display:flex;align-items:center;gap:12px}.center{text-align:center}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:26px}.page-title{margin:0;font-family:var(--display);font-size:32px;font-weight:400;letter-spacing:-.015em}.page-sub{margin:8px 0 0;font-size:13px;color:var(--muted)}.page-sub b{color:var(--ink);font-weight:400}.filterbar{gap:16px;flex-wrap:wrap;justify-content:flex-start}.filterbar-search{flex:1;min-width:200px;max-width:380px}.filterbar input,.filterbar select{width:auto;height:34px;font-size:14px}.filterbar select{min-width:130px}.filterbar-count{margin-left:auto;font-size:10px;letter-spacing:.16em;color:var(--muted);text-transform:uppercase}.admin-table{min-width:1320px}.col-check{width:40px}.col-id{width:86px}.col-name{min-width:190px}.col-contact{width:210px}.col-ticket{width:138px}.col-pay{width:158px}.col-badge{width:124px}.col-checkin{width:86px}.col-state{width:116px}.col-act{width:1%;white-space:nowrap}.cell-id{display:flex;align-items:center;gap:8px}.cell-id .mono{font-size:13px;letter-spacing:.08em}.cell-stack{display:flex;flex-direction:column;gap:2px;min-width:0}.cell-sub{font-size:12px;color:var(--placeholder)}.cell-contact{font-size:12px;color:var(--body)}.cell-select{height:30px;width:118px;min-width:118px;padding:0 22px 6px 0;font-size:13px}.cell-select-empty{border-bottom-color:var(--brass);color:var(--brass-text)}.cell-pay{display:flex;align-items:center;gap:8px;cursor:pointer}.cell-pay input{width:auto;margin:0}.cell-amount{font-size:13px;letter-spacing:.04em}.tag{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border:1px solid currentColor;font:400 9px/1 var(--ui);flex-shrink:0}.tag-red{color:var(--alert)}.tag-brand{color:var(--ink)}.cell-inline{display:flex;align-items:center;gap:8px;white-space:nowrap}.badge.info{color:var(--ink)}.btn-quietaccent{color:var(--brass-text);border-color:var(--rule-strong)}.btn-quietaccent:hover{border-color:var(--brass);color:var(--brass-text)}.table-empty{padding:32px!important;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px 32px}.field-wide{grid-column:1 / -1}.modal-lede{margin:0 0 20px;font-size:14px;color:var(--body)}.modal-table{max-height:50vh}.modal-proof,.modal-notes{margin-top:20px}.modal-proof-row{display:flex;align-items:center;gap:14px}.modal-proof-row img{width:56px;height:56px;object-fit:cover;border:1px solid var(--rule)}.upload-btn-sm{height:34px;font-size:10px}.modal-body .error{margin-top:14px}.settings-panel{margin-bottom:28px}.settings-h{margin:30px 0 12px;font-family:var(--display);font-size:21px;font-weight:400;color:var(--ink)}.settings-h:first-child{margin-top:0}.settings-lede{margin:0 0 16px}.settings-add{margin-bottom:20px}.toggle-row{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:13px}.toggle-row input{width:auto;margin:0}.save-msg{margin-right:auto;font-size:12px;letter-spacing:.12em;text-transform:uppercase}.save-msg.ok{color:var(--ok-text)}.save-msg.bad{color:var(--alert)}.cfg-block{border:1px solid var(--rule);background:transparent;padding:18px;margin-bottom:16px}.cfg-method{display:flex;gap:16px;align-items:flex-start}.cfg-note{margin-top:12px;padding:10px 14px;background:var(--bone);font-size:12px;line-height:1.7;color:var(--body)}.cfg-tiers{margin-top:14px;padding-left:16px;border-left:1px solid var(--brass)}.cfg-tier{margin-bottom:14px;padding-bottom:14px;border-bottom:1px dashed var(--rule)}.cfg-tier:last-child{border-bottom:0}.cfg-qr,.cfg-qr-empty{width:100px;height:100px;margin:0 auto}.cfg-qr{object-fit:contain;border:1px solid var(--rule);background:var(--paper)}.cfg-qr-empty{border:1px dashed var(--rule-strong);display:flex;align-items:center;justify-content:center;font:400 9px/1 var(--ui);letter-spacing:.16em;text-transform:uppercase;color:var(--placeholder)}.cfg-qr-upload{display:block;margin-top:10px;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);cursor:pointer;text-align:center}.cfg-qr-upload:hover{color:var(--brass)}.users-table{min-width:980px}.roles-table{min-width:780px}.col-user{width:150px}.col-role{width:170px}.row-inactive td{opacity:.45}.cell-perms{white-space:normal;padding-top:10px!important;padding-bottom:10px!important}.perm-chip{display:inline-flex;align-items:center;height:20px;padding:0 8px;margin:2px 6px 2px 0;border:1px solid var(--rule);font-size:11px;color:var(--muted);white-space:nowrap}.perm-field{margin-top:22px}.perm-count{color:var(--placeholder);margin-left:6px;letter-spacing:0}.perm-list{max-height:300px;overflow:auto;border:1px solid var(--rule)}.perm-row{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--rule);cursor:pointer;font-size:13px}.perm-row:last-child{border-bottom:0}.perm-row:hover{background:var(--bone)}.perm-row input{width:auto;margin:0;accent-color:var(--brass)}.perm-row-text{display:flex;flex-direction:column;gap:2px;min-width:0}.perm-row-slug{font-size:11px;color:var(--placeholder);letter-spacing:.04em}.perm-group:last-child .perm-row:last-child{border-bottom:0}.perm-group-head{position:sticky;top:0;padding:9px 14px;background:var(--bone);border-bottom:1px solid var(--rule);color:var(--muted)}.modal-sm{max-width:380px}.modal-lg{max-width:800px}.receipt-no{margin-left:12px;font-size:12px;color:var(--muted);letter-spacing:.06em}.receipt-sent{color:var(--ok-text)}.receipt-frame{border:1px solid var(--rule);overflow:hidden}.page-acts{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.analytics-panel{margin-bottom:28px}.analytics-table{min-width:780px}.num-col,table.data th.num-col{text-align:right}.col-assign{width:300px}.cell-link{color:var(--ink);border-bottom:1px solid var(--brass)}.cell-unmatched{color:var(--alert)}table.data tbody tr.clickable{cursor:pointer}.panel-note{margin:16px 24px}.org-picker{position:relative}.org-picker-row{display:flex;gap:10px}.org-picker-row input{height:34px;width:200px;font-size:14px}.org-menu{width:330px;left:0;right:auto}.menu-item-name{color:var(--ink)}.menu-item-meta{font-size:11px;color:var(--muted);white-space:nowrap;letter-spacing:.06em}.log-regid{flex:0 0 180px}.log-table{min-width:900px}.log-time{white-space:nowrap;font-size:13px;color:var(--body);letter-spacing:.04em}.log-details{max-width:340px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--muted)}.tag-action{display:inline-flex;align-items:center;height:20px;padding:0;font:400 10px/1 var(--ui);letter-spacing:.14em;text-transform:uppercase}.tone-neutral{color:var(--muted)}.tone-green{color:var(--ok-text)}.tone-amber{color:var(--brass-text)}.tone-red{color:var(--alert)}.pager{justify-content:center;gap:16px}.pager-label{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.pager-wide{justify-content:space-between;flex-wrap:wrap}.pager-size{display:flex;align-items:center;gap:10px}.pager-size select{height:30px;padding:0 20px 4px 0;width:auto;flex:none;font-size:13px}.pager-nav{display:flex;align-items:center;gap:14px}.pager-at{font-size:11px;letter-spacing:.12em;color:var(--muted)}.verify-queue{display:flex;flex-direction:column;gap:16px}.verify-row{display:flex;align-items:stretch;flex-wrap:wrap}.verify-facts{flex:1;min-width:300px;padding:26px 30px}.verify-who{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.verify-id{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--placeholder)}.verify-name{margin:6px 0 0;font-family:var(--display);font-size:24px;font-weight:400;line-height:1.1}.verify-sub{margin:6px 0 0;font-size:13px;color:var(--muted)}.verify-lines{margin-top:20px;border-top:1px solid var(--rule)}.verify-line{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:12px 0;border-bottom:1px solid var(--rule)}.verify-line span{font-size:13px;color:var(--muted)}.verify-line b{font-size:14px;font-weight:400;color:var(--ink)}.verify-amount{font-size:20px;letter-spacing:.02em}.verify-commit{margin-top:22px}.verify-proof{flex:0 0 260px;min-height:180px;background:var(--bone);border-left:1px solid var(--rule);display:flex;align-items:center;justify-content:center;padding:14px}.verify-proof img{max-width:100%;max-height:240px;object-fit:contain;cursor:zoom-in}.verify-noproof{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--placeholder)}.verify-empty{padding:48px 24px}.verify-empty .dot{margin:0 auto 12px}.verify-empty-title{margin:0 0 6px;font-family:var(--display);font-size:24px;color:var(--ink)}.import-panel{margin-bottom:20px}.import-preview{margin-top:20px;border:1px solid var(--rule);border-left:1px solid var(--brass);background:transparent;padding:22px 24px}.import-preview-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.import-cols{font-size:11px;letter-spacing:.12em;color:var(--placeholder)}.import-counts{grid-template-columns:repeat(3,1fr);margin-bottom:18px}.stat-green:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--brass)}.stat-green .n{color:var(--brass-text)}.import-mapping summary{cursor:pointer;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.import-map-table{font-size:12px}.import-map-table td{height:30px;padding:6px 12px}.import-map-field{color:var(--ink);width:200px}.import-acts{display:flex;justify-content:flex-end;gap:12px;margin-top:20px}.warn-box{margin:16px 0;padding:12px 16px;border:1px solid var(--rule-strong);background:var(--bone);font-size:12px;line-height:1.7;color:var(--brass-text)}.import-summary{margin-top:16px;padding:16px 18px;background:var(--bone);font-size:13px;color:var(--ink)}.import-warn{margin:8px 0 0;color:var(--brass-text)}.batch-clear{margin-left:auto;background:none!important;border:0!important;height:30px!important;padding:0!important;color:var(--muted-on-dark)!important;font-size:10px!important;letter-spacing:.16em!important}.batch-clear:hover{color:var(--on-ink)!important}.import-head{cursor:pointer}.import-head:hover{background:var(--bone)}.import-chevron{font-size:11px;color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0;margin-bottom:26px;border-top:1px solid var(--rule)}.stat{position:relative}.stat-amber:before,.stat-accent:before,.stat-red:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px}.stat-amber:before{background:var(--brass)}.stat-accent:before{background:var(--ink)}.stat-red:before{background:var(--alert)}.stat-amber .n{color:var(--brass-text)}.stat-accent .n{color:var(--ink)}.stat-red .n{color:var(--alert)}.stat{background:transparent;border:0;border-bottom:1px solid var(--rule);border-right:1px solid var(--rule);padding:18px 20px}.stat .n,.stat .num{font:400 28px/1 var(--ui);letter-spacing:.01em;display:block}.stat .l{font:400 9px/1 var(--ui);letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-top:10px;display:block}.admin-table,.helper-table{width:100%;border-collapse:collapse}.admin-table th,.helper-table th{height:40px;padding:0 14px;text-align:left;white-space:nowrap;background:var(--paper);border-bottom:1px solid var(--rule-strong);font:400 9px/1 var(--ui);letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.admin-table td,.helper-table td{height:52px;padding:12px 14px;border-bottom:1px solid var(--rule);font-size:14px}.admin-table tbody tr:hover td,.helper-table tbody tr:hover td{background:var(--bone)}.badge{display:inline-flex;align-items:center;height:20px;padding:0;background:none;font:400 10px/1 var(--ui);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);white-space:nowrap}.badge.in{color:var(--ok-text)}.badge.out{color:var(--muted)}.flag{color:var(--alert)}.offer-badge{display:inline-flex;align-items:center;height:20px;padding:0 8px;border:1px solid var(--brass);background:none;color:var(--brass-text);font:400 9px/1 var(--ui);letter-spacing:.16em;text-transform:uppercase}.modal-overlay,.lightbox-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--scrim);display:flex;align-items:center;justify-content:center;padding:24px;z-index:100}.modal-content,.lightbox-content{background:var(--paper);border:1px solid var(--rule-strong);max-width:640px;width:100%;max-height:90vh;overflow:auto;padding:26px}.lightbox-content{padding:0;background:none;border:0;max-width:92vw}.proof-thumb{width:40px;height:40px;object-fit:cover;border:1px solid var(--rule);cursor:pointer}.batch-bar{background:var(--ink);padding:14px 20px;display:flex;align-items:center;gap:16px;color:var(--on-ink);flex-wrap:wrap;margin-bottom:16px}.batch-bar button{background:none!important;border:1px solid rgba(247,245,241,.35)!important;color:var(--on-ink)!important;height:30px!important}.batch-bar button:hover{border-color:var(--brass-on-dark)!important;color:var(--brass-on-dark)!important}.bank-details-box,.review-box{background:transparent;border:1px solid var(--rule);padding:20px;font-size:14px;line-height:1.8}.review-box{display:flex;flex-direction:column;gap:4px}.payment-methods{display:flex;gap:0;flex-wrap:wrap}.pay-method-btn{height:34px!important;padding:0 18px!important;border:1px solid var(--rule-strong)!important;border-left:0!important;background:transparent!important;color:var(--body)!important;font-size:11px!important;letter-spacing:.16em!important;text-transform:uppercase!important}.pay-method-btn.active{background:var(--ink)!important;border-color:var(--ink)!important;color:var(--on-ink)!important}.checkin-page{min-height:100vh;background:var(--paper);display:flex;flex-direction:column}.checkin-strip{background:var(--paper);border-bottom:1px solid var(--rule);padding:20px 30px;display:flex;align-items:center;gap:26px;flex-wrap:wrap}.checkin-count{display:flex;align-items:baseline;gap:8px}.checkin-count-n{font-size:28px;line-height:1;letter-spacing:.01em}.checkin-count-of{font-size:14px;color:var(--muted)}.checkin-count-label{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.checkin-progress{flex:1;min-width:120px;height:3px;background:var(--rule);overflow:hidden}.checkin-progress>div{height:100%;background:var(--brass);transition:width .3s ease-out}.checkin-waiting{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.checkin-waiting b{color:var(--ink);font-weight:400}.checkin-stage{flex:1;display:grid;grid-template-columns:300px minmax(0,1fr);min-height:440px}.checkin-camera{background:var(--ink);border-right:1px solid var(--rule);padding:26px 24px;display:flex;flex-direction:column;align-items:center;gap:20px}.checkin-camera-label{align-self:stretch;display:flex;align-items:center;gap:9px;font:400 10px/1 var(--ui);letter-spacing:.18em;text-transform:uppercase;color:var(--muted-on-dark)}.checkin-camera-view{flex:1;width:100%;display:flex;align-items:center;justify-content:center;position:relative;min-height:196px}.checkin-camera #qr-reader{width:100%;max-width:260px}.checkin-camera #qr-reader video{display:block;width:100%}.checkin-frame{position:absolute;width:196px;height:196px;pointer-events:none}.checkin-frame>span{position:absolute;width:34px;height:34px}.checkin-frame>span:nth-child(1){top:0;left:0;border-top:1px solid var(--brass-on-dark);border-left:1px solid var(--brass-on-dark)}.checkin-frame>span:nth-child(2){top:0;right:0;border-top:1px solid var(--brass-on-dark);border-right:1px solid var(--brass-on-dark)}.checkin-frame>span:nth-child(3){bottom:0;left:0;border-bottom:1px solid var(--brass-on-dark);border-left:1px solid var(--brass-on-dark)}.checkin-frame>span:nth-child(4){bottom:0;right:0;border-bottom:1px solid var(--brass-on-dark);border-right:1px solid var(--brass-on-dark)}.checkin-camera-foot{text-align:center;display:flex;flex-direction:column;align-items:center;gap:7px}.checkin-camera-hint{font-size:14px;color:var(--on-ink)}.checkin-camera-hint.hk{font-size:13px;color:var(--muted-on-dark)}.checkin-camera .btn{border-color:#f7f5f159;color:var(--on-ink)}.checkin-camera .btn:hover{border-color:var(--brass-on-dark);color:var(--brass-on-dark)}.checkin-camera .btn-primary{background:var(--on-ink);border-color:var(--on-ink);color:var(--ink)}.checkin-camera .btn-primary:hover{background:var(--brass);border-color:var(--brass);color:var(--on-ink)}.checkin-camera .btn-quiet{color:var(--muted-on-dark);border-color:transparent}.checkin-camera .btn-quiet:hover{color:var(--on-ink);border-color:transparent}.dot-live{background:var(--brass)}.checkin-pane{min-width:0;background:var(--paper);display:flex}.checkin-pane>.outcome{flex:1;border:0;display:flex;flex-direction:column}.checkin-pane>.outcome .checkin-decision{flex:1;display:flex;flex-direction:column}.checkin-idle{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:40px;text-align:center;color:var(--muted)}.checkin-idle p{margin:0;max-width:34ch;font-size:14px;line-height:1.8}.checkin-decision{padding:34px 36px 30px}.checkin-name{margin:18px 0 0;font-family:var(--display);font-weight:400;font-size:52px;letter-spacing:-.015em;line-height:1}.checkin-tags{display:flex;align-items:center;gap:16px;margin-top:12px;flex-wrap:wrap}.checkin-id{font-size:12px;letter-spacing:.12em;color:var(--ink)}.checkin-facts{margin-top:26px;border-top:1px solid var(--rule);display:grid;grid-template-columns:1fr 1fr;gap:0 36px}.checkin-facts>div{min-width:0;padding:13px 0;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;align-items:baseline;gap:12px}.checkin-facts span{font-size:13px;color:var(--muted)}.checkin-facts b{font-size:13px;font-weight:400;color:var(--ink);text-align:right;word-break:break-word}.checkin-meta{margin:16px 0 0;font-size:13px;line-height:1.7;color:var(--muted)}.checkin-acts{margin-top:auto;padding-top:30px;display:flex;gap:12px;align-items:stretch;flex-wrap:wrap}.checkin-acts .btn-commit{flex:1;min-width:200px;width:auto}.checkin-alt{height:58px;padding:0 26px;white-space:normal;line-height:1.3}.checkin-search{padding:26px 30px;display:flex;flex-direction:column;gap:20px}.checkin-search>.outcome{max-width:720px}.checkin-searchbox{flex:1}.checkin-searchcount{font-size:11px;letter-spacing:.12em;color:var(--muted);flex-shrink:0}.checkin-table-wrap{max-height:62vh;border:0}.checkin-modal{max-width:440px}.checkin-modal-lede{margin:0 0 20px;font-size:14px;line-height:1.7;color:var(--body)}.checkin-modal .field+.field{margin-top:20px}.btn-go{border-color:var(--ink);color:var(--ink)}.btn-go:hover{background:var(--ink);border-color:var(--ink);color:var(--on-ink)}.row-acts{display:flex;gap:8px}.checkin-recent{border-top:1px solid var(--rule);background:var(--bone);padding:14px 30px;display:flex;align-items:center;gap:20px}.checkin-recent .eyebrow{flex-shrink:0}.checkin-recent-row{flex:1;display:flex;gap:0;align-items:center;overflow-x:auto}.checkin-recent-item{display:inline-flex;align-items:baseline;gap:10px;padding:0 18px;border-left:1px solid var(--rule-strong);font-size:13px;white-space:nowrap;color:var(--ink)}.checkin-recent-item:first-child{border-left:0;padding-left:0}.checkin-recent-item .mono{font-size:12px;color:var(--muted)}.who{font-family:var(--display);font-size:24px}.msg{font-size:14px;color:var(--body)}.meta{font-size:12px;letter-spacing:.1em;color:var(--muted)}.reg-page{min-height:100vh;background:var(--paper)}.reg-bar{background:var(--paper);border-bottom:1px solid var(--rule)}.reg-bar-inner{max-width:1240px;margin:0 auto;min-height:52px;padding:0 40px;display:flex;align-items:center;justify-content:space-between;gap:24px}.reg-bar-left{display:flex;align-items:center;gap:16px;min-width:0}.reg-bar-title{font-size:13px;color:var(--body)}.reg-bar-zh{font-size:11px;letter-spacing:.1em;color:var(--muted)}.langswitch{display:flex;align-items:center;gap:18px;flex:none;border:0}.langswitch button{height:auto!important;padding:0 0 2px!important;border:0!important;border-bottom:1px solid transparent!important;background:none!important;color:var(--muted)!important;font-family:var(--ui)!important;font-size:11px!important;letter-spacing:.1em!important;cursor:pointer}.langswitch button+button{border-left:0!important}.langswitch button:hover{color:var(--ink)!important;background:none!important}.langswitch button.on{color:var(--ink)!important;border-bottom-color:var(--brass)!important;background:none!important}.home-lang{margin-left:auto}.reg-steps-bar{background:var(--paper);border-bottom:1px solid var(--rule)}.reg-container-inner{max-width:1240px;margin:0 auto;padding:22px 40px 0}.reg-steps-bar .step{padding-bottom:14px;margin-bottom:-1px}.reg-body{max-width:1240px;margin:0 auto;padding:40px;display:flex;gap:0;align-items:flex-start}.reg-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:26px}.reg-rail{width:400px;flex-shrink:0;margin-left:40px}.reg-rail .panel{background:var(--bone);border-color:var(--rule-strong)}.reg-rail-body{padding:40px;display:flex;flex-direction:column;gap:26px}.reg-rail-empty{color:var(--muted);font-size:13px;line-height:1.8}.reg-rail-ticket{display:flex;flex-direction:column;gap:8px}.reg-rail-name{font-family:var(--display);font-size:28px;line-height:1.1}.reg-rail-alt{font-size:12px;letter-spacing:.1em;color:var(--muted)}.reg-rail-offer{display:flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--brass-text)}.reg-rail-total{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding-top:20px;border-top:1px solid var(--rule-strong);font:400 10px/1 var(--ui);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.reg-rail-amount{font-size:28px;letter-spacing:.01em;line-height:1;color:var(--ink)}.reg-rail-ok{display:flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ok-text)}.reg-rail-next{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.reg-rail-next li{display:flex;gap:12px;font-size:13px;line-height:1.7;color:var(--body)}.reg-rail-next li span:first-child{font-size:10px;letter-spacing:.16em;color:var(--brass-text);padding-top:4px}.reg-rail-who{font-size:13px;line-height:1.8;display:flex;flex-direction:column}.reg-rail-who span{color:var(--muted)}.reg-head{justify-content:flex-start;gap:12px;padding:20px 24px}.reg-head-en{font-family:var(--display);font-size:24px}.reg-head-zh{font-size:13px;color:var(--muted)}.reg-step-chip{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:1px solid var(--rule-strong);font-size:11px;letter-spacing:0;color:var(--muted)}.reg-fields{display:flex;flex-direction:column;gap:26px;padding:30px 24px}.reg-foot{justify-content:space-between}.reg-stepof{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--placeholder)}.reg-error{margin:0;padding:0 24px 16px}.reg-tickets{display:flex;flex-direction:column;gap:0;padding:0 24px}.ticket-option{padding:24px 4px;border:0;border-bottom:1px solid var(--rule);background:transparent;cursor:pointer;transition:background .14s ease-out}.reg-tickets .ticket-option:first-child{border-top:1px solid var(--rule)}.ticket-option:hover,.ticket-option.selected{background:transparent}.ticket-option.sold-out{opacity:.45;cursor:not-allowed}.ticket-row{display:grid;grid-template-columns:20px minmax(0,1fr) 140px 150px;align-items:center;gap:24px}.ticket-radio{width:14px;height:14px;border:1px solid var(--ink);border-radius:50%;display:flex;align-items:center;justify-content:center;flex:none}.ticket-option.sold-out .ticket-radio{border-color:var(--muted)}.ticket-radio>span{width:8px;height:8px;border-radius:50%;background:var(--brass);display:block}.ticket-text{display:flex;flex-direction:column;gap:5px;min-width:0}.ticket-name{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;font-family:var(--display);font-size:24px}.ticket-name-alt{font-family:var(--hk);font-size:13px;color:var(--muted)}.ticket-note{font-size:14px;line-height:1.6;color:var(--body)}.ticket-avail{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.ticket-avail.scarce{color:var(--brass-text)}.ticket-price{text-align:right;margin-left:auto;font-size:20px;line-height:1.4;letter-spacing:.01em}.ticket-price-line{white-space:nowrap}.ticket-price-line+.ticket-price-line{margin-top:6px}.ticket-price-note{display:block;font-size:10px;line-height:1.5;letter-spacing:.1em;text-transform:uppercase;color:var(--brass-text)}.ticket-offer{display:flex;align-items:center;gap:12px;margin-top:8px;flex-wrap:wrap}.ticket-offer-label{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--brass-text)}.ticket-offer-when{font-size:11px;letter-spacing:.12em;color:var(--muted)}.reg-currency{margin:26px 24px 0;align-items:flex-start}.segmented>.pay-method-btn{border-left:0!important}.segmented>.pay-method-btn:first-child{border-left:1px solid var(--rule-strong)!important}.reg-pay-intro{margin:0 0 20px;font-size:14px;line-height:1.8;color:var(--body)}.reg-offer-terms{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:20px}.reg-offer-name{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--brass-text)}.reg-offer-note{font-size:11px;letter-spacing:.1em;color:var(--muted)}.reg-pay-methods{margin-bottom:26px}.reg-pay{display:flex;gap:32px;align-items:flex-start;flex-wrap:wrap}.reg-qr{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:10px}.reg-qr img{width:160px;height:160px;border:1px solid var(--rule-strong);background:var(--paper);padding:8px}.reg-paylines{flex:1 1 240px;min-width:0;border-top:1px solid var(--rule)}.reg-payline{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:14px 0;border-bottom:1px solid var(--rule)}.reg-payline-k{font-size:13px;color:var(--muted)}.reg-payline-v{font-size:14px;color:var(--ink);text-align:right;word-break:break-word}.reg-paynote{margin-top:16px;padding:14px 16px;background:var(--bone);font-size:13px;line-height:1.7;color:var(--body)}.reg-upload-ask{margin:14px 0 6px;font-size:14px;color:var(--body)}.reg-upload-hint{margin:0 0 16px}.reg-proof{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.reg-proof img{width:96px;border:1px solid var(--rule)}.reg-proof-text{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.reg-proof-ok{display:flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ok-text)}.reg-review{display:flex;flex-direction:column;border-top:1px solid var(--rule)}.reg-rev{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:14px 0;border-bottom:1px solid var(--rule)}.reg-rev span{font-size:13px;color:var(--muted);flex-shrink:0}.reg-rev b{font-size:14px;font-weight:400;color:var(--ink);text-align:right;word-break:break-word}.reg-consent{display:flex;gap:12px;align-items:flex-start;cursor:pointer;font-size:13px;line-height:1.7;padding:24px 0 4px}.reg-consent input{width:auto;margin-top:4px;flex-shrink:0}.reg-notes{margin-top:20px}.reg-page-plain{display:flex;align-items:center;justify-content:center;padding:56px 20px}.reg-plain{width:100%;max-width:460px}.reg-plain-title{margin:0 0 12px;font-family:var(--display);font-size:30px;color:var(--ink)}.reg-plain-msg{margin:0 0 24px;font-size:14px;line-height:1.8;color:var(--body)}.reg-done{width:100%;max-width:360px;display:flex;flex-direction:column;gap:26px}.reg-done-card{background:var(--ink);color:var(--on-ink);display:flex;flex-direction:column}.reg-done-head{padding:30px 30px 0;display:flex;flex-direction:column;gap:22px}.reg-done-top{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;letter-spacing:.3em;text-transform:uppercase}.reg-done-admit{font-size:10px;letter-spacing:.16em;color:var(--brass-on-dark)}.reg-done-title{font-family:var(--display);font-size:38px;line-height:1.02;color:var(--on-ink)}.reg-done-title-zh{font-family:var(--hk);font-size:14px;color:var(--muted-on-dark);margin-top:6px}.reg-done-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;border-top:1px solid rgba(247,245,241,.18);padding:18px 0 26px}.reg-done-cell{display:flex;flex-direction:column;gap:5px;min-width:0}.reg-done-cell span{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted-on-dark)}.reg-done-cell b{font-size:14px;font-weight:400;word-break:break-word}.reg-done-body{border-top:1px dashed rgba(247,245,241,.3);padding:26px 30px 30px;display:flex;align-items:center;gap:22px}.reg-done-qr{width:104px;height:104px;flex:none;border:1px solid rgba(247,245,241,.35);padding:6px;background:var(--on-ink)}.reg-done-stub{display:flex;flex-direction:column;gap:8px;min-width:0}.reg-done-id{font-size:22px;letter-spacing:.04em;line-height:1.2;color:var(--on-ink)}.reg-done-sent{font-size:12px;line-height:1.5;color:var(--brass-on-dark);word-break:break-word}.reg-done-idlabel{font:400 9px/1 var(--ui);letter-spacing:.18em;text-transform:uppercase;color:var(--muted-on-dark)}.reg-done-list{list-style:none;margin:0;padding:0;width:100%;display:flex;flex-direction:column;gap:10px}.reg-done-list li{display:flex;gap:10px;font-size:13px;line-height:1.6;color:var(--body);word-break:break-word}.reg-done-list .ok{color:var(--brass-text)}.reg-done-list .wait{color:var(--muted)}.reg-done-list .dim{color:var(--placeholder)}.reg-done-status{display:flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--brass-text)}.reg-done-btn{display:inline-flex;align-items:center;justify-content:center;height:46px;border:1px solid var(--ink);color:var(--ink);font-size:11px;letter-spacing:.16em;text-transform:uppercase;transition:background .14s ease-out,color .14s ease-out}.reg-done-btn:hover{background:var(--ink);color:var(--on-ink)}.pill-flat{color:var(--muted)}.reg-label{display:block;font:400 10px/1.3 var(--ui);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.reg-name-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px 32px}.reg-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:4px}.step-indicator{display:grid;grid-template-columns:repeat(4,1fr)}.step-item{padding-bottom:12px;border-bottom:1px solid var(--rule)}.home-page{min-height:100%;background:var(--paper)}.home-header{position:relative;background:var(--paper);border-bottom:1px solid var(--rule)}.home-topbar{max-width:1240px;margin:0 auto;height:52px;padding:0 40px;display:flex;align-items:center;gap:16px;border-bottom:1px solid var(--rule)}.home-header-inner{max-width:1240px;margin:0 auto;padding:0;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}.home-hero{padding:56px 48px 48px;display:flex;flex-direction:column;gap:26px;border-right:1px solid var(--rule)}.home-status{display:flex;align-items:center;gap:12px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--brass-text)}.home-status.closed{color:var(--muted)}.home-lockup{display:flex;align-items:center;gap:16px}.home-brand{font:400 12px/1 var(--ui);letter-spacing:.34em;text-transform:uppercase;color:var(--ink)}.home-org{font:400 11px/1 var(--ui);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.home-headline{display:flex;flex-direction:column;gap:14px}.home-title{margin:0;font-family:var(--display);font-weight:400;font-size:76px;line-height:.94;letter-spacing:-.015em;color:var(--ink)}.home-event{margin:0;font-size:15px;color:var(--body)}.home-sub{margin:0;font-size:15px;line-height:1.8;color:var(--body);max-width:54ch}.home-when{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--rule)}.home-when>div{padding:16px 0;display:flex;flex-direction:column;gap:6px}.home-when-label{font:400 10px/1 var(--ui);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.home-when-date,.home-when-venue{font-size:14px;color:var(--ink)}.home-plate{min-height:420px;background:var(--bone);padding:40px;display:flex;flex-direction:column;justify-content:space-between;gap:24px}.home-plate-mark{font:400 12px/1 var(--ui);letter-spacing:.34em;text-transform:uppercase;color:var(--muted)}.home-plate-name{font-family:var(--display);font-size:38px;line-height:1.05;color:var(--ink)}.home-plate-meta{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.home-grid{max-width:1240px;margin:0 auto;padding:0 40px 56px;display:flex;flex-direction:column}.portal-card{display:block;background:transparent;border-bottom:1px solid var(--rule);color:inherit}.portal-card:hover{text-decoration:none}.portal-register{border-bottom:1px solid var(--rule)}.portal-register-body{padding:40px 0;display:flex;justify-content:space-between;align-items:flex-end;gap:40px;flex-wrap:wrap}.portal-register-text{display:flex;flex-direction:column;gap:12px}.portal-open{color:var(--brass-text);letter-spacing:.18em}.portal-heading{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.portal-heading h2{margin:0;font-family:var(--display);font-size:32px;font-weight:400}.portal-heading-zh{font-size:13px;color:var(--muted)}.portal-desc{margin:0;font-size:15px;line-height:1.8;color:var(--body);max-width:62ch}.portal-register-act{display:flex;flex-direction:column;align-items:flex-end;gap:12px;flex-shrink:0}.portal-cta{display:inline-flex;align-items:center;justify-content:center;height:54px;padding:0 40px;background:var(--ink);color:var(--on-ink);font-size:12px;letter-spacing:.2em;text-transform:uppercase;transition:background .14s ease-out}.portal-card:hover .portal-cta{background:var(--brass)}.portal-price{font-size:11px;letter-spacing:.1em;color:var(--muted)}.portal-closed{color:var(--muted);letter-spacing:.18em}.home-team-rule{padding:34px 0 14px}.portal-team{padding:26px 0;display:flex;justify-content:space-between;align-items:center;gap:24px}.portal-team:last-child{border-bottom:0}.portal-team-text{display:flex;flex-direction:column;gap:6px}.portal-team-title{font-family:var(--display);font-size:21px}.portal-team-zh{font-size:13px;color:var(--muted)}.home-btn{display:inline-flex;align-items:center;justify-content:center;height:46px;padding:0 26px;border:1px solid var(--rule-strong);background:transparent;color:var(--body);font-size:11px;letter-spacing:.16em;text-transform:uppercase;flex-shrink:0;transition:border-color .14s ease-out,color .14s ease-out}.home-btn.btn-brand-outline,.portal-card:hover .home-btn{border-color:var(--ink);color:var(--ink)}.auth-split{display:flex;min-height:100vh;background:var(--paper)}.auth-brand{width:400px;flex-shrink:0;background:var(--ink);padding:48px 40px;display:flex;flex-direction:column;justify-content:space-between;gap:48px;color:var(--on-ink)}.auth-brand-top{display:flex;align-items:center;gap:16px}.auth-brand-top .rule-v{background:#f7f5f14d}.auth-brand-logo{font:400 12px/1 var(--ui);letter-spacing:.34em;text-transform:uppercase;color:var(--on-ink)}.auth-brand-org{font:400 10px/1 var(--ui);letter-spacing:.18em;text-transform:uppercase;color:var(--muted-on-dark)}.auth-brand-content{display:flex;flex-direction:column;gap:18px}.auth-brand-rule{width:28px;height:1px;background:var(--brass)}.auth-brand-content h2{margin:0;font-family:var(--display);font-size:38px;font-weight:400;line-height:1.05;color:var(--on-ink)}.auth-brand-content p{margin:0;font-family:var(--hk);font-size:14px;color:var(--muted-on-dark)}.auth-brand-tagline{font:400 10px/1.9 var(--ui);letter-spacing:.16em;text-transform:uppercase;color:var(--muted-on-dark)}.auth-form{flex:1;background:var(--paper);padding:56px 48px;display:flex;align-items:center;justify-content:center}.auth-form-inner{width:100%;max-width:380px}.auth-form-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:26px}.auth-form-top .auth-role{margin-bottom:0}.auth-role{display:inline-flex;align-items:center;font:400 10px/1 var(--ui);letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}.auth-form h2{margin:0;font-family:var(--display);font-size:38px;font-weight:400;line-height:1.05}.auth-form h2.auth-display{font-size:34px}.auth-sub{margin:10px 0 34px;font-size:14px;line-height:1.7;color:var(--muted)}.auth-form label{display:block;font:400 10px/1 var(--ui);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:26px 0 8px}.auth-form label:first-of-type{margin-top:0}.auth-submit{width:100%;margin-top:34px;height:54px;font-size:12px;letter-spacing:.2em}.auth-switch{margin:20px 0 0;font-size:13px;color:var(--muted)}.auth-switch a{border-bottom:1px solid var(--brass)}.auth-home{display:inline-block;margin-top:30px;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.auth-home:hover{color:var(--brass)}@media (max-width: 860px){.home-topbar,.home-grid{padding-left:20px;padding-right:20px}.home-header-inner{grid-template-columns:1fr}.home-hero{padding:40px 20px;border-right:0}.home-plate{display:none}.home-title{font-size:46px}.reg-bar-inner,.reg-container-inner,.reg-body{padding-left:20px;padding-right:20px}.reg-body{flex-direction:column}.reg-rail{width:100%;margin-left:0}.ticket-row{grid-template-columns:20px minmax(0,1fr)}.ticket-price{grid-column:2;text-align:left;margin-left:0}.ticket-avail{grid-column:2}.checkin-stage{grid-template-columns:1fr}.checkin-camera{border-right:0;border-bottom:1px solid var(--rule)}.auth-split{flex-direction:column}.auth-brand{width:auto;flex-direction:row;align-items:center;padding:20px;gap:16px}.auth-brand-content{display:none}.auth-form{padding:40px 20px}.reg-name-grid{grid-template-columns:1fr}.admin-main{padding:24px 20px 40px}}.orgfield{position:relative}.orgfield input{width:100%}.orgfield input.orgfield-chosen{color:var(--ink);border-bottom-color:var(--ink)}.orgfield-clear{position:absolute;top:40%;right:2px;transform:translateY(-50%);width:24px!important;height:24px!important;padding:0!important;border:0!important;background:transparent!important;color:var(--muted)!important;font-size:16px!important;line-height:1!important;cursor:pointer}.orgfield-clear:hover{color:var(--ink)!important}.orgfield-menu{position:absolute;z-index:60;top:calc(100% + 1px);left:0;right:0;max-height:288px;overflow-y:auto;background:var(--paper);border:1px solid var(--rule-strong)}.orgfield-menu .menu-item{display:flex;align-items:baseline;justify-content:space-between;gap:12px;cursor:pointer}.orgfield-menu .orgfield-other{border-top:1px solid var(--rule-strong);color:var(--muted);font-style:italic}.orgfield-empty{padding:14px 16px;color:var(--muted);font-size:14px}.reg-dup{border:1px solid var(--rule-strong);border-left:1px solid var(--brass);background:var(--bone);padding:22px 24px;margin-bottom:26px}.reg-dup-title{margin:0 0 8px;font-family:var(--display);font-size:24px;font-weight:400;color:var(--ink)}.reg-dup-body{margin:0 0 16px;font-size:14px;line-height:1.7;color:var(--body)}.reg-dup-list{list-style:none;margin:0 0 18px;padding:0;display:flex;flex-direction:column;border-top:1px solid var(--rule-strong)}.reg-dup-list li{display:flex;flex-wrap:wrap;align-items:baseline;gap:12px;padding:12px 0;border-bottom:1px solid var(--rule-strong);font-size:14px}.reg-dup-why{margin-left:auto;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--brass-text);white-space:nowrap}.reg-dup-acts{display:flex;flex-wrap:wrap;gap:12px}.anomaly-bar{border:1px solid var(--rule);border-left:1px solid var(--brass);background:transparent;padding:16px 20px;margin-bottom:20px}.anomaly-head{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.anomaly-title{font-size:14px;color:var(--ink)}.anomaly-kinds{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.anomaly-chip{display:inline-flex;align-items:baseline;gap:6px;padding:4px 10px;border:1px solid var(--rule);background:transparent;font-size:12px;color:var(--body)}.anomaly-chip b{color:var(--ink);font-weight:400}.anomaly-duplicate{border-color:var(--brass)}.tag-amber{color:var(--brass-text);border-color:var(--brass)}.cell-deliver{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.agenda-box{grid-column:span 1;min-height:220px;font-size:12.5px;line-height:1.7;resize:vertical;white-space:pre;overflow-wrap:normal;overflow-x:auto}
