:root { font-family:"Microsoft YaHei UI","PingFang SC","Noto Sans CJK SC",sans-serif; color:#1f2924; background:#f5f3ed; }
      * { box-sizing:border-box; }
      html,body { margin:0; min-width:100%; min-height:100%; }
      body { overflow:hidden; background:#f3f5f3; }
      body[data-workspace="login"] { overflow:auto; background:#f5f3ed; }
      body[data-session-booting="true"]::before { content:""; position:fixed; inset:0; z-index:200; background:#f5f3ed; }
      body[data-session-booting="true"]::after { content:attr(data-session-message); position:fixed; left:50%; top:50%; z-index:201; transform:translate(-50%,-50%); color:#5d6b63; font:600 14px "Microsoft YaHei UI",sans-serif; letter-spacing:.04em; }
      [hidden] { display:none!important; }
      #viewport { position:relative; width:658px; height:398px; transform-origin:top left; }
      #window { position:absolute; inset:0; overflow:clip; background:#fff; border:1px solid #dfe5e1; border-radius:10px; box-shadow:0 8px 24px rgba(24,43,32,.08); }
      .titlebar { display:none; }
      .app-icon { width:16px; height:16px; margin:0 8px; border:1px solid #94a59a; background:linear-gradient(135deg,#e8eeee,#b8c9bd); }
      #title { flex:1; overflow:hidden; white-space:nowrap; font-size:12px; }
      .caption { width:46px; height:29px; display:grid; place-items:center; color:#222; font:16px "Segoe UI Symbol"; }
      .caption.close { font-size:20px; }
      .client { position:absolute; inset:0; overflow:clip; background:#fff; }
      .app-dialog-overlay { position:fixed; inset:0; z-index:1300; display:none; place-items:center; padding:24px; background:rgba(18,39,29,.20); backdrop-filter:blur(1px); }
      .app-dialog-overlay.open { display:grid; animation:dialog-fade-in .16s ease-out; }
      .app-dialog { width:min(100%,460px); overflow:hidden; border:1px solid rgba(38,64,50,.12); border-radius:14px; background:#fff; box-shadow:0 26px 76px rgba(18,33,25,.26); color:#26352d; font:13px "Microsoft YaHei UI","PingFang SC",sans-serif; animation:dialog-rise-in .2s cubic-bezier(.2,.78,.25,1); }
      .app-dialog-header { display:grid; grid-template-columns:40px minmax(0,1fr) 40px; gap:12px; align-items:center; padding:20px 20px 14px; }
      .app-dialog-brand { flex:none; display:flex; align-items:center; justify-content:center; min-width:32px; height:32px; }
      .app-dialog-brand-image { width:64px; height:32px; object-fit:contain; }
      .app-dialog-brand-monogram { display:grid; place-items:center; width:32px; height:32px; border-radius:7px; background:var(--portal-primary,#236246); color:#fff; font:600 16px system-ui,sans-serif; }
      .app-dialog-brand [hidden] { display:none; }
      .app-dialog-title { margin:0; color:#1e2b24; font-size:17px; line-height:1.35; letter-spacing:-.01em; }
      .app-dialog-close { position:relative; width:40px; height:40px; flex:none; display:grid; place-items:center; border:0; border-radius:9px; padding:0; background:transparent; color:#68736d; cursor:pointer; font-size:0; }
      .app-dialog-close:hover { background:#edf3ef; color:#1f5f40; }
      .app-dialog-close:active { background:#e2ece6; transform:translateY(1px); }
      .app-dialog-body { min-height:0; padding:24px 24px 20px; overflow:auto; color:#35483e; font-size:14px; line-height:1.7; white-space:pre-wrap; overflow-wrap:anywhere; }
      .app-dialog-actions { display:flex; flex:none; justify-content:flex-end; gap:9px; padding:8px 24px 24px; border:0; background:#fff; }
      .app-dialog.portal-dialog-frame { display:flex; flex-direction:column; }
      .app-dialog-button { min-width:86px; min-height:36px; border:1px solid #ccd5d0; border-radius:7px; padding:0 16px; background:#fff; color:#3a4941; cursor:pointer; font-family:inherit; font-size:12px; font-weight:600; }
      .app-dialog-button:hover { border-color:#79a48d; color:#236246; background:#f8fbf9; }
      .app-dialog-close:focus-visible,.app-dialog-button:focus-visible { outline:3px solid rgba(43,117,80,.2); outline-offset:2px; }
      .app-dialog-button.primary { border-color:#286f4b; background:#286f4b; color:#fff; }
      .app-dialog-button.primary:hover { border-color:#1f5f40; background:#1f5f40; color:#fff; }
      .app-dialog-overlay[data-tone="danger"] .app-dialog-button.primary { border-color:#c94d38; background:#c94d38; }
      @keyframes dialog-fade-in { from { opacity:0; } to { opacity:1; } }
      @keyframes dialog-rise-in { from { opacity:0; transform:translateY(8px) scale(.985); } to { opacity:1; transform:translateY(0) scale(1); } }
      .workspace-overlay-root { position:fixed; inset:64px 0 0; z-index:80; pointer-events:none; }
      .workspace-dialog-layer { position:absolute; inset:30px 0 0; z-index:25; display:grid; place-items:center; pointer-events:none; }
      .workspace-dialog-frame { position:relative; overflow:hidden; pointer-events:auto; }
      .workspace-dialog-header { height:74px; box-sizing:border-box; display:flex; align-items:center; font-size:12px; }
      .workspace-dialog-title { flex:1; padding-left:8px; overflow:hidden; white-space:nowrap; }
      .workspace-dialog-close { position:relative; width:42px; height:29px; display:grid; place-items:center; border:0; padding:0; background:transparent; color:#5f6a64; cursor:pointer; font-size:0; }
      .workspace-dialog-close:hover { background:#e7ece9; color:#214f38; }
      .workspace-dialog-close:focus-visible { outline:3px solid rgba(43,117,80,.2); outline-offset:-3px; }
      .workspace-dialog-content { position:absolute; inset:74px 0 0; overflow:hidden; background:#fff; }
      .workspace-dialog-layer[data-workspace-window="selection-drawing-metadata"] { position:fixed; inset:0; z-index:1200; padding:24px; pointer-events:auto; }
       .workspace-dialog-layer[data-workspace-window="selection-drawing-metadata"] .workspace-dialog-frame { width:min(1080px,calc(100vw - 44px))!important; height:min(850px,calc(100vh - 44px))!important; max-height:calc(100vh - 44px); display:flex; flex-direction:column; overflow:hidden; border:1px solid rgba(41,76,56,.14); border-radius:14px; background:#fff; box-shadow:0 28px 80px rgba(18,38,27,.24); }
      .workspace-dialog-layer[data-workspace-window="selection-drawing-metadata"] .workspace-dialog-header { height:62px; flex:none; border-bottom:1px solid #e7ece9; padding:0 12px 0 22px; background:#fff; color:#1f2e26; }
      .workspace-dialog-layer[data-workspace-window="selection-drawing-metadata"] .workspace-dialog-title { padding:0; font-size:17px; font-weight:700; letter-spacing:-.01em; }
      .workspace-dialog-layer[data-workspace-window="selection-drawing-metadata"] .workspace-dialog-close { width:40px; height:40px; border-radius:9px; color:#68736d; cursor:pointer; }
      .workspace-dialog-layer[data-workspace-window="selection-drawing-metadata"] .workspace-dialog-close:hover { background:#f0f4f1; color:#234f39; }
       .workspace-dialog-layer[data-workspace-window="selection-drawing-metadata"] .workspace-dialog-content { position:relative; inset:auto; min-height:0; flex:1; display:flex; flex-direction:column; overflow:hidden; padding:0; background:#f7f9f7; }
       .workspace-dialog-layer[data-workspace-window="selection-drawing-metadata"] .workspace-dialog-content > p { margin:0 0 16px; border:1px solid #dce8e0; border-radius:8px; padding:10px 12px; background:#edf5f0; color:#47705a; font-size:12px; }
       .drawing-metadata-summary { flex:none; display:flex; align-items:center; justify-content:space-between; gap:16px; margin:18px 22px 0; border:1px solid #dce8e0; border-radius:9px; padding:11px 13px; background:#edf5f0; color:#47705a; font-size:12px; }
       .drawing-metadata-summary strong { color:#245b40; font-size:12px; }
       .drawing-metadata-scroll { min-height:0; flex:1; overflow:auto; padding:14px 22px 18px; scrollbar-width:thin; }
       .drawing-metadata-section { margin-bottom:12px; border:1px solid #e0e7e2; border-radius:10px; background:#fff; overflow:hidden; }
       .drawing-metadata-section:has(.drawing-metadata-combobox) { position:relative; overflow:visible; }
       .drawing-metadata-section:has(.drawing-metadata-combobox:not([hidden])) { z-index:30; }
       .drawing-metadata-section-header { display:flex; align-items:flex-end; justify-content:space-between; gap:18px; padding:11px 14px 9px; border-bottom:1px solid #edf1ee; background:#fbfcfb; }
       .drawing-metadata-section-header h3 { margin:0; color:#20362b; font-size:13px; }
       .drawing-metadata-section-header p { margin:0; color:#89928d; font-size:12px; }
       .drawing-metadata-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px 14px; padding:13px 14px 15px; }
       .drawing-metadata-field { min-width:0; display:grid; gap:6px; color:#57645d; font-size:12px; font-weight:600; }
       .drawing-metadata-field.has-combobox { position:relative; }
       .drawing-metadata-combobox { position:absolute; z-index:20; top:54px; left:0; right:0; max-height:170px; overflow-y:auto; overscroll-behavior:contain; border:1px solid #cfdad3; border-radius:8px; padding:4px; background:#fff; box-shadow:0 12px 28px rgba(20,52,35,.16); scrollbar-width:thin; }
       .drawing-metadata-combobox[hidden] { display:none; }
       .drawing-metadata-combobox-option { width:100%; min-height:32px; display:block; overflow:hidden; border:0; border-radius:6px; padding:7px 9px; background:transparent; color:#31463a; font:11px "Microsoft YaHei UI",sans-serif; text-align:left; text-overflow:ellipsis; white-space:nowrap; cursor:pointer; }
       .drawing-metadata-combobox-option:hover,.drawing-metadata-combobox-option.active { background:#e9f3ed; color:#145338; }
       .drawing-metadata-field.wide { grid-column:span 2; }
       .drawing-metadata-number-row { display:flex; align-items:center; gap:8px; width:100%; max-width:420px; }
       .drawing-metadata-number-row .selection-input { flex:1 1 240px; width:0; min-width:0; max-width:300px; }
       .drawing-metadata-number-row button { flex:none; white-space:nowrap; }
       .drawing-metadata-field small { color:#9a5c36; font-size:12px; font-weight:400; }
       .drawing-metadata-field .selection-input:disabled { border-color:#e2e6e3; background:#f3f5f3; color:#7d8781; }
       .drawing-metadata-actions { flex:none; display:flex; align-items:center; justify-content:space-between; gap:14px; border-top:1px solid #dfe6e1; padding:14px 22px 17px; background:#fff; }
       .drawing-metadata-actions-group { display:flex; flex-wrap:wrap; gap:8px; }
       @media (max-width:800px) { .drawing-metadata-grid { grid-template-columns:1fr 1fr; }.drawing-metadata-field.wide { grid-column:span 2; }.drawing-metadata-section-header { align-items:flex-start; flex-direction:column; gap:3px; }.drawing-metadata-actions { align-items:stretch; flex-direction:column; }.drawing-metadata-actions-group { width:100%; }.drawing-metadata-actions-group .selection-mini-button { flex:1; } }
       .wire-point-layers { display:grid; gap:8px; overflow:auto; padding-right:3px; }
       .wire-point-layer { display:grid; grid-template-columns:48px minmax(0,1fr); gap:9px; align-items:start; padding:9px; border:1px solid #e3e9e5; border-radius:8px; background:#fff; }
       .wire-point-layer strong { padding-top:6px; color:#617067; font-size:12px; }
       .wire-point-buttons { display:flex; flex-wrap:wrap; gap:6px; }
       .wire-point-button { min-height:29px; border:1px solid #bfd0c5; border-radius:6px; padding:0 9px; background:#fff; color:#245c41; cursor:pointer; font:600 11px inherit; }
       .wire-point-button:hover { border-color:#2c7650; background:#edf6f0; }
      .arrangement-planner-overlay { position:fixed; inset:0; z-index:135; display:grid; place-items:center; padding:22px; background:rgba(18,39,29,.20); backdrop-filter:blur(1px); pointer-events:auto; }
      .arrangement-planner { width:min(1240px,calc(100vw - 44px)); height:min(760px,calc(100vh - 44px)); min-height:600px; display:grid; grid-template-rows:auto auto 6px minmax(0,1fr); overflow:hidden; border:1px solid rgba(40,72,54,.16); border-radius:14px; background:#f5f7f5; box-shadow:0 30px 90px rgba(18,34,25,.3); color:#26362d; font:12px "Microsoft YaHei UI","PingFang SC",sans-serif; }
      .arrangement-planner-header { display:flex; align-items:center; gap:18px; padding:15px 18px; border-bottom:1px solid #e2e8e4; background:#fff; }
      .arrangement-planner-title { min-width:0; flex:1; }
      .arrangement-planner-title h2 { margin:0; color:#1d2d24; font-size:18px; letter-spacing:-.01em; }
      .arrangement-planner-title p { margin:4px 0 0; color:#7a8680; font-size:12px; }
      .arrangement-planner-close { position:relative; width:40px; height:40px; flex:none; display:grid; place-items:center; border:0; border-radius:9px; padding:0; background:transparent; color:#68736d; cursor:pointer; font-size:0; }
      .arrangement-planner-close:hover { background:#edf3ef; color:#1f5f40; }
      .arrangement-planner-close:active { background:#e2ece6; transform:translateY(1px); }
      .arrangement-planner-close:focus-visible { outline:3px solid rgba(43,117,80,.2); outline-offset:2px; }
      .arrangement-planner-toolbar { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:12px 18px; background:#fbfcfb; }
      .arrangement-planner-guide { min-width:0; color:#37483e; line-height:1.65; }
      .arrangement-planner-guide strong { display:block; color:#276746; font-size:12px; }
      .arrangement-planner-guide span { display:block; color:#718078; font-size:12px; }
      .arrangement-planner-parameters { display:flex; align-items:flex-end; gap:7px; flex:none; }
      .arrangement-parameter { width:82px; }
      .arrangement-parameter span { display:block; margin-bottom:4px; color:#77847c; font-size:12px; }
      .arrangement-parameter input,.arrangement-parameter select { box-sizing:border-box; width:100%; height:32px; border:1px solid #d6ba51; border-radius:6px; background-color:#fff7b2; color:#24372b; padding:0 8px; font:600 12px inherit; }
      .arrangement-parameter select { padding-right:24px; }
      .arrangement-parameter input:focus,.arrangement-parameter select:focus { outline:2px solid #2a704c; outline-offset:1px; }
      .arrangement-calculate { min-height:32px; border:1px solid #2a704c; border-radius:6px; padding:0 13px; background:#fff; color:#246444; cursor:pointer; font:650 10px inherit; }
      .arrangement-calculate:hover { background:#edf6f0; }
      .arrangement-progress { background:linear-gradient(90deg,#1f6a45,#4b9a69 52%,#1f6a45); box-shadow:inset 0 1px rgba(255,255,255,.24); }
      .arrangement-planner-body { min-height:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding:14px; overflow:auto; scrollbar-width:thin; }
      .arrangement-planner-body.single { grid-template-columns:minmax(0,680px); justify-content:center; }
      .arrangement-candidate { min-width:0; min-height:0; display:grid; grid-template-rows:auto minmax(0,1fr) auto; overflow:hidden; border:1px solid #dce4df; border-radius:10px; background:#fff; transition:border-color .16s,box-shadow .16s; }
      .arrangement-candidate:not(.readonly):hover { border-color:#9dbbaa; box-shadow:0 8px 22px rgba(33,73,51,.08); }
      .arrangement-candidate-header { display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:44px; border-bottom:1px solid #e8ece9; padding:0 13px; }
      .arrangement-candidate-header strong { color:#2b3b32; font-size:12px; }
      .arrangement-candidate-header span { color:#829088; font-size:12px; }
      .arrangement-candidate-diagram { min-height:0; display:grid; grid-template-rows:minmax(0,1fr) auto; overflow:auto; padding:10px 10px 8px; background-color:#f7faf8; background-image:linear-gradient(rgba(37,92,63,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(37,92,63,.035) 1px,transparent 1px); background-size:18px 18px; cursor:default; scrollbar-width:thin; }
      .arrangement-candidate-diagram svg { width:100%; min-width:360px; height:100%; min-height:310px; overflow:visible; }
      .arrangement-diagram-legend { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:14px; min-height:30px; padding:5px 8px 2px; color:#65736b; font-size:12px; }
      .arrangement-diagram-legend span { display:inline-flex; align-items:center; gap:5px; white-space:nowrap; }
      .arrangement-legend-wire,.arrangement-legend-hole,.arrangement-legend-layer { width:16px; height:10px; display:inline-block; border-radius:999px; }
      .arrangement-legend-wire { border:1px solid #243c31; background:#fff; }
      .arrangement-legend-hole { border:1px solid #9aa8a0; background:#fff; }
      .arrangement-legend-layer { width:26px; height:9px; border:1px solid #243c31; background:#fff; }
      .arrangement-legend-keel { width:18px; height:10px; display:inline-block; background:#111; }
      .arrangement-candidate-footer { display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:50px; border-top:1px solid #e8ece9; padding:8px 12px; background:#fbfcfb; }
      .arrangement-candidate-footer span { color:#7b8880; font-size:12px; line-height:1.45; }
      .arrangement-import { min-height:32px; flex:none; border:0; border-radius:6px; padding:0 14px; background:#217149; color:#fff; cursor:pointer; font:700 10px inherit; }
      .arrangement-import:hover { background:#185e3c; }
      .arrangement-import:disabled,.arrangement-calculate:disabled { cursor:wait; opacity:.6; }
      .arrangement-empty { display:grid; min-height:220px; place-items:center; padding:20px; color:#87918b; text-align:center; }
      @media (max-width:800px) { .arrangement-planner-overlay { padding:10px; }.arrangement-planner { width:100%; height:calc(100vh - 20px); min-height:0; }.arrangement-planner-toolbar { align-items:flex-start; flex-direction:column; }.arrangement-planner-parameters { width:100%; flex-wrap:wrap; }.arrangement-parameter { flex:1; min-width:70px; }.arrangement-calculate { flex:1; }.arrangement-planner-body,.arrangement-planner-body.single { grid-template-columns:1fr; justify-content:stretch; }.arrangement-candidate { min-height:470px; } }
      .native-business-dialog { width:min(1180px,calc(100vw - 48px)); max-height:calc(100dvh - 48px); }
      .native-business-dialog > .portal-content { display:flex; flex-direction:column; gap:20px; min-height:0; overflow:auto; padding:20px 24px 28px; }
      .shipping-toolbar { background:#fff; padding:6px 0; display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
      .shipping-toolbar .shipping-progress { position:static !important; width:120px !important; max-width:100%; height:6px !important; align-self:center; margin-right:auto; accent-color:#23694f; }
      .shipping-more { position:relative; }
      .shipping-more summary { cursor:pointer; padding:7px 12px; border:1px solid #cfddd5; border-radius:6px; color:#64786b; }
      .shipping-more-menu { display:none; }
      .shipping-more[open] .shipping-more-menu { position:absolute; right:0; top:calc(100% + 6px); z-index:3; width:max-content; max-width:calc(100vw - 64px); padding:8px; display:flex; flex-direction:column; gap:6px; background:#fff; border:1px solid #dce5df; border-radius:8px; box-shadow:0 6px 24px #173e3020; }
      .shipping-toolbar .shipping-action { position:static !important; width:auto !important; height:34px !important; padding:0 16px; border:1px solid #cfddd5; border-radius:6px; background:#fff; font:inherit; }
      .shipping-toolbar > .shipping-action:first-of-type { background:#23694f; color:#fff; border-color:#23694f; }
      .shipping-toolbar .shipping-action.primary { background:#23694f; color:#fff; border-color:#23694f; }
      .shipping-toolbar .shipping-action.completed,.shipping-toolbar .shipping-action.completed:disabled { background:#f2f4f3; color:#7b8781; border-color:#dfe5e1; opacity:1; cursor:default; }
      .shipment-workflow-progress { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border:1px solid #e0e8e3; border-radius:8px; overflow:hidden; background:#f8faf9; }
      .shipment-workflow-progress li { position:relative; min-width:0; padding:10px 12px 10px 28px; color:#718078; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
      .shipment-workflow-progress li + li { border-left:1px solid #e0e8e3; }
      .shipment-workflow-progress li.current { color:#23694f; background:#eef7f2; font-weight:600; }
      .shipment-workflow-progress li.completed { color:#23694f; background:#f4faf7; }
      .shipping-operation-date { display:flex; align-items:center; gap:8px; margin-right:auto; color:#67746d; font-size:12px; }
      .shipping-operation-date input { width:142px; height:34px; border:1px solid #cfddd5; border-radius:6px; padding:0 10px; background:#fff; color:#20342b; font:inherit; }
      .shipping-section { min-width:0; }
      .shipping-section h3 { margin:0 0 12px; font-size:13px; color:#354a40; }
      .shipment-scan { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:12px; padding:16px; background:#f5f9f7; border:1px solid #e0ebe5; border-radius:8px; }
      .shipment-scan input { width:100%; min-height:36px; padding:7px 10px; border:1px solid #cfddd5; border-radius:6px; background:#fff; box-sizing:border-box; }
      @media(max-width:800px) { .shipment-workflow-progress { grid-template-columns:1fr 1fr; }.shipment-workflow-progress li:nth-child(3) { border-left:0;border-top:1px solid #e0e8e3; }.shipment-workflow-progress li:nth-child(4) { border-top:1px solid #e0e8e3; }.shipment-scan { grid-template-columns:1fr; }.shipment-fields { grid-template-columns:1fr; } }
      .shipping-fields { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px 20px; }
      .shipping-field { min-width:0; display:flex; flex-direction:column; gap:6px; }
      .shipping-field-label { color:#738278; font-size:12px; }
      .shipping-field > input,.shipping-field > select,.shipping-field > textarea { width:100%; min-height:34px; padding:6px 9px; border:1px solid #d9e3dd; border-radius:5px; background:#fff; box-sizing:border-box; font:inherit; }
      .shipping-models { display:flex; flex-direction:column; gap:12px; }
      .shipping-model { border:1px solid #dce6df; border-radius:8px; padding:16px; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:14px; }
      .shipping-model-parameters { grid-column:1/-1; border-top:1px solid #edf1ee; padding-top:10px; }
      .shipping-model-parameters summary { width:max-content; cursor:pointer; color:#677b6e; font-size:12px; }
      .shipping-model-parameters[open] .shipping-fields { padding-top:14px; }
      .shipping-section > summary { cursor:pointer; color:#738278; font-size:12px; }
      .native-business-dialog :focus-visible { outline:2px solid #398767; outline-offset:2px; }
      .shipping-rule { width:auto; height:auto; color:#738278; font:12px/1.5 "Microsoft YaHei UI",sans-serif; }
      .workspace-dialog-layer.workbench-dialog-layer { position:fixed; inset:0; padding:24px; pointer-events:auto; }
      .workspace-dialog-frame.workbench-dialog { max-width:calc(100vw - 48px); max-height:calc(100dvh - 48px); }
      .workbench-dialog .workspace-dialog-header { height:auto; min-height:72px; flex:none; }
      .workbench-dialog .workspace-dialog-content { position:relative; inset:auto; flex:1; min-height:0; overflow:auto; }
      @media(max-width:800px) { .workspace-dialog-layer.workbench-dialog-layer { padding:12px; }.workspace-dialog-frame.workbench-dialog { max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px); } }
      .bom-source-bar { display:flex; flex-wrap:wrap; align-items:center; gap:10px; min-width:0; color:#738278; font-size:12px; }
      .bom-source-bar strong { color:#354a40; font-weight:600; overflow-wrap:anywhere; }
      .bom-source-kind { padding:3px 7px; border-radius:4px; background:#eef4f0; color:#476653; }
      .bom-table-wrap { overflow:auto; width:100%; border:1px solid #e2e9e4; border-radius:8px; }
      .bom-detail-table { width:max-content; min-width:100%; table-layout:auto; border-collapse:collapse; white-space:nowrap; }
      .bom-detail-table th,.bom-detail-table td { padding:8px 10px; border-bottom:1px solid #edf1ee; text-align:left; font-weight:400; }
      .bom-detail-table thead th { background:#f5f8f6; color:#738278; font-size:12px; }
      .native-business-table { width:max-content; min-width:100%; }
      .native-business-table th,.native-business-table td { min-width:110px; white-space:nowrap; }
      .native-cable-dialog .native-business-table { table-layout:auto; }
      .native-cable-dialog .native-business-table th,.native-cable-dialog .native-business-table td { width:auto; min-width:0; max-width:none; overflow:visible; text-overflow:clip; white-space:nowrap; }
      .native-business-table .native-business-actions { min-width:230px; }
      .native-business-actions .workspace-button + .workspace-button { margin-left:6px; }
      .shipment-logistics-form { display:grid; gap:12px; }
      .shipment-logistics-form > .workspace-button { justify-self:end; }
      .shipment-image-upload { display:grid; gap:6px; width:max-content; max-width:100%; margin-top:12px; }
      .shipment-image-gallery { display:grid; grid-template-columns:repeat(auto-fill,minmax(140px,1fr)); gap:12px; margin-top:12px; }
      .shipment-image-gallery figure { margin:0; overflow:hidden; border:1px solid #e2e9e4; border-radius:8px; background:#fff; }
      .shipment-image-gallery img { display:block; width:100%; height:112px; object-fit:cover; }
      .shipment-image-gallery figcaption { padding:7px 9px; color:#738278; font-size:11px; }
      #load-error { display:none; padding:16px; font:12px Tahoma; color:#900; }
      .accounts-workspace { height:100%; min-height:0; display:flex; flex-direction:column; padding:0 20px; background:#fff; color:#203b32; font:13px/1.5 "Microsoft YaHei UI",sans-serif; }
      .admin-tabs { display:flex; flex:none; gap:24px; border-bottom:1px solid #e0e8e4; overflow-x:auto; }
      .admin-tab { border:0; border-bottom:2px solid transparent; padding:18px 2px 14px; background:transparent; color:#6c7c75; white-space:nowrap; font:inherit; cursor:pointer; }
      .admin-tab.active { color:#25694f; border-bottom-color:#25694f; font-weight:700; }
      .admin-toolbar { display:flex; flex-wrap:wrap; align-items:center; gap:10px; padding:18px 0; flex:none; }
      .admin-toolbar .admin-search { width:300px; max-width:100%; }
      .admin-toolbar .admin-toolbar-spacer { flex:1; }
      .admin-more { position:relative; }
      .admin-more summary { list-style:none; cursor:pointer; display:flex; align-items:center; gap:8px; }
      .admin-more summary::-webkit-details-marker { display:none; }
      .admin-more summary::after { content:''; width:12px; height:12px; background:url('/assets/v/23e00bd5f7092090/chevron-down.svg') center/contain no-repeat; }
      .admin-more summary:focus-visible { outline:2px solid #236246; outline-offset:2px; }
      .admin-more-actions { position:absolute; z-index:20; top:calc(100% + 6px); right:0; min-width:168px; padding:6px; background:#fff; border:1px solid #d6e2dc; border-radius:8px; box-shadow:0 8px 24px #163e2e1a; }
      .admin-more-actions .workspace-button { width:100%; border:0; text-align:left; white-space:nowrap; }
      .admin-toolbar input,.admin-toolbar select,.admin-profile-field input,.admin-profile-field textarea,.admin-profile-field select { min-width:0; border:1px solid #d6e2dc; border-radius:6px; padding:9px 12px; background-color:#fff; color:#203b32; font:inherit; }
      .admin-toolbar select,.admin-profile-field select { appearance:none; padding-right:32px; background-image:url('/assets/v/23e00bd5f7092090/chevron-down.svg'); background-repeat:no-repeat; background-position:right 11px center; background-size:12px; }
      .accounts-workspace :focus-visible,.account-editor :focus-visible { outline:2px solid #398767; outline-offset:2px; }
      .accounts-workspace button:disabled,.account-editor button:disabled { opacity:.45; cursor:not-allowed; }
      .admin-content { flex:1; min-height:0; overflow:auto; }
      .admin-table { width:100%; border-collapse:separate; border-spacing:0; background:#fff; font:inherit; }
      .admin-table th,.admin-table td { padding:15px 16px; text-align:left; border-bottom:1px solid #e9eeeb; }
      .admin-table th { position:sticky; top:0; z-index:1; background:#f6f9f7; color:#6b7c74; font-size:12px; font-weight:500; white-space:nowrap; }
      .admin-table td { max-width:260px; overflow-wrap:anywhere; }
      .admin-table tbody tr:hover { background:#f8fbf9; }
      .access-policy-table { min-width:880px; }
      .access-policy-table th.admin-permission,.access-policy-table td.admin-permission { min-width:80px; text-align:center; }
      .access-policy-table input[type=checkbox] { width:16px; height:16px; accent-color:#276d50; cursor:pointer; }
      .access-policy-table input:focus-visible { outline:2px solid #276d50; outline-offset:4px; }
      .access-policy-table th:nth-child(2) { min-width:160px; }
      .admin-table .admin-actions { white-space:nowrap; min-width:166px; }
      .admin-actions button+button { margin-left:18px; }
      .admin-table .admin-permission { text-align:center; }
      .admin-table input[type=checkbox],.account-editor input[type=checkbox] { width:16px; height:16px; accent-color:#25694f; cursor:pointer; }
      .admin-badge { display:inline-block; padding:2px 8px; border-radius:5px; background:#e9f4ee; color:#25694f; font-size:12px; white-space:nowrap; }
      .admin-badge.inactive { background:#f0f2f1; color:#7d8882; }
      .admin-footer { display:flex; align-items:center; flex-wrap:wrap; gap:10px; padding:16px 0; border-top:1px solid #e0e8e4; flex:none; color:#718178; font-size:12px; }
      .admin-footer .admin-count { flex:1; }
      .admin-status { color:#25694f; flex:none; line-height:1.6; }
      .admin-status:not(:empty) { padding:0 0 12px; }
      .admin-status.error { color:#ac3f30; }
      .admin-empty { padding:48px 24px; color:#7a8981; text-align:center; }
      .admin-profile-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 24px; max-width:960px; padding:12px 0 24px; }
      .admin-profile-field { display:grid; gap:7px; min-width:0; font:13px/1.5 "Microsoft YaHei UI",sans-serif; }
      .admin-profile-field.wide,.admin-profile-help { grid-column:1/-1; }
      .admin-profile-field span { color:#536b60; }
      .admin-profile-field input,.admin-profile-field textarea,.admin-profile-field select { width:100%; box-sizing:border-box; }
      .admin-profile-field textarea { min-height:76px; resize:vertical; }
      .admin-profile-help { margin:0; color:#7b8881; font-size:12px; line-height:1.7; }
      .document-profile-form { display:grid; gap:24px; width:100%; padding:4px 0 24px; box-sizing:border-box; }
      .document-profile-usage { color:#718178; font-size:12px; line-height:1.6; }
      .document-profile-notice { display:flex; align-items:flex-start; gap:14px; padding:16px 20px; border:1px solid #dce8e1; border-radius:8px; background:#f5f9f7; }
      .document-profile-notice.is-empty { background:#fffaf0; border-color:#eddfbf; }
      .document-profile-notice strong { display:block; color:#214e3a; font-size:14px; margin-bottom:5px; }
      .document-profile-notice.is-empty strong { color:#826027; }
      .document-profile-notice p { margin:0; color:#687b72; font-size:12px; line-height:1.7; }
      .document-profile-section { min-width:0; margin:0; padding:0 0 24px; border:0; border-bottom:1px solid #e5ece8; }
      .document-profile-section:last-child { border-bottom:0; padding-bottom:0; }
      .document-profile-section legend { padding:0; margin-bottom:6px; font-size:15px; font-weight:600; color:#173e2e; }
      .document-profile-section > p { margin:0 0 18px; color:#7b8881; font-size:12px; line-height:1.6; }
      .document-profile-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px 24px; }
      .document-profile-grid .admin-profile-field.wide { grid-column:span 2; }
      .document-profile-grid input,.document-profile-grid textarea { min-height:40px; padding:9px 12px; border:1px solid #d4e0da; border-radius:6px; background:#fff; color:#203b2e; font:13px/1.5 "Microsoft YaHei UI",sans-serif; }
      .document-profile-grid textarea { min-height:40px; height:40px; }
      .document-profile-grid input::placeholder,.document-profile-grid textarea::placeholder { color:#929f98; }
      .document-profile-grid input:focus,.document-profile-grid textarea:focus { outline:2px solid #25815a30; outline-offset:1px; border-color:#287b55; }
      @media(max-width:1200px) { .document-profile-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
      @media(max-width:700px) { .document-profile-grid { grid-template-columns:1fr; gap:16px; } .document-profile-grid .admin-profile-field.wide { grid-column:auto; } .document-profile-notice { padding:14px; } .document-profile-usage { flex-basis:100%; } }
      .account-editor { width:min(660px,calc(100vw - 32px)); max-height:calc(100dvh - 40px); padding:0; border:1px solid #dce5df; border-radius:12px; box-shadow:0 20px 70px #18362c30; color:#203b32; background:white; }
      .account-editor::backdrop { background:rgba(18,39,29,.20); backdrop-filter:blur(1px); }
      .account-editor form { display:flex; flex-direction:column; max-height:calc(100dvh - 42px); }
      .account-editor header { display:flex; align-items:center; justify-content:space-between; padding:16px 24px; border-bottom:1px solid #e4eae6; }
      .account-editor h2 { font-size:18px; margin:0; }
      .account-editor .admin-profile-form { padding:24px; margin:0; overflow:auto; }
      .account-editor footer { padding:16px 24px; border-top:1px solid #e4eae6; display:flex; gap:10px; justify-content:flex-end; }
      .account-editor .admin-status { padding:0 24px 14px; }
      .account-admin-check { grid-column:1/-1; display:flex; align-items:center; gap:9px; align-self:center; font-size:13px; }
      @media(max-width:700px) { .accounts-workspace { padding:0 12px; } .admin-tabs { gap:18px; } .admin-toolbar { gap:8px; padding:14px 0; } .admin-toolbar .admin-search { width:100%; } .admin-toolbar .admin-toolbar-spacer { display:none; } .admin-table { min-width:840px; } .admin-profile-form { grid-template-columns:1fr; gap:16px; } .account-editor .admin-profile-form { padding:18px; } .account-editor header,.account-editor footer { padding:12px 18px; } }
      .combination-client { padding:10px; overflow:auto; font:12px Tahoma,"Microsoft YaHei UI",sans-serif; }
      .combination-table { width:100%; border-collapse:collapse; }
      .combination-table th,.combination-table td { border:1px solid #aaa; padding:5px 7px; text-align:left; }
      .combination-table th { background:#ececec; }
      .combination-issue { margin-bottom:8px; padding:6px 8px; border:1px solid #c79b3c; background:#fff4cf; color:#6a4300; }
      .login-shell { min-height:100dvh; display:grid; grid-template-columns:minmax(0,58.7fr) minmax(430px,41.3fr); background:#f5f3ed; color:#202924; }
      .public-saas-footer{grid-column:1/-1;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 12px;padding:12px 20px;color:#718078;font-size:12px;line-height:1.6;background:#f8f7f3}
      .public-saas-footer[hidden]{display:none}.public-saas-footer a{color:inherit;text-underline-offset:3px}.public-saas-footer a:focus-visible{outline:2px solid #236246;outline-offset:3px}
      @media(min-width:901px){
        .login-shell{height:100vh;height:100dvh;min-height:0;grid-template-rows:minmax(0,1fr) auto}
        .login-shell > .login-visual,.login-shell > .login-panel{min-height:0;box-sizing:border-box}
        .login-shell > .login-panel{overflow-y:auto;padding-block:clamp(32px,5vh,64px)}
        .login-shell > .login-visual{padding-top:clamp(28px,6vh,82px);padding-bottom:24px}
        .login-shell .login-hero{margin-top:clamp(24px,4vh,64px)}
        .public-saas-footer{box-sizing:border-box;margin:0;padding:8px 20px}
      }
      .login-visual { position:relative; min-height:720px; overflow:hidden; padding:82px clamp(48px,5.25vw,82px) 42px; border-right:1px solid rgba(42,68,53,.14); isolation:isolate; }
      .login-visual::before { content:""; position:absolute; inset:0; z-index:-3; background:radial-gradient(circle at 48% 68%,rgba(255,255,255,.98) 0 12%,rgba(255,255,255,.52) 34%,transparent 62%),linear-gradient(145deg,#f9f8f4 0%,#f1efe8 100%); }
      .login-visual::after { content:""; position:absolute; left:8%; right:6%; bottom:6%; height:38%; z-index:-2; opacity:.28; background:linear-gradient(18deg,transparent 49.85%,rgba(118,126,118,.18) 50%,transparent 50.15%),linear-gradient(163deg,transparent 49.85%,rgba(118,126,118,.13) 50%,transparent 50.15%); background-size:310px 180px,360px 220px; mask-image:linear-gradient(to right,transparent,#000 15%,#000 80%,transparent); }
      .login-brand { display:flex; align-items:center; gap:20px; color:#18231e; font-weight:750; font-size:28px; letter-spacing:.055em; }
      .login-brand-mark { width:104px; height:72px; flex:none; }
      .login-hero { position:relative; z-index:2; max-width:760px; margin-top:clamp(54px,6vh,64px); }
      .login-hero h1 { max-width:760px; margin:0; font-family:"Songti SC","STSong","Noto Serif CJK SC",serif; font-size:clamp(44px,3.7vw,57px); font-weight:500; line-height:1.16; letter-spacing:-.035em; color:#26342d; white-space:nowrap; }
      .login-hero p { margin:28px 0 0; font-size:clamp(16px,1.3vw,20px); line-height:1.8; letter-spacing:.04em; color:#69736d; }
      html[data-locale="en"] .login-brand { max-width:590px; font-size:23px; letter-spacing:.015em; }
      html[data-locale="en"] .login-hero h1 { max-width:690px; white-space:normal; }
      html[data-locale="en"] .login-hero p { max-width:620px; letter-spacing:0; }
      .product-stage { position:absolute; left:4%; right:2%; bottom:10%; height:50%; z-index:1; pointer-events:none; }
      .engineering-overlay { position:absolute; inset:-18% -1% -12% -2%; z-index:0; width:103%; height:130%; overflow:visible; }
      .engineering-overlay .measure { fill:none; stroke:#86938c; stroke-width:1.1; opacity:.64; vector-effect:non-scaling-stroke; }
      .engineering-overlay .measure.light,.engineering-overlay .measure .light { opacity:.38; }
      .engineering-overlay .measure.dashed,.engineering-overlay .measure .dashed { stroke-dasharray:9 7; }
      .engineering-overlay .measure.orange { stroke:#dd7535; opacity:.78; }
      .engineering-overlay .measure-dot { stroke:none; }
      .product-stage img { position:absolute; left:9%; bottom:3%; z-index:1; width:82%; height:100%; object-fit:contain; object-position:center bottom; filter:drop-shadow(0 25px 25px rgba(53,63,57,.14)); }
      .login-panel { position:relative; min-height:720px; display:flex; align-items:center; justify-content:center; padding:64px clamp(42px,6vw,94px); background:rgba(250,249,245,.84); }
      .locale-control { position:absolute; top:34px; right:clamp(28px,4vw,58px); z-index:3; display:flex; align-items:center; gap:7px; color:#647069; }
      .locale-control svg { width:17px; height:17px; flex:none; }
      .locale-control select { border:0; outline:0; padding:6px 22px 6px 2px; background:transparent; color:#536059; font-family:inherit; font-size:13px; cursor:pointer; }
      .locale-control select:focus-visible { border-radius:5px; box-shadow:0 0 0 2px rgba(49,132,88,.2); }
      .login-card { width:min(100%,412px); }
      .login-card h2 { margin:0; font-size:32px; font-weight:650; line-height:1.3; letter-spacing:-.025em; color:#1d2923; }
      .login-card-lead { margin:12px 0 44px; color:#78817c; font-size:15px; }
      .login-field { display:block; margin-bottom:24px; }
      .login-field > span { display:block; margin-bottom:10px; font-size:14px; font-weight:600; color:#34433b; }
      .login-input-wrap { position:relative; }
      .login-input { width:100%; height:68px; border:1px solid #d7d8d3; border-radius:8px; outline:0; padding:0 16px; background:#fff; color:#202924; font:15px inherit; box-shadow:0 1px 0 rgba(38,48,42,.02); transition:border-color .18s,box-shadow .18s; }
      .login-input::placeholder { color:#abb0ac; }
      .login-input:hover { border-color:#bfc4bf; }
      .login-input:focus { border-color:#318458; box-shadow:0 0 0 3px rgba(49,132,88,.1); }
      .login-input.has-toggle { padding-right:52px; }
      .password-toggle { position:absolute; top:50%; right:7px; width:40px; height:40px; transform:translateY(-50%); display:grid; place-items:center; border:0; border-radius:6px; background:transparent; color:#7a837e; cursor:pointer; }
      .password-toggle:hover { background:#f6f4ef; color:#3d4943; }
      .password-toggle:focus-visible { outline:2px solid #d87531; outline-offset:1px; }
      .password-toggle svg { width:20px; height:20px; }
      .portal-password-control { position:relative; display:block; min-width:0; }
      .portal-password-control > input { width:100%; box-sizing:border-box; padding-right:48px!important; }
      .portal-password-control > .portal-password-toggle { position:absolute; right:4px; top:50%; transform:translateY(-50%); display:grid; place-items:center; width:40px; height:32px; min-height:0; margin:0; padding:0; border:0; border-radius:5px; background:transparent; color:#6c7d76; cursor:pointer; }
      .portal-password-toggle svg { width:20px; height:20px; pointer-events:none; }
      .portal-password-control > .portal-password-toggle:hover { background:#eaf2ed; color:#236246; }
      .portal-password-toggle:focus-visible { outline:2px solid #77a48b; outline-offset:1px; }
      .portal-password-toggle[aria-pressed="true"] { color:#236246; background:#eaf2ed; }
      .login-error { min-height:22px; margin:12px 0; color:#ad3b2d; font-size:13px; line-height:1.65; overflow-wrap:anywhere; }
      .login-submit { width:100%; min-height:52px; border:1px solid #236246; border-radius:8px; padding:12px 20px; background:#236246; color:#fff; font-family:inherit; font-size:15px; font-weight:600; line-height:1.5; letter-spacing:normal; box-shadow:none; cursor:pointer; transition:background .18s,border-color .18s,transform .18s; }
      .login-submit:hover { border-color:#194f38; background:#194f38; }
      #unified-login { display:flex; align-items:center; justify-content:center; text-decoration:none; }
      .login-field > .portal-code-row {display:flex;gap:10px;align-items:stretch;margin-bottom:0}
      .portal-code-row input {min-width:0;flex:1}
      .portal-code-field > label {display:block;margin-bottom:10px;font-size:14px;font-weight:600;color:#34433b}
      .portal-code-status {min-height:20px;margin:8px 0 0;font-size:13px;line-height:1.55;color:var(--portal-primary,#236246)}
      .portal-code-status[data-kind="error"] {color:#ad3b2d}
      #portal-send-code {flex:none;padding:0 14px;border:1px solid #d7e0db;border-radius:6px;background:#fff;color:#236246;font:inherit;font-size:13px;cursor:pointer}
      #portal-send-code:disabled {opacity:.55;cursor:default}
      #portal-code-channels {display:flex;gap:24px;margin:0 0 18px;border-bottom:1px solid #e1e7e3}
      #portal-code-channels button {border:0;border-bottom:2px solid transparent;margin:0 0 -1px;padding:8px 0;background:transparent;color:#7b857f;font:inherit;font-size:13px;cursor:pointer;transition:color .16s,border-color .16s}
      #portal-code-channels button:hover,#portal-code-channels button[aria-selected="true"] {color:var(--portal-primary,#236246);border-bottom-color:var(--portal-primary,#236246)}
      #portal-code-channels button[aria-selected="true"] {font-weight:600}
      #portal-code-channels button:focus-visible {outline:2px solid #77a48b;outline-offset:3px;border-radius:2px}
      .portal-restart {border:0;background:transparent;color:#236246;font:inherit;font-size:13px;padding:0 0 16px;cursor:pointer}
      #portal-login-tabs {display:flex;gap:28px;border-bottom:1px solid #dfe5e0;margin:0 0 24px}
      #portal-login-tabs button {border:0;border-bottom:2px solid transparent;padding:12px 0;background:transparent;color:#78817c;font:inherit;font-size:15px;cursor:pointer;margin-bottom:-1px}
      #portal-login-tabs button[aria-selected="true"] {color:var(--portal-primary,#236246);border-bottom-color:var(--portal-primary,#236246);font-weight:600}
      #portal-login-tabs button:focus-visible {outline:2px solid #77a48b;outline-offset:4px;border-radius:2px}
      #portal-login-tabs button:disabled {opacity:.6;cursor:wait}
      #portal-password-fields {border:0;padding:0;margin:0;min-width:0}
      #portal-login-tabs[hidden],#portal-password-fields[hidden],#portal-phone-fields[hidden],#portal-enterprises[hidden] {display:none!important}
      .portal-onboarding {display:grid;gap:16px;min-width:0;margin-bottom:24px}
      #login-form.portal-selecting > h2,#login-form.portal-selecting > .login-card-lead,#login-form.portal-selecting > .login-secondary {display:none}
      .portal-onboarding h2:focus {outline:none}
      .portal-membership-note {margin:0 0 8px;color:#78817c;font-size:14px;line-height:1.6}
      .portal-tenant-list {display:grid;gap:12px;min-width:0;max-height:336px;overflow-y:auto;overscroll-behavior:contain;border:0;margin:0;padding:4px;scrollbar-width:thin;scrollbar-color:#c6d3cb transparent}
      .portal-tenant-card {position:relative;display:flex;align-items:center;gap:14px;min-width:0;min-height:80px;padding:16px;border:1px solid #d7e0db;border-radius:10px;background:#fff;cursor:pointer;transition:border-color .15s,background .15s}
      .portal-tenant-card:hover {border-color:var(--portal-primary,#236246);background:#f7faf8}
      .portal-tenant-card:has(input:checked) {border-color:var(--portal-primary,#236246);background:#edf5f0}
      .portal-tenant-card:has(input:focus-visible) {outline:2px solid var(--portal-primary,#236246);outline-offset:2px}
      .portal-tenant-card:has(input:disabled) {opacity:.6;cursor:wait}
      .portal-tenant-card input,.portal-visually-hidden {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
      .portal-tenant-mark {display:grid;place-items:center;flex:0 0 40px;height:40px;border-radius:8px;background:#e8f0eb;color:var(--portal-primary,#236246);font-size:18px;font-weight:650}
      .portal-tenant-mark img {width:40px;height:40px;object-fit:contain;border-radius:8px}
      .portal-tenant-mark [hidden] {display:none!important}
      .portal-tenant-name {min-width:0;flex:1;color:#273c31;font-size:16px;font-weight:600;line-height:1.5;overflow-wrap:anywhere}
      .portal-tenant-check {display:grid;place-items:center;flex:0 0 20px;height:20px;border:1px solid #c4d0c9;border-radius:50%;background:#fff}
      .portal-tenant-card:has(input:checked) .portal-tenant-check {border-color:var(--portal-primary,#236246);background:var(--portal-primary,#236246)}
      .portal-tenant-card:has(input:checked) .portal-tenant-check::after {content:"";width:8px;height:4px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:translateY(-1px) rotate(-45deg)}
      #portal-account-switch {display:block;width:100%;margin:16px 0 0;padding:8px;text-align:center;color:#68766e}
      #portal-account-switch:focus-visible,.portal-onboarding button:focus-visible {outline:2px solid var(--portal-primary,#236246);outline-offset:2px;border-radius:6px}
      .portal-create-enterprise {min-width:0}
      .portal-entry-actions {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
      .portal-entry-actions .portal-restart {margin:0}
      .portal-create-opc select {width:100%}
      .portal-onboarding .portal-restart {display:block;width:100%;padding:10px 12px;margin:0;border:1px solid #d8e2dc;border-radius:6px;background:#fff;text-align:center}
      .portal-enrollment-actions {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;margin:4px 0 0;border-bottom:1px solid #e2e8e4}
      .portal-enrollment-actions:not(:has(.portal-enroll:not([hidden]))) {display:none}
      .portal-enrollment-actions:has(.portal-enroll:not([hidden])) {margin-top:4px}
      .portal-enrollment-actions .portal-enroll {position:relative;width:100%;margin:0;padding:13px 8px 11px;text-align:center;color:#68766e}
      .portal-enrollment-actions .portal-enroll::after {content:"";position:absolute;left:16%;right:16%;bottom:-1px;height:2px;border-radius:99px;background:var(--portal-primary,#236246);transform:scaleX(0);transition:transform .16s ease}
      .portal-enrollment-actions .portal-enroll:hover {color:var(--portal-primary,#236246)}
      .portal-enrollment-actions .portal-enroll:hover::after,.portal-enrollment-actions .portal-enroll:focus-visible::after {transform:scaleX(1)}
      .portal-captcha-host {margin:18px auto 0;max-width:100%;min-height:230px}
      .login-submit:active { transform:translateY(1px); }
      .login-submit:focus-visible { outline:2px solid #77a48b; outline-offset:3px; }
      .login-submit:disabled { cursor:not-allowed; border-color:#c9c6bf; background:#c9c6bf; box-shadow:none; }
      .login-secondary { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:16px; }
      .login-card:has(#unified-login:not([hidden])) .login-secondary { grid-template-columns:1fr; }
      .login-card:has(#unified-login:not([hidden])) .login-card-lead { margin-bottom:28px; }
      .login-error:empty { display:none; }
      .login-secondary button { min-height:44px; padding:10px 16px; border:1px solid #d7ded9; border-radius:8px; background:#fff; color:#35443c; font-family:inherit; font-size:14px; font-weight:500; line-height:1.5; cursor:pointer; transition:border-color .18s,background .18s,color .18s; }
      .login-secondary button:hover { border-color:#318458; background:#fff; color:#246745; }
      .login-secondary button:focus-visible { outline:3px solid rgba(49,132,88,.16); outline-offset:2px; }
      .login-support { margin:22px 0 0; text-align:center; color:#89908c; font-size:13px; }
      html:has(#register-dialog:not([hidden])), body:has(#register-dialog:not([hidden])), html:has(#history-dialog:not([hidden])), body:has(#history-dialog:not([hidden])), html:has(#output-history-dialog:not([hidden])), body:has(#output-history-dialog:not([hidden])), html:has(#batch-output-dialog:not([hidden])), body:has(#batch-output-dialog:not([hidden])) { overflow:hidden; }
      .register-overlay { position:fixed; inset:0; z-index:80; display:grid; place-items:center; padding:24px; background:rgba(18,39,29,.20); backdrop-filter:blur(1px); }
      .register-dialog { width:min(100%,520px); max-height:min(820px,92dvh); overflow:auto; border:1px solid rgba(47,67,56,.12); border-radius:16px; background:#fbfaf7; box-shadow:0 28px 90px rgba(18,30,23,.28); }
      .register-header { display:flex; align-items:flex-start; gap:18px; padding:28px 30px 18px; }
      .register-header-copy { flex:1; }
      .register-header h2 { margin:0; color:#1d2923; font-size:26px; line-height:1.25; }
      .register-header p { margin:8px 0 0; color:#78817c; font-size:14px; line-height:1.6; }
      .register-close { position:relative; width:40px; height:40px; flex:none; display:grid; place-items:center; border:0; border-radius:9px; padding:0; background:transparent; color:#68736d; cursor:pointer; font-size:0; }
      .register-close:hover { background:#edf3ef; color:#1f5f40; }
      .register-close:active { background:#e2ece6; transform:translateY(1px); }
      .register-close:focus-visible { outline:3px solid rgba(43,117,80,.2); outline-offset:2px; }
      .app-dialog-close::before,.app-dialog-close::after,.register-close::before,.register-close::after,.arrangement-planner-close::before,.arrangement-planner-close::after,.workspace-dialog-close::before,.workspace-dialog-close::after { content:""; position:absolute; left:50%; top:50%; width:18px; height:2px; border-radius:999px; background:currentColor; transform-origin:center; }
      .app-dialog-close::before,.register-close::before,.arrangement-planner-close::before,.workspace-dialog-close::before { transform:translate(-50%,-50%) rotate(45deg); }
      .app-dialog-close::after,.register-close::after,.arrangement-planner-close::after,.workspace-dialog-close::after { transform:translate(-50%,-50%) rotate(-45deg); }
      .register-form { padding:6px 30px 30px; }
      .register-field { display:block; margin-bottom:18px; }
      .register-field > span { display:block; margin-bottom:8px; color:#34433b; font-size:13px; font-weight:650; }
      .register-input { width:100%; height:54px; border:1px solid #d7d8d3; border-radius:8px; outline:0; padding:0 14px; background:#fff; color:#202924; font:15px inherit; }
      .register-input:focus { border-color:#318458; box-shadow:0 0 0 3px rgba(49,132,88,.1); }
      .register-field > .verification-row { width:100%; display:grid; grid-template-columns:minmax(0,1fr) 132px; gap:10px; margin-bottom:0; }
      .verification-send { border:1px solid #318458; border-radius:8px; background:#fff; color:#276d4a; font:600 13px inherit; cursor:pointer; }
      .verification-send:disabled { border-color:#d4d5d1; color:#999f9b; cursor:not-allowed; }
      .register-note { margin:-4px 0 16px; color:#777f7b; font-size:12px; line-height:1.55; }
      .register-status { min-height:22px; margin-bottom:10px; color:#ad3b2d; font-size:13px; line-height:1.55; }
      .register-status.success { color:#27704c; }
      .register-submit { width:100%; height:56px; border:0; border-radius:8px; background:#ef4b16; color:#fff; font:600 15px inherit; cursor:pointer; }
      .register-submit:disabled { background:#c9c6bf; cursor:not-allowed; }
      .history-dialog { width:min(100%,680px); max-height:min(760px,90dvh); display:flex; flex-direction:column; overflow:hidden; border:1px solid rgba(47,67,56,.12); border-radius:16px; background:#fbfaf7; box-shadow:0 28px 90px rgba(18,30,23,.28); font:14px "Microsoft YaHei UI",sans-serif; }
      .history-header { display:flex; align-items:flex-start; gap:18px; padding:26px 28px 18px; border-bottom:1px solid #e8e6df; }
      .history-header-copy { flex:1; }
      .history-header h2 { margin:0; font-size:25px; color:#1d2923; }
      .history-header p { margin:7px 0 0; color:#78817c; line-height:1.55; }
      .history-toolbar { display:flex; justify-content:flex-end; padding:14px 28px; }
      .history-primary,.history-action { border:1px solid #318458; border-radius:7px; padding:8px 14px; background:#fff; color:#246745; cursor:pointer; font:600 13px inherit; }
      .history-primary { background:#318458; color:#fff; }
      .history-list { min-height:160px; overflow:auto; padding:0 28px 24px; }
      .async-dialog-workspace { height:min(760px,calc(100dvh - 48px)); box-sizing:border-box; }
      .async-dialog-workspace > .history-list,.async-dialog-workspace > .connector-dialog-body,.async-dialog-workspace > .async-dialog-body { flex:1; min-height:0; overflow:auto; }
      .async-dialog-workspace > header,.async-dialog-workspace > footer,.async-dialog-workspace > .history-toolbar { flex:none; }
      .order-erp-dialog { width:min(780px,calc(100vw - 32px))!important; height:auto; max-height:calc(100dvh - 48px); background:#fff; }
      .order-erp-dialog > .history-dialog-header { align-items:center; padding:18px 22px!important; }
      .order-erp-dialog > .async-dialog-body { gap:14px!important; padding:20px 22px 0!important; }
      .order-erp-lead { margin:0; color:#66776e; font-size:13px; line-height:1.65; }
      .order-erp-section { overflow:hidden; border:1px solid #dfe7e2; border-radius:10px; background:#fff; }
      .order-erp-section-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:42px; border-bottom:1px solid #e7ede9; padding:0 14px; background:#f7faf8; }
      .order-erp-section-heading h3 { margin:0; color:#24372d; font-size:14px; }
      .order-erp-section-heading span { color:#7b8881; font-size:12px; }
      .order-erp-status-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
      .order-erp-status-card { position:relative; display:grid; gap:5px; min-width:0; padding:15px 16px 16px 20px; }
      .order-erp-status-card + .order-erp-status-card { border-left:1px solid #e8edea; }
      .order-erp-status-card::before { content:""; position:absolute; inset:15px auto 15px 10px; width:3px; border-radius:999px; background:#a9b3ad; }
      .order-erp-status-card[data-tone="success"]::before { background:#2f7b54; }
      .order-erp-status-card[data-tone="warning"]::before { background:#d17a22; }
      .order-erp-status-card[data-tone="danger"]::before { background:#b44a3a; }
      .order-erp-status-card > span { color:#78857e; font-size:12px; }
      .order-erp-status-card > strong { color:#2d3e35; font-size:14px; }
      .order-erp-status-card[data-tone="success"] > strong { color:#246946; }
      .order-erp-status-card[data-tone="warning"] > strong { color:#a45d18; }
      .order-erp-status-card[data-tone="danger"] > strong { color:#a43d31; }
      .order-erp-status-card > small { min-width:0; overflow-wrap:anywhere; color:#68766f; font-size:12px; line-height:1.5; }
      .order-erp-inventory-list { display:grid; }
      .order-erp-inventory-row { display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:12px; align-items:center; min-height:46px; padding:0 14px; }
      .order-erp-inventory-row + .order-erp-inventory-row { border-top:1px solid #edf1ee; }
      .order-erp-inventory-row > strong { min-width:0; overflow-wrap:anywhere; color:#304239; font-size:13px; }
      .order-erp-state { min-width:64px; border-radius:999px; padding:4px 9px; background:#eef1ef; color:#68746d; font-size:12px; font-weight:650; text-align:center; }
      .order-erp-state[data-tone="success"] { background:#e7f3eb; color:#246946; }
      .order-erp-state[data-tone="warning"] { background:#fff0df; color:#a45d18; }
      .order-erp-state[data-tone="danger"] { background:#fff0ed; color:#a43d31; }
      .order-erp-empty { margin:0; padding:18px 14px; color:#7b8881; font-size:13px; text-align:center; }
      .order-erp-notice { margin:0; border-radius:8px; padding:11px 13px; background:#edf5f0; color:#286548; font-size:13px; line-height:1.6; }
      .order-erp-notice[hidden] { display:none; }
      .order-erp-notice[data-tone="warning"] { border-left:3px solid #d17a22; background:#fff7ed; color:#8b5018; }
      .order-erp-notice[data-tone="success"] { border-left:3px solid #2f7b54; }
      .order-erp-actions { position:sticky; bottom:0; z-index:1; display:flex; align-items:center; justify-content:space-between; gap:16px; margin:0 -22px; border-top:1px solid #dfe7e2; padding:14px 22px; background:#fbfcfb; }
      .order-erp-actions-secondary,.order-erp-actions-primary { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
      .order-erp-actions .selection-mini-button { min-height:34px; padding-inline:12px; }
      .order-erp-actions .selection-mini-button.danger { border-color:#e0c5bf; color:#9b493c; }
      .order-erp-actions .selection-mini-button.completed { border-color:#cbd6d0; background:#eef2f0; color:#69766f; }
      @media(max-width:700px){.order-erp-dialog { width:calc(100vw - 20px)!important; max-height:calc(100dvh - 20px); border-radius:12px; }.order-erp-dialog > .history-dialog-header { padding:15px 16px!important; }.order-erp-dialog > .async-dialog-body { padding:16px 16px 0!important; }.order-erp-inventory-row { grid-template-columns:minmax(0,1fr) auto; padding-block:9px; }.order-erp-inventory-row .selection-mini-button { grid-column:1/-1; justify-self:start; }.order-erp-actions { align-items:stretch; flex-direction:column; margin-inline:-16px; padding:12px 16px; }.order-erp-actions-secondary { width:100%; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }.order-erp-actions-primary { width:100%; }.order-erp-actions .selection-mini-button { width:100%; white-space:nowrap; }.order-erp-actions-primary .selection-mini-button { width:100%; }}
      @media(max-width:480px){.order-erp-status-grid { grid-template-columns:minmax(0,1fr); }.order-erp-status-card + .order-erp-status-card { border-left:0; border-top:1px solid #e8edea; }.order-erp-actions-secondary { grid-template-columns:repeat(2,minmax(0,1fr)); }}
      .history-empty { padding:44px 12px; text-align:center; color:#78817c; }
      .history-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:18px; align-items:center; padding:15px 0; border-bottom:1px solid #e8e6df; }
      .history-row strong { display:block; margin-bottom:5px; color:#26342d; }
      .history-row small { color:#78817c; }
      .history-current { display:inline-block; margin-left:8px; border-radius:999px; padding:2px 8px; background:#e5f3ea; color:#27704c; font-size:12px; }
      .history-actions { display:flex; gap:8px; }
      .history-action.danger { border-color:#d9a79b; color:#a5402f; }
      .history-action:disabled { cursor:not-allowed; opacity:.45; }
      .batch-output-row { grid-template-columns:auto minmax(0,1fr) auto; }
      .batch-output-check { width:18px; height:18px; accent-color:#2f7d55; }
      .batch-output-copies { display:flex; align-items:center; gap:7px; color:#65716a; font-size:12px; }
      .batch-output-copies input { width:58px; height:34px; border:1px solid #d8dfda; border-radius:7px; padding:0 8px; background:#fff; font:inherit; }
      .batch-output-toolbar { display:flex; align-items:center; justify-content:flex-end; gap:18px; }
      .follow-up-dialog { width:min(1040px,94vw); max-height:90dvh; }
      .follow-up-list { min-height:180px; overflow:auto; padding:0 0 24px; }
      .follow-up-archive { margin:0 28px 18px; padding:16px; border:1px solid #dce7e0; border-radius:10px; background:#f4f8f5; }
      .follow-up-archive h3 { margin:0 0 12px; color:#173428; font-size:14px; }
      .follow-up-archive dl { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px 20px; margin:0; }
      .follow-up-archive dt { margin-bottom:4px; font-size:12px; color:#748278; }
      .follow-up-archive dd { margin:0; color:#263b2e; font-size:13px; overflow-wrap:anywhere; }
      .follow-up-archive p { margin:12px 0 0; font-size:12px; color:#748278; line-height:1.5; }
      @media(max-width:640px) { .follow-up-archive { margin:0 14px 14px; } .follow-up-archive dl { grid-template-columns:repeat(2,minmax(0,1fr)); } }
      .follow-up-row { display:grid; grid-template-columns:34px 145px 100px minmax(260px,1fr) auto; gap:9px; align-items:center; margin:0 28px; border-bottom:1px solid #e8ece9; padding:10px 0; }
      .follow-up-row-number { color:#7b8680; text-align:center; font-variant-numeric:tabular-nums; }
      .follow-up-input { width:100%; height:36px; min-width:0; border:1px solid #d7ded9; border-radius:6px; padding:0 9px; background:#fff; color:#28362e; font:13px inherit; }
      .follow-up-input:focus { border-color:#448967; outline:0; box-shadow:0 0 0 3px rgba(49,132,88,.08); }
      .follow-up-details { grid-column:2/-1; }
      .follow-up-details summary { cursor:pointer; color:#6d7872; font-size:12px; }
      .follow-up-details-grid { display:grid; grid-template-columns:repeat(4,minmax(140px,1fr)); gap:8px; margin-top:9px; }
      .follow-up-field label { display:block; margin-bottom:4px; color:#858e89; font-size:12px; }
      .revision-history { padding:18px 28px 8px; border-top:1px solid #e5eae7; }
      .revision-history-header { display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin-bottom:10px; }
      .revision-history-header h3 { margin:0; color:#173428; font-size:15px; }
      .revision-history-header p { margin:3px 0 0; color:#7b8680; font-size:12px; }
      .revision-history-count { flex:0 0 auto; border-radius:999px; padding:4px 9px; background:#e5f2eb; color:#17633f; font-size:12px; font-weight:700; }
      .revision-card { margin-bottom:9px; border:1px solid #dfe6e1; border-radius:10px; background:#fff; overflow:hidden; }
      .revision-card summary { display:grid; grid-template-columns:minmax(140px,1fr) minmax(180px,2fr) auto; gap:12px; align-items:center; padding:11px 13px; cursor:pointer; list-style:none; }
      .revision-card summary::-webkit-details-marker { display:none; }
      .revision-actor strong,.revision-reason strong { display:block; color:#20342a; font-size:12px; }
      .revision-actor span,.revision-reason span { display:block; margin-top:2px; color:#7b8680; font-size:12px; }
      .revision-change-count { color:#1a7048; font-size:12px; font-weight:700; }
      .revision-changes { border-top:1px solid #edf0ee; padding:4px 13px 10px; }
      .revision-change { display:grid; grid-template-columns:minmax(120px,1fr) minmax(0,2fr); gap:12px; padding:7px 0; border-bottom:1px dashed #edf0ee; font-size:12px; }
      .revision-change:last-child { border-bottom:0; }
      .revision-change-name { color:#53635b; font-weight:700; }
      .revision-change-values { color:#6c7871; overflow-wrap:anywhere; }
      .revision-change-values del { color:#9a5b52; text-decoration:none; }
      .revision-change-values ins { color:#17633f; text-decoration:none; }
      .save-reason-dialog { width:min(520px,94vw); }
      .save-reason-body { padding:6px 28px 24px; }
      .save-reason-body label { display:block; margin-bottom:7px; color:#33463c; font-size:12px; font-weight:700; }
      .save-reason-body textarea { width:100%; min-height:108px; resize:vertical; border:1px solid #d3ddd7; border-radius:8px; padding:11px; background:#fff; color:#22372c; font:13px/1.6 inherit; }
      .save-reason-body textarea:focus { border-color:#39835f; outline:0; box-shadow:0 0 0 3px rgba(49,132,88,.09); }
      .save-reason-hint { margin:8px 0 0; color:#7c8781; font-size:12px; line-height:1.6; }
      @media (max-width:760px) { .follow-up-row { grid-template-columns:28px 1fr 90px auto; }.follow-up-row>.follow-up-note { grid-column:2/-1; }.follow-up-details-grid { grid-template-columns:1fr 1fr; } }
      .workspace-shell { height:100dvh; display:grid; grid-template-rows:64px minmax(0,1fr); overflow:hidden; background:#f3f5f3; color:#223029; font:13px "Microsoft YaHei UI","PingFang SC",sans-serif; }
      .workspace-topbar { position:relative; z-index:34; display:flex; align-items:center; gap:24px; padding:0 20px 0 24px; border-bottom:1px solid #dfe5e1; background:#fff; }
      .workspace-brand { display:flex; align-items:center; gap:12px; min-width:188px; color:#18241e; }
      .workspace-brand svg { width:38px; height:28px; flex:none; }
      .workspace-brand strong { font-size:16px; letter-spacing:.04em; white-space:nowrap; }
      .workspace-context { min-width:0; flex:1; color:#6f7973; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
      .workspace-utilities { display:flex; align-items:center; gap:6px; margin-left:auto; }
      .workspace-utility-button { min-height:36px; display:flex; align-items:center; gap:7px; border:1px solid transparent; border-radius:7px; padding:0 10px; background:transparent; color:#5c6861; cursor:pointer; font-family:inherit; font-size:12px; font-weight:600; }
      .workspace-utility-button:hover { border-color:#dce3df; background:#f6f8f7; color:#246447; }
      .workspace-utility-button:focus-visible { outline:3px solid rgba(43,117,80,.16); outline-offset:1px; }
      .workspace-utility-button svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
      .workspace-body { min-height:0; display:grid; grid-template-columns:208px minmax(0,1fr); }
      .workspace-sidebar { position:relative; z-index:35; display:flex; flex-direction:column; gap:4px; min-height:0; padding:20px 14px 14px; border-right:1px solid #dfe5e1; background:#fbfcfb; }
      .workspace-panel-toggle { display:grid; place-items:center; flex:none; width:36px; height:36px; margin:0 -12px 0 -10px; border:0; border-radius:6px; background:transparent; color:#718078; cursor:pointer; }
      .workspace-panel-toggle svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
      #workspace-sidebar-toggle { width:auto; min-width:36px; display:flex; gap:7px; margin-left:-10px; margin-right:-4px; padding:0 9px; white-space:nowrap; }
      #workspace-sidebar-toggle [data-panel-toggle-label] { font-size:12px; font-weight:600; }
      .workspace-panel-toggle:hover { background:#eaf2ed; color:#236246; }
      .workspace-panel-toggle:focus-visible { outline:2px solid #357d61; outline-offset:2px; }
      .workspace-shell[data-sidebar-collapsed="true"] .workspace-body { grid-template-columns:64px minmax(0,1fr); }
      .workspace-shell[data-sidebar-collapsed="true"] .workspace-sidebar { padding-left:8px; padding-right:8px; }
      .workspace-shell[data-sidebar-collapsed="true"] :is(.workspace-nav-label,.workspace-nav-item span,.workspace-nav-note,.workspace-account-copy,.workspace-account-chevron) { display:none; }
      .workspace-shell[data-sidebar-collapsed="true"] .workspace-nav-item { justify-content:center; padding:0; }
      .workspace-shell[data-sidebar-collapsed="true"] .workspace-account-toggle { justify-content:center; min-width:0; padding:6px 0; }
      .workspace-shell[data-sidebar-collapsed="true"] #workspace-sidebar-toggle svg { transform:scaleX(-1); }
      .workspace-nav-label { margin:0 10px 9px; color:#929a95; font-size:12px; letter-spacing:.08em; }
      .workspace-nav-item { width:100%; min-height:43px; display:flex; align-items:center; gap:12px; border:0; border-radius:7px; padding:0 12px; background:transparent; color:#4d5a53; cursor:pointer; font:600 13px inherit; text-align:left; transition:background .15s,color .15s; }
      .workspace-nav-item:hover { background:#eef4f0; color:#236246; }
      .workspace-nav-item.active { background:#e5f0e9; color:#236246; }
      .workspace-nav-item:disabled { cursor:default; opacity:1; }
      .workspace-nav-icon { width:19px; height:19px; flex:none; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
      .workspace-nav-spacer { flex:1; }
      .workspace-nav-note { margin:10px 12px 0; color:#8a938e; font-size:12px; line-height:1.55; }
      .workspace-sidebar-footer { margin-top:12px; padding-top:12px; border-top:1px solid #e4e9e6; }
      .workspace-main { min-width:0; min-height:0; display:grid; grid-template-rows:auto minmax(0,1fr) 34px; overflow:hidden; }
      .workspace-page-header { display:flex; align-items:center; gap:24px; padding:18px 20px 14px; }
      .workspace-page-copy { min-width:0; flex:1; display:flex; align-items:center; gap:12px; }
      .workspace-page-copy h1 { margin:0; color:#1c2922; font-size:21px; font-weight:700; letter-spacing:-.02em; }
      .workspace-page-copy p { margin:5px 0 0; color:#7b8580; font-size:12px; }
      /* SaaS presentation: fewer competing controls, help available on demand. */
      .workspace-help { position:relative; color:#748178; font-size:12px; flex:none; }
      .workspace-help>summary { cursor:pointer; display:inline-flex; align-items:center; gap:7px; min-height:32px; list-style:none; border-radius:6px; padding:0 8px; }
      .workspace-help>summary::-webkit-details-marker,.workspace-action-menu>summary::-webkit-details-marker { display:none; }
      .workspace-help>summary::after,.workspace-action-menu>summary::after { content:""; width:12px; height:12px; flex:none; background:url('/assets/v/23e00bd5f7092090/chevron-down.svg') center/12px no-repeat; }
      .workspace-help[open]>summary::after,.workspace-action-menu[open]>summary::after { transform:rotate(180deg); }
      .workspace-help>summary:hover { background:#edf3ef; color:#236246; }
      .workspace-help-body { padding:10px 12px; color:#59695f; line-height:1.7; overflow-wrap:anywhere; }
      .workspace-help-body p { margin:0; font-size:12px; line-height:1.7; }
      .workspace-help-popover>.workspace-help-body { position:absolute; z-index:80; top:calc(100% + 4px); left:0; width:min(310px,calc(100vw - 60px)); box-sizing:border-box; border:1px solid #dce5df; border-radius:8px; background:#fff; box-shadow:0 8px 24px #173b2614; }
      .workspace-action-menu { position:relative; flex:none; }
      .workspace-action-menu>summary { list-style:none; cursor:pointer; }
      .workspace-action-menu-body { position:absolute; z-index:75; top:calc(100% + 6px); right:0; min-width:160px; display:grid; gap:4px; padding:6px; border:1px solid #dce5df; border-radius:8px; background:#fff; box-shadow:0 8px 24px #173b2614; }
      .workspace-action-menu-body button { width:100%; justify-content:flex-start; text-align:left; border-color:transparent; }
      .workspace-action-menu-body button:hover { background:#eef5f0; }
      .workspace-shell :is(button,summary,a,input,select,textarea):focus-visible { outline:2px solid #367b58; outline-offset:3px; }
      .workspace-canvas :is(.workspace-button,.business-link) { font-family:inherit; font-size:12px; }
      .business-native .business-table td { font-size:13px; }
      .material-card>strong { font-size:14px; line-height:1.5; }
      .workspace-nav-note { display:none; }
      .material-notice:empty { display:none; }
      .material-card .material-card-meta { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:8px; }
      .material-card-meta .material-card-category { width:100%; color:#87938b; font-size:11px; }
      .material-card-meta .material-badge { margin-left:auto; font-size:11px; }
      .material-table[data-view="master"] th:nth-child(1) { width:12%; }
      .material-table[data-view="master"] th:nth-child(2) { width:22%; }
      .material-table[data-view="master"] th:nth-child(3) { width:18%; }
      .material-table[data-view="master"] th:nth-child(4) { width:12%; }
      .material-table[data-view="master"] th:nth-child(5) { width:7%; }
      .material-table[data-view="master"] th:nth-child(6) { width:5%; }
      .material-table[data-view="master"] th:nth-child(7) { width:7%; }
      .material-table[data-view="master"] th:nth-child(8) { width:10%; }
      .material-table[data-view="master"] th:nth-child(9) { width:7%; }
      .workspace-canvas .business-native { min-width:0; }
      .business-toolbar { flex-wrap:wrap; }
      .business-toolbar .business-source-note { white-space:normal; max-width:260px; font-size:11px; }
      .business-toolbar .business-source-note::before { display:none; }
      .business-table-shell .business-empty { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; flex:1; min-height:260px; }
      .business-empty>strong { color:#35493c; font-size:16px; font-weight:600; }
      .business-empty>p { color:#78857c; margin:0; font-size:12px; }
      .business-native>.workspace-help { margin:0 18px 12px; }
      .business-transition-requirement { margin:0 18px 2px; color:#64776a; font-size:12px; line-height:1.6; }
      .workspace-help-body .business-erp-gate { margin:0; padding:0; background:transparent; border:0; }
      .connector-tile>.workspace-help { align-self:stretch; }
      .connector-tile .workspace-help-body { padding-left:8px; }
      .connector-tile .workspace-help-body .connector-tile-source { margin:0; }
      .pw-top>div:first-child { display:flex; align-items:center; gap:12px; }
      .application-onboarding { display:flex; flex-wrap:wrap; gap:12px; padding:0; margin:0 0 12px; list-style-position:inside; color:#486253; font-size:12px; }
      .application-onboarding li { padding:8px 12px; border-radius:6px; background:#f3f7f4; }
      @media(max-width:800px){
        .workspace-page-copy { flex-wrap:wrap; gap:4px; }
        .business-toolbar-spacer { display:none; }
        .business-toolbar .business-search { width:100%; }
        .business-source-note { width:100%; max-width:none; order:5; }
        .business-toolbar>.workspace-button.primary { margin-left:auto; }
        .workspace-help-popover>.workspace-help-body { max-width:calc(100vw - 50px); }
      }
      .workspace-header-actions { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:9px; }
      .workspace-selection-primary-output-actions { display:flex; align-items:center; gap:7px; }
      .workspace-header-actions .selection-mini-button.workspace-button { min-height:36px; padding:0 12px; font-size:12px; }
      .workspace-selection-more-output { position:relative; }
      .workspace-selection-more-output summary { list-style:none; }
      .workspace-selection-more-output summary::-webkit-details-marker { display:none; }
      .workspace-selection-more-output summary::after { content:""; flex:0 0 12px; width:12px; height:12px; margin-left:2px; background:url('/assets/v/23e00bd5f7092090/chevron-down.svg') center/12px 12px no-repeat; transform:rotate(0deg); transition:transform .15s ease; }
      .workspace-selection-more-output[open] summary::after { transform:rotate(180deg); }
      .workspace-selection-more-output[open] summary { border-color:#77a48b; color:#236246; background:#f8fbf9; }
      .workspace-selection-more-output-menu { position:absolute; z-index:60; top:calc(100% + 7px); right:0; width:180px; display:grid; gap:4px; border:1px solid #dce5df; border-radius:9px; padding:6px; background:#fff; box-shadow:0 14px 34px rgba(24,54,39,.18); }
      .workspace-selection-more-output-menu .workspace-button { width:100%; justify-content:flex-start; border-color:transparent; }
      .workspace-page-context { margin-right:4px; color:#77827c; font-size:12px; white-space:nowrap; }
      .workspace-button { min-height:36px; display:inline-flex; align-items:center; justify-content:center; gap:7px; border:1px solid #cbd4cf; border-radius:7px; padding:0 14px; background:#fff; color:#34443b; cursor:pointer; font:600 12px inherit; transition:border-color .15s,background .15s,color .15s,transform .15s; }
      .workspace-button:hover { border-color:#77a48b; color:#236246; background:#f8fbf9; }
      .workspace-button:active { transform:translateY(1px); }
      .workspace-button.primary { border-color:#236246; background:#236246; color:#fff; }
      .workspace-button.primary:hover { border-color:#194f38; background:#194f38; color:#fff; }
      .workspace-button svg { width:15px; height:15px; fill:none; stroke:currentColor; stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round; }
      .workspace-canvas { position:relative; min-width:0; min-height:0; margin:0 20px 12px; overflow:auto; scrollbar-width:thin; scrollbar-color:#aab7af transparent; border:1px solid #dfe5e1; border-radius:11px; background:#fff; box-shadow:0 3px 14px rgba(31,50,39,.045); }
      body:not([data-workspace="overview"]):not([data-workspace="tasks"]) #operations-dashboard,
      body:not([data-workspace="selection"]) #selection-workspace-native,
      body:not([data-workspace="quotation"]) #business-workspace-native,
      body:not([data-workspace="connectors"]) #connector-workspace-native,
      body:not([data-workspace="foundation"]):not([data-workspace="ai-data"]) #foundation-workspace-native,
      body:not([data-workspace="materials"]) #material-workspace-native,
      body:not([data-workspace="products"]) #product-workspace-native,
      body:not([data-workspace="accounts"]) #accounts-workspace-native { display:none!important; }
      .selection-native { min-width:1040px; min-height:720px; height:100%; display:grid; grid-template-rows:minmax(0,1fr); padding:10px; background:#f7f8f7; }
      .selection-card { min-width:0; border:1px solid #dfe5e1; border-radius:9px; background:#fff; box-shadow:0 1px 2px rgba(31,50,39,.025); }
      .selection-card-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; padding:12px 14px 10px; border-bottom:1px solid #edf0ee; }
      .selection-card-heading h2 { margin:0; color:#202d26; font-size:14px; line-height:1.3; }
      .selection-card-heading p { margin:4px 0 0; color:#87908b; font-size:12px; line-height:1.45; }
      .selection-context-actions { display:flex; flex-wrap:wrap; gap:7px; }
      .selection-input,.selection-select,.selection-textarea { width:100%; min-width:0; border:1px solid #d7ded9; border-radius:5px; background:#fff; color:#28362e; font:12px inherit; outline:0; transition:border-color .15s,box-shadow .15s; }
      .selection-input,.selection-select { height:31px; padding:0 8px; }
      .selection-textarea { min-height:76px; resize:vertical; padding:8px; line-height:1.5; }
      .selection-input:focus,.selection-select:focus,.selection-textarea:focus { border-color:#448967; box-shadow:0 0 0 3px rgba(49,132,88,.08); }
      .selection-mini-button { min-height:31px; border:1px solid #d3dbd6; border-radius:5px; padding:0 11px; background:#fff; color:#3a4941; cursor:pointer; font:600 11px inherit; }
      .selection-mini-button:hover { border-color:#72a087; color:#236246; background:#f7faf8; }
      .selection-mini-button.primary { border-color:#2c7650; background:#2c7650; color:#fff; }
      .selection-mini-button.accent { border-color:#ee5a22; background:#ee5a22; color:#fff; }
      .selection-grid { min-height:0; display:grid; grid-template-columns:250px minmax(0,1fr) minmax(0,1fr); grid-template-rows:minmax(0,1fr) 104px; grid-template-areas:"projects parameters lines" "projects output output"; gap:10px; }
      .selection-native[data-projects-collapsed="true"] { min-width:790px; }
      .selection-native[data-projects-collapsed="true"] .selection-grid { grid-template-columns:minmax(0,1fr) minmax(0,1fr); grid-template-areas:"parameters lines" "output output"; }
      .selection-native[data-projects-collapsed="true"] #selection-projects-panel { display:none; }
      .selection-native[data-output-hidden="true"] .selection-grid { grid-template-rows:minmax(0,1fr); grid-template-areas:"projects parameters lines"; }
      .selection-native[data-output-hidden="true"][data-projects-collapsed="true"] .selection-grid { grid-template-areas:"parameters lines"; }
      #selection-projects-toggle[aria-expanded="false"] svg { transform:scaleX(-1); }
      #selection-projects-toggle { margin:0 -14px 0 -6px; }
      body:not([data-workspace="selection"]) #selection-projects-toggle { display:none; }
      .selection-projects { grid-area:projects; min-height:0; display:flex; flex-direction:column; overflow:hidden; }
      .selection-projects-heading { align-items:center; padding:12px; }
      .selection-projects-heading .selection-mini-button { flex:none; }
      .selection-projects-toolbar { display:grid; grid-template-columns:minmax(0,1fr) auto; grid-template-areas:"query refresh" "dates dates"; gap:6px; padding:10px 10px 8px; border-bottom:1px solid #edf0ee; }
      .selection-projects-toolbar > .selection-input:first-child { grid-area:query; }
      .selection-projects-toolbar > .selection-mini-button { grid-area:refresh; }
      .selection-project-dates { grid-area:dates; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; }
      .selection-project-dates .selection-input { min-width:0; padding-inline:5px; font-size:11px; }
      .selection-projects-summary { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:7px 11px; color:#7b8680; font-size:12px; }
      .selection-projects-list { min-height:0; flex:1; overflow:auto; padding:0 7px 8px; scrollbar-width:thin; }
      .selection-project-row { width:100%; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:7px; align-items:center; border:1px solid transparent; border-bottom-color:#edf0ee; border-radius:7px; padding:9px 8px; background:transparent; color:#2e3d35; text-align:left; transition:border-color .15s,background .15s,box-shadow .15s; }
      .selection-project-row:hover { border-color:#d7e3dc; background:#f7faf8; }
      .selection-project-row.active { border-color:#a8cbb7; background:#eaf4ed; box-shadow:inset 3px 0 0 #2d7751; }
      .selection-native.is-switching-project .selection-parameters,
      .selection-native.is-switching-project .selection-lines,
      .selection-native.is-switching-project .selection-output { opacity:.68; pointer-events:none; }
      .selection-native.is-switching-project .selection-project-row:not(.active) { cursor:progress; }
      .workspace-region-updating { transition:opacity .14s ease; }
      .selection-project-main { min-width:0; cursor:pointer; }
      .selection-project-number { display:flex; align-items:center; gap:6px; min-width:0; color:#1f5f41; font-size:12px; font-weight:700; }
      .selection-project-number span:first-child { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
      .selection-project-current { flex:none; border-radius:999px; padding:2px 5px; background:#d7ebde; color:#276a49; font-size:12px; font-weight:700; }
      .selection-project-customer { margin-top:4px; overflow:hidden; color:#58675f; font-size:12px; text-overflow:ellipsis; white-space:nowrap; }
      .selection-project-meta { margin-top:3px; overflow:hidden; color:#929b96; font-size:12px; text-overflow:ellipsis; white-space:nowrap; }
      .selection-project-preview { position:fixed; z-index:10020; display:grid; gap:7px; border:1px solid #cfe0d5; border-radius:9px; padding:11px 12px; background:#fff; box-shadow:0 12px 30px rgba(29,65,45,.18); color:#34473d; pointer-events:none; }
      .selection-project-preview div { display:grid; grid-template-columns:68px minmax(0,1fr); gap:8px; align-items:start; font-size:12px; line-height:1.45; }
      .selection-project-preview strong { color:#78857e; font-weight:600; }
      .selection-project-preview span { overflow-wrap:anywhere; color:#283a31; }
      .selection-project-actions { display:flex; align-items:center; gap:2px; }
      .selection-project-icon { width:28px; height:28px; display:grid; place-items:center; border:0; border-radius:5px; background:transparent; color:#718078; cursor:pointer; }
      .selection-project-icon:hover { background:#fff; color:#236246; box-shadow:0 0 0 1px #dbe5df; }
      .selection-project-icon svg { width:15px; height:15px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
      .selection-project-empty { display:grid; min-height:180px; place-items:center; padding:22px 16px; color:#89938e; font-size:12px; line-height:1.7; text-align:center; }
      .selection-projects-footer { padding:9px 11px; border-top:1px solid #edf0ee; background:#fbfcfb; color:#87918c; font-size:12px; line-height:1.55; }
      .selection-projects-pagination { display:flex; align-items:center; justify-content:space-between; gap:8px; }
      .selection-projects-pagination > span:last-child { display:flex; gap:5px; }
      .selection-projects-pagination .selection-mini-button { min-height:24px; padding:4px 7px; font-size:12px; }
      .selection-parameters,.selection-lines,.selection-output { min-height:0; overflow:hidden; }
      .selection-parameters { grid-area:parameters; display:flex; flex-direction:column; }
      .selection-parameters-body { min-height:0; overflow:auto; padding:12px 13px 14px; }
      .selection-parameters-legend { display:flex; align-items:center; gap:7px; color:#6d7872; font-size:12px; }
      .selection-parameters-legend::before { content:""; width:13px; height:10px; border:1px solid #c5a900; border-radius:2px; background:#fff39a; }
      .selection-editable { border-color:#c7aa13!important; background:#fff39a!important; box-shadow:inset 0 0 0 1px rgba(255,255,255,.5); }
      .selection-editable:focus { border-color:#8d7900!important; box-shadow:0 0 0 3px rgba(199,170,19,.16)!important; }
      .selection-accessories { display:grid; grid-template-columns:repeat(8,minmax(0,1fr)); overflow:hidden; border:1px solid #d8ded9; border-radius:6px; background:#fff; }
      .selection-accessory { min-width:0; display:grid; grid-template-rows:30px 22px 29px; border-right:1px solid #e0e5e1; background:#fff; text-align:center; }
      .selection-accessory:last-child { border-right:0; }
      .selection-accessory img { width:100%; height:30px; display:block; object-fit:contain; border-bottom:1px solid #e5e9e6; padding:2px 5px; }
      .selection-accessory span { display:grid; place-items:center; overflow:hidden; border-bottom:1px solid #e5e9e6; padding:2px; color:#344139; font-size:12px; line-height:1.05; text-overflow:ellipsis; }
      .selection-accessory-value { min-width:0; display:grid; place-items:center; color:#23342a; font-size:12px; font-variant-numeric:tabular-nums; }
      .selection-accessory .selection-input,.selection-accessory .selection-select { width:100%; height:29px; border:0; border-radius:0; padding:0 3px; font-size:12px; text-align:center; }
      .selection-engineering-previews { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; margin:8px 0 10px; border:1px solid #cfd8d2; background:#fff; }
      .selection-engineering-panel { min-width:0; overflow:hidden; border:0; border-radius:0; background:#fff; }
      .selection-engineering-panel + .selection-engineering-panel { border-left:1px solid #cfd8d2; }
      .selection-engineering-panel header { min-height:28px; display:flex; align-items:center; justify-content:space-between; gap:6px; border-bottom:1px solid #d8dfda; padding:3px 7px; }
      .selection-engineering-panel header strong { color:#111; font-size:12px; font-weight:700; }
      .selection-engineering-panel .selection-context-actions { gap:4px; }
      .arrangement-stale-note { display:block; color:#8a5709; background:#fff3ce; padding:3px 7px; font-size:12px; }
      .selection-engineering-panel .selection-mini-button { min-height:22px; padding:0 6px; font-size:12px; }
      .selection-mini-arrangement { height:260px; display:grid; place-items:center; padding:5px 8px 8px; background:#fff; }
      .selection-mini-arrangement svg { width:100%; height:100%; display:block; }
      .selection-mini-arrangement-empty { color:#6f7973; font-size:12px; text-align:center; }
      .selection-chain-sketch { height:260px; display:grid; place-items:center; padding:5px 8px; background:#fff; }
      .selection-chain-sketch img { width:440px; height:250px; max-width:100%; max-height:250px; display:block; object-fit:contain; image-rendering:auto; }
      .selection-subhead { display:flex; align-items:center; justify-content:space-between; gap:10px; margin:11px 0 7px; }
      .selection-subhead strong { color:#334239; font-size:12px; }
      #selection-parameters-panel { container-type:inline-size; }
      .selection-model-sections { display:grid; grid-template-columns:minmax(210px,.8fr) minmax(330px,1.2fr); gap:12px; align-items:start; }
      .selection-model-section { min-width:0; }
      .selection-model-section .selection-subhead { min-height:25px; margin-top:0; }
      .selection-fixture-heading-actions { display:flex; align-items:center; gap:8px; color:#78867e; font-size:12px; }
      .selection-model-table,.selection-dimension-grid { width:100%; border-collapse:collapse; table-layout:fixed; }
      .selection-model-table th { padding:4px 3px; color:#829089; font-size:12px; font-weight:500; text-align:left; }
      .selection-model-table td { height:27px; padding:3px; border-top:1px solid #edf0ee; color:#3b4941; font-size:12px; }
      .selection-model-table td:first-child { width:22px; color:#8a948f; }
      .selection-model-table .selection-input { height:25px; padding:0 5px; font-size:12px; }
      .selection-model-table tr.active { background:#fffdf0; }
      .selection-model-check { color:#8c7600!important; font-weight:700; text-align:center; }
      .selection-model-picker { width:72px; height:25px; border-radius:3px; font-size:12px; }
      .selection-installation-preview { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(105px,.75fr); gap:9px; align-items:stretch; margin-top:9px; border:1px solid #dfe5e1; border-radius:6px; padding:7px; background:#fff; }
      .selection-installation-image { position:relative; min-width:0; min-height:220px; }
      .selection-installation-preview img { position:absolute; inset:0; width:100%; height:100%; align-self:center; object-fit:contain; object-position:center; }
      .batch-shipment-picker .native-business-actions label { display:flex; align-items:center; gap:8px; white-space:nowrap; }
      .batch-shipment-picker .native-business-actions input[type="number"] { width:96px; max-width:100%; }
      .sq-drawing-link { border:0; padding:2px 0; background:transparent; color:#176747; text-decoration:underline; text-underline-offset:3px; cursor:pointer; font:inherit; }
      .sq-drawing-link:hover { color:#0e4932; }
      .selection-readonly-drawing { position:fixed; inset:0; z-index:150; padding:20px; background:rgba(18,39,29,.20); pointer-events:auto; }
      .selection-readonly-drawing .workspace-dialog-frame { max-width:calc(100vw - 40px); max-height:calc(100dvh - 40px); border:1px solid #dce6e1; border-radius:12px; }
      .selection-readonly-drawing .workspace-dialog-content { overflow:auto; }
      .selection-dimension-key { display:grid; grid-template-columns:auto 1fr; gap:4px 7px; color:#4a5850; font-size:12px; line-height:1.35; }
      .selection-dimension-key dt,.selection-dimension-key dd { margin:0; }
      .selection-dimension-key dt { font-weight:700; }
      @container (max-width:720px) {
        .selection-model-sections { grid-template-columns:minmax(0,1fr); gap:4px; }
        .selection-fixture-section { border-top:1px solid #dbe5df; padding-top:8px; }
      }
      .selection-dimensions { margin-top:11px; border-top:1px solid #e6ebe7; padding-top:10px; }
      .selection-dimension-grid { text-align:center; }
      .selection-dimension-grid th { padding:3px; color:#65736b; font-size:12px; font-weight:600; }
      .selection-dimension-grid td { height:30px; padding:2px; color:#2e3b34; font-size:12px; font-variant-numeric:tabular-nums; }
      .selection-dimension-grid th:last-child,.selection-dimension-grid td:last-child { width:108px; min-width:108px; }
      .selection-dimension-grid .selection-input,.selection-dimension-grid .selection-select { min-width:0!important; height:26px; padding:0 1px; font-size:12px; text-align:center; }
      .selection-dimension-grid input[type="number"] { appearance:textfield; -moz-appearance:textfield; }
      .selection-dimension-grid input[type="number"]::-webkit-inner-spin-button,.selection-dimension-grid input[type="number"]::-webkit-outer-spin-button { margin:0; -webkit-appearance:none; }
      .selection-dimension-grid .selection-select { font-size:12px; }
      .selection-lines { grid-area:lines; display:flex; flex-direction:column; }
      .selection-lines-toolbar { display:flex; align-items:center; gap:7px; }
      .selection-lines-count { color:#7b8680; font-size:12px; }
      .selection-table-wrap { min-height:0; flex:1; overflow-x:hidden; overflow-y:auto; scrollbar-width:thin; }
      .selection-lines-table { width:100%; min-width:0; border-collapse:separate; border-spacing:0; table-layout:fixed; }
      .selection-lines-table th { position:sticky; top:0; z-index:2; height:30px; overflow:hidden; border-bottom:1px solid #dce3de; background:#f8faf8; color:#68756d; font-size:12px; font-weight:600; text-align:left; text-overflow:ellipsis; white-space:nowrap; }
      .selection-lines-table th,.selection-lines-table td { box-sizing:border-box; padding:3px 2px; }
      .selection-lines-table th:not(.row-number):not(.col-print) { padding-left:6px; }
      .selection-lines-table tbody tr:hover { background:#f1f7f3; }
      .selection-lines-table tbody tr.active { background:#e7f3eb; }
      .selection-lines-table td { height:27px; border-bottom:1px solid #edf0ee; color:#334039; font-size:12px; }
      .selection-lines-table .row-number { width:4.5%; color:#86918b; text-align:center; cursor:pointer; }
      .selection-lines-table .col-linked { width:9%; text-align:left; }
      .selection-lines-table .col-print { width:5.5%; text-align:center; }
      .selection-lines-table .col-diameter { width:7.5%; }
      .selection-lines-table .col-spec { width:22%; }
      .selection-lines-table .col-small { width:7%; }
      .selection-lines-table .col-note { width:12%; }
      .selection-lines-table input,.selection-lines-table select { width:100%; height:23px; min-width:0; border:1px solid #dbe1dd; border-radius:3px; padding:0 3px; background:#fff; color:#26362d; font:10px inherit; outline:0; }
      .selection-lines-table input[type="number"] { appearance:textfield; -moz-appearance:textfield; }
      .selection-lines-table input[type="number"]::-webkit-inner-spin-button,.selection-lines-table input[type="number"]::-webkit-outer-spin-button { margin:0; -webkit-appearance:none; }
      .selection-lines-table input:focus,.selection-lines-table select:focus { border-color:#4c916e; box-shadow:0 0 0 2px rgba(49,132,88,.08); }
      .selection-lines-table input[type="checkbox"] { width:14px; height:14px; accent-color:#2f7d55; }
      .selection-notes { display:grid; grid-template-columns:minmax(0,1fr); gap:8px; border-top:1px solid #e1e6e3; padding:9px; background:#fbfcfb; }
      .selection-grid-menu { position:fixed; z-index:10050; width:244px; max-height:calc(100vh - 16px); overflow:auto; padding:6px; border:1px solid #d9e4dd; border-radius:10px; background:#fff; box-shadow:0 12px 36px #183e3029,0 2px 6px #183e3014; font-size:12px; color:#244638; }
      .selection-grid-menu-title { padding:7px 10px 9px; margin-bottom:4px; border-bottom:1px solid #edf1ee; color:#718078; font-size:12px; }
      .selection-grid-menu button { width:100%; display:flex; justify-content:space-between; align-items:center; border:0; border-radius:5px; background:transparent; color:inherit; padding:7px 10px; cursor:pointer; font:inherit; }
      .selection-grid-menu button:hover,.selection-grid-menu button:focus-visible { background:#e8f3ec; outline:0; }
      .selection-grid-menu button:disabled { color:#a8b4ad; cursor:default; background:transparent; }
      .selection-grid-menu kbd { font:10px inherit; color:#84948b; }
      .selection-sheet [role=rowheader] { cursor:pointer; }
      .selection-sheet [role=rowheader]:hover { background:#dbeee2; color:#176540; }
      .selection-notes .selection-textarea { min-height:72px; resize:none; }
      .selection-row-actions { display:flex; flex-direction:column; gap:6px; }
      .selection-output { grid-area:output; display:flex; flex-direction:column; }
      .selection-output[hidden] { display:none; }
      .selection-output .selection-card-heading { flex:none; min-height:30px; padding:6px 10px 5px; }
      .selection-output .selection-card-heading p { display:none; }
      .selection-output-body { min-height:0; display:flex; gap:10px; align-items:center; overflow:hidden; padding:7px 9px 8px; }
      .selection-output-metrics { flex:1 1 auto; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; }
      .selection-metric { min-height:64px; display:grid; grid-template-columns:minmax(0,1fr); gap:4px; align-items:center; border:1px solid #e3e8e4; border-radius:6px; padding:5px 8px; background:#fafbfa; }
      .selection-metric span { display:block; overflow:hidden; color:#7e8983; font-size:12px; text-overflow:ellipsis; white-space:nowrap; }
      .selection-metric strong { display:block; overflow:hidden; color:#26362d; font-size:12px; text-align:right; text-overflow:ellipsis; white-space:nowrap; }
      .selection-metric > .selection-input,.selection-metric > .selection-select { width:58px; height:26px; padding:0 5px; font-size:12px; }
      .selection-output-cover { min-width:132px; min-height:36px; display:flex; align-items:center; justify-content:center; gap:7px; border:1px solid #d8dfda; border-radius:7px; padding:0 10px; background:#fff; color:#59665f; font-size:12px; font-weight:600; white-space:nowrap; cursor:pointer; }
      .selection-output-cover:hover { border-color:#aebbb3; background:#fafcfb; }
      .selection-output-cover:has(input:checked) { border-color:#318458; background:#e8f3ec; color:#246745; }
      .selection-output-cover input { width:15px; height:15px; margin:0; accent-color:#277a50; cursor:pointer; }
      .selection-output-cover input:focus-visible { outline:3px solid rgba(49,132,88,.18); outline-offset:2px; }
      .workspace-selection-primary-output-actions .selection-output-cover { min-width:118px; min-height:36px; }
      .selection-output-actions { flex:1; min-width:0; display:grid; grid-template-columns:repeat(4,minmax(74px,1fr)) minmax(132px,.9fr); gap:6px; margin:0; }
      .selection-output-actions .selection-mini-button { width:100%; min-height:36px; padding:0 8px; white-space:nowrap; }
      @media (max-width:1380px) {
        .selection-native { min-width:1040px; }
        .selection-grid { grid-template-columns:220px minmax(0,1fr) minmax(0,1fr); grid-template-rows:minmax(0,1fr) 104px; }
        .selection-model-sections { grid-template-columns:minmax(0,1fr); gap:4px; }
        .selection-fixture-section { border-top:1px solid #dbe5df; padding-top:8px; }
      }
      body[data-workspace="selection"] #viewport { display:none; }
      body[data-workspace="quotation"] #selection-workspace-native { display:none; }
      body[data-workspace="overview"] .workspace-canvas { border:0; background:transparent; box-shadow:none; }
      .business-native { min-width:980px; min-height:100%; display:flex; flex-direction:column; background:#fff; }
      .contract-preview-content { display:flex; flex:1; min-height:0; flex-direction:column; gap:12px; }
      .contract-preview-pages { overflow:auto; flex:1; min-height:0; background:#edf1ef; padding:16px; }
      .contract-preview-pages img { display:block; width:100%; max-width:1000px; height:auto; margin:0 auto 16px; background:white; box-shadow:0 1px 6px #182f2420; }
      .contract-preview-footer { display:flex; justify-content:flex-end; padding:16px 24px; border-top:1px solid #e6ece8; }
      .material-workspace { display:flex; flex-direction:column; height:100%; min-height:570px; min-width:0; background:#fff; padding:20px 20px 16px; gap:14px; }
      .material-workspace>header,.material-metrics,.material-toolbar,.material-notice,.material-footer { flex-shrink:0; }
      .material-workspace>.material-toolbar input[type="search"] { flex:1 1 180px; width:210px; min-width:160px; max-width:310px; }
      .material-workspace>.material-toolbar select[name="categoryId"] { max-width:200px; text-overflow:ellipsis; }
      .material-table .business-link { min-height:28px; border:0; border-radius:5px; padding:0 8px; background:transparent; color:#1f7049; cursor:pointer; font:inherit; font-size:12px; }.material-table .business-link:hover { background:#e9f3ed; }
      .material-workspace button:disabled { opacity:.45; cursor:default; }
      .material-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border:1px solid #e3ebe5; border-radius:9px; background:#f8fbf9; }.material-metrics>div { padding:16px 22px; display:flex; align-items:center; justify-content:space-between; gap:14px; border-right:1px solid #e3ebe5; }.material-metrics>div:last-child { border:0; }.material-metrics span { color:#738176; font-size:12px; }.material-metrics strong { font-size:22px; font-weight:650; color:#204e38; }
      .material-toolbar { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }.material-toolbar input { width:310px; max-width:100%; }.material-toolbar input,.material-toolbar select,.material-form-grid input,.material-form-grid select,.material-form-grid textarea { box-sizing:border-box; border:1px solid #d8e2dc; border-radius:5px; min-height:34px; padding:7px 10px; font:inherit; font-size:12px; background-color:#fff; color:#253c31; }.material-toolbar select,.material-form-grid select { appearance:none; padding-right:30px; background-image:url('/assets/v/23e00bd5f7092090/chevron-down.svg'); background-repeat:no-repeat; background-size:12px; background-position:right 10px center; }.material-toolbar-space { flex:1; }.material-notice { margin:0; color:#6f7c74; font-size:12px; line-height:1.6; min-height:18px; }
      .material-table-wrap { border:1px solid #e0e8e2; border-radius:7px; overflow:auto; flex:1; min-height:200px; }.material-table { min-width:800px; }.material-table th:nth-child(1) { width:12%; }.material-table th:nth-child(2) { width:20%; }.material-table th:nth-child(3) { width:21%; }.material-table th:nth-child(4) { width:10%; }.material-table th:nth-child(5) { width:6%; }.material-table th:nth-child(6) { width:8%; }.material-table th:nth-child(7) { width:15%; }.material-table th:nth-child(8) { width:8%; }.material-table[data-view="prices"] th:nth-child(7) { width:10%; }.material-table[data-view="prices"] th:nth-child(8) { width:18%; }.material-table[data-view="prices"] th:nth-child(2) { width:15%; }.material-table[data-view="prices"] th:nth-child(4) { width:5%; }.material-table td { height:48px; font-size:12px; }.material-table .material-empty { height:200px; text-align:center; color:#859188; }.material-badge { display:inline-flex; padding:3px 8px; border-radius:4px; background:#f0f2f1; color:#7b827e; font-size:12px; }.material-badge.enabled { background:#e8f3ec; color:#297150; }
      .material-footer { display:flex; align-items:center; justify-content:space-between; color:#78867d; font-size:12px; }.material-footer>div { display:flex; align-items:center; gap:12px; }
      .material-browser { display:flex; flex:1; min-height:280px; min-width:0; gap:16px; overflow:hidden; }
      .material-results { display:flex; flex-direction:column; flex:1; min-width:0; min-height:0; overflow:auto; }
      .material-workspace > .material-browser { gap:24px; }
      @media(max-width:850px) { .material-workspace > .material-browser { gap:16px; } }
      .guangrou-product-types { display:flex; flex-direction:column; flex:1; min-height:0; gap:20px; }
      .selection-native.product-types-open { min-width:0; min-height:0; display:flex; padding:20px; background:#fff; }
      .guangrou-product-types .material-browser { gap:24px; }
      .guangrou-product-types .material-results { gap:16px; }
      .product-directory-toolbar { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; min-height:36px; flex:none; }
      .product-directory-actions { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-left:auto; }
      .product-directory-toolbar strong { font-size:15px; color:#25382e; }
      .product-directory-toolbar [data-view-count] { color:#74827a; font-size:12px; margin-left:12px; }
      .guangrou-product-types .material-view-toggle { padding:3px; border:1px solid #e0e8e2; border-radius:7px; background:#f7f9f8; gap:2px; }
      .guangrou-product-types .material-view-toggle button { min-height:28px; padding:4px 12px; border:0; background:transparent; }
      .guangrou-product-types .material-view-toggle [aria-pressed="true"] { background:#fff; box-shadow:0 1px 4px #18342b12; color:#1c6643; }
      .guangrou-product-types .product-family-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; padding:0 0 12px; }
      .product-family-grid .product-family-card { min-height:360px; padding:18px; gap:18px; }
      .product-family-photo { position:relative; height:185px; width:100%; display:flex; align-items:center; justify-content:center; border:1px solid #edf1ee; border-radius:8px; background:#fff; overflow:hidden; color:#74827a; font-size:12px; }
      .product-family-photo img { width:100%; height:100%; object-fit:contain; }
      .image-source-badge { position:absolute; bottom:7px; left:8px; padding:3px 6px; border-radius:4px; background:#f1f5f2e8; color:#68796f; font-size:10px; line-height:1.3; }
      .product-cover-change { border:0; padding:5px 0; background:none; color:#61796c; cursor:pointer; font:inherit; font-size:12px; }
      .product-cover-change:hover { color:#1c6643; }
      .product-cover-dialog { width:min(480px,calc(100vw - 32px)); }
      .product-cover-dialog form { display:grid; gap:18px; padding:20px; }
      .product-cover-preview { height:240px; background:#fff; border:1px solid #e4ebe6; border-radius:8px; overflow:hidden; }
      .product-cover-preview img { width:100%; height:100%; object-fit:contain; }
      .product-cover-upload { display:grid; gap:9px; color:#324b3c; font-size:13px; }
      .product-cover-upload input { font:inherit; max-width:100%; }
      .product-cover-upload span { color:#75847b; font-size:11px; }
      .product-cover-dialog form footer { padding:0; border:0; display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
      .product-cover-dialog footer p { flex:1; margin:0; font-size:12px; color:#68796f; }
      .product-family-series { display:flex; align-items:center; gap:8px; flex-wrap:wrap; min-height:30px; }
      .product-series-link { font:inherit; font-size:13px; color:#315b47; border:1px solid #dbe6df; border-radius:6px; background:#fff; padding:6px 12px; cursor:pointer; }
      .product-series-link:hover { border-color:#99bca9; background:#f2f8f4; }
      .product-type-detail { min-width:0; }
      .product-type-breadcrumb { display:flex; align-items:center; gap:8px; font-size:12px; color:#738178; margin:0 0 20px; }
      .product-type-breadcrumb .business-link { border:0; background:none; color:#315b47; cursor:pointer; font:inherit; padding:0; }
      .product-type-summary { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-bottom:22px; }
      .product-type-summary>div { display:flex; align-items:center; gap:12px; }
      .product-type-summary h2 { font-size:24px; margin:0; color:#25382e; }
      .product-type-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border:1px solid #e3ebe5; border-radius:9px; background:#f8fbf9; margin-bottom:20px; }
      .product-type-metrics>div { padding:16px 20px; display:flex; align-items:baseline; gap:10px; }
      .product-type-metrics>div+div { border-left:1px solid #e3ebe5; }
      .product-type-metrics strong { font-size:22px; color:#204e38; font-variant-numeric:tabular-nums; }
      .product-type-metrics span,.product-type-note { color:#74827a; font-size:12px; }
      .product-type-series-nav { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:20px; }
      .product-type-model-toolbar { display:flex; justify-content:space-between; align-items:center; gap:16px; margin:0 0 12px; font-size:13px; }
      .product-type-model-toolbar input { width:220px; max-width:60%; min-height:34px; border:1px solid #d8e2dc; border-radius:5px; padding:7px 10px; color:#253c31; font:inherit; }
      .product-type-model-table { max-height:48vh; min-height:0; }
      .product-type-model-table .business-table { table-layout:fixed; min-width:420px; }
      .product-type-model-table th { position:sticky; top:0; z-index:1; background:#f6f9f7; }
      .product-type-model-table td:first-child,.product-type-model-table th:first-child { width:50%; }
      .product-type-model-table td:not(:first-child),.product-type-model-table th:not(:first-child) { text-align:right; font-variant-numeric:tabular-nums; }
      .product-type-metadata { margin-top:18px; border-top:1px solid #e6ece8; }
      .product-type-metadata details { border-bottom:1px solid #e6ece8; font-size:12px; }
      .product-type-metadata summary { cursor:pointer; color:#64776e; padding:13px 0; }
      .product-type-metadata p { line-height:1.7; color:#64776e; overflow-wrap:anywhere; }
      .product-type-fields { display:flex; flex-wrap:wrap; gap:8px; padding-bottom:16px; }
      .product-type-fields span { padding:5px 9px; border-radius:5px; background:#f0f5f2; color:#315b47; }
      .guangrou-product-types button:focus-visible,.guangrou-product-types input:focus-visible { outline:2px solid #25734e; outline-offset:3px; }
      @media(max-width:1100px) { .guangrou-product-types .product-family-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.product-family-grid .product-family-card { padding:18px; } }
      @media(max-width:850px) { .guangrou-product-types .material-browser { overflow:visible; }.guangrou-product-types .product-family-grid { grid-template-columns:1fr; }.product-type-metrics>div { padding:12px; flex-direction:column; gap:4px; }.product-type-summary h2 { font-size:20px; }.product-directory-toolbar [data-view-count] { display:block; margin:4px 0 0; } }
      .product-type-selection-bar { margin-bottom:12px; }
      .material-workspace.archive-detail-open>[hidden] { display:none; }
      .archive-detail-host { min-width:0; }
      .archive-detail-navigation { display:flex; align-items:center; gap:12px; padding:0 0 12px; flex-wrap:wrap; }
      .archive-detail-navigation span { color:#728177; font-size:12px; }
      .archive-detail-navigation [aria-current="page"] { color:#1c6643; background:#e7f2ec; border-color:#a8c9b7; opacity:1; }
      .archive-detail-host>.material-dialog.archive-inline-detail { position:static; display:block; width:100%; max-width:none; max-height:none; margin:0; box-sizing:border-box; box-shadow:none; border-radius:8px; overflow:visible; }
      .archive-inline-detail .material-form-grid { gap:16px; }
      .archive-inline-detail footer { flex-wrap:wrap; }
      .archive-inline-detail footer p { flex-basis:100%; }
      .material-dialog .archive-record-overview { display:grid; grid-template-columns:160px minmax(0,1fr); gap:28px; padding:24px; max-width:1100px; }
      .archive-record-photo.material-image { width:160px; height:130px; border:1px solid #e3ebe5; }
      .archive-record-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px 32px; margin:0; }
      .archive-record-fields dt { color:#738178; font-size:12px; margin-bottom:7px; }
      .archive-record-fields dd { margin:0; color:#25382e; font-size:14px; line-height:1.7; white-space:pre-wrap; overflow-wrap:anywhere; }
      .archive-record-wide { grid-column:1/-1; }
      .archive-inline-detail[data-archive-mode="view"] footer { justify-content:flex-end; }
      .archive-inline-detail[data-archive-mode="view"] [data-edit] { border-color:#236246; background:#236246; color:#fff; }
      .archive-inline-detail[data-archive-mode="view"] footer p:empty { display:none; }
      @media(max-width:850px) { .material-dialog .archive-record-overview { grid-template-columns:1fr; padding:18px; gap:20px; }.archive-record-fields { gap:18px; } }
      .archive-inline-detail [data-compositions],.archive-inline-detail [data-usage],.archive-inline-detail [data-materials] { display:none; }
      .archive-context-help { margin:0 0 16px; color:#758279; font-size:12px; line-height:1.7; }
      .archive-context-help summary { cursor:pointer; }
      .archive-context-help p { margin:10px 0 0; }
      .composition-readonly-remark { color:#758279; font-size:12px; white-space:pre-wrap; }
      [data-composition-mode="view"] .material-composition-table th:last-child,[data-composition-mode="view"] .material-composition-table td:last-child { display:none; }
      [data-composition-mode="view"] .material-composition-table th:first-child { width:36%; }
      [data-composition-mode="view"] .material-composition-table td { white-space:normal; overflow-wrap:anywhere; padding:14px 12px; }
      [data-composition-mode="view"] .material-composition-table td:nth-child(3) { font-variant-numeric:tabular-nums; font-weight:600; color:#29503b; }
      .product-materials-dialog .archive-source-tabs { border-bottom:1px solid #e4ebe6; gap:24px; padding-bottom:0; }
      .product-materials-dialog .archive-source-tabs button { border:0; border-radius:0; background:transparent; color:#728177; padding:0 0 12px; }
      .product-materials-dialog .archive-source-tabs [aria-pressed="true"] { color:#245c41; border-bottom:2px solid #245c41; font-weight:600; }
      .product-materials-dialog .archive-view-segment { display:inline-flex; gap:3px; background:#f1f5f2; border:1px solid #e2e9e4; border-radius:7px; padding:3px; }
      .product-materials-dialog .archive-view-segment button { border:0; background:transparent; color:#738178; min-height:30px; padding:5px 12px; }
      .product-materials-dialog .archive-view-segment [aria-pressed="true"] { color:#245c41; background:#fff; box-shadow:0 1px 3px #1f4a3212; }
      .product-materials-dialog footer>p:not([role]) { color:#758279; font-size:12px; }
      .material-view-toggle { display:flex; gap:4px; }.material-view-toggle [aria-pressed="true"] { color:#1c6643; background:#e7f2ec; border-color:#a8c9b7; }
      .material-cards { display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:16px; padding:2px 2px 16px; align-content:start; }
      .material-card { display:flex; flex-direction:column; gap:8px; border:1px solid #dfe8e2; border-radius:9px; padding:14px; font:inherit; text-align:left; color:#53695c; background:#fff; cursor:pointer; min-width:0; }
      .material-card:hover { border-color:#94bba5; box-shadow:0 4px 14px #244c3510; }.material-card strong { color:#234933; font-size:14px; }.material-card span { font-size:12px; overflow-wrap:anywhere; }
      .material-image { position:relative; display:flex; align-items:center; justify-content:center; background:#fff; border-radius:6px; color:#8b988f; font-size:12px; height:150px; overflow:hidden; }
      .material-card .material-image { width:100%; height:128px; }.material-image img { width:100%; height:100%; object-fit:contain; }
      .material-photo-editor { display:flex; gap:16px; align-items:center; flex-wrap:wrap; }.material-photo-editor .material-image { width:120px; height:100px; }.material-photo-editor label { flex:1; }.material-photo-editor span { color:#7c897f; font-size:11px; }
      .material-dialog.material-product-dialog { width:min(820px,calc(100vw - 32px)); }.material-product-dialog [data-photo] { width:120px;height:100px; }.product-finished { padding:12px;border:1px solid #dce7e0;border-radius:7px;background:#f6faf7; }.product-finished p { font-size:12px; }.product-finished input { max-width:100%;box-sizing:border-box; }.product-finished [data-matches] { display:flex;gap:8px;flex-wrap:wrap;margin-top:10px; }
      .material-usage-dialog h3 { margin:0 0 12px;font-size:14px; }.material-usage-dialog section>p { color:#6f7c74;line-height:1.6; }.material-usage-association { border:1px solid #dce7e0;border-radius:8px;padding:14px;background:#f6faf7; }.material-usage-association form { display:flex;gap:10px;flex-wrap:wrap;align-items:end; }.material-usage-association label { display:flex;flex-direction:column;gap:6px; }.material-usage-association [data-products] { display:flex;gap:8px;flex-wrap:wrap;margin-top:12px; }.material-usage-dialog .business-link { white-space:normal;text-align:left;border:0;background:transparent;color:#1f7049;padding:2px;cursor:pointer;font:inherit;min-height:24px; }.material-usage-dialog .business-link:hover { background:#e9f3ed; }.material-usage-dialog .business-table { table-layout:auto; }.material-usage-dialog .business-table td { white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;vertical-align:top; }.material-usage-dialog [data-component-products] td:first-child { width:24%; }.material-usage-dialog [data-component-products] td:nth-child(2) { width:40%; }.material-usage-dialog [data-parents] td:first-child { width:50%; }
      .product-materials-dialog [data-linked],.product-materials-dialog [data-candidates] { display:flex;gap:8px;flex-wrap:wrap; }.product-materials-dialog pre { white-space:pre-wrap;overflow-wrap:anywhere; }.product-materials-dialog details>table.business-table { min-width:260px; }.product-materials-dialog summary { cursor:pointer; }.product-materials-dialog section>h3 { font-size:14px;margin:0 0 12px; }
      .product-materials-dialog section>p { color:#6f7c74;line-height:1.7; }.product-materials-dialog .product-materials-table { overflow:auto; }.product-materials-dialog .business-table { table-layout:auto;min-width:760px; }.product-materials-dialog .business-table td { white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;vertical-align:top; }.product-materials-dialog [data-summary-note] { line-height:1.7;color:#6f7c74; }.product-materials-dialog footer { flex-wrap:wrap; }.product-materials-dialog [data-unmapped] { padding:12px;border:1px solid #dce7e0;border-radius:8px; }
      .material-dialog.material-composition-dialog { width:min(980px,calc(100vw - 32px)); }.material-composition-body { padding:20px 24px; display:flex; flex-direction:column; gap:16px; font-size:12px; }.material-composition-body>p { margin:0; color:#6f7c74; }.material-composition-remark { display:flex; flex-direction:column; gap:8px; }.material-composition-table { overflow:auto; border:1px solid #e0e8e2; border-radius:7px; }.material-composition-table table { min-width:780px; }.material-composition-body input,.material-composition-body select,.material-composition-body textarea { padding:7px; border:1px solid #d8e2dc; border-radius:5px; font:inherit; box-sizing:border-box; min-width:0; }.material-composition-table input { width:100%; }.material-composition-table td:nth-child(3),.material-composition-table td:nth-child(4) { width:90px; }.material-composition-body [data-candidates] { display:flex; gap:8px; flex-wrap:wrap; }.material-composition-body [data-candidates]>p { width:100%; margin:0; color:#6f7c74; }.material-composition-body [hidden] { display:none; }
      .material-browser [hidden],.material-cards[hidden],.material-view-toggle[hidden],.material-table-wrap[hidden] { display:none; }
      @media(max-width:850px) { .material-workspace { height:auto; min-height:100%; }.material-browser { flex:none; flex-direction:column; min-height:0; overflow:visible; }.material-results { flex:none; min-height:280px; overflow:visible; }.material-cards { grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); } }
      .material-dialog { border:1px solid #dfe8e2; border-radius:12px; padding:0; width:min(640px,calc(100vw - 32px)); max-height:calc(100dvh - 40px); overflow:auto; color:#25382e; box-shadow:0 22px 80px #18342b38; }.material-dialog::backdrop { background:rgba(18,39,29,.20); backdrop-filter:blur(1px); }.material-dialog header { display:flex; align-items:center; justify-content:space-between; padding:20px 24px; border-bottom:1px solid #e6ece8; }.material-dialog h2 { margin:0; font-size:18px; }.material-dialog header p { margin:6px 0 0; font-size:12px; color:#7f8d83; }.material-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; padding:24px; }.material-form-grid label { display:flex; flex-direction:column; gap:7px; font-size:12px; min-width:0; }.material-form-wide { grid-column:1/-1; }.material-form-grid textarea { resize:vertical; }.material-dialog footer { display:flex; align-items:center; gap:10px; padding:16px 24px; border-top:1px solid #e6ece8; }.material-dialog footer p { flex:1; margin:0; font-size:12px; color:#b65a30; }.material-dialog :disabled { opacity:.65; }
      .material-keyword-field { display:flex; flex-direction:column; gap:7px; min-width:0; font-size:12px; }
      .material-field-label { color:#253c31; }
      .material-field-hint { color:#7c8a81; font-size:11px; }
      .material-keyword-editor { display:flex; align-items:center; flex-wrap:wrap; gap:7px; min-height:38px; padding:5px 8px; border:1px solid #d8e2dc; border-radius:7px; background:#fff; }
      .material-keyword-editor:focus-within { border-color:#2b7652; box-shadow:0 0 0 2px rgba(43,118,82,.10); }
      .material-keyword-tags { display:contents; }
      .material-keyword-tag { display:inline-flex; align-items:center; gap:5px; max-width:100%; padding:4px 6px 4px 9px; border-radius:999px; background:#eaf4ee; color:#1f6043; line-height:1.2; }
      .material-keyword-tag button { display:inline-grid; place-items:center; width:18px; height:18px; padding:0; border:0; border-radius:50%; background:transparent; color:#4f7562; cursor:pointer; font:inherit; }
      .material-keyword-tag button:hover,.material-keyword-tag button:focus-visible { background:#d5e9dc; color:#174c35; outline:none; }
      .material-keyword-editor>[data-keyword-input] { flex:1 1 160px; min-width:130px; min-height:26px; padding:3px 2px; border:0; border-radius:0; background:transparent; box-shadow:none; }
      .material-keyword-editor>[data-keyword-input]:focus { outline:none; }
      .material-product-scope-field { position:relative; display:flex; flex-direction:column; gap:7px; min-width:0; font-size:12px; }
      .material-product-scope-picker { position:relative; }
      .material-product-scope-picker>summary { box-sizing:border-box; min-height:34px; padding:8px 34px 7px 10px; overflow:hidden; border:1px solid #d8e2dc; border-radius:5px; background:#fff url('/assets/v/23e00bd5f7092090/chevron-down.svg') no-repeat right 10px center / 12px; color:#253c31; cursor:pointer; list-style:none; text-overflow:ellipsis; white-space:nowrap; }
      .material-product-scope-picker>summary::-webkit-details-marker { display:none; }
      .material-product-scope-picker[open]>summary { border-color:#2b7652; box-shadow:0 0 0 2px rgba(43,118,82,.10); }
      .material-product-scope-popover { position:absolute; z-index:12; right:0; bottom:calc(100% + 6px); box-sizing:border-box; width:min(420px,calc(100vw - 48px)); padding:10px; border:1px solid #d9e4de; border-radius:8px; background:#fff; box-shadow:0 14px 38px rgba(24,52,43,.18); }
      .material-form-grid .material-product-scope-universal,.material-form-grid .material-product-scope-row { display:flex; flex-direction:row; align-items:center; gap:9px; }
      .material-product-scope-universal { min-height:34px; padding:0 8px 8px; border-bottom:1px solid #e8eeeb; color:#1e6345; font-weight:600; }
      .material-product-scope-universal input,.material-product-scope-row input { width:16px; height:16px; min-height:0; margin:0; padding:0; accent-color:#267151; }
      .material-product-scope-actions { display:flex; justify-content:flex-end; gap:6px; padding:8px 4px; }
      .material-product-scope-actions button { min-height:28px; padding:4px 9px; border:0; border-radius:5px; background:transparent; color:#2a6f50; cursor:pointer; font:inherit; }
      .material-product-scope-actions button:hover,.material-product-scope-actions button:focus-visible { background:#edf5f0; outline:none; }
      .material-product-scope-tree { max-height:250px; overflow:auto; padding:2px 0; }
      .material-product-scope-row { min-height:32px; padding:0 8px 0 calc(8px + var(--scope-depth) * 20px); border-radius:5px; color:#33483d; cursor:pointer; }
      .material-product-scope-row:hover { background:#f2f7f4; }
      .material-product-scope-row:has(input:disabled) { cursor:default; color:#8a958f; }
      .material-product-scope-empty { margin:0; padding:18px 8px; color:#7b8981; text-align:center; }
      .material-options-dialog{width:min(860px,calc(100vw - 32px));font:inherit;background:white}
      .material-option-create{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:14px;margin:24px}
      .material-option-create label{display:flex;flex-direction:column;gap:8px;font-size:12px;min-width:0}
      .material-options-dialog input,.material-options-dialog select{min-width:0;width:100%;min-height:36px;padding:8px 10px;border:1px solid #dce6e1;border-radius:6px;background:#fff;color:inherit;font:inherit}
      .material-options-notice{margin:0 24px 16px;color:#6c7c75;font-size:12px;line-height:1.65}
      .material-options-list{margin:0 24px 24px;border:1px solid #e3ebe7;border-radius:8px;overflow:hidden}
      .material-option-row{display:grid;grid-template-columns:48px minmax(0,1fr) 52px auto auto 36px;gap:10px;align-items:center;padding:14px;border-bottom:1px solid #e8eeeb}
      .material-brand-row{grid-template-columns:60px minmax(120px,1fr) 52px repeat(4,auto) 36px;gap:8px}
      .material-brand-logo{width:56px;height:48px;display:grid;place-items:center;overflow:hidden;border:1px solid #e3ebe7;border-radius:7px;background:#f6f9f7;color:#7b8981;font-size:10px;text-align:center}
      .material-brand-logo img{max-width:100%;max-height:100%;object-fit:contain}
      .material-brand-row input[type=file]{display:none}
      .material-brand-picker{position:relative;min-width:0}
      .material-brand-picker summary{cursor:pointer;color:#2a6f50;font-size:12px}
      .material-brand-choices{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:7px;max-height:230px;overflow:auto;margin-top:8px;padding:8px;border:1px solid #dce6e1;border-radius:7px;background:#fff}
      .material-brand-choice{display:flex;align-items:center;gap:7px;min-width:0;padding:5px;border:1px solid #e3ebe7;border-radius:6px;background:#fff;color:#33483d;text-align:left;cursor:pointer;font:inherit}
      .material-brand-choice:hover,.material-brand-choice:focus-visible,.material-brand-choice[aria-pressed=true]{border-color:#3a8964;background:#f1f8f3}
      .material-brand-choice .material-brand-logo{flex:none;width:40px;height:36px;font-size:8px}
      .material-brand-choice span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
      .material-option-row:last-child{border-bottom:0}.material-option-kind,.material-option-status{font-size:12px;color:#64786e}.material-options-empty{padding:16px;color:#64786e}
      .material-option-row button{white-space:nowrap}
      .material-option-delete { display:grid;place-items:center;min-width:36px;min-height:36px;padding:8px;color:#708078; }
      .material-option-delete svg { width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round; }
      .material-option-delete:hover,.material-option-delete:focus-visible { color:#ab3f34;background:#fcf0ee;border-color:#e7bfb9; }
      @media(max-width:700px) { .material-workspace { padding:12px; }.material-metrics>div { padding:12px; flex-direction:column; align-items:flex-start; gap:8px; }.material-metrics strong { font-size:18px; }.material-toolbar input { width:100%; }.material-toolbar-space { display:none; }.material-form-grid { grid-template-columns:1fr; padding:18px; gap:12px; }.material-product-scope-popover { position:static; width:100%; margin-top:6px; box-shadow:none; }.material-dialog footer { flex-wrap:wrap; }.material-dialog footer p { flex-basis:100%; }.material-option-create{grid-template-columns:1fr;margin:16px}.material-option-create button{grid-column:auto}.material-options-notice{margin:0 16px 12px}.material-options-list{margin:0 16px 16px}.material-option-row{grid-template-columns:48px minmax(0,1fr) auto}.material-option-row button{grid-row:2}.material-option-row button:nth-last-child(2){grid-column:2}.material-option-row button:last-child{grid-column:3}.material-brand-row{display:flex;flex-wrap:wrap}.material-brand-row>input:not([type=file]){flex:1 1 160px}.material-brand-row button{grid-row:auto} }
      .business-summary { flex:none; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin:0 18px; border:1px solid #e0e6e2; border-radius:8px; background:#fff; }
      .business-summary-item { min-width:0; padding:15px 20px 14px; }
      .business-summary-item + .business-summary-item { border-left:1px solid #e7ebe8; }
      .business-summary-item span { display:block; color:#727d77; font-size:12px; }
      .business-summary-item strong { display:block; margin-top:6px; color:#1f6545; font-size:22px; line-height:1; font-variant-numeric:tabular-nums; }
      .business-summary-item.warning strong { color:#d96d13; }
      .business-tabs { flex:none; display:flex; align-items:flex-end; gap:26px; margin:0 18px; border-bottom:1px solid #e4e9e6; padding:9px 5px 0; }
      .business-tab { position:relative; min-height:39px; border:0; padding:0 5px; background:transparent; color:#59655e; cursor:pointer; font:600 12px inherit; }
      .business-tab:hover { color:#236246; }
      .business-tab.active { color:#236246; }
      .business-tab.active::after { content:""; position:absolute; right:0; bottom:-1px; left:0; height:2px; background:#25704a; }
      .business-toolbar { flex:none; display:flex; align-items:center; gap:10px; padding:12px 18px; }
      .business-search { position:relative; width:min(430px,42vw); }
      .business-search input { width:100%; height:34px; border:1px solid #d8dfdb; border-radius:6px; padding:0 34px 0 11px; color:#2d3a33; font:11px inherit; outline:0; }
      .business-search input:focus { border-color:#4e916f; box-shadow:0 0 0 3px rgba(49,132,88,.08); }
      .business-search svg { position:absolute; top:9px; right:10px; width:16px; height:16px; fill:none; stroke:#7b8780; stroke-width:1.8; }
      .business-toolbar-spacer { flex:1; }
      .business-source-note { display:flex; align-items:center; gap:7px; color:#7d8781; font-size:12px; white-space:nowrap; }
      .business-source-note::before { content:""; width:7px; height:7px; border-radius:50%; background:#2c7a51; box-shadow:0 0 0 3px #e6f1ea; }
      .business-table-shell { min-height:0; flex:1; display:flex; flex-direction:column; margin:0 18px 16px; overflow:hidden; border:1px solid #dfe5e1; border-radius:8px; background:#fff; }
      .business-table-scroll { min-height:0; flex:1; overflow:auto; scrollbar-width:thin; }
      .business-table { width:100%; border-collapse:collapse; table-layout:fixed; }
      .business-table th { position:sticky; top:0; z-index:2; height:38px; border-bottom:1px solid #dfe5e1; padding:0 12px; background:#f8faf8; color:#57635d; font-size:12px; font-weight:650; text-align:left; white-space:nowrap; }
      .business-table td { height:42px; overflow:hidden; border-bottom:1px solid #edf0ee; padding:7px 12px; color:#344139; font-size:12px; text-overflow:ellipsis; white-space:nowrap; }
      .material-table[data-view="master"] td.archive-name-cell { white-space:normal; overflow:visible; text-overflow:clip; overflow-wrap:anywhere; line-height:1.6; }
      .business-table tbody tr:hover { background:#f6faf7; }
      .business-table tbody tr:last-child td { border-bottom:0; }
      .business-table .primary-cell { color:#1f5f41; font-weight:700; }
      .business-table .secondary-cell { color:#6e7973; }
      .business-table .numeric-cell { font-variant-numeric:tabular-nums; }
      .material-table[data-view="prices"] { min-width:760px; }
      .material-table[data-view="prices"] th:nth-child(1) { width:16%; }
      .material-table[data-view="prices"] th:nth-child(2) { width:20%; }
      .material-table[data-view="prices"] th:nth-child(3) { width:24%; }
      .material-table[data-view="prices"] th:nth-child(4) { width:8%; }
      .material-table[data-view="prices"] th:nth-child(5) { width:8%; }
      .material-table[data-view="prices"] th:nth-child(6) { width:24%; }
      .material-table[data-view="prices"] td { height:52px; line-height:1.6; }
      .connector-actions select { min-width:140px; height:34px; padding:5px 32px 5px 10px; border:1px solid #d3ddd6; border-radius:6px; font:inherit; color:#294435; appearance:none; background:#fff url('/assets/v/23e00bd5f7092090/chevron-down.svg') no-repeat right 12px center / 12px; }
      .business-status { display:inline-flex; align-items:center; min-height:22px; border-radius:4px; padding:0 7px; background:#e8f3ec; color:#246946; font-size:12px; font-weight:700; }
      .business-status.warning { background:#fff0df; color:#c76514; }
      .business-status.neutral { background:#eef1ef; color:#657169; }
      .business-row-action { min-height:28px; border:0; border-radius:5px; padding:0 8px; background:transparent; color:#1f7049; cursor:pointer; font:650 10px inherit; }
      .business-row-action:hover { background:#e9f3ed; }
      .business-empty { display:grid; min-height:260px; place-items:center; padding:30px; color:#7b8780; font-size:12px; text-align:center; }
      .business-table-footer { flex:none; min-height:42px; display:flex; align-items:center; justify-content:space-between; gap:12px; border-top:1px solid #e7ebe8; padding:0 12px; background:#fbfcfb; color:#758079; font-size:12px; }
      .business-pagination { display:flex; align-items:center; gap:5px; }
      .business-page-button { min-width:28px; height:27px; border:1px solid #d8dfdb; border-radius:5px; background:#fff; color:#536159; cursor:pointer; font:10px inherit; }
      .business-page-button.active { border-color:#27724b; background:#27724b; color:#fff; }
      .business-erp-gate { flex:none; margin:0 18px 16px; border-left:3px solid #2f7b54; padding:8px 11px; background:#f4f8f5; color:#65726a; font-size:12px; line-height:1.55; }
      @media (max-width:1080px) { .business-native { min-width:850px; }.business-source-note { display:none; }.business-summary-item { padding-inline:14px; }.business-table th,.business-table td { padding-inline:9px; } }
      .operations-dashboard { min-width:0; width:100%; min-height:100%; display:flex; flex-direction:column; padding:0 2px 18px; background:#f3f5f3; }
      .operations-loading,.operations-empty { display:grid; min-height:280px; place-items:center; border:1px solid #dfe5e1; border-radius:12px; background:#fff; color:#78837d; }
      .operations-pulse { position:relative; overflow:hidden; display:grid; grid-template-columns:minmax(260px,1.25fr) repeat(4,minmax(130px,.62fr)); min-height:146px; border-radius:14px; background:#173c2d; color:#fff; box-shadow:0 14px 30px rgba(23,60,45,.14); }
      .operations-pulse::after { content:""; position:absolute; right:-90px; top:-150px; width:360px; height:360px; border:1px solid rgba(255,255,255,.09); border-radius:50%; box-shadow:0 0 0 48px rgba(255,255,255,.025),0 0 0 96px rgba(255,255,255,.018); pointer-events:none; }
      .operations-pulse-intro { position:relative; z-index:1; padding:25px 28px; }
      .operations-eyebrow { display:flex; align-items:center; gap:8px; color:#9fc5b1; font-size:12px; font-weight:700; letter-spacing:.12em; }
      .operations-eyebrow::before { content:""; width:18px; height:1px; background:#ed6a36; }
      .operations-pulse-intro h2 { margin:12px 0 7px; font-size:22px; letter-spacing:-.02em; }
      .operations-current-time { display:flex; align-items:center; gap:8px; margin:0; color:#bdd1c6; font-size:12px; font-variant-numeric:tabular-nums; line-height:1.65; letter-spacing:.02em; white-space:nowrap; }
      .operations-current-time::before { content:""; width:6px; height:6px; flex:none; border-radius:50%; background:#ed6a36; box-shadow:0 0 0 3px rgba(237,106,54,.13); }
      .operations-metric { position:relative; z-index:1; display:flex; flex-direction:column; justify-content:center; border-left:1px solid rgba(255,255,255,.1); padding:20px 22px; }
      .operations-metric span { color:#aec7ba; font-size:12px; }
      .operations-metric strong { margin-top:8px; font:600 31px/1.05 Georgia,"Times New Roman",serif; letter-spacing:-.04em; }
      .operations-metric small { margin-top:8px; color:#789c89; font-size:12px; }
      .operations-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; margin:18px 0 12px; }
      .operations-section-title h2 { margin:0; color:#1d2b23; font-size:17px; }
      .operations-section-title p { margin:4px 0 0; color:#828d87; font-size:12px; }
      .operations-range { display:flex; gap:4px; border:1px solid #dce3de; border-radius:8px; padding:3px; background:#fff; }
      .operations-range button { min-height:30px; border:0; border-radius:5px; padding:0 12px; background:transparent; color:#6b7770; cursor:pointer; font:600 11px inherit; }
      .operations-range button.active { background:#e5f0e9; color:#216044; }
      .operations-range button:disabled { cursor:wait; opacity:.62; }
      .operations-dashboard.is-filtering .operations-range { border-color:#b9d1c2; box-shadow:0 0 0 2px rgba(49,132,88,.08); }
      .operations-primary-grid { min-height:486px; flex:1; display:flex; }
      .operations-panel { min-width:0; border:1px solid #dfe5e1; border-radius:11px; background:#fff; box-shadow:0 2px 9px rgba(31,50,39,.035); }
      .operations-primary-grid>.operations-panel { min-height:486px; flex:1; display:flex; flex-direction:column; overflow:hidden; }
      .operations-panel-head { min-height:58px; display:flex; align-items:center; justify-content:space-between; gap:14px; border-bottom:1px solid #e7ece8; padding:11px 15px; }
      .operations-panel-head strong { display:block; color:#24332b; font-size:13px; }
      .operations-panel-head small { display:block; margin-top:3px; color:#89938e; font-size:12px; }
      .operations-count { border-radius:999px; padding:4px 8px; background:#eef4f0; color:#327153; font-size:12px; font-weight:700; }
      .operations-panel-body { min-height:0; flex:1; display:flex; flex-direction:column; }
      .operations-project-wrap { min-height:0; flex:1; overflow:auto; }
      .operations-project-table { width:100%; min-width:900px; border-collapse:collapse; table-layout:fixed; }
      .operations-project-table.full-page { height:100%; }
      .operations-project-table th { height:38px; padding:0 13px; background:#f8faf8; color:#6e7b74; font-size:12px; font-weight:650; text-align:left; }
      .operations-project-table td { height:62px; padding:10px 13px; border-top:1px solid #edf0ee; color:#35433b; font-size:12px; vertical-align:middle; }
      .operations-project-table tbody tr { cursor:pointer; transition:background .15s; }
      .operations-project-table tbody tr:hover { background:#f3f8f5; }
      .operations-project-id { display:block; color:#1f5f42; font-weight:700; }
      .operations-project-meta { display:block; margin-top:4px; color:#909993; font-size:12px; }
      .operations-project-customer { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
      .operations-owner { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
      .operations-progress { min-width:0; width:100%; max-width:520px; margin-inline:auto; }
      .operations-project-table th:nth-child(4) { text-align:center; }
      .operations-phase-labels { display:grid; grid-template-columns:2fr 4fr 4fr 2fr; margin-bottom:8px; color:#7f8c85; font-size:12px; text-align:center; }
      .operations-milestones { position:relative; display:grid; grid-template-columns:repeat(12,1fr); align-items:center; }
      .operations-milestones::before { content:""; position:absolute; left:4%; right:4%; height:2px; background:#dfe6e2; }
      .operations-milestone { position:relative; z-index:1; width:8px; height:8px; justify-self:center; border:2px solid #d6dfda; border-radius:50%; background:#fff; }
      .operations-milestone.reached { border-color:#2d7a53; background:#2d7a53; }
      .operations-milestone.current { width:11px; height:11px; border-color:#ed5a22; background:#fff; box-shadow:0 0 0 3px rgba(237,90,34,.12); }
      .operations-stage-pill { display:inline-flex; align-items:center; border-radius:999px; padding:6px 9px; background:#edf5f0; color:#236246; font-size:12px; font-weight:700; white-space:nowrap; }
      .operations-stage-pill::before { content:""; width:5px; height:5px; margin-right:5px; border-radius:50%; background:#2f7d55; }
      .operations-pagination { min-height:50px; display:flex; align-items:center; justify-content:space-between; gap:16px; border-top:1px solid #e7ece8; padding:8px 14px; background:#fbfcfb; }
      .operations-pagination-summary { color:#7d8882; font-size:12px; }
      .operations-pagination-buttons { display:flex; align-items:center; gap:5px; }
      .operations-page-button { min-width:32px; height:32px; border:1px solid #d6e0da; border-radius:7px; padding:0 9px; background:#fff; color:#526159; cursor:pointer; font:600 11px inherit; }
      .operations-page-button:hover:not(:disabled) { border-color:#8fb09d; background:#f0f6f2; color:#216044; }
      .operations-page-button.active { border-color:#286f4b; background:#286f4b; color:#fff; }
      .operations-page-button:disabled { cursor:not-allowed; opacity:.42; }
      .operations-page-ellipsis { min-width:22px; color:#8c9690; text-align:center; }
      .operations-lower-grid { flex:none; display:grid; grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr); gap:12px; margin-top:12px; }
      .operations-lower-grid>.operations-panel { height:250px; display:flex; flex-direction:column; overflow:hidden; }
      .operations-customer-list { min-height:0; flex:1; overflow:auto; padding:5px 15px 12px; }
      .operations-customer { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px; border-bottom:1px solid #edf0ee; padding:10px 0; cursor:pointer; }
      .operations-customer:hover,.operations-customer:focus-visible { background:#f3f8f5; outline:none; }
      .operations-customer:last-child { border:0; }
      .operations-customer strong { display:block; color:#304038; font-size:12px; }
      .operations-customer small { display:block; margin-top:3px; color:#89938e; font-size:12px; }
      .operations-customer-actions { display:flex; gap:8px; margin-top:7px; }
      .operations-customer-actions button,.operations-refresh-button { border:0; padding:0; background:transparent; color:#28714d; cursor:pointer; font:600 9px inherit; }
      .operations-customer-actions button:hover,.operations-refresh-button:hover { color:#114a30; text-decoration:underline; }
      .operations-customer-tag { align-self:center; border-radius:999px; padding:4px 7px; background:#f1f4f2; color:#627269; font-size:12px; }
      .operations-stage-chart { min-height:0; flex:1; overflow:auto; padding:13px 15px 16px; }
      .operations-stage-row { display:grid; grid-template-columns:78px minmax(0,1fr) 26px; gap:9px; align-items:center; margin:10px 0; color:#637169; font-size:12px; }
      .operations-stage-track { height:7px; overflow:hidden; border-radius:999px; background:#edf1ee; }
      .operations-stage-bar { height:100%; border-radius:inherit; background:linear-gradient(90deg,#2a714e,#4e9a72); }
      @media (max-width:1320px) {
        .operations-pulse { grid-template-columns:minmax(230px,1fr) repeat(4,minmax(110px,.55fr)); }
      }
      @media (max-width:980px) {
        .operations-dashboard { min-width:0; display:block; }
        .operations-pulse { grid-template-columns:1fr 1fr; }
        .operations-pulse-intro { grid-column:1/-1; }
        .operations-metric { border-top:1px solid rgba(255,255,255,.1); }
        .operations-lower-grid { grid-template-columns:1fr; }
        .operations-primary-grid { min-height:0; display:block; }
        .operations-primary-grid>.operations-panel,.operations-lower-grid>.operations-panel { height:auto; min-height:340px; }
      }
      .workspace-statusbar { display:flex; align-items:center; gap:9px; padding:0 22px; border-top:1px solid #e1e7e3; background:#fbfcfb; color:#738078; font-size:12px; }
      .workspace-status-dot { width:7px; height:7px; border-radius:50%; background:#318458; box-shadow:0 0 0 3px rgba(49,132,88,.1); }
      .workspace-statusbar .workspace-status-version { margin-left:auto; }
      .workspace-account { position:relative; z-index:36; width:100%; font:13px "Microsoft YaHei UI",sans-serif; }
      .workspace-account-toggle { width:100%; min-width:0; min-height:50px; display:flex; align-items:center; gap:10px; border:1px solid transparent; border-radius:9px; padding:6px 8px; background:transparent; color:#23342b; cursor:pointer; text-align:left; }
      .workspace-account-toggle:hover,.workspace-account.open .workspace-account-toggle { border-color:#dce5df; background:#f0f5f2; }
      .workspace-account-avatar { width:34px; height:34px; flex:none; display:grid; place-items:center; border-radius:50%; background:#e2efe7; color:#286f4b; }
      .workspace-account-avatar svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
      .workspace-account-copy { min-width:0; flex:1; display:flex; flex-direction:column; gap:2px; }
      .workspace-account-copy strong,.workspace-account-copy small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
      .workspace-account-toggle small { display:block; color:#78817c; font-size:12px; font-weight:400; }
      .workspace-account-chevron { width:16px; height:16px; flex:none; fill:none; stroke:#839087; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; transition:transform .15s ease; }
      .workspace-account.open .workspace-account-chevron { transform:rotate(180deg); }
      .workspace-account-menu { position:absolute; left:0; bottom:calc(100% + 8px); min-width:218px; display:none; padding:6px; border:1px solid #dce1dd; border-radius:10px; background:#fff; box-shadow:0 16px 36px rgba(22,35,28,.18); transform-origin:left bottom; }
      .workspace-account.open .workspace-account-menu { display:block; }
      .workspace-account-menu button { width:100%; border:0; border-radius:6px; padding:9px 11px; text-align:left; color:#2f3e36; background:transparent; cursor:pointer; font-family:inherit; font-size:13px; }
      .workspace-account-menu button:hover { background:#f4f1ea; }
      .workspace-account-menu button.active { color:#b65320; background:#fff3e9; font-weight:700; }
      .workspace-account-menu button.danger { color:#a84736; }
      .workspace-menu-separator { height:1px; margin:5px 6px; background:#eceeea; }
      @media (max-width:1200px) {
        .workspace-sidebar-footer { padding-top:10px; }
      }
      @media (max-width:760px) {
        .workspace-topbar { padding:0 12px; }
        .workspace-brand { min-width:auto; }
        .workspace-brand strong,.workspace-context { display:none; }
        .workspace-page-header { align-items:flex-start; padding:12px; }
        .workspace-page-copy p { display:none; }
        .workspace-header-actions { gap:6px; }
        .workspace-page-context { display:none; }
        .workspace-button { min-width:36px; padding:0 10px; }
        .workspace-button span { display:none; }
        .workspace-canvas { margin:0 10px 10px; }
        .workspace-account-toggle { min-width:0; padding:7px 9px; }
        .workspace-utility-button { width:36px; justify-content:center; padding:0; }
        .workspace-utility-button span { display:none; }
      }
      @media (max-width:900px) {
        .login-shell { grid-template-columns:1fr; }
        .login-visual { min-height:390px; padding:34px 28px 24px; border-right:0; border-bottom:1px solid rgba(42,68,53,.12); }
        .login-hero { margin-top:54px; max-width:560px; }
        .login-hero h1 { max-width:520px; font-size:clamp(36px,8vw,50px); white-space:normal; }
        .login-hero p { margin-top:16px; }
        .product-stage { left:43%; right:-9%; bottom:-5%; height:54%; opacity:.78; }
        .engineering-overlay { inset:-23% -22% -20% -22%; width:140%; height:145%; opacity:.7; }
        .login-panel { min-height:auto; padding:82px 28px 68px; }
      }
      @media (max-width:560px) {
        .app-dialog-overlay { align-items:end; padding:12px; }
        .app-dialog { width:100%; border-radius:16px; }
        .app-dialog-header { padding:20px 18px 13px; }
        .app-dialog-body { padding:20px 24px; }
        .app-dialog-actions { padding:8px 24px 20px; }
        .app-dialog-button { flex:1; }
        .login-visual { min-height:314px; padding:25px 22px 20px; }
        .login-brand { gap:10px; font-size:15px; }
        .login-brand-mark { width:40px; height:29px; }
        .login-hero { margin-top:43px; }
        .login-hero h1 { max-width:340px; font-size:36px; line-height:1.18; }
        .login-hero p { max-width:260px; font-size:14px; line-height:1.65; }
        .product-stage { left:47%; right:-18%; bottom:-7%; height:55%; opacity:.64; }
        .login-panel { padding:78px 22px 58px; }
        .locale-control { top:24px; right:20px; }
        .login-card h2 { font-size:27px; }
        .login-card-lead { margin-bottom:34px; }
        .login-secondary { grid-template-columns:1fr; gap:9px; }
        .register-overlay { padding:12px; align-items:end; }
        .register-dialog { max-height:94dvh; border-radius:16px 16px 0 0; }
        .register-header { padding:24px 22px 16px; }
        .register-form { padding:4px 22px 24px; }
        .history-dialog { max-height:94dvh; border-radius:16px 16px 0 0; }
        .history-header { padding:22px 20px 16px; }
        .history-toolbar,.history-list { padding-left:20px; padding-right:20px; }
        .history-row { grid-template-columns:1fr; gap:12px; }
        .history-actions { justify-content:flex-end; }
        html[data-locale="en"] .login-visual { min-height:350px; }
        html[data-locale="en"] .login-brand { max-width:310px; font-size:15px; letter-spacing:0; }
        html[data-locale="en"] .login-hero { margin-top:38px; }
        html[data-locale="en"] .login-hero h1 { max-width:330px; font-size:34px; line-height:1.08; }
        html[data-locale="en"] .login-hero p { max-width:315px; font-size:14px; line-height:1.55; }
        html[data-locale="en"] .login-card h2 { max-width:320px; font-size:24px; line-height:1.2; }
      }
      @media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition:none!important; } }
      .connector-workspace { padding:20px; color:#23372e; font-size:14px; }
      .connector-toolbar,.connector-heading,.connector-actions { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
      .connector-toolbar { justify-content:space-between; margin-bottom:16px; }
      .connector-toolbar p,.connector-help { color:#74827a; font-size:12px; line-height:1.7; margin:0; }
      .connector-card { background:#fff; border:1px solid #dce4df; border-radius:10px; margin-bottom:18px; overflow:hidden; }
      .connector-heading { padding:20px 24px; border-bottom:1px solid #e6ebe8; }
      .connector-heading h2 { margin:0 0 6px; font-size:18px; }.connector-heading>div:first-child { flex:1; }
      .connector-badge { padding:5px 10px; border-radius:6px; background:#e8f3ec; color:#216447; font-size:12px; }
      .connector-badge.warning { background:#fff1df; color:#975513; }
      .connector-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); padding:20px 24px; gap:20px; background:#f8faf9; border-bottom:1px solid #e6ebe8; }
      .connector-metrics dt { color:#74827a; font-size:12px; margin-bottom:8px; }.connector-metrics dd { margin:0; font-size:15px; overflow-wrap:anywhere; }
      .customer-profile-dialog { width:min(860px,100%); max-height:min(920px,90dvh); background:#fff; }
      .customer-profile-dialog .history-header { flex:none; align-items:center; padding:22px 24px; border-color:#e7eeea; }
      .customer-profile-dialog .history-header-copy { min-width:0; }
      .customer-profile-dialog .history-header h2 { font-size:21px; }
      .customer-profile-dialog .history-header p { font-size:12px; }
      .customer-profile-body { min-height:0; overflow:auto; overscroll-behavior:contain; padding:20px 24px; scrollbar-gutter:stable; }
      .customer-profile-section+ .customer-profile-section { margin-top:22px; }
      .customer-profile-section h3 { margin:0 0 12px; color:#244936; font-size:14px; font-weight:600; }
      .customer-profile-fields { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px 24px; margin:0; padding:16px; border:1px solid #e7eeea; border-radius:8px; background:#fafcfb; }
      .customer-profile-field { min-width:0; }.customer-profile-field.wide { grid-column:span 2; }
      .customer-profile-field dt { color:#7a877f; font-size:12px; line-height:1.5; }
      .customer-profile-field dd { margin:5px 0 0; color:#24372e; font-size:14px; line-height:1.5; overflow-wrap:anywhere; white-space:pre-wrap; }
      .customer-profile-field dd.empty { color:#a0aaa4; }
      .customer-profile-source { margin-top:22px; border-top:1px solid #e7eeea; padding-top:16px; }.customer-profile-source summary { cursor:pointer; color:#267351; padding:6px 0; font-size:13px; }.customer-profile-source p { font-size:12px; line-height:1.6; color:#78877d; }.customer-profile-source .customer-profile-fields { margin-top:12px; }
      .customer-profile-actions { flex:none; display:flex; justify-content:flex-end; align-items:center; gap:10px; padding:16px 24px; border-top:1px solid #e7eeea; background:#fff; }
      .customer-profile-actions .customer-profile-delete { margin-right:auto; color:#b6423b; border-color:#ebd3d0; }
      .customer-edit-dialog { width:min(860px,100%); max-height:calc(100dvh - 48px); display:flex; flex-direction:column; overflow:hidden; border:1px solid #e0e8e3; border-radius:14px; background:#fff; box-shadow:0 24px 80px #17372933; color:#24372e; font-family:inherit; }
      .customer-edit-header { flex:none; display:flex; align-items:center; gap:20px; padding:22px 28px; border-bottom:1px solid #e7eeea; }
      .customer-edit-header h2 { margin:0; font-size:21px; line-height:1.4; font-weight:700; }
      .customer-edit-header p { margin:6px 0 0; color:#7a877f; font-size:12px; line-height:1.6; }
      .customer-edit-header .register-close { margin-left:auto; flex:none; }
      .customer-edit-form { min-height:0; display:flex; flex:1; flex-direction:column; }
      .customer-edit-body { min-height:0; overflow:auto; overscroll-behavior:contain; scrollbar-gutter:stable; padding:22px 28px 26px; }
      .customer-edit-section+ .customer-edit-section { margin-top:24px; padding-top:22px; border-top:1px solid #edf1ee; }
      .customer-edit-section h3 { margin:0 0 16px; color:#244936; font-size:14px; font-weight:600; }
      .customer-edit-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 22px; }
      .customer-edit-field { display:flex; flex-direction:column; min-width:0; gap:7px; color:#52645a; font-size:12px; line-height:1.5; }
      .customer-edit-field.wide { grid-column:1 / -1; }
      .customer-edit-field .required { color:#b6513b; margin-left:4px; }
      .customer-edit-field input,.customer-edit-field textarea { width:100%; box-sizing:border-box; min-height:40px; border:1px solid #ccd8d1; border-radius:6px; background:#fff; padding:9px 11px; color:#24372e; font-weight:400; font-family:inherit; font-size:13px; line-height:1.5; outline:none; transition:border-color .15s,box-shadow .15s; }
      .customer-edit-field textarea { resize:vertical; min-height:64px; }
      .customer-edit-field input::placeholder,.customer-edit-field textarea::placeholder { color:#a0aaa4; }
      .customer-edit-field input:focus,.customer-edit-field textarea:focus { border-color:#398c65; box-shadow:0 0 0 3px #26735114; }
      .customer-edit-field input:read-only { color:#74837a; background:#f4f7f5; }
      .customer-edit-field small { color:#829087; font-size:12px; }
      .customer-edit-actions { flex:none; display:flex; align-items:center; gap:10px; padding:16px 28px; border-top:1px solid #e7eeea; background:#fff; }
      .customer-edit-actions .primary { margin-left:auto; }
      .customer-edit-actions button { min-height:38px; font-family:inherit; font-size:13px; font-weight:500; }
      .customer-edit-actions .danger { color:#b6423b; border-color:#ebd3d0; }
      .customer-edit-actions button:disabled { opacity:.55; cursor:wait; }
      .customer-edit-error { margin:0 28px 14px; padding:10px 12px; border-radius:6px; background:#fff4f2; color:#a1392c; font-size:12px; line-height:1.6; }
      .customer-edit-error[hidden] { display:none; }
      @media(max-width:600px){.customer-editor-overlay { padding:12px; }.customer-edit-dialog { max-height:calc(100dvh - 24px); border-radius:12px; }.customer-edit-header { padding:18px; }.customer-edit-header h2 { font-size:20px; }.customer-edit-body { padding:18px; }.customer-edit-fields { grid-template-columns:minmax(0,1fr); gap:15px; }.customer-edit-actions { padding:14px 18px; }.customer-edit-error { margin:0 18px 14px; }}
      @media(max-width:700px){.customer-profile-dialog { max-height:92dvh; border-radius:12px; }.customer-profile-dialog .history-header { padding:18px; }.customer-profile-body { padding:16px; }.customer-profile-fields { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }.customer-profile-actions { padding:12px 18px; }}
      @media(max-width:420px){.customer-profile-fields { grid-template-columns:minmax(0,1fr); }.customer-profile-field.wide { grid-column:auto; }}
      .connector-settings { display:grid; grid-template-columns:minmax(260px,1fr) minmax(320px,1.2fr); gap:32px; padding:24px; }
      .connector-settings h3 { margin:0 0 16px; font-size:14px; }.connector-field { display:flex; flex-direction:column; gap:8px; margin-bottom:16px; font-size:13px; }
      .connector-field input { box-sizing:border-box; width:100%; height:36px; padding:8px 10px; border:1px solid #d3ddd6; border-radius:6px; background:#fff; color:#23372e; font:inherit; }
      .connector-field input:focus { outline:2px solid #92b7a3; outline-offset:1px; }.connector-field input:disabled { background:#f2f5f3; }
      .connector-credentials { display:grid; grid-template-columns:1fr 1fr; gap:0 16px; }.connector-settings details summary { cursor:pointer; font-weight:600; margin-bottom:14px; }
      .connector-check { display:flex; align-items:center; gap:8px; font-size:13px; margin-bottom:14px; }.connector-check input { width:16px; height:16px; accent-color:#267151; }
      .connector-actions { padding:16px 24px; border-top:1px solid #e6ebe8; }.connector-actions .connector-help { flex:1; }
      .connector-workspace .workspace-button { min-height:34px; font-size:13px; }.connector-workspace button:disabled { opacity:.55; cursor:not-allowed; }
      .connector-message { min-height:20px; color:#267151; font-size:13px; margin-bottom:12px; }.connector-message.error { color:#ad461d; }
      .connector-log-scroll { overflow-x:auto; }.connector-log { border-collapse:collapse; width:100%; font-size:12px; }
      .connector-log th,.connector-log td { text-align:left; padding:13px 20px; border-bottom:1px solid #edf0ee; white-space:nowrap; }.connector-log th { color:#738178; background:#f8faf9; font-weight:500; }
      .connector-bindings select,.connector-field select { min-height:34px; padding:6px 10px; border:1px solid #d3ddd6; border-radius:6px; background:#fff; color:#23372e; font:inherit; }
      .connector-bindings input[type=number] { width:90px; padding:8px; border:1px solid #d3ddd6; border-radius:6px; }
      .connector-bindings input[type=checkbox] { width:16px; height:16px; accent-color:#267151; }.connector-bindings button+button { margin-left:8px; }
      .connector-empty { padding:40px 24px; text-align:center; color:#74827a; }
      @media(max-width:1100px){.connector-settings { grid-template-columns:1fr; gap:12px; }.connector-metrics { grid-template-columns:1fr 1fr; }}
      @media(max-width:600px){.connector-workspace { padding:10px; }.connector-heading,.connector-settings,.connector-actions,.connector-metrics { padding:16px; }.connector-credentials { grid-template-columns:1fr; }}
      /* Keep native select semantics while giving the chevron a consistent inset. */
      body select:not([multiple]):not([size]) { appearance:none; -webkit-appearance:none; padding-right:30px!important; background-image:url("/assets/v/23e00bd5f7092090/chevron-down.svg"); background-repeat:no-repeat; background-position:right 10px center; background-size:12px 12px; }
      body .selection-lines-table select:not([multiple]):not([size]) { padding-right:20px!important; background-position:right 5px center; background-size:10px 10px; }
      .connector-bindings select { min-width:160px; max-width:240px; text-overflow:ellipsis; }
      .connector-maintenance { min-width:260px; }
      .connector-maintenance-trigger { display:block; width:220px; height:34px; padding:6px 34px 6px 12px; border:1px solid #d3ddd6; border-radius:6px; background:#fff url('/assets/v/23e00bd5f7092090/chevron-down.svg') no-repeat right 12px center / 12px; color:#23372e; font:inherit; line-height:20px; white-space:nowrap; text-align:left; cursor:pointer; transition:border-color .15s,box-shadow .15s,background-color .15s; }
      .connector-maintenance-trigger:hover:not(:disabled) { border-color:#9bb9a8; background-color:#fafcfb; }.connector-maintenance-trigger[aria-expanded=true] { border-color:#267351; box-shadow:0 0 0 2px rgba(38,115,81,.1); }
      .connector-maintenance-trigger:focus-visible { outline:2px solid #267351; outline-offset:2px; }.connector-maintenance-trigger:disabled { opacity:.55; cursor:not-allowed; }
      .connector-maintenance-menu { position:fixed; inset:auto; margin:0; width:min(360px,calc(100vw - 24px)); max-height:calc(100dvh - 24px); padding:0; overflow:auto; border:1px solid #cfdfd5; border-radius:10px; background:#fff; color:#294435; box-shadow:0 12px 36px rgba(25,52,38,.18); }
      .connector-maintenance-menu h3 { margin:0; padding:16px 16px 5px; font-size:14px; }.connector-maintenance-menu>p { margin:0; padding:0 16px 12px; font-size:12px; line-height:1.6; color:#728078; }
      .connector-maintenance-options { display:grid; padding:0 6px 6px; gap:2px; }.connector-maintenance-options label { display:flex; align-items:flex-start; gap:10px; padding:12px 10px; border-radius:6px; cursor:pointer; }.connector-maintenance-options label:hover { background:#f0f7f3; }.connector-maintenance-options label:has(input:checked) { background:#eaf4ee; }.connector-maintenance-options input[type=checkbox] { flex:none; width:16px; height:16px; margin:2px 0 0; accent-color:#267351; }.connector-maintenance-options strong { display:block; font-size:13px; line-height:1.5; font-weight:600; }.connector-maintenance-options small { display:block; margin-top:4px; font-size:12px; line-height:1.6; color:#6a7b70; white-space:normal; }
      .connector-settings summary { list-style:none; position:relative; padding:10px 34px 10px 0; }
      .connector-settings summary::-webkit-details-marker { display:none; }
      .connector-settings summary::after { content:''; position:absolute; right:12px; top:50%; width:6px; height:6px; border-right:1.5px solid #65756b; border-bottom:1.5px solid #65756b; transform:translateY(-70%) rotate(45deg); }
      .connector-settings details[open]>summary::after { transform:translateY(-30%) rotate(225deg); }
      .connector-pool-heading { display:flex; align-items:center; gap:10px; margin:24px 0 14px; }.connector-pool-heading h2 { font-size:16px; margin:0; }.connector-pool-heading span { color:#78857d; font-size:12px; }
      .connector-pool { display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),420px)); gap:20px; padding-bottom:12px; }
      .connector-tile { min-width:0; min-height:240px; padding:22px; border:1px solid #d5e2db; border-radius:14px; background:linear-gradient(135deg,#f1f8f4 0%,#fff 60%); box-shadow:0 3px 6px rgba(28,62,44,.04),0 10px 24px -12px rgba(28,62,44,.18),inset 0 1px 0 #fff; display:flex; flex-direction:column; gap:14px; }
      .connector-tile:hover,.connector-tile:focus-within { border-color:#adc8b8; box-shadow:0 4px 8px rgba(28,62,44,.05),0 14px 28px -12px rgba(28,62,44,.22),inset 0 1px 0 #fff; }
      .connector-tile-header { display:flex; gap:14px; align-items:center; }.connector-tile-icon { display:grid; place-items:center; width:48px; height:48px; border:1px solid #c7dfd1; border-radius:12px; background:linear-gradient(145deg,#e4f2e9,#d4e8dc); box-shadow:inset 0 1px 0 #fff,0 2px 4px rgba(33,100,71,.06); color:#216447; font-size:21px; font-weight:700; flex:none; }
      .connector-tile-icon-brand { background:#fff; border-color:#e1e8e5; box-shadow:none; }.connector-tile-icon-brand img { display:block; width:32px; height:32px; object-fit:contain; }
      .connector-tile-compact { min-height:176px; padding:16px; gap:10px; border-radius:12px; box-shadow:0 2px 8px rgba(28,62,44,.05); }
      .connector-tile-compact .connector-tile-header { gap:10px; flex-wrap:nowrap; }
      .connector-tile-compact .connector-tile-icon { width:36px; height:36px; border-radius:9px; background:#edf5f0; box-shadow:none; }
      .connector-tile-compact .connector-tile-icon svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
      .connector-tile-compact .connector-tile-title h3 { font-size:15px; margin:0; white-space:normal; }
      .connector-tile-compact .connector-tile-title p:empty { display:none; }
      .connector-tile-compact .connector-badge { padding:3px 7px; font-size:12px; white-space:nowrap; flex:none; }
      .connector-tile-compact .connector-tile-footer { padding-top:10px; }
      .connector-tile-title { min-width:0; flex:1; }.connector-tile-title h3 { margin:0 0 5px; font-size:17px; line-height:1.4; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.connector-tile-title p { margin:0; font-size:12px; color:#74827a; }
      .connector-settings-button { width:34px; height:34px; flex:none; display:grid; place-items:center; padding:0; border:1px solid #e1e8e3; border-radius:7px; background:#fff; color:#536a5b; cursor:pointer; }.connector-settings-button svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.6; }.connector-settings-button:hover { background:#edf5f0; color:#216447; border-color:#9cb8a8; }.connector-settings-button:focus-visible { outline:2px solid #267151; outline-offset:2px; }
      .connector-tile-state { display:flex; align-items:center; justify-content:space-between; gap:10px; }.connector-tile-state .connector-badge { padding:4px 9px; font-size:12px; border:1px solid #d5e8dd; }.connector-tile-state .connector-badge.warning { border-color:#f0dfcb; }.connector-tile-state span:last-child { color:#738178; font-size:12px; }
      .connector-tile-source { margin:0; font-size:13px; line-height:1.6; color:#425c4c; overflow-wrap:anywhere; }.connector-tile-footer { margin-top:auto; padding-top:14px; border-top:1px solid #e1eae5; display:flex; flex-wrap:wrap; gap:8px 16px; align-items:baseline; justify-content:space-between; font-size:12px; color:#738178; }.connector-tile-footer strong { color:#234f38; font-size:23px; font-weight:650; line-height:1.2; font-variant-numeric:tabular-nums; }.connector-tile-footer .connector-tile-count { display:flex; align-items:baseline; gap:6px; }
      .connector-dialog { width:min(1020px,calc(100vw - 32px)); max-height:calc(100dvh - 40px); padding:0; border:1px solid #dce4df; border-radius:14px; background:#fff; color:#23372e; box-shadow:0 24px 80px #17332238; overflow:hidden; }.connector-dialog[open] { display:flex; flex-direction:column; }.connector-dialog::backdrop { background:rgba(18,39,29,.20); backdrop-filter:blur(1px); }
      .connector-dialog-header { display:flex; align-items:center; gap:16px; padding:18px 22px; border-bottom:1px solid #e6ebe8; flex:none; }.connector-dialog-header h2 { margin:0; flex:1; font-size:18px; }.connector-dialog-body { overflow:auto; min-height:0; }.connector-dialog-body>.connector-card { margin:0; border:0; border-radius:0; }.connector-dialog .connector-metrics { margin:0; }.connector-dialog .workspace-button { min-height:34px; font-size:13px; }.connector-dialog-notice { margin:0; padding:10px 24px; color:#267151; background:#f0f7f2; font-size:13px; }.connector-dialog-discard { padding:12px 22px; border-top:1px solid #e6ebe8; display:flex; gap:10px; align-items:center; flex-wrap:wrap; flex:none; }.connector-dialog-discard span { flex:1; font-size:13px; }
      .connector-library { width:min(840px,calc(100vw - 32px)); }.connector-library-intro { margin:0; padding:22px 24px 0; color:#64766b; font-size:14px; line-height:1.7; }.connector-library-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr)); gap:18px; padding:22px 24px 28px; }.connector-library-item { border:1px solid #d8e5dd; border-radius:12px; padding:22px; background:linear-gradient(135deg,#f2f8f4,#fff 65%); box-shadow:0 4px 14px #17332208; }.connector-library-resources { margin:22px 0; font-size:14px; color:#425c4c; }.connector-library-item footer { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:14px; border-top:1px solid #e1eae5; padding-top:18px; }.connector-library-item footer span { font-size:12px; color:#78867e; }.connector-library-footer { padding:14px 24px; border-top:1px solid #e6ebe8; display:flex; align-items:center; gap:16px; flex:none; }.connector-library-footer p { flex:1; margin:0; font-size:12px; line-height:1.6; color:#64766b; }.connector-tile.is-unconfigured { background:linear-gradient(135deg,#fafbf9,#fff 65%); }.connector-initial-form .connector-settings { grid-template-columns:1fr 1.2fr; }.connector-initial-form .connector-field input { width:100%; min-width:0; }.connector-initial-form .connector-help { line-height:1.7; }
      @media(max-width:680px){.connector-initial-form .connector-settings { grid-template-columns:minmax(0,1fr); gap:20px; padding:20px; }.connector-library-grid { padding:18px; }.connector-library-intro { padding:18px 18px 0; }.connector-library-item { padding:18px; }}
      .connector-mapping-dialog { width:min(1120px,calc(100vw - 32px)); }.connector-mapping-section { padding:20px 24px; border-bottom:1px solid #e5ebe7; }.connector-mapping-section h3 { margin:0 0 10px; font-size:15px; }.connector-mapping-section h3 span { margin-left:12px; color:#267151; font-size:12px; font-weight:400; }.connector-mapping-section p,.connector-mapping-message { color:#6b7d72; font-size:13px; line-height:1.7; }.connector-mapping-message { padding:20px 24px; }.connector-mapping-scope { display:grid; grid-template-columns:1fr 1fr; gap:20px; align-items:center; }.connector-mapping-scope input:not([type=checkbox]) { width:100%; }.connector-mapping-scroll { overflow:auto; }.connector-mapping-fields { min-width:720px; }.connector-mapping-fields td:first-child { width:15%; }.connector-mapping-fields td:nth-child(2) { width:45%; }.connector-mapping-fields select,.connector-mapping-fields input { width:100%; min-width:0; min-height:34px; }.connector-mapping-fields input { margin-top:8px; }.connector-mapping-fields td { vertical-align:top; }.connector-mapping-section .connector-log td { max-width:320px; overflow-wrap:anywhere; }.connector-mapping-section [data-sample] { width:min(100%,480px); }.connector-mapping-footer { border-top:1px solid #e5ebe7; padding:16px 24px; display:flex; gap:12px; align-items:center; flex:none; }.connector-mapping-footer span { flex:1; font-size:13px; line-height:1.6; color:#496455; }.connector-mapping-footer button { flex:none; }
      @media(max-width:680px){.connector-mapping-scope { grid-template-columns:1fr; gap:12px; }.connector-mapping-section { padding:16px; }.connector-mapping-footer { padding:12px 16px; flex-wrap:wrap; }.connector-mapping-footer span { flex-basis:100%; }.connector-mapping-footer button { flex:1; }}
      .connector-mapping-fields select,.connector-mapping-fields input { border:1px solid #d4e0d8; border-radius:6px; background-color:#fff; color:#2e4337; padding:7px 10px; font-family:inherit; font-size:13px; line-height:1.4; }.connector-mapping-fields select { padding-right:32px; }.connector-mapping-fields :is(select,input):focus { outline:2px solid #2d805a33; border-color:#2d805a; }.connector-mapping-fields :disabled { background-color:#f6f8f7; color:#728077; }
      @media(max-width:600px){.connector-pool { grid-template-columns:minmax(0,1fr); }.connector-dialog { width:calc(100vw - 20px); max-height:calc(100dvh - 20px); }.connector-dialog-header { padding:12px 16px; }}
      .connector-ownership-dialog { width:min(680px,calc(100vw - 32px)); }.connector-ownership-dialog .connector-dialog-header>div { flex:1; }.connector-ownership-dialog .connector-dialog-header p { margin:5px 0 0; }.connector-ownership-dialog form { display:flex; flex-direction:column; min-height:0; }.connector-ownership-grid { display:grid; gap:0; overflow:auto; padding:8px 22px; }.connector-ownership-row { display:grid; grid-template-columns:minmax(150px,1fr) minmax(170px,220px); align-items:center; gap:12px; min-height:50px; border-bottom:1px solid #edf1ee; font-size:13px; }.connector-ownership-row select { min-height:36px; border:1px solid #d3ddd6; border-radius:6px; padding:6px 30px 6px 10px; background:#fff; color:#294435; }.connector-ownership-row small { grid-column:1/-1; margin-top:-8px; padding-bottom:8px; color:#7a887f; }.connector-ownership-row select:disabled { background:#f3f5f4; color:#65746b; }.connector-log td.connector-actions { padding:8px 12px; border-top:0; flex-wrap:nowrap; }.connector-log td.connector-actions .workspace-button { white-space:nowrap; }
      .selection-quotation-dialog{width:min(1160px,calc(100vw - 48px));max-width:none;height:min(800px,calc(100dvh - 64px));display:flex;flex-direction:column;padding:0;background:#fff;color:#19332b;overflow:hidden}
      .sq-heading,.sq-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;flex-shrink:0}
      .sq-heading{border-bottom:1px solid #dce6e1}.sq-heading h2{margin:0;font-size:20px}.sq-heading p{margin:6px 0 0;color:#6b7e75;font-size:12px}
      .sq-body{padding:22px 24px;overflow:auto;min-height:0;flex:1}.sq-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 20px;margin-bottom:24px}.sq-fields label{display:flex;flex-direction:column;gap:7px;min-width:0;font-size:12px}.sq-fields input{width:100%;min-height:34px;box-sizing:border-box;font-size:13px}
      .sq-toolbar{display:flex;gap:12px;align-items:center;justify-content:space-between;margin:12px 0}.sq-toolbar strong{font-size:14px;margin-right:auto}.sq-toolbar input{min-width:0;flex:1;min-height:34px}.sq-toolbar select{min-height:34px;width:140px}
      .sq-model-scroll,.sq-catalog-scroll{overflow:auto;border:1px solid #dce6e1;border-radius:8px}.sq-models{min-width:720px}.selection-quotation-dialog table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}.selection-quotation-dialog th{padding:12px;background:#f6f9f7;font-weight:500;color:#64786e}.selection-quotation-dialog td{padding:12px;border-top:1px solid #e9efec;vertical-align:middle}.selection-quotation-dialog td button+button{margin-left:6px}.selection-quotation-dialog td .sq-fields{margin:8px 0}.selection-quotation-dialog input[type=checkbox]{accent-color:#21664c;width:15px;height:15px}.sq-empty{height:130px;text-align:center;color:#72837b}
      .sq-catalog-scroll.sq-model-catalog-scroll,.sq-model-list-scroll{max-height:280px;overflow-x:auto;overflow-y:scroll;scrollbar-gutter:stable;background:#fff}.sq-quotation-models{min-width:1960px}.sq-quotation-models tr.sq-selected td{background:#e6f4ed;color:#174f3c}.sq-quotation-models thead th{position:sticky;top:0;z-index:1;white-space:nowrap;box-shadow:0 1px 0 #dce6e1}.sq-quotation-models th:first-child,.sq-quotation-models td:first-child{width:56px;min-width:56px;text-align:center}.sq-quotation-models th:nth-child(2),.sq-quotation-models td:nth-child(2){min-width:220px}.sq-quotation-models th:nth-child(3),.sq-quotation-models td:nth-child(3){min-width:210px}.sq-quotation-models th:nth-child(15),.sq-quotation-models td:nth-child(15){min-width:220px}.sq-quotation-models td{white-space:nowrap}.sq-quotation-models td:last-child{min-width:130px}
      .sq-catalog{background:#f7faf8;padding:12px;margin-bottom:18px;border-radius:8px;border:1px solid #dce6e1}.sq-catalog-scroll{max-height:240px;background:white}.sq-footer{border-top:1px solid #dce6e1;background:#fafcfb}.sq-footer span{font-size:12px;color:#6b7e75;margin-right:auto}.sq-body details{margin-top:20px;font-size:13px}.sq-body summary{cursor:pointer;padding:12px 0;color:#21664c}
      .sq-detail{border-top:1px solid #dce6e1;margin-top:20px;padding-top:12px}.sq-detail-note{font-size:12px;color:#6b7e75}.sq-detail-table{width:max-content;min-width:1000px;table-layout:auto}.sq-detail-table th,.sq-detail-table td{white-space:nowrap}.sq-detail-table th:first-child,.sq-detail-table td:first-child{position:sticky;left:0;z-index:2;min-width:46px;background:#fff}.sq-detail-table thead th:first-child{z-index:3;background:#f6f9f7}.sq-detail-table input:not([type=checkbox]){min-width:80px;width:100%;box-sizing:border-box;min-height:32px}.sq-detail-table td{padding:8px}.sq-detail-table td:last-child{min-width:105px;position:sticky;right:0;background:#fff;box-shadow:-1px 0 #e9efec}.selection-quotation-dialog button:disabled{opacity:.45;cursor:not-allowed}.sq-detail .sq-model-scroll{max-height:400px}.sq-detail .sq-fields{min-width:720px}
      .sq-detail-table .sq-material-unmatched td,.sq-detail-table .sq-material-unmatched td:first-child,.sq-detail-table .sq-material-unmatched td:last-child{background:#fde8e7}.sq-detail-table .sq-material-unmatched input:not([type=checkbox]){border-color:#c63d39}.sq-material-match-note{color:#9a2524}
      .shipment-logistics-section{display:flex;flex-direction:column;gap:14px}.shipment-logistics-section>h3{margin:0}.shipment-logistics-tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}.shipment-logistics-tab{flex:none;border:1px solid #d7e2dc;border-radius:999px;background:#fff;color:#496057;padding:7px 12px}.shipment-logistics-tab.active{border-color:#23694f;background:#edf7f1;color:#18543c}.shipment-logistics-form{display:flex;flex-direction:column;gap:16px}.shipment-logistics-wide{grid-column:span 2}.shipment-photo-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.shipment-photo-gallery figure{margin:0;border:1px solid #dce6df;border-radius:8px;overflow:hidden;background:#f8faf9}.shipment-photo-gallery img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.shipment-photo-gallery figcaption{padding:7px 9px;color:#687a71;font-size:12px}.shipment-logistics-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.shipment-logistics-actions>span{color:#687a71}.shipment-logistics-actions .disabled{opacity:.45;pointer-events:none}
      @media(max-width:700px){.selection-quotation-dialog{width:calc(100vw - 16px);height:calc(100dvh - 24px)}.sq-heading,.sq-footer{padding:14px}.sq-body{padding:14px}.sq-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sq-footer{flex-wrap:wrap}.sq-footer span{width:100%}.sq-toolbar{flex-wrap:wrap}.sq-toolbar input{flex-basis:100%}}
      .selection-grid-bar{display:flex;align-items:center;gap:6px;padding:7px 10px;border-block:1px solid #e1e8e4;background:#f7faf8;flex-wrap:wrap;flex-shrink:0}
      .selection-grid-bar strong{font:11px ui-monospace,monospace;color:#24684e;min-width:100px;margin-right:auto}
      .selection-grid-bar>span{width:100%;font-size:12px;color:#7d8c84;line-height:1.4}
      .selection-grid-bar button{font-size:12px;padding:3px 8px;min-height:25px}
      .selection-sheet{border-collapse:separate!important;border-spacing:0!important;user-select:none}
      .selection-sheet td[role=gridcell]{padding:0!important;position:relative;border-right:1px solid #e4eae6;border-bottom:1px solid #e4eae6;background:#fff;cursor:cell;height:32px;outline:none}
      .selection-sheet td[role=gridcell] input,.selection-sheet td[role=gridcell] select{border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;pointer-events:none;min-height:30px;width:100%;padding:4px 6px!important;color:#213c31}
      .selection-sheet input[type=number]{appearance:textfield}
      .selection-sheet input::-webkit-inner-spin-button,.selection-sheet input::-webkit-outer-spin-button{appearance:none;margin:0}
      .selection-sheet td[role=gridcell].grid-selected{background:#e7f2ec}
      .selection-sheet td[role=gridcell].grid-active{box-shadow:inset 0 0 0 2px #24724f;z-index:1;background:#f7fcf9}
      .selection-sheet td[role=gridcell].grid-editing{box-shadow:inset 0 0 0 2px #24724f;background:#fff}
      .selection-sheet td[role=gridcell].grid-editing input,.selection-sheet td[role=gridcell].grid-editing select{pointer-events:auto;user-select:text}
      .selection-sheet .grid-cell-content{display:grid;min-width:0}
      .selection-sheet .grid-cell-content textarea,.selection-sheet .grid-cell-measure{grid-area:1/1;box-sizing:border-box;min-width:0;width:100%;min-height:30px;margin:0;padding:4px 6px;border:0;border-radius:0;font:inherit;line-height:20px;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}
      .selection-sheet .grid-cell-measure{visibility:hidden;pointer-events:none}
      .selection-sheet td[role=gridcell] textarea{height:auto;resize:none;overflow:hidden;background:transparent;color:#213c31;box-shadow:none;outline:none;pointer-events:none}
      .selection-sheet td[role=gridcell].grid-editing textarea{pointer-events:auto;user-select:text}
      .selection-sheet td.col-print input{width:17px;height:17px;min-height:17px;margin:auto;display:block;pointer-events:auto;cursor:pointer;accent-color:#24724f}
      .selection-sheet td.col-print{cursor:pointer}
      .selection-sheet td.col-linked select{pointer-events:auto;cursor:pointer;appearance:none;background-image:url('/assets/v/23e00bd5f7092090/chevron-down.svg')!important;background-repeat:no-repeat!important;background-position:right 7px center!important;background-size:12px!important;padding-right:24px!important}
      .selection-sheet td.col-linked select:hover{background-color:#eff7f2!important}
      .selection-grid-bar select{height:25px;max-width:112px;font-size:12px;padding:2px 23px 2px 7px}
      .portal-dialog.model-settings-dialog{width:min(1520px,calc(100vw - 40px));height:min(840px,calc(100dvh - 40px))}
      .model-settings-dialog>.portal-content{padding:20px;background:#f7f9f7;scrollbar-gutter:stable}
      .model-settings-badge{display:inline-flex;align-items:center;min-height:24px;border-radius:999px;padding:2px 9px;background:#eef5f1;color:#2f684b;font-size:11px;white-space:nowrap}.model-settings-badge.muted{background:#f0f2f1;color:#6d7772}.model-settings-badge.healthy{background:#e7f4eb;color:#236246}
      .model-settings-switch{display:flex;align-items:center;gap:8px;color:#34463c;font-size:13px;cursor:pointer;white-space:nowrap}.model-settings-switch input{width:16px;height:16px;accent-color:#236246}
      .model-settings-layout{display:grid;grid-template-columns:minmax(230px,.55fr) minmax(380px,1.1fr) minmax(380px,1fr);gap:16px;align-items:start}.model-settings-card{min-width:0;border:1px solid #dfe7e2;border-radius:11px;background:#fff;box-shadow:0 1px 3px rgba(27,54,39,.035);overflow:hidden}.model-settings-card-head{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:58px;border-bottom:1px solid #e6ece8;padding:12px 14px}.model-settings-card-head h3{margin:0;color:#26372e;font-size:14px}.model-settings-card-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}.model-settings-card-body{display:grid;gap:12px;padding:14px}
      .model-settings-empty{display:flex;min-height:150px;align-items:center;justify-content:center;border:1px dashed #d7e1da;border-radius:8px;padding:24px;text-align:center;color:#738078;font-size:13px;line-height:1.7;background:#fafcfb}.model-settings-empty.compact{min-height:92px}
      .model-key-row{display:grid;gap:10px;border:1px solid #e2e9e4;border-radius:8px;padding:11px}.model-key-copy{display:grid;gap:3px;min-width:0}.model-key-copy strong{overflow:hidden;text-overflow:ellipsis;font:600 13px/1.4 Consolas,monospace}.model-key-actions{display:flex;gap:7px;flex-wrap:wrap}.model-key-actions button{padding:6px 9px;font-size:12px}.model-key-entry{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;border-top:1px solid #edf1ee;padding-top:12px}.model-key-entry input{min-width:0;height:38px;box-sizing:border-box;border:1px solid #cfddd5;border-radius:6px;padding:8px 10px;font:13px Consolas,monospace}
      .model-catalog-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
      .model-purpose-group{border:1px solid #e1e8e4;border-radius:8px;overflow:hidden}.model-purpose-group>h4{margin:0;border-bottom:1px solid #e8eeea;padding:9px 12px;color:#69766f;font-size:12px;font-weight:600;background:#fafcfb}.model-purpose-row{display:grid;grid-template-columns:minmax(92px,.35fr) minmax(0,1.65fr);gap:12px;align-items:center;padding:8px 12px;border-top:1px solid #edf1ee}.model-purpose-group>h4+.model-purpose-row,.model-purpose-advanced>div>.model-purpose-row:first-child{border-top:0}.model-purpose-label strong{font-size:13px}.model-purpose-controls{min-width:0}.model-purpose-controls>select{width:100%;height:34px;box-sizing:border-box;border:1px solid #cfdad3;border-radius:6px;padding:0 9px;background:#fff;color:#2d3c34;font:12px inherit}.model-purpose-controls>select:focus-visible{outline:2px solid #77a48b;outline-offset:1px}
      .model-purpose-advanced>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;cursor:pointer;background:#fafcfb}.model-purpose-advanced[open]>summary{border-bottom:1px solid #e8eeea}.model-purpose-advanced>summary strong{font-size:12px}.model-settings-dialog>footer{justify-content:flex-end}
      .model-settings-chat{height:min(630px,calc(100dvh - 180px));display:flex;flex-direction:column}.model-settings-chat>.model-settings-card-head button{font-size:12px}.model-chat-body{display:flex;flex:1;min-height:0;flex-direction:column;gap:10px;padding:14px}.model-chat-body>select{width:100%;height:36px;box-sizing:border-box;border:1px solid #cfdad3;border-radius:6px;background:#fff;padding:0 9px;color:#2d3c34}.model-chat-transcript{display:flex;flex:1;min-height:180px;flex-direction:column;gap:10px;overflow:auto;border:1px solid #e1e8e4;border-radius:8px;background:#fafcfb;padding:12px}.model-chat-empty{margin:auto;color:#738078;text-align:center;font-size:12px;line-height:1.6}.model-chat-message{max-width:88%;border-radius:10px;padding:9px 12px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.55}.model-chat-message.user{align-self:flex-end;background:#e2f1e8;color:#1c4932}.model-chat-message.assistant{align-self:flex-start;border:1px solid #e0e8e3;background:#fff;color:#2b3d32}.model-chat-composer{display:flex;align-items:flex-end;gap:8px}.model-chat-composer textarea{box-sizing:border-box;flex:1;min-width:0;min-height:76px;resize:vertical;border:1px solid #cfdad3;border-radius:7px;padding:9px;font:13px/1.5 inherit}.model-chat-composer button{min-width:58px}.model-chat-status{min-height:18px;margin:0;color:#9a4738;font-size:12px}
      .model-chat-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.model-chat-modes button{border:1px solid #dce6df;border-radius:6px;padding:7px 4px;background:#f8fbf9;color:#456252;font-size:12px}.model-chat-modes button.active{border-color:#2d7553;background:#e6f3eb;color:#1c5939;font-weight:600}.model-chat-modes button:disabled{opacity:.6;cursor:default}.model-chat-message img,.model-chat-message video{display:block;max-width:100%;max-height:300px;margin-top:8px;border-radius:7px;background:#eef2ef}.model-chat-message a{display:block;margin-top:7px;color:#23674f;font-size:12px;text-decoration:underline}
      @media(max-width:1200px){.model-settings-layout{grid-template-columns:minmax(230px,.55fr) minmax(380px,1.1fr)}.model-settings-chat{grid-column:1/-1;height:440px}}
      @media(max-width:800px){.portal-dialog.model-settings-dialog{width:calc(100vw - 20px);height:calc(100dvh - 20px)}.model-settings-dialog>.portal-content{padding:14px}.model-settings-layout{grid-template-columns:1fr}.model-purpose-row{grid-template-columns:1fr;gap:6px}.model-key-entry{grid-template-columns:1fr}.model-key-entry button{width:100%}}
      .portal-dialog.arrangement-editor{width:min(1000px,calc(100vw - 40px));max-height:calc(100dvh - 40px);color:#243d32}
      .arrangement-editor .portal-content{padding:0;overflow:auto;min-height:0}
      .arrangement-editor button{font:inherit;cursor:pointer}.arrangement-editor button:disabled{opacity:.45;cursor:default}
      .arrangement-editor button.danger{background:#a6402d;border-color:#a6402d;color:#fff}
      .arrangement-editor button:focus-visible,.arrangement-editor summary:focus-visible{outline:2px solid #287353;outline-offset:3px}
      .arrangement-editor .arr-modes{display:flex;gap:6px;padding:14px 24px;border-bottom:1px solid #e0e8e3;flex-wrap:wrap}
      .arrangement-editor .arr-modes button,.arrangement-editor .arr-layer-actions button{border:0;border-radius:7px;background:transparent;padding:9px 14px;color:#60746a}
      .arrangement-editor .arr-modes button[aria-pressed=true],.arrangement-editor .arr-layer-actions button[aria-pressed=true]{background:#e6f2eb;color:#1e6245;font-weight:600}
      .arrangement-editor .arr-intro{padding:20px 24px 0}.arrangement-editor .arr-intro h3{margin:0 0 7px;font-size:17px}.arrangement-editor .arr-intro p{margin:0;color:#667a6e;font-size:13px;line-height:1.7}
      .arrangement-editor .arr-workspace{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:22px;padding:20px 24px 24px;align-items:start}
      .arrangement-editor .arr-canvas{min-width:0;border:1px solid #dfe8e2;border-radius:12px;overflow:hidden;background:#fbfdfb}
      .arrangement-editor .arr-canvas-heading{display:flex;justify-content:space-between;padding:14px 16px;border-bottom:1px solid #e2eae5;font-size:13px}.arrangement-editor .arr-canvas-heading span{color:#718278}
      .arrangement-editor .arr-layer{display:grid;grid-template-columns:75px minmax(0,1fr);gap:10px;align-items:center;padding:15px 14px;border-bottom:1px solid #e8eeea}.arrangement-editor .arr-layer:last-child{border-bottom:0}.arrangement-editor .arr-layer>strong{font-size:12px;color:#5b7164}
      .arrangement-editor .arr-points{display:flex;gap:8px;flex-wrap:wrap}.arrangement-editor .arr-point,.arrangement-editor .arr-wire-label,.arrangement-editor .arr-layer-select{display:inline-flex;align-items:center;justify-content:center;min-height:36px;min-width:40px;padding:6px 10px;border:1px solid #cbdcd1;border-radius:7px;background:#fff;color:#255c41;font-size:13px;font-variant-numeric:tabular-nums}
      .arrangement-editor .arr-point:hover{background:#edf6f0;border-color:#6a9d7e}.arrangement-editor .arr-point[data-selection="1"],.arrangement-editor .arr-layer-select[aria-pressed=true]{background:#e3f1e8;border:2px solid #287353;color:#174d34}.arrangement-editor .arr-point[data-selection="2"]{background:#edf2fc;border:2px solid #587bb4;color:#365588}
      .arrangement-editor .arr-controls{min-width:0}.arrangement-editor .arr-controls h4{font-size:13px;margin:0 0 12px}.arrangement-editor .arr-selection{display:grid;gap:7px;border-left:3px solid #287353;background:#f0f6f2;border-radius:6px;padding:13px;margin-bottom:10px;overflow-wrap:anywhere}.arrangement-editor .arr-selection[data-selection="2"]{border-color:#587bb4;background:#f1f4fa}.arrangement-editor .arr-selection small,.arrangement-editor .arr-selection span{font-size:12px;color:#68796f}.arrangement-editor .arr-selection strong{font-size:14px}
      .arrangement-editor .arr-reset,.arrangement-editor .arr-restore{background:transparent!important;color:#577362!important;border-color:#d8e3dc!important}.arrangement-editor .arr-reset{width:100%}.arrangement-editor .arr-summary{font-size:12px;line-height:1.8;color:#64786a;margin:16px 0}.arrangement-editor .arr-muted{font-size:12px;color:#718278}.arrangement-editor .arr-empty{padding:24px;line-height:1.8;font-size:13px;color:#718278}
      .arrangement-editor .arr-diagram{padding:14px;border-top:1px solid #e0e8e3}.arrangement-editor .arr-diagram summary{font-size:12px;cursor:pointer;color:#35674b}.arrangement-editor .arr-diagram>div{margin-top:14px}.arrangement-editor .arr-layer-actions{display:flex;gap:4px;margin-bottom:18px;background:#f4f7f5;border-radius:8px}.arrangement-editor .arr-layer-actions button{padding:9px;font-size:12px}
      .arrangement-editor>footer{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.arrangement-editor>footer>.arr-muted{margin-right:auto}.arr-confirm{display:flex;align-items:center;flex-wrap:wrap;gap:10px;width:100%;background:#fff5ed;border:1px solid #edc6a8;border-radius:9px;padding:14px}.arr-confirm strong{font-size:14px}.arr-confirm span{flex:1 1 300px;font-size:12px;line-height:1.7;color:#875a3b}
      @media(max-width:720px){.portal-dialog.arrangement-editor{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.arrangement-editor .arr-workspace{grid-template-columns:1fr;padding:16px;gap:18px}.arrangement-editor .arr-modes{padding:12px}.arrangement-editor .arr-intro{padding:16px 16px 0}.arrangement-editor .arr-layer{grid-template-columns:62px minmax(0,1fr);padding:12px 10px}.arrangement-editor>footer>.arr-muted{flex-basis:100%}}
      .selection-sheet .grid-fill-handle{position:absolute;right:0;bottom:0;width:9px;height:9px;min-height:0;padding:0;border:1px solid #fff;border-radius:0;background:#24724f;z-index:5;cursor:crosshair;touch-action:none}
      .selection-sheet .grid-fill-handle::after{content:'';position:absolute;inset:-3px}
      .selection-sheet .grid-fill-handle:hover{background:#124c32;outline:1px solid #124c32}
      .selection-sheet td.grid-edge-top{border-top:1px solid #24724f!important}
      .selection-sheet td.grid-edge-bottom{border-bottom:1px solid #24724f!important}
      .selection-sheet td.grid-edge-left{border-left:1px solid #24724f!important}
      .selection-sheet td.grid-edge-right{border-right:1px solid #24724f!important}
      .selection-sheet td.grid-fill-preview{background:#d9eee2!important;outline:1px dashed #24724f;outline-offset:-1px}
      .selection-sheet.grid-filling,.selection-sheet.grid-filling *{cursor:crosshair!important;user-select:none!important}
      .selection-sheet th{background:#f0f5f2;border-right:1px solid #e1e8e4}
      .selection-sheet tbody td:first-child{position:sticky;left:0;z-index:2;background:#f4f7f5;border-bottom:1px solid #e4eae6;color:#78877f}
      .selection-model-table,.selection-model-table input,.selection-model-table button,.selection-accessory span,.selection-dimension-key,.selection-lines-count,.selection-metric span {font-size:12px}
      .selection-fixture-section .selection-subhead {margin-top:0}
      .selection-model-table tr.active {background:#e1f0e7;box-shadow:inset 3px 0 #21674e}
      .selection-model-table button {border:0;background:transparent;color:inherit;cursor:pointer;padding:5px}
      .selection-installation-preview img {align-self:center}
      .selection-metric input,.selection-metric select {min-width:54px;width:70px;max-width:100%;font-size:12px}
      .selection-output-metrics {flex-wrap:wrap}
      [data-batch-filters] {padding:12px;gap:8px;flex-wrap:wrap}
      [data-batch-filters] input {min-width:120px}
      dialog::backdrop {backdrop-filter:blur(1px);background-color:rgb(18 39 29 / 20%)}
      .workspace-shell :is(button,input,select,textarea),.workspace-sidebar,.workspace-shell small,.workspace-shell label {font-size:max(12px,1em)}
      .arrangement-zoom {width:min(96vw,1500px);max-width:96vw;border:1px solid #d9e4de;border-radius:14px;padding:0;overflow:hidden;color:#173e32}
      .arrangement-zoom-content {box-sizing:border-box;overflow:auto;max-height:80vh;padding:16px}
      .arrangement-zoom-content svg {width:1400px;max-width:none}
.business-model-link { padding: 0; border: 0; background: transparent; color: var(--workspace-accent, #23674f); text-align: left; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
