/* Geometry and colors follow the PHP companion frontend's App.vue and Vant button rules. */
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Helvetica,"Segoe UI",Arial,Roboto,"PingFang SC",miui,"Hiragino Sans GB","Microsoft Yahei",sans-serif}
button{color:inherit;font:inherit}button:focus{outline:0}
*{padding:0;border:none;margin:0;box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden}
#app{width:100%;height:100%;background:linear-gradient(135deg,#667eea,#764ba2);overflow:hidden}
#app .page{width:100%;max-width:430px;height:100%;margin:0 auto;font-size:14px;overflow:hidden;position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center}
#app .page .nav_bar{width:100%;height:40px;background:var(--bg);background-size:100% auto;background-repeat:no-repeat}
#app .page .nav_bar .nav_bar_warp{width:100%;height:100%;background:#ffffff22;display:flex;justify-content:center;align-items:center}
#app .page .main{width:100%;flex:1;background:var(--bg,#fff);background-size:cover;background-repeat:no-repeat;padding:10px}
#app .page .main .chat_line{font-size:13px;margin-bottom:10px;display:flex;justify-content:flex-start;align-items:flex-start}
#app .page .main .chat_line .logo{width:50px;aspect-ratio:1/1;border-radius:50%}
#app .page .main .chat_line .chat_box{background:#fff;padding:10px;border-radius:10px;margin-left:10px}
#app .page .main .chat_line .chat_box .btn_line{margin-top:10px;display:flex;flex-wrap:nowrap;justify-content:center;align-items:center;gap:10px}
.van-button{position:relative;display:inline-block;box-sizing:border-box;height:44px;margin:0;padding:0;font-size:16px;line-height:1.2;text-align:center;border-radius:2px;cursor:pointer;transition:opacity .2s;-webkit-appearance:none}
.van-button:before{position:absolute;top:50%;left:50%;width:100%;height:100%;background-color:#000;border:inherit;border-color:#000;border-radius:inherit;transform:translate(-50%,-50%);opacity:0;content:" "}.van-button:active:before{opacity:.1}.van-button--disabled:before{display:none}
.van-button--primary{color:#fff;background-color:#07c160;border:1px solid #07c160}.van-button--danger{color:#fff;background-color:#ee0a24;border:1px solid #ee0a24}.van-button--small{height:32px;padding:0 8px;font-size:12px}.van-button--disabled{cursor:not-allowed;opacity:.5}
.van-button__content{display:flex;align-items:center;justify-content:center;height:100%}.van-button__content:before{content:" "}
#app .page .main .chat_line .chat_box .btn_line .btn{height:auto;font-size:12px;font-weight:700;padding:4px 8px;border-radius:4px;position:relative;overflow:hidden}
.van-overlay{position:fixed;top:0;left:0;z-index:2000;width:100%;height:100%;background-color:rgba(0,0,0,.7)}
.van-toast{position:fixed;z-index:2001;top:50%;left:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;box-sizing:content-box;width:88px;max-width:70%;min-height:88px;padding:16px;color:#fff;font-size:14px;line-height:20px;white-space:pre-wrap;text-align:center;word-break:break-all;background-color:rgba(0,0,0,.7);border-radius:8px;transform:translate3d(-50%,-50%,0)}.van-toast__text{margin-top:8px}
.van-loading__spinner{position:relative;display:inline-block;width:30px;height:30px;animation:van-rotate 2s linear infinite}.van-loading__circular{display:block;width:100%;height:100%}.van-loading__circular circle{stroke:currentColor;stroke-width:3;stroke-linecap:round;animation:van-circular 1.5s ease-in-out infinite}
@keyframes van-rotate{to{transform:rotate(360deg)}}@keyframes van-circular{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-40}to{stroke-dasharray:90,150;stroke-dashoffset:-120}}
[hidden]{display:none!important}
