:root{
  --bg:#0b0c0f; --panel:#15171c; --panel2:#1b1e25; --border:#262a33;
  --text:#eef0f3; --muted:#8b909c; --muted-dim:#5d6270;
  --accent:#d7a24a; --accent-ink:#1a1305; --accent-soft:rgba(215,162,74,.14);
  --positive:#6bbf8e; --terracotta:#c9714f; --danger:#d9707a;
  --radius:14px; --shadow:0 1px 2px rgba(0,0,0,.35), 0 8px 24px -12px rgba(0,0,0,.5);
}
*{box-sizing:border-box}
body{
  margin:0;font-family:'Inter',-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  background:
    radial-gradient(1200px 600px at 15% -10%, rgba(215,162,74,.06), transparent 60%),
    var(--bg);
  color:var(--text); -webkit-font-smoothing:antialiased;
}
.wrap{max-width:980px;margin:0 auto;padding:32px 20px 80px;}
h1{font-size:1.5rem;font-weight:800;letter-spacing:-.02em;margin:0;}
.sub{color:var(--muted);font-size:.92rem;margin:6px 0 24px;}
.tabs{display:flex;gap:4px;margin-bottom:24px;background:var(--panel);border:1px solid var(--border);
  border-radius:999px;padding:4px;flex-wrap:wrap;width:fit-content;}
.tab{padding:8px 16px;cursor:pointer;color:var(--muted);border-radius:999px;font-size:.85rem;font-weight:600;
  transition:color .15s, background .15s;}
.tab:hover{color:var(--text);}
.tab.active{color:var(--accent-ink);background:var(--accent);}
.panel{display:none;}
.panel.active{display:block;animation:fade .25s ease;}
@keyframes fade{from{opacity:0;transform:translateY(2px)}to{opacity:1;transform:none}}
.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);
  padding:20px;margin-bottom:16px;box-shadow:var(--shadow);}
label{display:block;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;
  color:var(--muted-dim);margin:14px 0 6px;}
input[type=text], input[type=number], input[type=date], input[type=email], input[type=password], textarea, select{
  width:100%;padding:10px 12px;border-radius:9px;border:1px solid var(--border);
  background:var(--panel2);color:var(--text);font-size:.92rem;font-family:inherit;
  transition:border-color .15s, box-shadow .15s;
}
input:focus, textarea:focus, select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);}
textarea{min-height:76px;resize:vertical;line-height:1.5;}
.row{display:flex;gap:12px;flex-wrap:wrap;}
.row > div{flex:1;min-width:160px;}
.words-list{display:flex;flex-direction:column;gap:8px;margin-top:8px;}
.word-row{display:flex;gap:8px;}
.word-row input{flex:1;}
.btn{background:var(--accent);color:var(--accent-ink);border:none;padding:10px 18px;border-radius:9px;
  font-weight:700;cursor:pointer;font-size:.88rem;transition:filter .15s, transform .15s;}
.btn:hover{filter:brightness(1.08);transform:translateY(-1px);}
.btn:active{transform:none;filter:brightness(.96);}
.btn.secondary{background:transparent;color:var(--text);border:1px solid var(--border);font-weight:600;}
.btn.secondary:hover{background:var(--panel2);filter:none;}
.btn.small{padding:7px 12px;font-size:.8rem;}
.btn.danger{background:var(--danger);color:#1a0a0c;}
.btn.google{
  background:#fff;color:#1f1f1f;display:flex;align-items:center;justify-content:center;gap:10px;
  width:100%;padding:12px 16px;font-size:.92rem;
}
.btn.google:hover{filter:brightness(.97);}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:16px;}
.stat{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:18px;
  text-align:center;box-shadow:var(--shadow);}
.stat .num{font-size:1.7rem;font-weight:800;color:var(--accent);letter-spacing:-.02em;}
.stat .lbl{font-size:.72rem;color:var(--muted);margin-top:6px;text-transform:uppercase;letter-spacing:.05em;}
canvas{max-height:280px;}
.entry{border-bottom:1px solid var(--border);padding:14px 0;}
.entry:last-child{border-bottom:none;}
.entry-head{display:flex;justify-content:space-between;gap:10px;font-size:.8rem;color:var(--muted);}
.entry-title{color:var(--text);font-weight:700;}
.entry-note{margin-top:6px;font-size:.9rem;line-height:1.55;white-space:pre-wrap;color:#cdd0d6;}
.tag{display:inline-block;background:var(--panel2);border:1px solid var(--border);border-radius:6px;
  padding:3px 9px;font-size:.74rem;margin:4px 6px 0 0;color:var(--positive);}
.empty{color:var(--muted);font-size:.9rem;text-align:center;padding:28px 0;}
.toprow{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:12px;}
.toprow strong{font-size:.95rem;}
.search{margin-bottom:12px;}
.footer-actions{display:flex;gap:8px;margin-top:18px;flex-wrap:wrap;}
.flash{position:fixed;top:18px;left:50%;transform:translateX(-50%);display:none;z-index:50;
  background:var(--panel2);border:1px solid var(--positive);color:var(--positive);
  padding:10px 16px;border-radius:9px;font-size:.85rem;box-shadow:var(--shadow);}
.flash.err{border-color:var(--danger);color:var(--danger);}
.center-screen{max-width:400px;margin:14vh auto 0;text-align:center;}
.center-screen h1{margin-bottom:6px;}
.center-screen .sub{margin-bottom:28px;}
.hint{font-size:.78rem;color:var(--muted);margin-top:14px;line-height:1.5;}
a{color:var(--accent);}
#topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;}
#topbar .who{font-size:.82rem;color:var(--muted);}
#topbar h1{display:flex;align-items:center;gap:8px;}
.mark{width:26px;height:26px;border-radius:7px;background:var(--accent);display:inline-flex;
  align-items:center;justify-content:center;flex:none;}
