/* ============================================================
   CARPCORE — carpcore-footer.css
   "CarpOS Taskbar" — the bottom bar of the desktop OS.
   Same design DNA as the header, different object. Flat solid fills only.
   ============================================================ */

#carpcore-footer {
  --cft-bg:       var(--color-background);
  --cft-bg2:      var(--color-brand-paper-dark);
  --cft-ink:      var(--color-foreground);
  --cft-navy:     var(--color-brand-navy);
  --cft-coral:    var(--color-brand-coral);
  --cft-cerulean: var(--color-brand-cerulean);
  --cft-teal:     var(--color-brand-teal);
  --cft-lime:     var(--color-brand-lime);
  --cft-pink:     var(--color-brand-pink);
  --cft-purple:   var(--color-brand-grape);
  --cft-butter:   var(--color-brand-butter);
  --cft-mint:     var(--color-brand-mint);
  --cft-screen:   var(--color-brand-black);
  --cft-font-h:   var(--font-heading--family,    'Mochiy Pop P One', sans-serif);
  --cft-font-s:   var(--font-subheading--family, 'Dela Gothic One',  sans-serif);
  --cft-font-b:   var(--font-body--family,       'Nunito',           sans-serif);
  --cft-mono:     'VT323', monospace;

  position: relative;
  width: 100%;
}

@keyframes cft-bgBreath   { 0%,100%{background:var(--color-background)} 50%{background:var(--color-brand-paper-dark)} }
@keyframes cft-ghostDrift { from{transform:translateX(0);opacity:.6} to{transform:translateX(-14px);opacity:1} }
@keyframes cft-blink      { 0%,100%{opacity:1} 50%{opacity:.2} }
@keyframes cft-pipCascade { 0%,100%{transform:scale(1)} 50%{transform:scale(1.6);opacity:1} }
@keyframes cft-batWave    { 0%,100%{transform:scaleY(1)} 50%{transform:scaleY(1.45)} }
@keyframes cft-phrase     { 0%{opacity:0;transform:translateY(5px)} 5%{opacity:1;transform:translateY(0)} 22%{opacity:1;transform:translateY(0)} 27%{opacity:0;transform:translateY(-5px)} 100%{opacity:0} }
@keyframes cft-tick       { from{transform:translateX(0)} to{transform:translateX(-50%)} }
@keyframes cft-ulBreath   { 0%,100%{background:var(--color-brand-coral);transform:scaleX(.78)} 50%{background:var(--color-brand-butter);transform:scaleX(.62)} }

/* ════════════════════ DESKTOP STRIP ════════════════════ */
.cft-desktop {
  position: relative;
  overflow: hidden;
  background: var(--cft-bg);
  border-top: 1.5px solid rgb(var(--color-foreground-rgb) / .14);
  padding: 30px 28px 26px;
  animation: cft-bgBreath 12s ease-in-out infinite;
}

.cft-wall {
  position: absolute;
  top: -22px; right: -6px;
  font-family: var(--cft-font-h);
  font-size: 8.5rem;
  line-height: 1;
  color: rgb(var(--color-brand-navy-rgb) / .045);
  letter-spacing: .04em;
  pointer-events: none;
  user-select: none;
  white-space: nowrap;
  z-index: 0;
  animation: cft-ghostDrift 10s ease-in-out infinite alternate;
}

.cft-desk {
  position: relative;
  z-index: 1;
  max-width: 1360px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  flex-wrap: wrap;
}

/* ── Brand plaque ── */
.cft-plaque { display: flex; flex-direction: column; gap: 8px; min-width: 0; max-width: 460px; }
.cft-plaque-logo { text-decoration: none; display: inline-block; }
.cft-plaque-name { font-family: var(--cft-font-h); font-size: clamp(1.5rem, 2.4vw, 2.4rem); color: var(--cft-navy); letter-spacing: .03em; line-height: 1; }
.cft-plaque-tag  { font-family: var(--cft-font-b); font-size: .82rem; line-height: 1.45; color: rgb(var(--color-foreground-rgb) / .62); margin: 0; max-width: 42ch; }

