/* ============================================================
   RESET
   ============================================================ */
#mpc-app,#mpc-app *,#mpc-app *::before,#mpc-app *::after{
  box-sizing:border-box !important;
  font-family:'Noto Sans JP',Meiryo,'Hiragino Kaku Gothic ProN',sans-serif !important;
}
#mpc-app p,#mpc-app ul,#mpc-app ol,#mpc-app li,
#mpc-app h1,#mpc-app h2,#mpc-app h3,
#mpc-app div,#mpc-app span,#mpc-app nav,
#mpc-app input,#mpc-app button,#mpc-app select,
#mpc-app label,#mpc-app textarea{
  margin:0 !important; padding:0 !important; line-height:1.5 !important;
}
#mpc-app a,#mpc-app a:hover,#mpc-app a:visited{ text-decoration:none !important; color:inherit !important; }
#mpc-app button{ cursor:pointer !important; }
#mpc-app input,#mpc-app select{ outline:none !important; }
#mpc-app [contenteditable]{ outline:none !important; }

/* ============================================================
   APP ROOT
   ============================================================ */
#mpc-app{
  display:flex !important;
  flex-direction:row !important;
  width:100% !important;
  height:90vh !important;
  min-height:800px !important;
  background:#F5F6F8 !important;
  border:1px solid #DDE1E7 !important;
  border-radius:14px !important;
  overflow:hidden !important;
  position:relative !important;
}

/* ============================================================
   SIDEBAR
   ============================================================ */
