.app-title{white-space:nowrap}.beta-tag{display:inline-block;margin-left:5px;padding:0 4px;border:1px solid #c8d3e0;border-radius:3px;color:#6b7f99;font-size:10px;font-weight:500;line-height:14px;letter-spacing:.02em;vertical-align:2px}.toast{position:fixed;z-index:2100;top:calc(12px + env(safe-area-inset-top));left:50%;transform:translate(-50%);max-width:calc(100vw - 32px);width:max-content;padding:8px 14px 8px 12px;border-radius:6px;background:#fff;box-shadow:0 4px 16px #00000026;border-left:4px solid #52c41a;font-size:14px;line-height:1.5;animation:toast-in .18s ease-out}.toast-warning{border-left-color:#faad14}.toast-error{border-left-color:#ff4d4f}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,-6px)}}.app-actions .lbl-short,.app-actions .ant-btn.act-phone{display:none}.link-pop{width:min(420px,calc(100vw - 48px))}.link-note{margin:0 0 6px;color:#888;font-size:12px}.link-note:last-child{margin:6px 0 0}.act-menu{display:flex;flex-direction:column;min-width:140px;margin:-4px -8px}.act-menu .ant-btn{justify-content:flex-start}@media (max-width: 1440px){.app-subtitle{display:none}}@media (max-width: 1100px){.app-header{flex-wrap:wrap}}@media (max-width: 768px){.app-actions{gap:6px}.app-actions .lbl-long,.app-actions .ant-btn.act-desktop{display:none}.app-actions .lbl-short{display:inline}.app-actions .ant-btn.act-phone{display:inline-flex}.app-actions .ant-btn{min-width:0;padding:0 4px}}.share-header{flex-wrap:nowrap}.share-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#444}.share-actions{flex:none;display:flex;gap:8px}.share-footer{flex:none;padding:3px 12px calc(3px + env(safe-area-inset-bottom));text-align:center;font-size:12px;background:#fff;border-top:1px solid #eee}.share-footer a{color:#999}.share-footer a:hover{color:#1677ff}.share-broken{flex:1;overflow-y:auto;padding:24px 16px}.share-broken-box{max-width:420px;margin:8vh auto 12px;text-align:center}.share-broken-box h2{margin:12px 0 6px;font-size:20px;font-weight:600}.share-broken-box p{margin:0 0 20px;color:#666}.share-broken-icon{width:56px;height:56px;margin:0 auto;border-radius:50%;background:#faad14;color:#fff;font-size:34px;font-weight:700;line-height:56px}.share-broken-detail{color:#aaa;font-size:12px;text-align:center;word-break:break-all}@media (max-width: 768px){.share .share-header{flex-wrap:wrap}.share .share-name{flex:1 1 0}.share .share-actions{width:100%}.share .share-actions .ant-btn{flex:1;height:40px}.share .app-body{flex-direction:column}.share .app-preview{flex:1;height:auto;min-height:0;border-bottom:none}}html,body,#root{height:100%;margin:0}.app{height:100%;height:100dvh;display:flex;flex-direction:column}.app-header{display:flex;align-items:center;gap:12px;padding:8px 16px;border-bottom:1px solid #e5e5e5;background:#fff}.app-title{font-size:16px;font-weight:600}.app-subtitle{color:#888}.app-body{flex:1;display:flex;min-height:0}.app-form{width:380px;flex:none;overflow-y:auto;border-right:1px solid #e5e5e5;background:#fafafa;padding:8px 12px 24px}.app-form .ant-form-item{margin-bottom:8px}.app-preview{flex:1;display:flex;flex-direction:column;min-width:0}.preview-bar{display:flex;align-items:center;gap:8px;padding:6px 12px;border-bottom:1px solid #eee;background:#fff}.preview-stage{position:relative;touch-action:none;flex:1;overflow:hidden;background:#d9dcdf;cursor:grab}.preview-stage.dragging{cursor:grabbing}.preview-paper{position:absolute;left:0;top:0;transform-origin:0 0;background:#fff;box-shadow:0 2px 10px #00000040}.preview-paper svg{display:block;width:100%;height:100%}.preview-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:24px}.preview-stage-3d{cursor:grab;background:radial-gradient(ellipse at 50% 40%,#f3f4f6,#dfe2e6 60%,#cfd3d8)}.viewer3d{position:absolute;top:0;right:0;bottom:0;left:0}.viewer3d-message{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:24px;color:#666;text-align:center}.preview-empty-3d{background:#d9dcdf}#print-root{display:none}.app-header-gap{flex:1}.app-presets{width:210px}.app-actions{display:flex;gap:8px}.preview-hint{color:#888;font-size:12px}@media (max-width: 768px){.app-header{flex-wrap:wrap;gap:8px;padding:8px max(12px,env(safe-area-inset-right)) 8px max(12px,env(safe-area-inset-left));padding-top:max(8px,env(safe-area-inset-top))}.app-subtitle,.app-header-gap,.preview-hint{display:none}.app-presets{flex:1;min-width:0;width:auto}.app-actions{width:100%}.app-actions .ant-btn{flex:1;height:40px}.app-body{flex-direction:column}.app-preview{order:0;flex:none;height:38dvh;min-height:200px;border-bottom:1px solid #e5e5e5}.app-form{order:1;width:auto;flex:1;min-height:0;border-right:none;padding:8px max(12px,env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));-webkit-overflow-scrolling:touch}.app-form input,.app-form textarea,.app-form .ant-select-selection-item,.app-presets .ant-select-selection-item,.app-presets .ant-select-selection-placeholder{font-size:16px!important}.app-form .ant-input-number-sm input,.app-form .ant-input-sm,.app-form .ant-select-sm .ant-select-selector{min-height:34px}.app-form .ant-select-sm{height:34px}.preview-bar .ant-btn{height:30px;padding:0 10px}}@media (max-width: 768px) and (orientation: landscape){.app-body{flex-direction:row}.app-preview{order:1;flex:1;height:auto;border-bottom:none}.app-form{order:0;width:46%;flex:none}}@media print{body>*:not(#print-root){display:none!important}#print-root{display:block}#print-root svg{display:block}}
