:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#111936;background:#f3f5fd}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background:linear-gradient(135deg,#f7f8ff,#eef2fb)}button,input,textarea,select{font:inherit}.hidden{display:none!important}.wide{width:100%}.spacer{height:12px}
.top{height:62px;background:#fff;border-bottom:1px solid #e5e8f3;display:flex;align-items:center;justify-content:space-between;padding:0 18px;position:sticky;top:0;z-index:80;box-shadow:0 5px 18px #26355b0c}.brand{display:flex;align-items:center;gap:10px;font-weight:850}.logo-wrap{position:relative}.logo{width:36px;height:36px;border-radius:11px;background:linear-gradient(135deg,#7442ff,#5624ed);color:#fff;display:grid;place-items:center;box-shadow:0 8px 18px #6547ff44}.green{width:10px;height:10px;background:#14d66e;border:2px solid #fff;border-radius:50%;position:absolute;right:-2px;top:-2px}
.switch{display:flex;gap:8px}.switch button{border:1px solid #dfe4f3;background:#fff;border-radius:11px;padding:9px 15px;font-weight:800;cursor:pointer;color:#1d2745}.switch button.active{background:#6336f4;color:#fff;border-color:#6336f4}.userbar{display:flex;align-items:center;gap:8px;font-size:13px}.who{color:#707999}.ghost{border:1px solid #dfe4f3;background:#fff;border-radius:10px;padding:8px 11px;font-weight:750;cursor:pointer}
.stage{height:calc(100vh - 62px);position:relative}.frame{width:100%;height:100%;border:0;background:#fff;display:none}.frame.show{display:block}.app{height:100%;overflow:auto;display:none;padding:26px 30px 70px}.app.show{display:block}.kicker{font-size:11px;color:#6336f4;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.title{font-size:34px;font-weight:850;margin:4px 0 3px}.sub{color:#7c86a9;margin-bottom:20px}.notice{background:#fff8df;border:1px solid #f0d988;border-radius:13px;padding:11px 14px;color:#745b14;margin-bottom:14px}
.login-wrap{height:100%;display:none;align-items:center;justify-content:center;padding:30px}.login-wrap.show{display:flex}.login{width:min(430px,100%);background:#fff;border:1px solid #e3e7f3;border-radius:22px;padding:28px;box-shadow:0 24px 70px #33436d18}.login h2{margin:0 0 7px}.login p{color:#7d86a5}.field{display:block;margin:12px 0}.field span{display:block;font-size:12px;color:#697395;margin-bottom:6px;font-weight:700}.field input{width:100%;border:1px solid #dfe4f3;border-radius:12px;padding:12px 13px}.error{margin-top:12px;color:#c33;font-size:13px}
.primary,.btn,.tab{border:1px solid #dfe4f3;background:#fff;border-radius:11px;padding:10px 14px;font-weight:800;cursor:pointer;color:#18213d;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:7px}.primary{background:#6336f4;color:#fff;border-color:#6336f4}.btn.good{background:#e9fbf1;color:#119453;border-color:#c7eed8}.btn.warn{background:#fff7df;color:#946c00;border-color:#f0dda2}.btn.danger{background:#fff1f1;color:#b72c2c;border-color:#f1cccc}.btn.muted{color:#66708d}.btn.small{padding:7px 9px;font-size:12px}.btn[disabled]{opacity:.5;cursor:default}
.toolbar{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:14px}.tabs{display:flex;gap:8px;flex-wrap:wrap}.tab.active{background:#6336f4;color:#fff;border-color:#6336f4}.tab .count{font-size:11px;padding:1px 6px;border-radius:20px;background:#ece8ff;color:#6336f4}.tab.active .count{background:#fff}.search{width:min(420px,100%);background:#fff;border:1px solid #e1e5f1;border-radius:13px;padding:11px 13px}
.panel{background:#fff;border:1px solid #e2e6f3;border-radius:20px;overflow:hidden}.row{display:grid;grid-template-columns:1.5fr 1fr .85fr .9fr .7fr 70px;gap:12px;align-items:center;padding:16px 18px;border-top:1px solid #edf0f7;cursor:pointer}.row:first-child{border-top:0}.row:hover:not(.head){background:#fbfbff}.row.head{background:#fafbff;color:#7580a3;font-size:11px;font-weight:850;text-transform:uppercase;cursor:default}.name{font-weight:850}.meta{font-size:12px;color:#8a93af;margin-top:4px}.price{font-weight:850}.arrow{text-align:right;color:#7c85a6;font-size:22px}.badge{display:inline-flex;align-items:center;gap:7px;font-weight:750}.dot{width:9px;height:9px;border-radius:50%}.dot.gray{background:#a6aec2}.dot.yellow{background:#f2ad24}.dot.green{background:#1bc86d}.dot.blue{background:#4a83f6}.empty{padding:34px;text-align:center;color:#8993b1}
.chat-indicator{display:inline-flex;align-items:center;gap:5px;color:#6a52da;font-weight:850;font-size:12px}.unread-pill{min-width:20px;height:20px;padding:0 6px;border-radius:20px;background:#6336f4;color:#fff;display:inline-grid;place-items:center;font-size:11px}.inbox-row{grid-template-columns:1.2fr 1.6fr .75fr .65fr 48px}.last-message{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#525d7b}.last-message.system{color:#818aa6;font-style:italic}
.toast{position:fixed;top:80px;right:24px;z-index:300;background:#17203b;color:#fff;border-radius:12px;padding:12px 15px;opacity:0;transform:translateY(-8px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:none}
.scrim{position:fixed;inset:62px 0 0;background:rgba(21,28,48,.38);z-index:120;opacity:0;pointer-events:none}.scrim.show{opacity:1;pointer-events:auto}.drawer{position:fixed;top:62px;right:0;bottom:0;width:min(720px,100vw);background:#fff;z-index:130;transform:translateX(101%);transition:.22s;box-shadow:-22px 0 55px #17203c2b;display:flex;flex-direction:column}.drawer.show{transform:none}.drawer-head{padding:22px 24px 17px;border-bottom:1px solid #e7eaf3;display:flex;justify-content:space-between}.drawer-head h2{margin:0 0 6px}.close{border:0;background:none;color:#6f7896;font-weight:800;cursor:pointer}.drawer-body{padding:18px 24px 150px;overflow:auto;flex:1}.drawer-foot{position:absolute;bottom:0;left:0;right:0;background:#fff;border-top:1px solid #e5e8f2;padding:14px 24px;display:flex;justify-content:flex-end;gap:10px}.line{margin:13px 0}.sep{height:1px;background:#edf0f6;margin:18px 0}.muted-text{color:#6f7999}
.paybox{background:#f8f6ff;border:1px solid #ded5ff;border-radius:16px;padding:15px}.paytop{display:flex;justify-content:space-between;align-items:center}.payamount{font-size:24px;font-weight:900}.payactions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.linkbox{margin-top:9px;background:#fff;border:1px solid #e0e4ef;border-radius:10px;padding:8px;font-size:12px;word-break:break-all}
.chatbox{margin-top:16px;border:1px solid #e4e7f1;border-radius:17px;overflow:hidden}.chathead{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 12px;border-bottom:1px solid #edf0f6;background:#fafbff}.chattabs{display:flex;gap:6px}.chattab{border:0;background:#eef1f7;color:#65708f;border-radius:9px;padding:7px 10px;font-weight:800;cursor:pointer}.chattab.active{background:#6336f4;color:#fff}.chat-tools{display:flex;align-items:center;gap:7px}.member-toggle{border:1px solid #dfe4f0;background:#fff;border-radius:9px;padding:7px 9px;font-weight:800;cursor:pointer}.chatstate{font-size:11px;color:#8a93ad}
.members-panel{display:none;padding:12px;border-bottom:1px solid #edf0f6;background:#fff}.members-panel.show{display:block}.members-title{display:flex;justify-content:space-between;font-weight:850;margin-bottom:9px}.member-list{display:flex;flex-direction:column;gap:7px}.member-row{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;padding:9px;border:1px solid #e7eaf3;border-radius:11px}.member-email{font-weight:800}.member-meta{font-size:11px;color:#8790aa}.member-actions{display:flex;gap:6px;align-items:center}.mini-select,.invite-email{border:1px solid #dfe4ef;border-radius:8px;padding:7px;background:#fff;font-size:12px}.invite-box{display:grid;grid-template-columns:1fr auto auto;gap:7px;margin-top:10px}.pending{padding:8px 9px;border-radius:9px;background:#fff8df;color:#785d13;font-size:12px;margin-top:6px}
.chatmessages{height:330px;overflow:auto;padding:13px;background:#f8f9fd;display:flex;flex-direction:column;gap:9px}.chatmsg{max-width:84%;border-radius:14px;padding:9px 11px;line-height:1.38;box-shadow:0 2px 8px #17203b0b}.chatmsg.mine{align-self:flex-end;background:#ede8ff}.chatmsg.other{align-self:flex-start;background:#fff;border:1px solid #e5e8f1}.chatmsg.system{align-self:center;background:#eef1f6;color:#6f7894;font-size:12px;text-align:center;box-shadow:none}.chatauthor{font-size:11px;font-weight:850;color:#697492;margin-bottom:3px}.chattime{font-size:10px;color:#929bb4;margin-top:4px;text-align:right}
.attachments{display:grid;gap:7px;margin-top:7px}.image-attachment{display:block;max-width:280px}.image-attachment img{display:block;max-width:100%;max-height:220px;object-fit:cover;border-radius:10px;border:1px solid #ddd}.file-attachment{display:flex;align-items:center;gap:9px;padding:8px 10px;background:#fff;border:1px solid #dfe4ef;border-radius:10px;color:#17203c;text-decoration:none}.file-icon{font-size:20px}.file-info{min-width:0}.file-name{font-size:12px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:250px}.file-size{font-size:10px;color:#8992ad}
.selected-files{display:flex;gap:6px;flex-wrap:wrap;padding:8px 10px;border-top:1px solid #edf0f6;background:#fff}.file-chip{display:flex;align-items:center;gap:6px;background:#f2f3f8;border-radius:9px;padding:6px 8px;font-size:11px}.file-chip button{border:0;background:none;cursor:pointer;color:#8d3a3a}
.chatform{border-top:1px solid #edf0f6;padding:9px;display:grid;grid-template-columns:auto 1fr auto;gap:7px;background:#fff}.clip{border:1px solid #dfe4ef;background:#fff;border-radius:10px;width:42px;cursor:pointer;font-size:20px}.chatinput{resize:none;min-height:42px;max-height:110px;border:1px solid #dde2ef;border-radius:11px;padding:10px}.chatsend{border:0;background:#6336f4;color:#fff;border-radius:11px;padding:0 14px;font-weight:850;cursor:pointer}
.quick{position:absolute;right:20px;bottom:18px;z-index:30;width:min(500px,45vw);background:#fff;border:1px solid #e0e4f1;border-radius:17px;padding:13px;display:none}.quick.show{display:block}.quick-row{display:flex;justify-content:space-between;gap:10px}.quick-calc b{display:block}.quick-calc span,.quick-title{font-size:12px;color:#818ba9}
@media(max-width:800px){.switch{display:none}.app{padding:18px}.row{grid-template-columns:1fr .8fr 60px}.hide-md{display:none}.member-row,.invite-box{grid-template-columns:1fr}.drawer{width:100vw}.chatmsg{max-width:94%}}