/* Shared control contract. Layout, routing, permissions and data stay with their
   existing components. These tokens apply equally to the shell and Bid Room. */
:root {
  --amt-ui-text:var(--text,#192d4d); --amt-ui-muted:var(--muted,#596b82);
  --amt-ui-surface:var(--surface,#fff); --amt-ui-line:var(--border,#dce3ed);
  --amt-ui-primary:#253e68; --amt-ui-primary-hover:#1c3155;
  --amt-ui-soft:#edf3fb; --amt-ui-focus:#4779b8;
  --amt-ui-radius:8px; --amt-ui-panel-radius:12px; --amt-ui-control:44px;
  --amt-ui-gap:12px; --amt-ui-section:24px;
}
:root[data-theme-resolved=dark] {
  --amt-ui-primary:#3b5d89; --amt-ui-primary-hover:#496f9e;
  --amt-ui-soft:#263a53; --amt-ui-focus:#99b7dd;
}
/* One height, radius, type size and baseline for named action controls. Native
   checkboxes, calendars, icon-only tools and the branded send button are exempt. */
html body :is(#root,#amt195-bid-room,#amt-bid-room-slot,.amt195-dialog,.modal,.settings-panel) :is(.btn,.amt195-btn,.amt-select-trigger) {
  box-sizing:border-box!important; min-height:var(--amt-ui-control)!important;
  border-radius:var(--amt-ui-radius)!important; font-family:var(--brand-font,system-ui)!important;
  font-size:15px!important; font-weight:500!important; line-height:1.35!important;
  letter-spacing:normal!important; text-transform:none!important; padding:10px 14px!important;
}
html body :is(.btn,.amt195-btn) { gap:8px; align-items:center; justify-content:center; }
html body :is(#root,#amt195-bid-room,#amt-bid-room-slot,.amt195-dialog,.modal) :is(.btn.primary,.btn-primary,.amt195-btn.primary) {
  background:var(--amt-ui-primary)!important; border-color:var(--amt-ui-primary)!important;
  color:#fff!important; box-shadow:none!important;
}
html body :is(#root,#amt195-bid-room,#amt-bid-room-slot,.amt195-dialog,.modal) :is(.btn.primary,.btn-primary,.amt195-btn.primary):hover:not(:disabled) {
  background:var(--amt-ui-primary-hover)!important; border-color:var(--amt-ui-primary-hover)!important;
}
html body :is(#root,#amt195-bid-room,#amt-bid-room-slot,.amt195-dialog,.modal) :is(.btn,.amt195-btn):not(.primary):not(.btn-primary):not(.danger):not(.btn-danger) {
  border-color:var(--amt-ui-line)!important; color:var(--amt-ui-text)!important;
  background:var(--amt-ui-surface)!important; box-shadow:none!important;
}
html body :is(#root,#amt195-bid-room,#amt-bid-room-slot,.amt195-dialog,.modal) :is(.btn,.amt195-btn):not(.primary):not(.danger):hover:not(:disabled) { background:var(--amt-ui-soft)!important; }
html body :is(.btn,.amt195-btn,.amt-select-trigger,button,a,input,textarea):focus-visible { outline:2px solid var(--amt-ui-focus)!important; outline-offset:3px!important; }
html body :is(.btn,.amt195-btn):disabled { opacity:.5!important; cursor:not-allowed; }
html body :is(.btn,.amt195-btn)>svg { width:18px;height:18px;flex:none; }
/* Shared menus retain their established positioning and keyboard behavior. */
html body .amt-select-menu { border-radius:var(--amt-ui-radius)!important; }
html body .amt-select-options :is([role=option],[role=menuitem]) { min-height:44px!important;font-size:15px!important;font-weight:500!important;line-height:1.4!important; }
html body .amt-select-options button.selected { background:var(--amt-ui-soft)!important;font-weight:500!important; }
html body .amt-select-options button.selected::before { display:none!important; }
/* Navigation has one quiet selected state, without changing its layout. */
html body :is(.linear-nav,.amt195-tabs,.record-tabs,.settings-tabs,.amt151-tabs)>button {
  min-height:44px!important;font-size:15px!important;font-weight:500!important;
  line-height:1.35!important;letter-spacing:normal!important;text-transform:none!important;
}
html body :is(.linear-nav,.amt195-tabs,.record-tabs,.settings-tabs,.amt151-tabs)>button:is(.active,[aria-current=page]) { background:var(--amt-ui-soft)!important;color:var(--amt-ui-text)!important;box-shadow:none!important; }
/* Lists remain compact and readable; no fixed row heights or clipped names. */
html body :is(#root,#amt195-bid-room,#amt-bid-room-slot) :is(.tbl,.opp-list-table,.pipeline-list-table) th { font-size:14px!important;font-weight:500!important;text-transform:none!important;letter-spacing:normal!important;line-height:1.4!important; }
html body :is(#root,#amt195-bid-room,#amt-bid-room-slot) :is(.tbl,.opp-list-table,.pipeline-list-table) td { font-size:15px!important;line-height:1.5!important;padding-block:12px!important; }
html body :is(.list-toolbar,.pipeline-controls,.amt195-head-actions,.amt195-dialog-actions,.modal-footer) { gap:var(--amt-ui-gap); }
html:root body :is(#root,#amt195-bid-room,#amt-bid-room-slot) :is(.content,.tbl,.amt435-library,.app-header,.amt195-work) { font-family:var(--brand-font,system-ui)!important; }
html:root body #root .content :is(table.tbl,table.opp-list-table,table.pipeline-list-table) th { font-family:var(--brand-font,system-ui)!important;font-size:14px!important;font-weight:500!important; }
html:root body #root .content :is(table.tbl,table.opp-list-table,table.pipeline-list-table) td { font-family:var(--brand-font,system-ui)!important;font-size:15px!important; }
html body :is(.card,.record-card,.record-panel,.amt435-preview) { border-radius:var(--amt-ui-panel-radius)!important; }
html body :is(.amt195-dialog,.modal-content) { border-radius:14px!important; }
html body .amt195-dialog-head h2 { font-size:24px!important;font-weight:600!important;line-height:1.3!important; }
html body .amt195-dialog-actions { padding:16px 24px!important;gap:12px!important; }
html body .amt195-project.active { border-left-color:var(--amt-ui-focus)!important;background:var(--amt-ui-soft)!important; }
html body #amt195-bid-room :is(.amt195-project-name,.amt195-side-search input) { font-size:16px!important;line-height:1.45!important; }
html body #amt195-bid-room .amt195-project-meta { font-size:14px!important;line-height:1.45!important; }
/* The quote library uses the same controls with a clearer reading hierarchy. */
html body .amt435-library { --folder-fill:#e5eefb;--folder-tab:#7696c4;--folder-edge:#b8cce6;--folder-active:var(--amt-ui-soft);--folder-muted:var(--amt-ui-muted);font-size:16px; }
html body .amt435-title { margin-bottom:16px;gap:16px; }
html body .amt435-title h2 { font-size:24px!important;line-height:1.3!important; }
html body .amt435-title h2 span { font-size:14px!important; }
html body .amt435-heading { margin-bottom:16px;gap:12px; }
html body .amt435-heading h3 { font-size:22px!important;line-height:1.35!important; }
html body .amt435-search { border-radius:var(--amt-ui-radius);padding-inline:16px;gap:12px; }
html body .amt435-search input { height:52px;font-size:16px!important;font-weight:400!important; }
html body .amt435-search>.amt438-icon { width:20px;height:20px;color:var(--amt-ui-muted);flex:none; }
html body .amt435-shortcuts { margin:12px 0 20px;gap:8px; }
html body .amt435-shortcuts button { font-size:14px!important;min-height:44px;padding:9px 13px;border-radius:8px;border-color:var(--amt-ui-line);background:var(--amt-ui-surface); }
html body .amt435-shortcuts button[aria-pressed=true] { border-color:var(--folder-edge);background:var(--amt-ui-soft); }
html body .amt435-shortcuts button span { font-weight:400!important; }
/* Compact folder path preserves the requested Return control and folder icons. */
html body .amt436-navigation { gap:16px;margin:0 0 24px; }
html body .amt436-steps { flex:0 1 auto;gap:20px;flex-wrap:wrap; }
html body .amt436-steps>li { flex:0 1 auto;max-width:360px; }
html body .amt436-steps>li:not(:last-child)::after { width:20px;right:-20px; }
html body .amt436-step { min-height:48px;padding:10px 14px;border-radius:8px;font-size:15px!important; }
html body .amt436-back { min-height:44px;padding:10px 14px;border-radius:8px;font-size:15px!important; }
html body .amt435-folder { min-height:150px;padding:22px;border-radius:12px;gap:8px; }
html body .amt435-folder strong { font-size:18px!important;font-weight:500!important;line-height:1.4!important; }
html body .amt435-folder-icon { display:inline-flex;align-items:center;justify-content:center;width:44px;height:38px;margin:0 0 8px;border-radius:8px;background:var(--folder-fill);color:#5478a7; }
html body .amt435-folder-icon::before,html body .amt435-folder-icon::after { content:none; }
html body .amt435-folder-icon .amt438-icon { width:28px;height:28px; }
html body .amt436-step .amt435-folder-icon { width:32px;height:28px;margin:0;background:transparent; }
html body .amt436-step .amt438-icon { width:27px;height:27px; }
html body .amt435-browser { grid-template-columns:minmax(280px,.95fr) minmax(360px,1.25fr);gap:20px; }
html body .amt435-quote { min-height:104px;padding:18px;gap:14px;border-radius:10px; }
html body .amt435-file-icon { width:36px;height:42px;background:var(--folder-fill);color:#5478a7;border-radius:7px; }
html body .amt435-file-icon .amt438-icon { width:24px;height:24px; }
html body .amt435-quote-name strong { font-size:17px!important;font-weight:500!important;line-height:1.4!important; }
html body .amt435-quote-name small { font-size:14px!important;font-weight:400!important;line-height:1.4!important;margin-top:5px; }
html body .amt435-quote-price { font-size:18px!important;line-height:1.35!important;font-weight:500!important;flex-basis:150px; }
html body .amt435-preview-heading { padding:24px;background:var(--amt-ui-surface);border-bottom:1px solid var(--amt-ui-line); }
html body .amt435-preview-heading h3 { font-size:24px!important;line-height:1.3!important; }
html body .amt435-preview-heading>strong { font-size:26px!important;font-weight:500!important; }
html body .amt435-preview-heading :is(span,small) { font-size:14px!important;font-weight:400!important;line-height:1.45!important; }
html body .amt435-preview-tabs { padding:12px 16px;gap:8px; }
html body .amt435-preview-tabs button { font-size:15px!important;min-height:44px; }
html body .amt435-summary { padding:0 24px; }
html body .amt435-summary h4 { font-size:16px!important;font-weight:500!important; }
html body .amt435-summary section>p { font-size:16px!important;line-height:1.6!important;font-weight:400!important;-webkit-line-clamp:4; }
html body .amt435-preview-actions { padding:16px 24px;border-top:1px solid var(--amt-ui-line);gap:8px; }
html body .amt435-preview-actions .amt195-btn { flex:0 1 auto; }
/* Override the legacy Bid Room strong/span weight rule at the component level. */
html body #amt195-bid-room :is(.amt435-folder strong,.amt435-quote-name strong,.amt435-preview-heading>strong,.amt435-summary h4) { font-weight:500!important; }
html body #amt195-bid-room :is(.amt435-quote-name small,.amt435-preview-heading>span,.amt435-preview-heading>small,.amt435-shortcuts button span) { font-weight:400!important; }
html body .amt434-reader>.amt195-dialog { width:min(960px,calc(100vw - 32px))!important;max-width:960px!important; }
:root[data-theme-resolved=dark] body .amt435-library { --folder-fill:#293e59;--folder-tab:#6b8eb8;--folder-edge:#476588; }
:root[data-theme-resolved=dark] body :is(.amt435-file-icon,.amt435-folder-icon) { color:#aac4e4; }
@container(max-width:759px) {
  html body .amt435-browser { grid-template-columns:minmax(0,1fr); }
}
@container(max-width:600px) {
  html body .amt436-steps { flex-direction:column;flex-wrap:nowrap;gap:12px;width:100%; }
  html body .amt436-steps>li { width:100%;max-width:none; }
  html body .amt436-steps>li:not(:last-child)::after { left:29px;right:auto;width:0;height:12px;bottom:-12px; }
  html body .amt435-folder { min-height:144px;padding:18px 14px; }
  html body .amt435-folder strong { font-size:16px!important; }
  html body .amt435-quote-price { flex-basis:100%;padding-left:50px;text-align:left; }
  html body .amt435-heading { align-items:flex-start; }
}
@media(max-width:600px) {
  html body .amt195-dialog-actions { padding:16px!important;flex-wrap:wrap; }
  html body :is(.amt195-dialog,.modal) :is(input,textarea) { font-size:16px!important; }
}
