:root{--ink:#173c36;--green:#164e45;--mint:#e8f2ec;--paper:#f5f6f1;--muted:#78857d;--line:#e3e8e2;--gold:#c9ae72}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 -apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;-webkit-text-size-adjust:100%}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}button:focus-visible,input:focus,select:focus,textarea:focus{outline:2px solid #549b80;outline-offset:3px}[hidden]{display:none!important}.app-shell{width:100%;max-width:600px;margin:auto}.brand{display:flex;align-items:center;gap:11px;padding:24px 22px 18px}.brand img{width:42px;height:42px;object-fit:contain}.brand h1{font-size:16px;line-height:1.5;margin:0;font-weight:650}.eyebrow{font-size:11px;letter-spacing:1.5px;color:var(--muted)}.secure-mark{margin-left:auto;width:28px;height:31px;border:1px solid #b9c9bb;border-radius:9px 9px 14px 14px;text-align:center;flex-shrink:0;color:#4d7c61}main{padding:0 22px}.intro{position:relative;overflow:hidden;padding:25px 24px 27px;border-radius:18px;background:var(--green);color:white}.intro .eyebrow{color:#acc9b9}.intro h2{font-size:28px;letter-spacing:1px;font-weight:600;line-height:1.45;margin:8px 0}.intro p{color:#d3e4da;font-size:13px;margin:0}.intro-decoration{position:absolute;right:16px;top:8px;font-size:110px;color:#729987;opacity:.3;font-weight:200;line-height:1.3}.steps{display:flex;justify-content:space-between;padding:23px 0 20px;margin:0;list-style:none}.steps li{flex:1;color:#9ba69e;position:relative;text-align:center;font-size:11px}.steps li:not(:last-child):after{content:"";height:1px;background:#d5ded5;position:absolute;left:70%;right:-30%;top:16px}.steps b{position:relative;z-index:1;display:block;margin:0 auto 7px;width:32px;height:32px;border-radius:50%;font-size:12px;line-height:32px;background:#e9ede6;font-weight:500}.steps li.active{color:var(--green);font-weight:600}.steps li.active b{background:var(--green);color:white}.steps li.done b{background:#dce9dc;color:var(--green)}.card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:23px 21px;box-shadow:0 5px 22px #294d3410}.card-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;gap:8px}.card-heading h3{font-size:18px;margin:0;letter-spacing:.5px;font-weight:650}.card-heading>span{font-size:11px;color:#95a093;letter-spacing:1px}label{display:block;font-size:13px;margin:20px 0 8px;font-weight:500}em{font-style:normal;color:#9b7750;margin-left:3px}input:not([type=checkbox]),select,textarea{width:100%;min-width:0;min-height:50px;background:#f8faf7;border:1px solid #e4e9e2;border-radius:9px;color:var(--ink);padding:13px 12px;font-size:16px;-webkit-appearance:none;appearance:none}input::placeholder,textarea::placeholder{font-size:13px;color:#a1aaa0}select{padding-right:25px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14'%3E%3Cpath d='m3 5 4 4 4-4' fill='none' stroke='%2378857d'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 9px center}select:disabled{opacity:.5}.code-row{display:flex;align-items:center;gap:8px}.code-row input{min-width:0;flex:1}.text-button{background:var(--mint);border:0;border-radius:9px;color:var(--green);padding:14px 10px;white-space:nowrap;font-size:12px;min-height:50px}.consent{display:flex;gap:9px;align-items:flex-start;font-size:11px;line-height:1.8;color:var(--muted);font-weight:400}.consent input{width:17px;height:17px;flex:0 0 17px;margin:2px 0 0;accent-color:var(--green)}.link{padding:0;border:0;background:none;font:inherit;color:var(--green)}.hint{display:flex;align-items:center;gap:10px;background:#f4f7f0;padding:11px 13px;border-radius:9px;margin-top:22px}.hint span{color:#7f9471}.hint p{margin:0;color:#83907d;font-size:11px}.primary,.secondary{min-height:52px;padding:13px 20px;border-radius:10px;font-size:14px;font-weight:500}.primary{background:var(--green);border:1px solid var(--green);color:white;box-shadow:0 5px 12px #164e4515}.primary span{float:right}.secondary{background:white;color:var(--green);border:1px solid #cbd9cd}.navigation{display:flex;gap:12px;margin-top:20px}.navigation .primary{flex:1}.draft-note{text-align:center;color:#a0a99e;font-size:10px;margin-top:15px}.region-row{display:flex;gap:6px}.region-row select{flex:1;font-size:12px;padding-left:7px}textarea{margin-top:10px;resize:vertical}.muted{color:var(--muted);font-size:13px}.small{font-size:11px}.upload-card{border:1px dashed #b9cdbd;border-radius:12px;background:#f9fbf8;text-align:center;padding:18px 12px;margin-top:17px}.id-art{margin:0 auto;color:#6f927b;font-size:31px;line-height:1.3}.id-art span{font-size:12px;display:block;color:#99a994}.upload-card h4{font-size:13px;margin:12px 0;font-weight:500}.upload-actions{display:flex;justify-content:center;gap:10px}.upload-actions button{border:1px solid #d7e1d5;background:white;color:var(--green);font-size:12px;min-height:40px;padding:7px 15px;border-radius:7px}.upload-card img{max-width:100%;max-height:140px;object-fit:contain;border-radius:7px}.portrait img{max-height:180px}.file-state{font-size:10px;color:var(--muted);margin:9px 0 0}.face-info{display:flex;gap:13px;align-items:center;margin:23px 0 18px}.face-info h4{margin:0;font-size:14px}.face-info p{font-size:11px;color:var(--muted);margin:4px 0}.face-icon{font-size:40px;color:#789783;line-height:1}.full{width:100%}footer{text-align:center;color:#939f91;font-size:11px;padding:25px 22px calc(22px + env(safe-area-inset-bottom));overflow-wrap:anywhere}footer p{margin:0}footer a{color:inherit}.notice{padding:12px 15px;border-radius:9px;background:#fff0e4;color:#875833;font-size:13px;margin-bottom:15px}.modal{position:fixed;z-index:20;inset:0;background:#102a24b8;display:flex;align-items:center;justify-content:center;padding:20px;padding-top:calc(20px + env(safe-area-inset-top));padding-bottom:calc(20px + env(safe-area-inset-bottom));overflow-y:auto}.modal-card{width:100%;max-width:420px;border-radius:20px;background:white;padding:25px;max-height:100%;overflow-y:auto}.modal-card h2{font-size:21px}.modal-card p{font-size:13px;color:var(--muted)}.modal-card .card-heading{margin-bottom:16px}.card-heading button{border:0;background:#f1f5ef;border-radius:50%;font-size:24px;width:35px;height:35px;color:var(--green)}.viewfinder{position:relative;border-radius:15px;overflow:hidden;background:#12231b;aspect-ratio:3/4;max-height:50vh}.viewfinder video{width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}.face-outline{position:absolute;border:2px solid #ffffffb0;left:18%;top:13%;width:64%;height:65%;border-radius:48%}.camera-modal h3#action-prompt{text-align:center;font-size:20px;margin-bottom:5px}.camera-modal #action-detail{text-align:center}.progress{height:4px;background:#e9efe7;border-radius:4px;overflow:hidden}.progress>div{height:100%;background:#468b70;width:0;transition:width .1s}.receipt-check{margin:5px auto 15px;width:58px;height:58px;background:var(--mint);color:var(--green);border-radius:50%;text-align:center;line-height:58px;font-size:28px}#receipt>h2,#receipt>p,.modal-card>.receipt-check~h2{text-align:center}dl{margin-top:25px}dl>div{display:flex;padding:11px 0;border-bottom:1px solid var(--line);font-size:13px;gap:16px}dt{color:var(--muted);min-width:70px}dd{margin:0;overflow-wrap:anywhere;flex:1}.receipt-images{display:flex;flex-wrap:wrap;gap:12px}.receipt-images img{max-width:100%;max-height:160px;object-fit:contain}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:360px){main{padding:0 13px}.brand{padding:19px 13px}.brand h1{font-size:14px}.card{padding:20px 15px}.region-row{flex-wrap:wrap}.region-row select{flex-basis:100%}.intro h2{font-size:25px}.intro{padding:22px}.upload-actions button{padding:8px 12px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* 四步报名说明及版权下方的后台友情链接 */
.intro h2,.intro p,.intro>.eyebrow{position:relative;z-index:1}
.intro-decoration{top:17px;right:18px;font-size:76px;line-height:1.2;opacity:.16;font-weight:600;letter-spacing:-3px;pointer-events:none}
.intro p{line-height:1.85;overflow-wrap:anywhere}
.friend-links{margin-top:15px;padding-top:14px;border-top:1px solid #dde5da}
.friend-links-title{display:block;margin-bottom:7px;font-size:11px;color:#81907e;letter-spacing:1px}
.friend-links-list{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:5px 10px}
.friend-links-list a{display:inline-flex;align-items:center;justify-content:center;min-height:32px;max-width:100%;padding:3px 10px;border:1px solid #dce5d8;border-radius:6px;background:#f8faf5;color:#526d59;font-size:12px;line-height:1.6;text-decoration:none;overflow-wrap:anywhere}
.friend-links-list a:hover{background:#e8f2e5;border-color:#b5cbb7}
.friend-links-list a:focus-visible{outline:2px solid #549b80;outline-offset:3px}
@media(max-width:360px){.intro-decoration{font-size:64px;right:14px}.friend-links-list{gap:5px 7px}.friend-links-list a{padding:4px 8px}}

/* 一行放不下时，所有友情链接统一单列显示 */
.friend-links-list{flex-wrap:nowrap}
.friend-links-list a{flex:0 0 auto;white-space:nowrap}
.friend-links-list.is-stacked{flex-direction:column;align-items:stretch;gap:7px}
.friend-links-list.is-stacked a{width:100%;min-width:0;white-space:normal;text-align:center}

/* 后台 mima 标签控制的网站访问密码页 */
.access-shell{width:100%;max-width:600px;margin:0 auto;min-height:100vh;min-height:100svh;display:flex;flex-direction:column}
.access-footer{margin-top:auto;padding-top:36px}
.access-shell .brand>div{min-width:0;overflow-wrap:anywhere}
.access-card{margin:24px 22px 0;padding:28px 23px}
.access-card h2{font-size:24px;margin:8px 0 10px;line-height:1.5}
.access-card .muted{line-height:1.85}
#access-submit{margin-top:20px}
#access-notice{margin-top:16px;margin-bottom:0}
@media(max-width:360px){.access-card{margin:18px 13px 0;padding:23px 17px}}
