跳转到内容
打开/关闭菜单
  • 451 条目
  • 802 文件
  • 22 用户
  • 9001 编辑
Blockland Wiki
打开/关闭外观设置菜单
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。

MediaWiki:KuranokaFX.css:修订间差异

MediaWiki界面页面
创建页面,内容为“→* KURANOKA / STORMBREAK v2 * Site-local CSS interface page: MediaWiki:KuranokaFX.css * Injected ONLY on Kuranoka, with an additional class guard. * Never changes article text, links, headings, images, or existing layout.:​ html.kk-stormbreak-enabled #kk-stormbreak-canvas { position: fixed !important; inset: 0 !important; display: block; width: 100vw; height: 100vh; pointer-events: none !important; z-index: 600; opacity: 0; transition:…”
 
无编辑摘要
第1行: 第1行:
/*
/*
  * KURANOKA / STORMBREAK v2
  * KURANOKA // STORMBREAK III — Citizen / Blockland Wiki
  * Site-local CSS interface page: MediaWiki:KuranokaFX.css
  * Only injected on /wiki/Kuranoka by the existing Citizen.js loader.
  * Injected ONLY on Kuranoka, with an additional class guard.
  * The class guard is a second safety boundary. It NEVER styles wiki content.
* Never changes article text, links, headings, images, or existing layout.
  */
  */
html.kk-stormbreak-enabled #kk-stormbreak-canvas {
html.kk-stormbreak-v3 #kk-sb3-sky,
html.kk-stormbreak-v3 #kk-sb3-glass,
html.kk-stormbreak-v3 #kk-sb3-choke {
   position: fixed !important;
   position: fixed !important;
   inset: 0 !important;
   inset: 0 !important;
   display: block;
   box-sizing: border-box;
   width: 100vw;
   width: 100vw !important;
   height: 100vh;
   height: 100vh !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
   pointer-events: none !important;
   pointer-events: none !important;
   z-index: 600;
   user-select: none !important;
   opacity: 0;
   touch-action: none !important;
  transition: opacity .75s ease;
   contain: strict;
   contain: strict;
  visibility: hidden;
}
}
html.kk-stormbreak-enabled.kk-stormbreak-active #kk-stormbreak-canvas { opacity: 1; }
html.kk-stormbreak-v3.kk-sb3-on #kk-sb3-sky,
 
html.kk-stormbreak-v3.kk-sb3-on #kk-sb3-glass,
/* The vignette draws on top of the skin; no filter is applied to its content. */
html.kk-stormbreak-v3.kk-sb3-on #kk-sb3-choke { visibility: visible; }
html.kk-stormbreak-enabled #kk-stormbreak-atmosphere {
/* Above Citizen's sidebar and pagechrome, but below overlays/dialogs where possible. */
  position: fixed !important;
html.kk-stormbreak-v3 #kk-sb3-sky { z-index: 410; opacity: 1; }
  inset: 0 !important;
html.kk-stormbreak-v3 #kk-sb3-glass { z-index: 411; opacity: 1; }
  z-index: 599;
html.kk-stormbreak-v3 #kk-sb3-choke {
   pointer-events: none !important;
   z-index: 409;
   opacity: 0;
   opacity: var(--kk-sb3-deep, 0);
  transition: opacity .24s linear;
   background:
   background:
     radial-gradient(ellipse 60% 68% at 50% 50%, transparent 19%, rgba(4,10,30,.34) 56%, rgba(3,5,21,.87) 86%, rgba(1,2,12,.98) 100%),
     radial-gradient(ellipse 52% 53% at 51% 49%, transparent 15%, rgba(3,8,24,.11) 45%, rgba(1,4,13,.85) 96%),
    radial-gradient(ellipse 75% 65% at 85% 5%, rgba(37,25,112,.30), transparent 74%),
     linear-gradient(168deg, rgba(1,6,20,.48), transparent 29%, transparent 70%, rgba(3,5,18,.57));
     conic-gradient(from 195deg at 50% 55%, rgba(79,6,64,.24), transparent 32%, rgba(11,62,137,.23) 60%, rgba(31,3,50,.23));
  transition: opacity 1s ease;
}
}
html.kk-stormbreak-enabled.kk-stormbreak-active #kk-stormbreak-atmosphere { opacity: var(--kk-atmosphere, .7); }
/*
 
* Central reading corridor stays bright/legible, even with maximum storm.
/* UI only: anchored outside article prose; never edits the article DOM content. */
* The mask affects FX CANVASES ONLY, never the article or Citizen CSS.
html.kk-stormbreak-enabled #kk-stormbreak-controls {
*/
   position: fixed;
