














:root {
   
  --nu-primary:         #2563EB;    
  --nu-primary-dark:    #1D4ED8;    
  --nu-primary-light:   #6AA0FF;    
  --nu-primary-lightest:#A9C6F7;    
  --nu-primary-darkest: #1E4FA8;    
  

  --nu-primary-deep:    #1E4FA8;    
  --nu-brand-text:      #1E4FA8;    
  --nu-primary-tint:    #E9F1FE;    
  --nu-primary-tint-2:  #DCE9FD;    
  --nu-primary-selection:#C7DBFB;   
  --nu-gradient: linear-gradient(135deg, var(--nu-primary), var(--nu-primary-deep));

   
  --nu-page:         #F4F5F7;    
  

  --nu-board:        #CAD0D8;    
  --nu-card:         #FFFFFF;    
  


  --nu-card-2:       var(--nu-card);
  --nu-hover:        #EEF1F6;    
  --nu-row-alt:      #FAFBFC;    
  --nu-surface-2:    #EEF0F4;    
  --nu-surface-3:    #E4E7ED;    
  --nu-surface-4:    #D5DAE3;    
  --nu-border:       #E4E7ED;
  --nu-border-l:     #EEF0F4;    
  --nu-border-strong:#C3CCD8;
  --nu-txt1:         #111827;    
  --nu-txt2:         #374151;    
  --nu-txt3:         #4E5764;    
  --nu-txt4:         #9CA3AF;    
  --nu-txt-disabled: #B8B8B8;
  --nu-on-accent:    #FFFFFF;    
  --nu-ink:          #000000;    

  


  --nu-success: #059669;  --nu-success-light: #D1FAE5;  --nu-success-text: #065F46;
  --nu-success-light-2: #DCFCE7;  --nu-success-soft: #22C55E;  --nu-success-border: #B8D8B8;
  --nu-warning: #D97706;  --nu-warning-light: #FEF3C7;  --nu-warning-text: #92400E;
  --nu-warning-light-2: #FFF3D6;  --nu-warning-light-3: #FBF0DC;
  --nu-warning-border: #F0C675;   --nu-warning-border-2: #EBD9AE;
  --nu-warning-soft: #F5B301;     --nu-warning-text-2: #A36200;
  --nu-alert:   #DC2626;  --nu-alert-light:   #FEE2E2;  --nu-alert-text:   #991B1B;
  --nu-alert-light-2: #FDF1F1;  --nu-alert-border: #F0B8B8;  --nu-alert-text-2: #7A1A1A;
  --nu-info:    #2563EB;  --nu-info-light:    #DBEAFE;  --nu-info-text:    #1E40AF;
  --nu-info-border: #BCD9EF;

   
  






  --nu-font: 'Pretendard Variable', 'Pretendard', 'Noto Sans KR', 'Malgun Gothic', '맑은 고딕',
             -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
   
  --brand-ci:      #ED1C24;
  --brand-ci-dark: #7F0F1A;

   
  --nu-elev-low:     0 2px 4px 0 rgba(0,0,0,0.08);
  --nu-elev-medium:  0 4px 8px 0 rgba(0,0,0,0.12);
  --nu-elev-high:    0 8px 16px 0 rgba(0,0,0,0.16);
  --nu-elev-highest: 0 16px 32px 0 rgba(0,0,0,0.20);

  

  --mx-lift: 0 1px 3px rgba(17, 24, 39, .16), 0 6px 18px rgba(17, 24, 39, .12);    
  

  --mx-card-edge: #98A1B0;
  


  --mx-line-row:  #8B95A6;
  --mx-line-col:  #7E899C;
  --mx-line-head: #5E6C84;
  


  

  --mx-th-theme: #2B4166;
  --mx-th-bg:   var(--mx-th-theme);
  --mx-th-fg:   #FFFFFF;
  --mx-th-w:    600;
  --mx-th-line: var(--mx-th-theme);
  --mx-sum-bg:  #DFE3E8;
  --mx-sum-fg:  #111827;
  --mx-sum-edge: var(--mx-th-theme);
   
  --mx-folder-line:    var(--mx-th-theme);
  --mx-folder-off-bg:  #E7EAED;
  --mx-folder-off-edge: var(--mx-btn-edge, #98A1B0);
   
  --mx-th-fg-root:   var(--mx-th-fg);
  --mx-th-line-root: var(--mx-th-line);
  --mx-sumc-bg:      var(--mx-sum-bg);
  

  --mx-cv-plan:     #849ABE;
  --mx-cv-plan-fg:  #111827;
  --mx-cv-stock:    #E5E8ED;
  --mx-cv-stock-fg: #374151;
  


  --mx-btn-edge:        var(--mx-card-edge);    
  --mx-raise:           0 1px 3px rgba(17, 24, 39, .16), 0 4px 10px rgba(17, 24, 39, .10);
  --mx-raise-hover:     0 2px 4px rgba(17, 24, 39, .18), 0 8px 18px rgba(17, 24, 39, .14);
  --mx-raise-press:     0 1px 2px rgba(17, 24, 39, .14);
  --mx-raise-grad:      none;    
  --mx-raise-grad-fill: none;    
  --mx-sink:            inset 0 1px 2px rgba(17, 24, 39, .08);    

   
  --nu-op-disabled: 0.5;    
  --nu-op-medium:   0.48;
  --nu-op-scrim:    0.72;

  










  --nav-ico:        16px;   
  --nav-ico-gap:    7px;    
  --nav-sub-line:   14px;   
  --nav-sub-indent: 25px;   
  --topbar-h:       44px;   

   
  --nu-r-small:  4px;
  --nu-r-medium: 8px;
  --nu-r-large:  12px;
  --nu-r-xl:     16px;
  --nu-r-xxl:    24px;
  --nu-r-pill:   999px;

   
  --nu-s-quarck: 4px;   --nu-s-nano: 8px;   --nu-s-xxxs: 12px; --nu-s-xxs: 16px;
  --nu-s-xs:     24px;  --nu-s-sm:   32px;  --nu-s-md:   40px; --nu-s-lg:  48px;
  --nu-s-xl:     56px;  --nu-s-xxl:  64px;  --nu-s-xxxl: 80px;

  

  --jv-page:          var(--nu-page);
  --jv-card:          var(--nu-card);
  --jv-hover:         var(--nu-hover);
  --jv-border:        var(--nu-border);
  --jv-border-l:      var(--nu-border-l);
  --jv-border-strong: var(--nu-border-strong);
  --jv-txt1:          var(--nu-txt1);
  --jv-txt2:          var(--nu-txt2);
  --jv-txt3:          var(--nu-txt3);
  --jv-txt4:          var(--nu-txt4);
  --jv-primary:       var(--nu-primary);
  --jv-primary-hover: var(--nu-primary-dark);
  --jv-primary-light: var(--nu-primary-tint);
  --jv-primary-mid:   var(--nu-primary-lightest);
  --jv-success:       var(--nu-success);  --jv-success-light: var(--nu-success-light);  --jv-success-text: var(--nu-success-text);
  --jv-warning:       var(--nu-warning);  --jv-warning-light: var(--nu-warning-light);  --jv-warning-text: var(--nu-warning-text);
  --jv-danger:        var(--nu-alert);    --jv-danger-light:  var(--nu-alert-light);    --jv-danger-text:  var(--nu-alert-text);
  --jv-info:          var(--nu-info);     --jv-info-light:    var(--nu-info-light);     --jv-info-text:    var(--nu-info-text);
   
  --jv-violet:        var(--nu-primary-light);  --jv-violet-light: var(--nu-primary-tint);  --jv-violet-text: var(--nu-brand-text);
  --jv-shadow:        0 1px 3px 0 rgba(0,0,0,0.06), 0 0 0 1px rgba(0,0,0,0.03);

   
  --bg:           var(--nu-page);
  --panel:        var(--nu-card);
  --border:       var(--nu-border);
  --sidebar:      var(--nu-card);
  --header:       var(--nu-card);
  --text:         var(--nu-txt1);
  --muted:        var(--nu-txt3);
  --accent:       var(--nu-alert);
  --accent2:      var(--nu-warning);
  --accent3:      var(--nu-success);
  --accent4:      var(--nu-primary);
  --row-alt:      var(--nu-row-alt);
  --row-hover:    var(--nu-hover);
  --th-bg:        var(--mx-th-bg);     
  --th-text:      var(--mx-th-fg);
  --shadow:       var(--jv-shadow);
  --shadow-lg:    var(--nu-elev-medium);

  

  --chart-axis-tick:   var(--nu-txt3);
  --chart-axis-legend: var(--nu-txt2);
  --chart-grid:        rgba(0,0,0,0.06);
  --chart-track:       var(--nu-surface-2);
  --chart-1: #820AD1;  --chart-2: #00897B;  --chart-3: #C77700;  --chart-4: #1668D6;
  --chart-5: #957E23;  --chart-6: #D6336C;  --chart-7: #6E9B00;  --chart-8: #B5432B;
  --chart-other: #8C8C8C;

  



  --chart-area-alpha:       0.12;    
  --chart-ghost:            #820AD1; 
  --chart-ghost-alpha:      0.20;    
  --chart-ghost-line-alpha: 0.45;    

  








  --mx-btn-radius:      var(--nu-r-medium);
  --mx-btn-pad-y:       8px;
  --mx-btn-pad-x:       16px;
  --mx-btn-font-size:   13.5px;
  --mx-btn-weight:      600;
  --mx-btn-min-h:       34px;
  --mx-btn-gap:         7px;       

  --mx-btn-xs-radius:   var(--nu-r-small);
  --mx-btn-xs-pad-y:    3px;
  --mx-btn-xs-pad-x:    9px;
  --mx-btn-xs-font-size: 11.5px;
  --mx-btn-xs-min-h:    22px;

  --mx-btn-sm-radius:   6px;
  --mx-btn-sm-pad-y:    5px;
  --mx-btn-sm-pad-x:    12px;
  --mx-btn-sm-font-size: 12.5px;
  --mx-btn-sm-min-h:    28px;

  


  --mx-ctl-h:            28px;
  --mx-ctl-font-size:    12.5px;
  --mx-ctl-radius:       6px;
  --mx-ctl-pad-x:        8px;
  --mx-ctl-border:       var(--mx-btn-edge, var(--jv-border-strong));    
  --mx-ctl-border-hover: var(--jv-txt3);
  --mx-ctl-label-size:   11.5px;
  --mx-ctl-label-weight: 500;
  --mx-ctl-label-color:  var(--jv-txt3);
  --mx-ctl-label-gap:    3px;
  --mx-ctl-icon-gap:     18px;      
  

  --mx-ctl-cell-h:         24px;
  --mx-ctl-cell-font-size: 12.5px;
  --mx-ctl-cell-pad-x:     6px;
  --mx-ctl-cell-radius:    4px;
  --mx-form-col:         150px;     
  --mx-form-col-inline:  240px;     
  --mx-form-label:       96px;      
  --mx-cal-sun:          var(--jv-danger-text);    
  --mx-cal-sat:          var(--jv-info-text);      

  --mx-btn-lg-pad-y:    12px;
  --mx-btn-lg-pad-x:    24px;
  --mx-btn-lg-font-size: 15px;
  --mx-btn-lg-min-h:    44px;      

  --mx-btn-fill:        var(--nu-primary);         
  --mx-btn-fill-hover:  var(--nu-primary-dark);
}














 
:root[data-btn="pill"] {
  --mx-btn-radius:    var(--nu-r-pill);
  --mx-btn-xs-radius: var(--nu-r-pill);
  --mx-btn-sm-radius: var(--nu-r-pill);
}

 
:root[data-btn="square"] {
  --mx-btn-radius:    var(--nu-r-small);
  --mx-btn-sm-radius: var(--nu-r-small);
  --mx-btn-pad-y:     6px;
  --mx-btn-pad-x:     14px;
  --mx-btn-font-size: 13px;
  --mx-btn-min-h:     30px;
}

 
:root[data-btn="touch"] {
  --mx-btn-pad-y:     12px;
  --mx-btn-pad-x:     22px;
  --mx-btn-font-size: 15px;
  --mx-btn-min-h:     44px;
  --mx-btn-sm-pad-y:  9px;
  --mx-btn-sm-pad-x:  18px;
  --mx-btn-sm-font-size: 14px;
  --mx-btn-sm-min-h:  40px;
}

 

 
:root[data-btnfx="flat"] {
  --mx-raise: none; --mx-raise-hover: none; --mx-raise-press: none; --mx-raise-grad: none; --mx-raise-grad-fill: none; --mx-sink: none;
}



:root[data-ctl="inline"] {
  --mx-ctl-h:            30px;
  --mx-ctl-font-size:    13px;
  --mx-ctl-radius:       var(--nu-r-medium);
  --mx-ctl-pad-x:        10px;
  --mx-ctl-border:       var(--jv-border);
  --mx-ctl-border-hover: var(--jv-border-strong);
  --mx-ctl-label-size:   12.5px;
  --mx-ctl-label-weight: 400;
  --mx-ctl-label-color:  var(--jv-txt2);
  --mx-ctl-label-gap:    6px;
  --mx-btn-sm-min-h:     30px;
  --mx-btn-sm-radius:    var(--nu-r-medium);
  --mx-btn-sm-font-size: 13px;
}
