.veterans-admin-page{padding-bottom:3rem}.container{padding:1rem 1.5rem}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.5rem 0 1rem;display:flex}.page-header h1{font-family:var(--font-heading,"Playfair Display", serif);color:var(--color-text,#f5f0e8);margin:0 0 .2rem;font-size:1.75rem}.subtitle{color:var(--color-text,#f5f0e8);opacity:.6;margin:0;font-size:.875rem}.header-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.auth-error{background:#c0392b1a;border-radius:6px;margin-bottom:1rem;padding:1rem 1.5rem}.summary-row{background:var(--color-surface,#2c2c2c);border-radius:6px;flex-wrap:wrap;gap:1.5rem;margin-bottom:1rem;padding:.75rem 1rem;display:flex}.summary-stat{color:var(--color-text,#f5f0e8);opacity:.7;font-size:.85rem}.summary-stat strong{color:var(--color-accent,#c9a84c);font-size:1rem}.vet-table{border-collapse:collapse;width:100%;font-size:.85rem}.vet-table th{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text,#f5f0e8);opacity:.4;border-bottom:1px solid #f5f0e81a;padding:.4rem .75rem .4rem 0;font-size:.7rem;font-weight:600}.vet-table td{color:var(--color-text,#f5f0e8);vertical-align:top;border-bottom:1px solid #f5f0e80d;padding:.6rem .75rem .6rem 0}.vet-table tr:last-child td{border-bottom:none}.vet-table tr.is-hidden-row{opacity:.4}.col-name{width:150px}.col-branch{width:90px}.col-rank{width:130px}.col-years{white-space:nowrap;width:90px}.col-era{width:160px}.col-date{white-space:nowrap;width:95px}.col-vis{text-align:center;width:60px}.col-edit{text-align:right;width:50px}.cell-name{font-weight:500}.cell-branch{color:var(--color-accent,#c9a84c);font-weight:600}.cell-date{opacity:.55;font-size:.78rem}.cell-note{opacity:.7;max-width:180px;font-size:.8rem}.cell-era{opacity:.7;font-size:.8rem}.cell-vis{text-align:center}.cell-edit{text-align:right}.deceased-badge{text-transform:uppercase;letter-spacing:.05em;color:var(--color-accent,#c9a84c);vertical-align:middle;background:#c9a84c1f;border:1px solid #c9a84c4d;border-radius:3px;margin-left:5px;padding:0 4px;font-size:.65rem;font-weight:600;display:inline-block}.btn-vis{color:var(--color-text,#f5f0e8);cursor:pointer;opacity:.5;background:0 0;border:1px solid #f5f0e833;border-radius:3px;padding:.2rem .5rem;font-size:.75rem;transition:opacity .15s,border-color .15s,color .15s}.btn-vis:hover{opacity:1}.btn-vis.is-visible{opacity:1;border-color:var(--color-accent,#c9a84c);color:var(--color-accent,#c9a84c)}.btn-edit{color:var(--color-text,#f5f0e8);cursor:pointer;opacity:.45;background:0 0;border:1px solid #f5f0e826;border-radius:3px;padding:.2rem .5rem;font-size:.73rem;transition:opacity .15s,border-color .15s}.btn-edit:hover{opacity:1;border-color:#f5f0e866}.loading-cell{opacity:.4;padding:1.5rem 0;font-style:italic}.btn-primary{background:var(--color-accent,#c9a84c);color:#1a1a1a;cursor:pointer;font-family:var(--font-body);border:none;border-radius:4px;align-items:center;font-weight:600;text-decoration:none;transition:opacity .15s;display:inline-flex}.btn-primary:hover{opacity:.88}.btn-secondary{color:var(--color-text,#f5f0e8);cursor:pointer;font-family:var(--font-body);background:0 0;border:1px solid #f5f0e84d;border-radius:4px;align-items:center;text-decoration:none;transition:border-color .15s,opacity .15s;display:inline-flex}.btn-secondary:hover{border-color:var(--color-accent,#c9a84c)}.btn-sm{min-height:28px;padding:.25rem .65rem;font-size:.8rem}.vet-modal{background:var(--color-surface,#2c2c2c);width:calc(100vw - 2rem);max-width:540px;color:var(--color-text,#f5f0e8);border:1px solid #f5f0e81f;border-radius:8px;padding:0;box-shadow:0 20px 60px #0009}.vet-modal::backdrop{background:#000000a6}.modal-inner{padding:1.5rem 1.75rem 1.75rem}.modal-heading{font-family:var(--font-heading,"Playfair Display", serif);color:var(--color-text,#f5f0e8);margin:0 0 1.25rem;font-size:1.25rem}.modal-field{flex-direction:column;gap:.3rem;margin-bottom:.85rem;display:flex}.modal-field--inline{flex-direction:row;align-items:center;gap:.5rem}.modal-row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.modal-row--narrow{grid-template-columns:120px 120px}.modal-label{text-transform:uppercase;letter-spacing:.05em;opacity:.6;font-size:.78rem;font-weight:600}.modal-label--checkbox{cursor:pointer;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.req{color:var(--color-accent,#c9a84c)}.modal-input{color:var(--color-text,#f5f0e8);font-family:var(--font-body);box-sizing:border-box;background:#f5f0e80f;border:1px solid #f5f0e82e;border-radius:4px;outline:none;width:100%;padding:.45rem .65rem;font-size:.875rem;transition:border-color .15s}.modal-input:focus{border-color:var(--color-accent,#c9a84c)}.modal-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23F5F0E8' opacity='.4'/%3E%3C/svg%3E");background-position:right .6rem center;background-repeat:no-repeat;padding-right:1.8rem}textarea.modal-input{resize:vertical;min-height:68px}.modal-error{background:#c0392b26;border:1px solid #c0392b4d;border-radius:4px;margin-bottom:.85rem;padding:.5rem .75rem;font-size:.82rem}.modal-actions{justify-content:flex-end;gap:.5rem;margin-top:1rem;display:flex}.cm-results{background:var(--color-surface,#2c2c2c);z-index:10;border:1px solid #f5f0e82e;border-radius:4px;max-height:180px;margin:0;padding:0;list-style:none;position:relative;overflow-y:auto}.cm-result-item{cursor:pointer;border-bottom:1px solid #f5f0e80f;padding:.5rem .75rem;font-size:.875rem;transition:background .1s}.cm-result-item:last-child{border-bottom:none}.cm-result-item:hover{background:#f5f0e814}.cm-deceased-tag{text-transform:uppercase;letter-spacing:.04em;color:var(--color-accent,#c9a84c);opacity:.8;margin-left:6px;font-size:.65rem;font-weight:600}.cm-no-results{opacity:.5;padding:.5rem .75rem;font-size:.85rem}.cm-selected{background:#c9a84c1a;border:1px solid #c9a84c40;border-radius:4px;align-items:center;gap:.5rem;margin-top:.4rem;padding:.35rem .65rem;font-size:.875rem;display:flex}.cm-clear-btn{color:var(--color-text,#f5f0e8);cursor:pointer;opacity:.5;background:0 0;border:none;margin-left:auto;padding:0;font-size:1rem;line-height:1}.cm-clear-btn:hover{opacity:1}.edit-cm-name{color:var(--color-text,#f5f0e8);margin:0 0 .85rem;font-size:.95rem;font-weight:600}.modal-photo-preview{object-fit:cover;object-position:top center;border:1px solid #f5f0e826;border-radius:4px;width:80px;height:100px;margin-bottom:.5rem;display:block}.btn-rotate-photo{color:var(--color-text);cursor:pointer;background:0 0;border:1px solid #f5f0e833;border-radius:3px;margin-bottom:.5rem;padding:.2rem .6rem;font-size:.75rem;display:block}.btn-rotate-photo:hover{border-color:var(--color-accent);color:var(--color-accent)}.modal-photo-upload-label{color:var(--color-text,#f5f0e8);cursor:pointer;background:0 0;border:1px solid #f5f0e840;border-radius:4px;align-items:center;gap:.4rem;padding:.25rem .6rem;font-size:.8rem;transition:border-color .15s;display:inline-flex}.modal-photo-upload-label:hover{border-color:var(--color-accent,#c9a84c)}.modal-photo-status{opacity:.7;min-height:1.2em;margin-top:.3rem;font-size:.78rem}.help-dialog{color:#f5f0e8;background:#2c2c2c;border:1px solid #c9a84c40;border-radius:10px;width:100%;max-width:min(680px,95vw);padding:0}.help-dialog::backdrop{background:#000000b3}.help-dialog-inner{flex-direction:column;max-height:min(80dvh,80vh);display:flex}.help-dialog-header{border-bottom:1px solid #c9a84c33;flex-shrink:0;justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.help-dialog-header h2{color:#c9a84c;margin:0;font-family:Playfair Display,serif;font-size:1.1rem}.help-close-btn{color:#f5f0e8;cursor:pointer;opacity:.6;background:0 0;border:none;padding:.2rem .4rem;font-size:1.5rem;line-height:1}.help-close-btn:hover{opacity:1}.help-dialog-body{padding:1.25rem;overflow-y:auto}.help-section{margin-bottom:1.25rem}.help-section:last-child{margin-bottom:0}.help-section h3{text-transform:uppercase;letter-spacing:.05em;color:#c9a84c;margin:0 0 .5rem;font-size:.85rem;font-weight:700}.help-section p,.help-section li,.help-section dd{color:#f5f0e8;opacity:.85;margin:0 0 .4rem;font-size:.9rem;line-height:1.6}
