:root{--ing-brand-green: #8CC63E;--ing-brand-green-hi: #A5D95A;--ing-brand-green-lo: #6FA82E;--ing-brand-green-soft: rgba(140, 198, 62, .12);--ing-brand-gray: #6C6E70;--ing-on-brand: #0B0E12;--ing-bg: #0B0E12;--ing-surface-1: #14171C;--ing-surface-2: #1A1E24;--ing-surface-3: #232830;--ing-surface-hi: #2B313A;--ing-border: #2A2F37;--ing-border-hi: #3A424D;--ing-text: #E7ECF3;--ing-text-mut: #A0A8B4;--ing-text-dim: #6B7280;--ing-success: #22C55E;--ing-success-soft: rgba(34, 197, 94, .14);--ing-warning: #F59E0B;--ing-warning-soft: rgba(245, 158, 11, .14);--ing-danger: #EF4444;--ing-danger-soft: rgba(239, 68, 68, .14);--ing-info: #3B82F6;--ing-info-soft: rgba(59, 130, 246, .14);--ing-font-sans: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--ing-font-xs: .75rem;--ing-font-sm: .875rem;--ing-font-base: 1rem;--ing-font-md: 1.125rem;--ing-font-lg: 1.375rem;--ing-font-xl: 1.75rem;--ing-font-2xl: 2.25rem;--ing-lh-tight: 1.2;--ing-lh-base: 1.5;--ing-lh-loose: 1.7;--ing-space-1: 4px;--ing-space-2: 8px;--ing-space-3: 12px;--ing-space-4: 16px;--ing-space-5: 20px;--ing-space-6: 24px;--ing-space-7: 32px;--ing-space-8: 40px;--ing-space-9: 48px;--ing-space-10: 64px;--ing-space-11: 80px;--ing-space-12: 96px;--ing-radius-sm: 6px;--ing-radius-md: 10px;--ing-radius-lg: 16px;--ing-radius-xl: 20px;--ing-radius-pill: 999px;--ing-shadow-1: 0 1px 2px rgba(0, 0, 0, .4);--ing-shadow-2: 0 8px 24px rgba(0, 0, 0, .35);--ing-shadow-3: 0 24px 48px rgba(0, 0, 0, .45);--ing-glow-brand: 0 0 24px rgba(140, 198, 62, .35);--ing-motion-fast: .12s ease-out;--ing-motion-base: .2s ease-out;--ing-motion-slow: .32s cubic-bezier(.2, .8, .2, 1);--ing-sidebar-w-expanded: 240px;--ing-sidebar-w-collapsed: 72px;--ing-topbar-h: 64px;--ing-container-max: 1440px}@media(min-width:1024px){:root{--ing-font-md: 1.25rem;--ing-font-lg: 1.5rem;--ing-font-xl: 2.25rem;--ing-font-2xl: 3rem}}:root[data-theme=light]{--ing-bg: #F7F8FA;--ing-surface-1: #FFFFFF;--ing-surface-2: #F0F2F5;--ing-surface-3: #E7EAF0;--ing-surface-hi: #E1E5EB;--ing-border: #E4E7ED;--ing-border-hi: #C7CDD6;--ing-text: #0F1114;--ing-text-mut: #5A6270;--ing-text-dim: #8B93A0;--ing-brand-green-hi: #78B033;--ing-brand-green-lo: #5D8C25;--ing-brand-green-soft: rgba(140, 198, 62, .16);--ing-success-soft: rgba(34, 197, 94, .14);--ing-warning-soft: rgba(245, 158, 11, .16);--ing-danger-soft: rgba(239, 68, 68, .14);--ing-info-soft: rgba(59, 130, 246, .14);--ing-shadow-1: 0 1px 2px rgba(15, 17, 20, .06);--ing-shadow-2: 0 6px 20px rgba(15, 17, 20, .08);--ing-shadow-3: 0 18px 40px rgba(15, 17, 20, .12);--ing-glow-brand: 0 0 20px rgba(140, 198, 62, .25)}@media(prefers-reduced-motion:reduce){:root{--ing-motion-fast: 0ms;--ing-motion-base: 0ms;--ing-motion-slow: 0ms}}*,*:before,*:after{box-sizing:border-box}*{margin:0}html,body{height:100%}body{line-height:var(--ing-lh-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit;color:inherit}button{background:none;border:none;cursor:pointer;padding:0}a{color:inherit;text-decoration:none}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}#root,#__next{isolation:isolate}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--ing-border);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--ing-border-hi)}::selection{background:var(--ing-brand-green);color:var(--ing-on-brand)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--ing-space-2);padding:0 var(--ing-space-5);min-height:44px;border-radius:var(--ing-radius-pill);font-family:var(--ing-font-sans);font-size:var(--ing-font-sm);font-weight:600;line-height:1;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--ing-motion-fast),color var(--ing-motion-fast),transform var(--ing-motion-fast),box-shadow var(--ing-motion-fast);outline:none}.btn:focus-visible{outline:2px solid var(--ing-brand-green);outline-offset:2px}.btn:disabled{opacity:.55;cursor:not-allowed}@media(min-width:1024px){.btn{min-height:40px}}.btn.btn-primary{background:var(--ing-brand-green);color:var(--ing-on-brand)}.btn.btn-primary:hover:not(:disabled){background:var(--ing-brand-green-hi);box-shadow:var(--ing-glow-brand)}.btn.btn-primary:active:not(:disabled){background:var(--ing-brand-green-lo);transform:translateY(1px)}.btn.btn-secondary{background:var(--ing-surface-2);color:var(--ing-text);border:1px solid var(--ing-border)}.btn.btn-secondary:hover:not(:disabled){background:var(--ing-surface-hi);border-color:var(--ing-border-hi)}.btn.btn-ghost{background:transparent;color:var(--ing-text-mut)}.btn.btn-ghost:hover:not(:disabled){background:var(--ing-surface-hi);color:var(--ing-text)}.btn.btn-danger{background:var(--ing-danger);color:#fff}.btn.btn-danger:hover:not(:disabled){filter:brightness(1.1)}.btn.btn-block{width:100%}.btn.btn-icon{padding:0;width:40px;height:40px;min-height:40px;border-radius:var(--ing-radius-md)}.btn.btn-xs{padding:2px 8px;font-size:11px;min-height:0}@media(min-width:1024px){.btn.btn-xs{min-height:0}}.field{display:flex;flex-direction:column;gap:var(--ing-space-1)}.field>label{font-size:var(--ing-font-xs);color:var(--ing-text-mut);font-weight:500}.field>.field-hint{font-size:11px;color:var(--ing-text-dim)}.field>.field-hint.is-warning{color:var(--ing-warning);font-weight:600}.field>.field-error{font-size:11px;color:var(--ing-danger);display:flex;align-items:center;gap:var(--ing-space-1)}.input{display:block;width:100%;min-height:32px;padding:2px var(--ing-space-2);border-radius:var(--ing-radius-sm);background:var(--ing-surface-2);border:1px solid var(--ing-border);color:var(--ing-text);font-family:var(--ing-font-sans);font-size:var(--ing-font-xs);line-height:1.2;transition:border-color var(--ing-motion-fast),background var(--ing-motion-fast),box-shadow var(--ing-motion-fast)}.input::placeholder{color:var(--ing-text-dim);font-size:var(--ing-font-xs)}.input:hover:not(:disabled){border-color:var(--ing-border-hi)}.input:focus{outline:none;border-color:var(--ing-brand-green);box-shadow:0 0 0 2px var(--ing-brand-green-soft)}.input:disabled{opacity:.55;cursor:not-allowed}.input.input-error{border-color:var(--ing-danger)}.input.input-error:focus{box-shadow:0 0 0 2px var(--ing-danger-soft)}textarea.input{min-height:48px;padding:6px var(--ing-space-2);line-height:var(--ing-lh-normal)}select.input{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ing-text-mut) 50%),linear-gradient(135deg,var(--ing-text-mut) 50%,transparent 50%);background-position:calc(100% - 12px) 50%,calc(100% - 8px) 50%;background-size:4px 4px,4px 4px;background-repeat:no-repeat;padding-right:var(--ing-space-6)}:where(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]):not([type=color]),select){min-height:32px;font-size:var(--ing-font-xs)}:where(textarea){min-height:48px;font-size:var(--ing-font-xs);line-height:var(--ing-lh-normal)}.card{background:var(--ing-surface-2);border:1px solid var(--ing-border);border-radius:var(--ing-radius-lg);padding:var(--ing-space-5);box-shadow:var(--ing-shadow-1)}@media(min-width:768px){.card{padding:var(--ing-space-6)}}.card>.card-header{display:flex;align-items:center;justify-content:space-between;gap:var(--ing-space-4);margin-bottom:var(--ing-space-4)}.card>.card-title{font-size:var(--ing-font-lg);font-weight:600;color:var(--ing-text)}.card>.card-subtitle{font-size:var(--ing-font-sm);color:var(--ing-text-mut)}.chip{display:inline-flex;align-items:center;gap:var(--ing-space-1);padding:3px var(--ing-space-3);border-radius:var(--ing-radius-pill);font-size:var(--ing-font-xs);font-weight:500;line-height:1.4;background:var(--ing-surface-hi);color:var(--ing-text-mut)}.chip.chip-brand{background:var(--ing-brand-green-soft);color:var(--ing-brand-green-hi)}.chip.chip-success{background:var(--ing-success-soft);color:var(--ing-success)}.chip.chip-warning{background:var(--ing-warning-soft);color:var(--ing-warning)}.chip.chip-danger{background:var(--ing-danger-soft);color:var(--ing-danger)}.chip.chip-info{background:var(--ing-info-soft);color:var(--ing-info)}.alert{padding:var(--ing-space-4);border-radius:var(--ing-radius-md);border:1px solid var(--ing-border);background:var(--ing-surface-2);color:var(--ing-text);font-size:var(--ing-font-sm);display:flex;gap:var(--ing-space-3)}.alert.alert-danger{border-color:var(--ing-danger);background:var(--ing-danger-soft);color:var(--ing-danger)}.alert.alert-warning{border-color:var(--ing-warning);background:var(--ing-warning-soft);color:var(--ing-warning)}.alert.alert-success{border-color:var(--ing-success);background:var(--ing-success-soft);color:var(--ing-success)}.alert.alert-info{border-color:var(--ing-info);background:var(--ing-info-soft);color:var(--ing-info)}.has-tooltip{position:relative}.has-tooltip[data-tooltip]:after{content:attr(data-tooltip);position:absolute;white-space:nowrap;padding:6px 10px;background:var(--ing-surface-2);color:var(--ing-text);border:1px solid var(--ing-border);border-radius:var(--ing-radius-sm);font-size:12px;font-weight:500;box-shadow:var(--ing-shadow-2);opacity:0;pointer-events:none;transition:opacity .12s ease,transform .12s ease;z-index:60}.has-tooltip[data-tooltip]:before{content:"";position:absolute;width:0;height:0;opacity:0;pointer-events:none;transition:opacity .12s ease,transform .12s ease;z-index:60}.has-tooltip[data-tooltip]:hover:after,.has-tooltip[data-tooltip]:focus-visible:after,.has-tooltip[data-tooltip]:hover:before,.has-tooltip[data-tooltip]:focus-visible:before{opacity:1}.has-tooltip.tooltip-left[data-tooltip]:after{right:calc(100% + 10px);top:50%;transform:translateY(-50%) translate(4px)}.has-tooltip.tooltip-left[data-tooltip]:before{right:calc(100% + 4px);top:50%;transform:translateY(-50%) translate(4px);border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:6px solid var(--ing-border)}.has-tooltip.tooltip-left[data-tooltip]:hover:after,.has-tooltip.tooltip-left[data-tooltip]:focus-visible:after,.has-tooltip.tooltip-left[data-tooltip]:hover:before,.has-tooltip.tooltip-left[data-tooltip]:focus-visible:before{transform:translateY(-50%) translate(0)}.has-tooltip.tooltip-right[data-tooltip]:after{left:calc(100% + 10px);top:50%;transform:translateY(-50%) translate(-4px)}.has-tooltip.tooltip-right[data-tooltip]:before{left:calc(100% + 4px);top:50%;transform:translateY(-50%) translate(-4px);border-top:5px solid transparent;border-bottom:5px solid transparent;border-right:6px solid var(--ing-border)}.has-tooltip.tooltip-right[data-tooltip]:hover:after,.has-tooltip.tooltip-right[data-tooltip]:focus-visible:after,.has-tooltip.tooltip-right[data-tooltip]:hover:before,.has-tooltip.tooltip-right[data-tooltip]:focus-visible:before{transform:translateY(-50%) translate(0)}.has-tooltip.tooltip-top[data-tooltip]:after{bottom:calc(100% + 10px);left:50%;transform:translate(-50%) translateY(4px)}.has-tooltip.tooltip-top[data-tooltip]:before{bottom:calc(100% + 4px);left:50%;transform:translate(-50%) translateY(4px);border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid var(--ing-border)}.has-tooltip.tooltip-top[data-tooltip]:hover:after,.has-tooltip.tooltip-top[data-tooltip]:focus-visible:after,.has-tooltip.tooltip-top[data-tooltip]:hover:before,.has-tooltip.tooltip-top[data-tooltip]:focus-visible:before{transform:translate(-50%) translateY(0)}.has-tooltip.tooltip-bottom[data-tooltip]:after{top:calc(100% + 10px);left:50%;transform:translate(-50%) translateY(-4px)}.has-tooltip.tooltip-bottom[data-tooltip]:before{top:calc(100% + 4px);left:50%;transform:translate(-50%) translateY(-4px);border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:6px solid var(--ing-border)}.has-tooltip.tooltip-bottom[data-tooltip]:hover:after,.has-tooltip.tooltip-bottom[data-tooltip]:focus-visible:after,.has-tooltip.tooltip-bottom[data-tooltip]:hover:before,.has-tooltip.tooltip-bottom[data-tooltip]:focus-visible:before{transform:translate(-50%) translateY(0)}.page-head{margin-bottom:var(--ing-space-4)}.page-head h1{font-size:var(--ing-font-lg);font-weight:600;line-height:var(--ing-lh-tight)}.page-head p{color:var(--ing-text-mut);margin-top:var(--ing-space-2);font-size:var(--ing-font-xs)}.page-head .back{display:inline-flex;align-items:center;gap:4px;padding:6px 10px;font-size:var(--ing-font-xs);color:var(--ing-text-mut)}.page-head .back:hover{color:var(--ing-text)}html,body{background:var(--ing-bg);color:var(--ing-text);font-family:var(--ing-font-sans);font-size:var(--ing-font-base);line-height:var(--ing-lh-base);font-variant-numeric:tabular-nums}main.content>*,router-outlet+*{display:block}
