/* ============================================================
   DVTV-111 業務日報 v1.0.0 — パインズグラス / モバイルファースト
   全セレクタ .dvn-app を起点に !important で完全遮断
   ============================================================ */
.dvn-app,.dvn-app *,.dvn-app *::before,.dvn-app *::after{box-sizing:border-box!important;margin:0!important;padding:0!important;border:0!important;outline:0!important;font-family:'Segoe UI','Meiryo','Hiragino Sans',sans-serif!important;line-height:1.5!important;-webkit-font-smoothing:antialiased!important}
.dvn-app{max-width:980px!important;margin:0 auto!important;padding:10px!important;
  --fs:14px;--c-bg:#f4f4fb;--c-card:#fff;--c-border:#e2e2f0;--c-text:#16162a;--c-text2:#5a5a7a;
  --c-accent:#6c63ff;--c-accent2:#a259ff;--c-danger:#ef4444;--c-ok:#10b981;--c-warn:#f59e0b;
  --c-head-bg:linear-gradient(135deg,#0f0c29,#302b63,#24243e);--c-head-text:#eee;
  --c-input-bg:#fff;--c-input-border:#ccc;--c-hover:#ededff;--radius:12px;--shadow:0 2px 10px rgba(0,0,0,.07);
  color:var(--c-text)!important;background:var(--c-bg)!important;font-size:var(--fs)!important;border-radius:12px!important}
.dvn-app[data-fs="xs"]{--fs:11px}.dvn-app[data-fs="sm"]{--fs:12px}.dvn-app[data-fs="md"]{--fs:14px}.dvn-app[data-fs="lg"]{--fs:16px}.dvn-app[data-fs="xl"]{--fs:18px}
.dvn-app[data-bold="1"]{font-weight:600!important}

/* ---- ダーク ---- */
.dvn-app[data-theme="dark"]{--c-bg:#0d0d1a;--c-card:#1a1a2e;--c-border:#2a2a44;--c-text:#e0e0f0;--c-text2:#9090b5;
  --c-input-bg:#22223a;--c-input-border:#3a3a55;--c-hover:#25254a;--shadow:0 2px 12px rgba(0,0,0,.35)}

/* ---- テーマCSS干渉対策：グラデ見出し等による「白抜け（透明文字）」を全面的に無効化 ---- */
.dvn-app, .dvn-app *{-webkit-text-fill-color:currentColor!important;text-shadow:none!important}
.dvn-app h1,.dvn-app h2,.dvn-app h3,.dvn-app h4,
.dvn-app .dvn-h2,.dvn-app .dvn-h3{background:none!important;-webkit-background-clip:border-box!important;background-clip:border-box!important;-webkit-text-fill-color:var(--c-text)!important;color:var(--c-text)!important}

/* ---- ツールバー ---- */
.dvn-app .dvn-toolbar{display:flex!important;align-items:center!important;justify-content:space-between!important;
  background:var(--c-head-bg)!important;color:var(--c-head-text)!important;padding:8px 12px!important;border-radius:10px!important;margin-bottom:10px!important}
.dvn-app .dvn-tb-title{font-weight:700!important;font-size:calc(var(--fs) + 1px)!important;letter-spacing:.5px!important}
.dvn-app .dvn-tb-right{display:flex!important;gap:6px!important}
.dvn-app .dvn-tb-btn{background:rgba(255,255,255,.15)!important;color:#fff!important;border-radius:7px!important;padding:5px 10px!important;cursor:pointer!important;font-size:var(--fs)!important}
.dvn-app .dvn-tb-btn:hover{background:rgba(255,255,255,.28)!important}

/* ---- 見出し / 行 ---- */
.dvn-app .dvn-head-row{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;flex-wrap:wrap!important;margin-bottom:6px!important}
.dvn-app .dvn-h2{font-size:calc(var(--fs) + 5px)!important;font-weight:800!important;color:var(--c-text)!important}
.dvn-app .dvn-h3{font-size:calc(var(--fs) + 2px)!important;font-weight:700!important;margin-bottom:8px!important;color:var(--c-text)!important}
.dvn-app .dvn-meta{display:flex!important;gap:12px!important;flex-wrap:wrap!important;color:var(--c-text2)!important;font-size:calc(var(--fs) - 1px)!important;margin-bottom:10px!important}
.dvn-app .dvn-empty{color:var(--c-text2)!important;padding:16px!important;text-align:center!important}
.dvn-app .dvn-hint{color:var(--c-text2)!important;font-size:calc(var(--fs) - 2px)!important;margin:2px 0 6px!important}
.dvn-app .dvn-req{background:var(--c-danger)!important;color:#fff!important;border-radius:5px!important;padding:1px 6px!important;font-size:calc(var(--fs) - 3px)!important;margin-left:6px!important}

/* ---- ボタン ---- */
.dvn-app .dvn-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:4px!important;
  background:linear-gradient(135deg,var(--c-accent),var(--c-accent2))!important;color:#fff!important;border:1px solid transparent!important;border-radius:9px!important;
  padding:9px 14px!important;cursor:pointer!important;font-size:var(--fs)!important;font-weight:700!important;transition:.15s!important}
.dvn-app .dvn-btn:hover{filter:brightness(1.06)!important}
.dvn-app .dvn-btn:disabled{opacity:.5!important;cursor:not-allowed!important}
.dvn-app .dvn-btn-sm{padding:6px 10px!important;font-size:calc(var(--fs) - 1px)!important}
.dvn-app .dvn-btn-lg{padding:13px 18px!important;font-size:calc(var(--fs) + 1px)!important;width:100%!important;margin-top:8px!important}
.dvn-app .dvn-btn-primary{background:linear-gradient(135deg,var(--c-accent),var(--c-accent2))!important;color:#fff!important;border-color:transparent!important}
.dvn-app .dvn-btn-zumen{margin-left:auto!important;background:linear-gradient(135deg,#6c63ff,#0ea5e9)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border:none!important;border-radius:10px!important;padding:11px 18px!important;font-size:calc(var(--fs) + 1px)!important;font-weight:800!important;text-decoration:none!important;box-shadow:0 3px 10px rgba(108,99,255,.45)!important;white-space:nowrap!important}
.dvn-app .dvn-btn-zumen:hover{filter:brightness(1.08)!important;transform:translateY(-1px)!important}
.dvn-app .dvn-btn-next{background:linear-gradient(135deg,#10b981,#059669)!important;color:#fff!important;border-color:transparent!important}
.dvn-app .dvn-btn-back{background:linear-gradient(135deg,#ef4444,#b91c1c)!important;color:#fff!important;border-color:transparent!important}
.dvn-app .dvn-btn-skip{background:linear-gradient(135deg,#f59e0b,#b45309)!important;color:#fff!important;border-color:transparent!important}
.dvn-app .dvn-btn-mitu{background:linear-gradient(135deg,#0ea5e9,#6366f1)!important;color:#fff!important;border-color:transparent!important}
.dvn-app .dvn-btn-voice{background:linear-gradient(135deg,#14b8a6,#0d9488)!important;color:#fff!important;border-color:transparent!important;font-weight:700!important}
.dvn-app .dvn-btn-voice.dvn-voice-on{background:linear-gradient(135deg,#ef4444,#b91c1c)!important}
.dvn-app .dvn-mini{display:inline-flex!important;align-items:center!important;gap:4px!important;background:linear-gradient(135deg,#6366f1,#4f46e5)!important;color:#fff!important;border:1px solid transparent!important;border-radius:8px!important;cursor:pointer!important;font-size:calc(var(--fs) - 1px)!important;font-weight:700!important;padding:6px 12px!important;margin-top:6px!important;text-decoration:none!important}

/* ---- フィルタ（横並び・1行） ---- */
.dvn-app .dvn-filter{display:flex!important;gap:8px!important;flex-wrap:wrap!important;align-items:center!important;margin:8px 0 14px!important}
.dvn-app .dvn-filter input,.dvn-app .dvn-filter select,.dvn-app .dvn-filter .dvn-btn{background:var(--c-input-bg)!important;color:var(--c-text)!important;border:1px solid var(--c-input-border)!important;border-radius:8px!important;padding:8px 10px!important;font-size:var(--fs)!important;height:40px!important}
.dvn-app .dvn-filter input[type="text"]{flex:1 1 220px!important;min-width:140px!important;width:auto!important}
.dvn-app .dvn-filter input[type="date"]{flex:0 0 auto!important;width:auto!important;min-width:150px!important}
.dvn-app .dvn-filter select{flex:0 0 auto!important;width:auto!important;min-width:120px!important}
.dvn-app .dvn-filter .dvn-btn{flex:0 0 auto!important;width:auto!important;border-color:var(--c-border)!important}

/* ---- 一覧カード ---- */
.dvn-app .dvn-cards{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))!important;gap:12px!important}
.dvn-app .dvn-card{display:block!important;background:var(--c-card)!important;border:1px solid var(--c-border)!important;border-radius:var(--radius)!important;
  padding:14px!important;box-shadow:var(--shadow)!important;text-decoration:none!important;color:var(--c-text)!important;transition:.15s!important}
.dvn-app .dvn-card:hover{transform:translateY(-2px)!important;box-shadow:0 6px 18px rgba(108,99,255,.18)!important}
.dvn-app .dvn-card-top{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important}
.dvn-app .dvn-genba{font-weight:800!important;font-size:calc(var(--fs) + 2px)!important}
.dvn-app .dvn-koji{color:var(--c-text2)!important;margin:2px 0 6px!important}
.dvn-app .dvn-mitu-tag{margin-top:8px!important;display:inline-block!important;background:#eef2ff!important;color:#4338ca!important;border-radius:6px!important;padding:3px 8px!important;font-size:calc(var(--fs) - 2px)!important;font-weight:700!important}
.dvn-app[data-theme="dark"] .dvn-mitu-tag{background:#312e81!important;color:#c7d2fe!important}

/* ---- バッジ ---- */
.dvn-app .dvn-badge{border-radius:20px!important;padding:3px 12px!important;font-size:calc(var(--fs) - 2px)!important;font-weight:800!important;white-space:nowrap!important}
.dvn-app .dvn-bg-open{background:#fef3c7!important;color:#92400e!important}
.dvn-app .dvn-bg-ok{background:#d1fae5!important;color:#065f46!important}
.dvn-app[data-theme="dark"] .dvn-bg-open{background:#78350f!important;color:#fde68a!important}
.dvn-app[data-theme="dark"] .dvn-bg-ok{background:#064e3b!important;color:#6ee7b7!important}

/* ---- 進捗バー ---- */
.dvn-app .dvn-prog{display:flex!important;align-items:center!important;gap:8px!important;margin-top:8px!important}
.dvn-app .dvn-prog-bar{flex:1!important;height:8px!important;background:var(--c-border)!important;border-radius:6px!important;overflow:hidden!important}
.dvn-app .dvn-prog-bar span{display:block!important;height:100%!important;background:linear-gradient(90deg,var(--c-accent),var(--c-accent2))!important;border-radius:6px!important;transition:width .4s!important}
.dvn-app .dvn-prog-txt{font-size:calc(var(--fs) - 2px)!important;color:var(--c-text2)!important;white-space:nowrap!important}

/* ---- 回覧タイムライン ---- */
.dvn-app .dvn-route-track{background:var(--c-card)!important;border:1px solid var(--c-border)!important;border-radius:var(--radius)!important;padding:12px!important;margin-bottom:12px!important;box-shadow:var(--shadow)!important}
.dvn-app .dvn-timeline{display:flex!important;gap:6px!important;flex-wrap:wrap!important;margin-top:10px!important;list-style:none!important}
.dvn-app .dvn-timeline li{display:flex!important;align-items:center!important;gap:6px!important;padding:6px 10px!important;border-radius:8px!important;font-size:calc(var(--fs) - 2px)!important;border:1px solid var(--c-border)!important}
.dvn-app .dvn-tl-seq{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:20px!important;height:20px!important;border-radius:50%!important;background:var(--c-border)!important;font-weight:800!important;font-size:calc(var(--fs) - 3px)!important}
.dvn-app .dvn-tl-done{background:#d1fae5!important;border-color:#6ee7b7!important}.dvn-app .dvn-tl-done .dvn-tl-seq{background:#10b981!important;color:#fff!important}
.dvn-app .dvn-tl-active{background:#ede9fe!important;border-color:var(--c-accent)!important;box-shadow:0 0 0 2px rgba(108,99,255,.25)!important}.dvn-app .dvn-tl-active .dvn-tl-seq{background:var(--c-accent)!important;color:#fff!important}
.dvn-app .dvn-tl-skip{opacity:.55!important;text-decoration:line-through!important}
.dvn-app[data-theme="dark"] .dvn-tl-done{background:#064e3b!important}.dvn-app[data-theme="dark"] .dvn-tl-active{background:#2e2b5a!important}

/* ---- 追記アイテム ---- */
.dvn-app .dvn-details{display:flex!important;flex-direction:column!important;gap:10px!important;margin-bottom:14px!important}
.dvn-app .dvn-detail-item{background:var(--c-card)!important;border:1px solid var(--c-border)!important;border-radius:var(--radius)!important;padding:12px!important;box-shadow:var(--shadow)!important}
.dvn-app .dvn-di-head{display:flex!important;gap:10px!important;flex-wrap:wrap!important;align-items:center!important;margin-bottom:6px!important}
.dvn-app .dvn-di-user{font-weight:800!important}
.dvn-app .dvn-di-time,.dvn-app .dvn-di-koushu,.dvn-app .dvn-di-ninku,.dvn-app .dvn-di-prog{font-size:calc(var(--fs) - 2px)!important;color:var(--c-text2)!important;background:var(--c-bg)!important;border-radius:6px!important;padding:2px 8px!important}
.dvn-app .dvn-di-body{white-space:pre-wrap!important;margin:4px 0!important}
.dvn-app .dvn-di-ky{background:#fff7ed!important;color:#9a3412!important;border-left:3px solid var(--c-warn)!important;border-radius:4px!important;padding:6px 10px!important;font-size:calc(var(--fs) - 1px)!important;margin-top:6px!important}
.dvn-app[data-theme="dark"] .dvn-di-ky{background:#3a2410!important;color:#fdba74!important}
.dvn-app .dvn-di-mats{margin-top:8px!important;font-size:calc(var(--fs) - 1px)!important}
.dvn-app .dvn-mat-chip{display:inline-block!important;background:#eef2ff!important;color:#4338ca!important;border-radius:6px!important;padding:2px 8px!important;margin:2px 4px 2px 0!important;font-size:calc(var(--fs) - 2px)!important}
.dvn-app[data-theme="dark"] .dvn-mat-chip{background:#312e81!important;color:#c7d2fe!important}
.dvn-app .dvn-di-photos{display:flex!important;gap:6px!important;flex-wrap:wrap!important;margin-top:8px!important}
.dvn-app .dvn-thumb{width:84px!important;height:84px!important;object-fit:cover!important;border-radius:8px!important;cursor:pointer!important;border:1px solid var(--c-border)!important}
.dvn-app .dvn-ph-wrap{position:relative!important;display:inline-block!important;line-height:0!important}
.dvn-app .dvn-ph-pin{position:absolute!important;left:3px!important;bottom:3px!important;background:linear-gradient(135deg,#6c63ff,#a259ff)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:10px!important;font-weight:700!important;line-height:1.4!important;border-radius:6px!important;padding:2px 6px!important;text-decoration:none!important;opacity:.92!important}
.dvn-app .dvn-ph-pin:hover{opacity:1!important;filter:brightness(1.08)!important}

/* ---- フォーム ---- */
.dvn-app .dvn-card-form{background:var(--c-card)!important;border:1px solid var(--c-border)!important;border-radius:var(--radius)!important;padding:14px!important;box-shadow:var(--shadow)!important;margin-bottom:12px!important}
.dvn-app .dvn-fg{margin-bottom:12px!important}
.dvn-app .dvn-fg label{display:block!important;font-weight:700!important;font-size:calc(var(--fs) - 1px)!important;margin-bottom:4px!important;color:var(--c-text)!important}
.dvn-app .dvn-fg input,.dvn-app .dvn-fg select,.dvn-app .dvn-fg textarea{width:100%!important;background:var(--c-input-bg)!important;color:var(--c-text)!important;border:1px solid var(--c-input-border)!important;border-radius:8px!important;padding:10px!important;font-size:var(--fs)!important}
.dvn-app .dvn-row2{display:flex!important;gap:10px!important}
.dvn-app .dvn-row2 .dvn-fg{flex:1!important}
.dvn-app .dvn-site-link{margin-top:6px!important;display:inline-block!important;background:#ecfeff!important;color:#0e7490!important;border:1px solid #a5f3fc!important;border-radius:6px!important;padding:3px 10px!important;font-size:calc(var(--fs) - 2px)!important;font-weight:700!important}
.dvn-app[data-theme="dark"] .dvn-site-link{background:#083344!important;color:#67e8f9!important;border-color:#155e75!important}

/* ---- 回覧担当ビルダー ---- */
.dvn-app .dvn-route-add{display:flex!important;gap:8px!important}
.dvn-app .dvn-route-add select{flex:1!important;background:var(--c-input-bg)!important;color:var(--c-text)!important;border:1px solid var(--c-input-border)!important;border-radius:8px!important;padding:8px!important}
.dvn-app .dvn-route-list{list-style:none!important;margin-top:8px!important;display:flex!important;flex-direction:column!important;gap:6px!important}
.dvn-app .dvn-route-list li{display:flex!important;align-items:center!important;gap:8px!important;background:var(--c-bg)!important;border:1px solid var(--c-border)!important;border-radius:8px!important;padding:6px 10px!important}
.dvn-app .dvn-rl-seq{width:22px!important;height:22px!important;border-radius:50%!important;background:var(--c-accent)!important;color:#fff!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;font-weight:800!important;font-size:calc(var(--fs) - 2px)!important}
.dvn-app .dvn-rl-name{flex:1!important;font-weight:600!important}
.dvn-app .dvn-rl-ops button{background:var(--c-card)!important;border:1px solid var(--c-border)!important;border-radius:6px!important;padding:3px 7px!important;cursor:pointer!important;margin-left:3px!important;color:var(--c-text)!important}

/* ---- 材料エディタ ---- */
.dvn-app .dvn-mat-actions{display:flex!important;gap:8px!important;margin-bottom:6px!important;flex-wrap:wrap!important}
.dvn-app .dvn-mat-list{display:flex!important;flex-direction:column!important;gap:6px!important}
.dvn-app .dvn-mat-row{display:flex!important;align-items:center!important;gap:8px!important;background:var(--c-bg)!important;border:1px solid var(--c-border)!important;border-radius:8px!important;padding:6px 8px!important}
.dvn-app .dvn-mat-nm{flex:1!important;font-size:calc(var(--fs) - 1px)!important}
.dvn-app .dvn-mat-nm small{color:var(--c-text2)!important}
.dvn-app .dvn-mat-src{font-size:calc(var(--fs) - 3px)!important;background:#dbeafe!important;color:#1e40af!important;border-radius:4px!important;padding:1px 5px!important}
.dvn-app .dvn-src-d{background:#fef9c3!important;color:#854d0e!important}
.dvn-app .dvn-mat-qty{width:80px!important;background:var(--c-input-bg)!important;color:var(--c-text)!important;border:1px solid var(--c-input-border)!important;border-radius:6px!important;padding:6px!important}
.dvn-app .dvn-mat-unit{width:42px!important;color:var(--c-text2)!important;font-size:calc(var(--fs) - 2px)!important}
.dvn-app .dvn-mat-del{background:transparent!important;color:var(--c-danger)!important;cursor:pointer!important;font-weight:800!important}

/* ---- 写真エリア ---- */
.dvn-app .dvn-photo-list{display:flex!important;gap:8px!important;flex-wrap:wrap!important;margin-top:8px!important}
.dvn-app .dvn-ph-up{width:84px!important;height:84px!important;border-radius:8px!important;background:var(--c-bg)!important;border:1px dashed var(--c-border)!important;display:flex!important;align-items:center!important;justify-content:center!important;position:relative!important;font-size:calc(var(--fs) - 3px)!important;color:var(--c-text2)!important}
.dvn-app .dvn-ph-up img{width:84px!important;height:84px!important;object-fit:cover!important;border-radius:8px!important;cursor:pointer!important}
.dvn-app .dvn-ph-t{position:absolute!important;bottom:2px!important;left:2px!important;background:rgba(0,0,0,.6)!important;color:#fff!important;border-radius:4px!important;padding:0 4px!important;font-size:9px!important}
.dvn-app .dvn-ph-del{position:absolute!important;top:2px!important;right:2px!important;background:rgba(0,0,0,.6)!important;color:#fff!important;border-radius:50%!important;width:18px!important;height:18px!important;cursor:pointer!important;font-size:11px!important}

/* ---- アクション群 ---- */
.dvn-app .dvn-actions{display:flex!important;gap:8px!important;flex-wrap:wrap!important;margin-top:6px!important}
.dvn-app .dvn-actions .dvn-btn{flex:1 1 auto!important;min-width:120px!important}
.dvn-app .dvn-wait-note{background:#eff6ff!important;color:#1e3a8a!important;border:1px solid #bfdbfe!important;border-radius:10px!important;padding:12px!important;text-align:center!important;margin-bottom:10px!important}
.dvn-app[data-theme="dark"] .dvn-wait-note{background:#172554!important;color:#bfdbfe!important;border-color:#1e3a8a!important}

/* ---- メッセージ ---- */
.dvn-app .dvn-msg{margin-top:8px!important;font-weight:700!important;font-size:calc(var(--fs) - 1px)!important}
.dvn-app .dvn-msg-err{color:var(--c-danger)!important}
.dvn-app .dvn-msg-ok{color:var(--c-ok)!important}

/* ---- モーダル ---- */
.dvn-app .dvn-modal{display:none!important;position:fixed!important;inset:0!important;background:rgba(0,0,0,.5)!important;z-index:99998!important;align-items:flex-start!important;justify-content:center!important;padding:40px 12px!important}
.dvn-app .dvn-modal.show{display:flex!important}
.dvn-app .dvn-modal-box{background:var(--c-card)!important;border-radius:14px!important;width:100%!important;max-width:480px!important;max-height:80vh!important;overflow:auto!important;padding:14px!important;box-shadow:0 10px 40px rgba(0,0,0,.3)!important}
.dvn-app .dvn-modal-head{display:flex!important;justify-content:space-between!important;align-items:center!important;font-weight:800!important;margin-bottom:8px!important}
.dvn-app .dvn-modal-x{background:transparent!important;cursor:pointer!important;font-size:18px!important;color:var(--c-text2)!important}
.dvn-app #dvn-mat-q{width:100%!important;background:var(--c-input-bg)!important;color:var(--c-text)!important;border:1px solid var(--c-input-border)!important;border-radius:8px!important;padding:10px!important;margin-bottom:8px!important}
.dvn-app .dvn-mat-hit{display:flex!important;justify-content:space-between!important;align-items:center!important;padding:9px!important;border-bottom:1px solid var(--c-border)!important;cursor:pointer!important}
.dvn-app .dvn-mat-hit:hover{background:var(--c-hover)!important}
.dvn-app .dvn-mh-nm small{color:var(--c-text2)!important}
.dvn-app .dvn-mh-pr{color:var(--c-accent)!important;font-weight:700!important}

/* ---- ライトボックス ---- */
.dvn-lb{display:none;position:fixed;inset:0;background:rgba(0,0,0,.9);z-index:99999;align-items:center;justify-content:center;user-select:none}
.dvn-lb.show{display:flex}
.dvn-lb img{max-width:92vw;max-height:88vh;cursor:grab}
.dvn-lb-x{position:fixed;top:16px;right:20px;color:#fff;font-size:30px;cursor:pointer;z-index:100000}
.dvn-lb-tools{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);display:flex;gap:8px;z-index:100000}
.dvn-lb-tools button{background:rgba(255,255,255,.15);color:#fff;border-radius:8px;padding:8px 14px;cursor:pointer;font-size:16px}
.dvn-lb-tools button:hover{background:rgba(255,255,255,.3)}

/* ============================================================
   順番お知らせ トップバー（全ページ・固定）
   ============================================================ */
#dvtv-nippo-topbar-root .dvn-tbar{position:fixed;top:0;left:0;right:0;z-index:99990;
  background:linear-gradient(135deg,#6c63ff,#a259ff);color:#fff;box-shadow:0 2px 10px rgba(0,0,0,.25);
  font-family:'Segoe UI','Meiryo','Hiragino Sans',sans-serif;font-size:14px}
#dvtv-nippo-topbar-root .dvn-tbar-item{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:8px 16px;border-bottom:1px solid rgba(255,255,255,.2)}
#dvtv-nippo-topbar-root .dvn-tbar-prog{background:rgba(255,255,255,.22);border-radius:20px;padding:2px 10px;font-size:12px;font-weight:700}
#dvtv-nippo-topbar-root .dvn-tbar-btn{margin-left:auto;background:#fff;color:#6c63ff;border-radius:8px;padding:5px 14px;font-weight:800;text-decoration:none}
#dvtv-nippo-topbar-root .dvn-tbar-btn:hover{background:#f0f0ff}
body.admin-bar #dvtv-nippo-topbar-root .dvn-tbar{top:32px}
@media(max-width:782px){body.admin-bar #dvtv-nippo-topbar-root .dvn-tbar{top:46px}}

/* ============================================================
   v1.1.0 追加UI（役割・現場情報・打刻・コメント・PDF）
   ============================================================ */
.dvn-app .dvn-sub{font-size:calc(var(--fs) - 2px)!important;color:var(--c-text2)!important;font-weight:600!important}
.dvn-app .dvn-route-add input[type="text"]{flex:1 1 120px!important;min-width:90px!important;background:var(--c-input-bg)!important;color:var(--c-text)!important;border:1px solid var(--c-input-border)!important;border-radius:8px!important;padding:8px!important}
.dvn-app .dvn-rl-role{width:110px!important;background:var(--c-card)!important;color:var(--c-text)!important;border:1px solid var(--c-border)!important;border-radius:6px!important;padding:4px 6px!important;font-size:calc(var(--fs) - 2px)!important}
.dvn-app .dvn-tl-role{display:block!important;font-size:calc(var(--fs) - 3px)!important;color:var(--c-accent)!important;font-weight:700!important}

.dvn-app .dvn-info-card{background:var(--c-card)!important;border:1px solid var(--c-border)!important;border-radius:var(--radius)!important;padding:12px!important;margin-bottom:12px!important;box-shadow:var(--shadow)!important}
.dvn-app .dvn-info-grid{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:8px!important;font-size:calc(var(--fs) - 1px)!important}
.dvn-app .dvn-info-grid b{color:var(--c-text2)!important;font-size:calc(var(--fs) - 2px)!important}
.dvn-app .dvn-info-wide{grid-column:span 1!important}
.dvn-app .dvn-info-hiyari{margin-top:8px!important;background:#fff7ed!important;color:#9a3412!important;border-left:3px solid var(--c-warn)!important;border-radius:4px!important;padding:6px 10px!important;font-size:calc(var(--fs) - 1px)!important}
.dvn-app[data-theme="dark"] .dvn-info-hiyari{background:#3a2410!important;color:#fdba74!important}
.dvn-app .dvn-info-form{margin-top:10px!important;border-top:1px dashed var(--c-border)!important;padding-top:10px!important}

.dvn-app .dvn-punch{display:flex!important;gap:8px!important;align-items:center!important;flex-wrap:wrap!important;margin-bottom:10px!important}
.dvn-app .dvn-punch-start{background:linear-gradient(135deg,#10b981,#059669)!important;color:#fff!important;border-color:transparent!important}
.dvn-app .dvn-punch-end{background:linear-gradient(135deg,#ef4444,#b91c1c)!important;color:#fff!important;border-color:transparent!important}
.dvn-app .dvn-punch-disp{font-size:calc(var(--fs) - 1px)!important;color:var(--c-text2)!important;font-weight:700!important}

.dvn-app .dvn-btn-pdf{background:linear-gradient(135deg,#475569,#1e293b)!important;color:#fff!important;border-color:transparent!important}

.dvn-app .dvn-comments{background:var(--c-card)!important;border:1px solid var(--c-border)!important;border-radius:var(--radius)!important;padding:14px!important;margin-top:12px!important;box-shadow:var(--shadow)!important}
.dvn-app .dvn-cmt-list{display:flex!important;flex-direction:column!important;gap:8px!important;margin-bottom:10px!important}
.dvn-app .dvn-cmt{background:var(--c-bg)!important;border-radius:8px!important;padding:8px 10px!important}
.dvn-app .dvn-cmt-user{font-weight:800!important;font-size:calc(var(--fs) - 1px)!important}
.dvn-app .dvn-cmt-time{margin-left:8px!important;color:var(--c-text2)!important;font-size:calc(var(--fs) - 3px)!important}
.dvn-app .dvn-cmt-body{white-space:pre-wrap!important;margin-top:3px!important;font-size:calc(var(--fs) - 1px)!important}
.dvn-app .dvn-cmt-add{display:flex!important;gap:8px!important;align-items:flex-end!important}
.dvn-app .dvn-cmt-add textarea{flex:1!important;background:var(--c-input-bg)!important;color:var(--c-text)!important;border:1px solid var(--c-input-border)!important;border-radius:8px!important;padding:8px!important;font-size:var(--fs)!important}

/* ============================================================
   v1.2.0 追加UI（フローチャート・録音・手書き・編集削除）
   ============================================================ */
/* 一覧カードの回覧フローチャート */
.dvn-app .dvn-flow{display:flex!important;align-items:flex-start!important;flex-wrap:wrap!important;gap:2px!important;margin:10px 0 8px!important}
.dvn-app .dvn-flow-node{display:flex!important;flex-direction:column!important;align-items:center!important;min-width:46px!important;text-align:center!important}
.dvn-app .dvn-fn-dot{width:26px!important;height:26px!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;font-weight:800!important;font-size:calc(var(--fs) - 3px)!important;background:var(--c-border)!important;color:var(--c-text2)!important;border:2px solid transparent!important}
.dvn-app .dvn-fn-name{font-size:calc(var(--fs) - 4px)!important;color:var(--c-text2)!important;margin-top:2px!important;line-height:1.2!important}
.dvn-app .dvn-fn-role{font-size:calc(var(--fs) - 5px)!important;color:var(--c-accent)!important;font-weight:700!important;line-height:1.1!important}
.dvn-app .dvn-fn-done .dvn-fn-dot{background:#10b981!important;color:#fff!important}
.dvn-app .dvn-fn-active .dvn-fn-dot{background:var(--c-accent)!important;color:#fff!important;border-color:var(--c-accent2)!important;box-shadow:0 0 0 3px rgba(108,99,255,.25)!important}
.dvn-app .dvn-fn-skip .dvn-fn-dot{background:transparent!important;border:2px dashed var(--c-border)!important}
.dvn-app .dvn-fn-skip .dvn-fn-name{text-decoration:line-through!important}
.dvn-app .dvn-flow-arrow{align-self:center!important;color:var(--c-border)!important;font-size:calc(var(--fs) + 4px)!important;font-weight:800!important;margin-top:-12px!important}
.dvn-app .dvn-fa-done{color:#10b981!important}.dvn-app .dvn-fa-active{color:var(--c-accent)!important}

/* クイックメモバー */
.dvn-app .dvn-quickbar{display:flex!important;gap:8px!important;align-items:center!important;flex-wrap:wrap!important;background:var(--c-card)!important;border:1px solid var(--c-border)!important;border-radius:var(--radius)!important;padding:10px!important;margin-bottom:12px!important;box-shadow:var(--shadow)!important}
.dvn-app .dvn-btn-rec{background:linear-gradient(135deg,#f43f5e,#e11d48)!important;color:#fff!important;border-color:transparent!important}
.dvn-app .dvn-btn-draw{background:linear-gradient(135deg,#0ea5e9,#0284c7)!important;color:#fff!important;border-color:transparent!important}
.dvn-app .dvn-quick-hint{font-size:calc(var(--fs) - 2px)!important;color:var(--c-text2)!important}

/* 明細の種別・操作・音声 */
.dvn-app .dvn-di-memo{border-left:4px solid #0ea5e9!important}
.dvn-app .dvn-di-kind{background:#e0f2fe!important;color:#0369a1!important;border-radius:6px!important;padding:2px 8px!important;font-size:calc(var(--fs) - 2px)!important;font-weight:800!important}
.dvn-app[data-theme="dark"] .dvn-di-kind{background:#0c4a6e!important;color:#bae6fd!important}
.dvn-app .dvn-di-ops{margin-left:auto!important;display:flex!important;gap:6px!important}
.dvn-app .dvn-di-edit,.dvn-app .dvn-di-del{background:var(--c-bg)!important;border:1px solid var(--c-border)!important;border-radius:6px!important;padding:3px 9px!important;cursor:pointer!important;font-size:calc(var(--fs) - 2px)!important;color:var(--c-text)!important}
.dvn-app .dvn-di-del{color:var(--c-danger)!important}
.dvn-app .dvn-di-audio{width:100%!important;margin-top:6px!important;height:36px!important}

/* 録音モーダル */
.dvn-app .dvn-rec-status{font-weight:700!important;margin-bottom:8px!important}
.dvn-app .dvn-rec-controls{display:flex!important;gap:8px!important;align-items:center!important;margin-bottom:8px!important}
.dvn-app .dvn-rec-timer{font-weight:800!important;font-variant-numeric:tabular-nums!important;font-size:calc(var(--fs) + 2px)!important}
.dvn-app #dvn-rec-text,.dvn-app #dvn-draw-note{width:100%!important;background:var(--c-input-bg)!important;color:var(--c-text)!important;border:1px solid var(--c-input-border)!important;border-radius:8px!important;padding:10px!important;font-size:var(--fs)!important;margin-top:4px!important}
.dvn-app .dvn-rec-actions{margin-top:10px!important}

/* 手書きキャンバス */
.dvn-app .dvn-draw-tools{display:flex!important;gap:6px!important;margin-bottom:8px!important}
.dvn-app .dvn-canvas{width:100%!important;height:auto!important;aspect-ratio:640/420!important;background:#fff!important;border:1px solid var(--c-border)!important;border-radius:8px!important;touch-action:none!important;cursor:crosshair!important}

/* v1.3.0 サンプル・削除 */
.dvn-app .dvn-head-btns{display:flex!important;gap:8px!important;flex-wrap:wrap!important}
.dvn-app .dvn-btn-sample{background:#fffbeb!important;color:#92400e!important;border-color:#fcd34d!important}
.dvn-app .dvn-btn-del-nippo{background:#fef2f2!important;color:#b91c1c!important;border-color:#fca5a5!important}

/* v1.4.0 電子黒板入力 */
.dvn-app .dvn-bb-fields{display:flex!important;flex-wrap:wrap!important;gap:6px!important;margin-bottom:6px!important}
.dvn-app .dvn-bb-fields input{flex:1 1 130px!important;min-width:110px!important;background:var(--c-input-bg)!important;color:var(--c-text)!important;border:1px solid var(--c-input-border)!important;border-radius:8px!important;padding:7px 9px!important;font-size:calc(var(--fs) - 1px)!important}

/* v1.4.1 最終更新表示・アンカー着地 */
.dvn-app .dvn-last{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;margin-top:8px!important;padding-top:8px!important;border-top:1px dashed var(--c-border)!important;font-size:calc(var(--fs) - 2px)!important}
.dvn-app .dvn-last-time{color:var(--c-text2)!important;font-variant-numeric:tabular-nums!important}
.dvn-app .dvn-last-user{font-weight:800!important;color:var(--c-text)!important}
.dvn-app .dvn-last-label{background:var(--c-bg)!important;border:1px solid var(--c-border)!important;border-radius:6px!important;padding:1px 8px!important;color:var(--c-text)!important}
.dvn-app .dvn-last-go{margin-left:auto!important;color:var(--c-accent)!important;font-weight:800!important}
.dvn-app .dvn-detail-item,.dvn-app .dvn-cmt{scroll-margin-top:84px!important}
.dvn-app .dvn-detail-item:target,.dvn-app .dvn-cmt:target{animation:dvnHi 2.2s ease!important;outline:2px solid var(--c-accent)!important;outline-offset:2px!important;border-radius:10px!important}
@keyframes dvnHi{0%{background:rgba(108,99,255,.22)}100%{background:transparent}}

/* v1.5.0 マスタ分類ブラウズ */
.dvn-app .dvn-mat-box{max-width:560px!important}
.dvn-app .dvn-mat-bc{display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:4px!important;margin:8px 0!important;font-size:calc(var(--fs) - 2px)!important}
.dvn-app .dvn-bc-item{cursor:pointer!important;color:var(--c-accent)!important;font-weight:700!important;background:var(--c-bg)!important;border:1px solid var(--c-border)!important;border-radius:6px!important;padding:2px 8px!important}
.dvn-app .dvn-bc-sep{color:var(--c-text2)!important}
.dvn-app .dvn-mat-cards{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(140px,1fr))!important;gap:8px!important;margin:8px 0!important;max-height:46vh!important;overflow:auto!important}
.dvn-app .dvn-mat-card{cursor:pointer!important;background:var(--c-card)!important;border:1px solid var(--c-border)!important;border-radius:10px!important;padding:12px 10px!important;font-weight:700!important;display:flex!important;justify-content:space-between!important;align-items:center!important;box-shadow:var(--shadow)!important}
.dvn-app .dvn-mat-card:active{transform:scale(.98)!important}
.dvn-app .dvn-mc-go{color:var(--c-accent)!important;font-weight:800!important}
.dvn-app .dvn-mat-results{max-height:46vh!important;overflow:auto!important}

/* v1.5.0 黒板オプション */
.dvn-app .dvn-bb-opts{display:flex!important;flex-wrap:wrap!important;gap:12px!important;align-items:center!important;margin:6px 0!important}
.dvn-app .dvn-bb-opts select{background:var(--c-input-bg)!important;color:var(--c-text)!important;border:1px solid var(--c-input-border)!important;border-radius:8px!important;padding:5px 8px!important;margin-left:4px!important;font-size:calc(var(--fs) - 1px)!important}
.dvn-app .dvn-bb-exif{display:flex!important;align-items:center!important;gap:4px!important}

/* v1.6.0 現場の関連書類 */
.dvn-app .dvn-docs{background:var(--c-card)!important;border:1px solid var(--c-border)!important;border-radius:var(--radius)!important;padding:14px!important;margin-top:12px!important;box-shadow:var(--shadow)!important}
.dvn-app .dvn-docs-genba{font-size:calc(var(--fs) - 2px)!important;color:var(--c-text2)!important;margin-bottom:8px!important}
.dvn-app .dvn-docs-sec{margin-bottom:12px!important}
.dvn-app .dvn-docs-cap{font-weight:800!important;margin-bottom:6px!important;display:flex!important;align-items:center!important;gap:8px!important}
.dvn-app .dvn-rcpt-total{margin-left:auto!important;background:#ecfdf5!important;color:#047857!important;border:1px solid #6ee7b7!important;border-radius:8px!important;padding:2px 10px!important;font-variant-numeric:tabular-nums!important}
.dvn-app[data-theme="dark"] .dvn-rcpt-total{background:#064e3b!important;color:#6ee7b7!important}
.dvn-app .dvn-doc-row{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;text-decoration:none!important;color:var(--c-text)!important;background:var(--c-bg)!important;border:1px solid var(--c-border)!important;border-radius:8px!important;padding:8px 10px!important;margin-bottom:6px!important}
.dvn-app .dvn-doc-row:active{transform:scale(.995)!important}
.dvn-app .dvn-doc-type{background:var(--c-card)!important;border:1px solid var(--c-border)!important;border-radius:6px!important;padding:1px 8px!important;font-size:calc(var(--fs) - 3px)!important;font-weight:800!important;color:var(--c-accent)!important}
.dvn-app .dvn-doc-title{font-weight:700!important;flex:1 1 120px!important}
.dvn-app .dvn-doc-meta{font-size:calc(var(--fs) - 3px)!important;color:var(--c-text2)!important}
.dvn-app .dvn-doc-go{color:var(--c-accent)!important;font-weight:800!important}
.dvn-app .dvn-rcpt-amt{font-weight:800!important;font-variant-numeric:tabular-nums!important;color:#047857!important;margin-left:auto!important}
.dvn-app[data-theme="dark"] .dvn-rcpt-amt{color:#6ee7b7!important}
.dvn-app .dvn-rcpt-row .dvn-doc-type{color:#047857!important}

/* v1.7.0 全ボタン配色（白ボタン廃止・リンク→ボタン） */
.dvn-app .dvn-filter .dvn-btn{background:linear-gradient(135deg,var(--c-accent),var(--c-accent2))!important;color:#fff!important;border-color:transparent!important}
.dvn-app .dvn-btn-sample{background:linear-gradient(135deg,#f59e0b,#d97706)!important;color:#fff!important;border-color:transparent!important}
.dvn-app .dvn-btn-del-nippo{background:linear-gradient(135deg,#ef4444,#b91c1c)!important;color:#fff!important;border-color:transparent!important}
.dvn-app .dvn-di-edit{background:linear-gradient(135deg,#3b82f6,#2563eb)!important;color:#fff!important;border-color:transparent!important}
.dvn-app .dvn-di-del{background:linear-gradient(135deg,#ef4444,#dc2626)!important;color:#fff!important;border-color:transparent!important}
.dvn-app .dvn-rl-ops button{background:linear-gradient(135deg,#6366f1,#4f46e5)!important;color:#fff!important;border-color:transparent!important;font-weight:700!important}
.dvn-app .dvn-mat-card{background:linear-gradient(135deg,#eef2ff,#e0e7ff)!important;color:#3730a3!important;border-color:#c7d2fe!important}
.dvn-app[data-theme="dark"] .dvn-mat-card{background:linear-gradient(135deg,#312e81,#3730a3)!important;color:#e0e7ff!important;border-color:#4f46e5!important}
.dvn-app .dvn-bc-item{background:linear-gradient(135deg,#6366f1,#4f46e5)!important;color:#fff!important;border-color:transparent!important}
.dvn-app .dvn-mat-hit{cursor:pointer!important}
.dvn-app .dvn-mat-direct{background:linear-gradient(135deg,#64748b,#475569)!important;color:#fff!important;border-color:transparent!important}
/* 関連書類リンクをボタン表示に */
.dvn-app .dvn-doc-row{background:linear-gradient(135deg,#f8fafc,#eef2f7)!important;border-color:#cbd5e1!important}
.dvn-app[data-theme="dark"] .dvn-doc-row{background:var(--c-bg)!important;border-color:var(--c-border)!important}
.dvn-app .dvn-doc-go{background:linear-gradient(135deg,#6366f1,#4f46e5)!important;color:#fff!important;border-radius:6px!important;padding:3px 12px!important;font-weight:800!important;margin-left:auto!important;font-size:calc(var(--fs) - 3px)!important;white-space:nowrap!important}

/* v1.8.0 材料行の幅修正（.dvn-fg input の100%上書きを打ち消す）＋黒板メモ表記 */
.dvn-app .dvn-mat-row .dvn-mat-qty{flex:0 0 96px!important;width:96px!important;text-align:right!important}
.dvn-app .dvn-mat-row .dvn-mat-nm{flex:1 1 auto!important;min-width:0!important;word-break:break-word!important}
.dvn-app .dvn-mat-row .dvn-mat-unit{flex:0 0 auto!important;width:auto!important;min-width:28px!important}
.dvn-app .dvn-mat-row .dvn-mat-del{flex:0 0 auto!important}
.dvn-app .dvn-mat-src{display:inline-block!important;white-space:nowrap!important;background:#eef2ff!important;color:#4338ca!important;border-radius:5px!important;padding:0 6px!important;font-size:calc(var(--fs) - 3px)!important;font-weight:700!important;margin-left:4px!important}
.dvn-app[data-theme="dark"] .dvn-mat-src{background:#312e81!important;color:#c7d2fe!important}
.dvn-app .dvn-src-d{background:#f1f5f9!important;color:#475569!important}
.dvn-app[data-theme="dark"] .dvn-src-d{background:#334155!important;color:#cbd5e1!important}
.dvn-app .dvn-bb-note{font-size:calc(var(--fs) - 2px)!important;color:var(--c-text2)!important}

/* v1.9.0 お知らせ回覧板（トップページ用ショートコード） */
.dvn-app.dvn-oshirase{margin:0 0 14px!important}
.dvn-app .dvn-osh-head{display:flex!important;align-items:center!important;gap:10px!important;margin-bottom:8px!important}
.dvn-app .dvn-osh-title{font-weight:800!important;font-size:calc(var(--fs) + 1px)!important}
.dvn-app .dvn-osh-badge{background:linear-gradient(135deg,#f43f5e,#e11d48)!important;color:#fff!important;border-radius:999px!important;padding:1px 10px!important;font-weight:800!important;font-size:calc(var(--fs) - 2px)!important}
.dvn-app .dvn-osh-list{display:flex!important;flex-direction:column!important;gap:8px!important}
.dvn-app .dvn-osh-card{display:flex!important;align-items:center!important;gap:10px!important;text-decoration:none!important;color:var(--c-text)!important;
  background:linear-gradient(135deg,#fff7ed,#ffedd5)!important;border:1px solid #fdba74!important;border-left:5px solid #f59e0b!important;border-radius:12px!important;padding:10px 12px!important;box-shadow:var(--shadow)!important}
.dvn-app[data-theme="dark"] .dvn-osh-card{background:linear-gradient(135deg,#3a2410,#4a2f12)!important;border-color:#b45309!important}
.dvn-app .dvn-osh-card:active{transform:scale(.995)!important}
.dvn-app .dvn-osh-bell{font-size:calc(var(--fs) + 6px)!important}
.dvn-app .dvn-osh-body{display:flex!important;flex-direction:column!important;gap:2px!important;flex:1 1 auto!important;min-width:0!important}
.dvn-app .dvn-osh-genba{font-weight:800!important;font-size:calc(var(--fs) + 1px)!important}
.dvn-app .dvn-osh-meta{display:flex!important;flex-wrap:wrap!important;gap:8px!important;font-size:calc(var(--fs) - 2px)!important;color:var(--c-text2)!important}
.dvn-app .dvn-osh-role{background:var(--c-card)!important;border:1px solid var(--c-border)!important;border-radius:6px!important;padding:0 8px!important;color:var(--c-accent)!important;font-weight:700!important}
.dvn-app .dvn-osh-from{font-size:calc(var(--fs) - 2px)!important;color:var(--c-text2)!important}
.dvn-app .dvn-osh-go{flex:0 0 auto!important;background:linear-gradient(135deg,#f59e0b,#d97706)!important;color:#fff!important;border-radius:9px!important;padding:8px 14px!important;font-weight:800!important;white-space:nowrap!important}
.dvn-app .dvn-osh-none{display:block!important;color:var(--c-text2)!important;background:var(--c-card)!important;border:1px dashed var(--c-border)!important;border-radius:10px!important;padding:10px 12px!important;font-size:calc(var(--fs) - 1px)!important}

/* v1.10.0 状態タブ・ページネーション */
.dvn-app .dvn-tabs{display:flex!important;gap:8px!important;margin:6px 0 12px!important;flex-wrap:wrap!important}
.dvn-app .dvn-tab{display:inline-flex!important;align-items:center!important;gap:6px!important;text-decoration:none!important;
  background:var(--c-card)!important;color:var(--c-text)!important;border:1px solid var(--c-border)!important;border-radius:999px!important;padding:7px 14px!important;font-weight:700!important;font-size:calc(var(--fs) - 1px)!important}
.dvn-app .dvn-tab b{background:var(--c-bg)!important;border-radius:999px!important;padding:0 8px!important;font-size:calc(var(--fs) - 3px)!important;color:var(--c-text2)!important}
.dvn-app .dvn-tab-on{background:linear-gradient(135deg,var(--c-accent),var(--c-accent2))!important;color:#fff!important;border-color:transparent!important}
.dvn-app .dvn-tab-on b{background:rgba(255,255,255,.25)!important;color:#fff!important}
.dvn-app .dvn-pager{display:flex!important;align-items:center!important;justify-content:center!important;gap:12px!important;margin-top:14px!important;flex-wrap:wrap!important}
.dvn-app .dvn-pager-info{font-size:calc(var(--fs) - 1px)!important;color:var(--c-text2)!important;font-variant-numeric:tabular-nums!important}

/* v1.12.0 ダーク時はページ全体（外側余白）も暗く */
html.dvn-nippo-dark, body.dvn-nippo-dark{background:#0d0d1a!important}
body.dvn-nippo-dark, body.dvn-nippo-dark #page, body.dvn-nippo-dark .site,
body.dvn-nippo-dark .site-content, body.dvn-nippo-dark #content,
body.dvn-nippo-dark .content-area, body.dvn-nippo-dark main,
body.dvn-nippo-dark .entry-content, body.dvn-nippo-dark .wp-block-post-content{background-color:#0d0d1a!important}

/* v1.14.0 追記：打刻バー（常時表示）＋色付きアコーディオン */
.dvn-app .dvn-punch-bar{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:8px!important;
  background:var(--c-bg)!important;border:1px solid var(--c-border)!important;border-radius:10px!important;padding:10px!important;margin-bottom:12px!important}
.dvn-app .dvn-punch-time{flex:1 1 180px!important;min-width:140px!important;background:var(--c-input-bg)!important;color:var(--c-text)!important;border:1px solid var(--c-input-border)!important;border-radius:8px!important;padding:9px 10px!important;font-size:var(--fs)!important}
.dvn-app .dvn-punch-disp{font-size:calc(var(--fs) - 2px)!important;color:var(--c-text2)!important;width:100%!important}

/* セクション本体（枠で囲う） */
.dvn-app .dvn-sec{margin-bottom:10px!important;background:transparent!important;border:none!important;padding:0!important}
.dvn-app .dvn-sec-body{background:var(--c-card)!important;border:2px solid var(--c-border)!important;border-top:none!important;border-radius:0 0 12px 12px!important;padding:12px!important}
.dvn-app .dvn-sec-body .dvn-fg:last-child{margin-bottom:0!important}

/* 見出し：色付きバー（白文字）。開＝上だけ角丸＋本体に接続／閉＝全角丸 */
.dvn-app .dvn-sec-h{display:flex!important;align-items:center!important;gap:8px!important;cursor:pointer!important;user-select:none!important;
  color:#fff!important;-webkit-text-fill-color:#fff!important;font-weight:800!important;font-size:calc(var(--fs) + 1px)!important;
  padding:12px 14px!important;border:none!important;border-radius:12px 12px 0 0!important;margin:0!important;box-shadow:var(--shadow)!important}
.dvn-app .dvn-sec-collapsible.dvn-collapsed > .dvn-sec-h{border-radius:12px!important}
.dvn-app .dvn-sec-tg{margin-left:auto!important;font-size:calc(var(--fs) + 3px)!important;transition:transform .2s!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
.dvn-app .dvn-sec-collapsible.dvn-collapsed > .dvn-sec-h .dvn-sec-tg{transform:rotate(-90deg)!important}
.dvn-app .dvn-sec-collapsible.dvn-collapsed > .dvn-sec-body{display:none!important}

/* セクション別カラー（見出しバー＋本体枠） */
.dvn-app .dvn-sec-work  > .dvn-sec-h{background:linear-gradient(135deg,#6366f1,#4f46e5)!important}
.dvn-app .dvn-sec-work  .dvn-sec-body{border-color:#6366f1!important}
.dvn-app .dvn-sec-warn  > .dvn-sec-h{background:linear-gradient(135deg,#f59e0b,#d97706)!important}
.dvn-app .dvn-sec-warn  .dvn-sec-body{border-color:#f59e0b!important}
.dvn-app .dvn-sec-mat   > .dvn-sec-h{background:linear-gradient(135deg,#14b8a6,#0d9488)!important}
.dvn-app .dvn-sec-mat   .dvn-sec-body{border-color:#14b8a6!important}
.dvn-app .dvn-sec-photo > .dvn-sec-h{background:linear-gradient(135deg,#0ea5e9,#0284c7)!important}
.dvn-app .dvn-sec-photo .dvn-sec-body{border-color:#0ea5e9!important}


/* ---- モバイル最適化 ---- */
@media(max-width:560px){
  .dvn-app .dvn-info-grid{grid-template-columns:repeat(2,1fr)!important}
  .dvn-app .dvn-route-add{flex-wrap:wrap!important}
  .dvn-app .dvn-rl-role{width:90px!important}
  .dvn-app{padding:8px!important;border-radius:0!important}
  .dvn-app .dvn-cards{grid-template-columns:1fr!important}
  .dvn-app .dvn-row2{flex-direction:column!important;gap:0!important}
  .dvn-app .dvn-actions .dvn-btn{flex:1 1 100%!important}
  .dvn-app .dvn-thumb,.dvn-app .dvn-ph-up,.dvn-app .dvn-ph-up img{width:72px!important;height:72px!important}
}

/* 回覧担当エディタ */
.dvn-app .dvn-route-edit-wrap{margin:0 0 10px!important}
.dvn-app .dvn-btn-route{background:linear-gradient(135deg,#0ea5e9,#6366f1)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border:none!important}
.dvn-app .dvn-route-editor{background:var(--c-card)!important;border:1px solid var(--c-border)!important;border-radius:10px!important;padding:12px!important;margin-top:8px!important}
.dvn-app .dvn-rt-row{display:flex!important;align-items:center!important;gap:6px!important;margin-bottom:6px!important;flex-wrap:wrap!important}
.dvn-app .dvn-rt-handle{color:var(--c-text2)!important;cursor:default!important}
.dvn-app .dvn-rt-row .dvn-rt-user{flex:1 1 160px!important;background:var(--c-input-bg)!important;color:var(--c-text)!important;border:1px solid var(--c-input-border)!important;border-radius:7px!important;padding:7px 8px!important}
.dvn-app .dvn-rt-row .dvn-rt-role{flex:0 0 120px!important;background:var(--c-input-bg)!important;color:var(--c-text)!important;border:1px solid var(--c-input-border)!important;border-radius:7px!important;padding:7px 8px!important}
.dvn-app .dvn-rt-state{flex:0 0 auto!important;font-size:calc(var(--fs) - 2px)!important;font-weight:700!important;border-radius:6px!important;padding:2px 8px!important;color:#fff!important;-webkit-text-fill-color:#fff!important;background:#94a3b8!important}
.dvn-app .dvn-rt-st-done{background:#10b981!important}.dvn-app .dvn-rt-st-active{background:#6366f1!important}.dvn-app .dvn-rt-st-wait{background:#94a3b8!important}
.dvn-app .dvn-rt-up,.dvn-app .dvn-rt-down,.dvn-app .dvn-rt-del{flex:0 0 auto!important;width:30px!important;height:30px!important;border:1px solid var(--c-border)!important;background:var(--c-bg)!important;color:var(--c-text)!important;border-radius:7px!important;cursor:pointer!important}
.dvn-app .dvn-rt-del{background:linear-gradient(135deg,#ef4444,#b91c1c)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border:none!important}
.dvn-app .dvn-route-editor-acts{display:flex!important;gap:8px!important;margin-top:8px!important;flex-wrap:wrap!important}
