/* Shared shell for the Liancheng static-prototype pages. */
html,body{margin:0!important}
/* Kill page-local body grids / vertical centering so every phone sits in the same slot. */
body.prototype-shell-active{
  display:block!important;
  place-items:unset!important;
  align-items:unset!important;
  justify-content:unset!important;
  grid-template-columns:none!important;
  grid-template-rows:none!important;
  width:100%!important;
  min-height:100vh!important;
  height:auto!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
}
.prototype-shell-host{display:contents!important;padding:0!important;margin:0!important;min-height:0!important}
.prototype-review,.pa-review,.link-review{display:grid!important;position:relative!important;left:auto!important;top:auto!important;transform:none!important;width:100vw!important;max-width:none!important;height:100vh!important;max-height:100vh!important;box-sizing:border-box!important;grid-template-columns:minmax(0,1fr) 320px!important;grid-template-rows:1fr!important;align-items:stretch!important;justify-items:stretch!important;min-height:100vh!important;margin:0!important;padding:0!important;overflow:hidden!important}
.prototype-review-nested{position:relative!important;left:auto!important;transform:none!important;width:100vw!important}
/* One shared phone slot: top-centered, identical 390x844 chrome on every page. */
.prototype-canvas,.pa-canvas{display:grid!important;min-width:0!important;min-height:0!important;height:100%!important;place-items:start center!important;align-content:start!important;justify-content:center!important;padding:28px 18px 40px!important;box-sizing:border-box!important;overflow-y:auto!important;overflow-x:hidden!important}
.prototype-review>.prototype-canvas,.pa-review>.pa-canvas,.link-review>.prototype-canvas{grid-column:1!important;grid-row:1!important;width:auto!important;min-width:0!important}
.prototype-review>[data-notes-panel],.pa-review>[data-notes-panel],.link-review>[data-notes-panel]{grid-column:2!important;grid-row:1!important;width:320px!important;min-width:0!important;max-width:320px!important;box-sizing:border-box!important;align-self:stretch!important}
/* Only the phone frame itself — never nested widgets like .settings / .chat inside a page. */
.prototype-canvas>:is(.plaza,.link-phone,.lc-phone,.phone,.phone-container,.phone-link,.pa-phone,.publish-phone,.opp-page,.application-shell,.card-editor-page,.settings,.site,.chat,.report-page,.recommend-page,.profile-page,.tech-page,.search-page,[class$="-phone"],main,.publisher,.cover,.cover-page,.editor-page),
.pa-canvas>:is(.plaza,.link-phone,.lc-phone,.phone,.phone-container,.phone-link,.pa-phone,.publish-phone,.opp-page,.application-shell,.card-editor-page,.settings,.site,.chat,.report-page,.recommend-page,.profile-page,.tech-page,.search-page,[class$="-phone"],main,.publisher,.cover,.cover-page,.editor-page),
.prototype-phone-surface{
  width:390px!important;
  min-width:390px!important;
  max-width:390px!important;
  height:844px!important;
  min-height:844px!important;
  max-height:844px!important;
  margin:0!important;
  inset:auto!important;
  top:auto!important;
  right:auto!important;
  bottom:auto!important;
  left:auto!important;
  transform:none!important;
  position:relative!important;
  box-sizing:border-box!important;
  /* Use shadow ring instead of border so every frame stays exactly 390x844. */
  border:0!important;
  border-radius:28px!important;
  box-shadow:0 0 0 1px #dfe5ee,0 18px 44px rgb(42 67 106 / 14%)!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
  background-clip:padding-box!important;
}
/* Phones with a docked tab bar must not scroll the frame — only the inner content scrolls. */
.prototype-phone-surface:has(>.prototype-unified-bottom),
.prototype-phone-surface:has(>.plaza-nav),
.prototype-phone-surface:has(>.link-bottom),
.prototype-phone-surface:has(>.lc-bottom),
.prototype-phone-surface:has(>.profile-nav),
.prototype-phone-surface:has(>.reaction-bar),
.prototype-phone-surface:has(>.phone-scroll),
.prototype-phone-host:has(>.prototype-unified-bottom){
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
}
.prototype-phone-surface::-webkit-scrollbar,.prototype-canvas>:is(main,.publisher,.cover,.cover-page,.editor-page,.plaza,.link-phone,.lc-phone,.phone,.phone-container,[class$="-phone"])::-webkit-scrollbar{display:none!important}
.prototype-canvas>.lc-split-shell,
.prototype-canvas>#lianchengCommercialV2{
  width:390px!important;
  min-width:390px!important;
  max-width:390px!important;
  height:844px!important;
  min-height:844px!important;
  max-height:844px!important;
  margin:0!important;
  box-sizing:border-box!important;
  border:0!important;
  border-radius:28px!important;
  box-shadow:0 0 0 1px #dfe5ee,0 18px 44px rgb(42 67 106 / 14%)!important;
  overflow:hidden!important;
  justify-content:flex-start!important;
  align-items:stretch!important;
  gap:0!important;
}
.prototype-canvas>.lc-split-shell>.lc-phone,
.prototype-canvas>.lc-split-shell>.prototype-phone-surface,
.prototype-canvas>#lianchengCommercialV2>.lcv2-phone,
.prototype-canvas>#lianchengCommercialV2>.prototype-phone-surface{
  width:390px!important;
  min-width:390px!important;
  max-width:390px!important;
  height:844px!important;
  min-height:844px!important;
  max-height:844px!important;
  border:0!important;
  border-radius:28px!important;
  box-shadow:none!important;
}
/* Legacy outer canvases become transparent wrappers after the shared shell mounts. */
body.prototype-shell-active :is(.industry-canvas,.search-canvas){display:contents!important;padding:0!important;margin:0!important;min-height:0!important;width:auto!important;height:auto!important;max-width:none!important;max-height:none!important;border:0!important;box-shadow:none!important}