html.kk-stormbreak-v3 #kk-sb3-glass,
  right: max(14px, env(safe-area-inset-right));
html.kk-stormbreak-v3 #kk-sb3-sky {
  bottom: max(14px, env(safe-area-inset-bottom));
   -webkit-mask-image: radial-gradient(ellipse 62% 67% at 48% 49%, rgba(0,0,0,.10) 4%, rgba(0,0,0,.30) 42%, rgba(0,0,0,.86) 81%, #000 100%);
   z-index: 602;
   mask-image: radial-gradient(ellipse 62% 67% at 48% 49%, rgba(0,0,0,.10) 4%, rgba(0,0,0,.30) 42%, rgba(0,0,0,.86) 81%, #000 100%);
  display: none;
  gap: 8px;
  align-items: center;
  font: 600 12px/1.25 system-ui, sans-serif;
  color: #ecf8ff;
  background: rgba(7,16,34,.91);
  border: 1px solid rgba(133,205,241,.56);
  border-radius: 7px;
  padding: 8px 10px;
  box-shadow: 0 10px 36px rgba(0,0,0,.32);
  backdrop-filter: blur(10px);
}
}
html.kk-stormbreak-enabled.kk-stormbreak-inchapter #kk-stormbreak-controls { display: flex; }
@media (max-width: 680px) {
html.kk-stormbreak-enabled #kk-stormbreak-controls button {
  html.kk-stormbreak-v3 #kk-sb3-glass,
  font: inherit;
  html.kk-stormbreak-v3 #kk-sb3-sky {
  color: inherit;
    -webkit-mask-image: radial-gradient(ellipse 78% 71% at 47% 49%, rgba(0,0,0,.06) 5%, rgba(0,0,0,.22) 53%, rgba(0,0,0,.92) 98%);
  background: #172b47;
    mask-image: radial-gradient(ellipse 78% 71% at 47% 49%, rgba(0,0,0,.06) 5%, rgba(0,0,0,.22) 53%, rgba(0,0,0,.92) 98%);
  padding: 7px 10px;
   }
  border: 1px solid #6789ab;
  border-radius: 5px;
   cursor: pointer;
}
}
html.kk-stormbreak-enabled #kk-stormbreak-controls button:focus-visible,
/* No UI, no floating controls, no font, text, image, infobox or layout overrides. */
html.kk-stormbreak-enabled #kk-stormbreak-controls input:focus-visible { outline: 2px solid #98e2ff; outline-offset: 3px; }
/* Hide old V2 surfaces if they remain from a partially refreshed page. */
html.kk-stormbreak-enabled #kk-stormbreak-controls input[type="range"] { width: 66px; accent-color: #6fe4ff; }
html.kk-stormbreak-v3 #kk-stormbreak-controls,
html.kk-stormbreak-enabled #kk-stormbreak-controls label { white-space: nowrap; }
html.kk-stormbreak-v3 #kk-stormbreak-canvas,
html.kk-stormbreak-enabled #kk-stormbreak-controls button[aria-pressed="true"] { background: #36577a; }
html.kk-stormbreak-v3 #kk-stormbreak-atmosphere { display: none !important; }
 
@media (prefers-reduced-motion: reduce) {
/* Position markers are zero-height; no typography, content, or layout alterations. */
   html.kk-stormbreak-v3 #kk-sb3-sky,
html.kk-stormbreak-enabled .kk-fx-marker { display: block; height: 0; margin: 0; padding: 0; overflow: hidden; }
   html.kk-stormbreak-v3 #kk-sb3-glass,
@media (max-width: 600px) {
   html.kk-stormbreak-v3 #kk-sb3-choke { display: none !important; }
   html.kk-stormbreak-enabled #kk-stormbreak-controls { right: 8px; bottom: max(8px, env(safe-area-inset-bottom)); padding: 6px; }
   html.kk-stormbreak-enabled #kk-stormbreak-controls input[type="range"] { width: 50px; }
   html.kk-stormbreak-enabled #kk-stormbreak-controls label { display: none; }
}
}
@media (prefers-reduced-motion: reduce) {
@media print {
   html.kk-stormbreak-enabled #kk-stormbreak-canvas,
  html.kk-stormbreak-v3 #kk-sb3-sky,
   html.kk-stormbreak-enabled #kk-stormbreak-atmosphere { transition: none; }
   html.kk-stormbreak-v3 #kk-sb3-glass,
   html.kk-stormbreak-v3 #kk-sb3-choke { display: none !important; }
}
}

