/* TCO Growth: tools, quiz, reset tracker, share row. Uses the theme's colour tokens. */
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.tco-g-head{margin:0 0 1.2rem}
.tco-g-head .subtitle{color:var(--color-text-muted);font-size:1.05rem;margin:.3rem 0 0}
.tco-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.55rem 1rem;border:1px solid var(--color-sage-dark);border-radius:999px;background:#fff;color:var(--color-sage-dark);font:600 .95rem/1.2 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;cursor:pointer;text-decoration:none}
.tco-btn:hover{background:var(--color-sage-light)}
.tco-btn-primary{background:var(--color-sage-dark);color:#fff}
.tco-btn-primary:hover{background:#465a4d;color:#fff}
.tco-btn-wa{border-color:#1d7a45;color:#1d7a45}
.tco-btn[aria-pressed="true"]{background:var(--color-sage-light)}
.tco-btn:focus-visible,.tco-g a:focus-visible,.tco-actions a:focus-visible,.tco-opt input:focus-visible{outline:3px solid var(--color-terracotta-dark);outline-offset:2px}
.tco-search{margin:1rem 0 1.5rem}
.tco-search label{display:block;font:600 .9rem -apple-system,sans-serif;margin-bottom:.35rem}
.tco-search-row{display:flex;gap:.5rem;flex-wrap:wrap}
.tco-search input[type=search]{flex:1 1 220px;min-width:0;min-height:48px;padding:.6rem .9rem;border:1px solid var(--color-border);border-radius:999px;font-size:1rem;background:#fff}
.tco-chips{list-style:none;padding:0;margin:.5rem 0 1.5rem;display:flex;flex-wrap:wrap;gap:.5rem}
.tco-chips a{display:inline-block;padding:.5rem .9rem;border:1px solid var(--color-border);border-radius:999px;background:#fff;font:.92rem -apple-system,sans-serif;min-height:40px}
.tco-top-result{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius);padding:1rem 1.2rem;margin:0 0 1.5rem}
.tco-top-result h3{margin:.2rem 0 .5rem}
.tco-key{background:var(--color-sage-light);border-radius:var(--radius);padding:.8rem 1.1rem;margin:1.5rem 0}
.tco-key summary{cursor:pointer;font:600 1rem -apple-system,sans-serif;min-height:32px}
.tco-key dt{font-weight:700;margin-top:.6rem}
.tco-key dd{margin:0}
.tco-share{margin:1rem 0}
.tco-share-lead{font:600 .95rem -apple-system,sans-serif;margin:0 0 .5rem}
.tco-share-row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.tco-share-ok{font-size:.9rem;color:var(--color-sage-dark)}
.tco-endcap{border-top:1px solid var(--color-border);margin:2rem 0 1rem;padding-top:1rem}
.tco-next{font:.95rem -apple-system,sans-serif}
.tco-home-actions{margin:1.5rem 0 2rem}
.tco-actions{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.7rem}
.tco-actions a{display:flex;flex-direction:column;gap:.2rem;height:100%;padding:.9rem 1rem;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text)}
.tco-actions a strong{font-family:-apple-system,sans-serif;color:var(--color-sage-dark)}
.tco-actions a span{font-size:.88rem;color:var(--color-text-muted)}
.tco-actions a:hover{border-color:var(--color-sage)}
.tco-progress{height:10px;background:var(--color-sage-light);border-radius:999px;overflow:hidden;margin:.6rem 0}
.tco-progress span{display:block;height:100%;width:0;background:var(--color-sage-dark);transition:width .3s}
.tco-reset{background:#fff;border:1px solid var(--color-border);border-left:5px solid var(--color-sage-dark);border-radius:var(--radius);padding:1rem 1.2rem;margin:0 0 1.5rem}
.tco-reset-actions{display:flex;gap:.5rem;flex-wrap:wrap}
.tco-reset-friend{margin:.8rem 0 0}
.tco-day-toggle{margin:.3rem 0 .8rem}
.tco-day-toggle[aria-pressed="true"]::before{content:"\2713\00a0"}
.tco-quiz-list{list-style:none;padding:0;margin:0}
.tco-quiz-q{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius);padding:1rem 1.2rem;margin:0 0 1rem}
.tco-quiz-q fieldset{border:0;padding:0;margin:0}
.tco-quiz-q legend{font:600 1.05rem/1.4 -apple-system,sans-serif;margin-bottom:.6rem;padding:0}
.tco-quiz-num{display:block;font-size:.8rem;color:var(--color-text-muted);font-weight:500}
.tco-opt{display:flex;align-items:center;gap:.6rem;min-height:44px;padding:.4rem .7rem;border:1px solid var(--color-border);border-radius:10px;margin:.4rem 0;cursor:pointer}
.tco-opt.is-correct{border-color:#1d7a45;background:#eaf5ee}
.tco-opt.is-wrong{border-color:#b3261e;background:#fbeceb}
.tco-opt.is-correct span::after{content:" \2014 correct"}
.tco-opt.is-wrong span::after{content:" \2014 your answer"}
.tco-quiz-answer{margin-top:.6rem}
.tco-quiz-answer summary{cursor:pointer;color:var(--color-sage-dark);font:600 .95rem -apple-system,sans-serif}
.tco-quiz.is-live .tco-quiz-answer summary{display:none}
.tco-quiz-src{font-size:.92rem}
.tco-quiz-result{background:var(--color-sage-light);border-radius:var(--radius);padding:1.2rem}
.tco-calc{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius);padding:1rem 1.2rem;margin:0 0 1.5rem;display:grid;gap:.8rem}
.tco-field label{display:block;font:600 .92rem -apple-system,sans-serif;margin-bottom:.3rem}
.tco-field input,.tco-field select,.tco-field textarea{width:100%;min-height:44px;padding:.5rem .7rem;border:1px solid var(--color-border);border-radius:10px;font-size:1rem;background:#fff;font-family:inherit}
.tco-unit,.tco-hint{display:block;font-size:.85rem;color:var(--color-text-muted);margin:.25rem 0 0}
.tco-calc-out{font-size:1.1rem;min-height:1.5em}
.tco-form{display:grid;gap:1rem;max-width:640px;margin:0 0 2rem}
.tco-check{display:flex;gap:.6rem;align-items:flex-start;font-size:.95rem}
.tco-check input{width:22px;height:22px;flex:none;margin-top:.1rem}
.req{font-weight:400;color:var(--color-text-muted)}
.tco-warn{background:#fff6ef;border:1px solid #f0cdb9;border-radius:10px;padding:.7rem 1rem;font-size:.95rem}
.tco-notice{padding:.7rem 1rem;border-radius:10px;font-weight:600}
.tco-notice.ok{background:#eaf5ee;color:#1d5c38}
.tco-notice.error{background:#fbeceb;color:#8c1d18}
.tco-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.tco-az{columns:2 220px;padding-left:1.1rem}
.tco-az li{margin:.35rem 0;break-inside:avoid}
.tco-count,.tco-aliases{color:var(--color-text-muted);font-size:.9rem}
.tco-next-steps{margin:1.5rem 0}
.tco-carebox ul{padding-left:1.1rem}
.tco-carebox li{margin:.5rem 0}
.tco-footer-tools ul{display:flex;flex-wrap:wrap;gap:.3rem 1rem;list-style:none;padding:0}
@media (prefers-reduced-motion:reduce){.tco-progress span{transition:none}}