#mpc-app #mpc-sb{
  display:flex !important;
  flex-direction:column !important;
  width:220px !important;
  min-width:160px !important;
  max-width:360px !important;
  flex-shrink:0 !important;
  background:#FFFFFF !important;
  border-right:1px solid #E5E7EB !important;
  overflow:visible !important;
  position:relative !important;
  transition:width .22s cubic-bezier(.4,0,.2,1) !important;
  z-index:10 !important;
}
#mpc-app #mpc-sb-inner{
  display:flex !important; flex-direction:column !important;
  width:100% !important; height:100% !important;
  overflow:hidden !important;
}
#mpc-app #mpc-sb.mpc-closed{
  width:0 !important; min-width:0 !important; border-right:none !important;
}
#mpc-app #mpc-sbtog{
  position:absolute !important;
  top:10px !important; right:-26px !important;
  width:26px !important; height:34px !important;
  background:#FFFFFF !important;
  border:1px solid #E5E7EB !important;
  border-left:none !important;
  border-radius:0 8px 8px 0 !important;
  display:flex !important; align-items:center !important; justify-content:center !important;
  font-size:9px !important; color:#9CA3AF !important;
  z-index:30 !important; transition:background .15s !important;
  cursor:pointer !important;
}
#mpc-app #mpc-sbtog:hover{ background:#F0F4FF !important; color:#1E40AF !important; }
#mpc-app #mpc-sb-inner{
  display:flex !important; flex-direction:column !important;
  width:100% !important; height:100% !important;
  overflow:hidden !important;
}
#mpc-app #mpc-sbhdl{
  position:absolute !important; right:0 !important; top:0 !important; bottom:0 !important;
  width:4px !important; cursor:col-resize !important; z-index:15 !important;
}
#mpc-app #mpc-sbhdl:hover{ background:rgba(30,64,175,.2) !important; }
#mpc-app .mpc-logo{
  display:flex !important; align-items:center !important; gap:8px !important;
  padding:0 14px !important; height:52px !important;
  border-bottom:1px solid #F0F2F5 !important;
  flex-shrink:0 !important; background:#FFFFFF !important;
}
#mpc-app .mpc-logo-txt{
  font-size:15px !important; font-weight:700 !important;
  color:#111827 !important; letter-spacing:.06em !important; white-space:nowrap !important;
}
#mpc-app .mpc-vmode-btn{
  display:flex !important; align-items:center !important; gap:4px !important;
  padding:4px 9px !important;
  background:#F3E8FF !important; border:1.5px solid #D8B4FE !important;
  border-radius:6px !important; font-size:11px !important;
  font-weight:600 !important; color:#7C3AED !important;
  white-space:nowrap !important; margin-left:auto !important;
  flex-shrink:0 !important; transition:background .15s !important;
}
#mpc-app .mpc-vmode-btn:hover{ background:#EDE9FE !important; }
#mpc-app .mpc-btn-new{
  display:flex !important; align-items:center !important;
  justify-content:center !important; gap:6px !important;
  margin:12px 14px !important; padding:9px 0 !important;
  background:#1E40AF !important; color:#FFFFFF !important;
  border:none !important; border-radius:8px !important;
  font-size:13px !important; font-weight:600 !important;
  white-space:nowrap !important; flex-shrink:0 !important;
  transition:background .15s !important;
}
#mpc-app .mpc-btn-new:hover{ background:#1E3A8A !important; }
#mpc-app .mpc-nav{
  flex:1 !important; overflow-y:auto !important; overflow-x:hidden !important;
  padding:6px 8px 12px !important; background:#FFFFFF !important;
}
#mpc-app .mpc-nav::-webkit-scrollbar{ width:3px !important; }
#mpc-app .mpc-nav::-webkit-scrollbar-thumb{ background:#D1D5DB !important; border-radius:3px !important; }
#mpc-app .mpc-nav-section-lbl{
  padding:10px 10px 4px !important; font-size:10px !important;
  font-weight:700 !important; text-transform:uppercase !important;
  letter-spacing:.1em !important; color:#9CA3AF !important; background:#FFFFFF !important;
}
#mpc-app .mpc-nitem{
  display:flex !important; align-items:center !important; gap:8px !important;
  padding:7px 10px !important; border-radius:7px !important;
  color:#4B5563 !important; font-size:13px !important; font-weight:500 !important;
  white-space:nowrap !important; cursor:pointer !important;
  user-select:none !important; background:transparent !important;
  margin-bottom:1px !important; transition:background .12s, color .12s !important;
}
#mpc-app .mpc-nitem:hover{ background:#F0F4FF !important; color:#1E40AF !important; }
#mpc-app .mpc-nitem.on{ background:#EFF6FF !important; color:#1E40AF !important; font-weight:600 !important; }
#mpc-app .mpc-sec{
  display:flex !important; align-items:center !important;
  justify-content:space-between !important;
  padding:10px 10px 4px !important; font-size:10px !important;
  font-weight:700 !important; text-transform:uppercase !important;
  letter-spacing:.1em !important; color:#9CA3AF !important; background:#FFFFFF !important;
}
#mpc-app .mpc-sec button{
  display:flex !important; align-items:center !important; justify-content:center !important;
  width:18px !important; height:18px !important; border-radius:5px !important;
  color:#9CA3AF !important; background:transparent !important; border:none !important;
  transition:background .12s, color .12s !important;
}
#mpc-app .mpc-sec button:hover{ background:#F0F2F5 !important; color:#374151 !important; }
#mpc-app .mpc-frow{
  display:flex !important; align-items:center !important; gap:5px !important;
  padding:6px 10px !important; border-radius:6px !important;
  color:#4B5563 !important; font-size:12.5px !important; font-weight:500 !important;
  cursor:pointer !important; white-space:nowrap !important;
  user-select:none !important; background:transparent !important;
  margin-bottom:1px !important; transition:background .12s, color .12s !important;
}
#mpc-app .mpc-frow:hover{ background:#F0F4FF !important; color:#1E40AF !important; }
#mpc-app .mpc-frow.on{ background:#EFF6FF !important; color:#1E40AF !important; }
#mpc-app .mpc-ftog{
  display:flex !important; align-items:center !important; justify-content:center !important;
  width:14px !important; height:14px !important; flex-shrink:0 !important;
  background:transparent !important; transition:transform .15s !important;
}
#mpc-app .mpc-ftog.open{ transform:rotate(90deg) !important; }
#mpc-app .mpc-fname{ flex:1 !important; overflow:hidden !important; text-overflow:ellipsis !important; }
#mpc-app .mpc-facts{ display:none !important; gap:1px !important; }
#mpc-app .mpc-frow:hover .mpc-facts{ display:flex !important; }
#mpc-app .mpc-facts button{
  display:flex !important; align-items:center !important; justify-content:center !important;
  width:18px !important; height:18px !important; border-radius:4px !important;
  color:#9CA3AF !important; background:transparent !important; border:none !important;
  transition:background .12s, color .12s !important;
}
#mpc-app .mpc-facts button:hover{ background:#FEE2E2 !important; color:#EF4444 !important; }
#mpc-app .mpc-fchildren{ display:none !important; }
#mpc-app .mpc-fchildren.open{ display:block !important; }

/* ============================================================
   MAIN
   ============================================================ */
