/* Production adapters for the shared ds components. Load after page layout CSS.
   Page-specific geometry belongs in workspace/navigation; component sizes only here. */
.dashboard-ui{--bg:var(--ds-bg);--panel:var(--ds-surface);--ink:var(--ds-title);--muted:var(--ds-muted);--accent:var(--ds-primary);--border:var(--ds-border);color-scheme:light;margin:0;background:var(--ds-bg);color:var(--ds-text);font:14px/1.5 Pretendard,system-ui,sans-serif}
.dashboard-ui *{box-sizing:border-box}
.dashboard-ui :where(h1,h2,h3){color:var(--ds-title);word-break:keep-all;overflow-wrap:anywhere}
.dashboard-ui h1{font-size:24px;line-height:1.3;margin:0}
.dashboard-ui :where(h2){font-size:18px;line-height:1.4;margin:0 0 var(--ds-gap)}
.dashboard-ui :where(h3){font-size:16px;line-height:1.5;margin:24px 0 12px}
.dashboard-ui :where(p:not(.ds-caption):not(.ds-message):not(.nav-caption):not(.nav-user)){margin:0 0 var(--ds-gap);word-break:keep-all;overflow-wrap:anywhere}
.dashboard-ui :where(small,footer){color:var(--ds-muted);font-size:12px}
.dashboard-ui :where(a:not(.ds-nav-link):not(.nav-brand)){color:var(--ds-primary)}
.dashboard-ui :where(section,.card){min-width:0;margin:0;padding:var(--ds-card-padding);border:1px solid var(--ds-border);border-radius:var(--ds-card-radius);background:var(--ds-surface)}
.dashboard-ui main{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--ds-gap);min-width:0}
.dashboard-ui :where(.tab:not(section),#policyFields){display:grid;gap:var(--ds-gap);min-width:0}
.dashboard-ui section>:last-child{margin-bottom:0}
.dashboard-ui :where(.grid){display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:var(--ds-gap);align-items:end}
.dashboard-ui :where(.grid)>*{min-width:0}
.dashboard-ui :where(form){min-width:0}
.dashboard-ui :where(form:not(.ds-flow):not(.ds-toolbar))>:is(.grid,.ds-field,.ds-check,textarea,.actions){margin-bottom:var(--ds-gap)}
.dashboard-ui :where(form)>button{margin-top:0}
.dashboard-ui :where(section) form+form{margin-top:var(--ds-gap);padding-top:var(--ds-gap);border-top:1px solid var(--ds-border)}
.dashboard-ui :where(.actions){display:flex;flex-wrap:wrap;gap:var(--ds-action-gap);align-items:center;margin:var(--ds-gap) 0}
.dashboard-ui .ds-field{word-break:keep-all;overflow-wrap:anywhere}
.dashboard-ui .ds-check{flex-direction:row;gap:8px;word-break:keep-all}
.dashboard-ui .ds-check input{flex:0 0 18px;margin:0}
.dashboard-ui select.ds-control:not([multiple]){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}
.dashboard-ui .ds-button.secondary{background:#f2f4f6;color:var(--ds-text);border-color:transparent}
.dashboard-ui .ds-button[aria-busy=true]{cursor:progress;opacity:.65}
.dashboard-ui :where(a,summary,input[type=checkbox],input[type=radio]):focus-visible{outline:2px solid var(--ds-primary);outline-offset:2px}
.dashboard-ui :where(.table-wrap){min-width:0;max-width:100%;overflow:auto;overscroll-behavior-x:contain}

.dashboard-ui .ds-table :is(th,td){vertical-align:top;line-height:1.5}
.dashboard-ui :where(.action-feedback,.settings-toast){position:fixed;right:max(12px,env(safe-area-inset-right,0px));left:auto;bottom:calc(16px + env(safe-area-inset-bottom,0px));width:min(560px,calc(100% - 24px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)));max-width:none;transform:none;z-index:2000;font-size:14px;line-height:1.5;text-align:left}
.dashboard-ui .toast-message{min-width:0;max-height:35vh;overflow-y:auto;white-space:pre-wrap;word-break:keep-all;overflow-wrap:anywhere}
.dashboard-ui .toast-close{margin:0;align-self:center;min-width:44px;background:#333d4b;color:white}

.dashboard-ui [hidden]{display:none!important}
@media(max-width:760px){
 .dashboard-ui .grid{grid-template-columns:minmax(0,1fr)}
 .dashboard-ui .actions .ds-button{flex:0 0 auto}
}
.dashboard-ui :is(#workspace,#editorPanel){display:grid;gap:var(--ds-gap);min-width:0}


.dashboard-ui :is(.ds-flow,.ds-disclosure[open])>*{margin-block:0}
.dashboard-ui .ds-dialog>.ds-flow>.ds-actions{margin-top:8px}

