@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/original-subset-0.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/original-subset-1.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/original-subset-2.woff2)format("woff2")}@font-face{font-family:Noto Sans SC;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/original-subset-3.woff2)format("woff2")}@font-face{font-family:Noto Sans SC;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/original-subset-4.woff2)format("woff2")}@font-face{font-family:Noto Sans SC;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/original-subset-5.woff2)format("woff2")}@font-face{font-family:Noto Sans SC;font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/original-subset-6.woff2)format("woff2")}@font-face{font-family:Noto Serif SC;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/original-subset-7.woff2)format("woff2")}@font-face{font-family:Noto Serif SC;font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/original-subset-8.woff2)format("woff2")}:root{--h5-max-width:430px;color:#172033;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#f4f6f8;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}@media (min-width:431px){:root{scrollbar-gutter:stable}}a{color:#8f2028;font-weight:650}a,button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}a:active,button:not(:disabled):active{opacity:.72}*{box-sizing:border-box}body{min-height:100vh;min-height:100dvh;margin:0}#root{width:100%;max-width:var(--h5-max-width);min-height:100vh;min-height:100svh;overflow-wrap:anywhere;-webkit-user-select:none;user-select:none;min-height:100dvh;margin-inline-start:auto;margin-inline-end:auto}#root input,#root textarea,#root [contenteditable=true]{-webkit-user-select:text;user-select:text}button{color:#fff;min-height:44px;font:inherit;cursor:pointer;background:#172033;border:1px solid #172033;border-radius:.25rem;padding:.625rem 1rem;font-weight:600}.link-button{color:#8f2028;background:0 0;border:0;padding-inline-start:0;padding-inline-end:0}img,video,canvas,svg{max-width:100%;height:auto}button:disabled{cursor:not-allowed;opacity:.7}button:disabled[aria-busy=true]{cursor:wait}button:focus-visible{outline-offset:3px;outline:3px solid #2368d3}.status-page{width:100%;padding:calc(3rem + env(safe-area-inset-top,0px)) calc(1.25rem + env(safe-area-inset-right,0px)) calc(6rem + env(safe-area-inset-bottom,0px)) calc(1.25rem + env(safe-area-inset-left,0px));margin:0 auto}.h5-startup{min-height:100vh;min-height:100svh;min-height:100dvh;padding:calc(20px + env(safe-area-inset-top,0px)) calc(20px + env(safe-area-inset-right,0px)) calc(20px + env(safe-area-inset-bottom,0px)) calc(20px + env(safe-area-inset-left,0px));color:var(--ledger-ink);background:linear-gradient(90deg, #8a1f1f05 1px, transparent 1px), linear-gradient(#8a1f1f05 1px, transparent 1px), var(--ledger-paper);text-align:center;background-size:20px 20px;place-items:center;display:grid;overflow:hidden}.h5-startup__content{opacity:0;justify-items:center;gap:8px;transition:opacity .16s ease-out,transform .16s ease-out;display:grid;transform:translateY(4px)}.h5-startup__content.is-visible{opacity:1;transform:translateY(0)}.h5-startup__mark{place-items:center;width:92px;height:92px;margin-bottom:4px;display:grid;position:relative}.h5-startup__mark:before{border:1px solid #c9a24a57;border-top-color:var(--ledger-red);border-right-color:var(--ledger-gold);content:"";border-radius:50%;animation:1.8s linear infinite h5-startup-orbit;position:absolute;top:0;bottom:0;left:0;right:0}.h5-startup__mark img{filter:drop-shadow(0 8px 12px #2b1a121f);width:72px;height:72px;animation:1.8s ease-in-out infinite h5-startup-breathe}.h5-startup strong{color:var(--ledger-red);font:700 15px/1.4 var(--serif);letter-spacing:.18em}.h5-startup p{color:var(--ledger-muted);font:13px/1.6 var(--sans);margin:0}.route-progress{z-index:100;top:calc(10px + env(safe-area-inset-top,0px));width:max-content;max-width:calc(min(100vw, var(--h5-max-width)) - 32px);color:#fff8e8;pointer-events:none;background:#5c1d22f0;border:1px solid #d4bd8c;border-radius:8px;padding:7px 12px;font-size:13px;font-weight:700;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 6px 18px #2b1a122e}.route-error{min-height:100vh;min-height:100svh;color:#2b1a12;background:#f3ead4;min-height:100dvh}.route-error p:not(.eyebrow){color:#685e52;max-width:28em;line-height:1.8}.route-error__actions{gap:12px;max-width:320px;margin-top:24px;display:grid}@keyframes h5-startup-orbit{to{transform:rotate(360deg)}}@keyframes h5-startup-breathe{50%{opacity:.86;transform:scale(.96)}}html[data-h5-motion=off] .h5-startup__content{transition:none}html[data-h5-motion=off] .h5-startup__mark:before{animation:none}html[data-h5-motion=off] .h5-startup__mark img{animation:none}.eyebrow{color:#526176;letter-spacing:.08em;text-transform:uppercase;margin:0 0 .5rem;font-size:.875rem;font-weight:700}h1,h2,p{margin-top:0}h1{margin-bottom:2rem;font-size:clamp(1.75rem,7vw,2.5rem);line-height:1.2}h2{margin-bottom:1rem;font-size:1.125rem}.status-panel{border-top:3px solid #172033;padding-top:1.25rem}.status-message{background:#fff;border-left:4px solid;padding:.875rem 1rem}.status-message--loading{color:#41516a}.status-message--success{color:#17673b}.status-message--error{color:#9d2626}.status-message--error p{margin-bottom:1rem}.status-title{margin-bottom:.25rem;display:block}.officer-identity-header{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:11px;margin-bottom:14px;display:grid}.officer-identity-header>img,.officer-identity-mark{border:2px solid var(--ledger-gold);object-fit:cover;border-radius:4px;width:48px;height:48px}.officer-identity-mark{color:#f6e8c8;background:var(--ledger-red);font:900 18px var(--serif);place-items:center;display:grid;box-shadow:0 6px 14px #8a1f1f38}.officer-identity-header h1{font:800 16px/1.4 var(--sans);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.officer-identity-header p{color:var(--ledger-red);font:700 10px/1.5 var(--mono);text-overflow:ellipsis;white-space:nowrap;margin:1px 0 0;overflow:hidden}@media (max-width:340px){.officer-identity-header{gap:8px}}.activity-access{text-align:center}.activity-access .ledger-content{padding:calc(clamp(80px, 18svh, 160px) + env(safe-area-inset-top,0px)) 28px calc(48px + env(safe-area-inset-bottom,0px))}.activity-access-mark{object-fit:contain;width:112px;height:112px;margin:0 auto 28px;display:block}.activity-access .ledger-heading{margin-bottom:0}.activity-access .ledger-heading small{letter-spacing:.16em;font-size:14px}.activity-access .ledger-heading h1{text-wrap:balance;margin:16px 0;font-size:32px;line-height:1.4}.activity-access .ledger-heading p{max-width:18em;color:var(--ledger-ink);text-wrap:balance;margin:0 auto;font-size:16px;line-height:1.8}.activity-access-countdown{color:var(--ledger-seal);font-variant-numeric:tabular-nums;margin-top:24px;font-size:20px;line-height:1.5;display:block}.activity-access .ledger-button{width:100%;max-width:320px;min-height:56px;margin:32px auto 0;font-size:16px}:root{--ledger-paper:#f3ead4;--ledger-card:#fffdf7;--ledger-ink:#2b1a12;--ledger-muted:#827159;--ledger-red:#8a1f1f;--ledger-red-bright:#a52c34;--ledger-gold:#c9a24a;--ledger-line:#dac79d;--ledger-green:#327248;--ledger-blue:#365a9d;--serif:Georgia, "Noto Serif SC", "Songti SC", serif;--sans:"Noto Sans SC", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mono:"JetBrains Mono", ui-monospace, SFMono-Regular, monospace}.ledger-page{min-height:100vh;min-height:100svh;min-height:100dvh;color:var(--ledger-ink);background:linear-gradient(90deg, #8a1f1f05 1px, transparent 1px), linear-gradient(#8a1f1f05 1px, transparent 1px), var(--ledger-paper);font:13px/1.65 var(--sans);background-size:20px 20px;position:relative}.ledger-content{width:100%;padding:calc(58px + env(safe-area-inset-top,0px)) 17px calc(42px + env(safe-area-inset-bottom,0px))}.ledger-page--management .ledger-content{padding-bottom:calc(106px + env(safe-area-inset-bottom,0px))}.ledger-heading{margin-bottom:20px}.ledger-heading small{color:var(--ledger-red);letter-spacing:.18em;font-size:10px;font-weight:750}.ledger-heading h1{font:900 25px/1.4 var(--serif);letter-spacing:-.02em;margin:7px 0}.ledger-heading p{color:var(--ledger-muted);margin:0;font-size:11px}.ledger-back{min-height:44px;color:var(--ledger-red);background:0 0;border:0;margin:-10px 0 6px;padding:0 8px 0 0;font-size:21px}.ledger-back span{vertical-align:2px;font-size:12px}.ledger-card{border:1px solid var(--ledger-line);background:var(--ledger-card);border-radius:11px;margin-bottom:15px;padding:16px;position:relative;box-shadow:0 8px 22px #4626140d}.ledger-card h2{font:800 15px/1.45 var(--serif);margin:0 0 11px}.ledger-card h3{margin:0 0 6px;font-size:13px}.ledger-card p{color:var(--ledger-muted);margin:6px 0}.ledger-seal{width:58px;height:58px;color:var(--ledger-red);text-align:center;font:7px/1.2 var(--serif);opacity:.86;border:2px solid;border-radius:50%;place-content:center;display:grid;position:absolute;top:15px;right:15px;transform:rotate(-7deg)}.ledger-seal strong{letter-spacing:.08em;font-size:12px;display:block}.status-tag{min-height:24px;color:var(--ledger-red);white-space:nowrap;border:1px solid;border-radius:999px;align-items:center;padding:2px 8px;font-size:10px;font-weight:700;display:inline-flex}.status-tag--gold{color:#8a682d;background:#fbf2da}.status-tag--green{color:var(--ledger-green);background:#edf6ef}.status-tag--blue{color:var(--ledger-blue);background:#eef2ff}.status-tag--muted{color:var(--ledger-muted);background:#f6f0e4}.stat-grid{grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0;display:grid}.stat-grid>div{text-align:center;min-width:0}.stat-grid strong{color:var(--ledger-red);font:800 23px/1.4 var(--mono);display:block}.stat-grid span{color:var(--ledger-muted);font-size:9px}.data-row{border-bottom:1px solid color-mix(in srgb, var(--ledger-line), transparent 30%);justify-content:space-between;align-items:center;gap:12px;min-height:43px;display:flex}.data-row:last-child{border-bottom:0}.data-row span{color:var(--ledger-muted)}.data-row strong{text-align:right;font-size:12px}.ledger-button{border:1px solid var(--ledger-red);color:#fff5df;background:var(--ledger-red);width:100%;min-height:46px;font:700 13px var(--sans);border-radius:8px;justify-content:center;align-items:center;margin-top:10px;padding:10px 13px;text-decoration:none;display:flex}.ledger-button--secondary{color:var(--ledger-red);background:0 0}.ledger-link{min-height:44px;color:var(--ledger-red);background:0 0;border:0;padding:10px 0;font-size:11px}.button-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.button-row .ledger-button{min-width:0}.page-footnote{color:var(--ledger-muted);text-align:center;margin-top:18px;font-size:10px}.filter-pills{gap:8px;margin:13px 0;display:flex}.filter-pills button{border:1px solid var(--ledger-line);min-height:36px;color:var(--ledger-muted);background:var(--ledger-card);border-radius:18px;padding:6px 12px;font-size:10px}.filter-pills button[aria-pressed=true]{border-color:var(--ledger-red);color:#fff;background:var(--ledger-red)}.ledger-timeline{margin:0;padding:0;list-style:none}.ledger-timeline li{grid-template-columns:23px 1fr;gap:10px;min-height:58px;display:grid}.ledger-timeline i{border:1px solid var(--ledger-line);width:20px;height:20px;color:var(--ledger-muted);border-radius:50%;place-items:center;font-size:10px;font-style:normal;display:grid}.ledger-timeline .is-done i{border-color:var(--ledger-red);color:var(--ledger-red)}.ledger-timeline strong{font-size:12px;display:block}.ledger-timeline p{color:var(--ledger-muted);margin:2px 0;font-size:10px}.management-nav{z-index:30;right:auto;bottom:calc(10px + env(safe-area-inset-bottom,0px));width:min(calc(100% - 28px), calc(var(--h5-max-width) - 28px));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffdf7f0;border:1px solid #c9a24a8c;border-radius:18px;grid-template-columns:repeat(3,1fr);gap:4px;padding:6px;display:grid;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #2b1a121f}.management-nav button{color:#766957;min-width:0;min-height:50px;font:11px var(--sans);background:0 0;border:0;border-radius:12px;padding:4px}.management-nav button span{margin-bottom:2px;font:22px/1 system-ui;display:block}.management-nav button[aria-current=page]{color:var(--ledger-red);background:#f7ece7;font-weight:800}.h5-dialog{inset:auto max(0px, calc((100vw - var(--h5-max-width)) / 2)) 0;width:min(100vw, var(--h5-max-width));border:1px solid var(--ledger-line);max-width:none;max-height:min(82dvh,720px);padding:22px 20px calc(22px + env(safe-area-inset-bottom,0px));color:var(--ledger-ink);background:var(--ledger-card);font-family:var(--sans);border-radius:23px 23px 0 0;margin:0;position:fixed}.h5-dialog::backdrop{background:#140f0cad}.h5-dialog h2{font:900 23px var(--serif);margin:8px 36px 16px 0}.dialog-grip{background:var(--ledger-line);border-radius:4px;width:36px;height:4px;margin:-10px auto 10px}.dialog-close{min-width:44px;color:var(--ledger-muted);background:0 0;border:0;padding:0;font-size:26px;position:absolute;top:12px;right:12px}.dialog-body{color:var(--ledger-muted);font-size:12px;line-height:1.8}.dialog-body label{margin-top:12px;display:block}.dialog-body input,.dialog-body textarea{border:1px solid var(--ledger-line);width:100%;min-height:46px;color:var(--ledger-ink);font:inherit;background:#fffefa;border-radius:7px;margin-top:6px;padding:10px;font-size:16px}.dialog-body textarea{resize:vertical;min-height:78px}.h5-dialog>footer{margin-top:18px}.hero-amount{color:var(--ledger-red);font:850 34px/1.35 var(--mono);margin:8px 0}.hero-amount small{margin-right:4px;font-size:18px}.progress-track{background:#e7dac0;border-radius:9px;height:7px;overflow:hidden}.progress-track>i{border-radius:inherit;background:var(--ledger-red);height:100%;display:block}.person-row{border-bottom:1px solid var(--ledger-line);grid-template-columns:42px 1fr auto;align-items:center;gap:10px;padding:11px 0;display:grid}.person-row:last-child{border-bottom:0}.person-avatar{color:#fff3da;background:var(--ledger-red);width:40px;height:40px;font:800 18px var(--serif);border-radius:8px;place-items:center;display:grid}.person-row strong{font-size:12px;display:block}.person-row p{margin:2px 0;font-size:10px}.qr-placeholder{aspect-ratio:1;outline:1px solid var(--ledger-line);width:154px;color:var(--ledger-red);background:repeating-conic-gradient(#2b1a12 0 8%, #fff 0 14%);font:900 20px var(--serif);border:9px solid #fff;place-items:center;margin:16px auto;display:grid}.media-frame{color:#fff;text-align:center;background:linear-gradient(145deg,#170f0d,#5c1d22);border-radius:10px;place-items:center;min-height:225px;display:grid;overflow:hidden}.media-frame strong{font:900 24px var(--serif)}@media (max-width:340px){.ledger-content{padding-inline-start:13px;padding-inline-end:13px}.button-row{grid-template-columns:1fr}.stat-grid strong{font-size:19px}}html[data-h5-motion=off] *{scroll-behavior:auto!important;transition:none!important;animation:none!important}html[data-h5-motion=off] :before{scroll-behavior:auto!important;transition:none!important;animation:none!important}html[data-h5-motion=off] :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.activity-runtime-notice{border-left:3px solid var(--ledger-red)}.activity-runtime-notice strong,.activity-runtime-notice small{display:block}.activity-runtime-notice p{color:var(--ledger-muted);margin:.45rem 0 0}.activity-runtime-notice small{color:var(--ledger-gold);margin-top:.45rem}.activity-runtime-notice--countdown{color:var(--ledger-red);background:#fff9ec;border-left-width:1px;padding:13px 16px}.activity-countdown__top{justify-content:space-between;align-items:center;gap:12px;display:flex}.activity-countdown__top strong{font-size:12px}.activity-countdown__top span{color:var(--ledger-muted);font-size:10px}.activity-countdown__clock{justify-content:center;align-items:center;gap:10px;margin:12px 0 9px;display:flex}.activity-countdown__clock>span{align-items:center;gap:6px;display:flex}.activity-countdown__clock b{box-sizing:border-box;background:var(--ledger-red);color:#fff4dc;text-align:center;min-width:43px;font:800 23px/1.15 var(--mono);font-variant-numeric:tabular-nums;border-radius:5px;padding:7px 5px}.activity-countdown__clock small{color:var(--ledger-red);margin:0;font-size:10px;font-weight:650}.activity-runtime-notice--countdown>p{color:var(--ledger-muted);text-align:center;margin:0;font-size:10px}.activity-runtime-notice--countdown .activity-countdown__scope{text-align:center;margin-top:7px}.h5-toast-stack{z-index:30;right:17px;bottom:calc(24px + env(safe-area-inset-bottom,0px));pointer-events:none;width:min(396px,100vw - 34px);margin-inline-start:auto;margin-inline-end:auto;padding-top:24px;display:grid;position:fixed;left:17px}.ledger-page--management .h5-toast-stack{bottom:calc(86px + env(safe-area-inset-bottom,0px))}.h5-toast{border:1px solid var(--ledger-gold);color:#fff7e6;background:var(--ledger-ink);transform-origin:bottom;border-radius:10px;grid-area:1/1;align-items:center;gap:8px;width:100%;padding:12px 14px;font-size:12px;font-weight:600;line-height:1.6;transition:transform .18s,opacity .18s;animation:3s both h5-toast;display:flex;position:relative;box-shadow:0 12px 30px #22180c42}.h5-toast:last-child{z-index:4;transform:translateY(0)scale(1)}.h5-toast:nth-last-child(2){z-index:3;transform:translateY(-8px)scale(.98)}.h5-toast:nth-last-child(3){z-index:2;transform:translateY(-16px)scale(.96)}.h5-toast:nth-last-child(4){z-index:1;transform:translateY(-24px)scale(.94)}.h5-toast:nth-last-child(n+5){opacity:0;visibility:hidden;animation:none;transform:translateY(-24px)scale(.94)}.h5-toast>span:first-child{width:20px;height:20px;color:var(--ledger-ink);background:var(--ledger-gold);border-radius:50%;flex:none;place-items:center;font-size:11px;font-weight:900;display:grid}@keyframes h5-toast{0%{opacity:0}8%,86%{opacity:1}to{opacity:0}}html[data-h5-motion=off] .h5-toast{animation:none}@media (max-width:340px){.activity-countdown__clock{gap:5px}.activity-countdown__clock>span{gap:4px}.activity-countdown__clock b{min-width:40px}}.auth-page .ledger-content{min-height:100vh;min-height:100dvh;padding:calc(78px + env(safe-area-inset-top,0px)) 22px calc(44px + env(safe-area-inset-bottom,0px));flex-direction:column;display:flex}.auth-mark{border:2px solid var(--ledger-gold);color:#f6e8c8;width:74px;height:74px;font:900 26px var(--serif);background:linear-gradient(160deg,#a02a2a,#711414);border-radius:4px;place-items:center;margin-bottom:26px;display:grid;box-shadow:0 8px 18px #8a1f1f4d}.auth-eyebrow{color:var(--ledger-red);letter-spacing:.3em;margin:0 0 10px;font-size:11px;font-weight:700}.auth-page h1{font:900 30px/1.25 var(--serif);white-space:nowrap;margin:0 0 12px}.auth-description{color:var(--ledger-muted);margin:0 0 34px;font-size:13px;line-height:1.8}.identity-card{margin-bottom:4px;padding:18px}.identity-card__heading{justify-content:space-between;align-items:center;min-height:58px;display:flex}.identity-card__heading>strong{color:var(--ledger-red);font-size:11px}.identity-card__heading .ledger-seal{flex:none;width:48px;height:48px;margin-right:8px;position:static}.identity-card .data-row{border:0;min-height:32px}.identity-card .data-row span{color:var(--ledger-ink)}.verified-value{font-weight:500;color:var(--ledger-green)!important}.identity-number{font-family:var(--mono);font-weight:500;color:var(--ledger-red)!important}.auth-page .ledger-button{min-height:50px;margin-top:10px;font-size:15px}.auth-invite{color:#a68d64;justify-content:center;align-items:center;margin:8px 0 0;font-size:11px;display:flex}.auth-invite .ledger-button{width:auto;min-height:44px;color:var(--ledger-red);box-shadow:none;background:0 0;border:0;margin:0;padding:8px 2px;font-size:11px}.auth-footnote{color:#a68d64;text-align:center;margin:auto 0 0;font-size:10px}.auth-page .h5-dialog{--wechat-ink:#17212b;--wechat-muted:#66717b;--wechat-green:#05c96d;width:min(100vw - 32px,300px);max-height:calc(100dvh - 32px);color:var(--wechat-ink);background:#fff;border:0;border-radius:14px;margin:auto;padding:20px 20px 14px;top:0;bottom:0;left:0;right:0;transform:translateY(-24px);box-shadow:0 24px 72px #00000047}.auth-page .h5-dialog::backdrop{background:#01050ef0}.auth-page .dialog-grip{display:none}.auth-page .h5-dialog>h2{clip:rect(0 0 0 0);width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.auth-page .dialog-close{display:none}.wechat-login-brand{outline:0;align-items:center;gap:10px;margin-bottom:14px;display:flex}.wechat-login-brand img{object-fit:contain;flex:none;width:40px;height:40px}.wechat-login-brand span{min-width:0}.wechat-login-brand strong{color:#111820;font-size:15px;line-height:1.35;display:block}.wechat-login-brand small{color:#89919a;margin-top:2px;font-size:11px;line-height:1.35;display:block}.wechat-login-permission>h3{color:#17212b;border-bottom:1px solid #edf0f2;margin:0;padding-bottom:12px;font-size:14px;font-weight:500;line-height:1.5}.wechat-login-permission>div{padding:11px 0 0 11px;position:relative}.wechat-login-permission>div:before{content:"";background:#d9a425;border-radius:50%;width:4px;height:4px;position:absolute;top:17px;left:0}.wechat-login-permission strong{color:#17212b;font-size:13px;line-height:1.5;display:block}.wechat-login-permission p{color:#89919a;margin:1px 0 0;font-size:11px;line-height:1.5}.auth-page .h5-dialog footer{margin-top:23px}.auth-page .wechat-login-button{color:#fff;background:0 0;border:0;width:calc(100% - 8px);min-height:44px;margin:0 4px;padding:10px 12px;font-size:13px;font-weight:700;position:relative}.auth-page .wechat-login-button:before{content:"";background:var(--wechat-green);border-radius:8px;position:absolute;top:2px;bottom:2px;left:0;right:0;box-shadow:0 0 0 3px #fff,0 0 0 5px #f0bd4e}.auth-page .wechat-login-button>span{position:relative}.auth-page .wechat-login-button:hover:before{background:#05b961}.auth-page .wechat-login-button:focus-visible{outline-offset:6px;outline:3px solid #05c96d47}.auth-page .wechat-login-button:disabled{cursor:wait}.wechat-login-error{color:#9d2626;margin:12px 0 0 11px;font-size:12px;line-height:1.6}.wechat-login-privacy{color:#a1a7ae;text-align:center;margin:17px -4px 0;font-size:10px;line-height:1.5}.amount-card{min-height:145px;padding-top:22px}.amount-card>span{color:var(--ledger-muted);font-size:11px}.recruit-performance-card .stat-grid{margin-bottom:0}.recruit-performance-card .stat-grid>div{border:1px solid color-mix(in srgb, var(--ledger-line), transparent 22%);background:color-mix(in srgb, var(--ledger-paper), transparent 12%);border-radius:6px;padding:9px 4px}.recruit-performance-stat-link{color:inherit;border-radius:4px;text-decoration:none;display:block}.recruit-performance-stat-link:after{content:"查看 ›";color:var(--ledger-red);font:700 8px/1.2 var(--sans);margin-top:2px;display:block}.recruit-performance-stat-link:focus-visible{outline:2px solid var(--ledger-red);outline-offset:3px}.recruit-action-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-bottom:15px;display:grid}.recruit-action-grid .ledger-card{flex-direction:column;min-width:0;min-height:154px;margin:0;display:flex}.recruit-action-grid .ledger-card:first-child{color:#f6e8c8;background:var(--ledger-red);box-shadow:0 8px 18px #8a1f1f38}.recruit-action-grid .ledger-card:first-child p{color:#f6e8c8cc}.recruit-action-grid .ledger-card:first-child .ledger-button{color:var(--ledger-red);background:#f6e8c8}.recruit-action-grid .ledger-card>p{flex:1;font-size:10px}.recruit-action-grid .ledger-button{min-height:44px;margin-top:8px;padding-inline-start:8px;padding-inline-end:8px;font-size:11px}.recruit-pending-card{border-left:3px solid var(--ledger-gold);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:13px;display:grid}.recruit-pending-card h2{font:750 12px/1.45 var(--sans);margin:0}.recruit-pending-card p{font:9px/1.5 var(--mono);margin:1px 0 0}.recruit-pending-card .ledger-button{width:auto;min-width:56px;min-height:44px;margin:0;padding:7px 10px;font-size:11px}.recruit-list-avatar{border:1px solid var(--ledger-gold);background:color-mix(in srgb, var(--ledger-gold), transparent 78%);object-fit:cover;border-radius:4px;width:34px;height:34px}.recruit-pending-avatar-fallback{color:var(--ledger-red);font:700 13px/1 var(--sans);place-items:center;display:grid}.recruit-officer-list>header{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px;display:flex}.recruit-officer-list>header h2{margin:0}.recruit-officer-list>header .ledger-button{width:auto;min-height:44px;color:var(--ledger-red);box-shadow:none;background:0 0;border:0;margin:-10px 0;padding:10px 0 10px 12px;font-size:10px}.recruit-officer-list ul{margin:0;padding:0;list-style:none}.recruit-officer-list li{border-top:1px solid color-mix(in srgb, var(--ledger-line), transparent 40%);grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:54px;display:grid}.recruit-officer-list li:first-child{border-top:0}.recruit-officer-list li .recruit-list-avatar{width:28px;height:28px}.recruit-person-copy{min-width:0}.recruit-person-copy strong,.recruit-person-copy small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.recruit-person-copy strong{font-size:12px}.recruit-person-copy small{color:var(--ledger-muted);margin-top:3px;font-size:9px}.recruit-person-result{justify-items:end;gap:3px;display:grid}.recruit-person-status{color:var(--ledger-red);white-space:nowrap;font-size:9px;font-weight:750}.recruit-person-status--approved{color:var(--ledger-green)}.recruit-person-status--rejected,.recruit-person-status--conflict{color:var(--ledger-muted)}.recruit-person-result b{color:var(--ledger-green);font:700 11px var(--mono)}.recruit-access-actions{gap:14px;width:100%;max-width:320px;margin:32px auto 0;display:grid}.recruit-access-option{gap:8px;display:grid}.recruit-access-option>p{color:var(--ledger-muted);text-align:center;margin:0;font-size:13px;line-height:1.6}.recruit-access-choice-divider{color:var(--ledger-muted);font:700 11px/1 var(--sans);align-items:center;gap:12px;margin:0;display:flex}.recruit-access-choice-divider:before,.recruit-access-choice-divider:after{background:color-mix(in srgb, var(--ledger-line), transparent 30%);content:"";flex:1;height:1px}.activity-access .recruit-access-actions .ledger-button{margin:0}.recruit-access .ledger-content{padding-top:calc(clamp(40px, 8svh, 72px) + env(safe-area-inset-top,0px))}.recruit-access .activity-access-mark{width:96px;height:96px;margin-bottom:20px}.recruit-access .ledger-heading h1{margin-block-start:12px;margin-block-end:12px;font-size:clamp(28px,8vw,32px)}.recruit-access .recruit-access-actions{gap:12px;margin-top:24px}.poster-card{text-align:left;padding:25px 20px}.poster-card>h2{width:72%;margin-top:35px;font-size:22px}.poster-card>small{color:var(--ledger-red);font:8px var(--mono);letter-spacing:.12em}.centered{text-align:center}.play-symbol{border:1px solid #fff8;border-radius:50%;place-items:center;width:52px;height:52px;margin:0 auto 18px;display:grid}.media-frame p{color:#e4cfc0}.numbered-list{color:var(--ledger-muted);padding-left:22px}.numbered-list li{margin:10px 0;padding-left:5px}.recruitment-poster-page{height:100svh;height:100dvh;overflow:hidden}.recruitment-poster-page .ledger-content{height:100%;padding:calc(8px + env(safe-area-inset-top,0px)) 18px calc(18px + env(safe-area-inset-bottom,0px));grid-template-rows:44px minmax(0,1fr) auto;gap:12px;display:grid;overflow:hidden}.recruitment-poster-page .ledger-back{z-index:1;grid-area:1/1;place-self:center start;margin:0}.recruitment-poster-page .recruitment-poster-title{max-width:calc(100% - 112px);font:900 21px/1.3 var(--serif);letter-spacing:-.02em;text-align:center;grid-area:1/1;place-self:center;margin:0}.recruitment-poster-page .recruitment-material{flex-direction:column;justify-content:center;justify-self:center;align-items:center;gap:6px;width:min(100%,360px);min-height:0;margin:0;display:flex;overflow:hidden}.recruitment-poster-page .recruitment-poster-frame{border:1px solid color-mix(in srgb, var(--ledger-line), transparent 18%);background:#eee5d3;border-radius:8px;flex:none;width:auto;max-width:100%;height:calc(100% - 26px);min-height:0;max-height:min(100% - 26px,540px);position:relative;overflow:hidden;box-shadow:0 14px 34px #3b2b1429}.recruitment-poster-page .recruitment-poster-frame.is-static{height:calc(100% - 96px);max-height:min(100% - 96px,540px)}.recruitment-poster-page .recruitment-poster-image{opacity:0;object-fit:contain;width:100%;height:100%;box-shadow:none;border:0;transition:opacity .18s ease-out;position:absolute;top:0;bottom:0;left:0;right:0}.recruitment-poster-page .recruitment-poster-image.is-loaded{opacity:1}.recruitment-poster-skeleton{background:linear-gradient(135deg,#ffffff59,#0000 48%),#e9dfca;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.recruitment-poster-skeleton:after{content:"";background:linear-gradient(105deg,#0000 25%,#ffffff94 45%,#0000 65%);animation:1.35s ease-in-out infinite recruitment-poster-shimmer;position:absolute;top:0;bottom:0;left:0;right:0;transform:translate(-100%)}.recruitment-poster-page .recruitment-save-hint{flex:none;margin:0}.recruitment-poster-page .recruitment-static-qr{flex:none;align-items:center;gap:8px;margin-top:2px;display:flex}.recruitment-poster-page .recruitment-static-qr img{width:64px;height:64px}.recruitment-poster-page .recruitment-copy-card{border-color:color-mix(in srgb, var(--ledger-line), transparent 24%);background:color-mix(in srgb, var(--ledger-card), var(--ledger-paper) 16%);flex-direction:column;justify-self:center;gap:8px;width:min(100%,360px);height:214px;min-height:214px;margin:0;padding:10px 12px;display:flex;overflow:hidden;box-shadow:0 8px 24px #3b2b1414}.recruitment-copy-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.recruitment-poster-page .recruitment-copy-card h2{margin:0;font-size:13px}.recruitment-copy-refresh{min-width:76px;min-height:32px;color:var(--ledger-red);background:color-mix(in srgb, var(--ledger-red), transparent 92%);font:700 11px/1.4 var(--sans);cursor:pointer;border:0;border-radius:4px;padding:5px 8px}.recruitment-copy-refresh:focus-visible{outline:2px solid var(--ledger-red);outline-offset:2px}.recruitment-copy-refresh:disabled{opacity:.52;cursor:wait}.recruitment-poster-page .recruitment-copy-action{width:100%;min-height:44px;margin:0;padding:8px 10px}.recruitment-copy-body{flex:1;min-width:0;min-height:0;overflow:hidden}.recruitment-poster-page .recruitment-copy-text{overscroll-behavior:contain;height:100%;color:var(--ledger-muted);scrollbar-color:color-mix(in srgb, var(--ledger-red), transparent 44%) color-mix(in srgb, var(--ledger-line), transparent 72%);scrollbar-width:thin;-webkit-overflow-scrolling:touch;padding-right:6px;line-height:1.55;overflow-y:auto}.recruitment-poster-page .recruitment-copy-text::-webkit-scrollbar{width:6px}.recruitment-poster-page .recruitment-copy-text::-webkit-scrollbar-track{background:color-mix(in srgb, var(--ledger-line), transparent 72%);border-radius:999px}.recruitment-poster-page .recruitment-copy-text::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--ledger-red), transparent 44%);background-clip:padding-box;border:1px solid #0000;border-radius:999px}.recruitment-copy-generating{height:100%;color:var(--ledger-muted);align-items:center;gap:8px;font-size:12px;display:flex}.recruitment-copy-generating>span{gap:3px;display:inline-flex}.recruitment-copy-generating i{background:var(--ledger-red);border-radius:50%;width:5px;height:5px;animation:.9s ease-in-out infinite recruitment-copy-pulse}.recruitment-copy-generating i:nth-child(2){animation-delay:.12s}.recruitment-copy-generating i:nth-child(3){animation-delay:.24s}.recruitment-poster-page .recruitment-material__loading,.recruitment-poster-page .recruitment-material__error{width:100%;height:100%;min-height:0}.recruitment-material{margin-bottom:18px}.recruitment-material__loading,.recruitment-material__error{border:1px solid var(--ledger-line);min-height:240px;color:var(--ledger-muted);background:color-mix(in srgb, var(--ledger-paper), #fff 28%);text-align:center;border-radius:8px;place-items:center;gap:12px;padding:24px;display:grid}.recruitment-material__loading>span,.recruitment-intro-spinner{border:2px solid color-mix(in srgb, var(--ledger-gold), transparent 62%);border-top-color:var(--ledger-red);border-radius:50%;width:28px;height:28px;animation:.85s linear infinite recruitment-spin}.recruitment-material__error>p{margin:0}.recruitment-material__error .ledger-button{width:auto;min-width:132px;margin:0}.recruitment-poster-image{border:1px solid color-mix(in srgb, var(--ledger-line), transparent 18%);-webkit-touch-callout:default;background:#eee5d3;border-radius:8px;width:100%;height:auto;display:block;box-shadow:0 14px 34px #3b2b1429}@keyframes recruitment-poster-shimmer{to{transform:translate(100%)}}@keyframes recruitment-copy-pulse{0%,to{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-2px)}}.recruitment-save-hint{color:var(--ledger-muted);text-align:center;margin:12px 0 0;font-size:12px;line-height:1.6}.recruitment-static-qr{justify-items:center;gap:8px;margin-top:16px;display:grid}.recruitment-static-qr img{width:112px;height:112px}.recruitment-static-qr p{color:var(--ledger-muted);margin:0;font-size:12px}.recruitment-copy-card h2{margin:0 0 12px}.recruitment-copy-text{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ledger-ink);font-size:13px;line-height:1.85}.recruitment-copy-status,.recruitment-copy-error{color:var(--ledger-muted);margin:0;font-size:12px;line-height:1.7}.recruitment-copy-error{color:var(--ledger-red);margin-top:8px}.recruit-intro-page{min-height:100svh;min-height:100dvh}.recruit-intro-page .ledger-content{width:min(100%,430px);min-height:100svh;min-height:100dvh;padding-top:calc(18px + env(safe-area-inset-top,0px));padding-bottom:calc(32px + env(safe-area-inset-bottom,0px));margin-inline-start:auto;margin-inline-end:auto}.recruitment-intro-video{background:#100f0d;border-radius:10px;overflow:visible;box-shadow:0 12px 30px #22180c2e}.recruitment-intro-video .video-playback{margin:0}.recruitment-inviter{border:1px solid var(--ledger-line);background:var(--ledger-card);border-radius:12px;align-items:center;gap:12px;min-width:0;margin:18px 0 16px;padding:10px 12px;display:flex;box-shadow:0 6px 18px #5136121a}.recruitment-inviter>img,.recruitment-inviter>span{border:1px solid var(--ledger-gold);object-fit:cover;border-radius:50%;flex:none;width:40px;height:40px;box-shadow:0 4px 10px #51361224}.recruitment-inviter>span{color:#f7ecd2;background:var(--ledger-red);font:800 16px var(--serif);place-items:center;display:grid}.recruitment-inviter-copy{gap:2px;min-width:0;display:grid}.recruitment-inviter-copy small{color:var(--ledger-muted);font-size:10px}.recruitment-inviter-copy strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:14px;overflow:hidden}.recruitment-invite-message{text-align:left}.recruitment-invite-message h1{font:900 26px/1.3 var(--serif);margin:0 0 12px}.recruitment-static-contact{color:#fff7e6;background:var(--ledger-red);overflow-wrap:anywhere;cursor:pointer;border:0;border-radius:7px;place-items:center;width:100%;min-height:50px;padding:12px 16px;font-size:14px;font-weight:800;line-height:1.45;display:grid;box-shadow:0 8px 20px #8a1f1f38}.recruitment-static-contact:focus-visible{outline:3px solid color-mix(in srgb, var(--ledger-gold), transparent 25%);outline-offset:3px}.recruitment-empty{color:var(--ledger-muted);text-align:center;margin:14px 0 0;font-size:12px}.recruitment-evidence-card{text-align:center;gap:10px;display:grid}.recruitment-confirm-page .ledger-heading{text-align:center}.recruitment-evidence-card h2{margin:0}.recruitment-evidence-preview{border:1px solid var(--ledger-line);background:color-mix(in srgb, var(--ledger-paper), white 36%);border-radius:10px;place-items:center;max-width:100%;display:grid;overflow:hidden}.recruitment-evidence-preview img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:56vh;display:block}.recruitment-evidence-preview p{color:var(--ledger-muted);margin:0;padding:32px 18px;font-size:13px}.recruitment-upload-ready{color:var(--ledger-green);margin:0}.recruitment-submit-spinner{vertical-align:-2px;border:2px solid #ffffff73;border-top-color:currentColor;border-radius:50%;width:15px;height:15px;margin-right:8px;animation:.7s linear infinite recruitment-submit-spin;display:inline-block}.recruitment-submitted-page .ledger-heading,.recruitment-submitted-card{text-align:center}.recruitment-submitted-card{gap:16px;display:grid}.recruitment-submitted-card h2{margin:0}.recruitment-submitted-mark{color:#fff;background:var(--ledger-green);border-radius:50%;place-items:center;width:56px;height:56px;margin:0 auto;font-size:26px;font-weight:900;display:grid}.recruitment-submitted-person{text-align:left}@keyframes recruitment-submit-spin{to{transform:rotate(360deg)}}html[data-h5-motion=off] .recruitment-submit-spinner{animation:none}.recruitment-visitor-list{gap:14px;margin-bottom:14px;display:grid}.recruitment-visitor{margin:0}.recruitment-visitor .person-row{border-bottom:0}.recruitment-visitor-name{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.recruitment-visitor-identity{white-space:nowrap;border:1px solid;border-radius:999px;align-items:center;min-height:18px;padding:1px 6px;font-size:10px;font-weight:800;line-height:1.2;display:inline-flex}.recruitment-visitor-identity--resident{border-color:var(--ledger-gold);color:var(--ledger-ink);background:color-mix(in srgb, var(--ledger-gold), transparent 82%)}.recruitment-visitor-identity--officer{border-color:var(--ledger-red);color:var(--ledger-red);background:color-mix(in srgb, var(--ledger-red), transparent 92%)}.recruitment-watch-progress{background:var(--ledger-line);border-radius:999px;height:8px;margin:12px 0;overflow:hidden}.recruitment-watch-progress span{border-radius:inherit;background:var(--ledger-red);height:100%;display:block}.recruitment-visitor-signals{color:var(--ledger-muted);justify-content:space-between;gap:12px;margin-bottom:13px;font-size:11px;display:flex}.recruitment-visitor-signals strong{color:var(--ledger-ink);text-align:right}.recruitment-visitor-detail-button{width:100%}.recruitment-visitors-state,.recruitment-visitors-page .ledger-heading{text-align:center}.recruitment-visitors-state p{color:var(--ledger-muted);margin:7px 0 14px;font-size:12px;line-height:1.6}.recruitment-visitor-detail-heading{text-align:center;margin-top:16px}.recruitment-visitor-detail-heading h1:focus{outline:none}.recruitment-visitor-summary .person-row{border-bottom:1px solid var(--ledger-line);margin-bottom:4px}.recruitment-visitor-timeline ol{margin:0;padding:0;list-style:none}.recruitment-visitor-timeline li{grid-template-columns:24px minmax(0,1fr);gap:10px;min-height:70px;display:grid;position:relative}.recruitment-visitor-timeline li:not(:last-child):after{background:var(--ledger-line);content:"";width:1px;position:absolute;top:24px;bottom:4px;left:11px}.recruitment-visitor-timeline li>span{border:1px solid var(--ledger-line);width:24px;height:24px;color:var(--ledger-muted);background:var(--ledger-card);border-radius:50%;place-items:center;font-size:11px;font-weight:800;display:grid}.recruitment-visitor-timeline li.is-complete>span{border-color:var(--ledger-red);color:#fff;background:var(--ledger-red)}.recruitment-visitor-timeline li strong{font-size:13px}.recruitment-visitor-timeline li p{color:var(--ledger-red);margin:5px 0 0;font-size:11px;line-height:1.55}.recruitment-approval-notice{border:2px solid color-mix(in srgb, var(--ledger-red), transparent 12%);background:color-mix(in srgb, var(--ledger-red), var(--ledger-card) 92%);border-radius:10px;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:12px;margin-bottom:18px;padding:14px;display:grid;box-shadow:0 8px 20px #8a1f1f1a}.recruitment-approval-notice__mark{color:#fff;background:var(--ledger-red);width:38px;height:38px;font:900 22px/1 var(--serif);border-radius:50%;place-items:center;display:grid}.recruitment-approval-notice strong{color:var(--ledger-red);font-size:14px;line-height:1.45}.recruitment-approval-notice p{color:var(--ledger-ink);margin:4px 0 0;font-size:11px;line-height:1.55}.recruitment-approval-section{margin-bottom:24px}.recruitment-approval-section__heading,.recruitment-approval-history>header{justify-content:space-between;align-items:end;gap:12px;margin-bottom:12px;display:flex}.recruitment-approval-section__heading h2,.recruitment-approval-history h2{font:800 15px/1.4 var(--sans);margin:0}.recruitment-approval-section__heading p{color:var(--ledger-muted);margin:2px 0 0;font-size:10px}.recruitment-approval-section__heading>strong,.recruitment-approval-history>header span{color:var(--ledger-red);flex:none;font-size:10px}.recruitment-approval-stack,.recruitment-approval-skeleton{height:clamp(430px,62dvh,500px);position:relative}.recruitment-approval-stack{touch-action:pan-y;-webkit-user-select:none;user-select:none;outline:none}.recruitment-approval-stack:focus-visible{outline:3px solid color-mix(in srgb, var(--ledger-gold), transparent 32%);outline-offset:4px;border-radius:10px}.recruitment-approval-card-shell{transform-origin:top;will-change:transform, opacity;transition:transform .26s cubic-bezier(.22,1,.36,1),opacity .22s;position:absolute;top:0;bottom:56px;left:0;right:0}.recruitment-approval-card-shell--previous{z-index:4;opacity:0;pointer-events:none;transform:translate(calc(-100% - 24px))rotate(-2deg)scale(.98)}.recruitment-approval-card-shell--depth-0{z-index:3}.recruitment-approval-card-shell--depth-1{z-index:2;opacity:.88;pointer-events:none;transform:translateY(24px)scale(.985)}.recruitment-approval-card-shell--depth-2{z-index:1;opacity:.68;pointer-events:none;transform:translateY(46px)scale(.97)}.recruitment-approval-stack.is-dragging .recruitment-approval-card-shell--depth-0{transition:none}.recruitment-approval-card{border-color:color-mix(in srgb, var(--ledger-gold), var(--ledger-line) 58%);height:100%;margin:0;overflow:hidden;box-shadow:0 14px 30px #422b0c21}.recruitment-approval-card__body{overscroll-behavior:contain;scrollbar-width:thin;height:100%;overflow-y:auto}.recruitment-approval-signals{grid-template-columns:1fr 1fr;gap:8px;margin:12px 0;display:grid}.recruitment-approval-signals span{border:1px solid color-mix(in srgb, var(--ledger-line), transparent 28%);min-width:0;color:var(--ledger-muted);border-radius:7px;gap:2px;padding:10px;font-size:9px;line-height:1.45;display:grid}.recruitment-approval-signals b{color:var(--ledger-ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.recruitment-approval-payment{background:color-mix(in srgb, var(--ledger-red), transparent 95%);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 12px;margin-bottom:8px;padding:12px;display:grid}.recruitment-approval-payment span{color:var(--ledger-muted);font-size:10px}.recruitment-approval-payment strong{color:var(--ledger-red);font:800 22px var(--mono);grid-row:span 2}.recruitment-approval-payment small{color:var(--ledger-red);font-size:9px}.recruitment-evidence-preview-button{min-height:44px;color:var(--ledger-red);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:8px 0;font-weight:750;text-decoration:underline}.recruitment-evidence-dialog__body{background:color-mix(in srgb, var(--ledger-paper), #fff 35%);border-radius:8px;place-items:center;min-height:240px;max-height:min(64dvh,620px);display:grid;overflow:auto}.recruitment-evidence-dialog__body img{object-fit:contain;width:100%;height:auto;max-height:min(64dvh,620px);display:block}.recruitment-evidence-dialog__body p{color:var(--ledger-muted);text-align:center;margin:0;padding:24px}.officer-contact-prompt__body{gap:12px;min-height:0;padding:12px}.officer-contact-prompt__body>p{color:var(--ledger-ink);padding:0 4px;font-size:13px;line-height:1.65}.officer-contact-prompt__qr{aspect-ratio:1;border:1px solid var(--ledger-line);background:var(--ledger-card);border-radius:8px;place-items:center;width:min(100%,320px);display:grid;position:relative;overflow:hidden}.officer-contact-prompt__qr span{color:var(--ledger-muted)}.officer-contact-prompt__qr img{opacity:0;object-fit:contain;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.officer-contact-prompt__qr img.is-loaded{opacity:1}.recruitment-approval-actions{background:linear-gradient(transparent, var(--ledger-paper) 22%);margin-top:14px;padding-top:8px;position:sticky;bottom:0}.recruitment-approval-actions .ledger-button{min-height:46px;margin:0}.recruitment-approval-processing{color:var(--ledger-muted);background:color-mix(in srgb, var(--ledger-line), transparent 65%);text-align:center;border-radius:7px;margin:14px 0 0;padding:12px;font-size:11px}.recruitment-approval-controls{color:var(--ledger-muted);font:10px var(--mono);text-align:center;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin-top:10px;display:grid}.recruitment-approval-controls button{min-height:44px;color:var(--ledger-red);background:0 0;border:0;padding:8px;font-weight:750}.recruitment-approval-controls button:disabled{color:var(--ledger-muted);opacity:.45}.recruitment-approval-skeleton{border:1px solid var(--ledger-line);background:color-mix(in srgb, var(--ledger-paper), #fff 32%);border-radius:9px;overflow:hidden}.recruitment-approval-skeleton:after{content:"";background:linear-gradient(105deg,#0000 32%,#ffffff94 48%,#0000 64%);animation:1.35s ease-in-out infinite recruitment-poster-shimmer;position:absolute;top:0;bottom:0;left:0;right:0;transform:translate(-100%)}.recruitment-approval-state{text-align:center;place-content:center;justify-items:center;gap:8px;min-height:150px;display:grid}.recruitment-approval-state p{color:var(--ledger-muted);margin:0;font-size:11px}.recruitment-approval-state .ledger-button{width:auto;min-height:44px;margin:4px 0 0}.recruitment-approval-history{border-top:1px solid var(--ledger-line);padding-top:18px}.recruitment-approval-history ul{margin:0;padding:0;list-style:none}.recruitment-approval-history li{border-top:1px solid color-mix(in srgb, var(--ledger-line), transparent 36%)}.recruitment-approval-history li:first-child{border-top:0}.recruitment-approval-history__entry{width:100%;min-height:64px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;padding:0;display:grid}.recruitment-approval-history__entry:focus-visible{outline:2px solid var(--ledger-red);outline-offset:2px}.recruitment-approval-history__person{min-width:0}.recruitment-approval-history__person strong,.recruitment-approval-history__person small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.recruitment-approval-history__person strong{font-size:12px}.recruitment-approval-history__person small{color:var(--ledger-muted);margin-top:3px;font-size:9px}.recruitment-application-detail .person-row{margin-bottom:12px}.recruitment-application-detail .person-row strong{overflow-wrap:anywhere;min-width:0}.recruitment-application-detail__evidence{margin-top:16px}.recruitment-application-detail__evidence h2{color:var(--ledger-ink);margin:0;font-size:15px}.recruitment-application-detail__evidence img{border-radius:8px;width:100%;height:auto;margin-top:8px;display:block}.recruitment-pager{color:var(--ledger-muted);text-align:center;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;margin:14px 0;font-size:11px;display:grid}.recruitment-pager button{border:1px solid var(--ledger-line);min-height:44px;color:var(--ledger-ink);background:var(--ledger-paper);border-radius:6px;font-weight:700}.recruitment-pager button:disabled{opacity:.45}.recruitment-intro-status{min-height:calc(100svh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));text-align:center;align-content:center;justify-items:center;gap:12px;display:grid}.recruitment-intro-status>img{object-fit:contain}.recruitment-intro-status h1,.recruitment-intro-status p{margin:0}.recruitment-intro-status p{max-width:280px;color:var(--ledger-muted);font-size:13px;line-height:1.7}.recruitment-intro-status .ledger-button{width:min(100%,220px)}@keyframes recruitment-spin{to{transform:rotate(360deg)}}html[data-h5-motion=off] .recruitment-poster-skeleton:after{animation:none}html[data-h5-motion=off] .recruitment-approval-skeleton:after{animation:none}html[data-h5-motion=off] .recruitment-copy-generating i{animation:none}html[data-h5-motion=off] .recruitment-material__loading>span{animation:none}html[data-h5-motion=off] .recruitment-intro-spinner{animation:none}html[data-h5-motion=off] .recruitment-approval-card-shell{transition:none}.proof-check{min-height:44px;color:var(--ledger-muted);align-items:flex-start;gap:9px;font-size:11px;display:flex}.proof-check input{width:18px;height:18px;accent-color:var(--ledger-red);margin-top:2px}@media (max-width:340px){.auth-page .ledger-content{padding:48px 17px 30px}.auth-mark{width:62px;height:62px;margin-bottom:18px}.auth-page h1{font-size:27px}.auth-description{margin-bottom:20px;font-size:12px}.recruit-action-grid{gap:8px}.recruit-action-grid .ledger-card{padding:13px}.recruitment-approval-stack,.recruitment-approval-skeleton{height:500px}.recruitment-approval-payment strong{font-size:18px}}.officer-decision-dialog{width:min(430px,100vw - 24px);max-height:calc(100dvh - 24px);left:50%;right:auto;overflow-y:auto;transform:translate(-50%)}.officer-decision-reminder-dialog{text-align:center;border-radius:20px;width:min(360px,100vw - 48px);max-height:calc(100dvh - 48px);padding:24px;top:50%;bottom:auto;left:50vw;right:auto;transform:translate(-50%,-50%)}.officer-decision-reminder-dialog .dialog-close{top:8px;right:8px}.officer-decision-reminder-eyebrow{color:var(--ledger-red);letter-spacing:.12em;font-size:10px;font-weight:800;display:block}.officer-decision-reminder-dialog h2{margin:10px 32px 16px;font-size:22px}.officer-decision-reminder-dialog.officer-decision-dialog .officer-decision-reminder-body p{color:var(--ledger-muted);margin:0;font-size:12px;line-height:1.75}.officer-decision-reminder-body strong{color:var(--ledger-ink);font-weight:800}.officer-decision-reminder-actions{gap:4px;display:grid}.officer-decision-reminder-actions .ledger-button{min-height:48px;margin:0}.officer-decision-reminder-later{min-height:44px;color:var(--ledger-muted);font:700 12px var(--sans);background:0 0;border:0;padding:8px 12px}.officer-decision-reminder-later:focus-visible{outline:2px solid var(--ledger-red);outline-offset:2px}.officer-decision-dialog .dialog-body p{margin:0 0 12px}.officer-refund-summary{border-block:1px solid var(--ledger-line);gap:0;margin:0 0 12px;display:grid}.officer-refund-summary>div{grid-template-columns:minmax(72px,auto) minmax(0,1fr);align-items:center;gap:16px;min-height:52px;display:grid}.officer-refund-summary>div+div{border-top:1px solid var(--ledger-line)}.officer-refund-summary dt{color:var(--ledger-muted);font-size:12px}.officer-refund-summary dd{min-width:0;color:var(--ledger-ink);text-align:right;overflow-wrap:anywhere;margin:0;font-weight:750}.officer-refund-summary .officer-refund-amount{color:var(--ledger-red);font-variant-numeric:tabular-nums;font-size:20px}.officer-decision-dialog .dialog-body .officer-refund-warning{color:var(--ledger-red);margin-bottom:0;font-weight:700}.officer-decision-actions{flex-wrap:wrap;gap:10px;display:flex}.officer-decision-actions .ledger-button{flex:140px}.officer-decision-dock{z-index:31;bottom:calc(86px + env(safe-area-inset-bottom,0px));width:min(calc(100% - 28px), calc(var(--h5-max-width) - 28px));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffdf7f5;border:1px solid #c9a24a8c;border-radius:16px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:8px;display:grid;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #2b1a121f}.officer-decision-dock>p{min-width:0;color:var(--ledger-muted);text-align:center;grid-column:1/-1;margin:0;font-size:10px;line-height:1.45}.officer-decision-dock>p button{min-height:32px;color:var(--ledger-red);background:0 0;border:0;padding:4px 7px;font-weight:750;text-decoration:underline}.officer-decision-dock .ledger-button{white-space:nowrap;min-width:0;min-height:44px;margin:0;padding-inline-start:8px;padding-inline-end:8px}