#mpc-app #mpc-main{
  display:flex !important; flex-direction:column !important;
  flex:1 !important; min-width:0 !important;
  overflow:hidden !important; background:#F5F6F8 !important;
}
#mpc-app #mpc-topbar{
  display:flex !important; align-items:center !important; gap:6px !important;
  padding:0 14px !important; height:52px !important;
  background:#FFFFFF !important; border-bottom:1px solid #E5E7EB !important;
  flex-shrink:0 !important;
}
#mpc-app .mpc-srchwrap{
  flex:1 !important; max-width:300px !important;
  display:flex !important; align-items:center !important;
  background:#F5F6F8 !important; border:1.5px solid #E5E7EB !important;
  border-radius:8px !important; padding:0 10px !important; height:34px !important;
  transition:border-color .15s, background .15s !important;
}
#mpc-app .mpc-srchwrap:focus-within{ border-color:#1E40AF !important; background:#FFFFFF !important; }
#mpc-app .mpc-srchwrap .mpc-srchico{
  color:#9CA3AF !important; pointer-events:none !important;
  display:flex !important; align-items:center !important;
  flex-shrink:0 !important; margin-right:7px !important; background:transparent !important;
}
#mpc-app #mpc-search{
  flex:1 !important; background:transparent !important; border:none !important;
  font-size:12.5px !important; color:#111827 !important; height:100% !important;
}
#mpc-app #mpc-search::placeholder{ color:#9CA3AF !important; }
#mpc-app .mpc-div{
  width:1px !important; height:20px !important;
  background:#E5E7EB !important; flex-shrink:0 !important;
}
#mpc-app .mpc-ibtn{
  display:flex !important; align-items:center !important; justify-content:center !important;
  width:32px !important; height:32px !important; border-radius:7px !important;
  color:#6B7280 !important; border:1.5px solid transparent !important;
  background:transparent !important; flex-shrink:0 !important;
  transition:background .12s, color .12s !important;
}
#mpc-app .mpc-ibtn:hover{ background:#F0F4FF !important; color:#1E40AF !important; }
#mpc-app .mpc-ibtn.on{ background:#EFF6FF !important; color:#1E40AF !important; border-color:#BFDBFE !important; }
#mpc-app .mpc-ddwrap{ position:relative !important; }
#mpc-app .mpc-sortbtn{
  display:flex !important; align-items:center !important; gap:5px !important;
  padding:6px 10px !important; background:#FFFFFF !important;
  border:1.5px solid #E5E7EB !important; border-radius:7px !important;
  font-size:12px !important; color:#6B7280 !important;
  white-space:nowrap !important; transition:background .12s !important;
}
#mpc-app .mpc-sortbtn:hover{ background:#F5F6F8 !important; }
#mpc-app .mpc-dd{
  position:absolute !important; top:calc(100% + 5px) !important; right:0 !important;
  background:#FFFFFF !important; border:1.5px solid #E5E7EB !important;
  border-radius:10px !important; box-shadow:0 6px 20px rgba(0,0,0,.10) !important;
  padding:4px !important; min-width:140px !important;
  z-index:60 !important; display:none !important;
}
#mpc-app .mpc-dd.open{ display:block !important; }
#mpc-app .mpc-ddi{
  padding:7px 12px !important; border-radius:6px !important;
  font-size:12.5px !important; color:#4B5563 !important;
  cursor:pointer !important; background:transparent !important;
  white-space:nowrap !important; transition:background .12s, color .12s !important;
}
#mpc-app .mpc-ddi:hover{ background:#F0F4FF !important; color:#1E40AF !important; }
#mpc-app .mpc-ddi.on{ color:#1E40AF !important; font-weight:600 !important; }
#mpc-app #mpc-flbl{
  padding:10px 18px 6px !important; font-size:11px !important;
  font-weight:700 !important; color:#9CA3AF !important;
  letter-spacing:.07em !important; text-transform:uppercase !important;
  flex-shrink:0 !important; background:#F5F6F8 !important;
}
#mpc-app #mpc-area{
  flex:1 !important; overflow-y:auto !important;
  padding:12px 16px !important; background:#F5F6F8 !important;
}
#mpc-app #mpc-area::-webkit-scrollbar{ width:5px !important; }
#mpc-app #mpc-area::-webkit-scrollbar-thumb{ background:#D1D5DB !important; border-radius:5px !important; }
#mpc-app #mpc-grid{
  display:grid !important;
  grid-template-columns:repeat(auto-fill,minmax(200px,1fr)) !important;
  gap:12px !important;
}
#mpc-app #mpc-grid.mpc-list{ grid-template-columns:1fr !important; gap:5px !important; }

@media (max-width:600px){
  #mpc-app{
    flex-direction:column !important;
    height:auto !important;
    min-height:0 !important;
    overflow:visible !important;
  }
  #mpc-app #mpc-sb{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    border-right:none !important;
    border-bottom:1px solid #E5E7EB !important;
    flex-shrink:0 !important;
  }
  #mpc-app #mpc-sb.mpc-closed{
    height:0 !important;
    overflow:hidden !important;
    border-bottom:none !important;
  }
  #mpc-app #mpc-sbhdl{ display:none !important; }
  #mpc-app #mpc-sbtog{
    position:static !important;
    width:100% !important;
    height:28px !important;
    border-radius:0 !important;
    border:none !important;
    border-top:1px solid #E5E7EB !important;
    font-size:10px !important;
  }
  #mpc-app #mpc-main{
    width:100% !important;
    min-width:0 !important;
    overflow:hidden !important;
  }
  #mpc-app #mpc-topbar{
    flex-wrap:wrap !important;
    height:auto !important;
    padding:8px 10px !important;
    gap:6px !important;
  }
  #mpc-app .mpc-srchwrap{
    max-width:100% !important;
    width:100% !important;
    flex:1 1 100% !important;
    order:-1 !important;
  }
  #mpc-app #mpc-grid{
    grid-template-columns:1fr !important;
  }
}

/* ============================================================
   CARDS
   ============================================================ */
