.feedback-trigger-btn{position:fixed;bottom:16px;left:50%;transform:translateX(-50%);z-index:9990;display:flex;align-items:center;gap:8px;background:transparent;border:none;color:var(--primary,#ff804e);padding:8px;cursor:pointer;font-family:var(--font-mono,var(--font-dm-sans),"DM Sans",sans-serif,monospace);font-size:12px;font-weight:600;letter-spacing:.02em;box-shadow:none;transition:opacity .15s ease,transform .15s ease}.feedback-trigger-btn:hover{background:transparent;border-color:transparent;opacity:.8;transform:translateX(-50%) translateY(-2px)}.feedback-trigger-btn:active{transform:translateX(-50%) translateY(0)}.feedback-trigger-btn svg{color:var(--blue,#ff5312);transition:transform .2s ease}.feedback-trigger-btn:hover svg{transform:rotate(15deg)}.feedback-backdrop{position:fixed;inset:0;background-color:var(--backdrop-bg,rgba(7,14,29,.8));display:flex;align-items:center;justify-content:center;z-index:10000;opacity:0;pointer-events:none;transition:opacity .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.feedback-backdrop.active{opacity:1;pointer-events:auto}.feedback-modal-box{background-color:var(--bg-card-mid,#191f2f);border:1px solid var(--outline-soft,#424754);width:440px;border-radius:var(--radius,4px);transform:translateY(20px);transition:transform .22s cubic-bezier(.22,1,.36,1);overflow:hidden;box-shadow:var(--shadow-modal,0 12px 32px rgba(0,0,0,.6))}.feedback-backdrop.active .feedback-modal-box{transform:translateY(0)}.feedback-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--outline-soft,#424754);background-color:var(--bg-card,#141b2b)}.feedback-title{font-family:var(--mono,var(--font-dm-sans),"DM Sans",sans-serif,monospace);font-size:13.5px;font-weight:700;color:var(--text,#dce2f7);text-transform:uppercase;margin:0}.feedback-close-btn{background:none;border:none;color:var(--outline,#8c909f);cursor:pointer;font-size:14px;padding:2px 8px;border-radius:3px;transition:color .12s,background-color .12s}.feedback-close-btn:hover{color:var(--text,#dce2f7);background-color:var(--bg-card-high,#232a3a)}.feedback-body{padding:22px 20px 18px;display:flex;flex-direction:column;gap:18px}.feedback-field-group{display:flex;flex-direction:column;gap:7px}.feedback-label{font-family:var(--mono,var(--font-dm-sans),"DM Sans",sans-serif,monospace);font-size:10px;font-weight:700;color:var(--outline,#8c909f);letter-spacing:.05em;text-transform:uppercase;line-height:1.4}.feedback-emoji-container{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px}.feedback-emoji-btn{background-color:var(--bg-card,#141b2b);border:1px solid var(--outline-soft,#424754);color:var(--text,#dce2f7);padding:12px;border-radius:4px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:6px;font-family:var(--font,var(--font-dm-sans),"DM Sans",sans-serif,monospace);font-size:11px;font-weight:500;transition:all .15s ease}.feedback-emoji-btn .emoji-pic{font-size:22px;transition:transform .15s ease}.feedback-emoji-btn:hover{border-color:var(--outline,#8c909f);background-color:var(--bg-card-high,#232a3a)}.feedback-emoji-btn:hover .emoji-pic{transform:scale(1.15)}.feedback-emoji-btn.active-emoji{border-color:var(--blue,#ff5312);background-color:var(--blue-glow,rgba(255,83,18,.08));color:var(--text,#dce2f7)}.feedback-emoji-btn.active-emoji .emoji-pic{transform:scale(1.25)}.feedback-textarea{background-color:var(--bg,#0c1322);border:1px solid var(--outline-soft,#424754);color:var(--text,#dce2f7);font-family:var(--font,var(--font-dm-sans),"DM Sans",sans-serif,monospace);font-size:13px;height:96px;padding:10px 12px;border-radius:3px;outline:none;resize:none;transition:border-color .15s;width:100%}.feedback-input:focus,.feedback-textarea:focus{border-color:var(--blue,#ff5312)}.feedback-input{background-color:var(--bg,#0c1322);border:1px solid var(--outline-soft,#424754);color:var(--text,#dce2f7);font-family:var(--font,var(--font-dm-sans),"DM Sans",sans-serif,monospace);font-size:13px;height:38px;padding:0 12px;border-radius:3px;outline:none;transition:border-color .15s;width:100%}.feedback-footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 20px;border-top:1px solid var(--outline-soft,#424754);background-color:var(--bg-card,#141b2b)}.feedback-btn-cancel{background:none;border:1px solid var(--outline-soft,#424754);color:var(--text-dim,#334155);padding:8px 16px;border-radius:3px;cursor:pointer;font-size:12px;font-weight:500;transition:border-color .12s,color .12s;font-family:var(--font,var(--font-dm-sans),"DM Sans",sans-serif,monospace)}.feedback-btn-cancel:hover{border-color:var(--outline,#8c909f);color:var(--text,#dce2f7)}.feedback-btn-submit{display:inline-flex;align-items:center;gap:6px;background-color:var(--blue,#ff5312);border:1px solid var(--blue,#ff5312);color:#fff;padding:8px 20px;border-radius:3px;cursor:pointer;font-size:12px;font-weight:600;transition:background-color .15s,transform .1s;font-family:var(--font,var(--font-dm-sans),"DM Sans",sans-serif,monospace)}.feedback-btn-submit:hover{background-color:var(--blue-hover,#e64200);border-color:var(--blue-hover,#e64200)}.feedback-btn-submit:active{transform:scale(.97)}.feedback-btn-submit:disabled{opacity:.6;cursor:not-allowed}.feedback-success-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px 12px;gap:12px}.feedback-success-icon{font-size:44px;animation:bounceSuccess .45s cubic-bezier(.175,.885,.32,1.275) both}.feedback-success-title{font-family:var(--mono,var(--font-dm-sans),"DM Sans",sans-serif,monospace);font-size:16px;font-weight:700;color:var(--text,#dce2f7);text-transform:uppercase}.feedback-success-msg{font-size:13px;color:var(--outline,#8c909f);line-height:1.5}@keyframes bounceSuccess{0%{transform:scale(.3);opacity:0}50%{transform:scale(1.1)}70%{transform:scale(.9)}to{transform:scale(1);opacity:1}}body.light-theme .feedback-trigger-btn{background:transparent;border:none;color:var(--primary,#ff804e)}body.light-theme .feedback-trigger-btn:hover{background:transparent;border:none}.feedback-slider-wrapper{display:flex;align-items:center;gap:16px}.feedback-slider{flex:1 1;-webkit-appearance:none;width:100%;height:6px;background:var(--outline-soft,#424754);border-radius:3px;outline:none}.feedback-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:var(--primary,#ff804e);cursor:pointer}.feedback-slider-val{font-family:var(--font-mono,var(--font-dm-sans),"DM Sans",sans-serif,monospace);color:var(--primary,#ff804e);font-size:14px;font-weight:700;min-width:24px;text-align:center}@keyframes shimmer-sweep{0%{background-position:-800px 0}to{background-position:800px 0}}.shimmer{background:linear-gradient(90deg,var(--bg-surface-container,#f3f4f6) 25%,var(--bg-surface-container-high,#e5e7eb) 50%,var(--bg-surface-container,#f3f4f6) 75%);background-size:1600px 100%}.shimmer,body:not(.light-theme) .shimmer{animation:shimmer-sweep 1.6s linear infinite}body:not(.light-theme) .shimmer{background:linear-gradient(90deg,#18213a 25%,#252f47 50%,#18213a 75%);background-size:1600px 100%}.canvas-skeleton-overlay{position:fixed;inset:0;display:flex;flex-direction:row;z-index:9999;background-color:var(--bg-surface,#f3f4f6);pointer-events:none;animation:skel-fade-in .18s ease}@keyframes skel-fade-in{0%{opacity:0}to{opacity:1}}.skel-sidebar{width:52px;height:100%;background-color:var(--bg-surface-container-low,#f9fafb);border-right:1px solid var(--outline-variant,#e5e7eb);display:flex;flex-direction:column;align-items:center;gap:14px;padding:20px 0;flex-shrink:0}.skel-sidebar-item{width:30px;height:30px;border-radius:6px}.skel-canvas{flex:1 1;position:relative;overflow:hidden}.skel-card{position:absolute;width:210px;border-radius:4px;overflow:hidden;display:flex;flex-direction:column;border:1px solid var(--outline-variant,#e5e7eb)}.skel-card-header{height:38px;width:100%;border-bottom:1px solid var(--outline-variant,rgba(0,0,0,.06))}.skel-card-row{height:28px;width:100%;border-bottom:1px solid var(--outline-variant,rgba(0,0,0,.04))}.skel-card-row:last-child{border-bottom:none}