:root{
  --paper:#F3F5F2; --surface:#FFFFFF; --ink:#1E2A24; --muted:#6C7A72;
  --line:#E3E7E2; --accent:#2F5D50; --accent-soft:#E5EEE9; --brass:#A67C2E; --brick:#A4503E;
  /* 식약처 업무 — 세이지 그린과 같은 명도·채도대의 슬레이트 블루 (형제색) */
  --blue:#2D5B7D; --blue-soft:#E5EDF3; --blue-deep:#1E3F58;
}
*{box-sizing:border-box;}
html,body{margin:0;height:100%;}
body{background:var(--paper);color:var(--ink);
  font-family:-apple-system,"Apple SD Gothic Neo",system-ui,"Malgun Gothic",sans-serif;-webkit-font-smoothing:antialiased;}
@media (prefers-reduced-motion: reduce){ *{transition:none!important;animation:none!important;} }
#app{display:flex;min-height:100vh;}

.rail{width:230px;flex-shrink:0;background:var(--surface);border-right:1px solid var(--line);
  padding:22px 14px;display:flex;flex-direction:column;gap:22px;}
.brand{display:flex;align-items:center;gap:11px;padding:0 6px;}
.brand-mark{width:34px;height:34px;border-radius:9px;background:var(--accent);color:#fff;
  display:grid;place-items:center;font-size:19px;font-weight:600;}
.brand-title{font-size:14.5px;font-weight:650;letter-spacing:-.01em;}
.brand-sub{font-size:10.5px;color:var(--muted);letter-spacing:.14em;text-transform:uppercase;}
.rail-tabs{display:flex;flex-direction:column;gap:3px;}
.rail-tab{display:flex;align-items:center;gap:10px;padding:10px 12px;border:none;background:none;
  border-radius:9px;font-size:13.5px;color:var(--muted);cursor:pointer;text-align:left;
  transition:background .15s,color .15s;font-family:inherit;width:100%;}
.rail-tab:hover{background:var(--paper);color:var(--ink);}
.rail-tab.on{background:var(--accent-soft);color:var(--accent);font-weight:600;}
.rail-tab .dot{width:7px;height:7px;border-radius:50%;background:currentColor;opacity:.55;flex-shrink:0;}
.rail-foot{margin-top:auto;display:flex;flex-direction:column;gap:6px;padding:0 4px;}
.foot-btn{font-size:11.5px;color:var(--muted);background:none;border:1px solid var(--line);
  border-radius:8px;padding:7px;cursor:pointer;font-family:inherit;transition:.15s;}
.foot-btn:hover{border-color:var(--accent);color:var(--accent);}

.main{flex:1;overflow-y:auto;}
.page{max-width:780px;margin:0 auto;padding:38px 34px 80px;}

.today-hero{padding-bottom:22px;border-bottom:1px solid var(--line);margin-bottom:22px;}
.today-date{font-size:12.5px;color:var(--brass);font-weight:600;margin-bottom:9px;}
.today-greet{font-size:29px;font-weight:680;letter-spacing:-.02em;margin:0 0 8px;font-family:Georgia,"Times New Roman",serif;}
.today-line{font-size:14px;color:var(--muted);margin:0;}

.stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:20px;}
.stat{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:15px 14px;
  display:flex;flex-direction:column;gap:4px;cursor:pointer;text-align:left;font-family:inherit;transition:border-color .15s,transform .1s;}
.stat:hover{border-color:var(--accent);} .stat:active{transform:translateY(1px);}
.stat-num{font-size:23px;font-weight:700;color:var(--accent);letter-spacing:-.02em;}
.stat-lbl{font-size:11.5px;color:var(--muted);line-height:1.3;}

.card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:22px;margin-bottom:16px;}
.card:last-child{margin-bottom:0;}
.card-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:16px;}
.card-head h2{font-size:16px;font-weight:650;margin:0;}
.muted{color:var(--muted);font-size:12px;}

.add-row{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap;}
.input{flex:1;min-width:140px;border:1px solid var(--line);border-radius:9px;padding:10px 13px;
  font-size:13.5px;font-family:inherit;color:var(--ink);background:var(--paper);outline:none;transition:border-color .15s,background .15s;}
