@import url('/base.css?v=20261008-rose');
body{background:var(--paper)}h1,h2,h3,p{margin-top:0}h1{font-size:36px;letter-spacing:-1.3px;line-height:1.15;margin-bottom:12px}h2{font-size:23px;line-height:1.25;letter-spacing:-.5px}h3{font-size:17px}p{line-height:1.65;color:var(--muted)}small{line-height:1.5}.eyebrow{font-size:10px;letter-spacing:.14em;font-weight:700;color:var(--muted);margin-bottom:15px}.app-shell{display:flex;min-height:100dvh}.sidebar{width:232px;flex-shrink:0;border-right:1px solid var(--line);padding:28px 20px;background:#fff;position:fixed;height:100dvh;display:flex;flex-direction:column;z-index:20}.brand img{width:128px;height:44px;object-fit:contain}.sidebar-caption{font-size:9px;color:var(--muted);letter-spacing:.14em;margin:36px 12px 15px}.sidebar nav{display:grid;gap:6px}.sidebar nav a{display:flex;align-items:center;gap:14px;font-size:13px;border-radius:10px;padding:13px}.sidebar nav a>span{font-size:22px;width:22px;text-align:center}.sidebar nav a.active{background:#FCE8E8;color:var(--navy);font-weight:700}.sidebar nav a:hover{background:var(--paper)}.sidebar-bottom{margin-top:auto;display:grid;grid-template-columns:42px 1fr;column-gap:12px;font-size:12px;align-items:center}.sidebar-bottom .avatar{grid-row:span 2}.sidebar-bottom small{font-size:10px;color:var(--muted)}.avatar{width:42px;height:42px;border-radius:50%;background:#F6D9D9;color:var(--navy);display:grid;place-items:center;font-size:16px;font-weight:700}.small-avatar{width:34px;height:34px;font-size:12px}.app-body{margin-left:232px;width:calc(100% - 232px)}.app-top{height:83px;display:flex;align-items:center;justify-content:space-between;padding:0 45px;border-bottom:1px solid var(--line);background:#ffffff90;gap:20px}.desktop-greeting{font-size:12px;color:var(--muted)}.top-actions{display:flex;gap:16px;align-items:center}.top-actions .pill{border:0;cursor:pointer}.icon-button{position:relative;display:grid;place-items:center;border:1px solid var(--line);background:transparent;width:36px;height:36px;border-radius:10px;font-size:21px;cursor:pointer;flex-shrink:0}.icon-button i{position:absolute;right:5px;top:5px;width:7px;height:7px;background:var(--coral);border-radius:50%}.mobile-logo{display:none}.demo-banner{padding:9px 45px;font-size:10px;background:#eeeae2;color:var(--muted)}#content{max-width:1230px;margin:auto;padding:38px 45px 65px}.page-title{margin-bottom:28px}.page-title>p:last-child{font-size:14px;max-width:640px}.bottom-nav{display:none}.white-card{background:white;border:1px solid var(--line);padding:26px;border-radius:16px;margin-bottom:20px}.white-card p{font-size:14px}.dashboard-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:22px}.focus-card{border-radius:18px;background:var(--navy);color:white;padding:34px;min-height:270px;display:flex;flex-direction:column;align-items:flex-start}.focus-card .eyebrow{color:#FFBCBC}.focus-card h2{font-size:31px;max-width:440px}.focus-card p{color:#c3d3dd;font-size:14px}.focus-card .button{margin-top:auto}.dashboard-grid .white-card{margin:0;position:relative}.dashboard-grid .white-card h2{margin-top:28px}.food-symbol{position:absolute;right:30px;top:34px;font-size:50px;color:var(--coral)}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0 34px}.quick-grid .button{font-size:12px;padding:14px 10px}.section-label{display:flex;gap:20px;align-items:center;justify-content:space-between;margin:26px 0 16px}.section-label h2{margin:0;font-size:21px}.section-label a{font-size:12px}.appointment{background:#fff;border:1px solid var(--line);padding:24px;border-radius:15px;display:flex;align-items:center;gap:20px;margin:14px 0}.calendar-date{background:#FCE8E8;border-radius:12px;min-width:62px;height:70px;display:flex;flex-direction:column;align-items:center;justify-content:center}.calendar-date strong{font-size:26px}.calendar-date span{font-size:11px;text-transform:uppercase}.appointment h3{margin:0 0 6px}.appointment p{font-size:12px;margin:0 0 10px}.appointment .text-link{font-size:12px}.appointment .icon-button{margin-left:auto}.coach-note{display:flex;gap:18px;margin-top:30px;padding:26px;background:#eaece6;border-radius:14px}.coach-note .avatar{flex-shrink:0}.coach-note strong{font-size:14px}.coach-note p{font-size:13px;margin:8px 0}.coach-note a{font-size:12px}.welcome-pending{background:var(--navy);color:white;padding:35px;border-radius:20px}.welcome-pending .pill{background:#ffffff15;color:#FFBCBC}.welcome-pending h2{font-size:34px;margin-top:25px}.welcome-pending p{color:#c4d1db;max-width:600px}.welcome-pending .button{color:white;border-color:#ffffff40}.pending-steps{display:flex;gap:28px;font-size:12px;margin:25px 0;color:#d6e0e8}.empty-state{text-align:center;background:white;border:1px dashed #c5ced2;border-radius:20px;padding:50px 25px}.empty-state p{max-width:460px;margin:0 auto 24px;font-size:14px}.empty-mark{font-size:55px;line-height:1;color:var(--navy);font-weight:800;margin-bottom:22px}.empty-mark span{color:var(--coral)}.session-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.session-card{background:white;border:1px solid var(--line);padding:26px;border-radius:18px;transition:transform .15s}.session-card:hover{transform:translateY(-3px);border-color:var(--coral)}.session-top{display:flex;justify-content:space-between;align-items:center}.session-number{font-size:58px;font-weight:700;letter-spacing:-4px;color:#e7ebe9;margin:24px 0 10px}.session-card h2{margin-bottom:12px}.session-card p,.session-card small{font-size:12px;color:var(--muted)}.back-link{display:inline-block;font-size:12px;margin-bottom:24px;color:var(--muted)}.exercise-card{padding:25px;background:white;border:1px solid var(--line);border-radius:16px;margin:22px 0}.exercise-header{display:flex;align-items:center;gap:16px}.exercise-header h2{margin-bottom:6px;font-size:21px}.exercise-header p{font-size:12px;margin:0}.exercise-header .button{margin-left:auto;font-size:11px}.exercise-num{background:#FCE8E8;padding:13px;border-radius:10px;font-weight:700;font-size:15px}.exercise-notes{background:var(--paper);padding:14px;border-radius:9px;font-size:13px;margin:20px 0}.set-head,.set-row{display:grid;grid-template-columns:.6fr 1fr 1fr .6fr;gap:16px;align-items:center;margin:12px 0}.set-head{font-size:10px;color:var(--muted);margin-top:24px}.set-row>span{font-size:13px}.set-row input{width:100%;padding:10px;min-width:0}.set-row input[type=checkbox]{width:22px;height:22px;accent-color:var(--coral)}.field{display:flex;flex-direction:column;gap:8px;font-size:13px;margin:18px 0;line-height:1.5;min-width:0}.field small{font-size:11px;color:var(--muted)}.field input,.field select,.field textarea{width:100%}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.form-grid.four-inputs{grid-template-columns:repeat(4,1fr)}.form-error{font-size:13px;color:#a53425;line-height:1.5}.form-error:empty{display:none}.form-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px;align-items:center}.form-narrow{max-width:760px}.check-field{display:flex;gap:12px;font-size:12px;line-height:1.7;margin:25px 0}.check-field input{width:20px;height:20px;flex-shrink:0}.onboarding-wrap{max-width:680px;margin:auto}.onboarding-wrap form{background:white;border:1px solid var(--line);border-radius:18px;padding:28px}.ob-top{display:flex;justify-content:space-between;font-size:12px}.progress-track{height:4px;background:#e1e5e1;margin:5px 0 32px;border-radius:4px}.progress-track i{display:block;background:var(--coral);height:100%;border-radius:4px}.onboarding-wrap h1{font-size:32px}.onboarding-wrap details{margin-top:25px}details summary{cursor:pointer;font-size:13px;font-weight:600;padding:12px 0}details p{font-size:13px}.food-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.meal-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.meal-card{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:white}.meal-art{height:130px;position:relative;display:flex;align-items:center;justify-content:center;background:#eee8cf}.meal-art>span{font-size:74px;color:#cdbd79;line-height:1}.meal-art small{position:absolute;right:16px;top:14px;font-size:11px}.tone-1{background:#dbe6d7}.tone-1>span{color:#7c9a6c}.tone-2{background:#f1ded4}.tone-2>span{color:#d2a087}.tone-3{background:#d9e3ed}.tone-3>span{color:#7090b1}.meal-info{padding:24px}.meal-info h2{font-size:22px}.ingredient-tags{display:flex;gap:7px;flex-wrap:wrap}.ingredient-tags span{background:var(--paper);padding:7px 9px;font-size:10px;border-radius:6px}.meal-info p{font-size:10px;margin:22px 0 0;display:flex;justify-content:space-between}.meal-info p>span{color:var(--navy);font-weight:600}.meal-detail{display:grid;grid-template-columns:.7fr 1.3fr;gap:28px}.plate-visual{background:#dbe6d7;border-radius:20px;padding:30px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:330px;text-align:center;max-height:420px}.plate-visual>span{font-size:145px;color:#7c9a6c;line-height:1}.plate-visual strong{font-size:24px;line-height:1.25;margin-top:25px}.plate-visual small{margin-top:20px;color:var(--muted)}.ingredients{background:white;border:1px solid var(--line);border-radius:18px;padding:26px}.ingredient-row{display:flex;gap:12px;align-items:center;padding:22px 0;border-top:1px solid var(--line)}.ingredient-dot{border-radius:50%;background:var(--paper);width:30px;height:30px;display:grid;place-items:center;font-size:11px;flex-shrink:0}.ingredient-row strong{font-size:15px}.ingredient-row small{display:block;font-size:11px;color:var(--muted);margin-top:5px}.ingredient-row b{margin-left:auto;font-size:13px;max-width:40%;text-align:right}.swap{background:#f7f5f0;border-radius:8px;margin:0 0 14px;padding:0 14px}.swap small{display:block;font-size:10px;padding-bottom:12px;color:var(--muted)}.swap p{font-size:13px;white-space:pre-line}.shopping-item{display:flex;gap:16px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line)}.shopping-item input{width:22px;height:22px;accent-color:var(--coral)}.shopping-item span{display:grid;gap:5px;font-size:14px}.shopping-item small{color:var(--muted);font-size:11px}.shopping-item b{margin-left:auto;font-size:12px;max-width:35%;text-align:right}.shopping-item:has(input:checked){opacity:.4;text-decoration:line-through}.calendar-banner{display:flex;align-items:center;gap:20px;background:#eaece6;padding:24px;border-radius:16px}.calendar-banner>span{font-size:40px}.calendar-banner h2{font-size:19px;margin:0 0 8px}.calendar-banner p{font-size:12px;margin:0}.calendar-banner .button{margin-left:auto}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:25px 0}.stats-grid>div{background:white;border:1px solid var(--line);padding:25px;border-radius:15px;display:grid;gap:10px}.stats-grid strong{font-size:40px;font-weight:600;letter-spacing:-2px}.stats-grid span{font-size:11px;color:var(--muted)}.history-row{display:flex;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid var(--line);align-items:center;font-size:13px}.history-row small{display:block;font-size:10px;color:var(--muted);margin-top:6px}.history-row.white-card{padding:20px}.muted-text{color:var(--muted);font-size:13px}.upload-card{text-align:center;background:#e9ece5;padding:35px 25px;border-radius:18px;margin-bottom:25px}.upload-card>span{font-size:55px;color:var(--navy)}.upload-card h2{margin-top:20px}.upload-card p{font-size:13px}.upload-card .form-actions{justify-content:center}.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}video{width:100%;max-height:370px;background:var(--navy);border-radius:12px}.progress-photo{width:100%;max-height:400px;object-fit:contain;border-radius:12px;background:var(--paper)}.video-grid h3{margin:18px 0 5px}.video-grid small{font-size:10px;color:var(--muted)}.feedback{margin-top:20px;padding:15px;background:var(--paper);border-radius:9px;font-size:12px}.feedback p{margin:8px 0 0;font-size:12px;white-space:pre-wrap}.feedback.ready{background:#e6eee7}.file-pick{display:grid;gap:20px;background:var(--paper);padding:25px;border:1px dashed #adbcc7;border-radius:14px}.file-pick input{border:0;padding:0;background:transparent;font-size:12px}.chat-window{background:white;border:1px solid var(--line);border-radius:18px;overflow:hidden}.chat-messages{min-height:320px;max-height:60dvh;overflow:auto;padding:26px;display:flex;flex-direction:column;gap:15px}.bubble{background:var(--paper);padding:17px 20px;border-radius:14px;max-width:85%;font-size:13px;align-self:flex-start;width:max-content}.bubble strong{font-size:10px;color:var(--muted)}.bubble p{color:var(--navy);margin:8px 0;white-space:pre-wrap;overflow-wrap:anywhere}.bubble small{font-size:9px;color:var(--muted)}.bubble.mine{background:#FCE8E8;align-self:flex-end}.empty-chat{font-size:14px;max-width:440px;margin:auto;text-align:center}.chat-compose{display:flex;gap:12px;padding:20px;border-top:1px solid var(--line);align-items:end}.chat-compose textarea{min-height:70px;max-height:150px}.chat-compose .form-error{display:none}.chat-compose .button{min-width:90px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.settings-grid .text-link{display:block;margin-top:20px;font-size:12px}.settings-grid .white-card{margin:0}.auth-layout{min-height:100dvh;display:grid;grid-template-columns:1fr 1fr}.auth-story{background:#eeeae2;padding:60px 12%;display:flex;flex-direction:column;align-items:start;justify-content:center}.auth-story img{width:140px;height:50px;object-fit:contain;margin-bottom:65px}.auth-story h1{font-size:clamp(44px,5vw,70px);letter-spacing:-3px}.auth-story em{font-style:normal;color:var(--coral)}.auth-story p{font-size:16px;max-width:300px;margin-top:25px}.auth-story>span{font-size:9px;letter-spacing:.15em;margin-top:60px}.auth-panel{padding:60px max(30px,12%);display:flex;flex-direction:column;justify-content:center}.auth-panel h2{font-size:31px}.auth-panel>p{font-size:14px}.auth-panel .button{width:100%}.auth-link{font-size:12px;margin-top:25px;text-align:center}.auth-panel hr{width:100%}.activation{max-width:520px;padding:30px 25px 60px;margin:auto}.activation .logo{width:130px;height:50px;object-fit:contain;margin-bottom:40px}.activation h1{font-size:38px}.activation p{font-size:13px}.pupil-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.pupil-card{background:white;border:1px solid var(--line);padding:25px;border-radius:15px}.pupil-card h2{font-size:21px;margin:22px 0 8px}.pupil-card p{font-size:11px;overflow-wrap:anywhere}.pupil-bottom{border-top:1px solid var(--line);margin-top:24px;padding-top:18px;display:flex;gap:12px;align-items:center;justify-content:space-between}.pupil-bottom span{font-size:10px;color:var(--muted)}.pupil-tools{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:28px}.pupil-tools .button{font-size:11px;padding:12px 14px}.pupil-tools .text-link{font-size:11px}.coach-columns{display:grid;grid-template-columns:1.2fr 1fr;gap:22px}.nutrition-highlight{background:#FFF0F0;padding:18px;border-radius:10px;font-size:12px}.nutrition-highlight p{margin:5px 0 0;font-size:12px}.answer-list{font-size:12px}.answer-list>div{border-top:1px solid var(--line);padding:13px 0}.answer-list dt{font-size:10px;color:var(--muted);margin-bottom:6px}.answer-list dd{margin:0;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.plan-line{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 0;border-bottom:1px solid var(--line);font-size:12px}.plan-line small{color:var(--muted)}.plan-line .text-link{font-size:11px}.coach-chat{display:flex;flex-direction:column;gap:14px;max-height:380px;overflow:auto}.coach-video{border-top:1px solid var(--line);padding-top:24px;margin-top:20px}.coach-video h3{margin-top:18px}.builder-exercise,.builder-ingredient{background:var(--paper);padding:18px;border-radius:12px;margin:20px 0}.builder-exercise .section-label,.builder-ingredient .section-label{margin:0;font-size:12px}.builder-current{margin-bottom:20px}.notification-item{display:grid;gap:8px;padding:20px 0;border-bottom:1px solid var(--line)}.notification-item strong{font-size:14px}.notification-item small{color:var(--muted);font-size:11px}.loading{padding:80px;text-align:center;font-size:14px}dialog{width:min(760px,calc(100% - 32px))}dialog h2{font-size:28px;margin:10px 0 20px}dialog p{font-size:14px}
@media(max-width:1100px){.sidebar{width:200px;padding:24px 16px}.app-body{margin-left:200px;width:calc(100% - 200px)}.app-top{padding:0 25px}#content{padding:30px 25px 60px}.demo-banner{padding-inline:25px}.pupil-grid{grid-template-columns:1fr 1fr}.coach-columns{grid-template-columns:1fr}.meal-detail{grid-template-columns:.7fr 1.3fr;gap:15px}.plate-visual{padding:20px}.dashboard-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){body{font-size:14px}.sidebar{display:none}.app-body{margin:0;width:100%}.app-top{height:68px;padding:0 20px;gap:12px}.desktop-greeting{display:none}.mobile-logo{display:block}.mobile-logo img{width:102px;height:35px;object-fit:contain}.top-actions{gap:10px}.top-actions .pill{font-size:9px;padding:7px 8px}.icon-button{width:31px;height:31px}.small-avatar{width:30px;height:30px}.demo-banner{font-size:9px;padding:8px 20px}#content{padding:28px 20px 110px}.page-title{margin-bottom:24px}h1{font-size:29px;letter-spacing:-1px}.page-title>p:last-child{font-size:13px}.eyebrow{font-size:9px}.bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;padding:10px 10px calc(12px + env(safe-area-inset-bottom));background:#fffffff5;backdrop-filter:blur(15px);border-top:1px solid var(--line);z-index:30;justify-content:space-around}.bottom-nav a{display:flex;align-items:center;flex-direction:column;gap:5px;font-size:9px;min-width:52px;border-radius:14px;padding:5px 8px}.bottom-nav a>span{font-size:23px;line-height:1}.bottom-nav .active{background:#F6D9D9}.dashboard-grid{grid-template-columns:1fr;gap:16px}.focus-card{min-height:240px;padding:25px}.focus-card h2{font-size:29px}.white-card{padding:22px}.dashboard-grid .white-card h2{margin-top:0}.dashboard-grid .white-card .eyebrow{margin-bottom:16px}.dashboard-grid .food-symbol{font-size:40px;top:20px;right:20px}.quick-grid{gap:7px}.quick-grid .button{font-size:10px;padding:12px 7px;min-height:52px}.section-label h2{font-size:19px}.section-label a{font-size:10px}.appointment{padding:18px;gap:13px}.appointment h3{font-size:14px}.appointment p{font-size:10px}.calendar-date{min-width:49px;height:62px}.calendar-date strong{font-size:24px}.appointment .icon-button{width:27px;height:27px}.coach-note{padding:20px}.session-grid{grid-template-columns:1fr}.session-card{padding:22px}.session-number{font-size:45px;margin:12px 0}.session-card h2{font-size:23px}.exercise-card{padding:18px}.exercise-header{flex-wrap:wrap;gap:12px}.exercise-header>div{flex:1}.exercise-header h2{font-size:19px}.exercise-header .button{margin:4px 0 0;width:100%}.set-head,.set-row{gap:10px}.set-row input{padding:10px 8px}.form-grid{gap:0 12px}.form-grid.four-inputs{grid-template-columns:1fr 1fr}.onboarding-wrap form{padding:20px}.onboarding-wrap h1{font-size:28px}.field{font-size:12px}.field input,.field select,.field textarea{font-size:16px}.field small{font-size:10px}.welcome-pending{padding:26px}.welcome-pending h2{font-size:28px}.welcome-pending p{font-size:13px}.pending-steps{flex-direction:column;gap:12px}.food-toolbar .button{font-size:10px}.meal-grid{grid-template-columns:1fr;gap:16px}.meal-card{display:grid;grid-template-columns:90px 1fr}.meal-art{height:100%;min-height:155px;flex-direction:column;justify-content:center}.meal-art>span{font-size:53px}.meal-art small{position:static;font-size:9px;margin-top:14px;padding:0 5px;text-align:center}.meal-info{padding:20px}.meal-info h2{font-size:20px;margin:7px 0 12px}.meal-info .eyebrow{margin-bottom:8px}.ingredient-tags{gap:5px}.ingredient-tags span{font-size:8px;padding:5px 6px}.meal-info p{font-size:9px;margin-top:18px}.meal-detail{grid-template-columns:1fr}.plate-visual{min-height:170px;max-height:none;flex-direction:row;gap:20px;flex-wrap:wrap;padding:22px}.plate-visual>span{font-size:85px}.plate-visual strong{font-size:22px;margin:0;text-align:left}.plate-visual small{width:100%;margin:0}.ingredients{padding:20px}.ingredients h2{font-size:22px}.ingredient-row{padding:20px 0}.ingredient-row b{font-size:12px}.ingredient-row strong{font-size:14px}.calendar-banner{flex-wrap:wrap;padding:20px}.calendar-banner .button{margin:0;width:100%}.stats-grid{gap:9px}.stats-grid>div{padding:17px 12px;gap:6px}.stats-grid strong{font-size:30px}.stats-grid span{font-size:9px}.video-grid,.settings-grid{grid-template-columns:1fr}.upload-card{padding:25px 20px}.upload-card .form-actions .button{width:100%}.chat-messages{padding:18px;max-height:55dvh;min-height:300px}.chat-compose{padding:14px;gap:9px}.chat-compose .button{padding:13px 12px;min-width:70px;font-size:12px}.bubble{max-width:93%;padding:15px}.chat-compose textarea{font-size:16px}.auth-layout{grid-template-columns:1fr}.auth-story{padding:30px 25px;background:var(--paper)}.auth-story img{width:115px;margin-bottom:25px}.auth-story h1{font-size:38px;letter-spacing:-1px}.auth-story h1 br:nth-child(2){display:none}.auth-story p,.auth-story>span{display:none}.auth-panel{padding:15px 25px 50px}.auth-panel .back-link{display:none}.auth-panel h2{font-size:27px}.auth-panel .eyebrow{display:none}.activation{padding-top:25px}.pupil-grid{grid-template-columns:1fr}.pupil-card{padding:22px}.pupil-card h2{margin-top:15px}.pupil-tools .button{flex:1;min-width:135px}.coach-columns{gap:0}.coach-columns .white-card{padding:20px}.plan-line{align-items:start;gap:10px}.plan-line>div{display:grid;gap:10px}.appointment .text-link{font-size:11px}.calendar-banner h2{font-size:18px}.loading{padding:50px 20px}#toast{bottom:95px}dialog{padding:25px 20px}.notice{font-size:11px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
/* Navegación completa y controles táctiles */
.more-button{display:flex;align-items:center;gap:7px;min-height:44px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:8px 12px;font-size:16px;cursor:pointer;color:var(--navy)}
.more-button span{font-size:12px;font-weight:600}.more-sections{display:grid;margin-bottom:22px}.more-sections a{display:flex;align-items:center;gap:14px;min-height:52px;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px}.more-sections a span:last-child{margin-left:auto}.more-sections a:hover{background:var(--paper)}
.sidebar{overflow-y:auto}.sidebar-bottom{padding-top:24px}.sidebar nav{gap:2px}.sidebar nav a{padding:10px}.chat-compose{display:grid;grid-template-columns:1fr auto}.chat-compose textarea{grid-column:1;grid-row:1}.chat-compose .button{grid-column:2;grid-row:1}.chat-compose .form-error:not(:empty){display:block;grid-column:1/-1;margin:0}
.pupil-tools .button,.text-link,.icon-button{min-height:44px}.icon-button{min-width:44px}.coach-columns section,[id^="pupil-"]{scroll-margin-top:20px}.white-card,.pupil-card,.appointment>div,.app-body{min-width:0}h1,h2,h3,p,.plan-line{overflow-wrap:anywhere}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--coral);outline-offset:3px}
@media(max-width:760px){.bottom-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px}.bottom-nav a{font-size:11px;min-height:48px;min-width:0;padding:6px 2px}.app-top{padding-inline:14px;gap:8px;height:auto;min-height:68px;flex-wrap:wrap}.top-actions{gap:7px;margin-left:auto;flex-wrap:wrap;justify-content:flex-end}.top-actions .pill{display:none}.demo-banner{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.demo-banner button{min-height:36px}.more-button{min-width:65px}.appointment{flex-wrap:wrap}.appointment>div:nth-child(2){flex:1;min-width:130px}.appointment .icon-button{width:44px;height:44px}.form-grid{grid-template-columns:1fr 1fr}.pupil-tools .button{min-height:48px}.plan-line{flex-wrap:wrap}.plan-line>div{display:flex;flex-wrap:wrap}.quick-grid{grid-template-columns:repeat(2,1fr)}.quick-grid a{font-size:12px}.section-label{flex-wrap:wrap}.white-card{padding:20px}.more-sections a{min-height:52px}dialog{max-height:calc(100dvh - 32px);overflow-y:auto}#content{padding-bottom:calc(110px + env(safe-area-inset-bottom))}}
@media(max-width:360px){#content{padding-inline:14px}.form-grid{grid-template-columns:1fr}.form-grid.four-inputs{grid-template-columns:1fr 1fr}.stats-grid>div{padding:14px 8px}.stats-grid span{font-size:10px}.mobile-logo img{width:90px}.meal-card{grid-template-columns:68px minmax(0,1fr)}.meal-info{padding:15px}}

[hidden]{display:none!important}
