.compost-log-page{background:#f7f8f4}
.log-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}
.log-main,.log-sidebar{display:grid;gap:24px}
.log-sidebar{position:sticky;top:18px}
.log-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px;box-shadow:0 8px 24px rgba(21,55,44,.05)}
.card-heading{display:flex;justify-content:space-between;gap:22px;align-items:flex-start;margin-bottom:22px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.card-heading h2{font-size:1.8rem;margin:.25em 0 0}
.input-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.input-grid label{display:grid;align-content:start;gap:7px;color:var(--ink);font-weight:800}
.input-grid label>span:first-child{font-size:.93rem}
.input-grid input,.input-grid select,.input-grid textarea{width:100%;border:1px solid #8ca096;border-radius:10px;background:#fff;color:var(--ink);font:inherit;padding:12px 13px}
.input-grid textarea{resize:vertical;min-height:92px}
.input-grid input:focus,.input-grid select:focus,.input-grid textarea:focus{outline:3px solid rgba(168,104,25,.3);border-color:var(--gold)}
.wide-input{grid-column:1/-1}
.joined-input{display:grid!important;grid-template-columns:minmax(0,1fr) 82px;gap:8px}
.form-actions,.stacked-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.stacked-actions{display:grid}
.form-actions button,.card-heading button,.stacked-actions button{border:0;font:inherit;cursor:pointer}
.text-button{border:0;background:transparent;color:var(--accent-dark);font:inherit;font-weight:850;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.danger-button{min-height:48px;border:2px solid #a33128!important;border-radius:10px;background:#fff;color:#85231d;font-weight:850}
.danger-button:disabled,.button:disabled{cursor:not-allowed;opacity:.5}
.file-button{display:flex;align-items:center;justify-content:center;min-height:52px;padding:12px;border:2px solid var(--accent);border-radius:10px;background:#fff;color:var(--accent-dark);font-weight:850;cursor:pointer;text-align:center}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.status-message{min-height:1.5em;margin:14px 0 0;color:var(--muted);font-weight:700}
.record-code{display:inline-block;border-radius:999px;background:var(--soft);padding:8px 12px;color:var(--accent-dark);font-size:.8rem;font-weight:900}
.saved-batches{display:grid;gap:10px;margin-top:18px}
.saved-batch{display:grid;gap:4px;width:100%;min-height:70px;padding:13px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);font:inherit;text-align:left;cursor:pointer}
.saved-batch:hover,.saved-batch:focus-visible,.saved-batch.is-active{border-color:var(--accent);background:var(--soft)}
.saved-batch strong{font-size:1rem}.saved-batch span{color:var(--muted);font-size:.82rem}
.empty-state{padding:24px;border:1px dashed #8ca096;border-radius:12px;background:var(--bg);color:var(--muted);text-align:center}
.summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:20px}
.summary-grid>div{display:grid;gap:5px;min-width:0;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--soft)}
.summary-grid span{color:var(--muted);font-size:.75rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
.summary-grid strong{overflow-wrap:anywhere;font-size:1rem}
.print-batch-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;margin-bottom:18px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--bg)}
.print-batch-details div{min-width:0}.print-batch-details span{display:block;color:var(--muted);font-size:.73rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.print-batch-details p{margin:.2em 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.print-batch-details .wide{grid-column:1/-1}
.history-list{display:grid;gap:14px}
.history-entry{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}
.history-entry-header{display:flex;justify-content:space-between;gap:14px;padding:16px 18px;background:var(--soft)}
.history-entry-header strong{font-size:1.1rem}.history-entry-header span{color:var(--muted);font-size:.9rem}
.history-entry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
.history-field{padding:13px 16px;border-top:1px solid var(--line);border-right:1px solid var(--line)}
.history-field:nth-child(3n){border-right:0}.history-field.wide{grid-column:1/-1;border-right:0}
.history-field span{display:block;color:var(--muted);font-size:.73rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
.history-field p{margin:.25em 0 0;white-space:pre-wrap;overflow-wrap:anywhere}
.entry-actions{display:flex;gap:8px;padding:12px 16px;border-top:1px solid var(--line)}
.entry-actions button{border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--accent-dark);font:inherit;font-size:.85rem;font-weight:800;padding:8px 12px;cursor:pointer}
fieldset{margin:0;padding:0;border:0;min-width:0}
@media(max-width:900px){.log-layout{grid-template-columns:1fr}.log-sidebar{position:static;grid-template-columns:1fr 1fr}.summary-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.log-card{padding:22px}.card-heading{flex-direction:column}.input-grid,.log-sidebar,.history-entry-grid,.print-batch-details{grid-template-columns:1fr}.wide-input,.history-field.wide,.print-batch-details .wide{grid-column:auto}.history-field,.history-field:nth-child(3n){border-right:0}.summary-grid{grid-template-columns:1fr 1fr}.form-actions{display:grid}.form-actions .button{width:100%}}
@media print{header,.hero,.soft-section,footer,.log-sidebar,.batch-card,#reading-form,.card-heading button,.entry-actions,.status-message{display:none!important}.section{padding:0}.log-layout{display:block}.log-card{border:0;box-shadow:none;padding:0}.history-card .card-heading{display:block}.history-card .card-heading::before{content:"TerraEvidence Compost Temperature Log & Batch Record";display:block;margin-bottom:8px;font-size:9pt;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.summary-grid{grid-template-columns:repeat(4,1fr)}.print-batch-details{display:grid!important}.history-entry{break-inside:avoid}.history-entry-grid{grid-template-columns:repeat(3,1fr)}body{font-size:9pt}.history-field{padding:7px 9px}}
