:root{font-family:system-ui,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;color:#243c2e;background:#f6f8f2;font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.4}[hidden]{display:none!important}:focus-visible{outline:3px solid #3f704b;outline-offset:3px}
.main{max-width:1120px;margin:auto;padding:40px 24px}.header{display:flex;align-items:baseline;gap:16px;margin-bottom:28px}.header h1{font-size:25px;letter-spacing:-1px;margin:0}.header p{font-size:13px;color:#61745b;margin:0}
.controls{display:flex;gap:10px}.controls input,.controls select{border:1px solid #d4dfcc;background:#fff;border-radius:12px;min-height:48px;padding:12px}.controls input{flex:1;min-width:0}.controls input::placeholder{color:#6d7c66}.controls select{max-width:240px}.controls input:focus{border-color:#648b55;outline:2px solid #e5efdf}
.tabs{display:flex;gap:8px;margin:20px 0 24px}.tab{background:transparent;border:1px solid transparent;border-radius:999px;min-height:44px;padding:10px 18px;color:#526a4c}.tab:hover{background:#eaf0e3}.tab.active{background:#3f704b;color:#fff}.section{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.section h2{font-size:17px;font-weight:600;margin:0}.result-tools{display:flex;align-items:center;gap:12px;font-size:13px;color:#61745b}#resetFilters{border:0;background:transparent;text-decoration:underline;text-underline-offset:3px;padding:8px;min-height:44px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.tile{min-width:0;min-height:84px;position:relative;display:flex;background:white;border:1px solid #dfe8d9;border-radius:16px;cursor:pointer;transition:border-color .15s,box-shadow .15s}.tile:hover,.tile:focus-within{border-color:#83a67a;box-shadow:0 4px 16px #294d290a}.copy-button{flex:1;min-width:0;width:auto;border:0;background:transparent;border-radius:15px;min-height:84px;padding:44px 10px 12px;display:flex;align-items:center;justify-content:center}.copy-button:active{background:#edf3e5}.emoji{font-size:18px;text-align:center;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5;max-width:100%;min-width:0}.emoji.long{font-size:16px}.fav{position:absolute;right:0;top:0;min-width:44px;min-height:44px;border:0;background:transparent;font-size:16px;line-height:1;border-radius:10px;color:#83967a}.fav:hover{background:#f0f5eb}.fav.on{color:#3f704b}.empty{grid-column:1/-1;text-align:center;color:#61745b;padding:60px 12px}.pagination{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:28px}.pagination button{border:1px solid #d4dfcc;background:#fff;padding:10px 14px;min-height:44px;border-radius:10px}.pagination form{display:flex;align-items:center;gap:8px;font-size:13px;color:#61745b}.pagination input{width:58px;min-height:44px;border:1px solid #d4dfcc;background:#fff;border-radius:10px;text-align:center}#loadStatus{text-align:center;color:#61745b;padding:28px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#294b35;color:#fff;padding:12px 22px;border-radius:14px;opacity:0;pointer-events:none;transition:opacity .15s;font-size:14px;max-width:calc(100% - 32px);text-align:center;z-index:10}#toast.show{opacity:1}
@media(max-width:600px){.main{padding:24px 16px}.header{margin-bottom:20px;gap:12px}.header h1{font-size:23px}.controls{flex-wrap:wrap;gap:8px}.controls input{flex-basis:100%}.controls select{flex:1;min-width:0;max-width:none;font-size:13px}.tabs{margin:16px 0 20px;gap:4px}.tab{padding:10px 16px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.emoji{font-size:15px}.emoji.long{font-size:15px}.pagination{gap:8px}.pagination button{padding:10px 12px}.pagination form{gap:6px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

.tile.wide{grid-column:span 2}

#openAdd{margin-left:auto;min-height:44px;padding:8px 14px;border:1px solid #b8cbb0;background:#fff;border-radius:12px;white-space:nowrap}.header{flex-wrap:wrap}dialog{width:min(440px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:24px;border:1px solid #d4dfcc;border-radius:20px;color:#243c2e;background:#f6f8f2}dialog::backdrop{background:#162b1e66}.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.dialog-header h2{font-size:20px;margin:0}.dialog-header button{border:0;background:transparent;min-width:44px;min-height:44px;font-size:26px}.add-description,#quota{font-size:13px;color:#61745b}#addForm{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}#addForm label{flex-basis:100%;font-size:13px}#addText{width:100%;min-height:48px;padding:12px;border:1px solid #b8cbb0;border-radius:10px;background:#fff}#checkAdd,#confirmAdd{min-height:44px;border:0;border-radius:10px;padding:10px 16px;background:#3f704b;color:white}#confirmAdd{width:100%;margin-top:14px}#addMessage{font-size:14px;overflow-wrap:anywhere}.similar-list{display:grid;gap:8px}.similar-list button{background:white;border:1px solid #d4dfcc;border-radius:10px;padding:14px;min-height:44px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:18px}@media(max-width:380px){.header{gap:8px}.header h1{font-size:21px}.header p{font-size:12px}#openAdd{padding:8px 10px}}
