/* 記事本 */
.notebook-round-button .material-symbols-rounded {
    /* Keep topbar icon */
    font-size: 22px;
}

#uMasterPage_AsideRight_NotebookWrapper {
    display: flex;
    flex-direction: column;
    min-height: 0;
    height: 100%;
}

.keep-home-view,
.keep-editor-view {
    /* Ensure home/editor can shrink and allow internal scroll areas */
    min-height: 0;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.keep-editor-view-inline {
    /* Inline editor is injected back into the original card position */
    height: auto;
    min-height: 0;
    display: block;
}

.keep-create-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.keep-create-note-btn {
    border: none;
    background: transparent;
    color: #2f3b4a;
    font-size: 18px;
    display: flex;
    align-items: center;
    gap: 6px;
    cursor: pointer;
    padding: 0;
}

.keep-create-note-btn .material-symbols-rounded {
    color: #f2b600;
}

.keep-create-note-btn span:last-child {
    font-size: 18px;
    color: #4d5968;
}

.keep-create-list-btn {
    border: none;
    background: transparent;
    cursor: pointer;
    padding: 0;
}

.keep-create-list-btn .material-symbols-rounded {
    color: #586575;
    font-size: 22px;
}

.keep-entry-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
    overflow-y: auto;
    min-height: 0;
}

.keep-entry-card {
    background: #fff;
    border: 1px solid #d8dfe8;
    border-radius: 10px;
    padding: 10px;
    cursor: pointer;
    position: relative;
    transition: box-shadow 0.15s ease, border-color 0.15s ease;
}

.keep-entry-card:hover {
    border-color: #c4d4e5;
    box-shadow: 0 3px 10px rgba(47,59,74,0.12);
}

.keep-entry-card-pinned {
    border-color: #8fb2d6;
    box-shadow: 0 2px 8px rgba(52,109,168,0.12);
}

.keep-card-actions {
    position: absolute;
    top: 8px;
    right: 8px;
    display: flex;
    align-items: center;
    gap: 2px;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.12s ease;
}

.keep-entry-card:hover .keep-card-actions,
.keep-entry-card.show-actions .keep-card-actions {
    opacity: 1;
    pointer-events: auto;
}

.keep-entry-card-pinned .keep-card-actions {
    opacity: 1;
    pointer-events: auto;
}

.keep-entry-card-pinned .keep-card-more-btn {
    display: none;
}

.keep-entry-card-pinned:hover .keep-card-more-btn,
.keep-entry-card-pinned.show-actions .keep-card-more-btn {
    display: inline-block;
}

.keep-card-action-btn {
    border: none;
    background: transparent;
    color: #2f3b4a;
    cursor: pointer;
    padding: 0;
    font-size: 22px;
    line-height: 1;
}

.keep-card-action-btn:hover {
    color: #1e3d62;
}

.keep-card-pin-btn.active {
    color: #2468a8;
}

.keep-card-more-menu {
    position: absolute;
    top: 24px;
    right: 0;
    background: #fff;
    border: 1px solid #d8dfe8;
    border-radius: 8px;
    box-shadow: 0 4px 14px rgba(0,0,0,0.12);
    min-width: 120px;
    z-index: 20;
    display: none;
}

.keep-entry-title {
    font-size: 16px;
    font-weight: 700;
    color: #2f3b4a;
    margin-bottom: 4px;
    padding-right: 64px;
}

.keep-entry-preview {
    font-size: 14px;
    color: #4f5b6b;
    padding-right: 64px;
}

