/* ui-builder / ddui-builder 共通のエディタ用スタイル */
.ub-wrap { max-width: 1320px; margin: 0 auto; padding: 0 1rem 3rem; }
.ub-grid { display: grid; grid-template-columns: minmax(340px, 440px) minmax(0, 1fr); gap: 1rem; align-items: start; }
@media (max-width: 960px) { .ub-grid { grid-template-columns: 1fr; } }
.ub-card { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: 1rem; margin-bottom: 1rem; }
.ub-card h2, .ub-card h3 { font-size: .95rem; margin: 0 0 .7rem; }
.ub-sub { font-size: .72rem; font-weight: 700; color: var(--muted); margin: .7rem 0 .25rem; display: block; }
.ub-el { border: 1px solid var(--border-strong); border-radius: 10px; padding: .6rem .7rem; margin: .5rem 0; background: rgba(255,255,255,.02); }
.ub-el-head { display: flex; align-items: center; gap: .4rem; margin-bottom: .4rem; }
.ub-el-head b { font-size: .78rem; flex: 1; }
.ub-mini { padding: .15rem .5rem; font-size: .72rem; border-radius: 6px; border: 1px solid var(--border-strong); background: transparent; color: var(--muted); cursor: pointer; }
.ub-mini:hover { color: var(--text); border-color: var(--accent); }
.ub-mini.del:hover { color: #ff7b7d; border-color: #ff7b7d; }
.ub-two { display: grid; grid-template-columns: 1fr 1fr; gap: .5rem; }
.ub-tabs { display: flex; flex-wrap: wrap; gap: .35rem; margin-bottom: .6rem; }
.ub-add { display: flex; flex-wrap: wrap; gap: .35rem; margin: .6rem 0; }
.ub-warn { font-size: .78rem; color: #f0b232; background: rgba(240,178,50,.08); border: 1px solid rgba(240,178,50,.3); border-radius: 8px; padding: .4rem .65rem; margin: .3rem 0; line-height: 1.6; }
.ub-field input.t-input, .ub-field select.t-select, .ub-field textarea.t-textarea { padding: .4rem .55rem; font-size: .84rem; }
.ub-field textarea.t-textarea { min-height: 70px; }
.ub-bar { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; margin-bottom: .7rem; }
.ub-logbox { background: #0a0b10; border: 1px solid var(--border); border-radius: 8px; padding: .6rem .8rem; font-size: .8rem; line-height: 1.7; height: 170px; overflow: auto; font-family: 'Noto Sans JP', sans-serif; }
.ub-log.k-chat { color: #fff; } .ub-log.k-cmd { color: #5f5; font-family: 'Share Tech Mono', monospace; } .ub-log.k-warn { color: #f0b232; } .ub-log.k-err { color: #ff7b7d; } .ub-log.k-info { color: #8b90a8; }
.ub-resp { background: #0a0b10; border: 1px solid var(--border); border-radius: 8px; padding: .6rem .8rem; font-family: 'Share Tech Mono', monospace; font-size: .78rem; line-height: 1.6; min-height: 3.2rem; white-space: pre-wrap; color: #d6e4ff; }
#codeBox { min-height: 360px; font-size: .78rem; white-space: pre; overflow: auto; }