.input:focus{border-color:var(--accent);background:#fff;}
textarea.input{min-height:60px;resize:vertical;line-height:1.5;width:100%;}
.input.search{width:100%;background:#fff;margin-bottom:12px;}

.btn{display:inline-flex;align-items:center;gap:6px;background:var(--accent);color:#fff;border:none;
  border-radius:9px;padding:10px 15px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;white-space:nowrap;transition:opacity .15s,transform .1s;}
.btn:hover{opacity:.9;} .btn:active{transform:translateY(1px);}
.btn.ghost{background:none;color:var(--accent);border:1px solid var(--line);}
.btn.ghost:hover{border-color:var(--accent);}

.list{list-style:none;margin:0;padding:0;}
.row{display:flex;align-items:center;gap:11px;padding:11px 4px;border-bottom:1px solid var(--line);}
.row:last-child{border-bottom:none;}
.row-text{flex:1;font-size:14px;}
.row.done .row-text{color:var(--muted);text-decoration:line-through;}
.check{width:21px;height:21px;border-radius:6px;border:1.6px solid var(--line);background:none;display:grid;place-items:center;cursor:pointer;color:transparent;flex-shrink:0;font-size:12px;line-height:1;transition:.15s;}
.check:hover{border-color:var(--accent);} .check.on{background:var(--accent);border-color:var(--accent);color:#fff;}
.star{background:none;border:none;cursor:pointer;color:var(--line);padding:2px;font-size:16px;line-height:1;}
.star:hover,.star.on{color:var(--brass);}
.del{background:none;border:none;cursor:pointer;color:var(--muted);padding:3px 6px;border-radius:6px;font-size:14px;line-height:1;transition:.15s;}
.del:hover{color:var(--brick);background:var(--paper);}

.empty{text-align:center;color:var(--muted);font-size:13.5px;padding:30px 10px;line-height:1.6;}

.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:22px;}
.page-title{font-size:23px;font-weight:680;letter-spacing:-.02em;margin:0 0 6px;font-family:Georgia,"Times New Roman",serif;}
.page-sub{font-size:13px;color:var(--muted);margin:0;max-width:46ch;line-height:1.55;}

.form{display:flex;flex-direction:column;gap:11px;margin-bottom:20px;}
.seg{display:flex;gap:6px;}
.seg-btn{flex:1;border:1px solid var(--line);background:var(--paper);border-radius:8px;padding:8px;font-size:12.5px;cursor:pointer;font-family:inherit;color:var(--muted);transition:.15s;}
.seg-btn.on{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600;}
.check-line{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);cursor:pointer;user-select:none;}
.check-line input{width:16px;height:16px;accent-color:var(--accent);}

/* Calendar */
.cal-quick{display:flex;gap:8px;margin-bottom:8px;}
.cal-toast{font-size:12.5px;margin:0 0 16px;padding:9px 12px;border-radius:8px;display:none;}
.cal-toast.ok{display:block;background:var(--accent-soft);color:var(--accent);}
.cal-toast.no{display:block;background:#FBECE8;color:var(--brick);}
.cal-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
.cal-month{font-size:17px;font-weight:680;font-family:Georgia,serif;}
.cal-arrow{background:none;border:1px solid var(--line);border-radius:8px;width:32px;height:32px;cursor:pointer;color:var(--ink);font-size:15px;}
.cal-arrow:hover{border-color:var(--accent);color:var(--accent);}
.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;}
.cal-wd{text-align:center;font-size:11px;color:var(--muted);padding:4px 0;font-weight:600;}
.cal-wd.sun{color:var(--brick);}
.cal-cell{min-height:74px;border:1px solid var(--line);border-radius:9px;padding:6px;cursor:pointer;background:var(--surface);transition:.12s;display:flex;flex-direction:column;gap:3px;overflow:hidden;}
.cal-cell:hover{border-color:var(--accent);}
.cal-cell.blank{background:transparent;border:none;cursor:default;}
.cal-cell.today{background:var(--accent-soft);border-color:var(--accent);}
.cal-cell.sel{outline:2px solid var(--accent);outline-offset:-1px;}
.cal-num{font-size:12px;font-weight:600;color:var(--muted);}
.cal-cell.today .cal-num{color:var(--accent);}
.cal-ev{font-size:10.5px;background:var(--accent);color:#fff;border-radius:4px;padding:2px 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.35;}
.cal-more{font-size:10px;color:var(--muted);}
.day-panel{margin-top:18px;border-top:1px solid var(--line);padding-top:16px;}
.day-title{font-size:14px;font-weight:650;margin-bottom:10px;}
.ev-row{display:flex;align-items:center;gap:10px;padding:9px 4px;border-bottom:1px solid var(--line);}
.ev-row:last-child{border-bottom:none;}
.ev-time{font-size:12px;color:var(--brass);font-weight:600;min-width:52px;}
.ev-title{flex:1;font-size:13.5px;}
.up-row{display:flex;align-items:center;gap:12px;padding:9px 4px;border-bottom:1px solid var(--line);}
.up-row:last-child{border-bottom:none;}
.up-date{font-size:11.5px;color:var(--accent);font-weight:700;min-width:78px;}
.up-title{flex:1;font-size:13.5px;} .up-time{font-size:11.5px;color:var(--muted);}

.board{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.col-head{font-size:12.5px;font-weight:650;color:var(--muted);margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--line);}
.mini{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:12px;margin-bottom:9px;}
.mini-title{font-size:13px;font-weight:600;line-height:1.4;}
.mini-memo{font-size:11.5px;color:var(--muted);margin-top:5px;line-height:1.45;white-space:pre-wrap;}
.mini-actions{display:flex;justify-content:space-between;align-items:center;margin-top:9px;}
.link-btn{background:none;border:none;color:var(--accent);font-size:11.5px;cursor:pointer;font-family:inherit;font-weight:600;padding:0;}

/* Archive */
.chip-row{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap;}
.chip{font-size:12px;border:1px solid var(--line);background:#fff;border-radius:16px;padding:6px 12px;cursor:pointer;color:var(--muted);font-family:inherit;}
.chip.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:600;}
.stack{display:flex;flex-direction:column;gap:11px;}
.entry{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:16px;}
.entry-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;}
.entry-q{font-size:14.5px;font-weight:640;line-height:1.45;}
.entry-flag{display:inline-block;font-size:10px;font-weight:700;color:var(--brick);background:#FBECE8;padding:2px 8px;border-radius:12px;margin-left:8px;vertical-align:middle;white-space:nowrap;}
.entry-law{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--accent);background:var(--accent-soft);padding:4px 9px;border-radius:7px;margin-top:9px;font-weight:600;}
.entry-ans{font-size:13px;color:#43514A;margin-top:10px;line-height:1.65;white-space:pre-wrap;}
.entry-kw{margin-top:11px;display:flex;flex-wrap:wrap;gap:5px;}
.kw{font-size:10.5px;color:var(--muted);background:var(--paper);padding:2px 8px;border-radius:10px;}
.entry-files{margin-top:13px;display:flex;gap:8px;flex-wrap:wrap;align-items:center;}
.file-btn{font-size:12px;color:var(--accent);background:var(--accent-soft);border:none;border-radius:7px;padding:6px 11px;cursor:pointer;font-family:inherit;font-weight:600;}
.file-btn:hover{opacity:.85;} .file-btn.plain{background:#fff;border:1px solid var(--line);color:var(--muted);}
.file-name{font-size:11.5px;color:var(--muted);}

.notice{background:#FBF6EA;border:1px solid #EBDFC4;color:#7A6224;border-radius:10px;padding:12px 14px;font-size:12.5px;line-height:1.55;margin-bottom:18px;}

.doc-list{display:flex;flex-direction:column;gap:8px;}
.doc{display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:13px 15px;}
.doc-ic{width:26px;height:26px;border-radius:6px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-size:12px;flex-shrink:0;}
.doc-body{flex:1;display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.doc-name{font-size:13.5px;font-weight:600;}
.doc-cat{font-size:11px;color:var(--muted);background:var(--paper);padding:2px 8px;border-radius:12px;}
.doc-act{font-size:12px;color:var(--accent);text-decoration:none;font-weight:600;background:none;border:none;cursor:pointer;font-family:inherit;padding:0 4px;}
.doc-act:hover{text-decoration:underline;}
.up-zone{display:flex;gap:8px;align-items:center;margin-bottom:16px;}

.import-bar{display:flex;align-items:center;gap:12px;background:var(--accent-soft);border:1.5px dashed var(--accent);border-radius:12px;padding:14px 18px;margin-bottom:16px;cursor:pointer;transition:background .15s,border-color .15s;}
.import-bar:hover{background:#D6E9DD;border-color:#245A45;}
.import-bar-ic{font-size:22px;flex-shrink:0;}
.import-bar-text{flex:1;}
.import-bar-title{font-size:13.5px;font-weight:650;color:var(--accent);}
.import-bar-sub{font-size:11.5px;color:var(--muted);margin-top:2px;}

/* Loading overlay */
.loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--paper);display:flex;align-items:center;justify-content:center;z-index:9999;transition:opacity .3s;}
.loading-overlay.hide{opacity:0;pointer-events:none;}
.loading-text{font-size:15px;color:var(--muted);font-family:Georgia,serif;}
.loading-dot{display:inline-block;animation:dots 1.4s infinite;}
@keyframes dots{0%,20%{opacity:0;}50%{opacity:1;}100%{opacity:0;}}
.loading-dot:nth-child(2){animation-delay:.2s;}
.loading-dot:nth-child(3){animation-delay:.4s;}

/* Sync toast */
.sync-toast{position:fixed;bottom:20px;right:20px;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:10px 16px;font-size:12.5px;color:var(--muted);box-shadow:0 4px 12px rgba(0,0,0,.08);z-index:999;opacity:0;transform:translateY(10px);transition:opacity .3s,transform .3s;pointer-events:none;}
.sync-toast.show{opacity:1;transform:translateY(0);}
.sync-toast.err{border-color:var(--brick);color:var(--brick);}

@media (max-width:1024px){
  #app{flex-direction:column;}
  .rail{width:100%;flex-direction:row;flex-wrap:wrap;align-items:center;
    gap:6px 10px;padding:10px 14px;border-right:none;border-bottom:1px solid var(--line);}
  .brand{gap:8px;} .brand-sub{display:none;}
  .brand-mark{width:28px;height:28px;font-size:15px;border-radius:7px;}
  .brand-title{font-size:13px;}
  .rail-tabs{flex-direction:row;flex-wrap:wrap;gap:4px;}
  .rail-tab{padding:7px 10px;font-size:12.5px;white-space:nowrap;}
  .rail-tab .dot{width:6px;height:6px;}
  .rail-foot{margin-top:0;flex-direction:row;gap:4px;}
  .foot-btn{font-size:10.5px;padding:5px 8px;}
  .page{padding:24px 18px 70px;}
  .stat-row{grid-template-columns:repeat(2,1fr);} .board{grid-template-columns:1fr;}
  .page-head{flex-direction:column;}
}
@media (max-width:600px){
  .cal-cell{min-height:56px;} .cal-ev{font-size:9px;}
  .page{padding:20px 12px 60px;}
  .rail-tab .dot{display:none;}
  .brand-title{display:none;}
}

/* ===== 인라인 편집 · 오늘/내일 할 일 ===== */
/* 눌러서 수정되는 텍스트임을 커서로 알림 */
.row-text,.ev-title,.ev-time,
.mini-title,.mini-memo,.doc-name,.entry-q span[data-act],.entry-ans{cursor:text;}

/* 편집 중 입력칸 — .input을 물려받되 행 높이에 맞게 납작하게 */
.input.inline-edit{min-width:0;padding:5px 8px;font-size:13px;line-height:1.45;
  border-radius:7px;background:#fff;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-soft);}
/* 카드 안에서는 카드 폭에 딱 맞게, 가로 목록에서는 남는 공간만 차지하게 */
.mini .input.inline-edit{display:block;width:100%;}
.row .input.inline-edit,.ev-row .input.inline-edit{flex:1 1 auto;width:auto;}
textarea.inline-area{min-height:52px;resize:vertical;}

/* 기한이 지난 미완료 할 일 배지 (.entry-flag와 같은 pill 형태) */
.row-late{display:inline-block;font-size:10px;font-weight:700;color:var(--brass);
  background:#F7EFDF;padding:2px 8px;border-radius:12px;margin-left:8px;
  vertical-align:middle;white-space:nowrap;}

/* 캘린더 날짜 패널 안내문 + 오늘 배지 */
.day-today{display:inline-block;font-size:10px;font-weight:700;color:#fff;
  background:var(--accent);padding:2px 8px;border-radius:12px;margin-left:6px;
  vertical-align:middle;}

/* ===== 식약처 업무 — 칸반 드래그 · 캘린더 연동 ===== */

/* 칸반 컬럼: 비어 있어도 드롭할 수 있게 최소 높이 확보 */
.col{min-height:240px;border-radius:10px;padding:4px;transition:background .15s,box-shadow .15s,outline-color .15s;}
.col.drop-target{background:var(--blue-soft);box-shadow:inset 0 0 0 2px var(--blue);}

/* 들어올린 카드 */
.mini{transition:box-shadow .15s,transform .12s,background .12s,border-color .12s;}
/* 롱프레스가 차서 "잡힌" 상태 — 움직이기 전에 먼저 보여준다 */
.mini.armed{transform:scale(1.035);border-color:var(--blue);background:var(--blue-soft);
  box-shadow:0 10px 22px rgba(30,63,88,.20);cursor:grabbing;}
/* transition:none 이 핵심 — 켜져 있으면 매 프레임 애니메이션이 걸려 끊겨 보인다 */
.mini.dragging{position:relative;z-index:50;touch-action:none;cursor:grabbing;
  transition:none;will-change:transform;
  box-shadow:0 14px 30px rgba(30,63,88,.24);border-color:var(--blue);}

/* 카드 기한 */
.mini-due{display:inline-block;margin-top:7px;font-size:11px;font-weight:650;
  color:var(--blue-deep);background:var(--blue-soft);padding:2px 9px;border-radius:12px;cursor:text;}
.mini-due.none{color:var(--muted);background:transparent;border:1px dashed var(--line);font-weight:500;}
.mini-due.over{color:#fff;background:var(--brick);}

/* 캘린더 칩 — 식약처는 파랑, 일정은 기존 초록 */
.cal-ev.mfds{background:var(--blue);}
.cal-ev.done{background:var(--blue-soft);color:var(--blue-deep);text-decoration:line-through;}

/* 캘린더 목록의 식약처 행 */
.ev-row.task{gap:8px;}
.ev-row.task.done .ev-title{color:var(--muted);text-decoration:line-through;}
.mfds-badge{flex-shrink:0;font-size:10px;font-weight:700;color:var(--blue-deep);
  background:var(--blue-soft);padding:2px 8px;border-radius:12px;white-space:nowrap;}
.mfds-status{flex-shrink:0;font-size:11px;color:var(--muted);}
.day-check{width:17px;height:17px;flex-shrink:0;accent-color:var(--blue);cursor:pointer;margin:0;}

/* 입력줄 체크박스 · 기한 라벨 */
.chk{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--muted);
  white-space:nowrap;cursor:pointer;user-select:none;}
.chk input{width:16px;height:16px;accent-color:var(--blue);cursor:pointer;margin:0;}
.due-lbl{font-size:12.5px;color:var(--muted);align-self:center;white-space:nowrap;}

/* ===== UI 다듬기 (2차) ===== */
/* 기한 입력칸: .input의 flex:1 때문에 폼 전체 폭으로 늘어나 있었다 */
.input.due-input{flex:0 0 auto;width:158px;min-width:0;}
.add-row .muted{align-self:center;}

/* 카드 메모 — 비어 있을 때도 눌러서 채울 수 있게 자리를 남긴다 */
.mini-memo.none{color:var(--muted);font-size:11px;margin-top:6px;
  border:1px dashed var(--line);border-radius:8px;padding:4px 8px;display:inline-block;}
.mini-actions{justify-content:flex-end;}

/* ===== 드래그 중 드롭 존을 눈에 보이게 ===== */
/* 카드가 없는 칸도 어디에 놓을 수 있는지 알 수 있어야 한다 */
.board.drag-on .col{outline:1.5px dashed var(--line);outline-offset:-2px;}
.board.drag-on .col.drop-target{outline:2px solid var(--blue);background:var(--blue-soft);}
.board.drag-on .col-head{color:var(--blue-deep);}



/* ===== 식약처 업무 UI 개편 (3차) =====
 * 1) 입력 폼을 접어 두고 필요할 때만 편다 — 화면 절반을 폼이 먹던 문제
 * 2) 칸반 칸을 "면"으로 만들어 어디에 놓는지 눈에 보이게
 * 3) 카드에서 상시 노출되던 삭제 버튼 줄을 없애고 우상단으로
 */

/* --- 페이지 머리 요약줄 --- */
.head-meta{display:flex;align-items:center;gap:8px;margin-top:9px;flex-wrap:wrap;}
.meta-pill{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;
  color:var(--muted);background:var(--surface);border:1px solid var(--line);
  border-radius:20px;padding:4px 11px;}
.meta-pill.warn{color:var(--brick);background:#FBECE8;border-color:#F0D8D2;}

/* --- 접힌 입력창 --- */
.composer-open{display:flex;align-items:center;gap:10px;width:100%;text-align:left;
  background:var(--surface);border:1px dashed var(--line);border-radius:12px;
  padding:13px 15px;cursor:pointer;font-family:inherit;font-size:13.5px;font-weight:600;
  color:var(--muted);margin-bottom:20px;transition:border-color .15s,color .15s,background .15s;}
.composer-open:hover{border-color:var(--blue);color:var(--blue-deep);background:var(--blue-soft);}
.composer-plus{display:grid;place-items:center;width:20px;height:20px;border-radius:6px;
  background:var(--blue-soft);color:var(--blue-deep);font-size:14px;font-weight:700;line-height:1;flex-shrink:0;}
.composer-open:hover .composer-plus{background:var(--blue);color:#fff;}
.composer-hint{margin-left:auto;font-size:11.5px;font-weight:500;color:var(--muted);}

/* --- 펼친 입력창 --- */
.card.composer{padding:16px;gap:10px;box-shadow:0 6px 20px rgba(30,42,36,.06);}
.composer-title{font-size:15px!important;font-weight:600;background:#fff!important;
  border:none!important;border-bottom:1px solid var(--line)!important;border-radius:0!important;
  padding:2px 2px 9px!important;}
.composer-title:focus{border-bottom-color:var(--blue)!important;}
.composer .input{background:#fff;}
.composer-foot{display:flex;align-items:center;gap:8px;flex-wrap:wrap;
  border-top:1px solid var(--line);padding-top:11px;}
.composer-btns{margin-left:auto;display:flex;gap:6px;}
.btn.sm{padding:8px 14px;font-size:12.5px;}
.btn.quiet{background:none;color:var(--muted);border:1px solid var(--line);}
.btn.quiet:hover{border-color:var(--muted);color:var(--ink);opacity:1;}

/* 상태 세그먼트 — iOS식 슬라이딩 필 */
.seg.compact{display:inline-flex;flex:0 0 auto;gap:2px;background:var(--paper);
  border:1px solid var(--line);border-radius:9px;padding:2px;}
.seg.compact .seg-btn{flex:0 0 auto;border:none;background:none;border-radius:7px;
  padding:6px 13px;font-size:12.5px;color:var(--muted);}
.seg.compact .seg-btn:hover{color:var(--ink);}
.seg.compact .seg-btn.on{background:var(--surface);color:var(--blue-deep);font-weight:650;
  box-shadow:0 1px 2px rgba(30,42,36,.10);}

.due-field{display:inline-flex;align-items:center;gap:7px;background:var(--paper);
  border:1px solid var(--line);border-radius:9px;padding:0 4px 0 11px;}
.due-field label{font-size:12.5px;color:var(--muted);white-space:nowrap;}
.due-field .input{border:none;background:none;padding:7px 4px;width:130px;flex:0 0 auto;}
.due-field .input:focus{background:none;}

/* --- 칸반 --- */
.board{gap:14px;}
.col{background:rgba(30,42,36,.045);border:1px solid rgba(227,231,226,.7);border-radius:14px;
  padding:12px 11px 11px;min-height:200px;display:flex;flex-direction:column;}
.col-head{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:650;
  color:var(--ink);margin-bottom:11px;padding:0 3px 10px;border-bottom:1px solid var(--line);}
.col-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;}
.col[data-col="대기"]   .col-dot{background:var(--brass);}
.col[data-col="진행중"] .col-dot{background:var(--blue);}
.col[data-col="완료"]   .col-dot{background:var(--accent);}
.col-count{margin-left:auto;font-size:11px;font-weight:700;color:var(--muted);
  background:var(--paper);border-radius:10px;padding:2px 8px;min-width:22px;text-align:center;}

/* 빈 칸 — 여기에 놓을 수 있다는 걸 보여준다 */
.col-empty{flex:1;display:grid;place-items:center;border:1px dashed var(--line);
  border-radius:10px;color:var(--muted);font-size:11.5px;padding:22px 10px;text-align:center;line-height:1.5;}

/* --- 카드 --- */
.mini{position:relative;padding:13px 14px;border-radius:12px;margin-bottom:8px;
  box-shadow:0 1px 2px rgba(30,42,36,.04);}
.mini:last-child{margin-bottom:0;}
.mini:hover{border-color:#CFD8D3;box-shadow:0 3px 10px rgba(30,42,36,.07);}
.mini-title{font-size:13.5px;font-weight:640;line-height:1.45;padding-right:20px;letter-spacing:-.005em;}
.mini-memo{font-size:12px;color:var(--muted);margin-top:6px;line-height:1.5;}
.mini-memo.none{border:none;padding:0;margin-top:5px;font-size:11.5px;opacity:.65;
  display:inline-block;background:none;}
.mini:hover .mini-memo.none{opacity:1;color:var(--blue-deep);}
.mini-foot{display:flex;align-items:center;gap:6px;margin-top:9px;flex-wrap:wrap;}
.mini-foot .input.inline-edit{width:100%;}
.mini-actions{display:none;}

/* 기한 칩 — 남은 날짜에 따라 톤이 달라진다 */
.mini-due{margin-top:0;font-size:11px;font-weight:650;padding:3px 9px;border-radius:8px;
  color:var(--muted);background:var(--paper);border:1px solid transparent;}
.mini-due.soon{color:var(--brass);background:#F7EFDF;}
.mini-due.over{color:#fff;background:var(--brick);}
.mini-due.none{border:1px dashed var(--line);background:none;opacity:.7;font-weight:500;}
.mini:hover .mini-due.none{opacity:1;border-color:var(--blue);color:var(--blue-deep);}

/* 삭제 — 카드 우상단, 평소엔 흐리게 (터치에서도 눌리도록 완전히 숨기진 않는다) */
.mini-del{position:absolute;top:8px;right:8px;width:22px;height:22px;border:none;
  background:none;border-radius:7px;color:var(--muted);opacity:.32;cursor:pointer;
  font-size:12px;line-height:1;display:grid;place-items:center;transition:.15s;padding:0;}
.mini:hover .mini-del{opacity:.75;}
.mini-del:hover{opacity:1!important;color:var(--brick);background:#FBECE8;}

/* 드래그 중엔 칸 전체가 목표가 된다 */
.board.drag-on .col{outline:none;border-style:dashed;}
.board.drag-on .col.drop-target{border-style:solid;border-color:var(--blue);
  background:var(--blue-soft);outline:none;}

@media (max-width:1024px){
  .board{grid-template-columns:1fr;gap:10px;}
  .col{min-height:0;}
  .col-empty{padding:14px 10px;}
  .composer-hint{display:none;}
  .composer-foot{gap:7px;}
  .composer-btns{margin-left:0;width:100%;}
  /* 저장이 주된 행동이므로 취소와 5:5로 나누지 않는다 */
  .composer-btns .btn{justify-content:center;flex:1;}
  .composer-btns .btn.quiet{flex:0 0 auto;padding-left:22px;padding-right:22px;}
  .due-field{flex:1;} .due-field .input{width:100%;flex:1;}
}

/* ===== 전 탭 UI 통일 (4차) =====
 * 식약처 업무에서 만든 언어(접히는 입력창 · 요약 배지 · 모서리 삭제 · 톤 있는 칩)를
 * 오늘 / 캘린더 / 기고글 / 민원 서가 / 문서 인덱스에 그대로 옮긴다.
 */

/* --- 공용: 칩에 개수 배지 --- */
.chip{display:inline-flex;align-items:center;gap:7px;padding:6px 10px 6px 13px;
  font-weight:600;transition:.15s;}
.chip:hover{border-color:var(--muted);color:var(--ink);}
.chip.on:hover{border-color:var(--accent);color:var(--accent);}
.chip-n{font-size:10.5px;font-weight:700;background:var(--paper);color:var(--muted);
  border-radius:9px;padding:1px 7px;min-width:20px;text-align:center;}
.chip.on .chip-n{background:#fff;color:var(--accent);}

/* --- 공용: 빈 화면 --- */
.empty-box{background:var(--surface);border:1px dashed var(--line);border-radius:14px;
  padding:44px 20px;text-align:center;}
.empty-box.sm{padding:26px 16px;border-radius:12px;}
.empty-box p{margin:0;font-size:13px;color:var(--muted);line-height:1.7;}
.empty-ic{font-size:26px;color:var(--line);margin-bottom:12px;line-height:1;}

/* --- 공용: 목록 행의 숨은 버튼 --- */
.row-acts{display:inline-flex;align-items:center;gap:2px;flex-shrink:0;
  opacity:.3;transition:opacity .15s;}
.row:hover .row-acts,.ev-row:hover .row-acts{opacity:1;}
.row.star-on .row-acts{opacity:1;}
.row-acts .star.on{opacity:1;}
@media (hover:none){ .row-acts{opacity:.55;} }

/* --- 오늘: 통계 타일 --- */
.stat{position:relative;overflow:hidden;padding:16px 15px 15px;border-radius:13px;
  box-shadow:0 1px 2px rgba(30,42,36,.04);}
.stat::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--accent);opacity:.85;}
.stat.t-brass::before{background:var(--brass);}
.stat.t-blue::before{background:var(--blue);}
.stat.t-accent::before{background:var(--accent);}
.stat.t-slate::before{background:#8A9A92;}
.stat:hover{border-color:#CFD8D3;box-shadow:0 4px 14px rgba(30,42,36,.08);}
.stat.t-brass .stat-num{color:var(--brass);}
.stat.t-blue .stat-num{color:var(--blue);}
.stat.t-slate .stat-num{color:#6E7F76;}
.stat-go{position:absolute;top:14px;right:13px;font-size:12px;color:var(--line);
  transition:color .15s,transform .15s;}
.stat:hover .stat-go{color:var(--muted);transform:translateX(2px);}

/* --- 오늘: 할 일 --- */
.add-row.quick{background:var(--paper);border:1px solid var(--line);border-radius:11px;
  padding:5px;gap:5px;flex-wrap:nowrap;transition:border-color .15s,background .15s;}
.add-row.quick:focus-within{border-color:var(--accent);background:#fff;}
.add-row.quick .input{border:none;background:none;padding:8px 10px;}
.add-row.quick .input:focus{background:none;}
.add-row.quick .btn{padding:9px 14px;font-size:12.5px;}
.row{gap:10px;padding:10px 4px;border-radius:8px;transition:background .12s;}
.row:hover{background:rgba(243,245,242,.7);}
.check{width:20px;height:20px;border-radius:7px;}
.row-text{line-height:1.5;}
.star{font-size:15px;padding:3px 4px;border-radius:6px;}
.star:hover{background:var(--paper);}

/* --- 캘린더 --- */
.cal-cell{border-radius:10px;padding:7px 6px;}
.cal-cell.today{background:var(--accent-soft);border-color:transparent;}
.cal-cell.today .cal-num{color:var(--accent);font-weight:700;}
.cal-cell.sel{outline:2px solid var(--accent);outline-offset:-2px;background:#fff;}
.cal-cell.sel.today{background:var(--accent-soft);}
.cal-ev{border-radius:5px;padding:2px 6px;font-weight:600;}
.cal-nav{background:var(--surface);border:1px solid var(--line);border-radius:12px;
  padding:8px 10px;margin-bottom:16px;}
.cal-arrow{border-radius:9px;transition:.15s;}
.day-panel{margin-top:20px;border-top:none;padding-top:0;}
.day-panel .day-title{font-size:15px;padding-bottom:12px;border-bottom:1px solid var(--line);margin-bottom:12px;}
.ev-row{border-radius:8px;padding:9px 6px;transition:background .12s;}
.ev-row:hover{background:rgba(243,245,242,.7);}

/* --- 민원 서가 --- */
.search-box{position:relative;margin-bottom:14px;}
.search-ic{position:absolute;left:14px;top:50%;transform:translateY(-50%);
  font-size:16px;color:var(--muted);pointer-events:none;line-height:1;}
.input.search{margin-bottom:0;padding-left:38px;border-radius:11px;padding-top:12px;padding-bottom:12px;}
.entry{position:relative;padding:18px;border-radius:13px;box-shadow:0 1px 2px rgba(30,42,36,.04);
  transition:border-color .15s,box-shadow .15s;}
.entry:hover{border-color:#CFD8D3;box-shadow:0 3px 10px rgba(30,42,36,.07);}
.entry-del{opacity:.3;transition:.15s;}
.entry:hover .entry-del{opacity:.75;}
.entry-del:hover{opacity:1!important;}
.entry-law{border-radius:8px;}
.kw{background:var(--surface);border:1px solid var(--line);}

/* --- 가져오기 / 올리기 띠 --- */
.import-bar,.upload-bar{display:flex;align-items:center;gap:13px;width:100%;text-align:left;
  border-radius:13px;padding:14px 16px;margin-bottom:16px;cursor:pointer;font-family:inherit;
  transition:border-color .15s,background .15s,box-shadow .15s;}
.import-bar{background:var(--accent-soft);border:1px solid transparent;}
.import-bar:hover{background:#D9EAE1;border-color:var(--accent);box-shadow:0 3px 12px rgba(47,93,80,.10);}
.upload-bar{background:var(--surface);border:1px dashed var(--line);}
.upload-bar:hover{background:var(--accent-soft);border-color:var(--accent);}
.import-bar-ic,.upload-ic{font-size:19px;flex-shrink:0;line-height:1;}
.upload-ic{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;
  background:var(--accent-soft);color:var(--accent);font-size:15px;}
.upload-bar:hover .upload-ic{background:var(--accent);color:#fff;}
.import-bar-go{margin-left:auto;color:var(--muted);font-size:14px;flex-shrink:0;transition:transform .15s;}
.import-bar:hover .import-bar-go,.upload-bar:hover .import-bar-go{transform:translateX(3px);color:var(--accent);}

/* --- 문서 인덱스 --- */
.notice{display:flex;gap:11px;align-items:flex-start;border-radius:12px;padding:13px 15px;}
.notice-ic{display:grid;place-items:center;width:19px;height:19px;border-radius:50%;
  background:#E5D3A6;color:#6B5518;font-size:12px;font-weight:800;flex-shrink:0;margin-top:1px;}
.doc{border-radius:12px;padding:13px 14px;box-shadow:0 1px 2px rgba(30,42,36,.04);
  transition:border-color .15s,box-shadow .15s;}
.doc:hover{border-color:#CFD8D3;box-shadow:0 3px 10px rgba(30,42,36,.07);}
.doc-ic{width:30px;height:30px;border-radius:9px;background:var(--paper);color:var(--muted);font-size:13px;}
.doc-ic.file{background:var(--accent-soft);color:var(--accent);}
.doc-del{opacity:.3;transition:.15s;}
.doc:hover .doc-del{opacity:.75;}
.doc-del:hover{opacity:1!important;}

/* --- 좌측 레일 --- */
.rail-tab{border-radius:10px;}
.rail-tab.on{box-shadow:inset 0 0 0 1px rgba(47,93,80,.14);}

@media (max-width:1024px){
  .entry-del,.doc-del,.mini-del{opacity:.5;}
  .row-acts{opacity:.55;}
  .search-ic{left:12px;} .input.search{padding-left:34px;}
  .import-bar,.upload-bar{padding:12px 14px;gap:11px;}
}

/* ===== 좁은 화면 탭 줄 =====
 * .rail-tab에 width:100%가 걸려 있어 폰에서 탭 6개가 세로로 쌓였다.
 * 첫 화면의 절반을 탭이 먹으므로 가로로 눕히고 넘치면 밀어서 본다. */
@media (max-width:1024px){
  .rail{gap:8px 10px;}
  .rail-tabs{flex-wrap:nowrap;width:100%;overflow-x:auto;gap:4px;
    scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-bottom:1px;}
  .rail-tabs::-webkit-scrollbar{display:none;}
  .rail-tab{width:auto;flex:0 0 auto;}
  .rail-foot{width:100%;justify-content:flex-end;}
  .foot-btn{flex:0 0 auto;}
}

/* ===== 기고글도 칸반으로 =====
 * 기획 → 작성중 → 기고완료가 식약처 업무의 대기 → 진행중 → 완료와
 * 같은 흐름이라, 같은 색·같은 조작으로 맞춘다. */
.col[data-col="기획"]     .col-dot{background:var(--brass);}
.col[data-col="작성중"]   .col-dot{background:var(--blue);}
.col[data-col="기고완료"] .col-dot{background:var(--accent);}

/* ===== 법령 검색 (1단계) ===== */

/* 검색창 안의 검색 버튼 */
.search-box .law-go{position:absolute;right:6px;top:50%;transform:translateY(-50%);padding:7px 15px;}
.input.search.law-input{padding-right:78px;}

.upload-bar.busy{cursor:progress;opacity:.75;border-style:solid;border-color:var(--blue);
  background:var(--blue-soft);}
.upload-bar.busy .upload-ic{background:var(--blue);color:#fff;}

/* 올려둔 법령 목록 (접힘) */
.law-toggle{display:flex;align-items:center;gap:8px;width:100%;text-align:left;
  background:none;border:none;padding:6px 4px;margin-bottom:8px;cursor:pointer;
  font-family:inherit;font-size:12.5px;font-weight:650;color:var(--muted);}
.law-toggle:hover{color:var(--ink);}
.law-toggle-hint{margin-left:auto;font-size:11px;font-weight:500;}
.law-list{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;}
.law-row{display:flex;align-items:center;gap:11px;background:var(--surface);
  border:1px solid var(--line);border-radius:11px;padding:10px 13px;}
.law-name{flex:1;font-size:13px;font-weight:600;min-width:0;}
.law-pages{font-size:11px;color:var(--muted);white-space:nowrap;}
.law-row .doc-del{opacity:.3;} .law-row:hover .doc-del{opacity:.75;}

/* 결과 머리줄 */
.law-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;
  padding:12px 2px 11px;border-bottom:1px solid var(--line);margin-bottom:4px;}
.law-count{font-size:13px;color:var(--muted);}
.law-count b{color:var(--ink);font-size:14.5px;}
.law-picked{color:var(--blue-deep);font-weight:650;}
.law-actions{margin-left:auto;display:flex;align-items:center;gap:8px;flex-wrap:wrap;}

/* 결과 목록 */
.law-group{font-size:12px;font-weight:700;color:var(--blue-deep);background:var(--blue-soft);
  border-radius:8px;padding:6px 11px;margin:14px 0 8px;display:inline-block;}
.law-hits{display:flex;flex-direction:column;}
.law-hit{display:flex;gap:11px;background:var(--surface);border:1px solid var(--line);
  border-radius:12px;padding:13px 14px;margin-bottom:8px;
  transition:border-color .15s,box-shadow .15s,background .15s;}
.law-pick{flex-shrink:0;cursor:pointer;padding:2px 0 0;}
.law-snip+.law-snip{margin-top:9px;padding-top:9px;border-top:1px dashed var(--line);}
.law-n{font-size:11px;font-weight:700;color:var(--muted);background:var(--paper);
  border-radius:8px;padding:3px 8px;}
.law-and{font-size:11px;font-weight:650;color:var(--blue-deep);background:var(--blue-soft);
  border-radius:8px;padding:2px 8px;margin-left:4px;}
.law-more-btn{margin-top:10px;}
.law-where{display:inline-block;font-size:10.5px;font-weight:700;color:var(--blue-deep);
  background:var(--blue-soft);border-radius:6px;padding:1px 7px;margin-right:7px;
  vertical-align:1px;white-space:nowrap;}
.law-where.pg{color:var(--muted);background:var(--paper);}
.law-hit:hover{border-color:#CFD8D3;box-shadow:0 3px 10px rgba(30,42,36,.07);}
.law-hit.on{border-color:var(--blue);background:var(--blue-soft);}
.law-check{width:17px;height:17px;flex-shrink:0;margin:2px 0 0;accent-color:var(--blue);cursor:pointer;}
.law-hit-body{flex:1;min-width:0;}
.law-snip{font-size:13px;line-height:1.7;color:#43514A;word-break:break-all;}
.law-snip mark{background:#F7E7A8;color:var(--ink);font-weight:700;
  border-radius:3px;padding:1px 2px;}
.law-meta{display:flex;align-items:center;gap:8px;margin-bottom:10px;flex-wrap:wrap;}
.law-page{font-size:11px;font-weight:700;color:var(--blue-deep);background:var(--blue-soft);
  border-radius:8px;padding:3px 9px;}
.law-hit.on .law-page{background:#fff;}
.law-more{font-size:11.5px;color:var(--muted);padding:2px 4px 10px;}
.law-note{font-size:11.5px;color:var(--muted);line-height:1.6;margin:14px 2px 0;}

@media (max-width:1024px){
  .law-head{gap:8px;} .law-actions{margin-left:0;width:100%;}
  .law-actions .btn{flex:1;justify-content:center;}
  .law-snip{font-size:12.5px;}
}

/* ===== 쪽 보기 창 (앱 안에서 원문 읽기) ===== */
#law-modal:empty{display:none;}
.lv-back{position:fixed;inset:0;background:rgba(30,42,36,.45);z-index:900;
  animation:lvFade .15s ease;}
@keyframes lvFade{from{opacity:0;}to{opacity:1;}}
.lv-panel{position:fixed;z-index:901;left:50%;top:50%;transform:translate(-50%,-50%);
  width:min(760px,92vw);height:min(82vh,760px);background:var(--surface);
  border:1px solid var(--line);border-radius:16px;display:flex;flex-direction:column;
  box-shadow:0 24px 60px rgba(30,42,36,.28);overflow:hidden;}

.lv-head{display:flex;align-items:center;gap:12px;padding:15px 16px 13px;
  border-bottom:1px solid var(--line);flex-shrink:0;}
.lv-title{flex:1;min-width:0;font-size:14px;font-weight:650;line-height:1.4;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.lv-page{font-size:11.5px;font-weight:700;color:var(--blue-deep);background:var(--blue-soft);
  border-radius:9px;padding:4px 10px;white-space:nowrap;flex-shrink:0;}
.lv-x{width:28px;height:28px;flex-shrink:0;border:none;background:none;border-radius:8px;
  color:var(--muted);font-size:14px;cursor:pointer;display:grid;place-items:center;transition:.15s;}
.lv-x:hover{background:var(--paper);color:var(--ink);}

.lv-body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:18px 20px 22px;}
.lv-text{font-size:14px;line-height:1.85;color:#3A473F;word-break:break-word;letter-spacing:-.003em;}
.lv-text mark{background:#F7E7A8;color:var(--ink);font-weight:700;border-radius:3px;padding:1px 2px;}

/* 조 → 항 → 호 → 목 을 들여쓰기로 보여준다 (글자는 그대로) */
/* 단계는 들여쓰기로만 구분한다 — 단계마다 글자 크기를 줄이면
 * 문단마다 크기가 달라져 지저분해 보인다 */
.lp{margin:0 0 11px;}
.lp0{margin-top:20px;padding-top:16px;border-top:1px solid var(--line);}
.lp0:first-child{margin-top:0;padding-top:0;border-top:none;}
.lp1{margin-left:16px;}
.lp2{margin-left:34px;}
.lp3{margin-left:52px;}
.lp4{margin-left:70px;}
.lp-art{display:block;margin-bottom:7px;font-size:15px;font-weight:750;color:var(--blue-deep);
  letter-spacing:-.01em;}
.lp-meta{color:#93A09A;font-size:11.5px;}

.lv-foot{display:flex;align-items:center;gap:8px;padding:11px 16px;
  border-top:1px solid var(--line);background:var(--paper);flex-shrink:0;}
.lv-foot .btn[disabled]{opacity:.4;cursor:default;}
.lv-pdf{margin-left:auto;}
.quiet-link{color:var(--muted)!important;}
.quiet-link:hover{color:var(--blue-deep)!important;}

@media (max-width:1024px){
  .lv-panel{width:100vw;height:100vh;max-width:none;border-radius:0;border:none;
    top:0;left:0;transform:none;}
  .lv-body{padding:16px 15px 24px;}
  .lv-text{font-size:15px;line-height:1.9;}
  .lv-foot{padding:10px 12px calc(10px + env(safe-area-inset-bottom));}
  .lv-head{padding-top:calc(15px + env(safe-area-inset-top));}
  .lv-foot .btn{flex:0 0 auto;}
}

/* 조문 표시 */
.law-art{font-size:11px;font-weight:700;color:#6B5518;background:#F7EFDF;
  border-radius:8px;padding:3px 9px;white-space:nowrap;}
.law-hit.on .law-art{background:#fff;}
.lv-arts{flex-shrink:0;padding:9px 16px;border-bottom:1px solid var(--line);
  background:var(--paper);font-size:11.5px;font-weight:650;color:#6B5518;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.lv-art{color:var(--blue-deep);font-weight:750;}

/* 별표(표·서식) 쪽 안내 */
.lv-hint{flex-shrink:0;padding:9px 16px;background:#FBF6EA;border-bottom:1px solid #EBDFC4;
  font-size:11.5px;color:#7A6224;line-height:1.6;}
.lv-hint b{font-weight:750;}
.law-row .link-btn{white-space:nowrap;flex-shrink:0;}

/* 지금 돌고 있는 버전 — 캐시 때문에 옛 화면을 보고 있는지 바로 알 수 있게 */
.ver{font-size:10px;color:#B6C0BA;text-align:center;padding:2px 0 4px;letter-spacing:.04em;}
@media (max-width:1024px){ .ver{padding:0 6px;align-self:center;} }

/* 조 전체 보기 */
.lv-pg{display:flex;align-items:center;gap:10px;margin:22px 0 16px;
  color:#B6C0BA;font-size:10.5px;font-weight:700;letter-spacing:.05em;}
.lv-pg::before,.lv-pg::after{content:"";flex:1;height:1px;background:var(--line);}
.lv-text mark.on{background:#FFC845;box-shadow:0 0 0 2px #E0A21B;}
.lv-hit-n{font-size:11.5px;font-weight:650;color:var(--muted);min-width:46px;text-align:center;}
.law-acts{display:inline-flex;align-items:center;gap:10px;margin-left:auto;flex-wrap:wrap;}
.law-go-art{font-weight:750;color:var(--blue-deep)!important;}
@media (max-width:1024px){
  .lv-foot{flex-wrap:wrap;}
  .law-acts{margin-left:0;width:100%;padding-top:2px;}
}
