/* Scoped library surface: preserve the site shell and the real executors. */
.tools-page { --bg:#101014; --text:#f3f3f5; --muted:#b1b1bc; --line:#303036; --line-strong:#61616d; background:#101014 !important; }
.tools-page main { padding-top:76px; }
.tools-page .sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.tools-page .inner { width:100%; max-width:1320px; margin-inline:auto; padding-inline:32px; }
.tools-page #tool-workspace { background:#101014 !important; border-top:0; padding:32px 0 26px; scroll-margin-top:76px; }
.tool-library-heading { display:flex; justify-content:space-between; align-items:center; gap:24px; margin-bottom:24px; }
.tool-library-heading h1 { margin:0 0 6px; font:700 36px/1.2 var(--body-font); letter-spacing:0; }
.tool-library-heading p { margin:0; color:var(--muted); font-size:14px; }
.tool-library-totals { flex-shrink:0; font-size:13px !important; }
.tool-library-totals strong { color:var(--text); font-weight:500; }
.tool-library-totals span { margin-inline:6px; color:#767680; }
.tools-page .suite-controls { grid-template-columns:minmax(0,1fr) 260px; margin:0 0 26px; gap:12px; }
.tools-page .suite-controls label { letter-spacing:0; text-transform:none; }
.tools-page .suite-controls input,.tools-page .suite-controls select { height:48px; min-height:48px; border-radius:4px; font-size:14px; background:#17171c; }
.tools-page .tool-search-field { display:flex; position:relative; align-items:center; }
.tool-search-field > [data-library-icon] { position:absolute; left:14px; display:flex; color:var(--muted); }
.tools-page .tool-search-field input { padding-left:44px; padding-right:46px; }
.tool-search-field .tool-icon-button { position:absolute; right:5px; }
.tools-page .suite-browser { grid-template-columns:230px minmax(0,1fr); margin:0; gap:28px; align-items:start; }
.tool-subjects { position:sticky; top:96px; display:grid; gap:5px; padding-right:18px; border-right:1px solid var(--line); }
.tool-subjects button { display:flex; gap:10px; align-items:center; text-align:left; min-height:48px; padding:10px 10px; border:0; border-left:3px solid transparent; border-radius:0; background:transparent; color:var(--muted); cursor:pointer; font:500 12px/1.45 var(--body-font); }
.tool-subjects button svg { flex:0 0 18px; width:18px; height:18px; }
.tool-subjects button small { margin-left:auto; font-size:10px; color:#8a8a96; }
.tool-subjects button[aria-pressed=true] { color:#c3dfb5; background:#1e2320; border-left-color:#b8d5a8; }
.tool-subjects button:hover { background:#1d1d23; color:var(--text); }
.tool-library-toolbar { display:flex; justify-content:space-between; gap:12px; border-bottom:1px solid var(--line); min-height:49px; margin-bottom:12px; }
.tool-library-tabs { display:flex; gap:20px; min-width:0; }
.tool-library-tabs button { display:flex; align-items:center; gap:7px; font:500 13px var(--body-font); background:transparent; color:var(--muted); border:0; border-bottom:3px solid transparent; border-radius:0; padding:0 1px 12px; cursor:pointer; white-space:nowrap; }
.tool-library-tabs button[aria-pressed=true] { color:#c3dfb5; border-bottom-color:#b8d5a8; }
.tool-library-tabs svg { width:18px; height:18px; }
.tool-library-tabs [data-suite-saved-count] { font-size:11px; color:#a3a3af; }
.tool-layout-controls { display:flex; gap:4px; align-items:start; }
.tool-icon-button { display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; padding:0; flex:0 0 36px; border:1px solid transparent; border-radius:4px; color:var(--muted); background:transparent; cursor:pointer; text-decoration:none; }
.tool-icon-button:hover { color:var(--text); background:#282830; }
.tool-icon-button[aria-pressed=true] { color:#c3dfb5; }
.tool-save.is-saved svg { fill:#b8d5a8; fill-opacity:.24; }
.tools-page button:focus-visible,.tools-page a:focus-visible,.tools-page select:focus-visible { outline:2px solid #b8d5a8; outline-offset:3px; }
.tools-page .suite-status { margin:0 0 8px; font:12px/1.6 var(--body-font); color:#9e9eab; }
.tools-page .suite-results { display:block; border:0; }
.tools-page .suite-tool-card { display:grid; grid-template-columns:26px minmax(170px,.9fr) minmax(0,1.15fr) 78px; align-items:center; gap:15px; padding:15px 0; min-height:80px; border:0; border-bottom:1px solid var(--line); background:transparent; }
.tool-row-icon { display:flex; align-items:center; justify-content:center; color:#adadb9; }
.tool-row-icon svg { width:23px; height:23px; }
.tools-page .suite-tool-card h3 { font:600 14px/1.45 var(--body-font); margin:0 0 3px; letter-spacing:0; overflow-wrap:anywhere; }
.suite-tool-card h3 a { color:var(--text); text-decoration:none; }
.suite-tool-card h3 a:hover { color:#c3dfb5; }
.tools-page .suite-tool-category { color:#9e9eab; font:11px/1.5 var(--body-font); text-transform:none; letter-spacing:0; }
.tools-page .suite-tool-card p { font-size:12px; color:#b1b1bc; line-height:1.6; overflow-wrap:anywhere; }
.tool-row-actions { display:flex; justify-content:flex-end; gap:2px; }
.tools-page .suite-results[data-layout=grid] { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.tools-page .suite-results[data-layout=grid] .suite-tool-card { grid-template-columns:24px minmax(0,1fr); align-items:start; padding:16px; border:1px solid var(--line); border-radius:4px; min-height:174px; }
.suite-results[data-layout=grid] .tool-row-inputs { grid-column:1/-1; }
.suite-results[data-layout=grid] .tool-row-actions { grid-column:1/-1; }
.tool-library-pagination { display:flex; justify-content:space-between; gap:15px; padding-top:18px; }
.tool-library-pagination .text-link { color:#c3dfb5; border:0; padding:6px 0; background:none; font:500 13px var(--body-font); cursor:pointer; }
.tool-library-storage { color:#c7b984; font-size:11px; margin:0 0 10px; }
.tool-library-warning { padding:12px 0; color:#f0c5a8; font-size:13px; }
.tools-page .suite-empty { border:0; padding:32px 0; }
.suite-empty h3 { color:var(--text); font-size:18px; margin:0 0 8px; letter-spacing:0; }
.suite-empty p { font-size:13px; }
.tools-page .suite-runner { padding:0; border:0; background:transparent; max-width:100%; scroll-margin-top:96px; }
.tools-page .suite-runner-head { padding-block:10px 22px; align-items:center; }
.suite-runner-head h2 { margin:0 0 5px; font:700 26px/1.3 var(--body-font); letter-spacing:0; overflow-wrap:anywhere; }
.tools-page .suite-runner-head p { margin:0; font-size:12px; }
.tool-runner-heading { display:flex; align-items:center; gap:15px; }
.tool-back { display:flex; align-items:center; gap:7px; border:0; background:none; color:#c3dfb5; padding:8px 0; margin-bottom:16px; cursor:pointer; font:500 13px var(--body-font); }
.tool-back svg { width:18px; height:18px; }
.tools-page .suite-runner form { max-width:100%; gap:18px; }
.tools-page .suite-runner label { font:500 12px/1.5 var(--body-font); letter-spacing:0; text-transform:none; color:var(--soft); }
.tools-page .suite-runner input,.tools-page .suite-runner select,.tools-page .suite-runner textarea { font:14px/1.5 var(--body-font); border-radius:4px; background:#17171c; }
.tools-page .suite-runner textarea { min-height:160px; font-family:var(--mono); }
.tools-page .suite-runner .btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; border-radius:4px; font-size:13px; }
.suite-runner .btn svg { width:17px; height:17px; }
.suite-runner .btn:disabled { opacity:.4; cursor:not-allowed; }
.tools-page .suite-result { background:#17171c; border:1px solid var(--line); border-radius:4px; }
.tools-page .suite-result pre { max-height:460px; font-size:12px; }
.tools-page .suite-commercial-head .section-kicker { letter-spacing:0; font-size:11px; }
.tools-page .suite-commercial-head h4 { font-size:18px; letter-spacing:0; }
.tools-page .suite-commercial-head p { font-size:13px; }
.tools-page .suite-commercial-action { border-radius:4px; }
.tool-workflow-links { border-top:1px solid var(--line); padding:20px 0; }
.tool-workflow-links summary { color:var(--text); cursor:pointer; font-size:14px; }
.tools-page .tool-path-grid { margin-top:18px; }
.tools-page .tool-path-grid a { min-height:112px; background:none; }
.tools-page .tool-path-grid strong { font-size:13px; letter-spacing:0; }
.tools-page .tool-boundary-section { background:none !important; padding-block:32px; }
.tools-page .tool-boundary-section h2 { font-size:24px; letter-spacing:0; }
.tools-page .tool-boundary-section p { font-size:13px; }
.tools-page [hidden] { display:none !important; }
@media(max-width:1100px) {
    .tools-page .suite-browser { grid-template-columns:200px minmax(0,1fr); gap:18px; }
    .tools-page .suite-tool-card { grid-template-columns:22px minmax(0,1fr) 76px; gap:12px; }
    .tool-row-inputs { grid-column:2; }
    .tool-row-actions { grid-column:3; grid-row:1/3; }
    .tool-row-icon { grid-row:1/3; }
}
@media(max-width:760px) {
    .tools-page main { padding-top:74px; }
    .tools-page .inner { padding-inline:20px; }
    .tools-page #tool-workspace { padding-top:24px; }
    .tool-library-heading { display:block; margin-bottom:20px; }
    .tool-library-heading h1 { font-size:30px; }
    .tool-library-heading p { font-size:13px; max-width:520px; }
    .tool-library-totals { margin-top:10px !important; }
    .tools-page .suite-controls { grid-template-columns:1fr; margin-bottom:14px; }
    .tools-page .suite-browser { display:block; }
    .tool-subjects { display:flex; position:static; overflow:auto; gap:7px; padding:0 0 12px; margin-bottom:12px; border:0; }
    .tool-subjects button { flex:0 0 auto; min-height:38px; border:1px solid var(--line); border-radius:4px; font-size:11px; padding:7px 9px; }
    .tool-subjects button[aria-pressed=true] { border-color:#8fad7e; }
    .tool-subjects button svg { display:none; }
    .tool-subjects button small { font-size:10px; }
    .tool-library-tabs { gap:16px; }
    .tool-library-tabs button { font-size:12px; gap:5px; }
    .tool-library-tabs button svg { display:none; }
    .tool-layout-controls { gap:0; }
    .tool-layout-controls .tool-icon-button { width:30px; flex-basis:30px; }
    .tools-page .suite-tool-card { padding:14px 0; min-height:93px; }
    .tools-page .suite-tool-card h3 { font-size:13px; }
    .tools-page .suite-results[data-layout=grid] { grid-template-columns:1fr; }
    .tool-runner-heading { align-items:start; }
    .suite-runner-head h2 { font-size:23px; }
    .tools-page .suite-commercial-actions { grid-template-columns:1fr; }
}
