:root{--mauve:#96879d;--mauve-dark:#7c6f84;--mauve-tint:#efe9f1;--sage:#929673;--sage-dark:#767a5b;--sage-tint:#eef0e6;--blush:#d8c7c0;--blush-soft:#e9ddd8;--linen:#e4e4dd;--ink:#332f38;--ink-soft:#6d6774;--line:#d9cfd6;--white:#fffdfb}html{scrollbar-gutter:stable}body{color:var(--ink);background:var(--linen);-webkit-font-smoothing:antialiased;background-image:radial-gradient(circle at 1px 1px,#96879d24 1px,#0000 0);background-size:22px 22px;margin:0;font-family:DM Sans,system-ui,sans-serif}h1,h2,h3,h4,h5,h6{font-family:Playfair Display,serif;font-weight:600}.card{background:var(--white);border:1px solid var(--line);padding:1.25rem 1.5rem}.badge{letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:.25rem .625rem;font-size:.6875rem;font-weight:700;display:inline-block}.badge-category{background:var(--blush-soft);color:#8a5f4f}.badge-status{background:0 0;border:1px solid #0000}.badge-status-submitted{border-color:var(--line);color:var(--ink-soft)}.badge-status-under_review{color:#96772f;background:#f8f3e6;border-color:#c69a3f}.badge-status-planned{border-color:var(--mauve);color:var(--mauve-dark);background:var(--mauve-tint)}.badge-status-in_progress{color:#43648c;background:#eaf1f9;border-color:#5b84b3}.badge-status-shipped{border-color:var(--sage);color:var(--sage-dark);background:var(--sage-tint)}.badge-status-declined{color:#8a4f4f;background:#f6ecec;border-color:#b98a8a}.row-select{font:inherit;border:1px solid var(--line);background:var(--white);color:var(--ink);border-radius:6px;padding:.375rem .625rem}.row-select.st-submitted{border-color:var(--line);color:var(--ink-soft)}.row-select.st-under_review{color:#96772f;background:#f8f3e6;border-color:#c69a3f}.row-select.st-planned{border-color:var(--mauve);color:var(--mauve-dark);background:var(--mauve-tint)}.row-select.st-in_progress{color:#43648c;background:#eaf1f9;border-color:#5b84b3}.row-select.st-shipped{border-color:var(--sage);color:var(--sage-dark);background:var(--sage-tint)}.row-select.st-declined{color:#8a4f4f;background:#f6ecec;border-color:#b98a8a}.site-header{background:var(--white);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.5rem;display:flex}.site-header-start{align-items:center;gap:1.5rem;display:flex}.wordmark{align-items:center;display:flex}.wordmark-logo{width:auto;height:28px;display:block}.wordmark-fallback{color:var(--ink);white-space:nowrap;font-family:Playfair Display,serif;font-size:1.25rem;font-weight:600}.nav{gap:4px;display:flex}.nav a{letter-spacing:.3px;text-transform:uppercase;color:var(--ink-soft);padding:12px 18px 14px;font-family:DM Sans,sans-serif;font-size:13.5px;font-weight:700;text-decoration:none;transition:color .15s;position:relative}.nav a:hover{color:var(--mauve-dark)}.nav a[aria-current=page]{color:var(--mauve)}.nav a[aria-current=page]:after{content:"";background-image:repeating-linear-gradient(-45deg, var(--mauve) 0, var(--mauve) 3px, transparent 3px, transparent 6px);height:3px;position:absolute;bottom:0;left:14px;right:14px}.auth-status{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.auth-status input{min-width:0;color:var(--ink);background:var(--white);border:1px solid var(--line);padding:.5rem .625rem;font-family:DM Sans,sans-serif;font-size:.8125rem}.auth-status input:focus{border-color:var(--mauve);outline:none}.auth-status button[type=submit]{background:var(--mauve);color:var(--white);cursor:pointer;border:none;padding:.5rem .875rem;font-family:DM Sans,sans-serif;font-size:.8125rem;font-weight:700}.auth-status button[type=submit]:hover{background:var(--mauve-dark)}.auth-status button[type=submit]:disabled{opacity:.6;cursor:wait}.auth-status button[type=button]{color:var(--mauve);cursor:pointer;background:0 0;border:none;padding:0;font-size:.8125rem;text-decoration:underline}.auth-status .signed-in-email{color:var(--ink-soft);font-size:.8125rem}.auth-status .sign-out-btn{background:var(--white);color:var(--ink);border:1px solid var(--line);cursor:pointer;padding:.5rem .875rem;font-family:DM Sans,sans-serif;font-size:.8125rem;font-weight:700}.auth-status .sign-out-btn:hover{border-color:var(--ink-soft)}.auth-status .error{color:#b00020;font-size:.875rem}main{padding:1.5rem}.error{color:#b00020}.new-request-toggle{border:1px solid var(--mauve);background:var(--mauve);color:var(--white);font:inherit;cursor:pointer;border-radius:8px;margin:.5rem 0;padding:.5rem 1rem}.new-request-toggle[aria-disabled=true]{opacity:.6;cursor:not-allowed}.submit-feature-dialog{border:none;border-radius:12px;width:90vw;max-width:32rem;padding:0;box-shadow:0 8px 30px #0003}.submit-feature-dialog::backdrop{background:#00000080}.submit-feature-form{flex-direction:column;gap:.75rem;margin:0;padding:1.5rem;display:flex}.submit-feature-form label{flex-direction:column;gap:.25rem;font-size:.875rem;font-weight:600;display:flex}.submit-feature-form input,.submit-feature-form textarea,.submit-feature-form select{font:inherit;border:1px solid var(--line);border-radius:6px;padding:.5rem}.submit-feature-form-actions{gap:.75rem;display:flex}.submit-feature-form-actions button{font:inherit;cursor:pointer;border-radius:8px;padding:.5rem 1rem}.submit-feature-form-actions button[type=submit]{border:1px solid var(--mauve);background:var(--mauve);color:var(--white)}.submit-feature-form-actions button[type=button]{border:1px solid var(--mauve);background:var(--white);color:var(--mauve)}.submit-feature-form-actions button:disabled{opacity:.6;cursor:wait}.board-filters{flex-wrap:wrap;align-items:flex-start;gap:1.5rem;margin:1rem 0 1.5rem;display:flex}.board-filters select{font:inherit;border:1px solid var(--line);background:var(--white);color:var(--ink);border-radius:6px;padding:.5rem .75rem;font-size:.8125rem}.board-filters>label{flex-direction:column;gap:.25rem;font-size:.875rem;font-weight:600;display:flex}.filter-dropdown{position:relative}.filter-btn{font:inherit;color:var(--ink);background:var(--white);border:1px solid var(--line);cursor:pointer;border-radius:6px;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.8125rem;font-weight:700;display:inline-flex}.filter-btn:hover,.filter-btn.open{border-color:var(--mauve)}.filter-btn .chevron{width:9px;height:9px;color:var(--ink);transition:transform .15s}.filter-btn.open .chevron{transform:rotate(180deg)}.filter-count{background:var(--mauve);color:var(--white);border-radius:50%;justify-content:center;align-items:center;min-width:17px;height:17px;padding:0 4px;font-size:.6875rem;font-weight:700;display:inline-flex}.filter-panel{background:var(--white);border:1px solid var(--line);z-index:20;width:230px;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 10px 30px #332f3824}.filter-panel-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:.75rem .875rem .625rem;display:flex}.filter-panel-head span{letter-spacing:.4px;text-transform:uppercase;color:var(--ink-soft);font-size:.6875rem;font-weight:700}.filter-clear{color:var(--mauve);cursor:pointer;background:0 0;border:none;padding:0;font-size:.75rem;font-weight:700}.filter-clear:hover{text-decoration:underline}.filter-options{max-height:260px;padding:.375rem;overflow-y:auto}.filter-option{cursor:pointer;text-align:left;flex-direction:row;align-items:center;gap:.625rem;padding:.5625rem .5rem;font-size:.84375rem;font-weight:400;display:flex}.filter-option:hover{background:var(--linen)}.filter-option input[type=checkbox]{appearance:none;border:1.5px solid var(--line);background:var(--white);cursor:pointer;flex:0 0 16px;justify-content:center;align-items:center;width:16px;height:16px;display:inline-flex;position:relative}.filter-option input[type=checkbox]:checked{background:var(--mauve);border-color:var(--mauve)}.filter-option input[type=checkbox]:checked:after{content:"";border:solid var(--white);border-width:0 2px 2px 0;width:5px;height:9px;position:absolute;top:1px;left:4px;transform:rotate(40deg)}.filter-option-count{color:var(--ink-soft);margin-left:auto;font-size:.75rem}.feature-list{flex-direction:column;gap:.75rem;display:flex}.feature-card{background:var(--white);border:1px solid var(--line);border-radius:8px;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem;display:flex}.feature-card-main h3{margin:0 0 .25rem}.feature-card-main p{color:var(--ink-soft);margin:0 0 .5rem}.feature-card-badges{gap:.5rem;display:flex}.upvote-control{border:1px solid var(--line);background:var(--white);cursor:pointer;min-width:3.5rem;font:inherit;border-radius:8px;flex-direction:column;align-items:center;gap:.125rem;padding:.5rem .75rem;display:flex}.upvote-control:disabled{cursor:wait;opacity:.7}.upvote-control-count{font-weight:700}.upvote-control-label{text-transform:uppercase;font-size:.75rem}.upvote-control-voted{background:var(--mauve);border-color:var(--mauve);color:var(--white)}.feature-card-owner-actions{gap:.75rem;margin-top:.5rem;display:flex}.feature-card-owner-actions button{color:var(--mauve);cursor:pointer;background:0 0;border:none;padding:0;font-size:.875rem;text-decoration:underline}.feature-card-editing .feature-card-main{flex-direction:column;gap:.5rem;width:100%;display:flex}.feature-card-edit-title,.feature-card-edit-description{font:inherit;border:1px solid var(--line);border-radius:6px;padding:.5rem}.feature-card-edit-actions{gap:.75rem;display:flex}.feature-card-edit-actions button{font:inherit;cursor:pointer;border-radius:8px;padding:.5rem 1rem}.feature-card-edit-actions button:disabled{opacity:.6;cursor:wait}.feature-card-save-btn{border:1px solid var(--mauve);background:var(--mauve);color:var(--white)}.feature-card-cancel-btn{border:1px solid var(--mauve);background:var(--white);color:var(--mauve)}.roadmap-section{margin:0 0 2rem}.release-list{flex-direction:column;gap:.75rem;display:flex}.release-group{background:var(--white);border:1px solid var(--line);border-radius:8px;padding:1rem}.release-group-header{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.release-group-header h3{margin:0}.release-group-meta{align-items:center;gap:.75rem;display:flex}.release-date{color:var(--ink-soft);white-space:nowrap;font-size:.875rem}.release-summary{color:var(--ink-soft);margin:.5rem 0 0}.release-empty{color:var(--ink-soft);margin:.75rem 0 0;font-size:.875rem}.release-feature-list{flex-direction:column;gap:.5rem;margin:.75rem 0 0;padding:0;list-style:none;display:flex}.release-feature-item{border-top:1px solid var(--line);padding:.5rem 0}.release-feature-item:first-child{border-top:none;padding-top:0}.release-feature-title{margin-right:.5rem;font-weight:600}.release-feature-description{color:var(--ink-soft);margin:.25rem 0 0}.admin-filters{flex-wrap:wrap;align-items:flex-start;gap:1.5rem;margin:1rem 0 1.5rem;display:flex}.admin-filters>label{flex-direction:column;gap:.25rem;font-size:.875rem;font-weight:600;display:flex}.admin-filters select{font:inherit;border:1px solid var(--line);border-radius:6px;padding:.5rem}.admin-status-filter{border:1px solid var(--line);border-radius:6px;flex-wrap:wrap;gap:.5rem 1rem;padding:.5rem .75rem;display:flex}.admin-status-filter legend{padding:0 .25rem;font-size:.875rem;font-weight:600}.admin-status-filter-option{align-items:center;gap:.375rem;font-size:.875rem;font-weight:400;display:flex}.admin-table-wrap{overflow-x:auto}.admin-table{border-collapse:collapse;background:var(--white);border:1px solid var(--line);width:100%}.admin-table th,.admin-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:.75rem}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table th{text-transform:uppercase;letter-spacing:.02em;color:var(--ink-soft);background:var(--linen);font-size:.75rem}.admin-table select{font:inherit;border:1px solid var(--line);border-radius:6px;padding:.375rem}.admin-feature-title{margin:0 0 .25rem;font-weight:600}.admin-feature-description{color:var(--ink-soft);margin:0;font-size:.875rem}.admin-description-toggle{color:var(--mauve);cursor:pointer;background:0 0;border:none;margin-left:.375rem;padding:0;font-size:.875rem;text-decoration:underline}.admin-row-message{margin:.375rem 0 0;font-size:.8125rem}.admin-row-message-error{color:#b00020}.admin-row-message-prompt{color:#8a5b00}.admin-row-message-success{color:#1a7a3c}.admin-tabs{border-bottom:1px solid var(--line);gap:.5rem;margin:1rem 0 1.5rem;display:flex}.admin-tab{font:inherit;color:var(--ink-soft);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:.5rem 1rem;font-weight:600}.admin-tab-active{color:var(--mauve-dark);border-bottom-color:var(--mauve)}.admin-form{flex-direction:column;gap:.75rem;max-width:28rem;margin:0 0 1.5rem;display:flex}.rm-layout{grid-template-columns:340px 1fr;align-items:start;gap:1.75rem;display:grid}@media (width<=860px){.rm-layout{grid-template-columns:1fr}}.rm-form{background:var(--white);border:1px solid var(--line);max-width:none;margin:0;padding:1.375rem}.rm-form h3{margin:0 0 1rem;font-size:1rem}.rm-form .admin-form-actions button[type=submit]{width:100%}.admin-form label{flex-direction:column;gap:.25rem;font-size:.875rem;font-weight:600;display:flex}.admin-form input,.admin-form textarea,.admin-form select{font:inherit;border:1px solid var(--line);border-radius:6px;padding:.5rem}.admin-form-actions{gap:.75rem;display:flex}.admin-form-actions button{font:inherit;cursor:pointer;border-radius:8px;padding:.5rem 1rem}.admin-form-actions button[type=submit]{border:1px solid var(--mauve);background:var(--mauve);color:var(--white)}.admin-form-actions button[type=button]{border:1px solid var(--mauve);background:var(--white);color:var(--mauve)}.admin-form-actions button:disabled{opacity:.6;cursor:wait}.admin-table-link{color:var(--mauve);cursor:pointer;font:inherit;background:0 0;border:none;padding:0;font-weight:600;text-decoration:underline}.admin-back-link{color:var(--mauve);cursor:pointer;font:inherit;background:0 0;border:none;margin-bottom:1rem;padding:0;text-decoration:underline}.admin-release-summary h3{margin:0 0 .25rem}.admin-release-summary p{color:var(--ink-soft);margin:0 0 .5rem}.admin-release-summary button{border:1px solid var(--mauve);background:var(--white);color:var(--mauve);font:inherit;cursor:pointer;border-radius:8px;padding:.375rem .75rem}.admin-assigned-feature-list{flex-direction:column;gap:.5rem;margin:0 0 1.5rem;padding:0;list-style:none;display:flex}.admin-assigned-feature{border:1px solid var(--line);border-radius:8px;align-items:center;gap:.75rem;padding:.625rem .75rem;display:flex}.admin-assigned-feature .admin-feature-title{flex:1;margin:0}.admin-assigned-feature button{border:1px solid var(--mauve);background:var(--white);color:var(--mauve);font:inherit;cursor:pointer;border-radius:8px;padding:.375rem .75rem}.admin-assigned-feature button:disabled{opacity:.6;cursor:wait}.admin-combobox{max-width:24rem;position:relative}.admin-combobox input{box-sizing:border-box;width:100%;font:inherit;border:1px solid var(--line);border-radius:6px;padding:.5rem}.admin-combobox-list{z-index:1;background:var(--white);border:1px solid var(--line);border-radius:6px;max-height:16rem;margin:0;padding:.25rem;list-style:none;position:absolute;top:calc(100% + .25rem);left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #0000001f}.admin-combobox-option{text-align:left;width:100%;font:inherit;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.5rem;display:block}.admin-combobox-option:hover{background:var(--mauve-tint)}.admin-combobox-hint{color:var(--ink-soft);font-size:.8125rem}.admin-combobox-empty{color:var(--ink-soft);padding:.5rem;font-size:.875rem}
