.robot-printer{position:relative;display:flex;align-items:center;height:140px;padding-right:20px;perspective:400px}.robot-printer.draggable{padding:0;height:auto;-webkit-user-select:none;user-select:none}.action-menu{position:absolute;bottom:calc(50% + 35px);display:flex;justify-content:center;gap:30px;z-index:14;opacity:0;animation:actionFadeIn .3s ease-out forwards;animation-delay:var(--paper-duration, .6s)}@keyframes actionFadeIn{0%{opacity:0}to{opacity:1}}.info-bar{position:absolute;top:calc(50% + 30px);display:flex;justify-content:center;align-items:center;font-size:11px;color:#a0aec0;opacity:0;animation:infoBarFadeIn .3s ease-out forwards;animation-delay:var(--paper-duration, .6s);z-index:14}@keyframes infoBarFadeIn{0%{opacity:0}to{opacity:.7}}.result-panel{position:absolute;bottom:calc(50% + 75px);display:flex;flex-direction:column;background:linear-gradient(145deg,#fff,#f8f6f0);border:1px solid rgba(0,0,0,.1);border-radius:10px;box-shadow:0 4px 16px #0000001f;z-index:15;opacity:0;animation:resultPanelFadeIn .3s ease-out forwards;animation-delay:var(--paper-duration, .6s)}@keyframes resultPanelFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.result-panel-close{position:absolute;top:8px;right:8px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:12px;color:#999;background:transparent;border:none;border-radius:50%;cursor:pointer;transition:all .15s ease}.result-panel-close:hover{background:#00000014;color:#666}.result-panel-content{max-height:200px;overflow-y:auto;padding:16px 36px 16px 20px}.result-panel-loading{text-align:center;color:#999;font-size:13px}.loading-dots:after{content:"";animation:loadingDots 1.5s infinite}@keyframes loadingDots{0%,20%{content:"."}40%{content:".."}60%,to{content:"..."}}.result-panel-line{margin:0 0 8px;font-size:13px;line-height:1.6;color:#444}.result-panel-line:last-child{margin-bottom:0}.typing-cursor{display:inline-block;color:#666;animation:blink .8s infinite}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.result-panel-actions{display:flex;justify-content:center;gap:12px;padding:12px 16px;border-top:1px solid rgba(0,0,0,.08)}.result-panel-btn{padding:6px 14px;font-size:12px;font-weight:500;color:#5c5c5c;background:transparent;border:1px solid rgba(0,0,0,.12);border-radius:6px;cursor:pointer;transition:all .15s ease}.result-panel-btn:hover:not(:disabled){background:#0000000a;border-color:#0003;color:#3c3c3c}.result-panel-btn:disabled{opacity:.5;cursor:not-allowed}.action-btn-wrapper{position:relative}.action-btn{padding:6px 14px;font-size:13px;font-weight:500;color:#5c5c5c;background:linear-gradient(145deg,#f8f6f0,#ebe8e0);border:1px solid rgba(0,0,0,.1);border-radius:6px;cursor:pointer;white-space:nowrap;box-shadow:0 2px 4px #00000014,inset 0 1px #ffffffe6;transition:all .2s ease}.action-btn.has-submenu{padding-right:8px}.submenu-indicator{margin-left:4px;font-size:10px;opacity:.6}.action-btn:hover:not(:disabled){background:linear-gradient(145deg,#fff,#f0ede5);color:#3c3c3c;box-shadow:0 3px 6px #0000001f,inset 0 1px #fff;transform:translateY(-1px)}.action-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 2px #0000001a,inset 0 1px #fff9}.action-btn:disabled{opacity:.5;cursor:not-allowed}.submenu{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:4px;padding:6px;background:linear-gradient(145deg,#fff,#f8f6f0);border:1px solid rgba(0,0,0,.1);border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:20;animation:submenuFadeIn .15s ease-out}.submenu:after{content:"";position:absolute;bottom:-10px;left:0;right:0;height:12px;background:transparent}@keyframes submenuFadeIn{0%{opacity:0;transform:translate(-50%) translateY(4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.submenu-btn{padding:6px 16px;font-size:12px;font-weight:500;color:#5c5c5c;background:transparent;border:none;border-radius:4px;cursor:pointer;white-space:nowrap;text-align:left;transition:all .15s ease}.submenu-btn:hover:not(:disabled){background:#0000000d;color:#3c3c3c}.submenu-btn:disabled{opacity:.5;cursor:not-allowed}.paper{position:absolute;top:50%;transform:translateY(-50%);height:60px;background-color:#fdfdfd;background-image:linear-gradient(to bottom,rgba(0,0,0,.08) 0%,transparent 12%),linear-gradient(to top,rgba(0,0,0,.06) 0%,transparent 10%);border-radius:4px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.12)) drop-shadow(0 4px 12px rgba(0,0,0,.15));box-shadow:inset 0 2px #fff,inset 0 -2px #0000000f;border-top:1px solid rgba(0,0,0,.25);border-bottom:1px solid rgba(0,0,0,.25);overflow:visible;z-index:15;width:0;opacity:1;transition:width var(--paper-duration, .6s) cubic-bezier(.34,1.56,.64,1)}.paper.direction-left:after{content:"";position:absolute;left:14.5px;top:-2px;width:1.5px;height:66px;background:#00000040;transform-origin:top left;transform:rotate(14deg);z-index:2;pointer-events:none}.paper.direction-right:after{content:"";position:absolute;right:14.5px;top:-2px;width:1.5px;height:66px;background:#00000040;transform-origin:top right;transform:rotate(-14deg);z-index:2;pointer-events:none}.paper.direction-left:before{content:"";position:absolute;left:0;top:0;bottom:0;width:30px;background:linear-gradient(104deg,rgba(0,0,0,.06) 0%,transparent 60%);pointer-events:none;z-index:1}.paper.direction-right:before{content:"";position:absolute;right:0;top:0;bottom:0;width:30px;background:linear-gradient(-104deg,rgba(0,0,0,.06) 0%,transparent 60%);pointer-events:none;z-index:1}.paper.direction-left{transform-origin:right center;clip-path:polygon(15px 0%,100% 0%,100% 100%,0% 100%)}.paper.direction-right{transform-origin:left center;clip-path:polygon(0% 0%,calc(100% - 15px) 0%,100% 100%,0% 100%)}.paper.expanded{width:var(--paper-width, 500px)}.paper.collapsed{width:0;transition:width calc(var(--paper-duration, .6s) * .8) cubic-bezier(.4,0,.2,1);border:none}.paper.collapsed:before,.paper.collapsed:after{opacity:0;transition:opacity .1s}.paper-content{position:absolute;inset:0;display:flex;align-items:center;padding:0 24px}.paper-input{width:100%;height:100%;background:transparent;border:none;outline:none;font-size:18px;color:#2c3e50;font-family:KaiTi,STKaiti,楷体,Georgia,serif;font-weight:500;letter-spacing:.5px;text-shadow:0 1px 1px rgba(255,255,255,.8);margin-left:10px;padding-right:32px}.enter-icon{position:absolute;right:16px;width:20px;height:20px;color:#999;cursor:pointer;opacity:.6;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.enter-icon.loading{cursor:not-allowed}.enter-icon:not(.loading):hover{opacity:1;color:#666;transform:scale(1.1)}.enter-icon:not(.loading):active{transform:scale(.95)}.enter-icon svg{width:100%;height:100%}.paper-input::placeholder{color:#64646466;font-weight:400;font-style:italic}.paper-input:disabled{opacity:.6;cursor:not-allowed}.paper-delay{font-size:12px;color:#999;white-space:nowrap;margin-right:8px}.paper-loading{display:flex;align-items:center;gap:6px;margin-right:8px}.loading-spinner{width:16px;height:16px;border:2px solid rgba(0,0,0,.1);border-top-color:#666;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.abort-btn{width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:10px;color:#999;background:#0000000d;border:none;border-radius:4px;cursor:pointer;transition:all .15s ease}.abort-btn:hover{background:#ff646426;color:#e74c3c}.paper-lines{position:absolute;inset:0 20px;pointer-events:none}.paper-line{position:absolute;left:0;right:0;height:1px;background:#c8c8c866}.paper-line:nth-child(1){top:33%}.paper-line:nth-child(2){top:66%}.paper-holes{position:absolute;top:50%;display:flex;flex-direction:column;gap:10px;pointer-events:none}.paper-holes.left{left:10px;transform:translateY(-50%) rotate(14deg)}.paper-holes.right{right:10px;transform:translateY(-50%) rotate(-14deg)}.paper-hole{width:8px;height:8px;border-radius:50%;background:linear-gradient(135deg,silver,#e8e8e8,#d0d0d0);box-shadow:inset 1px 1px 2px #0003,inset -1px -1px 1px #fffc}.robot-head-wrapper{position:relative;cursor:pointer;z-index:10;filter:drop-shadow(var(--shadow-x, 5px) var(--shadow-y, 5px) 8px rgba(0,0,0,.2));transition:filter var(--rotate-duration, .4s) ease}.robot-head-wrapper:hover{filter:drop-shadow(var(--shadow-x, 5px) var(--shadow-y, 5px) 8px rgba(0,0,0,.2)) brightness(1.02)}.robot-printer.draggable .robot-head-wrapper{cursor:grab}.robot-printer.draggable .robot-head-wrapper:active{cursor:grabbing}.robot-head{position:relative;transform-style:preserve-3d;transform:translateZ(20px) rotateX(var(--tilt-x, 12deg)) rotateY(var(--tilt-y, -12deg)) rotate(0);transition:transform var(--rotate-duration, .4s) cubic-bezier(.34,1.2,.64,1)}.head-body{position:relative;width:100px;height:85px;background:linear-gradient(var(--grad-angle, 145deg),#ebe4d4 0%,#e0d8c0 50%,#d5cdb8 100%);border-radius:12px;border:1px solid rgba(0,0,0,.18);box-shadow:inset var(--shadow-inset-x, -2px) var(--shadow-inset-y, -2px) 6px #00000014,inset var(--highlight-x, 2px) var(--highlight-y, 2px) 6px #fff9}.antenna{position:absolute;bottom:100%;left:50%;transform:translate(-50%);display:flex;flex-direction:column-reverse;align-items:center}.antenna-stem{width:4px;height:20px;background:linear-gradient(to right,#444,#666,#444);border-radius:1px}.antenna-ball{width:14px;height:14px;border-radius:50%;box-shadow:0 2px 4px #0003,inset -2px -2px 4px #0003,inset 2px 2px 4px #ffffff4d;transition:box-shadow .3s ease,background .3s ease,width .3s ease,height .3s ease,transform .3s ease,border .3s ease}.antenna-ball.loading{cursor:pointer;width:27px;height:27px;border:1px solid rgba(0,0,0,.8);display:flex;align-items:center;justify-content:center;animation:antennaBreathe 1.2s ease-in-out infinite;transition:box-shadow .3s ease,background .3s ease,width .3s ease,height .3s ease,transform .3s ease,border .3s ease}.antenna-ball.loading:hover{transform:scale(1.15)}.antenna-ball .stop-icon{width:9px;height:9px;border:1.9px solid rgba(0,0,0,.7);border-radius:1px;background:transparent}.antenna-hint{position:absolute;top:-8px;left:50%;transform:translate(-50%);font-size:10px;color:#666;white-space:nowrap;pointer-events:none;animation:hintPulse 2s ease-in-out infinite}@keyframes hintPulse{0%,to{opacity:.7}50%{opacity:1}}@keyframes antennaBreathe{0%,to{box-shadow:0 2px 4px #0003,0 0 8px #64c86466,0 0 16px #64c86433,inset -2px -2px 4px #0003,inset 2px 2px 4px #ffffff4d}50%{box-shadow:0 2px 4px #0003,0 0 16px #64c864cc,0 0 32px #64c86480,inset -2px -2px 4px #0003,inset 2px 2px 4px #ffffff4d}}.ear{position:absolute;top:50%;transform:translateY(-50%);width:12px;height:24px;background:linear-gradient(to bottom,#666,#555,#444);border-radius:6px;box-shadow:0 2px 4px #0000004d,inset 0 1px 2px #ffffff1a}.ear-left{left:-10px}.ear-right{right:-10px}.face-screen{position:absolute;top:50%;left:50%;transform:translate(-50%,-45%);width:75px;height:50px;background:linear-gradient(135deg,#1a1a1a,#111,#0a0a0a);border-radius:6px;box-shadow:inset 0 2px 4px #00000080,inset 0 -1px 2px #ffffff0d;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding-top:4px}.eyes-container{display:flex;justify-content:center;align-items:center;gap:16px}.eye{position:relative;width:14px;height:18px;background:#0fc;border-radius:3px;box-shadow:0 0 8px #0fc,0 0 16px #00ffcc80,inset 0 0 4px #ffffff80;transition:transform .15s ease;display:flex;justify-content:center;align-items:center}.pupil{width:6px;height:8px;background:radial-gradient(ellipse at center,#003333 0%,#006666 60%,transparent 100%);border-radius:2px;transition:transform .08s ease-out}.eye.blink{transform:scaleY(.1)}.eye.blink .pupil{opacity:0}.eye.loading{animation:eyePulse 1.2s ease-in-out infinite}.eye.eye-right.loading{animation-delay:.4s}@keyframes eyePulse{0%,to{opacity:1;box-shadow:0 0 8px #0fc,0 0 16px #00ffcc80,inset 0 0 4px #ffffff80}50%{opacity:.4;box-shadow:0 0 4px #0fc,0 0 8px #00ffcc4d,inset 0 0 2px #ffffff4d}}.eye.sleeping{transform:scaleY(.1) scaleX(1.3);animation:sleepingGlow 3s ease-in-out infinite}.eye.sleeping .pupil{opacity:0}@keyframes sleepingGlow{0%,to{opacity:.6;box-shadow:0 0 4px #00ffcc4d,inset 0 0 2px #fff3}50%{opacity:.3;box-shadow:0 0 2px #0fc3,inset 0 0 1px #ffffff1a}}.eyes-container.countdown-mode{position:relative}.eye.hidden-eye{opacity:0}.eyes-container.countdown-mode .countdown-digit{position:absolute;top:50%;left:50%;font-size:24px;font-weight:700;font-family:SF Mono,Consolas,monospace;color:#fc0;text-shadow:0 0 8px rgba(255,204,0,.8);animation:countdownPulse 1s ease-in-out infinite;z-index:10;pointer-events:none}@keyframes countdownPulse{0%,to{opacity:1}50%{opacity:.6;text-shadow:0 0 12px rgba(255,204,0,1)}}.mouth{width:12px;height:4px;background:#444;border-radius:2px;transition:width .2s ease,height .2s ease,border-radius .2s ease,background .2s ease}.mouth.open{width:65px;height:10px;border-radius:3px;background:#444}.hint{position:absolute;bottom:-5px;left:50%;transform:translate(-50%);font-size:11px;color:#a0aec0;white-space:nowrap;opacity:.7;pointer-events:none;letter-spacing:.5px;z-index:5}.robot-printer.draggable .hint{bottom:-35px}.action-tip{position:absolute;top:-34px;left:50%;transform:translate(-50%);background-color:#323232e6;color:#fff;padding:4px 8px;border-radius:4px;font-size:12px;white-space:nowrap;pointer-events:none;z-index:100;animation:tipFadeIn .2s ease-out;box-shadow:0 2px 8px #00000026}.action-tip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border-width:4px;border-style:solid;border-color:rgba(50,50,50,.9) transparent transparent transparent}@keyframes tipFadeIn{0%{opacity:0;transform:translate(-50%,-24px)}to{opacity:1;transform:translate(-50%,-50%)}}.submenu-btn{position:relative}*{margin:0;padding:0;box-sizing:border-box}body{background-color:#f0f2f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Microsoft YaHei,sans-serif;min-height:100vh;overflow-x:hidden;transition:background-color .3s ease}body.dark{background-color:#1a1a2e}.app{min-height:100vh;display:flex;flex-direction:column}.header{padding:60px 20px;text-align:center;color:#a0aec0;transition:color .3s ease}.app.dark .header{color:#89a}.header h1{font-weight:300;letter-spacing:2px;margin-bottom:12px;font-size:2rem}.header p{font-size:14px;opacity:.8}.theme-toggle{position:fixed;top:20px;right:20px;width:44px;height:44px;border-radius:50%;border:none;background:linear-gradient(145deg,#fff,#e6e6e6);box-shadow:0 4px 12px #0000001a,inset 0 1px #fffc;cursor:pointer;font-size:20px;display:flex;align-items:center;justify-content:center;transition:all .3s ease;z-index:9999}.theme-toggle:hover{transform:scale(1.1);box-shadow:0 6px 16px #00000026,inset 0 1px #fffc}.app.dark .theme-toggle{background:linear-gradient(145deg,#2d2d44,#1a1a2e);box-shadow:0 4px 12px #0000004d,inset 0 1px #ffffff1a}.bottom-dock{position:fixed;bottom:40px;right:40px;z-index:1000}
