:root{font-family:Arial,sans-serif;color:#173d35;background:#f7f5ee;font-synthesis:none;font-size:16px;line-height:1.55}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;background:#124e40;color:#fff;border:0;border-radius:7px;padding:12px 18px;min-height:46px;font-weight:600}button:hover{background:#0d3d32}button:disabled{opacity:.6;cursor:wait}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #b98530;outline-offset:3px}a{color:#124e40}h1,h2,summary{font-family:Georgia,serif;font-weight:400}h1{font-size:clamp(1.6rem,4vw,2.1rem);line-height:1.25}h2{font-size:1.4rem;margin:12px 0}p{margin:10px 0 16px}.app-shell{width:min(100% - 28px,740px);margin:24px auto 60px}header{text-align:center;padding:0 0 18px;border-bottom:1px solid #dacaa5;margin-bottom:26px}.brand-logo{width:190px;height:150px;object-fit:contain}.app-title{font-size:.8rem;letter-spacing:.22em;color:#826127;margin:10px 0 0}.welcome{max-width:440px;margin:40px auto;text-align:center}.welcome>button{width:100%}.quiet{background:transparent;color:#234d42;font-weight:400;text-decoration:underline;padding:8px;min-height:44px}.quiet:hover{background:#e9eee5}.panel{background:#fff;border:1px solid #e2e2d8;border-radius:12px;padding:24px}.accordion{margin:14px 0;border-radius:12px;background:#fff;box-shadow:0 3px 12px #263b2510;overflow:visible}.accordion>summary{display:flex;justify-content:space-between;align-items:center;gap:12px;list-style:none;cursor:pointer;background:#124e40;color:#fff;border-radius:10px;padding:16px 20px;font-size:1.55rem;min-height:64px}.accordion>summary::-webkit-details-marker{display:none}.accordion[open]>summary{border-radius:10px 10px 0 0}.chevron{font-family:Arial;font-size:2rem;line-height:1}.accordion[open]>summary .chevron{transform:rotate(90deg)}.accordion-content{padding:18px}.accordion-content>.accordion>summary{font-size:1.15rem}.line{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid #eee}.line>span,.line>strong{min-width:0;overflow-wrap:anywhere}.line button{flex-shrink:0}.appointment{position:relative;display:flex;gap:12px;align-items:center;background:#fff;border:1px solid #e1e4e1;border-radius:10px;padding:14px;margin:10px 0 18px}.appointment>div:nth-child(2){min-width:0;flex:1}.appointment p{margin:3px 0}.date-tile{width:55px;flex-shrink:0;text-align:center;background:#eef5fb;border-radius:6px;overflow:hidden}.date-tile span{display:block;background:#196bb7;color:#fff;font-size:.75rem;text-transform:uppercase}.date-tile strong{display:block;font-size:1.8rem;color:#173d35}.menu{align-self:flex-start}.menu>summary{font-family:Arial;font-size:1.1rem;cursor:pointer;list-style:none;padding:5px}.menu>div{position:absolute;right:10px;top:45px;background:#fff;box-shadow:0 5px 22px #0003;z-index:3;border-radius:8px;width:210px;padding:8px}.menu a,.menu button,.menu span{display:block;padding:10px;width:100%;text-align:left}.menu a{text-decoration:none}.menu button{margin:4px 0}label{display:block;margin:14px 0}input,textarea,select{display:block;width:100%;border:1px solid #b7c6ba;border-radius:6px;background:#fff;padding:12px;margin-top:6px;color:#173d35}textarea{resize:vertical}.check{display:flex;gap:10px;align-items:flex-start;font-size:.9rem}.check input{width:18px;flex-shrink:0}.small,small{font-size:.82rem;color:#53665f}.progress{font-weight:700}.error{background:#fff0ee;border:1px solid #d09388;padding:12px;border-radius:7px;color:#81291e;overflow-wrap:anywhere}.coach-photo{width:110px;height:110px;border-radius:8px;object-fit:cover}.package,.client-row,.plan{padding:16px 0;border-bottom:1px solid #e1e4db}.package:last-child,.plan:last-child{border:0}dl>div{display:flex;justify-content:space-between;gap:12px}dd{margin:0}.answer{border-bottom:1px solid #e8e8e0;padding:12px 0}.answer p,.messages p{white-space:pre-wrap;overflow-wrap:anywhere}footer{margin-top:28px;display:flex;gap:18px;align-items:center;justify-content:center;font-size:.85rem}.dashboard-label{color:#52665e}.modal-backdrop{position:fixed;inset:0;background:#1238;z-index:10;display:grid;place-items:center;padding:16px}.modal{width:min(100%,620px);max-height:90vh;overflow:auto;background:#fff;border-radius:12px;padding:22px}.messages{max-height:40vh;overflow:auto}.messages article{padding:10px;border-bottom:1px solid #ddd}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.task{padding:12px 0}form>button{margin-top:12px;width:100%}ol{padding-left:24px}li{padding:6px 0}.back{margin-bottom:12px}@media(max-width:480px){.app-shell{margin-top:12px}.brand-logo{width:150px;height:120px}.accordion>summary{font-size:1.35rem;padding:14px 16px}.accordion-content,.panel{padding:16px}.appointment{padding:10px;gap:8px;font-size:.85rem}.line{align-items:flex-start}.line button{padding:10px;font-size:.85rem}.date-tile{width:46px}.app-title{font-size:.68rem}.menu>div{width:185px}}
