/* Connected decision workspace. Uses the approved palette; mobile first. */
.dd{--dd-gap:16px;display:grid;gap:var(--dd-gap);font-size:14px;line-height:1.55;min-width:0}
.dd *{min-width:0}
.dd p{max-width:75ch}
.dd h2{font-size:18px}.dd h3{font-size:15px}
.dd .dd-muted,.dd small{color:var(--muted)}
.dd small{font-size:12px}
.dd-top,.dd-actions,.dd-between{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.dd-between{justify-content:space-between}
.dd-top{padding:12px 16px;background:var(--soft);border:1px solid var(--border);border-radius:var(--radius)}
.dd-top label{display:grid;gap:4px;flex:1}
.dd-top select{width:100%;max-width:440px}
.dd-top .dd-demo{font-size:12px;color:var(--muted)}
.dd-nav{display:flex;gap:4px;border-bottom:1px solid var(--border)}
.dd-nav a{padding:10px 8px;text-decoration:none;color:var(--muted);display:flex;align-items:center;min-height:44px;border-bottom:2px solid transparent;flex:1}
.dd-nav a[aria-current=page]{color:var(--primary);border-color:var(--primary);font-weight:650}
.dd-nav span{font-variant-numeric:tabular-nums;margin-right:6px;color:var(--muted);white-space:nowrap;flex-shrink:0}
.dd-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px}
.dd-card>h2,.dd-card>.dd-between{margin-bottom:12px}
.dd-stack{display:grid;gap:12px}
.dd-grid{display:grid;gap:var(--dd-gap);align-items:start}
.dd-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border:1px solid var(--border);background:var(--surface);border-radius:var(--radius);overflow:hidden}
.dd-stat{padding:12px 16px;border-bottom:1px solid var(--border)}
.dd-stat:nth-child(odd){border-right:1px solid var(--border)}
.dd-stat:nth-last-child(-n+2){border-bottom:0}
.dd-stat span,.dd-stat small{display:block}
.dd-stat strong{display:block;font-size:24px;font-weight:600;font-variant-numeric:tabular-nums;margin:3px 0}
.dd-status{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--primary)}
.dd-status:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}
.dd-status.warn{color:var(--warning)}.dd-status.bad{color:var(--error)}
.dd-verdict h2{margin:8px 0}.dd-verdict .dd-actions{margin-top:16px}
.dd-link{min-height:44px;display:inline-flex;align-items:center;gap:4px}
.dd-row{display:grid;grid-template-columns:1fr auto;gap:8px;padding:10px 0;border-bottom:1px solid var(--border)}
.dd-row:last-child{border-bottom:0}
.dd-row strong{font-variant-numeric:tabular-nums}
.dd-row small{display:block}
.dd-budget{display:flex;height:12px;overflow:hidden;border-radius:3px;background:var(--soft);margin:14px 0}
.dd-budget span{background:var(--primary)}.dd-budget .reserved{background:var(--warning)}.dd-budget .available{background:var(--border)}
.dd-track{height:8px;background:var(--soft);border-radius:3px;margin:8px 0 12px;overflow:hidden}
.dd-track span{display:block;height:100%;background:var(--primary)}
.dd-track.warn span{background:var(--warning)}.dd-track.bad span{background:var(--error)}
.dd-filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}
.dd-filter label{flex:1;display:grid;gap:4px;font-size:12px}
.dd-filter input,.dd-filter select{width:100%}
.dd-case{display:grid;grid-template-columns:1fr auto;gap:8px;padding:12px 0;border-top:1px solid var(--border)}
.dd-case.selected{background:var(--selected);margin-inline:-8px;padding-inline:8px}
.dd-case .dd-link{text-decoration:none}.dd-case small{display:block}
.dd-case p{margin-top:4px}
.dd-thread{list-style:none;padding:0;margin:0;display:grid}
.dd-thread li{display:grid;grid-template-columns:28px 1fr;gap:10px;position:relative;padding-bottom:18px}
.dd-thread li:not(:last-child):before{content:"";position:absolute;left:13px;top:28px;bottom:0;border-left:1px solid var(--border)}
.dd-step{border:1px solid var(--border);border-radius:50%;height:28px;display:grid;place-items:center;color:var(--primary);background:var(--surface);font-size:12px;font-variant-numeric:tabular-nums}
.dd-thread p{margin:4px 0}
.dd-thread .inactive{color:var(--muted)}
.dd-thread .inactive .dd-step{color:var(--muted)}
.dd-thread time{color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}
.dd-id{font-size:12px;font-variant-numeric:tabular-nums;color:var(--muted);overflow-wrap:anywhere}
.dd-mini-thread{display:flex;flex-wrap:wrap;gap:4px 8px;margin:12px 0}
.dd-mini-thread span{color:var(--muted);font-size:12px}
.dd-form{display:grid;gap:12px}
.dd-form label{display:grid;gap:5px}
.dd-form input{width:100%}
.dd-form fieldset{padding:0;border:0;margin:0;display:grid;gap:12px}
.dd-form legend{font-weight:600;margin-bottom:10px}
.dd-check{display:flex!important;align-items:flex-start;gap:10px!important}
.dd-check input{width:20px;height:20px;flex-shrink:0;margin-top:2px}
.dd-note{padding:12px;background:var(--soft);border-radius:4px}
.dd-error{color:var(--error)}
.dd-ai{border-color:var(--ai-border,#c4b5fd)}
.dd-ai h3{color:var(--ai,#6d28d9)}
.dd-ai p{margin-top:8px}
.dd details{padding:12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}
.dd summary{min-height:44px;cursor:pointer;display:list-item;align-content:center}
.dd details[open]>summary{margin-bottom:12px}
.dd button,.dd input,.dd select{min-height:44px}
.dd button:not(.primary):not(.ai-action){color:var(--text)}
.dd button.dd-danger{color:var(--error);border-color:var(--error)}
.dd button:disabled{cursor:not-allowed}
.dd-chart{width:100%;height:148px;margin:12px 0}
.dd-chart-key{display:flex;justify-content:space-between;color:var(--muted);font-size:12px}
.dd-depth{display:grid;gap:6px;margin-top:10px}
.dd-depth>div{display:grid;grid-template-columns:56px 1fr 70px;align-items:center;gap:12px}
.dd-depth i{height:14px;background:var(--selected);display:block;position:relative}
.dd-depth i:before{content:"";position:absolute;inset:0 auto 0 0;width:var(--depth);background:var(--primary);opacity:.65}
.dd-depth b{font-weight:500;text-align:right;font-variant-numeric:tabular-nums}
.dd-footer{padding-top:8px;border-top:1px solid var(--border);font-size:12px;color:var(--muted)}
.dd-jumps{display:flex;flex-wrap:wrap;gap:8px}
.dd-jumps button{color:var(--primary)!important;text-decoration:underline;background:transparent;padding:0 8px}
.dd-quick-links{display:grid;gap:4px;margin-top:8px}
.dd-legacy{margin-top:20px}
.dd-context{margin-bottom:14px}
[data-theme=dark] .dd-ai h3{color:#c4b5fd}
@media(min-width:768px){
 .dd-stats{grid-template-columns:repeat(4,minmax(0,1fr))}
 .dd-stat{border-bottom:0;border-right:1px solid var(--border)}.dd-stat:last-child{border:0}
 .dd-grid{grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr)}
 .dd-form fieldset{grid-template-columns:1fr 1fr}
 .dd-top label{display:flex;align-items:center;gap:12px}
 .dd-top select{width:auto}
 .dd-nav a{flex:none;padding-inline:16px}
}
@media(min-width:1200px){
 .dd{--dd-gap:12px}
 .dd-card{padding:14px 16px}
 .dd-nav a{padding-block:6px}
 .dd-grid{grid-template-columns:minmax(0,1.7fr) minmax(310px,1fr)}
 .dd-thread li{padding-bottom:14px}
}
@media(max-width:480px){
 .dd{font-size:14px}
 .dd-nav a{font-size:12px;padding-inline:4px}
 .dd-top{padding:12px}
 .dd-top label{flex-basis:100%;width:100%}
 .dd-top .dd-demo{flex:1}
 .dd-top select{font-size:16px}
 .dd-case{grid-template-columns:1fr}
 .dd-actions>.button{flex:1;text-align:center;justify-content:center}
 .dd-stat{padding:12px}.dd-stat strong{font-size:21px}
 .dd .dd-card{padding:12px}
}
