.workspace-list {display:grid;gap:.5rem;margin:1rem 0;max-height:34rem;overflow:auto;overscroll-behavior:contain}
.workspace-row {display:grid;grid-template-columns:minmax(0,2.2fr) repeat(3,minmax(0,1fr));gap:.75rem;align-items:center;padding:.8rem;background:#ffffff07;border:1px solid #ffffff12;border-radius:.8rem;transition:background .2s,border-color .2s}
.workspace-row:hover {background:#ffffff0d;border-color:#efa97d55}
.fleet-panel {margin-bottom:1.2rem}
.fleet-panel .workspace-row {grid-template-columns:minmax(0,2.2fr) repeat(3,minmax(0,1fr)) auto}
.workspace-identity,.profile-summary {display:flex;align-items:center;gap:.8rem;min-width:0}
.profile-summary {margin-bottom:1rem}
.workspace-identity strong {overflow-wrap:anywhere}
.workspace-icon {width:2.5rem;height:2.5rem;flex:none;display:grid;place-items:center;position:relative;overflow:hidden;background:#262641;border-radius:.7rem;color:#ffd0b3}
.workspace-icon img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.workspace-stat small,.workspace-identity small {display:block;color:#a9afc3;font-size:.75rem;overflow-wrap:anywhere}
.workspace-stat strong {display:block;overflow-wrap:anywhere}
.danger {background:#632b39;border:1px solid #a54b60;color:#fff3f4;border-radius:.65rem;padding:.65rem .9rem;min-height:44px}
.leave-actions {display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.65rem}
#leave-dialog {max-width:min(28rem,calc(100% - 2rem))}
.widget-tools {display:flex;gap:.25rem;justify-content:flex-end;align-items:center;margin-bottom:.25rem}
.widget-handle {cursor:grab;font-size:1.35rem;padding:.25rem;color:#efa97d}
.widget-tools .quiet {min-width:44px;min-height:44px}
#widget-grid > article {transition:opacity .18s,outline-color .18s;outline:2px dashed transparent;outline-offset:2px;min-width:0}
#widget-grid .drop-target {outline-color:#efa97d}
#widget-grid .dragging {opacity:.55}
.layout-tip {font-size:.84rem}
.discord-frame {background:#313338;color:#f2f3f5;border-radius:.75rem;overflow:hidden;margin-top:.7rem;max-width:100%}
.discord-channel {background:#26272b;color:#b5bac1;padding:.7rem .85rem;font-size:.78rem}
.discord-message {display:grid;grid-template-columns:auto minmax(0,1fr);gap:.65rem;padding:.8rem}
.discord-message > img {width:2.1rem;height:2.1rem;border-radius:50%}
.discord-bot {display:inline-block;padding:.1rem .28rem;border-radius:.2rem;background:#5865f2;color:white;font-size:.65rem;vertical-align:middle}
.discord-message .rank-card {margin-top:.55rem;min-width:0;max-width:100%}
.discord-message .owner-ann-preview {margin-top:.55rem}
.page:not([hidden]) {animation:workspace-enter .28s ease-out}
@keyframes workspace-enter {from {opacity:0;transform:translateY(6px)} to {opacity:1;transform:none}}
@media(max-width:650px) {
    .workspace-row,.fleet-panel .workspace-row {grid-template-columns:repeat(3,minmax(0,1fr))}
    .workspace-identity {grid-column:1/-1}
    .workspace-row .danger {grid-column:1/-1;justify-self:start}
    .rank-message {grid-template-columns:minmax(0,1fr)}
    .rank-message > img {display:none}
}
@media(pointer:coarse) {.widget-handle {display:none}}
@media(prefers-reduced-motion:reduce) {.page:not([hidden]) {animation:none} .workspace-row,#widget-grid > article {transition:none}}
.workspace-prefs {display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;margin-top:1.25rem}
.workspace-prefs select {width:auto;min-height:44px}
.discord-preview-text {white-space:pre-wrap;overflow-wrap:anywhere;margin:.4rem 0 0}
body[data-palette=discord] {--bg:#1e1f22;--panel:#2b2d31;--accent:#a6aeff;background:#1e1f22}
body[data-palette=discord] > aside,body[data-palette=discord] .panel {background:#2b2d31}
body[data-palette=ocean] {--bg:#091b2b;--panel:#102840;--accent:#9adefb;background:#091b2b}
body[data-palette=ocean] > aside,body[data-palette=ocean] .panel {background:#102840}
#status-editor details {margin-top:.8rem;padding:.8rem 1rem;background:#ffffff07;border:1px solid #ffffff15;border-radius:.8rem}
#status-editor summary {cursor:pointer;font-weight:700}
#status-editor form {margin-top:.9rem}
#incident-components {display:flex;flex-wrap:wrap;gap:.8rem;border:1px solid #ffffff20;border-radius:.7rem}
#incident-components label {display:flex;gap:.35rem;align-items:center}
#incident-dates[hidden] {display:none}
