:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#17211e;background:#f4f7f6;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}button,a{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #70bce8;outline-offset:3px}.app-shell{min-height:100vh;padding-bottom:92px}.header{height:76px;padding:0 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border-bottom:1px solid #dfe7e4}.brand{display:flex;align-items:center;gap:10px;color:#08785f;font-weight:900;text-decoration:none;font-size:1.15rem}.brand:first-letter{letter-spacing:-.08em}.demo-badge{max-width:175px;padding:7px 10px;border-radius:999px;color:#664800;background:#fff2c2;font-size:.72rem;font-weight:800;text-align:center}.main{width:min(100% - 32px,760px);margin:0 auto;padding:40px 0}.eyebrow{margin:0 0 8px;color:#08785f;font-weight:800;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}h1{margin:0;font-size:clamp(2rem,8vw,3.2rem);line-height:1.05;letter-spacing:-.04em}.intro{margin:14px 0 28px;color:#52615d;line-height:1.55}.hero-card,.session-card{border:1px solid #d9e4e0;border-radius:18px;background:#fff;box-shadow:0 8px 24px #17362d0f}.hero-card{padding:28px;background:linear-gradient(140deg,#fff 45%,#eaf8f4)}.hero-card h2,.session-card h2,.dialog h2{margin:14px 0 4px;font-size:1.45rem}.hero-card__duration{margin:0 0 18px;color:#08785f;font-size:2.1rem;font-weight:900}.hero-card>p:not(.hero-card__duration){color:#52615d;line-height:1.55}.tag{display:inline-block;padding:5px 10px;border-radius:999px;font-size:.76rem;font-weight:850}.tag--course{color:#075d4b;background:#d9f5ec}.tag--musculation{color:#174f77;background:#dfedf7}.tag--repos{color:#5a5361;background:#ece9ef}.button{min-height:48px;padding:12px 20px;border:0;border-radius:10px;color:#fff;background:#08785f;font-weight:800}.button:hover{background:#05634e}.button--secondary{color:#08785f;background:#edf8f5;white-space:nowrap}.notice{margin-top:20px;padding:16px 18px;border-left:4px solid #e3b432;border-radius:4px 12px 12px 4px;color:#554a2b;background:#fff9e8;line-height:1.5}.week-list,.history-list{display:grid;gap:12px}.session-card{padding:18px 20px}.day{margin:0 0 12px;color:#52615d;font-size:.85rem;font-weight:800;text-transform:uppercase}.session-card__content{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.session-card h2{font-size:1.1rem}.duration{margin:5px 0 0;color:#52615d}.filters{display:flex;gap:8px;overflow:hidden}.filter{min-height:44px;padding:8px 16px;border:1px solid #b7c8c2;border-radius:999px;color:#31413c;background:transparent;font-weight:750}.filter.active{border-color:#08785f;color:#fff;background:#08785f}.results{color:#52615d;font-size:.88rem}.navigation{position:fixed;z-index:5;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(3,1fr);padding:7px max(8px,env(safe-area-inset-right)) max(7px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));border-top:1px solid #d7e1de;background:#fffffff5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.nav-item{min-height:64px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:0;border-radius:10px;color:#5a6964;background:transparent;font-size:.75rem;font-weight:750}.nav-item span{font-size:1.2rem}.nav-item.active{color:#08785f;background:#edf8f5}.dialog{width:min(calc(100% - 32px),480px);padding:26px;border:0;border-radius:18px;color:#17211e;box-shadow:0 24px 80px #00000040}.dialog::backdrop{background:#0a1814a6}.dialog__duration{color:#52615d}.dialog .notice{margin-bottom:22px;font-size:.9rem}@media(max-width:520px){.brand span{display:none}.session-card__content{align-items:stretch;flex-direction:column}.button--secondary{width:100%}}@media(min-width:900px){.app-shell{padding:0 0 0 230px}.header{position:fixed;inset:0 auto 0 0;width:230px;height:auto;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:34px 24px}.demo-badge{margin-top:20px}.navigation{inset:145px auto auto 16px;width:198px;grid-template-columns:1fr;padding:0;border:0;background:transparent}.nav-item{min-height:54px;padding:0 16px;flex-direction:row;justify-content:flex-start;font-size:.9rem}.main{padding-top:72px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important}}
