/* Shared type and spacing rules. Loaded last to retire screen-specific variations. */
:root{--type-page:30px;--type-section:22px;--type-card:20px;--type-body:15px;--type-label:14px;--type-meta:12px;--space-card:24px;--space-gap:20px;--radius-card:20px}
body,button,input,textarea,select{font-family:Manrope,Arial,sans-serif}
body{font-size:var(--type-body);line-height:1.6;font-weight:400}
main h1,main .heading h1,.action-screen #modalBody>h2,.setup-shell h1{font-size:var(--type-page)!important;line-height:1.2!important;font-weight:600!important;letter-spacing:-.7px!important}
main h2,main .section-title h2,main .board-title h2,#collaboration>.heading h1{font-size:var(--type-section)!important;line-height:1.3!important;font-weight:600!important;letter-spacing:-.35px!important}
main h3,.discovery-challenge h2,.campaign-card h2,.next-home-challenge h3,.idea-card-heading h3,.profile-post h3,.entry-order h2,.resource h2{font-size:var(--type-card)!important;line-height:1.4!important;font-weight:600!important;letter-spacing:-.2px!important}
.person-copy h3,.activity-item h3,.post-author h3,.connection-person h3,.campaign-card-head strong,.idea-card-person strong{font-size:16px!important;line-height:1.4!important;font-weight:600!important;letter-spacing:0!important}
main p,.profile-section p,.creator-about>p,.brief-how p,.campaign-how>p,.campaign-rules>p{font-size:var(--type-body);line-height:1.65;font-weight:400}
main label,main summary{font-size:var(--type-label);line-height:1.5;font-weight:500}
main small,.person-copy small,.campaign-card-head small,.campaign-owner small{font-size:var(--type-meta);line-height:1.5;font-weight:400}
.dark,.outline,.quiet,.filters button,.activity-tabs button,.discovery-tabs button,.board-filter button{font-size:14px!important;font-weight:500!important;line-height:1.4;min-height:44px}
main .heading{margin-bottom:28px;gap:16px}.section-title,.board-title{margin-bottom:20px!important;gap:16px}
.discovery-challenge,.campaign-card,.idea-card,.profile-post,.activity-item,.brief-how,.brief-offer,.campaign-how,.campaign-rules details,.entry-order,.collab-detail-paper{padding:var(--space-card)!important;border-radius:var(--radius-card)!important}
.next-home-challenge{padding:var(--space-card)!important;border-radius:var(--radius-card)!important}
.campaign-card,.discovery-challenge{gap:20px!important}.discovery-challenge-grid,#collabBoard,.activity-list{gap:var(--space-gap)!important}
.idea-card{padding:0!important}.idea-card-open{padding:var(--space-card)!important}.idea-card-foot{padding:0 var(--space-card) var(--space-card)!important}.idea-card-heading{margin-bottom:20px}
.campaign-prize>span{font-size:26px!important;font-weight:600!important;line-height:1.2;letter-spacing:-.4px}
.creator-card .person-open{padding:20px 66px 20px 20px!important}.person-copy p{font-size:14px!important;line-height:1.5!important}.creator-card{border-radius:var(--radius-card)!important}
.profile-section,.creator-looking,.member-summary{padding:var(--space-card);border-radius:var(--radius-card)}
.single-brief h2,.campaign-detail h2,.creator-profile h2{margin-bottom:12px}.single-brief header h1,.campaign-detail header h1{margin:20px 0 16px}
.action-screen{padding-bottom:48px}.action-screen>#actionBack{margin-bottom:24px}.action-screen #modalBody>h2{margin-bottom:24px}
.action-screen .member-form fieldset,.action-screen .member-form details,.campaign-screen fieldset{padding:var(--space-card)!important;margin:0 0 24px;min-width:0;max-width:100%;background:white;border:0;border-radius:var(--radius-card);box-shadow:var(--card-shadow)}
.member-form legend,.campaign-screen legend{float:left;width:100%;font-size:18px!important;line-height:1.4!important;font-weight:600!important;color:var(--ink);padding:0;margin:0 0 20px}
.member-form fieldset> :not(legend),.campaign-screen fieldset> :not(legend){clear:both}
.member-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.member-fields>div{min-width:0}.member-fields label,.member-form fieldset label{margin:0 0 8px!important}
.member-form fieldset input:not([type=checkbox]),.member-form fieldset textarea,.action-screen .member-form input:not([type=checkbox]),.action-screen .member-form textarea{display:block;width:100%;max-width:100%;min-width:0;background:#f2f1ed!important;border:0!important;box-shadow:inset 0 0 0 1px #e3e0d8!important;border-radius:12px;padding:13px 14px;color:var(--ink);font-size:16px;line-height:1.5}
.member-form input:not([type=checkbox]){min-height:48px}.member-form textarea#member-bio{height:116px;min-height:116px;resize:vertical}.member-form textarea::placeholder,.member-form input::placeholder{color:#747168;font-weight:400}
.member-form .bio-help{display:flex;justify-content:space-between;gap:12px;margin-top:8px;font-size:12px;color:var(--muted)}
.member-form .member-toggle{margin:20px 0 0!important;min-height:44px;font-weight:400}.member-form details label{margin-top:20px}.member-form .actions{position:static;background:transparent;padding:0;margin-top:20px;gap:12px}.member-form .error:empty{display:none}.member-form .actions button{min-height:48px}.member-form summary{padding:0;min-height:44px;display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600}
main input:not([type=checkbox]):not([type=radio]),main textarea,main select{font-size:16px;line-height:1.5;scroll-margin-bottom:160px}
.bottom-navigation button{font-size:12px;font-weight:500;line-height:1.3}
@media(max-width:700px){:root{--type-page:28px;--type-section:22px;--type-card:20px;--space-card:20px;--space-gap:16px}.member-fields{grid-template-columns:minmax(0,1fr);gap:20px}.member-form .actions>.dark{flex:1}.action-screen .member-form fieldset,.action-screen .member-form details{margin-bottom:20px}.person-copy h3{font-size:16px!important}.campaign-form-grid{grid-template-columns:minmax(0,1fr)}.bottom-navigation button{font-size:11px}}