2026年10月16日 (五) 12:59的版本

/*
 * KURANOKA // STORMBREAK III — Citizen / Blockland Wiki
 * Only injected on /wiki/Kuranoka by the existing Citizen.js loader.
 * The class guard is a second safety boundary. It NEVER styles wiki content.
 */
html.kk-stormbreak-v3 #kk-sb3-sky,
html.kk-stormbreak-v3 #kk-sb3-glass,
html.kk-stormbreak-v3 #kk-sb3-choke {
  position: fixed !important;
  inset: 0 !important;
  box-sizing: border-box;
  width: 100vw !important;
  height: 100vh !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  pointer-events: none !important;
  user-select: none !important;
  touch-action: none !important;
  contain: strict;
  visibility: hidden;
}
html.kk-stormbreak-v3.kk-sb3-on #kk-sb3-sky,
html.kk-stormbreak-v3.kk-sb3-on #kk-sb3-glass,
html.kk-stormbreak-v3.kk-sb3-on #kk-sb3-choke { visibility: visible; }
/* Above Citizen's sidebar and pagechrome, but below overlays/dialogs where possible. */
html.kk-stormbreak-v3 #kk-sb3-sky { z-index: 410; opacity: 1; }
html.kk-stormbreak-v3 #kk-sb3-glass { z-index: 411; opacity: 1; }
html.kk-stormbreak-v3 #kk-sb3-choke {
  z-index: 409;
  opacity: var(--kk-sb3-deep, 0);
  transition: opacity .24s linear;
  background:
    radial-gradient(ellipse 52% 53% at 51% 49%, transparent 15%, rgba(3,8,24,.11) 45%, rgba(1,4,13,.85) 96%),
    linear-gradient(168deg, rgba(1,6,20,.48), transparent 29%, transparent 70%, rgba(3,5,18,.57));
}
/*
 * Central reading corridor stays bright/legible, even with maximum storm.
 * The mask affects FX CANVASES ONLY, never the article or Citizen CSS.
 */
html.kk-stormbreak-v3 #kk-sb3-glass,
html.kk-stormbreak-v3 #kk-sb3-sky {
  -webkit-mask-image: radial-gradient(ellipse 62% 67% at 48% 49%, rgba(0,0,0,.10) 4%, rgba(0,0,0,.30) 42%, rgba(0,0,0,.86) 81%, #000 100%);
  mask-image: radial-gradient(ellipse 62% 67% at 48% 49%, rgba(0,0,0,.10) 4%, rgba(0,0,0,.30) 42%, rgba(0,0,0,.86) 81%, #000 100%);
}
@media (max-width: 680px) {
  html.kk-stormbreak-v3 #kk-sb3-glass,
  html.kk-stormbreak-v3 #kk-sb3-sky {
    -webkit-mask-image: radial-gradient(ellipse 78% 71% at 47% 49%, rgba(0,0,0,.06) 5%, rgba(0,0,0,.22) 53%, rgba(0,0,0,.92) 98%);
    mask-image: radial-gradient(ellipse 78% 71% at 47% 49%, rgba(0,0,0,.06) 5%, rgba(0,0,0,.22) 53%, rgba(0,0,0,.92) 98%);
  }
}
/* No UI, no floating controls, no font, text, image, infobox or layout overrides. */
/* Hide old V2 surfaces if they remain from a partially refreshed page. */
html.kk-stormbreak-v3 #kk-stormbreak-controls,
html.kk-stormbreak-v3 #kk-stormbreak-canvas,
html.kk-stormbreak-v3 #kk-stormbreak-atmosphere { display: none !important; }
@media (prefers-reduced-motion: reduce) {
  html.kk-stormbreak-v3 #kk-sb3-sky,
  html.kk-stormbreak-v3 #kk-sb3-glass,
  html.kk-stormbreak-v3 #kk-sb3-choke { display: none !important; }
}
@media print {
  html.kk-stormbreak-v3 #kk-sb3-sky,
  html.kk-stormbreak-v3 #kk-sb3-glass,
  html.kk-stormbreak-v3 #kk-sb3-choke { display: none !important; }
}