/* ── Desktop shortcut icons ── */
.cft-shortcuts { display: flex; gap: 6px; flex-wrap: wrap; }
.cft-shortcut {
  display: flex; flex-direction: column; align-items: center; gap: 7px;
  width: 92px; padding: 8px 6px; border-radius: 5px;
  text-decoration: none; cursor: pointer;
}
.cft-shortcut-ico {
  width: 48px; height: 48px; display: grid; place-items: center;
  background: var(--cft-bg);
  border-radius: 7px;
  color: var(--c, var(--cft-navy));
  box-shadow:
    inset 1.5px 1.5px 0 rgb(var(--color-brand-white-rgb) / .75),
    inset -1.5px -1.5px 0 rgb(var(--color-foreground-rgb) / .22),
    0 3px 5px rgb(var(--color-foreground-rgb) / .14);
  transition: transform .12s, box-shadow .12s;
}
.cft-shortcut-ico svg { width: 25px; height: 25px; }
.cft-shortcut-lbl {
  font-family: var(--cft-font-s);
  font-size: .58rem; letter-spacing: .05em; text-transform: uppercase;
  color: var(--cft-ink); line-height: 1.15; text-align: center;
  padding: 2px 5px; border: 1px dotted transparent; border-radius: 2px;
}
.cft-shortcut:hover .cft-shortcut-ico,
.cft-shortcut:focus-visible .cft-shortcut-ico { transform: translateY(-3px); box-shadow: inset 1.5px 1.5px 0 rgb(var(--color-brand-white-rgb) / .85), inset -1.5px -1.5px 0 rgb(var(--color-foreground-rgb) / .28), 0 7px 12px rgb(var(--color-foreground-rgb) / .2); }
.cft-shortcut:hover .cft-shortcut-lbl,
.cft-shortcut:focus-visible .cft-shortcut-lbl { background: var(--cft-navy); color: var(--cft-bg); border-color: rgb(var(--color-brand-white-rgb) / .45); }
.cft-shortcut:focus-visible { outline: none; }

/* ════════════════════ TASKBAR ════════════════════ */
.cft-bar {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px 12px;
  min-height: 56px;
  background: var(--cft-bg2);
  border-top: 2px solid rgb(var(--color-brand-white-rgb) / .55);
  box-shadow: 0 -1px 0 rgb(var(--color-foreground-rgb) / .28), inset 0 -3px 0 rgb(var(--color-foreground-rgb) / .10);
}

/* ── START button ── */
.cft-start {
  display: flex; align-items: center; gap: 9px;
  padding: 0 18px; min-height: 42px;
  border: none; border-radius: 6px; cursor: pointer;
  font-family: var(--cft-font-s); color: var(--color-brand-white);
  background: var(--cft-cerulean);
  box-shadow: 0 -1px 0 rgb(var(--color-brand-white-rgb) / .3) inset, 1px 0 0 rgb(var(--color-brand-white-rgb) / .12) inset, 0 4px 0 var(--color-brand-cerulean-deep), 0 6px 9px rgb(var(--color-brand-cerulean-deep-rgb) / .45);
  transition: transform .08s, box-shadow .08s, background .08s;
  flex-shrink: 0;
}
.cft-start-logo { display: inline-flex; }
.cft-start-logo svg { width: 19px; height: 19px; stroke: rgb(var(--color-brand-white-rgb) / .95); filter: drop-shadow(0 1px 1px rgb(var(--color-brand-black-rgb) / .25)); }
.cft-start-lbl { font-size: .82rem; letter-spacing: .1em; text-shadow: 0 1px 2px rgb(var(--color-brand-black-rgb) / .28); }
.cft-start:hover { background: var(--color-brand-cerulean-light); transform: translateY(-1px); box-shadow: 0 -1px 0 rgb(var(--color-brand-white-rgb) / .4) inset, 1px 0 0 rgb(var(--color-brand-white-rgb) / .18) inset, 0 5px 0 var(--color-brand-cerulean-deep), 0 9px 15px rgb(var(--color-brand-cerulean-deep-rgb) / .5); }
.cft-start:active,
.cft--menu-open .cft-start { transform: translateY(3px); background: var(--color-brand-cerulean-light); box-shadow: 0 -1px 0 rgb(var(--color-brand-white-rgb) / .15) inset, 0 1px 0 var(--color-brand-cerulean-deep), 0 2px 4px rgb(var(--color-brand-cerulean-deep-rgb) / .4); }
.cft-start:focus-visible { outline: 2px solid var(--cft-navy); outline-offset: 2px; }

