:root{font-family:Arial,"Helvetica Neue",Helvetica,sans-serif;color:#dbdee1;background:#313338;font-size:14px;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;height:100vh;overflow:hidden}button,input,textarea,select{font:inherit}button{cursor:pointer;border:0}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #5865f2;outline-offset:2px}.boot{padding:32px;color:#f2f3f5;font-weight:700;font-size:24px}.layout{height:100vh;display:grid;grid-template-columns:72px 240px minmax(0,1fr);background:#313338}.rail{background:#1e1f22;display:flex;align-items:center;flex-direction:column;gap:9px;padding:12px 0}.rail-logo,.server-icon{height:48px;width:48px;border-radius:50%;display:grid;place-items:center;background:#313338;color:#f2f3f5;font-weight:700;transition:.15s;border:0;font-size:16px}.rail-logo{border-radius:16px;background:#5865f2}.rail-logo:hover,.server-icon:hover,.server-icon.active{border-radius:16px;background:#5865f2}.rail-divider{height:2px;width:32px;background:#35363c;border-radius:2px}.server-icon{position:relative;overflow:hidden}.server-icon img{width:100%;height:100%;object-fit:cover}.server-icon .tip{display:none}.server-icon:hover{background:#5865f2}.rail-spacer{flex:1}.side{background:#2b2d31;min-width:0;display:flex;flex-direction:column;border-radius:8px 0 0 8px}.side-head{height:48px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;font-weight:700;color:#f2f3f5;border-bottom:1px solid #242528;box-shadow:0 1px 0 #383a40}.icon-btn{color:#b5bac1;background:transparent;padding:6px;border-radius:4px}.icon-btn:hover{background:#404249;color:#fff}.side-content{padding:14px 8px;overflow:auto;flex:1}.section-label{font-size:11px;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:#949ba4;padding:12px 8px 6px;display:flex;justify-content:space-between;align-items:center}.nav-row{height:36px;display:flex;align-items:center;gap:10px;padding:0 10px;color:#b5bac1;border-radius:4px;cursor:pointer;margin:1px 0;white-space:nowrap;overflow:hidden}.nav-row:hover{background:#35373c;color:#dbdee1}.nav-row.active{background:#404249;color:#fff}.nav-icon{width:18px;text-align:center;color:#949ba4;font-weight:600}.nav-row.active .nav-icon{color:#fff}.nav-row .count{margin-left:auto;font-size:11px;background:#ed4245;color:#fff;border-radius:8px;padding:1px 5px}.user-panel{height:54px;background:#232428;display:flex;align-items:center;gap:9px;padding:7px 9px}.avatar{height:34px;width:34px;border-radius:50%;background:#5865f2;color:white;display:grid;place-items:center;font-weight:700;flex:none;object-fit:cover}.user-text{min-width:0;flex:1}.user-name{font-weight:600;color:#f2f3f5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-sub{font-size:11px;color:#949ba4;margin-top:2px}.main{min-width:0;display:flex;flex-direction:column;background:#313338}.topbar{height:48px;border-bottom:1px solid #26272b;display:flex;align-items:center;padding:0 16px;gap:10px;box-shadow:0 1px 0 #393b42;flex:none}.top-title{font-weight:700;color:#f2f3f5;font-size:15px}.top-sub{color:#949ba4;font-size:12px}.top-spacer{flex:1}.search{width:min(230px,32vw);height:28px;border-radius:4px;background:#1e1f22;color:#dbdee1;padding:0 8px;border:0}.top-link{color:#b5bac1;background:transparent;padding:7px;border-radius:4px}.top-link:hover{background:#404249;color:#fff}.content{flex:1;min-height:0;overflow:auto;padding:22px 24px}.content-inner{max-width:1050px;margin:0 auto}.page-title{font-size:24px;font-weight:700;color:#f2f3f5;margin:0 0 8px}.page-desc{color:#b5bac1;margin:0 0 22px;line-height:1.5}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.card{background:#2b2d31;border:1px solid #3a3c43;border-radius:8px;padding:16px}.card h3{margin:0 0 8px;color:#f2f3f5;font-size:16px}.muted{color:#949ba4}.small{font-size:12px}.btn{height:36px;border-radius:4px;padding:0 14px;background:#5865f2;color:white;font-weight:600}.btn:hover{background:#4752c4}.btn.secondary{background:#4e5058}.btn.secondary:hover{background:#686a73}.btn.danger{background:#da373c}.btn.ghost{background:transparent;color:#dbdee1}.btn.ghost:hover{background:#404249}.btn:disabled{opacity:.5;cursor:not-allowed}.field{display:flex;flex-direction:column;gap:7px;margin:12px 0}.field label{font-size:11px;font-weight:700;color:#b5bac1;text-transform:uppercase}.input,.textarea,.select{width:100%;border:1px solid #1e1f22;border-radius:4px;background:#1e1f22;color:#dbdee1;padding:10px 12px;min-height:40px}.textarea{resize:vertical;min-height:90px}.row{display:flex;gap:10px;align-items:center}.row>*{min-width:0}.row .field{flex:1}.form{max-width:460px}.divider{height:1px;background:#3f4148;margin:16px 0}.empty{padding:42px 18px;text-align:center;color:#949ba4}.empty h3{color:#dbdee1;margin:0 0 8px}.chat-layout{height:100%;display:flex;flex-direction:column;min-height:0}.chat-scroll{flex:1;overflow:auto;padding:18px 20px}.message{display:flex;gap:12px;padding:5px 0}.message:hover{background:#2e3035}.message .avatar{width:38px;height:38px}.message-body{min-width:0;flex:1}.message-meta{display:flex;gap:8px;align-items:baseline;margin-bottom:3px}.message-author{font-weight:600;color:#f2f3f5}.message-time{font-size:11px;color:#949ba4}.message-content{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.45}.composer{display:flex;gap:10px;padding:12px 18px 18px;flex:none}.composer .input{min-height:44px}.chat-notice{margin:0 18px 12px;padding:10px 12px;background:#2b2d31;border-radius:6px;color:#b5bac1;font-size:12px}.auth-wrap{height:100vh;background:#313338;display:grid;place-items:center;padding:20px}.auth-box{width:min(100%,480px);background:#2b2d31;border-radius:8px;padding:32px;box-shadow:0 8px 24px #0003}.brand{font-size:26px;font-weight:700;letter-spacing:-.5px;color:#f2f3f5}.brand span{color:#5865f2}.auth-box h1{font-size:23px;margin:8px 0;color:#f2f3f5}.auth-box p{color:#b5bac1}.auth-foot{margin-top:18px;color:#b5bac1}.text-link{color:#00a8fc;background:transparent;padding:0}.badge{font-size:10px;font-weight:700;border-radius:3px;padding:2px 5px;background:#5865f2;color:white;vertical-align:middle}.badge.verified{background:#5865f2}.badge.owner{background:#b8860b}.official{color:#f2f3f5;font-weight:700}.official .badge{margin-left:5px}.notice-item{padding:13px 0;border-bottom:1px solid #3f4148}.notice-item.unread{border-left:3px solid #5865f2;padding-left:12px}.notice-item h3{margin:0 0 5px;font-size:14px;color:#f2f3f5}.notice-item p{margin:0;color:#b5bac1;line-height:1.45}.notice-item time{display:block;font-size:11px;color:#949ba4;margin-top:7px}.console-backdrop{position:fixed;inset:0;background:#0009;display:grid;place-items:center;padding:20px;z-index:10}.console{width:min(720px,100%);background:#1e1f22;border:1px solid #42444b;border-radius:8px;overflow:hidden;box-shadow:0 20px 70px #0008}.console-head{padding:14px 16px;display:flex;align-items:center;justify-content:space-between;background:#2b2d31;color:#f2f3f5;font-weight:700}.console-output{padding:14px;height:260px;overflow:auto;font-family:Consolas,monospace;color:#b5bac1;white-space:pre-wrap}.console-input{display:flex;border-top:1px solid #42444b;padding:10px;gap:10px}.console-input input{background:#111214;color:#dbdee1;border:0;flex:1;padding:10px;font-family:Consolas,monospace}.toast-wrap{position:fixed;right:18px;bottom:18px;display:flex;flex-direction:column;gap:8px;z-index:30}.toast{background:#1e1f22;border:1px solid #42444b;border-radius:6px;padding:12px 16px;max-width:340px;box-shadow:0 5px 20px #0004;color:#dbdee1}.toast.error{border-left:3px solid #ed4245}.toast.success{border-left:3px solid #23a559}.list-item{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #3f4148}.list-item .grow{flex:1;min-width:0}.list-item strong{color:#f2f3f5}.server-code{font-family:Consolas,monospace;background:#1e1f22;padding:4px 7px;border-radius:4px;color:#dbdee1}.hide{display:none!important}@media(max-width:800px){.layout{grid-template-columns:60px 190px minmax(0,1fr)}.rail-logo,.server-icon{width:42px;height:42px}.content{padding:18px 14px}.search{display:none}.side-head{padding:0 10px}}@media(max-width:560px){.layout{grid-template-columns:54px minmax(0,1fr)}.side{display:none}.content{padding:16px 12px}.topbar{padding:0 10px}.page-title{font-size:21px}.rail-logo,.server-icon{width:38px;height:38px}.rail{padding-top:9px}}