#mpc-app .mpc-card{
  background:#FFFFFF !important; border:1.5px solid #E8EAED !important;
  border-radius:10px !important; padding:14px 14px 10px !important;
  cursor:pointer !important; position:relative !important;
  overflow:hidden !important; transition:border-color .15s !important;
  animation:mpcIn .18s ease both !important;
}
@keyframes mpcIn{
  from{ opacity:0; transform:translateY(6px); }
  to{ opacity:1; transform:none; }
}
#mpc-app .mpc-card:hover{ border-color:#BFDBFE !important; }
#mpc-app .mpc-cpin{
  position:absolute !important; top:10px !important; left:10px !important;
  color:#F59E0B !important; opacity:0 !important;
  background:transparent !important; transition:opacity .12s !important;
}
#mpc-app .mpc-card.pinned .mpc-cpin{ opacity:1 !important; }
#mpc-app .mpc-ctitle{
  font-size:13.5px !important; font-weight:600 !important;
  color:#111827 !important; margin-bottom:7px !important;
  white-space:nowrap !important; overflow:hidden !important;
  text-overflow:ellipsis !important; padding:0 4px 0 22px !important;
}
#mpc-app .mpc-card:not(.pinned) .mpc-ctitle{ padding-left:4px !important; }
#mpc-app .mpc-cprev{
  font-size:12px !important; color:#6B7280 !important; line-height:1.65 !important;
  overflow:hidden !important; height:100px !important;
  padding:0 4px !important; background:transparent !important;
}
#mpc-app .mpc-cmeta{
  display:flex !important; align-items:center !important;
  justify-content:space-between !important;
  margin-top:10px !important; padding-top:8px !important;
  border-top:1px solid #F3F4F6 !important; background:transparent !important;
}
#mpc-app .mpc-cdate{ font-size:11px !important; color:#9CA3AF !important; }
#mpc-app .mpc-cacts{ display:none !important; gap:2px !important; }
#mpc-app .mpc-card:hover .mpc-cacts{ display:flex !important; }
#mpc-app .mpc-cacts button{
  display:flex !important; align-items:center !important; justify-content:center !important;
  width:24px !important; height:24px !important; border-radius:5px !important;
  color:#9CA3AF !important; background:transparent !important; border:none !important;
  transition:background .12s, color .12s !important;
}
#mpc-app .mpc-cacts button:hover        { background:#FEE2E2 !important; color:#EF4444 !important; }
#mpc-app .mpc-cacts button.mpc-pin:hover{ background:#FEF3C7 !important; color:#F59E0B !important; }
#mpc-app .mpc-cacts button.mpc-flt:hover{ background:#DBEAFE !important; color:#1E40AF !important; }
#mpc-app .mpc-cacts button.mpc-rst:hover{ background:#D1FAE5 !important; color:#10B981 !important; }
#mpc-app #mpc-grid.mpc-list .mpc-card{ display:flex !important; align-items:center !important; padding:9px 14px !important; gap:14px !important; }
#mpc-app #mpc-grid.mpc-list .mpc-cpin{ position:static !important; opacity:1 !important; flex-shrink:0 !important; background:transparent !important; }
#mpc-app #mpc-grid.mpc-list .mpc-card:not(.pinned) .mpc-cpin{ display:none !important; }
#mpc-app #mpc-grid.mpc-list .mpc-ctitle{ margin:0 !important; flex:0 0 180px !important; padding:0 !important; }
#mpc-app #mpc-grid.mpc-list .mpc-cprev{ height:auto !important; max-height:1.65em !important; flex:1 !important; padding:0 !important; }
#mpc-app #mpc-grid.mpc-list .mpc-cmeta{ border-top:none !important; padding-top:0 !important; margin-top:0 !important; flex-shrink:0 !important; }
#mpc-app .mpc-empty{ grid-column:1/-1 !important; text-align:center !important; padding:60px 20px !important; color:#9CA3AF !important; background:transparent !important; }
#mpc-app .mpc-empty svg{ opacity:.35 !important; display:block !important; margin:0 auto 14px !important; }
#mpc-app .mpc-empty h3{ font-size:14.5px !important; color:#6B7280 !important; margin-bottom:5px !important; font-weight:600 !important; }
#mpc-app .mpc-empty p{ font-size:12.5px !important; }

/* ============================================================
   MODAL
   ============================================================ */
