nav{color:#fff;background-color:#000;grid-template-columns:auto 1fr;justify-content:space-between;place-items:center;width:100%;height:3rem;padding:0 1rem;display:flex;position:fixed;top:0}nav ul{gap:1rem;list-style:none;display:flex}nav ul li{cursor:pointer}nav ul a{color:#fff;text-decoration:none}nav .nav-access{text-transform:capitalize;background:red;border-radius:.25rem;padding:.25rem .5rem;font-size:.65rem}nav .nav-access.viewer{background:green}.page-header{background:#191919;margin-bottom:1rem;padding:1rem;display:grid}.page-header h1{text-transform:uppercase;color:#00c3ff;font-size:1.5rem}.page-header span{text-transform:uppercase;color:#727272;font-size:.75rem}.horizontal-form{background:#191919;column-gap:.5rem;margin-bottom:1rem;padding:1rem;display:flex}button[type=submit]{color:#000;cursor:pointer;background:#00c3ff;border:none;border-radius:.25rem;padding:.45rem 1rem;font-weight:600;transition:all .2s ease-in-out}button[type=submit]:hover{background:#00a0cc}.members-page{display:grid}.member-section{background:#191919;border:1px solid #222;border-radius:6px;margin-bottom:1rem;display:grid;box-shadow:0 2px 4px #00000080}.member-section h3{text-transform:uppercase;background:#121212;font-size:.75rem}.member-section-header{background:#121212;border-bottom:1px solid #212121;align-items:center;column-gap:.5rem;padding:.5rem 1rem;display:flex}.member-section-header h3{color:#dedede;margin:0;font-size:.85rem;font-weight:600}.member-section-header .dot{border-radius:50%;width:12px;height:12px}.members-table{table-layout:fixed;border-collapse:collapse;text-align:left;width:100%}.members-table tr{border-bottom:1px solid #222;padding:.5rem 0}.members-table tr th{color:#dedede}.members-table tr td,.members-table tr th{padding:.25rem 1rem;font-size:.8rem}.members-table tr td{color:#a8a8a8;font-size:.7rem}.members-table select{color:#dedede;background:#121212;border:1px solid #222;border-radius:4px;padding:.25rem;font-size:.7rem}.members-table .edit-btn{cursor:pointer;color:#028dff;border:1px solid #0099ff40;justify-content:center;width:22px;height:22px;font-size:.85rem;text-decoration:none;display:grid}.members-table .delete-btn{cursor:pointer;color:#ff3502;background:0 0;border:1px solid #ff350240;justify-content:center;width:22px;height:22px;font-size:.85rem;text-decoration:none;display:grid}.members-table .actions-cell{column-gap:.5rem;display:flex}.modal-backdrop{background:#000000bf;justify-content:center;padding:1rem;display:grid;position:fixed}th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}th.sortable:hover{color:#e5e7eb}.sort-indicator{opacity:.6;font-size:.65rem}.schedule-grid{-webkit-overflow-scrolling:touch;width:100%;margin-top:8px;overflow:auto hidden}.schedule-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:.7rem}.schedule-table th{text-align:center;color:#d4d4d4;white-space:nowrap;border-bottom:1px solid #2a2a2a;border-right:1px solid #2a2a2a;font-weight:600}.schedule-table thead tr:first-child th{color:#bfdbfe;background:#1e293b;border-bottom:1px solid #6e6e6e;border-right:1px solid #6e6e6e}.schedule-table thead tr:last-child th{color:#202020;background:#68719b;font-size:.6rem;font-weight:500}.schedule-table thead tr:last-child th:first-child{border-left:2px solid #404040}.schedule-table tbody tr{border-bottom:1px solid #262626}.schedule-table td{text-align:center;vertical-align:middle;white-space:nowrap;border-right:1px solid #262626;height:20px}.cell-member{color:#e5e7eb;justify-content:space-between;align-items:center;font-weight:500;display:flex}.cell-member a{color:#fff}.cell-assignment{padding:0;font-size:.6rem}.assignment-pill{white-space:nowrap;text-overflow:ellipsis;border-radius:0;justify-content:center;align-items:center;width:100%;height:100%;font-size:.6rem;font-weight:500;line-height:1;display:flex;overflow:hidden}.assignment-pill[style*=opacity]{box-shadow:none;color:#525252;background:0 0!important}.cell-assignment select{color:#e5e7eb;appearance:none;cursor:pointer;text-align:center;text-align-last:center;background:0 0;border:none;outline:none;width:100%;height:100%;font-size:.6rem;font-weight:500}.cell-assignment select option{text-align:left;color:#e5e7eb;background:#141414}.cell-assignment select option:first-of-type{color:#9ca3af}.cell-assignment select::-ms-expand{display:none}.cell-assignment select:focus{box-shadow:inset 0 0 0 1px #60a5fa}.schedule-table th:nth-child(3n+2),.schedule-table td:nth-child(3n+2){background:#161616;border-left:2px solid #404040}.schedule-row:hover td{background-color:#ffffff05}@media (max-width:600px){.schedule-cell{min-width:30px;height:32px}.cell-member{min-width:130px;max-width:130px;font-size:.65rem}}.group-tabs{border:1px solid #2c2c2c;border-radius:2px;gap:8px;margin-bottom:12px;padding:8px;display:flex;overflow-x:auto}.group-tab{--group-color:#64748b;color:#e5e7eb;white-space:nowrap;background:color-mix(in srgb,var(--group-color)18%,#020617);border:1px solid color-mix(in srgb,var(--group-color)45%,transparent);border-radius:4px;align-items:center;gap:8px;padding:8px 12px;font-size:.85rem;font-weight:500;text-decoration:none;transition:all .15s;display:inline-flex}.group-tab:hover{background:color-mix(in srgb,var(--group-color)28%,#020617);border-color:var(--group-color)}.group-tab:focus-visible{outline:2px solid var(--group-color);outline-offset:2px}.group-tab-dot{background:var(--group-color);border-radius:50%;flex-shrink:0;width:8px;height:8px}.group-tab-label{line-height:1}.schedule-toolbar{justify-content:space-between;align-items:center;column-gap:1rem;margin-bottom:1rem;font-size:.875rem;display:flex}.schedule-toolbar .week-controller{border:1px solid #2c2c2c;align-items:center;gap:1rem;padding:8px;display:flex}.schedule-toolbar .week-controller button{cursor:pointer;color:#e5e7eb;background:0 0;border:1px solid #444;border-radius:4px;padding:.25rem 1rem}.schedule-toolbar .week-controller button:hover{background:#333;border-color:#666}.schedule-toolbar .export-btn{cursor:pointer;color:#fff;background:#1d6f42;border:none;border-radius:4px;align-items:center;padding:.4rem .8rem;display:flex}.schedule-toolbar .export-btn:hover{background:#155d34}.member-header{border-bottom:1px solid #262626;justify-content:space-between;gap:1.25rem;margin-bottom:1.75rem;padding-bottom:1rem;display:flex}.member-header h1{color:#fafafa;margin:0;font-size:1.85rem;font-weight:600}.member-header .member-subtitle{color:#a3a3a3;margin-top:.2rem;font-size:.95rem}.member-header .back-link{color:#e5e5e5;border:1px solid #0000;border-radius:.375rem;padding:.35rem .6rem;font-size:.9rem;text-decoration:none}.member-header .back-link:hover{background:#0a0a0a;border-color:#404040}.member-section{margin-top:2rem}.member-section h3{text-transform:uppercase;letter-spacing:.12em;color:#e5e5e5;border-bottom:1px solid #262626;margin-bottom:.75rem;padding-bottom:.45rem;font-size:.9rem;font-weight:600}.member-section .muted{color:#a3a3a3;font-size:.9rem}.groups-cell{flex-wrap:wrap;gap:.45rem;display:flex}.group-pill{color:#e5e5e5;white-space:nowrap;background:#0a0a0a;border:1px solid #262626;border-radius:999px;padding:.3rem .65rem;font-size:.7rem}.handoff-grid{grid-template-columns:repeat(3,1fr);gap:.6rem;display:grid}.handoff-card{background:#0a0a0a;border:1px solid #262626;border-radius:.5rem;padding:.6rem}.handoff-header{text-transform:uppercase;letter-spacing:.14em;color:#a3a3a3;font-size:.65rem}.handoff-date{color:#fafafa;margin-bottom:.45rem;font-size:.95rem;font-weight:600}.handoff-entry{border-top:1px solid #262626;margin-top:.4rem;padding-top:.4rem}.handoff-time{color:#a3a3a3;font-size:.72rem}.handoff-role{color:#fafafa;font-size:.9rem;font-weight:600}.handoff-group{color:#d4d4d4;font-size:.72rem}.handoff-off{color:#a3a3a3;text-align:center;margin-top:.6rem;font-style:italic}.weekly-summary{grid-template-columns:repeat(2,1fr);gap:.6rem;margin-top:.5rem;display:grid}.summary-card{background:#0a0a0a;border:1px solid #262626;border-radius:.5rem;padding:.7rem}.summary-label{text-transform:uppercase;letter-spacing:.14em;color:#a3a3a3;font-size:.65rem}.summary-value{color:#fafafa;margin-top:.25rem;font-size:1.5rem;font-weight:700}.summary-unit{color:#a3a3a3;margin-left:.2rem;font-size:.85rem;font-weight:500}.weekly-grid{grid-template-columns:repeat(7,1fr);gap:.6rem;margin-top:.75rem;display:grid}.weekly-day{background:#0a0a0a;border:1px solid #262626;border-radius:.5rem;flex-direction:column;min-height:150px;display:flex}.weekly-day-header{border-bottom:1px solid #262626;padding:.45rem .5rem}.weekly-day-name{text-transform:uppercase;letter-spacing:.14em;color:#a3a3a3;font-size:.65rem}.weekly-day-date{color:#fafafa;font-size:.9rem;font-weight:600}.weekly-day-body{flex-direction:column;flex:1;gap:.35rem;padding:.5rem;display:flex}.weekly-off{text-align:center;color:#a3a3a3;margin-top:.6rem;font-size:.8rem;font-style:italic}.weekly-shift{background:#050505;border:1px solid #262626;border-radius:.4rem;padding:.4rem .45rem}.weekly-time{color:#a3a3a3;font-size:.7rem}.weekly-role{color:#fafafa;letter-spacing:.02em;font-size:.85rem;font-weight:600}.weekly-group{color:#d4d4d4;font-size:.7rem}@media (max-width:1024px){.weekly-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.handoff-grid,.weekly-summary{grid-template-columns:1fr}}@media (max-width:640px){.weekly-grid{grid-template-columns:1fr}.member-header{flex-direction:column;align-items:flex-start;gap:.75rem}}.modal-backdrop{z-index:100;background:#000000e6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-card{color:#fff;background:#000;border:1px solid #222;border-radius:6px;flex-direction:column;width:420px;display:flex}.modal-header{border-bottom:1px solid #222;justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.modal-header h2{letter-spacing:.05em;text-transform:uppercase;font-size:.95rem;font-weight:600}.modal-close{color:#999;cursor:pointer;background:0 0;border:none;font-size:1rem}.modal-close:hover{color:#fff}.modal-body{padding:1rem}.field{margin-bottom:.75rem}.field label{letter-spacing:.06em;text-transform:uppercase;color:#bbb;margin-bottom:.25rem;font-size:.7rem;display:block}.field input,.field textarea{color:#fff;background:#000;border:1px solid #333;border-radius:4px;width:100%;padding:.45rem .5rem;font-size:.85rem}.field textarea{resize:vertical;min-height:60px}.field input:focus,.field textarea:focus{border-color:var(--accent);outline:none}.field small{color:#777;margin-top:.25rem;font-size:.65rem;display:block}.checkbox-field label{color:#fff;align-items:center;gap:.5rem;font-size:.8rem;display:flex}.modal-footer{border-top:1px solid #222;justify-content:flex-end;gap:.5rem;padding:.75rem 1rem;display:flex}button{letter-spacing:.05em;text-transform:uppercase;cursor:pointer;border-radius:4px;padding:.4rem .7rem;font-size:.75rem}button.primary{background:var(--accent);color:#000;border:none;font-weight:600}button.primary:hover{opacity:.9}button.secondary:hover{border-color:#555}.page-header{justify-content:space-between;align-items:center;margin-bottom:1.25rem;display:flex}.page-header h1{color:#f1f5f9;font-size:1.5rem;font-weight:600}.actions{gap:.5rem;display:flex}button{cursor:pointer;border:1px solid #0000;border-radius:6px;padding:.45rem .75rem;font-size:.85rem;transition:background .15s,border .15s}button.primary{color:#fff;background:#2563eb}button.primary:hover{background:#1d4ed8}button.secondary{color:#e5e7eb;background:#111827;border:1px solid #374151}button.secondary:hover{background:#1f2933}.cert-table{border-collapse:collapse;background:#0b1220;border-radius:8px;width:100%;overflow:hidden}.cert-table thead{background:#020617}.cert-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;border-bottom:1px solid #1e293b;padding:.75rem;font-size:.75rem;font-weight:600}.cert-table td{color:#e5e7eb;border-bottom:1px solid #1e293b;padding:.75rem;font-size:.85rem}.cert-table tbody tr:hover{background:#020617}.cert-table a{color:#60a5fa;font-weight:500;text-decoration:none}.cert-table a:hover{text-decoration:underline}.cert-table tbody tr td:only-child{text-align:center;color:#64748b}.search-select{margin-bottom:.75rem;position:relative}.search-select label{letter-spacing:.06em;text-transform:uppercase;color:#bbb;margin-bottom:.25rem;font-size:.7rem;display:block}.search-select-input{color:#fff;cursor:pointer;background:#000;border:1px solid #333;border-radius:4px;padding:.45rem .5rem;font-size:.85rem}.search-select-input.open{border-color:var(--accent)}.search-select-dropdown{z-index:20;background:#000;border:1px solid #333;border-radius:4px;position:absolute;top:calc(100% + 4px);left:0;right:0}.search-select-dropdown input{color:#fff;background:#000;border:none;border-bottom:1px solid #222;width:100%;padding:.4rem .5rem;font-size:.8rem}.search-select-dropdown input:focus{border-bottom-color:var(--accent);outline:none}.search-select-dropdown ul{max-height:160px;margin:0;padding:0;list-style:none;overflow-y:auto}.search-select-dropdown li{cursor:pointer;padding:.4rem .5rem;font-size:.8rem}.search-select-dropdown li:hover{background:#0a0a0a}.search-select-dropdown li.empty{color:#777;cursor:default}.modal-backdrop{z-index:50;background:#0009;place-items:center;display:grid;position:fixed;inset:0}.modal{color:#e5e7eb;background:#000;border:1px solid #1e293b;border-radius:8px;width:440px;padding:16px}.modal h2{color:#f8fafc;margin-bottom:12px;font-size:1rem}.modal-label{color:#cbd5f5;margin-bottom:2px;font-size:.7rem;font-weight:600;display:block}input,select{color:#e5e7eb;background:#000;border:1px solid #585858;border-radius:4px;padding:6px 8px}input::placeholder{color:#94a3b8}input:focus,select:focus{border-color:#60a5fa;outline:none;box-shadow:0 0 0 1px #60a5fa}*{box-sizing:border-box;margin:0;padding:0;font-family:roboto}body{color:#f0f0f0;background-color:#131313}main{margin-top:3rem;padding:1rem;display:grid}
