:root{--c-navy:#171c2c;--c-navy-light:#1e2a3a;--c-cream-light:#f0ebe3;--c-cream:#ede8e2;--c-card:#f5f1eb;--c-warm-white:#faf8f5;--c-hanji:#f5f0e8;--c-greige:#a9a196;--c-border:#d8d0c6;--c-wood:#c4a882;--c-wood-dark:#8b7355;--c-success:#6b765c;--c-success-bg:#6b765c1a;--c-warning:#b8863b;--c-warning-bg:#b8863b1a;--c-error:#a0422a;--c-error-bg:#a0422a14;--c-info:#5c6b7a;--c-info-bg:#5c6b7a14;--c-urgent:#dc2626;--c-urgent-bg:#fee2e2;--c-attention:#ea580c;--c-attention-bg:#ffedd5;--c-go:#16a34a;--c-go-bg:#dcfce7;--c-text:#2c2c2c;--c-text-2:#5f5a55;--c-text-3:#a9a196;--f-serif:"Noto Serif KR", serif;--f-sans:"Pretendard", -apple-system, sans-serif;--f-mono:"JetBrains Mono", monospace;--fs-xs:12px;--fs-sm:13px;--fs-body:14px;--fs-lg:16px;--fs-xl:19px;--sh-subtle:0 1px 3px #171c2c0a, 0 1px 2px #171c2c0f;--sh-card:0 2px 8px #171c2c0f, 0 1px 3px #171c2c0a;--sh-elevated:0 4px 16px #171c2c14, 0 2px 6px #171c2c0a;--sh-modal:0 12px 40px #171c2c1f, 0 4px 12px #171c2c0f;--r-card:12px;--r-button:10px;--r-input:8px;--r-pill:9999px;--ease:cubic-bezier(.4, 0, .2, 1)}.tabular{font-variant-numeric:tabular-nums}.serif{font-family:var(--f-serif)}.crm-page{background:var(--c-cream-light);min-height:100vh;font-family:var(--f-sans);color:var(--c-text)}.qlc-card{background:var(--c-card);border:1px solid var(--c-border);border-radius:var(--r-card);box-shadow:var(--sh-subtle);transition:box-shadow .2s var(--ease);padding:20px}.qlc-card.interactive{cursor:pointer}.qlc-card.interactive:hover{box-shadow:var(--sh-card)}.qlc-stat{background:var(--c-card);border:1px solid var(--c-border);border-radius:var(--r-card);box-shadow:var(--sh-subtle);transition:box-shadow .2s var(--ease), transform .2s var(--ease);padding:18px 20px}.qlc-stat.interactive{cursor:pointer}.qlc-stat.interactive:hover{box-shadow:var(--sh-card);transform:translateY(-1px)}.qlc-stat .lbl{color:var(--c-text-3);text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:500}.qlc-stat .val{font-family:var(--f-serif);color:var(--c-navy);font-variant-numeric:tabular-nums;margin-top:6px;font-size:28px;font-weight:700;line-height:1.2}.qlc-stat .sub{color:var(--c-text-2);margin-top:4px;font-size:12px}.qlc-section-title{font-family:var(--f-serif);color:var(--c-navy);letter-spacing:-.01em;font-size:18px;font-weight:700}.qlc-pill{border-radius:var(--r-pill);white-space:nowrap;align-items:center;gap:4px;padding:3px 10px;font-size:11.5px;font-weight:500;display:inline-flex}.qlc-pill.success{background:var(--c-success-bg);color:var(--c-success)}.qlc-pill.warning{background:var(--c-warning-bg);color:var(--c-warning)}.qlc-pill.error{background:var(--c-error-bg);color:var(--c-error)}.qlc-pill.info{background:var(--c-info-bg);color:var(--c-info)}.qlc-pill.neutral{color:var(--c-text-2);background:#a9a1961a}.qlc-pill.wood{color:var(--c-wood-dark);background:#c4a88226}.qlc-btn-primary{background:var(--c-navy);color:var(--c-cream);border-radius:var(--r-button);cursor:pointer;transition:background .2s var(--ease);border:none;padding:10px 20px;font-size:13.5px;font-weight:500}.qlc-btn-primary:hover{background:var(--c-navy-light)}.qlc-btn-secondary{color:var(--c-navy);border:1.5px solid var(--c-border);border-radius:var(--r-button);cursor:pointer;transition:all .2s var(--ease);background:0 0;padding:9px 18px;font-size:13.5px;font-weight:500}.qlc-btn-secondary:hover{border-color:var(--c-wood);color:var(--c-wood-dark)}.qlc-btn-sm{padding:6px 14px;font-size:12px}.qlc-btn-xs{padding:4px 10px;font-size:11.5px}.qlc-dialog .p-dialog{background:var(--c-warm-white);border-radius:var(--r-card);box-shadow:var(--sh-modal);border:1px solid var(--c-border)}.qlc-dialog .p-dialog-header{font-family:var(--f-serif);color:var(--c-navy);background:var(--c-warm-white);border-bottom:1px solid var(--c-border);letter-spacing:-.01em;padding:18px 24px;font-size:18px;font-weight:700}.qlc-dialog .p-dialog-content{background:var(--c-warm-white);font-family:var(--f-sans);color:var(--c-text);padding:22px 24px}.qlc-dialog .p-dialog-footer{background:var(--c-warm-white);border-top:1px solid var(--c-border);padding:14px 24px}.qlc-dialog .p-inputtext,.qlc-dialog .p-select,.qlc-dialog .p-datepicker-input,.qlc-dialog .p-textarea,.qlc-dialog .p-inputnumber-input{background:var(--c-cream-light);border:1px solid var(--c-border);color:var(--c-text);font-family:var(--f-sans)}.qlc-dialog .p-inputtext:focus,.qlc-dialog .p-select:focus-within,.qlc-dialog .p-textarea:focus{border-color:var(--c-navy);box-shadow:0 0 0 3px #171c2c14}.qlc-label{color:var(--c-text-2);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px;font-size:11px;font-weight:600;display:block}.crm-page .p-button:not(.p-button-text):not(.p-button-secondary):not(.p-button-outlined):not(.p-button-danger):not(.p-button-success):not(.p-button-info):not(.p-button-warn),.qlc-dialog .p-button:not(.p-button-text):not(.p-button-secondary):not(.p-button-outlined):not(.p-button-danger):not(.p-button-success):not(.p-button-info):not(.p-button-warn){background:var(--c-navy);color:var(--c-cream);border:1px solid var(--c-navy);font-family:var(--f-sans);border-radius:var(--r-button);box-shadow:none;transition:background .2s var(--ease), border-color .2s var(--ease);padding:9px 22px;font-size:13.5px;font-weight:500}.crm-page .p-button:not(.p-button-text):not(.p-button-secondary):not(.p-button-outlined):not(.p-button-danger):not(.p-button-success):not(.p-button-info):not(.p-button-warn):hover,.qlc-dialog .p-button:not(.p-button-text):not(.p-button-secondary):not(.p-button-outlined):not(.p-button-danger):not(.p-button-success):not(.p-button-info):not(.p-button-warn):hover{background:var(--c-navy-light);border-color:var(--c-navy-light)}.crm-page .p-button:disabled,.qlc-dialog .p-button:disabled{opacity:.55;cursor:not-allowed;background:var(--c-greige)!important;color:var(--c-cream)!important;border-color:var(--c-greige)!important}.crm-page .p-button-loading-icon,.qlc-dialog .p-button-loading-icon{color:var(--c-cream)}.crm-page .p-button.p-button-secondary.p-button-text,.qlc-dialog .p-button.p-button-secondary.p-button-text{color:var(--c-text-2);background:0 0;border:none;font-weight:500}.crm-page .p-button.p-button-secondary.p-button-text:hover,.qlc-dialog .p-button.p-button-secondary.p-button-text:hover{color:var(--c-navy);background:#c4a88214}.crm-page .p-button.p-button-outlined,.qlc-dialog .p-button.p-button-outlined{color:var(--c-text-2);border:1px solid var(--c-border);background:0 0;font-weight:500}.crm-page .p-button.p-button-outlined:hover,.qlc-dialog .p-button.p-button-outlined:hover{border-color:var(--c-wood);color:var(--c-wood-dark);background:#c4a88214}.crm-page .p-inputnumber,.crm-page .p-select,.crm-page .p-datepicker,.qlc-dialog .p-inputnumber,.qlc-dialog .p-select,.qlc-dialog .p-datepicker,.qlc-dialog .p-multiselect,.qlc-dialog .p-cascadeselect{width:100%;display:flex}.crm-page .p-inputtext:focus,.crm-page .p-inputnumber-input:focus,.crm-page .p-select:focus-within,.crm-page .p-select.p-focus,.crm-page .p-datepicker-input:focus,.crm-page .p-textarea:focus,.qlc-dialog .p-inputtext:focus,.qlc-dialog .p-inputnumber-input:focus,.qlc-dialog .p-select:focus-within,.qlc-dialog .p-select.p-focus,.qlc-dialog .p-datepicker-input:focus,.qlc-dialog .p-textarea:focus,.qlc-dialog .p-autocomplete-input:focus{border-color:var(--c-navy)!important;outline:none!important;box-shadow:0 0 0 3px #171c2c14!important}.p-select-overlay .p-select-option.p-select-option-selected,.p-select-overlay .p-select-option.p-focus,.p-select-overlay .p-select-option:hover,.p-autocomplete-overlay .p-autocomplete-option.p-focus,.p-autocomplete-overlay .p-autocomplete-option:hover{background:var(--c-cream)!important;color:var(--c-navy)!important}.crm-page .p-checkbox.p-checkbox-checked .p-checkbox-box,.crm-page .p-checkbox-checked .p-checkbox-box,.qlc-dialog .p-checkbox.p-checkbox-checked .p-checkbox-box,.qlc-dialog .p-checkbox-checked .p-checkbox-box{background:var(--c-navy);border-color:var(--c-navy)}.crm-page .p-checkbox.p-focus .p-checkbox-box,.qlc-dialog .p-checkbox.p-focus .p-checkbox-box{border-color:var(--c-navy);box-shadow:0 0 0 3px #171c2c1a}.crm-page .p-tabs .p-tab.p-tab-active,.crm-page .p-tablist .p-tab-active{color:var(--c-navy);border-color:var(--c-navy)}.crm-page .p-tabs .p-tablist-active-bar{background:var(--c-navy)!important}.crm-page .p-datatable .p-datatable-thead>tr>th{background:var(--c-cream);color:var(--c-text-2);border:none;border-bottom:2px solid var(--c-border);padding:12px 14px;font-size:12px;font-weight:600}.crm-page .p-datatable .p-datatable-tbody>tr{background:var(--c-card);transition:background .15s var(--ease)}.crm-page .p-datatable .p-datatable-tbody>tr>td{border:none;border-bottom:1px solid var(--c-cream);color:var(--c-text);padding:12px 14px;font-size:13px}.crm-page .p-datatable .p-datatable-tbody>tr:hover{background:#c4a8820d!important}.crm-page .p-datatable .p-datatable-tbody>tr:last-child>td{border-bottom:none}.qlc-dialog .lc-box .p-inputtext,.qlc-dialog .lc-box .p-select,.qlc-dialog .lc-box .p-datepicker-input,.qlc-dialog .lc-box .p-inputnumber-input,.qlc-dialog .meta-box .p-inputtext,.qlc-dialog .meta-box .p-select,.qlc-dialog .meta-box .p-datepicker-input,.qlc-dialog .meta-box .p-inputnumber-input{background:var(--c-warm-white);border-color:var(--c-border)}.qlc-dialog .p-button:not(.p-button-text):not(.p-button-secondary):not(.p-button-outlined):not(.p-button-danger){background:var(--c-navy);color:var(--c-cream);border:1px solid var(--c-navy);font-family:var(--f-sans);border-radius:var(--r-button);box-shadow:none;transition:background .2s var(--ease);padding:9px 22px;font-size:13.5px;font-weight:500}.qlc-dialog .p-button:not(.p-button-text):not(.p-button-secondary):not(.p-button-outlined):not(.p-button-danger):hover{background:var(--c-navy-light);border-color:var(--c-navy-light)}.qlc-dialog .p-button:disabled{opacity:.6;cursor:not-allowed;background:var(--c-greige)!important;color:var(--c-cream)!important;border-color:var(--c-greige)!important}.qlc-dialog .p-button-loading-icon{color:var(--c-cream)}.qlc-dialog .p-button.p-button-secondary.p-button-text{color:var(--c-text-2);background:0 0;border:none;font-weight:500}.qlc-dialog .p-button.p-button-secondary.p-button-text:hover{color:var(--c-navy);background:#c4a88214}.qlc-dialog .p-inputnumber,.qlc-dialog .p-select,.qlc-dialog .p-datepicker,.qlc-dialog .p-multiselect,.qlc-dialog .p-cascadeselect{width:100%;display:flex}.qlc-dialog .p-inputnumber>.p-inputnumber-input,.qlc-dialog .p-inputnumber>.p-inputtext{box-sizing:border-box;width:100%}.qlc-dialog .p-inputtext,.qlc-dialog .p-select,.qlc-dialog .p-datepicker-input,.qlc-dialog .p-textarea,.qlc-dialog .p-inputnumber-input{border-radius:var(--r-input);min-height:38px;padding:8px 12px;font-size:13.5px}.qlc-dialog .p-inputnumber-input:focus,.qlc-dialog .p-select.p-focus,.qlc-dialog .p-datepicker-input:focus{border-color:var(--c-navy);outline:none;box-shadow:0 0 0 3px #171c2c14}.qlc-dialog .p-checkbox.p-checkbox-checked .p-checkbox-box,.qlc-dialog .p-checkbox-checked .p-checkbox-box{background:var(--c-navy);border-color:var(--c-navy)}.qlc-dialog .p-checkbox.p-focus .p-checkbox-box{border-color:var(--c-navy);box-shadow:0 0 0 3px #171c2c1a}.qlc-dialog .lc-box .p-inputtext,.qlc-dialog .lc-box .p-select,.qlc-dialog .lc-box .p-datepicker-input,.qlc-dialog .lc-box .p-inputnumber-input,.qlc-dialog .meta-box .p-inputtext,.qlc-dialog .meta-box .p-select,.qlc-dialog .meta-box .p-datepicker-input,.qlc-dialog .meta-box .p-inputnumber-input,.qlc-dialog .auto-sched-box .p-inputtext,.qlc-dialog .auto-sched-box .p-datepicker-input{background:var(--c-warm-white);border-color:var(--c-border)}