/* ── Quick-launch cells ── */
.cft-quick { display: flex; gap: 6px; }
.cft-cell {
  display: flex; align-items: center; gap: 7px;
  padding: 0 13px; min-height: 42px;
  border: none; border-radius: 6px; cursor: pointer; text-decoration: none;
  font-family: var(--cft-font-s);
  transition: transform .08s, box-shadow .08s, background .08s;
}
.cft-cell svg { width: 16px; height: 16px; stroke: rgb(var(--color-brand-white-rgb) / .95); filter: drop-shadow(0 1px 1px rgb(var(--color-brand-black-rgb) / .2)); flex-shrink: 0; }
.cft-cell-lbl { font-size: .66rem; letter-spacing: .06em; text-transform: uppercase; color: rgb(var(--color-brand-white-rgb) / .95); text-shadow: 0 1px 2px rgb(var(--color-brand-black-rgb) / .22); }
.cft-cell:focus-visible { outline: 2px solid var(--cft-navy); outline-offset: 2px; }

.cft-cell--search  { background: var(--cft-teal);   box-shadow: 0 -1px 0 rgb(var(--color-brand-white-rgb) / .25) inset, 1px 0 0 rgb(var(--color-brand-white-rgb) / .1) inset, 0 4px 0 var(--color-brand-teal-deep), 0 6px 8px rgb(var(--color-brand-teal-deep-rgb) / .45); }
.cft-cell--account { background: var(--cft-purple); box-shadow: 0 -1px 0 rgb(var(--color-brand-white-rgb) / .25) inset, 1px 0 0 rgb(var(--color-brand-white-rgb) / .1) inset, 0 4px 0 var(--color-brand-grape-deep), 0 6px 8px rgb(var(--color-brand-grape-deep-rgb) / .45); }
.cft-cell--cart    { background: var(--cft-coral);  box-shadow: 0 -1px 0 rgb(var(--color-brand-white-rgb) / .25) inset, 1px 0 0 rgb(var(--color-brand-white-rgb) / .1) inset, 0 4px 0 var(--color-brand-coral-deep), 0 6px 8px rgb(var(--color-brand-coral-deep-rgb) / .45); }
.cft-cell--search:hover  { background: var(--color-brand-teal-light); transform: translateY(-1px); box-shadow: 0 -1px 0 rgb(var(--color-brand-white-rgb) / .35) inset, 1px 0 0 rgb(var(--color-brand-white-rgb) / .15) inset, 0 5px 0 var(--color-brand-teal-deep), 0 9px 14px rgb(var(--color-brand-teal-deep-rgb) / .5); }
.cft-cell--account:hover { background: var(--color-brand-grape-light); transform: translateY(-1px); box-shadow: 0 -1px 0 rgb(var(--color-brand-white-rgb) / .35) inset, 1px 0 0 rgb(var(--color-brand-white-rgb) / .15) inset, 0 5px 0 var(--color-brand-grape-deep), 0 9px 14px rgb(var(--color-brand-grape-deep-rgb) / .5); }
.cft-cell--cart:hover    { background: var(--color-brand-coral-light); transform: translateY(-1px); box-shadow: 0 -1px 0 rgb(var(--color-brand-white-rgb) / .35) inset, 1px 0 0 rgb(var(--color-brand-white-rgb) / .15) inset, 0 5px 0 var(--color-brand-coral-deep), 0 9px 14px rgb(var(--color-brand-coral-deep-rgb) / .5); }
.cft-cell--search:active  { transform: translateY(3px); box-shadow: 0 -1px 0 rgb(var(--color-brand-white-rgb) / .15) inset, 0 1px 0 var(--color-brand-teal-deep), 0 2px 4px rgb(var(--color-brand-teal-deep-rgb) / .4); }
.cft-cell--account:active { transform: translateY(3px); box-shadow: 0 -1px 0 rgb(var(--color-brand-white-rgb) / .15) inset, 0 1px 0 var(--color-brand-grape-deep), 0 2px 4px rgb(var(--color-brand-grape-deep-rgb) / .4); }
.cft-cell--cart:active    { transform: translateY(3px); box-shadow: 0 -1px 0 rgb(var(--color-brand-white-rgb) / .15) inset, 0 1px 0 var(--color-brand-coral-deep), 0 2px 4px rgb(var(--color-brand-coral-deep-rgb) / .4); }

