@font-face{font-family:"Golos Text";src:url("fonts/golos-text/GolosText-Regular.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap;}
@font-face{font-family:"Golos Text";src:url("fonts/golos-text/GolosText-Medium.woff2") format("woff2");font-style:normal;font-weight:500;font-display:swap;}
@font-face{font-family:"Golos Text";src:url("fonts/golos-text/GolosText-SemiBold.woff2") format("woff2");font-style:normal;font-weight:600;font-display:swap;}
@font-face{font-family:"Golos Text";src:url("fonts/golos-text/GolosText-Bold.woff2") format("woff2");font-style:normal;font-weight:700;font-display:swap;}
:root{--font-ui:"Golos Text",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-reading:var(--font-ui);--font-heading:Georgia,"Times New Roman",serif;--font-code:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;--type-body:1rem;--type-reading:1.0625rem;--type-ui:.875rem;--type-meta:.75rem;--type-body-leading:1.65;--type-reading-leading:1.75;--type-heading-leading:1.2;--reading-measure:68ch;}

/* Shared rhythm: reading headings stay calm; controls and cards use Golos. */
body{font-family:var(--font-ui);font-size:16px;line-height:var(--type-body-leading)}
button,input,select,textarea{font-family:var(--font-ui)}
.brand{font-weight:600;letter-spacing:-.04em}
h1,.intro h1,.profile-intro h1{font-family:var(--font-heading);font-size:clamp(32px,4vw,40px);font-weight:400;line-height:1.2;letter-spacing:-.015em}
.intro h1>span{font-style:normal}
.main-nav a,.telegram-hub,.project-search input,.project-filters button,.plan-filters button{font-size:14px;line-height:1.45}
.intro-aside p{font-size:16px;line-height:1.65;max-width:40ch}
.intro-aside .intro-subline{font-size:14px}
.directory-heading h2{font-size:24px;line-height:1.3;font-weight:500;letter-spacing:-.015em}
.project-grid>.project .project-heading h3{font-size:20px;line-height:1.3;font-weight:600;letter-spacing:-.015em}
.project-grid>.project .project-category{font-size:12px;line-height:1.5;letter-spacing:.035em}
.project-description{font-size:14px;line-height:1.7;min-height:0}
.project-tags span{font-size:12px;line-height:1.45}
.project-primary>span:first-child{font-size:14px;line-height:1.45}
.project-qr summary{font-size:12px;line-height:1.45}
.directory-heading h2 span,.directory-heading-note,.eyebrow,.session-card-top>span,.project-popularity,.bot-username,.qr-instruction,.qr-address,.footer,.footer-share,.site-note p,.section-heading p,#plan-summary,.plan-toolbar,#plan-form label,.plan-hint,.plan-add,.plan-actions,.plan-date{font-size:12px;line-height:1.5}
.project-description,.session-card p,.plan-hint,.site-note p{overflow-wrap:break-word}
.session-card h3{font-size:24px;font-weight:500;line-height:1.3;letter-spacing:-.015em}
.session-card p{font-size:14px;line-height:1.7}
.rp-dialog,.rp-actions button,.rp-actions a{font-family:var(--font-ui)}
.profile-main p,.profile-main label,.profile-main button,.profile-main a{line-height:1.6}
.profile-intro>p:not(.eyebrow){font-size:17px;max-width:var(--reading-measure);line-height:1.75}
.session-controls label,.session-controls select,.session-tools button,.session-tools label{font-size:14px;line-height:1.5}
.ticket-condition{font-size:17px;line-height:1.75;max-width:var(--reading-measure)}
code,pre,textarea.ticket-draft{font-variant-ligatures:none}

@media(min-width:761px){.project-grid>.project{align-self:stretch}}

@media(max-width:760px){
 .intro h1{font-size:34px}
 .main-nav{gap:20px}
 .main-nav a{font-size:13px}
 .project-grid>.project .project-heading h3{font-size:20px}
 .project-body{padding-inline:18px}
 .project-primary>span:first-child{font-size:13px}
 .project-footer{column-gap:8px}
 .project-qr summary{font-size:12px}
}
@media(max-width:359px){
 .intro h1{font-size:32px}
 .main-nav{gap:16px}
 .project-body{padding-inline:15px}
}