/* Transparent status overlay: color comes from the page underneath; always above sheets/modals. */
.prototype-phone-host,.prototype-phone-surface,.prototype-canvas>.lc-split-shell,.prototype-canvas>#lianchengCommercialV2{isolation:isolate}
.prototype-status-overlay.prototype-unified-status,
.prototype-unified-status.prototype-status-overlay{
  position:absolute!important;
  z-index:1100!important;
  top:0!important;
  right:0!important;
  bottom:auto!important;
  left:0!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  min-height:42px!important;
  height:42px!important;
  max-height:42px!important;
  margin:0!important;
  padding:13px 20px 0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#13233c!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1!important;
  pointer-events:none!important;
  overflow:visible!important;
}
/* Never paint the unified status bar on the annotation canvas itself. */
.prototype-canvas>.prototype-status-overlay,
.prototype-review>.prototype-status-overlay,
[data-annotation-canvas]>.prototype-status-overlay{
  display:none!important;
}
.prototype-status-spacer{
  display:block!important;
  flex:0 0 42px!important;
  align-self:stretch!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:42px!important;
  min-height:42px!important;
  max-height:42px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:transparent!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  opacity:0!important;
  pointer-events:none!important;
  overflow:hidden!important;
  visibility:hidden!important;
}
/* Legacy in-flow status classes keep transparent paint even before JS converts them. */
.prototype-phone-surface :is(.lc-status,.link-status,.plaza-status,[class*="status-bar"],.prototype-unified-status),
.prototype-phone-host :is(.lc-status,.link-status,.plaza-status,[class*="status-bar"],.prototype-unified-status){
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}
/* Profile page: status text sits on the hero header gradient plate. */
.prototype-phone-surface:has([data-view="mine"]),
.prototype-phone-host:has([data-view="mine"]){
  background:#f7f8fa!important;
}
.prototype-phone-surface:has([data-view="mine"]) .prototype-status-overlay,
.prototype-phone-host:has([data-view="mine"]) .prototype-status-overlay{
  color:#fff!important;
}

