*{box-sizing:border-box}html{background:#f3f3f3;color:#1e1e1e;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}button,input{font:inherit}button{cursor:pointer}.page{width:min(100vw,480px);min-height:100vh;margin:0 auto;overflow-x:hidden}.page-light{background:#fff}.page-dark{background:#000;color:#fff}.brand-logo{display:block;width:128px;max-width:100%;height:auto;object-fit:contain}.brand-logo.large{width:clamp(260px,72vw,390px)}.query-content{display:grid;justify-items:center;gap:46px;padding:34px 34px 0}.query-form{display:grid;width:100%;gap:20px}.input-wrap{display:flex;align-items:center;min-height:64px;padding:0 22px;border-radius:8px;background:#f0f0f0;color:#999}.input-wrap input{width:100%;min-width:0;margin-left:18px;border:0;outline:0;background:transparent;color:#333;font-size:22px}.primary-button{min-height:52px;border:0;border-radius:8px;background:#c9a660;color:#fff;font-size:20px;font-weight:600}.primary-button.wide{min-height:66px;font-size:26px;letter-spacing:0}.secondary-button.wide{min-height:58px;font-size:24px}.query-bindings-button{width:100%}.primary-button:disabled{opacity:.7}.secondary-button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:8px;border:1px solid #d8c28b;border-radius:8px;background:#fff;color:#9b7b36;font-size:17px;font-weight:600}.secondary-button:disabled{opacity:.7}.qr-query{display:grid;gap:8px;text-align:center}.qr-query input[type=file]{display:none}.qr-query span{color:#9a9a9a;font-size:13px}.form-error{min-height:20px;margin:-4px 0 0;color:#b94a48;font-size:14px}.site-footer{margin-top:110px;color:#a6a6a6;text-align:center;font-size:20px;line-height:1.8}.certificate-panel{width:calc(100% - 10px);margin:20px auto 0;padding:7px 7px 16px;border:2px solid #bfa168;border-radius:16px}.photo-mosaic{position:relative;aspect-ratio:1.78;overflow:hidden;border-radius:4px;background:#ddd}.photo-mosaic img{display:block;width:100%;height:100%;object-fit:cover}.verify-list{display:grid;gap:0;margin:16px 28px 0;padding:0;list-style:none}.verify-list li{display:grid;grid-template-columns:7px max-content minmax(0,1fr);column-gap:8px;align-items:baseline;padding:7px 0;border-bottom:1px dashed #c8c8c8;font-size:clamp(14px,3.9vw,17px);line-height:1.35}.verify-list li:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;transform:translateY(-2px)}.verify-list strong{white-space:nowrap}.verify-list span{min-width:0;overflow-wrap:anywhere}.verify-actions{display:grid;width:min(240px,calc(100% - 118px));gap:10px;margin:40px auto 22px}.bind-button{width:100%;min-height:48px;font-size:18px}.bottom-brand{display:block;width:clamp(330px,92vw,430px);min-height:0;margin:12px auto 0;object-fit:contain}.state-block{margin:40px 18px;padding:28px;border-radius:8px;background:#f7f7f7;color:#666;text-align:center}.state-block.error{color:#b94a48}.back-float{position:absolute;top:calc(env(safe-area-inset-top) + 18px);left:calc(50% - min(50vw,240px) + 14px);z-index:8;display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border:0;border-radius:50%;background:#fff;color:#111}.dark-content{padding:36px 16px 54px}.dark-content h1{margin:0 0 70px;text-align:center;font-size:24px}.binding-card,.info-card{display:grid;grid-template-columns:58px 1fr 26px;align-items:center;width:100%;min-height:112px;margin-bottom:0;padding:18px 20px;border:0;border-radius:14px;background:linear-gradient(180deg,#464280,#302d5d);color:#fff;text-align:left}.binding-info,.info-card div:last-child{display:grid;min-width:0;gap:7px}.binding-info strong,.info-card strong{font-size:23px;line-height:1.15}.binding-info span,.info-card span{font-size:18px;line-height:1.2}.card-icon,.card-arrow,.info-icon{color:#fff}.dark-state{padding:30px 0;color:#bbb;text-align:center}.detail-content h1{margin-bottom:70px}.status-ribbon{display:grid;grid-template-columns:.9fr 1.35fr;min-height:36px;margin-bottom:42px;overflow:hidden;border:1px solid #f3e4c8;border-radius:8px;background:#f5e6c8;color:#111;font-size:15px;font-weight:700}.status-ribbon span{display:flex;align-items:center;gap:8px;padding:0 12px;background:#070707;color:#f5e6c8}.status-ribbon strong{display:flex;align-items:center;justify-content:center;padding:0 10px}.info-card{grid-template-columns:58px 1fr;min-height:88px;margin-bottom:14px}.info-icon{display:flex;width:44px;height:44px;align-items:center;justify-content:center}.registered-icon{display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;border:4px solid currentColor;border-radius:50%;font-size:26px;font-weight:800}.unbind-button{display:block;width:224px;min-height:60px;margin:72px auto 0;border:0;border-radius:999px;background:#fff;color:#111;font-size:22px}@media(max-width:360px){.input-wrap input,.binding-info strong,.info-card strong{font-size:20px}.certificate-panel{width:calc(100% - 8px)}.verify-list{margin-inline:18px}.verify-list li{column-gap:6px;font-size:14px}.verify-actions{width:min(220px,calc(100% - 92px))}.bottom-brand{width:94vw;min-height:0;margin-top:10px}.primary-button.wide{font-size:24px}.site-footer{font-size:17px}.status-ribbon{font-size:13px}}.admin-page{display:grid;grid-template-columns:240px 1fr;min-height:100vh;background:#f5f6f8;color:#1b1f24}.admin-login{grid-column:1 / -1;display:grid;min-height:100vh;place-items:center;padding:24px;background:#f5f6f8}.admin-login-panel{display:grid;width:min(420px,100%);gap:22px;padding:34px;border:1px solid #e4e7ec;border-radius:8px;background:#fff;box-shadow:0 16px 44px #14192314}.admin-login-panel .brand-logo{justify-self:start;width:136px}.admin-login-panel h1,.admin-section h2{margin:0}.admin-login-panel form,.admin-login-panel label{display:grid;gap:10px}.admin-login-panel input,.admin-actions input,.form-grid input,.form-grid select{min-height:42px;min-width:0;border:1px solid #d6dae1;border-radius:6px;background:#fff;color:#111827;padding:0 12px;outline:none}.admin-login-panel input:focus,.admin-actions input:focus,.form-grid input:focus,.form-grid select:focus{border-color:#c9a660;box-shadow:0 0 0 3px #c9a66029}.admin-login-panel button,.admin-actions button,.edit-actions button,.section-head button,.admin-table button{display:inline-flex;min-height:38px;align-items:center;justify-content:center;gap:7px;border:1px solid #d6dae1;border-radius:6px;background:#fff;color:#20242a;padding:0 14px;font-size:14px}.admin-login-panel button,.admin-actions .solid,.edit-actions .solid{border-color:#c9a660;background:#c9a660;color:#fff}.admin-login-panel p{margin:0;color:#b42318}.admin-sidebar{position:sticky;top:0;height:100vh;padding:24px 18px;background:#111318;color:#fff}.admin-sidebar .brand-logo{width:92px;margin:0 0 26px;border-radius:6px;background:#fff;padding:8px 10px;box-shadow:0 10px 24px #00000038}.admin-sidebar nav{display:grid;gap:8px}.admin-sidebar button{display:flex;min-height:42px;align-items:center;gap:10px;border:0;border-radius:6px;background:transparent;color:#cfd3dc;padding:0 12px;text-align:left}.admin-sidebar button.active,.admin-sidebar button:hover{background:#292d36;color:#fff}.admin-main{display:grid;align-content:start;gap:22px;padding:24px}.admin-topbar{display:flex;min-height:68px;align-items:center;justify-content:space-between;gap:16px;padding:0 20px;border:1px solid #e4e7ec;border-radius:8px;background:#fff}.admin-topbar div{display:grid;gap:4px}.admin-topbar strong{font-size:20px}.admin-topbar span,.admin-section p,.stats-grid span{color:#667085}.admin-topbar a,.admin-table a{color:#9c7a2d;font-weight:700;text-decoration:none}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.stats-grid article,.admin-section,.edit-panel{border:1px solid #e4e7ec;border-radius:8px;background:#fff}.stats-grid article{display:grid;gap:10px;padding:18px}.stats-grid strong{font-size:30px}.admin-section{display:grid;gap:18px;padding:20px}.admin-message{margin:0;border:1px solid #d1fadf;border-radius:6px;background:#ecfdf3;color:#067647;padding:10px 12px;font-size:14px}.admin-message.error{border-color:#fecdca;background:#fffbfa;color:#b42318}.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.section-head p{margin:8px 0 0}.admin-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.bulk-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;border:1px solid #eaecf0;border-radius:8px;background:#fbfcfe}.bulk-toolbar span{margin-right:auto;color:#475467;font-size:14px}.bulk-toolbar button{display:inline-flex;min-height:36px;align-items:center;justify-content:center;border:1px solid #d6dae1;border-radius:6px;background:#fff;color:#20242a;padding:0 12px}.bulk-toolbar button.danger{border-color:#fecdca;color:#b42318}.bulk-toolbar button:disabled{opacity:.5;cursor:not-allowed}.edit-panel{display:grid;gap:16px;padding:16px;background:#fbfcfe}.form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.form-grid.compact{grid-template-columns:1.1fr 1.4fr .8fr .8fr}.form-grid .span-2{grid-column:span 2}.form-grid label{display:grid;gap:7px;color:#475467;font-size:13px}.form-grid input:disabled{background:#f3f4f6;color:#667085;cursor:not-allowed}.edit-actions{display:flex;justify-content:flex-end;gap:8px}.admin-table-wrap{overflow-x:auto;border:1px solid #eaecf0;border-radius:8px}.admin-table{width:100%;min-width:900px;border-collapse:collapse;background:#fff}.admin-table th,.admin-table td{padding:13px 14px;border-bottom:1px solid #eaecf0;text-align:left;white-space:nowrap}.admin-table th{background:#f9fafb;color:#667085;font-size:13px;font-weight:700}.admin-table td{font-size:14px}.admin-table td:last-child{display:flex;gap:8px}.admin-table .select-cell{width:42px;text-align:center}.admin-table input[type=checkbox]{width:16px;height:16px;cursor:pointer}.admin-table button.danger{border-color:#fecdca;color:#b42318}.status-pill{display:inline-flex;min-width:46px;justify-content:center;border-radius:999px;padding:4px 8px;font-size:12px;font-weight:700}.status-pill.active{background:#ecfdf3;color:#067647}.status-pill.disabled{background:#f2f4f7;color:#667085}.qr-modal{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:24px;background:#11131885}.qr-modal-panel{display:grid;width:min(420px,100%);gap:18px;border-radius:8px;background:#fff;padding:20px;box-shadow:0 24px 80px #00000038}.qr-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.qr-modal-head div{display:grid;gap:4px}.qr-modal-head strong{font-size:18px}.qr-modal-head span,.qr-modal-panel p{color:#667085}.qr-modal-head button,.qr-modal-actions button,.qr-modal-actions a{display:inline-flex;min-height:36px;align-items:center;justify-content:center;border:1px solid #d6dae1;border-radius:6px;background:#fff;color:#20242a;padding:0 12px;text-decoration:none}.qr-modal-panel img{width:260px;height:260px;justify-self:center;border:1px solid #eaecf0;border-radius:8px;background:#fff;padding:12px}.qr-modal-panel p{margin:0;overflow-wrap:anywhere;font-size:13px;line-height:1.5}.qr-modal-actions{display:flex;justify-content:flex-end;gap:8px}.qr-modal-actions button{border-color:#c9a660;background:#c9a660;color:#fff}@media(max-width:900px){.admin-page{grid-template-columns:1fr}.admin-sidebar{position:static;height:auto}.stats-grid,.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-head,.admin-topbar{display:grid}}
