.em-app{max-width:1080px;margin:24px auto 40px;padding:28px;color:#26241f;text-align:left;background:#f8f7f3;border:1px solid #e6e2d8;border-radius:24px;font-family:inherit}
.em-app *{box-sizing:border-box}
.em-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.em-intro{padding:6px 0 20px}
.em-back{color:#5f5b52;font-size:13px}
.em-eyebrow{font-size:11px;letter-spacing:2px;font-weight:800;color:#7a3fb0;margin:24px 0 12px}
.em-intro h1{font-size:36px;line-height:1.35;letter-spacing:-1.5px;font-weight:800;margin:0 0 14px}
.em-intro h1 span{color:#7a3fb0}
.em-intro>p:last-child{font-size:15px;line-height:1.8;color:#64615a;margin:0}
.em-app button{border:1px solid #d9d4c8;background:#fff;border-radius:10px;padding:8px 13px;min-height:40px;color:#3a372f;font:inherit;font-size:13px;font-weight:600;cursor:pointer}
.em-app button:hover{background:#f4eefa;border-color:#b394d1}
.em-app :focus-visible{outline:3px solid #7a3fb0;outline-offset:3px}
.em-searchbox{background:#fff;border:1px solid #d9d4c8;border-radius:18px;padding:18px;margin-bottom:12px;position:sticky;top:0;z-index:5}
.em-app input#em-q{display:block;width:100%;border:2px solid #7a3fb0;border-radius:12px;padding:12px 16px;font:inherit;font-size:18px;font-weight:600;background:#fcfaff;min-height:54px;box-shadow:none}
.em-status{margin:8px 0 0;font-size:13px;color:#7a3fb0;font-weight:700}
.em-quick{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:10px}
.em-quick>span{font-size:12px;color:#7a766c;margin-right:4px}
.em-quick a{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid #e3dceb;border-radius:999px;font-size:21px;text-decoration:none;background:#fff}
.em-quick a:hover{background:#f4eefa}
.em-cats{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 16px}
.em-cats button{border-radius:999px}
.em-cats button small{color:#9a958a;font-weight:500;margin-left:2px}
.em-cats button[aria-pressed="true"]{background:#7a3fb0;border-color:#7a3fb0;color:#fff}
.em-cats button[aria-pressed="true"] small{color:#e7d9f5}
.em-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.em-card{display:flex;gap:14px;background:#fff;border:1px solid #e3dfd5;border-radius:16px;padding:16px;scroll-margin-top:190px}
.em-card[hidden]{display:none}
.em-card.em-hit{border-color:#7a3fb0;box-shadow:0 0 0 3px #e7d9f5}
.em-app .em-emoji{flex:0 0 74px;height:74px;font-size:42px;line-height:1;padding:0;border-radius:16px;background:#faf8f3;border:1px solid #ece7dc}
.em-body{min-width:0;flex:1}
.em-body h2{font-size:17px;font-weight:800;margin:2px 0 6px;letter-spacing:-.3px;line-height:1.4}
.em-body h2 small{display:block;font-size:12px;font-weight:500;color:#8a8579;letter-spacing:0}
.em-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:0 0 8px;font-size:11px}
.em-tag{background:#f4eefa;color:#6a3a98;border-radius:999px;padding:2px 8px;font-weight:700}
.em-meta code{background:#f3f1ec;color:#5f5b52;border-radius:6px;padding:2px 6px;font-size:11px}
.em-ver{background:#fff4e0;color:#9a5b00;border-radius:999px;padding:2px 8px;font-weight:700}
.em-mean{font-size:14px;line-height:1.7;color:#3a372f;margin:0 0 8px}
.em-ex{font-size:13px;line-height:1.6;color:#5f5b52;background:#faf8f3;border-radius:10px;padding:8px 10px;margin:0 0 10px}
.em-ex span{font-size:11px;font-weight:800;color:#7a3fb0;margin-right:8px}
.em-actions{display:flex;flex-wrap:wrap;gap:6px}
.em-actions button,.em-actions a{min-height:34px;padding:5px 10px;font-size:12px}
.em-share{display:inline-flex;align-items:center;border:1px solid #d9d4c8;border-radius:10px;color:#5f5b52;text-decoration:none;font-weight:600}
.em-share:hover{background:#f4eefa}
.em-empty{background:#fff;border:1px dashed #d9d4c8;border-radius:14px;padding:24px;text-align:center;color:#64615a}
.em-guide{margin-top:30px;background:#fff;border:1px solid #e3dfd5;border-radius:18px;padding:22px 24px;font-size:14px;line-height:1.8;color:#3a372f}
.em-guide h2{font-size:19px;font-weight:800;margin:18px 0 10px}
.em-guide h2:first-child{margin-top:0}
.em-guide ol{padding-left:20px;margin:0}
.em-links{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}
.em-links li{background:#faf8f3;border-radius:10px;padding:8px 12px;font-size:13px;color:#64615a}
.em-links a{font-weight:700;color:#7a3fb0;margin-right:6px}
.em-faq details{border-top:1px solid #ece7dc;padding:10px 0}
.em-faq summary{font-weight:700;cursor:pointer}
.em-faq p{margin:8px 0 0;color:#5f5b52}
.em-hint{font-size:12px;color:#8a8579;margin:14px 0 0}
.em-toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%) translateY(20px);background:#26241f;color:#fff;padding:10px 18px;border-radius:999px;font-size:14px;font-weight:700;opacity:0;pointer-events:none;transition:all .2s;z-index:9999}
.em-toast.on{opacity:1;transform:translateX(-50%) translateY(0)}
@media (max-width:760px){
	.em-app{margin:10px auto 24px;padding:18px 14px;border-radius:18px}
	.em-intro h1{font-size:27px}
	.em-grid{grid-template-columns:1fr}
	.em-searchbox{padding:12px}
	.em-quick a{width:36px;height:36px;font-size:19px}
	.em-card{padding:13px;gap:12px}
	.em-app .em-emoji{flex-basis:60px;height:60px;font-size:34px}
	.em-guide{padding:18px 16px}
}
@media (max-width:760px){
	.em-searchbox{position:static}
	.em-card{scroll-margin-top:16px}
}
