.wll-br {
--wll-ink: #14110e;
--wll-ink2: #211b16;
--wll-gold: #d4a937;
--wll-gold-l: #f4dc86;
--wll-gold-d: #8c6a1d;
--wll-washi: #f2e9d4;
--wll-washi2: #e5d8bb;
--wll-shu: #a4211f;
--wll-indigo: #1b2a4a;
--wll-text: #f2e9d4;
--wll-serif: "Hiragino Mincho ProN", "Yu Mincho", YuMincho, "Noto Serif JP", "Noto Serif CJK JP", "MS PMincho", serif;
position: relative;
box-sizing: border-box;
width: 100%;
max-width: 760px;
margin: 2.6em auto;
padding: 0;
overflow: hidden;
color: var(--wll-text);
font-family: var(--wll-serif);
font-size: 16px;
line-height: 1.6;
letter-spacing: 0.02em;
text-align: left;
background:
radial-gradient(120% 80% at 50% -10%, rgba(212, 169, 55, 0.16), transparent 60%),
repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.018) 0 2px, transparent 2px 5px),
linear-gradient(180deg, #1a1511 0%, var(--wll-ink) 100%);
border: 2px solid var(--wll-gold-d);
border-radius: 6px;
box-shadow: 0 0 0 3px var(--wll-ink), 0 0 0 4px var(--wll-gold), 0 14px 34px rgba(0, 0, 0, 0.35);
}
.wll-br *,
.wll-br *::before,
.wll-br *::after {
box-sizing: border-box;
} .wll-br.wll-br :where(p, ol, li, details, summary) {
margin: 0;
padding: 0;
border: 0;
background: none;
color: inherit;
font: inherit;
letter-spacing: inherit;
text-align: inherit;
list-style: none;
text-indent: 0;
text-shadow: none;
}
.wll-br.wll-br ol::before,
.wll-br.wll-br ol::after,
.wll-br.wll-br li::before,
.wll-br.wll-br li::after {
content: none;
}
.wll-br.wll-br li::marker {
content: none;
}
.wll-br b {
font-weight: 700;
} .wll-br::before {
content: "";
display: block;
height: 14px;
background:
linear-gradient(180deg, rgba(0, 0, 0, 0.25), transparent 70%),
repeating-linear-gradient(90deg, var(--wll-indigo) 0 22px, var(--wll-washi) 22px 44px);
border-bottom: 2px solid var(--wll-gold);
}
.wll-br .wll-br__curtain {
display: none;
}
.wll-br .wll-br__frame {
position: relative;
padding: 20px 18px 22px;
} .wll-br .wll-br__head {
text-align: center;
padding-bottom: 14px;
}
.wll-br .wll-br__kicker {
font-size: 13px;
color: var(--wll-gold-l);
letter-spacing: 0.12em;
}
.wll-br .wll-br__title {
margin: 4px 0 2px;
font-size: clamp(34px, 9.4vw, 52px);
font-weight: 900;
line-height: 1.15;
letter-spacing: 0.32em;
text-indent: 0.32em;
color: var(--wll-gold-l);
background: linear-gradient(180deg, #fff3c2 0%, var(--wll-gold) 55%, var(--wll-gold-d) 100%);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
text-shadow: none;
filter: drop-shadow(0 2px 0 rgba(0, 0, 0, 0.6));
}
.wll-br .wll-br__sub {
font-size: 13px;
color: var(--wll-washi2);
} .wll-br .wll-br__stagewrap {
position: relative;
}
.wll-br .wll-br__items {
display: block;
}
.wll-br .wll-br__item {
position: relative;
display: flex;
align-items: flex-start;
gap: 12px;
margin: 0 0 8px;
padding: 10px 12px 10px 10px;
overflow: hidden;
color: var(--wll-ink);
background: linear-gradient(180deg, #f6eed9, var(--wll-washi2));
border-left: 5px solid var(--wll-gold-d);
border-radius: 3px;
box-shadow: 0 2px 0 rgba(0, 0, 0, 0.45);
}
.wll-br .wll-br__stamp {
flex: 0 0 auto;
min-width: 3.6em;
padding: 3px 6px;
font-size: 12.5px;
font-weight: 800;
line-height: 1.3;
text-align: center;
letter-spacing: 0.06em;
border-radius: 3px;
color: var(--wll-ink);
background: linear-gradient(180deg, var(--wll-gold-l), var(--wll-gold));
box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.35);
transform: translateY(1px);
}
.wll-br .wll-br__body {
display: block;
min-width: 0;
}
.wll-br .wll-br__label {
display: block;
font-size: 15px;
font-weight: 700;
line-height: 1.5;
overflow-wrap: anywhere;
}
.wll-br .wll-br__note {
display: block;
margin-top: 2px;
font-size: 12.5px;
line-height: 1.5;
color: #4a3f31;
overflow-wrap: anywhere;
} .wll-br .wll-br__item--unk,
.wll-br .wll-br__item--todo,
.wll-br .wll-br__item--plan {
border-left-color: #7a7468;
background: linear-gradient(180deg, #e8e3d6, #d8d1c0);
}
.wll-br .wll-br__item--unk .wll-br__stamp,
.wll-br .wll-br__item--todo .wll-br__stamp,
.wll-br .wll-br__item--plan .wll-br__stamp {
color: #f2ece0;
background: #5f594e;
}
.wll-br .wll-br__item--hold,
.wll-br .wll-br__item--open {
border-left-color: #b8741a;
}
.wll-br .wll-br__item--hold .wll-br__stamp,
.wll-br .wll-br__item--open .wll-br__stamp {
color: #fff8ea;
background: #964f12;
}
.wll-br .wll-br__item--err {
border-left-color: var(--wll-shu);
}
.wll-br .wll-br__item--err .wll-br__stamp {
color: #fff4ee;
background: var(--wll-shu);
}
.wll-br .wll-br__item--ok {
border-left-color: var(--wll-gold-d);
} .wll-br .wll-br__burst {
position: absolute;
right: 8px;
top: 2px;
display: none;
font-size: 17px;
font-weight: 900;
font-style: italic;
letter-spacing: 0.04em;
color: var(--wll-shu);
text-shadow: 0 0 0 #fff, 1px 1px 0 #fff, -1px -1px 0 #fff, 1px -1px 0 #fff, -1px 1px 0 #fff;
pointer-events: none;
} .wll-br .wll-br__stage {
display: none;
} .wll-br .wll-br__gaugebox {
margin-top: 16px;
padding-top: 14px;
border-top: 1px solid rgba(212, 169, 55, 0.45);
text-align: center;
}
.wll-br .wll-br__gauge-label {
font-size: 14px;
color: var(--wll-gold-l);
letter-spacing: 0.1em;
}
.wll-br .wll-br__gauge {
position: relative;
height: 28px;
margin: 8px 2px 0;
overflow: hidden;
background: #0b0907;
border: 2px solid var(--wll-gold-d);
border-radius: 4px;
box-shadow: inset 0 3px 8px rgba(0, 0, 0, 0.8);
}
.wll-br .wll-br__bar {
position: absolute;
inset: 0 auto 0 0;
width: var(--wll-pct, 0%);
background: linear-gradient(180deg, #fff0b0 0%, var(--wll-gold) 45%, var(--wll-gold-d) 100%);
box-shadow: 0 0 14px rgba(244, 220, 134, 0.55);
}
.wll-br .wll-br__bar::after {
content: "";
position: absolute;
right: 0;
top: 0;
bottom: 0;
width: 6px;
background: rgba(255, 255, 255, 0.75);
opacity: 0;
}
.wll-br .wll-br__doing {
position: absolute;
top: 0;
bottom: 0;
left: var(--wll-doing-left, 0%);
width: var(--wll-doing-w, 0%);
background: repeating-linear-gradient(135deg, rgba(212, 169, 55, 0.55) 0 6px, rgba(212, 169, 55, 0.15) 6px 12px);
}
.wll-br .wll-br__cells {
position: absolute;
inset: 0;
background: repeating-linear-gradient(90deg, transparent 0 calc(8.3333% - 2px), rgba(10, 8, 6, 0.9) calc(8.3333% - 2px) 8.3333%);
pointer-events: none;
}
.wll-br .wll-br__result {
position: relative;
display: block;
margin-top: 10px;
line-height: 1;
text-align: center;
}
.wll-br .wll-br__pct {
font-size: clamp(64px, 19vw, 112px);
font-weight: 900;
letter-spacing: -0.02em;
color: var(--wll-gold-l);
background: linear-gradient(180deg, #fff6cf 0%, var(--wll-gold) 60%, var(--wll-gold-d) 100%);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
filter: drop-shadow(0 3px 0 rgba(0, 0, 0, 0.65));
font-variant-numeric: tabular-nums;
}
.wll-br .wll-br__unit {
margin-left: 4px;
font-size: clamp(26px, 8vw, 44px);
font-weight: 900;
color: var(--wll-gold);
}
.wll-br .wll-br__don {
position: absolute;
left: 50%;
top: -6px;
display: none;
transform: translateX(-50%);
font-size: clamp(24px, 7vw, 36px);
font-weight: 900;
font-style: italic;
color: #fff4d2;
-webkit-text-stroke: 2px var(--wll-shu);
paint-order: stroke fill;
white-space: nowrap;
pointer-events: none;
}
.wll-br .wll-br__frac {
margin-top: 8px;
font-size: 15px;
color: var(--wll-washi);
}
.wll-br .wll-br__frac.wll-br__zero {
margin: 8px auto 0;
max-width: 30em;
font-size: 13px;
line-height: 1.7;
color: var(--wll-gold-l);
} .wll-br .wll-br__ms {
margin-top: 14px;
font-size: 13.5px;
background: rgba(242, 233, 212, 0.07);
border: 1px solid rgba(212, 169, 55, 0.4);
border-radius: 4px;
}
.wll-br .wll-br__ms summary {
display: block;
padding: 9px 12px;
color: var(--wll-gold-l);
cursor: pointer;
list-style: none;
}
.wll-br .wll-br__ms summary::-webkit-details-marker {
display: none;
}
.wll-br .wll-br__ms summary::after {
content: "＋";
float: right;
}
.wll-br .wll-br__ms[open] summary::after {
content: "－";
}
.wll-br .wll-br__mslist {
padding: 2px 12px 10px;
}
.wll-br .wll-br__msitem {
padding: 4px 0;
border-top: 1px dashed rgba(212, 169, 55, 0.25);
line-height: 1.5;
}
.wll-br .wll-br__msitem b {
display: inline-block;
min-width: 4.2em;
margin-right: 4px;
padding: 0 6px;
font-size: 11.5px;
text-align: center;
border-radius: 2px;
color: var(--wll-ink);
background: var(--wll-gold);
}
.wll-br .wll-br__msitem--doing b {
color: var(--wll-gold-l);
background: transparent;
box-shadow: inset 0 0 0 1px var(--wll-gold);
}
.wll-br .wll-br__msitem--todo {
color: #bdb4a0;
}
.wll-br .wll-br__msitem--todo b {
color: #d9d0bb;
background: #4b453b;
}
.wll-br .wll-br__caveat {
margin-top: 10px;
font-size: 12.5px;
line-height: 1.65;
color: #cfc5ad;
} .wll-br .wll-br__now {
margin-top: 14px;
padding: 10px 12px;
text-align: center;
background: rgba(27, 42, 74, 0.55);
border: 1px solid rgba(244, 220, 134, 0.45);
border-radius: 4px;
}
.wll-br .wll-br__now-head {
font-size: 12.5px;
color: var(--wll-gold-l);
letter-spacing: 0.08em;
}
.wll-br .wll-br__now-main {
margin-top: 2px;
font-size: 15px;
}
.wll-br .wll-br__now-main b {
font-size: 22px;
color: var(--wll-gold-l);
}
.wll-br .wll-br__now-asof {
margin-top: 2px;
font-size: 11.5px;
line-height: 1.5;
color: #b9b09b;
} .wll-br .wll-br__next {
margin-top: 18px;
text-align: center;
}
.wll-br .wll-br__next-head {
display: flex;
align-items: center;
gap: 10px;
font-size: 22px;
font-weight: 800;
letter-spacing: 0.16em;
color: var(--wll-gold-l);
}
.wll-br .wll-br__next-head::before,
.wll-br .wll-br__next-head::after {
content: "";
flex: 1 1 0;
height: 2px;
background: linear-gradient(90deg, transparent, var(--wll-gold));
}
.wll-br .wll-br__next-head::after {
background: linear-gradient(270deg, transparent, var(--wll-gold));
}
.wll-br .wll-br__next-head span {
flex: 0 0 auto;
}
.wll-br .wll-br__teaser {
margin-top: 8px;
font-size: 14.5px;
color: var(--wll-washi);
} .wll-br .wll-br__controls {
display: flex;
flex-wrap: wrap;
gap: 10px;
justify-content: center;
margin-top: 16px;
}
.wll-br .wll-br__controls[hidden] {
display: none;
}
.wll-br .wll-br__btn {
appearance: none;
-webkit-appearance: none;
min-height: 44px;
margin: 0;
padding: 8px 18px;
font: inherit;
font-size: 14px;
font-weight: 700;
line-height: 1.2;
letter-spacing: 0.06em;
color: var(--wll-washi);
background: transparent;
border: 1px solid var(--wll-gold);
border-radius: 999px;
box-shadow: none;
text-shadow: none;
text-transform: none;
cursor: pointer;
}
.wll-br .wll-br__btn--main {
color: var(--wll-ink);
background: linear-gradient(180deg, var(--wll-gold-l), var(--wll-gold));
}
.wll-br .wll-br__btn[aria-pressed="true"] {
color: var(--wll-ink);
background: var(--wll-washi);
}
.wll-br .wll-br__btn:focus-visible {
outline: 3px solid #fff;
outline-offset: 2px;
} .wll-br.is-armed .wll-br__item {
opacity: 0;
transform: translateX(-26px);
}
.wll-br.is-armed .wll-br__item.is-in {
opacity: 1;
transform: none;
transition: opacity 0.28s ease-out, transform 0.38s cubic-bezier(0.2, 0.9, 0.25, 1.05);
}
.wll-br.is-armed .wll-br__stamp {
transform: translateY(1px) scale(1);
}
.wll-br.is-armed .wll-br__item:not(.is-stamped) .wll-br__stamp {
opacity: 0;
transform: scale(1.9);
}
.wll-br.is-armed .wll-br__item.is-stamped .wll-br__stamp {
animation: wll-br-stamp 0.34s cubic-bezier(0.2, 0.9, 0.3, 1.2) both;
} .wll-br.is-armed .wll-br__item--ok::after {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(105deg, transparent 38%, rgba(255, 255, 255, 0.85) 50%, transparent 62%);
transform: translateX(-130%);
pointer-events: none;
}
.wll-br.is-armed .wll-br__item--ok.is-stamped::after {
animation: wll-br-slash 0.55s ease-out both;
}
.wll-br.is-armed .wll-br__item.is-stamped .wll-br__burst {
display: block;
animation: wll-br-burst 0.95s ease-out both;
} .wll-br.is-armed .wll-br__stage {
position: absolute;
inset: 0;
z-index: 2;
display: flex;
align-items: center;
justify-content: center;
overflow: hidden;
background: rgba(12, 10, 8, 0.86);
border-radius: 4px;
opacity: 0;
visibility: hidden;
pointer-events: none;
transition: opacity 0.3s ease;
}
.wll-br.is-armed.is-roll .wll-br__stage {
opacity: 1;
visibility: visible;
}
.wll-br .wll-br__roll {
position: relative;
z-index: 1;
font-size: clamp(26px, 8vw, 44px);
font-weight: 900;
letter-spacing: 0.14em;
color: var(--wll-gold-l);
text-shadow: 0 2px 0 #000, 0 0 18px rgba(212, 169, 55, 0.6);
}
.wll-br.is-roll .wll-br__roll {
animation: wll-br-roll 0.33s ease-in-out infinite alternate;
}
.wll-br .wll-br__ring {
position: absolute;
left: 50%;
top: 50%;
width: 90px;
height: 90px;
margin: -45px 0 0 -45px;
border: 2px solid rgba(212, 169, 55, 0.7);
border-radius: 50%;
opacity: 0;
}
.wll-br.is-roll .wll-br__ring {
animation: wll-br-ring 1.1s ease-out infinite;
}
.wll-br.is-roll .wll-br__ring--2 {
animation-delay: 0.55s;
} .wll-br.is-armed .wll-br__bar {
width: 0;
}
.wll-br.is-armed.is-gauge .wll-br__bar,
.wll-br.is-armed.is-don .wll-br__bar,
.wll-br.is-armed.is-next .wll-br__bar,
.wll-br.is-armed.is-done .wll-br__bar {
width: var(--wll-pct, 0%);
transition: width 1.05s cubic-bezier(0.18, 0.95, 0.25, 1.04);
}
.wll-br.is-armed.is-gauge .wll-br__bar::after {
animation: wll-br-edge 1.1s ease-out both;
}
.wll-br.is-armed .wll-br__doing {
opacity: 0;
}
.wll-br.is-armed.is-don .wll-br__doing,
.wll-br.is-armed.is-next .wll-br__doing,
.wll-br.is-armed.is-done .wll-br__doing {
opacity: 1;
transition: opacity 0.4s ease;
} .wll-br.is-armed .wll-br__result,
.wll-br.is-armed .wll-br__frac {
opacity: 0;
}
.wll-br.is-armed.is-don .wll-br__result,
.wll-br.is-armed.is-next .wll-br__result,
.wll-br.is-armed.is-done .wll-br__result,
.wll-br.is-armed.is-gauge .wll-br__result {
opacity: 1;
}
.wll-br.is-armed.is-don .wll-br__frac,
.wll-br.is-armed.is-next .wll-br__frac,
.wll-br.is-armed.is-done .wll-br__frac {
opacity: 1;
transition: opacity 0.4s ease 0.15s;
}
.wll-br.is-armed.is-don .wll-br__pct {
animation: wll-br-don 0.55s cubic-bezier(0.2, 1.2, 0.3, 1) both;
}
.wll-br.is-armed.is-don .wll-br__don {
display: block;
animation: wll-br-donmark 1.1s ease-out both;
} .wll-br.is-armed .wll-br__next,
.wll-br.is-armed .wll-br__now {
opacity: 0;
transform: translateY(8px);
}
.wll-br.is-armed.is-next .wll-br__next,
.wll-br.is-armed.is-next .wll-br__now,
.wll-br.is-armed.is-done .wll-br__next,
.wll-br.is-armed.is-done .wll-br__now {
opacity: 1;
transform: none;
transition: opacity 0.6s ease, transform 0.6s ease;
} .wll-br.is-armed .wll-br__curtain {
position: absolute;
inset: 14px 0 0 0;
z-index: 3;
display: block;
pointer-events: none;
}
.wll-br .wll-br__curtain i {
position: absolute;
top: 0;
bottom: 0;
width: 50%;
background:
repeating-linear-gradient(90deg, var(--wll-indigo) 0 26px, #e9dfc6 26px 52px);
box-shadow: inset 0 -10px 0 var(--wll-gold-d);
transition: transform 0.7s cubic-bezier(0.6, 0, 0.2, 1);
}
.wll-br .wll-br__curtain-l {
left: 0;
border-right: 3px solid var(--wll-gold);
}
.wll-br .wll-br__curtain-r {
right: 0;
border-left: 3px solid var(--wll-gold);
}
.wll-br.is-armed .wll-br__curtain::after {
content: "戦果発表を待て";
position: absolute;
left: 50%;
top: 50%;
z-index: 1;
padding: 8px 18px;
font-size: 17px;
font-weight: 800;
letter-spacing: 0.2em;
text-indent: 0.2em;
white-space: nowrap;
color: var(--wll-gold-l);
background: rgba(12, 10, 8, 0.88);
border: 1px solid var(--wll-gold);
transform: translate(-50%, -50%);
transition: opacity 0.25s ease;
}
.wll-br.is-armed.is-open .wll-br__curtain::after {
opacity: 0;
}
.wll-br.is-armed.is-open .wll-br__curtain-l {
transform: translateX(-102%);
}
.wll-br.is-armed.is-open .wll-br__curtain-r {
transform: translateX(102%);
}
.wll-br.is-armed.is-done .wll-br__curtain,
.wll-br.is-armed.is-opened .wll-br__curtain {
display: none;
}
@keyframes wll-br-stamp {
0% {
opacity: 0;
transform: translateY(1px) scale(1.9);
}
60% {
opacity: 1;
transform: translateY(1px) scale(0.92);
}
100% {
opacity: 1;
transform: translateY(1px) scale(1);
}
}
@keyframes wll-br-slash {
0% {
transform: translateX(-130%);
}
100% {
transform: translateX(130%);
}
}
@keyframes wll-br-burst {
0% {
opacity: 0;
transform: scale(0.5) rotate(-6deg);
}
25% {
opacity: 1;
transform: scale(1.18) rotate(-4deg);
}
70% {
opacity: 1;
transform: scale(1) rotate(-4deg);
}
100% {
opacity: 0;
transform: scale(1) rotate(-4deg);
}
}
@keyframes wll-br-roll {
from {
transform: scale(0.985);
}
to {
transform: scale(1.02);
}
}
@keyframes wll-br-ring {
0% {
opacity: 0.7;
transform: scale(0.4);
}
100% {
opacity: 0;
transform: scale(3.6);
}
}
@keyframes wll-br-edge {
0% {
opacity: 0.9;
}
100% {
opacity: 0;
}
}
@keyframes wll-br-don {
0% {
transform: scale(1.35);
opacity: 0.2;
}
100% {
transform: scale(1);
opacity: 1;
}
}
@keyframes wll-br-donmark {
0% {
opacity: 0;
transform: translateX(-50%) scale(2.2);
}
22% {
opacity: 1;
transform: translateX(-50%) scale(1);
}
75% {
opacity: 1;
transform: translateX(-50%) scale(1);
}
100% {
opacity: 0;
transform: translateX(-50%) scale(1);
}
} @media (prefers-reduced-motion: reduce) {
.wll-br *,
.wll-br *::before,
.wll-br *::after {
animation: none !important;
transition: none !important;
}
}
@media (max-width: 480px) {
.wll-br .wll-br__frame {
padding: 16px 12px 18px;
}
.wll-br .wll-br__item {
gap: 9px;
}
.wll-br .wll-br__label {
font-size: 14.5px;
}
.wll-br .wll-br__next-head {
font-size: 19px;
}
}:root {
--wlab-text: var(--wp--preset--color--text, #1f2328);
--wlab-bg: var(--wp--preset--color--background, #fff);
--wlab-link: var(--wp--preset--color--link, #0a58ca);
--wlab-accent: var(--wp--preset--color--accent, #9a3412);
--wlab-subtle: var(--wp--preset--color--subtle, #f3f4f6);
--wlab-muted: #57606a;
--wlab-border: #d0d7de;
--wlab-focus: #0a58ca;
--wlab-gutter: 16px;
--wlab-content: 720px;
--wlab-wide: 960px;
--wlab-radius: 6px;
}
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body {
margin: 0;
color: var(--wlab-text);
background: var(--wlab-bg);
font-family: var(--wp--preset--font-family--system, system-ui, sans-serif);
font-size: 1rem;
line-height: 1.8;
overflow-wrap: anywhere;
word-break: normal;
line-break: strict;
}
img, video, iframe, svg { max-width: 100%; height: auto; }
img { vertical-align: middle; }
a { color: var(--wlab-link); text-underline-offset: .15em; }
a:hover { text-decoration-thickness: 2px; }
:focus-visible {
outline: 3px solid var(--wlab-focus);
outline-offset: 2px;
}
h1, h2, h3, h4, h5, h6 { line-height: 1.4; margin: 1.6em 0 .6em; }
h1 { font-size: 1.5rem; }
h2 { font-size: 1.3rem; }
h3 { font-size: 1.125rem; }
h4, h5, h6 { font-size: 1rem; }
p, ul, ol, dl, figure, blockquote, table, pre { margin: 0 0 1.2em; } .screen-reader-text {
position: absolute !important;
width: 1px; height: 1px;
margin: -1px; padding: 0;
overflow: hidden;
clip: rect(0 0 0 0);
clip-path: inset(50%);
white-space: nowrap;
border: 0;
}
.skip-link {
position: absolute;
top: -100px; left: 8px;
z-index: 1000;
padding: 8px 16px;
background: var(--wlab-text);
color: #fff;
border-radius: var(--wlab-radius);
}
.skip-link:focus { top: 8px; }
.container {
width: 100%;
max-width: calc(var(--wlab-wide) + var(--wlab-gutter) * 2);
margin: 0 auto;
padding: 0 var(--wlab-gutter);
}
.container-narrow { max-width: calc(var(--wlab-content) + var(--wlab-gutter) * 2); } .site-header { position: relative; border-bottom: 1px solid var(--wlab-border); background: var(--wlab-bg); }
.header-inner {
display: flex;
flex-wrap: nowrap;
align-items: center;
justify-content: space-between;
gap: 8px 16px;
min-height: 56px;
padding-top: 8px;
padding-bottom: 8px;
}
.site-title { flex: 1 1 auto; min-width: 0; margin: 0; font-size: 1.125rem; font-weight: 700; line-height: 1.4; }
.site-title a { color: var(--wlab-text); text-decoration: none; }
.site-description { margin: 0 auto; padding-bottom: 8px; color: var(--wlab-muted); font-size: .875rem; } .nav-mobile { position: static; flex: 0 0 auto; }
.nav-toggle {
display: inline-flex;
align-items: center;
gap: 8px;
min-height: 44px;
padding: 0 12px;
border: 1px solid var(--wlab-border);
border-radius: var(--wlab-radius);
cursor: pointer;
list-style: none;
font-size: .875rem;
user-select: none;
white-space: nowrap;
}
.nav-toggle::-webkit-details-marker { display: none; }
.nav-toggle-icon,
.nav-toggle-icon::before,
.nav-toggle-icon::after {
display: block;
width: 16px; height: 2px;
background: currentColor;
content: "";
}
.nav-toggle-icon { position: relative; }
.nav-toggle-icon::before { position: absolute; top: -5px; }
.nav-toggle-icon::after { position: absolute; top: 5px; }
.nav-mobile[open] .nav-toggle-icon { background: transparent; }
.nav-mobile[open] .nav-toggle-icon::before { top: 0; transform: rotate(45deg); }
.nav-mobile[open] .nav-toggle-icon::after { top: 0; transform: rotate(-45deg); }
.nav-panel {
position: absolute;
left: 0; right: 0;
z-index: 100;
margin-top: 8px;
padding: 8px var(--wlab-gutter) 16px;
background: var(--wlab-bg);
border-bottom: 1px solid var(--wlab-border);
box-shadow: 0 8px 16px rgba(0, 0, 0, .08);
}
.nav-panel .menu { margin: 0 0 12px; padding: 0; list-style: none; }
.nav-panel .menu a {
display: block;
padding: 10px 0;
border-bottom: 1px solid var(--wlab-subtle);
color: var(--wlab-text);
text-decoration: none;
}
.nav-panel .sub-menu { margin: 0; padding-left: 1em; list-style: none; }
.nav-desktop { display: none; }
@media (min-width: 768px) {
.nav-mobile { display: none; }
.nav-desktop { display: block; }
.nav-desktop .menu { display: flex; flex-wrap: wrap; gap: 4px 20px; margin: 0; padding: 0; list-style: none; }
.nav-desktop .menu > li { position: relative; }
.nav-desktop .menu a { display: inline-block; padding: 8px 0; color: var(--wlab-text); text-decoration: none; font-size: .9375rem; }
.nav-desktop .menu a:hover,
.nav-desktop .current-menu-item > a { color: var(--wlab-link); text-decoration: underline; } .nav-desktop .sub-menu {
position: absolute;
top: 100%; left: -12px;
z-index: 100;
min-width: 200px;
margin: 0; padding: 8px 12px;
list-style: none;
background: var(--wlab-bg);
border: 1px solid var(--wlab-border);
border-radius: var(--wlab-radius);
box-shadow: 0 8px 16px rgba(0, 0, 0, .08);
visibility: hidden;
opacity: 0;
}
.nav-desktop li:hover > .sub-menu,
.nav-desktop li:focus-within > .sub-menu { visibility: visible; opacity: 1; }
} .search-form { display: flex; gap: 8px; margin: 0; }
.search-form label { flex: 1; min-width: 0; }
.search-field,
.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form input[type="url"],
.comment-form textarea {
width: 100%;
min-height: 44px;
padding: 8px 12px;
border: 1px solid #8c959f;
border-radius: var(--wlab-radius);
background: #fff;
color: var(--wlab-text);
font: inherit;
}
.search-submit,
.comment-form .submit {
min-height: 44px;
padding: 0 16px;
border: 0;
border-radius: var(--wlab-radius);
background: var(--wlab-text);
color: #fff;
font: inherit;
cursor: pointer;
} .site-main { display: block; padding: 16px 0 48px; }
.site-main:focus { outline: none; }
.breadcrumb { margin: 0 0 16px; font-size: .8125rem; color: var(--wlab-muted); }
.breadcrumb ol { display: flex; flex-wrap: wrap; margin: 0; padding: 0; list-style: none; }
.breadcrumb li:not(:last-child)::after { content: "›"; margin: 0 .5em; color: var(--wlab-muted); }
.breadcrumb a { color: var(--wlab-muted); }
.section-title {
margin: 32px 0 16px;
padding-bottom: 8px;
border-bottom: 2px solid var(--wlab-text);
font-size: 1.125rem;
}
.home-section:first-child .section-title { margin-top: 8px; }
.archive-header { margin-bottom: 24px; }
.archive-title { margin: 0 0 8px; }
.archive-description { color: var(--wlab-muted); }
.archive-description > :last-child { margin-bottom: 0; } .card-list { display: grid; gap: 16px; }
.card {
display: flex;
flex-direction: column;
overflow: hidden;
border: 1px solid var(--wlab-border);
border-radius: var(--wlab-radius);
background: var(--wlab-bg);
}
.card-thumb { aspect-ratio: 16 / 9; overflow: hidden; background: var(--wlab-subtle); }
.card-thumb img { width: 100%; height: 100%; object-fit: cover; }
.card-body { padding: 12px 16px 16px; }
.card-title { margin: 0 0 4px; font-size: 1.0625rem; line-height: 1.5; }
.card-title a { color: var(--wlab-text); text-decoration: none; }
.card-title a:hover { color: var(--wlab-link); text-decoration: underline; }
.card-excerpt { color: var(--wlab-muted); font-size: .875rem; }
.card-excerpt p { margin: 0; }
.entry-meta { margin: 0 0 8px; color: var(--wlab-muted); font-size: .8125rem; }
.updated-on { margin-left: .5em; }
.cat-label {
display: inline-block;
margin-left: .5em;
padding: 0 8px;
border: 1px solid var(--wlab-accent);
border-radius: 999px;
color: var(--wlab-accent);
font-size: .75rem;
line-height: 1.8;
text-decoration: none;
}
@media (min-width: 768px) {
.card-list { grid-template-columns: repeat(2, 1fr); gap: 24px; }
}
.cat-list { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.cat-list a {
display: inline-flex;
align-items: center;
gap: 6px;
min-height: 44px;
padding: 0 14px;
border: 1px solid var(--wlab-border);
border-radius: 999px;
color: var(--wlab-text);
text-decoration: none;
}
.cat-count { color: var(--wlab-muted); font-size: .75rem; } .entry-header { margin-bottom: 16px; }
.entry-title { margin: 0 0 8px; font-size: 1.5rem; }
.entry-thumb { margin: 0 0 24px; }
.entry-thumb img { width: 100%; border-radius: var(--wlab-radius); }
.entry-content > * { max-width: var(--wlab-content); }
.entry-content h2 { padding: 8px 12px; border-left: 4px solid var(--wlab-accent); background: var(--wlab-subtle); font-size: 1.25rem; }
.entry-content h3 { padding-bottom: 4px; border-bottom: 1px solid var(--wlab-border); }
.entry-content ul, .entry-content ol { padding-left: 1.5em; }
.entry-content li + li { margin-top: .25em; }
.entry-content blockquote {
margin-left: 0; margin-right: 0;
padding: 12px 16px;
border-left: 4px solid var(--wlab-border);
background: var(--wlab-subtle);
}
.entry-content blockquote > :last-child { margin-bottom: 0; }
.entry-content pre, .entry-content code { font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: .875em; }
.entry-content pre { overflow-x: auto; padding: 12px 16px; background: var(--wlab-subtle); border-radius: var(--wlab-radius); }
.entry-content hr { margin: 2em 0; border: 0; border-top: 1px solid var(--wlab-border); } .entry-content table { width: 100%; border-collapse: collapse; font-size: .9375rem; }
.entry-content th, .entry-content td { padding: 8px 10px; border: 1px solid var(--wlab-border); text-align: left; vertical-align: top; }
.entry-content th { background: var(--wlab-subtle); }
.wp-block-table { overflow-x: auto; }
.wp-block-table table { min-width: 480px; }
.wp-caption, .wp-block-image figcaption, figcaption { color: var(--wlab-muted); font-size: .8125rem; }
.alignleft { float: left; margin: 0 1em 1em 0; }
.alignright { float: right; margin: 0 0 1em 1em; }
.aligncenter { display: block; margin-left: auto; margin-right: auto; text-align: center; }
.entry-content .alignwide, .entry-content .alignfull { max-width: 100%; }
.page-links { margin: 24px 0; }
.tag-list { display: flex; flex-wrap: wrap; gap: 8px; margin: 24px 0 0; padding: 0; list-style: none; font-size: .8125rem; }
.tag-list a { display: inline-block; padding: 4px 10px; background: var(--wlab-subtle); border-radius: 999px; color: var(--wlab-text); text-decoration: none; } .related-list { margin: 0; padding: 0; list-style: none; }
.related-list li { padding: 12px 0; border-bottom: 1px solid var(--wlab-border); }
.related-list a { display: block; color: var(--wlab-text); font-weight: 600; text-decoration: none; }
.related-list a:hover { color: var(--wlab-link); text-decoration: underline; }
.related-list time { color: var(--wlab-muted); font-size: .8125rem; } .post-navigation { margin-top: 32px; }
.post-navigation .nav-links { display: grid; gap: 12px; }
.post-navigation a { display: block; padding: 12px 16px; border: 1px solid var(--wlab-border); border-radius: var(--wlab-radius); color: var(--wlab-text); text-decoration: none; }
.post-navigation .nav-label { display: block; color: var(--wlab-muted); font-size: .75rem; }
@media (min-width: 768px) {
.post-navigation .nav-links { grid-template-columns: 1fr 1fr; }
.post-navigation .nav-next { grid-column: 2; text-align: right; }
}
.pagination { margin-top: 32px; }
.pagination .nav-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.pagination .page-numbers {
display: inline-flex;
align-items: center;
justify-content: center;
min-width: 44px; min-height: 44px;
padding: 0 12px;
border: 1px solid var(--wlab-border);
border-radius: var(--wlab-radius);
color: var(--wlab-text);
text-decoration: none;
}
.pagination .page-numbers.current { background: var(--wlab-text); border-color: var(--wlab-text); color: #fff; }
.pagination .page-numbers.dots { border: 0; } .comment-list { padding-left: 0; list-style: none; }
.comment-list .children { padding-left: 1em; list-style: none; }
.comment-body { padding: 12px 0; border-bottom: 1px solid var(--wlab-border); font-size: .9375rem; }
.comment-meta { color: var(--wlab-muted); font-size: .8125rem; }
.comment-form p { margin-bottom: 12px; }
.comment-form label { display: block; font-size: .875rem; } .site-footer { border-top: 1px solid var(--wlab-border); background: var(--wlab-subtle); font-size: .875rem; }
.footer-inner { display: grid; gap: 16px; padding-top: 24px; padding-bottom: 24px; }
.footer-menu { display: flex; flex-wrap: wrap; gap: 4px 16px; margin: 0; padding: 0; list-style: none; }
.footer-menu a { display: inline-block; padding: 8px 0; color: var(--wlab-text); }
.copyright { margin: 0; color: var(--wlab-muted); }
.copyright a { color: var(--wlab-muted); }
.error-404, .no-results { margin: 24px 0; }
.site-footer .search-form { max-width: 480px; }
.error-404 .search-form, .no-results .search-form { margin: 16px 0; }
@media (min-width: 768px) {
.site-main { padding-top: 24px; }
h1, .entry-title { font-size: 1.75rem; }
.site-title { font-size: 1.25rem; }
}
@media (prefers-reduced-motion: reduce) {
*, *::before, *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}
@media print {
.site-header nav, .site-footer, .breadcrumb, .related, .post-navigation, .comments { display: none; }
a { color: inherit; }
} .wlab-area{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin:32px 0}
.wlab-area__item{position:relative;min-width:0}
.wlab-area__item img{max-width:100%;height:auto}
.wlab-area__pr{position:absolute;z-index:2;top:8px;left:8px;padding:2px 7px;border-radius:4px;background:rgba(15,23,42,.82);color:#fff;font-size:.6875rem;font-weight:800;line-height:1.5;letter-spacing:.04em;pointer-events:none}
@media (min-width:768px){
.wlab-area:not(.is-count-1){grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.wlab-area:not(.is-count-1)>.wlab-area__item:last-child:nth-child(odd){grid-column:1/-1}
}:root {
--wlab-text: #16202b;
--wlab-link: #0f766e;
--wlab-accent: #b45309;
--wlab-subtle: #f4f6f5;
--wlab-border: #d8dfdc;
--wlab-focus: #0f766e;
--wll-ink: #10231f;
--wll-mint: #99f6e4;
--wlab-wide: 1040px;
}
.site-title a { letter-spacing: .01em; }
.site-description { display: none; }
.home .site-main { padding-top: 0; padding-bottom: 0; } .wll-hero {
color: #eefaf7;
background-color: var(--wll-ink);
background-image:
linear-gradient(rgba(153, 246, 228, .07) 1px, transparent 1px),
linear-gradient(90deg, rgba(153, 246, 228, .07) 1px, transparent 1px);
background-size: 28px 28px;
padding: 44px 0 48px;
}
.wll-hero__title { margin: 0 0 .15em; font-size: clamp(2.25rem, 8vw, 3.5rem); font-weight: 800; line-height: 1.2; }
.wll-hero__concept { margin: 0 0 1em; color: var(--wll-mint); font-size: clamp(1.125rem, 3.5vw, 1.5rem); font-weight: 700; }
.wll-hero__lead { max-width: 38em; margin: 0 0 1.4em; font-size: 1rem; }
.wll-hero__tags { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.wll-hero__tags li { padding: 2px 12px; border: 1px solid rgba(153, 246, 228, .55); border-radius: 999px; font-size: .8125rem; } .wll-home { padding-bottom: 56px; }
.wll-section { margin-top: 44px; }
.wll-section__title {
margin: 0 0 18px;
padding-left: 12px;
border-left: 4px solid var(--wlab-link);
font-size: 1.25rem;
}
.wll-empty { margin: 0; padding: 18px; border: 1px dashed var(--wlab-border); border-radius: 8px; color: var(--wlab-muted); } .wll-cards { display: grid; gap: 16px; }
.wll-card-item {
display: flex;
flex-direction: column;
overflow: hidden;
border: 1px solid var(--wlab-border);
border-radius: 8px;
background: var(--wlab-bg);
}
.wll-card-item__thumb { display: block; aspect-ratio: 16 / 9; overflow: hidden; background: var(--wlab-subtle); }
.wll-card-item__thumb img { width: 100%; height: 100%; object-fit: cover; }
.wll-card-item__body { padding: 14px 16px 16px; }
.wll-card-item__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; margin: 0 0 6px; color: var(--wlab-muted); font-size: .8125rem; }
.wll-card-item__title { margin: 0; font-size: 1.0625rem; line-height: 1.5; }
.wll-card-item__title a { color: var(--wlab-text); text-decoration: none; }
.wll-card-item__title a:hover { color: var(--wlab-link); text-decoration: underline; } .wll-chip { display: inline-block; padding: 0 10px; border-radius: 999px; color: #fff; font-size: .75rem; font-weight: 700; line-height: 1.8; }
.wll-chip--running { background: #0f766e; }
.wll-chip--done { background: #1e40af; }
.wll-chip--paused { background: #92400e; }
.wll-chip--stopped { background: #4b5563; } .wll-facts { display: grid; gap: 6px; margin: 10px 0 0; font-size: .875rem; }
.wll-facts div { display: grid; grid-template-columns: 6em 1fr; gap: 8px; }
.wll-facts dt { color: var(--wlab-muted); }
.wll-facts dd { margin: 0; }
.wll-record { margin: 0 0 1.6em; padding: 14px 16px; border: 1px solid var(--wlab-border); border-radius: 8px; background: var(--wlab-subtle); } .wll-guide { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.wll-guide__item > a, .wll-guide__item > div {
display: block;
height: 100%;
padding: 14px 16px;
border: 1px solid var(--wlab-border);
border-radius: 8px;
color: var(--wlab-text);
text-decoration: none;
}
.wll-guide__item > a:hover { border-color: var(--wlab-link); background: var(--wlab-subtle); }
.wll-guide__item > div { color: var(--wlab-muted); }
.wll-guide strong { display: block; }
.wll-guide span { font-size: .875rem; color: var(--wlab-muted); } .wll-profile { padding: 20px; border-radius: 8px; background: var(--wlab-subtle); }
.wll-profile .wll-section__title { margin-bottom: 12px; }
.wll-profile p:last-child { margin-bottom: 0; } .entry-content { font-size: 1.0625rem; }
.entry-content img { height: auto; }
.entry-content table { display: block; max-width: 100%; overflow-x: auto; }
.entry-content pre { max-width: 100%; overflow-x: auto; }
.entry-content iframe { max-width: 100%; }
.entry-content [style*="width"] { max-width: 100%; }
@media (min-width: 640px) {
.wll-cards { grid-template-columns: repeat(2, 1fr); }
.wll-guide { grid-template-columns: repeat(2, 1fr); }
.wll-hero { padding: 64px 0 68px; }
}
@media (min-width: 960px) {
.wll-cards { grid-template-columns: repeat(3, 1fr); }
.wll-guide { grid-template-columns: repeat(3, 1fr); }
} .wll-b2{--text:#16202b;--link:#0f766e;--accent:#b45309;--subtle:#f4f6f5;--border:#d8dfdc;--ink:#10231f;--mint:#99f6e4;--muted:#56626b;--line:#bcd0ca;--mono:ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;--wide:1040px}
.wll-b2 *{box-sizing:border-box}
.wll-b2{counter-reset:sec;margin:0;color:var(--text);background:#fff;font-family:system-ui,-apple-system,"Segoe UI","Hiragino Sans","Noto Sans JP",Meiryo,sans-serif;line-height:1.7;font-size:16px;overflow-wrap:anywhere}
.wll-b2 a{color:var(--link)}
.wll-b2 :focus-visible{outline:3px solid var(--link);outline-offset:2px}
.wll-b2-hero :focus-visible{outline-color:var(--mint)}
.wll-b2-container{max-width:var(--wide);margin:0 auto;padding:0 16px}  .wll-b2-hero{position:relative;color:#eefaf7;background-color:var(--ink);background-image:linear-gradient(rgba(153,246,228,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(153,246,228,.07) 1px,transparent 1px);background-size:28px 28px;padding:20px 0 18px}
.wll-b2-hero:before{content:"";position:absolute;left:0;right:0;top:0;height:7px;background:repeating-linear-gradient(90deg,rgba(153,246,228,.55) 0 1px,transparent 1px 10px);opacity:.7}
.wll-b2-hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,var(--mint),#0f766e 60%,transparent)}
.wll-b2-hero-grid{display:grid;gap:12px}
.wll-b2-eyebrow{margin:0 0 2px;color:var(--mint);font-weight:700;font-size:.75rem}
.wll-b2-h1row{display:flex;align-items:center;gap:8px}
.wll-b2-flask{flex:none;width:30px;height:30px;color:var(--mint)}
.wll-b2-h1{margin:0;font-size:1.8rem;font-weight:800;line-height:1.25}
.wll-b2-catch{margin:2px 0 4px;font-size:1.15rem;font-weight:700;line-height:1.5}
.wll-b2-lead{margin:0 0 12px;font-size:.88rem;line-height:1.7;max-width:34em}
.wll-b2-cta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px}
.wll-b2-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:8px;font-weight:700;text-decoration:none;font-size:.92rem;background:var(--mint);color:#06302a;flex:1 1 150px}
.wll-b2-cta .wll-b2-lnk{display:inline-flex;align-items:center;min-height:48px;padding:0 6px;color:#eefaf7;font-size:.88rem;font-weight:700}
.wll-b2-steps{display:flex;flex-wrap:wrap;gap:4px 8px;list-style:none;margin:10px 0 0;padding:0;font-family:var(--mono);font-size:.72rem;color:#a7d9d0;counter-reset:s}
.wll-b2-steps li{counter-increment:s}
.wll-b2-steps li:not(:last-child):after{content:"→";margin-left:8px;color:#5fb3a6}
.wll-b2-steps .wll-b2-d{display:none}
.wll-b2-steps b{color:var(--mint);font-weight:700} .wll-b2-sec{margin-top:26px}
.wll-b2-sec-head{margin:0 0 12px;padding-bottom:6px;border-bottom:2px solid var(--ink);position:relative}
.wll-b2-sec-head{counter-increment:sec}
.wll-b2-sec-head:before{content:counter(sec,decimal-leading-zero) " / " attr(data-k);display:block;font-family:var(--mono);font-size:.66rem;letter-spacing:.08em;color:var(--link)}
.wll-b2-sec-head:after{content:"";position:absolute;left:0;bottom:-2px;width:56px;height:2px;background:var(--mint)}
.wll-b2-sec-head h2{margin:0;font-size:1.1rem;line-height:1.4}
.wll-b2-sec-head small{display:block;font-size:.76rem;font-weight:400;color:var(--muted)} .wll-b2-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.wll-b2-item{position:relative;display:grid;grid-template-columns:88px 1fr;gap:10px;border:1px solid var(--border);border-left:4px solid var(--link);border-radius:6px;overflow:hidden;background:#fff}
.wll-b2-item.wll-b2-g-life{border-left-color:#b45309}.wll-b2-item.wll-b2-g-web{border-left-color:#0f766e}.wll-b2-item.wll-b2-g-side{border-left-color:#1e40af}
.wll-b2-item .wll-b2-thumb{position:relative;aspect-ratio:1/1;background:var(--subtle);overflow:hidden}
.wll-b2-item .wll-b2-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.wll-b2-yr{position:absolute;left:0;top:0;background:var(--ink);color:var(--mint);font-family:var(--mono);font-size:.62rem;padding:0 6px}
.wll-b2-item .wll-b2-b{padding:8px 10px 8px 0;min-width:0}
.wll-b2-item.wll-b2-nothumb{grid-template-columns:1fr}.wll-b2-item.wll-b2-nothumb .wll-b2-b{padding:10px 12px}
.wll-b2-meta{display:flex;flex-wrap:wrap;align-items:center;gap:2px 8px;margin:0 0 2px;font-size:.72rem;color:var(--muted)}
.wll-b2-stamp{display:inline-block;border:1px solid currentColor;border-radius:3px;padding:0 6px;font-family:var(--mono);font-size:.64rem;font-weight:700;line-height:1.6}
.wll-b2-stamp.wll-b2-fail{color:#92400e}.wll-b2-stamp.wll-b2-old{color:#4b5563}.wll-b2-stamp.wll-b2-plan{color:#0f766e}
.wll-b2-item .wll-b2-ttl{margin:0;font-size:.92rem;line-height:1.5;}
.wll-b2-item .wll-b2-ttl a{color:var(--text);text-decoration:none}
.wll-b2-item .wll-b2-ttl a:hover{text-decoration:underline}
.wll-b2-item .wll-b2-ttl a:after{content:"";position:absolute;inset:0}
.wll-b2-item.wll-b2-feature{background:var(--ink);color:#eefaf7;border-color:var(--ink);border-left-color:var(--mint);grid-template-columns:1fr}
.wll-b2-item.wll-b2-feature .wll-b2-b{padding:12px 14px}
.wll-b2-item.wll-b2-feature .wll-b2-ttl{font-size:1.02rem}
.wll-b2-item.wll-b2-feature .wll-b2-ttl a{color:#fff}.wll-b2-item.wll-b2-feature .wll-b2-meta{color:#a7d9d0}.wll-b2-item.wll-b2-feature .wll-b2-stamp.wll-b2-fail{color:#fcd9a8}
.wll-b2-more{margin:6px 0 0;font-size:.88rem}
.wll-b2-more a{display:inline-flex;align-items:center;min-height:44px} .wll-b2-shelves{display:grid;gap:14px}
.wll-b2-shelf{background:var(--subtle);border:1px solid var(--line);border-bottom:6px solid var(--ink);border-radius:6px 6px 2px 2px;padding:10px 10px 12px}
.wll-b2-shelf .wll-b2-sh{display:flex;align-items:center;gap:8px;margin:0 0 2px;font-size:.98rem}
.wll-b2-shelf .wll-b2-sh svg{width:20px;height:20px;flex:none;color:var(--link)}
.wll-b2-shelf .wll-b2-d{margin:0 0 8px;font-size:.8rem;color:var(--muted)}
.wll-b2-shelf .wll-b2-item{background:#fff} .wll-b2-next{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.wll-b2-next li{border:1.5px dashed var(--link);border-radius:6px;padding:10px 12px;background:repeating-linear-gradient(135deg,transparent 0 8px,rgba(15,118,110,.05) 8px 9px);display:flex;gap:10px;align-items:center;font-size:.92rem}
.wll-b2-about{padding:14px 16px;border:1px solid var(--line);border-top:4px solid var(--ink);border-radius:6px;background:#fff}
.wll-b2-about p{margin:.3em 0;font-size:.92rem}
.wll-b2-about a{display:inline-flex;align-items:center;min-height:44px}
.wll-b2-two{display:grid;gap:0}
@media (min-width:760px){
.wll-b2-container{padding:0 24px}
.wll-b2-hero{padding:44px 0 40px}
.wll-b2-hero-grid{grid-template-columns:1.2fr 1fr;gap:40px;align-items:center}
.wll-b2-flask{width:46px;height:46px}.wll-b2-h1{font-size:2.8rem}.wll-b2-catch{font-size:1.6rem;margin:6px 0 8px}
.wll-b2-eyebrow{font-size:.85rem}.wll-b2-lead{font-size:1rem;margin-bottom:18px}
.wll-b2-btn{flex:0 0 auto;padding:0 26px}.wll-b2-cta .wll-b2-lnk{font-size:.95rem}
.wll-b2-steps{display:grid;gap:10px;margin:0;font-family:inherit;font-size:1rem;color:#eefaf7;counter-reset:s}
.wll-b2-steps li{display:grid;grid-template-columns:44px 1fr;column-gap:12px;align-items:center;border:1px solid rgba(153,246,228,.45);border-radius:8px;background:rgba(153,246,228,.06);padding:12px 16px}
.wll-b2-steps li:not(:last-child):after{display:none}
.wll-b2-steps li:before{content:counter(s,decimal-leading-zero);grid-row:span 2;font-family:var(--mono);font-size:1.3rem;color:var(--mint);font-weight:700}
.wll-b2-steps b{font-size:1.1rem}
.wll-b2-steps .wll-b2-d{display:block;font-size:.85rem;color:#a7d9d0}
.wll-b2-sec{margin-top:44px}.wll-b2-sec-head h2{font-size:1.25rem}
.wll-b2-sec-head small{display:inline;margin-left:8px}
.wll-b2-item{grid-template-columns:120px 1fr}
.wll-b2-item .wll-b2-ttl{font-size:.95rem}
.wll-b2-item.wll-b2-feature .wll-b2-b{padding:18px 22px}.wll-b2-item.wll-b2-feature .wll-b2-ttl{font-size:1.25rem}
.wll-b2-list.wll-b2-c2{grid-template-columns:repeat(2,1fr);gap:16px}
.wll-b2-shelves{grid-template-columns:repeat(3,1fr);gap:20px;align-items:start}
.wll-b2-shelf{padding:14px 16px 18px}
.wll-b2-next{grid-template-columns:repeat(3,1fr)}
.wll-b2-next li{flex-direction:column;align-items:flex-start;min-height:92px}
.wll-b2-two{grid-template-columns:1.2fr 1fr;gap:32px}
}
.wll-b2 { --wll-ink:#10231f;--wll-mint:#99f6e4; counter-reset:sec; padding-bottom:30px; }
.wll-b2-hero :focus-visible{outline-color:var(--mint)}
.wll-b2-list > li { min-width:0; }
.wll-b2-item:focus-within { outline:3px solid var(--link);outline-offset:2px; }
body.home .site-title a { display:inline-flex; align-items:center; min-height:44px; }
body.home .nav-desktop .menu a { min-height:44px; display:inline-flex;align-items:center; }
body.home .header-inner { min-height:52px; padding-top:0;padding-bottom:0; }
body.home .site-footer a { display:inline-flex; align-items:center; min-height:44px; }