/* نَوْل · النول لوحة كاملة، والنصوص الصغيرة رقع مخيّطة فوقها
   حبر + ورق صوفي + أحمر سدو، بلا تدرجات ولا ظلال */
:root{
  --ink:#0B0B0B;
  --wool:#EDE3D2;
  --red:#A12019;
  --ease:cubic-bezier(.16,1,.3,1);
  --pad:clamp(16px,3vw,32px);
}
*{box-sizing:border-box;margin:0}
html{background:var(--ink);color:var(--wool);-webkit-text-size-adjust:100%}
body{font-family:'Readex Pro',sans-serif;font-size:16px;line-height:1.7;overflow-x:hidden;overflow-x:clip}
a{color:inherit}
button,input{font:inherit;color:inherit}

/* ===== بلا JS: صفحة مقروءة كاملة بطباعة وحدها ===== */
#loom,.nar,.picks,.namer{display:none}
.ch{padding:clamp(48px,10vh,110px) var(--pad);border-block-end:2px dashed var(--wool)}
.word{font-family:'Alexandria',sans-serif;font-weight:700;line-height:1.3;font-size:clamp(64px,15vw,200px);margin-block-end:.2em}
.tag{max-width:36em}
.lead{font-size:clamp(18px,2vw,22px);font-weight:500;line-height:1.6}
.hint{margin-block-start:.5em}
.credit{display:inline-block;font-size:13px;padding:8px 12px}
.cta{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:10px 28px;background:var(--red);color:var(--wool);
  font-family:'Alexandria',sans-serif;font-weight:700;font-size:18px;line-height:1.3;text-decoration:none;margin-block-start:16px}

/* ===== مع JS: النول ثابت والأقسام مسافات تمرير ===== */
.js #loom{display:block;position:fixed;inset-block-start:0;inset-inline-start:0;width:100%;height:100vh;height:100lvh;
  transition:opacity .35s var(--ease)}
.js .nojs-only{display:none}
.js .ch{padding:0;border:0;height:190vh;height:190lvh}
.js .ch:nth-child(1){height:190vh;height:190lvh}
.js .ch[data-zoom]{height:300vh;height:300lvh}
.js .ch[data-last]{height:112vh;height:112lvh}
.js .word{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0;font-size:16px}

.js .credit{position:fixed;z-index:6;inset-block-start:0;inset-inline-start:0;background:var(--ink);color:var(--wool);
  padding:7px 12px;font-size:12px;line-height:1.5;text-decoration:none}
.js .credit:hover{text-decoration:underline}
.js .nar{display:block;position:fixed;z-index:6;inset-block-end:0;inset-inline-end:0;background:var(--ink);color:var(--wool);
  padding:7px 12px;font-size:12px;line-height:1.5;white-space:nowrap;pointer-events:none}
.num{font-family:'Manrope','Readex Pro',sans-serif;font-weight:600;unicode-bidi:isolate}

/* الرقعة: قطعة صلبة بخياطة، فلا نص يقع على خيوط مباشرة */
.js .tag{position:fixed;z-index:4;clip-path:inset(50%);pointer-events:none;background:var(--ink);color:var(--wool);padding:18px 22px;
  outline:1.5px dashed var(--wool);outline-offset:-7px;max-width:none}
.js .tag.on{clip-path:none;pointer-events:auto}
.js .tag p+p{margin-block-start:4px;font-size:15px;line-height:1.65}
.js .lead{font-size:clamp(16px,1.5vw,19px);line-height:1.55;text-wrap:balance}
.js .hint{color:var(--wool);font-size:14px}

.js .t-hero,.js .t-low{inset-block-end:clamp(44px,7vh,74px);inset-inline-start:50%;translate:50% 0;width:min(calc(100vw - 32px),520px);text-align:center}
.js .t-pick{inset-block-end:clamp(44px,8vh,80px);inset-inline-start:50%;translate:50% 0;width:min(calc(100vw - 32px),620px);text-align:center}
.js .t-end{inset-block-end:clamp(44px,8vh,80px);inset-inline-start:50%;translate:50% 0;width:min(calc(100vw - 32px),560px);text-align:center}
.js .t-side{inset-block-start:52%;inset-inline-end:clamp(24px,6vw,96px);width:min(34vw,400px)}

/* أزرار النقش بعيّنة منسوجة حقيقية */
.js .picks{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-block-start:12px}
.picks button{display:flex;flex-direction:column;align-items:center;gap:6px;min-height:44px;padding:8px 6px;background:var(--ink);border:1.5px solid var(--wool);
  cursor:pointer;line-height:1.3;font-size:14px;transition:background-color .25s var(--ease),color .25s var(--ease)}
.picks canvas{display:block;width:100%;max-width:126px;height:auto;image-rendering:pixelated}
.picks button[aria-pressed="true"]{background:var(--wool);color:var(--ink)}

.js .namer{display:block}
.namer label{display:block;font-weight:500;margin-block-end:8px;line-height:1.5}
.namer input{width:100%;min-height:48px;padding:8px 14px;background:var(--wool);color:var(--ink);border:0;border-radius:0;font-family:'Alexandria',sans-serif;font-weight:600;font-size:18px;text-align:center}
.namer input::placeholder{color:#5a544b;opacity:1}
.js .cta{display:flex;width:100%;margin-block-start:10px;transition:background-color .25s var(--ease),color .25s var(--ease)}

:focus-visible{outline:2px solid var(--wool);outline-offset:2px}
.namer input:focus-visible,.cta:focus-visible{outline-color:var(--wool);outline-offset:3px}

@media (hover:hover) and (pointer:fine){
  .picks button:hover{background:var(--red);color:var(--wool)}
  .cta:hover{background:var(--wool);color:var(--ink)}
}

/* عمودي: الرقعة تنزل تحت القطعة */
@media (max-aspect-ratio:17/20){
  .js .t-side{inset-block-start:auto;inset-block-end:48px;inset-inline-start:16px;inset-inline-end:16px;width:auto}
}
/* جوال أفقي: الرقعة في جنب الشاشة والكلمة تأخذ الباقي */
@media (max-height:480px) and (min-aspect-ratio:17/20){
  .js .t-hero,.js .t-low,.js .t-pick,.js .t-end{inset-block-start:50%;inset-block-end:auto;inset-inline-start:auto;inset-inline-end:16px;translate:0 -50%;width:min(44vw,340px);padding:12px 16px}
  .js .t-side{inset-block-start:auto;inset-block-end:30px;width:min(38vw,320px);padding:12px 16px}
  .js .tag p+p{font-size:13.5px;line-height:1.5}
  .js .picks button{font-size:13px;padding:6px 4px}
  .namer input{min-height:40px}
  .cta{min-height:44px}
}
@media (max-width:420px){
  .js .tag{padding:15px 16px}
  .js .credit,.js .nar{font-size:11.5px;padding:6px 10px}
}

@media (prefers-reduced-motion:reduce){
  .js #loom,.picks button,.js .cta{transition:opacity .3s linear}
  .js .tag{transition:none}
}
