/* ===== ROKBOOK new design kit (24 Oct 2026) =====
   Dark only. Chakra Petch. Plain glowing numbers. All headings in UPPERCASE.
   Every class starts with nd- so it never clashes with older styles.
   See ND_KIT.md for how to use each piece on other pages. */
:root{--nd-ink:#ececef;--nd-ink2:#b8b8c0;--nd-ink3:#a2a2aa;--nd-or:#ee7707;--nd-or2:#ffb35c;--nd-red:#ff453a;--nd-r:28px;
 --nd-steel:radial-gradient(ellipse 60% 55% at 55% 75%,#2d6bff 0%,#4f8dff 28%,transparent 65%),radial-gradient(ellipse 90% 70% at 40% 20%,#2a3550,transparent 70%),linear-gradient(160deg,#151a26,#1c2a4a 55%,#1d3f8a);
 --nd-plum:radial-gradient(ellipse 60% 55% at 55% 75%,#8b3dff 0%,#b072ff 28%,transparent 65%),radial-gradient(ellipse 90% 70% at 40% 20%,#3a2445,transparent 70%),linear-gradient(160deg,#1a1520,#2d1d44 55%,#4b2590);
 --nd-copper:radial-gradient(ellipse 60% 55% at 55% 75%,#c4580a 0%,#d27a32 28%,transparent 65%),radial-gradient(ellipse 90% 70% at 40% 20%,#3d2a1e,transparent 70%),linear-gradient(160deg,#1c1714,#3a2414 55%,#7a3c10)}

/* glass card: the base box for everything */
.nd-card{position:relative;box-sizing:border-box;border-radius:var(--nd-r);background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.025));box-shadow:inset 0 1px 0 rgba(255,255,255,.08),inset 0 0 0 1px rgba(255,255,255,.06),0 14px 40px rgba(0,0,0,.4);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);color:var(--nd-ink);padding:16px 18px;min-width:0}
.nd-go{cursor:pointer;transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .25s}
.nd-go:hover,.nd-go:focus-visible{transform:translateY(-3px);outline:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.12),inset 0 0 0 1px rgba(255,255,255,.1),0 20px 46px rgba(0,0,0,.55)}
/* inner well: a quieter box inside a card */
.nd-well{border-radius:20px;background:rgba(255,255,255,.035);box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);padding:12px 14px}

