:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#17233d;background:#f3f6fc;font-size:16px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid #dce3ee;background:white;color:#273854;border-radius:10px;padding:11px 16px;font-weight:600;transition:.15s}button:hover{border-color:#2054df;background:#f1f5ff}button:focus-visible,a:focus-visible{outline:3px solid #f6aa38;outline-offset:3px}button.primary,.active{background:#2054df!important;color:white!important;border-color:#2054df!important}button:disabled{opacity:.5;cursor:not-allowed}header{min-height:84px;background:white;display:flex;align-items:center;padding:0 4%;gap:36px;border-bottom:1px solid #e3e9f2}.brand{font-size:27px;text-decoration:none;color:#2054df;display:flex;gap:10px;font-weight:700;letter-spacing:-1px}.brand span{color:#152e57}.light{font-weight:400}nav{display:flex;gap:6px;margin:auto}nav button{border:none;background:transparent}.avatar{background:#e4edff;color:#2054df;border-radius:50%;padding:12px 17px;font-weight:700}.demo{padding:10px 4%;background:#eaf0ff;color:#305289;font-size:12px;letter-spacing:1px;font-weight:700}.demo span{letter-spacing:0;font-weight:400;margin-left:14px;font-size:13px}main{max-width:1440px;margin:auto;padding:32px 4%}.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.between{justify-content:space-between}.eyebrow{color:#61738e;text-transform:uppercase;letter-spacing:1.5px;font-size:12px;font-weight:700}h1{font-size:30px;letter-spacing:-1px;margin:7px 0}h2{font-size:21px;margin:0 0 18px}h3{font-size:17px;margin:0 0 10px}p{line-height:1.6}.muted{color:#6c7b91}.badge{padding:7px 11px;background:#e6f4ef;color:#247157;font-size:13px;border-radius:6px}.grid{display:grid;grid-template-columns:1fr 310px;gap:24px;margin-top:25px}.card{background:white;border:1px solid #e1e7f0;border-radius:17px;padding:24px;margin-bottom:20px}.schedule{display:flex;gap:12px;overflow:auto;padding:4px 0 16px}.schedule button{min-width:130px;position:relative;padding:18px 12px;border-radius:14px;text-align:center}.schedule .emoji{font-size:37px;display:block;margin-bottom:10px}.schedule small{display:block;margin-top:7px;font-weight:400}.done{opacity:.6;background:#edf6f1}.now{border:2px solid #2054df!important;background:#edf2ff!important;color:#2054df}.task{min-height:380px;text-align:center;padding:32px;background:white;border:1px solid #e1e7f0;border-radius:17px}.choices{display:flex;justify-content:center;gap:20px;margin:35px 0}.choice{width:27%;max-width:190px;height:175px;background:#f7f9fe;border-radius:20px;font-size:75px;border:2px solid #e6ebf4}.cue{animation:shake .7s infinite;border-color:#f2b038;transform:scale(1.08);background:#fff7d9}.choice span{display:block;font-size:16px;margin-top:8px}.therapist{background:#172d52;color:white;border-radius:12px;padding:15px 18px;margin-top:18px}.therapist button{padding:8px 12px;font-size:14px}.therapist label{font-size:13px;color:#c8d5ef}.tokens{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.token{width:39px;height:39px;border:2px dashed #d6dfea;border-radius:50%;display:grid;place-items:center;color:#c5cdd9}.token.earned{background:#ffcd58;border:2px solid #ffcd58;color:#694900}.reward-icon{font-size:58px;margin:15px 0}.tiny{font-size:13px}.full{width:100%}.mand-buttons{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.mand-buttons button{flex:1;padding:13px 8px}.panel-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:25px}label.field{display:block;font-size:14px;margin:14px 0;color:#536580}input,select,textarea{display:block;width:100%;padding:11px;border:1px solid #d8e0ec;border-radius:8px;background:white;color:#17233d;margin-top:7px}input[type=checkbox]{width:18px;height:18px;display:inline;margin:0 8px 0 0;vertical-align:middle}.check{display:block;margin:14px 0}.formrow{display:grid;grid-template-columns:1fr 1fr;gap:18px}textarea{min-height:125px}.metric{font-size:35px;font-weight:700;margin:8px 0}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.chart{width:100%;height:230px}.barrow{display:grid;grid-template-columns:90px 1fr 48px;gap:12px;align-items:center;margin:14px 0}.bar{height:15px;background:#edf1f8;border-radius:20px;overflow:hidden}.bar i{display:block;height:100%;background:#2054df;border-radius:20px}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;padding:12px 8px;border-bottom:1px solid #ecf0f6}dialog{border:none;border-radius:20px;padding:28px;width:min(650px,94vw);max-height:88vh;box-shadow:0 20px 90px #14294640}dialog::backdrop{background:#0b1b3e80}.reward-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.reward-grid button{min-height:95px}.reward-grid b{display:block;font-size:33px;margin-bottom:7px}.reward-grid img,.reward-icon img{width:60px;height:60px;object-fit:contain}.timer{font-size:74px;font-weight:700;letter-spacing:-3px;color:#2054df;margin:25px}.empty{padding:30px;text-align:center;color:#6c7b91}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);padding:14px 22px;border-radius:10px;background:#172d52;color:white;display:none;z-index:20;max-width:90vw}.notice{padding:13px;background:#fff5d9;color:#75520c;border-radius:9px;font-size:14px}.good{color:#247157}.tablewrap{overflow:auto}@keyframes shake{0%,100%{translate:0}25%{translate:-5px}75%{translate:5px}}@media(max-width:900px){header{padding:15px;height:auto;flex-wrap:wrap;gap:12px}nav{order:3;width:100%;overflow:auto;justify-content:center}nav button{padding:10px;font-size:14px}.avatar{margin-left:auto}.grid,.panel-grid{grid-template-columns:1fr}.grid aside{display:grid;grid-template-columns:1fr 1fr;gap:15px}.choice{height:145px;font-size:60px}.demo span{display:block;margin:4px 0 0}.metrics{gap:10px}.card{padding:18px}main{padding:24px 4%}}@media(max-width:540px){.grid aside,.formrow{grid-template-columns:1fr}.choice{height:120px;font-size:45px}.choices{gap:10px}.task{padding:20px 12px;min-height:320px}.metrics{grid-template-columns:1fr}.reward-grid{grid-template-columns:1fr 1fr}h1{font-size:26px}}

.cue.shake-only{transform:none}.cue.enlarge-only{animation:none}