.cft-spacer { flex: 1; min-width: 8px; }

/* ── System tray (sunken) ── */
.cft-tray {
  display: flex; align-items: center; gap: 10px;
  padding: 5px 11px; border-radius: 5px;
  background: rgb(var(--color-foreground-rgb) / .05);
  box-shadow: inset 1.5px 1.5px 2px rgb(var(--color-foreground-rgb) / .22), inset -1.5px -1.5px 0 rgb(var(--color-brand-white-rgb) / .55);
}
.cft-tray-div { width: 1px; align-self: stretch; margin: 3px 0; background: rgb(var(--color-foreground-rgb) / .16); box-shadow: 1px 0 0 rgb(var(--color-brand-white-rgb) / .5); }

.cft-tray-socials { display: flex; align-items: center; gap: 5px; }
.cft-social { width: 24px; height: 24px; display: grid; place-items: center; color: rgb(var(--color-foreground-rgb) / .5); text-decoration: none; border-radius: 4px; transition: color .12s, transform .12s, background .12s; }
.cft-social svg { width: 15px; height: 15px; }
.cft-social:hover { color: var(--cft-coral); transform: translateY(-1px); background: rgb(var(--color-foreground-rgb) / .06); }
.cft-social:focus-visible { outline: 2px solid var(--cft-navy); outline-offset: 1px; }

.cft-tray-ind { display: flex; align-items: center; gap: 5px; }
.cft-pip { width: 5px; height: 5px; border-radius: 50%; }
.cft-pip--g { background: var(--color-brand-lime); animation: cft-pipCascade 2s ease-in-out 0s   infinite; }
.cft-pip--c { background: var(--color-brand-coral); animation: cft-pipCascade 2s ease-in-out .35s infinite; opacity: .5; }
.cft-pip--t { background: var(--color-brand-teal); animation: cft-pipCascade 2s ease-in-out .7s  infinite; opacity: .3; }
.cft-bat { display: inline-flex; align-items: flex-end; gap: 1.5px; height: 9px; margin-left: 1px; }
.cft-bat i { width: 3px; height: 7px; background: var(--color-brand-lime); border-radius: 1px; transform-origin: bottom; }
.cft-bat i:nth-child(1) { animation: cft-batWave 2s ease-in-out 0s  infinite; }
.cft-bat i:nth-child(2) { animation: cft-batWave 2s ease-in-out .2s infinite; opacity: .6; }
.cft-bat i:nth-child(3) { animation: cft-batWave 2s ease-in-out .4s infinite; opacity: .3; }
.cft-bat b { width: 2px; height: 4px; background: rgb(var(--color-foreground-rgb) / .25); border-radius: 0 1px 1px 0; }

.cft-tray-status { position: relative; width: 158px; height: 14px; overflow: hidden; }
.cft-scw {
  position: absolute; inset: 0; display: flex; align-items: center;
  font-family: var(--cft-font-s); font-size: .5rem; letter-spacing: .12em;
  text-transform: uppercase; color: rgb(var(--color-foreground-rgb) / .42); white-space: nowrap; opacity: 0;
}
.cft-scw:nth-child(1) { animation: cft-phrase 16s ease-in-out  0.5s infinite; }
.cft-scw:nth-child(2) { animation: cft-phrase 16s ease-in-out  4.5s infinite; }
.cft-scw:nth-child(3) { animation: cft-phrase 16s ease-in-out  8.5s infinite; }
.cft-scw:nth-child(4) { animation: cft-phrase 16s ease-in-out 12.5s infinite; }

.cft-clock { font-family: var(--cft-mono); font-size: 1rem; letter-spacing: .06em; color: rgb(var(--color-foreground-rgb) / .55); min-width: 66px; text-align: center; }

/* ════════════════════ START MENU ════════════════════ */
.cft-backdrop { position: fixed; inset: 0; z-index: 80; background: transparent; }

