:root{--tj-navy:#071b35;--tj-blue:#0e64bf;--tj-teal:#008a8e;--tj-line:#d7e1ec;--tj-soft:#f5f9fd;--tj-text:#102845;--tj-muted:#62758d;--tj-good:#16833d;--tj-card:#fff}
*{box-sizing:border-box}
body.tank-journal-page{margin:0;background:#eef4f9;color:var(--tj-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body.tj-modal-open{overflow:hidden}
.tj-topbar{height:70px;background:#071b35;color:#fff;display:flex;align-items:center;padding:0 26px;gap:22px;box-shadow:0 2px 12px rgba(1,18,38,.18)}
.tj-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#fff;min-width:max-content}.tj-brand img{width:42px;height:42px}.tj-brand strong{font-size:1.4rem;letter-spacing:.01em}.tj-brand strong b{color:#62bfe9}.tj-brand small{display:block;font-size:.63rem;letter-spacing:.15em;color:#aac8df;margin-top:1px}
.tj-topnav{margin-left:auto;display:flex;gap:8px;align-items:center}.tj-topnav a{color:#dfeaf5;text-decoration:none;font-weight:750;padding:9px 12px;border-radius:8px}.tj-topnav a:hover,.tj-topnav a:focus-visible{background:rgba(255,255,255,.1);outline:none}
.tj-shell{display:grid;grid-template-columns:210px minmax(0,1fr);min-height:calc(100vh - 70px)}
.tj-sidebar{background:linear-gradient(180deg,#082a48,#071c36 72%);color:#fff;padding:20px 14px;display:flex;flex-direction:column;gap:8px}.tj-course{font-size:.72rem;color:#9fc7df;letter-spacing:.14em;font-weight:900;padding:4px 10px 12px}.tj-side-link{display:flex;gap:10px;align-items:center;padding:11px 12px;border-radius:9px;color:#e8f0f8;text-decoration:none;font-weight:760}.tj-side-link:hover,.tj-side-link:focus-visible,.tj-side-link.active{background:rgba(45,172,181,.25);outline:none}.tj-side-link svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;flex:0 0 auto}.tj-side-note{margin-top:auto;border-top:1px solid rgba(255,255,255,.14);padding:18px 10px 6px;color:#b8cedf;font-size:.8rem;line-height:1.45}
.tj-main{padding:18px 22px 34px;min-width:0}.tj-page-title{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:8px}.tj-page-title h1{font-size:1.65rem;margin:0;color:#0c315c}.tj-page-title p{margin:2px 0 0;color:#60758d;font-size:.86rem}.tj-showcase-note{font-weight:700;color:#44647f;font-size:.82rem;text-align:right}.tj-footer{margin-top:16px;color:#72859a;font-size:.72rem;text-align:center}
.tj-card{background:#fff;border:1px solid var(--tj-line);border-radius:10px;box-shadow:0 2px 7px rgba(15,47,80,.04)}
.tj-tank-strip{position:sticky;top:0;z-index:15;background:rgba(245,249,253,.98);backdrop-filter:blur(7px);border:1px solid #d6e2ef;border-radius:10px;display:flex;align-items:center;gap:4px;padding:6px 8px;margin:8px 0 10px;box-shadow:0 3px 12px rgba(20,55,90,.06);overflow-x:auto;scrollbar-width:thin}.tj-tank-label{font-weight:900;color:#184b7d;padding:5px 8px 5px 4px;white-space:nowrap}.tj-tank-btn{border:0;background:transparent;color:#173f69;font-weight:850;min-width:31px;height:31px;border-radius:7px;cursor:pointer}.tj-tank-btn:hover,.tj-tank-btn:focus-visible{background:#e0eefb;outline:none}.tj-tank-btn.active{background:#0d68c7;color:#fff;box-shadow:0 3px 8px rgba(13,104,199,.28)}
.tj-header-row{display:grid;grid-template-columns:minmax(0,1fr) 385px;gap:10px;align-items:stretch;margin-bottom:10px}.tj-tank-heading,.tj-header-weather{min-height:86px}.tj-tank-heading{padding:13px 18px;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(100deg,#f7fbff,#eaf4fc)}.tj-tank-heading h2{font-size:2rem;line-height:1;margin:0;color:#103966}.tj-tank-heading p{margin:6px 0 0;font-size:.86rem;color:#33587e}.tj-tank-heading p span{color:#8aa1b6;padding:0 4px}.tj-updated{display:flex;align-items:center;gap:8px;color:#29577e}.tj-cal-icon{font-size:1.25rem}.tj-updated small,.tj-updated em{display:block;font-size:.67rem;color:#7890a5;font-style:normal}.tj-updated strong{display:block;font-size:.87rem;margin:1px 0;color:#184870}.tj-header-weather{display:grid;grid-template-columns:60px 72px 1fr;align-items:center;padding:10px 14px;background:linear-gradient(120deg,#f8fbff,#edf7ff)}.tj-weather-icon{font-size:2.2rem;line-height:1}.tj-weather-temp{font-size:1.7rem;font-weight:900;color:#0c315b}.tj-weather-copy{display:flex;flex-direction:column;gap:1px}.tj-weather-copy strong{font-size:.78rem;color:#173e68}.tj-weather-copy span{font-size:.7rem;color:#57708a}.tj-weather-copy small{font-size:.68rem;color:#61788e;line-height:1.25}
.tj-showcase-grid{display:grid;grid-template-columns:255px minmax(0,1fr) 385px;gap:10px;align-items:stretch}.tj-card-title{display:flex;align-items:center;gap:8px;padding:9px 12px;border-bottom:1px solid #dde8f1;background:linear-gradient(90deg,#f8fbfd,#eef7fd)}.tj-card-title>span{color:#0e64bf;font-weight:900}.tj-card-title h2{font-size:.93rem;margin:0;color:#0b3b70;flex:1}.tj-card-title b{font-size:.65rem;color:#65809a;font-weight:800}
.tj-photo-small{overflow:hidden}.tj-photo-button{display:block;position:relative;border:0;background:#071b35;width:100%;padding:0;cursor:zoom-in}.tj-photo-button img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.tj-zoom{position:absolute;right:8px;bottom:8px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:rgba(5,31,54,.85);color:#fff;font-size:1rem}.tj-photo-meta{padding:8px 10px;text-align:center;color:#395c7c;font-size:.72rem}.tj-photo-meta small{display:block;color:#71879b;margin-top:2px}
.tj-observation-v2{display:flex;flex-direction:column;min-width:0}.tj-lead-observation{font-size:.88rem;line-height:1.5;color:#294d70;margin:0;padding:13px 14px}.tj-context-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 12px 10px}.tj-context-grid section{border:1px solid #d9e7f2;border-radius:8px;padding:9px 10px;background:#f7fbff}.tj-context-grid h3{font-size:.73rem;margin:0 0 5px;color:#24527e}.tj-context-grid p{font-size:.75rem;line-height:1.35;margin:0;color:#3f5a73}.tj-behavior{margin:0 12px 12px;padding:9px 10px;border:1px solid #d9e7f2;border-left:4px solid #39a271;border-radius:8px;background:#f4fbf7}.tj-behavior strong{display:block;font-size:.72rem;color:#1b6a49;margin-bottom:3px}.tj-behavior span{font-size:.74rem;line-height:1.35;color:#3f5f52}
.tj-organisms{overflow:hidden}.tj-organism-list{padding:3px 10px}.tj-organism{display:grid;grid-template-columns:58px 1fr 20px;align-items:center;gap:9px;padding:7px 0;border-bottom:1px solid #e4edf4;color:inherit;text-decoration:none}.tj-organism:hover .tj-organism-name strong{text-decoration:underline}.tj-organism-thumb{height:46px;border-radius:6px;display:grid;place-items:center;font-size:1.65rem;background:linear-gradient(135deg,#d7eef7,#edf8f3);overflow:hidden}.tj-organism-name{min-width:0}.tj-organism-name strong{display:block;font-size:.78rem;color:#123f6d}.tj-organism-name em{display:block;font-size:.68rem;color:#5b7288;font-family:Georgia,serif}.tj-organism-name small{display:block;font-size:.65rem;color:#49647d;margin-top:2px}.tj-organism-name i{font-style:normal;color:#9aabba}.tj-organism-link{color:#0e64bf;font-weight:900}.tj-species-links{padding:9px 10px 11px}.tj-species-links>span{font-size:.66rem;color:#647b91}.tj-species-links>div{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:5px}.tj-species-links a{text-align:center;background:#eaf4fb;color:#1b5487;text-decoration:none;font-size:.66rem;font-weight:800;padding:6px 4px;border-radius:6px}.tj-organism-empty{padding:24px;color:#687f93;font-size:.78rem;line-height:1.45}
.tj-middle-grid{display:grid;grid-template-columns:minmax(0,1fr) 385px;gap:10px;margin-top:10px;align-items:stretch}.tj-evidence-data{margin-top:10px}.tj-water-card{overflow:hidden}.tj-water-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;padding:10px}.tj-data{padding:9px 10px;border-radius:8px;background:#f7fafc;border:1px solid #e2eaf1}.tj-data span{display:block;color:#45627e;font-size:.68rem;font-weight:800}.tj-data strong{display:block;font-size:1.13rem;margin-top:2px;color:#0f3358}.tj-data em{display:block;font-style:normal;font-size:.62rem;color:#708299;margin-top:2px}.tj-data.good strong{color:#16833d}
.tj-maintenance{overflow:hidden}.tj-maint-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px 12px;padding:12px}.tj-maint-item{display:flex;gap:7px;align-items:center;font-size:.72rem;color:#536b82}.tj-check{width:18px;height:18px;border:1px solid #aebdcc;border-radius:4px;display:grid;place-items:center;font-size:.72rem;font-weight:900;color:#fff;background:#fff;flex:0 0 auto}.tj-maint-item.done{color:#254d6f}.tj-maint-item.done .tj-check{background:#289940;border-color:#289940}
.tj-chart-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.tj-chart-card{padding:10px 12px}.tj-chart-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:4px}.tj-chart-head h2{font-size:.9rem;margin:0;color:#0b3b70}.tj-chart-head small{color:#71849a;font-size:.65rem}.tj-chart{width:100%;height:176px;display:block}.tj-chart .grid{stroke:#dbe4ec;stroke-width:1}.tj-chart .axis-label{font-size:10px;fill:#6e8194}.tj-chart .range{fill:#e7f5ed}.tj-chart .line{fill:none;stroke:#0f68c3;stroke-width:2.8}.tj-chart.ph .line{stroke:#17833f}.tj-chart .point{fill:#0f68c3}.tj-chart.ph .point{fill:#17833f}.tj-chart .event{stroke:#526f8c;stroke-width:1.2;stroke-dasharray:4 3}.tj-chart .event-label{font-size:10px;fill:#31516f;font-weight:700}.tj-no-chart{height:176px;display:grid;place-items:center;color:#7a8da0;font-size:.75rem}
.tj-form-row{display:flex;gap:10px;align-items:center;margin:10px 0}.tj-form-button{display:inline-flex;align-items:center;justify-content:center;background:#0d68c7;color:#fff;font-weight:850;text-decoration:none;padding:9px 14px;border-radius:8px;font-size:.78rem}.tj-form-button[aria-disabled="true"]{background:#91a7ba;cursor:not-allowed}.tj-form-row span{font-size:.68rem;color:#74889a}
.tj-history{overflow:hidden}.tj-history-head{padding:10px 14px;background:#f3f8fc;border-bottom:1px solid #d8e4ee;display:flex;justify-content:space-between;align-items:center}.tj-history-head h2{font-size:.95rem;margin:0;color:#0b3b70}.tj-history-head small{font-size:.67rem;color:#6d8092}.tj-table-wrap{overflow-x:auto}.tj-table{width:100%;border-collapse:collapse;font-size:.71rem;min-width:980px}.tj-table th{background:#f7fafc;text-align:left;color:#42617e;font-size:.64rem;padding:7px 8px;border-bottom:1px solid #dae5ee}.tj-table td{padding:7px 8px;border-bottom:1px solid #e5edf4;color:#334f6a;vertical-align:middle}.tj-table tr:last-child td{border-bottom:0}.tj-thumb-button{border:0;padding:0;background:none;cursor:zoom-in}.tj-thumb{width:62px;height:38px;object-fit:cover;border-radius:5px;border:1px solid #cddae5}.tj-date strong{display:block;color:#163f69}.tj-wq-cell{white-space:nowrap}.tj-wq-cell span{display:block;font-size:.66rem}.tj-empty{padding:48px 24px;text-align:center}.tj-empty h2{color:#143e68}.tj-empty p{color:#637890;max-width:560px;margin:8px auto 0;line-height:1.5}
.tj-lightbox[hidden]{display:none}.tj-lightbox{position:fixed;inset:0;z-index:100;background:rgba(3,16,30,.88);display:grid;place-items:center;padding:28px}.tj-lightbox img{max-width:min(1200px,92vw);max-height:82vh;object-fit:contain;border-radius:10px;box-shadow:0 18px 60px rgba(0,0,0,.45)}.tj-lightbox-close{position:fixed;right:22px;top:18px;border:0;background:#fff;color:#12395f;width:40px;height:40px;border-radius:50%;font-size:1.7rem;cursor:pointer}.tj-lightbox-caption{position:fixed;bottom:16px;color:#e6f0f8;background:rgba(4,31,53,.76);padding:7px 11px;border-radius:7px;font-size:.76rem}
@media(max-width:1250px){.tj-showcase-grid{grid-template-columns:230px minmax(0,1fr) 330px}.tj-middle-grid{grid-template-columns:minmax(0,1fr) 330px}.tj-header-row{grid-template-columns:minmax(0,1fr) 320px}.tj-water-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:1000px){.tj-shell{grid-template-columns:170px minmax(0,1fr)}.tj-showcase-grid{grid-template-columns:220px 1fr}.tj-organisms{grid-column:1/-1}.tj-middle-grid{grid-template-columns:1fr}.tj-header-row{grid-template-columns:1fr 300px}.tj-maint-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.tj-topbar{padding:0 12px;height:62px}.tj-topnav{display:none}.tj-shell{display:block}.tj-sidebar{display:none}.tj-main{padding:12px}.tj-page-title{display:block}.tj-showcase-note{display:none}.tj-header-row,.tj-showcase-grid,.tj-middle-grid,.tj-chart-row{grid-template-columns:1fr}.tj-header-weather{min-height:74px}.tj-photo-small{max-width:none}.tj-photo-button img{aspect-ratio:16/9}.tj-context-grid{grid-template-columns:1fr}.tj-water-grid{grid-template-columns:repeat(2,1fr)}.tj-maint-grid{grid-template-columns:1fr 1fr}.tj-tank-strip{top:0}.tj-table{min-width:880px}}

.tj-context-grid.one{grid-template-columns:1fr}
.tj-maint-summary{margin:12px 4px 4px;line-height:1.55;color:#334f6b}
.tj-water-context{display:flex;gap:18px;flex-wrap:wrap;padding:0 18px 16px;color:#526b83;font-size:.78rem}
.tj-review-link{margin-left:auto;font-size:.76rem;color:#5f7488;text-decoration:none;font-weight:700}
.tj-review-link:hover,.tj-review-link:focus-visible{text-decoration:underline}
.tj-photo-placeholder{min-height:220px;display:grid;place-items:center;background:#edf3f8;border-radius:10px;color:#6c8298;font-style:italic}

/* v0.6.60 — Tank Journal content inside the shared Aquatic Science shell */
body.tank-journal-page{background:#eef2f6}
.tank-specialty-workspace .tj-tank-strip{top:74px;margin:0 0 12px;border-radius:12px;background:rgba(255,255,255,.97);border-color:#d5dee9}
.tank-specialty-workspace .tj-card{border-color:#d5dee9;border-radius:12px;box-shadow:0 6px 17px rgba(7,25,52,.055)}
.tank-specialty-workspace .tj-header-row{margin-bottom:12px}.tank-specialty-workspace .tj-middle-grid,.tank-specialty-workspace .tj-chart-row{margin-top:12px}
.tank-specialty-workspace .tj-tank-heading,.tank-specialty-workspace .tj-header-weather{background:#fff}
.tank-specialty-workspace .tj-card-title,.tank-specialty-workspace .tj-history-head{background:#f7fafc}
.tank-specialty-workspace .tj-tank-btn.active,.tank-specialty-workspace .tj-form-button{background:linear-gradient(90deg,#007277,#078f91);box-shadow:0 5px 13px rgba(0,113,116,.2)}
.tank-specialty-workspace .tj-tank-btn:hover,.tank-specialty-workspace .tj-tank-btn:focus-visible{background:#e8f5f3;color:#075e61}
.tank-specialty-workspace .tj-tank-btn.active:hover,.tank-specialty-workspace .tj-tank-btn.active:focus-visible{color:#fff;background:linear-gradient(90deg,#007277,#078f91)}
.tank-specialty-workspace .tj-tank-label,.tank-specialty-workspace .tj-card-title h2,.tank-specialty-workspace .tj-chart-head h2,.tank-specialty-workspace .tj-history-head h2{color:#075e61}
.tank-specialty-workspace .tj-card-title>span{color:#008b8d}
.tank-specialty-workspace .tj-empty{background:#fff;border:1px solid #d5dee9;border-radius:14px;box-shadow:0 8px 22px rgba(7,25,52,.06);min-height:250px;display:grid;place-content:center;margin-top:2px}
@media(max-width:1100px){.tank-specialty-workspace .tj-tank-strip{top:82px}}
@media(max-width:760px){.tank-specialty-workspace .tj-tank-strip{top:72px}}


/* v0.6.64 — Tank 30, sample entry, and persistent student submission action */
.tj-strip-divider{width:1px;height:22px;background:#cbd8e3;margin:0 5px;flex:0 0 auto}
.tj-demo-btn{min-width:72px;padding:0 10px;font-size:.72rem;letter-spacing:.03em}
.tj-journal-actions{display:flex;justify-content:space-between;gap:18px;align-items:center;margin:-2px 0 12px;padding:13px 15px;border:1px solid #cfe2df;border-radius:12px;background:linear-gradient(90deg,#f2fbf9,#f8fcfc)}
.tj-journal-actions>div:first-child{display:flex;flex-direction:column;gap:2px}.tj-journal-actions strong{color:#075e61;font-size:.88rem}.tj-journal-actions span{color:#5f7688;font-size:.74rem}
.tj-journal-actions-buttons{display:flex;gap:8px;align-items:center;flex:0 0 auto}.tj-submit-primary,.tj-empty-submit{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(90deg,#007277,#078f91);color:#fff;text-decoration:none;font-weight:850;border-radius:8px;padding:9px 13px;font-size:.76rem;box-shadow:0 5px 13px rgba(0,113,116,.17)}
.tj-submit-primary:hover,.tj-submit-primary:focus-visible,.tj-empty-submit:hover,.tj-empty-submit:focus-visible{filter:brightness(.96);outline:2px solid #7dd5d2;outline-offset:2px}
.tj-sample-link{border:1px solid #b9d6d4;background:#fff;color:#07686b;border-radius:8px;padding:8px 11px;font-size:.74rem;font-weight:800;cursor:pointer}.tj-sample-link:hover,.tj-sample-link:focus-visible{background:#e9f7f5;outline:none}
.tj-demo-guide{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.9fr);gap:24px;align-items:start;margin:0 0 12px;padding:18px 20px;border:1px solid #c9dfdc;border-left:5px solid #078f91;border-radius:12px;background:#fff;box-shadow:0 5px 16px rgba(7,25,52,.045)}
.tj-demo-label{display:inline-block;color:#05777a;background:#e7f7f5;border-radius:999px;padding:4px 8px;font-size:.64rem;font-weight:900;letter-spacing:.08em}.tj-demo-guide h2{margin:8px 0 6px;color:#0b3b55;font-size:1.05rem}.tj-demo-guide p{margin:0;color:#536c7d;font-size:.78rem;line-height:1.5}.tj-demo-guide ul{margin:0;padding-left:18px;color:#3c586d;font-size:.75rem;line-height:1.5}.tj-demo-guide li+li{margin-top:4px}.tj-demo-guide strong{color:#153f57}.tj-empty-submit{margin:18px auto 0;width:max-content}
@media(max-width:900px){.tj-journal-actions{align-items:flex-start;flex-direction:column}.tj-journal-actions-buttons{width:100%;flex-wrap:wrap}.tj-demo-guide{grid-template-columns:1fr}}

/* v0.6.65 — compact 30-tank selector */
.tj-tank-strip{gap:2px;padding:6px 8px;overflow:visible;flex-wrap:nowrap}
.tj-tank-label{margin-right:3px;font-size:.72rem}
.tj-tank-btn{width:24px;height:24px;min-width:24px;font-size:.69rem;border-radius:6px}
.tj-strip-divider,.tj-demo-btn{display:none!important}
@media(max-width:1200px){.tj-tank-strip{gap:1px}.tj-tank-btn{width:23px;height:23px;min-width:23px;font-size:.66rem}.tj-tank-label{font-size:.69rem;margin-right:2px}}
@media(max-width:900px){.tj-tank-strip{overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin}.tj-tank-btn{flex:0 0 auto}}


/* v0.6.66 — discreet teacher review shortcut */
.tj-review-quiet{
  display:inline-flex;
  align-items:center;
  align-self:center;
  margin-left:2px;
  padding:4px 6px;
  border-radius:5px;
  color:#7b8e9c;
  text-decoration:none;
  font-size:.62rem;
  font-weight:700;
  opacity:.68;
}
.tj-review-quiet:hover,.tj-review-quiet:focus-visible{
  color:#31576d;
  background:#edf4f6;
  opacity:1;
  outline:none;
  text-decoration:none;
}


/* v0.6.68 — previous/next tank navigation + modest projection readability bump */
.tj-tank-nav-divider{
  width:1px;
  height:20px;
  background:#d4e0ea;
  margin:0 5px;
  flex:0 0 auto;
}
.tj-tank-move{
  height:28px;
  padding:0 10px;
  border:1px solid #bfd4df;
  border-radius:7px;
  background:#fff;
  color:#075e61;
  font:inherit;
  font-size:.76rem;
  font-weight:850;
  white-space:nowrap;
  cursor:pointer;
  flex:0 0 auto;
}
.tj-tank-move:hover,.tj-tank-move:focus-visible{
  background:#e8f5f3;
  border-color:#8fc8c5;
  outline:none;
}
.tj-tank-move:disabled{
  color:#9aaab8;
  background:#f4f7f9;
  border-color:#dbe3ea;
  cursor:default;
  opacity:.7;
}

/* Slightly larger type for easier classroom projection; Tank heading remains unchanged. */
.tj-card-title h2,.tj-chart-head h2,.tj-history-head h2{font-size:1rem}
.tj-tank-heading p{font-size:.92rem}
.tj-updated small,.tj-updated em{font-size:.73rem}
.tj-updated strong{font-size:.93rem}
.tj-weather-copy strong{font-size:.84rem}
.tj-weather-copy span{font-size:.76rem}
.tj-weather-copy small{font-size:.74rem}
.tj-journal-actions strong{font-size:.95rem}
.tj-journal-actions span{font-size:.82rem}
.tj-submit-primary,.tj-empty-submit{font-size:.82rem}
.tj-sample-link{font-size:.8rem}
.tj-lead-observation{font-size:.93rem}
.tj-context-grid h3,.tj-behavior strong{font-size:.8rem}
.tj-context-grid p,.tj-behavior span{font-size:.82rem}
.tj-photo-meta{font-size:.78rem}
.tj-photo-meta small{font-size:.72rem}
.tj-organism-name strong{font-size:.84rem}
.tj-organism-name em{font-size:.74rem}
.tj-organism-name small{font-size:.72rem}
.tj-organism-empty{font-size:.84rem}
.tj-species-links>span,.tj-species-links a{font-size:.72rem}
.tj-data span{font-size:.75rem}
.tj-data em{font-size:.7rem}
.tj-water-context{font-size:.84rem}
.tj-maint-summary{font-size:.93rem}
.tj-chart-head small{font-size:.72rem}
.tj-no-chart{font-size:.82rem}
.tj-history-head small{font-size:.74rem}
.tj-table{font-size:.78rem}
.tj-table th{font-size:.72rem}
.tj-wq-cell span{font-size:.73rem}
.tj-tank-label{font-size:.78rem}
.tj-tank-btn{font-size:.75rem}

@media(max-width:1200px){
  .tj-tank-label{font-size:.74rem}
  .tj-tank-btn{font-size:.72rem}
  .tj-tank-move{font-size:.72rem;padding:0 8px}
}
@media(max-width:900px){
  .tj-tank-nav-divider,.tj-tank-move{flex:0 0 auto}
}


/* v0.6.69 — clearer maintenance checklist + header alignment */
.tj-maint-checklist{padding:12px 14px 14px;display:grid;gap:12px}
.tj-maint-group{margin:0}
.tj-maint-group h3{margin:0 0 6px;font-size:.8rem;color:#24527e}
.tj-maint-group ul{list-style:none;margin:0;padding:0;display:grid;gap:5px}
.tj-maint-group li{display:flex;align-items:flex-start;gap:8px;color:#3e5c77;font-size:.88rem;line-height:1.35}
.tj-maint-check{width:18px;height:18px;border-radius:4px;background:#e7f6ed;color:#16833d;border:1px solid #b9dfc7;display:grid;place-items:center;font-size:.72rem;font-weight:900;flex:0 0 18px;margin-top:1px}
@media(min-width:1180px){.tj-maint-checklist{grid-template-columns:1fr 1fr;column-gap:18px}.tj-maint-group{break-inside:avoid}}


/* v0.6.70 — +2px projection readability pass. Tank number heading intentionally unchanged. */
.tj-card-title h2,.tj-chart-head h2,.tj-history-head h2{font-size:1.125rem}
.tj-tank-heading p{font-size:1.045rem}
.tj-updated small,.tj-updated em{font-size:.855rem}
.tj-updated strong{font-size:1.055rem}
.tj-weather-copy strong{font-size:.965rem}
.tj-weather-copy span{font-size:.885rem}
.tj-weather-copy small{font-size:.865rem}
.tj-journal-actions strong{font-size:1.075rem}
.tj-journal-actions span{font-size:.945rem}
.tj-submit-primary,.tj-empty-submit{font-size:.945rem}
.tj-sample-link{font-size:.925rem}
.tj-lead-observation{font-size:1.055rem}
.tj-context-grid h3,.tj-behavior strong{font-size:.925rem}
.tj-context-grid p,.tj-behavior span{font-size:.945rem}
.tj-photo-meta{font-size:.905rem}
.tj-photo-meta small{font-size:.845rem}
.tj-organism-name strong{font-size:.965rem}
.tj-organism-name em{font-size:.865rem}
.tj-organism-name small{font-size:.845rem}
.tj-organism-empty{font-size:.965rem}
.tj-species-links>span,.tj-species-links a{font-size:.845rem}
.tj-data span{font-size:.875rem}
.tj-data em{font-size:.825rem}
.tj-water-context{font-size:.965rem}
.tj-maint-summary{font-size:1.055rem}
.tj-chart-head small{font-size:.845rem}
.tj-no-chart{font-size:.945rem}
.tj-history-head small{font-size:.865rem}
.tj-table{font-size:.905rem}
.tj-table th{font-size:.845rem}
.tj-wq-cell span{font-size:.855rem}
.tj-maint-group h3{font-size:.925rem}
.tj-maint-group li{font-size:1.005rem}
.tj-maint-check{font-size:.845rem}
/* Keep the dense 1–30 tank strip compact enough to remain on one line. */
.tj-tank-label{font-size:.84rem}
.tj-tank-btn{font-size:.81rem}
.tj-tank-move{font-size:.84rem}

/* v0.7.10 — extended trends and marking-period history break */
.tj-chart.nitrate .line{stroke:#d97706}
.tj-chart.nitrate .point{fill:#d97706}
.tj-chart.water-level .line{stroke:#7c3aed}
.tj-chart.water-level .point{fill:#7c3aed}
.tj-chart .gap-label{font-size:10px;fill:#9a5a5a;font-weight:800}
.tj-chart .event-label{display:block;fill:#31516f;font-size:10px;font-weight:800}
.tj-period-divider td{padding:9px 10px!important;background:#e9f4f3;color:#075e61!important;border-top:2px solid #b8d9d5;border-bottom:1px solid #cfe3e1!important;letter-spacing:.02em}
.tj-event-key{margin-top:10px;padding:11px 13px;border:1px solid #cfdee7;border-radius:10px;background:#fff}.tj-event-key>strong{display:block;color:#075e61;font-size:.86rem}.tj-event-key>div{display:flex;flex-wrap:wrap;gap:7px;margin-top:7px}.tj-event-key span{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border-radius:999px;background:#edf6f7;color:#34586b;font-size:.76rem}.tj-event-key span b{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#087f83;color:#fff;font-size:.68rem}.tj-event-key time{font-weight:800;color:#174f67}.tj-event-key>small{display:block;margin-top:7px;color:#6b8090;font-size:.72rem}

/* v0.6.71 — Tank Journal chart readability: +2px chart typography */
.tj-chart-head h2{font-size:1.25rem}
.tj-chart-head small{font-size:.97rem}
.tj-chart .axis-label{font-size:12px}
.tj-chart .event-label{font-size:12px}

.tj-chart .mp-boundary{stroke:#8a6b45;stroke-width:1.5;stroke-dasharray:3 4}.tj-chart .mp-boundary-label{fill:#735532;font-size:11px;font-weight:700}
