/* Shared server surfaces; neutral in both themes, no idle outlines. */
body.reworkUi #cloudDialog,body.reworkUi #protectedLibrary{width:min(1120px,calc(100vw - 32px));max-width:calc(100vw - 32px);height:min(860px,calc(100dvh - 32px));max-height:calc(100dvh - 32px);padding:0;border:0;border-radius:10px;background:var(--bg-sidebar);color:var(--text-main);box-shadow:none;}
body.reworkUi #cloudDialog .cloudDialogBody{position:relative;display:flex;flex-direction:column;height:100%;padding:0;overflow:hidden;gap:0;}
body.reworkUi #cloudDialog .dialogHeader,body.reworkUi #protectedLibrary .libraryHead{display:flex;flex:none;align-items:center;justify-content:space-between;margin:0;padding:16px 20px;background:var(--bg-sidebar);gap:12px;}
body.reworkUi #cloudDialog h2,body.reworkUi #protectedLibrary h2{font-size:18px;margin:0;}
body.reworkUi #cloudDialog .cloudContent{padding:0 20px 20px;overflow:auto;min-height:0;scrollbar-gutter:stable;}
body.reworkUi #cloudWorkspace{overflow:visible;padding:0;}
body.reworkUi #cloudDialog .cloudIntro{margin:0 0 12px;}
body.reworkUi #cloudDialog :is(.cloudPanel,.cloudStat,.cloudStatus,.cloudSuggestion,.cloudProjectRow,.cloudSectionActions){border:0;box-shadow:none;background-image:none;}
body.reworkUi #cloudDialog .cloudPanel{padding:0;background:transparent;border-radius:0;margin:20px 0 0;}
body.reworkUi #cloudDialog .cloudStats{margin:18px 0;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));}
body.reworkUi #cloudDialog .cloudStat{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:8px;background:var(--bg-panel);}
body.reworkUi #cloudDialog .cloudStat>.uiIcon{width:22px;height:22px;color:var(--text-secondary);flex:none;}
body.reworkUi #cloudDialog .cloudStat b{font-size:18px;margin-top:4px;}
body.reworkUi #cloudDialog .cloudStatus{border-radius:6px;padding:4px 8px;background:transparent;white-space:nowrap;}
body.reworkUi #cloudDialog .cloudStatus::before{box-shadow:none;}
body.reworkUi #cloudDialog .cloudSearchTools{display:grid;grid-template-columns:minmax(160px,1fr) 170px 200px;gap:10px;}
body.reworkUi #cloudDialog .cloudSearchBox{position:relative;min-width:0;}
body.reworkUi #cloudDialog .cloudSearchBox>.uiIcon{position:absolute;left:12px;top:12px;width:18px;height:18px;z-index:1;color:var(--text-secondary);pointer-events:none;}
body.reworkUi #cloudDialog .cloudSearch{width:100%;padding-left:38px;padding-right:44px;}
#cloudSearch::-webkit-search-cancel-button{display:none;}
body.reworkUi #cloudClearSearch{position:absolute;right:4px;top:4px;min-height:34px;width:34px;}
body.reworkUi #cloudDialog :is(.input,.select){height:42px;border:0;border-radius:7px;background-color:var(--bg-elevated);color:var(--text-main);}
body.reworkUi #cloudDialog :is(.cloudListStatus,.cloudProjectMeta,.cloudProjectDetails){color:var(--text-secondary);font-size:12px;line-height:1.5;}
body.reworkUi #cloudDialog .cloudListStatus{margin:10px 0;min-height:18px;}
body.reworkUi #cloudDialog .cloudProjectList{max-height:none;overflow:visible;gap:8px;min-height:64px;}
body.reworkUi #cloudDialog .cloudProjectList[aria-busy="true"]{opacity:.55;pointer-events:none;}
body.reworkUi #cloudDialog .cloudProjectRow{position:relative;grid-template-columns:32px minmax(0,1fr) auto;gap:12px;padding:14px 16px;border-radius:8px;background:var(--bg-panel);transform:none;}
body.reworkUi #cloudDialog .cloudProjectRow:is(:hover,:focus-within,.isCurrent){background:var(--bg-elevated);transform:none;box-shadow:none;color:var(--text-main);}
body.reworkUi #cloudDialog .cloudProjectRow.isCurrent::before{content:'';position:absolute;left:5px;top:calc(50% - 8px);height:16px;width:3px;border-radius:2px;background:var(--accent);}
.cloudProjectGlyph{color:var(--text-secondary);display:grid;place-items:center;}
body.reworkUi #cloudDialog .cloudProjectText b{font-size:14px;white-space:normal;overflow-wrap:anywhere;margin:0 0 3px;}
.cloudProjectMeta,.cloudProjectDetails{display:block;overflow-wrap:anywhere;}
body.reworkUi #cloudDialog .cloudProjectActions{justify-content:flex-end;gap:8px;}
body.reworkUi #cloudDialog .cloudProjectActions .btn{background:var(--bg-elevated);color:var(--text-main);border-radius:7px;min-height:36px;}
body.reworkUi #cloudDialog .cloudProjectActions .btn:hover{background:color-mix(in srgb,var(--text-main) 10%,var(--bg-elevated));}
body.reworkUi #cloudDialog .cloudSectionActions{margin:16px 0 0;padding:0;min-height:0;}
body.reworkUi #cloudDialog .cloudMetaGrid{gap:14px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:16px;}
body.reworkUi #cloudDialog .cloudSavePanel{padding:14px 16px;background:var(--bg-panel);border-radius:8px;}
body.reworkUi #cloudDialog .cloudSavePanel>summary{display:flex;align-items:center;gap:10px;cursor:pointer;font-weight:600;list-style:none;padding:4px 0;}
.cloudSavePanel>summary::after{content:'＋';margin-left:auto;color:var(--text-secondary);}.cloudSavePanel[open]>summary::after{content:'−';}
body.reworkUi #cloudDialog .cloudSuggestion{padding:12px;background:var(--bg-elevated);border-radius:7px;}
.cloudFooter,.cloudPagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;}
body.reworkUi #cloudDialog .cloudEmpty{padding:24px;text-align:center;background:var(--bg-panel);border-radius:8px;margin:0;}
.cloudLoading{position:absolute;inset:70px 0 0;z-index:4;background:color-mix(in srgb,var(--bg-sidebar) 96%,transparent);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:var(--text-secondary);text-align:center;padding:24px;}
.cloudSpinner{display:block;width:28px;height:28px;border:3px solid var(--bg-elevated);border-top-color:var(--text-main);border-radius:50%;animation:cloudSpin .8s linear infinite;}@keyframes cloudSpin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.cloudSpinner{animation:none;border-top-color:var(--text-main);border-bottom-color:var(--text-main);}}
body.reworkUi #protectedLibraryBtn{display:flex;width:100%;min-height:64px;align-items:center;justify-content:flex-start;gap:18px;padding:12px 16px;margin:0;background:var(--bg-panel);border:0;border-radius:8px;text-align:left;color:var(--text-main);}
.tehzillaLibraryLogo{display:block;object-fit:contain;width:112px;height:48px;flex:none;}
:root[data-theme="light"] .tehzillaLibraryLogo{filter:brightness(0);}
#protectedLibraryBtn span{display:grid;gap:4px;}#protectedLibraryBtn small{font-size:12px;color:var(--text-secondary);font-weight:400;}#protectedLibraryBtn>.uiIcon{margin-left:auto;}
body.reworkUi #protectedLibrary{padding:0 20px 20px;}
body.reworkUi #protectedLibrary .libraryHead{padding:16px 0;}
.libraryBrand{display:flex;align-items:center;gap:16px;min-width:0;}
body.reworkUi #protectedLibrary :is(.libraryItem,#libraryPublish){border:0;background:var(--bg-panel);border-radius:8px;padding:16px;}
body.reworkUi #protectedLibrary .libraryItem{margin:8px 0;}
body.reworkUi #protectedLibrary .libraryItem:hover{background:var(--bg-elevated);}
#libraryCatalogSearch{width:100%;margin-top:16px;}
#libraryList[aria-busy="true"]{opacity:.5;pointer-events:none;}
body.reworkUi #cloudDialog .cloudSearchBox:focus-within .input{background-position:4px center!important;}
body.reworkUi.phoneViewerMode #cloudDialog #cloudWorkspace>.cloudLibraryPanel{display:block!important;}
body.reworkUi.phoneViewerMode #cloudDialog .cloudSavePanel{display:none!important;}
@media(max-width:800px){body.reworkUi #cloudDialog .cloudSearchTools{grid-template-columns:1fr 1fr;}body.reworkUi #cloudDialog .cloudSearchBox{grid-column:1/-1;}body.reworkUi #cloudDialog .cloudMetaGrid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:540px){body.reworkUi #cloudDialog,body.reworkUi #protectedLibrary{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:0;margin:0;}body.reworkUi #cloudDialog .dialogHeader{padding:12px;}body.reworkUi #cloudDialog .cloudContent{padding:0 12px 20px;}body.reworkUi #cloudDialog .cloudHeaderTitle{gap:8px;flex-wrap:wrap;}body.reworkUi #cloudDialog .cloudStats{gap:6px;}body.reworkUi #cloudDialog .cloudStat{padding:10px;display:block;}body.reworkUi #cloudDialog .cloudStat b{font-size:16px;}body.reworkUi #cloudDialog .cloudProjectRow{grid-template-columns:24px minmax(0,1fr);padding:12px;}.cloudProjectActions{grid-column:2;}.cloudSectionActions{flex-wrap:wrap;}body.reworkUi #cloudDialog .cloudMetaGrid{grid-template-columns:1fr;}body.reworkUi #protectedLibrary{padding:0 12px 16px;}.libraryBrand{gap:8px;}.libraryBrand .tehzillaLibraryLogo{width:84px;}body.reworkUi #protectedLibrary h2{font-size:16px;}body.reworkUi #cloudDialog .btn{min-height:40px;}}
/* Appearance settings belong to the application, never the project payload. */
.annotationSettings{display:grid;gap:16px;}.annotationSettings p{margin:0;color:var(--text-secondary);line-height:1.5;font-size:13px;}.contrastSwatches{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;}.contrastSwatches button{min-height:40px;background:var(--bg-elevated);border:0;border-radius:6px;position:relative;display:grid;place-items:center;}.contrastSwatches button>span{width:18px;height:18px;background:var(--swatch);border-radius:50%;}.contrastSwatches button[aria-pressed="true"]::after{content:'';position:absolute;left:5px;top:calc(50% - 8px);width:4px;height:16px;border-radius:1px;background:var(--text-main);}.contrastCustom{display:grid;grid-template-columns:46px minmax(0,1fr);gap:8px;align-items:center;}.contrastCustom input[type="color"]{width:46px;height:40px;padding:4px;border:0;background:var(--bg-elevated);border-radius:6px;}.contrastPreview{padding:18px;background:#121212;border-radius:8px;color:white;display:flex;align-items:center;justify-content:center;gap:0;}.contrastPreview .demoDot{width:10px;height:10px;background:var(--contrast-preview);border-radius:50%;}.contrastPreview .demoLine{width:26px;height:var(--contrast-leader,2px);background:var(--contrast-preview);}.contrastPreview .demoPlate{border:var(--contrast-outline,1px) solid var(--contrast-preview);padding:8px 10px;border-radius:6px;background:#242424;}.demoPlate i{display:inline-block;width:3px;height:12px;background:#f97316;margin-right:8px;}

.phoneSettings{margin-top:18px;}.phoneSettings>summary{padding:12px;cursor:pointer;font-weight:600;}.phoneSettings .annotationSettings{padding:12px;}

#libraryList[aria-busy="true"]:before{content:'';display:block;width:24px;height:24px;margin:24px auto;border:3px solid var(--bg-elevated);border-top-color:var(--text-main);border-radius:50%;animation:cloudSpin .8s linear infinite;}@media(prefers-reduced-motion:reduce){#libraryList[aria-busy="true"]:before{animation:none;}}

body.reworkUi #cloudDialog .cloudLibraryHeader{flex-direction:row;align-items:center;}

.contrastWidths{display:grid;gap:12px;}.contrastWidths h3{margin:8px 0 0;}.contrastWidthField{display:grid;gap:8px;}.contrastWidthControls{display:grid;grid-template-columns:minmax(0,1fr) 72px auto;gap:10px;align-items:center;}.contrastWidthControls input[type="range"]{width:100%;min-width:0;margin:0;}.contrastWidthControls input[type="number"]{width:100%;min-width:0;}.contrastWidthControls>span{color:var(--text-secondary);font-size:12px;}

#markerExtraControls{display:grid;gap:10px;}#markerExtraControls .field{margin:0;}.shapeOptions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px;}.shapeRange{display:grid;grid-template-columns:minmax(0,1fr) 76px auto;align-items:center;gap:8px;}.shapeRange .input{min-width:0;width:100%;}.shapeRange span{color:var(--text-secondary);font-size:12px;}#traceColorMenu{position:relative;margin-top:8px;}#traceColorMenu>summary{display:flex;align-items:center;gap:8px;padding:10px;background:var(--bg-elevated);border-radius:6px;cursor:pointer;list-style:none;}#traceColorPreview,.traceColorChoice i{display:block;width:18px;height:18px;border-radius:50%;flex:none;}.traceColorChoices{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;padding:10px 0;}.traceColorChoice{min-width:0;padding:8px;display:grid;place-items:center;}.traceCustomColor{display:flex;align-items:center;justify-content:space-between;gap:8px;}#traceColorMenu[open]{grid-column:1/-1;}

.traceProperties{display:grid;grid-template-columns:minmax(0,1fr) 100px;align-items:start;}.traceProperties>div{min-width:0;margin-top:14px;color:var(--text-secondary);font-size:13px;}.traceColorPopup{position:absolute;z-index:30;top:calc(100% + 6px);left:0;width:calc(100% + 108px);max-width:calc(100vw - 40px);padding:12px;border-radius:8px;background:var(--bg-panel);}.traceColorChoices{padding-top:0;}#tracePanel .traceCustomColor{display:flex;margin:0;}#traceColor{width:64px;height:34px;margin:0;}

body.reworkUi .markerShapeBtn{border:0;box-shadow:none;background:var(--bg-elevated);color:var(--text-main);}body.reworkUi #markerShapeGrid .markerShapeBtn:is(.active,[aria-pressed="true"],:focus-visible){border:0;outline:none;background-image:none!important;box-shadow:inset 3px 0 var(--accent)!important;color:var(--text-main);}

/* Textarea focus belongs beside the first line, not the blank middle. */
body.reworkUi textarea:focus-visible{background-position:8px 14px!important;}
.connectionColorMenu{position:relative;min-width:110px;}
.connectionColorMenu summary{padding:8px;cursor:pointer;display:flex;align-items:center;gap:8px;}
.connectionColorMenu summary i{width:14px;height:14px;border-radius:3px;background:var(--connection-color,#fff);}
.connectionPalette{display:flex;flex-wrap:wrap;gap:6px;padding:8px;background:var(--bg-panel);}
.connectionPalette button{min-width:32px;min-height:32px;}
.connectionPalette button i{display:block;width:18px;height:18px;background:var(--swatch);border-radius:3px;}
.connectionPalette label{display:flex;align-items:center;gap:8px;}
body.reworkUi #readyDownloadDialog{width:min(560px,calc(100vw - 32px));max-width:calc(100vw - 32px);padding:20px;border-radius:10px;}
body.reworkUi #readyDownloadDialog h2{margin:0 0 12px;}
body.reworkUi #readyDownloadDialog p{margin:0 0 12px;overflow-wrap:anywhere;}
body.reworkUi #readyDownloadDialog .dialogActions{margin:16px 0 0;padding:12px 0 0;border:0;background:transparent;}
body.reworkUi .connectionColorMenu summary{padding-left:22px;}
body.reworkUi #protectedLibraryBtn>.tehzillaProWordmark{display:inline-flex;gap:0;flex:none;}
body.reworkUi #protectedLibraryBtn .tehzillaProWordmark>span{display:inline;}
@media(max-width:540px){
 .libraryBrand{flex-wrap:wrap;gap:4px;}
 .libraryBrand h2{flex-basis:100%;}
 .libraryBrand .tehzillaProWordmark{font-size:18px;}
 body.reworkUi #protectedLibraryBtn{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;}
 body.reworkUi #protectedLibraryBtn>.tehzillaProWordmark{grid-column:1/-1;font-size:18px;}
}

/* Shared merge choices expose both source names/colors and permit custom values. */
.mergeChoices{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 16px;}
.mergeChoices .btn{padding-left:22px;display:inline-flex;gap:8px;align-items:center;max-width:100%;white-space:normal;overflow-wrap:anywhere;}
.mergeColorDot{display:inline-block;width:16px;height:16px;flex:0 0 16px;border-radius:50%;}
#selectionSignalDialog,#traceSignalMergeDialog{width:min(520px,calc(100vw - 32px));padding:20px;}
#selectionSignalDialog label,#traceSignalMergeDialog label{display:block;margin-top:12px;}
#selectionSignalDialog .input,#traceSignalMergeDialog .input{width:100%;}
#selectionSignalDialog .connectionPalette{margin-top:12px;}

#selectionSignalDialog input[type="color"],#traceSignalMergeDialog input[type="color"]{width:44px;height:32px;padding:3px;border:0;border-radius:6px;background:var(--bg-elevated);}

body.reworkUi .workspace.multiSelecting :is(#activeImagePill,#coords){display:none;}
body.reworkUi .pointMergeOffer{min-width:0;max-width:100%;flex-wrap:wrap;}
body.reworkUi .workspace.multiSelecting .pointMergeOffer{width:100%;margin-left:0;}
body.reworkUi .pointMergeOffer>span{flex:1 1 160px;}

.exportImageSettings{margin-top:24px;}.exportImageSettings .field{display:grid;gap:8px;}
