/* Tendiqo system layer: one archival-engineering material language for every product surface. */
:root {
  --td-ink: #111311;
  --td-graphite: #0b0d0c;
  --td-paper: #ece8df;
  --td-sheet: #f7f4ed;
  --td-line: #706c63;
  --td-faint-line: rgba(24, 25, 23, .18);
  --td-copper: #8f4b32;
  --td-copper-on-dark: #c67b57;
  --td-sand: #d9c6a7;
  --td-mint: #b9d7ca;
  --td-muted: #625f58;
  --td-board: linear-gradient(rgba(9, 11, 10, .82), rgba(9, 11, 10, .91)), url("./assets/graphite-texture.png") center / 560px repeat, var(--td-graphite);
  --td-paper-field: linear-gradient(rgba(247, 244, 237, .88), rgba(235, 231, 221, .91)), url("./assets/paper-texture.png") center / 420px repeat, var(--td-paper);
  --td-display: Impact, Haettenschweiler, "Arial Narrow Bold", Bahnschrift, sans-serif;
  --td-body: "Segoe UI Variable Text", "Segoe UI", Arial, sans-serif;
}

html { background: var(--td-graphite); }
body { min-width: 320px; background: var(--td-board); color: var(--td-ink); font-family: var(--td-body); }
body:not([data-platform-role="public"]) { background: var(--td-board); }
body:not([data-platform-role="public"]) :is(.modules-shell,.calculator-shell,.estimate-shell,.norms-shell,.land-shell,.personal-space) { width: min(1440px, calc(100% - 48px)); margin: 0 auto; padding: 0 0 72px; }
body:not([data-platform-role="public"]) :is(.modules-header,.calculator-header,.estimate-header,.topbar,.land-header,.personal-space__header) {
  min-height: 76px; margin: 0; border: 1px solid rgba(244, 241, 233, .28); border-top: 0; background: var(--td-board); color: #f5f1e9; padding: 14px clamp(18px, 2.5vw, 38px);
}
body:not([data-platform-role="public"]) :is(.modules-header,.calculator-header,.estimate-header,.land-header,.personal-space__header) a,
body:not([data-platform-role="public"]) .topbar a { color: inherit; }
body:not([data-platform-role="public"]) :is(.brand,.topbar .brand,.calculator-header span,.estimate-header span,.land-header .brand,.personal-space__brand) {
  font-family: var(--td-display); font-size: clamp(21px, 2vw, 30px); font-weight: 900; letter-spacing: .025em;
}
body:not([data-platform-role="public"]) :is(.topbar nav a,.topbar-actions button,.calculator-header > a,.estimate-header > a,.modules-header .logout) { font-size: 12px; font-weight: 700; letter-spacing: .015em; }
body:not([data-platform-role="public"]) :is(.modules-header,.calculator-header,.estimate-header,.topbar,.land-header,.personal-space__header) .logout { border-color: rgba(244, 241, 233, .58); color: #f4f1eb; }
body:not([data-platform-role="public"]) :is(.modules-header,.calculator-header,.estimate-header,.topbar,.land-header,.personal-space__header) .logout:hover { background: #f4f1eb; color: var(--td-ink); }
body:not([data-platform-role="public"]) :is(.modules-hero,.calculator-intro,.estimate-intro,.page-heading,.land-hero,.personal-space__intro) {
  position: relative; min-height: 520px; max-width: none; overflow: hidden; margin: 0; border: 1px solid rgba(244, 241, 233, .28); border-top: 0; background: var(--td-board); color: #f4f1eb; padding: clamp(48px, 7vw, 100px) clamp(24px, 6vw, 94px) clamp(44px, 6vw, 78px);
}
body:not([data-platform-role="public"]) :is(.modules-hero,.calculator-intro,.estimate-intro,.page-heading,.land-hero,.personal-space__intro)::after {
  position: absolute; right: -1%; bottom: -2px; width: 420px; height: 420px; opacity: .46; background: url("./assets/tendiqo-surveyor-mark.png") center bottom / contain no-repeat; content: ""; filter: grayscale(1) contrast(1.1);
}
body:not([data-platform-role="public"]) :is(.modules-hero,.calculator-intro,.estimate-intro,.page-heading,.land-hero,.personal-space__intro) > * { position: relative; z-index: 1; }
body:not([data-platform-role="public"]) :is(.modules-hero h1,.calculator-intro h1,.estimate-intro h1,.page-heading h1,.land-hero h1,.personal-space__intro h1) {
  max-width: 960px; margin: 12px 0 18px; overflow-wrap: normal; hyphens: auto; background: linear-gradient(rgba(246, 242, 232, .84), rgba(225, 218, 204, .84)), url("./assets/tendiqo-dry-ink-texture.png") center / 440px repeat; color: transparent; font-family: var(--td-display); font-size: clamp(52px, 7vw, 104px); font-weight: 900; letter-spacing: .01em; line-height: .88; -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
}
body:not([data-platform-role="public"]) :is(.modules-hero h1,.estimate-intro h1,.land-hero h1) { max-width: 820px; }
body:not([data-platform-role="public"]) .estimate-intro h1 { max-width: 900px; font-size:clamp(52px, 6.2vw, 88px); hyphens:none; }
body:not([data-platform-role="public"]) :is(.modules-hero > p:last-child,.calculator-intro > p:last-child,.estimate-intro > p:last-child,.page-heading > div > p:last-child,.land-hero > p:last-child,.personal-space__intro > p:last-child) { max-width: 720px; color: #d6d0c5; font-size: 16px; line-height: 1.55; }
body:not([data-platform-role="public"]) .eyebrow { color: var(--td-copper); font-size: 10px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
body:not([data-platform-role="public"]) :is(.modules-hero,.calculator-intro,.estimate-intro,.page-heading,.land-hero,.personal-space__intro,.registration-frame__side,.course-check) .eyebrow,
body:not([data-platform-role="public"]) .modules-hero__manifest b { color: var(--td-copper-on-dark); }

body:not([data-platform-role="public"]) :is(.modules-grid,.calculator-catalog,.calculator-panel,.water-balance-panel,.saved,.tz-workspace,.estimate-workspace,.workspace-grid,.context-navigator,.reader-fund,.reader-history,.section-bookmarks-panel,.project-contexts,.project-worklist,.project-update-worklist,.notifications-panel,.updates-panel,.reference-backlog,.reader-quality-panel,.collections-panel,.corporate-panel,.land-panel,.personal-card,.personal-space__grid,.legal-page__principles,.legal-page__documents,.legal-page__company) {
  border: 1px solid var(--td-line); border-radius: 0; background: var(--td-paper-field); box-shadow: none;
}
body:not([data-platform-role="public"]) :is(.calculator-catalog,.calculator-panel,.water-balance-panel,.saved,.tz-workspace,.estimate-workspace,.context-navigator,.reader-fund,.reader-history,.section-bookmarks-panel,.project-contexts,.project-worklist,.project-update-worklist,.notifications-panel,.updates-panel,.reference-backlog,.reader-quality-panel,.collections-panel,.corporate-panel,.land-panel) { margin-top: 28px; padding: clamp(22px, 3vw, 42px); }
body:not([data-platform-role="public"]) :is(.module-card,.calculator-card,.tz-card,.table-workbench,.table-editor,.calculation-results,.water-inputs,.fire-inputs,.saved-estimate,.land-card,.personal-card) {
  border: 1px solid var(--td-line); border-radius: 0; background: rgba(248, 246, 240, .72); box-shadow: inset 0 4px 0 rgba(168, 102, 71, .55);
}
body:not([data-platform-role="public"]) :is(.module-card,.calculator-card) { min-height: 300px; padding: 26px; }
body:not([data-platform-role="public"]) :is(.module-card:hover,.calculator-card:hover) { background: #141716; color: #f5f1e9; transform: none; }
body:not([data-platform-role="public"]) :is(.module-card:hover,.calculator-card:hover) :is(p,span,h2,h3,b) { color: inherit; }
body:not([data-platform-role="public"]) :is(.module-card h2,.calculator-card h3,.form-heading h2,.section-heading h2,.catalog-toolbar h2,.personal-card h2,.land-panel h2) { font-family: var(--td-display); font-weight: 900; letter-spacing: .015em; line-height: .95; }
body:not([data-platform-role="public"]) :is(.module-card h2,.calculator-card h3) { font-size: clamp(28px, 3.2vw, 44px); }
body:not([data-platform-role="public"]) .calculator-card h3 { font-size: 30px; overflow-wrap: normal; word-break: normal; hyphens: auto; }
body:not([data-platform-role="public"]) :is(.calculator-cards,.modules-grid) { gap: 0; }
body:not([data-platform-role="public"]) :is(.calculator-cards,.modules-grid) > * { border-color: var(--td-line); }
body:not([data-platform-role="public"]) :is(.workspace-grid,.calculator-panel,.estimate-workspace,.water-balance-layout,.personal-space__grid) { gap: 0; }
body:not([data-platform-role="public"]) :is(.workspace-grid > *,.calculator-panel > *,.estimate-workspace > *,.water-balance-layout > *,.personal-space__grid > *) { border-color: var(--td-line); }
body:not([data-platform-role="public"]) :is(.filters,.detail-panel,.catalog,.table-workbench,.table-editor,.calculation-results,.estimate-editor,.estimate-summary,.saved-estimates) { background: var(--td-paper-field); }

body:not([data-platform-role="public"]) :is(input,select,textarea) { border: 1px solid #817b70; border-radius: 0; background: rgba(255, 255, 255, .7); color: var(--td-ink); box-shadow: none; }
body:not([data-platform-role="public"]) :is(input,select,textarea):focus { border-color: var(--td-copper); outline: 2px solid rgba(168, 102, 71, .2); outline-offset: 1px; }
body:not([data-platform-role="public"]) :is(.button,.primary,.primary-button,.secondary,.secondary-button,.logout,.text-button,.danger) { border-radius: 0; box-shadow: none; font-family: var(--td-body); font-weight: 800; }
body:not([data-platform-role="public"]) :is(.button,.primary,.primary-button) { border: 1px solid var(--td-graphite); background: var(--td-graphite); color: #f4f1eb; }
body:not([data-platform-role="public"]) :is(.button,.primary,.primary-button):hover { background: var(--td-copper); border-color: var(--td-copper); }
body:not([data-platform-role="public"]) :is(.secondary,.secondary-button,.logout) { border: 1px solid var(--td-ink); background: transparent; color: var(--td-ink); }
body:not([data-platform-role="public"]) :is(.secondary,.secondary-button,.logout):hover { background: var(--td-ink); color: #f4f1eb; }
body:not([data-platform-role="public"]) :is(table,th,td,.table-wrap,.water-table-wrap,.balance-detail-wrap) { border-color: var(--td-line); }
body:not([data-platform-role="public"]) :is(th,.table-wrap thead) { background: var(--td-graphite); color: #f4f1eb; }
body:not([data-platform-role="public"]) :is(.tag,.status,.health-dot,.catalog-health,.catalog-toolbar > span,.module-card p,.calculator-card > span) { border-radius: 0; }
body:not([data-platform-role="public"]) .page-heading .catalog-health { border-color: var(--td-line); background: var(--td-paper-field); color: var(--td-ink); }
body:not([data-platform-role="public"]) .page-heading .catalog-health small { color: var(--td-muted); }

/* Land auctions keep the same archive shell but use readable paper instruments. */
body:not([data-platform-role="public"]) .land-meta,
body:not([data-platform-role="public"]) .land-filters,
body:not([data-platform-role="public"]) .lot-tabs,
body:not([data-platform-role="public"]) .notice { color: #e4ded3; border-color: rgba(244, 241, 233, .26); }
body:not([data-platform-role="public"]) .land-meta > span,
body:not([data-platform-role="public"]) .notice { color: #d4cdc2; }
body:not([data-platform-role="public"]) .land-filters label { color: #e4ded3; }
body:not([data-platform-role="public"]) .land-filters button { border-color: rgba(244, 241, 233, .55); color: #f4f1eb; }
body:not([data-platform-role="public"]) .land-filters button:hover,
body:not([data-platform-role="public"]) .lot-tabs__button.is-active { background: var(--td-paper); color: var(--td-ink); }
body:not([data-platform-role="public"]) .lot-tabs__button { color: #d3cdc0; }
body:not([data-platform-role="public"]) .lots { margin-top: 28px; }
body:not([data-platform-role="public"]) .lot,
body:not([data-platform-role="public"]) .lots > .empty { border: 1px solid var(--td-line); border-radius: 0; background: var(--td-paper-field); color: var(--td-ink); }

/* Homepage uses the same materials, while retaining its public hierarchy. */
body[data-platform-role="public"] .public-home__masthead,
body[data-platform-role="public"] .public-home__workflow,
body[data-platform-role="public"] .public-home__trust,
body[data-platform-role="public"] .public-footer { background: var(--td-board); }
body[data-platform-role="public"] .public-home__hero { background: var(--td-board); }
body[data-platform-role="public"] .public-home__hero-copy { background: linear-gradient(90deg, rgba(7, 9, 8, .92), rgba(7, 9, 8, .68)); }
body[data-platform-role="public"] .public-home__modules,
body[data-platform-role="public"] .public-home__normative,
body[data-platform-role="public"] .public-home__access { background: var(--td-paper-field); }
body[data-platform-role="public"] :is(.public-home__module,.public-home__requirement-card,.public-home__norm-card) { border-radius: 0; box-shadow: none; }
body[data-platform-role="public"] .public-home__module--calculator { background: linear-gradient(rgba(222, 237, 228, .86), rgba(222, 237, 228, .86)), url("./assets/paper-texture.png") center / 420px repeat; }
body[data-platform-role="public"] .public-home__module--estimate { background: linear-gradient(rgba(245, 236, 218, .88), rgba(245, 236, 218, .88)), url("./assets/paper-texture.png") center / 420px repeat; }
body[data-platform-role="public"] .public-home__module:hover { background: var(--td-graphite); color: #f4f1eb; }
body[data-platform-role="public"] .public-home__module:hover :is(p,h3,span,strong,footer) { color: inherit; }

/* The opening panel reads as an engineer's desk: profile on the left, source documents on the right. */
body[data-platform-role="public"] .public-home__hero { grid-template-columns:minmax(0,1.14fr) minmax(360px,.86fr); min-height:760px; }
body[data-platform-role="public"] .public-home__hero-copy { justify-content:flex-start; padding-top:clamp(92px,10vw,144px); }
body[data-platform-role="public"] .public-home__hero-copy h1 { max-width:620px; font-size:clamp(64px,5.7vw,102px); line-height:.86; }
body[data-platform-role="public"] .public-home__lead { max-width:555px; }
body[data-platform-role="public"] .public-home__hero-copy::after { width:255px; height:82px; margin-top:auto; background:url("./assets/hero-worker-chain-transparent.png") left bottom / contain no-repeat; content:""; opacity:.92; }
body[data-platform-role="public"] .public-home__hero-art { border-left:0; }
body[data-platform-role="public"] .public-home__hero-dossiers { width:min(128%,820px); opacity:.84; transform:rotate(-3deg) translate(7%,6%); }
body[data-platform-role="public"] .public-home__hero-norm-card,
body[data-platform-role="public"] .public-home__hero-trace { display:none; }

@media (max-width: 760px) {
  body[data-platform-role="public"] .public-home__hero { grid-template-columns:1fr; min-height:620px; }
  body[data-platform-role="public"] .public-home__hero-copy { min-height:620px; padding-top:72px; }
  body[data-platform-role="public"] .public-home__hero-copy h1 { font-size:clamp(54px,15vw,68px); }
  body[data-platform-role="public"] .public-home__hero-copy::after { width:190px; height:64px; margin-top:36px; }
  body[data-platform-role="public"] .public-home__hero-art { display:none; }
}

@media (max-width: 900px) {
  body:not([data-platform-role="public"]) :is(.modules-shell,.calculator-shell,.estimate-shell,.norms-shell,.land-shell,.personal-space) { width: min(100% - 24px, 1440px); }
  body:not([data-platform-role="public"]) :is(.modules-hero,.calculator-intro,.estimate-intro,.page-heading,.land-hero,.personal-space__intro) { padding: 48px 26px; }
}
@media (max-width: 640px) {
  body:not([data-platform-role="public"]) :is(.modules-shell,.calculator-shell,.estimate-shell,.norms-shell,.land-shell,.personal-space) { width: 100%; padding-bottom: 32px; }
  body:not([data-platform-role="public"]) :is(.modules-header,.calculator-header,.estimate-header,.topbar,.land-header,.personal-space__header) { padding: 12px 16px; }
  body:not([data-platform-role="public"]) :is(.modules-hero,.calculator-intro,.estimate-intro,.page-heading,.land-hero,.personal-space__intro) { min-height: 430px; padding: 42px 20px 36px; }
  body:not([data-platform-role="public"]) .land-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body:not([data-platform-role="public"]) .land-filters > * { min-width: 0; }
  body:not([data-platform-role="public"]) .land-filters :is(input, select, button) { width: 100%; min-width: 0; }
  body:not([data-platform-role="public"]) :is(.modules-hero,.calculator-intro,.estimate-intro,.page-heading,.land-hero,.personal-space__intro)::after { right: 0; width: 180px; height: 180px; opacity: .16; }
  body:not([data-platform-role="public"]) .modules-hero h1 { font-size: clamp(38px, 10vw, 42px); }
  body:not([data-platform-role="public"]) :is(.modules-hero h1,.calculator-intro h1,.estimate-intro h1,.page-heading h1,.land-hero h1,.personal-space__intro h1) { font-size: clamp(44px, 15vw, 72px); }
  body:not([data-platform-role="public"]) .estimate-intro h1 { font-size: clamp(44px, 12vw, 48px); }
  body:not([data-platform-role="public"]) :is(.calculator-catalog,.calculator-panel,.water-balance-panel,.saved,.tz-workspace,.estimate-workspace,.context-navigator,.reader-fund,.reader-history,.section-bookmarks-panel,.project-contexts,.project-worklist,.project-update-worklist,.notifications-panel,.updates-panel,.reference-backlog,.reader-quality-panel,.collections-panel,.corporate-panel,.land-panel) { margin-top: 14px; padding: 18px; }
}

/* Product workspaces: a calm operations desk rather than a collection of isolated widgets. */
body:not([data-platform-role="public"]) .app-shell {
  width:min(1440px,calc(100% - 48px)); margin:0 auto; padding:0; background:var(--td-paper-field); box-shadow:0 24px 70px rgba(0,0,0,.28);
}
body:not([data-platform-role="public"]) .app-header {
  min-height:76px; border-bottom:1px solid rgba(244,241,233,.26); background:var(--td-board); color:#f4f1eb; padding:16px clamp(20px,3vw,42px);
}
body:not([data-platform-role="public"]) .page-context { color:rgba(244,241,233,.68); font-size:12px; font-weight:700; }
body:not([data-platform-role="public"]) .side-rail {
  background:var(--td-board); border-right:1px solid rgba(244,241,233,.24);
}
body:not([data-platform-role="public"]) .side-rail .brand,
body:not([data-platform-role="public"]) .side-rail a { color:#f4f1eb; }
body:not([data-platform-role="public"]) .side-nav a { border-color:rgba(244,241,233,.16); }
body:not([data-platform-role="public"]) .side-nav a.is-active { background:rgba(244,241,233,.1); color:#fff; }
body[data-platform-role="user"] .archive-hero {
  display:grid; grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr); min-height:420px; border:0; background:var(--td-board); color:#f4f1eb;
}
body[data-platform-role="user"] .archive-hero__copy { padding:clamp(42px,5vw,76px); }
body[data-platform-role="user"] .archive-hero h1 { color:#f4f1eb; font-family:var(--td-display); font-size:clamp(54px,5vw,82px); line-height:.9; }
body[data-platform-role="user"] .archive-hero__copy > p { color:rgba(244,241,235,.8); font-size:16px; line-height:1.55; }
body[data-platform-role="user"] .archive-hero__visual { display:grid; align-items:end; border-left:1px solid rgba(244,241,233,.18); padding:28px; }
body[data-platform-role="user"] .archive-hero__visual > img { width:100%; max-height:300px; filter:grayscale(1) contrast(1.1) opacity(.68); }
body[data-platform-role="user"] .company-summary,
body[data-platform-role="user"] :is(.sources-panel,.tender-register,.tender-detail,.company-profile,.profile-panel) {
  border:1px solid var(--td-line); border-radius:0; background:var(--td-paper-field); box-shadow:none;
}
body[data-platform-role="user"] .company-summary { margin:0; border-top:0; padding:28px clamp(24px,4vw,52px); }
body[data-platform-role="user"] :is(.sources-panel,.tender-register,.tender-detail,.company-profile,.profile-panel) { margin:24px; }

/* Shared interaction and number rhythm across product workspaces. */
body :is(output,time,td,dd,.metric strong,.admin-dashboard__metrics strong,.auction-row) {
  font-variant-numeric: lining-nums tabular-nums;
}
body :is(a,button,input,select,textarea,summary):focus-visible {
  outline: 2px solid var(--td-copper) !important;
  outline-offset: 2px !important;
}
body:not([data-platform-role="public"]) :is(.modules-header,.calculator-header,.estimate-header,.topbar,.land-header,.personal-space__header,.modules-hero,.calculator-intro,.estimate-intro,.page-heading,.land-hero,.personal-space__intro,.registration-frame__side) :is(a,button,input,select,textarea,summary):focus-visible {
  outline-color: var(--td-copper-on-dark) !important;
}
body :is(button,select,textarea,input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]),summary,a.button,a.primary-button,a.secondary-button,a.logout) {
  min-height: 40px;
}
body :is(.icon-button,.remove-line,.telegram-button) {
  min-width: 40px;
}
body:not([data-platform-role="public"]) :is(.table-wrap,.water-table-wrap,.balance-detail-wrap) {
  max-width: 100%;
  overflow: auto;
  overscroll-behavior-inline: contain;
  scrollbar-color: var(--td-copper) rgba(112,108,99,.2);
  scrollbar-gutter: stable;
}

@media (max-width: 760px) {
  body :is(button,select,input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),summary,.button,.primary,.primary-button,.secondary,.secondary-button,.logout) {
    min-height: 44px;
  }
  body:not([data-platform-role="public"]) .calculator-card h3 { font-size: 28px; }
}

/* Admin is an operational control room: dark status header, readable paper audit trail. */
body[data-platform-role="admin"] .app-shell { background:var(--td-paper-field); }
body[data-platform-role="admin"] .admin-dashboard { background:transparent; color:var(--td-ink); }
body[data-platform-role="admin"] .admin-dashboard__heading {
  border:0; background:var(--td-board); color:#f4f1eb; padding:clamp(34px,5vw,72px); 
}
body[data-platform-role="admin"] .admin-dashboard__heading h1 { color:#f4f1eb; font-family:var(--td-display); font-size:clamp(52px,5vw,84px); line-height:.9; }
body[data-platform-role="admin"] .admin-dashboard__metrics { border-top:1px solid rgba(244,241,233,.26); background:var(--td-board); }
body[data-platform-role="admin"] .admin-dashboard__metrics > div { min-height:122px; border-color:rgba(244,241,233,.26); background:transparent; }
body[data-platform-role="admin"] .admin-dashboard__grid { border:0; background:transparent; padding:28px; }
body[data-platform-role="admin"] .admin-section { border:1px solid var(--td-line); background:var(--td-paper-field); }
body[data-platform-role="admin"] .admin-section__heading { padding:22px 24px; }

/* Registration, recovery and the Telegram review console receive the same material hierarchy. */
body:has(.registration-page), body.auth-page, body:has(main > .intro) { min-height:100vh; background:var(--td-board); }
body .registration-page, body.auth-page .auth-page__main { width:min(1240px,calc(100% - 48px)); margin:0 auto; }
body .registration-frame, body.auth-page .auth-card { border:1px solid rgba(244,241,233,.28); border-radius:0; box-shadow:0 24px 70px rgba(0,0,0,.25); }
body .registration-frame__side { background:var(--td-board); color:#f4f1eb; }
body .registration-frame__copy h1, body.auth-page .auth-card h1 { font-family:var(--td-display); letter-spacing:.01em; line-height:.92; }
body:has(main > .intro) main { width:min(1240px,calc(100% - 48px)); margin:0 auto; padding:42px 0 72px; }
body:has(main > .intro) main > header { border:1px solid rgba(244,241,233,.28); background:var(--td-board); color:#f4f1eb; padding:18px 24px; }
body:has(main > .intro) main > header :is(a,p) { color:inherit; }
body:has(main > .intro) .intro { border:1px solid rgba(244,241,233,.28); border-top:0; background:var(--td-board); color:#f4f1eb; padding:64px 52px; }
body:has(main > .intro) .intro h1 { font-family:var(--td-display); font-size:clamp(52px,6vw,92px); line-height:.88; }
body:has(main > .intro) .card { border:1px solid var(--td-line); border-radius:0; background:var(--td-paper-field); box-shadow:none; }

@media (max-width: 760px) {
  body:not([data-platform-role="public"]) .app-shell { width:100%; }
  body[data-platform-role="user"] .archive-hero { grid-template-columns:1fr; min-height:400px; }
  body[data-platform-role="user"] .archive-hero__visual { display:none; }
  body[data-platform-role="user"] :is(.sources-panel,.tender-register,.tender-detail,.company-profile,.profile-panel) { margin:14px 0; }
  body[data-platform-role="admin"] .admin-dashboard__grid { padding:14px 0; }
  body .registration-page, body.auth-page .auth-page__main, body:has(main > .intro) main { width:100%; }
  body :is(.auth-card,.cabinet-access-error,.admin-login__panel) h1 { font-size:26px; }
  body:has(main > .intro) .intro { padding:46px 22px; }
}

/* Homepage opening: an archival work desk, not a generic split-screen hero. */
body[data-platform-role="public"] .public-home__hero {
  grid-template-columns:minmax(0,1.02fr) minmax(440px,.98fr); min-height:780px; background:var(--td-board);
}
body[data-platform-role="public"] .public-home__hero-copy {
  min-height:780px; padding:clamp(78px,9vw,142px) clamp(36px,6vw,92px) 42px;
}
body[data-platform-role="public"] .public-home__hero-copy h1 { max-width:640px; font-size:clamp(64px,6vw,108px); }
body[data-platform-role="public"] .public-home__hero-art {
  isolation:isolate; display:block; min-height:780px; border-left:1px solid rgba(244,241,235,.18); background:#090a09; 
}
body[data-platform-role="public"] .public-home__hero-art::before {
  position:absolute; inset:0; z-index:-1; background:rgba(6,8,7,.24); content:"";
}
body[data-platform-role="public"] .public-home__hero-dossiers {
  position:absolute; inset:0; width:100%; height:100%; max-height:none; object-fit:cover; opacity:.9; filter:grayscale(.72) contrast(1.04) brightness(.72); transform:none;
}
body[data-platform-role="public"] .public-home__hero-norm-card {
  position:absolute; z-index:2; right:clamp(28px,5vw,76px); bottom:clamp(86px,11vw,148px); display:grid; gap:12px; width:min(330px,76%); margin:0; border:1px solid rgba(27,26,23,.78); background:var(--td-paper-field); color:var(--td-ink); padding:23px 22px 21px; box-shadow:16px 18px 0 rgba(0,0,0,.32); transform:rotate(2.5deg);
}
body[data-platform-role="public"] .public-home__hero-norm-card span { color:var(--td-copper); font-size:10px; font-weight:800; letter-spacing:.05em; text-transform:uppercase; }
body[data-platform-role="public"] .public-home__hero-norm-card strong { color:#151716; font-family:var(--td-display); font-size:33px; line-height:.91; }
body[data-platform-role="public"] .public-home__hero-norm-card small { border-top:1px solid #9a9286; color:#45443f; padding-top:10px; font-size:12px; font-weight:700; line-height:1.35; }
body[data-platform-role="public"] .public-home__hero-norm-card i { position:absolute; top:-14px; right:26px; border:1px solid #806447; background:#e8ddc6; color:#5c4732; padding:5px 8px; font-size:10px; font-style:normal; }
body[data-platform-role="public"] .public-home__hero-trace { position:absolute; z-index:3; right:clamp(28px,5vw,76px); bottom:42px; display:flex; align-items:center; gap:9px; color:#f2eee5; font-size:10px; font-weight:700; }
body[data-platform-role="public"] .public-home__hero-trace b { display:grid; place-items:center; width:26px; height:26px; border:1px solid #d2ab74; border-radius:50%; background:#b7daca; color:#15201c; font-size:9px; }
body[data-platform-role="public"] .public-home__hero-trace i { width:74px; height:1px; background:rgba(244,241,235,.78); }

@media (max-width: 760px) {
  body[data-platform-role="public"] .public-home__hero,
  body[data-platform-role="public"] .public-home__hero-copy { min-height:690px; }
  body[data-platform-role="public"] .public-home__hero { grid-template-columns:1fr; }
  body[data-platform-role="public"] .public-home__hero-copy { padding:72px 28px 36px; }
  body[data-platform-role="public"] .public-home__hero-copy h1 { font-size:clamp(50px,14vw,60px); }
  body[data-platform-role="public"] .public-home__hero-art { display:block; min-height:350px; border-top:1px solid rgba(244,241,235,.18); border-left:0; }
  body[data-platform-role="public"] .public-home__hero-norm-card { right:24px; bottom:68px; width:min(282px,76%); padding:19px; }
  body[data-platform-role="public"] .public-home__hero-trace { right:24px; bottom:25px; }
  body[data-platform-role="public"] .public-home__hero-copy::after { margin-top:30px; }
}

/* Module catalog: a working index with hierarchy, not five equal marketing tiles. */
body:not([data-platform-role="public"]) .modules-hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(250px,.36fr); gap:22px 70px; align-items:end; }
body:not([data-platform-role="public"]) .modules-hero .eyebrow,
body:not([data-platform-role="public"]) .modules-hero h1 { grid-column:1; }
body:not([data-platform-role="public"]) .modules-hero > #organizationName { grid-column:1; margin:0; }
body:not([data-platform-role="public"]) .modules-hero__manifest { grid-column:2; grid-row:1 / span 3; align-self:end; max-width:280px; border-left:1px solid rgba(244,241,233,.42); background:rgba(8,10,9,.84); padding:18px 18px 16px 20px; }
body:not([data-platform-role="public"]) .modules-hero__manifest b { display:block; color:var(--td-copper-on-dark); font-size:12px; letter-spacing:.06em; }
body:not([data-platform-role="public"]) .modules-hero__manifest strong { display:block; margin-top:26px; color:#f4f1eb; font-size:18px; line-height:1.12; }
body:not([data-platform-role="public"]) .modules-hero__manifest span { display:block; margin-top:12px; color:rgba(244,241,235,.72); font-size:13px; line-height:1.45; }
body:not([data-platform-role="public"]) .modules-grid { grid-template-columns:repeat(12,minmax(0,1fr)); border:0; background:transparent; }
body:not([data-platform-role="public"]) .module-card { position:relative; min-height:312px; overflow:hidden; border:1px solid var(--td-line); border-left:0; border-bottom:0; background:var(--td-paper-field); padding:30px; }
body:not([data-platform-role="public"]) .module-card:nth-child(1) { grid-column:span 7; min-height:370px; border-left:1px solid var(--td-line); background:var(--td-board); color:#f4f1eb; }
body:not([data-platform-role="public"]) .module-card:nth-child(2) { grid-column:span 5; }
body:not([data-platform-role="public"]) .module-card:nth-child(n+3) { grid-column:span 4; border-bottom:1px solid var(--td-line); }
body:not([data-platform-role="public"]) .module-card:nth-child(1)::after { position:absolute; right:-20px; bottom:-12px; width:260px; height:260px; background:url("./assets/tendiqo-surveyor-mark.png") right bottom / contain no-repeat; content:""; filter:grayscale(1); opacity:.34; }
body:not([data-platform-role="public"]) .module-card > * { position:relative; z-index:1; }
body:not([data-platform-role="public"]) .module-card h2 { max-width:440px; margin:42px 0 15px; font-size:clamp(31px,3vw,48px); }
body:not([data-platform-role="public"]) .module-card > span { max-width:490px; color:inherit; font-size:15px; line-height:1.48; }
body:not([data-platform-role="public"]) .module-card a { margin-top:auto; border-top:1px solid currentColor; color:inherit; font-size:13px; }
body:not([data-platform-role="public"]) .module-card:nth-child(2) { background:linear-gradient(rgba(226,218,204,.88),rgba(226,218,204,.88)),url("./assets/paper-texture.png") center / 420px repeat; }
body:not([data-platform-role="public"]) .module-card:nth-child(4) { background:linear-gradient(rgba(229,236,229,.9),rgba(229,236,229,.9)),url("./assets/paper-texture.png") center / 420px repeat; }
body:not([data-platform-role="public"]) .modules-note { max-width:780px; margin:0; border:1px solid var(--td-line); border-top:0; background:rgba(244,241,235,.1); color:rgba(244,241,235,.72); padding:18px 22px; }

@media (max-width: 760px) {
  body:not([data-platform-role="public"]) .modules-hero { display:block; min-height:0; }
  body:not([data-platform-role="public"]) .modules-hero__manifest { display:none; }
  body:not([data-platform-role="public"]) .modules-grid { display:grid; grid-template-columns:1fr; }
  body:not([data-platform-role="public"]) .module-card,
  body:not([data-platform-role="public"]) .module-card:nth-child(n) { grid-column:1; min-height:260px; border:1px solid var(--td-line); border-bottom:0; padding:25px; }
  body:not([data-platform-role="public"]) .module-card:last-child { border-bottom:1px solid var(--td-line); }
  body:not([data-platform-role="public"]) .module-card h2 { margin-top:34px; }
}

/* The three approved reference scenes are mapped to their real product surfaces. */
body[data-platform-role="public"] .public-home__hero-dossiers { object-position:72% center; filter:grayscale(.72) contrast(1.08) brightness(.66); }
body[data-platform-role="user"] .archive-hero__visual { padding:0; background:#0b0d0c; }
body[data-platform-role="user"] .archive-hero__visual > img { width:100%; height:100%; max-height:none; object-fit:cover; object-position:48% center; filter:grayscale(.72) contrast(1.08) brightness(.72); opacity:.9; }
body:not([data-platform-role="public"]) .land-hero::before { position:absolute; top:0; right:0; bottom:0; width:56%; background:url("./assets/concept-land-workspace.png") 50% center / cover no-repeat; content:""; filter:grayscale(.8) contrast(1.04) brightness(.46); opacity:.86; }
body:not([data-platform-role="public"]) .land-hero::after { display:none; }
body:not([data-platform-role="public"]) .land-hero > * { max-width:55%; }

@media (max-width: 760px) {
  body[data-platform-role="user"] .archive-hero__visual { display:block; min-height:280px; }
  body:not([data-platform-role="public"]) .land-hero::before { width:100%; opacity:.22; }
  body:not([data-platform-role="public"]) .land-hero > * { max-width:none; }
}

/* Trade board: real filters and lots inherit the paper console from the third reference. */
body:not([data-platform-role="public"]) .land-meta { margin-top:28px; border:1px solid var(--td-line); background:var(--td-paper-field); padding:18px 20px; }
body:not([data-platform-role="public"]) .land-meta > span,
body:not([data-platform-role="public"]) .land-meta label { color:var(--td-ink); }
body:not([data-platform-role="public"]) .land-filters { gap:0; border:1px solid var(--td-line); border-top:0; background:var(--td-paper-field); padding:0; }
body:not([data-platform-role="public"]) .land-filters label,
body:not([data-platform-role="public"]) .land-filters button { min-height:78px; border-right:1px solid var(--td-line); border-bottom:1px solid var(--td-line); color:var(--td-ink); padding:13px 14px; }
body:not([data-platform-role="public"]) .land-filters button { background:var(--td-graphite); color:#f4f1eb; }
body:not([data-platform-role="public"]) .land-filters button:hover { background:var(--td-copper); }
body:not([data-platform-role="public"]) .lot-tabs { gap:0; margin:0; border:1px solid var(--td-line); border-top:0; background:var(--td-paper-field); }
body:not([data-platform-role="public"]) .lot-tabs__button { border-right:1px solid var(--td-line); color:var(--td-ink); }
body:not([data-platform-role="public"]) .lot-tabs__button.is-active { background:var(--td-graphite); color:#f4f1eb; }
body:not([data-platform-role="public"]) .notice { max-width:none; margin:0; border:1px solid var(--td-line); border-top:0; border-left:4px solid var(--td-copper); background:rgba(244,241,235,.82); color:#49443d; padding:16px 20px; }
body:not([data-platform-role="public"]) .lots { gap:0; margin-top:0; border:1px solid var(--td-line); border-top:0; background:var(--td-paper-field); padding:20px; }
body:not([data-platform-role="public"]) .lot { min-height:360px; border-color:var(--td-line); background:rgba(250,248,242,.78); }
body:not([data-platform-role="public"]) .auction-list { border-color:var(--td-line); }
body:not([data-platform-role="public"]) .auction-list__head { background:var(--td-graphite); }
body:not([data-platform-role="public"]) .auction-row { background:rgba(250,248,242,.78); }

@media (max-width: 700px) {
  body:not([data-platform-role="public"]) .land-meta { margin-top:16px; padding:15px; }
  body:not([data-platform-role="public"]) .land-filters label,
  body:not([data-platform-role="public"]) .land-filters button { min-height:72px; padding:11px; }
  body:not([data-platform-role="public"]) .lots { padding:14px; }
}
