
*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:#faf7ee;color:#203657;font:16px/1.65 system-ui,sans-serif}.shell{max-width:1000px;margin:auto;padding:24px}header{color:#781c40;font-weight:800;font-size:12px;letter-spacing:.08em}h1,h2{font-family:Georgia,serif;line-height:1.2}h1{font-size:clamp(28px,5vw,44px)}a{color:#153e8b}.links{display:flex;gap:12px;flex-wrap:wrap}.status{background:#edf2fd;padding:12px 16px;border-radius:10px;margin:16px 0;font-size:14px}.card,details{background:white;border:1px solid #dddfe6;padding:20px;border-radius:14px;margin:18px 0}summary{font-weight:800;cursor:pointer}button,input,textarea,select{font:inherit}input,textarea,select{max-width:100%;width:100%;padding:10px;border:1px solid #b9c3d5;border-radius:8px;margin:6px 0 12px}textarea{min-height:100px}button{background:#153e8b;color:#fff;border:0;border-radius:9px;padding:10px 16px;cursor:pointer;margin:4px 5px 4px 0;min-height:44px}button.secondary{background:#eef2fb;color:#153e8b}button:disabled{opacity:.5;cursor:default}button:focus-visible,input:focus-visible,a:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #c9962b;outline-offset:3px}blockquote{border-left:3px solid #e3c066;padding:12px 16px;background:#faf7ee;margin:14px 0}.goal{display:flex;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid #eee}.goal input{width:auto;margin:0}.goal span{flex:1}.small{font-size:13px;color:#586780}.score{color:#781c40;font-weight:800}.questions section{border-top:1px solid #dddfe6;padding:12px 0}.questions button{display:block;text-align:left;width:100%}.private-note{border-left:3px solid #781c40;padding-left:14px}footer{font-size:12px;margin-top:26px;color:#586780}.prompt{padding:10px;border:1px solid #e1c9d5;border-radius:8px}.prompt input{margin:5px 0}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.stat{background:#faf7ee;padding:12px;border-radius:8px}.stat b{display:block}@media(max-width:600px){.shell{padding:16px}.grid{grid-template-columns:1fr}.card,details{padding:16px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.offline-feature-eyebrow{color:#e7eafa}.offline-banner{padding:12px;background:#eef2fb;border-radius:10px;margin-top:16px}

