.tool-ui[data-api-endpoint]{--short-primary:#4f46e5;--short-accent:#7c3aed;--short-success:#059669}.tool-ui[data-api-endpoint] *,.tool-ui[data-api-endpoint] :after,.tool-ui[data-api-endpoint] :before{box-sizing:border-box}.tool-ui[data-api-endpoint] svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round}.tool-controls{border:0;gap:14px;margin:0;padding:0}.control-group,.control-group--full,.tool-controls{display:flex;flex-direction:column}.label{color:var(--color-text);display:block;font-size:var(--text-sm);font-weight:var(--font-semibold);margin-bottom:6px}.label-hint{font-weight:var(--font-normal)}.field-hint,.label-hint{color:var(--color-text-muted)}.field-hint{display:block;font-size:11px;line-height:1.5;margin-top:5px}.input{background:var(--color-bg);border-width:2px;border:1px solid var(--color-border);border-radius:12px;box-shadow:none;color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-normal);min-height:44px;outline:none;padding:10px 14px;transition:all var(--transition-fast);width:100%}.input:hover{border-color:var(--color-border-strong)}.input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(79,70,229,.1)}.input::placeholder{color:var(--color-text-muted)}.input.is-invalid{border-color:#ef4444!important;box-shadow:0 0 0 3px rgba(239,68,68,.1)!important}.input.is-valid{border-color:#10b981}.input-group{align-items:stretch;background:var(--color-bg);border:1px solid var(--color-border);border-radius:12px;display:flex;flex-direction:row;min-width:0;overflow:hidden;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.input-group:hover{border-color:var(--color-border-strong)}.input-group:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(79,70,229,.1)}.input-prefix{align-items:center;background:var(--color-bg-secondary);border-right:1px solid var(--color-border);color:var(--color-text-secondary);display:flex;flex:0 1 auto;font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--font-semibold);gap:8px;max-width:52%;min-width:150px;padding:0 12px}.input-prefix__dot{background:var(--color-success);border-radius:50%;flex:0 0 6px;height:6px;width:6px}.input-prefix__text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.input--with-prefix{border:0;border-radius:0;flex:1 1 220px;font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--font-medium);letter-spacing:.02em;min-width:120px;padding:10px 12px}.input--with-prefix:focus,.input--with-prefix:hover{border-color:transparent;box-shadow:none}.password-protection{background:linear-gradient(145deg,var(--color-bg-secondary),color-mix(in srgb,var(--color-primary-light) 42%,var(--color-bg)));border:1px solid var(--color-border);border-radius:16px;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease}.password-protection:has(.password-switch[aria-checked=true]){border-color:#a5b4fc;box-shadow:0 8px 24px rgba(79,70,229,.08)}.password-protection__top{align-items:center;display:flex;gap:16px;justify-content:space-between;padding:11px 13px}.password-protection__title{align-items:center;display:flex;gap:10px;min-width:0}.password-protection__icon{background:color-mix(in srgb,var(--color-primary-light) 70%,var(--color-bg));border:1px solid color-mix(in srgb,var(--short-primary) 20%,var(--color-border));border-radius:10px;color:var(--short-primary);display:grid;flex:0 0 34px;height:34px;place-items:center;width:34px}.password-protection__icon svg{height:17px;stroke-width:2;width:17px}.password-protection__title strong{color:var(--color-text);display:block;font-size:var(--text-sm);margin-bottom:3px}.password-protection__title small{color:var(--color-text-muted);display:block;font-size:11px;line-height:1.45}.password-switch{align-items:center;background:transparent;border:0;border-radius:999px;color:var(--color-text-secondary);cursor:pointer;display:inline-flex;flex:0 0 auto;font-size:11px;font-weight:700;gap:8px;padding:4px}.password-switch:focus-visible{outline:2px solid #818cf8;outline-offset:3px}.password-switch__track{background:#cbd5e1;border-radius:999px;height:24px;position:relative;transition:background .2s ease;width:42px}.password-switch__track>span{background:#fff;border-radius:50%;box-shadow:0 2px 5px rgba(15,23,42,.2);height:18px;left:3px;position:absolute;top:3px;transition:transform .25s cubic-bezier(.22,1,.36,1);width:18px}.password-switch[aria-checked=true]{color:var(--short-primary)}.password-switch[aria-checked=true] .password-switch__track{background:linear-gradient(135deg,var(--short-primary),var(--short-accent))}.password-switch[aria-checked=true] .password-switch__track>span{transform:translateX(18px)}.password-fields{animation:passwordReveal .24s ease both;border-top:1px solid var(--color-border);padding:12px 13px 13px}@keyframes passwordReveal{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.password-input-wrap{position:relative}.password-input-wrap .input{padding-right:48px}.password-visibility{background:transparent;border:0;border-radius:9px;color:var(--color-text-muted);cursor:pointer;display:grid;height:34px;padding:0;place-items:center;position:absolute;right:8px;top:50%;transform:translateY(-50%);width:34px}.password-visibility:hover{background:var(--color-primary-light);color:var(--short-primary)}.password-visibility svg{height:18px;stroke-width:1.8;width:18px}.password-visibility .eye-closed,.password-visibility.is-visible .eye-open{display:none}.password-visibility.is-visible .eye-closed{display:block}.password-feedback{align-items:center;color:var(--color-text-muted);display:flex;font-size:10px;gap:10px;margin-top:9px}.password-strength{background:var(--color-border);border-radius:999px;flex:0 0 100px;height:5px;overflow:hidden}.password-strength>span{background:#94a3b8;border-radius:inherit;display:block;height:100%;transition:width .25s ease,background .25s ease;width:0}.password-strength>span.is-weak{background:#ef4444}.password-strength>span.is-medium{background:#f59e0b}.password-strength>span.is-strong{background:#10b981}.password-privacy{align-items:flex-start;color:var(--color-text-muted);display:flex;font-size:10px;gap:7px;line-height:1.55;margin:11px 0 0}.password-privacy svg{color:#10b981;flex:0 0 15px;height:15px;margin-top:1px;stroke-width:2;width:15px}.form-status{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:11px;color:var(--color-text-secondary);font-size:12px;line-height:1.55;padding:9px 12px}.form-status.is-error{background:#fef2f2;border-color:#fecaca;color:#b91c1c}.form-status.is-success{background:#ecfdf5;border-color:#a7f3d0;color:#047857}.control-actions{align-items:center;display:flex;gap:var(--space-3)}.btn--lg{border-radius:var(--radius-xl);font-size:var(--text-base);font-weight:var(--font-bold);gap:var(--space-3);justify-content:center;min-height:46px;padding:12px 28px;width:100%}.btn--primary{background:var(--color-primary);border:none;box-shadow:0 4px 14px rgba(79,70,229,.35),0 0 0 1px rgba(79,70,229,.1);color:#fff}.btn--primary:hover{background:var(--color-primary-hover);box-shadow:0 6px 20px rgba(79,70,229,.45),0 0 0 1px rgba(79,70,229,.2);transform:translateY(-2px)}.btn--primary:active{transform:translateY(0)}.btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.58;transform:none!important}.btn.is-loading svg{animation:shortLinkSpin .8s linear infinite}@keyframes shortLinkSpin{to{transform:rotate(1turn)}}.btn--outline{background:transparent;border:2px solid var(--color-border);color:var(--color-primary)}.btn--outline:hover{background:var(--color-primary-light);border-color:var(--color-primary)}.btn--sm{border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:var(--font-semibold);gap:var(--space-2);padding:10px 20px}.btn--sm:hover{transform:translateY(-1px)}.result-box{align-items:center;animation:resultPop .3s var(--ease-spring);background:linear-gradient(135deg,var(--color-bg) 0,var(--color-primary-light) 100%);border:2px solid var(--color-primary);border-radius:var(--radius-2xl);box-shadow:0 8px 32px rgba(79,70,229,.15);display:grid;gap:12px 16px;grid-template-columns:minmax(0,1fr) auto;margin-top:16px;padding:16px}@keyframes resultPop{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.result-box-header{align-items:center;border-bottom:1px solid rgba(79,70,229,.12);display:flex;grid-column:1/-1;justify-content:space-between;margin-bottom:0;padding-bottom:10px}.result-box-label{align-items:center;color:var(--color-primary);display:flex;font-size:var(--text-xs);font-weight:var(--font-bold);gap:var(--space-2);letter-spacing:1.5px;text-transform:uppercase}.result-box-label:before{animation:pulse 2s infinite;background:var(--color-success);border-radius:50%;content:"";display:inline-block;height:8px;width:8px}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.8)}}.result-box-clicks,.result-security{align-items:center;color:var(--color-text-secondary);display:flex;font-size:var(--text-sm);font-weight:var(--font-medium);gap:var(--space-1)}.result-security{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:999px;padding:5px 9px}.result-security svg{color:#64748b;height:14px;stroke-width:2;width:14px}.result-security.is-protected{background:#ecfdf5;border-color:#a7f3d0;color:#047857}.result-security.is-protected svg{color:#10b981}.result-box-clicks strong{color:var(--color-primary);font-weight:var(--font-bold)}.result-box-url{margin-bottom:0;min-width:0}.result-box-url a{background:hsla(0,0%,100%,.7);border:1px solid rgba(79,70,229,.15);border-radius:var(--radius-xl);color:var(--color-primary);display:block;font-family:var(--font-mono);font-size:var(--text-base);font-weight:var(--font-bold);padding:10px 12px;text-decoration:none;transition:all var(--transition-fast);word-break:break-all}.result-box-url a:hover{background:#fff;box-shadow:0 2px 8px rgba(79,70,229,.12);transform:translateX(4px)}.result-box-actions{display:flex;flex-wrap:wrap;gap:8px}.result-box-actions .btn{white-space:nowrap}.recent-links{border-top:1px solid var(--color-border);margin-top:18px;padding-top:16px}.recent-links:not(:has(.ls-link-item)){display:none}.ls-links-list{display:flex;flex-direction:column;gap:var(--space-3)}.ls-links-list>h3{align-items:center;color:var(--color-text);display:flex;font-size:var(--text-base);font-weight:var(--font-bold);gap:var(--space-2);margin:0 0 var(--space-2)}.ls-links-list>h3:before{background:var(--color-primary);border-radius:2px;content:"";display:inline-block;height:16px;width:4px}.ls-link-item{align-items:center;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-xl);display:flex;gap:var(--space-4);justify-content:space-between;padding:10px 12px;transition:all var(--transition-fast)}.ls-link-item:hover{border-color:var(--color-primary);box-shadow:0 2px 8px rgba(79,70,229,.08);transform:translateX(2px)}.ls-link-item a{color:var(--color-primary);flex:1;font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--font-semibold);min-width:0;overflow:hidden;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}.ls-link-details{display:flex;flex:1;flex-direction:column;gap:4px;min-width:0}.ls-link-details small{color:var(--color-text-muted);font-size:10px}.recent-copy{background:var(--color-primary-light);border:1px solid color-mix(in srgb,var(--short-primary) 20%,var(--color-border));border-radius:8px;color:var(--short-primary);cursor:pointer;flex:0 0 auto;font:700 10px var(--font-body);padding:7px 10px}.recent-copy:hover{background:var(--short-primary);border-color:var(--short-primary);color:#fff}.ls-link-item a:hover{text-decoration:underline}.ls-link-item span{background:var(--color-bg-secondary);border-radius:var(--radius-full);color:var(--color-text-muted);flex-shrink:0;font-size:var(--text-xs);font-weight:var(--font-medium);padding:4px 10px;white-space:nowrap}.hidden{display:none!important}[data-theme=dark] .result-security.is-protected{background:rgba(5,150,105,.16);border-color:rgba(16,185,129,.3);color:#6ee7b7}[data-theme=dark] .form-status.is-error{background:rgba(220,38,38,.14);border-color:rgba(239,68,68,.3);color:#fca5a5}[data-theme=dark] .form-status.is-success{background:rgba(5,150,105,.14);border-color:rgba(16,185,129,.3);color:#6ee7b7}[data-theme=dark] .result-box-url a{background:rgba(15,23,42,.72)}@media (max-width:640px){.result-box-url a{font-size:var(--text-base);padding:var(--space-3)}.btn--lg{padding:12px 20px}.ls-link-item{align-items:center;gap:var(--space-2)}.input-group{flex-direction:column}.input-prefix{border-bottom:1px solid var(--color-border);border-right:0;max-width:none;min-height:34px;min-width:0;padding:0 11px}.input--with-prefix{flex-basis:auto;min-width:0}.password-protection__top{align-items:center;flex-direction:row}.password-switch{align-self:auto}.password-switch__label{display:none}.result-box{display:block;padding:14px}.result-box-header{align-items:flex-start;flex-direction:column;gap:10px}.result-box-url{margin:12px 0}.result-box-actions .btn{flex:1 1 calc(50% - var(--space-2));justify-content:center}}@media (max-width:420px){.password-protection__title{align-items:flex-start}.password-protection__icon{flex-basis:36px;height:36px;width:36px}.result-box-actions{display:grid;grid-template-columns:1fr}.ls-link-item{align-items:stretch;flex-direction:column}.recent-copy{align-self:flex-end}}@media (prefers-reduced-motion:reduce){.tool-ui[data-api-endpoint] *{animation-duration:.01ms!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}