#mpc-app #mpc-ov{
  display:none !important; position:absolute !important; inset:0 !important;
  background:rgba(17,24,39,.5) !important; backdrop-filter:blur(4px) !important;
  z-index:100 !important; align-items:center !important; justify-content:center !important;
  border-radius:14px !important;
}
#mpc-app #mpc-ov.open{ display:flex !important; }
#mpc-app #mpc-modal{
  display:flex !important; flex-direction:column !important;
  background:#FFFFFF !important; border-radius:14px !important;
  width:min(680px,95%) !important; max-height:88% !important;
  overflow:hidden !important; animation:mpcMod .2s ease !important;
}
@keyframes mpcMod{
  from{ opacity:0; transform:scale(.95) translateY(-8px); }
  to{ opacity:1; transform:none; }
}
#mpc-app .mpc-mhd{
  display:flex !important; align-items:center !important; gap:8px !important;
  padding:14px 18px !important; border-bottom:1px solid #F0F2F5 !important;
  flex-shrink:0 !important; background:inherit !important;
}
#mpc-app #mpc-mtit{
  flex:1 !important; font-size:17px !important; font-weight:700 !important;
  color:#111827 !important; background:transparent !important; border:none !important;
}
#mpc-app #mpc-mtit::placeholder{ color:#D1D5DB !important; }
#mpc-app .mpc-mmeta{
  display:flex !important; align-items:center !important; gap:10px !important;
  padding:8px 18px !important; border-bottom:1px solid #F0F2F5 !important;
  flex-shrink:0 !important; flex-wrap:wrap !important; background:inherit !important;
}
#mpc-app .mpc-mlbl{ font-size:12px !important; color:#9CA3AF !important; font-weight:500 !important; background:transparent !important; }
#mpc-app .mpc-mmeta select{
  padding:4px 8px !important; border:1.5px solid #E5E7EB !important;
  border-radius:6px !important; font-size:12px !important;
  color:#374151 !important; background:#FFFFFF !important; cursor:pointer !important;
}
#mpc-app .mpc-sw{
  width:18px !important; height:18px !important; border-radius:50% !important;
  border:2px solid #D1D5DB !important; cursor:pointer !important;
  display:inline-block !important; flex-shrink:0 !important;
  transition:transform .15s, border-color .15s !important;
}
#mpc-app .mpc-sw::before,#mpc-app .mpc-sw::after{ content:none !important; display:none !important; }
#mpc-app .mpc-sw:hover,#mpc-app .mpc-sw.on{ transform:scale(1.3) !important; border-color:#1E40AF !important; }
#mpc-app .mpc-mpin-lbl{
  display:flex !important; align-items:center !important; gap:5px !important;
  font-size:12px !important; color:#6B7280 !important;
  cursor:pointer !important; background:transparent !important;
}
#mpc-app .mpc-tb{
  display:flex !important; align-items:center !important; gap:2px !important;
  padding:5px 14px !important; border-bottom:1px solid #F0F2F5 !important;
  flex-shrink:0 !important; flex-wrap:wrap !important; background:inherit !important;
}
#mpc-app .mpc-tsel{
  padding:3px 6px !important; border:1.5px solid #E5E7EB !important;
  border-radius:5px !important; font-size:11.5px !important;
  color:#374151 !important; background:#FFFFFF !important; cursor:pointer !important;
}
#mpc-app .mpc-tbtn{
  display:flex !important; align-items:center !important; justify-content:center !important;
  width:26px !important; height:26px !important; border-radius:5px !important;
  font-size:11.5px !important; font-weight:700 !important; color:#6B7280 !important;
  border:1.5px solid transparent !important; background:transparent !important;
  transition:background .12s, color .12s !important;
}
#mpc-app .mpc-tbtn:hover{ background:#F0F4FF !important; color:#1E40AF !important; }
#mpc-app .mpc-tsep{ width:1px !important; height:16px !important; background:#E5E7EB !important; margin:0 2px !important; flex-shrink:0 !important; }
#mpc-app #mpc-ed{
  flex:1 !important; overflow-y:auto !important;
  padding:16px 20px !important; font-size:13.5px !important;
  color:#111827 !important; line-height:1.75 !important;
  min-height:180px !important; background:inherit !important;
}
#mpc-app #mpc-ed::-webkit-scrollbar{ width:4px !important; }
#mpc-app #mpc-ed::-webkit-scrollbar-thumb{ background:#D1D5DB !important; border-radius:4px !important; }
#mpc-app #mpc-ed h1{ font-size:21px !important; font-weight:700 !important; margin:10px 0 6px !important; color:#111827 !important; }
#mpc-app #mpc-ed h2{ font-size:17px !important; font-weight:700 !important; margin:8px 0 4px !important; color:#111827 !important; }
#mpc-app #mpc-ed h3{ font-size:14px !important; font-weight:700 !important; margin:7px 0 3px !important; color:#111827 !important; }
#mpc-app #mpc-ed ul,#mpc-app #mpc-ed ol{ padding-left:20px !important; margin:4px 0 !important; }
#mpc-app #mpc-ed li{ margin:2px 0 !important; color:#374151 !important; }
#mpc-app #mpc-ed p{ margin:3px 0 !important; color:#374151 !important; }
#mpc-app #mpc-ed table{ border-collapse:collapse !important; width:100% !important; margin:8px 0 !important; background:#FFFFFF !important; }
#mpc-app #mpc-ed td,#mpc-app #mpc-ed th{ border:1.5px solid #D1D5DB !important; padding:6px 10px !important; text-align:left !important; color:#374151 !important; background:#FFFFFF !important; }
#mpc-app #mpc-ed th{ background:#F5F6F8 !important; font-weight:600 !important; color:#111827 !important; }
#mpc-app #mpc-ed[data-ph]:empty::before{ content:attr(data-ph) !important; color:#D1D5DB !important; pointer-events:none !important; }
#mpc-app .mpc-cprev table{ border-collapse:collapse !important; width:100% !important; margin:4px 0 !important; font-size:11px !important; }
#mpc-app .mpc-cprev td,#mpc-app .mpc-cprev th{ border:1px solid #D1D5DB !important; padding:3px 6px !important; color:#374151 !important; background:#FFFFFF !important; }
#mpc-app .mpc-cprev th{ background:#F5F6F8 !important; font-weight:600 !important; color:#111827 !important; }



