.profile-entry{display:flex;align-items:center;gap:10px;border:0;background:transparent;padding:5px 8px;border-radius:12px;text-align:left;color:inherit;cursor:pointer;font:inherit}.profile-entry:hover:not(:disabled){background:#e8f0fa}.profile-entry:disabled{cursor:default}.profile-entry:focus-visible,.personal-page button:focus-visible,.personal-page a:focus-visible,.personal-page summary:focus-visible{outline:3px solid #87addf;outline-offset:3px}.profile-entry>span:last-child{display:grid;gap:3px}.profile-avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.personal-open{overflow:hidden}.personal-page{position:fixed;inset:0;z-index:2000;background:#f5f8fc;overflow:auto;overscroll-behavior:contain;color:#203c57}.personal-page[hidden],.personal-page [hidden]{display:none!important}.personal-top{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:15px;height:76px;padding:0 clamp(20px,5vw,80px);background:rgba(249,251,254,.96);border-bottom:1px solid #dfe8f2;backdrop-filter:blur(12px)}.personal-top>span{font-weight:700}.personal-top>small{margin-left:auto;letter-spacing:2px;color:#8294a8;font-size:10px}.personal-back{width:39px;height:39px;border:1px solid #d4e0ed;border-radius:12px;background:white;color:#385c80;font:24px monospace;cursor:pointer}.personal-back:hover{background:#e8f1fb}.personal-content{max-width:1120px;margin:0 auto;padding:42px 28px 80px}.personal-heading h1{font-size:32px;letter-spacing:-1px;margin:8px 0 12px}.personal-heading>p:last-child,.personal-platform-heading p,.personal-section-copy p{color:#74869b;font-size:13px;line-height:1.8}.profile-message{min-height:22px;margin:18px 0;color:#268467;font-size:13px}.profile-message.is-error,.platform-error,.platform-action-message{color:#b65c45}.personal-basics{background:white;border:1px solid #dfe8f2;border-radius:22px;display:grid;grid-template-columns:230px 1fr;padding:30px;gap:25px;box-shadow:0 6px 24px #294f7010}.personal-step{font-size:10px;letter-spacing:1.6px;color:#7f98b1;font-weight:700}.personal-page h2{font-size:20px;margin:10px 0}.personal-form{display:grid;grid-template-columns:180px minmax(180px,1fr);gap:26px}.personal-avatar-field{display:flex;flex-direction:column;align-items:center;gap:10px}.personal-avatar{display:flex;width:88px;height:88px;border-radius:26px;align-items:center;justify-content:center;background:#e8f0fb;font-size:30px;color:#4f79a5;overflow:hidden}.personal-avatar img{height:100%;width:100%;object-fit:cover}.avatar-picker{position:relative;color:#416e9d;font-size:12px;cursor:pointer;padding:5px 10px;border:1px solid #dce6f1;border-radius:7px;overflow:hidden}.avatar-picker input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.avatar-picker:focus-within{outline:3px solid #87addf}.personal-avatar-field small{font-size:9px;color:#8090a2;text-align:center}.personal-name-field{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.personal-name-field>label,.platform-bind-form label{font-size:12px;font-weight:600}.personal-name-field input,.platform-bind-form input{width:100%;border:1px solid #d7e2ee;border-radius:9px;padding:11px 12px;font:inherit;font-size:13px;background:#fbfcfe;min-width:0;color:#28425d}.personal-name-field input:focus,.platform-bind-form input:focus{outline:2px solid #9bbde6;outline-offset:1px}.personal-name-field small{font-size:11px;line-height:1.7;color:#8392a4}.personal-name-field button{margin-top:3px;font-size:12px}.personal-platform-section{margin-top:40px}.personal-platform-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.binding-count{white-space:nowrap;padding:8px 13px;border:1px solid #d7e3ef;background:#edf3fa;border-radius:20px;color:#6182a2;font-size:11px}.profile-binding-note{font-size:11px;line-height:1.7;color:#8593a4;margin:12px 0 22px}.platform-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.platform-card{background:white;border:1px solid #dfe8f2;border-radius:18px;padding:24px;align-self:start}.platform-card-head{display:flex;gap:12px;align-items:center}.platform-monogram{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#e6effa;color:#4876aa;font-size:13px;font-weight:800;flex-shrink:0}.platform-monogram[data-platform=atcoder]{background:#edf0f4;color:#53667a}.platform-monogram[data-platform=nowcoder]{background:#e6f4ed;color:#47896a}.platform-monogram[data-platform=luogu]{background:#e5f2fa;color:#4f91b5}.platform-monogram[data-platform=leetcode]{background:#fcf2dd;color:#ad8b42}.platform-card h3{margin:0;font-size:15px}.platform-card-head small{font-size:11px;color:#8a99aa;overflow-wrap:anywhere}.platform-status{margin-left:auto;white-space:nowrap;font-size:10px;border-radius:6px;padding:4px 7px;color:#8795a5;background:#f0f3f7}.platform-status.ready{color:#3c8868;background:#eaf6ef}.platform-status.pending{color:#477ba6;background:#eaf2fb}.platform-status.failed{color:#b47a3c;background:#fff4df}.platform-empty{padding:25px 0;color:#9ba8b7;font-size:12px}.platform-metrics{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:12px;margin:24px 0 12px}.platform-metrics span{display:block;font-size:10px;color:#8092a6;min-height:28px;line-height:1.5}.platform-metrics strong{font-size:24px;font-weight:650;letter-spacing:-.7px}.platform-extra{display:flex;flex-wrap:wrap;gap:8px;font-size:10px;color:#6f8aa2}.platform-extra>span{background:#f3f6fa;border-radius:5px;padding:5px 7px}.platform-bind-form{margin-top:15px}.platform-bind-form label{display:block;font-size:10px;color:#7d91a6;font-weight:400;margin-bottom:6px}.platform-bind-form>div{display:flex;gap:8px}.platform-bind-form button{white-space:nowrap;font-size:11px;padding:9px 12px}.platform-actions{display:flex;align-items:center;gap:14px;margin-top:16px}.platform-actions button,.platform-actions a{border:0;background:none;padding:0;color:#527fa5;cursor:pointer;font:inherit;font-size:11px;text-decoration:none}.platform-actions [data-unbind]{margin-left:auto;color:#9c8790}.platform-actions button:disabled{opacity:.5;cursor:wait}.platform-note,.platform-error,.platform-updated,.platform-action-message{font-size:10px;line-height:1.7;margin:10px 0 0}.platform-note{color:#8695a7}.platform-updated{color:#98a5b4}.platform-action-message:empty{display:none}.rating-details{margin-top:16px;font-size:11px;color:#6f849b}.rating-details summary{cursor:pointer}.rating-details summary span{float:right}.rating-details ol{list-style:none;padding:0;max-height:180px;overflow:auto}.rating-details li{display:flex;justify-content:space-between;gap:16px;padding:7px 0;border-bottom:1px solid #edf2f8}.rating-details li span{overflow-wrap:anywhere}.personal-loading{padding:36px;color:#7e90a3}.personal-page button:disabled{opacity:.55}.personal-page button{transition:background .15s,color .15s}
@media(max-width:800px){.personal-basics{grid-template-columns:1fr}.personal-section-copy p{margin-bottom:0}.personal-form{grid-template-columns:140px minmax(150px,1fr)}.personal-content{padding:28px 20px 60px}.platform-card{padding:20px}.platform-grid{gap:14px}}
@media(max-width:560px){.personal-top{height:64px;padding:0 18px}.personal-top>small{font-size:8px;letter-spacing:1px}.personal-content{padding:24px 16px 50px}.personal-basics{padding:22px 18px;gap:20px}.personal-form{grid-template-columns:1fr}.personal-name-field{width:100%}.personal-name-field button{width:100%;justify-content:center}.platform-grid{grid-template-columns:1fr}.personal-heading h1{font-size:28px}.personal-platform-heading{align-items:flex-start}.personal-platform-heading p{max-width:230px}.personal-platform-heading .binding-count{padding:6px 9px;font-size:10px}.profile-entry{padding:3px;gap:6px}}
@media(prefers-reduced-motion:reduce){.personal-page *{transition:none!important;scroll-behavior:auto!important}}

.personal-name-field select{width:100%;padding:11px;border:1px solid #d7e2ee;border-radius:9px;background:#fbfcfe;color:#28425d;font:inherit}

.platform-bind-form input[type=checkbox]{width:auto;margin-right:5px}.platform-bind-form>label:not(:first-child){margin-top:12px}.platform-bind-form>small{font-size:10px;color:#8092a6}

.personal-password{margin-top:24px}.personal-password label{width:100%}.personal-password input{display:block;margin-top:8px}
