:root{
  --app-primary:#17324d;
  --app-secondary:#0e2235;
  --app-accent:#b5893e;
  --app-ink:#17202a;
  --app-muted:#6c7885;
  --app-bg:#f5f7f9;
  --app-card:#fff;
  --app-line:#e7ebef;
  --app-soft:#edf3f7;
  --app-green:#2c8068;
  --app-gold:#b5893e;
  --app-danger:#b94b55;
  --sidebar:276px;
}
*{box-sizing:border-box} body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--app-bg);color:var(--app-ink);margin:0}.min-w-0{min-width:0}.app-shell{min-height:100vh}.app-sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);padding:24px 18px;background:var(--app-card);border-right:1px solid var(--app-line);display:flex;flex-direction:column;z-index:1030}.app-main{margin-left:var(--sidebar);min-height:100vh}.app-content{max-width:1280px;padding:36px 38px 80px}.brand,.brand-mini{display:flex;align-items:center;gap:12px;color:var(--app-ink)}.brand{padding:0 8px 24px;border-bottom:1px solid var(--app-line);margin-bottom:18px}.brand strong{font-size:15px;line-height:1.1}.brand small{display:block;color:var(--app-muted);font-size:10px;margin-top:4px;line-height:1.25}.brand-mark{width:40px;height:40px;border-radius:13px;background:var(--app-primary);display:inline-grid;place-items:center;color:#fff;box-shadow:0 8px 20px rgba(23,50,77,.18);flex:0 0 auto}.brand-mark-lg{width:58px;height:58px;border-radius:18px;font-size:23px}.app-nav{gap:3px}.app-nav .nav-link{color:#64717e;border-radius:12px;padding:11px 12px;font-weight:600;font-size:14px;display:flex;align-items:center;gap:11px}.app-nav .nav-link i{font-size:18px;width:21px}.app-nav .nav-link:hover{background:#f5f7f9;color:var(--app-primary)}.app-nav .nav-link.active{background:color-mix(in srgb,var(--app-primary) 10%,#fff);color:var(--app-primary)}.nav-section{font-size:10px;font-weight:800;letter-spacing:.11em;color:#a2acb6;padding:18px 12px 6px;text-transform:uppercase}.sidebar-user{display:flex;align-items:center;gap:9px;padding:14px 8px 0;border-top:1px solid var(--app-line)}.sidebar-user strong{font-size:13px}.sidebar-user small{font-size:11px;color:var(--app-muted)}.avatar-circle{width:36px;height:36px;border-radius:50%;background:color-mix(in srgb,var(--app-primary) 11%,#fff);color:var(--app-primary);display:grid;place-items:center;font-weight:800;flex:0 0 auto}.avatar-lg{width:48px;height:48px;font-size:18px}.mobile-header{height:66px;background:var(--app-card);border-bottom:1px solid var(--app-line);padding:0 18px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:1020}.brand-mini strong{font-size:14px}.mobile-bottom-nav{position:fixed;z-index:1040;bottom:0;left:0;right:0;background:rgba(255,255,255,.96);backdrop-filter:blur(18px);border-top:1px solid var(--app-line);display:grid;grid-template-columns:repeat(5,1fr);padding:7px 4px calc(7px + env(safe-area-inset-bottom))}.mobile-bottom-nav a{text-decoration:none;color:#7b8793;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:10px;font-weight:700;padding:4px}.mobile-bottom-nav a i{font-size:20px}.mobile-bottom-nav a.active{color:var(--app-primary)}.page-heading{margin-bottom:28px}.page-heading .eyebrow,.eyebrow{font-size:10px;letter-spacing:.13em;font-weight:800;color:var(--app-primary);text-transform:uppercase}.page-heading h1{font-size:clamp(28px,3vw,42px);font-weight:800;letter-spacing:-.035em;margin:5px 0 7px}.page-heading p{color:var(--app-muted);max-width:720px;margin:0;font-size:15px}.streak-pill{background:var(--app-card);border:1px solid var(--app-line);border-radius:18px;padding:11px 16px;display:flex;align-items:center;gap:10px;box-shadow:0 8px 30px rgba(24,36,48,.04)}.streak-pill>span{font-size:25px}.streak-pill strong,.streak-pill small{display:block}.streak-pill strong{font-size:14px}.streak-pill small{color:var(--app-muted);font-size:10px}.app-card{--bs-card-bg:var(--app-card);--bs-card-color:var(--app-ink);border:1px solid var(--app-line);border-radius:22px;box-shadow:0 10px 34px rgba(30,48,65,.04);overflow:hidden}.verse-card{background:linear-gradient(140deg,var(--app-card) 45%,color-mix(in srgb,var(--app-bg) 72%,var(--app-card)))}.verse-card blockquote{font-family:Georgia,"Times New Roman",serif;font-size:clamp(23px,2.2vw,34px);line-height:1.27;margin:14px 0 16px;letter-spacing:-.02em}.verse-card strong{color:var(--app-accent);font-size:13px}.father-card{--bs-card-color:var(--app-on-primary,#fff);background:linear-gradient(145deg,var(--app-primary),var(--app-secondary));color:var(--app-on-primary,#fff);border:0;border-radius:22px}.father-card .card-body,.father-card .father-quote{color:var(--app-on-primary,#fff)!important}.father-card .eyebrow{color:color-mix(in srgb,var(--app-on-primary,#fff) 65%,transparent)!important}.father-quote{font-size:19px;line-height:1.55;margin:14px 0 22px;font-weight:500}.progress-score strong,.progress-score small{display:block}.progress-score strong{font-size:25px}.progress-score small{color:var(--app-muted);font-size:11px}.app-progress{height:7px;background:#edf0f2;border-radius:10px}.app-progress .progress-bar{background:var(--app-primary);border-radius:10px}.habit-grid{display:flex;flex-direction:column;gap:9px}.habit-row{display:flex;align-items:center;gap:13px;background:#fafbfc;border:1px solid var(--app-line);border-radius:16px;padding:13px 14px;transition:.2s ease}.habit-row.done{background:color-mix(in srgb,var(--app-green) 7%,#fff);border-color:color-mix(in srgb,var(--app-green) 18%,#fff)}.habit-icon{width:42px;height:42px;border-radius:13px;background:var(--app-card);border:1px solid var(--app-line);display:grid;place-items:center;color:var(--app-primary);font-size:18px;flex:0 0 auto}.habit-row strong,.habit-row small{display:block}.habit-row strong{font-size:14px}.habit-row small{font-size:11px;color:var(--app-muted);margin-top:2px}.habit-status{font-size:22px;color:#c8d0d8}.habit-row.done .habit-status{color:var(--app-green)}.quick-card{background:var(--app-card);border:1px solid var(--app-line);border-radius:20px;padding:22px;display:flex;align-items:center;gap:15px;color:var(--app-ink);transition:.2s ease;height:100%}.quick-card:hover{transform:translateY(-2px);box-shadow:0 12px 34px rgba(24,36,48,.07);border-color:#d9e0e6}.quick-card .quick-icon{width:48px;height:48px;border-radius:15px;background:var(--app-soft);color:var(--app-primary);display:grid;place-items:center;font-size:20px;flex:0 0 auto}.quick-card h4{font-size:17px;margin:3px 0}.quick-card p{margin:0;color:var(--app-muted);font-size:12px}.quick-card>i{margin-left:auto;color:#a0aab5}.btn-primary{--bs-btn-bg:var(--app-primary);--bs-btn-border-color:var(--app-primary);--bs-btn-hover-bg:color-mix(in srgb,var(--app-primary) 86%,#000);--bs-btn-hover-border-color:color-mix(in srgb,var(--app-primary) 86%,#000);border-radius:12px;font-weight:700}.btn-outline-primary{--bs-btn-color:var(--app-primary);--bs-btn-border-color:color-mix(in srgb,var(--app-primary) 30%,#fff);--bs-btn-hover-bg:var(--app-primary);--bs-btn-hover-border-color:var(--app-primary);border-radius:11px;font-weight:650}.btn-outline-secondary,.btn-light{border-radius:12px}.form-control,.form-select{border-color:#dfe5ea;border-radius:12px;padding:.75rem .85rem}.form-control:focus,.form-select:focus{border-color:color-mix(in srgb,var(--app-primary) 45%,#fff);box-shadow:0 0 0 .22rem color-mix(in srgb,var(--app-primary) 10%,transparent)}.form-label{font-size:12px;font-weight:700;color:#53606c}.badge-soft{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:var(--app-soft);color:var(--app-primary);font-size:11px;font-weight:700}.checkin-card{background:var(--app-card);border:1px solid var(--app-line);border-radius:20px;padding:18px;transition:.2s ease}.checkin-card.is-checked{border-color:color-mix(in srgb,var(--app-green) 35%,#fff);box-shadow:0 10px 30px color-mix(in srgb,var(--app-green) 8%,transparent)}.category-label{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--app-muted);font-weight:800}.checkin-card h4{font-size:17px}.check-switch input{display:none}.check-switch span{width:44px;height:44px;border:2px solid #d8e0e6;border-radius:50%;display:grid;place-items:center;color:transparent;font-size:21px;transition:.2s ease;cursor:pointer}.check-switch input:checked+span{background:var(--app-green);border-color:var(--app-green);color:#fff}.file-input{display:flex;align-items:center;gap:8px;cursor:pointer;white-space:nowrap;overflow:hidden;color:#6f7a85;font-size:12px}.file-input span{overflow:hidden;text-overflow:ellipsis}.file-input input{display:none}.sticky-save{display:flex;justify-content:flex-end}.metric-card{background:var(--app-card);border:1px solid var(--app-line);border-radius:20px;padding:22px;box-shadow:0 10px 30px rgba(30,48,65,.035);height:100%}.metric-card span,.metric-card small,.metric-card strong{display:block}.metric-card span{font-size:11px;color:var(--app-muted);font-weight:700}.metric-card strong{font-size:32px;letter-spacing:-.04em;margin:5px 0;color:var(--app-primary)}.metric-card small{font-size:11px;color:#98a1aa}.metric-card.compact{padding:17px}.metric-card.compact strong{font-size:27px}.progress-calendar{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:7px}.progress-day{aspect-ratio:1/1;border-radius:10px;background:#eef1f3;padding:6px;display:flex;flex-direction:column;justify-content:space-between;min-width:0}.progress-day.has-checkin{background:color-mix(in srgb,var(--app-primary) calc(var(--rate) * .7),#eef2f5);color:color-mix(in srgb,#fff var(--rate),var(--app-ink))}.progress-day span{font-size:9px;opacity:.8}.progress-day strong{font-size:11px}.mentee-card{display:block;background:var(--app-card);border:1px solid var(--app-line);border-radius:20px;padding:20px;color:var(--app-ink);height:100%;transition:.2s ease}.mentee-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(24,36,48,.07)}.mentee-card h4{font-size:17px}.mentee-stats{display:flex;justify-content:space-between;align-items:end;border-top:1px solid var(--app-line);padding-top:14px;margin-top:18px}.mentee-stats strong,.mentee-stats small{display:block}.mentee-stats strong{font-size:23px;color:var(--app-primary)}.mentee-stats small{font-size:10px;color:var(--app-muted)}.status-dot{font-size:10px;font-weight:800;display:inline-flex;align-items:center;gap:5px}.status-dot:before{content:"";width:7px;height:7px;border-radius:50%;background:#aab3bc}.status-dot.good{color:var(--app-green)}.status-dot.good:before{background:var(--app-green)}.status-dot.warn{color:#a9782b}.status-dot.warn:before{background:#d19a3d}.status-dot.danger{color:var(--app-danger)}.status-dot.danger:before{background:var(--app-danger)}.unread-badge{background:var(--app-primary);color:#fff;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:10px;font-weight:800}.conversation-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:20px;align-items:start}.chat-card{height:calc(100vh - 72px);min-height:600px;display:flex;flex-direction:column}.chat-header{padding:18px 20px;border-bottom:1px solid var(--app-line);display:flex;align-items:center;gap:12px}.chat-header h3{font-size:17px}.chat-messages{flex:1;overflow-y:auto;padding:22px;background:linear-gradient(#f9fafb,#f6f8f9);display:flex;flex-direction:column;gap:10px}.chat-empty{text-align:center;color:var(--app-muted);margin:auto}.chat-empty i{font-size:35px;color:#b8c2cb}.message-row{display:flex}.message-row.mine{justify-content:flex-end}.message-bubble{max-width:min(78%,620px);padding:10px 13px;border-radius:16px 16px 16px 5px;background:var(--app-card);border:1px solid var(--app-line);box-shadow:0 4px 16px rgba(24,36,48,.025)}.message-row.mine .message-bubble{background:var(--app-primary);color:#fff;border-color:var(--app-primary);border-radius:16px 16px 5px 16px}.message-bubble p{margin:0 0 4px;line-height:1.5;font-size:14px}.message-bubble small{display:block;font-size:9px;opacity:.65;text-align:right}.message-bubble a{color:inherit}.message-bubble audio{max-width:100%;height:36px}.attachment-link,.attachment-preview{display:flex;align-items:center;gap:8px;font-size:12px;text-decoration:none;padding:8px;border-radius:9px;background:rgba(255,255,255,.12);margin-bottom:5px}.message-row.theirs .attachment-link,.message-row.theirs .attachment-preview{background:#f3f5f7}.chat-compose{display:grid;grid-template-columns:auto 1fr auto;align-items:end;gap:8px;padding:13px;background:var(--app-card);border-top:1px solid var(--app-line)}.chat-compose textarea{resize:none;max-height:120px;border:1px solid var(--app-line);border-radius:16px;padding:10px 13px;outline:none;min-height:44px}.attach-button,.send-button{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;cursor:pointer}.attach-button{background:#f1f4f6;color:#607080}.attach-button input{display:none}.send-button{border:0;background:var(--app-primary);color:#fff}.mentor-summary{position:sticky;top:20px}.summary-number{font-size:44px;font-weight:800;color:var(--app-primary);letter-spacing:-.05em}.mini-stats{display:flex;gap:12px}.mini-stats span{background:#f6f8fa;border-radius:12px;padding:10px;font-size:10px;color:var(--app-muted);flex:1}.mini-stats strong{display:block;color:var(--app-ink);font-size:17px}.reflection-question{display:block;background:var(--app-card);border:1px solid var(--app-line);border-radius:20px;padding:20px;height:100%}.reflection-question>span{width:30px;height:30px;border-radius:10px;background:var(--app-soft);color:var(--app-primary);display:grid;place-items:center;font-size:10px;font-weight:800;margin-bottom:12px}.reflection-question>strong{display:block;font-size:17px;margin-bottom:14px}.reflection-question.featured{border-color:color-mix(in srgb,var(--app-primary) 25%,#fff);background:color-mix(in srgb,var(--app-primary) 3%,#fff)}.empty-state i{font-size:42px;color:#bbc4cc}.empty-state h3{font-size:19px;margin-top:12px}.empty-state p{color:var(--app-muted);font-size:13px}.admin-table th{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#84909a;font-weight:800;background:#fbfcfd;padding:13px 18px}.admin-table td{padding:14px 18px}.admin-table tbody tr:last-child td{border-bottom:0}.content-list{display:flex;flex-direction:column}.content-item{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid var(--app-line);padding:14px 0}.content-item:first-child{padding-top:0}.content-item:last-child{border:0;padding-bottom:0}.content-item p{font-size:12px;color:var(--app-muted);margin:4px 0}.content-item small{font-size:10px;color:#9aa3ab}.subform,.participants-box{background:#f8fafb;border:1px solid var(--app-line);border-radius:14px;padding:14px}.participant-list{max-height:220px;overflow-y:auto;display:flex;flex-direction:column;gap:5px}.participant-list label{display:flex;align-items:center;gap:9px;background:var(--app-card);border:1px solid var(--app-line);border-radius:10px;padding:8px 10px;cursor:pointer}.participant-list input{accent-color:var(--app-primary)}.participant-list span{font-size:12px;font-weight:650}.participant-list small{display:block;color:var(--app-muted);font-size:9px}.login-body{background:var(--app-card);min-height:100vh}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr}.login-story{background:linear-gradient(145deg,var(--app-primary),var(--app-secondary));padding:9vw;align-items:center;color:#fff;position:relative;overflow:hidden}.login-story:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;border:90px solid rgba(255,255,255,.035);right:-150px;bottom:-100px}.login-story-content{max-width:540px;position:relative;z-index:1}.login-story h1{font-size:clamp(45px,5vw,72px);font-weight:800;letter-spacing:-.05em;line-height:.98;margin:20px 0}.login-story p{font-size:18px;color:rgba(255,255,255,.7)}.login-story blockquote{margin-top:60px;font-family:Georgia,serif;font-size:20px;line-height:1.5;color:rgba(255,255,255,.9)}.login-form-wrap{display:flex;align-items:center;justify-content:center;padding:30px}.login-card{width:min(430px,100%)}.login-card h2{font-size:31px;font-weight:800;letter-spacing:-.035em;margin:5px 0}.login-card .form-control-lg{font-size:15px;padding:14px}.modal-content{border:0;border-radius:20px;box-shadow:0 25px 80px rgba(24,36,48,.2)}.modal-header,.modal-footer{border-color:var(--app-line)}.alert{border-radius:14px;border:0}

.brand-logo{display:block;object-fit:contain}.brand-logo-sidebar{max-width:150px;max-height:42px;object-position:left center;transition:max-width .2s ease,max-height .2s ease}.brand.brand-logo-only{gap:0;width:100%;min-height:88px;padding:0 0 18px;justify-content:center;align-items:stretch}.brand-logo-fill{display:flex;width:100%;max-width:none;height:70px;align-items:center;justify-content:center;overflow:hidden;flex:1 0 100%}.brand-logo-fill .brand-logo-sidebar.brand-logo-sidebar-expanded{display:block!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:contain;object-position:center center;flex:1 0 100%;align-self:stretch}.brand-mark.brand-mark-expanded{width:100%;height:60px;border-radius:15px;box-shadow:none}.brand-mark.brand-mark-expanded .brand-icon-image{width:auto;max-width:100%;height:48px;max-height:48px}.brand-logo-mobile{max-width:145px;max-height:35px;object-position:left center}.brand-copy{min-width:0}.brand-copy small{max-width:150px}.brand-icon-image{width:68%;height:68%;object-fit:contain;display:block}.login-brand-logo{display:block;max-width:min(360px,80%);max-height:120px;object-fit:contain;object-position:left center}.login-brand-logo-dark{max-width:220px;max-height:64px}.mobile-login-brand{min-height:42px}.settings-section-title{font-size:22px;font-weight:800;letter-spacing:-.02em;margin:4px 0}.settings-help{font-size:12px;color:var(--app-muted);line-height:1.45}.setting-toggle-card{display:flex;align-items:center;justify-content:space-between;gap:24px;border:1px solid var(--app-line);border-radius:16px;padding:15px 16px;background:color-mix(in srgb,var(--app-bg) 55%,var(--app-card))}.setting-toggle-card>div:first-child{min-width:0}.setting-toggle-card strong{display:block;font-size:13px;margin-bottom:3px}.setting-toggle-card .form-switch .form-check-input{width:2.7em;height:1.45em;margin:0;cursor:pointer}.setting-toggle-card .form-check-input:checked{background-color:var(--app-primary);border-color:var(--app-primary)}.color-setting{display:block;border:1px solid var(--app-line);border-radius:16px;padding:14px;background:var(--app-card);cursor:pointer}.color-setting-label{display:block;font-size:12px;font-weight:750;margin-bottom:10px}.color-setting-control{display:flex;align-items:center;gap:10px}.color-setting input[type=color]{width:44px;height:38px;border:0;padding:0;background:transparent;cursor:pointer}.color-setting code{font-size:12px;color:var(--app-ink);background:var(--app-bg);border-radius:8px;padding:7px 9px}.brand-upload-card{border:1px solid var(--app-line);border-radius:18px;padding:15px;background:var(--app-card)}.brand-preview{height:145px;border-radius:14px;display:flex;align-items:center;justify-content:center;padding:18px;overflow:hidden;border:1px solid var(--app-line)}.brand-preview-checker{background-color:#f7f8fa;background-image:linear-gradient(45deg,#e9edf1 25%,transparent 25%),linear-gradient(-45deg,#e9edf1 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#e9edf1 75%),linear-gradient(-45deg,transparent 75%,#e9edf1 75%);background-size:22px 22px;background-position:0 0,0 11px,11px -11px,-11px 0}.brand-preview-dark{background:linear-gradient(145deg,var(--app-primary),var(--app-secondary));border-color:transparent}.brand-preview-light{background:#fff}.brand-preview-icon{max-width:92px;max-height:92px;object-fit:contain}.brand-preview-wide{max-width:100%;max-height:82px;object-fit:contain}.brand-preview-empty{display:flex;flex-direction:column;align-items:center;gap:6px;color:#89949e;font-size:11px}.brand-preview-empty i{font-size:28px}.settings-save-bar{padding:14px 0 5px;background:linear-gradient(180deg,transparent,var(--app-bg) 35%)}
@media(max-width:1199.98px){.progress-calendar{grid-template-columns:repeat(6,minmax(0,1fr))}.conversation-layout{grid-template-columns:1fr}.mentor-summary{position:static;display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.mentor-summary .card{margin-bottom:0!important}.chat-card{height:70vh}}
@media(max-width:991.98px){.app-main{margin-left:0}.app-content{padding:24px 18px 100px}.page-heading{margin-bottom:22px}.login-shell{grid-template-columns:1fr}.login-form-wrap{min-height:100vh}.progress-calendar{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:575.98px){.app-content{padding-left:14px;padding-right:14px}.app-card,.father-card{border-radius:18px}.card-body.p-4{padding:18px!important}.card-body.p-lg-5{padding:20px!important}.page-heading h1{font-size:29px}.streak-pill{width:100%;justify-content:center}.habit-row{padding:11px}.habit-icon{width:38px;height:38px}.quick-card{padding:17px}.checkin-card{padding:14px}.checkin-card>.d-flex{gap:9px!important}.check-switch span{width:38px;height:38px}.checkin-details{margin-left:-49px;margin-top:10px}.sticky-save{position:sticky;bottom:78px;z-index:10}.sticky-save .btn{width:100%;box-shadow:0 12px 30px rgba(23,50,77,.25)}.progress-calendar{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.progress-day{border-radius:8px;padding:5px}.progress-day span{font-size:8px}.progress-day strong{font-size:9px}.conversation-layout{margin-left:-14px;margin-right:-14px}.chat-card{border-left:0;border-right:0;border-radius:0;height:calc(100vh - 144px);min-height:520px}.chat-messages{padding:14px}.message-bubble{max-width:88%}.mentor-summary{display:block;margin:0 14px}.mentor-summary .card{margin-bottom:14px!important}.admin-table{min-width:720px}.login-form-wrap{padding:24px}.mobile-bottom-nav span{max-width:58px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}

/* v0.2.4 — menu lateral adaptável à altura da tela */
@media (min-width: 992px){
  .app-sidebar{
    height:100vh;
    height:100dvh;
    overflow:hidden;
  }
  .app-sidebar>.brand{
    flex:0 0 auto;
  }
  .app-sidebar>.app-nav{
    flex:1 1 auto;
    min-height:0;
    overflow-y:auto;
    overflow-x:hidden;
    padding-right:5px;
    margin-right:-5px;
    overscroll-behavior:contain;
    scrollbar-width:thin;
    scrollbar-color:color-mix(in srgb,var(--app-primary) 22%,transparent) transparent;
  }
  .app-sidebar>.app-nav::-webkit-scrollbar{width:5px}
  .app-sidebar>.app-nav::-webkit-scrollbar-track{background:transparent}
  .app-sidebar>.app-nav::-webkit-scrollbar-thumb{
    background:color-mix(in srgb,var(--app-primary) 20%,transparent);
    border-radius:999px;
  }
  .app-sidebar>.sidebar-user{
    flex:0 0 auto;
    margin-top:12px!important;
    padding-top:12px;
    background:var(--app-card);
  }
}

@media (min-width: 992px) and (max-height: 820px){
  .app-sidebar{padding-top:16px;padding-bottom:16px}
  .brand{margin-bottom:10px;padding-bottom:14px}
  .brand.brand-logo-only{min-height:70px;padding-bottom:12px}
  .brand-logo-fill{height:56px}
  .app-nav .nav-link{padding-top:9px;padding-bottom:9px}
  .nav-section{padding-top:12px;padding-bottom:4px}
  .sidebar-user{padding-top:10px}
}


/* v0.2.5 — rolagem real do menu e contraste do card principal */
@media (min-width: 992px){
  .app-sidebar>.app-nav{
    flex-wrap:nowrap!important;
    align-content:flex-start;
    width:100%;
    scrollbar-gutter:stable;
  }
  .app-sidebar>.app-nav>.nav-link,
  .app-sidebar>.app-nav>.nav-section{
    flex:0 0 auto;
    width:100%;
  }
}

/* v0.2.6 — auto-cadastro de mentorados */
.auth-register-prompt{margin-top:24px;padding-top:20px;border-top:1px solid var(--app-line);display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap;font-size:13px;color:var(--app-muted)}
.auth-register-prompt a,.auth-login-prompt a,.auth-back-link{color:var(--app-primary);font-weight:750;text-decoration:none}
.auth-register-prompt a:hover,.auth-login-prompt a:hover,.auth-back-link:hover{text-decoration:underline}
.auth-login-prompt{text-align:center;margin-top:22px;font-size:13px;color:var(--app-muted)}
.auth-back-link{display:inline-flex;align-items:center;gap:7px;font-size:12px}
.auth-password-field{position:relative}
.auth-password-field .form-control{padding-right:48px}
.auth-password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:var(--app-muted);width:36px;height:36px;border-radius:10px;display:grid;place-items:center}
.auth-password-toggle:hover{background:var(--app-bg);color:var(--app-primary)}
.auth-honeypot{position:absolute!important;left:-99999px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
.setting-disabled{opacity:.55}
.register-form-wrap{padding-top:42px;padding-bottom:42px}
@media(max-width:575.98px){.register-form-wrap{align-items:flex-start;padding-top:28px;padding-bottom:34px}.register-form-wrap .login-card h2{font-size:28px}.auth-login-prompt{margin-top:18px}}

/* v0.2.7 — instalação PWA / adicionar à tela inicial */
.pwa-install-trigger{border:1px solid var(--app-line);background:var(--app-card);color:var(--app-primary);border-radius:12px;height:38px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:12px;font-weight:750;white-space:nowrap;box-shadow:0 4px 16px rgba(23,50,77,.05)}
.pwa-install-trigger:hover{background:var(--app-bg)}
.pwa-auth-install{margin-top:16px;display:flex;justify-content:center}
.pwa-auth-install .pwa-install-trigger{height:42px;padding:0 16px}
.pwa-install-banner{position:fixed;left:50%;bottom:88px;transform:translateX(-50%);z-index:1085;width:min(560px,calc(100% - 28px));display:flex;align-items:center;gap:11px;padding:11px 12px;background:var(--app-card);border:1px solid var(--app-line);border-radius:18px;box-shadow:0 18px 50px rgba(14,34,53,.18)}
.pwa-install-banner-icon{width:42px;height:42px;border-radius:13px;background:color-mix(in srgb,var(--app-primary) 10%,var(--app-card));color:var(--app-primary);display:grid;place-items:center;font-size:20px;flex:0 0 auto}
.pwa-install-banner-copy{min-width:0;flex:1;display:flex;flex-direction:column;line-height:1.25}
.pwa-install-banner-copy strong{font-size:13px}
.pwa-install-banner-copy small{font-size:11px;color:var(--app-muted);margin-top:3px}
.pwa-install-banner-close{border:0;background:transparent;color:var(--app-muted);font-size:22px;line-height:1;padding:4px;align-self:flex-start}
.pwa-install-sheet-backdrop{position:fixed;inset:0;z-index:2000;background:rgba(7,19,30,.46);display:flex;align-items:flex-end;justify-content:center;padding:14px;backdrop-filter:blur(4px)}
.pwa-install-sheet-backdrop[hidden]{display:none!important}
.pwa-install-sheet{position:relative;width:min(500px,100%);background:var(--app-card);color:var(--app-ink);border-radius:24px 24px 20px 20px;padding:14px 20px 22px;box-shadow:0 30px 80px rgba(7,19,30,.28)}
.pwa-install-sheet-handle{width:42px;height:4px;border-radius:99px;background:var(--app-line);margin:0 auto 15px}
.pwa-install-sheet-close{position:absolute;right:15px;top:15px;width:36px;height:36px;border:0;border-radius:50%;background:var(--app-bg);color:var(--app-muted);font-size:25px;line-height:1}
.pwa-install-sheet-icon{width:54px;height:54px;border-radius:17px;background:color-mix(in srgb,var(--app-primary) 11%,var(--app-card));color:var(--app-primary);display:grid;place-items:center;font-size:25px;margin-bottom:13px}
.pwa-install-sheet h3{font-size:23px;font-weight:800;letter-spacing:-.03em;margin:0 0 16px}
.pwa-install-instructions{display:flex;flex-direction:column;gap:10px}
.pwa-install-step{display:flex;align-items:flex-start;gap:11px;padding:11px 12px;background:var(--app-bg);border-radius:14px;font-size:13px;line-height:1.45}
.pwa-install-step>span{width:26px;height:26px;border-radius:50%;background:var(--app-primary);color:var(--app-on-primary,#fff);display:grid;place-items:center;font-size:11px;font-weight:800;flex:0 0 auto}
body.pwa-sheet-open{overflow:hidden}
@media(max-width:575.98px){.mobile-header .pwa-install-trigger span{display:none}.mobile-header .pwa-install-trigger{width:38px;padding:0}.pwa-install-banner{bottom:82px}.login-body .pwa-install-banner{bottom:16px}.pwa-install-sheet-backdrop{padding:0}.pwa-install-sheet{width:100%;border-radius:26px 26px 0 0;padding-bottom:max(24px,env(safe-area-inset-bottom))}}
@media(min-width:992px){.pwa-install-banner{display:none!important}}

/* V0.4.0 — contexto multi-programa */
.admin-program-switcher{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1rem;border:1px solid rgba(23,50,77,.10);border-radius:16px;background:var(--app-card);box-shadow:0 8px 24px rgba(24,39,55,.04)}
.admin-program-switcher>div{display:flex;flex-direction:column;min-width:0}.admin-program-switcher small{font-size:.68rem;font-weight:800;letter-spacing:.12em;color:var(--app-accent)}.admin-program-switcher strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-program-switcher form{min-width:min(360px,45vw)}
@media(max-width:767.98px){.admin-program-switcher{align-items:stretch;flex-direction:column}.admin-program-switcher form{min-width:0;width:100%}}
