/* Shared control geometry, independent of saved block size and appearance. */
:root{--control-size:32px;--control-icon:16px;--control-gap:4px;--control-radius:7px;--gutter-button:26px;--gutter-gap:2px;--gutter-bridge:12px}
html{scrollbar-gutter:stable}
.app-location #breadcrumb{display:flex;align-items:center;gap:6px;min-width:0;max-width:100%;white-space:nowrap;overflow:hidden}
.app-location #breadcrumb>.crumb-link{flex:0 1 auto}.app-location #breadcrumb>.crumb-divider{flex:none}
.topbar .app-location{min-width:0;overflow:hidden}.topbar #save-status{flex:0 0 auto}
.note-document .block-gutter{left:calc(-2 * var(--gutter-button) - var(--gutter-gap) - var(--gutter-bridge));top:4px;width:calc(2 * var(--gutter-button) + var(--gutter-gap) + var(--gutter-bridge));height:var(--gutter-button);gap:var(--gutter-gap);padding-right:var(--gutter-bridge);align-items:center}
.note-document .block-gutter .block-menu-trigger,.note-document .block-gutter .block-insert-trigger{width:var(--gutter-button);height:var(--gutter-button);flex:0 0 var(--gutter-button);display:grid;place-items:center;padding:0;line-height:1;border-radius:var(--control-radius)}
.block-gutter svg{display:block;flex:none}.note-document .block-properties-trigger{right:4px;top:4px;width:var(--gutter-button);height:var(--gutter-button);display:grid;place-items:center}
.note-block.reference-line>.block-properties-trigger{width:var(--gutter-button);height:var(--gutter-button);right:6px}
.note-document .note-block:has(.block-menu-trigger[aria-expanded=true])>.block-gutter,.note-block.menu-active>.block-gutter,.note-block.context-active>.block-gutter{opacity:1}
.note-block.menu-active>.block-properties-trigger,.note-block.context-active>.block-properties-trigger{opacity:1}
.note-document .note-block:has(>.block-text){padding-right:34px}
.record-document .note-document,.note-page .note-document,.daily-canvas>.note-document{margin-inline:0;padding-left:66px;padding-right:0}
.note-block.h1>.block-gutter,.note-block.h1>.block-properties-trigger{top:10px}.note-block.h2>.block-gutter,.note-block.h2>.block-properties-trigger{top:8px}.note-block.h3>.block-gutter,.note-block.h3>.block-properties-trigger{top:6px}
.note-block.collection>.block-properties-trigger{top:12px;right:34px}.note-block.collection>.block-gutter{top:12px}.collection-header{padding-right:66px}
.record-document-title{font-size:clamp(24px,2.5vw,32px)}
.note-document .note-block.selected-block{background:var(--block-background);outline:2px solid color-mix(in srgb,var(--focus) 70%,transparent);outline-offset:2px}
.collection-groups>section{margin:16px 0}.collection-groups>section>h3{display:flex;align-items:center;gap:8px;margin-bottom:10px}.collection-groups h3 small{font-size:12px;color:var(--muted)}
.collection-table td>textarea{display:block;box-sizing:border-box;resize:none;border:0;border-radius:0;box-shadow:none;background:transparent;width:100%;min-height:38px;padding:8px;line-height:1.5;font-size:14px;overflow:hidden;overflow-wrap:anywhere}.collection-title-cell>textarea{padding-left:25px;padding-right:32px}.collection-table td>textarea:focus{outline:2px solid var(--focus);outline-offset:-2px}
.app-popover{z-index:1250;gap:4px;padding:8px;border-radius:9px;overscroll-behavior:contain;scrollbar-width:thin}
.app-popover form{display:grid;gap:10px}.app-popover form>label,.app-popover form>.form-pair{margin:0}.app-popover form label>input,.app-popover form label>select{margin-top:0}
.app-popover label{gap:4px}.app-popover input,.app-popover select{min-height:34px;border-radius:var(--control-radius);font-size:13px}.app-popover input[type=checkbox]{width:16px;height:16px;min-height:16px}
.app-popover button{min-height:32px;padding:6px 9px;gap:8px;font-size:13px;border-radius:var(--control-radius);line-height:1.4;overflow-wrap:anywhere}
.app-popover button:hover{outline:0;background:var(--glass-field-hover)}.app-popover button:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}
.app-popover>strong,.app-popover>small{padding:5px 9px}.app-popover .popover-check{padding:6px;min-height:32px}.app-popover p{margin:0}.app-popover .popover-error:not(:empty){padding:6px 9px}
.app-popover.records-filter-popover{width:360px}
.task-check-hit,.block-todo-hit{display:grid;place-items:center;flex:0 0 28px;width:28px;height:36px;cursor:pointer}.task-check-hit>input,.note-block .block-todo-hit>.block-todo{position:static;margin:0;width:16px;height:16px;min-width:16px;flex:none}
.note-block.todo>.block-text{flex:1;min-width:0;width:0}
.context-backdrop{position:fixed;inset:0;z-index:1249;background:#10151d66;touch-action:none}
.app-popover.view-settings-panel{display:flex;flex-direction:column;width:348px;padding:0;overflow:hidden;gap:0}
.view-settings-head{display:grid;grid-template-columns:minmax(0,1fr) 32px;align-items:center;gap:8px;padding:14px 16px 10px;flex:none;border-bottom:1px solid var(--line);background:var(--floating)}
.view-settings-head h2{font-size:16px;font-weight:600;line-height:1.4}.view-settings-head>button{width:32px;height:32px;padding:6px;display:grid;place-items:center}
.view-settings-head>input{grid-column:1/-1;border:1px solid transparent;background:transparent;padding:5px 7px;font-size:14px;font-weight:500;min-height:32px;margin:0}
.view-settings-head>input:hover{background:var(--glass-field)}.view-settings-head>input:focus{outline:2px solid var(--focus);outline-offset:-2px;border-radius:6px}
.view-settings-body{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:8px 16px 14px;font-size:14px}
.view-settings-panel .view-setting-row{display:grid;grid-template-columns:minmax(105px,1fr) minmax(0,1.3fr);align-items:center;gap:10px;min-height:38px;margin:0;padding:3px 0;font-size:13px;color:var(--text)}
.view-setting-row>span{overflow-wrap:anywhere;line-height:1.4}.view-settings-panel .view-setting-row>select{border:0;background:transparent;padding:5px 20px 5px 6px;min-height:32px;width:100%;font-size:13px;color:var(--muted);text-overflow:ellipsis;text-align:right;border-radius:6px}
.view-settings-panel .view-setting-row>select:hover{background:var(--glass-field)}.view-settings-panel .view-setting-row>select:focus{outline:2px solid var(--focus);outline-offset:-2px;color:var(--text)}
.view-settings-panel .view-setting-check{grid-template-columns:minmax(0,1fr) 24px}.view-setting-check>input{justify-self:end}
.view-settings-group{margin-top:16px}.view-settings-group>h3{font-size:11px;font-weight:500;color:var(--muted);margin-bottom:6px}
.view-settings-properties,.view-settings-extra{margin-top:8px;border-top:1px solid var(--line);padding-top:4px}
.view-settings-body summary{display:flex;align-items:center;gap:8px;font-size:13px;min-height:38px;cursor:pointer;list-style:none;color:var(--text)}
.view-settings-body summary::after{content:'›';margin-left:auto;color:var(--muted)}.view-settings-body details[open]>summary::after{content:'⌄'}
.view-settings-body summary small{font-size:11px;font-weight:400;color:var(--muted);max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.view-settings-body details>div{padding:4px 0 8px}.view-settings-body .view-delete{color:var(--muted);font-size:12px;margin-top:8px;padding-inline:0}
.view-settings-feedback{flex:none;padding:10px 16px;border-top:1px solid var(--line);font-size:12px;color:var(--accent)}.view-settings-feedback button{padding-left:0;text-decoration:underline}
.view-settings-panel [hidden]{display:none}.view-settings-panel>.popover-error:empty{display:none}
@media(max-width:900px){.topbar #save-status{max-width:120px;overflow:hidden;text-overflow:ellipsis}.app-location .crumb-link{max-width:145px}}
@media(max-width:620px){
 html{scrollbar-gutter:auto}
 :root{--control-size:44px;--gutter-button:44px;--gutter-gap:0px;--gutter-bridge:4px}
 .topbar #save-status{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}.topbar .app-location{flex:1}.app-location #breadcrumb{font-size:11px}.app-location .crumb-link{max-width:135px}
 .note-document .block-gutter{opacity:.65;height:44px;top:0}.note-document .note-block.reference-line>.block-gutter{top:50%}.note-document .block-properties-trigger{width:44px;height:44px;top:0;opacity:.65}
 .note-block.reference-line>.block-properties-trigger{width:44px;height:44px;right:0}.note-document .note-block:has(>.block-text){padding-right:42px}
 .record-document .note-document,.note-page .note-document,.daily-canvas>.note-document{padding-left:92px;margin-inline:0;padding-right:0}.records-workspace-surface,.records-workspace-surface:has(.empty-document){padding-left:92px;padding-right:12px}
 .note-block.collection>.block-properties-trigger{top:8px;right:42px}.note-block.collection>.block-gutter{top:8px}.collection-header{padding-right:86px}.collection-header>button,.collection-toolbar>button{width:44px;height:44px;flex-shrink:0}.collection-toolbar{gap:0}.collection-views>button{min-height:44px;padding-inline:8px}.collection-table td>button,.collection-table td>input,.collection-table td>textarea{min-height:44px}.collection-card-menu{width:44px;height:44px}.collection-card-content{padding-right:44px}
 .app-popover button,.app-popover .popover-check{min-height:44px}.app-popover input,.app-popover select{font-size:16px;min-height:44px}.app-popover input[type=checkbox]{min-height:16px}
 .workspace-popover button,.note-page-options button,.note-block-menu button{min-height:44px}
 .task-check-hit,.block-todo-hit{width:44px;height:44px;flex-basis:44px}
 .app-popover.is-mobile-sheet{max-width:100%;border:0;border-top:1px solid var(--line);border-radius:16px 16px 0 0;margin:0;box-shadow:0 -8px 30px #0002;padding-bottom:env(safe-area-inset-bottom)}
 .view-settings-head{padding:12px 16px 8px;grid-template-columns:minmax(0,1fr) 44px}.view-settings-head>button{width:44px;height:44px}.view-settings-head>input{font-size:16px;min-height:40px}
 .view-settings-body{padding:8px 16px 16px}.view-settings-panel .view-setting-row{min-height:44px;font-size:14px}.view-settings-panel .view-setting-row>select{min-height:40px;font-size:14px}.view-settings-body summary{min-height:44px;font-size:14px}
 .view-settings-feedback{padding-bottom:max(10px,env(safe-area-inset-bottom))}
 .time-grid .time-entry-menu{width:44px;height:44px;min-height:44px;top:0;right:0}.time-grid .time-entry-title{padding-right:40px}.time-grid-day>.time-entry,.time-all-day .time-entry{min-height:44px}.time-all-day .time-entry{padding-block:12px}.time-all-day .time-entry-title{font-size:12px}
 .time-grid .time-grid-head>button{min-height:44px}
 .time-grid-head>span{white-space:nowrap;overflow-wrap:normal;font-size:9px;padding-inline:3px}
 .planner-toolbar>button,.linked-period>button,.linked-period>input,.linked-filter-row form>button{min-height:44px}.planner-toolbar>button{min-width:44px}.linked-period>button{min-width:44px}
 .planner-popover button,.planner-popover label{min-height:44px}.planner-popover input:not([type=checkbox]),.planner-popover select{min-height:44px;font-size:16px}
}
/* Document controls: text keeps its typography, edges react only at the edge. */
.inline-title .inline-title-input,.collection-header>[data-c-name]{border-radius:0;border:0;background:transparent;box-shadow:none}
.inline-title .inline-title-input:focus,.collection-header>[data-c-name]:focus{outline:0;box-shadow:0 1px 0 var(--line)}
.inline-title .inline-title-input:focus-visible,.collection-header>[data-c-name]:focus-visible{outline:1px solid var(--focus);outline-offset:2px}
.collection-toolbar .collection-search{margin:0;max-width:180px;min-width:0;flex:0 1 180px}
.collection-toolbar .collection-search input{min-width:50px;height:30px;border-radius:4px}
.collection-toolbar .collection-search button{display:none}
.collection-toolbar{margin-bottom:0;gap:4px}
.collection-toolbar .query-active{background:var(--glass-field);color:var(--text)}
.collection-table-scroll{scrollbar-width:thin;scrollbar-color:var(--line) transparent;scrollbar-gutter:auto}
.collection-table-scroll:has([data-c-new-row]){scrollbar-gutter:auto}
.collection-table tfoot .unconfigured-total{opacity:0}
.collection-table tfoot td:hover>.unconfigured-total,.collection-table tfoot .unconfigured-total:focus-visible{opacity:1}
@media(hover:none){.collection-table tfoot .unconfigured-total{opacity:0}.collection-table tfoot .unconfigured-total:focus-visible{opacity:1}}
@media(max-width:620px){.collection-toolbar{flex-wrap:wrap}.collection-toolbar .collection-search{order:5;flex:1 0 100%;max-width:100%}.collection-views{max-width:calc(100% - 112px)}}
.linked-filter-row>[data-linked-search-toggle],.linked-filter-row>[data-linked-search-clear]{min-width:30px;min-height:30px;display:grid;place-items:center;padding:5px;border-radius:5px;color:var(--muted)}
.linked-filter-row>[data-linked-search-toggle].query-active{color:var(--text);background:var(--glass-field)}
.linked-filter-row>[data-linked-search]{margin:0}
.linked-filter-row>[data-linked-search]>button{display:none}
.collection-block{--collection-service-width:32px}
@media(max-width:620px){.collection-block{--collection-service-width:44px}}
