:root{font-family:ui-rounded,Avenir Next,system-ui,sans-serif;color:#493549;background:#f6f1eb;line-height:1.5}*{box-sizing:border-box}body{margin:0}a{color:#694b70}button,input,textarea,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid #694b70;outline-offset:2px}header{margin:auto;display:flex;align-items:center}.brand{text-decoration:none;color:#694b70}h1{font-size:clamp(2.35rem,6vw,4.6rem);line-height:1.06;margin:.2em auto;color:#694b70;font-family:Georgia,serif;font-weight:500}.eyebrow{margin:0 0 5px;color:#725e72;font-size:.84rem;font-weight:400}.button{border:0;background:#694b70;color:#fff;border-radius:999px;text-decoration:none;display:inline-block}.button:hover{background:#56385d}.section-title{display:flex;justify-content:space-between}.section-title h2{margin:0;color:#694b70;font:500 2rem Georgia,serif}select{margin-left:8px;padding:8px;border:1px solid #d7c6d5;border-radius:8px;background:#fff}.status{background:#e9ddeb;text-transform:uppercase;letter-spacing:.05em}.status.scheduled{background:#f6e3bb}form{display:grid;gap:15px}label{display:grid;gap:6px;font-size:.93rem}em{font-weight:400}input,textarea{border:1px solid #cbb9cb;border-radius:10px;background:#fffdfb}textarea{min-height:90px;max-height:200px;resize:vertical}.notice{background:#fff8d9;border:1px solid #e4cd89;padding:11px 14px;border-radius:10px}footer{text-align:center;color:#725e72;font-size:.88rem}.empty,.feedback,.login{max-width:650px;margin:90px auto;padding:25px}.feedback h1,.login h1{font-size:2.5rem}@media(max-width:680px){header{align-items:start}}.button,input,textarea,select,.vote-actions button{border-radius:6px}.suggestion-list{border-radius:8px}.status{border-radius:4px}#root,.app-shell{min-height:100dvh}.app-shell{display:flex;flex-direction:column}.app-shell>main{flex:1 0 auto}.app-shell>footer{margin-top:auto}body,button,input,textarea,select,label,.brand,.suggestion-row h3,.status{font-weight:400}h1,h2,.welcome h1,.section-title h2{font-weight:600}.button{font-weight:400}.segmented{display:inline-flex;flex:0 0 auto;align-items:center;gap:2px;padding:2px;border:1px solid #e7dadd;border-radius:8px;background:#f5edef;white-space:nowrap}.segmented button{height:28px;padding:0 11px;border:1px solid transparent;border-radius:6px;background:transparent;color:#725e72;line-height:1;-webkit-tap-highlight-color:transparent}.segmented button:hover{color:#493549}.segmented button[aria-pressed=true]{border-color:#e2d2d7;background:#fffdfb;color:#493549}.vote-actions button{transition:background-color .12s ease,border-color .12s ease,color .12s ease}.heart-vote{color:#8a5879}.heart-vote span{display:inline-flex;align-items:center;justify-content:center;font-size:012px;line-height:1}.heart-vote:hover,.heart-vote:focus-visible{background:#fceedf;border-color:#dfbec5}.skip-vote:hover,.skip-vote:focus-visible{background:#e9ddeb;border-color:#cdb9d0}.heart-vote.selected{background:#f2dce1;border-color:#c38c9d}.skip-vote.selected{background:#e1d2e3;border-color:#a783ab;color:#56385d;opacity:1}.vote-actions button:focus-visible{outline:2px solid #694b70;outline-offset:2px}::placeholder{color:#8b7988;font-weight:400}header{max-width:920px;padding:18px 22px}.brand{font-size:1.35rem;font-weight:650}.welcome{max-width:920px;margin:2px auto 8px;padding:10px 22px;display:flex;align-items:center;justify-content:space-between;gap:20px}.welcome h1{font:600 clamp(1.55rem,3.5vw,2rem) Georgia,serif;margin:0;color:#694b70}.welcome p{margin:4px 0 0;color:#725e72}.button{padding:10px 16px;font-weight:400;white-space:nowrap}.board{padding:10px max(18px,calc((100% - 880px)/2)) 18px;background:transparent}.section-title{align-items:center;margin-bottom:8px}.section-title h2{font-size:1.35rem;font-weight:600}.suggestion-list{background:#fffdfb;border:1px solid #e7dadd;border-radius:14px;overflow:hidden}.suggestion-row{display:flex;align-items:center;gap:16px;padding:10px 14px;border-bottom:1px solid #eee3e4}.suggestion-row:last-child{border-bottom:0}.suggestion-copy{min-width:0;flex:1}.suggestion-title-line{display:flex;align-items:center;gap:8px}.suggestion-row h3{margin:0;color:#56385d}.suggestion-row p{margin:2px 0;font-size:.92rem;color:#725e72}.suggestion-row a{font-size:.84rem}.status{padding:2px 7px;font-size:.62rem}.vote-actions{display:flex;align-items:center}.vote-actions button{border-radius:6px;display:inline-flex;align-items:center;justify-content:center;color:#694b70}.skip-vote{font-size:.88rem}.vote-actions button:hover,.vote-actions button:focus-visible{outline-offset:2px;opacity:1}input,textarea{padding:9px 10px}footer{padding:22px}.feedback,.login{margin:36px auto;padding:20px}.feedback h1,.login h1{font-size:2rem}@media(max-width:680px){.welcome{padding:8px 18px;align-items:flex-start}.welcome .button{margin-top:2px}.suggestion-row{padding:10px 12px;gap:9px}.suggestion-title-line{align-items:flex-start;flex-direction:column;gap:3px}.board{padding:14px 12px}}.welcome h1{font-size:clamp(2rem,3.3vw,2.25rem)}.welcome p,.suggestion-row p,.segmented button,.vote-count{font-family:ui-rounded,Avenir Next,system-ui,sans-serif;font-weight:400}.section-title h2{font-size:clamp(1.25rem,2.2vw,1.5rem);white-space:normal}.section-title>div{min-width:0}.suggestion-row h3{font-family:ui-rounded,Avenir Next,system-ui,sans-serif;font-size:1rem;font-weight:400}.suggestion-row p{font-size:.9rem}.segmented button{font-size:.85rem}.sort-control{margin-left:auto}.vote-actions{flex:0 0 auto;flex-direction:row;gap:5px}.vote-actions button{min-width:36px;height:36px;gap:4px;background:#f5edef;border:1px solid transparent}.vote-actions svg{display:block;flex:0 0 auto}.heart-vote{display:inline-flex;align-items:center;gap:4px;font-family:ui-rounded,Avenir Next,system-ui,sans-serif;font-size:14px;font-weight:400}.heart-vote svg,.skip-vote svg{width:16px;height:16px}.vote-count{display:inline-block;min-width:1ch;font-family:ui-rounded,Avenir Next,system-ui,sans-serif;font-size:14px;font-variant-numeric:tabular-nums;font-weight:400;line-height:1;text-align:left}.heart-vote{background:#f5edef}.skip-vote{background:#f5edef;opacity:1}label{font-weight:400}body.dialog-open{overflow:hidden}.idea-dialog{width:min(calc(100% - 32px),440px);max-height:calc(100dvh - 32px);margin:auto;padding:20px;overflow-y:auto;border:1px solid #e2d2d7;border-radius:8px;background:#fffdfb;color:#493549;z-index:1000}.idea-dialog::backdrop{background:#49354961}.idea-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.idea-dialog h2{margin:0;color:#694b70;font-family:ui-rounded,Avenir Next,system-ui,sans-serif;font-size:1.4rem;font-weight:600;line-height:1.25}.idea-dialog-header p{margin:4px 0 0;color:#725e72;font-size:.9rem;font-weight:400}.dialog-close{display:inline-grid;width:28px;height:28px;padding:0;place-items:center;border:0;border-radius:6px;background:#f5edef;color:#694b70;font-size:1.2rem;font-weight:400;line-height:1}.dialog-close:hover,.dialog-close:focus-visible{background:#e9ddeb}.idea-dialog form{gap:10px}.idea-dialog label{gap:5px;color:#56385d;font-size:.9rem;font-weight:400}.idea-dialog input,.idea-dialog textarea{border-color:#cbb9cb;border-radius:6px;padding:9px 10px;font-family:ui-rounded,Avenir Next,system-ui,sans-serif;font-size:.9rem;font-weight:400}.idea-dialog input{min-height:42px}.idea-dialog textarea{min-height:72px}.idea-dialog .button{width:100%;min-height:43px}.add-idea-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-family:ui-rounded,Avenir Next,system-ui,sans-serif;font-size:14px;font-weight:400}.add-idea-button svg{display:block;flex:0 0 auto}.add-idea-mobile,.floating-add-idea{display:none}.brand{display:inline-flex;align-items:center;gap:8px}.brand-logo{width:auto;height:32px;flex:0 0 auto;object-fit:contain}header{justify-content:flex-start}.site-header{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;max-width:none;margin:0;padding:18px max(18px,calc((100% - 880px)/2));text-align:left}.site-header .brand{display:inline-flex;width:fit-content;margin:0!important}.ideas-loading{margin:0;padding:24px 14px;color:#725e72;font-size:.9rem;font-weight:400;text-align:center}@media(max-width:680px){.welcome h1{font-size:clamp(1.625rem,8vw,1.75rem)}.section-title{align-items:center;gap:8px}.suggestion-row{align-items:center}.vote-actions{flex-direction:row}.vote-actions button{min-width:36px;height:36px}}@media(max-width:350px){.section-title{flex-wrap:wrap;align-items:flex-start;gap:5px}.sort-control{margin-left:0}}@media(max-width:640px){.site-header{padding:14px 18px}.brand{gap:7px}.brand-logo{width:auto;height:26px}.welcome{display:block}.welcome>div{width:100%}.welcome .add-idea-button{width:100%;min-height:43px;margin:12px 0 0;border-radius:6px}.add-idea-desktop{display:none}.add-idea-mobile{display:inline}.floating-add-idea{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:20;display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:44px;padding:0 14px;border:0;border-radius:7px;background:#694b70;color:#fff;font-family:ui-rounded,Avenir Next,system-ui,sans-serif;font-size:14px;font-weight:400;opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .16s ease,transform .16s ease}.floating-add-idea.visible{opacity:1;pointer-events:auto;transform:translateY(0)}.floating-add-idea svg{flex:0 0 auto}}@media(prefers-reduced-motion:reduce){.floating-add-idea{transition:none}}.feedback-invite{margin:4px auto 20px;padding:0 18px;color:#725e72;font-size:.9rem;font-weight:400;text-align:center}.feedback-invite-action{display:inline-flex;padding:0;border:0;background:none;font-size:inherit;align-items:center;gap:3px;color:#694b70;font-weight:400;text-decoration:underline;text-decoration-color:#cbb9cb;text-underline-offset:3px;white-space:nowrap}.feedback-invite-action:hover,.feedback-invite-action:focus-visible{text-decoration-color:currentColor}.general-feedback-form{display:grid;gap:10px}.feedback-privacy{margin:-2px 0 0;color:#8a7689;font-size:.8rem;font-weight:400}.feedback-dialog textarea{min-height:96px;resize:vertical}.feedback,.feedback-message{width:min(calc(100% - 36px),560px);margin:24px auto 44px;padding:0}.feedback h1,.feedback-message h1{margin:0;color:#694b70;font-family:Georgia,serif;font-size:clamp(1.625rem,3vw,1.875rem);font-weight:600;line-height:1.18}.feedback-kicker{margin:0 0 5px;color:#725e72;font-size:.84rem;font-weight:400}.feedback-intro{margin:7px 0 18px;color:#725e72;font-size:.94rem;font-weight:400}.feedback form{display:grid;gap:13px;margin-top:0}.feedback label{gap:5px;color:#56385d;font-size:.9rem;font-weight:400}.feedback textarea{min-height:60px;padding:9px 10px;border-color:#cbb9cb;border-radius:6px;color:#493549;font-family:ui-rounded,Avenir Next,system-ui,sans-serif;font-size:.9rem;font-weight:400}.feedback-rating{min-width:0;margin:0;padding:0 0 12px;border:0;border-bottom:1px solid #e7dadd}.feedback-rating legend{margin-bottom:8px;padding:0;color:#56385d;font-size:.95rem;font-weight:400}.feedback-hearts{display:flex;gap:6px}.feedback-hearts label{position:relative;display:inline-grid;width:40px;height:40px;place-items:center;border:1px solid transparent;border-radius:6px;background:#f5edef;color:#9e8598;cursor:pointer}.feedback-hearts label:hover{border-color:#c38c9d;background:#f2dce1;color:#8a5879}.feedback-hearts label:has(input:focus-visible){outline:2px solid #694b70;outline-offset:2px}.feedback-hearts label.selected{border-color:#c38c9d;background:#f2dce1;color:#8a5879}.feedback-hearts label.selected svg path{fill:currentColor}.feedback-rating-label{margin:6px 0 0;color:#8a5879;font-size:.86rem}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.feedback-submit{width:100%;min-height:43px;margin-top:2px}.feedback-submit:disabled,.feedback-rating:disabled .feedback-hearts label{cursor:default;opacity:.65}.feedback-message{padding-top:30px;text-align:center}.feedback-message-icon{display:inline-grid;width:34px;height:34px;margin-bottom:8px;place-items:center;border-radius:6px;background:#f5edef;color:#8a5879;font-family:Georgia,serif;font-size:1.35rem;font-weight:400}.feedback-message-icon.loading{font-family:ui-rounded,Avenir Next,system-ui,sans-serif}.feedback-message p{max-width:420px;margin:8px auto 16px;color:#725e72;font-size:.94rem;font-weight:400}.feedback-back{color:#694b70;font-size:.9rem;font-weight:400}@media(max-width:640px){.feedback,.feedback-message{width:min(calc(100% - 36px),560px);margin-top:18px}.feedback h1,.feedback-message h1{font-size:clamp(1.375rem,6vw,1.5rem)}.feedback-message{padding-top:22px}}input:focus,textarea:focus,select:focus{outline:none;border-color:#694b70}input:focus-visible,textarea:focus-visible{box-shadow:0 0 0 3px #694b7026}.login{width:min(calc(100% - 36px),440px);max-width:none;margin:24px auto 44px;padding:30px 0 0;text-align:center}.login h1{margin:0;color:#694b70;font-family:Georgia,serif;font-size:clamp(1.625rem,3vw,1.875rem);font-weight:600;line-height:1.18}.login p:not(.eyebrow,.notice){margin:8px auto 18px;color:#725e72;font-size:.94rem;font-weight:400}.admin{width:min(calc(100% - 36px),880px);margin:6px auto 44px}.admin h1{margin:0;color:#694b70;font-family:Georgia,serif;font-size:clamp(1.625rem,3vw,1.875rem);font-weight:600;line-height:1.18}.tabs{display:flex;gap:4px;margin:18px 0 16px;overflow-x:auto;border-bottom:1px solid #e7dadd;scrollbar-width:none}.tabs button{flex:0 0 auto;margin-bottom:-1px;padding:8px 10px;border:0;border-bottom:2px solid transparent;background:none;color:#725e72;font-size:.9rem;text-transform:capitalize}.tabs button:hover{color:#493549}.tabs .selected{border-bottom-color:#694b70;color:#493549}.admin-account{display:flex;align-items:center;gap:.3em;min-width:0;color:#725e72;font-size:.82rem;white-space:nowrap}.admin-account span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis}.admin-signout,.site-header .brand{flex-shrink:0}.admin-signout{margin-left:10px;padding:2px 0;border:0;background:none;color:#694b70;font-size:inherit;text-decoration:underline;text-decoration-color:#cbb9cb;text-underline-offset:3px}.admin-signout:hover{text-decoration-color:currentColor}.tab-count{margin-left:5px;color:#9a879a;font-size:.8rem}.admin-section-heading{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px}.admin-section-heading span{color:#725e72;font-size:.84rem}.admin-section-title{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;margin-bottom:10px}.admin h2{margin:0;color:#694b70;font-family:Georgia,serif;font-size:1.25rem;font-weight:600}.admin-section-actions{display:flex;margin-left:auto;flex-wrap:wrap;align-items:center;gap:8px}.feedback-tools{display:flex;align-items:center;gap:8px;min-width:0}.feedback-tools select{max-width:220px}.admin-action{height:28px;padding:0 11px;border:1px solid #e2d2d7;border-radius:6px;background:#fffdfb;color:#694b70;font-size:.85rem;white-space:nowrap}.admin-action:hover{border-color:#c2acc0;background:#f5edef}.admin-action.danger{color:#9a4a5c}.admin select{height:28px;margin:0;padding:0 26px 0 9px;border:1px solid #e2d2d7;border-radius:6px;appearance:none;background:#fffdfb url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23725e72' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 9px center;cursor:pointer;color:#493549;font-size:.85rem}.inline{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.inline input{flex:1 1 160px;min-width:0;height:36px;padding:0 10px;border:1px solid #cbb9cb;border-radius:6px;font-size:.9rem}.inline select{height:36px}.inline .button{height:36px;padding:0 14px;font-size:.9rem}.admin-list{overflow:hidden;border:1px solid #e7dadd;border-radius:14px;background:#fffdfb}.admin-row{display:flex;align-items:center;justify-content:space-between;gap:6px 14px;padding:7px 14px}.admin-row+.admin-row{border-top:1px solid #efe5e7}.admin-row-main{display:flex;flex:1 1 auto;flex-wrap:wrap;align-items:baseline;gap:0 10px;min-width:0}.admin-row-main strong{color:#493549;font-size:.95rem;font-weight:400;overflow-wrap:anywhere}.admin-row-main span{overflow-wrap:anywhere;color:#725e72;font-size:.82rem}.pending-tag{color:#9a879a;font-size:.74rem}.admin-row-main p{flex-basis:100%;margin:2px 0 0;color:#493549;font-size:.9rem}.admin-date{margin-left:auto;white-space:nowrap}.admin-row-main .admin-hearts{white-space:nowrap;color:#c38c9d;letter-spacing:1px}.admin-row-actions{display:flex;flex:0 0 auto;flex-wrap:wrap;align-items:center;gap:6px}.admin select:hover{border-color:#c2acc0}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.idea-dialog .dialog-actions .button{width:auto;min-height:36px;padding:0 16px}.dialog-actions .admin-action{height:36px;padding:0 14px}.admin-action.icon{display:inline-grid;width:28px;padding:0;place-items:center}.admin-row.idea-row{display:grid;grid-template-areas:"title counts actions";grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:2px 16px}.idea-title{grid-area:title;color:#493549;font-size:.95rem;font-weight:400;overflow-wrap:anywhere}.idea-counts{display:flex;grid-area:counts;gap:12px;color:#725e72;font-size:.82rem}.idea-counts span{display:inline-flex;align-items:center;gap:4px;min-width:34px}.idea-row .admin-row-actions{grid-area:actions}.admin-empty{margin:0;padding:18px 14px;color:#725e72;font-size:.9rem;text-align:center}@media(max-width:640px){.admin-row{flex-wrap:wrap;padding-block:9px}.admin-date{flex-basis:100%;margin-left:0}.admin-row-actions{flex-shrink:1;min-width:0;row-gap:16px}.admin-row.idea-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}.idea-title{flex:1 1 100%}.idea-counts{gap:8px}.idea-counts span{min-width:0}.idea-row .admin-row-actions{flex-wrap:nowrap;margin-left:auto}.team-row .admin-row-main{display:contents}.team-row .admin-row-main strong{flex:1 1 100%}.team-row .admin-row-actions{margin-left:auto}.event-row .admin-row-main{flex:1 1 100%}.event-row .admin-row-actions{margin-left:auto}.admin-action,.admin-section-actions .segmented button{position:relative}.admin-action:after,.admin-section-actions .segmented button:after{position:absolute;inset:-9px 0;content:""}.admin-section-actions .segmented button:after{inset:-8px 0}.feedback-tools .admin-action:after{inset:-6px 0 -9px}.admin-action.icon:after{inset:-9px -3px}.admin-signout{position:relative}.admin-signout:after{position:absolute;inset:-13px -6px;content:""}.inline .button{flex:1 1 100%}.admin-section-actions{width:100%;row-gap:12px}.admin-section-actions .segmented{flex:1 1 100%}.admin-section-actions .segmented button{flex:1 1 0}.feedback-tools{flex:1 1 100%}.feedback-tools select{flex:1 1 0;min-width:0;max-width:none}.feedback-tools>.admin-action{margin-left:auto}.admin-account span:nth-child(2){display:none}.tabs{gap:0}.tabs button{padding:8px 7px;font-size:.85rem}}@media(max-width:359px){.admin h1{font-size:1.375rem}}
