/* Menu books — the public book (menu/<business>/<book>), its themes, the poster, and the business's manager / editor (.mnm-). */

/* ============================== themes ============================== */
.mn-view, .mn-poster, .mnm-sw{
  --bg:#0B0D2A; --paper:#15183F; --ink:#ECEEF7; --muted:#A9AFCB; --acc:#E0337E; --acc2:#F48FB1; --onacc:#fff; --line:rgba(255,255,255,.16);
  --wa:#7B1FA2; --wb:#E91E63; --w2:#F48FB1; --w3:#FCE4EC; --bar:rgba(11,13,42,.86); --bar-ink:#fff;
  --f-head:'Cormorant Garamond', Georgia, serif; --f-script:'Great Vibes', cursive; --f-body:'Poppins', system-ui, sans-serif;
  --name:linear-gradient(180deg, #FFFFFF 0%, #C9CEDF 55%, #9EA5C2 100%);
}
[data-theme="banquet"]{
  --bg:#E9E1CE; --paper:#FBF7EE; --ink:#1C1B19; --muted:#6E675A; --acc:#A98224; --acc2:#1C1B19; --onacc:#fff; --line:rgba(169,130,36,.35);
  --bar:rgba(28,27,25,.9); --f-head:'Playfair Display', Georgia, serif;
  --name:linear-gradient(135deg, #7E5E17 0%, #E4C46A 45%, #9C7A26 70%, #D9B75A 100%);
}
[data-theme="royal"]{
  --bg:#3B0A14; --paper:#FFF8EC; --ink:#3B0A14; --muted:#7D5A55; --acc:#7A1328; --acc2:#B8912F; --onacc:#fff; --line:rgba(122,19,40,.25);
  --bar:rgba(59,10,20,.9); --name:linear-gradient(180deg, #7A1328, #4A0B18);
}
[data-theme="leaf"]{
  --bg:#1F4D2B; --paper:#FAF6E6; --ink:#1F3A24; --muted:#5E6E57; --acc:#2E7D32; --acc2:#B07A00; --onacc:#fff; --line:rgba(46,125,50,.28);
  --bar:rgba(20,52,28,.9); --f-head:'Playfair Display', Georgia, serif; --name:linear-gradient(180deg, #2E7D32, #1B5E20);
}
[data-theme="marigold"]{
  --bg:#FFE3B8; --paper:#FFF9EE; --ink:#4A2310; --muted:#8A5A3C; --acc:#E65100; --acc2:#D81B60; --onacc:#fff; --line:rgba(230,81,0,.25);
  --wa:#FF9800; --wb:#D81B60; --w2:#FFC107; --w3:#FFE0B2; --bar:rgba(74,35,16,.88); --name:linear-gradient(180deg, #D84315, #AD1457);
}
[data-theme="modern"]{
  --bg:#ECEEF2; --paper:#fff; --ink:#1E2128; --muted:#6B7280; --acc:#D7282F; --acc2:#1E2128; --onacc:#fff; --line:#E3E5EA;
  --bar:rgba(30,33,40,.9); --f-head:'Playfair Display', Georgia, serif; --name:none;
}

/* ============================== page frame ============================== */
.mn-view{ margin:0; min-height:100vh; background:var(--bg); color:var(--ink); font:14px/1.5 var(--f-body); -webkit-font-smoothing:antialiased; overflow-x:clip; }
.mn-view *{ box-sizing:border-box; }
.mn-view a{ color:inherit; }
.mn-bar{ position:sticky; top:0; z-index:30; display:flex; align-items:center; justify-content:space-between; gap:10px; padding:8px 14px; background:var(--bar); color:var(--bar-ink); backdrop-filter:blur(8px); }
.mn-bar-name{ display:flex; align-items:center; gap:10px; min-width:0; }
.mn-bar-name img{ width:34px; height:34px; object-fit:contain; border-radius:6px; background:#fff; padding:2px; }
.mn-bar-name span{ display:flex; flex-direction:column; line-height:1.2; min-width:0; }
.mn-bar-name b{ font-size:15px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.mn-bar-name small{ font-size:12px; opacity:.75; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.mn-bar-tools{ display:flex; gap:4px; flex:0 0 auto; }
.mn-bar-tools button, .mn-bar-tools a{ display:inline-flex; align-items:center; gap:6px; border:1px solid rgba(255,255,255,.22); background:transparent; color:inherit; border-radius:18px; padding:6px 11px; font:500 13px var(--f-body); cursor:pointer; text-decoration:none; }
.mn-bar-tools button:hover, .mn-bar-tools a:hover, .mn-bar-tools [aria-pressed="true"]{ background:rgba(255,255,255,.14); }
.mn-bar-tools [aria-pressed="true"]{ border-color:#3CC06A; }
.mn-bar-tools svg{ width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.mn-bar-tools .is-own{ background:#fff; color:#1E2128; border-color:#fff; }
.mn-note{ margin:0; padding:9px 14px; background:#FFF4E5; color:#7A4A00; font-size:14px; text-align:center; }
.mn-stage{ padding:18px 12px 80px; }
.mn-book{ max-width:560px; margin:0 auto; }
.mn-made{ text-align:center; font-size:12px; color:var(--muted); opacity:.8; margin:0 0 70px; }
[data-theme="celebration"] .mn-made, [data-theme="royal"] .mn-made, [data-theme="leaf"] .mn-made{ color:rgba(255,255,255,.6); }

/* ---------- a sheet ---------- */
.mn-sheet{ position:relative; background:var(--paper); color:var(--ink); border-radius:6px; margin:0 auto 18px; min-height:735px; overflow:hidden; display:flex; flex-direction:column; box-shadow:0 12px 40px rgba(0,0,0,.28); }
.mn-in{ position:relative; z-index:2; flex:1; display:flex; flex-direction:column; padding:26px 26px 20px; text-align:center; }
.mn-flip .mn-book{ max-width:none; }
.mn-flip .mn-sheet{ margin:0; border-radius:0; min-height:0; height:100%; box-shadow:none; }
/* PageFlip puts display:block on each page, so in flip mode the parts are placed absolutely */
.mn-flip .mn-body{ position:absolute; top:44px; bottom:38px; left:0; right:0; overflow:auto; scrollbar-width:thin; }
.mn-flip .mn-ft{ position:absolute; left:20px; right:20px; bottom:0; margin:0; }
.mn-flip .mn-body.is-split > .mn-blk{ flex:0 0 auto; }
.mn-flip .mn-in{ position:absolute; inset:0; overflow:auto; scrollbar-width:none; padding:18px 20px 14px; }
.mn-flip .mn-cover .mn-logo{ height:52px; } .mn-flip .mn-couple{ font-size:46px; } .mn-flip .mn-title{ font-size:34px; } .mn-flip .mn-cover-mid{ padding:6px 0; }
.mn-flip .mn-date{ font-size:17px; } .mn-flip .mn-orn{ margin:8px auto; } .mn-flip .mn-welcome{ font-size:14px; } .mn-flip .mn-cover-foot .mn-qr img{ width:58px; height:58px; } .mn-flip .mn-cover-foot .mn-qrs{ flex-wrap:nowrap; }
.mn-flip .mn-back .mn-qr img{ width:66px; height:66px; } .mn-flip .mn-brand.is-big .mn-logo{ height:80px; } .mn-flip .mn-biz{ font-size:28px; }

/* decorations: the wave (celebration, marigold), the frame (banquet, royal, leaf) */
.mn-wave{ display:none; position:absolute; left:0; right:0; bottom:0; width:100%; height:58%; z-index:1; pointer-events:none; }
.mn-wave .w2{ fill:var(--w2); opacity:.85; } .mn-wave .w3{ fill:var(--w3); opacity:.9; }
[data-theme="celebration"] .mn-wave, [data-theme="marigold"] .mn-wave{ display:block; }
[data-theme="marigold"] .mn-wave{ opacity:.55; height:42%; }
.mn-frame{ display:none; position:absolute; inset:12px; z-index:1; pointer-events:none; border:1.5px solid var(--acc); outline:1px solid var(--acc); outline-offset:-6px; }
.mn-frame::before, .mn-frame::after{ content:'✦'; position:absolute; left:50%; transform:translateX(-50%); color:var(--acc); background:var(--paper); padding:0 8px; font-size:14px; line-height:1; }
.mn-frame::before{ top:-8px; } .mn-frame::after{ bottom:-8px; }
[data-theme="banquet"] .mn-frame, [data-theme="royal"] .mn-frame, [data-theme="leaf"] .mn-frame{ display:block; }
[data-theme="royal"] .mn-frame{ border-color:var(--acc2); outline-color:var(--acc); }
[data-theme="royal"] .mn-frame::before, [data-theme="royal"] .mn-frame::after{ content:'❁'; color:var(--acc2); }
[data-theme="leaf"] .mn-frame{ border-width:3px; border-color:var(--acc); outline-color:var(--acc2); outline-style:dashed; }
[data-theme="leaf"] .mn-frame::before, [data-theme="leaf"] .mn-frame::after{ content:'❦'; color:var(--acc); }
[data-theme="banquet"] .mn-cover .mn-in, [data-theme="banquet"] .mn-back .mn-in, [data-theme="royal"] .mn-cover .mn-in, [data-theme="royal"] .mn-back .mn-in, [data-theme="leaf"] .mn-cover .mn-in, [data-theme="leaf"] .mn-back .mn-in{ padding:34px 32px 28px; }

.mn-orn{ display:block; width:170px; height:1px; margin:12px auto; position:relative; background:linear-gradient(90deg, transparent, var(--acc), transparent); }
.mn-orn::after{ content:'❖'; position:absolute; left:50%; top:-9px; transform:translateX(-50%); padding:0 8px; background:var(--paper); color:var(--acc); font-size:13px; line-height:18px; }
[data-theme="celebration"] .mn-orn::after{ background:transparent; text-shadow:0 0 8px var(--paper), 0 0 4px var(--paper); }

/* ---------- cover ---------- */
.mn-cover-top{ display:flex; flex-direction:column; align-items:center; gap:6px; }
.mn-brand{ display:flex; justify-content:center; }
.mn-logo{ height:68px; max-width:190px; object-fit:contain; }
[data-theme="celebration"] .mn-logo{ filter:drop-shadow(0 2px 8px rgba(0,0,0,.35)); }
.mn-logo-txt{ width:64px; height:64px; border-radius:50%; display:flex; align-items:center; justify-content:center; font:700 30px var(--f-head); color:var(--onacc); background:linear-gradient(135deg, var(--acc), var(--acc2)); }
.mn-brand.is-big .mn-logo{ height:110px; max-width:240px; } .mn-brand.is-big .mn-logo-txt{ width:96px; height:96px; font-size:44px; }
.mn-by{ font-size:11px; letter-spacing:.28em; text-transform:uppercase; color:var(--muted); }
.mn-cover-mid{ flex:1; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:14px 0; }
.mn-kicker{ margin:0 0 6px; font-size:12px; letter-spacing:.32em; text-transform:uppercase; color:var(--acc2); font-weight:600; }
[data-theme="celebration"] .mn-kicker{ color:var(--acc2); }
.mn-cover-ph{ width:150px; height:150px; border-radius:50%; overflow:hidden; margin:6px 0 10px; border:3px solid var(--acc); box-shadow:0 0 0 5px var(--paper), 0 0 0 6px var(--acc2); }
.mn-cover-ph img{ width:100%; height:100%; object-fit:cover; }
.mn-couple{ margin:0; font:400 58px/1.05 var(--f-script); display:flex; flex-direction:column; align-items:center; }
.mn-couple span, .mn-title, .mn-biz{ background:var(--name); -webkit-background-clip:text; background-clip:text; color:transparent; }
[data-theme="modern"] .mn-couple span, [data-theme="modern"] .mn-title, [data-theme="modern"] .mn-biz{ color:var(--ink); background:none; }
.mn-couple i{ font:italic 500 28px var(--f-head); color:var(--acc); margin:2px 0; }
.mn-title{ margin:0; font:700 40px/1.12 var(--f-head); }
.mn-date{ margin:4px 0 0; font:600 20px var(--f-head); letter-spacing:.02em; }
.mn-venue{ margin:4px 0 0; font-size:14px; color:var(--muted); }
.mn-host{ margin:10px 0 0; font:italic 500 17px var(--f-head); }
.mn-welcome{ margin:10px auto 0; max-width:380px; font:italic 500 16px/1.45 var(--f-head); color:var(--muted); }
.mn-cover-foot{ display:flex; align-items:flex-end; justify-content:space-between; gap:12px; padding-top:12px; border-top:1px solid var(--line); text-align:left; }
[data-theme="celebration"] .mn-cover-foot{ border-top-color:rgba(255,255,255,.35); color:#fff; }
.mn-contact{ font-size:12.5px; line-height:1.45; min-width:0; }
.mn-contact p{ margin:0 0 4px; }
.mn-links{ display:flex; flex-wrap:wrap; gap:4px 12px; }
.mn-links a{ text-decoration:none; font-weight:500; white-space:nowrap; }
.mn-contact.is-big{ text-align:center; font-size:14px; margin:10px 0 4px; } .mn-contact.is-big .mn-links{ justify-content:center; }
.mn-qrs{ display:flex; gap:10px; justify-content:center; flex-wrap:wrap; }
.mn-qr{ display:flex; flex-direction:column; align-items:center; text-decoration:none; line-height:1.2; }
.mn-qr img{ width:74px; height:74px; background:#fff; padding:4px; border-radius:6px; box-shadow:0 2px 6px rgba(0,0,0,.18); }
.mn-qr b{ font-size:11px; margin-top:4px; } .mn-qr small{ font-size:10px; opacity:.8; }
.mn-back .mn-qr img{ width:88px; height:88px; }

/* ---------- back cover / business card ---------- */
.mn-back .mn-in{ justify-content:center; align-items:center; gap:4px; }
.mn-biz{ margin:6px 0 0; font:700 34px/1.15 var(--f-head); }
.mn-tagline{ margin:2px 0 0; font:italic 500 17px var(--f-head); color:var(--muted); }
.mn-about{ max-width:400px; margin:4px auto; font-size:13.5px; color:var(--muted); }
.mn-fssai{ margin:10px 0 0; font-size:11px; color:var(--muted); letter-spacing:.05em; }
[data-theme="celebration"] .mn-back .mn-qrs, [data-theme="celebration"] .mn-back .mn-contact{ color:#fff; }
.mn-solo{ max-width:560px; }
.mn-list{ display:flex; flex-direction:column; gap:6px; margin:16px 0; width:100%; max-width:360px; position:relative; z-index:2; }
.mn-list b{ font:600 13px var(--f-body); letter-spacing:.2em; text-transform:uppercase; color:var(--acc2); }
.mn-list a{ display:flex; justify-content:space-between; gap:8px; padding:11px 14px; border:1px solid var(--line); border-radius:10px; text-decoration:none; font-weight:600; background:rgba(255,255,255,.06); }
.mn-list a small{ font-weight:400; color:var(--muted); }
.mn-soon{ color:var(--muted); font-style:italic; }

/* ---------- inside pages ---------- */
.mn-hd{ position:relative; z-index:2; display:flex; align-items:center; gap:8px; padding:11px 20px 9px; font-size:11px; letter-spacing:.14em; text-transform:uppercase; }
.mn-hd::after{ content:''; position:absolute; left:20px; right:20px; bottom:0; height:1px; background:linear-gradient(90deg, var(--acc), var(--acc2), transparent); }
.mn-hd img{ width:24px; height:24px; object-fit:contain; }
.mn-hd b{ font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.mn-hd span{ margin-left:auto; color:var(--muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:55%; }
.mn-body{ position:relative; z-index:2; flex:1; display:flex; flex-direction:column; padding:14px 24px; min-height:0; }
.mn-body.is-split > .mn-blk{ flex:0 0 auto; }   /* two half blocks: each as tall as its content */
.mn-body.is-split > .mn-blk + .mn-blk{ border-top:1px dashed var(--line); margin-top:10px; padding-top:14px; }
.mn-ft{ position:relative; z-index:2; display:flex; justify-content:space-between; gap:8px; padding:8px 20px 11px; font-size:11px; color:var(--muted); border-top:1px solid var(--line); margin:0 20px; padding-left:0; padding-right:0; }
.mn-ft b{ color:var(--acc); }
.mn-inner::before{ content:''; position:absolute; right:-80px; bottom:-80px; width:240px; height:240px; border-radius:50%; background:radial-gradient(circle at 35% 35%, var(--acc), transparent 68%); opacity:.14; pointer-events:none; }
[data-theme="celebration"] .mn-inner::before{ opacity:.35; background:radial-gradient(circle at 35% 35%, var(--wb), var(--wa) 45%, transparent 70%); }
[data-theme="banquet"] .mn-inner{ box-shadow:inset 0 0 0 10px var(--paper), inset 0 0 0 11px var(--line); }
[data-theme="banquet"] .mn-inner::before{ display:none; }

.mn-h{ display:flex; align-items:center; gap:12px; margin:0 0 4px; font:700 25px/1.2 var(--f-head); color:var(--acc); text-align:center; }
.mn-h::before, .mn-h::after{ content:''; flex:1; height:1px; background:linear-gradient(90deg, transparent, var(--acc)); opacity:.7; }
.mn-h::after{ transform:scaleX(-1); }
[data-theme="celebration"] .mn-h{ color:#fff; } [data-theme="celebration"] .mn-h span{ background:var(--name); -webkit-background-clip:text; background-clip:text; color:transparent; }
[data-theme="banquet"] .mn-h span{ background:var(--name); -webkit-background-clip:text; background-clip:text; color:transparent; }
.mn-sec-note{ margin:0 0 8px; text-align:center; font:italic 500 15px var(--f-head); color:var(--muted); }
.mn-hf{ display:flex; justify-content:flex-end; gap:0; font-size:10px; letter-spacing:.14em; text-transform:uppercase; color:var(--muted); margin:2px 0 -2px; }
.mn-hf span{ width:58px; text-align:right; }

/* dishes */
.mn-items{ list-style:none; margin:4px 0 0; padding:0; }
.mn-items li{ padding:6px 0; transition:background .3s; border-radius:6px; }
.mn-items li.is-hit{ background:rgba(255,214,0,.28); box-shadow:0 0 0 4px rgba(255,214,0,.28); }
.mn-it{ display:flex; align-items:baseline; gap:6px; }
.mn-nm{ display:inline; min-width:0; }
.mn-nm b{ font-weight:600; font-size:15px; }
.mn-dots{ flex:1; min-width:14px; border-bottom:1.5px dotted var(--line); transform:translateY(-4px); }
.mn-pr{ white-space:nowrap; font-weight:700; color:var(--acc); font-size:14.5px; }
.mn-pr2{ display:inline-flex; } .mn-pr2 span{ width:58px; text-align:right; }
.mn-items small{ display:block; color:var(--muted); font-size:12.5px; line-height:1.35; margin-top:1px; font-style:italic; }
.mn-s-list small, .mn-s-twocol small{ padding-left:18px; }
.mn-blk{ container-type:inline-size; }
@container (min-width:600px){ .mn-s-twocol{ column-count:2; column-gap:26px; } .mn-s-twocol li{ break-inside:avoid; } }
.mn-s-centre{ text-align:center; }
.mn-s-centre li{ padding:7px 0; }
.mn-s-centre .mn-it{ justify-content:center; flex-wrap:wrap; column-gap:10px; }
.mn-s-centre .mn-nm b{ font:600 20px/1.2 var(--f-head); letter-spacing:.01em; }
.mn-s-centre .mn-pr{ font-size:13.5px; }
.mn-s-centre li + li::before{ content:'·'; display:block; color:var(--acc); line-height:.6; margin-bottom:6px; font-size:20px; opacity:.7; }
.mn-s-cards{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:10px; }
.mn-s-cards li{ border:1px solid var(--line); padding:8px; border-radius:10px; background:rgba(255,255,255,.04); }
.mn-s-cards img{ width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:7px; display:block; margin-bottom:6px; }
.mn-s-cards .mn-it{ justify-content:space-between; flex-wrap:wrap; }

/* diet marks (Indian food labels) and tags */
.mn-d{ display:inline-block; position:relative; width:13px; height:13px; border:1.5px solid #0F8A3C; border-radius:2px; margin-right:6px; vertical-align:-1px; background:#fff; flex:0 0 auto; }
.mn-d::after{ content:''; position:absolute; left:50%; top:50%; width:6px; height:6px; border-radius:50%; background:#0F8A3C; transform:translate(-50%,-50%); }
.mn-d-nonveg{ border-color:#8B2A0F; } .mn-d-nonveg::after{ width:0; height:0; border-radius:0; background:none; border-left:4px solid transparent; border-right:4px solid transparent; border-bottom:7px solid #8B2A0F; }
.mn-d-egg{ border-color:#D29A00; } .mn-d-egg::after{ background:#D29A00; }
.mn-d-jain{ border-color:#6A8D00; } .mn-d-jain::after{ background:#6A8D00; }
.mn-d-vegan{ border-color:#00796B; } .mn-d-vegan::after{ background:#00796B; border-radius:0 50% 0 50%; }
.mn-tag{ display:inline-block; margin-left:6px; padding:1px 7px; border-radius:9px; font:600 9.5px/1.6 var(--f-body); letter-spacing:.08em; text-transform:uppercase; font-style:normal; background:var(--acc); color:var(--onacc); vertical-align:2px; }
.mn-tag-spicy{ background:#C62828; color:#fff; } .mn-tag-live{ background:var(--acc2); color:var(--paper); } .mn-tag-new{ background:#2E7D32; color:#fff; }
.mn-vegonly .mn-items li[data-diet="nonveg"], .mn-vegonly .mn-items li[data-diet="egg"]{ display:none; }

/* ad, text, photo blocks */
.mn-ad{ display:flex; flex-direction:column; gap:12px; height:100%; border-radius:12px; overflow:hidden; background:linear-gradient(135deg, var(--acc), var(--acc2)); color:var(--onacc); text-align:left; }
[data-theme="celebration"] .mn-ad{ background:linear-gradient(135deg, var(--wa), var(--wb)); }
[data-theme="banquet"] .mn-ad{ background:#1C1B19; color:#F4E7C4; box-shadow:inset 0 0 0 1px #A98224, inset 0 0 0 6px #1C1B19, inset 0 0 0 7px #A98224; }
.mn-ad-ph{ flex:1 1 45%; min-height:130px; background:center/cover no-repeat; }
.mn-ad-tx{ padding:16px 18px 18px; display:flex; flex-direction:column; gap:6px; justify-content:center; flex:1; }
.mn-ad:not(.has-ph) .mn-ad-tx{ padding:26px 22px; text-align:center; align-items:center; }
.mn-ad-k{ font-size:10.5px; letter-spacing:.24em; text-transform:uppercase; opacity:.85; font-weight:600; }
.mn-ad h3{ margin:0; font:700 25px/1.15 var(--f-head); }
.mn-ad p{ margin:0; font-size:13.5px; opacity:.94; }
.mn-ad-cta{ display:flex; flex-wrap:wrap; gap:8px; margin-top:6px; }
.mn-ad:not(.has-ph) .mn-ad-cta{ justify-content:center; }
.mn-btn{ display:inline-flex; align-items:center; gap:6px; padding:8px 16px; border-radius:20px; background:#fff; color:#1E2128 !important; font-weight:600; font-size:13px; text-decoration:none; }
.mn-btn.is-ghost{ background:transparent; color:inherit !important; border:1.5px solid currentColor; }
.mn-half .mn-ad{ flex-direction:row; } .mn-half .mn-ad-ph{ flex:0 0 38%; min-height:0; }
.mn-text{ text-align:center; }
.mn-text h3{ margin:4px 0 8px; font:600 27px/1.2 var(--f-head); color:var(--acc); }
.mn-text img{ max-width:100%; max-height:260px; border-radius:10px; margin:6px 0 10px; }
.mn-text p{ margin:0 auto; max-width:420px; font:500 17px/1.5 var(--f-head); }
.mn-photo{ margin:0; height:100%; display:flex; flex-direction:column; gap:8px; }
.mn-photo img{ width:100%; flex:1; min-height:200px; max-height:620px; object-fit:cover; border-radius:10px; }
.mn-half .mn-photo img{ max-height:300px; }
.mn-photo figcaption{ text-align:center; font:italic 500 16px var(--f-head); color:var(--muted); }

/* ---------- nav, contents ---------- */
.mn-nav{ position:fixed; left:50%; bottom:14px; transform:translateX(-50%); z-index:25; display:flex; align-items:center; gap:10px; background:var(--bar); color:var(--bar-ink); border-radius:24px; padding:4px 6px; box-shadow:0 6px 20px rgba(0,0,0,.25); font-size:13px; }
.mn-nav button{ width:34px; height:34px; border-radius:50%; border:0; background:rgba(255,255,255,.12); color:inherit; font-size:20px; cursor:pointer; }
.mn-flip .mn-stage{ display:flex; justify-content:center; }
.mn-index{ position:fixed; inset:0; z-index:40; background:rgba(0,0,0,.45); display:flex; align-items:flex-start; justify-content:center; padding:60px 12px 12px; }
.mn-index[hidden]{ display:none; }
.mn-index-card{ width:100%; max-width:420px; max-height:calc(100vh - 80px); overflow:auto; background:#fff; color:#1E2128; border-radius:14px; padding:14px; font-family:'Poppins', system-ui, sans-serif; }
.mn-index-head{ display:flex; justify-content:space-between; align-items:center; margin-bottom:8px; font-size:16px; }
.mn-index-head button{ border:0; background:#F1F2F4; border-radius:50%; width:30px; height:30px; cursor:pointer; }
.mn-find{ width:100%; padding:10px 12px; border:1px solid #D9DCE1; border-radius:10px; font:inherit; font-size:16px; margin-bottom:8px; }
.mn-index ol{ list-style:none; margin:0; padding:0; }
.mn-index ol button, .mn-hits button{ display:flex; align-items:center; gap:10px; width:100%; text-align:left; padding:9px 8px; border:0; background:none; border-radius:8px; font:500 14px 'Poppins', sans-serif; cursor:pointer; color:inherit; }
.mn-index ol button:hover, .mn-hits button:hover{ background:#F4F5F7; }
.mn-index ol span, .mn-hits span{ flex:0 0 26px; height:26px; border-radius:50%; background:#1E2128; color:#fff; display:inline-flex; align-items:center; justify-content:center; font-size:12px; }
.mn-index small, .mn-hits small{ margin-left:auto; color:#8A8F99; font-size:12px; }
.mn-hits p{ color:#8A8F99; margin:6px 8px; }

@media (max-width:620px){
  .mn-stage{ padding:10px 8px 80px; }
  .mn-sheet{ min-height:0; }
  .mn-cover, .mn-back{ min-height:min(calc(100svh - 70px), 760px); }
  .mn-inner{ min-height:0; }
  .mn-scroll .mn-body.is-split > .mn-blk{ flex:0 0 auto; }
  .mn-body{ padding:12px 16px; }
  .mn-couple{ font-size:48px; } .mn-title{ font-size:33px; }
  .mn-cover-foot{ flex-direction:column; align-items:center; text-align:center; } .mn-cover-foot .mn-links{ justify-content:center; }
  .mn-bar-tools span{ display:none; } .mn-bar-tools button, .mn-bar-tools a{ padding:7px 9px; }
  .mn-bar-tools #mn-veg span{ display:inline; }
  .mn-half .mn-ad{ flex-direction:column; } .mn-half .mn-ad-ph{ min-height:120px; }
}
@media print{ .mn-bar, .mn-nav, .mn-made, .mn-note{ display:none !important; } .mn-view{ background:#fff; } .mn-sheet{ box-shadow:none; break-after:page; margin:0 auto; } }

/* ============================== poster (table tent) ============================== */
.mn-poster{ margin:0; background:#E5E7EB; font:14px/1.5 var(--f-body); color:var(--ink); }
.mn-poster *{ box-sizing:border-box; }
.mnp-tools{ display:flex; flex-wrap:wrap; gap:8px; justify-content:center; align-items:center; padding:12px; background:#1E2128; color:#fff; font-family:'Poppins', sans-serif; font-size:13px; }
.mnp-tools button, .mnp-tools a, .mnp-tools select{ border:1px solid rgba(255,255,255,.3); background:transparent; color:#fff; border-radius:16px; padding:6px 12px; font:inherit; cursor:pointer; text-decoration:none; }
.mnp-tools select option{ color:#1E2128; }
.mnp-tools .is-main{ background:#D7282F; border-color:#D7282F; }
.mnp-sheet{ display:flex; flex-wrap:wrap; gap:16px; justify-content:center; padding:20px; }
.mnp-card{ position:relative; overflow:hidden; width:100mm; height:150mm; background:var(--paper); color:var(--ink); display:flex; flex-direction:column; align-items:center; text-align:center; padding:12mm 9mm 9mm; box-shadow:0 8px 24px rgba(0,0,0,.2); }
.mnp-card .mn-wave{ display:block; height:40%; } .mn-poster:not([data-theme="celebration"]):not([data-theme="marigold"]) .mnp-card .mn-wave{ display:none; }
.mnp-card .mn-frame{ inset:5mm; }
.mnp-card > *:not(.mn-wave):not(.mn-frame){ position:relative; z-index:2; }
.mnp-card .mn-logo{ height:18mm; }
.mnp-k{ font-size:10px; letter-spacing:.3em; text-transform:uppercase; color:var(--acc2); margin:4mm 0 1mm; font-weight:600; }
.mnp-t{ font:400 34px/1.05 var(--f-script); margin:0; }
.mnp-t span{ background:var(--name); -webkit-background-clip:text; background-clip:text; color:transparent; }
[data-theme="modern"] .mnp-t span{ color:var(--ink); background:none; }
.mnp-d{ font:600 15px var(--f-head); margin:1mm 0 0; }
.mnp-qr{ margin:auto 0 2mm; background:#fff; padding:3mm; border-radius:4mm; box-shadow:0 3px 10px rgba(0,0,0,.2); }
.mnp-qr img{ width:44mm; height:44mm; display:block; }
.mnp-scan{ font:700 15px var(--f-body); letter-spacing:.04em; margin:0; }
.mnp-url{ font-size:9.5px; opacity:.85; margin:0; word-break:break-all; }
.mnp-by{ font-size:10px; margin:2mm 0 0; opacity:.85; }
[data-theme="celebration"] .mnp-scan, [data-theme="celebration"] .mnp-url, [data-theme="celebration"] .mnp-by{ color:#fff; }
.mnp-card.is-a5{ width:148mm; height:210mm; } .mnp-card.is-a5 .mnp-qr img{ width:70mm; height:70mm; } .mnp-card.is-a5 .mnp-t{ font-size:48px; }
@media print{ .mnp-tools{ display:none; } .mn-poster{ background:#fff; } .mnp-sheet{ padding:0; gap:6mm; } .mnp-card{ box-shadow:none; break-inside:avoid; -webkit-print-color-adjust:exact; print-color-adjust:exact; } }
@page{ margin:8mm; }

/* ============================== manager (menu/manage) and editor (menu/edit) ============================== */
.mnm-page .top-links svg{ width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.mnm-main{ max-width:1180px; margin:0 auto; padding:16px; }
.mnm-stats{ display:grid; grid-template-columns:repeat(3, minmax(110px, 160px)) 1fr; gap:10px; margin:0 0 14px; }
.mnm-stats > div{ background:var(--card); border:1px solid var(--border); border-radius:10px; padding:10px 14px; display:flex; flex-direction:column; }
.mnm-stats b{ font-size:22px; color:var(--ink); line-height:1.2; } .mnm-stats span{ font-size:12px; color:var(--ink-faint); }
.mnm-counter{ flex-direction:row !important; flex-wrap:wrap; align-items:center; gap:4px 12px; border-left:4px solid var(--red) !important; }
.mnm-counter > span:first-child{ font-weight:700; color:var(--ink) !important; font-size:14px !important; display:flex; flex-direction:column; } .mnm-counter small{ font-weight:400; color:var(--ink-faint); font-size:12px; }
.mnm-counter a:not(.mini-chip){ font-weight:600; color:var(--red); word-break:break-all; }
.mnm-counter-now{ font-size:13px !important; color:var(--ink-muted) !important; }
.mnm-tabs{ display:flex; gap:4px; border-bottom:1px solid var(--border); margin:0 0 14px; }
.mnm-tabs button{ display:inline-flex; align-items:center; gap:7px; border:0; background:none; padding:10px 14px; font-family:inherit; font-weight:600; font-size:14px; color:var(--ink-muted); cursor:pointer; border-bottom:3px solid transparent; margin-bottom:-1px; }
.mnm-tabs button.is-on{ color:var(--red); border-bottom-color:var(--red); }
.mnm-tabs svg{ width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }

.mnm-books{ display:grid; grid-template-columns:repeat(auto-fill, minmax(330px, 1fr)); gap:12px; }
.mnm-new{ display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; min-height:150px; border:2px dashed var(--border-strong); border-radius:12px; background:var(--card); cursor:pointer; color:var(--red); font-family:inherit; padding:14px; }
.mnm-new span{ font-size:34px; line-height:1; } .mnm-new b{ font-size:16px; } .mnm-new small{ color:var(--ink-faint); text-align:center; }
.mnm-new:hover:not(:disabled){ background:var(--red-tint); border-color:var(--red); } .mnm-new:disabled{ opacity:.6; cursor:not-allowed; }
.mnm-book{ display:flex; gap:12px; background:var(--card); border:1px solid var(--border); border-radius:12px; padding:10px; }
.mnm-book.is-live{ border-color:#2E7D32; box-shadow:0 0 0 2px rgba(46,125,50,.15); } .mnm-book.is-archived{ opacity:.7; }
.mnm-mini{ flex:0 0 96px; height:132px; border-radius:6px; background:var(--paper); color:var(--ink); display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:6px; position:relative; overflow:hidden; box-shadow:0 3px 10px rgba(0,0,0,.15); }
.mnm-mini::after{ content:''; position:absolute; left:-10%; right:-10%; bottom:-30%; height:55%; background:linear-gradient(135deg, var(--wa), var(--wb)); transform:rotate(-18deg); opacity:.9; }
[data-theme="banquet"].mnm-mini::after, [data-theme="royal"].mnm-mini::after, [data-theme="leaf"].mnm-mini::after, [data-theme="modern"].mnm-mini::after{ display:none; }
[data-theme="banquet"].mnm-mini, [data-theme="royal"].mnm-mini, [data-theme="leaf"].mnm-mini{ box-shadow:inset 0 0 0 4px var(--paper), inset 0 0 0 5px var(--acc), 0 3px 10px rgba(0,0,0,.15); }
.mnm-mini img{ width:34px; height:34px; border-radius:50%; object-fit:cover; margin-bottom:3px; position:relative; z-index:1; }
.mnm-mini small{ font-size:7px; letter-spacing:.2em; text-transform:uppercase; color:var(--acc2); position:relative; z-index:1; }
.mnm-mini b{ font:700 12px/1.15 'Playfair Display', serif; position:relative; z-index:1; }
.mnm-mini b.is-script{ font:400 17px/1.05 'Great Vibes', cursive; }
.mnm-mini em{ font-size:8px; font-style:normal; margin-top:3px; position:relative; z-index:1; color:var(--muted); }
.mnm-book-b{ flex:1; min-width:0; display:flex; flex-direction:column; gap:3px; }
.mnm-book-t{ display:flex; justify-content:space-between; gap:8px; align-items:flex-start; } .mnm-book-t b{ font-size:15px; color:var(--ink); line-height:1.3; }
.mnm-book-b > small{ color:var(--ink-faint); font-size:12px; }
.mnm-st{ flex:0 0 auto; font-size:11px; font-weight:700; padding:2px 8px; border-radius:10px; background:#EEF0F3; color:#5B616E; }
.mnm-st.st-live{ background:#E6F4EA; color:#1E6B3E; } .mnm-st.st-archived{ background:#F3F4F6; color:#8A8F99; }
.is-live .mnm-st{ background:#2E7D32; color:#fff; }
.mnm-book-tools{ display:flex; flex-wrap:wrap; gap:5px; margin-top:auto; padding-top:6px; }
.mnm-page a.mini-chip{ text-decoration:none; }
.mini-chip.is-danger{ color:#B42318; } .mini-chip.is-danger:hover{ border-color:#B42318; background:#FEF3F2; }

.mnm-card{ background:var(--card); border:1px solid var(--border); border-radius:12px; padding:18px; }
.mnm-logo-row{ display:flex; gap:16px; align-items:center; padding:0 0 16px; margin:0 0 16px; border-bottom:1px solid var(--border); }
.mnm-logo-row p{ margin:2px 0 10px; font-size:13px; max-width:520px; }
.mnm-logo-box{ flex:0 0 120px; height:120px; border-radius:12px; border:1px solid var(--border); background:repeating-conic-gradient(#F3F4F6 0 25%, #fff 0 50%) 0 0/16px 16px; display:flex; align-items:center; justify-content:center; overflow:hidden; }
.mnm-logo-box img{ max-width:92%; max-height:92%; object-fit:contain; }
.mnm-logo-box span{ font:700 44px 'Playfair Display', serif; color:var(--ink-faint); }
.mnm-up{ cursor:pointer; display:inline-flex; }
.mnm-grid{ display:grid; grid-template-columns:repeat(auto-fill, minmax(240px, 1fr)); gap:0 14px; }
.mnm-grid[hidden]{ display:none; }
.mnm-wide{ grid-column:1 / -1; }
.mnm-color input[type=color], .mne-color input[type=color]{ width:60px; height:34px; padding:0; border:1px solid var(--border); border-radius:6px; }
.mnm-color{ max-width:260px; }
.mne-color{ display:flex; align-items:center; gap:8px; }
.mnm-save{ margin-top:10px; }
.mnm-themes{ display:grid; grid-template-columns:repeat(auto-fill, minmax(150px, 1fr)); gap:8px; margin:0 0 14px; }
.mnm-th{ position:relative; display:flex; flex-direction:column; gap:2px; border:2px solid var(--border); border-radius:10px; padding:6px 6px 8px; cursor:pointer; background:var(--card); }
.mnm-th input{ position:absolute; opacity:0; pointer-events:none; }
.mnm-th:has(input:checked){ border-color:var(--red); box-shadow:0 0 0 3px var(--red-tint); }
.mnm-th b{ font-size:13px; color:var(--ink); } .mnm-th small{ font-size:11px; color:var(--ink-faint); line-height:1.3; }
.mnm-th-sw{ display:block; height:54px; border-radius:6px; background:var(--paper); position:relative; overflow:hidden; border:1px solid rgba(0,0,0,.06); }
.mnm-th-sw::before{ content:'Aa'; position:absolute; left:8px; top:6px; font:700 18px 'Playfair Display', serif; color:var(--acc); z-index:1; }
[data-theme="celebration"].mnm-th-sw::before{ color:#fff; }
.mnm-th-sw i{ position:absolute; left:-10%; right:-10%; bottom:-40%; height:70%; background:linear-gradient(135deg, var(--wa), var(--wb)); transform:rotate(-14deg); }
[data-theme="banquet"].mnm-th-sw i, [data-theme="royal"].mnm-th-sw i, [data-theme="leaf"].mnm-th-sw i{ left:auto; right:6px; bottom:6px; top:6px; width:24px; height:auto; transform:none; border:2px solid var(--acc); background:var(--acc2); opacity:.9; border-radius:3px; }
[data-theme="modern"].mnm-th-sw i{ height:6px; bottom:0; transform:none; left:0; right:0; background:var(--acc); }
.mnm-starts{ display:grid; grid-template-columns:repeat(auto-fill, minmax(170px, 1fr)); gap:8px; margin:0 0 14px; }
.mnm-start{ position:relative; display:flex; flex-direction:column; gap:3px; border:2px solid var(--border); border-radius:10px; padding:6px 6px 9px; cursor:pointer; }
.mnm-start input{ position:absolute; opacity:0; } .mnm-start:has(input:checked){ border-color:var(--red); box-shadow:0 0 0 3px var(--red-tint); }
.mnm-start-sw{ display:flex; align-items:center; justify-content:center; height:78px; border-radius:6px; background:var(--paper); position:relative; overflow:hidden; }
.mnm-start-sw em{ position:relative; z-index:1; font:400 24px 'Great Vibes', cursive; font-style:normal; background:var(--name); -webkit-background-clip:text; background-clip:text; color:transparent; }
[data-theme="modern"].mnm-start-sw em{ color:var(--ink); background:none; }
.mnm-start-sw i{ position:absolute; left:-10%; right:-10%; bottom:-45%; height:70%; background:linear-gradient(135deg, var(--wa), var(--wb)); transform:rotate(-14deg); }
[data-theme="banquet"].mnm-start-sw i, [data-theme="royal"].mnm-start-sw i, [data-theme="leaf"].mnm-start-sw i{ inset:5px; height:auto; transform:none; background:none; border:1.5px solid var(--acc); outline:1px solid var(--acc); outline-offset:-4px; }
[data-theme="modern"].mnm-start-sw i{ display:none; }
.mnm-start b{ font-size:13px; } .mnm-start small{ font-size:11.5px; color:var(--ink-faint); line-height:1.3; }

.mnm-pop{ position:fixed; inset:0; z-index:200; background:rgba(0,0,0,.45); display:flex; align-items:flex-start; justify-content:center; padding:50px 12px 12px; overflow:auto; }
.mnm-pop[hidden]{ display:none; }
.mnm-pop-card{ width:100%; max-width:620px; background:var(--card); border-radius:12px; padding:16px 18px; box-shadow:0 20px 50px rgba(0,0,0,.3); }
.mnm-pop-head{ display:flex; justify-content:space-between; align-items:center; margin:0 0 12px; font-size:17px; color:var(--ink); }
.mnm-pop-head button{ border:0; background:var(--bg); width:30px; height:30px; border-radius:50%; cursor:pointer; }
.mnm-pop .bk-save{ position:static; margin:12px 0 0; padding:10px 0 0; }

/* editor */
.mne-main{ grid-template-columns:320px minmax(0,1fr); }
.mne-list > li.mne-pg{ display:block; cursor:default; border:1px dashed var(--border-strong); border-radius:9px; margin:8px 0 2px; position:relative; padding:14px 4px 4px; }
.mne-list > li.mne-pg:hover{ background:none; }
.mne-pno{ position:absolute; top:-9px; left:10px; background:var(--card); padding:0 6px; font-size:11px; font-weight:700; color:var(--ink-faint); letter-spacing:.06em; text-transform:uppercase; }
.mne-pg ol{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:3px; }
.mne-row{ display:flex; align-items:center; gap:8px; padding:7px 8px; border-radius:8px; cursor:pointer; border:1px solid transparent; }
.mne-row:hover{ background:var(--card-hover); border-color:var(--border); }
.mne-row.is-on{ background:var(--red-tint); border-color:var(--red); }
.mne-row.is-half{ border-left:3px solid var(--border-strong); }
.mne-row:hover .bk-tools, .mne-row.is-on .bk-tools{ opacity:1; }
.mne-cover, .mne-back{ background:var(--bg); }
.mne-hint{ font-size:12px; color:var(--ink-faint); margin:8px 2px 0; }
.mne-size{ display:inline-flex; border:1px solid var(--border); border-radius:16px; overflow:hidden; }
.mne-size button{ border:0; background:var(--card); padding:5px 11px; font-family:inherit; font-weight:600; font-size:12px; cursor:pointer; color:var(--ink-muted); }
.mne-size button.is-on{ background:var(--red); color:#fff; }
.mne-copyto{ max-width:150px; height:30px; padding:2px 6px; font-size:12px; }
.mne-items-head{ display:flex; justify-content:space-between; align-items:center; gap:8px; margin:6px 0 8px; padding-top:10px; border-top:1px solid var(--border); font-size:15px; }
.mne-prmode{ font-size:12px; color:var(--ink-faint); }
.mne-tools{ display:flex; flex-wrap:wrap; gap:6px; align-items:center; margin:0 0 8px; }
.mne-all{ margin-left:auto; font-size:13px; display:flex; gap:6px; align-items:center; color:var(--ink-muted); }
.mne-bulk{ display:flex; flex-wrap:wrap; gap:6px; align-items:center; padding:8px 10px; background:#FFF8E1; border:1px solid #F5D98A; border-radius:8px; margin:0 0 8px; font-size:13px; position:sticky; top:62px; z-index:5; }
.mne-bulk[hidden]{ display:none; }
.mne-bulk-to{ display:inline-flex; gap:6px; align-items:center; margin-left:auto; } .mne-bulk-to select{ max-width:220px; height:30px; padding:2px 6px; font-size:12px; }
.mne-items{ display:flex; flex-direction:column; gap:6px; }
.mne-empty{ padding:16px; text-align:center; border:1px dashed var(--border); border-radius:8px; }
.mne-it{ display:grid; grid-template-columns:22px minmax(0,1fr) auto auto; gap:8px; align-items:center; padding:7px 8px; border:1px solid var(--border); border-radius:9px; background:var(--card); }
.mne-it.is-sel{ background:#FFFBEB; border-color:#F5D98A; }
.mne-it.is-hidden{ opacity:.55; background:repeating-linear-gradient(135deg, transparent 0 8px, rgba(0,0,0,.025) 8px 16px); }
.mne-tick{ width:17px; height:17px; }
.mne-it-main{ display:flex; flex-direction:column; gap:4px; min-width:0; }
.mne-it-main .field-input{ width:100%; box-sizing:border-box; }
.mne-nm{ font-weight:600; } .mne-ds{ font-size:13px !important; padding-top:4px !important; padding-bottom:4px !important; }
.mne-it-opts{ display:flex; gap:5px; align-items:center; }
.mne-it-opts .field-input{ height:34px; padding:3px 6px; font-size:13px; }
.mne-diet{ width:84px; } .mne-diet.d-veg{ color:#0F8A3C; font-weight:600; } .mne-diet.d-nonveg{ color:#8B2A0F; font-weight:600; } .mne-diet.d-egg{ color:#B07F00; font-weight:600; }
.mne-pr{ width:72px; } .mne-tagsel{ width:112px; }
.mne-it-ph{ width:34px; height:34px; border-radius:6px; border:1px dashed var(--border-strong); display:flex; align-items:center; justify-content:center; cursor:pointer; overflow:hidden; font-size:15px; }
.mne-it-ph img{ width:100%; height:100%; object-fit:cover; }
.mne-it-tools{ display:flex; gap:2px; }
.mne-it-tools button{ width:28px; height:28px; border:1px solid var(--border); background:var(--card); border-radius:6px; cursor:pointer; padding:0; font-size:13px; color:var(--ink-muted); }
.mne-it-tools button:hover{ border-color:var(--red); color:var(--red); }
.mne-libq{ width:100%; box-sizing:border-box; margin:0 0 8px; }
.mne-lib{ max-height:50vh; overflow:auto; display:flex; flex-direction:column; gap:2px; }
.mne-lib label{ display:flex; align-items:center; gap:8px; padding:7px 8px; border-radius:7px; cursor:pointer; font-size:14px; }
.mne-lib label:hover{ background:var(--card-hover); }
.mne-lib small{ color:var(--ink-faint); margin-left:auto; text-align:right; max-width:45%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
#paste-txt{ width:100%; box-sizing:border-box; font-family:inherit; margin-bottom:10px; }

@media (max-width:900px){
  .mnm-stats{ grid-template-columns:repeat(3, 1fr); } .mnm-counter{ grid-column:1 / -1; }
  .mne-it{ grid-template-columns:22px minmax(0,1fr); } .mne-it-opts, .mne-it-tools{ grid-column:2; flex-wrap:wrap; }
  .mne-bulk-to{ margin-left:0; }
}
@media (max-width:800px){ .mne-main{ grid-template-columns:1fr; } }
@media (max-width:560px){
  .mnm-main{ padding:10px; }
  .mnm-books{ grid-template-columns:1fr; }
  .mnm-stats b{ font-size:18px; }
  .mnm-logo-row{ flex-direction:column; align-items:flex-start; }
  .mne-it-opts .field-input{ font-size:16px; }
}

/* ============================== Temple toran look, banner sections, designed pages ============================== */
[data-theme="toran"]{
  --bg:#EFE4CF; --paper:#FFF8EC; --ink:#2A1A12; --muted:#5A4636; --acc:#7A1F2B; --acc2:#2F6B3A; --onacc:#fff; --line:rgba(122,31,43,.22);
  --bar:rgba(122,31,43,.95); --f-head:'Rozha One', Georgia, serif; --f-script:'Rozha One', Georgia, serif; --f-body:'Mukta', 'Segoe UI', system-ui, sans-serif; --name:none;
}
[data-theme="toran"] .mn-couple span, [data-theme="toran"] .mn-title, [data-theme="toran"] .mn-biz, [data-theme="toran"] .mnp-t span{ color:var(--acc); background:none; }
[data-theme="toran"] .mn-couple{ font:400 50px/1.08 var(--f-head); }
[data-theme="toran"] .mn-couple i{ font:600 22px var(--f-body); color:#C98A0C; font-style:normal; letter-spacing:.2em; margin:4px 0; }
[data-theme="toran"] .mn-kicker{ color:var(--acc2); }
[data-theme="toran"] .mn-date{ font:600 19px var(--f-body); }
[data-theme="toran"] .mn-host, [data-theme="toran"] .mn-welcome, [data-theme="toran"] .mn-tagline, [data-theme="toran"] .mn-sec-note{ font-family:var(--f-body); font-style:normal; }
[data-theme="toran"] .mn-inner::before{ display:none; }
[data-theme="toran"] .mn-hd::after{ background:linear-gradient(90deg, #7A1F2B, #E8A317, transparent); }
[data-theme="toran"] .mn-h{ font-weight:400; }
[data-theme="toran"] .mn-h::before, [data-theme="toran"] .mn-h::after{ background:linear-gradient(90deg, transparent, #E8A317); }
[data-theme="toran"] .mn-orn{ background:linear-gradient(90deg, transparent, #E8A317, transparent); }
[data-theme="toran"] .mn-orn::after{ color:#E8A317; }
[data-theme="toran"] .mn-body.is-split > .mn-blk + .mn-blk{ border-top:0; margin-top:12px; padding-top:0; }
[data-theme="toran"] .mn-ad{ background:linear-gradient(135deg, #7A1F2B, #B24A14); }
[data-theme="toran"] .mn-text h3{ font:400 27px/1.2 var(--f-head); color:var(--acc); }
[data-theme="toran"] .mn-text p{ font:500 16px/1.5 var(--f-body); color:var(--muted); }

/* the border: maroon-gold zigzag with a marigold & mango-leaf toran on top, zigzag at the foot */
.mn-trim-t, .mn-trim-b{ display:none; position:absolute; left:0; right:0; z-index:3; pointer-events:none; }
[data-theme="toran"] .mn-trim-t, [data-theme="toran"] .mn-trim-b{ display:block; }
.mn-trim-t{ top:0; height:71px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26'%3E%3Crect width='26' height='26' fill='%237A1F2B'/%3E%3Cpath d='M0 26L13 6L26 26Z' fill='%23E8A317'/%3E%3Ccircle cx='13' cy='20' r='3' fill='%237A1F2B'/%3E%3C/svg%3E") 0 0/26px 26px repeat-x,
    linear-gradient(#7A4A1F, #7A4A1F) 0 26px/100% 3px no-repeat,
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='42'%3E%3Ccircle cx='11' cy='12' r='8' fill='%23E8A317'/%3E%3Ccircle cx='11' cy='12' r='4' fill='%23D9661F'/%3E%3Cpath d='M33 3C41 14 39 28 33 40C27 28 25 14 33 3Z' fill='%232F6B3A'/%3E%3Cpath d='M33 6L33 36' stroke='%238FBF6A' stroke-width='1.2'/%3E%3C/svg%3E") 4px 29px/44px 42px repeat-x; }
.mn-trim-b{ bottom:0; height:26px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26'%3E%3Crect width='26' height='26' fill='%237A1F2B'/%3E%3Cpath d='M0 0L13 20L26 0Z' fill='%23E8A317'/%3E%3Ccircle cx='13' cy='6' r='3' fill='%237A1F2B'/%3E%3C/svg%3E") 0 0/26px 26px repeat-x; }
.mn-inner .mn-trim-t{ height:45px; background-size:16px 16px, 100% 2px, 28px 27px; background-position:0 0, 0 16px, 3px 18px; }
.mn-inner .mn-trim-b{ height:14px; background-size:14px 14px; }
[data-theme="toran"] .mn-cover .mn-in, [data-theme="toran"] .mn-back .mn-in{ padding-top:84px; padding-bottom:40px; }
[data-theme="toran"] .mn-inner{ padding-top:45px; padding-bottom:14px; }
.mn-flip[data-theme="toran"] .mn-in{ padding:80px 22px 34px; }
.mn-flip[data-theme="toran"] .mn-body{ top:90px; bottom:52px; }
.mn-flip[data-theme="toran"] .mn-ft{ bottom:14px; }
.mn-flower{ display:none; width:92px; height:92px; margin:0 auto 6px; }
[data-theme="toran"] .mn-flower{ display:block; }
[data-theme="toran"] .mn-text .mn-orn{ display:none; }

/* banner sections: a coloured bar with the day, title and serving time, dishes in two columns */
.mn-ban{ --sec:var(--acc); border:2px solid var(--sec); border-radius:14px; background:#fff; overflow:hidden; padding-bottom:10px; color:#2A1A12; }
.mn-ban-h{ display:flex; align-items:center; justify-content:space-between; gap:10px; padding:6px 14px; background:var(--sec); color:#fff; }
.mn-ban-h h2{ margin:0; display:flex; align-items:center; gap:10px; min-width:0; font:400 22px/1.15 var(--f-head); }
.mn-ban-h h2 small{ font:500 13px var(--f-body); letter-spacing:.05em; opacity:.95; }
.mn-ban-h time{ font:600 13px var(--f-body); white-space:nowrap; opacity:.95; }
.mn-day{ flex:0 0 auto; font:700 10.5px/1 var(--f-body); letter-spacing:.14em; text-transform:uppercase; font-style:normal; background:rgba(255,255,255,.18); border:1px solid rgba(255,255,255,.55); padding:4px 7px; border-radius:9px; }
.mn-day-k{ margin:0; text-align:center; font-size:11px; letter-spacing:.24em; text-transform:uppercase; color:var(--acc2); font-weight:700; }
.mn-items.mn-s-banner{ display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); column-gap:14px; row-gap:0; padding:8px 14px 0; margin:0; }
.mn-s-banner li{ position:relative; padding:2px 0 2px 16px; }
.mn-s-banner li::before{ content:''; position:absolute; left:1px; top:9px; width:7px; height:7px; background:var(--sec); transform:rotate(45deg); }
.mn-s-banner .mn-nm b{ font-weight:500; font-size:14.5px; line-height:1.3; }
.mn-s-banner small{ padding:0; }
@container (max-width:360px){ .mn-items.mn-s-banner{ grid-template-columns:1fr; } }
.mn-strip{ display:flex; gap:12px; align-items:center; margin:10px 0 0; padding:7px 12px; background:#FCEBC4; border-radius:10px; font-size:14.5px; color:#2A1A12; }
.mn-ban .mn-strip{ margin:8px 14px 0; padding:5px 12px; }
.mn-strip b{ flex:0 0 auto; font-size:11.5px; letter-spacing:.12em; text-transform:uppercase; color:#7A1F2B; }

/* designed pages (PDF page, picture or HTML) — full bleed, no header / footer */
.mn-sheet.mn-design{ min-height:0; display:block; background:#fff; }
.mn-dz-img{ display:block; width:100%; height:auto; }
.mn-flip .mn-dz-img{ width:100%; height:100%; object-fit:contain; }
.mn-dz-html{ position:relative; overflow:hidden; margin:0 auto; }
.mn-dz-html iframe{ position:absolute; left:0; top:0; border:0; transform-origin:0 0; display:block; background:#fff; }
.mn-flip .mn-dz-html{ position:absolute; left:50%; top:50%; transform:translate(-50%, -50%); }
.mn-dz-no{ position:absolute; right:8px; bottom:6px; z-index:2; font-size:10px; background:rgba(0,0,0,.45); color:#fff; padding:1px 7px; border-radius:8px; }

/* Temple toran in the manager's swatches */
[data-theme="toran"].mnm-th-sw i, [data-theme="toran"].mnm-start-sw i{ left:0; right:0; top:0; bottom:auto; width:auto; height:10px; transform:none; border:0; outline:0; border-radius:0; opacity:1;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26'%3E%3Crect width='26' height='26' fill='%237A1F2B'/%3E%3Cpath d='M0 26L13 6L26 26Z' fill='%23E8A317'/%3E%3C/svg%3E") 0 0/10px 10px repeat-x; }
[data-theme="toran"].mnm-start-sw em{ color:var(--acc); background:none; font-family:'Rozha One', Georgia, serif; font-size:20px; }
[data-theme="toran"].mnm-mini::after{ left:0; right:0; top:0; bottom:auto; height:9px; transform:none; opacity:1;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26'%3E%3Crect width='26' height='26' fill='%237A1F2B'/%3E%3Cpath d='M0 26L13 6L26 26Z' fill='%23E8A317'/%3E%3C/svg%3E") 0 0/9px 9px repeat-x; }
.mn-poster[data-theme="toran"] .mnp-card{ padding-top:24mm; }
.mn-poster .mnp-card > .mn-trim-t, .mn-poster .mnp-card > .mn-trim-b{ position:absolute; }

/* editor: import, designed-page preview, start over */
.mne-import{ display:grid; grid-template-columns:34px 1fr; grid-template-rows:auto auto; column-gap:8px; align-items:center; width:100%; margin:8px 0 0; padding:9px 10px; text-align:left; border:1.5px dashed var(--red); border-radius:10px; background:var(--red-tint); cursor:pointer; font-family:inherit; color:var(--ink); }
.mne-import span{ grid-row:1 / 3; width:34px; height:34px; border-radius:50%; background:var(--red); color:#fff; display:flex; align-items:center; justify-content:center; font-size:16px; }
.mne-import b{ font-size:14px; } .mne-import small{ font-size:12px; color:var(--ink-faint); }
.mne-import:hover{ background:#fff; }
.mne-imp{ margin:0 0 12px; padding:0 0 0 18px; font-size:13.5px; color:var(--ink-muted); } .mne-imp li{ margin:3px 0; } .mne-imp b{ color:var(--ink); margin-right:4px; }
.mne-dz{ position:relative; overflow:hidden; border:1px solid var(--border); border-radius:6px; background:#fff; margin:0 0 10px; box-shadow:0 4px 14px rgba(0,0,0,.08); }
.mne-dz iframe{ position:absolute; left:0; top:0; border:0; transform-origin:0 0; pointer-events:none; }
.mne-dz img{ width:100%; height:100%; object-fit:contain; display:block; }
.mne-restart{ margin:14px 0 0; padding:10px 12px; border:1px solid var(--border); border-radius:8px; background:var(--card-hover); }
.mne-restart summary{ cursor:pointer; font-weight:600; font-size:14px; color:var(--ink); }
.mne-restart p{ margin:8px 0; font-size:13px; }
.mne-restart-row{ display:flex; gap:8px; align-items:center; flex-wrap:wrap; } .mne-restart-row select{ max-width:320px; }
.mne-g4{ grid-template-columns:repeat(auto-fill, minmax(150px, 1fr)); }

/* a block alone on its page fills it (an ad or a photo is centred, not stuck at the top) */
.mn-body > .mn-blk.mn-full:only-child{ flex:1 1 auto; display:flex; flex-direction:column; }
.mn-blk.mn-full:only-child > .mn-ad, .mn-blk.mn-full:only-child > .mn-photo{ flex:1 1 auto; }
.mn-blk.mn-full:only-child > .mn-ad:not(.has-ph){ justify-content:center; }
.mn-h, .mn-text h3, .mn-ad h3, .mn-title, .mn-biz{ text-wrap:balance; }
.mne-size[hidden]{ display:none; }

/* new book: build it here / upload my design */
.mnm-modes{ display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:0 0 14px; }
.mnm-mode{ position:relative; display:grid; grid-template-columns:40px 1fr; column-gap:10px; align-items:start; border:2px solid var(--border); border-radius:12px; padding:12px; cursor:pointer; }
.mnm-mode input{ position:absolute; opacity:0; }
.mnm-mode:has(input:checked){ border-color:var(--red); box-shadow:0 0 0 3px var(--red-tint); background:var(--red-tint); }
.mnm-mode span{ grid-row:1 / 3; font-size:26px; line-height:40px; text-align:center; }
.mnm-mode b{ font-size:15px; color:var(--ink); } .mnm-mode small{ font-size:12.5px; color:var(--ink-muted); line-height:1.35; }
.mnm-mini-up{ background:#F4F5F7; color:#1E2128; border:1px dashed var(--border-strong); box-shadow:none; }
.mnm-mini-up span{ font-size:28px; } .mnm-mini-up em{ color:var(--ink-faint); }
@media (max-width:560px){ .mnm-modes{ grid-template-columns:1fr; } }
.mn-bar-tools [hidden]{ display:none; }   /* Veg only (no non-veg dishes), Flip (phones) */

/* reading style 'book': the roster-style flip book — fills the screen, side arrows, page count pill */
.mn-full{ overflow:hidden; height:100svh; }
.mn-full .mn-stage{ padding:10px 65px 58px; display:flex; justify-content:center; align-items:center; min-height:calc(100svh - 52px); box-sizing:border-box; }
.mn-full .mn-made{ display:none; }
.mn-side{ display:none; position:fixed; top:50%; z-index:24; width:46px; height:46px; margin-top:-23px; border-radius:50%; border:0; background:var(--bar); color:var(--bar-ink); font-size:30px; line-height:1; cursor:pointer; box-shadow:0 6px 18px rgba(0,0,0,.25); }
.mn-side.prev{ left:12px; } .mn-side.next{ right:12px; }
.mn-side:disabled{ opacity:.3; cursor:default; }
.mn-full .mn-side{ display:block; }
.mn-full .mn-nav button{ display:none; }
.mn-full .mn-nav{ padding:6px 14px; }
#mn-sound .snd-off, #mn-sound.is-off .snd-on{ display:none; } #mn-sound.is-off .snd-off{ display:inline; }
@media (max-width:699px){ .mn-full .mn-stage{ padding:8px 8px 58px; } .mn-full .mn-side{ display:none; } .mn-full .mn-nav button{ display:inline-block; } }

/* flip: a fine paper edge, so a curling corner reads against a page of the same colour */
.mn-flip .mn-sheet{ box-shadow:inset 0 0 0 1px rgba(128,128,128,.28), inset -14px 0 22px -18px rgba(0,0,0,.35); }
