/* @sync WorkspaceManagementScreenSpec.lean; existing semantic DS colors/components. */
.kg-ws { min-height:100vh;background:var(--semantic-background-default);color:var(--semantic-text-primary);font-family:var(--font-body); }
.kg-ws-content {width:min(800px,calc(100% - 64px));margin:20px auto 64px;display:flex;flex-direction:column;gap:20px;}
.kg-ws-section {display:flex;flex-direction:column;gap:20px;min-width:0;}
.kg-ws h2 {font-size:18px;line-height:1.4;margin:0;font-weight:700;}
.kg-ws h3 {font-size:14px;line-height:1.4;margin:0;font-weight:500;}
.kg-ws-heading {display:flex;align-items:flex-start;justify-content:space-between;gap:16px;}
.kg-ws-copy {font-size:14px;line-height:1.6;color:var(--semantic-text-secondary);margin:6px 0 0;}
.kg-ws-helper {font-size:12px;line-height:1.5;color:var(--semantic-text-secondary);margin:0;overflow-wrap:anywhere;}
.kg-ws-notice {font-size:12px;line-height:1.5;color:var(--semantic-text-secondary);padding:10px 12px;background:var(--semantic-background-subtle);border-radius:8px;margin:0;}
.kg-ws-name {display:grid;grid-template-columns:80px minmax(0,1fr);align-items:start;gap:12px;}
.kg-ws-mark {width:80px;height:80px;display:grid;place-items:center;background:var(--semantic-status-brand-soft-fill);border:4px solid var(--semantic-background-default);border-radius:16px;}
.kg-ws-mark img {display:block;}
.kg-ws-field {display:flex;flex-direction:column;gap:6px;min-width:0;flex:1;}
.kg-ws-field > span:first-child {font-size:14px;font-weight:500;}
.kg-ws-field.has-error .input {border-color:var(--semantic-border-danger);}
.kg-ws-row {display:flex;gap:8px;align-items:flex-start;}
.kg-ws-row > * {flex:1;min-width:0;}
.kg-ws-actions {display:flex;gap:8px;justify-content:flex-end;align-items:center;flex-wrap:wrap;}
.kg-ws-upload {display:flex;gap:12px;align-items:center;padding:16px;border:1px solid var(--semantic-border-default);border-radius:12px;background:var(--semantic-background-subtle);min-height:88px;}
.kg-ws-upload > div {flex:1;min-width:0;overflow-wrap:anywhere;}
.kg-ws-upload strong {font-size:14px;}
.kg-ws-file-input {position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;}
.kg-ws-invite-row {display:grid;grid-template-columns:minmax(0,1fr) 180px auto;gap:8px;align-items:end;}
.kg-ws-invite-row .kg-ws-helper {grid-column:1/-1;}
.kg-ws-error {font-size:12px;line-height:1.5;color:var(--semantic-text-danger);margin:0;}
.kg-ws-tabs {display:flex;border-bottom:1px solid var(--semantic-border-default);gap:0;}
.kg-ws-tab {border:0;border-bottom:2px solid transparent;background:transparent;color:var(--semantic-text-tertiary);font:inherit;font-size:16px;padding:10px 12px;cursor:pointer;white-space:nowrap;}
.kg-ws-tab.is-active {color:var(--semantic-text-primary);border-bottom-color:var(--semantic-text-primary);font-weight:700;}
.kg-ws-tools {display:flex;gap:12px;align-items:start;}
.kg-ws-tools > .kg-ws-field {flex:0 0 160px;}
.kg-ws-search {flex:1;min-width:180px;margin-right:auto;}
.kg-ws-table-wrap {border:1px solid var(--semantic-border-default);border-radius:12px;overflow:visible;}
.kg-ws-table {border-collapse:separate;border-spacing:0;width:100%;font-size:12px;text-align:left;}
.kg-ws-table th {background:var(--semantic-background-subtle);font-weight:500;height:44px;color:var(--semantic-text-secondary);}
.kg-ws-table th:first-child {border-radius:12px 0 0 0;}
.kg-ws-table th:last-child {border-radius:0 12px 0 0;}
.kg-ws-table th,.kg-ws-table td {padding:12px 16px;}
.kg-ws-table td {height:56px;color:var(--semantic-text-secondary);vertical-align:middle;}
.kg-ws-table td:first-child {font-size:14px;font-weight:700;color:var(--semantic-text-primary);}
.kg-ws-table td:nth-child(2) {overflow-wrap:anywhere;}
.kg-ws-table td:nth-child(n+3),.kg-ws-table th:nth-child(n+3) {text-align:center;white-space:nowrap;}
.kg-ws-status {display:flex;flex-direction:column;font-size:12px;align-items:center;gap:2px;color:var(--semantic-text-brand);}
.kg-ws-status small {color:var(--semantic-text-tertiary);font-size:11px;}
.kg-ws-menu {position:relative;display:inline-block;}
.kg-ws-menu summary {list-style:none;cursor:pointer;display:flex;gap:4px;align-items:center;justify-content:center;min-height:32px;padding:4px 10px;background:var(--semantic-background-subtle);border-radius:6px;}
.kg-ws-menu summary::-webkit-details-marker {display:none;}
.kg-ws-menu > div {position:absolute;right:0;top:calc(100% + 4px);z-index:15;min-width:220px;background:var(--semantic-background-default);border:1px solid var(--semantic-border-default);border-radius:8px;box-shadow:var(--shadow-md);padding:6px;}
.kg-ws-menu-item {display:block;border:0;background:transparent;color:var(--semantic-text-primary);font:inherit;text-align:left;padding:12px;width:100%;border-radius:4px;cursor:pointer;}
.kg-ws-menu-item:hover {background:var(--semantic-background-subtle);}
.kg-ws-menu-item.is-danger {color:var(--semantic-text-danger);}
.kg-ws-empty {text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px;padding:72px 20px;}
.kg-ws-danger {border-top:1px solid var(--semantic-border-default);padding-top:24px;margin-top:24px;display:flex;align-items:flex-start;flex-direction:column;gap:12px;}
.kg-ws-dialog {width:min(640px,calc(100vw - 32px));}
.kg-ws-dialog .modal__body {display:flex;flex-direction:column;gap:20px;}
.kg-ws-switcher {position:relative;}
.kg-ws-switcher summary {cursor:pointer;list-style:none;}
.kg-ws-switcher summary::-webkit-details-marker {display:none;}
.kg-ws-switcher-menu {position:absolute;top:100%;left:0;z-index:60;width:248px;max-height:360px;overflow:auto;background:var(--semantic-background-default);border:1px solid var(--semantic-border-default);border-radius:12px;box-shadow:var(--shadow-md);padding:8px;}
.kg-ws-switcher-item {display:block;padding:12px;border:0;border-radius:8px;width:100%;background:transparent;color:var(--semantic-text-primary);font:inherit;font-size:14px;text-align:left;text-decoration:none;cursor:pointer;overflow-wrap:anywhere;}
.kg-ws-switcher-item:hover {background:var(--semantic-background-subtle);}
.kg-ws :focus-visible,.kg-ws-switcher :focus-visible {outline:2px solid var(--semantic-border-focus);outline-offset:3px;}
@media(max-width:1000px){.kg-ws-content{width:calc(100% - 40px)}.kg-ws-tools{flex-wrap:wrap}.kg-ws-tools>.kg-ws-field{flex:1}.kg-ws-search{flex-basis:100%}.kg-ws-table-wrap{overflow-x:auto}.kg-ws-table{min-width:660px}.kg-ws-menu>div{position:fixed;right:24px;top:auto;bottom:32px}}
@media(max-width:600px){.kg-ws-content{width:calc(100% - 24px)}.kg-ws-row{flex-direction:column}.kg-ws-row>*{width:100%}.kg-ws-invite-row{grid-template-columns:minmax(0,1fr) 110px}.kg-ws-invite-row>.btn{grid-column:1/-1}.kg-ws-name{grid-template-columns:56px minmax(0,1fr)}.kg-ws-mark{width:56px;height:56px}.kg-ws-mark img{transform:scale(.8)}.kg-ws-tabs{overflow-x:auto}.kg-ws-tab{font-size:14px;padding:10px 8px}.kg-ws-upload{flex-wrap:wrap}.kg-ws-heading{flex-wrap:wrap}}
.kg-main-detail:has(> .kg-ws) {padding:0;background:var(--semantic-background-default);}
.kg-ws-mobile-nav {display:none;}
@media(max-width:600px){
  .kg-master-detail:has(.kg-ws){grid-template-columns:minmax(0,1fr);}
  .kg-master-detail:has(.kg-ws)>.kg-sidebar{display:none;}
  .kg-ws-mobile-nav{display:block;margin-bottom:12px;}
  .kg-ws-mobile-nav .kg-workspace-switcher{width:100%;}
  .kg-ws .toast-stack{left:12px;right:12px;bottom:16px;width:auto;}
}