.cft-startmenu {
  position: absolute;
  left: 12px;
  bottom: 64px;
  z-index: 90;
  display: flex;
  width: min(440px, calc(100vw - 24px));
  max-height: min(70vh, 560px);
  background: var(--cft-screen);
  border: 2px solid var(--color-foreground);
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 -1px 0 rgb(var(--color-brand-white-rgb) / .12) inset, 0 12px 36px rgb(var(--color-brand-black-rgb) / .45);
  opacity: 0;
  transform: translateY(10px) scale(.98);
  transform-origin: bottom left;
  pointer-events: none;
  transition: opacity .14s ease, transform .17s cubic-bezier(.22,1,.36,1);
}
.cft--menu-open .cft-startmenu { opacity: 1; transform: translateY(0) scale(1); pointer-events: auto; }

/* ── Ribbon ── */
.cft-sm-ribbon {
  width: 38px; flex-shrink: 0;
  background: var(--cft-navy);
  display: flex; align-items: flex-end; justify-content: center;
  padding: 12px 0 14px;
  box-shadow:
    inset 0 6px 0 var(--color-brand-coral),
    inset 0 12px 0 var(--color-brand-butter),
    inset 0 18px 0 var(--color-brand-lime),
    inset 0 24px 0 var(--color-brand-cerulean);
}
.cft-sm-ribbon-txt {
  writing-mode: vertical-rl; transform: rotate(180deg);
  font-family: var(--cft-font-h); font-size: .92rem; letter-spacing: .14em;
  color: rgb(var(--color-background-rgb) / .92); text-transform: uppercase;
}

.cft-sm-main { flex: 1; display: flex; flex-direction: column; min-width: 0; }

/* ── Menu ticker ── */
.cft-sm-ticker { flex-shrink: 0; height: 22px; overflow: hidden; white-space: nowrap; background: var(--cft-cerulean); display: flex; align-items: center; }
.cft-sm-ticker-inner { display: inline-block; animation: cft-tick 26s linear infinite; font-family: var(--cft-font-s); font-size: .55rem; letter-spacing: .16em; color: var(--color-brand-cerulean-deep); }

/* ── Scroll area + groups ── */
.cft-sm-scroll { flex: 1; overflow-y: auto; padding: 6px 0; -webkit-overflow-scrolling: touch; }
.cft-sm-scroll::-webkit-scrollbar { width: 8px; }
.cft-sm-scroll::-webkit-scrollbar-track { background: var(--cft-screen); }
.cft-sm-scroll::-webkit-scrollbar-thumb { background: var(--color-foreground); border-radius: 2px; }
.cft-sm-scroll { scrollbar-width: thin; scrollbar-color: var(--color-foreground) var(--cft-screen); }

.cft-sm-group { padding: 4px 0; }
.cft-sm-group + .cft-sm-group { border-top: 1px solid rgb(var(--color-brand-white-rgb) / .06); }
.cft-sm-grouphd { font-family: var(--cft-font-s); font-size: .44rem; letter-spacing: .22em; text-transform: uppercase; color: rgb(var(--color-background-rgb) / .32); padding: 8px 14px 5px; }

.cft-sm-item {
  display: flex; align-items: center; gap: 8px;
  padding: 9px 14px; text-decoration: none; position: relative;
}
.cft-sm-item::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: var(--c, var(--color-brand-white)); opacity: 0; transition: opacity .08s; }
.cft-sm-item:hover, .cft-sm-item:focus-visible { background: rgb(var(--color-brand-white-rgb) / .05); outline: none; }
.cft-sm-item:hover::before, .cft-sm-item:focus-visible::before { opacity: 1; }
.cft-sm-cur { width: 12px; flex-shrink: 0; font-size: .65rem; color: var(--c, var(--color-brand-white)); opacity: 0; line-height: 1; }
.cft-sm-item:hover .cft-sm-cur, .cft-sm-item:focus-visible .cft-sm-cur { opacity: 1; }
.cft-sm-num { font-family: var(--cft-font-s); font-size: .46rem; letter-spacing: .08em; color: var(--c, var(--color-brand-white)); opacity: .6; flex-shrink: 0; }
.cft-sm-slash { font-size: .4rem; color: rgb(var(--color-background-rgb) / .18); }
.cft-sm-name { flex: 1; font-family: var(--cft-font-s); font-size: .82rem; letter-spacing: .03em; text-transform: uppercase; color: rgb(var(--color-background-rgb) / .78); line-height: 1.1; }
.cft-sm-item:hover .cft-sm-name, .cft-sm-item:focus-visible .cft-sm-name { color: var(--color-brand-white); }
.cft-sm-arr { font-size: .7rem; color: var(--c, var(--color-brand-white)); opacity: .45; transform: translateX(-3px); transition: opacity .1s, transform .12s cubic-bezier(.34,1.56,.64,1); flex-shrink: 0; }
.cft-sm-item:hover .cft-sm-arr, .cft-sm-item:focus-visible .cft-sm-arr { opacity: 1; transform: translateX(0); }

