*{box-sizing:border-box}:root{--bg1:#2b1f33;--bg2:#7a5a92;--ink:#f4eef8;--ink-dim:#d9cfe3;--card:rgba(255,255,255,.06);--card-b:rgba(255,255,255,.12)}
html,body{height:100%;margin:0}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);
background:radial-gradient(1200px 700px at 50% -20%,var(--bg2),var(--bg1))}.wrap{max-width:860px;margin:0 auto;padding:16px}
.hero{text-align:center;padding:24px 12px 8px}.moon{width:110px;height:110px;margin:8px auto 4px;background:radial-gradient(circle at 30% 50%,#ffe,#e9dfff 65%,rgba(255,255,255,0) 66%);
border-radius:50%;box-shadow:0 0 40px rgba(255,240,255,.5);position:relative}.moon::after{content:"";position:absolute;top:-2px;left:24px;width:110px;height:110px;border-radius:50%;
background:radial-gradient(circle at 60% 45%,rgba(43,31,51,.95),rgba(43,31,51,0))}h1{margin:8px 0 0;font-weight:700;letter-spacing:.2px}.subtitle{margin:4px 0 0;color:var(--ink-dim)}
.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:20px 0 6px}.card{background:var(--card);border:1px solid var(--card-b);backdrop-filter:blur(4px);border-radius:16px;
padding:18px 14px;text-align:center;color:var(--ink);width:100%}.card .icon{font-size:32px;margin-bottom:6px}.card .label{font-weight:600}.card.disabled{opacity:.6}
.card .soon{display:block;margin-top:4px;color:var(--ink-dim)}.view{background:rgba(0,0,0,.18);border:1px solid var(--card-b);border-radius:16px;padding:14px}.hidden{display:none}
#entry-form{display:grid;gap:8px}textarea{width:100%;border-radius:12px;border:1px solid var(--card-b);padding:12px;color:var(--ink);background:rgba(0,0,0,.22);outline:none}
.row{display:flex;gap:8px}button{border-radius:12px;padding:10px 14px;border:1px solid var(--card-b);background:rgba(255,255,255,.08);color:var(--ink)}
button.primary{background:linear-gradient(180deg,#a984d6,#6f4aa0);border-color:rgba(255,255,255,.2)}button.ghost{background:transparent}.entries{margin-top:10px;display:grid;gap:10px}
.entry{background:rgba(0,0,0,.24);border:1px solid var(--card-b);border-radius:12px;padding:10px 12px}.entry time{display:block;font-size:12px;color:var(--ink-dim);margin-bottom:4px}
.foot{text-align:center;color:var(--ink-dim);margin:12px 0 8px}
