        /* TextFx：Madeline 对话框内动画词的默认专属色（普通文字仍为原色） */
        #gameDialogText, .chat-messages .msg-bubble { --c:#F94A4A; }
        /* 输入框文字透明后，placeholder 保持独立可见（不被 -webkit-text-fill-color 带走） */
        .book-page textarea::placeholder, .book-page input::placeholder { -webkit-text-fill-color:rgba(64,58,66,.3); }
    

        /* ===== 羽毛随笔弹框：沿用每日明信片的出场口径（poempage 底图保留） ===== */
        #featherNoteBox {
            position:fixed;
            top:50%;
            left:50%;
            width:min(90vw, 720px);
            aspect-ratio:1.5 / 1;
            display:flex;
            flex-direction:column;
            justify-content:center;
            padding:18px 30px;
            z-index:10001;
            background:url('../celeste-gui/poempage.webp') center/100% 100% no-repeat;
            border:none;
            border-radius:0;
            filter:drop-shadow(0 8px 32px rgba(0,0,0,.6));
            opacity:0;
            /* 与 #postcard-container 相同的出场方向、位移与倾角 */
            transform:translate(-50%,-50%) translateX(-120%) rotate(-8deg);
            pointer-events:none;
            transition:opacity .8s ease, transform 1s cubic-bezier(0.34, 1.56, 0.64, 1);
        }
        #featherNoteBox.slide-in {
            opacity:1;
            transform:translate(-50%,-50%) translateX(0) rotate(0deg);
            pointer-events:auto;
        }
        /* 退场沿用明信片的做法：不做反向滑出，整块 opacity 淡出 .6s 后再收起 */
        #featherNoteBox.is-closing {
            opacity:0;
            pointer-events:none;
            transition:opacity .6s ease;
        }
        /* ===== 随笔框背后的页面压暗层：参数照 #postcard-overlay（z 10000，压住整页 UI） ===== */
        #featherNoteOverlay {
            position:fixed;
            inset:0;
            background:rgba(5,5,20,0.95);
            z-index:10000;
            display:none;
            align-items:center;
            justify-content:center;
            flex-direction:column;
        }
        #featherNoteOverlay.show { display:flex; }
        /* 随笔遮罩自己的雪花画布：尺寸/层级写法照 #snowCanvas */
        #featherNoteSnowCanvas {
            position:absolute;
            inset:0;
            width:100%;
            height:100%;
            pointer-events:none;
            z-index:0;
        }
        #featherSave:hover { background:#c4a882 !important; color:#fff !important; }
        #featherCancel:hover { background:rgba(180,160,140,.25) !important; border-color:#a89080 !important; }
        #featherInput:focus { border-color:#c4a882 !important; box-shadow:inset 0 1px 3px rgba(90,62,54,.15), 0 0 0 2px rgba(196,168,130,.2) !important; }
    
