.mindlog-notes {
  --mn-text: #111;
  --mn-muted: #777;
  --mn-line: #d9d6cf;
  --mn-paper: #faf9f6;
  --mn-card-border: #d4d1ca;
  --mn-accent: #f0c83c;
  width: 100%;
  box-sizing: border-box;
  font-family: inherit;
  color: var(--mn-text);
}
.mindlog-notes *, .mindlog-notes *::before, .mindlog-notes *::after { box-sizing: border-box; }
.mindlog-notes .screen-reader-text { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

.mindlog-notes__filters { display:flex; align-items:center; gap:14px; flex-wrap:wrap; margin:0 0 28px; }
.mindlog-notes__search { position:relative; flex:0 1 270px; }
.mindlog-notes__search-input { width:100%; border:1px solid var(--mn-card-border); background:transparent; border-radius:999px; padding:11px 38px 11px 16px; font:inherit; font-size:13px; color:var(--mn-text); outline:none; }
.mindlog-notes__search-input:focus { border-color:var(--mn-text); }
.mindlog-notes__search-icon { position:absolute; right:14px; top:50%; transform:translateY(-50%); font-size:20px; line-height:1; pointer-events:none; }
.mindlog-notes__categories { display:flex; gap:7px; flex-wrap:wrap; }
.mindlog-notes__category { border:1px solid var(--mn-card-border); background:transparent; border-radius:999px; padding:9px 14px; font:inherit; font-size:11px; cursor:pointer; color:var(--mn-text); transition:.2s ease; }
.mindlog-notes__category:hover, .mindlog-notes__category.is-active { background:var(--mn-text); color:#fff; border-color:var(--mn-text); }

.mindlog-notes__grid { column-count:3; column-gap:28px; }
.mindlog-note-card { display:inline-block; width:100%; margin:0 0 28px; vertical-align:top; break-inside:avoid; background:var(--mn-paper); border:1px solid var(--mn-card-border); border-radius:20px; overflow:hidden; transition:transform .22s ease, box-shadow .22s ease; }
.mindlog-note-card:hover { transform:translateY(-3px); box-shadow:0 12px 34px rgba(0,0,0,.07); }
.mindlog-note-card__media { position:relative; overflow:hidden; background:#f4f4f4; }
.mindlog-note-card__media img { display:block; width:100%; height:auto; max-height:560px; object-fit:cover; }
.mindlog-note-card__reference, .mindlog-note-modal__reference { position:absolute; left:12px; top:12px; padding:6px 9px; border-radius:999px; background:rgba(17,17,17,.78); color:#fff; font-size:10px; line-height:1; letter-spacing:.03em; backdrop-filter:blur(5px); }
.mindlog-note-card__copy, .mindlog-note-modal__copy { position:absolute; right:12px; bottom:12px; border:0; border-radius:999px; padding:9px 13px; background:rgba(255,255,255,.94); color:#111; box-shadow:0 5px 18px rgba(0,0,0,.16); font:inherit; font-size:11px; cursor:pointer; display:inline-flex; align-items:center; gap:6px; transition:transform .2s ease, background .2s ease; }
.mindlog-note-card__copy:hover, .mindlog-note-modal__copy:hover { transform:translateY(-1px); background:#fff; }
.mindlog-note-card__body { padding:22px 22px 18px; }
.mindlog-note-card__kicker, .mindlog-note-modal__kicker { margin-bottom:13px; font-size:10px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.mindlog-note-card__title { margin:0 0 12px; font-size:22px; line-height:1.1; font-weight:500; letter-spacing:-.025em; }
.mindlog-note-card__text { font-size:16px; line-height:1.55; letter-spacing:-.008em; max-height:12.4em; overflow:hidden; }
.mindlog-note-card__text p { margin:0 0 10px; }
.mindlog-note-card__text p:last-child { margin-bottom:0; }
.mindlog-note-card__footer { display:flex; align-items:center; flex-wrap:wrap; gap:8px 12px; margin-top:20px; padding-top:14px; border-top:1px solid var(--mn-line); color:var(--mn-muted); font-size:10px; letter-spacing:.04em; }
.mindlog-note-card__tags { display:flex; gap:7px; }
.mindlog-note-card__details[hidden] { display:none; }
.mindlog-note-card__details { margin-left:auto; border:0; background:transparent; padding:0; color:var(--mn-text); font:inherit; cursor:pointer; position:relative; }
.mindlog-note-card__details::after { content:""; position:absolute; left:0; right:0; bottom:-3px; height:2px; background:var(--mn-accent); transform:scaleX(.35); transform-origin:left; transition:transform .2s ease; }
.mindlog-note-card__details:hover::after { transform:scaleX(1); }

.mindlog-notes__load-wrap { display:flex; justify-content:center; padding:16px 0 0; }
.mindlog-notes__load { border:1px solid var(--mn-text); background:transparent; border-radius:999px; padding:12px 22px; font:inherit; font-size:12px; cursor:pointer; transition:.2s ease; }
.mindlog-notes__load:hover { background:var(--mn-text); color:#fff; }
.mindlog-notes__load.is-loading { opacity:.55; pointer-events:none; }
.mindlog-notes__status, .mindlog-notes__empty { text-align:center; margin-top:16px; color:var(--mn-muted); font-size:12px; }

.mindlog-notes__modal { position:fixed; inset:0; z-index:999999; display:none; align-items:center; justify-content:center; padding:22px; }
.mindlog-notes__modal.is-open { display:flex; }
.mindlog-notes__backdrop { position:absolute; inset:0; background:rgba(0,0,0,.48); backdrop-filter:blur(7px); }
.mindlog-notes__dialog { position:relative; width:min(1080px,100%); max-height:calc(100vh - 44px); overflow:auto; margin:0; background:var(--mn-paper); border:1px solid var(--mn-card-border); border-radius:24px; box-shadow:0 28px 90px rgba(0,0,0,.25); }
.mindlog-notes__close { position:absolute; right:14px; top:14px; z-index:5; width:38px; height:38px; border:0; border-radius:50%; background:rgba(255,255,255,.94); box-shadow:0 3px 14px rgba(0,0,0,.12); font-size:24px; line-height:1; cursor:pointer; }
.mindlog-note-modal__layout { display:grid; grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr); min-height:520px; }
.mindlog-note-modal__visual { background:#eee; min-height:520px; }
.mindlog-note-modal__media { position:relative; height:100%; min-height:520px; }
.mindlog-note-modal__media img { display:block; width:100%; height:100%; object-fit:cover; }
.mindlog-note-modal__info { padding:52px 44px 40px; overflow:auto; }
.mindlog-note-modal__inner h2, .mindlog-note-modal__info h2 { margin:0 0 18px; font-size:clamp(28px,3.4vw,40px); line-height:1.02; font-weight:400; letter-spacing:-.04em; }
.mindlog-note-modal__text { font-size:16px; line-height:1.62; }
.mindlog-note-modal__text p { margin:0 0 11px; }
.mindlog-note-modal__prompt-block { margin-top:28px; padding-top:20px; border-top:1px solid var(--mn-line); }
.mindlog-note-modal__prompt-label { font-size:9px; font-weight:700; letter-spacing:.14em; margin-bottom:9px; color:var(--mn-muted); }
.mindlog-note-modal__prompt { white-space:pre-wrap; max-height:210px; overflow:auto; padding:13px 14px; border:1px solid var(--mn-card-border); border-radius:12px; background:#fff; font-size:12px; line-height:1.55; }
.mindlog-note-modal__copy-inline { margin-top:10px; border:1px solid var(--mn-text); background:transparent; border-radius:999px; padding:9px 13px; font:inherit; font-size:11px; cursor:pointer; display:inline-flex; align-items:center; gap:6px; }
.mindlog-note-modal__copy-inline:hover { background:var(--mn-text); color:#fff; }
.mindlog-note-modal__reference-line { margin-top:16px; font-size:11px; color:var(--mn-muted); }
.mindlog-note-modal__categories { display:flex; flex-wrap:wrap; gap:6px; margin-top:18px; }
.mindlog-note-modal__categories span { border:1px solid var(--mn-card-border); border-radius:999px; padding:6px 9px; font-size:10px; }
.mindlog-note-modal__meta { margin-top:28px; padding-top:16px; border-top:1px solid var(--mn-line); color:var(--mn-muted); font-size:11px; letter-spacing:.05em; }

@media (max-width:980px) { .mindlog-notes__grid { column-count:2; } .mindlog-note-modal__layout { grid-template-columns:1fr; } .mindlog-note-modal__visual, .mindlog-note-modal__media { min-height:380px; height:380px; } }
@media (max-width:640px) {
  .mindlog-notes__filters { align-items:stretch; }
  .mindlog-notes__search { flex:1 1 100%; }
  .mindlog-notes__grid { column-count:1; }
  .mindlog-note-card { margin-bottom:18px; border-radius:16px; }
  .mindlog-note-card__body { padding:18px 18px 16px; }
  .mindlog-note-card__title { font-size:21px; }
  .mindlog-notes__modal { padding:10px; }
  .mindlog-notes__dialog { max-height:calc(100vh - 20px); border-radius:18px; }
  .mindlog-note-modal__visual, .mindlog-note-modal__media { min-height:260px; height:260px; }
  .mindlog-note-modal__info { padding:30px 22px 26px; }
  .mindlog-note-modal__info h2 { font-size:30px; }
  .mindlog-note-modal__text { font-size:15px; }
}
