/* Screen-specific styling for the four customer destinations. */

/* ================= 1 · HOME ========================================= */

/* member card — photo close to an Instagram square, name, M-code, package,
   big remaining count, small expiry, and the package-history icon */
.member-card{padding:16px 17px}
.member-card-top{display:grid;grid-template-columns:62px minmax(0,1fr);gap:12px;align-items:center}
.member-photo{
  width:62px;height:62px;object-fit:cover;
  border:1px solid var(--ffz-line-gold);border-radius:16px;background:#0b0b0a;
}
.member-photo-edit{display:grid;place-items:center;overflow:hidden;padding:0;color:var(--ffz-gold);font-size:10px;text-align:center}
.member-photo-edit img{width:100%;height:100%;object-fit:cover}
.member-photo-edit.is-empty{border-style:dashed}
.member-who{min-width:0}
.member-who b{display:block;font-size:16px;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.member-who small{display:block;margin-top:2px;color:var(--ffz-muted);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* full-width strip along the bottom edge of the member card */
.member-history{
  display:flex;align-items:center;justify-content:center;gap:8px;
  width:100%;min-height:var(--ffz-touch);margin-top:14px;padding:10px 14px;
  border:1px solid var(--ffz-line-gold);border-radius:var(--ffz-radius-control);
  background:rgba(255,189,22,.07);color:var(--ffz-gold-light);
  font-size:13px;font-weight:600;
}
.member-history-icon{display:grid;place-items:center;line-height:0}
.member-balance{margin-top:14px}
.member-expiry{margin-top:2px;color:var(--ffz-muted);font-size:11px}

/* next queue — clock first and never wrapping, then coach/studio, then the
   programme, what to bring, and the member note in its own strip */
.queue-next{margin-top:12px}
.queue-next-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.queue-clock{
  display:block;
  font-family:var(--ffz-font-num);font-size:36px;line-height:1;
  color:var(--ffz-gold-light);white-space:nowrap;
}
.queue-when small{display:block;margin-top:3px;color:var(--ffz-muted);font-size:11px;white-space:nowrap}
.queue-coach{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:baseline;margin-top:12px}
.queue-coach b{font-size:18px}
.queue-coach span{color:var(--ffz-gold);font-size:12px}
.queue-line{display:flex;justify-content:space-between;gap:12px;margin-top:8px}
.queue-line small{flex:none;color:var(--ffz-muted);font-size:11px}
.queue-line b{min-width:0;font-size:12px;text-align:right}
.queue-note{
  margin-top:12px;padding:9px 11px;
  border:1px solid rgba(255,189,22,.28);border-left:3px solid var(--ffz-gold);
  border-radius:12px;background:rgba(255,189,22,.05);
}
.queue-note small{display:block;color:var(--ffz-gold);font-size:10px}
.queue-note span{display:block;margin-top:3px;font-size:12px}
.queue-upcoming{margin-top:14px}
.queue-upcoming>.eyebrow{display:block;margin-bottom:8px}
.queue-upcoming .queue-clock{font-size:21px}
.queue-row-when{display:flex;align-items:baseline;gap:9px;min-width:0;overflow:hidden}
.queue-row-when small{color:var(--ffz-muted);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.booking-history-btn{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:14px;color:var(--ffz-gold-light)}
.booking-history-btn svg{flex:none}
.booking-history-list{display:grid;gap:9px;margin-top:14px}
.booking-history-row{
  display:flex;justify-content:space-between;align-items:center;gap:12px;
  min-height:62px;padding:10px 12px;border:1px solid var(--ffz-line);border-radius:var(--ffz-radius-chip);background:var(--ffz-surface);
}
.booking-history-row>div{display:flex;align-items:baseline;gap:10px;min-width:0}
.booking-history-row .queue-clock{font-size:24px}
.booking-history-row small{color:var(--ffz-muted);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* a booking that just came back from the picker glows briefly */
@keyframes ffz-fresh{from{border-color:var(--ffz-gold);background:rgba(255,189,22,.14)}to{border-color:var(--ffz-line);background:var(--ffz-surface)}}
.is-fresh{animation:ffz-fresh 2.4s ease-out 1}
@keyframes ffz-notice-focus{0%,35%{border-color:var(--ffz-gold);box-shadow:0 0 0 3px rgba(255,189,22,.18)}100%{border-color:var(--ffz-line);box-shadow:none}}
.is-notice-focus{animation:ffz-notice-focus 2.6s ease-out 1}

/* Homework is a backend-driven module collection. Render only assigned cards;
   an empty array still removes the entire section. */
.homework-card{padding:14px}
.homework-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
.homework-section-head h2{margin-top:3px;font-size:19px}
.homework-section-head p{margin-top:3px;color:var(--ffz-muted);font-size:11px}
.homework-progress{display:grid;flex:none;gap:6px;width:128px;padding:10px 12px;border:1px solid var(--ffz-line-gold);border-radius:15px;background:var(--ffz-surface-gold)}
.homework-progress>span{display:flex;align-items:baseline;justify-content:space-between;gap:6px;color:var(--ffz-muted);font-size:9px}
.homework-progress b{color:var(--ffz-gold-light);font-family:var(--ffz-font-num);font-size:22px;line-height:1;white-space:nowrap}
.homework-progress>i{display:block;height:4px;overflow:hidden;border-radius:99px;background:rgba(255,255,255,.1)}
.homework-progress u{display:block;width:var(--homework-progress);height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--ffz-deep-gold),var(--ffz-gold-light));text-decoration:none}
.homework-modules{display:flex;flex-direction:column;align-items:stretch;gap:10px;width:100%}
.homework-module{position:relative;display:flex;flex-direction:column;width:100%;min-width:0;min-height:0;padding:12px;border:1px solid var(--ffz-line);border-radius:17px;background:linear-gradient(145deg,#0d0d0c,#050505);overflow:hidden;transition:border-color .18s ease,background .18s ease}
.homework-module::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:rgba(255,189,22,.25)}
.homework-module.is-completed{border-color:rgba(84,240,140,.72);background:linear-gradient(145deg,rgba(84,240,140,.07),#050806 62%);box-shadow:0 10px 26px rgba(45,180,99,.08)}
.homework-module.is-completed::before{background:#54f08c}
.homework-module>header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.homework-module>header>div{min-width:0}
.homework-module h3{margin-top:6px;font-size:15px;line-height:1.3}
.homework-module>p{margin:4px 0 10px;color:var(--ffz-muted);font-size:10px;line-height:1.4}
.homework-kind{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border:1px solid rgba(255,189,22,.28);border-radius:var(--ffz-radius-pill);color:var(--ffz-gold);font-size:9px;font-weight:600}
.homework-kind-emoji{font-size:13px;line-height:1}
.homework-module-status{display:flex;align-items:center;gap:6px;flex:none;color:var(--ffz-muted);font-size:9px;white-space:nowrap}
.homework-module-status i{position:relative;width:18px;height:18px;border:1px solid var(--ffz-line);border-radius:50%}
.homework-module-status.is-done{color:#54f08c;font-weight:600}
.homework-done-emoji{font-size:16px;line-height:1}
.homework-target-value{display:flex;align-items:baseline;gap:6px;margin:1px 0 10px;padding:9px 11px;border:1px solid var(--ffz-line-gold);border-radius:13px;background:rgba(255,189,22,.055)}
.homework-target-value span{margin-right:auto;color:var(--ffz-muted);font-size:10px}
.homework-target-value strong{color:var(--ffz-gold-light);font-family:var(--ffz-font-num);font-size:32px;line-height:1}
.homework-target-value b{font-size:11px}
.homework-module--target,.homework-module--target.macro-protein{--macro-main:#ffe177;--macro-deep:#b97800;--macro-soft:rgba(255,189,22,.055);--macro-border:rgba(255,189,22,.42);--macro-glow:rgba(255,189,22,.3)}
.homework-module--target.macro-carb{--macro-main:#66bdff;--macro-deep:#246fd3;--macro-soft:rgba(65,153,255,.09);--macro-border:rgba(102,189,255,.52);--macro-glow:rgba(60,145,255,.3)}
.homework-module--target.macro-fat{--macro-main:#ff9454;--macro-deep:#d63e31;--macro-soft:rgba(255,104,64,.09);--macro-border:rgba(255,126,76,.54);--macro-glow:rgba(255,85,52,.28)}
.homework-module--target .homework-kind{border-color:var(--macro-border);color:var(--macro-main);background:var(--macro-soft)}
.homework-module--target .homework-kind-emoji{filter:drop-shadow(0 0 5px var(--macro-glow))}
.homework-power{display:grid;gap:7px;padding:10px 11px;border:1px solid var(--macro-border);border-radius:14px;background:var(--macro-soft)}
.homework-power-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.homework-power-head span{color:var(--ffz-muted);font-size:9px}
.homework-power-reading{display:flex;align-items:center;justify-content:flex-end;gap:4px;min-width:0}
.homework-power-head b{color:var(--macro-main);font-family:var(--ffz-font-num);font-size:20px;white-space:nowrap}
.homework-reset{display:grid;place-items:center;width:44px;height:44px;margin:-11px -10px -11px 0;padding:0;border:0;border-radius:50%;background:transparent;color:#858585;font-size:18px;line-height:1}
.homework-reset:hover,.homework-reset:focus-visible{background:rgba(255,255,255,.06);color:var(--ffz-text)}
.homework-reset:active{transform:rotate(-40deg)}
.homework-power-track{height:10px;overflow:hidden;border:1px solid rgba(255,255,255,.08);border-radius:99px;background:#222}
.homework-power-track i{display:block;width:var(--homework-power);height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--macro-deep),var(--macro-main));box-shadow:0 0 14px var(--macro-glow);transition:width .22s ease}
.homework-power-status{color:var(--macro-main);font-size:10px}
.homework-quick-add{display:grid;gap:6px;margin-top:9px}
.homework-quick-add>span{color:var(--ffz-muted);font-size:9px}
.homework-quick-add>div{display:flex;gap:7px}
.homework-quick-chip{flex:1;min-width:0;min-height:44px;padding:7px 10px;border:1px solid var(--macro-border);border-radius:var(--ffz-radius-pill);background:linear-gradient(180deg,var(--macro-soft),rgba(5,5,5,.8));color:var(--macro-main);font-family:var(--ffz-font-num);font-size:18px;box-shadow:0 5px 12px rgba(0,0,0,.28);transition:transform .1s ease,background .12s ease}
.homework-quick-chip:active{transform:translateY(1px) scale(.97);background:var(--macro-soft)}
.homework-value-entry{display:grid;gap:6px;margin-top:auto}
.homework-manual-entry{margin-top:9px}
.homework-value-entry>label{color:var(--ffz-muted);font-size:10px}
.homework-value-control{display:grid;grid-template-columns:minmax(72px,1fr) auto auto;align-items:center;gap:0;overflow:hidden;border:1px solid var(--ffz-line);border-radius:var(--ffz-radius-control);background:#030303}
.homework-value-control input{width:100%;min-width:0;min-height:48px;border:0;border-radius:0;background:transparent;font-family:var(--ffz-font-num);font-size:24px}
.homework-value-control>span{padding:0 10px;color:var(--ffz-muted);font-size:10px;white-space:nowrap}
.homework-value-control .button{min-height:48px;border-width:0 0 0 1px;border-radius:0;box-shadow:none}
.homework-module--target .homework-value-control .button{border-color:var(--macro-border);background:linear-gradient(135deg,var(--macro-deep),var(--macro-main));color:#171107}
.homework-checklist{display:grid;gap:6px;margin-top:0}
.homework-check-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;min-height:48px;padding:6px 9px;border:1px solid var(--ffz-line);border-radius:12px;background:#050505;color:var(--ffz-text);text-align:left}
.homework-check-row>span:nth-child(2){min-width:0;font-size:11px;line-height:1.35}
.homework-check-row small{color:var(--ffz-muted);font-size:8px;white-space:nowrap}
.homework-check-row.is-checked{border-color:rgba(255,189,22,.4);background:rgba(255,189,22,.055)}
.homework-check-row.is-checked>span:nth-child(2){color:var(--ffz-gold-light)}
.homework-check-box{position:relative;width:26px;height:26px;border:1px solid var(--ffz-line);border-radius:8px;background:#0b0b0b}
.homework-check-row.is-checked .homework-check-box{border-color:var(--ffz-gold);background:var(--ffz-gold)}
.homework-check-row.is-checked .homework-check-box::after{content:"";position:absolute;left:8px;top:4px;width:6px;height:11px;border:solid #171107;border-width:0 2px 2px 0;transform:rotate(45deg)}
.homework-counter-value{display:flex;align-items:baseline;justify-content:center;gap:7px;margin-top:2px}
.homework-counter-value strong{color:var(--ffz-gold-light);font-family:var(--ffz-font-num);font-size:46px;line-height:1}
.homework-counter-value span{color:var(--ffz-muted);font-size:12px}
.homework-counter-dots{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:5px;margin:8px 0 10px}
.homework-counter-dots i{height:5px;border-radius:99px;background:rgba(255,255,255,.1)}
.homework-counter-dots i.is-filled{background:var(--ffz-gold)}
.homework-counter-tap{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:48px;margin-top:0;padding:8px 11px;border:1px solid var(--ffz-line-gold);border-radius:14px;background:rgba(255,189,22,.07);color:var(--ffz-gold-light)}
.homework-counter-tap:disabled{opacity:1;background:rgba(255,189,22,.14)}
.homework-counter-tap b{font-size:11px}
.homework-water-mark{width:18px;height:23px;border:1.5px solid currentColor;border-radius:55% 55% 60% 60%;transform:rotate(45deg)}
@media (max-width:560px){
  .homework-card{padding:11px}
  .homework-section-head{gap:10px}
  .homework-progress{width:112px;padding:9px 10px}
  .homework-module{padding:10px}
  .homework-check-row{grid-template-columns:28px minmax(0,1fr)}
  .homework-check-row small{grid-column:2;white-space:normal}
  .booking-history-row>div{display:grid;gap:2px}
}

/* Pinned booking button. `width:auto` matters: .button--block sets width:100%,
   which against a fixed element resolves to the full viewport and pushes the
   button 18px past the right edge. The screen reserves padding-bottom so the
   button never covers content, and on phones it clears the bottom rail. */
.book-cta{
  position:fixed;right:18px;bottom:18px;left:18px;z-index:20;
  width:auto;max-width:560px;margin-inline:auto;
}
@media (max-width:680px){
  .book-cta{bottom:calc(76px + env(safe-area-inset-bottom,0px));right:14px;left:14px}
}

/* ================= 2 · BOOKING ====================================== */
.coach-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
@media (max-width:680px){.coach-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.coach-pick{
  display:grid;gap:8px;justify-items:center;padding:12px 8px;
  border:1px solid var(--ffz-line);border-radius:16px;
  background:var(--ffz-surface);color:var(--ffz-text);
}
.coach-pick.is-active{border-color:var(--ffz-line-gold);background:var(--ffz-card-gold)}
.coach-face{width:64px;height:64px;object-fit:cover;border-radius:var(--ffz-radius-pill);border:1px solid var(--ffz-line)}
/* Coach Sun has no approved photo yet. An empty polite frame — never a stand-in
   face, never another coach's picture. */
.coach-face--empty{
  display:block;overflow:hidden;
  border-style:dashed;background:#0b0b0a;
}
.coach-pick b{font-size:12px}

/* min-width:0 lets this actually scroll instead of widening its card */
.date-strip{display:flex;gap:8px;min-width:0;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}
.date-chip{
  flex:none;display:grid;gap:2px;justify-items:center;
  min-width:62px;min-height:64px;padding:8px 6px;
  border:1px solid var(--ffz-line);border-radius:14px;
  background:var(--ffz-surface);color:var(--ffz-text);
}
.date-chip small{color:var(--ffz-muted);font-size:10px}
.date-chip b{font-family:var(--ffz-font-num);font-size:21px;line-height:1}
.date-chip.is-active{border-color:var(--ffz-line-gold);background:var(--ffz-card-gold);color:var(--ffz-gold-light)}
/* The two week buttons plus the range label are wider than a 375px phone.
   Let the label take its own line rather than forcing the viewport wider. */
.week-nav{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px}
.week-copy{order:-1;display:grid;flex:1 0 100%;gap:2px;text-align:center}
.week-copy b{font-size:13px}
.week-copy small{color:var(--ffz-muted);font-size:10px}
.week-nav .button{flex:1 1 auto;min-width:0;padding-inline:10px;font-size:12px}

/* Fixed 4 per row, wrapping down until every bookable hour is shown. */
.slot-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.slot{
  display:grid;gap:2px;place-content:center;justify-items:center;
  min-height:52px;padding:8px 4px;
  border:1px solid var(--ffz-line);border-radius:13px;
  background:var(--ffz-surface);color:var(--ffz-text);
}
.slot b{font-family:var(--ffz-font-num);font-size:21px;line-height:1;white-space:nowrap}
.slot small{color:var(--ffz-muted);font-size:10px;white-space:nowrap}
.slot.is-active{border-color:var(--ffz-line-gold);background:var(--ffz-card-gold);color:var(--ffz-gold-light)}
/* taken slots stay visible but dimmed and unclickable */
.slot.is-taken{opacity:.42;cursor:not-allowed}
.slot.is-taken small{color:var(--ffz-off)}

.picked-list{display:grid;gap:8px;margin-top:10px}
.picked-row{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:var(--ffz-touch);padding:8px 12px;border:1px solid var(--ffz-line-gold);border-radius:var(--ffz-radius-chip);background:var(--ffz-surface-gold)}
.picked-row b{font-size:13px;white-space:nowrap}
.picked-remove{width:var(--ffz-touch);height:var(--ffz-touch);border:0;background:transparent;color:var(--ffz-danger);font-size:17px}

/* ================= 3 · PACKAGES ===================================== */
.flash-banner{border-color:var(--ffz-line-gold);background:var(--ffz-card-gold)}
.flash-price{font-family:var(--ffz-font-num);font-size:44px;line-height:1;color:var(--ffz-gold-light)}
.flash-price span{font-family:var(--ffz-font);font-size:13px;font-weight:600}
.package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
@media (max-width:900px){.package-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.package-grid{grid-template-columns:minmax(0,1fr)}}
.package{
  display:grid;gap:6px;padding:16px;text-align:left;
  border:1px solid var(--ffz-line);border-radius:18px;
  background:#0b0b0a;color:var(--ffz-text);
}
.package.is-active{border-color:rgba(255,189,22,.55);background:var(--ffz-card-gold)}
.package .price{font-family:var(--ffz-font-num);font-size:34px;line-height:1;color:var(--ffz-gold)}
.package small{color:var(--ffz-muted);font-size:11px}
.qr-box{display:grid;place-items:center;min-height:190px;margin:14px 0;border:1px dashed var(--ffz-line-gold);border-radius:16px;background:#050505;color:var(--ffz-muted);font-size:12px;text-align:center}
.qr-box b{display:block;color:var(--ffz-gold-light);font-size:14px}
.detail-note{margin:14px 0;color:var(--ffz-muted);font-size:12px;line-height:1.65}

/* ================= 4 · SETTINGS ===================================== */
.settings-accordion{padding:0;overflow:hidden;transition:border-color .18s ease,background .18s ease}
.settings-accordion.is-open{border-color:rgba(255,189,22,.38)}
.settings-accordion-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:72px;padding:12px 16px;border:0;background:transparent;color:var(--ffz-text);text-align:left}
.settings-accordion-copy{display:grid;gap:3px;min-width:0}
.settings-accordion-copy b{font-size:15px;line-height:1.35}
.settings-accordion-copy small{color:var(--ffz-muted);font-size:11px;line-height:1.45}
.settings-accordion-side{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:none}
.settings-accordion-side>i{display:grid;place-items:center;width:48px;height:48px;color:var(--ffz-gold);font-size:24px;font-style:normal;line-height:1;transition:transform .2s ease}
.settings-accordion.is-open .settings-accordion-side>i{transform:rotate(180deg)}
.settings-accordion-trigger:hover{background:rgba(255,189,22,.035)}
.settings-accordion-trigger:focus-visible{outline:2px solid var(--ffz-gold);outline-offset:-3px}
.settings-accordion-panel{display:grid;grid-template-rows:0fr;opacity:0;visibility:hidden;transition:grid-template-rows .22s ease,opacity .16s ease,visibility 0s .22s}
.settings-accordion-panel-inner{min-height:0;overflow:hidden;padding:0 16px}
.settings-accordion.is-open .settings-accordion-panel{grid-template-rows:1fr;opacity:1;visibility:visible;transition:grid-template-rows .22s ease,opacity .18s ease,visibility 0s}
.settings-accordion.is-open .settings-accordion-panel-inner{padding-bottom:15px}
.settings-accordion.private-admin-card .settings-accordion-trigger{background:linear-gradient(90deg,rgba(255,189,22,.04),transparent)}
.settings-accordion.private-admin-card.is-open .settings-accordion-trigger{background:transparent}
@media (max-width:520px){
  .settings-accordion-trigger{min-height:68px;padding:10px 12px}
  .settings-accordion-panel-inner{padding-right:12px;padding-left:12px}
  .settings-accordion-side{gap:3px}
  .settings-accordion-side .tag,.settings-accordion-side .private-admin-badge{font-size:8px}
}
.setting-block{display:grid;gap:10px}
.setting-block--notification{gap:0}
.reminder-options{display:grid;grid-template-rows:1fr;margin-top:10px;opacity:1;visibility:visible;transition:grid-template-rows .22s ease,margin .22s ease,opacity .16s ease,visibility 0s}
.reminder-options-inner{min-height:0;overflow:hidden}
.reminder-options.is-collapsed{grid-template-rows:0fr;margin-top:0;opacity:0;visibility:hidden;pointer-events:none;transition:grid-template-rows .22s ease,margin .22s ease,opacity .14s ease,visibility 0s .22s}
.choice-row{display:flex;flex-wrap:wrap;gap:8px}
.choice{
  min-height:var(--ffz-touch);padding:9px 15px;
  border:1px solid var(--ffz-line);border-radius:var(--ffz-radius-pill);
  background:var(--ffz-surface);color:var(--ffz-text);font-size:12px;
}
.choice.is-active{border-color:var(--ffz-line-gold);background:var(--ffz-card-gold);color:var(--ffz-gold-light)}
.switch-row{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:var(--ffz-touch)}
/* 48px tall so it meets the touch target, with the visible track centred. */
.switch{
  flex:none;display:grid;align-items:center;
  width:64px;height:var(--ffz-touch);padding:3px 4px;
  border:1px solid var(--ffz-line);border-radius:var(--ffz-radius-pill);
  background:#050505;
}
.switch i{display:block;width:28px;height:28px;border-radius:50%;background:#4a4a4a;transition:transform .16s,background .16s}
.switch.is-on{border-color:var(--ffz-line-gold);background:var(--ffz-surface-gold)}
.switch.is-on i{transform:translateX(26px);background:var(--ffz-gold)}
.private-admin-card{border-color:rgba(255,189,22,.38);background:linear-gradient(145deg,rgba(255,189,22,.07),#070706 64%)}
.private-admin-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}
.private-admin-head h3{margin-top:3px;font-size:17px}
.private-admin-badge{flex:none;padding:4px 9px;border:1px solid var(--ffz-line-gold);border-radius:var(--ffz-radius-pill);color:var(--ffz-gold-light);font-size:9px;white-space:nowrap}
.private-admin-action{margin-top:12px;border-color:var(--ffz-line-gold);color:var(--ffz-gold-light);background:rgba(255,189,22,.055)}
.admin-private-note{display:grid;gap:3px;margin-top:12px;padding:11px 12px;border:1px solid var(--ffz-line-gold);border-radius:14px;background:var(--ffz-surface-gold)}
.admin-private-note b{color:var(--ffz-gold-light);font-size:12px}
.admin-private-note small{color:var(--ffz-muted);font-size:10px;line-height:1.5}
.contract-body{max-height:280px;overflow:auto;padding:13px;border:1px solid var(--ffz-line);border-radius:var(--ffz-radius-chip);background:#050505;font-size:12px;line-height:1.7}
