
.m2m-app{--bg:#f7f7f2;--card:#ffffff;--text:#0f172a;--muted:#475569;--line:rgba(15,23,42,.10);--accent:#22c55e;--accent2:#8b5cf6;--danger:#ef4444;--shadow:0 10px 30px rgba(0,0,0,.06);font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);border-radius:18px;overflow:hidden;border:1px solid var(--line);max-width:560px;margin:20px auto;box-shadow:var(--shadow)}
.m2m-app[data-theme="dark"]{--bg:#0b1220;--card:#0f1a2f;--text:#e5e7eb;--muted:#9ca3af;--line:rgba(229,231,235,.10);--shadow:0 12px 30px rgba(0,0,0,.30)}
.m2m-topbar{display:flex;justify-content:space-between;align-items:center;padding:14px 14px;background:linear-gradient(180deg, rgba(34,197,94,.18), rgba(0,0,0,0));gap:10px}
.m2m-brand{display:flex;gap:10px;align-items:center}
.m2m-logo{width:38px;height:38px;border-radius:14px;background:rgba(34,197,94,.18);display:flex;align-items:center;justify-content:center;font-size:18px}
.m2m-title{font-weight:900;font-size:18px;line-height:1.1}
.m2m-sub{font-size:12px;color:var(--muted);margin-top:2px}
.m2m-actions{display:flex;gap:8px}
.m2m-icon{border:1px solid var(--line);background:var(--card);border-radius:12px;padding:8px 10px;cursor:pointer}
.m2m-view{padding:14px 14px 90px}
.m2m-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:14px;box-shadow:0 12px 18px rgba(0,0,0,.03)}
.m2m-h1{font-size:32px;font-weight:950;letter-spacing:-.02em;margin:0 0 8px}
.m2m-p{color:var(--muted);line-height:1.7;margin:0}
.m2m-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
.m2m-mood{border:2px solid var(--line);background:transparent;border-radius:18px;padding:16px 12px;cursor:pointer;display:flex;flex-direction:column;gap:8px;align-items:center}
.m2m-mood.is-selected{border-color:rgba(34,197,94,.55);background:rgba(34,197,94,.14)}
.m2m-emoji{font-size:34px}
.m2m-input{width:100%;border:1px solid var(--line);background:var(--card);border-radius:16px;padding:12px 14px;font-size:15px;color:var(--text);outline:none}
.m2m-row{display:flex;gap:10px;align-items:center}
.m2m-btn{border:none;border-radius:18px;padding:12px 14px;font-weight:800;cursor:pointer;background:rgba(34,197,94,.18);color:var(--text)}
.m2m-btn.primary{background:linear-gradient(90deg,#fbbf24,#22c55e);color:#0b1220}
.m2m-btn.secondary{background:transparent;border:1px solid var(--line)}
.m2m-btn:disabled{opacity:.5;cursor:not-allowed}
.m2m-sectionTitle{font-weight:950;margin:16px 0 10px;font-size:16px}
.m2m-pillbar{display:flex;flex-wrap:wrap;gap:10px}
.m2m-pill{border:1px solid var(--line);background:transparent;border-radius:999px;padding:10px 12px;cursor:pointer;font-weight:700}
.m2m-pill.is-on{background:rgba(34,197,94,.16);border-color:rgba(34,197,94,.45)}
.m2m-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.m2m-chip{border:1px solid var(--line);background:rgba(0,0,0,.02);padding:8px 10px;border-radius:999px;display:inline-flex;gap:8px;align-items:center}
.m2m-app[data-theme="dark"] .m2m-chip{background:rgba(255,255,255,.04)}
.m2m-chip button{border:none;background:transparent;cursor:pointer}
.m2m-listItem{cursor:pointer}
.m2m-listTitle{font-weight:950;font-size:18px;margin:0}
.m2m-meta{color:var(--muted);font-size:12px;margin-top:8px;display:flex;flex-wrap:wrap;gap:10px}
.m2m-photo{width:100%;border-radius:18px;border:1px solid var(--line);margin-top:10px;object-fit:cover;aspect-ratio: 4/3}
.m2m-tagrow{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}
.m2m-tag{border:1px solid var(--line);border-radius:999px;padding:8px 10px;font-size:12px;color:var(--muted)}
.m2m-quote{margin-top:12px;border-radius:18px;border:1px solid var(--line);padding:12px;background:rgba(34,197,94,.10)}
.m2m-quote .k{font-weight:950;margin-bottom:6px}
.m2m-quote .q{color:var(--muted);line-height:1.6}
.m2m-steps ol,.m2m-steps ul{margin:8px 0 0 18px;color:var(--muted);line-height:1.7}
.m2m-error{background:rgba(239,68,68,.12);border:1px solid rgba(239,68,68,.35);padding:10px 12px;border-radius:16px;margin-bottom:12px;color:var(--text);font-weight:800}
.m2m-loader{padding:40px 10px;text-align:center}
.m2m-loader .icon{font-size:44px}
.m2m-loader .tx{margin-top:10px;font-weight:950}
.m2m-bottomnav{position:sticky;bottom:0;left:0;right:0;display:flex;gap:10px;justify-content:space-between;padding:10px;background:rgba(255,255,255,.75);backdrop-filter: blur(8px);border-top:1px solid var(--line)}
.m2m-app[data-theme="dark"] .m2m-bottomnav{background:rgba(15,26,47,.75)}
.m2m-navbtn{flex:1;border:1px solid var(--line);background:var(--card);border-radius:18px;padding:10px;display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer}
.m2m-navbtn.is-active{outline:3px solid rgba(34,197,94,.25);border-color:rgba(34,197,94,.35)}
.m2m-navbtn .i{font-size:18px}
.m2m-navbtn .t{font-size:12px;font-weight:900;color:var(--muted)}
.m2m-modal{position:fixed;inset:0;background:rgba(0,0,0,.35);display:none;align-items:flex-end;justify-content:center;padding:14px;z-index:9999}
.m2m-modal[aria-hidden="false"]{display:flex}
.m2m-modalCard{width:100%;max-width:560px;background:var(--card);border:1px solid var(--line);border-radius:22px;padding:12px;box-shadow:var(--shadow)}
.m2m-modalHead{display:flex;justify-content:space-between;align-items:center;gap:10px}
.m2m-modalTitle{font-weight:950}
.m2m-modalBody{color:var(--muted);line-height:1.7;margin-top:10px}
@media (max-width:560px){.m2m-app{border-radius:0;max-width:100%;margin:0}}
