/* ADRICAL app glue for the design system (lib/system.css).
   The reference screens use <a href> for navigation; the app uses <button data-nav> (it routes in JS).
   :where() keeps every rule at zero specificity, so each component's own class rules always win -
   these only remove the browser's default button look. */
:where(button[class*="aq-"]){appearance:none;background:none;border:0;padding:0;margin:0;color:inherit;font:inherit;text-align:start;cursor:pointer}
:where(button.aq-rail__link, button.aq-list-row, button.aq-option){inline-size:100%}
:where(button.aq-logo){padding:0}
:where(button.aq-req, button.aq-topic){inline-size:100%}
/* a requirement value that is free text (not number + unit) */
.aq-value--text{font-size:var(--font-size-small);font-weight:var(--font-weight-medium);color:var(--color-text);text-align:end;max-inline-size:22ch}
/* drawing of a room/requirement inside the clause panel or drawer */
.aq-clause-draw svg{max-inline-size:100%;block-size:auto}
/* glossary on the phone: term above its definition (the 12rem term column squeezed the text to one word per line) */
@media (max-width: 599.98px){
  .aq-list-row[data-aq="glossary.term"]{grid-template-columns:minmax(0,1fr) auto !important}
  .aq-list-row[data-aq="glossary.term"] > strong{grid-column:1 / -1}
}
/* background motion (v2-motion.js): the canvas sat at z-index -1 under the page background and was invisible.
   It now sits just above the background, and the whole shell above it - so the motion shows in the gaps, never over content. */
/* the page background is exactly the design system's (system.css): the drafting grid, or under "רשת נושמת" /
   "נקודות רשת" the canvas of lib/motion.js that swells under the cursor. The old site layers are switched off:
   body::before (white glow), body::after (24px grid / hero photo), and the old body{background} shorthand. */
/* ⚠ --grid-image is TWO gradients (horizontal + vertical lines), so there are three layers in all and each needs its
   own size - with only two sizes the vertical lines got "100% 28rem" and vanished (only horizontal lines were left). */
html body{display:block;background-color:var(--color-surface-page);background-image:var(--surface-light),var(--grid-image);
  background-size:100% 28rem,var(--grid-size,var(--space-6)) var(--grid-size,var(--space-6)),var(--grid-size,var(--space-6)) var(--grid-size,var(--space-6));
  background-repeat:no-repeat,repeat,repeat;background-position:0 0}
/* the motion canvas (lib/motion.js) sits at z-index -1, which only shows while <html> has no background of its own.
   Browser extensions (dark-mode readers and the like) often paint <html>, and then the animation disappears.
   Lifting the canvas to 0 and the page shell to 1 keeps it visible in every case - still behind all content. */
canvas.aq-motion{z-index:0 !important}
.aq-shell{position:relative;z-index:1}
html body::before,html body::after{display:none !important;content:none !important}
/* side-menu hover preview (sub-topics) - in the design-system look */
#navpop{background:var(--color-surface-raised);border:var(--border-width-ui) solid var(--color-border);border-inline-start:3px solid var(--color-action);
  border-radius:var(--radius-l);box-shadow:var(--elevation-3);color:var(--color-text);max-block-size:calc(100svh - 24px);overflow-y:auto;font-family:var(--font-text)}
#navpop .ttl{color:var(--color-text-muted);font-size:var(--font-size-caption);font-weight:var(--font-weight-bold);border-block-end-color:var(--color-border)}
#navpop .pc button{color:var(--color-text);font-size:var(--font-size-small);min-block-size:var(--button-height-s);font-family:inherit}
#navpop .pc button::before{background:var(--color-action)}
#navpop .pc button:hover{background:var(--color-surface-sunken, var(--color-rail-active-bg));color:var(--color-text)}
#navpop p{color:var(--color-text-muted)}
/* home: the running updates band sits under the ask box at full width, like the original site.
   The items roll upward at one steady pace (a loop: the list is doubled), and pause under the pointer. */
