/* Reuse the platform header, form panel, button and theme surfaces. */
.platform-scan-receiver { position:fixed !important; width:1px !important; height:1px !important; padding:0 !important; border:0 !important; opacity:0; overflow:hidden; clip-path:inset(50%); top:0; left:0; pointer-events:none; }
.platform-scan-dialog { box-sizing:border-box; width:calc(100% - 32px); max-width:640px; max-height:calc(100dvh - 32px); padding:0; border:var(--layoutBorderWidth,1px) solid var(--layoutBorderColor,#303338); border-radius:15px; background:var(--frameBackground,#121314); color:var(--foreColor,#fff); font:inherit; overflow:auto; pointer-events:auto; }
.platform-scan-dialog::backdrop { background:var(--overlayBackground,#000a); }
/* The transparent contact overlay disables all nested frame-main surfaces.
   A modal is an interactive boundary even when it uses that shared class. */
.platform-scan-dialog .frame-main { width:100%; padding:0; pointer-events:auto !important; }
.platform-scan-dialog .stat-drilldown { display:flex; align-items:center; padding:15px 20px; border-bottom:var(--layoutBorderWidth,1px) solid var(--layoutBorderColor,#303338); }
.platform-scan-dialog .drilldown-label { flex:1; font-weight:600; }
.platform-scan-dialog .tabs-header { display:flex; align-items:center; }
.platform-scan-dialog .icons button { border:0; background:transparent; color:inherit; font:inherit; font-size:24px; line-height:1; cursor:pointer; padding:5px; }
.platform-scan-dialog .platform-scan-content { padding:24px; }
.platform-scan-dialog .platform-scan-value { box-sizing:border-box; margin:0; max-height:60dvh; overflow:auto; padding:20px; border:var(--layoutBorderWidth,1px) solid var(--layoutBorderColor,#303338); border-radius:9px; background:var(--inputBackground,#ffffff05); color:inherit; font-family:inherit; font-size:20px; font-weight:500; line-height:1.6; white-space:pre-wrap; overflow-wrap:anywhere; user-select:text; }
.platform-scan-dialog .platform-scan-actions { display:flex; justify-content:flex-end; flex-wrap:wrap; gap:8px; margin-top:20px; }
.platform-scan-dialog .platform-scan-input { width:100%; min-height:160px; resize:vertical; }
.platform-scan-dialog .platform-license-name { font-size:24px; font-weight:600; line-height:1.35; margin-bottom:15px; overflow-wrap:anywhere; }
.platform-scan-dialog .platform-license-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:24px; margin:0 0 20px; }
.platform-scan-dialog .platform-license-field { padding:12px 0; border-bottom:var(--layoutBorderWidth,1px) solid var(--layoutBorderColor,#303338); overflow-wrap:anywhere; }
.platform-scan-dialog .platform-license-field dt { font-size:14px; opacity:.7; margin-bottom:5px; }
.platform-scan-dialog .platform-license-field dd { font-size:18px; line-height:1.45; margin:0; white-space:pre-wrap; }
.platform-scan-dialog .platform-license-review { color:var(--warningColor,#e5b563); font-size:14px; }
.platform-scan-dialog summary { cursor:pointer; padding:12px 0; font-weight:500; }
.platform-scan-dialog .platform-scan-raw pre { font-size:16px; }
.platform-scan-dialog .platform-license:empty { display:none; }
.platform-scan-dialog .crm-merge-comparison { display:table; width:100%; height:auto; margin:16px 0 0; border-collapse:collapse; table-layout:fixed; font:inherit; }
.platform-scan-dialog .crm-merge-comparison thead { display:table-header-group; }
.platform-scan-dialog .crm-merge-comparison tbody { display:table-row-group; }
.platform-scan-dialog .crm-merge-comparison tr { display:table-row; }
.platform-scan-dialog .crm-merge-comparison :is(th,td) { display:table-cell; box-sizing:border-box; width:36% !important; min-width:0; max-width:none; padding:12px 8px; vertical-align:top; text-align:left; white-space:normal; overflow-wrap:anywhere; border-bottom:var(--layoutBorderWidth,1px) solid var(--layoutBorderColor,#303338); }
.platform-scan-dialog .crm-merge-comparison th { font-weight:600; }
.platform-scan-dialog .crm-merge-comparison :is(th,td):first-child { width:28% !important; padding-left:0; }
.platform-scan-dialog [hidden] { display:none !important; }
.platform-scan-dialog .button { width:auto; margin:0; }
.platform-scan-dialog :is(button,pre):focus-visible { outline:2px solid var(--linkHover,#8e9afd); outline-offset:3px; }
@media(max-width:540px) { .platform-scan-dialog .platform-scan-content { padding:20px; } .platform-scan-dialog .platform-scan-value { padding:15px; font-size:18px; } }
@media(max-width:420px) { .platform-scan-dialog .platform-license-fields { grid-template-columns:1fr; } }
