@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{color-scheme:light;--bg: #f7f4ee;--surface: #ffffff;--surface-soft: #fbfaf7;--surface-tint: #eef8f6;--ink: #17201d;--muted: #63706b;--subtle: #8a9691;--line: #e5ded2;--line-strong: #d6ccbd;--brand: #0f766e;--brand-strong: #115e59;--brand-soft: #d8f3ed;--coral: #d95f45;--coral-soft: #fde7df;--gold: #b7791f;--gold-soft: #f8edcf;--green: #15803d;--green-soft: #ddf4e5;--red: #b42318;--red-soft: #fee4df;--blue: #2563eb;--blue-soft: #e3edff;--shadow: 0 18px 55px rgba(43, 34, 20, .09);--shadow-sm: 0 10px 30px rgba(43, 34, 20, .07);--radius: 8px;--radius-lg: 14px;--container: 1180px}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(180deg,#d8f3eda6,#f7f4ee00 360px),var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.62}h1,h2,h3,p{margin:0}.app-root,.min-h-screen{min-height:100vh}.container{width:min(var(--container),calc(100% - 40px));margin:0 auto}.auth-page{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr)}.auth-story{padding:56px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(135deg,#0f766ee0,#115e59f2),url(https://images.unsplash.com/photo-1522202176988-66273c2fd55f?auto=format&fit=crop&w=1600&q=80) center/cover;color:#fff}.auth-brand{display:inline-flex;align-items:center;gap:12px;font-size:1.05rem;font-weight:800}.brand-mark{width:42px;height:42px;border-radius:var(--radius);display:inline-flex;align-items:center;justify-content:center;background:var(--brand);color:#fff;box-shadow:0 10px 24px #0f766e40}.auth-story h1{max-width:720px;font-size:clamp(2.6rem,5vw,5.4rem);line-height:.96;letter-spacing:-.045em}.auth-story p{max-width:620px;margin-top:22px;color:#ffffffd6;font-size:1.1rem;line-height:1.75}.auth-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:620px}.auth-metric{padding:18px;border:1px solid rgba(255,255,255,.22);border-radius:var(--radius);background:#ffffff1a;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.auth-metric strong{display:block;font-size:1.35rem}.auth-metric span{display:block;margin-top:4px;color:#ffffffc7;font-size:.82rem}.auth-panel-wrap{display:grid;place-items:center;padding:32px}.auth-panel{width:min(100%,480px);padding:34px;border:1px solid var(--line);border-radius:var(--radius-lg);background:#ffffffe0;box-shadow:var(--shadow)}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--brand-strong);font-size:.77rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.page-title{margin-top:12px;font-size:clamp(2rem,4vw,3.35rem);line-height:1.02;letter-spacing:-.04em}.page-copy{margin-top:12px;color:var(--muted);line-height:1.7}.segmented{display:grid;grid-template-columns:repeat(2,1fr);gap:4px;padding:4px;margin:28px 0 24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft)}.segmented button{border:0;border-radius:6px;background:transparent;color:var(--muted);font-weight:800;padding:11px 14px}.segmented button.active{background:var(--ink);color:#fff}.form-grid{display:grid;gap:16px}.field{display:grid;gap:8px}.field label{color:var(--ink);font-size:.88rem;font-weight:700}.input,input,select,textarea{width:100%;min-height:44px;border:1px solid var(--line-strong);border-radius:var(--radius);background:#fff;color:var(--ink);padding:11px 13px;outline:none;transition:border-color .16s ease,box-shadow .16s ease}textarea{min-height:110px;resize:vertical}.input:focus,input:focus,select:focus,textarea:focus{border-color:var(--brand);box-shadow:0 0 0 4px #0f766e24}.role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.role-choice{display:flex;gap:12px;align-items:center;min-height:78px;padding:14px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--ink);text-align:left}.role-choice.active{border-color:var(--brand);background:var(--brand-soft)}.button-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.btn{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:var(--radius);padding:10px 15px;font-weight:800;line-height:1;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--brand);color:#fff;box-shadow:0 12px 24px #0f766e2e}.btn-primary:hover{background:var(--brand-strong)}.btn-secondary{background:var(--ink);color:#fff}.btn-ghost{border-color:var(--line);background:#fff;color:var(--ink)}.btn-danger{background:var(--red);color:#fff}.btn-sm{min-height:34px;padding:8px 11px;font-size:.86rem}.w-full{width:100%}.landing-page{min-height:100vh;background:var(--bg)}.landing-nav{position:fixed;top:0;left:50%;z-index:30;width:min(var(--container),calc(100% - 40px));min-height:76px;transform:translate(-50%);display:flex;align-items:center;justify-content:space-between;gap:18px;color:#fff}.landing-nav-actions{display:flex;align-items:center;gap:10px}.landing-nav-actions>a:not(.btn){color:#ffffffdb;font-size:.9rem;font-weight:800}.landing-hero{min-height:88vh;display:grid;align-items:end;padding:132px max(20px,calc((100vw - var(--container)) / 2)) 64px;background:linear-gradient(100deg,#17201de0,#0f766ec7 46%,#17201d2e),url(https://images.pexels.com/photos/6238012/pexels-photo-6238012.jpeg?auto=compress&cs=tinysrgb&w=1800) center/cover;color:#fff}.landing-hero-content{max-width:850px}.landing-hero .eyebrow,.landing-hero p{color:#ffffffdb}.landing-hero h1{margin-top:14px;max-width:920px;font-size:clamp(3.3rem,8vw,7.4rem);line-height:.91;letter-spacing:-.055em}.landing-hero p{max-width:710px;margin-top:24px;font-size:1.12rem;line-height:1.75}.landing-cta-row{margin-top:30px}.landing-band{width:min(var(--container),calc(100% - 40px));margin:0 auto;padding:76px 0}.landing-section-head{max-width:790px}.landing-section-head h2,.founder-copy h2,.landing-final h2{margin-top:12px;font-size:clamp(2rem,4vw,4rem);line-height:1;letter-spacing:-.045em}.landing-section-head p,.founder-copy p,.landing-final p{margin-top:16px;color:var(--muted);line-height:1.75}.mission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:32px}.mission-grid article{min-height:270px;padding:24px;border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow-sm)}.mission-grid h3{margin-top:20px;font-size:1.25rem}.mission-grid p{margin-top:10px;color:var(--muted);line-height:1.7}.landing-split{width:min(var(--container),calc(100% - 40px));margin:0 auto;display:grid;grid-template-columns:minmax(320px,.8fr) minmax(0,1fr);gap:28px;align-items:stretch;padding:28px 0 76px}.founder-portrait{position:relative;overflow:hidden;min-height:520px;display:flex;align-items:flex-end;padding:26px;border-radius:var(--radius-lg);background:var(--ink);color:#fff;box-shadow:var(--shadow)}.founder-portrait img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 24%}.founder-portrait:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#17201d00 28%,#17201dd6)}.founder-portrait-caption{position:relative;z-index:1}.founder-portrait span{display:block;color:#fffc;font-size:.82rem;font-weight:800;text-transform:uppercase}.founder-portrait strong{display:block;max-width:320px;margin-top:8px;font-size:2rem;line-height:1.05;letter-spacing:-.035em}.founder-copy{display:grid;align-content:center;padding:42px;border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow-sm)}.founder-copy a{color:var(--brand-strong);font-weight:900;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}.landing-final{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--line)}.landing-final>div:first-child{max-width:760px}.app-shell{min-height:100vh}.topbar{position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(229,222,210,.8);background:#f7f4eedb;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.topbar-inner{width:min(1320px,calc(100% - 40px));min-height:76px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand-link{display:inline-flex;align-items:center;gap:12px;font-weight:900;letter-spacing:-.02em}.nav-links{display:flex;align-items:center;gap:6px}.nav-link{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:9px 11px;border-radius:var(--radius);color:var(--muted);font-size:.9rem;font-weight:750;white-space:nowrap}.nav-link.active,.nav-link:hover{background:#fff;color:var(--brand-strong);box-shadow:var(--shadow-sm)}.topbar-actions{display:flex;align-items:center;gap:10px}.user-pill{display:flex;align-items:center;gap:10px;padding:7px 10px 7px 7px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.avatar{width:38px;height:38px;flex:0 0 auto;border-radius:var(--radius);display:inline-flex;align-items:center;justify-content:center;overflow:hidden;background:var(--brand-soft);color:var(--brand-strong);font-weight:900}.avatar img{width:100%;height:100%;object-fit:cover}.page{width:min(var(--container),calc(100% - 40px));margin:0 auto;padding:34px 0 56px}.hero-panel{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:24px;align-items:stretch;margin-bottom:24px}.profile-hero{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:18px;align-items:stretch;margin-top:18px}.profile-hero-main{min-width:0;display:flex;gap:20px;align-items:flex-start;padding:28px;border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow-sm)}.profile-hero-main h1{margin-top:10px;font-size:clamp(2.2rem,5vw,4.8rem);line-height:1;letter-spacing:-.055em}.profile-hero-main p{max-width:760px;margin-top:12px;color:var(--muted);line-height:1.7}.profile-action-panel{display:grid;align-content:start;gap:10px}.hero-card{position:relative;overflow:hidden;min-height:250px;padding:34px;border-radius:var(--radius-lg);background:linear-gradient(135deg,#17201dcc,#0f766ec7),url(https://images.unsplash.com/photo-1523240795612-9a054b0db644?auto=format&fit=crop&w=1400&q=80) center/cover;color:#fff;box-shadow:var(--shadow)}.hero-card .eyebrow,.hero-card p{color:#ffffffd1}.hero-card h1{margin-top:12px;max-width:760px;font-size:clamp(2.2rem,5vw,4.4rem);line-height:.98;letter-spacing:-.055em}.hero-card p{max-width:650px;margin-top:16px;line-height:1.7}.card{border:1px solid var(--line);border-radius:var(--radius-lg);background:#ffffffeb;box-shadow:var(--shadow-sm)}.card-pad{padding:22px}.section{margin-top:24px}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}.section-head.compact{margin-bottom:16px}.section-head h2{font-size:1.35rem;letter-spacing:-.025em}.section-head p{margin-top:5px;color:var(--muted)}.grid{display:grid;gap:16px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.stat{padding:20px}.stat-icon{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius);background:var(--brand-soft);color:var(--brand-strong)}.stat strong{display:block;margin-top:16px;font-size:2rem;letter-spacing:-.04em}.stat span{display:block;margin-top:3px;color:var(--muted);font-size:.9rem;font-weight:650}.list{display:grid;gap:12px}.list-item{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.item-main{display:flex;gap:13px;min-width:0}.item-main h3{font-size:1rem}.item-main p,.muted{color:var(--muted);line-height:1.55}.badge{display:inline-flex;align-items:center;gap:6px;min-height:26px;border-radius:999px;padding:5px 10px;background:var(--surface-soft);color:var(--muted);font-size:.78rem;font-weight:800;white-space:nowrap}.badge-primary{background:var(--brand-soft);color:var(--brand-strong)}.badge-success{background:var(--green-soft);color:var(--green)}.badge-warning{background:var(--gold-soft);color:var(--gold)}.badge-error{background:var(--red-soft);color:var(--red)}.badge-blue{background:var(--blue-soft);color:var(--blue)}.chip-row{display:flex;flex-wrap:wrap;gap:8px}.toolbar{display:grid;grid-template-columns:minmax(240px,1.2fr) repeat(3,minmax(150px,.6fr));gap:12px;padding:16px}.tutor-card{display:grid;gap:16px;padding:18px}.tutor-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.tutor-card h3{font-size:1.1rem;letter-spacing:-.02em}.admin-list{display:grid;gap:12px}.admin-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center}.admin-row h2{margin-top:12px;font-size:1.1rem}.admin-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.admin-waitlist-entry{display:grid;gap:18px;min-width:0}.waitlist-entry-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.waitlist-entry-head h2{margin-top:12px;font-size:1.2rem}.waitlist-date{white-space:nowrap}.waitlist-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--line)}.waitlist-details>div{padding:14px;background:var(--surface)}.waitlist-details span,.waitlist-match-person span,.waitlist-match-fit span{display:block;color:var(--muted);font-size:.78rem}.waitlist-details p{margin-top:5px;font-size:.9rem}.waitlist-workspace{display:grid;grid-template-columns:minmax(280px,1fr) auto;align-items:end;gap:16px;min-width:0}.waitlist-match-panel{border-top:1px solid var(--line);padding-top:16px;min-width:0}.waitlist-match-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.waitlist-match-heading>span{display:inline-flex;align-items:center;gap:7px;font-weight:800}.waitlist-match-heading small,.waitlist-match-person small{color:var(--muted)}.waitlist-match-row{display:grid;grid-template-columns:auto minmax(180px,1fr) minmax(140px,auto) auto;align-items:center;gap:14px;padding:13px 0;border-top:1px solid var(--line)}.waitlist-match-person,.waitlist-match-fit{min-width:0}.waitlist-match-person small{display:block;margin-top:4px}.waitlist-match-fit{text-align:right}.price{font-weight:900;color:var(--brand-strong)}.empty-state{padding:42px 22px;text-align:center}.empty-icon{width:52px;height:52px;margin:0 auto 16px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius);background:var(--brand-soft);color:var(--brand-strong)}.empty-state p{margin:8px auto 0;max-width:520px;color:var(--muted);line-height:1.65}.alert{display:flex;gap:10px;align-items:flex-start;padding:13px 14px;border-radius:var(--radius);border:1px solid var(--line);background:#fff;color:var(--muted)}.alert-error{border-color:#fecdc5;background:var(--red-soft);color:var(--red)}.loading-wrap{min-height:70vh;display:grid;place-items:center;text-align:center}.spinner{width:42px;height:42px;margin:0 auto 14px;border:4px solid var(--line);border-top-color:var(--brand);border-radius:50%;animation:spin .8s linear infinite}.message-layout{display:grid;grid-template-columns:330px minmax(0,1fr);height:calc(100vh - 160px);min-height:560px;overflow:hidden}.conversation-list{border-right:1px solid var(--line);overflow-y:auto;background:var(--surface-soft)}.conversation-search{position:sticky;top:0;z-index:2;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;padding:12px;border-bottom:1px solid var(--line);background:var(--surface-soft);color:var(--muted)}.conversation-search input{min-height:38px;padding:8px 10px}.conversation-search-empty{padding:24px 16px;color:var(--muted);font-size:.84rem;line-height:1.5;text-align:center}.conversation-button{width:100%;display:flex;align-items:flex-start;gap:12px;padding:15px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);text-align:left}.conversation-button.active{background:#fff}.thread{min-width:0;display:grid;grid-template-rows:auto 1fr auto}.thread-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px;border-bottom:1px solid var(--line);background:#fff}.message-scroll{display:flex;flex-direction:column;gap:10px;overflow-y:auto;padding:20px}.bubble{max-width:min(620px,78%);padding:12px 14px;border-radius:16px;background:#fff;border:1px solid var(--line)}.bubble.mine{align-self:flex-end;border-color:var(--brand);background:var(--brand);color:#fff}.bubble small{display:block;margin-top:6px;color:var(--subtle)}.bubble.mine small{color:#ffffffc2}.composer{display:flex;gap:10px;padding:16px;border-top:1px solid var(--line);background:#fff}.composer-wrap{border-top:1px solid var(--line);background:#fff}.composer-wrap .composer{border-top:0}.composer-error{margin:12px 16px 0;padding:9px 11px;border:1px solid #f1c7c0;border-radius:var(--radius);background:var(--red-soft);color:var(--red);font-size:.8rem;font-weight:700}.progress-page{display:grid;gap:20px;padding-top:30px;padding-bottom:64px}.progress-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:34px;border:1px solid #cbe7df;border-radius:var(--radius);background:#eaf6f2}.progress-hero h1{max-width:760px;margin-top:10px;font-size:clamp(2.1rem,4vw,3.75rem);line-height:1;letter-spacing:0}.progress-hero p{max-width:740px;margin-top:13px;color:var(--muted);line-height:1.65}.progress-student-picker{width:min(100%,260px);flex:0 0 260px}.progress-create-panel{border-color:#cbe7df}.progress-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.progress-overview>div{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:12px;padding:18px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.progress-overview .stat-icon{grid-row:span 2}.progress-overview strong{font-size:1.5rem;line-height:1}.progress-overview p{margin-top:4px;color:var(--muted);font-size:.8rem}.progress-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px}.progress-toolbar .segmented{width:min(100%,380px);grid-template-columns:repeat(3,1fr);margin:0}.progress-viewing{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:.84rem}.progress-viewing strong{color:var(--ink)}.progress-goal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.progress-goal-card{overflow:hidden;padding:22px;border-top:4px solid var(--brand)}.progress-goal-card.status-paused{border-top-color:var(--gold)}.progress-goal-card.status-completed{border-top-color:var(--green)}.progress-goal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.progress-goal-head h2{margin-top:10px;font-size:1.18rem;line-height:1.35}.progress-goal-description{margin-top:12px;color:var(--muted);font-size:.88rem;line-height:1.65}.progress-goal-meta{display:flex;flex-wrap:wrap;gap:12px 18px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line);color:var(--muted);font-size:.78rem}.progress-goal-meta span{display:inline-flex;align-items:center;gap:6px}.progress-goal-meter{margin-top:18px}.progress-goal-meter>div:first-child{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px;font-size:.82rem}.progress-goal-meter b{color:var(--brand-strong)}.progress-slider{margin-top:15px}.progress-slider input[type=range]{min-height:26px;padding:0;accent-color:var(--brand);box-shadow:none}.progress-milestones{margin-top:22px}.progress-milestones h3{margin-bottom:10px;font-size:.9rem}.progress-milestones>.muted{font-size:.8rem;line-height:1.5}.progress-milestone{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px 0;border-bottom:1px solid var(--line);font-size:.84rem}.progress-milestone>button{display:inline-flex;padding:0;border:0;background:transparent;color:var(--brand)}.progress-milestone>button:disabled{cursor:default}.progress-milestone.complete>span{color:var(--muted);text-decoration:line-through}.progress-milestone .progress-milestone-delete{color:var(--subtle)}.progress-milestone .progress-milestone-delete:hover{color:var(--red)}.progress-milestone-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:12px}.progress-milestone-form input{min-height:40px}.progress-goal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.modal-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:20px;background:#17201d7a}.modal{width:min(720px,100%);max-height:min(860px,calc(100vh - 40px));overflow:auto;background:#fff;border-radius:var(--radius-lg);box-shadow:0 30px 80px #00000040}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px;border-bottom:1px solid var(--line)}.modal-body{padding:20px}.tabs{display:flex;flex-wrap:wrap;gap:8px;padding:6px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft)}.tab{border:0;border-radius:6px;background:transparent;color:var(--muted);padding:9px 12px;font-weight:800}.tab.active{background:#fff;color:var(--brand-strong);box-shadow:var(--shadow-sm)}.profile-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:18px;align-items:start}.profile-sidebar{position:sticky;top:100px}.profile-photo-actions{display:flex;align-items:center;gap:8px;margin-top:16px}.profile-photo-actions .btn{flex:1}.application-photo-field{display:grid;grid-template-columns:92px minmax(0,1fr);gap:18px;align-items:center;padding:16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-tint)}.application-photo-preview{width:92px;height:92px;display:grid;place-items:center;overflow:hidden;border:1px solid #b9ded5;border-radius:var(--radius);background:#fff;color:var(--brand-strong)}.application-photo-preview img{width:100%;height:100%;object-fit:cover}.application-photo-field>div:last-child>label:first-child{display:block;font-size:.9rem;font-weight:800}.application-photo-field p{margin:6px 0 12px;color:var(--muted);font-size:.8rem;line-height:1.5}.admin-applicant{display:flex;align-items:center;gap:12px;margin-top:12px}.admin-applicant h2{margin-top:0}.progress{height:9px;overflow:hidden;border-radius:999px;background:var(--line)}.progress span{display:block;height:100%;border-radius:inherit;background:var(--brand)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.icon-button{width:38px;height:38px;flex:0 0 38px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--ink);transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.icon-button:hover{border-color:var(--brand);color:var(--brand-strong);transform:translateY(-1px)}.dashboard-page{display:grid;gap:22px;padding-top:28px}.dashboard-welcome{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(270px,.45fr);gap:34px;min-height:310px;padding:36px;border:1px solid var(--line);border-radius:var(--radius)}.dashboard-welcome-student{background:#eaf6f2;border-color:#cbe7df}.dashboard-welcome-tutor{background:#17201d;border-color:#17201d;color:#fff}.dashboard-welcome-tutor .eyebrow,.dashboard-welcome-tutor .dashboard-welcome-copy>p{color:#b9d9d1}.dashboard-welcome-copy{min-width:0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.dashboard-welcome-copy h1{max-width:760px;margin-top:12px;font-size:clamp(2.35rem,5vw,4.55rem);line-height:.98;letter-spacing:0}.dashboard-welcome-copy>p{max-width:680px;margin-top:15px;color:var(--muted);font-size:1rem;line-height:1.7}.dashboard-search{width:min(100%,720px);display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin-top:24px;padding:6px 6px 6px 15px;border:1px solid #badbd3;border-radius:var(--radius);background:#fff;box-shadow:var(--shadow-sm);color:var(--brand-strong)}.dashboard-search input{min-width:0;min-height:42px;padding:0;border:0;box-shadow:none}.dashboard-search input:focus{box-shadow:none}.dashboard-subject-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.dashboard-subject-links a,.dashboard-subject-links span{padding:6px 9px;border:1px solid rgba(15,118,110,.2);border-radius:999px;color:var(--brand-strong);font-size:.76rem;font-weight:800}.dashboard-welcome-tutor .dashboard-subject-links a,.dashboard-welcome-tutor .dashboard-subject-links span{border-color:#fff3;color:#d7eee8}.dashboard-welcome-actions{margin-top:24px}.dashboard-profile-panel{align-self:stretch;display:flex;flex-direction:column;justify-content:center;padding:22px;border:1px solid rgba(255,255,255,.72);border-radius:var(--radius);background:#ffffffe0;color:var(--ink);box-shadow:var(--shadow-sm)}.dashboard-profile-person{display:flex;align-items:center;gap:12px}.dashboard-profile-person strong,.dashboard-profile-person span{display:block}.dashboard-profile-person span{margin-top:3px;color:var(--muted);font-size:.82rem}.dashboard-progress-label{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:24px 0 8px;font-size:.82rem;font-weight:750}.dashboard-profile-panel>p{margin-top:12px;color:var(--muted);font-size:.82rem;line-height:1.55}.dashboard-text-link{display:inline-flex;align-items:center;gap:6px;margin-top:14px;color:var(--brand-strong);font-size:.84rem;font-weight:850}.dashboard-text-link:hover{text-decoration:underline;text-underline-offset:4px}.dashboard-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.dashboard-stat{min-width:0;display:flex;align-items:center;gap:14px;padding:17px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.dashboard-stat-icon{width:42px;height:42px;flex:0 0 42px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius);background:var(--brand-soft);color:var(--brand-strong)}.dashboard-tone-blue .dashboard-stat-icon{background:var(--blue-soft);color:var(--blue)}.dashboard-tone-gold .dashboard-stat-icon{background:var(--gold-soft);color:var(--gold)}.dashboard-tone-coral .dashboard-stat-icon{background:var(--coral-soft);color:var(--coral)}.dashboard-stat>div>strong,.dashboard-stat>div>span,.dashboard-stat>div>small{display:block}.dashboard-stat>div>strong{font-size:1.7rem;line-height:1}.dashboard-stat>div>span{margin-top:5px;color:var(--ink);font-size:.82rem;font-weight:750}.dashboard-stat>div>small{margin-top:3px;overflow:hidden;color:var(--muted);font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.dashboard-primary-grid,.dashboard-secondary-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.5fr);gap:18px;align-items:stretch}.dashboard-secondary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-section{min-width:0;padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:#fffffff0;box-shadow:0 8px 28px #2b22140e}.dashboard-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:17px}.dashboard-section-head .dashboard-text-link{flex:0 0 auto;margin-top:1px}.dashboard-section-head h2{font-size:1.12rem;letter-spacing:0}.dashboard-section-head p{margin-top:5px;color:var(--muted);font-size:.82rem;line-height:1.5}.dashboard-section .empty-state{padding:28px 18px;border:0;background:transparent;box-shadow:none}.dashboard-list{display:grid;gap:8px}.dashboard-session-row,.dashboard-person-row{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:13px;min-height:65px;padding:11px 12px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.dashboard-person-row{grid-template-columns:auto minmax(0,1fr) auto}.dashboard-session-row.is-next{border-color:#a9d6cc;background:#f2faf7}.dashboard-date-block{width:82px;display:grid;justify-items:center;gap:5px;color:var(--brand-strong);font-size:.7rem;font-weight:800;text-align:center}.dashboard-row-main{min-width:0}.dashboard-row-main strong,.dashboard-row-main span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-row-main strong{font-size:.9rem}.dashboard-row-main span{margin-top:4px;color:var(--muted);font-size:.76rem}.dashboard-time{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:.76rem;font-weight:750;white-space:nowrap}.dashboard-goals-panel{background:#fff8ea;border-color:#ead9ad}.dashboard-goal-block{display:flex;gap:12px;padding:14px 0;border-top:1px solid #eadfca}.dashboard-goal-icon{width:36px;height:36px;flex:0 0 36px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius);background:var(--gold-soft);color:var(--gold)}.dashboard-goal-block strong,.dashboard-goal-block p{display:block}.dashboard-goal-block strong{font-size:.86rem}.dashboard-goal-block p{margin-top:5px;color:var(--muted);font-size:.8rem;line-height:1.55}.dashboard-goals-panel>.btn{margin-top:14px}.dashboard-tutor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.dashboard-tutor{position:relative;min-width:0;display:grid;gap:14px;padding:16px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.dashboard-tutor-head{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px}.dashboard-tutor h3{overflow:hidden;font-size:.96rem;text-overflow:ellipsis;white-space:nowrap}.dashboard-tutor-head div>span{display:block;margin-top:3px;overflow:hidden;color:var(--muted);font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.dashboard-tutor>p{min-height:42px;color:var(--muted);font-size:.78rem;line-height:1.55}.dashboard-rating{display:inline-flex;align-items:center;gap:4px;color:var(--gold);font-size:.75rem;font-weight:850}.dashboard-tutor-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:12px;border-top:1px solid var(--line)}.dashboard-tutor-footer>strong{color:var(--brand-strong);font-size:.86rem}.dashboard-saved-label{position:absolute;top:-9px;right:12px;display:inline-flex;align-items:center;gap:4px;padding:4px 7px;border-radius:999px;background:var(--ink);color:#fff;font-size:.68rem;font-weight:800}.dashboard-action-list,.dashboard-checklist{display:grid;gap:8px}.dashboard-shortlist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.dashboard-shortlist>a{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:11px;padding:11px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.dashboard-shortlist strong,.dashboard-shortlist span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-shortlist strong{font-size:.84rem}.dashboard-shortlist span{margin-top:3px;color:var(--muted);font-size:.72rem}.dashboard-shortlist b{color:var(--brand-strong);font-size:.78rem;white-space:nowrap}.dashboard-action-list>a,.dashboard-checklist>div{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.dashboard-action-list>a>span,.dashboard-checklist>div>span{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius);background:var(--surface-tint);color:var(--brand-strong);font-size:.75rem;font-weight:850}.dashboard-action-list strong,.dashboard-action-list small,.dashboard-checklist strong,.dashboard-checklist small{display:block}.dashboard-action-list strong,.dashboard-checklist strong{font-size:.84rem}.dashboard-action-list small,.dashboard-checklist small{margin-top:3px;color:var(--muted);font-size:.72rem;line-height:1.4}.dashboard-checklist>div{grid-template-columns:auto minmax(0,1fr)}.dashboard-checklist>div.is-done>span{background:var(--green-soft);color:var(--green)}.dashboard-checklist+.btn{margin-top:14px}.dashboard-request-list,.dashboard-availability-list{display:grid;gap:8px}.dashboard-request{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.dashboard-request-copy{min-width:0}.dashboard-request-copy strong,.dashboard-request-copy span{display:block}.dashboard-request-copy strong{font-size:.88rem}.dashboard-request-copy span{margin-top:3px;color:var(--brand-strong);font-size:.72rem;font-weight:750}.dashboard-request-copy p{margin-top:6px;overflow:hidden;color:var(--muted);font-size:.74rem;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.dashboard-request-actions{display:flex;gap:6px}.dashboard-request-actions .is-accept{border-color:#b8dfc5;background:var(--green-soft);color:var(--green)}.dashboard-request-actions .is-decline{border-color:#f1c7c0;background:var(--red-soft);color:var(--red)}.dashboard-availability-panel{background:#eef4fb;border-color:#ccdaeb}.dashboard-availability-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border-radius:var(--radius);background:#fff}.dashboard-availability-list span{color:var(--muted);font-size:.78rem}.dashboard-availability-list strong{font-size:.8rem}.dashboard-availability-panel>.btn{margin-top:14px}.dashboard-availability-empty{display:grid;justify-items:center;padding:22px 12px;text-align:center}.dashboard-availability-empty>span{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius);background:var(--blue-soft);color:var(--blue)}.dashboard-availability-empty strong{margin-top:11px;font-size:.9rem}.dashboard-availability-empty p{max-width:270px;margin-top:6px;color:var(--muted);font-size:.76rem;line-height:1.5}.dashboard-notice{border-color:#b8dfc5;background:var(--green-soft);color:var(--green)}.dashboard-impact-band{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 22px;border:1px solid #cbe7df;border-radius:var(--radius);background:var(--surface-tint)}.dashboard-impact-band>div{display:flex;align-items:center;gap:12px}.dashboard-impact-band>div>span{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius);background:var(--brand);color:#fff}.dashboard-impact-band strong{display:block;font-size:.92rem}.dashboard-impact-band p{margin-top:3px;color:var(--muted);font-size:.76rem}.dashboard-impact-band .dashboard-text-link{margin-top:0}.public-flow-page,.donate-page,.public-profile-page{min-height:100vh;background:var(--bg)}.public-flow-nav{width:min(var(--container),calc(100% - 40px));min-height:78px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:18px}.public-flow-layout{width:min(var(--container),calc(100% - 40px));margin:10px auto 64px;display:grid;grid-template-columns:minmax(320px,.72fr) minmax(0,1fr);align-items:stretch;min-height:680px}.public-flow-story{padding:52px;display:flex;flex-direction:column;justify-content:flex-end;color:#fff;border-radius:var(--radius) 0 0 var(--radius);overflow:hidden}.tutor-application-story{background:linear-gradient(180deg,#17201d2e,#17201deb),url(https://images.unsplash.com/photo-1529390079861-591de354faf5?auto=format&fit=crop&w=1200&q=86) center/cover}.public-flow-story .eyebrow,.public-flow-story p{color:#ffffffd6}.public-flow-story h1{margin-top:16px;font-size:3.4rem;line-height:1;letter-spacing:-.04em}.public-flow-story>p{margin-top:20px;line-height:1.75}.trust-list{margin-top:32px;display:grid;gap:14px}.trust-list>div{display:flex;gap:12px;padding-top:14px;border-top:1px solid rgba(255,255,255,.22)}.trust-list span{display:grid;gap:4px}.trust-list small{color:#ffffffb8;line-height:1.5}.public-flow-form{padding:42px;border-radius:0 var(--radius) var(--radius) 0;box-shadow:var(--shadow)}.public-flow-form h2{margin-top:7px;font-size:1.75rem}.step-track{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:34px}.step-track span{display:grid;gap:7px;color:var(--subtle);font-size:.74rem;font-weight:700}.step-track b{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--line)}.step-track span.active{color:var(--brand-strong)}.step-track span.active b{border-color:var(--brand);background:var(--brand);color:#fff}.application-actions{justify-content:space-between;margin-top:10px}.public-flow-success{width:min(620px,calc(100% - 32px));margin:10vh auto;padding:54px;display:grid;justify-items:start;gap:18px}.public-flow-success h1{font-size:2.7rem;letter-spacing:-.04em}.public-flow-success p{color:var(--muted);line-height:1.7}.success-mark,.intake-empty-mark{width:62px;height:62px;display:grid;place-items:center;border-radius:var(--radius);background:var(--green-soft);color:var(--green)}.intake-empty-mark{background:var(--gold-soft);color:var(--gold)}.donate-hero{width:min(var(--container),calc(100% - 40px));margin:12px auto 64px;padding:64px;border-radius:var(--radius);background:var(--ink);color:#fff}.donate-hero>h1{max-width:820px;margin-top:14px;font-size:4.4rem;line-height:.98;letter-spacing:-.045em}.donate-hero>p{max-width:720px;margin-top:20px;color:#ffffffbf;font-size:1.08rem;line-height:1.75}.donate-hero .eyebrow{color:#90e0d3}.donate-options{width:min(var(--container),calc(100% - 40px));margin:-34px auto 54px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.donate-options article{padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow-sm)}.donate-options h2{margin-top:18px;font-size:1.18rem}.donate-options p{margin-top:8px;color:var(--muted);line-height:1.65}.donate-contact{width:min(var(--container),calc(100% - 40px));margin:0 auto 64px;display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1fr);gap:42px;align-items:start}.donate-contact>div{padding-top:28px}.donate-contact h2{margin-top:10px;font-size:2.4rem;letter-spacing:-.035em}.donate-contact>div>p{margin-top:16px;color:var(--muted);line-height:1.75}.impact-note{margin-top:22px;display:flex;gap:10px;align-items:center;color:var(--green);font-weight:700}.public-profile-page{padding-bottom:64px}.public-profile-hero{width:min(var(--container),calc(100% - 40px));margin:28px auto 0;padding:42px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:28px;align-items:center;border-radius:var(--radius);background:var(--ink);color:#fff}.public-profile-hero h1{margin-top:9px;font-size:3.9rem;line-height:1;letter-spacing:-.04em}.public-profile-hero h2{margin-top:10px;color:#9fe1d6;font-size:1.25rem}.public-profile-hero p{max-width:760px;margin:14px 0;color:#ffffffc2;line-height:1.7}.public-profile-hero .eyebrow{color:#9fe1d6}.public-profile-grid{width:min(var(--container),calc(100% - 40px));margin:18px auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.public-profile-grid article{border-radius:var(--radius)}.public-profile-grid article h2{margin-bottom:13px;font-size:1.16rem}.public-profile-grid article p{color:var(--muted);line-height:1.7}.public-profile-wide{grid-column:span 2}.public-review-section{width:min(var(--container),calc(100% - 40px));margin:54px auto 0}.public-review-section>div:first-child{margin-bottom:18px}.public-review-section h2{margin-top:8px;font-size:2rem}.public-review-section article p{margin:16px 0;line-height:1.7}.public-profile-cta{width:min(var(--container),calc(100% - 40px));margin:28px auto 0;padding:28px;display:flex;justify-content:space-between;align-items:center;gap:20px;border-radius:var(--radius);background:var(--brand-soft)}.public-profile-cta p{margin-top:7px;color:var(--muted)}.profile-headline{margin-top:8px;color:var(--brand-strong);font-size:1.1rem}.intake-page{display:grid;gap:18px;max-width:980px}.intake-head{display:flex;align-items:end;justify-content:space-between;gap:30px}.intake-head h1{margin-top:10px;font-size:3.5rem;line-height:1;letter-spacing:-.04em}.intake-head p{max-width:650px;margin-top:14px;color:var(--muted);line-height:1.7}.intake-progress{width:190px;flex:0 0 auto;display:grid;gap:10px}.intake-progress strong{font-size:.82rem}.intake-form,.intake-outcome{padding:34px;border-radius:var(--radius)}.intake-form h2,.intake-outcome h2{font-size:1.7rem}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.choice-grid button{min-height:48px;display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:9px;padding:11px 13px;border:1px solid var(--line-strong);border-radius:var(--radius);background:#fff;color:var(--ink);text-align:left;font-weight:700}.choice-grid button.active{border-color:var(--brand);background:var(--brand-soft);color:var(--brand-strong)}.choice-grid button>span:first-child{width:16px;height:16px;border:1px solid var(--line-strong);border-radius:50%}.intake-actions{justify-content:space-between;margin-top:26px}.waitlist-banner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:17px;border:1px solid #b8dfc5;border-radius:var(--radius);background:var(--green-soft);color:var(--green)}.waitlist-banner p{margin-top:3px;font-size:.86rem}.waitlist-banner-matched{border-color:var(--brand-line);background:var(--brand-soft);color:var(--brand-strong)}.intake-outcome{display:grid;justify-items:start;gap:16px}.intake-outcome>p{max-width:650px;color:var(--muted);line-height:1.7}.intake-matches{width:100%;display:grid;gap:9px}.intake-matches a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.intake-matches span{display:grid;gap:3px}.intake-matches small{color:var(--muted)}.profile-visibility-panel{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-tint)}.profile-visibility-panel>div{display:flex;gap:13px;align-items:flex-start}.profile-visibility-panel p{max-width:620px;margin-top:4px;color:var(--muted);font-size:.82rem;line-height:1.55}.switch{flex:0 0 auto}.switch input{position:absolute;opacity:0;pointer-events:none}.switch span{width:46px;height:26px;display:block;padding:3px;border-radius:999px;background:var(--line-strong);transition:background .16s ease}.switch span:after{content:"";width:20px;height:20px;display:block;border-radius:50%;background:#fff;box-shadow:0 2px 6px #0000002e;transition:transform .16s ease}.switch input:checked+span{background:var(--brand)}.switch input:checked+span:after{transform:translate(20px)}.switch input:focus-visible+span{box-shadow:0 0 0 4px #0f766e2e}.calendar-toolbar{display:grid;grid-template-columns:minmax(250px,1fr) 180px auto;gap:16px;align-items:end;padding:14px 16px}.calendar-navigation{display:flex;align-items:center;gap:13px;align-self:center}.calendar-navigation strong{min-width:170px;text-align:center;font-size:1.05rem}.calendar-view-toggle{margin:0;min-width:210px}.calendar-view-toggle button{display:inline-flex;align-items:center;justify-content:center;gap:7px}.calendar-shell{overflow:hidden;border-radius:var(--radius)}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));background:var(--ink);color:#fff}.calendar-weekdays span{padding:10px;text-align:center;font-size:.75rem;font-weight:800}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-day{min-height:132px;padding:9px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;overflow:hidden}.calendar-day:nth-child(7n){border-right:0}.calendar-day.outside{background:var(--surface-soft);color:var(--subtle)}.calendar-day-number{display:block;margin-bottom:7px;font-size:.78rem;font-weight:800}.calendar-events{display:grid;gap:5px}.calendar-event{width:100%;min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:5px;padding:6px;border:0;border-left:3px solid var(--brand);border-radius:4px;background:var(--brand-soft);color:var(--brand-strong);text-align:left;font-size:.68rem}.calendar-event span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-event.badge-success{border-left-color:var(--green);background:var(--green-soft);color:var(--green)}.calendar-event.badge-error{border-left-color:var(--red);background:var(--red-soft);color:var(--red)}.calendar-event.badge-warning{border-left-color:var(--gold);background:var(--gold-soft);color:var(--gold)}.calendar-more{border:0;background:transparent;color:var(--brand-strong);padding:3px;text-align:left;font-size:.7rem;font-weight:800}.session-outcome-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin-top:18px;padding:16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft)}.session-outcome-summary>div{display:grid;grid-template-columns:22px minmax(0,1fr);gap:9px;align-items:start}.session-outcome-summary svg{margin-top:2px;color:var(--brand)}.session-outcome-summary strong{display:block;margin-bottom:3px;font-size:.8rem}.session-outcome-summary p{margin:0;color:var(--muted);font-size:.87rem;line-height:1.5}.session-rating{display:flex;align-items:center;gap:4px;min-height:48px}.session-rating button{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:var(--radius);background:transparent;color:var(--line-strong)}.session-rating button:hover,.session-rating button:focus-visible{background:var(--gold-soft);color:var(--gold)}.session-rating button.active{color:var(--gold)}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1320px)and (min-width:981px){.topbar-inner{gap:12px}.nav-links{gap:3px}.nav-link{gap:6px;padding:9px 8px;font-size:.84rem}.topbar-actions{gap:6px}.topbar-actions .user-pill,.topbar-actions>.btn span{display:none}.topbar-actions>.btn{width:38px;flex:0 0 38px;padding:8px}}@media(max-width:980px){.auth-page,.landing-split,.hero-panel,.profile-hero,.profile-layout,.message-layout,.public-flow-layout,.donate-options,.donate-contact{grid-template-columns:1fr}.public-flow-story{min-height:500px;border-radius:var(--radius) var(--radius) 0 0}.public-flow-form{border-radius:0 0 var(--radius) var(--radius)}.calendar-toolbar{grid-template-columns:1fr 1fr}.calendar-view-toggle{grid-column:span 2}.calendar-day{min-height:105px}.landing-hero{min-height:82vh;padding-top:122px}.auth-story{min-height:48vh;padding:34px 24px}.auth-metrics,.mission-grid{grid-template-columns:1fr}.nav-links{order:3;width:100%;overflow-x:auto;padding-bottom:10px}.topbar-inner{flex-wrap:wrap;padding:12px 0 0}.toolbar,.admin-row,.waitlist-workspace,.grid-4,.grid-3,.grid-2,.waitlist-details{grid-template-columns:1fr}.waitlist-match-row{grid-template-columns:auto minmax(0,1fr)}.waitlist-match-heading{align-items:flex-start;flex-direction:column}.waitlist-match-fit{grid-column:2;text-align:left}.waitlist-match-row .btn{grid-column:2;justify-self:start}.conversation-list{border-right:0;border-bottom:1px solid var(--line);max-height:230px}.message-layout{height:auto}.thread{min-height:560px}.profile-sidebar{position:static}.dashboard-welcome,.dashboard-primary-grid,.dashboard-secondary-grid,.progress-goal-grid{grid-template-columns:1fr}.dashboard-stats,.dashboard-tutor-grid,.dashboard-shortlist{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-hero-main{flex-direction:column}.landing-final{align-items:flex-start;flex-direction:column}}@media(max-width:640px){.container,.page,.topbar-inner{width:min(100% - 28px,var(--container))}.auth-panel-wrap{padding:18px}.landing-nav{position:static;width:min(100% - 28px,var(--container));min-height:70px;margin:0 auto;transform:none;flex-direction:column;align-items:stretch;padding:14px 0;color:var(--ink)}.public-flow-nav,.public-flow-layout,.public-profile-hero,.public-profile-grid,.public-review-section,.public-profile-cta,.donate-hero,.donate-options,.donate-contact{width:min(100% - 28px,var(--container))}.public-flow-story{min-height:430px;padding:26px}.public-flow-story h1{font-size:2.6rem}.public-flow-form,.donate-hero{padding:24px}.donate-hero>h1{font-size:3rem}.public-profile-hero{grid-template-columns:1fr;padding:26px}.public-profile-hero h1{font-size:3rem}.public-profile-grid{grid-template-columns:1fr}.public-profile-wide{grid-column:auto}.public-profile-cta,.intake-head{align-items:flex-start;flex-direction:column}.intake-progress{width:100%}.intake-head h1{font-size:2.55rem}.choice-grid{grid-template-columns:1fr}.waitlist-banner{grid-template-columns:auto minmax(0,1fr)}.waitlist-banner .btn{grid-column:2;justify-self:start}.profile-visibility-panel{align-items:flex-start}.application-photo-field{grid-template-columns:72px minmax(0,1fr)}.application-photo-preview{width:72px;height:72px}.calendar-toolbar{grid-template-columns:1fr}.calendar-view-toggle{grid-column:auto}.calendar-shell{overflow-x:auto}.calendar-weekdays,.calendar-grid{min-width:720px}.landing-nav .brand-mark{box-shadow:none}.landing-nav-actions{justify-content:space-between;overflow-x:auto;padding-bottom:2px}.landing-nav-actions>a:not(.btn){color:var(--muted)}.landing-hero{min-height:auto;padding:56px 14px 48px}.landing-hero h1{font-size:clamp(2.7rem,18vw,4rem)}.landing-band,.landing-split{width:min(100% - 28px,var(--container));padding:52px 0}.founder-copy{padding:24px}.founder-portrait{min-height:390px}.auth-panel,.hero-card,.card-pad{padding:20px}.role-grid,.auth-metrics{grid-template-columns:1fr}.topbar-actions .user-pill{display:none}.section-head,.list-item,.tutor-card-head{align-items:stretch;flex-direction:column}.bubble{max-width:92%}.dashboard-page,.progress-page{gap:14px;padding-top:18px}.progress-hero,.progress-toolbar{align-items:stretch;flex-direction:column}.progress-hero{padding:22px}.progress-hero h1{font-size:2.35rem}.progress-student-picker{width:100%;flex-basis:auto}.progress-overview{grid-template-columns:1fr}.progress-toolbar .segmented{width:100%}.progress-goal-card{padding:18px}.progress-goal-actions{align-items:stretch;flex-direction:column}.progress-goal-actions .btn{width:100%}.dashboard-welcome,.dashboard-section{padding:18px}.dashboard-welcome-copy h1{font-size:2.25rem}.dashboard-search{grid-template-columns:auto minmax(0,1fr)}.dashboard-search .btn{grid-column:1 / -1;width:100%}.dashboard-stats,.dashboard-tutor-grid,.dashboard-shortlist{grid-template-columns:1fr}.dashboard-section-head,.dashboard-impact-band{align-items:flex-start;flex-direction:column}.dashboard-session-row{grid-template-columns:auto minmax(0,1fr)}.dashboard-session-row .dashboard-time,.dashboard-session-row .btn{grid-column:2;justify-self:start}.dashboard-request{grid-template-columns:auto minmax(0,1fr)}.dashboard-request-actions{grid-column:2}.dashboard-tutor>p{min-height:auto}}