#mpc-app .mpc-mft{
  display:flex !important; align-items:center !important;
  justify-content:space-between !important;
  padding:10px 18px !important; border-top:1px solid #F0F2F5 !important;
  flex-shrink:0 !important; background:inherit !important;
}
#mpc-app .mpc-mft-r{ display:flex !important; gap:7px !important; background:transparent !important; }
#mpc-app #mpc-mts{ font-size:11px !important; color:#9CA3AF !important; background:transparent !important; }

/* ============================================================
   BUTTONS
   ============================================================ */
#mpc-app .mpc-bsec{
  padding:7px 14px !important; background:#FFFFFF !important;
  border:1.5px solid #E5E7EB !important; border-radius:7px !important;
  font-size:12.5px !important; font-weight:500 !important; color:#6B7280 !important;
  transition:background .12s !important;
}
#mpc-app .mpc-bsec:hover{ background:#F5F6F8 !important; }
#mpc-app .mpc-bpri{
  padding:7px 18px !important; background:#1E40AF !important;
  border:none !important; border-radius:7px !important;
  font-size:12.5px !important; font-weight:600 !important; color:#FFFFFF !important;
  transition:background .12s !important;
}
#mpc-app .mpc-bpri:hover{ background:#1E3A8A !important; }
#mpc-app .mpc-bdng{
  padding:7px 18px !important; background:#EF4444 !important;
  border:none !important; border-radius:7px !important;
  font-size:12.5px !important; font-weight:600 !important; color:#FFFFFF !important;
  transition:background .12s !important;
}
#mpc-app .mpc-bdng:hover{ background:#DC2626 !important; }

/* ============================================================
   CONFIRM DIALOG
   ============================================================ */
#mpc-app #mpc-cfov{
  display:none !important; position:absolute !important; inset:0 !important;
  background:rgba(17,24,39,.45) !important; z-index:200 !important;
  align-items:center !important; justify-content:center !important;
  border-radius:14px !important;
}
#mpc-app #mpc-cfov.open{ display:flex !important; }
#mpc-app #mpc-cfbox{
  background:#FFFFFF !important; border-radius:14px !important;
  padding:28px !important; max-width:340px !important; width:90% !important;
  box-shadow:0 16px 48px rgba(0,0,0,.16) !important;
  text-align:center !important; animation:mpcMod .18s ease !important;
}
#mpc-app #mpc-cfbox h3{ font-size:15px !important; font-weight:700 !important; color:#111827 !important; margin-bottom:7px !important; }
#mpc-app #mpc-cfbox p{ font-size:12.5px !important; color:#6B7280 !important; margin-bottom:20px !important; }
#mpc-app .mpc-cfbts{ display:flex !important; gap:8px !important; justify-content:center !important; background:transparent !important; }

/* ============================================================
   表作成ダイアログ
   ============================================================ */
#mpc-app #mpc-tblov{
  display:none !important; position:absolute !important; inset:0 !important;
  background:rgba(17,24,39,.45) !important; z-index:150 !important;
  align-items:center !important; justify-content:center !important;
  border-radius:14px !important;
}
#mpc-app #mpc-tblov.open{ display:flex !important; }
#mpc-app #mpc-tblbox{
  background:#FFFFFF !important; border-radius:14px !important;
  padding:24px !important; width:260px !important;
  box-shadow:0 16px 48px rgba(0,0,0,.16) !important;
}
#mpc-app #mpc-tblbox .mpc-tbl-title{ font-size:14px !important; font-weight:700 !important; color:#111827 !important; margin-bottom:16px !important; }
#mpc-app #mpc-tblbox .mpc-tbl-row{ display:flex !important; gap:12px !important; margin-bottom:16px !important; }
#mpc-app #mpc-tblbox .mpc-tbl-col{ flex:1 !important; }
#mpc-app #mpc-tblbox label{ font-size:11px !important; color:#9CA3AF !important; font-weight:600 !important; display:block !important; margin-bottom:4px !important; letter-spacing:.05em !important; }
#mpc-app #mpc-tblbox input[type=number]{
  width:100% !important; padding:6px 8px !important;
  border:1.5px solid #E5E7EB !important; border-radius:7px !important;
  font-size:13px !important; color:#111827 !important;
  background:#FFFFFF !important; text-align:center !important;
}
#mpc-app #mpc-tblbox .mpc-tbl-btns{ display:flex !important; gap:8px !important; justify-content:flex-end !important; }

/* ============================================================
   FLOATING（body直下）
   ============================================================ */
