fixes and functions

This commit is contained in:
Mateusz Gruszczyński
2026-08-04 23:21:27 +02:00
parent 6fc408ddf7
commit 4b25085bb5
28 changed files with 306 additions and 330 deletions
+78 -181
View File
@@ -992,11 +992,6 @@ textarea::selection {
font-size: .72rem;
}
.document-stats {
display: flex;
gap: 14px;
}
.history-panel {
position: relative;
width: 340px;
@@ -1019,15 +1014,6 @@ textarea::selection {
padding: 18px;
}
.history-help {
margin: 0;
padding: 0 18px 16px;
border-bottom: 1px solid var(--border);
color: var(--muted);
font-size: .8rem;
line-height: 1.5;
}
.icon-button {
display: grid;
place-items: center;
@@ -1199,10 +1185,6 @@ dialog::backdrop {
height: calc(100vh - 92px);
}
.toolbar-settings {
display: none;
}
.history-open .editor-layout {
grid-template-columns: minmax(0, 1fr);
}
@@ -1434,7 +1416,6 @@ dialog::backdrop {
}
.line-gutter {
overflow: hidden;
padding: 24px 8px 24px 0;
border-right: 1px solid var(--border);
@@ -1446,7 +1427,6 @@ dialog::backdrop {
.line-gutter div {
height: 1.72em;
}
.hide-editor-line-numbers .editor-shell {
@@ -1722,10 +1702,6 @@ dialog::backdrop {
flex-wrap: wrap;
}
.home-footer__separator {
color: var(--border-strong);
}
.home-footer .text-button {
font-size: inherit;
text-decoration: underline;
@@ -1761,35 +1737,6 @@ dialog::backdrop {
}
}
.line-owner-label {
position: absolute;
left: 7px;
top: 50%;
max-width: 88px;
overflow: hidden;
padding: 2px 6px;
border: 1px solid color-mix(in srgb, var(--owner) 65%, transparent);
border-radius: 999px;
background: color-mix(in srgb, var(--owner) 18%, var(--surface-inset));
color: var(--text-on-owner);
font: 600 10px/1.2 system-ui, sans-serif;
text-overflow: ellipsis;
white-space: nowrap;
transform: translateY(-50%);
}
@media (min-width: 721px) {
.line-gutter {
width: 132px;
}
}
@media (max-width: 720px) {
.line-owner-label {
display: none;
}
}
/* Compact line numbers; author labels sit over the edited text, not in the gutter. */
.line-gutter {
width: 48px;
@@ -1801,10 +1748,8 @@ dialog::backdrop {
.owner-labels {
position: absolute;
right: 12px;
left: 48px;
overflow: hidden;
pointer-events: none;
}
@@ -1831,16 +1776,6 @@ dialog::backdrop {
left: 0;
}
.line-owner-label {
display: none !important;
}
@media (min-width: 721px) {
.line-gutter {
width: 48px;
}
}
@media (max-width: 720px) {
.line-gutter {
width: 42px;
@@ -1864,15 +1799,6 @@ dialog::backdrop {
height: auto;
}
.owner-line {
position: absolute;
right: 0;
left: 0;
height: var(--editor-line-height, 31px);
border-left: 3px solid var(--owner);
background: transparent;
}
.owner-label {
z-index: 1;
transform: translateY(2px);
@@ -2467,16 +2393,6 @@ dialog::backdrop {
min-width: 74px;
}
.file-delete {
border-color: var(--danger-border) !important;
background: var(--danger-subtle-bg) !important;
color: var(--danger-button-text) !important;
}
.file-delete:hover {
background: var(--danger-subtle-hover) !important;
}
@media (max-width: 760px) {
.file-actions {
flex-wrap: wrap;
@@ -2503,12 +2419,6 @@ dialog::backdrop {
font-weight: 600;
}
.workspace-actions {
display: flex;
align-items: center;
gap: 10px;
}
.workspace-password-card {
display: grid;
grid-template-columns: minmax(0, 1fr) auto;
@@ -2541,22 +2451,22 @@ dialog::backdrop {
.workspace-password-card__controls {
display: grid;
grid-template-columns: 106px auto;
grid-template-columns: minmax(160px, 220px) auto;
align-items: center;
gap: 6px;
}
.workspace-password-card__controls input {
width: 7vh;
height: 5vh;
min-width: 11vh;
padding: 0 1vh;
width: 100%;
min-width: 0;
min-height: 36px;
padding: 0 10px;
}
.workspace-password-card__controls button {
min-width: 7vh;
min-height: 4vh;
padding: 0 1vh;
min-width: 64px;
min-height: 36px;
padding: 0 12px;
}
.workspace-password-card>.form-message {
@@ -2694,11 +2604,6 @@ dialog::backdrop {
align-items: flex-start;
}
.workspace-actions {
align-items: stretch;
flex-direction: column-reverse;
}
.workspace-password-card {
grid-template-columns: 1fr;
}
@@ -3244,12 +3149,6 @@ dialog::backdrop {
flex: 1 0 100%;
}
.identity-panel__close {
position: absolute;
top: 14px;
right: 14px;
}
.auth-panel {
display: grid;
gap: 12px;
@@ -4810,25 +4709,6 @@ dialog::backdrop {
gap: 10px;
}
.document-owner-badge {
max-width: 50%;
overflow: hidden;
padding: 2px 8px;
border: 1px solid color-mix(in srgb, var(--owner) 58%, transparent);
border-radius: 999px;
background: color-mix(in srgb, var(--owner) 14%, transparent);
color: var(--text);
font-size: .7rem;
font-weight: 600;
line-height: 1.35;
text-overflow: ellipsis;
white-space: nowrap;
}
.document-owner-badge[hidden] {
display: none;
}
/* Per-character authorship overlay. The textarea remains the editable surface. */
.authorship-layer {
position: absolute;
@@ -5754,22 +5634,6 @@ dialog::backdrop {
}
}
.public-page-options {
display: grid;
gap: 4px;
align-content: center;
}
.public-page-options .public-task-toggle {
min-height: 24px;
}
@media (max-width: 720px) {
.public-page-options {
width: 100%;
}
}
/* Keep the whole editor surface consistent in Simple and Full modes. */
.editor-shell {
background: var(--surface-inset);
@@ -5793,7 +5657,6 @@ dialog::backdrop {
z-index: 5;
}
/* Stable editor canvas in both authorship modes. */
.pad-page .editor-column,
.pad-page .editor-shell {
@@ -6035,23 +5898,6 @@ dialog::backdrop {
gap: 7px;
}
.authorship-color-toggle {
display: inline-flex;
align-items: center;
gap: 5px;
min-height: 22px;
color: var(--muted);
font-size: 11px;
cursor: pointer;
}
.authorship-color-toggle input {
width: 28px;
height: 16px;
margin: 0;
accent-color: var(--accent);
}
.authorship-layer {
overflow: hidden;
padding: 0;
@@ -6154,7 +6000,6 @@ dialog::backdrop {
background: var(--accent);
}
.share-link-row .share-link-info {
margin-top: 8px;
justify-self: start;
@@ -6166,7 +6011,6 @@ dialog::backdrop {
white-space: pre-wrap;
}
/* Keep generated individual links below the new-link form. */
.share-link-list-wrap {
display: grid;
@@ -6473,7 +6317,6 @@ dialog::backdrop {
min-height: 34px;
}
}
/* Note editor polish: clearer actions, lighter canvas, and aligned split columns. */
@@ -6594,7 +6437,6 @@ dialog::backdrop {
text-decoration: none;
}
.resource-brand__kind {
width: fit-content;
padding-left: 0;
@@ -6774,12 +6616,6 @@ dialog::backdrop {
}
/* Share links: keep one-time URLs readable without storing plaintext tokens. */
.share-link-id {
color: var(--muted);
font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
font-size: .78rem;
font-weight: 600;
}
.share-link-once {
color: var(--muted-2) !important;
@@ -6828,7 +6664,7 @@ dialog::backdrop {
}
}
@media (max-width: 760px) {
@media (max-width: 760px) and (orientation: portrait) {
.pad-page .editor-toolbar {
grid-template-columns: minmax(0, 1fr) auto auto;
width: 100%;
@@ -6914,7 +6750,6 @@ dialog::backdrop {
.history-header>div,
.history-header h2,
.history-header p,
.history-help,
.history-list .empty,
.history-list .error {
min-width: 0;
@@ -6940,13 +6775,16 @@ dialog::backdrop {
}
.page-password-requirement {
margin: 6px 0 0;
margin: 2px 2px 0;
color: var(--muted);
font-size: .69rem;
font-size: .72rem;
line-height: 1.35;
}
.page-settings.needs-password .page-password-requirement {
color: var(--text-secondary);
}
.page-password-requirement[hidden] {
display: none;
}
@@ -6978,7 +6816,7 @@ dialog::backdrop {
.page-password-inline__controls input {
width: 100%;
min-width: 0;
height: 50%;
min-height: 34px;
padding: 0 8px;
border: 1px solid var(--border);
border-radius: 6px;
@@ -6998,8 +6836,8 @@ dialog::backdrop {
}
.page-password-inline__save {
min-width: 1vh;
height: 3vh;
min-width: 56px;
min-height: 34px;
padding: 0 10px;
border: 1px solid var(--border);
border-radius: 6px;
@@ -7022,4 +6860,63 @@ dialog::backdrop {
.page-password-inline .error {
margin: 0;
font-size: .68rem;
}
}
/* Mobile upload action shown directly below the formatting controls. */
.mobile-upload-button {
display: none;
}
@media (max-width: 760px) {
.pad-page .toolbar-group {
grid-column: 1;
grid-row: 1;
}
.pad-page .view-switch {
grid-column: 2;
grid-row: 1;
}
.pad-page .mobile-upload-button {
display: inline-flex;
grid-column: 1 / -1;
grid-row: 2;
width: 100%;
min-height: 36px;
align-items: center;
justify-content: center;
gap: 7px;
padding: 7px 12px;
border: 1px solid var(--toolbar-action-border);
border-radius: 8px;
background: var(--toolbar-action-bg);
color: var(--toolbar-action-text);
font: inherit;
font-weight: 700;
cursor: pointer;
}
.pad-page .mobile-upload-button:hover {
border-color: color-mix(in srgb, var(--accent) 48%, var(--toolbar-action-border));
background: var(--toolbar-action-hover);
}
.pad-page .mobile-upload-button:focus-visible {
outline: 2px solid var(--focus);
outline-offset: 2px;
}
}
@media (max-width: 760px) and (orientation: portrait) {
.pad-page #mode-toggle {
grid-column: 2;
grid-row: 1;
}
.pad-page .view-switch {
grid-column: 3;
grid-row: 1;
}
}