:root{--brand:#0f766e;--hover:#115e59;--soft:#f0fdfa;--ink:#0f172a;--muted:#475569;--line:#e2e8f0;--canvas:#f8fafc}*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:"Noto Sans JP",-apple-system,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;line-height:1.75;background:white}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:default}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.035em;line-height:1.4}h2{font-size:26px;letter-spacing:-.025em}h3{font-size:18px}header{height:80px;max-width:1264px;margin:auto;padding:0 32px;display:flex;align-items:center;gap:28px;border-bottom:1px solid #f1f5f9}.logo{display:flex;align-items:center;gap:10px;font-size:25px;font-weight:750;letter-spacing:-1px}.mark{background:var(--brand);color:white;border-radius:12px;width:38px;height:38px;line-height:34px;text-align:center;font-size:24px;letter-spacing:-4px;padding-right:4px}.mark span{position:relative;top:3px}.beta{font-size:11px;background:var(--soft);color:var(--brand);padding:1px 7px;border-radius:5px;letter-spacing:0}header nav{display:flex;gap:28px;margin-left:auto;font-size:14px;font-weight:600}header nav button{border:0;background:none;color:var(--muted)}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:48px;border-radius:12px;padding:10px 22px;font-weight:650;border:1px solid transparent}.primary{background:var(--brand);color:white}.primary:hover{background:var(--hover)}.secondary{background:white;border-color:#64748b}.secondary:hover{background:var(--canvas)}.small{min-height:42px;font-size:14px}.eyebrow{font-size:12px;letter-spacing:.17em;font-weight:700;color:var(--brand);margin-bottom:22px}.hero{padding:76px 20px 62px;max-width:1000px;text-align:center;margin:auto}.hero h1{font-size:clamp(32px,4.5vw,54px);margin-bottom:24px}.hero h1 em{font-style:normal;color:var(--brand)}.hero>p{font-size:16px;color:var(--muted);line-height:1.9;margin-bottom:32px}.searchbox{display:flex;align-items:center;gap:12px;background:white;padding:8px;border:1px solid #94a3b8;border-radius:16px;box-shadow:0 6px 24px #0f172a08;max-width:720px;margin:auto}.searchbox .searchicon{font-size:28px;color:var(--brand);padding-left:16px}.searchbox input{width:100%;min-width:0;border:0;outline:none;font-size:16px;background:transparent}.searchbox:focus-within{outline:2px solid var(--brand);outline-offset:2px}.searchbox .primary{white-space:nowrap}.popular{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px;margin-top:18px;font-size:12px;color:var(--muted)}.chip{display:inline-block;padding:4px 11px;border:1px solid var(--line);border-radius:30px;background:white;font-size:13px;color:var(--muted)}a.chip:hover{border-color:var(--brand);color:var(--brand)}.container{max-width:1200px;padding:0 32px;margin:auto}.section{padding:58px 0}.section-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.section-head h2{margin-bottom:3px}.section-head p{font-size:14px;color:var(--muted);margin:0}.textlink{color:var(--brand);font-size:14px;font-weight:650}.soft-section{background:transparent;border:0}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.usecard{border:1px solid var(--line);border-radius:16px;padding:28px;background:white;display:block;transition:border-color .15s}.usecard:hover{border-color:var(--brand)}.useicon{background:var(--soft);color:var(--brand);display:flex;align-items:center;justify-content:center;width:44px;height:44px;font-size:22px;border-radius:12px;margin-bottom:22px}.usecard p{font-size:14px;color:var(--muted);margin-bottom:22px}.usecard .textlink{display:flex;justify-content:space-between}.person-mini{padding:24px;border:1px solid var(--line);border-radius:16px}.identity{display:flex;gap:16px;align-items:center;margin-bottom:18px}.avatar{width:56px;height:56px;flex-shrink:0;border-radius:50%;background:#e7efeb;color:#326254;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:600}.avatar.b{background:#eeedf9;color:#625590}.avatar.c{background:#fff0df;color:#926337}.identity h3{margin:0}.uni{font-size:13px;color:var(--muted);margin:2px 0 0}.tags{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:15px}.tag{font-size:12px;background:var(--soft);color:var(--brand);padding:4px 10px;border-radius:30px;font-weight:600}.person-mini>p{font-size:14px;color:var(--muted)}.cta{margin:14px auto 64px;background:var(--soft);border-radius:20px;padding:42px;display:flex;align-items:center;justify-content:space-between;gap:24px}.cta h2{margin:0 0 8px}.cta p{margin:0;color:var(--muted);font-size:14px}footer{max-width:1200px;margin:auto;border-top:1px solid var(--line);padding:28px 32px 40px;display:flex;align-items:center;gap:24px}footer .logo{font-size:20px}footer p{margin:0;font-size:12px;color:var(--muted)}footer>span{margin-left:auto;font-size:11px;color:var(--muted)}.bottom{display:none}.page{background:var(--canvas);min-height:70vh;padding:40px 0 60px}.page .searchbox{margin:0;max-width:none}.breadcrumb{font-size:13px;color:var(--muted);margin-bottom:24px}.titlebar{display:flex;align-items:end;justify-content:space-between;margin:32px 0 26px}.titlebar h1{font-size:28px;margin:0 0 4px}.titlebar p{margin:0;color:var(--muted);font-size:14px}.titlebar>span{font-size:12px;color:var(--muted)}.results-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:32px}.filters{background:white;border:1px solid var(--line);border-radius:16px;padding:22px;height:max-content}.filter-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.filter-head strong{font-size:16px}.reset{background:none;border:0;color:var(--brand);font-size:12px;padding:0}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:22px;font-size:14px}.field label{font-weight:650}.field select,.field input,textarea{border:1px solid #64748b;border-radius:9px;padding:10px;width:100%;color:var(--ink);background:white}.check{display:flex;gap:8px;align-items:center;font-size:14px}.check input{width:18px;height:18px;accent-color:var(--brand)}.results{display:flex;flex-direction:column;gap:16px}.student{background:white;border:1px solid var(--line);border-radius:16px;padding:24px;transition:border .15s}.student:hover{border-color:var(--brand)}.student .identity{margin-bottom:16px}.student>p{font-size:14px;color:var(--muted);margin-bottom:20px}.card-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid #f1f5f9;padding-top:16px}.methods{font-size:12px;color:var(--muted)}.empty{text-align:center;background:white;border:1px solid var(--line);padding:56px 20px;border-radius:16px}.filter-toggle{display:none}.profile-top{background:white;border:1px solid var(--line);padding:32px;border-radius:20px;margin-bottom:28px}.profile-top .avatar{width:80px;height:80px;font-size:25px}.profile-top h1{font-size:28px;margin:0}.profile-top>p{color:var(--muted);font-size:15px;max-width:760px}.profile-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:32px;align-items:start}.profile-section{background:white;border:1px solid var(--line);border-radius:16px;padding:28px;margin-bottom:20px}.profile-section h2{font-size:22px;margin-bottom:22px}.skill-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.skillcard{padding:20px;border:1px solid var(--line);border-radius:12px}.skillcard h3{margin-bottom:6px}.level{font-size:12px;color:var(--brand)}.skillcard p{font-size:14px;color:var(--muted);margin:12px 0 0}.experience{border-left:2px solid #99d3c6;padding-left:20px;margin-top:24px}.experience h3{margin-bottom:8px}.experience p{font-size:14px;color:var(--muted);margin:0}.contact-panel{position:sticky;top:24px;background:white;border:1px solid var(--line);border-radius:16px;padding:24px}.contact-panel .primary{width:100%;font-size:14px;margin-top:18px}.contact-panel h3{margin-bottom:14px}.contact-panel p{font-size:13px;color:var(--muted);margin:0 0 8px}.contact-panel small{display:block;font-size:11px;color:var(--muted);margin-top:14px}.demo-label{font-size:11px;color:var(--muted);display:inline-block;padding:3px 8px;background:#f1f5f9;border-radius:5px;margin-bottom:10px}.listing{padding:20px;background:var(--canvas);border-radius:12px}.listing h3{margin-bottom:8px}.listing p{font-size:14px;color:var(--muted);margin-bottom:8px}.listing-price{font-size:18px;font-weight:650}.mobile-contact{display:none}dialog{border:1px solid var(--line);border-radius:20px;padding:36px;max-width:500px;width:calc(100% - 32px);color:var(--ink)}dialog::backdrop{background:#0f172a55}.close{position:absolute;right:14px;top:10px;font-size:26px;border:0;background:none;color:var(--muted);width:36px;height:36px}dialog h2{font-size:23px;margin-right:20px}dialog p{font-size:14px;color:var(--muted)}dialog textarea{min-height:130px;resize:vertical;margin:10px 0 16px;font-size:16px}dialog .primary{width:100%}.notice{font-size:13px;padding:14px;background:var(--soft);border-radius:10px;color:var(--brand)}:focus-visible{outline:2px solid var(--brand);outline-offset:3px}.muted{color:var(--muted);font-size:12px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(max-width:1023px){.results-layout{grid-template-columns:1fr}.filters{display:none}.filter-toggle{display:inline-flex}.grid3{gap:12px}.usecard,.person-mini{padding:20px}.profile-layout{grid-template-columns:minmax(0,1fr) 250px}.container{padding:0 24px}}@media(max-width:700px){header{padding:0 16px;height:64px}header nav{display:none}header>.secondary{margin-left:auto}.hero{padding:48px 16px 42px;text-align:left}.hero h1{font-size:32px}.hero>p{font-size:14px}.searchbox{gap:4px;flex-wrap:wrap;padding:8px}.searchbox input{width:calc(100% - 46px);flex:1}.searchbox .searchicon{padding-left:8px}.hero .searchbox .primary{width:100%;margin-top:5px}.popular{justify-content:flex-start}.container{padding:0 16px}.section{padding:36px 0}.section-head{align-items:start}.section-head h2,h2{font-size:22px}.section-head p{font-size:12px}.grid3{grid-template-columns:1fr}.usecard{padding:22px}.useicon{margin-bottom:16px}.usecard p{margin-bottom:16px}.cta{margin-bottom:32px;padding:28px;flex-direction:column;align-items:start}.cta h2{font-size:22px}footer{padding:24px 16px 100px;flex-wrap:wrap;gap:10px}footer>span{margin-left:0;width:100%}.bottom{display:flex;position:fixed;bottom:0;left:0;right:0;background:white;border-top:1px solid var(--line);height:calc(64px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);z-index:10;justify-content:space-around}.bottom a,.bottom button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;font-size:22px;color:var(--muted);width:33%;border:0;background:none}.bottom span{font-size:10px}.page{padding:24px 0 36px}.titlebar{align-items:start;gap:10px}.titlebar h1{font-size:23px}.titlebar>span{display:none}.student{padding:20px}.card-bottom{align-items:start;flex-direction:column}.profile-top{padding:24px}.profile-top .identity{align-items:start}.profile-top .avatar{width:64px;height:64px;font-size:20px}.profile-top h1{font-size:24px}.profile-layout{display:block}.contact-panel{display:none}.skill-grid{grid-template-columns:1fr}.profile-section{padding:22px}.mobile-contact{display:block;position:fixed;bottom:calc(64px + env(safe-area-inset-bottom));left:0;right:0;background:white;padding:10px 16px;border-top:1px solid var(--line);z-index:10}.mobile-contact .primary{width:100%}.profile-page{padding-bottom:100px}.page .searchbox .primary{padding:8px 14px}.page .searchbox input{font-size:16px}dialog{padding:30px 24px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.primary,.secondary,.filter-toggle,.start-button{white-space:nowrap;flex-shrink:0}header .logo{flex-shrink:0}.avatar{object-fit:cover}textarea{white-space:pre-wrap}.account-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.editor{max-width:800px}.editor>h1{font-size:30px}.photo-editor{display:flex;gap:22px;align-items:center}.photo-editor .avatar{width:96px;height:96px}.photo-editor label{cursor:pointer}.photo-editor .reset{display:block;margin-top:12px}.editor textarea{min-height:120px}.conversation-row{display:flex;gap:18px;border:1px solid var(--line);border-radius:16px;padding:22px;margin-top:14px;align-items:center;background:white}.conversation-row>div{min-width:0;flex:1}.conversation-row h3{margin:0}.conversation-row p{font-size:14px;margin:2px 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-row time{font-size:12px;color:var(--muted)}.chat{max-width:900px}.chat-shell{border:1px solid var(--line);border-radius:16px;background:white;padding:24px}.chat-shell h1{font-size:23px;margin:0}.chat-shell .notice{margin:16px 0}.chat-messages{height:45vh;min-height:220px;overflow:auto;padding:12px 2px}.bubble-wrap{display:flex;flex-direction:column;align-items:flex-start;margin-bottom:20px}.bubble-wrap.mine{align-items:flex-end}.bubble{background:var(--canvas);padding:12px 16px;border-radius:16px;max-width:85%;white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px}.mine .bubble{background:var(--brand);color:white}.bubble-wrap time{font-size:10px;color:var(--muted);margin-top:4px}#chat-form{display:flex;gap:12px;align-items:end}#chat-form textarea{margin:0;min-height:70px;max-height:160px;font-size:16px}.bottom a,.bottom button{width:25%}#chat-status{min-height:24px}button:disabled{opacity:.6}.profile-top p,.experience p{white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:700px){.chat-shell{padding:16px}#chat-form{gap:8px}#chat-form .primary{padding:10px 14px}.conversation-row{padding:16px;gap:12px}.conversation-row time{display:none}.photo-editor{align-items:start}.photo-editor .avatar{width:72px;height:72px}}
.relation-field{margin:24px 0}.relation-field h3{margin-bottom:6px}.relation-groups{display:grid;grid-template-columns:1fr 1fr;gap:16px}.relation-groups fieldset{margin:0;min-width:0;border:1px solid var(--line);border-radius:12px;padding:16px}.relation-groups legend{font-weight:650;font-size:14px;padding:0 6px}.relation-choice{display:flex;gap:12px;padding:12px 8px;align-items:flex-start;border-radius:10px;cursor:pointer}.relation-choice:hover,.relation-choice:has(input:checked){background:var(--soft)}.relation-choice input{width:18px;height:18px;margin-top:5px;accent-color:var(--brand);flex-shrink:0}.relation-choice strong{display:block;font-size:15px}.relation-choice small{display:block;font-size:12px;color:var(--muted);line-height:1.6}@media(max-width:700px){.relation-groups{grid-template-columns:1fr}}
.field-error{color:#b91c1c!important;font-size:13px;margin:6px 0 12px;line-height:1.6}[aria-invalid="true"]{border-color:#b91c1c!important;outline-color:#b91c1c!important;background-color:#fff5f5!important}.category-field{border:0;padding:0;margin:24px 0}.category-field legend{font-size:15px;font-weight:650;margin-bottom:12px}.category-options{display:flex;flex-wrap:wrap;gap:10px}.category-choice{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:10px;padding:10px 12px;font-size:14px;cursor:pointer}.category-choice:has(input:checked){background:var(--soft);border-color:var(--brand);color:var(--brand)}.category-choice input{accent-color:var(--brand);width:17px;height:17px}.other-category{margin-top:18px}[hidden]{display:none!important}
.dm-page{max-width:1200px;margin:0 auto;padding:24px 32px}.dm-layout{display:grid;grid-template-columns:330px minmax(0,1fr);height:calc(100dvh - 140px);min-height:500px;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:white}.dm-sidebar{border-right:1px solid var(--line);overflow:auto}.dm-sidebar-head{padding:24px 22px 16px;display:flex;justify-content:space-between;align-items:center;gap:16px}.dm-sidebar-head h1{font-size:22px;margin:0;overflow-wrap:anywhere}.compose-link{font-size:26px;min-width:40px;height:40px;text-align:center}.dm-tabs{display:flex;justify-content:space-between;padding:0 22px 14px;font-size:15px}.dm-tabs span{font-size:12px;color:var(--muted)}.dm-search{margin:0 16px 14px;width:calc(100% - 32px);border:0;background:#f1f5f9;border-radius:10px;padding:9px 14px;font-size:14px}.dm-sidebar .conversation-row{border:0;border-radius:0;margin:0;padding:16px 20px;gap:12px}.dm-sidebar .conversation-row:hover,.dm-sidebar .conversation-row.active{background:#f1f5f9}.dm-sidebar .conversation-row h3{font-size:14px;font-weight:600}.dm-sidebar .conversation-row p{font-size:12px;color:var(--muted)}.dm-sidebar .conversation-row .avatar{width:50px;height:50px}.dm-sidebar .conversation-row time{font-size:10px}.dm-list-empty{padding:28px 22px;font-size:14px;color:var(--muted)}.dm-thread{display:flex;flex-direction:column;min-width:0;min-height:0}.dm-welcome{margin:auto;text-align:center;padding:30px}.dm-welcome h2{font-size:23px;margin-bottom:10px;font-weight:500}.dm-welcome p{font-size:14px;color:var(--muted)}.dm-welcome-icon{width:86px;height:86px;border:2px solid var(--ink);border-radius:50%;font-size:38px;display:flex;align-items:center;justify-content:center;margin:0 auto 22px}.dm-thread-head{height:84px;flex-shrink:0;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:16px 24px;gap:12px}.dm-thread-head #chat-title{display:flex;align-items:center;gap:12px;min-width:0}.dm-thread-head .avatar{width:42px;height:42px}.dm-thread-head h2{font-size:15px;margin:0;font-weight:650}.dm-thread-head p{font-size:12px;color:var(--muted);margin:0}.dm-free{margin-left:auto;font-size:11px;color:var(--brand);background:var(--soft);padding:3px 9px;border-radius:30px;white-space:nowrap}.dm-back{display:none;font-size:30px}.dm-thread .chat-messages{flex:1;min-height:0;height:auto;overflow:auto;padding:20px 24px}.dm-thread .bubble-wrap{display:grid;grid-template-columns:28px minmax(0,1fr);gap:5px 8px;align-items:end;margin-bottom:12px}.dm-thread .bubble-wrap .avatar{width:28px;height:28px;font-size:12px}.dm-thread .bubble-wrap .bubble{justify-self:start;background:#f1f1f1;border-radius:18px;padding:10px 15px;width:max-content;max-width:min(85%,500px);font-size:14px;line-height:1.6;grid-column:2}.dm-thread .bubble-wrap time{grid-column:2;font-size:10px;margin:0}.dm-thread .mine{grid-template-columns:minmax(0,1fr)}.dm-thread .mine .bubble{grid-column:1;justify-self:end;background:#6d28d9;color:white}.dm-thread .mine time{grid-column:1;text-align:right}.dm-thread .continuation .avatar{visibility:hidden}.dm-day{text-align:center;font-size:11px;color:var(--muted);margin:14px 0 24px}.dm-introduction{text-align:center;padding:40px 10px}.dm-introduction .avatar{margin:0 auto 18px;width:80px;height:80px;font-size:28px}.dm-introduction h2{font-size:21px;margin-bottom:2px}.dm-introduction p,.dm-introduction small{color:var(--muted);font-size:13px}.dm-thread #chat-form{display:flex;align-items:center;border:1px solid #94a3b8;border-radius:26px;padding:8px 16px;margin:8px 20px 20px;gap:10px}.dm-thread #chat-text{border:0;resize:none;min-height:40px;height:40px;max-height:120px;padding:8px 2px;border-radius:12px;font-size:15px;line-height:1.5}.dm-send{background:transparent;color:#6d28d9;border:0;font-weight:650;padding:8px 4px;white-space:nowrap;min-height:40px}.dm-thread #chat-status,.dm-thread #chat-load-status{margin:0 24px;min-height:0;font-size:12px}.dm-thread #chat-status:empty,.dm-thread #chat-load-status:empty{display:none}
@media(max-width:900px){.dm-layout{grid-template-columns:280px minmax(0,1fr)}}@media(max-width:700px){.dm-page{padding:0}.dm-layout{display:block;height:calc(100dvh - 128px - env(safe-area-inset-bottom));min-height:360px;border:0;border-radius:0}.dm-sidebar{height:100%;border:0}.dm-thread{display:none}.has-thread .dm-sidebar{display:none}.has-thread .dm-thread{display:flex;height:100%}.dm-back{display:block}.dm-thread-head{height:72px;padding:12px 16px}.dm-thread .chat-messages{padding:16px}.dm-thread #chat-form{margin:8px 12px 12px}.dm-thread #chat-text{font-size:16px}.dm-thread .bubble-wrap .bubble{max-width:95%}.dm-sidebar .conversation-row time{display:block}}
/* Keep desktop navigation on one line, including compact laptop widths. */
@media(min-width:701px){
 header{flex-wrap:nowrap;gap:clamp(12px,2vw,28px)}
 header>.logo,header>.start-button{white-space:nowrap;flex-shrink:0}
 header>nav{flex-wrap:nowrap;white-space:nowrap;min-width:0;overflow-x:auto;scrollbar-width:none;gap:clamp(12px,2vw,28px)}
 header>nav::-webkit-scrollbar{display:none}
 header>nav>a,header>nav>button{white-space:nowrap;flex-shrink:0}
}
@media(min-width:701px) and (max-width:1023px){
 header{padding-left:16px;padding-right:16px;gap:12px}
 header>nav{gap:12px;font-size:12px}
 header>nav>button{font-size:12px}
 header>.start-button{font-size:13px;padding-left:12px;padding-right:12px;gap:8px}
}
/* Circular DM icons retain their dimensions in flex and grid layouts. */
.dm-page .avatar{aspect-ratio:1 / 1;flex:0 0 auto;border-radius:50%;object-fit:cover;box-sizing:border-box}
.dm-sidebar .conversation-row .avatar{width:50px;min-width:50px;height:50px;min-height:50px}
.dm-thread-head .avatar{width:42px;min-width:42px;height:42px;min-height:42px}
.dm-thread .bubble-wrap .avatar{width:28px;min-width:28px;height:28px;min-height:28px}
.dm-introduction .avatar{width:80px;min-width:80px;height:80px;min-height:80px}
.dm-welcome-icon{width:86px;min-width:86px;height:86px;min-height:86px;aspect-ratio:1 / 1;flex-shrink:0;box-sizing:border-box}
header img.mark{display:block;width:38px;height:38px;padding:0;flex-shrink:0;object-fit:contain}
.filters input[type="search"]{font-size:14px;padding:10px;width:100%;min-width:0}.filter-submit{width:100%;margin-top:22px;font-size:14px}.search-extra{margin:0 0 22px}.search-extra summary{font-size:13px;font-weight:650;color:var(--brand);cursor:pointer;margin-bottom:14px}.filters .field{margin-bottom:16px}
.active-search-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}.active-search-filters:empty{display:none}.active-search-filters .chip{max-width:100%;white-space:normal;overflow-wrap:anywhere;text-align:left;color:var(--brand);background:var(--soft);border-color:#99d3c6}
/* Compact result count and neighboring search controls. */
.search-toolbar{justify-content:flex-start;align-items:center;margin:16px 0 12px;gap:12px}
.search-toolbar>div{flex:1;min-width:0}
.search-toolbar .filter-toggle{min-height:38px;padding:6px 12px;font-size:13px;white-space:nowrap}
.search-toolbar>span{flex-shrink:0;white-space:nowrap}
.active-search-filters{margin-bottom:12px}
@media(max-width:700px){.search-toolbar{margin:12px 0 10px;gap:8px}.search-toolbar>div>p{font-size:13px}.search-toolbar .muted{display:block;font-size:11px;line-height:1.5}}
.safety-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:16px}.safety-actions button{border:0;background:none;color:var(--muted);font-size:12px;padding:6px 0}.safety-actions button:hover{color:#b91c1c}.danger-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;width:100%;padding:10px 18px;border:1px solid #b91c1c;color:#b91c1c;background:white;border-radius:12px;font-weight:650}.danger-button:hover{background:#fef2f2}.blocked-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.chat-menu{border:0;background:none;font-size:18px;min-width:40px;min-height:40px;color:var(--ink)}.readiness-table{border:1px solid var(--line);border-radius:16px;background:white;overflow:hidden;margin:24px 0}.readiness-table>div{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:16px 20px;border-bottom:1px solid var(--line);font-size:14px}.readiness-table>div:last-child{border:0}.readiness-table span{color:var(--muted)}@media(max-width:700px){.readiness-table>div{grid-template-columns:1fr;gap:4px}.blocked-row{align-items:start;flex-direction:column}}
.auth-container{max-width:520px}.auth-container h1{font-size:28px}.auth-container form>.primary{width:100%}.auth-links{display:flex;gap:16px;flex-wrap:wrap;margin-top:22px;font-size:13px;color:var(--brand)}.auth-container input{font-size:16px}
.bell-button{position:relative;display:flex;align-items:center;justify-content:center;width:42px;height:42px;flex:0 0 42px;color:var(--ink);border-radius:12px}.bell-button:hover{background:var(--soft)}#activity-badge{position:absolute;top:0;right:-3px;border-radius:20px;background:#b91c1c;color:white;min-width:18px;height:18px;padding:0 4px;font-size:10px;font-weight:650;line-height:18px;text-align:center;border:1px solid white}.activity-container{max-width:900px}.activity-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.activity-heading h1{font-size:28px;margin:0}.activity-row{display:flex;gap:18px;align-items:start;padding:22px;border:1px solid var(--line);border-radius:16px;background:white;margin-bottom:12px}.activity-row.unread{background:var(--soft)}.activity-row>div{flex:1;min-width:0}.activity-row h2{font-size:16px;margin:0 0 4px}.activity-row p{font-size:14px;color:var(--muted);margin:0 0 8px;overflow-wrap:anywhere}.activity-row time{font-size:12px;color:var(--muted)}.activity-icon{display:flex;align-items:center;justify-content:center;border-radius:50%;width:42px;height:42px;flex:0 0 42px;background:white;color:var(--brand);border:1px solid var(--line);font-size:20px}.unread-dot{width:8px;height:8px;border-radius:50%;background:var(--brand);flex-shrink:0;margin-top:8px}@media(max-width:700px){header{gap:10px}header>.bell-button{margin-left:auto}header>.start-button{margin-left:0}.activity-row{padding:16px;gap:12px}.activity-heading h1{font-size:24px}}
.hero-copy>span{display:block;white-space:nowrap}.entry-buttons{display:flex;gap:12px;margin:24px 0;flex-wrap:wrap}.entry-buttons>*{flex:1;white-space:nowrap}.admin-page{max-width:1264px;margin:auto;display:grid;grid-template-columns:230px minmax(0,1fr);min-height:70vh;background:var(--canvas)}.admin-nav{background:white;padding:32px 24px;border-right:1px solid var(--line)}.admin-nav h1{font-size:22px}.admin-nav>a{display:block;border-radius:10px;padding:12px;margin-bottom:6px;font-size:14px}.admin-nav>a[aria-current]{background:var(--soft);color:var(--brand);font-weight:650}.admin-content{padding:32px;min-width:0}.admin-content h2{font-size:26px}.admin-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:24px 0}.admin-stats article{padding:24px;border:1px solid var(--line);border-radius:16px;background:white}.admin-stats span{display:block;font-size:13px;color:var(--muted)}.admin-stats strong{font-size:36px}.admin-card{background:white;border:1px solid var(--line);border-radius:16px;padding:22px;margin-bottom:14px;overflow-wrap:anywhere}.admin-card h3{margin:0}.admin-card p{font-size:14px;white-space:pre-wrap}.admin-card time{font-size:12px;color:var(--muted)}.admin-card-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.admin-card-head .demo-label{margin:0}.admin-user-action{width:auto}.report-evidence{max-height:220px;overflow:auto;font-size:13px;background:var(--canvas);padding:12px;border-radius:10px;margin:12px 0}.report-evidence p{white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:700px){header>.start-button{margin-left:auto}.hero-copy{font-size:clamp(22px,5.7vw,32px)!important;letter-spacing:-.04em}.hero-copy>span{line-height:1.5}.admin-page{grid-template-columns:1fr}.admin-nav{border-right:0;border-bottom:1px solid var(--line);padding:20px 16px}.admin-nav>a{display:inline-block;padding:8px}.admin-nav h1{margin-bottom:12px}.admin-content{padding:24px 16px}.admin-stats{gap:12px}.admin-stats article{padding:18px}}

/* Keep the complete closing phrase together, including on narrow phones. */
.hero-copy .hero-second-line{display:flex;flex-wrap:nowrap;align-items:baseline;white-space:nowrap}
.hero-copy .hero-second-line>em,.hero-copy .hero-ending{display:inline-block;flex:0 0 auto;white-space:nowrap}
@media(max-width:700px){.hero h1.hero-copy{font-size:clamp(20px,5.5vw,32px)!important}}

.skillcard p{white-space:pre-wrap;overflow-wrap:anywhere}

.verified-badge{display:inline-block;border-radius:20px;background:#e0f3ed;color:#0f766e;padding:5px 10px;font-size:12px;font-weight:700}.verification-label{font-size:12px}.tutor-entry{display:flex;align-items:center;gap:16px;margin-top:20px;flex-wrap:wrap}.tutor-entry span{font-size:13px;color:var(--muted)}.tutor-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:24px;background:white;border:1px solid var(--line);border-radius:18px;margin:24px 0}.tutor-filters .field{margin:0}.tutor-filters input,.tutor-filters select{width:100%;min-width:0}.tutor-price{font-size:22px;font-weight:700;color:var(--brand)}.tutor-price small{font-size:12px;color:var(--muted)}.tutor-card .primary{margin-top:auto}.choice-grid{display:flex;flex-wrap:wrap;gap:12px 22px}.choice-grid .check{margin:0}.preserve-lines{white-space:pre-wrap;overflow-wrap:anywhere}.proof-document{display:block;width:100%;max-height:65vh;object-fit:contain;background:#f3f4f6;margin:20px 0}#proof-form input[type=file]{width:100%;font-size:14px}fieldset.field{border:0;padding:0}fieldset.field legend{font-weight:600;margin-bottom:12px}@media(max-width:700px){.tutor-filters{grid-template-columns:1fr;padding:18px}.tutor-entry{gap:10px}.tutor-entry .secondary{width:100%;justify-content:center}.tutor-entry span{font-size:12px}.choice-grid{gap:12px}.tutor-card{min-width:0}}

.sponsor-wrap{margin-top:24px;margin-bottom:32px}.sponsor-card{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 24px;border:1px solid var(--line);border-radius:14px;background:#fafcfb}.sponsor-label{display:block;font-size:11px;color:var(--muted);margin-bottom:7px}.sponsor-card h3{font-size:16px;margin:0 0 6px}.sponsor-card p{font-size:13px;color:var(--muted);margin:0}.sponsor-card .secondary{flex-shrink:0}.admin-search{display:flex;align-items:end;gap:12px;margin:24px 0}.admin-search .field{flex:1;margin:0}.admin-search input{width:100%}.admin-user-id{font-size:11px;overflow-wrap:anywhere}@media(max-width:700px){.sponsor-card{align-items:start;flex-direction:column;gap:14px;padding:18px}.sponsor-wrap{margin-top:20px;margin-bottom:24px}.admin-search{flex-wrap:wrap}.admin-search .field{flex-basis:100%}.admin-search .primary{flex:1}}

/* Main navigation on desktop and mobile. */
:root{color-scheme:light}
body{padding-bottom:calc(88px + env(safe-area-inset-bottom))}
button,input,select,textarea{color:var(--ink)}
.primary{color:white}.secondary{color:var(--ink)}
.searchbox input{color:var(--ink);caret-color:var(--brand)}
input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}
dialog{background:white;color:var(--ink);max-height:calc(100dvh - 32px);overflow-y:auto}
.bottom{display:flex;position:fixed;bottom:0;left:0;right:0;background:white;border-top:1px solid var(--line);height:calc(70px + env(safe-area-inset-bottom));padding:6px 12px calc(6px + env(safe-area-inset-bottom));z-index:30;justify-content:center;gap:8px}
.bottom a{width:min(25%,200px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:14px;color:var(--muted);border-radius:10px;white-space:nowrap}
.bottom svg{width:23px;height:23px;flex-shrink:0}
.bottom span{font-size:11px;font-weight:600}
.bottom a:hover{background:var(--canvas)}
.bottom a.active{background:var(--soft);color:var(--brand)}
.hero{text-align:left}
.hero .searchbox{margin-left:0}
.hero .popular{justify-content:flex-start}
.hero-copy .hero-second-line{justify-content:flex-start}
.hero-copy>span:first-child em{color:var(--brand)}
.features-intro{max-width:800px;margin-bottom:32px}
.features-intro h1{font-size:34px;margin:0 0 16px;line-height:1.5}
.features-intro p{font-size:15px;color:var(--muted)}
.features-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:36px}
.feature-card{padding:28px;border:1px solid var(--line);border-radius:16px;background:white}
.feature-card h2{font-size:22px;margin:12px 0}
.feature-card p{font-size:14px;color:var(--muted);line-height:1.9}
.feature-number{color:var(--brand);font-size:12px;font-weight:650}
.feature-card .secondary{font-size:13px}
.features-how ol{padding-left:22px;font-size:14px;line-height:2.1}
.features-how h2{margin-bottom:15px}
.features-how .account-actions{margin-top:24px}
@media(min-width:701px){.dm-layout{height:calc(100dvh - 225px);min-height:420px}.bottom{box-shadow:0 -4px 16px #0f172a05}}
@media(max-width:700px){.bottom{gap:2px;padding-left:6px;padding-right:6px}.bottom a{width:25%}.bottom span{font-size:10px}.features-intro h1{font-size:26px}.features-grid{grid-template-columns:1fr;gap:14px}.feature-card{padding:23px}.feature-card h2{font-size:20px}.hero-copy .hero-second-line{justify-content:flex-start}}

.proof-entry{border:0;background:transparent;padding:4px 0;text-align:left;font:inherit;font-weight:650;color:var(--brand)}
.proof-entry:disabled{opacity:.6;cursor:wait}

.verification-callout{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 26px;background:var(--soft);border:1px solid #b6d9cc;border-radius:16px;margin-bottom:24px}
.verification-callout h2{font-size:18px;margin:0 0 7px;line-height:1.6}.verification-callout p{font-size:12px;color:var(--muted);margin:0;max-width:690px}.verification-callout .primary,.verification-callout .secondary{font-size:13px;white-space:nowrap;flex-shrink:0}
@media(max-width:700px){.verification-callout{align-items:start;flex-direction:column;padding:20px;gap:15px}.verification-callout h2{font-size:17px}.verification-callout>a{width:100%}}

.bottom a{position:relative}.bottom .message-badge{position:absolute;top:1px;left:calc(50% + 4px);display:grid;place-items:center;min-width:23px;height:23px;border-radius:999px;padding:0 5px;background:#19a957;color:#fff;font-size:11px;line-height:1;font-weight:750;border:2px solid #fff;pointer-events:none}.bottom .message-badge[hidden]{display:none}

.count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:23px;height:23px;padding:0 5px;border-radius:999px;color:#fff;font-size:11px;font-weight:750;line-height:1;flex-shrink:0;font-variant-numeric:tabular-nums}
.count-badge.alert{background:#dc2626}.count-badge.green{background:#19a957}.count-badge[hidden]{display:none}
.admin-nav>a{display:flex;align-items:center;justify-content:space-between;gap:10px}.admin-nav>a>span:first-child{min-width:0}.admin-nav .count-badge{margin-left:auto}
#activity-badge{background:#dc2626;min-width:23px;height:23px;padding:0 5px;line-height:19px;font-size:11px;font-weight:750;border:2px solid #fff;border-radius:999px}#activity-badge[hidden]{display:none}
@media(max-width:700px){.admin-nav>a{display:inline-flex;gap:8px}.admin-nav .count-badge{min-width:21px;height:21px;font-size:10px}}

.mobile-feature-link{display:none}
@media(max-width:700px){.hero .mobile-feature-link{display:block;width:fit-content;border:0;background:transparent;padding:0;margin:-8px 0 22px;color:var(--brand);font-size:14px;font-weight:650;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px;line-height:1.7}.hero .mobile-feature-link:hover{color:var(--hover)}}

header img.mark{background:transparent;object-fit:contain}

@media(max-width:700px){.soft-section>.container.section,.student-examples.container.section{padding-inline:16px}}

.ad-statistics h3{margin-top:0}.ad-statistics h4{margin:24px 0 12px}.ad-statistics [aria-current="page"]{color:var(--brand);font-weight:700}.ad-stats-table{overflow-x:auto}.ad-stats-table table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:13px}.ad-stats-table th,.ad-stats-table td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:right}.ad-stats-table th:first-child{text-align:left}.ad-statistics .admin-stats{margin:20px 0}


.student-examples.section{padding-top:82px}
@media(max-width:700px){.student-examples.section{padding-top:56px}}

footer .footer-public-links{display:flex;gap:12px 22px;flex-wrap:wrap;justify-content:center;font-size:12px;width:100%}.footer-public-links a:hover{color:var(--brand);text-decoration:underline}.editor .profile-section details{padding:15px 0;border-bottom:1px solid var(--line)}.editor .profile-section details:last-child{border-bottom:0}.editor .profile-section summary{cursor:pointer;font-weight:600}.editor .profile-section details p{margin:12px 0 0}.editor .profile-section ol{padding-left:24px}.editor .profile-section li{margin-bottom:16px}

footer{flex-wrap:wrap}

.tutoring-info>.account-actions{margin-bottom:28px}

/* One inline advertising placement below the main content. */
.network-ad{--network-ad-width:320px;--network-ad-height:50px;margin:28px auto 32px;padding:0 12px;max-width:1120px;min-height:calc(var(--network-ad-height) + 22px)}
.network-ad[hidden]{display:none!important}.network-ad-meta{display:flex;justify-content:space-between;align-items:center;max-width:var(--network-ad-width);margin:0 auto 8px;font-size:10px;line-height:14px;color:var(--muted);visibility:hidden}.network-ad-meta a{text-decoration:underline;text-underline-offset:3px}.network-ad-ready .network-ad-meta{visibility:visible}
.network-ad [data-network-ad-frame]{width:var(--network-ad-width);height:var(--network-ad-height);margin:auto;max-width:100%;overflow:hidden}.network-ad iframe{display:block;border:0;width:var(--network-ad-width);height:var(--network-ad-height);max-width:100%}

.home-notice{margin-top:4px;margin-bottom:28px}.home-notice-card{padding:20px 24px;border:1px solid var(--line);border-radius:14px;background:#fafcfb}.home-notice-card h2{margin:0 0 8px;font-size:11px;font-weight:600;letter-spacing:.08em;color:var(--muted)}.home-notice-card h3{margin:0 0 8px;font-size:16px;line-height:1.6}.home-notice-card p{margin:0 0 10px;font-size:13px;line-height:1.8;color:var(--muted)}.home-notice-card summary{cursor:pointer;font-size:12px;color:var(--green);width:fit-content}.home-notice-instructions{padding-top:14px}.home-notice-instructions strong{color:var(--ink)}.home-notice-instructions p:last-child{font-size:11px;margin-bottom:0}.activity-notice{margin-bottom:28px}@media(max-width:700px){.home-notice-card{padding:18px}.home-notice{margin-bottom:24px}}

.mypage-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 16px;margin:12px 0 26px}.mypage-heading>.eyebrow{grid-column:1/-1;grid-row:1}.mypage-heading h1{grid-column:1;grid-row:2;font-size:28px;margin:0;line-height:1.3}.mypage-heading>.account-settings-link{grid-column:2;grid-row:2;align-self:center}.mypage-heading>p{grid-column:1/-1;grid-row:3;margin:0;color:var(--muted);font-size:14px}.account-settings-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px}.account-settings-link svg{flex:none}.account-settings-link:focus-visible{outline:3px solid var(--brand);outline-offset:3px}@media(max-width:480px){.mypage-heading{gap:8px}.mypage-heading h1{font-size:24px}.account-settings-link{padding:10px;font-size:12px;gap:5px}.account-settings-link svg{width:20px;height:20px}}

.email-reminder{margin:0 0 24px}.email-reminder .secondary{margin-top:8px}

.profile-publication-notice{margin-bottom:24px}.profile-publication-notice .secondary{margin-top:8px}

#profile-publication-settings{scroll-margin-top:100px;border:2px solid var(--brand)}#profile-published:focus-visible{outline:3px solid var(--brand);outline-offset:4px}.analytics-heading{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.analytics-period{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:20px 0}.analytics-period [aria-current="page"]{background:var(--brand);color:white}.analytics-table-wrap{overflow-x:auto}.analytics-table{border-collapse:collapse;width:100%;font-size:14px}.analytics-table th,.analytics-table td{padding:12px;text-align:left;border-bottom:1px solid var(--line)}.analytics-table th{background:var(--canvas);white-space:nowrap}.analytics-table td:not(:first-child){font-variant-numeric:tabular-nums}.analytics-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:700px){.analytics-two-columns{grid-template-columns:1fr}.analytics-table th,.analytics-table td{padding:10px}}

.analytics-chart-card{min-width:0}.analytics-chart-card h3{margin-bottom:18px}.analytics-line-chart{display:block;width:100%;height:auto;min-height:150px;overflow:visible;touch-action:pan-y}.analytics-line-chart text,.analytics-donut text{font:12px sans-serif;fill:var(--muted)}.chart-grid{stroke:var(--line);stroke-width:1}.chart-trend-line{stroke:var(--brand);stroke-width:3;stroke-linejoin:round;stroke-linecap:round}.chart-point{fill:var(--brand)}.chart-guide{stroke:#64748b;stroke-dasharray:4 4;stroke-width:1}.chart-guide[hidden]{display:none}.analytics-chart-output{display:block;font-size:14px;font-weight:650;margin-top:8px;min-height:24px}.chart-instruction{font-size:12px!important;line-height:1.6}.analytics-line-chart:focus-visible{outline:3px solid var(--brand);outline-offset:4px;border-radius:8px}.analytics-donut-layout{display:flex;align-items:center;gap:20px}.analytics-donut{width:150px;max-width:45%;flex:none}.analytics-donut .donut-total{font-size:24px;font-weight:700;fill:var(--ink)}.analytics-chart-legend{list-style:none;padding:0;margin:0;flex:1;min-width:0}.analytics-chart-legend li{display:grid;grid-template-columns:10px 1fr;gap:5px 9px;margin:10px 0;font-size:13px;align-items:center}.analytics-chart-legend strong{grid-column:2;font-weight:650}.analytics-chart-legend small{font-weight:400;color:var(--muted)}.chart-color{width:10px;height:10px;border-radius:3px}.analytics-chart-empty{min-height:140px;display:flex;align-items:center;justify-content:center;color:var(--muted)}@media(max-width:380px){.analytics-donut-layout{gap:10px}.analytics-donut{width:120px}.analytics-line-chart text{font-size:14px}}

@media(max-width:343px){.network-ad.container{padding-left:0;padding-right:0}}

.reminder-card{margin-bottom:24px}.reminder-card h2,.reminder-card h3{font-weight:700;color:var(--ink)}.home-notice-card.reminder-card h3{font-size:16px;margin:0 0 8px;line-height:1.6}.home-notice-card.reminder-card p{margin:0 0 12px;font-size:13px;line-height:1.8}.home-notice-card.reminder-card>a{display:inline-flex;align-items:center;justify-content:center;font-size:13px;min-height:44px}.home-notice-card:has(+[data-email-reminder]){margin-bottom:24px}.verification-callout.reminder-card p{margin:0}@media(max-width:700px){.reminder-card{margin-bottom:20px}.home-notice-card.reminder-card>a{width:100%}}