.aq-home-grid{display:flex;flex-direction:column;gap:var(--space-8)}
.aq-feed{display:flex;flex-direction:column;gap:var(--space-3)}
.aq-feed__view{block-size:19rem;overflow:hidden;-webkit-mask-image:linear-gradient(transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(transparent,#000 7%,#000 93%,transparent)}
.aq-feed__track{display:flex;flex-direction:column;animation:aq-feed-run 60s linear infinite}
.aq-feed__track > div{display:flex;flex-direction:column}
.aq-feed:hover .aq-feed__track,.aq-feed:focus-within .aq-feed__track{animation-play-state:paused}
@keyframes aq-feed-run{from{transform:translateY(0)}to{transform:translateY(-50%)}}
.aq-feed__cat{font-size:var(--font-size-caption);font-weight:var(--font-weight-bold);color:var(--color-text-muted);padding:var(--space-3) var(--space-1) var(--space-1);border-block-end:var(--border-width-ui) solid var(--color-border)}
.aq-feed__item{display:grid;grid-template-columns:minmax(9rem,13rem) minmax(0,1fr);gap:var(--space-1) var(--space-4);align-items:start;padding:var(--space-3) var(--space-1);border-block-end:var(--border-width-ui) solid var(--color-border);color:var(--color-text);text-decoration:none}
.aq-feed__item > strong{font-size:var(--font-size-small);line-height:1.4}
.aq-feed__item > .aq-small{grid-column:2}
.aq-feed__item:hover{background:var(--color-surface-sunk)}
.aq-feed__item:hover > strong{color:var(--color-action)}
.aq-feed__src{grid-row:span 2;display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-caption);color:var(--color-text-muted)}
.aq-feed__src .aq-update__logo{inline-size:2rem;block-size:2rem;font-size:.6rem;flex:none}
@media (max-width: 599.98px){.aq-feed__item{grid-template-columns:minmax(0,1fr)}.aq-feed__item > .aq-small{grid-column:1}.aq-feed__src{grid-row:auto}.aq-feed__view{block-size:17rem}}

:root[data-a11y-noanim] .aq-feed__track{animation:none}
:root[data-a11y-noanim] .aq-feed__view{overflow-y:auto}
/* software: the whole card is the button */
button.aq-software-card{inline-size:100%;text-align:start;cursor:pointer;transition:border-color var(--duration-base) var(--easing-out),box-shadow var(--duration-base) var(--easing-out)}
button.aq-software-card:hover{border-color:var(--color-action);box-shadow:var(--elevation-2)}
button.aq-software-card:focus-visible{outline:var(--focus-width) solid var(--color-focus, var(--color-action));outline-offset:2px}
/* parcel: real map inside the card */
.aq-parcel-card .aq-parcel-card__map{overflow:hidden}
.aq-parcel-card__map iframe{inline-size:100%;block-size:100%;min-block-size:14rem;border:0;display:block}
section .aq-parcel-card__map{block-size:16rem;border-radius:var(--radius-m);overflow:hidden;border:var(--border-width-ui) solid var(--color-border)}
/* compact upload box (parcel documents) */
.aq-upload--compact{max-inline-size:32rem;padding:var(--space-4) var(--space-5);gap:var(--space-2);flex-direction:row;flex-wrap:wrap;justify-content:flex-start;text-align:start}
.aq-upload--compact .aq-icon--xl{inline-size:var(--icon-size-l, 1.5rem);block-size:var(--icon-size-l, 1.5rem)}
/* מתג הנגישות "עצירת אנימציות": ציורים מופיעים מוכנים, בלי הנפשה */
:root[data-a11y-noanim]{--duration-fast:0ms;--duration-base:0ms;--duration-slow:0ms}
:root[data-a11y-noanim] .aq-draw [pathLength],:root[data-a11y-noanim] .aq-dg.is-anim .hv{stroke-dashoffset:0}
:root[data-a11y-noanim] .aq-logo:hover .aq-logo__mark{transform:none}
:root[data-a11y-noanim] #splash .nm span,:root[data-a11y-noanim] #splash .tg{opacity:1}
/* ═══ סרגל העדכונים - צד שמאל, במסך רחב בלבד. באותה שפה של הסרגל הימני (רקע כהה, טקסט בהיר).
   20rem ≈ 320px: קצת רחב מהסרגל הימני (17rem), כמו עמודות חדשות מקובלות (300-350px).
   מתחת ל-1280px הוא נעלם, והעדכונים נשארים במסך הבית מתחת לתיבת השאלה. ═══ */
.aq-sidefeed{display:none}
@media (min-width:1280px){
  .aq-shell{grid-template-columns:var(--rail-width) minmax(0,1fr) 20rem}
  .aq-shell > .aq-rail,.aq-shell > .aq-main,.aq-shell > .aq-sidefeed{grid-row:1}
  .aq-sidefeed{display:flex;flex-direction:column;grid-column:3;position:sticky;inset-block-start:0;block-size:100svh;overflow:hidden;
    padding:var(--space-5) var(--space-4);background:var(--color-rail-bg);color:var(--color-rail-text);box-shadow:var(--rail-shadow);z-index:var(--z-rail);
    --color-text:var(--color-rail-text);--color-text-muted:var(--color-rail-muted);--color-surface-sunk:var(--color-rail-active-bg);
    --color-action:var(--color-rail-active-text);--color-border:color-mix(in srgb,var(--color-rail-text) 16%,transparent)}
  .aq-home-grid > .aq-feed{display:none}
  .aq-feed--side{flex:1;min-block-size:0}
  .aq-feed--side .aq-feed__view{flex:1;block-size:auto;min-block-size:0}
  .aq-feed--side .aq-feed__item{grid-template-columns:minmax(0,1fr);border-radius:var(--radius-m)}
  .aq-feed--side .aq-feed__item > .aq-small{grid-column:1}
  .aq-feed--side .aq-feed__src{grid-row:auto}
  .aq-feed--side h2{color:var(--color-rail-text)}
  .aq-feed--side .aq-btn--link{color:var(--color-rail-active-text);text-decoration-color:currentColor}
  .aq-feed--side .aq-feed__cat{color:var(--color-rail-muted)}
}
/* ═══ מסך הבית - שולחן העבודה + שאלת היום ═══ */
.aq-home-desk{display:grid;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:var(--space-4)}
.aq-home-desk__card{align-content:start}
.aq-dq{gap:var(--space-4)}
.aq-dq__score{font-size:var(--font-size-small);color:var(--color-text-muted);font-variant-numeric:tabular-nums}
.aq-dq__score strong{color:var(--color-accent-text,var(--color-text));font-size:var(--font-size-body)}
.aq-dq__q{font-size:var(--font-size-body);font-weight:var(--font-weight-medium);line-height:1.6;margin:0}
.aq-dq__opts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}
.aq-dq__opt{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-3);inline-size:100%;text-align:start;
  padding:var(--space-3) var(--space-4);border:var(--border-width-ui) solid var(--color-border);border-radius:var(--radius-m);background:var(--color-surface-raised,var(--color-surface-page));color:var(--color-text);font:inherit;line-height:1.5;cursor:pointer}
