@layer theme, base, components, utilities;
@layer components {

:root{--brand-primary:#d73d0e;--brand-soft:#f9e0d8;--brand-anchor:#24242e;--brand-on-anchor:#e5714e;--action-primary:#6043ff;--on-action-primary:#fff;--canvas:#fff;--sidebar:#f7f7f7;--navigation-surface:var(--sidebar);--navigation-inset:10px;--navigation-radius:16px;--composer-surface:var(--canvas);--context-surface:var(--canvas);--surface:#f3f3f3;--text:#24242e;--muted:#81817e;--secondary:#62625e;--line:#eeede9;--focus:rgb(0 0 0 / 5%);--ease:cubic-bezier(.23,1,.32,1);--duration:150ms;--success:#326446}
*{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--text);font:14px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.4}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}svg.icon{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex:none}.muted{color:var(--muted)}.small{font-size:12px}.row{display:flex;align-items:center;gap:10px}.between{justify-content:space-between}.btn{border:1px solid #dad9d4;background:var(--canvas);border-radius:8px;padding:8px 13px;min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:12px;font-weight:600;transition:background var(--duration) var(--ease),scale 180ms var(--ease)}.btn:hover{background-color:var(--surface)}.btn:active:not(:disabled){scale:.97}.btn.primary{background:var(--action-primary);color:var(--on-action-primary);border-color:transparent}.btn.primary:hover{background-color:#383842}.icon-btn{display:inline-grid;place-items:center;width:32px;height:32px;border:0;border-radius:7px;background:none;color:var(--secondary)}.icon-btn:hover{background:var(--surface)}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}[hidden]{display:none!important}.brand{font:bold 59px/.45 var(--type-heading);color:var(--brand-primary);height:42px;display:flex;align-items:center;margin-bottom:20px;transform:translateY(-10px)}.community-icon{position:relative;width:43px;height:43px;border:0;background:#e1e0da;border-radius:13px;font-size:22px;transition:border-radius var(--duration),background var(--duration)}.community-icon:hover{border-radius:10px}.community-icon[aria-pressed=true]{background:var(--brand-anchor);color:var(--brand-soft)}.community-icon[aria-pressed=true]:before{content:'';position:absolute;left:-10px;top:12px;height:20px;width:3px;border-radius:0 3px 3px 0;background:var(--brand-primary)}.rail .divider{height:1px;width:24px;background:#d9d8d1}.avatar{display:inline-grid;place-items:center;width:35px;height:35px;flex:none;border-radius:50%;background:var(--brand-soft);color:#79391f;font-size:11px;font-weight:650}.avatar.blue{background:#e5e9ec;color:#456070}.avatar.olive{background:#e9e9de;color:#6a6949}.avatar.rose{background:#efdfdb;color:#865448}.club-name{font-size:16px;font-weight:700;line-height:1.35;letter-spacing:var(--type-heading-tracking)}.community-sub{font-size:11px;color:var(--muted);margin-top:5px}.nav-button[aria-current=page] .icon{color:var(--brand-primary)}.nav-button .count{margin-left:auto;font-size:11px;background:#e4e1db;border-radius:4px;padding:0 5px}.nav-label{margin:26px 10px 8px;display:flex;align-items:center;justify-content:space-between;font-size:11px;font-weight:600;color:#91918a}.hash{width:18px;text-align:center;font-size:17px;font-weight:400;color:#95958d}.space-dot{margin-left:auto;width:5px;height:5px;border-radius:50%;background:var(--brand-primary)}.sidebar-foot p{font-size:12px;color:var(--muted);margin:10px 0 15px}.site-link{display:flex;align-items:center;gap:8px;margin-top:17px;font-size:11px;color:var(--muted)}.breadcrumb{font-size:12px;color:var(--muted);display:flex;gap:12px;align-items:center}.breadcrumb b{color:var(--text);font-weight:550}.search-wrap{position:relative}.search-wrap .icon{position:absolute;left:10px;top:8px;width:16px;color:var(--muted)}.search{width:190px;border:0;border-radius:7px;background:var(--sidebar);padding:8px 10px 8px 34px;font-size:12px;color:var(--text)}.search::placeholder{color:#92928b}.mobile-nav{display:none}.feed-col{min-width:0}.feed-heading{margin-bottom:25px}.eyebrow{font-size:11px;color:var(--muted);letter-spacing:.5px}.feed-heading h1{font-size:29px;font-weight:700;letter-spacing:var(--type-heading-tracking);line-height:1.3;margin:5px 0 6px}.feed-heading p{color:var(--muted);font-size:13px}.member-stack{display:flex;margin-left:4px}.member-stack .avatar{margin-left:-6px;border:2px solid white;width:27px;height:27px;font-size:9px}.welcome-count{font-size:11px;color:var(--muted);white-space:nowrap}.composer-main{display:flex;gap:12px}.composer-tools{display:flex;align-items:center;gap:12px}.tool-button{display:flex;align-items:center;gap:6px;border:0;background:none;color:var(--muted);padding:3px;font-size:11px}.tool-button:hover{color:var(--text)}.tool-button .icon{width:16px;height:16px}.composer select{border:0;background:none;color:var(--secondary);font-size:11px;max-width:130px;padding:4px}.feed-tabs button{border:0;background:none;color:var(--muted);padding:0 0 13px;font-size:12px;font-weight:600;border-bottom:2px solid transparent}.feed-tabs button[aria-selected=true]{color:var(--text);border-color:var(--brand-primary)}.feed-tabs .feed-label{margin-left:auto;color:#aaa9a2;font-size:10px;padding-bottom:12px}.post-tag{font-size:10px;color:#9b6a53;background:#faf0e9;padding:3px 7px;border-radius:5px}.post-text{font-size:14px;line-height:1.75;margin:15px 0 16px;white-space:pre-wrap;overflow-wrap:anywhere}.photo-credit{font-size:9px;color:#96958e;margin-top:5px;text-align:right}.photo-credit a{text-decoration:underline;text-underline-offset:2px}.post-action[aria-pressed=true] .heart{fill:var(--brand-soft)}.post-action.bookmark[aria-pressed=true] svg{fill:var(--brand-soft)}.comment-preview{margin-top:16px;font-size:12px;color:var(--secondary);line-height:1.6}.comment-preview strong{color:var(--text);font-weight:600;margin-right:5px}.comments{margin-top:15px;margin-left:clamp(12px,3vw,32px);background:transparent;padding:13px;border-radius:9px}.comment{font-size:12px;padding:6px 0;white-space:pre-wrap;overflow-wrap:anywhere}.comment b{margin-right:7px}.comment-form{display:flex;gap:8px;margin-top:8px}.event-post{background:var(--brand-soft);border-radius:10px;padding:21px;display:flex;align-items:center;gap:18px}.calendar-date{background:#ffffffb5;border-radius:10px;padding:8px 14px;text-align:center;line-height:1.4;font-size:10px;color:#794332;flex:none}.calendar-date strong{display:block;font-size:28px;font-weight:600}.event-post h3{font-size:18px;font-weight:600;letter-spacing:var(--type-heading-tracking);margin:3px 0}.event-post p{font-size:11px;color:#8c6151}.event-post .btn{margin-left:auto;flex:none}.empty{text-align:center;padding:45px 15px;color:var(--muted)}.empty h2{font-size:18px;color:var(--text);margin-bottom:8px}.rightbar{padding-top:8px}.right-section{margin-bottom:29px}.right-label{font-size:11px;color:var(--muted);font-weight:550;margin-bottom:16px}.up-next{background:var(--context-surface);border-radius:12px;padding:0}.event-icon{width:33px;height:33px;border-radius:9px;background:var(--brand-soft);display:grid;place-items:center;color:var(--brand-primary);margin-bottom:16px}.up-next h3{font-size:18px;letter-spacing:var(--type-heading-tracking);line-height:1.3;margin:6px 0 15px}.event-info{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--secondary);margin:7px 0}.event-info .icon{height:14px;width:14px}.up-next .btn{width:100%;margin-top:16px}.going{display:flex;align-items:center;gap:7px;margin-top:14px;font-size:10px;color:var(--muted)}.about{font-size:12px;line-height:1.8;color:var(--secondary)}.people-row{display:flex;align-items:center;gap:10px;margin:12px 0}.people-row .avatar{width:28px;height:28px;font-size:9px}.people-row strong{font-size:12px;font-weight:500}.people-row small{font-size:10px;color:var(--muted);display:block}.online-dot{width:6px;height:6px;background:#6c956c;border-radius:50%;margin-left:auto}.rightbar .divider{border-top:1px solid var(--line);margin:26px 0}.local-note{color:#a4a39d;font-size:10px;line-height:1.8}.local-note a{text-decoration:underline}.toast{position:fixed;bottom:20px;left:50%;translate:-50% 0;background:var(--brand-anchor);color:white;padding:12px 20px;border-radius:10px;box-shadow:0 8px 30px #0002;z-index:20;font-size:13px;max-width:calc(100vw - 30px)}dialog{border:0;padding:26px;border-radius:15px;width:440px;max-width:calc(100% - 30px);color:var(--text);box-shadow:0 20px 80px #0003}dialog::backdrop{background:#20202866;backdrop-filter:blur(3px)}dialog h2{font-size:23px;letter-spacing:var(--type-heading-tracking);margin-bottom:8px}dialog p{color:var(--muted);font-size:13px;margin-bottom:20px}dialog .close{float:right}dialog label{display:block;font-size:12px;font-weight:600;margin-bottom:7px}dialog input{width:100%;padding:10px;border:1px solid #dedcd7;border-radius:8px;margin-bottom:15px}.error{font-size:12px;color:#ae3434}.attachment-status{margin-top:8px}.link-button{border:0;background:none;padding:0;color:var(--secondary);font-size:11px;cursor:pointer}.link-button:hover{color:var(--brand-primary)}
@media(min-width:1450px){}
@media(max-width:1180px){.up-next{padding:0}.event-post{gap:10px;padding:16px}.event-post .btn{padding:7px 9px}.welcome-count,.feed-heading .member-stack{display:none}}
@media(max-width:1020px){.rightbar{display:none}.feed-heading .member-stack{display:flex}}
@media(max-width:740px){.community-icon{width:36px;height:36px;font-size:18px;border-radius:10px}.community-icon[aria-pressed=true]:before{left:-9px}.rail .brand{font-size:50px;margin-bottom:10px}.mobile-nav{display:inline-grid}.breadcrumb>span,.breadcrumb>.slash{display:none}.search{width:120px}.topbar>.row{gap:5px}.feed-heading h1{font-size:25px}.composer-tools{gap:8px}.composer select{max-width:100px}.composer-main .avatar{display:none}.post-text{font-size:14px}.event-post{flex-wrap:wrap}.event-post .btn{margin-left:0;width:100%}.feed-tabs .feed-label{display:none}.feed-heading .member-stack{display:none}.post-tag{font-size:9px}.btn{font-size:11px}.avatar{width:31px;height:31px}.toast{left:calc(50% + 20px)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.btn,.post-action,.community-icon{scale:var(--press-scale,1);transition:background var(--duration) var(--ease),color var(--duration) var(--ease)}.btn:active:not(:disabled){scale:var(--press-scale,1)}

/* A quieter feed: one content column, with space for the conversation. */
.content{display:block;max-width:744px;padding:24px 42px 64px}

.feed-heading{margin-bottom:22px}
.feed-heading h1{font-size:30px;letter-spacing:var(--type-heading-tracking);margin:0}



.post-text{font-size:15px;line-height:1.7}

@media(min-width:1450px){}
@media(max-width:740px){.feed-heading h1{font-size:27px}}


.profile-back{border:0;background:none;padding:0;display:flex;align-items:center;gap:12px;font-weight:600;font-size:14px;margin-bottom:21px}button.avatar{border:0;cursor:pointer}.profile-editor{width:100%;min-height:100px;resize:vertical;border:1px solid var(--line);border-radius:8px;padding:10px;margin-bottom:16px;color:var(--text);background:var(--canvas)}
@media(max-width:740px){}

.space-picker{position:relative;min-width:0}#space-trigger{display:flex;align-items:center;gap:8px;border:0;border-radius:7px;background:transparent;padding:6px 8px;font-size:12px;color:var(--secondary);max-width:180px}#space-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#space-trigger .icon{width:14px;height:14px;color:var(--muted)}#space-trigger:hover,#space-trigger[aria-expanded=true]{background:var(--surface);color:var(--text)}#space-trigger:focus-visible{outline:2px solid var(--focus);outline-offset:2px}#space-menu{position:absolute;top:calc(100% + 6px);left:0;width:205px;max-width:calc(100vw - 160px);padding:5px;background:var(--canvas);border-radius:11px;box-shadow:0 5px 24px #24242e18,0 0 0 1px #24242e0d;z-index:8}#space-menu button{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:9px 10px;border:0;border-radius:6px;background:none;font-size:12px;text-align:left;line-height:1.4}#space-menu button:hover,#space-menu button:focus-visible{background:var(--surface);outline:none}#space-menu button[aria-checked=true]{background:var(--brand-soft)}#space-menu .icon{width:14px;height:14px;color:var(--brand-primary)}

.auth-page{max-width:440px;margin:8vh auto;padding:24px}.wordmark{font-size:30px;font-weight:800;letter-spacing:var(--type-brand-tracking)}.wordmark span{color:var(--brand-primary)}.auth-card{margin-top:34px}.auth-card h2{font-size:27px;margin-bottom:24px}.auth-card .field{margin:16px 0}.auth-card label{display:block;font-size:13px;margin-bottom:6px}.auth-card input:not([type=checkbox]),.auth-card textarea{width:100%;border:1px solid #ddddd8;border-radius:8px;padding:11px 13px;background:white}.auth-card input[type=submit]{background:var(--brand-anchor);color:white;border:0;margin:10px 0 20px;cursor:pointer}.auth-card a{display:inline-block;margin-top:10px;text-decoration:underline;font-size:13px}.auth-card #error_explanation{background:var(--brand-soft);border-radius:10px;padding:15px}.auth-card #error_explanation h2{font-size:15px}.flash{padding:12px 16px;background:var(--brand-soft);border-radius:9px;margin-bottom:20px}.form-field{display:block;margin-bottom:17px}.form-field>span{display:block;margin-bottom:6px;font-size:13px}.page-title{font-size:29px;letter-spacing:var(--type-heading-tracking);margin-bottom:25px}.people-list{display:grid;gap:12px}.site{max-width:1120px;padding:25px;margin:auto}.site-nav{display:flex;align-items:center;justify-content:space-between;padding:18px 0}.site-hero{padding:90px 0 60px;max-width:900px}.site-hero h1{font-size:clamp(48px,7vw,90px);letter-spacing:var(--type-heading-tracking);line-height:1.05;margin-bottom:28px}.site-hero p{font-size:20px;max-width:580px;color:var(--secondary);margin-bottom:30px}.site-art{background:var(--brand-anchor);color:var(--brand-soft);border-radius:30px;padding:60px;display:flex;justify-content:space-between;align-items:center;gap:30px;margin:25px 0 60px}.site-art h2{font:46px/1.1 Georgia,serif;max-width:480px}.site-art .piece{font-size:150px}.comment-form .btn{flex:none}@media(max-width:740px){.site-hero{padding:50px 0 30px}.site-art{padding:30px}.site-art h2{font-size:31px}.site-art .piece{font-size:75px}}

.community-icon[aria-current=page]{background:var(--brand-anchor);color:var(--brand-soft)}
@media(max-width:740px){}
@media(max-width:740px){}

/* Messages use a compact, social inbox pattern. */
.message-inbox{max-width:620px}.message-inbox-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.message-inbox-header h1,.message-thread-header h1{font-size:25px;line-height:1.2;letter-spacing:var(--type-heading-tracking)}.message-conversations{border-top:1px solid var(--line)}.message-conversation{display:flex;align-items:center;gap:12px;padding:14px 3px;border-bottom:1px solid var(--line);transition:background var(--duration) var(--ease)}.message-conversation:hover{background:var(--surface)}.message-conversation .avatar,.message-thread-header .avatar{width:48px;height:48px;font-size:13px}.message-conversation-copy{min-width:0;flex:1}.message-conversation-copy>div{display:flex;align-items:baseline;gap:6px;min-width:0}.message-conversation-copy strong{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-conversation-copy span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:12px}.message-conversation-copy p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--secondary);font-size:13px}.message-unread{width:8px;height:8px;margin-right:6px;border-radius:50%;background:var(--brand-primary);flex:none}.message-results{display:grid;gap:4px;margin:-7px 0 18px}.message-results>a:not(.btn){display:flex;align-items:center;gap:10px;padding:8px;border-radius:9px}.message-results>a:not(.btn):hover{background:var(--surface)}.message-results small{display:block;color:var(--muted)}.message-thread-header{display:flex;align-items:center;gap:12px;padding-bottom:20px;border-bottom:1px solid var(--line);margin-bottom:17px}.message-thread-header p{font-size:12px;color:var(--muted);margin-top:2px}.message-thread{display:grid;gap:10px;margin:20px 0}.message{width:fit-content;max-width:min(84%,510px);padding:12px 14px;border-radius:18px 18px 18px 5px;background:var(--surface)}.message.own{margin-left:auto;border-radius:18px 18px 5px;background:var(--brand-soft)}.message .avatar{width:27px;height:27px;font-size:9px}.message.own .avatar{display:none}.message.own .row{justify-content:flex-end}.message.own .row>div{display:none}.message.own .row time{margin-left:0}.message p{font-size:14px;line-height:1.5}@media(max-width:740px){.message-inbox-header h1,.message-thread-header h1{font-size:23px}.message-conversation{padding:13px 0}.message-conversation .avatar,.message-thread-header .avatar{width:43px;height:43px}.message{max-width:90%}}

.avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit}

.space-trigger{display:flex;align-items:center;gap:8px;border:0;border-radius:7px;background:transparent;padding:6px 8px;font-size:12px;color:var(--secondary);max-width:180px}.space-trigger>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.space-trigger .icon{width:14px;height:14px;color:var(--muted)}.space-trigger:hover,.space-trigger[aria-expanded=true]{background:var(--surface);color:var(--text)}.space-trigger:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.space-menu{position:absolute;top:calc(100% + 6px);left:0;width:205px;max-width:calc(100vw - 145px);padding:5px;background:var(--canvas);border-radius:11px;box-shadow:0 5px 24px #24242e18,0 0 0 1px #24242e0d;z-index:8;animation:menu-in 140ms var(--ease)}.space-menu button{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:9px 10px;border:0;border-radius:6px;background:none;font-size:12px;text-align:left;line-height:1.4}.space-menu button:hover,.space-menu button:focus-visible{background:var(--surface);outline:none}.space-menu button[aria-checked=true]{background:var(--brand-soft)}.space-menu button span{color:var(--brand-primary)}@keyframes menu-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.space-menu{animation:none}}


}

/* Reset dialog follows the dialog specimen in design-system.html. */
dialog.website-reset-dialog{padding:25px 0 0;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:0 30px 100px #0004}dialog.website-reset-dialog::backdrop{background:#15152370}dialog.website-reset-dialog>h2{margin:0 25px}dialog.website-reset-dialog>.close{margin:0 25px 0 12px}.website-reset-dialog .reset-dialog-body{padding:25px;display:grid;gap:18px}.website-reset-dialog p{margin:0;font-size:14px}.website-reset-dialog .reset-dialog-actions{padding:18px 25px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:9px}

@layer components {
.btn.danger{color:var(--danger,#b72e42);background:var(--danger-soft,#fff0f2);border-color:transparent}.btn.danger:not(:disabled):hover{background-color:color-mix(in srgb,var(--danger,#b72e42) 15%,var(--surface));border-color:transparent}
}

/* Form builders can grow without pushing their save controls off-screen. */
dialog.forms-dialog{width:min(680px,calc(100% - 24px));max-height:calc(100dvh - 24px);overflow-y:auto;padding:26px;background:var(--surface)}
dialog.forms-dialog input[type=checkbox]{width:16px;height:16px;padding:0;margin:0;flex-shrink:0}

/* Replies keep the author, body, and actions in one column beside the avatar. */
.comments{--comment-avatar-size:35px;--reply-indent:47px}
.comment{display:grid;grid-template-columns:var(--comment-avatar-size) minmax(0,1fr);column-gap:12px;align-items:start;padding:10px 0;white-space:normal}
.comment>.avatar{width:var(--comment-avatar-size);height:var(--comment-avatar-size)}
.comment-nested{position:relative;margin-left:var(--reply-indent)}
.comment-nested::before{content:"";position:absolute;left:calc(17px - var(--reply-indent));top:0;bottom:0;width:1px;border-radius:1px;background:var(--line)}
.comment-content{min-width:0}
.comment-author{display:inline-block;font-size:13px;font-weight:600;line-height:1.5;color:var(--text)}
.comment-author:hover{text-decoration:underline}
.comment-body{margin:0;font-size:13px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}
.comment-actions{display:flex;align-items:center;gap:16px;margin-top:4px}
.comment-actions .btn.btn.ghost{min-height:24px;padding:0;border:0;border-radius:3px;font-size:12px;font-weight:400;color:var(--muted);text-decoration:underline;text-underline-offset:2px}
.comment-actions .btn.btn.ghost:not(:disabled):hover{color:var(--text);background:var(--ghost-hover)}
@media(max-width:740px){.comments{--comment-avatar-size:31px;--reply-indent:24px}}

.comment-heading{display:flex;align-items:center;min-height:var(--comment-avatar-size);flex-wrap:wrap;gap:4px 8px}
.comment-heading .comment-author{flex:1;min-width:80px}
.comment-sort{flex:none;margin-left:auto}
.comment-sort .space-trigger{padding:0 4px;font-size:11px}
.comment-sort .space-menu{left:auto;right:0}
