:root{--bg-page: #0f0f14;--bg-gradient-start: #0f0f14;--bg-gradient-mid: #1a1a24;--bg-gradient-end: #0d0d12;--bg-gradient: linear-gradient(160deg, var(--bg-gradient-start) 0%, var(--bg-gradient-mid) 50%, var(--bg-gradient-end) 100%);--text-primary: #e8e6e3;--text-muted: #9a9996;--text-footer: #6b6a67;--accent-gold: #c9a227;--accent-gold-light: #e8d48b;--accent-gold-gradient: linear-gradient(135deg, #c9a227 0%, #a88622 100%);--accent-gold-text: linear-gradient(135deg, #c9a227 0%, #e8d48b 100%);--card-bg: #171821;--card-border: #2a2d38;--border-subtle: #323542;--border-input: #3c404d;--input-bg: #12131a;--color-error: #e07c6e;--color-success: #63c174;--color-warning: #d2a64f;--color-info: #79a9ff;--color-danger-bg: #7d1f24;--color-danger-text: #ffe6e8;--color-danger-border: #a9363d;--error-color: var(--color-error);--radius-sm: 8px;--radius-md: 12px;--font-sans: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--bottom-nav-height: 72px;--safe-area-bottom: env(safe-area-inset-bottom, 0px);--ios-nav-top: auto;--ios-nav-bottom: 0px;--ios-nav-transform: none}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;min-height:100%;background-color:var(--bg-page)}body{margin:0;min-height:100vh;min-height:100dvh;font-family:var(--font-sans);background:var(--bg-gradient);background-color:var(--bg-page);background-attachment:fixed;color:var(--text-primary)}#root{min-height:100%;background:inherit}a{color:var(--accent-gold);text-decoration:none;transition:color .15s ease}a:hover{color:var(--accent-gold-light)}button{font-family:inherit;cursor:pointer}.page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1rem}.page-inner{max-width:42rem;width:100%}.container{max-width:42rem;width:100%;margin:0 auto;padding:0 1rem}.container-wide{max-width:64rem}.card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-md);padding:1.75rem}.heading{font-size:clamp(1.75rem,4vw,2.25rem);font-weight:700;margin:0 0 .5rem;letter-spacing:-.02em;background:var(--accent-gold-text);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.heading-sm{font-size:1.25rem;font-weight:600;margin:0 0 .5rem;color:var(--text-primary);background:none;-webkit-text-fill-color:var(--text-primary)}.text-muted{color:var(--text-muted);font-size:.9375rem}.text-footer{color:var(--text-footer);font-size:.8125rem}.text-error{color:var(--error-color);font-size:.8125rem}.btn{padding:.75rem 1.5rem;border-radius:var(--radius-sm);font-weight:600;font-size:.9375rem;border:none;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;transition:transform .15s ease,box-shadow .15s ease,background .15s ease;cursor:pointer}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--accent-gold-gradient);color:var(--bg-page)}.btn-secondary{background:var(--card-bg);color:var(--text-primary);border:1px solid var(--border-subtle)}.btn-ghost{background:var(--input-bg);color:var(--text-primary);border:1px solid var(--border-subtle)}.btn-danger{background:var(--color-danger-bg);color:var(--color-danger-text);border:1px solid var(--color-danger-border)}.btn-sm{padding:.5rem 1rem;font-size:.875rem}.ui-action-btn{min-height:40px}.ui-action-btn-disclosure{display:inline-flex;align-items:center;gap:.25rem}.ui-action-btn-caret{flex-shrink:0}.ui-segmented-toggle{display:inline-flex;gap:.5rem;flex-wrap:wrap}.input{width:100%;padding:.65rem 1rem;border-radius:var(--radius-sm);border:1px solid var(--border-input);background:var(--input-bg);color:var(--text-primary);font-size:.9375rem;font-family:inherit}.input:focus{outline:none;border-color:var(--accent-gold)}select,select.input{padding:.5rem 2rem .5rem 1rem;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--input-bg);border:1px solid var(--border-input);color:var(--text-primary);border-radius:var(--radius-sm);font-family:inherit;font-size:.9375rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%239a9996' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10l-5 5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center}select:focus{outline:none;border-color:var(--accent-gold)}select option{background:var(--bg-page);color:var(--text-primary)}textarea.input{min-height:120px;resize:vertical}.input-label{display:block;font-size:.8125rem;color:var(--text-muted);margin-bottom:.25rem}.divider{margin:1.25rem 0;border:none;height:1px;background:var(--border-subtle)}.app-layout{min-height:100vh;display:flex;flex-direction:column;background:var(--bg-gradient)}.app-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;border-bottom:1px solid var(--border-subtle)}.app-header-brand{display:flex;align-items:center;gap:.85rem;min-width:0}.app-header .logo{font-weight:700;color:var(--text-primary);text-decoration:none;background:var(--accent-gold-text);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.app-header .logo:hover{opacity:.9}.app-header-clan-name{min-width:0;max-width:min(42vw,24rem);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;font-weight:600;color:var(--text-primary)}.app-header-clan-name:hover{color:var(--accent-gold-light)}.app-header .user-info{display:flex;align-items:center;gap:.75rem;min-width:0;font-size:.875rem;color:var(--text-muted)}.app-nav-desktop{display:flex;gap:1rem;padding:.75rem 1rem;border-bottom:1px solid var(--border-subtle);align-items:center;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.app-nav-desktop::-webkit-scrollbar{display:none}.app-nav-desktop a{padding:.5rem .75rem;border-radius:var(--radius-sm);color:var(--text-primary);text-decoration:none;transition:background .15s ease}.app-nav-desktop a:hover{background:var(--card-bg);color:var(--accent-gold-light)}.app-nav-desktop a.active{background:var(--card-bg);color:var(--accent-gold);border-bottom:2px solid var(--accent-gold)}.app-nav-more-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.5rem .75rem;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--input-bg);color:var(--text-primary);font-size:.9375rem;font-weight:600}.app-nav-more-btn:hover{background:var(--card-bg);color:var(--accent-gold-light)}.app-nav-more-btn.active{color:var(--accent-gold);border-color:var(--accent-gold)}.app-nav-more-dialog,.app-nav-more-list{display:grid;gap:.5rem}.app-nav-more-link{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.8rem .9rem;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--input-bg);color:var(--text-primary)}.app-nav-more-link:hover{background:var(--card-bg);color:var(--accent-gold-light)}.app-nav-more-link.active{border-color:var(--accent-gold);color:var(--accent-gold)}.app-nav-more-current{font-size:.75rem;color:var(--text-muted)}.app-nav-desktop-measure{position:absolute;left:-9999px;top:-9999px;display:flex;gap:1rem;padding:.75rem 1rem;visibility:hidden;pointer-events:none;white-space:nowrap}.app-nav-desktop-measure-item{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.5rem .75rem;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);font-size:.9375rem;font-weight:600}.app-nav-mobile{display:none;position:fixed;left:0;right:0;bottom:0;background:var(--bg-page);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--border-subtle);padding:.5rem .625rem;padding-bottom:calc(.5rem + var(--safe-area-bottom));z-index:100}.app-nav-mobile .nav-inner{display:flex;justify-content:flex-start;align-items:center;gap:.5rem;max-width:42rem;margin:0 auto;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-snap-type:x proximity}.app-nav-mobile .nav-inner::-webkit-scrollbar{display:none}.app-nav-mobile a{display:flex;flex:0 0 auto;align-items:center;justify-content:center;padding:.6rem .85rem;min-height:46px;min-width:70px;font-size:.8rem;line-height:1;white-space:nowrap;touch-action:manipulation;color:var(--text-muted);text-decoration:none;border-radius:var(--radius-sm);border:1px solid transparent;scroll-snap-align:start;transition:color .15s ease,background .15s ease,border-color .15s ease}.app-nav-mobile a:hover,.app-nav-mobile a.active{color:var(--accent-gold);background:var(--card-bg);border-color:var(--border-subtle)}.app-nav-desktop-compact-bottom{display:none}.app-main{flex:1;padding:1rem}@media (max-width: 768px) and (hover: none),(max-width: 768px) and (pointer: coarse){.app-nav-desktop{display:none}.app-nav-mobile{display:block}.ios .app-nav-mobile{top:var(--ios-nav-top);bottom:var(--ios-nav-bottom);transform:var(--ios-nav-transform);-webkit-transform:var(--ios-nav-transform)}.app-main,.ios .app-main{padding-bottom:calc(var(--bottom-nav-height) + var(--safe-area-bottom) + 1rem)}.app-header .user-info .email{display:none}.app-header{flex-wrap:wrap}.app-header-brand,.app-header .user-info{width:100%}.app-header .user-info{justify-content:flex-end;flex-wrap:wrap}.dashboard-widget-sort-row{align-items:flex-start;flex-direction:column}.dashboard-widget-sort-actions{width:100%;justify-content:flex-start}}@media (max-width: 768px) and (hover: hover) and (pointer: fine){.app-nav-desktop{display:none}.app-nav-desktop-compact-bottom{position:fixed;left:0;right:0;bottom:0;z-index:100;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.5rem;padding:.5rem .625rem;background:var(--bg-page);border-top:1px solid var(--border-subtle);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.app-nav-desktop-compact-bottom a,.app-nav-desktop-compact-bottom .app-nav-more-btn{min-width:0;min-height:46px;padding:.6rem .5rem;font-size:.8rem;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;justify-content:center}.app-nav-desktop-compact-bottom a{display:flex;align-items:center;color:var(--text-muted);border-radius:var(--radius-sm);border:1px solid transparent}.app-nav-desktop-compact-bottom a:hover,.app-nav-desktop-compact-bottom a.active{color:var(--accent-gold);background:var(--card-bg);border-color:var(--border-subtle)}.app-nav-desktop-compact-bottom .app-nav-more-btn{width:100%}.app-main{padding-bottom:calc(var(--bottom-nav-height) + 1rem)}}.table-wrap{overflow-x:auto}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.dashboard-widget{margin-top:0}.dashboard-widget-wide{grid-column:1 / -1}.dashboard-widget-sort-list{display:flex;flex-direction:column;gap:.75rem}.dashboard-widget-sort-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:#0f172a4d}.dashboard-widget-sort-main{display:flex;align-items:center;gap:.5rem;font-size:.95rem}.dashboard-widget-sort-actions{display:flex;gap:.375rem;flex-wrap:wrap;justify-content:flex-end}.dashboard-widget-title{margin-bottom:.5rem}.dashboard-widget-value{margin-top:0;margin-bottom:.75rem}.dashboard-inline-link{font-size:.875rem;display:inline-block}.dashboard-inline-link-top-gap{margin-top:.5rem}.dashboard-section-heading{margin-bottom:.75rem}.dashboard-announcement-snippet{font-size:.9375rem;margin:0;white-space:pre-wrap}.dashboard-text-reset{margin:0}.dashboard-event-time{margin-top:.25rem;margin-bottom:0}.dashboard-page-header{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center}.dashboard-page-title{margin:0}.dashboard-grid-top-gap{margin-top:1rem}.dashboard-dialog-note{margin-bottom:.75rem}.dashboard-dialog-actions{display:flex;gap:.5rem;margin-top:.75rem;flex-wrap:wrap}.attendance-page-tabs{margin-bottom:.75rem}.notifications-warning-card{margin-top:1rem;margin-bottom:1.5rem;border-color:var(--color-warning)}.notifications-text-reset{margin:0}.notifications-status{margin-bottom:1rem}.notifications-section{margin-bottom:1.5rem}.notifications-subheading{margin-bottom:.75rem;font-size:1rem}.notifications-description,.notifications-footer-note{font-size:.875rem;margin-bottom:1rem}.notifications-toggle{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;cursor:pointer}.notifications-field-group{margin-bottom:.75rem}.notifications-number-input{width:5rem}.notifications-channel-row{display:flex;gap:1rem;margin-top:.25rem}.notifications-channel-option{display:flex;align-items:center;gap:.5rem;cursor:pointer}.notifications-channel-option.is-disabled{cursor:not-allowed;opacity:.6}.notifications-days-row{display:flex;gap:.5rem;margin-top:.25rem;flex-wrap:wrap}.notifications-day-option{display:flex;align-items:center;gap:.25rem;cursor:pointer}.notifications-rollup-row{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:.75rem}.notifications-timezone-wrap{min-width:12.5rem}.admin-server-time-panel{display:grid;gap:12px;max-width:720px}.admin-server-time-status{margin-bottom:12px}.admin-server-time-note,.admin-server-time-footnote{max-width:72ch}.admin-server-time-summary{display:grid;gap:6px}.admin-user-edit-error{margin-bottom:.75rem}.admin-user-edit-status{margin-bottom:1rem}.admin-user-edit-section{margin-bottom:1.5rem}.admin-user-edit-heading{margin-bottom:.75rem}.admin-user-edit-helper{margin-bottom:.75rem;font-size:.875rem}.admin-user-edit-spaced-label{margin-top:.75rem}.admin-user-edit-readonly{opacity:.8;cursor:not-allowed}.admin-user-edit-oauth-list{display:grid;gap:.75rem}.admin-user-edit-oauth-card{padding:.75rem;border:1px solid var(--color-border-muted, rgba(255, 255, 255, .08));border-radius:.75rem}.admin-user-edit-oauth-title{margin:0;font-weight:600}.admin-user-edit-oauth-meta{margin:.35rem 0 0;font-size:.875rem}.admin-user-edit-roles{display:flex;flex-direction:column;gap:.5rem}.admin-user-edit-checkbox{display:flex;align-items:center;gap:.5rem}.admin-user-edit-tool-row{margin-bottom:.75rem}.admin-user-edit-tool-select{width:100%;max-width:14rem}.admin-user-edit-actions{display:flex;gap:.75rem;flex-wrap:wrap}.roster-edit-status{margin-bottom:1rem}.roster-edit-section{margin-bottom:1.5rem}.roster-edit-heading,.roster-edit-ocr-trigger{margin-bottom:.75rem}.roster-edit-spaced-label{margin-top:.75rem}.roster-edit-helper{margin-bottom:.75rem;font-size:.875rem}.roster-edit-actions{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:space-between}.roster-edit-actions-primary{display:flex;gap:.75rem;flex-wrap:wrap}.roster-edit-inline-actions{display:flex;gap:.5rem;flex-wrap:wrap}.roster-edit-inline-actions-center{align-items:center}.roster-edit-ocr-panel{margin-top:.75rem}.roster-edit-ocr-intro{margin-bottom:.5rem}.roster-edit-ocr-actions{display:flex;justify-content:space-between;margin-top:.75rem}.roster-edit-dialog-note{margin-bottom:.75rem}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:.75rem;border-bottom:1px solid var(--border-subtle)}.table th{font-weight:600;color:var(--text-primary);border-bottom:2px solid var(--border-subtle)}.table tbody tr:hover{background:var(--card-bg)}.table select,.table .input{min-width:10rem;padding:.5rem}.event-roster-shell{position:relative}.event-roster-controls{position:sticky;top:0;z-index:7;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;padding:.5rem;margin-bottom:.5rem;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-page);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.event-roster-jump{max-width:15rem}.event-roster-indicator{margin-left:auto;font-size:.8125rem}.event-roster-swipe-hint{margin:0 0 .4rem;text-align:center;font-size:.75rem}.event-roster-card{position:relative;border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:.6rem .75rem .75rem;background:var(--card-bg);overflow:visible}.event-roster-title{margin:0 0 .4rem;padding:0 1.75rem;text-align:center;font-size:.875rem}.event-roster-table-wrap{overflow-x:hidden}.event-roster-table{table-layout:fixed}.event-roster-table th,.event-roster-table td{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event-roster-col-slot{width:2.75rem}.event-roster-col-action{width:4.8rem}.event-roster-col-action-overflow{overflow:visible!important;text-overflow:clip!important;position:relative}.event-roster-assign-group-btn{position:relative;z-index:1;width:max-content;max-width:none}.event-roster-col-name{width:38%}.event-roster-col-class{width:7.6rem}.event-roster-col-res{width:4.5rem}.event-roster-header-mobile{display:none}.event-roster-arrow{position:absolute;top:50%;transform:translateY(-50%);width:1.9rem;height:1.5rem;border-radius:999px;border:1px solid var(--border-subtle);background:var(--input-bg);color:var(--text-primary);display:inline-flex;align-items:center;justify-content:center;z-index:8;cursor:pointer}.event-roster-arrow:disabled{opacity:.5;cursor:not-allowed}.event-roster-arrow-left{left:-.95rem}.event-roster-arrow-right{right:-.95rem}.column-menu{background:var(--bg-page);box-shadow:0 10px 28px #00000059}.table-role-tools .role-tools-tool-col{position:sticky;left:0;background:var(--bg-page);z-index:1;white-space:nowrap}.table-role-tools th.role-tools-tool-col,.table-role-tools td.role-tools-tool-col{border-right:1px solid var(--border-subtle)}.admin-tabs{display:flex;gap:.5rem;border-bottom:1px solid var(--border-subtle)}.admin-tabs-spaced{margin-bottom:1rem}.admin-tab{padding:.5rem 1rem;font-size:.9375rem;font-weight:500;color:var(--text-muted);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;margin-bottom:-1px;transition:color .15s ease,border-color .15s ease}.admin-tab:hover{color:var(--text-primary)}.admin-tab.active{color:var(--accent-gold);border-bottom-color:var(--accent-gold)}.admin-theme-tab{display:grid;gap:1rem}.admin-theme-status{margin-bottom:.75rem}.admin-user-management-toolbar{margin-bottom:1rem;display:flex;gap:1rem;flex-wrap:wrap;align-items:flex-end}.admin-user-management-select{width:auto;min-width:8rem}.admin-user-management-filter{width:auto;min-width:12rem}.admin-user-management-toolbar-end{margin-left:auto}.admin-user-management-error{margin-bottom:1rem}.admin-user-management-retry{margin-left:.5rem}.admin-user-management-sort-header{display:flex;align-items:center;gap:.25rem}.admin-user-management-sort-button{padding:0;min-height:auto}.admin-user-management-sort-indicator{font-size:.75rem}.admin-user-management-empty{margin-top:1rem}.admin-user-management-dialog-note{margin-bottom:.75rem}.admin-user-management-columns-list{display:grid}.admin-user-management-dialog-done{margin-top:.5rem}.admin-user-management-column-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem 0;border-bottom:1px solid var(--color-border-muted, rgba(255,255,255,.08))}.admin-user-management-column-label{display:flex;align-items:center;gap:.5rem;flex:1}.admin-user-management-column-actions{display:flex;gap:.35rem;flex-wrap:wrap}.admin-theme-countdown{padding:1rem}.admin-theme-countdown-title{margin-bottom:.5rem}.admin-theme-countdown-actions{display:flex;gap:.5rem;flex-wrap:wrap}.admin-theme-toolbar{display:flex;gap:.75rem;align-items:flex-end;flex-wrap:wrap}.admin-theme-select{min-width:14rem}.admin-theme-name-input{min-width:12rem}.admin-theme-actions{margin-left:auto;display:flex;gap:.5rem;flex-wrap:wrap}.admin-theme-grid{display:grid;grid-template-columns:minmax(20rem,1.35fr) minmax(16rem,1fr);gap:1rem}.admin-theme-token-list{display:grid;gap:.5rem}.admin-theme-section-title{margin-bottom:.75rem}.admin-theme-token-row{display:grid;grid-template-columns:minmax(10rem,1fr) minmax(8rem,.85fr) minmax(12rem,1.15fr);gap:.5rem;align-items:center;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:.5rem;background:var(--input-bg)}.admin-theme-token-label{display:grid;gap:.15rem}.admin-theme-token-label code{color:var(--text-muted);font-size:.75rem}.admin-theme-token-current{display:flex;align-items:center;gap:.4rem}.admin-theme-token-current code{color:var(--text-muted);font-size:.78rem}.admin-theme-token-preview{display:flex;align-items:center;gap:.5rem}.admin-theme-token-preview input[type=color]{width:2.25rem;height:2.25rem;border:1px solid var(--border-subtle);border-radius:6px;background:var(--bg-page);padding:0}.admin-theme-token-preview .input{min-width:7.25rem}.admin-theme-swatch{width:1.05rem;height:1.05rem;border-radius:999px;border:1px solid var(--border-subtle);display:inline-flex}.admin-theme-preview-panel{align-self:start}.admin-theme-preview-scope{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);overflow:hidden}.admin-theme-preview-shell{background:var(--bg-gradient);color:var(--text-primary)}.admin-theme-preview-header{display:flex;justify-content:space-between;align-items:center;padding:.65rem .75rem;border-bottom:1px solid var(--border-subtle)}.admin-theme-preview-logo{font-weight:700;background:var(--accent-gold-text);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.admin-theme-preview-content{padding:.75rem}.admin-theme-preview-title{margin-bottom:.5rem}.admin-theme-preview-copy{margin-top:0}.admin-theme-preview-actions{display:flex;gap:.5rem;margin-bottom:.75rem;flex-wrap:wrap}.admin-theme-preview-statuses{margin-top:.75rem;display:flex;gap:.75rem}.admin-theme-preview-success{color:var(--color-success)}.admin-theme-preview-warning{color:var(--color-warning)}.admin-theme-preview-error{color:var(--color-error)}.admin-theme-preview-card{border:1px solid var(--card-border);background:var(--card-bg);border-radius:var(--radius-sm);padding:.65rem}.admin-discord-tab{display:grid;gap:1rem}.admin-alliances-tab{display:grid;gap:0}.admin-alliances-status{margin-bottom:.75rem}.admin-alliances-section{margin-bottom:1rem}.admin-alliances-heading{font-size:1rem;margin-bottom:.75rem}.admin-alliances-create{display:grid;grid-template-columns:minmax(14rem,1fr) auto;gap:.75rem;align-items:end}.admin-alliances-actions{display:flex;gap:.5rem;flex-wrap:wrap}.admin-alliances-row{cursor:pointer}.admin-alliances-row.is-selected{background:var(--input-bg)}.admin-alliances-detail-heading{font-size:1rem;margin-bottom:.5rem}.admin-alliances-status-line{margin-bottom:.75rem}.admin-alliances-settings{display:grid;gap:.75rem;margin-bottom:1rem}.admin-alliances-detail-table{margin-bottom:1rem}.admin-alliances-checkbox{display:inline-flex;align-items:center;gap:.5rem}.admin-alliances-subheading{font-size:.95rem;margin-bottom:.75rem}.admin-alliances-claim-row{margin-bottom:.75rem}.admin-alliances-challenge-card{margin-bottom:.75rem;padding:.75rem}.admin-alliances-challenge-title,.admin-alliances-challenge-line{margin-bottom:.5rem}.super-admin-clans-tab{display:grid;gap:0}.super-admin-clans-status{margin-bottom:.75rem}.super-admin-clans-section{margin-bottom:1rem}.super-admin-clans-heading{font-size:1rem;margin-bottom:.75rem}.super-admin-clans-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.super-admin-clans-checkbox{display:flex;align-items:center;gap:.5rem;margin-top:1.7rem}.super-admin-clans-actions{margin-top:.75rem}.super-admin-clans-table-wrap{margin-bottom:.75rem}.super-admin-clans-row{cursor:pointer}.super-admin-clans-row.is-selected{background:var(--input-bg)}.super-admin-clans-note{margin-top:.5rem}.super-admin-clans-discord-actions{margin-top:.75rem;display:flex;gap:.5rem}.super-admin-clans-saved-target{margin-top:.75rem}.admin-discord-panel{display:grid;gap:.75rem}.admin-discord-grid{display:grid;grid-template-columns:repeat(2,minmax(14rem,1fr));gap:.75rem}.admin-discord-actions{display:flex;gap:.5rem;flex-wrap:wrap}.admin-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:flex-start;justify-content:center;padding:1rem;z-index:1000;overflow-y:auto}.admin-modal{background:var(--bg-page);border:1px solid var(--card-border);border-radius:var(--radius-md);padding:1.5rem;width:100%;max-width:32rem;margin:auto;box-shadow:0 4px 24px #0006}.app-dialog-width-22{max-width:22rem}.app-dialog-width-24{max-width:24rem}.app-dialog-width-26{max-width:26rem}.app-dialog-width-28{max-width:28rem}.app-dialog-width-30{max-width:30rem}.app-dialog-width-32{max-width:32rem}.app-dialog-width-34{max-width:34rem}.app-dialog-width-36{max-width:36rem}.app-dialog-width-40{max-width:40rem}.app-dialog-width-42{max-width:42rem}.app-dialog-width-48{max-width:48rem}.app-dialog-width-52{max-width:52rem}.app-dialog-width-56{max-width:56rem}.app-dialog-width-60{max-width:60rem}.admin-modal-scroll{max-height:calc(100vh - 2rem);overflow-y:auto}.admin-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.admin-modal-header .heading-sm{margin:0}.admin-modal-header button{font-size:1.5rem;line-height:1;padding:.25rem .5rem}.ui-overlay{overscroll-behavior:contain}.ui-sheet-overlay{align-items:flex-end}.ui-sheet{width:min(100%,32rem);border-bottom-left-radius:0;border-bottom-right-radius:0}.ui-action-sheet-list{display:grid;gap:.5rem}.ui-action-sheet-footer{margin-top:.5rem}.ui-action-sheet-item{width:100%;justify-content:flex-start}.ui-toast-stack{position:fixed;top:.75rem;left:.75rem;right:.75rem;z-index:1200;display:grid;gap:.5rem;pointer-events:none}.ui-toast{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--card-bg);color:var(--text-primary);padding:.6rem .75rem;box-shadow:0 6px 18px #00000047}.ui-toast-success{border-color:var(--color-success)}.ui-toast-info{border-color:var(--color-info)}.ui-toast-warn{border-color:var(--color-warning)}.ui-toast-error{border-color:var(--color-error)}@media (max-width: 768px){.admin-modal-overlay{align-items:stretch;padding:0}.admin-modal{max-height:100vh;border-radius:0}.ui-sheet{max-width:100%}.admin-tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch}.admin-tab{flex-shrink:0;min-height:44px;padding:.5rem 1rem}.admin-theme-grid,.admin-theme-token-row{grid-template-columns:1fr}.admin-theme-actions{margin-left:0}.admin-discord-grid,.admin-alliances-create{grid-template-columns:1fr}.table th,.table td{padding:.5rem;font-size:.875rem}.table .btn-sm{min-height:36px;min-width:44px;padding:.4rem .75rem}.event-roster-controls{top:0;gap:.4rem;padding:.4rem;margin-bottom:.35rem}.event-roster-jump{max-width:none;flex:1 1 9rem;min-width:8.5rem}.event-roster-indicator{font-size:.75rem}.event-roster-title{padding:0 1.65rem;font-size:.8125rem}.event-roster-table th,.event-roster-table td{padding:.35rem .3rem;font-size:.78rem}.event-roster-table .btn-sm{min-width:3.8rem;min-height:1.6rem;padding:.25rem .4rem;font-size:.75rem}.event-roster-col-slot{width:2.2rem}.event-roster-col-action{width:4.2rem}.event-roster-assign-group-btn{min-width:max-content}.event-roster-col-name{width:34%}.event-roster-col-class{width:4.6rem}.event-roster-col-res{width:3.4rem}.event-roster-header-desktop{display:none}.event-roster-header-mobile{display:inline}.event-roster-arrow{width:1.75rem;height:1.4rem}.event-roster-arrow-left{left:-.75rem}.event-roster-arrow-right{right:-.75rem}}.landing-container{max-width:420px;width:100%}.landing-container.landing-center{text-align:center}.landing-tagline{font-size:1rem;color:var(--text-muted);margin:0 0 2.5rem;line-height:1.5}.landing-auth-block{background:var(--card-bg);border-radius:var(--radius-md);padding:1.75rem;border:1px solid var(--card-border)}.landing-primary-row{display:flex;gap:.75rem;justify-content:center;margin-bottom:1.5rem}.landing-provider-row{display:flex;flex-direction:column;gap:.5rem}.landing-credential-group{display:flex;flex-direction:column}.landing-provider-label{font-size:.8125rem;color:var(--text-muted);margin-bottom:.75rem}.landing-email-form-wrap{display:grid;grid-template-rows:0fr;overflow:hidden;transition:grid-template-rows .3s ease}.landing-email-form-wrap.is-open{grid-template-rows:1fr}.landing-email-form-inner{min-height:0;overflow:hidden;text-align:left}.landing-email-form-wrap.is-open .landing-email-form-inner{padding-top:.75rem}.landing-status-message{margin-bottom:1rem}.landing-inline-button{padding:0;vertical-align:baseline}.landing-inline-note{margin-top:.5rem}.landing-primary-action{margin-top:.75rem}.landing-secondary-action{margin-top:.5rem}.landing-forgot-button{margin-top:.25rem;padding:0}.landing-provider-link{padding:.65rem 1rem;border-radius:var(--radius-sm);font-weight:500;font-size:.9375rem;text-decoration:none;color:var(--text-primary);background:#ffffff0f;border:1px solid var(--border-subtle);display:inline-flex;align-items:center;justify-content:center;transition:background .15s ease,border-color .15s ease;cursor:pointer;font-family:inherit}.landing-footer-primary{margin-top:2rem}.landing-contact-link{margin-top:.75rem;padding:0;border:0;background:transparent;color:var(--accent-gold);text-decoration:underline;cursor:pointer;font:inherit}.landing-footer-secondary{margin-top:.75rem}.landing-contact-message{margin:0 0 .75rem}.landing-contact-message:last-child{margin-bottom:0}.markdown-content{color:var(--text-primary);line-height:1.6}.markdown-content p{margin:0 0 .75rem}.markdown-content p:last-child{margin-bottom:0}.markdown-content a{color:var(--accent-gold)}.markdown-content code{background:var(--input-bg);padding:.2em .4em;border-radius:4px;font-size:.9em}.markdown-content pre{background:var(--input-bg);padding:1rem;border-radius:var(--radius-sm);overflow-x:auto}.markdown-content pre code{background:none;padding:0}.admin-notifications-intro{margin-bottom:.75rem}.admin-notifications-section{margin-bottom:1.5rem}.admin-notifications-heading{margin-bottom:1rem;font-size:1rem}.admin-notifications-helper{font-size:.875rem;margin-bottom:1rem}.admin-notifications-status{margin-bottom:1rem}.admin-notifications-field{margin-bottom:.75rem}.admin-notifications-textarea{margin-bottom:.5rem}.admin-notifications-count{font-size:.75rem;color:var(--text-muted);margin-bottom:1rem}.admin-discord-status,.admin-discord-intro,.admin-discord-note,.admin-discord-claim-row{margin-bottom:.75rem}.admin-discord-challenge-card{margin-bottom:.75rem;padding:.75rem}.admin-discord-challenge-title,.admin-discord-challenge-line{margin-bottom:.5rem}.admin-discord-saved-target{margin-top:.75rem}.admin-discord-mentions-card{margin-top:1rem;padding:.75rem}.admin-discord-mentions-header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:.75rem}.admin-discord-mentions-title,.admin-discord-mentions-note,.admin-discord-mentions-empty{margin-bottom:.5rem}.admin-discord-mentions-list{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}.admin-discord-mentions-item{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.event-type-edit-error,.event-type-edit-section{margin-bottom:1rem}.event-type-edit-heading,.event-type-edit-field{margin-bottom:.75rem}.event-type-edit-days{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.75rem}.event-type-edit-day{display:flex;align-items:center;gap:.25rem}.event-type-edit-time{margin-bottom:.75rem;max-width:8rem}.event-type-edit-timezone{margin-bottom:.75rem;max-width:14rem}.event-type-edit-toggle{display:flex;align-items:center;gap:.5rem}.event-type-edit-actions{display:flex;gap:.75rem;flex-wrap:wrap}.prebuilt-teams-error{margin-bottom:1rem}.prebuilt-teams-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1rem}.prebuilt-teams-section{margin-bottom:1rem}.prebuilt-teams-heading{margin-bottom:.75rem}.prebuilt-teams-helper{font-size:.875rem;margin-bottom:.75rem}.prebuilt-teams-active-slot{margin-bottom:.75rem}.prebuilt-teams-active-header{display:flex;gap:.5rem;align-items:center;margin-bottom:.25rem}.prebuilt-teams-active-label{font-size:.875rem}.prebuilt-teams-grid{display:grid;gap:1rem}.prebuilt-teams-slot-list{display:flex;flex-wrap:wrap;gap:.25rem}.prebuilt-teams-slot-button{min-width:6rem}.announcements-summary{margin-bottom:.5rem}.announcements-manage{margin-bottom:1rem}.announcements-form{margin-top:.5rem;max-width:31.25rem}.announcements-textarea{margin-bottom:.5rem}.announcements-secondary-action{margin-left:.5rem}.announcements-layout{display:flex;gap:1.5rem;flex-wrap:wrap}.announcements-sidebar-heading{margin-bottom:.5rem}.announcements-list{list-style:none;padding:0;margin:0}.announcements-list-item{margin-bottom:.25rem}.announcements-sidebar{min-width:200px;flex-shrink:0}.announcements-item-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.announcements-select-button{all:unset;cursor:pointer;flex:1}.announcements-main{flex:1;min-width:280px}.announcements-load-older{margin-top:.5rem}.announcements-timestamp{font-size:.875rem;margin-bottom:.5rem}.announcements-dialog-note{margin-bottom:.75rem}.announcements-dialog-actions{display:flex;gap:.5rem;flex-wrap:wrap}.announcements-mentions-panel{display:grid;gap:.75rem;margin-bottom:.75rem}.announcements-mentions-controls{display:grid;gap:.75rem}.announcements-mentions-insert-row{display:flex;gap:.5rem;align-items:center}.announcements-mentions-reference{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:.75rem}.announcements-mentions-heading{margin-bottom:.5rem}.announcements-mentions-list{list-style:none;margin:0;padding:0;display:grid;gap:.4rem}.announcements-mentions-item{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.announcement-item-btn{width:100%;padding:.5rem .75rem;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:transparent;color:var(--text-primary);font-size:.875rem;text-align:left;cursor:pointer;transition:background .15s ease,border-color .15s ease}.announcement-item-btn:hover{background:var(--card-bg)}.announcement-item-btn.selected{background:var(--card-bg);border-color:var(--accent-gold);color:var(--accent-gold)}.layout-invite-note{margin-bottom:.5rem}.layout-invite-actions{display:flex;gap:.5rem;margin-top:.75rem}.layout-session-actions{display:flex;gap:.5rem;margin-top:1rem;justify-content:flex-end}.layout-coffee-content{display:grid;gap:.9rem}.layout-coffee-paragraph{margin:0;line-height:1.6}.layout-coffee-highlight{padding:.9rem 1rem;border-radius:12px;border:1px solid var(--border-subtle);background:#c9a22714}.layout-coffee-strong{margin:0;font-weight:700}.layout-coffee-followup{margin:.35rem 0 0;line-height:1.6}.layout-coffee-detail{margin:.5rem 0 0;line-height:1.6}.layout-coffee-link{margin:0}.layout-coffee-actions{display:flex;gap:.5rem}.progress-chart{width:100%}.progress-chart-height-240{height:240px}.progress-chart-height-280{height:280px}.progress-chart-height-320{height:320px}.progress-chart-height-360{height:360px}.progress-chart-height-400{height:400px}.auth-narrow-page{max-width:420px}.auth-page-title{margin-bottom:.5rem}.auth-page-lead{margin-bottom:1.5rem}.auth-page-caption{font-size:.875rem}.auth-field-label,.auth-form-error{margin-top:.75rem}.auth-form-submit{margin-top:1rem}.auth-page-top-note{margin-top:.5rem}.auth-inline-link{display:inline-block}.auth-inline-link-primary{margin-top:1rem}.auth-inline-link-secondary{margin-top:.5rem}.auth-form-block{margin-top:1rem;width:100%}.auth-inline-note{margin-top:.5rem}.auth-form-action{margin-top:.75rem}.auth-footer-link{margin-top:1.5rem}.auth-inline-link-wrap{margin-top:1rem}.auth-page-error{margin-bottom:1rem}.auth-block-label{display:block;margin-bottom:.5rem}.auth-full-width-input{width:100%;margin-bottom:1rem}.auth-action-row{display:flex;gap:.75rem;flex-wrap:wrap}.confirm-dialog-message{margin-bottom:.75rem}.confirm-dialog-actions{display:flex;gap:.5rem;flex-wrap:wrap}.search-select-helper{margin-bottom:.75rem;font-size:.875rem}.search-select-selected{display:flex;align-items:center;gap:.5rem}.search-select-selected-value{flex:1;opacity:.9}.search-select-quick-options{margin-top:.5rem}.search-select-quick-options .search-select-status{margin-top:0;margin-bottom:.25rem}.search-select-status{font-size:.875rem;margin-top:.25rem}.search-select-results{margin-top:.25rem;overflow-y:auto}.search-select-results-h-8{max-height:8rem}.search-select-results-h-10{max-height:10rem}.search-select-results-h-12{max-height:12rem}.search-select-results-h-14{max-height:14rem}.search-select-result{display:block;width:100%;text-align:left;padding:.5rem .75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-select-empty{margin:0;padding:.75rem}.event-edit-error,.event-edit-section{margin-bottom:1rem}.event-edit-field{margin-bottom:.75rem}.event-edit-toggle{display:flex;align-items:center;gap:.5rem}.event-edit-toggle-spaced{margin-bottom:.5rem}.event-edit-actions{display:flex;gap:.75rem}.prebuilt-teams-page-status{margin-bottom:.5rem}.prebuilt-teams-page-toolbar{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.5rem}.prebuilt-teams-page-name-input{min-width:14rem}.prebuilt-teams-page-actions{margin-top:.75rem;display:flex;gap:.5rem;flex-wrap:wrap}.admin-role-tools-error{margin-bottom:1rem}.admin-role-tools-actions{margin-bottom:1rem;display:flex;gap:.75rem;flex-wrap:wrap}.admin-role-tools-table-wrap{overflow-x:auto}.admin-role-tools-select{min-width:6rem;padding:.4rem .5rem}.admin-role-tools-empty{margin-top:1rem}.super-admin-proxy-status{margin-bottom:.75rem}.super-admin-proxy-card{margin-bottom:1rem}.super-admin-proxy-label{max-width:24rem}.super-admin-proxy-note{margin-top:.5rem}.admin-notification-history-intro{margin-top:.5rem;margin-bottom:1.5rem}.admin-notification-history-error{margin-bottom:1rem}.admin-notification-history-card{overflow-x:auto}.admin-notification-history-table{min-width:600px}.admin-notification-history-recipient{font-family:monospace;font-size:.875rem}.admin-notification-history-status-sent{color:var(--color-success)}.admin-notification-history-status-failed{color:var(--color-error)}.admin-notification-history-error-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-notification-history-load-more{margin-top:1rem}.legal-page{justify-content:flex-start;align-items:flex-start}.legal-inner{max-width:42rem;width:100%}.legal-back{margin:0 0 1.5rem}.legal-back a{font-size:.9375rem}.legal-date{margin:0 0 1.5rem}.legal-content{line-height:1.65}.legal-content p{margin:0 0 1rem}.legal-content ul{margin:0 0 1rem;padding-left:1.5rem}.legal-content li{margin-bottom:.35rem}.legal-h2{font-size:1.125rem;font-weight:600;margin:2rem 0 .75rem;color:var(--text-primary)}.legal-h2:first-of-type{margin-top:0}.legal-h3{font-size:1rem;font-weight:600;margin:1.25rem 0 .5rem;color:var(--text-primary)}.attendance-calendar-legend{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center}.attendance-calendar-summary{display:flex;gap:.75rem;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:.75rem}.attendance-calendar-summary-line{margin-bottom:.25rem}.attendance-calendar-summary-note{margin-bottom:0;font-size:.875rem}.attendance-calendar-stack-gap{margin-bottom:.75rem}.attendance-calendar-field-label{margin-bottom:.25rem}.attendance-calendar-date-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:.75rem}.attendance-calendar-note-card{padding:.75rem;white-space:pre-wrap}.attendance-calendar-note-count{margin-top:.25rem;font-size:.875rem}.attendance-calendar-actions{display:flex;gap:.5rem;flex-wrap:wrap}.attendance-events-heading{margin-bottom:8px}.attendance-events-list{list-style:none;padding:0;margin:0}.attendance-events-list-item{margin-bottom:4px}.attendance-events-list-button{width:100%;text-align:left}.attendance-events-error{margin-bottom:.5rem}.attendance-events-summary{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;margin-bottom:.75rem}.attendance-events-summary-title{margin:0}.attendance-events-section-heading{margin-bottom:.5rem}.attendance-events-divider{margin:1rem 0}.attendance-events-divider-sm{margin:.75rem 0}.attendance-events-extra-list{margin:0;padding-left:1rem}.attendance-events-extra-list-item{margin-bottom:.25rem}.attendance-events-inline-action{margin-left:.5rem}.attendance-events-search{margin-top:.75rem}.attendance-events-ocr-intro{margin-bottom:.5rem}.attendance-events-ocr-summary{margin-top:.75rem}.attendance-events-ocr-table{max-height:14rem;overflow-y:auto}.attendance-events-footer{display:flex;justify-content:space-between;margin-top:.75rem;gap:.75rem;flex-wrap:wrap;align-items:center}.attendance-events-actions-row{display:flex;gap:.5rem;margin-top:.75rem;flex-wrap:wrap}.events-page-subtitle,.events-page-error{margin-bottom:.5rem}.events-page-scope-toggle{margin-bottom:.75rem}.events-page-actions{margin-bottom:1rem;display:flex;gap:.75rem;flex-wrap:wrap}.events-page-layout{display:grid;gap:1rem}.events-page-list-card,.events-page-detail-card{width:100%}.events-page-list-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.5rem;flex-wrap:wrap}.events-page-main{min-width:0}.events-page-load-older{margin-top:8px}.events-page-meta{font-size:.875rem}.events-page-attendance-pill{font-size:.8125rem;border:1px solid var(--border-subtle);border-radius:999px;padding:.125rem .5rem}.events-page-summary-primary{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;flex:1 1 18rem}.events-page-summary-actions{display:flex;align-items:flex-start;gap:.75rem;flex-wrap:wrap;margin-left:auto}.events-page-notes{margin-bottom:1rem}.events-page-availability-card{margin:0;min-width:0;padding:.45rem .7rem;display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.events-page-availability-header{margin-bottom:.2rem}.events-page-availability-label{margin:0;white-space:nowrap}.events-page-availability-note{margin:0;line-height:1.35;flex:1 1 16rem}.events-page-announce-hint{margin-top:.75rem;margin-bottom:0;font-size:.8125rem}.events-page-announce-preview{margin-top:.35rem;margin-bottom:0}.events-page-types-actions{margin-bottom:1rem}.events-page-type-item{margin-bottom:.5rem;display:flex;align-items:center;gap:.5rem}.events-page-build-permissions-list{display:grid;gap:.75rem;margin-bottom:.75rem}.events-page-build-permissions-row{display:grid;gap:.35rem}.events-page-build-permissions-name{font-weight:600}.feedback-modal-success{margin:1rem 0}.feedback-modal-error,.feedback-modal-section{margin-bottom:1rem}.feedback-modal-field{margin-bottom:.75rem}.feedback-modal-textarea{margin-bottom:.5rem}.feedback-modal-count{font-size:.75rem;color:var(--text-muted);margin-bottom:.75rem}.feedback-modal-actions{display:flex;gap:.75rem;flex-wrap:wrap}.attendance-calendar-legend-item{display:inline-flex;align-items:center;gap:.4rem;color:var(--text-muted);font-size:.875rem}.attendance-calendar-legend-swatch{width:.875rem;height:.875rem;border-radius:999px;display:inline-block;flex:0 0 auto}.attendance-calendar-legend-swatch-away{background:var(--accent-gold);border:1px solid color-mix(in srgb,var(--accent-gold) 72%,#000 28%)}.attendance-calendar-legend-swatch-event{background:color-mix(in srgb,var(--card-bg) 85%,var(--border-subtle) 15%);border:1px dashed var(--border-subtle)}.attendance-calendar .fc .fc-toolbar{gap:.5rem;flex-wrap:wrap}.attendance-calendar .fc .fc-toolbar-title{font-size:1rem}.attendance-calendar .fc .fc-button{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:transparent;color:var(--text-primary);box-shadow:none;text-transform:none}.attendance-calendar .fc .fc-button:hover,.attendance-calendar .fc .fc-button:focus{background:var(--card-bg);border-color:var(--accent-gold);color:var(--accent-gold);box-shadow:none}.attendance-calendar .fc .fc-button-primary:not(:disabled).fc-button-active,.attendance-calendar .fc .fc-button-primary:not(:disabled):active{background:var(--card-bg);border-color:var(--accent-gold);color:var(--accent-gold);box-shadow:none}.attendance-calendar .fc .fc-daygrid-day-frame{min-height:6.5rem}.attendance-calendar-shell{padding:.75rem;min-height:24rem}.attendance-calendar .fc .fc-daygrid-event,.attendance-calendar .fc .fc-list-event{border-radius:.55rem;font-size:.75rem;line-height:1.2;padding:.1rem .35rem}.attendance-calendar .fc .attendance-calendar-entry-event{background:color-mix(in srgb,var(--card-bg) 88%,var(--border-subtle) 12%);border:1px dashed var(--border-subtle);color:var(--text-muted)}.attendance-calendar .fc .attendance-calendar-entry-event .fc-event-title,.attendance-calendar .fc .attendance-calendar-entry-event .fc-event-time{color:var(--text-muted)}.attendance-calendar .fc .attendance-calendar-entry-away{border:1px solid color-mix(in srgb,var(--accent-gold) 72%,#000 28%);font-weight:600}.attendance-calendar .fc .attendance-calendar-entry-editable{background:color-mix(in srgb,var(--accent-gold) 88%,#fff 12%);color:#1c1c1c}.attendance-calendar .fc .attendance-calendar-entry-readonly{background:color-mix(in srgb,var(--card-bg) 70%,var(--border-subtle) 30%);color:var(--text-primary)}.attendance-calendar .fc .attendance-calendar-entry-away:hover,.attendance-calendar .fc .attendance-calendar-entry-away:focus{filter:brightness(.98)}.ordered-checkbox-dialog-note{margin-bottom:.6rem}.ordered-checkbox-dialog-label{margin-bottom:.45rem}.ordered-checkbox-dialog-list{display:grid;gap:.35rem}.ordered-checkbox-dialog-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.35rem 0}.ordered-checkbox-dialog-option{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.ordered-checkbox-dialog-actions{display:flex;gap:.35rem;flex-shrink:0}.ordered-checkbox-dialog-done{margin-top:.5rem}.reports-toolbar{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;margin-bottom:.75rem}.reports-toolbar-primary{margin-bottom:.35rem}.reports-toolbar-secondary,.reports-card-gap{margin-bottom:.75rem}.reports-section-title{margin-bottom:.5rem}.reports-range-row,.reports-summary-row{display:flex;gap:.75rem;flex-wrap:wrap}.reports-range-row{align-items:end}.reports-summary-row{align-items:center;margin-bottom:.75rem}.reports-error{margin-bottom:.75rem}.reports-heading-reset{margin:0}.reports-options-row{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:.75rem}.reports-inline-checkbox{display:inline-flex;align-items:center;gap:.375rem;font-size:.875rem}.reports-note{font-size:.875rem}.reports-summary-sort{max-width:14rem}.reports-summary-direction{max-width:8rem}.reports-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;margin-bottom:.75rem}.reports-overview-toolbar{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;margin-bottom:.75rem}.reports-attendance-overview-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;gap:.75rem;margin:0 0 .75rem;padding:.35rem 0;border:none;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:var(--radius-sm)}.reports-attendance-overview-toggle:hover .reports-attendance-overview-toggle-label{color:var(--accent-gold-light)}.reports-attendance-overview-toggle:focus-visible{outline:2px solid var(--accent-gold);outline-offset:2px}.reports-attendance-overview-toggle-label{margin:0}.reports-attendance-overview-caret{flex-shrink:0;width:0;height:0;border-left:.35rem solid transparent;border-right:.35rem solid transparent;border-top:.5rem solid var(--text-muted);transition:transform .2s ease}.reports-attendance-overview-toggle[aria-expanded=false] .reports-attendance-overview-caret{transform:rotate(-90deg)}.reports-overview-chart-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.75rem;margin-bottom:.75rem}.reports-compliance-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.75rem}.reports-subchart-label{margin:0 0 .5rem;font-size:.875rem;font-weight:600}.reports-chart-toolbar,.reports-table-toolbar{display:flex;gap:.75rem;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:.75rem}.reports-table-toolbar-actions{display:flex;gap:.5rem;align-items:center}.reports-filter-badge{display:inline-block;margin-left:.25rem;width:.5rem;height:.5rem;border-radius:50%;background:var(--accent-gold);vertical-align:middle}.reports-filter-clr-row th{padding:0 0 .15rem;vertical-align:bottom;border-bottom:none;line-height:1}.reports-filter-col-clr{font:inherit;font-size:.65rem;line-height:1;padding:.1rem .15rem;margin:0;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--card-bg);color:var(--text-muted);cursor:pointer}.reports-filter-col-clr:hover:not(:disabled){color:var(--text-primary);border-color:var(--border-input)}.reports-filter-col-clr:disabled{opacity:.35;cursor:not-allowed}.reports-filter-row td{padding:0;vertical-align:top;border-bottom:1px solid var(--card-border);background:var(--input-bg);line-height:1}.reports-filter-row:not(.reports-filter-row--open) td{border-bottom-width:0}.reports-filter-cell-inner{max-height:0;overflow:hidden;transition:max-height .25s ease}.reports-filter-row--open .reports-filter-cell-inner{max-height:6rem}.reports-filter-cell-inner>*{padding:.25rem .35rem}.reports-filter-inline-input{width:100%;min-width:0;max-width:100%;font-size:.8125rem;box-sizing:border-box}.reports-filter-inline-numeric{display:flex;flex-direction:column;gap:.2rem;width:100%;min-width:0}.reports-filter-inline-minmax{width:100%;min-width:0;max-width:100%;font-size:.8125rem;padding:.2rem .35rem;box-sizing:border-box;-moz-appearance:textfield}.reports-filter-inline-minmax::-webkit-outer-spin-button,.reports-filter-inline-minmax::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.reports-table-with-filters thead .input.reports-filter-inline-minmax,.reports-table-with-filters thead .input.reports-filter-inline-input{min-width:0;width:100%;max-width:100%;padding:.2rem .35rem}.reports-table-with-filters thead .reports-filter-cell-inner{width:100%;min-width:0;box-sizing:border-box}.reports-chart-heading{margin:0 0 .25rem}.reports-chart-note{margin-top:0;margin-bottom:.75rem}.reports-chart-tooltip{background:#fff;border:1px solid rgba(148,163,184,.35);border-radius:.5rem;box-shadow:0 10px 30px #0f172a1f;padding:.65rem .8rem}.reports-chart-tooltip-label{margin:0 0 .35rem;color:#0f172a;font-weight:700}.reports-chart-tooltip-line{margin:.1rem 0;color:#1e293b}.reports-chart-tooltip-series{font-weight:600}.reports-summary-card-label{margin-bottom:.25rem}.reports-summary-card-value{margin:0;font-size:1.4rem}.reports-summary-card-date{margin:0;font-size:1.1rem}.reports-attendance-summary{margin-top:0}.reports-manual-intro{margin-bottom:.75rem}.reports-manual-error{margin-top:.75rem}.reports-manual-actions{display:flex;gap:.5rem;margin-top:.75rem;flex-wrap:wrap}.reports-link-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;color:var(--color-link, #1d4ed8);cursor:pointer;font:inherit;padding:0;text-decoration:underline}.reports-link-button:hover{color:var(--color-link-hover, #1e40af)}.reports-export-textarea{width:100%;min-height:16rem;resize:vertical}.progress-chart-height-520{height:520px}.progress-chart-height-640{height:640px}.progress-chart-height-760{height:760px}@media (max-width: 640px){.reports-range-row,.reports-summary-row,.reports-overview-toolbar,.reports-chart-toolbar,.reports-table-toolbar,.ordered-checkbox-dialog-row,.events-page-summary-actions{flex-direction:column;align-items:stretch}.reports-table-toolbar-actions{flex-wrap:wrap}.reports-overview-chart-grid,.reports-compliance-grid{grid-template-columns:1fr}}.text-success{color:var(--color-success, green)}.profile-section{margin-top:1rem}.profile-section-block{margin-top:1.5rem}.profile-section-title{margin-bottom:.75rem}.profile-muted-intro,.profile-muted-block{font-size:.875rem}.profile-muted-intro{margin-bottom:.75rem}.profile-muted-block{margin-bottom:.5rem}.profile-block{margin-bottom:1rem}.profile-block-label,.profile-block-value{display:block}.profile-actions-row{display:flex;gap:.5rem;flex-wrap:wrap}.profile-actions-row-center{align-items:center}.profile-button-top-gap,.profile-status-top-gap{margin-top:.5rem}.profile-phone-request-form{margin-bottom:.75rem}.profile-phone-verify-form{margin-bottom:.5rem}.profile-actions-top-gap{margin-top:.5rem}.profile-footnote-top-gap{font-size:.75rem;margin-top:.5rem}.profile-field-help{font-size:.75rem;margin-top:.25rem;margin-bottom:.5rem}.profile-field-help-lg{margin-bottom:1rem}.profile-timezone-select{max-width:20rem}.profile-subheading{margin-bottom:.5rem;font-size:.875rem}.profile-subheading-note{font-size:.75rem;margin-bottom:.5rem}.profile-quiet-hours-row{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:.5rem}.profile-checkbox-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;cursor:pointer}.profile-checkbox-label{margin:0}.profile-button-save{margin-top:.75rem}.profile-roster-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.5rem 1rem;margin-bottom:1rem}.profile-roster-ocr-trigger{margin-bottom:.5rem}.profile-ocr-form{margin-top:.75rem}.profile-ocr-intro{margin-bottom:.5rem}.profile-ocr-actions{display:flex;justify-content:space-between;margin-top:.75rem}.roster-sort-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem 0;border-bottom:1px solid var(--color-border-muted, rgba(255, 255, 255, .08))}.roster-sort-label{display:flex;align-items:center;gap:.5rem;flex:1}.roster-sort-actions{display:flex;gap:.35rem;flex-wrap:wrap}.roster-import-form{margin-bottom:1rem}.roster-import-card,.roster-section-title{margin-bottom:.5rem}.roster-import-section-heading{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem 1rem;margin-bottom:.5rem}.roster-import-heading-title{margin-bottom:0}.roster-last-import-tag{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .5rem;padding:.2rem .55rem;border-radius:999px;font-size:.8125rem;background:var(--panel-bg-muted, rgba(127, 127, 127, .12));border:1px solid var(--border-color, rgba(127, 127, 127, .25));color:var(--text-muted)}.roster-last-import-tag-label{font-weight:600}.roster-last-import-tag-time{font-variant-numeric:tabular-nums}.roster-section-note{font-size:.875rem;margin-bottom:.75rem}.roster-import-textarea{width:100%;font-family:monospace;font-size:.875rem}.roster-import-actions{margin-top:.5rem}.roster-toolbar{margin-bottom:1rem;display:flex;gap:1rem;flex-wrap:wrap;align-items:flex-end}.roster-filter-input{width:auto;min-width:12rem}.roster-toolbar-end{margin-left:auto}.opponents-toolbar{margin-bottom:1rem;display:flex;flex-direction:column;gap:.5rem}.opponents-toolbar-row{display:flex;align-items:center;gap:.5rem}.opponents-clan-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.opponents-clan-label{display:flex;align-items:center;gap:.5rem}.opponents-clan-select{max-width:14rem}.opponents-best-team-toolbar{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:1rem}.roster-error{margin-bottom:1rem}.roster-error-action{margin-left:.5rem}.roster-header-cell{display:flex;align-items:center;gap:.25rem}.roster-sort-button{padding:0;min-height:auto}.roster-sort-indicator{font-size:.75rem}.roster-empty-state{margin-top:1rem}.roster-dialog-note{margin-bottom:.75rem}.roster-dialog-done{margin-top:.5rem}.roster-inline-actions{display:flex;gap:.5rem;flex-wrap:wrap}.roster-inline-actions-center{align-items:center}.roster-inline-actions-gap{margin-bottom:.5rem}.roster-inline-actions-wide{gap:.75rem}.roster-ocr-panel{margin-top:.75rem}.roster-ocr-error{margin-bottom:.5rem}.roster-ocr-card{margin-bottom:.75rem}.roster-card-title{font-weight:600}.roster-card-meta{font-size:.875rem}.roster-card-meta-gap,.roster-ocr-intro{margin-bottom:.5rem}.roster-ocr-missing{margin-top:.5rem}.roster-ocr-actions{display:flex;justify-content:space-between;margin-top:.75rem;gap:.5rem;flex-wrap:wrap}.roster-review-section{margin-bottom:.75rem}.roster-text-reset{margin-bottom:0}.roster-review-header{display:flex;justify-content:space-between;gap:.75rem;align-items:center;flex-wrap:wrap}.roster-review-header-spaced{margin-bottom:.75rem}.roster-review-grid{display:grid;gap:.5rem;margin-top:.75rem}.roster-review-list{display:grid;gap:.75rem}.roster-review-card{margin-bottom:0}.roster-review-filter{max-width:18rem}.roster-unmatched-list{display:grid;gap:.25rem;margin-top:.75rem}.event-roster-top-actions{margin-bottom:.75rem;display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.event-roster-inline-status{margin-bottom:.5rem}.event-roster-priority-grid{display:grid;grid-template-columns:auto 1fr 1fr 1fr;gap:.5rem .75rem;align-items:center;margin-bottom:.75rem;max-width:20rem}.event-roster-priority-tier{font-size:.875rem}.event-roster-priority-select{width:100%;padding:.35rem .5rem}.event-roster-priority-list{display:grid;gap:.625rem;margin-bottom:.75rem}.event-roster-priority-row{display:grid;gap:.3rem}.event-roster-priority-label{font-size:.875rem}.event-roster-priority-fields{display:grid;grid-template-columns:minmax(0,1fr) 7rem;gap:.5rem}.event-roster-priority-name-input{width:100%}.event-roster-priority-actions{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center}.event-roster-autofill-select{min-width:11rem}.event-roster-warning-note,.event-roster-warning-inline{color:var(--color-warning, #b8860b)}.event-roster-warning-note{margin-top:.5rem}.event-roster-target-note{margin-bottom:.5rem}.event-roster-field-label{margin-bottom:.25rem}.event-roster-dialog-select{width:100%;margin-bottom:.75rem}.event-roster-dialog-select-sm{margin-bottom:.5rem}.event-roster-dialog-actions{display:flex;gap:.5rem;flex-wrap:wrap}.event-roster-dialog-actions-gap{margin-bottom:.75rem}.event-roster-filter-checkbox-scroll{max-height:7.5rem;overflow-y:auto;padding-right:.25rem}.event-roster-filter-group{margin-bottom:.75rem}.event-roster-filter-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.event-roster-filter-label{margin-bottom:0}.event-roster-filter-summary{font-size:.75rem}.event-roster-filter-toggle{width:100%;justify-content:space-between}.event-roster-filter-top-gap{margin-top:.5rem}.event-roster-filter-empty{margin:0;padding:.75rem;border:1px dashed var(--border-subtle);border-radius:var(--radius-sm)}.event-roster-range-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.event-roster-range-group{display:grid;gap:.35rem}.event-roster-range-group-label{font-size:.8125rem;color:var(--text-muted)}.event-roster-range-group-controls{display:grid;grid-template-columns:2rem minmax(0,1fr) 2rem;gap:.35rem;align-items:center}.event-roster-range-input{width:100%;min-width:0;text-align:center;padding-left:.5rem;padding-right:.5rem}.event-roster-range-step-btn.ui-action-btn{min-height:2.25rem;min-width:2rem}.event-roster-range-step-btn.btn-sm{padding:.25rem;font-size:.875rem}@media (max-width: 480px){.event-roster-range-row{grid-template-columns:1fr}}.event-roster-dialog-note{margin-bottom:.75rem}.event-roster-label-tight{margin-bottom:.375rem}.event-roster-note-textarea{margin-bottom:.5rem}.event-roster-character-count{margin-bottom:.75rem;font-size:.8125rem}.event-roster-dialog-section{margin-bottom:.75rem}.event-roster-preview-image{width:100%;max-height:70vh;object-fit:contain;border:1px solid var(--color-border, #d1d5db);border-radius:.5rem;background:#fff;margin-bottom:.75rem}.event-roster-inline-actions-center{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.event-roster-inline-actions-top-gap{display:flex;gap:.5rem;margin-top:.5rem;flex-wrap:wrap}.event-roster-wide-input{min-width:18rem}.event-roster-source-note{margin-top:.5rem;font-size:.875rem}.event-roster-review-card-gap{margin-bottom:.75rem}.event-roster-review-count{margin-bottom:.25rem}.event-roster-review-group{margin-bottom:.5rem}.event-roster-review-list-tight{display:grid;gap:.25rem}.event-roster-review-text{font-size:.875rem}.event-roster-review-header{display:flex;gap:.5rem;align-items:center;justify-content:space-between;margin-bottom:.5rem}.event-roster-review-header-wide{display:flex;justify-content:space-between;gap:.75rem;flex-wrap:wrap;align-items:center}.event-roster-label-reset{margin-bottom:0}.event-roster-search-input{max-width:14rem}.event-roster-availability-list{max-height:18rem;overflow-y:auto;display:grid;gap:.375rem}.event-roster-availability-row,.event-roster-quick-row{display:grid;grid-template-columns:1fr auto;align-items:center}.event-roster-availability-row{gap:.5rem}.event-roster-quick-row{gap:.75rem}.event-roster-status-select{min-width:9rem}.event-roster-footer-actions{display:flex;gap:.5rem;margin-top:.75rem}.event-roster-review-label{margin-bottom:.25rem}.event-roster-text-reset{margin:0}.event-roster-review-subtext{font-size:.8125rem}.event-roster-review-grid{display:grid;gap:.5rem}.event-roster-sticky-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.75rem;padding-top:.5rem;position:sticky;bottom:0;background:var(--surface)}.event-roster-name-inline,.roster-name-inline{display:inline-flex;align-items:center;gap:.35rem}.event-roster-note-button,.roster-note-button{padding:0 .35rem;min-width:1.4rem;line-height:1.2}.achievement-member-note-row{margin-bottom:.75rem}.event-roster-signup-error{font-size:.875rem;margin-bottom:.5rem}.event-roster-signup-actions{display:flex;gap:.5rem;margin-top:.5rem}.event-roster-status-note{margin-bottom:.5rem;font-size:.8125rem}@media (max-width: 768px){.attendance-calendar-date-grid{grid-template-columns:1fr}.profile-ocr-actions{gap:.75rem;flex-wrap:wrap}.attendance-calendar .fc .fc-toolbar-title{font-size:.95rem}.attendance-calendar .fc .fc-button{padding:.3rem .45rem;font-size:.8rem}.attendance-calendar .fc .fc-daygrid-day-frame{min-height:5.25rem}}.page-title-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:.75rem}.page-title-group{display:inline-flex;align-items:center;gap:.5rem}.page-title-heading{margin-bottom:0}.page-help-button{display:inline-flex;align-items:center;justify-content:center;width:1.9rem;height:1.9rem;min-width:1.9rem;min-height:1.9rem;padding:0;border-radius:999px;border:1px solid var(--border-subtle);background:var(--input-bg);color:var(--text-primary)}.page-help-button:hover{color:var(--accent-gold-light);border-color:var(--accent-gold)}.page-help-button svg{flex-shrink:0;stroke:currentColor}.help-modal{display:flex;flex-direction:column;gap:1rem}.help-modal-toolbar{display:flex;flex-direction:column;gap:.5rem}.help-modal-search-label{margin-bottom:0}.help-modal-status,.help-modal-empty{margin:0}.help-modal-layout{display:grid;grid-template-columns:minmax(14rem,18rem) minmax(0,1fr);gap:1rem;min-height:24rem}.help-modal-nav,.help-modal-content{border:1px solid var(--card-border);border-radius:var(--radius-md);background:#0000001f;padding:1rem}.help-modal-nav{overflow:auto}.help-modal-content{display:flex;flex-direction:column;gap:1rem}.help-modal-nav-item,.help-modal-results{display:flex;flex-direction:column;gap:.35rem}.help-modal-nav-row{display:flex;align-items:center;gap:.5rem;border-radius:var(--radius-sm)}.help-modal-nav-row.is-active,.help-modal-result.is-active,.admin-help-list-item.is-selected{background:#c9a22724}.help-modal-nav-toggle,.help-modal-nav-link,.help-modal-result,.admin-help-list-item{border:1px solid var(--border-subtle);background:var(--input-bg);color:var(--text-primary);border-radius:var(--radius-sm)}.help-modal-nav-toggle{width:2rem;min-width:2rem;height:2rem}.help-modal-nav-spacer{width:2rem;min-width:2rem}.help-modal-nav-link,.help-modal-result,.admin-help-list-item{width:100%;text-align:left;padding:.65rem .8rem}.help-modal-nav-link{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.help-modal-nav-badge{color:var(--accent-gold-light);font-size:.75rem}.help-modal-nav-children{margin-left:1.2rem}.help-modal-result,.admin-help-list-item{display:flex;flex-direction:column;gap:.2rem}.help-modal-result-title,.admin-help-list-title,.admin-help-audit-title{font-weight:600}.help-modal-result-path,.help-modal-result-snippet,.admin-help-list-meta,.admin-help-audit-meta{font-size:.8125rem}.help-modal-content-header{display:flex;flex-direction:column;gap:.35rem}.help-modal-section-title,.help-modal-section-snippet,.help-modal-content-heading,.help-modal-content-summary{margin:0}.help-modal-content-block{display:flex;flex-direction:column;gap:.5rem;padding-top:.75rem;border-top:1px solid var(--border-subtle)}.help-modal-content-block:first-of-type{padding-top:0;border-top:none}.help-modal-markdown :first-child{margin-top:0}.admin-help-tab{display:flex;flex-direction:column;gap:1rem}.admin-help-toolbar{display:flex;gap:1rem;flex-wrap:wrap}.admin-help-filter{min-width:14rem}.admin-help-layout{display:grid;grid-template-columns:minmax(14rem,18rem) minmax(0,1fr) minmax(14rem,18rem);gap:1rem;align-items:start}.admin-help-list,.admin-help-editor,.admin-help-audit{display:flex;flex-direction:column;gap:.75rem}.admin-help-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.admin-help-textarea{min-height:18rem}.admin-help-active-toggle{display:inline-flex;align-items:center;gap:.5rem}.admin-help-actions{display:flex;justify-content:flex-end}.admin-help-preview{display:flex;flex-direction:column;gap:.5rem;padding-top:.75rem;border-top:1px solid var(--border-subtle)}.admin-help-preview-heading,.admin-help-audit-heading{margin-bottom:0}.admin-help-audit-item{padding-top:.6rem;border-top:1px solid var(--border-subtle)}.admin-help-audit-item:first-of-type{padding-top:0;border-top:none}.resources-toolbar,.resources-section,.resources-list,.resources-item,.resources-item-body,.resources-item-actions,.resources-sections,.admin-resources-toolbar-actions,.admin-resources-category-dialog,.admin-resources-category-actions,.resources-preview{display:flex}.resources-toolbar,.admin-resources-toolbar-actions,.admin-resources-category-dialog,.resources-sections,.resources-item,.resources-item-body,.resources-preview{flex-direction:column}.resources-toolbar{flex-direction:row;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.resources-filter{min-width:14rem}.resources-status{margin-bottom:1rem}.resources-sections{gap:1rem}.resources-section{gap:.75rem}.resources-section-header{display:flex;justify-content:space-between;gap:1rem;align-items:baseline}.resources-section-title,.resources-section-count,.resources-item-title,.resources-dialog-summary,.resources-preview-meta{margin:0}.resources-list{flex-direction:column;gap:.75rem}.resources-item{justify-content:space-between;gap:1rem;padding-top:.75rem;border-top:1px solid var(--border-subtle)}.resources-item:first-child{padding-top:0;border-top:none}.resources-item-body,.resources-item-actions,.admin-resources-toolbar-actions,.admin-resources-category-dialog,.resources-preview{gap:.5rem}.resources-item-title{font-weight:600}.resources-item-summary,.resources-item-snippet{margin:0}.resources-item-actions{align-items:flex-start;justify-content:center}.resources-link-action{display:inline-flex;align-items:center;gap:.45rem;text-decoration:none}.resources-empty{padding:1rem}.resources-dialog-markdown :first-child{margin-top:0}.admin-resources-toolbar-actions{justify-content:flex-end}.admin-resources-category-actions{display:flex;align-items:end}@media (max-width: 900px){.help-modal-layout,.admin-help-layout,.admin-help-editor-grid{grid-template-columns:1fr}.resources-section-header,.resources-item{flex-direction:column}}.super-admin-proxy-actions,.layout-impersonation-actions,.layout-impersonation-role-actions,.layout-impersonation-role-footer{display:flex;gap:.75rem}.layout-impersonation-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.layout-impersonation-copy{display:flex;flex-direction:column;gap:.35rem}.layout-impersonation-title{margin:0;font-weight:700}.layout-impersonation-note,.layout-impersonation-dialog-note{margin:0}.layout-impersonation-role-actions{flex-wrap:wrap;margin-top:1rem}.layout-impersonation-role-footer{justify-content:flex-end;margin-top:1rem}@media (max-width: 900px){.layout-impersonation-banner{flex-direction:column;align-items:stretch}.layout-impersonation-actions{justify-content:flex-start}}.achievements-stack{display:grid;gap:1rem}.achievement-badge-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:.75rem}.achievement-badge-card{display:flex;gap:.75rem;align-items:flex-start;padding:.85rem;border:1px solid var(--card-border);border-radius:8px;background:var(--card-bg)}.achievement-badge-card.is-locked{opacity:.76}.achievement-badge-image{width:3.5rem;height:3.5rem;flex:0 0 auto;border-radius:8px;object-fit:cover;border:1px solid var(--border-subtle);background:var(--input-bg)}.achievement-badge-image-sm{width:2.25rem;height:2.25rem}.achievement-badge-body{display:grid;gap:.3rem;min-width:0}.achievement-badge-title,.achievement-badge-description,.achievement-badge-progress{margin:0}.achievement-dashboard-awards,.achievement-dashboard-suggestion,.achievement-admin-list{display:grid;gap:.5rem}.achievement-dashboard-award,.achievement-image-action-row,.achievement-admin-row,.achievement-threshold-editor{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.achievement-image-action-row{justify-content:flex-start}.achievement-admin-row{padding:.5rem 0;border-bottom:1px solid var(--border-subtle)}.achievement-threshold-input{width:6rem}.achievement-family-card{display:grid;gap:.75rem}.achievement-family-header,.achievement-tier-cell{display:grid;gap:.2rem}.achievement-family-description,.achievement-threshold-note{margin:0}.achievement-tier-state{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:999px;border:1px solid var(--border-subtle);font-size:.85rem;line-height:1.2}.achievement-tier-state.is-enabled{background:#2e7d321f;color:#1f5e26}.achievement-tier-state.is-disabled{background:#7878781f;color:var(--text-muted)}
