.canvas-header {
  padding: 10px;
  border: 1px solid transparent;
  border-radius: 5px;
  cursor: pointer;
}

.canvas-header:hover,
.canvas-header.selected {
  border-color: #a9a2f7;
  background: rgba(255, 255, 255, .72);
}

.canvas-header.selected { box-shadow: 0 0 0 2px rgba(101, 88, 232, .1); }

.canvas-header [contenteditable="true"] {
  outline: 2px solid var(--purple);
  outline-offset: 3px;
  background: rgba(255, 255, 255, .9);
  border-radius: 2px;
  cursor: text;
}

.header-setting { margin-top: 18px; }
.edit-hint { color: #9297a5; font-size: 10px; line-height: 1.6; margin: 0; }

.helper-text {
  color: #858b9a;
  font-size: 11px;
  line-height: 1.45;
  margin: -7px 0 10px;
}

.image-frame {
  align-items: center;
  background: #f5f4fb;
  border: 1px dashed #c9c6e7;
  border-radius: 5px;
  color: #7b76ad;
  display: flex;
  font-size: 11px;
  justify-content: center;
  min-height: 150px;
  overflow: hidden;
  position: relative;
}

.image-frame img { display: block; height: 100%; max-height: 300px; object-fit: cover; width: 100%; }
.image-frame .drawing-canvas { cursor: crosshair; height: 100%; inset: 0; position: absolute; touch-action: none; width: 100%; z-index: 1; }
.drawing-toolbar { align-items: center; background: #fff; border: 1px solid #ddddeb; border-radius: 7px; box-shadow: 0 7px 18px rgba(27, 32, 55, .14); display: flex; gap: 6px; padding: 6px; position: absolute; right: -211px; top: 12px; z-index: 3; }
.drawing-toolbar.collapsed { right: -39px; }
.drawing-toolbar-panel { align-items: center; display: flex; gap: 7px; max-width: 210px; opacity: 1; overflow: hidden; transition: max-width .2s ease, max-height .2s ease, opacity .15s ease; }
.drawing-toolbar.collapsed .drawing-toolbar-panel { max-width: 0; opacity: 0; pointer-events: none; }
.drawing-toolbar-actions { align-items: center; display: flex; flex: none; gap: 4px; }
.drawing-undo,.drawing-redo { align-items: center; background: #f5f4ff; border: 0; border-radius: 4px; color: var(--purple); cursor: pointer; display: flex; font-size: 15px; height: 26px; justify-content: center; padding: 0; width: 26px; }.drawing-undo:disabled,.drawing-redo:disabled { color: #bfc1cc; cursor: not-allowed; }
.drawing-tool { align-items: center; display: flex; gap: 6px; }
.drawing-toolbar.vertical { align-items: center; flex-direction: column; right: -96px; }
.drawing-toolbar.vertical .drawing-toolbar-actions { flex-direction: column; }
.drawing-toolbar.vertical .drawing-toolbar-panel { align-items: center; flex-direction: column; max-height: 190px; max-width: 40px; }
.drawing-toolbar.vertical.collapsed .drawing-toolbar-panel { max-height: 0; }
.drawing-toolbar.vertical .drawing-tool { flex-direction: column; }
.drawing-toolbar.vertical input[type="range"] { direction: rtl; height: 72px; width: 24px; writing-mode: vertical-lr; }
.drawing-toolbar label { color: #727789; font-family: 'DM Mono'; font-size: 8px; }.drawing-toolbar input[type="color"] { background: none; border: 0; height: 21px; padding: 0; width: 24px; }.drawing-toolbar input[type="range"] { accent-color: var(--purple); width: 62px; }
.toolbar-alignment { align-items: center; background: #f5f4ff; border: 0; border-radius: 4px; color: var(--purple); cursor: pointer; display: flex; font-size: 14px; height: 24px; justify-content: center; padding: 0; width: 24px; }.toolbar-alignment:hover { background: #e9e7ff; }
.drawing-toolbar-toggle { align-items: center; background: var(--purple); border: 0; border-radius: 4px; color: #fff; cursor: pointer; display: flex; flex: none; font-size: 14px; height: 26px; justify-content: center; padding: 0; width: 26px; }.drawing-toolbar-toggle:hover { filter: brightness(.94); }
.toolbar-grip { color: #a5a9b6; cursor: move; font-size: 15px; letter-spacing: -4px; line-height: 1; padding: 0 3px 0 0; user-select: none; }
.drawing-toolbar:not(.collapsed):before { color: #a5a9b6; content: '⠿'; cursor: move; font-size: 15px; letter-spacing: -4px; line-height: 1; padding-right: 3px; }
.icon-btn:disabled { color: #d2d4dc; cursor: not-allowed; }
.element-item[draggable="true"] { cursor: grab; }.element-item.dragging { opacity: .45; }
.element-item em { font-family: 'DM Mono'; font-size: 15px; letter-spacing: -4px; transform: rotate(90deg); }
.element-item > span:not(.element-icon) { flex:1 1 0; min-width:0; }
.element-item > span:not(.element-icon) :is(b,small) { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.element-item em.add-element { box-sizing:border-box; flex:0 0 22px; min-width:22px; min-height:22px; margin-left:0; padding:0; line-height:1; }
.element-item em.add-element { position:relative; color:transparent!important; }
.element-item em.add-element::before,.element-item em.add-element::after { content:''; position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); background:var(--purple); border-radius:1px; }
.element-item em.add-element::before { width:10px; height:2px; }
.element-item em.add-element::after { width:2px; height:10px; }
.element-item em.add-element { align-items: center; border: 1px solid #dedfe8; border-radius: 4px; color: var(--purple); cursor: pointer; display: flex; font-family: 'Plus Jakarta Sans'; font-size: 16px; height: 22px; justify-content: center; letter-spacing: 0; opacity: 1; transform: none; width: 22px; }.element-item em.add-element:hover { background: #eeecff; }
.form-canvas.drop-ready { box-shadow: 0 0 0 3px rgba(101, 88, 232, .25), var(--shadow); }
.grid-snap-toggle { align-items: center; background: #fff; border: 1px solid var(--line); border-radius: 6px; color: #747a8c; cursor: pointer; display: flex; font: 600 10px 'Plus Jakarta Sans'; gap: 5px; height: 28px; margin-left: auto; margin-right: 9px; padding: 0 10px; }.grid-snap-toggle span { font: 15px 'DM Mono'; }.grid-snap-toggle[aria-pressed="true"] { background: #eeecff; border-color: #b7b1f2; color: var(--purple); }
.grid-snap-toggle + .canvas-controls { margin-left: 0; }
body:not(.preview-mode) .form-canvas.snap-grid:after { background-image: linear-gradient(to right,rgba(101,88,232,.12) 1px,transparent 1px),linear-gradient(to bottom,rgba(101,88,232,.12) 1px,transparent 1px); background-size: 16px 16px; content: ''; inset: 0; pointer-events: none; position: absolute; z-index: 0; }
.form-canvas.snap-grid .canvas-header,.form-canvas.snap-grid .canvas-element { z-index: 1; }
.drag-preview { background: #fffefb; border: 1px solid #a9a2f7; border-radius: 5px; box-shadow: 0 12px 28px rgba(34, 38, 65, .18); color: #303548; font: 11px 'Plus Jakarta Sans'; padding: 12px; pointer-events: none; position: fixed; width: 250px; z-index: 20; }.drag-preview b { display: block; font-size: 12px; margin-bottom: 10px; }.drag-preview .preview-line { background: #ececf2; border-radius: 3px; height: 27px; }.drag-preview .preview-lines { display: grid; gap: 7px; }.drag-preview .preview-choice { align-items: center; display: flex; gap: 7px; margin: 7px 0; }.drag-preview .preview-choice:before { border: 1px solid #a9adba; border-radius: 50%; content: ''; height: 10px; width: 10px; }.drag-preview .preview-image { align-items: center; background: #f2f1fb; color: #7772a9; display: flex; height: 90px; justify-content: center; }
.canvas-element { cursor: grab; }.canvas-element:active { cursor: grabbing; }.canvas-element input,.canvas-element textarea,.canvas-element select,.canvas-element button,.canvas-element [contenteditable="true"] { cursor: auto; }
.canvas-header { cursor: grab; }.canvas-header:active { cursor: grabbing; }.canvas-header [contenteditable="true"] { cursor: text; }
.canvas-element .drag-handle { display: none !important; }
.template-library { align-items: center; background: rgba(28, 31, 47, .45); display: flex; inset: 0; justify-content: center; padding: 24px; position: fixed; z-index: 12; }.template-library.hidden { display: none; }.template-library-card { background: #fff; border-radius: 12px; box-shadow: 0 28px 80px rgba(19, 23, 42, .25); max-width: 600px; padding: 25px; width: 100%; }.template-list { display: grid; gap: 9px; max-height: 420px; overflow-y: auto; }.template-card { align-items: center; background: #fbfbfd; border: 1px solid #e8e8ef; border-radius: 7px; display: flex; padding: 13px; }.template-card button:not(.template-remove) { background: transparent; border: 0; color: #31374a; cursor: pointer; font: 600 12px 'Plus Jakarta Sans'; text-align: left; width: 100%; }.template-card small { color: #9095a3; display: block; font-size: 10px; font-weight: 400; margin-top: 4px; }.template-remove { background: transparent; border: 0; color: #b4b7c0; cursor: pointer; font-size: 16px; }.template-empty { color: #9297a5; font-size: 12px; padding: 35px 0; text-align: center; }
.workspace-link { background: none; border: 0; color: #a0a4b1; cursor: pointer; font: inherit; padding: 0; }.workspace-link:hover { color: var(--purple); }.template-library-card { max-width: 760px; }.template-list { grid-template-columns: repeat(3, 1fr); gap: 12px; }.template-card { align-items: flex-start; min-height: 125px; padding: 14px; position: relative; }.template-card:before { background: linear-gradient(135deg,#eeeaff,#f9f8ff); border-radius: 4px; content: ''; height: 48px; left: 14px; position: absolute; right: 14px; top: 14px; }.template-card button:not(.template-remove) { padding-top: 60px; position: relative; z-index: 1; }.template-remove { position: absolute; right: 7px; top: 5px; z-index: 2; }
body.preview-mode .left-panel,body.preview-mode .right-panel,body.preview-mode .workspace-toolbar,body.preview-mode .quick-delete,body.preview-mode .resize-handle { display: none !important; }body.preview-mode .app-shell { grid-template-columns: 1fr; }body.preview-mode .topbar { grid-column: 1; }body.preview-mode .canvas-area { background: #f5f5f8; padding-top: 55px; }body.preview-mode .canvas-element,body.preview-mode .canvas-element:hover,body.preview-mode .canvas-element.selected,body.preview-mode .canvas-header,body.preview-mode .canvas-header:hover,body.preview-mode .canvas-header.selected { background: transparent !important; border-color: transparent !important; box-shadow: none !important; cursor: default; }body.preview-mode .form-canvas { box-shadow: 0 18px 50px rgba(33,38,66,.11); }
body.preview-mode .top-actions > :not(#previewBtn):not(#publishBtn):not(#highlightFieldsBtn):not(.account-menu),body.preview-mode .breadcrumb { display: none; }body.preview-mode .top-actions { margin-left: auto; }body:not(.preview-mode) #publishBtn { display: none; }
body.preview-mode:not(.form-draft) #publishBtn { display: none; }
.preview-workspace-back { align-items: center; background: transparent; border: 0; border-radius: 6px; color: #626879; cursor: pointer; display: none; font: 600 11px 'Plus Jakarta Sans'; gap: 6px; margin-right: 18px; padding: 8px 9px; }.preview-workspace-back:hover { background: #f3f2fb; color: var(--purple); }body.preview-mode .preview-workspace-back { display: flex; }body.preview-mode .preview-workspace-back + .brand { width: auto; }
.workspace-view { background: #f7f7fa; min-height: 100vh; }.workspace-view.hidden { display: none; }.workspace-top { align-items: center; background: #fff; border-bottom: 1px solid #e9eaf0; display: flex; height: 64px; padding: 0 28px; }.workspace-top .brand { width: auto; }.workspace-top > span { color: #777d8d; font-size: 12px; margin-left: 25px; padding-left: 25px; position: relative; }.workspace-top > span:before { background: #e4e5ea; content: ''; height: 19px; left: 0; position: absolute; top: -3px; width: 1px; }.workspace-gallery { margin: 0 auto; max-width: 1120px; padding: 60px 32px; }.workspace-title h1 { font-size: 32px; letter-spacing: -1px; margin: 10px 0 8px; }.workspace-title p { color: #7c8291; font-size: 13px; margin: 0; }.workspace-tiles { display: grid; gap: 20px; grid-template-columns: repeat(auto-fill,minmax(240px,1fr)); margin-top: 34px; }.workspace-tile { background: #fff; border: 1px solid #e6e7ed; border-radius: 9px; box-shadow: 0 7px 20px rgba(34,38,65,.05); cursor: pointer; overflow: hidden; padding: 0; text-align: left; transition: transform .18s,box-shadow .18s; }.workspace-tile:hover { box-shadow: 0 12px 28px rgba(34,38,65,.12); transform: translateY(-3px); }.tile-preview { background: #ececf2; height: 150px; overflow: hidden; position: relative; }.thumbnail-paper { background: #fffefb; height: 780px; pointer-events: none; position: absolute; transform: scale(.32); transform-origin: top left; width: 640px; }.tile-info { padding: 14px; }.tile-info b { color: #343a4d; font-size: 12px; }.tile-info small { color: #9297a5; display: block; font-size: 10px; margin-top: 5px; }.workspace-empty { color: #9297a5; font-size: 13px; grid-column: 1/-1; padding: 60px 0; text-align: center; }
.workspace-top select { border: 0; border-left: 1px solid #e4e5ea; color: #555b6c; font: 600 12px 'Plus Jakarta Sans'; margin-left: 25px; outline: 0; padding: 5px 28px 5px 16px; }.rename-workspace,.new-workspace { background: transparent; border: 0; color: #7d8291; cursor: pointer; font: 12px 'Plus Jakarta Sans'; }.rename-workspace { font-size: 15px; margin-left: 2px; }.new-workspace { border-left: 1px solid #e4e5ea; display: none; padding-left: 18px; }.workspace-view.choosing .new-workspace { display: block; margin-left: auto; }
.all-workspaces { background: transparent; border: 0; color: #7d8291; cursor: pointer; font: 12px 'Plus Jakarta Sans'; margin-left: 22px; }.workspace-view.choosing .all-workspaces,.workspace-view.choosing #workspaceSelector,.workspace-view.choosing .rename-workspace { display: none; }
.workspace-settings-btn { background: #fff; border: 1px solid #dedfe7; border-radius: 6px; color: #676d7d; cursor: pointer; font: 600 11px 'Plus Jakarta Sans'; padding: 9px 11px; position: absolute; right: 135px; top: 5px; }.workspace-view.choosing .workspace-settings-btn { display: none; }.workspace-customizer { background: #fff; border: 1px solid #e5e6ed; border-radius: 8px; box-shadow: 0 10px 24px rgba(34,38,65,.08); display: grid; gap: 7px; margin: 21px 0 -8px; max-width: 470px; padding: 14px; }.workspace-customizer.hidden { display: none; }.workspace-customizer label { color: #848a99; font: 9px 'DM Mono'; letter-spacing: .7px; }.workspace-customizer textarea { border: 1px solid #e0e1e8; border-radius: 5px; font: 11px 'Plus Jakarta Sans'; height: 56px; outline: none; padding: 8px; resize: none; }.workspace-customizer input { height: 28px; width: 48px; }.workspace-title h1 { color: var(--workspace-color,var(--purple)); }.workspace-choice { border-top: 3px solid var(--tile-color,var(--purple)); }
.workspace-settings-btn { display: none; }.workspace-choice { border-left: 5px solid var(--tile-color,var(--purple)); }.workspace-menu-description { color: #848a99; display: grid; font: 9px 'DM Mono'; gap: 5px; letter-spacing: .5px; padding: 7px 8px 4px; }.workspace-menu-description textarea { border: 1px solid #e1e2e9; border-radius: 4px; font: 10px 'Plus Jakarta Sans'; height: 42px; outline: none; padding: 5px; resize: none; width: 100%; }
.workspace-choice { border-left-color: var(--tile-color,var(--purple)) !important; box-shadow: inset 5px 0 0 var(--tile-color,var(--purple)),0 7px 20px rgba(34,38,65,.05); }.workspace-choice:hover { box-shadow: inset 5px 0 0 var(--tile-color,var(--purple)),0 12px 28px rgba(34,38,65,.12); }
.workspace-customizer label:nth-of-type(2),.workspace-customizer #workspaceColor { display: none; }.workspace-menu-color { align-items: center; color: #848a99; display: flex; font: 9px 'DM Mono'; justify-content: space-between; letter-spacing: .5px; padding: 7px 8px 4px; }.workspace-menu-color input { border: 0; height: 22px; padding: 0; width: 28px; }
.workspace-title { position: relative; }.create-new { position: absolute; right: 0; top: 5px; z-index: 12; }.create-new-trigger { align-items: center; background: var(--workspace-color,var(--purple)); border: 0; border-radius: 6px; color: #fff; cursor: pointer; display: flex; font: 600 11px 'Plus Jakarta Sans'; padding: 10px 13px; transition: filter .18s ease,transform .18s ease; }.create-new-trigger:hover { filter: brightness(.92); transform: translateY(-1px); }.create-new-menu { background: #fff; border: 1px solid #e1e3e9; border-radius: 9px; box-shadow: 0 14px 34px rgba(34,38,65,.16); display: grid; gap: 3px; opacity: 0; padding: 6px; pointer-events: none; position: absolute; right: 0; top: calc(100% + 8px); transform: translateY(-8px) scale(.97); transform-origin: top right; transition: opacity .18s ease,transform .22s cubic-bezier(.2,.8,.2,1),visibility .18s; visibility: hidden; width: 220px; }.create-new.open .create-new-menu { opacity: 1; pointer-events: auto; transform: translateY(0) scale(1); visibility: visible; }.create-new-menu button { background: transparent; border: 0; border-radius: 6px; color: #353b4c; cursor: pointer; display: grid; font-family: 'Plus Jakarta Sans'; gap: 2px 9px; grid-template-columns: 30px 1fr; padding: 10px; text-align: left; }.create-new-menu button:hover,.create-new-menu button:focus-visible { background: color-mix(in srgb,var(--workspace-color,var(--purple)) 9%,white); outline: none; }.create-new-menu button > span { align-items: center; color: var(--workspace-color,var(--purple)); display: flex; font-size: 18px; grid-row: 1/3; justify-content: center; }.create-new-menu b { font-size: 11px; }.create-new-menu small { color: #8a909d; font-size: 9px; }
.workspace-chooser { margin: 0 auto; max-width: 850px; padding: 92px 32px; }.workspace-chooser.hidden { display: none; }.workspace-chooser h1 { font-size: 34px; letter-spacing: -1px; margin: 10px 0 8px; }.workspace-chooser > p { color: #7c8291; font-size: 13px; margin: 0; }.workspace-choice-grid { display: grid; gap: 15px; grid-template-columns: repeat(auto-fill,minmax(210px,1fr)); margin-top: 34px; }.workspace-choice { background: #fff; border: 1px solid #e5e6ec; border-radius: 8px; color: #3e4558; cursor: pointer; font: 600 13px 'Plus Jakarta Sans'; min-height: 118px; padding: 18px; text-align: left; transition: .18s; }.workspace-choice:hover { border-color: #aaa4ed; box-shadow: 0 10px 24px rgba(34,38,65,.09); transform: translateY(-2px); }.workspace-choice small { color: #9398a5; display: block; font-size: 10px; font-weight: 400; margin-top: 8px; }.workspace-choice.new { align-items: center; border-style: dashed; color: var(--purple); display: flex; justify-content: center; text-align: center; }
.workspace-choice { padding: 0; position: relative; }.workspace-choice-open { background: transparent; border: 0; color: #3e4558; cursor: pointer; font: 600 13px 'Plus Jakarta Sans'; min-height: 118px; padding: 18px; text-align: left; width: 100%; }.workspace-choice-menu { background: transparent; border: 0; color: #747a8a; cursor: pointer; font-size: 17px; position: absolute; right: 8px; top: 7px; }.workspace-choice-panel { background: #fff; border: 1px solid #e5e6ed; border-radius: 6px; box-shadow: 0 8px 20px rgba(33,38,66,.15); display: none; padding: 4px; position: absolute; right: 8px; top: 34px; width: 105px; z-index: 3; }.workspace-choice.menu-open .workspace-choice-panel { display: block; }.workspace-choice-panel button { background: none; border: 0; border-radius: 4px; color: #565c6d; cursor: pointer; font: 11px 'Plus Jakarta Sans'; padding: 8px; text-align: left; width: 100%; }.workspace-choice-panel button:hover { background: #f4f3ff; }.workspace-choice-panel button[data-workspace-action="delete"] { color: #cf5e5b; }.workspace-choice[draggable="true"] { cursor: grab; }.workspace-choice.choice-dragging { opacity: .42; }.workspace-choice.choice-drop-target { outline: 2px solid var(--purple); outline-offset: 3px; }
.palette-info { background: #f7f6ff; border-radius: 7px; color: #5f6678; font-size: 11px; line-height: 1.65; padding: 13px; }.palette-info b { color: #33394b; display: block; font-size: 13px; margin-bottom: 5px; }.palette-info p { margin: 0; }.palette-info small { color: #9196a5; display: block; margin-top: 13px; }
.workspace-tile { text-align: left; }.workspace-tile > img { display: block; height: 178px; object-fit: cover; width: 100%; }.workspace-tile .tile-preview,.workspace-tile .tile-info { display: none; }
.workspace-tile { position: relative; }.workspace-open { background: transparent; border: 0; cursor: pointer; display: block; padding: 0; width: 100%; }.workspace-open img { display: block; height: 178px; object-fit: cover; width: 100%; }.tile-menu { align-items: center; background: rgba(255,255,255,.92); border: 0; border-radius: 5px; color: #616778; cursor: pointer; display: flex; font-size: 18px; height: 27px; justify-content: center; line-height: 1; position: absolute; right: 8px; top: 8px; width: 28px; }.tile-menu:hover { background: #fff; }.tile-menu-panel { background: #fff; border: 1px solid #e6e6ed; border-radius: 6px; box-shadow: 0 8px 20px rgba(33,38,66,.15); display: none; padding: 4px; position: absolute; right: 8px; top: 39px; width: 135px; z-index: 3; }.workspace-tile.menu-open .tile-menu-panel { display: block; }.tile-menu-panel button { background: none; border: 0; border-radius: 4px; color: #505668; cursor: pointer; font: 11px 'Plus Jakarta Sans'; padding: 8px; text-align: left; width: 100%; }.tile-menu-panel button:hover { background: #f4f3ff; }.tile-menu-panel button[data-action="delete"] { color: #cf5e5b; }
.workspace-tile[draggable="true"] { cursor: grab; }.workspace-tile.tile-dragging { opacity: .42; }.workspace-tile.tile-drop-target { outline: 2px solid var(--purple); outline-offset: 3px; }
.toast.toast-top { bottom: auto; top: 24px; transform: translate(-50%,-20px); }.toast.toast-top.show { transform: translate(-50%,0); }
.toast { z-index: 50; }.workspace-tile .tile-name { color: #3d4355; display: block; font: 600 12px 'Plus Jakarta Sans'; padding: 11px 12px 12px; }
.drawing-controls { background: #f7f6ff; border-radius: 7px; margin-top: 16px; padding: 11px; }
.drawing-controls .check-row { margin: 0 0 12px; }.drawing-controls .check-row:last-child { margin-bottom: 0; }
.brush-row { align-items: center; display: flex; gap: 10px; }.brush-row label { color: #73798a; font-size: 10px; min-width: 38px; }.brush-row input[type="color"] { background: transparent; border: 0; height: 24px; padding: 0; width: 29px; }.brush-row input[type="range"] { accent-color: var(--purple); width: 100%; }
.toolbar-layout-label { margin-top: 13px; }
.image-frame.has-image { background: transparent; border-style: solid; }
.canvas-element[data-type="image"] .image-frame { height: 100%; min-height: 0; }
.upload-button { cursor: pointer; display: block; margin-bottom: 15px; }
.upload-button input { display: none; }

.resize-handle {
  background: linear-gradient(135deg, transparent 0 35%, var(--purple) 36% 48%, transparent 49% 58%, var(--purple) 59% 71%, transparent 72%);
  bottom: -7px;
  cursor: nwse-resize;
  display: none;
  height: 16px;
  position: absolute;
  right: -7px;
  width: 16px;
  z-index: 2;
}

.canvas-element:hover .resize-handle,
.canvas-element.selected .resize-handle { display: block; }
:is(.canvas-element,.editable-region)[data-font-size],:is(.canvas-element,.editable-region)[data-font-size] :is(label,input,textarea,select,button,p,h1,h2,h3,span,small,output,strong,b,em,a,td,th) { font-size:var(--element-font-size)!important; }
:is(.canvas-element,.editable-region)[data-font-weight],:is(.canvas-element,.editable-region)[data-font-weight] :is(label,input,textarea,select,button,p,h1,h2,h3,span,small,output,strong,b,em,a,td,th) { font-weight:var(--element-font-weight)!important; }
:is(.canvas-element,.editable-region)[data-font-style],:is(.canvas-element,.editable-region)[data-font-style] :is(label,input,textarea,select,button,p,h1,h2,h3,span,small,output,strong,b,em,a,td,th) { font-style:var(--element-font-style)!important; }
:is(.canvas-element,.editable-region)[data-font-color],:is(.canvas-element,.editable-region)[data-font-color] :is(label,input,textarea,select,button,p,h1,h2,h3,span,small,output,strong,b,em,a,td,th) { color:var(--element-color)!important; }
.canvas-element[data-resized="true"] { min-width:0; min-height:0; }
:is(.canvas-element,.editable-region)[data-font-decoration] :is(label,input,textarea,select,button,p,h1,h2,h3,span,small,output,strong,b,em,a,td,th) { text-decoration-line:var(--element-text-decoration-line)!important; }
.text-style-toggles { display:flex; gap:18px; margin-top:14px; font-size:12px; }
.group-selection-controls button:disabled { opacity:.4; cursor:not-allowed; filter:grayscale(1); }
body.auth-locked > :not(.login-screen):not(.app-watermark):not(.app-update-notice):not(script) { display:none!important; }
body.auth-locked .login-screen { display:flex!important; }
#authStatus { font-size:12px; line-height:1.5; }
.cloud-controls { display:flex; align-items:center; flex-wrap:wrap; gap:8px; padding:10px 24px; background:var(--panel,#fff); border-bottom:1px solid var(--line); font-size:11px; }
.cloud-controls > span { flex:1; min-width:180px; }
.cloud-controls button { padding:6px 10px; border:1px solid var(--line); border-radius:5px; background:var(--panel,#fff); color:var(--ink); cursor:pointer; font:inherit; }
.cloud-controls [hidden] { display:none!important; }
.cloud-editor-status { margin-left:auto; max-width:260px; font-size:10px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.text-style-toggles label { display:flex; align-items:center; gap:5px; cursor:pointer; }
#formCanvas .canvas-element :is(button:not(.quick-delete):not(.has-reading),[role="button"],input[type="button"],input[type="submit"]) { background:var(--button-background,var(--purple))!important; border-color:var(--button-background,var(--purple))!important; color:var(--element-color,#fff)!important; }
/* Keep resized content inside its box, with resize controls still reachable. */
:is(.canvas-element,.editable-region)[data-resized="true"] { overflow:hidden; }
:is(.canvas-element,.editable-region)[data-resized="true"] :is(label,p,h1,h2,h3,button,input,select,output) { min-width:0; max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; box-sizing:border-box; }
:is(.canvas-element,.editable-region)[data-resized="true"] > .resize-handle[data-scale-axis="both"] { right:0; bottom:0; }
:is(.canvas-element,.editable-region)[data-resized="true"] > .resize-handle[data-scale-axis="x"] { right:0; }
:is(.canvas-element,.editable-region)[data-resized="true"] > .resize-handle[data-scale-axis="y"] { bottom:0; }
.canvas-element[data-resized="true"] > .quick-delete { right:0; top:0; }
.canvas-element[data-resized="true"] > .drag-handle { left:0; }
.editable-region:hover > .resize-handle,.pdf-page-background:hover > .resize-handle { display:block; }
.resize-handle[data-scale-axis="x"] { top:50%; bottom:auto; right:-6px; width:10px; height:16px; margin-top:-8px; background:var(--purple); border:2px solid white; border-radius:3px; cursor:ew-resize; }
.resize-handle[data-scale-axis="y"] { left:50%; right:auto; bottom:-6px; width:16px; height:10px; margin-left:-8px; background:var(--purple); border:2px solid white; border-radius:3px; cursor:ns-resize; }

.image-browser { align-items: center; background: rgba(28, 31, 47, .45); display: flex; inset: 0; justify-content: center; padding: 24px; position: fixed; z-index: 10; }
.image-browser.hidden { display: none; }
.image-browser-card { background: #fff; border-radius: 12px; box-shadow: 0 28px 80px rgba(19, 23, 42, .25); max-width: 710px; padding: 25px; width: 100%; }
.image-browser-head { align-items: flex-start; display: flex; justify-content: space-between; }
.image-browser-head h2 { font-size: 21px; letter-spacing: -.5px; margin: 6px 0 18px; }
.image-browser-head button { background: #f3f3f7; border: 0; border-radius: 50%; color: #6e7382; cursor: pointer; font-size: 20px; height: 28px; line-height: 1; width: 28px; }
.image-search { align-items: center; border: 1px solid #dedfe7; border-radius: 6px; display: flex; gap: 8px; padding: 0 10px; }
.image-search span { color: #858b9a; font-size: 19px; }
.image-search input { border: 0; font: 12px 'Plus Jakarta Sans'; height: 38px; outline: 0; width: 100%; }
.image-filters { display: flex; gap: 7px; margin: 14px 0; }
.image-filters button { background: #f5f5f8; border: 0; border-radius: 20px; color: #6d7282; cursor: pointer; font: 11px 'Plus Jakarta Sans'; padding: 7px 11px; }
.image-filters button.active { background: #eceafd; color: var(--purple); font-weight: 700; }
.image-grid { display: grid; gap: 9px; grid-template-columns: repeat(3, 1fr); max-height: 354px; overflow-y: auto; }
.library-image { border: 0; border-radius: 6px; cursor: pointer; height: 112px; overflow: hidden; padding: 0; position: relative; }
.library-image img { height: 100%; object-fit: cover; transition: transform .2s; width: 100%; }
.library-image:hover img { transform: scale(1.06); }.library-image span { background: linear-gradient(transparent,rgba(0,0,0,.65)); bottom: 0; color: white; font-size: 10px; left: 0; padding: 22px 8px 7px; position: absolute; text-align: left; width: 100%; }
.library-note { color: #9297a5; font-size: 10px; margin: 15px 0 0; }
body.preview-mode .drawing-toolbar:before { cursor: default; visibility: hidden; }
.workspace-choice { background-color: #fff; background-image: linear-gradient(var(--tile-color,var(--purple)),var(--tile-color,var(--purple))); background-position: left top; background-repeat: no-repeat; background-size: 5px 100%; border-left: 1px solid #e5e6ec !important; box-shadow: 0 7px 20px rgba(34,38,65,.05); transition: background-size .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease; }
.workspace-choice:hover { background-size: 11px 100%; box-shadow: 0 12px 28px rgba(34,38,65,.12); }
.workspace-folder-section { margin-top: 31px; }.folder-heading { align-items: center; display: flex; margin-bottom: 11px; }.folder-heading button { background: transparent; border: 0; color: var(--workspace-color,var(--purple)); cursor: pointer; font: 600 10px 'Plus Jakarta Sans'; margin-left: auto; }.workspace-folders { display: grid; gap: 11px; grid-template-columns: repeat(auto-fill,minmax(205px,1fr)); }.workspace-folder { align-items: center; background: #fff; border: 1px solid #e5e6ec; border-radius: 8px; display: flex; gap: 11px; min-height: 76px; padding: 13px; }.folder-icon { align-items: center; background: color-mix(in srgb,var(--workspace-color,var(--purple)) 13%,white); border-radius: 6px; color: var(--workspace-color,var(--purple)); display: flex; flex: none; font: 700 9px 'DM Mono'; height: 38px; justify-content: center; width: 42px; }.workspace-folder b,.workspace-folder small,.workspace-folder em { display: block; }.workspace-folder b { color: #3e4455; font-size: 11px; }.workspace-folder small { color: #9398a5; font-size: 9px; margin-top: 3px; }.workspace-folder em { color: #a1a5b1; font-size: 8px; font-style: normal; margin-top: 5px; max-width: 145px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.workspace-tiles { margin-top: 24px; }.button-action-note { margin-top: 8px; }
.workspace-spotlight { margin-top: 31px; }.workspace-spotlight.hidden { display: none; }.spotlight-heading { align-items: baseline; display: flex; gap: 9px; margin-bottom: 11px; }.spotlight-heading small { color: #a0a5b1; font: 8px 'DM Mono'; letter-spacing: .7px; }.spotlight-list { display: grid; gap: 12px; grid-template-columns: repeat(auto-fill,minmax(245px,1fr)); }.spotlight-card { background: #fff; border: 1px solid color-mix(in srgb,var(--workspace-color,var(--purple)) 30%,#d2d4dd); border-radius: 9px; box-shadow: 0 4px 14px rgba(31,36,55,.08); min-height: 82px; overflow: hidden; position: relative; }.spotlight-card:before { background: var(--workspace-color,var(--purple)); content: ''; inset: 0 auto 0 0; position: absolute; width: 4px; }.spotlight-open { align-items: center; background: transparent; border: 0; cursor: pointer; display: flex; gap: 12px; padding: 10px 38px 10px 13px; text-align: left; width: 100%; }.spotlight-open img { border: 1px solid #e0e2e8; border-radius: 4px; height: 60px; object-fit: cover; width: 88px; }.spotlight-open b,.spotlight-open small { display: block; }.spotlight-open b { color: #3d4355; font: 700 11px 'Plus Jakarta Sans'; }.spotlight-open small { color: #969ba8; font: 9px 'Plus Jakarta Sans'; margin-top: 5px; }.spotlight-remove { background: transparent; border: 0; border-radius: 4px; color: #8d929f; cursor: pointer; font-size: 17px; line-height: 1; padding: 4px 7px; position: absolute; right: 7px; top: 7px; }.spotlight-remove:hover { background: #f0eff5; color: #bf5656; }
.workspace-gallery > .workspace-tiles { display: none; }
.workspace-folder { position: relative; }.folder-delete { align-items: center; background: transparent; border: 0; border-radius: 50%; color: #a3a7b2; cursor: pointer; display: flex; font-size: 16px; height: 25px; justify-content: center; margin-left: auto; opacity: 0; width: 25px; }.workspace-folder:hover .folder-delete,.folder-delete:focus-visible { opacity: 1; }.folder-delete:hover { background: #fff0ef; color: #c95757; }
.workspace-folder { flex-wrap: wrap; }.folder-open { align-items: center; background: transparent; border: 0; color: inherit; cursor: pointer; display: flex; flex: 1; gap: 11px; min-width: 0; padding: 0; text-align: left; }.folder-open > span:last-child { min-width: 0; }.folder-open[aria-expanded="true"] .folder-icon { box-shadow: 0 0 0 2px color-mix(in srgb,var(--workspace-color,var(--purple)) 30%,transparent); }.folder-contents { border-top: 1px solid #ececf1; flex-basis: 100%; margin-top: 2px; padding-top: 8px; }.folder-contents.hidden { display: none; }.folder-contents a,.folder-placeholder { align-items: center; border-radius: 5px; color: #4b5263; display: grid; font-size: 9px; gap: 2px 8px; grid-template-columns: 34px 1fr auto; padding: 8px; text-decoration: none; }.folder-contents a:hover { background: #f3f2fb; color: var(--workspace-color,var(--purple)); }.folder-contents a > span,.folder-placeholder > span { color: var(--workspace-color,var(--purple)); font: 700 8px 'DM Mono'; grid-row: 1/3; }.folder-contents a small,.folder-placeholder small { color: #989da9; font-size: 8px; }.folder-contents p { color: #989da9; font-size: 9px; margin: 5px 8px; }
.folder-file { align-items: center; border-radius: 5px; display: flex; gap: 5px; padding: 5px 6px; }.folder-file:hover { background: #f3f2fb; }.folder-file-info { align-items: center; display: grid; flex: 1; font-size: 9px; gap: 2px 8px; grid-template-columns: 34px 1fr; min-width: 0; }.folder-file-info > span { color: var(--workspace-color,var(--purple)); font: 700 8px 'DM Mono'; grid-row: 1/3; }.folder-file-info b { color: #4b5263; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.folder-file-info small { color: #989da9; font-size: 8px; }.folder-view,.folder-download { background: #fff; border: 1px solid #dedfe6; border-radius: 5px; color: #555c6d; cursor: pointer; font: 700 8px 'DM Sans'; padding: 6px 8px; text-decoration: none; }.folder-view:hover,.folder-download:hover { border-color: var(--workspace-color,var(--purple)); color: var(--workspace-color,var(--purple)); }.folder-item-delete { align-items: center; background: transparent; border: 0; border-radius: 50%; color: #a3a7b2; cursor: pointer; display: flex; flex: 0 0 25px; font-size: 16px; height: 25px; justify-content: center; opacity: 0; }.folder-file:hover .folder-item-delete,.folder-item-delete:focus-visible { opacity: 1; }.folder-item-delete:hover { background: #fff0ef; color: #c95757; }
.pdf-viewer { align-items: center; background: rgba(18,22,33,.62); display: flex; inset: 0; justify-content: center; padding: 22px; position: fixed; z-index: 120; }.pdf-viewer.hidden { display: none; }.pdf-viewer-card { background: #f5f5f7; border-radius: 12px; box-shadow: 0 28px 90px rgba(0,0,0,.3); display: flex; flex-direction: column; height: min(900px,94vh); overflow: hidden; width: min(1040px,94vw); }.pdf-viewer-card header { align-items: center; background: #fff; border-bottom: 1px solid #dedfe5; display: flex; justify-content: space-between; padding: 14px 17px; }.pdf-viewer-card header h2 { font-size: 14px; margin: 3px 0 0; }.pdf-viewer-card header > div:last-child { align-items: center; display: flex; gap: 8px; }.pdf-viewer-card header a { background: var(--workspace-color,var(--purple)); border-radius: 6px; color: #fff; font-size: 10px; font-weight: 700; padding: 8px 12px; text-decoration: none; }.pdf-viewer-card header button { background: #eef0f4; border: 0; border-radius: 50%; color: #5e6472; cursor: pointer; font-size: 19px; height: 30px; width: 30px; }.pdf-viewer-card iframe { background: #dfe1e6; border: 0; flex: 1; width: 100%; }
.workspace-tile { border-color: #cfd2dc; box-shadow: 0 2px 4px rgba(31,36,55,.08),0 10px 24px rgba(31,36,55,.08); }.workspace-tile:hover { border-color: color-mix(in srgb,var(--workspace-color,var(--purple)) 52%,#cfd2dc); box-shadow: 0 4px 8px rgba(31,36,55,.10),0 16px 34px rgba(31,36,55,.15); }.workspace-tile .tile-name { background: #fff; border-top: 1px solid #dfe1e8; font-weight: 700; }.workspace-choice { border-color: #cfd2dc; box-shadow: 0 2px 4px rgba(31,36,55,.08),0 10px 24px rgba(31,36,55,.08); }.workspace-folder { border-color: #d2d4dd; box-shadow: 0 2px 5px rgba(31,36,55,.07); }
html[data-theme="dark"] .workspace-tile,html[data-theme="dark"] .workspace-choice,html[data-theme="dark"] .workspace-folder { border-color: #4a5062; box-shadow: 0 3px 10px rgba(0,0,0,.28); }html[data-theme="dark"] .workspace-tile .tile-name { background: #232735; border-top-color: #404657; }
html[data-theme="dark"] .spotlight-card { background: #232735; border-color: color-mix(in srgb,var(--workspace-color,var(--purple)) 45%,#4a5062); }html[data-theme="dark"] .spotlight-open b { color: #eef0f6; }html[data-theme="dark"] .spotlight-open img { border-color: #454b5d; }html[data-theme="dark"] .spotlight-remove:hover { background: #343949; }
.database-create { background: color-mix(in srgb,var(--workspace-color,var(--purple)) 9%,white); border: 1px dashed color-mix(in srgb,var(--workspace-color,var(--purple)) 45%,#ddd); border-radius: 5px; color: var(--workspace-color,var(--purple)); cursor: pointer; font: 700 9px 'Plus Jakarta Sans'; margin: 3px 5px 7px; padding: 8px; width: calc(100% - 10px); }.database-view { background: #fff; border: 1px solid #dedfe6; border-radius: 5px; color: #555c6d; cursor: pointer; font: 700 8px 'DM Sans'; padding: 6px 8px; }.data-viewer { align-items: center; background: rgba(18,22,33,.62); display: flex; inset: 0; justify-content: center; padding: 22px; position: fixed; z-index: 120; }.data-viewer.hidden { display: none; }.data-viewer-card { background: #fff; border-radius: 12px; box-shadow: 0 28px 90px rgba(0,0,0,.3); display: flex; flex-direction: column; max-height: 90vh; overflow: hidden; width: min(1100px,94vw); }.data-viewer-card header { align-items: center; border-bottom: 1px solid #dedfe5; display: flex; justify-content: space-between; padding: 16px 18px; }.data-viewer-card h2 { font-size: 16px; margin: 4px 0 0; }.data-viewer-card header #closeDataViewer { background: #eef0f4; border: 0; border-radius: 50%; cursor: pointer; font-size: 19px; height: 30px; width: 30px; }.data-table-wrap { overflow: auto; padding: 18px; }.data-table { border-collapse: collapse; font-size: 11px; min-width: 100%; }.data-table th,.data-table td { border: 1px solid #dfe1e7; padding: 9px 11px; text-align: left; white-space: nowrap; }.data-table th { background: #f2f3f7; color: #555b6c; font-size: 9px; letter-spacing: .4px; text-transform: uppercase; }.data-table tbody tr:nth-child(even) { background: #fafafd; }.data-empty { color: #9095a3; font-size: 12px; padding: 32px; text-align: center; }
.database-save-toggle { margin-bottom: 0; }.database-field-options { display: grid; grid-template-rows: 0fr; opacity: 0; overflow: hidden; transition: grid-template-rows .24s ease,opacity .18s ease,margin .24s ease; }.database-field-options > div { min-height: 0; overflow: hidden; }.database-field-options.expanded { grid-template-rows: 1fr; margin-top: 15px; opacity: 1; }.database-field-options .setting-label:not(:first-child) { margin-top: 14px; }
.database-rename,.folder-file-rename { background: #fff; border: 1px solid #dedfe6; border-radius: 5px; color: #555c6d; cursor: pointer; font: 700 8px 'DM Sans'; padding: 6px 8px; }.database-rename:hover,.folder-file-rename:hover { border-color: var(--workspace-color,var(--purple)); color: var(--workspace-color,var(--purple)); }
.form-folder-open,.form-spotlight { background: #fff; border: 1px solid #dedfe6; border-radius: 5px; color: #555c6d; cursor: pointer; font: 700 8px 'DM Sans'; padding: 6px 9px; }.form-folder-open:hover,.form-spotlight:hover { border-color: var(--workspace-color,var(--purple)); color: var(--workspace-color,var(--purple)); }.form-spotlight.active { background: color-mix(in srgb,var(--workspace-color,var(--purple)) 10%,white); border-color: color-mix(in srgb,var(--workspace-color,var(--purple)) 42%,#dedfe6); color: var(--workspace-color,var(--purple)); }.form-file .folder-file-info > span { font-size: 7px; }
.folder-rename { align-items: center; background: transparent; border: 0; border-radius: 50%; color: #9297a5; cursor: pointer; display: flex; flex: 0 0 25px; height: 25px; justify-content: center; opacity: 0; }.workspace-folder:hover .folder-rename,.folder-rename:focus-visible { opacity: 1; }.folder-rename:hover { background: #f1f0fb; color: var(--workspace-color,var(--purple)); }
.reference-dialog { align-items: center; background: rgba(19,23,34,.55); display: flex; inset: 0; justify-content: center; padding: 22px; position: fixed; z-index: 170; }.reference-dialog.hidden { display: none; }.reference-dialog-card { background: #fff; border: 1px solid #dedfe6; border-radius: 12px; box-shadow: 0 24px 70px rgba(22,27,43,.28); padding: 25px; width: min(430px,94vw); }.reference-dialog-card h2 { font-size: 18px; margin: 8px 0 9px; }.reference-dialog-card p { color: #6f7585; font-size: 12px; line-height: 1.55; margin: 0 0 22px; }.reference-dialog-card > div { display: flex; gap: 8px; justify-content: flex-end; }.reference-dialog-card button { background: #fff; border: 1px solid #d9dbe3; border-radius: 6px; color: #5e6474; cursor: pointer; font: 700 10px 'Plus Jakarta Sans'; padding: 8px 14px; }.reference-dialog-card .reference-yes { background: var(--workspace-color,var(--purple)); border-color: var(--workspace-color,var(--purple)); color: #fff; }html[data-theme="dark"] .reference-dialog-card { background: #252a38; border-color: #414759; }html[data-theme="dark"] .reference-dialog-card h2 { color: #f1f2f6; }html[data-theme="dark"] .reference-dialog-card button { background: #303646; border-color: #4a5062; color: #e7e9ef; }
.preview-mode .canvas-element.required-invalid { outline: 2px solid #d75a55; outline-offset: 7px; }.preview-mode .canvas-element.required-invalid > label { color: #b83f3b; }.preview-mode .canvas-element.required-invalid input,.preview-mode .canvas-element.required-invalid textarea,.preview-mode .canvas-element.required-invalid select { border-color: #d75a55; box-shadow: 0 0 0 2px rgba(215,90,85,.12); }
.submission-animation { align-items: center; background: rgba(20,25,36,.44); display: flex; inset: 0; justify-content: center; pointer-events: all; position: fixed; z-index: 140; }.submission-animation.hidden { display: none; }.submission-animation-card { align-items: center; background: #fff; border: 1px solid #e0e2e8; border-radius: 14px; box-shadow: 0 24px 70px rgba(25,30,48,.24); display: flex; flex-direction: column; min-width: 235px; opacity: 0; padding: 30px 34px 27px; transform: translateY(12px) scale(.94); }.submission-animation.playing .submission-animation-card { animation: submission-card-in .32s ease forwards; }.submission-check { align-items: center; background: #27815b; border-radius: 50%; color: #fff; display: flex; font-size: 27px; height: 58px; justify-content: center; margin-bottom: 15px; position: relative; width: 58px; }.submission-check:after { border: 2px solid rgba(39,129,91,.25); border-radius: 50%; content: ''; inset: -7px; position: absolute; }.submission-animation.playing .submission-check:after { animation: submission-ring .7s ease-out .12s both; }.submission-animation-card strong { color: #303647; font-size: 16px; }.submission-animation-card small { color: #8a909e; font-size: 10px; margin-top: 6px; }@keyframes submission-card-in { to { opacity: 1; transform: translateY(0) scale(1); } }@keyframes submission-ring { from { opacity: 1; transform: scale(.72); } to { opacity: 0; transform: scale(1.45); } }@media(prefers-reduced-motion:reduce){.submission-animation.playing .submission-animation-card,.submission-animation.playing .submission-check:after { animation-duration: .01ms; }}html[data-theme="dark"] .submission-animation-card { background: #252a38; border-color: #414759; }html[data-theme="dark"] .submission-animation-card strong { color: #f0f2f7; }
.folder-viewer { align-items: center; background: rgba(18,22,33,.6); display: flex; inset: 0; justify-content: center; padding: 24px; position: fixed; z-index: 110; }.folder-viewer.hidden { display: none; }.folder-viewer-card { background: #f8f8fa; border: 1px solid #dfe1e7; border-radius: 13px; box-shadow: 0 28px 90px rgba(0,0,0,.28); display: flex; flex-direction: column; height: min(760px,88vh); overflow: hidden; width: min(900px,92vw); }.folder-viewer-card > header { align-items: center; background: #fff; border-bottom: 1px solid #dfe1e7; display: flex; justify-content: space-between; padding: 18px 20px; }.folder-viewer-card h2 { font-size: 20px; margin: 4px 0 2px; }.folder-viewer-card header small { color: #9095a3; font-size: 10px; }.folder-viewer-card header > button { background: #eceef2; border: 0; border-radius: 50%; color: #626878; cursor: pointer; font-size: 20px; height: 32px; width: 32px; }.folder-viewer-list { display: flex; flex-direction: column; gap: 7px; overflow: auto; padding: 18px; }.folder-viewer-list .folder-file { background: #fff; border: 1px solid #dfe1e7; border-radius: 7px; min-height: 56px; padding: 9px 10px; }.folder-viewer-list .folder-item-delete { opacity: 1; }.folder-viewer-empty { color: #8f95a3; margin: auto; padding: 80px 20px; text-align: center; }html[data-theme="dark"] .folder-viewer-card,html[data-theme="dark"] .folder-viewer-card > header,html[data-theme="dark"] .folder-viewer-list .folder-file { background: #232735; border-color: #414759; }html[data-theme="dark"] .folder-viewer-card h2 { color: #f0f2f7; }
.form-canvas { background-image: none; }
.submit { white-space: nowrap; }
.account-menu { margin-left: 5px; position: relative; }.account-trigger { align-items: center; cursor: pointer; display: flex; justify-content: center; margin-left: 0; overflow: hidden; padding: 0; }.avatar-image { height: 100%; object-fit: cover; width: 100%; }.account-panel { background: #fff; border: 1px solid #e4e5eb; border-radius: 8px; box-shadow: 0 12px 32px rgba(28,33,55,.18); display: none; padding: 6px; position: absolute; right: 0; top: 39px; width: 190px; z-index: 60; }.account-menu.open .account-panel { display: block; }.account-summary { align-items: center; display: flex; gap: 9px; padding: 8px 8px 10px; }.account-summary > span { align-items: center; background: #f4bd7d; border-radius: 50%; color: #814e25; display: flex; font-size: 9px; font-weight: 700; height: 27px; justify-content: center; width: 27px; }.account-summary b,.account-summary small { display: block; }.account-summary b { color: #383e50; font-size: 11px; }.account-summary small { color: #979ba8; font-size: 9px; margin-top: 2px; }.account-panel > button { background: transparent; border: 0; border-radius: 5px; color: #515769; cursor: pointer; font: 11px 'Plus Jakarta Sans'; padding: 9px; text-align: left; width: 100%; }.account-panel > button:hover { background: #f4f3fa; }.account-divider { background: #e9eaf0; height: 1px; margin: 4px 2px; }.account-panel > .account-logout { color: #c95757; }.workspace-top .account-menu { margin-left: auto; }.workspace-view.choosing .workspace-top .account-menu { margin-left: auto; }
.avatar,.account-summary > span { background: #ccebd9; color: #17663a; }
.account-settings-panel { background: #f7f7fa; border-radius: 5px; display: none; margin: 2px 0 5px; padding: 7px; }.account-settings-panel.open { display: block; }.account-settings-panel small { color: #8a8f9e; display: block; font-size: 8px; letter-spacing: .6px; margin: 0 0 6px 2px; }.theme-options { display: grid; gap: 4px; grid-template-columns: 1fr 1fr; }.theme-options button { background: #fff; border: 1px solid #dddfe7; border-radius: 4px; color: #5c6273; cursor: pointer; font: 10px 'Plus Jakarta Sans'; padding: 7px 4px; }.theme-options button.active { background: #e9e7ff; border-color: #aaa3ef; color: var(--purple); }
.login-screen { align-items: center; background: #f5f5f8; display: flex; inset: 0; justify-content: center; padding: 24px; position: fixed; z-index: 100; }.login-screen.hidden { display: none; }.login-card { background: #fff; border: 1px solid #e3e4ea; border-radius: 12px; box-shadow: 0 24px 70px rgba(28,33,55,.15); padding: 32px; width: min(390px,100%); }.login-brand { margin-bottom: 32px; width: auto; }.login-card h1 { font-size: 27px; margin: 9px 0 7px; }.login-card > p { color: #7d8291; font-size: 11px; margin: 0 0 24px; }.login-card label { color: #858b9a; display: block; font: 9px 'DM Mono'; letter-spacing: .7px; margin: 14px 0 7px; }.login-card input { border: 1px solid #dfe1e8; border-radius: 6px; font: 12px 'Plus Jakarta Sans'; outline: none; padding: 11px; width: 100%; }.login-card input:focus { border-color: var(--purple); box-shadow: 0 0 0 3px rgba(101,88,232,.1); }.login-card button[type="submit"] { background: var(--purple); border: 0; border-radius: 6px; color: #fff; cursor: pointer; font: 600 12px 'Plus Jakarta Sans'; margin-top: 19px; padding: 11px; width: 100%; }.login-card .login-error { color: #c95757; margin: 10px 0 -5px; }
.profile-dialog { align-items: center; background: rgba(25,29,42,.48); display: flex; inset: 0; justify-content: center; padding: 24px; position: fixed; z-index: 90; }.profile-dialog.hidden { display: none; }.profile-card { background: #fff; border: 1px solid #e3e4ea; border-radius: 12px; box-shadow: 0 24px 70px rgba(24,29,48,.22); padding: 30px; position: relative; text-align: center; width: min(410px,100%); }.profile-close { background: #f1f2f6; border: 0; border-radius: 50%; color: #6c7282; cursor: pointer; font-size: 19px; height: 29px; line-height: 1; position: absolute; right: 13px; top: 13px; width: 29px; }.profile-avatar { align-items: center; background: #ccebd9; border-radius: 50%; color: #17663a; display: flex; font-size: 18px; font-weight: 800; height: 64px; justify-content: center; margin: 0 auto 17px; width: 64px; }.profile-card h2 { font-size: 22px; margin: 7px 0 3px; }.profile-handle { color: #8a8f9e; font-size: 11px; margin: 0 0 23px; }.profile-details { border-top: 1px solid #e8e9ee; display: grid; gap: 0; text-align: left; }.profile-details > div { display: flex; justify-content: space-between; gap: 18px; padding: 13px 2px; border-bottom: 1px solid #eeeef2; }.profile-details small { color: #969aa7; font: 8px 'DM Mono'; letter-spacing: .6px; }.profile-details span { color: #414758; font-size: 11px; text-align: right; }
html[data-theme="dark"] { color-scheme: dark; }html[data-theme="dark"] body,html[data-theme="dark"] .workspace-view,html[data-theme="dark"] .canvas-area,html[data-theme="dark"] .login-screen { background-color: #171a24; color: #eef0f6; }html[data-theme="dark"] .topbar,html[data-theme="dark"] .left-panel,html[data-theme="dark"] .right-panel,html[data-theme="dark"] .workspace-toolbar,html[data-theme="dark"] .workspace-top,html[data-theme="dark"] .account-panel,html[data-theme="dark"] .workspace-tile,html[data-theme="dark"] .workspace-choice,html[data-theme="dark"] .image-browser-card,html[data-theme="dark"] .template-library-card,html[data-theme="dark"] .login-card { background-color: #232735; border-color: #383d4e; color: #eef0f6; }html[data-theme="dark"] .form-canvas { background-color: var(--canvas,#fffefb); color: #20253a; }html[data-theme="dark"] input,html[data-theme="dark"] textarea,html[data-theme="dark"] select,html[data-theme="dark"] .setting-input,html[data-theme="dark"] .account-settings-panel { background-color: #191d28; border-color: #3d4253; color: #eef0f6; }html[data-theme="dark"] .account-panel button,html[data-theme="dark"] .workspace-choice-open,html[data-theme="dark"] .account-summary b { color: #e7e9f0; }html[data-theme="dark"] .account-panel > button:hover,html[data-theme="dark"] .theme-options button { background: #303545; border-color: #444a5c; color: #e7e9f0; }html[data-theme="dark"] .drawing-toolbar { background: #252a38; border-color: #414759; }html[data-theme="dark"] .login-card > p,html[data-theme="dark"] .account-summary small { color: #a9aebb; }
.brand-mark { background: #277a50; border-radius: 8px; box-shadow: inset 0 -2px 0 rgba(0,0,0,.1); gap: 0; transform: none; }
.brand-mark:before,.brand-mark:after { content: none; }
.brand-mark i { background: linear-gradient(to right,#f29a5b 0 3px,transparent 3px 5px,#fff 5px); border-radius: 1px; display: block; height: 3px; left: 6px; margin: 0; position: absolute; transform: none; width: 16px; }
.brand-mark i:nth-child(1) { height: 3px; top: 7px; width: 16px; }
.brand-mark i:nth-child(2) { height: 3px; top: 13px; width: 13px; }
.brand-mark i:nth-child(3) { background: linear-gradient(to right,#f29a5b 0 3px,transparent 3px 5px,#fff 5px); border: 0; border-radius: 1px; bottom: auto; display: block; height: 3px; left: 6px; right: auto; top: 19px; transform: none; width: 16px; }
.form-theme-list { display: grid; gap: 8px; }.form-theme-card { background: #fff; border: 1px solid #e2e3e9; border-radius: 6px; color: #4f5566; cursor: pointer; font: 600 11px 'Plus Jakarta Sans'; padding: 10px 10px 10px 38px; position: relative; text-align: left; width: 100%; }.form-theme-card > span { background: linear-gradient(135deg,var(--theme-bg) 0 65%,var(--theme-accent) 65%); border: 1px solid rgba(40,45,60,.12); border-radius: 5px; height: 24px; left: 8px; position: absolute; top: 10px; width: 24px; }.form-theme-card small { color: #9297a5; display: block; font-size: 9px; font-weight: 400; margin-top: 3px; }.form-theme-card:hover,.form-theme-card.active { background: #faf9ff; border-color: #aaa3ef; }html[data-theme="dark"] .form-theme-card { background: #292e3d; border-color: #414759; color: #eef0f6; }html[data-theme="dark"] .form-theme-card:hover,html[data-theme="dark"] .form-theme-card.active { background: #303646; }
html[data-theme="dark"] .profile-card { background: #232735; border-color: #3d4253; }html[data-theme="dark"] .profile-details,html[data-theme="dark"] .profile-details > div { border-color: #3d4253; }html[data-theme="dark"] .profile-details span,html[data-theme="dark"] .profile-card h2 { color: #eef0f6; }html[data-theme="dark"] .profile-close { background: #343949; color: #d8dbe4; }
html[data-theme="dark"] .workspace-folder { background: #232735; border-color: #383d4e; }html[data-theme="dark"] .workspace-folder b { color: #eef0f6; }html[data-theme="dark"] .folder-icon { background: #303646; }
.spotlight-heading small { display: none; }
.date-time-toggle { margin-bottom: 0; }
.time-format-setting { margin: 10px 0 18px; }.time-format-setting.hidden { display: none; }
.report-element-tool { display: none; }body.report-mode .report-element-tool { display: flex; }body.report-mode .element-item[data-type="short-text"],body.report-mode .element-item[data-type="number"],body.report-mode .element-item[data-type="long-text"],body.report-mode .element-item[data-type="choice"],body.report-mode .element-item[data-type="checkbox"],body.report-mode .element-item[data-type="select"],body.report-mode .element-item[data-type="date"],body.report-mode .element-item[data-type="submit"] { display: none; }.report-element { background: #fff; border-color: #e0e2e8; min-height: 120px; padding: 16px; }.report-element .report-title { color: #343a4c; font-size: 15px; margin: 0 0 14px; }.report-output { min-height: 68px; overflow: auto; }.report-empty { align-items: center; background: #f7f8fa; border: 1px dashed #d9dce4; border-radius: 6px; color: #959aa7; display: flex; font-size: 10px; justify-content: center; min-height: 70px; padding: 15px; }.report-output > strong { color: var(--workspace-color,var(--purple)); display: block; font-size: 34px; letter-spacing: -1.5px; }.report-output > small { color: #858b99; display: block; font-size: 9px; margin-top: 4px; text-transform: capitalize; }.report-output table { border-collapse: collapse; font-size: 9px; min-width: 100%; }.report-output th,.report-output td { border-bottom: 1px solid #e7e8ed; max-width: 150px; overflow: hidden; padding: 7px 8px; text-align: left; text-overflow: ellipsis; white-space: nowrap; }.report-output th { background: #f5f6f8; color: #747a89; font-size: 8px; text-transform: uppercase; }.report-summary-grid { display: grid; gap: 9px; grid-template-columns: repeat(3,1fr); }.report-summary-grid span { background: #f7f8fa; border-radius: 6px; padding: 12px; }.report-summary-grid b,.report-summary-grid small { display: block; }.report-summary-grid b { color: #343a4c; font-size: 20px; }.report-summary-grid small { color: #8b909e; font-size: 8px; margin-top: 4px; }.report-chart { display: grid; gap: 7px; }.chart-row { align-items: center; display: grid; gap: 8px; grid-template-columns: 90px 1fr 38px; }.chart-row span { color: #656b7b; font-size: 8px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.chart-row i { background: linear-gradient(90deg,var(--workspace-color,var(--purple)) calc(var(--value)*100%),#eceef3 0); border-radius: 4px; height: 12px; }.report-chart.line .chart-row i { background: linear-gradient(90deg,transparent 0 calc(var(--value)*100% - 2px),var(--workspace-color,var(--purple)) calc(var(--value)*100% - 2px) calc(var(--value)*100%),#eceef3 calc(var(--value)*100%)); border-bottom: 1px solid #dfe1e7; border-radius: 0; }.chart-row b { color: #484e60; font-size: 8px; text-align: right; }.report-custom-range,.report-filter-options { display: grid; gap: 7px; grid-template-columns: 1fr 1fr; margin-top: 8px; }.report-custom-range.hidden,.report-filter-options.hidden { display: none; }.report-filter-options { grid-template-columns: 1fr; }.report-mode .form-canvas { background-image: none; }html[data-theme="dark"] .report-element { background: #252a38; border-color: #424859; }html[data-theme="dark"] .report-element .report-title,html[data-theme="dark"] .report-summary-grid b,html[data-theme="dark"] .chart-row b { color: #eef0f6; }html[data-theme="dark"] .report-empty,html[data-theme="dark"] .report-summary-grid span,html[data-theme="dark"] .report-output th { background: #303645; border-color: #4a5061; }
.pdf-page-background{background:#fff;box-shadow:0 2px 10px rgba(22,27,39,.13);object-fit:fill;pointer-events:none;position:absolute;z-index:0}.pdf-import-field{background:rgba(255,255,255,.72);border:1px solid color-mix(in srgb,var(--form-accent,var(--purple)) 58%,transparent);min-height:0!important;padding:0;z-index:2}.pdf-import-field>label{background:var(--form-accent,var(--purple));border-radius:3px 3px 0 0;color:#fff;display:none;font:700 7px 'Plus Jakarta Sans';left:0;max-width:100%;overflow:hidden;padding:2px 4px;position:absolute;text-overflow:ellipsis;top:-14px;white-space:nowrap}.pdf-import-field input.setting-input,.pdf-import-field textarea,.pdf-import-field select.setting-input{background:rgba(255,255,255,.72);border:0;border-radius:0;height:100%;min-height:100%;padding:2px 4px;width:100%}.pdf-import-field .choice-list{height:100%}.pdf-import-field .choice-list label{height:100%;margin:0}.pdf-import-field .choice-list span{font-size:0}.pdf-import-field.selected>label,.pdf-import-field:hover>label{display:block}body.preview-mode .pdf-import-field{background:transparent;border-color:transparent}body.preview-mode .pdf-import-field>label{display:none}.pdf-tag-setting{margin-top:14px}.pdf-import-progress{align-items:center;background:rgba(18,22,33,.6);display:flex;inset:0;justify-content:center;position:fixed;z-index:300}.pdf-import-progress.hidden{display:none}.pdf-import-progress>div{align-items:center;background:#fff;border-radius:12px;box-shadow:0 24px 80px rgba(0,0,0,.28);display:grid;gap:5px;grid-template-columns:42px 1fr;min-width:330px;padding:20px}.pdf-import-progress strong,.pdf-import-progress small{grid-column:2}.pdf-import-progress small{color:#838897;font-size:10px}.pdf-import-spinner{animation:pdf-spin .8s linear infinite;border:3px solid #e4e6eb;border-top-color:var(--workspace-color,var(--purple));border-radius:50%;grid-row:1/3;height:25px;width:25px}@keyframes pdf-spin{to{transform:rotate(360deg)}}
.pdf-import-field > label{display:block}
.pdf-import-progress>.pdf-import-card{box-sizing:border-box;width:min(520px,calc(100vw - 32px));min-width:0;background:var(--panel);color:var(--ink)}
.pdf-import-card small{line-height:1.6;color:var(--muted)}
.omit-submit-pdf{display:none}.submit-element[data-submit-placement="footer"] .submit{cursor:grab;touch-action:none}.submit-element[data-submit-placement="footer"] .submit:active{cursor:grabbing}
.page-size-panel{border-bottom:1px solid var(--line);margin-bottom:20px;padding-bottom:18px}.page-size-panel .edit-hint{line-height:1.45;margin:8px 0}.page-size-readout{background:#f6f7f9;border-radius:5px;color:#777e8f;font:500 9px 'DM Mono';padding:7px 9px}html[data-theme="dark"] .page-size-readout{background:#303545;color:#b8bdca}
.canvas-area{min-height:0!important}.canvas-area:has(.submit-element[data-submit-placement="footer"]){padding-bottom:145px}.canvas-area:has(.submit-element[data-submit-placement="footer"]) .form-canvas{flex-shrink:0}
.checkbox-style-label{margin-top:2px}.canvas-element[data-type="checkbox"] .choice-list input{border-radius:3px}.canvas-element[data-type="checkbox"] .choice-list input:checked:after{align-items:center;background:transparent;color:var(--purple);content:'✓';display:flex;font:bold 13px/1 sans-serif;height:13px;justify-content:center;width:13px}.canvas-element[data-type="checkbox"][data-checkbox-style="x-box"] .choice-list input:checked:after{content:'×';font-size:16px}.canvas-element[data-type="checkbox"][data-checkbox-style="dot-circle"] .choice-list input,.canvas-element[data-type="checkbox"][data-checkbox-style="check-circle"] .choice-list input{border-radius:50%}.canvas-element[data-type="checkbox"][data-checkbox-style="dot-circle"] .choice-list input:checked:after{background:var(--purple);border-radius:50%;content:'';height:7px;width:7px}.canvas-element[data-type="checkbox"][data-checkbox-style="check-circle"] .choice-list input:checked:after{content:'✓';font-size:11px}
.pdf-import-status{align-items:center;display:flex;grid-row:1/4;height:42px;justify-content:center;width:42px}.pdf-import-status b{align-items:center;background:#2f8b62;border-radius:50%;color:#fff;display:none;font-size:21px;height:38px;justify-content:center;width:38px}.pdf-import-card[data-state="success"] .pdf-import-spinner,.pdf-import-card[data-state="error"] .pdf-import-spinner{display:none}.pdf-import-card[data-state="success"] .pdf-import-status b,.pdf-import-card[data-state="error"] .pdf-import-status b{display:flex}.pdf-import-card[data-state="error"] .pdf-import-status b{background:#c85e56}.pdf-import-card button{background:var(--workspace-color,var(--purple));border:0;border-radius:6px;color:#fff;cursor:pointer;font:700 10px 'Plus Jakarta Sans';grid-column:2;margin-top:8px;padding:9px 14px;justify-self:start}.pdf-import-card button[hidden]{display:none}

.canvas-controls { flex-shrink: 0; }
.canvas-controls button:disabled { opacity: .4; cursor: default; }

/* Preserve PDF widget dimensions instead of builder control minimums. */
.pdf-import-field { min-width: 0; border: 0; border-radius: 0; outline: 1px solid color-mix(in srgb,var(--purple) 45%,transparent); }
.pdf-import-field input.setting-input,.pdf-import-field textarea,.pdf-import-field select.setting-input { display: block; box-sizing: border-box; min-width: 0; min-height: 0; margin: 0; padding: 0 1px; font-size: var(--pdf-font-size,10px); line-height: 1; }
.pdf-import-field .choice-list { width: 100%; gap: 0; }
.pdf-import-field .choice-list label { width: 100%; min-width: 0; min-height: 0; padding: 0; gap: 0; }
.pdf-import-field .choice-list span { display: none; }
.pdf-import-field .choice-list input { position:relative; flex: none; width: 100%; height: 100%; min-width: 0; min-height: 0; margin: 0; padding:0; border-width: 1px; place-content: center; place-items: center; }
.pdf-import-field .choice-list input[type="checkbox"] { border-radius: 0; }
.pdf-import-field .choice-list input:checked:after { position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);margin:0;width:60%;height:60%; }
.canvas-element.pdf-import-field[data-type="checkbox"] .choice-list input:checked::after { content:'';width:80%;height:80%;background:currentColor;border-radius:0;clip-path:polygon(0 50%,15% 35%,38% 65%,85% 0,100% 15%,38% 100%); }
.canvas-element.pdf-import-field[data-type="checkbox"][data-checkbox-style="x-box"] .choice-list input:checked::after { clip-path:polygon(15% 0,50% 35%,85% 0,100% 15%,65% 50%,100% 85%,85% 100%,50% 65%,15% 100%,0 85%,35% 50%,0 15%); }
.canvas-element.pdf-import-field[data-type="checkbox"][data-checkbox-style="dot-circle"] .choice-list input:checked::after { width:60%;height:60%;border-radius:50%;clip-path:none; }
body.preview-mode .pdf-import-field { outline: none; }

.image-mode-hint { color: #858b9a; font-size: 11px; line-height: 1.5; margin: 8px 0 18px; }
.image-placeholder { padding: 18px; text-align: center; line-height: 1.6; }
.image-frame.blank-drawing-space { background: var(--draw-background,#fff); }
.image-frame.blank-drawing-space > img,.image-frame.blank-drawing-space > .image-placeholder { display: none; }
.image-frame:has(.drawing-canvas) > .image-placeholder { visibility: hidden; }

.draw-background-settings { margin-bottom: 18px; }
.draw-background-color-row { display: flex; align-items: center; justify-content: space-between; margin-top: 10px; color: #727789; font-size: 11px; }
.draw-background-color-row.hidden { display: none; }
.draw-background-color-row input { width: 40px; height: 28px; padding: 2px; border: 1px solid var(--line); border-radius: 4px; background: transparent; cursor: pointer; }
.canvas-element:has(.blank-drawing-space) { background: transparent; }
/* Group selection works in document coordinates at every zoom level. */
.group-selection-controls { display:flex; align-items:center; gap:6px; margin-left:12px; }
.group-selection-controls button { border:1px solid var(--line); border-radius:5px; background:var(--panel); color:#747a8c; padding:5px 7px; font-size:10px; font-family:inherit; cursor:pointer; }
.group-selection-controls button[aria-pressed="true"] { background:#eeecff; color:var(--purple); border-color:#b7b1f2; }
.group-selection-controls span { font-size:10px; color:#747a8c; }
body:not(.preview-mode) .pdf-page-background { pointer-events:auto; cursor:move; }
body:not(.preview-mode) .group-selected { outline:2px solid var(--purple); outline-offset:1px; cursor:move; }
body:not(.preview-mode) .group-selected .resize-handle { display:none; }
.selection-marquee { position:fixed; pointer-events:none; border:1px solid #6558e8; background:rgba(101,88,232,.12); z-index:1000; }
.box-select-mode,.box-select-mode * { cursor:crosshair!important; }
body.preview-mode .group-selection-controls { display:none; }

/* The tray holds any element outside the exported document. */
.form-canvas { margin-bottom:calc(var(--tray-height,240px) + 45px); }
.form-canvas::before { box-sizing:border-box; content:'Elements Tray · Drag elements here'; position:absolute; top:calc(100% + var(--tray-gap,18px)); left:0; width:100%; height:var(--tray-height,240px); padding:12px 14px; border:1px dashed #b8bdce; border-radius:8px; background:rgba(245,246,250,.85); color:#747a8c; font:10px sans-serif; pointer-events:none; }
.form-canvas > [data-submit-placement="footer"] { top:calc(100% + var(--tray-top,48px) + var(--tray-gap,18px) - 18px)!important; z-index:2; }
.form-canvas > .submit-element[data-submit-placement="footer"] { left:var(--tray-left,64px)!important; transform:none!important; }
.canvas-area { min-height:0!important; padding-bottom:80px; }
html[data-theme="dark"] .form-canvas::before { background:#252a38; border-color:#414759; color:#aeb4c2; }

.actions-tray-info { position:absolute; top:calc(100% + var(--tray-height,240px) + var(--tray-gap,18px) - 1px); transform:translateY(-100%); left:14px; right:14px; margin:0; color:#747a8c; font-size:11px; line-height:1.5; pointer-events:none; }

.folder-file { cursor:pointer; transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease; }
.folder-file .folder-file-info { align-self:stretch; background:transparent; border:0; border-radius:4px; padding:4px 2px; text-align:left; font-family:inherit; cursor:pointer; }
.folder-file .folder-file-info:focus-visible { outline:2px solid var(--workspace-color,var(--purple)); outline-offset:2px; }
.folder-viewer-list .folder-file:hover,.folder-file:hover { background:color-mix(in srgb,var(--workspace-color,var(--purple)) 5%,white); border-color:color-mix(in srgb,var(--workspace-color,var(--purple)) 25%,#dfe1e7); box-shadow:0 2px 6px rgba(33,38,66,.05); }
html[data-theme="dark"] .folder-viewer-list .folder-file:hover,html[data-theme="dark"] .folder-file:hover { background:color-mix(in srgb,var(--workspace-color,var(--purple)) 12%,#232735); }
.file-options { margin-left:auto; position:relative; flex:none; }
.file-options summary { list-style:none; cursor:pointer; border-radius:5px; color:#747a8c; padding:4px 6px; font-size:10px; line-height:1; font-weight:600; }
.file-options summary::-webkit-details-marker,.file-export-menu summary::-webkit-details-marker { display:none; }
.file-options summary:hover { background:rgba(101,88,232,.08); }
.file-options-menu { position:absolute; right:0; top:100%; min-width:120px; background:var(--panel); border:1px solid var(--line); border-radius:7px; padding:5px; box-shadow:0 6px 20px #20253a18; z-index:10; }
.file-options-menu button { width:100%; text-align:left; border:0; }
.file-viewer-actions { display:flex; align-items:center; gap:8px; }
.file-export-menu { position:relative; font-size:12px; }
.file-export-menu summary { list-style:none; cursor:pointer; padding:8px 12px; border:1px solid var(--line); border-radius:6px; background:var(--panel); color:var(--ink); }
.file-export-options { position:absolute; right:0; top:calc(100% + 4px); width:195px; padding:5px; border:1px solid var(--line); border-radius:7px; background:var(--panel); box-shadow:0 8px 24px #20253a20; z-index:20; }
.file-export-options button { display:block; width:100%; border:0; border-radius:4px; padding:9px 10px; background:transparent; color:var(--ink); text-align:left; cursor:pointer; font:inherit; }
.file-export-options button:hover { background:rgba(101,88,232,.08); }
.file-export-options small { display:block; padding:6px 10px; color:#858b9a; line-height:1.4; }
.file-viewer-actions #closeDataViewer { border:0; border-radius:50%; width:30px; height:30px; cursor:pointer; font-size:20px; }

.file-options-menu .folder-item-delete { display:block; width:100%; height:auto; padding:6px 8px; border-radius:4px; opacity:1; color:#c95757; font:700 8px "DM Sans"; text-align:left; }

.folder-viewer-list .folder-file { flex-shrink:0; }

.file-export-menu summary { padding:7px 10px; font:600 11px 'Plus Jakarta Sans',sans-serif; }
.file-export-menu .file-export-options { width:184px; padding:5px; border-radius:8px; }
.file-export-menu .file-export-options button { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; height:32px; padding:0 9px; border:0; border-radius:5px; background:transparent; color:var(--ink); font:500 11px 'Plus Jakarta Sans',sans-serif; line-height:1.3; }
.file-export-menu .file-export-options button:hover { background:color-mix(in srgb,var(--purple) 7%,transparent); }
.file-export-menu .file-export-options button:focus-visible { outline:2px solid var(--purple); outline-offset:-2px; }
.file-export-options .export-extension { font:10px 'DM Mono',monospace; color:#858b9a; }
.file-export-menu .file-export-options small { border-top:1px solid var(--line); margin-top:4px; padding:8px 9px 5px; font:10px/1.45 'Plus Jakarta Sans',sans-serif; }


.workspace-folder { cursor:pointer; }
.workspace-folder,.workspace-tile,.spotlight-card,.workspace-tile .tile-name { transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease; }
:is(.workspace-folder,.workspace-tile,.spotlight-card,.folder-file):hover { background:color-mix(in srgb,var(--workspace-hover-color,var(--purple)) 6%,white); border-color:color-mix(in srgb,var(--workspace-hover-color,var(--purple)) 28%,#dfe1e7); box-shadow:0 3px 9px rgba(33,38,66,.07); }
.workspace-tile:hover .tile-name,.folder-viewer-list .folder-file:hover { background:color-mix(in srgb,var(--workspace-hover-color,var(--purple)) 6%,white); border-color:color-mix(in srgb,var(--workspace-hover-color,var(--purple)) 28%,#dfe1e7); }
html[data-theme="dark"] :is(.workspace-folder,.workspace-tile,.spotlight-card,.folder-file):hover,html[data-theme="dark"] .workspace-tile:hover .tile-name,html[data-theme="dark"] .folder-viewer-list .folder-file:hover { background:color-mix(in srgb,var(--workspace-hover-color,var(--purple)) 12%,#232735); border-color:color-mix(in srgb,var(--workspace-hover-color,var(--purple)) 30%,#414759); }
.workspace-view:not(.choosing) .workspace-settings-btn { display:block; }

.workspace-options-dropdown { position:absolute; right:0; top:5px; z-index:13; }
.workspace-options-dropdown .workspace-settings-btn { position:static; }
.workspace-options-dropdown .workspace-customizer { position:absolute; top:calc(100% + 8px); right:0; width:290px; max-width:calc(100vw - 48px); margin:0; padding:16px; border-radius:9px; background:var(--panel); box-shadow:0 12px 32px rgba(34,38,65,.16); max-height:60vh; overflow:auto; }
.workspace-options-dropdown .workspace-customizer textarea { width:100%; background:var(--panel); color:var(--ink); }
.workspace-options-dropdown .workspace-settings-btn[aria-expanded="true"] { border-color:var(--workspace-color,var(--purple)); background:color-mix(in srgb,var(--workspace-color,var(--purple)) 6%,var(--panel)); }


.workspace-title .create-new { right:44px; }
.workspace-options-dropdown .workspace-settings-btn { width:34px; height:34px; padding:0; font:20px/1 sans-serif; background:var(--panel); }
.workspace-options-dropdown .workspace-customizer label[for="workspaceColor"],.workspace-options-dropdown .workspace-customizer #workspaceColor { display:block; }
.workspace-options-dropdown .workspace-settings-btn:focus-visible { outline:2px solid var(--workspace-color,var(--purple)); outline-offset:2px; }

.file-options-menu .folder-form-delete { color:#c95757; padding:6px 8px; background:transparent; border-radius:4px; font:700 8px "DM Sans"; cursor:pointer; }
.file-options-menu .folder-form-delete:hover { background:#fff0ef; }
.folder-options .folder-delete,.folder-options .folder-rename,.file-options-menu .folder-move,.file-options-menu .file-move { position:static; display:block; opacity:1; margin:0; width:100%; height:auto; padding:7px 8px; border:0; border-radius:4px; background:transparent; font:10px 'Plus Jakarta Sans',sans-serif; text-align:left; cursor:pointer; }
.folder-options .folder-delete { color:#c95757; }
.nested-folder { flex-shrink:0; }
.folder-up { align-self:flex-start; border:0; background:transparent; color:var(--purple); cursor:pointer; padding:7px 0; font:11px 'Plus Jakarta Sans',sans-serif; }
.move-dialog { width:360px; max-width:calc(100vw - 32px); padding:22px; border:1px solid var(--line); border-radius:12px; background:var(--panel); color:var(--ink); box-shadow:0 20px 60px #20253a30; }
.move-dialog::backdrop { background:#181c3066; }
.move-dialog h2 { font-size:16px; margin:0 0 10px; }
.move-dialog p,.move-dialog label,.move-dialog small { display:block; font-size:11px; line-height:1.5; }
.move-dialog select { margin:7px 0 10px; width:100%; padding:8px; border:1px solid var(--line); border-radius:5px; background:var(--panel); color:var(--ink); }
.move-dialog small { color:#858b9a; }
.move-dialog footer { display:flex; gap:8px; justify-content:flex-end; margin-top:18px; }
.move-dialog button { padding:8px 12px; border:1px solid var(--line); border-radius:6px; cursor:pointer; }
.move-dialog .confirm-move { background:var(--purple); color:white; }
.move-dialog button:disabled { opacity:.5; cursor:default; }
.folder-sort { display:flex; align-items:center; gap:7px; margin-left:auto; font-size:10px; color:#858b9a; }
.folder-sort select { border:1px solid var(--line); border-radius:5px; background:var(--panel); color:var(--ink); padding:6px 8px; font:10px 'Plus Jakarta Sans',sans-serif; }
.folder-viewer-actions { display:flex; align-items:center; gap:14px; }
.folder-viewer-actions #closeFolderViewer { background:#eceef2; border:0; border-radius:50%; color:#626878; cursor:pointer; font-size:20px; height:32px; width:32px; }
.reorder-dragging { opacity:.45; }
.workspace-folder.reorder-before,.folder-file.reorder-before { box-shadow:0 -3px 0 var(--workspace-color,var(--purple)); }
.workspace-folder.reorder-after,.folder-file.reorder-after { box-shadow:0 3px 0 var(--workspace-color,var(--purple)); }
.workspace-folders > .reorder-before { box-shadow:-3px 0 0 var(--workspace-color,var(--purple)); }
.workspace-folders > .reorder-after { box-shadow:3px 0 0 var(--workspace-color,var(--purple)); }

.file-options-menu[popover],.file-export-menu .file-export-options[popover] { position:fixed; inset:auto; margin:0; box-sizing:border-box; max-width:calc(100vw - 16px); max-height:calc(100vh - 16px); overflow:auto; }
.file-options-menu[popover]::backdrop,.file-export-options[popover]::backdrop { background:transparent; pointer-events:none; }

.file-options .file-options-menu button { display:block; width:100%; height:auto; margin:0; padding:6px 8px; border:0; border-radius:4px; background:transparent; color:#555c6d; font:700 8px 'DM Sans',sans-serif; text-align:left; cursor:pointer; }
.file-options .file-options-menu button:hover { background:rgba(101,88,232,.08); }
.file-options .file-options-menu :is(.folder-item-delete,.folder-form-delete,.folder-delete) { color:#c95757; }
.file-options .file-options-menu :is(.folder-item-delete,.folder-form-delete,.folder-delete):hover { background:#fff0ef; }

.workspace-chooser-actions { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.workspace-chooser-actions .new-workspace { display:block; margin:0; padding:10px 13px; border:0; border-radius:6px; background:#277a50; color:#fff; cursor:pointer; font:600 11px 'Plus Jakarta Sans',sans-serif; }
.workspace-chooser-actions .new-workspace:hover { filter:brightness(.94); }
.workspace-chooser-actions .new-workspace:focus-visible { outline:2px solid #277a50; outline-offset:3px; }
.form-page-controls { display:flex; align-items:center; gap:12px; padding:8px 25px; background:var(--panel); border-bottom:1px solid var(--line); flex:none; }
.form-page-controls label { display:flex; gap:6px; align-items:center; font-size:11px; color:#747a8c; }
.form-page-controls select,.form-page-controls button { padding:6px 8px; border:1px solid var(--line); border-radius:5px; background:var(--panel); color:var(--ink); font:11px 'Plus Jakarta Sans',sans-serif; }
.form-page-controls button { cursor:pointer; }
.form-page-controls small { color:#858b9a; font-size:10px; }
body.preview-mode .form-page-controls .add-form-page,body.preview-mode .form-page-controls .page-scale-label,body.preview-mode .form-page-controls small { display:none; }
.export-form-page { margin:0!important; }

/* Empty trays remain available for placing elements only while building. */
body.preview-mode .form-canvas:not(:has(> [data-submit-placement="footer"]))::before,
body.preview-mode .form-canvas:not(:has(> [data-submit-placement="footer"])) > .actions-tray-info { display:none; }
body.preview-mode .form-canvas:not(:has(> [data-submit-placement="footer"])) { margin-bottom:0; }

.tray-page-navigation { position:absolute; top:calc(100% + 14px); left:0; right:0; display:flex; align-items:center; justify-content:space-between; gap:12px; font-size:11px; color:#747a8c; }
.tray-page-navigation button { background:var(--panel); border:1px solid var(--line); border-radius:5px; padding:7px 10px; font:600 11px 'Plus Jakarta Sans',sans-serif; color:var(--ink); cursor:pointer; }
.tray-page-navigation button:disabled { opacity:.45; cursor:default; }



.form-canvas:has(> .tray-page-navigation) { --tray-gap:66px; margin-bottom:calc(var(--tray-height,240px) + 93px); }
body.preview-mode .form-canvas:has(> .tray-page-navigation):not(:has(> [data-submit-placement="footer"])) { margin-bottom:66px; }
.page-arrow-controls { display:flex; align-items:center; gap:3px; margin-left:-6px; }
.form-page-controls .page-arrow-controls button { width:24px; height:26px; padding:0; font:19px/1 sans-serif; }
.page-arrow-controls button:disabled { opacity:.35; cursor:default; }

body:not(.preview-mode) #highlightFieldsBtn { display:none; }
body.preview-mode .top-actions > #highlightFieldsBtn { display:inline-flex; align-items:center; gap:6px; font-size:10px; }
#highlightFieldsBtn::before { content:''; width:9px; height:9px; border:1px solid #aeb7c7; border-radius:2px; }
#highlightFieldsBtn[aria-pressed="true"] { border-color:var(--purple); color:var(--purple); background:color-mix(in srgb,var(--purple) 7%,var(--panel)); }
#highlightFieldsBtn[aria-pressed="true"]::before { background:var(--purple); border-color:var(--purple); }
body.preview-mode.highlight-form-fields #formCanvas .canvas-element :is(input:not([type="hidden"]):not([type="button"]):not([type="submit"]):not([type="color"]):not([type="range"]),textarea,select):not(:disabled):not([readonly]) { background-color:rgba(101,88,232,.09)!important; outline:1px solid rgba(101,88,232,.25); outline-offset:1px; box-shadow:0 0 0 2px rgba(101,88,232,.04); }
body.preview-mode.highlight-form-fields #formCanvas .image-frame:has(.drawing-canvas)::after { content:''; position:absolute; inset:0; background:rgba(101,88,232,.07); outline:1px solid rgba(101,88,232,.25); pointer-events:none; z-index:2; }

body.preview-mode .form-page-controls { position:relative; z-index:4; overflow:visible; }
.page-filling-actions { margin-left:auto; display:flex; align-items:center; gap:8px; }
.page-filling-actions[hidden] { display:none; }
.page-filling-actions #highlightFieldsBtn { display:inline-flex; align-items:center; gap:6px; font-size:10px; white-space:nowrap; }
.page-filling-actions #previewBtn { white-space:nowrap; font-size:10px; }
@media(max-width:600px) { body.preview-mode .form-page-controls { flex-wrap:wrap; } }
.tavoryn-dialog { width:380px; max-width:calc(100vw - 32px); padding:24px; border:1px solid var(--line); border-radius:12px; background:var(--panel); color:var(--ink); box-shadow:0 22px 70px rgba(25,35,45,.22); font-family:'Plus Jakarta Sans',sans-serif; }
.tavoryn-dialog::backdrop { background:rgba(24,32,43,.38); backdrop-filter:blur(2px); }
.dialog-brand { color:#277a50; font:700 9px 'DM Mono',monospace; letter-spacing:1.8px; margin-bottom:12px; }
.tavoryn-dialog h2 { font-size:16px; line-height:1.5; font-weight:600; margin:0 0 18px; overflow-wrap:anywhere; }
.dialog-input-label { display:block; color:#858b9a; font-size:10px; margin-bottom:7px; }
.tavoryn-dialog input { box-sizing:border-box; width:100%; padding:10px 11px; border:1px solid var(--line); border-radius:6px; background:var(--panel); color:var(--ink); font:12px 'Plus Jakarta Sans',sans-serif; }
.tavoryn-dialog input:focus { outline:2px solid color-mix(in srgb,#277a50 35%,transparent); outline-offset:1px; }
.tavoryn-dialog [hidden] { display:none; }
.tavoryn-dialog footer { display:flex; justify-content:flex-end; gap:8px; margin-top:22px; }
.tavoryn-dialog button { border:1px solid var(--line); border-radius:6px; padding:8px 14px; cursor:pointer; background:var(--panel); color:var(--ink); font:600 11px 'Plus Jakarta Sans',sans-serif; }
.tavoryn-dialog .dialog-accept { background:#277a50; border-color:#277a50; color:white; }
.tavoryn-dialog .dialog-accept.destructive { background:#bb514d; border-color:#bb514d; }
.tavoryn-dialog button:hover { filter:brightness(.96); }
.tavoryn-dialog button:focus-visible { outline:2px solid #277a50; outline-offset:2px; }
.toast { background:var(--panel); color:var(--ink); border:1px solid var(--line); border-left:3px solid #277a50; border-radius:8px; box-shadow:0 8px 28px rgba(25,35,45,.14); font:11px/1.5 'Plus Jakarta Sans',sans-serif; max-width:calc(100vw - 40px); }
html[data-theme="dark"] .tavoryn-dialog,html[data-theme="dark"] .toast { background:#232735; color:#eef0f6; border-color:#414759; }
html[data-theme="dark"] .tavoryn-dialog input,html[data-theme="dark"] .tavoryn-dialog .dialog-cancel { background:#191d28; color:#eef0f6; border-color:#414759; }
html[data-theme="dark"] .dialog-brand { color:#7fc9a0; }

.tavoryn-wordmark { font-family:'Plus Jakarta Sans',sans-serif; font-weight:800; font-style:normal; letter-spacing:1.7px; }
.folder-create-menu { margin-left:auto; }
.folder-create-menu > summary { background:var(--workspace-color,var(--purple)); color:#fff; border-color:transparent; white-space:nowrap; }
.workspace-folders > .folder-file { background:var(--panel); border:1px solid var(--line); border-radius:8px; padding:10px; min-height:76px; }
.workspace-folders > .folder-file .folder-file-info { font-size:10px; }

/* Consistent file and folder type markers beside names. */
.file-type-icon { display:inline-flex; align-items:center; justify-content:center; flex:none; width:34px; height:34px; border-radius:6px; background:color-mix(in srgb,var(--workspace-color,var(--purple)) 12%,transparent); color:var(--workspace-color,var(--purple)); }
.folder-file-info > .file-type-icon { font:700 9px 'DM Mono',monospace; grid-column:1; grid-row:1 / 3; }
.file-type-icon svg { width:21px; height:21px; }
.file-type-icon.folder-icon { width:42px; height:38px; }
.signature-space { height:110px; width:100%; border-bottom:1px solid #adb3c0; display:flex; align-items:center; justify-content:center; }
.signature-image { width:100%; height:100%; object-fit:contain; }
.signature-placeholder { color:#989dab; font-size:12px; }
.signature-image[hidden],.signature-placeholder[hidden] { display:none; }
.signature-actions { display:none; gap:6px; margin-top:8px; flex-wrap:wrap; }
.preview-mode .signature-actions { display:flex; }
.signature-actions button,.signature-dialog button { background:var(--panel,#fff); border:1px solid #dce0e7; border-radius:6px; color:#4c5566; padding:6px 9px; font:500 11px 'DM Sans',sans-serif; cursor:pointer; }
.signature-dialog { width:min(540px,90vw); padding:24px; border:1px solid #dde2e9; border-radius:14px; color:#30394a; background:#fff; box-shadow:0 20px 70px #101a3440; }
.signature-dialog::backdrop { background:#18213966; }
.signature-dialog h2 { margin:0 0 8px; font:700 20px 'Plus Jakarta Sans',sans-serif; }
.signature-dialog p,.signature-save-choice { font:12px/1.6 'DM Sans',sans-serif; }
.signature-dialog canvas { display:block; width:100%; height:160px; background:#fff; border:1px solid #d9dfe8; border-radius:8px; touch-action:none; }
.signature-dialog-tools,.signature-dialog footer { display:flex; gap:8px; justify-content:space-between; margin:12px 0; }
.signature-dialog footer { justify-content:flex-end; margin-bottom:0; }
.signature-dialog [data-sign="accept"] { background:#277a50; color:white; border-color:#277a50; }
.signature-error { color:#ac3a3a; min-height:18px; }
html[data-theme="dark"] .signature-dialog { background:#232735; color:#eef0f6; border-color:#42495a; }
body.highlight-fillable-fields .canvas-element[data-type="signature"] .signature-space { background:#8e83ec14; }
.preview-mode .signature-space { cursor:pointer; }
.preview-mode .signature-space:focus-visible { outline:2px solid var(--purple); outline-offset:3px; }
.preview-mode.highlight-form-fields .signature-space { background:rgba(101,88,232,.09); box-shadow:inset 0 0 0 1px rgba(101,88,232,.2); border-radius:4px; }
.signature-dialog-tools { flex-wrap:wrap; }
.page-filling-actions #publishBtn { background:var(--purple); border-color:var(--purple); color:white; white-space:nowrap; font-weight:600; }
/* Keep account access anchored to the application edge in every main view. */
.topbar,.workspace-top { padding-right:70px; }
.topbar { z-index:180; }
.workspace-top { position:sticky; top:0; z-index:180; }
.topbar .account-menu,.workspace-top .account-menu { position:fixed; top:16px; right:20px; margin:0; z-index:181; }
.account-panel { max-height:calc(100dvh - 72px); overflow-y:auto; }
.topbar .breadcrumb { min-width:0; overflow:hidden; white-space:nowrap; }
.topbar .top-actions { flex-shrink:0; }
body:not(.preview-mode) .top-actions > .file-viewer-actions { display:none; }
@media(max-width:680px) { .topbar,.workspace-top { padding-right:60px; } .topbar .account-menu,.workspace-top .account-menu { right:14px; } }
/* Shared brand position across the workspace and editor headers. */
.topbar,.workspace-top { padding-left:244px; }
.topbar > .brand,.workspace-top > .brand { position:fixed; top:0; left:20px; height:64px; width:auto; margin:0; display:flex; align-items:center; z-index:181; }
@media(max-width:680px) { .topbar,.workspace-top { padding-left:190px; } }
/* Workspace navigation follows the same content edge as Your forms. */
.workspace-view:not(.choosing) .workspace-top { height:112px; padding-top:64px; padding-left:max(32px,calc((100vw - 1120px)/2 + 32px)); gap:10px; }
.workspace-top #allWorkspacesBtn,.workspace-top #workspaceSelector { height:32px; margin:0; padding:0 12px; border:1px solid var(--line); border-radius:6px; background:var(--panel); color:var(--ink); font:600 11px 'Plus Jakarta Sans',sans-serif; }
.workspace-top #allWorkspacesBtn { display:inline-flex; align-items:center; gap:8px; white-space:nowrap; }
.workspace-top #workspaceSelector { max-width:min(300px,45vw); }
.workspace-top #allWorkspacesBtn:hover { background:color-mix(in srgb,var(--purple) 10%,var(--panel)); }
.workspace-customizer #renameWorkspace { position:static; display:block; width:100%; margin:0 0 6px; padding:9px 10px; border:1px solid var(--line); border-radius:6px; text-align:left; font:600 11px 'Plus Jakarta Sans',sans-serif; background:var(--panel); color:var(--ink); }
html[data-theme="dark"] .workspace-top :is(#allWorkspacesBtn,#workspaceSelector) { background:#2c3546; border-color:#454e62; color:#eef0f6; }
.workspace-view:not(.choosing) .workspace-top { height:64px; padding-top:0; padding-left:max(220px,calc((100vw - 1120px)/2 + 32px)); }
@media(max-width:680px) {
 .workspace-view:not(.choosing) .workspace-top { padding-left:200px; gap:6px; }
 .workspace-top #allWorkspacesBtn,.workspace-top #workspaceSelector { padding-left:7px; padding-right:7px; font-size:10px; }
 .workspace-top #workspaceSelector { min-width:0; flex:1; }
}
/* One consistent return control in workspace, build, and preview headers. */
.topbar,.workspace-view:not(.choosing) .workspace-top { padding-left:220px; }
.topbar #previewWorkspaceBack,.workspace-top #allWorkspacesBtn { display:inline-flex; align-items:center; justify-content:center; flex:0 0 138px; width:138px; height:32px; margin:0 10px 0 0; padding:0 10px; border:1px solid var(--line); border-radius:6px; background:var(--panel); color:var(--ink); font:600 11px 'Plus Jakarta Sans',sans-serif; gap:6px; cursor:pointer; white-space:nowrap; }
.topbar #previewWorkspaceBack:hover,.workspace-top #allWorkspacesBtn:hover { background:color-mix(in srgb,var(--purple) 10%,var(--panel)); }
.topbar #workspaceLink,.topbar #workspaceLink + b { display:none; }
html[data-theme="dark"] .topbar #previewWorkspaceBack,html[data-theme="dark"] .workspace-top #allWorkspacesBtn { background:#2c3546; color:#eef0f6; border-color:#454e62; }
@media(max-width:680px) { .topbar,.workspace-view:not(.choosing) .workspace-top { padding-left:200px; } }
.workspace-view.choosing .workspace-top #allWorkspacesBtn { display:none; }
.workspace-customizer #workspaceDescription,.workspace-customizer label[for="workspaceDescription"] { display:none; }
.workspace-customizer #editWorkspaceDescription { display:block; width:100%; margin:0 0 6px; padding:9px 10px; border:1px solid var(--line); border-radius:6px; text-align:left; font:600 11px 'Plus Jakarta Sans',sans-serif; background:var(--panel); color:var(--ink); cursor:pointer; }
.workspace-customizer #deleteWorkspace { background:transparent; border:1px solid #c45b58; border-radius:6px; color:#b34340; padding:9px 10px; text-align:left; font:600 11px 'Plus Jakarta Sans',sans-serif; cursor:pointer; margin-top:8px; }
html[data-theme="dark"] .workspace-customizer #deleteWorkspace { color:#ffaaa5; border-color:#a65a5a; }
.workspace-chooser-actions { justify-content:flex-end; }
.workspace-title h1 { margin-top:0; padding-right:180px; }
.workspace-title .create-new,.workspace-title .workspace-options-dropdown { top:0; }
.workspace-chooser-actions { justify-content:space-between; align-items:flex-start; margin-bottom:8px; }
.workspace-chooser-actions h1 { margin:0; }
.workspace-chooser-actions .new-workspace { flex-shrink:0; }
@media(max-width:600px) { .workspace-chooser-actions { flex-wrap:wrap; } }
.app-watermark { position:fixed; bottom:7px; left:50%; transform:translateX(-50%); z-index:400; pointer-events:none; user-select:none; white-space:nowrap; font:500 10px/1.4 'Plus Jakarta Sans',sans-serif; letter-spacing:.35px; color:#737b8b; background:rgba(247,247,250,.85); border-radius:4px; padding:2px 7px; }
@media print { .app-watermark { display:none; } }
.new-workspace-menu { position:relative; flex-shrink:0; }
.new-workspace-menu summary { list-style:none; }
.new-workspace-menu summary::-webkit-details-marker { display:none; }
.workspace-type-options { position:absolute; top:calc(100% + 6px); right:0; width:250px; padding:6px; background:var(--panel); border:1px solid var(--line); border-radius:8px; box-shadow:var(--shadow); z-index:20; }
.workspace-type-options button { display:block; width:100%; padding:10px; border:0; border-radius:5px; background:transparent; color:var(--ink); text-align:left; font:12px 'Plus Jakarta Sans',sans-serif; cursor:pointer; }
.workspace-type-options button:hover { background:color-mix(in srgb,var(--purple) 12%,var(--panel)); }
.workspace-type-options small { display:block; color:var(--muted); font-size:10px; margin-top:4px; }
.workspace-type-label { display:block; color:var(--muted); font:600 9px 'Plus Jakarta Sans',sans-serif; margin-top:7px; text-transform:uppercase; letter-spacing:.6px; }
.compliance-workspace .workspace-gallery :is(.create-new,.workspace-folder-section,.workspace-spotlight,.workspace-tiles) { display:none; }
.compliance-workspace .workspace-options-dropdown { right:0; }
.compliance-workspace .workspace-gallery .create-new { display:block; }
.compliance-workspace #createNewMenu > :not(#newComplianceRegister) { display:none; }
.workspace-view #newComplianceRegister { display:grid; }
.compliance-register-list { display:none; }
.compliance-workspace .compliance-register-list { display:grid; grid-template-columns:repeat(auto-fill,minmax(250px,1fr)); gap:14px; margin-top:28px; }
.compliance-register-card { text-align:left; padding:18px; border:1px solid var(--line); border-radius:8px; background:var(--panel); color:var(--ink); cursor:pointer; font:13px 'Plus Jakarta Sans',sans-serif; }
.compliance-register-card:hover { background:color-mix(in srgb,var(--workspace-hover-color,var(--purple)) 10%,var(--panel)); }
.compliance-register-card :is(span,small) { display:block; margin-top:9px; color:var(--muted); font-size:11px; }
.compliance-register-editor { width:min(1240px,95vw); max-height:88vh; padding:24px; background:var(--panel); color:var(--ink); border:1px solid var(--line); border-radius:12px; }
.compliance-register-editor::backdrop { background:#17203280; }
.compliance-register-editor header,.compliance-register-editor footer { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.compliance-register-editor h2 { margin:0 0 6px; font-size:20px; }
.compliance-register-editor small { color:var(--muted); display:block; font-size:10px; }
.register-metadata { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin:24px 0; }
.register-metadata label { display:grid; gap:7px; font-size:11px; color:var(--muted); }
.compliance-register-editor :is(input,textarea,select,button) { font:11px/1.5 'Plus Jakarta Sans',sans-serif; padding:8px; border:1px solid var(--line); border-radius:5px; color:var(--ink); background:var(--panel); }
.compliance-register-editor :is(input,textarea,select) { width:100%; }
.compliance-register-editor textarea { min-height:68px; resize:vertical; }
.compliance-register-editor button { cursor:pointer; }
.register-table-wrap { overflow:auto; margin-bottom:18px; }
.compliance-register-editor table { width:100%; min-width:920px; border-collapse:collapse; }
.compliance-register-editor :is(th,td) { text-align:left; vertical-align:top; border-bottom:1px solid var(--line); padding:10px 6px; font-size:11px; }
.compliance-register-editor th:nth-child(2) { width:32%; }
.compliance-register-editor th:nth-child(4) { width:22%; }
.compliance-register-editor td button { margin-bottom:5px; }
.compliance-register-editor [data-register="delete"] { color:#c75b58; }
.compliance-workspace .workspace-title .create-new { right:44px; }
.compliance-workspace #createNewMenu > #newFolderBtn { display:grid; }
.compliance-workspace .workspace-gallery .workspace-folder-section { display:block; }
.folder-drop-target { outline:2px solid var(--workspace-color,var(--purple)); outline-offset:3px; background:color-mix(in srgb,var(--workspace-color,var(--purple)) 15%,var(--panel))!important; }
.folder-drop-out { display:none; position:absolute; bottom:12px; left:50%; transform:translateX(-50%); padding:12px 22px; border:2px dashed var(--line); border-radius:8px; background:var(--panel); color:var(--ink); font-size:12px; pointer-events:auto; }
.moving-folder-item .folder-drop-out { display:block; }
.file-options-menu .form-spotlight,.file-options-menu .form-spotlight.active { background:transparent; border:0; border-radius:4px; color:var(--ink); box-shadow:none; font:500 8px 'DM Sans',sans-serif; text-align:left; }
.file-options-menu .form-spotlight:hover { background:color-mix(in srgb,var(--purple) 10%,var(--panel)); }
/* Builder tools share appearance tokens instead of fixed light backgrounds. */
.workspace-toolbar { flex-wrap:wrap; height:auto; min-height:55px; gap:8px; padding-top:8px; padding-bottom:8px; }
.builder-view-controls,.layer-actions { display:flex; flex-wrap:wrap; gap:6px; }
.builder-view-controls { margin-left:auto; }
.builder-view-controls button,.layer-actions button,.group-selection-controls button { background:var(--panel); color:var(--ink); border:1px solid var(--line); border-radius:5px; padding:6px 8px; font:10px 'Plus Jakarta Sans',sans-serif; cursor:pointer; }
.builder-view-controls button[aria-pressed=true],.group-selection-controls button[aria-pressed=true] { background:color-mix(in srgb,var(--purple) 15%,var(--panel)); border-color:var(--purple); }
.layer-actions { margin-top:8px; }
#fieldSettings :disabled { opacity:.42; cursor:not-allowed; }
body:not(.preview-mode).hide-element-outlines #formCanvas :is(.canvas-element,.canvas-header,.editable-region,.group-selected) { border-color:transparent!important; outline:none!important; box-shadow:none!important; }
body:not(.preview-mode).hide-element-outlines #formCanvas :is(.drag-handle,.quick-delete,.resize-handle),body:not(.preview-mode).hide-element-outlines #formCanvas .canvas-element::before,body:not(.preview-mode).hide-element-outlines #formCanvas .canvas-header::before { display:none!important; }
body.highlight-form-fields #formCanvas .canvas-element :is(input:not([type=hidden]):not([type=color]):not([type=range]),textarea,select):not(:disabled):not([readonly]),body.highlight-form-fields #formCanvas .signature-space { background-color:rgba(101,88,232,.09)!important; outline:1px solid rgba(101,88,232,.3); }
.app-manager { width:min(620px,92vw); max-height:88vh; overflow:auto; border:1px solid var(--line); border-radius:12px; padding:24px; color:var(--ink); background:var(--panel); }
.app-manager::backdrop { background:#18203388; }
.app-manager header,.app-manager footer { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:16px; }
.app-manager h2 { margin:0; font-size:19px; }
.app-manager p { font-size:12px; line-height:1.6; color:var(--muted); }
.app-manager :is(input,select,button),.canvas-element :is(.timer-face button,.weather-controls button) { padding:8px; border:1px solid var(--line); border-radius:5px; color:var(--ink); background:var(--panel); font:11px 'Plus Jakarta Sans',sans-serif; }
.app-manager button { cursor:pointer; }
.app-manager select { width:100%; margin-bottom:10px; }
.manager-fields { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:16px 0; }
.manager-fields label { display:grid; gap:6px; font-size:11px; }
.manager-fields input { min-width:0; }
.timer-face { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.timer-face output { font:24px 'DM Mono',monospace; }
.timer-face input { width:100%; }
.weather-controls { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:8px; }
.weather-controls input { min-width:0; flex:1; }
.weather-value { width:100%; }
.canvas-element[data-type="weather"] { min-width:0; min-height:0; padding:0; }
.canvas-element[data-type="weather"] > label,
.canvas-element[data-type="weather"] .weather-credit,
.canvas-element[data-type="weather"] .weather-value[hidden] { display:none!important; }
.canvas-element[data-type="weather"] .weather-controls { margin:0; display:block; }
.canvas-element[data-type="weather"] .weather-controls button { width:100%; min-width:0; cursor:pointer; font-size:inherit; }
.canvas-element[data-type="weather"] .weather-controls button.has-reading { border-color:transparent; background:transparent; }
.canvas-element[data-type="weather"] .weather-status { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); }
.weather-edit-dialog form[hidden] { display:none; }
.weather-edit-dialog form label { display:grid; gap:6px; margin-bottom:12px; }
.weather-edit-dialog footer { flex-wrap:wrap; }
.weather-status,.weather-credit { display:block; margin-top:5px; font-size:10px; color:#646c7c; }
body:not(.preview-mode) .canvas-element :is(.timer-face,.weather-controls) button { pointer-events:none; }
.timer-face [hidden] { display:none!important; }
.canvas-element :is(.weather-place,.weather-value,.timer-face input) { box-sizing:border-box; border:1px solid #c3c9d4; border-radius:5px; padding:8px 10px; background:#fff; color:#20253a; font:12px 'Plus Jakarta Sans',sans-serif; }
.certification-manager { padding-bottom:48px; }
.certification-manager .manager-error { min-height:20px; }
.certification-saved-notice { position:absolute; bottom:10px; left:50%; transform:translate(-50%,6px); opacity:0; pointer-events:none; max-width:calc(100% - 32px); padding:7px 12px; border:1px solid #a7d6ba; border-radius:7px; background:#eaf7ef; color:#21613d; font:11px/1.4 'Plus Jakarta Sans',sans-serif; transition:opacity .18s ease,transform .18s ease; }
.certification-saved-notice.show { opacity:1; transform:translate(-50%,0); }
html[data-theme="dark"] .certification-saved-notice { background:#203d30; color:#b8e8cc; border-color:#427b59; }
@media(prefers-reduced-motion:reduce) { .certification-saved-notice { transition:none; } }
.certification-selection-actions { display:flex; justify-content:flex-start; margin:12px 0; }
.certification-manager #certPicker { margin-bottom:0; }
.certification-manager form > footer { justify-content:flex-end; }
.certification-manager [data-cert="delete"],.signature-dialog [data-sign="remove"] { margin-right:auto; }
.certification-manager [data-cert="delete"]:disabled,.signature-dialog [data-sign="remove"]:disabled { opacity:.4; cursor:not-allowed; }
.signature-dialog #savedSignaturePicker { display:block; width:100%; margin-bottom:18px; }
.signature-dialog label[for="signatureName"] { display:block; clear:both; margin-top:0; margin-bottom:8px; }
.signature-dialog #signatureName { display:block; width:100%; margin-bottom:12px; }
/* Login recovery is available before the editor's dialog system loads. */
#resetPassword { display:block; margin:18px auto 8px; min-height:44px; padding:10px 16px; border:0; border-radius:6px; background:transparent; color:#277a50; font:600 13px 'Plus Jakarta Sans',sans-serif; cursor:pointer; }
#resetPassword:hover { background:rgba(39,122,80,.08); }
.reset-dialog { width:min(420px,calc(100% - 32px)); max-height:calc(100dvh - 32px); overflow:auto; box-sizing:border-box; padding:28px; border:1px solid #e3e4ea; border-radius:14px; color:#20253a; background:#fff; box-shadow:0 24px 70px rgba(28,33,55,.2); }
.reset-dialog::backdrop { background:rgba(20,28,36,.5); }
.reset-dialog h2 { margin:0 0 12px; font-size:22px; }
.reset-dialog p { line-height:1.5; font-size:14px; }
.reset-dialog label { display:block; margin:20px 0 8px; font-size:13px; font-weight:600; }
.reset-dialog input { box-sizing:border-box; width:100%; padding:12px; border:1px solid #c6ccd0; border-radius:6px; font:16px 'Plus Jakarta Sans',sans-serif; }
.reset-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:12px; margin-top:22px; }
.reset-actions button { min-height:44px; padding:10px 16px; border:1px solid #c6ccd0; border-radius:7px; background:transparent; color:inherit; font:600 13px 'Plus Jakarta Sans',sans-serif; cursor:pointer; }
.reset-actions button[type=submit] { background:#277a50; border-color:#277a50; color:white; }
.reset-actions button:disabled { opacity:.6; cursor:wait; }
.reset-dialog :focus-visible,#resetPassword:focus-visible { outline:3px solid #f29a5b; outline-offset:3px; }
html[data-theme=dark] .reset-dialog { background:#232735; border-color:#383d4e; color:#eef0f6; }
html[data-theme=dark] #resetPassword { color:#8dd4ac; }
#resetPassword[hidden] { display:none; }
/* Mobile response entry: desktop layout remains available on computers. */
.mobile-home,.mobile-form-tools { display:none; }
body.mobile-entry-mode .mobile-home { display:block; }
body.mobile-entry-mode :is(.create-new,.new-workspace-menu,#renameWorkspace,#workspaceSettingsBtn,.workspace-customizer,.workspace-spotlight,.workspace-folder-section,.workspace-tiles,.workspace-choice-menu,.workspace-choice-panel,.file-options,.folder-delete,.database-create,.left-panel,.right-panel,.workspace-toolbar,.top-actions > button,.top-actions > .divider,.breadcrumb,.group-selection-controls,.add-form-page,.page-scale-label,.form-page-controls > small,.actions-tray-info,[data-cloud=import],.drag-handle,.resize-handle,.quick-delete) { display:none!important; }
body.mobile-entry-mode .workspace-title { display:block; padding:0; }
body.mobile-entry-mode .workspace-title h1 { margin:12px 0 8px; font-size:24px; }
body.mobile-entry-mode .workspace-gallery,body.mobile-entry-mode .workspace-chooser { padding:20px 16px 40px; }
body.mobile-entry-mode .workspace-choice-grid { grid-template-columns:1fr; gap:14px; }
body.mobile-entry-mode .workspace-top { height:auto; min-height:64px; padding:12px; flex-wrap:wrap; gap:10px; }
body.mobile-entry-mode .workspace-top .brand { width:auto; flex:1; }
body.mobile-entry-mode .workspace-top select { max-width:100%; font-size:16px; min-height:44px; }
body.mobile-entry-mode .cloud-controls { padding:12px; gap:8px; flex-wrap:wrap; }
body.mobile-entry-mode .cloud-controls > span { flex:1 0 100%; font-size:13px; }
body.mobile-entry-mode .cloud-controls button { min-height:44px; font-size:12px; }
.mobile-home nav { display:flex; gap:8px; margin:20px 0; }
.mobile-home nav button { flex:1; padding:12px; border:1px solid #cbd6cf; border-radius:10px; background:var(--panel,#fff); color:var(--ink); font:600 15px inherit; }
.mobile-home nav button[aria-pressed=true] { background:#277a50; color:white; border-color:#277a50; }
.mobile-home label { display:block; margin-bottom:8px; font-weight:600; }
.mobile-home input { box-sizing:border-box; width:100%; min-height:48px; border:1px solid #cbd6cf; border-radius:10px; padding:12px; font-size:16px; }
.mobile-list { display:grid; gap:12px; margin-top:18px; }
.mobile-entry { display:flex; flex-direction:column; gap:8px; align-items:flex-start; padding:18px; border:1px solid #dfe5e1; border-radius:12px; background:var(--panel,#fff); color:var(--ink); text-align:left; }
.mobile-entry strong { font-size:17px; overflow-wrap:anywhere; }
.mobile-entry span { font-size:13px; opacity:.75; }
body.mobile-entry-mode .app-shell { display:flex; flex-direction:column; height:100dvh; min-height:0; overflow:hidden; }
body.mobile-entry-mode .topbar { min-height:64px; flex-shrink:0; padding:10px 12px; }
body.mobile-entry-mode .topbar .brand { display:none; }
body.mobile-entry-mode #previewWorkspaceBack { min-height:44px; }
body.mobile-entry-mode .mobile-form-tools { display:flex; flex-wrap:wrap; gap:10px; padding:12px 16px; background:var(--panel,#fff); border-bottom:1px solid var(--line); }
.mobile-form-tools strong,.mobile-form-tools span,.mobile-form-tools small { flex-basis:100%; }
.mobile-form-tools strong { font-size:18px; }
.mobile-form-tools button { min-height:44px; padding:10px 14px; border:1px solid #cbd6cf; border-radius:8px; background:var(--panel,#fff); color:var(--ink); }
.mobile-form-tools [hidden] { display:none; }
body.mobile-entry-mode .canvas-area { display:block; flex:1; overflow:auto; padding:12px 12px 100px!important; -webkit-overflow-scrolling:touch; }
body.mobile-entry-mode .form-page-controls { flex-shrink:0; padding:10px 16px; gap:8px; }
body.mobile-entry-mode .form-page-controls select,body.mobile-entry-mode .form-page-controls button { min-height:44px; font-size:16px; }
body.mobile-entry-mode #formCanvas { transform:none!important; margin:0!important; }
body.mobile-entry-mode.mobile-pdf-form #formCanvas { zoom:var(--mobile-zoom,1); }
body.mobile-entry-mode:not(.mobile-pdf-form) #formCanvas { display:flex!important; flex-direction:column; gap:20px; width:100%!important; height:auto!important; min-height:0!important; padding:20px!important; box-sizing:border-box; }
body.mobile-entry-mode:not(.mobile-pdf-form) #formCanvas > :is(.canvas-element,.editable-region) { position:relative!important; left:auto!important; top:auto!important; right:auto!important; bottom:auto!important; transform:none!important; width:100%!important; height:auto!important; min-height:0!important; margin:0!important; box-sizing:border-box; order:var(--mobile-order,0); overflow:visible!important; }
body.mobile-entry-mode:not(.mobile-pdf-form) #formCanvas > .canvas-header { order:-1; }
body.mobile-entry-mode:not(.mobile-pdf-form) #formCanvas > .submit-element,body.mobile-entry-mode #formCanvas > .tray-page-navigation { order:100000; }
body.mobile-entry-mode:not(.mobile-pdf-form) #formCanvas :is(input:not([type=checkbox]):not([type=radio]),textarea,select,.submit,.weather-button) { min-height:48px!important; font-size:16px!important; box-sizing:border-box; max-width:100%; }
body.mobile-entry-mode:not(.mobile-pdf-form) #formCanvas :is(label,p,h1,h2,span) { white-space:normal; text-overflow:clip; }
body.mobile-entry-mode:not(.mobile-pdf-form) #formCanvas .drawing-canvas { max-width:100%; }
body.mobile-entry-mode #formCanvas::before,body.mobile-entry-mode #formCanvas::after { display:none!important; }
body.mobile-entry-mode.mobile-view-only #formCanvas :is(.submit-element,.signature-pad,.drawing-toolbar) { pointer-events:none; }
body.mobile-entry-mode :is(.pdf-viewer-card,.data-viewer-card,.folder-viewer-card) { width:calc(100% - 16px); max-width:100%; max-height:95dvh; }
body.mobile-entry-mode .data-table-wrap { overflow:auto; }
body.mobile-entry-mode :is(#previewBtn,#publishBtn,#saveTemplateBtn,#undoBtn,#redoBtn) { display:none!important; }
/* Compact mobile form chrome and a form-only screen. */
body.mobile-entry-mode .app-shell > .topbar { display:none!important; }
body.mobile-entry-mode .mobile-form-tools { order:-2; padding:8px 12px; flex-shrink:0; }
body.mobile-entry-mode .form-page-controls { order:-1; }
body.mobile-entry-mode.mobile-single-page .form-page-controls { display:none!important; }
.mobile-form-heading { display:flex; align-items:center; gap:8px; width:100%; min-width:0; }
.mobile-form-heading > strong { flex:1; min-width:0; font-size:15px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.mobile-form-heading > button { flex-shrink:0; white-space:nowrap; padding:8px 10px; font-size:12px; }
.mobile-form-heading [data-mobile-back] { min-width:44px; font-size:22px; padding:4px; }
.mobile-form-options { position:relative; flex-shrink:0; }
.mobile-form-options > summary { display:grid; place-items:center; cursor:pointer; width:44px; height:44px; border:1px solid #cbd6cf; border-radius:8px; list-style:none; }
.mobile-form-options > summary::-webkit-details-marker { display:none; }
.mobile-form-options > div { position:absolute; z-index:20; top:calc(100% + 8px); right:0; width:min(280px,calc(100vw - 32px)); display:flex; flex-direction:column; gap:12px; padding:16px; border:1px solid var(--line); border-radius:10px; background:var(--panel,#fff); color:var(--ink); box-shadow:0 8px 30px #0002; }
.mobile-form-options span,.mobile-form-options small { font-size:13px; line-height:1.5; }
.mobile-exit-fullscreen { display:none; }
body.desktop-entry-mode .mobile-exit-fullscreen { display:none!important; }
body.mobile-entry-mode.mobile-form-fullscreen .app-shell { position:fixed; inset:0; width:100%; height:100dvh; z-index:110; background:var(--panel,#fff); }
body.mobile-entry-mode.mobile-form-fullscreen :is(.mobile-form-tools,.form-page-controls) { display:none!important; }
body.mobile-entry-mode.mobile-form-fullscreen .canvas-area { padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) calc(70px + env(safe-area-inset-bottom,0px)) env(safe-area-inset-left,0px)!important; }
body.mobile-entry-mode.mobile-form-fullscreen #formCanvas { box-shadow:none; border-radius:0; }
body.mobile-entry-mode.mobile-form-fullscreen .mobile-exit-fullscreen:not([hidden]) { display:block; position:fixed; top:calc(8px + env(safe-area-inset-top,0px)); bottom:auto; right:calc(12px + env(safe-area-inset-right,0px)); z-index:111; min-height:44px; padding:10px 16px; border:1px solid #cbd6cf; border-radius:24px; background:#fff; color:#20382c; box-shadow:0 3px 16px #0002; font:600 13px 'Plus Jakarta Sans',sans-serif; }
body.mobile-entry-mode .app-shell > .workspace { flex:1; min-height:0; width:100%; }
body.mobile-entry-mode.mobile-form-fullscreen .app-watermark { display:none!important; }
body.mobile-entry-mode.mobile-form-fullscreen .canvas-area { background:#fffefb; }
/* Icon actions remain large enough to tap while preserving form space. */
.mobile-form-heading > button:is([data-mobile-highlight],[data-mobile-fit],[data-mobile-fullscreen]) { width:44px; height:44px; padding:9px; display:grid; place-items:center; }
.mobile-form-heading > button[aria-pressed=true] { background:#e0f2e6; border-color:#277a50; color:#1f6542; }
.mobile-connection summary[data-state=online] { color:#277a50; }
.mobile-connection summary[data-state=offline] { color:#966000; }
.mobile-connection summary[data-state=error] { color:#b62b2b; }
.mobile-connection summary[data-state=pending] { color:#356bb2; }
.mobile-connection p { font-size:12px; line-height:1.5; margin:0; }
body.mobile-entry-mode .form-page-controls .page-filling-actions { display:none!important; }
body.mobile-entry-mode .cloud-controls [data-cloud=offline] { display:none!important; }
/* Full-screen exit stays in the upper-right corner, never at the form footer. */
body.mobile-entry-mode.mobile-form-fullscreen .mobile-exit-fullscreen:not([hidden]) { display:grid; place-items:center; top:calc(8px + env(safe-area-inset-top,0px)); bottom:auto; right:calc(12px + env(safe-area-inset-right,0px)); width:44px; height:44px; padding:9px; border-radius:8px; }
body.mobile-entry-mode.mobile-form-fullscreen .canvas-area { padding-top:calc(60px + env(safe-area-inset-top,0px))!important; padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))!important; }
/* The native picker remains keyboard/touch accessible; displayed text is field-specific. */
.formatted-date { position:relative; width:100%; min-height:36px; }
.formatted-date input { position:relative; z-index:1; width:100%; color:transparent!important; -webkit-text-fill-color:transparent!important; caret-color:transparent; }
.formatted-date input::-webkit-datetime-edit { opacity:0; }
.formatted-date-value { position:absolute; inset:0 30px 0 10px; z-index:2; display:flex; align-items:center; pointer-events:none; font:inherit; color:inherit; white-space:nowrap; overflow:hidden; }
.pdf-import-field .formatted-date { height:100%; min-height:0; }
.pdf-import-field .formatted-date-value { left:4px; right:18px; }
/* Hidden element parts keep their content and settings, but occupy no form space. */
.part-setting-heading { display:flex!important; align-items:center; justify-content:space-between; gap:8px; }
.part-setting-heading button { display:grid; place-items:center; flex-shrink:0; width:32px; height:32px; padding:5px; border:1px solid var(--line); border-radius:6px; background:transparent; color:var(--ink); cursor:pointer; }
.part-setting-heading button[aria-pressed=false] { color:var(--muted); background:rgba(127,127,127,.08); }
.part-setting-collapsed { display:none!important; }
#formCanvas [data-hidden-parts],.export-form-page [data-hidden-parts] { min-height:0!important; }
[data-hidden-parts~="label"] > label,
[data-hidden-parts~="helper"] > .helper-text,
[data-hidden-parts~="content"][data-type="heading"] > h2,
[data-hidden-parts~="content"][data-type="text"] > p:not(.helper-text),
[data-hidden-parts~="subcontent"] > p:not(.helper-text) { display:none!important; }
[data-hidden-parts~="placeholder"] :is(input,textarea)::placeholder { color:transparent!important; opacity:0!important; }
[data-hidden-parts~="button"] .submit,
[data-hidden-parts~="weatherButtonText"] [data-weather]:not(.has-reading) { font-size:0!important; }
[data-hidden-parts~="button"] .submit::after { content:'→'; font-size:16px; }
[data-hidden-parts~="weatherButtonText"] [data-weather]:not(.has-reading)::after { content:'☀'; font-size:16px; }
[data-hidden-parts~="eyebrow"] > .eyebrow,
[data-hidden-parts~="title"] > h1,
[data-hidden-parts~="description"] > p { display:none!important; }
body #formCanvas [data-hidden-parts~="button"] button.submit,
body #formCanvas [data-hidden-parts~="weatherButtonText"] button[data-weather]:not(.has-reading),
body .export-form-page [data-hidden-parts~="button"] button.submit,
body .export-form-page [data-hidden-parts~="weatherButtonText"] button[data-weather]:not(.has-reading) { font-size:0!important; }
/* Button faces fill their element bounds on both resize axes. */
.canvas-element.submit-element,
.canvas-element[data-type="weather"] { display:flex; flex-direction:column; padding:0; min-width:0; min-height:0; }
.canvas-element.submit-element > .submit,
.canvas-element[data-type="weather"] > .weather-controls { flex:1 1 auto; width:100%; min-width:0; min-height:0; margin:0; }
.canvas-element[data-type="weather"] > .weather-controls { display:flex; flex-wrap:nowrap; align-items:stretch; }
.canvas-element[data-type="weather"] .weather-controls > button { flex:1 1 auto; min-height:0; }
.canvas-element.submit-element > .submit,
.canvas-element[data-type="weather"] .weather-controls > button { box-sizing:border-box; max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.canvas-element.submit-element[data-resized="true"] > .submit,
.canvas-element[data-type="weather"][data-resized="true"] .weather-controls > button { padding:0 4px; }
/* Keep browser overscroll inside content, away from app chrome. */
html,body { width:100%; height:100%; overflow:hidden; overscroll-behavior:none; }
body { position:fixed; inset:0; }
.app-shell { height:100dvh; min-height:0; }
.workspace-view { height:100dvh; min-height:0; overflow-y:auto; overscroll-behavior-y:contain; }
.workspace-top { position:sticky; top:0; z-index:180; }
.canvas-area,.workspace-gallery,.workspace-chooser,.left-panel,.right-panel { overscroll-behavior-y:contain; }
.topbar,.workspace-top { padding-right:116px; }
.cloud-controls[hidden] { display:none!important; }
.global-sync-status { position:fixed; top:10px; right:66px; z-index:182; color:#277a50; }
.global-sync-status > summary { width:44px; height:44px; display:grid; place-items:center; list-style:none; cursor:pointer; border-radius:8px; }
.global-sync-status > summary::-webkit-details-marker { display:none; }
.global-sync-status > summary:focus-visible { outline:2px solid currentColor; }
.global-sync-status[data-state=offline] { color:#966000; }
.global-sync-status[data-state=error] { color:#b62b2b; }
.global-sync-status[data-state=pending] { color:#356bb2; }
.global-sync-status[data-state=queued] { color:#a77618; }
.global-sync-status > div { position:absolute; right:0; top:48px; width:min(300px,calc(100vw - 32px)); padding:16px; border:1px solid var(--line); border-radius:10px; background:var(--panel); color:var(--ink); box-shadow:0 6px 24px #0002; font-size:13px; }
.global-sync-status small { line-height:1.5; display:block; }
body.mobile-entry-mode .app-shell > .topbar { display:flex!important; height:64px; min-height:64px; padding:0; }
body.mobile-entry-mode .topbar > .brand { display:flex!important; }
body.mobile-entry-mode .topbar > :not(.brand):not(.top-actions),body.mobile-entry-mode .top-actions > :not(.account-menu) { display:none!important; }
body.mobile-entry-mode.mobile-form-fullscreen .app-shell > .topbar { display:none!important; }
body.mobile-entry-mode.mobile-form-fullscreen .global-sync-status { display:none; }
.account-name-setting { display:block; margin-top:12px; font-size:11px; }
.account-name-setting input { width:100%; margin:6px 0; padding:7px; border:1px solid var(--line); border-radius:4px; background:var(--panel); color:var(--ink); }
@media(max-width:680px) { .topbar,.workspace-top { padding-right:110px; } .global-sync-status { right:58px; } }
/* Company workspace and role management. */
.team-dialog { width:min(1000px,calc(100vw - 32px)); max-height:90dvh; border:1px solid var(--line); border-radius:16px; padding:0; background:var(--panel); color:var(--ink); box-shadow:0 24px 80px #0004; font:13px 'Plus Jakarta Sans',sans-serif; }
.team-dialog::backdrop { background:#18282080; }
.team-dialog > header { display:flex; justify-content:space-between; align-items:flex-start; gap:20px; padding:24px 28px 12px; }
.team-dialog h2 { margin:8px 0; font-size:24px; }.team-dialog p,.team-dialog small { color:var(--muted); line-height:1.6; }.team-dialog small { display:block; }.team-dialog h4 { margin:0 0 5px; font-size:14px; }
.team-dialog nav { display:flex; gap:8px; padding:0 28px 16px; border-bottom:1px solid var(--line); flex-wrap:wrap; }.team-dialog button { font:600 12px 'Plus Jakarta Sans',sans-serif; background:var(--panel); color:var(--ink); border:1px solid var(--line); padding:9px 13px; border-radius:7px; cursor:pointer; }.team-dialog button:hover,.team-dialog nav [aria-current=true] { background:#e5f2e9; color:#205f41; border-color:#a5c7b3; }.team-dialog button:disabled { opacity:.5; cursor:wait; }.team-dialog header>button { font-size:22px; }
.team-content { padding:20px 28px 28px; }.team-notice { padding:10px 14px; border-radius:8px; background:color-mix(in srgb,var(--ink) 4%,var(--panel)); }.team-section-title { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }.team-section-title h3 { margin-right:auto; }.team-dialog label { display:block; margin:15px 0; font-weight:600; }.team-dialog input:not([type=checkbox]),.team-dialog select { display:block; box-sizing:border-box; width:100%; border:1px solid var(--line); background:var(--panel); color:var(--ink); border-radius:7px; padding:11px; margin-top:7px; font:inherit; }.team-dialog form { max-width:620px; }.team-dialog form footer { display:flex; justify-content:flex-end; gap:10px; margin-top:22px; }.team-dialog form footer button:last-child,.team-dialog form>button { background:#247d54; color:white; }.team-file,.team-row { display:flex; align-items:center; gap:16px; padding:18px 0; border-bottom:1px solid var(--line); }.team-file-icon { font-size:25px; color:#247d54; background:#e5f2e9; padding:13px; border-radius:9px; }.team-file-actions { margin-left:auto; display:flex; flex-wrap:wrap; gap:6px; }.team-row>span { flex:1; }.team-empty { text-align:center; padding:50px 20px; }.team-table-wrap { overflow:auto; }.team-dialog table { border-collapse:collapse; width:100%; text-align:left; }.team-dialog th,.team-dialog td { padding:13px 10px; border-bottom:1px solid var(--line); }.team-dialog pre { white-space:pre-wrap; overflow-wrap:anywhere; }.team-search { max-width:440px; }
body[data-team-access=view] #formCanvas :is(input,textarea,select,button,.signature-space,.drawing-canvas) { pointer-events:none; }
body[data-team-access=view] #formCanvas :is(input,textarea,select) { opacity:.8; }
body[data-team-access=view] :is(#previewBtn,#publishBtn,#saveTemplateBtn),body[data-team-access=contribute] :is(#previewBtn,#publishBtn,#saveTemplateBtn) { display:none!important; }
@media(max-width:600px){.team-dialog { width:calc(100vw - 16px); }.team-dialog > header,.team-content { padding:16px; }.team-dialog nav { padding:0 16px 12px; }.team-file { flex-wrap:wrap; }.team-file-actions { width:100%; margin:0; }.team-dialog input,.team-dialog select { font-size:16px!important; }}
.global-sync-status .connection-last-update,.mobile-connection .connection-last-update { color:#80858d; font-size:11px; font-weight:400; line-height:1.5; margin:14px 0 0; padding-top:10px; border-top:1px solid var(--line); }
/* Workspace switcher sits beside the connection and account icons. */
.workspace-top #allWorkspacesBtn { position:fixed; top:10px; right:116px; z-index:181; display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; min-width:44px; flex:none; padding:10px; margin:0; border-radius:8px; }
.workspace-top #allWorkspacesBtn:focus-visible { outline:2px solid var(--purple); outline-offset:2px; }
.workspace-view.choosing .workspace-top #allWorkspacesBtn { display:none; }
@media(max-width:680px) { .workspace-top #allWorkspacesBtn { right:108px; } }
@media(max-width:360px) { .workspace-top > .brand .tavoryn-wordmark { font-size:12px; letter-spacing:1px; } }
/* Legacy buttons remain available to internal navigation, never as duplicate header controls. */
body #allWorkspacesBtn,body #previewWorkspaceBack,body #workspaceLink,body #workspaceLink + b { display:none!important; }
.workspace-switcher { position:fixed; top:10px; right:116px; z-index:182; color:var(--ink); }
.workspace-switcher > summary { display:grid; place-items:center; width:44px; height:44px; border:1px solid var(--line); border-radius:8px; background:var(--panel); cursor:pointer; list-style:none; }
.workspace-switcher > summary::-webkit-details-marker { display:none; }
.workspace-switcher > summary:hover,.workspace-switcher[open] > summary { background:color-mix(in srgb,var(--purple) 10%,var(--panel)); }
.workspace-switcher > summary:focus-visible,.workspace-switcher button:focus-visible { outline:2px solid var(--purple); outline-offset:2px; }
.workspace-switcher nav { position:absolute; right:0; top:52px; width:min(280px,calc(100vw - 32px)); max-height:65dvh; overflow:auto; padding:8px; border:1px solid var(--line); border-radius:10px; background:var(--panel); box-shadow:0 8px 24px #0002; }
.workspace-switcher nav button { display:block; width:100%; padding:12px; border:0; border-radius:6px; background:transparent; color:var(--ink); font:500 13px 'Plus Jakarta Sans',sans-serif; text-align:left; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; cursor:pointer; }
.workspace-switcher nav button:hover,.workspace-switcher nav button[aria-current=page] { background:color-mix(in srgb,var(--purple) 10%,var(--panel)); }
.workspace-switcher nav small { display:block; padding:14px 12px 6px; border-top:1px solid var(--line); margin-top:6px; color:var(--muted); font-size:10px; letter-spacing:.6px; }.workspace-switcher nav p { padding:0 12px; color:var(--muted); font-size:12px; }
body.mobile-entry-mode.mobile-form-fullscreen .workspace-switcher { display:none; }
@media(max-width:680px) { .workspace-switcher { right:108px; } }
@media(max-width:360px) { .topbar > .brand .tavoryn-wordmark { font-size:12px; letter-spacing:1px; } }
body:not(.mobile-entry-mode) .topbar,body:not(.mobile-entry-mode) .workspace-top { padding-right:176px; }
@media(max-width:680px) { .workspace-switcher nav { position:fixed; top:62px; right:16px; } }

/* Match the creation action position in both workspace views. */
.workspace-chooser { max-width:1120px; padding-top:60px; }
.workspace-chooser-actions { position:relative; min-height:46px; padding-right:210px; }
.workspace-chooser-actions .new-workspace-menu { position:absolute; right:44px; top:0; }
.workspace-chooser-actions .new-workspace { margin:0; white-space:nowrap; }
.pdf-page-background { pointer-events:none !important; user-select:none; }
@media(max-width:600px) {
 .workspace-chooser-actions { padding-right:0; padding-top:48px; }
}
.profile-card { max-height:calc(100dvh - 40px); overflow:auto; }
.profile-edit-form { display:grid; gap:14px; text-align:left; }
.profile-edit-form label { display:grid; gap:6px; font-size:12px; }
.profile-edit-form input { width:100%; padding:10px; border:1px solid var(--line,#ddd); border-radius:6px; background:var(--panel,#fff); color:var(--ink,#222); }
.profile-edit-form button,[data-check-connection] { padding:10px 14px; border:0; border-radius:6px; background:var(--purple); color:white; cursor:pointer; }
button:disabled { cursor:default; opacity:.5; }
.connection-cooldown { color:#80858d; font-size:12px; }
.file-page:not(.hidden) { position:fixed; inset:64px 0 0; z-index:140; display:block; padding:0; background:var(--panel,#fff); }
.file-page > div:not(.folder-drop-out) { width:100%; height:100%; max-width:none; max-height:none; border:0; border-radius:0; box-shadow:none; display:flex; flex-direction:column; }
.file-page header { flex-shrink:0; padding:12px 18px; flex-wrap:wrap; gap:10px; }
.file-page header h2 { font-size:16px; margin:0; }
.document-pages { flex:1; min-height:0; overflow:auto; padding:12px; background:#e9eaee; touch-action:pan-x pan-y; }
.document-sheet { display:block; width:calc(100% * var(--document-zoom,1)); max-width:none; height:auto; margin:0 auto 14px; background:white; }
.document-zoom { display:flex; gap:8px; align-items:center; }
.document-zoom button { min-width:34px; min-height:34px; border:1px solid #ccc; border-radius:6px; cursor:pointer; }
#pdfViewerFrame[hidden] { display:none!important; }
.file-page .folder-viewer-list,.file-page .data-table-wrap { flex:1; min-height:0; overflow:auto; }
.company-workspace-page[open] { position:fixed; inset:64px 0 0; margin:0; width:100%; max-width:none; height:calc(100dvh - 64px); max-height:none; border:0; border-radius:0; z-index:130; box-shadow:none; }
.company-workspace-page .team-content { max-width:1120px; margin:auto; }
.company-workspace-page .team-file { background:var(--panel,#fff); border:1px solid var(--line,#ddd); border-radius:8px; }
.uploaded-file-list { padding:20px; overflow:auto; }
.uploaded-file-row { display:flex; align-items:center; gap:12px; padding:14px 0; border-bottom:1px solid #ddd; }
.uploaded-file-row > div { flex:1; min-width:0; }
.uploaded-file-row small { display:block; color:#858995; margin-top:6px; }
.file-sync-icon { display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; width:24px; height:24px; color:#378263; }
.file-sync-icon[data-state=pending] { color:#a77618; }
.file-sync-icon[data-state=error] { color:#b54242; }
.file-sync-icon[data-state=offline],.file-sync-icon[data-state=local] { color:#858995; }
.workspace-tile > .file-sync-icon { position:absolute; right:42px; bottom:12px; }
.mobile-entry { position:relative; padding-right:44px!important; }
.mobile-entry > .file-sync-icon { position:absolute; right:12px; top:calc(50% - 12px); }
.workspace-file-filters { display:flex; align-items:center; gap:8px; margin-top:24px; }
.workspace-file-filters > button,.expanding-search > button { border:1px solid var(--line,#ddd); background:var(--panel,#fff); color:var(--ink,#333); padding:8px 12px; border-radius:7px; cursor:pointer; }
.workspace-file-filters > button[aria-pressed=true] { color:var(--purple); border-color:var(--purple); }
.expanding-search { margin-left:auto; display:flex; align-items:center; gap:8px; min-width:0; }
.expanding-search > button { display:flex; padding:8px; }
.expanding-search input { width:min(220px,35vw); min-width:0; padding:8px; border:1px solid #ccc; border-radius:6px; }
.expanding-search input[hidden],.workspace-tile[hidden] { display:none!important; }
body.mobile-entry-mode .workspace-file-filters { display:none; }
.mobile-home > nav { align-items:center; flex-wrap:wrap; }
.mobile-home .expanding-search input { width:150px; }
.workspace-gallery.filtering-files > .workspace-tiles { display:grid; }
.workspace-gallery.filtering-files > .workspace-folder-section,.workspace-gallery.filtering-files > .workspace-spotlight { display:none; }
.workspace-search-uploads { display:grid; gap:10px; margin-top:12px; }
.search-file-result { padding:14px; text-align:left; border:1px solid var(--line,#ddd); border-radius:8px; background:var(--panel,#fff); color:var(--ink,#333); cursor:pointer; }
body.mobile-entry-mode .workspace-search-uploads { display:none; }
.company-workspace-page .team-file { display:flex; padding:10px 14px; gap:10px; }
.company-workspace-page .team-file > .folder-file-info { flex:1; min-width:0; }
.company-workspace-page .team-file .file-options { flex-shrink:0; }
.company-folder { margin-bottom:24px; }
.company-folder > h3 { font-size:13px; color:#777e8b; }
.company-workspace-page .team-file .file-options-menu { z-index:10; }
.team-search[hidden],.company-folder[hidden],.team-file[hidden] { display:none!important; }
.company-file-tabs { display:flex; gap:6px; align-items:center; }
.company-file-tabs button[aria-pressed=true] { background:#e5f2eb; border-color:#9bc9b1; color:#277a50; }
.company-create-menu { position:relative; margin-left:12px; }
.company-create-menu > summary { list-style:none; border-radius:6px; padding:10px 13px; background:#277a50; color:white; cursor:pointer; white-space:nowrap; font-size:12px; }
.company-create-menu > summary::-webkit-details-marker { display:none; }
.company-create-menu > div { position:absolute; right:0; top:calc(100% + 8px); min-width:220px; padding:6px; display:grid; gap:4px; border:1px solid #ddd; border-radius:8px; background:var(--panel,#fff); box-shadow:0 8px 25px #0002; z-index:20; }
.company-workspace-page .team-section-title { display:flex; flex-wrap:wrap; gap:10px; justify-content:flex-start; }
.company-workspace-page > header,.company-workspace-page > nav { max-width:1120px; margin:auto; }
body.mobile-entry-mode .company-create-menu { display:none; }
@media(max-width:600px) { .company-workspace-page .team-content { padding:16px; } .company-workspace-page > header { padding:16px; } .company-workspace-page > nav { padding:8px 16px; } .company-file-tabs button { padding:8px; } }
#pdfViewer.file-page:not(.hidden),#dataViewer.file-page:not(.hidden) { z-index:142; }
.mobile-pdf-zoom { display:none; }
body.mobile-entry-mode.mobile-pdf-form .mobile-pdf-zoom { display:flex; align-items:center; gap:8px; }
body.mobile-entry-mode.mobile-pdf-form .canvas-area { touch-action:pan-x pan-y; }
.spotlight-card > .file-sync-icon { position:absolute; right:40px; top:10px; }
.search-file-result { display:flex; align-items:center; justify-content:space-between; }
.profile-edit-form [hidden] { display:none!important; }
.uploaded-file-row > button,.uploaded-files-page header button { border:1px solid var(--line,#d8dce4); border-radius:7px; padding:9px 13px; background:var(--panel,#fff); color:var(--ink,#263248); cursor:pointer; }
.uploaded-file-row > div:first-child { overflow-wrap:anywhere; }
.login-version { position:fixed; right:16px; bottom:max(12px,env(safe-area-inset-bottom)); color:#8a8f98; font-size:11px; font-weight:400; letter-spacing:.2px; }
.about-content { width:100%; max-width:720px; margin:0 auto; padding:32px 24px; overflow:auto; line-height:1.7; }
.about-content h3 { font-size:28px; margin:0 0 10px; }
.about-content dl { display:grid; grid-template-columns:150px 1fr; gap:12px 20px; margin:28px 0; }
.about-content dt,.about-version-note { color:#858b96; }
.about-content dd { margin:0; }
.about-page header button { border:1px solid var(--line); border-radius:7px; background:var(--panel); color:var(--ink); padding:9px 13px; cursor:pointer; }
@media(max-width:480px) { .about-content dl { grid-template-columns:1fr; gap:4px; } .about-content dd { margin-bottom:14px; } }
.about-page.file-page:not(.hidden) { z-index:150; }
.about-dialog { width:min(560px,calc(100vw - 32px)); max-height:calc(100dvh - 48px); padding:0; border:1px solid var(--line,#ddd); border-radius:14px; background:var(--panel,#fff); color:var(--ink,#263248); box-shadow:0 20px 70px #0003; overflow:auto; }
.about-dialog::backdrop { background:rgba(25,31,45,.45); }
.about-dialog header { display:flex; align-items:center; justify-content:space-between; padding:16px 22px; border-bottom:1px solid var(--line,#ddd); }
.about-dialog header h2 { margin:0; font-size:16px; }
.about-dialog header button { border:0; background:transparent; color:inherit; cursor:pointer; width:36px; height:36px; font-size:24px; }
.about-dialog .about-content { padding:22px; }
.account-panel > [data-team-menu=files],.account-panel > [data-team-menu=company],.account-panel > [data-team-menu=people],.account-panel > [data-my-signature],.account-panel > [data-my-certifications] { display:none!important; }
.workspace-switcher > summary { border:0; background:transparent; box-shadow:none; }
.about-dialog .about-content > .brand { width:auto; margin-bottom:20px; }
.account-center.file-page:not(.hidden) { z-index:135; }
.account-center > div > header { display:flex; align-items:center; justify-content:space-between; }
.account-center header p { color:var(--muted); margin:6px 0 0; font-size:12px; }
.account-center-tabs { display:flex; gap:8px; padding:0 24px 16px; flex-wrap:wrap; border-bottom:0; }
.account-center-tabs button,.account-center header > button,.credentials-tabs button { padding:10px 14px; border:1px solid var(--line); border-radius:7px; background:var(--panel); color:var(--ink); cursor:pointer; }
.account-center-tabs [aria-current=page],.credentials-tabs [aria-pressed=true] { background:#e5f2eb; color:#277a50; border-color:#9bc9b1; }
.account-center-content { flex:1; min-height:0; overflow:auto; padding:16px 24px; }
.account-center-content > .uploaded-files-page:not(.hidden),.account-center-content > .team-dialog[open] { position:static; inset:auto; width:100%; height:auto; min-height:0; max-height:none; margin:0; z-index:auto; border:0; box-shadow:none; }
.account-center-content > .uploaded-files-page > div > header,.account-center-content .team-dialog > header,.account-center-content .team-dialog > nav [data-tab=files],.account-center-content .team-dialog > nav [data-tab=people] { display:none; }
.account-center-content .uploaded-file-list { padding:0; }
.account-center-content .team-content { padding:12px 0; }
.credentials-tabs { display:flex; align-items:center; gap:14px; margin-bottom:20px; }
.credentials-tabs > strong { font-size:18px; }
.credentials-tabs > strong { margin-right:auto; }
.credentials-tabs > div { display:flex; gap:8px; }
.credentials-tabs .credentials-close { display:grid; place-items:center; flex:none; width:34px; height:34px; padding:0; border:0; border-radius:8px; background:transparent; color:var(--muted,#71778a); font:26px/1 'DM Sans',sans-serif; cursor:pointer; }
.credentials-tabs .credentials-close:hover { background:color-mix(in srgb,var(--ink) 7%,var(--panel)); color:var(--ink); }
.workspace-browse-row { display:flex; align-items:center; gap:12px; margin:12px 0 18px; flex-wrap:wrap; }
.workspace-browse-row .workspace-file-filters { margin:0; }
.workspace-browse-row .expanding-search { margin-left:auto; }
.workspace-browse-row .folder-sort { margin-left:0; }
.workspace-gallery.filtering-files > .workspace-folder-section { display:block; }
.workspace-gallery.filtering-files .workspace-folders { display:none; }
body.mobile-entry-mode .workspace-browse-row { display:none; }
.account-center-tabs [hidden] { display:none!important; }
@media(max-width:600px) { .account-center-content { padding:12px 16px; } .account-center-tabs { padding:0 16px 12px; } .workspace-browse-row .expanding-search { margin-left:0; } }
.signature-dialog[data-field-signature=true] > .credentials-tabs { display:none; }

.account-center-content .team-dialog > nav [data-tab=inbox],
.account-center-content .team-dialog > nav [data-tab=audit] { display:none; }
.uploaded-files-actions { display:flex; justify-content:flex-end; padding:0 0 12px; }
.uploaded-files-actions button { color:var(--danger,#b42318); }
.directory-trail { display:flex; align-items:center; gap:6px; min-width:0; flex:1; margin:0 12px; }
.directory-trail > button { min-width:0; max-width:180px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; border:0; background:transparent; padding:6px 3px; font-size:12px; color:var(--muted); }
.directory-trail > button[aria-current] { color:var(--ink); font-weight:600; }
.directory-trail > span { color:var(--muted); }
.directory-overflow { position:relative; flex-shrink:0; }
.directory-overflow summary { cursor:pointer; list-style:none; padding:6px; }
.directory-overflow summary::-webkit-details-marker { display:none; }
.directory-overflow > div { position:absolute; top:100%; left:0; width:240px; max-height:60vh; overflow:auto; padding:6px; background:var(--panel); border:1px solid var(--line); border-radius:10px; box-shadow:0 8px 24px #0002; z-index:250; }
.directory-overflow button { display:block; width:100%; text-align:left; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; border:0; background:transparent; padding:10px; }
.topbar > .breadcrumb,.topbar > .preview-workspace-back { display:none!important; }
.folder-search { margin-left:auto; }
.folder-search-empty { padding:16px; color:var(--muted); }
#folderViewerList > [hidden] { display:none!important; }
@media(max-width:760px) { .directory-trail { margin:0 4px; gap:2px; } .directory-trail > button { max-width:70px; font-size:10px; padding:6px 1px; } .folder-search input { max-width:140px; } }
@media(max-width:760px) {
 .workspace-top > .directory-trail,.topbar > .directory-trail { position:fixed; left:148px; right:154px; top:16px; height:32px; margin:0; }
 .directory-trail > button { flex:1; max-width:none; }
 .directory-overflow summary { padding:4px 1px; }
 .directory-overflow > div { left:auto; right:-80px; max-width:calc(100vw - 24px); }
 #folderViewer .folder-viewer-actions { flex-wrap:wrap; width:100%; min-width:0; gap:8px; }
 #folderViewer .folder-search { margin-left:0; min-width:0; }
}
.directory-trail { --directory-ink:#515963; --directory-line:#d9dde2; --directory-surface:#f6f7f8; }
html[data-theme="dark"] .directory-trail { --directory-ink:#d4d8df; --directory-line:#515963; --directory-surface:#2d333d; }
/* Directory controls share the app's outlined buttons with theme-independent neutral colors. */
.directory-trail > button,.directory-overflow > summary {
 height:32px; border:1px solid var(--directory-line); border-radius:7px;
 background:var(--directory-surface); color:var(--directory-ink); padding:0 10px;
 font-family:inherit; font-size:12px; font-weight:600; line-height:30px;
 cursor:pointer; transition:background .15s,border-color .15s,box-shadow .15s;
}
.directory-trail > button[aria-current=page] {
 color:var(--directory-ink); background:color-mix(in srgb,var(--directory-ink) 9%,var(--directory-surface));
 border-color:color-mix(in srgb,var(--directory-ink) 30%,var(--directory-line));
}
.directory-trail > button:hover,.directory-overflow > summary:hover,.directory-overflow[open] > summary {
 background:color-mix(in srgb,var(--directory-ink) 13%,var(--directory-surface));
 border-color:var(--directory-ink); color:var(--directory-ink);
}
.directory-trail button:focus-visible,.directory-overflow > summary:focus-visible {
 outline:2px solid var(--directory-ink); outline-offset:2px;
}
.directory-trail > button:active,.directory-overflow > summary:active {
 background:color-mix(in srgb,var(--directory-ink) 20%,var(--directory-surface));
}
.directory-overflow > summary { min-width:32px; text-align:center; padding:0 7px; }
.directory-overflow > div { margin-top:6px; }
.directory-overflow button { color:var(--directory-ink); font:500 12px 'Plus Jakarta Sans',sans-serif; border-radius:6px; cursor:pointer; }
.directory-overflow button:hover { color:var(--directory-ink); background:color-mix(in srgb,var(--directory-ink) 10%,var(--directory-surface)); }
@media(max-width:760px) {
 .directory-trail > button { padding:0 4px; font-size:10px; }
 .directory-overflow > summary { min-width:26px; padding:0 3px; }
}
@media(prefers-reduced-motion:reduce) { .directory-trail > button,.directory-overflow > summary { transition:none; } }

.directory-overflow > div { background:var(--directory-surface); border-color:var(--directory-line); }

/* Keep the current directory location unfilled in both themes. */
.directory-trail > button[aria-current=page],
.directory-trail > button[aria-current=page]:hover,
.directory-trail > button[aria-current=page]:active { background:transparent; }
.directory-trail > .directory-rename { display:inline-flex; align-items:center; justify-content:center; flex:0 0 30px; width:30px; padding:0; margin-left:-2px; }
body.preview-mode .directory-rename,body.mobile-entry-mode .directory-rename { display:none; }
.directory-trail[hidden] { display:none!important; }
/* Sized account management popup with an independently scrolling body. */
.account-center.file-page:not(.hidden) { inset:64px 0 0; display:flex; align-items:center; justify-content:center; padding:24px; background:#11182766; z-index:141; }
.account-center.file-page > div { width:min(960px,100%); height:min(720px,calc(100dvh - 112px)); max-height:100%; border:1px solid var(--line); border-radius:14px; background:var(--panel); color:var(--ink); box-shadow:0 20px 70px #0003; overflow:hidden; }
.account-center .remove-company-access { color:#b42318; border:1px solid #dba5a1; background:transparent; border-radius:7px; padding:10px 14px; cursor:pointer; }
html[data-theme=dark] .account-center .remove-company-access { color:#ffb4ad; }
@media(max-width:600px) { .account-center.file-page:not(.hidden) { padding:12px; } .account-center.file-page > div { height:calc(100dvh - 88px); } }
/* Remove the unused inner navigation row, including its divider and spacing. */
.account-center-content .team-dialog > nav:not(:has([data-tab=setup])) { display:none; }
.account-center-content .team-content { padding-top:0; }
.account-center .file-uploader { flex:0 0 150px; min-width:0; color:var(--ink); font-size:12px; }
.account-center .file-uploader small { display:block; color:var(--muted); font-size:10px; margin-bottom:4px; }
.account-center .file-uploader span { display:block; overflow-wrap:anywhere; }
.account-center .uploaded-file-row > .file-uploader { flex:0 0 150px; }
.account-center .team-dialog form > .remove-company-access { background:transparent; color:#b42318; margin-right:8px; margin-top:8px; }
html[data-theme=dark] .account-center .team-dialog form > .remove-company-access { color:#ffb4ad; }
@media(max-width:600px) { .account-center .file-uploader,.account-center .uploaded-file-row > .file-uploader { flex:0 0 100px; } }
.account-center-content { padding-top:0; }
.account-center-content .team-notice { margin-top:0; }
.storage-summary { margin:0 0 16px; padding:14px 16px; border:1px solid var(--line); border-radius:10px; background:var(--panel); color:var(--ink); }
.storage-title { display:flex; justify-content:space-between; gap:12px; font-size:12px; }
.storage-fraction { margin:8px 0; font-size:13px; }
.storage-summary small { color:var(--muted); font-size:11px; }
.storage-track { height:9px; display:flex; overflow:hidden; border-radius:8px; background:color-mix(in srgb,var(--muted) 16%,var(--panel)); margin:10px 0; }
.storage-track i { background:#398c7b; }.storage-track b { background:#89919d; }
.storage-dot { display:inline-block; width:8px; height:8px; border-radius:50%; background:#398c7b; }
.storage-updated { display:block; margin-top:6px; }
.folder-storage { margin:12px 18px; flex-shrink:0; }
.storage-manager { width:min(900px,calc(100vw - 32px)); max-height:calc(100dvh - 40px); border:1px solid var(--line); border-radius:14px; padding:0; background:var(--panel); color:var(--ink); }
.storage-manager::backdrop { background:#11182777; }
.storage-manager header { display:flex; justify-content:space-between; align-items:center; padding:16px 22px; }
.storage-manager h2 { font-size:18px; }.storage-manager-body { padding:0 22px 22px; }
.storage-manager article,.storage-manager section { margin-bottom:18px; }.storage-manager article { border:1px solid var(--line); border-radius:10px; padding:14px; }
.storage-manager small { display:block; color:var(--muted); margin:6px 0; }
.storage-manager form { display:flex; gap:10px; align-items:end; flex-wrap:wrap; margin:12px 0; }
.storage-manager label { display:grid; gap:6px; font-size:12px; }
.storage-manager input,.storage-manager select,.storage-manager button { font:inherit; padding:9px 12px; border:1px solid var(--line); border-radius:7px; color:var(--ink); background:var(--panel); }
.storage-manager button { cursor:pointer; }.storage-manager button:hover { background:color-mix(in srgb,var(--ink) 8%,var(--panel)); }
.storage-manager input { width:180px; }.storage-manager p { color:var(--muted); font-size:12px; }.storage-manager .storage-error { color:#b42318; }
.storage-manager .storage-error { color:var(--ink); }
/* Compact folder usage sits beside Create, rather than occupying a separate row. */
.folder-viewer-actions > .folder-storage { width:240px; max-width:100%; flex:0 1 240px; margin:0 12px 0 0; padding:0; border:0; background:transparent; }
.folder-storage .storage-title { font-size:11px; gap:10px; }
.folder-storage .storage-track { height:6px; margin:5px 0; }
.folder-storage > small { font-size:10px; }
@media(max-width:600px) { .folder-viewer-actions > .folder-storage { flex:1 1 180px; min-width:160px; margin-right:0; } }

/* Let the folder meter fill the space between the title/Create and search controls. */
@media(min-width:761px) {
 #folderViewer .folder-viewer-card > header { gap:24px; }
 #folderViewer .folder-viewer-card > header > div:first-child { flex:0 1 180px; min-width:100px; }
 #folderViewerTitle { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
 #folderViewer .folder-viewer-actions { flex:1; min-width:0; }
 #folderViewer .folder-viewer-actions > .folder-storage { flex:1 1 360px; width:auto; max-width:480px; min-width:150px; margin:0 auto; }
 #folderViewer .folder-search { margin-left:0; }
 #folderViewer .folder-viewer-actions > :not(.folder-storage) { flex-shrink:0; }
}

/* Reveal storage details without shifting the toolbar; reverse after a one-second pause. */
.storage-reveal { --storage-available:color-mix(in srgb,var(--muted) 16%,var(--panel)); }
.storage-reveal .storage-track { margin:6px 0; height:8px; cursor:pointer; background:transparent; }
.storage-track em,.storage-legend .storage-available { background:var(--storage-available); }
.storage-legend .storage-other { background:#89919d; }.storage-legend .storage-scope { background:#398c7b; }
.storage-detail { display:flex; justify-content:space-between; gap:10px; font-size:10px; line-height:1.5; opacity:0; visibility:hidden; transition:opacity .22s ease 1s,transform .22s ease 1s,visibility 0s linear 1.22s; }
.storage-detail-top { transform:translateY(12px); }.storage-detail-bottom { transform:translateY(-12px); color:var(--muted); }
.storage-legend { display:flex; flex-wrap:wrap; gap:3px 12px; }
.storage-legend span,.storage-total { white-space:nowrap; }
.storage-legend i { display:inline-block; width:7px; height:7px; margin-right:4px; border-radius:50%; }
.storage-total { margin-left:auto; text-align:right; }
.storage-reveal:focus-within .storage-detail,.storage-reveal.storage-expanded .storage-detail { opacity:1; visibility:visible; transform:translateY(0); transition-delay:0s; }
@media(hover:hover) { .storage-reveal:hover .storage-detail { opacity:1; visibility:visible; transform:translateY(0); transition-delay:0s; } }
@media(max-width:1000px) { .storage-detail-bottom { flex-wrap:wrap; gap:3px 8px; }.storage-legend { gap:3px 8px; } }
@media(prefers-reduced-motion:reduce) { .storage-detail { transition-duration:0s; transform:none; } }

/* Uploaded Files keeps its summary visible; folder details remain on demand. */
.uploaded-files-page .storage-detail { opacity:1; visibility:visible; transform:none; transition:none; }
.folder-storage .storage-detail { width:100%; margin-left:auto; margin-right:auto; }
.folder-storage .storage-detail-bottom { flex-wrap:wrap; gap:3px 10px; }
.folder-storage .storage-track { width:100%; margin-left:auto; margin-right:auto; transform:scaleY(1); transform-origin:center; transition:transform .22s ease 1s; }
.folder-storage:focus-within .storage-track,.folder-storage.storage-expanded .storage-track { transform:scaleY(2); transition-delay:0s; }
@media(hover:hover) { .folder-storage:hover .storage-track { transform:scaleY(2); transition-delay:0s; } }
.document-sheet { width:calc(var(--document-fit-width,100%) * var(--document-zoom,1)); }
@media(prefers-reduced-motion:reduce) { .folder-storage .storage-track { transition-duration:0s; } }

/* Storage administration: compact overview, focused sections, responsive allocation cards. */
.storage-manager { width:min(1100px,calc(100vw - 32px)); }
.storage-manager > header { padding:24px; border-bottom:1px solid var(--line); }
.storage-kicker { color:var(--muted); font-size:10px; letter-spacing:1.2px; }
.storage-manager h2 { margin:6px 0 0; font-size:25px; }
.storage-header-actions { display:flex; align-items:center; gap:18px; }.storage-header-actions label { display:flex; align-items:center; gap:8px; }
.storage-header-actions [data-close] { border:0; font-size:24px; padding:4px 10px; }
.storage-tabs { display:flex; gap:6px; padding:12px 24px; overflow:auto; border-bottom:1px solid var(--line); }
.storage-tabs button { border:0; white-space:nowrap; color:var(--muted); }
.storage-tabs button[aria-current=page] { color:#fff; background:#287d60; }
.storage-manager-body { padding:0 24px 24px; }.storage-manager [hidden] { display:none!important; }
.storage-manager .storage-error:empty { display:none; }.storage-manager .storage-error { padding:10px 0; }
.storage-manager [data-storage-panel] { padding-top:20px; margin-bottom:0; }
.storage-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.storage-manager .storage-metric { margin:0; padding:16px; background:color-mix(in srgb,var(--ink) 3%,var(--panel)); }
.storage-metric strong { font-size:22px; display:block; margin:10px 0; }.storage-metric p { margin:0; line-height:1.5; }
.storage-manager .storage-planner { margin-top:20px; padding:20px; }.storage-manager h3 { font-size:16px; margin:0 0 10px; }
.storage-planner p { max-width:750px; line-height:1.6; }.storage-planning-result { font-size:17px; font-weight:600; margin:18px 0 10px; }
.storage-provider { padding:18px; border:1px solid var(--line); border-radius:10px; }.storage-provider summary,.storage-user-access summary { cursor:pointer; font-size:13px; font-weight:600; }
.storage-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }.storage-card-grid > article { margin:0; min-width:0; padding:20px; }
.storage-card-grid h4 { margin:0 0 8px; font-size:15px; overflow-wrap:anywhere; }
.storage-manager form button { background:#287d60; color:white; border-color:transparent; }
.storage-manager form p { flex-basis:100%; margin:0; }.storage-manager form label { flex:1; min-width:130px; }.storage-manager form input,.storage-manager form select { width:100%; }
.allocation-usage { display:flex; justify-content:space-between; gap:8px; margin-top:18px; font-size:11px; color:var(--muted); }.storage-manager progress { width:100%; height:7px; accent-color:#398c7b; margin:7px 0 12px; }
.storage-section-heading { display:flex; justify-content:space-between; gap:16px; align-items:center; margin-bottom:18px; }.storage-section-heading p { margin:4px 0; }
.storage-user-access { border-top:1px solid var(--line); padding-top:14px; margin-top:14px; }.storage-access-actions { display:flex; gap:8px; flex-wrap:wrap; }.storage-manager .storage-danger { color:#b94c4c; }
.storage-notice { max-width:440px; width:calc(100vw - 32px); background:var(--panel,#fff); color:var(--ink); border:1px solid var(--line); border-radius:14px; padding:26px; box-shadow:0 24px 70px #0004; }.storage-notice::backdrop { background:#11182777; }.storage-notice h2 { font-size:21px; }.storage-notice p { font-size:14px; line-height:1.6; color:var(--muted); }.storage-notice form { display:flex; justify-content:flex-end; gap:10px; }.storage-notice button { border:0; border-radius:7px; padding:10px 16px; background:#287d60; color:white; cursor:pointer; }
@media(max-width:760px) { .storage-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }.storage-card-grid { grid-template-columns:1fr; }.storage-manager > header { padding:18px; }.storage-manager h2 { font-size:20px; }.storage-header-actions { gap:6px; }.storage-manager-body { padding:0 16px 16px; }.storage-tabs { padding:10px 16px; }.storage-section-heading { flex-wrap:wrap; }.storage-section-heading input { width:100%; } }

/* Keep the company watermark visible and light during authentication. */
html body.auth-locked .app-watermark { display:block!important; --footer-ink:#20253a!important; --footer-surface:#fff!important; }

.login-version { z-index:401; display:block!important; padding:3px 6px; bottom:calc(28px + env(safe-area-inset-bottom,0px)); right:max(12px,env(safe-area-inset-right,0px)); color:#737b8b; }
.app-update-notice { position:fixed; z-index:450; left:50%; bottom:48px; transform:translateX(-50%); display:flex; gap:12px; align-items:center; width:max-content; max-width:calc(100vw - 24px); padding:12px 16px; background:var(--panel,#fff); color:var(--ink,#20253a); border:1px solid var(--line,#ddd); border-radius:10px; box-shadow:0 8px 30px #0002; font-size:12px; }.app-update-notice[hidden] { display:none; }.app-update-notice button { border:0; border-radius:5px; padding:8px 12px; color:white; background:#287d60; white-space:nowrap; }
body.auth-locked > .app-update-notice:not([hidden]) { display:flex!important; }
.account-settings-panel .unit-preference { display:grid; gap:7px; padding:12px 0; font-size:11px; }.unit-preference select { width:100%; border:1px solid var(--line); border-radius:6px; padding:8px; background:var(--panel); color:var(--ink); }

/* Account settings: a focused, responsive modal above the current workspace. */
.preferences-dialog { --pref-bg:#fff; --pref-soft:#f6f8fa; --pref-line:#e5e9ee; --pref-ink:#202c3b; --pref-muted:#647184; --pref-accent:#247d54; --pref-tint:#eef8f2; box-sizing:border-box; width:min(640px,calc(100vw - 32px)); max-height:calc(100dvh - 40px); margin:auto; padding:0; border:1px solid var(--pref-line); border-radius:18px; color:var(--pref-ink); background:var(--pref-bg); box-shadow:0 24px 90px #101d3540; font-family:'Plus Jakarta Sans',sans-serif; overflow:hidden; }
.preferences-dialog[open] { display:flex; flex-direction:column; }
.preferences-dialog::backdrop { background:#111c32a6; backdrop-filter:blur(5px); }
.preferences-dialog * { box-sizing:border-box; }
.preferences-header { display:flex; align-items:center; gap:14px; padding:24px 28px; border-bottom:1px solid var(--pref-line); flex-shrink:0; }
.preferences-symbol { display:grid; place-items:center; width:44px; height:44px; border:1px solid var(--pref-line); border-radius:12px; background:var(--pref-soft); color:var(--pref-accent); }
.preferences-symbol svg { width:25px; height:25px; }
.preferences-symbol circle { fill:var(--pref-soft); }
.preferences-dialog h2 { margin:0; font-size:23px; font-weight:700; letter-spacing:-.7px; }
.preferences-dialog p { margin:5px 0 0; color:var(--pref-muted); font-size:12px; line-height:1.65; }
.preferences-dialog button,.preferences-dialog select { font-family:inherit; }
.preferences-close { display:grid; place-items:center; width:36px; height:36px; margin-left:auto; padding:0; background:transparent; border:0; border-radius:8px; color:var(--pref-muted); font-size:26px; cursor:pointer; }
.preferences-close:hover { color:var(--pref-ink); background:var(--pref-soft); }
.preferences-content { padding:0 28px; overflow-y:auto; overscroll-behavior:contain; }
.preferences-content section { padding:23px 0; }
.preferences-content section+section { border-top:1px solid var(--pref-line); }
.preferences-dialog h3 { margin:0; font-size:14px; font-weight:700; letter-spacing:-.2px; }
.preferences-themes { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:16px; }
.preferences-themes button { padding:8px; border:1px solid var(--pref-line); border-radius:11px; background:var(--pref-bg); color:var(--pref-ink); cursor:pointer; text-align:left; }
.preferences-themes button:hover { border-color:var(--pref-accent); }
.preferences-themes button[aria-pressed=true] { border-color:var(--pref-accent); box-shadow:0 0 0 1px var(--pref-accent); background:var(--pref-tint); }
.preferences-themes button>span:last-child { display:flex; justify-content:space-between; align-items:center; padding:10px 3px 2px; font-size:12px; font-weight:600; }
.theme-check { display:grid; place-items:center; width:17px; height:17px; border-radius:50%; background:var(--pref-accent); color:var(--pref-bg); visibility:hidden; font-size:11px; }
[aria-pressed=true] .theme-check { visibility:visible; }
.theme-sample { display:block; height:65px; border:1px solid #dce2e9; border-radius:6px; position:relative; overflow:hidden; background:#f0f3f7; }
.theme-sample i { position:absolute; inset:0 auto 0 0; width:24%; background:#fff; border-right:1px solid #dce2e9; }
.theme-sample b { position:absolute; left:34%; top:14px; width:40%; height:6px; background:#9caab9; border-radius:2px; }
.theme-sample em { position:absolute; left:34%; right:10%; top:28px; bottom:12px; background:white; border:1px solid #dce2e9; border-radius:3px; }
.sample-dark { background:#192230; border-color:#374355; }
.sample-dark i,.sample-dark em { background:#2c394c; border-color:#374355; }
.sample-dark b { background:#75869e; }
.sample-system { background:linear-gradient(110deg,#f0f3f7 50%,#192230 50%); }
.sample-system em { background:linear-gradient(110deg,#fff 40%,#2c394c 40%); border-color:#9caab966; }
.preferences-row { display:flex; align-items:center; justify-content:space-between; gap:20px; padding-top:17px; }
.preferences-row+.preferences-row { margin-top:17px; border-top:1px solid var(--pref-line); }
.preferences-row label { font-size:12px; font-weight:600; cursor:pointer; }
.preferences-row p { font-size:11px; }
.preferences-dialog select { max-width:100%; width:222px; flex-shrink:0; min-height:42px; padding:9px 10px; border:1px solid var(--pref-line); border-radius:8px; background:var(--pref-soft); color:var(--pref-ink); font-size:11px; cursor:pointer; }
.preferences-dialog .preferences-switch { appearance:none; -webkit-appearance:none; position:relative; flex:0 0 40px; width:40px; height:24px; margin:0; border:1px solid #a8b2c0; border-radius:20px; background:#b7c0cc; cursor:pointer; }
.preferences-switch::after { content:''; position:absolute; width:16px; height:16px; top:3px; left:3px; border-radius:50%; background:#fff; box-shadow:0 1px 3px #0002; transition:transform .15s; }
.preferences-dialog .preferences-switch:checked { background:var(--pref-accent); border-color:var(--pref-accent); }
.preferences-switch:checked::after { transform:translateX(16px); }
.preferences-footer { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:17px 28px; border-top:1px solid var(--pref-line); background:var(--pref-soft); flex-shrink:0; }
.preferences-footer p { margin:0; font-size:10px; }
.preferences-done { min-width:88px; padding:11px 20px; border:0; border-radius:8px; background:var(--pref-accent); color:#fff; font-size:12px; font-weight:600; cursor:pointer; }
.preferences-done:hover { filter:brightness(.92); }
.preferences-dialog :is(button,input,select):focus-visible { outline:3px solid var(--pref-accent); outline-offset:3px; }
html[data-theme=dark] .preferences-dialog { --pref-bg:#232a38; --pref-soft:#1c2330; --pref-line:#3d485c; --pref-ink:#eef0f6; --pref-muted:#b4bdcd; --pref-accent:#73c99c; --pref-tint:#283c36; }
html[data-theme=dark] .preferences-done { color:#14291e; }
html.reduce-motion *,html.reduce-motion *::before,html.reduce-motion *::after { animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; scroll-behavior:auto!important; }
@media(prefers-reduced-motion:reduce) { .preferences-dialog * { transition:none; } }
@media(max-width:540px) { .preferences-dialog { width:calc(100vw - 24px); max-height:calc(100dvh - 24px); border-radius:14px; }.preferences-header { padding:20px; gap:11px; }.preferences-content { padding:0 20px; }.preferences-dialog h2 { font-size:21px; }.preferences-themes { gap:9px; }.preferences-row { gap:14px; }.preferences-row:has(select) { align-items:stretch; flex-direction:column; }.preferences-dialog select { width:100%; font-size:12px; }.preferences-footer { padding:16px 20px; }.preferences-footer p { max-width:190px; }.theme-sample { height:57px; } }
@media(min-width:541px) and (max-height:800px) { .preferences-header { padding-top:19px; padding-bottom:19px; }.preferences-content section { padding-top:18px; padding-bottom:18px; }.preferences-row { padding-top:13px; }.preferences-row+.preferences-row { margin-top:13px; }.preferences-themes { margin-top:12px; } }
/* Search treats each matching folder and file as an independent destination. */
.workspace-gallery.filtering-files > .workspace-tiles { display:none; }
.search-file-result { gap:16px; min-width:0; }
.search-file-result b { overflow-wrap:anywhere; font-size:13px; }
.search-file-result small { color:var(--muted); font-size:11px; text-align:right; }
.form-canvas > .submit-element[data-submit-placement="footer"][data-content-scale-x] { transform:scale(var(--content-scale-x,1),var(--content-scale-y,1))!important; }

/* Form table: controls retain native keyboard entry and export as cell values. */
.form-entry-table { width:100%; border-collapse:collapse; table-layout:fixed; background:white; }
.form-entry-table th,.form-entry-table td { border:1px solid var(--table-border,#cbd5e1); padding:0; vertical-align:middle; min-width:0; }
.form-entry-table th { background:var(--table-header,#edf2f7); color:#20253a; font:600 12px Arial,sans-serif; padding:10px 8px; overflow-wrap:anywhere; }
.form-entry-table td input { display:block; width:100%; min-width:0; height:38px; border:0; border-radius:0; padding:8px; box-sizing:border-box; outline-offset:-2px; }
.form-entry-table td input:focus { outline:2px solid #6558e8; }
.form-entry-table td input[aria-invalid=true] { outline:2px solid #c33232; }
.table-title { display:block; margin-bottom:12px; font-weight:600; }
.form-table-scroll { overflow-x:auto; }
.table-response-actions { display:flex; gap:8px; margin-top:10px; }
.table-response-actions[hidden] { display:none; }
.table-response-actions button { border:1px solid #cbd5e1; border-radius:6px; background:#f4f7fa; color:#263449; padding:7px 10px; font-size:11px; cursor:pointer; }
.inspector-button-grid { display:grid; grid-template-columns:1fr 1fr; gap:7px; margin:12px 0; }
.inspector-button-grid button { border:1px solid var(--line,#dce1e9); background:var(--panel,#fff); color:var(--ink,#20253a); padding:9px 5px; border-radius:7px; cursor:pointer; font:11px 'Plus Jakarta Sans'; }
.inspector-button-grid button:disabled { opacity:.45; cursor:default; }
.table-size-note { margin:10px 0; color:var(--muted,#647184); font-size:11px; }
.organized-inspector { padding:14px!important; }
.organized-inspector>.selected-type { margin:0 0 14px; padding:13px; border-radius:10px; }
.inspector-section { border:1px solid var(--line,#e3e7ee); border-radius:10px; margin:0 0 10px; background:var(--panel,#fff); overflow:hidden; }
.inspector-section>summary { display:flex; align-items:center; justify-content:space-between; padding:13px 14px; cursor:pointer; color:var(--ink,#20253a); font-size:12px; font-weight:700; list-style:none; }
.inspector-section>summary::-webkit-details-marker { display:none; }
.inspector-section>summary::after { content:'+'; color:var(--muted,#647184); font-size:16px; font-weight:400; }
.inspector-section[open]>summary::after { content:'−'; }
.inspector-section[open]>summary { border-bottom:1px solid var(--line,#e3e7ee); }
.inspector-section-body { padding:14px; }
.inspector-section-body .setting-label { display:flex; margin:15px 0 7px; font-size:10px; font-weight:600; letter-spacing:.2px; color:var(--muted,#647184); }
.inspector-section-body>.setting-label:first-child { margin-top:0; }
.inspector-section-body .setting-input { width:100%; min-height:36px; border-radius:7px; font-size:12px; }
.inspector-section-body input[type=color] { width:100%; height:34px; padding:3px; border:1px solid var(--line,#dce1e9); border-radius:7px; background:var(--panel,#fff); cursor:pointer; }
.inspector-section-body .check-row { display:flex; gap:7px; line-height:1.5; margin:12px 0; font-size:11px; }
.inspector-section-body .edit-hint { line-height:1.6; font-size:10px; }
.inspector-section-body .setting-divider { display:none; }
.inspector-danger { padding:8px 2px 14px; }
.inspector-danger .delete-field { width:100%; padding:10px; border:1px solid #d8a3a3; border-radius:7px; }
[data-element-font] :is(label,input,textarea,select,button,p,h1,h2,h3,span,small,output,strong,b,em,a,td,th) { font-family:var(--element-font-family)!important; }
[data-surface-color] :is(input:not([type=checkbox]):not([type=radio]),textarea,select,.signature-space) { background:var(--element-surface)!important; }
@media print { .table-response-actions { display:none!important; } }
.organized-inspector .setting-label { font-family:'Plus Jakarta Sans',sans-serif; text-transform:none; }
.form-entry-table thead[hidden] { display:none; }
.form-entry-table .table-selected-cell { outline:2px solid #6558e8; outline-offset:-2px; }
.preview-mode .form-entry-table .table-selected-cell { outline:none; }
.preview-mode .form-entry-table input:focus { outline:2px solid #6558e8; }
.organized-inspector .check-row input[type=checkbox] { display:inline-block; position:static; opacity:1; width:14px; height:14px; margin:0; flex:0 0 14px; appearance:auto; accent-color:#6558e8; }
.organized-inspector .check-row .checkmark { display:none; }
[data-surface-color] :is(td,th,.report-value,.report-summary-content) { background:var(--element-surface)!important; }

/* Desktop retains builder layout regardless of window width. */
body.desktop-entry-mode .app-shell { min-width:1180px; grid-template-columns:210px minmax(650px,1fr) 280px; }
body.desktop-entry-mode .left-panel,body.desktop-entry-mode .right-panel { display:flex; }
body.desktop-entry-mode .topbar { grid-column:1/4; }
body.desktop-entry-mode .topbar .icon-btn { display:inline-block; }
body.desktop-entry-mode .form-canvas { margin-bottom:0; transform-origin:top left; }
body.desktop-entry-mode .topbar>.directory-trail { position:static; height:auto; }
body.desktop-entry-mode .app-shell .form-page-controls { display:flex; flex-wrap:nowrap; gap:8px; align-items:center; overflow-x:auto; padding:10px 14px; min-height:56px; }
body.desktop-entry-mode .form-page-controls>label,body.desktop-entry-mode .form-page-controls>button,body.desktop-entry-mode .form-page-controls>.canvas-controls { flex-shrink:0; }
body.desktop-entry-mode .form-page-controls>.canvas-controls { margin-left:0; }
body.desktop-entry-mode:not(.preview-mode) .form-page-controls>small { display:none; }
.text-format-toolbar { display:flex; align-items:center; gap:4px; flex-shrink:0; margin-left:auto; padding-left:10px; border-left:1px solid var(--line,#e3e7ee); }
.text-format-toolbar .format-target { width:0; height:0; overflow:hidden; position:absolute; }
.text-format-toolbar select,.text-format-toolbar input[type=number],.text-format-toolbar button { height:30px; border:1px solid var(--line,#e3e7ee); border-radius:5px; background:var(--panel,#fff); color:var(--ink,#20253a); font:11px 'Plus Jakarta Sans',sans-serif; }
.text-format-toolbar select { width:126px; padding:3px 5px; }
.text-format-toolbar [data-text-format=text-align] { width:64px; }
.text-format-toolbar input[type=number] { width:48px; padding:3px; }
.text-format-toolbar button { width:29px; padding:0; font-size:13px; cursor:pointer; }
.text-format-toolbar button[aria-pressed=true] { background:#eae7ff; border-color:#9c93e4; color:#4836aa; }
.text-format-toolbar :disabled { opacity:.4; cursor:default; }
.format-separator { height:21px; width:1px; background:var(--line); margin:0 3px; }
.text-format-toolbar .format-color { display:flex; flex-direction:column; align-items:center; justify-content:center; width:28px; height:30px; margin:0; gap:0; position:relative; }
.format-color>span { font:bold 13px Arial; pointer-events:none; }
.format-color input[type=color] { width:24px; height:9px; border:0; padding:0; background:none; cursor:pointer; }
.format-color.highlight-color>span { font-size:11px; background:#fff0a3; color:#222; }
body.preview-mode .text-format-toolbar,body.mobile-entry-mode .text-format-toolbar { display:none; }
.text-format-toolbar :focus-visible { outline:2px solid #7865d9; outline-offset:2px; }
.rich-field-proxy { z-index:1; overflow:hidden; white-space:pre-wrap; cursor:text; outline:none; }
.rich-field-proxy[contenteditable=true] { outline:2px solid #7865d9; outline-offset:-2px; }
[data-rich-source] { opacity:0; }
[data-rich-source]:focus { opacity:1; }
[data-rich-source]:focus+.rich-field-proxy { visibility:hidden; }
body.mobile-entry-mode [data-rich-source] { opacity:1; }
body.mobile-entry-mode .rich-field-proxy { display:none!important; }
body.desktop-entry-mode .rich-field-proxy [data-rich-run] { font-size:inherit; }
html[data-theme=dark] .text-format-toolbar button[aria-pressed=true] { background:#51467b; color:#fff; }
body.desktop-entry-mode { overflow:auto; }
body.mobile-entry-mode .form-page-controls>.canvas-controls { display:none; }

/* Selection-only mini toolbar, anchored near the highlighted text. */
.text-format-toolbar.floating-text-format { position:fixed; z-index:500; width:460px; max-width:calc(100vw - 24px); margin:0; padding:10px; flex-wrap:wrap; gap:6px; border:1px solid var(--line,#dfe4ec); border-radius:11px; background:var(--panel,#fff); color:var(--ink,#20253a); box-shadow:0 8px 32px #17243d26,0 2px 6px #17243d12; }
.text-format-toolbar.floating-text-format[hidden] { display:none!important; }
.floating-text-format .format-color { display:flex; }
.floating-text-format .format-target { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.floating-text-format [data-text-format=font-family] { flex:1; min-width:130px; }
.floating-text-format [data-text-format=text-align] { flex:1; min-width:70px; }
.floating-text-format .format-color { border:1px solid var(--line,#dfe4ec); border-radius:5px; }
html[data-theme=dark] .floating-text-format { box-shadow:0 10px 32px #0006; }

/* A stable, movable formatting window for the active editing session. */
.floating-text-format .format-move-handle{display:flex;align-items:center;gap:7px;flex:0 0 100%;width:100%;height:25px;padding:0 2px 6px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;color:var(--muted);font-family:inherit;font-size:11px;font-weight:600;text-align:left;cursor:grab;touch-action:none;user-select:none}
.floating-text-format .format-move-handle span{font-size:19px;line-height:1}
.floating-text-format.is-moving,.floating-text-format.is-moving .format-move-handle{cursor:grabbing}
.floating-text-format .format-move-handle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* Compact widgets keep their footprint through every interaction state. */
.canvas-element[data-type=timer][data-timer-display=symbol] > label{display:none}
.canvas-element[data-type=timer][data-timer-display=symbol] .timer-face{display:block;width:100%}
.canvas-element[data-type=timer][data-timer-display=symbol] .timer-face output,
.canvas-element[data-type=timer][data-timer-display=symbol] [data-timer=reset]{display:none!important}
.canvas-element[data-type=timer][data-timer-display=symbol] .timer-face button,
.canvas-element[data-type=timer][data-timer-display=symbol] .timer-face input{box-sizing:border-box;width:100%;height:42px;min-width:0;margin:0;padding:6px;text-align:center;font-variant-numeric:tabular-nums;border-radius:8px}
.canvas-element[data-type=timer][data-timer-display=symbol] .timer-face input{border:1px solid var(--line);background:var(--element-surface,#fff);color:inherit}
.canvas-element[data-type=weather][data-weather-display=symbol] [data-weather]{font-size:24px;line-height:1;min-height:42px}
body.desktop-entry-mode.preview-mode .app-shell{grid-template-columns:minmax(650px,1fr)}
body.desktop-entry-mode.preview-mode .topbar{grid-column:1}
.popup-table-tools{flex:0 0 100%;border-top:1px solid var(--line);padding-top:8px}
.popup-table-tools[hidden],.table-tools-toggle[hidden],.surface-fill[hidden]{display:none!important}
.table-structure-tools{display:flex;gap:6px;margin:7px 0}
.floating-text-format .table-structure-tools button{width:38px;height:32px;display:grid;place-items:center}
.table-selection-status{font-size:11px;font-weight:600;color:var(--ink)}
.popup-table-tools small{font-size:10px;color:var(--muted)}
.form-entry-table td.popup-cell-selected{outline:2px solid #6558e8;outline-offset:-2px}
.surface-fill{display:flex;align-items:center;position:relative}
.surface-fill input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
.table-size-dialog label{display:grid;gap:6px;margin:14px 0}
.table-size-dialog input{width:100%;box-sizing:border-box}
#headerSettings [hidden]{display:none!important}
body:not(.preview-mode) .canvas-element :is(.timer-face,.weather-controls) button{pointer-events:auto}
.option-preview-text{flex:1;font-size:12px;color:var(--muted);padding:7px}
body:not(.preview-mode) #formCanvas :is(.canvas-element,.editable-region) > .quick-delete{display:none!important}
body:not(.preview-mode) #formCanvas :is(.canvas-element,.editable-region).selected > .quick-delete{display:grid!important;place-items:center;position:absolute;top:-28px;right:0;left:auto;width:24px;height:24px;padding:0;opacity:1;visibility:visible;border:1px solid #e5b9be;border-radius:6px;color:#b42335;background:#fff;cursor:pointer;z-index:12}
.palette-add-help{margin:0 0 12px;padding:0 6px;font-size:11px;color:var(--muted)}
.form-entry-table td .table-selected-cell,.form-entry-table td .rich-field-proxy:focus{outline:none!important;box-shadow:none!important}
.form-entry-table td.popup-cell-selected{outline:2px solid #6558e8!important;outline-offset:-2px}
.form-entry-table td{position:relative}
.form-entry-table td input{height:100%;min-height:36px}
#saveTemplateBtn[hidden]{display:none!important}
.form-save-controls{display:flex;align-items:center;gap:6px}
.form-save-controls[hidden],.manual-form-save[hidden]{display:none!important}
.form-save-controls .icon-btn{display:inline-grid;place-items:center;width:34px;height:34px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--ink)}
.form-save-controls[data-enabled=true] .autosave-toggle{color:#22845b;background:#edf8f2;border-color:#a9d9bd}
.form-save-status{font-size:10px;color:var(--muted);min-width:66px}
body.mobile-entry-mode .top-actions>.form-save-controls{display:flex!important}
body.mobile-entry-mode .form-save-status{display:none}
body.preview-mode .top-actions>.form-save-controls:not([hidden]){display:flex}
body.preview-mode .top-actions>.form-save-controls:not([hidden]){display:flex!important}
.local-folder-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0}
.local-folder-controls[hidden],.save-form-local[hidden]{display:none!important}
.local-folder-controls small{flex-basis:100%;color:var(--muted);font-size:11px}
.local-folder-controls button,.local-linked-file button,[data-save-local]{border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--ink);padding:7px;cursor:pointer}
.local-folder-files{margin-top:18px}.local-folder-files h3{font-size:13px}
.local-linked-file{display:flex;align-items:center;gap:12px;padding:10px;border-bottom:1px solid var(--line)}
.local-linked-file .local-file-name{flex:1;text-align:left;border:0;background:transparent;overflow-wrap:anywhere}
.local-file-state{display:inline-flex;color:#637185}.local-cloud-save{color:#22845b!important}.local-cloud-save:disabled{opacity:.45;cursor:default}
.local-folder-files{padding:14px 0;border-top:1px solid var(--line);flex:0 0 100%;width:100%;box-sizing:border-box}

/* Faint, theme-aware empty location artwork. */
.empty-location { align-items:center; color:#788491; display:flex; flex-direction:column; gap:8px; margin:0 auto; padding:clamp(36px,8vh,90px) 20px; text-align:center; }
.empty-location[hidden] { display:none; }
.empty-location-art { color:var(--workspace-color,#6558e8); flex:none; height:auto; max-width:100%; pointer-events:none; width:240px; }
.empty-location-title { color:#87919c; font-size:14px; font-weight:500; letter-spacing:.01em; }
.empty-location-hint { color:#98a0aa; font-size:12px; line-height:1.6; max-width:280px; }
.workspace-gallery.filtering-files > .workspace-location-empty,.compliance-workspace .workspace-location-empty,body.mobile-entry-mode .workspace-location-empty { display:none; }
html[data-theme="dark"] .empty-location-art { color:color-mix(in srgb,var(--workspace-color,#6558e8) 55%,#c9d2ec); }
html[data-theme="dark"] .empty-location-title { color:#97a2b3; }
html[data-theme="dark"] .empty-location-hint { color:#7f8a9c; }
@media(max-width:600px) { .empty-location-art { width:190px; } .empty-location { padding:36px 16px; } }
.local-folder-files:empty { display:none; }
/* Explorer command bar: title and context above a compact action strip. */
#closeFolderViewer,#closePdfViewer,#closeDataViewer { display:none!important; }
#folderViewer .explorer-header { display:grid; grid-template-columns:minmax(100px,1fr) minmax(90px,1.5fr) auto; gap:12px 24px; padding:20px 28px 12px; align-items:center; }
#folderViewer .explorer-header > .explorer-heading { min-width:0; max-width:none; }
#folderViewerTitle { font-size:20px; white-space:nowrap; text-overflow:ellipsis; overflow:hidden; }
#folderViewer .explorer-actions { display:flex; gap:8px; align-items:center; justify-content:flex-end; width:auto; flex-wrap:wrap; }
#folderViewer .explorer-actions .folder-sort { margin:0; }
#folderViewer .explorer-actions .folder-sort select { height:36px; font-size:11px; }
#folderViewer .explorer-actions .folder-sort > span { display:none; }
#folderViewer .local-folder-controls { display:flex; gap:6px; margin:0; padding-left:8px; border-left:1px solid var(--line); }
#folderViewer .local-folder-controls[hidden] { display:none; }
#folderViewer .explorer-icon { display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; padding:7px; border:1px solid var(--line); border-radius:7px; background:var(--panel); color:var(--ink); cursor:pointer; list-style:none; }
#folderViewer .explorer-icon[hidden] { display:none; }
#folderViewer .explorer-icon:hover,#folderViewer .folder-view-menu[open] > summary { background:color-mix(in srgb,var(--workspace-color) 10%,var(--panel)); border-color:var(--workspace-color); color:var(--workspace-color); }
#folderViewer summary::-webkit-details-marker { display:none; }
#folderViewer .folder-create-menu > summary { height:36px; display:flex; align-items:center; font-size:11px; padding:0 12px; }
#folderViewer .explorer-link-status[hidden] { display:none; }
#folderViewer .explorer-link-status:not([hidden]) { display:block; max-width:340px; white-space:normal; }
#folderViewer .explorer-header > .folder-storage { width:100%; min-width:0; max-width:480px; border:0; background:none; padding:0; margin:0 auto; font-size:10px; }
#folderViewer .folder-view-menu { position:relative; }
.folder-view-options { position:absolute; right:0; top:44px; width:238px; padding:6px; border:1px solid var(--line); border-radius:10px; background:var(--panel); box-shadow:0 12px 40px #0002; z-index:180; }
.folder-view-options button { display:flex; align-items:center; gap:12px; width:100%; border:0; border-radius:6px; background:transparent; color:var(--ink); font:12px 'Plus Jakarta Sans',sans-serif; text-align:left; padding:9px; cursor:pointer; }
.folder-view-options button:hover,.folder-view-options button[aria-pressed="true"] { background:color-mix(in srgb,var(--workspace-color) 10%,var(--panel)); }
.view-check { margin-left:auto; visibility:hidden; color:var(--workspace-color); }.folder-view-options [aria-pressed="true"] .view-check { visibility:visible; }
.app-icon-tooltip { position:fixed; max-width:min(280px,calc(100vw - 16px)); padding:7px 10px; border:1px solid #ffffff20; border-radius:6px; color:#fff; background:#252b38; box-shadow:0 4px 16px #0002; font:11px/1.4 'Plus Jakarta Sans',sans-serif; pointer-events:none; z-index:2147483647; }.app-icon-tooltip[hidden] { display:none; }
/* Shared entries preserve all existing menus, sync controls, and file actions. */
#folderViewerList { --entry-icon:24px; padding:18px 28px; align-content:start; }
#folderViewerList .explorer-entry { min-width:0; min-height:0; gap:8px; padding:6px 10px; border:1px solid transparent; border-radius:6px; box-shadow:none; background:transparent; display:flex; align-items:center; }
#folderViewerList .explorer-entry:hover { background:color-mix(in srgb,var(--workspace-color) 5%,var(--panel)); }
#folderViewerList .explorer-entry.explorer-selected { border-color:color-mix(in srgb,var(--workspace-color) 55%,var(--line)); background:color-mix(in srgb,var(--workspace-color) 12%,var(--panel)); }
#folderViewerList .explorer-entry:focus-visible { outline:2px solid var(--workspace-color); outline-offset:1px; }
#folderViewerList .explorer-entry[hidden] { display:none!important; }
#folderViewerList .explorer-entry :is(.folder-file-info,.folder-open,.local-file-name) { display:grid; grid-template-columns:var(--entry-icon) minmax(0,1fr); align-items:center; gap:8px 12px; flex:1; min-width:0; width:auto; padding:0; background:none; border:0; box-shadow:none; text-align:left; color:var(--ink); }
#folderViewerList .explorer-entry :is(.folder-file-info,.folder-open) > :is(.file-type-icon,.folder-icon,svg),#folderViewerList .explorer-old-meta { display:none; }
.explorer-art { display:flex; align-items:center; justify-content:center; width:var(--entry-icon); height:var(--entry-icon); color:var(--workspace-color); }
.explorer-art > svg { width:100%; height:100%; }.explorer-art img { width:100%; height:100%; object-fit:contain; border-radius:3px; }
#folderViewerList .explorer-art .file-type-icon { width:100%; height:100%; padding:3px; }.explorer-art .file-type-icon svg { width:100%; height:100%; }
#folderViewerList .explorer-name { color:var(--ink); font-size:12px; font-weight:500; line-height:1.5; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
#folderViewerList .explorer-meta { color:var(--muted); font-size:11px; display:none; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.explorer-detail-head { display:none; }.explorer-detail-head button { background:none; border:0; color:var(--muted); font:11px 'Plus Jakarta Sans',sans-serif; text-align:left; padding:8px 0; cursor:pointer; }
#folderViewerList[data-layout="details"] .explorer-detail-head { display:grid; grid-template-columns:minmax(200px,1fr) 135px 110px 80px 130px; gap:12px; padding:0 10px; border-bottom:1px solid var(--line); }
#folderViewerList[data-layout="details"] .explorer-entry > :is(.folder-file-info,.folder-open,.local-file-name) { grid-template-columns:24px minmax(164px,1fr) 135px 110px 80px; }
#folderViewerList[data-layout="details"] .explorer-meta { display:block; }
#folderViewerList[data-layout="details"] .explorer-entry { display:grid; grid-template-columns:minmax(0,1fr) 130px; position:relative; padding-right:150px; }
#folderViewerList[data-layout="details"] .explorer-entry > :first-child { grid-column:1/-1; }
#folderViewerList[data-layout="details"] .explorer-entry > :not(:first-child) { position:absolute; right:10px; }
#folderViewerList[data-layout="details"] .explorer-entry > .file-sync-state { right:52px; }
#folderViewerList[data-layout="details"] .explorer-entry > [data-save-local] { right:90px; }
#folderViewerList[data-layout="details"] .explorer-entry > .local-file-state { right:52px; }
#folderViewerList .explorer-entry > .folder-download { display:none; }
#folderViewerList[data-layout="extra-large"],#folderViewerList[data-layout="large"],#folderViewerList[data-layout="medium"],#folderViewerList[data-layout="small"],#folderViewerList[data-layout="tiles"] { display:grid; grid-template-columns:repeat(auto-fill,minmax(var(--entry-width),1fr)); gap:12px; }
#folderViewerList[data-layout="extra-large"] { --entry-icon:160px; --entry-width:210px; }
#folderViewerList[data-layout="large"] { --entry-icon:96px; --entry-width:150px; }
#folderViewerList[data-layout="medium"] { --entry-icon:48px; --entry-width:110px; }
#folderViewerList:is([data-layout="extra-large"],[data-layout="large"],[data-layout="medium"],[data-layout="small"]) .explorer-entry { flex-wrap:wrap; justify-content:center; align-content:start; padding:16px 8px 8px; }
#folderViewerList:is([data-layout="extra-large"],[data-layout="large"],[data-layout="medium"],[data-layout="small"]) .explorer-entry > :is(.folder-file-info,.folder-open,.local-file-name) { flex-basis:100%; display:flex; flex-direction:column; text-align:center; }
#folderViewerList:is([data-layout="extra-large"],[data-layout="large"],[data-layout="medium"],[data-layout="small"]) .explorer-name { white-space:normal; overflow-wrap:anywhere; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
#folderViewerList[data-layout="small"] { --entry-width:240px; --entry-icon:20px; gap:4px; }
#folderViewerList[data-layout="list"] { display:flex; flex-flow:column wrap; align-content:flex-start; gap:2px 16px; overflow:auto; }
#folderViewerList[data-layout="list"] .explorer-entry { width:270px; min-height:36px; flex:none; }
#folderViewerList[data-layout="tiles"] { --entry-width:300px; --entry-icon:48px; }
#folderViewerList[data-layout="tiles"] .explorer-art,#folderViewerList[data-layout="content"] .explorer-art { grid-row:1/3; }
#folderViewerList[data-layout="tiles"] .explorer-type,#folderViewerList[data-layout="content"] .explorer-type { display:block; grid-column:2; }
#folderViewerList[data-layout="content"] { --entry-icon:64px; }
#folderViewerList[data-layout="content"] .explorer-entry { padding:14px 10px; border-bottom:1px solid var(--line); border-radius:0; }
#folderViewerList[data-layout="content"] .explorer-entry > :is(.folder-file-info,.folder-open,.local-file-name) { grid-template-columns:64px minmax(150px,1fr) 130px 100px; }
#folderViewerList[data-layout="content"] .explorer-date,#folderViewerList[data-layout="content"] .explorer-size { display:block; grid-row:1; }
#folderViewerList .local-folder-files { grid-column:1/-1; width:100%; }
#folderViewerList:is([data-layout="extra-large"],[data-layout="large"],[data-layout="medium"],[data-layout="small"],[data-layout="tiles"]) .local-folder-files { display:grid; grid-template-columns:repeat(auto-fill,minmax(var(--entry-width),1fr)); gap:12px; }
#folderViewerList .local-folder-files > :is(h3,p) { grid-column:1/-1; }
#folderViewerList .local-folder-files:empty { display:none; }
#folderViewerList .empty-location { grid-column:1/-1; }
.generic-file-preview { padding:28px; overflow:auto; display:flex; align-items:flex-start; justify-content:center; }
.generic-file-preview pre { margin:0; width:100%; font:13px/1.6 'DM Mono',monospace; white-space:pre-wrap; overflow-wrap:anywhere; color:var(--ink); }
.generic-file-preview :is(video,.file-image-preview) { max-width:100%; max-height:100%; object-fit:contain; }.generic-file-preview audio { margin:80px auto; max-width:100%; }
.preview-data-table { border-collapse:collapse; min-width:70%; color:var(--ink); font-size:12px; }.preview-data-table :is(td,th) { border:1px solid var(--line); padding:9px 12px; text-align:left; white-space:pre-wrap; }.preview-data-table th { background:var(--panel); position:sticky; top:0; }
.file-preview-unavailable { text-align:center; color:var(--muted); margin:80px auto; }.file-preview-unavailable h3 { color:var(--ink); font-size:16px; }
.document-zoom[hidden] { display:none!important; }
@media(max-width:900px) { #folderViewer .explorer-header { gap:10px; padding:16px; } #folderViewer .explorer-actions { gap:5px; flex-wrap:nowrap; } #folderViewerList { padding:12px 16px; } #folderViewerList[data-layout="details"] .explorer-entry,#folderViewerList[data-layout="details"] .explorer-detail-head { min-width:750px; } }
/* Explicit grid placement overrides legacy file-label spans. */
#folderViewerList .explorer-entry .explorer-art { grid-column:1; grid-row:1; }
#folderViewerList .explorer-entry .explorer-name { grid-column:2; grid-row:1; }
#folderViewerList .explorer-entry .explorer-meta { font:11px/1.5 'Plus Jakarta Sans',sans-serif; grid-row:1; }
#folderViewerList[data-layout="details"] .explorer-date { grid-column:3; }
#folderViewerList[data-layout="details"] .explorer-type { grid-column:4; }
#folderViewerList[data-layout="details"] .explorer-size { grid-column:5; }
#folderViewerList:is([data-layout="tiles"],[data-layout="content"]) .explorer-entry .explorer-type { grid-row:2; grid-column:2; }
#folderViewerList:is([data-layout="tiles"],[data-layout="content"]) .explorer-entry .explorer-art { grid-row:1/3; }
#folderViewerList[data-layout="content"] .explorer-date { grid-column:3; }
#folderViewerList[data-layout="content"] .explorer-size { grid-column:4; }
#folderViewerList[data-layout="details"] .explorer-entry > .file-sync-icon { right:52px; }
#folderViewer .explorer-actions { margin-left:0; }
.office-content-preview { width:min(900px,100%); padding:28px 36px; border:1px solid var(--line); background:var(--panel); color:var(--ink); font:14px/1.7 'Plus Jakarta Sans',sans-serif; }
.office-content-preview > .office-preview-note { color:var(--muted); font-size:11px; margin:0 0 24px; padding-bottom:12px; border-bottom:1px solid var(--line); }
.office-content-preview .preview-data-table { min-width:100%; }.office-content-preview section { border-bottom:1px solid var(--line); padding:16px 0; }
.office-sheet-tabs { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:16px; }.office-sheet-tabs button { padding:7px 14px; border:1px solid var(--line); border-radius:5px; background:var(--panel); color:var(--ink); cursor:pointer; }.office-sheet-tabs button[aria-pressed="true"] { border-color:var(--workspace-color); color:var(--workspace-color); }
/* Resize affordances and a single continuous column selection. */
html.table-column-resizing,html.table-column-resizing * { cursor:col-resize!important; }
html.table-row-resizing,html.table-row-resizing * { cursor:row-resize!important; }
.table-resize-guide { position:fixed; background:#6558e8; box-shadow:0 0 0 2px #6558e82a; pointer-events:none; z-index:98; }
.table-column-highlight { position:fixed; box-sizing:border-box; border:2px solid #6558e8; background:#6558e817; pointer-events:none; z-index:97; }
.table-resize-guide[hidden],.table-column-highlight[hidden] { display:none; }
@media print { .table-resize-guide,.table-column-highlight { display:none!important; } }
/* Table coordinates are builder aids; Shoulder labels remain part of the form. */
.table-build-guides { position:absolute; inset:0; pointer-events:none; }
.table-build-guides button { position:absolute; padding:0; border:1px solid #dce1e9; border-radius:2px; background:#f1f4f8; color:#657185; font:10px/1.2 'DM Mono',monospace; text-align:center; pointer-events:auto; cursor:pointer; }
.table-build-guides button:hover { background:#e5e0ff; color:#5144c3; border-color:#a69bea; }
.canvas-element.table-has-guides .table-title { margin-bottom:25px; }
.canvas-element:not(.table-has-guides) .table-build-guides,.preview-mode .table-build-guides,.mobile-entry-mode .table-build-guides,.export-form-page .table-build-guides { display:none!important; }
.preview-mode .canvas-element.table-has-guides .table-title,.mobile-entry-mode .canvas-element.table-has-guides .table-title,.export-form-page .canvas-element.table-has-guides .table-title { margin-bottom:8px; }
.form-entry-table .table-shoulder { background:var(--table-header,#edf2f7); text-align:left; padding:8px; font-weight:600; }
.form-entry-table [data-formula] { font-variant-numeric:tabular-nums; }
.table-formula-bar { flex-basis:100%; display:grid; grid-template-columns:1fr; gap:7px; padding-top:9px; border-top:1px solid var(--line); }
.table-formula-bar[hidden] { display:none; }.table-formula-bar label { display:flex; align-items:center; gap:8px; }.table-formula-bar label > span { color:var(--workspace-color,#6558e8); font:bold 17px Georgia; }
.floating-text-format .table-formula-bar input { min-width:0; width:100%; padding:7px 9px; border:1px solid var(--line); border-radius:5px; color:var(--ink); background:var(--panel); font:12px 'DM Mono',monospace; }.table-formula-bar small { color:var(--muted); font-size:10px; line-height:1.6; }
.table-mapping-dialog { width:min(650px,94vw); }.table-map-axes { display:grid; grid-template-columns:1fr 1fr; gap:12px; }.table-map-axes fieldset { min-width:0; padding:10px; border:1px solid var(--line); border-radius:6px; }.table-map-axes [data-axis] { max-height:180px; overflow:auto; }.table-map-axes [data-axis] label { display:flex; gap:8px; align-items:center; margin:8px 0; }.table-map-axes input[type=checkbox] { width:auto; }.table-mapping-dialog label[hidden] { display:none; }.table-mapping-dialog .mapping-error { color:#b42318; }
@media print { .table-build-guides { display:none!important; } .canvas-element.table-has-guides .table-title { margin-bottom:8px; } }
#formCanvas .canvas-element .table-build-guides button { background:#f1f4f8!important; border-color:#dce1e9!important; color:#657185!important; font:10px/1.2 'DM Mono',monospace!important; cursor:pointer; }
#formCanvas .canvas-element .table-build-guides button:hover { background:#e5e0ff!important; border-color:#a69bea!important; color:#5144c3!important; }
.table-mapping-dialog form > label { display:grid; gap:5px; margin:10px 0; }.table-mapping-dialog form > label[hidden] { display:none; }.table-mapping-dialog form > label > input { width:100%; box-sizing:border-box; }
.table-structure-tools { flex-wrap:wrap; }

@media(max-width:600px) { #folderViewer .explorer-header { grid-template-columns:minmax(80px,1fr) minmax(90px,1fr); } #folderViewer .explorer-actions { grid-column:1/-1; flex-wrap:wrap; justify-content:flex-start; } }

/* Keep the meter itself centered with the folder actions; details reveal around it. */
#folderViewer .explorer-header > .folder-storage.storage-reveal { position:relative; height:36px; display:flex; align-items:center; }
#folderViewer .explorer-header > .folder-storage .storage-detail { position:absolute; z-index:5; background:var(--panel); border-radius:4px; }
#folderViewer .explorer-header > .folder-storage .storage-detail-top { bottom:calc(50% + 10px); }
#folderViewer .explorer-header > .folder-storage .storage-detail-bottom { top:calc(50% + 10px); padding:3px 0; }

.workspace-title > p:empty { display:none; }

.file-storage-button { display:inline-flex; align-items:center; justify-content:center; width:40px; height:36px; padding:2px!important; border:1px solid transparent!important; border-radius:6px; background:var(--panel); color:var(--muted); cursor:pointer; flex-shrink:0; }
.file-storage-button:hover,.file-storage-button[aria-expanded="true"] { border-color:var(--line)!important; background:var(--panel); }
.file-storage-button[data-state="synced"] { color:#378263; }
.file-storage-button[data-state="pending"] { color:#a77618; }
.file-storage-button[data-state="error"] { color:#b54242; }
.file-storage-button:disabled { opacity:.5; cursor:wait; }
#folderViewerList[data-layout="details"] .explorer-entry > .file-storage-button { right:48px; }
.file-storage-menu { position:fixed; z-index:10050; min-width:215px; padding:5px; border:1px solid var(--line); border-radius:9px; background:var(--panel); color:var(--ink); box-shadow:0 10px 32px #17223826; }
.file-storage-menu[hidden] { display:none; }
.file-storage-menu button { display:flex; align-items:center; gap:10px; width:100%; padding:7px 9px; background:transparent; border:0; border-radius:5px; color:inherit; font:12px 'Plus Jakarta Sans',sans-serif; text-align:left; cursor:pointer; }
.file-storage-menu button:hover,.file-storage-menu button:focus-visible { background:color-mix(in srgb,var(--purple) 9%,var(--panel)); outline:2px solid var(--purple); outline-offset:-2px; }
.file-storage-menu button:disabled { opacity:.4; cursor:not-allowed; }
.storage-choice-check { margin-left:auto; visibility:hidden; color:var(--purple); }
[aria-checked="true"] > .storage-choice-check { visibility:visible; }

.workspace-local-files { grid-column:1/-1; width:100%; }
/* File views use fixed action slots so save locations line up even without an options menu. */
#folderViewerList { --file-actions:40px 28px; }
#folderViewerList .explorer-entry { display:grid; grid-template-columns:minmax(0,1fr) var(--file-actions); gap:8px; padding:12px; border:1px solid var(--line); border-radius:10px; background:var(--panel); align-items:center; position:relative; }
#folderViewerList .explorer-entry > :is(.folder-file-info,.folder-open,.local-file-name) { grid-column:1; grid-row:1; width:100%; align-self:center; }
#folderViewerList .explorer-entry > :is(.file-storage-button,.file-sync-icon) { position:static; grid-column:2; grid-row:1; justify-self:center; margin:0; }
#folderViewerList .explorer-entry > :is(.file-options,.folder-options) { position:static; grid-column:3; grid-row:1; justify-self:center; margin:0; }
#folderViewerList .explorer-entry > details > summary { display:flex; align-items:center; justify-content:center; width:28px; height:36px; padding:0; border-radius:6px; }
#folderViewerList .explorer-entry > details > summary:hover { background:color-mix(in srgb,var(--workspace-color) 9%,var(--panel)); }
#folderViewerList .explorer-entry:hover { border-color:color-mix(in srgb,var(--workspace-color) 28%,var(--line)); background:color-mix(in srgb,var(--workspace-color) 3%,var(--panel)); }
#folderViewerList .explorer-entry.explorer-selected { border-color:var(--workspace-color); background:color-mix(in srgb,var(--workspace-color) 9%,var(--panel)); }
#folderViewerList[data-layout="details"] { display:flex; flex-direction:column; gap:6px; }
#folderViewerList[data-layout="details"] .explorer-entry { grid-template-columns:minmax(0,1fr) var(--file-actions); gap:12px; padding:8px 12px; min-height:56px; }
#folderViewerList[data-layout="details"] .explorer-entry > :not(:first-child) { position:static; right:auto; }
#folderViewerList[data-layout="details"] .explorer-entry > :first-child { grid-column:1; }
#folderViewerList[data-layout="details"] .explorer-detail-head { grid-template-columns:minmax(224px,1fr) 135px 110px 80px var(--file-actions); gap:12px; padding:0 13px; min-height:40px; margin-bottom:2px; border:0; }
#folderViewerList[data-layout="details"] .explorer-detail-head > span { grid-column:5/7; font-size:10px; color:var(--muted); text-align:center; }
#folderViewerList[data-layout="details"] .explorer-entry > :is(.folder-file-info,.folder-open,.local-file-name) { grid-template-columns:24px minmax(188px,1fr) 135px 110px 80px; }
#folderViewerList[data-layout="details"] .explorer-size { text-align:right; }
#folderViewerList[data-layout="details"] .explorer-detail-head [data-detail-sort="size"] { text-align:right; }
#folderViewerList:is([data-layout="extra-large"],[data-layout="large"],[data-layout="medium"],[data-layout="small"]) .explorer-entry { grid-template-columns:minmax(0,1fr) var(--file-actions); grid-template-rows:1fr 40px; gap:12px 8px; padding:16px 12px 8px; align-content:stretch; }
#folderViewerList:is([data-layout="extra-large"],[data-layout="large"],[data-layout="medium"],[data-layout="small"]) .explorer-entry > :is(.folder-file-info,.folder-open,.local-file-name) { grid-column:1/-1; grid-row:1; display:flex; flex-direction:column; gap:12px; align-self:start; }
#folderViewerList:is([data-layout="extra-large"],[data-layout="large"],[data-layout="medium"],[data-layout="small"]) .explorer-name { height:36px; width:100%; text-align:center; }
#folderViewerList:is([data-layout="extra-large"],[data-layout="large"],[data-layout="medium"],[data-layout="small"]) .explorer-entry > :is(.file-storage-button,.file-sync-icon,.file-options,.folder-options) { grid-row:2; }
#folderViewerList:is([data-layout="extra-large"],[data-layout="large"],[data-layout="medium"],[data-layout="small"]) .explorer-entry::after { content:''; position:absolute; left:12px; right:12px; bottom:52px; height:1px; background:var(--line); pointer-events:none; }
#folderViewerList[data-layout="medium"] { --entry-width:156px; }
#folderViewerList[data-layout="large"] { --entry-width:190px; }
#folderViewerList[data-layout="extra-large"] { --entry-width:248px; }
#folderViewerList[data-layout="small"] { --entry-width:290px; gap:10px; }
#folderViewerList[data-layout="list"] { gap:8px 12px; }
#folderViewerList[data-layout="list"] .explorer-entry { width:310px; min-height:58px; }
#folderViewerList[data-layout="tiles"] { --entry-width:350px; }
#folderViewerList[data-layout="tiles"] .explorer-entry { min-height:88px; }
#folderViewerList[data-layout="content"] { display:flex; flex-direction:column; gap:10px; }
#folderViewerList[data-layout="content"] .explorer-entry { min-height:96px; padding:14px 12px; border:1px solid var(--line); border-radius:10px; }
@media(max-width:900px) { #folderViewerList[data-layout="details"] .explorer-entry,#folderViewerList[data-layout="details"] .explorer-detail-head { min-width:790px; } #folderViewerList[data-layout="content"] .explorer-entry > :is(.folder-file-info,.folder-open,.local-file-name) { grid-template-columns:48px minmax(110px,1fr) 100px 70px; } #folderViewerList[data-layout="content"] { --entry-icon:48px; } }
#folderViewerList[data-layout="details"] .explorer-detail-head { align-items:center; }

.file-storage-menu button[hidden] { display:none; }

.library-image small { display:block; padding:0 10px 10px; color:var(--muted); font-size:10px; line-height:1.4; overflow-wrap:anywhere; }
.image-grid > .edit-hint { grid-column:1/-1; padding:24px 8px; }

/* Keep update acknowledgment reachable on phones, including fullscreen form entry. */
.app-update-notice { z-index:11000; box-sizing:border-box; }
@media(max-width:760px) {
 .app-update-notice { left:max(12px,env(safe-area-inset-left,0px)); right:max(12px,env(safe-area-inset-right,0px)); bottom:calc(12px + env(safe-area-inset-bottom,0px)); transform:none; width:auto; max-width:none; flex-direction:column; align-items:stretch; gap:12px; padding:16px; font-size:13px; line-height:1.5; }
 .app-update-notice button { min-height:44px; width:100%; white-space:normal; font:600 13px/1.4 'Plus Jakarta Sans',sans-serif; }
}

.global-sync-status .connection-resolution { margin-top:12px; padding-top:12px; border-top:1px solid var(--line); }
.global-sync-status .connection-resolution[hidden] { display:none; }
.global-sync-status .connection-resolution button { width:100%; min-height:40px; padding:8px 12px; border:1px solid var(--line); border-radius:6px; background:var(--panel); color:var(--ink); font-family:inherit; font-size:12px; font-weight:600; line-height:1.4; cursor:pointer; }
.global-sync-status .connection-resolution button:disabled { opacity:.5; cursor:wait; }

.workspace-welcome { display:flex; flex-direction:column; align-items:center; max-width:540px; margin:36px auto 0; padding:20px 24px 56px; text-align:center; }
.workspace-welcome[hidden],.workspace-welcome .welcome-create[hidden] { display:none; }
.workspace-chooser.is-empty > p,.workspace-chooser.is-empty > .workspace-choice-grid { display:none; }
.workspace-welcome .empty-location-art { width:270px; margin-bottom:12px; color:#6558e8; }
.welcome-eyebrow { color:var(--muted); font:600 10px/1.5 'Plus Jakarta Sans',sans-serif; letter-spacing:.16em; }
.workspace-welcome h2 { margin:10px 0 12px; color:var(--ink); font-size:28px; letter-spacing:-.04em; }
.workspace-welcome p { margin:0; max-width:420px; color:var(--muted); font-size:14px; line-height:1.8; }
.workspace-welcome .welcome-create { display:flex; align-items:center; gap:9px; margin-top:24px; padding:12px 18px; min-height:44px; border:1px solid #6558e8; border-radius:8px; background:#6558e8; color:#fff; font:600 12px/1.5 'Plus Jakarta Sans',sans-serif; cursor:pointer; }
.workspace-welcome .welcome-create:hover { background:#5749d3; }
.workspace-welcome .welcome-create:focus-visible { outline:2px solid var(--ink); outline-offset:4px; }
.workspace-welcome small { margin-top:14px; color:var(--muted); font-size:11px; line-height:1.6; }
@media(max-width:600px) { .workspace-welcome { margin-top:12px; padding:16px 8px 32px; } .workspace-welcome .empty-location-art { width:220px; } .workspace-welcome h2 { font-size:24px; } }

.workspace-chooser { position:relative; }

@media(min-width:761px) { .workspace-welcome { max-width:660px; } .workspace-welcome p { max-width:620px; } .workspace-welcome .welcome-instruction { display:block; white-space:nowrap; } }
@media(max-width:760px) { .workspace-welcome .welcome-instruction { display:block; } }

.form-save-controls[data-enabled="true"] .form-save-status { position:absolute; width:1px; min-width:0; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.form-save-controls .manual-form-save[data-save-state="unsaved"] { background:#fff3c4; border-color:#e4cd79; color:#806016; }
.form-save-controls .manual-form-save[data-save-state="saved"] { background:#e2f3e9; border-color:#9acdaf; color:#23734b; }
.floating-text-format .table-formula-bar input::placeholder { color:#a1a7b2; font:italic 11px 'Plus Jakarta Sans',sans-serif; opacity:1; }
.table-cell-formats { display:flex; align-items:center; gap:5px; }
.floating-text-format .table-cell-formats select { flex:1; min-width:0; height:32px; }
.floating-text-format .table-cell-formats button { width:32px; height:32px; padding:3px; display:inline-grid; place-items:center; }
.floating-text-format .table-cell-formats button:disabled { opacity:.35; cursor:not-allowed; }

/* Temporary formula reference colors never become saved cell styles. */
.formula-reference-layer { position:fixed; inset:0; pointer-events:none; z-index:10950; overflow:hidden; }
.formula-reference-box { position:absolute; border:2px solid; box-sizing:border-box; border-radius:2px; }
.formula-reference-mirror { position:absolute; overflow:hidden; pointer-events:none; }
.formula-reference-warning { color:#dc2626; font-size:11px; line-height:1.5; }
[data-table-cell][aria-invalid=true]:not(:focus),[data-table-cell][aria-invalid=true]+.rich-field-proxy:not(:focus) { color:#dc2626!important; }

/* Formula autocomplete and concise in-context definitions. */
.formula-guidance { position:fixed; z-index:11020; padding:8px; border:1px solid var(--line,#dce1eb); border-radius:10px; background:var(--panel,#fff); color:var(--ink,#20253a); box-shadow:0 8px 28px #17233c26; font:11px 'Plus Jakarta Sans',sans-serif; }
.formula-guidance[hidden] { display:none; }
.formula-guidance-title { padding:3px 6px 7px; color:var(--muted,#697386); font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; }
.formula-suggestions { max-height:176px; overflow-y:auto; overscroll-behavior:contain; }
.formula-suggestion { display:grid; grid-template-columns:82px minmax(0,1fr); align-items:start; gap:8px; padding:8px; border-radius:5px; cursor:pointer; }
.formula-suggestion strong { font:600 11px 'DM Mono',monospace; }
.formula-suggestion span { color:var(--muted,#697386); font-size:10px; line-height:1.5; }
.formula-suggestion[aria-selected=true],.formula-suggestion:hover { background:color-mix(in srgb,var(--workspace-color,#6558e8) 12%,var(--panel,#fff)); }
.formula-definition { border-top:1px solid var(--line,#dce1eb); margin-top:6px; padding:10px 6px 4px; line-height:1.6; }
.formula-definition strong,.formula-definition code { font:11px 'DM Mono',monospace; overflow-wrap:anywhere; }
.formula-definition p { margin:6px 0; }
.formula-definition code { color:var(--muted,#697386); font-size:10px; }
.formula-guidance-keys { padding:6px; color:var(--muted,#697386); font-size:9px; }

.floating-text-format .format-pin { position:absolute; right:10px; top:8px; width:27px; height:25px; padding:3px; display:grid; place-items:center; }
.floating-text-format .format-pin[aria-pressed=true] { color:var(--workspace-color,#6558e8); background:#eeeafd; }
.floating-text-format .format-move-handle { padding-right:34px; }

.floating-text-format .table-cell-lock { display:inline-grid; place-items:center; width:32px; height:32px; }
.floating-text-format .table-cell-lock[hidden] { display:none; }
.floating-text-format .table-cell-lock[aria-pressed=true] { color:var(--workspace-color,#6558e8); background:#eeeafd; }
.form-entry-table td:is(:has([data-cell-locked]),:has([data-formula])) { position:relative; }
body:not(.preview-mode):not(.mobile-entry-mode) .form-entry-table td:is(:has([data-cell-locked]),:has([data-formula]))::after { content:'🔒'; position:absolute; z-index:3; right:3px; top:2px; width:12px; height:12px; line-height:12px; text-align:center; font-size:9px; opacity:.65; pointer-events:none; }

/* Full-cell range selection, independent of input/proxy content size. */
.form-entry-table td.popup-cell-selected { outline:none!important; box-shadow:none!important; }
.table-range-highlight { position:fixed; inset:0; width:100vw; height:100vh; pointer-events:none; z-index:450; overflow:hidden; }
.table-range-fill { fill:#6558e8; fill-opacity:.12; }
.table-range-outline { fill:none; stroke:#6558e8; stroke-width:2; stroke-linejoin:round; }
.table-range-selecting,.table-range-selecting * { user-select:none!important; }
.table-range-selecting .table-resize-guide { display:none!important; }

/* Artwork is its own layer: opacity never fades text or controls. */
.custom-appearance { position:relative; isolation:isolate; background-color:var(--appearance-color)!important; }
.custom-appearance::before { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none; border-radius:inherit; background-image:var(--appearance-image); background-size:var(--appearance-size); background-repeat:var(--appearance-repeat); background-position:center; opacity:var(--appearance-opacity); }
/* Keep the photo unobscured: readability belongs to the text, not a tile-wide wash. */
.workspace-choice.custom-appearance .workspace-choice-open,.workspace-folder.custom-appearance .folder-open { background:transparent; color:#20253a; border-radius:inherit; text-shadow:0 1px 3px #fff,0 0 6px #fff; }
.workspace-gallery.custom-appearance .workspace-title > h1 { background:color-mix(in srgb,var(--panel,#fff) 88%,transparent); border-radius:10px; padding:6px 12px; width:fit-content; max-width:100%; }
.appearance-dialog { width:min(680px,calc(100vw - 28px)); max-height:90vh; padding:24px; border:1px solid var(--line,#dce1eb); border-radius:18px; color:var(--ink,#20253a); background:var(--panel,#fff); box-shadow:0 20px 80px #18223840; }
.appearance-dialog::backdrop { background:#17233d70; backdrop-filter:blur(3px); }
.appearance-dialog header,.appearance-dialog footer { display:flex; align-items:center; gap:12px; }
.appearance-dialog header { justify-content:space-between; margin-bottom:18px; }.appearance-dialog h2 { font-size:21px; margin:5px 0; }
.appearance-dialog button { cursor:pointer; border:1px solid var(--line,#dce1eb); background:var(--panel,#fff); color:var(--ink,#20253a); border-radius:8px; padding:9px 12px; font:inherit; font-size:12px; }
.appearance-dialog button:focus-visible { outline:2px solid var(--workspace-color,#6558e8); outline-offset:2px; }
.appearance-targets,.appearance-categories { display:flex; gap:8px; margin:14px 0; flex-wrap:wrap; }
.appearance-dialog button[aria-pressed=true] { border-color:var(--workspace-color,#6558e8); box-shadow:0 0 0 1px var(--workspace-color,#6558e8); background:color-mix(in srgb,var(--workspace-color,#6558e8) 9%,var(--panel,#fff)); }
.appearance-preview { min-height:135px; border:1px solid var(--line); border-radius:12px; padding:22px; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:7px; transition:width .15s; }
.appearance-preview > * { background:#ffffffde; color:#263743; border-radius:4px; padding:3px 7px; }.appearance-preview > span { font-size:10px; text-transform:uppercase; letter-spacing:.08em; }.appearance-preview strong { font-size:21px; }.appearance-preview small { font-size:11px; }.appearance-preview.tile-preview { max-width:300px; }
.appearance-color { display:flex; align-items:center; gap:12px; margin-top:16px; font-size:12px; }.appearance-color input { width:48px; height:30px; border:0; background:none; }
.appearance-caption { color:var(--muted); font-size:11px; line-height:1.6; }.appearance-presets { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:9px; }.appearance-dialog .appearance-preset { padding:4px; min-width:0; }.appearance-preset > span { display:block; height:63px; border-radius:5px; background-position:center; }.appearance-preset small { display:block; margin:7px 0 3px; font-size:10px; }
.appearance-opacity { display:grid; grid-template-columns:1fr auto; gap:8px; margin-top:18px; font-size:12px; }.appearance-opacity[hidden] { display:none; }.appearance-opacity input { grid-column:1/-1; width:100%; accent-color:var(--workspace-color,#6558e8); }
.appearance-dialog footer { margin-top:20px; padding-top:16px; border-top:1px solid var(--line); }.appearance-dialog footer span { flex:1; }.appearance-dialog [data-save] { background:var(--workspace-color,#6558e8); color:#fff; border-color:transparent; }
@media(max-width:600px){.appearance-dialog{padding:16px}.appearance-presets{grid-template-columns:repeat(2,minmax(0,1fr))}.appearance-dialog footer{flex-wrap:wrap}.appearance-preset > span{height:80px}}

.appearance-presets { max-height:310px; overflow-y:auto; padding:3px; }
.appearance-caption a { color:inherit; text-underline-offset:2px; }

#folderViewer.custom-appearance > .folder-viewer-card { background:transparent!important; }
#folderViewer.custom-appearance .folder-viewer-list { background:transparent; }
.folder-sort { position:relative; display:inline-block; }
.folder-sort > summary { list-style:none; cursor:pointer; display:grid; place-items:center; width:36px; height:36px; border:1px solid var(--line,#dce1eb); border-radius:8px; background:var(--panel,#fff); color:var(--ink,#263443); }
.folder-sort > summary::-webkit-details-marker { display:none; }
.folder-sort > select[hidden] { display:none!important; }
.folder-sort-menu { position:absolute; right:0; top:calc(100% + 7px); z-index:510; width:210px; padding:6px; border:1px solid var(--line,#dce1eb); border-radius:10px; background:var(--panel,#fff); box-shadow:0 8px 28px #17233c26; }
.folder-sort-menu button { display:block; width:100%; border:0; border-radius:5px; padding:9px 28px 9px 10px; text-align:left; background:transparent; color:var(--ink,#263443); font:11px 'Plus Jakarta Sans',sans-serif; cursor:pointer; position:relative; }
.folder-sort-menu button:hover,.folder-sort-menu button:focus-visible { background:color-mix(in srgb,var(--workspace-color,#6558e8) 10%,var(--panel,#fff)); }
.folder-sort-menu button[aria-checked=true]::after { content:'✓'; position:absolute; right:10px; color:var(--workspace-color,#6558e8); }

/* Keep the workspace photo edge-to-edge while retaining the content alignment. */
.workspace-gallery.custom-appearance { max-width:none; min-height:calc(100dvh - 64px); padding-inline:max(32px,calc((100% - 1056px) / 2)); }
body.mobile-entry-mode .workspace-gallery.custom-appearance { padding-inline:16px; }

/* Contrast follows the selected photo, base color and opacity. Small solid labels
   protect text on detailed photos without washing out the tile artwork. */
.workspace-choice.custom-appearance .workspace-choice-open,
.workspace-folder.custom-appearance .folder-open { color:var(--appearance-ink)!important; text-shadow:none; }
.workspace-choice.custom-appearance .workspace-choice-open > :is(.appearance-tile-name,em,small),
.workspace-folder.custom-appearance .folder-open > span:last-child,
.custom-appearance.appearance-preview > * { color:var(--appearance-ink)!important; background:var(--appearance-label-bg); border-radius:4px; padding:3px 6px; width:fit-content; max-width:100%; }
.workspace-choice.custom-appearance .workspace-choice-open > .appearance-tile-name { display:inline-block; }
.workspace-folder.custom-appearance .folder-open :is(b,small,em) { color:inherit; }
.workspace-choice.custom-appearance .workspace-choice-menu,
.workspace-folder.custom-appearance > .folder-options > summary { color:var(--appearance-ink); background:var(--appearance-surface); border:1px solid var(--appearance-edge); border-radius:6px; text-shadow:none; }
.workspace-gallery.custom-appearance .workspace-title > h1,
.workspace-gallery.custom-appearance .workspace-title > p,
.workspace-gallery.custom-appearance .folder-heading > :is(h2,h3,span),
.workspace-gallery.custom-appearance .workspace-location-empty :is(h2,h3,p),
#folderViewer.custom-appearance .folder-viewer-list > .folder-empty :is(h2,h3,p) { color:var(--appearance-ink); background:var(--appearance-label-bg); border-radius:6px; padding:4px 8px; width:fit-content; }
#folderViewer.custom-appearance .explorer-detail-head { background:var(--appearance-surface); border-radius:8px; }
#folderViewer.custom-appearance .explorer-detail-head > :is(button,span) { color:var(--appearance-ink); }
.workspace-gallery.custom-appearance :is(.folder-sort > summary,.workspace-settings-btn,.expanding-search button),
#folderViewer.custom-appearance .explorer-actions > .explorer-icon { background:var(--appearance-surface); color:var(--appearance-ink); border-color:var(--appearance-edge); }
.custom-appearance .empty-location > :is(.empty-location-title,.empty-location-hint) { color:var(--appearance-ink); background:var(--appearance-label-bg); border-radius:5px; padding:4px 8px; width:fit-content; margin-inline:auto; }
.custom-appearance .empty-location-art { color:var(--appearance-ink); }
.workspace-gallery.custom-appearance .folder-heading > .eyebrow { color:var(--appearance-ink); background:var(--appearance-label-bg); }

.folder-heading:empty { display:none; }

/* Keep the live preview and actions visible while appearance options scroll. */
.appearance-dialog { overflow:hidden; max-height:90dvh; }
.appearance-dialog > form { display:flex; flex-direction:column; max-height:calc(90dvh - 50px); min-height:0; }
.appearance-dialog :is(header,.appearance-targets,.appearance-preview,footer) { flex-shrink:0; }
.appearance-scroll-options { min-height:0; overflow-y:auto; overscroll-behavior:contain; scrollbar-gutter:stable; padding:0 6px 12px 0; margin-top:12px; }
.appearance-scroll-options:focus-visible { outline:2px solid var(--workspace-color,#6558e8); outline-offset:-2px; border-radius:6px; }
.appearance-scroll-options .appearance-presets { max-height:none; overflow:visible; }
.appearance-dialog footer { margin-top:0; padding-top:12px; }
@media(max-width:600px) { .appearance-dialog > form { max-height:calc(90dvh - 34px); } }
@media(max-height:650px) {
 .appearance-dialog { padding:12px; max-height:96dvh; }
 .appearance-dialog > form { max-height:calc(96dvh - 26px); }
 .appearance-dialog header { margin-bottom:4px; }
 .appearance-dialog header .eyebrow,.appearance-preview > small { display:none; }
 .appearance-dialog h2 { font-size:16px; margin:0; }
 .appearance-dialog .appearance-targets { margin:6px 0; }
 .appearance-dialog .appearance-preview { min-height:70px; height:auto; padding:8px 12px; gap:3px; }
 .appearance-preview strong { font-size:16px; }
 .appearance-scroll-options { margin-top:6px; }
 .appearance-dialog footer { gap:6px; padding-top:6px; flex-wrap:nowrap; }
 .appearance-dialog footer button { padding:7px; font-size:11px; }
}
/* Only the photo gallery scrolls; preview and all settings remain in place. */
.appearance-dialog :is(.appearance-color,.appearance-categories,.appearance-caption,.appearance-opacity) { flex-shrink:0; }
.appearance-dialog .appearance-color { margin-top:10px; }
.appearance-dialog .appearance-categories { margin:10px 0 4px; }
.appearance-dialog .appearance-caption { margin:4px 0 8px; }
.appearance-dialog .appearance-opacity { margin:4px 0 12px; }
.appearance-dialog .appearance-presets { min-height:0; max-height:none; overflow-y:auto; overscroll-behavior:contain; scrollbar-gutter:stable; flex:1 1 auto; padding:3px 6px 3px 3px; }
.appearance-dialog .appearance-presets:focus-visible { outline:2px solid var(--workspace-color,#6558e8); outline-offset:-2px; border-radius:6px; }
.appearance-dialog footer { margin-top:10px; }
@media(max-height:700px),(max-width:600px) {
 .appearance-dialog { padding:12px; max-height:96dvh; }
 .appearance-dialog > form { max-height:calc(96dvh - 26px); }
 .appearance-dialog header { margin-bottom:2px; }
 .appearance-dialog header .eyebrow,.appearance-preview > small { display:none; }
 .appearance-dialog h2 { font-size:16px; margin:0; }
 .appearance-dialog .appearance-targets { margin:4px 0; }
 .appearance-dialog .appearance-preview { min-height:60px; height:auto; padding:5px 10px; gap:2px; }
 .appearance-preview strong { font-size:15px; }
 .appearance-dialog .appearance-color { margin-top:4px; }
 .appearance-dialog .appearance-categories { margin:4px 0 0; }
 .appearance-dialog .appearance-caption { margin:3px 0; font-size:10px; }
 .appearance-dialog .appearance-opacity { margin:2px 0 4px; gap:2px; }
 .appearance-dialog footer { gap:6px; margin-top:4px; padding-top:6px; flex-wrap:nowrap; }
 .appearance-dialog button { padding:6px 9px; }
 .appearance-dialog footer button { padding:6px; font-size:11px; }
}
@media(max-height:480px) and (min-width:650px) {
 .appearance-dialog { width:min(900px,calc(100vw - 28px)); }
 .appearance-dialog > form { display:grid; grid-template-columns:minmax(220px,.85fr) minmax(0,1.15fr); grid-template-rows:auto auto auto auto auto auto minmax(0,1fr) auto; column-gap:18px; height:calc(96dvh - 26px); }
 .appearance-dialog header { grid-column:1/-1; grid-row:1; }
 .appearance-dialog .appearance-targets { grid-column:1; grid-row:2; }
 .appearance-dialog .appearance-preview { grid-column:1; grid-row:3; }
 .appearance-dialog .appearance-color { grid-column:1; grid-row:4; }
 .appearance-dialog .appearance-categories { grid-column:1; grid-row:5; }
 .appearance-dialog .appearance-opacity { grid-column:1; grid-row:6; }
 .appearance-dialog .appearance-caption { grid-column:2; grid-row:2; }
 .appearance-dialog .appearance-presets { grid-column:2; grid-row:3/8; grid-template-columns:repeat(2,minmax(0,1fr)); }
 .appearance-dialog footer { grid-column:1/-1; grid-row:8; }
}
/* Accent and hover controls live with the preview. */
.appearance-accent-controls { display:flex; align-items:center; gap:12px; flex-wrap:wrap; flex-shrink:0; margin-top:10px; }
.appearance-accent-controls label { display:flex; align-items:center; gap:8px; font-size:12px; }
.appearance-accent-controls input { width:36px; height:26px; padding:0; background:none; border:0; }
.appearance-accent-controls small { color:var(--muted); font-size:10px; }
.workspace-choice,.workspace-folder,.appearance-preview { box-shadow:inset 5px 0 var(--tile-color,var(--workspace-color,#6558e8)); }
.workspace-choice:hover,.workspace-folder:hover,.appearance-preview:hover { box-shadow:inset 9px 0 var(--tile-hover,var(--workspace-hover-color,#6558e8)),0 0 0 2px var(--tile-hover,var(--workspace-hover-color,#6558e8)); border-color:var(--tile-hover,var(--workspace-hover-color,#6558e8)); }
.workspace-choice.custom-appearance,.workspace-folder.custom-appearance,.appearance-preview { background-image:linear-gradient(var(--tile-color,var(--workspace-color,#6558e8)),var(--tile-color,var(--workspace-color,#6558e8))); background-size:5px 100%; background-repeat:no-repeat; }
.workspace-choice:hover { background-image:linear-gradient(var(--tile-hover),var(--tile-hover)); }
.workspace-customizer label[hidden],.workspace-customizer input[hidden] { display:none!important; }
html body .app-watermark { color:var(--footer-ink,var(--ink)); background:var(--footer-surface,var(--panel)); border:1px solid color-mix(in srgb,var(--footer-ink,var(--ink)) 28%,transparent); box-shadow:0 2px 9px #0002; padding:3px 9px; }
/* Empty locations use a compact, readable panel over any photo or base color. */
.empty-location { color:var(--appearance-ink); background:var(--appearance-surface); border:1px solid var(--appearance-edge); border-radius:16px; width:min(360px,calc(100% - 32px)); max-width:360px; min-height:0; padding:24px; margin:40px auto; box-shadow:0 8px 24px #0002; }
.empty-location .empty-location-art { width:150px; height:112px; color:var(--appearance-ink); margin:0 auto 8px; }
.empty-location .empty-location-art g { opacity:.8; }
.empty-location .empty-location-art g:last-child { stroke:currentColor; }
.empty-location > :is(.empty-location-title,.empty-location-hint) { background:transparent; padding:0; color:var(--appearance-ink); }
.empty-location-title { font-weight:700; font-size:15px; }
.empty-location-hint { font-size:12px; line-height:1.6; margin-top:8px; }
#folderViewer.custom-appearance > .folder-viewer-card > .folder-search-empty,
.workspace-gallery.custom-appearance .workspace-title > p { color:var(--appearance-ink); background:var(--appearance-label-bg); padding:6px 10px; border-radius:6px; width:fit-content; }
.workspace-gallery.custom-appearance .workspace-title > p:empty { display:none; }
.workspace-folder.custom-appearance .explorer-name { color:var(--appearance-ink)!important; background:var(--appearance-label-bg); border-radius:4px; padding:3px 6px; }
@media(max-height:700px),(max-width:600px) { .appearance-accent-controls { margin-top:4px; gap:4px 10px; } .appearance-accent-controls small { display:none; } }
@media(max-height:480px) and (min-width:650px) {
 .appearance-dialog > form { grid-template-rows:auto auto auto auto auto auto auto minmax(0,1fr) auto; }
 .appearance-accent-controls { grid-column:1; grid-row:4; }
 .appearance-dialog .appearance-color { grid-row:5; }
 .appearance-dialog .appearance-categories { grid-row:6; }
 .appearance-dialog .appearance-opacity { grid-row:7; }
 .appearance-dialog .appearance-presets { grid-row:3/9; }
 .appearance-dialog footer { grid-row:9; }
}

#workspaceColor,#workspaceHoverColor,label[for="workspaceColor"],label[for="workspaceHoverColor"] { display:none!important; }

.workspace-gallery:not(.custom-appearance),#folderViewer:not(.custom-appearance) { --appearance-ink:var(--ink,#17212e); --appearance-surface:var(--panel,#fff); --appearance-edge:var(--line,#dce1eb); }
.workspace-choice::after,.workspace-folder::after,.appearance-preview::after { content:''; position:absolute; pointer-events:none; left:0; top:0; bottom:0; width:5px; border-radius:8px 0 0 8px; background:var(--tile-color,var(--workspace-color,#6558e8)); z-index:2; }
.workspace-choice:hover::after,.workspace-folder:hover::after,.appearance-preview:hover::after { width:9px; background:var(--tile-hover,var(--workspace-hover-color,#6558e8)); }
.workspace-folder { position:relative; }
/* A clear center protects the artwork and copy; only the outer surround fades. */
.empty-location { --empty-feather:clamp(18px,4vw,48px); position:relative; isolation:isolate; background:transparent; border:0; box-shadow:none; border-radius:0; width:min(360px,calc(100% - 2 * var(--empty-feather))); margin:calc(24px + var(--empty-feather)) auto; }
.empty-location::before { content:''; position:absolute; z-index:-1; pointer-events:none; inset:calc(-1 * var(--empty-feather)); background:var(--appearance-surface,var(--panel,#fff)); mask-image:linear-gradient(to right,transparent,#000 var(--empty-feather),#000 calc(100% - var(--empty-feather)),transparent),linear-gradient(to bottom,transparent,#000 var(--empty-feather),#000 calc(100% - var(--empty-feather)),transparent); mask-composite:intersect; }
.empty-location .empty-location-art { width:150px; height:110px; }
.empty-location .empty-location-art g { opacity:1; }
/* Empty-state contrast is based on the chosen base color, matching its surround. */
.empty-location { color:var(--empty-ink,var(--appearance-ink,var(--ink,#17212e))); }
.empty-location::before { display:var(--empty-fade-display,none); background:var(--empty-color,var(--appearance-color,var(--panel,#fff))); }
.empty-location .empty-location-art,
.empty-location > :is(.empty-location-title,.empty-location-hint) { color:var(--empty-ink,var(--appearance-ink,var(--ink,#17212e))); }

.custom-appearance .empty-location > :is(.empty-location-title,.empty-location-hint) { color:var(--empty-ink,var(--appearance-ink)); background:transparent; padding:0; }

/* Empty locations sit on a clear, rounded surface with no feathered edge. */
.empty-location { background:var(--empty-color,var(--appearance-color,var(--panel,#fff))); border:1px solid color-mix(in srgb,var(--empty-ink,var(--appearance-ink,var(--ink,#17212e))) 24%,transparent); border-radius:18px; box-shadow:none; width:min(360px,calc(100% - 32px)); margin:40px auto; }
.empty-location::before { display:none; content:none; }
/* An inset rim makes the empty-state surface feel recessed. */
.empty-location { border-color:color-mix(in srgb,var(--empty-ink,var(--appearance-ink,var(--ink,#17212e))) 16%,transparent); box-shadow:inset 0 3px 9px rgba(0,0,0,.2),inset 0 1px 3px rgba(0,0,0,.15),0 1px 0 rgba(255,255,255,.22); }
/* A recessed storage channel; its caption stays visible in the quiet state. */
.storage-reveal .storage-track { position:relative; background:color-mix(in srgb,var(--ink,#17212e) 12%,var(--panel,#fff)); border:1px solid color-mix(in srgb,var(--ink,#17212e) 22%,transparent); box-shadow:inset 0 2px 4px #0003,0 1px 0 #ffffff66; }
.storage-track::after { content:''; position:absolute; inset:0; border-radius:inherit; box-shadow:inset 0 2px 3px #0005,inset 0 -1px 1px #ffffff3d; pointer-events:none; }
.storage-track > :is(i,b) { background-image:linear-gradient(to bottom,#0002,transparent 55%,#ffffff24); }
.storage-track > em { background:transparent; }
.storage-reveal .storage-detail-top { opacity:.72; visibility:visible; transform:scale(.94); transform-origin:left bottom; transition:opacity .2s ease,transform .2s ease; }
.storage-capacity-label { font-size:11px; font-weight:600; }
.storage-summary > .storage-capacity-label { display:block; opacity:.72; transform:scale(.94); transform-origin:left center; transition:opacity .2s ease,transform .2s ease; margin-bottom:3px; }
.storage-reveal:focus-within .storage-detail-top,.storage-reveal.storage-expanded .storage-detail-top,
.storage-summary:focus-within > .storage-capacity-label,.storage-summary.storage-expanded > .storage-capacity-label { opacity:1; visibility:visible; transform:none; }
@media(hover:hover) { .storage-reveal:hover .storage-detail-top,.storage-summary:hover > .storage-capacity-label { opacity:1; visibility:visible; transform:none; } }
@media(prefers-reduced-motion:reduce) { .storage-detail-top,.storage-capacity-label { transition:none!important; } }
/* Animate the caption and percentage independently, preserving both bar edges. */
.storage-reveal .storage-detail-top { transform:none; opacity:1; visibility:visible; }
.storage-reveal .storage-detail-top > strong,.storage-reveal .storage-detail-top > span { opacity:.72; transform:scale(.94); transition:opacity .2s ease,transform .2s ease; }
.storage-reveal .storage-detail-top > strong { transform-origin:left center; }
.storage-reveal .storage-detail-top > span { transform-origin:right center; margin-left:auto; text-align:right; }
.storage-reveal:focus-within .storage-detail-top > *, .storage-reveal.storage-expanded .storage-detail-top > * { opacity:1; transform:none; }
@media(hover:hover) { .storage-reveal:hover .storage-detail-top > * { opacity:1; transform:none; } }
@media(prefers-reduced-motion:reduce) { .storage-reveal .storage-detail-top > * { transition:none; } }
/* Both caption halves follow the same delayed collapse as the detail legend. */
.storage-reveal .storage-detail-top > strong,.storage-reveal .storage-detail-top > span { transition-delay:1s; }
.storage-reveal:focus-within .storage-detail-top > *, .storage-reveal.storage-expanded .storage-detail-top > * { transition-delay:0s; }
@media(hover:hover) { .storage-reveal:hover .storage-detail-top > * { transition-delay:0s; } }
#folderViewerList:not(:has(> .explorer-entry:not([hidden]))) > .explorer-detail-head { display:none; }
body .workspace-top,body .topbar { padding-right:116px; gap:16px; }
body .workspace-top > .directory-trail,body .topbar > .directory-trail { position:relative; inset:auto; height:auto; flex:0 1 auto; min-width:44px; margin:0; max-width:45%; overflow:visible; }
.directory-trail > .workspace-switcher { position:relative; inset:auto; flex:none; }
.directory-trail .workspace-switcher > summary { width:36px; height:36px; }
.directory-trail .workspace-switcher nav { left:0; right:auto; top:42px; }
body :is(.workspace-top,.topbar) > .folder-storage { position:relative; flex:1 1 280px; max-width:480px; min-width:100px; height:42px; display:flex; align-items:center; margin:0 8px 0 auto; padding:0; border:0; background:none; }
:is(.workspace-top,.topbar) .folder-storage .storage-detail { position:absolute; left:0; right:0; width:100%; z-index:6; }
:is(.workspace-top,.topbar) .folder-storage .storage-detail-top { bottom:calc(50% + 8px); }
:is(.workspace-top,.topbar) .folder-storage .storage-detail-bottom { top:calc(50% + 10px); background:var(--panel,#fff); border-radius:6px; padding:6px; box-shadow:0 4px 10px #0002; }
:is(.workspace-top,.topbar) .folder-storage:not(.storage-reveal) { display:block; height:auto; }
:is(.workspace-top,.topbar) .folder-storage > small { display:block; font-size:9px; }
@media(max-width:760px){body .workspace-top,body .topbar{gap:6px;padding-left:10px;padding-right:108px}body .workspace-top .brand,body .topbar .brand{flex:none;width:auto}body .workspace-top .tavoryn-wordmark,body .topbar .tavoryn-wordmark{display:none}body :is(.workspace-top,.topbar) > .directory-trail{max-width:35%}.directory-trail > button{max-width:85px;overflow:hidden;text-overflow:ellipsis}body :is(.workspace-top,.topbar) > .folder-storage{min-width:86px;margin-right:0}.folder-storage .storage-capacity-label{font-size:9px}.folder-storage .storage-detail-top{gap:4px;font-size:9px}.folder-storage .storage-detail-bottom{min-width:220px;left:auto!important}.directory-trail .workspace-switcher nav{position:fixed;left:12px;right:auto;top:62px}}
body:not(.mobile-entry-mode) :is(.topbar,.workspace-top) { padding-right:116px; }
@media(max-width:760px) {
 body .workspace-view:not(.choosing) .workspace-top,body .workspace-top,body .topbar { padding-left:64px; padding-right:108px; flex-wrap:nowrap; }
 body :is(.workspace-top,.topbar) > .directory-trail { flex:0 0 auto; max-width:none; min-width:36px; gap:2px; }
 .directory-trail > button,.directory-trail > span { display:none; }
 .directory-trail > .directory-overflow > summary { width:28px; padding:0; text-align:center; }
 .folder-storage .storage-detail-top > * { white-space:nowrap; }
}
/* Storage details belong to the header row, with no floating panel. */
body :is(.workspace-top,.topbar) > .folder-storage .storage-detail-bottom { top:calc(50% + 9px); left:0!important; right:0; min-width:0; width:100%; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; flex-wrap:nowrap; align-items:center; gap:12px; font-size:9px; line-height:16px; max-height:18px; overflow-x:auto; overflow-y:hidden; scrollbar-width:none; }
:is(.workspace-top,.topbar) .storage-detail-bottom::-webkit-scrollbar { display:none; }
:is(.workspace-top,.topbar) .storage-detail-bottom .storage-legend { flex-wrap:nowrap; flex-shrink:0; gap:10px; }
:is(.workspace-top,.topbar) .storage-detail-bottom .storage-total { flex-shrink:0; }
/* Storage unfolds leftward from its header icon, then reveals its labels. */
.storage-disclosure-toggle { position:fixed; top:10px; right:110px; z-index:182; width:44px; height:44px; display:grid; place-items:center; padding:0; border:0; border-radius:8px; background:transparent; color:var(--ink,#263443); cursor:pointer; }
.storage-disclosure-toggle:hover,.storage-disclosure-toggle[aria-expanded=true] { background:color-mix(in srgb,var(--ink,#263443) 7%,var(--panel,#fff)); }
.storage-disclosure-toggle:focus-visible { outline:2px solid var(--workspace-color,#6558e8); outline-offset:-2px; }
body:not(.mobile-entry-mode) :is(.topbar,.workspace-top),body .workspace-top,body .topbar { padding-right:164px; }
body :is(.workspace-top,.topbar) > #headerStorageCapacity { flex:1 1 480px; min-width:0; max-width:480px; overflow:hidden; height:54px; transition:max-width .46s cubic-bezier(.22,.75,.25,1),flex-basis .46s cubic-bezier(.22,.75,.25,1),opacity .3s ease; transform-origin:right center; }
body :is(.workspace-top,.topbar) > #headerStorageCapacity[data-disclosure=closed] { max-width:0; flex-basis:0; opacity:0; margin-right:0; pointer-events:none; }
#headerStorageCapacity .storage-track { flex-shrink:0; transform-origin:right center; transition:transform .46s cubic-bezier(.22,.75,.25,1); }
#headerStorageCapacity[data-disclosure=closed] .storage-track { transform:scaleX(0); }
#headerStorageCapacity:is([data-disclosure=opening],[data-disclosure=closing],[data-disclosure=closed]) .storage-detail,
#headerStorageCapacity:is([data-disclosure=opening],[data-disclosure=closing],[data-disclosure=closed]) > :is(strong,small) { opacity:0!important; visibility:hidden!important; transform:translateY(-3px) scale(.96); transition:opacity .18s ease,transform .18s ease,visibility 0s .18s; }
#headerStorageCapacity[data-disclosure=open] .storage-detail { transition-duration:.18s; }
#headerStorageCapacity .storage-detail-top { white-space:nowrap; }
@media(max-width:760px){.storage-disclosure-toggle{right:102px}body .workspace-view:not(.choosing) .workspace-top,body .workspace-top,body .topbar{padding-right:150px}body :is(.workspace-top,.topbar) > #headerStorageCapacity{margin-right:0}.folder-storage .storage-capacity-label{font-size:8px}.folder-storage .storage-detail-top{font-size:8px}}
@media(prefers-reduced-motion:reduce){body :is(.workspace-top,.topbar) > #headerStorageCapacity,#headerStorageCapacity *{transition:none!important}}
body.auth-locked .storage-disclosure-toggle { display:none; }
@media(max-width:760px){#headerStorageCapacity .storage-detail-top{align-items:flex-end;gap:3px}#headerStorageCapacity .storage-detail-top > strong{white-space:normal;line-height:10px;min-width:0}#headerStorageCapacity .storage-detail-top > span{flex-shrink:0;white-space:nowrap}}
/* Expanded storage keeps its copy visible; only the channel responds to hover. */
#headerStorageCapacity[data-disclosure=open] .storage-detail,
#headerStorageCapacity[data-disclosure=open] .storage-detail-top > *,
#headerStorageCapacity[data-disclosure=open] > :is(strong,small) { opacity:1; visibility:visible; transform:none; transition-delay:0s; }
#headerStorageCapacity[data-disclosure=open] .storage-track { transform:scaleY(1); transform-origin:center; transition:transform .22s ease; }
@media(hover:hover) { #headerStorageCapacity[data-disclosure=open]:hover .storage-track { transform:scaleY(2); } }
/* Labels emerge vertically from the channel, then return before it retracts. */
#headerStorageCapacity .storage-detail { transition:opacity .18s ease,transform .18s ease,visibility 0s; }
#headerStorageCapacity:is([data-disclosure=opening],[data-disclosure=closing],[data-disclosure=closed]) .storage-detail-top { transform:translateY(12px); }
#headerStorageCapacity:is([data-disclosure=opening],[data-disclosure=closing],[data-disclosure=closed]) .storage-detail-bottom { transform:translateY(-12px); }
#headerStorageCapacity[data-disclosure=open] .storage-detail { transform:translateY(0); transition:opacity .18s ease,transform .18s ease,visibility 0s; }
/* The workspace chooser is the root, so it has no switcher or directory trail. */
.workspace-view.choosing .workspace-top > .directory-trail { display:none; }
.directory-trail > .workspace-switcher-separator { display:inline; flex-shrink:0; }
/* Keep the development notice readable beneath the company name on all screen sizes. */
.app-watermark { max-width:calc(100vw - 24px); text-align:center; white-space:normal; width:max-content; }
.app-watermark .development-notice { display:block; margin-top:2px; font-size:9px; line-height:1.4; letter-spacing:.1px; color:inherit; }
/* Use a protective surface only for images or insufficient text contrast. */
html body .app-watermark:not(.watermark-image-background),html body.auth-locked .app-watermark { background:transparent; border-color:transparent; box-shadow:none; }
/* A truly empty workspace keeps its welcome state even with a file filter active. */
.workspace-gallery.filtering-files > .workspace-location-empty:not([hidden]) { display:flex; }
.workspace-gallery:has(> .workspace-location-empty:not([hidden])) > .workspace-search-uploads { display:none; }
/* Grouped builder palette and calculated field presentation. */
.element-list .element-category{display:block;width:100%;margin:0 0 8px;border-bottom:1px solid var(--border,#e2e6ee);padding-bottom:8px}
.element-category>summary{cursor:pointer;padding:10px 8px;font-size:11px;font-weight:750;color:var(--text,#374151);letter-spacing:.035em;user-select:none}
.element-category-items{display:flex;flex-direction:column;gap:4px;padding-top:3px}
.element-category-items .element-item{width:100%;margin:0}
.element-category:has(.report-element-tool):not(:has(.element-item:not(.report-element-tool))){display:none}
body.report-mode .element-category:has(.report-element-tool){display:block}
.canvas-element[data-recessed=true] :is(input:not([type=hidden]):not([type=radio]):not([type=checkbox]),textarea,select,.signature-space,.rich-field-proxy){box-shadow:inset 0 2px 5px #17212e26,inset 0 1px 2px #17212e14,0 1px 0 #ffffff85!important;border-color:#8793a659!important;background-color:var(--element-surface,#f3f5f8)}
.formula-written{font-family:Consolas,monospace;font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6;padding:10px 12px}
.formula-written[hidden]{display:none}
[data-type=formula][data-show-formula=true] .formula-result,[data-type=formula][data-show-formula=true] .rich-field-proxy{display:none!important}
.formula-error,[data-type=formula] input[aria-invalid=true]{color:#b42318!important}
.standalone-formula-editor{position:fixed;z-index:1600;padding:14px;border:1px solid #cbd3e2;border-radius:12px;background:var(--panel,#fff);color:var(--text,#20253a);box-shadow:0 12px 36px #17212e26;box-sizing:border-box}
.standalone-formula-editor[hidden]{display:none}
.formula-editor-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.formula-editor-title button{border:0;background:transparent;color:inherit;font-size:21px;cursor:pointer}
.formula-reference-controls{display:grid;gap:8px;margin-top:10px}
.formula-reference-controls select{width:100%;min-width:0;padding:8px;border:1px solid #d6dce7;border-radius:6px;background:inherit;color:inherit;font-size:12px}
.standalone-formula-editor .primary-btn{padding:8px 12px;cursor:pointer}
.canvas-element[data-recessed=true] :is(.choice-list input,.formula-written:not([hidden])){box-shadow:inset 0 2px 5px #17212e26,inset 0 1px 2px #17212e14,0 1px 0 #ffffff85!important;background-color:var(--element-surface,#f3f5f8);border-radius:5px}
body.report-mode .element-category:has([data-type=choice]),body.report-mode .element-category:has([data-type=submit]){display:none}
.standalone-formula-editor .primary-btn{background:var(--purple,#6558e8);border:1px solid var(--purple,#6558e8);border-radius:6px;color:white;font:600 12px inherit;min-height:34px}
body:has(.standalone-formula-editor:not([hidden])) .formula-guidance{z-index:1700}
html[data-theme=dark] .standalone-formula-editor{background:#252a38;color:#eef0f6;border-color:#495166}
/* Unified tile surfaces: one structural accent edge, never stacked stripes. */
:is(.workspace-choice,.appearance-preview.preview-workspace),.workspace-folder,.appearance-preview.tile-preview{--card-accent:var(--tile-color,var(--workspace-color,#6558e8));--card-hover:var(--tile-hover,var(--workspace-hover-color,#6558e8));border:1px solid var(--line,#e1e5ec)!important;border-top:4px solid var(--card-accent)!important;border-radius:16px;background-image:none!important;box-shadow:0 2px 3px #17212e04,0 6px 18px #17212e08;transition:transform 220ms cubic-bezier(.2,.8,.2,1),box-shadow 220ms ease,border-color 220ms ease;}
:is(.workspace-choice,.appearance-preview.preview-workspace)::after,.workspace-folder::after,.appearance-preview::after{content:none!important}
:is(.workspace-choice,.appearance-preview.preview-workspace):hover,.workspace-folder:hover,.appearance-preview.tile-preview:hover{background-image:none!important;box-shadow:0 12px 26px #17212e16,0 3px 6px #17212e08;border-color:var(--line,#e1e5ec)!important;border-top-color:var(--card-hover)!important;}
.workspace-choice-grid{gap:22px;grid-template-columns:repeat(auto-fill,minmax(245px,1fr));align-items:start}
:is(.workspace-choice,.appearance-preview.preview-workspace){min-height:220px;padding:0;isolation:isolate;background-color:var(--panel,#fff);}
.workspace-choice-open{display:flex;flex-direction:column;gap:20px;min-height:220px;padding:22px;text-align:left;border-radius:12px;color:var(--ink);}
.workspace-card-top{display:flex;gap:12px;align-items:center;padding-right:20px;}
.workspace-card-icon{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:12px;background:color-mix(in srgb,var(--card-accent) 12%,var(--panel,#fff));color:var(--card-accent);}
.workspace-card-icon svg{width:23px;height:23px}
:is(.workspace-choice,.appearance-preview.preview-workspace) .workspace-type-label{margin:0;padding:0;font-size:10px;font-style:normal;font-weight:650;letter-spacing:.08em;color:inherit;opacity:.78;background:none;}
.workspace-card-copy{display:flex;flex-direction:column;gap:8px;min-width:0;flex:1}
:is(.workspace-choice,.appearance-preview.preview-workspace) .appearance-tile-name{font-size:18px;font-weight:700;line-height:1.35;letter-spacing:-.035em;overflow-wrap:anywhere;}
:is(.workspace-choice,.appearance-preview.preview-workspace) .workspace-card-copy small{margin:0;color:inherit;opacity:.78;font-size:11px;line-height:1.6;overflow-wrap:anywhere;}
.workspace-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:10px;font-weight:600;color:inherit;opacity:.8;}
.workspace-card-footer>span{font-size:18px;transition:transform 220ms ease}
:is(.workspace-choice,.appearance-preview.preview-workspace):hover .workspace-card-footer>span{transform:translate(2px,-2px)}
.workspace-choice-menu{top:12px;right:12px;width:30px;height:30px;border-radius:9px;color:inherit;font-size:17px;display:grid;place-items:center;z-index:3;}
.workspace-choice-menu:hover{background:color-mix(in srgb,var(--card-accent) 12%,var(--panel,#fff));color:var(--card-accent)}
.workspace-choice-panel{top:46px;right:12px;min-width:160px;border-radius:10px;padding:6px;z-index:8}
:is(.workspace-choice,.appearance-preview.preview-workspace).menu-open{z-index:10}
:is(.workspace-choice,.appearance-preview.preview-workspace).custom-appearance .workspace-choice-open{color:var(--appearance-ink);}
:is(.workspace-choice,.appearance-preview.preview-workspace).custom-appearance :is(.workspace-card-copy,.workspace-card-footer,.workspace-card-top){background:var(--appearance-label-bg);border-radius:8px;padding:7px 9px;}
:is(.workspace-choice,.appearance-preview.preview-workspace).custom-appearance .workspace-card-top{width:fit-content;max-width:calc(100% - 24px);}
:is(.workspace-choice,.appearance-preview.preview-workspace).custom-appearance .workspace-card-copy :is(.appearance-tile-name,small),:is(.workspace-choice,.appearance-preview.preview-workspace).custom-appearance .workspace-type-label{background:none;padding:0;color:inherit;}
:is(.workspace-choice,.appearance-preview.preview-workspace):focus-within,.workspace-folders>:is(.workspace-folder,.folder-file):focus-within{outline:2px solid var(--card-accent,var(--workspace-color));outline-offset:3px}
:is(.workspace-choice,.appearance-preview.preview-workspace):has(.workspace-choice-panel :focus){outline:none}
.workspace-choice-open:focus-visible{outline:none}
.workspace-folders{gap:18px;grid-template-columns:repeat(auto-fill,minmax(235px,1fr));align-items:stretch;}
.workspace-folders>:is(.workspace-folder,.folder-file){--card-accent:var(--tile-color,var(--workspace-color,#6558e8));--card-hover:var(--tile-hover,var(--workspace-hover-color,#6558e8));position:relative;display:flex;align-items:stretch;min-height:158px;padding:18px;border-radius:14px;border:1px solid var(--line);border-top:4px solid var(--card-accent);background-color:var(--panel,#fff);box-shadow:0 2px 3px #17212e04,0 6px 18px #17212e08;transition:transform 220ms cubic-bezier(.2,.8,.2,1),box-shadow 220ms ease,border-color 220ms ease;}
.workspace-folders>:is(.workspace-folder,.folder-file)>:is(.folder-open,.folder-file-info){display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:8px;width:100%;min-width:0;padding:0;margin:0;flex:1;text-align:left;background:none;}
.workspace-folders>:is(.workspace-folder,.folder-file) :is(.folder-icon,.file-icon){margin:0 0 5px;width:38px;height:38px;flex:none;border-radius:10px;background:color-mix(in srgb,var(--card-accent) 11%,var(--panel,#fff));color:var(--card-accent);}
.workspace-folders>:is(.workspace-folder,.folder-file) :is(.folder-open b,.folder-file-info b){font-size:13px;line-height:1.45;overflow-wrap:anywhere;white-space:normal;color:var(--appearance-ink,var(--ink));}
.workspace-folders>:is(.workspace-folder,.folder-file) :is(.folder-open small,.folder-file-info small){font-size:10px;line-height:1.5;white-space:normal;color:var(--appearance-ink,var(--muted));opacity:.8;}
.workspace-folders>:is(.workspace-folder,.folder-file)>.file-options{position:absolute;top:13px;right:12px;margin:0;z-index:4;}
.workspace-folders>.folder-file>.file-storage-controls{position:absolute;top:13px;right:46px;margin:0;}
.workspace-folders>:is(.workspace-folder,.folder-file):has(details[open]){z-index:12}
.workspace-folders>.folder-file:hover{border-top-color:var(--card-hover);box-shadow:0 12px 26px #17212e16,0 3px 6px #17212e08;}
.appearance-preview:not(.tile-preview){background-image:none!important;border:1px solid var(--line);box-shadow:none!important;}
@media(hover:hover) and (prefers-reduced-motion:no-preference){:is(.workspace-choice,.appearance-preview.preview-workspace):hover,.workspace-folders>:is(.workspace-folder,.folder-file):hover,.appearance-preview.tile-preview:hover{transform:translateY(-6px)}}
@media(prefers-reduced-motion:reduce){:is(.workspace-choice,.appearance-preview.preview-workspace),.workspace-folders>:is(.workspace-folder,.folder-file),.appearance-preview,.workspace-card-footer>span{transition:none!important;transform:none!important}}
@media(max-width:600px){.workspace-choice-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}:is(.workspace-choice,.appearance-preview.preview-workspace),.workspace-choice-open{min-height:190px}.workspace-choice-open{padding:18px;gap:16px}.workspace-folders{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));}}
.workspace-choice-grid{align-items:stretch;grid-auto-rows:1fr}
.workspace-choice-open{height:100%}
.workspace-card-top,.workspace-card-copy,.workspace-card-footer{padding:7px 9px}
:is(.workspace-choice,.appearance-preview.preview-workspace) .workspace-card-top{width:fit-content;max-width:calc(100% - 24px)}
.workspace-folders>.folder-file>.file-storage-button{position:absolute;top:13px;right:48px;margin:0;}
.workspace-folders>:is(.workspace-folder,.folder-file) .file-type-icon{margin:0 0 5px;width:38px;height:38px;flex:none;border-radius:10px;background:color-mix(in srgb,var(--card-accent) 11%,var(--panel,#fff));color:var(--card-accent)}
.workspace-folders>.folder-file>.folder-download{position:absolute;right:16px;bottom:12px;height:auto;min-height:0;width:auto;max-width:calc(100% - 32px);padding:4px 7px;border:0;border-radius:5px;font-size:10px;line-height:1.4;color:var(--card-accent);background:transparent;align-self:auto;}
.workspace-folders>.folder-file:has(>.folder-download){padding-bottom:36px;}
/* Compact landscape cards; hover changes elevation only. */
.workspace-choice-grid{gap:15px;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));grid-auto-rows:auto}
:is(.workspace-choice,.appearance-preview.preview-workspace){min-height:118px;height:118px;border-radius:12px;--card-hover:var(--card-accent)}
:is(.workspace-choice,.appearance-preview.preview-workspace) .workspace-choice-open{display:grid;grid-template-columns:32px minmax(0,1fr);grid-template-rows:1fr;align-items:center;gap:12px;min-height:0;height:114px;padding:16px 32px 16px 16px;border-radius:8px}
:is(.workspace-choice,.appearance-preview.preview-workspace) .workspace-card-top{display:block;width:32px;max-width:none;padding:0;background:none}
:is(.workspace-choice,.appearance-preview.preview-workspace) .workspace-card-icon{width:32px;height:32px;border-radius:9px}
:is(.workspace-choice,.appearance-preview.preview-workspace) .workspace-card-icon svg{width:19px;height:19px}
:is(.workspace-choice,.appearance-preview.preview-workspace) :is(.workspace-type-label,.workspace-card-footer){display:none}
:is(.workspace-choice,.appearance-preview.preview-workspace) .workspace-card-copy{padding:0;gap:6px;min-width:0}
:is(.workspace-choice,.appearance-preview.preview-workspace) .appearance-tile-name{font-size:13px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
:is(.workspace-choice,.appearance-preview.preview-workspace) .workspace-card-copy small{font-size:10px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
:is(.workspace-choice,.appearance-preview.preview-workspace).custom-appearance .workspace-card-copy{padding:5px 7px}
.workspace-choice-menu,.preview-menu{top:7px;right:7px;width:24px;height:24px;font-size:15px}
.workspace-folder,.workspace-folders>.folder-file,.appearance-preview.tile-preview{--card-hover:var(--card-accent)!important}
.workspace-folders{gap:11px;grid-template-columns:repeat(auto-fill,minmax(205px,1fr))}
.workspace-folders>:is(.workspace-folder,.folder-file){min-height:84px;height:84px;padding:12px 70px 12px 12px;border-radius:12px}
.workspace-folders>.workspace-folder{padding-right:38px}
.workspace-folders>:is(.workspace-folder,.folder-file)>:is(.folder-open,.folder-file-info){display:grid;grid-template-columns:34px minmax(0,1fr);column-gap:9px;row-gap:3px;align-content:center;align-items:center}
.workspace-folders>:is(.workspace-folder,.folder-file) .file-type-icon{grid-column:1;grid-row:1/3;margin:0;width:34px;height:34px}
.workspace-folders>.folder-file .folder-file-info>:is(b,small){grid-column:2;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.workspace-folders>:is(.workspace-folder,.folder-file) :is(.folder-open b,.folder-file-info b){font-size:11px}
.workspace-folders>:is(.workspace-folder,.folder-file) :is(.folder-open small,.folder-file-info small){font-size:9px}
.workspace-folders>.workspace-folder .folder-open>span:not(.file-type-icon){min-width:0}
.workspace-folders>.workspace-folder .folder-open :is(b,small){white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.workspace-folders>.workspace-folder .folder-open em{display:none}
.workspace-folders>.folder-file>.file-storage-button{right:35px;top:22px;width:30px;height:30px}
.workspace-folders>:is(.workspace-folder,.folder-file)>.file-options{right:7px;top:24px}
.workspace-folders>.folder-file:has(>.folder-download){padding-bottom:12px}
.workspace-folders>.folder-file>.folder-download{bottom:2px;right:7px;font-size:9px;padding:2px}
.appearance-dialog .appearance-preview.tile-preview{width:252px;max-width:100%;height:118px;min-height:118px;padding:0;flex:none;align-self:center;text-align:left;display:block;overflow:visible;margin:8px auto;}
.appearance-preview.preview-workspace .workspace-choice-open{width:100%;font:600 13px 'Plus Jakarta Sans';color:var(--appearance-ink,var(--ink));pointer-events:none}
.appearance-preview .preview-menu{position:absolute;display:grid;place-items:center;color:var(--appearance-ink,var(--muted));}
.appearance-preview.preview-folder{height:84px!important;min-height:84px!important;padding:12px 38px 12px 12px!important;border-radius:12px}
.appearance-preview.preview-folder .folder-open{display:flex;align-items:center;gap:9px;min-width:0;height:100%;padding:0;background:none;color:var(--appearance-ink,var(--ink));pointer-events:none}
.appearance-preview.preview-folder .file-type-icon{width:34px;height:34px;flex:none;background:color-mix(in srgb,var(--tile-color) 11%,var(--panel,#fff));color:var(--tile-color);border-radius:10px}
.appearance-preview.preview-folder .folder-open>span:not(.file-type-icon){min-width:0}
.appearance-preview.preview-folder b{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.appearance-preview.preview-folder small{display:block;margin-top:3px;font-size:9px;color:inherit;opacity:.8}
.appearance-preview.preview-folder .preview-menu{top:24px}
.appearance-dialog .appearance-preview.tile-preview{background-color:var(--appearance-color,var(--panel,#fff))}
/* Workspace cards: a consistent title row and quiet, uninterrupted content surface. */
:is(.workspace-choice,.appearance-preview.preview-workspace){border-radius:12px;box-shadow:0 1px 2px #17212e05,0 4px 12px #17212e06;}
:is(.workspace-choice,.appearance-preview.preview-workspace) .workspace-choice-open{grid-template-columns:22px minmax(0,1fr);align-items:start;column-gap:12px;padding:23px 40px 18px 18px;background:transparent;}
:is(.workspace-choice,.appearance-preview.preview-workspace) .workspace-card-top{width:22px;margin:0;padding:0;background:none!important;}
:is(.workspace-choice,.appearance-preview.preview-workspace) .workspace-card-icon{width:22px;height:22px;border-radius:0;background:none;color:var(--card-accent);}
:is(.workspace-choice,.appearance-preview.preview-workspace) .workspace-card-icon svg{width:20px;height:20px;}
:is(.workspace-choice,.appearance-preview.preview-workspace) .workspace-card-copy{display:flex;gap:8px;padding:0!important;background:none!important;border-radius:0;}
:is(.workspace-choice,.appearance-preview.preview-workspace) .appearance-tile-name{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px;font-weight:650;letter-spacing:-.025em;line-height:22px;}
:is(.workspace-choice,.appearance-preview.preview-workspace) .workspace-card-copy small{font-size:10px;font-weight:400;line-height:16px;opacity:.75;margin:0;}
.workspace-choice-menu,.appearance-preview.preview-workspace .preview-menu{top:21px;right:9px;width:26px;height:26px;padding:0;border-radius:6px;line-height:1;}
.workspace-choice.custom-appearance .workspace-choice-open,.appearance-preview.preview-workspace.custom-appearance .workspace-choice-open{background:linear-gradient(90deg,color-mix(in srgb,var(--appearance-label-bg) 88%,transparent),color-mix(in srgb,var(--appearance-label-bg) 60%,transparent));border-radius:8px 8px 11px 11px;}
.workspace-choice.custom-appearance .workspace-choice-menu{background:transparent;color:var(--appearance-ink);border-color:transparent;box-shadow:none;}
:is(.workspace-choice,.appearance-preview.preview-workspace).custom-appearance .workspace-card-icon{color:var(--appearance-ink);opacity:.75;}
.workspace-choice .workspace-choice-menu:hover{background:color-mix(in srgb,var(--card-accent) 10%,var(--panel,#fff));color:var(--card-accent);}
.workspace-choice-menu:focus-visible{outline:2px solid var(--card-accent);outline-offset:2px;}
:is(.workspace-choice,.appearance-preview.preview-workspace).custom-appearance .workspace-card-top{padding:0!important;width:22px!important;max-width:none!important;}
/* The photo itself stays unfiltered, including at full opacity. */
.workspace-choice.custom-appearance .workspace-choice-open,.appearance-preview.preview-workspace.custom-appearance .workspace-choice-open{background:transparent!important;}
:is(.workspace-choice,.appearance-preview.preview-workspace).custom-appearance :is(.workspace-card-copy,.workspace-card-icon,.workspace-choice-menu,.preview-menu){text-shadow:0 1px 3px var(--appearance-surface),0 0 5px var(--appearance-surface);}
.appearance-icon-picker{display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:7px;background:var(--panel,#fff);color:var(--ink);padding:7px 9px;font:500 11px 'Plus Jakarta Sans';cursor:pointer;}
.appearance-icon-picker[hidden]{display:none}
.appearance-icon-picker svg{width:18px;height:18px;color:var(--workspace-color,#6558e8)}
.workspace-symbol-picker{width:min(640px,calc(100vw - 28px));max-height:85dvh;padding:20px;border:1px solid var(--line);border-radius:14px;background:var(--panel,#fff);color:var(--ink);box-shadow:0 20px 70px #0003;}
.workspace-symbol-picker::backdrop{background:#17212e66}
.workspace-symbol-picker header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.workspace-symbol-picker h2{font-size:18px;margin:0}
.workspace-symbol-picker header button{border:0;background:none;color:inherit;font-size:24px;cursor:pointer}
.symbol-filters{display:flex;gap:8px;margin-bottom:14px}
.symbol-filters :is(input,select){min-width:0;width:50%;padding:9px;border:1px solid var(--line);border-radius:7px;font:12px 'Plus Jakarta Sans';background:var(--panel);color:var(--ink)}
.symbol-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(82px,1fr));gap:8px;max-height:55dvh;overflow:auto;padding:3px;}
.symbol-grid button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:78px;padding:10px 4px;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--ink);font:10px 'Plus Jakarta Sans';cursor:pointer;}
.symbol-grid button:is(:hover,[aria-pressed=true]){border-color:var(--workspace-color,#6558e8);background:color-mix(in srgb,var(--workspace-color,#6558e8) 9%,var(--panel));}
.symbol-grid button:focus-visible{outline:2px solid var(--workspace-color,#6558e8);outline-offset:1px}
.symbol-grid svg{width:24px;height:24px}
/* Location accents and genuinely empty workspace toolbars. */
.workspace-file-filters>button[aria-pressed=true]{color:var(--workspace-color,#277a50);border-color:var(--workspace-color,#277a50);background:color-mix(in srgb,var(--workspace-color,#277a50) 7%,var(--panel,#fff));}
.workspace-file-filters>button:focus-visible{outline:2px solid var(--workspace-color,#277a50);outline-offset:2px;}
.workspace-gallery.workspace-is-empty>.workspace-file-filters,.workspace-gallery.workspace-is-empty .folder-heading{display:none!important;}
.workspace-gallery.workspace-is-empty .workspace-browse-row{display:none!important;}
/* Center the recessed empty-folder panel in the space below the folder toolbar. */
#folderViewerList:has(> .empty-location:not([hidden])){display:flex;flex-flow:column nowrap;align-items:center;}
#folderViewerList>.empty-location:not([hidden]){margin:auto;flex-shrink:0;}

/* Shared Explorer layouts in the workspace. */

#workspaceFolders[data-layout] > [hidden] { display:none!important; }

/* Shared entries preserve all existing menus, sync controls, and file actions. */
#workspaceFolders[data-layout] { --entry-icon:24px; padding:18px 28px; align-content:start; }

#workspaceFolders[data-layout] .explorer-entry { min-width:0; min-height:0; gap:8px; padding:6px 10px; border:1px solid transparent; border-radius:6px; box-shadow:none; background:transparent; display:flex; align-items:center; }

#workspaceFolders[data-layout] .explorer-entry:hover { background:color-mix(in srgb,var(--workspace-color) 5%,var(--panel)); }

#workspaceFolders[data-layout] .explorer-entry.explorer-selected { border-color:color-mix(in srgb,var(--workspace-color) 55%,var(--line)); background:color-mix(in srgb,var(--workspace-color) 12%,var(--panel)); }

#workspaceFolders[data-layout] .explorer-entry:focus-visible { outline:2px solid var(--workspace-color); outline-offset:1px; }

#workspaceFolders[data-layout] .explorer-entry[hidden] { display:none!important; }

#workspaceFolders[data-layout] .explorer-entry :is(.folder-file-info,.folder-open,.local-file-name) { display:grid; grid-template-columns:var(--entry-icon) minmax(0,1fr); align-items:center; gap:8px 12px; flex:1; min-width:0; width:auto; padding:0; background:none; border:0; box-shadow:none; text-align:left; color:var(--ink); }

#workspaceFolders[data-layout] .explorer-entry :is(.folder-file-info,.folder-open) > :is(.file-type-icon,.folder-icon,svg),#workspaceFolders[data-layout] .explorer-old-meta { display:none; }

#workspaceFolders[data-layout] .explorer-art .file-type-icon { width:100%; height:100%; padding:3px; }

#workspaceFolders[data-layout] .explorer-name { color:var(--ink); font-size:12px; font-weight:500; line-height:1.5; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }

#workspaceFolders[data-layout] .explorer-meta { color:var(--muted); font-size:11px; display:none; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }

#workspaceFolders[data-layout][data-layout="details"] .explorer-detail-head { display:grid; grid-template-columns:minmax(200px,1fr) 135px 110px 80px 130px; gap:12px; padding:0 10px; border-bottom:1px solid var(--line); }

#workspaceFolders[data-layout][data-layout="details"] .explorer-entry > :is(.folder-file-info,.folder-open,.local-file-name) { grid-template-columns:24px minmax(164px,1fr) 135px 110px 80px; }

#workspaceFolders[data-layout][data-layout="details"] .explorer-meta { display:block; }

#workspaceFolders[data-layout][data-layout="details"] .explorer-entry { display:grid; grid-template-columns:minmax(0,1fr) 130px; position:relative; padding-right:150px; }

#workspaceFolders[data-layout][data-layout="details"] .explorer-entry > :first-child { grid-column:1/-1; }

#workspaceFolders[data-layout][data-layout="details"] .explorer-entry > :not(:first-child) { position:absolute; right:10px; }

#workspaceFolders[data-layout][data-layout="details"] .explorer-entry > .file-sync-state { right:52px; }

#workspaceFolders[data-layout][data-layout="details"] .explorer-entry > [data-save-local] { right:90px; }

#workspaceFolders[data-layout][data-layout="details"] .explorer-entry > .local-file-state { right:52px; }

#workspaceFolders[data-layout] .explorer-entry > .folder-download { display:none; }

#workspaceFolders[data-layout][data-layout="extra-large"],#workspaceFolders[data-layout][data-layout="large"],#workspaceFolders[data-layout][data-layout="medium"],#workspaceFolders[data-layout][data-layout="small"],#workspaceFolders[data-layout][data-layout="tiles"] { display:grid; grid-template-columns:repeat(auto-fill,minmax(var(--entry-width),1fr)); gap:12px; }

#workspaceFolders[data-layout][data-layout="extra-large"] { --entry-icon:160px; --entry-width:210px; }

#workspaceFolders[data-layout][data-layout="large"] { --entry-icon:96px; --entry-width:150px; }

#workspaceFolders[data-layout][data-layout="medium"] { --entry-icon:48px; --entry-width:110px; }

#workspaceFolders[data-layout]:is([data-layout="extra-large"],[data-layout="large"],[data-layout="medium"],[data-layout="small"]) .explorer-entry { flex-wrap:wrap; justify-content:center; align-content:start; padding:16px 8px 8px; }

#workspaceFolders[data-layout]:is([data-layout="extra-large"],[data-layout="large"],[data-layout="medium"],[data-layout="small"]) .explorer-entry > :is(.folder-file-info,.folder-open,.local-file-name) { flex-basis:100%; display:flex; flex-direction:column; text-align:center; }

#workspaceFolders[data-layout]:is([data-layout="extra-large"],[data-layout="large"],[data-layout="medium"],[data-layout="small"]) .explorer-name { white-space:normal; overflow-wrap:anywhere; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; }

#workspaceFolders[data-layout][data-layout="small"] { --entry-width:240px; --entry-icon:20px; gap:4px; }

#workspaceFolders[data-layout][data-layout="list"] { display:flex; flex-flow:column wrap; align-content:flex-start; gap:2px 16px; overflow:auto; }

#workspaceFolders[data-layout][data-layout="list"] .explorer-entry { width:270px; min-height:36px; flex:none; }

#workspaceFolders[data-layout][data-layout="tiles"] { --entry-width:300px; --entry-icon:48px; }

#workspaceFolders[data-layout][data-layout="tiles"] .explorer-art,#workspaceFolders[data-layout][data-layout="content"] .explorer-art { grid-row:1/3; }

#workspaceFolders[data-layout][data-layout="tiles"] .explorer-type,#workspaceFolders[data-layout][data-layout="content"] .explorer-type { display:block; grid-column:2; }

#workspaceFolders[data-layout][data-layout="content"] { --entry-icon:64px; }

#workspaceFolders[data-layout][data-layout="content"] .explorer-entry { padding:14px 10px; border-bottom:1px solid var(--line); border-radius:0; }

#workspaceFolders[data-layout][data-layout="content"] .explorer-entry > :is(.folder-file-info,.folder-open,.local-file-name) { grid-template-columns:64px minmax(150px,1fr) 130px 100px; }

#workspaceFolders[data-layout][data-layout="content"] .explorer-date,#workspaceFolders[data-layout][data-layout="content"] .explorer-size { display:block; grid-row:1; }

#workspaceFolders[data-layout] .local-folder-files { grid-column:1/-1; width:100%; }

#workspaceFolders[data-layout]:is([data-layout="extra-large"],[data-layout="large"],[data-layout="medium"],[data-layout="small"],[data-layout="tiles"]) .local-folder-files { display:grid; grid-template-columns:repeat(auto-fill,minmax(var(--entry-width),1fr)); gap:12px; }

#workspaceFolders[data-layout] .local-folder-files > :is(h3,p) { grid-column:1/-1; }

#workspaceFolders[data-layout] .local-folder-files:empty { display:none; }
 #workspaceFolders[data-layout] { padding:12px 16px; }
 #workspaceFolders[data-layout][data-layout="details"] .explorer-entry,#workspaceFolders[data-layout][data-layout="details"] .explorer-detail-head { min-width:750px; }

/* Explicit grid placement overrides legacy file-label spans. */
#workspaceFolders[data-layout] .explorer-entry .explorer-art { grid-column:1; grid-row:1; }

#workspaceFolders[data-layout] .explorer-entry .explorer-name { grid-column:2; grid-row:1; }

#workspaceFolders[data-layout] .explorer-entry .explorer-meta { font:11px/1.5 'Plus Jakarta Sans',sans-serif; grid-row:1; }

#workspaceFolders[data-layout][data-layout="details"] .explorer-date { grid-column:3; }

#workspaceFolders[data-layout][data-layout="details"] .explorer-type { grid-column:4; }

#workspaceFolders[data-layout][data-layout="details"] .explorer-size { grid-column:5; }

#workspaceFolders[data-layout]:is([data-layout="tiles"],[data-layout="content"]) .explorer-entry .explorer-type { grid-row:2; grid-column:2; }

#workspaceFolders[data-layout]:is([data-layout="tiles"],[data-layout="content"]) .explorer-entry .explorer-art { grid-row:1/3; }

#workspaceFolders[data-layout][data-layout="content"] .explorer-date { grid-column:3; }

#workspaceFolders[data-layout][data-layout="content"] .explorer-size { grid-column:4; }

#workspaceFolders[data-layout][data-layout="details"] .explorer-entry > .file-sync-icon { right:52px; }

#workspaceFolders[data-layout][data-layout="details"] .explorer-entry > .file-storage-button { right:48px; }

/* File views use fixed action slots so save locations line up even without an options menu. */
#workspaceFolders[data-layout] { --file-actions:40px 28px; }

#workspaceFolders[data-layout] .explorer-entry { display:grid; grid-template-columns:minmax(0,1fr) var(--file-actions); gap:8px; padding:12px; border:1px solid var(--line); border-radius:10px; background:var(--panel); align-items:center; position:relative; }

#workspaceFolders[data-layout] .explorer-entry > :is(.folder-file-info,.folder-open,.local-file-name) { grid-column:1; grid-row:1; width:100%; align-self:center; }

#workspaceFolders[data-layout] .explorer-entry > :is(.file-storage-button,.file-sync-icon) { position:static; grid-column:2; grid-row:1; justify-self:center; margin:0; }

#workspaceFolders[data-layout] .explorer-entry > :is(.file-options,.folder-options) { position:static; grid-column:3; grid-row:1; justify-self:center; margin:0; }

#workspaceFolders[data-layout] .explorer-entry > details > summary { display:flex; align-items:center; justify-content:center; width:28px; height:36px; padding:0; border-radius:6px; }

#workspaceFolders[data-layout] .explorer-entry > details > summary:hover { background:color-mix(in srgb,var(--workspace-color) 9%,var(--panel)); }

#workspaceFolders[data-layout] .explorer-entry:hover { border-color:color-mix(in srgb,var(--workspace-color) 28%,var(--line)); background:color-mix(in srgb,var(--workspace-color) 3%,var(--panel)); }

#workspaceFolders[data-layout] .explorer-entry.explorer-selected { border-color:var(--workspace-color); background:color-mix(in srgb,var(--workspace-color) 9%,var(--panel)); }

#workspaceFolders[data-layout][data-layout="details"] { display:flex; flex-direction:column; gap:6px; }

#workspaceFolders[data-layout][data-layout="details"] .explorer-entry { grid-template-columns:minmax(0,1fr) var(--file-actions); gap:12px; padding:8px 12px; min-height:56px; }

#workspaceFolders[data-layout][data-layout="details"] .explorer-entry > :not(:first-child) { position:static; right:auto; }

#workspaceFolders[data-layout][data-layout="details"] .explorer-entry > :first-child { grid-column:1; }

#workspaceFolders[data-layout][data-layout="details"] .explorer-detail-head { grid-template-columns:minmax(224px,1fr) 135px 110px 80px var(--file-actions); gap:12px; padding:0 13px; min-height:40px; margin-bottom:2px; border:0; }

#workspaceFolders[data-layout][data-layout="details"] .explorer-detail-head > span { grid-column:5/7; font-size:10px; color:var(--muted); text-align:center; }

#workspaceFolders[data-layout][data-layout="details"] .explorer-entry > :is(.folder-file-info,.folder-open,.local-file-name) { grid-template-columns:24px minmax(188px,1fr) 135px 110px 80px; }

#workspaceFolders[data-layout][data-layout="details"] .explorer-size { text-align:right; }

#workspaceFolders[data-layout][data-layout="details"] .explorer-detail-head [data-detail-sort="size"] { text-align:right; }

#workspaceFolders[data-layout]:is([data-layout="extra-large"],[data-layout="large"],[data-layout="medium"],[data-layout="small"]) .explorer-entry { grid-template-columns:minmax(0,1fr) var(--file-actions); grid-template-rows:1fr 40px; gap:12px 8px; padding:16px 12px 8px; align-content:stretch; }

#workspaceFolders[data-layout]:is([data-layout="extra-large"],[data-layout="large"],[data-layout="medium"],[data-layout="small"]) .explorer-entry > :is(.folder-file-info,.folder-open,.local-file-name) { grid-column:1/-1; grid-row:1; display:flex; flex-direction:column; gap:12px; align-self:start; }

#workspaceFolders[data-layout]:is([data-layout="extra-large"],[data-layout="large"],[data-layout="medium"],[data-layout="small"]) .explorer-name { height:36px; width:100%; text-align:center; }

#workspaceFolders[data-layout]:is([data-layout="extra-large"],[data-layout="large"],[data-layout="medium"],[data-layout="small"]) .explorer-entry > :is(.file-storage-button,.file-sync-icon,.file-options,.folder-options) { grid-row:2; }

#workspaceFolders[data-layout]:is([data-layout="extra-large"],[data-layout="large"],[data-layout="medium"],[data-layout="small"]) .explorer-entry::after { content:''; position:absolute; left:12px; right:12px; bottom:52px; height:1px; background:var(--line); pointer-events:none; }

#workspaceFolders[data-layout][data-layout="medium"] { --entry-width:156px; }

#workspaceFolders[data-layout][data-layout="large"] { --entry-width:190px; }

#workspaceFolders[data-layout][data-layout="extra-large"] { --entry-width:248px; }

#workspaceFolders[data-layout][data-layout="small"] { --entry-width:290px; gap:10px; }

#workspaceFolders[data-layout][data-layout="list"] { gap:8px 12px; }

#workspaceFolders[data-layout][data-layout="list"] .explorer-entry { width:310px; min-height:58px; }

#workspaceFolders[data-layout][data-layout="tiles"] { --entry-width:350px; }

#workspaceFolders[data-layout][data-layout="tiles"] .explorer-entry { min-height:88px; }

#workspaceFolders[data-layout][data-layout="content"] { display:flex; flex-direction:column; gap:10px; }

#workspaceFolders[data-layout][data-layout="content"] .explorer-entry { min-height:96px; padding:14px 12px; border:1px solid var(--line); border-radius:10px; }
 #workspaceFolders[data-layout][data-layout="details"] .explorer-entry,#workspaceFolders[data-layout][data-layout="details"] .explorer-detail-head { min-width:790px; }
 #workspaceFolders[data-layout][data-layout="content"] .explorer-entry > :is(.folder-file-info,.folder-open,.local-file-name) { grid-template-columns:48px minmax(110px,1fr) 100px 70px; }
 #workspaceFolders[data-layout][data-layout="content"] { --entry-icon:48px; }

#workspaceFolders[data-layout][data-layout="details"] .explorer-detail-head { align-items:center; }

#workspaceFolders[data-layout]:not(:has(> .explorer-entry:not([hidden]))) > .explorer-detail-head { display:none; }
#workspaceFolders[data-layout]>.explorer-entry{height:auto;min-height:56px;border-top-width:1px!important;transform:none;padding:10px;}
#workspaceFolders[data-layout] .explorer-entry>.file-storage-button{top:auto;right:44px;}
#workspaceFolders[data-layout] .explorer-entry>.file-options{top:auto;right:8px;}
#workspaceFolders[data-layout] .explorer-old-meta,#workspaceFolders[data-layout] .folder-file-info>.file-type-icon{display:none}
#workspaceFolders[data-layout] .explorer-entry>:is(.folder-file-info,.folder-open){height:auto;width:100%;}
#workspaceFolders[data-layout="details"],#workspaceFolders[data-layout="content"]{display:flex;flex-direction:column;gap:6px}
#workspaceFolders[data-layout] .explorer-detail-head[hidden]{display:none}
.custom-appearance::before{background-position:var(--appearance-position,center)}
.appearance-image-actions{display:flex;gap:6px;align-items:center}
.appearance-image-actions button{padding:7px 9px;border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--ink);font:11px 'Plus Jakarta Sans';cursor:pointer}
.appearance-image-actions button:disabled{opacity:.45;cursor:default}
.background-positioner{position:fixed;inset:64px 0 0;margin:0;width:100vw;max-width:none;height:calc(100dvh - 64px);max-height:none;border:0;padding:0;background:var(--panel);color:var(--ink);overflow:hidden}
.background-positioner::backdrop{background:transparent}
.background-stage{position:absolute;inset:0;overflow:hidden}
.background-stage>img{position:absolute;max-width:none;object-fit:fill;pointer-events:none}
.background-page-preview{position:absolute;inset:0;pointer-events:none;opacity:.85;overflow:hidden}
.background-page-preview > .custom-appearance::before{display:none}

.background-image-frame{position:absolute;border:2px dashed #6558e8;box-sizing:border-box;cursor:move;touch-action:none;outline:none}
.background-image-frame button{position:absolute;width:20px;height:20px;border:2px solid #6558e8;background:white;border-radius:5px;padding:0;touch-action:none}
.background-image-frame [data-corner=nw]{left:-10px;top:-10px;cursor:nwse-resize}.background-image-frame [data-corner=ne]{right:-10px;top:-10px;cursor:nesw-resize}.background-image-frame [data-corner=sw]{left:-10px;bottom:-10px;cursor:nesw-resize}.background-image-frame [data-corner=se]{right:-10px;bottom:-10px;cursor:nwse-resize}
.background-positioner footer{position:absolute;right:20px;bottom:20px;display:flex;align-items:center;gap:10px;padding:12px;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:0 4px 20px #0002}
.background-positioner footer button{padding:10px 14px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--ink);cursor:pointer}
.background-positioner [data-apply]{background:var(--workspace-color,#277a50);color:white}
.background-positioner footer label{display:flex;align-items:center;gap:6px;font-size:12px}
.background-placement-hint{position:absolute;top:12px;left:50%;transform:translateX(-50%);background:var(--panel);padding:9px 14px;border-radius:8px;font-size:12px;box-shadow:0 2px 12px #0002;pointer-events:none}
@media(max-width:600px){.background-positioner footer{left:10px;right:10px;bottom:10px;flex-wrap:wrap;justify-content:flex-end}.background-placement-hint{width:calc(100% - 24px);text-align:center}.background-positioner footer label{flex:1}.background-positioner footer input{width:100px}}
.workspace-browse-row>.folder-view-menu{position:relative;flex:none}
.workspace-browse-row>.folder-view-menu>summary{display:flex;align-items:center;justify-content:center;list-style:none;width:38px;height:38px;padding:8px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--ink);cursor:pointer}
.workspace-browse-row>.folder-view-menu>summary::-webkit-details-marker{display:none}
.background-page-preview .folder-viewer-list:has(>.empty-location:not([hidden])){display:flex;flex-flow:column nowrap;align-items:center}
.background-page-preview .folder-viewer-list>.empty-location:not([hidden]){margin:auto;flex-shrink:0}

.custom-image-note{grid-column:1/-1;font-size:12px;line-height:1.6;color:var(--muted);margin:8px;}
/* Small icons share the icon-grid layout at a more compact scale. */
:is(#folderViewerList,#workspaceFolders)[data-layout][data-layout="small"]{--entry-width:124px;--entry-icon:24px;gap:10px;}
.explorer-folder-preview{display:none}
:is(#folderViewerList,#workspaceFolders)[data-layout="content"] .workspace-folder .explorer-folder-preview{display:-webkit-box;grid-column:2/-1;grid-row:2;min-width:0;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:normal;font:11px/1.6 'Plus Jakarta Sans',sans-serif;color:var(--appearance-ink,var(--muted));text-align:left;}
:is(#folderViewerList,#workspaceFolders)[data-layout="content"] .workspace-folder .explorer-type{display:none}
/* Explorer entries use a consistent neutral edge, including the first item. */
:is(#folderViewerList,#workspaceFolders)[data-layout]>.explorer-entry{border-top:1px solid var(--line,#e1e5ec)!important}
:is(#folderViewerList,#workspaceFolders)[data-layout="content"] .workspace-folder .explorer-folder-preview{display:flex;flex-wrap:wrap;align-items:center;gap:6px;overflow:visible;line-height:1.6}
.explorer-content-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 28px;width:28px;height:28px;border:1px solid color-mix(in srgb,currentColor 18%,transparent);border-radius:6px;color:var(--appearance-ink,var(--muted));background:color-mix(in srgb,var(--panel,#fff) 65%,transparent)}
.explorer-content-icon>svg,.explorer-content-icon .file-type-icon svg{width:18px;height:18px}
.explorer-content-icon .file-type-icon{display:contents;color:inherit;background:none}
.explorer-content-icon:hover{color:var(--appearance-ink,var(--ink));background:var(--appearance-surface,var(--panel))}
.linked-document-dialog{width:min(1100px,calc(100vw - 24px));height:calc(100dvh - 40px);max-width:none;max-height:none;padding:0;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--ink);box-shadow:0 20px 80px #0004}
.linked-document-dialog[open]{display:flex;flex-direction:column}.linked-document-dialog::backdrop{background:#17212e80}
.linked-document-dialog header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;border-bottom:1px solid var(--line)}
.linked-document-dialog h2{font-size:16px;margin:0;overflow-wrap:anywhere}.linked-document-dialog iframe{flex:1;min-height:0;width:100%;border:0;background:#eef0f4}
.linked-document-dialog header button,.linked-document-return{flex:none;padding:9px 12px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--ink);font:600 12px 'Plus Jakarta Sans';cursor:pointer}.linked-document-return[hidden]{display:none!important}
@media(max-width:600px){.linked-document-dialog{height:calc(100dvh - 16px);width:calc(100vw - 16px)}.linked-document-dialog header{gap:8px;padding:12px}.linked-document-dialog h2{font-size:14px}}
/* Fill opacity changes the surface only; text and icons retain their contrast. */
[data-element-background][data-surface-color] :is(.rich-field-proxy,.formula-written){background:var(--element-surface)!important}
#formCanvas .canvas-element[data-element-background]:is([data-type=submit],[data-type=timer],[data-type=weather]) button:not(.quick-delete){background:var(--button-background)!important}
.shared-appearance [data-appearance=fillOpacity]{width:100%;accent-color:var(--workspace-color,#277a50);margin:0 0 16px}
.shared-appearance [data-fill-opacity]{float:right;font-variant-numeric:tabular-nums}
.button-document-save{display:flex;align-items:center;gap:8px;margin:12px 0 8px;font-size:12px;color:var(--ink)}
.button-document-save input{accent-color:var(--workspace-color,#277a50);width:16px;height:16px}
.button-device-picker{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;padding:11px 12px;border:1px solid var(--workspace-color,#277a50);border-radius:8px;background:color-mix(in srgb,var(--workspace-color,#277a50) 9%,var(--panel));color:var(--ink);font:600 12px 'Plus Jakarta Sans';cursor:pointer}
.button-device-picker:hover{background:color-mix(in srgb,var(--workspace-color,#277a50) 16%,var(--panel))}
#pdfViewer .pdf-viewer-card>header{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:12px;padding:14px 20px;flex-shrink:0}
#pdfViewer .pdf-viewer-card>header>div:first-child{flex:1 1 220px;min-width:0}
#pdfViewer .pdf-viewer-card>header h2{font-size:16px;line-height:1.4;margin:3px 0 0;overflow-wrap:anywhere}
#pdfViewer .pdf-viewer-card>header>div:nth-child(2){display:flex;align-items:center;flex:none}
#pdfViewer .pdf-viewer-card>header .document-zoom{flex:none;gap:6px}
#pdfViewer .pdf-viewer-card>header button{width:auto;height:36px;min-width:36px;padding:0 10px;border:1px solid var(--line);border-radius:7px;font:600 12px 'Plus Jakarta Sans';white-space:nowrap}
#pdfViewer .pdf-viewer-card>header .linked-document-return{padding:0 12px;background:var(--panel);color:var(--ink)}
#pdfViewer .pdf-viewer-card>header a{display:inline-flex;align-items:center;height:36px;padding:0 12px;font-size:12px;white-space:nowrap}
@media(max-width:600px){#pdfViewer .pdf-viewer-card>header{gap:8px;padding:12px}#pdfViewer .pdf-viewer-card>header>div:first-child{flex-basis:100%}#pdfViewer .pdf-viewer-card>header .linked-document-return{margin-left:auto}.linked-document-dialog header{flex-wrap:wrap}.linked-document-dialog header h2{flex:1 1 150px;min-width:0}.linked-document-dialog header button{margin-left:auto}}
.compliance-register-editor header .register-capture-icon{display:inline-flex;align-items:center;justify-content:center;flex:none;width:36px;height:36px;margin-left:auto;margin-right:8px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--ink)}
.register-capture-icon:disabled{opacity:.4;cursor:default}
.register-text-capture{width:calc(100vw - 28px);height:calc(100dvh - 28px);max-width:1400px;max-height:none;border:1px solid var(--line);border-radius:14px;padding:0;background:var(--panel);color:var(--ink)}
.register-text-capture[open]{display:flex;flex-direction:column}.register-text-capture::backdrop{background:#17212ed9}
.register-text-capture header{display:flex;align-items:center;gap:16px;padding:16px 20px;border-bottom:1px solid var(--line)}
.register-text-capture h2{font-size:18px;margin:0 0 5px}.register-text-capture p{font-size:12px;margin:0;color:var(--muted)}
.register-text-capture header>button{margin-left:auto}.register-text-capture button{padding:9px 13px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--ink);font:600 12px 'Plus Jakarta Sans';cursor:pointer}.register-text-capture button:disabled{opacity:.45;cursor:default}
.capture-source{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 20px}.capture-status{font-size:12px;color:var(--muted)}
.capture-work{flex:1;min-height:0;overflow:auto;background:var(--canvas);padding:16px 20px}.capture-stage{position:relative;width:100%;max-width:1100px;margin:0 auto 18px;touch-action:none;user-select:none;cursor:crosshair;overflow:hidden}.capture-stage[hidden]{display:none}.capture-stage>canvas{display:block;width:100%;height:auto}
.capture-box{position:absolute;border:2px solid #277a50;background:#277a5015;box-shadow:0 0 0 9999px #17212e65;cursor:move;touch-action:none}.capture-box:focus-visible{outline:2px solid white;outline-offset:2px}.capture-box>span{position:absolute;width:14px;height:14px;background:white;border:2px solid #277a50;border-radius:3px;transform:translate(-50%,-50%)}
.capture-box [data-handle=nw]{left:0;top:0;cursor:nwse-resize}.capture-box [data-handle=n]{left:50%;top:0;cursor:ns-resize}.capture-box [data-handle=ne]{left:100%;top:0;cursor:nesw-resize}.capture-box [data-handle=e]{left:100%;top:50%;cursor:ew-resize}.capture-box [data-handle=se]{left:100%;top:100%;cursor:nwse-resize}.capture-box [data-handle=s]{left:50%;top:100%;cursor:ns-resize}.capture-box [data-handle=sw]{left:0;top:100%;cursor:nesw-resize}.capture-box [data-handle=w]{left:0;top:50%;cursor:ew-resize}
.capture-result{display:block;font-size:12px;font-weight:600;max-width:1100px;margin:auto}.capture-result textarea{display:block;box-sizing:border-box;width:100%;min-height:110px;margin-top:8px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--ink);font:14px/1.5 'Plus Jakarta Sans';white-space:pre-wrap;resize:vertical}
.register-text-capture footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:14px 20px;border-top:1px solid var(--line)}.register-text-capture footer small{margin-right:auto;font-size:11px;color:var(--muted)}.register-text-capture [data-transfer]{background:#277a50;color:white;border-color:#277a50}
@media(max-width:600px){.register-text-capture{width:calc(100vw - 12px);height:calc(100dvh - 12px)}.register-text-capture header,.capture-source,.capture-work,.register-text-capture footer{padding:12px}.register-text-capture footer{flex-wrap:wrap}.register-text-capture footer small{flex-basis:100%}}
/* Keep the captured page and recognized text in independently sized panes. */
.register-capture-help{position:relative;display:inline-flex;margin-left:auto;margin-right:8px}
.compliance-register-editor:not(.register-editing) .register-capture-help{display:none}
.compliance-register-editor header .register-capture-help .register-capture-icon{margin:0}
.register-capture-help::after{content:attr(data-tip);position:absolute;right:0;top:calc(100% + 8px);width:230px;padding:9px 11px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--ink);box-shadow:0 4px 16px #0003;font:12px/1.5 'Plus Jakarta Sans';z-index:20;pointer-events:none;visibility:hidden;opacity:0;transition:opacity .15s}
.register-capture-help:is(:hover,:focus-within)::after{visibility:visible;opacity:1}
.register-text-capture header>div{flex:1;min-width:0}.register-text-capture header h2{flex:none;margin:0;text-align:right}.register-text-capture header>button{flex:none;margin:0}
.register-text-capture .capture-work{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:18px;overflow:hidden;background:var(--ui-raised,#eef1f5)}
.capture-viewport{display:flex;align-items:center;justify-content:center;min-width:0;min-height:0;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--panel)}
.capture-viewport .capture-stage{flex:none;max-width:none;margin:0}.capture-stage>canvas{height:100%}
.register-text-capture .capture-result{display:flex;flex-direction:column;min-width:0;min-height:0;max-width:none;width:100%;margin:0;line-height:1.5;color:var(--ink)}
.register-text-capture .capture-result textarea{flex:1;min-height:0;height:0;resize:none;overflow:auto}
html[data-theme=dark] .register-text-capture{color-scheme:dark;background:#232a38;color:#eef0f6}
html[data-theme=dark] .register-text-capture :is(header,.capture-source,footer){background:#232a38;border-color:#454e62}
html[data-theme=dark] .register-text-capture .capture-work{background:#19212e}
html[data-theme=dark] .register-text-capture :is(.capture-viewport,textarea){background:#151d29;color:#eef0f6;border-color:#526079}
html[data-theme=dark] .register-text-capture button:not([data-transfer]){background:#303b4e;color:#eef0f6;border-color:#526079}
html[data-theme=dark] .register-text-capture :is(p,small,.capture-status){color:#c2ccdc}
html[data-theme=dark] .register-text-capture .capture-box{border-color:#73d5a0;background:#73d5a00d}
html[data-theme=dark] .register-text-capture .capture-box>span{background:#e8fff1;border-color:#277a50}
@media(max-width:700px){.register-text-capture .capture-work{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1.3fr) minmax(0,1fr);gap:12px}.register-text-capture header{flex-wrap:wrap;gap:10px}.register-text-capture header>div{order:3;flex-basis:100%}.register-text-capture header h2{margin-left:auto}.register-text-capture .capture-source{gap:8px}.register-text-capture footer{padding:10px 12px}}
.register-text-capture header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center}
.register-text-capture header h2{margin:0;text-align:left;white-space:nowrap}
.register-text-capture header>div{order:0}.register-text-capture header>button{order:0}
@media(max-width:700px){.register-text-capture header{gap:10px}.register-text-capture header h2{font-size:16px}.register-text-capture header p{font-size:11px;line-height:1.45}}
.form-photo-viewer{width:calc(100vw - 28px);height:calc(100dvh - 28px);max-width:1400px;max-height:none;padding:0;border:1px solid var(--line);border-radius:12px;background:#111821;color:white;overflow:hidden}.form-photo-viewer[open]{display:flex;flex-direction:column}.form-photo-viewer::backdrop{background:#000b}.form-photo-viewer header{display:flex;align-items:center;gap:8px;padding:12px 16px;flex:none}.form-photo-viewer strong{margin-right:auto}.form-photo-viewer button{border:1px solid #637082;border-radius:7px;min-width:38px;height:36px;background:#273142;color:white;cursor:pointer}.photo-viewport{flex:1;min-height:0;display:flex;justify-content:center;align-items:center;overflow:hidden;touch-action:none}.photo-viewport img{max-width:100%;max-height:100%;object-fit:contain;user-select:none;transform-origin:center;cursor:grab}.delivery-dialog{max-width:560px}.delivery-dialog p,.delivery-dialog small{font-size:12px;line-height:1.5}.delivery-dialog label{display:flex;gap:8px;align-items:center;margin:14px 0}.delivery-dialog button{margin:4px}.delivery-dialog footer{margin-top:18px;display:flex;justify-content:flex-end;gap:8px}
/* Dashboard workspaces and visual layout builder. */
.dashboard-editor { --dash-bg:#f3f6f5; --dash-panel:#fff; --dash-ink:#20332c; --dash-muted:#62746c; --dash-edge:#dbe4df; margin:auto; padding:0; width:calc(100vw - 28px); height:calc(100dvh - 28px); max-width:none; max-height:none; border:1px solid var(--dash-edge); border-radius:16px; color:var(--dash-ink); background:var(--dash-bg); box-shadow:0 24px 100px #0004; overflow:hidden; font-family:'Plus Jakarta Sans',sans-serif; }
.dashboard-editor[open] { display:flex; flex-direction:column; }
.dashboard-editor::backdrop { background:#0c231dcc; backdrop-filter:blur(3px); }
html[data-theme="dark"] .dashboard-editor { --dash-bg:#131c20; --dash-panel:#1d292e; --dash-ink:#e5eeea; --dash-muted:#a8bbb2; --dash-edge:#36474a; color-scheme:dark; }
.dashboard-editor * { box-sizing:border-box; }
.dashboard-editor svg { width:20px; height:20px; flex-shrink:0; }
.dashboard-editor button { display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:8px 10px; border:1px solid var(--dash-edge); border-radius:8px; color:var(--dash-ink); background:var(--dash-panel); cursor:pointer; font:inherit; font-size:12px; }
.dashboard-editor button:hover { background:color-mix(in srgb,#277a50 10%,var(--dash-panel)); border-color:#579977; }
.dashboard-editor button:disabled { opacity:.4; cursor:default; }
.dashboard-editor :focus-visible { outline:2px solid #429b6f; outline-offset:2px; }
.dashboard-top { display:flex; align-items:center; gap:18px; justify-content:space-between; padding:18px 24px; background:var(--dash-panel); border-bottom:1px solid var(--dash-edge); }
.dashboard-identity { display:flex; gap:12px; align-items:center; min-width:180px; flex:1; }
.dashboard-identity>svg { width:36px; height:36px; color:#409365; padding:6px; background:color-mix(in srgb,#277a50 10%,var(--dash-panel)); border-radius:10px; }
.dashboard-identity>div { min-width:0; flex:1; }
.dashboard-identity small { display:block; font-size:9px; font-weight:700; letter-spacing:1.2px; color:var(--dash-muted); }
.dashboard-identity input { width:100%; font:700 20px 'Plus Jakarta Sans',sans-serif; color:var(--dash-ink); border:0; background:transparent; padding:4px 0; text-overflow:ellipsis; }
.dashboard-commands,.dashboard-toolbar,.dashboard-toolbar>div { display:flex; align-items:center; gap:8px; }
.dashboard-commands>select { max-width:200px; }
.dashboard-editor select,.dashboard-inspector input,.dashboard-inspector textarea { background:var(--dash-panel); color:var(--dash-ink); border:1px solid var(--dash-edge); border-radius:7px; padding:8px; font:inherit; font-size:12px; min-width:0; }
.dashboard-editor label { font-size:11px; color:var(--dash-muted); }
.dash-autosave { display:flex; align-items:center; gap:4px; white-space:nowrap; }
.dashboard-toolbar { justify-content:space-between; padding:10px 24px; border-bottom:1px solid var(--dash-edge); flex-wrap:wrap; }
.dashboard-toolbar [data-save-state],.dashboard-toolbar [data-refreshed] { font-size:10px; color:var(--dash-muted); }
.dashboard-toolbar [data-save-state] { max-width:280px; }
.dashboard-toolbar [data-dash=mode],.dashboard-toolbar [data-dash=mode]:hover { background:#277a50; color:#fff; border-color:#277a50; font-weight:600; }
.dashboard-body { display:flex; flex:1; min-height:0; }
.dashboard-library,.dashboard-inspector { display:none; background:var(--dash-panel); padding:18px 16px; overflow:auto; flex-shrink:0; }
.dashboard-building .dashboard-library { display:block; width:205px; border-right:1px solid var(--dash-edge); }
.dashboard-building .dashboard-inspector { display:block; width:265px; border-left:1px solid var(--dash-edge); }
.dashboard-editor h2 { font-size:14px; margin:0 0 8px; }
.dashboard-editor h3 { font-size:12px; margin:22px 0 10px; }
.dashboard-library>p,.dashboard-inspector p,.dashboard-editor small { line-height:1.6; }
.dashboard-library>p,.dashboard-inspector>p { font-size:11px; color:var(--dash-muted); margin:0 0 18px; }
.dashboard-editor details>summary { font-size:11px; font-weight:700; cursor:pointer; padding:10px 0; }
.dashboard-library details { margin-bottom:10px; }
.dashboard-library button { display:flex; width:100%; justify-content:flex-start; margin:6px 0; }
.dashboard-library button b { margin-left:auto; color:#409365; }
.dashboard-library>small,.dashboard-inspector small { display:block; font-size:10px; color:var(--dash-muted); }
.dashboard-inspector>label,.dashboard-inspector details>label,.dash-pair>label { display:flex; flex-direction:column; gap:6px; margin:12px 0; }
.dashboard-inspector input[type=color] { width:100%; height:34px; padding:3px; }
.dashboard-inspector fieldset { border:1px solid var(--dash-edge); border-radius:6px; padding:8px; font-size:10px; }
.dashboard-inspector .dash-check { display:flex; gap:6px; margin:6px 0; align-items:center; }
.dash-pair { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.dash-pair input { width:100%; }
.dash-help { margin-top:24px; background:var(--dash-bg); padding:12px; border-radius:10px; font-size:11px; color:var(--dash-muted); line-height:1.8; }
.dashboard-editor .dash-remove { color:#b84f53; margin-top:24px; width:100%; }
.dashboard-scroll { flex:1; min-width:0; overflow:auto; padding:24px; }
.dashboard-canvas { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); grid-template-rows:repeat(var(--dash-rows,8),68px); gap:12px; position:relative; }
.dashboard-building .dashboard-canvas { background-image:radial-gradient(var(--dash-edge) 1px,transparent 1px); background-size:20px 20px; min-width:480px; }
.dashboard-widget { min-width:0; min-height:0; display:flex; flex-direction:column; position:relative; background:var(--dash-panel); border:1px solid var(--dash-edge); border-radius:12px; padding:16px; box-shadow:0 3px 12px #163e2710; overflow:hidden; }
.dashboard-building .dashboard-widget { cursor:pointer; }
.dashboard-widget.selected { outline:2px solid #409365; outline-offset:1px; }
.dashboard-widget>header { display:flex; align-items:center; gap:6px; margin-bottom:12px; flex-shrink:0; min-height:20px; }
.dashboard-widget>header h2 { margin:0; font-size:12px; flex:1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.dashboard-widget-content { min-height:0; flex:1; overflow:auto; display:flex; flex-direction:column; }
.dash-drag,.dash-widget-actions,.dash-resize { display:none!important; }
.dashboard-building .dash-drag,.dashboard-building .dash-widget-actions,.dashboard-building .dash-resize { display:flex!important; }
.dashboard-widget .dash-drag,.dash-widget-actions button { padding:3px; background:transparent; border:0; }
.dashboard-widget .dash-drag { cursor:grab; touch-action:none; }
.dash-widget-actions { gap:3px; }
.dash-widget-actions svg,.dash-drag svg { width:14px; height:14px; }
.dashboard-widget .dash-resize { position:absolute; right:0; bottom:0; border:0; padding:3px 6px; border-radius:8px 0 10px; background:transparent; color:var(--dash-muted); cursor:nwse-resize; touch-action:none; }
.dash-kpi { display:flex; flex:1; flex-direction:column; justify-content:center; gap:6px; }
.dash-kpi>strong,.dash-target>strong { font-size:clamp(22px,3vw,44px); line-height:1.1; font-weight:700; color:var(--widget-color); overflow-wrap:anywhere; }
.dash-kpi>small,.dash-target>small,.dash-comparison,.dash-caption { color:var(--dash-muted); font-size:10px; }
.dash-comparison { color:var(--dash-ink); }
.dash-target { display:flex; flex-direction:column; align-items:center; gap:10px; justify-content:center; height:100%; font-size:11px; }
.dash-target svg { width:100%; height:auto; min-height:60px; max-height:75%; }
.dash-progress { width:95%; border-radius:20px; overflow:hidden; height:16px; background:var(--dash-edge); box-shadow:inset 0 1px 3px #0002; }
.dash-progress span { display:block; height:100%; background:var(--widget-color); border-radius:20px; }
.dashboard-widget .dash-chart { width:100%; height:auto; min-height:100px; flex:1; }
.dash-chart text { fill:currentColor; font:10px sans-serif; }
.dash-round-chart { display:flex; align-items:center; gap:12px; min-height:100px; flex:1; }
.dash-round-chart svg { width:48%; height:auto; max-height:100%; }
.dash-round-chart ul { list-style:none; margin:0; padding:0; font-size:10px; flex:1; max-height:100%; overflow:auto; }
.dash-round-chart li { display:flex; align-items:center; gap:6px; margin:8px 0; }
.dash-round-chart li span { flex:1; overflow-wrap:anywhere; }
.dash-round-chart li i { width:8px; height:8px; border-radius:50%; flex-shrink:0; }
.dash-chart-data { flex-shrink:0; }
.dashboard-editor .dash-chart-data>summary { padding:4px 0; font-weight:400; font-size:10px; color:var(--dash-muted); }
.dash-table-scroll { flex:1; overflow:auto; }
.dashboard-widget table { border-collapse:collapse; width:100%; font-size:11px; }
.dashboard-widget td,.dashboard-widget th { padding:8px; text-align:left; border-bottom:1px solid var(--dash-edge); white-space:nowrap; }
.dashboard-widget th { background:var(--dash-bg); position:sticky; top:0; }
.dash-caption { margin-top:8px; }
.dash-note { white-space:pre-wrap; font-size:13px; line-height:1.8; overflow-wrap:anywhere; }
.dash-data-empty { display:flex; align-items:center; justify-content:center; min-height:70px; flex:1; margin:0; color:var(--dash-muted); font-size:11px; text-align:center; padding:10px; line-height:1.7; }
.dashboard-empty { grid-column:1/-1; grid-row:1/span 5; align-self:center; justify-self:center; max-width:370px; text-align:center; color:var(--dash-muted); padding:24px; }
.dashboard-empty>svg { width:62px; height:62px; color:#409365; margin-bottom:18px; }
.dashboard-empty>p { font-size:13px; line-height:1.7; }
#newDashboardBtn>span svg { width:22px; height:22px; }
@media(max-width:1000px) { .dashboard-top { padding:12px; flex-wrap:wrap; }.dashboard-commands { flex-wrap:wrap; }.dashboard-building .dashboard-library { width:170px; }.dashboard-building .dashboard-inspector { width:220px; }.dashboard-scroll { padding:14px; }.dashboard-toolbar { padding:10px 12px; }.dashboard-toolbar [data-refreshed] { display:none; } }
@media(max-width:650px) { .dashboard-editor { width:100vw; height:100dvh; border-radius:0; }.dashboard-top { gap:8px; }.dashboard-identity { flex-basis:100%; }.dashboard-identity input { font-size:18px; }.dashboard-commands { width:100%; gap:6px; }.dashboard-commands>select { flex:1; min-width:90px; }.dashboard-toolbar [data-save-state] { max-width:120px; }.dashboard-editor:not(.dashboard-building) .dashboard-canvas { display:flex; flex-direction:column; }.dashboard-editor:not(.dashboard-building) .dashboard-widget { min-height:230px; max-height:400px; }.dashboard-building .dashboard-body { display:grid; grid-template-columns:150px minmax(0,1fr); overflow:auto; }.dashboard-building .dashboard-library { width:auto; grid-row:1/3; }.dashboard-building .dashboard-scroll { min-height:420px; }.dashboard-building .dashboard-inspector { width:auto; grid-column:2; border-top:1px solid var(--dash-edge); }.dashboard-editor:not(.dashboard-building) .dashboard-widget:has(.dash-kpi) { min-height:160px; } }
/* Dashboards are documents inside the workspace, with one landscape board in both modes. */
.dashboard-editor { position:fixed; inset:var(--dashboard-top,72px) 12px var(--dashboard-bottom,42px); margin:0; width:auto; height:auto; max-width:none; max-height:none; border-radius:12px; z-index:170; box-shadow:0 8px 30px #102a2018; }
.dashboard-top { padding:12px 18px; }
.dashboard-toolbar { padding:8px 18px; }
.dashboard-toolbar [data-dashboard-scale] { font-size:10px; color:var(--dash-muted); white-space:nowrap; }
.dashboard-scroll { display:block; overflow:auto; min-height:0; padding:16px; }
.dashboard-stage { position:relative; margin:0 auto; flex-shrink:0; }
.dashboard-editor .dashboard-canvas { position:absolute; top:0; left:0; display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); grid-template-rows:repeat(var(--dash-rows,9),minmax(0,1fr)); gap:12px; min-width:0; transform-origin:top left; background:var(--dash-bg); box-shadow:0 0 0 1px var(--dash-edge); border-radius:10px; }
.dashboard-building .dashboard-canvas { background-image:radial-gradient(var(--dash-edge) 1px,transparent 1px); background-size:20px 20px; }
.dashboard-editor .dashboard-widget { min-height:0; max-height:none; }
.dashboard-editor .dashboard-widget:has(.dash-kpi) { min-height:0; }
.dashboard-editor .dash-kpi>strong,.dashboard-editor .dash-target>strong { font-size:36px; }
.compliance-workspace #createNewMenu > #newDashboardBtn { display:grid; }
@media(max-width:1000px) {
 .dashboard-top { padding:10px 12px; }
 .dashboard-toolbar { padding:8px 12px; }
 .dashboard-toolbar>div { flex-wrap:wrap; }
 .dashboard-toolbar [data-save-state] { max-width:170px; }
}
@media(max-width:650px) {
 .dashboard-editor { inset:var(--dashboard-top,72px) 6px var(--dashboard-bottom,42px); width:auto; height:auto; border-radius:10px; }
 .dashboard-editor:not(.dashboard-building) .dashboard-canvas { display:grid; }
 .dashboard-editor:not(.dashboard-building) .dashboard-widget,.dashboard-editor:not(.dashboard-building) .dashboard-widget:has(.dash-kpi) { min-height:0; max-height:none; }
 .dashboard-toolbar [data-dashboard-scale] { display:none; }
 .dashboard-toolbar label { font-size:10px; }
 .dashboard-toolbar select { max-width:125px; }
 .dashboard-building .dashboard-body { display:grid; grid-template-columns:125px minmax(0,1fr); grid-template-rows:minmax(180px,1fr) minmax(100px,.7fr); overflow:hidden; }
 .dashboard-building .dashboard-library { width:auto; min-height:0; grid-row:1/3; padding:12px 8px; }
 .dashboard-building .dashboard-scroll { min-height:0; padding:8px; }
 .dashboard-building .dashboard-inspector { min-height:0; width:auto; grid-column:2; padding:12px; }
}
.dashboard-page-active { overflow:hidden; }
.dashboard-page-active .workspace-gallery,.dashboard-page-active #folderViewer { visibility:hidden; }
/* Dashboard is a page below the persistent application header, not a dialog. */
section.dashboard-editor { inset:var(--dashboard-top,64px) 0 0; width:auto; height:auto; margin:0; padding:0 0 var(--dashboard-footer-space,42px); border:0; border-radius:0; box-shadow:none; }
section.dashboard-editor[hidden] { display:none!important; }
section.dashboard-editor:not([hidden]) { display:flex; flex-direction:column; }
section.dashboard-editor .dashboard-canvas { border-radius:0; box-shadow:none; }
/* Dashboard panels and optional freeform placement on workspace surfaces. */
.surface-tools { display:flex; align-items:center; gap:7px; margin:10px 0 18px; position:relative; z-index:25; }
.surface-icon { display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px; padding:6px; border:1px solid var(--line,#d6e1db); border-radius:8px; background:var(--panel,#fff); color:var(--ink,#23382c); cursor:pointer; flex-shrink:0; }
.surface-icon:hover { background:color-mix(in srgb,#277a50 12%,var(--panel,#fff)); }
.surface-icon[aria-pressed=true] { color:#277a50; border-color:#277a50; background:color-mix(in srgb,#277a50 12%,var(--panel,#fff)); }
.surface-icon:disabled { opacity:.35; cursor:default; }
.surface-icon:focus-visible { outline:2px solid #277a50; outline-offset:2px; }
.surface-panels { display:flex; flex-wrap:wrap; align-items:flex-start; gap:20px; margin:0 0 20px; }
.surface-panels:empty,.surface-home-dashboards:empty { display:none; }
.surface-dashboard-panel { --dash-bg:#f3f6f5; --dash-panel:#fff; --dash-ink:#20332c; --dash-muted:#62746c; --dash-edge:#dbe4df; position:relative; flex-shrink:0; max-width:100%; min-width:0; display:flex; flex-direction:column; background:var(--dash-panel); color:var(--dash-ink); border:1px solid var(--dash-edge); border-radius:12px; box-shadow:0 4px 16px #163e2712; padding:12px; }
.surface-dashboard-panel>header { display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:36px; margin-bottom:10px; }
.surface-dashboard-panel>header>strong { font:600 13px 'Plus Jakarta Sans',sans-serif; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.surface-dashboard-panel>header>span { display:flex; gap:3px; }
.surface-dashboard-panel>header .surface-icon { width:28px; height:28px; padding:5px; border:0; background:transparent; }
.surface-preview-stage { position:relative; min-height:0; flex:1; overflow:hidden; }
.surface-preview { position:absolute; top:0; left:0; transform-origin:top left; display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); grid-template-rows:repeat(var(--preview-rows,9),minmax(0,1fr)); gap:12px; }
.surface-preview .dashboard-widget { cursor:default; }
.surface-preview .dash-chart-data { display:none; }
.surface-preview svg.dash-chart { width:100%; height:auto; min-height:100px; flex:1; }
.surface-preview .dash-kpi>strong,.surface-preview .dash-target>strong { font-size:36px; }
.surface-preview .dash-round-chart svg { width:48%; height:auto; }
.surface-panel-empty { grid-column:1/-1; margin:auto; padding:30px; font:16px/1.7 'Plus Jakarta Sans',sans-serif; color:var(--dash-muted); text-align:center; }
.surface-dashboard-panel>[data-surface-action=resize] { position:absolute; bottom:1px; right:1px; width:23px; height:23px; padding:3px; border:0; background:transparent; cursor:nwse-resize; touch-action:none; }
.surface-positioned { position:relative; }
.surface-grid { --surface-grid-dot:color-mix(in srgb,var(--ink,#202923) 92%,transparent); --surface-grid-halo:color-mix(in srgb,var(--panel,#fff) 94%,transparent); }
.surface-grid::after { content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background-image:radial-gradient(circle,var(--surface-grid-dot) 0 1.2px,transparent 1.4px),radial-gradient(circle,var(--surface-grid-halo) 0 2.2px,transparent 2.4px);background-size:20px 20px;background-position:0 0; }
.surface-positioned [data-place-id] { transform:translate(var(--place-x,0px),var(--place-y,0px))!important; transform-origin:top left; position:relative; z-index:2; }
.surface-tile-resize { display:none; position:absolute; right:2px; bottom:2px; z-index:36; width:26px; height:26px; padding:3px; border:1px solid var(--appearance-edge,var(--line)); border-radius:6px; background:var(--appearance-surface,var(--panel)); color:var(--appearance-ink,var(--ink)); cursor:nwse-resize; touch-action:none; }
.surface-freeform [data-place-id]>.surface-tile-resize:not([hidden]) { display:flex; }
.surface-tile-resize[hidden] { display:none!important; }
.surface-positioned .surface-tile-sized { box-sizing:border-box; width:var(--tile-width)!important; height:var(--tile-height)!important; min-width:0!important; min-height:0!important; max-width:none!important; max-height:none!important; flex-shrink:0; align-self:start; }
.surface-positioned .surface-tile-sized.workspace-choice > .workspace-choice-open { height:100%; min-height:0; }
.surface-tile-resize[data-edge] { width:12px; height:12px; padding:0; border:1px solid var(--appearance-ink,var(--ink)); background:var(--appearance-surface,var(--panel)); border-radius:3px; }
.surface-tile-resize[data-edge] svg { display:none; }
.surface-tile-resize[data-edge=n],.surface-tile-resize[data-edge=s] { width:24px; height:8px; left:calc(50% - 12px); right:auto; cursor:ns-resize; }
.surface-tile-resize[data-edge=e],.surface-tile-resize[data-edge=w] { width:8px; height:24px; top:calc(50% - 12px); bottom:auto; cursor:ew-resize; }
.surface-tile-resize[data-edge=n],.surface-tile-resize[data-edge=nw],.surface-tile-resize[data-edge=ne] { top:1px; bottom:auto; }
.surface-tile-resize[data-edge=s],.surface-tile-resize[data-edge=sw],.surface-tile-resize[data-edge=se] { bottom:1px; top:auto; }
.surface-tile-resize[data-edge=w],.surface-tile-resize[data-edge=nw],.surface-tile-resize[data-edge=sw] { left:1px; right:auto; }
.surface-tile-resize[data-edge=e],.surface-tile-resize[data-edge=ne],.surface-tile-resize[data-edge=se] { right:1px; left:auto; }
.surface-tile-resize[data-edge=ne],.surface-tile-resize[data-edge=sw] { cursor:nesw-resize; }
.surface-positioned [data-place-id].surface-moving { z-index:35; transition:none!important; }
.surface-positioned [data-place-id]:focus-within { z-index:30; }
.surface-item-tools { display:none; position:absolute; top:-14px; right:8px; align-items:center; gap:3px; z-index:20; padding:2px; border-radius:8px; background:var(--panel,#fff); box-shadow:0 2px 6px #0002; }
.surface-freeform .surface-item-tools { display:flex; }
.surface-item-tools .surface-icon { width:25px; height:25px; padding:4px; border:0; }
.surface-item-tools [data-surface-action=move],.surface-dashboard-panel [data-surface-action=move] { touch-action:none; cursor:grab; }
.surface-freeform .surface-pinned { outline:1px dashed color-mix(in srgb,#277a50 45%,transparent); outline-offset:3px; }
.surface-home-dashboards { display:grid; grid-template-columns:repeat(auto-fill,minmax(270px,1fr)); gap:18px; margin:20px 0; }
.surface-home-dashboard { display:flex; align-items:center; gap:10px; padding:16px; border:1px solid var(--line,#d6e1db); border-radius:12px; background:var(--panel,#fff); color:var(--ink,#23382c); position:relative; min-width:0; }
.surface-home-dashboard>[data-home-open] { display:flex; align-items:center; gap:14px; flex:1; min-width:0; border:0; background:transparent; color:inherit; text-align:left; cursor:pointer; padding:0; }
.surface-home-dashboard [data-home-open]>svg { width:28px; height:28px; flex-shrink:0; color:#277a50; }
.surface-home-dashboard b,.surface-home-dashboard small { display:block; font-family:'Plus Jakarta Sans',sans-serif; }
.surface-home-dashboard b { font-size:13px; overflow-wrap:anywhere; }
.surface-home-dashboard small { font-size:10px; opacity:.65; margin-top:7px; }
.surface-file-menu,.surface-sort { position:relative; }
.surface-file-menu>summary { list-style:none; cursor:pointer; padding:5px; }
.surface-file-menu>div,.surface-sort>div { position:absolute; top:100%; right:0; z-index:40; padding:6px; border:1px solid var(--line,#d6e1db); border-radius:8px; background:var(--panel,#fff); min-width:180px; box-shadow:0 6px 24px #0002; }
.surface-sort>div { left:0; right:auto; }
.surface-file-menu button,.surface-sort button { display:block; padding:9px; width:100%; border:0; background:transparent; color:var(--ink,#23382c); text-align:left; cursor:pointer; font:12px 'Plus Jakarta Sans',sans-serif; }
.surface-file-menu button:hover,.surface-sort button:hover { background:color-mix(in srgb,#277a50 10%,var(--panel,#fff)); }
.surface-picker select { width:100%; padding:10px; margin-top:8px; background:var(--panel,#fff); color:var(--ink,#23382c); border:1px solid var(--line,#d6e1db); border-radius:7px; }
.surface-picker p { font-size:12px; line-height:1.7; }
.surface-has-content .workspace-welcome,.surface-has-panels .workspace-location-empty { display:none!important; }
html[data-theme=dark] .surface-dashboard-panel { --dash-bg:#131c20; --dash-panel:#1d292e; --dash-ink:#e5eeea; --dash-muted:#a8bbb2; --dash-edge:#36474a; }
body.dashboard-page-active .workspace-chooser { visibility:hidden; }
@media(max-width:600px) { .surface-tools { gap:5px; }.surface-dashboard-panel { max-width:100%; }.surface-home-dashboards { grid-template-columns:1fr; } }


.surface-options { position:relative; order:20; margin-left:8px; z-index:45; }
.surface-options>summary { list-style:none; cursor:pointer; }
.surface-options>.surface-tools { position:absolute; right:0; top:100%; width:235px; margin:8px 0; padding:8px; display:flex; flex-direction:column; align-items:stretch; background:var(--panel,#fff); color:var(--ink,#24352b); border:1px solid var(--line,#d6e1db); border-radius:12px; box-shadow:0 10px 30px #0002; }
.surface-options:not([open])>.surface-tools { display:none; }
.surface-tools>.surface-icon,.surface-tools>#workspaceSettingsBtn { position:static!important; display:flex; align-items:center; gap:10px; width:100%; height:38px; padding:8px; font:12px 'Plus Jakarta Sans',sans-serif; order:initial; }
.surface-tools>.surface-icon svg { flex-shrink:0; }
.surface-tools .surface-sort>div { position:static; box-shadow:none; }
.workspace-title>.surface-options { position:absolute; right:0; top:0; }
.workspace-title>.create-new { right:46px; }
.workspace-chooser-actions>.surface-options { flex:none; }
.create-new-menu>.surface-icon,.workspace-type-options>.surface-icon { width:100%; height:auto; display:flex; gap:12px; text-align:left; padding:12px; }
.surface-home-dashboard>[data-home-open] { flex-direction:column; align-items:stretch; }
.surface-home-dashboard { align-items:flex-start; }
.surface-home-dashboard .surface-preview-stage,.dashboard-file .surface-preview-stage { display:block!important; width:100%; height:150px; flex:none; background:var(--panel,#f8faf9); border:1px solid var(--line,#d6e1db); border-radius:8px; pointer-events:none; }
.dashboard-file .dashboard-open { display:flex!important; flex-direction:column!important; align-items:stretch!important; gap:8px; }
.dashboard-file .explorer-art { display:none!important; }
.dashboard-file { min-width:240px; }
[data-place-id] { touch-action:pan-y; }
.surface-moving { touch-action:none; }
.workspace-chooser-actions>.surface-options { position:absolute; right:0; top:0; }
.surface-tools>.workspace-options-dropdown { position:relative; top:auto; right:auto; width:100%; }
.surface-tools #workspaceSettingsBtn { position:static; width:100%; display:flex; align-items:center; gap:10px; padding:8px; font:12px 'Plus Jakarta Sans',sans-serif; }
.surface-tools .workspace-customizer { right:0; top:100%; }
.surface-tools>.folder-sort,.surface-tools>.folder-view-menu { display:block!important; position:relative; margin:0; }
.surface-tools .folder-view-options { right:0; }
.surface-tools>[data-local-delivery] { width:100%; }
.workspace-folders { align-items:start; }
.surface-tools .explorer-icon { color:inherit; }
/* Placement measurements must not interpolate from the previous transform. */
.surface-positioned [data-place-id] { transition-property:background-color,border-color,box-shadow,color,opacity!important; }

/* Editing is a visual state; leaving it retains every saved position. */
.surface-freeform [data-place-id] { outline:1px dashed color-mix(in srgb,#277a50 55%,transparent); outline-offset:3px; box-shadow:0 0 0 4px #277a500b; cursor:grab; }
.surface-freeform [data-place-id].surface-moving { cursor:grabbing; outline:2px solid #277a50; box-shadow:0 12px 28px #173d2826; }
.surface-exit { position:fixed; right:24px; bottom:60px; z-index:90; padding:12px 18px; border:1px solid #5ca97c; border-radius:12px; background:#277a50; color:white; box-shadow:0 4px 20px #173d2833; font:600 12px 'Plus Jakarta Sans',sans-serif; cursor:pointer; }
.surface-exit[hidden],body.dashboard-page-active .surface-exit,body.auth-locked .surface-exit { display:none; }
.surface-title-group { position:relative; width:fit-content; max-width:calc(100% - 220px); }
.surface-title-group h1 { margin:0; }
.surface-title-group p { margin:8px 0 0; }
.surface-dock { position:fixed; right:24px; bottom:60px; z-index:90; display:flex; align-items:center; gap:8px; padding:6px; border-radius:14px; background:var(--panel,#fff); box-shadow:0 4px 20px #173d2826; }
.surface-dock .surface-exit { position:static; box-shadow:none; }
.surface-dock>.surface-icon { width:40px; height:40px; }
.surface-dock[hidden],body.dashboard-page-active .surface-dock,body.auth-locked .surface-dock { display:none; }
[data-place-id]>[data-surface-action=visibility] { display:none; position:absolute; right:8px; top:-16px; z-index:36; width:30px; height:30px; background:var(--panel,#fff); color:var(--ink,#24352b); border:1px solid #6eaa85; border-radius:50%; box-shadow:0 2px 7px #0002; }
.surface-freeform [data-place-id]>[data-surface-action=visibility] { display:grid; place-items:center; }
.surface-item-hidden { visibility:hidden!important; pointer-events:none; }
.surface-freeform .surface-item-hidden { visibility:visible!important; opacity:.3!important; pointer-events:auto; }
.surface-options>.surface-tools { width:auto; min-width:48px; gap:8px; align-items:center; }
.surface-tools>.surface-icon,.surface-tools #workspaceSettingsBtn,.surface-tools>[data-local-delivery] { width:36px!important; height:36px; padding:8px; justify-content:center; }
.surface-tools #workspaceSettingsBtn>span:not(:first-child) { display:none; }
.surface-tools .surface-sort>div { display:flex; gap:6px; }
.surface-tools .surface-sort button { width:36px; padding:8px; }
@media(max-width:600px) { .surface-title-group { max-width:100%; }.surface-dock { right:12px; bottom:54px; } }
/* Tile button styles must never expose editing controls outside placement mode. */
[data-surface-action=visibility][hidden],
.workspace-gallery:not(.surface-freeform) [data-surface-action=visibility],
.workspace-chooser:not(.surface-freeform) [data-surface-action=visibility] { display:none!important; }
.surface-freeform [data-place-id]>[data-surface-action=visibility]:not([hidden]) { display:grid!important; }
/* Sort choices are an independent flyout, leaving the icon menu unchanged. */
.surface-tools .surface-sort>div,.surface-tools .folder-sort-menu { position:absolute; top:0; right:calc(100% + 8px); left:auto; display:block; width:210px; min-width:210px; padding:6px; border:1px solid var(--line,#d6e1db); border-radius:10px; background:var(--panel,#fff); box-shadow:0 8px 28px #17233c26; z-index:510; }
.surface-tools .surface-sort button { display:block; width:100%; padding:10px 12px; white-space:nowrap; text-align:left; }
/* Open space controls beside their trigger with matching top edges. */
.surface-options>.surface-tools { left:calc(100% + 8px); right:auto; top:0; margin:0; }
/* Every space-menu action shares one button treatment, including nested summaries. */
:is(.surface-tools>button,.surface-tools>details>summary,.surface-tools #workspaceSettingsBtn) { box-sizing:border-box; display:flex; align-items:center; justify-content:center; flex-shrink:0; width:36px!important; height:36px; min-width:36px; padding:8px; margin:0; border:1px solid var(--line,#d6e1db); border-radius:8px; background:var(--panel,#fff); color:var(--ink,#23382c); box-shadow:none; cursor:pointer; list-style:none; }
:is(.surface-tools>button,.surface-tools>details>summary,.surface-tools #workspaceSettingsBtn) svg { width:19px; height:19px; flex-shrink:0; }
.surface-tools>details>summary::-webkit-details-marker { display:none; }
:is(.surface-tools>button,.surface-tools>details>summary,.surface-tools #workspaceSettingsBtn):hover { background:color-mix(in srgb,#277a50 12%,var(--panel,#fff)); }
:is(.surface-tools>button,.surface-tools>details>summary,.surface-tools #workspaceSettingsBtn):focus-visible { outline:2px solid #277a50; outline-offset:2px; }
:is(.surface-tools>button,.surface-tools>details>summary,.surface-tools #workspaceSettingsBtn)[aria-pressed=true] { color:#277a50; border-color:#277a50; background:color-mix(in srgb,#277a50 12%,var(--panel,#fff)); }
/* Consistent creation cards across the workspace chooser and workspace. */
.create-new-menu,.workspace-type-options { width:300px; max-width:calc(100vw - 32px); padding:7px; background:var(--panel,#fff); }
:is(.create-new-menu,.workspace-type-options)>button.create-menu-item { display:grid; grid-template-columns:34px minmax(0,1fr); grid-template-rows:auto auto; gap:3px 11px; width:100%; height:auto; min-height:62px; padding:11px; border:0; border-radius:8px; text-align:left; color:var(--ink,#24352b); align-items:center; }
:is(.create-new-menu,.workspace-type-options) .create-menu-icon { grid-column:1; grid-row:1 / 3; display:grid; place-items:center; width:34px; height:34px; border-radius:9px; background:color-mix(in srgb,var(--workspace-color,#277a50) 9%,transparent); color:var(--workspace-color,#277a50); }
.create-menu-icon svg { width:23px; height:23px; }
:is(.create-new-menu,.workspace-type-options) .create-menu-item>b { grid-column:2; grid-row:1; font:600 12px 'Plus Jakarta Sans',sans-serif; line-height:1.4; }
:is(.create-new-menu,.workspace-type-options) .create-menu-item>small { grid-column:2; grid-row:2; margin:0; color:var(--muted,#747f89); font:10px 'Plus Jakarta Sans',sans-serif; line-height:1.5; }
.compliance-workspace #createNewMenu>[data-surface-action=add] { display:grid; }
.surface-element-picker,.surface-fields,.surface-widget { --dash-panel:var(--panel,#fff); --dash-ink:var(--ink,#24352b); --dash-muted:var(--muted,#78857e); --dash-edge:var(--line,#d6e1db); color:var(--dash-ink); }
.surface-element-picker { width:min(850px,calc(100vw - 40px)); max-height:calc(100dvh - 50px); padding:0; border:1px solid var(--dash-edge); border-radius:16px; background:var(--dash-panel); box-shadow:0 20px 65px #0003; }
.surface-element-picker::backdrop { background:#10281d70; }
.surface-element-picker>header,.surface-element-picker>footer,.surface-fields>header { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:18px 22px; border-bottom:1px solid var(--dash-edge); }
.surface-element-picker h2 { margin:0; font-size:18px; }.surface-element-picker button,.surface-fields>header button { cursor:pointer; border:1px solid var(--dash-edge); border-radius:8px; background:var(--dash-panel); color:inherit; padding:9px 14px; }
.surface-element-picker>footer { justify-content:flex-end; border-top:1px solid var(--dash-edge); border-bottom:0; }.surface-element-picker [data-add] { background:#277a50; color:#fff; border-color:#277a50; }
.surface-element-picker-body { display:grid; grid-template-columns:210px 1fr; min-height:390px; }
.surface-element-picker-body>nav { border-right:1px solid var(--dash-edge); padding:12px; overflow:auto; max-height:55vh; }.surface-element-picker-body nav h3 { font-size:11px; color:var(--dash-muted); margin:12px 8px 6px; }
.surface-element-picker-body nav button { display:flex; gap:10px; align-items:center; width:100%; border:0; text-align:left; font-size:12px; }.surface-element-picker-body nav button svg { width:20px; height:20px; flex:none; }.surface-element-picker-body nav button[aria-pressed=true] { background:#277a501c; color:#277a50; }
.surface-element-picker-body>section { padding:24px; min-width:0; }.surface-element-picker-body>section>small { font-size:10px; color:var(--dash-muted); letter-spacing:.08em; }.surface-example { min-height:270px; border:1px solid var(--dash-edge); border-radius:12px; padding:20px; overflow:auto; }.surface-example svg.dash-chart,.surface-widget-body svg.dash-chart { width:100%; min-height:150px; }.surface-example .dash-chart-data { display:none; }
.surface-widget-body { overflow:auto; min-height:0; flex:1; padding:12px; }.surface-widget-body .dash-target svg { max-height:180px; }.surface-widget header { flex:none; }.surface-widget header [data-surface-action=fields] svg { stroke-width:4; }
.surface-fields { position:fixed; top:64px; bottom:0; right:0; width:320px; max-width:90vw; background:var(--dash-panel); border-left:1px solid var(--dash-edge); z-index:85; box-shadow:-10px 0 35px #0002; animation:surface-fields-enter .18s ease-out; display:flex; flex-direction:column; }
.surface-fields[hidden] { display:none; }.surface-fields .dashboard-inspector { display:block; width:auto; flex:1; padding:18px; }.surface-fields select { padding:8px; border:1px solid var(--dash-edge); border-radius:7px; color:inherit; background:var(--dash-panel); }.surface-fields h2 { font-size:14px; }
@keyframes surface-fields-enter { from { transform:translateX(100%); } to { transform:translateX(0); } }
@media(prefers-reduced-motion:reduce) { .surface-fields { animation:none; } }
@media(max-width:600px) { .surface-element-picker-body { grid-template-columns:150px 1fr; }.surface-element-picker-body>section { padding:12px; }.surface-example { padding:10px; } }
.surface-element-menu { position:relative; flex:none; }
.surface-element-menu>summary { list-style:none; cursor:pointer; }
.surface-element-menu>summary::-webkit-details-marker { display:none; }
.surface-element-menu>summary svg { stroke-width:4; }
.surface-element-menu>div { position:absolute; top:calc(100% + 6px); right:0; z-index:50; min-width:160px; padding:6px; border:1px solid var(--line,#d6e1db); border-radius:10px; background:var(--panel,#fff); box-shadow:0 8px 24px #0002; }
.surface-element-menu>div>.surface-icon { display:flex; align-items:center; gap:10px; width:100%; height:36px; padding:8px 10px; border:0; border-radius:6px; text-align:left; font:12px 'Plus Jakarta Sans',sans-serif; }
.surface-element-menu [data-surface-action=delete-element] { color:#b84f53; border-top:1px solid var(--line,#d6e1db)!important; margin-top:4px; }
.surface-fields .surface-delete-element { display:flex; align-items:center; justify-content:center; gap:9px; width:100%; margin-top:24px; padding:11px 14px; border:1px solid color-mix(in srgb,#b84f53 40%,var(--line,#d6e1db)); border-radius:9px; background:transparent; color:#b84f53; cursor:pointer; font:600 12px 'Plus Jakarta Sans',sans-serif; }
.surface-fields .surface-delete-element:hover { background:#b84f5310; }
.surface-fields .surface-delete-element svg { width:18px; height:18px; }
html[data-theme=dark] :is(.surface-delete-element,.surface-element-menu [data-surface-action=delete-element]) { color:#f1999d; }
/* Wide appearance editor: independently scrollable settings and image gallery. */
html body .appearance-dialog { width:min(1200px,calc(100vw - 32px)); max-width:none; height:min(850px,calc(100dvh - 32px)); max-height:none; padding:22px; box-sizing:border-box; }
html body .appearance-dialog>form { display:flex; flex-direction:column; height:100%; min-height:0; gap:16px; }
html body .appearance-dialog header,html body .appearance-dialog footer { flex:none; margin:0; }
.appearance-layout { display:grid; grid-template-columns:minmax(260px,340px) minmax(0,1fr); gap:24px; flex:1; min-height:0; }
.appearance-settings-pane,.appearance-gallery-pane { min-height:0; min-width:0; overflow:auto; overscroll-behavior:contain; }
.appearance-settings-pane { display:flex; flex-direction:column; gap:16px; padding-right:12px; border-right:1px solid var(--line); }
html body .appearance-dialog .appearance-preview { flex:none; height:180px; min-height:180px; margin:0; width:100%; box-sizing:border-box; }
html body .appearance-dialog .appearance-gallery-pane { display:flex; flex-direction:column; gap:12px; }
html body .appearance-dialog .appearance-presets { flex:1; min-height:0; max-height:none; display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); grid-auto-rows:max-content; align-content:start; overflow:auto; }
html body .appearance-dialog .appearance-categories { display:flex; flex-wrap:wrap; flex:none; gap:6px; }
html body .appearance-dialog .appearance-preset>span { height:110px; }
.appearance-border-controls { display:flex; flex-direction:column; gap:12px; font-size:12px; }
.appearance-border-controls>div,.appearance-border-controls>label,.appearance-color { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.appearance-border-controls input[type=color],html body .appearance-dialog .appearance-color input[type=color] { position:static; width:42px; height:30px; padding:0; cursor:pointer; flex:none; }
.appearance-border-controls input[type=number] { width:65px; padding:6px; border:1px solid var(--line); border-radius:6px; background:var(--panel); color:var(--ink); }
.appearance-bordered { border-style:solid!important; border-color:var(--appearance-border-color)!important; border-width:var(--appearance-border-width)!important; box-sizing:border-box; }
:is(.file-options-menu,.file-export-options,.workspace-choice-panel,.folder-options,.tile-menu-panel,.surface-file-menu>div) :is(button,a) { font-family:'Plus Jakarta Sans',sans-serif!important; font-size:12px!important; font-weight:500!important; line-height:1.5; letter-spacing:normal; text-transform:none; }
@media(max-width:650px) { html body .appearance-dialog { padding:14px; width:calc(100vw - 16px); height:calc(100dvh - 16px); }.appearance-layout { grid-template-columns:1fr; overflow:auto; display:block; }.appearance-settings-pane { border-right:0; padding-right:0; overflow:visible; }.appearance-gallery-pane { margin-top:20px; overflow:visible; }html body .appearance-dialog .appearance-presets { overflow:visible; min-height:220px; grid-template-columns:repeat(2,minmax(0,1fr)); } }
.about-update-actions { border-top:1px solid var(--line); padding-top:18px; margin-top:20px; }
.about-update-actions button { border:1px solid #277a50; background:#277a50; color:#fff; border-radius:7px; padding:11px 16px; font:600 12px 'Plus Jakarta Sans',sans-serif; cursor:pointer; }
.about-update-actions button:disabled { opacity:.6; cursor:wait; }
.about-update-actions p { min-height:1.5em; line-height:1.5; }
.about-update-actions a { font-size:12px; color:var(--ink); }
.dashboard-building .dashboard-widget { cursor:grab; touch-action:none; user-select:none; }
.dashboard-building .dashboard-widget:active { cursor:grabbing; }
.landing-pad-choice { display:grid; gap:8px; border-top:1px solid var(--line); padding:12px; font-size:12px; }
.landing-pad-choice select { width:100%; min-width:0; background:var(--panel); color:var(--ink); border:1px solid var(--line); border-radius:6px; padding:8px; }
.formula-written { white-space:normal; }
.formula-typeset,.formula-worksheet { overflow-x:auto; padding:8px 2px; font-size:1.1em; }
.formula-worksheet { border-top:1px dashed currentColor; margin-top:8px; }
.formula-worksheet small { display:block; font:10px 'Plus Jakarta Sans',sans-serif; opacity:.7; margin-bottom:8px; }
.formula-source { overflow-wrap:anywhere; }
.formula-reference-overlay { position:fixed; inset:0; z-index:80; pointer-events:none; }
.formula-reference-bubble { position:absolute; padding:3px 7px; font:600 10px 'DM Mono',monospace; background:var(--panel,#fff); border:1px solid currentColor; border-radius:12px; box-shadow:0 2px 5px #0002; }
.formula-reference-leader { position:absolute; inset:0; width:100%; height:100%; overflow:visible; opacity:.4; stroke-width:1; }
.formula-view-modes .setting-label { display:block; margin:8px 0; }
@media print { .formula-reference-overlay { display:none; } }
.appearance-dialog .appearance-border-controls[hidden] { display:none!important; }
.background-page-preview { opacity:1; }
.file-sharing-details { min-width:180px; max-width:360px; padding:8px; overflow-wrap:anywhere; }
.file-sharing-details small { display:block; margin:4px 0; line-height:1.5; }
.team-file>.folder-file-info:disabled { cursor:default; opacity:.75; }
.account-center-tabs { flex-wrap:wrap; }
/* Profile viewing and first-time setup share theme-aware controls. */
.profile-edit-form[hidden],.profile-readonly[hidden],.profile-edit-toggle[hidden]{display:none!important}
.profile-card{max-height:calc(100dvh - 48px);overflow:auto}
.profile-readonly{display:grid;grid-template-columns:auto 1fr;gap:12px;text-align:left;margin:20px 0;font-size:13px}
.profile-readonly dt{color:var(--muted)}.profile-readonly dd{margin:0;overflow-wrap:anywhere;color:var(--ink)}
.profile-edit-toggle{padding:10px 16px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--ink);cursor:pointer}
.profile-edit-form select{width:100%;padding:10px;border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--ink)}
.welcome-dialog{width:min(720px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;border:1px solid var(--line);border-radius:16px;padding:28px;background:var(--panel);color:var(--ink)}
.welcome-dialog::backdrop{background:#071e1780;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.welcome-dialog form{display:grid;grid-template-columns:1fr 1fr;gap:24px}.welcome-dialog header,.welcome-dialog footer,.welcome-dialog [role=status]{grid-column:1/-1}
.welcome-dialog header small{color:#277a50;font-weight:800;letter-spacing:2px}.welcome-dialog h1{font-size:27px;margin:8px 0}.welcome-dialog h2{font-size:17px;margin:0 0 16px}
.welcome-dialog p{color:var(--muted);font-size:13px;line-height:1.6}.welcome-dialog label{display:grid;gap:7px;margin:14px 0;font-size:13px}
.welcome-dialog input:not([type=checkbox]),.welcome-dialog select{min-width:0;width:100%;padding:10px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--ink);font:inherit}.welcome-dialog input[readonly]{opacity:.75}
.welcome-dialog .welcome-check{display:flex;align-items:center;gap:10px}.welcome-dialog footer{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.welcome-dialog button{padding:11px 16px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--ink);cursor:pointer}.welcome-dialog button[type=submit]{background:#277a50;color:white;border-color:#277a50}.welcome-dialog button:disabled{opacity:.6;cursor:wait}
@media(max-width:600px){.welcome-dialog{padding:20px}.welcome-dialog form{grid-template-columns:1fr;gap:16px}}
/* Compliance registers occupy the full viewport; edit tools are opt-in. */
.compliance-register-editor{position:fixed;inset:0;margin:0;width:100vw;max-width:none;height:100dvh;max-height:none;padding:0;border:0;border-radius:0;overflow:hidden}
.compliance-register-editor[open]{display:flex;flex-direction:column}.compliance-register-editor>header{padding:16px 22px;border-bottom:1px solid var(--line);flex:none;justify-content:flex-start;gap:10px}.compliance-register-editor>header>div{flex:1;min-width:0}.compliance-register-editor h2{overflow-wrap:anywhere}.compliance-register-editor>header .register-capture-help{margin:0}
.compliance-register-editor .register-edit-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex:none}.register-edit-icon[aria-pressed=true]{background:#277a50;color:#fff}
.register-main{display:flex;flex:1;min-height:0;overflow:hidden}.register-content{flex:1;min-width:0;overflow:auto;padding:20px 24px}.compliance-register-editor .register-metadata{grid-template-columns:repeat(12,minmax(0,1fr));margin:0 0 24px;gap:18px}.register-field{min-width:0;position:relative;border:1px solid transparent;border-radius:8px;padding:12px}.register-editing .register-field{border-color:var(--line)}.register-field label,.register-field input,.register-field textarea,.register-field select{font-size:inherit}.register-field-value,.register-condition-value,.register-note{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.65}.register-field-value{padding-top:8px}.register-blank{color:var(--muted)}.register-field h3{margin:0;font-size:1.3em}.register-field p{margin:0}.register-field-tools{display:flex;justify-content:flex-end;gap:5px;margin-bottom:8px}.register-field-tools button{display:inline-flex}.register-field-tools [data-field-action=move]{margin-right:auto;cursor:grab;touch-action:none}.compliance-register-editor input[type=checkbox]{width:auto}
.register-layout-toolbar{display:flex;gap:14px;align-items:end;flex-wrap:wrap;padding:0 0 18px}.register-layout-toolbar label{display:grid;gap:5px}.register-layout-toolbar label:first-child{flex:1;min-width:180px}.register-layout-toolbar label:first-child input{font-size:16px}
.compliance-register-editor>footer{padding:12px 22px;border-top:1px solid var(--line);flex:none}.compliance-register-editor [hidden]{display:none!important}.register-settings{width:300px;max-width:45vw;flex:none;border-left:1px solid var(--line);padding:18px;overflow:auto;background:var(--panel)}.register-settings>label{display:grid;gap:6px;margin:16px 0;font-size:12px}.register-settings header{gap:8px}.register-settings h3{font-size:16px;margin:0}.register-reorder{display:flex;gap:6px}.register-reorder button{display:flex;align-items:center}.register-save-state{font-size:12px;color:#d15b48}
.compliance-register-editor thead button{display:inline-flex;vertical-align:middle;padding:3px;margin-left:4px}.compliance-register-editor .register-table-wrap{margin:0}.compliance-register-editor:not(.register-editing) th:last-child,.compliance-register-editor:not(.register-editing) td:last-child{display:none}
@media(max-width:700px){.compliance-register-editor>header{padding:12px;gap:6px}.compliance-register-editor h2{font-size:17px}.register-content{padding:12px}.compliance-register-editor .register-field{grid-column:span 12!important}.register-settings{position:absolute;right:0;top:78px;bottom:0;z-index:4;width:min(340px,90vw);max-width:90vw;box-shadow:-6px 0 20px #0002}}
.register-editing .register-drag-target{outline:2px solid #277a50;outline-offset:2px}

/* Compliance registers share the persistent application header. */
.compliance-register-editor{inset:64px 0 var(--register-footer-height,48px);height:calc(100dvh - 64px - var(--register-footer-height,48px));z-index:140}
html body:has(.compliance-register-editor[open]) .app-watermark{left:0;right:0;bottom:0;transform:none;box-sizing:border-box;width:100%;max-width:none;padding:1px 7px calc(1px + env(safe-area-inset-bottom,0px));border:0;border-top:1px solid var(--line);border-radius:0;background:var(--panel);color:var(--ink);box-shadow:none}
body:has(.compliance-register-editor[open]) .profile-dialog{z-index:190}
/* Readable, consistent element tray in both account themes. */
.left-panel{--tray-ink:#273345;--tray-muted:#526174;--tray-category:#f0f3f8;--tray-hover:#e5ebf4;--tray-edge:#c8d1df;--tray-accent:#5145b5;--tray-icon:#f5f3ff}
html[data-theme="dark"] .left-panel{--tray-ink:#edf2fa;--tray-muted:#bac7da;--tray-category:#2d3748;--tray-hover:#39465b;--tray-edge:#64758e;--tray-accent:#c8beff;--tray-icon:#34334d}
html .left-panel .panel-heading,html .left-panel .panel-heading button,html .left-panel .left-footer button{color:var(--tray-muted)}
.left-panel .element-list .element-category{border-bottom:1px solid var(--line);margin:0 0 12px;padding-bottom:10px}
.left-panel .element-category>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px;padding:10px 12px;border:1px solid transparent;border-radius:7px;background:var(--tray-category);color:var(--tray-ink);font:700 12px/1.5 'Plus Jakarta Sans',sans-serif;letter-spacing:.01em;list-style:none}
.left-panel .element-category>summary::-webkit-details-marker{display:none}
.left-panel .element-category>summary::after{content:'';width:7px;height:7px;flex:none;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);margin-right:3px}
.left-panel .element-category[open]>summary::after{transform:rotate(45deg);margin-top:-4px}
.left-panel .element-category>summary:hover{background:var(--tray-hover);border-color:var(--tray-edge)}
.left-panel .element-category-items{gap:3px;padding-top:7px}
html .left-panel .element-item{height:auto;min-height:60px;padding:9px 8px;gap:9px;color:var(--tray-ink)}
html .left-panel .element-item b{color:var(--tray-ink);line-height:1.4}
html .left-panel .element-item small{color:var(--tray-muted);font-size:11px;line-height:1.45}
html .left-panel .element-item>span:not(.element-icon) :is(b,small){white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}
html .left-panel .element-item:hover,html .left-panel .left-footer button:hover{background:var(--tray-hover)}
html .left-panel .element-icon{background:var(--tray-icon);color:var(--tray-accent);border-color:var(--tray-edge)}
html .left-panel .element-item em.add-element{border-color:var(--tray-edge);background:var(--tray-category)}
html .left-panel .element-item em.add-element:hover{background:var(--tray-hover)}
html .left-panel .element-item em.add-element::before,html .left-panel .element-item em.add-element::after{background:var(--tray-accent)}
html .left-panel :is(summary,button):focus-visible{outline:2px solid var(--tray-accent);outline-offset:2px}
html .left-panel .palette-add-help{color:var(--tray-muted);font-size:11px;line-height:1.5}
/* Register sections use the app's green accent and theme-aware surfaces. */
.compliance-register-editor{--register-page:#f3f6f5;--register-surface:#fff;--register-subtle:#f7f9f8;--register-edge:#d5dfda;--register-accent:#277a50;--register-tint:#e8f3ec;--register-muted:#586a60;background:var(--register-surface)}
html[data-theme="dark"] .compliance-register-editor{--register-page:#191e28;--register-surface:#232a38;--register-subtle:#283242;--register-edge:#46546a;--register-accent:#a2dbb8;--register-tint:#2b403d;--register-muted:#bbc8cf}
.compliance-register-editor>.register-main{background:var(--register-page)}
.compliance-register-editor>header{background:var(--register-surface);border-bottom-color:var(--register-edge);padding:18px 24px}
.compliance-register-editor>header h2{font-size:22px;letter-spacing:-.025em;margin-bottom:4px}
.compliance-register-editor>header small{color:var(--register-muted);font-size:11px}
.register-section{background:var(--register-surface);border:1px solid var(--register-edge);border-radius:12px;margin-bottom:22px;overflow:hidden;box-shadow:0 2px 6px #102a2005}
.register-section-heading{display:flex;align-items:center;gap:12px;padding:17px 20px;border-bottom:1px solid var(--register-edge);background:var(--register-subtle)}
.register-section-heading h3{font-size:14px;font-weight:700;margin:0;letter-spacing:.01em}
.register-section-number{display:grid;place-items:center;flex:none;width:30px;height:30px;border-radius:8px;background:var(--register-tint);color:var(--register-accent);font:600 11px 'DM Mono',monospace}
.register-condition-count{margin-left:auto;color:var(--register-muted);font-size:11px;white-space:nowrap}
.compliance-register-editor .register-layout-toolbar{padding:16px 20px;margin:0;border-bottom:1px solid var(--register-edge);gap:10px}
.compliance-register-editor .register-layout-toolbar label:first-child{flex:0 1 200px;min-width:140px;color:var(--register-muted);font-size:11px}
.compliance-register-editor .register-metadata{padding:18px;margin:0;gap:12px}
.compliance-register-editor .register-metadata:empty{padding:0}
.compliance-register-editor .register-field{border:1px solid var(--register-edge);background:var(--register-surface);border-radius:8px;padding:14px}
.compliance-register-editor .register-field label{color:var(--register-muted);font-weight:600}
.compliance-register-editor .register-field-value{color:var(--ink);font-weight:400}
.compliance-register-editor .register-field[data-field-type=heading]{background:var(--register-tint);border-color:transparent;border-left:3px solid var(--register-accent)}
.compliance-register-editor .register-field[data-field-type=note]{background:var(--register-subtle)}
.compliance-register-editor .register-field small{color:var(--register-muted);line-height:1.6;margin-top:5px}
.compliance-register-editor .register-field-tools{padding-bottom:9px;margin-bottom:12px;border-bottom:1px solid var(--register-edge);gap:6px}
.compliance-register-editor :is(input,textarea,select){background:var(--register-subtle);border-color:var(--register-edge)}
.compliance-register-editor button:hover:not(:disabled){background:var(--register-tint);border-color:var(--register-accent)}
.compliance-register-editor .register-edit-icon[aria-pressed=true]{background:#277a50;color:#fff;border-color:#277a50}
.compliance-register-editor th{background:var(--register-subtle);color:var(--register-muted);font-size:11px;font-weight:700}
.compliance-register-editor :is(th,td){padding:13px 12px;border-bottom-color:var(--register-edge)}
.compliance-register-editor tbody tr:nth-child(even){background:var(--register-subtle)}
.compliance-register-editor tbody tr:last-child td{border-bottom:0}
.compliance-register-editor tbody tr:hover{background:color-mix(in srgb,var(--register-tint) 45%,var(--register-surface))}
.compliance-register-editor td:first-child{color:var(--register-muted);font:500 11px 'DM Mono',monospace}
.register-conditions-empty{padding:24px 20px;margin:0;color:var(--register-muted);font-size:12px;line-height:1.6}
.compliance-register-editor .register-settings{background:var(--register-surface);border-left-color:var(--register-edge)}
.compliance-register-editor .register-settings>header{padding:0 0 16px;border-bottom:1px solid var(--register-edge);margin-bottom:20px}
.compliance-register-editor .register-settings>label,.compliance-register-editor [data-link-settings]>label{color:var(--register-muted);gap:7px}
.compliance-register-editor [data-link-settings]{padding:14px;border:1px solid var(--register-edge);border-radius:8px;background:var(--register-subtle);margin:18px 0}
.compliance-register-editor [data-link-settings]>label{display:grid;font-size:12px}
.compliance-register-editor [data-link-settings]>small{line-height:1.6;color:var(--register-muted);margin:10px 0}
.compliance-register-editor>footer{background:var(--register-surface);border-top-color:var(--register-edge)}
.compliance-register-editor [data-register=add]{background:#277a50;border-color:#277a50;color:white;font-weight:600}
.compliance-register-editor [data-register=add]:hover{background:#206641;color:white}
@media(max-width:700px){.compliance-register-editor>header{padding:12px}.compliance-register-editor>header h2{font-size:18px}.register-section-heading{padding:13px 12px;gap:8px}.register-section-heading h3{font-size:13px}.register-section-number{width:26px;height:26px}.register-condition-count{font-size:10px}.compliance-register-editor .register-layout-toolbar{padding:12px}.compliance-register-editor .register-metadata{padding:12px}.register-section{margin-bottom:16px}.register-settings{top:84px}}
.checkbox-counterpart-settings{margin-top:16px;border-top:1px solid var(--line);padding-top:12px}
.checkbox-counterpart-settings>summary{cursor:pointer;color:var(--ink);font-size:11px;font-weight:600}
.checkbox-counterpart-settings>.setting-label{display:block;margin:12px 0 0}
.checkbox-counterpart-settings select{display:block;margin-top:7px;font-family:inherit;letter-spacing:normal}
.checkbox-counterpart-settings>.edit-hint{line-height:1.5;margin:10px 0;color:var(--muted)}
.linked-elements-settings{margin-top:16px;border-top:1px solid var(--line);padding-top:12px}
.linked-elements-settings>summary{cursor:pointer;color:var(--ink);font-size:11px;font-weight:600}
.linked-elements-settings .setting-label{display:block;margin:14px 0 0}
.linked-elements-settings select{display:block;margin-top:8px;font-family:inherit;letter-spacing:normal;width:100%}
.linked-elements-settings .edit-hint{line-height:1.5;margin:10px 0;color:var(--muted)}
.element-link-picker{flex-basis:100%;display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--ink);font-size:12px}
.element-link-picker[hidden]{display:none}.element-link-picker button{margin-left:auto;padding:6px 12px;background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:5px;cursor:pointer}
.linking-elements .element-link-target{outline:2px dashed #277a50!important;outline-offset:3px;cursor:crosshair!important;background-color:color-mix(in srgb,#277a50 12%,transparent)!important}
.linking-elements .element-link-target:hover,.linking-elements .element-link-target:focus{outline-style:solid!important;background-color:color-mix(in srgb,#277a50 24%,transparent)!important}
.linking-elements .element-link-source{outline:2px solid var(--purple)!important;outline-offset:3px}
html[data-theme=dark] .linking-elements .element-link-target{outline-color:#9cd6b4!important}
/* The logic tray stays inside the central workspace, below the form. */
.form-logic-tray{height:clamp(280px,46vh,520px);min-height:240px;flex:none;display:flex;flex-direction:column;background:var(--panel);color:var(--ink);border-top:1px solid var(--line);box-shadow:0 -5px 18px #17212e0a;z-index:8;min-width:0}
.form-logic-tray[hidden]{display:none}.form-logic-tray>header{display:flex;align-items:center;gap:10px;padding:10px 14px;flex:none;border-bottom:1px solid var(--line)}
.form-logic-tray>header>div:first-child{margin-right:auto}.form-logic-tray strong{font-size:12px}.form-logic-tray header small{display:block;color:var(--muted);font-size:10px;margin-top:3px}
.form-logic-tray button,.logic-add-menu>summary{background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:6px;padding:6px 9px;cursor:pointer;font:11px 'Plus Jakarta Sans',sans-serif}
.form-logic-tray button:hover,.logic-add-menu>summary:hover{border-color:var(--purple)}.form-logic-tray button:focus-visible,.logic-node-handle:focus-visible{outline:2px solid var(--purple);outline-offset:2px}
.logic-add-menu{position:relative}.logic-add-menu>summary{list-style:none;font-size:11px;font-weight:600;line-height:18px}.logic-add-menu>summary::-webkit-details-marker{display:none}
.logic-add-menu>div{position:absolute;bottom:calc(100% + 8px);right:0;width:270px;padding:6px;border:1px solid var(--line);border-radius:9px;background:var(--panel);box-shadow:0 8px 30px #0003;z-index:10}
.logic-add-menu button{display:block;text-align:left;border:0;width:100%;padding:10px}.logic-add-menu b{font-size:11px}.logic-add-menu small{line-height:1.5}
.logic-zoom{display:flex;align-items:center;gap:5px}.logic-zoom output{font:10px 'DM Mono',monospace;min-width:36px;text-align:center;color:var(--muted)}
.logic-viewport{position:relative;flex:1;min-height:0;overflow:auto;background-color:color-mix(in srgb,var(--panel) 94%,var(--purple));background-image:radial-gradient(var(--line) 1px,transparent 1px);background-size:18px 18px;overscroll-behavior:contain}
.logic-space{position:relative}.logic-world{position:absolute;left:0;top:0;transform-origin:0 0}.logic-connections{position:absolute;inset:0;overflow:visible;pointer-events:none}.logic-connections path{fill:none;stroke:var(--purple);stroke-width:2;opacity:.65}
.logic-node{position:absolute;width:280px;border:1px solid var(--line);border-radius:10px;background:var(--panel);box-shadow:0 3px 10px #0001}.logic-node.logic-rule,.logic-node.logic-group{width:310px}
.logic-node>header{display:flex;align-items:center;padding:8px 10px;border-bottom:1px solid var(--line);border-radius:10px 10px 0 0;background:color-mix(in srgb,var(--purple) 7%,var(--panel))}
.logic-node-handle{flex:1;font-size:11px;font-weight:600;cursor:grab;touch-action:none}.logic-node-handle:active{cursor:grabbing}.logic-node>header button{border:0;padding:1px 6px;font-size:17px}
.logic-node-body{display:grid;gap:9px;padding:13px}.logic-node-body>strong{line-height:1.55;overflow-wrap:anywhere}.logic-node-body small,.logic-node-body p{color:var(--muted);font-size:10px;line-height:1.5;margin:0}.logic-node-body label{font-size:11px;display:grid;gap:6px}
.logic-node-body select,.logic-node-body input{box-sizing:border-box;width:100%;min-width:0;min-height:32px;border:1px solid var(--line);border-radius:6px;padding:6px 8px;background:var(--panel);color:var(--ink);font:11px 'Plus Jakarta Sans',sans-serif}
.logic-node-body select{cursor:pointer}.logic-port{position:absolute;top:50%;width:9px;height:9px;border:2px solid var(--purple);background:var(--panel);border-radius:50%;transform:translateY(-50%)}.logic-port-in{left:-5px}.logic-port-out{right:-5px}
.logic-members{display:grid;gap:6px}.logic-members>span{display:flex;gap:6px;align-items:center;background:color-mix(in srgb,var(--purple) 6%,var(--panel));border-radius:5px;padding:5px 7px;font-size:10px;line-height:1.5}.logic-members button{margin-left:auto;flex:none;border:0;padding:2px 4px}
.logic-empty{position:absolute;top:35%;left:0;right:0;text-align:center;pointer-events:none;color:var(--ink);font-size:13px;line-height:1.8}.logic-empty span{color:var(--muted);font-size:11px}.logic-empty[hidden]{display:none}
.logic-pick-hint{padding:8px 14px;display:flex;align-items:center;gap:8px;font-size:11px;background:color-mix(in srgb,var(--purple) 8%,var(--panel));border-bottom:1px solid var(--line)}.logic-pick-hint[hidden]{display:none}.logic-pick-hint button{margin-left:auto}.form-logic-tray>footer{padding:6px 14px 30px;border-top:1px solid var(--line);font-size:9px;color:var(--muted)}.logic-missing{border-color:#c9784b}
body.preview-mode [data-logic-hidden=true]{display:none!important}
@media(max-width:750px){.form-logic-tray{height:42vh}.form-logic-tray>header{gap:5px;padding:8px}.form-logic-tray>header small{display:none}.logic-zoom{gap:3px}.logic-add-menu>div{right:-100px;width:240px}.form-logic-tray>footer{font-size:8px}}

/* Logic alignment and readable PDF element name tabs. */
.form-logic-tray [data-logic-snap]{display:grid;place-items:center;padding:6px}
.form-logic-tray [data-logic-snap][aria-pressed=true]{color:var(--purple);border-color:var(--purple);background:color-mix(in srgb,var(--purple) 12%,var(--panel))}
.logic-grid-enabled .logic-viewport{background-image:none}
.logic-grid-enabled .logic-world{background-image:radial-gradient(color-mix(in srgb,var(--purple) 45%,transparent) .8px,transparent .8px);background-position:-10px -10px}
body:not(.preview-mode) .pdf-import-field>label:is(:hover,:focus){max-width:min(480px,75vw);width:max-content;white-space:normal;overflow-wrap:anywhere;text-overflow:clip;z-index:20;line-height:1.5;box-shadow:0 3px 10px #0002}
body:not(.preview-mode) .pdf-import-field:has(>label:is(:hover,:focus)){z-index:100!important}
body.linking-elements .pdf-import-field>label{cursor:crosshair}

body:not(.preview-mode) .pdf-import-field>label{z-index:20}

/* Map hover feedback is temporary and never part of the saved form. */
body:not(.preview-mode) #formCanvas .logic-form-highlight{outline:2px solid var(--purple)!important;outline-offset:3px;box-shadow:0 0 0 5px color-mix(in srgb,var(--purple) 16%,transparent)!important}
body:not(.preview-mode) #formCanvas .choice-list label.logic-form-highlight{background:color-mix(in srgb,var(--purple) 16%,transparent)!important}

.logic-node.logic-collection{width:310px}.form-logic-tray [data-logic-arrange]{display:grid;place-items:center;padding:6px}.logic-add-menu>summary{white-space:nowrap}.form-logic-tray>header{flex-wrap:wrap}
/* Builder trays retain accessible rails when collapsed. */
body.desktop-entry-mode:not(.preview-mode) .app-shell{min-width:0;grid-template-columns:var(--builder-left-width,210px) minmax(0,1fr) var(--builder-right-width,280px)}
body:not(.preview-mode):not(.mobile-entry-mode) .app-shell{grid-template-columns:var(--builder-left-width,210px) minmax(0,1fr) var(--builder-right-width,280px)}
.app-shell.builder-left-collapsed{--builder-left-width:38px}.app-shell.builder-right-collapsed{--builder-right-width:38px}
body:not(.preview-mode):not(.mobile-entry-mode) .app-shell>.topbar{grid-column:1/4}
body:not(.preview-mode):not(.mobile-entry-mode) :is(.left-panel,.right-panel){display:flex;min-width:0}
.builder-tray-collapsed{overflow:hidden!important}.builder-tray-collapsed>:not(.panel-heading){display:none!important}
.builder-tray-collapsed>.panel-heading{height:100%;padding:8px 0;flex-direction:column;gap:16px;cursor:pointer;border-bottom:0}
.builder-tray-collapsed>.panel-heading>span{writing-mode:vertical-rl;order:2;white-space:nowrap}
.builder-tray-collapsed>.panel-heading>button{margin:0;order:1;min-width:30px;min-height:30px}
.panel-heading>button:focus-visible,.logic-tray-toggle:focus-visible{outline:2px solid var(--purple);outline-offset:-3px}
body:not(.preview-mode):not(.mobile-entry-mode) .workspace{padding-bottom:48px;min-height:0}
body:not(.preview-mode):not(.mobile-entry-mode) .canvas-area{padding:20px 24px;min-height:60px}
.logic-tray-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;height:34px;flex:none;padding:0 14px;border:0;border-top:1px solid var(--line);background:var(--panel);color:var(--ink);font:600 11px 'Plus Jakarta Sans',sans-serif;cursor:pointer}
.logic-tray-toggle:hover{background:color-mix(in srgb,var(--purple) 8%,var(--panel))}.logic-tray-toggle[hidden],body.preview-mode .logic-tray-toggle,body.mobile-entry-mode .logic-tray-toggle{display:none!important}
.form-logic-tray{min-height:160px;height:min(42vh,460px);max-height:55%;border-top:0}
.form-logic-tray>header>div:first-child{display:none}.form-logic-tray>header{justify-content:flex-end}.form-logic-tray>footer{padding:6px 14px}

.logic-pick-hint{flex-wrap:wrap}.logic-pick-hint label{display:flex;align-items:center;gap:6px}.logic-pick-hint select{background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:5px;padding:5px;font:inherit}.logic-pick-hint [data-logic-review]{margin-left:auto}.logic-pick-hint button[hidden]{display:none}.logic-selection-dialog ul{max-height:35vh;overflow:auto;padding-left:22px;line-height:1.6}.logic-selection-dialog li{margin:7px 0;overflow-wrap:anywhere}.logic-selection-dialog p{color:var(--muted);font-size:12px}.logic-selection-dialog label{display:grid;gap:6px}

body.linking-elements .canvas-area,body.linking-elements .canvas-area *{cursor:crosshair!important;touch-action:none}.logic-pick-marquee{pointer-events:none}
/* Files & Access: a cohesive account library in both themes. */
.account-center{--access-accent:#246b4b;--access-soft:#eaf4ee;--access-surface:#f5f7f8;--access-border:#dce3e4;--access-muted:#586577;--access-danger:#a52b27}
html[data-theme=dark] .account-center{--access-accent:#9edbb8;--access-soft:#233c34;--access-surface:#1c2230;--access-border:#3a4556;--access-muted:#b1bdcc;--access-danger:#ffb4ad}
.account-center.file-page:not(.hidden){background:#101b2b80;backdrop-filter:blur(5px)}
.account-center.file-page>div{display:grid;grid-template-columns:218px minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);width:min(1120px,100%);height:min(780px,calc(100dvh - 112px));border-color:var(--access-border);border-radius:16px;box-shadow:0 24px 80px #0004}
.account-center>div>header{grid-column:1/-1;padding:24px 28px;border-bottom:1px solid var(--access-border);background:var(--panel);gap:20px}
.account-center>div>header h2{font-size:24px;letter-spacing:-.6px;margin:6px 0}.account-center>div>header p{color:var(--access-muted);line-height:1.5}
.account-center-eyebrow{font-size:9px;font-weight:700;letter-spacing:1.3px;color:var(--access-accent)}
.account-center>div>header>button{width:34px;height:34px;padding:0;font-size:23px;flex:none;background:var(--access-surface);border-color:var(--access-border)}
.account-center-tabs{display:flex;flex-direction:column;flex-wrap:nowrap;gap:7px;padding:18px 12px;background:var(--access-surface);border-right:1px solid var(--access-border);overflow:auto}
.account-center-tabs button{display:flex;align-items:center;gap:12px;text-align:left;padding:13px 10px;background:transparent;border:1px solid transparent;color:var(--ink);flex:none;min-width:0}
.account-center-tabs button svg{flex:none;color:var(--access-muted)}.account-center-tabs button b{font-size:11px;font-weight:600;display:block;line-height:1.5}.account-center-tabs button small{font-size:10px;display:block;color:var(--access-muted);line-height:1.6;margin-top:3px}
.account-center-tabs button:hover{background:var(--panel);border-color:var(--access-border)}.account-center-tabs [aria-current=page]{background:var(--access-soft);color:var(--access-accent);border-color:color-mix(in srgb,var(--access-accent) 35%,transparent)}.account-center-tabs [aria-current=page] svg{color:var(--access-accent)}
.account-center-content{padding:22px 24px;min-width:0;background:var(--panel);scrollbar-gutter:stable}
.account-center-content :is(.uploaded-files-page,.uploaded-files-page>div,.team-dialog){background:transparent;color:var(--ink)}
.account-center :is(button,summary,input,select):focus-visible{outline:2px solid var(--access-accent);outline-offset:2px}
.account-center :is(.uploaded-files-actions,.team-section-title){gap:8px;flex-wrap:wrap}.account-center .uploaded-files-actions{padding:14px 0;justify-content:flex-start}
.account-center :is(.uploaded-files-actions button,.uploaded-file-row>button,.team-dialog button){border:1px solid var(--access-border);background:var(--panel);color:var(--ink);border-radius:7px;font:600 11px 'Plus Jakarta Sans',sans-serif;padding:9px 12px;cursor:pointer}
.account-center :is(.uploaded-files-actions button,.uploaded-file-row>button,.team-dialog button):hover{background:var(--access-soft);border-color:var(--access-accent);color:var(--access-accent)}
.account-center [data-delete-all]{color:var(--access-danger)!important;margin-left:auto;order:3}.account-center [data-delete-all]:hover{background:color-mix(in srgb,var(--access-danger) 8%,var(--panel))!important}
.account-center :is(.uploaded-file-row,.team-file,.team-row){padding:16px 14px;border:1px solid var(--access-border);border-radius:9px;margin:10px 0;background:var(--panel);gap:12px}
.account-center :is(.uploaded-file-row,.team-file):hover{background:var(--access-surface)}
.account-center :is(.uploaded-file-row small,.team-dialog p,.team-dialog small,.file-uploader small){color:var(--access-muted)}
.account-center :is(.uploaded-file-row strong,.team-file h4){font-size:12px;line-height:1.6}.account-center .file-uploader{font-size:11px;flex-basis:110px!important}
.account-center .team-file-icon{background:var(--access-soft);color:var(--access-accent)}
.account-center .team-notice:empty{display:none}.account-center .team-notice{background:var(--access-surface);color:var(--access-muted);border:1px solid var(--access-border)}
.account-center .team-table-wrap{border:1px solid var(--access-border);border-radius:9px;margin:18px 0 24px}.account-center .team-dialog th{background:var(--access-surface);font-size:10px;color:var(--access-muted);font-weight:600}.account-center .team-dialog td{font-size:12px}.account-center .team-dialog :is(th,td){border-color:var(--access-border)}.account-center .team-dialog tbody tr:last-child td{border-bottom:0}.account-center .team-dialog tbody tr:hover{background:var(--access-surface)}
.account-center .team-dialog :is(input:not([type=checkbox]),select){background:var(--access-surface);color:var(--ink);border-color:var(--access-border)}
.account-center .team-dialog form footer button:last-child,.account-center .team-dialog form>button:not(.remove-company-access){background:#247d54;color:#fff;border-color:#247d54}
.account-center .storage-summary{border:1px solid var(--access-border);border-radius:9px;background:var(--access-surface);padding:14px;color:var(--access-muted)}
@media(max-width:760px){.account-center.file-page>div{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto minmax(0,1fr)}.account-center>div>header{padding:18px}.account-center-tabs{flex-direction:row;padding:10px 12px;border-right:0;border-bottom:1px solid var(--access-border);gap:6px}.account-center-tabs button{padding:9px;gap:7px}.account-center-tabs button small{display:none}.account-center-tabs button svg{width:17px}.account-center-content{padding:14px}.account-center .uploaded-file-row{flex-wrap:wrap}.account-center .uploaded-file-row>div:first-child{flex-basis:100%}.account-center .uploaded-file-row>.file-uploader{margin-right:auto}.account-center .team-file{flex-wrap:wrap}}
/* Invitation account setup retains the login card and animated backdrop. */
.login-card.invitation-setup-card{width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 100px);overflow:auto;margin:24px 0 60px;text-align:left}
.invitation-profile{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.invitation-profile label:first-child{grid-column:1/-1}
.invitation-profile select{display:block;width:100%;min-height:40px;margin-top:7px;padding:9px;border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--ink);font:12px 'Plus Jakarta Sans',sans-serif}
.invitation-profile[hidden],.invite-password-confirm[hidden]{display:none!important}.invitation-setup-card input[readonly]{background:color-mix(in srgb,var(--ink) 5%,var(--panel));color:var(--muted)}
.invitation-setup-card #authStatus{line-height:1.6}.invitation-setup-card .invite-password-confirm{display:block}
@media(max-width:500px){.invitation-profile{grid-template-columns:1fr}.login-card.invitation-setup-card{padding:24px}}

.invitation-setup-card [hidden]{display:none!important}

.team-groups{margin:24px 0;padding:18px;border:1px solid var(--access-border,var(--line));border-radius:10px;background:var(--access-surface,var(--panel))}.team-groups .team-section-title{margin-bottom:8px}.team-group-list .team-row{gap:16px}.team-group-list .team-row>span{min-width:0;overflow-wrap:anywhere}.team-group-list button{flex-shrink:0}
.invite-storage { min-width:0; margin:12px 0; padding:14px 16px; border:1px solid var(--line); border-radius:12px; background:var(--panel); color:var(--ink); }
.new-company-invite { display:flex!important; align-items:center; gap:9px; padding:12px 14px; border:1px solid var(--line); border-radius:9px; background:color-mix(in srgb,var(--access-accent,#247d54) 7%,var(--panel)); }
.new-company-invite input { width:17px; height:17px; margin:0; accent-color:#247d54; }
.new-company-help { margin-top:-8px!important; }
.new-company-only { display:none; }
.new-company-mode .existing-company-only :disabled { cursor:not-allowed; opacity:.62; }
.new-company-mode .invite-access-summary button:disabled { cursor:not-allowed; opacity:.62; }
.new-company-mode .new-company-only { display:block!important; }
.invitation-profile .invitation-company-name { grid-column:1/-1; }
.invitation-company-name input { box-sizing:border-box; width:100%; display:block; margin-top:7px; padding:11px; border:1px solid var(--line); border-radius:7px; background:var(--panel); color:var(--ink); font:inherit; }
.invite-storage legend { padding:0 6px; font-weight:700; }
.invite-storage p { margin:4px 0 10px; }
.invite-storage small { display:block; margin-top:8px; color:var(--muted); }
.invite-storage-units { display:flex; gap:4px; justify-content:flex-end; margin:0 0 10px; }
.invite-storage-units button { min-width:44px; }
.invite-storage-units button[aria-pressed="true"] { background:var(--ink); color:var(--panel); border-color:var(--ink); }
.invite-storage-totals { display:grid; gap:9px; margin-bottom:16px; }
.invite-storage-metric { display:flex; align-items:baseline; justify-content:space-between; gap:14px; font-size:12px; }
.invite-storage-metric > span { color:var(--muted); }
.invite-storage-metric strong { white-space:nowrap; font-weight:600; }
.invite-storage-help { display:inline-block; position:relative; }
.invite-storage-help button { padding:0 3px!important; min-width:22px; min-height:22px; border:0!important; background:transparent!important; color:inherit!important; font-size:15px!important; }
.invite-storage-help [role=tooltip] { display:none; position:absolute; left:-12px; top:100%; width:min(250px,65vw); padding:10px 12px; border:1px solid var(--line); border-radius:8px; background:var(--panel); color:var(--ink); box-shadow:0 6px 18px #0003; line-height:1.5; z-index:5; font-size:12px; font-weight:400; }
.invite-storage-help:hover [role=tooltip],.invite-storage-help:focus-within [role=tooltip] { display:block; }
.invite-access-dialog,.request-send-dialog,.request-view-dialog { width:min(760px,calc(100vw - 32px)); max-height:88dvh; overflow:auto; border:1px solid var(--line); border-radius:14px; padding:22px; background:var(--panel); color:var(--ink); font:13px 'Plus Jakarta Sans',sans-serif; }
.invite-access-dialog::backdrop,.request-send-dialog::backdrop,.request-view-dialog::backdrop { background:#10271c80; }
.invite-access-dialog header,.invite-access-dialog footer,.request-send-dialog footer,.request-view-dialog header { display:flex; gap:12px; justify-content:space-between; align-items:center; }
.invite-access-dialog h2,.request-view-dialog h2 { margin:0; font-size:20px; }
.invite-access-dialog footer,.request-send-dialog footer { margin-top:20px; justify-content:flex-end; }
.invite-access-dialog button,.request-send-dialog button,.request-view-dialog button,.form-requests-pane button,.request-share-menu button { font:inherit; color:var(--ink); background:var(--panel); border:1px solid var(--line); border-radius:8px; padding:9px 12px; cursor:pointer; }
.invite-access-dialog select,.request-send-dialog input,.form-requests-pane select { font:inherit; background:var(--panel); color:var(--ink); border:1px solid var(--line); border-radius:7px; padding:9px; }
.access-check,.access-tree summary { display:block; padding:7px 0; }.access-tree details>div { padding-left:22px; border-left:1px solid var(--line); }.access-tree input { margin-right:8px; }
.access-review label { display:flex; justify-content:space-between; gap:12px; padding:12px 0; border-bottom:1px solid var(--line); }.access-review small,.invite-access-summary small { display:block; color:var(--muted); margin-top:6px; }
.invite-access-summary { padding:12px 0; }.invite-counter { color:var(--muted); }
.show-form-requests .uploaded-files-page,.show-form-requests .team-dialog { display:none!important; }.form-requests-pane header { display:flex; gap:14px; align-items:center; flex-wrap:wrap; }.request-list article { display:flex; align-items:center; justify-content:space-between; gap:12px; border-bottom:1px solid var(--line); padding:16px 0; }.request-list small { display:block; color:var(--muted); margin-top:5px; }.request-actions { display:flex; gap:7px; flex-wrap:wrap; }
.request-share-menu { position:relative; }.request-share-menu summary { display:flex; padding:9px; border:1px solid var(--line); border-radius:8px; cursor:pointer; }.request-share-menu>div { position:absolute; right:0; min-width:230px; padding:8px; background:var(--panel); border:1px solid var(--line); border-radius:10px; z-index:100; box-shadow:0 8px 28px #0003; }.request-share-menu button { display:block; width:100%; text-align:left; border:0; }.request-view-dialog iframe { width:100%; height:55dvh; border:1px solid var(--line); margin-top:12px; }.request-view-dialog pre { white-space:pre-wrap; overflow-wrap:anywhere; }.request-send-dialog label { display:grid; gap:8px; }
@media(max-width:640px){.request-list article{align-items:flex-start;flex-direction:column}}

body.preview-mode .top-actions>.request-share-menu:not([hidden]){display:block!important}

/* Form lifecycle remains legible in every Explorer layout and theme. */
.file-type-icon.form-draft{color:#97601d;background:#fbefda}
.file-type-icon.form-published{color:#206b4c;background:#e1f1e8}
html[data-theme="dark"] .file-type-icon.form-draft{color:#f2c17a;background:#3c3020}
html[data-theme="dark"] .file-type-icon.form-published{color:#8cdbb3;background:#203c31}
:is(#workspaceFolders,#folderViewerList) .form-status-caption{display:block;color:var(--muted);font-size:10px;font-weight:400;line-height:1.6;letter-spacing:0;white-space:nowrap}
:is(#workspaceFolders,#folderViewerList)[data-layout] .has-form-status .explorer-name{height:auto;min-height:36px;display:block;-webkit-line-clamp:unset}
:is(#workspaceFolders,#folderViewerList):is([data-layout="tiles"],[data-layout="content"]) .has-form-status .explorer-type{display:none}

html[data-theme="dark"] :is(#workspaceFolders,#folderViewerList) .has-form-status{--panel:#232a38;--ink:#eef0f6;--muted:#b4bdcd;--line:#454e62}
:is(#workspaceFolders,#folderViewerList) .explorer-art .file-type-icon.form-draft{color:#97601d;background:#fbefda}
:is(#workspaceFolders,#folderViewerList) .explorer-art .file-type-icon.form-published{color:#206b4c;background:#e1f1e8}
html[data-theme="dark"] :is(#workspaceFolders,#folderViewerList) .explorer-art .file-type-icon.form-draft{color:#f2c17a;background:#3c3020}
html[data-theme="dark"] :is(#workspaceFolders,#folderViewerList) .explorer-art .file-type-icon.form-published{color:#8cdbb3;background:#203c31}

/* One line-symbol family for file browsing, including nested folder previews. */
.file-type-icon.file-symbol svg{width:24px;height:24px;max-width:100%;max-height:100%;flex:none}
:is(#workspaceFolders,#folderViewerList) .explorer-art .file-symbol,.file-type-icon.file-symbol{color:#276a53;background:#e8f2ed;border-radius:8px}
:is(#workspaceFolders,#folderViewerList) .explorer-art :is(.symbol-folder,.symbol-pdf,.symbol-archive,.symbol-presentation),.file-symbol:is(.symbol-folder,.symbol-pdf,.symbol-archive,.symbol-presentation){color:#966026;background:#f8eedf}
html[data-theme="dark"] :is(#workspaceFolders,#folderViewerList) .explorer-entry{--panel:#232a38;--ink:#eef0f6;--muted:#b4bdcd;--line:#454e62}
html[data-theme="dark"] :is(#workspaceFolders,#folderViewerList) .explorer-art .file-symbol,html[data-theme="dark"] .file-type-icon.file-symbol{color:#96d9b8;background:#253d33}
html[data-theme="dark"] :is(#workspaceFolders,#folderViewerList) .explorer-art :is(.symbol-folder,.symbol-pdf,.symbol-archive,.symbol-presentation),html[data-theme="dark"] .file-symbol:is(.symbol-folder,.symbol-pdf,.symbol-archive,.symbol-presentation){color:#edbd80;background:#403324}
.uploaded-file-description{display:grid;grid-template-columns:34px minmax(0,1fr);column-gap:10px;align-items:center}
.uploaded-file-description>.uploaded-file-symbol{grid-column:1;grid-row:1/3}
.uploaded-file-description>.uploaded-file-symbol .file-symbol{width:32px;height:36px;margin:0;display:flex;align-items:center;justify-content:center}
.uploaded-file-description>strong,.uploaded-file-description>small{grid-column:2}

html[data-theme="dark"] :is(#workspaceFolders,#folderViewerList) .explorer-entry{background-color:#232a38!important;border-color:#454e62}
html[data-theme="dark"] :is(#workspaceFolders,#folderViewerList) .explorer-entry:hover{background-color:#2b3741!important}
html[data-theme="dark"] :is(#workspaceFolders,#folderViewerList) .explorer-entry.explorer-selected{background-color:#2e433b!important}
.dashboard-file .explorer-art{display:flex!important;width:32px!important;height:32px!important;flex:none}

/* Center symbols independently of register text spacing; scale with the chosen view. */
.file-type-icon.file-symbol{display:inline-flex;align-items:center;justify-content:center;line-height:1}
.file-type-icon.file-symbol>svg{display:block;width:28px;height:28px;margin:0;flex:none}
:is(#workspaceFolders,#folderViewerList)[data-layout] .explorer-art{display:flex;align-items:center;justify-content:center;margin:0}
:is(#workspaceFolders,#folderViewerList)[data-layout] .explorer-art .file-symbol{display:flex;align-items:center;justify-content:center;margin:0;padding:3px;line-height:1}
:is(#workspaceFolders,#folderViewerList)[data-layout] .explorer-art .file-symbol>svg{width:80%;height:80%;max-width:72px;max-height:72px;margin:0}
:is(#workspaceFolders,#folderViewerList)[data-layout]:is([data-layout="details"],[data-layout="list"],[data-layout="small"]){--entry-icon:30px}
.compliance-register-card .file-type-icon.file-symbol,.compliance-register-card .explorer-art{margin-top:0;display:flex;align-items:center;justify-content:center}
.explorer-content-icon .file-symbol>svg{width:20px;height:20px}
.dashboard-file .explorer-art{width:38px!important;height:38px!important}

.request-send-dialog textarea{width:100%;box-sizing:border-box;resize:vertical;min-height:100px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--ink);font:inherit;line-height:1.6}.request-send-dialog [id="recipientHelp"]{display:block;margin-top:8px;color:var(--muted);line-height:1.6}.request-send-results{max-height:200px;overflow:auto;padding-left:20px;font-size:12px;line-height:1.8;overflow-wrap:anywhere}.request-send-results [data-result="failed"]{font-weight:600}

/* Document actions belong to the form toolbar, below the app header. */
.form-page-controls .form-document-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-left:auto;flex-shrink:0}
.form-page-controls .form-document-actions .request-share-menu:not([hidden]){display:block}
.form-page-controls .form-document-actions .request-share-menu summary{display:grid;place-items:center;width:34px;height:34px;padding:6px;box-sizing:border-box;color:var(--ink);background:var(--panel)}
body.desktop-entry-mode .app-shell .form-page-controls:has(.form-document-actions){overflow:visible;flex-wrap:wrap}
body.mobile-entry-mode.mobile-single-page:not(.mobile-form-fullscreen) .form-page-controls:has(.form-document-actions){display:flex!important;flex-wrap:wrap}
body.mobile-entry-mode .form-document-actions .request-share-menu summary,body.mobile-entry-mode .form-document-actions .icon-btn{width:44px;height:44px}
.form-document-actions .form-save-status{max-width:140px}
@media(max-width:600px){.form-page-controls:has(.form-document-actions){flex-wrap:wrap}.form-document-actions .form-save-status{max-width:90px;white-space:normal}.form-document-actions .request-share-menu>div{min-width:220px;max-width:calc(100vw - 32px)}}

/* Anchor the form storage reveal beside its fixed capacity button. */
body .topbar > #headerStorageCapacity{margin-right:0}
body .topbar > .top-actions:has(+ #headerStorageCapacity){flex-shrink:0}

/* Preview retains tray controls, but omits the builder-only tray frame and guidance. */
body.preview-mode .form-canvas::before,body.preview-mode .form-canvas>.actions-tray-info{display:none!important}

/* Login announcements share the account settings theme and responsive shell. */
.news-dialog{width:min(720px,calc(100vw - 32px))}
.news-dialog .preferences-header>div{flex:1}
.news-eyebrow{display:block;margin-bottom:10px;color:var(--pref-accent);font-size:10px;font-weight:800;letter-spacing:1.5px}
.news-entry{margin-top:14px;border:1px solid var(--pref-line);border-radius:12px;background:var(--pref-soft)}
.news-entry summary{padding:18px;cursor:pointer;list-style:none}
.news-entry summary::-webkit-details-marker{display:none}
.news-entry summary small,.news-entry summary strong,.news-entry summary span,.news-entry summary em{display:block}
.news-entry summary small{color:var(--pref-accent);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px}
.news-entry summary strong{margin:7px 0;font-size:16px}
.news-entry summary span{font-size:12px;color:var(--pref-muted);line-height:1.65}
.news-entry summary em{margin-top:12px;color:var(--pref-accent);font-size:12px;font-style:normal;font-weight:700}
.news-entry[open] summary em{display:none}
.news-entry>div{padding:0 18px 18px}
.news-footer{flex-wrap:wrap;gap:14px}
.news-footer label{display:flex;align-items:center;gap:9px;font-size:12px;cursor:pointer}
.news-footer input{width:17px;height:17px;accent-color:var(--pref-accent)}
.news-footer p{flex-basis:100%;order:3}
.news-dialog summary:focus-visible{outline:3px solid var(--pref-accent);outline-offset:3px;border-radius:12px}
@media(max-width:540px){.news-footer .preferences-done{width:100%}.news-footer p{max-width:none}}
.news-metadata{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;margin-top:10px;font-size:11px;color:var(--pref-muted)}
.news-metadata b{font-weight:700;color:var(--pref-accent)}
.news-metadata time{white-space:nowrap}

/* Give the current release a larger, more prominent reading area. */
.news-dialog [data-recent-news] .news-entry{background:var(--pref-tint);border-color:var(--pref-accent)}
.news-dialog [data-recent-news] summary{padding:24px}
.news-dialog [data-recent-news] summary strong{font-size:24px;line-height:1.3;margin:12px 0}
.news-dialog [data-recent-news] summary span{font-size:14px;line-height:1.75}
.news-dialog [data-recent-news] summary small{font-size:11px}
.news-dialog [data-recent-news] .news-metadata{font-size:12px}
.news-dialog [data-recent-news] .news-entry>div{padding:0 24px 24px}
.news-dialog [data-recent-news] .news-entry>div p{font-size:14px}
.news-dialog [data-past-news] summary{padding:14px 16px}
.news-dialog [data-past-news] summary strong{font-size:14px}
@media(max-width:540px){.news-dialog [data-recent-news] summary{padding:20px}.news-dialog [data-recent-news] summary strong{font-size:21px}.news-dialog [data-recent-news] .news-entry>div{padding:0 20px 20px}}

/* A single announcement and paged details replace the scrolling news list. */
.preferences-dialog.news-dialog{width:min(720px,calc(100vw - 32px));height:min(580px,calc(100dvh - 32px));max-height:calc(100dvh - 32px)}
.news-dialog .preferences-header{padding:22px 26px}
.news-dialog .preferences-header h2{font-size:26px;line-height:1.3;overflow-wrap:anywhere}
.news-dialog .news-eyebrow{margin-bottom:8px}
.news-body{flex:1;min-height:0;display:flex;flex-direction:column;gap:14px;padding:20px 26px}
.news-tabs{display:flex;gap:5px;flex-shrink:0;background:var(--pref-soft);border:1px solid var(--pref-line);border-radius:9px;padding:4px;align-self:flex-start}
.news-tabs button{padding:8px 14px;border:0;border-radius:6px;color:var(--pref-muted);background:transparent;font-size:12px;font-weight:600;cursor:pointer}
.news-tabs button[aria-selected=true]{background:var(--pref-bg);color:var(--pref-accent);box-shadow:0 1px 4px #0001}
.news-release-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-shrink:0;font-size:11px;color:var(--pref-muted)}
.news-release-nav button,.news-reading button{border:0;background:transparent;color:var(--pref-accent);font-size:12px;cursor:pointer;padding:5px 0;font-weight:600}
.news-card{flex:1;min-height:0;display:flex;flex-direction:column;padding:22px;border:1px solid var(--pref-line);border-left:3px solid var(--pref-accent);border-radius:10px;background:var(--pref-tint)}
.news-card .news-metadata{margin:0;flex-shrink:0;gap:8px 12px;font-size:11px}
.news-metadata>span{margin-left:auto;font-size:10px;color:var(--pref-muted)}
.news-metadata>span[data-current-version]{margin-left:0;padding:3px 7px;border:1px solid color-mix(in srgb,var(--pref-accent) 26%,transparent);border-radius:999px;background:var(--pref-tint);color:var(--pref-accent);font-weight:700;white-space:nowrap}
.news-dialog .news-card h3{font-size:24px;line-height:1.3;margin:14px 0 12px;flex-shrink:0;overflow-wrap:anywhere;letter-spacing:-.5px}
.news-card-past{background:var(--pref-soft);border-left:1px solid var(--pref-line)}
.news-dialog .news-card-past h3{font-size:19px}
.news-copy{flex:1;min-height:0;overflow:hidden}
.news-dialog .news-copy p{margin:0;font-size:15px;line-height:1.75;color:var(--pref-ink);overflow-wrap:anywhere}
.news-card-past .news-copy p{font-size:14px}
.news-reading{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-shrink:0;margin-top:12px;min-height:30px}
.webmaster-only-mark{display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;flex:0 0 15px;color:#b18227;vertical-align:middle}
.webmaster-only-mark svg{display:block;width:15px;height:15px;fill:currentColor}
.webmaster-marked{align-items:center;gap:6px}
.webmaster-directory .webmaster-marked,.webmaster-directory [data-wm-role]+.webmaster-only-mark{display:inline-flex}
.webmaster-company-actions .webmaster-marked{display:inline-flex}
.team-dialog [data-webmaster-only] .webmaster-only-mark{margin-left:6px}
.news-admin-delete{display:inline-flex;align-items:center;gap:4px}
.news-reading .news-delete-update{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:5px;border:0;border-radius:8px;background:transparent;color:#c7353f;cursor:pointer}
.news-reading .news-delete-update svg{display:block;width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.news-reading .news-delete-update:hover{background:#fde8e9;color:#ad202c}
html[data-theme="dark"] .news-reading .news-delete-update:hover{background:#512a30;color:#ff9197}
.news-reading .news-delete-update:focus-visible{outline:2px solid #c7353f;outline-offset:2px}
.news-page-nav{display:flex;align-items:center;gap:8px;color:var(--pref-muted);font-size:11px}
.news-page-nav button{padding:5px 8px;min-width:30px;border:1px solid var(--pref-line);border-radius:5px}
.news-dialog button:disabled{opacity:.4;cursor:default}
.news-dialog [hidden]{display:none!important}
.news-dialog .news-footer{flex-wrap:nowrap;padding:16px 26px;gap:16px;align-items:center}
.news-footer>div{min-width:0}
.news-dialog .news-footer label{font-size:12px;line-height:1.5}
.news-dialog .news-footer p{margin:6px 0 0;font-size:10px;line-height:1.5}
.news-dialog .news-footer .preferences-done{flex-shrink:0;width:auto}
@media(max-width:540px){
 .preferences-dialog.news-dialog{width:calc(100vw - 24px);height:min(620px,calc(100dvh - 24px));max-height:calc(100dvh - 24px)}
 .news-dialog .preferences-header{padding:18px}.news-dialog .preferences-header h2{font-size:23px}
 .news-body{padding:16px 18px;gap:12px}.news-card{padding:18px}
 .news-dialog .news-card h3{font-size:22px}.news-dialog .news-card-past h3{font-size:18px}
 .news-dialog .news-copy p{font-size:14px;line-height:1.65}
 .news-dialog .news-footer{padding:14px 18px;gap:10px}.news-dialog .news-footer label{font-size:11px}
 .news-dialog .news-footer .preferences-done{min-width:76px;padding:11px 13px}
}
@media(max-height:650px){
 .news-dialog .preferences-header{padding:12px 18px}.news-dialog .preferences-header h2{font-size:21px}
 .news-dialog .preferences-header p{display:none}.news-dialog .news-eyebrow{margin-bottom:5px}
 .news-body{padding:12px 18px;gap:9px}.news-card{padding:14px}
 .news-dialog .news-card h3{font-size:20px;margin:10px 0}.news-dialog .news-card-past h3{font-size:17px}
 .news-dialog .news-footer{padding:10px 18px}.news-reading{margin-top:8px}
}
@media(max-height:450px) and (min-width:600px){
 .news-body{display:grid;grid-template-columns:150px minmax(0,1fr);grid-template-rows:auto 1fr;gap:12px}
 .news-tabs{flex-direction:column;align-self:start;grid-column:1;grid-row:1}.news-release-nav{grid-column:1;grid-row:2;align-self:start;flex-wrap:wrap}
 .news-card{grid-column:2;grid-row:1/3}.news-dialog .news-card h3{font-size:19px;margin:8px 0}
 .news-dialog .news-card-past h3{font-size:17px}.news-dialog .news-copy p{font-size:13px;line-height:1.6}
 .news-dialog .preferences-header{padding:10px 18px}.news-dialog .news-eyebrow{font-size:9px}
 .news-dialog .news-footer{padding:8px 18px}
}

/* Full release text belongs in a larger, independently scrollable dialog. */
.preferences-dialog.news-details-dialog{width:min(900px,calc(100vw - 32px));height:min(760px,calc(100dvh - 32px));max-height:calc(100dvh - 32px)}
.news-details-dialog .preferences-header>div{flex:1;min-width:0}
.news-details-dialog h2{font-size:24px;line-height:1.35;overflow-wrap:anywhere}
.news-details-content{flex:1;min-height:0;padding:24px 30px;overflow-y:auto;overscroll-behavior:contain}
.news-details-dialog .news-details-content p{font-size:15px;line-height:1.8;margin:0 0 20px;overflow-wrap:anywhere}
.news-details-dialog [data-full-summary]{font-weight:600;color:var(--pref-ink)}
.news-details-dialog .preferences-footer{justify-content:flex-end}
@media(max-width:540px){.preferences-dialog.news-details-dialog{width:calc(100vw - 16px);height:calc(100dvh - 16px);max-height:calc(100dvh - 16px)}.news-details-dialog .preferences-header{padding:18px}.news-details-dialog h2{font-size:21px}.news-details-content{padding:20px}.news-details-dialog .preferences-footer{padding:12px 20px}}

/* News controls live beside version and update information in About. */
.about-news-settings{margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}
.about-content .about-news-settings h3{font-size:17px;margin:0 0 14px}
.about-news-toggle{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:13px;cursor:pointer}
.about-news-toggle small{display:block;margin-top:4px;color:var(--muted);font-size:12px;line-height:1.6}
.about-news-toggle input{flex-shrink:0;width:19px;height:19px;accent-color:#277a50;cursor:pointer}
.about-news-settings button{margin-top:16px;border:1px solid var(--line);border-radius:7px;padding:10px 14px;background:var(--panel);color:var(--ink);font:600 12px 'Plus Jakarta Sans',sans-serif;cursor:pointer}
.about-news-settings [role=status]{font-size:11px;color:var(--muted);line-height:1.6;margin:10px 0 0}
.about-news-settings :is(input,button):focus-visible{outline:3px solid #277a50;outline-offset:3px}

/* Compact About layout keeps update actions and splash controls together. */
.about-dialog{width:min(740px,calc(100vw - 32px));max-height:calc(100dvh - 24px);overflow:hidden}
.about-shell{display:flex;flex-direction:column}
.about-dialog header{padding:14px 22px;gap:12px}
.about-dialog header h2{font-size:17px;line-height:1.35}
.about-dialog .about-content{max-width:none;padding:20px 22px;overflow:visible;line-height:1.5;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;box-sizing:border-box}
.about-dialog .about-summary>.brand{margin:0 0 10px;width:auto;transform-origin:left center}
.about-description{font-size:12px;color:var(--muted);margin:0 0 16px;line-height:1.7}
.about-dialog .about-content dl{display:grid;grid-template-columns:1fr 1fr;gap:16px 14px;margin:0}
.about-content dl>div{min-width:0}
.about-dialog .about-content dt{font-size:10px;color:var(--muted);margin:0 0 4px;line-height:1.4}
.about-dialog .about-content dd{font-size:12px;line-height:1.6;margin:0;overflow-wrap:anywhere}
.about-dialog .about-content [data-about-version]{font-weight:700;color:#277a50;font-size:14px}
.about-controls{min-width:0;display:flex;flex-direction:column;gap:18px}
.about-dialog .about-controls h3{font-size:14px;margin:0 0 12px;line-height:1.4}
.about-dialog .about-update-actions,.about-dialog .about-news-settings{margin:0;padding:0;border:0}
.about-update-buttons{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.about-dialog .about-update-actions button{padding:9px 12px;min-height:36px;font-size:11px}
.about-dialog .about-update-actions a{font-size:11px;text-underline-offset:3px}
.about-dialog .about-update-actions p,.about-dialog .about-news-settings [role=status]{margin:8px 0 0;font-size:10px;line-height:1.5;min-height:0;overflow-wrap:anywhere}
.about-dialog .about-news-settings{padding-top:16px;border-top:1px solid var(--line)}
.about-dialog .about-news-toggle{font-size:12px;line-height:1.5;gap:10px}
.about-dialog .about-news-settings button{margin-top:12px;padding:9px 12px;font-size:11px;min-height:36px}
@media(max-width:580px){
 .about-dialog{width:calc(100vw - 24px)}.about-dialog header{padding:12px 16px}.about-dialog header h2{font-size:16px}
 .about-dialog .about-content{grid-template-columns:1fr;padding:16px;gap:16px}
 .about-dialog .about-summary>.brand{margin-bottom:6px}.about-description{margin:0 0 12px;font-size:11px;line-height:1.5}
 .about-dialog .about-content dl{gap:10px 14px}.about-dialog .about-content dd{font-size:11px;line-height:1.4}
 .about-controls{gap:14px}.about-dialog .about-controls h3{margin-bottom:8px}
 .about-dialog .about-news-settings{padding-top:12px}
}
@media(max-height:650px){
 .about-dialog .about-content{padding:12px 16px;gap:14px}.about-dialog header{padding:9px 16px}
 .about-dialog .about-description{font-size:11px;line-height:1.4;margin-bottom:10px}
 .about-dialog .about-content dl{gap:8px 12px}.about-dialog .about-content dt{margin-bottom:2px}
 .about-dialog .about-summary>.brand{margin-bottom:6px}.about-controls{gap:12px}
 .about-dialog .about-news-settings{padding-top:10px}.about-dialog .about-controls h3{margin-bottom:8px}
 .about-dialog .about-news-settings button{margin-top:9px}
}
.appearance-accent-controls input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent,#6558e8)}
.appearance-presets .custom-image-note,.appearance-presets [data-upload-device-image]{grid-column:1/-1}
.appearance-preset>img{display:block;width:100%;height:110px;object-fit:cover;border-radius:7px}

/* Optional readability surfaces follow each saved background's text and contrast colors. */
.custom-appearance.appearance-text-boxes{--readability-surface:color-mix(in srgb,var(--appearance-surface) 93%,var(--appearance-color));--readability-edge:color-mix(in srgb,var(--appearance-ink) 13%,transparent);--readability-highlight:color-mix(in srgb,var(--appearance-ink) 5%,transparent)}
.custom-appearance.appearance-text-boxes :is(.workspace-title h1,.workspace-title p,.folder-heading>h2,.folder-heading>h3,.folder-heading>.eyebrow,#folderViewerTitle,#folderViewerType,#folderViewerCount,.folder-viewer-empty,.appearance-preview>span,.appearance-preview>strong,.appearance-preview>small,.appearance-tile-name,.workspace-card-copy>small,.explorer-meta,.form-status-caption,.folder-open b,.folder-open small,.folder-file-info b,.folder-file-info small,.explorer-name,.explorer-folder-preview,.empty-location-title,.empty-location-hint){background:var(--readability-surface)!important;background-image:linear-gradient(145deg,var(--readability-highlight),transparent 70%)!important;color:var(--appearance-ink)!important;border:1px solid var(--readability-edge);border-radius:10px;padding:6px 10px;box-shadow:0 3px 12px #0000000d,inset 0 1px 0 var(--readability-highlight);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-decoration-break:clone;-webkit-box-decoration-break:clone;max-width:100%;width:fit-content;text-shadow:none}
.custom-appearance.appearance-text-boxes :is(.workspace-title h1,#folderViewerTitle,.appearance-preview>strong,.empty-location-title){padding:8px 14px;letter-spacing:-.025em;border-radius:12px;margin-bottom:6px}
.custom-appearance.appearance-text-boxes :is(.workspace-title p,#folderViewerType,#folderViewerCount,.appearance-preview>span,.appearance-preview>small,.folder-open small,.folder-file-info small,.explorer-meta,.explorer-folder-preview,.empty-location-hint){font-weight:500;border-radius:7px;box-shadow:none;padding:4px 8px;line-height:1.5}
.custom-appearance.appearance-text-boxes :is(#folderViewerType,#folderViewerCount){display:table;margin-block:4px}
.custom-appearance.appearance-text-boxes :is(.workspace-card-copy,.workspace-card-footer){border-radius:12px;padding:9px 12px;text-align:inherit}
.custom-appearance.appearance-text-boxes .explorer-folder-preview:has(.explorer-content-icon){background:transparent!important;background-image:none!important;border:0;padding:0;box-shadow:none;backdrop-filter:none}
.custom-appearance.appearance-text-boxes :is(.explorer-art:not(:has(img)),.workspace-card-icon,.explorer-content-icon){background:var(--readability-surface);background-image:linear-gradient(145deg,var(--readability-highlight),transparent);color:var(--appearance-ink);border:1px solid var(--readability-edge);border-radius:12px;box-shadow:0 2px 8px #0000000a;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.custom-appearance.appearance-text-boxes .workspace-card-icon{display:inline-flex;align-items:center;justify-content:center;padding:0;flex-shrink:0;opacity:1}
.custom-appearance.appearance-text-boxes :is(.workspace-choice-menu,.folder-options>summary,.file-options>summary,.tile-menu,.surface-element-menu>summary,.surface-options>summary,.explorer-icon){background:var(--readability-surface)!important;color:var(--appearance-ink)!important;border:1px solid var(--readability-edge)!important;border-radius:9px!important;box-shadow:0 2px 7px #0000000d;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.custom-appearance.appearance-text-boxes :is(.workspace-choice-menu,.folder-options>summary,.file-options>summary,.tile-menu,.surface-element-menu>summary,.surface-options>summary,.explorer-icon):hover{background:color-mix(in srgb,var(--readability-surface) 90%,var(--appearance-ink))!important;border-color:color-mix(in srgb,var(--appearance-ink) 28%,transparent)!important}
.custom-appearance.appearance-text-boxes :is(.workspace-choice-menu,.folder-options>summary,.file-options>summary,.tile-menu,.surface-element-menu>summary,.surface-options>summary,.explorer-icon):focus-visible{outline:2px solid var(--appearance-ink);outline-offset:3px}
@media(prefers-reduced-transparency:reduce){.custom-appearance.appearance-text-boxes{--readability-surface:var(--appearance-surface)}}
.custom-appearance.appearance-text-boxes-off :is(.workspace-title h1,.workspace-title p,.folder-heading>h2,.folder-heading>h3,.folder-heading>.eyebrow,#folderViewerTitle,#folderViewerType,#folderViewerCount,.folder-viewer-empty,.appearance-preview>span,.appearance-preview>strong,.appearance-preview>small,.workspace-card-copy,.workspace-card-footer,.folder-open b,.folder-open small,.folder-file-info b,.folder-file-info small,.explorer-name,.explorer-folder-preview,.empty-location-title,.empty-location-hint){background:transparent!important;text-shadow:none}

.custom-appearance.appearance-text-boxes .explorer-art:not(:has(img))>.file-symbol{background:transparent!important;color:var(--appearance-ink)!important;border-color:transparent;box-shadow:none}

.custom-appearance.appearance-text-boxes :is(.workspace-card-copy,.workspace-card-top){background:transparent!important;background-image:none!important;border:0;box-shadow:none;backdrop-filter:none;padding:0}
.custom-appearance.appearance-text-boxes .appearance-tile-name{display:block;padding:6px 9px;border-radius:10px}
.custom-appearance.appearance-text-boxes .workspace-card-copy>small{display:block;padding:4px 7px;margin-top:5px;border-radius:7px}
.custom-appearance.appearance-text-boxes .form-status-caption{display:block;margin-top:4px;padding:2px 5px;border-radius:5px;font-weight:500}

/* Keep readability on individual labels, never their shared card or text wrappers. */
.custom-appearance.appearance-text-boxes :is(.workspace-choice-open,.workspace-card-copy,.workspace-card-top,.workspace-card-footer,.folder-open>span:not(.explorer-art):not(.explorer-meta):not(.explorer-folder-preview),.surface-title-group){background:transparent!important;background-image:none!important;border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.custom-appearance.appearance-text-boxes .workspace-card-icon{padding:0!important;flex:0 0 22px;min-width:22px;min-height:22px;box-sizing:border-box}
.custom-appearance.appearance-text-boxes .workspace-card-icon svg{flex:none;width:20px!important;height:20px!important;max-width:none;max-height:none}

/* Readability icon badges are rounded squares, including compact workspace symbols. */
.custom-appearance.appearance-text-boxes :is(.workspace-card-icon,.explorer-art:not(:has(img)),.explorer-content-icon){border-radius:6px!important}
.custom-appearance.appearance-text-boxes .explorer-art:not(:has(img))>.file-symbol{border-radius:6px!important}
body:not(.preview-mode) .logic-node.logic-map-highlight{outline:2px solid var(--purple);outline-offset:3px;box-shadow:0 0 0 5px color-mix(in srgb,var(--purple) 16%,transparent)}
.logic-connections path.logic-edge-highlight{stroke:var(--purple);stroke-width:3;opacity:1}
/* Viewing actions sit immediately before Share; zoom stays centered independently. */
body.preview-mode:not(.mobile-entry-mode) .form-page-controls{position:relative;min-height:56px}
body.preview-mode:not(.mobile-entry-mode) .form-page-controls>.canvas-controls{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);margin:0!important;z-index:1}
body.preview-mode:not(.mobile-entry-mode) .form-page-controls>.form-document-actions{margin-left:auto;max-width:calc(50% - 110px);flex-wrap:wrap;justify-content:flex-end}
body.preview-mode .form-document-actions>.page-filling-actions{margin:0;flex-wrap:wrap;justify-content:flex-end;min-width:0;gap:6px;flex:0 1 auto}
body.preview-mode .form-document-actions>.page-filling-actions>button{flex-shrink:0}

.logic-node.logic-logicgroup{width:310px}.logic-logicgroup>.logic-node-body>p{line-height:1.45}

.logic-node:has(>.logic-group-content){width:max-content;min-width:340px;max-width:none}.logic-group-content{display:flex;align-items:flex-start;gap:20px;padding:20px;border-top:1px solid var(--line);min-height:100px}.logic-group-content[hidden],.logic-node-body[hidden]{display:none}.logic-group-content>.logic-node{position:relative;flex:none;left:auto;top:auto}.logic-node{cursor:grab;touch-action:none}.logic-node input,.logic-node select,.logic-node button{cursor:auto;touch-action:auto}.logic-dragging{z-index:50}.logic-exclusive{display:flex!important;align-items:center}.logic-exclusive input{width:16px;min-height:16px}.logic-node>[data-collapse]{margin:8px 12px}.logic-members{display:none}

.logic-node.logic-group-box{width:max-content;min-width:360px;border:2px solid color-mix(in srgb,var(--purple) 55%,var(--line));background:color-mix(in srgb,var(--purple) 3%,var(--panel));box-shadow:none}.logic-group-box>.logic-group-content{display:block;position:relative;padding:0;border:0;min-height:180px}.logic-group-content>.logic-node{position:absolute}.logic-group-box>header{gap:8px;padding:7px 10px}.logic-group-box>header>[data-collapse]{font-size:11px;white-space:nowrap}.logic-group-settings{position:relative;font-size:11px;cursor:pointer}.logic-group-settings>summary{white-space:nowrap}.logic-group-settings>.logic-node-body{position:absolute;z-index:60;top:28px;right:0;width:280px;background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 6px 20px #0002}.logic-group-box:has(>.logic-group-content[hidden]){width:360px}.logic-connections{z-index:25}.logic-group-content[hidden]{display:none}

.form-logic-tray [data-logic-expand]{display:grid;place-items:center;padding:6px}.logic-map-dialog{box-sizing:border-box;width:94vw;height:90dvh;max-width:1800px;max-height:none;padding:0;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--ink);box-shadow:0 20px 80px #0005;overflow:hidden}.logic-map-dialog::backdrop{background:#17212e66;backdrop-filter:blur(3px)}.logic-map-dialog>.form-logic-tray{width:100%;height:100%;max-height:none;min-height:0;margin:0;border-radius:13px;box-shadow:none}.logic-map-dialog .form-logic-tray>header>div:first-child{display:block}.logic-map-dialog .logic-viewport{min-height:0;flex:1}.logic-map-dialog .form-logic-tray>footer{flex:none}@media(max-width:600px){.logic-map-dialog{width:96vw;height:94dvh;border-radius:10px}.logic-map-dialog .form-logic-tray>header>div:first-child{display:none}}

.logic-map-dialog .logic-add-menu>div{top:calc(100% + 6px);bottom:auto;right:0;z-index:70}.logic-map-dialog .form-logic-tray>header{position:relative;z-index:40}


.form-logic-tray [data-remove-node],.form-logic-tray [data-remove-member]{display:inline-grid;place-items:center;color:#dc2626;padding:5px;border-radius:6px}.form-logic-tray [data-remove-node]:hover,.form-logic-tray [data-remove-member]:hover{color:#b91c1c;background:color-mix(in srgb,#dc2626 10%,var(--panel));border-color:#dc2626}.logic-group-box>header>[data-remove-node]{margin-left:auto;flex:none}.logic-group-settings>.logic-node-body{left:0;right:auto}

.logic-group-settings>summary{display:grid;place-items:center;list-style:none;padding:5px;border:1px solid transparent;border-radius:6px;cursor:pointer;color:var(--ink)}.logic-group-settings>summary::-webkit-details-marker{display:none}.logic-group-settings>summary:hover,.logic-group-settings[open]>summary{color:var(--purple);background:color-mix(in srgb,var(--purple) 8%,var(--panel));border-color:var(--line)}.logic-group-settings>summary:focus-visible{outline:2px solid var(--purple);outline-offset:2px}

.form-logic-tray [data-logic-select],.form-logic-tray [data-delete-selection]{display:grid;place-items:center;padding:6px}.form-logic-tray [data-logic-select][aria-pressed=true]{color:var(--purple);border-color:var(--purple);background:color-mix(in srgb,var(--purple) 12%,var(--panel))}.form-logic-tray [data-delete-selection]{color:#dc2626}.form-logic-tray [data-delete-selection][hidden]{display:none}.form-logic-tray [data-delete-selection]:disabled{opacity:.4;cursor:default}.logic-selection-count{font-size:10px;white-space:nowrap}.logic-node.logic-selected{outline:2px solid var(--purple);outline-offset:3px;box-shadow:0 0 0 5px color-mix(in srgb,var(--purple) 14%,transparent)}.logic-map-marquee{position:fixed;pointer-events:none;z-index:2147483647;border:1px solid #7659ff;background:#7659ff22}.logic-selecting .logic-viewport{cursor:crosshair}

.custom-appearance.appearance-text-boxes{--readability-surface:color-mix(in srgb,var(--appearance-box-color,var(--appearance-surface)) 93%,var(--appearance-color))}@media(prefers-reduced-transparency:reduce){.custom-appearance.appearance-text-boxes{--readability-surface:var(--appearance-box-color,var(--appearance-surface))}}

.form-logic-tray>header{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;min-height:48px;box-sizing:border-box}.form-logic-tray>header>div:first-child:not(.logic-toolbar-actions){display:none!important}.form-logic-tray>header>.logic-zoom{grid-column:2;grid-row:1;justify-self:center;gap:5px}.form-logic-tray>header>.logic-toolbar-actions{grid-column:3;grid-row:1;display:flex;align-items:center;justify-content:flex-end;justify-self:stretch;flex-wrap:wrap;gap:5px;min-width:0}.logic-toolbar-actions .logic-add-menu>summary{display:grid;place-items:center;color:#277a50;padding:5px;border-color:color-mix(in srgb,#277a50 35%,var(--line))}.logic-toolbar-actions .logic-add-menu>summary:hover{background:color-mix(in srgb,#277a50 10%,var(--panel));border-color:#277a50}.logic-toolbar-actions [data-logic-fit]{display:grid;place-items:center;padding:6px}.logic-toolbar-actions .logic-selection-count:empty{display:none}.logic-toolbar-actions .logic-add-menu>div{right:0}@media(max-width:750px){.form-logic-tray>header{gap:4px;padding:8px}.form-logic-tray>header>.logic-toolbar-actions{gap:3px}}

.logic-viewport{cursor:grab;touch-action:none}.logic-viewport.logic-panning,.logic-viewport.logic-panning *{cursor:grabbing!important;user-select:none}.logic-selecting .logic-viewport{cursor:crosshair}

body:not(.preview-mode):not(.mobile-entry-mode) .builder-dock-layout>.workspace{grid-column:2;grid-row:2}.builder-dock-slot{position:relative;min-height:0;min-width:0;display:flex;flex-direction:column;background:var(--panel);overflow:visible}.dock-left{grid-column:1;grid-row:2}.dock-right{grid-column:3;grid-row:2}.dock-bottom{flex:none;max-height:70%;border-top:1px solid var(--line)}.builder-dock-slot>.left-panel,.builder-dock-slot>.right-panel{width:100%;height:100%;min-height:0;min-width:0;box-sizing:border-box;overflow:auto;flex:1}.builder-dock-slot>.form-logic-tray{height:auto;max-height:none;min-height:0;flex:1}.builder-dock-slot>#logicTrayToggle{width:100%;flex:none}.builder-tray-drag-heading{cursor:grab;touch-action:none;user-select:none}.dock-dragging>.builder-tray-drag-heading,.dock-dragging .panel-heading{cursor:grabbing}.dock-drop-target{outline:3px solid var(--purple);outline-offset:-3px;background:color-mix(in srgb,var(--purple) 12%,var(--panel))}.builder-tray-resizer{position:absolute;z-index:80;touch-action:none}.dock-left>.builder-tray-resizer{right:-4px;top:0;bottom:0;width:8px;cursor:ew-resize}.dock-right>.builder-tray-resizer{left:-4px;top:0;bottom:0;width:8px;cursor:ew-resize}.dock-bottom>.builder-tray-resizer{left:0;right:0;top:-4px;height:8px;cursor:ns-resize}.builder-tray-resizer:hover,.builder-tray-resizer:focus-visible{background:color-mix(in srgb,var(--purple) 25%,transparent);outline:none}.dock-horizontal>.builder-tray-collapsed>.panel-heading{flex-direction:row;padding:8px 12px}.dock-horizontal>.builder-tray-collapsed>.panel-heading>span{writing-mode:horizontal-tb;order:0}.dock-horizontal>.left-panel:not(.builder-tray-collapsed){display:grid;grid-template-rows:34px minmax(0,1fr);grid-template-columns:minmax(0,1fr);padding-bottom:0}.dock-horizontal .element-list{display:flex;align-items:flex-start;gap:12px;overflow:auto;padding:10px;min-height:0}.dock-horizontal .element-category{flex:0 0 240px}.dock-horizontal .left-footer{display:none}.dock-horizontal>.right-panel:not(.builder-tray-collapsed){display:grid;grid-template-rows:34px 36px minmax(0,1fr)}.dock-horizontal .settings-content{overflow:auto;display:flex;align-items:flex-start;gap:20px;padding:12px}.dock-horizontal .settings-section{flex:0 0 260px}.dock-horizontal .setting-tabs{margin:0}.dock-left .form-logic-tray>header,.dock-right .form-logic-tray>header{display:flex;flex-wrap:wrap;justify-content:center}.dock-left .logic-toolbar-actions,.dock-right .logic-toolbar-actions{justify-content:center!important}.dock-closed:not(.dock-horizontal)>#logicTrayToggle{height:100%;writing-mode:vertical-rl;padding:12px 8px;align-items:center;justify-content:flex-start;gap:15px}.dock-closed:not(.dock-horizontal)>#logicTrayToggle>span:last-child{display:none}body.preview-mode .builder-dock-slot,body.mobile-entry-mode .builder-dock-slot{display:none!important}

.dock-horizontal .settings-content.hidden{display:none}.dock-horizontal .settings-content>.inspector-section,.dock-horizontal .settings-content>.shared-appearance{flex:0 0 260px;min-width:220px}.dock-horizontal .settings-content>.inspector-danger{flex:0 0 140px}.dock-horizontal .settings-tabs{height:36px}.dock-horizontal .inspector-section-body{max-height:none}.dock-horizontal .element-category-items{display:grid;gap:6px}


.builder-dock-slot:has(.logic-add-menu[open],.logic-group-settings[open])>.form-logic-tray{z-index:90}


.dock-horizontal>.left-panel:not(.builder-tray-collapsed){grid-template-rows:34px minmax(0,1fr) 28px}.dock-horizontal .left-footer{display:flex;grid-row:3;justify-content:flex-end;padding:4px 12px}.dock-horizontal .left-footer button{white-space:nowrap}


.builder-dock-layout .dock-bottom{max-height:none}

.logic-viewport,.logic-world{background-image:none}.logic-grid-enabled .logic-world,.logic-grid-enabled .logic-group-content{background-image:radial-gradient(color-mix(in srgb,var(--purple) 45%,transparent) .8px,transparent .8px);background-size:20px 20px;background-position:0 0}.logic-group-box>header>.logic-group-settings{margin-left:0}.logic-group-box>header>[data-group-arrange]{display:grid;place-items:center;padding:5px;margin-left:auto;flex:none}.logic-group-box>header>[data-remove-node]{margin-left:0}.logic-group-settings>.logic-node-body{left:auto;right:0}

.logic-group-box>header>[data-collapse]{display:grid;place-items:center;padding:5px;margin:0 0 0 auto;flex:none}.logic-group-box>header>[data-group-arrange]{margin-left:0}.form-logic-tray .logic-group-resize{position:absolute;z-index:35;padding:0;border:0;background:transparent;touch-action:none;min-height:0;min-width:0}.logic-group-resize[data-group-resize=n],.logic-group-resize[data-group-resize=s]{left:14px;right:14px;height:7px;cursor:ns-resize}.logic-group-resize[data-group-resize=n]{top:-4px}.logic-group-resize[data-group-resize=s]{bottom:-4px}.logic-group-resize[data-group-resize=e],.logic-group-resize[data-group-resize=w]{top:14px;bottom:14px;width:7px;cursor:ew-resize}.logic-group-resize[data-group-resize=e]{right:-4px}.logic-group-resize[data-group-resize=w]{left:-4px}.logic-group-resize[data-group-resize=ne],.logic-group-resize[data-group-resize=nw],.logic-group-resize[data-group-resize=se],.logic-group-resize[data-group-resize=sw]{width:12px;height:12px}.logic-group-resize[data-group-resize=ne]{right:-4px;top:-4px;cursor:nesw-resize}.logic-group-resize[data-group-resize=nw]{left:-4px;top:-4px;cursor:nwse-resize}.logic-group-resize[data-group-resize=se]{right:-4px;bottom:-4px;cursor:nwse-resize}.logic-group-resize[data-group-resize=sw]{left:-4px;bottom:-4px;cursor:nesw-resize}.form-logic-tray .logic-group-resize:hover,.form-logic-tray .logic-group-resize:focus-visible{background:color-mix(in srgb,var(--purple) 35%,transparent);border-radius:3px}

.form-logic-tray [data-rename-element]{display:inline-grid;place-items:center;padding:5px;color:var(--muted)}.logic-answer-preview{white-space:pre-wrap;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;font-size:11px;line-height:1.5;padding:7px 9px;border:1px solid var(--line);border-radius:6px;background:color-mix(in srgb,var(--purple) 4%,var(--panel));color:var(--ink)}

.logic-block-type{display:grid;place-items:center;flex:none;width:18px;height:20px;margin-right:7px;color:var(--purple)}.logic-node>header>.logic-node-handle{min-width:0;overflow-wrap:anywhere;line-height:1.4}.logic-node>header>[data-collapse]{display:grid;place-items:center;padding:5px;flex:none;margin:0}.logic-node>header>[data-rename-element],.logic-node>header>[data-remove-node]{flex:none}.logic-node-body[hidden]{display:none!important}.logic-rule>.logic-node-body+ .logic-port{pointer-events:none}

.logic-group-box{min-width:220px!important}.logic-group-box:has(>.logic-group-content[hidden]){min-width:180px!important}.logic-group-content{overflow:auto}.logic-node>header{flex-wrap:nowrap;row-gap:5px}.logic-node>header>.logic-node-handle{flex:1 1 60px}.logic-group-box>header>.logic-node-handle{flex:1 1 80px}

/* Keep resize targets inside compact cards and scrollable groups. */
.form-logic-tray .logic-group-resize[data-group-resize]{margin:0}
.logic-group-resize[data-group-resize=n],.logic-group-resize[data-group-resize=ne],.logic-group-resize[data-group-resize=nw]{top:0}
.logic-group-resize[data-group-resize=s],.logic-group-resize[data-group-resize=se],.logic-group-resize[data-group-resize=sw]{bottom:0}
.logic-group-resize[data-group-resize=e],.logic-group-resize[data-group-resize=ne],.logic-group-resize[data-group-resize=se]{right:0}
.logic-group-resize[data-group-resize=w],.logic-group-resize[data-group-resize=nw],.logic-group-resize[data-group-resize=sw]{left:0}
.logic-group-box>.logic-group-content{min-height:100px}

.logic-node>header>.logic-node-handle{flex:1 1 60px;min-width:60px}.logic-group-settings{flex:none}

/* Keep company footer sizing consistent across app surfaces. */
html body .app-watermark{bottom:3px;padding:1px 7px;line-height:1.2}
html body .app-watermark .development-notice{margin-top:1px;font-size:8px;line-height:1.2}

/* Delete options remain red regardless of section or accent color. */
html body .delete-action{color:#b4232c!important;-webkit-text-fill-color:#b4232c!important}
html[data-theme=dark] body .delete-action{color:#ff9ca3!important;-webkit-text-fill-color:#ff9ca3!important}
html body .dialog-accept.delete-action{background:#b4232c!important;border-color:#b4232c!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
html body .dialog-accept.delete-action:hover{background:#951d25!important}
html body .delete-action:not(.dialog-accept){background:var(--panel,#fff)!important;border-color:color-mix(in srgb,#b4232c 35%,var(--line,#ddd))!important}
html body .delete-action:not(.dialog-accept):hover{background:color-mix(in srgb,#b4232c 8%,var(--panel,#fff))!important}

a.brand{color:inherit;text-decoration:none}a.brand:focus-visible{outline:2px solid #277a50;outline-offset:4px;border-radius:8px}

/* Connected calendar dashboard widget. Its own scroll region preserves usable event details. */
.dash-calendar{height:100%;overflow:auto;font-size:12px;color:inherit}.dash-calendar-tools{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:8px}.dash-calendar-tools>div{display:flex;gap:4px}.dash-calendar-tools button,.dash-calendar-tools select{background:var(--dash-panel,var(--panel,#fff));color:inherit;border:1px solid var(--dash-edge,#8886);border-radius:6px;padding:5px 9px;font:inherit;cursor:pointer}.dash-calendar-summary,.dash-calendar-key{font-size:11px;opacity:.8;display:block;margin:7px 0}.dash-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--dash-edge,#8886);border-left:1px solid var(--dash-edge,#8886)}.dash-calendar-grid.day{grid-template-columns:1fr}.dash-calendar-weekday{padding:5px;text-align:center;font-size:10px;border-right:1px solid var(--dash-edge,#8886)}.dash-calendar-day{min-height:65px;padding:5px;min-width:0;border-right:1px solid var(--dash-edge,#8886);border-bottom:1px solid var(--dash-edge,#8886)}.week .dash-calendar-day{min-height:240px}.day .dash-calendar-day{min-height:220px}.dash-calendar-day time{display:block;font-weight:700;margin-bottom:5px}.dash-calendar-day.today{background:color-mix(in srgb,var(--widget-color) 10%,transparent);box-shadow:inset 0 0 0 2px var(--widget-color)}.dash-calendar-day.outside>time{opacity:.45}.dash-calendar-event{border-left:3px solid #328b62;background:color-mix(in srgb,#328b62 12%,transparent);border-radius:4px;margin:4px 0;padding:4px;overflow-wrap:anywhere}.dash-calendar-event.project{border-color:#628bdd;background:color-mix(in srgb,#628bdd 12%,transparent)}.dash-calendar-event.compliance{border-color:#bd8a31;background:color-mix(in srgb,#bd8a31 12%,transparent)}.dash-calendar-event.overdue{border-color:#c56356}.dash-calendar-event.complete{opacity:.65}.dash-calendar-event summary{cursor:pointer;font-size:11px;font-weight:600}.dash-calendar-event small{display:block;line-height:1.5;margin-top:5px}.dashboard-inspector [data-calendar-source]{flex-shrink:0}.dashboard-inspector .dash-check{overflow-wrap:anywhere}

.dash-calendar-grid.month .dash-calendar-day{height:84px;min-height:84px;overflow:hidden}.month .dash-calendar-event{padding:2px 3px;margin:2px 0}.month .dash-calendar-event summary{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px;line-height:14px}.month .dash-calendar-event[open]{position:relative;z-index:2;background:var(--dash-panel);box-shadow:0 3px 15px #0004}.dash-calendar-day [data-calendar-date]{border:0;background:transparent;color:var(--widget-color);padding:1px 2px;font-size:10px}.dash-calendar-grid.month{grid-template-rows:24px repeat(6,84px)}

.dash-calendar-day .dash-calendar-month-event{display:block;width:100%;max-width:100%;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border:0;border-left:3px solid #328b62;border-radius:3px;background:color-mix(in srgb,#328b62 14%,transparent);color:inherit;font-size:10px;line-height:15px;padding:1px 3px;margin:2px 0}.dash-calendar-day .dash-calendar-month-event.project{border-color:#628bdd;background:color-mix(in srgb,#628bdd 14%,transparent)}.dash-calendar-day .dash-calendar-month-event.compliance{border-color:#bd8a31;background:color-mix(in srgb,#bd8a31 14%,transparent)}.dash-calendar-day .dash-calendar-month-event.overdue{border-color:#c56356}

.dash-calendar-event [data-calendar-open]{display:block;cursor:pointer;width:100%;text-align:left;border:0;background:transparent;color:inherit;font:600 11px/1.4 'Plus Jakarta Sans',sans-serif;padding:0;overflow-wrap:anywhere}.dash-calendar-event [data-calendar-open]:hover{text-decoration:underline}.dash-calendar [data-calendar-open]:focus-visible{outline:2px solid var(--widget-color);outline-offset:2px}

.calendar-return{display:inline-flex;align-items:center;flex-shrink:0;gap:6px;padding:8px 12px;border:1px solid var(--line,#8aa99b);border-radius:8px;background:var(--dash-panel,var(--surface,#fff));color:var(--dash-ink,var(--text,#20332c));font:600 12px 'Plus Jakarta Sans',sans-serif;cursor:pointer;white-space:nowrap}.calendar-return:hover{border-color:#54a47a}.calendar-return:focus-visible{outline:2px solid #54a47a;outline-offset:2px}html[data-theme="dark"] .calendar-return{background:#22312e;color:#e5eeea}.task-tracker-toolbar .calendar-return{order:-1}.project-task-dialog header .calendar-return,.compliance-register-editor>header .calendar-return{margin-left:auto}@media(max-width:600px){.calendar-return{font-size:11px;padding:6px 8px}.project-task-dialog header,.compliance-register-editor>header{flex-wrap:wrap}}

/* Sides are generous drag targets; centered grips stay clear of widget controls. */
.surface-dashboard-panel>.surface-panel-edge,.dashboard-widget>.dash-edge-resize{position:absolute;z-index:6;display:block;border:0!important;border-radius:4px;padding:0!important;margin:0;background:transparent!important;touch-action:none;color:var(--dash-muted,#6b8277)}
.surface-panel-edge[data-panel-edge=n],.surface-panel-edge[data-panel-edge=s],.dash-edge-resize[data-edge=n],.dash-edge-resize[data-edge=s]{height:10px;width:auto;left:25px;right:25px;cursor:ns-resize}
.surface-panel-edge[data-panel-edge=e],.surface-panel-edge[data-panel-edge=w],.dash-edge-resize[data-edge=e],.dash-edge-resize[data-edge=w]{width:10px;height:auto;top:25px;bottom:25px;cursor:ew-resize}
.surface-panel-edge[data-panel-edge=n],.dash-edge-resize[data-edge=n]{top:0;bottom:auto}.surface-panel-edge[data-panel-edge=s],.dash-edge-resize[data-edge=s]{bottom:0;top:auto}.surface-panel-edge[data-panel-edge=w],.dash-edge-resize[data-edge=w]{left:0;right:auto}.surface-panel-edge[data-panel-edge=e],.dash-edge-resize[data-edge=e]{right:0;left:auto}
.surface-panel-edge:after,.dash-edge-resize:after{content:'';position:absolute;background:currentColor;opacity:.35;border-radius:3px;left:50%;top:50%;transform:translate(-50%,-50%);width:28px;height:3px}.surface-panel-edge[data-panel-edge=e]:after,.surface-panel-edge[data-panel-edge=w]:after,.dash-edge-resize[data-edge=e]:after,.dash-edge-resize[data-edge=w]:after{width:3px;height:28px}
.surface-panel-edge:hover:after,.surface-panel-edge:focus-visible:after,.dash-edge-resize:hover:after,.dash-edge-resize:focus-visible:after{opacity:1;background:#54a47a}.surface-panel-edge:focus-visible,.dash-edge-resize:focus-visible{outline:2px solid #54a47a;outline-offset:-2px}.dashboard-widget>.dash-edge-resize{display:none!important}.dashboard-building .dashboard-widget>.dash-edge-resize{display:block!important}

/* Independent edit trays leave the full landscape board fitted between them. */
.dashboard-editor .dashboard-body,.dashboard-editor.dashboard-building .dashboard-body{display:flex;flex-direction:row;min-height:0;min-width:0;overflow:hidden;grid-template-columns:none;grid-template-rows:none}
.dashboard-editor .dashboard-tray{position:relative;display:flex;flex-direction:column;flex:0 0 auto;min-width:0;min-height:0;overflow:hidden;background:var(--dash-panel)}.dashboard-editor .dashboard-tray[hidden]{display:none!important}.dashboard-tray-library{border-right:1px solid var(--dash-edge)}.dashboard-tray-inspector{border-left:1px solid var(--dash-edge)}
.dashboard-tray>header{display:flex;align-items:center;justify-content:space-between;gap:4px;padding:10px 12px;min-width:0;border-bottom:1px solid var(--dash-edge);font-size:12px}.dashboard-editor .dashboard-tray>header button{padding:3px 7px;font-size:17px;line-height:1.2;flex-shrink:0}.dashboard-tray>header b{overflow:hidden;text-overflow:ellipsis}
.dashboard-editor.dashboard-building .dashboard-tray .dashboard-library,.dashboard-editor.dashboard-building .dashboard-tray .dashboard-inspector{display:block;flex:1;width:100%;min-width:0;min-height:0;padding:14px 12px;border:0;overflow:auto;overflow-wrap:anywhere;grid-row:auto;grid-column:auto}.dashboard-tray .dashboard-inspector>h2{display:none}.dashboard-tray input,.dashboard-tray select,.dashboard-tray textarea{max-width:100%;box-sizing:border-box}.dashboard-tray .dash-pair{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-editor .dashboard-tray-resize{position:absolute;z-index:5;top:46px;bottom:0;width:9px;padding:0;border:0;border-radius:0;background:transparent;cursor:ew-resize;touch-action:none}.dashboard-tray-library .dashboard-tray-resize{right:0}.dashboard-tray-inspector .dashboard-tray-resize{left:0}.dashboard-tray-resize:after{content:'';position:absolute;width:3px;height:42px;background:var(--dash-muted);border-radius:2px;left:3px;top:calc(50% - 21px);opacity:.45}.dashboard-tray-resize:hover:after,.dashboard-tray-resize:focus-visible:after{background:#54a47a;opacity:1}.dashboard-tray-resize:focus-visible{outline:2px solid #54a47a;outline-offset:-2px}.dashboard-editor .dashboard-scroll{min-height:0;min-width:0;flex:1 1 0;grid-row:auto;grid-column:auto}.dashboard-toolbar button[hidden]{display:none!important}
@media(max-width:650px){.dashboard-editor .dashboard-scroll{padding:8px;min-height:0}.dashboard-tray>header{padding:8px 6px;font-size:10px}.dashboard-editor.dashboard-building .dashboard-tray .dashboard-library,.dashboard-editor.dashboard-building .dashboard-tray .dashboard-inspector{padding:10px 7px}.dashboard-tray .dash-pair{grid-template-columns:minmax(0,1fr)}.dashboard-tray .dashboard-library button{padding:5px;gap:3px;font-size:10px}.dashboard-tray .dashboard-library button svg{width:15px;min-width:15px}.dashboard-tray .dashboard-library button b{display:none}.dashboard-tray .dashboard-library button span{overflow-wrap:anywhere}.dashboard-tray .dash-check{flex-wrap:wrap}.dashboard-toolbar>div{gap:4px}.dashboard-toolbar [data-dash^=toggle-]{font-size:11px;padding:6px 8px}}

/* Editor rails share the form tray's minus/plus and vertical collapsed heading. */
.dashboard-editor .dashboard-tray.dashboard-tray-collapsed{width:38px!important}.dashboard-tray-collapsed>.dashboard-library,.dashboard-tray-collapsed>.dashboard-inspector{display:none!important}.dashboard-tray-collapsed>header{height:100%;flex-direction:column;justify-content:flex-start;gap:16px;padding:8px 0;border:0;cursor:pointer}.dashboard-tray-collapsed>header>b{writing-mode:vertical-rl;order:2;white-space:nowrap}.dashboard-tray-collapsed>header>button{order:1;width:30px;min-height:30px;margin:0}.dashboard-editor .dashboard-tray>header>button{font-size:19px}.dashboard-tray-collapsed>.dashboard-tray-resize{top:38px}
/* Data at left, zoom centered, history and the icon-only edit control at right. */
.dashboard-editor .dashboard-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px}.dashboard-toolbar .dashboard-data-controls{justify-content:flex-start;min-width:0;gap:6px}.dashboard-toolbar .dashboard-zoom-controls{justify-content:center;white-space:nowrap}.dashboard-toolbar .dashboard-edit-controls{justify-content:flex-end;gap:6px}.dashboard-edit-controls button{width:34px;height:34px;padding:6px!important}.dashboard-toolbar [data-refreshed],.dashboard-toolbar [data-save-state]{font-size:9px}.dashboard-editor [data-dash=save][hidden]{display:none!important}.dashboard-editor .dash-autosave{position:relative;display:inline-grid;place-items:center;width:34px;height:34px;border:1px solid var(--dash-edge);border-radius:7px;background:var(--dash-panel);color:var(--dash-ink);cursor:pointer;overflow:hidden}.dash-autosave>input[data-autosave]{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.dash-autosave[data-enabled=true]{color:#22845b;background:#edf8f2;border-color:#a9d9bd}.dash-autosave:focus-within{outline:2px solid #54a47a;outline-offset:2px}.dashboard-commands>[data-dash=save]{width:34px;height:34px;padding:6px}.dashboard-commands>[data-dash=save] svg{width:20px;height:20px}.dashboard-tray-collapsed>header button{flex-shrink:0}
.form-edit-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.form-edit-actions button{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:34px;min-width:34px;padding:6px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--ink);cursor:pointer}.form-edit-actions svg{width:20px;height:20px}.form-edit-actions #previewBtn{white-space:nowrap}.form-document-actions .form-save-controls{flex-shrink:0}.form-document-actions{gap:6px}body.preview-mode .form-edit-actions{display:none}.form-save-controls[data-enabled=true] .autosave-toggle,html[data-theme=dark] .dash-autosave[data-enabled=true]{color:#69be8a;background:color-mix(in srgb,#277a50 12%,var(--panel,#fff));border-color:#77a98b}html:not([data-theme=dark]) .form-save-controls[data-enabled=true] .autosave-toggle{color:#22845b;background:#edf8f2;border-color:#a9d9bd}
/* Location stays adjacent to the brand in workspace, dashboard, and form headers. */
body :is(.workspace-top,.topbar)>.directory-trail,body .workspace-view.choosing .workspace-top>.directory-trail{display:flex!important;visibility:visible!important;align-items:center;min-width:36px;flex:0 1 auto;max-width:60%;gap:4px}body :is(.workspace-top,.topbar)>.directory-trail>button{display:inline-flex;align-items:center;min-width:0;max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body :is(.workspace-top,.topbar)>.directory-trail>span{display:inline}.directory-trail .workspace-switcher{flex-shrink:0}.directory-trail>button.directory-rename{flex-shrink:0;width:28px}body .topbar .top-actions>.divider{display:none}
@media(min-width:1001px){body:not(.preview-mode) .app-shell .form-page-controls:has(.form-document-actions){flex-wrap:nowrap;overflow:visible;gap:6px}body:not(.preview-mode) .form-page-controls>.form-document-actions{margin-left:auto}body:not(.preview-mode) .form-page-controls>small{display:none}}
@media(max-width:1000px){.dashboard-toolbar .dashboard-data-controls [data-refreshed],.dashboard-toolbar .dashboard-data-controls [data-save-state],.dashboard-toolbar .dashboard-zoom-controls [data-dashboard-scale]{display:none}.dashboard-editor .dashboard-toolbar{gap:5px;padding:8px}.dashboard-toolbar .dashboard-data-controls label,.dashboard-toolbar .dashboard-zoom-controls label{font-size:10px;gap:3px}.dashboard-toolbar select{font-size:10px;padding:6px;max-width:120px}}
@media(max-width:650px){.dashboard-editor .dashboard-toolbar{grid-template-columns:minmax(0,1fr) auto auto;gap:4px}.dashboard-toolbar .dashboard-data-controls{gap:2px;flex-wrap:nowrap}.dashboard-toolbar .dashboard-zoom-controls{gap:2px;flex-wrap:nowrap}.dashboard-toolbar .dashboard-data-controls label,.dashboard-toolbar .dashboard-zoom-controls label{font-size:0;gap:0}.dashboard-toolbar .dashboard-data-controls select{max-width:78px}.dashboard-toolbar .dashboard-zoom-controls select{max-width:85px}.dashboard-toolbar .dashboard-edit-controls{flex-wrap:nowrap;gap:2px}.dashboard-edit-controls button,.dashboard-data-controls>button{width:28px;height:30px;padding:4px!important}.dashboard-edit-controls svg,.dashboard-data-controls svg{width:17px;height:17px}body :is(.workspace-top,.topbar)>.directory-trail{max-width:calc(100% - 150px);gap:2px}body :is(.workspace-top,.topbar)>.directory-trail>button{max-width:100px;font-size:10px}.form-document-actions{max-width:100%;flex-wrap:wrap}.form-page-controls .form-edit-actions button{min-height:32px;font-size:10px}body.preview-mode:not(.mobile-entry-mode) .form-page-controls>.form-document-actions{max-width:none}.form-save-status{max-width:80px;min-width:0}}

@media(min-width:1001px) and (max-width:1450px){body:not(.preview-mode) .form-document-actions .form-save-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}body:not(.preview-mode) .form-page-controls>.page-scale-label{font-size:0;gap:0}body:not(.preview-mode) .form-page-controls>.page-scale-label select{font-size:11px}body:not(.preview-mode) .form-page-controls{padding-left:10px;padding-right:10px}}

/* Form editing has one compact control row. Narrow workspaces scroll it horizontally. */
.workspace-toolbar.form-toolbar-consolidated{display:none!important}.form-build-controls{display:flex;align-items:center;gap:5px;flex-shrink:0}.form-build-controls .group-selection-controls,.form-build-controls .builder-view-controls{display:flex;align-items:center;gap:4px;margin:0;flex-wrap:nowrap}.form-build-controls .group-selection-controls>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
body:not(.preview-mode) .app-shell .form-page-controls:has(.form-build-controls){display:flex;flex-wrap:nowrap!important;align-items:center;gap:6px;min-height:48px;padding:7px 10px;overflow-x:auto!important;overflow-y:visible;scrollbar-width:thin}body:not(.preview-mode) .form-page-controls:has(.form-build-controls)>*{flex-shrink:0}body:not(.preview-mode) .form-page-controls:has(.form-build-controls)>.form-document-actions{flex-wrap:nowrap;max-width:none;gap:5px;margin-left:auto}.form-page-controls .form-toolbar-icon{display:inline-grid!important;place-items:center;width:30px;min-width:30px;height:32px;padding:5px!important;box-sizing:border-box;font-size:0!important;border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--ink);flex-shrink:0}.form-toolbar-icon svg{display:block;width:19px;height:19px}.form-toolbar-icon:disabled{opacity:.4;cursor:not-allowed}.form-toolbar-icon[aria-pressed=true]{background:color-mix(in srgb,var(--purple) 14%,var(--panel));border-color:var(--purple)}.form-toolbar-icon:focus-visible{outline:2px solid var(--purple);outline-offset:2px}.form-build-controls .grid-snap-toggle{margin:0}.form-page-controls .page-arrow-controls{gap:3px}.form-page-controls .form-edit-actions{gap:4px}.form-page-controls .canvas-controls{gap:3px}.form-page-controls #zoomLabel{min-width:32px;text-align:center;font-size:10px}body.preview-mode .form-build-controls{display:none}
@media(max-width:1450px){body:not(.preview-mode) .form-page-controls:has(.form-build-controls){gap:4px}.form-page-controls .form-toolbar-icon{width:28px;min-width:28px;height:30px;padding:4px!important}.form-build-controls{gap:4px}.form-page-controls .form-save-controls .icon-btn,.form-page-controls .form-document-actions .request-share-menu>summary{width:30px;height:30px;min-width:30px}.form-page-controls .form-document-actions .form-save-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}body:not(.preview-mode) .form-page-controls .page-scale-label{font-size:0;gap:0}.form-page-controls .page-scale-label select{font-size:11px}}
body.mobile-entry-mode .form-build-controls{display:none!important}

/* Preview is the labelled final action, separate from icon-only editing tools. */
.form-page-controls #previewBtn.form-preview-action{display:inline-flex!important;align-items:center;justify-content:center;flex-shrink:0;gap:6px;width:auto;min-width:82px;height:32px;padding:5px 10px!important;font-size:11px!important;line-height:1;border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--ink);white-space:nowrap}.form-page-controls #previewBtn.form-preview-action svg{display:block;width:19px;height:19px;margin:0;flex:none}.form-page-controls #previewBtn[hidden]{display:none!important}.form-document-actions>.form-preview-action{order:10}
/* Icon boxes center their artwork in both axes rather than on a text baseline. */
button:has(>svg:only-child),summary:has(>svg:only-child){display:inline-flex;align-items:center;justify-content:center;line-height:1}button.icon-btn,.form-page-controls .form-toolbar-icon{align-items:center;justify-content:center;place-items:center;line-height:1}button>svg:only-child,summary>svg:only-child,button.icon-btn>svg,.form-toolbar-icon>svg{display:block;flex-shrink:0;margin:0;vertical-align:middle}

.form-page-controls .form-toolbar-icon,.form-page-controls .form-save-controls .icon-btn{display:inline-flex!important;align-items:center;justify-content:center;padding:0!important;line-height:1}.form-page-controls .form-toolbar-icon>svg,.form-page-controls .form-save-controls .icon-btn>svg{flex:none;align-self:center;margin:0}

/* Hidden manual-save controls must win over compact icon display rules. */
.form-page-controls .form-save-controls .manual-form-save[hidden],.dashboard-commands [data-dash="save"][hidden]{display:none!important}
body.preview-mode .form-document-actions>.page-filling-actions{order:10;flex-wrap:nowrap}
body.preview-mode .page-filling-actions #publishBtn{order:20}

/* One stable saving location immediately before cloud sync. */
body{--save-cloud-right:66px;--save-width:38px}
body[data-save-expanded=true]{--save-width:78px}
body[data-save-context] :is(.topbar,.workspace-top){padding-right:calc(var(--save-cloud-right) + var(--save-width) + 96px)!important}
body[data-save-context] .storage-disclosure-toggle{right:calc(var(--save-cloud-right) + var(--save-width) + 50px)}
body[data-save-context=form] .form-save-controls{position:fixed;top:15px;right:calc(var(--save-cloud-right) + 48px);z-index:183;display:flex!important;gap:6px}
body[data-save-context] .form-save-controls .icon-btn,.global-save-indicator{display:inline-flex!important;align-items:center;justify-content:center;width:34px;height:34px;min-width:34px;padding:0!important;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--ink);line-height:1}
body[data-save-context] .form-save-controls .manual-form-save[hidden]{display:none!important}
body[data-save-context] .form-save-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
body[data-save-context=dashboard] .dashboard-editor .dash-autosave{position:fixed;top:15px;right:calc(var(--save-cloud-right) + 48px);z-index:183}
body[data-save-context=dashboard] .dashboard-commands>[data-dash=save]{position:fixed;top:15px;right:calc(var(--save-cloud-right) + 88px);z-index:183;display:inline-flex;align-items:center;justify-content:center;padding:0}
.global-save-indicator{position:fixed;top:15px;right:calc(var(--save-cloud-right) + 48px);z-index:183;cursor:pointer}
.global-save-indicator[data-state=saved]{color:#277a50}.global-save-indicator[data-state=pending]{color:#356bb2}.global-save-indicator[data-state=error]{color:#b62b2b}
body:not([data-save-context=device]) .global-save-indicator,body.auth-locked .global-save-indicator{display:none!important}
body.mobile-entry-mode.mobile-form-fullscreen .form-save-controls,body.mobile-entry-mode.mobile-form-fullscreen .global-save-indicator{display:none!important}
@media(max-width:680px){body{--save-cloud-right:58px}body[data-save-context] :is(.topbar,.workspace-top)>.directory-trail{max-width:calc(100vw - var(--save-width) - 190px)}}

body:not([data-save-context=form])>.form-save-controls{display:none!important}
body[data-save-context=dashboard] .dashboard-editor{z-index:183}

body.auth-locked>.form-save-controls{display:none!important}

/* Shared save states: amber unsaved, blue saving, green saved, red failure. */
html body [data-save-visual]{--save-fg:#23734b;--save-bg:#e2f3e9;--save-edge:#82b49a;color:var(--save-fg)!important;background:var(--save-bg)!important;border-color:var(--save-edge)!important;opacity:1}
html body [data-save-visual=unsaved]{--save-fg:#805600;--save-bg:#fff2ca;--save-edge:#c59c31}
html body [data-save-visual=saving]{--save-fg:#205b9e;--save-bg:#e5efff;--save-edge:#7c9fd1}
html body [data-save-visual=error]{--save-fg:#a5202b;--save-bg:#ffe6e9;--save-edge:#d36b77;box-shadow:0 0 0 2px color-mix(in srgb,var(--save-edge) 30%,transparent)}
html[data-theme=dark] body [data-save-visual=saved]{--save-fg:#8bdbab;--save-bg:#193b2d;--save-edge:#4d9770}
html[data-theme=dark] body [data-save-visual=unsaved]{--save-fg:#ffcf6b;--save-bg:#443716;--save-edge:#b18a34}
html[data-theme=dark] body [data-save-visual=saving]{--save-fg:#9fc6ff;--save-bg:#203957;--save-edge:#5e8eca}
html[data-theme=dark] body [data-save-visual=error]{--save-fg:#ffb4bc;--save-bg:#54232e;--save-edge:#d47886}
[data-save-visual=saving]>svg{animation:save-working 1s ease-in-out infinite alternate}
@keyframes save-working{to{opacity:.45}}
@media(prefers-reduced-motion:reduce){[data-save-visual=saving]>svg{animation:none}}
.save-failure-warning{position:fixed;top:66px;right:16px;z-index:10060;width:min(360px,calc(100vw - 32px));box-sizing:border-box;padding:14px;border:2px solid #c34b5e;border-radius:10px;background:var(--panel,#fff);color:var(--ink,#263443);box-shadow:0 8px 24px #0003;font-size:12px;line-height:1.5}
.save-failure-warning[hidden]{display:none!important}.save-failure-warning strong{display:block;color:#b62b3b;font-size:14px}.save-failure-warning p{margin:6px 0 10px;overflow-wrap:anywhere}.save-failure-warning button{padding:7px 12px;border:1px solid #b62b3b;border-radius:6px;color:inherit;background:transparent;cursor:pointer}html[data-theme=dark] .save-failure-warning strong{color:#ffb4bc}

.save-failure-warning .save-warning-close{position:absolute;top:4px;right:5px;padding:0;width:24px;height:24px;border:0;font-size:20px}.save-failure-warning strong{padding-right:18px}

/* Save artwork carries status color without a surrounding box. */
html body :is(.global-save-indicator,.form-save-controls .icon-btn,.dashboard-commands>[data-dash=save],.dashboard-editor .dash-autosave){background:transparent!important;border-color:transparent!important;box-shadow:none!important;border-radius:0}
html body :is(.global-save-indicator,.form-save-controls .icon-btn,.dashboard-commands>[data-dash=save],.dashboard-editor .dash-autosave):focus-visible{outline:2px solid currentColor;outline-offset:2px;border-radius:4px}
html body .dashboard-editor .dash-autosave:focus-within{outline:2px solid currentColor;outline-offset:2px;border-radius:4px}
.save-action-feedback{position:fixed;top:66px;right:108px;z-index:10059;width:min(300px,calc(100vw - 32px));box-sizing:border-box;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--panel,#fff);color:var(--ink,#263443);box-shadow:0 8px 24px #0003;font-size:12px;line-height:1.5}
.save-action-feedback[hidden]{display:none!important}.save-action-feedback strong{display:block;padding-right:22px}.save-action-feedback p{margin:6px 0}.save-action-feedback small{color:var(--ui-subtle,#687080)}.save-action-feedback button{position:absolute;top:5px;right:5px;width:26px;height:26px;padding:0;border:0;background:transparent;color:inherit;cursor:pointer;font-size:20px}
@media(max-width:480px){.save-action-feedback{right:16px}}

html body .dashboard-editor .dash-autosave:focus-within{outline:none}html body .dashboard-editor .dash-autosave:has(>input:focus-visible){outline:2px solid currentColor;outline-offset:2px;border-radius:4px}

.save-action-feedback{pointer-events:none}.save-action-feedback>button{pointer-events:auto}

.save-action-feedback{top:auto;bottom:64px}

/* A single save dropdown replaces separate header mode buttons. */
html body[data-save-context]>.global-save-indicator{display:inline-flex!important;gap:2px;width:38px;min-width:38px}
body.auth-locked[data-save-context]>.global-save-indicator,body.mobile-entry-mode.mobile-form-fullscreen[data-save-context]>.global-save-indicator{display:none!important}
html body[data-save-context]>.form-save-controls,html body[data-save-context] .dashboard-commands>[data-dash=save],html body[data-save-context] .dashboard-editor .dash-autosave{display:none!important}
.save-menu-chevron{font-size:11px;line-height:1;flex:none}.save-options-menu{position:fixed;top:64px;right:108px;z-index:10061;width:min(270px,calc(100vw - 32px));box-sizing:border-box;padding:16px;border:1px solid var(--line);border-radius:10px;background:var(--panel,#fff);color:var(--ink,#263443);box-shadow:0 8px 24px #0003;font-size:12px;line-height:1.5}
.save-options-menu[hidden]{display:none!important}.save-options-menu fieldset{display:grid;gap:8px;margin:10px 0;padding:10px;border:1px solid var(--line);border-radius:6px}.save-options-menu label{display:flex;gap:8px;align-items:center}.save-options-menu p{margin:10px 0;overflow-wrap:anywhere}.save-options-menu [data-save-help]{font-size:11px;color:var(--ui-subtle,#687080)}.save-options-menu button{width:100%;padding:8px;border:1px solid var(--line);border-radius:6px;color:inherit;background:transparent;cursor:pointer}.save-options-menu [data-menu-status]{color:var(--ink);font-weight:600}.save-failure-warning{top:auto;bottom:64px}
@media(max-width:480px){.save-options-menu{right:16px}}

/* Saving is part of the existing cloud control and its connection panel. */
body[data-save-context]{--save-width:0px}
.global-sync-status>summary[data-save-visual]{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:8px}
.global-sync-status>div[role=dialog]{max-height:calc(100dvh - 88px);overflow:auto;overscroll-behavior:contain}
.global-sync-status .save-options-menu{position:static;inset:auto;width:auto;max-width:none;padding:0 0 14px;margin:0 0 14px;border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none;background:transparent;color:inherit;font-size:12px}
.global-sync-status .save-options-menu>strong{font-size:14px}.global-sync-status .save-options-menu button{font:inherit}

.global-sync-status{z-index:190}

.global-sync-status>div[role=dialog]{position:fixed;top:64px;right:16px;width:min(340px,calc(100vw - 32px))}

/* Calendar is a first-class header destination, independent of dashboards. */
.global-calendar-button{position:fixed;top:10px;right:114px;z-index:191;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;padding:0;background:transparent;color:var(--ink);cursor:pointer}.global-calendar-button svg{width:22px;height:22px;display:block}.global-calendar-button:hover,.global-calendar-button[aria-expanded=true]{color:var(--purple,#6558e8)}.global-calendar-button:focus-visible{outline:2px solid currentColor}
body[data-save-context] .storage-disclosure-toggle{right:162px}body[data-save-context] :is(.topbar,.workspace-top){padding-right:210px!important}
body.auth-locked .global-calendar-button,body.mobile-entry-mode.mobile-form-fullscreen .global-calendar-button{display:none}
.global-calendar-panel{--dash-panel:var(--panel);--dash-ink:var(--ink);--dash-edge:var(--line);--dash-muted:var(--ui-subtle);--widget-color:#277a50;position:fixed;inset:72px 12px 42px;z-index:185;display:flex;flex-direction:column;background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 40px #0003;overflow:hidden;font-family:'Plus Jakarta Sans',sans-serif}.global-calendar-panel[hidden]{display:none!important}.global-calendar-panel>header{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line)}.global-calendar-panel>header>div{flex:1;min-width:0}.global-calendar-panel h2{margin:0 0 4px;font-size:20px}.global-calendar-panel small{font-size:11px}.global-calendar-panel>header button{padding:7px 10px;border:1px solid var(--line);border-radius:6px;background:transparent;color:inherit;cursor:pointer}.global-calendar-panel>header [data-calendar-close]{font-size:22px;line-height:1}.global-calendar-body{display:flex;flex:1;min-height:0;min-width:0}.global-calendar-content{padding:14px;flex:1;min-width:0;min-height:0;overflow:hidden}.global-calendar-sources{flex:0 0 290px;max-width:45%;padding:14px;border-right:1px solid var(--line);overflow:auto;font-size:12px}.global-calendar-sources[hidden]{display:none}.global-calendar-sources h3{margin:0 0 12px}.global-calendar-sources label{display:flex;align-items:flex-start;gap:8px;padding:8px 0;overflow-wrap:anywhere}.global-calendar-sources p{font-size:11px;line-height:1.6;color:var(--ui-subtle)}.global-calendar-panel .dash-calendar-grid.month{grid-template-rows:24px repeat(6,minmax(84px,1fr))}.global-calendar-panel .dash-calendar-grid.week{min-height:60%}
@media(max-width:680px){.global-calendar-button{right:106px}body[data-save-context] .storage-disclosure-toggle{right:154px}body[data-save-context] :is(.topbar,.workspace-top){padding-right:202px!important}.global-calendar-panel{inset:64px 6px 38px}.global-calendar-panel>header{padding:10px;gap:6px}.global-calendar-panel>header small{display:none}.global-calendar-content{padding:8px}.global-calendar-sources{position:absolute;top:61px;bottom:0;left:0;z-index:2;width:min(290px,calc(100% - 30px));max-width:none;box-sizing:border-box;background:var(--panel);box-shadow:4px 0 18px #0002}.global-calendar-panel h2{font-size:17px}}

/* Calendar attention badge overlays the existing icon without moving the app header. */
.calendar-attention-badge{position:absolute;top:1px;right:0;min-width:17px;height:17px;box-sizing:border-box;padding:0 4px;border:2px solid var(--panel,#fff);border-radius:20px;background:#bf394d;color:#fff;font:700 9px/13px 'Plus Jakarta Sans',sans-serif;pointer-events:none}.calendar-attention-badge[hidden]{display:none}
/* Consolidate calendar controls and reserve the remaining area for the dates. */
.global-calendar-panel>header{flex:none;min-height:46px;box-sizing:border-box;padding:7px 10px;gap:10px}.global-calendar-panel>header>div:first-child{flex:none}.global-calendar-panel h2{font-size:16px;margin:0}.global-calendar-panel>header .dash-calendar-tools{flex:1;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;margin:0;min-width:0;font-size:12px}.global-calendar-panel .dash-calendar-tools>strong{text-align:center;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.global-calendar-panel .dash-calendar-tools>div{display:flex;gap:4px}.global-calendar-panel>header button,.global-calendar-panel>header select{height:30px;box-sizing:border-box;padding:4px 8px;font-size:11px}.global-calendar-panel>header [data-calendar-sources]{display:inline-flex;align-items:center;justify-content:center;gap:5px}.global-calendar-panel>header [data-calendar-close]{width:30px;padding:0}.global-calendar-content{padding:8px;display:flex;flex-direction:column}.global-calendar-content>.dash-calendar{flex:1;min-height:0;min-width:0}.global-calendar-panel[data-calendar-view=month] .dash-calendar{display:flex;flex-direction:column;overflow:hidden}.global-calendar-panel[data-calendar-view=month] .dash-calendar-grid.month{flex:1;min-height:0;grid-template-rows:20px repeat(6,minmax(0,1fr));overflow:hidden}.global-calendar-panel .dash-calendar-grid.month>.dash-calendar-day{height:auto;min-height:0;padding:4px;overflow:hidden;box-sizing:border-box}.global-calendar-panel .dash-calendar-grid.month>.dash-calendar-weekday{padding:2px;line-height:15px;box-sizing:border-box}.global-calendar-panel .dash-calendar-grid.month time{margin:0 0 3px}.global-calendar-panel .calendar-day-link{display:flex;align-items:center;justify-content:space-between;gap:2px;width:100%;padding:0 2px;background:transparent;border:0;color:inherit;font:700 12px/20px 'Plus Jakarta Sans',sans-serif;cursor:pointer}.calendar-day-count{display:inline-grid;place-items:center;min-width:15px;padding:0 3px;border-radius:9px;background:color-mix(in srgb,var(--widget-color) 15%,transparent);font-size:9px;line-height:15px}.global-calendar-panel.calendar-density-compact .dash-calendar-month-event:nth-of-type(n+2){display:none}.global-calendar-panel.calendar-density-compact .dash-calendar-day>[data-calendar-date]:not(.calendar-day-link){display:none}.global-calendar-panel.calendar-density-minimal .dash-calendar-month-event{display:none}.global-calendar-panel.calendar-density-minimal .dash-calendar-grid.month>.dash-calendar-day{padding:1px 2px}.global-calendar-panel.calendar-density-minimal .dash-calendar-grid.month time{margin:0}.global-calendar-panel .calendar-day-link:focus-visible{outline:2px solid var(--widget-color);outline-offset:-1px}
.calendar-month-meta{position:relative;flex:none;min-height:25px;display:flex;gap:8px;align-items:center;padding:3px 10px;box-sizing:border-box;border-top:1px solid var(--line);font-size:10px}.calendar-month-meta>[data-calendar-summary]{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-month-meta>details>summary{cursor:pointer;font-size:17px;line-height:20px;list-style:none}.calendar-month-meta>details>summary::-webkit-details-marker{display:none}.calendar-month-meta>details>div{position:absolute;right:8px;bottom:calc(100% + 5px);width:min(340px,calc(100vw - 40px));box-sizing:border-box;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:0 5px 20px #0003;z-index:4;font-size:11px;line-height:1.5}.calendar-month-meta p{margin:0 0 8px}.calendar-month-meta .dash-calendar-key{margin:0}
@media(max-width:700px){.global-calendar-panel>header>div:first-child{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.global-calendar-panel>header{gap:6px;padding:5px 8px}.global-calendar-panel>header [data-calendar-sources]>span{display:none}.global-calendar-panel>header [data-calendar-sources]{width:30px;padding:0}.global-calendar-panel>header .dash-calendar-tools{grid-template-columns:minmax(0,1fr) auto;gap:3px 6px}.global-calendar-panel .dash-calendar-tools>strong{grid-row:1;grid-column:1;text-align:left;font-size:12px}.global-calendar-panel .dash-calendar-tools>select{grid-row:1;grid-column:2;width:74px}.global-calendar-panel .dash-calendar-tools>div{grid-row:2;grid-column:1 / -1;justify-content:center}.global-calendar-sources{top:var(--calendar-header-height,72px)}.global-calendar-content{padding:4px}.global-calendar-panel .calendar-day-link{font-size:11px;line-height:18px}.calendar-day-count{min-width:12px;padding:0 2px;font-size:8px;line-height:13px}.calendar-month-meta{padding:2px 7px;font-size:9px}}
@media(max-height:430px) and (min-width:701px){.global-calendar-panel>header{padding:4px 8px;min-height:38px}.global-calendar-panel h2{font-size:13px}.global-calendar-panel>header .dash-calendar-tools{gap:5px}.global-calendar-content{padding:3px}.calendar-month-meta{min-height:21px;padding:1px 8px}}

@media(max-height:430px) and (min-width:480px){.global-calendar-panel>header{padding:4px 7px;min-height:36px}.global-calendar-panel>header .dash-calendar-tools{grid-template-columns:auto minmax(0,1fr) auto;gap:5px}.global-calendar-panel .dash-calendar-tools>div{grid-row:1;grid-column:1;justify-content:flex-start}.global-calendar-panel .dash-calendar-tools>strong{grid-row:1;grid-column:2;text-align:center}.global-calendar-panel .dash-calendar-tools>select{grid-row:1;grid-column:3;width:68px}.global-calendar-panel>header button,.global-calendar-panel>header select{height:26px}.global-calendar-panel .calendar-day-link{line-height:16px;font-size:10px}.global-calendar-panel.calendar-density-minimal .dash-calendar-grid.month>.dash-calendar-day{padding:0 2px}}

.new-company-mode .invite-can-create { opacity:.58; }

/* Keep the invitee's first and last names together at every viewport width. */
.invitation-profile .invitation-name-fields{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px;min-width:0}
.invitation-profile .invitation-name-fields label{min-width:0}
@media(max-width:500px){.invitation-profile .invitation-name-fields{gap:0 10px}.invitation-profile .invitation-name-fields input{box-sizing:border-box;min-width:0;padding-left:7px;padding-right:7px}}

.new-company-mode .invite-can-create { opacity:.58; }

/* Account menu and invite feedback refinements. */
.account-panel .account-divider{display:none}
.team-dialog button:disabled,.team-dialog button:disabled:hover{cursor:not-allowed;opacity:.45;filter:grayscale(.55);background:color-mix(in srgb,var(--panel) 76%,var(--ink));border-color:var(--line);color:var(--muted)}
.team-dialog form footer [data-team-form-error]{flex:1 0 100%;order:3;margin:8px 0 0;color:#b23838;font-weight:600;line-height:1.5}
.team-dialog form footer [data-team-form-error][hidden]{display:none}
@media(max-width:600px){.team-dialog form footer [data-team-form-error]{order:3}}

.account-center .shared-document-tabs{display:flex;gap:8px;border-bottom:1px solid var(--access-border);padding-bottom:10px;margin:4px 0 14px}.account-center .shared-document-tabs button{background:var(--access-surface);border:1px solid var(--access-border);color:var(--ink);border-radius:8px;padding:9px 14px}.account-center .shared-document-tabs button[aria-pressed=true]{background:var(--access-soft);border-color:var(--access-accent);color:var(--access-accent)}.webmaster-directory> .team-section-title>div{min-width:220px}.webmaster-directory> .team-section-title p{margin:4px 0;color:var(--access-muted)}.webmaster-company{border:1px solid var(--access-border);border-radius:12px;background:var(--access-surface);margin:14px 0;overflow:hidden}.webmaster-company>summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px;cursor:pointer}.webmaster-company>summary::-webkit-details-marker{display:none}.webmaster-company>summary strong,.webmaster-company>summary small{display:block}.webmaster-company>summary small{color:var(--access-muted);margin-top:4px}.webmaster-company-actions{display:flex;gap:8px;padding:0 16px 12px}.webmaster-company .team-table-wrap{margin:0 12px 14px}.webmaster-company h4{margin:18px 16px 8px}.webmaster-company>.team-row{margin:8px 12px}.webmaster-company select{max-width:145px;padding:7px;border:1px solid var(--access-border);border-radius:7px;background:var(--panel);color:var(--ink)}@media(max-width:700px){.webmaster-company .team-table-wrap{overflow-x:auto}.webmaster-company table{min-width:760px}.account-center .shared-document-tabs{flex-wrap:wrap}}

/* Files & Access occupies more of the viewport, while company cards keep their content contained. */
.account-center.file-page>div{width:min(1360px,calc(100vw - 40px));height:min(88dvh,calc(100dvh - 84px));}
.webmaster-directory,.webmaster-directory [data-wm-directory-content],.webmaster-company{box-sizing:border-box;min-width:0;max-width:100%;}
.webmaster-company{overflow:hidden;}
.webmaster-company-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px;background:var(--access-surface);border-bottom:1px solid var(--access-border);}
.webmaster-company-title{min-width:0;flex:1;overflow-wrap:anywhere;}
.webmaster-company-title strong,.webmaster-company-title small{display:block;max-width:100%;overflow-wrap:anywhere;word-break:break-word;}
.webmaster-company-title strong{font-size:14px;line-height:1.4;}
.webmaster-company-title small{margin-top:5px;color:var(--access-muted);line-height:1.5;}
.webmaster-company-heading>button{flex:none;white-space:nowrap;}
.webmaster-company-content{box-sizing:border-box;min-width:0;max-width:100%;padding:12px;}
.webmaster-company-content[hidden]{display:none!important;}
.webmaster-company-actions{display:flex;flex-wrap:wrap;gap:8px;padding:4px 0 12px;}
.webmaster-company-actions button{white-space:normal;max-width:100%;}
.webmaster-company-actions .wm-delete-company{color:var(--access-danger);border-color:color-mix(in srgb,var(--access-danger) 45%,var(--access-border));}
.webmaster-company .team-table-wrap{box-sizing:border-box;width:100%;max-width:100%;overflow-x:auto;margin:0 0 16px;}
.webmaster-company table{width:100%;table-layout:fixed;border-collapse:collapse;}
.webmaster-company th,.webmaster-company td{box-sizing:border-box;min-width:0;overflow-wrap:anywhere;word-break:break-word;}
.webmaster-company td strong,.webmaster-company td small{display:block;max-width:100%;overflow-wrap:anywhere;word-break:break-word;}
.webmaster-company td button,.webmaster-company td select{max-width:100%;white-space:normal;}
.webmaster-company-content>.team-row{box-sizing:border-box;max-width:100%;min-width:0;}
.webmaster-company-content>.team-row>span{min-width:0;overflow-wrap:anywhere;word-break:break-word;}
.webmaster-company-content p{max-width:100%;overflow-wrap:anywhere;}
@media(max-width:760px){.account-center.file-page>div{width:calc(100vw - 20px);height:calc(100dvh - 72px);}.webmaster-company-heading{align-items:flex-start;padding:12px;}.webmaster-company-heading>button{white-space:normal;max-width:120px;}.webmaster-company .team-table-wrap{overflow-x:auto}.webmaster-company table{min-width:760px}}

.webmaster-directory-toolbar{display:flex;align-items:flex-start;gap:20px;width:100%;margin:0 0 18px;padding:0 0 14px;border-bottom:1px solid var(--access-border);}
.webmaster-directory-heading{min-width:0;flex:1;}
.webmaster-directory-heading h3{margin:0 0 5px;}
.webmaster-directory-heading p{margin:0 0 12px;color:var(--access-muted);}
.webmaster-directory-search{display:block;max-width:520px;margin:0 0 6px;font-size:11px;color:var(--access-muted);}
.webmaster-directory-search input{box-sizing:border-box;display:block;width:100%;margin-top:5px;padding:10px 12px;border:1px solid var(--access-border);border-radius:8px;background:var(--panel);color:var(--ink);font:inherit;}
.webmaster-directory-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:none;margin-left:auto;}
.webmaster-directory-actions button{flex:none;}
.webmaster-directory [data-wm-count]{display:block;color:var(--access-muted);font-size:11px;margin-top:5px;}
.webmaster-company{margin:8px 0;border-radius:10px;}
.webmaster-company-heading{min-height:42px;padding:7px 10px;}
.webmaster-company-title strong{font-size:13px;}
.webmaster-company-title small{margin-top:2px;font-size:10px;line-height:1.35;}
.webmaster-company-heading>button{padding:6px 9px;font-size:10px;}
@media(max-width:700px){.webmaster-directory-toolbar{align-items:stretch;gap:10px;flex-direction:column}.webmaster-directory-actions{align-self:flex-end;margin-left:0}.webmaster-directory-search{max-width:none}.webmaster-company-heading{padding:8px}.webmaster-company-heading>button{max-width:100px}}
.global-calendar-source-search{box-sizing:border-box;width:100%;padding:8px 9px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--ink);font:12px 'Plus Jakarta Sans',sans-serif;margin:6px 0 10px}.global-calendar-source-group{min-width:0;border:1px solid var(--line);border-radius:8px;margin:8px 0;padding:4px 9px 6px}.global-calendar-source-group legend{padding:0 3px;font-size:11px;font-weight:700}.global-calendar-source-group legend label{align-items:center;padding:5px 0;font-weight:700}.global-calendar-source-group .global-calendar-source-option{padding:5px 0 5px 24px;font-size:11px}
.dash-calendar>.dash-data-empty{display:block;flex:none;min-height:0;max-width:100%;box-sizing:border-box;margin:0 0 6px;padding:5px 8px;border-inline-start:2px solid var(--widget-color);border-radius:5px;background:color-mix(in srgb,var(--widget-color) 7%,var(--dash-panel,var(--panel,#fff)));font-size:10px;line-height:1.35;text-align:left}
#createNewMenu{gap:2px;padding:5px}
#createNewMenu>button.create-menu-item{box-sizing:border-box;grid-template-columns:24px minmax(0,1fr);grid-template-rows:12px 10px;gap:0 7px;width:100%;height:30px;min-height:30px;padding:2px 6px;border-radius:7px}
#createNewMenu .create-menu-icon{width:21px;height:21px;border-radius:7px}
#createNewMenu .create-menu-icon svg{width:16px;height:16px}
#createNewMenu .create-menu-item>b{font-size:10px;line-height:12px;white-space:nowrap}
#createNewMenu .create-menu-item>small{font-size:8.5px;line-height:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.preferences-security-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:10px}.preferences-security-row strong{font-size:12px}.preferences-security-row p{font-size:11px}.preferences-security-row button,.preferences-mfa-enrollment button{padding:8px 11px;border:1px solid var(--pref-line);border-radius:7px;background:var(--pref-tint);color:var(--pref-accent);font:600 11px 'Plus Jakarta Sans',sans-serif;cursor:pointer}.preferences-mfa-enrollment{margin-top:14px;padding:15px;border:1px solid var(--pref-line);border-radius:10px;background:var(--pref-soft)}.preferences-mfa-enrollment>p{font-size:11px;line-height:1.5}.preferences-mfa-enrollment img{display:block;width:170px;height:170px;object-fit:contain;margin:12px auto;background:#fff;border-radius:8px}.preferences-mfa-enrollment label{display:grid;gap:6px;margin:11px 0;font-size:11px;font-weight:600}.preferences-mfa-enrollment code{overflow-wrap:anywhere;padding:8px;border-radius:6px;background:var(--pref-bg);font:11px 'DM Mono',monospace;user-select:all}.preferences-mfa-enrollment input{box-sizing:border-box;width:100%;padding:9px;border:1px solid var(--pref-line);border-radius:6px;background:var(--pref-bg);color:var(--pref-ink);font:14px 'DM Sans',sans-serif;letter-spacing:2px}.preferences-mfa-enrollment [role=alert]{color:#b42318;min-height:0}.preferences-mfa-enrollment>div{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.preferences-security-row button:disabled,.preferences-mfa-enrollment button:disabled{opacity:.6;cursor:wait}.login-mfa{margin-top:12px}.login-mfa p{color:#747b8b;font-size:11px;line-height:1.5}.login-mfa>button{margin-top:9px;padding:6px;border:0;background:transparent;color:var(--purple);cursor:pointer;font:11px 'Plus Jakarta Sans',sans-serif}.login-mfa[hidden],.preferences-mfa-enrollment[hidden]{display:none!important}
html[data-theme=dark] .preferences-mfa-enrollment{background:#1a1f2b;border-color:#414759}html[data-theme=dark] .preferences-mfa-enrollment code,html[data-theme=dark] .preferences-mfa-enrollment input{background:#232735;color:#eef0f6;border-color:#454b5d}html[data-theme=dark] .login-mfa p{color:#a9aebb}
.account-menu-backdrop[hidden]{display:none}.account-menu-backdrop{position:fixed;inset:0;z-index:180;background:rgba(14,20,32,.2);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}
.topbar .account-menu,.workspace-top .account-menu{z-index:181}
body.global-calendar-active .account-menu-backdrop{z-index:192}
body.global-calendar-active .topbar,body.global-calendar-active .workspace-top{z-index:200}
body.global-calendar-active .topbar .account-menu,body.global-calendar-active .workspace-top .account-menu{z-index:193}
body.global-calendar-active :is(.global-calendar-button,.global-sync-status,.storage-disclosure-toggle){z-index:220}
body.account-panel-selection-active .account-menu-backdrop{z-index:180;pointer-events:none}
body.global-calendar-active.account-panel-selection-active .account-menu-backdrop{z-index:210}
body.account-panel-selection-active :is(.profile-dialog:not(.hidden),.file-page:not(.hidden),.company-workspace-page[open]){z-index:230!important}
body.global-calendar-active.account-panel-selection-active :is(.global-calendar-button,.global-sync-status,.storage-disclosure-toggle){z-index:205}
.profile-card{width:min(560px,100%);padding:36px;border:1px solid color-mix(in srgb,var(--line) 75%,var(--purple));border-radius:18px;background:var(--panel);color:var(--ink);text-align:left;box-shadow:0 28px 90px #101a3440}
.profile-identity{display:flex;align-items:flex-start;gap:20px;padding:4px 28px 22px 0}
.profile-identity-copy{flex:1;min-width:0}.profile-identity .profile-avatar{width:66px;height:66px;flex:none;margin:2px 0 0;background:linear-gradient(145deg,#dff3e7,#b9dfc9);color:#216643;box-shadow:inset 0 0 0 1px #277a5020}
.profile-identity .eyebrow{font:700 9px 'DM Mono',monospace;letter-spacing:1.1px;color:#277a50}.profile-identity h2{margin:5px 0 3px;color:var(--ink);font:700 23px 'Plus Jakarta Sans',sans-serif;letter-spacing:-.5px}.profile-identity .profile-handle{margin:0 0 15px;color:var(--muted);font-size:12px}
.profile-company-affiliation{display:flex;align-items:center;gap:10px;padding:11px 13px;border:1px solid color-mix(in srgb,#277a50 20%,var(--line));border-radius:10px;background:color-mix(in srgb,#277a50 6%,var(--panel));color:var(--ink)}
.profile-company-icon{display:grid;place-items:center;width:32px;height:32px;flex:none;border-radius:8px;background:color-mix(in srgb,#277a50 12%,var(--panel));color:#277a50}.profile-company-icon svg{width:18px;height:18px}.profile-company-affiliation small,.profile-company-affiliation strong{display:block}.profile-company-affiliation small{margin-bottom:3px;color:var(--muted);font:700 8px 'DM Mono',monospace;letter-spacing:.8px}.profile-company-affiliation strong{overflow-wrap:anywhere;font-size:12px;font-weight:700}
.profile-card .profile-close{display:grid;place-items:center;width:34px;height:34px;right:14px;top:14px;border-radius:9px;background:transparent;color:var(--muted);font:24px/1 'DM Sans',sans-serif}.profile-card .profile-close:hover{background:color-mix(in srgb,var(--ink) 7%,var(--panel));color:var(--ink)}
.profile-readonly{grid-template-columns:100px minmax(0,1fr);gap:0 14px;margin:0;padding:8px 0 4px;border-top:1px solid var(--line);font-size:12px}.profile-readonly dt,.profile-readonly dd{padding:11px 0;border-bottom:1px solid color-mix(in srgb,var(--line) 75%,transparent)}.profile-readonly dt{font-size:10px;font-weight:600}.profile-readonly dd{font-weight:600;text-align:right}.profile-edit-toggle{margin-top:17px;background:var(--ink);border-color:var(--ink);color:var(--panel);font-weight:700}.profile-edit-toggle:hover{opacity:.88}
html[data-theme="dark"] .profile-identity .profile-avatar{background:linear-gradient(145deg,#284b39,#203c30);color:#b8e8cc}html[data-theme="dark"] .profile-company-affiliation{border-color:#42624e;background:#203329}html[data-theme="dark"] .profile-company-icon{background:#294535;color:#b8e8cc}html[data-theme="dark"] .profile-edit-toggle{background:#e8e9f1;border-color:#e8e9f1;color:#20253a}
@media(max-width:520px){.profile-card{padding:26px 20px}.profile-identity{gap:13px}.profile-identity .profile-avatar{width:52px;height:52px;font-size:15px}.profile-identity h2{font-size:19px}.profile-readonly{grid-template-columns:82px minmax(0,1fr)}}
dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.profile-dialog:not(.hidden){-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}

/* Independent manual placement for folder contents. */
.folder-viewer-list.folder-freeform{display:block;position:relative;min-height:180px;overflow:auto}.folder-viewer-list.folder-freeform>.explorer-entry,.folder-viewer-list.folder-freeform>.workspace-folder,.folder-viewer-list.folder-freeform>.folder-file,.folder-viewer-list.folder-freeform>.local-linked-file{box-sizing:border-box;min-height:110px;cursor:grab;touch-action:none}.folder-viewer-list.folder-freeform>.explorer-entry:active,.folder-viewer-list.folder-freeform>.folder-file:active{cursor:grabbing}.folder-viewer-list.folder-freeform .explorer-detail-head{display:none!important}.folder-freeform-toggle[aria-pressed="true"]{color:var(--workspace-color,#277a50);background:color-mix(in srgb,var(--workspace-color,#277a50) 10%,var(--panel,#fff))}
.module-workspace .workspace-folder-section,.module-workspace .workspace-spotlight,.module-workspace .workspace-tiles{display:none!important}
/* Workspace toolbar: keep location menus above overlays and filters compact. */
body :is(.workspace-top,.topbar){position:relative;z-index:2147483000}
body :is(.workspace-top,.topbar) :is(.account-panel,.workspace-switcher nav,.directory-trail nav,.folder-storage .storage-detail){z-index:2147483001}
.workspace-browse-row{position:relative;z-index:20;flex-wrap:nowrap;gap:8px}
.workspace-browse-row>.workspace-file-filters{order:0;flex:1 1 auto;min-width:0}
.workspace-browse-row>.expanding-search{order:1;margin-left:auto;flex:none;gap:6px}
.workspace-browse-row>.folder-sort,.workspace-browse-row>.folder-view-menu{order:2}
.workspace-file-filters{display:flex;align-items:center;min-width:0;margin:0}
.workspace-zoom-controls{display:flex;align-items:center;gap:4px}
.workspace-zoom-controls button,.workspace-browse-row .expanding-search>button,.workspace-filter-menu>summary{display:grid;place-items:center;box-sizing:border-box;width:38px;height:38px;padding:7px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--ink);cursor:pointer}
.workspace-zoom-controls button:hover,.workspace-browse-row .expanding-search>button:hover,.workspace-filter-menu>summary:hover{background:color-mix(in srgb,var(--workspace-color,#277a50) 8%,var(--panel))}
.workspace-zoom-controls output{min-width:42px;text-align:center;color:var(--muted);font:600 11px 'Plus Jakarta Sans',sans-serif}
.workspace-zoom-controls button[data-zoom=out],.workspace-zoom-controls button[data-zoom=in]{font-size:19px;line-height:1}
.workspace-browse-row .expanding-search{position:relative;display:flex;align-items:center;gap:6px;overflow:visible}
.workspace-browse-row .expanding-search input{width:min(220px,30vw);background:var(--panel);color:var(--ink)}
.workspace-filter-menu{position:relative;flex:none}
.workspace-filter-menu>summary{list-style:none}
.workspace-filter-menu>summary::-webkit-details-marker{display:none}
.workspace-filter-menu>div{position:absolute;top:calc(100% + 7px);right:0;z-index:10000;display:grid;gap:8px;width:230px;max-width:calc(100vw - 32px);padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--ink);box-shadow:0 12px 34px #0003;font:11px 'Plus Jakarta Sans',sans-serif}
.workspace-filter-menu>div>strong{font-size:12px}
.workspace-filter-menu label{display:flex;align-items:center;gap:8px;cursor:pointer}
.workspace-filter-menu input{accent-color:var(--workspace-color,#277a50)}
.workspace-gallery.custom-appearance::before{position:fixed;inset:64px 0 0;pointer-events:none}
@media(max-width:600px){.workspace-browse-row{flex-wrap:wrap}.workspace-browse-row>.workspace-file-filters{flex:1 0 100%;order:1}.workspace-browse-row>.expanding-search{order:0;margin-left:auto}.workspace-browse-row>.folder-sort,.workspace-browse-row>.folder-view-menu{order:2}.workspace-zoom-controls{gap:2px}.workspace-zoom-controls button,.workspace-browse-row .expanding-search>button,.workspace-filter-menu>summary{width:34px;height:34px}.workspace-filter-menu>div{position:fixed;top:auto;right:12px;bottom:16px}}
/* Folder search and type filters stay adjacent in the folder action row. */
.folder-viewer-actions .folder-search{display:flex;align-items:center;gap:6px;margin-left:0;overflow:visible}
.folder-viewer-actions .folder-search>input{order:0}
.folder-viewer-actions .folder-search>button{order:1}
.folder-viewer-actions .folder-search>.folder-type-filter{order:2}
.folder-search>.expanding-search>button,.folder-search>button,.folder-search .folder-type-filter>summary{display:grid;place-items:center;box-sizing:border-box;width:36px;height:36px;padding:7px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--ink);cursor:pointer}
.folder-search .folder-type-filter{position:relative;flex:none}
.folder-search .folder-type-filter>summary{list-style:none}
.folder-search .folder-type-filter>summary::-webkit-details-marker{display:none}
.folder-search .folder-type-filter>div{position:absolute;top:calc(100% + 7px);right:0;z-index:1000;display:grid;gap:8px;width:230px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--ink);box-shadow:0 12px 34px #0003;font:11px 'Plus Jakarta Sans',sans-serif}
.folder-search .folder-type-filter>div{max-height:min(70dvh,560px);overflow:auto;overscroll-behavior:contain}
.folder-search .folder-type-filter label{display:flex;align-items:center;gap:8px;cursor:pointer}
.folder-search .folder-type-filter input{accent-color:var(--workspace-color,#277a50)}
/* Keep the app header and root workspace controls stationary as files scroll. */
body .workspace-view:not(.choosing)>.workspace-top{position:sticky;top:0;z-index:2147483000}
body .workspace-view:not(.choosing)>.workspace-gallery .workspace-title{position:sticky;top:64px;z-index:40;padding:8px 0 10px;background:color-mix(in srgb,var(--panel) 82%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
body .workspace-view:not(.choosing)>.workspace-gallery .workspace-browse-row{position:sticky;top:calc(64px + var(--workspace-title-height,58px) + 12px);z-index:39;margin-top:12px;margin-bottom:18px;padding:7px 0 8px;background:color-mix(in srgb,var(--panel) 84%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.workspace-browse-row::after{content:"";position:absolute;left:-32px;right:-32px;bottom:0;height:1px;opacity:0;pointer-events:none;background:var(--line);box-shadow:0 2px 7px color-mix(in srgb,var(--ink) 12%,transparent);transition:opacity .16s ease}
.workspace-view.workspace-content-under .workspace-browse-row::after{opacity:1}
html[data-theme=dark] body .workspace-view:not(.choosing)>.workspace-gallery :is(.workspace-title,.workspace-browse-row){background:color-mix(in srgb,var(--panel) 84%,transparent)}
@media(max-width:600px){body .workspace-view:not(.choosing)>.workspace-gallery .workspace-title{top:56px}body .workspace-view:not(.choosing)>.workspace-gallery .workspace-browse-row{top:calc(56px + var(--workspace-title-height,58px) + 8px);margin-top:8px}.workspace-browse-row::after{left:-16px;right:-16px}}
/* Keep Home's primary controls in the title row and remove the old row separator. */
body .workspace-view:not(.choosing)>.workspace-gallery .workspace-title{display:flex;align-items:center;gap:14px;min-height:58px;margin:0;padding:8px 0;background:color-mix(in srgb,var(--panel) 90%,transparent)}
body .workspace-view:not(.choosing)>.workspace-gallery .workspace-title>.surface-title-group{position:static;display:flex;align-items:baseline;gap:10px;flex:0 1 auto;min-width:0}
body .workspace-view:not(.choosing)>.workspace-gallery .workspace-title>.surface-title-group h1{flex:none;margin:0;padding:0;font-size:25px;white-space:nowrap}
body .workspace-view:not(.choosing)>.workspace-gallery .workspace-title>.surface-title-group p{min-width:0;max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.workspace-title-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex:1 1 auto;min-width:0;position:relative;overflow:visible}
.workspace-title-actions>.workspace-file-filters,.workspace-title-actions>.expanding-search{position:relative;display:flex;align-items:center;flex:none;margin:0;gap:5px;overflow:visible}
.workspace-title-actions .workspace-zoom-controls{gap:3px}
.workspace-title-actions .workspace-zoom-controls button,.workspace-title-actions .expanding-search>button,.workspace-title-actions .workspace-filter-menu>summary{width:34px;height:34px}
.workspace-title-actions .expanding-search input{width:min(180px,20vw);min-width:90px;height:34px;background:var(--panel);color:var(--ink)}
.workspace-title-actions .workspace-options-dropdown{position:relative;inset:auto;z-index:50;flex:none}
.workspace-title-actions .workspace-options-dropdown>.workspace-settings-btn{position:relative;inset:auto;display:grid;place-items:center;box-sizing:border-box;width:36px;height:36px;margin:0;padding:7px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--ink);font-size:0}
.workspace-title-actions .workspace-options-dropdown>.workspace-settings-btn span{display:none}
.workspace-title-actions>.create-new{position:relative;inset:auto;flex:none;z-index:51}
.workspace-title-actions>.surface-options{position:relative;inset:auto;order:initial;flex:none;margin:0;z-index:52}
.workspace-title-actions>.surface-options>.surface-tools{right:0;top:calc(100% + 6px);z-index:2147481000}
.workspace-title-actions .create-new-trigger{white-space:nowrap}
.workspace-browse-row{border:0;box-shadow:none}
.workspace-browse-row::after,.workspace-view.workspace-content-under .workspace-browse-row::after{display:none!important;content:none!important}
.workspace-filter-menu>div{left:0;right:auto;box-sizing:border-box;width:250px;max-height:min(70dvh,560px);overflow:auto;overscroll-behavior:contain;z-index:2147482000}
.workspace-filter-menu label{display:flex!important;position:relative;gap:9px;min-height:24px;line-height:1.35;white-space:normal}
.workspace-filter-menu label>input[type=checkbox]{position:static!important;inset:auto!important;display:inline-block!important;visibility:visible!important;opacity:1!important;box-sizing:border-box;appearance:auto;width:14px;height:14px;min-width:14px;margin:0;flex:0 0 14px;accent-color:var(--workspace-color,#277a50)}
.directory-trail>button.directory-home{display:inline-grid;place-items:center;flex:0 0 30px;width:30px;height:30px;max-width:30px;padding:5px;border:0;border-radius:7px;background:transparent;color:var(--ink)}
.directory-trail>button.directory-home:hover{background:transparent;color:var(--workspace-color,#277a50)}
@media(max-width:760px){body .workspace-view:not(.choosing)>.workspace-gallery .workspace-title{gap:6px;min-height:48px}.workspace-title-actions{gap:3px}.workspace-title-actions .workspace-zoom-controls{gap:1px}.workspace-title-actions .workspace-zoom-controls button,.workspace-title-actions .expanding-search>button,.workspace-title-actions .workspace-filter-menu>summary{width:30px;height:32px;padding:4px}.workspace-title-actions .workspace-zoom-controls output{min-width:31px;font-size:9px}.workspace-title-actions .expanding-search input{width:min(120px,28vw);min-width:64px;height:32px}.workspace-title-actions .workspace-options-dropdown>.workspace-settings-btn{width:32px;height:32px}.workspace-title-actions .create-new-trigger{padding:8px 9px;font-size:10px}.workspace-title>.surface-title-group h1{font-size:20px}}
@media(max-width:430px){body .workspace-view:not(.choosing)>.workspace-gallery .workspace-title>.surface-title-group p{display:none}.workspace-title-actions .workspace-zoom-controls output{display:none}.workspace-title-actions .workspace-zoom-controls{gap:1px}}
/* Home keeps its controls pinned while its contents scroll below the header. */
body .workspace-view:not(.choosing)>.workspace-gallery .workspace-title,
body .workspace-view:not(.choosing)>.workspace-gallery .workspace-browse-row{background:transparent!important;backdrop-filter:blur(14px) saturate(.55)!important;-webkit-backdrop-filter:blur(14px) saturate(.55)!important;box-shadow:none!important;border-color:transparent!important}
body .workspace-view:not(.choosing)>.workspace-gallery .workspace-title{z-index:120;}
body .workspace-view:not(.choosing)>.workspace-gallery .workspace-browse-row{z-index:119;}
.workspace-gallery.home-root-active .workspace-title-actions .workspace-options-dropdown{display:none!important}
.workspace-top>.all-workspaces{display:none!important}
body .workspace-top>.directory-trail{margin-left:22px}
body .workspace-view:not(.choosing)>.workspace-gallery .workspace-browse-row{margin-top:0;margin-bottom:12px;padding:0;}
.workspace-title-actions>.home-title-zoom{display:flex;align-items:center;flex:none;margin:0;order:0}
.home-title-zoom .workspace-zoom-controls{gap:2px}
.home-title-zoom .workspace-zoom-controls button{display:grid;place-items:center;box-sizing:border-box;width:30px;height:30px;padding:4px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--ink);cursor:pointer}
.home-title-zoom .workspace-zoom-controls button svg{width:15px;height:15px}
.home-title-zoom .workspace-zoom-controls output{min-width:35px;text-align:center;color:var(--muted);font:600 10px 'Plus Jakarta Sans',sans-serif}
.workspace-title-actions .home-search{display:flex;align-items:center;flex:none;gap:5px;margin-left:auto;overflow:visible}
.workspace-title-actions .home-search>input{order:0;box-sizing:border-box;width:0;min-width:0;height:34px;margin:0;padding:0;border-width:0;opacity:0;pointer-events:none;transition:width .24s ease,opacity .16s ease,padding .24s ease,border-width .24s ease}
.workspace-title-actions .home-search.search-open>input{width:min(180px,24vw);min-width:80px;padding:0 10px;border-width:1px;opacity:1;pointer-events:auto}
.workspace-title-actions .home-search>button{order:1;flex:none;z-index:1}
.workspace-title-actions .home-search>.workspace-filter-menu{order:2}
body .workspace-view:not(.choosing)>.workspace-gallery .workspace-browse-row::before,
body .workspace-view:not(.choosing)>.workspace-gallery .workspace-title::before{content:none!important;display:none!important}
@media(max-width:760px){body .workspace-top>.directory-trail{position:fixed;left:120px;right:154px;top:16px;height:32px;margin:0}.home-title-zoom .workspace-zoom-controls{gap:1px}.workspace-title-actions .home-title-zoom .workspace-zoom-controls button{width:26px;height:30px;padding:3px}.home-title-zoom .workspace-zoom-controls output{min-width:27px;font-size:9px}.workspace-title-actions .home-search.search-open>input{width:min(140px,34vw);min-width:65px}}
/* Give appearance controls room and keep their live tile/page preview in view. */
html body .appearance-dialog{width:min(1500px,calc(100vw - 24px));height:min(94dvh,1100px);padding:24px}
.appearance-layout{grid-template-columns:minmax(360px,440px) minmax(0,1fr);gap:28px}
.appearance-settings-pane{padding-right:16px}
html body .appearance-dialog .appearance-settings-pane .appearance-preview{position:sticky;top:0;z-index:4;height:190px;min-height:190px;background-color:var(--panel);box-shadow:0 8px 18px color-mix(in srgb,var(--ink) 10%,transparent)}
@media(max-width:650px){html body .appearance-dialog{width:calc(100vw - 12px);height:calc(100dvh - 12px);padding:12px}.appearance-layout{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) minmax(220px,.8fr);gap:12px;overflow:hidden}.appearance-settings-pane,.appearance-gallery-pane{min-height:0;overflow:auto}.appearance-settings-pane{border-right:0;padding-right:4px}.appearance-gallery-pane{margin:0}.appearance-settings-pane .appearance-targets{top:0}.appearance-settings-pane .appearance-preview{height:150px!important;min-height:150px!important}.appearance-dialog .appearance-presets{overflow:auto!important;min-height:0!important;grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Home stays transparent while its contents pass beneath the title row. */
body .workspace-view:not(.choosing)>.workspace-gallery .workspace-title,
body .workspace-view:not(.choosing)>.workspace-gallery .workspace-browse-row{background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:none!important}
body .workspace-view:not(.choosing)>.workspace-gallery .workspace-title{position:sticky;isolation:isolate}
body .workspace-view:not(.choosing)>.workspace-gallery .workspace-title::after{content:"";position:absolute;left:-32px;right:-32px;bottom:0;height:2px;opacity:0;pointer-events:none;background:color-mix(in srgb,var(--ink) 48%,var(--line));box-shadow:0 1px 5px color-mix(in srgb,var(--ink) 22%,transparent);transition:opacity .16s ease}
body .workspace-view:not(.choosing)>.workspace-gallery.home-content-under .workspace-title::after{opacity:.9}
body :is(.global-calendar-button,.global-sync-status,.storage-disclosure-toggle,.global-save-indicator){z-index:2147483001!important}
.appearance-settings-icon{display:inline-grid!important;place-items:center!important;box-sizing:border-box;width:38px;height:38px;padding:8px!important;border:1px solid var(--line)!important;border-radius:8px;background:var(--panel)!important;color:var(--ink)!important;cursor:pointer}
.appearance-settings-icon svg{display:block;margin:auto}
@media(max-width:600px){body .workspace-view:not(.choosing)>.workspace-gallery .workspace-title::after{left:-16px;right:-16px}}
/* Pin Home chrome from the first pixel of scrolling and let only content clip beneath it. */
body .workspace-view:not(.choosing)>.workspace-gallery.home-root-active{padding-top:0!important}
body .workspace-view:not(.choosing)>.workspace-gallery.home-root-active>.workspace-title{position:sticky!important;top:64px!important;z-index:120!important;margin-top:0!important}
body .workspace-view:not(.choosing)>.workspace-gallery.home-root-active>.workspace-browse-row{position:sticky!important;top:calc(64px + var(--workspace-title-height,58px))!important;z-index:119!important;margin-top:0!important;margin-bottom:12px!important;padding:0!important}
@media(max-width:600px){body .workspace-view:not(.choosing)>.workspace-gallery.home-root-active>.workspace-title{top:64px!important}body .workspace-view:not(.choosing)>.workspace-gallery.home-root-active>.workspace-browse-row{top:calc(64px + var(--workspace-title-height,58px))!important}}
.workspace-title-actions .home-search>input{display:block!important;flex:0 1 auto;box-sizing:border-box}
.workspace-title-actions .home-search:not(.search-open)>input{width:0!important;min-width:0!important;padding-left:0!important;padding-right:0!important;border-left-width:0!important;border-right-width:0!important;opacity:0;pointer-events:none}
.workspace-title-actions .home-search.search-open>input{width:min(180px,24vw)!important;min-width:80px!important;opacity:1;pointer-events:auto}
.workspace-title-actions .home-search>button{position:relative;z-index:2}
@media(max-width:760px){.workspace-title-actions .home-search.search-open>input{width:min(140px,34vw)!important;min-width:65px!important}}
.directory-trail>.workspace-switcher{display:inline-flex!important}
/* Keep Home's location trail aligned with the content title and its controls. */
body .workspace-top>.directory-trail{margin-left:0}
@media(max-width:760px){body .workspace-top>.directory-trail{left:96px}}
/* Use the active location accent to keep module, folder, and form icons cohesive. */
.file-type-icon.file-symbol:is(.symbol-compliance-register,.symbol-project-tracker,.symbol-task-tracker,.symbol-records-module){color:color-mix(in srgb,var(--workspace-color,#276a53) 72%,var(--ink,#26352e));background:color-mix(in srgb,var(--workspace-color,#276a53) 15%,var(--panel,#f5f7f6))}
.workspace-card-icon{color:color-mix(in srgb,var(--workspace-color,#276a53) 72%,var(--ink,#26352e))}
.workspace-card-icon svg{color:inherit}
.file-type-icon.file-symbol:is(.symbol-folder,.folder-icon){color:color-mix(in srgb,var(--workspace-color,#276a53) 44%,#b57931);background:color-mix(in srgb,var(--workspace-color,#276a53) 12%,#f4e7d4)}
.file-type-icon.form-draft{color:color-mix(in srgb,var(--workspace-color,#276a53) 24%,#98601d);background:color-mix(in srgb,var(--workspace-color,#276a53) 12%,#fbefda)}
.file-type-icon.form-published{color:color-mix(in srgb,var(--workspace-color,#276a53) 34%,#206b4c);background:color-mix(in srgb,var(--workspace-color,#276a53) 12%,#e1f1e8)}
:is(#workspaceFolders,#folderViewerList) .explorer-art .file-type-icon.file-symbol:is(.symbol-compliance-register,.symbol-project-tracker,.symbol-task-tracker,.symbol-records-module){color:color-mix(in srgb,var(--workspace-color,#276a53) 72%,var(--ink,#26352e));background:color-mix(in srgb,var(--workspace-color,#276a53) 15%,var(--panel,#f5f7f6))}
:is(#workspaceFolders,#folderViewerList) .explorer-art .file-type-icon.file-symbol:is(.symbol-folder,.folder-icon){color:color-mix(in srgb,var(--workspace-color,#276a53) 44%,#b57931);background:color-mix(in srgb,var(--workspace-color,#276a53) 12%,#f4e7d4)}
:is(#workspaceFolders,#folderViewerList) .explorer-art .file-type-icon.form-draft{color:color-mix(in srgb,var(--workspace-color,#276a53) 24%,#98601d);background:color-mix(in srgb,var(--workspace-color,#276a53) 12%,#fbefda)}
:is(#workspaceFolders,#folderViewerList) .explorer-art .file-type-icon.form-published{color:color-mix(in srgb,var(--workspace-color,#276a53) 34%,#206b4c);background:color-mix(in srgb,var(--workspace-color,#276a53) 12%,#e1f1e8)}

/* Restore the original first-start welcome inside an empty Home and guide the eye to Create New. */
.workspace-location-empty.workspace-home-welcome{align-items:center;display:flex;flex-direction:column;gap:8px;width:min(600px,calc(100% - 32px));max-width:600px;min-height:0;margin:clamp(22px,6vh,64px) auto 36px;padding:28px 30px 32px;border:1px solid color-mix(in srgb,var(--empty-icon-ink,var(--ink,#17212e)) 16%,transparent);border-radius:24px;background:color-mix(in srgb,var(--appearance-surface,var(--panel,#fff)) 78%,transparent);box-shadow:inset 0 2px 10px color-mix(in srgb,var(--empty-icon-ink,var(--ink,#17212e)) 10%,transparent),inset 0 1px 0 color-mix(in srgb,#fff 42%,transparent),0 14px 34px color-mix(in srgb,var(--empty-icon-ink,var(--ink,#17212e)) 8%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);text-align:center;color:var(--appearance-ink,var(--ink,#17212e))}
.workspace-home-welcome .empty-location-art{width:230px;height:auto;margin:0 auto 8px;color:var(--empty-icon-ink,var(--ink,#20253a))}
.workspace-home-welcome .welcome-eyebrow{color:var(--muted);font:600 10px/1.5 'Plus Jakarta Sans',sans-serif;letter-spacing:.16em}
.workspace-home-welcome h2{margin:8px 0 4px;color:var(--appearance-ink,var(--ink,#17212e));font:700 28px/1.2 'Plus Jakarta Sans',sans-serif;letter-spacing:-.04em}
.workspace-home-welcome p{max-width:420px;margin:0;color:var(--appearance-ink,var(--muted,#707b86));font:14px/1.8 'Plus Jakarta Sans',sans-serif}
.workspace-home-welcome small{margin-top:5px;color:var(--appearance-ink,var(--muted,#707b86));font:11px/1.7 'Plus Jakarta Sans',sans-serif}
.workspace-gallery:is(.surface-has-content,.surface-has-panels)>.workspace-location-empty{display:none!important}
html[data-theme="dark"] .workspace-home-welcome .welcome-eyebrow,html[data-theme="dark"] .workspace-home-welcome :is(p,small){color:var(--appearance-ink,var(--muted,#a8b3c1))}
@media(max-width:600px){.workspace-location-empty.workspace-home-welcome{margin:18px auto 28px;padding:22px 16px 26px;border-radius:20px}.workspace-home-welcome .empty-location-art{width:190px}.workspace-home-welcome h2{font-size:24px}.workspace-home-welcome p{font-size:13px}.workspace-home-welcome small{font-size:10px}}