.aq-dq__opt:hover:not([disabled]){border-color:var(--color-action);background:var(--color-action-subtle)}
.aq-dq__opt[disabled]{cursor:default}
.aq-dq__l{display:inline-grid;place-items:center;inline-size:1.75rem;block-size:1.75rem;border-radius:var(--radius-pill);border:var(--border-width-ui) solid var(--color-border);font-weight:var(--font-weight-bold);font-size:var(--font-size-small)}
.aq-dq__opt.is-ok{border-color:var(--color-success,#1f7a5a);box-shadow:inset 0 0 0 1px var(--color-success,#1f7a5a)}
.aq-dq__opt.is-ok .aq-dq__l{background:var(--color-success,#1f7a5a);border-color:transparent;color:#fff}
.aq-dq__opt.is-bad{border-color:var(--color-error,#b3261e)}
.aq-dq__opt.is-bad .aq-dq__l{background:var(--color-error,#b3261e);border-color:transparent;color:#fff}
.aq-dq__why{margin:var(--space-1) var(--space-10) 0 0;color:var(--color-text-muted)}
/* תזכורת יומית - חלונית בהירה וחביבה, לא ההודעה הכהה הרגילה */
.aq-dq-nag{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-3);align-items:start;padding:var(--space-4);
  background:var(--color-surface-raised,#fff);color:var(--color-text);border:var(--border-width-ui) solid var(--color-border);
  border-radius:var(--radius-l);box-shadow:var(--elevation-3);animation:aq-rise var(--duration-base) var(--easing-out)}
.aq-dq-nag__ic{display:grid;place-items:center;inline-size:2.5rem;block-size:2.5rem;border-radius:var(--radius-pill);background:var(--color-action-subtle);color:var(--color-action)}
@media (min-width:1280px){#dqNag{inset-inline-end:calc(20rem + var(--space-6))}}
/* שאלת היום - קוביה קומפקטית בגוון זהב עדין, כדי שתיראה שונה משאר הכרטיסים */
.aq-dq{max-inline-size:34rem;padding:var(--space-4) var(--space-5);gap:var(--space-3);
  background:color-mix(in srgb,var(--color-accent,#c6a050) 10%,var(--color-surface-raised,#fff));
  border-color:color-mix(in srgb,var(--color-accent,#c6a050) 40%,var(--color-border))}
.aq-dq .aq-badge{background:color-mix(in srgb,var(--color-accent,#c6a050) 22%,transparent)}
.aq-dq__q{font-size:var(--font-size-small)}
.aq-dq__opts{gap:var(--space-1)}
.aq-dq__opt{padding:var(--space-2) var(--space-3);gap:var(--space-2);font-size:var(--font-size-small)}
.aq-dq__l{inline-size:1.4rem;block-size:1.4rem;font-size:var(--font-size-caption)}
.aq-dq__why{margin-inline-start:var(--space-8)}
/* תווית "טיוטת עבודה - לאימות" בראש כל דוח ניתוח */
.aq-draft-note{display:flex;gap:var(--space-2);align-items:flex-start;margin:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-m);
  background:var(--color-warning-bg,color-mix(in srgb,var(--color-accent,#c6a050) 14%,transparent));font-size:var(--font-size-small);line-height:1.6}
.aq-draft-note .aq-icon{flex:none;margin-block-start:.2em}
/* "נקודה במפה" - חלון מפה לדקירת נקודה */
.aq-mappick{inline-size:min(100% - var(--space-8),56rem);padding:var(--space-4) var(--space-5);display:none}
.aq-mappick[open]{display:flex;flex-direction:column;gap:var(--space-3)}
.aq-mappick__head,.aq-mappick__foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}
.aq-mappick__map{block-size:min(62vh,34rem);border-radius:var(--radius-m);border:var(--border-width-ui) solid var(--color-border);overflow:hidden}
.aq-mappick__map .leaflet-container{font:inherit}
@media (max-width:600px){.aq-mappick{inline-size:calc(100% - var(--space-4));padding:var(--space-3)}.aq-mappick__map{block-size:58vh}}
/* בורר רגיל/לווין במפות */
.leaflet-control-layers{font:inherit;font-size:var(--font-size-small);direction:rtl;border-radius:var(--radius-m)!important}
.leaflet-control-layers-base label{display:flex;align-items:center;gap:4px;cursor:pointer}
.aq-parcel-card__map{position:relative;z-index:0}
/* ═══ טקסט נשאר בתוך התיבה (27.10.2026) ═══
   ערך ארוך בקוביית מספר ("עד 9 קומות מעל מפלס הקרקע") לא נשבר לשורה וזלג מהכרטיס - aq-value מוגדר nowrap.
   מספרים קצרים נשארים בשורה אחת; ערך טקסט נשבר לשורות. ובכל כרטיס/שורה - מילה ארוכה (קישור, מספר תכנית) נשברת במקום לזלוג. */
.aq-kpi,.aq-kpi-strip>*{min-inline-size:0}
.aq-value{max-inline-size:100%;min-inline-size:0}
.aq-value--text{display:block;white-space:normal;max-inline-size:100%;text-align:start;line-height:1.45}
.aq-card,.aq-kpi,.aq-alert,.aq-list-row,.aq-table td,.aq-table th,.aq-feed__item,.aq-parcel-card,.aq-calc__line,.aq-draft-note,.aq-dq__opt,.aq-home-tile,.aq-topic{overflow-wrap:break-word;min-inline-size:0}
.aq-list-row>*,.aq-cluster>*{min-inline-size:0}
.aq-value--kpi{flex-wrap:wrap;row-gap:0}
.aq-value--kpi .aq-value__num{white-space:nowrap}
/* טקסט גדול על מסך בינוני: שלוש עמודות לא נכנסות (הסרגלים נמדדים ביחידות טקסט וגדלים איתו) -
   העדכונים חוזרים למסך הבית, ותוכן העניינים של הדוח מתקפל לכפתור */
@media (min-width:1280px) and (max-width:1599.98px){
  :root[data-text-size="l"] .aq-shell{grid-template-columns:var(--rail-width) minmax(0,1fr)}
  :root[data-text-size="l"] .aq-sidefeed{display:none}
  :root[data-text-size="l"] .aq-home-grid > .aq-feed{display:flex}
}
@media (max-width:1599.98px){
  :root[data-text-size="l"] .aq-report{grid-template-columns:minmax(0,1fr)}
  :root[data-text-size="l"] .aq-report > .aq-index{display:none}
}
/* טלפון: כפתורים ארוכים נשברים לשורות, בורר אפשרויות עובר לשתי שורות, וכרטיס המגרש בעמודה אחת */
.aq-btn{max-inline-size:100%}
@media (max-width:599.98px){
  .aq-btn{white-space:normal;text-align:center;line-height:1.35;block-size:auto;min-block-size:var(--button-height-m,2.75rem)}
  .aq-segmented{display:flex!important;flex-wrap:wrap;max-inline-size:100%}
  .aq-segmented > label{flex:1 1 auto}
  .aq-parcel-card{grid-template-columns:minmax(0,1fr)}
}
/* מקור בסוגריים - קטן ומושתק (עמוד, סעיף, נספח...) */
.aq-ref{font-size:.8em;font-weight:var(--font-weight-regular,400);color:var(--color-text-muted);letter-spacing:0;unicode-bidi:isolate}
/* project tools: on phone, a stacked list of buttons instead of a squeezed tab row */
@media (max-width: 599.98px){.aq-tabs[aria-label="כלי הפרויקט"]{flex-direction:column;gap:var(--space-2);border:0;overflow:visible}.aq-tabs[aria-label="כלי הפרויקט"] [role="tab"]{inline-size:100%;justify-content:flex-start;text-align:start;min-block-size:var(--button-height-m,2.75rem);border:var(--border-width-ui) solid var(--color-border);border-radius:var(--radius-m,.5rem);background:var(--color-surface)}.aq-tabs[aria-label="כלי הפרויקט"] [role="tab"][aria-selected="true"]{border-color:var(--color-action);box-shadow:inset -.25rem 0 0 var(--color-action)}}
/* אימות מאגר התקנות מול הנוסח (verify-kb.js) */
.aq-badge--ok{background:var(--color-compliant-bg);color:var(--color-compliant);box-shadow:inset 0 0 0 var(--border-width-ui) var(--color-compliant)}
.aq-verify.kbv-ok>.aq-icon{color:var(--color-compliant)}
/* אימות בקוד מול טקסט התב״ע (tba-verify.js) */
.aqv-bad{box-shadow:inset 0.25rem 0 0 var(--color-needs-check)}
.aqv-cell{background:var(--color-needs-check-bg);color:var(--color-needs-check);font-weight:var(--font-weight-bold)}
/* שורות התקנות: מסגרת עדינה לכל שורה, נקודת אימות, פירוט שנפתח מתחת (29.10) */
.aq-req-list{background:transparent;border:0;box-shadow:none;overflow:visible;display:flex;flex-direction:column;gap:var(--space-2)}
.aq-req-list>li{background:var(--color-surface-card);border:var(--border-width-ui) solid var(--color-border);border-radius:var(--card-radius);overflow:hidden}
.aq-req-list .aq-req{border-block-end:0}
.kbv-dot{display:inline-block;inline-size:.55rem;block-size:.55rem;border-radius:50%;flex:none;vertical-align:middle}
.kbv-dot--ok{background:var(--color-compliant)}.kbv-dot--none{background:var(--color-needs-check)}.kbv-dot--info{background:var(--color-text-muted);opacity:.6}
.kbv-legend{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-4);margin:0;font-size:var(--font-size-caption);color:var(--color-text-muted)}
.kb-inline{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3) var(--space-4) var(--space-4);border-block-start:var(--border-width-ui) solid var(--color-border);background:var(--color-surface)}
