:root{--jl-black: #121212;--jl-black-soft: #1c1c1c;--jl-charcoal: #262626;--jl-gold-50: #f7efe0;--jl-gold-100: #ecd9ad;--jl-gold-300: #dcbb7c;--jl-gold: #c8a15c;--jl-gold-dark: #a3803f;--jl-gold-gradient: linear-gradient(135deg, #e3c887 0%, #c8a15c 55%, #a3803f 100%);--jl-logo-gradient: linear-gradient(92deg, #8f8f92 0%, #c9c9cc 28%, #e4c98a 55%, #c8a15c 78%, #93732f 100%);--jl-white: #ffffff;--jl-bg: #f6f6f7;--jl-surface: #ffffff;--jl-border: #e7e6e4;--jl-border-strong: #d8d6d2;--jl-text: #33343a;--jl-text-heading: #4c5866;--jl-text-secondary: #6b6d74;--jl-text-muted: #9a9ba1;--jl-text-on-dark: #f1f0ee;--jl-success: #2f8858;--jl-success-bg: #e8f5ee;--jl-danger: #c0392b;--jl-danger-bg: #fbeae8;--jl-warning: #b3811f;--jl-warning-bg: #fbf1de;--jl-info: #35708f;--jl-info-bg: #e6f1f6;--jl-font-display: "Poppins", "Segoe UI", sans-serif;--jl-font-body: "Inter", "Segoe UI", sans-serif;--jl-radius-sm: 6px;--jl-radius-md: 10px;--jl-radius-lg: 16px;--jl-shadow-sm: 0 1px 2px rgba(18, 18, 18, .06);--jl-shadow-md: 0 6px 20px rgba(18, 18, 18, .08);--jl-shadow-lg: 0 16px 40px rgba(18, 18, 18, .14);--jl-transition: .18s cubic-bezier(.4, 0, .2, 1);--jl-header-height: 68px;--jl-sidebar-width: 260px;--jl-sidebar-width-collapsed: 76px}*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--jl-bg);color:var(--jl-text);font-family:var(--jl-font-body);font-size:14.5px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--jl-font-display);color:var(--jl-text-heading);font-weight:600;margin:0 0 .4em}p{margin:0 0 .75em}a{color:var(--jl-gold-dark);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit}::selection{background:var(--jl-gold-100)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--jl-border-strong);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--jl-text-muted)}.jl-page{padding:1.5rem;max-width:1440px;margin:0 auto}.jl-page--narrow{max-width:860px}.jl-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem}.jl-page-header h1{font-size:1.5rem;margin:0}.jl-page-header p{color:var(--jl-text-secondary);margin:.25rem 0 0;font-size:.9rem}.jl-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;background:var(--jl-surface);border:1px solid var(--jl-border);border-radius:var(--jl-radius-md);padding:.9rem 1rem;margin-bottom:1.25rem}.jl-toolbar__spacer{flex:1 1 auto}.jl-card{background:var(--jl-surface);border:1px solid var(--jl-border);border-radius:var(--jl-radius-md);box-shadow:var(--jl-shadow-sm)}.jl-card__header{padding:1.1rem 1.25rem;border-bottom:1px solid var(--jl-border);display:flex;align-items:center;justify-content:space-between;gap:.75rem}.jl-card__header h2,.jl-card__header h3{font-size:1.05rem;margin:0}.jl-card__body{padding:1.25rem}.jl-card__footer{padding:1.1rem 1.25rem;border-top:1px solid var(--jl-border);display:flex;align-items:center;gap:.6rem}.jl-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:1px solid transparent;border-radius:var(--jl-radius-sm);padding:.6rem 1.15rem;font-size:.875rem;font-weight:600;letter-spacing:.02em;cursor:pointer;transition:transform var(--jl-transition),box-shadow var(--jl-transition),background var(--jl-transition),border-color var(--jl-transition),color var(--jl-transition);white-space:nowrap;line-height:1.2}.jl-btn:disabled{opacity:.55;cursor:not-allowed;transform:none!important}.jl-btn:active:not(:disabled){transform:translateY(1px)}.jl-btn--primary{background:var(--jl-gold-gradient);color:#2a2109;box-shadow:var(--jl-shadow-sm)}.jl-btn--primary:hover:not(:disabled){box-shadow:var(--jl-shadow-md)}.jl-btn--dark{background:var(--jl-black);color:var(--jl-text-on-dark)}.jl-btn--dark:hover:not(:disabled){background:var(--jl-black-soft)}.jl-btn--outline{background:transparent;border-color:var(--jl-border-strong);color:var(--jl-text)}.jl-btn--outline:hover:not(:disabled){border-color:var(--jl-gold);color:var(--jl-gold-dark)}.jl-btn--ghost{background:transparent;color:var(--jl-text-secondary)}.jl-btn--ghost:hover:not(:disabled){background:var(--jl-bg);color:var(--jl-text)}.jl-btn--danger{background:transparent;border-color:var(--jl-danger);color:var(--jl-danger)}.jl-btn--danger:hover:not(:disabled){background:var(--jl-danger-bg)}.jl-btn--sm{padding:.4rem .8rem;font-size:.8rem}.jl-btn--icon{padding:.5rem;border-radius:50%}.jl-btn--block{width:100%}.jl-field{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1.1rem}.jl-field__label{font-size:.8rem;font-weight:600;color:var(--jl-text-heading);letter-spacing:.01em}.jl-field__label .jl-required{color:var(--jl-danger);margin-left:2px}.jl-input,.jl-select,.jl-textarea{width:100%;border:1px solid var(--jl-border-strong);border-radius:var(--jl-radius-sm);background:var(--jl-white);color:var(--jl-text);padding:.65rem .85rem;font-size:.9rem;font-family:inherit;transition:border-color var(--jl-transition),box-shadow var(--jl-transition)}.jl-textarea{resize:vertical;min-height:90px}.jl-input:focus,.jl-select:focus,.jl-textarea:focus{outline:none;border-color:var(--jl-gold);box-shadow:0 0 0 3px #c8a15c2e}.jl-input.is-invalid,.jl-select.is-invalid,.jl-textarea.is-invalid{border-color:var(--jl-danger)}.jl-form-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.5rem;padding-top:1rem;border-top:1px solid var(--jl-border)}.jl-field__error{font-size:.78rem;color:var(--jl-danger)}.jl-checkbox{display:inline-flex;align-items:center;gap:.55rem;font-size:.87rem;color:var(--jl-text);cursor:pointer;margin-bottom:1.1rem}.jl-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:var(--jl-gold-dark);cursor:pointer}.jl-input-icon{position:relative}.jl-input-icon .jl-input{padding-left:2.4rem}.jl-input-icon svg{position:absolute;left:.8rem;top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--jl-text-muted)}.jl-input-icon--suffixed .jl-input{padding-right:2.6rem}.jl-input-icon__toggle{position:absolute;right:.6rem;top:50%;transform:translateY(-50%);background:none;border:none;padding:.25rem;cursor:pointer;color:var(--jl-text-muted);display:flex}.jl-input-icon__toggle svg{position:static;transform:none;width:17px;height:17px}.jl-input-icon__toggle:hover{color:var(--jl-text)}.jl-table-wrap{overflow-x:auto;border-radius:var(--jl-radius-md)}.jl-table{width:100%;border-collapse:collapse;font-size:.875rem;min-width:640px}.jl-table thead th{text-align:left;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--jl-text-muted);font-weight:700;padding:.85rem 1rem;border-bottom:1px solid var(--jl-border);white-space:nowrap}.jl-table tbody td{padding:.85rem 1rem;border-bottom:1px solid var(--jl-border);color:var(--jl-text);vertical-align:middle}.jl-table tbody tr:last-child td{border-bottom:none}.jl-table tbody tr:hover{background:#c8a15c0f}.jl-table__actions{display:flex;gap:.4rem;justify-content:flex-end}.jl-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.28rem .7rem;border-radius:999px;font-size:.74rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap}.jl-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.jl-badge--success{background:var(--jl-success-bg);color:var(--jl-success)}.jl-badge--danger{background:var(--jl-danger-bg);color:var(--jl-danger)}.jl-badge--warning{background:var(--jl-warning-bg);color:var(--jl-warning)}.jl-badge--info{background:var(--jl-info-bg);color:var(--jl-info)}.jl-badge--neutral{background:#eef0f2;color:var(--jl-text-secondary)}.jl-empty{text-align:center;padding:3rem 1.5rem;color:var(--jl-text-secondary)}.jl-empty svg{width:46px;height:46px;color:var(--jl-text-muted);margin-bottom:.75rem}.jl-empty h3{font-size:1rem;margin-bottom:.35rem;color:var(--jl-text)}.jl-empty p{font-size:.875rem;margin:0}@keyframes jl-shimmer{0%{background-position:-320px 0}to{background-position:320px 0}}.jl-skeleton{background:linear-gradient(90deg,#ececed 25%,#f6f6f7 37%,#ececed 63%);background-size:640px 100%;animation:jl-shimmer 1.4s ease-in-out infinite;border-radius:var(--jl-radius-sm);display:block}.jl-flex{display:flex;align-items:center}.jl-gap-sm{gap:.5rem}.jl-gap-md{gap:1rem}.jl-text-muted{color:var(--jl-text-secondary)}.jl-mt-0{margin-top:0}.jl-visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}@media (max-width: 640px){.jl-page{padding:1rem}}