/* headings and text */
.nd-h{display:flex;align-items:center;gap:8px;font-size:13.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--nd-ink);white-space:nowrap;margin:0}
.nd-h svg{width:15px;height:15px;flex:none;opacity:.85}
.nd-h>span:not(.nd-r){overflow:hidden;text-overflow:ellipsis}.nd-h .nd-r{margin-left:auto;padding-left:8px;min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:13.5px;letter-spacing:.02em;text-transform:none;font-weight:500;opacity:.8}
.nd-cap{font-size:13.5px;color:var(--nd-ink3);line-height:1.4}
.nd-crumb{font-size:13px;color:var(--nd-ink3);letter-spacing:.04em;text-transform:uppercase}
.nd-crumb button{all:unset;cursor:pointer;color:var(--nd-or2)}
.nd-title{font-weight:500;font-size:34px;line-height:1.05;letter-spacing:.02em;text-transform:uppercase;margin:6px 0 10px;color:#fff}

/* plain glowing number with a small unit */
.nd-num{font-weight:600;font-size:52px;line-height:1;color:#fff;text-shadow:0 0 18px rgba(255,255,255,.4);white-space:nowrap}
.nd-num small{font-size:16px;margin-left:6px;opacity:.85;text-shadow:none;font-weight:500}
.nd-num.m{white-space:normal;font-size:28px;text-shadow:0 0 14px rgba(255,255,255,.25)}.nd-num.m small{font-size:13.5px;color:#cfcfd4}

/* tags and chips */
.nd-tag{display:inline-block;font-size:13.5px;padding:3px 10px;border-radius:10px;background:rgba(255,255,255,.08);color:#d2d2d8;vertical-align:middle}
.nd-tag.lime{background:#e4f53a;color:#2a2a10;font-weight:600}
.nd-tag.or{background:rgba(238,119,7,.18);color:var(--nd-or2)}
.nd-tag.gl{background:rgba(255,255,255,.18);box-shadow:inset 0 0 0 1px rgba(255,255,255,.35);color:#fff}
.nd-tag.rd{background:rgba(255,69,58,.18);color:#ff8a80}
button.nd-tag{border:0;font:inherit;font-size:13.5px;cursor:pointer}
.nd-chips{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.nd-chips>div{border-radius:14px;background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);padding:8px 12px;min-width:0}
.nd-chips small{display:block;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:#b4b4bc}
.nd-chips b{display:block;font-weight:500;font-size:19px;margin-top:2px;color:#fff;white-space:nowrap}
.nd-chips span{font-size:13px;color:#b4b4bc;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nd-ib{all:unset;cursor:pointer;width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.09);box-shadow:inset 0 1px 0 rgba(255,255,255,.1);color:#eee}
.nd-ib svg{width:15px;height:15px}
.nd-btn{all:unset;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 14px;border-radius:16px;font-size:13.5px;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:rgba(255,255,255,.09);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}
.nd-btn.or{box-shadow:inset 0 0 0 1px var(--nd-or2),0 0 12px rgba(238,119,7,.35)}

/* colour tile: full-bleed blurred glow. Pick the colour by meaning:
   blue = build and time, plum = money in and out, copper = money going out. Never green. */
.nd-tile{position:relative;overflow:hidden;border-radius:30px;color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 16px 40px rgba(0,0,0,.5);min-width:0}
.nd-tile:before{content:"";position:absolute;inset:-10%;filter:blur(18px);background:var(--nd-bg)}
.nd-tile.steel{--nd-bg:var(--nd-steel)}.nd-tile.plum{--nd-bg:var(--nd-plum)}.nd-tile.copper{--nd-bg:var(--nd-copper)}
.nd-tile>.nd-in{position:relative;height:100%;padding:20px 22px;display:flex;flex-direction:column;box-sizing:border-box}
.nd-tile .nd-h{color:#fff;font-weight:500;font-size:14px}
.nd-tile .nd-num{margin-top:12px}
.nd-tile .nd-sub{font-size:13px;opacity:.92;margin-top:6px;line-height:1.4}
.nd-tile .nd-mid{display:flex;flex-direction:column;min-height:0;padding:14px 0 16px}
.nd-tile.steel .nd-mid{flex:1}.nd-tile.steel .nd-lad{flex:1}.nd-tile.steel .nd-lad div{flex:1 1 21px;max-height:32px}
.nd-tile .nd-cap{color:rgba(255,255,255,.88)}
.nd-note{font-size:14px;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.07);box-shadow:inset 0 0 0 1px rgba(255,255,255,.15);align-self:flex-start;line-height:1.4}

/* capsule bar row: name and detail on the left, glass capsule, value on the right, message below */
.nd-bars{position:relative;display:flex;flex-direction:column;gap:12px}
.nd-bar{display:grid;grid-template-columns:112px 1fr auto;gap:2px 10px;align-items:center}
.nd-bar .n{font-size:14px;line-height:1.15}.nd-bar .n small{display:block;font-size:12.5px;opacity:.65;margin-top:2px}
.nd-bar .c{position:relative;height:16px;border-radius:8px;background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.28)}
.nd-bar .c u{position:absolute;left:3px;top:3px;bottom:3px;border-radius:5px;background:linear-gradient(90deg,rgba(255,255,255,.25),rgba(255,255,255,.7));min-width:6px;max-width:calc(100% - 6px)}
.nd-bar .c:after{content:"";position:absolute;left:8px;right:8px;top:2px;height:2.5px;border-radius:2px;background:rgba(255,255,255,.14)}
.nd-bar .v{font-size:13.5px;text-align:right;white-space:nowrap}
.nd-bar .m{grid-column:2/4;font-size:12.5px;color:#ffe2bd;margin-top:1px}
.nd-bar .c s{position:absolute;top:-4px;bottom:-4px;width:2px;margin-left:-1px;border-radius:1px;background:#fff;box-shadow:0 0 6px #fff;z-index:1}
.nd-mark{position:absolute;top:-12px;bottom:14px;width:0;border-left:1.4px dashed #fff;filter:drop-shadow(0 0 3px #fff);pointer-events:none}
.nd-mark b{position:absolute;left:4px;top:-2px;font-size:12.5px;font-weight:500;white-space:nowrap}

/* stage ladder: one capsule per stage, bottom = first */
.nd-lad{display:flex;flex-direction:column-reverse;gap:4px}
.nd-lad div{position:relative;height:24px;border-radius:12px;background:rgba(255,255,255,.07);box-shadow:inset 0 0 0 1px rgba(255,255,255,.22);display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 10px;font-size:13px;overflow:hidden;flex:none}
.nd-lad div span{position:relative;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nd-lad div i{font-style:normal;position:relative;font-size:12.5px;white-space:nowrap}
.nd-lad .d{background:linear-gradient(90deg,rgba(255,255,255,.18),rgba(255,255,255,.42))}
.nd-lad .c{box-shadow:inset 0 0 0 1px #ffcf8f,0 0 14px rgba(255,160,60,.45);background:linear-gradient(90deg,rgba(255,190,110,.35),rgba(255,179,92,.75))}
.nd-lad .f{color:rgba(255,255,255,.88)}.nd-lad .f i{color:rgba(255,255,255,.88)}
.nd-lad.tight div{height:21px;font-size:12.5px}

/* day capsules: one per day, fill = amount (money) */
.nd-days{display:flex;gap:6px;align-items:flex-end}
.nd-days>div{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:12.5px;min-width:0}
.nd-days .k{font-size:12.5px;color:#ffe2bd;height:11px;white-space:nowrap}
.nd-days .p{width:100%;height:56px;border-radius:12px;background:rgba(255,255,255,.07);box-shadow:inset 0 0 0 1px rgba(255,255,255,.22);position:relative;overflow:hidden}
.nd-days .p u{position:absolute;left:3px;right:3px;bottom:3px;border-radius:9px;background:linear-gradient(180deg,#fff,rgba(255,255,255,.45));box-shadow:0 0 8px rgba(255,255,255,.6)}
.nd-days .p b{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);text-align:center;font-size:12.5px;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.6);font-weight:600;z-index:1}.nd-days .p b.dk{color:#3a1c06;text-shadow:none}
.nd-days .t .p{box-shadow:inset 0 0 0 1.5px #ffe2bd}

/* worker strip: one glass capsule per day, height = workers, red dot = no diary */
.nd-strip{position:relative;height:64px;border-radius:37px;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.03));box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);display:flex;align-items:flex-end;padding:0 22px 14px;gap:1px;margin-bottom:22px}
.nd-strip>div{flex:1;display:flex;justify-content:center;align-items:flex-end;min-width:0}
.nd-strip u{display:block;width:5px;max-width:100%;border-radius:3px;background:linear-gradient(180deg,rgba(255,255,255,.55),rgba(255,255,255,.15));box-shadow:inset 0 0 0 .5px rgba(255,255,255,.3)}
.nd-strip .t u{background:linear-gradient(180deg,#ffd29a,#ee7707);box-shadow:0 0 8px #ee7707}
.nd-strip i{display:block;width:5px;height:5px;border-radius:50%;background:var(--nd-red);box-shadow:0 0 6px var(--nd-red)}
.nd-strip .mo{position:absolute;bottom:-19px;font-size:12.5px;color:var(--nd-ink2);white-space:nowrap}
.nd-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--nd-red);margin-right:5px;vertical-align:1px}

/* labelled stage capsules in 2 columns (paid = filled + tick, due = orange glow, later = dim) */
.nd-st{display:grid;grid-template-columns:1fr 1fr;grid-auto-flow:column;gap:6px 8px}
.nd-st div{position:relative;height:30px;border-radius:15px;display:flex;align-items:center;justify-content:space-between;padding:0 10px;gap:6px;font-size:13px;background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);color:#b4b4bc;min-width:0}
.nd-st div span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nd-st div b{font-weight:500;white-space:nowrap}
.nd-st .r{background:linear-gradient(90deg,rgba(255,255,255,.10),rgba(255,255,255,.22));box-shadow:inset 0 0 0 1px rgba(255,255,255,.3),inset 0 1px 0 rgba(255,255,255,.35);color:#e6e6ea}
.nd-st .r b:after{content:" ✓";color:#fff}
.nd-st .d{background:linear-gradient(90deg,rgba(238,119,7,.10),rgba(238,119,7,.30));box-shadow:inset 0 0 0 1px var(--nd-or2),0 0 12px rgba(238,119,7,.45);color:#fff}
.nd-st .d b{color:#ffcf8f}
.nd-st .u b{color:#a2a2aa}

/* people dots: one dot per worker, grouped by trade */
.nd-ppl{display:flex;gap:16px;flex-wrap:wrap;margin-top:10px}
.nd-ppl>div{display:flex;flex-direction:column;gap:5px}
.nd-ppl small{font-size:12.5px;letter-spacing:.1em;color:#b8b8c0;text-transform:uppercase}
.nd-ppl small b{color:#fff;font-weight:600;margin-left:4px}
.nd-ppl i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:4px;background:#77777f}
.nd-ppl div:first-child i{background:var(--nd-or);box-shadow:0 0 5px var(--nd-or)}
.nd-list{display:flex;flex-direction:column;gap:6px;margin-top:10px;font-size:14px}
.nd-list div{display:flex;justify-content:space-between;gap:10px;color:#cfcfd4}.nd-list span{color:#b4b4bc;white-space:nowrap}

/* ===== project page (round 7) ===== */
body[data-tab=project].nd-on main{max-width:1640px}
.nd-pg{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:14px;margin:0 0 8px}
.nd-left{display:flex;flex-direction:column;gap:14px;min-width:0}
.nd-name{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px 14px}
.nd-name>div:first-child{flex:1 1 260px}.nd-name>div:last-child{flex:0 1 auto;flex-direction:row-reverse!important;align-items:flex-start!important}
.nd-name .nd-ph{display:flex;gap:10px;align-items:center;border-radius:18px;padding:7px 12px 7px 7px;cursor:pointer;max-width:250px}
.nd-ph .im{width:74px;height:56px;border-radius:12px;overflow:hidden;flex:none;background:rgba(255,255,255,.06);display:flex;align-items:center;justify-content:center}
.nd-ph .im img{width:100%;height:100%;object-fit:cover;display:block}
.nd-ph .im svg{width:22px;height:22px;color:#a2a2aa}
.nd-ph .tx{font-size:13.5px;line-height:1.4;min-width:0}.nd-ph .tx div:first-child{text-transform:uppercase;letter-spacing:.06em}
.nd-ph .tx .nd-cap{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nd-house{container-type:inline-size;flex:1;display:flex;flex-direction:column;gap:10px;padding-bottom:12px}
.nd-art{position:relative;flex:1;min-height:240px;display:flex;align-items:center;justify-content:center}
.nd-art svg{width:100%;height:100%;max-height:440px;display:block}
.nd-key{display:flex;gap:14px;flex-wrap:wrap;font-size:12.5px;color:var(--nd-ink2)}
.nd-key i{display:inline-block;width:12px;height:8px;border-radius:2px;margin-right:5px;vertical-align:0}
.nd-right{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto 1fr;gap:14px;min-width:0}
.nd-right .a{grid-row:1/3}

.nd-low{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) minmax(0,1.4fr);gap:14px}
.nd-low .nd-card{display:flex;flex-direction:column}
.nd-low .nd-num{margin-top:12px}
.nd-low .nd-foot{margin-top:auto;padding-top:12px}
.nd-info{margin:8px 0 0;display:flex;align-items:baseline;gap:12px}
.nd-info b{font-size:13.5px;font-weight:600;letter-spacing:.12em;color:var(--nd-or)}
@media (max-width:1279px){.nd-pg{grid-template-columns:1fr}.nd-low{grid-template-columns:1fr 1fr}.nd-low>:last-child{grid-column:1/-1}.nd-art{min-height:260px}}
.nd-lad .more{display:none}
@media (max-width:760px){.nd-lad .x{display:none}.nd-lad .more{display:flex;justify-content:center;background:none;box-shadow:none;opacity:.7}.nd-right{grid-template-columns:1fr}.nd-right .a{grid-row:auto}.nd-low{grid-template-columns:1fr}.nd-chips{grid-template-columns:1fr 1fr}
 .nd-title{font-size:28px}.nd-name{flex-direction:column}.nd-name .nd-ph{max-width:none;width:100%;box-sizing:border-box}.nd-num{font-size:44px}.nd-strip{padding:0 14px 14px}.nd-right .nd-tile{min-height:0}}

/* side menu collapse (computers): the wide menu folds to the slim one; remembered on this device */
.nd-fold{display:none}
/* ===== side menu option C (25 Oct 2026): full height, flush with the left edge, toggle beside the logo =====
   Computer: the wide panel folds to 82px (icons stay put, names fade). Tablet: the slim panel, full height. Phone unchanged. */
@media(min-width:641px){
 .sb-pan.sb-glass{box-sizing:border-box;top:0;left:0;bottom:0;max-height:none;height:auto;border-radius:0;padding:calc(22px + env(safe-area-inset-top,0px)) 12px calc(18px + env(safe-area-inset-bottom,0px)) calc(12px + env(safe-area-inset-left,0px));
  box-shadow:inset 0 1px 0 #ffffff40,inset -1px 0 0 #ffffff26,inset 0 -12px 24px #0000004d,18px 0 40px #0008}
 /* lit right edge: logo orange at the top, fading down */
 .sb-pan.sb-glass::after{left:auto;right:0;width:1.5px;padding:0;border-radius:0;-webkit-mask:none;mask:none;background:linear-gradient(180deg,#ee7707,#ee770766 30%,#ffffff1a 70%,#ffffff33)}
 .sb-pan .sb-dv:nth-last-child(2){margin-top:auto}
 .sb-slim{width:88px}
}
@media(min-width:641px) and (max-width:1099px){body.lp-D{padding-left:112px!important}}
@media(min-width:1100px){
 body.lp-D{padding-left:288px!important;transition:padding-left .42s cubic-bezier(.2,.8,.2,1)}
 html.tkopen body.lp-D #tkframe{left:264px!important;width:calc(100% - 264px)!important}
 .sb-wide{width:264px;overflow-x:hidden;transition:width .42s cubic-bezier(.2,.8,.2,1)}
 .sb-wide .sb-logo{justify-content:flex-start;padding:0 52px 0 6px;flex:none;white-space:nowrap;transition:margin .42s cubic-bezier(.2,.8,.2,1)}
 .sb-wide .sb-logo svg{height:13px}
 .sb-wide .sb-it{padding:0 0 0 14.5px;white-space:nowrap;overflow:hidden;transition:background .3s,color .3s,width .42s cubic-bezier(.2,.8,.2,1),height .42s cubic-bezier(.2,.8,.2,1)}
 .sb-wide .sb-n{margin-right:16px}
 .sb-wide .sb-l,.sb-wide .sb-logo i,.sb-wide .sb-logo span,.sb-wide .sb-logo svg{transition:opacity .25s .12s}
 .nd-fold{display:flex;position:fixed;z-index:2147483501;top:calc(24px + env(safe-area-inset-top,0px));left:calc(216px + env(safe-area-inset-left,0px));width:36px;height:36px;padding:0;border-radius:10px;border:0;cursor:pointer;align-items:center;justify-content:center;
  background:none;box-shadow:none;transition:left .42s cubic-bezier(.2,.8,.2,1),top .42s cubic-bezier(.2,.8,.2,1),color .2s,border-color .2s}
 .nd-fold svg{width:28px;height:auto;transition:transform .42s cubic-bezier(.2,.8,.2,1),filter .2s}
 .nd-fold:hover svg{filter:drop-shadow(0 0 6px #ee7707aa) brightness(1.15)}
 .nd-fold:focus-visible{outline:2px solid #ee7707;outline-offset:2px}
 /* folded */
 html.nd-col body.lp-D{padding-left:106px!important}
 html.nd-col.tkopen body.lp-D #tkframe{left:82px!important;width:calc(100% - 82px)!important}
 html.nd-col .sb-wide{width:82px}
 html.nd-col .sb-wide .sb-it{width:56px;height:56px}
 html.nd-col .sb-wide .sb-logo{padding:0 0 0 2.5px}
 html.nd-col .sb-wide .sb-logo svg{opacity:0;transition-delay:0s}
 html.nd-col .sb-wide .sb-l,html.nd-col .sb-wide .sb-logo i,html.nd-col .sb-wide .sb-logo span{opacity:0;transition-delay:0s}
 html.nd-col .sb-wide .sb-it.on::before{left:14%;right:14%;top:30%}
 html.nd-col .sb-wide .sb-n{position:absolute;top:9px;right:9px;margin:0;width:8px;height:8px;padding:0;border-radius:50%;background:#ee7707;box-shadow:0 0 8px #ee7707;font-size:0}
 html.nd-col .sb-wide .sb-n::before{display:none}
 html.nd-col .nd-fold{left:calc(23px + env(safe-area-inset-left,0px))}
 html.nd-col .nd-fold svg{transform:rotate(-180deg)}
 html.tkopen .nd-fold{display:none}
}
@media(prefers-reduced-motion:reduce){body.lp-D,.sb-wide,.sb-wide *,.nd-fold,.nd-fold *{transition:none!important}}

@container (max-width:540px){.nd-chips{grid-template-columns:1fr 1fr}}
.nd-chips small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* bottom row colour options (preview picks one: body.nd-lc1 .. nd-lc4) */
:root{--nd-teal:radial-gradient(ellipse 60% 55% at 55% 80%,#1f8fb0 0%,#3aa7c4 28%,transparent 65%),radial-gradient(ellipse 90% 70% at 40% 20%,#1e3440,transparent 70%),linear-gradient(160deg,#121a1e,#16303c 55%,#1a5a70);
 --nd-sand:radial-gradient(ellipse 60% 55% at 55% 80%,#b8862a 0%,#c9a050 28%,transparent 65%),radial-gradient(ellipse 90% 70% at 40% 20%,#3a3020,transparent 70%),linear-gradient(160deg,#1a1712,#33281a 55%,#6a4e1a);
 --nd-rose:radial-gradient(ellipse 60% 55% at 55% 80%,#b0446a 0%,#c8668a 28%,transparent 65%),radial-gradient(ellipse 90% 70% at 40% 20%,#3a2030,transparent 70%),linear-gradient(160deg,#1c1418,#361a28 55%,#6e2244)}
.nd-low .nd-card{overflow:hidden}.nd-low .nd-card>*{position:relative}
.nd-low .nd-card:before{content:"";position:absolute;inset:-10%;filter:blur(18px);pointer-events:none}
.nd-lc1 .nd-low .lc-a:before,.nd-lc3 .nd-low .lc-a:before{background:var(--nd-steel)}
.nd-lc1 .nd-low .lc-b:before{background:var(--nd-copper)}
.nd-lc1 .nd-low .lc-c:before,.nd-lc3 .nd-low .lc-c:before{background:var(--nd-plum)}
.nd-lc3 .nd-low .lc-b:before{background:var(--nd-sand)}
.nd-lc4 .nd-low .lc-a:before{background:var(--nd-teal)}.nd-lc4 .nd-low .lc-b:before{background:var(--nd-sand)}.nd-lc4 .nd-low .lc-c:before{background:var(--nd-rose)}
.nd-lc1 .nd-low .nd-card,.nd-lc3 .nd-low .nd-card,.nd-lc4 .nd-low .nd-card{background:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 16px 40px rgba(0,0,0,.5);border-radius:30px}
.nd-lc1 .nd-low .nd-cap,.nd-lc3 .nd-low .nd-cap,.nd-lc4 .nd-low .nd-cap,.nd-lc1 .nd-low .nd-list span,.nd-lc3 .nd-low .nd-list span,.nd-lc4 .nd-low .nd-list span,.nd-lc1 .nd-low .nd-st div,.nd-lc3 .nd-low .nd-st div,.nd-lc4 .nd-low .nd-st div{color:rgba(255,255,255,.88)}
.nd-lc1 .nd-low .nd-list div,.nd-lc3 .nd-low .nd-list div,.nd-lc4 .nd-low .nd-list div{color:#fff}
/* option 2: soft glow, glass stays dark with colour rising from the bottom corner */
.nd-lc2 .nd-low .lc-a:before{inset:0;filter:none;background:radial-gradient(ellipse 90% 80% at 90% 115%,rgba(79,141,255,.55),transparent 70%)}
.nd-lc2 .nd-low .lc-b:before{inset:0;filter:none;background:radial-gradient(ellipse 90% 80% at 90% 115%,rgba(210,122,50,.55),transparent 70%)}
.nd-lc2 .nd-low .lc-c:before{inset:0;filter:none;background:radial-gradient(ellipse 90% 80% at 90% 115%,rgba(176,114,255,.55),transparent 70%)}
.nd-lc3 .nd-low .nd-card:before{opacity:.85}
.nd-lc1 .nd-low .nd-st .u b,.nd-lc3 .nd-low .nd-st .u b,.nd-lc4 .nd-low .nd-st .u b{color:rgba(255,255,255,.88)}.nd-lc1 .nd-low .nd-st div,.nd-lc3 .nd-low .nd-st div,.nd-lc4 .nd-low .nd-st div{background:rgba(0,0,0,.18)}.nd-lc1 .nd-low .nd-st .r,.nd-lc3 .nd-low .nd-st .r,.nd-lc4 .nd-low .nd-st .r{background:linear-gradient(90deg,rgba(255,255,255,.14),rgba(255,255,255,.26))}

/* item dividers: the same faded line as the side menu, between rows of a list or bar group */
.nd-bars{gap:0}.nd-bars>.nd-bar{padding:12px 0}.nd-bars>.nd-bar:first-child{padding-top:0}.nd-bars>.nd-bar:last-child{padding-bottom:0}
.nd-bars>.nd-bar+.nd-bar,.nd-list>div+div{border-top:1px solid transparent;border-image:linear-gradient(90deg,transparent,rgba(255,255,255,.22) 15%,rgba(255,255,255,.22) 85%,transparent) 1}
.nd-list{gap:0}.nd-list>div{padding:7px 0}.nd-list>div:first-child{padding-top:0}.nd-list>div:last-child{padding-bottom:0}
.nd-tile .nd-bars>.nd-bar+.nd-bar,.nd-low .nd-list>div+div{border-image:linear-gradient(90deg,transparent,rgba(255,255,255,.42) 15%,rgba(255,255,255,.42) 85%,transparent) 1}

/* round 4: line above the first bar too, one-line notes, brighter ladder words, clearer stage capsules */
.nd-tile .nd-bars{border-top:1px solid transparent;border-image:linear-gradient(90deg,transparent,rgba(255,255,255,.42) 15%,rgba(255,255,255,.42) 85%,transparent) 1;padding-top:12px}
.nd-tile .nd-bars>.nd-bar:first-child{padding-top:0}
.nd-bar .m{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.nd-bar .n{min-width:0}
.nd-lad div{color:#fff;font-weight:600}.nd-lad div i{color:rgba(255,255,255,.9);font-weight:500}
.nd-lad .f{color:rgba(255,255,255,.92);background:rgba(255,255,255,.1);box-shadow:inset 0 0 0 1px rgba(255,255,255,.3)}.nd-lad .f i{color:rgba(255,255,255,.88)}
.nd-lad .d{background:linear-gradient(90deg,rgba(255,255,255,.28),rgba(255,255,255,.5))}
.nd-lad .c{color:#2a1400}.nd-lad .c i{color:#2a1400;font-weight:600}
.nd-lc4 .nd-low .nd-st div,.nd-low .nd-st div{background:rgba(10,10,14,.45);box-shadow:inset 0 0 0 1px rgba(255,255,255,.22);color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.nd-low .nd-st .u{color:rgba(255,255,255,.92)}.nd-lc4 .nd-low .nd-st .u b,.nd-low .nd-st .u b{color:rgba(255,255,255,.92)}
.nd-lc4 .nd-low .nd-st .r,.nd-low .nd-st .r{background:rgba(255,255,255,.85);box-shadow:0 0 10px rgba(255,255,255,.3);color:#1d1418}
.nd-low .nd-st .r b,.nd-low .nd-st .r b:after{color:#1d1418}
.nd-lc4 .nd-low .nd-st .d,.nd-low .nd-st .d{background:rgba(238,119,7,.9);box-shadow:0 0 14px rgba(238,119,7,.6);color:#fff;font-weight:600}
.nd-low .nd-st .d b{color:#fff}
.nd-art{min-height:280px}
.nd-bar .m{grid-column:1/-1}

/* headline split: nd-top (title, big number, sentence) above nd-rest (the chart). One look is picked with body.nd-sp1..4 */
.nd-rest{display:flex;flex-direction:column;flex:1;min-height:0}
.nd-tile.steel .nd-rest .nd-mid{flex:1}
.nd-sp1 .nd-top{padding-bottom:14px;border-bottom:1px solid transparent;border-image:linear-gradient(90deg,transparent,rgba(255,255,255,.42) 15%,rgba(255,255,255,.42) 85%,transparent) 1}
.nd-sp1 .nd-rest{padding-top:12px}
.nd-sp2 .nd-rest{margin:14px -8px -8px;padding:14px 12px 12px;border-radius:22px;background:rgba(0,0,0,.24);box-shadow:inset 0 8px 16px rgba(0,0,0,.35),inset 0 1px 0 rgba(0,0,0,.45),0 1px 0 rgba(255,255,255,.14)}
.nd-sp3 .nd-rest{margin:14px -22px -20px;padding:18px 22px 20px;background:linear-gradient(180deg,rgba(0,0,0,.32),rgba(0,0,0,.08) 34px,rgba(0,0,0,.14));box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 -1px 0 rgba(0,0,0,.35)}
.nd-low.x{}.nd-sp3 .nd-low .nd-rest{margin:14px -18px -16px;padding:16px 18px 16px}
.nd-sp4 .nd-rest{margin:14px -8px -8px;padding:14px 12px 12px;border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.06));box-shadow:inset 0 1px 0 rgba(255,255,255,.4),inset 0 0 0 1px rgba(255,255,255,.12),0 -8px 20px rgba(0,0,0,.25);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.nd-sp2 .nd-tile .nd-bars,.nd-sp3 .nd-tile .nd-bars,.nd-sp4 .nd-tile .nd-bars{border-image:linear-gradient(90deg,transparent,rgba(255,255,255,.3) 15%,rgba(255,255,255,.3) 85%,transparent) 1}
.nd-sp1 .nd-tile .nd-mid:first-child,.nd-sp2 .nd-tile .nd-mid:first-child,.nd-sp3 .nd-tile .nd-mid:first-child,.nd-sp4 .nd-tile .nd-mid:first-child{padding-top:0}
.nd-tile>.nd-in{--px:22px;--py:20px}.nd-low>.nd-card{--px:18px;--py:16px}
.nd-sp5 .nd-top,.nd-sp6 .nd-top,.nd-sp8 .nd-top{position:relative;padding-bottom:16px}
.nd-sp5 .nd-rest,.nd-sp6 .nd-rest,.nd-sp7 .nd-rest,.nd-sp8 .nd-rest{padding-top:14px}
/* 5 cut: the box is sliced in two by a strip of page background */
.nd-sp5 .nd-top:after{content:"";position:absolute;left:calc(-1 * var(--px) - 4px);right:calc(-1 * var(--px) - 4px);bottom:0;height:6px;background:#0b0b0d;box-shadow:0 1px 0 rgba(255,255,255,.18),0 -1px 0 rgba(255,255,255,.12)}
.nd-sp5 .nd-rest{padding-top:18px}
/* 6 glow seam: a light line that glows brightest in the middle */
.nd-sp6 .nd-top:after{content:"";position:absolute;left:8%;right:8%;bottom:0;height:1.5px;border-radius:1px;background:linear-gradient(90deg,transparent,#fff 50%,transparent);box-shadow:0 0 12px rgba(255,255,255,.7)}
/* 7 frosted top: the headline sits on lighter frosted glass, the chart on clear colour */
.nd-sp7 .nd-top{margin:calc(-1 * var(--py)) calc(-1 * var(--px)) 0;padding:var(--py) var(--px) 16px;background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.08));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:inset 0 -1px 0 rgba(255,255,255,.22),0 8px 18px -10px rgba(0,0,0,.5)}
/* 8 handle: a short glass capsule centred under the headline */
.nd-sp8 .nd-top:after{content:"";position:absolute;left:50%;bottom:0;width:44px;height:5px;margin-left:-22px;border-radius:3px;background:rgba(255,255,255,.55);box-shadow:0 0 8px rgba(255,255,255,.35)}
/* 9 and 10: the reference split. The headline sits on an inset rounded panel with an even 8px rim; details sit below on the outer card */
.nd-low .lc-a{--nd-bg:var(--nd-teal)}.nd-low .lc-b{--nd-bg:var(--nd-sand)}.nd-low .lc-c{--nd-bg:var(--nd-rose)}
.nd-sp9 .nd-top,.nd-sp10 .nd-top{position:relative;overflow:hidden;margin:calc(-1 * var(--py) + 8px) calc(-1 * var(--px) + 8px) 0;padding:calc(var(--py) - 6px) calc(var(--px) - 8px) 18px;border-radius:24px;box-shadow:inset 0 1px 0 rgba(255,255,255,.3),inset 0 -14px 24px rgba(0,0,0,.28),0 10px 22px rgba(0,0,0,.4)}
.nd-sp9 .nd-top{background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.06));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.nd-sp9 .nd-rest,.nd-sp10 .nd-rest{padding-top:16px}
.nd-sp10 .nd-tile:before,.nd-sp10 .nd-low .nd-card:before{display:none}
.nd-sp10 .nd-tile,.nd-sp10 .nd-lc4 .nd-low .nd-card,.nd-sp10.nd-lc4 .nd-low .nd-card{background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.03));box-shadow:inset 0 1px 0 rgba(255,255,255,.12),inset 0 0 0 1px rgba(255,255,255,.07),0 16px 40px rgba(0,0,0,.5)}
.nd-sp10 .nd-top{background:var(--nd-bg)}
.nd-sp10 .nd-top>*{position:relative}
.nd-sp10 .nd-rest .nd-cap{color:var(--nd-ink2)}
.nd-sp10 .nd-tile.steel .nd-top{--nd-pb:#1b2a4e,#2f62d6}.nd-sp10 .nd-tile.plum .nd-top{--nd-pb:#2a1c44,#7b3fd6}.nd-sp10 .nd-tile.copper .nd-top{--nd-pb:#3a2414,#b4621c}
.nd-sp10 .nd-low .lc-a .nd-top{--nd-pb:#12303a,#1f82a0}.nd-sp10 .nd-low .lc-b .nd-top{--nd-pb:#33281a,#a67e2c}.nd-sp10 .nd-low .lc-c .nd-top{--nd-pb:#361a28,#a43c66}
.nd-sp10 .nd-top{background:radial-gradient(120% 90% at 0% 0%,rgba(255,255,255,.14),transparent 55%),linear-gradient(135deg,var(--nd-pb))}
/* bottom glow line in each box's own colour (with Inset colour) */
.nd-tile.steel{--nd-gc:#4f8dff}.nd-tile.plum{--nd-gc:#b072ff}.nd-tile.copper{--nd-gc:#e07a2a}
.nd-low .lc-a{--nd-gc:#3ab6d8}.nd-low .lc-b{--nd-gc:#d6a640}.nd-low .lc-c{--nd-gc:#e0558c}
.nd-sp10 .nd-tile,.nd-sp10 .nd-low .nd-card{overflow:hidden}
.nd-sp10 .nd-tile:after,.nd-sp10 .nd-low .nd-card:after{content:"";position:absolute;left:0;right:0;bottom:0;height:70px;pointer-events:none;background:radial-gradient(60% 100% at 50% 100%,color-mix(in srgb,var(--nd-gc) 30%,transparent),transparent 75%),linear-gradient(90deg,transparent 6%,var(--nd-gc) 50%,transparent 94%) bottom/100% 2px no-repeat;filter:drop-shadow(0 0 6px var(--nd-gc))}
/* bottom glow variations (preview picks body.nd-gl2..6; nd-gl1 = the default above) */
.nd-gl2 .nd-tile:after,.nd-gl2 .nd-low .nd-card:after{height:2px;background:linear-gradient(90deg,transparent 6%,var(--nd-gc) 50%,transparent 94%)}
.nd-gl3 .nd-tile:after,.nd-gl3 .nd-low .nd-card:after{height:120px;background:radial-gradient(70% 100% at 50% 100%,color-mix(in srgb,var(--nd-gc) 45%,transparent),transparent 75%),linear-gradient(90deg,transparent 2%,var(--nd-gc) 50%,transparent 98%) bottom/100% 3px no-repeat;filter:drop-shadow(0 0 10px var(--nd-gc))}
.nd-gl4 .nd-tile,.nd-gl4 .nd-low .nd-card{box-shadow:inset 0 1px 0 rgba(255,255,255,.12),inset 0 0 0 1px rgba(255,255,255,.07),0 22px 34px -16px var(--nd-gc),0 14px 30px rgba(0,0,0,.4)!important}
.nd-gl4 .nd-tile:after,.nd-gl4 .nd-low .nd-card:after{height:2px;left:12%;right:12%;background:var(--nd-gc);border-radius:2px}
.nd-gl5 .nd-tile:after,.nd-gl5 .nd-low .nd-card:after{inset:0;height:auto;border-radius:inherit;padding:1.5px;background:linear-gradient(0deg,var(--nd-gc),transparent 55%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;filter:drop-shadow(0 0 4px var(--nd-gc))}
.nd-gl6 .nd-tile:after,.nd-gl6 .nd-low .nd-card:after{left:50%;right:auto;width:36%;transform:translateX(-50%);height:40px;background:radial-gradient(60% 100% at 50% 100%,color-mix(in srgb,var(--nd-gc) 40%,transparent),transparent 75%),linear-gradient(90deg,transparent,var(--nd-gc) 30%,var(--nd-gc) 70%,transparent) bottom/100% 3px no-repeat}

/* ===== Home (24 Oct 2026): header row, 3 colour tiles, Act now strips, 3 colour cards, 2 slim strips ===== */
main:has(.ndh){max-width:1640px}
.ndh{display:flex;flex-direction:column;gap:14px}
.ndh-hd{display:flex;justify-content:space-between;align-items:flex-end;gap:12px 16px;flex-wrap:wrap;padding:4px 2px 0}
.ndh-hd .nd-title{margin-bottom:0}
.ndh-act{display:flex;gap:8px;flex-wrap:wrap}
.ndh-top{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.ndh-top .nd-tile>.nd-in{min-height:100%}
.ndh-top .nd-mid:empty{flex:1;padding:0;min-height:16px}
.ndh-top .nd-tile .nd-mid{flex:1}
.ndh-row{cursor:pointer;border-radius:10px;transition:background .2s}
.ndh-row:hover{background:rgba(255,255,255,.06)}
.nd-bars>.ndh-row{padding:12px 0}.nd-bars>.ndh-row:first-child{padding-top:0}.nd-bars>.ndh-row:last-child{padding-bottom:0}
.nd-bars>.ndh-row+.ndh-row{border-top:1px solid transparent;border-image:linear-gradient(90deg,transparent,rgba(255,255,255,.42) 15%,rgba(255,255,255,.42) 85%,transparent) 1}
.ndh-low{grid-template-columns:repeat(3,minmax(0,1fr))}
.ndh-low .nd-num{margin-top:12px}
.ndh-low .nd-num .nd-tag{font-size:13.5px;margin-left:6px;vertical-align:4px}
.ndh-l>div{cursor:pointer;align-items:center}.ndh-l>div:hover{color:#fff}
.ndh-l>div span{min-width:0;overflow:hidden;text-overflow:ellipsis}
.ndh-or{font-weight:600;color:#ffd9a8}.ndh-rd{font-weight:600;color:#ffb3ad}
.ndh-nt{margin-top:12px;align-self:stretch;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ndh-race{margin-top:14px}.ndh-race .nd-bar{grid-template-columns:90px 1fr auto}
.ndh-go{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ndh-sd{font-size:13.5px;color:var(--nd-ink2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.ndh .dz-band{margin:0}
@media (max-width:1279px){.ndh-top{grid-template-columns:1fr 1fr}.ndh-top>:first-child{grid-column:1/-1}.ndh-low{grid-template-columns:1fr 1fr}.ndh-low>:last-child{grid-column:1/-1}}
@media (max-width:760px){.ndh-top,.ndh-low,.ndh-go{grid-template-columns:1fr}.ndh-top>*,.ndh-low>*{grid-column:auto!important}.ndh-act{width:100%}.ndh-act .nd-btn{flex:1}}
.ndh-go{margin-top:0}.ndh-go .dz-n>span:last-child{font-size:13px}

/* ===== Fill styles (24 Oct 2026, chosen by the user) =====
   Top colour tiles = C: colour pours in from the top, the centre stays black, a faint glow returns at the bottom.
   Bottom cards = B: dark glass with a soft coloured rim. Numbers stay plain and glowing (no dot digits). */
.nd-tile.steel{--c:79,141,255;--d:9,14,30}
.nd-tile.copper{--c:226,124,46;--d:26,12,4}
.nd-tile.plum{--c:176,114,255;--d:20,9,34}
.nd-low .lc-a{--c:40,200,185;--d:4,22,22}
.nd-low .lc-b{--c:222,178,112;--d:26,19,8}
.nd-low .lc-c{--c:240,96,140;--d:30,8,18}
.nd-tile:before,.nd-low .nd-card:before{display:none}
.nd-tile{background:radial-gradient(ellipse 120% 70% at 50% -8%,rgba(var(--c),1) 0%,rgba(var(--c),.6) 28%,rgba(var(--c),.12) 55%,transparent 72%),
 radial-gradient(ellipse 70% 40% at 50% 112%,rgba(var(--c),.55),transparent 70%),rgb(var(--d));
 box-shadow:inset 0 0 0 1px rgba(255,255,255,.14),inset 0 0 30px 2px rgba(var(--c),.45),0 16px 40px rgba(0,0,0,.5)}
.nd-low .nd-card.lc-a,.nd-low .nd-card.lc-b,.nd-low .nd-card.lc-c,.nd-lc4 .nd-low .nd-card{background:radial-gradient(ellipse 85% 75% at 50% 55%,rgba(var(--d),.96) 0 55%,rgba(var(--d),.6) 100%),
 linear-gradient(180deg,rgba(var(--c),.55),rgba(var(--c),.15) 45%,rgba(var(--c),.35)),#111114;
 box-shadow:inset 0 0 0 1px rgba(var(--c),.35),inset 0 0 26px 2px rgba(var(--c),.35),inset 0 1px 0 rgba(255,255,255,.12),0 16px 40px rgba(0,0,0,.45)}
.nd-low .nd-card.nd-go:hover,.nd-low .nd-card.nd-go:focus-visible{box-shadow:inset 0 0 0 1px rgba(var(--c),.55),inset 0 0 30px 3px rgba(var(--c),.45),inset 0 1px 0 rgba(255,255,255,.14),0 20px 46px rgba(0,0,0,.55)}

/* ===== Main-part line (24 Oct 2026): a line under each box's title, big number and sentence. The user chose 3 Edge (body.ndsl3, set in nd.js); 1 and 2 are unused ===== */
.ndsl1 .nd-top,.ndsl2 .nd-top,.ndsl3 .nd-top{position:relative;padding-bottom:14px}
.ndsl1 .nd-rest,.ndsl2 .nd-rest,.ndsl3 .nd-rest{padding-top:14px}
:is(.ndsl1,.ndsl2,.ndsl3) .nd-rest>.nd-bars:first-child,:is(.ndsl1,.ndsl2,.ndsl3) .nd-rest>.nd-mid:empty+.nd-bars{border-top:0;padding-top:0}
:is(.ndsl1,.ndsl2,.ndsl3) .nd-rest>.nd-mid:first-child{padding-top:0}
/* 1 faded white line, like the row dividers but brighter */
.ndsl1 .nd-top:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.7) 12%,rgba(255,255,255,.7) 88%,transparent)}
/* 2 glow line in the box's own colour */
.ndsl2 .nd-top:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;border-radius:2px;background:linear-gradient(90deg,transparent,rgba(var(--c),1) 15%,#fff 50%,rgba(var(--c),1) 85%,transparent);box-shadow:0 0 10px 1px rgba(var(--c),.8)}
/* 3 edge to edge: a crisp line across the whole box, with a darker lower part */
.ndsl3 .nd-top:after{content:"";position:absolute;left:calc(-1 * var(--px,20px));right:calc(-1 * var(--px,20px));bottom:0;height:1px;background:rgba(255,255,255,.55);box-shadow:0 1px 0 rgba(0,0,0,.5)}
.ndsl3 .nd-rest{margin:0 calc(-1 * var(--px,20px)) calc(-1 * var(--py,18px));padding:14px var(--px,20px) var(--py,18px);background:rgba(0,0,0,.22);border-radius:0 0 inherit inherit}

.ndm .ndh-l>div{white-space:nowrap}.ndm .ndh-l>div span{padding-left:12px}

/* ===== Readable text (24 Oct 2026): heavier weights, brighter greys, small text one step up; the old page header (dz-hd) is back on every page ===== */
.nd-num{white-space:normal}.nd-num small{display:inline-block;white-space:nowrap}

/* ===== Project dashboard (24 Oct 2026): boxes take the Projects tile look (light tint of the box's own colour,
   soft centred glow, light divider lines, dark capsules), plus one Project Details box ===== */
:is(body[data-tab=project] .nd-pg,.ndh) .nd-tile,:is(body[data-tab=project] .nd-pg,.ndh) .nd-low .nd-card,:is(body[data-tab=project] .nd-pg,.ndh) .nd-pd{
 background:radial-gradient(ellipse 85% 60% at 50% 72%,rgba(var(--c),.5) 0%,rgba(var(--c),.35) 22%,rgba(var(--c),.2) 45%,transparent 85%),
 linear-gradient(180deg,color-mix(in srgb,rgb(var(--c)) 16%,#161412),color-mix(in srgb,rgb(var(--c)) 26%,#141210) 60%,color-mix(in srgb,rgb(var(--c)) 32%,#121010));
 box-shadow:inset 0 1px 0 rgba(255,255,255,.12),inset 0 0 0 1px rgba(255,255,255,.08),0 16px 40px rgba(0,0,0,.5)}
:is(body[data-tab=project] .nd-pg,.ndh) .nd-low .nd-card.nd-go:hover,:is(body[data-tab=project] .nd-pg,.ndh) .nd-low .nd-card.nd-go:focus-visible{box-shadow:inset 0 1px 0 rgba(255,255,255,.14),inset 0 0 0 1px rgba(255,255,255,.12),0 20px 46px rgba(0,0,0,.55)}
:is(body[data-tab=project] .nd-pg,.ndh) .nd-top:after{background:rgba(255,255,255,.3)!important;box-shadow:none!important}
:is(body[data-tab=project] .nd-pg,.ndh) .nd-rest{background:none}
:is(body[data-tab=project] .nd-pg,.ndh) .nd-tag,:is(body[data-tab=project] .nd-pg,.ndh) button.nd-tag{padding:5px 13px;border-radius:999px;background:rgba(10,10,12,.88);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);color:#fff;font-weight:600}
:is(body[data-tab=project] .nd-pg,.ndh) .nd-tag.rd{color:#ff453a}
:is(body[data-tab=project] .nd-pg,.ndh) .nd-note{background:rgba(10,10,12,.7);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}
:is(body[data-tab=project] .nd-pg,.ndh) .nd-btn.or{background:rgba(10,10,12,.88)}
/* Project Details: logo orange, like the Projects tiles */
.nd-pd{--c:238,119,7;grid-column:1/-1;padding:18px 22px 20px;border-radius:30px;overflow:hidden}
.nd-pd>.nd-h{position:relative;padding-bottom:14px}
.nd-pd>.nd-h:after{content:"";position:absolute;left:-22px;right:-22px;bottom:0;height:1px;background:rgba(255,255,255,.3)}
.nd-pdc{margin-left:10px;padding:4px 11px;border-radius:999px;background:rgba(10,10,12,.88);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);font-size:12.5px;letter-spacing:.06em;color:#d8d8de}
.nd-pde{margin-left:auto;background:rgba(10,10,12,.88)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)!important}
.nd-pdg{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}
.nd-pdg>div{padding:14px 14px 14px 0;border-bottom:1px solid rgba(255,255,255,.12);min-width:0}
.nd-pdg>div:nth-last-child(-n+4){border-bottom:0;padding-bottom:0}
.nd-pdg small{display:block;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.72);font-weight:600}
.nd-pdg b{display:block;margin-top:5px;font-size:18px;font-weight:700;color:#fff;line-height:1.25;overflow-wrap:anywhere}
.nd-pdg b i{font-style:normal;font-weight:500;color:rgba(255,255,255,.5)}
.nd-pdg span{display:block;margin-top:3px;font-size:13.5px;color:rgba(255,255,255,.8)}
/* the 12 editable boxes stay hidden until Edit details */
body[data-tab=project]:not(.nd-pded) .nd-info,body[data-tab=project]:not(.nd-pded) .dz-pb>.box.glassbg{display:none}
@media (max-width:1279px){.nd-pdg{grid-template-columns:repeat(3,minmax(0,1fr))}.nd-pdg>div:nth-last-child(-n+4){border-bottom:1px solid rgba(255,255,255,.12);padding-bottom:14px}.nd-pdg>div:nth-last-child(-n+3){border-bottom:0;padding-bottom:0}}
@media (max-width:760px){.nd-pd{padding:16px 18px 18px}.nd-pdc{display:none}.nd-pd>.nd-h:after{left:-18px;right:-18px}.nd-pdg{grid-template-columns:1fr 1fr}.nd-pdg>div:nth-last-child(-n+3){border-bottom:1px solid rgba(255,255,255,.12);padding-bottom:14px}.nd-pdg>div:nth-last-child(-n+2){border-bottom:0;padding-bottom:0}.nd-pdg b{font-size:16px}}
/* 24 Oct 11:10: name card (status notch + latest photo) moves to the top of the right side, across Build and time and Going out;
   the four small boxes (Day, Contract, Built-up area, Open tasks) take its old place on the left */
.nd-right{grid-template-rows:auto auto 1fr}
.nd-right>.nd-name{grid-column:1/-1}
.nd-right .a{grid-row:2/4}
.nd-chipc{container-type:inline-size;padding:14px}
.nd-house{padding-top:14px}
@media (max-width:760px){.nd-right .a{grid-row:auto}}
/* status notch: neon lime, as first designed */
body[data-tab=project] .nd-pg .nd-name .nd-tag.lime{padding:5px 14px;border-radius:999px;background:#e4f53a;color:#1e2008;font-weight:700;letter-spacing:.06em;box-shadow:0 0 14px rgba(228,245,58,.55),0 0 2px rgba(228,245,58,.9)}
/* hover like the Projects tiles: lift, brighten, neighbours fade */
:is(body[data-tab=project] .nd-pg,.ndh) .nd-go{transition:filter .25s ease,transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .25s,opacity .25s}
:is(body[data-tab=project] .nd-pg,.ndh) :is(.nd-tile,.nd-low>.nd-card).nd-go:hover,:is(body[data-tab=project] .nd-pg,.ndh) :is(.nd-tile,.nd-low>.nd-card).nd-go:focus-visible{transform:translateY(-4px) scale(1.012);filter:brightness(1.6) saturate(1.08)}
:is(body[data-tab=project] .nd-pg,.ndh):has(:is(.nd-tile,.nd-low>.nd-card).nd-go:hover) :is(.nd-tile,.nd-low>.nd-card).nd-go:not(:hover){opacity:.72}
@media (prefers-reduced-motion:reduce){body[data-tab=project] .nd-pg .nd-go{transition:none}body[data-tab=project] .nd-pg .nd-go:hover{transform:none}}

/* ===== Project dashboard round 3 (24 Oct 2026): no tab ribbon, 12 facts line on top, Act now next, a tile for every page ===== */
body:not(.home) #nav .rail.pr{display:none!important}
.nd-pg>.dz-band{grid-column:1/-1;margin:0}
.nd-inf{grid-column:1/-1;container-type:inline-size}
.nd-infh{display:flex;align-items:center;gap:10px;margin:0 2px 10px}
.nd-infh b{font-size:13.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#ffb340}
.nd-infh .nd-pde{margin-left:auto;height:30px}
.nd-chips12{grid-template-columns:repeat(6,minmax(0,1fr))}
.nd-chips12 b{font-size:16px;white-space:normal;line-height:1.25;overflow-wrap:anywhere}
.nd-chips12 span{white-space:nowrap}
@container (max-width:900px){.nd-chips12{grid-template-columns:repeat(4,minmax(0,1fr))}}
@container (max-width:600px){.nd-chips12{grid-template-columns:repeat(2,minmax(0,1fr))}}
.nd-left{justify-content:stretch}.nd-house{flex:1}
.nd-nowl{margin-top:10px;font-size:14px}.nd-nowl b{color:#fff;font-weight:700}
.nd-sub2{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.nd-dd i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#fff;margin-right:7px;vertical-align:1px}
.nd-dd.ah i{background:#30d158;box-shadow:0 0 6px #30d158}.nd-dd.bh i{background:#ff453a;box-shadow:0 0 6px #ff453a}
body[data-tab=project] .nd-pg .nd-tag.nd-dd.bh{color:#fff}
.nd-lad2 div{flex:0 0 auto!important;max-height:none!important}
.nd-low.n2{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.nd-low.n1{grid-template-columns:1fr}
.nd-low.n2>:last-child,.nd-low.n1>:last-child{grid-column:auto}
/* pages: slim glass strips, like the Act now strips */
.nd-goto{grid-column:1/-1}
.nd-gth{display:flex;align-items:baseline;gap:10px;margin:6px 2px 10px}
.nd-gth b{font-size:13.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#ffb340}.nd-gth span{font-size:13.5px;color:var(--nd-ink2)}
.nd-gtg{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
.nd-gt{display:flex;align-items:center;gap:10px;height:48px;padding:0 16px;border-radius:16px;cursor:pointer;box-sizing:border-box;
 background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.03));box-shadow:inset 0 1px 0 rgba(255,255,255,.12),inset 0 0 0 1px rgba(255,255,255,.08),0 10px 24px rgba(0,0,0,.35);
 transition:filter .25s ease,transform .35s cubic-bezier(.2,.7,.2,1),opacity .25s}
.nd-gt svg{width:17px;height:17px;flex:none;color:#b8b8c0}
.nd-gt .n{font-size:13.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nd-gt .v{margin-left:auto;font-size:14px;font-weight:700;color:#d8d8de;white-space:nowrap}
.nd-gt .v.am{color:#ffb340}.nd-gt .v.rd{color:#ff6a5f}
.nd-gt:hover,.nd-gt:focus-visible{transform:translateY(-3px) scale(1.012);filter:brightness(1.6)}
.nd-gtg:has(.nd-gt:hover) .nd-gt:not(:hover){opacity:.72}
@media (max-width:760px){.nd-low.n2{grid-template-columns:1fr}.nd-gtg{grid-template-columns:1fr}}
/* Reset project data: its own red Danger corner, away from Backup */
.pf-grp:has(.dng){margin-left:auto;padding-left:14px;border-left:1px solid rgba(255,69,58,.45);display:flex;align-items:center;gap:8px}
.pf-grp:has(.dng):before{content:"Danger";font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#ff6a5f}
.nd-left.solo .nd-house{flex:1}.nd-left>.nd-low.n1{grid-column:auto}
.nd-gtg{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:1279px){.nd-gtg{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.nd-gtg{grid-template-columns:1fr}}
@media (max-width:760px){.nd-right{grid-template-rows:none}.nd-name{flex-direction:row;flex-wrap:wrap;align-items:center}}
/* phone: the 12 facts become two swipeable rows */
@container (max-width:600px){.nd-chips12{grid-template-columns:none;grid-auto-flow:column;grid-template-rows:repeat(2,auto);grid-auto-columns:44%;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px;scrollbar-width:none}.nd-chips12>div{scroll-snap-align:start}.nd-chips12::-webkit-scrollbar{display:none}}
.nd-lad2 .more{order:-1}

/* ===== Project dashboard layout fixes (25 Oct 2026) ===== */
/* 1 workers strip sits under Build and time so the columns end level */
.nd-right .a{display:flex;flex-direction:column;gap:14px}
.nd-right .a>.nd-tile{flex:none}
.nd-wk{flex:1;display:flex;flex-direction:column;justify-content:flex-end;padding:14px}
.nd-wk .nd-well{margin:0}
.nd-wk .nd-h{flex-wrap:wrap;white-space:normal;row-gap:4px}
.nd-house{justify-content:center}
/* 3 pages under Act now */
.nd-goto .nd-gth{margin-top:0}
/* 4 the project's task list box repeats the Tasks tile */
body[data-tab=project] .dz-pb .ptk{display:none}
@media (max-width:760px){
 /* 2 phone order: name, build and time, going out, client money, drawing, specs */
 .nd-left,.nd-right,.nd-right .a{display:contents}
 .nd-inf{order:1}.nd-pg>.dz-band{order:2}.nd-goto{order:3}.nd-name{order:4}.nd-tile.steel{order:5}.nd-tile.copper{order:6}.nd-tile.plum{order:7}.nd-wk{order:8}.nd-house{order:9}.nd-pg .nd-low{order:10}
 .nd-pg>*{grid-column:1/-1!important}
 /* 3 two pages per row */
 .nd-gtg{grid-template-columns:1fr 1fr}
 .nd-gt{height:auto;min-height:58px;padding:10px 12px;flex-wrap:wrap;align-content:center;gap:2px 8px}
 .nd-gt svg{display:none}.nd-gt .n{flex:1 1 100%;font-size:12.5px}.nd-gt .v{margin-left:0;font-size:13.5px}
 /* 5 name fits beside the pencil */
 body[data-tab=project] .dzp>.dz-hd h1{font-size:min(44px,7.6vw);display:flex;align-items:center}body[data-tab=project] .dzp>.dz-hd h1 .rn{flex:none}
}
/* 5 phone: the 12 facts two per row, no swiping */
@container (max-width:600px){.nd-chips12{grid-auto-flow:row;grid-template-rows:none;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}}
/* Project dashboard: the layout Channarajay drew in the layout planner (25 Oct 2026). 12 columns, 40px rows, 12px gaps, one computer screen */
@media (min-width:1100px){
 body[data-tab=project] .nd-pg{grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:40px;gap:12px}
 body[data-tab=project] .nd-pg :is(.nd-left,.nd-right,.nd-right>.a,.nd-low){display:contents}
 body[data-tab=project] .nd-pg>:is(.dz-band.b1),body[data-tab=project] .nd-pg .nd-tile.plum{display:none}
 body[data-tab=project] .nd-pg :is(.nd-name,.nd-inf,.nd-house,.nd-tile.steel,.nd-wk,.nd-tile.copper,.lc-a,.lc-b,.lc-c,.nd-goto){margin:0;min-height:0;height:auto;overflow:auto;scrollbar-width:thin;order:0}
 body[data-tab=project] .nd-pg .nd-name{grid-column:6/span 7;grid-row:1/span 2}
 body[data-tab=project] .nd-pg .nd-inf{grid-column:6/span 7;grid-row:3/span 3}
 body[data-tab=project] .nd-pg .nd-house{grid-column:1/span 5;grid-row:3/span 12}
 body[data-tab=project] .nd-pg .nd-tile.steel{grid-column:6/span 3;grid-row:6/span 12}
 body[data-tab=project] .nd-pg .lc-b{grid-column:9/span 3;grid-row:6/span 5}
 body[data-tab=project] .nd-pg .nd-goto{grid-column:12/span 1;grid-row:6/span 2}
 body[data-tab=project] .nd-pg .nd-wk{grid-column:12/span 1;grid-row:8/span 3}
 body[data-tab=project] .nd-pg .nd-tile.copper{grid-column:9/span 4;grid-row:11/span 3}
 body[data-tab=project] .nd-pg .lc-c{grid-column:9/span 4;grid-row:14/span 4}
 body[data-tab=project] .nd-pg .lc-a{grid-column:1/span 5;grid-row:15/span 3}
}
@media (min-width:1100px){body[data-tab=project] .nd-pg{pointer-events:none;position:relative;z-index:1}body[data-tab=project] .nd-pg>*,body[data-tab=project] .nd-pg :is(.nd-left,.nd-right,.nd-right>.a,.nd-low)>*{pointer-events:auto}}
/* no scrolling, fitted rows, two coloured spare boxes, page links under the title (25 Oct 2026) */
@media (min-width:1100px){
 body[data-tab=project] .nd-pg{grid-auto-rows:var(--rh,40px)}
 body[data-tab=project] .nd-pg :is(.nd-name,.nd-inf,.nd-house,.nd-tile.steel,.nd-tile.copper,.lc-a,.lc-b,.lc-c){overflow:hidden}
 body[data-tab=project] .nd-pg :is(.nd-goto,.nd-wk){display:none}
 body[data-tab=project] .nd-pg .nd-ph{border-radius:22px;min-height:0;border:1px solid rgba(var(--c),.45);background:radial-gradient(ellipse 85% 60% at 50% 72%,rgba(var(--c),.42),transparent 72%),color-mix(in srgb,rgb(var(--c)) 14%,#0a0a0c)}
 body[data-tab=project] .nd-pg .ph1{--c:56,189,248;grid-column:12/span 1;grid-row:6/span 2}
 body[data-tab=project] .nd-pg .ph2{--c:250,204,21;grid-column:12/span 1;grid-row:8/span 3}
 body[data-tab=project] .nd-inf .nd-chips12{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}
 body[data-tab=project] .nd-inf .nd-chips12>div{padding:6px 9px;min-width:0}
 body[data-tab=project] .nd-inf .nd-chips12 small{font-size:10px}
 body[data-tab=project] .nd-inf .nd-chips12 b{font-size:12.5px;line-height:1.2}
 body[data-tab=project] .nd-inf .nd-chips12 span{display:none}
 body[data-tab=project] .nd-inf .nd-infh{margin-bottom:6px}
 body[data-tab=project] .dz-hd .dz-hs{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px}
 .nd-hl{display:flex;flex-wrap:wrap;gap:4px 10px}
 .nd-hl a{color:inherit;text-decoration:none;opacity:.8;border-bottom:1px solid transparent}
 .nd-hl a:hover,.nd-hl a:focus-visible{opacity:1;color:#ee7707;border-bottom-color:#ee7707;outline:none}
}
@media (min-width:1100px){
 body[data-tab=project] .nd-inf{padding-top:0}
 body[data-tab=project] .nd-inf .nd-infh{min-height:0;margin:0 0 6px;font-size:12px}
 body[data-tab=project] .nd-inf .nd-infh .nd-btn{height:24px;padding:0 12px;font-size:11px}
 body[data-tab=project] .nd-inf .nd-chips12>div{padding:5px 8px}
 body[data-tab=project] .nd-inf .nd-chips12 b{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:12px}
 body[data-tab=project] .dz-hd .dz-hs{gap:2px 9px;line-height:1.3}
}
@media (min-width:1100px){
 body[data-tab=project] .dz-hd .dz-hs{display:block;text-transform:none;letter-spacing:0;white-space:nowrap}
 body[data-tab=project] .nd-hl{display:flex;flex-wrap:nowrap;gap:0 7px;font-size:11.5px}
 body[data-tab=project] .nd-hl a+a:before{content:"·";margin-right:7px;opacity:.5;color:var(--fg,#aaa)}
 body[data-tab=project] .nd-inf .nd-infh{margin-bottom:4px}
 body[data-tab=project] .nd-inf .nd-pdc{display:none}
 body[data-tab=project] .nd-inf .nd-chips12>div{padding:4px 8px}
 body[data-tab=project] .nd-inf .nd-chips12 small{font-size:9.5px;line-height:1.15}
 body[data-tab=project] .nd-inf .nd-chips12 b{font-size:11.5px;line-height:1.15}
 body[data-tab=project] .nd-pg .nd-name{padding-top:8px;padding-bottom:8px}
 body[data-tab=project] .nd-pg .nd-tile.copper .nd-num{font-size:40px}
}
@media (min-width:1100px){body[data-tab=project] .nd-hl{font-size:10.5px;gap:0 5px;justify-content:flex-start}body[data-tab=project] .nd-hl a+a:before{margin-right:5px}}
@media (min-width:1100px){body[data-tab=project] .nd-pg .nd-name{padding-top:5px;padding-bottom:5px}body[data-tab=project] .nd-pg .nd-tile.copper .nd-num{font-size:36px}}
/* right side: Budget, Cash book, Specs and Extra bills buttons (25 Oct 2026) */
@media (min-width:1100px){
 body[data-tab=project] .nd-pg .nd-bx{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:3px;padding:8px 6px;cursor:pointer;transition:transform .2s,filter .2s}
 body[data-tab=project] .nd-pg .nd-bx:hover,body[data-tab=project] .nd-pg .nd-bx:focus-visible{transform:translateY(-3px);filter:brightness(1.35);outline:none}
 body[data-tab=project] .nd-pg .nd-bx small{font-size:10.5px;line-height:1.2;letter-spacing:.08em;text-transform:uppercase;color:#fff}
 body[data-tab=project] .nd-pg .nd-bx b{font-size:15px;font-weight:600;color:rgb(var(--c))}
 body[data-tab=project] .nd-pg .nd-bx span{font-size:10.5px;color:#c9c9cf;background:#0b0b0d;border:1px solid rgba(var(--c),.45);border-radius:999px;padding:2px 7px}
 body[data-tab=project] .nd-bud .nd-bbar{height:6px;border-radius:99px;background:#0b0b0d;margin:6px 0 4px;overflow:hidden}
 body[data-tab=project] .nd-bud .nd-bbar i{display:block;height:100%;background:#deb270;border-radius:99px}
 body[data-tab=project] .nd-bud .nd-list .ov,body[data-tab=project] .nd-bud .nd-ovr{color:#ff6b5e}
 body[data-tab=project] .nd-tile.copper .nd-list{margin-top:8px}
}
/* project details: 12 equal boxes, edited in place; Specs taller than Extra bills, no pills (25 Oct 2026) */
@media (min-width:1100px){
 body[data-tab=project] .nd-pg .nd-inf{display:flex;flex-direction:column}
 body[data-tab=project] .nd-inf .nd-chips12{flex:1;min-height:0;grid-template-rows:repeat(2,minmax(0,1fr))}
 body[data-tab=project] .nd-inf .nd-chips12>div{display:flex;flex-direction:column;justify-content:flex-start;min-height:0;overflow:hidden}
 body[data-tab=project] .nd-pg .ph1{grid-row:6/span 3}
 body[data-tab=project] .nd-pg .ph2{grid-row:9/span 2}
 body[data-tab=project] .nd-pg .nd-bx b{font-size:16px}
 body[data-tab=project] .nd-pg .nd-inf.ed{grid-row:3/span 9;z-index:6;overflow:visible;background:#0d0d10;border:1px solid #ffffff2e;border-radius:22px;padding:14px;box-shadow:0 24px 60px #000c}
 body[data-tab=project] .nd-inf.ed .nd-chips12{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));gap:8px}
 body[data-tab=project] .nd-inf.ed .nd-chips12>div{overflow:visible;padding:8px 10px;gap:4px}
 body[data-tab=project] .nd-inf.ed small{font-size:10.5px}
 body[data-tab=project] .nd-inf.ed .mn{display:flex;flex-direction:column;gap:4px;font-size:13px}
 body[data-tab=project] .nd-inf.ed .mn .ln{display:flex;align-items:center;gap:6px}
 body[data-tab=project] .nd-inf.ed .mn label.f{font-size:10.5px;color:#a9a9b0;min-width:36px}
 body[data-tab=project] .nd-inf.ed :is(input,select,textarea){width:100%;box-sizing:border-box;background:#050506;color:#f5f5f7;border:1px solid #ffffff33;border-radius:8px;padding:5px 8px;font:500 13px/1.3 inherit;min-width:0}
 body[data-tab=project] .nd-inf.ed :is(input,select,textarea):focus{outline:none;border-color:#ee7707}
 body[data-tab=project] .nd-inf.ed .sz{display:flex;align-items:center;gap:3px;white-space:nowrap}
 body[data-tab=project] .nd-inf.ed .sz input{width:38px;padding:5px 4px;text-align:center}
 body[data-tab=project] .nd-inf.ed .stp{display:flex;align-items:center;gap:8px}
 body[data-tab=project] .nd-inf.ed .stp button{all:unset;cursor:pointer;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#050506;border:1px solid #ffffff33}
 body[data-tab=project] .nd-inf.ed .duo{display:grid;gap:8px}
 body[data-tab=project] .nd-inf.ed .unit{margin-left:6px;color:#a9a9b0;font-size:12px}
 body[data-tab=project] .nd-inf.ed .nd-esb{font-size:11px;color:#a9a9b0}
 body[data-tab=project] .nd-inf.ed .nd-esb .lk{all:unset;cursor:pointer;color:#ee7707}
}
@media (min-width:1100px){
 body[data-tab=project] .nd-inf.ed textarea{min-height:58px;height:auto!important;resize:none}
 body[data-tab=project] .nd-inf.ed .sz{flex-wrap:wrap;row-gap:6px}
 body[data-tab=project] .nd-inf.ed .sz b{flex-basis:100%;height:0;overflow:hidden;margin:0!important}
 body[data-tab=project] .nd-inf.ed .sz input{width:42px;flex:none}
 body[data-tab=project] .nd-inf.ed .duo{grid-template-columns:1fr!important;gap:6px}
 body[data-tab=project] .nd-inf.ed .duo>div{display:flex;align-items:center;justify-content:space-between;gap:6px}
 body[data-tab=project] .nd-inf.ed .stp{gap:6px}
}
@media (min-width:1100px){
 body[data-tab=project] .nd-inf.ed .nd-chips12>div>*{flex:none}
 body[data-tab=project] .nd-inf.ed .sz input{font-size:14px;height:30px;padding:2px 4px}
 body[data-tab=project] .nd-inf.ed .stp{gap:4px}
 body[data-tab=project] .nd-inf.ed .stp button{width:22px;height:22px}
 body[data-tab=project] .nd-inf.ed .duo label.f{min-width:0}
}
/* Budget box: current budget, spent with %, lines over (25 Oct 2026) */
@media (min-width:1100px){
 body[data-tab=project] .nd-bud .nd-bk{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}
 body[data-tab=project] .nd-bud .nd-bk>div{background:#0b0b0d99;border:1px solid #ffffff1f;border-radius:12px;padding:7px 9px;min-width:0}
 body[data-tab=project] .nd-bud .nd-bk small{display:block;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:#c9c2b4}
 body[data-tab=project] .nd-bud .nd-bk b{display:block;font-size:19px;font-weight:600;color:#fff;line-height:1.25;white-space:nowrap}
 body[data-tab=project] .nd-bud .nd-bk b em{font-style:normal;font-size:12px;font-weight:500;color:#c9c2b4}
 body[data-tab=project] .nd-bud .nd-bk span{display:block;font-size:11.5px;color:#d8d2c6}
 body[data-tab=project] .nd-bud .nd-bk .ov{border-color:#ff6b5e66}
 body[data-tab=project] .nd-bud .nd-bk .ov b,body[data-tab=project] .nd-bud .nd-bk .ov span{color:#ff6b5e}
 body[data-tab=project] .nd-bud .nd-bbar{margin:10px 0 6px}
}
@media (min-width:1100px){
 body[data-tab=project] .nd-bud .nd-bk{grid-template-columns:1fr;gap:5px;margin-top:8px}
 body[data-tab=project] .nd-bud .nd-bk>div{display:grid;grid-template-columns:1fr auto;grid-template-areas:"l v" "l s";align-items:center;column-gap:8px;padding:5px 10px;border-radius:10px}
 body[data-tab=project] .nd-bud .nd-bk small{grid-area:l;font-size:11px}
 body[data-tab=project] .nd-bud .nd-bk b{grid-area:v;font-size:16px;text-align:right;line-height:1.2}
 body[data-tab=project] .nd-bud .nd-bk span{grid-area:s;font-size:10.5px;text-align:right;line-height:1.2}
 body[data-tab=project] .nd-bud .nd-bbar{margin:7px 0 4px}
 body[data-tab=project] .nd-bud .nd-list>div{padding:3px 0}
}
/* Budget rows as payment-stage capsules (25 Oct 2026) */
@media (min-width:1100px){
 body[data-tab=project] .nd-bud .nd-bk{display:flex;flex-direction:column;gap:6px;margin-top:10px}
 body[data-tab=project] .nd-bud .nd-bk>div{position:relative;height:30px;border-radius:15px;display:flex;align-items:center;justify-content:space-between;padding:0 12px;gap:6px;font-size:13px;background:rgba(10,10,14,.45);box-shadow:inset 0 0 0 1px rgba(255,255,255,.22);border:0;color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);min-width:0}
 body[data-tab=project] .nd-bud .nd-bk span{font-size:13px;color:#fff;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
 body[data-tab=project] .nd-bud .nd-bk b{font-size:13px;font-weight:600;color:#fff;white-space:nowrap;display:flex;align-items:baseline;gap:6px}
 body[data-tab=project] .nd-bud .nd-bk b em{font-style:normal;font-size:11.5px;font-weight:500;color:rgba(255,255,255,.75)}
 body[data-tab=project] .nd-bud .nd-bk .ov{box-shadow:inset 0 0 0 1px rgba(255,107,94,.75)}
 body[data-tab=project] .nd-bud .nd-bk .ov span,body[data-tab=project] .nd-bud .nd-bk .ov b{color:#ff8a7e}
}
/* Budget capsules: option B, white with black text like paid payment stages (25 Oct 2026) */
@media (min-width:1100px){
 body[data-tab=project] .nd-bud .nd-bk>div{background:rgba(255,255,255,.85);box-shadow:0 0 10px rgba(255,255,255,.3);-webkit-backdrop-filter:none;backdrop-filter:none}
 body[data-tab=project] .nd-bud .nd-bk span,body[data-tab=project] .nd-bud .nd-bk b{color:#1d1418}
 body[data-tab=project] .nd-bud .nd-bk b em{color:#5a4a40}
 body[data-tab=project] .nd-bud .nd-bk .ov{box-shadow:inset 0 0 0 2px #ff453a,0 0 10px rgba(255,69,58,.35)}
 body[data-tab=project] .nd-bud .nd-bk .ov span{color:#1d1418}
 body[data-tab=project] .nd-bud .nd-bk .ov b{color:#c8281e}
}
/* Budget and spend box (25 Oct 2026, from the box rules doc) */
@media (min-width:1100px){
 body[data-tab=project] .nd-bud2 .nd-num{margin-top:6px}
 body[data-tab=project] .nd-bud2 .nd-pill{display:inline-flex;align-items:center;gap:8px;height:28px;padding:0 12px;border-radius:14px;background:#0b0b0d;border:1px solid #ffffff2a;font-size:13px;font-weight:600;color:#fff;margin:6px 0 4px;align-self:flex-start;width:max-content}
 body[data-tab=project] .nd-bud2 .nd-pill i{width:8px;height:8px;border-radius:50%;background:#30d158;box-shadow:0 0 8px #30d158}
 body[data-tab=project] .nd-bud2 .nd-pill.rd i{background:#ff453a;box-shadow:0 0 8px #ff453a}
 body[data-tab=project] .nd-bud2 .nd-sub{font-size:13px;color:rgba(255,255,255,.75);padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.18);margin-bottom:10px}
 body[data-tab=project] .nd-bud2 .nd-bk{margin-top:0}
}
@media (min-width:1100px){
 body[data-tab=project] .nd-bud2 .nd-hrow{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:4px}
 body[data-tab=project] .nd-bud2 .nd-hrow .nd-num{margin:0}
 body[data-tab=project] .nd-bud2 .nd-pill{margin:0}
 body[data-tab=project] .nd-bud2 .nd-sub{padding-bottom:8px;margin:2px 0 8px}
 body[data-tab=project] .nd-bud2 .nd-bk{gap:5px}
}
/* Budget and spend: roomy like Build and time, pill under the number, capsules low (25 Oct 2026) */
@media (min-width:1100px){
 body[data-tab=project] .nd-pg .nd-bud2{display:flex;flex-direction:column;padding:20px 20px 18px}
 body[data-tab=project] .nd-bud2 .nd-hrow{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:10px;margin-top:12px}
 body[data-tab=project] .nd-bud2 .nd-hrow .nd-num{font-size:52px;line-height:1}
 body[data-tab=project] .nd-bud2 .nd-sub{margin:12px 0 0;padding-bottom:14px}
 body[data-tab=project] .nd-bud2 .nd-bk{margin-top:auto;gap:8px;padding-top:14px}
 body[data-tab=project] .nd-bud2 .nd-bk>div{height:32px;border-radius:16px}
}
@media (min-width:1100px){
 body[data-tab=project] .nd-pg .nd-bud2{container-type:size;justify-content:space-between;padding:clamp(14px,8cqh,22px) 20px}
 body[data-tab=project] .nd-bud2 .nd-hrow .nd-num{font-size:clamp(30px,16cqh,52px)}
 body[data-tab=project] .nd-bud2 .nd-hrow{margin-top:clamp(4px,4cqh,14px)}
 body[data-tab=project] .nd-bud2 .nd-sub{margin-top:clamp(4px,4cqh,14px);padding-bottom:clamp(6px,4cqh,16px)}
 body[data-tab=project] .nd-bud2 .nd-bk{margin-top:auto;padding-top:clamp(6px,4cqh,16px);gap:clamp(5px,3cqh,10px)}
 body[data-tab=project] .nd-bud2 .nd-bk>div{height:clamp(26px,12cqh,36px)}
}
@container (max-height:300px){body[data-tab=project] .nd-bud2 .nd-hrow{flex-direction:row;align-items:center;justify-content:space-between}}
@container (max-height:200px){
 body[data-tab=project] .nd-pg .nd-bud2{padding-top:14px;padding-bottom:14px}
 body[data-tab=project] .nd-bud2 .nd-hrow{margin-top:6px}
 body[data-tab=project] .nd-bud2 .nd-sub{margin-top:2px;padding-bottom:6px}
 body[data-tab=project] .nd-bud2 .nd-bk{padding-top:6px;gap:4px}
 body[data-tab=project] .nd-bud2 .nd-bk>div{height:26px}
}
@container (min-height:201px){
 body[data-tab=project] .nd-pg .nd-bud2{padding-top:7cqh;padding-bottom:7cqh}
 body[data-tab=project] .nd-bud2 .nd-hrow .nd-num{font-size:min(17cqh,56px)}
 body[data-tab=project] .nd-bud2 .nd-hrow{margin-top:3cqh}
 body[data-tab=project] .nd-bud2 .nd-sub{margin-top:2cqh;padding-bottom:4cqh}
 body[data-tab=project] .nd-bud2 .nd-bk{margin-top:0;padding-top:4cqh;gap:2.5cqh}
 body[data-tab=project] .nd-bud2 .nd-bk>div{height:min(12cqh,38px);font-size:14px}
}
/* hero row: number with its % at full size, status pill on the right centred on the digits; readable small text (25 Oct 2026) */
.nd-hrow{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.nd-hrow .nd-num{line-height:1;margin:0}
.nd-hrow .nd-sub2{margin:0;padding:0;border:0}
body[data-tab=project] .nd-tile.steel .nd-hrow{margin-top:10px}
@media (min-width:1100px){
 body[data-tab=project] .nd-bud2 .nd-hrow{flex-direction:row!important;align-items:center;justify-content:space-between}
 body[data-tab=project] .nd-pg :is(.nd-hrow .nd-num) small{position:relative;top:-.1em}
 body[data-tab=project] .nd-pg :is(.nd-cap,.nd-sub,.nd-foot,.nd-note){font-size:14px;color:rgba(255,255,255,.92);opacity:1}
 body[data-tab=project] .nd-pg .nd-num small{color:rgba(255,255,255,.9);opacity:1}
 body[data-tab=project] .nd-pg .nd-h .nd-r{font-size:13.5px;color:rgba(255,255,255,.9)}
 body[data-tab=project] .nd-pg .nd-list>div,body[data-tab=project] .nd-pg .nd-list span{font-size:14px;color:rgba(255,255,255,.92)}
 body[data-tab=project] .nd-pg .nd-house :is(text,.nd-cap,.nd-leg,small,span){opacity:1}
 body[data-tab=project] .nd-inf .nd-chips12 small{font-size:10.5px;color:rgba(255,255,255,.8)}
 body[data-tab=project] .nd-inf .nd-chips12 b{font-size:12.5px}
 body[data-tab=project] .nd-name{font-size:14px}
}
@media (min-width:1100px){
 body[data-tab=project] .nd-tile.steel .nd-hrow{flex-wrap:nowrap;align-items:center}
 body[data-tab=project] .nd-tile.steel .nd-hrow .nd-num small{display:block;margin:4px 0 0 2px;top:0}
 body[data-tab=project] .nd-tile.steel .nd-hrow .nd-sub2 .nd-dd{white-space:nowrap}
 body[data-tab=project] .nd-inf .nd-chips12 b{font-size:12px}
 body[data-tab=project] .nd-hl{font-size:11.5px}
}
@media (min-width:1100px){
 body[data-tab=project] .nd-tile.steel .nd-hrow{align-items:flex-start;gap:8px}
 body[data-tab=project] .nd-tile.steel .nd-hrow .nd-num{font-size:48px}
 body[data-tab=project] .nd-tile.steel .nd-hrow .nd-sub2{margin-top:9px;flex:none}
 body[data-tab=project] .nd-tile.steel .nd-hrow .nd-dd{font-size:13px;padding:0 10px}
 body[data-tab=project] .nd-hl{font-size:11px}
}
@media (min-width:1100px){body[data-tab=project] .nd-tile.steel .nd-hrow .nd-dd{height:30px;display:inline-flex;align-items:center;border-radius:15px;font-weight:600}}
/* option A: 40px hero number in Build and time and Budget, word and pill on the same line (25 Oct 2026) */
@media (min-width:1100px){
 body[data-tab=project] .nd-pg :is(.nd-tile.steel,.nd-bud2) .nd-hrow{flex-wrap:nowrap;align-items:center;gap:8px}
 body[data-tab=project] .nd-pg :is(.nd-tile.steel,.nd-bud2) .nd-hrow .nd-num{font-size:40px;line-height:1;white-space:nowrap}
 body[data-tab=project] .nd-pg :is(.nd-tile.steel,.nd-bud2) .nd-hrow .nd-num small{display:inline-block;margin:0 0 0 5px;top:0;font-size:15px}
 body[data-tab=project] .nd-tile.steel .nd-hrow .nd-sub2{margin-top:0}
}
@media (min-width:1100px){
 body[data-tab=project] .nd-pg .nd-tile.steel .nd-hrow{gap:6px}
 body[data-tab=project] .nd-pg .nd-tile.steel .nd-hrow .nd-num small{margin-left:4px;font-size:14px}
 body[data-tab=project] .nd-tile.steel .nd-hrow .nd-dd{font-size:12.5px;padding:0 9px;gap:6px}
}
@media (min-width:1100px){
 body[data-tab=project] .nd-bud2 .nd-pill{white-space:nowrap;flex:none;font-size:12.5px;padding:0 9px;gap:6px;height:30px}
 body[data-tab=project] .nd-tile.steel .nd-hrow .nd-dd{padding:0 8px;gap:5px}
 body[data-tab=project] .nd-pg :is(.nd-tile.steel,.nd-bud2) .nd-hrow .nd-num{letter-spacing:-.01em}
}
@container (max-height:200px){
 body[data-tab=project] .nd-bud2 .nd-hrow{margin-top:4px}
 body[data-tab=project] .nd-bud2 .nd-sub{margin-top:4px;padding-bottom:5px;font-size:13.5px}
 body[data-tab=project] .nd-bud2 .nd-bk{padding-top:5px;gap:3px}
 body[data-tab=project] .nd-bud2 .nd-bk>div{height:24px}
}
/* one shared spacing set for the dashboard boxes (25 Oct 2026). --u grows a little on taller screens (1 to 1.15) */
@media (min-width:1100px){
 body[data-tab=project] .nd-pg{--bx-py:calc(20px*var(--u,1));--bx-px:22px;--g1:calc(10px*var(--u,1));--g2:calc(6px*var(--u,1));--g3:calc(12px*var(--u,1));--cap-h:calc(24px*var(--u,1));--cap-g:calc(4px*var(--u,1))}
 /* Build and time */
 body[data-tab=project] .nd-pg .nd-tile.steel .nd-in{padding:var(--bx-py) var(--bx-px)}
 body[data-tab=project] .nd-pg .nd-tile.steel .nd-top{padding:0 0 var(--g3)}
 body[data-tab=project] .nd-pg .nd-tile.steel .nd-hrow{margin-top:var(--g1)}
 body[data-tab=project] .nd-pg .nd-tile.steel .nd-top>.nd-cap{margin-top:var(--g2)!important}
 body[data-tab=project] .nd-pg .nd-tile.steel .nd-rest{padding:var(--g3) var(--bx-px) var(--bx-py);margin:0 calc(-1*var(--bx-px)) calc(-1*var(--bx-py))}
 body[data-tab=project] .nd-pg .nd-tile.steel .nd-lad2{gap:var(--cap-g)}
 body[data-tab=project] .nd-pg .nd-tile.steel .nd-lad2>div{flex:none;height:var(--cap-h);max-height:none}
 /* Budget and spend */
 body[data-tab=project] .nd-pg .nd-bud2{padding:var(--bx-py) var(--bx-px);justify-content:flex-start}
 body[data-tab=project] .nd-pg .nd-bud2 .nd-hrow{margin-top:var(--g1)}
 body[data-tab=project] .nd-pg .nd-bud2 .nd-sub{margin:var(--g2) 0 0;padding-bottom:var(--g3);font-size:14px}
 body[data-tab=project] .nd-pg .nd-bud2 .nd-bk{margin-top:0;padding-top:var(--g3);gap:var(--cap-g)}
 body[data-tab=project] .nd-pg .nd-bud2 .nd-bk>div{height:var(--cap-h)}
}
@media (min-width:1100px){body[data-tab=project] .nd-pg{--bx-py:calc(18px*var(--u,1));--g3:calc(10px*var(--u,1));--cap-h:calc(22px*var(--u,1))}}
@media (min-width:1100px){
 body[data-tab=project] .nd-pg{--g1:calc(8px*var(--u,1))}
 body[data-tab=project] .nd-pg :is(.nd-bud2 .nd-sub,.nd-tile.steel .nd-top>.nd-cap){line-height:1.3}
}
/* one header, pill and divider for Build and time and Budget (v33) */
@media (min-width:1100px){
 body[data-tab=project] .nd-pg :is(.nd-tile.steel,.nd-bud2) .nd-h{font-size:13.5px;letter-spacing:.06em;line-height:20px;height:20px}
 body[data-tab=project] .nd-pg :is(.nd-tile.steel,.nd-bud2) .nd-h .nd-r{font-size:13px;letter-spacing:0;overflow:visible;text-overflow:clip;white-space:nowrap;flex:none}
 body[data-tab=project] .nd-pg :is(.nd-tile.steel,.nd-bud2) .nd-hrow{height:40px;align-items:center;gap:10px}
 body[data-tab=project] .nd-pg :is(.nd-tile.steel,.nd-bud2) .nd-hrow .nd-sub2{display:flex;align-items:center;margin:0;padding:0}
 body[data-tab=project] .nd-pg :is(.nd-tile.steel .nd-hrow .nd-dd,.nd-bud2 .nd-pill){box-sizing:border-box;height:30px;align-self:center;margin:0;display:inline-flex;align-items:center;gap:7px;padding:0 10px;border-radius:15px;background:#0b0b0d;border:1px solid rgba(255,255,255,.18);box-shadow:none;font-size:12.5px;font-weight:600;line-height:1;color:#fff;white-space:nowrap}
 body[data-tab=project] .nd-pg :is(.nd-tile.steel .nd-hrow .nd-dd,.nd-bud2 .nd-pill) i{width:8px;height:8px;margin:0;flex:none;vertical-align:0}
 body[data-tab=project] .nd-pg .nd-tile.steel .nd-top::after{display:none}
 body[data-tab=project] .nd-pg .nd-tile.steel .nd-top{border-bottom:1px solid rgba(255,255,255,.22)}
 body[data-tab=project] .nd-pg .nd-bud2 .nd-sub{border-bottom:1px solid rgba(255,255,255,.22)}
}
/* hover like the Specs lines (v33): the hovered box stays sharp and readable, every other box dims to half */
@media (hover:hover){
 body[data-tab=project] .nd-pg :is(.nd-tile.nd-go,.nd-card.nd-go,.nd-bx){transition:transform .3s cubic-bezier(.2,.7,.2,1),filter .3s,opacity .3s}
 body[data-tab=project] .nd-pg :is(.nd-tile.nd-go,.nd-card.nd-go,.nd-bx):is(:hover,:focus-visible){transform:translateY(-4px)!important;filter:none!important;opacity:1!important;z-index:5}
 body[data-tab=project] .nd-pg:has(:is(.nd-tile.nd-go,.nd-card.nd-go,.nd-bx):hover) :is(.nd-tile,.nd-card,.nd-bx,.nd-inf,.nd-name,.nd-house):not(:hover){filter:brightness(.5)!important;opacity:1!important}
}
@media (min-width:1100px){
 body[data-tab=project] .nd-pg{--bx-px:18px}
 body[data-tab=project] .nd-pg :is(.nd-tile.steel,.nd-bud2) .nd-hrow{gap:8px}
 body[data-tab=project] .nd-pg :is(.nd-tile.steel .nd-hrow .nd-dd,.nd-bud2 .nd-pill){padding:0 9px;gap:6px}
}
@media (min-width:1100px){body[data-tab=project] .nd-pg :is(.nd-tile.steel .nd-hrow .nd-dd,.nd-bud2 .nd-pill){padding:0 8px;font-size:12px;letter-spacing:0}}
@media (min-width:1100px){body[data-tab=project] .nd-pg :is(.nd-tile.steel,.nd-bud2) .nd-hrow{gap:6px}}
/* v34: Cash book, Payment stages and Today's diary use the same parts and spacing as Build and time and Budget */
@media (min-width:1100px){
 body[data-tab=project] .nd-pg :is(.nd-tile.copper .nd-in,.nd-card.lc-c,.nd-card.lc-a){padding:var(--bx-py) var(--bx-px);justify-content:flex-start}
 body[data-tab=project] .nd-pg :is(.nd-tile.copper,.lc-c,.lc-a) .nd-h{font-size:13.5px;letter-spacing:.06em;line-height:20px;height:20px;margin:0}
 body[data-tab=project] .nd-pg :is(.nd-tile.copper,.lc-c,.lc-a) .nd-h svg{display:none}
 body[data-tab=project] .nd-pg :is(.nd-tile.copper,.lc-c,.lc-a) .nd-h .nd-r{font-size:13px;letter-spacing:0;white-space:nowrap;flex:none}
 body[data-tab=project] .nd-pg :is(.nd-tile.copper,.lc-c,.lc-a) .nd-top{padding:0 0 var(--g3);margin:0}
 body[data-tab=project] .nd-pg :is(.nd-tile.copper,.lc-c,.lc-a) .nd-top::after{display:none}
 body[data-tab=project] .nd-pg :is(.nd-tile.copper,.lc-c,.lc-a) .nd-top:has(+.nd-rest:not(:empty)){border-bottom:1px solid rgba(255,255,255,.22)}
 body[data-tab=project] .nd-pg :is(.nd-tile.copper,.lc-c,.lc-a) .nd-num{font-size:40px;line-height:40px;height:40px;margin:var(--g1) 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 body[data-tab=project] .nd-pg :is(.nd-tile.copper,.lc-c,.lc-a) .nd-num small{font-size:14px;margin-left:6px}
 body[data-tab=project] .nd-pg :is(.nd-tile.copper,.lc-c,.lc-a) .nd-top>:is(.nd-sub,.nd-cap){margin:var(--g2) 0 0!important;font-size:14px;line-height:1.3;padding:0;border:0}
 body[data-tab=project] .nd-pg :is(.nd-tile.copper,.lc-c,.lc-a) .nd-rest{padding:var(--g3) 0 0;margin:0;border:0;background:none}
 body[data-tab=project] .nd-pg :is(.nd-tile.copper,.lc-c,.lc-a) .nd-rest::before{display:none}
 body[data-tab=project] .nd-pg :is(.nd-tile.copper,.lc-c,.lc-a) .nd-rest>:first-child{margin-top:0;padding-top:0;border-top:0}
 body[data-tab=project] .nd-pg :is(.nd-tile.copper,.lc-c,.lc-a) .nd-rest .nd-foot{margin-top:0;font-size:14px;line-height:1.3}
}
/* v34: Home and Money hover like the Specs lines too */
@media (hover:hover){
 .ndh :is(.nd-tile,.nd-low>.nd-card,.nd-gt).nd-go:is(:hover,:focus-visible),.ndh .nd-gt:is(:hover,:focus-visible){transform:translateY(-4px)!important;filter:none!important;opacity:1!important}
 .ndh:has(:is(.nd-tile,.nd-low>.nd-card).nd-go:hover,.nd-gt:hover) :is(.nd-tile,.nd-low>.nd-card,.nd-gt):not(:hover){filter:brightness(.5)!important;opacity:1!important}
 .nd-gtg:has(.nd-gt:hover) .nd-gt:not(:hover){filter:brightness(.5);opacity:1}
 .nd-gt:hover,.nd-gt:focus-visible{filter:none}
 body[data-tab=project] .nd-pg :is(.nd-tile.nd-go,.nd-card.nd-go,.nd-bx){transition:transform .3s cubic-bezier(.2,.7,.2,1),filter .3s,opacity .3s}
}
@media (min-width:1100px){body[data-tab=project] .nd-pg :is(.nd-tile.copper,.lc-c,.lc-a) .nd-num small{line-height:1;display:inline}}
/* v35: Cash book box (cash in hand, need attention, to pay / no bill / flagged, latest entries) and slim Payment stages */
@media (min-width:1100px){
 body[data-tab=project] .nd-pg .nd-tile.copper{grid-row:11/span 5}
 body[data-tab=project] .nd-pg .lc-c{grid-row:16/span 2}
 body[data-tab=project] .nd-pg .nd-cash .nd-hrow{display:flex;align-items:center;justify-content:space-between;height:40px;gap:6px;margin-top:var(--g1)}
 body[data-tab=project] .nd-pg .nd-cash .nd-hrow .nd-num{margin:0;height:40px;font-size:40px;line-height:40px;white-space:nowrap}
 body[data-tab=project] .nd-pg .nd-cash .nd-pill{box-sizing:border-box;height:30px;flex:none;display:inline-flex;align-items:center;gap:6px;padding:0 8px;border-radius:15px;background:#0b0b0d;border:1px solid rgba(255,255,255,.18);font-size:12px;font-weight:600;line-height:1;color:#fff;white-space:nowrap}
 body[data-tab=project] .nd-pg .nd-cash .nd-pill i{width:8px;height:8px;border-radius:50%;flex:none;background:#30d158;box-shadow:0 0 8px #30d158}
 body[data-tab=project] .nd-pg .nd-cash .nd-pill.rd i{background:#ff453a;box-shadow:0 0 8px #ff453a}
 body[data-tab=project] .nd-pg .nd-cash .nd-ck{display:flex;flex-direction:column;gap:var(--cap-g)}
 body[data-tab=project] .nd-pg .nd-cash .nd-ck>div{display:flex;align-items:center;justify-content:space-between;gap:6px;height:var(--cap-h);flex:none;padding:0 12px;border-radius:16px;background:rgba(255,255,255,.85);box-shadow:0 0 10px rgba(255,255,255,.3);color:#1d1418;font-size:13px;min-width:0}
 body[data-tab=project] .nd-pg .nd-cash .nd-ck span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#1d1418}
 body[data-tab=project] .nd-pg .nd-cash .nd-ck b{font-weight:600;white-space:nowrap;color:#1d1418}
 body[data-tab=project] .nd-pg .nd-cash .nd-ck>.am{box-shadow:inset 0 0 0 2px #ee7707,0 0 10px rgba(238,119,7,.45)}
 body[data-tab=project] .nd-pg .nd-cash .nd-ck>.ov{box-shadow:inset 0 0 0 2px #ff453a,0 0 10px rgba(255,69,58,.4)}
 body[data-tab=project] .nd-pg .nd-cash .nd-cl{margin:var(--g3) 0 0;padding:0;display:flex;flex-direction:column;gap:0}
 body[data-tab=project] .nd-pg .nd-cash .nd-cl>div{display:flex;align-items:center;gap:8px;height:24px;font-size:13px;color:rgba(255,255,255,.62);border-top:1px solid rgba(255,255,255,.1);padding:0;white-space:nowrap;overflow:hidden}
 body[data-tab=project] .nd-pg .nd-cash .nd-cl>div:first-child{border-top:0}
 body[data-tab=project] .nd-pg .nd-cash .nd-cl>div i{width:6px;height:6px;border-radius:50%;flex:none;background:rgba(255,255,255,.3)}
 body[data-tab=project] .nd-pg .nd-cash .nd-cl>div span{margin-left:auto;color:rgba(255,255,255,.62);font-weight:500}
 body[data-tab=project] .nd-pg .nd-cash .nd-cl>div.pd{color:#fff}
 body[data-tab=project] .nd-pg .nd-cash .nd-cl>div.pd i{background:#ee7707;box-shadow:0 0 6px #ee7707}
 body[data-tab=project] .nd-pg .nd-cash .nd-cl>div.pd span{color:#ffb15c;font-weight:700}
 body[data-tab=project] .nd-pg .lc-c.nd-slim{display:flex;flex-direction:column;justify-content:center;padding:0 var(--bx-px)}
 body[data-tab=project] .nd-pg .lc-c.nd-slim .nd-sub{margin:var(--g2) 0 0;font-size:14px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:7px}
 body[data-tab=project] .nd-pg .lc-c.nd-slim .nd-sub .dn{width:8px;height:8px;border-radius:50%;flex:none;background:#ee7707;box-shadow:0 0 8px #ee7707}
}
/* v36: one soft glow on every hero number (no clipped box), space after ₹ and before the word */
@media (min-width:1100px){
 body[data-tab=project] .nd-pg .nd-num{overflow:visible!important;text-overflow:clip!important;text-shadow:0 0 18px rgba(255,255,255,.4)}
 body[data-tab=project] .nd-pg .nd-num .rp{margin-right:.14em}
 body[data-tab=project] .nd-pg .nd-num small{margin-left:10px!important;text-shadow:none}
 body[data-tab=project] .nd-pg .nd-cash .nd-ck>div{box-shadow:0 0 10px rgba(255,255,255,.3)}
 body[data-tab=project] .nd-pg .nd-cash .nd-ck>.ov{box-shadow:inset 0 0 0 2px #ff453a,0 0 10px rgba(255,255,255,.3)}
}
/* v37: status pill in the header's right corner (red dot pulses), Cash book same width as Budget with 2 empty boxes beside it, bolder small text */
@media (min-width:1100px){
 body[data-tab=project] .nd-pg .nd-h .nd-hp{margin:-5px 0 -5px auto;display:flex;align-items:center;flex:none}
 body[data-tab=project] .nd-pg .nd-h .nd-hp :is(.nd-pill,.nd-dd){box-sizing:border-box;height:30px;display:inline-flex;align-items:center;gap:6px;padding:0 9px;margin:0;border-radius:15px;background:#0b0b0d;border:1px solid rgba(255,255,255,.18);box-shadow:none;font-size:12px;font-weight:700;letter-spacing:0;text-transform:none;line-height:1;color:#fff;white-space:nowrap}
 body[data-tab=project] .nd-pg .nd-h .nd-hp :is(.nd-pill,.nd-dd) i{width:8px;height:8px;margin:0;border-radius:50%;flex:none;background:#30d158;box-shadow:0 0 8px #30d158}
 body[data-tab=project] .nd-pg .nd-h .nd-hp :is(.nd-pill.rd,.nd-dd.bh) i{background:#ff453a;box-shadow:0 0 8px #ff453a;animation:ndPulse 1.85s ease-in-out infinite}
 body[data-tab=project] .nd-pg .nd-tile.copper{grid-column:9/span 3}
 body[data-tab=project] .nd-pg .ph3{--c:52,211,153;grid-column:12/span 1;grid-row:11/span 3}
 body[data-tab=project] .nd-pg .ph4{--c:167,139,250;grid-column:12/span 1;grid-row:14/span 2}
 body[data-tab=project] .nd-pg :is(.nd-sub,.nd-cap,.nd-foot){font-weight:600}
 body[data-tab=project] .nd-pg .nd-num small{font-weight:600}
 body[data-tab=project] .nd-pg :is(.nd-bk,.nd-ck)>div span{font-weight:600}
 body[data-tab=project] .nd-pg :is(.nd-bk,.nd-ck)>div b{font-weight:700}
 body[data-tab=project] .nd-pg .nd-lad2>div :is(span,i){font-weight:600}
 body[data-tab=project] .nd-pg .nd-bars :is(small,span,b,i,div){font-weight:600}
 body[data-tab=project] .nd-pg .nd-cash .nd-ck>div{box-shadow:0 0 10px rgba(255,255,255,.3)!important}
}
@keyframes ndPulse{0%,100%{opacity:1;box-shadow:0 0 10px #ff453a}50%{opacity:.25;box-shadow:none}}
@media (prefers-reduced-motion:reduce){body[data-tab=project] .nd-pg .nd-h .nd-hp i{animation:none!important}}
/* v38: full amounts over the day bars stay inside their day */
.nd-days .k{font-size:9.5px;letter-spacing:-.01em;white-space:nowrap;text-align:center}
/* v39: the space after ₹ is now part of every amount */
body[data-tab=project] .nd-pg .nd-num .rp{margin-right:0}

/* ===== 3D house (25 Oct 2026): replaces the 2D drawing in the house box; h3d.js ===== */
.nd-art.h3on{position:relative;flex:1;min-height:280px;padding:0!important}
.nd-art.h3on>svg{display:none}
.h3d{position:absolute;inset:0;border-radius:16px;overflow:hidden;font-family:inherit}
.h3d canvas{position:absolute;inset:0;width:100%;height:100%;display:block;cursor:grab;touch-action:pan-y}
.h3d.full canvas{touch-action:none}
.h3d canvas:active{cursor:grabbing}
.h3d-vw{position:absolute;top:10px;left:10px;display:flex;flex-direction:column;align-items:flex-start;gap:6px;max-width:calc(100% - 60px);z-index:2}
.h3d-pill{display:flex;gap:3px;padding:3px;border-radius:999px;background:#0b0b0d;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);max-width:100%;overflow-x:auto;scrollbar-width:none}
.h3d-pill button{all:unset;cursor:pointer;flex:none;padding:6px 11px;border-radius:999px;font-family:inherit;font-size:11.5px;font-weight:700;line-height:1;letter-spacing:.06em;text-transform:uppercase;color:#b8b8c0;text-align:center}
.h3d-pill[hidden]{display:none}
.h3d-pill button[aria-pressed=true]{background:#ee7707;color:#1a0d00}
.h3d-pill button:focus-visible,.h3d-fs:focus-visible,.h3d-tg:focus-visible,.h3d-x:focus-visible{outline:2px solid #ee7707;outline-offset:2px}
.h3d-fs{all:unset;cursor:pointer;position:absolute;top:10px;right:10px;z-index:2;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#0b0b0d;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);color:#f2f2f4}
.h3d-fs svg{width:17px;height:17px}
.h3d.full .h3d-fs{display:none}
.h3d-tip{position:absolute;right:10px;bottom:10px;z-index:3;max-width:260px;border-radius:16px;background:#0b0b0de8;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14),0 12px 30px #0009;padding:11px 14px;color:#f2f2f4}
.h3d-tip h3{margin:0 22px 4px 0;font-size:14px;letter-spacing:.03em}
.h3d-tip .h3s{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;margin-bottom:4px}
.h3d-tip .h3s i{width:8px;height:8px;border-radius:50%}
.h3d-tip p{margin:0;color:#b8b8c0;font-size:12.5px;font-weight:600}
.h3d-tip img{display:block;width:100%;border-radius:10px;margin-top:8px;min-height:60px;background:#1b1b21;object-fit:cover;max-height:180px}
.h3d-tip .x{all:unset;cursor:pointer;position:absolute;right:10px;top:7px;color:#b8b8c0;font-size:17px;padding:2px 6px}
.h3d-rooms{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.h3d-rl{position:absolute;left:0;top:0;display:flex;flex-direction:column;align-items:center;transition:opacity .35s;opacity:0}
.h3d-rl .h3c{padding:8px 13px 9px;border-radius:14px;background:rgba(255,255,255,.13);-webkit-backdrop-filter:blur(12px) saturate(1.2);backdrop-filter:blur(12px) saturate(1.2);box-shadow:inset 0 0 0 1px rgba(255,255,255,.24),0 10px 24px #0007}
.h3d-rl b{display:block;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:#fff;white-space:nowrap}
.h3d-rl span{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:#ececf0;margin-top:3px;white-space:nowrap}
.h3d-rl em{font-style:normal}
.h3d-rl span i{width:7px;height:7px;border-radius:50%;flex:none}
.h3d-rl .h3l{width:0;height:30px;border-left:1.5px dashed rgba(255,255,255,.7)}
.h3d-rl .h3t{width:9px;height:9px;border-radius:50%;background:#fff;box-shadow:0 0 10px #fff}
/* full screen */
body.h3d-lock{overflow:hidden}
.h3d-ov{position:fixed;inset:0;z-index:2147483560;background:radial-gradient(ellipse 80% 70% at 40% 40%,#1a1d26,#08080b 75%);display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;padding:max(14px,env(safe-area-inset-top,0px)) max(14px,env(safe-area-inset-right,0px)) max(14px,env(safe-area-inset-bottom,0px)) max(14px,env(safe-area-inset-left,0px));color:#f2f2f4}
.h3d-ov[hidden]{display:none}
.h3d-ovs{position:relative;border-radius:22px;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);min-height:0}
.h3d-side{display:flex;flex-direction:column;gap:12px;min-width:0;min-height:0}
.h3d-card{border-radius:20px;background:linear-gradient(180deg,#ffffff0a,#ffffff03),#141418;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);padding:15px 17px}
.h3d-h{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.h3d-h span{margin-left:auto;color:#b8b8c0;letter-spacing:.02em;text-transform:none;font-size:12.5px;font-weight:600}
.h3d-x{all:unset;cursor:pointer;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#0b0b0d;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);font-size:18px;line-height:1;letter-spacing:0}
.h3d-big{font-size:34px;font-weight:700;line-height:1;text-shadow:0 0 18px #ffffff55}
.h3d-big small{font-size:13.5px;font-weight:600;margin-left:10px;color:#b8b8c0;text-shadow:none}
.h3d-day{width:100%;accent-color:#ee7707;margin:12px 0 2px}
.h3d-rng{display:flex;justify-content:space-between;color:#b8b8c0;font-size:11.5px;font-weight:600}
.h3d-now{margin-top:8px;font-size:13px;color:#b8b8c0;font-weight:600}.h3d-now b{color:#f2f2f4}
.h3d-btns{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.h3d-tg{all:unset;cursor:pointer;height:28px;padding:0 11px;border-radius:14px;background:#0b0b0d;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);font-family:inherit;font-size:12px;font-weight:700;line-height:28px;color:#b8b8c0}
.h3d-tg[aria-pressed=true]{color:#f2f2f4;box-shadow:inset 0 0 0 1px #ee7707}
.h3d-sky{width:max-content}
.h3d-lc{flex:1;min-height:0;display:flex;flex-direction:column}
.h3d-list{display:flex;flex-direction:column;gap:4px;overflow:auto;min-height:0;scrollbar-width:thin}
.h3d-list div{display:flex;align-items:center;gap:8px;min-height:26px;font-size:12.5px;font-weight:600;color:#b8b8c0;cursor:pointer;border-radius:8px;padding:0 6px}
.h3d-list div:hover{background:#ffffff0d}
.h3d-list div:focus-visible{outline:2px solid #ee7707;outline-offset:1px}
.h3d-list i{width:8px;height:8px;border-radius:50%;flex:none;background:#ffffff33}
.h3d-list span{margin-left:auto;font-size:11.5px}
.h3d-list .d{color:#f2f2f4}.h3d-list .d i{background:#a3a3ab}
.h3d-list .n{color:#ffb15c}.h3d-list .n i{background:#ee7707;box-shadow:0 0 8px #ee7707}
.h3d-list .sel{background:#4fb4ff22;box-shadow:inset 0 0 0 1px #7fd4ff;color:#dff3ff}.h3d-list .sel i{background:#7fd4ff;box-shadow:0 0 8px #7fd4ff}
@media (max-width:1400px){.h3d-pill button{padding:6px 8px;font-size:10.5px;letter-spacing:.04em}}
@media (max-width:900px){.h3d-ov{grid-template-columns:1fr;grid-template-rows:58vh auto;overflow:auto}.h3d-lc{max-height:50vh}
 .h3d-pill button{padding:6px 9px;font-size:10.5px}.h3d-rl .h3c{padding:6px 10px 7px}.h3d-rl b,.h3d-rl span{font-size:11px}}
/* smooth hover light (28 Oct 2026): every box fades its light the same way (0.35s); nd.js keeps the dim (.nd-hv) while the mouse crosses a gap, the last box (.nd-on) stays lit until the next one takes over */
@media (hover:hover){
 body[data-tab=project] .nd-pg :is(.nd-tile,.nd-card,.nd-bx,.nd-inf,.nd-name,.nd-house),.ndh :is(.nd-tile,.nd-low>.nd-card,.nd-gt){transition:transform .4s cubic-bezier(.2,.7,.2,1),filter .35s cubic-bezier(.4,0,.2,1),opacity .35s cubic-bezier(.4,0,.2,1)!important}
 body[data-tab=project] .nd-pg.nd-hv :is(.nd-tile,.nd-card,.nd-bx,.nd-inf,.nd-name,.nd-house):not(.nd-on),.ndh.nd-hv :is(.nd-tile,.nd-low>.nd-card,.nd-gt):not(.nd-on){filter:brightness(.5)!important;opacity:1!important}
 body[data-tab=project] .nd-pg.nd-hv .nd-on,.ndh.nd-hv .nd-on{transform:translateY(-4px)!important;filter:none!important;opacity:1!important;z-index:5}
}

/* small name-only buttons beside Budget and Cash book (28 Oct 2026); Budget stays the only highlighted box */
@media (min-width:1100px){
 body[data-tab=project] .nd-pg .nd-tile.copper{grid-column:9/span 3}
 body[data-tab=project] .nd-pg .nd-bxc{grid-column:12/span 1;display:flex;flex-direction:column;gap:8px;min-height:0}
 body[data-tab=project] .nd-pg .nd-bxc.c1{grid-row:6/span 5}
 body[data-tab=project] .nd-pg .nd-bxc.c2{grid-row:11/span 3}
 body[data-tab=project] .nd-pg .nd-bt{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:4px 6px;border-radius:16px;background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.03)),#0b0b0d;border:1px solid rgba(255,255,255,.14);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 10px 24px rgba(0,0,0,.4);cursor:pointer;transition:transform .2s,filter .2s,border-color .2s}
 body[data-tab=project] .nd-pg .nd-bt span{font-size:10.5px;line-height:1.25;letter-spacing:.08em;text-transform:uppercase;font-weight:600;color:#fff}
 body[data-tab=project] .nd-pg .nd-bt:hover,body[data-tab=project] .nd-pg .nd-bt:focus-visible{transform:translateY(-2px);filter:brightness(1.3);border-color:rgba(238,119,7,.6);outline:none}
}
/* glass buttons lit from behind (28 Oct 2026, option 2): warm light for the money buttons, cool light for the spec buttons; thin glow under the bottom edge */
@media (min-width:1100px){
 body[data-tab=project] .nd-pg .nd-bxc.c1 .nd-bt:nth-child(1){--g:238,124,40}
 body[data-tab=project] .nd-pg .nd-bxc.c1 .nd-bt:nth-child(2){--g:226,162,60}
 body[data-tab=project] .nd-pg .nd-bxc.c1 .nd-bt:nth-child(3){--g:214,116,80}
 body[data-tab=project] .nd-pg .nd-bxc.c2 .nd-bt:nth-child(1){--g:90,156,235}
 body[data-tab=project] .nd-pg .nd-bxc.c2 .nd-bt:nth-child(2){--g:70,128,222}
 body[data-tab=project] .nd-pg .nd-bxc.c2 .nd-bt:nth-child(3){--g:104,176,216}
 body[data-tab=project] .nd-pg .nd-bt{border:1px solid rgba(255,255,255,.16);background:linear-gradient(180deg,rgba(255,255,255,.14) 0%,rgba(255,255,255,.04) 38%,rgba(255,255,255,.02) 62%,rgba(var(--g),.16) 100%),radial-gradient(ellipse 90% 45% at 50% 108%,rgba(var(--g),.38),transparent 70%),rgba(16,16,20,.55);-webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);box-shadow:inset 0 1px 0 rgba(255,255,255,.28),inset 0 -1px 0 rgba(var(--g),.65),inset 0 -12px 18px -12px rgba(var(--g),.55),0 6px 8px -5px rgba(var(--g),.9),0 5px 14px -8px rgba(var(--g),.5)}
}
/* buttons shaped like the dashboard boxes (28 Oct 2026): round corners like the big boxes and bigger labels; the glass and the light from below stay */
@media (min-width:1100px){
 body[data-tab=project] .nd-pg .nd-bt{border-radius:24px}
 body[data-tab=project] .nd-pg .nd-bt span{font-size:11.5px;letter-spacing:.06em;line-height:1.3}
}
/* hover: each button lights its outline in its own colour, not orange */
@media (min-width:1100px){body[data-tab=project] .nd-pg .nd-bt:is(:hover,:focus-visible){border-color:rgba(var(--g),.9)}}

/* Customer portal box on the dashboard (28 Oct 2026) */
@media (min-width:1100px){
 body[data-tab=project] .nd-pg .nd-portal .nd-pt{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;margin-top:6px;font-size:13.5px}
 body[data-tab=project] .nd-pg .nd-portal .nd-pt b{font-weight:700;color:#fff}
 body[data-tab=project] .nd-pg .nd-portal .nd-pbtn{margin-left:auto;color:#fff;font-weight:600;opacity:.9}
}
/* Customer portal page: full width like the other project pages */
body[data-tab=portal] .clx-box{margin-top:0}
@media (min-width:1100px){body[data-tab=project] .nd-pg .nd-portal .nd-pt{gap:6px 8px}body[data-tab=project] .nd-pg .nd-portal .nd-pt .dot{opacity:.5}body[data-tab=project] .nd-pg .nd-portal .nd-pt .wt,body[data-tab=project] .nd-pg .nd-portal .nd-pt .wt b{color:#ffb35c}}

/* Customer portal box narrowed to the Budget width, two question capsules, Contract and Tasks buttons beside it (28 Oct 2026) */
@media (min-width:1100px){
 body[data-tab=project] .nd-pg .nd-card.nd-portal{grid-column:9/span 3;display:flex;flex-direction:column}
 body[data-tab=project] .nd-pg .nd-bxc.c3{grid-row:14/span 4}
 body[data-tab=project] .nd-pg .nd-bxc.c3 .nd-bt:nth-child(1){--g:150,118,235}
 body[data-tab=project] .nd-pg .nd-bxc.c3 .nd-bt:nth-child(2){--g:54,190,180}
 body[data-tab=project] .nd-pg .nd-portal .nd-pt{padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.22)}
 body[data-tab=project] .nd-pg .nd-pq{display:flex;flex-direction:column;gap:var(--cap-g,6px);padding-top:8px}
 body[data-tab=project] .nd-pg .nd-pq>div{display:flex;align-items:center;justify-content:space-between;gap:8px;height:var(--cap-h,26px);padding:0 12px;border-radius:16px;background:rgba(255,255,255,.85);box-shadow:0 0 10px rgba(255,255,255,.3);color:#1d1418;font-size:13px;min-width:0}
 body[data-tab=project] .nd-pg .nd-pq span{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#1d1418}
 body[data-tab=project] .nd-pg .nd-pq b{font-weight:700;white-space:nowrap;color:#1d1418}
 body[data-tab=project] .nd-pg .nd-pq>.wt{box-shadow:inset 0 0 0 2px #ee7707,0 0 10px rgba(238,119,7,.45)}
 body[data-tab=project] .nd-pg .nd-pq>.wt b{color:#b4500a}
}
@media (min-width:1100px){
 body[data-tab=project] .nd-pg .nd-portal .nd-pt{margin-top:4px;flex-wrap:nowrap;white-space:nowrap;overflow:hidden}
 body[data-tab=project] .nd-pg .nd-pq{flex-direction:row}
 body[data-tab=project] .nd-pg .nd-pq>div{flex:1 1 0;height:26px;padding:0 10px;font-size:12.5px}
}
@media (min-width:1100px){
 body[data-tab=project] .nd-pg .nd-card.nd-portal{padding-top:14px;padding-bottom:14px;justify-content:space-between}
 body[data-tab=project] .nd-pg .nd-portal .nd-pq{padding-top:0;margin-top:8px}
}
/* portal capsules: stacked like the other boxes' capsules, plain white (no orange edge), Waiting in amber text */
@media (min-width:1100px){
 body[data-tab=project] .nd-pg .nd-card.nd-portal{justify-content:flex-start}
 body[data-tab=project] .nd-pg .nd-pq{flex-direction:column}
 body[data-tab=project] .nd-pg .nd-pq>div{flex:none;height:var(--cap-h,26px);padding:0 12px;font-size:13px}
 body[data-tab=project] .nd-pg .nd-pq>.wt{box-shadow:0 0 10px rgba(255,255,255,.3)}
}
@media (min-width:1100px){body[data-tab=project] .nd-pg .nd-card.nd-portal{padding-top:13px!important;padding-bottom:12px!important}body[data-tab=project] .nd-pg .nd-pq{gap:5px;margin-top:9px}body[data-tab=project] .nd-pg .nd-pq>div{height:25px}}
@media (min-width:1100px){body[data-tab=project] .nd-pg .nd-portal .nd-pf{display:flex;justify-content:space-between;gap:10px;margin-top:auto;padding-top:9px;border-top:1px solid rgba(255,255,255,.22);font-size:13px;color:#e9dfe3;white-space:nowrap;overflow:hidden}body[data-tab=project] .nd-pg .nd-portal .nd-pq{margin-bottom:9px}}
/* back button (28 Oct 2026, option C3 at 66px with a chevron): the orange line beside the page title becomes the back button; the small "‹ ..." link above the title is gone */
/* back button (28 Oct, "your mix" + M1 glass): the old thin title line on the box edge; hovering the header widens it to the LEFT as a hint (28px), hovering the line opens menu-style glass to the RIGHT (66px) and the title slides over; calm motion with a short wait (spans added by nd.js) */
.dz-hd .dz-ht:has(>.dz-back){position:relative;transition:padding-left .28s cubic-bezier(.3,0,.2,1)}
.dz-hd .dz-ht:has(>.dz-back):before{display:none!important}
.dz-hd .dz-ht>.dz-back{position:absolute!important;left:0!important;right:auto!important;top:2px;bottom:2px;width:4px;height:auto!important;min-height:0;margin:0!important;padding:0!important;border:0!important;border-radius:0;background:none!important;box-shadow:none!important;font-size:0!important;line-height:0;color:transparent!important;cursor:pointer;overflow:visible;transform:none!important;filter:none!important;transition:width .28s cubic-bezier(.3,0,.2,1),left .28s cubic-bezier(.3,0,.2,1)}
.dz-back .bkz{position:absolute;top:-6px;bottom:-6px;left:-10px;right:-14px}
.dz-back .bkl{position:absolute;inset:0;border-radius:2px;background:linear-gradient(#ffb340,#ffb34033);transition:opacity .3s ease,border-radius .4s,box-shadow .4s}
.dz-back .bkg{position:absolute;inset:0;border-radius:22px;overflow:hidden;opacity:0;border:1px solid #ffffff3d;background:linear-gradient(180deg,#ffffff26,#ffffff0a);-webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);box-shadow:inset 0 1px 0 #ffffff40,0 8px 20px #0006;transition:opacity .3s ease}
.dz-back .bkg::before{content:"";position:absolute;left:14%;right:14%;top:30%;bottom:-24%;border-radius:inherit;background:#ee7707;filter:blur(11px);opacity:.85}
.dz-back .bkg::after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,#ffffff30,#ffffff08 45%,#ffffff12)}
.dz-back .bkc{position:absolute;inset:0;margin:auto;width:24px;height:24px;background:#fff;opacity:0;transition:opacity .2s ease;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 5l-7 7 7 7'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 5l-7 7 7 7'/%3E%3C/svg%3E") center/contain no-repeat}
@media (hover:hover) and (min-width:700px){
.dz-hd:hover .dz-ht>.dz-back{width:14px}
.dz-hd:hover .dz-back .bkl{border-radius:10px;box-shadow:0 0 14px rgba(238,119,7,.5)}
.dz-hd .dz-ht>.dz-back:is(:hover,:focus-visible){width:66px;left:0!important;outline:none}
.dz-hd .dz-ht:has(>.dz-back:is(:hover,:focus-visible)){padding-left:84px!important}
.dz-back:is(:hover,:focus-visible) .bkl{opacity:0;transition-delay:.06s}
.dz-back:is(:hover,:focus-visible) .bkg{opacity:1;transition:opacity .2s ease .04s}
.dz-back:is(:hover,:focus-visible) .bkc{opacity:1;transition:opacity .18s ease .14s}
.dz-back:active .bkg{filter:brightness(1.2)}
}
/* phones and touch screens: no hover, so the glass button shows all the time */
@media (max-width:699px),(hover:none){.dz-hd .dz-ht:has(>.dz-back){margin-left:0;padding-left:56px!important}.dz-hd .dz-ht>.dz-back,.dz-hd:hover .dz-ht>.dz-back{right:auto;left:0!important;width:44px}.dz-back .bkl{opacity:0}.dz-back .bkg{opacity:1;transform:none;border-radius:16px}.dz-back .bkc{opacity:1;transform:none;width:20px;height:20px}}
/* portal: more room under the notch (28 Oct) */
@media (min-width:1100px){body[data-tab=project] .nd-pg .nd-portal .nd-pt{margin-top:14px!important}body[data-tab=project] .nd-pg .nd-portal .nd-pq{margin-top:20px!important}}
/* project dashboard: soft fade where the section links run out of room */
@media (min-width:1100px){body[data-tab=project] .dz-hd .dz-hs{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 48px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 48px),transparent)}}
/* spacing pass (28 Oct): top-right card is exactly as tall as the title block (rows 1-2 sized by nd.js), one line on the left, slim photo on the right; Customer portal uses the same inner spacing as the other boxes */
@media (min-width:1100px){
 body[data-tab=project] .nd-pg .nd-name{align-items:center!important;padding:6px 6px 6px 18px!important}
 body[data-tab=project] .nd-pg .nd-name>div:first-child{display:flex;align-items:center;gap:14px;min-width:0}
 body[data-tab=project] .nd-pg .nd-name>div:first-child .nd-cap{margin:0!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 body[data-tab=project] .nd-pg .nd-name .nd-ph{padding:4px 14px 4px 4px!important;gap:12px!important;align-items:center;height:auto!important;max-height:100%}
 body[data-tab=project] .nd-pg .nd-name .nd-ph .im,body[data-tab=project] .nd-pg .nd-name .nd-ph img{height:42px!important;width:62px!important;min-height:0!important}
 body[data-tab=project] .nd-pg .nd-name .nd-ph .tx{display:grid;grid-template-columns:auto auto;column-gap:10px;align-items:baseline;line-height:1.3}
 body[data-tab=project] .nd-pg .nd-name .nd-ph .tx>div:nth-child(1){grid-row:1;grid-column:1}
 body[data-tab=project] .nd-pg .nd-name .nd-ph .tx>div:nth-child(3){grid-row:1;grid-column:2;opacity:.75}
 body[data-tab=project] .nd-pg .nd-name .nd-ph .tx>div:nth-child(2){grid-row:2;grid-column:1/-1}
 body[data-tab=project] .nd-pg .nd-card.nd-portal{padding:var(--bx-py) 18px!important}
 body[data-tab=project] .nd-pg .nd-portal .nd-pq{margin-top:var(--g3,12px)!important}
}
@media (min-width:1100px){
 body[data-tab=project] .nd-pg .nd-inf .nd-chips12>div{justify-content:center}
 body[data-tab=project] .nd-pg .nd-name>div:last-child{flex:none}
 body[data-tab=project] .nd-pg .nd-name .nd-ph{width:auto!important;max-width:none!important}
 body[data-tab=project] .nd-pg .nd-name .nd-ph .tx>div{white-space:nowrap;overflow:visible;text-overflow:clip}
}
/* round 28 Oct 03:10: same corner rounding everywhere; Project details as one box like Budget (headline left, Edit as a notch), tiles left aligned and tighter; Location opens Google Maps; portal capsules centred in their space */
@media (min-width:1100px){
 body[data-tab=project] .nd-pg :is(.nd-name,.nd-house){border-radius:30px!important}
 body[data-tab=project] .nd-pg .nd-inf{border-radius:30px;padding:var(--bx-py) 18px;background:linear-gradient(rgba(255,255,255,.06),rgba(255,255,255,.024));box-shadow:inset 0 1px 0 rgba(255,255,255,.08),inset 0 0 0 1px rgba(255,255,255,.06),0 14px 40px rgba(0,0,0,.4);display:flex;flex-direction:column}
 body[data-tab=project] .nd-pg .nd-inf .nd-infh{margin:0 0 var(--g3,12px)!important;min-height:30px}
 body[data-tab=project] .nd-pg .nd-inf .nd-infh b{font-size:13.5px;font-weight:600;letter-spacing:.06em;color:#ececef}
 body[data-tab=project] .nd-pg .nd-inf .nd-infh .nd-pde{height:30px!important;padding:0 14px!important;border-radius:15px;background:#0b0b0d!important;border:1px solid rgba(255,255,255,.18);box-shadow:none!important;font-size:12px!important;font-weight:600;letter-spacing:.04em;color:#fff;text-transform:none}
 body[data-tab=project] .nd-pg .nd-inf .nd-infh .nd-pde:hover{border-color:rgba(238,119,7,.8)}
 body[data-tab=project] .nd-pg .nd-inf .nd-chips12{gap:8px}
 body[data-tab=project] .nd-pg .nd-inf .nd-chips12>div{justify-content:center!important;align-items:flex-start;text-align:left;padding:6px 12px!important;gap:2px;border-radius:14px}
 body[data-tab=project] .nd-pg .nd-inf .nd-chips12>div>*{text-align:left;width:100%}
 body[data-tab=project] .nd-pg .nd-inf .nd-lk{cursor:pointer;transition:box-shadow .2s,background .2s}
 body[data-tab=project] .nd-pg .nd-inf .nd-lk small::after{content:" ↗";color:#ffb340}
 body[data-tab=project] .nd-pg .nd-inf .nd-lk:is(:hover,:focus-visible){background:rgba(255,255,255,.09);box-shadow:inset 0 0 0 1px rgba(238,119,7,.7);outline:none}
 body[data-tab=project] .nd-pg .nd-inf.ed .nd-lk small::after{content:""}
 body[data-tab=project] .nd-pg .nd-portal .nd-pq{flex:1 1 auto;justify-content:center;margin:var(--bx-py,20px) 0 0!important}
 body[data-tab=project] .nd-pg .nd-inf .nd-chips12>div>b{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
}
/* Project details edit panel: only as tall as its fields, fields start at the top of each tile */
@media (min-width:1100px){
 body[data-tab=project] .nd-pg .nd-inf.ed{align-self:start;height:auto!important;max-height:none;border-radius:30px;padding:var(--bx-py,20px) 18px}
 body[data-tab=project] .nd-pg .nd-inf.ed .nd-chips12{grid-template-rows:none!important;grid-auto-rows:auto;flex:none}
 body[data-tab=project] .nd-pg .nd-inf.ed .nd-chips12>div{justify-content:flex-start!important;padding:10px 12px!important;gap:6px}
 body[data-tab=project] .nd-pg .nd-inf.ed select{background:#050506!important;color:#f5f5f7!important}
}
/* Project details: 10 tiles (Rate expiry and Version removed), Project and Client wider for long names, project code on top and name below */
@media (min-width:1100px){
 body[data-tab=project] .nd-pg .nd-inf .nd-chips12{grid-template-columns:minmax(0,1.6fr) minmax(0,1.6fr) minmax(0,1.4fr) minmax(0,1fr) minmax(0,1.15fr)!important}
 body[data-tab=project] .nd-pg .nd-inf.ed .nd-chips12{grid-template-columns:minmax(0,1.25fr) minmax(0,1.25fr) minmax(0,1.3fr) minmax(0,1.3fr) minmax(0,1fr)!important}
 /* short screens: tighter Project details so both rows fit */
 body[data-tab=project] .nd-pg .nd-inf.tight:not(.ed){padding:10px 14px}
 body[data-tab=project] .nd-pg .nd-inf.tight:not(.ed) .nd-infh{min-height:24px;margin:0 0 6px!important}
 body[data-tab=project] .nd-pg .nd-inf.tight:not(.ed) .nd-infh .nd-pde{height:24px!important;padding:0 12px!important;font-size:11.5px!important}
 body[data-tab=project] .nd-pg .nd-inf.tight:not(.ed) .nd-chips12{gap:5px}
 body[data-tab=project] .nd-pg .nd-inf.tight:not(.ed) .nd-chips12>div{padding:3px 10px!important;gap:0;line-height:1.2}
 body[data-tab=project] .nd-pg .nd-inf .nd-chips12 .nd-pnm{font-weight:600}
}
/* dashboard buttons in the menu-glow style (28 Oct): dark glass on top, a pool of the button's own colour rising from the bottom; contrast level set by --gl-top / --gl-pool / --gl-blur */
body[data-tab=project] .nd-pg{--gl-top:.13;--gl-bg:rgba(20,20,26,.85);--gl-pool:.8;--gl-blur:10px;--gl-top-pos:48%}
body[data-tab=project] .nd-pg .nd-bt{position:relative;overflow:hidden!important;border:1px solid rgba(255,255,255,.22)!important;background:linear-gradient(180deg,rgba(255,255,255,var(--gl-top)),rgba(255,255,255,.02) 40%),var(--gl-bg)!important;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:inset 0 1px 0 rgba(255,255,255,.32),0 8px 20px rgba(0,0,0,.55)!important}
body[data-tab=project] .nd-pg .nd-bt::before{content:"";position:absolute;left:-12%;right:-12%;top:var(--gl-top-pos);bottom:-30%;border-radius:999px;background:radial-gradient(ellipse at 50% 70%,rgb(var(--g)) 0%,rgba(var(--g),.9) 45%,rgba(var(--g),0) 75%);filter:blur(var(--gl-blur));opacity:var(--gl-pool);z-index:0;pointer-events:none}
body[data-tab=project] .nd-pg .nd-bt::after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,0) 38%);z-index:1;pointer-events:none}
body[data-tab=project] .nd-pg .nd-bt span{position:relative;z-index:2;text-shadow:0 1px 3px rgba(0,0,0,.6)}
body[data-tab=project] .nd-pg .nd-bt:is(:hover,:focus-visible){filter:brightness(1.15)!important;border-color:rgba(var(--g),.95)!important}

/* final round (28 Oct 04:35) */
/* neon status pill follows Contract status */
body[data-tab=project] .nd-pg .nd-name .nd-tag:is(.cyan,.amber,.violet,.pink){padding:5px 14px;border-radius:999px;font-weight:700;letter-spacing:.06em}
body[data-tab=project] .nd-pg .nd-name .nd-tag.cyan{background:#3ef0ff;color:#04272b;box-shadow:0 0 14px rgba(62,240,255,.55),0 0 2px rgba(62,240,255,.9)}
body[data-tab=project] .nd-pg .nd-name .nd-tag.amber{background:#ffb627;color:#2b1a00;box-shadow:0 0 14px rgba(255,182,39,.55),0 0 2px rgba(255,182,39,.9)}
body[data-tab=project] .nd-pg .nd-name .nd-tag.violet{background:#b98cff;color:#1d0b3a;box-shadow:0 0 14px rgba(185,140,255,.6),0 0 2px rgba(185,140,255,.9)}
body[data-tab=project] .nd-pg .nd-name .nd-tag.pink{background:#ff5fb4;color:#33041d;box-shadow:0 0 14px rgba(255,95,180,.55),0 0 2px rgba(255,95,180,.9)}
/* Contract and Tasks in the Customer portal's rose */
body[data-tab=project] .nd-pg .nd-bxc.c3 .nd-bt:nth-child(1),body[data-tab=project] .nd-pg .nd-bxc.c3 .nd-bt:nth-child(2){--g:240,96,140}
/* five page links under the name, readable */
@media (min-width:1100px){body[data-tab=project] .nd-hl{font-size:13px!important;font-weight:600;gap:0 9px!important;letter-spacing:.02em}body[data-tab=project] .nd-hl a{opacity:.92}body[data-tab=project] .nd-hl a+a:before{margin-right:9px!important}body[data-tab=project] .dz-hd .dz-hs{-webkit-mask-image:none!important;mask-image:none!important}}
/* Customer portal: "+N more" line */
body[data-tab=project] .nd-pg .nd-portal .nd-pmore{font-size:12px;color:#f3d6e1;opacity:.85;margin-top:6px;text-align:left}
/* Budget and spend: reddish tint */
.nd-low .nd-card.lc-b.nd-bud2,.nd-pg .nd-card.lc-b.nd-bud2{--c:228,84,72;--d:32,9,8;--nd-gc:#e4584a}
/* Today's site diary: 14-day chart */
.nd-dch{display:flex;flex-direction:column;flex:1 1 auto;min-height:74px;margin-top:4px}
.nd-dch .bars{flex:1;display:flex;align-items:flex-end;gap:5px;border-bottom:1px solid rgba(255,255,255,.22);padding-top:14px;min-height:40px}
.nd-dch .bars>div{flex:1;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;position:relative;min-width:0}
.nd-dch .bars u{display:block;width:100%;max-width:22px;border-radius:5px 5px 2px 2px;background:linear-gradient(180deg,rgba(255,255,255,.85),rgba(255,255,255,.3))}
.nd-dch .bars .t u{background:linear-gradient(180deg,#ffd29a,#ee7707);box-shadow:0 0 10px rgba(238,119,7,.8)}
.nd-dch .bars .x u{background:linear-gradient(180deg,#ff6b6b,#c62424);box-shadow:0 0 8px rgba(255,60,60,.55)}
.nd-dch .bars b{position:absolute;font-size:11px;font-weight:700;margin-bottom:3px;color:#fff}
.nd-dch .days{display:flex;gap:5px;padding-top:4px}
.nd-dch .days span{flex:1;text-align:center;font-size:10.5px;opacity:.75;min-width:0;white-space:nowrap}
.nd-dch .days span.t{opacity:1;font-weight:700;overflow:visible}
.nd-dch .leg{display:flex;justify-content:space-between;gap:8px;margin-top:5px;font-size:11.5px;opacity:.9;white-space:nowrap}
.nd-dch .leg em{font-style:normal;color:#ff8a8a}
@media (min-width:1100px){body[data-tab=project] .nd-pg .lc-a :is(.nd-ppl,.nd-list){display:none!important}body[data-tab=project] .nd-pg .lc-a .nd-rest{display:flex!important;flex-direction:column;flex:1 1 auto;min-height:0}}

/* fit on every screen: the old worker strip is now the chart inside Today's site diary; header notches shrink on narrow laptops so they stay inside their box */
body[data-tab=project] .nd-pg .nd-wk{display:none!important}
@media (max-width:1099px){
 body[data-tab=project] .nd-pg .lc-a .nd-h{display:flex;align-items:center;gap:8px}
 body[data-tab=project] .nd-pg .lc-a .nd-h .nd-tt{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 body[data-tab=project] .nd-pg .lc-a .nd-h .nd-hp{margin:-4px 0 -4px auto;display:flex;flex:none}
 body[data-tab=project] .nd-pg .lc-a .nd-h .nd-hp .nd-pill{box-sizing:border-box;height:28px;display:inline-flex;align-items:center;gap:6px;padding:0 9px;margin:0;border-radius:14px;background:#0b0b0d;border:1px solid rgba(255,255,255,.18);box-shadow:none;font-size:12px;font-weight:700;letter-spacing:0;text-transform:none;line-height:1;color:#fff;white-space:nowrap}
 body[data-tab=project] .nd-pg .lc-a .nd-h .nd-hp .nd-pill i{width:8px;height:8px;margin:0;border-radius:50%;flex:none;background:#ff453a;box-shadow:0 0 8px #ff453a;animation:ndPulse 1.85s ease-in-out infinite}
}
@media (min-width:1100px) and (max-width:1599px){
 body[data-tab=project] .nd-pg .nd-h{gap:6px;min-width:0}
 body[data-tab=project] .nd-pg .nd-h .nd-hp :is(.nd-pill,.nd-dd){height:26px;padding:0 8px;gap:5px;font-size:11px}
 body[data-tab=project] .nd-pg .nd-h .nd-hp :is(.nd-pill,.nd-dd) i{width:7px;height:7px}
}
@media (min-width:1100px) and (max-width:1399px){
 body[data-tab=project] .nd-pg .nd-h{letter-spacing:.04em}
}
@media (min-width:1100px) and (max-width:1399px){
 body[data-tab=project] .nd-pg .nd-inf .nd-chips>div small{letter-spacing:.03em;font-size:10px}
}
@media (min-width:761px) and (max-width:1099px){body[data-tab=project] .nd-pg .nd-right>.a>.nd-tile.steel{box-sizing:border-box}body[data-tab=project] .nd-pg .nd-right>.a>.nd-tile.steel .nd-lad2{flex:none}}
@media (max-width:1099px){body[data-tab=project] .nd-pg .lc-a .nd-h{letter-spacing:.03em}body[data-tab=project] .nd-pg .lc-a .nd-h>svg,body[data-tab=project] .nd-pg .lc-a .nd-h>.nd-ic{display:none}}
