:root{--color-bg:#fcf9f8;--color-surface:#fff;--color-surface-alt:#f6f3f2;--color-border:#e2bebc;--color-border-soft:#eae2e1;--color-text:#1c1b1b;--color-text-muted:#5a403f;--color-scarlet:#8d001a;--color-scarlet-hover:#73001a;--color-scarlet-soft:#ffdad8;--color-emerald:#1f6b42;--color-emerald-soft:#a5f0bc;--color-gold:#cca72f;--color-gold-soft:#ffe088;--color-primary:var(--color-scarlet);--color-primary-hover:var(--color-scarlet-hover);--color-incomplete:#8e706f;--color-in_progress:#cca72f;--color-blocked:#8d001a;--color-complete:#1f6b42;--color-event-chapter:#8e706f;--color-event-1:#8d001a;--color-event-2:#1f6b42;--color-event-3:#cca72f;--color-event-4:#b11e2d;--color-event-5:#257046;--color-event-6:#735c00;--radius:4px;--radius-lg:12px;--shadow:0 1px 2px #8d001a0f, 0 2px 8px #8d001a0a;--space-1:4px;--space-2:8px;--space-3:16px;--space-4:24px;--space-5:32px;--font-sans:"Work Sans", system-ui, "Segoe UI", Roboto, sans-serif;--font-serif:"Libre Caslon Text", Georgia, "Times New Roman", serif}*{box-sizing:border-box}body{font-family:var(--font-sans);color:var(--color-text);background:var(--color-bg);margin:0}#root{min-height:100vh}h1,h2,h3{font-family:var(--font-serif);font-weight:700}a{color:var(--color-primary)}.app-shell{min-height:100dvh;display:flex}.app-main{flex:1;min-width:0}.topbar{display:none}.sidebar{width:256px;height:100dvh;padding:var(--space-4) var(--space-3);background:var(--color-surface);border-right:1px solid var(--color-border);flex-direction:column;flex-shrink:0;align-self:flex-start;display:flex;position:sticky;top:0}.sidebar__brand{align-items:center;gap:var(--space-2);margin-bottom:var(--space-5);padding:0 var(--space-1);min-width:0;display:flex}.sidebar__crest{object-fit:contain;flex-shrink:0;width:44px;height:44px}.sidebar__chapter{font-family:var(--font-serif);color:var(--color-scarlet);margin:0;font-size:22px;font-weight:700;line-height:1.1}.sidebar__subtitle{letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);opacity:.75;margin:2px 0 0;font-size:11px}.sidebar__close{display:none}.sidebar__nav{gap:var(--space-1);flex-direction:column;flex:1;display:flex}.sidebar__link{padding:12px var(--space-3);border-radius:var(--radius-lg);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);border-right:4px solid #0000;font-size:12px;font-weight:600;text-decoration:none;transition:background .15s,color .15s}.sidebar__link:hover{background:var(--color-surface-alt);color:var(--color-scarlet)}.sidebar__link.active{background:var(--color-scarlet-soft);color:var(--color-scarlet);border-right-color:var(--color-scarlet)}.sidebar__footer{border-top:1px solid var(--color-border-soft);padding-top:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}.sidebar__user{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.sidebar__name{font-size:13px;font-weight:600}.sidebar__signout{width:100%}.sidebar__scrim{display:none}@media (width<=768px){.app-shell{flex-direction:column}.topbar{z-index:60;justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);padding-top:calc(var(--space-2) + env(safe-area-inset-top));background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;position:sticky;top:0}.topbar .sidebar__brand{margin-bottom:0}.topbar__toggle{border-radius:var(--radius);width:44px;height:44px;color:var(--color-scarlet);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.topbar__toggle:active{background:var(--color-surface-alt)}.sidebar__scrim{z-index:70;background:#00000073;display:block;position:fixed;inset:0}.sidebar{z-index:80;width:min(300px,84vw);height:100%;max-height:100dvh;padding:var(--space-3);padding-top:calc(var(--space-3) + env(safe-area-inset-top));padding-bottom:calc(var(--space-3) + env(safe-area-inset-bottom));border-right:1px solid var(--color-border);visibility:hidden;transition:transform .2s,visibility .2s;position:fixed;top:0;left:0;overflow-y:auto;transform:translate(-100%);box-shadow:0 0 40px #00000040}.sidebar--open{visibility:visible;transform:translate(0)}.sidebar__close{width:44px;height:44px;margin:calc(var(--space-2) * -1) calc(var(--space-2) * -1) 0 0;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;align-self:flex-end;font-size:26px;line-height:1;display:block}.sidebar__brand{margin-bottom:var(--space-3)}.sidebar__link{padding:14px var(--space-3);font-size:13px}}@media (prefers-reduced-motion:reduce){.sidebar{transition:none}}.page{width:100%;max-width:1200px;padding:var(--space-5) var(--space-4);margin:0 auto}.page h1{color:var(--color-scarlet);letter-spacing:-.01em;overflow-wrap:break-word;margin:0;font-size:clamp(26px,7vw,36px)}.page__header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.page-loading{padding:var(--space-5);text-align:center;color:var(--color-text-muted)}.login-page{justify-content:center;align-items:center;gap:var(--space-3);text-align:center;min-height:100vh;padding:var(--space-4);flex-direction:column;display:flex}.login-page .intake-actions{justify-content:center}.login-page__logo{width:320px;max-width:80%;height:auto;margin-bottom:var(--space-2)}.login-page h1{color:var(--color-scarlet);margin:0;font-size:32px}.login-page p{color:var(--color-text-muted);max-width:360px}.login-choice{gap:var(--space-3);flex-wrap:wrap;justify-content:center;display:flex}.login-choice .button{min-width:150px;padding:12px 24px;font-size:16px}.login-welcome{max-width:460px;color:var(--color-text);line-height:1.6}.login-hint{max-width:420px;font-size:14px}.back-link{margin-bottom:var(--space-2);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);font-size:13px;font-weight:600;text-decoration:none;display:inline-block}.back-link:hover{color:var(--color-scarlet)}.empty-state{color:var(--color-text-muted)}.role-badge{border-radius:var(--radius);letter-spacing:.04em;text-transform:uppercase;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.role-badge--officer{background:var(--color-scarlet-soft);color:var(--color-scarlet)}.role-badge--member{background:var(--color-emerald-soft);color:var(--color-emerald)}.role-badge--pledge{background:var(--color-gold-soft);color:#574500}.role-badge--pending{background:var(--color-border-soft);color:var(--color-text-muted)}.admin-section{margin-bottom:var(--space-5)}.admin-section h2{color:var(--color-scarlet);margin:0 0 var(--space-3);font-size:22px}.cleared-note{margin-left:var(--space-2);color:var(--color-text-muted);font-size:11px;font-style:italic}.scribe-pill{margin-left:var(--space-2);border-radius:var(--radius);background:var(--color-scarlet);color:#fff;letter-spacing:.04em;text-transform:uppercase;padding:2px 8px;font-size:10px;font-weight:700}.pending-identity{color:var(--color-text-muted);font-size:14px}.button{background:var(--color-scarlet);color:#fff;border-radius:var(--radius);font-family:var(--font-sans);cursor:pointer;border:none;padding:9px 18px;font-size:14px;font-weight:600;transition:background .15s,opacity .15s}.button:hover{background:var(--color-scarlet-hover)}.button:disabled{opacity:.5;cursor:not-allowed}.button--ghost{color:var(--color-emerald);border:2px solid var(--color-emerald);background:0 0;padding:7px 16px}.button--ghost:hover{background:#1f6b420f}.button--danger{background:var(--color-scarlet)}.button--warn{color:var(--color-scarlet);border:2px solid var(--color-scarlet);background:0 0;padding:7px 16px}.button--warn:hover:not(:disabled){background:var(--color-scarlet-soft)}.row-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.committee-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));display:grid}.committee-card{align-items:flex-start;gap:var(--space-2);background:var(--color-surface);border:1px solid var(--color-border-soft);border-top:3px solid var(--color-gold);border-radius:var(--radius);padding:var(--space-4);color:var(--color-text);box-shadow:var(--shadow);flex-direction:column;text-decoration:none;transition:transform .15s,box-shadow .15s;display:flex}.committee-card:hover{transform:translateY(-2px);box-shadow:0 12px 24px -8px #8d001a24}.committee-card h3{color:var(--color-scarlet);margin:0;font-size:20px}.committee-card p{color:var(--color-text-muted);margin:0;font-size:14px}.table-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.admin-table{border-collapse:collapse;background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius);width:100%;overflow:hidden}.admin-table th{text-align:left;padding:var(--space-2) var(--space-3);letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-muted);background:var(--color-surface-alt);border-bottom:1px solid var(--color-border-soft);font-size:11px}.admin-table td{text-align:left;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border-soft)}.admin-table select{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);padding:6px 10px;font-family:inherit;font-size:14px}.form-error{color:var(--color-scarlet);margin:0;font-size:14px}.status-form{gap:var(--space-2);margin:var(--space-3) 0;flex-direction:column;display:flex}.status-form label{letter-spacing:.03em;text-transform:uppercase;color:var(--color-text-muted);font-size:12px;font-weight:600}.status-form input,.status-form select,.status-form textarea{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);padding:9px 11px;font-family:inherit;font-size:14px}.status-form input:focus,.status-form select:focus,.status-form textarea:focus{border-color:var(--color-scarlet);outline:none;box-shadow:0 0 0 2px #8d001a1f}.toggle-row{margin-top:var(--space-1);justify-content:space-between;align-items:center;font-size:14px;font-weight:600;display:flex}.toggle{flex-shrink:0;width:44px;height:24px;display:inline-block;position:relative}.toggle input{opacity:0;width:0;height:0}.toggle__track{background:var(--color-border);border-radius:999px;transition:background .15s;position:absolute;inset:0}.toggle__track:before{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .15s;position:absolute;top:3px;left:3px}.toggle input:checked+.toggle__track{background:var(--color-emerald)}.toggle input:checked+.toggle__track:before{transform:translate(20px)}.login-page__policies{margin-top:var(--space-4);color:var(--color-text-muted);font-size:14px}@media (width<=768px){.login-choice{flex-direction:column;width:100%;max-width:320px}.page{padding:var(--space-4) var(--space-3);padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom))}.admin-section h2{font-size:20px}.admin-table select,.status-form input,.status-form select,.status-form textarea{font-size:16px}.back-link{padding:8px 0}.button{min-height:44px;padding:11px 18px}.button--ghost,.button--warn{padding:9px 16px}}@media (width<=700px){.admin-table--stacked,.admin-table--stacked tbody,.admin-table--stacked tr,.admin-table--stacked td{width:100%;display:block}.admin-table--stacked{background:0 0;border:none;border-radius:0;overflow:visible}.admin-table--stacked thead{display:none}.admin-table--stacked tbody tr{margin-bottom:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius)}.admin-table--stacked td{padding:var(--space-1) 0;border-bottom:none}.admin-table--stacked td[data-label]:before{content:attr(data-label);letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:2px;font-size:11px;font-weight:600;display:block}.admin-table--stacked td{overflow-wrap:anywhere}.admin-table--stacked select{width:100%}}.committee-card__actions{flex-wrap:wrap;gap:8px;margin-top:auto;display:flex}.committee-card__actions .button{padding:6px 12px;font-size:13px}.committee-archived-toggle{margin-bottom:var(--space-3);color:var(--color-text-muted);cursor:pointer;align-items:center;gap:8px;font-size:14px;display:inline-flex}.kanban-board{gap:var(--space-3);grid-template-columns:repeat(4,minmax(220px,1fr));align-items:start;display:grid}@media (width<=900px){.kanban-board{grid-template-columns:1fr}}.kanban-column{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-2);border-top:4px solid var(--column-color,var(--color-border))}.kanban-column--incomplete{--column-color:var(--color-incomplete)}.kanban-column--in_progress{--column-color:var(--color-in_progress)}.kanban-column--blocked{--column-color:var(--color-blocked)}.kanban-column--complete{--column-color:var(--color-complete)}.kanban-column__title{align-items:center;gap:var(--space-1);margin:var(--space-1) var(--space-1) var(--space-2);font-size:14px;display:flex}.kanban-column__count{color:var(--color-text-muted);font-weight:400}.kanban-column__tasks{gap:var(--space-2);flex-direction:column;display:flex}.kanban-column__empty{color:var(--color-text-muted);padding:var(--space-2);font-size:13px}.task-card{text-align:left;background:var(--color-bg);border:1px solid var(--color-border);border-left:4px solid var(--column-color,var(--color-border));border-radius:var(--radius);width:100%;padding:var(--space-2);cursor:pointer;font-family:inherit;display:block;position:relative}.task-card:hover{box-shadow:var(--shadow)}.task-card__title{margin:0 0 var(--space-1);font-size:14px}.task-card__assignee,.task-card__reason,.task-card__due{margin:0 0 var(--space-1);color:var(--color-text-muted);font-size:12px}.task-card__due{color:var(--color-scarlet);font-weight:600}.task-card__reason{text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.task-card__status{display:none}.task-card__sos{top:-8px;right:var(--space-2);background:var(--color-blocked);color:#fff;border-radius:999px;padding:2px 6px;font-size:10px;font-weight:700;position:absolute}.modal-overlay{padding:var(--space-5) var(--space-3);z-index:100;background:#0006;justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0;overflow-y:auto}.modal{background:var(--color-surface);border-radius:var(--radius);padding:var(--space-4);width:100%;max-width:480px;box-shadow:var(--shadow)}.modal__header{margin-bottom:var(--space-2);justify-content:space-between;align-items:center;display:flex}.modal__header h2{overflow-wrap:anywhere;min-width:0;margin:0;font-size:18px}.modal__close{cursor:pointer;width:40px;height:40px;color:var(--color-text-muted);background:0 0;border:none;flex-shrink:0;margin:-8px -8px -8px 0;font-size:24px;line-height:1}.modal__description{color:var(--color-text-muted);font-size:14px}.modal__assignee{margin:var(--space-1) 0;font-size:13px;font-weight:600}.modal__history-title{margin:var(--space-3) 0 var(--space-2);font-size:14px}.history-list{gap:var(--space-2);flex-direction:column;max-height:240px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.history-item{border-left:3px solid var(--color-border);padding:var(--space-1) var(--space-2);font-size:13px}.history-item--incomplete{border-left-color:var(--color-incomplete)}.history-item--in_progress{border-left-color:var(--color-in_progress)}.history-item--blocked{border-left-color:var(--color-blocked)}.history-item--complete{border-left-color:var(--color-complete)}.history-item__meta{gap:var(--space-2);color:var(--color-text-muted);display:flex}.history-item__reason{margin:var(--space-1) 0 0}.history-empty{color:var(--color-text-muted);font-size:13px}@media (width<=768px){.modal-overlay{padding:var(--space-3) var(--space-2);padding-bottom:calc(var(--space-5) + env(safe-area-inset-bottom))}.modal{max-width:none;padding:var(--space-3)}.modal__close{width:44px;height:44px}.history-list{max-height:none}}.calendar-controls{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.calendar-toggle{align-items:center;gap:var(--space-1);color:var(--color-text-muted);cursor:pointer;font-size:13px;font-weight:600;display:flex}.calendar-toggle input{accent-color:var(--color-scarlet)}.calendar-legend{gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.calendar-legend__item{align-items:center;gap:var(--space-2);border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);background:var(--color-surface);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);padding:8px 16px;font-size:11px;font-weight:700;display:flex}.calendar-legend__swatch{border-radius:999px;width:10px;height:10px;display:inline-block}.month-calendar{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow)}.month-calendar__nav{margin-bottom:var(--space-4);justify-content:space-between;align-items:center;display:flex}.month-calendar__nav h2{font-family:var(--font-serif);color:var(--color-scarlet);margin:0;font-size:30px}.month-calendar__grid{background:var(--color-border-soft);border:1px solid var(--color-border-soft);border-radius:var(--radius);grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.month-calendar__weekday{background:var(--color-surface-alt);padding:var(--space-2);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);text-align:center;font-size:11px;font-weight:700}.month-calendar__day{background:var(--color-surface);min-width:0;min-height:116px;padding:var(--space-2);gap:var(--space-1);flex-direction:column;display:flex}.month-calendar__day--blank{background:var(--color-bg)}.month-calendar__day-number{color:var(--color-text);font-size:13px;font-weight:600}.month-calendar__events{flex-direction:column;gap:3px;min-width:0;display:flex}.event-pill{border-radius:var(--radius);color:#fff;min-width:0;max-width:100%;font-family:var(--font-sans);text-align:left;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;border:none;border-left:3px solid #00000040;padding:3px 6px;font-size:11px;font-weight:700;overflow:hidden}.event-pill:hover{filter:brightness(.94)}.event-pill--task{background:var(--color-surface);border:1px solid;border-left-width:3px;font-weight:600}.event-pill--task:hover{filter:none;background:var(--color-surface-alt)}@media (width<=768px){.month-calendar{padding:var(--space-3) var(--space-2)}.month-calendar__nav{gap:var(--space-2);margin-bottom:var(--space-3)}.month-calendar__nav h2{text-align:center;font-size:19px}.month-calendar__nav-label{display:none}.month-calendar__day{min-height:64px;padding:3px}.month-calendar__weekday{letter-spacing:.02em;padding:6px 2px;font-size:10px}.month-calendar__day-number{font-size:12px}.event-pill{padding:2px 4px;font-size:10px}.calendar-legend{gap:var(--space-1);margin-bottom:var(--space-3)}.calendar-legend__item{padding:6px 10px;font-size:10px}}.month-agenda{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border-soft);gap:var(--space-2);flex-direction:column;display:flex}.month-agenda__empty{color:var(--color-text-muted);margin:0;font-size:14px}.month-agenda__day{align-items:flex-start;gap:var(--space-3);display:flex}.month-agenda__date{flex-direction:column;flex:0 0 34px;align-items:center;padding-top:6px;display:flex}.month-agenda__weekday{letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);font-size:10px;font-weight:700}.month-agenda__number{font-family:var(--font-serif);color:var(--color-scarlet);font-size:20px;line-height:1.1}.month-agenda__items{gap:var(--space-1);flex-direction:column;flex:1;min-width:0;margin:0;padding:0;list-style:none;display:flex}.month-agenda__item{width:100%;min-height:44px;padding:8px var(--space-2);background:var(--color-surface-alt);border:1px solid var(--color-border-soft);border-left:4px solid var(--color-border);border-radius:var(--radius);font:inherit;text-align:left;color:var(--color-text);cursor:pointer;align-items:center;font-size:14px;display:flex}.month-agenda__title{overflow-wrap:anywhere;min-width:0}.event-dot{border-radius:999px;flex-shrink:0;width:7px;height:7px}.event-dot--task{background:var(--color-surface);border:2px solid var(--color-border)}@media (width<=768px){.month-calendar__events{flex-flow:wrap;align-content:flex-start;gap:3px}}.pledge-subtitle{margin:var(--space-1) 0 0;color:var(--color-text-muted)}.pledge-section{margin-bottom:var(--space-5)}.pledge-section__head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.pledge-section__head h2{color:var(--color-scarlet);margin:0;font-size:24px}.pledge-week{margin-bottom:var(--space-4)}.pledge-week__label{margin:0 0 var(--space-2);font-family:var(--font-sans);letter-spacing:.06em;text-transform:uppercase;color:var(--color-gold);font-size:12px;font-weight:700}.pledge-tasklist{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.pledge-task{align-items:flex-start;gap:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border-soft);border-left:3px solid var(--color-gold);border-radius:var(--radius);padding:var(--space-3);display:flex}.pledge-task__check{width:18px;height:18px;accent-color:var(--color-emerald);cursor:pointer;flex-shrink:0;margin-top:3px}.pledge-task__body{flex-direction:column;flex:1;gap:2px;display:flex}.pledge-task__title{font-weight:600}.pledge-task__title.is-done{color:var(--color-text-muted);text-decoration:line-through}.pledge-task__desc{color:var(--color-text-muted);font-size:13px}.pledge-task__meta{align-items:center;gap:var(--space-3);flex-shrink:0;display:flex}.pledge-count{letter-spacing:.03em;text-transform:uppercase;color:var(--color-emerald);font-size:12px;font-weight:700}.pledge-edit{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;font-size:13px;font-weight:600;text-decoration:underline}.pledge-edit:hover{color:var(--color-scarlet)}.announcement-list{gap:var(--space-3);flex-direction:column;display:flex}.announcement{background:var(--color-surface);border:1px solid var(--color-border-soft);border-top:3px solid var(--color-scarlet);border-radius:var(--radius);padding:var(--space-4)}.announcement__head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.announcement__head h3{color:var(--color-scarlet);margin:0;font-size:18px}.announcement__body{margin:var(--space-2) 0;white-space:pre-wrap}.announcement__foot{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.announcement__meta{color:var(--color-text-muted);font-size:12px}.announcement__acked{color:var(--color-emerald);font-size:13px;font-weight:700}@media (width<=768px){.pledge-section__head,.announcement__head{flex-wrap:wrap}.pledge-section__head h2{font-size:20px}.pledge-task{gap:var(--space-2);padding:var(--space-3) var(--space-2);flex-wrap:wrap}.pledge-task__body{flex:200px;min-width:0}.pledge-task__meta{flex-basis:100%;justify-content:flex-end}.announcement{padding:var(--space-3)}.pledge-edit{padding:8px 0}.pledge-task__check{width:22px;height:22px}}.rush-page{width:100%;min-height:100dvh;padding:var(--space-4) var(--space-3);background:linear-gradient(180deg, var(--color-scarlet) 0 220px, var(--color-bg) 220px)}.rush-card{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);max-width:720px;box-shadow:var(--shadow);padding:var(--space-5) var(--space-4);margin:0 auto}.rush-card--done{text-align:center;margin-top:var(--space-5)}.rush-header{text-align:center;margin-bottom:var(--space-4)}.rush-header h1,.rush-card--done h1{margin:var(--space-2) 0;color:var(--color-scarlet)}.rush-header p,.rush-card--done p{max-width:46ch;color:var(--color-text-muted);margin:0 auto}.rush-page__crest{width:auto;height:72px}.rush-form{gap:var(--space-4);flex-direction:column;display:flex}.rush-fieldset{border:1px solid var(--color-border-soft);border-radius:var(--radius);padding:var(--space-3);gap:var(--space-3);flex-direction:column;margin:0;display:flex}.rush-fieldset legend{font-family:var(--font-serif);color:var(--color-scarlet);padding:0 var(--space-1);font-weight:700}.rush-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.rush-field{gap:var(--space-1);flex-direction:column;font-size:14px;font-weight:600;display:flex}.rush-field input,.rush-field select,.rush-field textarea{font:inherit;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);width:100%;padding:10px;font-weight:400}.rush-field textarea{resize:vertical}.rush-field input:focus,.rush-field select:focus,.rush-field textarea:focus{border-color:var(--color-scarlet);outline:none;box-shadow:0 0 0 2px #8d001a1f}.rush-submit{width:100%;padding:14px;font-size:16px}.rush-privacy{text-align:center;color:var(--color-text-muted);margin:0;font-size:13px}.rush-share{color:var(--color-text-muted)}.rush-share code{background:var(--color-surface-alt);border-radius:var(--radius);overflow-wrap:anywhere;padding:2px 6px}.rush-toolbar{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.rush-toolbar input,.rush-toolbar select{font:inherit;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);padding:8px 10px}.rush-toolbar input[type=search]{min-width:240px}.rush-count{color:var(--color-text-muted);margin-left:auto;font-size:13px}.rush-details-row td{background:var(--color-surface-alt)}.rush-details{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin:0;display:grid}.rush-details dt{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);font-size:12px}.rush-details dd{white-space:pre-wrap;margin:2px 0 0}.rush-signed-in{margin-top:var(--space-2);font-size:13px}.rush-done-actions{gap:var(--space-2);margin-top:var(--space-3);flex-direction:column;align-items:center;display:flex}.link-button{font:inherit;color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.pnm-head{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.pnm-stats{gap:var(--space-2);margin:var(--space-3) 0;flex-wrap:wrap;display:flex}.pnm-stat{min-width:132px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-soft);border-radius:var(--radius);background:var(--color-surface);font:inherit;text-align:left;cursor:pointer;flex-direction:column;align-items:flex-start;gap:2px;display:flex}.pnm-stat strong{font-family:var(--font-serif);font-size:24px;line-height:1}.pnm-stat span{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);font-size:12px}.pnm-stat--danger strong{color:var(--color-scarlet)}.pnm-stat--active{border-color:var(--color-scarlet);box-shadow:0 0 0 2px #8d001a1f}div.pnm-stat{cursor:default}.pnm-row--slipping td:first-child{box-shadow:inset 3px 0 0 var(--color-scarlet)}.pnm-stale{color:var(--color-scarlet);font-weight:600}.pnm-count{color:var(--color-text-muted);font-weight:400}.pnm-tag{margin-left:var(--space-1);background:var(--color-surface-alt);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;border-radius:999px;padding:1px 6px;font-size:11px;display:inline-block}.pnm-tag--archived{background:var(--color-scarlet-soft);color:var(--color-scarlet)}.pnm-actions{gap:var(--space-1);white-space:nowrap;display:flex}.pnm-detail-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.modal--wide{max-width:640px}.contact-log__heading{margin:var(--space-4) 0 var(--space-2);font-size:15px}.policy h2{font-family:var(--font-serif);color:var(--color-scarlet);margin:var(--space-4) 0 var(--space-1);font-size:18px}.policy p,.policy li{color:var(--color-text);line-height:1.6}.policy ul{padding-left:var(--space-3);gap:var(--space-1);flex-direction:column;display:flex}.policy__updated,.policy__nav{color:var(--color-text-muted);font-size:14px}.policy__nav{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--color-border-soft)}@media (width<=768px){.rush-page{padding:var(--space-3) var(--space-2);background:linear-gradient(180deg, var(--color-scarlet) 0 140px, var(--color-bg) 140px)}.rush-card{padding:var(--space-4) var(--space-3)}.rush-page__crest{height:56px}.rush-fieldset{padding:var(--space-3) var(--space-2)}.rush-field input,.rush-field select,.rush-field textarea,.rush-toolbar input,.rush-toolbar select{font-size:16px}.link-button{padding:8px 0}.pnm-stats{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.pnm-stat{min-width:0}.rush-toolbar input[type=search]{flex:100%;min-width:0}.rush-toolbar select{flex:1 1 calc(50% - var(--space-2));min-width:0}.rush-count{flex-basis:100%;margin-left:0}}@media (width<=700px){.admin-table--stacked .pnm-row--slipping{border-left:3px solid var(--color-scarlet)}.admin-table--stacked .pnm-row--slipping td:first-child{box-shadow:none}.admin-table--stacked .pnm-actions{gap:var(--space-2);margin-top:var(--space-2);white-space:normal;flex-wrap:wrap}.admin-table--stacked .pnm-actions .button{flex:1 1 calc(50% - var(--space-2))}.admin-table--stacked .rush-details-row{background:var(--color-surface-alt)}.admin-table--stacked .rush-details-row td{background:0 0}.rush-details{gap:var(--space-2);grid-template-columns:minmax(0,1fr)}.pnm-tag{margin:var(--space-1) 0 0;white-space:normal;display:inline-block}}.intake-page{max-width:780px;margin:0 auto}.intake-header{text-align:center;margin-bottom:var(--space-4)}.intake-header h1{margin:var(--space-2) 0;color:var(--color-scarlet)}.intake-header__note{max-width:52ch;color:var(--color-text-muted);margin:0 auto}.intake-gate{margin:var(--space-3) auto 0;background:var(--color-scarlet-soft);border-radius:var(--radius);max-width:52ch;padding:var(--space-2) var(--space-3);color:var(--color-scarlet);font-size:14px;font-weight:600}.intake-crest{width:auto;height:64px}.intake-form{gap:var(--space-4);flex-direction:column;display:flex}.intake-card{background:var(--color-surface);border:1px solid var(--color-border-soft);border-top:3px solid var(--color-scarlet);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:var(--space-4);gap:var(--space-3);flex-direction:column;display:flex}.intake-card h2{color:var(--color-scarlet);margin:0;font-size:22px}.intake-card h3{margin:0;font-size:18px}.intake-prose{font-family:var(--font-serif);margin:0;font-size:16px;line-height:1.7}.intake-question{background:var(--color-surface-alt);border-left:3px solid var(--color-gold);border-radius:var(--radius);padding:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}.intake-question__prompt{margin:0;font-weight:600}.intake-choice{gap:var(--space-2);flex-wrap:wrap;display:flex}.intake-choice__option{align-items:center;gap:var(--space-2);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer;padding:8px 14px;font-size:14px;font-weight:600;display:flex}.intake-choice__option.is-selected{border-color:var(--color-scarlet);background:var(--color-scarlet-soft)}.intake-choice__option input{accent-color:var(--color-scarlet);cursor:pointer}.intake-checkboxes{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.intake-checkbox{align-items:center;gap:var(--space-2);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer;padding:8px 12px;font-size:14px;display:flex}.intake-checkbox input{accent-color:var(--color-emerald);cursor:pointer;width:18px;height:18px}.intake-prefill-note{color:var(--color-emerald);margin:0;font-size:13px;font-weight:600}.intake-offices{gap:var(--space-3);flex-direction:column;margin:0;display:flex}.intake-offices dt{color:var(--color-scarlet);font-weight:700}.intake-offices dd{font-family:var(--font-serif);margin:2px 0 0;line-height:1.6}.intake-office-list{padding-left:var(--space-4);gap:var(--space-1);flex-direction:column;margin:0;font-weight:600;display:flex}.intake-brothers{gap:var(--space-3);flex-direction:column;display:flex}.intake-footnote{color:var(--color-text-muted);margin:0;font-size:13px}.intake-confirm{align-items:center;gap:var(--space-3);background:var(--color-scarlet-soft);border-radius:var(--radius);padding:var(--space-3);cursor:pointer;font-weight:700;display:flex}.intake-confirm input{width:20px;height:20px;accent-color:var(--color-scarlet);cursor:pointer;flex-shrink:0}.intake-actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.intake-savestate{margin:var(--space-2) 0 0;color:var(--color-text-muted);font-size:13px;font-weight:600}.intake-savestate.is-saved{color:var(--color-emerald)}.intake-savestate.is-error{color:var(--color-scarlet)}.intake-done{text-align:center;background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:var(--space-5) var(--space-4);margin-bottom:var(--space-4)}.intake-done h1{margin:var(--space-2) 0;color:var(--color-scarlet)}.intake-done__meta{margin:var(--space-3) auto;max-width:52ch;color:var(--color-text-muted)}.intake-done .intake-actions{justify-content:center}.intake-answers{gap:var(--space-4);flex-direction:column;display:flex}.intake-answers__group h4{margin:0 0 var(--space-2);letter-spacing:.06em;text-transform:uppercase;color:var(--color-gold);font-size:12px;font-weight:700}.intake-answers__brothers{padding-left:var(--space-4);margin:0}.intake-answers__free{white-space:pre-wrap;margin:0}.intake-callout{justify-content:space-between;align-items:center;gap:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border-soft);border-left:3px solid var(--color-scarlet);border-radius:var(--radius);padding:var(--space-3) var(--space-4);flex-wrap:wrap;display:flex}.intake-callout--done{border-left-color:var(--color-emerald)}.intake-callout__body{flex:260px}.intake-callout__body h3{margin:0 0 var(--space-1);color:var(--color-scarlet);font-size:18px}.intake-callout__body p{color:var(--color-text-muted);margin:0;font-size:14px}.intake-status{letter-spacing:.03em;text-transform:uppercase;font-size:12px;font-weight:700}.intake-status--submitted{color:var(--color-emerald)}.intake-status--draft{color:var(--color-gold)}.intake-status--none{color:var(--color-text-muted)}@media (width<=768px){.intake-card{padding:var(--space-3)}.intake-card h2{font-size:20px}.intake-prose{font-size:15px}.intake-actions .button{flex:100%}.intake-choice__option{flex:40%;justify-content:center}}.broadcast-intro{color:var(--color-text-muted);max-width:60ch;margin-top:0}.broadcast-form{gap:var(--space-3);max-width:720px;margin-bottom:var(--space-5);flex-direction:column;display:flex}.broadcast-form--narrow{max-width:480px}.broadcast-form input,.broadcast-form select,.broadcast-form textarea{font:inherit;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);width:100%;padding:10px;font-weight:400}.broadcast-form textarea{resize:vertical}.broadcast-form input:focus,.broadcast-form select:focus,.broadcast-form textarea:focus{border-color:var(--color-scarlet);outline:none;box-shadow:0 0 0 2px #8d001a1f}.broadcast-form input:disabled{background:var(--color-surface-alt);color:var(--color-text-muted)}.broadcast-optional{color:var(--color-text-muted);font-weight:400}.broadcast-channels{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.broadcast-channel{border:1px solid var(--color-border-soft);border-radius:var(--radius);cursor:pointer;grid-template-columns:auto 1fr;align-items:center;gap:8px;padding:10px 12px;font-size:14px;font-weight:600;display:grid}.broadcast-channel input{width:auto}.broadcast-channel small{color:var(--color-text-muted);grid-column:2;font-weight:400}.broadcast-optin{color:var(--color-text-muted);grid-template-columns:auto 1fr;align-items:start;gap:10px;font-size:14px;display:grid}.broadcast-optin input{width:auto;margin-top:3px}.broadcast-manual{border:1px solid var(--color-border-soft);border-left:3px solid var(--color-scarlet);border-radius:var(--radius);padding:var(--space-3);background:var(--color-surface-alt)}.broadcast-manual h3{margin:0 0 var(--space-1);font-family:var(--font-serif);color:var(--color-scarlet)}.broadcast-manual p{margin:0 0 var(--space-2);color:var(--color-text-muted);font-size:14px}.broadcast-manual__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.broadcast-results{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.broadcast-result{border-radius:var(--radius);background:var(--color-surface-alt);padding:8px 12px;font-size:14px}.broadcast-result--failed{color:var(--color-scarlet);background:#8d001a14}.broadcast-hint,.broadcast-saved{color:var(--color-text-muted);margin:0;font-size:14px}.broadcast-history{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.broadcast-history__item{border:1px solid var(--color-border-soft);border-radius:var(--radius);padding:var(--space-3);background:var(--color-surface)}.broadcast-history__item header{justify-content:space-between;align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.broadcast-history__meta{color:var(--color-text-muted);font-size:13px}.broadcast-history__body{margin:var(--space-1) 0 var(--space-2);white-space:pre-wrap}.broadcast-history__channels{flex-wrap:wrap;gap:6px;display:flex}.broadcast-chip{background:var(--color-surface-alt);color:var(--color-text-muted);border-radius:999px;padding:3px 8px;font-size:12px;font-weight:600}.broadcast-chip--sent{color:#147846;background:#1478461f}.broadcast-chip--failed{color:var(--color-scarlet);background:#8d001a1a}.broadcast-confirm{margin-top:var(--space-2)}.broadcast-result__addresses{color:var(--color-text-muted);margin-top:2px;font-size:13px;display:block}@media (width<=768px){.broadcast-form input,.broadcast-form select,.broadcast-form textarea{font-size:16px}.broadcast-manual{padding:var(--space-2)}.broadcast-manual__actions .button{flex:auto}.broadcast-history__item{padding:var(--space-2)}}.broadcast-audience-note{background:var(--color-surface-alt);border-left:3px solid var(--color-gold);border-radius:var(--radius);padding:var(--space-3);color:var(--color-text-muted);margin:0;font-size:14px}.birthday-fields{gap:var(--space-2);flex-wrap:wrap;align-items:center;margin-top:6px;display:flex}.birthday-fields select,.birthday-fields input{font:inherit;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);padding:10px;font-weight:400}.birthday-fields select:focus,.birthday-fields input:focus{border-color:var(--color-scarlet);outline:none;box-shadow:0 0 0 2px #8d001a1f}.birthday-fields input{width:9ch}.birthday-fields select:first-child{min-width:8rem}.birthday-today{border:1px solid var(--color-border-soft);border-left:3px solid var(--color-gold);border-radius:var(--radius);padding:var(--space-3);background:var(--color-surface-alt);margin-bottom:var(--space-4)}.birthday-today h2{margin:0 0 var(--space-1);font-family:var(--font-serif);color:var(--color-scarlet);font-size:18px}.birthday-today ul{margin:0;padding-left:1.1rem}.birthday-preview{border:1px solid var(--color-border-soft);border-left:3px solid var(--color-emerald);border-radius:var(--radius);padding:var(--space-3);background:var(--color-surface-alt)}.birthday-preview h3{margin:0 0 var(--space-2);font-family:var(--font-serif);color:var(--color-emerald);font-size:16px}.birthday-preview__line{margin:0 0 var(--space-2);border-radius:var(--radius-lg);background:var(--color-surface);border:1px solid var(--color-border-soft);white-space:pre-wrap;max-width:46ch;padding:10px 14px}.birthday-preview__line--personal{background:var(--color-scarlet-soft);border-color:var(--color-scarlet-soft);margin-left:auto}.birthday-preview small{color:var(--color-text-muted)}.birthday-run{margin-top:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}.birthday-run h3{font-family:var(--font-serif);margin:0;font-size:16px}.birthday-plans{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin:0;padding:0;list-style:none;display:grid}.birthday-plan{border:1px solid var(--color-border-soft);border-radius:var(--radius);padding:var(--space-3);background:var(--color-surface);box-shadow:var(--shadow)}.birthday-plan header{justify-content:space-between;align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.birthday-plan__meta,.birthday-plan__checks{margin:var(--space-1) 0;color:var(--color-text-muted);font-size:13px}.birthday-plan__notes{margin:var(--space-2) 0;white-space:pre-wrap}.broadcast-chip--planning,.broadcast-chip--idea{color:#735c00;background:#cca72f29}.broadcast-chip--scheduled{color:var(--color-emerald);background:#1f6b421f}.broadcast-chip--done{color:#147846;background:#1478461f}.broadcast-chip--skipped{background:var(--color-surface-alt);color:var(--color-text-muted)}.birthday-checklist{border:1px solid var(--color-border-soft);border-radius:var(--radius);padding:var(--space-2) var(--space-3);margin:0}.birthday-checklist legend{color:var(--color-text-muted);padding:0 6px;font-size:13px;font-weight:600}.birthday-checklist__item{cursor:pointer;align-items:center;gap:8px;padding:4px 0;font-size:14px;display:flex}.birthday-checklist__item input{width:auto}.birthday-modal__sub{margin:0 0 var(--space-3);color:var(--color-text-muted);font-size:14px}.birthday-modal__warning{color:var(--color-text-muted);margin:0;font-size:13px}@media (width<=768px){.birthday-fields select,.birthday-fields input{font-size:16px}.birthday-fields select{flex:40%}.birthday-fields input{flex:100%;width:auto}.birthday-preview__line{max-width:100%}.birthday-plans{grid-template-columns:1fr}}
