/* Shared between the standalone workbench and hosted project views. */
.pw-root{--pw-border:#ccd8e4;--pw-muted:#50667b;--pw-accent:#155fa0;color:#142b40;max-width:1500px;margin:0 auto}.pw-root [hidden]{display:none!important}.pw-root *{box-sizing:border-box}.pw-root h1{font-size:clamp(1.7rem,3vw,2.25rem);margin:0 0 .6rem}.pw-root h2{font-size:1.2rem;margin:0 0 .8rem}.pw-root h3{font-size:1.05rem;margin:1rem 0 .6rem}.pw-root p{line-height:1.55}.pw-heading{display:flex;gap:1.5rem;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.pw-intro{max-width:54rem;margin:.4rem 0;color:var(--pw-muted)}.pw-actions{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center;margin:.6rem 0}.pw-button{font:inherit;font-size:.9rem;line-height:1.3;border:1px solid var(--pw-border);border-radius:.4rem;background:#fff;color:#143754;padding:.65rem .85rem;cursor:pointer;text-decoration:none;display:inline-block;max-width:100%;overflow-wrap:anywhere}.pw-button:hover:not(:disabled){border-color:var(--pw-accent);background:#eff6fb}.pw-button:disabled{opacity:.55;cursor:not-allowed}.pw-primary{background:var(--pw-accent);border-color:var(--pw-accent);color:white}.pw-primary:hover:not(:disabled){background:#104b7e;color:white}.pw-danger{color:#923a3a}.pw-root :focus-visible{outline:3px solid #2673bf;outline-offset:3px}.pw-help{color:var(--pw-muted);font-size:.88rem;line-height:1.5;overflow-wrap:anywhere}.pw-status{padding:.8rem 1rem;border-left:3px solid #44836c;background:#f0f7f4;min-height:3rem;overflow-wrap:anywhere}.pw-error{color:#932c2c;background:#fff3f1;border-color:#b84747;overflow-wrap:anywhere}.pw-how{padding:.7rem 1rem;background:#f2f6fa;border:1px solid var(--pw-border);border-radius:.5rem}.pw-root summary{cursor:pointer;font-weight:600;line-height:1.5;overflow-wrap:anywhere}.pw-layout{display:grid;grid-template-columns:minmax(200px,260px) minmax(0,1fr);gap:1rem;align-items:start}.pw-main{min-width:0;display:grid;gap:1rem}.pw-panel{min-width:0;border:1px solid var(--pw-border);border-radius:.6rem;background:#fff;padding:1.25rem}.pw-panel:empty{display:none}.pw-sidebar{position:sticky;top:1rem}.pw-check{display:flex;gap:.6rem;align-items:center;font-size:.9rem}.pw-check input{width:auto}.pw-list{display:grid;gap:.6rem;margin-top:1rem;max-height:65vh;overflow:auto}.pw-workflow{width:100%;text-align:left;padding:.85rem;white-space:normal}.pw-workflow strong,.pw-workflow span{display:block}.pw-workflow[aria-pressed=true]{background:#eaf3fb;border-color:#155fa0;box-shadow:inset 3px 0 #155fa0}.pw-title p{overflow-wrap:anywhere}.pw-validation{padding:.25rem 0 .8rem;border-bottom:1px solid var(--pw-border)}.pw-outcome{font-weight:600;text-transform:none}.pw-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:1rem}.pw-field{display:flex;flex-direction:column;gap:.4rem;min-width:0}.pw-field-label{font-weight:600;font-size:.93rem}.pw-field input,.pw-field select,.pw-field textarea{font:inherit;width:100%;max-width:100%;color:#122c42;background:#fff;border:1px solid #afc2d4;border-radius:.35rem;padding:.6rem;min-width:0}.pw-field input[type=checkbox]{width:1.2rem;height:1.2rem}.pw-field input[type=file]{font-size:.85rem}.pw-field textarea{resize:vertical;line-height:1.5}.pw-editor textarea{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.86rem;min-height:24rem;white-space:pre;tab-size:4}.pw-record{margin-top:.8rem}.pw-record pre{font-size:.82rem;line-height:1.5;background:#f3f6f8;border:1px solid var(--pw-border);padding:1rem;max-height:28rem;overflow:auto;white-space:pre;max-width:100%;color:#18334a}.pw-history-row{display:flex;gap:1rem;justify-content:space-between;align-items:center;border-bottom:1px solid var(--pw-border);padding:.6rem 0}.pw-history-row span{font-size:.88rem;overflow-wrap:anywhere}.pw-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;margin:1rem 0}.pw-metric{border:1px solid var(--pw-border);border-radius:.4rem;padding:1rem;overflow-wrap:anywhere}.pw-metric strong,.pw-metric span{display:block}.pw-metric strong{font-size:1.4rem;font-variant-numeric:tabular-nums;margin-top:.4rem}.pw-table-wrap{overflow:auto;max-width:100%;margin:1rem 0}.pw-root table{border-collapse:collapse;width:100%;font-size:.9rem}.pw-root caption{text-align:left;font-weight:600;margin:.6rem 0}.pw-root td,.pw-root th{text-align:left;padding:.65rem .75rem;border:1px solid var(--pw-border);vertical-align:top}.pw-root th{background:#eef4fa}.pw-root td{white-space:pre-wrap;overflow-wrap:anywhere;min-width:4rem}.pw-figure{margin:1rem 0;border:1px solid var(--pw-border);padding:1rem;border-radius:.4rem}.pw-figure figcaption{font-weight:600;margin-bottom:.5rem}.pw-figure svg{width:100%;height:auto;display:block;max-height:350px}.pw-artifacts{display:flex;flex-wrap:wrap;gap:.6rem}.pw-artifacts h3{width:100%}.pw-run-form{margin-top:1rem}.pw-assistant-link{margin-top:.8rem}
@media(max-width:850px){.pw-heading{display:block}.pw-layout{grid-template-columns:1fr}.pw-sidebar{position:static}.pw-list{max-height:16rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.pw-panel{padding:1rem}.pw-history-row{align-items:flex-start;flex-wrap:wrap}.pw-record pre{font-size:.75rem}.pw-root .pw-actions{gap:.5rem}}

.pw-deletions{margin-top:1rem;border-top:1px solid #d9e1eb;padding-top:.75rem}.pw-cleanup{padding:.5rem 0;overflow-wrap:anywhere}.pw-cleanup+.pw-cleanup{border-top:1px solid #d9e1eb}

/* Shared classical reporting and associated research materials. */
.pw-report { border-top: 2px solid #b5cad8; padding-top: 1rem; margin: 1rem 0 2rem; }
.pw-report .pw-figure img { display: block; width: 100%; height: auto; max-height: 520px; object-fit: contain; }
.pw-literature-row { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem; padding: .8rem 0; border-bottom: 1px solid #d5e0e7; }
.pw-literature-row label { flex: 1 1 16rem; }
.pw-literature-row input:not([type=checkbox]) { max-width: 15rem; }
#pw-literature textarea { box-sizing: border-box; width: 100%; }
.pw-report pre { white-space: pre-wrap; overflow-wrap: anywhere; }

/* ISAES keeps delivery separate from scientific support and reveals provenance
   progressively. All status labels remain understandable without color. */
.pw-status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(160px,100%),1fr));gap:.65rem;margin:1rem 0}
.pw-status-card{padding:.8rem;border:1px solid var(--pw-border);border-radius:.45rem;background:#f4f8fb;overflow-wrap:anywhere;min-width:0}
.pw-status-card>span,.pw-status-card>strong{display:block}.pw-status-card>strong{font-size:1.05rem;margin-top:.35rem}
.pw-status-card.pw-status-attention{border-color:#ae742d;background:#fff7e9}.pw-status-card p{margin:.4rem 0 0}
.pw-finding{border-top:1px solid var(--pw-border);padding:1rem 0}.pw-finding h4{font-size:1.08rem;margin:.3rem 0}.pw-finding h5{font-size:.95rem;margin:.8rem 0 .2rem}
.pw-finding p{overflow-wrap:anywhere}.pw-finding-scope{color:var(--pw-muted);font-size:.85rem;margin:.2rem 0 .65rem}
.pw-evidence{background:#f5f8fb;border-left:3px solid #497c9d;padding:.65rem .85rem}.pw-evidence .pw-table-wrap{margin:.65rem 0}
.pw-analysis-editor>div{padding:.5rem 0}.pw-dataset{border:1px solid var(--pw-border);border-radius:.45rem;min-width:0;margin:1rem 0;padding:1rem}
.pw-dataset legend{font-weight:600;padding:0 .4rem;max-width:100%;overflow-wrap:anywhere}.pw-comparison{border:1px solid var(--pw-border);padding:.8rem;border-radius:.45rem}
.pw-citation{padding:.7rem 0;border-top:1px solid var(--pw-border)}.pw-citation h4{margin:.3rem 0}.pw-report>label{max-width:36rem;margin:.6rem 0}
@media(max-width:500px){.pw-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pw-status-card{padding:.65rem}.pw-status-card>strong{font-size:.95rem}.pw-dataset{padding:.65rem}.pw-evidence{padding:.5rem}.pw-finding h4{font-size:1rem}}

/* Document lifecycle review keeps scope, exact record identities and errors readable. */
.pw-literature-usage{flex:1 1 100%;min-width:0;overflow-wrap:anywhere}.pw-literature-usage:empty{display:none}.pw-literature-usage h3{margin:.6rem 0}.pw-dependency{padding:.7rem .8rem;border-left:3px solid #b5cad8;background:#f5f8fb;margin:.6rem 0;min-width:0}.pw-dependency p{margin:.25rem 0}.pw-association-release{border:1px solid var(--pw-border);border-radius:.4rem;padding:.8rem;margin:1rem 0;min-width:0}.pw-association-release label{margin:.6rem 0}.pw-association-release legend{font-weight:600;overflow-wrap:anywhere;max-width:100%}

.pw-literature-actions{flex:1 1 100%;margin:.2rem 0}

.pw-proposal-review{border:1px solid var(--pw-border);border-left:4px solid #7b6291;border-radius:.4rem;padding:1rem;margin:1rem 0;min-width:0}.pw-proposal-review h4{margin:.1rem 0 .6rem}.pw-proposal{border-top:1px solid var(--pw-border);padding:.8rem 0;min-width:0}.pw-proposal h5{font-size:1rem;overflow-wrap:anywhere;margin:.4rem 0}.pw-proposal-text{white-space:pre-wrap;overflow-wrap:anywhere}.pw-proposal .pw-field{margin:.75rem 0}

/* Authenticated parent owns controls; scientific HTML stays in an opaque sandbox. */
.pw-explorer{border:1px solid var(--pw-border);border-radius:.5rem;padding:1rem;margin:1rem 0;min-width:0}.pw-explorer h4{margin:.1rem 0 .6rem}.pw-explorer-frame{display:block;width:100%;height:760px;border:1px solid var(--pw-border);background:white;border-radius:.3rem}.pw-retained-views{min-width:0}.pw-composition{padding:.8rem;border:1px solid var(--pw-border);border-radius:.4rem}.pw-composition label{margin:.5rem 0}.pw-composition-row{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;margin:.5rem 0}.pw-composition-row>span{flex:1 1 15rem;overflow-wrap:anywhere}.pw-composition select{max-width:100%}@media(max-width:500px){.pw-explorer{padding:.6rem}.pw-explorer-frame{height:650px}}
.pw-autonomy{border-top:4px solid #297a78;scroll-margin-top:1rem}
.pw-autonomy-settings{margin:1rem 0}
.pw-autonomy-form .pw-check{display:flex;align-items:flex-start;gap:.65rem;margin-top:1rem;font-weight:600}
.pw-autonomy-form .pw-check input{flex:0 0 auto;margin-top:.3rem}
.pw-autonomy-form .pw-help{margin:.35rem 0 .8rem}
.pw-autonomy-history{margin:1rem 0}
.pw-autonomy-result .pw-outcome{font-size:1.1rem;font-weight:700}
.pw-autonomy-claim{border:1px solid #d4dddd;border-left:4px solid #297a78;border-radius:.35rem;padding:.8rem 1rem;margin:.65rem 0;overflow-wrap:anywhere}
.pw-autonomy .pw-actions{flex-wrap:wrap}
.pw-autonomy .pw-button{overflow-wrap:anywhere}
@media(max-width:600px){.pw-autonomy .pw-fields{grid-template-columns:1fr}.pw-autonomy .pw-actions .pw-button{max-width:100%}}
/* Save status is explicit text; primary button color is action emphasis. */
.pw-save-status{min-height:1.5em;margin:.35rem 0 .75rem;padding:.5rem .7rem;border-left:3px solid var(--pw-border);background:#f3f6f8}.pw-save-status.pw-error{border-left-color:#b84747;background:#fff3f1}
