:root {
  --bg: #1A1510;
  --bg-card: #241E16;
  --text: #D8CCB8;
  --text-sec: #A89880;
  --text-muted: #5A4F40;
  --primary: #B2956E;
  --secondary: #DFE6E9;
  --accent: #FDCB6E;
  --green: #6AB04C;
  --red: #E55039;
  --border: rgba(178,149,110,0.06);
  --radius: 12px;
  --font: 'Inter',system-ui,sans-serif;
  --mono: 'JetBrains Mono',monospace;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body{font-family:var(--font);background:var(--bg);color:var(--text);min-height:100vh}

.header{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;background:var(--bg-card);border-bottom:1px solid var(--border);flex-wrap:wrap;gap:6px}
.header h1{font-size:.88rem;font-weight:700;color:var(--primary)}
.header-right{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.search{width:160px;padding:4px 8px;font-size:.66rem}
.streak{font-size:.62rem;color:var(--accent);font-weight:600}

.btn{padding:4px 10px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--text-sec);font-family:var(--font);font-size:.66rem;cursor:pointer;transition:.2s}
.btn:hover{border-color:var(--primary);color:var(--primary)}
.btn.primary{background:var(--primary);color:#1A1510;border:none;font-weight:600}

.app{max-width:1000px;margin:0 auto;padding:12px}

.layout{display:grid;grid-template-columns:220px 1fr;gap:8px}

.sidebar{display:flex;flex-direction:column;gap:6px}
.sidebar-header{display:flex;flex-direction:column;gap:4px}

.input{width:100%;padding:4px 8px;border:1px solid var(--border);border-radius:6px;background:rgba(255,255,255,.02);color:var(--text);font-family:var(--font);font-size:.7rem}
.input:focus{outline:none;border-color:var(--primary)}
.sel{width:auto}

/* Calendar */
.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;font-size:.5rem;text-align:center}
.cal-day{padding:3px;border-radius:4px;cursor:pointer;color:var(--text-muted);transition:.15s}
.cal-day:hover{background:rgba(178,149,110,.08)}
.cal-day.has-entry{color:var(--primary);font-weight:600}
.cal-day.today{background:rgba(253,203,110,.08);color:var(--accent)}
.cal-day.selected{background:rgba(178,149,110,.12);border:1px solid rgba(178,149,110,.2)}
.cal-header{font-weight:600;color:var(--text-muted);padding:2px}

/* Entry list */
.entry-list{max-height:300px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}
.entry-item{padding:5px 8px;border:1px solid var(--border);border-radius:6px;cursor:pointer;font-size:.62rem;transition:.15s}
.entry-item:hover{background:rgba(255,255,255,.02)}
.entry-item.active{border-color:rgba(178,149,110,.2);background:rgba(178,149,110,.04)}
.entry-item .date{color:var(--primary);font-weight:500}
.entry-item .mood{margin-left:4px}
.entry-item .snippet{color:var(--text-muted);font-size:.56rem;margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.entry-item .tags{font-size:.5rem;color:var(--accent)}

/* Editor */
.editor-area{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:12px}
.editor-meta{margin-bottom:6px}
.entry-date{font-size:.72rem;font-weight:600;color:var(--primary)}
.meta-row{display:flex;gap:6px;margin-top:4px;align-items:center;flex-wrap:wrap}
.word-count{font-size:.56rem;color:var(--text-muted)}

.editor-tabs{display:flex;gap:2px;margin-bottom:4px}
.tab{padding:3px 8px;border:1px solid var(--border);border-radius:5px;background:transparent;color:var(--text-sec);font-family:var(--font);font-size:.6rem;cursor:pointer}
.tab.active{background:rgba(178,149,110,.08);color:var(--primary);border-color:rgba(178,149,110,.15)}

.editor{width:100%;min-height:300px;border:1px solid var(--border);border-radius:8px;background:rgba(0,0,0,.15);color:var(--text);font-family:var(--mono);font-size:.68rem;padding:10px;line-height:1.7;resize:vertical}
.editor:focus{outline:none;border-color:var(--primary)}

.preview{min-height:300px;padding:10px;border:1px solid var(--border);border-radius:8px;font-size:.7rem;line-height:1.6}
.preview h1,.preview h2,.preview h3{color:var(--primary);margin:8px 0 4px}
.preview code{background:rgba(0,0,0,.2);padding:1px 4px;border-radius:3px;font-family:var(--mono);font-size:.64rem}
.preview pre{background:rgba(0,0,0,.2);padding:8px;border-radius:6px;overflow-x:auto}
.preview blockquote{border-left:3px solid var(--primary);padding-left:8px;color:var(--text-sec)}
.preview ul,.preview ol{padding-left:16px}
.preview strong{color:var(--accent)}

@media(max-width:600px){.layout{grid-template-columns:1fr}.sidebar{order:1}}
