.nsv-board{max-width:900px;margin:8px auto 36px;border:1px solid var(--el-border-color-lighter,#e5e9f3);border-radius:22px;overflow:hidden;background:var(--el-bg-color,#fff);color:var(--el-text-color-primary,#17233b);box-shadow:0 14px 42px #1c3c7308;text-align:left}.nsv-board *,.nsv-account *{box-sizing:border-box}.nsv-board button,.nsv-account button{font:inherit;cursor:pointer;border:1px solid var(--el-border-color,#dae1eb);background:var(--el-bg-color,#fff);color:inherit;border-radius:9px;padding:8px 13px}.nsv-board button:disabled,.nsv-account button:disabled{cursor:default;opacity:.5}.nsv-board button:focus-visible,.nsv-account button:focus-visible,.nsv-board a:focus-visible{outline:2px solid #5966ed;outline-offset:3px}.nsv-board-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:30px 32px;background:linear-gradient(115deg,#6173ff0d,#23c4ba08);border-bottom:1px solid var(--el-border-color-lighter)}.nsv-eyebrow{font:700 10px ui-monospace,monospace;letter-spacing:2.5px;color:#6570e6}.nsv-board h1{font-size:25px;letter-spacing:-.5px;margin:8px 0}.nsv-board-head p{margin:0;font-size:13px;color:var(--el-text-color-secondary)}.nsv-board .nsv-account-entry{font-size:12px;color:#6268db;white-space:nowrap}.nsv-board-tools{display:flex;align-items:center;gap:16px;padding:22px 32px 12px;font-size:12px}.nsv-period{display:flex;gap:4px;background:var(--el-fill-color-light,#f4f6fb);padding:4px;border-radius:11px}.nsv-board .nsv-period button{border:0;background:none;min-width:65px}.nsv-board .nsv-period button.selected{background:var(--el-bg-color,#fff);box-shadow:0 2px 5px #20284c0d;color:#6268db;font-weight:700}.nsv-previous{display:flex;align-items:center;gap:5px;margin-left:auto;white-space:nowrap;color:var(--el-text-color-regular)}.nsv-previous input{accent-color:#666aeb}.nsv-sort-row{display:flex;align-items:center;gap:15px;padding:0 32px 22px;font-size:12px;color:var(--el-text-color-secondary)}.nsv-sort-row>div{display:flex;gap:7px}.nsv-board .nsv-sort-row button{padding:6px 11px;border:1px solid transparent;font-size:12px}.nsv-board .nsv-sort-row button.selected{color:#6268db;background:#6875f610;border-color:#6875f630}.nsv-list-caption{display:flex;justify-content:space-between;padding:11px 32px;background:var(--el-fill-color-light,#f6f8fc);font-size:11px;color:var(--el-text-color-secondary)}.nsv-score-row{display:grid;grid-template-columns:32px 40px minmax(0,1fr) auto;gap:14px;align-items:center;padding:17px 32px;border-bottom:1px solid var(--el-border-color-lighter,#f0f2f7)}.nsv-position{font:600 14px ui-monospace,monospace;color:#939cac}.nsv-position.place-1{color:#eaa331}.nsv-position.place-2{color:#889bb1}.nsv-position.place-3{color:#bd8d6c}.nsv-person{height:38px;width:38px;border-radius:13px;object-fit:cover;background:#6875f610}.nsv-initial{display:grid;place-items:center;font-size:13px;font-weight:600;color:#6870cf}.nsv-person-name{display:flex;flex-direction:column;gap:4px;min-width:0}.nsv-person-name strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nsv-person-name span{font-size:10px;color:var(--el-text-color-secondary)}.nsv-score{font:600 15px ui-monospace,monospace;font-variant-numeric:tabular-nums;white-space:nowrap}.nsv-empty{padding:48px 24px;text-align:center;font-size:13px;color:var(--el-text-color-secondary)}.nsv-empty h3{font-size:16px;color:var(--el-text-color-primary)}.nsv-empty-icon{font-size:34px;color:#6471db}.nsv-empty a{display:inline-block;margin-top:10px;color:#6268db;text-decoration:none}.nsv-board-foot{padding:17px 32px;font-size:11px;color:var(--el-text-color-secondary);line-height:1.7}.nsv-board-foot p{margin:2px 0}.nsv-notification{padding:10px 32px;margin:0;background:#62bf8810;color:#378554;font-size:12px}.nsv-account{text-align:center;color:var(--el-text-color-primary);font-size:13px;line-height:1.7}.nsv-account h3{font-size:19px;margin:10px 0 6px}.nsv-account p{color:var(--el-text-color-secondary)}.nsv-account-mark{margin:0 auto;width:64px;height:64px;border-radius:20px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#6776f5,#5263ce);font-size:29px;font-weight:700;overflow:hidden}.nsv-account-mark img{width:100%;height:100%;object-fit:cover}.nsv-account .nsv-primary{background:#616fee;color:#fff;border-color:#616fee;min-width:200px;margin:10px 0 15px}.nsv-name-form{text-align:left;border-top:1px solid var(--el-border-color-lighter);padding-top:20px;margin-top:12px}.nsv-name-form label{display:block;font-size:12px;margin-bottom:6px}.nsv-name-form>div{display:flex;gap:8px}.nsv-name-form input{flex:1;min-width:0;padding:9px 10px;border:1px solid var(--el-border-color);border-radius:8px;background:var(--el-bg-color);color:inherit}.nsv-account details{text-align:left;font-size:11px;margin-top:20px;color:var(--el-text-color-secondary)}.nsv-account summary{cursor:pointer}.nsv-feedback{min-height:20px;font-size:12px}
@media(max-width:640px){.nsv-board{margin:0 10px 24px;border-radius:17px}.nsv-board-head{padding:22px 18px;align-items:flex-start;flex-direction:column;gap:15px}.nsv-board h1{font-size:22px}.nsv-board-tools{padding:18px 16px 10px;gap:10px;flex-wrap:wrap}.nsv-period{flex:1 0 100%}.nsv-board .nsv-period button{flex:1;min-width:0}.nsv-previous{margin-left:0;margin-right:auto}.nsv-sort-row{padding:3px 16px 18px;gap:8px;flex-wrap:wrap}.nsv-list-caption{padding:10px 18px}.nsv-score-row{padding:15px 18px;grid-template-columns:24px 32px minmax(0,1fr) auto;gap:9px}.nsv-person{width:32px;height:32px;border-radius:10px}.nsv-score{font-size:12px}.nsv-person-name strong{font-size:12px}.nsv-board-foot{padding:16px 18px}.nsv-notification{padding:10px 18px}}
.nsv-login-gate{text-align:center;padding:55px 24px}.nsv-login-gate p{font-size:13px;color:var(--el-text-color-secondary);line-height:1.8}.nsv-login-gate .nsv-primary{margin:15px;background:#616fee;color:white;border-color:#616fee}.nsv-login-gate a{color:#616fee;text-decoration:none}
.nsv-score-row{border-bottom:0;min-height:65px;padding-top:13px;padding-bottom:13px}.nsv-score-row:nth-child(even){background:var(--el-fill-color-light,#f7f7f7)}.nsv-position{font-family:Arial,sans-serif;font-size:16px;font-weight:700;color:#888}.nsv-position.place-1{color:#ff3548}.nsv-position.place-2{color:#f2ae00}.nsv-position.place-3{color:#8962ff}.nsv-person{border-radius:50%}.nsv-person-name{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;gap:5px}.nsv-person-name strong{font-family:inherit;font-size:15px;font-weight:600;line-height:1.5}.nsv-network{display:flex;flex-wrap:wrap;align-items:baseline;gap:3px 10px;line-height:1.6}.nsv-person-name .nsv-carrier{font-size:13px;font-weight:600;color:var(--el-text-color-regular,#606266)}.nsv-person-name .carrier-telecom{color:#2866ff}.nsv-person-name .carrier-mobile{color:#00ad47}.nsv-person-name .carrier-unicom{color:#ff2638}.nsv-person-name .nsv-region{font-size:13px;color:var(--el-text-color-regular,#606266)}.nsv-score{font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--el-text-color-primary,#111);letter-spacing:0}@media(max-width:640px){.nsv-score-row{padding:13px 15px;column-gap:9px}.nsv-person-name strong{font-size:14px}.nsv-person-name .nsv-carrier,.nsv-person-name .nsv-region{font-size:12px}.nsv-score{font-size:12px}.nsv-network{column-gap:6px}}

#nsv-guest-reminder{position:static;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 12px;margin:14px 10px 0;padding:13px 0 2px;border-top:1px solid var(--el-border-color-lighter,#edf0f6);background:transparent;color:var(--el-text-color-secondary,#7b8497);font-size:12px;line-height:1.7;text-align:center;box-sizing:border-box}#nsv-guest-reminder button{flex:none;border:0;border-radius:7px;background:#626fee;color:#fff;padding:5px 12px;font:inherit;cursor:pointer}#nsv-guest-reminder button:focus-visible{outline:2px solid #626fee;outline-offset:3px}@media(max-width:480px){#nsv-guest-reminder{margin:12px 0 0;padding:11px 0 0;gap:7px;font-size:11px}}

/* Footer friend links */
.app-root .footer .friend-box{display:block;box-sizing:border-box;width:800px;max-width:100%;margin:0 auto 26px;padding:18px 20px 20px;border:1px solid #dfe7f4;border-radius:18px;background:linear-gradient(125deg,#ffffffed,#f5f8ffed);box-shadow:0 6px 24px #334f7b05;text-align:left}
.app-root .footer .friend-title{display:flex;align-items:center;gap:9px;margin:0 0 14px;padding:0;border:0;font-size:13px;font-weight:600;letter-spacing:1px;line-height:20px;color:#5c6682}
.app-root .footer .friend-title::before{content:"";width:6px;height:14px;border-radius:4px;background:linear-gradient(#8b92ff,#6473eb)}
.app-root .footer .friend-list{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;justify-content:normal}
.app-root .footer .friend-item{display:flex;align-items:center;justify-content:center;gap:7px;min-width:0;min-height:42px;padding:0 10px;border:1px solid #e5eaf4;border-radius:10px;background:#ffffffd9;color:#526079;font-size:12px;font-weight:500;line-height:1.5;text-decoration:none;transition:transform .18s,border-color .18s,box-shadow .18s,background-color .18s,color .18s}
.app-root .footer .friend-item::after{content:none}
.app-root .footer .friend-item:hover{transform:translateY(-2px);border-color:#b9c2f6;background:#fff;color:#5967d9;box-shadow:0 5px 13px #5967d912;text-decoration:none}
.app-root .footer .friend-item:hover::after{color:#7b87e4}
.app-root .footer .friend-item:focus-visible{outline:2px solid #6875ee;outline-offset:3px}
html.dark .app-root .footer .friend-box{background:linear-gradient(125deg,#20232c,#1c1f27);border-color:#303645;box-shadow:none}
html.dark .app-root .footer .friend-title{color:#afb8d0}
html.dark .app-root .footer .friend-item{background:#252a35;border-color:#363d4d;color:#c0c8da}
html.dark .app-root .footer .friend-item:hover{background:#2b3141;border-color:#6975b8;color:#b7c0ff}
@media(max-width:760px){.app-root .footer .friend-box{padding:16px}.app-root .footer .friend-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.app-root .footer .friend-item{min-height:43px}}
@media(max-width:390px){.app-root .footer .friend-box{max-width:100%;padding:14px}.app-root .footer .friend-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.app-root .footer .friend-item,.app-root .footer .friend-item::after{transition:none}.app-root .footer .friend-item:hover{transform:none}}

@media(max-width:840px){.app-root .footer{padding-left:0;padding-right:0}}
