@font-face{font-family:"Fredoka";src:url(fonts/fredoka-heb.woff2) format("woff2");font-weight:300 700;unicode-range:U+0590-05FF,U+FB1D-FB4F,U+200C-2010,U+20AA,U+25CC}
@font-face{font-family:"NotoHeb";src:url(fonts/notosanshebrew-heb.woff2) format("woff2");font-weight:100 900;unicode-range:U+0590-05FF,U+FB1D-FB4F,U+200C-2010,U+20AA,U+25CC}
@font-face{font-family:"RubikHeb";src:url(fonts/rubik-heb.woff2) format("woff2");font-weight:300 900;unicode-range:U+0590-05FF,U+FB1D-FB4F,U+200C-2010,U+20AA,U+25CC}
@font-face{font-family:"RubikLat";src:url(fonts/rubik-lat.woff2) format("woff2");font-weight:300 900}
:root{--coral:#ff6b4a;--sun:#ffc23c;--teal:#12b5a6;--berry:#e6407a;--sky:#3b82f6;--grape:#8b5cf6;--lime:#7cc243;--ink:#2b2140;--muted:#6b6280;--bg:#fff7ec;--card:#fff;--line:#f0e2cf;
--ui:"RubikLat","RubikHeb","NotoHeb",system-ui,sans-serif;--head:"RubikLat","Fredoka","RubikHeb",system-ui,sans-serif;--content:"RubikLat","NotoHeb",system-ui,sans-serif}
*{box-sizing:border-box}
html,body{margin:0}
body{font-family:var(--ui);color:var(--ink);background:var(--bg);background-image:radial-gradient(circle at 10% 0,#ffe1c7 0,transparent 40%),radial-gradient(circle at 95% 20%,#ffe9a8 0,transparent 35%);min-height:100vh}
[hidden]{display:none!important}
button{font-family:inherit;cursor:pointer}
.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 16px;background:linear-gradient(90deg,var(--coral),#ff8a3d 55%,var(--sun));color:#fff;box-shadow:0 2px 12px rgba(200,80,30,.25)}
.brandbtn{display:flex;align-items:center;gap:8px;background:none;border:0;color:#fff;font:700 20px var(--head);padding:4px}
.logo-dot{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:rgba(255,255,255,.25);font-size:20px}
.toplogo{height:38px;background:#fff;border-radius:10px;padding:3px 8px}
#home{max-width:1180px;margin:0 auto;padding:18px 16px 40px}
.hero{text-align:center;padding:18px 8px 6px}
.hero h1{font:700 clamp(30px,5vw,48px)/1.1 var(--head);margin:0 0 10px;background:linear-gradient(90deg,var(--berry),var(--coral),#f59e0b);-webkit-background-clip:text;background-clip:text;color:transparent}
.lead{font-size:clamp(16px,2.2vw,19px);color:var(--muted);max-width:720px;margin:0 auto 14px;line-height:1.5}
.steps{display:inline-flex;flex-wrap:wrap;justify-content:center;gap:8px;align-items:center;font-weight:600}
.steps span:not(.arr){background:#fff;border:2px solid var(--line);padding:6px 12px;border-radius:999px}
.steps .arr{color:var(--coral);font-weight:800}
.filters{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:20px 0 14px}
.filters button{border:2px solid var(--line);background:#fff;border-radius:999px;padding:7px 14px;font-weight:600;color:var(--ink)}
.filters button.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}
.gcard{position:relative;text-align:right;border:0;border-radius:22px;padding:16px 16px 14px;background:#fff;box-shadow:0 4px 0 var(--c2),0 8px 22px rgba(120,60,20,.10);transition:transform .15s,box-shadow .15s;overflow:hidden;color:var(--ink);display:flex;flex-direction:column;gap:6px;min-height:150px}
.gcard:hover,.gcard:focus-visible{transform:translateY(-3px);box-shadow:0 7px 0 var(--c2),0 14px 26px rgba(120,60,20,.16);outline:none}
.gcard .ic{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;font-size:30px;background:var(--c1)}
.gcard h3{margin:4px 0 0;font:700 21px var(--head)}
.gcard p{margin:0;color:var(--muted);font-size:14.5px;line-height:1.4}
.gcard .tag{position:absolute;top:14px;left:14px;font-size:12px;font-weight:700;padding:3px 9px;border-radius:999px;background:var(--c1);color:var(--c3)}
.gcard::after{content:"";position:absolute;left:-30px;bottom:-30px;width:110px;height:110px;border-radius:50%;background:var(--c1);opacity:.55}
.homefoot{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:30px;color:var(--muted);font-size:14px}
.homefoot img{height:44px}
/* editor */
#editor{max-width:1500px;margin:0 auto;padding:10px 14px 90px}
.edhead{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:6px 0 10px}
.edhead h2{font:700 24px var(--head);margin:0 6px;flex:1;min-width:150px;display:flex;align-items:center;gap:8px}
.edhead h2 .ic{font-size:26px}
.edtools{display:flex;gap:8px;flex-wrap:wrap}
.btn{border:2px solid var(--line);background:#fff;color:var(--ink);border-radius:14px;padding:9px 14px;font-weight:700;font-size:15px;white-space:nowrap}
.btn:hover{border-color:#e7c9a5}
.btn.primary{background:linear-gradient(180deg,#ff7a55,var(--coral));border-color:#e5532f;color:#fff;box-shadow:0 3px 0 #d4471f}
.btn.ghost{background:transparent}
.btn.small{padding:6px 10px;font-size:14px;border-radius:12px}
.edbody{display:grid;grid-template-columns:minmax(330px,430px) 1fr;gap:16px;align-items:start}
.panel{background:#fff;border-radius:20px;box-shadow:0 6px 20px rgba(120,60,20,.08);border:1px solid var(--line)}
.formpanel{padding:14px 16px 18px;position:sticky;top:66px;max-height:calc(100vh - 80px);overflow:auto}
.fld{margin:0 0 13px}
.fld>label,.fld>.lbl{display:block;font-weight:700;margin-bottom:5px;font-size:15px}
.fld .hint{font-size:13px;color:var(--muted);margin:3px 0 0;line-height:1.4}
.fld textarea,.fld input[type=text],.fld input[type=number],.fld select{width:100%;font:16px var(--content);color:var(--ink);border:2px solid var(--line);border-radius:12px;padding:9px 11px;background:#fffdf9}
.fld textarea{min-height:150px;resize:vertical;line-height:1.55}
.fld textarea:focus,.fld input:focus,.fld select:focus{outline:none;border-color:var(--coral);box-shadow:0 0 0 3px #ffd9cc}
.fld.check label{display:flex;gap:8px;align-items:center;font-weight:600;cursor:pointer}
.fld.check input{width:20px;height:20px;accent-color:var(--coral)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.seg{display:flex;flex-wrap:wrap;gap:6px}
.seg button{border:2px solid var(--line);background:#fffdf9;border-radius:11px;padding:7px 11px;font-weight:600;font-size:14px;color:var(--ink)}
.seg button.on{background:var(--ink);border-color:var(--ink);color:#fff}
.sect{font:700 13px var(--ui);color:var(--coral);letter-spacing:.3px;margin:16px 0 8px;padding-top:10px;border-top:2px dashed var(--line)}
.imgs{display:grid;gap:6px}
.imgrow{display:flex;align-items:center;gap:8px;font-size:14px}
.imgrow img{width:38px;height:38px;object-fit:cover;border-radius:8px;border:1px solid var(--line)}
.imgrow label{border:2px dashed var(--line);border-radius:10px;padding:4px 9px;cursor:pointer;font-weight:600;white-space:nowrap}
.imgrow input{display:none}
.imgrow span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.prevpanel{padding:10px 12px 16px;min-height:60vh;background:#f3ece2}
.prevbar{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:2px 4px 10px;color:var(--muted);font-weight:600;font-size:14px}
.warn{background:#fff4d6;border:2px solid #ffd77a;color:#7a5200;border-radius:12px;padding:8px 12px;margin:0 4px 10px;font-size:14px}
#previewWrap{overflow:hidden}
#pages{display:flex;flex-direction:column;align-items:center;gap:18px;transform-origin:top center}
.tabs{display:none}
.mobilebar{display:none}
/* modal / toast */
.modal{position:fixed;inset:0;background:rgba(43,33,64,.45);display:grid;place-items:center;z-index:50;padding:16px}
.modalbox{background:#fff;border-radius:20px;padding:18px;max-width:460px;width:100%;max-height:80vh;overflow:auto}
.modalbox h3{margin:0 0 10px;font:700 20px var(--head)}
.modalbox .close{margin-top:12px;width:100%}
.slist{display:grid;gap:8px}
.sitem{display:flex;gap:6px;align-items:center}
.sitem button.ld{flex:1;text-align:right}
.toast{position:fixed;bottom:84px;left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;padding:10px 18px;border-radius:999px;font-weight:600;z-index:60;box-shadow:0 6px 20px rgba(0,0,0,.2)}
@media (max-width:900px){
 .edbody{grid-template-columns:1fr}
 .formpanel{position:static;max-height:none}
 .edtools{display:none}
 .tabs{display:flex;gap:6px;background:#fff;border-radius:14px;padding:4px;border:1px solid var(--line);margin-bottom:10px;position:sticky;top:58px;z-index:10}
 .tabs button{flex:1;border:0;border-radius:10px;padding:9px;font-weight:700;background:transparent;color:var(--ink);font-size:15px}
 .tabs button.on{background:var(--ink);color:#fff}
 #editor[data-tab=form] .prevpanel{display:none}
 #editor[data-tab=prev] .formpanel{display:none}
 .mobilebar{display:flex;gap:8px;position:fixed;bottom:0;left:0;right:0;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(255,247,236,.96);border-top:1px solid var(--line);z-index:30}
 .mobilebar .btn{flex:1;padding:12px 6px}
 .edhead h2{font-size:21px}
 .topbar{padding:6px 12px}.brandbtn{font-size:17px}.toplogo{height:32px}
 .prevpanel{padding:8px 6px 14px}
}
@media (max-width:420px){.grid{grid-template-columns:1fr 1fr;gap:10px}.gcard{min-height:0;padding:12px;border-radius:18px}.gcard .ic{width:44px;height:44px;font-size:24px;border-radius:13px}.gcard h3{font-size:17px}.gcard p{font-size:12.5px}.gcard .tag{display:none}.apptitle{font-size:16px}}

/* ======== PRINT PAGES ======== */
.page{width:210mm;height:297mm;background:#fff;position:relative;overflow:hidden;box-shadow:0 4px 18px rgba(60,30,10,.18);padding:12mm 12mm 16mm;font-family:var(--content);color:#1d1830;direction:rtl;display:flex;flex-direction:column;--a1:#ff6b4a;--a2:#ffc23c;--a3:#12b5a6;--a4:#e6407a;--a5:#3b82f6;--a6:#8b5cf6;--soft:#fff3e8;--soft2:#eaf8f6;--ln:#2b2140;--fs:1}
.page.bw{--a1:#555;--a2:#888;--a3:#666;--a4:#444;--a5:#777;--a6:#999;--soft:#f2f2f2;--soft2:#f6f6f6}
.page.bw .colorful{filter:grayscale(1)}
.ph{display:flex;align-items:flex-start;gap:8mm;margin-bottom:5mm}
.ph .tt{flex:1}
.ph h1{font:700 calc(25pt*var(--fs)) var(--head);margin:0;color:var(--a1);line-height:1.15}
.page.bw .ph h1{color:#111}
.ph .ins{margin:2mm 0 0;font-size:calc(12.5pt*var(--fs));line-height:1.45;color:#3a3350}
.nameline{display:flex;gap:6mm;font-size:11pt;color:#3a3350;white-space:nowrap;padding-top:2mm}
.nameline span{display:inline-block;border-bottom:1.2px solid #8a8299;min-width:34mm;height:6mm}
.ph .band{height:2.2mm;border-radius:2mm;background:linear-gradient(90deg,var(--a1),var(--a2),var(--a3));margin-top:3mm}
.page.bw .ph .band{background:#bbb}
.pbody{flex:1;position:relative;min-height:0}
.pf{position:absolute;bottom:5mm;left:12mm;right:12mm;display:flex;align-items:center;justify-content:space-between;font-size:8.5pt;color:#8a8299}
.pf img{height:9mm}
.page.bw .pf img{filter:grayscale(1)}
.keytag{display:inline-block;background:var(--a3);color:#fff;font:700 10pt var(--ui);padding:1mm 3mm;border-radius:3mm;margin-bottom:2mm}
.page.bw .keytag{background:#333}
.cutgrid{display:grid;gap:0;position:relative}
.cut{border:0.3mm dashed #9a94a8}
.fs-l{--fs:1.18}.fs-xl{--fs:1.38}
/* word search */
.ws-grid{display:grid;margin:0 auto;border:0.6mm solid var(--ln);border-radius:2mm;overflow:hidden;direction:rtl}
.ws-grid div{display:grid;place-items:center;font-weight:600;border-left:0.2mm solid #d9d3e3;border-bottom:0.2mm solid #d9d3e3;color:#1d1830}
.ws-grid div.hit{background:var(--soft);color:var(--a1);font-weight:800}
.page.bw .ws-grid div.hit{background:#ddd;color:#000}
.bank{display:grid;gap:2mm 5mm;margin-top:6mm;padding:4mm 5mm;border:0.5mm solid var(--line,#eadfce);border-radius:4mm;background:var(--soft2)}
.bank div{display:flex;align-items:center;gap:2mm;font-size:calc(13pt*var(--fs))}
.bank div::before{content:"";width:3.4mm;height:3.4mm;border:0.4mm solid #7b748c;border-radius:1mm;flex:none}
.bank.nobox div::before{display:none}
.btitle{font:700 11pt var(--ui);color:var(--a3);margin-bottom:1mm;grid-column:1/-1}
.page.bw .btitle{color:#333}
/* bingo */
.bingo{border:0.7mm solid var(--a1);border-radius:4mm;padding:3mm;display:flex;flex-direction:column;background:#fff}
.page.bw .bingo{border-color:#333}
.bingo .bh{text-align:center;font:700 16pt var(--head);color:var(--a1);margin-bottom:2mm;display:flex;justify-content:space-between;align-items:center;padding:0 2mm}
.page.bw .bingo .bh{color:#111}
.bingo .bh small{font:600 9pt var(--ui);color:#8a8299}
.bgrid{display:grid;flex:1;border:0.4mm solid #4a425c;border-radius:2mm;overflow:hidden}
.bgrid div{display:grid;place-items:center;text-align:center;padding:1mm;border-left:0.3mm solid #b8b0c6;border-bottom:0.3mm solid #b8b0c6;line-height:1.15;font-weight:600;word-break:break-word}
.bgrid div.free{background:var(--soft);color:var(--a1);font:700 12pt var(--head)}
.bgrid div.free b{font-size:20pt;display:block}
/* cards generic */
.card{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3mm;overflow:hidden}
.cardin{position:absolute;inset:2.2mm;border-radius:3.5mm;border:0.6mm solid var(--a1);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2mm;text-align:center}
.page.bw .cardin{border-color:#444}
.back .cardin{background:repeating-linear-gradient(45deg,var(--soft) 0 3mm,#fff 3mm 6mm);border-color:var(--a1)}
.back .cardin img{width:60%;max-height:45%;object-fit:contain;background:#fff;border-radius:3mm;padding:1.5mm}
.back .cardin .q{font:700 26pt var(--head);color:var(--a1)}
.page.bw .back .cardin{background:repeating-linear-gradient(45deg,#eee 0 3mm,#fff 3mm 6mm)}
.emo{font-family:"Noto Color Emoji","Apple Color Emoji","Segoe UI Emoji",sans-serif;line-height:1}
.mimg{max-width:88%;max-height:80%;object-fit:contain;border-radius:2mm}
/* quartets */
.qcard .cardin{justify-content:flex-start;padding:0;overflow:hidden}
.qcard .qh{width:100%;padding:2.2mm 2mm;color:#fff;font:700 11.5pt var(--head);background:var(--qc)}
.page.bw .qcard .qh{background:#444}
.qcard .qbig{flex:1;display:flex;align-items:center;justify-content:center;padding:1mm 2mm;font-weight:800;color:var(--qc);line-height:1.15}
.page.bw .qcard .qbig{color:#111}
.qcard ul{list-style:none;margin:0;padding:1.5mm 3mm 2.5mm;width:100%;font-size:9.5pt;border-top:0.3mm dashed #c9c2d4;text-align:right}
.qcard li{padding:.4mm 0;color:#6b6280}
.qcard li.me{color:#1d1830;font-weight:800}
.qcard li.me::before{content:"★ ";color:var(--qc)}
.qcard .qn{position:absolute;bottom:1.2mm;left:2.5mm;font-size:8pt;color:#9a94a8}
/* cipher */
.ckey{display:grid;grid-template-columns:repeat(11,1fr);gap:1.4mm;margin-bottom:6mm;border:0.5mm solid #d7cfe2;border-radius:3mm;padding:2.5mm;background:var(--soft2)}
.ckey div{display:flex;flex-direction:column;align-items:center;gap:.8mm;background:#fff;border-radius:2mm;padding:1.2mm 0;border:0.25mm solid #e3dcec}
.ckey b{font-size:13pt;color:#1d1830}
.ckey .sym{height:7mm;display:grid;place-items:center;font-size:13pt;font-weight:700;color:var(--a5)}
.page.bw .ckey .sym{color:#111}
.cmsg{display:flex;flex-wrap:wrap;gap:3mm 6mm;margin-bottom:7mm;direction:rtl}
.cword{display:flex;gap:1.2mm}
.cch{display:flex;flex-direction:column;align-items:center;gap:1mm}
.cch .sym{height:9mm;min-width:8.5mm;display:grid;place-items:center;font-size:15pt;font-weight:700;color:var(--a5)}
.page.bw .cch .sym{color:#111}
.cch .box{width:8.5mm;height:9.5mm;border-bottom:0.5mm solid #4a425c;display:grid;place-items:center;font-size:15pt;font-weight:700;color:var(--a4)}
.cnum{font:700 12pt var(--ui);color:var(--a1);margin:0 0 2mm}
svg.sh{width:7mm;height:7mm}
/* crossword */
.cw{display:grid;margin:0 auto;direction:rtl}
.cw div{position:relative}
.cw .c{border:0.35mm solid #2b2140;margin:-0.175mm;background:#fff;display:grid;place-items:center;font-weight:700}
.cw .c i{position:absolute;top:0.4mm;right:0.8mm;font-style:normal;font-size:6.5pt;font-weight:700;color:#4a425c;line-height:1}
.cw .c.k{color:var(--a1)}
.page.bw .cw .c.k{color:#000}
.clues{display:grid;grid-template-columns:1fr 1fr;gap:6mm;margin-top:6mm}
.clues h3{font:700 13pt var(--head);color:var(--a3);margin:0 0 2mm;border-bottom:0.5mm solid var(--a3);padding-bottom:1mm}
.page.bw .clues h3{color:#222;border-color:#222}
.clues ol{list-style:none;margin:0;padding:0;font-size:calc(11pt*var(--fs));line-height:1.45}
.clues li{margin-bottom:1.2mm;display:flex;gap:2mm}
.clues li b{min-width:6mm;color:var(--a1)}
/* matching */
.mt{display:grid;grid-template-columns:1fr 34mm 1fr;align-items:stretch;position:relative}
.mt .col{display:flex;flex-direction:column}
.mt .it{display:flex;align-items:center;gap:3mm;padding:0 2mm}
.mt .col.r .it{justify-content:flex-start}
.mt .col.l .it{justify-content:flex-end}
.mt .it .tx{border:0.5mm solid var(--a5);border-radius:3mm;padding:2mm 4mm;background:#fff;font-size:calc(13pt*var(--fs));line-height:1.25;max-width:70mm}
.mt .col.l .it .tx{border-color:var(--a4)}
.page.bw .mt .it .tx{border-color:#555}
.mt .dot{width:3.2mm;height:3.2mm;border-radius:50%;background:#2b2140;flex:none}
.mt .lt{width:9mm;height:9mm;border:0.45mm solid #4a425c;border-radius:2mm;flex:none;display:grid;place-items:center;font-weight:800;color:var(--a1)}
.mt .tag{font-weight:800;color:var(--a1);min-width:5mm}
.mt svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
/* scrambled */
.sc{margin-bottom:6mm;break-inside:avoid}
.sc .n{font:700 12pt var(--ui);color:var(--a1);margin-bottom:2mm}
.sc .ws{display:flex;flex-wrap:wrap;gap:2.5mm;margin-bottom:3mm}
.sc .ws span{border:0.5mm solid var(--a3);background:var(--soft2);border-radius:2.5mm;padding:1.6mm 3.5mm;font-size:calc(13.5pt*var(--fs));font-weight:600}
.sc .ws.cutw span{border:0.35mm dashed #6b6280;background:#fff;border-radius:0}
.page.bw .sc .ws span{border-color:#666}
.wline{border-bottom:0.4mm solid #8a8299;height:10mm}
.sc .ans{font-size:calc(13pt*var(--fs));padding:1mm 0 2mm;color:#1d1830}
/* pyramid */
.pyr{display:flex;flex-direction:column;align-items:center;gap:2.2mm;margin-bottom:7mm;break-inside:avoid}
.pyr div{background:var(--soft);border:0.4mm solid #f2c7ad;border-radius:2.5mm;padding:1.4mm 4mm;font-size:calc(15pt*var(--fs));font-weight:600;line-height:1.5;display:flex;align-items:center;gap:3mm}
.pyr div:nth-child(even){background:var(--soft2);border-color:#b8e6df}
.page.bw .pyr div{background:#fff;border-color:#999}
.pyr div i{width:3.6mm;height:3.6mm;border:0.4mm solid #8a8299;border-radius:50%;flex:none}
/* flash */
.fl .cardin{border-color:var(--fc,var(--a3))}
.fl .ftx{font-weight:700;line-height:1.25}
.fl .fn{position:absolute;top:2.5mm;right:3mm;font:700 8pt var(--ui);color:#9a94a8}
.fl .side{position:absolute;bottom:2.5mm;left:3mm;font:700 7.5pt var(--ui);color:#b0a9bd}
.fold{border-left:0.35mm dashed #9a94a8}
/* ttt */
.ttt{display:flex;flex-direction:column;align-items:center}
.ttt h4{margin:0 0 2mm;font:700 13pt var(--head);color:var(--a1)}
.tg{display:grid;grid-template-columns:repeat(3,1fr);aspect-ratio:1}
.tg div{display:grid;place-items:center;text-align:center;font-weight:700;padding:1mm;line-height:1.15;border-color:#2b2140;border-style:solid;border-width:0}
/* board */
.board{display:grid;gap:1.6mm;direction:rtl}
.sq{border-radius:3mm;border:0.45mm solid rgba(0,0,0,.25);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;position:relative;padding:1mm;line-height:1.15}
.sq .no{position:absolute;top:0.8mm;right:1.4mm;font:700 8pt var(--ui);color:rgba(0,0,0,.55)}
.sq .tx{font-weight:700;font-size:10.5pt}
.sq .sp{font-size:9pt;font-weight:800}
.qc .cardin{border-color:var(--a5)}
.qc .qq{font-weight:700;line-height:1.3}
.qc .qa{position:absolute;bottom:3mm;left:0;right:0;font-size:8.5pt;color:#8a8299}
/* math stories */
.ms{border:0.45mm solid #eadfce;border-radius:4mm;padding:3.5mm 4mm;margin-bottom:4mm;break-inside:avoid;background:#fffdf9}
.ms .q{font-size:calc(13pt*var(--fs));line-height:1.55;display:flex;gap:2.5mm}
.ms .q b{color:var(--a1);min-width:6mm}
.ms .work{display:flex;gap:6mm;margin-top:3mm;font-size:11pt;color:#4a425c}
.ms .work span{flex:1;border-bottom:0.4mm solid #8a8299;height:8mm;display:flex;align-items:flex-end}
.ms .a{color:var(--a4);font-weight:700;margin-top:2mm}
/* cloze */
.cz{font-size:calc(14pt*var(--fs));line-height:2.25;text-align:justify}
.cz .gap{display:inline-block;min-width:26mm;border-bottom:0.45mm solid #4a425c;text-align:center;line-height:1.3}
.cz .gap.k{color:var(--a4);font-weight:700}
@media print{
 @page{size:A4;margin:0}
 html,body{background:#fff!important;background-image:none!important}
 .no-print,.topbar,#home,.edhead,.tabs,.formpanel,.prevbar,.warn,.mobilebar,.homefoot{display:none!important}
 #editor{display:block!important;padding:0;margin:0;max-width:none}
 #editor .edbody{display:block}
 #editor .prevpanel{display:block!important;background:none;box-shadow:none;border:0;padding:0;min-height:0;border-radius:0}
 #previewWrap{overflow:visible;height:auto!important}
 #pages{zoom:1!important;transform:none!important;gap:0;display:block}
 .page{box-shadow:none;break-after:page;page-break-after:always;margin:0;height:296.5mm}
 .page:last-child{break-after:auto;page-break-after:auto}
 *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}

/* ===== themes & designed header ===== */
.page{padding:15mm 14mm 19mm}
.page::before{content:"";position:absolute;inset:6mm;border:0.7mm solid var(--frame);border-radius:7mm;pointer-events:none}
.page::after{content:"";position:absolute;inset:7.6mm;border:0.3mm dashed var(--frame2);border-radius:5.8mm;pointer-events:none}
.page.th-color{--a1:#f2542d;--a2:#ffb703;--a3:#0fa89b;--a4:#e23d78;--a5:#2f7de1;--a6:#8b5cf6;--soft:#fff1e6;--soft2:#e8f7f5;--frame:#ffb703;--frame2:#f7a07f;--hb:linear-gradient(100deg,#fff0d6,#ffe1ea 55%,#dff6f2);--ht:#e2442a}
.page.th-space{--a1:#5b3fd1;--a2:#f5b700;--a3:#1e88c9;--a4:#d6407e;--a5:#3f51b5;--a6:#00a3a3;--soft:#eeeaff;--soft2:#e6f3fb;--frame:#5b3fd1;--frame2:#b8a9f5;--hb:linear-gradient(100deg,#1d1b4b,#3b2a8a 60%,#1f5f9e);--ht:#ffffff}
.page.th-nature{--a1:#2f8f3a;--a2:#f4a300;--a3:#7a5a2b;--a4:#d9534f;--a5:#3c8d5a;--a6:#9bbf2e;--soft:#eef7e4;--soft2:#fff6dc;--frame:#7cb342;--frame2:#c5e1a5;--hb:linear-gradient(100deg,#e6f4d7,#fff4cf 60%,#e3f1e0);--ht:#2e7d32}
.page.th-sea{--a1:#0077b6;--a2:#ff8c61;--a3:#00a6a6;--a4:#ef476f;--a5:#118ab2;--a6:#06d6a0;--soft:#e3f4fc;--soft2:#e6faf6;--frame:#48cae4;--frame2:#a8e3f0;--hb:linear-gradient(100deg,#d9f2fb,#e4f9f4 55%,#ffe9df);--ht:#0369a1}
.page.bw{--a1:#222;--a2:#555;--a3:#333;--a4:#222;--a5:#333;--a6:#555;--soft:#f1f1f1;--soft2:#f6f6f6;--frame:#444;--frame2:#aaa;--hb:#fff;--ht:#111}
.ph{position:relative;display:block;margin-bottom:5mm;background:var(--hb);border-radius:5mm;padding:4mm 6mm 3.5mm;border:0.4mm solid rgba(0,0,0,.06)}
.page.bw .ph{border:0.5mm solid #333}
.ph .tt{padding:0 13mm}
.ph h1{color:var(--ht);text-align:center;font-size:calc(24pt*var(--fs))}
.ph .ins{text-align:center;color:#3a3350;margin-top:1.5mm}
.page.th-space .ph .ins{color:#e9e6ff}
.page.th-space.bw .ph .ins,.page.bw .ph .ins{color:#333}
.ph .deco{position:absolute;top:50%;transform:translateY(-50%);font-size:15mm;line-height:1}
.ph .deco.r{right:4mm}.ph .deco.l{left:4mm}
.page.bw .ph .deco{filter:grayscale(1);opacity:.75}
.nameline{justify-content:center;padding:2.5mm 0 0;margin-top:2mm;border-top:0.3mm dashed rgba(0,0,0,.15)}
.page.th-space .nameline{color:#e9e6ff;border-color:rgba(255,255,255,.25)}
.page.th-space .nameline span{border-color:#c9c2ff}
.page.bw .nameline{color:#333}.page.bw .nameline span{border-color:#555}
.ph .band{display:none}
.pf{bottom:9.5mm;left:15mm;right:15mm}
.pf .pgn{font:600 8pt var(--ui)}
.corner{position:absolute;font-size:9mm;line-height:1;opacity:.9;z-index:1}
.corner.bl{bottom:8.5mm;left:50%;transform:translateX(-50%)}
.page.bw .corner{display:none}
.keypage .ph{background:#fff;border:0.5mm dashed var(--a3)}
.keypage .ph h1{color:var(--a3)}
.page.th-space.keypage .ph .ins{color:#3a3350}
.page.th-space.keypage .nameline{color:#3a3350}

/* ===== polish v2 ===== */
.ph .tt{padding:0 19mm}
.ph .deco{font-size:12.5mm}
.bingo{border:0;border-radius:5mm;padding:0;overflow:hidden;box-shadow:0 0 0 0.6mm var(--a1) inset;background:#fff}
.bingo .bh{background:var(--a1);color:#fff;margin:0;padding:2.2mm 4mm;font-size:15pt}
.bingo .bh small{color:rgba(255,255,255,.85)}
.page.bw .bingo .bh{background:#333;color:#fff}
.bgrid{border:0;gap:1.3mm;padding:2.5mm;border-radius:0;background:#fff}
.bgrid div{border:0.35mm solid rgba(0,0,0,.12);border-radius:2.4mm;background:var(--soft)}
.bgrid div:nth-child(even){background:var(--soft2)}
.bgrid div.free{background:var(--a2);color:#fff;border-color:transparent}
.page.bw .bgrid div{background:#fff;border-color:#888}
.page.bw .bgrid div.free{background:#e5e5e5;color:#111}
.ctable{width:100%;border-collapse:separate;border-spacing:0 1.4mm;font-size:calc(12pt*var(--fs))}
.ctable td{padding:1.8mm 3mm;background:var(--soft2);vertical-align:middle}
.ctable td:first-child{border-radius:0 2.5mm 2.5mm 0;width:7mm}
.ctable td:last-child{border-radius:2.5mm 0 0 2.5mm}
.ctable .bx{display:inline-block;width:4mm;height:4mm;border:0.45mm solid #6b6280;border-radius:1mm}
.ctable b{color:var(--a1)}
.ctable .num{color:#9a94a8;font:600 9pt var(--ui);width:6mm}
.mem .cardin{background:linear-gradient(160deg,#fff 55%,var(--soft));border-width:0.7mm}
.mem .cardin::before{content:"";position:absolute;top:2mm;left:2mm;width:2.4mm;height:2.4mm;border-radius:50%;background:var(--a2)}
.mem .cardin::after{content:"";position:absolute;bottom:2mm;right:2mm;width:2.4mm;height:2.4mm;border-radius:50%;background:var(--a3)}
.back .cardin{background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.18) 0 12%,transparent 13%),radial-gradient(circle at 75% 80%,rgba(255,255,255,.14) 0 15%,transparent 16%),linear-gradient(145deg,var(--a1),var(--a4));border:0.8mm solid #fff;box-shadow:0 0 0 0.5mm var(--a1)}
.back .badge{width:62%;aspect-ratio:1;max-height:78%;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1mm;box-shadow:0 0 0 1.2mm rgba(255,255,255,.45)}
.back .badge img{width:78%;height:auto;max-height:none;padding:0;background:none}
.page.bw .back .cardin{background:repeating-linear-gradient(45deg,#e8e8e8 0 2.5mm,#fff 2.5mm 5mm);box-shadow:0 0 0 0.5mm #555}
.wsk{position:relative;margin:0 auto}
.wsk svg{position:absolute;top:0.6mm;right:0.6mm;z-index:0}
.wsk .ws-grid{position:relative;z-index:1;background:transparent}

.mt .col.r .dot,.mt .col.r .lt{margin-right:auto}
.mt .col.l .tx{margin-right:auto}
.mt .it .tx{min-width:34mm;text-align:center;font-weight:600;font-size:calc(14pt*var(--fs));background:var(--soft2)}
.mt .col.l .it .tx{background:var(--soft)}
.mt{grid-template-columns:1fr 30mm 1fr}
.cw{display:grid;justify-content:center}
.cmsg{gap:4mm 8mm}
.cch .sym{height:10mm;min-width:10mm}.cch .box{width:10mm;height:10.5mm}
svg.sh{width:8mm;height:8mm}
.ckey svg.sh{width:6.5mm;height:6.5mm}
.pyr{gap:2.6mm}
.ctable{border-spacing:0 1.1mm}.ctable td{padding:1.3mm 3mm}
.ph .tt{padding:0 21mm}
.gcard>*{position:relative;z-index:1}.gcard .tag{position:absolute}.gcard::after{z-index:0}
@media (max-width:480px){.steps{gap:4px;flex-wrap:nowrap}.steps span:not(.arr){padding:5px 8px;font-size:12.5px}.steps .arr{font-size:12px}}
.cblock{border:0.45mm solid #e3dcec;border-radius:4mm;padding:4mm 5mm 1mm;margin-bottom:6mm;background:#fff}
.cblock .cmsg{margin-bottom:3mm}
.cch .sym{height:11mm;min-width:11mm;font-size:17pt}.cch .box{width:11mm;height:12mm;font-size:17pt}
.cch svg.sh{width:9mm;height:9mm}
.pin{height:100%}
.ph h1{font-size:24pt}.ph .ins{font-size:12.5pt}
.page.bw .emo{filter:grayscale(1)}
.edbody{grid-template-columns:minmax(330px,430px) minmax(0,1fr)}.prevpanel,#previewWrap{min-width:0}
@media (max-width:900px){.edbody{grid-template-columns:minmax(0,1fr)}}
.gcard{padding-left:104px}
.gcard .thumb{position:absolute!important;left:16px;top:22px;width:78px;height:auto;border-radius:4px;box-shadow:0 4px 12px rgba(80,40,10,.22);transform:rotate(-5deg);transition:transform .2s;z-index:1;background:#fff}
.gcard:hover .thumb{transform:rotate(-1deg) scale(1.06)}
.gcard .tag{left:auto;right:auto;position:static!important;align-self:flex-start;margin-top:auto;order:5}
@media (max-width:420px){.gcard{padding-left:12px;padding-top:12px}.gcard .thumb{width:46px;left:10px;top:10px}}
.bank .btitle::before{display:none!important}
