/* مسودة برنامجك المعماري */
.pg-why{margin-top:0;padding-block:30px 0;border-top:0}
.pg-h{font-size:clamp(21px,2.6vw,26px)}
.pg-why-g{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}
.pg-why-g>div{background:var(--sheet);border:1px solid var(--line-2);border-radius:16px;padding:16px 18px;display:grid;gap:6px;align-content:start}
.pg-k{font-family:var(--mono);font-size:24px;line-height:1;color:var(--terra)}
.pg-why-g h3{font-size:16.5px}
.pg-why-g p{font-size:14px;color:var(--ink-2);line-height:1.85}
.pg-inv{margin-top:12px;padding:14px 18px;border-radius:14px;background:linear-gradient(125deg,#1F1A17 0%,#2c211b 60%,#4a2f22 100%);color:#F6F5F1;line-height:1.9;font-size:15px}
.pg-inv b{color:#E9B79F}
.pg-inv a{color:#fff;text-decoration:underline;text-underline-offset:3px}

.pg-shared{margin-top:18px;padding:12px 16px;border:1px solid var(--line-2);border-inline-start:3px solid var(--terra);background:var(--sheet);display:flex;gap:10px;flex-wrap:wrap;align-items:center;font-size:14.5px}
.pg-shared ul{margin:0;padding:0 18px 0 0;flex-basis:100%;display:grid;gap:4px}
.pg-shared.warn{border-inline-start-color:var(--stop)}
.pg-shared.warn p{flex-basis:100%}

.pg-tabs button.pg-tdoc{font-weight:700;color:var(--terra)}
.pg-tabs button.pg-tdoc[aria-selected="true"]{color:var(--ink)}
.pg-sec>h2{font-size:clamp(20px,2.4vw,24px)}
.pg-sec>.lead2{color:var(--ink-2);margin-top:4px;max-width:72ch;line-height:1.85}
.pg-sub{font-size:17px;margin-top:22px}
.pg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;margin-top:14px;align-items:end}
.pg-sec>.fld{margin-top:14px}
.pg-title input{font-size:17px;font-weight:700}
.fld textarea{font:inherit;font-size:15px;color:var(--ink);background:var(--paper);border:1px solid var(--line-2);border-radius:var(--r-ctl);padding:8px 10px;width:100%;resize:vertical;line-height:1.8}
.pg-ck{display:inline-flex;gap:8px;align-items:center;font-size:14.5px;min-height:44px;cursor:pointer}
.pg-ck input{width:18px;height:18px;accent-color:var(--terra)}
.pg-muted{color:var(--ink-2);font-size:13.5px;line-height:1.8}
.pg-imp{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:14px;padding:10px 14px;background:var(--paper);border:1px dashed var(--line-2);border-radius:12px;font-size:14px}
.pg-cap{margin-top:16px}
.pg-t td.n{font-size:14.5px;font-weight:700}
.pg-ref,.pg-t .pg-ref{font-size:12.5px;color:var(--ink-2);white-space:nowrap}
.pg-src{font-size:12px;color:var(--terra);text-decoration:underline;text-underline-offset:2px;white-space:nowrap}
.pg-fifty{margin-top:18px;border:1px solid var(--line);border-radius:12px;background:var(--sheet)}
.pg-fifty summary{cursor:pointer;padding:12px 14px;font-size:14px;font-weight:700;color:var(--terra)}
.pg-fifty ul{list-style:none;margin:0;padding:0 14px 12px;display:grid;gap:10px}
.pg-fifty li{display:grid;gap:2px;font-size:14px;line-height:1.8}
.pg-fifty li b{font-size:13px;color:var(--ink-2);font-weight:400}

.pg-floor{margin-top:22px}
.pg-fh{display:flex;gap:12px;align-items:baseline;flex-wrap:wrap;border-bottom:1.5px solid var(--ink);padding-bottom:6px}
.pg-fh h3{font-size:17px}
.pg-fm{font-size:13px;color:var(--ink-2)}
.pg-fm.warn{color:var(--major);font-weight:700}
.pg-fm.bad{color:var(--stop);font-weight:700}
.pg-rows{display:grid;gap:10px;margin-top:10px}
.pg-room{background:var(--sheet);border:1px solid var(--line-2);border-inline-start:4px solid var(--line-2);border-radius:12px;padding:10px 12px;display:grid;gap:8px}
.pg-room.z-guest{border-inline-start-color:#A65338}
.pg-room.z-family{border-inline-start-color:#5A7A6A}
.pg-room.z-service{border-inline-start-color:#8A7A66}
.pg-room.z-out{border-inline-start-color:#7C8F4E}
.pg-room.bad{border-color:var(--stop)}
.pg-rt{display:flex;gap:8px;align-items:end;flex-wrap:wrap}
.pg-rt .fld label{font-size:12px;font-weight:400;color:var(--ink-2)}
.pg-nmw{flex:1 1 220px}
.pg-nm{width:100%;font:inherit;font-size:15.5px;font-weight:700;border:1px solid var(--line);background:var(--paper);padding:6px 9px;border-radius:var(--r-ctl);color:var(--ink)}
.pg-sm{flex:0 0 92px}
.pg-flw{flex:0 0 auto}
.pg-fl{width:auto!important}
.pg-note{font:inherit;font-size:13.5px;width:100%;padding:6px 9px;border:1px solid transparent;border-bottom-color:var(--line);background:none;color:var(--ink)}
.pg-note:focus{border-color:var(--line-2);background:var(--paper);border-radius:var(--r-ctl)}
.pg-fl,.pg-add select,.pg-mr select{font:inherit;font-size:14px;color:var(--ink);background:var(--paper);border:1px solid var(--line-2);border-radius:var(--r-ctl);padding:7px 8px;max-width:100%}
.pg-x{font:inherit;font-size:18px;line-height:1;min-width:40px;min-height:40px;border:1px solid var(--line-2);background:var(--paper);color:var(--ink-2);border-radius:var(--r-ctl);cursor:pointer}
.pg-x:hover{color:var(--stop);border-color:var(--stop)}
.pg-info{display:grid;gap:2px;font-size:13.5px;line-height:1.75}
.pg-info b{font-weight:700}
.pg-lg b{color:var(--ink)}
.pg-gd b{color:#5A7A6A}
.pg-flag{color:var(--stop);font-weight:700}
.pg-flag.soft{color:var(--major)}
.pg-room .fld input{font-size:14px;padding:6px 8px}
.pg-info:empty{display:none}
.pg-add{margin-top:10px}
.pg-add select{width:auto!important;min-width:220px}

.pg-dg{display:grid;gap:14px;margin-top:16px}
.pg-bub{margin:0;background:var(--sheet);border:1px solid var(--line-2);border-radius:14px;padding:12px}
.pg-bub figcaption{font-size:14px;font-weight:700;margin-bottom:6px}
.pg-bub svg{width:100%;height:auto;display:block;max-height:560px}
.pg-bub .zb{fill:none;stroke:var(--line-2);stroke-dasharray:4 4}
.pg-bub .zt{font-size:14px;font-weight:700;fill:var(--ink-2);text-anchor:middle;font-family:inherit}
.pg-bub .bb{stroke-width:1.5}
.pg-bub .bb.z-guest{fill:#F3E1D8;stroke:#A65338}
.pg-bub .bb.z-family{fill:#E2ECE5;stroke:#5A7A6A}
.pg-bub .bb.z-service{fill:#EEE8DE;stroke:#8A7A66}
.pg-bub .bb.z-out{fill:#E8EEDC;stroke:#7C8F4E}
.pg-bub .bt{font-size:13px;font-weight:700;fill:#1F1A17;text-anchor:middle;font-family:inherit}
.pg-bub .ba{font-size:12px;fill:#4a413b;text-anchor:middle;font-family:var(--mono)}
.pg-bub .lk{stroke-width:2.2;stroke-linecap:round}
.pg-bub .lk.need{stroke:#A65338}
.pg-bub .lk.near{stroke:#A65338;stroke-dasharray:6 5;opacity:.75}
.pg-bub .lk.no,.pg-bub .lk.far{stroke:#9b2c2c;stroke-width:2.6;stroke-dasharray:1 6;opacity:.85}
.pg-lgd{display:flex;gap:16px;flex-wrap:wrap;font-size:12.5px;color:var(--ink-2);margin-top:6px}
.pg-lgd .k{display:inline-flex;gap:6px;align-items:center}
.pg-lgd i{display:inline-block;width:26px;border-top:2.2px solid #A65338}
.pg-lgd .near i{border-top-style:dashed}
.pg-lgd .no i{border-top:2.2px dotted #9b2c2c}

.pg-rules{display:grid;gap:8px;margin-top:16px}
.pg-rule{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 16px;align-items:start;padding:12px 14px;background:var(--sheet);border:1px solid var(--line-2);border-radius:12px}
.pg-rule.off{opacity:.62;background:var(--paper)}
.pg-rule.mine{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}
.pg-rtx{display:grid;gap:4px}
.pg-rtx p{font-size:14.5px;line-height:1.8}
.pg-rid{font-family:var(--mono);font-size:12px;color:var(--terra)}
.pg-pair{font-size:12.5px;font-weight:700;color:var(--ink-2)}
.pg-pair.need,.pg-pair.near{color:var(--terra)}
.pg-pair.no,.pg-pair.far{color:var(--stop)}
.pg-rac{display:grid;gap:6px;justify-items:end;min-width:150px}
.pg-tg{font:inherit;font-size:13px;font-weight:700;padding:8px 12px;min-height:40px;border-radius:999px;border:1px solid var(--line-2);background:var(--paper);color:var(--ink-2);cursor:pointer;white-space:nowrap}
.pg-tg[aria-pressed="true"]{background:var(--terra);border-color:var(--terra);color:var(--on-terra)}
.pg-why{font:inherit}
input.pg-why{font-size:13.5px;padding:7px 9px;border:1px solid var(--line-2);border-radius:var(--r-ctl);background:var(--paper);color:var(--ink);width:100%}
.pg-mr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.pg-pri{display:grid;gap:8px;margin-top:14px}
.pg-mv{display:flex;gap:6px}
.pg-qs{display:grid;gap:10px;margin-top:14px}
.pg-q{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:10px;align-items:end;padding:12px 14px;background:var(--sheet);border:1px solid var(--line-2);border-radius:12px}
.pg-q.done{border-inline-start:4px solid var(--ok)}
.pg-qa{display:flex;gap:6px;align-items:center}
.pg-nav{display:flex;gap:10px;justify-content:space-between;flex-wrap:wrap;margin-top:28px;padding-top:16px;border-top:1px solid var(--line)}
.pg-nav .btn:only-child{margin-inline-start:auto}

/* الوثيقة */
.pg-doc{background:var(--sheet);border:1px solid var(--line-2);border-radius:18px;padding:clamp(18px,4vw,40px);max-width:920px}
.pg-dh{border-bottom:2px solid var(--ink);padding-bottom:12px;margin-bottom:6px}
.pg-dk{font-family:var(--mono);font-size:12.5px;color:var(--terra);letter-spacing:.02em}
.pg-dh h2{font-size:clamp(24px,3.4vw,32px);margin-top:4px}
.pg-dm{font-size:13px;color:var(--ink-2);margin-top:4px}
.pg-dsec{display:flex;gap:10px;align-items:baseline;font-size:18px;margin-top:26px;padding-bottom:6px;border-bottom:1px solid var(--line-2)}
.pg-dsec .k{font-family:var(--mono);font-size:13px;color:var(--terra)}
.pg-dp{font-size:15px;line-height:1.95;margin-top:8px;max-width:75ch}
.pg-dt{width:100%;border-collapse:collapse;margin-top:10px;font-size:14px}
.pg-dt caption{text-align:right;font-weight:700;font-size:14.5px;padding:10px 0 4px}
.pg-dt th,.pg-dt td{padding:7px 8px;border-bottom:1px solid var(--line);text-align:right;vertical-align:top;line-height:1.7}
.pg-dt thead th{font-size:12.5px;color:var(--ink-2);border-bottom:1.5px solid var(--ink)}
.pg-dt tbody th{font-weight:700;width:34%}
.pg-dt tr.bad td{color:var(--stop)}
.pg-dt.rooms td:nth-child(2),.pg-dt.rooms td:nth-child(3){font-family:var(--mono);white-space:nowrap}
.pg-dl{margin:10px 0 0;padding:0 22px 0 0;display:grid;gap:6px;font-size:14.5px;line-height:1.85}
.pg-dl li.done b{text-decoration:line-through;text-decoration-color:var(--ok)}
.pg-dg2{display:inline-block;margin-inline-start:8px;font-size:12px;font-weight:700;padding:1px 9px;border-radius:999px;border:1px solid var(--line-2);color:var(--ink-2)}
.pg-dg2.d0{border-color:var(--terra);color:var(--terra)}
.pg-ver{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.pg-ver input{flex:1;min-width:200px;font:inherit;font-size:14.5px;padding:8px 10px;border:1px solid var(--line-2);border-radius:var(--r-ctl);background:var(--paper);color:var(--ink)}
.pg-close{margin-top:30px;padding:16px 18px;border-radius:14px;background:var(--paper);border:1px solid var(--line-2);display:grid;gap:10px}
.pg-close p{font-size:14.5px;line-height:1.9}
.pg-close .row{display:flex;gap:8px;flex-wrap:wrap}
.pg-brand{font-family:var(--mono);font-size:11.5px;color:var(--ink-2)}

/* أشرك مصممك */
.pg-sf{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.pg-sf input{flex:1 1 260px;width:auto!important;min-width:0;font:inherit;font-size:15px;padding:8px 10px;border:1px solid var(--line-2);border-radius:var(--r-ctl);background:var(--paper);color:var(--ink)}
.pg-sf select{width:auto!important;font:inherit;font-size:14.5px;padding:8px;border:1px solid var(--line-2);border-radius:var(--r-ctl);background:var(--paper);color:var(--ink)}
.pg-sl{display:grid;gap:8px;margin-top:14px}
.pg-sr{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:10px 12px;background:var(--sheet);border:1px solid var(--line-2);border-radius:12px}
.pg-sr b{direction:ltr;unicode-bidi:isolate;font-size:14.5px}

@media (max-width:900px){.pg-why-g{grid-template-columns:1fr}.pg-q{grid-template-columns:1fr}.pg-rule,.pg-rule.mine{grid-template-columns:1fr}.pg-rac{justify-items:start}}
@media (max-width:560px){.pg-sm{flex:1 1 80px}.pg-mr{grid-template-columns:1fr}}

@media print{
  .pg-why,.pg-shared,#pgTabs,.pg-nav,.no-print,.howto,.tool-hero,#saved{display:none!important}
  .pg-doc{border:0;padding:0;max-width:none;background:#fff}
  .pg-dsec{break-after:avoid}
  .pg-dt tr,.pg-bub{break-inside:avoid}
  .pg-close{background:#fff}
  .pg-bub{background:#fff}
}
.pg-room{position:relative}
.pg-rt{padding-inline-end:48px}
.pg-rt>.pg-x{position:absolute;top:10px;inset-inline-end:10px}
.pg-saved{display:block;min-height:22px;margin-top:10px;font-size:13px;color:var(--ink-2)}
/* الربط: الحضور، وما تغيّر منذ زيارتك، وحالة الربط */
.pg-pres{display:none;align-items:center;gap:8px;margin-top:14px;font-size:13.5px;font-weight:700;color:#5A7A6A}
.pg-pres.on{display:inline-flex}
.pg-pres .dot{width:9px;height:9px;border-radius:50%;background:currentColor;position:relative}
.pg-pres .dot::after{content:"";position:absolute;inset:-5px;border-radius:50%;border:2px solid currentColor;opacity:0;animation:pgPulse 1.8s ease-out infinite}
@keyframes pgPulse{0%{transform:scale(.5);opacity:.8}100%{transform:scale(1.5);opacity:0}}
.pg-chg-b{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:14px;padding:10px 14px;border:1px solid var(--major);border-inline-start-width:4px;border-radius:12px;background:var(--sheet);font-size:14px}
.pg-chg-b .pg-x{margin-inline-start:auto;min-width:32px;min-height:32px}
.pg-room.pg-chg{animation:pgChg 3.6s ease-out .3s both}
@keyframes pgChg{0%,35%{box-shadow:0 0 0 2px var(--major);background:color-mix(in srgb,var(--major) 12%,var(--sheet))}100%{box-shadow:0 0 0 0 transparent}}
.pg-link{display:grid;gap:12px;margin-top:14px}
.pg-linked{display:grid;gap:8px;justify-items:start;padding:16px 18px;border-radius:14px;border:1px solid var(--terra);background:var(--sheet)}
.pg-linked b{font-size:16.5px}
.pg-linked span{font-size:14px;color:var(--ink-2)}
.pg-lbr{display:block;width:120px;height:6px;border-radius:3px;background:linear-gradient(to left,#5A7A6A,var(--terra))}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .pg-pres{color:#9DC0AE}}
:root[data-theme="dark"] .pg-pres{color:#9DC0AE}
@media (prefers-reduced-motion:reduce){.pg-pres .dot::after,.pg-room.pg-chg{animation:none}.pg-room.pg-chg{box-shadow:0 0 0 2px var(--major)}}
@media print{.pg-pres,.pg-chg-b{display:none!important}}
/* مراجعة 13 أكتوبر: التراجع عن الحذف، والجداول والمخطط على الجوال، وأهداف اللمس، وبطاقة الفراغ المختصرة */
.undo-t{position:fixed;inset-inline:16px;bottom:calc(16px + env(safe-area-inset-bottom));margin-inline:auto;max-width:440px;z-index:1000;display:flex;gap:12px;align-items:center;justify-content:space-between;padding:8px 10px 8px 8px;padding-inline-start:16px;background:var(--ink);color:var(--paper);border-radius:12px;box-shadow:0 6px 24px rgba(0,0,0,.25);font-size:14.5px;line-height:1.6}
.undo-t button{font:inherit;font-weight:700;min-height:40px;padding:0 16px;border:1px solid currentColor;border-radius:var(--r-ctl);background:none;color:inherit;cursor:pointer;flex:none}
.pg-src{display:inline-flex;align-items:center;min-height:36px;padding-inline:4px;vertical-align:middle}
.pg-dtw{overflow-x:auto;-webkit-overflow-scrolling:touch}
.pg-dtw .pg-dt.rooms{min-width:600px}
.pg-bsc{overflow-x:auto;-webkit-overflow-scrolling:touch}
.pg-dg>*{min-width:0}
.pg-dcap{font-weight:700;font-size:14.5px;padding:10px 0 4px;margin:10px 0 0;break-after:avoid}
.pg-dcap+.pg-dtw .pg-dt{margin-top:0}
@media (max-width:600px){.pg-bsc svg{min-width:640px;max-height:none}}
@media (max-width:560px){
  .pg-room{padding:10px;gap:6px}
  .pg-rt{gap:6px;padding-inline-end:46px}
  .pg-rt>.pg-x{top:8px;inset-inline-end:8px}
  .pg-nmw{flex:1 1 130px;min-width:0}
  .pg-rt .pg-sm{flex:0 0 60px;min-width:0}
  .pg-rt .pg-sm input{width:100%;padding-inline:4px;text-align:center}
  .pg-flw{flex:1 1 110px;min-width:0}
  .pg-flw .pg-fl{width:100%!important}
  .pg-rt .fld label{font-size:11.5px;white-space:nowrap}
}
@media print{.undo-t{display:none!important}.pg-dtw,.pg-bsc{overflow:visible}.pg-dtw .pg-dt.rooms,.pg-bsc svg{min-width:0}.pg-src{min-height:0;padding:0}}
.pg-inv a{display:inline-block;padding-block:7px;margin-block:-7px}
/* الخطوة 5: التصميم الداخلي لكل فراغ */
.pg-int{padding:0}
.pg-int>summary{display:flex;gap:10px;align-items:center;justify-content:space-between;cursor:pointer;list-style:none;padding:10px 12px;min-height:48px}
.pg-int>summary::-webkit-details-marker{display:none}
.pg-int>summary b{font-size:15px}
.pg-int>summary::after{content:"";width:7px;height:7px;border-left:1.5px solid var(--ink-2);border-bottom:1.5px solid var(--ink-2);transform:rotate(-45deg);transition:transform .2s;flex:none;margin-inline-start:auto}
.pg-int[open]>summary::after{transform:rotate(135deg)}
.pg-int[open]>summary{border-bottom:1px solid var(--line)}
.pg-ic{font-size:12.5px;color:var(--ink-2);white-space:nowrap}
.pg-ic.full{color:var(--ok);font-weight:700}
.pg-int>.pg-ig,.pg-int>.fld{margin:10px 12px 0}
.pg-int>.fld:last-child{margin-bottom:12px}
.pg-ig{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px 18px;align-items:start}
.pg-iq{display:grid;gap:4px;min-width:0}
.pg-iql{font-size:12.5px;color:var(--ink-2)}
.pg-iq .segs{flex-wrap:wrap;width:max-content;max-width:100%}
.pg-iq .segs button{min-height:40px}
.pg-ig .pg-ck{min-height:40px;font-size:13.5px}
.pg-ilit{display:flex;flex-wrap:wrap;gap:6px}
.pg-ilit .pg-tg{font-weight:400;padding:6px 10px;min-height:36px}
.pg-dtw .pg-dt.int{min-width:720px}
@media (max-width:760px){.pg-ig{grid-template-columns:minmax(0,1fr)}.pg-iq .segs{width:100%}.pg-iq .segs button{flex:1 1 auto}}
@media print{.pg-dtw .pg-dt.int{min-width:0}}