/* Stable workspace identity: shared between the creation form, settings, and switcher. */
.kg-ws-mark {flex-shrink:0;color:var(--semantic-text-brand);}
.kg-ws-mark--small {width:40px;height:40px;border:0;border-radius:8px;}
.kg-ws-mark--mini {width:28px;height:28px;border:0;border-radius:6px;}
.kg-ws-mark--blue {background:var(--semantic-status-brand-soft-fill);color:var(--semantic-text-brand);}
.kg-ws-mark--purple {background:var(--semantic-status-info-soft-fill);color:var(--semantic-status-info-solid-fill);}
.kg-ws-mark--teal {background:var(--semantic-status-secondary-soft-fill);color:var(--semantic-status-secondary-content);}
.kg-ws-mark--green {background:var(--semantic-status-success-soft-fill);color:var(--semantic-text-success);}
.kg-ws-mark--orange {background:var(--semantic-status-warning-soft-fill);color:var(--semantic-text-warning);}
.kg-ws-mark--red {background:var(--semantic-status-danger-soft-fill);color:var(--semantic-text-danger);}
.kg-ws-mark-icon {display:block;width:44px;height:44px;background:currentColor;mask:var(--workspace-icon) center/contain no-repeat;-webkit-mask:var(--workspace-icon) center/contain no-repeat;}
.kg-ws-mark--small .kg-ws-mark-icon {width:24px;height:24px;}
.kg-ws-mark--mini .kg-ws-mark-icon {width:18px;height:18px;}
.kg-ws-mark-icon--bookmark {--workspace-icon:url('/assets/icons/workspace-bookmark.svg');}
button.kg-ws-switcher-item {display:flex;align-items:center;gap:10px;}
@media(max-width:600px){.kg-ws-name .kg-ws-mark-icon{width:32px;height:32px;}}

