/* ============================================================
   LOCKIT 운영 어드민 v4 — 디자인 시스템
   콘셉트: "파우치와 잠금 버튼"
   - 네이비(파우치 원단)가 앱의 뼈대(사이드바)를 이룬다.
   - 앰버(잠금 버튼)는 "지금 할 일" 한 곳에만 쓴다: 현재 메뉴 표시, 화면당 대표 버튼 1개.
   - 나머지는 조용한 중립색. 진행 상태 = 채운 배지, 부서 = 테두리 태그(색 혼동 방지).
   legacy.css 위에 덮어쓴다(기존 화면 호환).
   ============================================================ */
:root{
  color-scheme:light;
  --bg:#F6F7F9; --surface:#FFFFFF; --surface-2:#F2F3F6; --surface-3:#E9EBF0;
  --ink:#151827; --ink-2:#555C70; --ink-3:#8A90A0; --line:#E6E8EE; --line-2:#D9DCE4;
  --navy:#14182B; --navy-2:#1E2440; --navy-ink:#C9CEDF;
  --accent:#F2A516; --accent-ink:#8A5A00; --accent-soft:#FDF1D8; --on-accent:#2A1C00;
  /* 부서 (태그 전용) */
  --sales:#1F7A5C; --sales-bg:#E8F3EE; --mfg:#335F95; --mfg-bg:#EAF0F8;
  --admin:#3F4561; --admin-bg:#ECEEF4; --shared:#7A5E2E; --shared-bg:#F6EFE1;
  /* 상태 (배지 전용) */
  --ok:#13795B; --ok-bg:#E4F4EC; --prog:#2356B0; --prog-bg:#E8F0FD;
  --pend:#8F5300; --pend-bg:#FFF1D6; --warn:#A45F00; --warn-bg:#FFF1D6;
  --danger:#C0342A; --danger-bg:#FDECEA; --todo:#5B6273; --todo-bg:#EEF0F4;
  --focus:#2F6FEB;
  --shadow-sm:0 1px 2px rgba(20,24,43,.05); --shadow-lg:0 18px 48px rgba(20,24,43,.18);
  --r:12px; --r-sm:8px; --r-xs:6px;
  --fs-xs:12px; --fs-sm:13px; --fs-md:14px; --fs-lg:16px; --fs-xl:20px; --fs-2xl:24px;
  --font:"IBM Plex Sans KR",-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;
  --side-w:236px;
}
:root[data-theme="dark"]{
  color-scheme:dark;
  --bg:#0E1018; --surface:#161925; --surface-2:#1C2030; --surface-3:#262B3D;
  --ink:#ECEEF5; --ink-2:#A3A9BC; --ink-3:#727A90; --line:#252A3A; --line-2:#30364A;
  --navy:#0A0C14; --navy-2:#151A2C; --navy-ink:#A9AFC4;
  --accent:#F5B437; --accent-ink:#F5B437; --accent-soft:#2E2412; --on-accent:#221600;
  --sales:#56C29B; --sales-bg:#10291F; --mfg:#86AEE0; --mfg-bg:#15233A;
  --admin:#A6ACC6; --admin-bg:#20243A; --shared:#D2AF6C; --shared-bg:#2A2314;
  --ok:#4CC996; --ok-bg:#0F2A1F; --prog:#8AB1FF; --prog-bg:#152545;
  --pend:#F2B34A; --pend-bg:#30230C; --warn:#F2B34A; --warn-bg:#30230C;
  --danger:#FF7B70; --danger-bg:#361714; --todo:#A3A9BC; --todo-bg:#232838;
  --focus:#7AA5FF; --shadow-lg:0 18px 48px rgba(0,0,0,.6);
}
html{-webkit-text-size-adjust:100%}
[hidden]{display:none!important}
body{background:var(--bg);font-size:var(--fs-md);touch-action:manipulation;-webkit-tap-highlight-color:transparent}
h1,h2,h3{text-wrap:balance}
:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:4px}
.skip{position:absolute;left:-999px;top:8px;z-index:100;background:var(--surface);padding:8px 12px;border-radius:8px}
.skip:focus{left:8px}
.ic{flex:none;display:block}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* ---------- 레이아웃 ---------- */
.app{display:grid;grid-template-columns:var(--side-w) minmax(0,1fr);grid-template-areas:"side main";min-height:100vh}
.mainwrap{grid-area:main;min-width:0;display:flex;flex-direction:column}
.sidebar{grid-area:side;background:var(--navy);color:var(--navy-ink);border:0;padding:18px 12px 12px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:0;overflow-y:auto;overscroll-behavior:contain}
.brand{all:unset;cursor:pointer;display:flex;align-items:baseline;gap:0;padding:4px 10px 18px;color:#fff;font-weight:700;font-size:19px;letter-spacing:.02em}
.brand:focus-visible{outline:2px solid var(--accent);border-radius:6px}
.brand .dot{color:var(--accent);margin:0 8px 0 1px}
.brand .sub{font-weight:500;font-size:12px;color:var(--navy-ink);opacity:.8;border:0;padding:0}
.navlist{display:flex;flex-direction:column;gap:1px}
.navlabel{font-size:12px;font-weight:600;letter-spacing:0;text-transform:none;color:#8C93AB;padding:16px 10px 6px}
.navitem{display:flex;align-items:center;gap:11px;padding:8px 10px;border-radius:var(--r-sm);color:var(--navy-ink);font-weight:500;font-size:var(--fs-md);border:0;background:transparent;width:100%;text-align:left;min-height:38px;transition:background-color .12s,color .12s}
.navitem .ic{opacity:.75}
.navitem:hover{background:rgba(255,255,255,.06);color:#fff}
.navitem[aria-current="page"]{background:rgba(255,255,255,.09);color:#fff;font-weight:600}
.navitem[aria-current="page"] .ic{opacity:1}
.navitem[aria-current="page"]::after{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent);margin-left:auto;flex:none}
.navitem[aria-current="true"]::after{display:none}
.navitem .badge{margin-left:auto;background:var(--accent);color:var(--on-accent);font-size:11px;font-weight:700;padding:1px 7px;border-radius:999px;min-width:20px;text-align:center}
.navitem[aria-current="page"] .badge{margin-left:auto}
.navitem[aria-current="page"]:has(.badge)::after{margin-left:8px}
.sidefoot{margin-top:auto;padding:12px 10px 4px;font-size:12px;color:#8C93AB;border-top:1px solid rgba(255,255,255,.08);line-height:1.5}
.sidefoot b{color:#fff;font-weight:600}

.topbar{position:sticky;top:0;z-index:30;height:58px;display:flex;align-items:center;gap:12px;padding:0 26px;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);grid-area:auto}
.crumb{font-size:var(--fs-sm);color:var(--ink-2);display:flex;gap:6px;align-items:center;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.crumb b{color:var(--ink);font-weight:600}
.spacer{flex:1}
.iconbtn{background:var(--surface);border:1px solid var(--line-2);color:var(--ink-2);width:36px;height:36px;border-radius:var(--r-sm);display:grid;place-items:center;flex:none}
.iconbtn:hover{color:var(--ink);border-color:var(--ink-3)}
.preview{display:flex;align-items:center;gap:2px;background:var(--surface-2);border-radius:999px;padding:3px 3px 3px 12px}
.preview-l{font-size:12px;color:var(--ink-3);margin-right:6px;white-space:nowrap}
.preview button{border:0;background:transparent;color:var(--ink-2);font-size:12.5px;font-weight:600;padding:5px 12px;border-radius:999px}
.preview button[aria-pressed="true"]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}
.previewbar{background:var(--prog-bg);color:var(--prog);font-size:var(--fs-sm);font-weight:600;padding:8px 26px;display:flex;gap:10px;align-items:center;border-bottom:1px solid var(--line)}
.previewbar button{margin-left:auto}
.whoami{display:flex;align-items:center;gap:9px;font-size:var(--fs-sm);color:var(--ink);font-weight:600}
.who-t{display:flex;flex-direction:column;line-height:1.2}
.role-tag{font-size:11.5px;color:var(--ink-3);font-weight:500}
.avatar{width:32px;height:32px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:700;font-size:13px}
.main{padding:26px 30px 80px;max-width:1240px;width:100%;margin:0;grid-area:auto}
.main:focus{outline:none}
.only-mobile{display:none}

/* ---------- 화면 제목 ---------- */
.viewhead{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:20px;flex-wrap:wrap}
.viewhead .t{font-size:var(--fs-2xl);font-weight:700;letter-spacing:-.02em;display:block}
.viewhead .t::after{display:none}
.viewhead .d{color:var(--ink-2);font-size:var(--fs-sm);margin-top:4px;max-width:70ch}

/* ---------- 버튼 ---------- */
.btn{border:1px solid var(--line-2);background:var(--surface);color:var(--ink);font-weight:600;font-size:var(--fs-sm);padding:8px 14px;border-radius:var(--r-sm);display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;transition:background-color .12s,border-color .12s}
.btn:hover{background:var(--surface-2);border-color:var(--ink-3)}
.btn:disabled,.btn[aria-busy="true"]{opacity:.55;cursor:progress}
.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}
.btn-primary:hover{background:color-mix(in srgb,var(--accent) 88%,#000);border-color:transparent}
.btn-dark{background:var(--navy);border-color:var(--navy);color:#fff}
.btn-dark:hover{background:var(--navy-2)}
.btn-ok{background:var(--ok);border-color:var(--ok);color:#fff}
.btn-ok:hover{background:color-mix(in srgb,var(--ok) 88%,#000)}
.btn-danger{background:var(--surface);border-color:color-mix(in srgb,var(--danger) 40%,var(--line-2));color:var(--danger)}
.btn-danger:hover{background:var(--danger-bg);border-color:var(--danger)}
.btn-quiet{border-color:transparent;background:transparent;color:var(--ink-2)}
.btn-quiet:hover{background:var(--surface-2)}
.btn-sm{padding:5px 10px;font-size:12.5px;min-height:30px;border-radius:var(--r-xs)}

/* ---------- 패널·표 ---------- */
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:none;margin-bottom:18px}
.panel-h{padding:14px 18px}
.panel-h h3{font-size:var(--fs-lg);font-weight:600}
.panel-h .hint{font-size:var(--fs-xs)}
th{font-size:var(--fs-xs);font-weight:600;color:var(--ink-2);text-transform:none;letter-spacing:0;background:var(--surface-2);position:sticky;top:0;z-index:1}
td{font-size:var(--fs-sm)}
td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}
tbody tr.click{cursor:pointer}
tbody tr.click:hover{background:var(--surface-2)}
tbody tr.sel{background:var(--accent-soft)}
.tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.empty{padding:32px 20px;color:var(--ink-3)}
.empty .btn{margin-top:12px}

/* ---------- 상태 배지(채움) · 부서 태그(테두리) ---------- */
.st{font-size:12px;font-weight:600;padding:3px 9px;border-radius:999px}
.st::before{width:6px;height:6px}
.st.ok{background:var(--ok-bg);color:var(--ok)} .st.pend{background:var(--pend-bg);color:var(--pend)}
.st.rej{background:var(--danger-bg);color:var(--danger)} .st.prog{background:var(--prog-bg);color:var(--prog)}
.st.todo{background:var(--todo-bg);color:var(--todo)} .st.warn{background:var(--warn-bg);color:var(--warn)}
.chip{font-size:12px;font-weight:600;padding:1px 8px;border-radius:999px;background:transparent!important;border:1px solid var(--line-2);display:inline-flex;align-items:center;gap:5px;white-space:nowrap;color:var(--ink-2)!important}
.chip::before{content:"";width:7px;height:7px;border-radius:2px;background:currentColor}
.chip.sales::before{background:var(--sales)} .chip.mfg::before{background:var(--mfg)} .chip.admin::before{background:var(--admin)} .chip.shared::before{background:var(--shared)}
.chip.sales,.chip.mfg,.chip.admin,.chip.shared{color:var(--ink-2)!important}

/* ---------- 탭·세그먼트·필터 ---------- */
.tabs{gap:4px;margin-bottom:16px}
.tab{font-size:var(--fs-sm);font-weight:600;padding:10px 12px;min-height:40px}
.tab[aria-selected="true"]{border-bottom-color:var(--ink);color:var(--ink)}
.toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:14px}
.seg{display:inline-flex;background:var(--surface-2);border-radius:var(--r-sm);padding:3px;gap:2px;flex-wrap:wrap}
.seg button{border:0;background:transparent;color:var(--ink-2);font-size:12.5px;font-weight:600;padding:6px 11px;border-radius:6px;min-height:30px;display:inline-flex;gap:6px;align-items:center}
.seg button[aria-pressed="true"]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}
.seg .n{font-variant-numeric:tabular-nums;color:var(--ink-3);font-weight:500}
.seg button[aria-pressed="true"] .n{color:var(--ink-2)}
.search{position:relative;flex:1;min-width:200px;max-width:340px}
.search input{width:100%;padding:8px 12px 8px 34px;border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--fs-sm);min-height:36px}
.search .ic{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--ink-3)}
select,input,textarea{font-family:inherit}
select{background-color:var(--surface);color:var(--ink)}

/* ---------- 폼·모달 ---------- */
.modal-bg{background:rgba(12,14,24,.5);overscroll-behavior:contain}
.modal{border-radius:14px;max-width:540px;padding:22px 22px 18px}
.modal h3{font-size:var(--fs-xl);font-weight:700}
.field label{font-size:12.5px;font-weight:600;color:var(--ink-2)}
.field input,.field select,.field textarea{border-radius:var(--r-sm);min-height:38px;font-size:var(--fs-md)}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--focus);outline-offset:0;border-color:transparent}
.field .err{color:var(--danger);font-size:12px;margin-top:4px}
.field.invalid input,.field.invalid select,.field.invalid textarea{border-color:var(--danger)}
.modal-actions{position:sticky;bottom:-18px;background:var(--surface);padding:12px 0 2px;margin-top:14px}
.reason-box{background:var(--surface-2);color:var(--ink-2);font-weight:500;border-radius:var(--r-sm);font-size:var(--fs-sm)}
.diff{border:1px solid var(--line)}

/* ---------- 토스트 ---------- */
.toast{position:fixed;left:50%;bottom:26px;transform:translate(-50%,8px);background:var(--navy);color:#fff;padding:11px 18px;border-radius:10px;font-size:var(--fs-sm);font-weight:600;z-index:95;box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;max-width:calc(100vw - 32px)}
.toast.on{opacity:1;transform:translate(-50%,0)}

/* ---------- 상세 드로어 ---------- */
.drawer-bg{position:fixed;inset:0;background:rgba(12,14,24,.35);z-index:48}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(560px,100vw);background:var(--bg);z-index:49;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overscroll-behavior:contain}
.drawer-h{display:flex;align-items:center;gap:10px;padding:16px 18px;border-bottom:1px solid var(--line);background:var(--surface)}
.drawer-h h2{font-size:var(--fs-lg);font-weight:700;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.drawer-b{padding:16px 18px 40px;overflow-y:auto;flex:1}

/* ---------- 홈: 할 일 ---------- */
.greet{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:18px}
.greet h1{font-size:var(--fs-2xl);font-weight:700;letter-spacing:-.02em}
.greet p{margin:4px 0 0;color:var(--ink-2);font-size:var(--fs-sm)}
.sumrow{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin-bottom:18px}
.sum{all:unset;box-sizing:border-box;cursor:pointer;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px;display:flex;flex-direction:column;gap:6px;transition:border-color .12s}
.sum:hover{border-color:var(--ink-3)}
.sum:focus-visible{outline:2px solid var(--focus)}
.sum .k{font-size:var(--fs-sm);color:var(--ink-2);font-weight:500;display:flex;gap:7px;align-items:center}
.sum .v{font-size:26px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.1}
.sum .v small{font-size:var(--fs-sm);font-weight:500;color:var(--ink-3);margin-left:2px}
.sum.hot{border-color:color-mix(in srgb,var(--accent) 60%,var(--line));background:linear-gradient(var(--accent-soft),var(--accent-soft))}
.sum .s{font-size:12px;color:var(--ink-3)}
.tdrow{display:flex;align-items:center;gap:12px;padding:12px 18px;border-top:1px solid var(--line)}
.tdrow:first-child{border-top:0}
.tdrow .tk{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;flex:none;background:var(--surface-2);color:var(--ink-2)}
.tdrow .tk.hot{background:var(--accent-soft);color:var(--accent-ink)}
.tdrow .tk.bad{background:var(--danger-bg);color:var(--danger)}
.tdrow .tm{flex:1;min-width:0}
.tdrow .tt{font-weight:600;font-size:var(--fs-md);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tdrow .ts{font-size:12.5px;color:var(--ink-2);margin-top:2px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.tdrow .ta{flex:none;display:flex;gap:6px}
.cols2{display:grid;grid-template-columns:1.5fr 1fr;gap:18px;align-items:start}
@media(max-width:1000px){.cols2{grid-template-columns:1fr}}
.dl{display:grid;grid-template-columns:110px 1fr;gap:8px 14px;font-size:var(--fs-sm);margin:0}
.dl dt{color:var(--ink-3)} .dl dd{margin:0;color:var(--ink);word-break:break-word}
.kv-diff td.chg{background:var(--accent-soft)}
.kv-diff td.old{color:var(--ink-3);text-decoration:line-through}
.note{font-size:12.5px;color:var(--ink-3);line-height:1.6;margin:4px 0 14px}
.warnbox{background:var(--warn-bg);color:var(--warn);border-radius:var(--r-sm);padding:10px 12px;font-size:var(--fs-sm);font-weight:500;margin:0 0 14px}

/* ---------- 레거시 화면 톤 정리 ---------- */
.hero{display:none}
.guide{border-color:var(--line)}
.guide summary{font-weight:600}
.stat{border-radius:var(--r)}
.kpi .kc{border-radius:var(--r)}
.row .rt{font-weight:600}
.pill-note{font-size:12.5px}

/* ---------- 하단 탭바 / 모바일 ---------- */
.bottomnav{display:none}
@media(max-width:860px){
  .app{grid-template-columns:1fr;grid-template-areas:"main"}
  .sidebar{position:fixed;left:0;top:0;bottom:0;width:min(300px,86vw);z-index:60;transform:translateX(-102%);transition:transform .2s;display:flex;padding-top:calc(18px + env(safe-area-inset-top))}
  .sidebar.open{transform:none;box-shadow:var(--shadow-lg)}
  .scrim{position:fixed;inset:0;background:rgba(12,14,24,.45);z-index:55}
  .only-mobile{display:grid}
  .topbar{padding:0 14px;gap:8px}
  .preview-l,.who-t{display:none}
  .preview{padding:3px}
  .preview button{padding:5px 9px}
  #logoutBtn{display:none}
  .main{padding:18px 16px calc(96px + env(safe-area-inset-bottom))}
  .previewbar{padding:8px 16px}
  .bottomnav{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;position:fixed;left:0;right:0;bottom:0;z-index:40;background:var(--surface);border-top:1px solid var(--line);padding:6px 6px calc(6px + env(safe-area-inset-bottom))}
  .bottomnav button{border:0;background:transparent;color:var(--ink-3);display:flex;flex-direction:column;align-items:center;gap:3px;font-size:11px;font-weight:600;padding:6px 2px;border-radius:8px;position:relative;min-height:48px}
  .bottomnav button[aria-current="page"]{color:var(--ink)}
  .bottomnav button[aria-current="page"]::before{content:"";position:absolute;top:2px;width:6px;height:6px;border-radius:50%;background:var(--accent);right:calc(50% - 16px)}
  .bottomnav .bn-badge{position:absolute;top:3px;left:calc(50% + 6px);background:var(--accent);color:var(--on-accent);font-size:10px;font-weight:700;border-radius:999px;padding:0 5px;line-height:16px}
  .toast{bottom:calc(84px + env(safe-area-inset-bottom))}
  .greet h1,.viewhead .t{font-size:var(--fs-xl)}
  .tdrow{padding:12px 14px;flex-wrap:wrap}
  .tdrow .ta{width:100%;justify-content:flex-end}
  .dl{grid-template-columns:92px 1fr}
  .modal-bg{place-items:end center;padding:0}
  .modal{max-width:none;border-radius:16px 16px 0 0;max-height:92vh;padding-bottom:calc(18px + env(safe-area-inset-bottom))}
}
@media(max-width:480px){.preview{display:none}.sumrow{grid-template-columns:1fr 1fr}.sum .v{font-size:22px}}

/* ---------- 로그인 ---------- */
.auth{position:fixed;inset:0;background:var(--bg);display:grid;place-items:center;z-index:90}
.auth-box{width:100%;max-width:380px;padding:26px}
.auth-brand{text-align:center;font-size:30px;font-weight:700;color:var(--ink);letter-spacing:.02em;margin-bottom:12px}
.auth-brand span{color:var(--accent)}
@media print{.sidebar,.topbar,.bottomnav,.previewbar{display:none!important}.app{display:block}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* 좁은 화면: 표를 카드로 쌓기 (가로 스크롤 제거) */
@media(max-width:860px){
  table.stack thead{display:none}
  table.stack,table.stack tbody,table.stack tr,table.stack td{display:block;width:100%}
  table.stack tr{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px;padding:14px 16px;border-bottom:1px solid var(--line)}
  table.stack td{border:0;padding:0;text-align:left!important;font-size:13px}
  table.stack td::before{content:attr(data-label);display:block;font-size:11.5px;color:var(--ink-3);margin-bottom:1px}
  table.stack td.c-org{grid-column:1/-1;order:-2;font-size:15px}
  table.stack td.c-org::before,table.stack td.c-no::before{display:none}
  table.stack td.c-no{order:-1;grid-column:1/-1;color:var(--ink-3);font-size:12px}
  table.stack td.c-next{grid-column:1/-1}
  table.stack td.empty{grid-column:1/-1}
  table.stack td.empty::before{display:none}
}
.fsec{font-size:13px;font-weight:700;color:var(--ink);margin:18px 0 8px;padding-top:14px;border-top:1px solid var(--line);display:flex;gap:8px;align-items:baseline}
.fsec:first-of-type{border-top:0;padding-top:0;margin-top:4px}
.fsec span{font-size:12px;font-weight:500;color:var(--ink-3)}
.frow2{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
@media(min-width:861px){table.stack td,table.stack th{white-space:nowrap}table.stack td.c-org{white-space:normal;min-width:140px}}

.preview{overflow-x:auto;max-width:52vw;scrollbar-width:none}
.preview button{white-space:nowrap}
.pv-sel{border:0;background:transparent;color:var(--ink-2);font:inherit;font-size:12.5px;font-weight:600;padding:5px 8px;border-radius:999px}
.pv-sel.on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}
#logoutBtn,.who-t,.crumb{white-space:nowrap}
@media(max-width:1180px){.preview-l{display:none}.who-t{display:none}}

.pv-add{border:1px dashed var(--line-2)!important;background:transparent;color:var(--ink-2);font-size:15px!important;font-weight:700;width:30px;height:28px;padding:0!important;border-radius:999px;margin-left:4px;line-height:1}
.pv-add:hover{border-color:var(--ink-3)!important;color:var(--ink)}
