.studio .plan-tool-entry,.studio .plan-tool-actions { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin:12px 0 18px; }
.studio .plan-tool-entry { padding:0 0 12px; border-bottom:1px solid var(--studio-border); }
.studio .plan-tools-dialog { width:min(680px,calc(100vw - 24px)); }
.studio .studio-dialog.plan-tools-dialog, .studio .studio-dialog.detail-dialog { padding:12px 6px; overflow:hidden; }
.studio .plan-tools-scroll { max-height:calc(100dvh - 74px); overflow-y:auto; overscroll-behavior:contain; padding:18px 24px; box-sizing:border-box; }
@media(max-width:760px) {
  .studio .plan-tools-scroll { max-height:calc(100dvh - 54px); padding:11px 14px; }
}
.studio .plan-tool-list { display:grid; gap:12px; margin-top:16px; }
.studio .plan-tool-card { padding:18px; border:1px solid var(--studio-border); border-radius:16px; background:#fff; min-width:0; }
.studio .plan-tool-card h4 { margin:0; font-size:16px; overflow-wrap:anywhere; }
.studio .plan-tool-card p,.studio .plan-history-item p { white-space:pre-wrap; overflow-wrap:anywhere; margin:8px 0; }
.studio .plan-tool-card-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.studio .plan-tool-card .plan-tool-actions { margin-bottom:0; }
.studio .status-pill.archived { background:#edf0ec; color:#536159; flex-shrink:0; }
.studio .archive-summary,.studio .archive-notice { background:var(--studio-soft); color:var(--studio-deep); padding:14px 16px; border-radius:12px; line-height:1.7; }
.studio .plan-tool-status { color:#86562c; min-height:1.5em; margin:8px 0; overflow-wrap:anywhere; }
.studio #templateForm { display:grid; gap:16px; }
.studio #templateForm label,.studio .review-field { display:grid; gap:6px; font-size:13px; font-weight:600; }
.studio #templateForm input,.studio #templateForm textarea,.studio .review-field textarea { width:100%; box-sizing:border-box; }
.studio .review-field { margin:18px 0 8px; }
.studio .review-field .muted { font-weight:400; }
.studio .review-feedback { border-left:3px solid var(--studio-accent); padding:12px 16px; margin:16px 0; background:var(--studio-soft); border-radius:0 12px 12px 0; }
.studio .review-feedback h4,.studio .plan-history h4 { margin:0 0 8px; font-size:14px; }
.studio .review-feedback p { margin:8px 0; white-space:pre-wrap; overflow-wrap:anywhere; }
.studio .plan-history { border-top:1px solid var(--studio-border); margin-top:24px; padding-top:20px; }
.studio .plan-history-item { border-left:2px solid var(--studio-border); padding:0 0 18px 16px; margin:14px 0 0 5px; }
.studio .plan-history-item > span { display:block; margin:4px 0 8px; }
.studio .plan-history-item summary { cursor:pointer; color:var(--studio-deep); padding:8px 0; }
.studio .history-review-note { padding:10px 12px; background:var(--studio-soft); border-radius:10px; }
@media(max-width:600px) {
  .studio .plan-tool-card { padding:14px; }
  .studio .plan-tool-card-head { flex-wrap:wrap; gap:6px; }
  .studio .plan-tool-entry { gap:6px; }
  .studio .plan-tool-entry button,.studio .plan-tool-actions button { flex:1 1 auto; min-height:44px; }
  .studio .plan-tools-dialog .dialog-heading h3 { font-size:20px; }
}

.studio .review-filters { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:16px; }
.studio .review-secondary { margin:16px 0; border-top:1px solid var(--studio-border); padding-top:12px; }
.studio .review-secondary > summary { cursor:pointer; color:var(--studio-deep); font-size:13px; padding:8px 0; }
.studio .review-secondary .plan-history { border:0; margin:0; padding-top:8px; }
.studio .review-detail-link { margin:16px 0 8px; }
.studio .review-dialog .plan-tools-scroll { display:flex; flex-direction:column; height:min(760px,calc(100dvh - 74px)); overflow:hidden; }
.studio .review-dialog .dialog-heading { flex-shrink:0; margin-bottom:12px; }
.studio .review-dialog #planDetailBody { display:flex; flex-direction:column; flex:1; min-height:0; overflow:hidden; }
.studio .review-content { min-height:0; flex:1; overflow-y:auto; overscroll-behavior:contain; padding:8px; scroll-padding-block:8px; }
.studio .review-dialog .dialog-actions { flex-shrink:0; margin-top:0; padding-top:12px; padding-inline:8px; padding-bottom:max(8px,env(safe-area-inset-bottom,0px)); background:var(--panel); }
.studio .review-dialog .dialog-actions > button { flex:1; min-height:44px; }
.studio .review-dialog #reviewStatus { flex-basis:100%; margin:0; }
.studio .review-dialog #reviewStatus:empty { display:none; }
.studio .review-dialog .completion-proof img { max-height:240px; object-fit:contain; }
.studio .review-dialog .submission-proof { margin-top:16px; }
.studio .review-dialog .submission-proof .completion-note p { font-size:14px; color:var(--ink); white-space:pre-wrap; overflow-wrap:anywhere; }
.studio .review-next-notice { position:fixed; bottom:90px; right:20px; z-index:100; display:flex; align-items:center; flex-wrap:wrap; gap:12px; max-width:calc(100vw - 40px); padding:14px; background:var(--panel); border:1px solid var(--studio-border); border-radius:16px; box-shadow:var(--shadow-lg); font-size:13px; }
.studio .review-next-notice[hidden] { display:none; }
.studio .ai-style[hidden] { display:none; }
@media(max-width:600px) {
  .studio .review-dialog .plan-tools-scroll { height:calc(100dvh - 54px); }
  .studio .review-dialog .dialog-heading h3 { font-size:20px; }
}

.studio .review-content :is(button, input, textarea, select, summary, a) { scroll-margin-block:8px; }