/* Creation form hierarchy: close title/content grouping, larger section separation. */
.kg-ws-form {display:flex;flex-direction:column;gap:24px;min-width:0;}
.kg-ws-form-group {display:flex;flex-direction:column;gap:12px;min-width:0;}
.kg-ws-form-group h3 {font-size:16px;line-height:24px;font-weight:600;}
.kg-ws-group-header {display:flex;flex-direction:column;gap:4px;}
.kg-ws-group-header .kg-ws-copy {margin:0;}
.kg-ws-form > .kg-ws-actions {margin-top:16px;}
.kg-ws-error:empty,.kg-ws-invite-list:empty {display:none;}
.kg-ws-invite-list {display:flex;flex-direction:column;gap:8px;min-width:0;}
.kg-ws-invite-card {display:grid;grid-template-columns:minmax(0,1fr) 120px auto;gap:12px;align-items:center;padding:12px 16px;min-height:64px;border:1px solid var(--semantic-border-default);border-radius:8px;background:var(--semantic-background-subtle);}
.kg-ws-invite-copy {min-width:0;display:flex;flex-direction:column;gap:4px;}
.kg-ws-invite-copy strong {font-size:14px;line-height:20px;font-weight:700;overflow-wrap:anywhere;}
.kg-ws-invite-card > * {min-width:0;}
.kg-ws-invite-card > .bound-dropdown {align-self:end;}
.kg-ws-invite-card > .btn {height:40px;align-self:end;white-space:nowrap;padding-inline:0;gap:8px;}
.kg-ws-cancel-icon {width:16px;height:16px;flex-shrink:0;}
@media(max-width:600px){
  .kg-ws-invite-card{grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:12px;}
  .kg-ws-invite-copy{grid-column:1/-1;}
  .kg-ws-invite-card > .bound-dropdown{max-width:160px;}
}

