.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url("./media/layers-55W3Q4RM.png");width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url("./media/layers-2x-TBM42ERR.png");background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url("./media/marker-icon-2V3QKKVC.png")}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-in-up{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.status-badge.active,.status-badge.online{background:#22c55e1f;color:#16a34a}.status-badge.active .status-dot,.status-badge.online .status-dot{background:#22c55e}.status-badge.inactive{background:#9ca3af1f;color:#6b7280}.status-badge.inactive .status-dot{background:#9ca3af}.status-badge.error,.status-badge.expired{background:#ef44441f;color:#dc2626}.status-badge.error .status-dot,.status-badge.expired .status-dot{background:#ef4444}.status-badge.warning,.status-badge.suspended{background:#f59e0b1f;color:#d97706}.status-badge.warning .status-dot,.status-badge.suspended .status-dot{background:#f59e0b}.status-badge.info,.status-badge.trial{background:#3b82f61f;color:#2563eb}.status-badge.info .status-dot,.status-badge.trial .status-dot{background:#3b82f6}.status-badge.offline{background:#ef44441f;color:#dc2626}.status-badge.offline .status-dot{background:#ef4444}.status-badge.processing{background:#6366f11f;color:#6366f1}.status-badge.processing .status-dot{background:#6366f1;animation:pulse 1.5s infinite}.count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 .5rem;border-radius:12px;font-size:.75rem;font-weight:500;background-color:var(--bg-tertiary);color:var(--text-secondary)}.count-badge.primary{background-color:rgba(var(--primary-rgb),.12);color:var(--primary)}.count-badge.success{background-color:#22c55e1f;color:#16a34a}.count-badge.warning{background-color:#f59e0b1f;color:#d97706}.count-badge.error{background-color:#ef44441f;color:#dc2626}.license-badge{display:inline-flex;align-items:center;padding:.25rem .625rem;border-radius:12px;font-size:.75rem;font-weight:500}.license-badge.type-free,.license-badge.type-0{background-color:var(--bg-tertiary);color:var(--text-secondary)}.license-badge.type-pro,.license-badge.type-1{background-color:#3b82f61f;color:#3b82f6}.license-badge.type-enterprise,.license-badge.type-2{background-color:#9c27b01f;color:#9c27b0}.stat-badge{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border-radius:16px;font-size:.8125rem;font-weight:500}.stat-badge .stat-dot{width:8px;height:8px;border-radius:9999px}.stat-badge .stat-value{font-weight:600}.stat-badge.active,.stat-badge.online{background:#22c55e1f;color:#16a34a}.stat-badge.active .stat-dot,.stat-badge.online .stat-dot{background:#22c55e}.stat-badge.inactive{background:#9ca3af1f;color:#6b7280}.stat-badge.inactive .stat-dot{background:#9ca3af}.stat-badge.offline{background:#ef44441f;color:#dc2626}.stat-badge.offline .stat-dot{background:#ef4444}.stat-chip{display:flex;align-items:center;gap:.5rem;padding:.5rem .875rem;background:var(--bg-card, var(--bg-elevated));border:1px solid var(--border-color, var(--border-primary));border-radius:8px;font-size:.8125rem}.stat-chip .stat-value{font-weight:700;font-size:1rem;color:var(--text-primary)}.stat-chip .stat-label{color:var(--text-secondary);font-size:.75rem}.tag{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;background:var(--bg-tertiary);border-radius:6px;font-size:.75rem;color:var(--text-secondary)}.tag.removable{padding-right:.25rem}.tag.removable .tag-remove{display:flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:4px;cursor:pointer;transition:background-color .15s ease}.tag.removable .tag-remove:hover{background-color:#ef444433;color:#ef4444}.tag.removable .tag-remove mat-icon{font-size:14px;width:14px;height:14px}.search-input{display:flex;flex-direction:row;align-items:center;gap:.5rem;height:34px;padding:0 .875rem;background:var(--bg-tertiary);border:1px solid var(--border-color, var(--border-primary));border-radius:9999px;min-width:200px;transition:all .2s ease cubic-bezier(.4,0,.2,1)}.search-input:hover{border-color:var(--text-tertiary)}.search-input:focus-within{border-color:var(--primary, var(--mat-sys-primary));background:var(--bg-card, var(--bg-elevated));box-shadow:0 0 0 3px rgba(var(--primary-rgb, 33, 150, 243),.15)}.search-input mat-icon{font-size:20px;width:20px;height:20px;color:var(--text-secondary);flex-shrink:0}.search-input input{flex:1;border:none;background:transparent;font-size:.875rem;color:var(--text-primary);outline:none;min-width:0}.search-input input::placeholder{color:var(--text-secondary)}.search-input .clear-btn{display:flex;align-items:center;justify-content:center;width:20px;height:20px;min-width:20px;padding:0;margin-left:.25rem;opacity:.6;transition:opacity .15s ease cubic-bezier(.4,0,.2,1)}.search-input .clear-btn:hover{opacity:1}.search-input .clear-btn mat-icon{font-size:16px;width:16px;height:16px}.search-input.search-input-sm{height:30px;padding:0 .75rem;min-width:160px;border-radius:15px}.search-input.search-input-sm mat-icon{font-size:18px;width:18px;height:18px}.search-input.search-input-sm input{font-size:.8125rem}.search-input.search-input-lg{height:40px;padding:0 1rem;min-width:280px;border-radius:9999px}.toggle-group{display:flex;flex-direction:row;align-items:center;gap:2px;background:var(--bg-tertiary);border-radius:6px;padding:2px}.toggle-btn{display:flex;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:none;cursor:pointer;font-weight:500;transition:all .15s ease;outline:none}.toggle-btn:disabled{opacity:.5;cursor:not-allowed}.toggle-btn:focus-visible{outline:2px solid var(--mat-sys-primary, #2196f3);outline-offset:2px}.toggle-btn{width:32px;height:32px;border-radius:4px;background-color:transparent;color:var(--text-tertiary)}.toggle-btn mat-icon{font-size:20px;width:20px;height:20px}.toggle-btn:hover:not(.active){color:var(--text-secondary);background-color:var(--bg-hover)}.toggle-btn.active{background-color:var(--mat-sys-primary, var(--primary));color:#fff}.toggle-btn.active mat-icon{color:#fff}.toggle-btn.toggle-btn-sm{width:28px;height:28px}.toggle-btn.toggle-btn-sm mat-icon{font-size:18px;width:18px;height:18px}.controls-divider{width:1px;height:20px;background:var(--border-color, var(--border-primary));margin:0 .25rem}.filter-btn{display:flex;flex-direction:row;gap:.375rem;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:none;cursor:pointer;font-weight:500;transition:all .15s ease;outline:none}.filter-btn:disabled{opacity:.5;cursor:not-allowed}.filter-btn:focus-visible{outline:2px solid var(--mat-sys-primary, #2196f3);outline-offset:2px}.filter-btn{height:34px;font-size:.8125rem;padding:0 .875rem;border-radius:8px;border:1px solid var(--border-color, var(--border-primary));background:var(--bg-card, var(--bg-elevated));color:var(--text-secondary)}.filter-btn mat-icon{font-size:18px;width:18px;height:18px}.filter-btn:hover{border-color:var(--text-tertiary);background:var(--bg-secondary);color:var(--text-primary)}.filter-btn.has-filters{border-color:var(--primary, var(--mat-sys-primary));background:rgba(var(--primary-rgb, 33, 150, 243),.08);color:var(--primary, var(--mat-sys-primary))}.filter-btn .filter-count{display:flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;margin-left:.25rem;background:var(--text-tertiary);color:#fff;border-radius:9px;font-size:.6875rem;font-weight:700}.filter-btn .filter-count.hidden{visibility:hidden}.sort-btn{display:flex;flex-direction:row;gap:.375rem;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:none;cursor:pointer;font-weight:500;transition:all .15s ease;outline:none}.sort-btn:disabled{opacity:.5;cursor:not-allowed}.sort-btn:focus-visible{outline:2px solid var(--mat-sys-primary, #2196f3);outline-offset:2px}.sort-btn{padding:.375rem .75rem;height:32px;font-size:.8125rem;border-radius:8px;background:transparent;color:var(--text-secondary)}.sort-btn mat-icon{font-size:18px;width:18px;height:18px}.sort-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.sort-btn.active-sort{background:rgba(var(--primary-rgb, 33, 150, 243),.08);color:var(--primary, var(--mat-sys-primary))}.filter-popup{padding:1rem;min-width:400px;max-width:520px}.filter-row{display:flex;flex-direction:row;align-items:center;gap:.5rem;margin-bottom:.625rem}.filter-select{flex:1;height:40px;padding:0 .75rem;border:1px solid var(--border-color, var(--border-primary));border-radius:8px;background:var(--bg-card, var(--bg-elevated));font-size:.875rem;color:var(--text-primary);cursor:pointer}.filter-select:hover{border-color:var(--text-tertiary)}.filter-select:focus{border-color:var(--primary, var(--mat-sys-primary));outline:none}.filter-select.filter-op{flex:0 0 80px;text-align:center}.filter-remove{display:flex;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:none;cursor:pointer;font-weight:500;transition:all .15s ease;outline:none}.filter-remove:disabled{opacity:.5;cursor:not-allowed}.filter-remove:focus-visible{outline:2px solid var(--mat-sys-primary, #2196f3);outline-offset:2px}.filter-remove{width:36px;height:36px;border-radius:8px;background:transparent;color:var(--text-tertiary);flex-shrink:0}.filter-remove:hover{background:#ef44441f;color:#ef4444}.filter-remove mat-icon{font-size:20px;width:20px;height:20px}.filter-actions{display:flex;flex-direction:row;align-items:center;gap:.75rem;padding-top:.75rem;border-top:1px solid var(--border-color, var(--border-primary));margin-top:.375rem}.filter-add{display:flex;flex-direction:row;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:none;cursor:pointer;font-weight:500;transition:all .15s ease;outline:none}.filter-add:disabled{opacity:.5;cursor:not-allowed}.filter-add:focus-visible{outline:2px solid var(--mat-sys-primary, #2196f3);outline-offset:2px}.filter-add{height:38px;padding:0 1rem;border:1px dashed var(--border-color, var(--border-primary));border-radius:8px;background:transparent;color:var(--text-secondary);font-size:.875rem;font-family:inherit}.filter-add mat-icon{font-size:20px;width:20px;height:20px}.filter-add:hover{border-color:var(--primary, var(--mat-sys-primary));color:var(--primary, var(--mat-sys-primary))}.filter-clear{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:none;cursor:pointer;font-weight:500;transition:all .15s ease;outline:none}.filter-clear:disabled{opacity:.5;cursor:not-allowed}.filter-clear:focus-visible{outline:2px solid var(--mat-sys-primary, #2196f3);outline-offset:2px}.filter-clear{height:38px;padding:0 1rem;border-radius:8px;background:transparent;color:var(--text-tertiary);font-size:.875rem;font-family:inherit}.filter-clear:hover{color:#ef4444}.controls-bar{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1.5rem;min-height:48px;background:var(--bg-card, var(--bg-elevated));border-top:1px solid var(--border-color, var(--border-primary));border-bottom:1px solid var(--border-color, var(--border-primary));gap:1rem}.controls-bar .controls-left,.controls-bar .controls-right{display:flex;flex-direction:row;align-items:center;gap:.5rem}.stats-section{display:flex;flex-direction:row;align-items:center;gap:.75rem}.action-btn-group{display:flex;flex-direction:row;align-items:center;gap:.5rem}.loading-state,.loading-container{display:flex;align-items:center;justify-content:center;padding:3rem 1.25rem;flex:1;min-height:200px}.loading-state.loading-state-sm,.loading-container.loading-state-sm{padding:2rem 1.25rem;min-height:100px}.loading-state.loading-state-lg,.loading-container.loading-state-lg{padding:100px 1.25rem;min-height:300px}.loading-state.loading-state-full,.loading-container.loading-state-full{height:100%;min-height:400px}.empty-state,.no-results-state{display:flex;flex-direction:column;gap:1rem;align-items:center;justify-content:center;padding:3rem 1.25rem;color:var(--text-tertiary);flex:1;min-height:200px;text-align:center}.empty-state mat-icon,.no-results-state mat-icon{font-size:48px;width:48px;height:48px;margin-bottom:1rem;opacity:.5}.empty-state h3,.no-results-state h3{font-size:1rem;font-weight:600;color:var(--text-secondary);margin:0 0 .5rem}.empty-state p,.no-results-state p{font-size:.875rem;margin:0;max-width:300px}.empty-state .empty-state-action,.no-results-state .empty-state-action{margin-top:1rem}.empty-state.empty-state-sm,.empty-state-sm.no-results-state{padding:2rem 1.25rem;min-height:100px}.empty-state.empty-state-sm mat-icon,.empty-state-sm.no-results-state mat-icon{font-size:32px;width:32px;height:32px;margin-bottom:.5rem}.empty-state.empty-state-sm p,.empty-state-sm.no-results-state p{font-size:.8125rem}.empty-state.empty-state-lg,.empty-state-lg.no-results-state{padding:100px 1.25rem;min-height:300px}.empty-state.empty-state-lg mat-icon,.empty-state-lg.no-results-state mat-icon{font-size:64px;width:64px;height:64px;margin-bottom:1.5rem}.empty-state.empty-state-full,.empty-state-full.no-results-state{height:100%;min-height:400px}.error-state{display:flex;flex-direction:column;gap:1rem;align-items:center;justify-content:center;padding:3rem 1.25rem;flex:1;min-height:200px;text-align:center}.error-state mat-icon{font-size:48px;width:48px;height:48px;margin-bottom:1rem;color:#ef4444}.error-state h3{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.error-state p{font-size:.875rem;color:var(--text-secondary);margin:0;max-width:400px}.error-state .error-state-action{margin-top:1rem}.no-results-state mat-icon{color:var(--text-tertiary)}.skeleton{background:linear-gradient(90deg,#eee 25%,#f5f5f5,#eee 75%);background-size:200% 100%;animation:skeleton-loading 1.5s infinite}.skeleton-text{height:1em;width:100%}.skeleton-text-sm{height:.75em;width:60%}.skeleton-text-lg{height:1.25em;width:80%}.skeleton-circle{border-radius:9999px}.skeleton-avatar{width:40px;height:40px;border-radius:9999px}.skeleton-card{height:120px;border-radius:8px}.skeleton-row{display:flex;flex-direction:row;align-items:center;gap:1rem;padding:1rem}.skeleton-row .skeleton-avatar{flex-shrink:0}.skeleton-row .skeleton-content{display:flex;flex-direction:column;gap:.5rem;flex:1}.overlay-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(var(--bg-primary-rgb, 255, 255, 255),.8);z-index:1040}.dark .overlay-loading{background:#0f172acc}.inline-loading{display:flex;flex-direction:row;align-items:center;gap:.5rem;display:inline-flex;color:var(--text-secondary);font-size:.875rem}.progress-container{width:100%;height:.25rem;background:var(--bg-tertiary);border-radius:2px;overflow:hidden}.progress-container .progress-bar{height:100%;background:var(--primary, var(--mat-sys-primary));border-radius:2px;transition:width .3s ease cubic-bezier(.4,0,.2,1)}.progress-container.progress-success .progress-bar{background:#22c55e}.progress-container.progress-warning .progress-bar{background:#f59e0b}.progress-container.progress-error .progress-bar{background:#ef4444}.page-container{display:flex;flex-direction:column;height:100%;background:var(--bg-primary)}.list-page-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.875rem 1.5rem;background:var(--bg-card, var(--bg-elevated))}.list-page-header .header-left{flex:1;min-width:0}.list-page-header .header-left h1{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary);letter-spacing:-.01em}.list-page-header .header-left p{margin:.125rem 0 0;font-size:.8125rem;color:var(--text-secondary)}.list-page-header .header-right{display:flex;flex-direction:row;align-items:center;gap:.5rem;flex-shrink:0}@media(max-width:768px){.list-page-header{flex-direction:column;align-items:stretch;gap:1rem;padding:1rem}.list-page-header .header-right{flex-wrap:wrap}}.content-area{flex:1;overflow:auto;background:var(--bg-primary)}.entity-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;padding:1.5rem;align-content:start}.entity-grid.entity-grid-lg{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.entity-grid.entity-grid-sm{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.75rem;padding:1rem}@media(max-width:768px){.entity-grid{padding:1rem;grid-template-columns:1fr}}.flex-table{display:flex;flex-direction:column}.flex-table .table-header,.flex-table .table-row{display:flex;flex-direction:row;align-items:center;gap:.75rem;padding:.75rem 1.5rem}.flex-table .table-header{min-height:52px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color, var(--border-primary));position:sticky;top:0;z-index:1}.flex-table .table-header .th-cell{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flex-table .table-body .table-row{border-bottom:1px solid var(--border-color, var(--border-primary));cursor:pointer;transition:background-color .15s ease cubic-bezier(.4,0,.2,1)}.flex-table .table-body .table-row:hover{background:var(--bg-hover)}.flex-table .table-body .table-row .td-cell{font-size:.875rem;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flex-table .col-icon{flex:0 0 48px}.flex-table .col-actions{flex:0 0 48px;text-align:right}.flex-table .col-xs{flex:0 0 60px}.flex-table .col-sm{flex:0 0 100px}.flex-table .col-md{flex:0 0 150px}.flex-table .col-lg{flex:0 0 200px}.flex-table .col-auto{flex:1;min-width:0}.flex-table .col-center{text-align:center}@media(max-width:768px){.flex-table .table-header,.flex-table .table-row{padding:.75rem 1rem}}.entity-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;background:var(--bg-tertiary);transition:transform .15s ease cubic-bezier(.4,0,.2,1);flex-shrink:0}.entity-icon mat-icon{font-size:20px;width:20px;height:20px;color:var(--text-secondary)}.entity-icon.active{background:#22c55e1f}.entity-icon.active mat-icon{color:#22c55e}.entity-icon.inactive{background:#9ca3af1f}.entity-icon.inactive mat-icon{color:#9ca3af}.entity-icon.pending{background:#f59e0b1f}.entity-icon.pending mat-icon{color:#f59e0b}.entity-icon.error{background:#ef44441f}.entity-icon.error mat-icon{color:#ef4444}.entity-icon.primary{background:rgba(var(--primary-rgb, 33, 150, 243),.15)}.entity-icon.primary mat-icon{color:var(--primary, var(--mat-sys-primary))}.entity-icon.entity-icon-sm{width:28px;height:28px;border-radius:6px}.entity-icon.entity-icon-sm mat-icon{font-size:16px;width:16px;height:16px}.entity-icon.entity-icon-lg{width:48px;height:48px;border-radius:10px}.entity-icon.entity-icon-lg mat-icon{font-size:24px;width:24px;height:24px}.paginator-container{border-top:1px solid var(--border-color, var(--border-primary));background:var(--bg-card, var(--bg-elevated))}.card-elevated{background-color:var(--bg-elevated, #ffffff);border:1px solid var(--border-primary, #eeeeee);border-radius:12px;box-shadow:0 1px 2px #0000000d;padding:1rem;overflow:hidden}.card-flat{background-color:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:8px}.split-layout{display:flex;height:100%;overflow:hidden}.split-layout .split-master{width:320px;border-right:1px solid var(--border-primary);display:flex;flex-direction:column;overflow:hidden}.split-layout .split-detail{flex:1;display:flex;flex-direction:column;overflow:hidden}@media(max-width:768px){.split-layout{flex-direction:column}.split-layout .split-master{width:100%;height:auto;max-height:40%;border-right:none;border-bottom:1px solid var(--border-primary)}}.section-divider{height:1px;background:var(--border-color, var(--border-primary));margin:1rem 0}.table-card{background-color:var(--bg-elevated);border:1px solid var(--border-primary);border-radius:12px;box-shadow:0 1px 2px #0000000d;overflow:hidden;flex:1;display:flex;flex-direction:column}.loading-container{display:flex;align-items:center;justify-content:center;padding:3rem 1.25rem;flex:1}.table-container{overflow:auto;flex:1}table{width:100%}tr.table-row{transition:background-color .1s cubic-bezier(.4,0,.2,1)}tr.table-row:hover{background-color:var(--bg-hover)}th.mat-mdc-header-cell{font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);background-color:var(--bg-secondary);position:relative}th.mat-mdc-header-cell .mat-sort-header-arrow{opacity:.4;transition:opacity .15s ease cubic-bezier(.4,0,.2,1)}th.mat-mdc-header-cell:hover .mat-sort-header-arrow{opacity:.7}th.mat-mdc-header-cell[aria-sort=ascending] .mat-sort-header-arrow,th.mat-mdc-header-cell[aria-sort=descending] .mat-sort-header-arrow{opacity:1}.header-with-filter{display:flex;flex-direction:row;align-items:center;gap:.25rem;cursor:pointer}.header-with-filter .header-label{flex:1}.header-with-filter .filter-icon{font-size:16px;width:16px;height:16px;color:var(--text-tertiary);opacity:.5;transition:opacity color .15s ease cubic-bezier(.4,0,.2,1)}.header-with-filter:hover .filter-icon{opacity:1;color:var(--text-secondary)}.header-with-filter.filter-active .filter-icon{opacity:1;color:var(--mat-sys-primary)}.header-filter-menu .filter-option{display:flex;flex-direction:row;align-items:center;gap:.5rem}.header-filter-menu .filter-option mat-icon{font-size:18px;width:18px;height:18px}.header-filter-menu .filter-active-indicator{width:6px;height:6px;border-radius:9999px;background-color:var(--mat-sys-primary);margin-left:auto}td.mat-mdc-cell{font-size:.8125rem;color:var(--text-primary)}.actions-header{width:48px}.actions-cell{text-align:center}.row-menu-btn{opacity:.5;transition:opacity .15s ease cubic-bezier(.4,0,.2,1)}.row-menu-btn:hover{opacity:1}.delete-item,.danger-item{color:#ef4444!important}.delete-item mat-icon,.danger-item mat-icon{color:#ef4444!important}.success-item{color:#22c55e!important}.success-item mat-icon{color:#22c55e!important}mat-paginator{border-top:1px solid var(--border-primary);margin-top:auto}.status-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .625rem;border-radius:12px;font-size:.75rem;font-weight:500;white-space:nowrap}.status-badge .status-dot{width:6px;height:6px;border-radius:9999px;flex-shrink:0}.status-badge.active{background:#22c55e1f;color:#16a34a}.status-badge.active .status-dot{background:#22c55e}.status-badge.inactive{background:#ef44441f;color:#dc2626}.status-badge.inactive .status-dot{background:#ef4444}.status-badge.pending{background:#f59e0b1f;color:#d97706}.status-badge.pending .status-dot{background:#f59e0b}.count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 .5rem;border-radius:12px;font-size:.75rem;font-weight:500;background-color:var(--bg-secondary);color:var(--text-secondary)}.text-success{color:#22c55e!important}.text-error{color:#ef4444!important}.text-warning{color:#f59e0b!important}@media(max-width:768px){.table-container{min-height:300px}}.form-page{display:flex;flex-direction:column;width:100%}.form-card{background-color:var(--bg-elevated);border:1px solid var(--border-primary);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;min-height:calc(100vh - 250px)}.form-loading{display:flex;align-items:center;justify-content:center;min-height:400px}.tab-content{padding:1.5rem;display:flex;flex-direction:column;gap:.5rem;flex:1}.full-width{width:100%}.form-row{display:flex;gap:1rem}.form-row>mat-form-field{flex:1;min-width:0}.form-row>.flex-field,.form-row>.flex-grow{flex:1;min-width:0}.form-row>.small-field{flex:0 0 180px}.form-row>.medium-field{flex:0 0 280px}@media(max-width:600px){.form-row{flex-direction:column;gap:.5rem}.form-row>mat-form-field,.form-row>.flex-field,.form-row>.flex-grow,.form-row>.small-field,.form-row>.medium-field{flex:none;width:100%}}.flex-field{flex:1}.small-field{width:180px;flex-shrink:0}@media(max-width:600px){.small-field{width:100%}}.medium-field{width:280px;flex-shrink:0}@media(max-width:600px){.medium-field{width:100%}}.form-section{max-width:800px;width:100%;margin:0 auto}.form-section mat-form-field{width:100%}.form-section.form-section-sm{max-width:600px}.form-section.form-section-lg{max-width:1000px}.form-section.form-section-xl{max-width:1200px}.form-section.form-section-full{max-width:none}@media(min-width:1600px){.form-section{max-width:900px}.form-section.form-section-sm{max-width:650px}.form-section.form-section-lg{max-width:1100px}.form-section.form-section-xl{max-width:1350px}}@media(min-width:2200px){.form-section{max-width:1000px}.form-section.form-section-sm{max-width:700px}.form-section.form-section-lg{max-width:1200px}.form-section.form-section-xl{max-width:1500px}}.section-header{margin:1rem 0}.section-header h3{font-size:1rem;font-weight:600;margin:0 0 .25rem}.section-header .hint{font-size:.8125rem;color:var(--text-secondary);margin:0}.section-description{font-size:.875rem;color:var(--text-secondary);margin:0 0 1rem}.form-card mat-divider{margin:1.5rem 0 1rem}.form-card mat-tab-group{flex:1;display:flex;flex-direction:column}.form-card mat-tab-group ::ng-deep .mat-mdc-tab-labels{gap:.5rem;padding:0 1rem}.form-card mat-tab-group ::ng-deep .mat-mdc-tab{min-width:auto;padding:0 1rem}.form-card mat-tab-group ::ng-deep .mat-mdc-tab .mdc-tab__content{gap:.75rem}.form-card mat-tab-group ::ng-deep .mat-mdc-tab-body-wrapper{flex:1;display:flex;flex-direction:column}.form-card mat-tab-group ::ng-deep .mat-mdc-tab-body{flex:1;display:flex;flex-direction:column}.form-card mat-tab-group ::ng-deep .mat-mdc-tab-body-content{flex:1;display:flex;flex-direction:column}.form-actions{display:flex;flex-direction:row;align-items:center;gap:.75rem;justify-content:flex-end;padding:1rem 1.5rem;border-top:1px solid var(--border-primary)}.form-actions button{min-width:120px}.form-actions mat-spinner{display:inline-block}.form-actions mat-spinner ::ng-deep circle{stroke:currentColor}.password-toggle{cursor:pointer}.chip-list{display:flex;flex-wrap:wrap;gap:.5rem;padding:.5rem 0}@media(max-width:600px){.tab-content{padding:1rem}.form-actions{padding:1rem;flex-direction:column-reverse}.form-actions button{width:100%}}.edit-container{display:flex;flex-direction:column;height:100%;min-height:0;background:var(--bg-primary)}.edit-content{flex:1;display:flex;flex-direction:column;min-height:0}.edit-page-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.875rem 1.5rem;background:var(--bg-card);border-bottom:1px solid var(--border-color)}.edit-page-header .header-left{display:flex;flex-direction:row;align-items:center;gap:.75rem}.edit-page-header .back-btn{color:var(--text-secondary)}.edit-page-header .back-btn:hover{color:var(--text-primary)}.edit-page-header .header-titles h1{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary);letter-spacing:-.01em}.edit-page-header .header-titles p{margin:.125rem 0 0;font-size:.8125rem;color:var(--text-secondary)}.edit-page-header .header-right{display:flex;flex-direction:row;align-items:center;gap:.5rem}@media(max-width:768px){.edit-page-header{flex-direction:column;align-items:stretch;gap:1rem;padding:1rem}.edit-page-header .header-left{justify-content:flex-start}.edit-page-header .header-right{justify-content:flex-end}}.tabs-nav{display:flex;flex-direction:row;align-items:center;gap:.5rem;padding:0 1.5rem;background:var(--bg-card);border-top:1px solid var(--border-color)}@media(max-width:768px){.tabs-nav{padding:0 1rem;overflow-x:auto;gap:.25rem}.tabs-nav::-webkit-scrollbar{display:none}}.tab-btn{display:flex;flex-direction:row;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:none;cursor:pointer;font-weight:500;transition:all .15s ease;outline:none}.tab-btn:disabled{opacity:.5;cursor:not-allowed}.tab-btn:focus-visible{outline:2px solid var(--mat-sys-primary, #2196f3);outline-offset:2px}.tab-btn{padding:1rem;background:transparent;color:var(--text-secondary);font-size:.875rem;font-weight:500;font-family:inherit;position:relative}.tab-btn mat-icon{font-size:20px;width:20px;height:20px}.tab-btn:hover:not(.active){color:var(--text-primary)}.tab-btn.active{color:#3b82f6}.tab-btn.active:after{content:"";position:absolute;bottom:0;left:.5rem;right:.5rem;height:2px;background:#3b82f6;border-radius:2px 2px 0 0}@media(max-width:768px){.tab-btn{padding:.75rem;font-size:.8125rem;white-space:nowrap}.tab-btn mat-icon{font-size:18px;width:18px;height:18px}}.tab-count-badge{display:flex;align-items:center;justify-content:center;display:inline-flex;padding:.125rem .5rem;margin-left:.25rem;background:var(--bg-tertiary);border-radius:10px;font-size:.75rem;font-weight:500;color:var(--text-secondary)}.tab-count-badge.valid{background:#22c55e1f;color:#22c55e}.tab-count-badge.invalid{background:#ef44441f;color:#ef4444}.tab-btn.active .tab-count-badge{background:#3b82f626;color:#3b82f6}.tab-btn.active .tab-count-badge.valid{background:#22c55e26;color:#22c55e}.tab-btn.active .tab-count-badge.invalid{background:#ef444426;color:#ef4444}.tab-beta-badge{display:flex;align-items:center;justify-content:center;display:inline-flex;padding:.125rem .375rem;margin-left:.25rem;background:#8b5cf626;border-radius:4px;font-size:.625rem;font-weight:600;color:#8b5cf6;text-transform:uppercase;letter-spacing:.03em}.tab-check{font-size:16px!important;width:16px!important;height:16px!important;margin-left:.25rem;color:#22c55e}.edit-content .tab-content{flex:1;overflow:auto;padding:1.5rem;background:var(--bg-primary)}@media(max-width:768px){.edit-content .tab-content{padding:1rem}}.form-section-card{width:100%;max-width:800px;margin:0 auto 1rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;padding:1.5rem}.form-section-card.form-section-sm{max-width:600px}.form-section-card.form-section-lg{max-width:1000px}.form-section-card.form-section-xl,.form-section-card.form-section-wide{max-width:1200px}.form-section-card.form-section-full{max-width:none}@media(min-width:1600px){.form-section-card{max-width:900px}.form-section-card.form-section-sm{max-width:650px}.form-section-card.form-section-lg{max-width:1100px}.form-section-card.form-section-xl,.form-section-card.form-section-wide{max-width:1350px}}.form-section-card h2{margin:0 0 .5rem;font-size:1rem;font-weight:500;color:var(--text-primary)}.form-section-card h3{margin:1rem 0 .5rem;font-size:.875rem;font-weight:500;color:var(--text-secondary)}.form-section-card mat-form-field{width:100%;margin-bottom:.5rem}.form-section-card .section-hint{margin:-.25rem 0 1rem;font-size:.8125rem;color:var(--text-secondary)}.checkbox-row{display:flex;flex-direction:column;gap:.25rem;padding:.5rem 0}.checkbox-row .checkbox-hint{font-size:.75rem;color:var(--text-tertiary);margin-left:2rem}.validation-hint{display:flex;flex-direction:row;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#ef44441f;border-radius:8px;margin-top:1rem;font-size:.8125rem;color:#ef4444}.validation-hint mat-icon{font-size:18px;width:18px;height:18px}.notice-box{display:flex;gap:.75rem;padding:1rem;margin-bottom:1.5rem;border-radius:8px}.notice-box>mat-icon{font-size:24px;width:24px;height:24px;flex-shrink:0}.notice-box strong{display:block;font-size:.875rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.notice-box p{margin:0;font-size:.8125rem;color:var(--text-secondary);line-height:1.5}.notice-box.notice-info{background:#3b82f614;border:1px solid rgba(59,130,246,.2)}.notice-box.notice-info>mat-icon{color:#3b82f6}.notice-box.notice-warning{background:#f59e0b14;border:1px solid rgba(245,158,11,.2)}.notice-box.notice-warning>mat-icon{color:#f59e0b}.notice-box.notice-beta{background:#8b5cf614;border:1px solid rgba(139,92,246,.2)}.notice-box.notice-beta>mat-icon{color:#8b5cf6}.notice-box.notice-success{background:#22c55e14;border:1px solid rgba(34,197,94,.2)}.notice-box.notice-success>mat-icon{color:#22c55e}.notice-box.notice-error{background:#ef444414;border:1px solid rgba(239,68,68,.2)}.notice-box.notice-error>mat-icon{color:#ef4444}.page-container{padding:1.5rem;display:flex;flex-direction:column;height:100%;box-sizing:border-box}.search-field{width:260px}.search-field ::ng-deep .mat-mdc-form-field-subscript-wrapper{display:none}.search-field ::ng-deep .mat-mdc-text-field-wrapper{border-radius:9999px;background:transparent;padding:0 .25rem}.search-field ::ng-deep .mat-mdc-form-field-flex{height:40px;align-items:center}.search-field ::ng-deep .mdc-notched-outline__leading{border-radius:20px 0 0 20px!important;width:20px!important;border-color:var(--mat-sys-outline)!important}.search-field ::ng-deep .mdc-notched-outline__trailing{border-radius:0 20px 20px 0!important;border-color:var(--mat-sys-outline)!important}.search-field ::ng-deep .mdc-notched-outline__notch{border-color:var(--mat-sys-outline)!important}.search-field ::ng-deep input{font-size:.875rem;color:var(--mat-sys-on-surface)}.search-field ::ng-deep input::placeholder{color:var(--mat-sys-on-surface-variant)}.search-field ::ng-deep .mat-mdc-form-field-icon-prefix{padding:0 .25rem 0 .5rem}.search-field ::ng-deep .mat-mdc-form-field-icon-prefix mat-icon{color:var(--mat-sys-on-surface-variant)}.search-field ::ng-deep .mat-mdc-form-field-icon-suffix{padding:0 .25rem}.search-field ::ng-deep .mat-mdc-form-field-icon-suffix button{display:flex;align-items:center;justify-content:center;width:32px;height:32px}.view-toggle ::ng-deep .mat-button-toggle-group{border:1px solid var(--mat-sys-outline);border-radius:9999px;overflow:hidden}.view-toggle ::ng-deep .mat-button-toggle{background:transparent}.view-toggle ::ng-deep .mat-button-toggle.mat-button-toggle-checked{background:var(--mat-sys-secondary-container)}.view-toggle ::ng-deep .mat-button-toggle.mat-button-toggle-checked .mat-button-toggle-label-content mat-icon{color:var(--mat-sys-on-secondary-container)}.view-toggle ::ng-deep .mat-button-toggle .mat-button-toggle-button{width:44px;height:40px}.view-toggle ::ng-deep .mat-button-toggle .mat-button-toggle-label-content{padding:0;display:flex;align-items:center;justify-content:center;line-height:40px}.view-toggle ::ng-deep .mat-button-toggle .mat-button-toggle-label-content mat-icon{color:var(--mat-sys-on-surface-variant)}.page-header{margin-bottom:0;flex-shrink:0}.header-content{display:flex;align-items:center;justify-content:space-between;align-items:flex-start;gap:1.5rem}.header-title h1{margin:0 0 .25rem;font-size:1.75rem;font-weight:500;color:var(--text-primary)}.header-title p{margin:0;color:var(--text-secondary);font-size:.875rem}.header-actions{display:flex;flex-direction:row;align-items:center;gap:.75rem;flex-shrink:0}.content-card{flex:1;display:flex;flex-direction:column;min-height:0;background:var(--bg-elevated);border:1px solid var(--border-primary);border-radius:12px;overflow:hidden}.entity-grid{flex:1;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;padding:1rem;overflow:auto;align-content:start}.loading-container,.empty-state{flex:1;display:flex;flex-direction:column;gap:1rem;align-items:center;justify-content:center;padding:3rem 1.5rem}.loading-container mat-icon,.empty-state mat-icon{font-size:48px;width:48px;height:48px;color:var(--text-tertiary)}.loading-container p,.empty-state p{margin:0;color:var(--text-secondary);font-size:.875rem}.table-container{flex:1;overflow:auto}@media(max-width:1024px){.header-content,.header-actions{flex-wrap:wrap}.search-field{width:200px}}@media(max-width:768px){.page-container{padding:1rem}.header-content{flex-direction:column;align-items:stretch}.header-actions{justify-content:space-between}.header-actions button[mat-flat-button]{flex:1}.search-field{flex:1;width:auto;min-width:0}.entity-grid{grid-template-columns:1fr;padding:1rem}}html{height:100%;--mat-sys-background: light-dark(#faf9fd, #121316);--mat-sys-error: light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container: light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface: light-dark(#f2f0f4, #2f3033);--mat-sys-inverse-primary: light-dark(#abc7ff, #005cbb);--mat-sys-inverse-surface: light-dark(#2f3033, #e3e2e6);--mat-sys-on-background: light-dark(#1a1b1f, #e3e2e6);--mat-sys-on-error: light-dark(#ffffff, #690005);--mat-sys-on-error-container: light-dark(#93000a, #ffdad6);--mat-sys-on-primary: light-dark(#ffffff, #002f65);--mat-sys-on-primary-container: light-dark(#00458f, #d7e3ff);--mat-sys-on-primary-fixed: light-dark(#001b3f, #001b3f);--mat-sys-on-primary-fixed-variant: light-dark(#00458f, #00458f);--mat-sys-on-secondary: light-dark(#ffffff, #283041);--mat-sys-on-secondary-container: light-dark(#3e4759, #dae2f9);--mat-sys-on-secondary-fixed: light-dark(#131c2b, #131c2b);--mat-sys-on-secondary-fixed-variant: light-dark(#3e4759, #3e4759);--mat-sys-on-surface: light-dark(#1a1b1f, #e3e2e6);--mat-sys-on-surface-variant: light-dark(#44474e, #e0e2ec);--mat-sys-on-tertiary: light-dark(#ffffff, #42008a);--mat-sys-on-tertiary-container: light-dark(#5f00c0, #ecdcff);--mat-sys-on-tertiary-fixed: light-dark(#270057, #270057);--mat-sys-on-tertiary-fixed-variant: light-dark(#5f00c0, #5f00c0);--mat-sys-outline: light-dark(#74777f, #8e9099);--mat-sys-outline-variant: light-dark(#c4c6d0, #44474e);--mat-sys-primary: light-dark(#005cbb, #abc7ff);--mat-sys-primary-container: light-dark(#d7e3ff, #00458f);--mat-sys-primary-fixed: light-dark(#d7e3ff, #d7e3ff);--mat-sys-primary-fixed-dim: light-dark(#abc7ff, #abc7ff);--mat-sys-scrim: light-dark(#000000, #000000);--mat-sys-secondary: light-dark(#565e71, #bec6dc);--mat-sys-secondary-container: light-dark(#dae2f9, #3e4759);--mat-sys-secondary-fixed: light-dark(#dae2f9, #dae2f9);--mat-sys-secondary-fixed-dim: light-dark(#bec6dc, #bec6dc);--mat-sys-shadow: light-dark(#000000, #000000);--mat-sys-surface: light-dark(#faf9fd, #121316);--mat-sys-surface-bright: light-dark(#faf9fd, #38393c);--mat-sys-surface-container: light-dark(#efedf0, #1f2022);--mat-sys-surface-container-high: light-dark(#e9e7eb, #292a2c);--mat-sys-surface-container-highest: light-dark(#e3e2e6, #343537);--mat-sys-surface-container-low: light-dark(#f4f3f6, #1a1b1f);--mat-sys-surface-container-lowest: light-dark(#ffffff, #0d0e11);--mat-sys-surface-dim: light-dark(#dbd9dd, #121316);--mat-sys-surface-tint: light-dark(#005cbb, #abc7ff);--mat-sys-surface-variant: light-dark(#e0e2ec, #44474e);--mat-sys-tertiary: light-dark(#7d00fa, #d5baff);--mat-sys-tertiary-container: light-dark(#ecdcff, #5f00c0);--mat-sys-tertiary-fixed: light-dark(#ecdcff, #ecdcff);--mat-sys-tertiary-fixed-dim: light-dark(#d5baff, #d5baff);--mat-sys-neutral-variant20: #2d3038;--mat-sys-neutral10: #1a1b1f;--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large: 400 1rem / 1.5rem Roboto;--mat-sys-body-large-font: Roboto;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem Roboto;--mat-sys-body-medium-font: Roboto;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem Roboto;--mat-sys-body-small-font: Roboto;--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem Roboto;--mat-sys-display-large-font: Roboto;--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem Roboto;--mat-sys-display-medium-font: Roboto;--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem Roboto;--mat-sys-display-small-font: Roboto;--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem Roboto;--mat-sys-headline-large-font: Roboto;--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem Roboto;--mat-sys-headline-medium-font: Roboto;--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem Roboto;--mat-sys-headline-small-font: Roboto;--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .875rem / 1.25rem Roboto;--mat-sys-label-large-font: Roboto;--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem Roboto;--mat-sys-label-medium-font: Roboto;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem Roboto;--mat-sys-label-small-font: Roboto;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem Roboto;--mat-sys-title-large-font: Roboto;--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem Roboto;--mat-sys-title-medium-font: Roboto;--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem Roboto;--mat-sys-title-small-font: Roboto;--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500;--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px;--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12}html.dark{--mat-sys-background: #121316;--mat-sys-error: #ffb4ab;--mat-sys-error-container: #93000a;--mat-sys-inverse-on-surface: #2f3033;--mat-sys-inverse-primary: #005cbb;--mat-sys-inverse-surface: #e3e2e6;--mat-sys-on-background: #e3e2e6;--mat-sys-on-error: #690005;--mat-sys-on-error-container: #ffdad6;--mat-sys-on-primary: #002f65;--mat-sys-on-primary-container: #d7e3ff;--mat-sys-on-primary-fixed: #001b3f;--mat-sys-on-primary-fixed-variant: #00458f;--mat-sys-on-secondary: #283041;--mat-sys-on-secondary-container: #dae2f9;--mat-sys-on-secondary-fixed: #131c2b;--mat-sys-on-secondary-fixed-variant: #3e4759;--mat-sys-on-surface: #e3e2e6;--mat-sys-on-surface-variant: #e0e2ec;--mat-sys-on-tertiary: #42008a;--mat-sys-on-tertiary-container: #ecdcff;--mat-sys-on-tertiary-fixed: #270057;--mat-sys-on-tertiary-fixed-variant: #5f00c0;--mat-sys-outline: #8e9099;--mat-sys-outline-variant: #44474e;--mat-sys-primary: #abc7ff;--mat-sys-primary-container: #00458f;--mat-sys-primary-fixed: #d7e3ff;--mat-sys-primary-fixed-dim: #abc7ff;--mat-sys-scrim: #000000;--mat-sys-secondary: #bec6dc;--mat-sys-secondary-container: #3e4759;--mat-sys-secondary-fixed: #dae2f9;--mat-sys-secondary-fixed-dim: #bec6dc;--mat-sys-shadow: #000000;--mat-sys-surface: #121316;--mat-sys-surface-bright: #38393c;--mat-sys-surface-container: #1f2022;--mat-sys-surface-container-high: #292a2c;--mat-sys-surface-container-highest: #343537;--mat-sys-surface-container-low: #1a1b1f;--mat-sys-surface-container-lowest: #0d0e11;--mat-sys-surface-dim: #121316;--mat-sys-surface-tint: #abc7ff;--mat-sys-surface-variant: #44474e;--mat-sys-tertiary: #d5baff;--mat-sys-tertiary-container: #5f00c0;--mat-sys-tertiary-fixed: #ecdcff;--mat-sys-tertiary-fixed-dim: #d5baff;--mat-sys-neutral-variant20: #2d3038;--mat-sys-neutral10: #1a1b1f;--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px;--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12}:root{--bg-primary: #ffffff;--bg-secondary: #f8fafc;--bg-tertiary: #f1f5f9;--bg-elevated: #ffffff;--bg-hover: #f1f5f9;--bg-active: #e2e8f0;--text-primary: #0f172a;--text-secondary: #475569;--text-tertiary: #94a3b8;--text-inverse: #ffffff;--border-primary: #e2e8f0;--border-secondary: #cbd5e1;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--sidebar-width: 260px;--sidebar-collapsed-width: 72px;--header-height: 64px;--success: #22c55e;--warning: #f59e0b;--error: #ef4444;--info: #3b82f6}.dark{--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-tertiary: #334155;--bg-elevated: #1e293b;--bg-hover: #334155;--bg-active: #475569;--text-primary: #f8fafc;--text-secondary: #cbd5e1;--text-tertiary: #64748b;--text-inverse: #0f172a;--border-primary: #334155;--border-secondary: #475569;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .3);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .4), 0 2px 4px -2px rgb(0 0 0 / .3);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .4), 0 4px 6px -4px rgb(0 0 0 / .3)}*{box-sizing:border-box}body{margin:0;height:100%;background-color:var(--bg-secondary);color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .2s ease,color .2s ease}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border-secondary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.mat-mdc-card{background-color:var(--bg-elevated)!important;border:1px solid var(--border-primary);box-shadow:var(--shadow-sm)!important}.mat-mdc-dialog-container{--mdc-dialog-container-color: var(--bg-elevated)}.mat-mdc-menu-panel{background-color:var(--bg-elevated)!important;border:1px solid var(--border-primary)}.mat-mdc-form-field{--mdc-filled-text-field-container-color: var(--bg-tertiary);--mdc-outlined-text-field-outline-color: var(--border-primary)}.mat-mdc-table{background-color:var(--bg-elevated)!important}.mat-mdc-table .mat-mdc-header-row{background-color:var(--bg-secondary)}.mat-mdc-table .mat-mdc-row:hover{background-color:var(--bg-hover)}.mat-mdc-chip{--mdc-chip-container-shape-radius: 8px}.mat-mdc-chip,.mat-mdc-chip .mdc-evolution-chip__cell--primary,.mat-mdc-chip .mdc-evolution-chip__action--primary{border-radius:8px!important}.custom-snackbar{--mdc-snackbar-container-color: #323232;--mdc-snackbar-supporting-text-color: #ffffff}.custom-snackbar .mdc-snackbar__surface{border-radius:8px!important}.custom-snackbar .mat-mdc-snack-bar-label{padding:0!important}.custom-snackbar .snackbar-content{display:flex;align-items:center;gap:12px;padding:12px 4px 12px 16px;min-height:48px}.custom-snackbar .snackbar-icon{flex-shrink:0;font-size:22px;width:22px;height:22px}.custom-snackbar .snackbar-message{flex:1;font-size:14px;line-height:1.4;color:#fff}.custom-snackbar .snackbar-close{flex-shrink:0;width:32px;height:32px;opacity:.6;transition:opacity .15s ease;display:flex;align-items:center;justify-content:center}.custom-snackbar .snackbar-close mat-icon{font-size:18px;width:18px;height:18px;color:#fff;display:flex;align-items:center;justify-content:center}.custom-snackbar .snackbar-close:hover{opacity:1}.custom-snackbar.snackbar-success .snackbar-icon{color:#4caf50}.custom-snackbar.snackbar-error .snackbar-icon{color:#f44336}.custom-snackbar.snackbar-warning .snackbar-icon{color:#ff9800}.custom-snackbar.snackbar-info .snackbar-icon{color:#2196f3}.page-container{padding:24px;max-width:1400px;margin:0 auto;display:flex;flex-direction:column;min-height:calc(100vh - var(--header-height))}.page-container-full{padding:24px;display:flex;flex-direction:column;min-height:calc(100vh - var(--header-height))}.page-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:24px}.page-header h1{font-size:24px;font-weight:600;color:var(--text-primary);margin:0 0 4px}.page-header p{font-size:14px;color:var(--text-secondary);margin:0}.page-header .header-content{flex:1}.card{background-color:var(--bg-elevated);border:1px solid var(--border-primary);border-radius:12px;box-shadow:var(--shadow-sm)}.card-header{padding:16px 20px;border-bottom:1px solid var(--border-primary);display:flex;align-items:center;justify-content:space-between}.card-header h2{font-size:16px;font-weight:600;margin:0}.card-body{padding:20px}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:13px;font-weight:500;color:var(--text-secondary);margin-bottom:6px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInRight{0%{transform:translate(-20px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.animate-fade-in{animation:fadeIn .3s ease-out}.animate-slide-in-right{animation:slideInRight .3s ease-out}.animate-slide-in-up{animation:slideInUp .3s ease-out}@media(max-width:768px){.page-container{padding:16px}.page-header h1{font-size:20px}}