/* ── Menu foot ── */
.cft-sm-foot { flex-shrink: 0; border-top: 1px solid rgb(var(--color-brand-white-rgb) / .08); background: rgb(var(--color-brand-black-rgb) / .25); padding: 10px 12px; display: flex; flex-direction: column; gap: 10px; }

.cft-sm-util { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 8px; }
.cft-sm-ubtn {
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px;
  padding: 9px 6px; border: none; border-radius: 5px; cursor: pointer; text-decoration: none;
  font-family: var(--cft-font-s);
  transition: transform .08s, box-shadow .08s, background .08s;
}
.cft-sm-ubtn svg { width: 15px; height: 15px; stroke: rgb(var(--color-brand-white-rgb) / .9); filter: drop-shadow(0 1px 1px rgb(var(--color-brand-black-rgb) / .2)); }
.cft-sm-ubtn-lbl { font-size: .42rem; letter-spacing: .1em; text-transform: uppercase; color: rgb(var(--color-brand-white-rgb) / .9); text-shadow: 0 1px 2px rgb(var(--color-brand-black-rgb) / .25); }
.cft-sm-ubtn--search  { background: var(--cft-teal);   box-shadow: 0 -1px 0 rgb(var(--color-brand-white-rgb) / .2) inset, 0 4px 0 var(--color-brand-teal-deep), 0 6px 8px rgb(var(--color-brand-teal-deep-rgb) / .5); }
.cft-sm-ubtn--account { background: var(--cft-purple); box-shadow: 0 -1px 0 rgb(var(--color-brand-white-rgb) / .2) inset, 0 4px 0 var(--color-brand-grape-deep), 0 6px 8px rgb(var(--color-brand-grape-deep-rgb) / .5); }
.cft-sm-ubtn--cart    { background: var(--cft-coral);  box-shadow: 0 -1px 0 rgb(var(--color-brand-white-rgb) / .2) inset, 0 4px 0 var(--color-brand-coral-deep), 0 6px 8px rgb(var(--color-brand-coral-deep-rgb) / .5); }
.cft-sm-ubtn:active { transform: translateY(3px); }
.cft-sm-ubtn--search:active  { box-shadow: 0 -1px 0 rgb(var(--color-brand-white-rgb) / .1) inset, 0 1px 0 var(--color-brand-teal-deep), 0 2px 3px rgb(var(--color-brand-teal-deep-rgb) / .4); }
.cft-sm-ubtn--account:active { box-shadow: 0 -1px 0 rgb(var(--color-brand-white-rgb) / .1) inset, 0 1px 0 var(--color-brand-grape-deep), 0 2px 3px rgb(var(--color-brand-grape-deep-rgb) / .4); }
.cft-sm-ubtn--cart:active    { box-shadow: 0 -1px 0 rgb(var(--color-brand-white-rgb) / .1) inset, 0 1px 0 var(--color-brand-coral-deep), 0 2px 3px rgb(var(--color-brand-coral-deep-rgb) / .4); }
.cft-sm-ubtn:focus-visible { outline: 2px solid rgb(var(--color-brand-white-rgb) / .6); outline-offset: 2px; }