.keep-entry-preview-note {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.keep-entry-preview-list {
    display: flex;
    flex-direction: column;
    gap: 6px;
    white-space: normal;
}

.keep-list-preview-row {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.keep-list-preview-checkbox {
    font-size: 20px;
    color: #5f6b7b;
    width: 20px;
    line-height: 1;
    flex: 0 0 20px;
}

.keep-list-preview-text {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.keep-list-preview-row.done .keep-list-preview-text {
    color: #8b95a3;
    text-decoration: line-through;
}

.keep-list-preview-separator {
    height: 1px;
    background: #d8dfe8;
    margin: 2px 0;
}

.keep-list-preview-completed-title {
    display: flex;
    align-items: center;
    gap: 2px;
    color: #6f7a89;
    font-size: 14px;
}

.keep-list-preview-completed-arrow {
    font-size: 18px;
    line-height: 1;
}

.keep-list-preview-empty {
    color: #8b95a3;
}

.keep-entry-meta {
    font-size: 12px;
    color: #8a95a3;
    margin-top: 6px;
    padding-right: 64px;
}

.keep-empty-state {
    margin-top: 18px;
    border-radius: 12px;
    background: #f0f4f8;
    border: 1px solid #d8e0ea;
    color: #5a6779;
    text-align: center;
    padding: 18px;
}

.keep-empty-icon {
    font-size: 64px;
    line-height: 1;
}

.keep-empty-icon .material-symbols-rounded {
    font-size: 72px;
    color: #f2b600;
}

.keep-empty-title {
    margin-top: 10px;
    font-size: 22px;
    font-weight: 700;
}

.keep-empty-subtitle {
    margin-top: 4px;
    font-size: 14px;
}

.keep-editor-card {
    background: #fff;
    border: 1px solid #d8dfe8;
    border-radius: 10px;
    padding: 10px;
    display: flex;
    flex-direction: column;
    min-height: 230px;
    gap: 8px;
}

.keep-editor-header-row {
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

.keep-editor-title {
    border: none;
    outline: none;
    flex: 1;
    font-size: 16px;
    font-weight: 600;
    color: #2f3b4a;
    padding: 2px 0;
}

.keep-editor-actions {
    position: relative;
    display: flex;
    align-items: center;
    gap: 2px;
}

.keep-icon-btn {
    border: none;
    background: transparent;
    color: #2f3b4a;
    cursor: pointer;
    padding: 0;
    font-size: 24px;
    line-height: 1;
}

.keep-more-menu {
    position: absolute;
    top: 28px;
    right: 0;
    background: #fff;
    border: 1px solid #d8dfe8;
    border-radius: 8px;
    box-shadow: 0 4px 14px rgba(0,0,0,0.12);
    min-width: 120px;
    z-index: 20;
}

.keep-more-menu-btn {
    border: none;
    background: transparent;
    cursor: pointer;
    width: 100%;
    text-align: left;
    padding: 8px 12px;
    font-size: 14px;
    color: #2f3b4a;
}

.keep-more-menu-btn:hover {
    background: #f2f6fa;
}

.keep-editor-note-content {
    border: none;
    outline: none;
    width: 100%;
    min-height: 120px;
    resize: none;
    font-size: 16px;
    color: #4d5968;
    background: transparent;
}

.keep-checklist-area {
    min-height: 120px;
}

.keep-checklist-rows {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.keep-check-row {
    display: flex;
    align-items: center;
    gap: 8px;
}

.keep-check-plus {
    font-size: 20px;
    color: #6f7a89;
    width: 22px;
    text-align: center;
    line-height: 1;
}

.keep-check-checkbox {
    width: 16px;
    height: 16px;
}

.keep-check-input {
    border: none;
    outline: none;
    flex: 1;
    font-size: 16px;
    color: #4d5968;
    background: transparent;
}

.keep-check-row.done .keep-check-input {
    color: #8b95a3;
    text-decoration: line-through;
}

.keep-completed-separator {
    height: 1px;
    background: #d8dfe8;
    margin: 4px 0;
}

.keep-completed-title {
    font-size: 14px;
    color: #6f7a89;
    margin-bottom: 2px;
}

.keep-editor-footer {
    margin-top: auto;
    display: flex;
    justify-content: flex-end;
}

.keep-done-btn {
    border: none;
    background: transparent;
    font-size: 16px;
    font-weight: 700;
    color: #2f3b4a;
    cursor: pointer;
    padding: 0;
}
