.dock-container{--dock-motion-duration:0.38s;--dock-motion-ease:cubic-bezier(0.22,1,0.36,1);display:none;position:fixed;bottom:20px;left:50%;right:auto;transform:translateX(-50%);width:auto;z-index:999;transition:transform var(--dock-motion-duration) var(--dock-motion-ease),opacity var(--dock-motion-duration) var(--dock-motion-ease);opacity:1;align-items:flex-end;justify-content:center;gap:10px}.dock-minimized-tray[hidden]{display:none !important}.dock-minimized-item{cursor:grab}.dock-minimized-item.is-dragging{cursor:grabbing;opacity:0.5}.dock-minimized-item.minimized::before{width:50%;opacity:1;animation:breathe 2s ease-in-out infinite}.dock-container.hidden:not(.is-collapsed){transform:translateX(-50%) translateY(100%);opacity:0;pointer-events:none}.dock-container.is-collapsed{transform:translateX(calc(-50% - 80px));opacity:0;pointer-events:none}.dock{text-align:center;display:flex;align-items:center;background-color:rgba(255,255,255,65%);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:20px;padding:10px;overflow:visible;transition:all 0.35s;border:1px solid #abb7ec4f;box-shadow:0 10px 10px rgba(0,0,0,0.1)}.dock-icons{display:flex;justify-content:center;align-items:flex-end;margin:0;padding:0;list-style:none;height:48px;gap:10px}.dock-icon{position:relative;--scale:1;width:calc(3rem * var(--scale));height:calc(3rem * var(--scale));background-color:transparent;border-radius:calc(0.85rem * var(--scale));transition:all 0.2s;transform-origin:bottom center;cursor:pointer;display:flex;align-items:flex-end}.dock-icon img{width:100%;height:100%;border-radius:24%;transition:all 0.2s ease-out;object-fit:cover}.dock-icon a{display:block;width:100%;height:100%;position:relative}.dock-icon-iframe a::after{content:'';position:absolute;left:0;top:0;width:35%;height:35%;background:var(--focus-color);border-radius:45% 0;display:flex;align-items:center;justify-content:center;pointer-events:none;transition:all 0.2s ease-out;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M320.128 896c-49.152 0-98.304-18.752-135.744-56.128-74.816-74.88-74.816-196.608 0-271.488l87.744-87.808c5.952-5.248 105.984-89.728 211.136-30.528 15.36 8.704 20.8 28.224 12.096 43.648C486.656 509.056 467.072 514.496 451.776 505.856 386.304 468.8 318.4 525.12 315.52 527.552L229.632 613.632c-49.92 49.856-49.92 131.136 0 180.992 49.856 49.856 131.136 49.856 180.992 0l87.744-87.744c12.48-12.48 32.768-12.48 45.248 0s12.48 32.768 0 45.248l-87.744 87.744C418.432 877.248 369.28 896 320.128 896zM752.128 588.736l87.744-87.744c74.88-74.88 74.88-196.672 0-271.488-74.88-74.88-196.608-74.88-271.488 0L480.64 317.312c-12.48 12.48-12.48 32.768 0 45.248s32.768 12.48 45.248 0l87.744-87.744c49.856-49.856 131.136-49.856 180.992 0 49.856 49.92 49.856 131.136 0 180.992l-85.888 86.08c-2.88 2.432-70.72 58.752-136.256 21.632C557.12 554.816 537.6 560.256 528.896 575.616c-8.704 15.36-3.264 35.008 12.096 43.648 27.072 15.232 53.76 20.992 78.656 20.992C691.392 640.256 747.776 592.64 752.128 588.736z' fill='%23ffffff'/%3E%3C/svg%3E");background-size:60%;background-position:center;background-repeat:no-repeat}.dock-icon-iframe::before{content:'';position:absolute;bottom:-6px;left:50%;transform:translateX(-50%);width:0;height:3px;background:linear-gradient(90deg,#4667f0,#5a7bff);border-radius:2px;opacity:0;transition:all 0.3s ease}.dock-icon-iframe.minimized::before{width:50%;opacity:1;animation:breathe 2s ease-in-out infinite}@keyframes breathe{0%,100%{opacity:0.4;transform:translateX(-50%) scaleX(0.6)}50%{opacity:1;transform:translateX(-50%) scaleX(1)}}.dock-stack-preview{position:fixed;left:20px;bottom:20px;z-index:999;width:72px;height:45px;cursor:pointer;display:none;opacity:0;pointer-events:none;transform:translateX(32px) scale(0.92);overflow:visible;transition:transform 0.38s cubic-bezier(0.22,1,0.36,1),opacity 0.32s ease}.dock-stack-preview.is-visible{opacity:1;pointer-events:auto;transform:translateX(0) scale(1)}.dock-stack-preview::before,.dock-stack-preview::after,.dock-stack-card{position:absolute;top:50%;width:45px;height:45px;border-radius:24%;border:2px solid rgba(255,255,255,0.92);background:var(--muted-bg-color)}.dock-stack-preview::before,.dock-stack-preview::after{content:'';box-shadow:0 4px 12px rgba(15,23,42,0.16);transition:left 0.38s cubic-bezier(0.22,1,0.36,1)}.dock-stack-card{left:0;z-index:3;transform:translateY(-50%);overflow:hidden;box-shadow:0 4px 12px rgba(15,23,42,0.16)}.dock-stack-preview::before{z-index:2;left:10%;transform:translateY(-50%) scale(0.9)}.dock-stack-preview::after{z-index:1;left:20%;transform:translateY(-50%) scale(0.8)}.dock-stack-preview:hover::before{left:20%}.dock-stack-preview:hover::after{left:40%}.dock-stack-card img{display:block;width:100%;height:100%;object-fit:cover}.io-black-mode .dock-stack-preview::before,.io-black-mode .dock-stack-preview::after,.io-black-mode .dock-stack-card{border-color:rgba(255,255,255,0.2);box-shadow:0 4px 12px rgba(0,0,0,0.45)}@media (min-width:980px){.dock-container{display:flex}.dock-stack-preview{display:block}}.docktooltip{position:absolute;top:-50px;left:50%;transform:translateX(-50%) scale(0);font-size:22px;background:var(--focus-color);color:#fff;padding:6px 8px;border-radius:8px;box-shadow:0 10px 10px rgba(0,0,0,0.1);opacity:0;pointer-events:none;white-space:nowrap}.dock-icon:hover .docktooltip{opacity:1;transform:translateX(-50%) scale(0.7)}.docktooltip::before{position:absolute;content:"";height:8px;width:8px;background:var(--focus-color);bottom:-3px;left:50%;transform:translate(-50%) rotate(45deg);pointer-events:none}.dock-divider{height:20px;border-right:2px solid #afb5ba;margin-left:5px;margin-right:5px}.io-black-mode .dock{background-color:rgb(27 29 31);backdrop-filter:blur(10px);border:1px solid #36393b}.io-black-mode .dock-divider{border-right:2px solid #ffffffba}.dock-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;z-index:9999;align-items:center;justify-content:center;background:linear-gradient(135deg,rgb(0 0 0 / 30%),rgb(0 0 0 / 50%));backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:fadeIn 0.3s ease}.dock-modal.is-open{display:flex !important}.dock-modal-container{position:relative;max-width:460px;width:90%;background:#fff;border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,0.2);overflow:hidden;animation:slideDown 0.4s cubic-bezier(0.34,1.56,0.64,1);z-index:1}.dock-modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px 28px;background:#f8f9fa;border-bottom:1px solid #eee}.dock-modal-title{display:flex;align-items:center;gap:12px;font-size:18px;font-weight:600}.dock-modal-icon{width:24px;height:24px;color:var(--focus-color)}.dock-modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;transition:all 0.2s ease}.dock-modal-close svg{width:18px;height:18px;color:#000000}.dock-modal-close:hover{background:rgb(0 0 0 / 25%);transform:rotate(90deg)}.dock-modal-body{padding:28px}.dock-modal-tip{display:flex;align-items:center;gap:10px;padding:12px 16px;background:rgba(var(--theme-color-rgb),0.1);border-left:3px solid var(--theme-color);border-radius:8px;margin-bottom:24px;font-size:13px;color:var(--focus-color)}.dock-modal-tip svg{width:18px;height:18px;flex-shrink:0}.dock-form{display:flex;flex-direction:column;gap:20px}.dock-form-group{display:flex;flex-direction:column;gap:8px}.dock-form-label{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:500;color:#333}.dock-label-text{color:#333}.dock-label-required{color:#e74c3c;font-weight:600}.dock-label-optional{font-size:12px;color:#999;font-weight:400}.dock-input-wrapper{position:relative;display:flex;align-items:center}.dock-input-icon{position:absolute;left:14px;width:18px;height:18px;color:#999;pointer-events:none;transition:color 0.2s ease}.dock-input{width:100%;padding:12px 14px 12px 44px;border:2px solid #e0e0e0;border-radius:10px;font-size:14px;color:#333;transition:all 0.3s ease;outline:none}.dock-input::placeholder{color:#aaa}.dock-input:focus{background:#fff;border-color:var(--focus-color);box-shadow:0 0 0 3px rgba(var(--theme-color-rgb),0.1)}.dock-type-selector{display:flex;gap:12px}.dock-type-option{flex:1;cursor:pointer}.dock-type-option input[type="radio"]{display:none}.dock-type-label{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;border-radius:10px;background:var(--body-bg-color);color:#666;font-size:14px;font-weight:500;transition:all 0.3s ease}.dock-type-label svg{width:18px;height:18px;stroke:currentColor;flex-shrink:0}.dock-type-option input[type="radio"]:checked + .dock-type-label{background:var(--focus-color);box-shadow:0px 8px 12px -8px rgba(var(--theme-color-rgb),0.8);color:#fff}.dock-btn-submit{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px;margin-top:6px;border:none;border-radius:10px;font-size:15px;font-weight:500;color:#fff;background:var(--focus-color);box-shadow:0px 8px 12px -8px rgba(var(--theme-color-rgb),0.8);cursor:pointer;transition:all 0.3s ease}.dock-btn-submit svg{width:18px;height:18px}.dock-btn-submit:hover{transform:translateY(-2px)}.dock-btn-submit:active{transform:translateY(0)}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes slideDown{from{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.io-black-mode .dock-modal-container{background:#1e1e1e;box-shadow:0 20px 60px rgba(0,0,0,0.5)}.io-black-mode .dock-modal-header{background:#2c2e2f;border-bottom:1px solid #47494a}.io-black-mode .dock-modal-body{color:#e0e0e0}.io-black-mode .dock-modal-tip{background:linear-gradient(135deg,#3a3a2e 0%,#2e2e26 100%);border-left-color:#d4a017;color:#f4d03f}.io-black-mode .dock-modal-tip svg{stroke:#d4a017}.io-black-mode .dock-modal-close svg{color:#ffffff}.io-black-mode .dock-modal-close:hover{background:rgb(255 255 255 / 25%)}.io-black-mode .dock-label-text{color:#e0e0e0}.io-black-mode .dock-input{background:#2a2a2a;border-color:#3a3a3a;color:#e0e0e0}.io-black-mode .dock-input:focus{background:#333;border-color:#4667f0}.io-black-mode .dock-type-label{background:#2a2a2a;border-color:#3a3a3a;color:#e0e0e0}.io-black-mode .dock-type-option:not(:has(input[type="radio"]:checked)):hover .dock-type-label{background:#333;border-color:#4667f0}.dock-dialog-content{position:relative;background:#fff;padding:28px 24px 24px;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,0.2);max-width:320px;width:90%;text-align:center;animation:slideDown 0.4s cubic-bezier(0.34,1.56,0.64,1);z-index:1}.dock-dialog-content p{font-size:16px;color:#333;margin:0 0 24px;line-height:1.6}.dock-dialog-buttons{display:flex;gap:10px;justify-content:center}.dock-dialog-btn{flex:1;padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all 0.3s ease}.dock-dialog-btn-cancel{background:#f5f5f5;color:#666}.dock-dialog-btn-cancel:hover{background:#e0e0e0;transform:translateY(-1px)}.dock-dialog-btn-primary{background:var(--focus-color);box-shadow:0px 8px 12px -8px rgba(var(--theme-color-rgb),0.8);color:#fff}.dock-dialog-btn-primary:hover{transform:translateY(-1px)}.io-black-mode .dock-dialog-content{background:#1e1e1e}.io-black-mode .dock-dialog-content p{color:#e0e0e0}.io-black-mode .dock-dialog-btn-cancel{background:#2a2a2a;color:#aaa}.io-black-mode .dock-dialog-btn-cancel:hover{background:#3a3a3a}.dock-skeleton{pointer-events:none;cursor:default}.dock-skeleton-content{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:5px}.dock-skeleton-icon{width:100%;aspect-ratio:1 / 1;max-width:70px;max-height:70px;border-radius:10px;background:linear-gradient(135deg,rgba(255,255,255,0.08) 0%,rgba(255,255,255,0.15) 25%,rgba(255,255,255,0.08) 50%,rgba(255,255,255,0.15) 75%,rgba(255,255,255,0.08) 100%
);background-size:400% 400%;animation:skeletonLoading 2s ease-in-out infinite;backdrop-filter:blur(10px);box-shadow:0 8px 24px rgba(0,0,0,0.2),inset 0 1px 2px rgba(255,255,255,0.1);position:relative;overflow:hidden}.dock-skeleton-icon::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,0.3) 50%,transparent 100%);animation:skeletonShine 2s ease-in-out infinite}@keyframes skeletonLoading{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes skeletonShine{0%{left:-100%}50%,100%{left:100%}}.dock-dialog-btn.loading{position:relative;pointer-events:none;overflow:hidden;color:rgba(255,255,255,0.9) !important}.dock-dialog-btn.loading .delete-progress-text{position:relative;z-index:2;display:inline-block;animation:loadingDots 1.5s ease-in-out infinite}.delete-progress{position:absolute;top:0;left:0;height:100%;width:0;background:linear-gradient(90deg,rgba(255,255,255,0.15) 0%,rgba(255,255,255,0.3) 50%,rgba(255,255,255,0.15) 100%);background-size:200% 100%;animation:deleteProgress 1.2s ease-in-out infinite;z-index:1}@keyframes deleteProgress{0%{width:0%;background-position:0 0}50%{width:100%;background-position:100% 0}100%{width:100%;background-position:200% 0}}@keyframes loadingDots{0%,20%{opacity:1}50%{opacity:0.6}100%{opacity:1}}.dock-dialog-btn:disabled{opacity:0.7;cursor:not-allowed}#dock.drag-over{background-color:rgba(0,128,255,0.2);border:1px dashed #274eee;transition:background-color 0.3s,border 0.3s}.io-black-mode #dock.drag-over{background-color:rgba(39,78,238,0.25);border-color:#5b7cff}body.star-dock-drag-enabled article.sites-item > a.sites-body{cursor:grab}body.star-dock-drag-enabled article.sites-item > a.sites-body:active{cursor:grabbing}body.star-dock-drag-enabled article.sites-item.is-dragging-dock{opacity:0.55;transform:scale(0.97);transition:transform 0.18s ease,filter 0.18s ease}.dock-drag-add-preview{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding:12px;border-radius:12px;background:var(--body-bg-color)}.dock-drag-add-preview img{width:40px;height:40px;border-radius:10px;object-fit:contain;flex-shrink:0}.dock-drag-add-preview-info{min-width:0;text-align:left}.dock-drag-add-preview-name{font-size:15px;font-weight:600;color:#1a1a2e;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dock-drag-add-preview-url{font-size:12px;color:#888;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:2px}.dock-drag-add-type{margin-bottom:16px}.dock-drag-add-type .dock-form-label{margin-bottom:12px}#dockDragAddDialog .dock-dialog-content{max-width:450px}.io-black-mode .dock-drag-add-preview{background:rgba(91,124,255,0.12)}.io-black-mode .dock-drag-add-preview-name{color:#e8e8f0}.io-black-mode .dock-drag-add-preview-url{color:#999}