/* Operator Toolbox and Troubleshooting Center pages copied from ActivatedSludge.com.
   Rules are scoped to .tbx so they never touch the rest of the Academy site. */
.tbx{font-size:18px;line-height:1.65;--muted:#4A5872;--soft:#EEF5FD;--soft2:#E8F5E9;--warn:#FFF4E5;--warnb:#E65100;--line:#C9D8EC;--radius:12px;--shadow:0 6px 20px rgba(11,42,91,.10)}
.tbx h1,.tbx h2,.tbx h3,.tbx h4{line-height:1.25;margin:1.4em 0 .5em}
.tbx h2{font-size:1.5rem}.tbx h3{font-size:1.2rem}
.tbx p,.tbx ul,.tbx ol{margin:0 0 1em}.tbx li{margin-bottom:.35em}
.tbx section{padding:0}.tbx section h2{padding-bottom:0;margin-bottom:.5em}.tbx section h2::after{content:none;display:none}
.tbx .card{position:static;overflow:visible;border-radius:12px;padding:18px}
.tbx .card::before{content:none;display:none}
.tbx .btn{display:inline-block;transform:none;box-shadow:none;transition:background .15s;width:auto;line-height:1.3;font-size:1rem;padding:11px 18px;border-width:2px;gap:0}
.tbx .btn:hover{transform:none;box-shadow:none}
.tbx .btns{gap:10px;margin-top:14px}
.tbx .results{display:block;gap:0;grid-template-columns:none}
.tbx .results div{background:transparent;border-radius:0;padding:0;line-height:inherit}
.tbx .results span{display:inline;font-size:inherit;color:inherit;font-weight:inherit}
.tbx .results b,.tbx .results output{display:inline;font-weight:800}
.tbx .results small{font-size:inherit;color:inherit}
.tbx .status{border:0;font-size:inherit;line-height:inherit}
.tbx .callout{display:block;gap:0;border:0;border-radius:0 10px 10px 0}
.tbx .callout p{max-width:none;margin:0 0 .6em}.tbx .callout p:last-child{margin:0}
.tbx .callout .btn{width:auto;font-size:1rem}
.tbx .note{font-size:.9rem}
.tbx .tag{border:0;font-size:.72rem;padding:2px 8px;margin-bottom:0}
.tbx input[type=number],.tbx input[type=text],.tbx input[type=search],.tbx select,.tbx textarea{min-height:0;margin-bottom:0;font-size:inherit}
.tbx label{color:var(--ink)}
.tbx details{margin:0 0 1em}.tbx summary{cursor:pointer;font-weight:700;color:var(--navy)}
.tbx pre{margin:0 0 1em}
.tbx form{background:none;border:0;border-radius:0;box-shadow:none;padding:0;margin:0}
.tbx form h2{padding-bottom:0;font-size:1.25rem}
.tbx .content{max-width:820px}
.tbx .layout{display:grid;gap:28px;grid-template-columns:1fr;padding-top:30px;padding-bottom:40px}
@media(min-width:1000px){.tbx .layout{grid-template-columns:minmax(0,1fr) 300px}}
.tbx aside.side .box{background:var(--soft);border:1px solid var(--line);border-radius:var(--radius);padding:16px;margin-bottom:16px;font-size:.95rem}
.tbx aside.side h2{font-size:1.05rem;margin:0 0 .5em}
.tbx aside.side ul{padding-left:18px;margin:0}
.tbx p.lead{font-size:1.1rem}
.tbx .srcnote{font-size:.9rem;color:var(--muted);border-top:1px solid var(--line);padding-top:10px;margin-top:22px}
@media(max-width:640px){.tbx .btn{width:auto}}
.tbx .grid{display:grid;gap:14px;grid-template-columns:1fr}
@media(min-width:600px){.tbx .grid.g2,.tbx .grid.g3,.tbx .grid.g4{grid-template-columns:1fr 1fr}
}
@media(min-width:960px){.tbx .grid.g3{grid-template-columns:repeat(3,1fr)}
.tbx .grid.g4{grid-template-columns:repeat(4,1fr)}
}
.tbx .card{display:block;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:18px;text-decoration:none;color:var(--ink);box-shadow:var(--shadow);transition:transform .15s,box-shadow .15s,border-color .15s}
.tbx a.card:hover{transform:translateY(-2px);border-color:var(--blue);box-shadow:0 10px 26px rgba(11,42,91,.16);color:var(--ink)}
.tbx .card h3{margin:.2em 0 .3em;font-size:1.12rem}
.tbx .card p{margin:0;color:var(--muted);font-size:.95rem}
.tbx .card.big{padding:22px;border-left:6px solid var(--blue)}
.tbx .card.big .ico{width:46px;height:46px;display:block;margin-bottom:6px}
.tbx .card.big:nth-child(3n+2){border-left-color:var(--green)}
.tbx .card.big:nth-child(3n){border-left-color:var(--navy)}
.tbx .card.sym{border-top:5px solid var(--warnb)}
.tbx .tag{display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--green2);background:var(--soft2);padding:2px 8px;border-radius:99px}
.tbx .callout{border-left:5px solid var(--blue);background:var(--soft);padding:12px 16px;border-radius:0 10px 10px 0;margin:1em 0}
.tbx .callout.warn{border-color:var(--warnb);background:var(--warn)}
.tbx .callout.ok{border-color:var(--green);background:var(--soft2)}
.tbx .deeper{margin:28px 0 8px;padding:16px 18px;border:2px solid var(--green);border-radius:var(--radius);background:#F6FBF6}
.tbx .deeper h2{font-size:1.1rem;margin:0 0 .3em;color:var(--green2)}
.tbx .deeper p{margin:0}
.tbx figure{margin:1.2em 0}
.tbx figure svg{display:block;width:100%;height:auto;background:#fff;border:1px solid var(--line);border-radius:10px}
.tbx figcaption{font-size:.9rem;color:var(--muted);margin-top:6px}
.tbx table{border-collapse:collapse;width:100%;margin:0 0 1.2em;font-size:.95rem}
.tbx th,.tbx td{border:1px solid var(--line);padding:7px 9px;text-align:left;vertical-align:top}
.tbx th{background:var(--soft);color:var(--navy)}
.tbx .tablewrap{overflow-x:auto}
.tbx .diag h2{display:flex;align-items:center;gap:10px}
.tbx .diag h2 .n{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--navy);color:#fff;font-size:.95rem;flex:none}
.tbx .diag section.help h2 .n{background:var(--warnb)}
.tbx .photo-ph{border:2px dashed var(--line);border-radius:10px;padding:22px;text-align:center;color:var(--muted);background:#FAFCFF;font-weight:600}
.tbx .btn{display:inline-block;background:var(--navy);color:#fff;text-decoration:none;font-weight:800;padding:11px 18px;border-radius:9px;border:2px solid var(--navy);cursor:pointer;font:inherit;font-weight:800}
.tbx .btn:hover{background:var(--blue2);border-color:var(--blue2);color:#fff}
.tbx .btn.alt{background:#fff;color:var(--navy)}
.tbx .btn.green{background:var(--green2);border-color:var(--green2)}
.tbx .btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.tbx label{font-weight:700;display:block;margin-bottom:3px;font-size:.95rem}
.tbx input[type=number],.tbx input[type=text],.tbx input[type=search],.tbx select,.tbx textarea{width:100%;font:inherit;padding:9px 10px;border:2px solid var(--line);border-radius:8px;background:#fff;color:var(--ink)}
.tbx input:focus,.tbx select:focus{border-color:var(--blue);outline:none;box-shadow:0 0 0 3px rgba(30,136,229,.25)}
.tbx input[aria-invalid="true"]{border-color:#C62828;background:#FFF5F5}
.tbx .field{margin-bottom:12px}
.tbx .field .hint{font-size:.82rem;color:var(--muted)}
.tbx .field .err{font-size:.85rem;color:#B71C1C;font-weight:700;display:none}
.tbx .field .err.show{display:block}
.tbx .inrow{display:flex;gap:6px;align-items:center}
.tbx .inrow .u{min-width:92px;font-size:.88rem;color:var(--muted)}
.tbx .calc{background:#fff;border:2px solid var(--line);border-radius:var(--radius);padding:16px;margin:16px 0 22px;box-shadow:var(--shadow)}
.tbx .calc h2{margin-top:0;font-size:1.25rem}
.tbx .calc .fields{display:grid;gap:4px 16px;grid-template-columns:1fr}
@media(min-width:640px){.tbx .calc .fields{grid-template-columns:1fr 1fr}
}
.tbx .unitswitch{display:inline-flex;border:2px solid var(--navy);border-radius:9px;overflow:hidden;margin-bottom:12px}
.tbx .unitswitch button{border:0;background:#fff;color:var(--navy);font:inherit;font-weight:700;padding:6px 14px;cursor:pointer}
.tbx .unitswitch button[aria-pressed="true"]{background:var(--navy);color:#fff}
.tbx .results{margin-top:12px;background:var(--soft2);border:1px solid #B9DDBB;border-radius:10px;padding:12px 14px;min-height:48px}
.tbx .results .r{display:flex;justify-content:space-between;gap:10px;border-bottom:1px dashed #B9DDBB;padding:4px 0}
.tbx .results .r:last-child{border-bottom:0}
.tbx .results .r b{font-size:1.1rem;color:var(--navy);text-align:right}
.tbx .results .note{font-size:.9rem;color:var(--muted);margin-top:6px}
.tbx .results.bad{background:#FFF5F5;border-color:#EF9A9A}
.tbx .formula{background:#0F203F;color:#E8F1FF;border-radius:10px;padding:12px 14px;font-family:ui-monospace,Consolas,monospace;font-size:.92rem;overflow-x:auto;white-space:pre-wrap}
.tbx .example{background:var(--warn);border:1px solid #FFCC80;border-radius:10px;padding:12px 14px}
.tbx .searchbox{position:relative;margin:10px 0 18px}
.tbx .searchbox input{font-size:1.1rem;padding:12px 14px}
.tbx .hidden{display:none!important}
.tbx #sp-plot{width:100%;height:auto;background:#fff;border:1px solid var(--line);border-radius:10px}
.tbx .status{font-weight:800;padding:8px 12px;border-radius:8px;display:inline-block;margin:6px 0}
.tbx .status.under{background:#E8F5E9;color:#1B5E20}
.tbx .status.crit{background:#FFF8E1;color:#8D6E00}
.tbx .status.over{background:#FFEBEE;color:#B71C1C}
.tbx .chips{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 16px}
.tbx .chips button{border:2px solid var(--navy);background:#fff;color:var(--navy);border-radius:99px;padding:7px 14px;font:inherit;font-weight:700;cursor:pointer;font-size:.92rem}
.tbx .chips button[aria-pressed="true"]{background:var(--navy);color:#fff}
.tbx .mx-panel{border:2px solid var(--line);border-radius:var(--radius);padding:16px;background:#fff}
.tbx .mx-cols{display:grid;gap:14px;grid-template-columns:1fr}
@media(min-width:900px){.tbx .mx-cols{grid-template-columns:repeat(3,1fr)}
}
.tbx .mx-cols>div{background:var(--soft);border-radius:10px;padding:12px}
.tbx .mx-cols h3{margin-top:0}
.tbx .q-step{border:2px solid var(--line);border-radius:var(--radius);padding:16px;background:#fff}
.tbx .q-step .opts{display:grid;gap:8px;margin-top:8px}
.tbx .q-step .opts button{text-align:left;border:2px solid var(--line);background:#fff;border-radius:10px;padding:10px 12px;font:inherit;cursor:pointer}
.tbx .q-step .opts button:hover{border-color:var(--blue);background:var(--soft)}
