
      .wpnp-wrap {
        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
        --np-bg: #fff;
        --np-bg2: #f7f7f5;
        --np-bg3: #f0efeb;
        --np-border: rgba(0, 0, 0, .12);
        --np-border2: rgba(0, 0, 0, .22);
        --np-text: #1a1a1a;
        --np-text2: #555;
        --np-text3: #999;
        --np-accent: #378ADD;
        --np-danger: #e24b4a;
      }

      .wpnp-wrap[data-theme="dark"] {
        --np-bg: #1e1e1e;
        --np-bg2: #252525;
        --np-bg3: #2c2c2c;
        --np-border: rgba(255, 255, 255, .1);
        --np-border2: rgba(255, 255, 255, .2);
        --np-text: #e8e8e8;
        --np-text2: #aaa;
        --np-text3: #666;
      }

      .wpnp-app {
        display: flex;
        height: 620px;
        border: .5px solid var(--np-border);
        border-radius: 10px;
        overflow: hidden;
        background: var(--np-bg);
        box-sizing: border-box;
      }

      .wpnp-sidebar {
        width: 220px;
        min-width: 220px;
        border-right: .5px solid var(--np-border);
        display: flex;
        flex-direction: column;
        background: var(--np-bg2);
      }

      .wpnp-sb-hdr {
        padding: 14px 12px 10px;
        border-bottom: .5px solid var(--np-border);
      }

      .wpnp-sb-hdr h3 {
        font-size: 13px;
        font-weight: 600;
        color: var(--np-text2);
        text-transform: uppercase;
        letter-spacing: .06em;
        margin: 0 0 8px;
      }

      .wpnp-new-btn {
        width: 100%;
        padding: 7px 10px;
        background: var(--np-bg);
        border: .5px solid var(--np-border2);
        border-radius: 7px;
        font-size: 13px;
        font-weight: 500;
        color: var(--np-text);
        cursor: pointer;
        display: flex;
        align-items: center;
        gap: 6px;
      }

      .wpnp-new-btn:hover {
        background: var(--np-bg3);
      }

      .wpnp-cats {
        padding: 10px 8px 4px;
      }

      .wpnp-cat-lbl {
        font-size: 11px;
        font-weight: 600;
        color: var(--np-text3);
        padding: 0 4px;
        text-transform: uppercase;
        letter-spacing: .05em;
        margin-bottom: 4px;
      }

      .wpnp-cat-item {
        padding: 6px 8px;
        border-radius: 7px;
        font-size: 13px;
        cursor: pointer;
        color: var(--np-text2);
        display: flex;
        justify-content: space-between;
        align-items: center;
      }

      .wpnp-cat-item:hover {
        background: var(--np-bg);
      }

      .wpnp-cat-item.wpnp-active {
        background: var(--np-bg);
        color: var(--np-text);
        font-weight: 500;
      }

      .wpnp-dot {
        width: 8px;
        height: 8px;
        border-radius: 50%;
        display: inline-block;
        margin-right: 6px;
      }

      .wpnp-cnt {
        font-size: 11px;
        color: var(--np-text3);
      }

      .wpnp-notes-list {
        flex: 1;
        overflow-y: auto;
        padding: 6px 8px;
        border-top: .5px solid var(--np-border);
      }

      .wpnp-note-item {
        padding: 8px;
        border-radius: 7px;
        cursor: pointer;
        margin-bottom: 2px;
        border: .5px solid transparent;
      }

      .wpnp-note-item:hover {
        background: var(--np-bg);
      }

      .wpnp-note-item.wpnp-active {
        background: var(--np-bg);
        border-color: var(--np-border2);
      }

      .wpnp-n-title {
        font-size: 13px;
        font-weight: 500;
        color: var(--np-text);
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
      }

      .wpnp-n-preview {
        font-size: 11px;
        color: var(--np-text3);
        margin-top: 2px;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
      }

      .wpnp-n-meta {
        font-size: 10px;
        color: var(--np-text3);
        margin-top: 3px;
        display: flex;
        gap: 6px;
        align-items: center;
      }

      .wpnp-badge {
        padding: 1px 6px;
        border-radius: 10px;
        font-size: 10px;
        font-weight: 500;
      }

      .wpnp-del-btn {
        opacity: 0;
        font-size: 11px;
        color: var(--np-text3);
        border: none;
        background: none;
        cursor: pointer;
        padding: 1px 4px;
        border-radius: 4px;
      }

      .wpnp-note-item:hover .wpnp-del-btn {
        opacity: 1;
      }

      .wpnp-del-btn:hover {
        color: var(--np-danger);
      }

      .wpnp-cat-add-row {
        display: flex;
        align-items: center;
        gap: 4px;
        padding: 4px 8px;
      }

      .wpnp-cat-inp {
        display: none;
        flex: 1;
        font-size: 12px;
        padding: 4px 6px;
        border: .5px solid var(--np-border2);
        border-radius: 6px;
        outline: none;
        background: var(--np-bg);
        color: var(--np-text);
      }

      .wpnp-add-cat-btn {
        font-size: 12px;
        padding: 3px 7px;
        border: .5px solid var(--np-border);
        background: transparent;
        border-radius: 6px;
        cursor: pointer;
        color: var(--np-text3);
      }

      .wpnp-add-cat-btn:hover {
        background: var(--np-bg);
        color: var(--np-text2);
      }

      .wpnp-editor-pane {
        flex: 1;
        display: flex;
        flex-direction: column;
        min-width: 0;
      }

      .wpnp-toolbar {
        display: flex;
        align-items: center;
        gap: 2px;
        padding: 8px 12px;
        border-bottom: .5px solid var(--np-border);
        flex-wrap: wrap;
        background: var(--np-bg2);
      }

      .wpnp-tb-btn {
        padding: 4px 7px;
        border: none;
        background: transparent;
        border-radius: 5px;
        cursor: pointer;
        font-size: 13px;
        color: var(--np-text2);
      }

      .wpnp-tb-btn:hover {
        background: var(--np-bg);
        color: var(--np-text);
      }

      .wpnp-tb-sep {
        width: .5px;
        height: 18px;
        background: var(--np-border);
        margin: 0 4px;
      }

      .wpnp-title-bar {
        padding: 12px 16px 6px;
        border-bottom: .5px solid var(--np-border);
        display: flex;
        align-items: center;
        gap: 10px;
      }

      .wpnp-title-inp {
        flex: 1;
        font-size: 18px;
        font-weight: 500;
        border: none;
        outline: none;
        background: transparent;
        color: var(--np-text);
      }

      .wpnp-title-inp::placeholder {
        color: var(--np-text3);
      }

      .wpnp-cat-sel {
        font-size: 12px;
        padding: 3px 7px;
        border-radius: 6px;
        border: .5px solid var(--np-border2);
        background: var(--np-bg2);
        color: var(--np-text2);
        cursor: pointer;
      }

      .wpnp-editor {
        flex: 1;
        padding: 14px 18px;
        overflow-y: auto;
        outline: none;
        font-size: 15px;
        line-height: 1.7;
        color: var(--np-text);
        background: var(--np-bg);
      }

      .wpnp-editor:empty:before {
        content: attr(data-placeholder);
        color: var(--np-text3);
        pointer-events: none;
      }

      .wpnp-editor h1 {
        font-size: 22px;
        font-weight: 600;
        margin: 8px 0 4px;
      }

      .wpnp-editor h2 {
        font-size: 18px;
        font-weight: 600;
        margin: 6px 0 4px;
      }

      .wpnp-editor h3 {
        font-size: 16px;
        font-weight: 600;
        margin: 4px 0 4px;
      }

      .wpnp-editor ul,
      .wpnp-editor ol {
        padding-left: 22px;
        margin: 4px 0;
      }

      .wpnp-editor blockquote {
        border-left: 3px solid var(--np-border2);
        padding-left: 12px;
        color: var(--np-text2);
        margin: 4px 0;
      }

      .wpnp-statusbar {
        padding: 5px 16px;
        border-top: .5px solid var(--np-border);
        display: flex;
        align-items: center;
        justify-content: space-between;
        background: var(--np-bg2);
      }

      .wpnp-statusbar span {
        font-size: 11px;
        color: var(--np-text3);
      }

      .wpnp-save-btn {
        padding: 4px 12px;
        font-size: 12px;
        font-weight: 500;
        border-radius: 6px;
        border: .5px solid var(--np-border2);
        background: var(--np-bg);
        color: var(--np-text);
        cursor: pointer;
      }

      .wpnp-save-btn:hover {
        background: var(--np-bg3);
      }
    