.mpcf-wrap{
  position:fixed !important; min-width:280px !important; max-width:480px !important;
  background:#FFFFFF !important; border:1.5px solid #D1D5DB !important;
  border-radius:12px !important; box-shadow:0 12px 40px rgba(0,0,0,.18) !important;
  z-index:2147483647 !important; display:flex !important; flex-direction:column !important;
  resize:both !important; overflow:hidden !important; min-height:180px !important;
  font-family:'Noto Sans JP',Meiryo,'Hiragino Kaku Gothic ProN',sans-serif !important;
}
.mpcf-hd{
  display:flex !important; align-items:center !important; gap:7px !important;
  padding:9px 12px !important; background:#F5F6F8 !important;
  border-bottom:1px solid #E5E7EB !important;
  cursor:grab !important; user-select:none !important; flex-shrink:0 !important;
}
.mpcf-hd:active{ cursor:grabbing !important; }
.mpcf-title{
  flex:1 !important; font-size:12px !important; font-weight:600 !important;
  color:#111827 !important; overflow:hidden !important;
  text-overflow:ellipsis !important; white-space:nowrap !important;
}
.mpcf-btn{
  display:flex !important; align-items:center !important; justify-content:center !important;
  width:20px !important; height:20px !important; border-radius:4px !important;
  color:#9CA3AF !important; background:transparent !important; border:none !important;
  cursor:pointer !important; font-family:inherit !important;
  transition:background .12s, color .12s !important;
}
.mpcf-btn:hover{ background:#E5E7EB !important; color:#111827 !important; }
.mpcf-body{
  flex:1 !important; overflow-y:auto !important; padding:12px 14px !important;
  font-size:13px !important; line-height:1.7 !important; color:#4B5563 !important;
}

/* ============================================================
   TOAST
   ============================================================ */
#mpc-app #mpc-toasts{
  position:absolute !important; bottom:18px !important; right:18px !important;
  z-index:300 !important; display:flex !important;
  flex-direction:column !important; gap:6px !important; background:transparent !important;
}
#mpc-app .mpc-toast{
  padding:9px 14px !important; border-radius:9px !important;
  background:#111827 !important; color:#FFFFFF !important;
  font-size:12.5px !important; font-weight:500 !important;
  box-shadow:0 4px 14px rgba(0,0,0,.12) !important;
  animation:mpcToast .2s ease !important;
}
#mpc-app .mpc-toast.ok{ background:#10B981 !important; }
#mpc-app .mpc-toast.err{ background:#EF4444 !important; }
@keyframes mpcToast{
  from{ opacity:0; transform:translateX(14px); }
  to{ opacity:1; transform:none; }
}

/* ============================================================
   ビジュアルモード（body直下）
   ============================================================ */
