:root{
  --base-blush:#FDE2E4; --primary-blue:#B7DDF2; --heart-pink:#F8BBD0; --lavender:#D8B4E2;
  --archive-deep:#0D1B4C; --star-pink:#F8A8C1; --star-white:#FFFFFF;
  --bg:var(--base-blush); --fg:#1b1b1f; --muted:#5c6773; --card:#fff8f9; --ring:var(--lavender);
  --radius:18px; --shadow:0 12px 32px rgba(13,27,76,.12); --overlay:rgba(13,27,76,.35);
}
*{box-sizing:border-box} html,body{margin:0;padding:0;background:var(--bg);color:var(--fg);font:16px/1.6 system-ui,-apple-system,Segoe UI,Roboto,Inter,Ubuntu,"Helvetica Neue",Arial,sans-serif}
a{color:var(--archive-deep);text-decoration:none} a:hover{text-decoration:underline} img{max-width:100%;height:auto}
.wrap{max-width:980px;margin:40px auto;padding:0 20px}
.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px}
h1{font-size:clamp(28px,3vw,40px);margin:0 0 6px} h2{font-size:clamp(22px,2.2vw,28px);margin:0 0 6px}
.muted{color:var(--muted)} .spacer{height:14px}
.header{display:flex;align-items:center;gap:14px;margin-bottom:18px}
.logo{display:flex;align-items:center;gap:14px}
.logo img, .logo svg{width:72px;height:auto;border-radius:16px;box-shadow:0 6px 20px rgba(0,0,0,.05);background:#fff}
.field{display:flex;gap:10px} .field input{flex:1;border-radius:999px;border:2px solid var(--archive-deep);padding:12px 14px;background:#fff}
.note-list{display:grid;gap:14px;margin-top:8px}
.note-item{display:flex;gap:14px;align-items:flex-start;padding:14px;border-radius:14px;background:#fff;box-shadow:0 6px 18px rgba(13,27,76,.06);cursor:pointer;transition:transform .12s ease, box-shadow .12s ease}
.note-item:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(13,27,76,.12)}
.note-dot{width:38px;height:38px;border-radius:11px;background:linear-gradient(135deg,var(--heart-pink),var(--star-pink));display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px rgba(248,168,193,.35)}
.note-dot svg{width:20px;height:20px;fill:var(--archive-deep)}
.note-title{font-weight:600} .note-teaser{color:var(--muted)}
.modal-backdrop{position:fixed;inset:0;background:var(--overlay);display:none;align-items:center;justify-content:center;padding:20px;z-index:40}
.modal{max-width:760px;width:100%;background:#fff;border-radius:20px;box-shadow:0 30px 80px rgba(13,27,76,.35);padding:22px;transform:translateY(12px);opacity:0;transition:opacity .18s ease, transform .18s ease}
.modal header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px}
.modal .meta{color:var(--muted);font-size:14px;margin-top:2px} .modal .close{border:0;background:#f6f6f9;border-radius:10px;padding:8px 10px;cursor:pointer}
.modal .close:focus{outline:3px solid var(--ring);outline-offset:2px} .modal-open .modal{opacity:1;transform:none} .modal-open .modal-backdrop{display:flex}
footer{margin:30px 0 20px;color:var(--muted);text-align:center}
