:root{--color-primary: #2563eb;--color-primary-hover: #1d4ed8;--color-success: #059669;--color-success-bg: #d1fae5;--color-danger: #dc2626;--color-danger-hover: #b91c1c;--color-danger-bg: #fee2e2;--color-warning: #d97706;--color-text: #1f2937;--color-text-muted: #6b7280;--color-border: #e5e7eb;--color-bg: #f9fafb;--color-bg-card: #ffffff;--color-bg-sidebar: #eef2ff;--color-sidebar-border: #c7d2fe;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem}.logo-primary{display:inline-block;flex-shrink:0;background-color:var(--color-primary);-webkit-mask:url(/assets/images/logo.svg) center / contain no-repeat;mask:url(/assets/images/logo.svg) center / contain no-repeat}.logo-primary--24{width:24px;height:24px}.logo-primary--28{width:28px;height:28px}.logo-primary--32{width:32px;height:32px}.logo-primary--40{width:40px;height:40px}.logo-primary--56{width:56px;height:56px}.logo-primary--64{width:64px;height:64px}.logo-primary--white{background-color:#fff}*{box-sizing:border-box}body{margin:0;font-family:DM Sans,system-ui,-apple-system,sans-serif;font-size:1rem;line-height:1.5;color:var(--color-text);background:var(--color-bg)}a{color:var(--color-primary);text-decoration:none;transition:color .15s ease}a:hover{color:var(--color-primary-hover);text-decoration:underline}a:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}a.active{font-weight:600;text-decoration:none}.error{color:var(--color-danger)}.bi{display:inline-block;vertical-align:-.15em}.bi.icon-left{margin-right:.35rem}.bi.icon-right{margin-left:.35rem}.theme-img{display:block;max-width:100%;height:auto;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--color-border);object-fit:cover}.theme-img--tint{filter:brightness(.98) saturate(1.05) hue-rotate(198deg)}.page-header{margin:0 0 var(--space-3) 0;font-size:1.375rem;font-weight:700;letter-spacing:-.02em;color:var(--color-text)}.page-intro{color:var(--color-text-muted);margin-bottom:var(--space-4);max-width:60ch;font-size:.9375rem}.card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-4);margin-bottom:var(--space-4)}.btn-primary,.btn-primary *{color:#fff!important}.btn-primary{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-2) var(--space-4);font-family:inherit;font-size:.9375rem;font-weight:500;background:var(--color-primary);border:none;border-radius:var(--radius-md);cursor:pointer;box-shadow:0 1px 3px #00000014;transition:background .2s ease,color .2s ease,transform .2s ease,outline .15s ease,box-shadow .2s ease}.btn-primary:hover:not(:disabled),.btn-primary:hover:not(:disabled) *,.btn-primary:focus:not(:disabled),.btn-primary:focus:not(:disabled) *,.btn-primary:active:not(:disabled),.btn-primary:active:not(:disabled) *{color:#000!important}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);transform:scale(1.02);box-shadow:0 4px 12px #0000002e;outline:2px solid rgba(0,0,0,.25);outline-offset:2px}.btn-primary:focus:not(:disabled){outline:2px solid rgba(0,0,0,.3);outline-offset:2px}.btn-primary:active:not(:disabled){transform:scale(.98);box-shadow:0 1px 2px #0000001a;outline:2px solid rgba(0,0,0,.35);outline-offset:2px}.btn-primary:disabled,.btn-primary:disabled *{opacity:.7;cursor:not-allowed;color:#fff!important}.btn-primary:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.btn-upload:hover,.btn-upload:hover *,.btn-upload:focus,.btn-upload:focus *,.btn-search:hover,.btn-search:hover *,.btn-search:focus,.btn-search:focus *,.btn-refresh:hover,.btn-refresh:hover *,.btn-refresh:focus,.btn-refresh:focus *,.btn-load-more:hover,.btn-load-more:hover *,.btn-load-more:focus,.btn-load-more:focus *,.btn-secure:hover,.btn-secure:hover *,.btn-secure:focus,.btn-secure:focus *,.btn-help-ok:hover,.btn-help-ok:hover *,.btn-help-ok:focus,.btn-help-ok:focus *,.home-link-primary:hover,.home-link-primary:hover *,.theme-modal-btn--primary:hover,.theme-modal-btn--primary:hover *,.theme-modal-btn--primary:focus,.theme-modal-btn--primary:focus *,.mobile-block-btn:hover,.mobile-block-btn:hover *{color:#000!important}.btn-upload,.btn-search,.btn-refresh,.btn-load-more,.btn-secure,.btn-help-ok,.home-link-primary,.theme-modal-btn--primary,.mobile-block-btn{transition:background .2s ease,color .2s ease,transform .2s ease,outline .15s ease,box-shadow .2s ease}.btn-upload:hover,.btn-upload:focus,.btn-search:hover,.btn-search:focus,.btn-refresh:hover,.btn-refresh:focus,.btn-load-more:hover,.btn-load-more:focus,.btn-secure:hover,.btn-secure:focus,.btn-help-ok:hover,.btn-help-ok:focus,.home-link-primary:hover,.theme-modal-btn--primary:hover,.theme-modal-btn--primary:focus,.mobile-block-btn:hover{transform:scale(1.02);box-shadow:0 4px 12px #0000002e;outline:2px solid rgba(0,0,0,.25);outline-offset:2px}.btn-upload:active,.btn-search:active,.btn-refresh:active,.btn-load-more:active:not(:disabled),.btn-secure:active:not(:disabled),.btn-help-ok:active,.home-link-primary:active,.theme-modal-btn--primary:active,.mobile-block-btn:active{transform:scale(.98);box-shadow:0 1px 2px #0000001a}.input-text,select,input[type=date],input[type=text]{font-family:inherit;font-size:.9375rem;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-card);color:var(--color-text);transition:border-color .15s ease,box-shadow .15s ease}.input-text:focus,select:focus,input[type=date]:focus,input[type=text]:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #2563eb26}html{overflow-x:hidden}body{overflow-x:hidden;min-width:0}@media (max-width: 768px){.page-header{font-size:1.2rem}.card{padding:var(--space-3)}}@media (max-width: 480px){body{font-size:.9375rem}.page-header{font-size:1.1rem}.card{padding:var(--space-2)}}
