.speed-slider{border-radius:var(--radius);background:#f0f5f1;border:1px solid #b6d9c8;padding:14px 16px}.speed-slider-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.speed-slider-label{color:var(--color-text-primary);font-size:13px;font-weight:600}.speed-slider-header-right{align-items:center;gap:8px;display:flex}.speed-slider-value{color:var(--color-primary);background:#fff;border:1px solid #b6d9c8;border-radius:12px;padding:2px 10px;font-size:13px;font-weight:600}.speed-slider-est{color:#6b7280;white-space:nowrap;background:#f5f5f5;border:1px solid #ddd;border-radius:12px;padding:2px 10px;font-size:12px;font-weight:500}.speed-slider-track{align-items:center;gap:10px;display:flex}.speed-hint{color:var(--color-text-muted);white-space:nowrap;flex-shrink:0;font-size:12px}.speed-range{appearance:none;background:linear-gradient(to right, var(--color-primary) 0%, var(--color-primary) calc((var(--speed-pct,50%)) * 100%), #d1e7da calc((var(--speed-pct,50%)) * 100%), #d1e7da 100%);cursor:pointer;border-radius:2px;outline:none;flex:1;height:4px}.speed-range:disabled{opacity:.5;cursor:not-allowed}.speed-range::-webkit-slider-thumb{appearance:none;background:var(--color-primary);cursor:pointer;border:2px solid #fff;border-radius:50%;width:18px;height:18px;transition:transform .1s;box-shadow:0 1px 4px #0003}.speed-range::-webkit-slider-thumb:hover{transform:scale(1.15)}.speed-range::-moz-range-thumb{background:var(--color-primary);cursor:pointer;border:2px solid #fff;border-radius:50%;width:18px;height:18px;box-shadow:0 1px 4px #0003}.pl-wrap{flex-direction:column;gap:6px;margin-top:4px;display:flex}.pl-btn{color:#7a6040;cursor:pointer;background:#fdf8f3;border:1px solid #c8b89a;border-radius:6px;align-self:flex-start;align-items:center;gap:5px;padding:4px 10px;font-size:.78rem;font-weight:500;line-height:1.4;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.pl-btn:hover:not(:disabled){color:#5a4020;background:#f5ede0;border-color:#a8864a}.pl-btn:disabled{opacity:.45;cursor:not-allowed}.pl-error{color:#c0392b;font-size:.78rem}.pl-preview{background:#fffdf8;border:1.5px solid #c8b89a;border-radius:8px;flex-direction:column;gap:8px;padding:10px 12px;animation:.18s pl-slide-in;display:flex}@keyframes pl-slide-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.pl-preview-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.pl-preview-label{color:#7a6040;font-size:.75rem;font-style:italic}.pl-preview-close{cursor:pointer;color:#aaa;background:0 0;border:none;padding:0 2px;font-size:.9rem;line-height:1}.pl-preview-close:hover{color:#555}.pl-preview-textarea{resize:vertical;box-sizing:border-box;color:#3a2f20;background:#fff;border:1px solid #d4c4aa;border-radius:6px;width:100%;padding:7px 9px;font-family:inherit;font-size:.88rem;line-height:1.5}.pl-preview-textarea:focus{border-color:#a8864a;outline:none;box-shadow:0 0 0 2px #a8864a1f}.pl-preview-actions{align-items:center;gap:8px;display:flex}.pl-accept-btn{color:#fff;cursor:pointer;background:#2d7a4f;border:none;border-radius:6px;padding:5px 14px;font-size:.82rem;font-weight:600;transition:background .15s}.pl-accept-btn:hover:not(:disabled){background:#1e6040}.pl-accept-btn:disabled{opacity:.45;cursor:not-allowed}.pl-dismiss-btn{color:#666;cursor:pointer;background:#fff;border:1px solid #ccc;border-radius:6px;padding:5px 12px;font-size:.82rem;transition:background .15s}.pl-dismiss-btn:hover{background:#f5f5f5}.speech-btn{border:1.5px solid var(--color-border,#e0ddd8);cursor:pointer;white-space:nowrap;background:0 0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;padding:5px 7px;font-size:15px;line-height:1;transition:background .15s,border-color .15s;display:inline-flex}.speech-btn:hover:not(:disabled){background:#f5f5f5;border-color:#bbb}.speech-btn--active{background:#fee2e2;border-color:#ef4444;animation:1.2s ease-in-out infinite speech-pulse}.speech-btn:disabled{opacity:.4;cursor:not-allowed}@keyframes speech-pulse{0%,to{opacity:1}50%{opacity:.55}}[data-theme=dark] .speech-btn{color:#ccc;border-color:#444}[data-theme=dark] .speech-btn:hover:not(:disabled){background:#333;border-color:#666}[data-theme=dark] .speech-btn--active{background:#3b1616;border-color:#f87171}.content-creator{width:100%;max-width:680px}.cc-error{color:#b91c1c;cursor:pointer;background:#fff0f0;border:1px solid #fca5a5;border-radius:8px;margin-bottom:20px;padding:10px 16px;font-size:14px}.cc-type-toggle{gap:8px;margin-bottom:10px;display:flex}.cc-type-btn{border:1.5px solid var(--color-border,#e0ddd8);color:var(--color-text-muted,#666);cursor:pointer;background:#fff;border-radius:20px;padding:8px 20px;font-family:inherit;font-size:14px;font-weight:600;transition:all .15s}.cc-type-btn.active{background:var(--color-primary,#2d5a3d);border-color:var(--color-primary,#2d5a3d);color:#fff}.cc-type-btn:disabled{opacity:.5;cursor:default}.cc-type-desc{color:var(--color-text-muted,#777);margin:0 0 20px;font-size:13px;line-height:1.5}.cc-label{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted,#777);margin-bottom:8px;font-size:12px;font-weight:600;display:block}.cc-label-hint{text-transform:none;letter-spacing:0;font-size:12px;font-weight:400}.cc-input,.cc-textarea{border:1.5px solid var(--color-border,#e0ddd8);width:100%;color:var(--color-text-primary,#1a1a1a);box-sizing:border-box;background:#fff;border-radius:8px;margin-bottom:16px;padding:10px 14px;font-family:inherit;font-size:15px;transition:border-color .15s;display:block}.cc-input{resize:none;height:auto}.cc-textarea{resize:vertical;line-height:1.55}.cc-input:focus,.cc-textarea:focus{border-color:var(--color-primary,#2d5a3d);outline:none}.cc-input:disabled,.cc-textarea:disabled{opacity:.6}.cc-italic{font-style:italic}.cc-translate-row,.cc-preview-row{margin-bottom:16px}.cc-btn{cursor:pointer;border:none;border-radius:8px;padding:9px 20px;font-family:inherit;font-size:14px;font-weight:600;transition:background .15s,color .15s}.cc-btn:disabled{opacity:.45;cursor:default}.cc-btn-primary{background:var(--color-primary,#2d5a3d);color:#fff}.cc-btn-primary:not(:disabled):hover{background:var(--color-primary-dark,#1f3d2b)}.cc-btn-translate{color:var(--color-primary,#2d5a3d);background:#f0f6f2;border:1px solid #c8e0d0}.cc-btn-translate:not(:disabled):hover{background:#e0f0e8}.cc-btn-preview{color:var(--color-text-primary,#1a1a1a);border:1px solid var(--color-border,#e0ddd8);background:#f8f5f0}.cc-btn-preview:not(:disabled):hover{background:#f0ebe3}.cc-btn-preview.playing{color:#fff;background:#c8956c;border-color:#c8956c}.cc-btn-preview.playing:not(:disabled):hover{background:#b07850}.cc-btn-cancel{color:var(--color-text-primary,#1a1a1a);background:#f0ede8}.cc-btn-cancel:not(:disabled):hover{background:#e5e0d8}.cc-actions{border-top:1px solid var(--color-border,#e0ddd8);flex-wrap:wrap;gap:10px;margin-top:8px;padding-top:16px;display:flex}.cc-media-list{flex-direction:column;gap:12px;margin-bottom:12px;display:flex}.cc-media-item{border:1px solid var(--color-border,#e0ddd8);background:#fff;border-radius:10px;gap:0;display:flex;overflow:hidden}.cc-mi-thumb-col{background:#f0ede8;flex-shrink:0;width:130px;position:relative}.cc-mi-thumb{object-fit:cover;width:130px;height:100%;min-height:100px;display:block}.cc-mi-remove{color:#fff;cursor:pointer;background:#0000008c;border:none;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;padding:0;font-size:10px;line-height:1;transition:background .15s;display:flex;position:absolute;top:6px;left:6px}.cc-mi-remove:hover{background:#b91c1c}.cc-mi-remove:disabled{opacity:.5;cursor:not-allowed}.cc-mi-fields{flex-direction:column;flex:1;gap:10px;min-width:0;padding:12px 14px;display:flex}.cc-mi-field-row{align-items:flex-start;gap:8px;display:flex}.cc-mi-field-icon{flex-shrink:0;margin-top:18px;font-size:15px;line-height:1}.cc-mi-field-body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.cc-mi-field-label{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted,#999);align-items:center;gap:6px;font-size:10px;font-weight:700;display:flex}.cc-caption-est{color:#6b7280;white-space:nowrap;text-transform:none;letter-spacing:0;background:#f5f5f5;border:1px solid #ddd;border-radius:10px;margin-left:auto;padding:1px 7px;font-size:11px;font-weight:500}.cc-mi-from-exif{text-transform:none;letter-spacing:0;font-style:italic;font-weight:400}.cc-mi-input{border:1.5px solid var(--color-border,#e0ddd8);width:100%;color:var(--color-text-primary,#1a1a1a);box-sizing:border-box;background:#fff;border-radius:6px;padding:6px 10px;font-family:inherit;font-size:13px;transition:border-color .15s}.cc-mi-input:focus{border-color:var(--color-primary,#2d5a3d);outline:none}.cc-mi-input:disabled{opacity:.6}.cc-mi-caption-actions{flex-wrap:wrap;align-items:flex-start;gap:6px;margin-top:2px;display:flex}.cc-describe-btn{color:#2563a0;cursor:pointer;white-space:nowrap;background:#f3f8fb;border:1px solid #b8c8d4;border-radius:6px;align-items:center;gap:5px;padding:4px 10px;font-size:.78rem;font-weight:500;line-height:1.4;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.cc-describe-btn:hover:not(:disabled){color:#1a4a7a;background:#e0effa;border-color:#2563a0}.cc-describe-btn:disabled{opacity:.45;cursor:not-allowed}.cc-mi-caption{border:1.5px solid var(--color-border,#e0ddd8);resize:vertical;background:#fffdf8;border-radius:6px;width:100%;padding:6px 10px;font-family:inherit;font-size:13px;line-height:1.45;transition:border-color .15s}.cc-mi-caption:focus{border-color:var(--color-primary,#2d5a3d);outline:none}.cc-mi-caption:disabled{opacity:.6}.cc-mi-resolved{color:var(--color-text-muted,#888);font-size:11px;font-style:italic}.cc-mi-loc-row{align-items:center;gap:6px;display:flex}.cc-mi-loc-input{flex:1}.cc-mi-search-btn{border:1.5px solid var(--color-border,#e0ddd8);cursor:pointer;background:#fff;border-radius:6px;flex-shrink:0;padding:6px 10px;font-family:inherit;font-size:13px;line-height:1;transition:border-color .15s,background .15s}.cc-mi-search-btn:not(:disabled):hover{border-color:var(--color-primary,#2d5a3d);background:#f0f6f2}.cc-mi-search-btn:disabled{opacity:.5;cursor:default}.cc-mi-clear-loc{border:1px solid var(--color-border,#e0ddd8);cursor:pointer;width:24px;height:24px;color:var(--color-text-muted,#888);background:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:10px;transition:all .15s;display:flex}.cc-mi-clear-loc:hover{color:#b91c1c;background:#fee2e2;border-color:#fca5a5}.cc-mi-clear-loc:disabled{opacity:.5;cursor:not-allowed}.cc-mi-loc-results{border:1px solid var(--color-border,#e0ddd8);background:#fff;border-radius:6px;margin:0;padding:0;list-style:none;overflow:hidden;box-shadow:0 4px 12px #00000014}.cc-mi-loc-results li+li{border-top:1px solid var(--color-border,#e0ddd8)}.cc-mi-loc-result{text-align:left;cursor:pointer;background:0 0;border:none;width:100%;padding:8px 12px;font-family:inherit;transition:background .12s;display:block}.cc-mi-loc-result:hover{background:#f5f3f0}.cc-mi-loc-result strong{color:var(--color-text-primary,#1a1a1a);font-size:13px;display:block}.cc-mi-loc-full{color:var(--color-text-muted,#999);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:11px;display:block;overflow:hidden}.cc-mi-loc-hint{color:var(--color-text-muted,#aaa);font-size:11px;font-style:italic}.cc-mi-loc-error{color:#b91c1c;font-size:12px;font-style:italic}.cc-tag-area{flex-wrap:wrap;align-items:center;gap:4px;min-height:30px;padding:0;display:flex}.cc-tag-chip{color:#1e40af;background:#e8f0fb;border:1px solid #bfdbfe;border-radius:12px;align-items:center;gap:3px;padding:2px 6px 2px 8px;font-size:12px;font-weight:500;display:inline-flex}.cc-tag-remove{color:inherit;cursor:pointer;opacity:.6;background:0 0;border:none;padding:0;font-size:13px;line-height:1;transition:opacity .1s}.cc-tag-remove:hover{opacity:1}.cc-tag-remove:disabled{cursor:not-allowed}.cc-tag-input{color:var(--color-text-primary,#1a1a1a);background:0 0;border:none;outline:none;flex:1;min-width:80px;padding:2px 0;font-family:inherit;font-size:12px}.cc-tag-input::placeholder{color:var(--color-text-muted,#aaa)}.cc-tag-suggestions{flex-wrap:wrap;gap:5px;margin-top:6px;display:flex}.cc-tag-suggestion-chip{color:var(--color-primary,#2d5a3d);cursor:pointer;background:#f0faf4;border:1.5px solid #b6d9c8;border-radius:20px;align-items:center;gap:3px;padding:3px 10px;font-family:inherit;font-size:12px;font-weight:600;transition:background .15s,border-color .15s;display:inline-flex}.cc-tag-suggestion-chip:hover:not(:disabled){background:#d6f0e4;border-color:#4a9c70}.cc-tag-suggestion-chip:disabled{opacity:.5;cursor:not-allowed}.cc-tag-suggestion-rel{color:var(--color-text-muted,#888);font-weight:400}.cc-textarea-row{align-items:flex-start;gap:6px;display:flex}.cc-textarea-row .cc-textarea{flex:1;min-width:0}.cc-photo-only-label{color:var(--color-text-primary,#1a1a1a);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;margin-bottom:12px;font-size:13px;font-weight:500;display:flex}.cc-photo-only-label input[type=checkbox]{width:15px;height:15px;accent-color:var(--color-primary,#2d5a3d);cursor:pointer;flex-shrink:0}.cc-photo-only-label input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}.cc-file-pick{border:1.5px dashed var(--color-border,#e0ddd8);cursor:pointer;color:var(--color-text-muted,#666);-webkit-user-select:none;user-select:none;border-radius:6px;align-items:center;margin-bottom:16px;padding:6px 14px;font-size:13px;font-weight:500;transition:border-color .15s,color .15s;display:inline-flex}.cc-file-pick:hover,.cc-file-pick:not([aria-disabled]):hover{border-color:var(--color-primary,#2d5a3d);color:var(--color-primary,#2d5a3d)}.cc-file-pick[aria-disabled]{opacity:.5;cursor:not-allowed}@media (width<=480px){.cc-media-item{flex-direction:column}.cc-mi-thumb-col,.cc-mi-thumb{width:100%;height:160px}.cc-mi-fields{padding:10px 12px 12px}.cc-mi-field-icon{margin-top:16px}}.cc-done{text-align:center;padding:48px 24px}.cc-done-icon{margin-bottom:16px;font-size:48px;line-height:1}.cc-done-title{color:var(--color-text-primary,#1a1a1a);margin:0 0 8px;font-size:20px;font-weight:700}.cc-done-sub{color:var(--color-text-muted,#777);margin:0 0 24px;font-size:14px;line-height:1.5}@media (prefers-color-scheme:dark){.cc-type-btn{background:var(--color-surface,#2a2a2a);border-color:var(--color-border,#444);color:var(--color-text-muted,#aaa)}.cc-input,.cc-textarea{background:var(--color-surface,#2a2a2a);border-color:var(--color-border,#444);color:var(--color-text-primary,#f0ede8)}.cc-btn-cancel{background:var(--color-surface,#333);color:var(--color-text-primary,#f0ede8)}.cc-btn-translate{background:#1a2e20;border-color:#2d5a3d}.cc-btn-preview{background:var(--color-surface,#2a2a2a);border-color:var(--color-border,#444);color:var(--color-text-primary,#f0ede8)}.cc-file-pick{border-color:var(--color-border,#444);color:var(--color-text-muted,#aaa)}.cc-media-item{background:var(--color-surface,#2a2a2a);border-color:var(--color-border,#444)}.cc-mi-thumb-col{background:#1a1a1a}.cc-mi-input,.cc-mi-search-btn{background:var(--color-surface,#2a2a2a);border-color:var(--color-border,#444);color:var(--color-text-primary,#f0ede8)}.cc-mi-loc-results{background:var(--color-surface,#2a2a2a);border-color:var(--color-border,#444)}.cc-mi-loc-result:hover{background:#333}.cc-mi-loc-result strong{color:var(--color-text-primary,#f0ede8)}.cc-tag-chip{color:#93c5fd;background:#1a2040;border-color:#2d4080}.cc-tag-input{color:var(--color-text-primary,#f0ede8)}.cc-error{color:#fca5a5;background:#3a1a1a;border-color:#7f2a2a}}[data-theme=dark] .cc-type-btn{background:var(--color-surface,#2a2a2a);border-color:var(--color-border,#444);color:var(--color-text-muted,#aaa)}[data-theme=dark] .cc-input,[data-theme=dark] .cc-textarea{background:var(--color-surface,#2a2a2a);border-color:var(--color-border,#444);color:var(--color-text-primary,#f0ede8)}[data-theme=dark] .cc-btn-cancel{background:var(--color-surface,#333);color:var(--color-text-primary,#f0ede8)}[data-theme=dark] .cc-btn-translate{background:#1a2e20;border-color:#2d5a3d}[data-theme=dark] .cc-btn-preview{background:var(--color-surface,#2a2a2a);border-color:var(--color-border,#444);color:var(--color-text-primary,#f0ede8)}[data-theme=dark] .cc-file-pick{border-color:var(--color-border,#444);color:var(--color-text-muted,#aaa)}[data-theme=dark] .cc-error{color:#fca5a5;background:#3a1a1a;border-color:#7f2a2a}[data-theme=dark] .cc-media-item{background:var(--color-surface,#2a2a2a);border-color:var(--color-border,#444)}[data-theme=dark] .cc-mi-thumb-col{background:#1a1a1a}[data-theme=dark] .cc-mi-input,[data-theme=dark] .cc-mi-search-btn{background:var(--color-surface,#2a2a2a);border-color:var(--color-border,#444);color:var(--color-text-primary,#f0ede8)}[data-theme=dark] .cc-mi-loc-results{background:var(--color-surface,#2a2a2a);border-color:var(--color-border,#444)}[data-theme=dark] .cc-mi-loc-result:hover{background:#333}[data-theme=dark] .cc-mi-loc-result strong{color:var(--color-text-primary,#f0ede8)}[data-theme=dark] .cc-tag-chip{color:#93c5fd;background:#1a2040;border-color:#2d4080}[data-theme=dark] .cc-tag-input{color:var(--color-text-primary,#f0ede8)}[data-theme=dark] .cc-tag-suggestion-chip{color:#6a9c7f;background:#1a2a22;border-color:#2a4a38}[data-theme=dark] .cc-tag-suggestion-chip:hover:not(:disabled){background:#223832;border-color:#3a6a50}[data-theme=dark] .cc-tag-suggestion-rel{color:#6b7280}.admin-msg-library{width:100%}.aml-loading,.aml-empty{text-align:center;color:var(--color-text-muted,#888);padding:48px 24px;font-size:15px}.aml-error{color:#b91c1c;cursor:pointer;background:#fff0f0;border:1px solid #fca5a5;border-radius:8px;margin-bottom:16px;padding:10px 16px;font-size:14px}.aml-type-filters{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.aml-type-btn{border:2px solid var(--color-border,#e0ddd8);color:var(--color-text-muted,#666);cursor:pointer;background:#fff;border-radius:22px;align-items:center;gap:6px;padding:7px 16px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.aml-type-btn:hover{border-color:var(--color-primary,#2d5a3d);color:var(--color-primary,#2d5a3d)}.aml-type-btn.active{background:var(--color-primary,#2d5a3d);border-color:var(--color-primary,#2d5a3d);color:#fff}.aml-type-btn--message{color:#1a56db;background:#f0f4ff;border-color:#c3d3fb}.aml-type-btn--message:hover,.aml-type-btn--message.active{color:#fff;background:#1a56db;border-color:#1a56db}.aml-type-btn--memory{color:#b45309;background:#fffbeb;border-color:#fcd34d}.aml-type-btn--memory:hover,.aml-type-btn--memory.active{color:#fff;background:#b45309;border-color:#b45309}.aml-type-btn--notice{color:#9d174d;background:#fdf2f8;border-color:#f9a8d4}.aml-type-btn--notice:hover,.aml-type-btn--notice.active{color:#fff;background:#9d174d;border-color:#9d174d}.aml-type-btn .aml-cat-count{background:#0000001a;border-radius:10px;padding:1px 7px;font-size:11px;font-weight:700}.aml-type-btn.active .aml-cat-count,.aml-type-btn--message.active .aml-cat-count,.aml-type-btn--memory.active .aml-cat-count,.aml-type-btn--notice.active .aml-cat-count{background:#ffffff40}.aml-cats{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.aml-cat{border:1px solid var(--color-border,#e0ddd8);color:var(--color-text-muted,#666);cursor:pointer;background:#fff;border-radius:20px;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.aml-cat:hover{border-color:var(--color-primary,#2d5a3d);color:var(--color-primary,#2d5a3d)}.aml-cat.active{background:var(--color-primary,#2d5a3d);border-color:var(--color-primary,#2d5a3d);color:#fff}.aml-cat-count{background:#0000001f;border-radius:10px;padding:1px 7px;font-size:11px;font-weight:600}.aml-cat.active .aml-cat-count{background:#ffffff40}.aml-list{background:var(--color-border,#e0ddd8);border:1px solid var(--color-border,#e0ddd8);border-radius:12px;flex-direction:column;gap:1px;display:flex;overflow:hidden}.aml-row{background:#fff;flex-wrap:wrap;align-items:center;gap:16px;padding:16px 20px;transition:background .15s;display:flex}.aml-row.is-playing{background:#f0f6f2}.aml-row.is-editing{background:#fafaf8;padding:20px;display:block}.aml-texts{flex:1;min-width:0}.aml-type-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;display:flex}.aml-type-badge{text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;border-radius:10px;flex-shrink:0;align-items:center;gap:3px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.aml-type-message{color:#1a56db;background:#e8f0fe;border:1px solid #c3d3fb}.aml-type-memory{color:#b45309;background:#fef3c7;border:1px solid #fcd34d}.aml-type-notice{color:#9d174d;background:#fce7f3;border:1px solid #f9a8d4}.aml-summary{color:var(--color-text-muted,#777);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}.aml-english{color:var(--color-text-primary,#1a1a1a);margin:0 0 4px;font-size:15px;font-weight:500;line-height:1.45}.aml-french{color:var(--color-text-muted,#777);margin:0 0 8px;font-size:13px;font-style:italic;line-height:1.4}.aml-meta-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;display:flex}.aml-cat-badge{color:var(--color-primary,#2d5a3d);text-transform:uppercase;letter-spacing:.04em;background:#f0f6f2;border:1px solid #c8e0d0;border-radius:10px;padding:2px 10px;font-size:11px;font-weight:600;display:inline-block}.aml-author{color:var(--color-text-muted,#555);font-size:12px;font-weight:500}.aml-role-badge{text-transform:uppercase;letter-spacing:.05em;opacity:.85;border:1px solid;border-radius:10px;padding:2px 9px;font-size:11px;font-weight:700;display:inline-block}.aml-date{color:var(--color-text-muted,#aaa);margin-left:auto;font-size:12px}.aml-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;width:100%;display:flex}.aml-icon-btn{border:1px solid var(--color-border,#e0ddd8);cursor:pointer;background:#fff;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:14px;transition:all .15s;display:flex}.aml-icon-btn:hover{background:#f5f3f0}.aml-icon-btn:disabled{opacity:.35;cursor:default}.aml-icon-btn.play-btn{background:var(--color-primary,#2d5a3d);border-color:var(--color-primary,#2d5a3d);color:#fff;font-size:12px}.aml-icon-btn.play-btn.stop{background:#c8956c;border-color:#c8956c}.aml-icon-btn.play-btn:disabled{background:#ccc;border-color:#ccc}.aml-icon-btn.resident-btn{color:var(--color-primary,#2d5a3d);font-size:16px;font-weight:600}.aml-icon-btn.resident-btn:hover{border-color:var(--color-primary,#2d5a3d);background:#f0f6f2}.aml-icon-btn.delete-btn:hover{background:#fff0f0;border-color:#fca5a5}.aml-sched-row{margin-top:6px}.aml-sched-bubble{color:#166534;cursor:default;white-space:nowrap;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;align-items:center;gap:3px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.aml-icon-btn.sched-on{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.aml-icon-btn.sched-on:hover{background:#dcfce7;border-color:#86efac}.aml-sched-panel{background:#fafafa;border-top:1px solid #e5e7eb;border-radius:0 0 12px 12px;flex:0 0 100%;margin:0 -20px -16px;padding:12px 16px}[data-theme=dark] .aml-sched-panel{background:#111827;border-top-color:#374151}.aml-sched-existing{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.aml-sched-existing-time{color:#166534;font-size:.95rem;font-weight:700}.aml-sched-existing-recur{color:#6b7280;font-size:.85rem}.aml-sched-remove-btn{color:#6b7280;cursor:pointer;background:0 0;border:1px solid #e5e7eb;border-radius:6px;margin-left:auto;padding:4px 12px;font-size:.8rem;transition:background .15s,color .15s,border-color .15s}.aml-sched-remove-btn:hover{color:#b91c1c;background:#fef2f2;border-color:#fca5a5}.aml-sched-form{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.aml-sched-form-label{color:#374151;flex-shrink:0;font-size:.85rem;font-weight:600}[data-theme=dark] .aml-sched-form-label{color:#d1d5db}.aml-sched-time-pick{align-items:center;gap:2px;display:flex}.aml-sched-time-pick select,.aml-sched-recur-sel{color:#111827;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:4px 6px;font-size:.85rem}[data-theme=dark] .aml-sched-time-pick select,[data-theme=dark] .aml-sched-recur-sel{color:#f3f4f6;background:#1f2937;border-color:#4b5563}.aml-sched-sep{color:#374151;padding:0 1px;font-weight:700}.aml-sched-create-btn{color:#fff;cursor:pointer;background:#2d5a3d;border:none;border-radius:6px;padding:5px 14px;font-size:.85rem;font-weight:600;transition:background .15s}.aml-sched-create-btn:hover:not(:disabled){background:#1f3d2b}.aml-sched-create-btn:disabled{opacity:.45;cursor:default}.aml-sched-cancel-btn{color:#6b7280;cursor:pointer;background:0 0;border:1px solid #e5e7eb;border-radius:6px;padding:4px 12px;font-size:.82rem}.aml-sched-cancel-btn:hover{background:#f3f4f6}.aml-icon-btn.daily-on{color:#065f46;background:#ecfdf5;border-color:#a7f3d0;font-size:13px;font-weight:700}.aml-icon-btn.daily-on:hover:not(:disabled){color:#b91c1c;background:#fef2f2;border-color:#fca5a5}.aml-icon-btn.daily-off{font-size:15px}.aml-icon-btn.daily-off:hover:not(:disabled){background:#f0fdf4;border-color:#a7f3d0}.aml-edit-form{width:100%}.aml-edit-type-fixed{color:var(--color-text-muted,#777);margin:0 0 14px;font-size:14px;font-weight:500}.aml-btn-translate{color:var(--color-text-primary,#1a1a1a);background:#f0ede8;padding:6px 14px;font-size:13px}.aml-btn-translate:not(:disabled):hover{background:#e5e0d8}.aml-edit-media-grid{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.aml-edit-media-removed{color:var(--color-text-muted,#888);border:1px dashed var(--color-border,#e0ddd8);text-align:center;background:#fafaf8;border-radius:8px;flex-direction:column;align-items:center;gap:8px;width:88px;padding:6px 10px;font-size:12px;display:flex}.aml-edit-label{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted,#777);margin-bottom:8px;font-size:12px;font-weight:600;display:block}.aml-edit-textarea{border:1.5px solid var(--color-border,#e0ddd8);width:100%;color:var(--color-text-primary,#1a1a1a);resize:vertical;box-sizing:border-box;border-radius:8px;padding:10px 14px;font-family:inherit;font-size:15px;font-style:italic;transition:border-color .15s}.aml-edit-textarea:focus{border-color:var(--color-primary,#2d5a3d);outline:none}.aml-edit-hint{color:var(--color-text-muted,#777);margin:8px 0 12px;font-size:13px;line-height:1.4}.aml-edit-actions{gap:10px;display:flex}.aml-btn{cursor:pointer;border:none;border-radius:8px;padding:8px 18px;font-family:inherit;font-size:14px;font-weight:500;transition:background .15s}.aml-btn:disabled{opacity:.5;cursor:default}.aml-btn-save{background:var(--color-primary,#2d5a3d);color:#fff}.aml-btn-save:not(:disabled):hover{background:var(--color-primary-dark,#1f3d2b)}.aml-btn-cancel{color:var(--color-text-primary,#1a1a1a);background:#f0ede8}.aml-btn-cancel:not(:disabled):hover{background:#e5e0d8}.aml-right-col{flex-direction:column;flex-shrink:0;align-items:center;gap:8px;width:120px;display:flex}.aml-thumb{object-fit:cover;border-radius:8px;flex-shrink:0;width:120px;height:120px}.aml-montage{background:#e5e7eb;border-radius:8px;flex-shrink:0;gap:2px;width:120px;height:120px;display:grid;overflow:hidden}.aml-montage-2{grid-template-rows:1fr;grid-template-columns:1fr 1fr}.aml-montage-3{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr}.aml-montage-3 .aml-montage-cell:first-child{grid-row:1/3}.aml-montage-4{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr}.aml-montage-cell{min-width:0;min-height:0;position:relative;overflow:hidden}.aml-montage-cell img{object-fit:cover;width:100%;height:100%;display:block}.aml-montage-more{color:#fff;letter-spacing:.02em;background:#00000085;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex;position:absolute;inset:0}.aml-thumb{border:1px solid var(--color-border,#e0ddd8)}.aml-video-thumb{flex-shrink:0;display:inline-flex;position:relative}.aml-video-badge{pointer-events:none;background:#0009;border-radius:4px;padding:1px 5px;font-size:11px;line-height:1.5;position:absolute;bottom:4px;left:4px}.aml-edit-image-wrap{align-items:flex-start;margin-bottom:8px;display:inline-flex;position:relative}.aml-edit-image-thumb{object-fit:cover;border:1px solid var(--color-border,#e0ddd8);border-radius:8px;width:88px;height:88px}.aml-edit-image-clear{color:#fff;cursor:pointer;background:#b91c1c;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;padding:0;font-size:10px;line-height:1;display:flex;position:absolute;top:-6px;right:-6px}.aml-edit-image-clear:disabled{opacity:.5;cursor:not-allowed}.aml-edit-image-pick{border:1.5px dashed var(--color-border,#e0ddd8);cursor:pointer;color:var(--color-text-muted,#666);border-radius:6px;align-items:center;margin-bottom:4px;padding:5px 12px;font-size:12px;font-weight:500;transition:border-color .15s,color .15s;display:inline-flex}.aml-edit-image-pick:hover{border-color:var(--color-primary,#2d5a3d);color:var(--color-primary,#2d5a3d)}.aml-edit-image-pick[aria-disabled=true]{opacity:.5;cursor:not-allowed}.aml-edit-image-removed{color:var(--color-text-muted,#888);align-items:center;gap:8px;margin-bottom:8px;font-size:12px;display:flex}.aml-edit-image-undo{color:var(--color-primary,#2d5a3d);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;text-decoration:underline}.aml-photo-only-label{color:var(--color-text-primary,#1a1a1a);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;margin-top:10px;font-size:13px;font-weight:500;display:flex}.aml-photo-only-label input[type=checkbox]{width:15px;height:15px;accent-color:var(--color-primary,#2d5a3d);cursor:pointer;flex-shrink:0}.aml-photo-only-label input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}.aml-media-list{flex-direction:column;gap:12px;margin-bottom:12px;display:flex}.aml-media-item{border:1px solid var(--color-border,#e0ddd8);background:#fff;border-radius:10px;gap:0;display:flex;overflow:hidden}.aml-media-item--removed{color:var(--color-text-muted,#888);background:#fafaf8;border-style:dashed;align-items:center;gap:10px;padding:10px 14px;font-size:13px;display:flex}.aml-mi-thumb-col{background:#f0ede8;flex-shrink:0;width:120px;position:relative}.aml-mi-thumb{object-fit:cover;width:120px;height:100%;min-height:100px;display:block}.aml-mi-remove{color:#fff;cursor:pointer;background:#0000008c;border:none;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;padding:0;font-size:10px;line-height:1;transition:background .15s;display:flex;position:absolute;top:6px;left:6px}.aml-mi-remove:hover{background:#b91c1c}.aml-mi-remove:disabled{opacity:.5;cursor:not-allowed}.aml-mi-fields{flex-direction:column;flex:1;gap:10px;min-width:0;padding:12px 14px;display:flex}.aml-mi-field-row{align-items:flex-start;gap:8px;display:flex}.aml-mi-field-icon{flex-shrink:0;margin-top:18px;font-size:15px;line-height:1}.aml-mi-field-body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.aml-mi-field-label{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted,#999);font-size:10px;font-weight:700}.aml-mi-from-exif{text-transform:none;letter-spacing:0;font-style:italic;font-weight:400}.aml-mi-input{border:1.5px solid var(--color-border,#e0ddd8);width:100%;color:var(--color-text-primary,#1a1a1a);box-sizing:border-box;background:#fff;border-radius:6px;padding:6px 10px;font-family:inherit;font-size:13px;transition:border-color .15s}.aml-mi-input:focus{border-color:var(--color-primary,#2d5a3d);outline:none}.aml-mi-input:disabled{opacity:.6}.aml-mi-resolved{color:var(--color-text-muted,#888);font-size:11px;font-style:italic}.aml-mi-loc-row{align-items:center;gap:6px;display:flex}.aml-mi-loc-input{flex:1}.aml-mi-search-btn{border:1.5px solid var(--color-border,#e0ddd8);cursor:pointer;background:#fff;border-radius:6px;flex-shrink:0;padding:6px 10px;font-family:inherit;font-size:13px;line-height:1;transition:border-color .15s,background .15s}.aml-mi-search-btn:not(:disabled):hover{border-color:var(--color-primary,#2d5a3d);background:#f0f6f2}.aml-mi-search-btn:disabled{opacity:.5;cursor:default}.aml-mi-clear-loc{border:1px solid var(--color-border,#e0ddd8);cursor:pointer;width:24px;height:24px;color:var(--color-text-muted,#888);background:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:10px;transition:all .15s;display:flex}.aml-mi-clear-loc:hover{color:#b91c1c;background:#fee2e2;border-color:#fca5a5}.aml-mi-clear-loc:disabled{opacity:.5;cursor:not-allowed}.aml-mi-loc-results{border:1px solid var(--color-border,#e0ddd8);background:#fff;border-radius:6px;margin:0;padding:0;list-style:none;overflow:hidden;box-shadow:0 4px 12px #00000014}.aml-mi-loc-results li+li{border-top:1px solid var(--color-border,#e0ddd8)}.aml-mi-loc-result{text-align:left;cursor:pointer;background:0 0;border:none;width:100%;padding:8px 12px;font-family:inherit;transition:background .12s;display:block}.aml-mi-loc-result:hover{background:#f5f3f0}.aml-mi-loc-result strong{color:var(--color-text-primary,#1a1a1a);font-size:13px;display:block}.aml-mi-loc-full{color:var(--color-text-muted,#999);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:11px;display:block;overflow:hidden}.aml-mi-loc-hint{color:var(--color-text-muted,#aaa);font-size:11px;font-style:italic}.aml-mi-loc-error{color:#b91c1c;font-size:12px;font-style:italic}.aml-tag-area{flex-wrap:wrap;align-items:center;gap:4px;min-height:30px;display:flex}.aml-tag-chip{color:#1e40af;background:#e8f0fb;border:1px solid #bfdbfe;border-radius:12px;align-items:center;gap:3px;padding:2px 6px 2px 8px;font-size:12px;font-weight:500;display:inline-flex}.aml-tag-remove{color:inherit;cursor:pointer;opacity:.6;background:0 0;border:none;padding:0;font-size:13px;line-height:1;transition:opacity .1s}.aml-tag-remove:hover{opacity:1}.aml-tag-remove:disabled{cursor:not-allowed}.aml-tag-input{color:var(--color-text-primary,#1a1a1a);background:0 0;border:none;outline:none;flex:1;min-width:80px;padding:2px 0;font-family:inherit;font-size:12px}.aml-tag-input::placeholder{color:var(--color-text-muted,#aaa)}@media (width<=600px){.aml-media-item{flex-direction:column}.aml-mi-thumb-col,.aml-mi-thumb{width:100%;height:140px}.aml-mi-fields{padding:10px 12px 12px}.aml-mi-field-icon{margin-top:16px}.aml-row{flex-direction:column;align-items:flex-start;gap:12px}.aml-right-col{flex-flow:wrap;align-self:flex-end}}.aml-modal-overlay{z-index:1000;background:#0000008c;justify-content:center;align-items:flex-start;padding:32px 16px 48px;display:flex;position:fixed;inset:0;overflow-y:auto}.aml-modal{background:var(--color-surface,#fff);border-radius:16px;flex-direction:column;width:100%;max-width:680px;display:flex;box-shadow:0 12px 48px #0000003d}.aml-modal-header{border-bottom:1px solid var(--color-border,#eee);justify-content:space-between;align-items:center;margin-bottom:4px;padding:20px 24px 4px;display:flex}.aml-modal-title{color:var(--color-text,#1a1a1a);margin:0;font-size:1.1rem;font-weight:700}.aml-modal-close{cursor:pointer;color:var(--color-text-muted,#888);background:0 0;border:none;border-radius:8px;padding:6px 10px;font-size:1.1rem;line-height:1;transition:background .15s}.aml-modal-close:hover:not(:disabled){background:var(--color-border,#f0f0f0);color:var(--color-text,#1a1a1a)}.aml-modal-body{padding:16px 24px 28px}.aml-modal-cancel{border:1.5px solid var(--color-border,#ddd)!important;color:var(--color-text-muted,#666)!important;background:0 0!important}.aml-modal-cancel:hover:not(:disabled){border-color:var(--color-text-muted,#999)!important;color:var(--color-text,#333)!important;background:var(--color-surface-alt,#f8f8f8)!important}.cc-media-item--removed{color:#c53030;background:#fff3f3;border:1.5px dashed #e53e3e;border-radius:10px;align-items:center;gap:12px;margin-bottom:12px;padding:10px 14px;font-size:.85rem;display:flex}[data-theme=dark] .aml-modal{background:var(--color-surface,#1e1e1e)}[data-theme=dark] .aml-modal-header{border-color:var(--color-border,#333)}[data-theme=dark] .cc-media-item--removed{background:#e53e3e1f}@media (width<=600px){.aml-modal-overlay{align-items:flex-end;padding:0}.aml-modal{border-radius:16px 16px 0 0;max-height:95dvh;overflow-y:auto}}.pending-approval{width:100%}.pa-loading{text-align:center;color:var(--color-text-muted,#888);padding:48px 24px;font-size:15px}.pa-error{color:#b91c1c;cursor:pointer;background:#fff0f0;border:1px solid #fca5a5;border-radius:8px;margin-bottom:16px;padding:10px 16px;font-size:14px}.pa-empty{text-align:center;padding:64px 24px}.pa-empty-icon{color:var(--color-primary,#2d5a3d);margin-bottom:16px;font-size:48px;font-weight:300;line-height:1}.pa-empty-title{color:var(--color-text-primary,#1a1a1a);margin:0 0 8px;font-size:18px;font-weight:600}.pa-empty-sub{color:var(--color-text-muted,#888);margin:0;font-size:14px}.pa-count{color:var(--color-text-muted,#666);text-transform:uppercase;letter-spacing:.05em;margin:0 0 20px;font-size:14px;font-weight:600}.pa-list{flex-direction:column;gap:16px;display:flex}.pa-card{border:1px solid var(--color-border,#e0ddd8);background:#fff;border-radius:12px;flex-direction:column;gap:16px;padding:20px;display:flex}.pa-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pa-type-badge{color:#475569;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:10px;padding:3px 10px;font-size:12px;font-weight:600}.pa-author-badge{color:var(--color-primary,#2d5a3d);background:#f0f6f2;border:1px solid #c8e0d0;border-radius:10px;padding:3px 10px;font-size:12px;font-weight:600}.pa-date{color:var(--color-text-muted,#999);margin-left:auto;font-size:12px}.pa-summary{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted,#777);margin:0;font-size:12px;font-weight:600}.pa-media{width:100%}.pa-media-thumb{object-fit:cover;border:1px solid var(--color-border,#e0ddd8);border-radius:8px;width:100%;max-height:200px}.pa-texts{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=640px){.pa-texts{grid-template-columns:1fr}}.pa-text-block{flex-direction:column;gap:6px;display:flex}.pa-lang-label{text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-muted,#999);font-size:11px;font-weight:700}.pa-english-text{color:var(--color-text-primary,#1a1a1a);border:1px solid var(--color-border,#e0ddd8);background:#fafaf8;border-radius:8px;margin:0;padding:10px 14px;font-size:14px;line-height:1.5}.pa-french-edit{border:1.5px solid var(--color-border,#e0ddd8);width:100%;color:var(--color-text-primary,#1a1a1a);resize:vertical;box-sizing:border-box;background:#fff;border-radius:8px;padding:10px 14px;font-family:inherit;font-size:14px;font-style:italic;line-height:1.5;transition:border-color .15s}.pa-french-edit:focus{border-color:var(--color-primary,#2d5a3d);outline:none}.pa-french-edit:disabled{opacity:.6}.pa-actions{flex-wrap:wrap;gap:10px;display:flex}.pa-btn{cursor:pointer;border:none;border-radius:8px;padding:9px 20px;font-family:inherit;font-size:14px;font-weight:600;transition:background .15s}.pa-btn:disabled{opacity:.5;cursor:default}.pa-btn-approve{background:var(--color-primary,#2d5a3d);color:#fff}.pa-btn-approve:not(:disabled):hover{background:var(--color-primary-dark,#1f3d2b)}.pa-btn-reject{color:#b91c1c;background:#fff0f0;border:1px solid #fca5a5}.pa-btn-reject:not(:disabled):hover{background:#fee2e2}.pa-btn-confirm-reject{color:#fff;background:#b91c1c}.pa-btn-confirm-reject:not(:disabled):hover{background:#991b1b}.pa-btn-cancel{color:var(--color-text-primary,#1a1a1a);background:#f0ede8}.pa-btn-cancel:not(:disabled):hover{background:#e5e0d8}.pa-reject-area{flex-direction:column;gap:10px;display:flex}.pa-reject-input{color:var(--color-text-primary,#1a1a1a);box-sizing:border-box;background:#fff5f5;border:1.5px solid #fca5a5;border-radius:8px;width:100%;padding:9px 14px;font-family:inherit;font-size:14px;transition:border-color .15s}.pa-reject-input:focus{border-color:#b91c1c;outline:none}.schedule-manager{width:100%}.sm-resident-banner{color:#2d5a3d;background:#f0f7f4;border:1px solid #b6d9c8;border-radius:8px;margin-bottom:16px;padding:10px 16px;font-size:14px}.sm-loading{text-align:center;color:var(--color-text-muted,#888);padding:48px 24px;font-size:15px}.sm-error{color:#b91c1c;cursor:pointer;background:#fff0f0;border:1px solid #fca5a5;border-radius:8px;margin-bottom:16px;padding:10px 16px;font-size:14px}.sm-toolbar{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.sm-toolbar h3{color:var(--color-text-primary,#1a1a1a);margin:0;font-size:18px;font-weight:600}.sm-add-btn{background:var(--color-primary,#2d5a3d);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:8px 18px;font-family:inherit;font-size:14px;font-weight:600;transition:background .15s}.sm-add-btn:hover{background:var(--color-primary-dark,#1f3d2b)}.sm-form{border:1px solid var(--color-border,#e0ddd8);background:#fafaf8;border-radius:12px;margin-bottom:28px;padding:24px}.sm-form h4{color:var(--color-text-primary,#1a1a1a);margin:0 0 20px;font-size:16px;font-weight:600}.sm-field{margin-bottom:16px}.sm-field label{color:var(--color-text-primary,#333);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.sm-optional{color:var(--color-text-muted,#999);font-size:12px;font-weight:400}.sm-field input[type=text],.sm-field input[type=time],.sm-field select{border:1.5px solid var(--color-border,#e0ddd8);width:100%;color:var(--color-text-primary,#1a1a1a);box-sizing:border-box;appearance:auto;background:#fff;border-radius:8px;padding:9px 12px;font-family:inherit;font-size:14px;transition:border-color .15s}.sm-field input:focus,.sm-field select:focus{border-color:var(--color-primary,#2d5a3d);outline:none}.sm-field input:disabled,.sm-field select:disabled{opacity:.6}.sm-time-picker{align-items:center;gap:4px;display:flex}.sm-time-picker select{border:1.5px solid var(--color-border,#e0ddd8);color:var(--color-text-primary,#1a1a1a);cursor:pointer;appearance:auto;box-sizing:border-box;background:#fff;border-radius:8px;flex:1;padding:9px 8px;font-family:inherit;font-size:14px;transition:border-color .15s}.sm-time-picker select:focus{border-color:var(--color-primary,#2d5a3d);outline:none}.sm-time-picker select:disabled{opacity:.6}.sm-time-sep{color:var(--color-text-muted,#999);flex-shrink:0;font-size:18px;font-weight:600}.sm-field-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=480px){.sm-field-row{grid-template-columns:1fr}}.sm-toggle-field{margin-top:4px}.sm-toggle-label{color:var(--color-text-primary,#1a1a1a);cursor:pointer;align-items:center;gap:10px;font-size:14px;display:flex;font-weight:500!important}.sm-toggle-label input[type=checkbox]{cursor:pointer;width:16px;height:16px;accent-color:var(--color-primary,#2d5a3d)}.sm-form-actions{gap:10px;margin-top:20px;display:flex}.sm-submit-btn{background:var(--color-primary,#2d5a3d);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:9px 22px;font-family:inherit;font-size:14px;font-weight:600;transition:background .15s}.sm-submit-btn:not(:disabled):hover{background:var(--color-primary-dark,#1f3d2b)}.sm-submit-btn:disabled{opacity:.5;cursor:default}.sm-cancel-btn{color:var(--color-text-primary,#1a1a1a);cursor:pointer;background:#f0ede8;border:none;border-radius:8px;padding:9px 18px;font-family:inherit;font-size:14px;font-weight:500;transition:background .15s}.sm-cancel-btn:not(:disabled):hover{background:#e5e0d8}.sm-empty{text-align:center;padding:48px 24px}.sm-empty-title{color:var(--color-text-primary,#1a1a1a);margin:0 0 8px;font-size:17px;font-weight:600}.sm-empty-sub{color:var(--color-text-muted,#888);max-width:400px;margin:0 auto;font-size:14px}.sm-list{background:var(--color-border,#e0ddd8);border:1px solid var(--color-border,#e0ddd8);border-radius:12px;flex-direction:column;gap:1px;display:flex;overflow:hidden}.sm-row{background:#fff;align-items:flex-start;gap:16px;padding:16px 20px;transition:background .15s;display:flex}.sm-row.is-editing{background:#f5f3f0}.sm-row-time{flex-direction:column;align-items:center;min-width:70px;padding-top:2px;display:flex}.sm-time{color:var(--color-primary,#2d5a3d);font-variant-numeric:tabular-nums;font-size:20px;font-weight:700;line-height:1.1}.sm-recurrence{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted,#999);text-align:center;margin-top:3px;font-size:10px}.sm-row-content{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.sm-msg-english{color:var(--color-text-primary,#1a1a1a);margin:0 0 3px;font-size:14px;font-style:normal;font-weight:500;line-height:1.45}.sm-msg-preview{color:var(--color-text-muted,#777);margin:0;font-size:13px;font-style:italic;font-weight:400;line-height:1.4}.sm-msg-missing{color:#b45309;margin:0;font-size:13px}.sm-staff-note{color:var(--color-text-muted,#666);margin:0;font-size:13px}.sm-row-meta{flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;display:flex}.sm-date-added{color:var(--color-text-muted,#888);font-size:12px}.sm-push-badge{color:#92400e;background:#fff7ed;border:1px solid #fed7aa;border-radius:10px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.sm-row-actions{flex-shrink:0;gap:6px;display:flex}.sm-edit-btn,.sm-delete-btn{border:1px solid var(--color-border,#e0ddd8);cursor:pointer;background:#fff;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;font-size:14px;transition:all .15s;display:flex}.sm-edit-btn:hover{border-color:var(--color-primary,#2d5a3d);background:#f0f6f2}.sm-delete-btn:hover{background:#fff0f0;border-color:#fca5a5}.sm-edit-btn:disabled,.sm-delete-btn:disabled{opacity:.35;cursor:default}.sm-content-select{width:100%;max-width:100%}.sm-type-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:6px;align-items:center;gap:3px;margin-bottom:4px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.sm-badge-moment{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0}.sm-badge-memory{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe}.sm-badge-notice{color:#92400e;background:#fef3c7;border:1px solid #fcd34d}.user-management{max-width:640px}.um-section-tabs{gap:8px;margin-bottom:28px;display:flex}.um-stab{border:1px solid var(--color-border);color:var(--color-text-muted);cursor:pointer;background:#fff;border-radius:20px;padding:10px 20px;font-family:inherit;font-size:14px;font-weight:500;transition:all .15s}.um-stab.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.um-banner{cursor:pointer;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:20px;padding:14px 16px;font-size:14px;display:flex}.um-banner pre{white-space:pre-wrap;word-break:break-all;flex:1;margin:0;font-family:inherit}.um-error{color:#c00;background:#fee;border:1px solid #fcc}.um-success{color:#2e7d32;background:#e8f5e9;border:1px solid #c8e6c9}.um-toolbar{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.um-toolbar h3{color:var(--color-text-primary);font-size:18px;font-weight:600}.um-add-btn{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:10px 18px;font-family:inherit;font-size:14px;font-weight:600;transition:background .15s}.um-add-btn:hover{background:var(--color-primary-dark)}.um-form{background:#fff;border-radius:12px;margin-bottom:28px;padding:24px;box-shadow:0 2px 8px #00000012}.um-form h4{color:var(--color-text-primary);margin-bottom:20px;font-size:16px;font-weight:600}.um-role-toggle{gap:8px;margin-bottom:20px;display:flex}.um-role-btn{border:1px solid var(--color-border);color:var(--color-text-muted);cursor:pointer;background:#fff;border-radius:8px;flex:1;padding:10px;font-family:inherit;font-size:14px;font-weight:500;transition:all .15s}.um-role-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.um-field{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.um-field label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.4px;font-size:13px;font-weight:500}.um-field input,.um-field textarea{border:1px solid var(--color-border);color:var(--color-text-primary);border-radius:8px;padding:11px 12px;font-family:inherit;font-size:14px}.um-field input:focus,.um-field textarea:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #2d5a3d1a}.um-field input:disabled,.um-field textarea:disabled{background:var(--color-bg-secondary);color:var(--color-text-muted)}.um-field textarea{resize:vertical}.um-hint{color:var(--color-text-muted);background:#fffbf0;border:1px solid #f0e0a0;border-radius:6px;margin-bottom:16px;padding:10px 12px;font-size:13px;font-style:italic}.um-form-actions{gap:10px;margin-top:8px;display:flex}.um-submit-btn{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:12px 20px;font-family:inherit;font-size:14px;font-weight:600;transition:background .15s}.um-submit-btn:hover:not(:disabled){background:var(--color-primary-dark)}.um-submit-btn:disabled{opacity:.6;cursor:not-allowed}.um-cancel-btn{color:var(--color-text-muted);border:1px solid var(--color-border);cursor:pointer;background:#fff;border-radius:8px;padding:12px 20px;font-family:inherit;font-size:14px}.um-user-lists{flex-direction:column;gap:28px;display:flex}.um-group-title{text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;font-size:14px;font-weight:700}.um-group-empty{color:var(--color-text-muted);padding:16px 0;font-size:14px;font-style:italic}.um-user-list{flex-direction:column;gap:8px;display:flex}.um-user-row{background:#fff;border-radius:10px;align-items:center;gap:14px;padding:14px 16px;display:flex;box-shadow:0 1px 4px #0000000f}.um-user-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:16px;font-weight:700;display:flex}.um-user-info{flex-direction:column;flex:1;min-width:0;display:flex}.um-user-name{color:var(--color-text-primary);font-size:14px;font-weight:600}.um-user-email{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.um-user-actions{flex-shrink:0;gap:8px;display:flex}.um-edit-btn{color:var(--color-primary,#2d5a3d);border:1px solid var(--color-primary,#2d5a3d);cursor:pointer;background:#fff;border-radius:6px;padding:6px 12px;font-family:inherit;font-size:12px;font-weight:500;transition:all .15s}.um-edit-btn:hover{background:#f0f6f2}.um-remove-btn{color:var(--color-danger,#c00);border:1px solid var(--color-danger,#c00);cursor:pointer;background:#fff;border-radius:6px;flex-shrink:0;padding:6px 12px;font-family:inherit;font-size:12px;font-weight:500;transition:all .15s}.um-remove-btn:hover{background:var(--color-danger,#c00);color:#fff}.um-user-row.is-editing{padding:16px;display:block}.um-edit-form{width:100%}.um-edit-fields{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:8px;display:grid}@media (width<=480px){.um-edit-fields{grid-template-columns:1fr}}.um-edit-field{flex-direction:column;gap:5px;display:flex}.um-edit-field label{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted,#888);font-size:11px;font-weight:700}.um-edit-field input,.um-edit-field select{border:1.5px solid var(--color-border,#e0ddd8);color:var(--color-text-primary,#1a1a1a);box-sizing:border-box;background:#fff;border-radius:7px;width:100%;padding:8px 10px;font-family:inherit;font-size:14px;transition:border-color .15s}.um-edit-field input:focus,.um-edit-field select:focus{border-color:var(--color-primary,#2d5a3d);outline:none}.um-edit-field input:disabled,.um-edit-field select:disabled{opacity:.6}.um-edit-email{color:var(--color-text-muted,#999);margin:4px 0 10px;font-size:12px}.um-edit-actions{gap:8px;display:flex}.um-save-btn{background:var(--color-primary,#2d5a3d);color:#fff;cursor:pointer;border:none;border-radius:7px;padding:8px 16px;font-family:inherit;font-size:13px;font-weight:600;transition:background .15s}.um-save-btn:not(:disabled):hover{background:var(--color-primary-dark,#1f3d2b)}.um-save-btn:disabled{opacity:.5;cursor:default}.um-hint-warning{color:#92400e;background:#fffbeb;border-color:#fcd34d;font-style:normal}.um-resident-info{color:var(--color-text-muted);border-left:4px solid var(--color-primary);background:#f0f5f1;border-radius:8px;margin-bottom:20px;padding:14px 16px;font-size:14px}.um-loading{text-align:center;color:var(--color-text-muted);padding:32px;font-size:14px}.um-resident-list{flex-direction:column;gap:10px;margin-top:16px;display:flex}.um-resident-row{border:1px solid var(--color-border,#e0e0e0);background:#fff;border-radius:10px;align-items:flex-start;gap:14px;padding:14px;display:flex}.um-resident-avatar{background:var(--color-primary,#2d5a3d);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;font-weight:700;display:flex}.um-resident-info-block{flex-direction:column;flex:1;gap:3px;display:flex}.um-resident-name{color:var(--color-text,#1a1a1a);font-size:15px;font-weight:600}.um-resident-nickname{color:var(--color-text-muted,#888);font-size:13px;font-style:italic}.um-resident-room{color:var(--color-text-muted,#888);font-size:12px}.um-resident-url{color:var(--color-text-muted,#aaa);margin-top:2px;font-size:11px}.um-resident-url code{background:var(--color-surface,#f4f4f4);border-radius:3px;padding:1px 4px;font-size:11px}.um-resident-info{color:var(--color-text-muted,#888);margin-bottom:16px;font-size:13px;line-height:1.5}.um-resident-checkboxes{flex-direction:column;gap:8px;margin-top:4px;display:flex}.um-resident-check-label{cursor:pointer;color:var(--color-text,#1a1a1a);align-items:center;gap:8px;font-size:14px;display:flex}.um-resident-check-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-primary,#2d5a3d);cursor:pointer}.um-resident-picker{border:1px solid var(--color-border,#e0e0e0);width:100%;color:var(--color-text,#1a1a1a);background:#fff;border-radius:6px;padding:8px 10px;font-size:14px}.um-resident-picker:focus{outline:2px solid var(--color-primary,#2d5a3d);outline-offset:1px}.um-user-residents{color:var(--color-primary,#2d5a3d);margin-top:2px;font-size:11px;font-weight:500}.um-resident-row.is-active{border-color:var(--color-primary,#2d5a3d);background:#f5faf7}.um-resident-name-row{align-items:center;gap:8px;display:flex}.um-resident-active-badge{background:var(--color-primary,#2d5a3d);color:#fff;text-transform:uppercase;letter-spacing:.05em;border-radius:10px;padding:2px 7px;font-size:10px;font-weight:700}.um-select-resident-btn{background:var(--color-primary,#2d5a3d);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:6px 12px;font-family:inherit;font-size:12px;font-weight:600;transition:background .15s}.um-select-resident-btn:hover:not(:disabled){background:var(--color-primary-dark,#1f3d2b)}.um-select-resident-btn:disabled{opacity:.5;cursor:default}.um-link-messages-btn{color:var(--color-primary,#2d5a3d);border:1px dashed var(--color-primary,#2d5a3d);cursor:pointer;opacity:.75;background:0 0;border-radius:6px;align-self:flex-start;margin-top:4px;padding:3px 10px;font-family:inherit;font-size:11px;font-weight:500;transition:opacity .15s}.um-link-messages-btn:hover:not(:disabled){opacity:1}.um-link-messages-btn:disabled{opacity:.35;cursor:default}.um-resident-staff-row{flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;display:flex}.um-staff-label{color:var(--color-text-muted,#888);font-size:12px;font-weight:500}.um-no-staff{color:var(--color-text-muted,#aaa);font-size:12px;font-style:italic}.um-staff-chip{color:var(--color-primary,#2d5a3d);background:#e8f2ec;border-radius:12px;padding:2px 10px;font-size:12px;font-weight:500;display:inline-block}.um-assign-staff-btn{color:var(--color-primary,#2d5a3d);border:1px solid var(--color-primary,#2d5a3d);cursor:pointer;background:#fff;border-radius:12px;padding:3px 10px;font-family:inherit;font-size:12px;font-weight:500;transition:all .15s}.um-assign-staff-btn:hover:not(:disabled){background:#f0f6f2}.um-assign-staff-btn:disabled{opacity:.5;cursor:default}.um-assign-panel{border:1px solid var(--color-border,#e0e0e0);background:#f9fafb;border-radius:8px;flex-direction:column;gap:8px;margin-top:12px;padding:14px;display:flex}.um-checkbox-label{color:var(--color-text,#1a1a1a);cursor:pointer;align-items:center;gap:8px;font-size:14px;font-weight:500;display:flex}.um-checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-primary,#2d5a3d);cursor:pointer}.um-dark-badge{color:#94a3b8;background:#1e293b;border-radius:10px;margin-top:3px;padding:2px 8px;font-size:11px;font-weight:500;display:inline-block}.deleted-messages{width:100%}.dm-loading{text-align:center;color:var(--color-text-muted,#888);padding:48px 24px;font-size:15px}.dm-error{color:#b91c1c;cursor:pointer;background:#fff0f0;border:1px solid #fca5a5;border-radius:8px;margin-bottom:16px;padding:10px 16px;font-size:14px}.dm-empty{text-align:center;padding:64px 24px}.dm-empty-icon{opacity:.4;margin-bottom:16px;font-size:48px}.dm-empty-title{color:var(--color-text-primary,#1a1a1a);margin:0 0 8px;font-size:18px;font-weight:600}.dm-empty-sub{color:var(--color-text-muted,#888);max-width:400px;margin:0 auto;font-size:14px;line-height:1.5}.dm-count{color:var(--color-text-muted,#666);text-transform:uppercase;letter-spacing:.05em;margin:0 0 20px;font-size:14px;font-weight:600}.dm-list{background:var(--color-border,#e0ddd8);border:1px solid var(--color-border,#e0ddd8);border-radius:12px;flex-direction:column;gap:1px;display:flex;overflow:hidden}.dm-row{background:#fafaf8;align-items:center;gap:16px;padding:16px 20px;transition:background .15s;display:flex}.dm-row:hover{background:#fff}.dm-texts{flex:1;min-width:0}.dm-french{color:var(--color-text-primary,#555);opacity:.75;margin:0 0 4px;font-size:15px;font-style:italic;font-weight:500;line-height:1.45}.dm-english{color:var(--color-text-muted,#999);margin:0 0 6px;font-size:13px;line-height:1.4}.dm-meta{color:var(--color-text-muted,#aaa);margin:0;font-size:12px}.dm-actions{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;gap:8px;display:flex}.dm-btn{cursor:pointer;white-space:nowrap;border:none;border-radius:8px;padding:7px 14px;font-family:inherit;font-size:13px;font-weight:600;transition:background .15s}.dm-btn:disabled{opacity:.5;cursor:default}.dm-btn-restore{color:var(--color-primary,#2d5a3d);background:#f0f6f2;border:1px solid #c8e0d0}.dm-btn-restore:not(:disabled):hover{background:#dceee3}.dm-btn-delete{color:#b91c1c;background:#fff0f0;border:1px solid #fca5a5}.dm-btn-delete:not(:disabled):hover{background:#fee2e2}@media (width<=560px){.dm-row{flex-direction:column;align-items:flex-start;gap:12px}.dm-actions{justify-content:flex-start;align-self:stretch}}.cat-manager{max-width:620px;margin:0 auto}.cat-manager h2{color:var(--color-text-primary,#1a1a1a);margin:0 0 4px;font-size:18px;font-weight:700}.cat-manager-subtitle{color:var(--color-text-muted,#777);margin:0 0 24px;font-size:13px}.cat-add-form{flex-wrap:wrap;align-items:flex-start;gap:8px;margin-bottom:24px;display:flex}.cat-add-input{border:1px solid var(--color-border,#e2e8f0);background:var(--color-surface,#fff);min-width:140px;color:var(--color-text-primary,#1a1a1a);border-radius:8px;outline:none;flex:1;padding:9px 12px;font-size:14px;transition:border-color .15s}.cat-add-input:focus{border-color:var(--color-primary,#2d5a3d);box-shadow:0 0 0 3px var(--color-primary-alpha,#2d5a3d1f)}.cat-add-btn{background:var(--color-primary,#2d5a3d);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:8px;padding:9px 18px;font-size:14px;font-weight:600;transition:opacity .15s}.cat-add-btn:disabled{opacity:.5;cursor:not-allowed}.cat-add-btn:not(:disabled):hover{opacity:.88}.cat-list{flex-direction:column;gap:8px;display:flex}.cat-row{background:var(--color-surface,#fff);border:1px solid var(--color-border,#e2e8f0);border-radius:10px;align-items:center;gap:10px;padding:12px 14px;transition:border-color .15s;display:flex}.cat-row.is-editing{border-color:var(--color-primary,#2d5a3d)}.cat-name{color:var(--color-text-primary,#1a1a1a);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:14px;font-weight:600;overflow:hidden}.cat-name-fr{color:var(--color-text-muted,#777);white-space:nowrap;text-overflow:ellipsis;min-width:80px;font-size:13px;font-style:italic;overflow:hidden}.cat-actions{flex-shrink:0;gap:6px;display:flex}.cat-btn{border:1px solid var(--color-border,#e2e8f0);cursor:pointer;color:var(--color-text-primary,#1a1a1a);background:0 0;border-radius:6px;padding:5px 12px;font-size:13px;font-weight:500;transition:background .15s,border-color .15s}.cat-btn:hover:not(:disabled){background:var(--color-bg-secondary,#f8fafc)}.cat-btn:disabled{opacity:.45;cursor:not-allowed}.cat-btn-delete{color:#dc2626;border-color:#fecaca}.cat-btn-delete:hover:not(:disabled){background:#fef2f2}.cat-edit-row{flex-direction:column;flex:1;gap:6px;display:flex}.cat-edit-inputs{flex-wrap:wrap;gap:8px;display:flex}.cat-edit-input{border:1px solid var(--color-border,#e2e8f0);background:var(--color-surface,#fff);min-width:120px;color:var(--color-text-primary,#1a1a1a);border-radius:6px;outline:none;flex:1;padding:7px 10px;font-size:13px}.cat-edit-input:focus{border-color:var(--color-primary,#2d5a3d)}.cat-edit-actions{gap:6px;display:flex}.cat-btn-save{background:var(--color-primary,#2d5a3d);color:#fff;border-color:var(--color-primary,#2d5a3d)}.cat-btn-save:hover:not(:disabled){opacity:.88;background:var(--color-primary,#2d5a3d)}.cat-empty{text-align:center;color:var(--color-text-muted,#777);background:var(--color-surface,#fff);border:1px dashed var(--color-border,#e2e8f0);border-radius:10px;padding:24px;font-size:14px}.cat-error{color:#dc2626;cursor:pointer;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:12px;padding:10px 14px;font-size:14px}[data-theme=dark] .cat-row{background:#1f2937;border-color:#374151}[data-theme=dark] .cat-name{color:#f1f5f9}[data-theme=dark] .cat-add-input,[data-theme=dark] .cat-edit-input{color:#f1f5f9;background:#1f2937;border-color:#374151}[data-theme=dark] .cat-btn{color:#e2e8f0;border-color:#374151}[data-theme=dark] .cat-btn:hover:not(:disabled){background:#374151}[data-theme=dark] .cat-empty{background:#1f2937;border-color:#374151}[data-theme=dark] .cat-manager h2{color:#f1f5f9}.resident-selector{background:var(--color-surface,#f8f9fa);border-bottom:1px solid var(--color-border,#e0e0e0);align-items:center;gap:10px;padding:8px 16px;display:flex}.resident-selector--empty{gap:6px}.rs-label{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted,#888);white-space:nowrap;font-size:12px;font-weight:600}.rs-select{color:var(--color-text,#1a1a1a);border:1px solid var(--color-border,#e0e0e0);cursor:pointer;background:#fff;border-radius:6px;min-width:180px;padding:4px 10px;font-size:14px;font-weight:600}.rs-select:focus{outline:2px solid var(--color-primary,#2d5a3d);outline-offset:1px}.rs-name{color:var(--color-text,#1a1a1a);font-size:14px;font-weight:600}.rs-room{color:var(--color-text-muted,#888);margin-left:2px;font-size:12px}.rs-hint{color:var(--color-text-muted,#888);font-size:12px;font-style:italic}.rs-avatar{object-fit:cover;border:2px solid var(--color-border,#e0e0e0);border-radius:50%;flex-shrink:0}.cp-overlay{z-index:1000;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.cp-modal{border-radius:var(--radius);background:#fff;width:100%;max-width:420px;overflow:hidden;box-shadow:0 20px 60px #0003}.cp-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.cp-header h2{color:var(--color-text-primary);margin:0;font-size:18px;font-weight:600}.cp-close{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 8px;font-family:inherit;font-size:16px;line-height:1;transition:background .15s}.cp-close:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.cp-form{flex-direction:column;gap:16px;padding:24px;display:flex}.cp-label{color:var(--color-text-primary);flex-direction:column;gap:6px;font-size:14px;font-weight:500;display:flex}.cp-input{border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text-primary);background:#fff;width:100%;padding:10px 12px;font-family:inherit;font-size:14px;transition:border-color .15s}.cp-input:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #2d5a3d1f}.cp-error{color:var(--color-danger);border-radius:var(--radius);background:#fef2f2;border:1px solid #fecaca;margin:0;padding:10px 12px;font-size:13px}.cp-actions{justify-content:flex-end;gap:12px;margin-top:4px;display:flex}.cp-btn-primary{background:var(--color-primary);color:#fff;border-radius:var(--radius);cursor:pointer;border:none;padding:10px 20px;font-family:inherit;font-size:14px;font-weight:600;transition:background .15s}.cp-btn-primary:hover:not(:disabled){background:var(--color-primary-dark)}.cp-btn-primary:disabled{opacity:.6;cursor:not-allowed}.cp-btn-secondary{color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer;background:#fff;padding:10px 20px;font-family:inherit;font-size:14px;font-weight:500;transition:background .15s}.cp-btn-secondary:hover:not(:disabled){background:var(--color-bg-secondary)}.cp-btn-secondary:disabled{opacity:.6;cursor:not-allowed}.cp-success{text-align:center;flex-direction:column;align-items:center;gap:20px;padding:32px 24px;display:flex}.cp-success p{color:var(--color-success);font-size:15px;font-weight:500}.dlm-wrap{max-width:820px;margin:0 auto;padding:0 0 48px}.dlm-header{margin-bottom:24px}.dlm-header-top{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.dlm-title{color:#1f2937;margin:0 0 6px;font-size:1.4rem;font-weight:700}[data-theme=dark] .dlm-title{color:#f3f4f6}.dlm-subtitle{color:#6b7280;margin:0;font-size:.9rem;line-height:1.5}[data-theme=dark] .dlm-subtitle{color:#9ca3af}.dlm-french-toggle{border:1.5px solid var(--color-border,#e0ddd8);color:#6b7280;cursor:pointer;white-space:nowrap;background:#fff;border-radius:20px;flex-shrink:0;padding:6px 14px;font-family:inherit;font-size:13px;font-weight:500;transition:all .15s}.dlm-french-toggle:hover{color:#374151;border-color:#6b7280}.dlm-french-toggle.active{color:#1d4ed8;background:#eff6ff;border-color:#93c5fd}[data-theme=dark] .dlm-french-toggle{color:#9ca3af;background:#1f2937;border-color:#374151}[data-theme=dark] .dlm-french-toggle.active{color:#93c5fd;background:#1e3a5f;border-color:#3b82f6}.dlm-loading{color:#6b7280;text-align:center;padding:32px 0}.dlm-error{color:#b91c1c;cursor:pointer;background:#fef2f2;border:1px solid #fca5a5;border-radius:8px;margin-bottom:16px;padding:10px 14px;font-size:.9rem}[data-theme=dark] .dlm-error{color:#fca5a5;background:#450a0a;border-color:#7f1d1d}.dlm-empty{text-align:center;color:#6b7280;padding:48px 24px}.dlm-empty-icon{margin-bottom:12px;font-size:3rem}.dlm-empty p{margin:6px 0;font-size:1rem}.dlm-empty-hint{color:#9ca3af;max-width:400px;line-height:1.5;margin:8px auto 0!important;font-size:.88rem!important}.dlm-list{flex-direction:column;gap:12px;display:flex}.dlm-row{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px 20px;transition:opacity .2s}[data-theme=dark] .dlm-row{background:#1f2937;border-color:#374151}.dlm-row--removing{opacity:.45;pointer-events:none}.dlm-summary{color:#1f2937;margin:0 0 4px;font-size:.95rem;font-weight:600}[data-theme=dark] .dlm-summary{color:#f3f4f6}.dlm-english{color:#374151;margin:0 0 3px;font-size:.95rem;line-height:1.5}[data-theme=dark] .dlm-english{color:#d1d5db}.dlm-french{color:#6b7280;margin:0 0 10px;font-size:.88rem;font-style:italic;line-height:1.5}[data-theme=dark] .dlm-french{color:#9ca3af}.dlm-meta-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;margin-bottom:10px;display:flex}.dlm-type-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:6px;align-items:center;gap:3px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.dlm-type-moment{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0}.dlm-type-memory{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe}.dlm-type-notice{color:#92400e;background:#fef3c7;border:1px solid #fcd34d}.dlm-cat-badge{color:#374151;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;align-items:center;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}[data-theme=dark] .dlm-cat-badge{color:#d1d5db;background:#374151;border-color:#4b5563}.dlm-author{color:#6b7280;align-items:center;gap:3px;font-size:12px;display:inline-flex}[data-theme=dark] .dlm-author{color:#9ca3af}.dlm-role-badge{border-radius:6px;align-items:center;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.dlm-date{color:#9ca3af;font-size:.78rem}.dlm-unpublished{color:#f59e0b;font-size:.78rem;font-weight:600}.dlm-sched-bubble{color:#166534;white-space:nowrap;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;align-items:center;gap:3px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}[data-theme=dark] .dlm-sched-bubble{color:#86efac;background:#052e16;border-color:#166534}.dlm-row-actions{margin-top:4px}.dlm-remove-btn{color:#6b7280;cursor:pointer;background:0 0;border:1px solid #e5e7eb;border-radius:8px;padding:5px 14px;font-size:.82rem;transition:background .15s,color .15s,border-color .15s}.dlm-remove-btn:hover:not(:disabled){color:#b91c1c;background:#fef2f2;border-color:#fca5a5}.dlm-remove-btn:disabled{opacity:.5;cursor:default}[data-theme=dark] .dlm-remove-btn{color:#9ca3af;border-color:#374151}[data-theme=dark] .dlm-remove-btn:hover:not(:disabled){color:#fca5a5;background:#450a0a;border-color:#7f1d1d}.kl-root{flex-direction:column;gap:20px;max-width:780px;padding-bottom:40px;display:flex}.kl-header{margin-bottom:4px}.kl-title{color:var(--color-text-primary);margin:0 0 4px;font-size:22px;font-weight:700}.kl-subtitle{color:var(--color-text-muted);margin:0;font-size:14px}.kl-error{color:#b91c1c;cursor:pointer;background:#fff0f0;border:1px solid #fca5a5;border-radius:8px;padding:10px 16px;font-size:14px}.kl-success{color:#166534;background:#f0faf4;border:1px solid #86efac;border-radius:8px;padding:10px 16px;font-size:14px}.kl-error-inline{color:#b91c1c;margin-top:6px;font-size:13px}.kl-card{border:1px solid var(--color-border,#e0ddd8);background:#fff;border-radius:12px;flex-direction:column;gap:16px;padding:20px 24px;display:flex}.kl-card-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.kl-section-title{color:var(--color-text-primary);margin:0;font-size:16px;font-weight:700}.kl-section-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.kl-label{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted,#999);margin-bottom:4px;font-size:11px;font-weight:700;display:block}.kl-input{box-sizing:border-box;border:1.5px solid var(--color-border,#e0ddd8);width:100%;color:var(--color-text-primary);background:#fafaf9;border-radius:8px;padding:8px 12px;font-family:inherit;font-size:14px;transition:border-color .15s}.kl-input:focus{border-color:var(--color-primary,#2d5a3d);outline:none}.kl-input:disabled{opacity:.6}.kl-textarea{box-sizing:border-box;border:1.5px solid var(--color-border,#e0ddd8);width:100%;color:var(--color-text-primary);resize:vertical;background:#fafaf9;border-radius:8px;padding:8px 12px;font-family:inherit;font-size:14px;transition:border-color .15s}.kl-textarea:focus{border-color:var(--color-primary,#2d5a3d);outline:none}.kl-textarea:disabled{opacity:.6}.kl-speech-row{align-items:flex-start;gap:6px;width:100%;display:flex}.kl-speech-row .kl-input,.kl-speech-row .kl-textarea{flex:1;min-width:0}.kl-basic-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.kl-btn{border:1.5px solid var(--color-border,#e0ddd8);color:var(--color-text-primary);cursor:pointer;white-space:nowrap;background:#fff;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-family:inherit;font-size:14px;font-weight:600;transition:all .15s;display:inline-flex}.kl-btn:hover:not(:disabled){background:#f5f5f5}.kl-btn:disabled{opacity:.5;cursor:not-allowed}.kl-btn-primary{background:var(--color-primary,#2d5a3d);border-color:var(--color-primary,#2d5a3d);color:#fff}.kl-btn-primary:hover:not(:disabled){background:#244d34}.kl-btn-secondary{color:var(--color-primary,#2d5a3d);background:#f0faf4;border-color:#b6d9c8}.kl-btn-secondary:hover:not(:disabled){background:#e0f2ea}.kl-btn-ai{color:#92400e;background:#fef3c7;border-color:#f59e0b}.kl-btn-ai:hover:not(:disabled){background:#fde68a}.kl-btn-sm{border-radius:6px;padding:4px 10px;font-size:12px}.kl-icon-btn{cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px;font-size:18px;line-height:1;transition:background .15s}.kl-icon-btn:hover:not(:disabled){background:#f5f5f5}.kl-icon-btn--danger:hover:not(:disabled){background:#fee2e2}.kl-section{flex-direction:column;gap:8px;display:flex}.kl-section+.kl-section{border-top:1px solid var(--color-border,#e0ddd8);padding-top:16px}.kl-entries{flex-direction:column;gap:6px;display:flex}.kl-entry{grid-template-columns:1fr 90px 90px 28px;align-items:start;gap:6px;display:grid}.kl-entry-text-wrap{grid-column:1}.kl-entry-remove{color:#9ca3af;cursor:pointer;background:0 0;border:none;border-radius:4px;align-self:center;padding:4px;font-size:14px;transition:color .15s}.kl-entry-remove:hover:not(:disabled){color:#ef4444}.kl-add-entry-btn{color:var(--color-text-muted,#888);cursor:pointer;background:0 0;border:1px dashed #c4c4c4;border-radius:8px;width:fit-content;padding:6px 12px;font-family:inherit;font-size:13px;transition:all .15s}.kl-add-entry-btn:hover:not(:disabled){border-color:var(--color-primary,#2d5a3d);color:var(--color-primary,#2d5a3d)}.kl-move-card{background:#f8fdf9;border:1px solid #b6d9c8;border-radius:10px;flex-direction:column;gap:10px;padding:14px;display:flex}.kl-move-header{justify-content:space-between;align-items:center;display:flex}.kl-move-num{text-transform:uppercase;letter-spacing:.05em;color:var(--color-primary,#2d5a3d);font-size:12px;font-weight:700}.kl-move-location-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.kl-move-location-field{flex-direction:column;gap:4px;display:flex;position:relative}.kl-geo-row{align-items:center;gap:6px;display:flex}.kl-geo-row .kl-input{flex:1;min-width:0}.kl-geo-btn{border:1.5px solid var(--color-border,#e0ddd8);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;padding:6px 8px;font-size:16px;transition:background .15s}.kl-geo-btn:hover:not(:disabled){background:#f0f0f0}.kl-geo-btn:disabled{opacity:.5;cursor:not-allowed}.kl-geo-tag{color:var(--color-primary,#2d5a3d);font-size:11px;font-weight:600}.kl-geo-results{z-index:10;border:1.5px solid var(--color-border,#e0ddd8);background:#fff;border-radius:8px;max-height:180px;margin:2px 0 0;padding:4px 0;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 4px 12px #0000001a}.kl-geo-results li{cursor:pointer;color:var(--color-text-primary);padding:7px 12px;font-size:13px;transition:background .1s}.kl-geo-results li:hover{background:#f5f5f5}.kl-geo-dismiss{border-top:1px solid var(--color-border,#e0ddd8);margin-top:2px;color:var(--color-text-muted,#999)!important;padding-top:6px!important;font-size:12px!important}.kl-move-date{max-width:220px}.kl-photo-add-btns{flex-wrap:wrap;gap:8px;display:flex}.kl-photo-upload-form{background:#f8fdf9;border:1.5px solid #b6d9c8;border-radius:10px;flex-direction:column;gap:8px;padding:14px;display:flex}.kl-url-hint{color:var(--color-text-muted,#666);background:#f0f7ff;border:1px solid #bfdbfe;border-radius:8px;padding:8px 12px;font-size:13px;line-height:1.5}.kl-url-hint code{background:#0000000f;border-radius:4px;padding:1px 5px;font-family:monospace;font-size:11px}.kl-url-preview{object-fit:contain;border:1px solid var(--color-border,#e0ddd8);background:#f3f3f3;border-radius:8px;width:100%;max-height:180px}.kl-exif-result{color:var(--color-primary,#2d5a3d);background:#f0faf4;border:1px solid #b6d9c8;border-radius:6px;padding:6px 10px;font-size:12px;font-weight:600}.kl-photo-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;display:grid}.kl-photo-card{border:1.5px solid var(--color-border,#e0ddd8);background:#fafaf9;border-radius:10px;flex-direction:column;gap:6px;padding:8px;transition:border-color .15s;display:flex;position:relative}.kl-photo-card--primary{background:#fffdf5;border-color:#f59e0b}.kl-photo-thumb{aspect-ratio:1;object-fit:cover;border-radius:6px;width:100%;display:block}.kl-photo-primary-badge{color:#fff;background:#f59e0b;border-radius:10px;padding:2px 6px;font-size:10px;font-weight:700;line-height:1.4;position:absolute;top:12px;left:12px}.kl-photo-meta{color:var(--color-text-muted,#888);font-size:11px;font-weight:600}.kl-photo-caption{color:var(--color-text-primary);font-size:12px;font-style:italic;line-height:1.3}.kl-photo-actions{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.kl-family-list{flex-direction:column;gap:10px;display:flex}.kl-family-card{border:1px solid var(--color-border,#e0ddd8);background:#fafaf9;border-radius:10px;grid-template-columns:72px 1fr auto;align-items:start;gap:14px;padding:14px;display:grid}.kl-family-card--editing{padding:16px;display:block}.kl-family-photo-col{flex-direction:column;align-items:center;gap:4px;display:flex}.kl-family-photo{object-fit:cover;border:2px solid var(--color-border,#e0ddd8);background:#f3f3f3;border-radius:50%;width:60px;height:60px}.kl-family-photo--empty{background:#f3f3f3;justify-content:center;align-items:center;font-size:28px;display:flex}.kl-photo-upload-btn{cursor:pointer;color:#666;background:0 0;border:1px solid #ddd;border-radius:12px;padding:2px 6px;font-size:12px;transition:all .15s}.kl-photo-upload-btn:hover:not(:disabled){background:#f0f0f0}.kl-family-name{color:var(--color-text-primary);font-size:15px;font-weight:700}.kl-family-rel{color:var(--color-primary,#2d5a3d);margin-top:2px;font-size:13px;font-weight:500}.kl-family-dates{color:var(--color-text-muted,#888);margin-top:3px;font-size:12px}.kl-family-notes{color:var(--color-text-primary);margin-top:5px;font-size:13px;font-style:italic}.kl-family-actions{flex-direction:column;gap:4px;display:flex}.kl-family-edit-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.kl-family-notes-edit{grid-column:1/-1}.kl-family-edit-actions{gap:8px;margin-top:10px;display:flex}.kl-add-member-form{background:#f8fdf9;border:1.5px solid #b6d9c8;border-radius:10px;padding:16px}.kl-photo-pick{grid-column:1/-1}.kl-photo-pick-name{color:#666;margin-left:8px;font-size:12px}.kl-empty-hint{color:var(--color-text-muted,#999);margin:0;font-size:14px;font-style:italic}.kl-save-row{justify-content:flex-start;display:flex}.kl-btn-save{padding:10px 28px;font-size:15px}.kl-suggestions-card{background:#fffdf5;border-color:#f5d87b}.kl-suggestions-hint{color:var(--color-text-muted,#888);margin:0;font-size:13px}.kl-suggestions-list{grid-template-columns:1fr 1fr;gap:10px;display:grid}.kl-suggestion-chip{cursor:default;background:#fff;border:1.5px solid #f5d87b;border-radius:10px;padding:12px 14px;transition:border-color .15s,box-shadow .15s}.kl-suggestion-chip:hover{border-color:#f59e0b;box-shadow:0 2px 8px #f59e0b26}.kl-suggestion-title{color:var(--color-text-primary);margin-bottom:4px;font-size:14px;font-weight:700}.kl-suggestion-desc{color:var(--color-text-muted,#666);font-size:13px;line-height:1.4}.kl-empty{color:var(--color-text-muted,#999);text-align:center;padding:40px;font-size:14px}@media (width<=600px){.kl-basic-grid,.kl-family-edit-grid,.kl-suggestions-list{grid-template-columns:1fr}.kl-entry{grid-template-columns:1fr 70px 70px 28px}.kl-move-location-grid{grid-template-columns:1fr}.kl-photo-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}}.rt-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.rt-header-text{flex:1}.rt-heading{color:var(--color-text-primary);margin:0 0 4px;font-size:20px;font-weight:700}.rt-subheading{color:var(--color-text-muted);margin:0;font-size:14px}.rt-empty{text-align:center;color:var(--color-text-muted);padding:52px 24px}.rt-empty p{margin-bottom:20px;font-size:15px}.rt-avatar{justify-content:center;align-items:center;padding:0;font-size:18px;font-weight:700;display:flex;overflow:hidden}.rt-avatar-img{object-fit:cover;border-radius:50%;width:100%;height:100%}.rt-knowledge-section{margin-top:48px}.rt-knowledge-divider{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.6px;align-items:center;gap:14px;margin-bottom:32px;font-size:12px;font-weight:700;display:flex}.rt-knowledge-divider:before,.rt-knowledge-divider:after{content:"";background:var(--color-border);flex:1;height:1px}[data-theme=dark] .rt-heading{color:var(--color-text-primary)}[data-theme=dark] .rt-subheading,[data-theme=dark] .rt-knowledge-divider{color:var(--color-text-muted)}[data-theme=dark] .rt-knowledge-divider:before,[data-theme=dark] .rt-knowledge-divider:after{background:var(--color-border)}.admin-dashboard{background:var(--color-bg-primary);min-height:100vh;padding-bottom:40px}.admin-header{background:linear-gradient(135deg, var(--color-primary) 0%, #4a90c7 100%);color:#fff;text-align:center;padding:40px 24px}.admin-header h1{margin:0 0 12px;font-size:28px;font-weight:600}.admin-header p{opacity:.9;margin:0;font-size:16px}.admin-header-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:16px;display:flex}.admin-header-btn{color:#fff;cursor:pointer;background:#ffffff26;border:1px solid #fff6;border-radius:20px;padding:7px 16px;font-family:inherit;font-size:13px;font-weight:500;transition:background .15s}.admin-header-btn:hover{background:#ffffff40}.admin-tabs{border-bottom:1px solid var(--color-border);background:#fff;justify-content:flex-start;gap:0;padding:0 24px;display:flex;overflow-x:auto}.admin-tabs .tab{color:var(--color-text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;padding:16px 20px;font-size:14px;font-weight:500;transition:all .2s}.admin-tabs .tab:hover{color:var(--color-text-primary);border-bottom-color:var(--color-border)}.admin-tabs .tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.tab-badge{color:#fff;vertical-align:middle;background:#e53e3e;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:6px;padding:0 5px;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.admin-content{max-width:1200px;margin:0 auto;padding:40px 24px}.tab-pane{animation:.2s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (width<=768px){.admin-header{padding:32px 16px}.admin-header h1{font-size:24px}.admin-header p{font-size:14px}.admin-tabs{padding:0}.admin-tabs .tab{padding:12px 16px;font-size:13px}.admin-content{padding:24px 16px}}.admin-no-resident{text-align:center;color:var(--color-text-muted,#888);padding:40px 24px}.admin-no-resident-link{color:var(--color-primary,#2d5a3d);cursor:pointer;font-weight:600;font-size:inherit;background:0 0;border:none;padding:0;font-family:inherit;text-decoration:underline}.message-player{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 12px #00000014}.player-texts{margin-bottom:20px}.player-french{color:var(--color-primary);margin-bottom:12px;font-size:1.5rem;font-style:italic;font-weight:500;line-height:1.5}.player-english{color:var(--color-text-muted);font-size:1rem;line-height:1.5}.player-actions{flex-wrap:wrap;gap:12px;display:flex}.player-btn{cursor:pointer;border:none;border-radius:10px;padding:16px 28px;font-family:inherit;font-size:1.1rem;font-weight:600;transition:background .2s,transform .1s}.player-btn:active{transform:scale(.97)}.player-btn:disabled{opacity:.4;cursor:not-allowed}.player-btn-play{background:var(--color-primary);color:#fff;min-width:120px}.player-btn-play:hover:not(:disabled){background:var(--color-primary-dark)}.player-btn-stop{background:var(--color-accent);color:#fff;min-width:120px}.player-btn-stop:hover{background:#b07a54}.player-btn-resident{color:var(--color-primary);border:2px solid var(--color-primary);background:#f0f5f1;margin-left:auto}.player-btn-resident:hover{background:var(--color-primary);color:#fff}.player-no-audio{color:var(--color-text-muted);margin-top:12px;font-size:13px;font-style:italic}.daily-queue{max-width:720px}.queue-title{color:var(--color-text-primary);margin-bottom:24px;font-size:20px;font-weight:600}.queue-list{flex-direction:column;gap:16px;display:flex}.queue-item{border-left:4px solid var(--color-border);background:#fff;border-radius:12px;gap:20px;padding:20px;transition:border-color .2s;display:flex;box-shadow:0 2px 8px #0000000f}.queue-item.next{border-left-color:var(--color-primary);box-shadow:0 4px 16px #2d5a3d1f}.queue-item.past{opacity:.5}.queue-time{flex-direction:column;align-items:center;min-width:64px;display:flex}.queue-next-badge{background:var(--color-primary);color:#fff;letter-spacing:.5px;border-radius:4px;margin-bottom:6px;padding:2px 6px;font-size:10px;font-weight:700}.queue-time-value{color:var(--color-text-primary);font-variant-numeric:tabular-nums;font-size:1.3rem;font-weight:700}.queue-content{flex:1;min-width:0}.queue-staff-note{color:var(--color-text-muted);background:#fffbf0;border:1px solid #f0e0a0;border-radius:6px;margin-bottom:12px;padding:8px 12px;font-size:13px}.queue-preview{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.queue-message-text{flex:1;min-width:0}.queue-english{color:var(--color-text-primary);margin:0 0 3px;font-size:1.05rem;font-style:normal;font-weight:500;line-height:1.5}.queue-french{color:var(--color-text-muted);margin:0;font-size:.9rem;font-style:italic;line-height:1.4}.queue-play-btn{background:var(--color-primary);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:8px;padding:10px 20px;font-size:1rem;font-weight:600;transition:background .2s}.queue-play-btn:hover{background:var(--color-primary-dark)}.queue-player{flex-direction:column;gap:12px;display:flex}.queue-collapse{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;font-size:13px}.queue-collapse:hover{color:var(--color-text-primary)}.queue-missing{color:var(--color-text-muted);font-size:13px;font-style:italic}.queue-loading,.queue-empty{text-align:center;color:var(--color-text-muted);padding:40px 24px}.queue-empty-sub{margin-top:8px;font-size:13px}.creator-wrap{flex-direction:column;gap:20px;display:flex}.creator-header{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:4px;display:flex}.creator-back{color:var(--color-primary,#2d5a3d);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:14px;font-weight:500}.creator-back:disabled{opacity:.4;cursor:default}.creator-type-label{color:var(--color-text-primary,#1a1a1a);font-size:15px;font-weight:600}.creator-for{color:var(--color-text-muted,#777);margin-left:auto;font-size:13px}.creator-error{color:#b91c1c;cursor:pointer;background:#fff0f0;border:1px solid #fca5a5;border-radius:8px;padding:10px 16px;font-size:14px}.creator-form{flex-direction:column;gap:12px;display:flex}.creator-label{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted,#777);margin-bottom:4px;font-size:12px;font-weight:600;display:block}.creator-textarea{border:1.5px solid var(--color-border,#e0ddd8);width:100%;color:var(--color-text-primary,#1a1a1a);resize:vertical;box-sizing:border-box;border-radius:8px;padding:12px 14px;font-family:inherit;font-size:15px;font-style:italic;line-height:1.5;transition:border-color .15s}.creator-textarea:focus{border-color:var(--color-primary,#2d5a3d);outline:none}.creator-textarea--french{font-style:italic}.creator-input{border:1.5px solid var(--color-border,#e0ddd8);width:100%;color:var(--color-text-primary,#1a1a1a);box-sizing:border-box;border-radius:8px;padding:10px 14px;font-family:inherit;font-size:14px;transition:border-color .15s}.creator-input:focus{border-color:var(--color-primary,#2d5a3d);outline:none}.creator-review{flex-direction:column;gap:16px;display:flex}.creator-pair{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=600px){.creator-pair{grid-template-columns:1fr}}.creator-block{background:#f9f8f6;border-radius:10px;padding:14px 16px}.creator-block h4{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted,#888);margin:0 0 8px;font-size:12px;font-weight:700}.creator-block p{color:var(--color-text-primary,#1a1a1a);margin:0;font-size:15px;font-style:italic;line-height:1.5}.creator-block--french{background:#f0f6f2}.creator-edit-hint{text-transform:none;letter-spacing:0;color:var(--color-text-muted,#aaa);font-size:11px;font-weight:400}.creator-audio-note{color:var(--color-text-muted,#888);margin:0;font-size:13px;font-style:italic}.creator-actions{flex-wrap:wrap;gap:10px;display:flex}.creator-btn-primary{background:var(--color-primary,#2d5a3d);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:10px 22px;font-family:inherit;font-size:14px;font-weight:500;transition:background .15s}.creator-btn-primary:hover:not(:disabled){background:var(--color-primary-dark,#1f3d2b)}.creator-btn-primary:disabled{opacity:.5;cursor:default}.creator-btn-secondary{border:1.5px solid var(--color-border,#e0ddd8);color:var(--color-text-primary,#1a1a1a);cursor:pointer;background:#fff;border-radius:8px;padding:10px 18px;font-family:inherit;font-size:14px;font-weight:500;transition:background .15s}.creator-btn-secondary:hover:not(:disabled){background:#f5f3f0}.creator-btn-secondary:disabled{opacity:.5;cursor:default}.creator-done{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:40px 24px;display:flex}.creator-done-icon{background:var(--color-primary,#2d5a3d);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-size:1.6rem;display:flex}.creator-done h3{color:var(--color-text-primary,#1a1a1a);margin:0;font-size:1.1rem;font-weight:600}.creator-done-text{color:var(--color-text-muted,#666);max-width:400px;margin:0;font-size:14px;font-style:italic;line-height:1.5}.creator-media-pick{border:2px dashed var(--color-border,#c0bdb8);color:var(--color-text-muted,#666);cursor:pointer;background:#fafaf8;border-radius:8px;align-items:center;gap:8px;padding:10px 18px;font-family:inherit;font-size:14px;font-weight:500;transition:border-color .15s,color .15s;display:inline-flex}.creator-media-pick:hover{border-color:var(--color-primary,#2d5a3d);color:var(--color-primary,#2d5a3d)}.creator-media-preview{align-items:flex-start;display:inline-flex;position:relative}.creator-media-img,.creator-media-video{object-fit:cover;border:1.5px solid var(--color-border,#e0ddd8);border-radius:10px;width:160px;height:120px;display:block}.creator-media-remove{color:#fff;cursor:pointer;background:#b91c1c;border:none;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:12px;line-height:1;display:flex;position:absolute;top:-8px;right:-8px}.creator-media-remove:disabled{opacity:.5;cursor:not-allowed}.creator-media-type-badge{color:#fff;pointer-events:none;background:#0000008c;border-radius:4px;padding:2px 6px;font-size:11px;position:absolute;bottom:6px;left:6px}.creator-date-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=500px){.creator-date-row{grid-template-columns:1fr}}.creator-date-field{flex-direction:column;gap:6px;display:flex}.staff-dashboard{background:var(--color-bg-primary);min-height:100vh;padding-bottom:40px}.staff-header{background:var(--color-primary);color:#fff;text-align:center;padding:28px 24px 24px}.staff-header h1{letter-spacing:-.5px;margin-bottom:4px;font-size:26px;font-weight:700}.staff-header p{opacity:.85;font-size:14px}.staff-header-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:14px;display:flex}.staff-header-btn{color:#fff;cursor:pointer;background:#ffffff26;border:1px solid #fff6;border-radius:20px;padding:7px 16px;font-family:inherit;font-size:13px;font-weight:500;transition:background .15s}.staff-header-btn:hover{background:#ffffff40}.staff-tabs{border-bottom:1px solid var(--color-border);background:#fff;display:flex;overflow-x:auto}.staff-tab{color:var(--color-text-muted);cursor:pointer;white-space:nowrap;text-align:center;background:0 0;border:none;border-bottom:3px solid #0000;flex:1;padding:16px 12px;font-family:inherit;font-size:14px;font-weight:500;transition:all .15s}.staff-tab:hover{color:var(--color-text-primary);background:var(--color-bg-secondary)}.staff-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:600}.staff-content{max-width:800px;margin:0 auto;padding:32px 20px}@media (width<=600px){.staff-header{padding:20px 16px}.staff-header h1{font-size:22px}.staff-tab{padding:14px 8px;font-size:13px}.staff-content{padding:20px 16px}}.staff-no-resident{text-align:center;color:var(--color-text-muted,#888);padding:40px 24px}.family-dashboard{background:var(--color-bg,#f8fafc);min-height:100vh}.family-header{color:#fff;background:linear-gradient(135deg,#c8956c 0%,#b07d52 100%);padding:36px 24px 28px;position:relative}.family-header h1{margin:0 0 4px;font-size:26px;font-weight:700}.family-header p{opacity:.88;margin:0;font-size:14px}.family-header-actions{gap:8px;display:flex;position:absolute;top:16px;right:16px}.family-header-btn{color:#fff;cursor:pointer;background:#ffffff2e;border:1px solid #ffffff59;border-radius:8px;padding:7px 14px;font-size:13px;font-weight:500;transition:background .15s}.family-header-btn:hover{background:#ffffff47}.family-no-resident{text-align:center;color:var(--color-text-muted,#777);padding:40px 24px;font-size:15px}.family-content{max-width:680px;margin:0 auto;padding:24px 16px 48px}.family-intro{margin-bottom:20px}.family-intro h2{color:var(--color-text-primary,#1a1a1a);margin:0 0 6px;font-size:18px;font-weight:600}.family-intro p{color:var(--color-text-muted,#777);margin:0;font-size:14px;line-height:1.5}[data-theme=dark] .family-dashboard{background:#111827}[data-theme=dark] .family-intro h2{color:#f1f5f9}.resident-screen{background:#f5f0e8;flex-direction:column;justify-content:center;align-items:center;gap:32px;min-height:100vh;padding:48px 32px;display:flex}.resident-list-screen{justify-content:flex-start;align-items:stretch;gap:0;padding:48px 24px 64px;overflow-y:auto}.resident-greeting{color:#2d5a3d;text-align:center;opacity:.75;flex-shrink:0;margin-bottom:32px;font-size:clamp(1.6rem,4vw,2.4rem);font-weight:600}.resident-unlock-overlay{z-index:100;cursor:pointer;background:#f5f0e8f7;border:none;flex-direction:column;justify-content:center;align-items:center;gap:20px;width:100%;padding:0;display:flex;position:fixed;inset:0}.resident-unlock-icon{font-size:6rem;animation:2s ease-in-out infinite pulse}.resident-unlock-text{color:#2d5a3d;font-size:clamp(2rem,6vw,3rem);font-weight:600}.resident-unlock-sub{color:#6b7280;font-size:clamp(1rem,3vw,1.4rem)}.resident-message-list{flex-direction:column;gap:18px;width:100%;max-width:860px;margin:0 auto;display:flex}.resident-message-card{background:#fff;border:3px solid #0000;border-radius:20px;padding:28px;transition:border-color .2s,box-shadow .2s;display:block;overflow:hidden;box-shadow:0 4px 16px #00000012}.resident-message-card.is-playing{background:#f0f6f2;border-color:#2d5a3d;box-shadow:0 6px 28px #2d5a3d2e}.resident-message-card.no-audio{opacity:.5}.resident-card-text-block{display:block}.resident-card-text{color:#2d5a3d;font-size:clamp(1.3rem,2.8vw,1.9rem);font-style:italic;font-weight:500;line-height:1.55}.resident-card-english{color:#6b7280;margin-top:8px;font-size:clamp(.85rem,1.8vw,1.1rem);font-style:normal;font-weight:400;line-height:1.45}.resident-card-notice-badge{color:#92400e;text-transform:uppercase;letter-spacing:.05em;background:#fef3c7;border:1px solid #fcd34d;border-radius:6px;margin-bottom:6px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.resident-card-btn{float:left;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:84px;height:84px;margin-bottom:12px;margin-right:24px;font-family:inherit;font-size:1.7rem;line-height:1;transition:transform .1s,box-shadow .1s;display:flex;box-shadow:0 4px 14px #00000024}.resident-card-btn:active{transform:scale(.94);box-shadow:0 2px 6px #00000024}.resident-card-btn:disabled{opacity:.35;cursor:default;box-shadow:none}.resident-card-btn-play{color:#fff;background:#2d5a3d}.resident-card-btn-play:not(:disabled):hover{background:#1f3d2b}.resident-card-btn-stop{color:#fff;background:#c8956c}.resident-card-btn-stop:hover{background:#b07a54}.resident-waiting{gap:32px}.resident-heart{font-size:6rem;animation:2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(1.08)}}.resident-waiting-text{color:#2d5a3d;text-align:center;font-size:2rem;font-style:italic}.resident-spinner{border:5px solid #d4c9b4;border-top-color:#2d5a3d;border-radius:50%;width:64px;height:64px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.resident-card-image-wrap{float:right;flex-shrink:0;width:80px;margin-bottom:8px;margin-left:16px;position:relative}.resident-card-image{object-fit:cover;border-radius:10px;width:80px;height:80px;display:block}.resident-card-photo-badge{pointer-events:none;background:#0000008c;border-radius:4px;padding:1px 5px;font-size:11px;line-height:1.5;position:absolute;bottom:4px;left:4px}.resident-modal{z-index:200;background:#f5f0e8;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.resident-modal--photo-only{background:#000}.resident-modal-blur-bg{object-fit:cover;filter:blur(32px)brightness(.55)saturate(1.4);transform-origin:50%;z-index:0;opacity:0;width:100%;height:100%;transition:opacity .8s;position:absolute;inset:0;transform:scale(1.15)}.resident-modal-blur-bg--active{opacity:1}.resident-modal-photo-stack{z-index:1;position:absolute;inset:0;overflow:hidden}[data-theme=dark] .resident-modal{background:#1a2a1f}.resident-modal-close{z-index:10;color:#2d5a3d;cursor:pointer;background:#0000001f;border:none;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.2rem;transition:background .15s;display:flex;position:absolute;top:18px;right:20px}.resident-modal-close:hover{background:#0003}[data-theme=dark] .resident-modal-close{color:#7dc99a;background:#ffffff1a}.resident-modal--photo-only .resident-modal-close{z-index:10;color:#fff;background:#00000073}.resident-modal--photo-only .resident-modal-close:hover{background:#000000a6}.resident-kb-slide{opacity:0;z-index:0;transition:opacity .8s;position:absolute;inset:0;overflow:hidden}.resident-kb-slide--active{opacity:1;z-index:1}.resident-kb-img{object-fit:cover;transform-origin:50%;will-change:transform;width:100%;height:100%;position:absolute;inset:0}.resident-kb-img--contain{object-fit:contain;filter:drop-shadow(0 8px 32px #0000008c)}.resident-kb-slide--active.resident-kb-slide--v0 .resident-kb-img{animation:kb-zoom-in var(--kb-dur,5s) ease-in-out both}.resident-kb-slide--active.resident-kb-slide--v1 .resident-kb-img{animation:kb-zoom-out-pan var(--kb-dur,5s) ease-in-out both}.resident-kb-slide--active.resident-kb-slide--v2 .resident-kb-img{animation:kb-pan-left var(--kb-dur,5s) ease-in-out both}.resident-kb-slide--active.resident-kb-slide--v3 .resident-kb-img{animation:kb-zoom-in-up var(--kb-dur,5s) ease-in-out both}@keyframes kb-zoom-in{0%{transform:scale(1)translate(0%)}to{transform:scale(1.28)translate(0%)}}@keyframes kb-zoom-out-pan{0%{transform:scale(1.3)translate(-5%,2%)}to{transform:scale(1)translate(5%,-2%)}}@keyframes kb-pan-left{0%{transform:scale(1.18)translate(6%,1%)}to{transform:scale(1.28)translate(-6%,-1%)}}@keyframes kb-zoom-in-up{0%{transform:scale(1)translateY(5%)}to{transform:scale(1.28)translateY(-5%)}}.resident-modal-body{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:0;padding:24px 32px 48px;display:flex;overflow-y:auto}.resident-modal-playing{justify-content:center;align-items:center;gap:10px;margin-bottom:20px;display:flex}.resident-modal-dot{background:#2d5a3d;border-radius:50%;width:12px;height:12px;animation:1.2s ease-in-out infinite modal-bounce}.resident-modal-dot:nth-child(2){animation-delay:.2s}.resident-modal-dot:nth-child(3){animation-delay:.4s}@keyframes modal-bounce{0%,80%,to{opacity:.5;transform:scale(.7)}40%{opacity:1;transform:scale(1.2)}}[data-theme=dark] .resident-modal-dot{background:#7dc99a}.resident-modal-french{color:#2d5a3d;margin:0 0 16px;font-size:clamp(1.5rem,4vw,2.4rem);font-style:italic;font-weight:500;line-height:1.5}[data-theme=dark] .resident-modal-french{color:#7dc99a}.resident-modal-english{color:#6b7280;margin:0;font-size:clamp(1rem,2.2vw,1.3rem);font-style:normal;font-weight:400;line-height:1.45}[data-theme=dark] .resident-modal-english{color:#9ca3af}.resident-card--memory{border-left:5px solid #3b82f6}.resident-card--notice{background:#fffdf5;border-left:5px solid #f59e0b}.resident-card-meta{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:6px;display:flex}.resident-card-type-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:6px;align-items:center;gap:3px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.resident-card-type-moment{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0}.resident-card-type-memory{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe}.resident-card-type-notice{color:#92400e;background:#fef3c7;border:1px solid #fcd34d}.resident-card-summary{color:#6b7280;font-size:clamp(.8rem,1.6vw,1rem);font-weight:500}.resident-modal-media-wrap{flex:0 58vh;min-height:0;position:relative;overflow:hidden}.resident-modal-dots-bar{z-index:10;pointer-events:none;justify-content:center;align-items:center;gap:8px;display:flex;position:absolute;bottom:14px;left:0;right:0}.resident-modal-dots-bar--overlay{background:linear-gradient(#0000,#00000059);padding:24px 0 12px;bottom:0}.resident-modal--photo-only .resident-modal-dots-bar{z-index:12}.resident-modal-nav-dot{pointer-events:none;background:#ffffff73;border-radius:50%;width:9px;height:9px;transition:background .3s,transform .3s}.resident-modal-nav-dot.active{background:#fff;transform:scale(1.3)}.resident-modal--video-phase{background:#000;flex-direction:column;align-items:stretch;display:flex}.resident-modal-video-full{object-fit:contain;background:#000;flex:1;width:100%;min-height:0;display:block}.resident-modal-video-hint{text-align:center;color:#fffc;pointer-events:none;padding:0 16px;font-size:clamp(.75rem,1.6vw,.95rem);font-style:italic;position:absolute;bottom:12px;left:0;right:0}.resident-modal-summary{color:#6b7280;margin:0 0 10px;font-size:clamp(.9rem,2vw,1.1rem);font-weight:600}[data-theme=dark] .resident-modal-summary{color:#9ca3af}@media (width>=768px){.resident-list-screen{padding:64px 48px 80px}.resident-message-card{padding:32px}.resident-card-btn{width:96px;height:96px;margin-right:32px;font-size:2rem}}:root{--color-bg:#faf9f7;--color-bg-primary:#faf9f7;--color-bg-secondary:#f3f1ee;--color-surface:#fff;--color-primary:#2d5a3d;--color-primary-dark:#1f3d2b;--color-primary-light:#4a7c5f;--color-accent:#c8956c;--color-text:#1a1a1a;--color-text-primary:#1a1a1a;--color-text-muted:#6b7280;--color-border:#e5e7eb;--color-danger:#dc2626;--color-warning:#d97706;--color-success:#059669;--radius:8px;--shadow:0 1px 3px #00000014, 0 1px 2px #0000000a;--shadow-md:0 4px 6px #00000012, 0 2px 4px #0000000d;--font-sans:"Segoe UI", system-ui, -apple-system, sans-serif}[data-theme=dark]{--color-bg:#111827;--color-bg-primary:#111827;--color-bg-secondary:#1f2937;--color-surface:#1f2937;--color-primary:#4a7c5f;--color-primary-dark:#2d5a3d;--color-primary-light:#6a9c7f;--color-accent:#d4a574;--color-text:#f1f5f9;--color-text-primary:#f1f5f9;--color-text-muted:#94a3b8;--color-border:#374151;--color-danger:#f87171;--color-warning:#fbbf24;--color-success:#34d399;--shadow:0 1px 3px #00000080, 0 1px 2px #0006;--shadow-md:0 4px 6px #00000080, 0 2px 4px #0006}[data-theme=dark] input,[data-theme=dark] textarea,[data-theme=dark] select{color:#f1f5f9;background:#1f2937;border-color:#374151}[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder{color:#6b7280}[data-theme=dark] option{color:#f1f5f9;background:#1f2937}[data-theme=dark] .admin-tabs,[data-theme=dark] .staff-tabs,[data-theme=dark] .message-form{background:#1f2937}[data-theme=dark] .message-form textarea,[data-theme=dark] .message-form select{background:#151e2b}[data-theme=dark] .error-message{color:#f87171;background:#2a1a1a;border-color:#7f1d1d}[data-theme=dark] .translation-review{background:#1f2937}[data-theme=dark] .english-text{background:#1a2332}[data-theme=dark] .french-text{background:#231e14}[data-theme=dark] .translation-edit{background:#151e2b}[data-theme=dark] .btn-secondary{color:#6a9c7f;background:#1a2332}[data-theme=dark] .btn-tertiary{color:#94a3b8;border-color:#374151}[data-theme=dark] .rs-select{background:#1f2937}[data-theme=dark] .pa-card{background:#1f2937;border-color:#374151}[data-theme=dark] .pa-author-badge{color:#6a9c7f;background:#1a2a22;border-color:#2d5a3d}[data-theme=dark] .pa-english-text{background:#151e2b;border-color:#374151}[data-theme=dark] .pa-french-edit{background:#151e2b}[data-theme=dark] .pa-btn-reject{color:#f87171;background:#2a1a1a;border-color:#7f1d1d}[data-theme=dark] .pa-btn-reject:not(:disabled):hover{background:#3a1a1a}[data-theme=dark] .pa-btn-cancel{color:#f1f5f9;background:#2d3748}[data-theme=dark] .pa-btn-cancel:not(:disabled):hover{background:#374151}[data-theme=dark] .pa-reject-input{background:#2a1a1a;border-color:#7f1d1d}[data-theme=dark] .pa-error{color:#f87171;background:#2a1a1a;border-color:#7f1d1d}[data-theme=dark] .sm-resident-banner{color:#6a9c7f;background:#1a2a22;border-color:#2d5a3d}[data-theme=dark] .sm-form{background:#1f2937;border-color:#374151}[data-theme=dark] .sm-field input,[data-theme=dark] .sm-field select,[data-theme=dark] .sm-time-picker select{background:#151e2b}[data-theme=dark] .sm-list{background:#374151;border-color:#374151}[data-theme=dark] .sm-row{background:#1f2937}[data-theme=dark] .sm-row.is-editing{background:#1a2028}[data-theme=dark] .sm-edit-btn,[data-theme=dark] .sm-delete-btn{background:#1f2937;border-color:#374151}[data-theme=dark] .sm-edit-btn:hover{background:#1a2a22;border-color:#4a7c5f}[data-theme=dark] .sm-delete-btn:hover{background:#2a1a1a;border-color:#7f1d1d}[data-theme=dark] .sm-cancel-btn{color:#f1f5f9;background:#2d3748}[data-theme=dark] .sm-cancel-btn:not(:disabled):hover{background:#374151}[data-theme=dark] .sm-push-badge{color:#fbbf24;background:#2a1f14;border-color:#78350f}[data-theme=dark] .sm-error{color:#f87171;background:#2a1a1a;border-color:#7f1d1d}[data-theme=dark] .dm-list{background:#374151;border-color:#374151}[data-theme=dark] .dm-row{background:#1f2937}[data-theme=dark] .dm-row:hover{background:#253044}[data-theme=dark] .dm-btn-restore{color:#6a9c7f;background:#1a2a22;border-color:#2d5a3d}[data-theme=dark] .dm-btn-restore:not(:disabled):hover{background:#1f3328}[data-theme=dark] .dm-btn-delete{color:#f87171;background:#2a1a1a;border-color:#7f1d1d}[data-theme=dark] .dm-btn-delete:not(:disabled):hover{background:#3a1a1a}[data-theme=dark] .dm-error{color:#f87171;background:#2a1a1a;border-color:#7f1d1d}[data-theme=dark] .queue-item{background:#1f2937}[data-theme=dark] .queue-staff-note{background:#2a2010;border-color:#78500f}[data-theme=dark] .cat-btn{background:#1f2937;border-color:#374151}[data-theme=dark] .cat-btn:hover{color:#6a9c7f;border-color:#4a7c5f}[data-theme=dark] .library-item{background:#1f2937}[data-theme=dark] .library-row:hover{background:#253044}[data-theme=dark] .um-form,[data-theme=dark] .um-user-row{background:#1f2937}[data-theme=dark] .um-resident-row{background:#1f2937;border-color:#374151}[data-theme=dark] .um-resident-row.is-active{background:#1a2a22;border-color:#4a7c5f}[data-theme=dark] .um-role-btn{background:#1f2937;border-color:#374151}[data-theme=dark] .um-edit-btn{background:#1f2937}[data-theme=dark] .um-edit-btn:hover{background:#1a2a22}[data-theme=dark] .um-remove-btn{background:#1f2937}[data-theme=dark] .um-cancel-btn{color:#94a3b8;background:#2d3748;border-color:#374151}[data-theme=dark] .um-hint{background:#2a2010;border-color:#78500f}[data-theme=dark] .um-hint-warning{color:#fbbf24;background:#2a2010;border-color:#78500f}[data-theme=dark] .um-resident-info{background:#1a2a22;border-left-color:#4a7c5f}[data-theme=dark] .um-error{color:#f87171;background:#2a1a1a;border-color:#7f1d1d}[data-theme=dark] .um-success{color:#34d399;background:#1a2a22;border-color:#2d5a3d}[data-theme=dark] .um-assign-panel{background:#151e2b;border-color:#374151}[data-theme=dark] .um-staff-chip{color:#6a9c7f;background:#1a2a22}[data-theme=dark] .um-assign-staff-btn{background:#1f2937}[data-theme=dark] .um-assign-staff-btn:hover:not(:disabled){background:#1a2a22}[data-theme=dark] .um-edit-field input,[data-theme=dark] .um-edit-field select{background:#151e2b}[data-theme=dark] .audio-preview,[data-theme=dark] .success-message,[data-theme=dark] .staff-message-form,[data-theme=dark] .staff-form-done,[data-theme=dark] .cp-modal,[data-theme=dark] .aml-row,[data-theme=dark] .aml-cat,[data-theme=dark] .aml-icon-btn,[data-theme=dark] .um-stab,[data-theme=dark] .cp-btn-secondary,[data-theme=dark] .btn-regenerate,[data-theme=dark] .staff-regen-btn,[data-theme=dark] .aml-row{background:#1f2937}[data-theme=dark] .aml-row.is-playing{background:#1a2a22}[data-theme=dark] .aml-row.is-editing{background:#1a2028}[data-theme=dark] .audio-player,[data-theme=dark] .staff-audio-player{background:#1a2332}[data-theme=dark] .audio-status.loading{background:#1f2937}[data-theme=dark] .speed-slider{background:#1a2a22;border-color:#2d5a3d}[data-theme=dark] .speed-slider-value{background:#1f2937;border-color:#374151}[data-theme=dark] .speed-range{background:#374151}[data-theme=dark] .text-item{background:#1a2028}[data-theme=dark] .text-item:last-child{background:#1f1a14}[data-theme=dark] .staff-review-block{background:#1a2a22}[data-theme=dark] .staff-review-block.french{background:#1f1a14}[data-theme=dark] .staff-audio-texts .staff-review-block{background:#1a2028}[data-theme=dark] .flow-resident-banner,[data-theme=dark] .staff-resident-banner{color:#6a9c7f;background:#1a2a22;border-color:#2d5a3d}[data-theme=dark] .message-meta{background:#1f2937;border-color:#374151}[data-theme=dark] .aml-list{background:#374151;border-color:#374151}[data-theme=dark] .aml-cat-badge{background:#1a2a22;border-color:#2d5a3d}[data-theme=dark] .aml-icon-btn:hover{background:#253044}[data-theme=dark] .aml-icon-btn.resident-btn:hover{background:#1a2a22}[data-theme=dark] .aml-icon-btn.delete-btn:hover{background:#2a1a1a;border-color:#7f1d1d}[data-theme=dark] .aml-edit-textarea{color:#f1f5f9;background:#1f2937;border-color:#374151}[data-theme=dark] .aml-btn-cancel{color:#f1f5f9;background:#2d3748}[data-theme=dark] .aml-btn-cancel:not(:disabled):hover{background:#374151}[data-theme=dark] .admin-header{background:linear-gradient(135deg,#1f3d2b 0%,#1a3a5c 100%)}[data-theme=dark] .aml-error,[data-theme=dark] .flow-error{color:#f87171;background:#2a1a1a;border-color:#7f1d1d}[data-theme=dark] .staff-form-error{color:#f87171;background:#2a1a1a}[data-theme=dark] .cp-error,[data-theme=dark] .regen-error,[data-theme=dark] .staff-regen-error{background:#2a1a1a;border-color:#7f1d1d}[data-theme=dark] .success-icon{color:#34d399;background:#1a2a22}[data-theme=dark] .success-details,[data-theme=dark] .um-banner{background:#1a2028}[data-theme=dark] .um-resident-picker{color:#f1f5f9;background:#1f2937}[data-theme=dark] .cp-overlay{background:#000000a6}[data-theme=dark] .cp-header{border-color:#374151}[data-theme=dark] .cp-input{color:#f1f5f9;background:#1f2937;border-color:#374151}[data-theme=dark] .cp-success p{color:#34d399}[data-theme=dark] .resident-screen{background:#111827}[data-theme=dark] .resident-greeting{color:#6a9c7f}[data-theme=dark] .resident-unlock-overlay{background:#111827f7}[data-theme=dark] .resident-unlock-text{color:#6a9c7f}[data-theme=dark] .resident-unlock-sub{color:#94a3b8}[data-theme=dark] .resident-message-card{background:#1f2937;box-shadow:0 4px 16px #0006}[data-theme=dark] .resident-message-card.is-playing{background:#1a2a22;border-color:#4a7c5f}[data-theme=dark] .resident-card-text{color:#6a9c7f}[data-theme=dark] .resident-card-english{color:#94a3b8}[data-theme=dark] .resident-waiting-text{color:#6a9c7f}[data-theme=dark] .resident-spinner{border-color:#4a7c5f #374151 #374151}[data-theme=dark] .ctp-card{background:#1f2937;border-color:#374151}[data-theme=dark] .ctp-card:hover{border-color:#4a7c5f;box-shadow:0 4px 16px #0006}[data-theme=dark] .creator-block{background:#1a2028}[data-theme=dark] .creator-block--french{background:#1a2a1e}[data-theme=dark] .creator-block p{color:#f1f5f9}[data-theme=dark] .creator-btn-secondary{color:#f1f5f9;background:#1f2937;border-color:#374151}[data-theme=dark] .creator-btn-secondary:hover:not(:disabled){background:#253044}[data-theme=dark] .creator-media-pick{color:#94a3b8;background:#1f2937;border-color:#374151}[data-theme=dark] .creator-media-pick:hover{color:#6a9c7f;border-color:#4a7c5f}[data-theme=dark] .creator-media-img,[data-theme=dark] .creator-media-video{border-color:#374151}[data-theme=dark] .creator-done{color:#f1f5f9}[data-theme=dark] .creator-for{color:#94a3b8}[data-theme=dark] .creator-input{color:#f1f5f9;background:#1f2937;border-color:#374151}[data-theme=dark] .pa-type-badge{color:#94a3b8;background:#1f2937;border-color:#374151}[data-theme=dark] .pa-media-thumb{border-color:#374151}[data-theme=dark] .pa-summary{color:#94a3b8}[data-theme=dark] input[type=datetime-local],[data-theme=dark] input[type=date],[data-theme=dark] input[type=time]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=dark] .kl-title{color:#f1f5f9}[data-theme=dark] .kl-subtitle{color:#94a3b8}[data-theme=dark] .kl-card{background:#1f2937;border-color:#374151}[data-theme=dark] .kl-section-title{color:#f1f5f9}[data-theme=dark] .kl-label{color:#6b7280}[data-theme=dark] .kl-input{color:#f1f5f9;background:#151e2b;border-color:#374151}[data-theme=dark] .kl-input:focus{border-color:#4a7c5f}[data-theme=dark] .kl-textarea{color:#f1f5f9;background:#151e2b;border-color:#374151}[data-theme=dark] .kl-textarea:focus{border-color:#4a7c5f}[data-theme=dark] .kl-btn{color:#f1f5f9;background:#1f2937;border-color:#374151}[data-theme=dark] .kl-btn:hover:not(:disabled){background:#253044}[data-theme=dark] .kl-btn-primary{background:var(--color-primary,#2d5a3d);border-color:var(--color-primary,#2d5a3d);color:#fff}[data-theme=dark] .kl-btn-primary:hover:not(:disabled){background:#244d34}[data-theme=dark] .kl-btn-secondary{color:#6a9c7f;background:#1a2a22;border-color:#2d5a3d}[data-theme=dark] .kl-btn-secondary:hover:not(:disabled){background:#1f3328}[data-theme=dark] .kl-btn-ai{color:#fbbf24;background:#2a2010;border-color:#78500f}[data-theme=dark] .kl-btn-ai:hover:not(:disabled){background:#3a2e10}[data-theme=dark] .kl-icon-btn:hover:not(:disabled){background:#374151}[data-theme=dark] .kl-icon-btn--danger:hover:not(:disabled){background:#2a1a1a}[data-theme=dark] .kl-add-entry-btn{color:#6b7280;border-color:#374151}[data-theme=dark] .kl-add-entry-btn:hover:not(:disabled){color:#6a9c7f;border-color:#4a7c5f}[data-theme=dark] .kl-entry-remove{color:#6b7280}[data-theme=dark] .kl-entry-remove:hover:not(:disabled){color:#f87171}[data-theme=dark] .kl-family-card{background:#151e2b;border-color:#374151}[data-theme=dark] .kl-family-photo{border-color:#374151}[data-theme=dark] .kl-family-photo--empty{background:#253044}[data-theme=dark] .kl-photo-upload-btn{color:#94a3b8;border-color:#374151}[data-theme=dark] .kl-photo-upload-btn:hover:not(:disabled){background:#253044}[data-theme=dark] .kl-family-name{color:#f1f5f9}[data-theme=dark] .kl-family-rel{color:#6a9c7f}[data-theme=dark] .kl-family-dates{color:#6b7280}[data-theme=dark] .kl-family-notes{color:#94a3b8}[data-theme=dark] .kl-add-member-form{background:#1a2a22;border-color:#2d5a3d}[data-theme=dark] .kl-empty-hint,[data-theme=dark] .kl-empty{color:#6b7280}[data-theme=dark] .kl-error{color:#f87171;background:#2a1a1a;border-color:#7f1d1d}[data-theme=dark] .kl-error-inline{color:#f87171}[data-theme=dark] .kl-success{color:#34d399;background:#1a2a22;border-color:#2d5a3d}[data-theme=dark] .kl-suggestions-card{background:#1f1a0e;border-color:#78500f}[data-theme=dark] .kl-suggestions-hint{color:#94a3b8}[data-theme=dark] .kl-suggestion-chip{background:#1a1508;border-color:#78500f}[data-theme=dark] .kl-suggestion-chip:hover{border-color:#f59e0b;box-shadow:0 2px 8px #0006}[data-theme=dark] .kl-suggestion-title{color:#fbbf24}[data-theme=dark] .kl-suggestion-desc{color:#94a3b8}[data-theme=dark] .kl-move-card{background:#1a2a22;border-color:#2a4a38}[data-theme=dark] .kl-move-num{color:#6a9c7f}[data-theme=dark] .kl-geo-btn{color:#94a3b8;border-color:#374151}[data-theme=dark] .kl-geo-btn:hover:not(:disabled){background:#253044}[data-theme=dark] .kl-geo-tag{color:#6a9c7f}[data-theme=dark] .kl-geo-results{background:#1f2937;border-color:#374151;box-shadow:0 4px 12px #0006}[data-theme=dark] .kl-geo-results li{color:#e2e8f0}[data-theme=dark] .kl-geo-results li:hover{background:#253044}[data-theme=dark] .kl-geo-dismiss{border-top-color:#374151;color:#6b7280!important}[data-theme=dark] .kl-photo-upload-form{background:#1a2a22;border-color:#2a4a38}[data-theme=dark] .kl-url-hint{color:#94a3b8;background:#0f1e2e;border-color:#1e3a5f}[data-theme=dark] .kl-url-hint code{background:#ffffff14}[data-theme=dark] .kl-url-preview{background:#111827;border-color:#374151}[data-theme=dark] .kl-exif-result{color:#6a9c7f;background:#1a2a22;border-color:#2a4a38}[data-theme=dark] .kl-photo-card{background:#151e2b;border-color:#374151}[data-theme=dark] .kl-photo-card--primary{background:#1f1a0e;border-color:#b45309}[data-theme=dark] .kl-photo-primary-badge{background:#b45309}[data-theme=dark] .kl-photo-meta{color:#6b7280}[data-theme=dark] .kl-photo-caption{color:#94a3b8}[data-theme=dark] .kl-btn-sm{color:#e2e8f0;background:#1f2937;border-color:#374151}[data-theme=dark] .kl-btn-sm:hover:not(:disabled){background:#253044}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);line-height:1.6}.loading{height:100vh;color:var(--color-text-muted);justify-content:center;align-items:center;font-size:1.1rem;display:flex}