#mpc-vov{
  display:none;
  position:fixed !important;
  top:var(--wp-admin--admin-bar--height, 0px) !important;
  left:0 !important; right:0 !important; bottom:0 !important;
  z-index:99998 !important; overflow:auto !important;
  font-family:'Noto Sans JP',Meiryo,'Hiragino Kaku Gothic ProN',sans-serif !important;
}
#mpc-vov.open{ display:block !important; }
#mpc-vtb{
  position:sticky !important; top:0 !important;
  display:flex !important; align-items:center !important; gap:10px !important;
  padding:10px 20px !important;
  background:rgba(255,255,255,.92) !important; backdrop-filter:blur(8px) !important;
  border-bottom:1px solid rgba(0,0,0,.08) !important; z-index:10 !important;
  font-family:'Noto Sans JP',Meiryo,'Hiragino Kaku Gothic ProN',sans-serif !important;
}
#mpc-vtb-title{ font-size:14px !important; font-weight:700 !important; color:#111827 !important; }
#mpc-vtb-lbl{ font-size:11.5px !important; color:#6B7280 !important; }
#mpc-vbgpick{ width:28px !important; height:28px !important; border-radius:6px !important; border:1.5px solid #E5E7EB !important; cursor:pointer !important; padding:0 !important; }
#mpc-vtb-exit{
  margin-left:auto !important; display:flex !important; align-items:center !important; gap:6px !important;
  padding:7px 14px !important; background:#1E40AF !important; border:none !important;
  border-radius:8px !important; font-size:12.5px !important; font-weight:600 !important;
  color:#FFFFFF !important; cursor:pointer !important; font-family:inherit !important;
  transition:background .15s !important;
}
#mpc-vtb-exit:hover{ background:#1E3A8A !important; }
#mpc-vgrid{
  display:flex !important; flex-wrap:wrap !important;
  gap:16px !important; padding:20px !important; min-height:calc(100vh - 54px) !important;
}
.mpcv-card{
  background:#FFFFFF !important; border:1.5px solid #E8EAED !important;
  border-radius:12px !important; overflow:hidden !important;
  display:flex !important; flex-direction:column !important;
  min-width:200px !important; min-height:150px !important; position:relative !important;
  font-family:'Noto Sans JP',Meiryo,'Hiragino Kaku Gothic ProN',sans-serif !important;
}
.mpcv-card-hd{
  display:flex !important; align-items:center !important; gap:6px !important;
  padding:8px 12px !important; border-bottom:1px solid rgba(0,0,0,.06) !important;
  cursor:grab !important; flex-shrink:0 !important; background:inherit !important;
}
.mpcv-card-hd:active{ cursor:grabbing !important; }
.mpcv-card-title{
  flex:1 !important; font-size:13px !important; font-weight:600 !important;
  color:#111827 !important; overflow:hidden !important;
  text-overflow:ellipsis !important; white-space:nowrap !important;
}
.mpcv-card-edit{
  display:flex !important; align-items:center !important; justify-content:center !important;
  width:22px !important; height:22px !important; border-radius:5px !important;
  color:#9CA3AF !important; background:transparent !important; border:none !important;
  cursor:pointer !important; font-family:inherit !important;
  transition:background .12s, color .12s !important;
}
.mpcv-card-edit:hover{ background:#EFF6FF !important; color:#1E40AF !important; }
.mpcv-card-body{
  flex:1 !important; padding:10px 12px !important; font-size:12.5px !important;
  color:#6B7280 !important; line-height:1.65 !important;
  overflow:hidden !important; background:inherit !important;
}
.mpcv-card-body table{ border-collapse:collapse !important; width:100% !important; margin:4px 0 !important; font-size:11px !important; }
.mpcv-card-body td,.mpcv-card-body th{ border:1px solid #D1D5DB !important; padding:3px 6px !important; color:#374151 !important; background:#FFFFFF !important; }
.mpcv-card-body th{ background:#F5F6F8 !important; font-weight:600 !important; color:#111827 !important; }
.mpcv-resize{
  position:absolute !important; bottom:0 !important; right:0 !important;
  width:16px !important; height:16px !important; cursor:se-resize !important;
}
.mpcv-resize::after{
  content:'' !important; position:absolute !important;
  bottom:3px !important; right:3px !important; width:8px !important; height:8px !important;
  border-right:2px solid #9CA3AF !important; border-bottom:2px solid #9CA3AF !important;
}

/* ============================================================
   下部ドック（body直下）
   ============================================================ */
#mpc-dock{
  position:fixed !important; bottom:0 !important; left:0 !important; right:0 !important;
  z-index:99997 !important; background:#1E293B !important;
  border-top:1px solid #334155 !important;
  font-family:'Noto Sans JP',Meiryo,'Hiragino Kaku Gothic ProN',sans-serif !important;
  transition:transform .22s cubic-bezier(.4,0,.2,1) !important;
}
#mpc-dock.mpc-dk-closed{ transform:translateY(calc(100% - 36px)) !important; }
#mpc-dk-hd{
  display:flex !important; align-items:center !important; gap:8px !important;
  padding:0 14px !important; height:36px !important;
  cursor:pointer !important; user-select:none !important; background:#1E293B !important;
}
#mpc-dk-hd .mpc-dk-ttl{ font-size:12px !important; font-weight:700 !important; color:#94A3B8 !important; letter-spacing:.06em !important; text-transform:uppercase !important; }
#mpc-dk-hd .mpc-dk-cnt{ font-size:11px !important; color:#64748B !important; background:#0F172A !important; border-radius:10px !important; padding:1px 7px !important; }
#mpc-dk-tog{ margin-left:auto !important; font-size:10px !important; color:#64748B !important; background:transparent !important; border:none !important; cursor:pointer !important; font-family:inherit !important; }
#mpc-dk-list{ max-height:180px !important; overflow-y:auto !important; background:#1E293B !important; }
#mpc-dk-list::-webkit-scrollbar{ width:4px !important; }
#mpc-dk-list::-webkit-scrollbar-thumb{ background:#334155 !important; border-radius:4px !important; }
.mpc-dk-item{
  display:flex !important; align-items:center !important; gap:8px !important;
  padding:7px 14px !important; border-bottom:1px solid #0F172A !important;
  cursor:grab !important; background:#1E293B !important; transition:background .12s !important;
}
.mpc-dk-item:hover{ background:#263348 !important; }
.mpc-dk-item.mpc-dk-dragging{ opacity:.4 !important; }
.mpc-dk-dot{ width:8px !important; height:8px !important; border-radius:50% !important; flex-shrink:0 !important; border:1px solid rgba(255,255,255,.15) !important; }
.mpc-dk-star{ font-size:10px !important; color:#F59E0B !important; flex-shrink:0 !important; }
.mpc-dk-name{ flex:1 !important; font-size:12.5px !important; color:#CBD5E1 !important; overflow:hidden !important; text-overflow:ellipsis !important; white-space:nowrap !important; }
.mpc-dk-btn{
  display:flex !important; align-items:center !important; justify-content:center !important;
  width:22px !important; height:22px !important; border-radius:5px !important;
  color:#64748B !important; background:transparent !important; border:none !important;
  cursor:pointer !important; font-family:inherit !important;
  transition:background .12s, color .12s !important;
}
.mpc-dk-btn:hover{ background:#334155 !important; color:#93C5FD !important; }
.mpc-dk-btn.mpc-dk-edit:hover{ color:#6EE7B7 !important; }


