:root{--bg:#f6f7f9;--panel:#fff;--line:#d8dde5;--line-strong:#b8c1ce;--text:#17202a;--muted:#667085;--soft:#eef2f6;--nav:#111827;--nav-muted:#9ca3af;--green:#1f7a4d;--red:#b42318;--yellow:#a15c07;--blue:#175cd3;--shadow:0 12px 32px #0f172a14}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--text);letter-spacing:0;margin:0;font-family:Malgun Gothic,맑은 고딕,Noto Sans KR,Noto Sans CJK KR,Apple SD Gothic Neo,Arial,sans-serif}button,input,select,textarea{font:inherit;letter-spacing:0}button{cursor:pointer}.appShell{grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:var(--nav);color:#fff;flex-direction:column;gap:24px;padding:22px 16px;display:flex}.brand{gap:4px;padding:0 8px;display:grid}.brand strong{font-size:18px;line-height:1.25}.brand span{color:var(--nav-muted);font-size:12px}.nav{gap:6px;display:grid}.nav button{color:#d1d5db;text-align:left;background:0 0;border:0;border-radius:6px;grid-template-columns:24px 1fr auto;align-items:center;gap:10px;height:40px;padding:0 10px;display:grid}.nav button.active{color:#fff;background:#263241}.count{color:#f9fafb;text-align:center;background:#374151;border-radius:999px;min-width:26px;padding:2px 7px;font-size:12px}.main{grid-template-rows:auto 1fr;min-width:0;display:grid}.topbar{background:var(--panel);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;min-height:68px;padding:14px 24px;display:flex}.topbar h1{margin:0;font-size:20px;line-height:1.2}.topActions{align-items:center;gap:10px;display:flex}.search{border:1px solid var(--line);background:#fff;border-radius:6px;width:min(360px,34vw);height:38px;padding:0 12px}.content{align-content:start;gap:18px;min-width:0;padding:22px 24px;display:grid}.metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.adminMetrics{grid-template-columns:repeat(5,minmax(0,1fr));padding:14px}.metric{background:var(--panel);border:1px solid var(--line);border-radius:6px;align-content:space-between;min-height:84px;padding:14px 16px;display:grid}.metric span{color:var(--muted);font-size:13px}.metric strong{font-size:26px;line-height:1.1}.metricText{font-weight:700;font-size:15px!important;line-height:1.35!important}.workspace{grid-template-columns:minmax(0,1fr) 390px;align-items:start;gap:16px;min-width:0;display:grid}.section{background:var(--panel);border:1px solid var(--line);border-radius:6px;min-width:0;overflow:hidden}.sectionHead{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:12px 14px;display:flex}.sectionHead h2{margin:0;font-size:16px;line-height:1.2}.filters,.pillRow,.tagList{flex-wrap:wrap;gap:6px;display:flex}.filter{border:1px solid var(--line);height:30px;color:var(--text);background:#fff;border-radius:999px;padding:0 10px;font-size:12px}.filter.active{color:#fff;background:#17202a;border-color:#17202a}.linkBtn{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.tableWrap{overflow:auto}.mailList{width:100%;display:grid}.mailListHeader,.mailRow{grid-template-columns:136px minmax(150px,220px) minmax(180px,240px) minmax(220px,1fr) 184px;display:grid}.mailListHeader{z-index:1;color:#475467;background:#f9fafb;font-weight:700;position:sticky;top:0}.mailListHeader span,.mailRow>span{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;overflow-wrap:anywhere;min-width:0;padding:10px 12px;font-size:13px}.mailRow{cursor:pointer;min-height:54px}.mailRow.selected{background:#eef4ff}table{border-collapse:collapse;width:100%;min-width:900px}.mailTable{min-width:0;display:block}.mailTable thead,.mailTable tbody{display:block}.mailTable tr{grid-template-columns:136px minmax(150px,220px) minmax(180px,240px) minmax(220px,1fr) 184px;width:100%;height:auto;min-height:54px;display:grid}.mailTable th,.mailTable td{white-space:normal;overflow-wrap:anywhere;min-width:0}th,td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;white-space:nowrap;padding:10px 12px;font-size:13px}th{color:#475467;z-index:1;background:#f9fafb;font-weight:700;position:sticky;top:0}tr{height:54px}tbody tr{cursor:pointer}tr.selected{background:#eef4ff}.titleCell{white-space:normal;min-width:260px;max-width:360px;font-weight:700;line-height:1.35}.mailAccount{border-bottom:1px solid var(--line);color:var(--muted);padding:10px 14px;font-size:13px}.mailToolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.mailCompose{border-bottom:1px solid var(--line);background:#fbfcfd;gap:8px;padding:12px 14px;display:grid}.mailComposeMode{color:var(--muted);font-size:12px;font-weight:800}.mailCompose input,.mailCompose textarea{border:1px solid var(--line);background:#fff;border-radius:7px;min-width:0;padding:8px 10px;font-size:13px}.mailCompose textarea{resize:vertical;min-height:130px}.mailRecipientsInput{min-height:54px!important}.recipientPills{flex-wrap:wrap;gap:6px;display:flex}.pillButton{border:1px solid var(--line);color:var(--text);cursor:pointer;background:#fff;border-radius:999px;padding:5px 9px;font-size:12px}.contactPicker{gap:6px;display:grid}.contactList{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:6px;display:grid}.contactButton{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:7px;gap:2px;min-width:0;padding:8px 10px;display:grid}.contactButton strong,.contactButton span,.contactButton em{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.contactButton span,.contactButton em{color:var(--muted);font-size:12px;font-style:normal}.mailboxTabs{flex-wrap:wrap;gap:6px;display:flex}.mailSnippet{white-space:normal;color:#475467;overflow-wrap:anywhere;line-height:1.35}.linkCellButton{max-width:100%;color:var(--green);text-align:left;cursor:pointer;overflow-wrap:anywhere;background:0 0;border:0;font-weight:800}.linkCellButton:hover{text-decoration:underline}.mailActionCell{white-space:normal}.mailActionCell .btn+.btn{margin-left:6px}.mailActionCell span{color:var(--muted);margin-top:6px;font-size:12px;line-height:1.3;display:block}.mailRulePanel{border-bottom:1px solid var(--line);background:#fbfcfd;gap:10px;padding:12px 14px;display:grid}.compactHead{border-bottom:0;padding:0}.ruleChip{border:1px solid var(--line);background:#fff;border-radius:7px;grid-template-columns:auto minmax(180px,1fr) auto;align-items:center;gap:8px;padding:8px;display:grid}.mailSelectHint{border-bottom:1px solid var(--line);color:var(--muted);padding:10px 14px;font-size:13px}.mailDetail{border-bottom:1px solid var(--line);background:#fff;gap:10px;padding:14px;display:grid}.mailDetailHead{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.mailDetailHead h3{margin:8px 0 6px;font-size:18px}.mailDetailHead p{color:var(--muted);margin:2px 0;font-size:13px}.mailMetaPills{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.mailBody{border:1px solid var(--line);max-height:420px;color:var(--text);white-space:pre-wrap;background:#fbfcfd;border-radius:7px;margin:0;padding:12px;font-family:inherit;font-size:13px;line-height:1.55;overflow:auto}.mailResult{color:var(--green);font-size:13px;font-weight:700}.classificationEditor{gap:6px;margin-top:8px;display:grid}.classificationGrid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) 72px;gap:6px;display:grid}.classificationEditor select,.classificationEditor input{border:1px solid var(--line);background:#fff;border-radius:6px;width:100%;min-width:0;height:32px;padding:0 8px;font-size:12px}.pill{background:var(--soft);color:#344054;white-space:nowrap;border-radius:999px;align-items:center;height:24px;padding:0 8px;font-size:12px;font-weight:700;display:inline-flex}.status-승인대기{color:var(--yellow);background:#fff4e5}.status-초안{color:#475467;background:#eef2f6}.status-보정필요,.status-보정요청{color:#854a0e;background:#fff7cc}.status-분류완료{color:var(--blue);background:#e8f1ff}.status-정본승격{color:var(--green);background:#e9f7ef}.status-반려{color:var(--red);background:#fdeceb}.status-접수,.status-대기{color:#475467;background:#eef2f6}.status-반영중{color:var(--blue);background:#e8f1ff}.status-반영완료{color:var(--green);background:#e9f7ef}.status-보류{color:#854a0e;background:#fff7cc}.sec-S0{color:var(--red);background:#fdeceb}.sec-S1{color:var(--yellow);background:#fff4e5}.sec-S2{color:var(--blue);background:#e8f1ff}.sec-S3{color:var(--green);background:#e9f7ef}.detail{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:6px;position:sticky;top:20px;overflow:hidden}.detailHead{border-bottom:1px solid var(--line);gap:10px;padding:16px;display:grid}.detailHead h2{margin:0;font-size:17px;line-height:1.35}.detailBody{gap:16px;padding:16px;display:grid}.field{gap:6px;display:grid}.field label{color:var(--muted);font-size:12px;font-weight:700}.field p{margin:0;font-size:13px;line-height:1.5}.field ul{margin:0;padding-left:18px;font-size:13px;line-height:1.55}.followList{gap:8px;display:grid}.followItem{border:1px solid var(--line);background:#f9fafb;border-radius:6px;grid-template-columns:1fr auto;align-items:start;gap:10px;padding:10px;display:grid}.followItem strong,.followItem span,.followItem small{display:block}.followItem strong{font-size:13px;line-height:1.35}.followItem span,.followItem small{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.35}.actions{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.btn{border:1px solid var(--line-strong);height:38px;color:var(--text);background:#fff;border-radius:6px;font-size:13px;font-weight:700}.btn.primary{border-color:var(--green);background:var(--green);color:#fff}.btn.warn{border-color:var(--yellow);color:var(--yellow)}.btn.danger{border-color:var(--red);color:var(--red)}.actionRow{flex-wrap:wrap;gap:6px;display:flex}.actionRow .btn{min-width:58px}.empty{color:var(--muted);text-align:center;padding:30px}.settingsGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.settingsBlock{border:1px solid var(--line);background:#fff;border-radius:6px;align-content:start;gap:10px;padding:14px;display:grid}.settingsBlock h3{margin:0;font-size:15px}@media (max-width:1100px){.appShell{grid-template-columns:74px minmax(0,1fr)}.brand span,.brand strong,.nav .label,.nav .count{display:none}.nav button{grid-template-columns:1fr;justify-items:center;padding:0}.workspace{grid-template-columns:1fr}.detail{position:static}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.appShell{grid-template-columns:1fr}.sidebar{z-index:3;padding:10px;position:sticky;top:0}.brand{display:none}.nav{grid-template-columns:repeat(5,1fr)}.nav button{height:44px}.topbar{flex-direction:column;align-items:stretch;height:auto;padding:14px}.search{width:100%}.content{padding:14px}.metrics,.settingsGrid{grid-template-columns:1fr}}.notice{color:var(--red);background:#fdf1ef;border:1px solid #f0c4bd;border-radius:8px;margin:12px 24px 0;padding:10px 14px;font-size:13px}.authShell{justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.authCard{border:1px solid var(--border,#d9d9d2);background:var(--panel,#fff);border-radius:12px;flex-direction:column;gap:16px;width:100%;max-width:360px;padding:32px 28px;display:flex}.authBrand{font-size:18px}.authDesc{color:var(--muted,#6b6b63);margin:0;font-size:13px;line-height:1.6}.authButton{text-align:center;justify-content:center;width:100%;padding:10px 0;text-decoration:none;display:inline-flex}.deptPicker{flex-direction:column;gap:14px;display:flex}.deptOptions{flex-wrap:wrap;gap:8px;display:flex}.scopeToggle{gap:4px;display:flex}.userChip{border-left:1px solid var(--border,#d9d9d2);flex-direction:column;padding:0 10px;line-height:1.25;display:flex}.userChip strong{font-size:13px}.userChip span{color:var(--muted,#6b6b63);font-size:11px}.inlineForm{flex-wrap:wrap;gap:8px;padding:10px 0;display:flex}.inlineForm input,.inlineForm select,.inlineForm textarea{border:1px solid var(--border,#d9d9d2);background:var(--panel,#fff);border-radius:7px;padding:7px 10px;font-size:13px}.inlineForm textarea,.formGrid textarea{resize:vertical;min-height:74px}.inlineForm input[type=number]{width:110px}.checkLabel{min-height:34px;color:var(--text,#222);align-items:center;gap:6px;font-size:13px;display:inline-flex}.checkLabel input{width:auto}.templatePreview{border:1px solid var(--border,#d9d9d2);background:var(--bg,#f7f7f2);white-space:pre-wrap;border-radius:7px;max-width:720px;max-height:260px;padding:10px;font-size:12px;line-height:1.55;overflow:auto}.actionBar{border:1px solid var(--border,#d9d9d2);background:var(--panel,#fff);border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;padding:12px;display:flex}.actionBar strong{margin-right:8px}.overdue{color:#c0392b;font-weight:600}.infoBar{color:#2d6a2d;background:#eef6ee;border-radius:7px;margin:6px 0;padding:8px 12px;font-size:13px}.checkButtons{gap:4px;display:inline-flex}.dim{color:var(--muted,#6b6b63);font-size:12px}.approvalComposer{border-bottom:1px solid var(--line);background:#fbfcfd;gap:12px;padding:14px;display:grid}.composerHead{justify-content:space-between;align-items:center;gap:12px;display:flex}.formGrid{grid-template-columns:repeat(4,minmax(150px,1fr));align-items:start;gap:8px;display:grid}.formGrid input,.formGrid select,.formGrid textarea{border:1px solid var(--border,#d9d9d2);background:#fff;border-radius:7px;min-width:0;padding:8px 10px;font-size:13px}.templateSelect{border:1px solid var(--line);background:#fff;border-radius:7px;min-width:260px;height:34px;padding:0 10px;font-size:13px}.formField{align-content:start;gap:5px;min-width:0;display:grid}.formField span{color:var(--muted);font-size:12px;font-weight:700}.formField input,.formField select,.formField textarea{width:100%}.paymentRows{border:1px solid var(--line);background:#fff;border-radius:7px;gap:8px;padding:10px;display:grid}.paymentRow{grid-template-columns:130px 1fr 120px 130px 120px 1.4fr 1.4fr 64px;align-items:center;gap:6px;display:grid}.paymentRow input{border:1px solid var(--border,#d9d9d2);border-radius:7px;min-width:0;height:34px;padding:7px 9px;font-size:12px}.attachmentList{flex-wrap:wrap;gap:6px;min-width:0;display:flex}.wide{grid-column:span 2}@media (max-width:760px){.mailToolbar{flex-direction:column;align-items:flex-start}.mailDetailHead{flex-direction:column}.mailList{gap:8px}.mailListHeader{display:none}.mailRow{border:1px solid var(--line);background:#fff;border-radius:7px;grid-template-columns:1fr;width:100%;min-height:0}.mailRow>span{border-bottom:0;padding:7px 10px}.titleCell{min-width:0;max-width:none}.mailActionCell .btn+.btn{margin-left:0}.ruleChip{grid-template-columns:1fr;align-items:start}.composerHead{flex-direction:column;align-items:flex-start}.formGrid,.paymentRow{grid-template-columns:1fr}.wide{grid-column:auto}}.approvalsLayout{grid-template-columns:minmax(340px,420px) minmax(0,1fr);align-items:stretch;gap:16px;min-height:720px;padding:14px;display:grid}.approvalPane{border:1px solid var(--line);background:#fff;border-radius:6px;min-width:0;overflow:hidden}.approvalPaneList,.approvalPaneDetail{max-height:calc(100vh - 190px)}.approvalPaneList{display:flex}.approvalPaneDetail{background:#f8fafc;flex-direction:column;display:flex}.approvalList{flex-direction:column;flex:1;min-height:0;display:flex}.approvalListHeader{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:flex-start;gap:12px;padding:16px;display:flex}.approvalListHeader strong{font-size:16px;line-height:1.2;display:block}.approvalListHeader p{color:var(--muted);margin:6px 0 0;font-size:12px;line-height:1.45}.approvalListTotal{color:#344054;background:#eef2f6;border-radius:999px;flex:none;padding:6px 10px;font-size:12px;font-weight:700}.approvalTabs{border-bottom:1px solid var(--line);background:#f9fafb;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:12px 16px;display:grid}.approvalTab{border:1px solid var(--line);height:38px;color:var(--muted);background:#fff;border-radius:6px;justify-content:center;align-items:center;gap:6px;font-size:12px;font-weight:700;display:flex}.approvalTab span{color:inherit}.approvalTab.active{border-color:var(--blue);color:var(--blue);background:#eef4ff}.approvalRows{flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}.approvalRow{border:0;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;width:100%;padding:14px 16px;transition:background .2s,box-shadow .2s}.approvalRow:last-child{border-bottom:0}.approvalRow:hover{background:#f9fafb}.approvalRow.selected{box-shadow:inset 3px 0 0 var(--blue);background:#eef4ff}.approvalRowTop{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.docTitleWrap{align-items:flex-start;gap:8px;min-width:0;display:flex}.docTypeChip{color:#344054;background:#eef2f6;border-radius:999px;flex:none;padding:3px 7px;font-size:11px;font-weight:700}.docInfo{gap:5px;min-width:0;display:grid}.docTitle{color:var(--text);word-break:keep-all;font-size:13px;font-weight:600;line-height:1.45}.approvalRowMeta{color:var(--muted);font-size:12px;line-height:1.35}.docNumber{color:#667085;margin-top:10px;font-size:11px}.docStepStatus{flex:none;justify-content:flex-end;display:flex}.statusPill{border-radius:3px;padding:4px 8px;font-size:11px;font-weight:600;display:inline-block}.statusPill.status-초안{color:#6b7280;background:#f3f4f6}.statusPill.status-승인대기{color:#a15c07;background:#fef3c7}.statusPill.status-승인{color:#065f46;background:#d1fae5}.statusPill.status-반려{color:#7f1d1d;background:#fee2e2}.statusPill.status-보정,.statusPill.status-보정요청{color:#3730a3;background:#e0e7ff}.approvalSelectionBar{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;display:flex}.approvalSelectionText{gap:4px;min-width:0;display:grid}.approvalSelectionText strong{font-size:16px;line-height:1.35}.approvalSelectionText span,.approvalSelectionMeta{color:var(--muted);font-size:12px}.approvalSelectionMeta{flex:none;align-items:center;gap:8px;display:flex}.approvalDetailEmpty{color:var(--muted);padding:32px 24px;font-size:13px}.emptyState{text-align:center;color:var(--muted);padding:24px;font-size:13px}.approvalDocument{flex-direction:column;flex:1;gap:12px;min-height:0;padding:14px;display:flex;overflow-y:auto}@media (max-width:1180px){.approvalsLayout{grid-template-columns:1fr;min-height:0}.approvalPaneList,.approvalPaneDetail{max-height:none}.approvalSelectionBar,.approvalRowTop{flex-direction:column;align-items:stretch}.approvalSelectionMeta{justify-content:space-between}}.statusStrip{border:1px solid var(--line);background:#f9fafb;border-radius:4px;justify-content:space-between;align-items:center;padding:12px;display:flex}.statusStrip.status-초안{background:#f3f4f6;border-color:#e5e7eb}.statusStrip.status-승인대기{background:#fffbeb;border-color:#fcd34d}.statusStrip.status-승인{background:#f0fdf4;border-color:#86efac}.statusStrip.status-반려{background:#fef2f2;border-color:#fca5a5}.statusStrip.status-보정{background:#f5f3ff;border-color:#a5b4fc}.statusContent{align-items:center;gap:12px;display:flex}.statusLabel{font-size:13px;font-weight:600}.myTurnBadge{background:var(--red);color:#fff;border-radius:3px;padding:4px 8px;font-size:11px;font-weight:600;display:inline-block}.documentPaper{border:1px solid var(--line);background:#fff;border-radius:6px;padding:32px;box-shadow:0 1px 3px #0000000d}.documentHeader{border-bottom:2px solid var(--text);margin-bottom:16px;padding-bottom:20px}.documentHeaderTop{grid-template-columns:minmax(0,1fr) minmax(260px,520px) auto;align-items:start;gap:16px;display:grid}.documentHeaderSpacer{min-height:1px}.documentTitle{letter-spacing:.08em;text-align:center;margin:6px 0 0;font-size:24px;font-weight:700;line-height:1.3}.documentStampPanel{border:1px solid var(--line);background:#fafafa;border-radius:6px;justify-self:end;padding:10px 12px}.stampRow{flex-wrap:wrap;justify-content:flex-end;align-items:flex-start;gap:10px;display:flex}.stampTrack{gap:6px;display:grid}.stampTrack.compact{min-width:110px}.stampTrackCells{gap:8px;display:flex}.stampTrackLabel{color:var(--muted);text-align:center;font-size:10px;font-weight:700}.stampBox{text-align:center;width:86px}.stampKindLabel{color:var(--text);white-space:nowrap;text-overflow:ellipsis;margin-bottom:4px;font-size:11px;overflow:hidden}.stamp{border:1px solid var(--line);background:#fff;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;width:86px;height:86px;font-size:11px;display:flex}.stamp.stamp-대기{color:#d1d5db;border-style:dashed}.stamp.stamp-승인{border-color:var(--green);background:#f0fdf4}.stamp.stamp-반려{border-color:var(--red);background:#fef2f2}.stamp.stamp-보정요청{border-color:var(--yellow);background:#fefce8}.stamp.stamp-비동의{background:#fff7ed;border-color:#f59e0b}.stampEmpty{width:100%;height:100%}.stampPendingText{font-size:12px;font-weight:600}.stampName{margin-bottom:4px;font-weight:700}.stampDate{color:var(--muted);font-size:10px}.stampStatus{margin-top:2px;font-size:10px;font-weight:600}.stampGroup{border:1px solid var(--line);background:#fff;border-radius:6px;padding:8px}.stampGroup.compact{min-width:110px}.stampGroupLabel{color:var(--muted);margin-bottom:4px;font-size:10px;font-weight:600}.stampSmall{padding:3px 0;font-size:11px;line-height:1.4}.stampSmallNote{color:#92400e;margin-top:2px}@media (max-width:1080px){.documentHeaderTop{grid-template-columns:1fr}.documentHeaderSpacer{display:none}.documentTitle{text-align:left}.documentStampPanel{justify-self:stretch}.stampRow{justify-content:flex-start}}.requesterBlock{background:#f9fafb;border-radius:4px;grid-template-columns:repeat(2,1fr);gap:12px 16px;margin-bottom:16px;padding:12px;display:grid}.infoRow{grid-template-columns:80px 1fr;align-items:center;gap:8px;font-size:13px;display:grid}.infoLabel{color:#475467;font-weight:600}.infoValue{color:var(--text)}.documentBody{border-bottom:1px solid var(--line);padding:16px 0}.documentContent{gap:16px;display:grid}.contentSection{gap:6px;display:grid}.contentSection h3{color:#17202a;margin:0;font-size:13px;font-weight:700}.contentSection p{color:var(--text);white-space:pre-wrap;word-break:break-word;margin:0;font-size:13px;line-height:1.5}.paymentTable{border-collapse:collapse;width:100%;margin:8px 0;font-size:12px}.paymentTable th,.paymentTable td{border:1px solid var(--line);text-align:left;padding:8px}.paymentTable th{color:#475467;background:#f9fafb;font-weight:600}.paymentTable td{color:var(--text)}.amountCell{text-align:right}.attachmentsSection{padding:12px 0}.attachmentsSection h3{margin:0 0 8px;font-size:13px;font-weight:700}.attachmentsSection ul{margin:0;padding:0;list-style:none}.attachmentsSection li{padding:4px 0;font-size:12px}.attachmentsSection a{color:var(--blue);text-decoration:none}.attachmentsSection a:hover{text-decoration:underline}.judgmentBox{border:2px solid var(--yellow);background:#fff;border-radius:6px;overflow:hidden}.judgmentBanner{color:#a15c07;background:#fef3c7;padding:12px;font-size:13px;font-weight:600}.judgmentContent{gap:12px;padding:16px;display:grid}.reasonInput{gap:6px;display:grid}.reasonInput label{color:#475467;font-size:12px;font-weight:600}.required{color:var(--red)}.reasonInput textarea{border:1px solid var(--line);border-radius:4px;padding:8px;font-family:inherit;font-size:12px}.judgmentButtons{gap:8px;display:flex}.judgmentButtons .btn{flex:1}.judgmentButtons .btn.active{color:#a15c07;background:#fef3c7}.judgmentSection{border:1px solid var(--line);background:#f9fafb;border-radius:4px;gap:8px;padding:12px;display:grid}.judgmentSectionLabel{color:var(--text);border-bottom:1px solid var(--line);padding-bottom:4px;font-size:12px;font-weight:600}.judgmentSection .reasonInput{margin-bottom:8px}.judgmentSection .judgmentButtons{margin-top:4px}.judmentSectionNote{color:var(--muted);margin-left:6px;font-size:11px;font-weight:400}.notice{border-left:4px solid;border-radius:6px;margin-bottom:16px;padding:12px}.notice.rejection{background:#fee2e2;border-left-color:#dc2626}.notice.revision{background:#fef3c7;border-left-color:#f59e0b}.noticeTitle{color:#374151;margin-bottom:8px;font-size:13px;font-weight:600}.notice.rejection .noticeTitle{color:#991b1b}.notice.revision .noticeTitle{color:#78350f}.noticeContent{color:#374151;margin-bottom:8px;font-size:12px;line-height:1.5}.notice.rejection .noticeContent{color:#7f1d1d}.notice.revision .noticeContent{color:#92400e}.noticeAction{color:#374151;font-size:12px;font-weight:500}.notice.rejection .noticeAction{color:#991b1b}.notice.revision .noticeAction{color:#78350f}.approvalEdit{flex-direction:column;flex:1;gap:16px;min-height:0;padding:14px;display:flex;overflow-y:auto}.editHeader{justify-content:space-between;align-items:center;display:flex}.editHeader h2{margin:0;font-size:16px}.editForm{border:1px solid var(--line);background:#fff;border-radius:4px;gap:12px;padding:14px;display:grid}.aiAssistBox{background:#f8fafc;border:1px solid #cbd5e1;border-radius:10px;gap:10px;padding:16px;display:grid}.aiAssistBox label{color:#1f2937;font-size:13px;font-weight:700}.aiAssistHint{color:#475467;margin:0;font-size:12px;line-height:1.6}.aiAssistTextarea{resize:vertical;min-height:180px}.expenseEvidenceAssist{display:grid}.expenseEvidenceDropZone{background:#f8fafc;border:1px dashed #94a3b8;border-radius:10px;outline:none;gap:10px;padding:16px;display:grid}.expenseEvidenceDropZone strong{color:#0f172a;font-size:13px}.expenseEvidenceDropZone p{color:#475467;margin:0;font-size:12px;line-height:1.6}.expenseEvidenceDropZone:focus,.expenseEvidenceDropZone:hover{border-color:var(--blue);background:#eef4ff}.expenseEvidenceDropZone.busy{opacity:.75}.expenseEvidenceActions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.expenseEvidenceInput{display:none}.expenseEvidenceHintText{color:var(--muted);font-size:11px}.expenseEvidenceFileList{flex-wrap:wrap;gap:8px;display:flex}.expenseEvidenceFilePill{color:#334155;background:#e2e8f0;border-radius:999px;align-items:center;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.formGroup{gap:6px;display:grid}.formGroup label{color:#475467;font-size:12px;font-weight:600}.formGroup input,.formGroup textarea,.formGroup select{border:1px solid var(--line);border-radius:4px;padding:8px;font-size:12px}.formGroup input:disabled,.formGroup textarea:disabled,.formGroup select:disabled{color:var(--muted);background:#f9fafb}.editActions{gap:8px;display:flex}.editActions .btn{flex:1}.createModal{z-index:1000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modalOverlay{background:#0000004d;position:absolute;inset:0}.modalContent{width:90%;max-width:500px;max-height:90vh;box-shadow:var(--shadow);background:#fff;border-radius:8px;flex-direction:column;display:flex;position:relative}.modalHeader{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:16px;display:flex}.modalHeader h2{margin:0;font-size:16px}.closeBtn{cursor:pointer;color:var(--muted);background:0 0;border:0;font-size:18px}.closeBtn:hover{color:var(--text)}.modalBody{flex:1;gap:12px;padding:16px;display:grid;overflow-y:auto}.modalActions{border-top:1px solid var(--line);gap:8px;padding:16px;display:flex}.modalActions .btn{flex:1}.actionBar{border-top:1px solid var(--line);gap:8px;padding:12px 0;display:flex}.actionBar .btn{min-width:100px}.btn{border:1px solid var(--line);height:36px;color:var(--text);cursor:pointer;white-space:nowrap;background:#fff;border-radius:4px;padding:0 12px;font-size:13px;font-weight:500;transition:all .2s}.btn:hover{border-color:var(--text);background:#f9fafb}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--blue);color:#fff;border-color:var(--blue)}.btn.primary:hover{background:#1047a1;border-color:#1047a1}.btn.secondary{background:0 0}.btn.active{border-color:var(--text);background:#eef2f6}.notice{border-radius:4px;padding:12px;font-size:13px}.notice.error{color:#7f1d1d;background:#fee2e2;border:1px solid #fca5a5}.notice.success{color:#166534;background:#dcfce7;border:1px solid #86efac}.notice.warning{color:#92400e;background:#fef3c7;border:1px solid #fde68a}.approvalLineEditor{border:1px solid var(--line);background:#fff;border-radius:6px;padding:12px}.approvalLineEditor.readOnly{background:#f9fafb}.approvalLineSteps{gap:8px;margin-bottom:12px;display:grid}.approvalLineEmpty{text-align:center;color:var(--muted);padding:12px;font-size:13px}.approvalLineStepRow{border:1px solid var(--line);background:#fff;border-radius:4px;grid-template-columns:90px 1fr auto;align-items:stretch;gap:8px;padding:10px;display:grid}.approvalLineStepKindSelect{border:1px solid var(--border,#d9d9d2);background:#fff;border-radius:4px;min-width:0;padding:6px 8px;font-size:12px}.approvalLinePersonSection{min-width:0}.approvalLinePersonPicker{position:relative}.approvalLinePersonInputWrapper{grid-template-columns:1fr auto;align-items:center;gap:4px;display:grid}.approvalLinePersonInput{border:1px solid var(--border,#d9d9d2);background:#fff;border-radius:4px;min-width:0;padding:6px 8px;font-size:12px}.approvalLinePersonClear{width:24px;height:24px;color:var(--muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:14px}.approvalLinePersonClear:hover{color:var(--text)}.approvalLinePersonDropdown{z-index:100;border:1px solid var(--line);background:#fff;border-radius:4px;max-height:300px;margin-top:2px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 2px 8px #0000001a}.approvalLinePersonGroupLabel{color:#6b7280;border-bottom:1px solid var(--line);background:#f3f4f6;padding:6px 8px;font-size:11px;font-weight:600}.approvalLinePersonItem{text-align:left;cursor:pointer;background:0 0;border:none;border-bottom:1px solid #f3f4f6;width:100%;padding:8px;transition:background .2s}.approvalLinePersonItem:last-child{border-bottom:none}.approvalLinePersonItem:hover{background:#f9fafb}.approvalLinePersonName{color:var(--text);font-size:12px;font-weight:500}.approvalLinePersonEmail{color:var(--muted);margin-top:2px;font-size:11px}.approvalLinePersonEmpty{text-align:center;color:var(--muted);padding:12px 8px;font-size:12px}.approvalLinePersonDisplay{color:var(--text);background:#f9fafb;border-radius:4px;padding:6px 8px;font-size:12px}.approvalLineRoleSelect{border:1px solid var(--border,#d9d9d2);background:#fff;border-radius:4px;width:100%;min-width:0;padding:6px 8px;font-size:12px}.approvalLineEditor .approvalLineActions{flex-shrink:0;align-items:center;gap:6px;display:flex}.approvalLineBtn{border:1px solid var(--border,#d9d9d2);color:var(--text);cursor:pointer;background:#fff;border-radius:4px;padding:6px 10px;font-size:12px;transition:background .2s}.approvalLineBtn:hover:not(:disabled){background:#f9fafb}.approvalLineBtn:disabled{opacity:.5;cursor:not-allowed}.approvalLineBtnSmall{width:28px;height:28px;padding:0}.approvalLineBtn.danger{color:#dc2626}.approvalLineBtn.danger:hover:not(:disabled){background:#fee2e2}.approvalLineBtnAdd{border:1px dashed var(--line);width:100%;color:var(--text);cursor:pointer;background:#f9fafb;border-radius:4px;padding:8px 12px;font-size:13px;font-weight:500;transition:background .2s}.approvalLineBtnAdd:hover{background:#f3f4f6}.approvalLineStepEditor{gap:8px;min-width:0;display:grid}.approvalLineStepMode{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.approvalLineStepMode label{color:var(--muted);align-items:center;gap:4px;font-size:12px;display:inline-flex}.approvalLineStepEditor select{border:1px solid var(--line);background:#fff;border-radius:6px;width:100%;min-width:0;height:34px;padding:0 10px}.approvalLineSection{border-top:1px solid var(--line);margin-top:16px;padding-top:16px}.approvalLineSectionHeader{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.approvalLineSectionHeader h3{margin:0;font-size:13px;font-weight:600}.approvalLineEditContainer{background:#f9fafb;border-radius:6px;gap:12px;padding:12px;display:grid}.approvalLineEditActions{justify-content:flex-end;gap:8px;display:flex}.approvalLineEditor{background:0 0;border:none;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;padding:0;display:grid}.approvalLineEditor.readOnly{background:0 0;border:none}.approvalLineEditor .approvalLineSection{border:1px solid var(--line);border-top:1px solid var(--line);background:#fff;border-radius:8px;margin:0;padding:12px}.approvalLineSectionTitle{color:var(--text);border-bottom:2px solid #e5e7eb;margin:0 0 12px;padding-bottom:8px;font-size:13px;font-weight:600}.approvalLineSectionEmpty{text-align:center;color:var(--muted);padding:12px;font-size:12px}.approvalLineSectionSteps{gap:8px;margin-bottom:12px;display:grid}.approvalLineEditor .approvalLineStepRow{border:1px solid var(--line);background:#f9fafb;border-radius:6px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;padding:10px;display:grid}.approvalLineBtnAddPerson{border:1px dashed var(--line);width:100%;color:var(--text);cursor:pointer;background:0 0;border-radius:6px;padding:8px 12px;font-size:12px;font-weight:500;transition:background .2s}.approvalLineBtnAddPerson:hover{background:#f3f4f6}.approvalLineEditContainer>.approvalLineActions{border-top:1px solid var(--line);gap:8px;margin-top:12px;padding-top:12px;display:flex}.defaultApprovalLineModal{z-index:1000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.defaultApprovalLineModal .modalOverlay{cursor:pointer;background:#0000004d;position:absolute;inset:0}.defaultApprovalLineModalContent{background:#fff;border-radius:12px;flex-direction:column;width:min(96vw,1240px);max-width:min(96vw,1240px);min-height:min(84vh,760px);max-height:92vh;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 40px #00000026}.defaultApprovalLineModalHeader{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 24px;display:flex}.defaultApprovalLineModalHeader h2{margin:0;font-size:20px;font-weight:700}.defaultApprovalLineModalHeader p{color:var(--muted);margin:6px 0 0;font-size:13px;line-height:1.5}.defaultApprovalLineModal .closeBtn{cursor:pointer;color:var(--muted);background:0 0;border:none;width:24px;height:24px;padding:0;font-size:20px}.defaultApprovalLineModal .closeBtn:hover{color:var(--text)}.defaultApprovalLineModalBody{flex:1;gap:18px;padding:24px;display:grid;overflow:auto}.defaultApprovalLineToolbar{grid-template-columns:minmax(240px,320px) minmax(260px,360px);gap:16px;display:grid}.defaultApprovalLineModal .formGroup{gap:8px;display:grid}.defaultApprovalLineModal .formGroup label{color:var(--text);font-size:13px;font-weight:600}.defaultApprovalLineModal .formGroup input,.defaultApprovalLineModal .formGroup select{border:1px solid var(--line);background:#fff;border-radius:6px;padding:9px 12px;font-size:13px}.defaultApprovalLineIntro{grid-template-columns:minmax(260px,320px) minmax(0,1fr);align-items:start;gap:18px;display:grid}.defaultApprovalDocTypeGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.defaultApprovalDocTypeCard{border:1px solid var(--line);text-align:left;background:#fff;border-radius:10px;gap:6px;min-height:92px;padding:14px;display:grid}.defaultApprovalDocTypeCard strong{color:var(--text);font-size:14px}.defaultApprovalDocTypeCard span{color:var(--muted);font-size:12px;line-height:1.45}.defaultApprovalDocTypeCard:hover:not(:disabled){border-color:var(--blue);background:#f8fbff}.defaultApprovalLineWorkspace{grid-template-columns:minmax(0,1.85fr) minmax(300px,360px);align-items:start;gap:20px;display:grid}.defaultApprovalLineMain,.defaultApprovalLineSide{gap:16px;min-width:0;display:grid}.defaultApprovalLineSummaryCards{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.defaultApprovalLineSummaryCard{border:1px solid var(--line);background:#f8fafc;border-radius:8px;gap:6px;padding:14px;display:grid}.defaultApprovalLineSummaryCard span{color:var(--muted);font-size:12px}.defaultApprovalLineSummaryCard strong{font-size:24px;line-height:1}.defaultApprovalLineEditorGroup{min-width:0}.defaultApprovalLineGuide,.savedTemplatesSection{border:1px solid var(--line);background:#f9fafb;border-radius:8px;padding:16px}.defaultApprovalLineGuide strong{font-size:13px}.defaultApprovalLineGuide ul{color:#475467;gap:8px;margin:10px 0 0;padding-left:18px;font-size:12px;line-height:1.5;display:grid}.savedTemplatesSection h3{margin:0 0 12px;font-size:13px;font-weight:600}.savedTemplatesList{gap:10px;max-height:52vh;display:grid;overflow:auto}.savedTemplateItem{border:1px solid var(--line);background:#fff;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px;display:flex}.templateInfo{flex:1;min-width:0}.templateName{color:var(--text);margin-bottom:4px;font-size:13px;font-weight:600}.templateSteps{color:var(--muted);word-break:break-word;font-size:11px;line-height:1.5}.defaultApprovalLineEmpty{border:1px dashed var(--line);text-align:center;color:var(--muted);background:#f9fafb;border-radius:8px;padding:24px;font-size:13px}.defaultApprovalLineModalActions{border-top:1px solid var(--line);background:#f9fafb;justify-content:flex-end;gap:8px;padding:16px 24px;display:flex}.defaultApprovalLineModalActions .btn{flex:none;min-width:120px}@media (max-width:1180px){.defaultApprovalLineToolbar,.defaultApprovalLineWorkspace,.defaultApprovalLineIntro{grid-template-columns:1fr}.defaultApprovalDocTypeGrid,.defaultApprovalLineSummaryCards{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:900px){.approvalLineEditor,.defaultApprovalDocTypeGrid,.defaultApprovalLineSummaryCards{grid-template-columns:1fr}.defaultApprovalLineModalContent{width:98vw;max-width:98vw;min-height:auto}}.sectionHeadActions{align-items:center;gap:8px;display:flex}.orgChartMetrics{grid-template-columns:repeat(6,minmax(0,1fr))}.orgChartLayout{grid-template-columns:minmax(0,1.9fr) 340px;align-items:start;gap:16px;display:grid}.orgChartSidebar{gap:16px;display:grid}.orgChartToolbar{justify-content:space-between;align-items:center;gap:12px;padding:0 14px 14px;display:flex}.orgChartSearch{width:min(420px,100%)}.orgChartTreeWrap{gap:18px;padding:0 14px 14px;display:grid}.orgChartRootNode,.orgChartHeadquartersNode{border:1px solid var(--line-strong);background:linear-gradient(#fff 0%,#f7f9fc 100%);border-radius:14px;gap:6px;width:fit-content;min-width:220px;max-width:100%;padding:14px 18px;display:grid;box-shadow:0 8px 24px #0f172a0f}.orgChartRootNode{text-align:center;margin:0 auto}.orgChartRootNode strong,.orgChartHeadquartersNode strong,.orgChartDeptHead h3,.orgChartMemberTreeItem strong{display:block}.orgChartRootNode span,.orgChartHeadquartersNode span{color:var(--muted);font-size:13px}.orgChartTreeBranches{gap:18px;display:grid}.orgChartBranch{gap:14px;padding-left:24px;display:grid;position:relative}.orgChartBranch:before{content:"";border-left:2px solid #d7dfea;position:absolute;top:0;bottom:0;left:11px}.orgChartDepartmentTreeList{gap:14px;padding-left:28px;display:grid;position:relative}.orgChartDepartmentTreeList:before{content:"";border-left:2px solid #e4ebf5;position:absolute;top:0;bottom:0;left:9px}.orgChartDepartmentNode{border:1px solid var(--line);background:#fff;border-radius:10px;gap:12px;padding:14px;display:grid;position:relative}.orgChartDepartmentNode:before,.orgChartMemberTreeItem:before{content:"";border-top:2px solid #d7dfea;width:20px;position:absolute;top:22px;left:-20px}.orgChartDeptHead h3{margin:0 0 8px;font-size:16px}.orgChartMemberTreeList{gap:8px;padding-left:18px;display:grid}.orgChartMemberTreeItem{background:#fbfcfe;border:1px solid #e9edf3;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:12px;padding:10px 12px;display:flex;position:relative}.orgChartToolbarActions{align-items:center;gap:10px;display:flex}.orgChartToggleNode{cursor:pointer;text-align:left;font:inherit;color:inherit}button.orgChartDeptHead{background:0 0;border:0;width:100%;padding:0}.orgChartCaret{color:#64748b;width:18px;font-size:12px;display:inline-block}.orgChartHeadquartersNode.attention{border-color:#f0b429}.orgChartDepartmentNode.attention{background:#fffbeb;border-color:#f0b429;border-left-style:solid;border-left-width:4px}.orgChartMemberTreeItem.attention{background:#fffaf0;border-color:#f3d9a4}.orgChartAttentionBadge{color:#b45309;margin-left:8px;font-size:12px;font-style:normal;font-weight:600}.orgChartAttentionNote{color:#b45309;margin-top:8px;font-size:12px;font-weight:600}.orgChartGuide,.orgChartChecklist{padding:14px}.hermesChat{flex-direction:column;gap:12px;height:calc(100vh - 190px);min-height:480px;display:flex}.hermesChatIntro{background:#f8fafc;border:1px solid #cbd5e1;border-radius:10px;padding:12px 16px}.hermesChatIntro p{color:var(--muted);margin:6px 0 0;font-size:12px;line-height:1.5}.hermesChatScroll{border:1px solid var(--line);background:#fff;border-radius:10px;flex-direction:column;flex:1;gap:14px;min-height:0;padding:14px;display:flex;overflow-y:auto}.hermesChatEmpty{color:var(--muted);margin:auto;font-size:13px}.hermesChatTurn{flex-direction:column;gap:8px;display:flex}.hermesChatBubble{border:1px solid var(--line);border-radius:12px;max-width:76%;padding:10px 14px;font-size:13px;line-height:1.6}.hermesChatBubble.user{background:#eef4ff;border-color:#c7d7f5;align-self:flex-end}.hermesChatBubble.assistant{background:#f9fafb;align-self:flex-start}.hermesChatBubble.blocked{background:#fffbeb;border-color:#f0b429}.hermesChatWho{color:#64748b;margin-bottom:4px;font-size:11px;font-weight:700;display:block}.hermesChatText{white-space:pre-wrap;overflow-wrap:anywhere}.hermesChatComposer{align-items:flex-end;gap:10px;display:flex}.hermesChatComposer textarea{border:1px solid var(--line);resize:vertical;border-radius:8px;flex:1;padding:10px 12px;font-size:13px}.hermesChatComposer .btn{min-width:120px;height:40px}.orgChartGuide ul{color:#475467;gap:10px;margin:0;padding-left:18px;font-size:13px;line-height:1.55;display:grid}@media (max-width:1180px){.orgChartMetrics{grid-template-columns:repeat(3,minmax(0,1fr))}.orgChartLayout{grid-template-columns:1fr}}@media (max-width:760px){.orgChartMetrics{grid-template-columns:repeat(2,minmax(0,1fr))}.orgChartToolbar,.orgChartMemberTreeItem{flex-direction:column;align-items:stretch}.orgChartBranch,.orgChartDepartmentTreeList,.orgChartMemberTreeList{padding-left:14px}.orgChartDepartmentNode:before,.orgChartMemberTreeItem:before{width:12px;left:-12px}}
