:root {
  --orange: #e85223;
  --orange-action: #cf441c;
  --orange-dark: #b93b17;
  --orange-soft: #fff0ea;
  --graphite: #434242;
  --ink: #2f2e2e;
  --muted: #706e6c;
  --canvas: #f7f7f5;
  --surface: #ffffff;
  --subtle: #f1f0ed;
  --border: #e3e1dd;
  --success: #2e7d32;
  --warning: #a96800;
  --error: #c62828;
  --info: #365a75;
  --shadow: 0 14px 42px rgba(67, 66, 66, 0.12);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--canvas); color: var(--ink); font-family: "Manrope", "Segoe UI", Arial, sans-serif; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button, select { cursor: pointer; }
img { display: block; max-width: 100%; }

/* Public website */
.public-site { overflow: hidden; background: #fff; }
.public-header { height: 82px; display: flex; align-items: center; gap: 34px; padding: 0 clamp(24px, 5vw, 76px); border-bottom: 1px solid var(--border); background: rgba(255,255,255,.95); position: relative; z-index: 20; }
.brand-link { margin-right: auto; }
.brand-link img { width: 225px; height: 55px; object-fit: contain; object-position: left center; }
.public-nav { display: flex; align-items: center; gap: 30px; }
.public-nav a { font-size: 13px; font-weight: 650; color: #555351; transition: color .2s; }
.public-nav a:hover { color: var(--orange); }
.portal-button { display: inline-flex; align-items: center; gap: 18px; background: var(--graphite); color: white; min-height: 44px; padding: 0 18px; border-radius: 8px; font-size: 13px; font-weight: 700; }
.portal-button:hover { background: var(--ink); }
.portal-button span { color: #ffb39b; }

.hero-section { min-height: calc(100vh - 82px); padding: 92px clamp(24px, 5vw, 76px) 76px; position: relative; display: grid; grid-template-columns: minmax(0, 1.03fr) minmax(430px, .97fr); align-items: center; gap: clamp(40px, 6vw, 100px); background: linear-gradient(135deg, #fff 0%, #fff 52%, #f8f6f2 52%, #f8f6f2 100%); }
.hero-grid { position: absolute; inset: 0; opacity: .22; background-image: linear-gradient(#dcd8d2 1px, transparent 1px), linear-gradient(90deg, #dcd8d2 1px, transparent 1px); background-size: 62px 62px; mask-image: linear-gradient(90deg, transparent 0%, transparent 44%, #000 64%, #000 100%); pointer-events: none; }
.hero-copy, .hero-visual { position: relative; z-index: 2; }
.eyebrow { display: inline-flex; align-items: center; gap: 10px; color: var(--graphite); font-size: 11px; font-weight: 800; letter-spacing: .17em; }
.eyebrow i { width: 28px; height: 3px; background: var(--orange); display: inline-block; }
.eyebrow.light { color: #d9d6d3; }
.hero-copy h1 { margin: 25px 0 24px; font-size: clamp(52px, 5.4vw, 82px); line-height: .99; letter-spacing: -.055em; font-weight: 760; max-width: 820px; }
.hero-copy h1 em, .section-heading h2 em, .project-proof h2 em { color: var(--orange); font-style: normal; }
.hero-copy > p { margin: 0; max-width: 700px; color: var(--muted); font-size: clamp(16px, 1.25vw, 19px); line-height: 1.75; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }
.primary-cta, .secondary-cta, .light-cta { min-height: 50px; display: inline-flex; align-items: center; justify-content: center; gap: 30px; padding: 0 22px; border-radius: 8px; font-size: 13px; font-weight: 750; transition: transform .2s, background .2s; }
.primary-cta { background: var(--orange-action); color: white; }
.primary-cta:hover { background: var(--orange-dark); transform: translateY(-2px); }
.secondary-cta { border: 1px solid #b9b6b1; background: rgba(255,255,255,.75); }
.secondary-cta:hover { border-color: var(--orange); transform: translateY(-2px); }
.hero-trust { margin-top: 35px; display: flex; flex-wrap: wrap; gap: 18px 28px; }
.hero-trust span { font-size: 12px; color: #5f5d5b; font-weight: 650; display: flex; align-items: center; gap: 8px; }
.hero-trust span:before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--orange); }

.hero-visual { min-height: 570px; display: grid; place-items: center; }
.structural-frame { position: absolute; border: 16px solid rgba(67,66,66,.09); }
.frame-a { width: 330px; height: 460px; right: 40px; top: 20px; border-bottom: 0; }
.frame-b { width: 240px; height: 350px; left: 30px; bottom: 10px; border-top-color: transparent; border-right-color: transparent; }
.project-status-card { width: min(100%, 520px); background: rgba(255,255,255,.96); box-shadow: 0 28px 80px rgba(67,66,66,.18); border: 1px solid rgba(255,255,255,.9); padding: 25px; position: relative; z-index: 2; border-radius: 16px; }
.status-card-head { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 5px; border-bottom: 1px solid var(--border); padding-bottom: 18px; }
.status-card-head span { color: var(--orange); font-size: 10px; letter-spacing: .16em; font-weight: 800; }
.status-card-head b { grid-row: 2; font-size: 18px; }
.status-card-head i { grid-column: 2; grid-row: 1 / 3; font-style: normal; color: var(--success); background: #e8f5e9; padding: 8px 10px; border-radius: 99px; font-size: 9px; font-weight: 800; }
.project-progress-visual { display: grid; grid-template-columns: 150px 1fr; min-height: 215px; gap: 22px; align-items: end; padding: 25px 0; }
.progress-number strong { display: block; font-size: 56px; letter-spacing: -.06em; color: var(--orange); }
.progress-number span { color: var(--muted); font-size: 11px; }
.building-bars { height: 170px; display: flex; align-items: end; gap: 9px; border-bottom: 2px solid var(--graphite); }
.building-bars i { flex: 1; background: linear-gradient(180deg, var(--orange) 0 16%, #f3ae96 16% 25%, var(--orange) 25% 41%, #f3ae96 41% 50%, var(--orange) 50%); border-radius: 3px 3px 0 0; }
.status-metrics { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--border); padding-top: 17px; gap: 10px; }
.status-metrics span { font-size: 10px; color: var(--muted); }
.status-metrics b { display: block; color: var(--ink); font-size: 17px; margin-bottom: 3px; }
.hero-rising-line { position: absolute; right: -58px; bottom: 32px; width: 420px; height: 90px; border-top: 7px solid var(--orange); transform: rotate(-10deg); display: flex; justify-content: space-around; padding-top: 12px; color: var(--graphite); font-size: 9px; font-weight: 800; letter-spacing: .16em; }

.stat-band { display: grid; grid-template-columns: repeat(4, 1fr); padding: 0 clamp(24px, 5vw, 76px); background: var(--graphite); color: white; }
.stat-band div { padding: 34px 26px; display: flex; align-items: center; gap: 15px; border-right: 1px solid rgba(255,255,255,.12); }
.stat-band div:last-child { border-right: 0; }
.stat-band b { color: var(--orange); font-size: 25px; }
.stat-band span { font-size: 12px; color: #e4e1de; }

.section-block { padding: 112px clamp(24px, 5vw, 76px); }
.section-heading { display: grid; grid-template-columns: minmax(300px, 1fr) minmax(250px, .55fr); column-gap: 80px; align-items: end; margin-bottom: 55px; }
.section-heading .eyebrow { grid-column: 1 / 3; margin-bottom: 22px; }
.section-heading h2 { margin: 0; font-size: clamp(42px, 4.6vw, 68px); line-height: 1.02; letter-spacing: -.045em; }
.section-heading > p { color: var(--muted); line-height: 1.7; margin: 0 0 5px; font-size: 16px; }
.capability-grid { display: grid; grid-template-columns: repeat(4, 1fr); border: 1px solid var(--border); }
.capability-card { min-height: 310px; padding: 28px; border-right: 1px solid var(--border); display: flex; flex-direction: column; transition: background .25s, transform .25s; }
.capability-card:last-child { border-right: 0; }
.capability-card:hover { background: var(--orange-soft); transform: translateY(-6px); }
.capability-card > span { font-size: 11px; color: var(--orange); font-weight: 800; letter-spacing: .15em; }
.capability-card h3 { font-size: 22px; line-height: 1.22; margin: 35px 0 14px; }
.capability-card p { color: var(--muted); line-height: 1.65; font-size: 13px; margin: 0; }
.capability-card a { margin-top: auto; font-size: 12px; font-weight: 750; color: var(--orange-dark); }

.digital-section { padding: 110px clamp(24px, 5vw, 76px); background: var(--graphite); color: white; display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: clamp(60px, 8vw, 130px); position: relative; overflow: hidden; }
.digital-section:after { content: "M"; position: absolute; right: -60px; bottom: -190px; font-size: 700px; color: rgba(255,255,255,.025); font-weight: 900; line-height: 1; }
.digital-copy { position: relative; z-index: 2; }
.digital-copy h2 { font-size: clamp(42px, 4.3vw, 64px); line-height: 1.02; letter-spacing: -.045em; margin: 24px 0; }
.digital-copy > p { color: #c9c6c3; line-height: 1.7; max-width: 620px; }
.digital-copy ul { list-style: none; padding: 0; margin: 32px 0; border-top: 1px solid rgba(255,255,255,.12); }
.digital-copy li { display: grid; grid-template-columns: 145px 1fr; gap: 18px; padding: 17px 0; border-bottom: 1px solid rgba(255,255,255,.12); }
.digital-copy li b { color: #fff; font-size: 13px; }
.digital-copy li span { color: #bbb8b5; font-size: 12px; line-height: 1.5; }
.light-cta { background: white; color: var(--graphite); }
.light-cta:hover { background: var(--orange-soft); transform: translateY(-2px); }
.digital-dashboard { min-height: 480px; background: #f7f7f5; border-radius: 18px; padding: 18px; display: grid; grid-template-columns: 80px 1fr; position: relative; z-index: 2; box-shadow: 0 32px 90px rgba(0,0,0,.25); transform: perspective(1300px) rotateY(-5deg) rotateX(2deg); }
.mini-sidebar { background: #363535; border-radius: 12px; display: flex; flex-direction: column; align-items: center; padding: 20px 13px; gap: 24px; }
.mini-sidebar img { width: 48px; height: 48px; object-fit: contain; filter: brightness(0) invert(1); }
.mini-sidebar i { width: 30px; height: 8px; background: rgba(255,255,255,.19); border-radius: 4px; }
.mini-sidebar i:first-of-type { background: var(--orange); }
.mini-main { padding: 17px 20px; }
.mini-top { display: flex; justify-content: space-between; align-items: center; color: var(--ink); font-size: 14px; font-weight: 800; }
.mini-top b { font-size: 8px; letter-spacing: .18em; color: var(--success); background: #e8f5e9; border-radius: 99px; padding: 6px 9px; }
.mini-kpis { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin: 28px 0 16px; }
.mini-kpis i, .mini-bottom i { height: 82px; display: block; background: white; border: 1px solid var(--border); border-radius: 9px; }
.mini-kpis i:first-child:after { content: "12"; display: block; color: var(--orange); font-style: normal; font-size: 26px; font-weight: 800; padding: 26px 16px; }
.mini-chart { height: 185px; background: white; border: 1px solid var(--border); border-radius: 9px; display: flex; gap: 12px; align-items: end; padding: 42px 18px 18px; position: relative; }
.mini-chart span { position: absolute; top: 15px; left: 18px; color: var(--muted); font-size: 8px; font-weight: 800; letter-spacing: .15em; }
.mini-chart b { flex: 1; height: 40%; background: #f1b09a; border-radius: 4px 4px 0 0; }
.mini-chart b:nth-of-type(2) { height: 58%; }.mini-chart b:nth-of-type(3) { height: 45%; }.mini-chart b:nth-of-type(4) { height: 78%; background: var(--orange); }.mini-chart b:nth-of-type(5) { height: 68%; }.mini-chart b:nth-of-type(6) { height: 88%; background: var(--orange); }
.mini-bottom { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 16px; }.mini-bottom i { height: 65px; }

.sectors-section { background: var(--canvas); display: grid; grid-template-columns: .8fr 1.2fr; gap: 90px; }
.section-heading.compact { display: block; margin: 0; align-self: start; position: sticky; top: 120px; }
.section-heading.compact .eyebrow { margin-bottom: 22px; }
.sector-list { border-top: 1px solid var(--border); }
.sector-list a { display: grid; grid-template-columns: 50px 1fr 30px; align-items: center; padding: 28px 10px; border-bottom: 1px solid var(--border); transition: background .2s, padding .2s; }
.sector-list a:hover, .sector-list a:focus-visible { background: white; padding-left: 22px; outline: none; }
.sector-list b { font-size: 10px; color: var(--orange); letter-spacing: .1em; }
.sector-list span { font-size: 23px; font-weight: 700; }.sector-list i { font-style: normal; color: var(--orange); }

.principle-list { display: grid; gap: 0; padding-top: 10px; }
.principle-list span { display: grid; grid-template-columns: 38px 1fr; align-items: center; min-height: 66px; border-bottom: 1px solid var(--border); color: #4f4d4b; font-size: 13px; font-weight: 700; }
.principle-list span:last-child { border-bottom: 0; }
.principle-list b { color: var(--orange); font-size: 10px; letter-spacing: .12em; }

.purpose-section { background: var(--graphite); color: white; padding: 112px clamp(24px, 5vw, 76px); }
.purpose-heading { display: grid; grid-template-columns: minmax(300px, 1fr) minmax(260px, .55fr); gap: 70px; align-items: end; margin-bottom: 55px; }
.purpose-heading .eyebrow { grid-column: 1 / 3; }
.purpose-heading h2 { margin: 0; font-size: clamp(42px, 4.6vw, 68px); line-height: 1.02; letter-spacing: -.045em; }
.purpose-heading h2 em { color: #ff8c67; font-style: normal; }
.purpose-heading > p { color: #d1cecb; line-height: 1.75; margin: 0; }
.purpose-grid { display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid rgba(255,255,255,.14); }
.purpose-grid article { padding: 34px; min-height: 310px; border-right: 1px solid rgba(255,255,255,.14); }
.purpose-grid article:last-child { border-right: 0; }
.purpose-grid article > span { color: #ff8c67; font-size: 9px; font-weight: 850; letter-spacing: .16em; }
.purpose-grid h3 { font-size: 26px; line-height: 1.2; margin: 42px 0 18px; }
.purpose-grid p { color: #c9c6c3; font-size: 13px; line-height: 1.75; margin: 0; }

.scope-section { background: #333232; color: white; padding: 112px clamp(24px, 5vw, 76px); }
.scope-section .section-heading h2 { color: white; }
.scope-section .section-heading > p { color: #c9c6c3; }
.scope-grid { display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid rgba(255,255,255,.14); }
.scope-grid article { min-height: 340px; padding: 30px; border-right: 1px solid rgba(255,255,255,.14); border-bottom: 1px solid rgba(255,255,255,.14); display: flex; flex-direction: column; scroll-margin-top: 30px; }
.scope-grid article:nth-child(3n) { border-right: 0; }
.scope-grid article:nth-child(n+4) { border-bottom: 0; }
.scope-grid article > span { color: #ff8c67; font-size: 10px; font-weight: 850; letter-spacing: .15em; }
.scope-grid article > p { color: #aaa7a4; font-size: 11px; margin: 24px 0 6px; }
.scope-grid h3 { font-size: 24px; line-height: 1.2; margin: 0 0 18px; }
.scope-grid article > div { color: #cbc8c5; font-size: 13px; line-height: 1.7; }
.scope-grid a { margin-top: auto; padding-top: 24px; color: #ff8c67; font-size: 11px; font-weight: 750; }

.website-projects { background: var(--graphite); color: white; padding: 112px clamp(24px, 5vw, 76px); }
.project-index-head { display: grid; grid-template-columns: minmax(300px, 1fr) minmax(260px, .55fr); gap: 70px; align-items: end; margin-bottom: 55px; }
.project-index-head .eyebrow { grid-column: 1 / 3; }
.project-index-head h2 { margin: 0; font-size: clamp(42px, 4.6vw, 68px); line-height: 1.02; letter-spacing: -.045em; }
.project-index-head h2 em { color: #ff8c67; font-style: normal; }
.project-index-head > p { color: #c9c6c3; line-height: 1.7; }
.website-project-grid { display: grid; gap: 24px; }
.website-project-grid article { display: grid; grid-template-columns: 1fr; background: #383737; border: 1px solid rgba(255,255,255,.14); overflow: hidden; }
.website-project-grid article.has-image { grid-template-columns: 1.15fr .85fr; }
.website-project-image { position: relative; min-height: 480px; }
.website-project-image img { object-fit: cover; }
.website-project-copy { padding: clamp(36px, 5vw, 72px); align-self: center; }
.website-project-copy > span { color: #ff8c67; font-size: 9px; font-weight: 850; letter-spacing: .14em; }
.website-project-copy h3 { font-size: clamp(36px, 4vw, 62px); line-height: 1; letter-spacing: -.045em; margin: 22px 0 10px; }
.website-project-copy > p { color: #c9c6c3; font-size: 14px; line-height: 1.75; }
.website-project-copy .project-location { color: #ffab90; font-size: 12px; font-weight: 700; }
.contact-section small { display: block; color: var(--muted); font-size: 10px; margin-top: 10px; }

.website-publish-box { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin: 18px 0; padding: 16px; border: 1px solid #f0b6a3; background: var(--orange-soft); border-radius: 10px; }
.website-publish-box > div span, .website-publish-box > div b, .website-publish-box > div small { display: block; }
.website-publish-box > div span { color: var(--orange-dark); font-size: 8px; font-weight: 850; letter-spacing: .14em; }
.website-publish-box > div b { font-size: 11px; margin: 6px 0 3px; }
.website-publish-box > div small { color: var(--muted); font-size: 8px; }
.publish-switch { display: flex; align-items: center; gap: 8px; padding: 9px 12px; background: white; border: 1px solid var(--border); border-radius: 8px; white-space: nowrap; font-size: 9px; font-weight: 750; }
.publish-switch input { accent-color: var(--orange); }

.leadership-section { padding: 112px clamp(24px, 5vw, 76px); display: grid; grid-template-columns: .72fr 1.28fr; gap: clamp(55px, 7vw, 110px); background: white; }
.leadership-intro { align-self: center; }.leadership-intro h2 { margin: 24px 0; font-size: clamp(42px, 4.3vw, 66px); line-height: 1.02; letter-spacing: -.048em; }.leadership-intro h2 em { color: var(--orange); font-style: normal; }.leadership-intro > p { color: var(--muted); font-size: 15px; line-height: 1.75; max-width: 600px; }.company-facts { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--border); margin-top: 34px; padding-top: 22px; gap: 16px; }.company-facts span { color: var(--muted); font-size: 9px; line-height: 1.45; }.company-facts b { display: block; color: var(--ink); font-size: 18px; margin-bottom: 5px; }
.founder-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; align-items: start; }.founder-card { border: 1px solid var(--border); background: var(--canvas); border-radius: 14px; overflow: hidden; }.founder-photo { aspect-ratio: 4 / 4.7; background: #eceae7; overflow: hidden; position: relative; }.founder-photo:after { content: ""; position: absolute; inset: auto 0 0; height: 30%; background: linear-gradient(transparent, rgba(47,46,46,.13)); pointer-events: none; }.founder-photo img { width: 100%; height: 100%; object-fit: cover; object-position: center top; }.founder-card:first-child .founder-photo img { object-position: center 13%; }.founder-card > div:last-child { padding: 22px; }.founder-card span { color: var(--orange); font-size: 8px; font-weight: 850; letter-spacing: .15em; }.founder-card h3 { margin: 10px 0 9px; font-size: 23px; letter-spacing: -.025em; }.founder-card p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.65; }

.featured-project { display: grid; grid-template-columns: 1.15fr .85fr; min-height: 660px; background: var(--graphite); color: white; }.featured-project-image { position: relative; overflow: hidden; min-height: 600px; }.featured-project-image:after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, transparent 60%, rgba(67,66,66,.32)); pointer-events: none; }.featured-project-image img { width: 100%; height: 100%; object-fit: cover; }.featured-project-image > span { position: absolute; left: clamp(24px, 5vw, 70px); bottom: 35px; z-index: 2; color: white; background: var(--orange-action); border-radius: 6px; padding: 11px 14px; font-size: 9px; font-weight: 850; letter-spacing: .12em; }.featured-project-copy { padding: clamp(60px, 7vw, 110px) clamp(30px, 5vw, 75px); align-self: center; }.featured-project-copy h2 { margin: 25px 0 10px; font-size: clamp(43px, 4.6vw, 68px); line-height: 1; letter-spacing: -.05em; }.featured-project-copy .project-location { color: #f5a88e; font-size: 12px; font-weight: 700; line-height: 1.55; margin: 0 0 26px; }.featured-project-copy > p:not(.project-location) { color: #c8c5c2; font-size: 14px; line-height: 1.75; }.project-facts { border-top: 1px solid rgba(255,255,255,.14); margin-top: 34px; }.project-facts div { padding: 16px 0; border-bottom: 1px solid rgba(255,255,255,.14); }.project-facts span, .project-facts b { display: block; }.project-facts span { color: #9e9a97; font-size: 8px; font-weight: 800; letter-spacing: .12em; }.project-facts b { color: white; font-size: 12px; margin-top: 6px; }

.project-proof { background: #2f2e2e; color: white; padding: 110px clamp(24px, 5vw, 76px); display: grid; grid-template-columns: .7fr 1.3fr; gap: 80px; }
.project-proof h2 { margin: 20px 0 0; font-size: clamp(44px, 5vw, 70px); line-height: 1.02; letter-spacing: -.05em; }
.proof-steps { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid rgba(255,255,255,.13); }
.proof-steps article { min-height: 210px; padding: 28px; border-right: 1px solid rgba(255,255,255,.13); border-bottom: 1px solid rgba(255,255,255,.13); }
.proof-steps article:nth-child(2n) { border-right: 0; }.proof-steps article:nth-child(n+3) { border-bottom: 0; }
.proof-steps b { color: var(--orange); font-size: 11px; letter-spacing: .16em; }.proof-steps h3 { font-size: 22px; margin: 30px 0 10px; }.proof-steps p { color: #bdbab7; line-height: 1.65; font-size: 13px; }

.contact-section { padding: 95px clamp(24px, 5vw, 76px); display: grid; grid-template-columns: 1fr 1fr; align-items: end; gap: 80px; border-bottom: 1px solid var(--border); }
.contact-section h2 { font-size: clamp(45px, 5vw, 72px); margin: 20px 0 0; letter-spacing: -.05em; }.contact-section p { color: var(--muted); }.contact-section a { display: inline-block; margin-top: 15px; font-weight: 750; color: var(--orange-dark); }
.public-footer { padding: 55px clamp(24px, 5vw, 76px) 30px; display: grid; grid-template-columns: 240px 1fr auto; gap: 40px; align-items: center; background: white; }
.public-footer img { width: 220px; }.public-footer p { color: var(--muted); max-width: 430px; font-size: 13px; }.public-footer > div { display: flex; gap: 22px; font-size: 12px; font-weight: 650; }.public-footer > span { grid-column: 1 / 4; border-top: 1px solid var(--border); padding-top: 22px; color: #908e8b; font-size: 10px; }

/* ERP shell */
.erp-app { min-height: 100vh; background: var(--canvas); display: grid; grid-template-columns: 260px 1fr; }
.erp-sidebar { position: fixed; inset: 0 auto 0 0; width: 260px; background: #373636; color: white; display: flex; flex-direction: column; z-index: 40; }
.erp-brand { min-height: 86px; padding: 12px 18px; display: flex; align-items: center; background: white; border-right: 1px solid var(--border); overflow: hidden; }
.erp-brand img { width: 222px; height: 58px; object-fit: contain; object-position: left center; }
.sidebar-close { display: none; border: 0; background: transparent; font-size: 28px; }
.workspace-label { padding: 20px 22px 11px; color: #aaa6a2; font-size: 9px; font-weight: 800; letter-spacing: .18em; }
.erp-nav { padding: 0 12px; overflow-y: auto; }
.erp-nav a, .sidebar-admin a { min-height: 42px; padding: 7px 10px; border-radius: 7px; display: flex; align-items: center; gap: 11px; font-size: 12px; font-weight: 590; color: #d6d3d0; margin-bottom: 2px; }
.erp-nav a:hover, .erp-nav a.active { background: rgba(255,255,255,.10); color: white; }.erp-nav a.active .nav-icon { background: var(--orange); color: white; }
.nav-icon { width: 27px; height: 27px; border-radius: 7px; display: grid; place-items: center; background: rgba(255,255,255,.10); color: #ccc8c5; font-size: 8px; font-weight: 800; letter-spacing: .05em; flex: 0 0 auto; }
.sidebar-admin { margin-top: auto; padding: 12px; border-top: 1px solid rgba(255,255,255,.10); }.sidebar-admin a { margin: 0; background: rgba(232,82,35,.13); color: white; }.sidebar-admin .nav-icon { background: var(--orange); color: white; }.sidebar-admin b, .sidebar-admin small { display: block; }.sidebar-admin small { color: #aba7a3; font-size: 9px; margin-top: 2px; font-weight: 500; }
.erp-main { grid-column: 2; min-width: 0; }
.erp-topbar { min-height: 86px; background: white; border-bottom: 1px solid var(--border); padding: 13px 26px; display: flex; align-items: center; justify-content: space-between; gap: 20px; position: sticky; top: 0; z-index: 25; }
.erp-title-wrap { display: flex; align-items: center; gap: 12px; }.erp-eyebrow { color: var(--orange); font-size: 8px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }.erp-topbar h1 { font-size: 22px; margin: 4px 0 0; letter-spacing: -.02em; }
.menu-button { display: none; border: 0; background: var(--subtle); border-radius: 8px; width: 38px; height: 38px; }
.topbar-actions { display: flex; align-items: center; gap: 10px; }.project-switcher { display: grid; gap: 2px; padding: 5px 12px; border: 1px solid var(--border); border-radius: 8px; min-width: 265px; }.project-switcher span { font-size: 8px; color: var(--muted); text-transform: uppercase; letter-spacing: .1em; font-weight: 750; }.project-switcher select { border: 0; outline: 0; background: white; color: var(--ink); font-size: 11px; font-weight: 650; }
.search-button, .notification-button { width: 38px; height: 38px; border: 1px solid var(--border); background: white; border-radius: 8px; display: grid; place-items: center; position: relative; color: var(--graphite); }.notification-button { color: var(--orange); font-size: 9px; }.notification-button span { position: absolute; right: -5px; top: -6px; background: var(--error); color: white; width: 18px; height: 18px; border-radius: 50%; font-size: 8px; display: grid; place-items: center; }
.user-chip { display: flex; align-items: center; gap: 9px; margin-left: 4px; }.user-chip > b { width: 36px; height: 36px; background: var(--graphite); color: white; border-radius: 50%; display: grid; place-items: center; font-size: 10px; }.user-chip span { font-size: 11px; font-weight: 700; }.user-chip small { display: block; color: var(--muted); font-size: 8px; margin-top: 2px; font-weight: 500; }
.erp-content { padding: 24px 26px 44px; }
.sidebar-backdrop { display: none; }

/* Shared ERP components */
.page-actions { display: flex; justify-content: space-between; align-items: center; gap: 18px; margin-bottom: 18px; }.page-actions p { color: var(--muted); margin: 0; font-size: 12px; }.button-row { display: flex; flex-wrap: wrap; gap: 8px; }.btn { border: 1px solid var(--border); background: white; min-height: 38px; padding: 0 14px; border-radius: 8px; color: var(--ink); font-size: 11px; font-weight: 700; display: inline-flex; align-items: center; gap: 8px; }.btn:hover { border-color: #bbb7b2; }.btn.primary { color: white; background: var(--orange-action); border-color: var(--orange-action); }.btn.primary:hover { background: var(--orange-dark); }.btn.dark { color: white; background: var(--graphite); border-color: var(--graphite); }.btn.ghost { background: transparent; }
.kpi-grid { display: grid; grid-template-columns: repeat(5, minmax(145px, 1fr)); gap: 12px; margin-bottom: 16px; }.kpi-card { background: white; border: 1px solid var(--border); border-radius: 11px; padding: 16px; min-height: 115px; position: relative; }.kpi-card .kpi-label { color: var(--muted); font-size: 9px; font-weight: 750; text-transform: uppercase; letter-spacing: .08em; }.kpi-card strong { display: block; font-size: 27px; margin-top: 13px; letter-spacing: -.04em; }.kpi-card .kpi-trend { font-size: 9px; color: var(--success); margin-top: 6px; }.kpi-card .kpi-trend.warn { color: var(--warning); }.kpi-card .kpi-trend.alert { color: var(--error); }.kpi-icon { position: absolute; top: 14px; right: 14px; width: 30px; height: 30px; border-radius: 8px; background: var(--orange-soft); color: var(--orange); display: grid; place-items: center; font-size: 8px; font-weight: 800; }
.dashboard-grid { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(300px, .7fr); gap: 16px; margin-bottom: 16px; }.dashboard-grid.equal { grid-template-columns: 1fr 1fr; }.panel { background: white; border: 1px solid var(--border); border-radius: 12px; padding: 18px; min-width: 0; }.panel-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 14px; margin-bottom: 17px; }.panel-head h2, .panel-head h3 { font-size: 15px; margin: 0; }.panel-head p { font-size: 10px; color: var(--muted); margin: 4px 0 0; }.panel-head a, .text-button { color: var(--orange-dark); border: 0; background: none; padding: 0; font-size: 10px; font-weight: 750; }
.progress-track { height: 8px; border-radius: 99px; background: #e8e6e2; overflow: hidden; }.progress-fill { height: 100%; background: var(--orange); border-radius: inherit; }.progress-fill.good { background: var(--success); }.progress-fill.warn { background: var(--warning); }.progress-fill.dark { background: var(--graphite); }
.status-pill { display: inline-flex; align-items: center; min-height: 23px; padding: 0 8px; border-radius: 99px; font-size: 8px; font-weight: 800; letter-spacing: .04em; background: var(--subtle); color: var(--muted); white-space: nowrap; }.status-pill.success { background: #e8f5e9; color: var(--success); }.status-pill.warning { background: #fff4df; color: var(--warning); }.status-pill.danger { background: #fdeaea; color: var(--error); }.status-pill.info { background: #e9f1f6; color: var(--info); }.status-pill.orange { background: var(--orange-soft); color: var(--orange-dark); }
.data-table { width: 100%; border-collapse: collapse; font-size: 10px; }.data-table th { text-align: left; color: var(--muted); font-size: 8px; text-transform: uppercase; letter-spacing: .08em; padding: 9px 8px; border-bottom: 1px solid var(--border); }.data-table td { padding: 11px 8px; border-bottom: 1px solid #efeeeb; vertical-align: middle; }.data-table tr:last-child td { border-bottom: 0; }.data-table b { font-weight: 700; }.data-table small { display: block; color: var(--muted); margin-top: 3px; }.table-progress { min-width: 90px; }.table-progress span { display: flex; justify-content: space-between; font-size: 8px; margin-bottom: 5px; }
.empty-state { min-height: 160px; display: grid; place-items: center; text-align: center; color: var(--muted); }
.form-field { display: grid; gap: 6px; }.form-field label { color: var(--muted); font-size: 9px; font-weight: 700; }.form-field input, .form-field select, .form-field textarea { width: 100%; min-height: 40px; border: 1px solid var(--border); border-radius: 8px; background: white; padding: 9px 11px; color: var(--ink); font-size: 11px; outline: none; }.form-field textarea { min-height: 84px; resize: vertical; }.form-field input:focus, .form-field select:focus, .form-field textarea:focus { border-color: var(--orange); box-shadow: 0 0 0 3px rgba(232,82,35,.12); }
.toggle { width: 39px; height: 22px; border-radius: 99px; background: #ccc9c5; border: 0; padding: 3px; transition: background .2s; }.toggle:after { content: ""; width: 16px; height: 16px; display: block; background: white; border-radius: 50%; box-shadow: 0 1px 3px rgba(0,0,0,.22); transition: transform .2s; }.toggle.on { background: var(--orange); }.toggle.on:after { transform: translateX(17px); }

.stage-list { display: grid; gap: 14px; }.stage-row { display: grid; grid-template-columns: minmax(170px, .55fr) 1fr; align-items: center; gap: 22px; }.stage-row b { display: block; font-size: 11px; }.stage-row small { display: block; color: var(--muted); font-size: 8px; margin-top: 3px; }.stage-progress > span { display: block; text-align: right; font-size: 9px; color: var(--muted); margin-bottom: 5px; }
.alert-list { display: grid; gap: 7px; }.alert-item { display: grid; grid-template-columns: 34px 1fr 28px; gap: 10px; align-items: center; padding: 10px; border-radius: 8px; background: var(--canvas); border: 1px solid #efeeeb; }.alert-symbol { width: 34px; height: 34px; border-radius: 8px; display: grid; place-items: center; background: var(--subtle); color: var(--muted); font-size: 8px; font-weight: 800; }.alert-symbol.danger { background: #fdeaea; color: var(--error); }.alert-symbol.warning { background: #fff4df; color: var(--warning); }.alert-symbol.info { background: #e9f1f6; color: var(--info); }.alert-item b { display: block; font-size: 10px; }.alert-item small { display: block; color: var(--muted); font-size: 8px; line-height: 1.35; margin-top: 3px; }.alert-item button { width: 26px; height: 26px; border: 0; border-radius: 7px; background: white; color: var(--success); font-weight: 800; }
.task-list { display: grid; gap: 7px; }.task-item { display: grid; grid-template-columns: 24px 1fr auto; align-items: center; gap: 10px; padding: 10px; border: 1px solid #efeeeb; background: var(--canvas); border-radius: 8px; cursor: pointer; }.task-item input { position: absolute; opacity: 0; }.checkmark { width: 22px; height: 22px; border-radius: 6px; border: 1px solid #c9c6c2; color: transparent; display: grid; place-items: center; font-size: 10px; font-weight: 800; }.task-item.done .checkmark { color: white; background: var(--success); border-color: var(--success); }.task-copy b { display: block; font-size: 10px; }.task-copy small { display: block; color: var(--muted); font-size: 8px; margin-top: 4px; }.task-item.done .task-copy { opacity: .55; text-decoration: line-through; }
.daily-chart { height: 195px; display: grid; grid-template-columns: repeat(7, 1fr); align-items: end; gap: 9px; border-bottom: 1px solid var(--border); padding: 16px 8px 0; background-image: repeating-linear-gradient(to bottom, transparent 0, transparent 48px, #efeeeb 49px); }.daily-chart div { height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: end; gap: 5px; }.daily-chart span { font-size: 7px; color: var(--muted); }.daily-chart i { width: min(28px, 70%); background: var(--orange); border-radius: 4px 4px 0 0; min-height: 10px; }.daily-chart small { height: 18px; font-size: 8px; color: var(--muted); }.chart-legend { display: flex; gap: 16px; margin-top: 12px; font-size: 8px; color: var(--muted); }.chart-legend span { display: flex; gap: 6px; align-items: center; }.chart-legend i { width: 8px; height: 8px; display: inline-block; background: #e8e6e2; border-radius: 2px; }.chart-legend i.actual { background: var(--orange); }
.table-wrap { overflow-x: auto; }.manpower-list { display: grid; gap: 16px; }.manpower-list > div { display: grid; gap: 6px; }.manpower-list span { display: flex; justify-content: space-between; align-items: center; }.manpower-list b { font-size: 10px; }.manpower-list small { color: var(--muted); font-size: 8px; }.manpower-footer { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--border); }.manpower-footer div { text-align: center; }.manpower-footer b { display: block; font-size: 16px; }.manpower-footer span { color: var(--muted); font-size: 8px; }
.finance-summary { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; }.finance-summary div { padding: 12px; background: var(--canvas); border-radius: 8px; border: 1px solid #efeeeb; }.finance-summary div.emphasis { background: var(--orange-soft); border-color: #f5c5b5; }.finance-summary span { display: block; color: var(--muted); font-size: 8px; }.finance-summary b { display: block; font-size: 16px; margin-top: 9px; }.cashflow-track { height: 32px; display: flex; overflow: hidden; border-radius: 7px; margin-top: 16px; }.cashflow-track span { display: flex; align-items: center; padding-left: 9px; font-size: 7px; font-weight: 750; color: white; background: var(--graphite); }.cashflow-track span:nth-child(2) { background: var(--orange); }.cashflow-track span:nth-child(3) { background: #bcb8b4; color: var(--ink); }
.report-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }.report-grid button { display: grid; grid-template-columns: 32px 1fr; text-align: left; align-items: center; gap: 9px; border: 1px solid var(--border); background: var(--canvas); border-radius: 8px; padding: 10px; color: var(--ink); }.report-grid button:hover { border-color: var(--orange); }.report-grid button > span { grid-row: 1 / 3; width: 32px; height: 32px; display: grid; place-items: center; border-radius: 8px; background: white; color: var(--orange); font-size: 8px; font-weight: 800; }.report-grid b { font-size: 9px; }.report-grid small { color: var(--muted); font-size: 7px; }

.project-overview-card { display: grid; grid-template-columns: 1.25fr .75fr; background: var(--graphite); color: white; border-radius: 13px; overflow: hidden; margin-bottom: 16px; }.project-overview-main { padding: 22px; }.project-overview-main h2 { font-size: 25px; margin: 13px 0 5px; }.project-overview-main > p { color: #c5c1be; margin: 0; font-size: 11px; }.project-overall-progress { display: grid; grid-template-columns: 175px 1fr; gap: 24px; align-items: end; margin-top: 24px; }.project-overall-progress strong { display: block; font-size: 44px; color: var(--orange); letter-spacing: -.05em; }.project-overall-progress span, .project-overall-progress small { display: block; font-size: 8px; color: #c5c1be; }.project-overall-progress .progress-track { margin: 8px 0; background: rgba(255,255,255,.16); }.project-overview-stats { background: #302f2f; display: grid; grid-template-columns: 1fr 1fr; }.project-overview-stats div { padding: 20px; border-right: 1px solid rgba(255,255,255,.08); border-bottom: 1px solid rgba(255,255,255,.08); }.project-overview-stats div:nth-child(2n) { border-right: 0; }.project-overview-stats div:nth-child(n+3) { border-bottom: 0; }.project-overview-stats span { display: block; color: #aaa6a3; font-size: 8px; text-transform: uppercase; letter-spacing: .08em; }.project-overview-stats b { display: block; font-size: 16px; margin-top: 9px; }
.planning-toolbar { display: flex; justify-content: space-between; gap: 15px; align-items: center; margin-bottom: 12px; }.view-tabs { display: inline-flex; gap: 4px; padding: 4px; background: #eceae6; border-radius: 9px; }.view-tabs button { border: 0; background: transparent; min-height: 32px; padding: 0 13px; border-radius: 7px; font-size: 10px; font-weight: 700; color: var(--muted); }.view-tabs button.active { background: white; color: var(--ink); box-shadow: 0 1px 4px rgba(0,0,0,.08); }.plan-view { margin-bottom: 16px; }.count-button { border: 0; background: var(--subtle); color: var(--graphite); width: 30px; height: 25px; border-radius: 7px; font-size: 9px; font-weight: 750; }
.floor-matrix { min-width: 860px; border: 1px solid var(--border); border-radius: 9px; overflow: hidden; }.matrix-head, .matrix-row { display: grid; grid-template-columns: 150px repeat(10, 1fr); }.matrix-head { background: var(--graphite); color: white; }.matrix-head > *, .matrix-row > * { min-height: 43px; display: grid; place-items: center; border-right: 1px solid rgba(227,225,221,.8); }.matrix-head b { justify-items: start; padding-left: 13px; font-size: 8px; }.matrix-head span { font-size: 8px; font-weight: 750; }.matrix-row { border-bottom: 1px solid var(--border); }.matrix-row:last-child { border-bottom: 0; }.matrix-row b { place-items: center start; padding-left: 13px; font-size: 9px; background: var(--canvas); }.matrix-row span { position: relative; overflow: hidden; font-size: 7px; font-weight: 700; color: var(--muted); }.matrix-row span i { position: absolute; bottom: 0; left: 0; right: 0; background: #e8e6e2; opacity: .75; z-index: 0; }.matrix-row span.complete i { background: #d8efda; }.matrix-row span.active i { background: #f6caba; }.matrix-row span { isolation: isolate; }.matrix-row span i { z-index: -1; }.matrix-legend { display: flex; flex-wrap: wrap; gap: 15px; margin-top: 13px; font-size: 8px; color: var(--muted); }.matrix-legend span { display: flex; align-items: center; gap: 6px; }.matrix-legend i { width: 9px; height: 9px; border-radius: 2px; background: #e8e6e2; }.matrix-legend i.complete { background: #d8efda; }.matrix-legend i.active { background: #f6caba; }
.lookahead-grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 16px; margin-bottom: 16px; }.lookahead-list { display: grid; }.lookahead-list > div { display: grid; grid-template-columns: 55px 1fr auto; gap: 12px; align-items: center; padding: 10px 0; border-bottom: 1px solid #efeeeb; }.lookahead-list > div:last-child { border-bottom: 0; }.lookahead-list time { font-size: 8px; color: var(--orange); font-weight: 800; }.lookahead-list b, .constraint-list strong { display: block; font-size: 10px; }.lookahead-list small, .constraint-list small { color: var(--muted); font-size: 8px; display: block; margin-top: 3px; }.constraint-list { display: grid; gap: 8px; }.constraint-list > div { display: grid; grid-template-columns: 34px 1fr auto; align-items: center; gap: 9px; padding: 10px; border: 1px solid #efeeeb; background: var(--canvas); border-radius: 8px; }.constraint-list > div > b { width: 31px; height: 31px; display: grid; place-items: center; background: white; border-radius: 7px; color: var(--orange); font-size: 8px; }
.quantity-list { display: grid; gap: 15px; }.quantity-list > div { display: grid; grid-template-columns: 1fr auto; gap: 6px 15px; }.quantity-list > div > span b { display: block; font-size: 10px; }.quantity-list > div > span small { color: var(--muted); font-size: 8px; }.quantity-list > div > strong { font-size: 10px; }.quantity-list .progress-track { grid-column: 1 / 3; }.review-cadence { display: grid; gap: 9px; }.review-cadence > div { display: grid; grid-template-columns: 58px 1fr; gap: 12px; align-items: center; padding: 11px; border: 1px solid #efeeeb; border-radius: 8px; background: var(--canvas); }.review-cadence time { font-size: 8px; color: var(--muted); line-height: 1.5; border-right: 1px solid var(--border); }.review-cadence time b { color: var(--orange); font-size: 11px; }.review-cadence strong { display: block; font-size: 10px; }.review-cadence small { color: var(--muted); font-size: 8px; display: block; margin-top: 3px; }

/* OCR bills */
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.ocr-status-strip { min-height: 64px; display: grid; grid-template-columns: 38px 1fr auto; align-items: center; gap: 12px; background: #353434; color: white; padding: 11px 16px; border-radius: 11px; margin-bottom: 16px; }.ocr-status-strip > div b, .ocr-status-strip > div small { display: block; }.ocr-status-strip > div b { font-size: 10px; }.ocr-status-strip > div small { font-size: 8px; color: #bcb8b5; margin-top: 4px; }.ocr-pulse { width: 36px; height: 36px; border-radius: 9px; display: grid; place-items: center; background: var(--orange); font-size: 9px; font-weight: 900; box-shadow: 0 0 0 5px rgba(232,82,35,.12); }
.ocr-workspace { display: grid; grid-template-columns: minmax(360px, .92fr) minmax(420px, 1.08fr); gap: 16px; margin-bottom: 16px; }.upload-panel, .extraction-panel { min-height: 650px; }.bill-preview { width: 100%; height: 530px; border: 1px solid var(--border); border-radius: 9px; background: #e9e7e3; padding: 28px; position: relative; overflow: hidden; }.bill-preview:hover { border-color: var(--orange); }.bill-paper { width: min(100%, 390px); height: 100%; margin: auto; background: white; box-shadow: 0 13px 35px rgba(67,66,66,.17); padding: 27px; color: var(--ink); text-align: left; position: relative; z-index: 1; }.bill-logo { float: left; width: 42px; height: 42px; display: grid; place-items: center; background: var(--orange); color: white; font-weight: 850; font-size: 12px; margin-right: 11px; }.bill-vendor b, .bill-vendor span { display: block; }.bill-vendor b { font-size: 11px; padding-top: 5px; }.bill-vendor span { color: var(--muted); font-size: 8px; margin-top: 4px; }.bill-rule { height: 2px; clear: both; background: var(--graphite); margin: 24px 0 18px; }.bill-meta { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }.bill-meta span { color: var(--muted); font-size: 7px; }.bill-meta b { display: block; color: var(--ink); font-size: 9px; margin-top: 4px; }.bill-table { display: grid; grid-template-columns: 1.5fr .5fr .65fr; margin-top: 28px; font-size: 8px; }.bill-table > * { padding: 9px 6px; border-bottom: 1px solid var(--border); }.bill-table b { color: white; background: var(--graphite); }.bill-table span { color: var(--muted); }.bill-total { margin: 20px 0 0 auto; width: 175px; display: grid; grid-template-columns: 1fr auto; gap: 9px; font-size: 8px; }.bill-total strong { color: var(--orange); font-size: 11px; border-top: 1px solid var(--orange); padding-top: 8px; }.scan-corner { position: absolute; width: 35px; height: 35px; border-color: var(--orange); z-index: 3; }.scan-corner.top-left { left: 15px; top: 15px; border-left: 3px solid var(--orange); border-top: 3px solid var(--orange); }.scan-corner.top-right { right: 15px; top: 15px; border-right: 3px solid var(--orange); border-top: 3px solid var(--orange); }.scan-corner.bottom-left { left: 15px; bottom: 15px; border-left: 3px solid var(--orange); border-bottom: 3px solid var(--orange); }.scan-corner.bottom-right { right: 15px; bottom: 15px; border-right: 3px solid var(--orange); border-bottom: 3px solid var(--orange); }.scan-line { position: absolute; left: 28px; right: 28px; top: 43%; height: 2px; background: linear-gradient(90deg, transparent, var(--orange), transparent); box-shadow: 0 0 14px var(--orange); z-index: 3; }.document-controls { display: flex; justify-content: space-between; align-items: center; margin-top: 12px; color: var(--muted); font-size: 8px; }.document-controls > div { display: flex; align-items: center; border: 1px solid var(--border); border-radius: 7px; overflow: hidden; }.document-controls button, .document-controls b { height: 28px; min-width: 30px; border: 0; background: white; display: grid; place-items: center; font-size: 9px; }.document-controls b { min-width: 47px; border-left: 1px solid var(--border); border-right: 1px solid var(--border); }
.confidence-score { text-align: right; color: var(--muted); font-size: 8px; }.confidence-score b { display: block; color: var(--success); font-size: 17px; }.extracted-form { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }.extracted-form .full { grid-column: 1 / 3; }.extracted-form input { background: var(--canvas); }.extracted-form .total-field input { color: var(--orange-dark); font-size: 16px; font-weight: 800; }.control-checks { display: grid; gap: 8px; margin-top: 18px; }.control-checks > div { display: grid; grid-template-columns: 35px 1fr 27px; gap: 10px; align-items: center; padding: 10px; border: 1px solid #dfeadf; background: #f5faf5; border-radius: 8px; }.control-checks > div > span { width: 32px; height: 32px; display: grid; place-items: center; background: white; color: var(--success); font-size: 7px; font-weight: 900; border-radius: 7px; }.control-checks p { margin: 0; }.control-checks b, .control-checks small { display: block; }.control-checks b { font-size: 9px; }.control-checks small { color: var(--muted); font-size: 7px; margin-top: 3px; }.control-checks i { width: 24px; height: 24px; display: grid; place-items: center; border-radius: 50%; background: var(--success); color: white; font-style: normal; font-size: 9px; }.approve-bill { width: 100%; justify-content: space-between; margin-top: 18px; }.workflow-panel { margin-bottom: 16px; }.workflow-steps { display: grid; grid-template-columns: repeat(5, 1fr); position: relative; }.workflow-steps:before { content: ""; position: absolute; left: 9%; right: 9%; top: 17px; height: 2px; background: var(--border); }.workflow-steps > div { text-align: center; z-index: 1; }.workflow-steps > div > span { width: 34px; height: 34px; margin: 0 auto 8px; border-radius: 50%; display: grid; place-items: center; color: var(--muted); background: var(--subtle); border: 3px solid white; box-shadow: 0 0 0 1px var(--border); font-size: 8px; font-weight: 800; }.workflow-steps > div.complete > span { background: var(--orange); color: white; box-shadow: 0 0 0 1px var(--orange); }.workflow-steps b, .workflow-steps small { display: block; }.workflow-steps b { font-size: 9px; }.workflow-steps small { color: var(--muted); font-size: 7px; margin-top: 3px; }

/* Super Admin Studio */
.admin-heading > div:first-child { max-width: 700px; }.admin-heading h2 { margin: 4px 0 5px; font-size: 25px; letter-spacing: -.035em; }.admin-heading > div > span { color: var(--muted); font-size: 10px; }.admin-kicker { color: var(--orange) !important; font-size: 8px !important; font-weight: 850; letter-spacing: .15em; }.admin-layout { display: grid; grid-template-columns: 210px minmax(0, 1fr); gap: 16px; }.admin-tabs { background: var(--graphite); padding: 12px; border-radius: 12px; align-self: start; position: sticky; top: 110px; }.admin-health { padding: 12px 9px 16px; margin-bottom: 8px; border-bottom: 1px solid rgba(255,255,255,.11); }.admin-health span, .admin-health b, .admin-health small { display: block; }.admin-health span { color: #aaa6a3; font-size: 7px; text-transform: uppercase; letter-spacing: .12em; }.admin-health b { color: white; font-size: 8px; margin: 8px 0 4px; }.admin-health b i { display: inline-block; width: 6px; height: 6px; background: #6fc174; border-radius: 50%; margin-right: 5px; }.admin-health small { color: #aaa6a3; font-size: 7px; }.admin-tabs > button { width: 100%; min-height: 43px; display: grid; grid-template-columns: 28px 1fr auto; align-items: center; text-align: left; gap: 7px; border: 0; background: transparent; color: #cfcbc7; border-radius: 8px; padding: 0 9px; font-size: 9px; }.admin-tabs > button:hover, .admin-tabs > button.active { background: rgba(255,255,255,.1); color: white; }.admin-tabs > button.active { box-shadow: inset 3px 0 var(--orange); }.admin-tabs > button span { color: #8f8b87; font-size: 7px; }.admin-tabs > button i { font-style: normal; color: var(--orange); }.admin-stage { min-width: 0; }.admin-feature { min-height: 150px; display: grid; grid-template-columns: 1fr 160px; align-items: center; background: linear-gradient(120deg, #fff 0%, #fff 64%, #f1efeb 64%); margin-bottom: 16px; padding: 24px; }.admin-feature h2 { font-size: 26px; margin: 12px 0 5px; letter-spacing: -.035em; }.admin-feature p { color: var(--muted); font-size: 10px; line-height: 1.55; max-width: 610px; }.module-score { text-align: center; }.module-score strong, .module-score span, .module-score small { display: block; }.module-score strong { color: var(--orange); font-size: 40px; letter-spacing: -.05em; }.module-score span { font-size: 9px; font-weight: 750; }.module-score small { color: var(--muted); font-size: 7px; margin-top: 4px; }.module-list { display: grid; }.module-list > div { display: grid; grid-template-columns: 38px 1fr auto 44px; align-items: center; gap: 11px; min-height: 62px; border-bottom: 1px solid #efeeeb; }.module-list > div:last-child { border-bottom: 0; }.module-symbol { width: 36px; height: 36px; display: grid; place-items: center; background: var(--orange-soft); color: var(--orange-dark); border-radius: 8px; font-size: 8px; font-weight: 900; }.module-list p { margin: 0; }.module-list b, .module-list small { display: block; }.module-list b { font-size: 10px; }.module-list small { color: var(--muted); font-size: 8px; margin-top: 4px; }.admin-split { display: grid; grid-template-columns: 1.2fr .8fr; gap: 16px; }.field-builder { display: grid; }.field-builder > div { min-height: 53px; display: grid; grid-template-columns: 25px 1fr auto; align-items: center; gap: 9px; border-bottom: 1px solid #efeeeb; }.field-builder > div:last-child { border-bottom: 0; }.field-builder > div > span:first-child { color: #bbb7b3; cursor: grab; }.field-builder p { margin: 0; }.field-builder b, .field-builder small { display: block; }.field-builder b { font-size: 9px; }.field-builder small { color: var(--muted); font-size: 7px; margin-top: 3px; }.add-field h3 { margin: 0 0 6px; font-size: 15px; }.add-field > p { color: var(--muted); font-size: 9px; line-height: 1.5; margin: 0 0 18px; }.add-field .form-field { margin-bottom: 12px; }.workflow-builder { display: grid; grid-template-columns: repeat(7, auto); align-items: center; justify-content: space-between; gap: 8px; }.workflow-builder > div { width: 150px; min-height: 110px; border: 1px solid var(--border); border-radius: 9px; padding: 12px; background: var(--canvas); }.workflow-builder > div span { color: var(--orange); font-size: 8px; font-weight: 850; }.workflow-builder > div b, .workflow-builder > div small { display: block; }.workflow-builder > div b { font-size: 9px; margin: 17px 0 5px; }.workflow-builder > div small { color: var(--muted); font-size: 7px; line-height: 1.4; }.workflow-builder > i { color: var(--orange); font-style: normal; }.rule-callout { display: grid; grid-template-columns: 170px 1fr auto; gap: 15px; align-items: center; background: var(--orange-soft); border: 1px solid #f2c2b2; border-radius: 8px; padding: 12px; margin-top: 16px; font-size: 9px; }.rule-callout span { color: var(--muted); }.rule-callout button { border: 0; background: none; color: var(--orange-dark); font-size: 8px; font-weight: 800; }.reminder-rules { display: grid; }.reminder-rules > div { display: grid; grid-template-columns: 45px 1fr 100px 44px; align-items: center; gap: 12px; min-height: 66px; border-bottom: 1px solid #efeeeb; }.reminder-rules > div:last-child { border-bottom: 0; }.rule-event { color: var(--orange); font-size: 7px; font-weight: 900; letter-spacing: .1em; }.reminder-rules p { margin: 0; }.reminder-rules p b, .reminder-rules p small { display: block; }.reminder-rules p b { font-size: 10px; }.reminder-rules p small { color: var(--muted); font-size: 8px; margin-top: 4px; }.reminder-rules > div > span:nth-of-type(2) { font-size: 8px; color: var(--muted); }.permission-matrix { display: grid; grid-template-columns: 1.7fr repeat(4, .5fr); border: 1px solid var(--border); border-radius: 9px; overflow: hidden; }.permission-matrix > * { min-height: 43px; display: grid; place-items: center; border-right: 1px solid var(--border); border-bottom: 1px solid var(--border); font-size: 8px; }.permission-matrix > *:nth-child(5n) { border-right: 0; }.permission-matrix > b { background: var(--graphite); color: white; font-size: 7px; text-transform: uppercase; letter-spacing: .08em; }.permission-matrix > b:first-child, .permission-matrix > strong { place-items: center start; padding-left: 13px; }.permission-matrix > strong { background: var(--canvas); font-size: 9px; }.permission-matrix span { color: #b4b0ac; }.permission-matrix span.allowed { color: var(--success); font-weight: 900; background: #f3faf4; }.brand-swatches { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin: 18px 0; }.brand-swatches span { min-height: 62px; border-radius: 8px; display: flex; align-items: end; padding: 8px; font-size: 7px; font-weight: 800; }.brand-swatches .orange { background: var(--orange); color: white; }.brand-swatches .graphite { background: var(--graphite); color: white; }.brand-swatches .white { background: white; border: 1px solid var(--border); }.save-toast { position: fixed; top: 100px; right: 25px; z-index: 100; min-width: 290px; padding: 14px 16px; border-radius: 10px; background: var(--success); color: white; box-shadow: var(--shadow); }.save-toast b, .save-toast span { display: block; }.save-toast b { font-size: 10px; }.save-toast span { font-size: 8px; opacity: .85; margin-top: 3px; }

@media (max-width: 1180px) {
  .public-nav { display: none; }
  .hero-section { grid-template-columns: 1fr 430px; gap: 35px; }
  .capability-grid { grid-template-columns: 1fr 1fr; }.capability-card:nth-child(2) { border-right: 0; }.capability-card:nth-child(-n+2) { border-bottom: 1px solid var(--border); }
  .digital-section, .project-proof { gap: 55px; }
  .leadership-section { grid-template-columns: .8fr 1.2fr; gap: 45px; }.founder-card > div:last-child { padding: 18px; }
  .kpi-grid { grid-template-columns: repeat(3, 1fr); }
  .topbar-actions .search-button, .topbar-actions .user-chip span { display: none; }
  .ocr-workspace { grid-template-columns: 1fr; }.upload-panel, .extraction-panel { min-height: auto; }.admin-layout { grid-template-columns: 180px minmax(0, 1fr); }.workflow-builder { grid-template-columns: 1fr 20px 1fr; }.workflow-builder > div { width: auto; }.workflow-builder > i:nth-of-type(2) { display: none; }.workflow-builder > div:nth-of-type(3) { grid-column: 1; }.workflow-builder > div:nth-of-type(4) { grid-column: 3; }
}

@media (max-width: 900px) {
  .hero-section { grid-template-columns: 1fr; padding-top: 70px; }.hero-copy { max-width: 760px; }.hero-visual { min-height: 460px; }.project-status-card { max-width: 560px; }.hero-rising-line { display: none; }
  .stat-band { grid-template-columns: 1fr 1fr; }.stat-band div:nth-child(2) { border-right: 0; }.stat-band div:nth-child(-n+2) { border-bottom: 1px solid rgba(255,255,255,.12); }
  .section-heading { display: block; }.section-heading h2 { margin-bottom: 25px; }.section-heading > p { max-width: 620px; }
  .digital-section, .project-proof, .leadership-section, .featured-project { grid-template-columns: 1fr; }.digital-dashboard { max-width: 680px; width: 100%; }.sectors-section { grid-template-columns: 1fr; gap: 45px; }.section-heading.compact { position: static; }.leadership-intro { max-width: 720px; }.featured-project-image { min-height: 500px; }.featured-project-image:after { background: linear-gradient(0deg, rgba(67,66,66,.25), transparent 45%); }
  .purpose-heading, .project-index-head { grid-template-columns: 1fr; gap: 24px; }.purpose-heading .eyebrow, .project-index-head .eyebrow { grid-column: auto; }.purpose-grid { grid-template-columns: 1fr; }.purpose-grid article { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.14); min-height: auto; }.purpose-grid article:last-child { border-bottom: 0; }.scope-grid { grid-template-columns: 1fr 1fr; }.scope-grid article, .scope-grid article:nth-child(3n), .scope-grid article:nth-child(n+4) { border-right: 1px solid rgba(255,255,255,.14); border-bottom: 1px solid rgba(255,255,255,.14); }.scope-grid article:nth-child(2n) { border-right: 0; }.scope-grid article:nth-child(n+5) { border-bottom: 0; }.website-project-grid article.has-image { grid-template-columns: 1fr; }.website-project-image { min-height: 460px; }
  .contact-section { grid-template-columns: 1fr; gap: 30px; }.public-footer { grid-template-columns: 1fr; }.public-footer > span { grid-column: auto; }.public-footer > div { flex-wrap: wrap; }
  .erp-app { display: block; }.erp-sidebar { transform: translateX(-100%); transition: transform .25s; box-shadow: 20px 0 50px rgba(0,0,0,.2); }.erp-sidebar.is-open { transform: translateX(0); }.erp-main { margin: 0; }.menu-button, .sidebar-close { display: grid; place-items: center; }.sidebar-close { margin-left: auto; }.sidebar-backdrop { display: block; position: fixed; inset: 0; background: rgba(0,0,0,.42); border: 0; z-index: 35; }.dashboard-grid, .dashboard-grid.equal { grid-template-columns: 1fr; }.topbar-actions .project-switcher { min-width: 210px; }
  .admin-layout { grid-template-columns: 1fr; }.admin-tabs { position: static; display: flex; overflow-x: auto; gap: 4px; }.admin-health { display: none; }.admin-tabs > button { flex: 0 0 auto; width: auto; min-width: 130px; }.admin-tabs > button i { display: none; }.admin-split { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .public-header { height: 70px; padding: 0 18px; }.brand-link img { width: 175px; }.portal-button { padding: 0 12px; font-size: 11px; }.portal-button span { display: none; }
  .hero-section { padding: 55px 20px; min-height: auto; }.hero-copy h1 { font-size: 48px; }.hero-visual { min-height: 405px; }.project-status-card { padding: 18px; }.project-progress-visual { grid-template-columns: 110px 1fr; }.progress-number strong { font-size: 44px; }.status-metrics { grid-template-columns: 1fr 1fr; }.status-metrics span:last-child { display: none; }.stat-band { padding: 0 20px; }.stat-band div { padding: 25px 10px; display: block; }.stat-band b { display: block; margin-bottom: 6px; }
  .section-block, .digital-section, .project-proof, .contact-section, .leadership-section, .purpose-section, .scope-section, .website-projects { padding: 75px 20px; }.capability-grid { grid-template-columns: 1fr; }.capability-card { border-right: 0; border-bottom: 1px solid var(--border); }.capability-card:last-child { border-bottom: 0; }.digital-copy li { grid-template-columns: 1fr; gap: 5px; }.digital-dashboard { min-height: 350px; transform: none; grid-template-columns: 56px 1fr; padding: 9px; }.mini-sidebar { padding: 12px 8px; }.mini-sidebar img { width: 35px; }.mini-main { padding: 13px 9px; }.mini-kpis { gap: 6px; }.mini-chart { height: 130px; }.proof-steps { grid-template-columns: 1fr; }.proof-steps article { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.13) !important; }.proof-steps article:last-child { border-bottom: 0 !important; }.founder-grid { grid-template-columns: 1fr; }.founder-photo { aspect-ratio: 4 / 4.3; }.company-facts { grid-template-columns: 1fr 1fr; }.featured-project-image { min-height: 350px; }.featured-project-copy { padding: 65px 20px; }.featured-project-copy h2 { font-size: 42px; }
  .scope-grid { grid-template-columns: 1fr; }.scope-grid article, .scope-grid article:nth-child(2n), .scope-grid article:nth-child(3n), .scope-grid article:nth-child(n+4), .scope-grid article:nth-child(n+5) { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.14); min-height: 300px; }.scope-grid article:last-child { border-bottom: 0; }.website-project-image { min-height: 330px; }.website-project-copy { padding: 36px 22px; }.website-project-copy h3 { font-size: 38px; }.website-publish-box { align-items: flex-start; flex-direction: column; }
  .erp-topbar { padding: 11px 14px; }.erp-topbar h1 { font-size: 17px; }.topbar-actions .project-switcher { display: none; }.erp-content { padding: 16px 14px 35px; }.page-actions { align-items: flex-start; flex-direction: column; }.kpi-grid { grid-template-columns: 1fr 1fr; }.kpi-card { min-height: 105px; }.user-chip { display: none; }.panel { padding: 14px; overflow-x: auto; }
  .ocr-status-strip { grid-template-columns: 38px 1fr; }.ocr-status-strip > .status-pill { display: none; }.bill-preview { height: 450px; padding: 18px; }.bill-paper { padding: 20px; }.extracted-form { grid-template-columns: 1fr; }.extracted-form .full { grid-column: auto; }.workflow-steps { min-width: 520px; }.admin-feature { grid-template-columns: 1fr; }.module-score { display: none; }.admin-heading h2 { font-size: 22px; }.module-list > div { grid-template-columns: 38px 1fr 42px; }.module-list > div > .status-pill { display: none; }.workflow-builder { display: grid; grid-template-columns: 1fr; }.workflow-builder > div, .workflow-builder > div:nth-of-type(3), .workflow-builder > div:nth-of-type(4) { grid-column: 1; }.workflow-builder > i { transform: rotate(90deg); margin: auto; }.workflow-builder > i:nth-of-type(2) { display: block; }.rule-callout { grid-template-columns: 1fr; }.reminder-rules { min-width: 570px; }.permission-matrix { min-width: 590px; }
}

/* Production authentication */
.signout-button { width: 36px; height: 36px; border: 1px solid var(--border); border-radius: 8px; background: white; color: var(--graphite); font-size: 15px; }
.signout-button:hover { color: var(--orange); border-color: var(--orange); }
.login-page { min-height: 100vh; display: grid; grid-template-columns: minmax(420px, .9fr) minmax(520px, 1.1fr); background: var(--canvas); }
.login-brand-panel { min-height: 100vh; background: var(--graphite); color: white; padding: 48px clamp(35px, 6vw, 90px); display: flex; flex-direction: column; justify-content: space-between; position: relative; overflow: hidden; }
.login-brand-panel:after { content: ""; position: absolute; width: 550px; height: 550px; right: -290px; bottom: -210px; border: 70px solid rgba(232,82,35,.17); border-radius: 50%; }
.login-brand-panel > a img { width: min(290px, 78%); filter: brightness(0) invert(1); }
.login-brand-panel > div { max-width: 590px; position: relative; z-index: 1; }
.login-brand-panel h1 { font-size: clamp(48px, 5.5vw, 82px); line-height: .95; letter-spacing: -.055em; margin: 24px 0; }
.login-brand-panel p { color: #cfcbc7; font-size: 15px; line-height: 1.7; max-width: 500px; }
.login-brand-panel > small { color: #aaa6a3; font-size: 9px; letter-spacing: .08em; }
.login-form-panel { display: grid; place-items: center; padding: 40px 24px; }
.login-card { width: min(100%, 470px); background: white; border: 1px solid var(--border); border-radius: 16px; box-shadow: var(--shadow); padding: clamp(28px, 5vw, 52px); }
.login-card h2 { font-size: 32px; margin: 10px 0 8px; letter-spacing: -.04em; }
.login-card > p { margin: 0 0 30px; color: var(--muted); font-size: 11px; line-height: 1.5; }
.login-card > label { display: block; font-size: 9px; font-weight: 750; color: var(--graphite); margin-top: 15px; }
.login-card input { width: 100%; height: 48px; margin-top: 7px; border: 1px solid var(--border); border-radius: 8px; padding: 0 13px; background: var(--canvas); }
.login-card input:focus { outline: 2px solid rgba(232,82,35,.22); border-color: var(--orange); }
.login-submit { width: 100%; justify-content: space-between; margin-top: 20px; min-height: 48px; }
.login-submit:disabled { opacity: .65; cursor: wait; }
.login-error { margin-top: 14px; padding: 10px 12px; border-radius: 7px; background: #fff1ef; color: #a92f21; font-size: 9px; }
.login-help { display: block; color: var(--muted); text-align: center; font-size: 8px; margin-top: 18px; }

@media (max-width: 850px) {
  .login-page { grid-template-columns: 1fr; }
  .login-brand-panel { min-height: 330px; padding: 30px 25px; }
  .login-brand-panel h1 { font-size: 48px; margin: 18px 0 12px; }
  .login-brand-panel > a img { width: 220px; }
  .login-form-panel { padding: 35px 18px; }
}

/* Operational Super Admin */
.admin-live-badge { display: flex; align-items: center; gap: 10px; border: 1px solid #dceadc; background: #f5faf5; border-radius: 9px; padding: 10px 14px; min-width: 210px; }.admin-live-badge > i { width: 9px; height: 9px; border-radius: 50%; background: var(--success); box-shadow: 0 0 0 5px rgba(45,134,62,.1); }.admin-live-badge b,.admin-live-badge small { display: block; }.admin-live-badge b { font-size: 9px; }.admin-live-badge small { color: var(--muted); font-size: 7px; margin-top: 3px; }
.admin-error { min-height: 48px; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 12px; padding: 10px 14px; margin-bottom: 16px; background: #fff2ef; border: 1px solid #f0c4bb; border-radius: 9px; color: #9d2e21; }.admin-error b { font-size: 9px; }.admin-error span { font-size: 8px; }.admin-error button { border: 0; background: transparent; color: inherit; font-size: 17px; }
.admin-loading { min-height: 450px; display: grid; place-items: center; align-content: center; gap: 8px; }.admin-loading i { width: 34px; height: 34px; border: 3px solid var(--border); border-top-color: var(--orange); border-radius: 50%; animation: admin-spin .75s linear infinite; }.admin-loading b { font-size: 12px; }.admin-loading span { color: var(--muted); font-size: 9px; } @keyframes admin-spin { to { transform: rotate(360deg); } }
.operational-admin .admin-tabs { top: 105px; }.admin-overview-hero { min-height: 250px; display: grid; grid-template-columns: minmax(0,1fr) 420px; gap: 35px; align-items: center; padding: clamp(26px,4vw,55px); border-radius: 13px; margin-bottom: 16px; background: linear-gradient(125deg,#363535,#4a4847); color: white; overflow: hidden; position: relative; }.admin-overview-hero:after { content: ""; position: absolute; width: 420px; height: 420px; border: 55px solid rgba(232,82,35,.15); border-radius: 50%; right: -210px; top: -145px; }.admin-overview-hero h2 { font-size: clamp(31px,4vw,49px); line-height: 1; letter-spacing: -.05em; margin: 19px 0 12px; max-width: 620px; }.admin-overview-hero p { color: #c8c5c2; font-size: 11px; line-height: 1.65; max-width: 590px; }.admin-sequence { display: grid; grid-template-columns: 1fr 18px 1fr 18px 1fr; align-items: center; gap: 8px; position: relative; z-index: 1; }.admin-sequence > span { min-height: 105px; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.12); border-radius: 10px; padding: 14px; font-size: 9px; font-weight: 750; }.admin-sequence b { display: block; color: var(--orange); font-size: 22px; margin-bottom: 20px; }.admin-sequence i { color: var(--orange); font-style: normal; }
.admin-stat-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 12px; margin-bottom: 16px; }.admin-stat-grid button { min-height: 125px; text-align: left; border: 1px solid var(--border); border-radius: 11px; background: white; padding: 18px; transition: .2s; }.admin-stat-grid button:hover { transform: translateY(-2px); border-color: var(--orange); box-shadow: var(--shadow); }.admin-stat-grid span,.admin-stat-grid b,.admin-stat-grid small { display: block; }.admin-stat-grid span { color: var(--muted); font-size: 8px; text-transform: uppercase; letter-spacing: .09em; }.admin-stat-grid b { font-size: 31px; margin: 10px 0; color: var(--graphite); }.admin-stat-grid small { color: var(--orange-dark); font-size: 8px; font-weight: 800; }
.overview-list,.audit-list,.system-checks { display: grid; }.overview-list > div,.audit-list > div { min-height: 55px; display: grid; grid-template-columns: 75px 1fr auto; align-items: center; gap: 10px; border-bottom: 1px solid #efeeeb; }.overview-list > div:last-child,.audit-list > div:last-child { border-bottom: 0; }.overview-list > div > span { color: var(--orange-dark); font-size: 8px; font-weight: 850; }.overview-list p,.audit-list p { margin: 0; }.overview-list b,.overview-list small,.audit-list b,.audit-list small { display: block; }.overview-list b,.audit-list b { font-size: 9px; }.overview-list small,.audit-list small { color: var(--muted); font-size: 7px; margin-top: 4px; }.audit-list > div { grid-template-columns: 32px 1fr; }.audit-list > div > span { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 7px; background: var(--orange-soft); color: var(--orange-dark); font-size: 7px; font-weight: 900; }
.admin-work-grid { display: grid; grid-template-columns: minmax(390px,.86fr) minmax(460px,1.14fr); gap: 16px; }.admin-form { align-self: start; }.admin-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 11px; }.admin-form-grid .full { grid-column: 1 / 3; }.admin-form .form-field > span,.admin-drawer .form-field > span { display: block; color: var(--graphite); font-size: 8px; font-weight: 750; margin-bottom: 6px; }.admin-form input,.admin-form select,.admin-drawer input,.admin-drawer select { width: 100%; height: 43px; border: 1px solid var(--border); border-radius: 7px; background: var(--canvas); padding: 0 11px; font-size: 9px; }.admin-form input:focus,.admin-form select:focus,.admin-drawer input:focus,.admin-drawer select:focus { outline: 2px solid rgba(232,82,35,.16); border-color: var(--orange); }.admin-submit { width: 100%; justify-content: space-between; margin-top: 16px; min-height: 45px; }.admin-submit:disabled,.toggle:disabled { opacity: .6; cursor: wait; }
.admin-choice-group { border: 0; margin: 16px 0 0; padding: 0; }.admin-choice-group legend { font-size: 8px; font-weight: 800; margin-bottom: 7px; }.admin-choice-group > div { display: flex; flex-wrap: wrap; gap: 6px; }.admin-choice-group label { position: relative; }.admin-choice-group input { position: absolute; opacity: 0; pointer-events: none; }.admin-choice-group label span { min-height: 31px; display: grid; place-items: center; padding: 0 10px; border: 1px solid var(--border); border-radius: 7px; color: var(--muted); font-size: 8px; cursor: pointer; background: white; }.admin-choice-group input:checked + span { color: var(--orange-dark); border-color: var(--orange); background: var(--orange-soft); font-weight: 800; }.admin-choice-group > p { margin: 0; color: var(--muted); font-size: 8px; }
.admin-record-panel { padding-bottom: 8px; }.admin-record-list,.admin-user-list { max-height: 590px; overflow-y: auto; }.admin-record-list > button { width: 100%; min-height: 67px; display: grid; grid-template-columns: 38px 1fr 95px; align-items: center; text-align: left; gap: 11px; border: 0; border-bottom: 1px solid #efeeeb; background: white; padding: 6px 2px; }.admin-record-list > button:hover,.admin-user-list > button:hover { background: var(--canvas); }.record-code { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 8px; background: var(--graphite); color: white; font-size: 7px; font-weight: 900; }.admin-record-list b,.admin-record-list small { display: block; }.admin-record-list b { font-size: 9px; }.admin-record-list small { color: var(--muted); font-size: 7px; margin-top: 4px; }.admin-record-list > button > span:last-child { font-size: 8px; color: var(--muted); }.status-dot { width: 6px; height: 6px; display: inline-block; border-radius: 50%; margin-right: 5px; background: #cfb142; }.status-dot.active,.status-dot.completed { background: var(--success); }.status-dot.on_hold,.status-dot.archived { background: #a8a4a0; }
.admin-user-list > button { width: 100%; min-height: 68px; display: grid; grid-template-columns: 38px 1fr auto; align-items: center; text-align: left; gap: 11px; border: 0; border-bottom: 1px solid #efeeeb; background: white; padding: 7px 2px; }.admin-user-list > button > b { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 50%; background: var(--graphite); color: white; font-size: 8px; }.admin-user-list strong,.admin-user-list small,.admin-user-list i { display: block; }.admin-user-list strong { font-size: 9px; }.admin-user-list small { color: var(--muted); font-size: 7px; margin-top: 3px; }.admin-user-list i { color: var(--orange-dark); font-size: 7px; font-style: normal; margin-top: 4px; }
.admin-drawer-backdrop { position: fixed; inset: 0; z-index: 120; background: rgba(28,27,27,.55); display: flex; justify-content: flex-end; }.admin-drawer { width: min(520px,100vw); height: 100%; overflow-y: auto; background: white; padding: 27px; box-shadow: -20px 0 60px rgba(0,0,0,.18); }.admin-drawer.wide { width: min(650px,100vw); }.drawer-head { display: flex; align-items: flex-start; justify-content: space-between; border-bottom: 1px solid var(--border); padding-bottom: 18px; margin-bottom: 22px; }.drawer-head span { color: var(--orange); font-size: 8px; font-weight: 850; letter-spacing: .14em; }.drawer-head h2 { font-size: 25px; margin: 7px 0 0; }.drawer-head small { display: block; color: var(--muted); font-size: 8px; margin-top: 5px; }.drawer-head > button { width: 34px; height: 34px; border: 1px solid var(--border); background: white; border-radius: 8px; font-size: 19px; }.drawer-summary { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 18px; }.drawer-summary span { background: var(--canvas); padding: 13px; border-radius: 8px; color: var(--muted); font-size: 8px; }.drawer-summary b { display: block; color: var(--graphite); font-size: 15px; margin-top: 6px; }.drawer-actions { display: flex; justify-content: flex-end; gap: 8px; border-top: 1px solid var(--border); padding-top: 18px; margin-top: 24px; }
.role-admin-grid { display: grid; grid-template-columns: 250px 1fr; gap: 20px; }.role-directory { border-right: 1px solid var(--border); padding-right: 14px; }.role-directory button { width: 100%; min-height: 58px; display: grid; grid-template-columns: 34px 1fr auto; align-items: center; text-align: left; gap: 9px; border: 0; border-radius: 8px; background: white; padding: 7px; }.role-directory button:hover,.role-directory button.active { background: var(--canvas); }.role-directory button.active { box-shadow: inset 3px 0 var(--orange); }.role-directory > button > span { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 7px; background: var(--orange-soft); color: var(--orange-dark); font-size: 7px; font-weight: 900; }.role-directory p { margin: 0; }.role-directory b,.role-directory small { display: block; }.role-directory b { font-size: 8px; }.role-directory small { color: var(--muted); font-size: 7px; margin-top: 4px; }.role-directory i { color: var(--orange); font-style: normal; }.permission-editor { min-height: 410px; }.permission-choice-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; margin-bottom: 16px; }.permission-choice-grid label { min-height: 58px; display: grid; grid-template-columns: 18px 1fr; align-items: center; gap: 8px; border: 1px solid var(--border); border-radius: 8px; padding: 9px; background: var(--canvas); }.permission-choice-grid input { accent-color: var(--orange); }.permission-choice-grid b,.permission-choice-grid small { display: block; }.permission-choice-grid b { font-size: 8px; }.permission-choice-grid small { color: var(--muted); font-size: 7px; margin-top: 3px; }.admin-empty { min-height: 330px; display: grid; place-items: center; align-content: center; gap: 7px; color: var(--muted); }.admin-empty b { color: var(--graphite); font-size: 12px; }.admin-empty span { font-size: 8px; }
.system-checks > div { min-height: 62px; display: grid; grid-template-columns: 34px 1fr auto; gap: 10px; align-items: center; border-bottom: 1px solid #efeeeb; }.system-checks > div > i { width: 31px; height: 31px; display: grid; place-items: center; border-radius: 50%; font-style: normal; font-weight: 900; }.system-checks .ready { background: #eaf6ec; color: var(--success); }.system-checks .pending { background: #fff5e6; color: #b47517; }.system-checks b,.system-checks small { display: block; }.system-checks b { font-size: 9px; }.system-checks small { color: var(--muted); font-size: 7px; margin-top: 4px; }.system-checks em { font-style: normal; font-size: 8px; color: var(--muted); }

@media (max-width: 1180px) { .admin-overview-hero { grid-template-columns: 1fr; }.admin-sequence { max-width: 560px; }.admin-work-grid { grid-template-columns: 1fr; }.role-admin-grid { grid-template-columns: 210px 1fr; } }
@media (max-width: 760px) { .admin-live-badge { display: none; }.admin-stat-grid { grid-template-columns: 1fr 1fr; }.admin-sequence { grid-template-columns: 1fr; }.admin-sequence i { transform: rotate(90deg); margin: auto; }.admin-overview-hero { padding: 25px 18px; }.role-admin-grid { grid-template-columns: 1fr; }.role-directory { border-right: 0; border-bottom: 1px solid var(--border); padding: 0 0 12px; }.permission-choice-grid { grid-template-columns: 1fr; }.admin-form-grid { grid-template-columns: 1fr; }.admin-form-grid .full { grid-column: auto; }.admin-record-list > button { grid-template-columns: 38px 1fr; }.admin-record-list > button > span:last-child { grid-column: 2; }.admin-drawer { padding: 20px 16px; } }

/* Clean, database-backed ERP workspace */
.clean-start { max-width: 760px; margin: 54px auto; padding: 42px; border: 1px solid var(--border); border-radius: 16px; background: white; box-shadow: 0 18px 55px rgba(32,37,43,.08); }
.clean-start > span { color: var(--orange); font-size: 9px; font-weight: 800; letter-spacing: .18em; }.clean-start h2 { margin: 12px 0 8px; font-size: 30px; }.clean-start p { color: var(--muted); }.clean-start ol { margin: 25px 0; padding-left: 20px; color: var(--graphite); line-height: 2; font-size: 12px; }
.quick-entry-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 12px; margin: 0 0 16px; }.quick-entry-grid button { text-align: left; padding: 17px; border-radius: 10px; border: 1px solid var(--border); background: white; cursor: pointer; transition: .18s ease; }.quick-entry-grid button:hover { transform: translateY(-2px); border-color: var(--orange); box-shadow: 0 8px 22px rgba(32,37,43,.08); }.quick-entry-grid b,.quick-entry-grid span { display: block; }.quick-entry-grid b { color: var(--orange); font-size: 11px; }.quick-entry-grid span { color: var(--muted); font-size: 9px; margin-top: 5px; }
.editable-row { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 14px; border: 0; border-bottom: 1px solid #efeeeb; background: transparent; padding: 13px 4px; text-align: left; cursor: pointer; }.editable-row:hover { background: #faf8f5; }.editable-row span b,.editable-row span small { display: block; }.editable-row span b { font-size: 10px; }.editable-row span small { margin-top: 4px; color: var(--muted); font-size: 8px; }
.compact-list { display: grid; }.compact-list > div { display: grid; grid-template-columns: 92px 1fr; gap: 16px; padding: 13px 3px; border-bottom: 1px solid #efeeeb; }.compact-list time { font-size: 8px; color: var(--muted); }.compact-list b,.compact-list small { display: block; }.compact-list b { font-size: 10px; }.compact-list small { color: var(--muted); font-size: 8px; margin-top: 4px; }
.alert-item.is-muted { opacity: .5; }.bill-empty-paper { min-height: 390px; align-content: center; text-align: left; }.bill-empty-paper p { grid-column: 1 / 3; color: var(--muted); line-height: 1.7; }.admin-drawer textarea { width: 100%; min-height: 90px; border: 1px solid var(--border); border-radius: 7px; background: var(--canvas); padding: 10px 11px; font-size: 9px; resize: vertical; }
@media (max-width: 900px) { .quick-entry-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .quick-entry-grid { grid-template-columns: 1fr; }.clean-start { margin: 20px 0; padding: 25px; } }


/* Mahaveer Construction public redesign v1.4 */
.mc-site { --mc-orange:#e85223; --mc-orange-deep:#c63f18; --mc-charcoal:#2e2d2c; --mc-steel:#444341; --mc-sand:#f1ede6; --mc-cream:#faf8f4; overflow:hidden; background:var(--mc-cream); color:var(--mc-charcoal); }
.mc-site section[id] { scroll-margin-top:82px; }
.mc-icon { width:1em; height:1em; display:block; }
.public-header { position:sticky; top:0; height:82px; background:rgba(250,248,244,.94); backdrop-filter:blur(16px); border-bottom:1px solid rgba(46,45,44,.13); z-index:80; }
.public-header:after { content:""; position:absolute; left:0; bottom:-1px; width:26%; height:2px; background:var(--mc-orange); }
.public-nav a { position:relative; color:#4d4a47; font-size:12px; letter-spacing:.015em; }
.public-nav a:after { content:""; position:absolute; left:0; right:100%; bottom:-10px; height:2px; background:var(--mc-orange); transition:right .25s ease; }
.public-nav a:hover:after { right:0; }
.portal-button { border-radius:0; background:var(--mc-charcoal); min-height:46px; padding:0 20px; }
.portal-button:hover { background:var(--mc-orange-deep); }
.mc-kicker { display:inline-flex; align-items:center; gap:11px; color:#4d4a47; font-size:10px; font-weight:850; letter-spacing:.18em; }
.mc-kicker i { width:32px; height:3px; display:block; background:var(--mc-orange); }
.mc-kicker.light { color:#d9d4ce; }
.mc-hero { min-height:calc(100vh - 82px); display:grid; grid-template-columns:1fr 1fr; background:var(--mc-cream); position:relative; }
.mc-blueprint { position:absolute; inset:0 50% 0 0; background-image:linear-gradient(rgba(46,45,44,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(46,45,44,.055) 1px,transparent 1px); background-size:52px 52px; mask-image:linear-gradient(90deg,#000,transparent 95%); }
.mc-blueprint:after { content:"A–01 / ELEVATION"; position:absolute; left:5vw; bottom:28px; color:rgba(46,45,44,.3); font-size:9px; letter-spacing:.22em; }
.mc-hero-copy { position:relative; z-index:2; padding:clamp(70px,8vw,125px) clamp(30px,6vw,100px); display:flex; flex-direction:column; justify-content:center; }
.mc-hero-copy:before { content:""; position:absolute; left:clamp(30px,6vw,100px); top:54px; width:86px; height:16px; border-left:1px solid rgba(46,45,44,.3); border-right:1px solid rgba(46,45,44,.3); border-top:1px solid rgba(46,45,44,.3); }
.mc-hero-copy h1 { margin:28px 0 28px; font-size:clamp(54px,5.7vw,94px); line-height:.91; letter-spacing:-.065em; max-width:850px; }
.mc-hero-copy h1 em { color:var(--mc-orange); font-style:normal; }
.mc-hero-copy>p { max-width:670px; margin:0; color:#6a6661; font-size:clamp(15px,1.2vw,18px); line-height:1.75; }
.mc-hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:36px; }
.mc-button { min-height:52px; padding:0 22px; display:inline-flex; align-items:center; justify-content:space-between; gap:35px; border:1px solid rgba(46,45,44,.24); font-size:12px; font-weight:800; transition:transform .22s,background .22s,color .22s; }
.mc-button:hover { transform:translateY(-3px); }
.mc-button.primary { background:var(--mc-orange); color:white; border-color:var(--mc-orange); }
.mc-button.primary:hover { background:var(--mc-orange-deep); }
.mc-button.ghost { background:rgba(255,255,255,.5); }
.mc-button.white { background:white; color:var(--mc-charcoal); border-color:white; }
.mc-hero-facts { display:grid; grid-template-columns:repeat(3,1fr); gap:0; border-top:1px solid rgba(46,45,44,.18); margin-top:55px; padding-top:22px; }
.mc-hero-facts div { border-right:1px solid rgba(46,45,44,.15); padding-right:18px; margin-right:18px; }
.mc-hero-facts div:last-child { border:0; }
.mc-hero-facts strong,.mc-hero-facts span { display:block; }
.mc-hero-facts strong { font-size:23px; letter-spacing:-.04em; }
.mc-hero-facts span { margin-top:5px; color:#77726d; font-size:9px; letter-spacing:.1em; text-transform:uppercase; }
.mc-hero-stage { position:relative; min-height:680px; background:var(--mc-charcoal); overflow:hidden; }
.mc-hero-stage:before { content:""; position:absolute; z-index:3; inset:0; background:linear-gradient(90deg,rgba(46,45,44,.2),transparent 35%),linear-gradient(0deg,rgba(46,45,44,.78),transparent 45%); pointer-events:none; }
.mc-hero-image { position:absolute; inset:0; }
.mc-hero-image img { object-fit:cover; object-position:center; transform:scale(1.02); animation:mcHeroZoom 14s ease-in-out infinite alternate; }
.mc-site-tag { position:absolute; z-index:5; top:36px; left:36px; color:white; background:rgba(46,45,44,.88); border-left:4px solid var(--mc-orange); padding:16px 18px; backdrop-filter:blur(10px); }
.mc-site-tag span,.mc-site-tag b { display:block; }
.mc-site-tag span { color:#d9d4ce; font-size:8px; letter-spacing:.14em; }
.mc-site-tag b { margin-top:6px; font-size:13px; }
.mc-machine-badge { position:absolute; z-index:5; right:0; bottom:72px; width:245px; min-height:100px; padding:19px; color:white; background:var(--mc-orange); display:flex; align-items:center; gap:17px; animation:mcFloat 4s ease-in-out infinite; }
.mc-machine-badge>.mc-icon { font-size:55px; flex:0 0 auto; }
.mc-machine-badge span,.mc-machine-badge b { display:block; }
.mc-machine-badge span { font-size:7px; letter-spacing:.15em; }
.mc-machine-badge b { font-size:13px; margin-top:5px; }
.mc-measure-line { position:absolute; z-index:5; left:35px; right:35px; bottom:27px; color:white; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:12px; font-size:8px; letter-spacing:.15em; }
.mc-measure-line i { height:1px; background:rgba(255,255,255,.55); position:relative; }
.mc-measure-line i:before,.mc-measure-line i:after { content:""; position:absolute; top:-4px; width:1px; height:9px; background:white; }
.mc-measure-line i:after { right:0; }
.mc-ticker { height:58px; overflow:hidden; background:var(--mc-orange); color:white; display:flex; align-items:center; }
.mc-ticker>div { min-width:max-content; display:flex; align-items:center; gap:28px; animation:mcTicker 24s linear infinite; }
.mc-ticker span { font-size:11px; font-weight:850; letter-spacing:.18em; }
.mc-ticker i { font-style:normal; font-size:20px; opacity:.55; }
.mc-purpose { padding:120px clamp(24px,5vw,82px); background:var(--mc-charcoal); color:white; display:grid; grid-template-columns:.78fr 1.22fr; gap:clamp(55px,7vw,120px); position:relative; }
.mc-purpose:before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,transparent 49.9%,rgba(255,255,255,.05) 50%,transparent 50.1%); pointer-events:none; }
.mc-purpose-lead { align-self:center; position:relative; z-index:2; }
.mc-purpose h2,.mc-section-head h2,.mc-os h2,.mc-leadership h2,.mc-contact h2 { margin:24px 0; font-size:clamp(42px,4.6vw,72px); line-height:.98; letter-spacing:-.055em; }
.mc-purpose h2 em,.mc-section-head h2 em,.mc-os h2 em,.mc-leadership h2 em,.mc-contact h2 em { color:var(--mc-orange); font-style:normal; }
.mc-purpose-lead>p { color:#c2beb8; line-height:1.8; max-width:650px; }
.mc-architect-mark { width:190px; aspect-ratio:1; margin-top:45px; border:1px solid rgba(255,255,255,.18); display:grid; place-items:center; position:relative; }
.mc-architect-mark:before,.mc-architect-mark:after { content:""; position:absolute; background:rgba(255,255,255,.15); }
.mc-architect-mark:before { width:1px; height:120%; }
.mc-architect-mark:after { height:1px; width:120%; }
.mc-architect-mark .mc-icon { font-size:82px; color:var(--mc-orange); position:relative; z-index:2; }
.mc-architect-mark span { position:absolute; z-index:3; bottom:12px; font-size:7px; letter-spacing:.16em; }
.mc-purpose-cards { display:grid; grid-template-columns:repeat(2,1fr); position:relative; z-index:2; }
.mc-purpose-card { min-height:345px; padding:32px; border:1px solid rgba(255,255,255,.13); margin:-1px 0 0 -1px; position:relative; overflow:hidden; }
.mc-purpose-card:first-child { grid-column:1 / 3; min-height:310px; background:var(--mc-orange); border-color:var(--mc-orange); }
.mc-purpose-card>.mc-icon { font-size:40px; margin-bottom:40px; color:var(--mc-orange); }
.mc-purpose-card.orange>.mc-icon { color:white; }
.mc-purpose-card>span { font-size:8px; font-weight:850; letter-spacing:.16em; color:#aaa6a1; }
.mc-purpose-card.orange>span { color:white; opacity:.85; }
.mc-purpose-card h3 { font-size:clamp(24px,2.1vw,34px); line-height:1.14; letter-spacing:-.035em; max-width:620px; margin:15px 0; }
.mc-purpose-card p { color:#bcb8b2; font-size:12px; line-height:1.75; max-width:650px; }
.mc-purpose-card.orange p { color:white; opacity:.86; }
.mc-purpose-card>b { position:absolute; right:22px; bottom:10px; font-size:70px; color:rgba(255,255,255,.04); }
.mc-purpose-card.orange>b { color:rgba(255,255,255,.16); }
.mc-presence,.mc-projects,.mc-process { padding:115px clamp(24px,5vw,82px); background:var(--mc-cream); }
.mc-section-head { display:grid; grid-template-columns:1fr minmax(260px,.45fr); gap:70px; align-items:end; margin-bottom:60px; }
.mc-section-head h2 { margin-bottom:0; }
.mc-section-head>p { color:#706b65; line-height:1.8; margin:0 0 5px; }
.mc-section-head.inverse { color:white; }
.mc-section-head.inverse>p { color:#c2beb8; }
.mc-presence-board { min-height:570px; background:#eae5dc; border:1px solid #d2cbc0; position:relative; overflow:hidden; }
.mc-presence-grid { position:absolute; inset:0; background-image:linear-gradient(rgba(46,45,44,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(46,45,44,.08) 1px,transparent 1px); background-size:42px 42px; }
.mc-presence-grid:before { content:"BIHAR / INDIA · OPERATING DIAGRAM"; position:absolute; left:22px; top:18px; color:#8c867e; font-size:8px; letter-spacing:.18em; }
.mc-presence-route { position:absolute; left:20%; right:20%; top:49%; height:4px; background:var(--mc-orange); transform:rotate(-6deg); transform-origin:center; }
.mc-presence-route:before { content:""; position:absolute; inset:-7px 0; border-top:1px dashed rgba(46,45,44,.35); border-bottom:1px dashed rgba(46,45,44,.35); }
.mc-presence-route i { position:absolute; top:50%; width:17px; height:17px; border-radius:50%; background:white; border:5px solid var(--mc-orange); transform:translate(-50%,-50%); }
.mc-presence-route i:nth-child(1){left:0}.mc-presence-route i:nth-child(2){left:53%}.mc-presence-route i:nth-child(3){left:100%}
.mc-location { position:absolute; width:235px; min-height:150px; background:white; padding:22px; border-top:4px solid var(--mc-orange); box-shadow:0 16px 45px rgba(46,45,44,.12); }
.mc-location.base { left:9%; top:12%; }.mc-location.delivered { left:45%; bottom:10%; }.mc-location.horizon { right:7%; top:10%; }
.mc-location .mc-icon { color:var(--mc-orange); font-size:27px; float:right; }
.mc-location>span { font-size:7px; color:#8c867e; font-weight:850; letter-spacing:.14em; }
.mc-location h3 { margin:30px 0 3px; font-size:26px; }
.mc-location p { margin:0; color:#706b65; font-size:11px; }
.mc-presence-note { position:absolute; right:26px; bottom:24px; width:245px; background:var(--mc-charcoal); color:white; padding:15px 18px; }
.mc-presence-note b,.mc-presence-note span { display:block; }.mc-presence-note b{color:var(--mc-orange);font-size:8px;letter-spacing:.16em}.mc-presence-note span{font-size:10px;line-height:1.5;margin-top:5px}
.mc-capabilities { padding:115px clamp(24px,5vw,82px); background:var(--mc-charcoal); color:white; }
.mc-capability-grid { display:grid; grid-template-columns:repeat(3,1fr); border:1px solid rgba(255,255,255,.14); }
.mc-capability-grid article { min-height:350px; padding:30px; border-right:1px solid rgba(255,255,255,.14); border-bottom:1px solid rgba(255,255,255,.14); display:flex; flex-direction:column; position:relative; transition:background .25s,transform .25s; }
.mc-capability-grid article:nth-child(3n){border-right:0}.mc-capability-grid article:nth-child(n+4){border-bottom:0}
.mc-capability-grid article:hover { background:var(--mc-orange); transform:translateY(-7px); z-index:2; }
.mc-capability-icon { width:58px; height:58px; border:1px solid rgba(255,255,255,.2); display:grid; place-items:center; font-size:30px; color:var(--mc-orange); transition:color .25s,background .25s; }
.mc-capability-grid article:hover .mc-capability-icon { color:var(--mc-charcoal); background:white; }
.mc-capability-grid article>span { position:absolute; right:25px; top:27px; color:#918d88; font-size:9px; letter-spacing:.14em; }
.mc-capability-grid article:hover>span { color:white; }
.mc-capability-grid h3 { font-size:25px; line-height:1.2; margin:40px 0 14px; }
.mc-capability-grid p { margin:0; color:#bdb9b3; font-size:12px; line-height:1.75; }
.mc-capability-grid article:hover p { color:white; }
.mc-capability-grid a { margin-top:auto; padding-top:25px; color:#ff9a79; font-size:10px; font-weight:800; }
.mc-capability-grid article:hover a { color:white; }
.mc-project-list { display:grid; gap:28px; }
.mc-project-card { min-height:590px; display:grid; grid-template-columns:1.16fr .84fr; background:white; border:1px solid #ddd7ce; }
.mc-project-media { position:relative; overflow:hidden; min-height:520px; }
.mc-project-media:after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(46,45,44,.4),transparent 45%); }
.mc-project-media img { object-fit:cover; transition:transform .7s ease; }
.mc-project-card:hover .mc-project-media img { transform:scale(1.035); }
.mc-project-media>span { position:absolute; z-index:2; left:25px; bottom:22px; color:white; font-size:9px; letter-spacing:.16em; }
.mc-project-placeholder { width:100%; height:100%; display:grid; place-items:center; background:#e9e5de; color:var(--mc-orange); font-size:100px; }
.mc-project-info { padding:clamp(38px,5vw,80px); align-self:center; }
.mc-project-info h3 { margin:22px 0 12px; font-size:clamp(38px,4vw,64px); line-height:.98; letter-spacing:-.055em; }
.mc-project-info>p:not(.mc-project-location) { color:#706b65; font-size:13px; line-height:1.8; }
.mc-project-location { display:flex; align-items:flex-start; gap:8px; color:var(--mc-orange-deep); font-size:11px; font-weight:750; line-height:1.5; }
.mc-project-location .mc-icon { flex:0 0 auto; font-size:16px; }
.mc-project-meta { margin-top:32px; border-top:1px solid #ddd7ce; }
.mc-project-meta div { padding:14px 0; border-bottom:1px solid #ddd7ce; }
.mc-project-meta span,.mc-project-meta b { display:block; }.mc-project-meta span{font-size:7px;color:#928c84;letter-spacing:.14em}.mc-project-meta b{font-size:11px;margin-top:5px}
.mc-os { padding:115px clamp(24px,5vw,82px); background:var(--mc-orange); color:white; display:grid; grid-template-columns:.82fr 1.18fr; gap:clamp(60px,8vw,135px); align-items:center; position:relative; overflow:hidden; }
.mc-os:before { content:"M"; position:absolute; right:-70px; bottom:-180px; font-size:650px; font-weight:900; color:rgba(255,255,255,.06); line-height:1; }
.mc-os-copy { position:relative; z-index:2; }
.mc-os h2 em { color:var(--mc-charcoal); }
.mc-os-copy>p { color:rgba(255,255,255,.87); line-height:1.8; }
.mc-os-copy ul { list-style:none; padding:0; margin:35px 0; border-top:1px solid rgba(255,255,255,.28); }
.mc-os-copy li { display:grid; grid-template-columns:35px 130px 1fr; gap:12px; align-items:center; padding:16px 0; border-bottom:1px solid rgba(255,255,255,.28); }
.mc-os-copy li>span { font-size:8px; opacity:.7; }.mc-os-copy li>b{font-size:11px}.mc-os-copy li>p{margin:0;font-size:10px;opacity:.78;line-height:1.5}
.mc-os-visual { position:relative; z-index:2; }
.mc-os-frame { background:#f5f2ec; color:var(--mc-charcoal); padding:24px; box-shadow:0 35px 100px rgba(74,21,4,.27); transform:perspective(1400px) rotateY(-5deg) rotateX(2deg); }
.mc-os-top { min-height:62px; display:flex; align-items:center; gap:13px; border-bottom:1px solid #d9d3ca; }
.mc-os-top img { width:42px; height:42px; }.mc-os-top span{font-size:10px;font-weight:850;letter-spacing:.12em}.mc-os-top b{margin-left:auto;color:#2e7d32;background:#e8f5e9;padding:7px 10px;font-size:7px;letter-spacing:.14em}
.mc-os-kpis { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin:18px 0; }
.mc-os-kpis article { min-height:95px; background:white; border:1px solid #e0dbd3; padding:15px; position:relative; }
.mc-os-kpis span,.mc-os-kpis b{display:block}.mc-os-kpis span{font-size:7px;color:#8c867f;letter-spacing:.12em}.mc-os-kpis b{font-size:15px;margin-top:18px}.mc-os-kpis i{position:absolute;right:13px;bottom:15px;width:7px;height:7px;border-radius:50%;background:#2e7d32}
.mc-os-chart { height:245px; display:flex; align-items:flex-end; gap:12px; padding:55px 22px 22px; background:white; border:1px solid #e0dbd3; position:relative; }
.mc-os-chart>span { position:absolute; top:20px; left:22px; font-size:7px; color:#8c867f; font-weight:800; letter-spacing:.15em; }
.mc-os-chart i { flex:1; background:#f6b29c; animation:mcBars 2.8s ease-in-out infinite alternate; transform-origin:bottom; }
.mc-os-chart i:nth-of-type(3n) { background:var(--mc-orange); animation-delay:.4s; }
.mc-os-flow { min-height:50px; display:flex; align-items:center; justify-content:space-between; gap:7px; color:#77716b; font-size:7px; font-weight:850; letter-spacing:.1em; }
.mc-os-flow i { flex:1; height:1px; background:#cfc8be; }
.mc-process-line { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid #bbb4aa; }
.mc-process-line article { padding:30px 28px 0 0; position:relative; }
.mc-process-line article>i { position:absolute; top:-7px; left:0; width:13px; height:13px; border-radius:50%; border:3px solid var(--mc-orange); background:var(--mc-cream); }
.mc-process-line article>b { color:var(--mc-orange); font-size:9px; letter-spacing:.15em; }
.mc-process-line h3 { font-size:20px; margin:25px 0 9px; }
.mc-process-line p { color:#77716b; font-size:11px; line-height:1.6; max-width:210px; }
.mc-leadership { padding:115px clamp(24px,5vw,82px); background:var(--mc-charcoal); color:white; display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(55px,7vw,110px); align-items:center; }
.mc-leadership-copy>p { color:#bcb8b2; line-height:1.8; max-width:620px; }
.mc-founders { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.mc-founders article { background:#383735; padding-bottom:23px; overflow:hidden; }
.mc-founders article>div { position:relative; aspect-ratio:4/4.55; overflow:hidden; filter:saturate(.78); }
.mc-founders article>div:after { content:""; position:absolute; inset:auto 0 0; height:35%; background:linear-gradient(transparent,rgba(46,45,44,.65)); }
.mc-founders img { object-fit:cover; object-position:center top; transition:transform .6s; }
.mc-founders article:hover img { transform:scale(1.035); }
.mc-founders article>span,.mc-founders article>h3 { margin-left:22px; margin-right:22px; }
.mc-founders article>span { display:block; margin-top:20px; color:var(--mc-orange); font-size:7px; font-weight:850; letter-spacing:.16em; }
.mc-founders h3 { font-size:22px; margin-top:9px; margin-bottom:0; }
.mc-contact { padding:105px clamp(24px,5vw,82px); background:var(--mc-charcoal); color:white; border-top:1px solid rgba(255,255,255,.13); display:grid; grid-template-columns:1fr .7fr 170px; gap:60px; align-items:center; position:relative; }
.mc-contact>div:nth-child(2) p { color:#bcb8b2; line-height:1.75; }
.mc-contact a { display:inline-flex; gap:30px; color:#ff9b7b; font-weight:800; margin-top:15px; }
.mc-contact>.mc-icon { font-size:135px; color:rgba(255,255,255,.08); }
.mc-footer { padding:60px clamp(24px,5vw,82px) 28px; display:grid; grid-template-columns:1fr auto; gap:45px; background:#f5f2ec; }
.mc-footer img { width:230px; height:auto; }
.mc-footer p { color:#77716b; font-size:12px; max-width:430px; }
.mc-footer nav { display:flex; flex-wrap:wrap; gap:21px; align-items:center; font-size:11px; font-weight:700; }
.mc-footer nav a:hover { color:var(--mc-orange); }
.mc-footer>span { grid-column:1 / 3; border-top:1px solid #d9d3ca; padding-top:22px; color:#918b84; font-size:9px; }
@keyframes mcHeroZoom { from{transform:scale(1.02)} to{transform:scale(1.085)} }
@keyframes mcFloat { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-10px)} }
@keyframes mcTicker { to{transform:translateX(-45%)} }
@keyframes mcBars { from{transform:scaleY(.76);opacity:.7} to{transform:scaleY(1);opacity:1} }
@media (max-width:1100px) {
  .mc-hero { grid-template-columns:1fr; }.mc-blueprint{inset:0}.mc-hero-stage{min-height:620px}.mc-purpose{grid-template-columns:1fr}.mc-architect-mark{display:none}.mc-purpose-cards{max-width:900px}.mc-location.base{left:5%}.mc-location.horizon{right:4%}.mc-project-card,.mc-os,.mc-leadership{grid-template-columns:1fr}.mc-project-media{min-height:560px}.mc-os-frame{max-width:800px;transform:none}.mc-leadership-copy{max-width:800px}.mc-contact{grid-template-columns:1fr 1fr}.mc-contact>.mc-icon{display:none}
}
@media (max-width:760px) {
  .mc-hero-copy{padding:75px 22px 55px}.mc-hero-copy:before{left:22px;top:35px}.mc-hero-copy h1{font-size:54px}.mc-hero-stage{min-height:460px}.mc-machine-badge{bottom:60px;width:215px}.mc-hero-facts{gap:12px}.mc-hero-facts div{margin:0;padding:0 10px}.mc-ticker{height:50px}.mc-purpose,.mc-presence,.mc-projects,.mc-process,.mc-capabilities,.mc-os,.mc-leadership,.mc-contact{padding:78px 20px}.mc-purpose-cards{grid-template-columns:1fr}.mc-purpose-card:first-child{grid-column:auto}.mc-section-head{grid-template-columns:1fr;gap:22px}.mc-presence-board{min-height:auto;padding:75px 18px 25px;display:grid;gap:14px}.mc-presence-route{display:none}.mc-location,.mc-location.base,.mc-location.delivered,.mc-location.horizon{position:relative;inset:auto;width:auto;min-height:135px}.mc-presence-note{position:relative;inset:auto;width:auto}.mc-capability-grid{grid-template-columns:1fr}.mc-capability-grid article,.mc-capability-grid article:nth-child(3n),.mc-capability-grid article:nth-child(n+4){border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}.mc-capability-grid article:last-child{border-bottom:0}.mc-project-media{min-height:360px}.mc-project-info{padding:40px 22px}.mc-os-copy li{grid-template-columns:25px 1fr}.mc-os-copy li>p{grid-column:2}.mc-os-frame{padding:12px}.mc-os-kpis{grid-template-columns:1fr}.mc-os-kpis article{min-height:75px}.mc-os-chart{height:190px;gap:6px}.mc-os-flow span:nth-of-type(2),.mc-os-flow span:nth-of-type(3),.mc-os-flow i:nth-of-type(2),.mc-os-flow i:nth-of-type(3){display:none}.mc-process-line{grid-template-columns:1fr 1fr;gap:35px 8px}.mc-founders{grid-template-columns:1fr}.mc-contact{grid-template-columns:1fr;gap:25px}.mc-footer{grid-template-columns:1fr}.mc-footer>span{grid-column:auto}
}
@media (max-width:480px) {
}

/* v1.8 pure ERP shell */
.pure-erp{min-height:100vh;background:#f4f1ec;color:#231f20;font-family:var(--font-manrope),Arial,sans-serif}.pure-sidebar{position:fixed;inset:0 auto 0 0;width:264px;background:#fff;border-right:1px solid #e7e1da;z-index:60;display:flex;flex-direction:column}.pure-brand{height:92px;padding:24px 24px 18px;border-bottom:1px solid #eee8e2;display:flex;align-items:center}.pure-brand img{width:184px;height:auto}.pure-brand button{display:none;margin-left:auto;background:none;border:0;font-size:26px}.pure-product{padding:20px 24px 12px}.pure-product b{display:block;color:#741d31;font-size:12px;letter-spacing:.15em}.pure-product span{display:block;margin-top:5px;color:#817a75;font-size:12px}.pure-sidebar nav{padding:6px 14px 20px;overflow:auto;flex:1}.pure-sidebar nav section{margin:12px 0 20px}.pure-sidebar nav section>small{display:block;padding:0 11px 8px;color:#9a928b;font-size:9px;font-weight:800;letter-spacing:.18em}.pure-sidebar nav a{display:grid;grid-template-columns:34px 1fr 14px;align-items:center;gap:9px;padding:10px;margin:3px 0;border-radius:10px;color:#5b5552;text-decoration:none;font-size:13px;font-weight:700;transition:.15s}.pure-sidebar nav a i{width:31px;height:31px;border-radius:8px;background:#f4f1ee;display:grid;place-items:center;color:#7b716c;font-style:normal;font-size:13px}.pure-sidebar nav a em{font-style:normal;color:#b4ada7}.pure-sidebar nav a:hover{background:#faf7f3;color:#741d31}.pure-sidebar nav a.active{background:#741d31;color:#fff;box-shadow:0 9px 24px rgba(116,29,49,.18)}.pure-sidebar nav a.active i{background:#f0c15a;color:#3d2430}.pure-sidebar nav a.active em{color:#fff}.pure-profile{border-top:1px solid #eee8e2;padding:15px 18px;display:grid;grid-template-columns:38px 1fr 28px;gap:10px;align-items:center}.pure-profile>b{height:38px;border-radius:12px;background:#30282a;color:#fff;display:grid;place-items:center;font-size:12px}.pure-profile strong,.pure-profile small{display:block}.pure-profile strong{font-size:12px}.pure-profile small{font-size:9px;color:#918985;text-transform:capitalize;margin-top:2px}.pure-profile button{border:0;background:#f4f1ed;border-radius:8px;height:30px;color:#741d31}.pure-main{margin-left:264px;min-height:100vh}.pure-topbar{height:92px;background:rgba(255,255,255,.94);border-bottom:1px solid #e7e1da;display:flex;align-items:center;justify-content:space-between;padding:0 34px;position:sticky;top:0;z-index:40;backdrop-filter:blur(12px)}.pure-topbar>div{display:flex;align-items:center;gap:14px}.pure-topbar h1{font-size:23px;margin:3px 0 0;letter-spacing:-.025em}.pure-topbar small{font-size:9px;font-weight:800;letter-spacing:.16em;color:#c84422;text-transform:uppercase}.pure-menu{display:none;border:0;background:#f3efeb;border-radius:9px;width:38px;height:38px}.pure-actions label{width:310px;padding:9px 13px;background:#f7f5f2;border:1px solid #ded8d1;border-radius:11px}.pure-actions label small{display:block;font-size:8px;color:#8a827c}.pure-actions select{width:100%;border:0;background:transparent;font-size:12px;font-weight:700;color:#2a2525;outline:0}.pure-live{display:flex;align-items:center;gap:7px;color:#24723b;background:#eff9f1;border:1px solid #d3ead8;border-radius:999px;padding:10px 14px;font-size:11px;font-weight:800}.pure-live i{width:7px;height:7px;background:#31a254;border-radius:50%}.pure-content{padding:30px 34px 54px;max-width:1500px;margin:auto}.pure-backdrop{display:none}.pure-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.pure-page-head span{display:block;color:#c84422;font-size:10px;font-weight:800;letter-spacing:.15em}.pure-page-head h2{font-size:30px;margin:5px 0}.pure-page-head p{margin:0;color:#77706b;font-size:13px;max-width:700px}.pure-step{display:flex;align-items:center;gap:7px;color:#716965;font-size:10px}.pure-step b{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid #ddd5ce}.pure-step b.on{background:#741d31;color:#fff;border-color:#741d31}.pure-card{background:#fff;border:1px solid #e1dbd5;border-radius:16px;box-shadow:0 8px 24px rgba(46,38,34,.045)}.pure-card .panel-head{padding:22px 22px 0}.pure-card .panel-head h2{font-size:18px}.pure-card .panel-head p{font-size:12px}.pure-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.pure-grid>.wide{grid-column:span 8}.pure-grid>.side{grid-column:span 4}.pure-grid>.half{grid-column:span 6}.pure-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.pure-kpis article{background:#fff;border:1px solid #e1dbd5;border-radius:15px;padding:18px;min-height:124px}.pure-kpis small{color:#817974;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.pure-kpis b{display:block;font-size:30px;margin:14px 0 5px}.pure-kpis span{font-size:11px;color:#77706b}.pure-form{padding:20px 22px 24px}.pure-form form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.pure-form .form-field span{font-size:10px;color:#59524f;font-weight:800}.pure-form input,.pure-form select,.pure-form textarea{background:#faf9f7;border:1px solid #dcd5cf;border-radius:9px;padding:11px 12px;font-size:12px}.pure-form textarea{min-height:82px}.pure-form .btn.primary{background:#741d31;border-color:#741d31}.pure-register{padding:12px 22px 24px}.pure-register article{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:15px 0;border-bottom:1px solid #eee8e2}.pure-register article:last-child{border:0}.pure-register h3{font-size:14px;margin:5px 0}.pure-register p{font-size:11px;color:#7c746f;margin:0}.pure-register .text-button{font-size:11px}.pure-empty{padding:42px 20px;text-align:center;color:#8b837e}.pure-empty b{display:block;color:#443d3a;margin-bottom:5px}.pure-master-cards{padding:10px 22px 24px;display:grid;gap:9px}.pure-master-cards>div{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;border:1px solid #ebe5df;border-radius:10px;padding:12px}.pure-master-cards b,.pure-master-cards small{display:block}.pure-master-cards small{color:#8a827c;font-size:10px;margin-top:3px}.pure-master-cards strong{font-size:11px;color:#741d31}.pure-recipe-row{display:grid!important;grid-template-columns:1fr 1fr!important;gap:9px}.pure-note{margin:14px 22px 22px;padding:13px 15px;background:#fff6dd;border-left:3px solid #d9a933;color:#6d5422;font-size:11px}.pure-report-table{width:calc(100% - 44px);margin:12px 22px 24px;border-collapse:collapse;font-size:11px}.pure-report-table th{text-align:left;background:#2f2929;color:#fff;padding:11px}.pure-report-table td{padding:10px;border-bottom:1px solid #e8e2dc}.pure-report-table tr:nth-child(even) td{background:#faf8f6}.pure-drawing{padding:18px 22px 24px}.pure-drawing-tools{display:flex;align-items:center;gap:10px;margin-bottom:12px}.pure-drawing-tools label{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:800}.pure-drawing-tools input{width:62px;border:1px solid #d9d2cc;border-radius:8px;padding:8px}.pure-drawing-tools a,.pure-drawing-tools button{border:1px solid #d9d2cc;background:#fff;color:#5a514e;border-radius:8px;padding:9px 12px;text-decoration:none;font-size:11px;font-weight:800}.pure-drawing-tools button.active{background:#741d31;color:#fff;border-color:#741d31}.pure-drawing-tools span{font-size:10px;color:#7d746f;margin-left:auto}.pure-drawing-frame{height:520px;position:relative;border:1px solid #d9d2cc;border-radius:12px;overflow:hidden;background:#dedad6}.pure-drawing-frame object{width:100%;height:100%;border:0}.pure-drawing-overlay{position:absolute;inset:0;pointer-events:none}.pure-drawing-overlay.marking{pointer-events:auto;cursor:crosshair;background:rgba(255,255,255,.04)}.pure-drawing-overlay i{position:absolute;border:3px solid #e24b24;background:rgba(226,75,36,.18);border-radius:4px;pointer-events:none}.pure-drawing+.form-field{display:block;margin:0 22px 24px}.pure-drawing+.form-field span{display:block;font-size:10px;font-weight:800;margin-bottom:6px}.pure-drawing+.form-field textarea{width:100%;min-height:70px;border:1px solid #d9d2cc;border-radius:9px;padding:11px}
@media(max-width:960px){.pure-sidebar{transform:translateX(-100%);transition:.2s}.pure-sidebar.open{transform:none;box-shadow:15px 0 40px rgba(0,0,0,.18)}.pure-brand button{display:block}.pure-main{margin-left:0}.pure-menu{display:block}.pure-backdrop{display:block;position:fixed;inset:0;background:rgba(32,26,27,.45);border:0;z-index:50}.pure-content{padding:22px}.pure-actions label{width:230px}.pure-grid>.wide,.pure-grid>.side,.pure-grid>.half{grid-column:span 12}}
@media(max-width:680px){.pure-topbar{height:auto;min-height:82px;padding:12px 16px}.pure-topbar h1{font-size:18px}.pure-actions label{width:160px}.pure-live{display:none}.pure-content{padding:16px}.pure-kpis{grid-template-columns:1fr 1fr}.pure-page-head{display:block}.pure-step{margin-top:12px}.pure-form form{grid-template-columns:1fr}.pure-form .full{grid-column:auto}}

/* Simplified Project Control v1.7 */
.pc-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;padding:28px 32px;background:linear-gradient(125deg,#24282c,#3a252c);color:white;border-radius:14px;box-shadow:0 18px 45px rgba(32,26,28,.14)}
.pc-hero span{color:#e1bd55;font-size:9px;font-weight:900;letter-spacing:.15em}.pc-hero h2{font-size:28px;margin:7px 0}.pc-hero p{margin:0;color:#d9d5d2;font-size:11px}.pc-flow{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end}.pc-flow b{font-size:8px;letter-spacing:.06em;padding:10px 12px;border:1px solid rgba(255,255,255,.18);border-radius:7px}.pc-flow i{color:#e1bd55;font-style:normal}
.pc-tabs{display:flex;gap:8px;overflow:auto;margin:20px 0}.pc-tabs button{white-space:nowrap;border:1px solid var(--border);background:white;color:#59544f;padding:11px 16px;border-radius:8px;font-size:10px;font-weight:800;cursor:pointer}.pc-tabs button.active{background:var(--orange-dark);border-color:var(--orange-dark);color:white}
.pc-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.pc-two>.full{grid-column:1/-1}.pc-form form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.pc-form .btn{justify-self:start}.pc-check{display:flex;align-items:center;gap:8px;font-size:10px;font-weight:750}.pc-check input{accent-color:var(--orange-dark)}
.pc-list{display:grid;gap:4px}.pc-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:13px 2px;border-bottom:1px solid var(--border)}.pc-list span,.pc-list small{display:block}.pc-list small{color:var(--muted);font-size:8px;margin-top:3px}.pc-list strong{font-size:12px}.pc-list strong.warn{color:#b45b18}.pc-list .progress-track{grid-column:1/-1;height:5px}
.pc-register{display:grid;gap:10px}.pc-register article{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid var(--border);border-radius:9px;padding:14px}.pc-register h3{font-size:13px;margin:7px 0 3px}.pc-register p{font-size:9px;color:var(--muted);margin:0}.pc-register article>span{display:flex;gap:7px}.text-button.danger{color:#a73535}
.pc-usage{border:1px solid var(--border);background:var(--canvas);padding:14px;border-radius:8px;display:grid;gap:9px}.pc-usage>b{font-size:10px}.pc-usage label{display:grid;grid-template-columns:minmax(0,1fr) 140px;gap:9px;align-items:center}.pc-usage label span{font-size:9px}.pc-usage input,.pc-usage select{width:100%;min-height:38px;border:1px solid var(--border);border-radius:6px;background:white;padding:0 9px;font-size:9px}
.pc-master-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.pc-master-grid>div{display:grid;align-content:start}.pc-master-grid>div>b{margin-bottom:8px}.pc-master-grid span{display:flex;justify-content:space-between;gap:10px;padding:10px;border-bottom:1px solid var(--border);font-size:9px}.pc-master-grid small{color:var(--muted)}
.stock-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.stock-cards article{padding:16px;background:var(--canvas);border:1px solid var(--border);border-left:4px solid #4a8c5c;border-radius:8px}.stock-cards article.low{border-left-color:#d07b24;background:#fff9ee}.stock-cards span,.stock-cards b,.stock-cards small{display:block}.stock-cards span{font-size:9px;color:var(--muted)}.stock-cards b{font-size:18px;margin:7px 0}.stock-cards small{font-size:8px;color:var(--muted)}
@media(max-width:1050px){.pc-hero,.pc-two{grid-template-columns:1fr}.pc-flow{justify-content:flex-start}.pc-two>.full{grid-column:auto}}
@media(max-width:650px){.pc-hero{padding:24px 20px}.pc-flow i{display:none}.pc-form form,.pc-master-grid,.stock-cards{grid-template-columns:1fr}.pc-usage label{grid-template-columns:1fr}.pc-register article{align-items:flex-start;flex-direction:column}.pc-register article>span{width:100%;justify-content:flex-end}}

/* ERP experience system v1.6 */
.erp-app { grid-template-columns:284px minmax(0,1fr); background:#f4f3f0; }
.erp-sidebar { width:284px; background:linear-gradient(180deg,#2d2c2b 0%,#383634 100%); box-shadow:8px 0 35px rgba(36,34,32,.08); }
.erp-brand { min-height:92px; padding:15px 22px; border-right:0; }
.erp-brand img { width:232px; height:60px; }
.erp-main { grid-column:2; }
.workspace-label { padding:20px 20px 13px; letter-spacing:0; }
.workspace-label span,.workspace-label small { display:block; }
.workspace-label span { color:#f4f1ed; font-size:10px; font-weight:850; letter-spacing:.12em; }
.workspace-label small { color:#9e9994; font-size:9px; font-weight:550; margin-top:5px; letter-spacing:.02em; }
.erp-nav { padding:0 12px 18px; }
.nav-group { display:grid; gap:3px; margin-top:12px; }
.nav-group>span { color:#817d78; font-size:8px; font-weight:850; letter-spacing:.16em; padding:0 11px 7px; }
.erp-nav .nav-group a { min-height:48px; border-radius:10px; padding:7px 10px; margin:0; font-size:12px; color:#d8d4cf; }
.erp-nav .nav-group a>i { margin-left:auto; color:#74706c; font-style:normal; font-size:15px; }
.erp-nav .nav-group a:hover,.erp-nav .nav-group a.active { background:rgba(255,255,255,.095); color:white; }
.erp-nav .nav-group a.active { box-shadow:inset 3px 0 var(--orange); }
.nav-icon { width:32px; height:32px; border-radius:9px; }
.nav-icon svg { width:18px; height:18px; }
.erp-nav a.active .nav-icon { background:var(--orange); }
.sidebar-admin { padding:12px; }
.sidebar-admin a { min-height:53px; border-radius:11px; }
.erp-topbar { min-height:92px; padding:13px 30px; box-shadow:0 4px 22px rgba(45,43,40,.035); }
.erp-topbar h1 { font-size:24px; letter-spacing:-.035em; }
.erp-eyebrow { font-size:8px; letter-spacing:.12em; }
.project-switcher { min-width:300px; min-height:56px; padding:7px 13px; border-radius:11px; background:#faf9f7; }
.project-switcher select { background:transparent; font-size:12px; }
.live-system { min-height:38px; display:flex; align-items:center; gap:7px; padding:0 10px; border:1px solid #dce9dd; border-radius:99px; color:var(--success); background:#f4faf4; font-size:9px; font-weight:800; }
.live-system i { width:7px; height:7px; border-radius:50%; background:var(--success); box-shadow:0 0 0 4px rgba(46,125,50,.10); }
.user-chip> b { width:40px; height:40px; }
.signout-button { width:38px; height:38px; border:1px solid var(--border); background:white; border-radius:9px; color:var(--orange-dark); }
.erp-content { padding:28px 30px 55px; max-width:1800px; width:100%; margin:0 auto; }
.page-actions { min-height:48px; margin-bottom:20px; }
.page-actions p { font-size:13px; }
.btn { min-height:43px; padding:0 16px; border-radius:9px; font-size:11px; }
.panel { border-radius:15px; padding:21px; box-shadow:0 7px 22px rgba(48,45,42,.035); }
.panel-head { margin-bottom:20px; }
.panel-head h2,.panel-head h3 { font-size:17px; letter-spacing:-.02em; }
.panel-head p { font-size:11px; line-height:1.5; }
.kpi-grid { gap:14px; margin-bottom:18px; }
.kpi-card { min-height:130px; padding:19px; border-radius:14px; box-shadow:0 7px 22px rgba(48,45,42,.035); }
.kpi-card .kpi-label { font-size:9px; }
.kpi-card strong { font-size:31px; margin-top:18px; }
.kpi-card .kpi-trend { font-size:9px; }
.kpi-icon { width:34px; height:34px; }
.data-table { font-size:11px; }
.data-table th { font-size:8px; padding:11px 10px; background:#faf9f7; }
.data-table td { padding:14px 10px; }
.data-table small { font-size:9px; line-height:1.45; }
.form-field>span,.form-field label { color:#56514c; font-size:9px; font-weight:800; }
.form-field input,.form-field select,.form-field textarea { min-height:45px; font-size:12px; border-radius:9px; background:#fcfbf9; }
.admin-drawer { border-radius:18px 0 0 18px; }
.empty-state { min-height:190px; }

.module-launchpad { display:grid; grid-template-columns:260px 1fr; gap:25px; align-items:stretch; background:#2f2e2d; color:white; border-radius:16px; padding:24px; margin:0 0 18px; overflow:hidden; position:relative; }
.module-launchpad:after { content:""; position:absolute; width:250px; height:250px; border:42px solid rgba(232,82,35,.10); border-radius:50%; left:-140px; bottom:-180px; }
.module-launchpad>div { position:relative; z-index:1; padding:8px; }
.module-launchpad>div>span { color:#ff9d7f; font-size:8px; font-weight:850; letter-spacing:.15em; }
.module-launchpad h2 { font-size:23px; line-height:1.15; margin:18px 0 0; letter-spacing:-.035em; }
.module-launchpad nav { display:grid; grid-template-columns:repeat(5,1fr); border:1px solid rgba(255,255,255,.13); position:relative; z-index:1; }
.module-launchpad nav a { min-height:128px; padding:15px; border-right:1px solid rgba(255,255,255,.13); display:grid; grid-template-columns:1fr auto; align-content:space-between; gap:12px; transition:background .2s,transform .2s; }
.module-launchpad nav a:last-child { border-right:0; }
.module-launchpad nav a:hover { background:var(--orange); transform:translateY(-3px); }
.module-launchpad nav a>b { color:#908c87; font-size:8px; }
.module-launchpad nav a:hover>b { color:white; }
.module-launchpad nav a>span { grid-column:1 / 3; font-size:11px; font-weight:800; }
.module-launchpad nav small { display:block; color:#aaa6a1; font-size:8px; line-height:1.45; margin-top:5px; font-weight:500; }
.module-launchpad nav a:hover small { color:white; }
.module-launchpad nav i { color:var(--orange); font-style:normal; }
.module-launchpad nav a:hover i { color:white; }

.module-intro { min-height:190px; display:flex; align-items:flex-end; justify-content:space-between; gap:35px; padding:32px; margin-bottom:18px; border-radius:16px; background:linear-gradient(125deg,#333230,#45423f); color:white; position:relative; overflow:hidden; }
.module-intro:after { content:""; position:absolute; width:310px; height:310px; border:50px solid rgba(232,82,35,.13); border-radius:50%; right:-105px; top:-160px; }
.module-intro>div { position:relative; z-index:1; }
.module-intro>div:first-child { max-width:820px; }
.module-intro>div:first-child>span { color:#ff9c7d; font-size:9px; font-weight:850; letter-spacing:.15em; }
.module-intro h2 { font-size:clamp(28px,3vw,43px); line-height:1.03; margin:17px 0 10px; letter-spacing:-.05em; }
.module-intro p { color:#c7c2bc; font-size:12px; line-height:1.65; margin:0; }
.module-actions { display:flex; flex-wrap:wrap; gap:8px; }
.module-actions .btn:not(.primary) { background:rgba(255,255,255,.09); border-color:rgba(255,255,255,.18); color:white; }
.module-start { min-height:440px; display:grid; align-content:center; justify-items:start; padding:55px; border:1px solid var(--border); border-radius:16px; background:white; background-image:linear-gradient(#f0eeea 1px,transparent 1px),linear-gradient(90deg,#f0eeea 1px,transparent 1px); background-size:45px 45px; }
.module-start>span { color:var(--orange); font-size:9px; font-weight:900; letter-spacing:.15em; }
.module-start h2 { max-width:700px; font-size:40px; line-height:1.05; letter-spacing:-.045em; margin:20px 0 10px; }
.module-start>p { color:var(--muted); }
.module-start-guide { display:flex; align-items:center; gap:12px; padding:12px 15px; margin-top:24px; background:white; border:1px solid var(--border); box-shadow:var(--shadow); font-size:10px; }
.module-start-guide b { width:25px; height:25px; display:grid; place-items:center; background:var(--orange); color:white; border-radius:7px; }

.signal-kpi-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:12px; margin-bottom:18px; }
.signal-kpi-grid.four { grid-template-columns:repeat(4,1fr); }
.signal-kpi { min-height:125px; padding:18px; border:1px solid var(--border); border-top:4px solid #b4b0ab; border-radius:13px; background:white; box-shadow:0 7px 22px rgba(48,45,42,.035); }
.signal-kpi.orange { border-top-color:var(--orange); }.signal-kpi.green { border-top-color:var(--success); }.signal-kpi.amber { border-top-color:#d28a10; }.signal-kpi.dark { border-top-color:var(--graphite); }.signal-kpi.red { border-top-color:var(--error); }
.signal-kpi span,.signal-kpi b,.signal-kpi small { display:block; }
.signal-kpi span { color:var(--muted); font-size:9px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }
.signal-kpi b { font-size:24px; letter-spacing:-.035em; margin:18px 0 6px; }
.signal-kpi small { color:#8c8782; font-size:9px; }

.finance-control-grid { display:grid; grid-template-columns:1.25fr .75fr; gap:18px; margin-bottom:18px; }
.finance-visual,.budget-health { min-height:390px; }
.finance-bars { height:260px; display:flex; align-items:stretch; gap:10px; padding:20px 5px 0; border-bottom:1px solid var(--border); background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 64px,#efede9 65px); overflow-x:auto; }
.finance-bars>div { min-width:55px; flex:1; display:grid; grid-template-rows:1fr 25px; gap:7px; }
.finance-bars>div>div { display:flex; align-items:end; justify-content:center; gap:3px; }
.finance-bars i { width:9px; min-height:3px; border-radius:4px 4px 0 0; }
.finance-bars i.in,.finance-legend i.in { background:var(--success); }.finance-bars i.out,.finance-legend i.out { background:var(--orange); }.finance-bars i.commit,.finance-legend i.commit { background:#d89a2b; }
.finance-bars span { text-align:center; color:var(--muted); font-size:8px; }
.finance-legend { display:flex; gap:18px; margin-top:13px; color:var(--muted); font-size:9px; }
.finance-legend span { display:flex; align-items:center; gap:6px; }.finance-legend i { width:9px; height:9px; border-radius:2px; }
.budget-health .panel-head>strong { font-size:20px; text-align:right; color:var(--success); }
.budget-health .panel-head>strong.negative { color:var(--error); }
.budget-health .panel-head>strong small { display:block; font-size:8px; color:var(--muted); font-weight:550; margin-top:4px; }
.budget-list { display:grid; gap:17px; }
.budget-list>div { display:grid; grid-template-columns:1fr auto; gap:8px 15px; }
.budget-list span b,.budget-list span small { display:block; }
.budget-list span b { font-size:11px; }.budget-list span small { color:var(--muted); font-size:8px; margin-top:3px; }
.budget-list>div>strong { font-size:11px; }
.budget-list .progress-track { grid-column:1 / 3; height:6px; }
.direction-pill { display:inline-flex; min-height:25px; align-items:center; padding:0 8px; border-radius:6px; font-size:8px; font-weight:850; text-transform:uppercase; }
.direction-pill.inflow { background:#eaf6eb;color:var(--success); }.direction-pill.outflow { background:var(--orange-soft);color:var(--orange-dark); }.direction-pill.commitment { background:#fff3db;color:#9a6200; }
.inline-select { min-height:31px; border:1px solid var(--border); border-radius:7px; background:#faf9f7; padding:0 8px; font-size:9px; }
.finance-footnotes { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:18px; }
.finance-footnotes>div { border:1px solid var(--border); border-radius:12px; background:white; padding:17px; }
.finance-footnotes span,.finance-footnotes b,.finance-footnotes small { display:block; }
.finance-footnotes span { color:var(--muted); font-size:8px; letter-spacing:.09em; }
.finance-footnotes b { font-size:20px; margin:10px 0 3px; }.finance-footnotes small { color:#8a8580;font-size:8px; }
.friendly-empty { min-height:240px; display:grid; grid-template-columns:54px 1fr auto; align-items:center; gap:15px; padding:25px; color:var(--muted); }
.friendly-empty>i { width:50px;height:50px;display:grid;place-items:center;border-radius:12px;background:var(--orange-soft);color:var(--orange);font-size:11px;font-weight:900;font-style:normal; }
.friendly-empty b { color:var(--ink);font-size:13px; }.friendly-empty p { margin:5px 0 0;font-size:10px;line-height:1.5; }
.friendly-empty button { border:0;background:none;color:var(--orange-dark);font-size:9px;font-weight:850; }

.progress-workspace { display:grid; grid-template-columns:1.2fr .8fr; gap:18px; margin-bottom:18px; }
.progress-chart-panel,.package-snapshot { min-height:390px; }
.progress-signal-chart { height:275px; display:flex; align-items:end; gap:8px; padding:25px 6px 0; border-bottom:1px solid var(--border); background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 67px,#efede9 68px); overflow-x:auto; }
.progress-signal-chart>div { min-width:40px; height:100%; flex:1; display:flex; flex-direction:column; align-items:center; justify-content:end; gap:5px; }
.progress-signal-chart span { font-size:8px;color:var(--muted); }
.progress-signal-chart i { width:min(30px,70%);min-height:5px;background:linear-gradient(#f1764e,var(--orange));border-radius:5px 5px 0 0; }
.progress-signal-chart small { height:20px;font-size:8px;color:var(--muted);white-space:nowrap; }
.package-progress-list { display:grid;gap:15px; }
.package-progress-list>div { display:grid;grid-template-columns:1fr auto;gap:7px 15px; }
.package-progress-list span b,.package-progress-list span small { display:block; }
.package-progress-list span b { font-size:10px; }.package-progress-list span small { font-size:8px;color:var(--muted);margin-top:4px; }
.package-progress-list>div>strong { font-size:11px; }
.dual-progress { grid-column:1 / 3;position:relative;height:8px;border-radius:99px;background:#eceae6;overflow:hidden; }
.dual-progress i,.dual-progress b { position:absolute;left:0;top:0;bottom:0;border-radius:99px; }
.dual-progress i { background:#b8b4af;opacity:.55; }.dual-progress b { height:4px;top:2px;background:var(--orange); }
.diary-list { display:grid;gap:8px; }
.diary-list>button { width:100%;min-height:118px;display:grid;grid-template-columns:64px 1fr 145px;gap:18px;align-items:center;text-align:left;border:1px solid #ece9e5;background:#fcfbf9;border-radius:12px;padding:13px 16px;transition:border .2s,transform .2s; }
.diary-list>button:hover { border-color:var(--orange);transform:translateY(-2px); }
.diary-list time { width:53px;height:67px;display:grid;place-items:center;align-content:center;background:var(--graphite);color:white;border-radius:10px; }
.diary-list time b { font-size:20px;line-height:1; }.diary-list time span { color:#ff9e80;font-size:8px;text-transform:uppercase;margin-top:5px; }
.diary-list>button>div:nth-child(2)>span { color:var(--orange-dark);font-size:8px;font-weight:850;letter-spacing:.06em; }
.diary-list h3 { margin:7px 0 3px;font-size:17px; }.diary-list p { margin:0;color:var(--muted);font-size:10px;line-height:1.5; }
.diary-list>button>div:last-child { text-align:right; }.diary-list strong { display:block;font-size:24px; }.diary-list small { display:block;color:var(--muted);font-size:8px;margin:4px 0 12px; }.diary-list div:last-child i { color:var(--orange-dark);font-style:normal;font-size:9px;font-weight:800; }
.progress-entry-guide { display:grid;grid-template-columns:80px 1fr;gap:12px;padding:13px;margin-bottom:18px;background:var(--orange-soft);border:1px solid #f5c9b9;border-radius:9px;font-size:9px; }
.progress-entry-guide b { color:var(--orange-dark); }

.report-command { min-height:300px;display:grid;grid-template-columns:220px 1fr 280px;gap:35px;align-items:center;padding:32px;margin-bottom:18px;border-radius:16px;background:#2f2e2d;color:white;position:relative;overflow:hidden; }
.report-command:after { content:"";position:absolute;width:380px;height:380px;border:55px solid rgba(232,82,35,.08);border-radius:50%;right:-190px;bottom:-230px; }
.pulse-ring { --pulse:0deg;width:180px;height:180px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--orange) var(--pulse),rgba(255,255,255,.12) 0);position:relative; }
.pulse-ring:before { content:"";position:absolute;inset:15px;border-radius:50%;background:#2f2e2d; }
.pulse-ring>div { position:relative;text-align:center; }.pulse-ring strong { display:block;font-size:58px;line-height:1;letter-spacing:-.07em; }.pulse-ring span { color:#aaa6a1;font-size:8px;letter-spacing:.12em; }
.report-command-copy { position:relative;z-index:1; }.report-command-copy>span { color:#ff9b7b;font-size:8px;font-weight:850;letter-spacing:.15em; }
.report-command-copy h2 { font-size:34px;line-height:1.08;letter-spacing:-.04em;margin:17px 0 10px; }
.report-command-copy>p { color:#c4bfb9;font-size:11px;line-height:1.65;max-width:700px; }
.report-command-copy>div { display:flex;gap:10px;margin-top:22px;font-size:8px; }.report-command-copy small { color:#8f8b86; }.report-command-copy b { color:white; }
.report-signal-stack { display:grid;gap:7px;position:relative;z-index:1; }
.report-signal-stack>div { min-height:49px;display:flex;justify-content:space-between;align-items:center;padding:0 12px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);border-radius:8px; }
.report-signal-stack span { color:#b9b5b0;font-size:8px; }.report-signal-stack b { font-size:10px; }.report-signal-stack .good b { color:#91dc97; }.report-signal-stack .warning b { color:#ffbf73; }
.report-section-grid { display:grid;grid-template-columns:1fr 1fr;gap:18px; }
.report-card { border:1px solid var(--border);border-radius:15px;background:white;padding:22px;box-shadow:0 7px 22px rgba(48,45,42,.035); }
.report-card header { display:grid;grid-template-columns:45px 1fr;gap:13px;align-items:center;padding-bottom:17px;border-bottom:1px solid var(--border); }
.report-card header>span { width:43px;height:43px;display:grid;place-items:center;border-radius:11px;background:var(--orange-soft);color:var(--orange);font-size:10px;font-weight:900; }
.report-card h3 { margin:0;font-size:16px; }.report-card header p { margin:4px 0 0;color:var(--muted);font-size:9px; }
.report-card>div { display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border);border:1px solid var(--border);margin-top:17px; }
.report-metric { min-height:86px;background:#fbfaf8;padding:13px; }
.report-metric.emphasis { background:var(--orange-soft); }.report-metric span,.report-metric b { display:block; }
.report-metric span { color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.05em; }.report-metric b { margin-top:13px;font-size:15px; }
.report-integrity { display:grid;grid-template-columns:220px 1fr 120px;gap:25px;align-items:center;margin-top:18px;padding:20px;border:1px solid #dfe8df;border-radius:13px;background:#f6faf6; }
.report-integrity span { color:var(--success);font-size:8px;font-weight:850;letter-spacing:.12em; }.report-integrity h3 { margin:5px 0 0;font-size:15px; }
.report-integrity>p { color:#5f665f;font-size:10px;line-height:1.6; }.report-integrity>div:last-child { text-align:center; }.report-integrity>div:last-child b { display:block;color:var(--success);font-size:16px; }.report-integrity>div:last-child small { color:var(--muted);font-size:8px; }

@media(max-width:1250px){
 .module-launchpad { grid-template-columns:1fr; }.module-launchpad nav { grid-template-columns:repeat(3,1fr); }.module-launchpad nav a { border-bottom:1px solid rgba(255,255,255,.13); }
 .signal-kpi-grid { grid-template-columns:repeat(3,1fr); }
 .finance-control-grid,.progress-workspace { grid-template-columns:1fr; }
 .report-command { grid-template-columns:180px 1fr; }.report-signal-stack { grid-column:1 / 3;grid-template-columns:repeat(4,1fr); }
}
@media(max-width:900px){
 .erp-app { display:block; }.erp-sidebar { width:284px;transform:translateX(-100%); }.erp-sidebar.is-open { transform:translateX(0); }.erp-main { margin:0; }.menu-button,.sidebar-close { display:grid;place-items:center; }
 .erp-content { padding:22px 18px 45px; }
 .live-system { display:none; }
 .module-intro { align-items:flex-start;flex-direction:column; }
 .signal-kpi-grid,.signal-kpi-grid.four { grid-template-columns:1fr 1fr; }
 .report-section-grid { grid-template-columns:1fr; }
 .report-integrity { grid-template-columns:1fr; }
}
@media(max-width:640px){
 .erp-topbar { min-height:78px;padding:10px 13px; }.erp-topbar h1 { font-size:18px; }.erp-eyebrow { display:none; }
 .erp-content { padding:16px 12px 35px; }
 .module-launchpad { padding:18px; }.module-launchpad nav { grid-template-columns:1fr; }.module-launchpad nav a { min-height:95px;border-right:0; }
 .module-intro { min-height:240px;padding:24px 19px; }.module-intro h2 { font-size:30px; }
 .signal-kpi-grid,.signal-kpi-grid.four { grid-template-columns:1fr; }
 .signal-kpi { min-height:105px; }
 .finance-footnotes { grid-template-columns:1fr; }
 .friendly-empty { grid-template-columns:45px 1fr; }.friendly-empty button { grid-column:2;justify-self:start; }
 .diary-list>button { grid-template-columns:55px 1fr; }.diary-list>button>div:last-child { grid-column:2;text-align:left;display:flex;align-items:center;gap:15px; }.diary-list small { margin:0; }
 .report-command { grid-template-columns:1fr;padding:25px; }.pulse-ring { width:150px;height:150px; }.report-signal-stack { grid-column:auto;grid-template-columns:1fr 1fr; }.report-section-grid { gap:12px; }
 .report-card>div { grid-template-columns:1fr; }
}
@media print{
 .erp-sidebar,.erp-topbar,.module-actions { display:none!important; }
 .erp-app,.erp-main { display:block!important; }
 .erp-content { padding:0;max-width:none; }
 .reports-intro { min-height:auto;background:white;color:#222;padding:0 0 20px; }
 .reports-intro p { color:#555; }.reports-intro:after { display:none; }
 .report-command { background:#333;break-inside:avoid; }
 .report-card,.report-integrity { break-inside:avoid;box-shadow:none; }
}

@media (max-width:480px) {
  .mc-hero-copy h1{font-size:45px}.mc-hero-facts strong{font-size:18px}.mc-hero-stage{min-height:380px}.mc-site-tag{top:18px;left:18px}.mc-machine-badge{right:0;bottom:55px;min-height:84px}.mc-machine-badge>.mc-icon{font-size:43px}.mc-purpose h2,.mc-section-head h2,.mc-os h2,.mc-leadership h2,.mc-contact h2{font-size:42px}.mc-purpose-card{padding:25px}.mc-project-info h3{font-size:39px}.mc-process-line{grid-template-columns:1fr}.mc-founders article>div{aspect-ratio:4/4.2}
}
@media (prefers-reduced-motion:reduce) { .mc-hero-image img,.mc-machine-badge,.mc-ticker>div,.mc-os-chart i{animation:none!important}.mc-button,.mc-project-media img{transition:none!important} }

/* Mahaveer public consultation + NIRMAAN release */
.public-nav .erp-header-link { color:var(--mc-orange); }
.mc-capability-grid { gap:1px; background:rgba(255,255,255,.14); }
.mc-capability-detail { min-width:0; background:var(--mc-charcoal); transition:background .25s; }
.mc-capability-detail[open] { grid-column:1 / -1; background:#393735; }
.mc-capability-detail summary { min-height:350px; padding:30px; display:flex; flex-direction:column; position:relative; cursor:pointer; list-style:none; }
.mc-capability-detail summary::-webkit-details-marker { display:none; }
.mc-capability-detail summary:hover { background:var(--mc-orange); }
.mc-capability-detail summary>span { position:absolute; right:25px; top:27px; color:#918d88; font-size:9px; letter-spacing:.14em; }
.mc-capability-detail summary:hover>span { color:white; }
.mc-capability-detail summary h3 { font-size:25px; line-height:1.2; margin:40px 0 14px; }
.mc-capability-detail summary>p { margin:0; color:#bdb9b3; font-size:12px; line-height:1.75; }
.mc-capability-detail summary:hover>p { color:white; }
.mc-capability-detail summary:hover .mc-capability-icon { color:var(--mc-charcoal); background:white; }
.mc-expand-label { margin-top:auto; padding-top:25px; color:#ff9a79; font-size:10px; font-weight:800; }
.mc-expand-label i { width:18px; height:18px; display:inline-grid; place-items:center; border:1px solid currentColor; border-radius:50%; margin-right:7px; font-style:normal; transition:transform .25s; }
.mc-capability-detail[open] .mc-expand-label i { transform:rotate(45deg); }
.mc-capability-detail summary:hover .mc-expand-label { color:white; }
.mc-capability-panel { padding:0 30px 34px; border-top:1px solid rgba(255,255,255,.12); }
.mc-capability-overview { max-width:850px; color:white!important; font-size:16px!important; line-height:1.7!important; padding:28px 0; margin:0!important; }
.mc-phase-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:1px; background:rgba(255,255,255,.13); border:1px solid rgba(255,255,255,.13); }
.mc-capability-grid .mc-phase-grid article,
.mc-capability-grid .mc-phase-grid article:nth-child(3n),
.mc-capability-grid .mc-phase-grid article:nth-child(n+4) { min-height:245px; padding:22px; border:0; background:#302f2e; display:block; transform:none; }
.mc-capability-grid .mc-phase-grid article:hover { background:#443f3b; transform:none; }
.mc-phase-grid article>span { position:static; color:var(--mc-orange)!important; font-size:8px; font-weight:850; letter-spacing:.11em; }
.mc-phase-grid h4 { margin:24px 0 10px; font-size:15px; line-height:1.35; color:white; }
.mc-phase-grid article p,
.mc-phase-grid article:hover p { color:#c8c3bd; font-size:10px; line-height:1.7; }
.mc-capability-cta { display:inline-flex; align-items:center; gap:55px; min-height:52px; margin-top:25px; padding:0 20px; background:var(--mc-orange); color:white!important; font-size:10px; font-weight:850; }
.mc-capability-cta:hover { background:white; color:var(--mc-charcoal)!important; }

.mc-nirmaan { padding:115px clamp(24px,5vw,82px); background:#272625; color:white; position:relative; overflow:hidden; }
.mc-nirmaan:before { content:"N"; position:absolute; right:-40px; top:25px; color:rgba(255,255,255,.025); font-size:520px; font-weight:900; line-height:.8; }
.mc-nirmaan .mc-section-head { position:relative; z-index:1; }
.mc-nirmaan-word { position:relative; z-index:1; display:grid; grid-template-columns:repeat(7,1fr); margin-top:70px; border-top:1px solid rgba(255,255,255,.18); border-bottom:1px solid rgba(255,255,255,.18); }
.mc-nirmaan-word article { min-width:0; padding:28px 18px 32px; border-right:1px solid rgba(255,255,255,.13); }
.mc-nirmaan-word article:last-child { border-right:0; }
.mc-nirmaan-word article>b { display:block; color:var(--mc-orange); font-size:60px; line-height:1; letter-spacing:-.06em; }
.mc-nirmaan-word article div>span { display:block; color:#7f7b76; font-size:8px; letter-spacing:.15em; margin:22px 0 8px; }
.mc-nirmaan-word h3 { min-height:43px; font-size:13px; line-height:1.35; margin:0 0 12px; }
.mc-nirmaan-word p { color:#bdb8b2; font-size:9px; line-height:1.7; margin:0; }
.mc-nirmaan-footer { position:relative; z-index:1; display:flex; justify-content:space-between; align-items:center; gap:30px; margin-top:35px; }
.mc-nirmaan-footer>p { display:flex; flex-wrap:wrap; align-items:center; gap:12px; color:#aca7a1; font-size:9px; letter-spacing:.08em; }
.mc-nirmaan-footer>p strong { color:white; }
.mc-nirmaan-footer>p i { width:30px; height:1px; background:var(--mc-orange); }

.mc-leadership-principle { margin:35px 0 0; padding:22px 0 0; border-top:1px solid rgba(255,255,255,.14); }
.mc-leadership-principle span { color:var(--mc-orange); font-size:8px; font-weight:900; letter-spacing:.14em; }
.mc-leadership-principle p { color:#e1ddd8; font-size:14px; line-height:1.7; }
.mc-founders article { padding-bottom:25px; }
.mc-founders article>p { margin:17px 22px 0; color:#c2bdb7; font-size:10px; line-height:1.72; }
.mc-founders article>ul { list-style:none; display:flex; flex-wrap:wrap; gap:6px; padding:0; margin:19px 22px 0; }
.mc-founders article>ul li { border:1px solid rgba(255,255,255,.16); padding:6px 8px; color:#eeeae6; font-size:7px; letter-spacing:.04em; }
.mc-contact .mc-contact-primary { display:flex; width:max-content; min-height:48px; align-items:center; justify-content:space-between; gap:55px; padding:0 18px; background:var(--mc-orange); color:white; }
.mc-contact .mc-contact-primary:hover { background:white; color:var(--mc-charcoal); }
.mc-contact .mc-contact-primary+a { display:flex; width:max-content; font-size:10px; }

.consult-page { min-height:100vh; background:var(--mc-cream); }
.consult-hero { min-height:510px; display:grid; grid-template-columns:1.2fr .8fr; gap:70px; align-items:end; padding:90px clamp(24px,6vw,100px) 75px; color:white; background:linear-gradient(120deg,rgba(36,35,34,.94),rgba(36,35,34,.80)),url("/company/panchayat-sarkar-bhawan-fafaut.jpeg") center/cover; }
.consult-hero h1 { margin:28px 0 18px; max-width:900px; font-size:clamp(48px,6vw,86px); line-height:.93; letter-spacing:-.06em; }
.consult-hero h1 em { color:var(--mc-orange); font-style:normal; }
.consult-hero>div>p { max-width:720px; color:#d1ccc6; font-size:14px; line-height:1.75; }
.consult-hero ol { list-style:none; display:grid; grid-template-columns:repeat(3,1fr); padding:0; margin:0; border-top:1px solid rgba(255,255,255,.24); }
.consult-hero li { min-height:125px; padding:23px 14px; border-right:1px solid rgba(255,255,255,.16); }
.consult-hero li:last-child { border-right:0; }
.consult-hero li b,.consult-hero li span { display:block; }
.consult-hero li b { color:var(--mc-orange); font-size:11px; }
.consult-hero li span { margin-top:34px; font-size:10px; font-weight:800; }
.consult-body { padding:95px clamp(24px,6vw,100px); display:grid; grid-template-columns:.62fr 1.38fr; gap:clamp(45px,7vw,110px); align-items:start; }
.consult-aside { position:sticky; top:125px; }
.consult-aside>span { color:var(--mc-orange); font-size:9px; font-weight:900; letter-spacing:.15em; }
.consult-aside h2 { font-size:37px; line-height:1.04; letter-spacing:-.045em; margin:22px 0 15px; }
.consult-aside>p { color:#706a64; font-size:12px; line-height:1.75; }
.consult-aside ul { list-style:none; padding:20px 0; margin:25px 0; border-top:1px solid #d3cdc4; border-bottom:1px solid #d3cdc4; }
.consult-aside li { padding:9px 0 9px 18px; position:relative; font-size:10px; }
.consult-aside li:before { content:""; position:absolute; left:0; top:14px; width:7px; height:2px; background:var(--mc-orange); }
.consult-aside a { color:var(--mc-orange); font-size:10px; font-weight:850; }
.consult-form { background:white; border:1px solid #ded8cf; padding:clamp(28px,4vw,55px); box-shadow:0 26px 70px rgba(40,37,33,.08); }
.consult-form-head>span { color:var(--mc-orange); font-size:8px; font-weight:900; letter-spacing:.15em; }
.consult-form-head h2 { font-size:clamp(30px,3.5vw,49px); letter-spacing:-.05em; margin:18px 0 9px; }
.consult-form-head p { color:#77716b; font-size:11px; line-height:1.65; margin:0 0 35px; }
.consult-error { background:#fff0ed; border-left:3px solid #c63f24; color:#7d2517; padding:13px; margin-bottom:20px; font-size:10px; }
.consult-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.consult-grid label { display:grid; gap:8px; }
.consult-grid label.full { grid-column:1 / -1; }
.consult-grid label>span { color:#57524d; font-size:8px; font-weight:800; letter-spacing:.04em; }
.consult-grid input,.consult-grid select,.consult-grid textarea { width:100%; border:1px solid #d9d4cd; border-radius:0; background:#fbfaf8; color:#2e2d2c; padding:0 13px; font:inherit; font-size:11px; outline:none; }
.consult-grid input,.consult-grid select { height:49px; }
.consult-grid textarea { min-height:150px; padding-top:13px; resize:vertical; line-height:1.6; }
.consult-grid input:focus,.consult-grid select:focus,.consult-grid textarea:focus { border-color:var(--mc-orange); box-shadow:0 0 0 2px rgba(239,80,34,.1); }
.consult-honeypot { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
.consult-consent { display:flex; align-items:flex-start; gap:10px; margin:24px 0 18px; color:#625d57; font-size:9px; line-height:1.5; }
.consult-consent input { accent-color:var(--mc-orange); margin-top:1px; }
.consult-submit { width:100%; min-height:56px; border:0; background:var(--mc-orange); color:white; display:flex; align-items:center; justify-content:space-between; padding:0 20px; font-weight:850; cursor:pointer; }
.consult-submit:disabled { opacity:.6; cursor:wait; }
.consult-privacy { color:#969089; font-size:8px; text-align:center; margin:12px 0 0; }
.consult-success { background:white; border-top:5px solid var(--mc-orange); padding:55px; box-shadow:0 26px 70px rgba(40,37,33,.08); }
.consult-success>span { width:50px; height:50px; display:grid; place-items:center; background:#eaf7ed; color:#247536; border-radius:50%; font-size:22px; }
.consult-success>p:first-of-type { color:var(--mc-orange); font-size:8px; font-weight:900; letter-spacing:.15em; margin-top:25px; }
.consult-success h2 { font-size:40px; line-height:1.05; letter-spacing:-.045em; }
.consult-success>p { color:#706a64; line-height:1.7; }
.consult-success>div { display:grid; gap:5px; padding:18px; background:var(--mc-cream); margin:25px 0; }
.consult-success small { color:#918b84; font-size:8px; letter-spacing:.12em; }
.consult-success strong { color:var(--mc-orange); font-size:18px; }
.consult-success button { border:0; background:var(--mc-charcoal); color:white; min-height:44px; padding:0 16px; cursor:pointer; }
.consult-footer { display:flex; justify-content:space-between; padding:24px clamp(24px,6vw,100px); background:var(--mc-charcoal); color:#bdb8b2; font-size:9px; }
.consult-footer a { color:#ff9b7b; }

.enquiry-list { display:grid; gap:12px; }
.enquiry-list>article { border:1px solid var(--border); border-radius:10px; overflow:hidden; }
.enquiry-top { min-height:46px; display:grid; grid-template-columns:1fr auto 125px; gap:14px; align-items:center; padding:0 14px; background:var(--canvas); border-bottom:1px solid var(--border); }
.enquiry-top>span { color:var(--orange-dark); font-size:8px; font-weight:900; letter-spacing:.06em; }
.enquiry-top time { color:var(--muted); font-size:8px; }
.enquiry-top select { height:30px; border:1px solid var(--border); border-radius:6px; background:white; font-size:8px; padding:0 7px; }
.enquiry-body { display:grid; grid-template-columns:.72fr 1fr 1.65fr; gap:22px; padding:18px; }
.enquiry-body h3 { margin:0 0 4px; font-size:14px; }
.enquiry-body>div:first-child p { margin:0 0 8px; color:var(--muted); font-size:8px; }
.enquiry-body a { display:block; color:var(--orange-dark); font-size:8px; margin-top:5px; }
.enquiry-body>div:nth-child(2)>span,.enquiry-body>div:nth-child(2)>b,.enquiry-body>div:nth-child(2)>small { display:block; }
.enquiry-body>div:nth-child(2)>span { color:var(--muted); font-size:7px; letter-spacing:.12em; }
.enquiry-body>div:nth-child(2)>b { font-size:9px; margin:7px 0; }
.enquiry-body>div:nth-child(2)>small { color:var(--muted); font-size:8px; margin-top:4px; }
.enquiry-body>p { margin:0; color:#5f5a55; font-size:9px; line-height:1.65; white-space:pre-wrap; }

@media (max-width:1100px) {
  .mc-phase-grid { grid-template-columns:repeat(2,1fr); }
  .mc-nirmaan-word { grid-template-columns:repeat(4,1fr); }
  .mc-nirmaan-word article { border-bottom:1px solid rgba(255,255,255,.13); }
  .consult-hero { grid-template-columns:1fr; gap:35px; }
  .consult-body { grid-template-columns:1fr; }
  .consult-aside { position:static; max-width:760px; }
  .enquiry-body { grid-template-columns:1fr 1fr; }
  .enquiry-body>p { grid-column:1 / -1; }
}
@media (max-width:760px) {
  .portal-button { font-size:0; }
  .portal-button:before { content:"Enquire"; font-size:11px; }
  .mc-nirmaan { padding:78px 20px; }
  .mc-capability-detail summary { min-height:325px; }
  .mc-capability-panel { padding:0 18px 25px; }
  .mc-phase-grid { grid-template-columns:1fr; }
  .mc-capability-grid .mc-phase-grid article,
  .mc-capability-grid .mc-phase-grid article:nth-child(3n),
  .mc-capability-grid .mc-phase-grid article:nth-child(n+4) { min-height:0; border-bottom:1px solid rgba(255,255,255,.12); }
  .mc-nirmaan-word { grid-template-columns:1fr; margin-top:45px; }
  .mc-nirmaan-word article { display:grid; grid-template-columns:70px 1fr; padding:24px 0; border-right:0; }
  .mc-nirmaan-word article>b { font-size:54px; padding-left:12px; }
  .mc-nirmaan-word article div>span { margin-top:0; }
  .mc-nirmaan-word h3 { min-height:0; }
  .mc-nirmaan-footer { align-items:flex-start; flex-direction:column; }
  .mc-leadership-principle p { font-size:12px; }
  .consult-hero { min-height:560px; padding:70px 20px 45px; }
  .consult-hero h1 { font-size:50px; }
  .consult-body { padding:70px 20px; }
  .consult-grid { grid-template-columns:1fr; }
  .consult-grid label.full { grid-column:auto; }
  .consult-form { padding:28px 20px; }
  .consult-footer { flex-direction:column; gap:12px; }
  .enquiry-top { grid-template-columns:1fr; padding:12px; gap:8px; }
  .enquiry-top select { width:100%; }
  .enquiry-body { grid-template-columns:1fr; }
  .enquiry-body>p { grid-column:auto; }
}
@media (max-width:480px) {
  .mc-nirmaan .mc-section-head h2,.consult-success h2 { font-size:36px; }
  .consult-hero h1 { font-size:43px; }
  .consult-hero ol { grid-template-columns:1fr; }
  .consult-hero li { min-height:auto; display:grid; grid-template-columns:35px 1fr; align-items:center; border-right:0; border-bottom:1px solid rgba(255,255,255,.16); padding:15px 0; }
  .consult-hero li span { margin:0; }
}

/* v2 daily site control: scoped entirely to ERP */
.pure-erp{--erp-primary:#741d31;--erp-accent:#ee7148;--erp-background:#f7f5f2;background:var(--erp-background)}
.pure-erp .pure-main{background:var(--erp-background)}
.pure-erp .btn.primary,.pure-erp .pure-sidebar nav a.active{background:var(--erp-primary);border-color:var(--erp-primary);color:white}
.pure-erp progress{accent-color:var(--erp-primary);display:block;width:130px;height:8px}
.pure-erp .pure-card.full{grid-column:1/-1;min-width:0}
.erp-table-wrap{max-width:100%;overflow-x:auto}.pure-erp table{min-width:650px}.pure-erp td small{display:block;font-size:11px;margin-top:5px;color:#687280}.pure-erp input:not([type=checkbox]):not([type=range]),.pure-erp select,.pure-erp textarea{max-width:100%}
.erp-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:20px 0}.erp-kpis>div{padding:20px;background:#f5f3f1;border-radius:12px}.erp-kpis small,.erp-kpis strong{display:block}.erp-kpis strong{font-size:25px;margin-top:10px}
.erp-launchpad{display:flex;gap:12px;flex-wrap:wrap}.erp-launchpad a{padding:12px 16px;border:1px solid #d9d5d1;border-radius:8px}
.erp-stepper{display:flex;gap:8px;margin:20px 0;flex-wrap:wrap}.erp-stepper button{padding:12px 16px;border:1px solid #dedbd7;border-radius:8px;background:#fff;color:#292d33}.erp-stepper button.active{background:var(--erp-primary);color:white}.erp-stepper button:disabled{opacity:.5}
.erp-entry{border:1px solid #dedbd7;padding:20px;margin:16px 0;border-radius:12px}.erp-photos{display:flex;gap:12px;flex-wrap:wrap}.erp-photos img{width:150px;height:110px;object-fit:cover;border-radius:6px}.erp-photos button{display:block}
.erp-review-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:6px 20px}.erp-drawing-scroll{overflow:auto;border:1px solid #d8d8d8;background:#e5e7eb}.erp-drawing-canvas{position:relative;min-width:100%}.erp-marker{position:absolute;inset:0;cursor:crosshair;touch-action:none}.erp-modal{position:fixed;inset:0;background:#0009;z-index:100;display:flex;justify-content:center;align-items:center;padding:20px}.erp-modal>section{width:min(1100px,100%);height:92vh;overflow:auto}.erp-drawing-view{width:100%;height:70vh;margin-top:12px}
.erp-check{display:flex;align-items:center;gap:8px;margin:8px 0}.erp-logo-preview{max-width:230px;max-height:80px;margin-top:10px;object-fit:contain}.erp-density-compact .pure-card{padding:18px}.erp-density-compact td,.erp-density-compact th{padding:10px 12px}
.erp-theme-dark{--erp-background:#171b23!important;color:#e7eaf0}.erp-theme-dark .pure-card,.erp-theme-dark .pure-topbar,.erp-theme-dark .pure-sidebar{background:#232936;color:#e7eaf0}.erp-theme-dark input,.erp-theme-dark select,.erp-theme-dark textarea,.erp-theme-dark .erp-kpis>div{background:#151a24!important;color:#e7eaf0!important;border-color:#485064!important}.erp-theme-dark th,.erp-theme-dark .pure-note{background:#303747;color:#e7eaf0}.erp-theme-dark td{color:#e7eaf0}.erp-theme-dark h1,.erp-theme-dark h2,.erp-theme-dark h3,.erp-theme-dark p{color:inherit}
@media(max-width:800px){.erp-kpis{grid-template-columns:repeat(2,1fr)}.pure-actions{flex-wrap:wrap}.erp-modal{padding:8px}.erp-modal>section{padding:16px}.erp-stepper button{flex:1;min-width:140px}}

.pure-erp .pure-card{padding:24px}.pure-erp .pure-card .panel-head{padding:0}.pure-erp .pure-grid>.pure-card.wide{grid-column:1/-1}.pure-erp .admin-form-grid{padding:0}.pure-erp .form-field>span{font-size:12px}.pure-erp .erp-line{display:flex;gap:10px;align-items:center;margin:12px 0}.pure-erp .erp-line input,.pure-erp .erp-line select{flex:1;min-width:0}.pure-erp .pure-card>h2{font-size:20px;margin:0 0 12px}.pure-erp .pure-card>p{font-size:13px;line-height:1.6;margin-bottom:18px}.pure-erp .text-button{font-size:12px;margin:6px 10px 6px 0}.pure-erp .admin-error{display:block;margin-bottom:15px}
@media(max-width:680px){.pure-topbar{flex-wrap:wrap;gap:12px}.pure-topbar>div{width:100%}.pure-actions label{flex:1;width:180px}.pure-erp .pure-card{padding:18px}.pure-erp .erp-line{flex-wrap:wrap}.pure-erp .erp-line input,.pure-erp .erp-line select{flex-basis:45%}}
