.auth-root{position:relative;min-height:100vh;display:flex;align-items:stretch;justify-content:center;background:radial-gradient(circle at top left,rgba(37,99,235,.18) 0,transparent 55%),radial-gradient(circle at bottom right,rgba(34,197,94,.18) 0,transparent 55%),var(--bg);color:var(--text);font-family:var(--font)}.auth-bg{position:absolute;inset:0;opacity:.35;background-image:linear-gradient(120deg,rgba(209,213,219,.35) 1px,transparent 1px),linear-gradient(0deg,rgba(226,232,240,.4) 1px,transparent 1px);background-size:42px 42px;pointer-events:none}.auth-shell{position:relative;z-index:1;width:100%;max-width:480px;margin-inline:16px;display:flex;align-items:center;justify-content:center}.auth-panel{width:100%;padding:32px 32px 28px;border-radius:18px;background:linear-gradient(145deg,#fff,#f9fbff);box-shadow:0 18px 40px #94a3b873;border:1px solid rgba(209,213,219,.95)}.auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:20px}.auth-logo-circle{width:40px;height:40px;border-radius:999px;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 30% 0,#eff6ff,var(--primary));color:#0f172a;font-weight:800;font-size:20px;letter-spacing:.06em}.auth-brand-text{display:flex;flex-direction:column;gap:2px}.auth-brand-name{font-size:17px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#111827}.auth-brand-sub{font-size:12px;color:var(--muted)}.auth-headline h1{margin:0;font-size:22px;font-weight:700;color:#111827}.auth-headline p{margin:6px 0 0;font-size:13px;color:var(--muted)}.auth-form{margin-top:24px;display:flex;flex-direction:column;gap:16px}.auth-field{display:flex;flex-direction:column;gap:6px}.auth-field label{font-size:13px;font-weight:500;color:#374151}.auth-field input{height:42px;padding:0 12px;border-radius:10px;border:1px solid #d1d5db;background:#fff;color:#111827;font-size:14px;outline:none;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease,transform .05s ease}.auth-field input::placeholder{color:#9ca3af}.auth-field input:focus{border-color:var(--primary);background:#f9fbff;box-shadow:0 0 0 1px #2563eba6,0 0 0 6px #bfdbfee6;transform:translateY(-.5px)}.auth-actions{margin-top:4px}.auth-button{width:100%;height:44px;border-radius:999px;border:none;outline:none;cursor:pointer;font-size:15px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;background-color:#2563eb;color:#fff;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 10px 22px #2563eb59;transition:transform .12s ease,box-shadow .12s ease,background-color .12s ease,filter .12s ease}.auth-button:hover{background-color:#1d4ed8;transform:translateY(-1px);box-shadow:0 14px 30px #2563eb73;filter:brightness(1.02)}.auth-button:active{background-color:#1d4ed8;transform:translateY(0);box-shadow:0 6px 16px #0f172a40;filter:brightness(.98)}.auth-footer-text{margin-top:18px;font-size:12px;line-height:1.5;color:var(--muted);text-align:center}@media(max-width:480px){.auth-panel{padding:24px 20px 22px}.auth-headline h1{font-size:20px}}.dashboard-root{flex:1;height:100%;display:flex;justify-content:flex-start;align-items:stretch;box-sizing:border-box;overflow:auto}.dashboard-inner{width:100%;max-width:1200px;display:flex;flex-direction:column;gap:16px;flex:1;min-height:0}.dashboard-row{display:flex;gap:16px;flex:1 1 0;min-height:0}.dashboard-row>:first-child{flex:2 1 0;min-width:0;min-height:0;display:flex;flex-direction:column}.dashboard-row>:last-child{flex:1.3 1 0;min-width:0;min-height:0;display:flex;flex-direction:column}.dash-card{background:#fff;border-radius:16px;padding:20px;box-shadow:0 8px 20px #94a3b859}.dash-card-memo{padding:16px 18px;display:flex;flex-direction:column;gap:6px}.dash-card-calendar{margin-top:4px;display:flex;flex-direction:column;min-height:0}.dash-card-greeting{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.dash-greet-title{margin:0;font-size:20px;font-weight:700;color:#2563eb}.dash-greet-sub{margin:0;font-size:14px;color:#374151}.dash-btn-atten,.dash-btn-leave{padding:8px 18px;border-radius:999px;border:1px solid #2563eb;font-weight:600;font-size:14px;background:#fff;color:#2563eb;cursor:pointer;transition:background-color .15s ease,color .15s ease,box-shadow .15s ease,transform .05s ease}.dash-btn-atten:disabled,.dash-btn-leave:disabled{opacity:.6;cursor:default;box-shadow:none}.dash-btn-atten:hover:not(:disabled){background:#2563eb;color:#fff;box-shadow:0 6px 14px #2563eb59;transform:translateY(-1px)}.dash-btn-leave{background:#fee2e2;border-color:#f97373;color:#b91c1c}.dash-btn-leave:hover:not(:disabled){background:#fca5a5;color:#7f1d1d;box-shadow:0 6px 14px #ef444459;transform:translateY(-1px)}.dash-card-title{margin:0 0 6px;font-size:16px;font-weight:600;color:#111827}.dash-card-desc{margin:0 0 10px;font-size:12px;color:#6b7280}.dash-memo-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px;font-size:13px}.dash-memo-type{display:flex;gap:6px;font-weight:600}.dash-memo-type label{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:999px;background:#f3f4f7;cursor:pointer;font-size:12px;color:#4b5563}.dash-memo-type input[type=radio]{width:13px;height:13px}.dash-memo-target select{height:30px;padding:0 8px;border-radius:6px;border:1px solid #d0d4da;background:#fff;font-size:13px;color:#111827;min-width:140px}.dash-memo-filter-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px;font-size:12px;color:#6b7280}.dash-memo-filter-label{font-weight:500}.dash-memo-filter-reset{padding:2px 10px;border-radius:999px;border:1px solid #e5e7eb;background:#f9fafb;font-size:11px;cursor:pointer}.dash-memo-filter-reset:disabled{opacity:.5;cursor:default}.dash-memo-filter-reset:not(:disabled):hover{background:#eff6ff;border-color:#bfdbfe;color:#2563eb}.dash-memo-form{display:flex;gap:8px;margin-bottom:8px}.dash-memo-input{flex:1;padding:8px 10px;border:1px solid #d0d4da;border-radius:6px;font-size:14px;transition:border-color .15s}.dash-memo-input:focus{border-color:#4c8bf5;outline:none}.dash-memo-add-btn{padding:0 14px;background:#4c8bf5;color:#fff;font-size:14px;border-radius:6px;border:none;cursor:pointer;transition:background .15s;white-space:nowrap}.dash-memo-add-btn:disabled{background:#b8c4d8}.dash-memo-add-btn:hover:not(:disabled){background:#3e76da}.dash-memo-error{margin-bottom:4px;font-size:12px;color:#e11d48}.dash-memo-list{list-style:none;padding:0;margin:0;height:100%;overflow-y:auto;flex:1}.dash-memo-item{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:6px 0;border-bottom:1px solid #e5e7eb}.dash-memo-text{font-size:12px;color:#111827;display:flex;flex-wrap:wrap;gap:4px;row-gap:2px}.dash-memo-tag{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:#64748b}.dash-memo-content{color:#111827;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.dash-memo-user{margin-left:4px;color:#9ca3af}.dash-memo-empty{padding:8px 0;font-size:12px;color:#9ca3af}.dash-memo-main{flex:1;min-width:0}.dash-memo-meta{display:flex;align-items:center;gap:6px;margin-left:8px;white-space:nowrap}.dash-memo-date{font-size:11px;color:#9ca3af;margin-left:0}.dash-memo-complete{border-radius:999px;border:1px solid #2563eb;background:#fff;color:#2563eb;font-size:11px;padding:4px 10px;cursor:pointer;transition:background-color .15s ease,color .15s ease,box-shadow .15s ease}.dash-memo-complete:hover{background:#2563eb;color:#fff;box-shadow:0 4px 10px #2563eb59}.dash-calendar-wrap{flex:1;min-height:0;overflow:auto;margin-top:8px}.dash-card-calendar .fc{height:100%;font-size:12px}.dash-card-calendar .koHolidays{font-weight:600;border-radius:6px}.dash-card-calendar .fc-col-header-cell.fc-day-sun .fc-col-header-cell-cushion{color:#ef4444}.dash-card-calendar .fc-col-header-cell.fc-day-sat .fc-col-header-cell-cushion{color:#2563eb}.dash-card-calendar .fc-daygrid-day.fc-day-sun{background-color:#fef2f2}.dash-card-calendar .fc-daygrid-day.fc-day-sat{background-color:#eff6ff}.fc .fc-daygrid-day-top{display:flex;flex-direction:row;align-items:center}.fc .fc-daygrid-day-number{margin-left:auto}.fc-memo-badge-inline{margin:4px;display:inline-block;padding:1px 6px;border-radius:999px;background:#2563eb;color:#fff;font-size:10px;white-space:nowrap}.dash-att-row{margin-top:12px;display:flex;align-items:center;justify-content:space-between;gap:12px}.dash-att-meta{display:flex;gap:8px;flex-wrap:wrap}.dash-att-chip{display:inline-flex;align-items:center;height:28px;padding:0 10px;border-radius:999px;border:1px solid #e2e8f0;background:#f8fafc;font-size:13px}.dash-att-btn{height:36px;padding:0 14px;border-radius:10px;border:1px solid #0f172a;background:#0f172a;color:#fff;font-weight:700;cursor:pointer}.dash-att-btn:disabled{opacity:.6;cursor:not-allowed}.layout-content-full{padding:0!important}.as-page{height:100%;min-height:0;display:flex;flex-direction:column;background:#fff}.as-top{flex:0 0 auto;padding:12px 12px 8px;border-bottom:1px solid #e5e7eb;background:#fff}.as-search{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center}.as-input{height:46px;border-radius:12px;border:1px solid #d1d5db;padding:10px 12px;font-size:16px;outline:none}.as-input:focus{border-color:#111827;box-shadow:0 0 0 3px #1118271f}.as-btn{height:46px;padding:0 14px;border-radius:12px;border:1px solid transparent;font-size:15px;font-weight:800;cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.as-btn:active{transform:scale(.99)}.as-btn-dark{background:#111827;color:#fff}.as-btn-ghost{background:#fff;border-color:#d1d5db;color:#111827}.as-tabs-row{margin-top:10px;display:grid;grid-template-columns:1fr;gap:10px}.as-tabs{display:flex;gap:8px;flex-wrap:wrap}.as-tab{height:38px;padding:0 8px;border-radius:999px;border:1px solid #d1d5db;background:#fff;color:#111827;font-size:14px;font-weight:800;cursor:pointer;-webkit-tap-highlight-color:transparent}.as-tab.is-active{background:#111827;border-color:#111827;color:#fff}.as-counts{font-size:13px;color:#6b7280;line-height:1.2}.as-c{font-weight:800}.as-c0{color:#6b6b6b}.as-c1{color:#2563eb}.as-c2{color:#dc2626}.as-list{flex:1 1 auto;min-height:0;overflow:auto;padding:12px;background:#f9fafb}.as-items{display:grid;gap:12px}.as-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:12px;box-shadow:0 6px 16px #1118270a;cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.as-card:active{transform:scale(.995)}.as-row{display:grid;grid-template-columns:92px 1fr auto;gap:8px;align-items:start;padding:6px 0;border-bottom:1px dashed #eef2f7}.as-row:last-child{border-bottom:none}.as-th{font-size:14px;font-weight:900;color:#111827}.as-td{font-size:14px;color:#111827;line-height:1.35;word-break:break-word}.as-date{font-size:12px;color:#6b7280;white-space:nowrap;padding-top:2px}.as-td-wide{grid-column:2 / 4}.as-row-end{border-bottom:none;padding-top:10px}.as-comment-btn{margin-left:auto;height:42px;border-radius:12px;border:1px solid #d1d5db;background:#fff;color:#111827;font-size:14px;font-weight:900;padding:0 12px;cursor:pointer;display:inline-flex;align-items:center;gap:8px}.as-badge{min-width:26px;height:22px;border-radius:999px;background:#6b7280;color:#fff;font-size:12px;font-weight:900;display:inline-flex;align-items:center;justify-content:center;padding:0 6px}.is-hold{opacity:.55;filter:grayscale(.7);position:relative}.is-hold:after{content:"보류";position:absolute;top:12px;right:12px;background:#f59e0bf2;color:#111827;font-weight:900;padding:4px 10px;border-radius:999px;font-size:13px}.is-done{opacity:.55;position:relative}.is-done:after{content:"처리완료";position:absolute;top:12px;right:12px;background:#dc2626f2;color:#fff;font-weight:900;padding:4px 10px;border-radius:999px;font-size:13px}.as-hint{font-size:14px;color:#6b7280;margin-bottom:10px}.as-error{font-size:14px;color:#dc2626;font-weight:900;margin-bottom:10px}.as-empty{padding:16px;background:#fff;border:1px solid #e5e7eb;border-radius:14px;color:#6b7280;font-weight:800}.as-backdrop{position:fixed;inset:0;background:#00000094;z-index:9998}.as-modal{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:14px}.as-modal-panel{width:100%;max-width:760px;background:#fff;border-radius:18px;box-shadow:0 24px 60px #00000040;overflow:hidden}.as-modal-head{display:flex;align-items:center;justify-content:space-between;padding:14px;border-bottom:1px solid #e5e7eb}.as-modal-title{font-size:18px;font-weight:1000;color:#111827}.as-x{width:44px;height:44px;border-radius:12px;border:1px solid #e5e7eb;background:#fff;color:#111827;font-size:26px;line-height:1;cursor:pointer}.as-modal-body{padding:14px}.as-meta{border:1px solid #e5e7eb;background:#f9fafb;border-radius:14px;padding:12px;display:grid;gap:10px}.as-meta-row{display:grid;grid-template-columns:92px 1fr;gap:10px;align-items:start}.as-meta-k{font-size:14px;font-weight:1000;color:#111827}.as-meta-v{font-size:14px;color:#111827;word-break:break-word;line-height:1.35}.as-meta-content{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:10px}.as-actions{margin-top:14px;display:grid;grid-template-columns:1fr;gap:12px}.as-action{width:100%;height:72px;border-radius:18px;border:none;font-size:22px;font-weight:1000;cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.as-action:active{transform:scale(.995)}.as-action-call{background:#2563eb;color:#fff}.as-action-done{background:#f59e0b;color:#111827}.as-action-change{background-color:#0ea5e9;color:#fff}.as-replies{margin-top:16px}.as-replies-title{font-size:16px;font-weight:1000;color:#111827;margin-bottom:10px}.as-replies-box{max-height:240px;overflow:auto;border:1px solid #e5e7eb;border-radius:14px;background:#fff;padding:10px;display:grid;gap:10px}.as-reply{border:1px solid #f3f4f6;border-radius:12px;background:#f9fafb;padding:10px}.as-reply-head{font-size:12px;color:#6b7280;font-weight:900;margin-bottom:6px}.as-reply-body{font-size:14px;color:#111827;line-height:1.35;word-break:break-word}.as-modal-foot{padding:12px 14px 14px;border-top:1px solid #e5e7eb;background:#fff}.as-btn-wide{width:100%;height:52px;border-radius:14px;font-size:16px}.as-content{width:100%;min-height:96px;max-height:220px;resize:none;border:none;background:transparent;margin:0;font-size:14px;line-height:1.55;color:#0f172a;outline:none;box-shadow:none;overflow-y:auto;white-space:pre-wrap}.as-content::-webkit-scrollbar{width:6px}.as-content::-webkit-scrollbar-thumb{background:#00000026;border-radius:4px}.as-content::-webkit-scrollbar-track{background:transparent}.as-endcell{display:flex;justify-content:flex-end;align-items:center}.as-comment-input{width:100%;min-height:120px;resize:vertical;padding:10px 12px;border:1px solid #e5e7eb;border-radius:10px;outline:none;font-size:14px;line-height:1.4;background:#fff}.as-comment-actions{display:flex;justify-content:flex-end;margin-top:10px;gap:10px;flex-wrap:wrap}.as-cal{margin-top:12px;border:1px solid #e5e7eb;border-radius:12px;padding:12px;background:#fff}.as-cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.as-cal-title{font-weight:800}.as-cal-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-bottom:8px}.as-cal-w{font-size:12px;font-weight:800;color:#6b7280;text-align:center}.as-cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.as-cal-cell{border:1px solid #e5e7eb;border-radius:10px;min-height:72px;padding:10px;background:#fff;text-align:left;cursor:pointer}.as-cal-cell.is-empty{border:none;background:transparent;cursor:default}.as-cal-day{font-weight:900;font-size:13px;color:#111827;margin-bottom:6px}.as-cal-badge{display:inline-block;font-size:12px;font-weight:900;padding:6px 8px;border-radius:999px;background:#eef2ff;color:#1d4ed8}.as-state-line{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;width:100%}.as-state-main{flex:1 1 auto;min-width:0;line-height:1.4}.as-state-side{flex:0 0 auto;font-size:12px;font-weight:800;color:#6b7280;white-space:nowrap;text-align:right;padding-top:2px}.as-count-tabs{display:flex;flex-wrap:wrap;gap:8px}.as-status-tab{display:inline-flex;align-items:center;gap:8px;border:1px solid transparent;transition:transform .15s ease,box-shadow .15s ease,filter .15s ease,border-color .15s ease}.as-status-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#ffffff2e;font-size:12px;font-weight:700;line-height:1}.as-all{background:#111827;border-color:#111827;color:#fff}.as-s0{background:#6b6b6b;border-color:#6b6b6b;color:#fff}.as-s1{background:#2563eb;border-color:#2563eb;color:#fff}.as-s99{background:#f59e0b;border-color:#f59e0b;color:#fff}.as-s2{background:#dc2626;border-color:#dc2626;color:#fff}.as-status-tab:hover:not(.is-active){filter:brightness(.96)}.as-status-tab.is-active{transform:translateY(-1px);box-shadow:0 4px 12px #0f172a38}.as-status-tab.is-active.as-all{background:#000;border-color:#000;color:#fff}.as-status-tab.is-active.as-s0{background:#4b5563;border-color:#111827;color:#fff}.as-status-tab.is-active.as-s1{background:#1d4ed8;border-color:#1e3a8a;color:#fff}.as-status-tab.is-active.as-s99{background:#d97706;border-color:#92400e;color:#fff}.as-status-tab.is-active.as-s2{background:#b91c1c;border-color:#7f1d1d;color:#fff}.as-status-tab.is-active .as-status-badge{background:#ffffff52}@supports (padding: env(safe-area-inset-bottom)){.as-modal{padding-bottom:calc(14px + env(safe-area-inset-bottom))}}.layout-root{min-height:100vh;height:100vh;display:flex;flex-direction:column;background:#f5f7fb;color:#111827;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans KR,sans-serif;overflow:hidden}.layout-header{height:56px;background:#fff;border-bottom:1px solid #e5e7eb}.layout-header-inner{width:100%;margin:0 auto;padding:8px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.layout-logo{display:flex;align-items:center;gap:8px;cursor:pointer}.layout-logo-mark{width:26px;height:26px;border-radius:999px;background:linear-gradient(135deg,#2563eb,#22c1c3);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:14px}.layout-logo-text{font-size:15px;font-weight:600}.layout-header-right{flex:1;display:flex;justify-content:flex-end;gap:8px;align-items:center}.layout-user-name{font-size:13px;color:#4b5563}.layout-logout-btn{padding:6px 12px;border-radius:999px;border:1px solid #e5e7eb;background:#fff;font-size:12px;cursor:pointer}.layout-body{flex:1;display:flex;min-height:0}.layout-sidenav{width:220px;background:#fff;border-right:1px solid #e5e7eb;display:flex;flex-direction:column}.layout-sidenav-inner{flex:1;min-height:0;overflow-y:auto;padding:24px}.layout-sidenav-section+.layout-sidenav-section{margin-top:18px}.layout-sidenav-title{font-size:11px;font-weight:600;color:#9ca3af;margin-bottom:8px}.layout-menu-group{margin-bottom:4px}.layout-menu-item{width:100%;text-align:left;padding:8px 10px;margin-bottom:4px;border-radius:8px;border:none;background:transparent;font-size:13px;cursor:pointer}.layout-menu-item:hover{background:#eff6ff;color:#2563eb}.layout-menu-item[data-active=true]{background:#2563eb;color:#fff;font-weight:600}.layout-menu-item[data-active=true]:hover{background:#1d4ed8;color:#fff}.layout-menu-item-child{padding-left:26px;font-size:12px;opacity:.9}.layout-menu-item-child:before{content:"";display:inline-block;width:4px;height:4px;margin-right:6px;border-radius:9999px;background:#9ca3af;vertical-align:middle}.layout-content{flex:1;min-width:0;padding:24px;overflow:auto}.layout-content-full{padding-left:24px}.layout-content-inner{display:flex;flex-direction:column;min-height:0;height:100%;overflow:hidden}.layout-footer{border-top:1px solid #e5e7eb;background:#fff}.layout-footer-inner{width:100%;margin:0 auto;padding:8px 24px;display:flex;align-items:center;justify-content:space-around;gap:16px}.layout-footer-copy{font-size:11px;color:#9ca3af}.layout-footer-right{flex:1;display:flex;justify-content:flex-end}.footer-memo-toggle{padding:6px 14px;border-radius:999px;border:1px solid #e5e7eb;background:#f9fafb;font-size:12px;cursor:pointer}.footer-memo-toggle:hover{background:#eff6ff;border-color:#bfdbfe;color:#2563eb}.footer-memo-panel{position:fixed;right:24px;bottom:64px;width:340px;height:480px;z-index:40;background:#fff;border-radius:12px;box-shadow:0 12px 30px #0f172a42;overflow:hidden;display:flex;flex-direction:column}.footer-memo-panel .memo-panel{flex:1;min-height:0;display:flex;flex-direction:column}.footer-memo-head{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #e5e7eb;flex-shrink:0}.footer-memo-title{font-size:15px;font-weight:700}.footer-memo-close{border:0;background:transparent;font-size:22px;line-height:1;color:#64748b;cursor:pointer}.footer-memo-close:hover{color:#111827}.memo-tabs-row{display:flex;align-items:center;justify-content:space-between;padding:0 16px;border-bottom:1px solid #e5e7eb;flex-shrink:0;min-height:44px}.memo-tabs{display:flex;align-items:center;gap:12px;flex-wrap:nowrap;white-space:nowrap;min-width:0}.memo-tabs button{border:0;background:transparent;padding:12px 2px 10px;font-size:14px;font-weight:600;color:#64748b;cursor:pointer;white-space:nowrap;flex-shrink:0}.memo-tabs button.is-active{color:#0f3e8c;border-bottom:2px solid #0f3e8c}.memo-add-btn{width:28px;height:28px;border:0;border-radius:999px;background:#0f3e8c;color:#fff;font-size:20px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.memo-add-btn:hover{background:#0b2f6a}.memo-write-box{padding:12px 16px;border-bottom:1px solid #e5e7eb;flex-shrink:0}.memo-write-form{display:flex;flex-direction:column;gap:10px}.memo-write-top-row{display:flex;align-items:center;gap:10px;min-width:0}.memo-write-type-tabs{display:flex;gap:8px;flex-shrink:0}.memo-write-type-tabs button{border:1px solid #d1d5db;background:#fff;color:#374151;border-radius:8px;padding:6px 12px;cursor:pointer;white-space:nowrap}.memo-write-type-tabs button.is-active{border-color:#0f3e8c;color:#0f3e8c;font-weight:600}.memo-write-select{width:100%;height:38px;border:1px solid #d1d5db;border-radius:8px;padding:0 12px;box-sizing:border-box;font:inherit;background:#fff}.memo-write-select-inline{flex:1;min-width:0}.memo-write-input{width:100%;height:38px;border:1px solid #d1d5db;border-radius:8px;padding:0 12px;box-sizing:border-box;font:inherit;background:#fff}.memo-write-textarea{width:100%;min-height:80px;resize:none;border:1px solid #d1d5db;border-radius:8px;padding:10px 12px;font:inherit;box-sizing:border-box}.memo-write-actions{display:flex;justify-content:flex-end}.memo-write-save{border:0;border-radius:8px;background:#0f3e8c;color:#fff;padding:8px 12px;cursor:pointer}.memo-write-save:hover{background:#0b2f6a}.footer-memo-panel .dash-memo-list,.memo-panel-compact .dash-memo-list{flex:1;min-height:0;overflow-y:auto;padding:12px 16px;margin:0;list-style:none}.dash-memo-item{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:8px 0;border-bottom:1px solid #f1f5f9}.dash-memo-item:last-child{border-bottom:none}.dash-memo-left{flex:1;min-width:0;display:flex;flex-direction:column}.dash-memo-text{display:flex;flex-direction:column;gap:3px;min-width:0}.dash-memo-tag{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:#64748b;flex-wrap:wrap}.dash-memo-bracket{font-size:11px}.dash-memo-type{font-weight:600}.dash-memo-type-share{color:#2563eb}.dash-memo-target{font-size:11px}.dash-memo-content{font-size:13px;color:#334155;word-break:break-word}.dash-memo-user{font-size:11px;color:#94a3b8}.dash-memo-right{display:flex;flex-direction:column;align-items:flex-end;gap:6px;min-width:90px;flex-shrink:0}.dash-memo-date{font-size:11px;color:#9ca3af;white-space:nowrap}.dash-memo-complete{padding:4px 10px;font-size:12px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;cursor:pointer;white-space:nowrap}.dash-memo-complete:hover{background:#eff6ff;border-color:#bfdbfe;color:#2563eb}.dash-memo-delete{border:0;background:transparent;color:#94a3b8;font-size:13px;cursor:pointer;margin-left:8px}.dash-memo-delete:hover{color:#ef4444}.dash-memo-empty{padding:16px;font-size:13px;color:#6b7280;text-align:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:0 12px;height:32px;font-size:13px;line-height:1;border-radius:6px;border:1px solid transparent;background:#f1f5f9;color:#0f172a;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease,box-shadow .15s ease}.btn:hover:not(:disabled){background:#e2e8f0}.btn:disabled{opacity:.6;cursor:default}.btn.primary{background:#2563eb;border-color:#2563eb;color:#fff}.btn.primary:hover:not(:disabled){background:#1d4ed8;border-color:#1d4ed8}.btn.secondary{background:#e5e7eb;border-color:#cbd5f5;color:#111827}.btn.secondary:hover:not(:disabled){background:#d1d5db}.btn.danger{background:#b91c1c;border-color:#b91c1c;color:#fff}.btn.danger:hover:not(:disabled){background:#991b1b}.btn.small{height:28px;padding:0 10px;font-size:12px}.layout-idle-timer{display:inline-flex;align-items:center;justify-content:center;margin-left:10px;padding:2px 8px;border-radius:999px;font-size:12px;line-height:18px;border:1px solid rgba(226,232,240,1);background:#f8fafc;color:#0f172acc}.session-modal-backdrop{position:fixed;inset:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:9999}.session-modal{width:380px;background:#fff;border-radius:14px;border:1px solid rgba(226,232,240,1);box-shadow:0 20px 50px #0f172a40;padding:18px 18px 16px}.session-modal-title{font-size:15px;font-weight:800;color:#0f172aeb;margin-bottom:8px}.session-modal-desc{font-size:13px;color:#0f172abf;line-height:1.4;margin-bottom:14px}.session-modal-actions{display:flex;gap:10px;justify-content:flex-end}.session-btn{border:1px solid rgba(226,232,240,1);border-radius:10px;padding:8px 12px;font-size:13px;font-weight:700;cursor:pointer;transition:transform .08s ease,background .15s ease,border-color .15s ease}.session-btn:active{transform:translateY(1px)}.session-btn-ghost{background:#f8fafc;color:#0f172ad9}.session-btn-ghost:hover{background:#f1f5f9}.session-btn-primary{background:#2563eb;border-color:#2563eb;color:#fff}.session-btn-primary:hover{background:#1d4ed8;border-color:#1d4ed8}.settings-page{display:flex;flex-direction:column;gap:16px;height:100%}.settings-tabs{display:inline-flex;gap:8px;margin-bottom:8px}.settings-tabs .tab-btn{padding:6px 14px;border-radius:6px;border:1px solid transparent;font-size:13px;line-height:1.4;background:#f5f5f7;cursor:pointer}.settings-tabs .tab-btn.is-active{background:#2563eb;color:#fff;border-color:#2563eb}.settings-content{flex:1;min-height:0;display:flex;align-items:flex-start;justify-content:flex-start;overflow:hidden}.settings-panel{background:#fff;border-radius:12px;padding:20px 24px 22px;border:1px solid #e2e8f0;display:flex;flex-direction:column;gap:14px;width:100%;max-width:100%;flex:1;min-height:0;box-shadow:0 14px 30px #0f172a0f;height:100%}.settings-panel .panel-title{font-size:17px;font-weight:600;margin-bottom:4px}.settings-panel .panel-subtitle{font-size:14px;font-weight:500;color:#4b5563;padding-top:12px;margin-top:8px;border-top:1px solid #e5e7eb}.form-grid{display:grid;gap:10px 18px}.form-grid.two-col{grid-template-columns:repeat(2,minmax(260px,1fr));gap:10px 18px;max-width:none;margin-left:0;margin-right:0}.form-grid.four-col{grid-template-columns:repeat(4,minmax(0,1fr))}.form-field{display:flex;flex-direction:column;gap:4px;font-size:13px}.form-field label{font-size:12px;font-weight:500;color:#4b5563}.form-field input,.form-field select{border-radius:6px;border:1px solid #d1d5db;padding:6px 9px;font-size:13px;line-height:1.4;transition:border-color .12s ease,box-shadow .12s ease,background-color .12s ease}.form-field input[readonly]{background:#f9fafb;color:#6b7280}.form-field input:focus,.form-field select:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 1px #2563eb26;background-color:#fff}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px;max-width:960px;margin-left:auto;margin-right:auto}.settings-roles{gap:12px}.roles-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:16px;min-height:260px;height:100%}.roles-list{border-radius:8px;border:1px solid #e2e8f0;background:#f9fafb;padding:8px;overflow:auto}.roles-list ul{list-style:none;margin:0;padding:0}.role-item{width:100%;text-align:left;border:none;background:transparent;border-radius:6px;padding:6px 8px;font-size:13px;cursor:pointer}.role-item.is-active{background:#eff6ff;color:#1d4ed8}.roles-detail{border-radius:8px;border:1px solid #e2e8f0;padding:10px 10px 12px;overflow:hidden}.permissions-table{width:100%;border-collapse:collapse;font-size:12px}.permissions-table thead th{text-align:left;padding:6px 8px;border-bottom:1px solid #e5e7eb;background:#f9fafb}.permissions-table tbody td{padding:5px 8px;border-bottom:1px solid #f3f4f6}.menu-depth-1{font-weight:600}.menu-depth-2{padding-left:18px}.menu-depth-3{padding-left:32px}.permissions-table td[class^=menu-depth-]{position:relative;padding-left:12px}.permissions-table td.menu-depth-0{font-weight:800;padding-left:12px;border-top:2px solid #cbd5e1;background:#0f172a08}.permissions-table td.menu-depth-1{padding-left:28px}.permissions-table td.menu-depth-1:before{content:"└";position:absolute;left:12px;top:50%;transform:translateY(-50%);opacity:.6}.permissions-table td.menu-depth-2{padding-left:44px}.permissions-table td.menu-depth-2:before{content:"└";position:absolute;left:28px;top:50%;transform:translateY(-50%);opacity:.6}.ql-container.ql-disabled .ql-editor ul[data-checked]>li:before{pointer-events:none}.ql-editor{box-sizing:border-box;line-height:1.42;height:100%;outline:none;overflow-y:auto;padding:12px 15px;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap;word-wrap:break-word}.ql-editor p,.ql-editor ol,.ql-editor ul,.ql-editor pre,.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{margin:0;padding:0;counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol,.ql-editor ul{padding-left:1.5em}.ql-editor ol>li,.ql-editor ul>li{list-style-type:none}.ql-editor ul>li:before{content:"•"}.ql-editor ul[data-checked=true],.ql-editor ul[data-checked=false]{pointer-events:none}.ql-editor ul[data-checked=true]>li *,.ql-editor ul[data-checked=false]>li *{pointer-events:all}.ql-editor ul[data-checked=true]>li:before,.ql-editor ul[data-checked=false]>li:before{color:#777;cursor:pointer;pointer-events:all}.ql-editor ul[data-checked=true]>li:before{content:"☑"}.ql-editor ul[data-checked=false]>li:before{content:"☐"}.ql-editor li:before{display:inline-block;white-space:nowrap;width:1.2em}.ql-editor li:not(.ql-direction-rtl):before{margin-left:-1.5em;margin-right:.3em;text-align:right}.ql-editor li.ql-direction-rtl:before{margin-left:.3em;margin-right:-1.5em}.ql-editor ol li:not(.ql-direction-rtl),.ql-editor ul li:not(.ql-direction-rtl){padding-left:1.5em}.ql-editor ol li.ql-direction-rtl,.ql-editor ul li.ql-direction-rtl{padding-right:1.5em}.ql-editor ol li{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-0}.ql-editor ol li:before{content:counter(list-0,decimal) ". "}.ql-editor ol li.ql-indent-1{counter-increment:list-1}.ql-editor ol li.ql-indent-1:before{content:counter(list-1,lower-alpha) ". "}.ql-editor ol li.ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-2{counter-increment:list-2}.ql-editor ol li.ql-indent-2:before{content:counter(list-2,lower-roman) ". "}.ql-editor ol li.ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-3{counter-increment:list-3}.ql-editor ol li.ql-indent-3:before{content:counter(list-3,decimal) ". "}.ql-editor ol li.ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-4{counter-increment:list-4}.ql-editor ol li.ql-indent-4:before{content:counter(list-4,lower-alpha) ". "}.ql-editor ol li.ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-5{counter-increment:list-5}.ql-editor ol li.ql-indent-5:before{content:counter(list-5,lower-roman) ". "}.ql-editor ol li.ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-6{counter-increment:list-6}.ql-editor ol li.ql-indent-6:before{content:counter(list-6,decimal) ". "}.ql-editor ol li.ql-indent-6{counter-reset:list-7 list-8 list-9}.ql-editor ol li.ql-indent-7{counter-increment:list-7}.ql-editor ol li.ql-indent-7:before{content:counter(list-7,lower-alpha) ". "}.ql-editor ol li.ql-indent-7{counter-reset:list-8 list-9}.ql-editor ol li.ql-indent-8{counter-increment:list-8}.ql-editor ol li.ql-indent-8:before{content:counter(list-8,lower-roman) ". "}.ql-editor ol li.ql-indent-8{counter-reset:list-9}.ql-editor ol li.ql-indent-9{counter-increment:list-9}.ql-editor ol li.ql-indent-9:before{content:counter(list-9,decimal) ". "}.ql-snow .ql-editor code,.ql-snow .ql-editor pre{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor pre{white-space:pre-wrap;margin-bottom:5px;margin-top:5px;padding:5px 10px}.ql-snow .ql-editor pre.ql-syntax{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0px}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0px;content:"Save";padding-right:0}.notice-page{display:flex;flex-direction:column;gap:16px;height:100%;min-height:0}.notice-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.notice-titlebar{display:flex;flex-direction:column;gap:4px}.notice-titlebar .h1{font-size:18px;font-weight:800;color:#0f172a}.notice-titlebar .sub{font-size:12px;color:#64748b}.notice-actions{display:flex;align-items:center;gap:8px}.notice-search{display:flex;gap:8px;align-items:center}.notice-input,.notice-textarea{width:100%;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;outline:none;font-size:14px;color:#0f172a;background:#fff}.notice-input:focus,.notice-textarea:focus{border-color:#94a3b8}.notice-textarea{min-height:320px;resize:vertical;line-height:1.6}.notice-btn{border:1px solid #e2e8f0;background:#fff;color:#0f172a;border-radius:10px;padding:9px 12px;font-size:13px;font-weight:700;cursor:pointer}.notice-btn:disabled{opacity:.5;cursor:not-allowed}.notice-btn.primary{border-color:#2563eb;background:#2563eb;color:#fff}.notice-btn.is-active{border-color:#2563eb;color:#2563eb}.notice-panel{background:#fff;border-radius:12px;border:1px solid #e2e8f0;padding:14px;display:flex;flex-direction:column;gap:12px;flex:1;min-height:0}.notice-table-wrap{width:100%;border:1px solid #e2e8f0;border-radius:12px;flex:1;min-height:0;overflow:auto}.notice-table{width:100%;border-collapse:separate;border-spacing:0;min-width:760px}.notice-table thead th{position:sticky;top:0;z-index:1;background:#f8fafc;color:#0f172a;font-size:13px;font-weight:800;text-align:left;padding:12px;border-bottom:1px solid #e2e8f0}.notice-table tbody tr{height:44px}.notice-table tbody td{padding:10px 12px;vertical-align:middle;border-bottom:1px solid #f1f5f9;font-size:13px;color:#0f172a}.notice-row:hover td{background:#f8fafc}.notice-title{font-weight:800}.notice-empty{padding:18px;text-align:center;color:#64748b}.notice-pager{display:flex;align-items:center;justify-content:space-between;gap:10px}.notice-pager-left{font-size:12px;color:#64748b}.notice-pager-right{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.notice-modal-backdrop{position:fixed;inset:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;padding:16px;z-index:9999}.notice-modal{width:min(920px,100%);background:#fff;border-radius:14px;border:1px solid #e2e8f0;box-shadow:0 18px 45px #0f172a33;overflow:hidden;display:flex;flex-direction:column}.notice-modal-head{padding:14px 16px;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;gap:10px}.notice-modal-title{font-weight:900;color:#0f172a}.notice-modal-actions{display:flex;align-items:center;gap:8px}.notice-modal-body{padding:16px;display:flex;flex-direction:column;gap:10px}.notice-field{display:flex;flex-direction:column;gap:6px}.notice-label{font-size:12px;color:#64748b}.notice-meta{margin-top:16px;padding-top:12px;border-top:1px solid #e5e7eb;color:#666;font-size:14px;display:flex;gap:20px}.notice-editor .ql-container{min-height:320px}.notice-content-view{border:1px solid #e2e8f0;border-radius:10px;padding:12px;background:#fff;line-height:1.7;min-height:220px}.notice-title-view{min-height:44px;padding:12px 14px;border:1px solid #dcdfe6;border-radius:8px;background:#f8f9fb;font-size:16px;font-weight:600;color:#222;display:flex;align-items:center}.notice-content-view{min-height:320px;padding:16px 18px;border:1px solid #dcdfe6;border-radius:8px;background:#fff;overflow:auto;line-height:1.7;color:#222}.notice-content-view img{max-width:100%;height:auto}.notice-modal{width:min(1000px,calc(100vw - 40px));max-height:calc(100vh - 40px);background:#fff;border-radius:12px;overflow:hidden;display:flex;flex-direction:column}.notice-modal-head{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid #e5e7eb;flex-shrink:0}.notice-modal-title{font-size:18px;font-weight:700}.notice-modal-body{padding:24px;overflow-y:auto;flex:1}.notice-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid #e5e7eb;background:#fff;flex-shrink:0}.notice-btn.danger{background:#dc2626;color:#fff;border:1px solid #dc2626}.notice-btn.danger:hover{opacity:.92}.eap-page{display:flex;flex-direction:column;gap:12px;height:100%;min-height:0}.eap-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.eap-title{font-size:20px;font-weight:800;color:#0f172a}.eap-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.eap-tabs{display:flex;gap:8px;flex-wrap:wrap}.eap-tab{border:1px solid #e2e8f0;background:#fff;padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:700;color:#0f172a}.eap-tab.is-active{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb1f}.eap-panel{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;display:flex;flex-direction:column;min-height:0}.eap-panel-head{padding:12px 14px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #eef2f7;gap:10px}.eap-panel-title{font-weight:800;color:#0f172a}.eap-panel-meta{display:flex;align-items:center;gap:10px}.eap-meta{font-size:12px;color:#64748b;font-weight:800}.eap-table-wrap{overflow:auto;min-height:0;max-height:calc(100vh - 280px)}.eap-table{width:100%;border-collapse:collapse;table-layout:fixed}.eap-table th,.eap-table td{padding:10px;border-bottom:1px solid #eef2f7;text-align:left;font-size:14px;vertical-align:middle;color:#0f172a;word-break:break-word}.eap-table th{position:sticky;top:0;background:#fff;z-index:1;font-weight:900;color:#0f172a}.eap-empty{text-align:center;color:#64748b;padding:22px 10px;font-weight:700}.eap-empty2{text-align:center;color:#64748b;padding:14px 10px;font-weight:700}.eap-link{cursor:pointer;font-weight:800;color:#0f172a;-webkit-user-select:none;user-select:none}.eap-link:hover{text-decoration:underline}.eap-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.eap-row-actions{display:flex;gap:8px;flex-wrap:wrap}.eap-pager{padding:10px 12px;display:flex;justify-content:flex-end;align-items:center;gap:8px;border-top:1px solid #eef2f7}.eap-page-no{min-width:30px;text-align:center;font-weight:900;color:#0f172a}.eap-btn,.eap-btn-sm{border:1px solid #e2e8f0;background:#fff;padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:800;color:#0f172a;line-height:1;white-space:nowrap}.eap-btn-sm{padding:6px 10px;border-radius:9px;font-size:13px}.eap-btn:disabled,.eap-btn-sm:disabled{opacity:.55;cursor:not-allowed}.eap-btn-primary{border-color:#2563eb}.eap-btn-danger{border-color:#ef4444}.eap-input,.eap-select,.eap-textarea{border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;font-size:14px;outline:none;background:#fff;color:#0f172a}.eap-input::placeholder{color:#94a3b8;font-weight:700}.eap-textarea{min-height:220px;resize:vertical;line-height:1.35}.eap-pill{display:inline-flex;align-items:center;border:1px solid #e2e8f0;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:900;color:#0f172a;background:#fff}.st-DRAFT{border-color:#94a3b8}.st-PENDING{border-color:#f59e0b}.st-IN_PROGRESS{border-color:#3b82f6}.st-APPROVED{border-color:#10b981}.st-REJECTED{border-color:#ef4444}.st-WITHDRAWN{border-color:#64748b}.st-WAIT{border-color:#94a3b8}.st-SKIPPED{border-color:#64748b}.eap-modal{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px}.eap-modal-backdrop{position:fixed;inset:0;background:#0f172a73}.eap-modal-panel{position:relative;width:min(980px,calc(100vw - 40px));max-height:calc(100vh - 40px);background:#fff;border-radius:14px;border:1px solid #e2e8f0;box-shadow:0 18px 50px #0f172a2e;display:flex;flex-direction:column;overflow:hidden;z-index:1}.eap-modal-head{padding:14px 16px;border-bottom:1px solid #eef2f7;display:flex;align-items:center;justify-content:space-between;gap:12px}.eap-modal-title{font-size:16px;font-weight:800;color:#0f172a}.eap-modal-x,.eap-x{width:34px;height:34px;border-radius:10px;border:1px solid #e2e8f0;background:#fff;cursor:pointer;font-weight:900;color:#0f172a}.eap-modal-body{padding:16px;overflow:auto;min-height:0}.eap-modal-foot{padding:12px 16px;border-top:1px solid #eef2f7;display:flex;justify-content:space-between;gap:8px}.eap-doc-top{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.eap-doc-title{font-size:18px;font-weight:900;color:#0f172a}.eap-doc-meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.eap-doc-meta-item{font-size:12px;color:#475569;padding:4px 8px;border:1px solid #e2e8f0;border-radius:999px;background:#fff}.eap-doc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;margin-bottom:14px}.eap-doc-field{padding:10px 12px;border:1px solid #e2e8f0;border-radius:12px;background:#fbfdff;display:flex;gap:10px;align-items:center}.eap-doc-label{width:70px;font-size:12px;color:#64748b;font-weight:700}.eap-doc-value{font-size:13px;color:#0f172a;font-weight:700}.eap-doc-section{margin-top:14px}.eap-doc-section-title{font-size:13px;font-weight:900;color:#0f172a;margin-bottom:8px}.eap-doc-content{border:1px solid #e2e8f0;border-radius:12px;padding:14px;background:#fff}.eap-doc-muted{font-size:13px;color:#64748b}.eap-doc-line{display:flex;flex-direction:column;gap:8px}.eap-line-item{border:1px solid #e2e8f0;border-radius:12px;padding:10px 12px;display:grid;grid-template-columns:1.2fr 1fr .9fr 1fr;gap:8px;background:#fff}.eap-line-name{font-weight:900;color:#0f172a;font-size:13px}.eap-line-sub{font-size:12px;color:#475569}.eap-attach-list{display:flex;flex-direction:column;gap:6px}.eap-attach-item{font-size:13px;color:#2563eb;text-decoration:none}.eap-write-portal{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px}.eap-write-portal__backdrop{position:fixed;inset:0;background:#0f172a73}.eap-write-portal__panel{position:relative;width:min(1100px,calc(100vw - 40px));max-height:calc(100vh - 40px);background:#fff;border-radius:14px;border:1px solid #e2e8f0;box-shadow:0 18px 50px #0f172a2e;display:flex;flex-direction:column;overflow:hidden;z-index:1}.eap-write-portal__panel .eap-modal-body{overflow:auto;min-height:0}.eap-loading{padding:18px 10px;text-align:center;font-weight:800;color:#64748b}.eap-form{display:flex;flex-direction:column;gap:10px}.eap-row{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}.eap-field{display:flex;flex-direction:column;gap:6px;min-width:220px}.eap-label{font-size:12px;color:#475569;font-weight:900}.eap-read{padding:10px 12px;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc;min-height:42px;display:flex;align-items:center;color:#0f172a;font-weight:800}.eap-block{margin-top:14px;border-top:1px solid #eef2f7;padding-top:14px}.eap-block-title{font-weight:900;margin-bottom:10px;color:#0f172a}.eap-inline{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.eap-picker{display:grid;grid-template-columns:1fr 1fr;gap:12px}.eap-picker-list,.eap-picked-list{border:1px solid #eef2f7;border-radius:12px;padding:10px;min-height:360px;max-height:440px;overflow:auto;background:#fff}.eap-pick-item,.eap-picked-item{border:1px solid #e2e8f0;border-radius:12px;padding:10px;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;background:#fff}.eap-pick-main,.eap-picked-main{min-width:0}.eap-pick-name,.eap-picked-name{font-weight:900;color:#0f172a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.eap-pick-sub,.eap-picked-sub{font-size:12px;color:#64748b;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.eap-picked-actions{display:flex;gap:6px;flex:0 0 auto}.eap-dim{color:#64748b;font-weight:800}.eap-auto-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;margin:10px 0 12px}.eap-form-item{display:flex;flex-direction:column;gap:6px}.eap-form-label{font-size:12px;font-weight:800;color:#334155}.eap-form-span2{grid-column:span 2}.eap-form-control{display:flex;gap:8px;align-items:center}.eap-form-suffix{font-size:12px;color:#64748b;white-space:nowrap}.eap-quill .ql-container{min-height:260px}.eap-foot-right{display:flex;gap:8px}@media(max-width:980px){.eap-picker{grid-template-columns:1fr}.eap-field{min-width:100%}.eap-table{table-layout:auto}}.ql-container{box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container:not(.ql-disabled) li[data-list=checked]>.ql-ui,.ql-container:not(.ql-disabled) li[data-list=unchecked]>.ql-ui{cursor:pointer}.ql-clipboard{left:-100000px;height:1px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{box-sizing:border-box;counter-reset:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;line-height:1.42;height:100%;outline:none;overflow-y:auto;padding:12px 15px;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap;word-wrap:break-word}.ql-editor>*{cursor:text}.ql-editor p,.ql-editor ol,.ql-editor pre,.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{margin:0;padding:0}@supports (counter-set:none){.ql-editor p,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{counter-set:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor p,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{counter-reset:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor table{border-collapse:collapse}.ql-editor td{border:1px solid #000;padding:2px 5px}.ql-editor ol{padding-left:1.5em}.ql-editor li{list-style-type:none;padding-left:1.5em;position:relative}.ql-editor li>.ql-ui:before{display:inline-block;margin-left:-1.5em;margin-right:.3em;text-align:right;white-space:nowrap;width:1.2em}.ql-editor li[data-list=checked]>.ql-ui,.ql-editor li[data-list=unchecked]>.ql-ui{color:#777}.ql-editor li[data-list=bullet]>.ql-ui:before{content:"•"}.ql-editor li[data-list=checked]>.ql-ui:before{content:"☑"}.ql-editor li[data-list=unchecked]>.ql-ui:before{content:"☐"}@supports (counter-set:none){.ql-editor li[data-list]{counter-set:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list]{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered]{counter-increment:list-0}.ql-editor li[data-list=ordered]>.ql-ui:before{content:counter(list-0,decimal) ". "}.ql-editor li[data-list=ordered].ql-indent-1{counter-increment:list-1}.ql-editor li[data-list=ordered].ql-indent-1>.ql-ui:before{content:counter(list-1,lower-alpha) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-1{counter-set:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-2{counter-increment:list-2}.ql-editor li[data-list=ordered].ql-indent-2>.ql-ui:before{content:counter(list-2,lower-roman) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-2{counter-set:list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-3{counter-increment:list-3}.ql-editor li[data-list=ordered].ql-indent-3>.ql-ui:before{content:counter(list-3,decimal) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-3{counter-set:list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-4{counter-increment:list-4}.ql-editor li[data-list=ordered].ql-indent-4>.ql-ui:before{content:counter(list-4,lower-alpha) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-4{counter-set:list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-5{counter-increment:list-5}.ql-editor li[data-list=ordered].ql-indent-5>.ql-ui:before{content:counter(list-5,lower-roman) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-5{counter-set:list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-6{counter-increment:list-6}.ql-editor li[data-list=ordered].ql-indent-6>.ql-ui:before{content:counter(list-6,decimal) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-6{counter-set:list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-6{counter-reset:list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-7{counter-increment:list-7}.ql-editor li[data-list=ordered].ql-indent-7>.ql-ui:before{content:counter(list-7,lower-alpha) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-7{counter-set:list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-7{counter-reset:list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-8{counter-increment:list-8}.ql-editor li[data-list=ordered].ql-indent-8>.ql-ui:before{content:counter(list-8,lower-roman) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-8{counter-set:list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-8{counter-reset:list-9}}.ql-editor li[data-list=ordered].ql-indent-9{counter-increment:list-9}.ql-editor li[data-list=ordered].ql-indent-9>.ql-ui:before{content:counter(list-9,decimal) ". "}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor li.ql-direction-rtl{padding-right:1.5em}.ql-editor li.ql-direction-rtl>.ql-ui:before{margin-left:.3em;margin-right:-1.5em;text-align:left}.ql-editor table{table-layout:fixed;width:100%}.ql-editor table td{outline:none}.ql-editor .ql-code-block-container{font-family:monospace}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor .ql-ui{position:absolute}.ql-editor.ql-blank:before{color:#0009;content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px}.ql-snow.ql-toolbar:after,.ql-snow .ql-toolbar:after{clear:both;content:"";display:table}.ql-snow.ql-toolbar button,.ql-snow .ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px}.ql-snow.ql-toolbar button svg,.ql-snow .ql-toolbar button svg{float:left;height:100%}.ql-snow.ql-toolbar button:active:hover,.ql-snow .ql-toolbar button:active:hover{outline:none}.ql-snow.ql-toolbar input.ql-image[type=file],.ql-snow .ql-toolbar input.ql-image[type=file]{display:none}.ql-snow.ql-toolbar button:hover,.ql-snow .ql-toolbar button:hover,.ql-snow.ql-toolbar button:focus,.ql-snow .ql-toolbar button:focus,.ql-snow.ql-toolbar button.ql-active,.ql-snow .ql-toolbar button.ql-active,.ql-snow.ql-toolbar .ql-picker-label:hover,.ql-snow .ql-toolbar .ql-picker-label:hover,.ql-snow.ql-toolbar .ql-picker-label.ql-active,.ql-snow .ql-toolbar .ql-picker-label.ql-active,.ql-snow.ql-toolbar .ql-picker-item:hover,.ql-snow .ql-toolbar .ql-picker-item:hover,.ql-snow.ql-toolbar .ql-picker-item.ql-selected,.ql-snow .ql-toolbar .ql-picker-item.ql-selected{color:#06c}.ql-snow.ql-toolbar button:hover .ql-fill,.ql-snow .ql-toolbar button:hover .ql-fill,.ql-snow.ql-toolbar button:focus .ql-fill,.ql-snow .ql-toolbar button:focus .ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill{fill:#06c}.ql-snow.ql-toolbar button:hover .ql-stroke,.ql-snow .ql-toolbar button:hover .ql-stroke,.ql-snow.ql-toolbar button:focus .ql-stroke,.ql-snow .ql-toolbar button:focus .ql-stroke,.ql-snow.ql-toolbar button.ql-active .ql-stroke,.ql-snow .ql-toolbar button.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow.ql-toolbar button:hover .ql-stroke-miter,.ql-snow .ql-toolbar button:hover .ql-stroke-miter,.ql-snow.ql-toolbar button:focus .ql-stroke-miter,.ql-snow .ql-toolbar button:focus .ql-stroke-miter,.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter{stroke:#06c}@media(pointer:coarse){.ql-snow.ql-toolbar button:hover:not(.ql-active),.ql-snow .ql-toolbar button:hover:not(.ql-active){color:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#444}}.ql-snow,.ql-snow *{box-sizing:border-box}.ql-snow .ql-hidden{display:none}.ql-snow .ql-out-bottom,.ql-snow .ql-out-top{visibility:hidden}.ql-snow .ql-tooltip{position:absolute;transform:translateY(10px)}.ql-snow .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-snow .ql-tooltip.ql-flip{transform:translateY(-10px)}.ql-snow .ql-formats{display:inline-block;vertical-align:middle}.ql-snow .ql-formats:after{clear:both;content:"";display:table}.ql-snow .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-snow .ql-stroke-miter{fill:none;stroke:#444;stroke-miterlimit:10;stroke-width:2}.ql-snow .ql-fill,.ql-snow .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-empty{fill:none}.ql-snow .ql-even{fill-rule:evenodd}.ql-snow .ql-thin,.ql-snow .ql-stroke.ql-thin{stroke-width:1}.ql-snow .ql-transparent{opacity:.4}.ql-snow .ql-direction svg:last-child{display:none}.ql-snow .ql-direction.ql-active svg:last-child{display:inline}.ql-snow .ql-direction.ql-active svg:first-child{display:none}.ql-snow .ql-editor h1{font-size:2em}.ql-snow .ql-editor h2{font-size:1.5em}.ql-snow .ql-editor h3{font-size:1.17em}.ql-snow .ql-editor h4{font-size:1em}.ql-snow .ql-editor h5{font-size:.83em}.ql-snow .ql-editor h6{font-size:.67em}.ql-snow .ql-editor a{text-decoration:underline}.ql-snow .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-snow .ql-editor code,.ql-snow .ql-editor .ql-code-block-container{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor .ql-code-block-container{margin-bottom:5px;margin-top:5px;padding:5px 10px}.ql-snow .ql-editor code{font-size:85%;padding:2px 4px}.ql-snow .ql-editor .ql-code-block-container{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-snow .ql-editor img{max-width:100%}.ql-snow .ql-picker{color:#444;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle}.ql-snow .ql-picker-label{cursor:pointer;display:inline-block;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-snow .ql-picker-label:before{display:inline-block;line-height:22px}.ql-snow .ql-picker-options{background-color:#fff;display:none;min-width:100%;padding:4px 8px;position:absolute;white-space:nowrap}.ql-snow .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding-bottom:5px;padding-top:5px}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:#ccc;z-index:2}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-snow .ql-color-picker,.ql-snow .ql-icon-picker{width:28px}.ql-snow .ql-color-picker .ql-picker-label,.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-label svg,.ql-snow .ql-icon-picker .ql-picker-label svg{right:4px}.ql-snow .ql-icon-picker .ql-picker-options{padding:4px 0}.ql-snow .ql-icon-picker .ql-picker-item{height:24px;width:24px;padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-snow .ql-color-picker .ql-picker-item{border:1px solid transparent;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{position:absolute;margin-top:-9px;right:0;top:50%;width:18px}.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=""]):before{content:attr(data-label)}.ql-snow .ql-picker.ql-header{width:98px}.ql-snow .ql-picker.ql-header .ql-picker-label:before,.ql-snow .ql-picker.ql-header .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{content:"Heading 1"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{content:"Heading 2"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{content:"Heading 3"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{content:"Heading 4"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{content:"Heading 5"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{content:"Heading 6"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{font-size:2em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{font-size:1.5em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{font-size:1.17em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{font-size:1em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{font-size:.83em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{font-size:.67em}.ql-snow .ql-picker.ql-font{width:108px}.ql-snow .ql-picker.ql-font .ql-picker-label:before,.ql-snow .ql-picker.ql-font .ql-picker-item:before{content:"Sans Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{content:"Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{content:"Monospace"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-snow .ql-picker.ql-size{width:98px}.ql-snow .ql-picker.ql-size .ql-picker-label:before,.ql-snow .ql-picker.ql-size .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{content:"Small"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{content:"Large"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{content:"Huge"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-snow .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-snow .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-code-block-container{position:relative}.ql-code-block-container .ql-ui{right:5px;top:5px}.ql-toolbar.ql-snow{border:1px solid #ccc;box-sizing:border-box;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:8px}.ql-toolbar.ql-snow .ql-formats{margin-right:15px}.ql-toolbar.ql-snow .ql-picker-label{border:1px solid transparent}.ql-toolbar.ql-snow .ql-picker-options{border:1px solid transparent;box-shadow:#0003 0 2px 8px}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label,.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options{border-color:#ccc}.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover{border-color:#000}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0}.ql-snow .ql-tooltip{background-color:#fff;border:1px solid #ccc;box-shadow:0 0 5px #ddd;color:#444;padding:5px 12px;white-space:nowrap}.ql-snow .ql-tooltip:before{content:"Visit URL:";line-height:26px;margin-right:8px}.ql-snow .ql-tooltip input[type=text]{display:none;border:1px solid #ccc;font-size:13px;height:26px;margin:0;padding:3px 5px;width:170px}.ql-snow .ql-tooltip a.ql-preview{display:inline-block;max-width:200px;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top}.ql-snow .ql-tooltip a.ql-action:after{border-right:1px solid #ccc;content:"Edit";margin-left:16px;padding-right:8px}.ql-snow .ql-tooltip a.ql-remove:before{content:"Remove";margin-left:8px}.ql-snow .ql-tooltip a{line-height:26px}.ql-snow .ql-tooltip.ql-editing a.ql-preview,.ql-snow .ql-tooltip.ql-editing a.ql-remove{display:none}.ql-snow .ql-tooltip.ql-editing input[type=text]{display:inline-block}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0;content:"Save";padding-right:0}.ql-snow .ql-tooltip[data-mode=link]:before{content:"Enter link:"}.ql-snow .ql-tooltip[data-mode=formula]:before{content:"Enter formula:"}.ql-snow .ql-tooltip[data-mode=video]:before{content:"Enter video:"}.ql-snow a{color:#06c}.ql-container.ql-snow{border:1px solid #ccc}.att-page{display:flex;flex-direction:column;gap:12px;height:100%;min-height:0}.att-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.att-title{font-size:18px;font-weight:700}.att-actions{display:flex;align-items:center;gap:10px}.att-month{font-weight:600;opacity:.9}.att-error{padding:10px 12px;border:1px solid #fecaca;background:#fff1f2;border-radius:10px;color:#991b1b}.att-panel{position:relative;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:12px;box-shadow:0 14px 30px #0f172a0f;min-height:0}.att-loading{position:absolute;top:12px;right:12px;padding:6px 10px;border-radius:10px;background:#ffffffe6;border:1px solid #e2e8f0;font-size:12px}.att-event{border-radius:8px!important;padding:2px 6px!important}.att-event.normal{border-color:#86efac!important;background:#dcfce7!important}.att-event.late{border-color:#fde68a!important;background:#fffbeb!important}.att-event.early{border-color:#93c5fd!important;background:#eff6ff!important}.att-event.absent{border-color:#fca5a5!important;background:#fef2f2!important}.att-event.pending{border-color:#e2e8f0!important;background:#f8fafc!important}.att-modal-backdrop{position:fixed;inset:0;background:#02061773;display:flex;align-items:center;justify-content:center;padding:18px;z-index:9999}.att-modal{width:520px;max-width:100%;background:#fff;border-radius:14px;border:1px solid #e2e8f0;box-shadow:0 18px 50px #0206174d;overflow:hidden}.att-modal-head{padding:12px 14px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e2e8f0}.att-modal-title{font-weight:700}.att-modal-body{padding:14px;display:flex;flex-direction:column;gap:10px}.att-row{display:grid;grid-template-columns:90px 1fr;gap:10px;align-items:start}.att-k{font-weight:700;color:#334155}.att-v{color:#0f172a}.att-memo{white-space:pre-wrap;word-break:break-word}.att-hint{margin-top:6px;font-size:12px;color:#64748b}.btn{height:34px;padding:0 12px;border-radius:10px;border:1px solid #e2e8f0;background:#0f172a;color:#fff;font-weight:700;cursor:pointer}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.btn-outline{background:#fff;color:#0f172a}.fc .fc-daygrid-day-number,.fc .fc-event-title{color:#222!important}.fc{color:#222}.customers-page{display:flex;flex-direction:column;gap:12px;height:100%;min-height:0}.customers-header{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:12px}.customers-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.customers-title{font-size:18px;font-weight:800;color:#0f172a}.customers-title-actions{display:flex;align-items:center;gap:8px}.customer-filters-row{display:grid;grid-template-columns:160px minmax(0,1fr) 96px;gap:10px;align-items:center}.customers-body{display:grid;grid-template-columns:360px minmax(0,1fr);gap:12px;flex:1;min-height:0}.customers-left,.customers-right{min-height:0}.customers-left{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:10px;overflow:hidden;display:flex;flex-direction:column}.customer-list{overflow-y:auto;min-height:0;display:flex;flex-direction:column;gap:8px;padding-right:4px}.customer-list-row{width:100%;text-align:left;border:1px solid #e2e8f0;background:#fff;border-radius:12px;padding:10px 12px;cursor:pointer;transition:background .12s ease,border-color .12s ease,transform .12s ease}.customer-list-row:hover{background:#f8fafc;border-color:#cbd5e1}.customer-list-row:active{transform:translateY(1px)}.customer-list-row.is-active{border-color:#60a5fa;background:#eff6ff}.customer-list-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.customer-list-name{font-size:14px;font-weight:800;color:#0f172a;line-height:1.2}.customer-badge{font-size:12px;font-weight:800;padding:4px 10px;border-radius:999px;border:1px solid #e2e8f0;background:#f8fafc;color:#334155;white-space:nowrap}.customer-badge.use-y{background:#ecfdf5;border-color:#86efac;color:#166534}.customer-badge.use-n{background:#fff7ed;border-color:#fdba74;color:#9a3412}.customer-list-meta{display:flex;flex-direction:column;gap:6px;margin-top:8px}.customer-list-sub{display:flex;gap:10px;flex-wrap:wrap}.customer-kv{display:inline-flex;gap:6px;align-items:center;border-radius:999px;padding:4px 10px;background:#f8fafc;border:1px solid #e2e8f0}.customer-kv .k{font-size:12px;font-weight:800;color:#475569}.customer-kv .v{font-size:12px;font-weight:700;color:#0f172a}.customers-right{display:flex;flex-direction:column;min-height:0}.customer-detail-stack{display:flex;flex-direction:column;gap:12px;min-height:0;flex:1}.customer-detail-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:12px}.detail-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.detail-title{font-size:14px;font-weight:900;color:#0f172a}.detail-actions{display:flex;align-items:center;gap:8px}.detail-grid{display:grid;gap:6px;align-items:start}.detail-grid.dense-5{grid-template-columns:repeat(5,minmax(0,1fr))}.detail-kv{border:1px solid #e2e8f0;border-radius:10px;padding:6px 8px;background:#fff;display:flex;flex-direction:column;gap:4px}.detail-k{font-size:12px;font-weight:900;color:#64748b}.detail-v{font-size:13px;font-weight:800;color:#0f172a;word-break:break-word;overflow-wrap:anywhere}.customer-muted{font-size:13px;font-weight:700;color:#64748b;padding:6px 2px}.customer-error{font-size:13px;font-weight:800;color:#b91c1c;padding:6px 2px}.customers-page .customer-filters-row select,.customers-page .customer-filters-row input[type=text],.customers-page .customer-filters-row input[type=search],.customers-page .customer-filters-row input{width:100%;height:38px;border:1px solid #cbd5e1;border-radius:10px;padding:0 12px;font-size:13px;font-weight:700;color:#0f172a;background:#fff;outline:none;box-shadow:none}.form-control::placeholder{color:#94a3b8;font-weight:700}.customers-page .customer-filters-row select:focus,.customers-page .customer-filters-row input:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa40}.customers-page .customer-filters-row button{height:38px;border-radius:10px;font-size:13px;font-weight:800;border:1px solid #0f172a;background:#0f172a;color:#fff;cursor:pointer}.customers-page .customer-filters-row button:hover{filter:brightness(1.05)}@media(max-width:1100px){.customers-page .customer-filters-row{grid-template-columns:1fr}}.consult-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;display:flex;flex-direction:column;min-height:0;flex:1}.consult-head{padding:12px 14px;border-bottom:1px solid #eef2f7;display:flex;align-items:center;justify-content:space-between;gap:10px;flex:0 0 auto}.consult-title{font-weight:900;font-size:14px;color:#0f172a}.consult-compose{padding:12px 14px;display:flex;flex-direction:column;gap:10px;min-height:0;flex:1 1 auto}.consult-left-scroll,.consult-right{padding-right:10px}.consult-kind-row{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.consult-radio{display:inline-flex;gap:8px;align-items:center;-webkit-user-select:none;user-select:none;font-weight:800;color:#0f172a}.consult-radio input{transform:translateY(1px)}.consult-split{display:grid;grid-template-columns:40% 60%;gap:8px;width:100%;min-height:0;flex:1 1 auto;align-items:stretch}.consult-left-scroll{border:1px solid #e5e7eb;border-radius:10px;padding:10px;background:#fafafa;min-height:0;height:100%;overflow:hidden;display:flex;flex-direction:column;gap:10px}.consult-vehicles-top{flex:0 0 auto;display:flex;flex-direction:column;gap:8px}.consult-vehicles-filter{display:flex;align-items:center;gap:10px}.consult-vehicles-filter .form-control{height:34px}.consult-vehicles-only{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#475569;white-space:nowrap;-webkit-user-select:none;user-select:none}.consult-vehicles-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.consult-vehicles-box{border:1px solid #e5e7eb;background:#fff;border-radius:8px;padding:6px;overflow:hidden;min-height:0}.consult-vehicles-box-fill{flex:1 1 auto;min-height:0;overflow-y:auto}.consult-vehicles-list{display:flex;flex-direction:column;overflow-y:auto;min-height:0;gap:6px}.consult-vehicle-item{display:grid;grid-template-columns:16px minmax(0,1fr);gap:10px;align-items:center;min-height:36px;padding:6px 8px;border-radius:8px;cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid transparent}.consult-vehicle-item:hover{background:#f3f4f6}.consult-vehicle-item.is-checked{background:#eef2ff;border-color:#c7d2fe}.consult-vehicle-item input{width:16px;height:16px;margin:0;flex:0 0 auto;accent-color:#0f172a}.consult-vehicle-line{display:flex;align-items:center;gap:8px;min-width:0;overflow:hidden;white-space:nowrap}.consult-vehicle-no{font-size:13px;font-weight:800;color:#111827;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.consult-vehicle-meta{font-size:12px;font-weight:700;color:#64748b;white-space:nowrap;flex:0 0 auto;overflow:hidden;text-overflow:ellipsis}.consult-vehicles-foot{flex:0 0 auto;display:flex;justify-content:space-between;align-items:center}.vehicle-empty{padding:10px}.consult-left-timeline{flex:1 1 auto;min-height:0;overflow:hidden}.consult-right{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;gap:10px;overflow:hidden}.consult-textarea{width:100%;border:1px solid #e2e8f0;border-radius:12px;padding:10px 12px;font-size:13px;font-weight:700;color:#0f172a;resize:vertical;outline:none;min-height:90px;background:#fff}.consult-textarea-wide{min-height:120px;max-height:240px;overflow-y:auto}.consult-textarea:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa40}.consult-actions{display:flex;justify-content:flex-end;gap:10px}.timeline{position:relative;display:flex;flex-direction:column;gap:10px;padding-left:14px;padding-right:4px;height:100%;min-height:0;overflow-y:auto}.timeline:before{content:"";position:absolute;left:6px;top:0;bottom:0;width:2px;background:#e2e8f0}.timeline-item{position:relative;display:grid;grid-template-columns:14px minmax(0,1fr);gap:10px;align-items:flex-start}.timeline-dot{width:12px;height:12px;border-radius:999px;background:#60a5fa;border:2px solid #ffffff;box-shadow:0 0 0 2px #bfdbfe;margin-top:6px}.timeline-body{border:1px solid #e2e8f0;background:#fff;border-radius:12px;padding:10px 12px;min-width:0}.timeline-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}.timeline-writer{font-size:12px;font-weight:900;color:#0f172a}.timeline-time{font-size:12px;font-weight:800;color:#64748b;white-space:nowrap}.timeline-meta{margin-top:6px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.timeline-pill{font-size:12px;font-weight:900;padding:2px 8px;border-radius:999px;border:1px solid #e2e8f0;background:#f8fafc;color:#334155}.timeline-cars{font-size:12px;font-weight:800;color:#334155}.timeline-content{margin-top:8px;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;color:#0f172a;line-height:1.35;font-size:13px;font-weight:700}.kind-AS,.kind-as{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.kind-신규,.kind-new{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}.kind-단순,.kind-simple{background:#eff6ff;border-color:#bfdbfe;color:#1e40af}.consult-card .form-control,.consult-card input[type=text],.consult-card input[type=search],.consult-card input[type=tel],.consult-card input[type=number],.consult-card textarea,.consult-card select{height:38px;width:100%;border:1px solid #cbd5e1;border-radius:10px;font-size:13px;font-weight:700;color:#0f172a;background:#fff;outline:none;box-shadow:none;padding:0 6px}.consult-card input[type=text],.consult-card input[type=search],.consult-card input[type=tel],.consult-card input[type=number],.consult-card select{height:38px;padding:0 12px}.consult-card textarea{height:auto;padding:10px 12px}.consult-card .form-control:focus,.consult-card input:focus,.consult-card textarea:focus,.consult-card select:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa40}.consult-card .form-control::placeholder,.consult-card input::placeholder,.consult-card textarea::placeholder{color:#94a3b8;font-weight:700}.consult-card select{-webkit-appearance:none;appearance:none;padding-right:36px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px 16px}.consult-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;align-content:start}.consult-form-grid>.consult-field{min-height:0}.consult-field{min-width:0;display:flex;flex-direction:column;gap:6px}.consult-field-label{font-size:12px;font-weight:900;color:#475569;white-space:nowrap}.consult-check{display:inline-flex;gap:8px;align-items:center;font-size:12px;font-weight:800;color:#334155;-webkit-user-select:none;user-select:none}.consult-field-span{grid-column:1 / -1}.consult-split{align-items:stretch}.consult-left,.consult-right{min-width:0;min-height:0}.consult-right{overflow:hidden}.consult-vehicles-panel{border:1px solid #e5e7eb;border-radius:10px;padding:10px;background:#fafafa;display:flex;flex-direction:column;gap:8px;min-height:0;margin-bottom:10px}.consult-vehicles-box-fill{flex:1 1 auto;min-height:0}.consult-right-split{display:grid;grid-template-columns:40% 60%;gap:12px;min-height:0;align-items:stretch}.consult-right-vehicles,.consult-right-form{min-width:0;min-height:0}.consult-right-vehicles{border:1px solid #e5e7eb;border-radius:10px;padding:10px;background:#fafafa;display:flex;flex-direction:column;min-height:0;overflow:hidden}.consult-vehicles-box-fill{flex:1 1 auto;min-height:0;overflow:hidden;display:flex;flex-direction:column}.consult-vehicles-list{flex:1 1 auto;min-height:0;overflow-y:auto}.consult-vehicles-tabs{display:inline-flex;gap:6px;padding:6px 2px 8px;border-bottom:1px solid #e5e7eb;margin-bottom:6px}.consult-tab{height:30px;padding:0 10px;border-radius:999px;border:1px solid #e2e8f0;background:#fff;font-size:12px;font-weight:800;color:#334155;cursor:pointer}.consult-tab.is-active{border-color:#0f172a;background:#0f172a;color:#fff}.consult-vehicle-item{display:flex;align-items:center;gap:10px}.consult-vehicle-line{display:flex;align-items:center;gap:10px;min-width:0;overflow:hidden}.consult-vehicle-no{white-space:nowrap}.consult-vehicle-meta{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notice-hint{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;border-radius:10px;border:1px solid #bfdbfe;background:#eff6ff;color:#1e40af;font-size:13px;font-weight:700;line-height:1.35}.notice-hint:before{content:"!";width:18px;height:18px;flex:0 0 18px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#1e40af;color:#fff;font-size:12px;font-weight:900;line-height:1;margin-top:1px}.notice-hint.sm{padding:8px 10px;font-size:12px}.notice-hint.sm:before{width:16px;height:16px;flex-basis:16px;font-size:11px}.consult-field-carno{grid-column:auto}.consult-row-3{grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 12px;min-width:0}.customers-body{display:flex;gap:16px;height:calc(100vh - 160px)}.customers-left{width:420px;min-width:360px;overflow-y:auto}.customers-right{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}.customer-detail-stack{display:flex;flex-direction:column;gap:16px;overflow-y:auto;padding-right:6px}.detail-grid{gap:6px}.detail-grid.dense-5{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.detail-kv{padding:6px 8px;gap:4px;border-radius:10px}.customer-detail-card{padding:10px 12px;gap:8px}.dtg-inline-card{display:flex;align-items:center;justify-content:space-between;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:10px 16px;font-size:14px}.dtg-inline-left{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.dtg-inline-item{display:flex;align-items:center;gap:6px}.dtg-inline-password{font-weight:600;color:#222}.dtg-inline-input{height:28px;padding:4px 8px;border:1px solid #cbd5e1;border-radius:4px;font-size:13px}.dtg-inline-card button{border:none;cursor:pointer;font-size:13px;padding:6px 12px;border-radius:6px}.dtg-inline-btn-edit{background:#64748b!important;color:#fff!important}.dtg-inline-btn-save{background:#0f3e8c!important;color:#fff!important}.dtg-inline-btn-cancel{background:#94a3b8!important;color:#fff!important}.dtg-inline-btn{background:#0f3e8c;color:#fff;padding:6px 14px;border-radius:6px;text-decoration:none;font-weight:600;display:inline-block}.dtg-inline-btn:hover{background:#0c3272}.dtg-inline-muted{color:#64748b}.dtg-inline-error{color:#dc2626}.dtg-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;display:flex;flex-direction:column;min-height:0}.dtg-card-head{padding:12px 14px;border-bottom:1px solid #eef2f7;display:flex;align-items:center;justify-content:space-between;gap:10px}.dtg-card-title{font-weight:900;font-size:14px;color:#0f172a}.dtg-card-actions{display:inline-flex;gap:8px;align-items:center}.dtg-card-body{padding:12px 14px}.dtg-muted{font-size:12px;font-weight:800;color:#64748b}.dtg-alert{border:1px solid #fecaca;background:#fef2f2;color:#991b1b;border-radius:10px;padding:10px 12px;font-size:13px;font-weight:800;margin-bottom:10px}.dtg-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;align-content:start}.dtg-span-2{grid-column:1 / -1}.dtg-field{min-width:0;display:flex;flex-direction:column;gap:6px}.dtg-label{font-size:12px;font-weight:900;color:#475569;white-space:nowrap}.dtg-label-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.dtg-input,.dtg-textarea{width:100%;border:1px solid #cbd5e1;border-radius:10px;font-size:13px;font-weight:700;color:#0f172a;background:#fff;outline:none;box-shadow:none}.dtg-input{height:38px;padding:0 12px}.dtg-textarea{padding:10px 12px;resize:vertical}.dtg-input:focus,.dtg-textarea:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa40}.dtg-input::placeholder,.dtg-textarea::placeholder{color:#94a3b8;font-weight:700}.dtg-btn{height:34px;padding:0 12px;border-radius:10px;font-size:12px;font-weight:900;cursor:pointer;border:1px solid transparent;background:#fff;color:#0f172a}.dtg-btn:disabled{opacity:.6;cursor:not-allowed}.dtg-btn-primary{border-color:#0f172a;background:#0f172a;color:#fff}.dtg-btn-primary:hover:not(:disabled){filter:brightness(1.05)}.dtg-btn-outline{border-color:#cbd5e1;background:#fff;color:#0f172a}.dtg-btn-outline:hover:not(:disabled){background:#f8fafc}.dtg-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:2px}.dtg-check{display:inline-flex;gap:8px;align-items:center;font-size:12px;font-weight:800;color:#334155;-webkit-user-select:none;user-select:none}.dtg-check input{width:16px;height:16px;margin:0;accent-color:#0f172a}:root{--bg: #f3f4f8;--panel: #ffffff;--panel-2: #f8fafc;--line: #d4d7e2;--muted: #6b7280;--text: #111827;--primary: #2563eb;--on: #2563eb;--off: #9ca3af;--warn: #e11d48;--radius: 12px;--font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans KR", Arial, sans-serif;--side-w: 250px;--side-w-collapsed: 72px;--list-w: 300px;--gap: 16px;--meta-drive: #2563eb;--meta-dist: #16a34a;--meta-speed: #dc2626;--user-name: #111827;--navy: #1e3a8a}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}html,body,#root{height:100%;margin:0}body{min-width:320px;min-height:100vh;background:var(--bg);color:var(--text);font-family:var(--font);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}
