/* Keep the established paper/ink palette; modernise interaction, not identity. */
.message-row.ai{flex-direction:row;justify-content:flex-start}.message-row.mine{flex-direction:row-reverse;justify-content:flex-start}.ai .message{background:#fffcf4;border-color:#d9cebb;border-radius:3px 12px 12px 12px}.mine .message{background:#dfe6d6;border-color:#c6d0ba;border-radius:12px 3px 12px 12px}.mine time{text-align:right}
.wechat-composer{display:flex;gap:6px;align-items:flex-end}.wechat-composer .composer-icon{flex:0 0 36px;width:36px;height:44px}.wechat-composer .ui-icon{width:27px;height:27px}.wechat-composer textarea{flex:1;min-width:0;resize:none;min-height:44px;max-height:110px;margin:0;padding:10px;font-size:16px;border-radius:8px;background:#fffdf8}.wechat-composer .btn{padding:8px;min-height:44px}.hold-talk{flex:1;min-height:48px;background:#fffcf4;border:1px solid #cbbfae;border-radius:8px;font-size:19px;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.hold-talk:active{background:#dfe6d6}#holdFeedback{padding:12px;text-align:center;background:#536650;color:white;border-radius:8px;margin-top:8px}.composer-options{flex-wrap:wrap}.composer-options button{padding:4px}.attachment-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.attachment-grid button{display:grid;justify-items:center;gap:10px;padding:14px 0;border:1px solid #d9cebb;background:#fffcf4;border-radius:10px}.attachment-grid img{width:28px}.material-preview{width:100%;max-height:300px;object-fit:contain;border-radius:8px}#materialText{width:100%;margin:14px 0}.call-portrait{display:block;width:140px;height:170px;object-fit:cover;border-radius:80px;margin:0 auto 20px}
.wizard-v4 .stepper{display:grid;grid-template-columns:repeat(3,1fr)}.wizard-v4 .stepper small{font-size:13px}.wizard-v4 h2{font-size:25px;margin:20px 0}.wizard-save{width:100%;margin-top:25px}.title-suggestions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.title-suggestions button{padding:8px 12px;border:1px solid #d9cebb;border-radius:30px;background:#fffcf4;color:#536650}.writing-settings{border-top:1px solid #d9cebb;padding-top:18px}.writing-settings summary{cursor:pointer;min-height:44px}.writing-settings label{display:grid;grid-template-columns:1fr 1.5fr;align-items:center;margin:12px 0}.writing-settings select{width:100%;padding:9px;background:#fffcf4;border:1px solid #d9cebb;border-radius:6px}.shelf-account{margin:0 0 26px;padding:16px 0;border-bottom:1px solid #d9cebb}
.designed-cover{height:100%;aspect-ratio:2/3;background:var(--cover-color);color:#fff9e8;display:flex;flex-direction:column;position:relative;border-radius:7px;overflow:hidden;padding:9%;box-shadow:inset 5px 0 9px #0002;text-align:center}.designed-cover.ornament:after{content:'';position:absolute;inset:5%;border:1px solid #e2cc8f99;pointer-events:none}.cover-photo{height:59%;overflow:hidden;flex-shrink:0}.cover-photo img{width:100%!important;height:100%!important;object-fit:cover!important;position:static!important;opacity:1!important}.cover-type{flex:1;display:flex;flex-direction:column;justify-content:center;gap:12px;position:relative;z-index:1}.cover-type b{font-size:21px;line-height:1.5;overflow-wrap:anywhere}.cover-type small{font-size:12px}.template-portrait .cover-photo{border-radius:50%;width:90%;align-self:center}.template-landscape{padding:0}.template-landscape .cover-photo{height:65%}.template-landscape .cover-type{padding:5%}.custom-cover{padding:0!important;background:none!important;overflow:hidden}.custom-cover .designed-cover{width:100%}.custom-cover img{position:static}.book-grid .cover-type b{font-size:17px}.book-grid .cover-type small{font-size:10px}#coverPreview{width:210px;height:315px;margin:24px auto}.cover-templates{display:flex;gap:6px}.cover-templates .btn{flex:1;font-size:13px;padding:9px 3px}.cover-settings{display:flex;flex-wrap:wrap;gap:15px;align-items:center;margin:20px 0}.cover-settings label{font-size:14px;display:flex;gap:8px;align-items:center}.cover-settings input[type=color]{width:40px;height:35px;padding:0}.cover-upload{display:block;text-align:center}.crop-control{display:flex;align-items:center;gap:15px;font-size:13px;margin:15px 0}.crop-control input{flex:1;min-width:0}.public-book-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 16px}.public-book .story-open{padding:0;width:100%;background:none}.public-book .designed-cover{height:auto;width:100%;min-height:220px}.public-book .cover-type b{font-size:18px}.public-book .cover-type small{font-size:11px}.public-book>small{display:block;color:#817765;margin:10px 0}.public-book footer{display:flex;justify-content:space-between}.public-book footer button{background:none;border:0;min-height:44px;display:flex;align-items:center;gap:5px}.public-book footer img{width:17px}.sheet audio{max-width:100%}
@media(max-width:370px){.public-book-grid{gap:16px 10px}.public-book .cover-type b{font-size:15px}.wechat-composer{gap:3px}.wechat-composer .composer-icon{flex-basis:30px;width:30px}.cover-templates .btn{font-size:12px}}
