/* Workspace visual system: quiet surfaces, deliberate hierarchy. */
:root{--ws-line:#ffffff13;--ws-muted:#a3adc0;--ws-accent:#c7b6ff}
.account-link img{width:32px;height:32px;border-radius:50%;object-fit:cover;vertical-align:middle}
.dashshell{max-width:1520px;gap:24px}.dashside{border:1px solid var(--ws-line);background:#10151e}.dashhero{background:linear-gradient(120deg,#182132,#19182b);border:1px solid var(--ws-line);border-radius:22px}.dashhero h1{letter-spacing:.02em}.dashhero p,.subtle{color:var(--ws-muted);line-height:1.7}.dashpanel{border:1px solid var(--ws-line);box-shadow:none;border-radius:18px}
.library-sections{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:22px 0}.library-sections a{display:grid;gap:7px;padding:24px;border:1px solid var(--ws-line);border-radius:18px;background:#111823;transition:border-color .18s,background .18s}.library-sections strong{font-size:21px}.library-sections small{color:var(--ws-muted)}.library-sections a.active{background:#211e35;border-color:#bca4ff88;box-shadow:inset 3px 0 #bca4ff}.library-tools{padding:20px;border:1px solid var(--ws-line);border-radius:18px;background:#111722;margin-bottom:20px}.library-filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.library-filters label{display:grid;gap:7px;min-width:130px;color:var(--ws-muted);font-size:13px}.library-filters select,.workspace-bulk select{background:#1b2230;color:#f0f2fa;border:1px solid #ffffff20;border-radius:10px;padding:11px;min-height:43px}.library-filters .charactertrigger{max-width:260px;min-width:160px;margin:0}.library-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid var(--ws-line)}.library-summary>span{color:var(--ws-muted);font-size:13px}.library-summary>div{display:flex;align-items:center;gap:14px}.view-switch{font-size:13px;color:var(--ws-accent)}
.workspace-bulk{display:none;position:sticky;top:10px;z-index:8;background:#202439;border:1px solid #bca4ff66;border-radius:16px;padding:16px;margin:16px 0;box-shadow:0 12px 35px #0005}.is-bulk .workspace-bulk{display:block}.bulk-line{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.bulk-line label{display:flex;align-items:center;gap:8px}.workspace-bulk small{color:#bfc4d6}.workspace-check{display:none;position:absolute;top:12px;left:12px;z-index:3;padding:7px;border-radius:9px;background:#151a29e8}.is-bulk .workspace-check{display:block}.workspace-check input{width:20px;height:20px;accent-color:#c1a7ff}.worktile{border-radius:16px;transition:border-color .15s;contain:layout paint}.worktile:has(input:checked){border-color:#c1a7ff;outline:2px solid #c1a7ff}.worktile .workopen img{object-fit:contain!important;transform:none!important;background:#0b1019}.workspace-row-meta{display:none}.table-layout .workgallery{display:flex;flex-direction:column}.table-layout .worktile{display:flex;aspect-ratio:auto;height:106px;min-height:106px}.table-layout .workopen{width:130px;flex:none}.table-layout .workspace-row-meta{display:flex;flex:1;flex-direction:column;justify-content:center;gap:8px;padding:12px 22px;min-width:0}.workspace-row-meta span{font-size:13px;color:var(--ws-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-row-meta small{color:var(--ws-muted)}.undo-line{margin:20px 0;text-align:center}.undo-line button,.profile-tabs a{padding:11px 16px;border:1px solid var(--ws-line);border-radius:11px;background:#151d29;color:#d7caff;cursor:pointer}.profile-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.profile-card{display:grid;grid-template-columns:300px minmax(0,1fr);gap:40px}.avatar-editor{text-align:center;border-right:1px solid var(--ws-line);padding-right:25px}.profile-avatar{width:112px;height:112px;border-radius:50%;object-fit:cover;border:3px solid #c0a9ff66}.avatar-editor p{font-size:12px;color:var(--ws-muted)}.profile-card textarea{width:100%;background:#0c1320;color:#fff;border:1px solid #ffffff22;border-radius:12px;padding:14px;resize:vertical;box-sizing:border-box}.profile-card form{display:grid;gap:16px}.profile-card input[type=file]{max-width:100%;font-size:12px}#avatarCanvas{max-width:100%;width:180px;border-radius:50%;margin:12px auto;display:block}#avatarCrop label{font-size:12px}.checkline{display:flex!important;align-items:center;gap:10px}.checkline input{width:auto!important}.dashnav a{transition:background .15s,color .15s}.dashnav a.active{background:#28223b;color:#dfd2ff}.dashmain button{transition:background .16s,transform .16s,opacity .16s}.dashmain button:active{transform:translateY(1px)}.dashmain button:disabled{opacity:.5;cursor:wait}dialog::backdrop{background:#020713bb}.workdialog{border:1px solid #ffffff22}.workdetailpreview img{object-fit:contain!important}.flashes{position:fixed!important;top:auto!important;bottom:24px!important;left:50%!important;transform:translateX(-50%);width:min(520px,92vw);z-index:100;pointer-events:none}
.reduce-motion *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(max-width:980px){.dashshell{gap:14px}.dashside{padding:12px}.dashnav{display:flex;overflow-x:auto;gap:6px;flex-wrap:nowrap;padding:5px 0}.dashnav a{flex:0 0 auto;padding:10px 13px}.dashnav .navlabel{display:none}.dashlogout{display:block;margin-top:8px}.usercard{padding-bottom:10px}.profile-card{grid-template-columns:1fr;gap:25px}.avatar-editor{border-right:0;border-bottom:1px solid var(--ws-line);padding:0 0 25px}.avatar-editor form{max-width:340px;margin:15px auto}.library-filters{gap:10px}.library-sections a{padding:20px}}
@media(max-width:600px){.library-sections{gap:10px}.library-sections strong{font-size:16px}.library-sections small{font-size:11px}.library-sections a{padding:18px 12px}.library-tools{padding:14px}.library-filters label{flex:1;min-width:110px}.library-filters .charactertrigger{max-width:none;flex:1}.library-summary{align-items:start}.library-summary>div{flex-wrap:wrap;justify-content:end}.workgallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.workspace-bulk{position:relative;top:0}.bulk-line select{max-width:100%;flex:1;min-width:140px}.table-layout .workopen{width:95px}.table-layout .workspace-row-meta{padding:12px}.profile-tabs a{font-size:12px;padding:10px}.dashhero{padding:22px 18px}.top nav{gap:8px}.account-link img{width:26px;height:26px}}

.flashes[hidden]{display:none!important}

.library-filters{display:grid!important;grid-template-columns:160px 160px minmax(180px,1fr) 110px 70px;align-items:end!important;gap:12px}.library-filters>label{margin:0!important;padding:0!important;gap:8px}.library-filters select,.library-filters .charactertrigger,.library-filters>.primary,.library-filters>a{height:46px!important;min-height:46px!important;box-sizing:border-box!important;margin:0!important}.library-filters>.charactertrigger{max-width:none!important;width:100%;align-self:end}.library-filters>a{display:flex;align-items:center;justify-content:center}.library-filters input[type=hidden]{display:none!important}.workspace-bulk input[type=checkbox]{width:18px;height:18px;flex:none}.bulk-line>select,.bulk-line>.primary,.bulk-line .charactertrigger{height:44px;margin:0!important}.library-filters .chosenrolenames{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.library-filters .miniavatars{display:none}
@media(max-width:1100px){.library-filters{grid-template-columns:1fr 1fr!important}.library-filters>.charactertrigger{grid-column:1/-1}.library-filters>.primary,.library-filters>a{width:100%}}
.chat-room{margin-top:20px;background:#111824;border:1px solid #ffffff18;border-radius:20px;overflow:hidden}.chat-topbar{display:flex;align-items:center;gap:12px;padding:15px;border-bottom:1px solid #ffffff12;flex-wrap:wrap}.chat-topbar span{flex:1;font-size:12px;color:#a9b9c9}.chat-topbar button,.chat-message button,.chat-file-label,.chat-selected-file{border:1px solid #ffffff25;border-radius:9px;padding:8px 12px;background:#ffffff06;color:#d8cfff;cursor:pointer}.chat-messages{height:52vh;min-height:260px;overflow:auto;padding:22px;overscroll-behavior:contain;display:flex;flex-direction:column;gap:18px}.chat-message{max-width:85%;align-self:flex-start;background:#1d2636;border-radius:14px;padding:13px 16px;min-width:140px;overflow-wrap:anywhere}.chat-message.mine{align-self:flex-end;background:#302842}.chat-message header{display:flex;align-items:center;gap:12px;font-size:12px;color:#bdafdc}.chat-message time{color:#97a2b7;font-size:11px}.chat-message p{white-space:pre-wrap;line-height:1.6;margin:10px 0;color:#f1f2f6}.chat-message footer{display:flex;gap:10px;margin-top:8px}.chat-message button{font-size:11px;padding:4px 9px}.chat-attachments{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.chat-attachments img,.chat-attachments video{width:100%;max-width:300px;max-height:300px;object-fit:contain;border-radius:9px;background:#080d17}.chat-composer{border-top:1px solid #ffffff18;padding:18px;display:grid;gap:10px}.chat-composer>label{font-size:12px;color:#a9b9c9}.chat-composer textarea{resize:vertical;width:100%;box-sizing:border-box;min-height:70px;background:#090f19;color:#fff;border:1px solid #ffffff20;border-radius:12px;padding:13px;font:inherit}.chat-compose-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.chat-compose-actions>span{flex:1;color:#9faabd;font-size:12px}.chat-file-label input{display:none}.chat-selected-file{font-size:12px;margin:3px;max-width:100%;overflow-wrap:anywhere}#chatStatus{font-size:13px;color:#c6b7df;margin:0}#chatBottom{display:block;margin:8px auto;padding:8px 16px;background:#bfa4fa;border-radius:20px}#chatBottom[hidden]{display:none}.room-badge{font-size:12px;padding:9px 15px;border-radius:20px;background:#ffffff10}#muteList>div{display:flex;gap:12px;padding:10px;align-items:center}#muteList button{margin-left:auto}
@media(max-width:600px){.chat-message{max-width:92%;padding:10px}.chat-messages{padding:12px;height:48vh}.chat-compose-actions>span{order:3;flex-basis:100%}.chat-compose-actions>.primary{margin-left:auto}.chat-attachments{grid-template-columns:1fr}.chat-composer{padding:12px}}
/* Allow grid children to shrink independently of the scrolling navigation. */
.dashshell{grid-template-columns:260px minmax(0,1fr)}.dashside,.dashmain{min-width:0;max-width:100%;box-sizing:border-box}.dashnav{min-width:0;max-width:100%}.chat-message header{flex-wrap:wrap}.chat-message{box-sizing:border-box}.library-filters>label{min-width:0}.library-filters select{width:100%;min-width:0}
@media(max-width:980px){.dashshell{grid-template-columns:minmax(0,1fr)!important}}
