.modal-overlay{position:fixed;inset:0;background:rgba(21,19,15,.6);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:300;display:none;align-items:center;justify-content:center;padding:24px}.modal-overlay.show{display:flex}.modal-overlay .modal{background:var(--paper);border-radius:20px;padding:38px;max-width:520px;width:100%;position:relative;max-height:92vh;overflow-y:auto;box-shadow:0 30px 80px rgba(0,0,0,.3)}.modal-overlay .modal-x{position:absolute;top:18px;right:20px;background:none;border:none;font-size:28px;color:var(--muted);cursor:pointer;line-height:1}.modal-overlay .modal-x:hover{color:var(--ink)}.modal-overlay .modal-tag{font-family:JetBrains Mono,monospace;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--orange);margin-bottom:12px}.modal-overlay .modal-h{font-family:Outfit,sans-serif;font-weight:600;font-size:26px;letter-spacing:-.5px;margin-bottom:8px}.modal-overlay .modal-sub{font-size:14.5px;color:var(--ink-soft);margin-bottom:22px}.modal-overlay .m-prompt{font-family:Outfit,sans-serif;font-weight:600;font-size:18px;color:var(--ink);margin-bottom:14px;line-height:1.4}.modal-overlay .mode-pick{display:flex;gap:10px;margin-bottom:18px}.modal-overlay .mode-btn{flex:1 1;text-align:left;background:var(--paper-2);border:1.5px solid var(--line);border-radius:12px;padding:14px 16px;cursor:pointer;font-family:Outfit;transition:all .2s}.modal-overlay .mode-btn:hover{border-color:var(--line-2)}.modal-overlay .mode-btn.active{border-color:var(--orange);background:var(--orange-wash)}.modal-overlay .mode-btn .mt{display:block;font-weight:600;font-size:15px;color:var(--ink)}.modal-overlay .mode-btn .md{display:block;font-size:12px;color:var(--ink-soft);margin-top:3px;line-height:1.35}.modal-overlay .mode-btn.active .mt{color:var(--orange-d)}.modal-overlay .m-field{width:100%;background:#fff;border:1px solid var(--line-2);border-radius:10px;padding:13px 15px;font-size:15px;color:var(--ink);font-family:Outfit;margin-bottom:11px;transition:border-color .2s}.modal-overlay .m-field:focus{outline:none;border-color:var(--orange)}.modal-overlay .m-field::placeholder{color:var(--muted)}.modal-overlay textarea.m-field{resize:vertical;min-height:52px}.modal-overlay .m-row{display:flex;gap:11px;flex-wrap:wrap}.modal-overlay .m-row .m-field{flex:1 1;min-width:150px}.modal-overlay .m-submit{width:100%;background:var(--orange);color:#fff;border:none;border-radius:10px;padding:15px;font-size:15px;font-weight:700;cursor:pointer;font-family:Outfit;margin-top:4px;transition:background .2s}.modal-overlay .m-submit:hover{background:var(--orange-d)}.modal-overlay .m-submit:disabled{opacity:.6;cursor:default}.modal-overlay .m-note{font-family:JetBrains Mono,monospace;font-size:11.5px;color:var(--muted);margin-top:14px}.modal-overlay .m-err{color:var(--orange-d);font-size:13px;margin-top:10px}.modal-overlay .poster-themes{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:18px}.modal-overlay .poster-themes .pt-lab{font-family:JetBrains Mono,monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-right:4px}.modal-overlay .pt-sw{width:26px;height:26px;border-radius:50%;border:2px solid var(--line-2);cursor:pointer;padding:0;transition:transform .15s,border-color .15s;box-shadow:inset 0 0 0 1px rgba(0,0,0,.05)}.modal-overlay .pt-sw:hover{transform:scale(1.1)}.modal-overlay .pt-sw.active{border-color:var(--orange);box-shadow:0 0 0 2px rgba(234,60,30,.25)}.modal-overlay .poster-prev{width:260px;max-width:80%;border-radius:12px;margin:12px auto 6px;display:block;box-shadow:0 18px 44px rgba(21,19,15,.22)}.modal-overlay .m-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:18px}.modal-overlay .m-act{background:#fff;border:1px solid var(--line-2);color:var(--ink);padding:12px 20px;border-radius:9px;font-size:14px;cursor:pointer;font-family:Outfit;font-weight:600;transition:border-color .2s,transform .2s}.modal-overlay .m-act:hover{border-color:var(--orange);transform:translateY(-2px)}.modal-overlay .m-act.pri{background:var(--orange);border-color:var(--orange);color:#fff;font-weight:700}.modal-overlay .m-tagline{text-align:center;font-size:13px;color:var(--muted);margin-top:16px;font-style:italic}.modal-overlay .echo{background:rgba(232,101,10,.08);border:1px solid rgba(232,101,10,.25);border-radius:12px;padding:16px 18px;margin-bottom:18px;text-align:center}.modal-overlay .echo-n{font-size:15px;color:var(--ink-soft)}.modal-overlay .echo-n b{font-family:Outfit,sans-serif;font-size:26px;color:var(--orange-d);letter-spacing:-.5px;vertical-align:-3px;margin-left:4px}.modal-overlay .echo-c{font-size:14px;color:var(--ink-soft);margin-top:6px}.modal-overlay .echo-c b{color:var(--ink)}.modal-overlay .mylink{margin-top:20px;border-top:1px solid var(--line);padding-top:18px}.modal-overlay .mylink-lab{font-size:13px;color:var(--ink-soft);font-weight:600;margin-bottom:8px}.modal-overlay .mylink-row{display:flex;gap:8px}.modal-overlay .mylink-row input{flex:1 1;background:var(--paper);border:1px solid var(--line-2);border-radius:8px;padding:10px 12px;font-size:13.5px;color:var(--ink);font-family:JetBrains Mono,monospace}.modal-overlay .mylink-row button{background:var(--ink);color:#fff;border:none;border-radius:8px;padding:10px 16px;font-size:13px;font-weight:700;cursor:pointer;font-family:Outfit}.modal-overlay .mylink-row button:hover{background:var(--orange)}.modal-overlay .mylink-echo{font-size:12.5px;color:var(--muted);margin-top:8px;font-family:JetBrains Mono,monospace}.modal-overlay .comeback{margin-top:18px;background:var(--paper-2);border-radius:12px;padding:16px 18px}.modal-overlay .cb-lab{font-size:13.5px;color:var(--ink-soft);margin-bottom:10px;font-weight:600}.modal-overlay .cb-row{display:flex;gap:8px}.modal-overlay .cb-row input{flex:1 1;background:#fff;border:1px solid var(--line-2);border-radius:8px;padding:10px 12px;font-size:13.5px;color:var(--ink);font-family:Outfit}.modal-overlay .cb-row button{background:var(--orange);color:#fff;border:none;border-radius:8px;padding:10px 16px;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap;font-family:Outfit}.modal-overlay .cb-row button:hover{background:var(--orange-d)}.modal-overlay .cb-done{font-size:13px;color:var(--ok);margin-top:10px}