:root{--bg-app: #F7F1E6;--bg-sidebar: #F7F1E6;--bg-card: #F7F1E6;--bg-card-hover: #F7F1E6;--bg-elevated: #F7F1E6;--bg-input: #F7F1E6;--border-subtle: rgba(169,111,53,0.18);--border-medium: rgba(169,111,53,0.18);--border-glow: rgba(169,111,53,0.35);--cyan-primary: #895522;--cyan-hover: #895522;--cyan-glow: rgba(169,111,53,0.18);--cyan-deep: #895522;--emerald-primary: #47664F;--emerald-hover: #47664F;--emerald-glow: rgba(71,102,79,.18);--amber-primary: #895522;--amber-glow: rgba(245, 158, 11, .18);--rose-primary: #ef4444;--rose-hover: #f87171;--rose-glow: rgba(239, 68, 68, .18);--purple-primary: #895522;--text-primary: #895522;--text-secondary: #786451;--text-muted: #786451;--text-cyan: #895522;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 22px;--shadow-sm: 0 2px 8px rgba(74,42,24,0.16);--shadow-md: 0 8px 24px rgba(74,42,24,0.16);--shadow-lg: 0 16px 40px rgba(74,42,24,0.16);--shadow-cyan: 0 0 24px rgba(74,42,24,0.16);--shadow-emerald: 0 0 24px rgba(74,42,24,0.16);--font-heading: "Outfit", sans-serif;--font-body: "Plus Jakarta Sans", sans-serif}*,*:before,*:after{box-sizing: border-box;margin: 0;padding: 0}html,body{width: 100%;height: 100%;background-color: var(--bg-app);color: var(--text-primary);font-family: var(--font-body);font-size: 14px;line-height: 1.5;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;overflow: hidden}#root{width: 100%;height: 100%;display: flex}h1,h2,h3,h4,h5,h6{font-family: var(--font-heading);font-weight: 700;color: var(--text-primary);letter-spacing: -.02em}::-webkit-scrollbar{width: 6px;height: 6px}::-webkit-scrollbar-track{background: #0003}::-webkit-scrollbar-thumb{background: #ffffff26;border-radius: 4px}::-webkit-scrollbar-thumb:hover{background: var(--cyan-primary)}.app-container{display: flex;width: 100vw;height: 100vh;background-color: var(--bg-app);position: relative;overflow: hidden}.sidebar{width: 250px;min-width: 250px;height: 100%;background: var(--bg-sidebar);border-right: 1px solid var(--border-subtle);display: flex;flex-direction: column;z-index: 20;transition: all .3s ease}.sidebar-header{padding: 24px 20px;border-bottom: 1px solid var(--border-subtle);display: flex;align-items: center;gap: 12px}.brand-badge{width: 40px;height: 40px;background: linear-gradient(135deg,#00e5ff33,#00e5ff0d);border: 1px solid var(--cyan-primary);box-shadow: var(--shadow-cyan);border-radius: var(--radius-md);display: flex;align-items: center;justify-content: center;color: var(--cyan-primary)}.brand-info h2{font-size: 15px;font-weight: 800;letter-spacing: .04em;color: var(--text-primary);text-transform: uppercase}.brand-info span{font-size: 11px;color: var(--cyan-primary);font-weight: 600;letter-spacing: .08em;text-transform: uppercase;display: block}.sidebar-nav{flex: 1;overflow-y: auto;padding: 16px 12px;display: flex;flex-direction: column;gap: 6px}.nav-section-title{font-size: 10px;font-weight: 700;text-transform: uppercase;letter-spacing: .1em;color: var(--text-muted);padding: 12px 10px 4px}.nav-item{display: flex;align-items: center;gap: 12px;padding: 10px 14px;border-radius: var(--radius-md);color: var(--text-secondary);font-size: 13px;font-weight: 500;cursor: pointer;background: transparent;border: 1px solid transparent;transition: all .2s ease;-webkit-user-select: none;user-select: none;text-decoration: none}.nav-item:hover{background: #ffffff08;color: var(--text-primary)}.nav-item.active{background: linear-gradient(90deg,#00e5ff1f,#00e5ff05);color: var(--cyan-primary);border: 1px solid rgba(169,111,53,0.25);box-shadow: inset 0 0 16px #00e5ff0d;font-weight: 600}.nav-item.admin-zone{margin-top: 8px;border: 1px solid rgba(169,111,53,0.2);background: #ef44440d;color: #fca5a5}.nav-item.admin-zone:hover{background: #ef44441f;color: #2B211A;border-color: #ef444466}.nav-item.admin-zone.active{background: #ef444433;color: #2B211A;border-color: var(--rose-primary);box-shadow: 0 0 16px #ef444440}.sidebar-footer{padding: 16px;border-top: 1px solid var(--border-subtle);display: flex;flex-direction: column;gap: 12px;background: #0003}.user-profile-pill{display: flex;align-items: center;justify-content: space-between;padding: 8px 12px;background: var(--bg-card);border-radius: var(--radius-md);border: 1px solid var(--border-subtle)}.user-avatar-text{display: flex;align-items: center;gap: 10px}.avatar-circle{width: 32px;height: 32px;border-radius: 50%;background: linear-gradient(135deg,var(--cyan-deep),#FFFAF2);color: #2B211A;font-weight: 700;display: flex;align-items: center;justify-content: center;font-size: 12px;border: 1px solid rgba(169,111,53,0.4)}.user-meta-name{font-size: 12px;font-weight: 600;color: var(--text-primary)}.user-meta-role{font-size: 10px;color: var(--cyan-primary);font-weight: 500;text-transform: uppercase}.main-layout{flex: 1;display: flex;flex-direction: column;height: 100%;overflow: hidden;background: radial-gradient(circle at 85% 15%,rgba(169,111,53,0.03) 0%,transparent 60%)}.top-navbar{min-height: 64px;height: auto;padding: 12px 24px;display: flex;align-items: center;justify-content: space-between;border-bottom: 1px solid var(--border-subtle);background: #0b0b10eb;-webkit-backdrop-filter: blur(16px);backdrop-filter: blur(16px);z-index: 10;flex-shrink: 0;gap: 14px;flex-wrap: wrap}.navbar-title-group h1{font-size: clamp(15px,1.8vw,18px);font-weight: 700;display: flex;align-items: center;gap: 10px}.navbar-actions{display: flex;align-items: center;gap: 12px;flex-wrap: wrap}.terminal-pill{padding: 6px 12px;border-radius: 20px;font-size: 11px;font-weight: 600;display: flex;align-items: center;gap: 6px;background: #ffffff0a;border: 1px solid var(--border-subtle);white-space: nowrap}.terminal-pill.open{border-color: #10b9814d;background: #10b98114;color: var(--emerald-primary)}.terminal-pill.closed{border-color: #f59e0b4d;background: #f59e0b14;color: var(--amber-primary)}.pulse-dot{width: 7px;height: 7px;border-radius: 50%;background-color: currentColor;box-shadow: 0 0 8px currentColor;animation: pulse 2s infinite}@keyframes pulse{0%,to{opacity: 1;transform: scale(1)}50%{opacity: .5;transform: scale(.85)}}.page-view-container{flex: 1;min-height: 0;overflow-y: auto;overflow-x: hidden;padding: 20px 24px;display: flex;flex-direction: column;gap: 18px}.card{background: var(--bg-card);border: 1px solid var(--border-subtle);border-radius: var(--radius-lg);padding: 18px 20px;box-shadow: var(--shadow-md);position: relative;flex-shrink: 0;min-height: fit-content;-webkit-backdrop-filter: blur(12px);backdrop-filter: blur(12px);transition: border-color .2s ease,transform .2s ease}.card:hover{border-color: var(--border-medium)}.card-header{display: flex;align-items: center;justify-content: space-between;margin-bottom: 16px;flex-wrap: wrap;gap: 10px}.card-title{font-size: 15px;font-weight: 700;color: var(--text-primary);display: flex;align-items: center;gap: 8px}.btn{display: inline-flex;align-items: center;justify-content: center;gap: 8px;padding: 9px 16px;font-family: var(--font-body);font-size: 13px;font-weight: 600;border-radius: var(--radius-md);cursor: pointer;outline: none;transition: all .2s cubic-bezier(.4,0,.2,1);-webkit-user-select: none;user-select: none;white-space: nowrap}.btn:active{transform: translateY(1px)}.btn-primary{background: linear-gradient(135deg,var(--cyan-primary),#FFFAF2);color: #895522;box-shadow: 0 4px 16px #00e5ff4d}.btn-primary:hover{background: linear-gradient(135deg,var(--cyan-hover),var(--cyan-primary));box-shadow: 0 6px 20px #00e5ff73;transform: translateY(-1px)}.btn-success{background: linear-gradient(135deg,var(--emerald-primary),#059669);color: #03140e;box-shadow: 0 4px 16px #10b9814d}.btn-success:hover{background: linear-gradient(135deg,var(--emerald-hover),var(--emerald-primary));box-shadow: 0 6px 20px #10b98173;transform: translateY(-1px)}.btn-secondary{background: #F7F1E6;border: 1px solid rgba(169,111,53,0.18);color: #2B211A}.btn-secondary:hover{background: #FFFAF2;border-color: #00e5ff73;color: #2B211A}.btn-danger{background: #ef44442e;border: 1px solid rgba(169,111,53,0.35);color: #fca5a5}.btn-danger:hover{background: var(--rose-primary);color: #2B211A;border-color: var(--rose-primary);box-shadow: 0 4px 16px #ef444466}.btn-icon{width: 36px;height: 36px;padding: 0;border-radius: var(--radius-sm)}.btn-sm{padding: 6px 12px;font-size: 12px}.btn-lg{padding: 14px 24px;font-size: 15px;border-radius: var(--radius-lg)}.form-group{display: flex;flex-direction: column;gap: 6px;margin-bottom: 14px}.form-label{font-size: 12px;font-weight: 600;color: var(--text-secondary)}.form-input,.form-select,.form-textarea{width: 100%;padding: 9px 14px;background: #F7F1E6;border: 1px solid rgba(169,111,53,0.18);border-radius: var(--radius-md);color: #2B211A;font-family: var(--font-body);font-size: 13px;outline: none;transition: border-color .2s ease,box-shadow .2s ease}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color: var(--cyan-primary);box-shadow: 0 0 0 3px #00e5ff33}.form-input::placeholder{color: #895522}select.form-select option{background-color: #F7F1E6;color: #2B211A}.input-with-icon{position: relative;display: flex;align-items: center}.input-with-icon svg{position: absolute;left: 14px;color: #895522;pointer-events: none}.input-with-icon input{padding-left: 42px}.badge{display: inline-flex;align-items: center;gap: 5px;padding: 3px 9px;border-radius: 12px;font-size: 11px;font-weight: 600;letter-spacing: .02em;white-space: nowrap}.badge-cyan{background: #00e5ff1f;color: var(--cyan-primary);border: 1px solid rgba(169,111,53,0.25)}.badge-emerald{background: #10b9811f;color: var(--emerald-primary);border: 1px solid rgba(169,111,53,0.25)}.badge-amber{background: #f59e0b1f;color: var(--amber-primary);border: 1px solid rgba(169,111,53,0.25)}.badge-rose{background: #ef44441f;color: var(--rose-primary);border: 1px solid rgba(169,111,53,0.25)}.table-wrapper{width: 100%;overflow-x: auto;border-radius: var(--radius-md);border: 1px solid var(--border-subtle);background: var(--bg-card);flex-shrink: 0;box-shadow: var(--shadow-sm)}.data-table{width: 100%;border-collapse: collapse;text-align: left}.data-table th{background: #F7F1E6;padding: 13px 16px;font-size: 11px;font-weight: 700;text-transform: uppercase;letter-spacing: .06em;color: var(--cyan-primary);border-bottom: 1px solid rgba(169,111,53,0.18);white-space: nowrap;position: sticky;top: 0;z-index: 5}.data-table td{padding: 12px 16px;font-size: 13px;color: var(--text-primary);border-bottom: 1px solid var(--border-subtle);transition: background .15s ease}.data-table tr:last-child td{border-bottom: none}.data-table tbody tr:hover td{background: #00e5ff08}.modal-backdrop{position: fixed;top: 0;right: 0;bottom: 0;left: 0;background: #000000bf;-webkit-backdrop-filter: blur(8px);backdrop-filter: blur(8px);display: flex;align-items: center;justify-content: center;z-index: 100;padding: 20px;animation: fadeIn .2s ease-out}.modal-dialog{background: var(--bg-card);border: 1px solid var(--border-glow);border-radius: var(--radius-xl);box-shadow: var(--shadow-lg),var(--shadow-cyan);width: 100%;max-width: 580px;max-height: 90vh;display: flex;flex-direction: column;overflow: hidden;animation: scaleUp .25s cubic-bezier(.16,1,.3,1)}.modal-header{padding: 20px 24px;border-bottom: 1px solid var(--border-subtle);display: flex;align-items: center;justify-content: space-between}.modal-body{padding: 24px;overflow-y: auto}.modal-footer{padding: 16px 24px;border-top: 1px solid var(--border-subtle);display: flex;align-items: center;justify-content: flex-end;gap: 12px;background: #0003}@keyframes fadeIn{0%{opacity: 0}to{opacity: 1}}@keyframes scaleUp{0%{opacity: 0;transform: scale(.94)}to{opacity: 1;transform: scale(1)}}.toast-container{position: fixed;bottom: 24px;right: 28px;display: flex;flex-direction: column;gap: 10px;z-index: 200}.toast{display: flex;align-items: center;gap: 12px;padding: 14px 20px;border-radius: var(--radius-md);box-shadow: var(--shadow-lg);background: var(--bg-elevated);border: 1px solid var(--border-medium);min-width: 300px;max-width: 420px;animation: slideInRight .3s ease-out}.toast.success{border-color: var(--emerald-primary);box-shadow: var(--shadow-emerald)}.toast.error{border-color: var(--rose-primary);box-shadow: 0 0 20px #ef44444d}@keyframes slideInRight{0%{opacity: 0;transform: translate(40px)}to{opacity: 1;transform: translate(0)}}@media(max-width:1024px){.page-view-container{padding: 16px 18px;gap: 14px}.top-navbar{padding: 10px 18px}}@media(max-width:768px){.sidebar{width: 210px;min-width: 210px}.page-view-container{padding: 12px 14px;gap: 12px}.card{padding: 14px 16px}}

/* FAUVOR:ivory surfaces, bronze accents and readable controls. */
:root { color-scheme: light; --bs-body-bg:#F7F1E6; --bs-body-color:#2B211A; --bs-primary:#895522; --bs-primary-rgb:137,85,34; --bs-border-color:#D6C0A3; }
body { background-color:#F7F1E6; color:#2B211A; }
h1,h2,h3 { font-family:Georgia,'Times New Roman',serif; }
button,input,select,textarea { font-family:inherit; }
input,select,textarea,.form-control,.form-select { color:#2B211A; background-color:#FFFAF2; border-color:#D6C0A3; }
input::placeholder,textarea::placeholder { color:#786451; opacity:1; }
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible { outline:2px solid #895522; outline-offset:3px; }
.btn-primary,.btn-cyan,.btn-card-primary { background:#895522; border-color:#895522; color:#FFFAF2; }
.btn-primary:hover,.btn-cyan:hover { background:#4A2A18; border-color:#4A2A18; color:#FFFAF2; }
.btn-primary,.btn-success,.btn-danger,.btn-warning { --bs-btn-color:#FFFAF2; }
.text-white,.text-light { color:#2B211A!important; }
.bg-dark { background-color:#EFE5D6!important; }
.border-secondary { border-color:#D6C0A3!important; }
.text-celeste,.text-info,.text-primary { color:#895522!important; }
.swal2-popup { background:#FFFAF2!important; color:#2B211A!important; }
.swal2-confirm { background:#895522!important; color:#FFFAF2!important; }

:root{--bs-info:#895522;--bs-info-rgb:137,85,34;--bs-secondary-color:#786451;--bs-secondary-bg:#EFE5D6;--bs-tertiary-bg:#EFE5D6;--bs-emphasis-color:#2B211A;--bs-light-rgb:255,250,242;--bs-dark-rgb:239,229,214;--bs-primary-text-emphasis:#4A2A18;--bs-primary-bg-subtle:#EBDCC6;--bs-primary-border-subtle:#D6C0A3;}.text-muted{color:#786451!important}.btn-primary,.badge.bg-primary{color:#FFFAF2!important}.form-control:focus,.form-select:focus{background:#FFFAF2;color:#2B211A;border-color:#895522;box-shadow:0 0 0 .2rem rgba(169,111,53,.18)}.navbar-toggler{border-color:#A96F35;color:#2B211A}.navbar-toggler-icon{filter:none}.brand-badge,.brand-icon{background:#EFE5D6;color:#895522}

.brand-badge{background:#EFE5D6 url(../fauvor/symbol.png) center/contain no-repeat;box-shadow:none}.brand-badge svg{visibility:hidden}