.auth-modal-backdrop{z-index:9000;opacity:0;pointer-events:none;background:#090e13c7;justify-content:center;align-items:center;padding:16px;transition:opacity .15s;display:flex;position:fixed;inset:0}.auth-modal-backdrop.is-open{opacity:1;pointer-events:auto}.auth-modal{background:var(--bg-card,#161a21);color:var(--text-primary,#a9abb3);border-radius:12px;outline:none;width:100%;max-width:400px;padding:24px;transition:transform .15s;transform:translateY(8px);box-shadow:0 12px 32px #0006}.auth-modal-backdrop.is-open .auth-modal{transform:translateY(0)}.auth-modal-title{color:#fff;margin:0 0 8px;font-size:17px;font-weight:700}.auth-modal-body{margin:0 0 20px;font-size:14px;line-height:1.5}.auth-modal-actions{flex-direction:column;gap:8px;display:flex}.auth-modal-btn{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:12px 16px;font-family:inherit;font-size:15px;font-weight:600;transition:background .15s,opacity .15s;display:inline-flex}.auth-modal-btn--primary{background:var(--green,#00ff85);color:#0a1410}.auth-modal-btn--primary:hover{background:var(--green-light,#2ecc71)}.auth-modal-btn--secondary{color:var(--text-primary,#a9abb3);background:0 0;border:1px solid #a9abb34d}.auth-modal-btn--secondary:hover{background:var(--bg-hover,#1c2028)}.auth-modal-btn--google{color:#1a1a1a;background:#fff}.auth-modal-btn--google:hover{background:#f1f3f4}.auth-modal-btn--kakao{color:#000000d9;background:#fee500}.auth-modal-btn--kakao:hover{background:#fdd835}.auth-modal-btn .g-mark,.auth-modal-btn .k-mark{flex-shrink:0;width:18px;height:18px;display:inline-block}.auth-modal-link{color:var(--text-primary,#a9abb3);cursor:pointer;background:0 0;border:none;align-self:center;min-height:44px;margin-top:4px;padding:12px 16px;font-family:inherit;font-size:13px;text-decoration:underline}.auth-modal-link:hover{color:#fff}.auth-modal-close{color:var(--text-primary,#a9abb3);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex;position:absolute;top:8px;right:8px}.auth-modal-close:hover{background:var(--bg-hover,#1c2028)}.auth-modal{position:relative}@media (width<=480px){.auth-modal{padding:20px}.auth-modal-title{font-size:16px}}.suggestion-fab{background:var(--green,#00ff85);height:56px;color:var(--bg-page,#090e13);cursor:pointer;z-index:900;border:none;border-radius:28px;justify-content:center;align-items:center;gap:8px;padding:0 20px 0 16px;font-family:inherit;font-size:14px;font-weight:700;transition:transform .15s,box-shadow .15s;display:inline-flex;position:fixed;bottom:20px;right:20px;box-shadow:0 4px 16px #00ff8540,0 2px 6px #0006}.suggestion-fab:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00ff8559,0 3px 8px #00000073}.suggestion-fab:active{transform:translateY(0)}.suggestion-fab:focus-visible{outline:2px solid var(--green-light,#2ecc71);outline-offset:3px}.suggestion-fab-icon{flex-shrink:0;width:22px;height:22px}.suggestion-fab-label{white-space:nowrap}@media (width<=480px){.suggestion-fab{border-radius:50%;width:52px;height:52px;padding:0;bottom:16px;right:16px}.suggestion-fab-label{display:none}}@media (width<=768px){.index-page .suggestion-fab{bottom:calc(56px + 16px + env(safe-area-inset-bottom,0px))}}.suggestion-modal-overlay{z-index:9999;opacity:0;background:#0009;justify-content:center;align-items:center;padding:20px;transition:opacity .2s;display:flex;position:fixed;inset:0}.suggestion-modal-overlay.is-open{opacity:1}.suggestion-modal{background:var(--bg-card,#161a21);border-radius:16px;flex-direction:column;gap:12px;width:100%;max-width:360px;max-height:calc(100vh - 40px);padding:24px;display:flex;overflow-y:auto;box-shadow:0 8px 32px #00000080}.suggestion-modal-icon{width:48px;height:48px;color:var(--green,#00ff85);background:#00ff8514;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 4px;display:flex}.suggestion-modal-title{color:var(--text-bright,#fff);text-align:center;margin:0;font-size:16px;font-weight:700}.suggestion-modal-msg{color:var(--text-primary,#a9abb3);text-align:center;margin:0 0 8px;font-size:13px;line-height:1.5}.suggestion-field{flex-direction:column;gap:6px;display:flex}.suggestion-label{color:var(--text-primary,#a9abb3);font-size:12px;font-weight:600}.suggestion-required{color:var(--red,#ef4444);font-weight:700}.suggestion-optional{color:var(--text-primary,#a9abb3);opacity:.6;font-weight:400}.suggestion-field input[type=text],.suggestion-field textarea{background:var(--bg-page,#090e13);width:100%;color:var(--text-bright,#fff);box-sizing:border-box;border:1px solid #a9abb32e;border-radius:8px;padding:10px 12px;font-family:inherit;font-size:14px;transition:border-color .15s}.suggestion-field input[type=text]:focus,.suggestion-field textarea:focus{border-color:var(--green,#00ff85);outline:none}.suggestion-field textarea{resize:vertical;min-height:60px}.suggestion-btn{cursor:pointer;border:none;border-radius:999px;width:100%;min-height:44px;font-family:inherit;font-size:14px;font-weight:700;transition:opacity .15s,background .15s}.suggestion-btn--primary{background:var(--gradient-btn,var(--green,#00ff85));color:var(--bg-page,#090e13);margin-top:4px}.suggestion-btn--primary:hover{opacity:.9}.suggestion-btn--primary:disabled{opacity:.5;cursor:not-allowed}.suggestion-btn--text{color:var(--text-primary,#a9abb3);background:0 0;margin-top:-4px;padding:10px;font-weight:500}.suggestion-btn--text:hover{color:var(--text-bright,#fff)}