/* ── Newsletter ── */
.cft-sm-nl { display: flex; flex-direction: column; gap: 6px; }
.cft-sm-nl-hd { font-family: var(--cft-font-s); font-size: .44rem; letter-spacing: .2em; text-transform: uppercase; color: rgb(var(--color-background-rgb) / .4); }
.cft-sm-nl-row { display: flex; gap: 6px; }
.cft-sm-nl-input {
  flex: 1; min-width: 0; min-height: 36px; padding: 0 11px;
  font-family: var(--cft-font-b); font-size: .9rem;
  background: rgb(var(--color-brand-white-rgb) / .07); color: var(--color-brand-white);
  border: 1.5px solid rgb(var(--color-brand-white-rgb) / .18); border-radius: 4px; outline: none;
  transition: border-color .15s;
}
.cft-sm-nl-input::placeholder { color: rgb(var(--color-background-rgb) / .35); }
.cft-sm-nl-input:focus { border-color: var(--cft-cerulean); }
.cft-sm-nl-btn {
  flex-shrink: 0; min-height: 36px; padding: 0 16px;
  font-family: var(--cft-font-s); font-size: .58rem; letter-spacing: .12em; text-transform: uppercase;
  color: var(--color-brand-white); background: var(--cft-cerulean); border: none; border-radius: 4px; cursor: pointer;
  box-shadow: 0 -1px 0 rgb(var(--color-brand-white-rgb) / .25) inset, 0 3px 0 var(--color-brand-cerulean-deep); transition: transform .1s, background .1s, box-shadow .1s;
}
.cft-sm-nl-btn:hover { background: var(--color-brand-cerulean-light); }
.cft-sm-nl-btn:active { transform: translateY(2px); box-shadow: 0 1px 0 var(--color-brand-cerulean-deep); }

/* ── Legal ── */
.cft-sm-legal { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; padding-top: 2px; }
.cft-sm-copy { font-family: var(--cft-font-s); font-size: .44rem; letter-spacing: .12em; text-transform: uppercase; color: rgb(var(--color-background-rgb) / .35); }

/* ════════════════════ MOBILE ════════════════════ */
@media screen and (max-width: 749px) {
  .cft-desktop { padding: 20px 14px 18px; }
  .cft-wall { font-size: 5.5rem; top: -10px; }
  .cft-desk { flex-direction: column; align-items: stretch; gap: 18px; }
  .cft-plaque { max-width: none; }
  .cft-shortcuts { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
  .cft-shortcut { width: auto; flex-direction: row; justify-content: flex-start; gap: 12px; padding: 10px 12px; border-radius: 6px; box-shadow: inset 1px 1px 0 rgb(var(--color-brand-white-rgb) / .6), inset -1px -1px 0 rgb(var(--color-foreground-rgb) / .18); }
  .cft-shortcut-ico { width: 40px; height: 40px; flex-shrink: 0; }
  .cft-shortcut-lbl { text-align: left; }

  .cft-bar { gap: 6px; padding: 7px 10px; }
  .cft-quick { display: none; }
  .cft-start { flex: 1; justify-content: center; }
  .cft-tray { gap: 8px; padding: 5px 9px; }
  .cft-tray-socials, .cft-tray-status, .cft-tray-div--status { display: none; }
  .cft-tray .cft-tray-div:not(.cft-tray-div--status) { display: none; }

  /* Start menu → bottom sheet */
  .cft-backdrop { background: rgb(var(--color-brand-black-rgb) / .55); }
  .cft-startmenu {
    position: fixed; left: 0; right: 0; bottom: 0; top: auto;
    width: 100%; max-width: 100%; max-height: 86vh;
    border-radius: 16px 16px 0 0; border-bottom: none;
    transform: translateY(100%);
    transform-origin: bottom center;
  }
  .cft--menu-open .cft-startmenu { transform: translateY(0); }
  .cft-sm-ribbon { display: none; }
  .cft-sm-name { font-size: 1rem; }
}

@media screen and (max-width: 360px) {
  .cft-shortcuts { grid-template-columns: 1fr; }
}

/* ════════════════════ REDUCED MOTION ════════════════════ */
@media (prefers-reduced-motion: reduce) {
  #carpcore-footer, #carpcore-footer * { animation: none !important; transition: none !important; }
  .cft-scw:nth-child(1) { opacity: 1; }
  .cft-scw:nth-child(2), .cft-scw:nth-child(3), .cft-scw:nth-child(4) { opacity: 0; }
  .cft-startmenu { transition: none !important; }
}
