/* Activated by the stylesheet media attribute, or by the local device toggle. */
/* Customer foundation: desktop and creator screens retain their existing layout. */
.smartphone-customer { padding-bottom: 0; }
.smartphone-customer .desktop-catalog-home,
.smartphone-customer .build-version,
.smartphone-customer .site-navigation,
.smartphone-customer .global-task-indicator,
.smartphone-customer .history-navigation { display: none; }
.smartphone-customer .site-header { min-height: 48px; padding: 5px 10px; gap: 8px; }
.smartphone-customer .site-tagline { display: none; }
.smartphone-customer .brand { margin-right: auto; }
.smartphone-customer .theme-toggle { min-width: 44px; min-height: 44px; }
.smartphone-customer .header-cart { order: 1; width: 44px; height: 44px; flex-basis: 44px; }
.smartphone-customer .header-cart-icon { font-size: 1.7rem; }
.smartphone-customer main { padding: 16px; }
.smartphone-home { display: block; }
.smartphone-home h1 { font-size: 1.25rem; line-height: 1.2; margin: 0 0 12px; }
.smartphone-home-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.smartphone-home-grid > * { min-width: 0; }
.smartphone-home .smartphone-tile { position: relative; display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 8px; min-height: 104px; height: 100%; padding: 12px 8px; border: 1px solid var(--line); border-radius: 12px; background: var(--paper); color: var(--ink); font-size: .95rem; font-weight: 700; line-height: 1.25; text-align: center; text-decoration: none; overflow-wrap: anywhere; cursor: pointer; }
.smartphone-home .smartphone-tile-icon { font-size: 1.75rem; line-height: 1; }
.smartphone-home .smartphone-qr { margin: 0; border-radius: 12px; background: #b93e13; color: white; }
.smartphone-home .smartphone-qr summary { background: #b93e13; color: white; border-color: #b93e13; list-style: none; }
.smartphone-home .smartphone-qr summary::-webkit-details-marker { display: none; }
.smartphone-home .smartphone-qr[open] summary { height: auto; box-shadow: inset 0 0 0 2px currentColor; }
.smartphone-home .smartphone-qr p { margin: 0; padding: 0 12px 12px; font-size: .85rem; }
.smartphone-home .smartphone-tile:active { box-shadow: inset 0 0 0 3px currentColor; }
.smartphone-home .smartphone-tile .smartphone-badge { position: absolute; top: 6px; right: 6px; }
.smartphone-sections { display: grid; gap: 8px; }
.smartphone-sections a { display: flex; justify-content: space-between; align-items: center; gap: 12px; min-height: 56px; padding: 14px; border: 1px solid var(--line); border-radius: 10px; background: var(--paper); color: var(--ink); text-decoration: none; overflow-wrap: anywhere; }
.smartphone-sections small { display: block; }
#smartphone-catalogs { scroll-margin-top: 70px; }
/* Legacy contract: .smartphone-navigation { position: sticky; flex-shrink: 0; } */
.smartphone-navigation { position: fixed; bottom: 0; left: 0; right: 0; z-index: 80; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); padding: 6px 4px calc(6px + env(safe-area-inset-bottom, 0px)); background: var(--paper); border-top: 1px solid var(--line); }
.smartphone-navigation a { min-height: 56px; display: flex; flex-wrap: wrap; justify-content: center; align-content: center; gap: 3px; padding: 4px 1px; color: var(--ink); text-decoration: none; font-size: .75rem; }
.smartphone-navigation a[aria-current] { font-weight: 800; text-decoration: underline; text-underline-offset: 5px; }
.smartphone-badge { background: #b93e13; color: white; border-radius: 20px; padding: 0 6px; }
.smartphone-customer a:focus-visible, .smartphone-customer summary:focus-visible { outline: 3px solid var(--ink); outline-offset: 3px; }

/* Shared customer shell; base.html owns the single header and navigation partial.
   This sheet is disabled by the existing Desktop toggle.
   At 390px: 16px gutters, 12px gap, 173px cards, three 148px rows. */
.smartphone-customer {
    --ink: #edf5f5;
    --muted: #adbdc0;
    --line: #34494d;
    --paper: #1c3035;
    --wash: #112328;
    --site-header-height: 62px;
    color: var(--ink);
    background: radial-gradient(ellipse at top right, #203a40, #112328 65%);
}
.smartphone-customer .site-header {
    min-height: 62px; padding: 7px 12px; gap: 4px;
    background: #14292e; border-bottom: 1px solid #34494d; box-shadow: none;
}
.smartphone-customer .brand { font-size: 1.4rem; letter-spacing: .08em; }
.smartphone-customer .global-task-indicator {
    display: grid; width: 44px; height: 44px; flex-basis: 44px; color: #deebe9;
}
.smartphone-customer .global-task-indicator span {
    width: 24px; height: 24px; border-radius: 0; background: currentColor; box-shadow: none;
    clip-path: polygon(42% 0,58% 0,62% 18%,72% 22%,88% 12%,100% 28%,85% 40%,85% 60%,100% 72%,88% 88%,72% 78%,62% 82%,58% 100%,42% 100%,38% 82%,28% 78%,12% 88%,0 72%,15% 60%,15% 40%,0 28%,12% 12%,28% 22%,38% 18%);
}
.smartphone-customer .global-task-indicator span::after {
    content: ""; display: block; width: 8px; height: 8px; margin: 8px;
    border-radius: 50%; background: #14292e;
}
.smartphone-customer .site-navigation { display: block; position: relative; order: 4; }
.smartphone-customer .site-navigation > summary {
    display: flex; align-items: center; min-height: 44px; padding: 6px;
    font-size: .75rem; border: 0;
}
.smartphone-customer .navigation-groups {
    position: absolute; top: 100%; right: 0; width: min(290px, calc(100vw - 32px));
    max-height: 65dvh; overflow-y: auto; background: #15272f;
}
.smartphone-customer .notification-row:has(.notification-empty) { display: none; }
.smartphone-customer main { padding: 22px 16px 16px; min-width: 0; }
.smartphone-home .smartphone-intro { margin-bottom: 20px; }
.smartphone-home h1 { max-width: 290px; margin: 0 0 8px; font-size: 1.5rem; line-height: 1.2; letter-spacing: -.025em; }
.smartphone-home .smartphone-intro p { margin: 0; color: var(--muted); font-size: .85rem; line-height: 1.45; }
.smartphone-home-grid { gap: 12px; align-items: start; }
.smartphone-home .smartphone-tile {
    box-sizing: border-box; height: 148px; min-height: 148px;
    align-items: flex-start; justify-content: space-between; gap: 12px;
    padding: 19px 14px 17px; border-radius: 19px; border-color: #38565c;
    background: linear-gradient(135deg, #294c56, #213b44);
    font-size: 1rem; line-height: 1.25; text-align: left;
    box-shadow: inset 0 1px 0 rgb(255 255 255 / 5%), 0 5px 12px rgb(0 0 0 / 12%);
    overflow-wrap: normal;
}
.smartphone-home .smartphone-tile > span:not(.smartphone-tile-icon):not(.smartphone-badge) {
    max-width: 100%; overflow-wrap: anywhere;
}
.smartphone-home .smartphone-tile::after {
    content: "›"; position: absolute; right: 14px; top: 24px;
    color: #cfdfdf; font-size: 1.4rem; line-height: 1;
}
.smartphone-home .smartphone-icon { display: block; width: 38px; height: 38px; }
.smartphone-home .smartphone-qr { border-radius: 19px; background: #a84432; }
.smartphone-home .smartphone-qr summary {
    background: linear-gradient(135deg, #e97650, #b64a36); border-color: #ed8866; color: #fff;
}
.smartphone-home-grid > :nth-child(3).smartphone-tile,
.smartphone-home-grid > :nth-child(3) > summary { background: linear-gradient(135deg, #305248, #263e38); border-color: #45665a; }
.smartphone-home-grid > :nth-child(4) { background: linear-gradient(135deg, #45445e, #34364b); border-color: #5a5971; }
.smartphone-home-grid > :nth-child(5) { background: linear-gradient(135deg, #61523a, #453e30); border-color: #766448; }
.smartphone-home-grid > :nth-child(6) { background: linear-gradient(135deg, #2b5157, #223d44); }
.smartphone-home .smartphone-tile .smartphone-badge { top: 15px; right: 12px; z-index: 1; font-size: .8rem; }
.smartphone-home .smartphone-tile:has(.smartphone-badge)::after { display: none; }
.smartphone-home .smartphone-qr[open] summary { height: 148px; }
.smartphone-home .smartphone-qr p { padding: 12px; line-height: 1.45; }
.smartphone-customer .smartphone-navigation {
    background: #13272d; border-top: 1px solid #35484d;
    padding: 8px 8px calc(8px + env(safe-area-inset-bottom, 0px));
    box-shadow: 0 -8px 24px rgb(0 0 0 / 12%);
}
.smartphone-customer .smartphone-navigation a {
    position: relative; flex-direction: column; flex-wrap: nowrap; align-items: center;
    gap: 5px; min-height: 54px; border-radius: 12px; color: #b0bfc2; font-size: .66rem;
}
.smartphone-customer .smartphone-navigation .smartphone-icon { width: 23px; height: 23px; }
.smartphone-customer .smartphone-navigation a[aria-current] {
    background: #284047; color: #f28b68; text-decoration: none;
}
.smartphone-customer .smartphone-navigation .smartphone-badge {
    position: absolute; top: 0; right: 9px; font-size: .65rem;
}
/* The palette follows the existing theme control while keeping the industrial tile accents. */
:root[data-theme="dark"] .smartphone-customer {
    --ink: #edf5f5; --muted: #adbdc0; --line: #34494d;
    --paper: #1c3035; --wash: #112328; color-scheme: dark;
    color: var(--ink); background: radial-gradient(ellipse at top right, #203a40, #112328 65%);
}
:root[data-theme="dark"] .smartphone-customer :is(input, textarea, select) {
    color: var(--ink); background: #142329; border-color: #53666e;
}
:root[data-theme="dark"] .smartphone-customer :is(input, textarea, select)::placeholder { color: #93a4aa; }

:root[data-theme="light"] .smartphone-customer {
    --ink: #20343a; --muted: #53676d; --line: #b7c7ca; --paper: #fff;
    --wash: #edf3f4; color-scheme: light; background: #edf3f4;
    color: var(--ink);
}
:root[data-theme="light"] .smartphone-customer .site-header,
:root[data-theme="light"] .smartphone-customer .smartphone-navigation,
:root[data-theme="light"] .smartphone-customer .smartphone-cart-actions--fixed {
    background: #fff; border-color: var(--line); color: var(--ink);
}
:root[data-theme="light"] .smartphone-customer .navigation-groups {
    background: #fff; border-color: var(--line);
}
:root[data-theme="light"] .smartphone-customer .nav-panel { border-color: var(--line); }
:root[data-theme="light"] .smartphone-home .smartphone-tile {
    background: #fff; border-color: var(--line); color: var(--ink);
    box-shadow: 0 3px 10px rgb(32 52 58 / 10%);
}
:root[data-theme="light"] .smartphone-home .smartphone-tile::after { color: #53676d; }
:root[data-theme="light"] .smartphone-home .smartphone-qr,
:root[data-theme="light"] .smartphone-home .smartphone-qr summary { color: #fff; }
/* Keep the QR label readable when the Light tile palette overrides the summary background. */
:root[data-theme="light"] .smartphone-home .smartphone-qr summary > span:nth-child(2) { color: var(--ink); }
:root[data-theme="light"] .smartphone-customer .smartphone-navigation a { color: #53676d; }
:root[data-theme="light"] .smartphone-customer .smartphone-navigation a[aria-current] {
    background: #e4eef0; color: #b84925;
}
:root[data-theme="light"] .smartphone-customer .smartphone-table-preview,
:root[data-theme="light"] .smartphone-customer .smartphone-table-thumbnail,
:root[data-theme="light"] .smartphone-customer .smartphone-cart-line {
    background: #fff;
}
:root[data-theme="light"] .smartphone-customer :is(input, textarea, select) {
    color: var(--ink); background: #fff; border-color: var(--line);
}
:root[data-theme="light"] .smartphone-customer :is(input, textarea, select)::placeholder { color: #71858a; }
.smartphone-customer .navigation-groups { display: grid; padding: 7px; border: 1px solid #60727a; border-radius: 9px; }
.smartphone-customer .nav-panel {
    position: static; width: auto; min-width: 0; max-width: none;
    margin: 2px 5px 7px; border: 0; border-left: 2px solid #60727a;
    background: transparent; box-shadow: none;
}
.smartphone-customer .nav-dropdown > summary,
.smartphone-customer .nav-panel a { min-height: 44px; }

.smartphone-catalog-picker > summary { list-style: none; }
.smartphone-catalog-picker > summary::-webkit-details-marker { display: none; }
.smartphone-catalog-picker > p { font-size: .85rem; line-height: 1.45; }

.smartphone-qr-panel { display: grid; gap: 10px; padding: 12px 4px 4px; }
.smartphone-qr-video-wrap { position: relative; width: 100%; max-height: 52vh; overflow: hidden; border-radius: 12px; background: #101b1e; }
.smartphone-qr-panel video { display: block; width: 100%; max-height: 52vh; border-radius: 12px; background: #101b1e; object-fit: contain; }
.smartphone-qr-panel p { margin: 0; line-height: 1.4; }
.smartphone-qr-panel button { min-height: 44px; }
.smartphone-qr-exit { display: none; min-height: 52px !important; min-width: 76px; padding: 10px 14px; font-size: 1rem; font-weight: 800; }

/* The scanner owns the Smartphone viewport while it is open. */
.smartphone-customer .smartphone-qr[open] {
    position: fixed; inset: 0; z-index: 120; display: flex; flex-direction: column;
    overflow: hidden; margin: 0; border-radius: 0; background: #081316;
}
.smartphone-customer .smartphone-qr[open] > summary { display: none; }
.smartphone-customer .smartphone-qr[open] > .smartphone-qr-exit {
    position: fixed;
    top: max(12px, env(safe-area-inset-top, 0px));
    right: max(12px, env(safe-area-inset-right, 0px));
    z-index: 130;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #ffb46e;
    background: #b93e13;
    color: #fff;
    box-shadow: 0 4px 14px rgb(8 19 22 / 55%);
    touch-action: manipulation;
}
.smartphone-customer .smartphone-qr[open] .smartphone-qr-panel {
    display: grid; grid-template-rows: minmax(0, 1fr) auto auto;
    flex: 1; min-height: 0; gap: 8px; padding: 8px 12px calc(12px + env(safe-area-inset-bottom, 0px)); overflow: hidden;
}
.smartphone-customer .smartphone-qr[open] .smartphone-qr-video-wrap { min-height: 0; max-height: none; height: 100%; border-radius: 10px; }
.smartphone-customer .smartphone-qr[open] video { width: 100%; height: 100%; max-height: none; object-fit: contain; border-radius: 10px; }


/* Compact product pages reuse the Home tiles, icons and shared device shell. */
.smartphone-products .smartphone-back {
    display: inline-flex; align-items: center; min-height: 44px;
    margin-bottom: 12px; color: var(--ink); gap: 8px;
}
.smartphone-products .smartphone-product-rows { display: grid; gap: 12px; }
.smartphone-products .smartphone-tile {
    width: 100%; height: auto; min-height: 76px; flex-direction: row;
    align-items: center; justify-content: flex-start; padding: 16px 38px 16px 16px;
}
.smartphone-products .smartphone-icon { width: 30px; height: 30px; flex-shrink: 0; }
.smartphone-products .smartphone-tile::after { top: 26px; }
.smartphone-products .smartphone-catalog-card { padding-right: 78px; }
.smartphone-products .smartphone-catalog-card { padding-right: 144px; }
.smartphone-products .smartphone-catalog-copy { min-width: 0; overflow-wrap: anywhere; }
.smartphone-products .smartphone-catalog-metadata { flex: 1 1 100%; display: grid; gap: 3px; min-width: 0; padding-top: 10px; border-top: 1px solid var(--line); }
.smartphone-products .smartphone-catalog-metadata > strong { font-size: .9rem; }
.smartphone-products .smartphone-catalog-metadata > small { color: var(--muted); }
.smartphone-products .smartphone-catalog-metadata-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; margin-top: 5px; }
.smartphone-products .smartphone-catalog-metadata-grid > span { min-width: 0; padding: 6px; border-radius: 6px; background: var(--wash); overflow-wrap: anywhere; font-size: .82rem; }
.smartphone-products .smartphone-catalog-metadata-grid b { display: block; color: var(--muted); font-size: .68rem; text-transform: uppercase; }
.smartphone-products .smartphone-catalog-qr { position: absolute; right: 10px; top: 50%; width: 72px; height: 72px; padding: 3px; transform: translateY(-50%); border: 1px solid var(--line); border-radius: 7px; background: #fff; }
.smartphone-products .smartphone-catalog-qr img { display: block; width: 100%; height: 100%; }
.smartphone-products .smartphone-catalog-card .smartphone-catalog-thumbnail { right: 88px; }
.smartphone-products .smartphone-catalog-thumbnail {
    position: absolute; right: 88px; top: 50%; display: block; width: 72px; height: 72px;
    transform: translateY(-50%); overflow: hidden; border: 1px solid var(--line);
    border-radius: 8px; background: #fff;
}

.smartphone-qr-choice .smartphone-qr-resource {
    display: grid;
    gap: 8px;
    padding: 18px;
}
.smartphone-qr-choice .smartphone-qr-resource > strong { font-size: 1.05rem; }
.smartphone-qr-choice .message-box { margin: 4px 0 0; }
.manu-document-viewer { min-height: calc(100vh - 130px); }
.manu-document-frame {
    display: block;
    width: 100%;
    min-height: 70vh;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
}
.smartphone-products .smartphone-catalog-thumbnail img {
    display: block; width: 100%; height: 100%; object-fit: cover;
}
.smartphone-products .smartphone-catalog-thumbnail-placeholder { display: grid; place-items: center; color: var(--muted); background: var(--wash); font-size: 1.5rem; }
.smartphone-products details > summary { list-style: none; }
.smartphone-products details > summary::-webkit-details-marker { display: none; }
.smartphone-products details p { margin: 12px 4px; color: var(--muted); }

/* Preview composition limited to the catalog drawing-table list. */
.smartphone-catalog-tables .smartphone-product-rows { gap: 14px; }
.smartphone-catalog-tables .smartphone-table-card { display: grid; grid-template-columns: minmax(0, 1fr) minmax(104px, 38%); gap: 10px; align-items: center; min-height: 108px; padding: 10px; overflow: hidden; }
.smartphone-catalog-tables .smartphone-table-card-copy { min-width: 0; overflow-wrap: anywhere; }
.smartphone-catalog-tables .smartphone-table-card-name { display: -webkit-box; overflow: hidden; font-size: 1.08rem; font-weight: 800; line-height: 1.18; overflow-wrap: anywhere; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.smartphone-catalog-tables .smartphone-table-card-number { display: block; margin-top: 4px; color: var(--muted); font-size: .88rem; font-weight: 600; line-height: 1.2; }
.smartphone-catalog-tables .smartphone-table-card-page { display: block; margin-top: 3px; color: var(--muted); font-size: .8rem; line-height: 1.2; }
.smartphone-catalog-tables .smartphone-table-preview { display: block; min-width: 0; aspect-ratio: 1.45; overflow: hidden; border: 1px solid var(--line); border-radius: 10px; background: #fff; }
.smartphone-catalog-tables .smartphone-table-preview img { display: block; width: 100%; height: 100%; object-fit: contain; }

/* Contextual table lists reuse the compact product cards. */
.smartphone-products .smartphone-product-rows > * { min-width: 0; }
.smartphone-products .smartphone-table-thumbnail {
    display: grid; place-items: center; flex: 0 0 44px; height: 44px;
    border: 1px solid var(--line); border-radius: 10px; background: var(--paper);
}
.smartphone-products .smartphone-table-row small {
    display: block; margin-top: 4px; color: var(--muted);
    font-size: .8rem; font-weight: 400; line-height: 1.35;
}
.smartphone-products .smartphone-table-row > span:last-child { min-width: 0; }

.smartphone-customer .desktop-cart { display: none; }
.smartphone-customer .smartphone-cart { display: block; overflow-wrap: anywhere; }
.smartphone-cart h1 { font-size: 1.5rem; }
.smartphone-cart h2 { font-size: 1.1rem; margin-bottom: 4px; }
.smartphone-cart-machine { margin-bottom: 16px; }
.smartphone-cart-line { min-width: 0; padding: 11px 12px; margin: 8px 0; border: 1px solid var(--line); border-radius: 12px; background: var(--paper); }
.smartphone-cart-line-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-width: 0; }
.smartphone-cart-code { min-width: 0; color: var(--ink); font-size: 1.05rem; line-height: 1.2; overflow-wrap: anywhere; }
.smartphone-cart-description { margin: 4px 0 3px; line-height: 1.3; overflow-wrap: anywhere; }
.smartphone-cart-metadata { display: block; min-width: 0; line-height: 1.25; overflow-wrap: anywhere; }
.smartphone-cart label { display: block; margin: 8px 0 4px; }
.smartphone-cart textarea { width: 100%; max-width: 100%; box-sizing: border-box; }
.smartphone-cart-note { min-height: 40px; padding: 8px 10px; line-height: 1.25; resize: vertical; }
.smartphone-cart-summary { display: flex; justify-content: space-between; gap: 12px; margin: 12px 0; color: var(--muted); font-size: .85rem; }
.smartphone-cart-summary strong { color: var(--ink); font-size: 1rem; }
.smartphone-cart-quantity { display: flex; flex: 0 0 auto; gap: 6px; align-items: center; justify-content: flex-end; margin: 0; }
.smartphone-cart-quantity button { display: grid; place-items: center; width: 46px; min-width: 46px; height: 46px; padding: 0; border: 0; border-radius: 50%; background: #e9774f; color: #fff; font-size: 1.55rem; line-height: 1; font-weight: 800; }
.smartphone-cart-quantity button:active { transform: scale(.95); }
.smartphone-cart-quantity-value { min-width: 2ch; color: var(--ink); font-size: 1.2rem; font-weight: 800; text-align: center; }
.smartphone-cart button, .smartphone-cart summary { min-height: 44px; }
.smartphone-cart summary { padding-top: 14px; cursor: pointer; }
.smartphone-cart-actions { display: grid; gap: 10px; padding: 12px 0 20px; }
.smartphone-cart-actions button { width: 100%; white-space: normal; }
.smartphone-cart-actions--fixed {
    position: fixed; right: 0; bottom: env(safe-area-inset-bottom, 0px); left: 0;
    z-index: 70; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    gap: 8px; padding: 8px 16px; border-top: 1px solid #38565c;
    background: #14292e; box-shadow: 0 -8px 24px rgb(0 0 0 / 18%);
}
.smartphone-cart-actions--fixed button {
    min-width: 0; min-height: 52px; margin: 0; padding: 10px 8px;
    border-radius: 12px; font-size: .88rem; line-height: 1.2;
}
.smartphone-cart:has(.smartphone-cart-actions--fixed) { padding-bottom: calc(150px + env(safe-area-inset-bottom, 0px)); }

.smartphone-request { min-width: 0; overflow-wrap: anywhere; padding-bottom: 20px; }
.smartphone-request h1 { font-size: 1.5rem; }
.smartphone-request h2 { font-size: 1.1rem; }
.smartphone-request-field { margin: 14px 0; }
.smartphone-request-field label { display: block; margin-bottom: 6px; }
.smartphone-request input, .smartphone-request textarea { width: 100%; min-width: 0; max-width: 100%; box-sizing: border-box; border-radius: 12px; font-size: 16px; }
.smartphone-request button, .smartphone-request a { min-height: 44px; white-space: normal; }
.smartphone-request .request-field-error { color: #ffbca8; }
.smartphone-request [aria-invalid="true"] { border-color: #ffbca8; }

.smartphone-home .smartphone-tile[hidden] { display: none; }
.manu-ai-home { margin: 0 0 18px; padding: 14px; border: 1px solid var(--line); border-radius: 14px; background: var(--paper); }
.manu-ai-home label { display: block; margin-bottom: 8px; font-weight: 800; }
.manu-ai-home div, .manu-ai-actions { display: flex; gap: 8px; align-items: center; }
.manu-ai-home input { flex: 1; min-width: 0; min-height: 44px; border-radius: 10px; font-size: 16px; }
.manu-ai-home button, .manu-ai-actions button { min-height: 44px; white-space: nowrap; }
.manu-ai-result { margin-top: 18px; }
.manu-ai-candidate { margin: 10px 0; padding: 12px; border: 1px solid var(--line); border-radius: 12px; background: var(--paper); overflow-wrap: anywhere; }
.manu-ai-actions { margin-top: 10px; flex-wrap: wrap; }
.manu-ai-actions form { margin: 0; }
.manu-ai-note { color: var(--muted); font-size: .85rem; }
.smartphone-catalog-um-control { display:inline-flex; align-items:center; justify-content:center; margin:.35rem .65rem; min-width:2.4rem; min-height:2.1rem; border-radius:.45rem; background:#0b7285; color:#fff; font-weight:700; text-decoration:none; }
.smartphone-catalog-um-control.is-disabled { background:#d0d4d8; color:#697078; cursor:not-allowed; pointer-events:none; }
.smartphone-catalog-associated-control { display:inline-flex; align-items:center; justify-content:center; min-height:42px; margin:.35rem .65rem; padding:7px 10px; border:1px solid #126b78; border-radius:.45rem; color:#126b78; background:#fff; font:inherit; font-size:.78rem; font-weight:700; cursor:pointer; }