/* Settings remain read-only; each row opens its own editor. */
.kg-ws-settings {display:flex;flex-direction:column;gap:20px;}
.kg-ws-settings-group {display:grid;grid-template-columns:160px minmax(0,1fr);gap:24px;padding:24px 0;border-top:1px solid var(--semantic-border-default);align-items:start;}
.kg-ws-settings-group > h3 {padding:20px 0;font-size:14px;font-weight:600;line-height:22px;}
.kg-ws-settings-rows {display:flex;flex-direction:column;gap:4px;min-width:0;}
.kg-ws-setting-row {display:flex;align-items:center;gap:16px;width:100%;min-width:0;min-height:88px;padding:20px;border:0;border-radius:8px;background:transparent;color:var(--semantic-text-primary);font:inherit;text-align:left;cursor:pointer;}
.kg-ws-setting-row:hover {background:var(--semantic-background-subtle);}
.kg-ws-setting-text {display:flex;flex:1;min-width:0;flex-direction:column;gap:6px;}
.kg-ws-setting-text strong {font-size:14px;line-height:20px;font-weight:500;}
.kg-ws-setting-text > span {font-size:14px;line-height:22px;color:var(--semantic-text-secondary);overflow-wrap:anywhere;}
.kg-ws-setting-row > .kg-ws-mark {order:2;}
.kg-ws-setting-chevron {order:3;width:16px;height:16px;flex-shrink:0;}
.kg-ws-setting-row--danger strong {color:var(--semantic-text-danger);}
@media(max-width:600px){
  .kg-ws-settings-group{grid-template-columns:minmax(0,1fr);gap:8px;padding:20px 0;}
  .kg-ws-settings-group>h3{padding:0 12px;}
  .kg-ws-setting-row{padding:16px 12px;}
}

/* Role capability matrix: stable, keyboard-accessible controls with 44px targets. */
.kg-ws-permissions {table-layout:fixed;}
.kg-ws-permissions th:first-child {width:43%;}
.kg-ws-permissions th:not(:first-child),.kg-ws-permissions td {text-align:center;}
.kg-ws-permissions tbody th:first-child {border-radius:0;}
.kg-ws-permissions tbody th {background:transparent;border-radius:0;font-size:14px;font-weight:500;color:var(--semantic-text-primary);}
.kg-ws-permissions tbody th,.kg-ws-permissions td {height:56px;padding:6px 16px;border-top:1px solid var(--semantic-border-default);}
.kg-ws-permission-check {min-width:72px;min-height:44px;justify-content:center;}
.kg-ws-permission-footer {display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.kg-ws-permission-footer .kg-ws-actions {margin-left:auto;}
@media(max-width:600px){.kg-ws-permissions{min-width:540px}.kg-ws-permissions th:first-child{width:40%}.kg-ws-permissions th,.kg-ws-permissions td{padding-inline:8px}}

/* Every management tab shares the same heading rhythm. */
.kg-ws-heading-copy {display:flex;flex-direction:column;gap:6px;min-width:0;}
.kg-ws-heading-copy h2 {font-size:18px;line-height:26px;font-weight:700;margin:0;}
.kg-ws-heading-copy .kg-ws-copy {font-size:14px;line-height:22px;font-weight:400;margin:0;}
.kg-ws-heading > .btn {flex-shrink:0;}
