/* ============================================================
   SHMELLO SOUL REBUILD — software.html below-the-fold styles
   Scene artifacts appended below the base block:
   tb- close-the-tabs · oi- open sign inbox · ev- envelope test
   hs- half-typed search · fc- filing cabinet · sb- site press
   nf- not-for-sale case · gw- giveaway fishbowl
   ============================================================ */

/* pillar eyebrow: ties feature sections to the two pillars */
.pillar-tag{
  display:inline-block;font-size:.7rem;font-weight:800;letter-spacing:.2em;
  text-transform:uppercase;color:#e8b53f;margin-bottom:.6rem;
}
.pillar-tag.time{color:#7fc1ff;}

/* replaces-kicker: the cross-off thread under each capability */
.rep-kicker{
  display:flex;justify-content:center;align-items:center;gap:.5rem;
  margin:1.6rem auto 0;font-size:.78rem;color:#7fa6cc;letter-spacing:.04em;
}
.rep-kicker s{color:#9db8d6;text-decoration-color:rgba(232,93,93,.75);text-decoration-thickness:2px;}
.rep-kicker b{color:#ffd98c;font-weight:800;}

/* two-column beat: copy + real screenshot in a browser frame */
.soul-duo{
  display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
  gap:2.6rem;align-items:center;margin-top:2.2rem;
}
.soul-duo>*{min-width:0;}
.soul-duo .sd-copy p{font-size:.98rem;color:#9db8d6;line-height:1.6;margin:0 0 1rem;}
.soul-duo .sd-copy p strong{color:#eef4fb;}
.soul-duo .sd-copy a{color:#ffd98c;font-weight:700;text-decoration:none;}
.soul-duo .sd-copy a:hover{text-decoration:underline;}
@media(max-width:900px){.soul-duo{grid-template-columns:1fr;gap:1.6rem;}}

/* real product screenshot in a faithful browser frame */
.shot-frame{
  border-radius:12px;overflow:hidden;border:1px solid rgba(127,166,204,.25);
  background:#0d1a2e;box-shadow:0 26px 60px rgba(0,0,0,.5);
  transform:rotate(.6deg);
}
.shot-frame .sf-bar{
  display:flex;align-items:center;gap:.45rem;padding:.55rem .8rem;
  background:linear-gradient(180deg,#152741,#0f1e35);border-bottom:1px solid rgba(127,166,204,.18);
}
.shot-frame .sf-bar i{width:10px;height:10px;border-radius:50%;display:block;}
.shot-frame .sf-bar i:nth-child(1){background:#e8806a;}
.shot-frame .sf-bar i:nth-child(2){background:#f4bf4f;}
.shot-frame .sf-bar i:nth-child(3){background:#35d07f;}
.shot-frame .sf-bar span{
  flex:1;text-align:center;font-size:.68rem;color:#7fa6cc;
  background:rgba(6,11,22,.6);border-radius:6px;padding:.2rem .6rem;margin-left:.4rem;
}
.shot-frame img{display:block;width:100%;height:auto;}
.shot-frame button{all:unset;display:block;cursor:zoom-in;width:100%;}
.shot-frame button:focus-visible{outline:2px solid #7fc1ff;outline-offset:2px;}

/* the everything-else line after the value stack */
.glovebox{
  max-width:640px;margin:2.2rem auto 0;text-align:center;
  font-size:.95rem;color:#9db8d6;line-height:1.7;
}
.glovebox b{color:#ffd98c;}

/* one-feature honesty note under pricing */
.one-feature{
  max-width:620px;margin:2rem auto 0;text-align:center;
  border-left:3px solid #e8b53f;background:rgba(232,181,63,.07);
  padding:1.1rem 1.4rem;border-radius:0 12px 12px 0;
  font-size:.98rem;color:#cfe0f3;text-align:left;
}
.one-feature b{color:#ffd98c;}

/* ============================================================
   SCENE: tabs (tb-)
   ============================================================ */
.tb-stage{position:relative;max-width:960px;margin:0 auto;display:flex;flex-direction:column;align-items:center;padding:10px 0 4px;}
.tb-glow{position:absolute;inset:-60px 0;pointer-events:none;}
.tb-glow-cold{background:radial-gradient(55% 50% at 50% 42%,rgba(27,141,246,.14),transparent 72%);opacity:1;transition:opacity 1.1s ease;}
.tb-glow-warm{background:radial-gradient(58% 52% at 50% 42%,rgba(232,181,63,.16),transparent 72%);opacity:0;transition:opacity 1.1s ease;}
.tb-stage.tb-after .tb-glow-cold{opacity:0;}
.tb-stage.tb-after .tb-glow-warm{opacity:1;}

.tb-win{position:relative;width:100%;max-width:900px;border-radius:14px;border:1px solid rgba(157,184,214,.16);background:#0b1626;box-shadow:0 34px 80px -34px rgba(0,0,0,.8);transition:border-color .9s ease,box-shadow .9s ease;}
.tb-after .tb-win{border-color:rgba(232,181,63,.42);box-shadow:0 34px 90px -30px rgba(184,130,28,.38);}
.tb-stage.tb-done .tb-win{cursor:pointer;}

.tb-chrome{display:flex;align-items:flex-end;gap:8px;padding:9px 8px 0 12px;background:#081120;border-radius:14px 14px 0 0;border-bottom:1px solid rgba(157,184,214,.1);transition:background-color .9s ease;}
.tb-after .tb-chrome{background:#141009;}
.tb-dots{display:flex;gap:6px;align-self:center;margin:0 6px 8px 0;flex:0 0 auto;}
.tb-dots span{width:10px;height:10px;border-radius:50%;}
.tb-dots span:nth-child(1){background:rgba(232,93,93,.75);}
.tb-dots span:nth-child(2){background:rgba(232,181,63,.75);}
.tb-dots span:nth-child(3){background:rgba(53,208,127,.75);}

.tb-tabs{display:flex;flex:1 1 auto;min-width:0;gap:3px;align-items:flex-end;}
.tb-tab{display:flex;align-items:center;gap:6px;height:34px;padding:0 8px;border-radius:9px 9px 0 0;background:rgba(157,184,214,.05);flex:1 1 0;min-width:0;max-width:130px;font-size:12px;font-weight:500;color:#7fa6cc;white-space:nowrap;overflow:hidden;transition:background-color .25s,color .25s,max-width .4s cubic-bezier(.6,-.32,.55,1),flex-grow .4s cubic-bezier(.6,-.32,.55,1),padding .4s cubic-bezier(.6,-.32,.55,1),opacity .32s ease;}
.tb-tab.tb-active{background:#132743;color:#cadcf2;}
.tb-tab.tb-closing{max-width:0;flex-grow:.001;padding:0;opacity:0;pointer-events:none;}
.tb-fav{width:18px;height:18px;border-radius:4px;flex:0 0 18px;display:grid;place-items:center;font-weight:800;font-size:11px;line-height:1;font-family:'Inter Tight',sans-serif;}
.tb-tab-label{overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1 1 auto;}
.tb-x{font-size:12px;color:#49678c;flex:0 0 auto;line-height:1;}
.tb-tab-shm{background:rgba(232,181,63,.1);color:#ffd98c;box-shadow:inset 0 0 0 1px rgba(232,181,63,.28);}
.tb-shmfav{width:18px;height:18px;border-radius:4px;object-fit:cover;flex:0 0 18px;}
.tb-after .tb-tab-shm{background:rgba(232,181,63,.2);max-width:220px;flex-grow:2;}

.tb-more{position:relative;flex:0 0 auto;display:flex;align-items:center;gap:6px;height:34px;padding:0 10px;border:0;background:rgba(157,184,214,.07);border-radius:9px 9px 0 0;color:#9db8d6;font:600 11px 'Inter Tight',sans-serif;cursor:pointer;transition:opacity .4s;}
.tb-more::after{content:'';position:absolute;inset:-6px 0 0 0;}
.tb-more:hover{background:rgba(157,184,214,.13);}
.tb-more-cv{width:11px;height:8px;flex:0 0 auto;}
.tb-more-badge{background:rgba(232,93,93,.16);color:#ef8d8d;border-radius:99px;padding:2px 7px;font-size:10px;font-weight:700;letter-spacing:.02em;}
.tb-after .tb-more{opacity:0;pointer-events:none;}

.tb-urlrow{padding:7px 12px;background:#0a1424;border-bottom:1px solid rgba(157,184,214,.08);transition:background-color .9s ease;}
.tb-after .tb-urlrow{background:#120f08;}
.tb-url{display:flex;align-items:center;gap:8px;height:30px;padding:0 12px;border-radius:8px;background:#0e1c31;color:#7fa6cc;font:500 12px ui-monospace,SFMono-Regular,Menlo,monospace;overflow:hidden;white-space:nowrap;transition:color .7s,background-color .9s;}
.tb-lock{width:10px;height:12px;flex:0 0 auto;fill:#49678c;transition:fill .7s;}
.tb-after .tb-url{color:#ffd98c;background:rgba(232,181,63,.09);}
.tb-after .tb-lock{fill:#e8b53f;}

.tb-view{position:relative;width:100%;aspect-ratio:16/9;min-height:300px;background:#0d1a2e;overflow:hidden;}
.tb-signin{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(62% 70% at 50% 28%,rgba(27,141,246,.09),transparent 70%);transition:opacity .7s ease;}
.tb-after .tb-signin{opacity:0;pointer-events:none;}
.tb-card{width:min(320px,calc(100% - 44px));background:#0f2038;border:1px solid rgba(157,184,214,.13);border-radius:14px;padding:20px 22px 16px;box-shadow:0 20px 44px -22px rgba(0,0,0,.65);}
.tb-card-head{display:flex;align-items:center;gap:10px;margin-bottom:14px;}
.tb-card-fav{width:28px;height:28px;flex:0 0 28px;border-radius:7px;font-size:15px;transition:background-color .18s;}
.tb-card-title{font-weight:700;font-size:15px;color:#eef4fb;letter-spacing:-.01em;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.tb-field{height:38px;border-radius:8px;background:#0a1626;border:1px solid rgba(157,184,214,.15);display:flex;align-items:center;padding:0 12px;color:#5d7fa5;font-size:12.5px;margin-top:10px;letter-spacing:.01em;}
.tb-field-pw{letter-spacing:.18em;font-size:14px;}
.tb-btnfake{height:38px;margin-top:12px;border-radius:8px;display:grid;place-items:center;font-weight:700;font-size:13px;transition:background-color .18s;}
.tb-forgot{display:block;text-align:center;margin-top:12px;color:#1b8df6;font-size:12px;text-decoration:underline;text-underline-offset:2px;}
.tb-app{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:left top;opacity:0;transition:opacity .9s ease .15s;}
.tb-after .tb-app{opacity:1;}

.tb-status{display:flex;align-items:center;justify-content:space-between;gap:8px 14px;flex-wrap:wrap;padding:9px 14px;border-top:1px solid rgba(157,184,214,.08);border-radius:0 0 14px 14px;background:#081120;color:#7fa6cc;font:600 12px ui-monospace,SFMono-Regular,Menlo,monospace;font-variant-numeric:tabular-nums;transition:background-color .9s ease;}
.tb-after .tb-status{background:#141009;}
.tb-tally{display:flex;align-items:center;gap:12px;min-width:0;flex-wrap:wrap;justify-content:flex-end;}
.tb-old{white-space:nowrap;transition:opacity .5s;}
.tb-after .tb-old{text-decoration:line-through;text-decoration-color:rgba(232,93,93,.9);text-decoration-thickness:2px;opacity:.45;}
.tb-new{display:none;color:#ffd98c;white-space:nowrap;}
.tb-after .tb-new{display:inline;}

.tb-chip{position:absolute;z-index:6;padding:3px 8px;border-radius:999px;background:rgba(232,93,93,.16);border:1px solid rgba(232,93,93,.4);color:#f0a2a2;font:700 11px ui-monospace,SFMono-Regular,Menlo,monospace;pointer-events:none;transition:transform .55s cubic-bezier(.35,.6,.4,1),opacity .55s ease .18s;will-change:transform;white-space:nowrap;}

.tb-ctx{position:absolute;width:192px;background:#182a44;border:1px solid rgba(157,184,214,.3);border-radius:10px;padding:5px;box-shadow:0 24px 52px -16px rgba(0,0,0,.95),0 4px 14px rgba(0,0,0,.5);font-size:12.5px;color:#b9cde6;z-index:8;opacity:0;pointer-events:none;transform:translateY(-5px);transition:opacity .22s,transform .22s;}
.tb-ctx.tb-open{opacity:1;transform:none;}
.tb-ctx-item{padding:6px 10px;border-radius:6px;}
.tb-ctx-sep{height:1px;background:rgba(157,184,214,.13);margin:4px 6px;}
.tb-ctx-hot{background:rgba(232,181,63,.16);color:#ffe7a8;font-weight:600;transition:background-color .16s,color .16s;}
.tb-ctx-hot.tb-flash{background:rgba(232,181,63,.75);color:#141009;}

.tb-ledger{position:absolute;top:50px;right:8px;width:min(360px,calc(100% - 16px));background:#0d1b31;border:1px solid rgba(157,184,214,.18);border-radius:12px;box-shadow:0 26px 56px -20px rgba(0,0,0,.85);z-index:7;padding:8px;opacity:0;pointer-events:none;transform:translateY(-6px);transition:opacity .25s,transform .25s;}
.tb-ledger.tb-open{opacity:1;pointer-events:auto;transform:none;}
.tb-led-row{display:flex;align-items:center;gap:10px;padding:7px 8px;border-radius:8px;}
.tb-led-row:hover{background:rgba(157,184,214,.06);}
.tb-led-fav{width:20px;height:20px;flex:0 0 20px;border-radius:5px;font-size:11px;}
.tb-led-mid{flex:1 1 auto;min-width:0;}
.tb-led-name{display:block;font-size:12.5px;font-weight:600;color:#cadcf2;line-height:1.25;}
.tb-led-term{display:block;font-size:11px;color:#7fa6cc;line-height:1.3;}
.tb-led-price{flex:0 0 auto;font:700 12px ui-monospace,SFMono-Regular,Menlo,monospace;font-variant-numeric:tabular-nums;color:#ef8d8d;}
.tb-led-note{padding:7px 8px 3px;font-size:11px;color:#5d7fa5;font-style:italic;}
.tb-led-foot{display:flex;justify-content:space-between;gap:10px;border-top:1px dashed rgba(157,184,214,.2);margin-top:5px;padding:9px 8px 4px;font:700 12.5px ui-monospace,SFMono-Regular,Menlo,monospace;font-variant-numeric:tabular-nums;color:#eef4fb;}

.tb-replay{margin-top:16px;min-height:44px;padding:10px 24px;border-radius:999px;border:1px solid rgba(232,181,63,.42);background:rgba(232,181,63,.08);color:#ffd98c;font:700 13px 'Inter Tight',sans-serif;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .5s,background-color .2s;}
.tb-replay:hover{background:rgba(232,181,63,.16);}
.tb-stage.tb-done .tb-replay{opacity:1;pointer-events:auto;}

@media (max-width:600px){
  .tb-dots{display:none;}
  .tb-chrome{padding-left:8px;}
  .tb-tab{padding:0 6px;gap:0;justify-content:center;max-width:44px;}
  .tb-tab .tb-tab-label,.tb-tab .tb-x{display:none;}
  .tb-tab.tb-closing{padding:0;}
  .tb-after .tb-tab-shm{max-width:170px;padding:0 10px;gap:7px;}
  .tb-after .tb-tab-shm .tb-tab-label{display:block;}
  .tb-more{padding:0 8px;gap:5px;}
  .tb-more-badge{font-size:9px;padding:2px 6px;}
  .tb-status{font-size:11px;padding:8px 10px;}
  .tb-view{min-height:320px;}
  .tb-led-row{padding:5px 8px;gap:9px;}
  .tb-led-name{font-size:12px;}
  .tb-led-term{font-size:10.5px;}
  .tb-led-note{padding-top:5px;font-size:10.5px;}
}
@media (prefers-reduced-motion: reduce){
  .tb-stage *,.tb-stage{transition-duration:.01ms !important;animation:none !important;}
}

/* ============================================================
   SCENE: inbox (oi-)
   ============================================================ */
/* ============ OI: The Open Sign Inbox (software.html flagship) ============ */
.oi-stage{max-width:1020px;margin:0 auto;}
.oi-stage *,.oi-stage *::before,.oi-stage *::after{box-sizing:border-box;}
.oi-panel{position:relative;overflow:hidden;border-radius:26px;background:linear-gradient(165deg,#0d1a2e 0%,#091223 46%,#060b16 100%);border:1px solid rgba(155,185,220,.12);min-height:740px;padding:0 0 30px;}
.oi-panel::before{content:"";position:absolute;inset:0;background:radial-gradient(58% 42% at 50% -6%,rgba(255,231,168,.17),transparent 62%),radial-gradient(30% 24% at 21% 4%,rgba(232,181,63,.12),transparent 70%);pointer-events:none;}
.oi-panel::after{content:"";position:absolute;left:50%;bottom:-140px;width:760px;height:280px;transform:translateX(-50%);background:radial-gradient(50% 50% at 50% 50%,rgba(232,181,63,.13),transparent 70%);pointer-events:none;}

/* ---- hanging shop sign ---- */
.oi-sign{position:absolute;top:-4px;left:19%;z-index:6;background:none;border:0;padding:0 6px 6px;cursor:pointer;font-family:inherit;transform-origin:50% -26px;animation:oiSway 7.5s ease-in-out infinite;}
.oi-sign:focus-visible{outline:2px solid #ffd98c;outline-offset:4px;border-radius:14px;}
.oi-sign-chains{display:flex;justify-content:space-between;width:118px;margin:0 auto;height:38px;}
.oi-sign-chains i{display:block;width:3px;height:100%;background:repeating-linear-gradient(180deg,#57708f 0 4px,#2c3f58 4px 8px);border-radius:2px;}
.oi-sign-card{display:block;position:relative;width:168px;height:86px;transform-style:preserve-3d;transition:transform .85s cubic-bezier(.34,1.35,.42,1);}
.oi-sign-face{position:absolute;inset:0;display:grid;place-items:center;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:13px;font-weight:900;font-size:27px;letter-spacing:.13em;padding-left:.13em;}
.oi-sign-closed{background:linear-gradient(170deg,#1b2940,#0f1a2b);border:2px solid rgba(83,112,143,.4);box-shadow:0 14px 30px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.06);color:#e85d5d;text-shadow:0 0 18px rgba(232,93,93,.45);}
.oi-sign-open{transform:rotateY(180deg);background:linear-gradient(165deg,#ffe7a8,#eec25c 55%,#d29a2a);border:2px solid #b8821c;color:#3a2b07;box-shadow:0 14px 34px rgba(0,0,0,.45),0 0 46px rgba(232,181,63,.42),inset 0 1px 0 rgba(255,255,255,.55);}
.oi-open .oi-sign-card{transform:rotateY(180deg);}
.oi-sign-hint{display:block;margin-top:9px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#5f7fa3;opacity:0;transition:opacity .3s;}
.oi-sign:hover .oi-sign-hint,.oi-sign:focus-visible .oi-sign-hint{opacity:1;}
@keyframes oiSway{0%,100%{transform:rotate(-1deg);}50%{transform:rotate(1.1deg);}}

/* ---- laptop ---- */
.oi-laptop{position:relative;width:min(680px,94%);margin:120px auto 0;z-index:2;}
.oi-lid{background:linear-gradient(180deg,#1a2a40,#0c1522);border:1px solid #2a3e59;border-radius:20px 20px 6px 6px;padding:15px 15px 17px;box-shadow:0 30px 70px -24px rgba(0,0,0,.75),0 0 90px -34px rgba(232,181,63,.3);}
.oi-screen{position:relative;border-radius:9px;overflow:hidden;aspect-ratio:650/442;background:linear-gradient(150deg,#132441,#0a1526 70%);}
.oi-screen::before{content:"";position:absolute;inset:0;background:radial-gradient(70% 55% at 74% 8%,rgba(255,231,168,.1),transparent 60%);pointer-events:none;}
.oi-deck{position:relative;height:17px;width:108%;margin-left:-4%;background:linear-gradient(180deg,#2b405c,#101c2b 80%);border-radius:2px 2px 15px 15px;box-shadow:0 16px 30px -12px rgba(0,0,0,.7);}
.oi-deck::before{content:"";position:absolute;left:50%;top:0;transform:translateX(-50%);width:104px;height:7px;background:#0a1220;border-radius:0 0 8px 8px;}

/* ---- browser window ---- */
.oi-browser{position:absolute;inset:14px 3.2% 14px;display:flex;flex-direction:column;border-radius:10px;overflow:hidden;background:#dde3ec;box-shadow:0 18px 44px rgba(0,0,0,.5);}
.oi-browser.oi-pulse{animation:oiPulse .75s ease-out;}
@keyframes oiPulse{0%{box-shadow:0 18px 44px rgba(0,0,0,.5),0 0 0 0 rgba(255,217,140,.75);}45%{box-shadow:0 18px 44px rgba(0,0,0,.5),0 0 0 5px rgba(255,217,140,.5),0 0 70px 8px rgba(232,181,63,.5);}100%{box-shadow:0 18px 44px rgba(0,0,0,.5),0 0 0 0 rgba(255,217,140,0);}}
.oi-chrome{display:flex;align-items:center;gap:12px;height:36px;padding:0 12px;background:linear-gradient(180deg,#e9edf3,#dde3ec);flex:none;}
.oi-dots{display:flex;gap:6px;flex:none;}
.oi-dots i{width:11px;height:11px;border-radius:50%;}
.oi-dots i:nth-child(1){background:#f16a5d;}
.oi-dots i:nth-child(2){background:#f5bf4f;}
.oi-dots i:nth-child(3){background:#58c454;}
.oi-tab{position:relative;display:flex;align-items:center;gap:7px;height:27px;margin-top:9px;padding:0 26px 0 10px;background:#f7f9fc;border-radius:9px 9px 0 0;font-size:12px;font-weight:600;color:#2c3a4d;white-space:nowrap;min-width:0;}
.oi-tab img{width:15px;height:15px;flex:none;}
.oi-tab span.oi-tabtext{overflow:hidden;text-overflow:ellipsis;}
.oi-tabbadge{position:absolute;right:5px;top:50%;transform:translateY(-50%);min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:#e8553f;color:#fff;font-size:10.5px;font-weight:800;display:grid;place-items:center;line-height:1;}
.oi-tabbadge.oi-zero{opacity:0;}
.oi-clock{margin-left:auto;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px;font-weight:700;color:#42536b;flex:none;transition:color .2s;}
.oi-clock.oi-tick{color:#b8821c;}
.oi-urlbar{display:flex;align-items:center;gap:7px;height:30px;padding:0 12px;background:#f7f9fc;border-bottom:1px solid #e2e7ee;flex:none;}
.oi-urlpill{flex:1;display:flex;align-items:center;gap:6px;height:20px;padding:0 10px;background:#eef1f6;border-radius:10px;font-size:10.5px;color:#5a6a80;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;white-space:nowrap;overflow:hidden;}
.oi-urlpill i{font-size:10px;color:#35d07f;flex:none;}
.oi-shot{position:relative;flex:1;min-height:0;display:block;width:100%;border:0;padding:0;margin:0;background:#fff;cursor:zoom-in;}
.oi-shot img{width:100%;height:100%;object-fit:contain;object-position:center;display:block;}
.oi-shot:focus-visible{outline:3px solid #e8b53f;outline-offset:-3px;}
.oi-shot::after{content:"";position:absolute;inset:0;background:rgba(232,181,63,0);transition:background .25s;}
.oi-shot:hover::after{background:rgba(232,181,63,.06);}

/* ---- phone, bottom right ---- */
.oi-phone{position:absolute;right:36px;bottom:30px;width:118px;height:224px;z-index:5;border-radius:24px;background:linear-gradient(180deg,#16243a,#0a1320);border:2px solid #2b3f59;box-shadow:0 22px 44px -14px rgba(0,0,0,.7),0 0 50px -22px rgba(232,181,63,.4);padding:9px;}
.oi-phone::before{content:"";position:absolute;top:9px;left:50%;transform:translateX(-50%);width:44px;height:13px;background:#0a1320;border-radius:0 0 9px 9px;z-index:1;}
.oi-phone-screen{height:100%;border-radius:16px;background:radial-gradient(120% 90% at 50% 0%,#1a2f4d,#0a1524 70%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;}
.oi-appicon{position:relative;width:54px;height:54px;border-radius:14px;background:linear-gradient(165deg,#243c5e,#101f34);border:1px solid rgba(53,80,114,.53);display:grid;place-items:center;box-shadow:0 8px 18px rgba(0,0,0,.45);}
.oi-appicon img{width:40px;height:40px;}
.oi-phonebadge{position:absolute;top:-7px;right:-7px;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:#e8553f;border:2px solid #0d1a2e;color:#fff;font-size:11px;font-weight:800;display:grid;place-items:center;line-height:1;}
.oi-phonebadge.oi-zero{opacity:0;}
.oi-applabel{font-size:11px;font-weight:600;color:#9db8d6;letter-spacing:.02em;}
.oi-pop{animation:oiPop .5s cubic-bezier(.34,1.56,.5,1);}
@keyframes oiPop{0%{transform:scale(1);}40%{transform:scale(1.65);}100%{transform:scale(1);}}
.oi-phonebadge.oi-pop{animation-name:oiPopBadge;}
@keyframes oiPopBadge{0%{transform:scale(1);}40%{transform:scale(1.55);}100%{transform:scale(1);}}

/* ---- notification banners (in flight) ---- */
.oi-flightlayer{position:absolute;inset:0;z-index:8;pointer-events:none;}
.oi-banner{position:absolute;left:0;top:0;width:302px;display:flex;gap:11px;align-items:flex-start;padding:12px 13px 13px;border-radius:15px;background:rgba(30,34,43,.94);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);box-shadow:0 16px 40px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.07);color:#f3f5f9;opacity:0;will-change:transform;}
.oi-bic{flex:none;width:38px;height:38px;border-radius:10px;display:grid;place-items:center;font-size:21px;color:#fff;box-shadow:0 4px 10px rgba(0,0,0,.35);}
.oi-b-sms .oi-bic{background:linear-gradient(180deg,#67df7b,#2cba4c);}
.oi-b-mail .oi-bic{background:linear-gradient(180deg,#6db6ff,#2f7ee0);}
.oi-b-call .oi-bic{background:linear-gradient(180deg,#ff8577,#e0453a);}
.oi-b-msgr .oi-bic{background:linear-gradient(135deg,#2bb9ff,#7a5cff);}
.oi-b-insta .oi-bic{background:linear-gradient(45deg,#f9ce34,#ee2a7b 55%,#6228d7);}
.oi-btxt{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1;}
.oi-brow{display:flex;justify-content:space-between;align-items:baseline;gap:8px;}
.oi-bapp{font-size:10.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#aeb6c2;}
.oi-bwhen{font-size:10.5px;color:#8b93a1;}
.oi-btitle{font-size:13.5px;font-weight:700;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.oi-bmsg{font-size:12.5px;line-height:1.35;color:#d6dbe4;}
.oi-bmsg.oi-sent{color:#35d07f;font-weight:600;}
.oi-bmsg.oi-sent i{font-size:12px;vertical-align:-1px;margin-right:2px;}
.oi-stamp{position:absolute;right:9px;bottom:-11px;background:#2b2213;border:1.5px solid #e8b53f;color:#ffd98c;font-size:10.5px;font-weight:800;letter-spacing:.05em;line-height:1;padding:6px 10px;border-radius:8px;box-shadow:0 8px 18px rgba(0,0,0,.5);opacity:0;transform:rotate(-14deg) scale(2.4);}
.oi-stamp.oi-on{animation:oiStamp .55s cubic-bezier(.34,1.5,.5,1) forwards;}
@keyframes oiStamp{0%{opacity:0;transform:rotate(-14deg) scale(2.4);}55%{opacity:1;transform:rotate(-4.5deg) scale(.9);}100%{opacity:1;transform:rotate(-7deg) scale(1);}}

/* ---- spawn glow ---- */
.oi-spawnglow{position:absolute;left:-999px;top:-999px;width:190px;height:190px;margin:-95px 0 0 -95px;border-radius:50%;background:radial-gradient(circle,rgba(255,217,140,.5),rgba(232,181,63,.16) 46%,transparent 70%);opacity:0;transition:opacity .35s;pointer-events:none;z-index:7;}
.oi-spawnglow.oi-vis{opacity:1;}

/* ---- dock strip ---- */
.oi-dock{position:relative;z-index:4;display:flex;flex-wrap:wrap;gap:9px;justify-content:center;margin:22px auto 0;max-width:700px;min-height:44px;padding:0 16px;}
.oi-chip{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 15px;border-radius:999px;background:#101d30;border:1px solid #263a54;color:#9db8d6;font-family:inherit;font-size:12.5px;font-weight:600;cursor:pointer;opacity:0;transform:translateY(8px) scale(.92);transition:border-color .25s,color .25s,box-shadow .25s;}
.oi-chip.oi-in{animation:oiChipIn .45s cubic-bezier(.3,1.3,.45,1) forwards;}
@keyframes oiChipIn{to{opacity:1;transform:translateY(0) scale(1);}}
.oi-chip:hover,.oi-chip:focus-visible{border-color:#b8821c;color:#ffd98c;box-shadow:0 0 22px -6px rgba(232,181,63,.55);outline:none;}
.oi-chipdot{width:8px;height:8px;border-radius:50%;flex:none;}
.oi-c-sms .oi-chipdot{background:#35d07f;}
.oi-c-mail .oi-chipdot{background:#1b8df6;}
.oi-c-call .oi-chipdot{background:#e85d5d;}
.oi-c-msgr .oi-chipdot{background:#7a5cff;}
.oi-c-insta .oi-chipdot{background:#ee2a7b;}

/* ---- mobile push bar ---- */
.oi-pushbar{display:none;position:absolute;left:12px;right:12px;top:64px;z-index:9;align-items:center;gap:10px;padding:11px 13px;border-radius:15px;background:rgba(28,33,42,.96);border:1px solid rgba(255,255,255,.11);box-shadow:0 14px 32px rgba(0,0,0,.55);transform:translateY(-190%);transition:transform .55s cubic-bezier(.3,1.25,.4,1);}
.oi-pushbar.oi-in{transform:translateY(0);}
.oi-pushbar img{width:30px;height:30px;flex:none;}
.oi-pushtxt{display:flex;flex-direction:column;gap:1px;min-width:0;}
.oi-pushtxt b{font-size:12.5px;color:#fff;}
.oi-pushtxt span{font-size:12px;color:#c5cbd6;}
.oi-pushwhen{margin-left:auto;font-size:10.5px;color:#8b93a1;flex:none;}

/* ---- caption ---- */
.oi-caption{margin:16px 6px 0;text-align:center;font-size:14.5px;font-style:italic;color:#7fa6cc;letter-spacing:.01em;}

/* ---- reduced motion ---- */
@media (prefers-reduced-motion: reduce){
  .oi-sign{animation:none;}
  .oi-sign-card{transition:none;}
  .oi-spawnglow{transition:none;}
  .oi-pushbar{transition:none;}
  .oi-chip{transition:none;}
}
.oi-rm .oi-chip{opacity:1;transform:none;}

/* ---- mobile ---- */
@media (max-width:640px){
  .oi-panel{min-height:0;max-height:560px;padding:0 12px 16px;border-radius:20px;}
  .oi-panel::after{width:110%;bottom:-120px;}
  .oi-sign{top:10px;left:10px;animation:none;padding:0;}
  .oi-sign-chains,.oi-sign-hint{display:none;}
  .oi-sign-card{width:84px;height:46px;}
  .oi-sign-face{font-size:15px;border-radius:10px;border-width:1.5px;}
  .oi-laptop{width:100%;margin:66px 0 0;}
  .oi-lid{padding:0;background:none;border:0;border-radius:12px;box-shadow:0 20px 46px -16px rgba(0,0,0,.7),0 0 60px -24px rgba(232,181,63,.3);}
  .oi-screen{aspect-ratio:auto;background:none;border-radius:12px;overflow:visible;}
  .oi-screen::before{display:none;}
  .oi-deck{display:none;}
  .oi-browser{position:static;inset:auto;border-radius:12px;}
  .oi-shot{flex:none;min-height:0;}
  .oi-shot img{width:100%;height:auto;object-fit:fill;}
  .oi-chrome{height:34px;gap:9px;padding:0 10px;}
  .oi-tab{max-width:62%;}
  .oi-phone{display:none;}
  .oi-dock{display:none;}
  .oi-pushbar{display:flex;}
  .oi-banner{width:calc(100% - 20px);left:10px;}
  .oi-caption{font-size:13.5px;}
}

/* ============================================================
   SCENE: search (hs-)
   ============================================================ */
.hs-stage{position:relative;max-width:880px;margin:0 auto;display:flex;flex-direction:column;align-items:center;padding:24px 0 8px;}
.hs-stage::before{content:"";position:absolute;inset:-40px -20px;background:radial-gradient(46% 44% at 38% 40%,rgba(232,181,63,.10),transparent 70%),radial-gradient(30% 34% at 74% 46%,rgba(27,141,246,.05),transparent 70%);pointer-events:none;}

.hs-scene{position:relative;display:flex;align-items:center;justify-content:center;gap:64px;width:100%;}

/* ---- phone ---- */
.hs-phonewrap{position:relative;flex:0 0 auto;}
.hs-glowpad{position:absolute;left:50%;bottom:-34px;transform:translateX(-50%);width:340px;max-width:88vw;height:72px;background:radial-gradient(50% 50% at 50% 50%,rgba(232,181,63,.32),transparent 70%);filter:blur(8px);pointer-events:none;}
.hs-phone{position:relative;width:300px;aspect-ratio:9/19.2;transform:rotate(-3deg);border-radius:46px;padding:9px;cursor:pointer;background:linear-gradient(158deg,#f2d68e 0%,#b8821c 30%,#6b4a10 55%,#a37417 78%,#e8b53f 100%);box-shadow:0 36px 70px -28px rgba(0,0,0,.85),0 0 52px -10px rgba(232,181,63,.34),inset 0 1px 0 rgba(255,231,168,.6);}
.hs-phone:focus-visible{outline:2px solid #ffd98c;outline-offset:4px;}
.hs-screen{position:relative;width:100%;height:100%;border-radius:38px;overflow:hidden;background:#05080f;box-shadow:inset 0 0 0 1px rgba(0,0,0,.9);}
.hs-notch{position:absolute;top:9px;left:50%;transform:translateX(-50%);width:84px;height:21px;border-radius:12px;background:#010204;z-index:6;box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);}
.hs-status{position:absolute;top:0;left:0;right:0;height:38px;display:flex;align-items:center;justify-content:space-between;padding:8px 22px 0;z-index:4;font-size:12px;font-weight:700;color:#cadcf2;letter-spacing:.02em;}
.hs-status-ic{display:flex;gap:4px;font-size:12px;color:#9db8d6;}

/* screens */
.hs-scr{position:absolute;inset:0;padding:52px 14px 12px;display:flex;flex-direction:column;transition:opacity .5s ease,transform .5s ease;}
.hs-scr1{opacity:1;}
.hs-p2 .hs-scr1{opacity:0;transform:translateY(-12px);pointer-events:none;}
.hs-scr2{opacity:0;transform:translateY(16px);pointer-events:none;}
.hs-p2 .hs-scr2{opacity:1;transform:none;}

/* screen 1 : recents */
.hs-oshead{display:flex;align-items:baseline;justify-content:space-between;padding:4px 6px 12px;}
.hs-oshead b{font-size:20px;font-weight:800;color:#eef4fb;}
.hs-oshead span{font-size:12px;color:#1b8df6;font-weight:600;}
.hs-call{display:flex;align-items:center;gap:10px;padding:11px 6px;border-bottom:1px solid rgba(157,184,214,.08);}
.hs-call-ic{width:30px;height:30px;flex:0 0 30px;border-radius:50%;display:grid;place-items:center;font-size:14px;background:rgba(157,184,214,.1);color:#9db8d6;}
.hs-call-hot .hs-call-ic{background:rgba(232,93,93,.14);color:#e85d5d;}
.hs-call-txt{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px;}
.hs-call-txt b{font-size:14px;font-weight:700;color:#eef4fb;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.hs-call-txt span{font-size:11px;color:#7fa6cc;display:flex;align-items:center;gap:4px;}
.hs-call-meta{font-size:11px;color:#7fa6cc;flex:0 0 auto;font-variant-numeric:tabular-nums;}
.hs-call-dim{opacity:.42;}
.hs-tabbar{margin-top:auto;display:flex;justify-content:space-around;align-items:center;padding:10px 4px 2px;border-top:1px solid rgba(157,184,214,.08);}
.hs-tab{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:15px;color:#49678c;}
.hs-tab small{font-size:8px;font-weight:600;letter-spacing:.04em;}
.hs-tab-on{color:#1b8df6;}

/* screen 2 : search */
.hs-searchbar{display:flex;align-items:center;gap:8px;background:#141f31;border:1px solid rgba(157,184,214,.14);border-radius:13px;padding:10px 12px;font-size:13px;color:#eef4fb;}
.hs-searchbar .ph-bold{color:#7fa6cc;font-size:14px;flex:0 0 auto;}
.hs-query{white-space:nowrap;overflow:hidden;min-width:0;font-weight:600;}
.hs-caret{width:2px;height:16px;background:#1b8df6;border-radius:1px;flex:0 0 2px;animation:hsCaret 1s steps(1) infinite;}
.hs-mic{margin-left:auto;}
@keyframes hsCaret{0%,60%{opacity:1;}61%,100%{opacity:0;}}
.hs-suggs{display:flex;flex-direction:column;margin-top:6px;}
.hs-sugg{display:flex;align-items:center;gap:10px;padding:11px 8px;border-bottom:1px solid rgba(157,184,214,.08);transition:opacity .45s ease,transform .45s ease;}
.hs-sugg-echo{opacity:0;font-size:12.5px;color:#9db8d6;}
.hs-sugg-echo .ph-bold{color:#49678c;font-size:13px;}
.hs-echo .hs-sugg-echo{opacity:1;}
.hs-sugg-comp{opacity:0;transform:translateY(7px);}
.hs-comp .hs-sugg-comp{opacity:1;transform:none;}
.hs-dim .hs-sugg-comp{opacity:.4;}
.hs-pin{width:28px;height:28px;flex:0 0 28px;border-radius:8px;display:grid;place-items:center;background:rgba(232,93,93,.15);color:#e85d5d;font-size:14px;}
.hs-comp-txt{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px;}
.hs-comp-txt b{font-size:13px;font-weight:700;color:#eef4fb;}
.hs-comp-txt span{font-size:11px;color:#7fa6cc;}
.hs-open{color:#35d07f;font-weight:600;}
.hs-goarrow{margin-left:auto;color:#49678c;font-size:13px;}

/* keyboard */
.hs-kb{margin-top:auto;display:flex;flex-direction:column;gap:6px;padding:8px 0 2px;}
.hs-krow{display:flex;gap:4px;justify-content:center;}
.hs-key{flex:1 1 0;min-width:0;max-width:24px;height:32px;border-radius:5px;background:#1c2940;color:#9db8d6;font-size:11px;font-weight:600;display:grid;place-items:center;text-transform:uppercase;transition:background-color .12s,color .12s;}
.hs-key-sp{flex:0 0 auto;width:58%;max-width:none;}
.hs-key.hs-hit{background:#e8b53f;color:#231603;}

/* notification banner */
.hs-banner{position:absolute;top:36px;left:9px;right:9px;z-index:5;background:rgba(26,35,52,.96);border:1px solid rgba(255,231,168,.22);border-radius:16px;padding:10px 12px;display:flex;gap:10px;align-items:flex-start;box-shadow:0 14px 34px -12px rgba(0,0,0,.8),0 0 24px -8px rgba(232,181,63,.35);transform:translateY(-140%);opacity:0;}
.hs-note .hs-banner{animation:hsBannerIn .64s cubic-bezier(.22,1.1,.32,1.18) forwards;}
@keyframes hsBannerIn{0%{transform:translateY(-140%);opacity:.4;}62%{transform:translateY(5%);opacity:1;}82%{transform:translateY(-2%);}100%{transform:translateY(0);opacity:1;}}
.hs-bicon{width:32px;height:32px;flex:0 0 32px;border-radius:8px;display:grid;place-items:center;background:linear-gradient(160deg,#3fd68a,#1f9e5c);color:#04240f;font-size:16px;}
.hs-btxt{flex:1 1 auto;min-width:0;}
.hs-brow{display:flex;justify-content:space-between;align-items:baseline;gap:6px;}
.hs-bapp{font-size:8.5px;font-weight:700;letter-spacing:.1em;color:#7fa6cc;}
.hs-btime{font-size:9px;color:#7fa6cc;}
.hs-btitle{font-size:12.5px;font-weight:800;color:#ffe7a8;margin-top:1px;}
.hs-bbody{font-size:11px;line-height:1.4;color:#cadcf2;margin-top:1px;}

/* ---- stopwatch ---- */
.hs-watch{flex:0 0 auto;display:flex;flex-direction:column;align-items:flex-start;gap:8px;transform:translateY(-24px);min-width:212px;}
.hs-watch-label{font-size:10px;font-weight:800;letter-spacing:.22em;color:#7fa6cc;}
.hs-watch-digits{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-variant-numeric:tabular-nums;font-size:64px;font-weight:700;line-height:1;color:#ffe7a8;text-shadow:0 0 28px rgba(232,181,63,.4);}
.hs-done .hs-watch-digits{animation:hsFreeze .55s ease;color:#ffd98c;}
@keyframes hsFreeze{0%{transform:scale(1);}35%{transform:scale(1.07);text-shadow:0 0 44px rgba(232,181,63,.75);}100%{transform:scale(1);}}
.hs-watch-rule{width:100%;height:1px;background:linear-gradient(90deg,rgba(232,181,63,.55),transparent);}
.hs-watch-note{font-size:12px;font-weight:600;color:#49678c;display:flex;align-items:center;gap:6px;min-height:18px;transition:color .4s ease;}
.hs-watch-note .ph-bold{font-size:13px;}
.hs-warn .hs-watch-note{color:#e85d5d;}
.hs-done .hs-watch-note{color:#35d07f;}

/* ---- plaque ---- */
.hs-plaque{position:relative;margin-top:52px;padding:11px 34px;border-radius:5px;background:linear-gradient(173deg,#ecca77 0%,#c79a3a 38%,#8f6417 76%,#c79a3a 100%);box-shadow:0 12px 28px -12px rgba(0,0,0,.75),inset 0 1px 0 rgba(255,244,214,.75),inset 0 -2px 3px rgba(60,38,4,.55);font-size:11px;font-weight:800;letter-spacing:.15em;color:#2b1b04;text-shadow:0 1px 0 rgba(255,240,200,.45);text-align:center;max-width:100%;}
.hs-plaque::before,.hs-plaque::after{content:"";position:absolute;top:50%;width:7px;height:7px;margin-top:-3.5px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#f6e2a8,#8f6417 65%,#5d3f0a);box-shadow:0 1px 1px rgba(60,38,4,.6);}
.hs-plaque::before{left:11px;}
.hs-plaque::after{right:11px;}

/* ---- replay ---- */
.hs-replay{margin-top:18px;background:none;border:none;padding:8px 14px;min-height:44px;font-family:inherit;font-size:13px;font-weight:600;color:#b8821c;display:inline-flex;align-items:center;gap:7px;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .6s ease,color .2s ease;}
.hs-replay .ph-bold{font-size:14px;}
.hs-done .hs-replay{opacity:1;pointer-events:auto;}
.hs-replay:hover{color:#ffd98c;}
.hs-replay:focus-visible{outline:2px solid #ffd98c;outline-offset:2px;border-radius:8px;}

/* ---- mobile ---- */
@media (max-width:560px){
  .hs-scene{flex-direction:column;gap:36px;}
  .hs-phone{width:270px;transform:rotate(-1.5deg);}
  .hs-watch{transform:none;align-items:center;min-width:0;}
  .hs-watch-rule{background:linear-gradient(90deg,transparent,rgba(232,181,63,.55),transparent);}
  .hs-watch-digits{font-size:54px;}
  .hs-plaque{margin:34px 6px 0;padding:11px 24px;font-size:10px;letter-spacing:.12em;line-height:1.7;text-wrap:balance;}
  .hs-glowpad{width:300px;}
}

@media (prefers-reduced-motion: reduce){
  .hs-stage *,.hs-stage *::before,.hs-stage *::after{animation:none !important;transition:none !important;}
  .hs-note .hs-banner{transform:none;opacity:1;}
}

/* ============================================================
   SCENE: cabinet (fc-)
   ============================================================ */
.fc-stage{
  position:relative;
  width:100%;
  max-width:980px;
  margin:0 auto;
  padding:18px 8px 10px;
}
.fc-stage *{box-sizing:border-box}
.fc-stage .fc-light{
  position:absolute;
  inset:-90px -20px -30px -20px;
  pointer-events:none;
  z-index:0;
  background:
    radial-gradient(ellipse 46% 58% at 22% 6%, rgba(255,214,130,.17), rgba(255,214,130,.05) 52%, transparent 76%),
    radial-gradient(ellipse 60% 46% at 78% 72%, rgba(27,141,246,.05), transparent 72%),
    radial-gradient(ellipse 90% 80% at 50% 45%, rgba(13,26,46,.6), transparent 80%);
}
.fc-stage .fc-cone{
  position:absolute;
  top:-70px;left:2%;
  width:420px;height:560px;
  pointer-events:none;
  z-index:0;
  background:linear-gradient(180deg, rgba(255,222,148,.13), rgba(255,214,130,.04) 55%, transparent 85%);
  clip-path:polygon(44% 0, 56% 0, 100% 100%, 0 100%);
  filter:blur(6px);
}

/* ---------- folder tabs ---------- */
.fc-tabs{
  position:relative;z-index:3;
  display:flex;align-items:flex-end;gap:10px;
  padding:0 6px;margin:0 0 -2px;
  flex-wrap:wrap;
}
.fc-tab{
  appearance:none;border:0;cursor:pointer;
  min-height:46px;
  padding:11px 20px 13px;
  font:600 13.5px/1.25 'Inter Tight',sans-serif;
  color:#57451c;
  background:linear-gradient(180deg,#d3bd83,#b59c62);
  clip-path:polygon(12px 0, calc(100% - 12px) 0, 100% 100%, 0 100%);
  border-radius:8px 8px 0 0;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.4);
  transition:transform .22s ease, background .22s ease, color .22s ease;
  transform:translateY(6px);
}
.fc-tab:hover{transform:translateY(2px)}
.fc-tab:focus-visible{outline:2px solid #ffd98c;outline-offset:2px}
.fc-tab[aria-pressed="true"]{
  background:linear-gradient(180deg,#ffe9b3,#e8c878);
  color:#3f3110;
  transform:translateY(0);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55), 0 -6px 18px rgba(255,214,130,.18);
}

/* ---------- scene grid ---------- */
.fc-scene{
  position:relative;z-index:2;
  display:grid;
  grid-template-columns:330px minmax(0,1fr);
  gap:0 44px;
  align-items:start;
  padding:26px 6px 8px;
  border-top:1px solid rgba(255,222,148,.14);
  min-height:560px;
}

/* ---------- search slip ---------- */
.fc-slip{
  position:relative;
  width:264px;
  margin:0 auto 10px;
  transform:rotate(-1.6deg);
  background:linear-gradient(175deg,#f6eed6,#e9dcb8);
  border-radius:3px;
  box-shadow:0 10px 22px rgba(0,0,0,.45), inset 0 0 22px rgba(151,124,66,.14);
  padding:14px 14px 12px;
  min-height:78px;
}
.fc-slip::before{ /* binder clip */
  content:"";
  position:absolute;
  top:-9px;left:50%;
  width:46px;height:13px;
  transform:translateX(-50%);
  background:linear-gradient(180deg,#9fb0c4,#5d6c80 55%,#8a9bb0);
  border-radius:3px 3px 1px 1px;
  box-shadow:0 2px 4px rgba(0,0,0,.5), inset 0 1px 0 rgba(255,255,255,.5);
}
.fc-slip::after{ /* clip arm */
  content:"";
  position:absolute;
  top:-16px;left:50%;
  width:22px;height:9px;
  transform:translateX(-50%);
  border:2.5px solid #8a9bb0;
  border-bottom:0;
  border-radius:8px 8px 0 0;
}
.fc-sliplabel{
  font:700 9px/1 'Inter Tight',sans-serif;
  letter-spacing:.22em;text-transform:uppercase;
  color:#a08c5c;margin:0 0 7px;
}
.fc-query{
  font:600 13.5px/1.45 ui-monospace,SFMono-Regular,Menlo,monospace;
  color:#33291a;
  min-height:39px;
  word-break:break-word;
}
.fc-caret{
  display:inline-block;
  width:2px;height:14px;
  margin-left:2px;
  vertical-align:-2px;
  background:#6f5a2c;
  animation:fcBlink 1.05s steps(1) infinite;
}
@keyframes fcBlink{0%,55%{opacity:1}56%,100%{opacity:0}}

/* ---------- cabinet ---------- */
.fc-cabwrap{position:relative;z-index:2;width:100%;max-width:330px;margin:0 auto}
.fc-cab{
  position:relative;
  background:linear-gradient(160deg,#4d5b70,#303c4e 55%,#242e3d);
  border-radius:9px;
  padding:8px 13px 13px;
  box-shadow:
    0 26px 44px rgba(0,0,0,.55),
    inset 0 1px 0 rgba(255,255,255,.16),
    inset -8px 0 18px rgba(0,0,0,.3);
}
.fc-cab::after{ /* warm light falling on the cabinet top-left */
  content:"";
  position:absolute;inset:0;
  border-radius:9px;
  pointer-events:none;
  background:linear-gradient(150deg, rgba(255,220,150,.14), transparent 45%);
}
.fc-cab.fc-rattle{animation:fcRattle .3s linear}
@keyframes fcRattle{
  0%,100%{transform:translate(0,0) rotate(0)}
  18%{transform:translate(-2px,1px) rotate(-.3deg)}
  38%{transform:translate(2px,-1px) rotate(.3deg)}
  58%{transform:translate(-2px,0) rotate(-.2deg)}
  78%{transform:translate(2px,1px) rotate(.2deg)}
}
.fc-etch{
  text-align:center;
  font:700 9.5px/1 'Inter Tight',sans-serif;
  letter-spacing:.19em;text-transform:uppercase;
  color:#151d2a;
  text-shadow:0 1px 0 rgba(190,210,235,.16);
  padding:6px 0 9px;
  margin:0;
}
.fc-drawer{position:relative;height:92px;margin-bottom:9px}
.fc-drawer:last-child{margin-bottom:0}
.fc-cavity{
  position:absolute;inset:0;
  border-radius:6px;
  background:linear-gradient(180deg,#04070d,#0b1322 70%);
  box-shadow:inset 0 6px 14px rgba(0,0,0,.85);
  opacity:0;
  transition:opacity .25s ease;
  overflow:hidden;
}
.fc-files{
  position:absolute;top:5px;left:9%;right:9%;bottom:0;
  display:flex;gap:7px;align-items:flex-start;
}
.fc-files i{
  flex:1;display:block;height:100%;
  background:linear-gradient(180deg,#c9b478,#8f7c4a 60%);
  border-radius:4px 4px 0 0;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.22);
}
.fc-files i:nth-child(2){margin-top:9px;background:linear-gradient(180deg,#bda671,#847142 60%)}
.fc-files i:nth-child(3){margin-top:4px}
.fc-front{
  position:absolute;inset:0;
  border-radius:6px;
  background:
    repeating-linear-gradient(90deg, rgba(255,255,255,.025) 0 1px, transparent 1px 4px),
    linear-gradient(180deg,#5f6f88,#45546a 55%,#39485c);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.22),
    inset 0 -2px 4px rgba(0,0,0,.35),
    0 2px 5px rgba(0,0,0,.4);
  transition:transform .5s cubic-bezier(.34,1.56,.64,1), filter .5s ease;
  z-index:1;
}
.fc-drawer.fc-open .fc-cavity{opacity:1}
.fc-drawer.fc-open .fc-front{
  transform:translateY(29%) scale(1.055);
  filter:drop-shadow(0 12px 16px rgba(0,0,0,.55));
  z-index:2;
}
.fc-pull{
  display:block;
  width:66px;height:11px;
  margin:13px auto 9px;
  border-radius:6px;
  background:linear-gradient(180deg,#1e2733,#0d131c);
  box-shadow:0 1px 0 rgba(255,255,255,.14), inset 0 2px 3px rgba(0,0,0,.75);
}
.fc-plate-tag{
  display:block;
  width:104px;margin:0 auto;
  background:linear-gradient(180deg,#efe5c4,#ded0a4);
  border:2px solid #1b2431;
  border-radius:3px;
  padding:5px 4px 4px;
  text-align:center;
  font:700 10px/1 ui-monospace,SFMono-Regular,Menlo,monospace;
  letter-spacing:.2em;
  color:#3c3115;
  box-shadow:0 1px 2px rgba(0,0,0,.4);
}

/* ---------- brass counter ---------- */
.fc-brass{
  position:relative;
  z-index:3;
  width:min(300px,92%);
  margin:14px auto 0;
  background:linear-gradient(180deg,#e0ba67,#a97e2c 70%,#c39a45);
  border-radius:5px;
  padding:9px 24px 8px;
  text-align:center;
  font:700 12.5px/1.35 'Inter Tight',sans-serif;
  font-variant-numeric:tabular-nums;
  color:#3c2b0a;
  text-shadow:0 1px 0 rgba(255,244,210,.45);
  box-shadow:0 8px 16px rgba(0,0,0,.4), inset 0 1px 0 rgba(255,246,215,.6), inset 0 -2px 3px rgba(90,60,10,.4);
}
.fc-brass::before,.fc-brass::after{
  content:"";
  position:absolute;top:50%;
  width:7px;height:7px;margin-top:-3.5px;
  border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#f6e7bd,#8a6420 70%);
  box-shadow:inset 0 1px 2px rgba(60,40,5,.6);
}
.fc-brass::before{left:8px}
.fc-brass::after{right:8px}
.fc-dot{padding:0 5px;opacity:.7}

/* ---------- wall of index cards ---------- */
.fc-wall{
  position:relative;z-index:1;
  min-height:520px;
  margin-top:8px;
}
.fc-wallhint{
  position:absolute;top:14px;left:6px;right:6px;
  font:600 11px/1.5 'Inter Tight',sans-serif;
  letter-spacing:.16em;text-transform:uppercase;
  color:#41577a;
  text-align:center;
  transition:opacity .4s ease;
  margin:0;
}
.fc-wall.fc-haspins .fc-wallhint{opacity:0}
.fc-card{
  position:absolute;
  left:var(--fcx,0);top:var(--fcy,0);
  width:min(290px,100%);
  background:linear-gradient(178deg,#f7f0da,#eadfbd);
  border-radius:4px;
  padding:13px 14px 12px;
  box-shadow:0 14px 24px rgba(0,0,0,.5), inset 0 0 18px rgba(151,124,66,.1);
  opacity:0;
  transform:translateY(-18px) rotate(0deg) scale(.94);
  transition:transform .42s cubic-bezier(.34,1.56,.64,1), opacity .3s ease;
}
.fc-card.fc-pinned{
  opacity:1;
  transform:translateY(0) rotate(var(--fcr,0deg)) scale(1);
}
.fc-pin{
  position:absolute;
  top:-7px;left:50%;
  width:15px;height:15px;
  margin-left:-7.5px;
  border-radius:50%;
  background:radial-gradient(circle at 34% 28%, #ffe9ad, #d19a2e 55%, #7c5a14);
  box-shadow:0 3px 5px rgba(0,0,0,.55), inset 0 -1px 2px rgba(60,40,5,.5);
}
.fc-pin::after{
  content:"";
  position:absolute;
  top:13px;left:50%;
  width:2px;height:5px;margin-left:-1px;
  background:linear-gradient(180deg,#8c8c8c,#4a4a4a);
}
.fc-cardhead{
  display:flex;align-items:center;gap:8px;
  margin:0 0 8px;
}
.fc-cardhead .ph-bold{
  font-size:15px;
  color:#96712a;
  flex:none;
}
.fc-name{
  font:700 14.5px/1.2 'Inter Tight',sans-serif;
  color:#2c2314;
  flex:1;min-width:0;
}
.fc-date{
  font:600 11.5px/1 ui-monospace,SFMono-Regular,Menlo,monospace;
  font-variant-numeric:tabular-nums;
  color:#8a7647;
  flex:none;
}
.fc-bubble{
  position:relative;
  background:#fdfbf4;
  border:1px solid #d8caa2;
  border-radius:13px 13px 13px 4px;
  padding:9px 12px;
  font:500 13px/1.45 'Inter Tight',sans-serif;
  color:#38301e;
  box-shadow:0 2px 4px rgba(120,95,40,.14);
}
.fc-kw{
  background-image:linear-gradient(90deg, rgba(232,181,63,.5), rgba(255,214,130,.55));
  background-repeat:no-repeat;
  background-size:0% 100%;
  border-radius:3px;
  padding:0 2px;margin:0 -2px;
  color:inherit;
  transition:background-size .55s ease;
}
.fc-card.fc-lit .fc-kw{background-size:100% 100%}
.fc-callrow{
  display:flex;align-items:center;gap:10px;
  margin-top:9px;
  padding:7px 10px;
  background:rgba(150,113,42,.1);
  border-radius:8px;
}
.fc-play{
  flex:none;width:0;height:0;
  border-left:9px solid #96712a;
  border-top:6px solid transparent;
  border-bottom:6px solid transparent;
}
.fc-wave{
  flex:1;display:flex;align-items:center;gap:2.5px;height:20px;min-width:0;overflow:hidden;
}
.fc-wave i{
  flex:none;display:block;width:3px;
  border-radius:2px;
  background:linear-gradient(180deg,#c99b3c,#96712a);
}
.fc-len{
  flex:none;
  font:700 12px/1 ui-monospace,SFMono-Regular,Menlo,monospace;
  font-variant-numeric:tabular-nums;
  color:#6e5722;
}

/* ---------- caption ---------- */
.fc-caption{
  position:relative;z-index:2;
  margin:16px auto 0;
  text-align:center;
  font:500 12.5px/1.5 'Inter Tight',sans-serif;
  color:#7fa6cc;
}

/* ---------- mobile ---------- */
@media (max-width:760px){
  .fc-stage{padding:12px 2px 6px;overflow:hidden}
  .fc-stage .fc-light{inset:-60px 0 -20px 0}
  .fc-stage .fc-cone{left:-24px;width:260px;height:400px}
  .fc-tabs{flex-direction:column;align-items:stretch;gap:7px;padding:0 2px;margin-bottom:6px}
  .fc-tab{
    transform:none;text-align:left;
    clip-path:polygon(10px 0, 100% 0, 100% 100%, 0 100%);
    border-radius:8px 8px 8px 0;
    padding:12px 16px;
  }
  .fc-tab:hover{transform:none}
  .fc-tab[aria-pressed="true"]{transform:none}
  .fc-scene{
    grid-template-columns:minmax(0,1fr);
    gap:22px 0;
    padding-top:20px;
    min-height:0;
  }
  .fc-cabwrap{max-width:246px}
  .fc-slip{width:min(258px,96%)}
  .fc-drawer{height:74px}
  .fc-pull{margin:9px auto 7px;width:56px;height:10px}
  .fc-plate-tag{width:94px;font-size:9px;padding:4px 3px}
  .fc-wall{min-height:392px;margin-top:0}
  .fc-wallhint{top:6px}
  .fc-card{
    position:static;
    width:100%;
    margin:0 0 14px;
  }
  .fc-card.fc-pinned{transform:translateY(0) rotate(var(--fcrm,0deg)) scale(1)}
}

/* ---------- reduced motion ---------- */
@media (prefers-reduced-motion: reduce){
  .fc-stage *,
  .fc-stage *::before,
  .fc-stage *::after{
    animation:none !important;
    transition-duration:.01ms !important;
  }
  .fc-caret{animation:none;opacity:1}
}

/* ============================================================
   SCENE: fishbowl (gw-)
   ============================================================ */
.gw-stage{
  position:relative;
  width:100%;
  max-width:920px;
  margin:0 auto;
  padding:26px 8px 6px;
}
.gw-stage *{box-sizing:border-box}
.gw-sr{
  position:absolute;
  width:1px;height:1px;
  margin:-1px;padding:0;border:0;
  clip:rect(0 0 0 0);
  overflow:hidden;
  white-space:nowrap;
}
.gw-light{
  position:absolute;
  top:-46px;left:2%;
  width:46%;height:400px;
  background:radial-gradient(ellipse 60% 46% at 50% 22%, rgba(255,214,130,.17), rgba(255,205,110,.06) 48%, transparent 72%);
  pointer-events:none;
}
.gw-light-b{
  left:auto;right:0;
  width:40%;
  background:radial-gradient(ellipse 58% 44% at 50% 22%, rgba(255,214,130,.11), rgba(255,205,110,.04) 48%, transparent 72%);
}
.gw-scene{
  position:relative;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  min-height:330px;
}
.gw-overline{
  display:block;
  font-size:12px;
  font-weight:600;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:#c99b3f;
  margin-bottom:10px;
}
.gw-overline::before{
  content:"";
  display:inline-block;
  width:20px;height:2px;
  background:#b8821c;
  vertical-align:middle;
  margin-right:9px;
  border-radius:1px;
}
.gw-count{margin-bottom:12px}
.gw-num{
  display:block;
  font-size:60px;
  font-weight:800;
  line-height:1;
  color:#ffe7a8;
  font-variant-numeric:tabular-nums;
  text-shadow:0 0 36px rgba(255,190,80,.38);
}
.gw-num-after{
  color:#5ada99;
  text-shadow:0 0 36px rgba(53,208,127,.35);
}
.gw-count em{
  display:block;
  font-style:normal;
  font-size:12px;
  font-weight:600;
  letter-spacing:.15em;
  text-transform:uppercase;
  color:#9db8d6;
  margin-top:6px;
}
/* booth (left) */
.gw-booth{flex:0 0 auto;width:352px;position:relative}
.gw-boothset{display:flex;align-items:flex-end}
.gw-bowl{width:232px;flex:0 0 auto;display:block;margin-bottom:-12px}
.gw-slipLayer{
  opacity:0;
  transform:translateY(10px);
  transition:opacity .38s ease,transform .38s ease;
  transform-box:fill-box;
  transform-origin:center;
}
.gw-slipLayer.gw-on{opacity:1;transform:none}
/* tablet */
.gw-tablet{
  flex:0 0 auto;
  width:118px;
  margin-left:-16px;
  margin-bottom:8px;
  filter:drop-shadow(0 14px 12px rgba(0,0,0,.45));
}
.gw-tabscreen{
  background:linear-gradient(180deg,#122238,#0d1a2e);
  border:2px solid #2b3f5c;
  border-radius:9px;
  padding:10px 9px 9px;
}
.gw-tabscreen strong{
  display:block;
  font-size:13.5px;
  font-weight:800;
  letter-spacing:.03em;
  color:#ffe7a8;
  margin-bottom:7px;
}
.gw-tabline{
  display:block;
  height:7px;
  border-radius:3px;
  background:#1e3350;
  margin-bottom:6px;
}
.gw-tabline-short{width:70%}
.gw-tabbtn{
  display:block;
  text-align:center;
  background:linear-gradient(180deg,#f2cb6d,#c8922e);
  color:#241703;
  font-size:10.5px;
  font-weight:700;
  letter-spacing:.07em;
  text-transform:uppercase;
  padding:6px 0;
  border-radius:5px;
  margin-top:8px;
}
.gw-stage.gw-run .gw-tabbtn{animation:gwTabPulse 1.1s ease-in-out 2}
@keyframes gwTabPulse{
  0%,100%{box-shadow:0 0 0 0 rgba(255,215,130,0)}
  50%{box-shadow:0 0 18px 3px rgba(255,215,130,.55)}
}
.gw-tabstand{
  width:34px;height:22px;
  margin:0 auto;
  background:linear-gradient(180deg,#2b3f5c,#1a2a42);
  clip-path:polygon(22% 0,78% 0,100% 100%,0 100%);
}
/* flight lane (middle) */
.gw-flight{
  position:relative;
  flex:1 1 auto;
  align-self:center;
  height:190px;
  min-width:120px;
  margin-bottom:56px;
}
.gw-msg{
  position:absolute;
  top:44%;
  left:6%;
  width:30px;height:20px;
  border-radius:9px;
  background:linear-gradient(180deg,#ffe7a8,#e0ab39);
  opacity:0;
  box-shadow:0 4px 10px rgba(0,0,0,.35);
}
.gw-msg::after{
  content:"";
  position:absolute;
  left:5px;bottom:-5px;
  border:5px solid transparent;
  border-top-color:#e2ae3d;
  border-left-color:#e2ae3d;
  border-bottom-width:0;
}
.gw-msg i{
  position:absolute;
  top:8px;left:7px;
  width:4px;height:4px;
  border-radius:50%;
  background:#5c3d10;
  box-shadow:6px 0 0 #5c3d10,12px 0 0 #5c3d10;
}
.gw-flight.gw-go .gw-msg{
  animation:gwFlyX 1.15s linear both,gwFlyY 1.15s cubic-bezier(.4,.1,.6,.9) both;
}
.gw-flight.gw-go .gw-msg:nth-child(2){animation-delay:.34s}
.gw-flight.gw-go .gw-msg:nth-child(3){animation-delay:.68s}
.gw-flight.gw-go .gw-msg:nth-child(4){animation-delay:1.02s}
.gw-flight.gw-go .gw-msg:nth-child(5){animation-delay:1.36s}
.gw-flight.gw-go .gw-msg:nth-child(6){animation-delay:1.7s}
@keyframes gwFlyX{
  from{left:2%}
  to{left:84%}
}
@keyframes gwFlyY{
  0%{transform:translateY(48px);opacity:0}
  14%{opacity:1}
  48%{transform:translateY(-30px)}
  86%{opacity:1}
  100%{transform:translateY(36px);opacity:0}
}
.gw-flightlab{
  position:absolute;
  left:50%;bottom:6px;
  transform:translateX(-50%);
  width:100%;
  text-align:center;
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
  font-size:11px;
  letter-spacing:.06em;
  color:#7fa6cc;
  opacity:0;
  transition:opacity .7s ease;
  white-space:nowrap;
}
.gw-flight.gw-go .gw-flightlab,
.gw-stage.gw-done .gw-flightlab{opacity:.9}
/* after (right) */
.gw-after{flex:0 0 auto;width:292px;position:relative;text-align:left}
.gw-after .gw-count{margin-bottom:16px}
.gw-afterset{
  display:flex;
  align-items:flex-end;
  gap:22px;
}
/* calendar */
.gw-cal{
  position:relative;
  width:116px;
  flex:0 0 auto;
  filter:drop-shadow(0 14px 12px rgba(0,0,0,.45));
}
.gw-calbind{
  position:relative;
  height:13px;
  background:linear-gradient(180deg,#243a58,#182a44);
  border-radius:4px 4px 0 0;
}
.gw-calring{
  position:absolute;
  top:-7px;
  width:11px;height:13px;
  border:2.5px solid #c9a25a;
  border-radius:5px;
  background:transparent;
  z-index:2;
}
.gw-calring:nth-child(1){left:26%}
.gw-calring:nth-child(2){left:60%}
.gw-calbody{
  position:relative;
  perspective:340px;
  box-shadow:0 3px 0 #d8cdb4,0 6px 0 #bfb298;
  border-radius:0 0 5px 5px;
}
.gw-calpage,.gw-calflip{
  background:#f4eee0;
  border-radius:0 0 5px 5px;
  overflow:hidden;
}
.gw-calhead{
  display:block;
  background:linear-gradient(180deg,#a13a44,#8b2f3a);
  color:#ffdfc2;
  font-size:11px;
  font-weight:700;
  letter-spacing:.28em;
  text-indent:.28em;
  text-align:center;
  padding:4px 0;
}
.gw-calnum{
  display:block;
  text-align:center;
  font-size:44px;
  font-weight:800;
  line-height:1;
  color:#241b10;
  padding:12px 0 15px;
  font-variant-numeric:tabular-nums;
}
.gw-calflip{
  position:absolute;
  inset:0;
  opacity:0;
  transform-origin:50% 0;
  backface-visibility:hidden;
  pointer-events:none;
}
.gw-calflip.gw-flipping{animation:gwCalFlip .23s ease-in forwards}
@keyframes gwCalFlip{
  0%{opacity:1;transform:rotateX(0)}
  100%{opacity:0;transform:rotateX(-86deg) translateY(-6px)}
}
/* brass tally clicker */
.gw-clicker{
  flex:0 0 auto;
  width:104px;
  text-align:center;
  filter:drop-shadow(0 16px 14px rgba(0,0,0,.5));
}
.gw-clickbtn{
  display:block;
  width:26px;height:15px;
  margin:0 auto -3px;
  border-radius:5px 5px 2px 2px;
  background:linear-gradient(180deg,#f0d494,#b1832e);
  box-shadow:inset 0 -3px 4px rgba(80,50,10,.5);
}
.gw-clickbody{
  position:relative;
  width:104px;height:104px;
  border-radius:50%;
  background:radial-gradient(circle at 34% 28%,#f8e3ab,#dcae52 42%,#966922 76%,#5e3f11);
  box-shadow:inset 0 3px 6px rgba(255,240,200,.5),inset 0 -8px 14px rgba(40,24,4,.55);
}
.gw-clickwin{
  position:absolute;
  top:50%;left:50%;
  transform:translate(-50%,-50%);
  width:70px;height:32px;
  border-radius:5px;
  background:linear-gradient(180deg,#000 0,#1e1e1e 32%,#282828 50%,#1e1e1e 68%,#000 100%);
  border:1px solid rgba(0,0,0,.75);
  box-shadow:inset 0 0 6px rgba(0,0,0,.9),0 1px 0 rgba(255,240,200,.35);
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
  font-size:20px;
  font-weight:600;
  letter-spacing:7px;
  text-indent:7px;
  color:#f3ecd9;
  line-height:30px;
  text-align:center;
}
.gw-clickring{
  display:block;
  width:26px;height:24px;
  margin:-4px auto 0;
  border:5px solid #b1832e;
  border-radius:50%;
}
/* table */
.gw-table{
  position:relative;
  height:42px;
  margin-top:-6px;
  border-radius:3px;
  background:
    repeating-linear-gradient(90deg,rgba(0,0,0,0) 0 132px,rgba(0,0,0,.09) 132px 133.5px),
    linear-gradient(180deg,#7a5528 0,#5d3f1c 22%,#3c2812 62%,#271808 100%);
  box-shadow:inset 0 2px 0 rgba(255,222,150,.4),0 18px 30px -12px rgba(0,0,0,.7);
}
.gw-table::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:3px;
  background:radial-gradient(ellipse 42% 100% at 18% 0,rgba(255,214,130,.16),transparent 70%),
             radial-gradient(ellipse 34% 100% at 84% 0,rgba(255,214,130,.1),transparent 70%);
}
/* caption / controls */
.gw-caption{
  margin:26px 0 0;
  text-align:center;
  font-size:16.5px;
  color:#9db8d6;
  opacity:0;
  transform:translateY(8px);
  transition:opacity .7s ease,transform .7s ease;
}
.gw-caption b{color:#ffd98c;font-weight:700}
.gw-caption.gw-show{opacity:1;transform:none}
.gw-controls{text-align:center;margin-top:18px}
.gw-replay{
  display:inline-flex;
  align-items:center;
  gap:9px;
  min-height:44px;
  padding:10px 24px;
  background:transparent;
  border:1px solid rgba(232,181,63,.55);
  border-radius:8px;
  color:#ffd98c;
  font-family:inherit;
  font-size:14px;
  font-weight:600;
  letter-spacing:.05em;
  cursor:pointer;
  transition:background .25s ease,border-color .25s ease;
}
.gw-replay:hover,.gw-replay:focus-visible{
  background:rgba(232,181,63,.12);
  border-color:#e8b53f;
  outline:none;
}
.gw-replay i{font-size:16px}
.gw-honest{
  margin:14px 0 0;
  text-align:center;
  font-size:12.5px;
  letter-spacing:.04em;
  color:#7fa6cc;
  opacity:.85;
}
/* mobile */
@media (max-width:680px){
  .gw-stage{padding:16px 4px 4px}
  .gw-light{left:0;width:100%;top:-20px;height:300px}
  .gw-light-b{display:none}
  .gw-scene{
    flex-direction:column;
    align-items:center;
    gap:0;
  }
  .gw-booth,.gw-after{width:auto;max-width:100%;text-align:center}
  .gw-overline{margin-bottom:8px}
  .gw-overline::before{width:16px;margin-right:7px}
  .gw-num{font-size:46px}
  .gw-count{margin-bottom:10px}
  .gw-boothset{justify-content:center}
  .gw-bowl{width:200px}
  .gw-tablet{width:104px;margin-left:-12px}
  .gw-flight{
    width:200px;
    min-width:0;
    flex:0 0 auto;
    height:98px;
    margin:8px 0 18px;
    align-self:center;
  }
  .gw-flight.gw-go .gw-msg{
    animation-name:gwFlyXm,gwFlyYm;
  }
  .gw-flightlab{bottom:-4px;white-space:normal;width:170px}
  .gw-afterset{justify-content:center;gap:18px}
  .gw-after .gw-count{margin-bottom:12px}
  .gw-table{height:30px;margin-top:-4px}
  .gw-caption{font-size:15px;margin-top:20px}
}
@keyframes gwFlyXm{
  from{left:18%}
  to{left:58%}
}
@keyframes gwFlyYm{
  0%{transform:translateY(-8px);opacity:0}
  16%{opacity:1}
  74%{opacity:1}
  100%{transform:translateY(58px);opacity:0}
}

/* ============================================================
   SCENE: server (sb-)
   ============================================================ */
.sb-stage{position:relative;max-width:900px;margin:0 auto;padding:30px 8px 14px;}
.sb-stage::before{content:"";position:absolute;left:-60px;right:-60px;top:-50px;height:440px;background:radial-gradient(ellipse 58% 55% at 50% 28%,rgba(232,181,63,.13),rgba(232,181,63,.04) 46%,transparent 72%);pointer-events:none;}
.sb-scene{position:relative;padding-bottom:52px;}

/* --- browser window --- */
.sb-browser{position:relative;z-index:3;width:min(680px,94%);margin:0 auto;transform:rotate(-1.5deg);border-radius:14px;background:linear-gradient(180deg,#141f34,#0d1728);border:1px solid rgba(158,190,228,.17);box-shadow:0 34px 60px -18px rgba(2,6,14,.85),0 10px 24px rgba(2,6,14,.5),inset 0 1px 0 rgba(238,244,251,.06);}
.sb-tabbar{display:flex;align-items:flex-end;gap:12px;padding:10px 16px 0;}
.sb-dots{display:flex;gap:6px;padding-bottom:10px;}
.sb-dot{width:10px;height:10px;border-radius:50%;background:#e85d5d;}
.sb-dot:nth-child(2){background:#e8b53f;}
.sb-dot:nth-child(3){background:#35d07f;}
.sb-tab{display:flex;align-items:center;gap:8px;background:#0a1120;border:1px solid rgba(158,190,228,.14);border-bottom:none;border-radius:9px 9px 0 0;padding:8px 16px 9px;font-size:12.5px;font-weight:600;color:#9db8d6;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;}
.sb-fav{flex:none;width:9px;height:9px;background:linear-gradient(135deg,#ffe7a8,#b8821c);transform:rotate(45deg);border-radius:2px;box-shadow:0 0 6px rgba(232,181,63,.5);}
.sb-urlbar{display:flex;align-items:center;gap:10px;padding:8px 14px;background:#0a1120;border-bottom:1px solid rgba(158,190,228,.1);}
.sb-nav{display:flex;gap:8px;color:#42536b;font-size:13px;}
.sb-urlpill{flex:1;display:flex;align-items:center;gap:8px;background:#101c30;border:1px solid rgba(158,190,228,.12);border-radius:99px;padding:6px 14px;min-width:0;}
.sb-lock{color:#7fa6cc;font-size:13px;flex:none;transition:color .4s,text-shadow .4s,transform .3s;}
.sb-built .sb-lock{color:#e8b53f;text-shadow:0 0 10px rgba(232,181,63,.65);transform:scale(1.12);}
.sb-url{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;color:#7fa6cc;font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;animation:sbUrlPulse 1.7s ease-in-out infinite;}
.sb-built .sb-url{color:#ffd98c;font-style:normal;animation:none;}
@keyframes sbUrlPulse{0%,100%{opacity:1;}50%{opacity:.5;}}
.sb-live{flex:none;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9.5px;letter-spacing:.14em;font-weight:700;color:#35d07f;border:1px solid rgba(53,208,127,.4);background:rgba(53,208,127,.08);border-radius:99px;padding:3px 9px;opacity:0;transform:scale(.85);transition:opacity .5s,transform .5s;}
.sb-built .sb-live{opacity:1;transform:none;}

/* --- viewport / mini site --- */
.sb-viewport{padding:16px 16px 14px;background:radial-gradient(130% 110% at 50% 0%,#0f1b31,#081020 78%);min-height:256px;display:flex;flex-direction:column;gap:11px;transition:background .8s;}
.sb-v2 .sb-viewport{background:radial-gradient(130% 110% at 50% 0%,#0a1322,#04080f 80%);}
.sb-sec{opacity:0;transform:translateY(16px) scale(.98);transition:opacity .55s ease,transform .6s cubic-bezier(.2,.85,.3,1.08);}
.sb-sec.sb-in{opacity:1;transform:none;}

.sb-hero{position:relative;overflow:hidden;border-radius:10px;padding:18px 18px 16px;background:linear-gradient(140deg,#1b2842 0%,#0d1830 55%,#111f38 100%);border:1px solid rgba(232,181,63,.24);transition:background .8s,border-color .8s;}
.sb-hero::after{content:"";position:absolute;top:-40%;right:-8%;width:46%;height:180%;background:linear-gradient(115deg,transparent,rgba(232,181,63,.09) 45%,transparent 70%);transform:rotate(8deg);pointer-events:none;}
.sb-v2 .sb-hero{background:linear-gradient(140deg,#111b30 0%,#060d1b 60%,#0b1526 100%);border-color:rgba(232,181,63,.5);}
.sb-hero-eyebrow{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;letter-spacing:.24em;color:#b8821c;margin-bottom:6px;}
.sb-hero-title{font-size:25px;line-height:1.05;font-weight:800;letter-spacing:.005em;background:linear-gradient(100deg,#ffe7a8,#e8b53f 55%,#b8821c);-webkit-background-clip:text;background-clip:text;color:transparent;}
.sb-v2 .sb-hero-title{background:linear-gradient(100deg,#fff3cd,#ffd98c 50%,#e8b53f);-webkit-background-clip:text;background-clip:text;}
.sb-hero-sub{margin-top:5px;font-size:12.5px;color:#9db8d6;}
.sb-hero-cta{display:inline-block;margin-top:11px;background:linear-gradient(180deg,#f3c75a,#c8922a);color:#241703;font-weight:700;font-size:11.5px;letter-spacing:.02em;padding:7px 14px;border-radius:8px;box-shadow:0 3px 12px rgba(232,181,63,.3);}

.sb-stars{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border-radius:10px;padding:11px 14px;background:#0c1628;border:1px solid rgba(158,190,228,.1);transition:background .8s;}
.sb-v2 .sb-stars{background:#080f1d;}
.sb-starrow{color:#e8b53f;font-size:14px;letter-spacing:2.5px;text-shadow:0 0 12px rgba(232,181,63,.45);line-height:1;}
.sb-starmeta{font-size:11.5px;font-weight:600;color:#9db8d6;}
.sb-chips{display:flex;gap:6px;margin-left:auto;flex-wrap:wrap;}
.sb-chip{font-size:10.5px;font-weight:700;color:#ffd98c;background:rgba(232,181,63,.09);border:1px solid rgba(232,181,63,.26);padding:4px 10px;border-radius:99px;transition:opacity .6s,box-shadow .6s,background .6s,text-decoration-color .6s;text-decoration:line-through;text-decoration-color:transparent;}
.sb-chip-mute{color:#7fa6cc;background:rgba(127,166,204,.06);border-color:rgba(158,190,228,.18);}
.sb-v2 .sb-chip-mute{opacity:.3;text-decoration-color:#7fa6cc;}
.sb-v2 .sb-chip:not(.sb-chip-mute){background:rgba(232,181,63,.18);box-shadow:0 0 14px rgba(232,181,63,.28);}

.sb-hours{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10.5px;letter-spacing:.06em;color:#9db8d6;border-radius:10px;padding:10px 14px;background:#0c1628;border:1px solid rgba(158,190,228,.1);transition:background .8s;}
.sb-v2 .sb-hours{background:#080f1d;}
.sb-hr-fri{color:#241703;background:linear-gradient(180deg,#ffe7a8,#e8b53f);padding:4px 11px;border-radius:99px;font-weight:700;box-shadow:0 0 16px rgba(232,181,63,.35);}

/* --- composer --- */
.sb-composer{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#0e1829;border-top:1px solid rgba(158,190,228,.13);border-radius:0 0 14px 14px;}
.sb-input{flex:1;display:flex;align-items:center;min-height:40px;background:#101d33;border:1px solid rgba(158,190,228,.17);border-radius:99px;padding:6px 16px;font-size:13px;color:#eef4fb;min-width:0;box-shadow:inset 0 2px 6px rgba(2,6,14,.4);}
.sb-ph{color:#5c7796;display:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.sb-input.sb-empty .sb-ph{display:inline;}
.sb-typed{white-space:nowrap;overflow:hidden;}
.sb-caret{flex:none;width:2px;height:16px;border-radius:1px;background:#ffd98c;margin-left:3px;animation:sbCaret 1.05s steps(1) infinite;}
@keyframes sbCaret{50%{opacity:0;}}
.sb-send{flex:none;width:44px;height:44px;border-radius:50%;border:none;cursor:pointer;background:linear-gradient(180deg,#f3c75a,#c8922a);color:#241703;font-size:18px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(232,181,63,.35);transition:transform .15s,box-shadow .15s;font-family:inherit;}
.sb-send:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(232,181,63,.45);}
.sb-send:active{transform:translateY(0);}
.sb-send:focus-visible{outline:2px solid #ffe7a8;outline-offset:2px;}

/* --- 1U rack server --- */
.sb-server{position:absolute;left:50%;transform:translateX(-50%);bottom:0;z-index:2;width:min(780px,100%);height:66px;display:block;padding:0;margin:0;cursor:pointer;font-family:inherit;text-align:left;background:linear-gradient(180deg,#2d374a,#1a2231 46%,#131a27);border:1px solid #3a465e;border-radius:6px;box-shadow:0 16px 34px rgba(2,6,14,.7),inset 0 1px 0 rgba(238,244,251,.12),inset 0 -3px 8px rgba(0,0,0,.45);}
.sb-server::before{content:"";position:absolute;inset:0;border-radius:6px;background:repeating-linear-gradient(90deg,rgba(255,255,255,.022) 0 1px,transparent 1px 3px);pointer-events:none;}
.sb-server:hover,.sb-server:focus-visible,.sb-server.sb-tag-open{z-index:5;}
.sb-server:focus-visible{outline:2px solid #ffe7a8;outline-offset:3px;}
.sb-srv-row{display:flex;align-items:center;gap:16px;height:100%;padding:0 40px;}
.sb-srv-ear{position:absolute;top:7px;bottom:7px;width:18px;background:linear-gradient(180deg,#232d3f,#151d2b);border:1px solid #334057;border-radius:3px;display:flex;flex-direction:column;justify-content:space-between;align-items:center;padding:7px 0;}
.sb-srv-ear-l{left:6px;}
.sb-srv-ear-r{right:6px;}
.sb-screw{width:6px;height:6px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#51617d,#141b28);box-shadow:inset 0 -1px 1px rgba(0,0,0,.7);}
.sb-vents{flex:none;width:112px;height:32px;border-radius:3px;background:repeating-linear-gradient(90deg,#070c14 0 3px,#27324b 3px 7px);box-shadow:inset 0 2px 5px rgba(0,0,0,.8);}
.sb-plate{flex:1;min-width:0;text-align:center;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9.5px;letter-spacing:.18em;color:#8fa5c4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:linear-gradient(180deg,#202a3b,#171f2e);border:1px solid rgba(0,0,0,.55);border-radius:4px;padding:7px 10px;box-shadow:inset 0 1px 3px rgba(0,0,0,.55),0 1px 0 rgba(255,255,255,.06);text-shadow:0 1px 0 rgba(0,0,0,.8);}
.sb-leds{flex:none;display:flex;gap:10px;align-items:center;}
.sb-led{width:9px;height:9px;border-radius:50%;background:#3a2f12;box-shadow:inset 0 0 2px rgba(0,0,0,.6);}
.sb-led1{animation:sbBlink .85s ease-in-out infinite;}
.sb-led2{animation:sbBlink .85s ease-in-out .42s infinite;}
@keyframes sbBlink{0%,100%{background:#3a2f12;box-shadow:inset 0 0 2px rgba(0,0,0,.6);}50%{background:#e8b53f;box-shadow:0 0 9px rgba(232,181,63,.85);}}
.sb-built .sb-led1{animation:none;background:#35d07f;box-shadow:0 0 9px rgba(53,208,127,.8);}
.sb-built .sb-led2{animation:none;background:#ffd98c;box-shadow:0 0 9px rgba(232,181,63,.85);}

.sb-srv-tag{position:absolute;right:14px;bottom:calc(100% + 12px);background:#101d33;border:1px solid rgba(232,181,63,.4);color:#ffd98c;font-size:11.5px;font-weight:600;letter-spacing:.01em;padding:9px 14px;border-radius:9px;box-shadow:0 12px 28px rgba(2,6,14,.65);opacity:0;transform:translateY(7px);transition:opacity .3s,transform .3s;pointer-events:none;white-space:nowrap;}
.sb-srv-tag::after{content:"";position:absolute;right:26px;top:100%;border:6px solid transparent;border-top-color:rgba(232,181,63,.4);}
.sb-server:hover .sb-srv-tag,.sb-server:focus-visible .sb-srv-tag,.sb-server.sb-tag-open .sb-srv-tag{opacity:1;transform:none;}

.sb-glow{position:absolute;left:50%;transform:translateX(-50%);bottom:-16px;width:72%;height:36px;border-radius:50%;background:radial-gradient(50% 50% at 50% 50%,rgba(232,181,63,.55),rgba(232,181,63,.14) 58%,transparent 78%);filter:blur(11px);opacity:0;transition:opacity 1.4s ease;z-index:1;pointer-events:none;}
.sb-built .sb-glow{opacity:1;}

/* --- mobile --- */
@media (max-width:640px){
  .sb-stage{padding:18px 0 10px;}
  .sb-stage::before{left:0;right:0;}
  .sb-scene{padding-bottom:0;}
  .sb-browser{width:100%;transform:none;}
  .sb-nav{display:none;}
  .sb-tabbar{padding:9px 12px 0;}
  .sb-urlbar{padding:8px 10px;}
  .sb-viewport{min-height:198px;padding:12px;gap:9px;}
  .sb-hero{padding:14px;}
  .sb-hero-title{font-size:19px;}
  .sb-hero-sub{font-size:11.5px;}
  .sb-chips{margin-left:0;width:100%;}
  .sb-hours{gap:7px;font-size:9.5px;padding:9px 11px;}
  .sb-composer{padding:8px 10px;}
  .sb-server{position:relative;left:0;transform:none;width:100%;height:56px;margin-top:14px;}
  .sb-srv-row{padding:0 28px;gap:7px;}
  .sb-vents{width:36px;height:26px;}
  .sb-plate{font-size:7.5px;letter-spacing:.03em;padding:6px 4px;}
  .sb-srv-tag{left:10px;right:10px;white-space:normal;text-align:center;}
  .sb-srv-tag::after{right:50%;margin-right:-6px;}
  .sb-glow{bottom:-12px;height:26px;}
}

/* --- reduced motion --- */
@media (prefers-reduced-motion:reduce){
  .sb-sec{transition:none;}
  .sb-viewport,.sb-hero,.sb-stars,.sb-hours,.sb-chip,.sb-glow,.sb-lock,.sb-live,.sb-srv-tag{transition:none;}
  .sb-caret{animation:none;opacity:0;}
  .sb-url{animation:none;}
  .sb-led1,.sb-led2{animation:none;}
}

/* ============================================================
   SCENE: envelope (ev-)  hand-built lean version
   ============================================================ */
.ev-stage{max-width:760px;margin:2.2rem auto 0;}
.ev-scene{position:relative;padding:2.6rem 1rem 3.2rem;}
.ev-lamp{
  position:absolute;inset:-30px 0 0;pointer-events:none;
  background:radial-gradient(60% 65% at 50% 30%, rgba(255,200,120,.13), transparent 70%);
}
.ev-env{position:relative;max-width:560px;margin:0 auto;aspect-ratio:8/5;perspective:1400px;}
.ev-flipbtn{
  all:unset;position:absolute;inset:0;z-index:5;cursor:pointer;border-radius:10px;
}
.ev-flipbtn:focus-visible{outline:2px solid #7fc1ff;outline-offset:4px;}
.ev-inner{
  position:absolute;inset:0;transform-style:preserve-3d;
  transition:transform .9s cubic-bezier(.4,.1,.2,1);
}
.ev-stage.ev-flipped .ev-inner{transform:rotateY(180deg);}
.ev-face{
  position:absolute;inset:0;backface-visibility:hidden;border-radius:10px;overflow:visible;
  box-shadow:0 30px 70px rgba(0,0,0,.55);
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
}
.ev-shared{background:linear-gradient(160deg,#d9c9a3,#c4b189 70%,#b8a57e);}
.ev-clean{background:linear-gradient(160deg,#efe6cf,#e3d6b6 70%,#dccfae);transform:rotateY(180deg);}
.ev-grain{
  position:absolute;inset:0;border-radius:10px;pointer-events:none;opacity:.5;
  background:repeating-linear-gradient(93deg, transparent 0 3px, rgba(120,95,50,.05) 3px 4px);
}
.ev-smudge{position:absolute;border-radius:50%;background:radial-gradient(circle, rgba(60,50,35,.25), transparent 70%);}
.ev-smudge.s1{width:60px;height:34px;left:14%;bottom:16%;transform:rotate(-12deg);}
.ev-smudge.s2{width:42px;height:26px;right:22%;top:12%;}
.ev-return{
  position:absolute;top:7%;left:5%;font-size:clamp(.55rem,1.8vw,.72rem);color:#4a3c26;line-height:1.5;
}
.ev-return.gold{color:#6b5316;font-weight:700;}
.ev-addr{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-46%);
  font-size:clamp(.7rem,2.4vw,.95rem);color:#33291a;line-height:1.7;letter-spacing:.04em;
}
.ev-postmark{
  all:unset;position:absolute;top:6%;right:26%;z-index:6;cursor:pointer;
  width:clamp(74px,17vw,96px);height:clamp(74px,17vw,96px);border-radius:50%;
  border:2px dashed rgba(74,60,38,.65);color:#4a3c26;
  font:700 clamp(.42rem,1.3vw,.55rem)/1.5 ui-monospace,Menlo,monospace;
  display:flex;align-items:center;justify-content:center;text-align:center;
  transform:rotate(8deg);letter-spacing:.08em;
}
.ev-postmark:focus-visible{outline:2px solid #7fc1ff;outline-offset:2px;}
.ev-postmark.clean{border-color:rgba(107,83,22,.6);color:#6b5316;cursor:default;}
.ev-stamp{
  position:absolute;padding:.35em .7em;border:3px double currentColor;border-radius:4px;
  font:900 clamp(1.1rem,4vw,1.7rem)/1 'Inter Tight',sans-serif;letter-spacing:.14em;
  transform:rotate(-14deg) scale(0);opacity:0;
  transition:transform .18s cubic-bezier(.2,1.6,.4,1), opacity .12s ease;
  mix-blend-mode:multiply;
}
.ev-spam{right:8%;bottom:12%;color:#a32222;}
.ev-inbox{right:8%;bottom:12%;color:#1c7a44;transform:rotate(-10deg) scale(0);}
.ev-stage.ev-slam1 .ev-spam,.ev-stage.ev-slam2 .ev-inbox{transform:rotate(-14deg) scale(1);opacity:.92;}
.ev-stage.ev-slam2 .ev-inbox{transform:rotate(-10deg) scale(1);}
.ev-seal{
  position:absolute;left:12%;bottom:12%;width:46px;height:46px;border-radius:50%;
  background:radial-gradient(circle at 36% 30%, #ffcf7d, #e8b53f 45%, #9c6f18 90%);
  box-shadow:inset 0 -4px 8px rgba(90,60,10,.5), 0 4px 12px rgba(0,0,0,.35);
}
.ev-seal::after{
  content:"S";position:absolute;inset:0;display:grid;place-items:center;
  font:900 1.2rem 'Inter Tight',sans-serif;color:#7a5410;
}
.ev-poollist{
  position:absolute;z-index:7;top:32%;right:8%;width:min(230px,60%);
  background:#182a44;border:1px solid rgba(157,184,214,.35);border-radius:10px;
  padding:.7rem .9rem;font:500 .72rem/1.7 'Inter Tight',sans-serif;color:#b9cde6;
  box-shadow:0 20px 44px rgba(0,0,0,.6);
}
.ev-poollist b{display:block;color:#eef4fb;font-size:.68rem;margin-bottom:.3rem;}
.ev-poollist span{display:block;color:#8ba7c7;}
.ev-poollist .you{color:#ffd98c;font-weight:800;}
.ev-tag{
  position:absolute;font:500 .62rem/1.45 'Inter Tight',sans-serif;color:#7fa6cc;
  width:150px;
}
.ev-tag i{display:block;height:1px;background:rgba(127,166,204,.45);margin-bottom:.35rem;}
.ev-tag1{left:-160px;top:9%;text-align:right;}
.ev-tag1 i{width:100%;}
.ev-tag2{right:-160px;top:14%;}
.ev-plate{
  position:absolute;right:6%;bottom:.4rem;
  padding:.32rem .8rem;border-radius:4px;
  background:linear-gradient(180deg,#e8b53f,#b8821c);color:#3d2c07;
  font:800 .6rem 'Inter Tight',sans-serif;letter-spacing:.18em;
  box-shadow:0 4px 10px rgba(0,0,0,.4), inset 0 1px 0 rgba(255,240,200,.6);
}
.ev-switch{display:flex;justify-content:center;gap:.6rem;margin-top:.6rem;flex-wrap:wrap;}
.ev-sw{
  all:unset;cursor:pointer;padding:.55rem 1.1rem;border-radius:8px;
  border:1px solid rgba(157,184,214,.25);color:#7fa6cc;
  font:700 .72rem 'Inter Tight',sans-serif;letter-spacing:.1em;text-transform:uppercase;
  background:rgba(21,39,65,.5);min-height:24px;
}
.ev-sw.on{border-color:rgba(232,181,63,.6);color:#ffd98c;background:rgba(232,181,63,.1);}
.ev-sw:focus-visible{outline:2px solid #7fc1ff;outline-offset:2px;}
@media(max-width:1100px){
  .ev-tag1,.ev-tag2{position:static;width:auto;text-align:left;display:block;margin:0;}
  .ev-tags-mobile{max-width:560px;margin:.9rem auto 0;display:flex;flex-direction:column;gap:.5rem;padding:0 .4rem;}
}
@media(min-width:1101px){.ev-tags-mobile{display:none;}}
@media(prefers-reduced-motion:reduce){
  .ev-inner{transition:none;}
  .ev-stamp{transition:none;}
}

/* ============================================================
   tw2- : the two-jobs frame   |   rt- : the machines router
   ============================================================ */
.rt-list{max-width:720px;margin:2.2rem auto 0;display:flex;flex-direction:column;gap:.6rem;}
.rt-row{
  display:flex;align-items:baseline;gap:1rem;padding:1rem 1.2rem;border-radius:14px;
  background:linear-gradient(180deg,rgba(30,22,14,.5),rgba(16,12,8,.8));
  border:1px solid rgba(230,176,110,.2);text-decoration:none;
  transition:border-color .2s ease, transform .2s ease;
}
.rt-row:hover{border-color:rgba(255,176,90,.55);transform:translateX(4px);}
.rt-row b{flex:0 0 auto;font-size:.98rem;font-weight:800;color:#ffd9a8;}
.rt-row span{flex:1;font-size:.85rem;color:rgba(233,216,196,.7);line-height:1.4;min-width:0;}
.rt-row i{flex:0 0 auto;color:#ffb05a;font-size:1rem;align-self:center;}
@media(max-width:600px){
  .rt-row{flex-wrap:wrap;gap:.2rem .6rem;}
  .rt-row span{flex-basis:100%;}
  .rt-row i{margin-left:auto;}
}
@media(prefers-reduced-motion:reduce){.rt-row{transition:none;}.rt-row:hover{transform:none;}}

/* ============================================================
   lbk- : the leaky bucket   |   scl- : the balance scale
   ============================================================ */
.lbk{max-width:600px;margin:2.4rem auto 0;text-align:center;}
.lbk-svg{width:100%;height:auto;display:block;overflow:visible;}
.lbk-lab{fill:rgba(233,216,196,.82);font-family:inherit;font-size:13px;font-weight:600;letter-spacing:.01em;}
.lbk-drop{transform-box:fill-box;transform-origin:center top;}
.lbk-drop.d1{animation:lbkDrip 2.6s ease-in .0s infinite;}
.lbk-drop.d2{animation:lbkDrip 2.6s ease-in .8s infinite;}
.lbk-drop.d3{animation:lbkDrip 2.6s ease-in 1.6s infinite;}
@keyframes lbkDrip{
  0%{transform:translateY(0) scale(.6);opacity:0;}
  12%{opacity:1;}
  70%{opacity:1;}
  100%{transform:translateY(72px) scale(1);opacity:0;}
}
.lbk-cap{margin-top:.4rem;font-size:.92rem;font-style:italic;color:rgba(233,216,196,.7);}

.scl{max-width:600px;margin:2.4rem auto 0;}
.scl-svg{width:100%;height:auto;display:block;overflow:visible;}
.scl-swing{transform-box:view-box;transform-origin:320px 104px;animation:sclSway 6.5s ease-in-out infinite;}
@keyframes sclSway{0%,100%{transform:rotate(-1.3deg);}50%{transform:rotate(1.3deg);}}
.scl-hands{transform-box:view-box;transform-origin:156px 180px;animation:sclTick 9s linear infinite;}
@keyframes sclTick{to{transform:rotate(360deg);}}
.scl-labels{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;max-width:540px;margin:.4rem auto 0;}
.scl-lab{text-align:center;padding:0 .6rem;}
.scl-lab b{display:block;font-size:1.12rem;font-weight:800;letter-spacing:-.01em;}
.scl-time b{color:#9fd0ff;}
.scl-money b{color:#ffd9a8;}
.scl-lab span{display:block;margin-top:.3rem;font-size:.9rem;line-height:1.45;color:rgba(233,216,196,.75);}
@media(max-width:560px){
  .scl-labels{gap:1rem;}
  .scl-lab b{font-size:1rem;}
  .scl-lab span{font-size:.84rem;}
  .lbk-lab{font-size:15px;}
}
@media(prefers-reduced-motion:reduce){
  .lbk-drop.d1,.lbk-drop.d2,.lbk-drop.d3{animation:none;opacity:.9;}
  .scl-swing{animation:none;}
  .scl-hands{animation:none;}
}

/* ============================================================
   cr- : call recorder (Shmello #calls)
   ============================================================ */
.cr{max-width:600px;margin:2.2rem auto 0;}
.cr-panel{
  border-radius:16px;padding:1.1rem 1.2rem 1rem;
  background:linear-gradient(180deg,rgba(15,22,34,.9),rgba(9,14,24,.96));
  border:1px solid rgba(127,166,204,.2);box-shadow:0 18px 40px rgba(0,0,0,.45);
}
.cr-top{display:flex;align-items:center;gap:.7rem;font-size:.78rem;font-weight:700;color:#9db8d6;}
.cr-rec{display:inline-flex;align-items:center;gap:.4rem;color:#ff8f8f;font-weight:900;letter-spacing:.1em;}
.cr-dot{width:9px;height:9px;border-radius:50%;background:#ff5b5b;box-shadow:0 0 8px #ff5b5b;animation:crBlink 1.4s steps(1) infinite;}
@keyframes crBlink{0%,60%{opacity:1;}61%,100%{opacity:.25;}}
.cr-caller{display:inline-flex;align-items:center;gap:.35rem;color:#cfe4ff;font-weight:600;}
.cr-caller i{color:#7fc1ff;}
.cr-time{margin-left:auto;font-variant-numeric:tabular-nums;color:#7fa6cc;font-weight:800;}
.cr-wave{position:relative;display:flex;align-items:center;gap:2px;height:68px;margin:.9rem 0 .8rem;overflow:hidden;}
.cr-wave i{flex:1 1 0;min-width:0;border-radius:2px;background:linear-gradient(180deg,#7fc1ff,#1b8df6);opacity:.85;transform-origin:center;animation:crWave 1.1s ease-in-out infinite;}
@keyframes crWave{0%,100%{transform:scaleY(.42);}50%{transform:scaleY(1);}}
.cr-head{position:absolute;top:0;bottom:0;width:2px;background:rgba(230,200,120,.9);box-shadow:0 0 10px rgba(230,200,120,.8);left:0;animation:crHead 5.5s linear infinite;}
@keyframes crHead{0%{left:0;}100%{left:100%;}}
.cr-foot{display:flex;align-items:center;justify-content:center;gap:.7rem;flex-wrap:wrap;padding-top:.7rem;border-top:1px solid rgba(127,166,204,.14);}
.cr-use{display:inline-flex;align-items:center;gap:.4rem;font-size:.82rem;font-weight:600;color:#c4d6ee;}
.cr-use i{color:#7fe0a8;}
.cr-sep{width:1px;height:14px;background:rgba(127,166,204,.25);}
@media(max-width:560px){
  .cr-foot{gap:.5rem;}
  .cr-use{font-size:.76rem;}
  .cr-sep{display:none;}
}
@media(prefers-reduced-motion:reduce){
  .cr-dot,.cr-wave i,.cr-head{animation:none;}
  .cr-wave i{transform:scaleY(.8);}
}

/* leaky-bucket problem: copy beside the bucket, punch as full-width closer */
.lbk-split{display:grid;grid-template-columns:1fr minmax(280px,460px);gap:clamp(1.6rem,4vw,3.4rem);align-items:center;max-width:1080px;margin:0 auto;}
.lbk-copy{max-width:none;}
.lbk-copy h2{margin-top:0;}
.lbk-split .lbk{margin:0;max-width:none;width:100%;}
.lbk-punch{text-align:center;max-width:780px;margin:2.8rem auto 0;}
@media(max-width:860px){
  .lbk-split{grid-template-columns:1fr;gap:1.4rem;}
  .lbk-split .lbk{max-width:520px;margin:0 auto;}
  .lbk-punch{margin-top:2rem;}
}
