/* Login button, notifications and WhatsApp buttons (23 Oct 2026, owner-approved design). */

/* Log in / Create account: compact, centred, JICHO amber. */
#authSubmit{display:flex;align-items:center;justify-content:center;width:auto;min-width:168px;max-width:100%;
  height:46px;margin:6px auto 0;padding:0 30px;border:0;border-radius:999px;
  background:linear-gradient(135deg,#d67d24,#a35a12);color:#fff;
  font-size:15.5px;font-weight:800;letter-spacing:.2px;line-height:1;
  box-shadow:0 6px 16px #a35a1240;cursor:pointer}
#authSubmit:hover{background:linear-gradient(135deg,#c8731e,#8f4f0f)}
#authSubmit:active{transform:translateY(1px)}
#authSubmit:focus-visible{outline:3px solid #147fe5;outline-offset:3px}
#authSubmit:disabled{opacity:.6;cursor:default}

/* Notifications: small, centred with breathing space on both sides, a bold title, a clear close
   button, and distinct colours: information blue, success green, warning amber, error red. */
.toast{left:16px;right:16px;margin:0 auto;transform:none;width:auto;max-width:400px;
  padding:10px 40px 10px 14px;border-radius:14px;font-size:13px;line-height:1.4;
  box-shadow:0 8px 22px #25304a24}
.toast.show{display:block;animation:mrToastIn .2s ease-out}
.toast strong{display:block;margin:0 0 2px;font-size:13.5px;font-weight:800}
.toast span{display:block}
.toast-x{position:absolute;top:6px;right:6px;width:30px;height:30px;padding:0;border:0;border-radius:50%;
  background:transparent;color:inherit;font-size:20px;line-height:30px;cursor:pointer;opacity:.75}
.toast-x:hover,.toast-x:focus-visible{opacity:1;background:#0000000f}
.toast-x:focus-visible{outline:2px solid currentColor;outline-offset:1px}
.toast.notice-tone-info{--notice-bg:#eff6ff;--notice-border:#bfdbfe;--notice-ink:#1e3a8a;--notice-accent:#2563eb}
.toast.notice-tone-success{--notice-bg:#ecfdf5;--notice-border:#a7f3d0;--notice-ink:#065f46;--notice-accent:#059669}
.toast.notice-tone-warning{--notice-bg:#fffbeb;--notice-border:#fde68a;--notice-ink:#854d0e;--notice-accent:#d97706}
.toast.notice-tone-error{--notice-bg:#fef2f2;--notice-border:#fecaca;--notice-ink:#991b1b;--notice-accent:#dc2626}
.toast.notice-tone-neutral{--notice-bg:#f9fafb;--notice-border:#e5e7eb;--notice-ink:#374151;--notice-accent:#6b7280}
@keyframes mrToastIn{from{opacity:0;translate:0 6px}to{opacity:1;translate:0 0}}
@media (prefers-reduced-motion:reduce){.toast.show{animation:none}}
/* The inbox activity popup: same compact width and side spacing. */
.eng-message-alert{width:auto;left:16px;right:16px;max-width:420px;margin:0 auto;transform:none;animation-name:mrAlertIn}
@keyframes mrAlertIn{from{opacity:0;translate:0 -8px}to{opacity:1;translate:0 0}}
@media (prefers-reduced-motion:reduce){.eng-message-alert{animation:none}}

/* WhatsApp: solid green with the WhatsApp icon only (the label stays for screen readers). */
.wa-btn.wa-only{gap:0;padding:0 18px;background:#25D366;border-color:#1da851;color:#fff}
.wa-btn.wa-only svg{width:26px;height:26px;flex:0 0 26px}
.wa-btn.wa-only:hover{background:#1ebe5d}
.fi-wa.wa-only{min-width:64px}
.pf .pf-act.pf-wa{flex:0 0 auto;min-width:52px;padding:0 14px;background:#25D366;border-color:#1da851;color:#fff}
.pf .pf-act.pf-wa svg{width:21px;height:21px}
.pf .pf-act.pf-wa svg path{fill:#fff}
.pf .pf-act.pf-wa:hover{background:#1ebe5d}

/* Profile page (owner request 23 Oct): the cover photo fills the whole top area, edge to edge,
   with Back, Share and ⋯ floating on the photo. The duplicate name bar is gone (the name is shown
   under the round picture); the title stays for screen readers. */
#detailView{position:relative}
#detailView .page-head{position:absolute;z-index:6;top:0;left:0;right:0;max-width:560px;margin:0 auto;
  display:flex;align-items:center;gap:8px;padding:10px 10px 0;pointer-events:none}
#detailView .page-head>*{pointer-events:auto}
#detailView #detailTitle{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
#detailView .page-head #backHome{margin-right:auto}
#detailView .page-head .icon-plain,#detailView .page-head .pf-share{width:44px;height:44px;min-width:44px;display:grid;place-items:center;
  padding:0;border:0;border-radius:50%;background:#1a110a94;color:#fff;font-size:22px;line-height:1;
  box-shadow:0 2px 8px #0000003d;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
#detailView .page-head .pf-share svg{width:20px;height:20px}
#detailView .page-head .menu-dots{font-size:22px;letter-spacing:0}
#detailView .page-head .icon-plain:focus-visible,#detailView .page-head .pf-share:focus-visible{outline:3px solid #fff;outline-offset:2px}
#detailView .page-head .status-chip{background:#fffffff0}
#detailView .profile-detail{padding-top:0}
#detailView .pd.pc.pf{margin-top:0}
#detailView .pf-cover{position:relative;height:clamp(200px,56vw,280px);border-radius:0 0 22px 22px}
/* A soft shade at the top so the buttons stay readable on any photo. */
#detailView .pf-cover::after{content:"";position:absolute;inset:0 0 auto;height:76px;background:linear-gradient(#0000006b,#0000)}
@media(max-width:780px){#detailView .profile-detail{padding-left:0;padding-right:0}}
@media(min-width:781px){#detailView .page-head{top:8px;padding:10px 12px 0}#detailView .pf-cover{border-radius:0}}
/* Monetize: the word WhatsApp is replaced by a small solid WhatsApp icon. */
.mz-btn .mz-wa{display:grid;place-items:center;width:20px;height:20px;flex:0 0 20px;border-radius:50%;background:#25D366}
.mz-btn .mz-wa svg{width:13px!important;height:13px!important;flex:0 0 13px!important;filter:none}

/* Install JICHO: a small card in the same style as the notifications above, centred with
   side spacing, above the bottom navigation; soft fade in and out. */
.mr-install{box-sizing:border-box;position:fixed;z-index:60;left:16px;right:16px;bottom:calc(88px + env(safe-area-inset-bottom,0px));max-width:400px;margin:0 auto;
  display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"icon copy" "icon go";column-gap:11px;row-gap:9px;align-items:start;
  padding:12px 40px 12px 12px;border:1px solid #f4eada;border-radius:16px;
  background:linear-gradient(180deg,#ffffff,#fffcf8);color:#3a2515;
  box-shadow:0 10px 26px #5b341726,0 1px 0 #fff inset;font-size:13px;line-height:1.4;
  opacity:0;translate:0 8px;transition:opacity .18s ease,translate .18s ease}
.mr-install[hidden]{display:none!important}
.mr-install.is-in{opacity:1;translate:0 0}
.mr-install.is-out{opacity:0;translate:0 8px}
.mr-install-icon{grid-area:icon;display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:linear-gradient(135deg,#e08830,#a35a12);box-shadow:0 3px 8px #a35a1240}
.mr-install-copy{grid-area:copy;min-width:0}
.mr-install-copy strong{display:block;margin:0 0 2px;font-size:14px;font-weight:800;color:#2a1a0d}
.mr-install-copy span{display:block;color:#5d4656}
.mr-install-help{margin:7px 0 0;padding:7px 9px;border-radius:9px;background:#fdf9f3;color:#7a441a;font-size:12.5px}
.mr-install-go{grid-area:go;justify-self:start;height:34px;padding:0 16px;border:0;border-radius:999px;
  background:linear-gradient(135deg,#d67d24,#a35a12);color:#fff;font:inherit;font-size:13px;font-weight:800;cursor:pointer;box-shadow:0 4px 10px #a35a1233}
.mr-install-go:hover{background:linear-gradient(135deg,#c8731e,#8f4f0f)}
.mr-install-go:disabled{opacity:.6;cursor:default}
.mr-install-x{position:absolute;top:6px;right:6px;width:30px;height:30px;padding:0;border:0;border-radius:50%;background:transparent;color:#7a5a6e;font-size:20px;line-height:30px;cursor:pointer}
.mr-install-x:hover,.mr-install-x:focus-visible{background:#0000000d;color:#2a1a0d}
.mr-install-go:focus-visible,.mr-install-x:focus-visible{outline:3px solid #147fe5;outline-offset:2px}
@media (prefers-reduced-motion:reduce){.mr-install{transition:none;translate:none}}
@media (min-width:781px){.mr-install{left:auto;right:24px;margin:0}}

/* Profile Media (owner request 23 Oct): one compact row on the profile form; every picture and the
   video are managed in one sheet (bottom sheet on phones, centred dialog on desktop). */
#pfMedia.mm-host{display:block!important;border:0!important;padding:0!important;background:none!important;box-shadow:none!important}
.mm-row{display:flex;align-items:center;gap:11px;min-height:60px;padding:10px 12px;border:1px solid #ead7f1;border-radius:14px;background:linear-gradient(180deg,#fff,#faf6fd);box-shadow:0 2px 8px #5b34170d}
.mm-icon{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:10px;background:#fdf7ee;color:#b46c23}
.mm-text{flex:1;min-width:0;display:grid;gap:1px}
.mm-text strong{font-size:14.5px;font-weight:800;color:#2a1a0d;line-height:1.25}
.mm-text small{font-size:12.5px;color:#6b5866;line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.mm-text small.mm-err{color:#b91c1c;font-weight:700}
.mm-text small.mm-busy{color:#8e5924;font-weight:700}
.mm-text small.mm-ok{color:#166534;font-weight:700}
.mm-manage,.mm-done{flex:0 0 auto;min-width:84px;height:38px;padding:0 16px;border:0;border-radius:999px;background:linear-gradient(135deg,#d67d24,#a35a12);color:#fff;font:inherit;font-size:13.5px;font-weight:800;cursor:pointer;box-shadow:0 4px 10px #a35a1233}
.mm-manage:hover,.mm-done:hover{background:linear-gradient(135deg,#c8731e,#8f4f0f)}
.mm-manage:focus-visible,.mm-done:focus-visible,.mm-x:focus-visible{outline:3px solid #147fe5;outline-offset:2px}
html.mm-open,html.mm-open body{overflow:hidden}
.mm-backdrop{position:fixed;inset:0;z-index:95;display:flex;align-items:flex-end;justify-content:center;background:#1d100699;opacity:0;transition:opacity .18s ease}
.mm-backdrop[hidden]{display:none!important}
.mm-backdrop.is-in{opacity:1}
.mm-sheet{box-sizing:border-box;display:flex;flex-direction:column;width:100%;max-width:640px;max-height:calc(100dvh - 24px);border-radius:20px 20px 0 0;background:#fff;box-shadow:0 -8px 30px #0000002e;outline:none;translate:0 16px;transition:translate .2s ease}
.mm-backdrop.is-in .mm-sheet{translate:0 0}
.mm-head{display:flex;align-items:flex-start;gap:10px;padding:16px 16px 10px;border-bottom:1px solid #f3efea}
.mm-head>div{flex:1;min-width:0}
.mm-head h3{margin:0;font-size:17px;font-weight:800;color:#2a1a0d}
.mm-head p{margin:2px 0 0;font-size:13px;color:#6b5866}
.mm-x{flex:0 0 36px;width:36px;height:36px;margin:-4px -4px 0 0;border:0;border-radius:50%;background:#f7f5f1;color:#5d4656;font-size:22px;line-height:36px;cursor:pointer}
.mm-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:12px 16px;display:grid;gap:10px;align-content:start}
.mm-foot{display:flex;align-items:center;gap:12px;padding:10px 16px calc(12px + env(safe-area-inset-bottom,0px));border-top:1px solid #f3efea;background:#fff;border-radius:0}
.mm-foot small{flex:1;min-width:0;font-size:12px;color:#6b5866;line-height:1.35}
/* The existing slot editor, laid out as a compact grid of tiles. */
.mm-body .pf-media-head{display:flex;justify-content:flex-start}
.mm-body .pf-media-head .btn{min-height:36px;padding:7px 14px;font-size:13px}
.mm-body .pf-media-note{font-size:12px;line-height:1.35;overflow-wrap:anywhere}
.mm-body .pf-media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.mm-body .media-pick.mm-slot{display:flex;flex-direction:column;gap:6px;padding:6px;border:1px solid #f1ede7;border-radius:12px;background:#fff;min-width:0}
.mm-body .mm-slot .mp-preview{flex:none;width:100%;aspect-ratio:3/4;border-radius:9px;cursor:pointer}
.mm-body .mm-slot .mp-empty{font-size:0;color:#b46c23}
.mm-body .mm-slot .mp-empty::before{content:"+";font-size:30px;font-weight:300;line-height:1}
.mm-body .mm-slot .mp-body{gap:5px}
.mm-body .mm-slot .mp-label{font-size:11.5px;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mm-body .mm-slot .mp-btns{gap:4px;flex-wrap:nowrap;align-items:center}
.mm-body .mm-slot .mp-btns .btn-small{min-height:30px;padding:3px 9px;font-size:11.5px;border-radius:999px;white-space:nowrap}
/* Remove is a small round × (its accessible label names the slot). */
.mm-body .mm-slot .mp-btns .mp-remove{flex:0 0 30px;width:30px;min-width:30px;padding:0;font-size:0;display:grid;place-items:center}
.mm-body .mm-slot .mp-btns .mp-remove::before{content:"×";font-size:18px;line-height:1}
.mm-body .mm-slot .mp-btns .mp-remove[hidden]{display:none}
.mm-body .mm-slot .mp-state{font-size:11px;line-height:1.3;overflow-wrap:anywhere}
.mm-body .mm-slot .mp-state.box{padding:5px 6px;font-size:11px;gap:4px}
.mm-body .mm-slot .mp-progress{height:5px}
.mm-body .mm-video-slot{grid-column:1/-1;flex-direction:row!important;align-items:flex-start}
.mm-body .mm-video-slot .mp-preview{width:min(120px,34%);flex:0 0 auto}
.mm-body .mm-video-slot .mp-body{flex:1;min-width:0}
.mm-body .mm-video-slot .mp-label{white-space:normal;font-size:12.5px}
@media (max-width:340px){.mm-body .pf-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:781px){
  .mm-backdrop{align-items:center;padding:24px}
  .mm-sheet{border-radius:20px;max-height:min(760px,calc(100dvh - 48px));translate:0 8px;box-shadow:0 20px 50px #0000003d}
  .mm-foot{border-radius:0 0 20px 20px}
  .mm-body .pf-media-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
}
@media (prefers-reduced-motion:reduce){.mm-backdrop,.mm-sheet{transition:none;translate:none}}
/* Profile Media manager: cover photo and profile picture rows, gallery heading, Adjust buttons. */
.mm-looks{display:grid;gap:8px}
.mm-look{display:flex;align-items:center;gap:10px;padding:8px;border:1px solid #f1ede7;border-radius:12px;background:#fff}
.mm-look-pic{flex:0 0 auto;display:block;overflow:hidden;background:#f7f1e8}
.mm-look-cover{width:72px;aspect-ratio:1/0.56;border-radius:8px}
.mm-look-avatar{width:40px;height:40px;border-radius:50%;margin:0 16px}
.mm-look-pic img{display:block;width:100%;height:100%;object-fit:cover}
.mm-look-text{flex:1;min-width:0;display:grid}
.mm-look-text strong{font-size:13.5px;font-weight:800;color:#2a1a0d}
.mm-look-text small{font-size:11.5px;color:#6b5866;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mm-mini{flex:0 0 auto;height:32px;padding:0 12px;border:0;border-radius:999px;background:linear-gradient(135deg,#d67d24,#a35a12);color:#fff;font:inherit;font-size:12.5px;font-weight:800;cursor:pointer}
.mm-mini.quiet{background:#f5eef3;color:#5d4656}
.mm-mini:disabled{opacity:.45;cursor:default}
.mm-mini:focus-visible{outline:3px solid #147fe5;outline-offset:2px}
.mm-sub{margin:4px 0 0;font-size:13px;font-weight:800;color:#2a1a0d}
.mm-body .mm-slot .mp-btns .mp-adjust[hidden]{display:none}
@media (max-width:380px){.mm-look{gap:7px;padding:7px}.mm-look-cover{width:56px}.mm-look-avatar{margin:0 8px}.mm-mini{padding:0 10px}.mm-look-text small{display:none}}
/* Adjust: a small ✎ on the saved picture itself (its label names the picture). */
.mm-body .mm-slot .mp-preview .mp-adjust{position:absolute;z-index:2;top:5px;right:5px;width:30px;height:30px;min-height:0;padding:0;border:0;border-radius:50%;background:#fffffff2;box-shadow:0 1px 4px #0000002e;font-size:0;display:grid;place-items:center;cursor:pointer}
.mm-body .mm-slot .mp-preview .mp-adjust::before{content:"✎";font-size:15px;line-height:1;color:#a35a12}
.mm-body .mm-slot .mp-preview .mp-adjust[hidden]{display:none}
