.tp{--tp-ink:#18231f;--tp-muted:#52625a;--tp-line:#cfdbd4;color:var(--tp-ink);background:#f6f8f3}
.tp section{padding:64px 0}.tp .wrap{max-width:1200px}.tp h1{font-size:clamp(2.8rem,6vw,5.5rem);line-height:1.03;letter-spacing:-.05em;max-width:950px}.tp h2{font-size:clamp(1.8rem,3vw,3rem);line-height:1.12;letter-spacing:-.025em}.tp h3{font-size:1.25rem}.tp p{line-height:1.7;max-width:85ch}.tp a{color:inherit;text-underline-offset:4px}.tp em{color:#a62f25}.tp .kicker{font-size:.75rem;letter-spacing:.1em;font-weight:700}.tp .tp-hero{background:#e9efe5;border-bottom:1px solid var(--tp-line);padding:80px 0 64px}.tp .tp-lead{font-size:1.2rem;max-width:65ch}.tp .tp-disclosure{max-width:84ch;border-left:4px solid #a62f25;padding:12px 20px;background:#fff;margin:28px 0}.tp .tp-actions{display:flex;gap:24px;flex-wrap:wrap;align-items:center;margin-top:28px}.tp .tp-button{display:inline-block;background:#a62f25;color:#fff;padding:14px 22px;border-radius:6px;text-decoration:none;font-weight:700}.tp .tp-split{display:grid;grid-template-columns:1.1fr 1fr;gap:24px}.tp .tp-console{padding:36px;background:#132e26;color:#fff;border-radius:14px;box-shadow:0 18px 40px #132e2617}.tp .tp-console h2{color:#fff}.tp .tp-console .kicker{color:#b8e3b0}.tp .tp-meter{height:14px;background:#354b43;border-radius:8px;overflow:hidden;margin:25px 0}.tp .tp-meter span{display:block;height:100%;width:0;background:#b9e59d}.tp .tp-clock{font-size:.85rem;color:#d7e6dd}.tp .tp-tag{display:inline-block;border:1px solid #789285;border-radius:30px;padding:6px 12px;font-size:.75rem}.tp .tp-panel{background:#fff;border:1px solid var(--tp-line);border-radius:12px;padding:30px}.tp .tp-controls{display:flex;gap:24px;flex-wrap:wrap;margin:26px 0}.tp .tp-controls label{display:grid;gap:8px;font-weight:700;flex:1;min-width:220px}.tp select{font:inherit;color:var(--tp-ink);background:#fff;border:1px solid #708479;padding:12px;border-radius:5px;width:100%}.tp .tp-legend{display:flex;gap:10px;flex-wrap:wrap;align-items:center;font-size:.8rem;margin:20px 0}.tp .tp-band{padding:6px 9px;border-radius:4px;font-weight:700}.tp .b0{background:#e1e9df;color:#253e2e}.tp .b1{background:#b8d1af;color:#183320}.tp .b2{background:#4b7443;color:#fff}.tp .b3{background:#1d4b32;color:#fff}.tp .tp-day{display:grid;grid-template-columns:110px minmax(0,1fr);align-items:center;gap:12px;margin:12px 0}.tp .tp-day h3{font-size:.9rem;margin:0}.tp .tp-hours{display:flex;gap:4px;overflow-x:auto;padding:5px 4px 10px;scrollbar-width:thin}.tp .tp-cell{flex:1 0 36px;min-height:46px;border:0;border-radius:4px;padding:8px 2px;cursor:pointer;font:600 .61rem monospace}.tp .tp-current{outline:2px solid #a62f25;outline-offset:2px}.tp .tp-cell[aria-pressed=true]{box-shadow:inset 0 0 0 3px #fff,inset 0 0 0 5px #192d20}.tp .tp-cell:hover{filter:brightness(.9)}.tp .tp-selected{padding:20px;background:#fff;border-left:4px solid #315b3e;min-height:90px}.tp .tp-caption{font-size:.85rem;color:var(--tp-muted)}.tp .tp-method{background:#e9efe5}.tp table{width:100%;border-collapse:collapse;background:#fff}.tp caption{text-align:left;font-weight:700;padding:18px 0}.tp th,.tp td{text-align:left;padding:16px;border-bottom:1px solid var(--tp-line);font-size:.95rem}.tp th{background:#dbe5d7}.tp .tp-table-wrap{overflow-x:auto;margin:20px 0}.tp details{border-block:1px solid #a9bbaf;padding:18px 0;margin:24px 0}.tp summary{cursor:pointer;font-weight:700}.tp .tp-three{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0}.tp .tp-number{font-size:2.4rem;color:#a62f25;font-weight:800}.tp :focus-visible{outline:3px solid #b63b2d;outline-offset:4px}.tp [hidden]{display:none!important}.tp [id]{scroll-margin-top:24px}
@media(max-width:800px){.tp .tp-split,.tp .tp-three{grid-template-columns:1fr}.tp section{padding:42px 0}.tp .tp-hero{padding:48px 0}.tp .tp-day{grid-template-columns:1fr;gap:3px}.tp .tp-cell{flex-basis:44px;font-size:.7rem}.tp .tp-console,.tp .tp-panel{padding:24px}.tp th,.tp td{padding:12px;min-width:120px}}
@media print{.tp .tp-controls{display:none}.tp .tp-hours{overflow:visible;flex-wrap:wrap}.tp .tp-cell{flex:0 0 35px}.tp section{padding:18px 0}.tp .tp-console{color:#18231f;background:#fff}.tp .tp-console h2,.tp .tp-console .kicker,.tp .tp-clock{color:#18231f}}
