/* Reuse admin light/dark palette. Independently scroll list, tree and content. */
.ow .ow-task-card{position:relative}
.ow .ow-task-link{color:inherit;text-decoration:none}
.ow-task-link::after{content:"";position:absolute;inset:0}
.ow .ow-task-link:hover{text-decoration:none}
.ow .ow-task-link:focus-visible{outline:none}
.ow .ow-task-link:focus-visible::after{outline:2px solid var(--lime);outline-offset:-3px}
.ow-task-card .ow-task-id{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.ow-task-id>span{position:relative;z-index:1;user-select:text;overflow-wrap:anywhere}
.ow .ow-copy-id{position:relative;z-index:1;flex:none;padding:3px 6px;min-height:26px;font-size:11px;line-height:1.4;color:var(--tx2);background:var(--panel);border:1px solid var(--line);border-radius:4px;cursor:pointer}
.ow .ow-copy-id:hover{background:var(--hov2);color:var(--tx)}
/* Directory rows are navigation, not prose links. Full commands live in the content pane. */
.ow .ow-tree a:hover{text-decoration:none;background:var(--hov2)}
.ow .ow-tree .ow-node{padding:9px 10px;margin:2px 0;border:1px solid transparent;line-height:1.4;min-width:0}
.ow .ow-node>.ow-node-heading{display:flex;align-items:center;gap:8px;min-width:0}
.ow-node-number{flex:none;min-width:22px;font:10px/1.6 var(--mono);font-variant-numeric:tabular-nums;color:var(--tx2)}
.ow-node-name{font-size:12px;font-weight:600;color:var(--tx);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ow-node-status{margin-left:auto;flex:none;font-size:10px;color:var(--coral)}
.ow .ow-node>small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:5px;font:11px/1.5 var(--mono);color:var(--tx2)}
.ow .ow-tree .ow-node.selected{border-color:var(--line);box-shadow:inset 2px 0 var(--lime);background:var(--hov2)}
.ow .ow-node.selected .ow-node-name{color:var(--lime)}
.ow .ow-tree .ow-node-error{border-left:2px solid var(--coral)}
.ow .ow-round-children{margin-left:10px;padding-left:7px}
.ow .ow-item.ow-task-card{padding:18px 16px;white-space:normal;line-height:1.5}.ow-task-card .ow-task-name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:14px;font-weight:650;line-height:1.6;margin-bottom:12px;color:var(--tx)}.ow-task-card .ow-task-identity{display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:10px;row-gap:6px;margin:0}.ow-task-card dt{font-size:11px;font-weight:400;color:var(--tx2)}.ow-task-card dd{margin:0;min-width:0;color:var(--tx);overflow-wrap:anywhere}.ow-task-id{font:11px/1.65 var(--mono);font-variant-numeric:tabular-nums}.ow-task-card .ow-task-numbers{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin:14px 0 12px}.ow-task-numbers>div:last-child{text-align:right}.ow-task-numbers dd{display:flex;align-items:center;min-height:26px;margin-top:4px}.ow-task-numbers>div:last-child dd{justify-content:flex-end}.ow-task-card .ow-task-cost{font-size:16px;font-weight:650;font-variant-numeric:tabular-nums}.ow-task-card .ow-task-updated{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;padding-top:10px;border-top:1px solid var(--line);font-size:11px;color:var(--tx2)}.ow-task-updated time{font-variant-numeric:tabular-nums}.ow-task-card .ow-task-warning{display:block;margin-top:8px;font-size:11px;color:var(--tx2)}.ow .ow-task-card:hover{background:var(--hov2);text-decoration:none}.ow .ow-task-card.selected{background:var(--hov2);box-shadow:inset 3px 0 var(--lime)}
.ow .ow-body{grid-template-columns:255px minmax(0,1fr)}@media(max-width:1150px){.ow .ow-body{grid-template-columns:215px minmax(0,1fr)}}
.ow-task-header{padding-bottom:12px!important}.ow-task-header .ow-facts{font-size:11px;color:var(--tx2);overflow-wrap:anywhere}.ow-coverage{color:var(--tx2);margin:9px 0 7px}.ow-source-notes{color:var(--tx2);font-size:11px}.ow-source-notes p{line-height:1.8}.ow-directory-mode{display:flex;gap:12px;border-bottom:1px solid var(--line);margin-bottom:12px}.ow .ow-directory-mode a{padding:6px 0 10px;border-radius:0}.ow-directory-mode .active{color:var(--lime);border-bottom:2px solid var(--lime)}.ow-round{margin:8px 0}.ow-round-head{display:flex;align-items:center;gap:5px}.ow-round-head>a{flex:1;min-width:0;font-weight:600}.ow-round-head>button{flex:none;padding:8px;font-size:11px}.ow-round-children{margin-left:10px;padding-left:6px;border-left:1px solid var(--line)}.ow-tree .ow-node{margin:3px 0}.ow-node>span{display:block}.ow-node>small{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:4px;font:11px/1.5 var(--mono);color:var(--tx2)}.ow-tree .ow-node-error{border-left:3px solid var(--coral)}.ow-selected-title{flex-wrap:wrap}.ow-selected-title .dim{font-size:11px}.ow-technical{margin-top:24px;border-top:1px solid var(--line);padding-top:15px}.ow-technical>summary{margin-bottom:16px}.ow-technical h4{margin:20px 0 8px}.ow-directory-empty{padding:12px;font-size:11px}.ow-load-records{margin:10px 0;width:100%}.ow-content>.ow-attachments:first-child{margin-top:0}
.ow-preview-image.actual-size{max-width:none}.ow-preview-controls{flex-wrap:wrap}
.ow-attachments{border:1px solid var(--line);border-radius:6px;padding:14px;margin:20px 0}.ow-attachments>header{display:flex;align-items:center;justify-content:space-between;gap:12px}.ow-attachments .dim{font-size:11px;line-height:1.8;margin:10px 0}.ow-file-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:12px;align-items:center;padding:10px 0;border-top:1px solid var(--line);font-size:12px}.ow-file-name{text-align:left;overflow-wrap:anywhere;white-space:normal}.ow-preview{position:fixed;inset:0;margin:auto;width:min(1100px,94vw);max-width:94vw;height:min(850px,92dvh);max-height:92dvh;padding:0;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--tx)}.ow-preview[open]{display:flex;flex-direction:column}.ow-preview::backdrop{background:#0008}.ow-preview>header{display:flex;gap:15px;align-items:center;flex:none;padding:16px 20px;border-bottom:1px solid var(--line)}.ow-preview>header>div{flex:1;min-width:0}.ow-preview h2{font-size:16px;overflow-wrap:anywhere}.ow-preview .dim{font-size:12px;margin-top:8px}.ow-preview-body{padding:20px;overflow:auto;min-height:0;flex:1}.ow-preview-controls{display:flex;gap:20px;justify-content:center;align-items:center;margin-bottom:16px}.ow-preview-image{display:block;max-width:100%;height:auto;margin:auto;background:white}.ow-preview-table{overflow:auto;margin-top:12px}.ow-preview td{white-space:pre-wrap;min-width:110px;max-width:360px;overflow-wrap:anywhere}.ow-preview pre{white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.8 var(--mono)}.ow-preview a{color:var(--lime)}.ow-preview :focus-visible{outline:2px solid var(--lime);outline-offset:3px}
body[data-observation-snapshot] #observeRoot{display:flex;flex-direction:column}body[data-observation-snapshot] .ow{flex:1;min-height:0;height:auto}.ow-snapshot{flex:none;margin:0;padding:10px 18px;font-size:12px;border-bottom:1px solid var(--line);color:var(--tx2);background:var(--panel)}
.main.observing{padding:0;gap:0;height:100dvh;overflow:hidden}#p-badcase-run.on,#observeRoot{height:100%;min-height:0}.ow{height:100%;display:grid;grid-template-columns:280px minmax(0,1fr);background:var(--panel)}.ow a{color:var(--lime);text-decoration:none}.ow a:hover{text-decoration:underline}.ow button,.ow a,.ow summary{outline-offset:3px}.ow :focus-visible{outline:2px solid var(--lime)}.ow-master{border-right:1px solid var(--line);display:flex;flex-direction:column;min-height:0}.ow-master form{padding:18px 15px;border-bottom:1px solid var(--line)}.ow h1{font-size:20px;margin-bottom:13px}.ow h1 small{font-size:11px;color:var(--tx3);font-weight:400}.ow label{display:block;font-size:11px;color:var(--tx2);margin-bottom:9px}.ow label input,.ow label select{margin-top:4px}.ow-filter-row{display:flex;align-items:end;gap:6px;margin-bottom:10px}.ow-filter-row label{flex:1;margin:0}.ow-filter-row button{padding:8px}.ow summary{cursor:pointer;font-size:11px;color:var(--tx2)}.ow details label{margin-top:8px}.ow-list{flex:1;overflow:auto;min-height:0}.ow .ow-item{display:block;padding:15px;border-bottom:1px solid var(--line);color:var(--tx);font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere}.ow-item>span,.ow-item>strong{display:block}.ow-item>div{display:flex;align-items:center;justify-content:space-between;margin:8px 0}.ow-item:hover,.ow-item.selected{background:var(--hov2);text-decoration:none}.ow-item.selected{box-shadow:inset 3px 0 var(--lime)}.ow-paging{padding:12px 15px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:11px}.ow-inspector{min-width:0;min-height:0;display:flex;flex-direction:column}.ow-title{padding:15px 20px 0;border-bottom:1px solid var(--line)}.ow-path{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--tx3);margin-bottom:12px}.ow h2{font-size:18px}.ow-sub{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:10px 0}.ow-title p{font-size:11px}.ow-tabs{display:flex;gap:20px;overflow-x:auto;white-space:nowrap}.ow-tabs a{padding:10px 0;color:var(--tx2);font-size:12px;border-bottom:2px solid transparent}.ow-tabs .active{color:var(--lime);border-bottom-color:var(--lime)}.ow-body{flex:1;min-height:0;display:grid;grid-template-columns:195px minmax(0,1fr)}.ow-tree{overflow:auto;border-right:1px solid var(--line);padding:16px 10px}.ow-tree a{display:block;padding:9px 10px;color:var(--tx2);font-size:12px;border-radius:5px;overflow-wrap:anywhere}.ow-tree .selected{background:var(--hov2);color:var(--lime)}.ow-content{overflow:auto;padding:20px;min-width:0}.ow-content>header,.ow-files header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.ow h3{font-size:14px}.ow-notice{font-size:11px;background:var(--panel2);border:1px solid var(--line);padding:10px 12px;margin:12px 0;overflow-wrap:anywhere;color:var(--tx2)}.ow-list>.ow-notice{margin:10px}.ow .is-error{border-left:3px solid var(--coral)}.ow-metrics{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:20px 0}.ow-metrics>div{font-size:11px;color:var(--tx3)}.ow-metrics strong{display:block;font-size:16px;font-weight:600;color:var(--tx);overflow-wrap:anywhere}.ow-metrics>div:last-child strong{font-size:12px}.ow pre{white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.8 var(--mono);margin:0;padding:12px}.ow-io{border:1px solid var(--line);border-radius:5px;margin:10px 0;overflow:hidden}.ow-io h4{margin:0;padding:8px 12px;background:var(--panel2);border-bottom:1px solid var(--line);font-size:11px;color:var(--tx2)}.ow-flow-item{border-bottom:1px solid var(--line);padding:14px 0}.ow-flow-item.child{margin-left:18px}.ow-flow-item>div{display:flex;gap:10px;align-items:center}.ow-flow-item>div>a{margin-left:auto;font-size:11px}.ow-flow-item>details{margin-top:10px}.ow-meta{display:grid;grid-template-columns:90px minmax(0,1fr);gap:12px;font-size:12px}.ow-meta dt{color:var(--tx3)}.ow-meta dd{margin:0}.ow-meta pre{padding:0}.ow-empty{padding:50px 20px;color:var(--tx3);text-align:center;line-height:2}.ow-files{overflow:auto;padding:22px;flex:1;min-height:0}.ow-files section{border-bottom:1px solid var(--line);margin-bottom:24px;padding-bottom:18px}.ow-files .btn{font-size:12px}.ow-files td{overflow-wrap:anywhere}.ow-files .dim{font-size:11px}.ow-images{display:flex;gap:10px;flex-wrap:wrap}.ow-back{font-size:11px}
@media(max-width:1150px){.ow{grid-template-columns:230px minmax(0,1fr)}.ow-body{grid-template-columns:155px minmax(0,1fr)}.ow-content{padding:16px}}
@media(max-width:1000px){.ow{grid-template-columns:1fr}.ow.has-selection .ow-master{display:none}.ow:not(.has-selection) .ow-inspector{display:none}.ow-title{padding:16px 16px 0}}
@media(max-width:1000px){.shell:has(.main.observing){height:100dvh;min-height:0;grid-template-rows:auto minmax(0,1fr)}.shell:has(.main.observing) .side{gap:9px;padding:10px 12px;min-width:0}.shell:has(.main.observing) .nav{order:3;flex-basis:100%;flex-wrap:nowrap;overflow-x:auto}.shell:has(.main.observing) .nv{width:auto;flex:none;white-space:nowrap;padding:7px 10px;font-size:11px}.shell:has(.main.observing) .themebtn{width:auto;margin-left:auto}.shell:has(.main.observing) .who{font-size:10px}.main.observing{height:auto;min-height:0}}
@media(max-width:600px){.ow-body{display:block;overflow:auto}.ow-tree{max-height:150px;border-right:0;border-bottom:1px solid var(--line)}.ow-content{overflow:visible}.ow-tabs{gap:15px}.ow-files{padding:15px}.ow-files header{flex-wrap:wrap}.shell:has(.main.observing) .who{flex-basis:100%}}
@media(max-width:600px){.ow-preview>header{flex-wrap:wrap;padding:12px}.ow-preview>header>div{flex-basis:100%}.ow-preview-body{padding:12px}.ow-file-row{gap:8px;grid-template-columns:minmax(0,1fr) auto auto}.ow-file-row>.dim{display:none}.ow-attachments>header{flex-wrap:wrap}.ow-preview-controls{gap:10px}}