/* Figma 统一底栏：由 tabbar.css 控制，禁止被旧规则覆盖 */
.app-tabbar,.app-tabbar *{box-sizing:border-box}
.prototype-unified-bottom.app-tabbar,
nav.app-tabbar.prototype-unified-bottom{
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  height:70px!important;min-height:70px!important;padding:10px 39px 19px!important;gap:38px!important;
  border-top:1px solid #fff!important;background:rgb(255 255 255 / 80%)!important;
  backdrop-filter:blur(5px)!important;-webkit-backdrop-filter:blur(5px)!important
}
.prototype-unified-bottom.app-tabbar>a,
.prototype-unified-bottom.app-tabbar>button,
nav.app-tabbar.prototype-unified-bottom>a,
nav.app-tabbar.prototype-unified-bottom>button{
  flex:0 0 auto!important;width:27px!important;min-width:27px!important;min-height:0!important;
  place-items:center!important;gap:4px!important;color:#6c6c6c!important;background:transparent!important;
  font-size:10px!important;font-weight:400!important;line-height:10px!important
}
.prototype-unified-bottom.app-tabbar>a.is-active,
nav.app-tabbar.prototype-unified-bottom>a.is-active{color:#000!important;font-weight:400!important}
.prototype-unified-bottom.app-tabbar>.app-tabbar-publish,
nav.app-tabbar.prototype-unified-bottom>.app-tabbar-publish{
  display:inline-flex!important;flex:0 0 66px!important;width:66px!important;height:35px!important;
  min-height:35px!important;align-self:center!important;margin:0!important;border:0!important;
  border-radius:90px!important;color:#fff!important;background:#2962d4!important;
  box-shadow:0 4px 4px #bed4ff!important;font-size:0!important
}

/* Legacy fallback when tabbar.js is not present. */
.prototype-unified-bottom{position:absolute!important;z-index:20!important;right:0!important;bottom:0!important;left:0!important;display:flex!important;align-items:flex-end!important;justify-content:space-around!important;height:66px!important;min-height:66px!important;padding:8px 7px 10px!important;border-top:1px solid #e2e7ef!important;background:rgb(255 255 255 / 88%)!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important}
.prototype-unified-bottom>a,.prototype-unified-bottom>button,.prototype-unified-bottom>.lc-nav-item,.prototype-unified-bottom>.link-nav{position:relative!important;display:grid!important;flex:1 1 0!important;align-self:stretch!important;min-width:0!important;min-height:47px!important;place-items:center!important;gap:3px!important;padding:0!important;border:0!important;color:#8b99ab!important;background:transparent!important;font:inherit!important;font-size:10px!important;line-height:1.1!important;text-decoration:none!important;cursor:pointer!important;pointer-events:auto!important}
.prototype-unified-bottom>a>*:first-child,.prototype-unified-bottom>button>*:first-child{font-size:22px!important}
.prototype-unified-bottom>a.active,.prototype-unified-bottom>.active{color:#1769e8!important;font-weight:700!important}
.prototype-unified-bottom.plaza-nav>a.active .ic{display:block!important;width:22px!important;height:22px!important;margin:0!important;border-radius:0!important;color:#1769e8!important;background:transparent!important;font-size:22px!important}
.prototype-unified-bottom>.plaza-publish,.prototype-unified-bottom>.link-publish,.prototype-unified-bottom>.lc-nav-publish{display:grid!important;flex:0 0 58px!important;width:58px!important;height:58px!important;min-height:58px!important;align-self:flex-start!important;margin-top:-29px!important;border:4px solid #fff!important;border-radius:50%!important;color:#fff!important;background:#1769e8!important;box-shadow:0 8px 18px rgb(23 105 232 / 34%)!important;font-size:28px!important}
.prototype-unified-bottom a[href="profile.html"]{pointer-events:auto!important}
.prototype-unified-bottom .prototype-nav-badge,.prototype-unified-bottom .lc-nav-badge{position:absolute!important;z-index:2!important;top:1px!important;left:calc(50% + 7px)!important;right:auto!important;display:grid!important;min-width:16px!important;height:16px!important;place-items:center!important;padding:0 4px!important;border:2px solid #fff!important;border-radius:999px!important;color:#fff!important;background:#f04438!important;font-size:9px!important;font-style:normal!important;font-weight:800!important;line-height:12px!important;box-sizing:border-box!important}
.prototype-unified-bottom.prototype-messages-nav>.lc-nav-publish>svg{width:24px!important;height:24px!important}

/* Annotation cards are body-only and keep destructive actions out of the text flow. */
[data-export-annotations],[data-save-annotations]{display:none!important}
.proto-note-tools{grid-template-columns:1fr!important}
.proto-note-card{padding:11px 34px 11px 12px!important}
.proto-note-card input{display:none!important}
.proto-note-card textarea{display:block!important;min-height:18px!important;margin:0!important;padding:0!important;overflow:hidden!important;resize:none!important;line-height:1.5!important}
.proto-note-delete{position:absolute!important;z-index:2!important;top:-7px!important;right:-7px!important;display:grid!important;width:22px!important;height:22px!important;min-width:22px!important;margin:0!important;place-items:center!important;padding:0!important;border:2px solid #fff!important;border-radius:50%!important;color:#fff!important;background:#d54d3e!important;box-shadow:0 2px 7px rgb(114 38 29 / 24%)!important;font-size:0!important;line-height:1!important}
.proto-note-delete::before{content:'\00d7';font-size:16px!important;font-weight:800!important;line-height:16px!important}
.prototype-annotation-surface{position:relative!important}
.prototype-phone-scroll,
[data-phone-scroll]{position:relative!important}
/* Layout page shells stay absolute inside the phone frame. */
.lc-split-shell .lc-view[data-phone-scroll],
#lianchengBusinessSuite .lc-view[data-phone-scroll],
#lianchengCommercialV2 .lcv2-page[data-phone-scroll]{
  position:absolute!important;
  inset:0!important;
}
[data-phone-scroll]>.proto-marker-layer,
.prototype-phone-scroll>.proto-marker-layer{
  position:absolute!important;
  top:0!important;
  left:0!important;
  z-index:50!important;
  pointer-events:none!important;
}
.prototype-phone-surface:has(>.link-scroll),
.prototype-phone-surface:has(>[data-phone-scroll]){
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
}

[data-generic-annotations] .proto-notes{z-index:4;display:flex;min-height:100vh;flex-direction:column;border-left:1px solid #edc56a;color:#503b12;background:#fff7df}
[data-generic-annotations] .proto-notes-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:17px 14px 12px;border-bottom:1px solid #f1d899}
[data-generic-annotations] .proto-notes-head strong{display:block;font-size:15px}
[data-generic-annotations] .proto-notes-head span{color:#907138;font-size:11px}
[data-generic-annotations] .proto-add{padding:8px 10px;border:0;border-radius:8px;color:#fff;background:#165dff;font:700 12px inherit;cursor:pointer}
[data-generic-annotations] .proto-note-tools{display:grid;grid-template-columns:1fr;gap:8px;padding:10px 12px;border-bottom:1px solid #f1d899}
[data-generic-annotations] .proto-note-tools button{min-height:31px;padding:6px 8px;border:1px solid #e7c76f;border-radius:7px;color:#795d23;background:#fffaf0;font:11px inherit;cursor:pointer}
[data-generic-annotations] .proto-note-tools button:hover{background:#fff1c9}
[data-generic-annotations] .proto-note-list-wrap{position:relative;display:flex;flex:1;min-height:0;flex-direction:column}
[data-generic-annotations] .proto-note-list{min-height:0;flex:1;padding:12px 12px 22px;overflow-y:auto;scrollbar-gutter:stable}
[data-generic-annotations] .proto-note-more{position:absolute;z-index:2;left:0;right:0;bottom:0;display:flex;justify-content:center;align-items:flex-end;min-height:54px;padding:22px 12px 10px;border:0;background:linear-gradient(180deg,rgb(255 247 223 / 0%),#fff7df 58%);color:#795d23;font:650 12px/1 inherit;cursor:pointer}
[data-generic-annotations] .proto-note-more[hidden]{display:none!important}
[data-generic-annotations] .proto-note-more span{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border:1px solid #e7c76f;border-radius:999px;background:#fffaf0;box-shadow:0 4px 12px rgb(116 81 13 / 12%);pointer-events:none}
[data-generic-annotations] .proto-note-more:hover span{background:#fff1c9}
[data-generic-annotations] .proto-empty{margin:20px 4px;color:#9a7c46;font-size:12px;line-height:1.5}
[data-generic-annotations] .proto-note-card{position:relative;margin-bottom:10px;padding:11px 34px 11px 12px;border:1px solid #f0cf80;border-radius:10px;background:#fffdf7;box-shadow:0 2px 7px rgb(116 81 13 / 8%)}
[data-generic-annotations] .proto-note-number{display:grid;position:absolute;top:11px;left:-8px;width:20px;height:20px;place-items:center;border-radius:50%;color:#fff;background:#165dff;font-size:11px;font-weight:800}
[data-generic-annotations] .proto-note-card textarea{display:block;width:100%;min-height:22px;margin:0;padding:0;border:0;outline:0;resize:none;color:#3f3219;background:transparent;font:inherit;font-size:12px;line-height:1.5;overflow:hidden}
[data-generic-annotations] .proto-notes footer{padding:12px;border-top:1px solid #f1d899}
[data-generic-annotations] .proto-clear{width:100%;padding:9px;border:0;border-radius:8px;color:#8c392f;background:#ffebe7;font:12px inherit;cursor:pointer}
[data-generic-annotations] .proto-confirm{position:fixed;z-index:20;inset:0;display:grid;place-items:center;padding:20px;background:rgb(21 29 42 / 42%)}
[data-generic-annotations] .proto-confirm[hidden]{display:none!important}
[data-generic-annotations] .proto-confirm-card{width:min(100%,340px);padding:22px;border-radius:14px;background:#fff;box-shadow:0 16px 44px rgb(0 0 0 / 22%)}
[data-generic-annotations] .proto-confirm-card h2{margin:0;font-size:17px}
[data-generic-annotations] .proto-confirm-card p{margin:10px 0 18px;color:#64748b;font-size:13px;line-height:1.5}
[data-generic-annotations] .proto-confirm-card>div{display:flex;justify-content:end;gap:8px}
[data-generic-annotations] .proto-confirm-card button{padding:8px 11px;border:0;border-radius:8px;background:#edf1f6;cursor:pointer}
[data-generic-annotations] .proto-confirm-card .proto-danger{color:#fff;background:#d54d3e}
[data-generic-annotations] .proto-mobile-toggle{display:none}
[data-generic-annotations] .proto-lines{position:absolute;z-index:2;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
[data-generic-annotations] .proto-lines path{fill:none;stroke:#d39b23;stroke-width:2}
[data-generic-annotations] .proto-marker-layer{position:absolute;z-index:3;inset:0;pointer-events:none}
[data-generic-annotations] .proto-marker-layer-chrome{z-index:60!important}
[data-generic-annotations] .proto-select-overlay{
  position:absolute;
  z-index:200;
  inset:0;
  margin:0;
  padding:0;
  border:0;
  border-radius:inherit;
  background:transparent;
  cursor:crosshair;
}
[data-generic-annotations] .proto-marker{position:absolute;display:grid;width:25px;height:25px;place-items:center;transform:translate(-50%,-50%);border:2px solid #fff;border-radius:50%;color:#fff;background:#165dff;box-shadow:0 2px 7px rgb(14 55 138 / 34%);font-size:11px;font-weight:800;pointer-events:auto;cursor:pointer}
[data-generic-annotations] .proto-marker[data-active="true"]{box-shadow:0 0 0 4px rgb(22 93 255 / 20%)}
[data-generic-annotations][data-markers-hidden="true"] .proto-marker-layer,
[data-generic-annotations][data-markers-hidden="true"] .proto-marker-layer-chrome,
[data-generic-annotations][data-markers-hidden="true"] .proto-lines{display:none}
[data-generic-annotations] .proto-note-card[data-active="true"]{border-color:#165dff;box-shadow:0 0 0 2px rgb(22 93 255 / 16%)}
[data-generic-annotations] .proto-add[data-selecting="true"]{background:#0f489f}
[data-generic-annotations] .prototype-canvas[data-selecting="true"]{cursor:crosshair}
[data-generic-annotations] .prototype-canvas[data-selecting="true"] *{cursor:crosshair!important}

/* iframe / share embeds keep a fixed phone frame and hide the review chrome. */
body.embed-view.prototype-shell-active,
body.share-view.prototype-shell-active{
  width:auto!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  overflow:hidden!important;
}
body.embed-view :is(.prototype-review,.pa-review,.link-review),
body.share-view :is(.prototype-review,.pa-review,.link-review){
  display:block!important;
  width:390px!important;
  max-width:390px!important;
  height:844px!important;
  max-height:844px!important;
  min-height:0!important;
  grid-template-columns:none!important;
  overflow:hidden!important;
}
body.embed-view :is(.prototype-canvas,.pa-canvas),
body.share-view :is(.prototype-canvas,.pa-canvas){
  display:block!important;
  width:390px!important;
  height:844px!important;
  padding:0!important;
  place-items:stretch!important;
  overflow:hidden!important;
}
body.embed-view :is(.prototype-phone-surface,.phone-container),
body.share-view :is(.prototype-phone-surface,.phone-container){
  width:390px!important;
  min-width:390px!important;
  max-width:390px!important;
  height:844px!important;
  min-height:844px!important;
  max-height:844px!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
body.share-view :is(.prototype-review,.prototype-canvas,.prototype-phone-surface,.phone-container){
  height:726px!important;
  min-height:726px!important;
  max-height:726px!important;
}
body.embed-view :is([data-notes-panel],.proto-mobile-toggle,.proto-lines,.proto-confirm),
body.share-view :is([data-notes-panel],.proto-mobile-toggle,.proto-lines,.proto-confirm){
  display:none!important;
}

@media(max-width:860px){
  .prototype-review,.pa-review,.link-review{display:block!important}
  .prototype-canvas,.pa-canvas{display:block!important;padding:0!important;height:100vh!important}
  .prototype-canvas>:is(.plaza,.link-phone,.lc-phone,.phone,.phone-container,.phone-link,.pa-phone,.publish-phone,.opp-page,.application-shell,.card-editor-page,.settings,.site,.chat,.report-page,.recommend-page,.profile-page,.tech-page,.search-page,[class$="-phone"],main,.publisher,.cover,.cover-page,.editor-page),
  .pa-canvas>:is(.plaza,.link-phone,.lc-phone,.phone,.phone-container,.phone-link,.pa-phone,.publish-phone,.opp-page,.application-shell,.card-editor-page,.settings,.site,.chat,.report-page,.recommend-page,.profile-page,.tech-page,.search-page,[class$="-phone"],main,.publisher,.cover,.cover-page,.editor-page),
  .prototype-canvas>.lc-split-shell,
  .prototype-canvas>#lianchengCommercialV2,
  .prototype-phone-surface{
    width:100vw!important;
    min-width:0!important;
    max-width:none!important;
    min-height:100vh!important;
    height:100vh!important;
    max-height:none!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  .prototype-unified-bottom{height:64px!important;min-height:64px!important}
  [data-generic-annotations] .proto-notes{position:fixed;top:0;right:0;bottom:0;width:min(88vw,340px);min-height:0;transform:translateX(100%);box-shadow:-10px 0 30px rgb(0 0 0 / 16%);transition:transform .2s ease}
  [data-generic-annotations] .proto-notes[data-open="true"]{transform:translateX(0)}
  [data-generic-annotations] .proto-mobile-toggle{position:fixed;z-index:9;right:14px;bottom:16px;display:block;padding:10px 12px;border:0;border-radius:8px;color:#fff;background:#165dff;box-shadow:0 4px 14px rgb(22 93 255 / 30%);cursor:pointer}
  [data-generic-annotations] .proto-lines{display:none}
}

/* Cross-page flash toast (e.g. publish success after leaving unified-publish) */
.prototype-flash-toast{
  position:absolute;
  z-index:80;
  left:50%;
  bottom:120px;
  transform:translateX(-50%);
  display:none;
  max-width:calc(100% - 48px);
  padding:10px 18px;
  border-radius:10px;
  background:rgb(17 24 39 / 88%);
  color:#fff;
  font:13px "Microsoft YaHei","PingFang SC",sans-serif;
  white-space:nowrap;
  pointer-events:none;
  box-shadow:0 8px 20px rgb(0 0 0 / 18%);
}
.prototype-flash-toast[data-open="true"]{
  display:block;
  animation:prototype-flash-toast-in .18s ease;
}
@keyframes prototype-flash-toast-in{
  from{opacity:0;transform:translate(-50%,8px)}
  to{opacity:1;transform:translate(-50%,0)}
}
