/* floor.css — #floor, "who decides", on a gold sheet: three lanes in the three materials of the home bento (gold clay = alone,
   paper = one tap, plum clay = never) and a paper board of one example day — three grooved tracks, small clay stars at their times
   (gold = alone, plum = one tap, a cream disc with a cross = never), a paper bubble with a pin, a clay replay button. Prefix fl-. */
.fl-head .k-h2{color:var(--plum-600)}
.fl-i{width:1.1rem;height:1.1rem;flex:none;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}

/* ── the three lanes ────────────────────────────────────────────────────────────────────────────────────────────────── */
.fl-lanes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.8vw,24px)}
/* the lanes share their rows (a subgrid): titles, promises, lists and the who-does-what line up across the three */
.fl-lane{--ink:#2a0a1c;--ink-2:#5b2a44;position:relative;display:grid;grid-row:span 4;grid-template-rows:subgrid;grid-template-columns:minmax(0,1fr);row-gap:16px;min-width:0;padding:28px 26px 24px;border-radius:var(--r-xl);transition:transform .5s var(--spring)}
.fl-lane:hover{transform:translateY(-6px)}
.fl-lane--alone{background:var(--k-grain),radial-gradient(120% 100% at 24% -8%,#ffeaa0 0%,#fcd04a 42%,#e9a514 100%);box-shadow:inset 0 2px 1px rgba(255,255,255,.75),inset 0 -14px 24px rgba(160,90,0,.32),0 30px 46px -24px rgba(120,60,0,.7),0 4px 0 -1px rgba(160,90,0,.5);color:var(--plum-700)}
.fl-lane--tap{background:var(--k-paper);box-shadow:var(--k-paper-shadow),0 30px 46px -26px rgba(120,60,0,.55);color:var(--ink)}
.fl-lane--never{background:var(--k-grain-light),var(--k-plum-clay);box-shadow:var(--k-plum-shadow);color:var(--cream-100)}
.fl-stk{position:absolute;z-index:2;top:-30px;inset-inline-end:18px;width:82px;height:auto;pointer-events:none;filter:drop-shadow(0 14px 12px rgba(70,8,36,.34));animation:k-float 7s ease-in-out infinite}
.fl-lane--alone .fl-stk{--r:12deg;transform:rotate(12deg);filter:drop-shadow(0 14px 12px rgba(120,60,0,.45))}
.fl-lane--tap .fl-stk{--r:-8deg;transform:rotate(-8deg);width:76px;animation-delay:-2.3s}
.fl-lane--never .fl-stk{--r:7deg;transform:rotate(7deg);width:70px;animation-delay:-4.6s;filter:drop-shadow(0 14px 12px rgba(20,0,10,.5))}
.fl-lh{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;padding-inline-end:64px}
.fl-lh .k-h3{flex:1 1 0;min-width:0}
.fl-lh .tg{flex-basis:100%;margin-inline-start:0}
.fl-num{display:grid;place-items:center;width:46px;height:46px;flex:none;border-radius:50%;font:800 1.25rem/1 var(--display)}
.fl-lane--alone .fl-num{background:var(--k-grain-light),var(--k-plum-clay);box-shadow:inset 0 2px 1px rgba(255,255,255,.26),inset 0 -6px 10px rgba(25,0,12,.45),0 8px 12px -6px rgba(100,40,0,.6);color:var(--cream-50)}
.fl-lane--tap .fl-num{background:var(--k-grain),var(--k-gold-clay);box-shadow:inset 0 2px 1px rgba(255,255,255,.7),inset 0 -6px 10px rgba(170,100,0,.32),0 8px 12px -6px rgba(130,70,0,.55);color:var(--plum-700)}
.fl-lane--never .fl-num{background:var(--k-grain),var(--k-gold-clay);box-shadow:inset 0 2px 1px rgba(255,255,255,.7),inset 0 -6px 10px rgba(170,100,0,.32),0 8px 14px -6px rgba(20,0,10,.6);color:var(--plum-700)}
.fl-lh .k-h3{font-size:clamp(1.6rem,2.3vw,2.05rem);color:inherit}
.fl-lane--tap .fl-lh .k-h3{color:var(--plum-600)}
.fl-promise{font:600 1.06rem/1.4 var(--text)}
.fl-lane--alone .fl-promise{color:var(--plum-700)}
.fl-lane--tap .fl-promise{color:var(--ink-2)}
.fl-lane--never .fl-promise{color:#f4dccb}
.fl-ex{display:grid;align-content:start;gap:8px}
.fl-ex li{display:flex;align-items:flex-start;gap:11px;padding:11px 14px;border-radius:16px;font-size:.94rem;line-height:1.38}
.fl-ex .fl-i{margin-top:1px}
.fl-lane--alone .fl-ex li{background:rgba(255,250,232,.5);box-shadow:inset 0 1px 0 rgba(255,255,255,.75),0 6px 12px -10px rgba(130,70,0,.55);color:var(--plum-700)}
.fl-lane--tap .fl-ex li{background:var(--cream-200);box-shadow:inset 0 1px 0 #fff,0 6px 12px -10px rgba(130,70,0,.45);color:var(--ink)}
.fl-lane--tap .fl-ex .fl-i{color:var(--plum-500)}
.fl-lane--never .fl-ex li{background:rgba(255,241,214,.09);box-shadow:inset 0 1px 0 rgba(255,255,255,.1);color:var(--cream-100)}
.fl-lane--never .fl-ex .fl-i{color:var(--gold-300)}
.fl-ex b{display:block;font-weight:650}
.fl-ex em{display:block;margin-top:2px;font-style:normal;font-size:.84rem;opacity:.8}
.fl-flow{display:flex;flex-wrap:wrap;align-items:center;align-self:end;gap:8px;padding-top:14px}
.fl-node{display:inline-flex;align-items:center;gap:8px;padding-block:5px; padding-inline:5px 13px;border-radius:999px;font:650 .8125rem/1.15 var(--display)}
.fl-node img{width:26px;height:auto;flex:none;filter:drop-shadow(0 2px 2px rgba(60,6,30,.35))}
.fl-node--you .fl-i{width:26px;height:26px;padding:5px;border-radius:50%;flex:none}
.fl-lane--alone .fl-node{background:rgba(255,250,232,.62);box-shadow:inset 0 1px 0 rgba(255,255,255,.8);color:var(--plum-700)}
.fl-lane--alone .fl-node--you .fl-i{background:var(--plum-600);color:var(--cream-50)}
.fl-lane--tap .fl-node{background:rgba(100,8,46,.07);color:var(--plum-600)}
.fl-lane--tap .fl-node--you .fl-i{background:var(--plum-600);color:var(--cream-50)}
.fl-lane--never .fl-node{background:rgba(255,241,214,.12);box-shadow:inset 0 1px 0 rgba(255,255,255,.12);color:var(--cream-100)}
.fl-lane--never .fl-node--you .fl-i{background:var(--gold-400);color:var(--plum-700)}
.fl-arr{display:inline-grid;opacity:.6}
.fl-arr .fl-i{width:15px;height:15px}


/* ── a day, sorted ──────────────────────────────────────────────────────────────────────────────────────────────────── */
.fl-day{--ink:#2a0a1c;--ink-2:#5b2a44;--ink-3:#7a4a62;--lw:104px;--pad:22px;position:relative;margin-top:clamp(30px,4vw,56px);padding:clamp(22px,3vw,40px) clamp(20px,3vw,40px) clamp(20px,2.6vw,30px);border-radius:var(--r-xl);background:var(--k-paper);box-shadow:var(--k-paper-shadow),0 50px 70px -40px rgba(120,60,0,.6);color:var(--ink)}
.fl-dh{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:20px 40px}
.fl-dt .k-h3{display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-size:clamp(1.7rem,2.8vw,2.4rem);color:var(--plum-600)}
.fl-dt p{margin-top:10px;max-width:34em;color:var(--ink-2)}
.fl-totals{display:flex;flex-wrap:wrap;gap:10px}
.fl-tot{display:grid;grid-template-columns:auto auto;grid-template-rows:auto auto;align-items:center;column-gap:10px;padding-block:12px; padding-inline:14px 18px;border-radius:22px;background:var(--cream-200);box-shadow:inset 0 1px 0 #fff,inset 0 -2px 0 rgba(160,100,20,.08)}
.fl-tot .fl-mk{grid-row:1/3}
.fl-tot b{font:800 1.9rem/1 var(--display);letter-spacing:-.04em;color:var(--plum-600);font-variant-numeric:tabular-nums}
.fl-tot small{font:600 .78rem/1.1 var(--text);color:var(--ink-3)}
.fl-mk{position:relative;display:grid;place-items:center;width:32px;height:32px}
.fl-mk img{width:30px;height:auto;filter:drop-shadow(0 4px 3px rgba(90,40,0,.35))}

.fl-board{position:relative;display:grid;gap:10px;margin-top:clamp(44px,4.6vw,60px)}
.fl-row{display:grid;grid-template-columns:var(--lw) minmax(0,1fr);align-items:center;gap:12px}
.fl-rl{font:700 .875rem/1.15 var(--display);letter-spacing:-.005em;color:var(--plum-600)}
.fl-rt{position:relative;height:58px;border-radius:999px}
.fl-row--never .fl-rt{background:rgba(100,8,46,.13);box-shadow:inset 0 2px 5px rgba(100,8,46,.16),inset 0 -1px 0 rgba(255,255,255,.6)}
.fl-row--tap .fl-rt{background:var(--cream-200);box-shadow:inset 0 2px 5px rgba(150,90,10,.14),inset 0 -1px 0 rgba(255,255,255,.7)}
.fl-row--alone .fl-rt{background:rgba(250,201,63,.26);box-shadow:inset 0 2px 5px rgba(160,100,0,.16),inset 0 -1px 0 rgba(255,255,255,.6)}
.fl-ri{position:absolute;inset:0 var(--pad)}
.fl-row--axis .fl-ax{position:relative;height:20px;margin-inline:var(--pad)}
.fl-ax span{position:absolute;top:2px;transform:translateX(-50%);font:600 .75rem/1 var(--display);color:var(--ink-3);font-variant-numeric:tabular-nums}
.fl-plot{position:absolute;top:-8px;bottom:22px;inset-inline-start:calc(var(--lw) + 12px + var(--pad));inset-inline-end:var(--pad);pointer-events:none}
.fl-cursor{position:absolute;top:0;bottom:0;inset-inline-start:0;width:2px;margin-inline-start:-1px;border-radius:2px;background:linear-gradient(180deg,var(--plum-500),rgba(129,19,71,.15));opacity:0;transition:opacity .3s}
.fl-cursor b{position:absolute;top:-24px;left:50%;transform:translateX(-50%);padding:4px 9px;border-radius:999px;background:var(--plum-600);box-shadow:0 6px 10px -5px rgba(60,6,30,.6);font:700 .72rem/1 var(--display);color:var(--cream-50);font-variant-numeric:tabular-nums;white-space:nowrap}
.fl-cursor.fl-go{opacity:1}

/* the stars on the board */
.fl-dot{position:absolute;top:50%;display:grid;place-items:center;width:34px;height:34px;margin-block:-17px 0; margin-inline:-17px 0;border-radius:50%;opacity:0;transform:scale(.2);transition:transform .45s var(--spring),opacity .3s;-webkit-tap-highlight-color:transparent}
.fl-dot.fl-on{opacity:1;transform:none}
.fl-dot img{width:30px;height:auto;filter:drop-shadow(0 5px 4px rgba(90,40,0,.4))}
.fl-dot--tap img{width:33px;filter:drop-shadow(0 5px 4px rgba(60,6,30,.45))}
.fl-dot--never img,.fl-mk--never img{width:31px;filter:drop-shadow(0 0 1px rgba(100,8,46,.55)) drop-shadow(0 5px 4px rgba(90,40,10,.45))}
/* the refused one: a cream star with a small plum cross on its shoulder */
.fl-x{position:absolute;inset-inline-end:-4px;top:-4px;display:grid;place-items:center;width:19px;height:19px;border-radius:50%;background:var(--k-plum-clay);box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 3px 5px -2px rgba(60,6,30,.6);color:var(--cream-50)}
.fl-x .fl-i{width:10px;height:10px;stroke-width:3.4}
.fl-mk .fl-x{width:14px;height:14px;inset-inline-end:-4px;top:-2px}.fl-mk .fl-x .fl-i{width:8px;height:8px}
.fl-dot.fl-on:hover,.fl-dot.fl-on.fl-sel{transform:scale(1.32);z-index:3}
.fl-dot:focus-visible{outline:none}
.fl-dot:focus-visible::after{content:"";position:absolute;inset:-4px;border-radius:50%;box-shadow:0 0 0 3px var(--plum-400)}

/* the bubble: paper with a pin that points at its star */
.fl-tip{position:absolute;z-index:6;inset-inline-start:0;top:0;width:min(330px,100%);padding:13px 16px 15px;border-radius:20px;background:var(--cream-50);box-shadow:inset 0 1px 0 #fff,0 0 0 1px rgba(100,8,46,.07),0 24px 40px -18px rgba(90,40,10,.6);pointer-events:none;animation:fl-tip .35s var(--spring) both}
.fl-tip::after{content:"";position:absolute;inset-inline-start:var(--px,50%);bottom:-7px;width:16px;height:16px;margin-inline-start:-8px;border-radius:3px;background:var(--cream-50);transform:rotate(45deg);box-shadow:3px 3px 6px -3px rgba(90,40,10,.35)}
.fl-tip--r::after,.fl-tip--l::after{top:var(--py,50%);bottom:auto;margin:-8px 0 0}
.fl-tip--r::after{inset-inline-start:-7px;box-shadow:-2px 2px 4px -2px rgba(90,40,10,.25)}
.fl-tip--l::after{inset-inline-start:auto;inset-inline-end:-7px;box-shadow:2px -2px 4px -2px rgba(90,40,10,.25)}
@keyframes fl-tip{from{opacity:0;translate:0 6px}to{opacity:1;translate:0 0}}
.fl-tt{display:flex;align-items:center;gap:10px;margin-bottom:6px}
.fl-tt time{font:800 1.05rem/1 var(--display);letter-spacing:-.02em;color:var(--plum-600);font-variant-numeric:tabular-nums}
.fl-tx{display:block;font-size:.95rem;line-height:1.45;color:var(--ink)}

.fl-df{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin-top:20px;padding-top:18px;box-shadow:inset 0 1px 0 rgba(100,8,46,.08)}
.fl-sum{flex:1 1 auto;font:650 1rem/1.4 var(--text);color:var(--ink)}
.fl-hint{font-size:.875rem;color:var(--ink-3)}
.fl-replay .fl-i{width:17px;height:17px}

/* the truth chips (?truth) on this sheet */
.fl .tg{border:0;background:rgba(255,250,232,.6);color:var(--plum-700)}
.fl-lane--never .tg{background:rgba(255,241,214,.14);color:var(--cream-100)}

@media (max-width:1180px) and (min-width:1021px){
  .fl-lane{padding-inline:22px}
  .fl-stk{inset-inline-end:-12px;width:66px}.fl-lane--tap .fl-stk{width:62px}.fl-lane--never .fl-stk{width:58px}
  .fl-lh{padding-inline-end:30px;gap:10px 12px}
  .fl-lh .k-h3{font-size:1.5rem}
}
@media (max-width:1020px){
  .fl-lanes{grid-template-columns:minmax(0,1fr);gap:34px}
  .fl-lane{grid-row:auto;grid-template-rows:none}
}
@media (max-width:640px){
  .fl-lane{padding:22px 20px 20px}
  .fl-day{--lw:66px;--pad:14px;padding:22px 16px 18px}
  .fl-rl{font-size:.72rem}
  .fl-rt{height:46px}
  .fl-dot{width:26px;height:26px;margin-block:-13px 0; margin-inline:-13px 0}
  .fl-dot img{width:22px}.fl-dot--tap img{width:25px}.fl-dot--never img{width:23px}
  .fl-x{width:14px;height:14px}.fl-x .fl-i{width:8px;height:8px}
  .fl-stk{width:64px;top:-24px;inset-inline-end:14px}.fl-lane--tap .fl-stk{width:60px}.fl-lane--never .fl-stk{width:56px}
  .fl-lh{padding-inline-end:52px}
  .fl-ax span{font-size:.66rem}
  .fl-ax span:nth-child(even){display:none}
  .fl-totals{width:100%}
  .fl-tot{flex:1 1 0;padding:10px 12px;column-gap:8px}
  .fl-tot b{font-size:1.5rem}
  .fl-hint{display:none}
}
@media (prefers-reduced-motion:reduce){.fl-lane,.fl-dot{transition:none}.fl-lane:hover{transform:none}.fl-cursor{display:none}.fl-tip,.fl-stk{animation:none}}
